tango-app-ui-manage-settings 3.0.16-dev → 3.0.18-dev

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.
@@ -1,18 +1,19 @@
1
1
  import { Component, HostListener, Input, Output, EventEmitter } from '@angular/core';
2
2
  import { Subject, takeUntil } from 'rxjs';
3
3
  import { ProductConfirmationComponent } from '../product-confirmation/product-confirmation.component';
4
- import Swal from 'sweetalert2';
5
4
  import * as i0 from "@angular/core";
6
5
  import * as i1 from "tango-app-ui-global";
7
6
  import * as i2 from "@ng-bootstrap/ng-bootstrap";
8
7
  import * as i3 from "../../../../services/payment-subscription.service";
9
- import * as i4 from "@angular/common";
8
+ import * as i4 from "tango-app-ui-shared";
9
+ import * as i5 from "@angular/common";
10
10
  export class MultidropdownComponent {
11
11
  layout;
12
12
  globalService;
13
13
  modalService;
14
14
  PaymentSubscriptionService;
15
15
  changeDetector;
16
+ ToastService;
16
17
  text = "";
17
18
  product = [];
18
19
  productList = [];
@@ -32,12 +33,13 @@ export class MultidropdownComponent {
32
33
  noFilter = false;
33
34
  responseArray = [];
34
35
  disabledBtn = true;
35
- constructor(layout, globalService, modalService, PaymentSubscriptionService, changeDetector) {
36
+ constructor(layout, globalService, modalService, PaymentSubscriptionService, changeDetector, ToastService) {
36
37
  this.layout = layout;
37
38
  this.globalService = globalService;
38
39
  this.modalService = modalService;
39
40
  this.PaymentSubscriptionService = PaymentSubscriptionService;
40
41
  this.changeDetector = changeDetector;
42
+ this.ToastService = ToastService;
41
43
  }
42
44
  ngOnDestroy() {
43
45
  this.unsubscribe.forEach((sb) => sb.unsubscribe());
@@ -152,8 +154,14 @@ export class MultidropdownComponent {
152
154
  this.selectedValuesArray = [this.product?.map((item) => item?.product || item)];
153
155
  this.disabledBtn = true;
154
156
  this.Opendropdown = false;
157
+ this.dataObject.forEach((item, i) => {
158
+ item.isOpen = false;
159
+ });
155
160
  }
156
161
  productconfirmation() {
162
+ this.dataObject.forEach((item, i) => {
163
+ item.isOpen = false;
164
+ });
157
165
  let showPopup = false;
158
166
  if (this.type == 'stores') {
159
167
  let product = this.clientProduct.map((item) => item.product);
@@ -194,6 +202,7 @@ export class MultidropdownComponent {
194
202
  modalRef.componentInstance.clientId = this.clientId;
195
203
  modalRef.componentInstance.clientProduct = this.clientProduct;
196
204
  modalRef.result.then((result) => {
205
+ this.selectedValuesArray[0] = [];
197
206
  this.data.emit(result);
198
207
  });
199
208
  }
@@ -223,22 +232,9 @@ export class MultidropdownComponent {
223
232
  };
224
233
  this.PaymentSubscriptionService.updateStore(params).subscribe((res) => {
225
234
  if (res && res.code == 200) {
235
+ this.selectedValuesArray[0] = [];
236
+ this.ToastService.getSuccessToast(res.message);
226
237
  this.data.emit('store');
227
- Swal.fire({
228
- iconHtml: `<img src="../../../../assets/tango/toast-icons/Envelope-Open-icon.svg">`,
229
- html: `<div class="col-md-12 mt-5"><div class="toasttitile">${res.message}</div></div>`,
230
- toast: true,
231
- position: 'bottom',
232
- showConfirmButton: false,
233
- showCloseButton: true,
234
- timer: 6000,
235
- timerProgressBar: true,
236
- customClass: 'custom-toast-container',
237
- didOpen: (toast) => {
238
- toast.addEventListener('mouseenter', Swal.stopTimer);
239
- toast.addEventListener('mouseleave', Swal.resumeTimer);
240
- }
241
- });
242
238
  }
243
239
  });
244
240
  }
@@ -249,13 +245,13 @@ export class MultidropdownComponent {
249
245
  firstWord = firstWord.charAt(0).toUpperCase() + firstWord.slice(1);
250
246
  return firstWord + ' ' + secondWord;
251
247
  }
252
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: MultidropdownComponent, deps: [{ token: i1.LayoutService }, { token: i1.GlobalStateService }, { token: i2.NgbModal }, { token: i3.PaymentSubscriptionService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
253
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: MultidropdownComponent, selector: "lib-multidropdown", inputs: { text: "text", product: "product", productList: "productList", type: "type", stores: "stores", clientId: "clientId", selectAll: "selectAll", clientProduct: "clientProduct", disabled: "disabled" }, outputs: { data: "data" }, host: { listeners: { "document:click": "onClick($event)" } }, ngImport: i0, template: "<div class=\"mt-2 dropdown1 position-relative cursor-pointer\" *ngFor=\"let item of dataObject; let i = index\">\r\n <a (click)=\"!disabled ? Dropdown('Clients',i,$event) : ''\" >\r\n <span *ngIf=\"!text.length\"><svg width=\"44\" height=\"44\"\r\n viewBox=\"0 0 44 44\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_3094_38243)\">\r\n <rect x=\"2\" y=\"1\" width=\"40\"\r\n height=\"40\" rx=\"8\"\r\n fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"39\"\r\n height=\"39\" rx=\"7.5\"\r\n stroke=\"#D0D5DD\" />\r\n <path\r\n d=\"M22.0003 15.1665V26.8332M16.167 20.9998H27.8337\"\r\n stroke=\"#344054\"\r\n stroke-width=\"1.67\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <filter id=\"filter0_d_3094_38243\"\r\n x=\"0\" y=\"0\" width=\"44\"\r\n height=\"44\"\r\n filterUnits=\"userSpaceOnUse\"\r\n color-interpolation-filters=\"sRGB\">\r\n <feFlood flood-opacity=\"0\"\r\n result=\"BackgroundImageFix\" />\r\n <feColorMatrix in=\"SourceAlpha\"\r\n type=\"matrix\"\r\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\"\r\n result=\"hardAlpha\" />\r\n <feOffset dy=\"1\" />\r\n <feGaussianBlur\r\n stdDeviation=\"1\" />\r\n <feColorMatrix type=\"matrix\"\r\n values=\"0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.05 0\" />\r\n <feBlend mode=\"normal\"\r\n in2=\"BackgroundImageFix\"\r\n result=\"effect1_dropShadow_3094_38243\" />\r\n <feBlend mode=\"normal\"\r\n in=\"SourceGraphic\"\r\n in2=\"effect1_dropShadow_3094_38243\"\r\n result=\"shape\" />\r\n </filter>\r\n </defs>\r\n </svg>{{text}}</span>\r\n <button type=\"button\" class=\"btn-outline btn align-items-end text-nowrap me-4\" *ngIf=\"text.length\"><svg\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\"\r\n viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M10.4993 4.16675V15.8334M4.66602 10.0001H16.3327\"\r\n stroke=\"#344054\" stroke-width=\"1.67\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg><span class=\"mx-2\">Add Products</span> </button>\r\n </a>\r\n <div *ngIf=\"item.isOpen\" class=\"dropdown-content position-absolute end-0 \" [ngClass]=\"!text.length ? 'left' : 'addselect'\">\r\n <div class=\"form-check d-flex align-items-center px-5 mt-5\">\r\n <input class=\"form-check-input\" type=\"checkbox\" value=\"Select All\" id=\"selectall{{i}}\"\r\n [checked]=\"selectedValuesArray[i]?.length === item.Issues.length\"\r\n (change)=\"toggleCheckbox('Select All', i)\">\r\n <label class=\"form-check-label ms-3\" for=\"selectall{{i}}\">\r\n Select All\r\n </label>\r\n </div>\r\n <div class=\"border border-gray mt-3\"></div>\r\n <div class=\"mt-3 d-flex align-items-center mx-2\">\r\n \r\n <!-- <input type=\"text\" [(ngModel)]=\"searchValue\" (input)=\"searchData($event,i)\"\r\n class=\"form-control searchinput ps-14 py-2 mt-2\" placeholder=\"Search\" autocomplete=\"off\" /> -->\r\n </div>\r\n <div *ngFor=\"let issue of item.Issues\" class=\"form-check d-flex align-items-center py-3 px-5\">\r\n <input class=\"form-check-input cursor-pointer\" type=\"checkbox\" [value]=\"issue.text\" id=\"option{{issue.text}}\"\r\n [checked]=\"selectedValuesArray[i]?.includes(issue.text)\" (change)=\"toggleCheckbox(issue.text,i)\" [disabled]=\"issue.text === 'tangoTraffic'\">\r\n <label class=\"form-check-label px-3 cursor-pointer\" for=\"option{{issue.text}}\">\r\n {{ convertUpper(issue.text) }}\r\n </label>\r\n </div>\r\n <div class=\"mt-4 d-flex justify-content-center \">\r\n <span class=\"form-check-label\" *ngIf=\"noFilter\">No filters available</span>\r\n </div>\r\n <div role=\"group\" class=\"d-flex justify-content-between mb-4 mx-5\">\r\n <button class=\"btn btn-outline w-100 me-2\" (click)=\"Reset()\"> Reset </button>\r\n <button class=\"btn btn-primary w-100 ms-2\" (click)=\"productconfirmation()\" [disabled]=\"disabledBtn\">Apply</button>\r\n </div>\r\n </div>\r\n \r\n</div>\r\n\r\n", styles: [".dropdown1{float:right}.dropdown1 .dropdown-title{color:var(--Gray-900, #101828);font-size:16px;font-weight:600;line-height:24px}.dropdown1 .dropdown{position:relative;display:inline-block}.dropdown1 .dropdown span{color:var(--Gray-700, #344054);font-size:14px;font-weight:600;line-height:20px}.dropdown1 .dropdown-content{z-index:1;padding:0;height:300px;overflow:auto;right:0;border-radius:12px;background:var(--White, #FFF);box-shadow:0 8px 8px -4px #10182808,0 20px 24px -4px #10182814}.dropdown1 .dropdown-content label{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.dropdown1 .dropdown-content a{color:#000;padding:12px 16px;text-decoration:none;display:block}.dropdown1 .dropdown button{padding:10px;font-size:16px;cursor:pointer}.dropdown1 input[type=checkbox]{width:16px!important;height:16px!important;margin:-3px 5px;border-radius:4px!important;-webkit-appearance:none;-moz-appearance:none;-o-appearance:none;appearance:none;outline:1px solid var(--gray-300, #D0D5DD);box-shadow:none;font-size:.8em;text-align:center;line-height:1em;background:#fff}.dropdown1 input[type=checkbox]:checked{outline:1px solid var(--primary-600, #00A3FF);background-color:var(--primary-50, #EAF8FF)}.dropdown1 input[type=checkbox]:checked:after{content:\"\";transform:rotate(45deg);border-bottom:2px solid #00A3FF;border-right:2px solid #00A3FF;display:inline-block;width:.2em;padding-left:0;padding-top:9px;padding-right:4px}.form-control{color:var(--Gray-700, #344054)!important;font-size:14px!important;font-weight:600;line-height:20px;text-transform:capitalize}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
248
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: MultidropdownComponent, deps: [{ token: i1.LayoutService }, { token: i1.GlobalStateService }, { token: i2.NgbModal }, { token: i3.PaymentSubscriptionService }, { token: i0.ChangeDetectorRef }, { token: i4.ToastService }], target: i0.ɵɵFactoryTarget.Component });
249
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: MultidropdownComponent, selector: "lib-multidropdown", inputs: { text: "text", product: "product", productList: "productList", type: "type", stores: "stores", clientId: "clientId", selectAll: "selectAll", clientProduct: "clientProduct", disabled: "disabled" }, outputs: { data: "data" }, host: { listeners: { "document:click": "onClick($event)" } }, ngImport: i0, template: "<div class=\"mt-2 dropdown1 position-relative cursor-pointer\" *ngFor=\"let item of dataObject; let i = index\">\r\n <a (click)=\"!disabled ? Dropdown('Clients',i,$event) : ''\" >\r\n <span *ngIf=\"!text.length\"><svg width=\"44\" height=\"44\"\r\n viewBox=\"0 0 44 44\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_3094_38243)\">\r\n <rect x=\"2\" y=\"1\" width=\"40\"\r\n height=\"40\" rx=\"8\"\r\n fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"39\"\r\n height=\"39\" rx=\"7.5\"\r\n stroke=\"#D0D5DD\" />\r\n <path\r\n d=\"M22.0003 15.1665V26.8332M16.167 20.9998H27.8337\"\r\n stroke=\"#344054\"\r\n stroke-width=\"1.67\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <filter id=\"filter0_d_3094_38243\"\r\n x=\"0\" y=\"0\" width=\"44\"\r\n height=\"44\"\r\n filterUnits=\"userSpaceOnUse\"\r\n color-interpolation-filters=\"sRGB\">\r\n <feFlood flood-opacity=\"0\"\r\n result=\"BackgroundImageFix\" />\r\n <feColorMatrix in=\"SourceAlpha\"\r\n type=\"matrix\"\r\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\"\r\n result=\"hardAlpha\" />\r\n <feOffset dy=\"1\" />\r\n <feGaussianBlur\r\n stdDeviation=\"1\" />\r\n <feColorMatrix type=\"matrix\"\r\n values=\"0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.05 0\" />\r\n <feBlend mode=\"normal\"\r\n in2=\"BackgroundImageFix\"\r\n result=\"effect1_dropShadow_3094_38243\" />\r\n <feBlend mode=\"normal\"\r\n in=\"SourceGraphic\"\r\n in2=\"effect1_dropShadow_3094_38243\"\r\n result=\"shape\" />\r\n </filter>\r\n </defs>\r\n </svg>{{text}}</span>\r\n <button type=\"button\" class=\"btn-outline btn align-items-end text-nowrap me-4\" *ngIf=\"text.length\"><svg\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\"\r\n viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M10.4993 4.16675V15.8334M4.66602 10.0001H16.3327\"\r\n stroke=\"#344054\" stroke-width=\"1.67\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg><span class=\"mx-2\">Add Products</span> </button>\r\n </a>\r\n <div *ngIf=\"item.isOpen\" class=\"dropdown-content position-absolute end-0 \" [ngClass]=\"!text.length ? 'left' : 'addselect'\">\r\n <div class=\"form-check d-flex align-items-center px-5 mt-5\">\r\n <input class=\"form-check-input\" type=\"checkbox\" value=\"Select All\" id=\"selectall{{i}}\"\r\n [checked]=\"selectedValuesArray[i]?.length === item.Issues.length\"\r\n (change)=\"toggleCheckbox('Select All', i)\">\r\n <label class=\"form-check-label ms-3\" for=\"selectall{{i}}\">\r\n Select All\r\n </label>\r\n </div>\r\n <div class=\"border border-gray mt-3\"></div>\r\n <div class=\"mt-3 d-flex align-items-center mx-2\">\r\n \r\n <!-- <input type=\"text\" [(ngModel)]=\"searchValue\" (input)=\"searchData($event,i)\"\r\n class=\"form-control searchinput ps-14 py-2 mt-2\" placeholder=\"Search\" autocomplete=\"off\" /> -->\r\n </div>\r\n <div *ngFor=\"let issue of item.Issues\" class=\"form-check d-flex align-items-center py-3 px-5\">\r\n <input class=\"form-check-input cursor-pointer\" type=\"checkbox\" [value]=\"issue.text\" id=\"option{{issue.text}}\"\r\n [checked]=\"selectedValuesArray[i]?.includes(issue.text)\" (change)=\"toggleCheckbox(issue.text,i)\" [disabled]=\"issue.text === 'tangoTraffic'\">\r\n <label class=\"form-check-label px-3 cursor-pointer\" for=\"option{{issue.text}}\">\r\n {{ convertUpper(issue.text) }}\r\n </label>\r\n </div>\r\n <div class=\"mt-4 d-flex justify-content-center \">\r\n <span class=\"form-check-label\" *ngIf=\"noFilter\">No filters available</span>\r\n </div>\r\n <div role=\"group\" class=\"d-flex justify-content-between mb-4 mx-5\">\r\n <button class=\"btn btn-outline w-100 me-2\" (click)=\"Reset()\"> Reset </button>\r\n <button class=\"btn btn-primary w-100 ms-2\" (click)=\"productconfirmation()\" [disabled]=\"disabledBtn\">Apply</button>\r\n </div>\r\n </div>\r\n \r\n</div>\r\n\r\n", styles: [".dropdown1{float:right}.dropdown1 .dropdown-title{color:var(--Gray-900, #101828);font-size:16px;font-weight:600;line-height:24px}.dropdown1 .dropdown{position:relative;display:inline-block}.dropdown1 .dropdown span{color:var(--Gray-700, #344054);font-size:14px;font-weight:600;line-height:20px}.dropdown1 .dropdown-content{z-index:1;padding:0;height:300px;overflow:auto;right:0;border-radius:12px;background:var(--White, #FFF);box-shadow:0 8px 8px -4px #10182808,0 20px 24px -4px #10182814}.dropdown1 .dropdown-content label{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.dropdown1 .dropdown-content a{color:#000;padding:12px 16px;text-decoration:none;display:block}.dropdown1 .dropdown button{padding:10px;font-size:16px;cursor:pointer}.dropdown1 input[type=checkbox]{width:16px!important;height:16px!important;margin:-3px 5px;border-radius:4px!important;-webkit-appearance:none;-moz-appearance:none;-o-appearance:none;appearance:none;outline:1px solid var(--gray-300, #D0D5DD);box-shadow:none;font-size:.8em;text-align:center;line-height:1em;background:#fff}.dropdown1 input[type=checkbox]:checked{outline:1px solid var(--primary-600, #00A3FF);background-color:var(--primary-50, #EAF8FF)}.dropdown1 input[type=checkbox]:checked:after{content:\"\";transform:rotate(45deg);border-bottom:2px solid #00A3FF;border-right:2px solid #00A3FF;display:inline-block;width:.2em;padding-left:0;padding-top:9px;padding-right:4px}.form-control{color:var(--Gray-700, #344054)!important;font-size:14px!important;font-weight:600;line-height:20px;text-transform:capitalize}\n"], dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
254
250
  }
255
251
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: MultidropdownComponent, decorators: [{
256
252
  type: Component,
257
253
  args: [{ selector: 'lib-multidropdown', template: "<div class=\"mt-2 dropdown1 position-relative cursor-pointer\" *ngFor=\"let item of dataObject; let i = index\">\r\n <a (click)=\"!disabled ? Dropdown('Clients',i,$event) : ''\" >\r\n <span *ngIf=\"!text.length\"><svg width=\"44\" height=\"44\"\r\n viewBox=\"0 0 44 44\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_3094_38243)\">\r\n <rect x=\"2\" y=\"1\" width=\"40\"\r\n height=\"40\" rx=\"8\"\r\n fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"39\"\r\n height=\"39\" rx=\"7.5\"\r\n stroke=\"#D0D5DD\" />\r\n <path\r\n d=\"M22.0003 15.1665V26.8332M16.167 20.9998H27.8337\"\r\n stroke=\"#344054\"\r\n stroke-width=\"1.67\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <filter id=\"filter0_d_3094_38243\"\r\n x=\"0\" y=\"0\" width=\"44\"\r\n height=\"44\"\r\n filterUnits=\"userSpaceOnUse\"\r\n color-interpolation-filters=\"sRGB\">\r\n <feFlood flood-opacity=\"0\"\r\n result=\"BackgroundImageFix\" />\r\n <feColorMatrix in=\"SourceAlpha\"\r\n type=\"matrix\"\r\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\"\r\n result=\"hardAlpha\" />\r\n <feOffset dy=\"1\" />\r\n <feGaussianBlur\r\n stdDeviation=\"1\" />\r\n <feColorMatrix type=\"matrix\"\r\n values=\"0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.05 0\" />\r\n <feBlend mode=\"normal\"\r\n in2=\"BackgroundImageFix\"\r\n result=\"effect1_dropShadow_3094_38243\" />\r\n <feBlend mode=\"normal\"\r\n in=\"SourceGraphic\"\r\n in2=\"effect1_dropShadow_3094_38243\"\r\n result=\"shape\" />\r\n </filter>\r\n </defs>\r\n </svg>{{text}}</span>\r\n <button type=\"button\" class=\"btn-outline btn align-items-end text-nowrap me-4\" *ngIf=\"text.length\"><svg\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\"\r\n viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M10.4993 4.16675V15.8334M4.66602 10.0001H16.3327\"\r\n stroke=\"#344054\" stroke-width=\"1.67\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg><span class=\"mx-2\">Add Products</span> </button>\r\n </a>\r\n <div *ngIf=\"item.isOpen\" class=\"dropdown-content position-absolute end-0 \" [ngClass]=\"!text.length ? 'left' : 'addselect'\">\r\n <div class=\"form-check d-flex align-items-center px-5 mt-5\">\r\n <input class=\"form-check-input\" type=\"checkbox\" value=\"Select All\" id=\"selectall{{i}}\"\r\n [checked]=\"selectedValuesArray[i]?.length === item.Issues.length\"\r\n (change)=\"toggleCheckbox('Select All', i)\">\r\n <label class=\"form-check-label ms-3\" for=\"selectall{{i}}\">\r\n Select All\r\n </label>\r\n </div>\r\n <div class=\"border border-gray mt-3\"></div>\r\n <div class=\"mt-3 d-flex align-items-center mx-2\">\r\n \r\n <!-- <input type=\"text\" [(ngModel)]=\"searchValue\" (input)=\"searchData($event,i)\"\r\n class=\"form-control searchinput ps-14 py-2 mt-2\" placeholder=\"Search\" autocomplete=\"off\" /> -->\r\n </div>\r\n <div *ngFor=\"let issue of item.Issues\" class=\"form-check d-flex align-items-center py-3 px-5\">\r\n <input class=\"form-check-input cursor-pointer\" type=\"checkbox\" [value]=\"issue.text\" id=\"option{{issue.text}}\"\r\n [checked]=\"selectedValuesArray[i]?.includes(issue.text)\" (change)=\"toggleCheckbox(issue.text,i)\" [disabled]=\"issue.text === 'tangoTraffic'\">\r\n <label class=\"form-check-label px-3 cursor-pointer\" for=\"option{{issue.text}}\">\r\n {{ convertUpper(issue.text) }}\r\n </label>\r\n </div>\r\n <div class=\"mt-4 d-flex justify-content-center \">\r\n <span class=\"form-check-label\" *ngIf=\"noFilter\">No filters available</span>\r\n </div>\r\n <div role=\"group\" class=\"d-flex justify-content-between mb-4 mx-5\">\r\n <button class=\"btn btn-outline w-100 me-2\" (click)=\"Reset()\"> Reset </button>\r\n <button class=\"btn btn-primary w-100 ms-2\" (click)=\"productconfirmation()\" [disabled]=\"disabledBtn\">Apply</button>\r\n </div>\r\n </div>\r\n \r\n</div>\r\n\r\n", styles: [".dropdown1{float:right}.dropdown1 .dropdown-title{color:var(--Gray-900, #101828);font-size:16px;font-weight:600;line-height:24px}.dropdown1 .dropdown{position:relative;display:inline-block}.dropdown1 .dropdown span{color:var(--Gray-700, #344054);font-size:14px;font-weight:600;line-height:20px}.dropdown1 .dropdown-content{z-index:1;padding:0;height:300px;overflow:auto;right:0;border-radius:12px;background:var(--White, #FFF);box-shadow:0 8px 8px -4px #10182808,0 20px 24px -4px #10182814}.dropdown1 .dropdown-content label{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.dropdown1 .dropdown-content a{color:#000;padding:12px 16px;text-decoration:none;display:block}.dropdown1 .dropdown button{padding:10px;font-size:16px;cursor:pointer}.dropdown1 input[type=checkbox]{width:16px!important;height:16px!important;margin:-3px 5px;border-radius:4px!important;-webkit-appearance:none;-moz-appearance:none;-o-appearance:none;appearance:none;outline:1px solid var(--gray-300, #D0D5DD);box-shadow:none;font-size:.8em;text-align:center;line-height:1em;background:#fff}.dropdown1 input[type=checkbox]:checked{outline:1px solid var(--primary-600, #00A3FF);background-color:var(--primary-50, #EAF8FF)}.dropdown1 input[type=checkbox]:checked:after{content:\"\";transform:rotate(45deg);border-bottom:2px solid #00A3FF;border-right:2px solid #00A3FF;display:inline-block;width:.2em;padding-left:0;padding-top:9px;padding-right:4px}.form-control{color:var(--Gray-700, #344054)!important;font-size:14px!important;font-weight:600;line-height:20px;text-transform:capitalize}\n"] }]
258
- }], ctorParameters: () => [{ type: i1.LayoutService }, { type: i1.GlobalStateService }, { type: i2.NgbModal }, { type: i3.PaymentSubscriptionService }, { type: i0.ChangeDetectorRef }], propDecorators: { text: [{
254
+ }], ctorParameters: () => [{ type: i1.LayoutService }, { type: i1.GlobalStateService }, { type: i2.NgbModal }, { type: i3.PaymentSubscriptionService }, { type: i0.ChangeDetectorRef }, { type: i4.ToastService }], propDecorators: { text: [{
259
255
  type: Input
260
256
  }], product: [{
261
257
  type: Input
@@ -279,4 +275,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
279
275
  type: HostListener,
280
276
  args: ['document:click', ['$event']]
281
277
  }] } });
282
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlkcm9wZG93bi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL211bHRpZHJvcGRvd24vbXVsdGlkcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL211bHRpZHJvcGRvd24vbXVsdGlkcm9wZG93bi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXdDLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0gsT0FBTyxFQUFFLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXhELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBQ3RHLE9BQU8sSUFBSSxNQUFNLGFBQWEsQ0FBQzs7Ozs7O0FBUS9CLE1BQU0sT0FBTyxzQkFBc0I7SUF1QmI7SUFBK0I7SUFBMkM7SUFBZ0M7SUFBZ0U7SUF0QnJMLElBQUksR0FBVSxFQUFFLENBQUM7SUFDakIsT0FBTyxHQUFRLEVBQUUsQ0FBQztJQUNsQixXQUFXLEdBQU0sRUFBRSxDQUFDO0lBQ3BCLElBQUksR0FBUSxTQUFTLENBQUM7SUFDdEIsTUFBTSxHQUFPLEVBQUUsQ0FBQztJQUNoQixRQUFRLENBQVE7SUFDaEIsU0FBUyxHQUFXLEtBQUssQ0FBQztJQUMxQixhQUFhLEdBQU8sRUFBRSxDQUFDO0lBQ3ZCLFFBQVEsR0FB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O2dCQUNILENBQUMsQ0FBQyxDQUFBO2FBQ0g7U0FFRjtJQUNILENBQUM7SUFFRCxZQUFZLENBQUMsSUFBUTtRQUNuQixJQUFJLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2xGLFNBQVMsR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkUsT0FBTyxTQUFTLEdBQUcsR0FBRyxHQUFHLFVBQVUsQ0FBQztJQUN0QyxDQUFDO3VHQXRRVSxzQkFBc0I7MkZBQXRCLHNCQUFzQixnV0NkbkMscTJLQXVGQTs7MkZEekVhLHNCQUFzQjtrQkFObEMsU0FBUzsrQkFDRSxtQkFBbUI7bU5BTXBCLElBQUk7c0JBQVosS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0ksSUFBSTtzQkFBYixNQUFNO2dCQXVEUCxPQUFPO3NCQUROLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBDaGFuZ2VEZXRlY3RvclJlZiwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgIE5nYk1vZGFsIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xyXG5pbXBvcnQgeyBQYXltZW50U3Vic2NyaXB0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzL3BheW1lbnQtc3Vic2NyaXB0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCBTdWJzY3JpcHRpb24sIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBHbG9iYWxTdGF0ZVNlcnZpY2UsTGF5b3V0U2VydmljZSB9IGZyb20gJ3RhbmdvLWFwcC11aS1nbG9iYWwnO1xyXG5pbXBvcnQgeyBQcm9kdWN0Q29uZmlybWF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vcHJvZHVjdC1jb25maXJtYXRpb24vcHJvZHVjdC1jb25maXJtYXRpb24uY29tcG9uZW50JztcclxuaW1wb3J0IFN3YWwgZnJvbSAnc3dlZXRhbGVydDInO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItbXVsdGlkcm9wZG93bicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL211bHRpZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9tdWx0aWRyb3Bkb3duLmNvbXBvbmVudC5zY3NzJ1xyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIE11bHRpZHJvcGRvd25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQElucHV0KCkgdGV4dDpzdHJpbmcgPSBcIlwiO1xyXG4gIEBJbnB1dCgpIHByb2R1Y3Q6IGFueSA9IFtdO1xyXG4gIEBJbnB1dCgpIHByb2R1Y3RMaXN0OmFueSA9W107XHJcbiAgQElucHV0KCkgdHlwZTpzdHJpbmc9XCJwcm9kdWN0XCI7XHJcbiAgQElucHV0KCkgc3RvcmVzOmFueSA9IFtdO1xyXG4gIEBJbnB1dCgpIGNsaWVudElkOnN0cmluZztcclxuICBASW5wdXQoKSBzZWxlY3RBbGw6Ym9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGNsaWVudFByb2R1Y3Q6YW55ID0gW107XHJcbiAgQElucHV0KCkgZGlzYWJsZWQ6Ym9vbGVhbiA9IGZhbHNlO1xyXG4gIEBPdXRwdXQoKSBkYXRhID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIHByaXZhdGUgdW5zdWJzY3JpYmU6IFN1YnNjcmlwdGlvbltdID0gW107XHJcbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0KCk7XHJcblxyXG4gIGRhdGFPYmplY3Q6IGFueSA9IFtcclxuICAgIHsgRGVzY3JpcHRpb246ICdDbGllbnRzJywgSXNzdWVzOiBbXSB9LFxyXG4gICAgXHJcbiAgXTtcclxuXHJcbiAgZHVtbXlBcnJheTogYW55ID1bXTtcclxuICBub0ZpbHRlcjogYm9vbGVhbiA9ZmFsc2U7XHJcbiAgcmVzcG9uc2VBcnJheTogYW55PVtdO1xyXG4gIGRpc2FibGVkQnRuOmJvb2xlYW4gPSB0cnVlO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbGF5b3V0OiBMYXlvdXRTZXJ2aWNlLCBwcml2YXRlIGdsb2JhbFNlcnZpY2U6IEdsb2JhbFN0YXRlU2VydmljZSwgcHJpdmF0ZSBtb2RhbFNlcnZpY2U6IE5nYk1vZGFsLCBwcml2YXRlIFBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlOiBQYXltZW50U3Vic2NyaXB0aW9uU2VydmljZSwgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XHJcblxyXG5cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLnVuc3Vic2NyaWJlLmZvckVhY2goKHNiKSA9PiBzYi51bnN1YnNjcmliZSgpKTtcclxuICAgIHRoaXMuZGVzdHJveSQubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIE9wZW5kcm9wZG93bjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBwZXJtaXNzaW9uID0gW1xyXG4gICAgeyBncm91cDogJ1N1cGVyIEFkbWluJywgZGVzY3JpcHRpb246ICdMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgJyB9LFxyXG4gICAgeyBncm91cDogJ0FkbWluJywgZGVzY3JpcHRpb246ICdMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgJyB9LFxyXG4gICAgeyBncm91cDogJ1VzZXInLCBkZXNjcmlwdGlvbjogJ0xvcmVtIGlwc3VtIGRvbG9yIHNpdCBhbWV0LCBjb25zZWN0ZXR1ciAnIH0sXHJcbiAgXVxyXG5cclxuICBcclxuICBzaG93ZHJvcGRvd246IGFueTtcclxuICBzZWxlY3RlZFZhbHVlczogc3RyaW5nW10gPSBbXTtcclxuICBzZWxlY3RlZFZhbHVlc0FycmF5OiBhbnlbXSA9IFtdO1xyXG4gIHNlbGVjdGVkRmlsdGVyczogYW55ID0ge1xyXG4gICAgc3RvcmU6IG51bGwsXHJcbiAgICBzdG9yZXM6IFtdLFxyXG4gICAgZGF0ZTogbnVsbCxcclxuXHJcbiAgfTtcclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZGF0YU9iamVjdFswXS5Jc3N1ZXMgPSB0aGlzLnByb2R1Y3RMaXN0O1xyXG4gICAgdGhpcy5kdW1teUFycmF5ID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh0aGlzLmRhdGFPYmplY3QpKVxyXG4gICAgdGhpcy5yZXNwb25zZUFycmF5ID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh0aGlzLmRhdGFPYmplY3QpKVxyXG4gICAgY29uc3Qgc3Vic2NyID0gdGhpcy5sYXlvdXQubGF5b3V0Q29uZmlnU3ViamVjdFxyXG4gICAgICAuYXNPYnNlcnZhYmxlKClcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICB9KTtcclxuICAgIHRoaXMudW5zdWJzY3JpYmUucHVzaChzdWJzY3IpO1xyXG4gICAgdGhpcy5zZWxlY3RlZFZhbHVlc0FycmF5ID0gW3RoaXMucHJvZHVjdD8ubWFwKChpdGVtOiBhbnkpID0+IGl0ZW0/LnByb2R1Y3QgfHwgaXRlbSldO1xyXG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG4gIFxyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgWyckZXZlbnQnXSlcclxuICBvbkNsaWNrIChldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgY29uc3RcclxuICAgICAgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgaWYoIXRhcmdldC5jbG9zZXN0KCcuZHJvcGRvd24xJykpIHtcclxuICAgICAgdGhpcy5PcGVuZHJvcGRvd24gPSBmYWxzZTtcclxuICAgIH1cclxuICAgIGlmKCF0YXJnZXQuY2xvc2VzdCgnLmRyb3Bkb3duLWNvbnRlbnQnKSl7XHJcbiAgICAgIHRoaXMuZGF0YU9iamVjdC5mb3JFYWNoKChpdGVtOiBhbnksIGk6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaXRlbS5pc09wZW4gPSBmYWxzZTsgXHJcbiAgICAgICAgfVxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgfVxyXG5cclxuICBvcGVuZHJvcGRvd24oZTpNb3VzZUV2ZW50KSB7XHJcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy5PcGVuZHJvcGRvd24gPSAhdGhpcy5PcGVuZHJvcGRvd247XHJcbiAgfVxyXG5cclxuICBEcm9wZG93bih2YWx1ZTogYW55LCBpbmRleDogbnVtYmVyLGV2ZW50Ok1vdXNlRXZlbnQpIHtcclxuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB0aGlzLmRhdGFPYmplY3QuZm9yRWFjaCgoaXRlbTogYW55LCBpOiBhbnkpID0+IHtcclxuICAgICAgaWYgKGkgIT09IGluZGV4KSB7XHJcbiAgICAgICAgaXRlbS5pc09wZW4gPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICB0aGlzLmRhdGFPYmplY3RbaW5kZXhdLmlzT3BlbiA9ICF0aGlzLmRhdGFPYmplY3RbaW5kZXhdLmlzT3BlbjtcclxuICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXNBcnJheSA9IFt0aGlzLnByb2R1Y3Q/Lm1hcCgoaXRlbTogYW55KSA9PiBpdGVtPy5wcm9kdWN0IHx8IGl0ZW0pXTtcclxuICB9XHJcbiAgXHJcbiAgdG9nZ2xlQ2hlY2tib3goaXNzdWU6IHN0cmluZywgaW5kZXg6IG51bWJlcikge1xyXG4gICAgY29uc3QgY3VycmVudElzc3VlcyA9IHRoaXMuZGF0YU9iamVjdFtpbmRleF0uSXNzdWVzO1xyXG4gICAgXHJcbiAgICB0aGlzLnNlbGVjdGVkVmFsdWVzQXJyYXlbaW5kZXhdID0gdGhpcy5zZWxlY3RlZFZhbHVlc0FycmF5W2luZGV4XSB8fCBbXTtcclxuICAgIGNvbnN0IHNlbGVjdGVkVmFsdWVzID0gdGhpcy5zZWxlY3RlZFZhbHVlc0FycmF5W2luZGV4XTtcclxuXHJcbiAgICBpZiAoaXNzdWUgPT09ICdTZWxlY3QgQWxsJykge1xyXG4gICAgICBjb25zdCBjdXJyZW50SXNzdWVzID0gdGhpcy5kYXRhT2JqZWN0W2luZGV4XS5Jc3N1ZXMubWFwKChpdGVtOiBhbnkpID0+IGl0ZW0udGV4dCk7XHJcbiAgICAgIGlmIChzZWxlY3RlZFZhbHVlcy5sZW5ndGggPT09IGN1cnJlbnRJc3N1ZXMubGVuZ3RoKSB7XHJcblxyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXNBcnJheVtpbmRleF0gPSBbJ3RhbmdvVHJhZmZpYyddO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXNBcnJheVtpbmRleF0gPSBbLi4uY3VycmVudElzc3Vlc107XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChzZWxlY3RlZFZhbHVlcy5pbmNsdWRlcyhpc3N1ZSkpIHtcclxuXHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlc0FycmF5W2luZGV4XSA9IHNlbGVjdGVkVmFsdWVzLmZpbHRlcigoaXRlbTogYW55KSA9PiBpdGVtICE9PSBpc3N1ZSk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlc0FycmF5W2luZGV4XS5wdXNoKGlzc3VlKVxyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IGNvdW50ID0gMDtcclxuICAgIGxldCBleGlzdFByb2R1Y3QgPSB0aGlzLnByb2R1Y3QubWFwKChpdGVtOmFueSkgPT4gaXRlbS5wcm9kdWN0IHx8IGl0ZW0pO1xyXG4gICAgdGhpcy5zZWxlY3RlZFZhbHVlc0FycmF5WzBdLmZvckVhY2goKGl0ZW06YW55KSA9PiB7XHJcbiAgICAgIGlmKCFleGlzdFByb2R1Y3QuaW5jbHVkZXMoaXRlbSkpIHtcclxuICAgICAgICBjb3VudCsrO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICBleGlzdFByb2R1Y3QuZm9yRWFjaCgoaXRlbTphbnkpID0+IHtcclxuICAgICAgaWYoIXRoaXMuc2VsZWN0ZWRWYWx1ZXNBcnJheVswXS5pbmNsdWRlcyhpdGVtKSkge1xyXG4gICAgICAgIGNvdW50Kys7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIGlmKGNvdW50KSB7XHJcbiAgICAgIHRoaXMuZGlzYWJsZWRCdG4gPSBmYWxzZTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzLmRpc2FibGVkQnRuID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBzZWxlY3RBbGxJZCA9IGBzZWxlY3RhbGwke2luZGV4fWA7XHJcbiAgICBjb25zdCBzZWxlY3RBbGxFbGVtZW50ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoc2VsZWN0QWxsSWQpIGFzIEhUTUxJbnB1dEVsZW1lbnQ7XHJcbiAgICBpZiAoc2VsZWN0QWxsRWxlbWVudCkge1xyXG4gICAgICBzZWxlY3RBbGxFbGVtZW50LmNoZWNrZWQgPSBzZWxlY3RlZFZhbHVlcy5sZW5ndGggPT09IGN1cnJlbnRJc3N1ZXMubGVuZ3RoO1xyXG4gICAgfVxyXG5cclxuICAgIGN1cnJlbnRJc3N1ZXMuZm9yRWFjaCgoaXRlbTogc3RyaW5nKSA9PiB7XHJcbiAgICAgIGNvbnN0IGlzQ2hlY2tlZCA9IHRoaXMuc2VsZWN0ZWRWYWx1ZXNBcnJheVtpbmRleF0uaW5jbHVkZXMoaXRlbSk7XHJcbiAgICAgIGNvbnN0IGNoZWNrYm94SWQgPSBgb3B0aW9uJHtpdGVtfWA7XHJcbiAgICAgIGNvbnN0IGNoZWNrYm94RWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGNoZWNrYm94SWQpIGFzIEhUTUxJbnB1dEVsZW1lbnQ7XHJcbiAgICAgIGlmIChjaGVja2JveEVsZW1lbnQpIHtcclxuICAgICAgICBjaGVja2JveEVsZW1lbnQuY2hlY2tlZCA9IGlzQ2hlY2tlZDtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gIH1cclxuXHJcbiAgUmVzZXQoKSB7XHJcbiAgICB0aGlzLnNlbGVjdGVkVmFsdWVzQXJyYXkgPSBbdGhpcy5wcm9kdWN0Py5tYXAoKGl0ZW06IGFueSkgPT4gaXRlbT8ucHJvZHVjdCB8fCBpdGVtKV07XHJcbiAgICB0aGlzLmRpc2FibGVkQnRuID0gdHJ1ZTtcclxuICAgIHRoaXMuT3BlbmRyb3Bkb3duID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBwcm9kdWN0Y29uZmlybWF0aW9uKCkge1xyXG4gICAgbGV0IHNob3dQb3B1cDpib29sZWFuID0gZmFsc2U7XHJcbiAgICBpZih0aGlzLnR5cGUgPT0gJ3N0b3JlcycpIHtcclxuICAgICAgbGV0IHByb2R1Y3QgPSB0aGlzLmNsaWVudFByb2R1Y3QubWFwKChpdGVtOiBhbnkpID0+IGl0ZW0ucHJvZHVjdCk7XHJcbiAgICAgIGlmICh0aGlzLnNlbGVjdEFsbCkge1xyXG4gICAgICAgIHByb2R1Y3QuZm9yRWFjaCgoaXRlbTphbnkpID0+IHtcclxuICAgICAgICAgIGlmICghdGhpcy5zZWxlY3RlZFZhbHVlc0FycmF5WzBdLmluY2x1ZGVzKGl0ZW0pKSB7XHJcbiAgICAgICAgICAgIHNob3dQb3B1cCA9IHRydWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzQXJyYXlbMF0uZm9yRWFjaCgoaXRlbTphbnkpID0+IHtcclxuICAgICAgICBpZiAoIXByb2R1Y3QuaW5jbHVkZXMoaXRlbSkpIHtcclxuICAgICAgICAgIHNob3dQb3B1cCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgfVxyXG4gICAgaWYodGhpcy50eXBlID09ICdwcm9kdWN0cycpIHtcclxuICAgICAgbGV0IGV4aXN0UHJvZHVjdCA9IHRoaXMucHJvZHVjdC5tYXAoKGl0ZW06YW55KSA9PiBpdGVtLnByb2R1Y3QgfHwgaXRlbSk7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXNBcnJheVswXS5mb3JFYWNoKChpdGVtOmFueSkgPT4ge1xyXG4gICAgICAgIGlmKCFleGlzdFByb2R1Y3QuaW5jbHVkZXMoaXRlbSkpIHtcclxuICAgICAgICAgIHNob3dQb3B1cCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIGV4aXN0UHJvZHVjdC5mb3JFYWNoKChpdGVtOmFueSkgPT4ge1xyXG4gICAgICAgIGlmKCF0aGlzLnNlbGVjdGVkVmFsdWVzQXJyYXlbMF0uaW5jbHVkZXMoaXRlbSkpIHtcclxuICAgICAgICAgIHNob3dQb3B1cCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgaWYgKHNob3dQb3B1cCkge1xyXG4gICAgICBjb25zdCBtb2RhbFJlZiA9IHRoaXMubW9kYWxTZXJ2aWNlLm9wZW4oUHJvZHVjdENvbmZpcm1hdGlvbkNvbXBvbmVudCx7XHJcbiAgICAgICAgY2VudGVyZWQ6dHJ1ZSxzaXplOidtZCcsc2Nyb2xsYWJsZTp0cnVlXHJcbiAgICAgIH0pO1xyXG4gICAgICBtb2RhbFJlZi5jb21wb25lbnRJbnN0YW5jZS5wcm9kdWN0TGlzdCA9IHRoaXMucHJvZHVjdC5tYXAoKGl0ZW06YW55KT0+aXRlbT8ucHJvZHVjdCB8fCBpdGVtKTtcclxuICAgICAgbW9kYWxSZWYuY29tcG9uZW50SW5zdGFuY2UudXBkYXRlZFByb2R1Y3QgPSB0aGlzLnNlbGVjdGVkVmFsdWVzQXJyYXlbMF07XHJcbiAgICAgIG1vZGFsUmVmLmNvbXBvbmVudEluc3RhbmNlLnR5cGUgPSB0aGlzLnR5cGU7XHJcbiAgICAgIG1vZGFsUmVmLmNvbXBvbmVudEluc3RhbmNlLnN0b3JlcyA9IHRoaXMuc3RvcmVzO1xyXG4gICAgICBtb2RhbFJlZi5jb21wb25lbnRJbnN0YW5jZS5jbGllbnRJZCA9IHRoaXMuY2xpZW50SWQ7XHJcbiAgICAgIG1vZGFsUmVmLmNvbXBvbmVudEluc3RhbmNlLmNsaWVudFByb2R1Y3QgPSB0aGlzLmNsaWVudFByb2R1Y3Q7XHJcbiAgICAgIG1vZGFsUmVmLnJlc3VsdC50aGVuKChyZXN1bHQpID0+IHtcclxuICAgICAgICB0aGlzLmRhdGEuZW1pdChyZXN1bHQpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICBpZih0aGlzLnR5cGUgPT0gJ3N0b3JlcycpIHtcclxuICAgICAgICBsZXQgcHJvZHVjdHM6YW55ID0gW107XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlc0FycmF5WzBdLmZvckVhY2goKGl0ZW06YW55KSA9PiB7XHJcbiAgICAgICAgICBsZXQgZGV0YWlscyA9IHRoaXMuY2xpZW50UHJvZHVjdC5maW5kKChlbGU6YW55KT0+IGVsZS5wcm9kdWN0ID09IGl0ZW0pXHJcbiAgICAgICAgICBsZXQgdHlwZSA9IGRldGFpbHM/LnN0YXR1cyB8fCAndHJpYWwnXHJcbiAgICAgICAgICBwcm9kdWN0cy5wdXNoKHtcclxuICAgICAgICAgICAgbmFtZTogaXRlbSxcclxuICAgICAgICAgICAgdHlwZTogdHlwZVxyXG4gICAgICAgICAgfSlcclxuICAgICAgICB9KVxyXG4gICAgICAgIHRoaXMucHJvZHVjdC5mb3JFYWNoKChpdGVtOmFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKCF0aGlzLnNlbGVjdGVkVmFsdWVzQXJyYXlbMF0uaW5jbHVkZXMoaXRlbSkpIHtcclxuICAgICAgICAgICAgcHJvZHVjdHMucHVzaCh7XHJcbiAgICAgICAgICAgICAgbmFtZTogaXRlbSxcclxuICAgICAgICAgICAgICB0eXBlOiAndW5zdWJzY3JpYmUnXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgICBsZXQgcGFyYW1zID0ge1xyXG4gICAgICAgICAgY2xpZW50SWQ6IHRoaXMuY2xpZW50SWQsXHJcbiAgICAgICAgICBwcm9kdWN0OiBwcm9kdWN0cyxcclxuICAgICAgICAgIHN0b3JlOiB0aGlzLnN0b3Jlc1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLlBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlLnVwZGF0ZVN0b3JlKHBhcmFtcykuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgICAgdGhpcy5kYXRhLmVtaXQoJ3N0b3JlJyk7XHJcbiAgICAgICAgICAgIFN3YWwuZmlyZSh7XHJcbiAgICAgICAgICAgICAgaWNvbkh0bWw6IGA8aW1nICBzcmM9XCIuLi8uLi8uLi8uLi9hc3NldHMvdGFuZ28vdG9hc3QtaWNvbnMvRW52ZWxvcGUtT3Blbi1pY29uLnN2Z1wiPmAsXHJcbiAgICAgICAgICAgICAgaHRtbDogYDxkaXYgY2xhc3M9XCJjb2wtbWQtMTIgbXQtNVwiPjxkaXYgY2xhc3M9XCJ0b2FzdHRpdGlsZVwiPiR7cmVzLm1lc3NhZ2V9PC9kaXY+PC9kaXY+YCxcclxuICAgICAgICAgICAgICB0b2FzdDogdHJ1ZSxcclxuICAgICAgICAgICAgICBwb3NpdGlvbjogJ2JvdHRvbScsXHJcbiAgICAgICAgICAgICAgc2hvd0NvbmZpcm1CdXR0b246IGZhbHNlLFxyXG4gICAgICAgICAgICAgIHNob3dDbG9zZUJ1dHRvbjogdHJ1ZSxcclxuICAgICAgICAgICAgICB0aW1lcjogNjAwMCxcclxuICAgICAgICAgICAgICB0aW1lclByb2dyZXNzQmFyOiB0cnVlLFxyXG4gICAgICAgICAgICAgIGN1c3RvbUNsYXNzOiAnY3VzdG9tLXRvYXN0LWNvbnRhaW5lcicsXHJcbiAgICAgICAgICAgICAgZGlkT3BlbjogKHRvYXN0KSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0b2FzdC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWVudGVyJywgU3dhbC5zdG9wVGltZXIpXHJcbiAgICAgICAgICAgICAgICB0b2FzdC5hZGRFdmVudExpc3RlbmVyKCdtb3VzZWxlYXZlJywgU3dhbC5yZXN1bWVUaW1lcilcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgfVxyXG5cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbnZlcnRVcHBlcihkYXRhOmFueSkge1xyXG4gICAgbGV0IFtmaXJzdFdvcmQsIHNlY29uZFdvcmRdID0gZGF0YS5yZXBsYWNlKC8oW2Etel0pKFtBLVpdKS9nLCAnJDEgJDInKS5zcGxpdCgnICcpO1xyXG4gICAgZmlyc3RXb3JkID0gZmlyc3RXb3JkLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgZmlyc3RXb3JkLnNsaWNlKDEpO1xyXG4gICAgcmV0dXJuIGZpcnN0V29yZCArICcgJyArIHNlY29uZFdvcmQ7XHJcbiAgfVxyXG5cclxuXHJcbn0iLCI8ZGl2IGNsYXNzPVwibXQtMiBkcm9wZG93bjEgIHBvc2l0aW9uLXJlbGF0aXZlIGN1cnNvci1wb2ludGVyXCIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZGF0YU9iamVjdDsgbGV0IGkgPSBpbmRleFwiPlxyXG4gICAgICAgIDxhIChjbGljayk9XCIhZGlzYWJsZWQgPyBEcm9wZG93bignQ2xpZW50cycsaSwkZXZlbnQpIDogJydcIiA+XHJcbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIXRleHQubGVuZ3RoXCI+PHN2ZyB3aWR0aD1cIjQ0XCIgaGVpZ2h0PVwiNDRcIlxyXG4gICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgNDQgNDRcIiBmaWxsPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxnIGZpbHRlcj1cInVybCgjZmlsdGVyMF9kXzMwOTRfMzgyNDMpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHg9XCIyXCIgeT1cIjFcIiB3aWR0aD1cIjQwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD1cIjQwXCIgcng9XCI4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHg9XCIyLjVcIiB5PVwiMS41XCIgd2lkdGg9XCIzOVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCIzOVwiIHJ4PVwiNy41XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiNEMEQ1RERcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0yMi4wMDAzIDE1LjE2NjVWMjYuODMzMk0xNi4xNjcgMjAuOTk5OEgyNy44MzM3XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzNDQwNTRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLXdpZHRoPVwiMS42N1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxmaWx0ZXIgaWQ9XCJmaWx0ZXIwX2RfMzA5NF8zODI0M1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCI0NFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCI0NFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXJVbml0cz1cInVzZXJTcGFjZU9uVXNlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz1cInNSR0JcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUZsb29kIGZsb29kLW9wYWNpdHk9XCIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQ9XCJCYWNrZ3JvdW5kSW1hZ2VGaXhcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlQ29sb3JNYXRyaXggaW49XCJTb3VyY2VBbHBoYVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cIm1hdHJpeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPVwiMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMTI3IDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdD1cImhhcmRBbHBoYVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVPZmZzZXQgZHk9XCIxXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUdhdXNzaWFuQmx1clxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0ZERldmlhdGlvbj1cIjFcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlQ29sb3JNYXRyaXggdHlwZT1cIm1hdHJpeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPVwiMCAwIDAgMCAwLjA2Mjc0NTEgMCAwIDAgMCAwLjA5NDExNzYgMCAwIDAgMCAwLjE1Njg2MyAwIDAgMCAwLjA1IDBcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlQmxlbmQgbW9kZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4yPVwiQmFja2dyb3VuZEltYWdlRml4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQ9XCJlZmZlY3QxX2Ryb3BTaGFkb3dfMzA5NF8zODI0M1wiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVCbGVuZCBtb2RlPVwibm9ybWFsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbj1cIlNvdXJjZUdyYXBoaWNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluMj1cImVmZmVjdDFfZHJvcFNoYWRvd18zMDk0XzM4MjQzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQ9XCJzaGFwZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlsdGVyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgIDwvc3ZnPnt7dGV4dH19PC9zcGFuPlxyXG4gICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0bi1vdXRsaW5lICBidG4gYWxpZ24taXRlbXMtZW5kIHRleHQtbm93cmFwIG1lLTRcIiAqbmdJZj1cInRleHQubGVuZ3RoXCI+PHN2Z1xyXG4gICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjFcIiBoZWlnaHQ9XCIyMFwiXHJcbiAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDIxIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTAuNDk5MyA0LjE2Njc1VjE1LjgzMzRNNC42NjYwMiAxMC4wMDAxSDE2LjMzMjdcIlxyXG4gICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzNDQwNTRcIiBzdHJva2Utd2lkdGg9XCIxLjY3XCJcclxuICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICA8L3N2Zz48c3BhbiBjbGFzcz1cIm14LTJcIj5BZGQgUHJvZHVjdHM8L3NwYW4+IDwvYnV0dG9uPlxyXG4gICAgICAgIDwvYT5cclxuICAgIDxkaXYgKm5nSWY9XCJpdGVtLmlzT3BlblwiIGNsYXNzPVwiZHJvcGRvd24tY29udGVudCBwb3NpdGlvbi1hYnNvbHV0ZSBlbmQtMCBcIiBbbmdDbGFzc109XCIhdGV4dC5sZW5ndGggPyAnbGVmdCcgOiAnYWRkc2VsZWN0J1wiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgcHgtNSBtdC01XCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cImZvcm0tY2hlY2staW5wdXRcIiB0eXBlPVwiY2hlY2tib3hcIiB2YWx1ZT1cIlNlbGVjdCBBbGxcIiBpZD1cInNlbGVjdGFsbHt7aX19XCJcclxuICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cInNlbGVjdGVkVmFsdWVzQXJyYXlbaV0/Lmxlbmd0aCA9PT0gaXRlbS5Jc3N1ZXMubGVuZ3RoXCJcclxuICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwidG9nZ2xlQ2hlY2tib3goJ1NlbGVjdCBBbGwnLCBpKVwiPlxyXG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsIG1zLTNcIiBmb3I9XCJzZWxlY3RhbGx7e2l9fVwiPlxyXG4gICAgICAgICAgICAgICAgU2VsZWN0IEFsbFxyXG4gICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJib3JkZXIgYm9yZGVyLWdyYXkgbXQtM1wiPjwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtdC0zIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgbXgtMlwiPlxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgPCEtLSA8aW5wdXQgdHlwZT1cInRleHRcIiBbKG5nTW9kZWwpXT1cInNlYXJjaFZhbHVlXCIgKGlucHV0KT1cInNlYXJjaERhdGEoJGV2ZW50LGkpXCJcclxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sIHNlYXJjaGlucHV0IHBzLTE0IHB5LTIgIG10LTJcIiBwbGFjZWhvbGRlcj1cIlNlYXJjaFwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiIC8+IC0tPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGlzc3VlIG9mIGl0ZW0uSXNzdWVzXCIgY2xhc3M9XCJmb3JtLWNoZWNrIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgcHktMyBweC01XCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cImZvcm0tY2hlY2staW5wdXQgY3Vyc29yLXBvaW50ZXJcIiB0eXBlPVwiY2hlY2tib3hcIiBbdmFsdWVdPVwiaXNzdWUudGV4dFwiIGlkPVwib3B0aW9ue3tpc3N1ZS50ZXh0fX1cIlxyXG4gICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwic2VsZWN0ZWRWYWx1ZXNBcnJheVtpXT8uaW5jbHVkZXMoaXNzdWUudGV4dClcIiAoY2hhbmdlKT1cInRvZ2dsZUNoZWNrYm94KGlzc3VlLnRleHQsaSlcIiBbZGlzYWJsZWRdPVwiaXNzdWUudGV4dCA9PT0gJ3RhbmdvVHJhZmZpYydcIj5cclxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbCBweC0zIGN1cnNvci1wb2ludGVyXCIgZm9yPVwib3B0aW9ue3tpc3N1ZS50ZXh0fX1cIj5cclxuICAgICAgICAgICAgICAgIHt7IGNvbnZlcnRVcHBlcihpc3N1ZS50ZXh0KSB9fVxyXG4gICAgICAgICAgICA8L2xhYmVsPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJtdC00IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIFwiPlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWxcIiAqbmdJZj1cIm5vRmlsdGVyXCI+Tm8gZmlsdGVycyBhdmFpbGFibGU8L3NwYW4+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiByb2xlPVwiZ3JvdXBcIiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBtYi00IG14LTVcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tb3V0bGluZSB3LTEwMCBtZS0yXCIgKGNsaWNrKT1cIlJlc2V0KClcIj4gUmVzZXQgPC9idXR0b24+XHJcbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgdy0xMDAgbXMtMlwiIChjbGljayk9XCJwcm9kdWN0Y29uZmlybWF0aW9uKClcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRCdG5cIj5BcHBseTwvYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiBcclxuPC9kaXY+XHJcblxyXG4iXX0=
278
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGlkcm9wZG93bi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL211bHRpZHJvcGRvd24vbXVsdGlkcm9wZG93bi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL211bHRpZHJvcGRvd24vbXVsdGlkcm9wZG93bi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXdDLE1BQU0sRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHM0gsT0FBTyxFQUFFLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXhELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHdEQUF3RCxDQUFDOzs7Ozs7O0FBU3RHLE1BQU0sT0FBTyxzQkFBc0I7SUF1QmI7SUFBK0I7SUFBMkM7SUFBZ0M7SUFBZ0U7SUFBMEM7SUF0Qi9OLElBQUksR0FBVSxFQUFFLENBQUM7SUFDakIsT0FBTyxHQUFRLEVBQUUsQ0FBQztJQUNsQixXQUFXLEdBQU0sRUFBRSxDQUFDO0lBQ3BCLElBQUksR0FBUSxTQUFTLENBQUM7SUFDdEIsTUFBTSxHQUFPLEVBQUUsQ0FBQztJQUNoQixRQUFRLENBQVE7SUFDaEIsU0FBUyxHQUFXLEtBQUssQ0FBQztJQUMxQixhQUFhLEdBQU8sRUFBRSxDQUFDO0lBQ3ZCLFFBQVEsR0FBVyxLQUFLLENBQUM7SUFDeEIsSUFBSSxH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Q0FBQTthQUNIO1NBRUY7SUFDSCxDQUFDO0lBRUQsWUFBWSxDQUFDLElBQVE7UUFDbkIsSUFBSSxDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNsRixTQUFTLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25FLE9BQU8sU0FBUyxHQUFHLEdBQUcsR0FBRyxVQUFVLENBQUM7SUFDdEMsQ0FBQzt1R0FoUVUsc0JBQXNCOzJGQUF0QixzQkFBc0IsZ1dDZG5DLHEyS0F1RkE7OzJGRHpFYSxzQkFBc0I7a0JBTmxDLFNBQVM7K0JBQ0UsbUJBQW1COzhPQU1wQixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNJLElBQUk7c0JBQWIsTUFBTTtnQkF1RFAsT0FBTztzQkFETixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7ICBOZ2JNb2RhbCB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcclxuaW1wb3J0IHsgUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy9wYXltZW50LXN1YnNjcmlwdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU3ViamVjdCwgU3Vic2NyaXB0aW9uLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgR2xvYmFsU3RhdGVTZXJ2aWNlLExheW91dFNlcnZpY2UgfSBmcm9tICd0YW5nby1hcHAtdWktZ2xvYmFsJztcclxuaW1wb3J0IHsgUHJvZHVjdENvbmZpcm1hdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uL3Byb2R1Y3QtY29uZmlybWF0aW9uL3Byb2R1Y3QtY29uZmlybWF0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRvYXN0U2VydmljZSB9IGZyb20gJ3RhbmdvLWFwcC11aS1zaGFyZWQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItbXVsdGlkcm9wZG93bicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL211bHRpZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9tdWx0aWRyb3Bkb3duLmNvbXBvbmVudC5zY3NzJ1xyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIE11bHRpZHJvcGRvd25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQElucHV0KCkgdGV4dDpzdHJpbmcgPSBcIlwiO1xyXG4gIEBJbnB1dCgpIHByb2R1Y3Q6IGFueSA9IFtdO1xyXG4gIEBJbnB1dCgpIHByb2R1Y3RMaXN0OmFueSA9W107XHJcbiAgQElucHV0KCkgdHlwZTpzdHJpbmc9XCJwcm9kdWN0XCI7XHJcbiAgQElucHV0KCkgc3RvcmVzOmFueSA9IFtdO1xyXG4gIEBJbnB1dCgpIGNsaWVudElkOnN0cmluZztcclxuICBASW5wdXQoKSBzZWxlY3RBbGw6Ym9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIGNsaWVudFByb2R1Y3Q6YW55ID0gW107XHJcbiAgQElucHV0KCkgZGlzYWJsZWQ6Ym9vbGVhbiA9IGZhbHNlO1xyXG4gIEBPdXRwdXQoKSBkYXRhID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIHByaXZhdGUgdW5zdWJzY3JpYmU6IFN1YnNjcmlwdGlvbltdID0gW107XHJcbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0KCk7XHJcblxyXG4gIGRhdGFPYmplY3Q6IGFueSA9IFtcclxuICAgIHsgRGVzY3JpcHRpb246ICdDbGllbnRzJywgSXNzdWVzOiBbXSB9LFxyXG4gICAgXHJcbiAgXTtcclxuXHJcbiAgZHVtbXlBcnJheTogYW55ID1bXTtcclxuICBub0ZpbHRlcjogYm9vbGVhbiA9ZmFsc2U7XHJcbiAgcmVzcG9uc2VBcnJheTogYW55PVtdO1xyXG4gIGRpc2FibGVkQnRuOmJvb2xlYW4gPSB0cnVlO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbGF5b3V0OiBMYXlvdXRTZXJ2aWNlLCBwcml2YXRlIGdsb2JhbFNlcnZpY2U6IEdsb2JhbFN0YXRlU2VydmljZSwgcHJpdmF0ZSBtb2RhbFNlcnZpY2U6IE5nYk1vZGFsLCBwcml2YXRlIFBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlOiBQYXltZW50U3Vic2NyaXB0aW9uU2VydmljZSwgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYscHJpdmF0ZSBUb2FzdFNlcnZpY2U6VG9hc3RTZXJ2aWNlKSB7fVxyXG5cclxuXHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgdGhpcy51bnN1YnNjcmliZS5mb3JFYWNoKChzYikgPT4gc2IudW5zdWJzY3JpYmUoKSk7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XHJcbiAgfVxyXG5cclxuICBPcGVuZHJvcGRvd246IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgcGVybWlzc2lvbiA9IFtcclxuICAgIHsgZ3JvdXA6ICdTdXBlciBBZG1pbicsIGRlc2NyaXB0aW9uOiAnTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyICcgfSxcclxuICAgIHsgZ3JvdXA6ICdBZG1pbicsIGRlc2NyaXB0aW9uOiAnTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQsIGNvbnNlY3RldHVyICcgfSxcclxuICAgIHsgZ3JvdXA6ICdVc2VyJywgZGVzY3JpcHRpb246ICdMb3JlbSBpcHN1bSBkb2xvciBzaXQgYW1ldCwgY29uc2VjdGV0dXIgJyB9LFxyXG4gIF1cclxuXHJcbiAgXHJcbiAgc2hvd2Ryb3Bkb3duOiBhbnk7XHJcbiAgc2VsZWN0ZWRWYWx1ZXM6IHN0cmluZ1tdID0gW107XHJcbiAgc2VsZWN0ZWRWYWx1ZXNBcnJheTogYW55W10gPSBbXTtcclxuICBzZWxlY3RlZEZpbHRlcnM6IGFueSA9IHtcclxuICAgIHN0b3JlOiBudWxsLFxyXG4gICAgc3RvcmVzOiBbXSxcclxuICAgIGRhdGU6IG51bGwsXHJcblxyXG4gIH07XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmRhdGFPYmplY3RbMF0uSXNzdWVzID0gdGhpcy5wcm9kdWN0TGlzdDtcclxuICAgIHRoaXMuZHVtbXlBcnJheSA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy5kYXRhT2JqZWN0KSlcclxuICAgIHRoaXMucmVzcG9uc2VBcnJheSA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy5kYXRhT2JqZWN0KSlcclxuICAgIGNvbnN0IHN1YnNjciA9IHRoaXMubGF5b3V0LmxheW91dENvbmZpZ1N1YmplY3RcclxuICAgICAgLmFzT2JzZXJ2YWJsZSgpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgfSk7XHJcbiAgICB0aGlzLnVuc3Vic2NyaWJlLnB1c2goc3Vic2NyKTtcclxuICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXNBcnJheSA9IFt0aGlzLnByb2R1Y3Q/Lm1hcCgoaXRlbTogYW55KSA9PiBpdGVtPy5wcm9kdWN0IHx8IGl0ZW0pXTtcclxuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH1cclxuICBcclxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50J10pXHJcbiAgb25DbGljayAoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcclxuICAgIGNvbnN0XHJcbiAgICAgIHRhcmdldCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcclxuICAgIGlmKCF0YXJnZXQuY2xvc2VzdCgnLmRyb3Bkb3duMScpKSB7XHJcbiAgICAgIHRoaXMuT3BlbmRyb3Bkb3duID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBpZighdGFyZ2V0LmNsb3Nlc3QoJy5kcm9wZG93bi1jb250ZW50Jykpe1xyXG4gICAgICB0aGlzLmRhdGFPYmplY3QuZm9yRWFjaCgoaXRlbTogYW55LCBpOiBhbnkpID0+IHtcclxuICAgICAgICAgIGl0ZW0uaXNPcGVuID0gZmFsc2U7IFxyXG4gICAgICAgIH1cclxuICAgICAgKTtcclxuICAgIH1cclxuICAgIFxyXG4gIH1cclxuXHJcbiAgb3BlbmRyb3Bkb3duKGU6TW91c2VFdmVudCkge1xyXG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIHRoaXMuT3BlbmRyb3Bkb3duID0gIXRoaXMuT3BlbmRyb3Bkb3duO1xyXG4gIH1cclxuXHJcbiAgRHJvcGRvd24odmFsdWU6IGFueSwgaW5kZXg6IG51bWJlcixldmVudDpNb3VzZUV2ZW50KSB7XHJcbiAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy5kYXRhT2JqZWN0LmZvckVhY2goKGl0ZW06IGFueSwgaTogYW55KSA9PiB7XHJcbiAgICAgIGlmIChpICE9PSBpbmRleCkge1xyXG4gICAgICAgIGl0ZW0uaXNPcGVuID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gICAgdGhpcy5kYXRhT2JqZWN0W2luZGV4XS5pc09wZW4gPSAhdGhpcy5kYXRhT2JqZWN0W2luZGV4XS5pc09wZW47XHJcbiAgICB0aGlzLnNlbGVjdGVkVmFsdWVzQXJyYXkgPSBbdGhpcy5wcm9kdWN0Py5tYXAoKGl0ZW06IGFueSkgPT4gaXRlbT8ucHJvZHVjdCB8fCBpdGVtKV07XHJcbiAgfVxyXG4gIFxyXG4gIHRvZ2dsZUNoZWNrYm94KGlzc3VlOiBzdHJpbmcsIGluZGV4OiBudW1iZXIpIHtcclxuICAgIGNvbnN0IGN1cnJlbnRJc3N1ZXMgPSB0aGlzLmRhdGFPYmplY3RbaW5kZXhdLklzc3VlcztcclxuICAgIFxyXG4gICAgdGhpcy5zZWxlY3RlZFZhbHVlc0FycmF5W2luZGV4XSA9IHRoaXMuc2VsZWN0ZWRWYWx1ZXNBcnJheVtpbmRleF0gfHwgW107XHJcbiAgICBjb25zdCBzZWxlY3RlZFZhbHVlcyA9IHRoaXMuc2VsZWN0ZWRWYWx1ZXNBcnJheVtpbmRleF07XHJcblxyXG4gICAgaWYgKGlzc3VlID09PSAnU2VsZWN0IEFsbCcpIHtcclxuICAgICAgY29uc3QgY3VycmVudElzc3VlcyA9IHRoaXMuZGF0YU9iamVjdFtpbmRleF0uSXNzdWVzLm1hcCgoaXRlbTogYW55KSA9PiBpdGVtLnRleHQpO1xyXG4gICAgICBpZiAoc2VsZWN0ZWRWYWx1ZXMubGVuZ3RoID09PSBjdXJyZW50SXNzdWVzLmxlbmd0aCkge1xyXG5cclxuICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzQXJyYXlbaW5kZXhdID0gWyd0YW5nb1RyYWZmaWMnXTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzQXJyYXlbaW5kZXhdID0gWy4uLmN1cnJlbnRJc3N1ZXNdO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAoc2VsZWN0ZWRWYWx1ZXMuaW5jbHVkZXMoaXNzdWUpKSB7XHJcblxyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXNBcnJheVtpbmRleF0gPSBzZWxlY3RlZFZhbHVlcy5maWx0ZXIoKGl0ZW06IGFueSkgPT4gaXRlbSAhPT0gaXNzdWUpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXNBcnJheVtpbmRleF0ucHVzaChpc3N1ZSlcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGxldCBjb3VudCA9IDA7XHJcbiAgICBsZXQgZXhpc3RQcm9kdWN0ID0gdGhpcy5wcm9kdWN0Lm1hcCgoaXRlbTphbnkpID0+IGl0ZW0ucHJvZHVjdCB8fCBpdGVtKTtcclxuICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXNBcnJheVswXS5mb3JFYWNoKChpdGVtOmFueSkgPT4ge1xyXG4gICAgICBpZighZXhpc3RQcm9kdWN0LmluY2x1ZGVzKGl0ZW0pKSB7XHJcbiAgICAgICAgY291bnQrKztcclxuICAgICAgfVxyXG4gICAgfSk7XHJcblxyXG4gICAgZXhpc3RQcm9kdWN0LmZvckVhY2goKGl0ZW06YW55KSA9PiB7XHJcbiAgICAgIGlmKCF0aGlzLnNlbGVjdGVkVmFsdWVzQXJyYXlbMF0uaW5jbHVkZXMoaXRlbSkpIHtcclxuICAgICAgICBjb3VudCsrO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICBpZihjb3VudCkge1xyXG4gICAgICB0aGlzLmRpc2FibGVkQnRuID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgdGhpcy5kaXNhYmxlZEJ0biA9IHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3Qgc2VsZWN0QWxsSWQgPSBgc2VsZWN0YWxsJHtpbmRleH1gO1xyXG4gICAgY29uc3Qgc2VsZWN0QWxsRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHNlbGVjdEFsbElkKSBhcyBIVE1MSW5wdXRFbGVtZW50O1xyXG4gICAgaWYgKHNlbGVjdEFsbEVsZW1lbnQpIHtcclxuICAgICAgc2VsZWN0QWxsRWxlbWVudC5jaGVja2VkID0gc2VsZWN0ZWRWYWx1ZXMubGVuZ3RoID09PSBjdXJyZW50SXNzdWVzLmxlbmd0aDtcclxuICAgIH1cclxuXHJcbiAgICBjdXJyZW50SXNzdWVzLmZvckVhY2goKGl0ZW06IHN0cmluZykgPT4ge1xyXG4gICAgICBjb25zdCBpc0NoZWNrZWQgPSB0aGlzLnNlbGVjdGVkVmFsdWVzQXJyYXlbaW5kZXhdLmluY2x1ZGVzKGl0ZW0pO1xyXG4gICAgICBjb25zdCBjaGVja2JveElkID0gYG9wdGlvbiR7aXRlbX1gO1xyXG4gICAgICBjb25zdCBjaGVja2JveEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChjaGVja2JveElkKSBhcyBIVE1MSW5wdXRFbGVtZW50O1xyXG4gICAgICBpZiAoY2hlY2tib3hFbGVtZW50KSB7XHJcbiAgICAgICAgY2hlY2tib3hFbGVtZW50LmNoZWNrZWQgPSBpc0NoZWNrZWQ7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICB9XHJcblxyXG4gIFJlc2V0KCkge1xyXG4gICAgdGhpcy5zZWxlY3RlZFZhbHVlc0FycmF5ID0gW3RoaXMucHJvZHVjdD8ubWFwKChpdGVtOiBhbnkpID0+IGl0ZW0/LnByb2R1Y3QgfHwgaXRlbSldO1xyXG4gICAgdGhpcy5kaXNhYmxlZEJ0biA9IHRydWU7XHJcbiAgICB0aGlzLk9wZW5kcm9wZG93biA9IGZhbHNlO1xyXG4gICAgdGhpcy5kYXRhT2JqZWN0LmZvckVhY2goKGl0ZW06IGFueSwgaTogYW55KSA9PiB7XHJcbiAgICAgIGl0ZW0uaXNPcGVuID0gZmFsc2U7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByb2R1Y3Rjb25maXJtYXRpb24oKSB7XHJcbiAgICB0aGlzLmRhdGFPYmplY3QuZm9yRWFjaCgoaXRlbTogYW55LCBpOiBhbnkpID0+IHtcclxuICAgICAgaXRlbS5pc09wZW4gPSBmYWxzZTtcclxuICAgIH0pO1xyXG4gICAgbGV0IHNob3dQb3B1cDpib29sZWFuID0gZmFsc2U7XHJcbiAgICBpZih0aGlzLnR5cGUgPT0gJ3N0b3JlcycpIHtcclxuICAgICAgbGV0IHByb2R1Y3QgPSB0aGlzLmNsaWVudFByb2R1Y3QubWFwKChpdGVtOiBhbnkpID0+IGl0ZW0ucHJvZHVjdCk7XHJcbiAgICAgIGlmICh0aGlzLnNlbGVjdEFsbCkge1xyXG4gICAgICAgIHByb2R1Y3QuZm9yRWFjaCgoaXRlbTphbnkpID0+IHtcclxuICAgICAgICAgIGlmICghdGhpcy5zZWxlY3RlZFZhbHVlc0FycmF5WzBdLmluY2x1ZGVzKGl0ZW0pKSB7XHJcbiAgICAgICAgICAgIHNob3dQb3B1cCA9IHRydWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzQXJyYXlbMF0uZm9yRWFjaCgoaXRlbTphbnkpID0+IHtcclxuICAgICAgICBpZiAoIXByb2R1Y3QuaW5jbHVkZXMoaXRlbSkpIHtcclxuICAgICAgICAgIHNob3dQb3B1cCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgfVxyXG4gICAgaWYodGhpcy50eXBlID09ICdwcm9kdWN0cycpIHtcclxuICAgICAgbGV0IGV4aXN0UHJvZHVjdCA9IHRoaXMucHJvZHVjdC5tYXAoKGl0ZW06YW55KSA9PiBpdGVtLnByb2R1Y3QgfHwgaXRlbSk7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXNBcnJheVswXS5mb3JFYWNoKChpdGVtOmFueSkgPT4ge1xyXG4gICAgICAgIGlmKCFleGlzdFByb2R1Y3QuaW5jbHVkZXMoaXRlbSkpIHtcclxuICAgICAgICAgIHNob3dQb3B1cCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIGV4aXN0UHJvZHVjdC5mb3JFYWNoKChpdGVtOmFueSkgPT4ge1xyXG4gICAgICAgIGlmKCF0aGlzLnNlbGVjdGVkVmFsdWVzQXJyYXlbMF0uaW5jbHVkZXMoaXRlbSkpIHtcclxuICAgICAgICAgIHNob3dQb3B1cCA9IHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgaWYgKHNob3dQb3B1cCkge1xyXG4gICAgICBjb25zdCBtb2RhbFJlZiA9IHRoaXMubW9kYWxTZXJ2aWNlLm9wZW4oUHJvZHVjdENvbmZpcm1hdGlvbkNvbXBvbmVudCx7XHJcbiAgICAgICAgY2VudGVyZWQ6dHJ1ZSxzaXplOidtZCcsc2Nyb2xsYWJsZTp0cnVlXHJcbiAgICAgIH0pO1xyXG4gICAgICBtb2RhbFJlZi5jb21wb25lbnRJbnN0YW5jZS5wcm9kdWN0TGlzdCA9IHRoaXMucHJvZHVjdC5tYXAoKGl0ZW06YW55KT0+aXRlbT8ucHJvZHVjdCB8fCBpdGVtKTtcclxuICAgICAgbW9kYWxSZWYuY29tcG9uZW50SW5zdGFuY2UudXBkYXRlZFByb2R1Y3QgPSB0aGlzLnNlbGVjdGVkVmFsdWVzQXJyYXlbMF07XHJcbiAgICAgIG1vZGFsUmVmLmNvbXBvbmVudEluc3RhbmNlLnR5cGUgPSB0aGlzLnR5cGU7XHJcbiAgICAgIG1vZGFsUmVmLmNvbXBvbmVudEluc3RhbmNlLnN0b3JlcyA9IHRoaXMuc3RvcmVzO1xyXG4gICAgICBtb2RhbFJlZi5jb21wb25lbnRJbnN0YW5jZS5jbGllbnRJZCA9IHRoaXMuY2xpZW50SWQ7XHJcbiAgICAgIG1vZGFsUmVmLmNvbXBvbmVudEluc3RhbmNlLmNsaWVudFByb2R1Y3QgPSB0aGlzLmNsaWVudFByb2R1Y3Q7XHJcbiAgICAgIG1vZGFsUmVmLnJlc3VsdC50aGVuKChyZXN1bHQpID0+IHtcclxuICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzQXJyYXlbMF0gPSBbXTtcclxuICAgICAgICB0aGlzLmRhdGEuZW1pdChyZXN1bHQpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICBpZih0aGlzLnR5cGUgPT0gJ3N0b3JlcycpIHtcclxuICAgICAgICBsZXQgcHJvZHVjdHM6YW55ID0gW107XHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlc0FycmF5WzBdLmZvckVhY2goKGl0ZW06YW55KSA9PiB7XHJcbiAgICAgICAgICBsZXQgZGV0YWlscyA9IHRoaXMuY2xpZW50UHJvZHVjdC5maW5kKChlbGU6YW55KT0+IGVsZS5wcm9kdWN0ID09IGl0ZW0pXHJcbiAgICAgICAgICBsZXQgdHlwZSA9IGRldGFpbHM/LnN0YXR1cyB8fCAndHJpYWwnXHJcbiAgICAgICAgICBwcm9kdWN0cy5wdXNoKHtcclxuICAgICAgICAgICAgbmFtZTogaXRlbSxcclxuICAgICAgICAgICAgdHlwZTogdHlwZVxyXG4gICAgICAgICAgfSlcclxuICAgICAgICB9KVxyXG4gICAgICAgIHRoaXMucHJvZHVjdC5mb3JFYWNoKChpdGVtOmFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKCF0aGlzLnNlbGVjdGVkVmFsdWVzQXJyYXlbMF0uaW5jbHVkZXMoaXRlbSkpIHtcclxuICAgICAgICAgICAgcHJvZHVjdHMucHVzaCh7XHJcbiAgICAgICAgICAgICAgbmFtZTogaXRlbSxcclxuICAgICAgICAgICAgICB0eXBlOiAndW5zdWJzY3JpYmUnXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuICAgICAgICBsZXQgcGFyYW1zID0ge1xyXG4gICAgICAgICAgY2xpZW50SWQ6IHRoaXMuY2xpZW50SWQsXHJcbiAgICAgICAgICBwcm9kdWN0OiBwcm9kdWN0cyxcclxuICAgICAgICAgIHN0b3JlOiB0aGlzLnN0b3Jlc1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLlBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlLnVwZGF0ZVN0b3JlKHBhcmFtcykuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlc0FycmF5WzBdPVtdO1xyXG4gICAgICAgICAgICB0aGlzLlRvYXN0U2VydmljZS5nZXRTdWNjZXNzVG9hc3QocmVzLm1lc3NhZ2UpXHJcbiAgICAgICAgICAgIHRoaXMuZGF0YS5lbWl0KCdzdG9yZScpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgIH1cclxuXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb252ZXJ0VXBwZXIoZGF0YTphbnkpIHtcclxuICAgIGxldCBbZmlyc3RXb3JkLCBzZWNvbmRXb3JkXSA9IGRhdGEucmVwbGFjZSgvKFthLXpdKShbQS1aXSkvZywgJyQxICQyJykuc3BsaXQoJyAnKTtcclxuICAgIGZpcnN0V29yZCA9IGZpcnN0V29yZC5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIGZpcnN0V29yZC5zbGljZSgxKTtcclxuICAgIHJldHVybiBmaXJzdFdvcmQgKyAnICcgKyBzZWNvbmRXb3JkO1xyXG4gIH1cclxuXHJcblxyXG59IiwiPGRpdiBjbGFzcz1cIm10LTIgZHJvcGRvd24xICBwb3NpdGlvbi1yZWxhdGl2ZSBjdXJzb3ItcG9pbnRlclwiICpuZ0Zvcj1cImxldCBpdGVtIG9mIGRhdGFPYmplY3Q7IGxldCBpID0gaW5kZXhcIj5cclxuICAgICAgICA8YSAoY2xpY2spPVwiIWRpc2FibGVkID8gRHJvcGRvd24oJ0NsaWVudHMnLGksJGV2ZW50KSA6ICcnXCIgPlxyXG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiF0ZXh0Lmxlbmd0aFwiPjxzdmcgd2lkdGg9XCI0NFwiIGhlaWdodD1cIjQ0XCJcclxuICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDQ0IDQ0XCIgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZyBmaWx0ZXI9XCJ1cmwoI2ZpbHRlcjBfZF8zMDk0XzM4MjQzKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB4PVwiMlwiIHk9XCIxXCIgd2lkdGg9XCI0MFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ9XCI0MFwiIHJ4PVwiOFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB4PVwiMi41XCIgeT1cIjEuNVwiIHdpZHRoPVwiMzlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiMzlcIiByeD1cIjcuNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjRDBENUREXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjIuMDAwMyAxNS4xNjY1VjI2LjgzMzJNMTYuMTY3IDIwLjk5OThIMjcuODMzN1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMzQ0MDU0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjEuNjdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZmlsdGVyIGlkPVwiZmlsdGVyMF9kXzMwOTRfMzgyNDNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgeD1cIjBcIiB5PVwiMFwiIHdpZHRoPVwiNDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0PVwiNDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9XCJzUkdCXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PVwiMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0PVwiQmFja2dyb3VuZEltYWdlRml4XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUNvbG9yTWF0cml4IGluPVwiU291cmNlQWxwaGFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJtYXRyaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz1cIjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQ9XCJoYXJkQWxwaGFcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlT2Zmc2V0IGR5PVwiMVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVHYXVzc2lhbkJsdXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGREZXZpYXRpb249XCIxXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUNvbG9yTWF0cml4IHR5cGU9XCJtYXRyaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz1cIjAgMCAwIDAgMC4wNjI3NDUxIDAgMCAwIDAgMC4wOTQxMTc2IDAgMCAwIDAgMC4xNTY4NjMgMCAwIDAgMC4wNSAwXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUJsZW5kIG1vZGU9XCJub3JtYWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluMj1cIkJhY2tncm91bmRJbWFnZUZpeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0PVwiZWZmZWN0MV9kcm9wU2hhZG93XzMwOTRfMzgyNDNcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlQmxlbmQgbW9kZT1cIm5vcm1hbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW49XCJTb3VyY2VHcmFwaGljXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbjI9XCJlZmZlY3QxX2Ryb3BTaGFkb3dfMzA5NF8zODI0M1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0PVwic2hhcGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2ZpbHRlcj5cclxuICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICA8L3N2Zz57e3RleHR9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4tb3V0bGluZSAgYnRuIGFsaWduLWl0ZW1zLWVuZCB0ZXh0LW5vd3JhcCBtZS00XCIgKm5nSWY9XCJ0ZXh0Lmxlbmd0aFwiPjxzdmdcclxuICAgICAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIxXCIgaGVpZ2h0PVwiMjBcIlxyXG4gICAgICAgICAgICAgICAgdmlld0JveD1cIjAgMCAyMSAyMFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEwLjQ5OTMgNC4xNjY3NVYxNS44MzM0TTQuNjY2MDIgMTAuMDAwMUgxNi4zMzI3XCJcclxuICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiXHJcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgPC9zdmc+PHNwYW4gY2xhc3M9XCJteC0yXCI+QWRkIFByb2R1Y3RzPC9zcGFuPiA8L2J1dHRvbj5cclxuICAgICAgICA8L2E+XHJcbiAgICA8ZGl2ICpuZ0lmPVwiaXRlbS5pc09wZW5cIiBjbGFzcz1cImRyb3Bkb3duLWNvbnRlbnQgcG9zaXRpb24tYWJzb2x1dGUgZW5kLTAgXCIgW25nQ2xhc3NdPVwiIXRleHQubGVuZ3RoID8gJ2xlZnQnIDogJ2FkZHNlbGVjdCdcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jaGVjayBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIHB4LTUgbXQtNVwiPlxyXG4gICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0XCIgdHlwZT1cImNoZWNrYm94XCIgdmFsdWU9XCJTZWxlY3QgQWxsXCIgaWQ9XCJzZWxlY3RhbGx7e2l9fVwiXHJcbiAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJzZWxlY3RlZFZhbHVlc0FycmF5W2ldPy5sZW5ndGggPT09IGl0ZW0uSXNzdWVzLmxlbmd0aFwiXHJcbiAgICAgICAgICAgICAgICAoY2hhbmdlKT1cInRvZ2dsZUNoZWNrYm94KCdTZWxlY3QgQWxsJywgaSlcIj5cclxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbCBtcy0zXCIgZm9yPVwic2VsZWN0YWxse3tpfX1cIj5cclxuICAgICAgICAgICAgICAgIFNlbGVjdCBBbGxcclxuICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYm9yZGVyIGJvcmRlci1ncmF5IG10LTNcIj48L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMyBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG14LTJcIj5cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIDwhLS0gPGlucHV0IHR5cGU9XCJ0ZXh0XCIgWyhuZ01vZGVsKV09XCJzZWFyY2hWYWx1ZVwiIChpbnB1dCk9XCJzZWFyY2hEYXRhKCRldmVudCxpKVwiXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCBzZWFyY2hpbnB1dCBwcy0xNCBweS0yICBtdC0yXCIgcGxhY2Vob2xkZXI9XCJTZWFyY2hcIiBhdXRvY29tcGxldGU9XCJvZmZcIiAvPiAtLT5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBpc3N1ZSBvZiBpdGVtLklzc3Vlc1wiIGNsYXNzPVwiZm9ybS1jaGVjayBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIHB5LTMgcHgtNVwiPlxyXG4gICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0IGN1cnNvci1wb2ludGVyXCIgdHlwZT1cImNoZWNrYm94XCIgW3ZhbHVlXT1cImlzc3VlLnRleHRcIiBpZD1cIm9wdGlvbnt7aXNzdWUudGV4dH19XCJcclxuICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cInNlbGVjdGVkVmFsdWVzQXJyYXlbaV0/LmluY2x1ZGVzKGlzc3VlLnRleHQpXCIgKGNoYW5nZSk9XCJ0b2dnbGVDaGVja2JveChpc3N1ZS50ZXh0LGkpXCIgW2Rpc2FibGVkXT1cImlzc3VlLnRleHQgPT09ICd0YW5nb1RyYWZmaWMnXCI+XHJcbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwgcHgtMyBjdXJzb3ItcG9pbnRlclwiIGZvcj1cIm9wdGlvbnt7aXNzdWUudGV4dH19XCI+XHJcbiAgICAgICAgICAgICAgICB7eyBjb252ZXJ0VXBwZXIoaXNzdWUudGV4dCkgfX1cclxuICAgICAgICAgICAgPC9sYWJlbD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibXQtNCBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBcIj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsXCIgKm5nSWY9XCJub0ZpbHRlclwiPk5vIGZpbHRlcnMgYXZhaWxhYmxlPC9zcGFuPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgcm9sZT1cImdyb3VwXCIgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gbWItNCBteC01XCI+XHJcbiAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLW91dGxpbmUgdy0xMDAgbWUtMlwiIChjbGljayk9XCJSZXNldCgpXCI+IFJlc2V0IDwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IHctMTAwIG1zLTJcIiAoY2xpY2spPVwicHJvZHVjdGNvbmZpcm1hdGlvbigpXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkQnRuXCI+QXBwbHk8L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gXHJcbjwvZGl2PlxyXG5cclxuIl19
@@ -63,7 +63,7 @@ export class NeedHelpComponent {
63
63
  this.PaymentSubscriptionService.unsubscribe(requestData).pipe(takeUntil(this.destroy$)).subscribe((res) => {
64
64
  if (res && res.code == 200) {
65
65
  this.activeModal.close(requestData);
66
- this.toast.getErrorToast(res.message);
66
+ this.toast.getPrimaryToast(res.message);
67
67
  }
68
68
  }, (error) => {
69
69
  this.toast.getErrorToast(error.error.error);
@@ -111,4 +111,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
111
111
  }], ctorParameters: () => [{ type: i1.NgbActiveModal }, { type: i2.PaymentSubscriptionService }, { type: i0.ChangeDetectorRef }, { type: i3.FormBuilder }, { type: i4.ToastService }], propDecorators: { clientId: [{
112
112
  type: Input
113
113
  }] } });
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVlZC1oZWxwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLW1hbmFnZS1zZXR0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvcGF5bWVudHMtc3Vic2NyaXB0aW9uL3N1YnNjcmlwdGlvbi1wb3B1cHMvbmVlZC1oZWxwL25lZWQtaGVscC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL25lZWQtaGVscC9uZWVkLWhlbHAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQW9CLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLEVBQTBCLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBS3BFLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7O0FBTTFDLE1BQU0sT0FBTyxpQkFBaUI7SUFnQ25CO0lBQXFDO0lBQWdFO0lBQTBDO0lBQXdCO0lBL0J2SyxRQUFRLENBQVE7SUFDekIsTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUNoQixrQkFBa0IsR0FBVyxLQUFLLENBQUM7SUFDbkMsbUJBQW1CLEdBQVcsS0FBSyxDQUFDO0lBQ3BDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDZCxjQUFjLEdBQVMsQ0FBQyxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsUUFBUSxDQUFFLENBQUM7SUFDdkUscUVBQXFFO0lBQ3JFLGVBQWUsR0FBc0MsRUFBRSxDQUFDO0lBQ3hELGVBQWUsR0FBUSxpQkFBaUIsQ0FBQztJQUN6QyxxQkFBcUIsQ0FBSztJQUMxQix3Q0FBd0M7SUFDeEMsZ0JBQWdC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Q0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO2dCQUNyRCxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO2FBQ3JDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFHSCxDQUFDO3VHQW5HVSxpQkFBaUI7MkZBQWpCLGlCQUFpQix1RkNaOUIsOHZNQTBHQTs7MkZEOUZhLGlCQUFpQjtrQkFMN0IsU0FBUzsrQkFDRSxlQUFlO2lOQUtoQixRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQsSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTmdiQWN0aXZlTW9kYWwgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XHJcbmltcG9ydCBTd2FsIGZyb20gJ3N3ZWV0YWxlcnQyJztcclxuaW1wb3J0IHsgUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy9wYXltZW50LXN1YnNjcmlwdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlIH0gZnJvbSAndGFuZ28tYXBwLXVpLXNoYXJlZCc7XHJcbmltcG9ydCB7IFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1uZWVkLWhlbHAnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9uZWVkLWhlbHAuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9uZWVkLWhlbHAuY29tcG9uZW50LnNjc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOZWVkSGVscENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCxPbkRlc3Ryb3kge1xyXG4gIEBJbnB1dCgpIGNsaWVudElkOnN0cmluZztcclxuICBzdGF0dXMgPSAnaGVscCc7XHJcbiAgY2FuY2VsbGluZ2Ryb3BEb3duOmJvb2xlYW4gPSBmYWxzZTtcclxuICB0cmFpbGV4dGVuZGRyb3BEb3duOmJvb2xlYW4gPSBmYWxzZTtcclxuICBkYXRhbGlzdCA9IFtdO1xyXG4gIGNhbmNlbGxpbmd0eXBlOmFueVtdID0gWydQcm9kdWN0IENvbmNlcm4nLCAnUHJpY2UgQ29uY2VybicsICdPdGhlcnMnIF07XHJcbiAgLy8gdHJhaWxleHRlbmR0eXBlOiBhbnkgPSBbJ1RhbmdvIFpvbmUnLCAnVGFuZ28gUmV2b3AnLCAnVGFuZ28gU09QJ107XHJcbiAgdHJhaWxleHRlbmR0eXBlOiB7IG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyB9W10gPSBbXTtcclxuICBjYW5jZWxsaW5nSXNzdWU6IGFueSA9ICdQcm9kdWN0IENvbmNlcm4nO1xyXG4gIGNhbmNlbGxpbmdEZXNjcmlwdGlvbjphbnk7XHJcbiAgLy8gdHJhaWxleHRlbmRJc3N1ZTogYW55ID0gJ1RhbmdvIFpvbmUnO1xyXG4gIHRyYWlsZXh0ZW5kSXNzdWU6IGFueTtcclxuICBleHRlbmR0cmFpbGZvcm06IEZvcm1Hcm91cDtcclxuICB0cmFpbGV4dGVuZGl0ZW06YW55O1xyXG4gIGNhbmNlbGxpbmdJdGVtKCBjYW5jZWxsaW5ndmFsdWU6YW55KXtcclxuICAgIHRoaXMuIGNhbmNlbGxpbmdJc3N1ZSA9ICBjYW5jZWxsaW5ndmFsdWU7XHJcbiAgICB0aGlzLiBjYW5jZWxsaW5nZHJvcERvd24gPSBmYWxzZTtcclxuICB9XHJcbiAgdHJhaWxleHRlbmRJdGVtKCB0cmFpbGV4dGVuZHZhbHVlOmFueSl7XHJcbiAgICB0aGlzLiB0cmFpbGV4dGVuZElzc3VlID0gIHRyYWlsZXh0ZW5kdmFsdWU7XHJcbiAgICB0aGlzLmV4dGVuZHRyYWlsZm9ybS5nZXQoJ3Byb2R1Y3R0eXBlJyk/LnNldFZhbHVlKHRoaXMudHJhaWxleHRlbmRJc3N1ZSlcclxuICAgIHRoaXMuIHRyYWlsZXh0ZW5kZHJvcERvd24gPSBmYWxzZTtcclxuICB9XHJcbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0KCk7XHJcbiBcclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuZGVzdHJveSQubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGFjdGl2ZU1vZGFsOiBOZ2JBY3RpdmVNb2RhbCwgcHJpdmF0ZSBQYXltZW50U3Vic2NyaXB0aW9uU2VydmljZTogUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UsIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLHByaXZhdGUgdG9hc3Q6VG9hc3RTZXJ2aWNlXHJcbiAgKSB7IFxyXG4gICBcclxuICB9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYWlsZXh0ZW5kKHRoaXMuY2xpZW50SWQpO1xyXG4gICAgdGhpcy5leHRlbmR0cmFpbGZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgcHJvZHVjdHR5cGU6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF1cclxuICAgIH0pO1xyXG4gIH1cclxuICBcclxuICB1bnNjdWJzY3JpYmVkKCkgeyBcclxuICAgIGNvbnN0IHJlcXVlc3REYXRhID0ge1xyXG4gICAgICBjbGllbnRJZDogdGhpcy5jbGllbnRJZCxcclxuICAgICAgcmVhc29uOiB0aGlzLmNhbmNlbGxpbmdJc3N1ZSxcclxuICAgICAgZGVzY3JpcHRpb246IHRoaXMuY2FuY2VsbGluZ0Rlc2NyaXB0aW9uXHJcbiAgICAgIFxyXG4gICAgfTtcclxuICAgIHRoaXMuUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UudW5zdWJzY3JpYmUocmVxdWVzdERhdGEpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUgKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkgIFxyXG4gICAgICB7XHJcbiAgICAgICAgdGhpcy5hY3RpdmVNb2RhbC5jbG9zZShyZXF1ZXN0RGF0YSk7XHJcbiAgICAgICAgdGhpcy50b2FzdC5nZXRFcnJvclRvYXN0KHJlcy5tZXNzYWdlKVxyXG4gICAgICB9fSxcclxuICAgICAgKGVycm9yKSA9PiB7XHJcbiAgICAgICAgdGhpcy50b2FzdC5nZXRFcnJvclRvYXN0KGVycm9yLmVycm9yLmVycm9yKVxyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIHN1Ym1pdHRpbmcgdXBkYXRlOicsIGVycm9yKTtcclxuICAgICAgfSlcclxufVxyXG5cclxuICBleHRlbmR0cmFpbCgpIHtcclxuICAgIGxldCBwcm9kdWN0ID0gdGhpcy50cmFpbGV4dGVuZGl0ZW0uZmluZCgoaXRlbTphbnkpPT5pdGVtLm5hbWUgPT0gdGhpcy50cmFpbGV4dGVuZElzc3VlKTsgXHJcbiAgICBjb25zdCByZXF1ZXN0RGF0YSA9IHtcclxuICAgICAgY2xpZW50SWQ6IHRoaXMuY2xpZW50SWQsXHJcbiAgICAgIHByb2R1Y3Q6IHByb2R1Y3QudmFsdWUsXHJcbiAgICB9O1xyXG4gICAgdGhpcy5QYXltZW50U3Vic2NyaXB0aW9uU2VydmljZS50cmFpbGFwcHJvdmFsKHJlcXVlc3REYXRhKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlICgocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PSAyMDApICBcclxuICAgICAge1xyXG4gICAgICAgIHRoaXMuYWN0aXZlTW9kYWwuY2xvc2UocmVxdWVzdERhdGEpO1xyXG4gICAgICAgIHRoaXMudG9hc3QuZ2V0UHJpbWFyeVRvYXN0KFwiWW91IGhhdmUgcmFpc2VkIGEgdGlja2V0IGZvciBleHRlbmRpbmcgdHJhaWwgcmVxdWVzdC5cIilcclxuICAgICAgfX0sXHJcbiAgICAgIChlcnJvcikgPT4ge1xyXG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ0Vycm9yIHN1Ym1pdHRpbmcgdXBkYXRlOicsIGVycm9yKTtcclxuICAgICAgfSlcclxuICAgICAgICBcclxufVxyXG5cclxuICBjYW5jZWxsaW5nRHJvcGRvd24oZXZlbnQ6TW91c2VFdmVudCl7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIHRoaXMuIGNhbmNlbGxpbmdkcm9wRG93biA9ICF0aGlzLiBjYW5jZWxsaW5nZHJvcERvd247XHJcbiAgfVxyXG4gIHRyYWlsZXh0ZW5kRHJvcGRvd24oZXZlbnQ6TW91c2VFdmVudCl7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIHRoaXMuIHRyYWlsZXh0ZW5kZHJvcERvd24gPSAhdGhpcy4gdHJhaWxleHRlbmRkcm9wRG93bjtcclxuICB9XHJcblxyXG4gIHRyYWlsZXh0ZW5kKGlkOmFueSl7XHJcbiAgdGhpcy5QYXltZW50U3Vic2NyaXB0aW9uU2VydmljZS5nZXRleHRlbmR0cmFpbChpZCkucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PSAyMDApIHtcclxuICAgICAgICB0aGlzLnRyYWlsZXh0ZW5kaXRlbSA9IHJlcz8uZGF0YVxyXG4gICAgICAgIHRoaXMudHJhaWxleHRlbmRJc3N1ZSA9IHRoaXMudHJhaWxleHRlbmRpdGVtWzBdLm5hbWU7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH1cclxuICB9KTtcclxuXHJcblxyXG4gIH1cclxufVxyXG5cclxuIiwiPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIiAqbmdJZj1cInN0YXR1cyA9PT0gJ2hlbHAnXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicC02XCI+XHJcbiAgICAgICAgPGRpdj48aW1nIHNyYz1cIi4vYXNzZXRzL3RhbmdvL2N1c3RvbXBvcHVwLUljb25zL25lZWRoZWxwLWljb24uc3ZnXCIgYWx0PVwiXCI+PC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRpbmcgbXQtNCBtcy0xXCI+TmVlZCBIZWxwICE8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHkgbWItNCBcIj5cclxuICAgICAgICA8YSBjbGFzcz1cImJnY29udGVudFwiIChjbGljayk9XCJzdGF0dXMgPSAnZXh0ZW5kJ1wiPlxyXG4gICAgICAgICAgICBOZWVkIHRvIHJhaXNlIGEgdGlja2V0IGZvciBleHRlbmRpbmcgdHJhaWwgcmVxdWVzdCA8c3BhbiBjbGFzcz1cIm1zLTRcIj48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNOSAxOEwxNSAxMkw5IDZcIiBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgIDwvYT5cclxuICAgICAgICA8YSBjbGFzcz1cImJnY29udGVudCBtdC00XCIgKGNsaWNrKT1cInN0YXR1cyA9ICdzdWJzY3JpcHRpb24nXCI+XHJcbiAgICAgICAgICAgIE5lZWQgdG8gcmFpc2UgYSB0aWNrZXQgZm9yIHN1YnNjcmlwdGlvbiBjYW5jZWxsYXRpb24gPHNwYW4gY2xhc3M9XCJtcy00XCI+PHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTkgMThMMTUgMTJMOSA2XCIgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbiAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2E+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+XHJcblxyXG48ZGl2IFtmb3JtR3JvdXBdPVwiZXh0ZW5kdHJhaWxmb3JtXCIgY2xhc3M9XCJtb2RhbC1jb250ZW50XCIgKm5nSWY9XCJzdGF0dXMgPT09ICdleHRlbmQnXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicC02XCI+XHJcbiAgICAgICAgPGRpdj48aW1nIHNyYz1cIi4vYXNzZXRzL3RhbmdvL2N1c3RvbXBvcHVwLUljb25zL3BsdXMtaWNvbi5zdmdcIiBhbHQ9XCJcIj48L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGluZyBtdC00IG1zLTFcIj5FeHRlbmQgVHJpYWw8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48ZGl2IGNsYXNzPVwibW9kYWwtYm9keVwiPlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGZ2LXJvdyBmdi1wbHVnaW5zLWljb24tY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJjb250ZW50dGV4dCBtYi00XCI+VGhlIDE0IGRheXMgdHJpYWwgaGFzIGdvdCBleHBpcmVkLiBZb3UgY2FuIHJlcXVlc3QgZm9yIDxzcGFuIGNsYXNzPVwiY29udGVudHRleHRib2xkXCI+dHJpYWwgZXh0ZW5zaW9uPC9zcGFuPjwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwicHJvZHVjdHR5cGVcIiAgY2xhc3M9XCJoZWFkaW5ndGV4dCBtYi0yXCI+UGljayBhIFByb2R1Y3Q8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBvc2l0aW9uLXJlbGF0aXZlIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLXNlbGVjdCBkcm9wc2VsZWN0IGxldmVsdmlld3RleHRcIiBpZD1cInByb2R1Y3R0eXBlXCIgKGNsaWNrKT1cInRyYWlsZXh0ZW5kRHJvcGRvd24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD1cIkRlZmF1bHQgc2VsZWN0IGV4YW1wbGVcIj57e3RyYWlsZXh0ZW5kSXNzdWV9fTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJ0cmFpbGV4dGVuZGRyb3BEb3duXCIgY2xhc3M9XCJjYXJkIHB5LTIgdy0xMDAgcG9zaXRpb24tYWJzb2x1dGUgZW5kLTAgei0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgKm5nRm9yPVwibGV0IGl0ZW0gb2YgdHJhaWxleHRlbmRpdGVtXCIgY2xhc3M9XCJsaXN0LXVuc3R5bGVkIG1iLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBbbmdDbGFzc109XCJ0aGlzLnRyYWlsZXh0ZW5kSXNzdWUubmFtZSA9PT0gaXRlbS5uYW1lID8gJ2FjdGl2ZScgOiAnJ1wiIGNsYXNzPVwicHJvZHVjdHRleHQgcHgtNSBpdGVtcyBjdXJzb3ItcG9pbnRlciBweS00XCIgKGNsaWNrKT1cInRyYWlsZXh0ZW5kSXRlbShpdGVtLm5hbWUpXCI+e3tpdGVtLm5hbWV9fTwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IG10LTIgcHktMlwiPlxyXG4gICAgICAgIDxidXR0b24gIHR5cGU9XCJzdWJtaXRcIiAgKGNsaWNrKT1cInN0YXR1cyA9ICdoZWxwJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4tb3V0bGluZSBidG4gY2FuY2VsIG1lLTQgdy01MFwiPkNhbmNlbDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJleHRlbmR0cmFpbCgpXCJcclxuICAgICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIjBcIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBweC00IG5nLXN0YXItaW5zZXJ0ZWQgdy01MFwiIHN0eWxlPVwid2hpdGUtc3BhY2U6IG5vd3JhcDtcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzdWJtaXRcIj5FeHRlbmQ8L3NwYW4+PC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbjwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjxkaXYgY2xhc3M9XCJtb2RhbC1jb250ZW50XCIgKm5nSWY9XCJzdGF0dXMgPT09ICdzdWJzY3JpcHRpb24nXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwicC02XCI+XHJcbiAgICAgICAgPGRpdj48aW1nIHNyYz1cIi4vYXNzZXRzL3RhbmdvL2N1c3RvbXBvcHVwLUljb25zL2FsZXJ0LWljb24uc3ZnXCIgYWx0PVwiXCI+PC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRpbmcgbXQtNCBtcy0xXCI+QXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHJhaXNlIHRpY2tldCBmb3Igc3Vic2NyaXB0aW9uIGNhbmNlbGxhdGlvbj88L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48ZGl2IGNsYXNzPVwibW9kYWwtYm9keVwiPlxyXG5cclxuICAgIDxkaXYgY2xhc3M9XCJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGZ2LXJvdyBmdi1wbHVnaW5zLWljb24tY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJoZWFkaW5ndGV4dCBtYi00XCI+UmVhc29uIGZvciBjYW5jZWxsaW5nPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3NpdGlvbi1yZWxhdGl2ZSBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1zZWxlY3QgZHJvcHNlbGVjdCBsZXZlbHZpZXd0ZXh0XCIgaWQ9XCJjdXJyZW5jeVwiIChjbGljayk9XCJjYW5jZWxsaW5nRHJvcGRvd24oJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgYXJpYS1sYWJlbD1cIkRlZmF1bHQgc2VsZWN0IGV4YW1wbGVcIj57e2NhbmNlbGxpbmdJc3N1ZX19PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImNhbmNlbGxpbmdkcm9wRG93blwiIGNsYXNzPVwiY2FyZCBweS0yIHctMTAwIHBvc2l0aW9uLWFic29sdXRlIGVuZC0wIHotMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsICpuZ0Zvcj1cImxldCBjYW5jZWxsaW5naXRlbSBvZiBjYW5jZWxsaW5ndHlwZVwiIGNsYXNzPVwibGlzdC11bnN0eWxlZCBtYi0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgW25nQ2xhc3NdPVwidGhpcy5jYW5jZWxsaW5nSXNzdWUgPT09IGNhbmNlbGxpbmdpdGVtID8gJ2FjdGl2ZScgOiAnJ1wiIGNsYXNzPVwicHJvZHVjdHRleHQgcHgtNSBpdGVtcyBjdXJzb3ItcG9pbnRlciBweS00XCIgKGNsaWNrKT1cImNhbmNlbGxpbmdJdGVtKGNhbmNlbGxpbmdpdGVtKVwiPnt7Y2FuY2VsbGluZ2l0ZW19fTwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8dGV4dGFyZWEgWyhuZ01vZGVsKV09XCJ0aGlzLmNhbmNlbGxpbmdEZXNjcmlwdGlvblwiIHBsYWNlaG9sZGVyPVwiRW50ZXIgYSBkZXNjcmlwdGlvbi4uLlwiIGNsYXNzPVwiIG10LTYgY3VzdG9tLXRleHRhcmVhXCI+PC90ZXh0YXJlYT5cclxuICAgICAgICAgICBcclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBtdC0yIHB5LTJcIj5cclxuICAgICAgICA8YnV0dG9uICB0eXBlPVwic3VibWl0XCIgIChjbGljayk9XCJzdGF0dXMgPSAnaGVscCc7Y2FuY2VsbGluZ0Rlc2NyaXB0aW9uPScnXCJcclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0bi1vdXRsaW5lIGJ0biBjYW5jZWwgbWUtNCB3LTUwXCI+Q2FuY2VsPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInN0YXR1cyA9J3Vuc3Vic2NyaWJlJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgdGFiaW5kZXg9XCIwXCIgY2xhc3M9XCJidG4gYnRuLWRhbmdlciBweC00IG5nLXN0YXItaW5zZXJ0ZWQgdy01MFwiIHN0eWxlPVwid2hpdGUtc3BhY2U6IG5vd3JhcDtcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJzdWJtaXRcIj5SZXF1ZXN0IFVuc3Vic2NyaWJpbmc8L3NwYW4+PC9idXR0b24+XHJcbiAgICAgICAgPC9kaXY+XHJcbjwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjxkaXYgY2xhc3M9XCJtb2RhbC1jb250ZW50XCIgKm5nSWY9XCJzdGF0dXMgPT09ICd1bnN1YnNjcmliZSdcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJwLTZcIj5cclxuICAgICAgICA8ZGl2PjxpbWcgc3JjPVwiLi9hc3NldHMvdGFuZ28vY3VzdG9tcG9wdXAtSWNvbnMvYWxlcnQtaWNvbi5zdmdcIiBhbHQ9XCJcIj48L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGluZyBtdC00IG1zLTFcIj5VbnN1YnNjcmliZWQ8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1zdWIgbXQtNCBtcy0xXCI+QXJlIHlvdSBzdXJlIHlvdSB3YW50IHRoZSB1bnN1YnNjcmliZT88L2Rpdj5cclxuICAgIDwvZGl2PlxyXG48ZGl2IGNsYXNzPVwibW9kYWwtYm9keVwiID5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggbXQtMiBweS0yXCI+XHJcbiAgICAgICAgPGJ1dHRvbiAgdHlwZT1cInN1Ym1pdFwiICAoY2xpY2spPVwic3RhdHVzID0nc3Vic2NyaXB0aW9uJztjYW5jZWxsaW5nRGVzY3JpcHRpb249JydcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuLW91dGxpbmUgYnRuIGNhbmNlbCBtZS00IHctNTBcIj5DYW5jZWw8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwidW5zY3Vic2NyaWJlZCgpXCJcclxuICAgICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIjBcIiBjbGFzcz1cImJ0biBidG4tZGFuZ2VyIHB4LTQgbmctc3Rhci1pbnNlcnRlZCB3LTUwXCIgc3R5bGU9XCJ3aGl0ZS1zcGFjZTogbm93cmFwO1wiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInN1Ym1pdFwiPlllcywgQ29uZmlybTwvc3Bhbj48L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuIl19
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVlZC1oZWxwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLW1hbmFnZS1zZXR0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvcGF5bWVudHMtc3Vic2NyaXB0aW9uL3N1YnNjcmlwdGlvbi1wb3B1cHMvbmVlZC1oZWxwL25lZWQtaGVscC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL25lZWQtaGVscC9uZWVkLWhlbHAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQW9CLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLEVBQTBCLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBS3BFLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7O0FBTTFDLE1BQU0sT0FBTyxpQkFBaUI7SUFnQ25CO0lBQXFDO0lBQWdFO0lBQTBDO0lBQXdCO0lBL0J2SyxRQUFRLENBQVE7SUFDekIsTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUNoQixrQkFBa0IsR0FBVyxLQUFLLENBQUM7SUFDbkMsbUJBQW1CLEdBQVcsS0FBSyxDQUFDO0lBQ3BDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDZCxjQUFjLEdBQVMsQ0FBQyxpQkFBaUIsRUFBRSxlQUFlLEVBQUUsUUFBUSxDQUFFLENBQUM7SUFDdkUscUVBQXFFO0lBQ3JFLGVBQWUsR0FBc0MsRUFBRSxDQUFDO0lBQ3hELGVBQWUsR0FBUSxpQkFBaUIsQ0FBQztJQUN6QyxxQkFBcUIsQ0FBSztJQUMxQix3Q0FBd0M7SUFDeEMsZ0JBQWdC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Q0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO2dCQUNyRCxJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO2FBQ3JDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFHSCxDQUFDO3VHQW5HVSxpQkFBaUI7MkZBQWpCLGlCQUFpQix1RkNaOUIsOHZNQTBHQTs7MkZEOUZhLGlCQUFpQjtrQkFMN0IsU0FBUzsrQkFDRSxlQUFlO2lOQUtoQixRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgT25EZXN0cm95LCBPbkluaXQsSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTmdiQWN0aXZlTW9kYWwgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XHJcbmltcG9ydCBTd2FsIGZyb20gJ3N3ZWV0YWxlcnQyJztcclxuaW1wb3J0IHsgUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy9wYXltZW50LXN1YnNjcmlwdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlIH0gZnJvbSAndGFuZ28tYXBwLXVpLXNoYXJlZCc7XHJcbmltcG9ydCB7IFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1uZWVkLWhlbHAnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9uZWVkLWhlbHAuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9uZWVkLWhlbHAuY29tcG9uZW50LnNjc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBOZWVkSGVscENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCxPbkRlc3Ryb3kge1xyXG4gIEBJbnB1dCgpIGNsaWVudElkOnN0cmluZztcclxuICBzdGF0dXMgPSAnaGVscCc7XHJcbiAgY2FuY2VsbGluZ2Ryb3BEb3duOmJvb2xlYW4gPSBmYWxzZTtcclxuICB0cmFpbGV4dGVuZGRyb3BEb3duOmJvb2xlYW4gPSBmYWxzZTtcclxuICBkYXRhbGlzdCA9IFtdO1xyXG4gIGNhbmNlbGxpbmd0eXBlOmFueVtdID0gWydQcm9kdWN0IENvbmNlcm4nLCAnUHJpY2UgQ29uY2VybicsICdPdGhlcnMnIF07XHJcbiAgLy8gdHJhaWxleHRlbmR0eXBlOiBhbnkgPSBbJ1RhbmdvIFpvbmUnLCAnVGFuZ28gUmV2b3AnLCAnVGFuZ28gU09QJ107XHJcbiAgdHJhaWxleHRlbmR0eXBlOiB7IG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZyB9W10gPSBbXTtcclxuICBjYW5jZWxsaW5nSXNzdWU6IGFueSA9ICdQcm9kdWN0IENvbmNlcm4nO1xyXG4gIGNhbmNlbGxpbmdEZXNjcmlwdGlvbjphbnk7XHJcbiAgLy8gdHJhaWxleHRlbmRJc3N1ZTogYW55ID0gJ1RhbmdvIFpvbmUnO1xyXG4gIHRyYWlsZXh0ZW5kSXNzdWU6IGFueTtcclxuICBleHRlbmR0cmFpbGZvcm06IEZvcm1Hcm91cDtcclxuICB0cmFpbGV4dGVuZGl0ZW06YW55O1xyXG4gIGNhbmNlbGxpbmdJdGVtKCBjYW5jZWxsaW5ndmFsdWU6YW55KXtcclxuICAgIHRoaXMuIGNhbmNlbGxpbmdJc3N1ZSA9ICBjYW5jZWxsaW5ndmFsdWU7XHJcbiAgICB0aGlzLiBjYW5jZWxsaW5nZHJvcERvd24gPSBmYWxzZTtcclxuICB9XHJcbiAgdHJhaWxleHRlbmRJdGVtKCB0cmFpbGV4dGVuZHZhbHVlOmFueSl7XHJcbiAgICB0aGlzLiB0cmFpbGV4dGVuZElzc3VlID0gIHRyYWlsZXh0ZW5kdmFsdWU7XHJcbiAgICB0aGlzLmV4dGVuZHRyYWlsZm9ybS5nZXQoJ3Byb2R1Y3R0eXBlJyk/LnNldFZhbHVlKHRoaXMudHJhaWxleHRlbmRJc3N1ZSlcclxuICAgIHRoaXMuIHRyYWlsZXh0ZW5kZHJvcERvd24gPSBmYWxzZTtcclxuICB9XHJcbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0KCk7XHJcbiBcclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuZGVzdHJveSQubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHVibGljIGFjdGl2ZU1vZGFsOiBOZ2JBY3RpdmVNb2RhbCwgcHJpdmF0ZSBQYXltZW50U3Vic2NyaXB0aW9uU2VydmljZTogUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UsIHByaXZhdGUgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmLHByaXZhdGUgZmI6IEZvcm1CdWlsZGVyLHByaXZhdGUgdG9hc3Q6VG9hc3RTZXJ2aWNlXHJcbiAgKSB7IFxyXG4gICBcclxuICB9XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnRyYWlsZXh0ZW5kKHRoaXMuY2xpZW50SWQpO1xyXG4gICAgdGhpcy5leHRlbmR0cmFpbGZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcclxuICAgICAgcHJvZHVjdHR5cGU6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF1cclxuICAgIH0pO1xyXG4gIH1cclxuICBcclxuICB1bnNjdWJzY3JpYmVkKCkgeyBcclxuICAgIGNvbnN0IHJlcXVlc3REYXRhID0ge1xyXG4gICAgICBjbGllbnRJZDogdGhpcy5jbGllbnRJZCxcclxuICAgICAgcmVhc29uOiB0aGlzLmNhbmNlbGxpbmdJc3N1ZSxcclxuICAgICAgZGVzY3JpcHRpb246IHRoaXMuY2FuY2VsbGluZ0Rlc2NyaXB0aW9uXHJcbiAgICAgIFxyXG4gICAgfTtcclxuICAgIHRoaXMuUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UudW5zdWJzY3JpYmUocmVxdWVzdERhdGEpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUgKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkgIFxyXG4gICAgICB7XHJcbiAgICAgICAgdGhpcy5hY3RpdmVNb2RhbC5jbG9zZShyZXF1ZXN0RGF0YSk7XHJcbiAgICAgICAgdGhpcy50b2FzdC5nZXRQcmltYXJ5VG9hc3QocmVzLm1lc3NhZ2UpXHJcbiAgICAgIH19LFxyXG4gICAgICAoZXJyb3IpID0+IHtcclxuICAgICAgICB0aGlzLnRvYXN0LmdldEVycm9yVG9hc3QoZXJyb3IuZXJyb3IuZXJyb3IpXHJcbiAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3Igc3VibWl0dGluZyB1cGRhdGU6JywgZXJyb3IpO1xyXG4gICAgICB9KVxyXG59XHJcblxyXG4gIGV4dGVuZHRyYWlsKCkge1xyXG4gICAgbGV0IHByb2R1Y3QgPSB0aGlzLnRyYWlsZXh0ZW5kaXRlbS5maW5kKChpdGVtOmFueSk9Pml0ZW0ubmFtZSA9PSB0aGlzLnRyYWlsZXh0ZW5kSXNzdWUpOyBcclxuICAgIGNvbnN0IHJlcXVlc3REYXRhID0ge1xyXG4gICAgICBjbGllbnRJZDogdGhpcy5jbGllbnRJZCxcclxuICAgICAgcHJvZHVjdDogcHJvZHVjdC52YWx1ZSxcclxuICAgIH07XHJcbiAgICB0aGlzLlBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlLnRyYWlsYXBwcm92YWwocmVxdWVzdERhdGEpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUgKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkgIFxyXG4gICAgICB7XHJcbiAgICAgICAgdGhpcy5hY3RpdmVNb2RhbC5jbG9zZShyZXF1ZXN0RGF0YSk7XHJcbiAgICAgICAgdGhpcy50b2FzdC5nZXRQcmltYXJ5VG9hc3QoXCJZb3UgaGF2ZSByYWlzZWQgYSB0aWNrZXQgZm9yIGV4dGVuZGluZyB0cmFpbCByZXF1ZXN0LlwiKVxyXG4gICAgICB9fSxcclxuICAgICAgKGVycm9yKSA9PiB7XHJcbiAgICAgICAgY29uc29sZS5lcnJvcignRXJyb3Igc3VibWl0dGluZyB1cGRhdGU6JywgZXJyb3IpO1xyXG4gICAgICB9KVxyXG4gICAgICAgIFxyXG59XHJcblxyXG4gIGNhbmNlbGxpbmdEcm9wZG93bihldmVudDpNb3VzZUV2ZW50KXtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy4gY2FuY2VsbGluZ2Ryb3BEb3duID0gIXRoaXMuIGNhbmNlbGxpbmdkcm9wRG93bjtcclxuICB9XHJcbiAgdHJhaWxleHRlbmREcm9wZG93bihldmVudDpNb3VzZUV2ZW50KXtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgdGhpcy4gdHJhaWxleHRlbmRkcm9wRG93biA9ICF0aGlzLiB0cmFpbGV4dGVuZGRyb3BEb3duO1xyXG4gIH1cclxuXHJcbiAgdHJhaWxleHRlbmQoaWQ6YW55KXtcclxuICB0aGlzLlBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlLmdldGV4dGVuZHRyYWlsKGlkKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgIHRoaXMudHJhaWxleHRlbmRpdGVtID0gcmVzPy5kYXRhXHJcbiAgICAgICAgdGhpcy50cmFpbGV4dGVuZElzc3VlID0gdGhpcy50cmFpbGV4dGVuZGl0ZW1bMF0ubmFtZTtcclxuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgfVxyXG4gIH0pO1xyXG5cclxuXHJcbiAgfVxyXG59XHJcblxyXG4iLCI8ZGl2IGNsYXNzPVwibW9kYWwtY29udGVudFwiICpuZ0lmPVwic3RhdHVzID09PSAnaGVscCdcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJwLTZcIj5cclxuICAgICAgICA8ZGl2PjxpbWcgc3JjPVwiLi9hc3NldHMvdGFuZ28vY3VzdG9tcG9wdXAtSWNvbnMvbmVlZGhlbHAtaWNvbi5zdmdcIiBhbHQ9XCJcIj48L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGluZyBtdC00IG1zLTFcIj5OZWVkIEhlbHAgITwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwibW9kYWwtYm9keSBtYi00IFwiPlxyXG4gICAgICAgIDxhIGNsYXNzPVwiYmdjb250ZW50XCIgKGNsaWNrKT1cInN0YXR1cyA9ICdleHRlbmQnXCI+XHJcbiAgICAgICAgICAgIE5lZWQgdG8gcmFpc2UgYSB0aWNrZXQgZm9yIGV4dGVuZGluZyB0cmFpbCByZXF1ZXN0IDxzcGFuIGNsYXNzPVwibXMtNFwiPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgPHBhdGggZD1cIk05IDE4TDE1IDEyTDkgNlwiIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxyXG4gICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgIDxhIGNsYXNzPVwiYmdjb250ZW50IG10LTRcIiAoY2xpY2spPVwic3RhdHVzID0gJ3N1YnNjcmlwdGlvbidcIj5cclxuICAgICAgICAgICAgTmVlZCB0byByYWlzZSBhIHRpY2tldCBmb3Igc3Vic2NyaXB0aW9uIGNhbmNlbGxhdGlvbiA8c3BhbiBjbGFzcz1cIm1zLTRcIj48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNOSAxOEwxNSAxMkw5IDZcIiBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgIDwvYT5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjxkaXYgW2Zvcm1Hcm91cF09XCJleHRlbmR0cmFpbGZvcm1cIiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIiAqbmdJZj1cInN0YXR1cyA9PT0gJ2V4dGVuZCdcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJwLTZcIj5cclxuICAgICAgICA8ZGl2PjxpbWcgc3JjPVwiLi9hc3NldHMvdGFuZ28vY3VzdG9tcG9wdXAtSWNvbnMvcGx1cy1pY29uLnN2Z1wiIGFsdD1cIlwiPjwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkaW5nIG10LTQgbXMtMVwiPkV4dGVuZCBUcmlhbDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJtb2RhbC1ib2R5XCI+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cIlwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gZnYtcm93IGZ2LXBsdWdpbnMtaWNvbi1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImNvbnRlbnR0ZXh0IG1iLTRcIj5UaGUgMTQgZGF5cyB0cmlhbCBoYXMgZ290IGV4cGlyZWQuIFlvdSBjYW4gcmVxdWVzdCBmb3IgPHNwYW4gY2xhc3M9XCJjb250ZW50dGV4dGJvbGRcIj50cmlhbCBleHRlbnNpb248L3NwYW4+PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBmb3I9XCJwcm9kdWN0dHlwZVwiICBjbGFzcz1cImhlYWRpbmd0ZXh0IG1iLTJcIj5QaWNrIGEgUHJvZHVjdDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmUgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tc2VsZWN0IGRyb3BzZWxlY3QgbGV2ZWx2aWV3dGV4dFwiIGlkPVwicHJvZHVjdHR5cGVcIiAoY2xpY2spPVwidHJhaWxleHRlbmREcm9wZG93bigkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPVwiRGVmYXVsdCBzZWxlY3QgZXhhbXBsZVwiPnt7dHJhaWxleHRlbmRJc3N1ZX19PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInRyYWlsZXh0ZW5kZHJvcERvd25cIiBjbGFzcz1cImNhcmQgcHktMiB3LTEwMCBwb3NpdGlvbi1hYnNvbHV0ZSBlbmQtMCB6LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCAqbmdGb3I9XCJsZXQgaXRlbSBvZiB0cmFpbGV4dGVuZGl0ZW1cIiBjbGFzcz1cImxpc3QtdW5zdHlsZWQgbWItMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIFtuZ0NsYXNzXT1cInRoaXMudHJhaWxleHRlbmRJc3N1ZS5uYW1lID09PSBpdGVtLm5hbWUgPyAnYWN0aXZlJyA6ICcnXCIgY2xhc3M9XCJwcm9kdWN0dGV4dCBweC01IGl0ZW1zIGN1cnNvci1wb2ludGVyIHB5LTRcIiAoY2xpY2spPVwidHJhaWxleHRlbmRJdGVtKGl0ZW0ubmFtZSlcIj57e2l0ZW0ubmFtZX19PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggbXQtMiBweS0yXCI+XHJcbiAgICAgICAgPGJ1dHRvbiAgdHlwZT1cInN1Ym1pdFwiICAoY2xpY2spPVwic3RhdHVzID0gJ2hlbHAnXCJcclxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0bi1vdXRsaW5lIGJ0biBjYW5jZWwgbWUtNCB3LTUwXCI+Q2FuY2VsPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cImV4dGVuZHRyYWlsKClcIlxyXG4gICAgICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IHB4LTQgbmctc3Rhci1pbnNlcnRlZCB3LTUwXCIgc3R5bGU9XCJ3aGl0ZS1zcGFjZTogbm93cmFwO1wiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInN1Ym1pdFwiPkV4dGVuZDwvc3Bhbj48L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIiAqbmdJZj1cInN0YXR1cyA9PT0gJ3N1YnNjcmlwdGlvbidcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJwLTZcIj5cclxuICAgICAgICA8ZGl2PjxpbWcgc3JjPVwiLi9hc3NldHMvdGFuZ28vY3VzdG9tcG9wdXAtSWNvbnMvYWxlcnQtaWNvbi5zdmdcIiBhbHQ9XCJcIj48L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGluZyBtdC00IG1zLTFcIj5BcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gcmFpc2UgdGlja2V0IGZvciBzdWJzY3JpcHRpb24gY2FuY2VsbGF0aW9uPzwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJtb2RhbC1ib2R5XCI+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cIlwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gZnYtcm93IGZ2LXBsdWdpbnMtaWNvbi1jb250YWluZXJcIj5cclxuICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImhlYWRpbmd0ZXh0IG1iLTRcIj5SZWFzb24gZm9yIGNhbmNlbGxpbmc8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBvc2l0aW9uLXJlbGF0aXZlIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLXNlbGVjdCBkcm9wc2VsZWN0IGxldmVsdmlld3RleHRcIiBpZD1cImN1cnJlbmN5XCIgKGNsaWNrKT1cImNhbmNlbGxpbmdEcm9wZG93bigkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICBhcmlhLWxhYmVsPVwiRGVmYXVsdCBzZWxlY3QgZXhhbXBsZVwiPnt7Y2FuY2VsbGluZ0lzc3VlfX08L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY2FuY2VsbGluZ2Ryb3BEb3duXCIgY2xhc3M9XCJjYXJkIHB5LTIgdy0xMDAgcG9zaXRpb24tYWJzb2x1dGUgZW5kLTAgei0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgKm5nRm9yPVwibGV0IGNhbmNlbGxpbmdpdGVtIG9mIGNhbmNlbGxpbmd0eXBlXCIgY2xhc3M9XCJsaXN0LXVuc3R5bGVkIG1iLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBbbmdDbGFzc109XCJ0aGlzLmNhbmNlbGxpbmdJc3N1ZSA9PT0gY2FuY2VsbGluZ2l0ZW0gPyAnYWN0aXZlJyA6ICcnXCIgY2xhc3M9XCJwcm9kdWN0dGV4dCBweC01IGl0ZW1zIGN1cnNvci1wb2ludGVyIHB5LTRcIiAoY2xpY2spPVwiY2FuY2VsbGluZ0l0ZW0oY2FuY2VsbGluZ2l0ZW0pXCI+e3tjYW5jZWxsaW5naXRlbX19PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDx0ZXh0YXJlYSBbKG5nTW9kZWwpXT1cInRoaXMuY2FuY2VsbGluZ0Rlc2NyaXB0aW9uXCIgcGxhY2Vob2xkZXI9XCJFbnRlciBhIGRlc2NyaXB0aW9uLi4uXCIgY2xhc3M9XCIgbXQtNiBjdXN0b20tdGV4dGFyZWFcIj48L3RleHRhcmVhPlxyXG4gICAgICAgICAgIFxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IG10LTIgcHktMlwiPlxyXG4gICAgICAgIDxidXR0b24gIHR5cGU9XCJzdWJtaXRcIiAgKGNsaWNrKT1cInN0YXR1cyA9ICdoZWxwJztjYW5jZWxsaW5nRGVzY3JpcHRpb249JydcIlxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuLW91dGxpbmUgYnRuIGNhbmNlbCBtZS00IHctNTBcIj5DYW5jZWw8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwic3RhdHVzID0ndW5zdWJzY3JpYmUnXCJcclxuICAgICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIjBcIiBjbGFzcz1cImJ0biBidG4tZGFuZ2VyIHB4LTQgbmctc3Rhci1pbnNlcnRlZCB3LTUwXCIgc3R5bGU9XCJ3aGl0ZS1zcGFjZTogbm93cmFwO1wiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInN1Ym1pdFwiPlJlcXVlc3QgVW5zdWJzY3JpYmluZzwvc3Bhbj48L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuPGRpdiBjbGFzcz1cIm1vZGFsLWNvbnRlbnRcIiAqbmdJZj1cInN0YXR1cyA9PT0gJ3Vuc3Vic2NyaWJlJ1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cInAtNlwiPlxyXG4gICAgICAgIDxkaXY+PGltZyBzcmM9XCIuL2Fzc2V0cy90YW5nby9jdXN0b21wb3B1cC1JY29ucy9hbGVydC1pY29uLnN2Z1wiIGFsdD1cIlwiPjwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkaW5nIG10LTQgbXMtMVwiPlVuc3Vic2NyaWJlZDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LXN1YiBtdC00IG1zLTFcIj5BcmUgeW91IHN1cmUgeW91IHdhbnQgdGhlIHVuc3Vic2NyaWJlPzwvZGl2PlxyXG4gICAgPC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJtb2RhbC1ib2R5XCIgPlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBtdC0yIHB5LTJcIj5cclxuICAgICAgICA8YnV0dG9uICB0eXBlPVwic3VibWl0XCIgIChjbGljayk9XCJzdGF0dXMgPSdzdWJzY3JpcHRpb24nO2NhbmNlbGxpbmdEZXNjcmlwdGlvbj0nJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4tb3V0bGluZSBidG4gY2FuY2VsIG1lLTQgdy01MFwiPkNhbmNlbDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJ1bnNjdWJzY3JpYmVkKClcIlxyXG4gICAgICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiIGNsYXNzPVwiYnRuIGJ0bi1kYW5nZXIgcHgtNCBuZy1zdGFyLWluc2VydGVkIHctNTBcIiBzdHlsZT1cIndoaXRlLXNwYWNlOiBub3dyYXA7XCI+PHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic3VibWl0XCI+WWVzLCBDb25maXJtPC9zcGFuPjwvYnV0dG9uPlxyXG4gICAgICAgIDwvZGl2PlxyXG48L2Rpdj5cclxuPC9kaXY+XHJcblxyXG4iXX0=
@@ -65,7 +65,6 @@ export class SubscriptionApprovalComponent {
65
65
  priceType: this.clientInfo.currentPlanInfo.priceType,
66
66
  subscriptionType: this.clientInfo.currentPlanInfo.subscriptionType,
67
67
  subscriptionPeriod: this.clientInfo.currentPlanInfo.subscriptionPeriod,
68
- storeCount: this.clientInfo.currentPlanInfo.storeCount,
69
68
  totalCamera: this.clientInfo.currentPlanInfo.totalCamera,
70
69
  totalStores: this.clientInfo.currentPlanInfo.totalStores,
71
70
  storeSize: this.clientInfo.currentPlanInfo.storeSize,
@@ -77,7 +76,7 @@ export class SubscriptionApprovalComponent {
77
76
  const modalRef = this.modalService.open(SuccessfullSubscriptionComponent, {
78
77
  centered: true, size: 'md'
79
78
  });
80
- modalRef.componentInstance.products = this.productList.map((item) => item.productName);
79
+ modalRef.componentInstance.products = this.productList.filter((item) => item.type != 'cancel').map((item) => item.productName);
81
80
  }
82
81
  });
83
82
  this.gifVisible = true;
@@ -96,4 +95,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImpor
96
95
  }], clientInfo: [{
97
96
  type: Input
98
97
  }] } });
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaXB0aW9uLWFwcHJvdmFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLW1hbmFnZS1zZXR0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvcGF5bWVudHMtc3Vic2NyaXB0aW9uL3N1YnNjcmlwdGlvbi1wb3B1cHMvc3Vic2NyaXB0aW9uLWFwcHJvdmFsL3N1YnNjcmlwdGlvbi1hcHByb3ZhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL3N1YnNjcmlwdGlvbi1hcHByb3ZhbC9zdWJzY3JpcHRpb24tYXBwcm92YWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQW9CLE1BQU0sZUFBZSxDQUFDO0FBR25FLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLGdFQUFnRSxDQUFDO0FBRWxILE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7O0FBTzFDLE1BQU0sT0FBTyw2QkFBNkI7SUFVcEI7SUFBK0I7SUFBcUM7SUFBNkI7SUFUNUcsUUFBUSxDQUFLO0lBQ2IsVUFBVSxDQUFLO0lBQ3hCLFdBQVcsR0FBTSxFQUFFLENBQUM7SUFDcEIsTUFBTSxHQUFXLGVBQWUsQ0FBQztJQUNqQyxXQUFXLEdBQVcsY0FBYyxDQUFDO0lBQ3JDLGFBQWEsR0FBVyxXQUFXLENBQUM7SUFFcEMsVUFBVSxHQUFZLEtBQUssQ0FBQztJQUNYLFFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO0lBQzFDLFlBQW9CLFlBQXNCLEVBQVMsV0FBMkIsRUFBVSxLQUFtQixFQUFV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QkFDekIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDekIsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsZ0NBQWdDLEVBQUM7b0JBQ3ZFLFFBQVEsRUFBQyxJQUFJLEVBQUMsSUFBSSxFQUFDLElBQUk7aUJBQ3hCLENBQUMsQ0FBQztnQkFDSCxRQUFRLENBQUMsaUJBQWlCLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBUSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDNUY7UUFFSCxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO0lBQ3pCLENBQUM7SUFDRCxhQUFhLENBQUMsS0FBWSxFQUFDLElBQVc7UUFDcEMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ3RDLENBQUM7dUdBeEVVLDZCQUE2QjsyRkFBN0IsNkJBQTZCLDZIQ1oxQyw4b05BeUZNOzsyRkQ3RU8sNkJBQTZCO2tCQUx6QyxTQUFTOytCQUNFLDJCQUEyQjs4S0FLNUIsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0LE9uRGVzdHJveSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOZ2JBY3RpdmVNb2RhbCwgTmdiTW9kYWwgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XHJcbmltcG9ydCB7IFRvYXN0U2VydmljZSB9IGZyb20gJ3RhbmdvLWFwcC11aS1zaGFyZWQnO1xyXG5pbXBvcnQgeyBTdWNjZXNzZnVsbFN1YnNjcmlwdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uL3N1Y2Nlc3NmdWxsLXN1YnNjcmlwdGlvbi9zdWNjZXNzZnVsbC1zdWJzY3JpcHRpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9zZXJ2aWNlcy9wYXltZW50LXN1YnNjcmlwdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1zdWJzY3JpcHRpb24tYXBwcm92YWwnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zdWJzY3JpcHRpb24tYXBwcm92YWwuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9zdWJzY3JpcHRpb24tYXBwcm92YWwuY29tcG9uZW50LnNjc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTdWJzY3JpcHRpb25BcHByb3ZhbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBASW5wdXQoKSBwcm9kdWN0czphbnk7XHJcbiAgQElucHV0KCkgY2xpZW50SW5mbzphbnk7XHJcbiAgcHJvZHVjdExpc3Q6YW55ID1bXTtcclxuICBzZWxlY3Q6IHN0cmluZyA9ICdjb250aW51ZXRyYWlsJzsgXHJcbiAgdHJhaWxzZWxlY3Q6IHN0cmluZyA9ICdzdWJzY3JpYmVub3cnO1xyXG4gIHN1cHBvcnRzZWxlY3Q6IHN0cmluZyA9ICdkYXlzdHJhaWwnO1xyXG5cclxuICBnaWZWaXNpYmxlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBtb2RhbFNlcnZpY2U6IE5nYk1vZGFsLCBwdWJsaWMgYWN0aXZlTW9kZWw6IE5nYkFjdGl2ZU1vZGFsLCBwcml2YXRlIHRvYXN0OiBUb2FzdFNlcnZpY2UsIHByaXZhdGUgUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2U6IFBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlKXtcclxuICB9XHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnByb2R1Y3RzLmZvckVhY2goKGl0ZW06YW55KSA9PiB7XHJcbiAgICAgIGlmICh0eXBlb2YgaXRlbS50b29sVGlwICE9ICd1bmRlZmluZWQnICYmIGl0ZW0/LnRvb2xUaXAgPT0gJ09uIFRyaWFsJyAmJiBpdGVtLmFjdGl2ZSkge1xyXG4gICAgICAgIHRoaXMucHJvZHVjdExpc3QucHVzaCh7XHJcbiAgICAgICAgICBuYW1lOml0ZW0ucHJvZHVjdE5hbWUsXHJcbiAgICAgICAgICBwcm9kdWN0TmFtZTogaXRlbS5hbGlzZVByb2R1Y3ROYW1lLFxyXG4gICAgICAgICAgdHlwZTondHJpYWwnLFxyXG4gICAgICAgICAgY29udGVudDogJ3RyaWFsJ1xyXG4gICAgICAgIH0pXHJcbiAgICAgIH1cclxuICAgICAgaWYgKHR5cGVvZiBpdGVtLnRvb2xUaXAgIT0gJ3VuZGVmaW5lZCcgJiYgaXRlbT8udG9vbFRpcCA9PSAnVHJpYWwgRXhwaXJlZCcgJiYgaXRlbS5hY3RpdmUpIHtcclxuICAgICAgICB0aGlzLnByb2R1Y3RMaXN0LnB1c2goe1xyXG4gICAgICAgICAgbmFtZTppdGVtLnByb2R1Y3ROYW1lLFxyXG4gICAgICAgICAgcHJvZHVjdE5hbWU6IGl0ZW0uYWxpc2VQcm9kdWN0TmFtZSxcclxuICAgICAgICAgIHR5cGU6J3RyaWFsJyxcclxuICAgICAgICAgIGNvbnRlbnQ6ICd0cmlhbEV4cGlyZWQnXHJcbiAgICAgICAgfSlcclxuICAgICAgfVxyXG4gICAgICBpZighaXRlbT8udG9vbFRpcCAmJiBpdGVtLmFjdGl2ZSkge1xyXG4gICAgICAgIHRoaXMucHJvZHVjdExpc3QucHVzaCh7XHJcbiAgICAgICAgICBuYW1lOml0ZW0ucHJvZHVjdE5hbWUsXHJcbiAgICAgICAgICBwcm9kdWN0TmFtZTogaXRlbS5hbGlzZVByb2R1Y3ROYW1lLFxyXG4gICAgICAgICAgdHlwZTonc3RhcnRUcmlhbCcsXHJcbiAgICAgICAgICBjb250ZW50OiAnbmV3J1xyXG4gICAgICAgIH0pXHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XHJcbiAgfVxyXG4gIHN1c2NyaWJlZCgpe1xyXG4gICAgbGV0IGRhdGEgPSB7XHJcbiAgICAgIGNsaWVudElkOiB0aGlzLmNsaWVudEluZm8uY2xpZW50SWQsXHJcbiAgICAgIHByaWNlOiB0aGlzLmNsaWVudEluZm8uY3VycmVudFBsYW5JbmZvLnByaWNlLFxyXG4gICAgICBwcmljZVR5cGU6IHRoaXMuY2xpZW50SW5mby5jdXJyZW50UGxhbkluZm8ucHJpY2VUeXBlLFxyXG4gICAgICBzdWJzY3JpcHRpb25UeXBlOiB0aGlzLmNsaWVudEluZm8uY3VycmVudFBsYW5JbmZvLnN1YnNjcmlwdGlvblR5cGUsXHJcbiAgICAgIHN1YnNjcmlwdGlvblBlcmlvZDogdGhpcy5jbGllbnRJbmZvLmN1cnJlbnRQbGFuSW5mby5zdWJzY3JpcHRpb25QZXJpb2QsXHJcbiAgICAgIHN0b3JlQ291bnQ6IHRoaXMuY2xpZW50SW5mby5jdXJyZW50UGxhbkluZm8uc3RvcmVDb3VudCxcclxuICAgICAgdG90YWxDYW1lcmE6IHRoaXMuY2xpZW50SW5mby5jdXJyZW50UGxhbkluZm8udG90YWxDYW1lcmEsXHJcbiAgICAgIHRvdGFsU3RvcmVzOiB0aGlzLmNsaWVudEluZm8uY3VycmVudFBsYW5JbmZvLnRvdGFsU3RvcmVzLFxyXG4gICAgICBzdG9yZVNpemU6IHRoaXMuY2xpZW50SW5mby5jdXJyZW50UGxhbkluZm8uc3RvcmVTaXplLFxyXG4gICAgICBwcm9kdWN0czp0aGlzLnByb2R1Y3RMaXN0XHJcbiAgICB9XHJcbiAgICB0aGlzLlBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlLnVwZGF0ZVN1YnNjcmlwdGlvbihkYXRhKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZihyZXMgJiYgcmVzLmNvZGUgPT0gMjAwKSB7XHJcbiAgICAgICAgdGhpcy5hY3RpdmVNb2RlbC5jbG9zZSgpO1xyXG4gICAgICAgIGNvbnN0IG1vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uub3BlbihTdWNjZXNzZnVsbFN1YnNjcmlwdGlvbkNvbXBvbmVudCx7XHJcbiAgICAgICAgICBjZW50ZXJlZDp0cnVlLHNpemU6J21kJ1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIG1vZGFsUmVmLmNvbXBvbmVudEluc3RhbmNlLnByb2R1Y3RzID0gdGhpcy5wcm9kdWN0TGlzdC5tYXAoKGl0ZW06YW55KSA9PiBpdGVtLnByb2R1Y3ROYW1lKTtcclxuICAgICAgfVxyXG5cclxuICAgIH0pO1xyXG4gICAgdGhpcy5naWZWaXNpYmxlID0gdHJ1ZTtcclxuICB9XHJcbiAgdXBkYXRlUHJvZHVjdChpbmRleDpudW1iZXIsdHlwZTpzdHJpbmcpIHtcclxuICAgIHRoaXMucHJvZHVjdExpc3RbaW5kZXhdLnR5cGUgPSB0eXBlO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwibW9kYWwtY29udGVudFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInAtNlwiPlxyXG4gICAgICAgIDxkaXY+PGltZyBzcmM9XCIuL2Fzc2V0cy90YW5nby9jdXN0b21wb3B1cC1JY29ucy9zZXR0aW5ncy1pY29uLnN2Z1wiIGFsdD1cIlwiPjwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkaW5nIG10LTQgbXMtMVwiPkNvbmZpcm1hdGlvbjwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb250ZW50dGV4dCBtdC00IG1zLTFcIj5cclxuICAgICAgICAgICAgUGxlYXNlIHVwZGF0ZSB0aGUgc3RhdHVzIG9mIGJlbG93IHByb2R1Y3RcclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHlcIj5cclxuICAgICAgICAgICAgPCEtLWJlZ2luOjpGb3JtLS0+XHJcbiAgICAgICAgICAgIDxmb3JtIGlkPVwia3RfbW9kYWxfbmV3X2NhcmRfZm9ybVwiIGNsYXNzPVwiZm9ybSBmdi1wbHVnaW5zLWJvb3RzdHJhcDUgZnYtcGx1Z2lucy1mcmFtZXdvcmtcIiBhY3Rpb249XCIjXCI+XHJcbiAgICBcclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmdi1yb3cgZnYtcGx1Z2lucy1pY29uLWNvbnRhaW5lciBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29uZmlybWF0aW9uYm9yZGVyIG1iLTNcIiAqbmdGb3I9XCJsZXQgcHJvZHVjdCBvZiBwcm9kdWN0TGlzdDtsZXQgaT1pbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiVGFuZ29ab25lXCIgY2xhc3M9XCIgcHJvZHVjdHRleHQgbWItMlwiPnt7cHJvZHVjdC5wcm9kdWN0TmFtZX19PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtcHJpbWFyeSBtcy0yXCIgKm5nSWY9XCJwcm9kdWN0LmNvbnRlbnQgPT09ICd0cmlhbCdcIj5PbiBUcmFpbFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJtcy0yXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vY3VzdG9tcG9wdXAtSWNvbnMvcHJpbWFyeS1jbG9jay1pY29uLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC13YXJuaW5nIG1zLTJcIiAqbmdJZj1cInByb2R1Y3QuY29udGVudCA9PT0gJ3RyaWFsRXhwaXJlZCdcIj5UcmFpbCBFeHBpcmVkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cIm1zLTJcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9jdXN0b21wb3B1cC1JY29ucy93YXJuaW5nLWNsb2NrLWljb24uc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBwdC0xXCIgKm5nSWY9XCJwcm9kdWN0LmNvbnRlbnQgPT09ICd0cmlhbCdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIGZvcm0tY2hlY2staW5saW5lIHBzLTBcIiAoY2xpY2spPVwidXBkYXRlUHJvZHVjdChpLCd0cmlhbCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0ICBjbGFzcz1cIiBjdXJzb3ItcG9pbnRlciByYWRpby1jdXN0b21cIiB0eXBlPVwicmFkaW9cIiBuYW1lPVwib250cmFpbFJhZGlvT3B0aW9uc197e2l9fVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiaW5saW5lUmFkaW8xXCIgdmFsdWU9XCJjb250aW51ZXRyYWlsXCIgY2hlY2tlZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsIHJhZGlvLWN1c3RvbS1sYWJlbCBteC0zIHByb2R1Y3R0ZXh0IGN1cnNvci1wb2ludGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yPVwiaW5saW5lUmFkaW8xXCI+Q29udGludWUgd2l0aCBUcmFpbDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48YnI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jaGVjayBmb3JtLWNoZWNrLWlubGluZSBwcy0wXCIgKGNsaWNrKT1cInVwZGF0ZVByb2R1Y3QoaSwnc3Vic2NyaXB0aW9uJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCIgY3Vyc29yLXBvaW50ZXIgcmFkaW8tY3VzdG9tXCIgdHlwZT1cInJhZGlvXCIgbmFtZT1cIm9udHJhaWxSYWRpb09wdGlvbnNfe3tpfX1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cImlubGluZVJhZGlvMVwiIHZhbHVlPVwiYWRkc3Vic2NyaXB0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbCBwcm9kdWN0dGV4dCByYWRpby1jdXN0b20tbGFiZWwgbXgtMyBjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcj1cImlubGluZVJhZGlvMVwiPkFkZCB0byBTdWJzY3JpcHRpb248L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIHB0LTFcIiAqbmdJZj1cInByb2R1Y3QuY29udGVudCA9PT0gJ3RyaWFsRXhwaXJlZCdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIGZvcm0tY2hlY2staW5saW5lIHBzLTBcIiAoY2xpY2spPVwidXBkYXRlUHJvZHVjdChpLCdzdWJzY3JpcHRpb24nKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cIiBjdXJzb3ItcG9pbnRlciByYWRpby1jdXN0b21cIiB0eXBlPVwicmFkaW9cIiBuYW1lPVwiVHJhaWxFeHBpcmVkUmFkaW9PcHRpb25zX3t7aX19XCIgaWQ9XCJpbmxpbmVSYWRpbzFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT1cInN1YnNjcmliZW5vd1wiIGNoZWNrZWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbCByYWRpby1jdXN0b20tbGFiZWwgbXgtMyBwcm9kdWN0dGV4dCBjdXJzb3ItcG9pbnRlclwiIGZvcj1cImlubGluZVJhZGlvMVwiPlN1YnNjcmliZSBOb3c8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PGJyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgZm9ybS1jaGVjay1pbmxpbmUgcHMtMFwiIChjbGljayk9XCJ1cGRhdGVQcm9kdWN0KGksJ2NhbmNlbCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiIGN1cnNvci1wb2ludGVyIHJhZGlvLWN1c3RvbVwiIHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJUcmFpbEV4cGlyZWRSYWRpb09wdGlvbnNfe3tpfX1cIiBpZD1cImlubGluZVJhZGlvMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPVwiZG9sYXRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwgcHJvZHVjdHRleHQgcmFkaW8tY3VzdG9tLWxhYmVsIG14LTMgY3Vyc29yLXBvaW50ZXJcIiBmb3I9XCJpbmxpbmVSYWRpbzFcIj5JJ2xsIGRvIGl0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGF0ZXI8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIHB0LTFcIiAqbmdJZj1cInByb2R1Y3QuY29udGVudCA9PT0gJ25ldydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIGZvcm0tY2hlY2staW5saW5lIHBzLTBcIiAoY2xpY2spPVwidXBkYXRlUHJvZHVjdChpLCd0cmlhbCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiIGN1cnNvci1wb2ludGVyIHJhZGlvLWN1c3RvbVwiIHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJzdXBwb3J0UmFkaW9PcHRpb25zX3t7aX19XCIgaWQ9XCJpbmxpbmVSYWRpbzFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT1cImRheXN0cmFpbFwiIGNoZWNrZWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbCByYWRpby1jdXN0b20tbGFiZWwgbXgtMyBwcm9kdWN0dGV4dCBjdXJzb3ItcG9pbnRlclwiIGZvcj1cImlubGluZVJhZGlvMVwiPlN0YXJ0IDE0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRheXMgVHJpYWw8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PGJyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgZm9ybS1jaGVjay1pbmxpbmUgcHMtMFwiIChjbGljayk9XCJ1cGRhdGVQcm9kdWN0KGksJ3N1YnNjcmlwdGlvbicpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiIGN1cnNvci1wb2ludGVyIHJhZGlvLWN1c3RvbVwiIHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJzdXBwb3J0UmFkaW9PcHRpb25zX3t7aX19XCIgaWQ9XCJpbmxpbmVSYWRpbzFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT1cInN1YnNjcmliZW5vd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwgcHJvZHVjdHRleHQgcmFkaW8tY3VzdG9tLWxhYmVsIG14LTMgY3Vyc29yLXBvaW50ZXJcIiBmb3I9XCJpbmxpbmVSYWRpbzFcIj5TdWJzY3JpYmVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTm93PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pjxicj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIGZvcm0tY2hlY2staW5saW5lIHBzLTBcIiAoY2xpY2spPVwidXBkYXRlUHJvZHVjdChpLCdjYW5jZWwnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cIiBjdXJzb3ItcG9pbnRlciByYWRpby1jdXN0b21cIiB0eXBlPVwicmFkaW9cIiBuYW1lPVwic3VwcG9ydFJhZGlvT3B0aW9uc197e2l9fVwiIGlkPVwiaW5saW5lUmFkaW8xXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9XCJsYXRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwgcHJvZHVjdHRleHQgcmFkaW8tY3VzdG9tLWxhYmVsIG14LTMgY3Vyc29yLXBvaW50ZXJcIiBmb3I9XCJpbmxpbmVSYWRpbzFcIj5JJ2xsIGRvIGl0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhdGVyPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBtdC05IG15LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgY2xhc3M9XCJidG4tb3V0bGluZSBidG4gY2FuY2VsIG1lLTQgdy01MFwiIChjbGljayk9XCJhY3RpdmVNb2RlbC5jbG9zZSgpXCI+Q2FuY2VsPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJzdXNjcmliZWQoKVwiIHRhYmluZGV4PVwiMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBweC00IG5nLXN0YXItaW5zZXJ0ZWQgdy01MFwiIHN0eWxlPVwid2hpdGUtc3BhY2U6IG5vd3JhcDtcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic3VibWl0XCI+U3VibWl0PC9zcGFuPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICBcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPCEtLWVuZDo6QWN0aW9ucy0tPlxyXG4gICAgICAgICAgICA8L2Zvcm0+XHJcbiAgICAgICAgICAgIDwhLS1lbmQ6OkZvcm0tLT5cclxuICAgICAgXHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vic2NyaXB0aW9uLWFwcHJvdmFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLW1hbmFnZS1zZXR0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvcGF5bWVudHMtc3Vic2NyaXB0aW9uL3N1YnNjcmlwdGlvbi1wb3B1cHMvc3Vic2NyaXB0aW9uLWFwcHJvdmFsL3N1YnNjcmlwdGlvbi1hcHByb3ZhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL3N1YnNjcmlwdGlvbi1hcHByb3ZhbC9zdWJzY3JpcHRpb24tYXBwcm92YWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQW9CLE1BQU0sZUFBZSxDQUFDO0FBR25FLE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLGdFQUFnRSxDQUFDO0FBRWxILE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7O0FBTzFDLE1BQU0sT0FBTyw2QkFBNkI7SUFVcEI7SUFBK0I7SUFBcUM7SUFBNkI7SUFUNUcsUUFBUSxDQUFLO0lBQ2IsVUFBVSxDQUFLO0lBQ3hCLFdBQVcsR0FBTSxFQUFFLENBQUM7SUFDcEIsTUFBTSxHQUFXLGVBQWUsQ0FBQztJQUNqQyxXQUFXLEdBQVcsY0FBYyxDQUFDO0lBQ3JDLGFBQWEsR0FBVyxXQUFXLENBQUM7SUFFcEMsVUFBVSxHQUFZLEtBQUssQ0FBQztJQUNYLFFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO0lBQzFDLFlBQW9CLFlBQXNCLEVBQVMsV0FBMkIsRUFBVSxLQUFtQixFQUFV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TSxRQUFRLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsZ0NBQWdDLEVBQUM7b0JBQ3ZFLFFBQVEsRUFBQyxJQUFJLEVBQUMsSUFBSSxFQUFDLElBQUk7aUJBQ3hCLENBQUMsQ0FBQztnQkFDSCxRQUFRLENBQUMsaUJBQWlCLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBUSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQVEsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2FBQ3hJO1FBRUgsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztJQUN6QixDQUFDO0lBQ0QsYUFBYSxDQUFDLEtBQVksRUFBQyxJQUFXO1FBQ3BDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUN0QyxDQUFDO3VHQXhFVSw2QkFBNkI7MkZBQTdCLDZCQUE2Qiw2SENaMUMsOG9OQXlGTTs7MkZEN0VPLDZCQUE2QjtrQkFMekMsU0FBUzsrQkFDRSwyQkFBMkI7OEtBSzVCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCxPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTmdiQWN0aXZlTW9kYWwsIE5nYk1vZGFsIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xyXG5pbXBvcnQgeyBUb2FzdFNlcnZpY2UgfSBmcm9tICd0YW5nby1hcHAtdWktc2hhcmVkJztcclxuaW1wb3J0IHsgU3VjY2Vzc2Z1bGxTdWJzY3JpcHRpb25Db21wb25lbnQgfSBmcm9tICcuLi9zdWNjZXNzZnVsbC1zdWJzY3JpcHRpb24vc3VjY2Vzc2Z1bGwtc3Vic2NyaXB0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZXMvcGF5bWVudC1zdWJzY3JpcHRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IFN1YmplY3QsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItc3Vic2NyaXB0aW9uLWFwcHJvdmFsJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vc3Vic2NyaXB0aW9uLWFwcHJvdmFsLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vc3Vic2NyaXB0aW9uLWFwcHJvdmFsLmNvbXBvbmVudC5zY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU3Vic2NyaXB0aW9uQXBwcm92YWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQElucHV0KCkgcHJvZHVjdHM6YW55O1xyXG4gIEBJbnB1dCgpIGNsaWVudEluZm86YW55O1xyXG4gIHByb2R1Y3RMaXN0OmFueSA9W107XHJcbiAgc2VsZWN0OiBzdHJpbmcgPSAnY29udGludWV0cmFpbCc7IFxyXG4gIHRyYWlsc2VsZWN0OiBzdHJpbmcgPSAnc3Vic2NyaWJlbm93JztcclxuICBzdXBwb3J0c2VsZWN0OiBzdHJpbmcgPSAnZGF5c3RyYWlsJztcclxuXHJcbiAgZ2lmVmlzaWJsZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQgPSBuZXcgU3ViamVjdCgpO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgbW9kYWxTZXJ2aWNlOiBOZ2JNb2RhbCwgcHVibGljIGFjdGl2ZU1vZGVsOiBOZ2JBY3RpdmVNb2RhbCwgcHJpdmF0ZSB0b2FzdDogVG9hc3RTZXJ2aWNlLCBwcml2YXRlIFBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlOiBQYXltZW50U3Vic2NyaXB0aW9uU2VydmljZSl7XHJcbiAgfVxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5wcm9kdWN0cy5mb3JFYWNoKChpdGVtOmFueSkgPT4ge1xyXG4gICAgICBpZiAodHlwZW9mIGl0ZW0udG9vbFRpcCAhPSAndW5kZWZpbmVkJyAmJiBpdGVtPy50b29sVGlwID09ICdPbiBUcmlhbCcgJiYgaXRlbS5hY3RpdmUpIHtcclxuICAgICAgICB0aGlzLnByb2R1Y3RMaXN0LnB1c2goe1xyXG4gICAgICAgICAgbmFtZTppdGVtLnByb2R1Y3ROYW1lLFxyXG4gICAgICAgICAgcHJvZHVjdE5hbWU6IGl0ZW0uYWxpc2VQcm9kdWN0TmFtZSxcclxuICAgICAgICAgIHR5cGU6J3RyaWFsJyxcclxuICAgICAgICAgIGNvbnRlbnQ6ICd0cmlhbCdcclxuICAgICAgICB9KVxyXG4gICAgICB9XHJcbiAgICAgIGlmICh0eXBlb2YgaXRlbS50b29sVGlwICE9ICd1bmRlZmluZWQnICYmIGl0ZW0/LnRvb2xUaXAgPT0gJ1RyaWFsIEV4cGlyZWQnICYmIGl0ZW0uYWN0aXZlKSB7XHJcbiAgICAgICAgdGhpcy5wcm9kdWN0TGlzdC5wdXNoKHtcclxuICAgICAgICAgIG5hbWU6aXRlbS5wcm9kdWN0TmFtZSxcclxuICAgICAgICAgIHByb2R1Y3ROYW1lOiBpdGVtLmFsaXNlUHJvZHVjdE5hbWUsXHJcbiAgICAgICAgICB0eXBlOid0cmlhbCcsXHJcbiAgICAgICAgICBjb250ZW50OiAndHJpYWxFeHBpcmVkJ1xyXG4gICAgICAgIH0pXHJcbiAgICAgIH1cclxuICAgICAgaWYoIWl0ZW0/LnRvb2xUaXAgJiYgaXRlbS5hY3RpdmUpIHtcclxuICAgICAgICB0aGlzLnByb2R1Y3RMaXN0LnB1c2goe1xyXG4gICAgICAgICAgbmFtZTppdGVtLnByb2R1Y3ROYW1lLFxyXG4gICAgICAgICAgcHJvZHVjdE5hbWU6IGl0ZW0uYWxpc2VQcm9kdWN0TmFtZSxcclxuICAgICAgICAgIHR5cGU6J3N0YXJ0VHJpYWwnLFxyXG4gICAgICAgICAgY29udGVudDogJ25ldydcclxuICAgICAgICB9KVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIFxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XHJcbiAgfVxyXG4gIHN1c2NyaWJlZCgpe1xyXG4gICAgbGV0IGRhdGEgPSB7XHJcbiAgICAgIGNsaWVudElkOiB0aGlzLmNsaWVudEluZm8uY2xpZW50SWQsXHJcbiAgICAgIHByaWNlOiB0aGlzLmNsaWVudEluZm8uY3VycmVudFBsYW5JbmZvLnByaWNlLFxyXG4gICAgICBwcmljZVR5cGU6IHRoaXMuY2xpZW50SW5mby5jdXJyZW50UGxhbkluZm8ucHJpY2VUeXBlLFxyXG4gICAgICBzdWJzY3JpcHRpb25UeXBlOiB0aGlzLmNsaWVudEluZm8uY3VycmVudFBsYW5JbmZvLnN1YnNjcmlwdGlvblR5cGUsXHJcbiAgICAgIHN1YnNjcmlwdGlvblBlcmlvZDogdGhpcy5jbGllbnRJbmZvLmN1cnJlbnRQbGFuSW5mby5zdWJzY3JpcHRpb25QZXJpb2QsXHJcbiAgICAgIHRvdGFsQ2FtZXJhOiB0aGlzLmNsaWVudEluZm8uY3VycmVudFBsYW5JbmZvLnRvdGFsQ2FtZXJhLFxyXG4gICAgICB0b3RhbFN0b3JlczogdGhpcy5jbGllbnRJbmZvLmN1cnJlbnRQbGFuSW5mby50b3RhbFN0b3JlcyxcclxuICAgICAgc3RvcmVTaXplOiB0aGlzLmNsaWVudEluZm8uY3VycmVudFBsYW5JbmZvLnN0b3JlU2l6ZSxcclxuICAgICAgcHJvZHVjdHM6dGhpcy5wcm9kdWN0TGlzdFxyXG4gICAgfVxyXG4gICAgdGhpcy5QYXltZW50U3Vic2NyaXB0aW9uU2VydmljZS51cGRhdGVTdWJzY3JpcHRpb24oZGF0YSkucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgIHRoaXMuYWN0aXZlTW9kZWwuY2xvc2UoKTtcclxuICAgICAgICBjb25zdCBtb2RhbFJlZiA9IHRoaXMubW9kYWxTZXJ2aWNlLm9wZW4oU3VjY2Vzc2Z1bGxTdWJzY3JpcHRpb25Db21wb25lbnQse1xyXG4gICAgICAgICAgY2VudGVyZWQ6dHJ1ZSxzaXplOidtZCdcclxuICAgICAgICB9KTtcclxuICAgICAgICBtb2RhbFJlZi5jb21wb25lbnRJbnN0YW5jZS5wcm9kdWN0cyA9IHRoaXMucHJvZHVjdExpc3QuZmlsdGVyKChpdGVtOmFueSkgPT4gaXRlbS50eXBlICE9ICdjYW5jZWwnKS5tYXAoKGl0ZW06YW55KSA9PiBpdGVtLnByb2R1Y3ROYW1lKTtcclxuICAgICAgfVxyXG5cclxuICAgIH0pO1xyXG4gICAgdGhpcy5naWZWaXNpYmxlID0gdHJ1ZTtcclxuICB9XHJcbiAgdXBkYXRlUHJvZHVjdChpbmRleDpudW1iZXIsdHlwZTpzdHJpbmcpIHtcclxuICAgIHRoaXMucHJvZHVjdExpc3RbaW5kZXhdLnR5cGUgPSB0eXBlO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwibW9kYWwtY29udGVudFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cInAtNlwiPlxyXG4gICAgICAgIDxkaXY+PGltZyBzcmM9XCIuL2Fzc2V0cy90YW5nby9jdXN0b21wb3B1cC1JY29ucy9zZXR0aW5ncy1pY29uLnN2Z1wiIGFsdD1cIlwiPjwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkaW5nIG10LTQgbXMtMVwiPkNvbmZpcm1hdGlvbjwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb250ZW50dGV4dCBtdC00IG1zLTFcIj5cclxuICAgICAgICAgICAgUGxlYXNlIHVwZGF0ZSB0aGUgc3RhdHVzIG9mIGJlbG93IHByb2R1Y3RcclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHlcIj5cclxuICAgICAgICAgICAgPCEtLWJlZ2luOjpGb3JtLS0+XHJcbiAgICAgICAgICAgIDxmb3JtIGlkPVwia3RfbW9kYWxfbmV3X2NhcmRfZm9ybVwiIGNsYXNzPVwiZm9ybSBmdi1wbHVnaW5zLWJvb3RzdHJhcDUgZnYtcGx1Z2lucy1mcmFtZXdvcmtcIiBhY3Rpb249XCIjXCI+XHJcbiAgICBcclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmdi1yb3cgZnYtcGx1Z2lucy1pY29uLWNvbnRhaW5lciBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29uZmlybWF0aW9uYm9yZGVyIG1iLTNcIiAqbmdGb3I9XCJsZXQgcHJvZHVjdCBvZiBwcm9kdWN0TGlzdDtsZXQgaT1pbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgZm9yPVwiVGFuZ29ab25lXCIgY2xhc3M9XCIgcHJvZHVjdHRleHQgbWItMlwiPnt7cHJvZHVjdC5wcm9kdWN0TmFtZX19PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtcHJpbWFyeSBtcy0yXCIgKm5nSWY9XCJwcm9kdWN0LmNvbnRlbnQgPT09ICd0cmlhbCdcIj5PbiBUcmFpbFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJtcy0yXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vY3VzdG9tcG9wdXAtSWNvbnMvcHJpbWFyeS1jbG9jay1pY29uLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC13YXJuaW5nIG1zLTJcIiAqbmdJZj1cInByb2R1Y3QuY29udGVudCA9PT0gJ3RyaWFsRXhwaXJlZCdcIj5UcmFpbCBFeHBpcmVkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cIm1zLTJcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9jdXN0b21wb3B1cC1JY29ucy93YXJuaW5nLWNsb2NrLWljb24uc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1ncm91cCBwdC0xXCIgKm5nSWY9XCJwcm9kdWN0LmNvbnRlbnQgPT09ICd0cmlhbCdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIGZvcm0tY2hlY2staW5saW5lIHBzLTBcIiAoY2xpY2spPVwidXBkYXRlUHJvZHVjdChpLCd0cmlhbCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0ICBjbGFzcz1cIiBjdXJzb3ItcG9pbnRlciByYWRpby1jdXN0b21cIiB0eXBlPVwicmFkaW9cIiBuYW1lPVwib250cmFpbFJhZGlvT3B0aW9uc197e2l9fVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiaW5saW5lUmFkaW8xXCIgdmFsdWU9XCJjb250aW51ZXRyYWlsXCIgY2hlY2tlZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmb3JtLWNoZWNrLWxhYmVsIHJhZGlvLWN1c3RvbS1sYWJlbCBteC0zIHByb2R1Y3R0ZXh0IGN1cnNvci1wb2ludGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yPVwiaW5saW5lUmFkaW8xXCI+Q29udGludWUgd2l0aCBUcmFpbDwvbGFiZWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj48YnI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZm9ybS1jaGVjayBmb3JtLWNoZWNrLWlubGluZSBwcy0wXCIgKGNsaWNrKT1cInVwZGF0ZVByb2R1Y3QoaSwnc3Vic2NyaXB0aW9uJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgY2xhc3M9XCIgY3Vyc29yLXBvaW50ZXIgcmFkaW8tY3VzdG9tXCIgdHlwZT1cInJhZGlvXCIgbmFtZT1cIm9udHJhaWxSYWRpb09wdGlvbnNfe3tpfX1cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cImlubGluZVJhZGlvMVwiIHZhbHVlPVwiYWRkc3Vic2NyaXB0aW9uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbCBwcm9kdWN0dGV4dCByYWRpby1jdXN0b20tbGFiZWwgbXgtMyBjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcj1cImlubGluZVJhZGlvMVwiPkFkZCB0byBTdWJzY3JpcHRpb248L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIHB0LTFcIiAqbmdJZj1cInByb2R1Y3QuY29udGVudCA9PT0gJ3RyaWFsRXhwaXJlZCdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIGZvcm0tY2hlY2staW5saW5lIHBzLTBcIiAoY2xpY2spPVwidXBkYXRlUHJvZHVjdChpLCdzdWJzY3JpcHRpb24nKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cIiBjdXJzb3ItcG9pbnRlciByYWRpby1jdXN0b21cIiB0eXBlPVwicmFkaW9cIiBuYW1lPVwiVHJhaWxFeHBpcmVkUmFkaW9PcHRpb25zX3t7aX19XCIgaWQ9XCJpbmxpbmVSYWRpbzFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT1cInN1YnNjcmliZW5vd1wiIGNoZWNrZWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbCByYWRpby1jdXN0b20tbGFiZWwgbXgtMyBwcm9kdWN0dGV4dCBjdXJzb3ItcG9pbnRlclwiIGZvcj1cImlubGluZVJhZGlvMVwiPlN1YnNjcmliZSBOb3c8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PGJyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgZm9ybS1jaGVjay1pbmxpbmUgcHMtMFwiIChjbGljayk9XCJ1cGRhdGVQcm9kdWN0KGksJ2NhbmNlbCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiIGN1cnNvci1wb2ludGVyIHJhZGlvLWN1c3RvbVwiIHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJUcmFpbEV4cGlyZWRSYWRpb09wdGlvbnNfe3tpfX1cIiBpZD1cImlubGluZVJhZGlvMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPVwiZG9sYXRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwgcHJvZHVjdHRleHQgcmFkaW8tY3VzdG9tLWxhYmVsIG14LTMgY3Vyc29yLXBvaW50ZXJcIiBmb3I9XCJpbmxpbmVSYWRpbzFcIj5JJ2xsIGRvIGl0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGF0ZXI8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWdyb3VwIHB0LTFcIiAqbmdJZj1cInByb2R1Y3QuY29udGVudCA9PT0gJ25ldydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIGZvcm0tY2hlY2staW5saW5lIHBzLTBcIiAoY2xpY2spPVwidXBkYXRlUHJvZHVjdChpLCd0cmlhbCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiIGN1cnNvci1wb2ludGVyIHJhZGlvLWN1c3RvbVwiIHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJzdXBwb3J0UmFkaW9PcHRpb25zX3t7aX19XCIgaWQ9XCJpbmxpbmVSYWRpbzFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT1cImRheXN0cmFpbFwiIGNoZWNrZWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1jaGVjay1sYWJlbCByYWRpby1jdXN0b20tbGFiZWwgbXgtMyBwcm9kdWN0dGV4dCBjdXJzb3ItcG9pbnRlclwiIGZvcj1cImlubGluZVJhZGlvMVwiPlN0YXJ0IDE0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRheXMgVHJpYWw8L2xhYmVsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PGJyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZvcm0tY2hlY2sgZm9ybS1jaGVjay1pbmxpbmUgcHMtMFwiIChjbGljayk9XCJ1cGRhdGVQcm9kdWN0KGksJ3N1YnNjcmlwdGlvbicpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiIGN1cnNvci1wb2ludGVyIHJhZGlvLWN1c3RvbVwiIHR5cGU9XCJyYWRpb1wiIG5hbWU9XCJzdXBwb3J0UmFkaW9PcHRpb25zX3t7aX19XCIgaWQ9XCJpbmxpbmVSYWRpbzFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT1cInN1YnNjcmliZW5vd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwgcHJvZHVjdHRleHQgcmFkaW8tY3VzdG9tLWxhYmVsIG14LTMgY3Vyc29yLXBvaW50ZXJcIiBmb3I9XCJpbmxpbmVSYWRpbzFcIj5TdWJzY3JpYmVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTm93PC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pjxicj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNoZWNrIGZvcm0tY2hlY2staW5saW5lIHBzLTBcIiAoY2xpY2spPVwidXBkYXRlUHJvZHVjdChpLCdjYW5jZWwnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cIiBjdXJzb3ItcG9pbnRlciByYWRpby1jdXN0b21cIiB0eXBlPVwicmFkaW9cIiBuYW1lPVwic3VwcG9ydFJhZGlvT3B0aW9uc197e2l9fVwiIGlkPVwiaW5saW5lUmFkaW8xXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9XCJsYXRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tY2hlY2stbGFiZWwgcHJvZHVjdHRleHQgcmFkaW8tY3VzdG9tLWxhYmVsIG14LTMgY3Vyc29yLXBvaW50ZXJcIiBmb3I9XCJpbmxpbmVSYWRpbzFcIj5JJ2xsIGRvIGl0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhdGVyPC9sYWJlbD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBtdC05IG15LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwic3VibWl0XCIgY2xhc3M9XCJidG4tb3V0bGluZSBidG4gY2FuY2VsIG1lLTQgdy01MFwiIChjbGljayk9XCJhY3RpdmVNb2RlbC5jbG9zZSgpXCI+Q2FuY2VsPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJzdXNjcmliZWQoKVwiIHRhYmluZGV4PVwiMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBweC00IG5nLXN0YXItaW5zZXJ0ZWQgdy01MFwiIHN0eWxlPVwid2hpdGUtc3BhY2U6IG5vd3JhcDtcIj48c3BhblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic3VibWl0XCI+U3VibWl0PC9zcGFuPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICBcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPCEtLWVuZDo6QWN0aW9ucy0tPlxyXG4gICAgICAgICAgICA8L2Zvcm0+XHJcbiAgICAgICAgICAgIDwhLS1lbmQ6OkZvcm0tLT5cclxuICAgICAgXHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19