@sunbird-cb/consumption 0.0.47 → 0.0.48

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/bundles/sunbird-cb-consumption.umd.js +182 -179
  2. package/bundles/sunbird-cb-consumption.umd.js.map +1 -1
  3. package/bundles/sunbird-cb-consumption.umd.min.js +1 -1
  4. package/bundles/sunbird-cb-consumption.umd.min.js.map +1 -1
  5. package/esm2015/lib/_common/cards/card-assessment/card-assessment/card-assessment.component.js +25 -25
  6. package/esm2015/lib/_common/cards/card-mdo-channel/card-mdo-channel.component.js +7 -3
  7. package/esm2015/lib/_common/cards/card-mdo-channel-v1/card-mdo-channel-v1.component.js +7 -3
  8. package/esm2015/lib/_common/cards/card-progress-portrait-lib/card-progress-portrait-lib.component.js +2 -2
  9. package/esm2015/lib/_common/cards/cards.component.js +2 -2
  10. package/esm2015/lib/_common/cards/provider-card/provider-card.component.js +49 -136
  11. package/esm2015/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.component.js +97 -9
  12. package/esm5/lib/_common/cards/card-assessment/card-assessment/card-assessment.component.js +27 -30
  13. package/esm5/lib/_common/cards/card-mdo-channel/card-mdo-channel.component.js +7 -3
  14. package/esm5/lib/_common/cards/card-mdo-channel-v1/card-mdo-channel-v1.component.js +7 -3
  15. package/esm5/lib/_common/cards/card-progress-portrait-lib/card-progress-portrait-lib.component.js +2 -2
  16. package/esm5/lib/_common/cards/cards.component.js +2 -2
  17. package/esm5/lib/_common/cards/provider-card/provider-card.component.js +50 -137
  18. package/esm5/lib/_common/content-strip-with-tabs-lib/content-strip-with-tabs-lib.component.js +97 -10
  19. package/fesm2015/sunbird-cb-consumption.js +179 -172
  20. package/fesm2015/sunbird-cb-consumption.js.map +1 -1
  21. package/fesm5/sunbird-cb-consumption.js +182 -179
  22. package/fesm5/sunbird-cb-consumption.js.map +1 -1
  23. package/lib/_common/cards/card-assessment/card-assessment/card-assessment.component.d.ts +4 -1
  24. package/lib/_common/cards/card-mdo-channel/card-mdo-channel.component.d.ts +1 -0
  25. package/lib/_common/cards/card-mdo-channel-v1/card-mdo-channel-v1.component.d.ts +1 -0
  26. package/lib/_common/cards/provider-card/provider-card.component.d.ts +9 -7
  27. package/package.json +1 -1
  28. package/sunbird-cb-consumption.metadata.json +1 -1
@@ -2,136 +2,17 @@
2
2
  * @fileoverview added by tsickle
3
3
  * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
4
  */
5
- import { Component } from '@angular/core';
5
+ import { Component, Input } from '@angular/core';
6
+ import { NsCardContent } from '../../../_models/card-content.model';
7
+ import { Router } from '@angular/router';
6
8
  export class ProviderCardComponent {
7
- constructor() {
8
- this.providers = [
9
- {
10
- name: 'Indian Institute of Management Bengaluru (IIMB)',
11
- link: 'https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/IIMB/all-CBP',
12
- logo: 'assets/icons/top-providers/ef8a88cf-33cc-42de-bdc3-7deed1ab2418.png'
13
- },
14
- {
15
- name: 'Department for Promotion of Industry and Internal Trade',
16
- link: 'https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Department for Promotion of Industry and Internal Trade/all-CBP',
17
- logo: 'assets/icons/top-providers/0d400bdf-4ad8-45bf-914c-be44018c2d07.png'
18
- },
19
- {
20
- name: 'RAKNPA',
21
- link: 'https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/RAKNPA/all-CBP',
22
- logo: 'assets/icons/top-providers/1becfffa-956e-48ba-8ffd-77c19cd720c8.jpeg'
23
- },
24
- {
25
- name: 'Lal Bahadur Shastri National Academy of Administration (LBSNAA)',
26
- link: 'https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Ministry of Environment, Forest and Climate Change/all-CBP',
27
- logo: 'assets/icons/top-providers/1d76c041-a7c9-437c-94d9-36d997f3804c.jpeg'
28
- },
29
- {
30
- name: 'Ministry of Environment, Forest and Climate Change',
31
- link: 'https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/LBSNAA/all-CBP',
32
- logo: 'assets/icons/top-providers/1fb72c3f-1c96-4600-8e22-09871a85e6c4.jpeg'
33
- },
34
- {
35
- name: 'ISTM',
36
- link: 'https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Institute of Secretariat Training and Management/all-CBP',
37
- logo: 'assets/icons/top-providers/6f046f76-b778-476a-987b-8669e106b44c.jpeg'
38
- },
39
- {
40
- name: 'Department of Expenditure',
41
- link: 'https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Department%20of%20Expenditure%20/all-CBP',
42
- logo: 'assets/icons/top-providers/7f6df809-6930-44f4-abcf-c8297363d3e0.png'
43
- },
44
- {
45
- name: 'Department of Personnel and Training DoPT',
46
- link: 'https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Department%20of%20Personnel%20and%20Training%20DoPT/all-CBP',
47
- logo: 'assets/icons/top-providers/dopt.png'
48
- },
49
- {
50
- name: 'Indian Cybercrime Coordination Centre - I4C',
51
- link: 'https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Indian%20Cybercrime%20Coordination%20Centre%20-%20I4C/all-CBP',
52
- logo: 'assets/icons/top-providers/7f8cab8e-9d22-44ba-a41e-83b907e5a5f0.jpeg'
53
- },
54
- {
55
- "name": "Capacity Building Commission",
56
- "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Capacity%20Building%20Commission/all-CBP",
57
- "logo": "assets/icons/top-providers/33e9c66f-312f-4244-901e-7d7525ae8847.jpeg"
58
- },
59
- {
60
- "name": "Ministry of Railways",
61
- "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Ministry%20of%20Railways/all-CBP",
62
- "logo": "assets/icons/top-providers/36d93700-c43f-499e-ab3c-68ea76388a2a.png"
63
- },
64
- {
65
- "name": "World Bank",
66
- "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/World%20Bank/all-CBP",
67
- "logo": "assets/icons/top-providers/385ff4a0-41af-4114-8015-10d26c1e8af4.jpeg"
68
- },
69
- {
70
- "name": "Sashastra Seema Bal (SSB)",
71
- "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Sashastra%20Seema%20Bal%20%28SSB%29/all-CBP",
72
- "logo": "assets/icons/top-providers/778b56bf-8946-45fe-87d3-358203f2faf4.png"
73
- },
74
- {
75
- "name": "SVPNPA",
76
- "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/SVPNPA/all-CBP",
77
- "logo": "assets/icons/top-providers/2862d2e5-473e-4c55-abaa-8a2f86e5eee4.jpeg"
78
- },
79
- {
80
- "name": "Microsoft",
81
- "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Microsoft/all-CBP",
82
- "logo": "assets/icons/top-providers/53407dd6-d22c-4dba-a394-015fae667636.png"
83
- },
84
- {
85
- "name": "Indian Institute of Public Administration",
86
- "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Indian%20Institute%20of%20Public%20Administration/all-CBP",
87
- "logo": "assets/icons/top-providers/869960d7-2dc7-4205-8c4b-11321d901060.jpeg"
88
- },
89
- {
90
- "name": "Food Corporation of India (FCI)",
91
- "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Food%20Corporation%20of%20India%20%28FCI%29/all-CBP",
92
- "logo": "assets/icons/top-providers/4183673f-9063-4fa9-bf84-1e8856c8e531.jpeg"
93
- },
94
- {
95
- "name": "National Telecommunications Institute for Policy Research, Innovation and Training",
96
- "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/NTIPRIT/all-CBP",
97
- "logo": "assets/icons/top-providers/a976f025-e990-49b0-a52a-9bd0a8e43584.jpeg"
98
- },
99
- {
100
- "name": "The Art of Living",
101
- "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/The%20Art%20of%20Living/all-CBP",
102
- "logo": "assets/icons/top-providers/abbb8f64-84db-4a92-85c9-1b394ffab71c.png"
103
- },
104
- {
105
- "name": "National Institute of Communication Finance",
106
- "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/National%20Institute%20of%20Communication%20Finance/all-CBP",
107
- "logo": "assets/icons/top-providers/b6bf0be6-7e29-4187-a29d-da6db1db7c69.jpeg"
108
- },
109
- {
110
- "name": "Department of Posts",
111
- "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Department%20of%20Posts/all-CBP",
112
- "logo": "assets/icons/top-providers/cf567f4c-d0fa-447f-aba4-cb378ea3c90d.png"
113
- },
114
- {
115
- "name": "Government e Market Place(GeM)",
116
- "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Government%20e%20Market%20Place%28GeM%29/all-CBP",
117
- "logo": "assets/icons/top-providers/f445c11b-ff73-4ca4-9dea-8d8945d92a4a.png"
118
- },
119
- {
120
- "name": "Bharat Sanchar Nigam Limited(BSNL)",
121
- "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Bharat%20Sanchar%20Nigam%20Limited%28BSNL%29/all-CBP",
122
- "logo": "assets/icons/top-providers/fc67226a-4bbc-449a-8c5c-e1b338716545.png"
123
- },
124
- {
125
- "name": "Defence Accounts Department (DAD)",
126
- "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Defence%20Accounts%20Department%20%28DAD%29/all-CBP",
127
- "logo": "assets/icons/top-providers/fccdb487-a389-48d9-bce0-c4d64315b546.png"
128
- },
129
- {
130
- "name": "Morarji Desai National Institute of Yoga (MDNIY)",
131
- "link": "https://portal.igotkarmayogi.gov.in/app/learn/browse-by/provider/Morarji%20Desai%20National%20Institute%20of%20Yoga%20%28MDNIY%29/all-CBP",
132
- "logo": "assets/icons/top-providers/fcde4c60-7ccd-456e-a5df-260dcfa2d3ee.png"
133
- }
134
- ];
9
+ /**
10
+ * @param {?} router
11
+ */
12
+ constructor(router) {
13
+ this.router = router;
14
+ this.randomColorApply = true;
15
+ this.isCardLoading = false;
135
16
  this.colors = [
136
17
  '#EF941D', '#F97440', '#35B5B0', '#9988FF', '#816FEC',
137
18
  '#254092', '#926525', '#4F72DF'
@@ -141,28 +22,60 @@ export class ProviderCardComponent {
141
22
  * @return {?}
142
23
  */
143
24
  ngOnInit() {
25
+ this.setRandomColor();
144
26
  }
145
27
  /**
146
- * @param {?} provider
147
28
  * @return {?}
148
29
  */
149
- redirectTo(provider) {
150
- window.open(provider.link, '_blank');
30
+ setRandomColor() {
31
+ if (this.widgetData && this.widgetData.content) {
32
+ if (this.randomColorApply) {
33
+ /** @type {?} */
34
+ const randomIndex1 = Math.floor(Math.random() * Math.floor(this.colors.length));
35
+ this.widgetData.content['bgColor'] = this.colors[randomIndex1];
36
+ }
37
+ else {
38
+ this.widgetData.content['bgColor'] = '#1a4ca1';
39
+ }
40
+ }
41
+ }
42
+ /**
43
+ * @param {?} content
44
+ * @return {?}
45
+ */
46
+ redirectTo(content) {
47
+ this.router.navigate([`/app/learn/browse-by/provider/${content.name}/${content.orgId}/micro-sites`]);
151
48
  }
152
49
  }
153
50
  ProviderCardComponent.decorators = [
154
51
  { type: Component, args: [{
155
52
  selector: 'sb-uic-provider-card',
156
- template: "<div class=\"providers-container\">\n <div class=\"provider-card\" *ngFor=\"let provider of providers; let i = index\" [ngStyle]=\"{'border-top': '72px solid ' + colors[i % colors.length]}\">\n <div class=\"circle-wrapper\">\n <div class=\"circle\">\n <div class=\"background-circle\">\n <img [src]=\"provider.logo\" alt=\"{{ provider.name }}\">\n </div>\n </div>\n </div>\n <div class=\"provider-content\">\n <p>{{ provider.name }}</p>\n <div class=\"view-provider-button\" (click)=\"redirectTo(provider)\">View Provider ></div>\n </div>\n </div>\n </div>\n ",
53
+ template: "<!-- <div class=\"providers-container\">\n <div class=\"provider-card\" *ngFor=\"let provider of providers; let i = index\" [ngStyle]=\"{'border-top': '72px solid ' + colors[i % colors.length]}\">\n <div class=\"circle-wrapper\">\n <div class=\"circle\">\n <div class=\"background-circle\">\n <img [src]=\"provider.logo\" alt=\"{{ provider.name }}\">\n </div>\n </div>\n </div>\n <div class=\"provider-content\">\n <p>{{ provider.name }}</p>\n <div class=\"view-provider-button\" (click)=\"redirectTo(provider)\">View Provider ></div>\n </div>\n </div>\n </div> -->\n <!-- {{widgetData|json}} -->\n\n\n<ng-container *ngIf=\"!isCardLoading\">\n <ng-container *ngIf=\"widgetData && widgetData?.content\">\n <div class=\"providers-container\">\n <div class=\"provider-card\" [ngStyle]=\"{'border-top': '72px solid ' + widgetData?.content?.bgColor || 'transparent'}\">\n <div class=\"circle-wrapper\">\n <div class=\"circle\">\n <div class=\"background-circle\">\n <ng-container *ngIf=\"widgetData?.content?.logoUrl; else defaultImg\">\n <img [src]=\"widgetData?.content?.logoUrl\" alt=\"{{ widgetData?.content?.name }}\">\n </ng-container>\n <ng-template #defaultImg>\n <sb-uic-avatar-photo [randomColor]=\"true\" [name]=\"widgetData?.content?.name\" [photoUrl]=\"widgetData?.content?.logoUrl\" size=\"m-side-rating\">\n </sb-uic-avatar-photo>\n </ng-template>\n \n </div>\n </div>\n </div>\n <div class=\"provider-content\">\n <p>{{ widgetData?.content?.name }}</p>\n <div class=\"view-provider-button flex items-center\" (click)=\"redirectTo(widgetData.content)\">View Provider \n <mat-icon class=\"\" color=\"accent\">navigate_next</mat-icon></div>\n </div>\n </div>\n </div>\n </ng-container>\n</ng-container>\n<ng-container *ngIf=\"isCardLoading\">\n <div class=\"providers-container\">\n <div class=\"provider-card\" [ngStyle]=\"{'border-top': '72px solid gray'}\">\n <div class=\"circle-wrapper\">\n <div class=\"circle\">\n <div class=\"background-circle\">\n <sb-uic-skeleton-loader [width]=\"'100%'\" [height]=\"'100%'\" class=\"w-full h-full\" [bindingClass]=\"'flex rounded rounded-full'\"></sb-uic-skeleton-loader>\n </div>\n </div>\n </div>\n <div class=\"w-full p-4 provider-content\">\n <p class=\"w-full pl-4\"> <sb-uic-skeleton-loader [width]=\"'200px'\" [height]=\"'12px'\" class=\"w-full h-full\" [bindingClass]=\"'flex rounded'\"></sb-uic-skeleton-loader></p>\n <div class=\"w-full pl-4 view-provider-button\" (click)=\"redirectTo(widgetData.content)\"><sb-uic-skeleton-loader [width]=\"'200px'\" [height]=\"'12px'\" class=\"w-full h-full\" [bindingClass]=\"'flex rounded'\"></sb-uic-skeleton-loader></div>\n </div>\n </div>\n </div>\n</ng-container>",
157
54
  styles: [".providers-container{display:flex;justify-content:center}.provider-card{height:168px;width:245px;margin:20px 8px;border-radius:12px;box-shadow:0 2px 4px rgba(0,0,0,.1);background-color:#fff;position:relative;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;z-index:1}.circle-wrapper{position:absolute;display:flex;justify-content:center;top:-50px;z-index:1}.circle{width:90px;height:90px;border-radius:50%;background-color:#f0f0f0;box-shadow:0 4px 8px rgba(0,0,0,.1)}.background-circle{position:relative;display:flex;justify-content:center;align-items:center;height:80px;width:80px;background-color:#fff;border-radius:50%;border:5px solid #fff;margin:0 auto}.background-circle img{width:66px;height:50px;background-size:cover;background-position:center;position:relative}.provider-content{padding:16px;text-align:center;flex-grow:1;display:flex;flex-direction:column;justify-content:center;align-items:center}.provider-content p{font-size:14px;font-weight:700;font-family:Lato,sans-serif;margin-bottom:8px;line-height:16.8px;word-wrap:break-word;white-space:normal;height:51px}.view-provider-button{color:#1b4ca1;font-size:14px;font-family:Lato,sans-serif;cursor:pointer;transition:color .3s}"]
158
55
  }] }
159
56
  ];
160
57
  /** @nocollapse */
161
- ProviderCardComponent.ctorParameters = () => [];
58
+ ProviderCardComponent.ctorParameters = () => [
59
+ { type: Router }
60
+ ];
61
+ ProviderCardComponent.propDecorators = {
62
+ widgetData: [{ type: Input }],
63
+ randomColorApply: [{ type: Input }],
64
+ isCardLoading: [{ type: Input }]
65
+ };
162
66
  if (false) {
163
67
  /** @type {?} */
164
- ProviderCardComponent.prototype.providers;
68
+ ProviderCardComponent.prototype.widgetData;
69
+ /** @type {?} */
70
+ ProviderCardComponent.prototype.randomColorApply;
71
+ /** @type {?} */
72
+ ProviderCardComponent.prototype.isCardLoading;
165
73
  /** @type {?} */
166
74
  ProviderCardComponent.prototype.colors;
75
+ /**
76
+ * @type {?}
77
+ * @private
78
+ */
79
+ ProviderCardComponent.prototype.router;
167
80
  }
168
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXItY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac3VuYmlyZC1jYi9jb25zdW1wdGlvbi8iLCJzb3VyY2VzIjpbImxpYi9fY29tbW9uL2NhcmRzL3Byb3ZpZGVyLWNhcmQvcHJvdmlkZXItY2FyZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFPbEQsTUFBTSxPQUFPLHFCQUFxQjtJQXdJaEM7UUF0SUEsY0FBUyxHQUFHO1lBQ1Y7Z0JBQ0UsSUFBSSxFQUFFLGlEQUFpRDtnQkFDdkQsSUFBSSxFQUFFLCtFQUErRTtnQkFDckYsSUFBSSxFQUFFLHFFQUFxRTthQUM1RTtZQUNEO2dCQUNFLElBQUksRUFBRSx5REFBeUQ7Z0JBQy9ELElBQUksRUFBRSxrSUFBa0k7Z0JBQ3hJLElBQUksRUFBRSxxRUFBcUU7YUFDNUU7WUFDRDtnQkFDRSxJQUFJLEVBQUUsUUFBUTtnQkFDZCxJQUFJLEVBQUUsaUZBQWlGO2dCQUN2RixJQUFJLEVBQUUsc0VBQXNFO2FBQzdFO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLGlFQUFpRTtnQkFDdkUsSUFBSSxFQUFFLDZIQUE2SDtnQkFDbkksSUFBSSxFQUFFLHNFQUFzRTthQUM3RTtZQUNEO2dCQUNFLElBQUksRUFBRSxvREFBb0Q7Z0JBQzFELElBQUksRUFBRSxpRkFBaUY7Z0JBQ3ZGLElBQUksRUFBRSxzRUFBc0U7YUFDN0U7WUFDRDtnQkFDRSxJQUFJLEVBQUUsTUFBTTtnQkFDWixJQUFJLEVBQUUsMkhBQTJIO2dCQUNqSSxJQUFJLEVBQUUsc0VBQXNFO2FBQzdFO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLDJCQUEyQjtnQkFDakMsSUFBSSxFQUFFLDJHQUEyRztnQkFDakgsSUFBSSxFQUFFLHFFQUFxRTthQUM1RTtZQUNEO2dCQUNFLElBQUksRUFBRSwyQ0FBMkM7Z0JBQ2pELElBQUksRUFBRSw4SEFBOEg7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bml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NiLXVpYy1wcm92aWRlci1jYXJkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb3ZpZGVyLWNhcmQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wcm92aWRlci1jYXJkLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgUHJvdmlkZXJDYXJkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBwcm92aWRlcnMgPSBbXG4gICAge1xuICAgICAgbmFtZTogJ0luZGlhbiBJbnN0aXR1dGUgb2YgTWFuYWdlbWVudCBCZW5nYWx1cnUgKElJTUIpJyxcbiAgICAgIGxpbms6ICdodHRwczovL3BvcnRhbC5pZ290a2FybWF5b2dpLmdvdi5pbi9hcHAvbGVhcm4vYnJvd3NlLWJ5L3Byb3ZpZGVyL0lJTUIvYWxsLUNCUCcsXG4gICAgICBsb2dvOiAnYXNzZXRzL2ljb25zL3RvcC1wcm92aWRlcnMvZWY4YTg4Y2YtMzNjYy00MmRlLWJkYzMtN2RlZWQxYWIyNDE4LnBuZydcbiAgICB9LFxuICAgIHtcbiAgICAgIG5hbWU6ICdEZXBhcnRtZW50IGZvciBQcm9tb3Rpb24gb2YgSW5kdXN0cnkgYW5kIEludGVybmFsIFRyYWRlJyxcbiAgICAgIGxpbms6ICdodHRwczovL3BvcnRhbC5pZ290a2FybWF5b2dpLmdvdi5pbi9hcHAvbGVhcm4vYnJvd3NlLWJ5L3Byb3ZpZGVyL0RlcGFydG1lbnQgZm9yIFByb21vdGlvbiBvZiBJbmR1c3RyeSBhbmQgSW50ZXJuYWwgVHJhZGUvYWxsLUNCUCcsXG4gICAgICBsb2dvOiAnYXNzZXRzL2ljb25zL3RvcC1wcm92aWRlcnMvMGQ0MDBiZGYtNGFkOC00NWJmLTkxNGMtYmU0NDAxOGMyZDA3LnBuZydcbiAgICB9LFxuICAgIHtcbiAgICAgIG5hbWU6ICdSQUtOUEEnLFxuICAgICAgbGluazogJ2h0dHBzOi8vcG9ydGFsLmlnb3RrYXJtYXlvZ2kuZ292LmluL2FwcC9sZWFybi9icm93c2UtYnkvcHJvdmlkZXIvUkFLTlBBL2FsbC1DQlAnLFxuICAgICAgbG9nbzogJ2Fzc2V0cy9pY29ucy90b3AtcHJvdmlkZXJzLzFiZWNmZmZhLTk1NmUtNDhiYS04ZmZkLTc3YzE5Y2Q3MjBjOC5qcGVnJ1xuICAgIH0sXG4gICAge1xuICAgICAgbmFtZTogJ0xhbCBCYWhhZHVyIFNoYXN0cmkgTmF0aW9uYWwgQWNhZGVteSBvZiBBZG1pbmlzdHJhdGlvbiAoTEJTTkFBKScsXG4gICAgICBsaW5rOiAnaHR0cHM6Ly9wb3J0YWwuaWdvdGthcm1heW9naS5nb3YuaW4vYXBwL2xlYXJuL2Jyb3dzZS1ieS9wcm92aWRlci9NaW5pc3RyeSBvZiBFbnZpcm9ubWVudCwgRm9yZXN0IGFuZCBDbGltYXRlIENoYW5nZS9hbGwtQ0JQJyxcbiAgICAgIGxvZ286ICdhc3NldHMvaWNvbnMvdG9wLXByb3ZpZGVycy8xZDc2YzA0MS1hN2M5LTQzN2MtOTRkOS0zNmQ5OTdmMzgwNGMuanBlZydcbiAgICB9LFxuICAgIHtcbiAgICAgIG5hbWU6ICdNaW5pc3RyeSBvZiBFbnZpcm9ubWVudCwgRm9yZXN0IGFuZCBDbGltYXRlIENoYW5nZScsXG4gICAgICBsaW5rOiAnaHR0cHM6Ly9wb3J0YWwuaWdvdGthcm1heW9naS5nb3YuaW4vYXBwL2xlYXJuL2Jyb3dzZS1ieS9wcm92aWRlci9MQlNOQUEvYWxsLUNCUCcsXG4gICAgICBsb2dvOiAnYXNzZXRzL2ljb25zL3RvcC1wcm92aWRlcnMvMWZiNzJjM2YtMWM5Ni00NjAwLThlMjItMDk4NzFhODVlNmM0LmpwZWcnXG4gICAgfSxcbiAgICB7XG4gICAgICBuYW1lOiAnSVNUTScsXG4gICAgICBsaW5rOiAnaHR0cHM6Ly9wb3J0YWwuaWdvdGthcm1heW9naS5nb3YuaW4vYXBwL2xlYXJuL2Jyb3dzZS1ieS9wcm92aWRlci9JbnN0aXR1dGUgb2YgU2VjcmV0YXJpYXQgVHJhaW5pbmcgYW5kIE1hbmFnZW1lbnQvYWxsLUNCUCcsXG4gICAgICBsb2dvOiAnYXNzZXRzL2ljb25zL3RvcC1wcm92aWRlcnMvNmYwNDZmNzYtYjc3OC00NzZhLTk4N2ItODY2OWUxMDZiNDRjLmpwZWcnXG4gICAgfSxcbiAgICB7XG4gICAgICBuYW1lOiAnRGVwYXJ0bWVudCBvZiBFeHBlbmRpdHVyZScsXG4gICAgICBsaW5rOiAnaHR0cHM6Ly9wb3J0YWwuaWdvdGthcm1heW9naS5nb3YuaW4vYXBwL2xlYXJuL2Jyb3dzZS1ieS9wcm92aWRlci9EZXBhcnRtZW50JTIwb2YlMjBFeHBlbmRpdHVyZSUyMC9hbGwtQ0JQJyxcbiAgICAgIGxvZ286ICdhc3NldHMvaWNvbnMvdG9wLXByb3ZpZGVycy83ZjZkZjgwOS02OTMwLTQ0ZjQtYWJjZi1jODI5NzM2M2QzZTAucG5nJ1xuICAgIH0sXG4gICAge1xuICAgICAgbmFtZTogJ0RlcGFydG1lbnQgb2YgUGVyc29ubmVsIGFuZCBUcmFpbmluZyBEb1BUJyxcbiAgICAgIGxpbms6ICdodHRwczovL3BvcnRhbC5pZ290a2FybWF5b2dpLmdvdi5pbi9hcHAvbGVhcm4vYnJvd3NlLWJ5L3Byb3ZpZGVyL0RlcGFydG1lbnQlMjBvZiUyMFBlcnNvbm5lbCUyMGFuZCUyMFRyYWluaW5nJTIwRG9QVC9hbGwtQ0JQJyxcbiAgICAgIGxvZ286ICdhc3NldHMvaWNvbnMvdG9wLXByb3ZpZGVycy9kb3B0LnBuZydcbiAgICB9LFxuICAgIHtcbiAgICAgIG5hbWU6ICdJbmRpYW4gQ3liZXJjcmltZSBDb29yZGluYXRpb24gQ2VudHJlIC0gSTRDJyxcbiAgICAgIGxpbms6ICdodHRwczovL3BvcnRhbC5pZ290a2FybWF5b2dpLmdvdi5pbi9hcHAvbGVhcm4vYnJvd3NlLWJ5L3Byb3ZpZGVyL0luZGlhbiUyMEN5YmVyY3JpbWUlMjBDb29yZGluYXRpb24lMjBDZW50cmUlMjAtJTIwSTRDL2FsbC1DQlAnLFxuICAgICAgbG9nbzogJ2Fzc2V0cy9pY29ucy90b3AtcHJvdmlkZXJzLzdmOGNhYjhlLTlkMjItNDRiYS1hNDFlLTgzYjkwN2U1YTVmMC5qcGVnJ1xuICAgIH0sXG4gICAge1xuICAgICAgXCJuYW1lXCI6IFwiQ2FwYWNpdHkgQnVpbGRpbmcgQ29tbWlzc2lvblwiLFxuICAgICAgXCJsaW5rXCI6IFwiaHR0cHM6Ly9wb3J0YWwuaWdvdGthcm1heW9naS5nb3YuaW4vYXBwL2xlYXJuL2Jyb3dzZS1ieS9wcm92aWRlci9DYXBhY2l0eSUyMEJ1aWxkaW5nJTIwQ29tbWlzc2lvbi9hbGwtQ0JQXCIsXG4gICAgICBcImxvZ29cIjogXCJhc3NldHMvaWNvbnMvdG9wLXByb3ZpZGVycy8zM2U5YzY2Zi0zMTJmLTQyNDQtOTAxZS03ZDc1MjVhZTg4NDcuanBlZ1wiXG4gIH0sXG4gIHtcbiAgICAgIFwibmFtZVwiOiBcIk1pbmlzdHJ5IG9mIFJhaWx3YXlzXCIsXG4gICAgICBcImxpbmtcIjogXCJodHRwczovL3BvcnRhbC5pZ290a2FybWF5b2dpLmdvdi5pbi9hcHAvbGVhcm4vYnJvd3NlLWJ5L3Byb3ZpZGVyL01pbmlzdHJ5JTIwb2YlMjBSYWlsd2F5cy9hbGwtQ0JQXCIsXG4gICAgICBcImxvZ29cIjogXCJhc3NldHMvaWNvbnMvdG9wLXByb3ZpZGVycy8zNmQ5MzcwMC1jNDNmLTQ5OWUtYWIzYy02OGVhNzYzODhhMmEucG5nXCJcbiAgfSxcbiAge1xuICAgICAgXCJuYW1lXCI6IFwiV29ybGQgQmFua1wiLFxuICAgICAgXCJsaW5rXCI6IFwiaHR0cHM6Ly9wb3J0YWwuaWdvdGthcm1heW9naS5nb3YuaW4vYXBwL2xlYXJuL2Jyb3dzZS1ieS9wcm92aWRlci9Xb3JsZCUyMEJhbmsvYWxsLUNCUFwiLFxuICAgICAgXCJsb2dvXCI6IFwiYXNzZXRzL2ljb25zL3RvcC1wcm92aWRlcnMvMzg1ZmY0YTAtNDFhZi00MTE0LTgwMTUtMTBkMjZjMWU4YWY0LmpwZWdcIlxuICB9LFxuICB7XG4gICAgICBcIm5hbWVcIjogXCJTYXNoYXN0cmEgU2VlbWEgQmFsIChTU0IpXCIsXG4gICAgICBcImxpbmtcIjogXCJodHRwczovL3BvcnRhbC5pZ290a2FybWF5b2dpLmdvdi5pbi9hcHAvbGVhcm4vYnJvd3NlLWJ5L3Byb3ZpZGVyL1Nhc2hhc3RyYSUyMFNlZW1hJTIwQmFsJTIwJTI4U1NCJTI5L2FsbC1DQlBcIixcbiAgICAgIFwibG9nb1wiOiBcImFzc2V0cy9pY29ucy90b3AtcHJvdmlkZXJzLzc3OGI1NmJmLTg5NDYtNDVmZS04N2QzLTM1ODIwM2YyZmFmNC5wbmdcIlxuICB9LFxuICB7XG4gICAgICBcIm5hbWVcIjogXCJTVlBOUEFcIixcbiAgICAgIFwibGlua1wiOiBcImh0dHBzOi8vcG9ydGFsLmlnb3RrYXJtYXlvZ2kuZ292LmluL2FwcC9sZWFybi9icm93c2UtYnkvcHJvdmlkZXIvU1ZQTlBBL2FsbC1DQlBcIixcbiAgICAgIFwibG9nb1wiOiBcImFzc2V0cy9pY29ucy90b3AtcHJvdmlkZXJzLzI4NjJkMmU1LTQ3M2UtNGM1NS1hYmFhLThhMmY4NmU1ZWVlNC5qcGVnXCJcbiAgfSxcbiAge1xuICAgICAgXCJuYW1lXCI6IFwiTWljcm9zb2Z0XCIsXG4gICAgICBcImxpbmtcIjogXCJodHRwczovL3BvcnRhbC5pZ290a2FybWF5b2dpLmdvdi5pbi9hcHAvbGVhcm4vYnJvd3NlLWJ5L3Byb3ZpZGVyL01pY3Jvc29mdC9hbGwtQ0JQXCIsXG4gICAgICBcImxvZ29cIjogXCJhc3NldHMvaWNvbnMvdG9wLXByb3ZpZGVycy81MzQwN2RkNi1kMjJjLTRkYmEtYTM5NC0wMTVmYWU2Njc2MzYucG5nXCJcbiAgfSxcbiAge1xuICAgICAgXCJuYW1lXCI6IFwiSW5kaWFuIEluc3RpdHV0ZSBvZiBQdWJsaWMgQWRtaW5pc3RyYXRpb25cIixcbiAgICAgIFwibGlua1wiOiBcImh0dHBzOi8vcG9ydGFsLmlnb3RrYXJtYXlvZ2kuZ292LmluL2FwcC9sZWFybi9icm93c2UtYnkvcHJvdmlkZXIvSW5kaWFuJTIwSW5zdGl0dXRlJTIwb2YlMjBQdWJsaWMlMjBBZG1pbmlzdHJhdGlvbi9hbGwtQ0JQXCIsXG4gICAgICBcImxvZ29cIjogXCJhc3NldHMvaWNvbnMvdG9wLXByb3ZpZGVycy84Njk5NjBkNy0yZGM3LTQyMDUtOGM0Yi0xMTMyMWQ5MDEwNjAuanBlZ1wiXG4gIH0sXG4gIHtcbiAgICAgIFwibmFtZVwiOiBcIkZvb2QgQ29ycG9yYXRpb24gb2YgSW5kaWEgKEZDSSlcIixcbiAgICAgIFwibGlua1wiOiBcImh0dHBzOi8vcG9ydGFsLmlnb3RrYXJtYXlvZ2kuZ292LmluL2FwcC9sZWFybi9icm93c2UtYnkvcHJvdmlkZXIvRm9vZCUyMENvcnBvcmF0aW9uJTIwb2YlMjBJbmRpYSUyMCUyOEZDSSUyOS9hbGwtQ0JQXCIsXG4gICAgICBcImxvZ29cIjogXCJhc3NldHMvaWNvbnMvdG9wLXByb3ZpZGVycy80MTgzNjczZi05MDYzLTRmYTktYmY4NC0xZTg4NTZjOGU1MzEuanBlZ1wiXG4gIH0sXG4gIHtcbiAgICAgIFwibmFtZVwiOiBcIk5hdGlvbmFsIFRlbGVjb21tdW5pY2F0aW9ucyBJbnN0aXR1dGUgZm9yIFBvbGljeSBSZXNlYXJjaCwgSW5ub3ZhdGlvbiBhbmQgVHJhaW5pbmdcIixcbiAgICAgIFwibGlua1wiOiBcImh0dHBzOi8vcG9ydGFsLmlnb3RrYXJtYXlvZ2kuZ292LmluL2FwcC9sZWFybi9icm93c2UtYnkvcHJvdmlkZXIvTlRJUFJJVC9hbGwtQ0JQXCIsXG4gICAgICBcImxvZ29cIjogXCJhc3NldHMvaWNvbnMvdG9wLXByb3ZpZGVycy9hOTc2ZjAyNS1lOTkwLTQ5YjAtYTUyYS05YmQwYThlNDM1ODQuanBlZ1wiXG4gIH0sXG4gIHtcbiAgICAgIFwibmFtZVwiOiBcIlRoZSBBcnQgb2YgTGl2aW5nXCIsXG4gICAgICBcImxpbmtcIjogXCJodHRwczovL3BvcnRhbC5pZ290a2FybWF5b2dpLmdvdi5pbi9hcHAvbGVhcm4vYnJvd3NlLWJ5L3Byb3ZpZGVyL1RoZSUyMEFydCUyMG9mJTIwTGl2aW5nL2FsbC1DQlBcIixcbiAgICAgIFwibG9nb1wiOiBcImFzc2V0cy9pY29ucy90b3AtcHJvdmlkZXJzL2FiYmI4ZjY0LTg0ZGItNGE5Mi04NWM5LTFiMzk0ZmZhYjcxYy5wbmdcIlxuICB9LFxuICB7XG4gICAgICBcIm5hbWVcIjogXCJOYXRpb25hbCBJbnN0aXR1dGUgb2YgQ29tbXVuaWNhdGlvbiBGaW5hbmNlXCIsXG4gICAgICBcImxpbmtcIjogXCJodHRwczovL3BvcnRhbC5pZ290a2FybWF5b2dpLmdvdi5pbi9hcHAvbGVhcm4vYnJvd3NlLWJ5L3Byb3ZpZGVyL05hdGlvbmFsJTIwSW5zdGl0dXRlJTIwb2YlMjBDb21tdW5pY2F0aW9uJTIwRmluYW5jZS9hbGwtQ0JQXCIsXG4gICAgICBcImxvZ29cIjogXCJhc3NldHMvaWNvbnMvdG9wLXByb3ZpZGVycy9iNmJmMGJlNi03ZTI5LTQxODctYTI5ZC1kYTZkYjFkYjdjNjkuanBlZ1wiXG4gIH0sXG4gIHtcbiAgICAgIFwibmFtZVwiOiBcIkRlcGFydG1lbnQgb2YgUG9zdHNcIixcbiAgICAgIFwibGlua1wiOiBcImh0dHBzOi8vcG9ydGFsLmlnb3RrYXJtYXlvZ2kuZ292LmluL2FwcC9sZWFybi9icm93c2UtYnkvcHJvdmlkZXIvRGVwYXJ0bWVudCUyMG9mJTIwUG9zdHMvYWxsLUNCUFwiLFxuICAgICAgXCJsb2dvXCI6IFwiYXNzZXRzL2ljb25zL3RvcC1wcm92aWRlcnMvY2Y1NjdmNGMtZDBmYS00NDdmLWFiYTQtY2IzNzhlYTNjOTBkLnBuZ1wiXG4gIH0sXG4gIHtcbiAgICAgIFwibmFtZVwiOiBcIkdvdmVybm1lbnQgZSBNYXJrZXQgUGxhY2UoR2VNKVwiLFxuICAgICAgXCJsaW5rXCI6IFwiaHR0cHM6Ly9wb3J0YWwuaWdvdGthcm1heW9naS5nb3YuaW4vYXBwL2xlYXJuL2Jyb3dzZS1ieS9wcm92aWRlci9Hb3Zlcm5tZW50JTIwZSUyME1hcmtldCUyMFBsYWNlJTI4R2VNJTI5L2FsbC1DQlBcIixcbiAgICAgIFwibG9nb1wiOiBcImFzc2V0cy9pY29ucy90b3AtcHJvdmlkZXJzL2Y0NDVjMTFiLWZmNzMtNGNhNC05ZGVhLThkODk0NWQ5MmE0YS5wbmdcIlxuICB9LFxuICB7XG4gICAgICBcIm5hbWVcIjogXCJCaGFyYXQgU2FuY2hhciBOaWdhbSBMaW1pdGVkKEJTTkwpXCIsXG4gICAgICBcImxpbmtcIjogXCJodHRwczovL3BvcnRhbC5pZ290a2FybWF5b2dpLmdvdi5pbi9hcHAvbGVhcm4vYnJvd3NlLWJ5L3Byb3ZpZGVyL0JoYXJhdCUyMFNhbmNoYXIlMjBOaWdhbSUyMExpbWl0ZWQlMjhCU05MJTI5L2FsbC1DQlBcIixcbiAgICAgIFwibG9nb1wiOiBcImFzc2V0cy9pY29ucy90b3AtcHJvdmlkZXJzL2ZjNjcyMjZhLTRiYmMtNDQ5YS04YzVjLWUxYjMzODcxNjU0NS5wbmdcIlxuICB9LFxuICB7XG4gICAgICBcIm5hbWVcIjogXCJEZWZlbmNlIEFjY291bnRzIERlcGFydG1lbnQgKERBRClcIixcbiAgICAgIFwibGlua1wiOiBcImh0dHBzOi8vcG9ydGFsLmlnb3RrYXJtYXlvZ2kuZ292LmluL2FwcC9sZWFybi9icm93c2UtYnkvcHJvdmlkZXIvRGVmZW5jZSUyMEFjY291bnRzJTIwRGVwYXJ0bWVudCUyMCUyOERBRCUyOS9hbGwtQ0JQXCIsXG4gICAgICBcImxvZ29cIjogXCJhc3NldHMvaWNvbnMvdG9wLXByb3ZpZGVycy9mY2NkYjQ4Ny1hMzg5LTQ4ZDktYmNlMC1jNGQ2NDMxNWI1NDYucG5nXCJcbiAgfSxcbiAge1xuICAgICAgXCJuYW1lXCI6IFwiTW9yYXJqaSBEZXNhaSBOYXRpb25hbCBJbnN0aXR1dGUgb2YgWW9nYSAoTUROSVkpXCIsXG4gICAgICBcImxpbmtcIjogXCJodHRwczovL3BvcnRhbC5pZ290a2FybWF5b2dpLmdvdi5pbi9hcHAvbGVhcm4vYnJvd3NlLWJ5L3Byb3ZpZGVyL01vcmFyamklMjBEZXNhaSUyME5hdGlvbmFsJTIwSW5zdGl0dXRlJTIwb2YlMjBZb2dhJTIwJTI4TUROSVklMjkvYWxsLUNCUFwiLFxuICAgICAgXCJsb2dvXCI6IFwiYXNzZXRzL2ljb25zL3RvcC1wcm92aWRlcnMvZmNkZTRjNjAtN2NjZC00NTZlLWE1ZGYtMjYwZGNmYTJkM2VlLnBuZ1wiXG4gIH1cbiAgICBcbiAgXTtcblxuICBjb2xvcnMgPSBbXG4gICAgJyNFRjk0MUQnLCAnI0Y5NzQ0MCcsICcjMzVCNUIwJywgJyM5OTg4RkYnLCAnIzgxNkZFQycsXG4gICAgJyMyNTQwOTInLCAnIzkyNjUyNScsICcjNEY3MkRGJ1xuICBdO1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgfVxuXG4gIHJlZGlyZWN0VG8ocHJvdmlkZXI6IGFueSk6IHZvaWQge1xuICAgIHdpbmRvdy5vcGVuKHByb3ZpZGVyLmxpbmssICdfYmxhbmsnKTtcbiAgfVxuXG5cbn0iXX0=
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvdmlkZXItY2FyZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac3VuYmlyZC1jYi9jb25zdW1wdGlvbi8iLCJzb3VyY2VzIjpbImxpYi9fY29tbW9uL2NhcmRzL3Byb3ZpZGVyLWNhcmQvcHJvdmlkZXItY2FyZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNwRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFPekMsTUFBTSxPQUFPLHFCQUFxQjs7OztJQVVoQyxZQUFvQixNQUFjO1FBQWQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQVJ6QixxQkFBZ0IsR0FBWSxJQUFJLENBQUE7UUFDaEMsa0JBQWEsR0FBWSxLQUFLLENBQUE7UUFFdkMsV0FBTSxHQUFHO1lBQ1AsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVM7WUFDckQsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTO1NBQ2hDLENBQUM7SUFFbUMsQ0FBQzs7OztJQUV0QyxRQUFRO1FBQ04sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFBO0lBQ3ZCLENBQUM7Ozs7SUFFRCxjQUFjO1FBQ1osSUFBRyxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFO1lBQzdDLElBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFDOztzQkFDakIsWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFDL0UsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQTthQUMvRDtpQkFBSztnQkFDSixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxTQUFTLENBQUE7YUFDL0M7U0FDRjtJQUNILENBQUM7Ozs7O0lBR0QsVUFBVSxDQUFDLE9BQVk7UUFDckIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxpQ0FBaUMsT0FBTyxDQUFDLElBQUksSUFBSSxPQUFPLENBQUMsS0FBSyxjQUFjLENBQUMsQ0FBQyxDQUFBO0lBQ3RHLENBQUM7OztZQW5DRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtnQkFDaEMscWlHQUE2Qzs7YUFFOUM7Ozs7WUFOUSxNQUFNOzs7eUJBUVosS0FBSzsrQkFDTCxLQUFLOzRCQUNMLEtBQUs7Ozs7SUFGTiwyQ0FBMEM7O0lBQzFDLGlEQUF5Qzs7SUFDekMsOENBQXVDOztJQUV2Qyx1Q0FHRTs7Ozs7SUFFVSx1Q0FBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5zQ2FyZENvbnRlbnQgfSBmcm9tICcuLi8uLi8uLi9fbW9kZWxzL2NhcmQtY29udGVudC5tb2RlbCc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzYi11aWMtcHJvdmlkZXItY2FyZCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm92aWRlci1jYXJkLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcHJvdmlkZXItY2FyZC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFByb3ZpZGVyQ2FyZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIHdpZGdldERhdGEhOiBOc0NhcmRDb250ZW50LklDYXJkO1xuICBASW5wdXQoKSByYW5kb21Db2xvckFwcGx5OiBib29sZWFuID0gdHJ1ZVxuICBASW5wdXQoKSBpc0NhcmRMb2FkaW5nOiBib29sZWFuID0gZmFsc2VcblxuICBjb2xvcnMgPSBbXG4gICAgJyNFRjk0MUQnLCAnI0Y5NzQ0MCcsICcjMzVCNUIwJywgJyM5OTg4RkYnLCAnIzgxNkZFQycsXG4gICAgJyMyNTQwOTInLCAnIzkyNjUyNScsICcjNEY3MkRGJ1xuICBdO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5zZXRSYW5kb21Db2xvcigpXG4gIH1cblxuICBzZXRSYW5kb21Db2xvcigpe1xuICAgIGlmKHRoaXMud2lkZ2V0RGF0YSAmJiB0aGlzLndpZGdldERhdGEuY29udGVudCkge1xuICAgICAgaWYodGhpcy5yYW5kb21Db2xvckFwcGx5KXtcbiAgICAgICAgY29uc3QgcmFuZG9tSW5kZXgxID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogTWF0aC5mbG9vcih0aGlzLmNvbG9ycy5sZW5ndGgpKVxuICAgICAgICB0aGlzLndpZGdldERhdGEuY29udGVudFsnYmdDb2xvciddID0gdGhpcy5jb2xvcnNbcmFuZG9tSW5kZXgxXVxuICAgICAgfWVsc2Uge1xuICAgICAgICB0aGlzLndpZGdldERhdGEuY29udGVudFsnYmdDb2xvciddID0gJyMxYTRjYTEnXG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuXG4gIHJlZGlyZWN0VG8oY29udGVudDogYW55KSB7ICBcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbYC9hcHAvbGVhcm4vYnJvd3NlLWJ5L3Byb3ZpZGVyLyR7Y29udGVudC5uYW1lfS8ke2NvbnRlbnQub3JnSWR9L21pY3JvLXNpdGVzYF0pXG4gIH1cblxuXG59Il19