@smarterplan/ngx-smarterplan-core 1.4.4 → 1.4.6
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.
- package/esm2022/lib/components/csv-export/csv-export.component.mjs +5 -6
- package/esm2022/lib/components/loader/loader.component.mjs +7 -8
- package/esm2022/lib/components/menu-bar/avatar/avatar.component.mjs +6 -7
- package/esm2022/lib/components/menu-bar/menu-bar.component.mjs +7 -8
- package/esm2022/lib/components/menu-bar/navigation-bar/navigation-bar.component.mjs +8 -9
- package/esm2022/lib/components/modal-switch-visit/modal-switch-visit.component.mjs +6 -7
- package/esm2022/lib/components/search-bar/search-bar.component.mjs +6 -7
- package/esm2022/lib/components/support-modal/support-modal.component.mjs +6 -7
- package/esm2022/lib/helpers.service.mjs +1 -1
- package/esm2022/lib/matterport-extensions/hsl-loader/HlsLoader.mjs +1 -1
- package/esm2022/lib/matterport-extensions/nest-thermostat/CanvasImage.mjs +1 -1
- package/esm2022/lib/matterport-extensions/nest-thermostat/CanvasRenderer.mjs +1 -1
- package/esm2022/lib/matterport-extensions/nest-thermostat/NestThermostat.mjs +1 -1
- package/esm2022/lib/matterport-extensions/nest-thermostat/PlaneRenderer.mjs +1 -1
- package/esm2022/lib/matterport-extensions/security-camera/SecurityCamera.mjs +1 -1
- package/esm2022/lib/matterport-extensions/tv-player/TvPlayer.mjs +1 -1
- package/esm2022/lib/matterport-extensions/video-renderer/VideoRenderer.mjs +1 -1
- package/esm2022/lib/matterport-extensions/view-frustum-mesh/ViewFrustumMesh.mjs +1 -1
- package/esm2022/lib/mattertagData.mjs +1 -1
- package/esm2022/lib/ngx-smarterplan-core.module.mjs +6 -7
- package/esm2022/lib/ngx-smarterplan-core.service.mjs +6 -7
- package/esm2022/lib/pipes/duration-to-string.pipe.mjs +6 -7
- package/esm2022/lib/pipes/format-date-number-to-digits.pipe.mjs +6 -7
- package/esm2022/lib/pipes/hashtag-from-id.pipe.mjs +6 -7
- package/esm2022/lib/pipes/safe-url.pipe.mjs +6 -7
- package/esm2022/lib/pipes/time-date-to-local-string.pipe.mjs +9 -10
- package/esm2022/lib/pipes/username-from-id.pipe.mjs +6 -7
- package/esm2022/lib/services/amplify-cache.service.mjs +7 -8
- package/esm2022/lib/services/base-tab.service.mjs +6 -7
- package/esm2022/lib/services/baseVisibility.service.mjs +6 -7
- package/esm2022/lib/services/content.service.mjs +6 -7
- package/esm2022/lib/services/filter.service.mjs +6 -7
- package/esm2022/lib/services/intervention.service.mjs +6 -7
- package/esm2022/lib/services/locale.service.mjs +9 -10
- package/esm2022/lib/services/matterport-import.service.mjs +6 -7
- package/esm2022/lib/services/matterport.service.mjs +7 -8
- package/esm2022/lib/services/models/affectation.service.mjs +7 -8
- package/esm2022/lib/services/models/base-object.service.mjs +6 -7
- package/esm2022/lib/services/models/capture.service.mjs +7 -8
- package/esm2022/lib/services/models/comment.service.mjs +7 -8
- package/esm2022/lib/services/models/domain.service.mjs +7 -8
- package/esm2022/lib/services/models/equipment.service.mjs +7 -8
- package/esm2022/lib/services/models/event.service.mjs +7 -8
- package/esm2022/lib/services/models/feature.service.mjs +7 -8
- package/esm2022/lib/services/models/hashtag.service.mjs +7 -8
- package/esm2022/lib/services/models/layer.service.mjs +7 -8
- package/esm2022/lib/services/models/measurement.service.mjs +7 -8
- package/esm2022/lib/services/models/mission.service.mjs +7 -8
- package/esm2022/lib/services/models/navigation.service.mjs +7 -8
- package/esm2022/lib/services/models/node.service.mjs +7 -8
- package/esm2022/lib/services/models/object3D.service.mjs +7 -8
- package/esm2022/lib/services/models/operation.service.mjs +7 -8
- package/esm2022/lib/services/models/organisation.service.mjs +7 -8
- package/esm2022/lib/services/models/plan.service.mjs +8 -10
- package/esm2022/lib/services/models/poi.service.mjs +7 -8
- package/esm2022/lib/services/models/profile.service.mjs +7 -8
- package/esm2022/lib/services/models/property.service.mjs +7 -8
- package/esm2022/lib/services/models/space.service.mjs +7 -8
- package/esm2022/lib/services/models/template.service.mjs +7 -8
- package/esm2022/lib/services/models/ticket.service.mjs +7 -8
- package/esm2022/lib/services/models/visit.service.mjs +6 -7
- package/esm2022/lib/services/models/zone.service.mjs +7 -8
- package/esm2022/lib/services/navigator.service.mjs +6 -7
- package/esm2022/lib/services/s3.service.mjs +1 -1
- package/esm2022/lib/services/search.service.mjs +6 -7
- package/esm2022/lib/services/support.service.mjs +6 -7
- package/esm2022/lib/services/tag.service.mjs +6 -7
- package/esm2022/lib/services/user.service.mjs +9 -10
- package/esm2022/lib/services/validators.service.mjs +6 -7
- package/esm2022/lib/services/viewer.service.mjs +6 -7
- package/esm2022/lib/services/zone-drawer.service.mjs +1 -1
- package/esm2022/lib/services/zoneChange.service.mjs +6 -7
- package/esm2022/lib/types.service.mjs +1 -1
- package/esm2022/lib/validators/no-empty.directive.mjs +1 -1
- package/esm2022/lib/validators/number.directive.mjs +1 -1
- package/esm2022/lib/validators/text.directive.mjs +1 -1
- package/fesm2022/smarterplan-ngx-smarterplan-core.mjs +277 -278
- package/fesm2022/smarterplan-ngx-smarterplan-core.mjs.map +1 -1
- package/package.json +26 -6
|
@@ -13,7 +13,7 @@ import * as i5 from "../../services/validators.service";
|
|
|
13
13
|
import * as i6 from "@angular/common";
|
|
14
14
|
import * as i7 from "@ngx-translate/core";
|
|
15
15
|
import * as i8 from "../loader/loader.component";
|
|
16
|
-
class SupportModalComponent {
|
|
16
|
+
export class SupportModalComponent {
|
|
17
17
|
supportService;
|
|
18
18
|
activeModal;
|
|
19
19
|
formBuilder;
|
|
@@ -63,12 +63,11 @@ class SupportModalComponent {
|
|
|
63
63
|
this.loading = false;
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
67
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
66
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SupportModalComponent, deps: [{ token: i1.SupportService }, { token: i2.NgbActiveModal }, { token: i3.UntypedFormBuilder }, { token: i4.BaseUserService }, { token: i5.ValidatorsService }], target: i0.ɵɵFactoryTarget.Component });
|
|
67
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: SupportModalComponent, selector: "app-support-modal", ngImport: i0, template: "<div class=\"modal-header\">\r\n <h5 class=\"modal-title\" translate=\"Help\"></h5>\r\n</div>\r\n<div class=\"modal-body\">\r\n <div class=\"support-loader-container\">\r\n <lib-loader *ngIf=\"loading\"></lib-loader>\r\n </div>\r\n <form (ngSubmit)=\"onSubmit()\" [formGroup]=\"supportForm\" style=\"margin-top:1rem;\" *ngIf=\"!loading && status==='new'\">\r\n <div>\r\n <label>{{'Title' | translate}} *</label>\r\n <div>\r\n <input type=\"text\" class=\"form-control\" formControlName=\"title\" data-testid=\"new-support-title\"\r\n [ngClass]=\"{'is-invalid' : validatorsService.isControlError(supportForm.controls['title'])}\"\r\n maxlength=\"255\">\r\n </div>\r\n <div class=\"invalid-feedback\">\r\n <span data-testid=\"new-support-title-invalid\" [translate]=\"validatorsService.getError(supportForm.controls['title'])\"\r\n *ngIf=\" validatorsService.isControlError(supportForm.controls['title'])\"></span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"!currentUser\">\r\n <label>{{'Email' | translate}} *</label>\r\n <div>\r\n <input type=\"email\" class=\"form-control\" formControlName=\"email\" data-testid=\"new-support-email\"\r\n [ngClass]=\"{'is-invalid' : validatorsService.isControlError(supportForm.controls['email'])}\"\r\n maxlength=\"255\">\r\n </div>\r\n <div class=\"invalid-feedback\">\r\n <span data-testid=\"new-support-email-invalid\" [translate]=\"validatorsService.getError(supportForm.controls['email'])\"\r\n *ngIf=\" validatorsService.isControlError(supportForm.controls['email'])\"></span>\r\n </div>\r\n </div>\r\n <div>\r\n <label>{{'Description' | translate}} *</label>\r\n <div>\r\n <textarea formControlName=\"description\" class=\"form-control\"\r\n data-testid=\"new-support-description\"\r\n [ngClass]=\"{'is-invalid' : validatorsService.isControlError(supportForm.controls['description'])}\"></textarea>\r\n </div>\r\n <div class=\"invalid-feedback\" >\r\n <span data-testid=\"new-support-description-invalid\" [translate]=\" validatorsService.getError(supportForm.controls['description'])\"\r\n *ngIf=\"validatorsService.isControlError(supportForm.controls['description'])\"></span>\r\n </div>\r\n </div>\r\n </form>\r\n\r\n <div *ngIf=\"status ==='send'\" translate=\"Your request has been registered\" data-testid=\"new-support-send-info\">\r\n </div>\r\n <div *ngIf=\"status ==='error'\" translate=\"An error has occurred, please renew your request\"\r\n data-testid=\"new-support-error-info\">\r\n\r\n </div>\r\n</div>\r\n<div class=\"modal-footer\">\r\n <button type=\"button\" class=\"btn rounded-pill btn-museum\" data-dismiss=\"modal\" translate=\"Close\" (click)=\"onClose()\"\r\n data-testid=\"new-support-close-btn\"></button>\r\n <button *ngIf=\"!loading && status==='new'\" type=\"button\" class=\"btn rounded-pill btn-museum\" translate=\"Submit\"\r\n (click)=\"onSubmit()\" [disabled]=\"!supportForm.valid\" data-testid=\"new-support-submit-btn\"></button>\r\n</div>", styles: [".support-loader-container{width:88px;margin:auto}.invalid-feedback{height:16px}\n"], dependencies: [{ kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i7.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i8.LoaderComponent, selector: "lib-loader", inputs: ["useLogo", "color"] }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }] });
|
|
68
68
|
}
|
|
69
|
-
|
|
70
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SupportModalComponent, decorators: [{
|
|
69
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: SupportModalComponent, decorators: [{
|
|
71
70
|
type: Component,
|
|
72
71
|
args: [{ selector: 'app-support-modal', template: "<div class=\"modal-header\">\r\n <h5 class=\"modal-title\" translate=\"Help\"></h5>\r\n</div>\r\n<div class=\"modal-body\">\r\n <div class=\"support-loader-container\">\r\n <lib-loader *ngIf=\"loading\"></lib-loader>\r\n </div>\r\n <form (ngSubmit)=\"onSubmit()\" [formGroup]=\"supportForm\" style=\"margin-top:1rem;\" *ngIf=\"!loading && status==='new'\">\r\n <div>\r\n <label>{{'Title' | translate}} *</label>\r\n <div>\r\n <input type=\"text\" class=\"form-control\" formControlName=\"title\" data-testid=\"new-support-title\"\r\n [ngClass]=\"{'is-invalid' : validatorsService.isControlError(supportForm.controls['title'])}\"\r\n maxlength=\"255\">\r\n </div>\r\n <div class=\"invalid-feedback\">\r\n <span data-testid=\"new-support-title-invalid\" [translate]=\"validatorsService.getError(supportForm.controls['title'])\"\r\n *ngIf=\" validatorsService.isControlError(supportForm.controls['title'])\"></span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"!currentUser\">\r\n <label>{{'Email' | translate}} *</label>\r\n <div>\r\n <input type=\"email\" class=\"form-control\" formControlName=\"email\" data-testid=\"new-support-email\"\r\n [ngClass]=\"{'is-invalid' : validatorsService.isControlError(supportForm.controls['email'])}\"\r\n maxlength=\"255\">\r\n </div>\r\n <div class=\"invalid-feedback\">\r\n <span data-testid=\"new-support-email-invalid\" [translate]=\"validatorsService.getError(supportForm.controls['email'])\"\r\n *ngIf=\" validatorsService.isControlError(supportForm.controls['email'])\"></span>\r\n </div>\r\n </div>\r\n <div>\r\n <label>{{'Description' | translate}} *</label>\r\n <div>\r\n <textarea formControlName=\"description\" class=\"form-control\"\r\n data-testid=\"new-support-description\"\r\n [ngClass]=\"{'is-invalid' : validatorsService.isControlError(supportForm.controls['description'])}\"></textarea>\r\n </div>\r\n <div class=\"invalid-feedback\" >\r\n <span data-testid=\"new-support-description-invalid\" [translate]=\" validatorsService.getError(supportForm.controls['description'])\"\r\n *ngIf=\"validatorsService.isControlError(supportForm.controls['description'])\"></span>\r\n </div>\r\n </div>\r\n </form>\r\n\r\n <div *ngIf=\"status ==='send'\" translate=\"Your request has been registered\" data-testid=\"new-support-send-info\">\r\n </div>\r\n <div *ngIf=\"status ==='error'\" translate=\"An error has occurred, please renew your request\"\r\n data-testid=\"new-support-error-info\">\r\n\r\n </div>\r\n</div>\r\n<div class=\"modal-footer\">\r\n <button type=\"button\" class=\"btn rounded-pill btn-museum\" data-dismiss=\"modal\" translate=\"Close\" (click)=\"onClose()\"\r\n data-testid=\"new-support-close-btn\"></button>\r\n <button *ngIf=\"!loading && status==='new'\" type=\"button\" class=\"btn rounded-pill btn-museum\" translate=\"Submit\"\r\n (click)=\"onSubmit()\" [disabled]=\"!supportForm.valid\" data-testid=\"new-support-submit-btn\"></button>\r\n</div>", styles: [".support-loader-container{width:88px;margin:auto}.invalid-feedback{height:16px}\n"] }]
|
|
73
|
-
}], ctorParameters:
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcG9ydC1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc21hcnRlcnBsYW4tY29yZS9zcmMvbGliL2NvbXBvbmVudHMvc3VwcG9ydC1tb2RhbC9zdXBwb3J0LW1vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zbWFydGVycGxhbi1jb3JlL3NyYy9saWIvY29tcG9uZW50cy9zdXBwb3J0LW1vZGFsL3N1cHBvcnQtbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUVsRCxPQUFPLEVBQXdDLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWxGLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFbkMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFdkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7Ozs7OztBQUVoRSxNQUthLHFCQUFxQjtJQVV0QjtJQUNEO0lBQ0M7SUFDQTtJQUNEO0lBYlQsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUVmLFdBQVcsQ0FBbUI7SUFFOUIsV0FBVyxDQUFNO0lBRWpCLE9BQU8sR0FBWSxJQUFJLENBQUM7SUFFeEIsWUFDVSxjQUE4QixFQUMvQixXQUEyQixFQUMxQixXQUErQixFQUMvQixXQUE0QixFQUM3QixpQkFBb0M7UUFKbkMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQy9CLGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtRQUMxQixnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7UUFDL0IsZ0JBQVcsR0FBWCxXQUFXLENBQWlCO1FBQzdCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7SUFDekMsQ0FBQztJQUVMLFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVELE9BQU87UUFDTCxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFRCxLQUFLLENBQUMsY0FBYztRQUNsQixPQUFPLElBQUksT0FBTyxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsRUFBRTtZQUNuQyxJQUFJO2dCQUNGLE1BQU0sR0FBRyxHQUFHLE1BQU0sSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUM7Z0JBQ2xELE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7YUFDOUM7WUFBQyxPQUFPLEtBQUssRUFBRTtnQkFDZCxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDcEI7UUFDSCxDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFRCxLQUFLLENBQUMsT0FBTztRQUNYLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDL0MsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztZQUN4QyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUUsZ0JBQWdCLEVBQUUsRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDO1lBQ2xHLEtBQUssRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxjQUFjLEVBQUUsRUFBRSxVQUFVLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUM7WUFDOUksV0FBVyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxnQkFBZ0IsRUFBRSxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUM7U0FDOUUsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7SUFDdkIsQ0FBQztJQUVELEtBQUssQ0FBQyxRQUFRO1FBQ1osSUFBSSxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRTtZQUMxQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztZQUNwQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM1RSxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztTQUN0QjtJQUNILENBQUM7d0dBcERVLHFCQUFxQjs0RkFBckIscUJBQXFCLHlEQ2hCbEMsbTNHQTBETTs7U0QxQ08scUJBQXFCOzRGQUFyQixxQkFBcUI7a0JBTGpDLFNBQVM7K0JBQ0UsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTmdiQWN0aXZlTW9kYWwgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XHJcbmltcG9ydCB7IFVudHlwZWRGb3JtQnVpbGRlciwgVW50eXBlZEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBCYXNlVXNlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy91c2VyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBdXRoIH0gZnJvbSBcImF3cy1hbXBsaWZ5XCI7XHJcbmltcG9ydCB7IFN1cHBvcnRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc3VwcG9ydC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgbm9FbXB0eVZhbGlkYXRvciB9IGZyb20gJy4uLy4uL3ZhbGlkYXRvcnMvbm8tZW1wdHkuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgVmFsaWRhdG9yc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy92YWxpZGF0b3JzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBlbWFpbFZhbGlkYXRvciB9IGZyb20gJy4uLy4uL3ZhbGlkYXRvcnMvZW1haWwuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgdGV4dFZhbGlkYXRvciB9IGZyb20gJy4uLy4uL3ZhbGlkYXRvcnMvdGV4dC5kaXJlY3RpdmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdhcHAtc3VwcG9ydC1tb2RhbCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3N1cHBvcnQtbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3N1cHBvcnQtbW9kYWwuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU3VwcG9ydE1vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBzdGF0dXMgPSAnbmV3JztcclxuXHJcbiAgc3VwcG9ydEZvcm06IFVudHlwZWRGb3JtR3JvdXA7XHJcblxyXG4gIGN1cnJlbnRVc2VyOiBhbnk7XHJcblxyXG4gIGxvYWRpbmc6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgc3VwcG9ydFNlcnZpY2U6IFN1cHBvcnRTZXJ2aWNlLFxyXG4gICAgcHVibGljIGFjdGl2ZU1vZGFsOiBOZ2JBY3RpdmVNb2RhbCxcclxuICAgIHByaXZhdGUgZm9ybUJ1aWxkZXI6IFVudHlwZWRGb3JtQnVpbGRlcixcclxuICAgIHByaXZhdGUgdXNlclNlcnZpY2U6IEJhc2VVc2VyU2VydmljZSxcclxuICAgIHB1YmxpYyB2YWxpZGF0b3JzU2VydmljZTogVmFsaWRhdG9yc1NlcnZpY2VcclxuICApIHsgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuaW5pRm9ybSgpO1xyXG4gIH1cclxuXHJcbiAgb25DbG9zZSgpIHtcclxuICAgIHRoaXMuYWN0aXZlTW9kYWwuY2xvc2UoKTtcclxuICB9XHJcblxyXG4gIGFzeW5jIGdldEN1cnJlbnRVc2VyKCk6IFByb21pc2U8YW55PiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoYXN5bmMgKHJlc29sdmUpID0+IHtcclxuICAgICAgdHJ5IHtcclxuICAgICAgICBjb25zdCBjYXUgPSBhd2FpdCBBdXRoLmN1cnJlbnRBdXRoZW50aWNhdGVkVXNlcigpO1xyXG4gICAgICAgIHJlc29sdmUoYXdhaXQgdGhpcy51c2VyU2VydmljZS5jdXJyZW50KGNhdSkpO1xyXG4gICAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICAgIHJlc29sdmUodW5kZWZpbmVkKTtcclxuICAgICAgfVxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIGFzeW5jIGluaUZvcm0oKSB7XHJcbiAgICB0aGlzLmN1cnJlbnRVc2VyID0gYXdhaXQgdGhpcy5nZXRDdXJyZW50VXNlcigpO1xyXG4gICAgdGhpcy5zdXBwb3J0Rm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xyXG4gICAgICB0aXRsZTogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoMjU1KSwgbm9FbXB0eVZhbGlkYXRvcigpLCB0ZXh0VmFsaWRhdG9yKCldXSxcclxuICAgICAgZW1haWw6IFsodGhpcy5jdXJyZW50VXNlciA/IHRoaXMuY3VycmVudFVzZXIuZW1haWwgOiAnJyksIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBlbWFpbFZhbGlkYXRvcigpLCBWYWxpZGF0b3JzLm1heExlbmd0aCgyNTUpLCB0ZXh0VmFsaWRhdG9yKCldXSxcclxuICAgICAgZGVzY3JpcHRpb246IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIG5vRW1wdHlWYWxpZGF0b3IoKSwgdGV4dFZhbGlkYXRvcigpXV0sXHJcbiAgICB9KTtcclxuICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgb25TdWJtaXQoKSB7XHJcbiAgICBpZiAodGhpcy5zdXBwb3J0Rm9ybS52YWxpZCkge1xyXG4gICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlO1xyXG4gICAgICB0aGlzLnN0YXR1cyA9IGF3YWl0IHRoaXMuc3VwcG9ydFNlcnZpY2Uuc2VuZFN1cHBvcnQodGhpcy5zdXBwb3J0Rm9ybS52YWx1ZSk7XHJcbiAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbn0iLCI8ZGl2IGNsYXNzPVwibW9kYWwtaGVhZGVyXCI+XHJcbiAgICA8aDUgY2xhc3M9XCJtb2RhbC10aXRsZVwiIHRyYW5zbGF0ZT1cIkhlbHBcIj48L2g1PlxyXG48L2Rpdj5cclxuPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHlcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJzdXBwb3J0LWxvYWRlci1jb250YWluZXJcIj5cclxuICAgICAgICA8bGliLWxvYWRlciAqbmdJZj1cImxvYWRpbmdcIj48L2xpYi1sb2FkZXI+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxmb3JtIChuZ1N1Ym1pdCk9XCJvblN1Ym1pdCgpXCIgW2Zvcm1Hcm91cF09XCJzdXBwb3J0Rm9ybVwiIHN0eWxlPVwibWFyZ2luLXRvcDoxcmVtO1wiICpuZ0lmPVwiIWxvYWRpbmcgJiYgc3RhdHVzPT09J25ldydcIj5cclxuICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICA8bGFiZWw+e3snVGl0bGUnIHwgdHJhbnNsYXRlfX0gKjwvbGFiZWw+XHJcbiAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGZvcm1Db250cm9sTmFtZT1cInRpdGxlXCIgZGF0YS10ZXN0aWQ9XCJuZXctc3VwcG9ydC10aXRsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieydpcy1pbnZhbGlkJyA6IHZhbGlkYXRvcnNTZXJ2aWNlLmlzQ29udHJvbEVycm9yKHN1cHBvcnRGb3JtLmNvbnRyb2xzWyd0aXRsZSddKX1cIlxyXG4gICAgICAgICAgICAgICAgICAgIG1heGxlbmd0aD1cIjI1NVwiPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImludmFsaWQtZmVlZGJhY2tcIj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdGVzdGlkPVwibmV3LXN1cHBvcnQtdGl0bGUtaW52YWxpZFwiIFt0cmFuc2xhdGVdPVwidmFsaWRhdG9yc1NlcnZpY2UuZ2V0RXJyb3Ioc3VwcG9ydEZvcm0uY29udHJvbHNbJ3RpdGxlJ10pXCJcclxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiB2YWxpZGF0b3JzU2VydmljZS5pc0NvbnRyb2xFcnJvcihzdXBwb3J0Rm9ybS5jb250cm9sc1sndGl0bGUnXSlcIj48L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCIhY3VycmVudFVzZXJcIj5cclxuICAgICAgICAgICAgPGxhYmVsPnt7J0VtYWlsJyB8IHRyYW5zbGF0ZX19ICo8L2xhYmVsPlxyXG4gICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJlbWFpbFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgZm9ybUNvbnRyb2xOYW1lPVwiZW1haWxcIiBkYXRhLXRlc3RpZD1cIm5ldy1zdXBwb3J0LWVtYWlsXCJcclxuICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2lzLWludmFsaWQnIDogdmFsaWRhdG9yc1NlcnZpY2UuaXNDb250cm9sRXJyb3Ioc3VwcG9ydEZvcm0uY29udHJvbHNbJ2VtYWlsJ10pfVwiXHJcbiAgICAgICAgICAgICAgICAgICAgbWF4bGVuZ3RoPVwiMjU1XCI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10ZXN0aWQ9XCJuZXctc3VwcG9ydC1lbWFpbC1pbnZhbGlkXCIgW3RyYW5zbGF0ZV09XCJ2YWxpZGF0b3JzU2VydmljZS5nZXRFcnJvcihzdXBwb3J0Rm9ybS5jb250cm9sc1snZW1haWwnXSlcIlxyXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIHZhbGlkYXRvcnNTZXJ2aWNlLmlzQ29udHJvbEVycm9yKHN1cHBvcnRGb3JtLmNvbnRyb2xzWydlbWFpbCddKVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgPGxhYmVsPnt7J0Rlc2NyaXB0aW9uJyB8IHRyYW5zbGF0ZX19ICo8L2xhYmVsPlxyXG4gICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgPHRleHRhcmVhIGZvcm1Db250cm9sTmFtZT1cImRlc2NyaXB0aW9uXCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxyXG4gICAgICAgICAgICAgICAgICAgIGRhdGEtdGVzdGlkPVwibmV3LXN1cHBvcnQtZGVzY3JpcHRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnaXMtaW52YWxpZCcgOiB2YWxpZGF0b3JzU2VydmljZS5pc0NvbnRyb2xFcnJvcihzdXBwb3J0Rm9ybS5jb250cm9sc1snZGVzY3JpcHRpb24nXSl9XCI+PC90ZXh0YXJlYT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbnZhbGlkLWZlZWRiYWNrXCIgPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gZGF0YS10ZXN0aWQ9XCJuZXctc3VwcG9ydC1kZXNjcmlwdGlvbi1pbnZhbGlkXCIgW3RyYW5zbGF0ZV09XCIgdmFsaWRhdG9yc1NlcnZpY2UuZ2V0RXJyb3Ioc3VwcG9ydEZvcm0uY29udHJvbHNbJ2Rlc2NyaXB0aW9uJ10pXCJcclxuICAgICAgICAgICAgICAgICpuZ0lmPVwidmFsaWRhdG9yc1NlcnZpY2UuaXNDb250cm9sRXJyb3Ioc3VwcG9ydEZvcm0uY29udHJvbHNbJ2Rlc2NyaXB0aW9uJ10pXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZm9ybT5cclxuXHJcbiAgICA8ZGl2ICpuZ0lmPVwic3RhdHVzID09PSdzZW5kJ1wiIHRyYW5zbGF0ZT1cIllvdXIgcmVxdWVzdCBoYXMgYmVlbiByZWdpc3RlcmVkXCIgZGF0YS10ZXN0aWQ9XCJuZXctc3VwcG9ydC1zZW5kLWluZm9cIj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiAqbmdJZj1cInN0YXR1cyA9PT0nZXJyb3InXCIgdHJhbnNsYXRlPVwiQW4gZXJyb3IgaGFzIG9jY3VycmVkLCBwbGVhc2UgcmVuZXcgeW91ciByZXF1ZXN0XCJcclxuICAgICAgICBkYXRhLXRlc3RpZD1cIm5ldy1zdXBwb3J0LWVycm9yLWluZm9cIj5cclxuXHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJtb2RhbC1mb290ZXJcIj5cclxuICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIHJvdW5kZWQtcGlsbCBidG4tbXVzZXVtXCIgZGF0YS1kaXNtaXNzPVwibW9kYWxcIiB0cmFuc2xhdGU9XCJDbG9zZVwiIChjbGljayk9XCJvbkNsb3NlKClcIlxyXG4gICAgICAgIGRhdGEtdGVzdGlkPVwibmV3LXN1cHBvcnQtY2xvc2UtYnRuXCI+PC9idXR0b24+XHJcbiAgICA8YnV0dG9uICpuZ0lmPVwiIWxvYWRpbmcgJiYgc3RhdHVzPT09J25ldydcIiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJidG4gcm91bmRlZC1waWxsIGJ0bi1tdXNldW1cIiB0cmFuc2xhdGU9XCJTdWJtaXRcIlxyXG4gICAgICAgIChjbGljayk9XCJvblN1Ym1pdCgpXCIgW2Rpc2FibGVkXT1cIiFzdXBwb3J0Rm9ybS52YWxpZFwiIGRhdGEtdGVzdGlkPVwibmV3LXN1cHBvcnQtc3VibWl0LWJ0blwiPjwvYnV0dG9uPlxyXG48L2Rpdj4iXX0=
|
|
72
|
+
}], ctorParameters: () => [{ type: i1.SupportService }, { type: i2.NgbActiveModal }, { type: i3.UntypedFormBuilder }, { type: i4.BaseUserService }, { type: i5.ValidatorsService }] });
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwcG9ydC1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc21hcnRlcnBsYW4tY29yZS9zcmMvbGliL2NvbXBvbmVudHMvc3VwcG9ydC1tb2RhbC9zdXBwb3J0LW1vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zbWFydGVycGxhbi1jb3JlL3NyYy9saWIvY29tcG9uZW50cy9zdXBwb3J0LW1vZGFsL3N1cHBvcnQtbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUVsRCxPQUFPLEVBQXdDLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWxGLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFbkMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFdkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7Ozs7Ozs7OztBQU9oRSxNQUFNLE9BQU8scUJBQXFCO0lBVXRCO0lBQ0Q7SUFDQztJQUNBO0lBQ0Q7SUFiVCxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBRWYsV0FBVyxDQUFtQjtJQUU5QixXQUFXLENBQU07SUFFakIsT0FBTyxHQUFZLElBQUksQ0FBQztJQUV4QixZQUNVLGNBQThCLEVBQy9CLFdBQTJCLEVBQzFCLFdBQStCLEVBQy9CLFdBQTRCLEVBQzdCLGlCQUFvQztRQUpuQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDL0IsZ0JBQVcsR0FBWCxXQUFXLENBQWdCO1FBQzFCLGdCQUFXLEdBQVgsV0FBVyxDQUFvQjtRQUMvQixnQkFBVyxHQUFYLFdBQVcsQ0FBaUI7UUFDN0Isc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtJQUN6QyxDQUFDO0lBRUwsUUFBUTtRQUNOLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNqQixDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELEtBQUssQ0FBQyxjQUFjO1FBQ2xCLE9BQU8sSUFBSSxPQUFPLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFO1lBQ25DLElBQUksQ0FBQztnQkFDSCxNQUFNLEdBQUcsR0FBRyxNQUFNLElBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO2dCQUNsRCxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQy9DLENBQUM7WUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO2dCQUNmLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNyQixDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQU87UUFDWCxJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQy9DLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUM7WUFDeEMsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxFQUFFLGdCQUFnQixFQUFFLEVBQUUsYUFBYSxFQUFFLENBQUMsQ0FBQztZQUNsRyxLQUFLLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsY0FBYyxFQUFFLEVBQUUsVUFBVSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDO1lBQzlJLFdBQVcsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsZ0JBQWdCLEVBQUUsRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDO1NBQzlFLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxLQUFLLENBQUMsUUFBUTtRQUNaLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUMzQixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztZQUNwQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM1RSxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUN2QixDQUFDO0lBQ0gsQ0FBQzt3R0FwRFUscUJBQXFCOzRGQUFyQixxQkFBcUIseURDaEJsQyxtM0dBMERNOzs0RkQxQ08scUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE5nYkFjdGl2ZU1vZGFsIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xyXG5pbXBvcnQgeyBVbnR5cGVkRm9ybUJ1aWxkZXIsIFVudHlwZWRGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgQmFzZVVzZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdXNlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQXV0aCB9IGZyb20gXCJhd3MtYW1wbGlmeVwiO1xyXG5pbXBvcnQgeyBTdXBwb3J0U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3N1cHBvcnQuc2VydmljZSc7XHJcbmltcG9ydCB7IG5vRW1wdHlWYWxpZGF0b3IgfSBmcm9tICcuLi8uLi92YWxpZGF0b3JzL25vLWVtcHR5LmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFZhbGlkYXRvcnNTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdmFsaWRhdG9ycy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgZW1haWxWYWxpZGF0b3IgfSBmcm9tICcuLi8uLi92YWxpZGF0b3JzL2VtYWlsLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IHRleHRWYWxpZGF0b3IgfSBmcm9tICcuLi8uLi92YWxpZGF0b3JzL3RleHQuZGlyZWN0aXZlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXN1cHBvcnQtbW9kYWwnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zdXBwb3J0LW1vZGFsLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9zdXBwb3J0LW1vZGFsLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFN1cHBvcnRNb2RhbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgc3RhdHVzID0gJ25ldyc7XHJcblxyXG4gIHN1cHBvcnRGb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xyXG5cclxuICBjdXJyZW50VXNlcjogYW55O1xyXG5cclxuICBsb2FkaW5nOiBib29sZWFuID0gdHJ1ZTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHN1cHBvcnRTZXJ2aWNlOiBTdXBwb3J0U2VydmljZSxcclxuICAgIHB1YmxpYyBhY3RpdmVNb2RhbDogTmdiQWN0aXZlTW9kYWwsXHJcbiAgICBwcml2YXRlIGZvcm1CdWlsZGVyOiBVbnR5cGVkRm9ybUJ1aWxkZXIsXHJcbiAgICBwcml2YXRlIHVzZXJTZXJ2aWNlOiBCYXNlVXNlclNlcnZpY2UsXHJcbiAgICBwdWJsaWMgdmFsaWRhdG9yc1NlcnZpY2U6IFZhbGlkYXRvcnNTZXJ2aWNlXHJcbiAgKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmluaUZvcm0oKTtcclxuICB9XHJcblxyXG4gIG9uQ2xvc2UoKSB7XHJcbiAgICB0aGlzLmFjdGl2ZU1vZGFsLmNsb3NlKCk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBnZXRDdXJyZW50VXNlcigpOiBQcm9taXNlPGFueT4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKGFzeW5jIChyZXNvbHZlKSA9PiB7XHJcbiAgICAgIHRyeSB7XHJcbiAgICAgICAgY29uc3QgY2F1ID0gYXdhaXQgQXV0aC5jdXJyZW50QXV0aGVudGljYXRlZFVzZXIoKTtcclxuICAgICAgICByZXNvbHZlKGF3YWl0IHRoaXMudXNlclNlcnZpY2UuY3VycmVudChjYXUpKTtcclxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICByZXNvbHZlKHVuZGVmaW5lZCk7XHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBhc3luYyBpbmlGb3JtKCkge1xyXG4gICAgdGhpcy5jdXJyZW50VXNlciA9IGF3YWl0IHRoaXMuZ2V0Q3VycmVudFVzZXIoKTtcclxuICAgIHRoaXMuc3VwcG9ydEZvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcclxuICAgICAgdGl0bGU6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWF4TGVuZ3RoKDI1NSksIG5vRW1wdHlWYWxpZGF0b3IoKSwgdGV4dFZhbGlkYXRvcigpXV0sXHJcbiAgICAgIGVtYWlsOiBbKHRoaXMuY3VycmVudFVzZXIgPyB0aGlzLmN1cnJlbnRVc2VyLmVtYWlsIDogJycpLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgZW1haWxWYWxpZGF0b3IoKSwgVmFsaWRhdG9ycy5tYXhMZW5ndGgoMjU1KSwgdGV4dFZhbGlkYXRvcigpXV0sXHJcbiAgICAgIGRlc2NyaXB0aW9uOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBub0VtcHR5VmFsaWRhdG9yKCksIHRleHRWYWxpZGF0b3IoKV1dLFxyXG4gICAgfSk7XHJcbiAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIGFzeW5jIG9uU3VibWl0KCkge1xyXG4gICAgaWYgKHRoaXMuc3VwcG9ydEZvcm0udmFsaWQpIHtcclxuICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgdGhpcy5zdGF0dXMgPSBhd2FpdCB0aGlzLnN1cHBvcnRTZXJ2aWNlLnNlbmRTdXBwb3J0KHRoaXMuc3VwcG9ydEZvcm0udmFsdWUpO1xyXG4gICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG59IiwiPGRpdiBjbGFzcz1cIm1vZGFsLWhlYWRlclwiPlxyXG4gICAgPGg1IGNsYXNzPVwibW9kYWwtdGl0bGVcIiB0cmFuc2xhdGU9XCJIZWxwXCI+PC9oNT5cclxuPC9kaXY+XHJcbjxkaXYgY2xhc3M9XCJtb2RhbC1ib2R5XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwic3VwcG9ydC1sb2FkZXItY29udGFpbmVyXCI+XHJcbiAgICAgICAgPGxpYi1sb2FkZXIgKm5nSWY9XCJsb2FkaW5nXCI+PC9saWItbG9hZGVyPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8Zm9ybSAobmdTdWJtaXQpPVwib25TdWJtaXQoKVwiIFtmb3JtR3JvdXBdPVwic3VwcG9ydEZvcm1cIiBzdHlsZT1cIm1hcmdpbi10b3A6MXJlbTtcIiAqbmdJZj1cIiFsb2FkaW5nICYmIHN0YXR1cz09PSduZXcnXCI+XHJcbiAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgPGxhYmVsPnt7J1RpdGxlJyB8IHRyYW5zbGF0ZX19ICo8L2xhYmVsPlxyXG4gICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBmb3JtQ29udHJvbE5hbWU9XCJ0aXRsZVwiIGRhdGEtdGVzdGlkPVwibmV3LXN1cHBvcnQtdGl0bGVcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnaXMtaW52YWxpZCcgOiB2YWxpZGF0b3JzU2VydmljZS5pc0NvbnRyb2xFcnJvcihzdXBwb3J0Rm9ybS5jb250cm9sc1sndGl0bGUnXSl9XCJcclxuICAgICAgICAgICAgICAgICAgICBtYXhsZW5ndGg9XCIyNTVcIj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbnZhbGlkLWZlZWRiYWNrXCI+XHJcbiAgICAgICAgICAgICAgICA8c3BhbiBkYXRhLXRlc3RpZD1cIm5ldy1zdXBwb3J0LXRpdGxlLWludmFsaWRcIiBbdHJhbnNsYXRlXT1cInZhbGlkYXRvcnNTZXJ2aWNlLmdldEVycm9yKHN1cHBvcnRGb3JtLmNvbnRyb2xzWyd0aXRsZSddKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCIgdmFsaWRhdG9yc1NlcnZpY2UuaXNDb250cm9sRXJyb3Ioc3VwcG9ydEZvcm0uY29udHJvbHNbJ3RpdGxlJ10pXCI+PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiIWN1cnJlbnRVc2VyXCI+XHJcbiAgICAgICAgICAgIDxsYWJlbD57eydFbWFpbCcgfCB0cmFuc2xhdGV9fSAqPC9sYWJlbD5cclxuICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiZW1haWxcIiBjbGFzcz1cImZvcm0tY29udHJvbFwiIGZvcm1Db250cm9sTmFtZT1cImVtYWlsXCIgZGF0YS10ZXN0aWQ9XCJuZXctc3VwcG9ydC1lbWFpbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwieydpcy1pbnZhbGlkJyA6IHZhbGlkYXRvcnNTZXJ2aWNlLmlzQ29udHJvbEVycm9yKHN1cHBvcnRGb3JtLmNvbnRyb2xzWydlbWFpbCddKX1cIlxyXG4gICAgICAgICAgICAgICAgICAgIG1heGxlbmd0aD1cIjI1NVwiPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImludmFsaWQtZmVlZGJhY2tcIj5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdGVzdGlkPVwibmV3LXN1cHBvcnQtZW1haWwtaW52YWxpZFwiIFt0cmFuc2xhdGVdPVwidmFsaWRhdG9yc1NlcnZpY2UuZ2V0RXJyb3Ioc3VwcG9ydEZvcm0uY29udHJvbHNbJ2VtYWlsJ10pXCJcclxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiB2YWxpZGF0b3JzU2VydmljZS5pc0NvbnRyb2xFcnJvcihzdXBwb3J0Rm9ybS5jb250cm9sc1snZW1haWwnXSlcIj48L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgIDxsYWJlbD57eydEZXNjcmlwdGlvbicgfCB0cmFuc2xhdGV9fSAqPC9sYWJlbD5cclxuICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgIDx0ZXh0YXJlYSBmb3JtQ29udHJvbE5hbWU9XCJkZXNjcmlwdGlvblwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCJcclxuICAgICAgICAgICAgICAgICAgICBkYXRhLXRlc3RpZD1cIm5ldy1zdXBwb3J0LWRlc2NyaXB0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2lzLWludmFsaWQnIDogdmFsaWRhdG9yc1NlcnZpY2UuaXNDb250cm9sRXJyb3Ioc3VwcG9ydEZvcm0uY29udHJvbHNbJ2Rlc2NyaXB0aW9uJ10pfVwiPjwvdGV4dGFyZWE+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW52YWxpZC1mZWVkYmFja1wiID5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGRhdGEtdGVzdGlkPVwibmV3LXN1cHBvcnQtZGVzY3JpcHRpb24taW52YWxpZFwiIFt0cmFuc2xhdGVdPVwiIHZhbGlkYXRvcnNTZXJ2aWNlLmdldEVycm9yKHN1cHBvcnRGb3JtLmNvbnRyb2xzWydkZXNjcmlwdGlvbiddKVwiXHJcbiAgICAgICAgICAgICAgICAqbmdJZj1cInZhbGlkYXRvcnNTZXJ2aWNlLmlzQ29udHJvbEVycm9yKHN1cHBvcnRGb3JtLmNvbnRyb2xzWydkZXNjcmlwdGlvbiddKVwiPjwvc3Bhbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Zvcm0+XHJcblxyXG4gICAgPGRpdiAqbmdJZj1cInN0YXR1cyA9PT0nc2VuZCdcIiB0cmFuc2xhdGU9XCJZb3VyIHJlcXVlc3QgaGFzIGJlZW4gcmVnaXN0ZXJlZFwiIGRhdGEtdGVzdGlkPVwibmV3LXN1cHBvcnQtc2VuZC1pbmZvXCI+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgKm5nSWY9XCJzdGF0dXMgPT09J2Vycm9yJ1wiIHRyYW5zbGF0ZT1cIkFuIGVycm9yIGhhcyBvY2N1cnJlZCwgcGxlYXNlIHJlbmV3IHlvdXIgcmVxdWVzdFwiXHJcbiAgICAgICAgZGF0YS10ZXN0aWQ9XCJuZXctc3VwcG9ydC1lcnJvci1pbmZvXCI+XHJcblxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG48ZGl2IGNsYXNzPVwibW9kYWwtZm9vdGVyXCI+XHJcbiAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biByb3VuZGVkLXBpbGwgYnRuLW11c2V1bVwiIGRhdGEtZGlzbWlzcz1cIm1vZGFsXCIgdHJhbnNsYXRlPVwiQ2xvc2VcIiAoY2xpY2spPVwib25DbG9zZSgpXCJcclxuICAgICAgICBkYXRhLXRlc3RpZD1cIm5ldy1zdXBwb3J0LWNsb3NlLWJ0blwiPjwvYnV0dG9uPlxyXG4gICAgPGJ1dHRvbiAqbmdJZj1cIiFsb2FkaW5nICYmIHN0YXR1cz09PSduZXcnXCIgdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwiYnRuIHJvdW5kZWQtcGlsbCBidG4tbXVzZXVtXCIgdHJhbnNsYXRlPVwiU3VibWl0XCJcclxuICAgICAgICAoY2xpY2spPVwib25TdWJtaXQoKVwiIFtkaXNhYmxlZF09XCIhc3VwcG9ydEZvcm0udmFsaWRcIiBkYXRhLXRlc3RpZD1cIm5ldy1zdXBwb3J0LXN1Ym1pdC1idG5cIj48L2J1dHRvbj5cclxuPC9kaXY+Il19
|
|
@@ -467,4 +467,4 @@ export function durationToString(duration, translate) {
|
|
|
467
467
|
}
|
|
468
468
|
return `${seconds} ${secondsString}`;
|
|
469
469
|
}
|
|
470
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNtYXJ0ZXJwbGFuLWNvcmUvc3JjL2xpYi9oZWxwZXJzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDekcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDN0QsT0FBTyxFQUFxQixXQUFXLEVBQUUsTUFBTSxFQUFXLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV2RyxNQUFNLFVBQVUsMkJBQTJCLENBQUMsVUFBVSxFQUFFLFFBQVE7SUFDNUQsTUFBTSxFQUFFLEdBQUcsUUFBUSxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQ3JDLE1BQU0sRUFBRSxHQUFHLFFBQVEsQ0FBQyxDQUFDLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUNyQyxNQUFNLEVBQUUsR0FBRyxRQUFRLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDckMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDO0FBQzVDLENBQUM7QUFFRCxNQUFNLFVBQVUsZUFBZSxDQUFDLElBQWE7SUFDekMsUUFBUSxJQUFJLEVBQUU7UUFDVixLQUFLLE9BQU8sQ0FBQyxTQUFTO1lBQ2xCLE9BQU8sV0FBVyxDQUFDO1FBQ3ZCLEtBQUssT0FBTyxDQUFDLE1BQU07WUFDZixPQUFPLFFBQVEsQ0FBQztRQUNwQixLQUFLLE9BQU8sQ0FBQyxJ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UyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUVyRCxJQUFJLFFBQVEsR0FBRyxJQUFJLEdBQUcsRUFBRSxHQUFHLENBQUMsRUFBRTtRQUMxQixPQUFPLEdBQUcsSUFBSSxJQUFJLFVBQVUsRUFBRSxDQUFDO0tBQ2xDO0lBQ0QsSUFBSSxRQUFRLEdBQUcsSUFBSSxHQUFHLEVBQUUsRUFBRTtRQUN0QixPQUFPLEdBQUcsSUFBSSxJQUFJLFVBQVUsSUFBSSxLQUFLLElBQUksV0FBVyxFQUFFLENBQUM7S0FDMUQ7SUFDRCxJQUFJLFFBQVEsS0FBSyxJQUFJLEVBQUU7UUFDbkIsT0FBTyxHQUFHLEtBQUssSUFBSSxhQUFhLEVBQUUsQ0FBQztLQUN0QztJQUNELElBQUksUUFBUSxHQUFHLElBQUksRUFBRTtRQUNqQixJQUFJLE9BQU8sS0FBSyxDQUFDLEVBQUU7WUFDZixPQUFPLEdBQUcsS0FBSyxJQUFJLFdBQVcsRUFBRSxDQUFDO1NBQ3BDO1FBQ0QsT0FBTyxHQUFHLEtBQUssSUFBSSxXQUFXLElBQUksT0FBTyxJQUFJLGFBQWEsRUFBRSxDQUFDO0tBQ2hFO0lBQ0QsSUFBSSxRQUFRLElBQUksRUFBRSxFQUFFO1FBQ2hCLElBQUksT0FBTyxLQUFLLENBQUMsRUFBRTtZQUNmLE9BQU8sR0FBRyxPQUFPLElBQUksYUFBYSxFQUFFLENBQUM7U0FDeEM7UUFDRCxPQUFPLEdBQUcsT0FBTyxJQUFJLGFBQWEsSUFBSSxPQUFPLElBQUksYUFBYSxFQUFFLENBQUM7S0FDcEU7SUFDRCxPQUFPLEdBQUcsT0FBTyxJQUFJLGFBQWEsRUFBRSxDQUFDO0FBQ3pDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ2JNb2RhbCB9IGZyb20gXCJAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcFwiO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcclxuaW1wb3J0IHsgTW9kYWxTd2l0Y2hWaXNpdENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudHMvbW9kYWwtc3dpdGNoLXZpc2l0L21vZGFsLXN3aXRjaC12aXNpdC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgZG93bmxvYWRGaWxlQXNPYmplY3QgfSBmcm9tIFwiLi9zZXJ2aWNlcy9zMy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IEVxdWlwbWVudERvY3VtZW50LCBMZXZlbFN0YXR1cywgTG9jYWxlLCBNaXNzaW9uLCBQb2lUeXBlLCBSb2xlU3RhdHVzIH0gZnJvbSBcIi4vdHlwZXMuc2VydmljZVwiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldERpc3RhbmNlQmV0d2VlblR3b1BvaW50cyhzdGFydFBvaW50LCBlbmRQb2ludCkge1xyXG4gICAgY29uc3QgZHggPSBlbmRQb2ludC54IC0gc3RhcnRQb2ludC54O1xyXG4gICAgY29uc3QgZHkgPSBlbmRQb2ludC55IC0gc3RhcnRQb2ludC55O1xyXG4gICAgY29uc3QgZHogPSBlbmRQb2ludC56IC0gc3RhcnRQb2ludC56O1xyXG4gICAgY29uc3QgZGlzdGFuY2UgPSBNYXRoLnNxcnQoZHggKiBkeCArIGR5ICogZHkgKyBkeiAqIGR6KTtcclxuICAgIHJldHVybiBNYXRoLnJvdW5kKGRpc3RhbmNlICogMTAwKSAvIDEwMDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHBvaVR5cGVUb1N0cmluZyh0eXBlOiBQb2lUeXBlKTogc3RyaW5nIHtcclxuICAgIHN3aXRjaCAodHlwZSkge1xyXG4gICAgICAgIGNhc2UgUG9pVHlwZS5FUVVJUE1FTlQ6XHJcbiAgICAgICAgICAgIHJldHVybiBcImVxdWlwbWVudFwiO1xyXG4gICAgICAgIGNhc2UgUG9pVHlwZS5USUNLRVQ6XHJcbiAgICAgICAgICAgIHJldHVybiBcInRpY2tldFwiO1xyXG4gICAgICAgIGNhc2UgUG9pVHlwZS5EQVRBOlxyXG4gICAgICAgICAgICByZXR1cm4gXCJkYXRhXCI7XHJcbiAgICAgICAgY2FzZSBQb2lUeXBlLkRFU0s6XHJcbiAgICAgICAgICAgIHJldHVybiBcImRhdGFcIjtcclxuICAgICAgICBjYXNlIFBvaVR5cGUuSU5GT1JNQVRJT046XHJcbiAgICAgICAgICAgIHJldHVybiBcImluZm9ybWF0aW9uXCI7XHJcbiAgICAgICAgY2FzZSBQb2lUeXBlLk1FQVNVUkU6XHJcbiAgICAgICAgICAgIHJldHVybiBcIm1lYXN1cmVcIjtcclxuICAgICAgICBjYXNlIFBvaVR5cGUuUEVPUExFOlxyXG4gICAgICAgICAgICByZXR1cm4gXCJwZW9wbGVcIjtcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICByZXR1cm4gXCJ0aWNrZXRcIjtcclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHdhaXQodGltZW91dDogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcclxuICAgICAgICB0aW1lb3V0ID0gdGltZW91dCB8fCAyMDAwO1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICByZXNvbHZlKCk7XHJcbiAgICAgICAgfSwgdGltZW91dCk7XHJcbiAgICB9KTtcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IHdhaXRVbnRpbCA9IChjb25kaXRpb246ICgpID0+IGJvb2xlYW4pID0+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZTx2b2lkPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgICAgY29uc3QgaW50ZXJ2YWxJZCA9IHNldEludGVydmFsKCgpID0+IHtcclxuICAgICAgICAgICAgaWYgKGNvbmRpdGlvbigpKSB7XHJcbiAgICAgICAgICAgICAgICBjbGVhckludGVydmFsKGludGVydmFsSWQpO1xyXG4gICAgICAgICAgICAgICAgcmVzb2x2ZSgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSwgMzApO1xyXG4gICAgfSk7XHJcbn07XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZW51bVRvQXJyYXkoZW51bWVyYWJsZTogYW55KSB7XHJcbiAgICByZXR1cm4gT2JqZWN0LmtleXMoZW51bWVyYWJsZSlcclxuICAgICAgICAuZmlsdGVyKCh2YWx1ZSkgPT4gaXNOYU4oTnVtYmVyKHZhbHVlKSkgPT09IHRydWUpXHJcbiAgICAgICAgLm1hcCgoa2V5KSA9PiBlbnVtZXJhYmxlW2tleV0pO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0TGV2ZWxzQmVsb3cobGV2ZWw6IExldmVsU3RhdHVzKTogTGV2ZWxTdGF0dXNbXSB7XHJcbiAgICBjb25zdCBhbGwgPSBbXHJcbiAgICAgICAgTGV2ZWxTdGF0dXMuTUlOSU1VTSxcclxuICAgICAgICBMZXZlbFN0YXR1cy5MT1csXHJcbiAgICAgICAgTGV2ZWxTdGF0dXMuTUVESVVNLFxyXG4gICAgICAgIExldmVsU3RhdHVzLkhJR0gsXHJcbiAgICAgICAgTGV2ZWxTdGF0dXMuTUFYSU1VTSxcclxuICAgIF07XHJcbiAgICBzd2l0Y2ggKGxldmVsKSB7XHJcbiAgICAgICAgY2FzZSBMZXZlbFN0YXR1cy5NQVhJTVVNOlxyXG4gICAgICAgICAgICByZXR1cm4gYWxsO1xyXG4gICAgICAgIGNhc2UgTGV2ZWxTdGF0dXMuSElHSDpcclxuICAgICAgICAgICAgYWxsLnNwbGljZSg0LCAxKTtcclxuICAgICAgICAgICAgcmV0dXJuIGFsbDtcclxuICAgICAgICBjYXNlIExldmVsU3RhdHVzLk1FRElVTTpcclxuICAgICAgICAgICAgYWxsLnNwbGljZSgzLCAyKTtcclxuICAgICAgICAgICAgcmV0dXJuIGFsbDtcclxuICAgICAgICBjYXNlIExldmVsU3RhdHVzLkxPVzpcclxuICAgICAgICAgICAgcmV0dXJuIFtMZXZlbFN0YXR1cy5NSU5JTVVNLCBMZXZlbFN0YXR1cy5MT1ddO1xyXG4gICAgICAgIGNhc2UgTGV2ZWxTdGF0dXMuTUlOSU1VTTpcclxuICAgICAgICAgICAgcmV0dXJuIFtMZXZlbFN0YXR1cy5NSU5JTVVNXTtcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICByZXR1cm4gW0xldmVsU3RhdHVzLk1JTklNVU1dO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0SGlnaGVzdExldmVsRm9yTWlzc2lvbnMobWlzc2lvbnM6IE1pc3Npb25bXSk6IExldmVsU3RhdHVzIHtcclxuICAgIGxldCBsYXRlc3RWaXNpYmxlTGV2ZWxzID0gW0xldmVsU3RhdHVzLk1JTklNVU1dO1xyXG4gICAgZm9yIChjb25zdCBtIG9mIG1pc3Npb25zKSB7XHJcbiAgICAgICAgY29uc3QgdmlzaWJsZUxldmVscyA9IGdldExldmVsc0JlbG93KG0ubGV2ZWwpO1xyXG4gICAgICAgIGlmICh2aXNpYmxlTGV2ZWxzLmxlbmd0aCA+IGxhdGVzdFZpc2libGVMZXZlbHMubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIGxhdGVzdFZpc2libGVMZXZlbHMgPSB2aXNpYmxlTGV2ZWxzO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHN3aXRjaCAobGF0ZXN0VmlzaWJsZUxldmVscy5sZW5ndGgpIHtcclxuICAgICAgICBjYXNlIDE6XHJcbiAgICAgICAgICAgIHJldHVybiBMZXZlbFN0YXR1cy5NSU5JTVVNO1xyXG4gICAgICAgIGNhc2UgMjpcclxuICAgICAgICAgICAgcmV0dXJuIExldmVsU3RhdHVzLkxPVztcclxuICAgICAgICBjYXNlIDM6XHJcbiAgICAgICAgICAgIHJldHVybiBMZXZlbFN0YXR1cy5NRURJVU07XHJcbiAgICAgICAgY2FzZSA0OlxyXG4gICAgICAgICAgICByZXR1cm4gTGV2ZWxTdGF0dXMuSElHSDtcclxuICAgICAgICBjYXNlIDU6XHJcbiAgICAgICAgICAgIHJldHVybiBMZXZlbFN0YXR1cy5NQVhJTVVNO1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgIHJldHVybiBMZXZlbFN0YXR1cy5NSU5JTVVNO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0SGlnaGVzdFJvbGVGb3JNaXNzaW9ucyhtaXNzaW9uczogTWlzc2lvbltdKTogUm9sZVN0YXR1cyB7XHJcbiAgICBsZXQgaGlnaGVzdFJvbGUgPSBSb2xlU3RhdHVzLlZJU0lUT1I7XHJcbiAgICBmb3IgKGNvbnN0IG0gb2YgbWlzc2lvbnMpIHtcclxuICAgICAgICBpZiAobS5yb2xlID09PSBSb2xlU3RhdHVzLkFETUlOKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBSb2xlU3RhdHVzLkFETUlOO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoaGlnaGVzdFJvbGUgPT09IFJvbGVTdGF0dXMuT1dORVIpIHtcclxuICAgICAgICAgICAgY29udGludWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChtLnJvbGUgPT09IFJvbGVTdGF0dXMuT1dORVIpIHtcclxuICAgICAgICAgICAgaGlnaGVzdFJvbGUgPSBSb2xlU3RhdHVzLk9XTkVSO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAobS5yb2xlID09PSBSb2xlU3RhdHVzLk1BTkFHRVIpIHtcclxuICAgICAgICAgICAgaGlnaGVzdFJvbGUgPSBSb2xlU3RhdHVzLk1BTkFHRVI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgICAgbS5yb2xlID09PSBSb2xlU3RhdHVzLlNFUlZJQ0UgJiZcclxuICAgICAgICAgICAgaGlnaGVzdFJvbGUgIT09IFJvbGVTdGF0dXMuTUFOQUdFUlxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgICBoaWdoZXN0Um9sZSA9IFJvbGVTdGF0dXMuU0VSVklDRTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgICBtLnJvbGUgPT09IFJvbGVTdGF0dXMuT0NDVVBBTlQgJiZcclxuICAgICAgICAgICAgaGlnaGVzdFJvbGUgPT09IFJvbGVTdGF0dXMuVklTSVRPUlxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgICBoaWdoZXN0Um9sZSA9IFJvbGVTdGF0dXMuT0NDVVBBTlQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChtLnJvbGUgPT09IFJvbGVTdGF0dXMuR1VJREVfTVVTRVVNKSB7XHJcbiAgICAgICAgICAgIGhpZ2hlc3RSb2xlID0gUm9sZVN0YXR1cy5HVUlERV9NVVNFVU07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChtLnJvbGUgPT09IFJvbGVTdGF0dXMuVklTSVRPUl9NVVNFVU0pIHtcclxuICAgICAgICAgICAgaGlnaGVzdFJvbGUgPSBSb2xlU3RhdHVzLlZJU0lUT1JfTVVTRVVNO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBoaWdoZXN0Um9sZTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldFJvbGVzQmVsb3dGb3JNYW5hZ2VyKHJvbGU6IFJvbGVTdGF0dXMpOiBSb2xlU3RhdHVzW10ge1xyXG4gICAgY29uc3QgYWxsID0gW1xyXG4gICAgICAgIFJvbGVTdGF0dXMuVklTSVRPUixcclxuICAgICAgICBSb2xlU3RhdHVzLk9DQ1VQQU5ULFxyXG4gICAgICAgIFJvbGVTdGF0dXMuU0VSVklDRSxcclxuICAgICAgICBSb2xlU3RhdHVzLk1BTkFHRVIsXHJcbiAgICAgICAgUm9sZVN0YXR1cy5PV05FUixcclxuICAgICAgICBSb2xlU3RhdHVzLkFETUlOLFxyXG4gICAgXTtcclxuICAgIGNvbnN0IG11c2V1bSA9IFtSb2xlU3RhdHVzLlZJU0lUT1JfTVVTRVVNLCBSb2xlU3RhdHVzLkdVSURFX01VU0VVTV07XHJcbiAgICBzd2l0Y2ggKHJvbGUpIHtcclxuICAgICAgICBjYXNlIFJvbGVTdGF0dXMuQURNSU46XHJcbiAgICAgICAgICAgIHJldHVybiBbLi4uYWxsLCAuLi5tdXNldW1dO1xyXG4gICAgICAgIGNhc2UgUm9sZVN0YXR1cy5PV05FUjpcclxuICAgICAgICAgICAgYWxsLnNwbGljZSg1LCAxKTtcclxuICAgICAgICAgICAgcmV0dXJuIGFsbDtcclxuICAgICAgICBjYXNlIFJvbGVTdGF0dXMuTUFOQUdFUjpcclxuICAgICAgICAgICAgYWxsLnNwbGljZSg0LCAyKTtcclxuICAgICAgICAgICAgcmV0dXJuIGFsbDtcclxuICAgICAgICBjYXNlIFJvbGVTdGF0dXMuR1VJREVfTVVTRVVNOlxyXG4gICAgICAgICAgICByZXR1cm4gbXVzZXVtO1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgIHJldHVybiBhbGwuc3BsaWNlKDQsIDIpO1xyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZmlsdGVyVW5pcXVlQXJyYXlCeUlEKGFycmF5T2ZPYmplY3RzOiBhbnlbXSk6IGFueVtdIHtcclxuICAgIHJldHVybiBhcnJheU9mT2JqZWN0cy5maWx0ZXIoXHJcbiAgICAgICAgKHYsIGluZGV4LCBhKSA9PiBhLmZpbmRJbmRleCgodCkgPT4gdC5pZCA9PT0gdi5pZCkgPT09IGluZGV4LFxyXG4gICAgKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHJlbW92ZU51bGxLZXlzRnJvbU9iamVjdChvYmplY3Q6IE9iamVjdCkge1xyXG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMob2JqZWN0KSkge1xyXG4gICAgICAgIGlmIChvYmplY3Rba2V5XSA9PT0gbnVsbCkge1xyXG4gICAgICAgICAgICBkZWxldGUgb2JqZWN0W2tleV07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKipcclxuICogVGVzdCBpZiBhIGRhdGUgaGFzIGV4cGlyZWRcclxuICogQHBhcmFtIGRhdGVcclxuICogQHJldHVybnMgdHJ1ZSBpZiB0aGUgZGF0ZSBoYXMgZXhwaXJlZCwgZmFsc2Ugb3RoZXJ3aXNlXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZGF0ZUhhc0V4cGlyZWQoXHJcbiAgICBkYXRlOiBzdHJpbmcgfCBEYXRlIHwgbnVtYmVyIHwgbnVsbCB8IHVuZGVmaW5lZCxcclxuKTogYm9vbGVhbiB7XHJcbiAgICBpZiAoZGF0ZSkge1xyXG4gICAgICAgIHJldHVybiBuZXcgRGF0ZShkYXRlKSA8PSBuZXcgRGF0ZSgpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc3RyaW5nTG9jYWxlVG9FbnVtKGxvY2FsZTogc3RyaW5nKTogTG9jYWxlIHtcclxuICAgIHN3aXRjaCAobG9jYWxlKSB7XHJcbiAgICAgICAgY2FzZSBcImVuXCI6XHJcbiAgICAgICAgICAgIHJldHVybiBMb2NhbGUuRU47XHJcbiAgICAgICAgY2FzZSBcImZyXCI6XHJcbiAgICAgICAgICAgIHJldHVybiBMb2NhbGUuRlI7XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmV0dXJuIExvY2FsZS5FTjtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRNZXRhRm9ySW1hZ2UodXJsKTogUHJvbWlzZTxhbnk+IHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgICAgY29uc3QgaW1nID0gbmV3IEltYWdlKCk7XHJcblxyXG4gICAgICAgIGltZy5hZGRFdmVudExpc3RlbmVyKFwibG9hZFwiLCAoKSA9PiB7XHJcbiAgICAgICAgICAgIHJlc29sdmUoaW1nKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICBpbWcuYWRkRXZlbnRMaXN0ZW5lcihcImVycm9yXCIsICgpID0+IHJlamVjdCgpKTtcclxuICAgICAgICBpbWcuc3JjID0gdXJsO1xyXG4gICAgfSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzb3J0QWxwaGFiZXRpY2FsbHlPbk5hbWUoYXJyYXk6IHsgbmFtZTogc3RyaW5nOyB9W10pOiBhbnlbXSB7XHJcbiAgICByZXR1cm4gYXJyYXkuc29ydCgoYSwgYikgPT4gYS5uYW1lLmxvY2FsZUNvbXBhcmUoYi5uYW1lKSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiB2YWxpZEVtYWlsKGVtYWlsOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IHJlID1cclxuICAgICAgICAvXigoW15cXHNcIigpLC46Ozw+QFtcXFxcXFxdXSsoXFwuW15cXHNcIigpLC46Ozw+QFtcXFxcXFxdXSspKil8KFwiLitcIikpQCgoXFxbKD86XFxkezEsM31cXC4pezN9XFxkezEsM31dKXwoKFtcXGRBLVphLXpcXC1dK1xcLikrW0EtWmEtel17Mix9KSkkLztcclxuICAgIHJldHVybiByZS50ZXN0KGVtYWlsKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGRvd25sb2FkQmxvYihibG9iLCBmaWxlbmFtZSkge1xyXG4gICAgY29uc3QgdXJsID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKTtcclxuICAgIGNvbnN0IGEgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KFwiYVwiKTtcclxuICAgIGEuaHJlZiA9IHVybDtcclxuICAgIGEuZG93bmxvYWQgPSBmaWxlbmFtZSB8fCBcImRvd25sb2FkXCI7XHJcbiAgICBjb25zdCBjbGlja0hhbmRsZXIgPSAoKSA9PiB7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIFVSTC5yZXZva2VPYmplY3RVUkwodXJsKTtcclxuICAgICAgICAgICAgYS5yZW1vdmVFdmVudExpc3RlbmVyKFwiY2xpY2tcIiwgY2xpY2tIYW5kbGVyKTtcclxuICAgICAgICB9LCAxNTApO1xyXG4gICAgfTtcclxuICAgIGEuYWRkRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIGNsaWNrSGFuZGxlciwgZmFsc2UpO1xyXG4gICAgYS5jbGljaygpO1xyXG4gICAgcmV0dXJuIGE7XHJcbn1cclxuXHJcbi8qXHJcbiAgICBPcGVuIG1vZGFsIGlmIG9uZSBoYXMgdG8gc3dpdGNoIHZpcnR1YWwgdmlzaXRcclxuKi9cclxuZXhwb3J0IGZ1bmN0aW9uIG9wZW5Nb2RhbEZvclZpc2l0U3dpdGNoKFxyXG4gICAgbW9kYWxTZXJ2aWNlOiBOZ2JNb2RhbCxcclxuICAgIG1vZGVsM0Q6IHN0cmluZyxcclxuICAgIHNwYWNlSUQ6IHN0cmluZyxcclxuICAgIGRhdGFUb01vdmU6IHsgc3dlZXBUb01vdmU6IHN0cmluZywgcm90YXRpb246IGFueTsgfSB8IG51bGwgPSBudWxsXHJcbikge1xyXG4gICAgY29uc3QgbW9kYWxSZWZlcmVuY2UgPSBtb2RhbFNlcnZpY2Uub3BlbihNb2RhbFN3aXRjaFZpc2l0Q29tcG9uZW50KTtcclxuICAgIG1vZGFsUmVmZXJlbmNlLmNvbXBvbmVudEluc3RhbmNlLmNvbnRlbnQgPVxyXG4gICAgICAgIFwiVGhpcyBvYmplY3QgYmVsb25ncyB0byBhbm90aGVyIDNEIHZpc2l0LiBBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gc3dpdGNoIHRoZSB2aXNpdD9cIjtcclxuICAgIG1vZGFsUmVmZXJlbmNlLmNvbXBvbmVudEluc3RhbmNlLm1vZGVsM0QgPSBtb2RlbDNEO1xyXG4gICAgbW9kYWxSZWZlcmVuY2UuY29tcG9uZW50SW5zdGFuY2Uuc3BhY2VJRCA9IHNwYWNlSUQ7XHJcbiAgICBpZiAoZGF0YVRvTW92ZSkge1xyXG4gICAgICAgIG1vZGFsUmVmZXJlbmNlLmNvbXBvbmVudEluc3RhbmNlLmRhdGFUb01vdmUgPSBkYXRhVG9Nb3ZlO1xyXG4gICAgfVxyXG5cclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybiBhIHN0cmluZyBvZiBhIGdpdmVuIGRhdGUgdGltZSBpbiBsb2NhbCBmb3JtYXQuXHJcbiAqIFRoZSBmb3JtYXQgaXMgZGV0ZXJtaW5lZCBieSB0aGUgY3VycmVudCBsYW5ndWFnZS5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBkYXRlVGltZVRvTG9jYWxTdHJpbmcoXHJcbiAgICBkYXRlOiBudW1iZXIgfCBzdHJpbmcgfCBEYXRlLFxyXG4gICAgdHJhbnNsYXRlPzogVHJhbnNsYXRlU2VydmljZSxcclxuICAgIG1vZGU/LFxyXG4pOiBzdHJpbmcge1xyXG4gICAgbGV0IGxhbmcgPSBcImVuLUVOXCI7XHJcbiAgICBpZiAodHJhbnNsYXRlKSB7XHJcbiAgICAgICAgLyoqIEdldCBjdXJyZW50IGxhbmd1YWdlICovXHJcbiAgICAgICAgbGFuZyA9IHRyYW5zbGF0ZS5jdXJyZW50TGFuZ1xyXG4gICAgICAgICAgICA/IHRyYW5zbGF0ZS5jdXJyZW50TGFuZ1xyXG4gICAgICAgICAgICA6IHRyYW5zbGF0ZS5kZWZhdWx0TGFuZztcclxuICAgICAgICAvKiogVHJhbnNmb3JtZSAnX2ZyJyB0byAnZnInICovXHJcbiAgICAgICAgaWYgKGxhbmcpIHtcclxuICAgICAgICAgICAgbGFuZyA9IGxhbmcuc2xpY2UoMSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgIH1cclxuXHJcbiAgICBsZXQgb3B0aW9uczoge1xyXG4gICAgICAgIG1vbnRoPztcclxuICAgICAgICB5ZWFyPztcclxuICAgICAgICBkYXk/O1xyXG4gICAgICAgIGhvdXI/O1xyXG4gICAgICAgIG1pbnV0ZT87XHJcbiAgICAgICAgc2Vjb25kPztcclxuICAgICAgICBkYXRlU3R5bGU/O1xyXG4gICAgICAgIHRpbWVTdHlsZT87XHJcbiAgICAgICAgd2Vla2RheT87XHJcbiAgICAgICAgdGltZVpvbmU/O1xyXG4gICAgICAgIHRpbWVab25lTmFtZT87XHJcbiAgICB9O1xyXG4gICAgc3dpdGNoIChtb2RlKSB7XHJcbiAgICAgICAgY2FzZSBcImRheV9udW1lcmljXCI6XHJcbiAgICAgICAgICAgIG9wdGlvbnMgPSB7IGRheTogXCJudW1lcmljXCIgfTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSBcImRheVwiOlxyXG4gICAgICAgICAgICBvcHRpb25zID0geyB3ZWVrZGF5OiBcImxvbmdcIiB9O1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlIFwiZGF0ZVwiOlxyXG4gICAgICAgICAgICBvcHRpb25zID0geyBkYXRlU3R5bGU6IFwibG9uZ1wiIH07XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgXCJzaG9ydF9kYXRlX3RpbWVcIjpcclxuICAgICAgICAgICAgb3B0aW9ucyA9IHtcclxuICAgICAgICAgICAgICAgIHllYXI6IFwiMi1kaWdpdFwiLFxyXG4gICAgICAgICAgICAgICAgbW9udGg6IFwiMi1kaWdpdFwiLFxyXG4gICAgICAgICAgICAgICAgZGF5OiBcIjItZGlnaXRcIixcclxuICAgICAgICAgICAgICAgIGhvdXI6IFwiMi1kaWdpdFwiLFxyXG4gICAgICAgICAgICAgICAgbWludXRlOiBcIjItZGlnaXRcIixcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSBcInRpbWVcIjpcclxuICAgICAgICAgICAgb3B0aW9ucyA9IHsgaG91cjogXCJudW1lcmljXCIsIG1pbnV0ZTogXCJudW1lcmljXCIgfTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSBcImRheV90aW1lX3pvbmVcIjpcclxuICAgICAgICAgICAgb3B0aW9ucyA9IHtcclxuICAgICAgICAgICAgICAgIHdlZWtkYXk6IFwibG9uZ1wiLFxyXG4gICAgICAgICAgICAgICAgeWVhcjogXCJudW1lcmljXCIsXHJcbiAgICAgICAgICAgICAgICBtb250aDogXCJsb25nXCIsXHJcbiAgICAgICAgICAgICAgICBkYXk6IFwibnVtZXJpY1wiLFxyXG4gICAgICAgICAgICAgICAgaG91cjogXCJudW1lcmljXCIsXHJcbiAgICAgICAgICAgICAgICBtaW51dGU6IFwibnVtZXJpY1wiLFxyXG4gICAgICAgICAgICAgICAgdGltZVpvbmVOYW1lOiBcInNob3J0T2Zmc2V0XCIsXHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgIG9wdGlvbnMgPSB7XHJcbiAgICAgICAgICAgICAgICBkYXRlU3R5bGU6IFwibG9uZ1wiLFxyXG4gICAgICAgICAgICAgICAgdGltZVN0eWxlOiBcInNob3J0XCIsXHJcbiAgICAgICAgICAgIH07XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbmV3IERhdGUoZGF0ZSkudG9Mb2NhbGVTdHJpbmcobGFuZywgb3B0aW9ucyk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb21wYXJlcyB0d28gc3RyaW5nIGFycmF5c1xyXG4gKiBAcGFyYW0gYXJyYXkxXHJcbiAqIEBwYXJhbSBhcnJheTJcclxuICogQHJldHVybnNcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBhcnJheXNDb250YWluU2FtZUVsZW1lbnRzKFxyXG4gICAgYXJyYXkxOiBzdHJpbmdbXSxcclxuICAgIGFycmF5Mjogc3RyaW5nW10sXHJcbik6IGJvb2xlYW4ge1xyXG4gICAgYXJyYXkxLnNvcnQoKTtcclxuICAgIGFycmF5Mi5zb3J0KCk7XHJcbiAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkoYXJyYXkxKSA9PT0gSlNPTi5zdHJpbmdpZnkoYXJyYXkyKTtcclxufVxyXG5cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRWaXNpdFVybChjdXJyZW50VXJsOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgcGF0aCA9IGN1cnJlbnRVcmwuc3BsaXQoXCIvXCIpO1xyXG4gICAgcGF0aC5zcGxpY2UoMywgcGF0aC5sZW5ndGggLSAyKTtcclxuICAgIHJldHVybiBwYXRoLmpvaW4oXCIvXCIpO1xyXG59XHJcblxyXG4vKipcclxuICogRXh0cmFjdCBzcGFjZUlEIGZyb20gdXJsIHdoZW4gaW4gdmlzaXQgM0RcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRTcGFjZUlERnJvbVVybCh1cmw6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBjb25zdCB2aXNpdFVybCA9IGdldFZpc2l0VXJsKHVybCk7XHJcbiAgICByZXR1cm4gdmlzaXRVcmwuc3BsaXQoXCIvXCIpWzJdO1xyXG59XHJcblxyXG4vKipcclxuICogRG93bmxvYWQgcmVsYXRlZFxyXG4gKi9cclxuaW1wb3J0ICogYXMgRmlsZVNhdmVyIGZyb20gXCJmaWxlLXNhdmVyXCI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZG93bmxvYWRGaWxlKGZpbGVVcmw6IHN0cmluZywgZmlsZU5hbWU6IHN0cmluZykge1xyXG4gICAgRmlsZVNhdmVyLnNhdmVBcyhmaWxlVXJsICsgZmlsZU5hbWUsIGZpbGVOYW1lKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG9wZW5Eb2N1bWVudChmaWxlVXJsOiBzdHJpbmcsIGZpbGVOYW1lOiBzdHJpbmcsIGlkOiBudW1iZXIpIHtcclxuICAgIHdpbmRvdy5vcGVuKGAke2ZpbGVVcmwgKyBmaWxlTmFtZX0jZG9jPSR7aWR9YCwgXCJfYmxhbmtcIiwgXCJcIik7XHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBkb3dubG9hZEVxdWlwbWVudERvY3VtZW50ID0gYXN5bmMgKFxyXG4gICAgZG9jdW1lbnRfOiBFcXVpcG1lbnREb2N1bWVudCxcclxuKTogUHJvbWlzZTxPYmplY3QgfCB2b2lkPiA9PiB7XHJcbiAgICBjb25zdCBzaWduZWRGaWxlID0gYXdhaXQgZG93bmxvYWRGaWxlQXNPYmplY3QoZG9jdW1lbnRfLnVybCk7XHJcbiAgICBpZiAoc2lnbmVkRmlsZSkge1xyXG4gICAgICAgIC8vIEB0cy1pZ25vcmVcclxuICAgICAgICBkb3dubG9hZEJsb2Ioc2lnbmVkRmlsZS5Cb2R5LCBkb2N1bWVudF8uZmlsZW5hbWUpO1xyXG4gICAgfVxyXG59O1xyXG5cclxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNoZWNrRWxlbWVudEJ5SWQoc2VsZWN0b3IpIHtcclxuICAgIGxldCBxdWVyeVNlbGVjdG9yID0gbnVsbDtcclxuICAgIHdoaWxlIChxdWVyeVNlbGVjdG9yID09PSBudWxsKSB7XHJcbiAgICAgICAgYXdhaXQgcmFmQXN5bmMoKTtcclxuICAgICAgICBxdWVyeVNlbGVjdG9yID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoc2VsZWN0b3IpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHF1ZXJ5U2VsZWN0b3I7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHJhZkFzeW5jKCkge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XHJcbiAgICAgICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKHJlc29sdmUpOyAvLyBmYXN0ZXIgdGhhbiBzZXQgdGltZSBvdXRcclxuICAgIH0pO1xyXG59XHJcblxyXG4vKiBAcGFyYW0ge0FycmF5fSBudW1iZXJzIEFuIGFycmF5IG9mIG51bWJlcnMuXHJcbiAqIEByZXR1cm4ge051bWJlcn0gVGhlIGNhbGN1bGF0ZWQgYXZlcmFnZSAob3IgbWVhbikgdmFsdWUgZnJvbSB0aGUgc3BlY2lmaWVkXHJcbiAqICAgICBudW1iZXJzLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIG1lYW4obnVtYmVyczogbnVtYmVyW10pIHtcclxuICAgIGxldCB0b3RhbCA9IDA7XHJcbiAgICBmb3IgKGNvbnN0IG51bWJlciBvZiBudW1iZXJzKSB7XHJcbiAgICAgICAgdG90YWwgKz0gbnVtYmVyO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRvdGFsIC8gbnVtYmVycy5sZW5ndGg7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjb252ZXJ0VGltZXN0YW1wVG9Mb2NhbFpvbmUodGltZXN0YW1wOiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgY29uc3Qgc2VsZWN0ZWREYXRlID0gbmV3IERhdGUodGltZXN0YW1wKTtcclxuICAgIGNvbnN0IGxvY2FsT2Zmc2V0ID0gLTEgKiBzZWxlY3RlZERhdGUuZ2V0VGltZXpvbmVPZmZzZXQoKSAqIDYwMDAwO1xyXG4gICAgY29uc3Qgc3RhbXAgPSB0aW1lc3RhbXAgKyBsb2NhbE9mZnNldDtcclxuICAgIHJldHVybiBzdGFtcDtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybiBzdHJpbmcgZm9yIHBlcmlvZCBvZiB0aW1lLiBQYXJhbWV0ZXJzIGFyZSBEYXRlVGltZSBvYmplY3RzIG9mIGx1eG9uIGxpYnJhcnkuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gdHJhbnNsYXRlRGF0ZVBlcmlvZChcclxuICAgIHRyYW5zbGF0ZVNlcnZpY2U6IGFueSxcclxuICAgIGRhdGVTdGFydFBlcmlvZDogYW55LFxyXG4gICAgZGF0ZUVuZFBlcmlvZDogYW55LFxyXG4pOiBzdHJpbmcge1xyXG4gICAgY29uc3QgbG9jYWxlID0gZ2V0TG9jYWxlTG9uZyh0cmFuc2xhdGVTZXJ2aWNlKTtcclxuICAgIHJldHVybiBgJHtkYXRlU3RhcnRQZXJpb2QudG9Mb2NhbGVTdHJpbmcoe1xyXG4gICAgICAgIGxvY2FsZSxcclxuICAgICAgICBtb250aDogXCJsb25nXCIsXHJcbiAgICAgICAgZGF5OiBcIjItZGlnaXRcIixcclxuICAgIH0pfSAtICR7ZGF0ZUVuZFBlcmlvZC50b0xvY2FsZVN0cmluZyh7XHJcbiAgICAgICAgbG9jYWxlLFxyXG4gICAgICAgIG1vbnRoOiBcImxvbmdcIixcclxuICAgICAgICBkYXk6IFwiMi1kaWdpdFwiLFxyXG4gICAgfSl9IGA7XHJcbn1cclxuXHJcblxyXG4vKipcclxuKiBSZXR1cm4gbG9jYWwgaW4gdGhlIGNhbm9uaWNhbCBmb3JtOiBcImVuLUdCXCIsIFwiZnItRlJcIlxyXG4qL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0TG9jYWxlTG9uZyh0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UpOiBzdHJpbmcge1xyXG4gICAgbGV0IGxhbmcgPSB0cmFuc2xhdGUuY3VycmVudExhbmdcclxuICAgICAgICA/IHRyYW5zbGF0ZS5jdXJyZW50TGFuZ1xyXG4gICAgICAgIDogdHJhbnNsYXRlLmRlZmF1bHRMYW5nO1xyXG5cclxuICAgIC8qKiBUcmFuc2Zvcm0gJ19mcicgdG8gJ2ZyJyAqL1xyXG4gICAgbGFuZyA9IGxhbmcuc2xpY2UoMSk7XHJcbiAgICBpZiAobGFuZyA9PT0gXCJlblwiKSB7XHJcbiAgICAgICAgcmV0dXJuIFwiZW4tR0JcIjtcclxuICAgIH1cclxuICAgIHJldHVybiBgJHtsYW5nfS0ke2xhbmcudG9VcHBlckNhc2UoKX1gO1xyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJuIGxvY2FsIGluIHRoZSBzaG9ydCBmb3JtOiBcImVuXCIsIFwiZnJcIlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldExvY2FsZVNob3J0KHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSk6IHN0cmluZyB7XHJcbiAgICBsZXQgbGFuZyA9IHRyYW5zbGF0ZS5jdXJyZW50TGFuZ1xyXG4gICAgICAgID8gdHJhbnNsYXRlLmN1cnJlbnRMYW5nXHJcbiAgICAgICAgOiB0cmFuc2xhdGUuZGVmYXVsdExhbmc7XHJcblxyXG4gICAgLyoqIFRyYW5zZm9ybSAnX2ZyJyB0byAnZnInICovXHJcbiAgICBsYW5nID0gbGFuZy5zbGljZSgxKTtcclxuICAgIHJldHVybiBsYW5nO1xyXG59XHJcblxyXG4vKipcclxuICogRm9ybWF0IHN0cmluZyB0byBsb3dlcmNhc2UsIG5vIHNwYWNlc1xyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHN0cmluZ1RvTG93ZXJjYXNlTm9TcGFjZXMoaW5wdXQ6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBjb25zdCB3b3JkcyA9IGlucHV0LnRvTG93ZXJDYXNlKCkuc3BsaXQoL1xccysvKTtcclxuICAgIHJldHVybiB3b3Jkcy5qb2luKFwiXCIpO1xyXG59XHJcblxyXG4vKipcclxuICogVGVzdCBpZiB0aGUgb2JqZWN0ID09PSB7fVxyXG4gKiBAcGFyYW0gb2JqIG9iamVjdCB7a2V5OnZhbHVlfVxyXG4gKiBAcmV0dXJucyBib29sZWFuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gaXNFbXB0eU9iamVjdChvYmplY3QpOiBib29sZWFuIHtcclxuICAgIGZvciAoY29uc3QgeCBpbiBvYmplY3QpIHtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdHJ1ZTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNodWZmbGVBcnJheShhcnJheTogYW55W10pIHtcclxuICAgIGNvbnN0IG5ld0FycmF5ID0gWy4uLmFycmF5XTtcclxuICAgIGZvciAobGV0IGluZGV4ID0gYXJyYXkubGVuZ3RoIC0gMTsgaW5kZXggPiAwOyBpbmRleC0tKSB7XHJcbiAgICAgICAgY29uc3QgaW5kZXhOZXcgPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAoaW5kZXggKyAxKSk7XHJcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXBhcmFtLXJlYXNzaWduXHJcbiAgICAgICAgW25ld0FycmF5W2luZGV4XSwgbmV3QXJyYXlbaW5kZXhOZXddXSA9IFtcclxuICAgICAgICAgICAgbmV3QXJyYXlbaW5kZXhOZXddLFxyXG4gICAgICAgICAgICBuZXdBcnJheVtpbmRleF0sXHJcbiAgICAgICAgXTtcclxuICAgIH1cclxuICAgIHJldHVybiBuZXdBcnJheTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG51bWJlclRvRGF0ZVN0cmluZyh0aW1lc3RhbXA6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICBjb25zdCBqc0RhdGUgPSBuZXcgRGF0ZSh0aW1lc3RhbXApO1xyXG4gICAgcmV0dXJuIGpzRGF0ZS50b0xvY2FsZVN0cmluZyhcImZyLUZSXCIpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZHVyYXRpb25Ub1N0cmluZyhcclxuICAgIGR1cmF0aW9uOiBudW1iZXIsXHJcbiAgICB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbik6IHN0cmluZyB7XHJcbiAgICBjb25zdCBkYXlzID0gTWF0aC5mbG9vcihkdXJhdGlvbiAvIDM2MDAgLyAyNCk7XHJcbiAgICBjb25zdCBob3VycyA9IE1hdGguZmxvb3IoKGR1cmF0aW9uIC0gZGF5cyAqIDI0ICogMzYwMCkgLyAzNjAwKTtcclxuICAgIGNvbnN0IG1pbnV0ZXMgPSBNYXRoLmZsb29yKChkdXJhdGlvbiAlIDM2MDApIC8gNjApO1xyXG4gICAgY29uc3Qgc2Vjb25kcyA9IE1hdGguZmxvb3IoZHVyYXRpb24gJSA2MCk7XHJcblxyXG4gICAgY29uc3QgZGF5c1N0cmluZyA9IHRyYW5zbGF0ZS5pbnN0YW50KFwiZGF5KHMpXCIpO1xyXG4gICAgY29uc3QgaG91cnNTdHJpbmcgPSB0cmFuc2xhdGUuaW5zdGFudChcImhvdXIocylcIik7XHJcbiAgICBjb25zdCBvbmVIb3VyU3RyaW5nID0gdHJhbnNsYXRlLmluc3RhbnQoXCJob3VyXCIpO1xyXG4gICAgY29uc3QgbWludXRlc1N0cmluZyA9IHRyYW5zbGF0ZS5pbnN0YW50KFwibWludXRlKHMpXCIpO1xyXG4gICAgY29uc3Qgc2Vjb25kc1N0cmluZyA9IHRyYW5zbGF0ZS5pbnN0YW50KFwic2Vjb25kKHMpXCIpO1xyXG5cclxuICAgIGlmIChkdXJhdGlvbiA+IDM2MDAgKiAyNCAqIDcpIHtcclxuICAgICAgICByZXR1cm4gYCR7ZGF5c30gJHtkYXlzU3RyaW5nfWA7XHJcbiAgICB9XHJcbiAgICBpZiAoZHVyYXRpb24gPiAzNjAwICogMjQpIHtcclxuICAgICAgICByZXR1cm4gYCR7ZGF5c30gJHtkYXlzU3RyaW5nfSAke2hvdXJzfSAke2hvdXJzU3RyaW5nfWA7XHJcbiAgICB9XHJcbiAgICBpZiAoZHVyYXRpb24gPT09IDM2MDApIHtcclxuICAgICAgICByZXR1cm4gYCR7aG91cnN9ICR7b25lSG91clN0cmluZ31gO1xyXG4gICAgfVxyXG4gICAgaWYgKGR1cmF0aW9uID4gMzYwMCkge1xyXG4gICAgICAgIGlmIChtaW51dGVzID09PSAwKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBgJHtob3Vyc30gJHtob3Vyc1N0cmluZ31gO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gYCR7aG91cnN9ICR7aG91cnNTdHJpbmd9ICR7bWludXRlc30gJHttaW51dGVzU3RyaW5nfWA7XHJcbiAgICB9XHJcbiAgICBpZiAoZHVyYXRpb24gPj0gNjApIHtcclxuICAgICAgICBpZiAoc2Vjb25kcyA9PT0gMCkge1xyXG4gICAgICAgICAgICByZXR1cm4gYCR7bWludXRlc30gJHttaW51dGVzU3RyaW5nfWA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBgJHttaW51dGVzfSAke21pbnV0ZXNTdHJpbmd9ICR7c2Vjb25kc30gJHtzZWNvbmRzU3RyaW5nfWA7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gYCR7c2Vjb25kc30gJHtzZWNvbmRzU3RyaW5nfWA7XHJcbn1cclxuXHJcblxyXG4iXX0=
|
|
470
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNtYXJ0ZXJwbGFuLWNvcmUvc3JjL2xpYi9oZWxwZXJzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDekcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDN0QsT0FBTyxFQUFxQixXQUFXLEVBQUUsTUFBTSxFQUFXLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV2RyxNQUFNLFVBQVUsMkJBQTJCLENBQUMsVUFBVSxFQUFFLFFBQVE7SUFDNUQsTUFBTSxFQUFFLEdBQUcsUUFBUSxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQ3JDLE1BQU0sRUFBRSxHQUFHLFFBQVEsQ0FBQyxDQUFDLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUNyQyxNQUFNLEVBQUUsR0FBRyxRQUFRLENBQUMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDckMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ3hELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDO0FBQzVDLENBQUM7QUFFRCxNQUFNLFVBQVUsZUFBZSxDQUFDLElBQWE7SUFDekMsUUFBUSxJQUFJLEVBQUUsQ0FBQztRQUNYLEtBQUssT0FBTyxDQUFDLFNBQVM7WUFDbEIsT0FBTyxXQUFXLENBQUM7UUFDdkIsS0FBSyxPQUFPLENBQUMsTUFBTTtZQUNmLE9BQU8sUUFBUSxDQUFDO1FBQ3BCLEtBQUssT0FBTyxD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RUFBRSxDQUFDO1lBQ2hCLE9BQU8sR0FBRyxPQUFPLElBQUksYUFBYSxFQUFFLENBQUM7UUFDekMsQ0FBQztRQUNELE9BQU8sR0FBRyxPQUFPLElBQUksYUFBYSxJQUFJLE9BQU8sSUFBSSxhQUFhLEVBQUUsQ0FBQztJQUNyRSxDQUFDO0lBQ0QsT0FBTyxHQUFHLE9BQU8sSUFBSSxhQUFhLEVBQUUsQ0FBQztBQUN6QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdiTW9kYWwgfSBmcm9tIFwiQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXBcIjtcclxuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XHJcbmltcG9ydCB7IE1vZGFsU3dpdGNoVmlzaXRDb21wb25lbnQgfSBmcm9tIFwiLi9jb21wb25lbnRzL21vZGFsLXN3aXRjaC12aXNpdC9tb2RhbC1zd2l0Y2gtdmlzaXQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IGRvd25sb2FkRmlsZUFzT2JqZWN0IH0gZnJvbSBcIi4vc2VydmljZXMvczMuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBFcXVpcG1lbnREb2N1bWVudCwgTGV2ZWxTdGF0dXMsIExvY2FsZSwgTWlzc2lvbiwgUG9pVHlwZSwgUm9sZVN0YXR1cyB9IGZyb20gXCIuL3R5cGVzLnNlcnZpY2VcIjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXREaXN0YW5jZUJldHdlZW5Ud29Qb2ludHMoc3RhcnRQb2ludCwgZW5kUG9pbnQpIHtcclxuICAgIGNvbnN0IGR4ID0gZW5kUG9pbnQueCAtIHN0YXJ0UG9pbnQueDtcclxuICAgIGNvbnN0IGR5ID0gZW5kUG9pbnQueSAtIHN0YXJ0UG9pbnQueTtcclxuICAgIGNvbnN0IGR6ID0gZW5kUG9pbnQueiAtIHN0YXJ0UG9pbnQuejtcclxuICAgIGNvbnN0IGRpc3RhbmNlID0gTWF0aC5zcXJ0KGR4ICogZHggKyBkeSAqIGR5ICsgZHogKiBkeik7XHJcbiAgICByZXR1cm4gTWF0aC5yb3VuZChkaXN0YW5jZSAqIDEwMCkgLyAxMDA7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBwb2lUeXBlVG9TdHJpbmcodHlwZTogUG9pVHlwZSk6IHN0cmluZyB7XHJcbiAgICBzd2l0Y2ggKHR5cGUpIHtcclxuICAgICAgICBjYXNlIFBvaVR5cGUuRVFVSVBNRU5UOlxyXG4gICAgICAgICAgICByZXR1cm4gXCJlcXVpcG1lbnRcIjtcclxuICAgICAgICBjYXNlIFBvaVR5cGUuVElDS0VUOlxyXG4gICAgICAgICAgICByZXR1cm4gXCJ0aWNrZXRcIjtcclxuICAgICAgICBjYXNlIFBvaVR5cGUuREFUQTpcclxuICAgICAgICAgICAgcmV0dXJuIFwiZGF0YVwiO1xyXG4gICAgICAgIGNhc2UgUG9pVHlwZS5ERVNLOlxyXG4gICAgICAgICAgICByZXR1cm4gXCJkYXRhXCI7XHJcbiAgICAgICAgY2FzZSBQb2lUeXBlLklORk9STUFUSU9OOlxyXG4gICAgICAgICAgICByZXR1cm4gXCJpbmZvcm1hdGlvblwiO1xyXG4gICAgICAgIGNhc2UgUG9pVHlwZS5NRUFTVVJFOlxyXG4gICAgICAgICAgICByZXR1cm4gXCJtZWFzdXJlXCI7XHJcbiAgICAgICAgY2FzZSBQb2lUeXBlLlBFT1BMRTpcclxuICAgICAgICAgICAgcmV0dXJuIFwicGVvcGxlXCI7XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmV0dXJuIFwidGlja2V0XCI7XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiB3YWl0KHRpbWVvdXQ6IG51bWJlcik6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XHJcbiAgICAgICAgdGltZW91dCA9IHRpbWVvdXQgfHwgMjAwMDtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgcmVzb2x2ZSgpO1xyXG4gICAgICAgIH0sIHRpbWVvdXQpO1xyXG4gICAgfSk7XHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCB3YWl0VW50aWwgPSAoY29uZGl0aW9uOiAoKSA9PiBib29sZWFuKSA9PiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGludGVydmFsSWQgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChjb25kaXRpb24oKSkge1xyXG4gICAgICAgICAgICAgICAgY2xlYXJJbnRlcnZhbChpbnRlcnZhbElkKTtcclxuICAgICAgICAgICAgICAgIHJlc29sdmUoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0sIDMwKTtcclxuICAgIH0pO1xyXG59O1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGVudW1Ub0FycmF5KGVudW1lcmFibGU6IGFueSkge1xyXG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKGVudW1lcmFibGUpXHJcbiAgICAgICAgLmZpbHRlcigodmFsdWUpID0+IGlzTmFOKE51bWJlcih2YWx1ZSkpID09PSB0cnVlKVxyXG4gICAgICAgIC5tYXAoKGtleSkgPT4gZW51bWVyYWJsZVtrZXldKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldExldmVsc0JlbG93KGxldmVsOiBMZXZlbFN0YXR1cyk6IExldmVsU3RhdHVzW10ge1xyXG4gICAgY29uc3QgYWxsID0gW1xyXG4gICAgICAgIExldmVsU3RhdHVzLk1JTklNVU0sXHJcbiAgICAgICAgTGV2ZWxTdGF0dXMuTE9XLFxyXG4gICAgICAgIExldmVsU3RhdHVzLk1FRElVTSxcclxuICAgICAgICBMZXZlbFN0YXR1cy5ISUdILFxyXG4gICAgICAgIExldmVsU3RhdHVzLk1BWElNVU0sXHJcbiAgICBdO1xyXG4gICAgc3dpdGNoIChsZXZlbCkge1xyXG4gICAgICAgIGNhc2UgTGV2ZWxTdGF0dXMuTUFYSU1VTTpcclxuICAgICAgICAgICAgcmV0dXJuIGFsbDtcclxuICAgICAgICBjYXNlIExldmVsU3RhdHVzLkhJR0g6XHJcbiAgICAgICAgICAgIGFsbC5zcGxpY2UoNCwgMSk7XHJcbiAgICAgICAgICAgIHJldHVybiBhbGw7XHJcbiAgICAgICAgY2FzZSBMZXZlbFN0YXR1cy5NRURJVU06XHJcbiAgICAgICAgICAgIGFsbC5zcGxpY2UoMywgMik7XHJcbiAgICAgICAgICAgIHJldHVybiBhbGw7XHJcbiAgICAgICAgY2FzZSBMZXZlbFN0YXR1cy5MT1c6XHJcbiAgICAgICAgICAgIHJldHVybiBbTGV2ZWxTdGF0dXMuTUlOSU1VTSwgTGV2ZWxTdGF0dXMuTE9XXTtcclxuICAgICAgICBjYXNlIExldmVsU3RhdHVzLk1JTklNVU06XHJcbiAgICAgICAgICAgIHJldHVybiBbTGV2ZWxTdGF0dXMuTUlOSU1VTV07XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgICAgcmV0dXJuIFtMZXZlbFN0YXR1cy5NSU5JTVVNXTtcclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldEhpZ2hlc3RMZXZlbEZvck1pc3Npb25zKG1pc3Npb25zOiBNaXNzaW9uW10pOiBMZXZlbFN0YXR1cyB7XHJcbiAgICBsZXQgbGF0ZXN0VmlzaWJsZUxldmVscyA9IFtMZXZlbFN0YXR1cy5NSU5JTVVNXTtcclxuICAgIGZvciAoY29uc3QgbSBvZiBtaXNzaW9ucykge1xyXG4gICAgICAgIGNvbnN0IHZpc2libGVMZXZlbHMgPSBnZXRMZXZlbHNCZWxvdyhtLmxldmVsKTtcclxuICAgICAgICBpZiAodmlzaWJsZUxldmVscy5sZW5ndGggPiBsYXRlc3RWaXNpYmxlTGV2ZWxzLmxlbmd0aCkge1xyXG4gICAgICAgICAgICBsYXRlc3RWaXNpYmxlTGV2ZWxzID0gdmlzaWJsZUxldmVscztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBzd2l0Y2ggKGxhdGVzdFZpc2libGVMZXZlbHMubGVuZ3RoKSB7XHJcbiAgICAgICAgY2FzZSAxOlxyXG4gICAgICAgICAgICByZXR1cm4gTGV2ZWxTdGF0dXMuTUlOSU1VTTtcclxuICAgICAgICBjYXNlIDI6XHJcbiAgICAgICAgICAgIHJldHVybiBMZXZlbFN0YXR1cy5MT1c7XHJcbiAgICAgICAgY2FzZSAzOlxyXG4gICAgICAgICAgICByZXR1cm4gTGV2ZWxTdGF0dXMuTUVESVVNO1xyXG4gICAgICAgIGNhc2UgNDpcclxuICAgICAgICAgICAgcmV0dXJuIExldmVsU3RhdHVzLkhJR0g7XHJcbiAgICAgICAgY2FzZSA1OlxyXG4gICAgICAgICAgICByZXR1cm4gTGV2ZWxTdGF0dXMuTUFYSU1VTTtcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICByZXR1cm4gTGV2ZWxTdGF0dXMuTUlOSU1VTTtcclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldEhpZ2hlc3RSb2xlRm9yTWlzc2lvbnMobWlzc2lvbnM6IE1pc3Npb25bXSk6IFJvbGVTdGF0dXMge1xyXG4gICAgbGV0IGhpZ2hlc3RSb2xlID0gUm9sZVN0YXR1cy5WSVNJVE9SO1xyXG4gICAgZm9yIChjb25zdCBtIG9mIG1pc3Npb25zKSB7XHJcbiAgICAgICAgaWYgKG0ucm9sZSA9PT0gUm9sZVN0YXR1cy5BRE1JTikge1xyXG4gICAgICAgICAgICByZXR1cm4gUm9sZVN0YXR1cy5BRE1JTjtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGhpZ2hlc3RSb2xlID09PSBSb2xlU3RhdHVzLk9XTkVSKSB7XHJcbiAgICAgICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAobS5yb2xlID09PSBSb2xlU3RhdHVzLk9XTkVSKSB7XHJcbiAgICAgICAgICAgIGhpZ2hlc3RSb2xlID0gUm9sZVN0YXR1cy5PV05FUjtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKG0ucm9sZSA9PT0gUm9sZVN0YXR1cy5NQU5BR0VSKSB7XHJcbiAgICAgICAgICAgIGhpZ2hlc3RSb2xlID0gUm9sZVN0YXR1cy5NQU5BR0VSO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgIG0ucm9sZSA9PT0gUm9sZVN0YXR1cy5TRVJWSUNFICYmXHJcbiAgICAgICAgICAgIGhpZ2hlc3RSb2xlICE9PSBSb2xlU3RhdHVzLk1BTkFHRVJcclxuICAgICAgICApIHtcclxuICAgICAgICAgICAgaGlnaGVzdFJvbGUgPSBSb2xlU3RhdHVzLlNFUlZJQ0U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgICAgbS5yb2xlID09PSBSb2xlU3RhdHVzLk9DQ1VQQU5UICYmXHJcbiAgICAgICAgICAgIGhpZ2hlc3RSb2xlID09PSBSb2xlU3RhdHVzLlZJU0lUT1JcclxuICAgICAgICApIHtcclxuICAgICAgICAgICAgaGlnaGVzdFJvbGUgPSBSb2xlU3RhdHVzLk9DQ1VQQU5UO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAobS5yb2xlID09PSBSb2xlU3RhdHVzLkdVSURFX01VU0VVTSkge1xyXG4gICAgICAgICAgICBoaWdoZXN0Um9sZSA9IFJvbGVTdGF0dXMuR1VJREVfTVVTRVVNO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAobS5yb2xlID09PSBSb2xlU3RhdHVzLlZJU0lUT1JfTVVTRVVNKSB7XHJcbiAgICAgICAgICAgIGhpZ2hlc3RSb2xlID0gUm9sZVN0YXR1cy5WSVNJVE9SX01VU0VVTTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gaGlnaGVzdFJvbGU7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRSb2xlc0JlbG93Rm9yTWFuYWdlcihyb2xlOiBSb2xlU3RhdHVzKTogUm9sZVN0YXR1c1tdIHtcclxuICAgIGNvbnN0IGFsbCA9IFtcclxuICAgICAgICBSb2xlU3RhdHVzLlZJU0lUT1IsXHJcbiAgICAgICAgUm9sZVN0YXR1cy5PQ0NVUEFOVCxcclxuICAgICAgICBSb2xlU3RhdHVzLlNFUlZJQ0UsXHJcbiAgICAgICAgUm9sZVN0YXR1cy5NQU5BR0VSLFxyXG4gICAgICAgIFJvbGVTdGF0dXMuT1dORVIsXHJcbiAgICAgICAgUm9sZVN0YXR1cy5BRE1JTixcclxuICAgIF07XHJcbiAgICBjb25zdCBtdXNldW0gPSBbUm9sZVN0YXR1cy5WSVNJVE9SX01VU0VVTSwgUm9sZVN0YXR1cy5HVUlERV9NVVNFVU1dO1xyXG4gICAgc3dpdGNoIChyb2xlKSB7XHJcbiAgICAgICAgY2FzZSBSb2xlU3RhdHVzLkFETUlOOlxyXG4gICAgICAgICAgICByZXR1cm4gWy4uLmFsbCwgLi4ubXVzZXVtXTtcclxuICAgICAgICBjYXNlIFJvbGVTdGF0dXMuT1dORVI6XHJcbiAgICAgICAgICAgIGFsbC5zcGxpY2UoNSwgMSk7XHJcbiAgICAgICAgICAgIHJldHVybiBhbGw7XHJcbiAgICAgICAgY2FzZSBSb2xlU3RhdHVzLk1BTkFHRVI6XHJcbiAgICAgICAgICAgIGFsbC5zcGxpY2UoNCwgMik7XHJcbiAgICAgICAgICAgIHJldHVybiBhbGw7XHJcbiAgICAgICAgY2FzZSBSb2xlU3RhdHVzLkdVSURFX01VU0VVTTpcclxuICAgICAgICAgICAgcmV0dXJuIG11c2V1bTtcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICByZXR1cm4gYWxsLnNwbGljZSg0LCAyKTtcclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGZpbHRlclVuaXF1ZUFycmF5QnlJRChhcnJheU9mT2JqZWN0czogYW55W10pOiBhbnlbXSB7XHJcbiAgICByZXR1cm4gYXJyYXlPZk9iamVjdHMuZmlsdGVyKFxyXG4gICAgICAgICh2LCBpbmRleCwgYSkgPT4gYS5maW5kSW5kZXgoKHQpID0+IHQuaWQgPT09IHYuaWQpID09PSBpbmRleCxcclxuICAgICk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVOdWxsS2V5c0Zyb21PYmplY3Qob2JqZWN0OiBPYmplY3QpIHtcclxuICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKG9iamVjdCkpIHtcclxuICAgICAgICBpZiAob2JqZWN0W2tleV0gPT09IG51bGwpIHtcclxuICAgICAgICAgICAgZGVsZXRlIG9iamVjdFtrZXldO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIFRlc3QgaWYgYSBkYXRlIGhhcyBleHBpcmVkXHJcbiAqIEBwYXJhbSBkYXRlXHJcbiAqIEByZXR1cm5zIHRydWUgaWYgdGhlIGRhdGUgaGFzIGV4cGlyZWQsIGZhbHNlIG90aGVyd2lzZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGRhdGVIYXNFeHBpcmVkKFxyXG4gICAgZGF0ZTogc3RyaW5nIHwgRGF0ZSB8IG51bWJlciB8IG51bGwgfCB1bmRlZmluZWQsXHJcbik6IGJvb2xlYW4ge1xyXG4gICAgaWYgKGRhdGUpIHtcclxuICAgICAgICByZXR1cm4gbmV3IERhdGUoZGF0ZSkgPD0gbmV3IERhdGUoKTtcclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHN0cmluZ0xvY2FsZVRvRW51bShsb2NhbGU6IHN0cmluZyk6IExvY2FsZSB7XHJcbiAgICBzd2l0Y2ggKGxvY2FsZSkge1xyXG4gICAgICAgIGNhc2UgXCJlblwiOlxyXG4gICAgICAgICAgICByZXR1cm4gTG9jYWxlLkVOO1xyXG4gICAgICAgIGNhc2UgXCJmclwiOlxyXG4gICAgICAgICAgICByZXR1cm4gTG9jYWxlLkZSO1xyXG4gICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgIHJldHVybiBMb2NhbGUuRU47XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0TWV0YUZvckltYWdlKHVybCk6IFByb21pc2U8YW55PiB7XHJcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgIGNvbnN0IGltZyA9IG5ldyBJbWFnZSgpO1xyXG5cclxuICAgICAgICBpbWcuYWRkRXZlbnRMaXN0ZW5lcihcImxvYWRcIiwgKCkgPT4ge1xyXG4gICAgICAgICAgICByZXNvbHZlKGltZyk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgaW1nLmFkZEV2ZW50TGlzdGVuZXIoXCJlcnJvclwiLCAoKSA9PiByZWplY3QoKSk7XHJcbiAgICAgICAgaW1nLnNyYyA9IHVybDtcclxuICAgIH0pO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc29ydEFscGhhYmV0aWNhbGx5T25OYW1lKGFycmF5OiB7IG5hbWU6IHN0cmluZzsgfVtdKTogYW55W10ge1xyXG4gICAgcmV0dXJuIGFycmF5LnNvcnQoKGEsIGIpID0+IGEubmFtZS5sb2NhbGVDb21wYXJlKGIubmFtZSkpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRFbWFpbChlbWFpbDogc3RyaW5nKSB7XHJcbiAgICBjb25zdCByZSA9XHJcbiAgICAgICAgL14oKFteXFxzXCIoKSwuOjs8PkBbXFxcXFxcXV0rKFxcLlteXFxzXCIoKSwuOjs8PkBbXFxcXFxcXV0rKSopfChcIi4rXCIpKUAoKFxcWyg/OlxcZHsxLDN9XFwuKXszfVxcZHsxLDN9XSl8KChbXFxkQS1aYS16XFwtXStcXC4pK1tBLVphLXpdezIsfSkpJC87XHJcbiAgICByZXR1cm4gcmUudGVzdChlbWFpbCk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBkb3dubG9hZEJsb2IoYmxvYiwgZmlsZW5hbWUpIHtcclxuICAgIGNvbnN0IHVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7XHJcbiAgICBjb25zdCBhID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImFcIik7XHJcbiAgICBhLmhyZWYgPSB1cmw7XHJcbiAgICBhLmRvd25sb2FkID0gZmlsZW5hbWUgfHwgXCJkb3dubG9hZFwiO1xyXG4gICAgY29uc3QgY2xpY2tIYW5kbGVyID0gKCkgPT4ge1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICBVUkwucmV2b2tlT2JqZWN0VVJMKHVybCk7XHJcbiAgICAgICAgICAgIGEucmVtb3ZlRXZlbnRMaXN0ZW5lcihcImNsaWNrXCIsIGNsaWNrSGFuZGxlcik7XHJcbiAgICAgICAgfSwgMTUwKTtcclxuICAgIH07XHJcbiAgICBhLmFkZEV2ZW50TGlzdGVuZXIoXCJjbGlja1wiLCBjbGlja0hhbmRsZXIsIGZhbHNlKTtcclxuICAgIGEuY2xpY2soKTtcclxuICAgIHJldHVybiBhO1xyXG59XHJcblxyXG4vKlxyXG4gICAgT3BlbiBtb2RhbCBpZiBvbmUgaGFzIHRvIHN3aXRjaCB2aXJ0dWFsIHZpc2l0XHJcbiovXHJcbmV4cG9ydCBmdW5jdGlvbiBvcGVuTW9kYWxGb3JWaXNpdFN3aXRjaChcclxuICAgIG1vZGFsU2VydmljZTogTmdiTW9kYWwsXHJcbiAgICBtb2RlbDNEOiBzdHJpbmcsXHJcbiAgICBzcGFjZUlEOiBzdHJpbmcsXHJcbiAgICBkYXRhVG9Nb3ZlOiB7IHN3ZWVwVG9Nb3ZlOiBzdHJpbmcsIHJvdGF0aW9uOiBhbnk7IH0gfCBudWxsID0gbnVsbFxyXG4pIHtcclxuICAgIGNvbnN0IG1vZGFsUmVmZXJlbmNlID0gbW9kYWxTZXJ2aWNlLm9wZW4oTW9kYWxTd2l0Y2hWaXNpdENvbXBvbmVudCk7XHJcbiAgICBtb2RhbFJlZmVyZW5jZS5jb21wb25lbnRJbnN0YW5jZS5jb250ZW50ID1cclxuICAgICAgICBcIlRoaXMgb2JqZWN0IGJlbG9uZ3MgdG8gYW5vdGhlciAzRCB2aXNpdC4gQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHN3aXRjaCB0aGUgdmlzaXQ/XCI7XHJcbiAgICBtb2RhbFJlZmVyZW5jZS5jb21wb25lbnRJbnN0YW5jZS5tb2RlbDNEID0gbW9kZWwzRDtcclxuICAgIG1vZGFsUmVmZXJlbmNlLmNvbXBvbmVudEluc3RhbmNlLnNwYWNlSUQgPSBzcGFjZUlEO1xyXG4gICAgaWYgKGRhdGFUb01vdmUpIHtcclxuICAgICAgICBtb2RhbFJlZmVyZW5jZS5jb21wb25lbnRJbnN0YW5jZS5kYXRhVG9Nb3ZlID0gZGF0YVRvTW92ZTtcclxuICAgIH1cclxuXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gYSBzdHJpbmcgb2YgYSBnaXZlbiBkYXRlIHRpbWUgaW4gbG9jYWwgZm9ybWF0LlxyXG4gKiBUaGUgZm9ybWF0IGlzIGRldGVybWluZWQgYnkgdGhlIGN1cnJlbnQgbGFuZ3VhZ2UuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZGF0ZVRpbWVUb0xvY2FsU3RyaW5nKFxyXG4gICAgZGF0ZTogbnVtYmVyIHwgc3RyaW5nIHwgRGF0ZSxcclxuICAgIHRyYW5zbGF0ZT86IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICBtb2RlPyxcclxuKTogc3RyaW5nIHtcclxuICAgIGxldCBsYW5nID0gXCJlbi1FTlwiO1xyXG4gICAgaWYgKHRyYW5zbGF0ZSkge1xyXG4gICAgICAgIC8qKiBHZXQgY3VycmVudCBsYW5ndWFnZSAqL1xyXG4gICAgICAgIGxhbmcgPSB0cmFuc2xhdGUuY3VycmVudExhbmdcclxuICAgICAgICAgICAgPyB0cmFuc2xhdGUuY3VycmVudExhbmdcclxuICAgICAgICAgICAgOiB0cmFuc2xhdGUuZGVmYXVsdExhbmc7XHJcbiAgICAgICAgLyoqIFRyYW5zZm9ybWUgJ19mcicgdG8gJ2ZyJyAqL1xyXG4gICAgICAgIGlmIChsYW5nKSB7XHJcbiAgICAgICAgICAgIGxhbmcgPSBsYW5nLnNsaWNlKDEpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gICAgbGV0IG9wdGlvbnM6IHtcclxuICAgICAgICBtb250aD87XHJcbiAgICAgICAgeWVhcj87XHJcbiAgICAgICAgZGF5PztcclxuICAgICAgICBob3VyPztcclxuICAgICAgICBtaW51dGU/O1xyXG4gICAgICAgIHNlY29uZD87XHJcbiAgICAgICAgZGF0ZVN0eWxlPztcclxuICAgICAgICB0aW1lU3R5bGU/O1xyXG4gICAgICAgIHdlZWtkYXk/O1xyXG4gICAgICAgIHRpbWVab25lPztcclxuICAgICAgICB0aW1lWm9uZU5hbWU/O1xyXG4gICAgfTtcclxuICAgIHN3aXRjaCAobW9kZSkge1xyXG4gICAgICAgIGNhc2UgXCJkYXlfbnVtZXJpY1wiOlxyXG4gICAgICAgICAgICBvcHRpb25zID0geyBkYXk6IFwibnVtZXJpY1wiIH07XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgXCJkYXlcIjpcclxuICAgICAgICAgICAgb3B0aW9ucyA9IHsgd2Vla2RheTogXCJsb25nXCIgfTtcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSBcImRhdGVcIjpcclxuICAgICAgICAgICAgb3B0aW9ucyA9IHsgZGF0ZVN0eWxlOiBcImxvbmdcIiB9O1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlIFwic2hvcnRfZGF0ZV90aW1lXCI6XHJcbiAgICAgICAgICAgIG9wdGlvbnMgPSB7XHJcbiAgICAgICAgICAgICAgICB5ZWFyOiBcIjItZGlnaXRcIixcclxuICAgICAgICAgICAgICAgIG1vbnRoOiBcIjItZGlnaXRcIixcclxuICAgICAgICAgICAgICAgIGRheTogXCIyLWRpZ2l0XCIsXHJcbiAgICAgICAgICAgICAgICBob3VyOiBcIjItZGlnaXRcIixcclxuICAgICAgICAgICAgICAgIG1pbnV0ZTogXCIyLWRpZ2l0XCIsXHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgXCJ0aW1lXCI6XHJcbiAgICAgICAgICAgIG9wdGlvbnMgPSB7IGhvdXI6IFwibnVtZXJpY1wiLCBtaW51dGU6IFwibnVtZXJpY1wiIH07XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgXCJkYXlfdGltZV96b25lXCI6XHJcbiAgICAgICAgICAgIG9wdGlvbnMgPSB7XHJcbiAgICAgICAgICAgICAgICB3ZWVrZGF5OiBcImxvbmdcIixcclxuICAgICAgICAgICAgICAgIHllYXI6IFwibnVtZXJpY1wiLFxyXG4gICAgICAgICAgICAgICAgbW9udGg6IFwibG9uZ1wiLFxyXG4gICAgICAgICAgICAgICAgZGF5OiBcIm51bWVyaWNcIixcclxuICAgICAgICAgICAgICAgIGhvdXI6IFwibnVtZXJpY1wiLFxyXG4gICAgICAgICAgICAgICAgbWludXRlOiBcIm51bWVyaWNcIixcclxuICAgICAgICAgICAgICAgIHRpbWVab25lTmFtZTogXCJzaG9ydE9mZnNldFwiLFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICBvcHRpb25zID0ge1xyXG4gICAgICAgICAgICAgICAgZGF0ZVN0eWxlOiBcImxvbmdcIixcclxuICAgICAgICAgICAgICAgIHRpbWVTdHlsZTogXCJzaG9ydFwiLFxyXG4gICAgICAgICAgICB9O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG5ldyBEYXRlKGRhdGUpLnRvTG9jYWxlU3RyaW5nKGxhbmcsIG9wdGlvbnMpO1xyXG59XHJcblxyXG4vKipcclxuICogQ29tcGFyZXMgdHdvIHN0cmluZyBhcnJheXNcclxuICogQHBhcmFtIGFycmF5MVxyXG4gKiBAcGFyYW0gYXJyYXkyXHJcbiAqIEByZXR1cm5zXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gYXJyYXlzQ29udGFpblNhbWVFbGVtZW50cyhcclxuICAgIGFycmF5MTogc3RyaW5nW10sXHJcbiAgICBhcnJheTI6IHN0cmluZ1tdLFxyXG4pOiBib29sZWFuIHtcclxuICAgIGFycmF5MS5zb3J0KCk7XHJcbiAgICBhcnJheTIuc29ydCgpO1xyXG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KGFycmF5MSkgPT09IEpTT04uc3RyaW5naWZ5KGFycmF5Mik7XHJcbn1cclxuXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0VmlzaXRVcmwoY3VycmVudFVybDogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IHBhdGggPSBjdXJyZW50VXJsLnNwbGl0KFwiL1wiKTtcclxuICAgIHBhdGguc3BsaWNlKDMsIHBhdGgubGVuZ3RoIC0gMik7XHJcbiAgICByZXR1cm4gcGF0aC5qb2luKFwiL1wiKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEV4dHJhY3Qgc3BhY2VJRCBmcm9tIHVybCB3aGVuIGluIHZpc2l0IDNEXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0U3BhY2VJREZyb21VcmwodXJsOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3QgdmlzaXRVcmwgPSBnZXRWaXNpdFVybCh1cmwpO1xyXG4gICAgcmV0dXJuIHZpc2l0VXJsLnNwbGl0KFwiL1wiKVsyXTtcclxufVxyXG5cclxuLyoqXHJcbiAqIERvd25sb2FkIHJlbGF0ZWRcclxuICovXHJcbmltcG9ydCAqIGFzIEZpbGVTYXZlciBmcm9tIFwiZmlsZS1zYXZlclwiO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGRvd25sb2FkRmlsZShmaWxlVXJsOiBzdHJpbmcsIGZpbGVOYW1lOiBzdHJpbmcpIHtcclxuICAgIEZpbGVTYXZlci5zYXZlQXMoZmlsZVVybCArIGZpbGVOYW1lLCBmaWxlTmFtZSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBvcGVuRG9jdW1lbnQoZmlsZVVybDogc3RyaW5nLCBmaWxlTmFtZTogc3RyaW5nLCBpZDogbnVtYmVyKSB7XHJcbiAgICB3aW5kb3cub3BlbihgJHtmaWxlVXJsICsgZmlsZU5hbWV9I2RvYz0ke2lkfWAsIFwiX2JsYW5rXCIsIFwiXCIpO1xyXG59XHJcblxyXG5leHBvcnQgY29uc3QgZG93bmxvYWRFcXVpcG1lbnREb2N1bWVudCA9IGFzeW5jIChcclxuICAgIGRvY3VtZW50XzogRXF1aXBtZW50RG9jdW1lbnQsXHJcbik6IFByb21pc2U8T2JqZWN0IHwgdm9pZD4gPT4ge1xyXG4gICAgY29uc3Qgc2lnbmVkRmlsZSA9IGF3YWl0IGRvd25sb2FkRmlsZUFzT2JqZWN0KGRvY3VtZW50Xy51cmwpO1xyXG4gICAgaWYgKHNpZ25lZEZpbGUpIHtcclxuICAgICAgICAvLyBAdHMtaWdub3JlXHJcbiAgICAgICAgZG93bmxvYWRCbG9iKHNpZ25lZEZpbGUuQm9keSwgZG9jdW1lbnRfLmZpbGVuYW1lKTtcclxuICAgIH1cclxufTtcclxuXHJcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjaGVja0VsZW1lbnRCeUlkKHNlbGVjdG9yKSB7XHJcbiAgICBsZXQgcXVlcnlTZWxlY3RvciA9IG51bGw7XHJcbiAgICB3aGlsZSAocXVlcnlTZWxlY3RvciA9PT0gbnVsbCkge1xyXG4gICAgICAgIGF3YWl0IHJhZkFzeW5jKCk7XHJcbiAgICAgICAgcXVlcnlTZWxlY3RvciA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHNlbGVjdG9yKTtcclxuICAgIH1cclxuICAgIHJldHVybiBxdWVyeVNlbGVjdG9yO1xyXG59XHJcblxyXG5mdW5jdGlvbiByYWZBc3luYygpIHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xyXG4gICAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZShyZXNvbHZlKTsgLy8gZmFzdGVyIHRoYW4gc2V0IHRpbWUgb3V0XHJcbiAgICB9KTtcclxufVxyXG5cclxuLyogQHBhcmFtIHtBcnJheX0gbnVtYmVycyBBbiBhcnJheSBvZiBudW1iZXJzLlxyXG4gKiBAcmV0dXJuIHtOdW1iZXJ9IFRoZSBjYWxjdWxhdGVkIGF2ZXJhZ2UgKG9yIG1lYW4pIHZhbHVlIGZyb20gdGhlIHNwZWNpZmllZFxyXG4gKiAgICAgbnVtYmVycy5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBtZWFuKG51bWJlcnM6IG51bWJlcltdKSB7XHJcbiAgICBsZXQgdG90YWwgPSAwO1xyXG4gICAgZm9yIChjb25zdCBudW1iZXIgb2YgbnVtYmVycykge1xyXG4gICAgICAgIHRvdGFsICs9IG51bWJlcjtcclxuICAgIH1cclxuICAgIHJldHVybiB0b3RhbCAvIG51bWJlcnMubGVuZ3RoO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY29udmVydFRpbWVzdGFtcFRvTG9jYWxab25lKHRpbWVzdGFtcDogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgIGNvbnN0IHNlbGVjdGVkRGF0ZSA9IG5ldyBEYXRlKHRpbWVzdGFtcCk7XHJcbiAgICBjb25zdCBsb2NhbE9mZnNldCA9IC0xICogc2VsZWN0ZWREYXRlLmdldFRpbWV6b25lT2Zmc2V0KCkgKiA2MDAwMDtcclxuICAgIGNvbnN0IHN0YW1wID0gdGltZXN0YW1wICsgbG9jYWxPZmZzZXQ7XHJcbiAgICByZXR1cm4gc3RhbXA7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gc3RyaW5nIGZvciBwZXJpb2Qgb2YgdGltZS4gUGFyYW1ldGVycyBhcmUgRGF0ZVRpbWUgb2JqZWN0cyBvZiBsdXhvbiBsaWJyYXJ5LlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHRyYW5zbGF0ZURhdGVQZXJpb2QoXHJcbiAgICB0cmFuc2xhdGVTZXJ2aWNlOiBhbnksXHJcbiAgICBkYXRlU3RhcnRQZXJpb2Q6IGFueSxcclxuICAgIGRhdGVFbmRQZXJpb2Q6IGFueSxcclxuKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IGxvY2FsZSA9IGdldExvY2FsZUxvbmcodHJhbnNsYXRlU2VydmljZSk7XHJcbiAgICByZXR1cm4gYCR7ZGF0ZVN0YXJ0UGVyaW9kLnRvTG9jYWxlU3RyaW5nKHtcclxuICAgICAgICBsb2NhbGUsXHJcbiAgICAgICAgbW9udGg6IFwibG9uZ1wiLFxyXG4gICAgICAgIGRheTogXCIyLWRpZ2l0XCIsXHJcbiAgICB9KX0gLSAke2RhdGVFbmRQZXJpb2QudG9Mb2NhbGVTdHJpbmcoe1xyXG4gICAgICAgIGxvY2FsZSxcclxuICAgICAgICBtb250aDogXCJsb25nXCIsXHJcbiAgICAgICAgZGF5OiBcIjItZGlnaXRcIixcclxuICAgIH0pfSBgO1xyXG59XHJcblxyXG5cclxuLyoqXHJcbiogUmV0dXJuIGxvY2FsIGluIHRoZSBjYW5vbmljYWwgZm9ybTogXCJlbi1HQlwiLCBcImZyLUZSXCJcclxuKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldExvY2FsZUxvbmcodHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlKTogc3RyaW5nIHtcclxuICAgIGxldCBsYW5nID0gdHJhbnNsYXRlLmN1cnJlbnRMYW5nXHJcbiAgICAgICAgPyB0cmFuc2xhdGUuY3VycmVudExhbmdcclxuICAgICAgICA6IHRyYW5zbGF0ZS5kZWZhdWx0TGFuZztcclxuXHJcbiAgICAvKiogVHJhbnNmb3JtICdfZnInIHRvICdmcicgKi9cclxuICAgIGxhbmcgPSBsYW5nLnNsaWNlKDEpO1xyXG4gICAgaWYgKGxhbmcgPT09IFwiZW5cIikge1xyXG4gICAgICAgIHJldHVybiBcImVuLUdCXCI7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gYCR7bGFuZ30tJHtsYW5nLnRvVXBwZXJDYXNlKCl9YDtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybiBsb2NhbCBpbiB0aGUgc2hvcnQgZm9ybTogXCJlblwiLCBcImZyXCJcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRMb2NhbGVTaG9ydCh0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UpOiBzdHJpbmcge1xyXG4gICAgbGV0IGxhbmcgPSB0cmFuc2xhdGUuY3VycmVudExhbmdcclxuICAgICAgICA/IHRyYW5zbGF0ZS5jdXJyZW50TGFuZ1xyXG4gICAgICAgIDogdHJhbnNsYXRlLmRlZmF1bHRMYW5nO1xyXG5cclxuICAgIC8qKiBUcmFuc2Zvcm0gJ19mcicgdG8gJ2ZyJyAqL1xyXG4gICAgbGFuZyA9IGxhbmcuc2xpY2UoMSk7XHJcbiAgICByZXR1cm4gbGFuZztcclxufVxyXG5cclxuLyoqXHJcbiAqIEZvcm1hdCBzdHJpbmcgdG8gbG93ZXJjYXNlLCBubyBzcGFjZXNcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBzdHJpbmdUb0xvd2VyY2FzZU5vU3BhY2VzKGlucHV0OiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgY29uc3Qgd29yZHMgPSBpbnB1dC50b0xvd2VyQ2FzZSgpLnNwbGl0KC9cXHMrLyk7XHJcbiAgICByZXR1cm4gd29yZHMuam9pbihcIlwiKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFRlc3QgaWYgdGhlIG9iamVjdCA9PT0ge31cclxuICogQHBhcmFtIG9iaiBvYmplY3Qge2tleTp2YWx1ZX1cclxuICogQHJldHVybnMgYm9vbGVhblxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGlzRW1wdHlPYmplY3Qob2JqZWN0KTogYm9vbGVhbiB7XHJcbiAgICBmb3IgKGNvbnN0IHggaW4gb2JqZWN0KSB7XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRydWU7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzaHVmZmxlQXJyYXkoYXJyYXk6IGFueVtdKSB7XHJcbiAgICBjb25zdCBuZXdBcnJheSA9IFsuLi5hcnJheV07XHJcbiAgICBmb3IgKGxldCBpbmRleCA9IGFycmF5Lmxlbmd0aCAtIDE7IGluZGV4ID4gMDsgaW5kZXgtLSkge1xyXG4gICAgICAgIGNvbnN0IGluZGV4TmV3ID0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogKGluZGV4ICsgMSkpO1xyXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wYXJhbS1yZWFzc2lnblxyXG4gICAgICAgIFtuZXdBcnJheVtpbmRleF0sIG5ld0FycmF5W2luZGV4TmV3XV0gPSBbXHJcbiAgICAgICAgICAgIG5ld0FycmF5W2luZGV4TmV3XSxcclxuICAgICAgICAgICAgbmV3QXJyYXlbaW5kZXhdLFxyXG4gICAgICAgIF07XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbmV3QXJyYXk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBudW1iZXJUb0RhdGVTdHJpbmcodGltZXN0YW1wOiBudW1iZXIpOiBzdHJpbmcge1xyXG4gICAgY29uc3QganNEYXRlID0gbmV3IERhdGUodGltZXN0YW1wKTtcclxuICAgIHJldHVybiBqc0RhdGUudG9Mb2NhbGVTdHJpbmcoXCJmci1GUlwiKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGR1cmF0aW9uVG9TdHJpbmcoXHJcbiAgICBkdXJhdGlvbjogbnVtYmVyLFxyXG4gICAgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxyXG4pOiBzdHJpbmcge1xyXG4gICAgY29uc3QgZGF5cyA9IE1hdGguZmxvb3IoZHVyYXRpb24gLyAzNjAwIC8gMjQpO1xyXG4gICAgY29uc3QgaG91cnMgPSBNYXRoLmZsb29yKChkdXJhdGlvbiAtIGRheXMgKiAyNCAqIDM2MDApIC8gMzYwMCk7XHJcbiAgICBjb25zdCBtaW51dGVzID0gTWF0aC5mbG9vcigoZHVyYXRpb24gJSAzNjAwKSAvIDYwKTtcclxuICAgIGNvbnN0IHNlY29uZHMgPSBNYXRoLmZsb29yKGR1cmF0aW9uICUgNjApO1xyXG5cclxuICAgIGNvbnN0IGRheXNTdHJpbmcgPSB0cmFuc2xhdGUuaW5zdGFudChcImRheShzKVwiKTtcclxuICAgIGNvbnN0IGhvdXJzU3RyaW5nID0gdHJhbnNsYXRlLmluc3RhbnQoXCJob3VyKHMpXCIpO1xyXG4gICAgY29uc3Qgb25lSG91clN0cmluZyA9IHRyYW5zbGF0ZS5pbnN0YW50KFwiaG91clwiKTtcclxuICAgIGNvbnN0IG1pbnV0ZXNTdHJpbmcgPSB0cmFuc2xhdGUuaW5zdGFudChcIm1pbnV0ZShzKVwiKTtcclxuICAgIGNvbnN0IHNlY29uZHNTdHJpbmcgPSB0cmFuc2xhdGUuaW5zdGFudChcInNlY29uZChzKVwiKTtcclxuXHJcbiAgICBpZiAoZHVyYXRpb24gPiAzNjAwICogMjQgKiA3KSB7XHJcbiAgICAgICAgcmV0dXJuIGAke2RheXN9ICR7ZGF5c1N0cmluZ31gO1xyXG4gICAgfVxyXG4gICAgaWYgKGR1cmF0aW9uID4gMzYwMCAqIDI0KSB7XHJcbiAgICAgICAgcmV0dXJuIGAke2RheXN9ICR7ZGF5c1N0cmluZ30gJHtob3Vyc30gJHtob3Vyc1N0cmluZ31gO1xyXG4gICAgfVxyXG4gICAgaWYgKGR1cmF0aW9uID09PSAzNjAwKSB7XHJcbiAgICAgICAgcmV0dXJuIGAke2hvdXJzfSAke29uZUhvdXJTdHJpbmd9YDtcclxuICAgIH1cclxuICAgIGlmIChkdXJhdGlvbiA+IDM2MDApIHtcclxuICAgICAgICBpZiAobWludXRlcyA9PT0gMCkge1xyXG4gICAgICAgICAgICByZXR1cm4gYCR7aG91cnN9ICR7aG91cnNTdHJpbmd9YDtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGAke2hvdXJzfSAke2hvdXJzU3RyaW5nfSAke21pbnV0ZXN9ICR7bWludXRlc1N0cmluZ31gO1xyXG4gICAgfVxyXG4gICAgaWYgKGR1cmF0aW9uID49IDYwKSB7XHJcbiAgICAgICAgaWYgKHNlY29uZHMgPT09IDApIHtcclxuICAgICAgICAgICAgcmV0dXJuIGAke21pbnV0ZXN9ICR7bWludXRlc1N0cmluZ31gO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gYCR7bWludXRlc30gJHttaW51dGVzU3RyaW5nfSAke3NlY29uZHN9ICR7c2Vjb25kc1N0cmluZ31gO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGAke3NlY29uZHN9ICR7c2Vjb25kc1N0cmluZ31gO1xyXG59XHJcblxyXG5cclxuIl19
|
|
@@ -63,4 +63,4 @@ export const hlsLoaderType = 'mp.hlsLoader';
|
|
|
63
63
|
export function makeHlsLoader() {
|
|
64
64
|
return new HlsLoader();
|
|
65
65
|
}
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSGxzTG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNtYXJ0ZXJwbGFuLWNvcmUvc3JjL2xpYi9tYXR0ZXJwb3J0LWV4dGVuc2lvbnMvaHNsLWxvYWRlci9IbHNMb2FkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBbUIsTUFBTSxxQ0FBcUMsQ0FBQztBQUV0RixhQUFhO0FBQ2IsT0FBTyxHQUFHLE1BQU0sUUFBUSxDQUFDO0FBWXpCLE1BQU0sT0FBTyxTQUFVLFNBQVEsY0FBYztJQUNuQyxLQUFLLEdBQTRCLElBQUksQ0FBQztJQUN0QyxPQUFPLEdBQXdCLElBQUksQ0FBQztJQUNwQyxHQUFHLEdBQWUsSUFBSSxDQUFDO0lBRXRCLE1BQU0sR0FBVztRQUN4QixHQUFHLEVBQUUsaUNBQWlDO1FBQ3RDLE9BQU8sRUFBRSxJQUFJO0tBQ2QsQ0FBQTtJQUVRLE9BQU8sR0FBRztRQUNqQixLQUFLLEVBQUUsSUFBSTtRQUNYLE1BQU0sRUFBRSxDQUFDO0tBQ0MsQ0FBQztJQUVKLE1BQU0sQ0FBQyxZQUEyQjtRQUN6QyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxZQUFZLENBQUM7UUFDbEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEdBQUcsR0FBRyxHQUFDLEdBQUcsQ0FBQztRQUM5QixJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3JCLENBQUM7SUFDSCxDQUFDO0lBRVEsZUFBZTtRQUV0QixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVRLFNBQVM7UUFDaEIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVPLGtCQUFrQjtRQUN4QixNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzlDLEtBQUssQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1FBQ2hDLEtBQUssQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3BDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ25DLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3JDLEtBQUssQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDO1FBQ25CLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVPLFdBQVc7UUFDakIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFFeEIsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7WUFDdkMsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ3JCLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDckMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2pDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsZUFBZSxFQUFFLEdBQUcsRUFBRTtnQkFDM0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztZQUNsQyxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLElBQUksSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1lBQ2IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQztRQUNsQixDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztZQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7UUFDNUIsQ0FBQztJQUNILENBQUM7Q0FDRjtBQUVELE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxjQUFjLENBQUM7QUFDNUMsTUFBTSxVQUFVLGFBQWE7SUFDM0IsT0FBTyxJQUFJLFNBQVMsRUFBRSxDQUFDO0FBQ3pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTY2VuZUNvbXBvbmVudCwgQ29tcG9uZW50T3V0cHV0IH0gZnJvbSAnLi8uLi9zY2VuZS1jb21wb25lbnQvU2NlbmVDb21wb25lbnQnO1xyXG5pbXBvcnQgeyBWaWRlb1RleHR1cmUgfSBmcm9tICd0aHJlZSc7XHJcbi8vIEB0cy1pZ25vcmVcclxuaW1wb3J0IEhscyBmcm9tICdobHMuanMnO1xyXG5cclxudHlwZSBJbnB1dHMgPSB7XHJcbiAgc3JjOiBzdHJpbmc7XHJcbiAgZW5hYmxlZDogYm9vbGVhbjtcclxufTtcclxuXHJcbnR5cGUgT3V0cHV0cyA9IHtcclxuICB2aWRlbzogSFRNTFZpZGVvRWxlbWVudCB8IG51bGw7XHJcbiAgYXNwZWN0OiBudW1iZXI7XHJcbn0gJiBDb21wb25lbnRPdXRwdXQ7XHJcblxyXG5leHBvcnQgY2xhc3MgSGxzTG9hZGVyIGV4dGVuZHMgU2NlbmVDb21wb25lbnQge1xyXG4gIHByaXZhdGUgdmlkZW86IEhUTUxWaWRlb0VsZW1lbnQgfCBudWxsID0gbnVsbDtcclxuICBwcml2YXRlIHRleHR1cmU6IFZpZGVvVGV4dHVyZSB8IG51bGwgPSBudWxsO1xyXG4gIHByaXZhdGUgaGxzOiBIbHMgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgb3ZlcnJpZGUgaW5wdXRzOiBJbnB1dHMgPSB7XHJcbiAgICBzcmM6ICcuLy4uL2Fzc2V0cy92aWRlby8xMjEyMjItMDQubXA0JyxcclxuICAgIGVuYWJsZWQ6IHRydWUsXHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBvdXRwdXRzID0ge1xyXG4gICAgdmlkZW86IG51bGwsXHJcbiAgICBhc3BlY3Q6IDEsXHJcbiAgfSBhcyBPdXRwdXRzO1xyXG5cclxuICBvdmVycmlkZSBvbkluaXQodmlkZW9UZXh0dXJlPzogVmlkZW9UZXh0dXJlKSB7XHJcbiAgICB0aGlzLm91dHB1dHMudmlkZW8gPSB2aWRlb1RleHR1cmU7XHJcbiAgICB0aGlzLm91dHB1dHMuYXNwZWN0ID0gNzIwLzQ4MDtcclxuICAgIGlmICh0aGlzLmlucHV0cy5lbmFibGVkKSB7XHJcbiAgICAgIHRoaXMuc2V0dXBTdHJlYW0oKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIG9uSW5wdXRzVXBkYXRlZCgpIHtcclxuXHJcbiAgICB0aGlzLnNldHVwU3RyZWFtKCk7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBvbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLnJlbGVhc2VSZXNvdXJjZXMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlVmlkZW9FbGVtZW50KCkge1xyXG4gICAgY29uc3QgdmlkZW8gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd2aWRlbycpO1xyXG4gICAgdmlkZW8uY3Jvc3NPcmlnaW4gPSAnYW5vbnltb3VzJztcclxuICAgIHZpZGVvLnNldEF0dHJpYnV0ZSgnaGVpZ2h0JywgJzQ4MCcpO1xyXG4gICAgdmlkZW8uc2V0QXR0cmlidXRlKCd3aWR0aCcsICc3MjAnKTtcclxuICAgIHZpZGVvLnNldEF0dHJpYnV0ZSgnbXV0ZWQnLCAnbXV0ZWQnKTtcclxuICAgIHZpZGVvLnZvbHVtZSA9IDAuMTtcclxuICAgIHJldHVybiB2aWRlbztcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0dXBTdHJlYW0oKSB7XHJcbiAgICB0aGlzLnJlbGVhc2VSZXNvdXJjZXMoKTtcclxuXHJcbiAgICBpZiAodGhpcy5pbnB1dHMuZW5hYmxlZCkge1xyXG4gICAgICB0aGlzLnZpZGVvID0gdGhpcy5jcmVhdGVWaWRlb0VsZW1lbnQoKTtcclxuICAgICAgdGhpcy5obHMgPSBuZXcgSGxzKCk7XHJcbiAgICAgIHRoaXMuaGxzLmxvYWRTb3VyY2UodGhpcy5pbnB1dHMuc3JjKTtcclxuICAgICAgdGhpcy5obHMuYXR0YWNoTWVkaWEodGhpcy52aWRlbyk7XHJcbiAgICAgIHRoaXMuaGxzLm9uKEhscy5FdmVudHMuTUFOSUZFU1RfUEFSU0VELCAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5vdXRwdXRzLnZpZGVvID0gdGhpcy52aWRlbztcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlbGVhc2VSZXNvdXJjZXMoKSB7XHJcbiAgICBpZiAodGhpcy5obHMpIHtcclxuICAgICAgdGhpcy5obHMuZGVzdHJveSgpO1xyXG4gICAgICB0aGlzLmhscyA9IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMudGV4dHVyZSkge1xyXG4gICAgICB0aGlzLnRleHR1cmUuZGlzcG9zZSgpO1xyXG4gICAgICB0aGlzLnRleHR1cmUgPSBudWxsO1xyXG4gICAgICB0aGlzLm91dHB1dHMudmlkZW8gPSBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IGhsc0xvYWRlclR5cGUgPSAnbXAuaGxzTG9hZGVyJztcclxuZXhwb3J0IGZ1bmN0aW9uIG1ha2VIbHNMb2FkZXIoKSB7XHJcbiAgcmV0dXJuIG5ldyBIbHNMb2FkZXIoKTtcclxufVxyXG4iXX0=
|
|
@@ -45,4 +45,4 @@ export const canvasImageType = 'mp.canvasImage';
|
|
|
45
45
|
export function makeCanvasImage() {
|
|
46
46
|
return new CanvasImage();
|
|
47
47
|
}
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FudmFzSW1hZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc21hcnRlcnBsYW4tY29yZS9zcmMvbGliL21hdHRlcnBvcnQtZXh0ZW5zaW9ucy9uZXN0LXRoZXJtb3N0YXQvQ2FudmFzSW1hZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFrQixjQUFjLEVBQUMsTUFBTSxxQ0FBcUMsQ0FBQztBQWVwRixNQUFNLE9BQU8sV0FBWSxTQUFRLGNBQWM7SUFDckMsS0FBSyxHQUE0QixJQUFJLENBQUM7SUFFckMsTUFBTSxHQUFXO1FBQ3hCLEdBQUcsRUFBRSxJQUFJO1FBQ1QsV0FBVyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFO1FBQzNCLE9BQU8sRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRTtRQUN6QixZQUFZLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUU7UUFDNUIsUUFBUSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFO0tBQzNCLENBQUE7SUFFUSxPQUFPLEdBQUc7UUFDakIsT0FBTyxFQUFFLElBQUk7S0FDSCxDQUFDO0lBRUosTUFBTTtRQUNiLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUM1QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVRLGVBQWU7UUFDdEIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxLQUFLLENBQUMsU0FBbUMsRUFBRSxJQUFVO1FBQ25ELElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDaEIsT0FBTztRQUNULENBQUM7UUFFRCxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFFLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDekIsU0FBUyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUM1QixJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxFQUNwRCxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUM1QyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxFQUN0RCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEQsQ0FBQztJQUNILENBQUM7SUFFTyxjQUFjO1FBQ3BCLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1FBRWxCLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxLQUFLLEVBQUUsRUFBRSxDQUFDO1lBQ3ZELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQztZQUNsQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7WUFDekIsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO1lBQ3JDLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDO1lBQ2pDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLFVBQVMsS0FBWTtnQkFDdkMsOEJBQThCO1lBQ2hDLENBQUMsQ0FBQztRQUNKLENBQUM7UUFFRCw4QkFBOEI7SUFDaEMsQ0FBQztDQUNGO0FBRUQsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLGdCQUFnQixDQUFDO0FBQ2hELE1BQU0sVUFBVSxlQUFlO0lBQzdCLE9BQU8sSUFBSSxXQUFXLEVBQUUsQ0FBQztBQUMzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnRPdXRwdXQsIFNjZW5lQ29tcG9uZW50fSBmcm9tICcuLy4uL3NjZW5lLWNvbXBvbmVudC9TY2VuZUNvbXBvbmVudCc7XHJcbmltcG9ydCB7SVBhaW50ZXIyZH0gZnJvbSBcIi4vQ2FudmFzUmVuZGVyZXJcIjtcclxuaW1wb3J0IHtTaXplfSBmcm9tIFwiLi9QbGFuZVJlbmRlcmVyXCI7XHJcbnR5cGUgSW5wdXRzID0ge1xyXG4gIHNyYzogc3RyaW5nIHwgbnVsbDtcclxuICBzcmNQb3NpdGlvbjogeyB4OiBudW1iZXIsIHk6IG51bWJlciB9O1xyXG4gIHNyY1NpemU6IFNpemU7XHJcbiAgZGVzdFBvc2l0aW9uOiB7IHg6IG51bWJlciwgeTogbnVtYmVyIH07XHJcbiAgZGVzdFNpemU6IFNpemU7XHJcbn07XHJcblxyXG50eXBlIE91dHB1dHMgPSB7XHJcbiAgcGFpbnRlcjogSVBhaW50ZXIyZCB8IG51bGw7XHJcbn0gJiBDb21wb25lbnRPdXRwdXQ7XHJcblxyXG5leHBvcnQgY2xhc3MgQ2FudmFzSW1hZ2UgZXh0ZW5kcyBTY2VuZUNvbXBvbmVudCBpbXBsZW1lbnRzIElQYWludGVyMmQge1xyXG4gIHByaXZhdGUgaW1hZ2U6IEhUTUxJbWFnZUVsZW1lbnQgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgb3ZlcnJpZGUgaW5wdXRzOiBJbnB1dHMgPSB7XHJcbiAgICBzcmM6IG51bGwsXHJcbiAgICBzcmNQb3NpdGlvbjogeyB4OiAwLCB5OiAwIH0sXHJcbiAgICBzcmNTaXplOiB7IHc6IDY0LCBoOiA2NCB9LFxyXG4gICAgZGVzdFBvc2l0aW9uOiB7IHg6IDAsIHk6IDAgfSxcclxuICAgIGRlc3RTaXplOiB7IHc6IDY0LCBoOiA2NCB9LFxyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgb3V0cHV0cyA9IHtcclxuICAgIHBhaW50ZXI6IG51bGwsXHJcbiAgfSBhcyBPdXRwdXRzO1xyXG5cclxuICBvdmVycmlkZSBvbkluaXQoKSB7XHJcbiAgICB0aGlzLm91dHB1dHMucGFpbnRlciA9IHRoaXM7XHJcbiAgICB0aGlzLm1heWJlTG9hZEltYWdlKCk7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBvbklucHV0c1VwZGF0ZWQoKSB7XHJcbiAgICB0aGlzLm1heWJlTG9hZEltYWdlKCk7XHJcbiAgfVxyXG5cclxuICBwYWludChjb250ZXh0MmQ6IENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRCwgc2l6ZTogU2l6ZSk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmltYWdlKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBjb250ZXh0MmQuY2xlYXJSZWN0KDAsIDAsIHRoaXMuaW5wdXRzLmRlc3RTaXplLncsIHRoaXMuaW5wdXRzLmRlc3RTaXplLmgpO1xyXG4gICAgaWYgKHRoaXMuaW1hZ2Uud2lkdGggPiAwKSB7XHJcbiAgICAgIGNvbnRleHQyZC5kcmF3SW1hZ2UodGhpcy5pbWFnZSxcclxuICAgICAgICB0aGlzLmlucHV0cy5zcmNQb3NpdGlvbi54LCB0aGlzLmlucHV0cy5zcmNQb3NpdGlvbi55LFxyXG4gICAgICAgIHRoaXMuaW5wdXRzLnNyY1NpemUudywgdGhpcy5pbnB1dHMuc3JjU2l6ZS5oLFxyXG4gICAgICAgIHRoaXMuaW5wdXRzLmRlc3RQb3NpdGlvbi54LCB0aGlzLmlucHV0cy5kZXN0UG9zaXRpb24ueSxcclxuICAgICAgICB0aGlzLmlucHV0cy5kZXN0U2l6ZS53LCB0aGlzLmlucHV0cy5kZXN0U2l6ZS5oKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgbWF5YmVMb2FkSW1hZ2UoKSB7XHJcbiAgICB0aGlzLmltYWdlID0gbnVsbDtcclxuXHJcbiAgICBpZiAodGhpcy5pbnB1dHMuc3JjICE9PSBudWxsICYmIHRoaXMuaW5wdXRzLnNyYyAhPT0gJycpIHtcclxuICAgICAgY29uc3QgdGhhdCA9IHRoaXM7XHJcbiAgICAgIHRoaXMuaW1hZ2UgPSBuZXcgSW1hZ2UoKTtcclxuICAgICAgdGhpcy5pbWFnZS5jcm9zc09yaWdpbiA9ICdhbm9ueW1vdXMnO1xyXG4gICAgICB0aGlzLmltYWdlLnNyYyA9IHRoaXMuaW5wdXRzLnNyYztcclxuICAgICAgdGhpcy5pbWFnZS5vbmxvYWQgPSBmdW5jdGlvbihldmVudDogRXZlbnQpIHtcclxuICAgICAgICAvLyB0aGF0Lm5vdGlmeSgncGFpbnQucmVhZHknKTtcclxuICAgICAgfTtcclxuICAgIH1cclxuXHJcbiAgICAvLyB0aGlzLm5vdGlmeSgncGFpbnQucmVhZHknKTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBjYW52YXNJbWFnZVR5cGUgPSAnbXAuY2FudmFzSW1hZ2UnO1xyXG5leHBvcnQgZnVuY3Rpb24gbWFrZUNhbnZhc0ltYWdlKCkge1xyXG4gIHJldHVybiBuZXcgQ2FudmFzSW1hZ2UoKTtcclxufVxyXG4iXX0=
|
|
@@ -57,4 +57,4 @@ export const canvasRendererType = 'mp.canvasRenderer';
|
|
|
57
57
|
export function makeCanvasRenderer() {
|
|
58
58
|
return new CanvasRenderer();
|
|
59
59
|
}
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FudmFzUmVuZGVyZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc21hcnRlcnBsYW4tY29yZS9zcmMvbGliL21hdHRlcnBvcnQtZXh0ZW5zaW9ucy9uZXN0LXRoZXJtb3N0YXQvQ2FudmFzUmVuZGVyZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBbUIsTUFBTSxtQ0FBbUMsQ0FBQztBQUVwRixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBcUJ0QyxNQUFNLE9BQU8sY0FBZSxTQUFRLGNBQWM7SUFDeEMsTUFBTSxDQUFvQjtJQUMxQixlQUFlLENBQTJCO0lBRXpDLE1BQU0sR0FBVztRQUN4QixPQUFPLEVBQUUsSUFBSTtRQUNiLFVBQVUsRUFBRSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLHFCQUFxQjtLQUN4RCxDQUFBO0lBRVEsT0FBTyxHQUFHO1FBQ2pCLE9BQU8sRUFBRSxJQUFJO0tBQ0gsQ0FBQztJQUVKLE1BQU0sR0FBRztRQUNoQixPQUFPLEVBQUUsSUFBSTtLQUNKLENBQUM7SUFFSCxNQUFNO1FBRWIsMkJBQTJCO1FBQzNCLElBQUksQ0FBQyxNQUFNLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxHQUFHLElBQUksYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUV0RCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDcEMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFRCw4QkFBOEIsQ0FBQyxFQUFFO1FBQy9CLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRVEsZUFBZSxDQUFDLFNBQWlCO1FBQ3hDLElBQUksU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUNuRCxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUN4RCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDdEMsQ0FBQztRQUVELElBQUksU0FBUyxDQUFDLE9BQU8sS0FBSyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzlDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNqQixDQUFDO0lBQ0gsQ0FBQztJQUVRLE9BQU8sQ0FBQyxTQUFpQixFQUFFLFVBQW1CO1FBQ3JELElBQUksU0FBUyxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNqQixDQUFDO0lBQ0gsQ0FBQztJQUVRLFNBQVM7UUFDaEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDL0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO0lBQzlCLENBQUM7SUFFTyxNQUFNLENBQUMsSUFBVTtRQUN2QixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVNLE9BQU87UUFDWixJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUN4RSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQzFDLENBQUM7SUFDSCxDQUFDO0NBRUY7QUFPRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxtQkFBbUIsQ0FBQztBQUN0RCxNQUFNLFVBQVUsa0JBQWtCO0lBQ2hDLE9BQU8sSUFBSSxjQUFjLEVBQUUsQ0FBQztBQUM5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2NlbmVDb21wb25lbnQsIENvbXBvbmVudE91dHB1dCB9IGZyb20gJy4uL3NjZW5lLWNvbXBvbmVudC9TY2VuZUNvbXBvbmVudCc7XHJcbmltcG9ydCB0eXBlIHsgVGV4dHVyZSB9IGZyb20gJ3RocmVlJztcclxuaW1wb3J0IHsgQ2FudmFzVGV4dHVyZSB9IGZyb20gJ3RocmVlJztcclxuaW1wb3J0IHsgU2l6ZSB9IGZyb20gJy4vUGxhbmVSZW5kZXJlcic7XHJcbmltcG9ydCB7IENhbnZhc0ltYWdlIH0gZnJvbSAnLi9DYW52YXNJbWFnZSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElQYWludGVyMmQge1xyXG4gIHBhaW50KGNvbnRleHQyZDogQ2FudmFzUmVuZGVyaW5nQ29udGV4dDJELCBzaXplOiBTaXplKTogdm9pZDtcclxufVxyXG5cclxudHlwZSBJbnB1dHMgPSB7XHJcbiAgcGFpbnRlcjogSVBhaW50ZXIyZCB8IG51bGw7XHJcbiAgdGV4dHVyZVJlczogU2l6ZTtcclxufVxyXG5cclxudHlwZSBPdXRwdXRzID0ge1xyXG4gIHRleHR1cmU6IFRleHR1cmUgfCBudWxsO1xyXG59ICYgQ29tcG9uZW50T3V0cHV0O1xyXG5cclxudHlwZSBFdmVudHMgPSB7XHJcbiAgcmVwYWludDogYm9vbGVhbjtcclxufTtcclxuXHJcbmV4cG9ydCBjbGFzcyBDYW52YXNSZW5kZXJlciBleHRlbmRzIFNjZW5lQ29tcG9uZW50IHtcclxuICBwcml2YXRlIGNhbnZhczogSFRNTENhbnZhc0VsZW1lbnQ7XHJcbiAgcHJpdmF0ZSByZW5kZXJDb250ZXh0MkQ6IENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRDtcclxuXHJcbiAgb3ZlcnJpZGUgaW5wdXRzOiBJbnB1dHMgPSB7XHJcbiAgICBwYWludGVyOiBudWxsLFxyXG4gICAgdGV4dHVyZVJlczogeyB3OiAxMDI0LCBoOiAxMDI0IH0sIC8vIGRpbSBmb3IgdGhlcm1vc3RhdFxyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgb3V0cHV0cyA9IHtcclxuICAgIHRleHR1cmU6IG51bGwsXHJcbiAgfSBhcyBPdXRwdXRzO1xyXG5cclxuICBvdmVycmlkZSBldmVudHMgPSB7XHJcbiAgICByZXBhaW50OiB0cnVlLFxyXG4gIH0gYXMgRXZlbnRzO1xyXG5cclxuICBvdmVycmlkZSBvbkluaXQoKSB7XHJcblxyXG4gICAgLy8gc2V0IHVwIGNhbnZhcyAyZCBjb250ZXh0XHJcbiAgICB0aGlzLmNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2NhbnZhcycpO1xyXG4gICAgdGhpcy5yZW5kZXJDb250ZXh0MkQgPSB0aGlzLmNhbnZhcy5nZXRDb250ZXh0KCcyZCcpO1xyXG4gICAgdGhpcy5vdXRwdXRzLnRleHR1cmUgPSBuZXcgQ2FudmFzVGV4dHVyZSh0aGlzLmNhbnZhcyk7XHJcblxyXG4gICAgdGhpcy5yZXNpemUodGhpcy5pbnB1dHMudGV4dHVyZVJlcyk7XHJcbiAgICB0aGlzLnJlcGFpbnQoKTtcclxuICB9XHJcblxyXG4gIHNldENhbnZhc05lc3RUaGVybW9zdGF0UGFpbnRlcihzYyl7XHJcbiAgICB0aGlzLmlucHV0cy5wYWludGVyID0gc2M7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBvbklucHV0c1VwZGF0ZWQob2xkSW5wdXRzOiBJbnB1dHMpIHtcclxuICAgIGlmIChvbGRJbnB1dHMudGV4dHVyZVJlcy53ICE9PSB0aGlzLmlucHV0cy50ZXh0dXJlUmVzLncgfHxcclxuICAgICAgICBvbGRJbnB1dHMudGV4dHVyZVJlcy5oICE9PSB0aGlzLmlucHV0cy50ZXh0dXJlUmVzLmgpIHtcclxuICAgICAgdGhpcy5yZXNpemUodGhpcy5pbnB1dHMudGV4dHVyZVJlcyk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKG9sZElucHV0cy5wYWludGVyICE9PSB0aGlzLmlucHV0cy5wYWludGVyKSB7XHJcbiAgICAgIHRoaXMucmVwYWludCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgb25FdmVudChldmVudFR5cGU6IHN0cmluZywgX2V2ZW50RGF0YTogdW5rbm93bikge1xyXG4gICAgaWYgKGV2ZW50VHlwZSA9PT0gJ3JlcGFpbnQnKSB7XHJcbiAgICAgIHRoaXMucmVwYWludCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgb25EZXN0cm95KCkge1xyXG4gICAgdGhpcy5vdXRwdXRzLnRleHR1cmUuZGlzcG9zZSgpO1xyXG4gICAgdGhpcy5vdXRwdXRzLnRleHR1cmUgPSBudWxsO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSByZXNpemUoc2l6ZTogU2l6ZSkge1xyXG4gICAgdGhpcy5jYW52YXMud2lkdGggPSBzaXplLnc7XHJcbiAgICB0aGlzLmNhbnZhcy5oZWlnaHQgPSBzaXplLmg7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgcmVwYWludCgpIHtcclxuICAgIGlmICh0aGlzLmlucHV0cy5wYWludGVyKSB7XHJcbiAgICAgIHRoaXMuaW5wdXRzLnBhaW50ZXIucGFpbnQodGhpcy5yZW5kZXJDb250ZXh0MkQsIHRoaXMuaW5wdXRzLnRleHR1cmVSZXMpO1xyXG4gICAgICB0aGlzLm91dHB1dHMudGV4dHVyZS5uZWVkc1VwZGF0ZSA9IHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJQ2FudmFzUmVuZGVyZXIgZXh0ZW5kcyBTY2VuZUNvbXBvbmVudHtcclxuICBpbnB1dHM6IElucHV0cztcclxuICBvdXRwdXRzOiBPdXRwdXRzO1xyXG59XHJcblxyXG5leHBvcnQgY29uc3QgY2FudmFzUmVuZGVyZXJUeXBlID0gJ21wLmNhbnZhc1JlbmRlcmVyJztcclxuZXhwb3J0IGZ1bmN0aW9uIG1ha2VDYW52YXNSZW5kZXJlcigpIHtcclxuICByZXR1cm4gbmV3IENhbnZhc1JlbmRlcmVyKCk7XHJcbn1cclxuIl19
|
|
@@ -153,4 +153,4 @@ export const nestThermostatType = 'mp.nestThermostat';
|
|
|
153
153
|
export const makeNestThermostat = function () {
|
|
154
154
|
return new NestThermostat();
|
|
155
155
|
};
|
|
156
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTmVzdFRoZXJtb3N0YXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc21hcnRlcnBsYW4tY29yZS9zcmMvbGliL21hdHRlcnBvcnQtZXh0ZW5zaW9ucy9uZXN0LXRoZXJtb3N0YXQvTmVzdFRoZXJtb3N0YXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGNBQWMsRUFBb0MsTUFBTSxtQ0FBbUMsQ0FBQztBQUNwRyxPQUFPLEVBRUwsY0FBYyxFQUVkLFFBQVEsRUFDUixhQUFhLEVBSWIsbUJBQW1CLEVBQ25CLGlCQUFpQixFQUNqQixpQkFBaUIsRUFFbEIsTUFBTSxPQUFPLENBQUM7QUFJZixNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUM7QUFDM0IsTUFBTSxZQUFZLEdBQUcsU0FBUyxDQUFDO0FBQy9CLE1BQU0sWUFBWSxHQUFHLFNBQVMsQ0FBQztBQWMvQixNQUFNLE9BQU8sY0FBZSxTQUFRLGNBQWM7SUFDeEMsRUFBRSxHQUEwQixJQUFJLENBQUM7SUFDakMsYUFBYSxHQUF5QixJQUFJLENBQUM7SUFDM0MsU0FBUyxHQUFvQixJQUFJLENBQUM7SUFDbEMsS0FBSyxHQUEwQixJQUFJLENBQUM7SUFDcEMsV0FBVyxHQUF5QixJQUFJLENBQUM7SUFDekMsSUFBSSxHQUFnQixJQUFJLENBQUM7SUFDekIsV0FBVyxHQUFXLENBQUMsQ0FBQztJQUN4QixVQUFVLEdBQVcsQ0FBQyxDQUFDO0lBQ3ZCLFdBQVcsR0FBVyxDQUFDLENBQUM7SUFDeEIsZUFBZSxHQUFXLENBQUMsQ0FBQztJQUM1QixTQUFTLENBQWlCO0lBR3pCLE1BQU0sR0FBVztRQUN4QixZQUFZLEVBQUUsTUFBTTtRQUNwQixPQUFPLEVBQUUsSUFBSTtRQUNiLGNBQWMsRUFBRSxJQUFJO0tBQ3JCLENBQUE7SUFFUSxPQUFPLEdBQUc7UUFDakIsT0FBTyxFQUFFLElBQUk7UUFDYixPQUFPLEVBQUUsS0FBSztL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QztRQUNiLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksQ0FBQyxPQUFPLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQztJQUNuQyxDQUFDO0lBRUQsWUFBWSxDQUFDLFNBQW1CO1FBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO0lBQzdCLENBQUM7Q0FDRjtBQUVELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLG1CQUFtQixDQUFDO0FBQ3RELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHO0lBQ2hDLE9BQU8sSUFBSSxjQUFjLEVBQUUsQ0FBQztBQUM5QixDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1NjZW5lQ29tcG9uZW50LCBDb21wb25lbnRPdXRwdXQsIENvbXBvbmVudENvbnRleHR9IGZyb20gJy4uL3NjZW5lLWNvbXBvbmVudC9TY2VuZUNvbXBvbmVudCc7XHJcbmltcG9ydCB7XHJcbiAgT2JqZWN0M0QsXHJcbiAgQW5pbWF0aW9uTWl4ZXIsXHJcbiAgQW5pbWF0aW9uQWN0aW9uLFxyXG4gIExvb3BPbmNlLFxyXG4gIEFuaW1hdGlvbkNsaXAsXHJcbiAgTWVzaCxcclxuICBUZXh0dXJlLFxyXG4gIE1lc2hMYW1iZXJ0TWF0ZXJpYWwsXHJcbiAgVmVjdG9yS2V5ZnJhbWVUcmFjayxcclxuICBJbnRlcnBvbGF0ZVNtb290aCxcclxuICBNZXNoQmFzaWNNYXRlcmlhbCxcclxuICBMaW5lU2VnbWVudHNcclxufSBmcm9tICd0aHJlZSc7XHJcbmltcG9ydCB7Q2FudmFzUmVuZGVyZXIsIElQYWludGVyMmR9IGZyb20gJy4vQ2FudmFzUmVuZGVyZXInO1xyXG5pbXBvcnQge1BsYW5lUmVuZGVyZXIsIFNpemV9IGZyb20gJy4vUGxhbmVSZW5kZXJlcic7XHJcblxyXG5jb25zdCBIb3ZlckV2ZW50ID0gJ2hvdmVyJztcclxuY29uc3QgVW5ob3ZlckV2ZW50ID0gJ3VuaG92ZXInO1xyXG5jb25zdCBSZXBhaW50RXZlbnQgPSAncmVwYWludCc7XHJcblxyXG50eXBlIElucHV0cyA9IHtcclxuICBsb2FkaW5nU3RhdGU6IHN0cmluZztcclxuICB0ZXh0dXJlOiBUZXh0dXJlIHwgbnVsbDtcclxuICB1cGRhdGVJbnRlcnZhbDogbnVtYmVyO1xyXG59XHJcblxyXG50eXBlIE91dHB1dHMgPSB7XHJcbiAgcGFpbnRlcjogSVBhaW50ZXIyZCB8IG51bGw7XHJcbiAgdmlzaWJsZTogYm9vbGVhbjtcclxufSAmIENvbXBvbmVudE91dHB1dDtcclxuXHJcblxyXG5leHBvcnQgY2xhc3MgTmVzdFRoZXJtb3N0YXQgZXh0ZW5kcyBTY2VuZUNvbXBvbmVudCBpbXBsZW1lbnRzIElQYWludGVyMmQge1xyXG4gIHByaXZhdGUgY3Y6IENhbnZhc1JlbmRlcmVyIHwgbnVsbCA9IG51bGw7XHJcbiAgcHJpdmF0ZSBwbGFuZVJlbmRlcmVyOiBQbGFuZVJlbmRlcmVyIHwgbnVsbCA9IG51bGw7XHJcbiAgcHJpdmF0ZSByb290U2NlbmU6IE9iamVjdDNEIHwgbnVsbCA9IG51bGw7XHJcbiAgcHJpdmF0ZSBtaXhlcjogQW5pbWF0aW9uTWl4ZXIgfCBudWxsID0gbnVsbDtcclxuICBwcml2YXRlIG9uRW50ZXJDbGlwOiBBbmltYXRpb25DbGlwIHwgbnVsbCA9IG51bGw7XHJcbiAgcHJpdmF0ZSBtZXNoOiBNZXNoIHwgbnVsbCA9IG51bGw7XHJcbiAgcHJpdmF0ZSBjdXJyZW50VGltZTogbnVtYmVyID0gMDtcclxuICBwcml2YXRlIG5leHRVcGRhdGU6IG51bWJlciA9IDA7XHJcbiAgcHJpdmF0ZSB0ZW1wZXJhdHVyZTogbnVtYmVyID0gMDtcclxuICBwcml2YXRlIHRlbXBDaGFuZ2VSYW5nZTogbnVtYmVyID0gNTtcclxuICBwcml2YXRlIGNvbXBvbmVudDogU2NlbmVDb21wb25lbnQ7XHJcblxyXG5cclxuICBvdmVycmlkZSBpbnB1dHM6IElucHV0cyA9IHtcclxuICAgIGxvYWRpbmdTdGF0ZTogJ0lkbGUnLFxyXG4gICAgdGV4dHVyZTogbnVsbCxcclxuICAgIHVwZGF0ZUludGVydmFsOiAxMDAwLFxyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgb3V0cHV0cyA9IHtcclxuICAgIHBhaW50ZXI6IG51bGwsXHJcbiAgICB2aXNpYmxlOiBmYWxzZSxcclxuICB9IGFzIE91dHB1dHM7XHJcblxyXG4gIG92ZXJyaWRlIGV2ZW50cyA9IHtcclxuICAgIFtIb3ZlckV2ZW50XTogdHJ1ZSxcclxuICAgIFtVbmhvdmVyRXZlbnRdOiB0cnVlLFxyXG4gIH07XHJcblxyXG4gIG92ZXJyaWRlIG9uSW5pdChtb2RlbE5vZGU/OiBhbnksIHBsYW5lPzogUGxhbmVSZW5kZXJlciwgaW5wdXRUZXh0dXJlPzogYW55KSB7XHJcbiAgICBpZiAoIXRoaXMuY29udGV4dCkge1xyXG4gICAgICB0aGlzLmNvbnRleHQgPSB7XHJcbiAgICAgICAgcm9vdDogbW9kZWxOb2RlXHJcbiAgICAgIH0gYXMgQ29tcG9uZW50Q29udGV4dDtcclxuICAgIH1cclxuICAgIHRoaXMuaW5wdXRzLnRleHR1cmUgPSBpbnB1dFRleHR1cmU7XHJcbiAgICBjb25zdCByb290ID0gdGhpcy5jb250ZXh0LnJvb3Q7XHJcbiAgICBjb25zdCBUSFJFRSA9IHRoaXMuY29udGV4dC50aHJlZTtcclxuXHJcbiAgICB0aGlzLnBsYW5lUmVuZGVyZXIgPSBwbGFuZTtcclxuICAgIHRoaXMucGxhbmVSZW5kZXJlci5vdXRwdXRzLm9iamVjdFJvb3QudHJhbnNsYXRlWigwLjA1KTtcclxuICAgIHRoaXMucGxhbmVSZW5kZXJlci5vdXRwdXRzLm9iamVjdFJvb3QudHJhbnNsYXRlWSgwLjQpO1xyXG4gICAgdGhpcy5wbGFuZVJlbmRlcmVyLm91dHB1dHMub2JqZWN0Um9vdC5zY2FsZS5zZXQoMC41LCAwLjUsIDAuNSk7XHJcbiAgICAvLyBwbGFuZVJlbmRlcmVyLmlucHV0cy5sb2NhbFBvc2l0aW9uLnogPSAwLjA1O1xyXG4gICAgLy8gcGxhbmVSZW5kZXJlci5pbnB1dHMubG9jYWxQb3NpdGlvbi55ID0gMC40O1xyXG4gICAgLy8gcGxhbmVSZW5kZXJlci5pbnB1dHMubG9jYWxTY2FsZSA9IHt4OiAwLjUsIHk6IDAuNSwgejogMC41fTtcclxuXHJcbiAgICB0aGlzLm91dHB1dHMucGFpbnRlciA9IHRoaXM7XHJcblxyXG4gICAgdGhpcy5taXhlciA9IG5ldyBBbmltYXRpb25NaXhlcih0aGlzLnBsYW5lUmVuZGVyZXIub3V0cHV0cy5vYmplY3RSb290KTtcclxuXHJcbiAgICBjb25zdCB0bSA9IDAuMjtcclxuICAgIGNvbnN0IHBvc2l0aW9uVHJhY2sgPSBuZXcgVmVjdG9yS2V5ZnJhbWVUcmFjaygnLnNjYWxlJywgWzAsIHRtXSwgW1xyXG4gICAgICAwLCAwLCAwLFxyXG4gICAgICAwLjUsIDAuNSwgMC41XHJcbiAgICBdLCBJbnRlcnBvbGF0ZVNtb290aCk7XHJcbiAgICB0aGlzLm9uRW50ZXJDbGlwID0gbmV3IEFuaW1hdGlvbkNsaXAobnVsbCwgdG0sIFtwb3NpdGlvblRyYWNrXSk7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBvbklucHV0c1VwZGF0ZWQoKSB7XHJcbiAgICBpZiAodGhpcy5pbnB1dHMubG9hZGluZ1N0YXRlID09PSAnTG9hZGVkJykge1xyXG4gICAgICBjb25zdCBsaW5lczogTGluZVNlZ21lbnRzW10gPSBbXTtcclxuXHJcbiAgICAgIC8vQHRzLWlnbm9yZVxyXG4gICAgICB0aGlzLmNvbnRleHQucm9vdC5vYmozRC50cmF2ZXJzZSgob2JqOiBPYmplY3QzRCkgPT4ge1xyXG4gICAgICAgIC8vIHdlIGRvbnQgd2FudCBsaW5lIHNlZ21lbnRzLCB0cmFjayB0aGVtIGFuZCByZW1vdmUgdGhlbS5cclxuICAgICAgICBpZiAob2JqLnR5cGUgPT09ICdMaW5lU2VnbWVudHMnKSB7XHJcbiAgICAgICAgICBsaW5lcy5wdXNoKG9iaiBhcyBMaW5lU2VnbWVudHMpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAob2JqLnR5cGUgPT09ICdNZXNoJykge1xyXG4gICAgICAgICAgdGhpcy5tZXNoID0gb2JqIGFzIE1lc2g7XHJcblxyXG4gICAgICAgICAgY29uc3QgbWF0ZXJpYWxzID0gdGhpcy5tZXNoLm1hdGVyaWFsIGFzIE1lc2hMYW1iZXJ0TWF0ZXJpYWw7XHJcbiAgICAgICAgICBtYXRlcmlhbHMuZm9yRWFjaCgobSwgaWR4KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChtICYmIG0ubWFwLnNvdXJjZS5kYXRhLm91dGVySFRNTC5pbmRleE9mKCdfNWI3NmRiZTM4ODg2MjMwMDEyNmMxZTE0JykgIT09IC0xKSB7XHJcbiAgICAgICAgICAgICAgY29uc3QgbmV3TWF0ZXJpYWwgPSBuZXcgTWVzaEJhc2ljTWF0ZXJpYWwoe21hcDogdGhpcy5pbnB1dHMudGV4dHVyZX0pO1xyXG4gICAgICAgICAgICAgIHRoaXMubWVzaC5tYXRlcmlhbFtpZHhdID0gbmV3TWF0ZXJpYWw7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pXHJcblxyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcblxyXG4gICAgICAvLyByZW1vdmUgdGhlIGxpbmUgc2VnbWVudHMuXHJcbiAgICAgIGxpbmVzLmZvckVhY2goKGxpbmU6IExpbmVTZWdtZW50cykgPT4ge1xyXG4gICAgICAgIGxpbmUucGFyZW50LnJlbW92ZShsaW5lKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBvbkV2ZW50KGV2ZW50VHlwZTogc3RyaW5nLCBldmVudERhdGE6IHVua25vd24pOiB2b2lkIHtcclxuICAgIGlmIChldmVudFR5cGUgPT09IEhvdmVyRXZlbnQpIHtcclxuICAgICAgY29uc3QgZGF0YTogYW55ID0gZXZlbnREYXRhO1xyXG4gICAgICBpZiAoZGF0YS5ob3Zlcikge1xyXG4gICAgICAgIHRoaXMub3V0cHV0cy52aXNpYmxlID0gdHJ1ZTtcclxuICAgICAgICBjb25zdCBvbkVudGVyQWN0aW9uOiBBbmltYXRpb25BY3Rpb24gPSB0aGlzLm1peGVyLmNsaXBBY3Rpb24odGhpcy5vbkVudGVyQ2xpcCk7XHJcbiAgICAgICAgb25FbnRlckFjdGlvbi5zdG9wKCk7XHJcbiAgICAgICAgb25FbnRlckFjdGlvbi5sb29wID0gTG9vcE9uY2U7XHJcbiAgICAgICAgb25FbnRlckFjdGlvbi5jbGFtcFdoZW5GaW5pc2hlZCA9IHRydWU7XHJcbiAgICAgICAgb25FbnRlckFjdGlvbi5wbGF5KCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5vdXRwdXRzLnZpc2libGUgPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcGFpbnQoY29udGV4dDJkOiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQsIHNpemU6IFNpemUpOiB2b2lkIHtcclxuICAgIGNvbnN0IHggPSA0OTA7XHJcbiAgICBjb25zdCB5ID0gNDkwO1xyXG5cclxuICAgIGNvbnRleHQyZC5maWxsU3R5bGUgPSAnYmxhY2snO1xyXG4gICAgY29udGV4dDJkLmJlZ2luUGF0aCgpO1xyXG4gICAgY29udGV4dDJkLmFyYyh4LCB5LCA0MDAsIDAsIE1hdGguUEkgKiAyKTtcclxuICAgIGNvbnRleHQyZC5maWxsKCk7XHJcblxyXG4gICAgY29udGV4dDJkLmZpbGxTdHlsZSA9ICcjQ0Y1MzAwJztcclxuICAgIGNvbnRleHQyZC5iZWdpblBhdGgoKTtcclxuICAgIGNvbnRleHQyZC5hcmMoeCwgeSwgMzAwLCAwLCBNYXRoLlBJICogMik7XHJcbiAgICBjb250ZXh0MmQuZmlsbCgpO1xyXG5cclxuICAgIGNvbnRleHQyZC5iZWdpblBhdGgoKTtcclxuICAgIGNvbnRleHQyZC5zdHJva2VTdHlsZSA9ICdvcmFuZ2UnO1xyXG4gICAgY29udGV4dDJkLmFyYyh4LCB5LCAyNDAsIDAuNzUgKiBNYXRoLlBJLCAwLjI1ICogTWF0aC5QSSk7XHJcbiAgICBjb250ZXh0MmQubGluZUNhcCA9ICdidXR0JztcclxuICAgIGNvbnRleHQyZC5saW5lV2lkdGggPSA4MDtcclxuICAgIGNvbnRleHQyZC5zdHJva2UoKTtcclxuXHJcbiAgICBjb250ZXh0MmQuZmlsbFN0eWxlID0gJ3doaXRlJztcclxuICAgIGNvbnRleHQyZC5mb250ID0gJzIyMHB4IEFyaWFsJztcclxuICAgIGNvbnRleHQyZC5maWxsVGV4dChgJHt0aGlzLnRlbXBlcmF0dXJlfWAsIHggLSAxMTUsIHkgKyA3NSk7XHJcbiAgICB0aGlzLm91dHB1dHMudmlzaWJsZSA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBvblRpY2soZGVsdGE6IG51bWJlcikge1xyXG4gICAgdGhpcy5jdXJyZW50VGltZSArPSBkZWx0YTtcclxuXHJcbiAgICBpZiAodGhpcy5taXhlcikge1xyXG4gICAgICB0aGlzLm1peGVyLnVwZGF0ZShkZWx0YSAvIDEwMDApO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmN1cnJlbnRUaW1lID4gdGhpcy5uZXh0VXBkYXRlKSB7XHJcbiAgICAgIHRoaXMubmV4dFVwZGF0ZSArPSB0aGlzLmlucHV0cy51cGRhdGVJbnRlcnZhbDtcclxuXHJcbiAgICAgIHRoaXMudGVtcGVyYXR1cmUgKz0gKE1hdGgucmFuZG9tKCkgKiB0aGlzLnRlbXBDaGFuZ2VSYW5nZSk7XHJcbiAgICAgIHRoaXMudGVtcGVyYXR1cmUgPSBNYXRoLnRydW5jKHRoaXMudGVtcGVyYXR1cmUpO1xyXG5cclxuICAgICAgaWYgKHRoaXMudGVtcGVyYXR1cmUgPiA5OSkge1xyXG4gICAgICAgIHRoaXMudGVtcGVyYXR1cmUgPSA5OTtcclxuICAgICAgICB0aGlzLnRlbXBDaGFuZ2VSYW5nZSA9IC10aGlzLnRlbXBDaGFuZ2VSYW5nZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy50ZW1wZXJhdHVyZSA8IDEwKSB7XHJcbiAgICAgICAgdGhpcy50ZW1wZXJhdHVyZSA9IDEwO1xyXG4gICAgICAgIHRoaXMudGVtcENoYW5nZVJhbmdlID0gLXRoaXMudGVtcENoYW5nZVJhbmdlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLmNvbXBvbmVudC5ub3RpZnkoUmVwYWludEV2ZW50KTtcclxuICAgICAgdGhpcy5jdi5yZXBhaW50KClcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldENvbXBvbmVudChjb21wb25lbnQ6IFNjZW5lQ29tcG9uZW50LCBwbGFuZTogUGxhbmVSZW5kZXJlciwgY3Y6IENhbnZhc1JlbmRlcmVyKSB7XHJcbiAgICBjb21wb25lbnQub25UaWNrID0gdGhpcy5vblRpY2suYmluZCh0aGlzKTtcclxuICAgIC8vIHBsYW5lLm9uVGljayA9IHRoaXMub25UaWNrLmJpbmQodGhpcyk7XHJcbiAgICB0aGlzLmN2ID0gY3Y7XHJcbiAgICB0aGlzLmNvbXBvbmVudCA9IGNvbXBvbmVudDtcclxuICAgIHRoaXMuY29udGV4dCA9IGNvbXBvbmVudC5jb250ZXh0O1xyXG4gIH1cclxuXHJcbiAgc2V0Um9vdFNjZW5lKHJvb3RTY2VuZTogT2JqZWN0M0QpIHtcclxuICAgIHRoaXMucm9vdFNjZW5lID0gcm9vdFNjZW5lO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IG5lc3RUaGVybW9zdGF0VHlwZSA9ICdtcC5uZXN0VGhlcm1vc3RhdCc7XHJcbmV4cG9ydCBjb25zdCBtYWtlTmVzdFRoZXJtb3N0YXQgPSBmdW5jdGlvbiAoKSB7XHJcbiAgcmV0dXJuIG5ldyBOZXN0VGhlcm1vc3RhdCgpO1xyXG59XHJcbiJdfQ==
|
|
156
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTmVzdFRoZXJtb3N0YXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc21hcnRlcnBsYW4tY29yZS9zcmMvbGliL21hdHRlcnBvcnQtZXh0ZW5zaW9ucy9uZXN0LXRoZXJtb3N0YXQvTmVzdFRoZXJtb3N0YXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGNBQWMsRUFBb0MsTUFBTSxtQ0FBbUMsQ0FBQztBQUNwRyxPQUFPLEVBRUwsY0FBYyxFQUVkLFFBQVEsRUFDUixhQUFhLEVBSWIsbUJBQW1CLEVBQ25CLGlCQUFpQixFQUNqQixpQkFBaUIsRUFFbEIsTUFBTSxPQUFPLENBQUM7QUFJZixNQUFNLFVBQVUsR0FBRyxPQUFPLENBQUM7QUFDM0IsTUFBTSxZQUFZLEdBQUcsU0FBUyxDQUFDO0FBQy9CLE1BQU0sWUFBWSxHQUFHLFNBQVMsQ0FBQztBQWMvQixNQUFNLE9BQU8sY0FBZSxTQUFRLGNBQWM7SUFDeEMsRUFBRSxHQUEwQixJQUFJLENBQUM7SUFDakMsYUFBYSxHQUF5QixJQUFJLENBQUM7SUFDM0MsU0FBUyxHQUFvQixJQUFJLENBQUM7SUFDbEMsS0FBSyxHQUEwQixJQUFJLENBQUM7SUFDcEMsV0FBVyxHQUF5QixJQUFJLENBQUM7SUFDekMsSUFBSSxHQUFnQixJQUFJLENBQUM7SUFDekIsV0FBVyxHQUFXLENBQUMsQ0FBQztJQUN4QixVQUFVLEdBQVcsQ0FBQyxDQUFDO0lBQ3ZCLFdBQVcsR0FBVyxDQUFDLENBQUM7SUFDeEIsZUFBZSxHQUFXLENBQUMsQ0FBQztJQUM1QixTQUFTLENBQWlCO0lBR3pCLE1BQU0sR0FBVztRQUN4QixZQUFZLEVBQUUsTUFBTTtRQUNwQixPQUFPLEVBQUUsSUFBSTtRQUNiLGNBQWMsRUFBRSxJQUFJO0tBQ3JCLENBQUE7SUFFUSxPQUFPLEdBQUc7UUFDakIsT0FBTyxFQUFFLElBQUk7UUFDYixPQUFPLEVBQUUsS0FBSztL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QjtRQUM5RSxTQUFTLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFDLHlDQUF5QztRQUN6QyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUNiLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksQ0FBQyxPQUFPLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQztJQUNuQyxDQUFDO0lBRUQsWUFBWSxDQUFDLFNBQW1CO1FBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO0lBQzdCLENBQUM7Q0FDRjtBQUVELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLG1CQUFtQixDQUFDO0FBQ3RELE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHO0lBQ2hDLE9BQU8sSUFBSSxjQUFjLEVBQUUsQ0FBQztBQUM5QixDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1NjZW5lQ29tcG9uZW50LCBDb21wb25lbnRPdXRwdXQsIENvbXBvbmVudENvbnRleHR9IGZyb20gJy4uL3NjZW5lLWNvbXBvbmVudC9TY2VuZUNvbXBvbmVudCc7XHJcbmltcG9ydCB7XHJcbiAgT2JqZWN0M0QsXHJcbiAgQW5pbWF0aW9uTWl4ZXIsXHJcbiAgQW5pbWF0aW9uQWN0aW9uLFxyXG4gIExvb3BPbmNlLFxyXG4gIEFuaW1hdGlvbkNsaXAsXHJcbiAgTWVzaCxcclxuICBUZXh0dXJlLFxyXG4gIE1lc2hMYW1iZXJ0TWF0ZXJpYWwsXHJcbiAgVmVjdG9yS2V5ZnJhbWVUcmFjayxcclxuICBJbnRlcnBvbGF0ZVNtb290aCxcclxuICBNZXNoQmFzaWNNYXRlcmlhbCxcclxuICBMaW5lU2VnbWVudHNcclxufSBmcm9tICd0aHJlZSc7XHJcbmltcG9ydCB7Q2FudmFzUmVuZGVyZXIsIElQYWludGVyMmR9IGZyb20gJy4vQ2FudmFzUmVuZGVyZXInO1xyXG5pbXBvcnQge1BsYW5lUmVuZGVyZXIsIFNpemV9IGZyb20gJy4vUGxhbmVSZW5kZXJlcic7XHJcblxyXG5jb25zdCBIb3ZlckV2ZW50ID0gJ2hvdmVyJztcclxuY29uc3QgVW5ob3ZlckV2ZW50ID0gJ3VuaG92ZXInO1xyXG5jb25zdCBSZXBhaW50RXZlbnQgPSAncmVwYWludCc7XHJcblxyXG50eXBlIElucHV0cyA9IHtcclxuICBsb2FkaW5nU3RhdGU6IHN0cmluZztcclxuICB0ZXh0dXJlOiBUZXh0dXJlIHwgbnVsbDtcclxuICB1cGRhdGVJbnRlcnZhbDogbnVtYmVyO1xyXG59XHJcblxyXG50eXBlIE91dHB1dHMgPSB7XHJcbiAgcGFpbnRlcjogSVBhaW50ZXIyZCB8IG51bGw7XHJcbiAgdmlzaWJsZTogYm9vbGVhbjtcclxufSAmIENvbXBvbmVudE91dHB1dDtcclxuXHJcblxyXG5leHBvcnQgY2xhc3MgTmVzdFRoZXJtb3N0YXQgZXh0ZW5kcyBTY2VuZUNvbXBvbmVudCBpbXBsZW1lbnRzIElQYWludGVyMmQge1xyXG4gIHByaXZhdGUgY3Y6IENhbnZhc1JlbmRlcmVyIHwgbnVsbCA9IG51bGw7XHJcbiAgcHJpdmF0ZSBwbGFuZVJlbmRlcmVyOiBQbGFuZVJlbmRlcmVyIHwgbnVsbCA9IG51bGw7XHJcbiAgcHJpdmF0ZSByb290U2NlbmU6IE9iamVjdDNEIHwgbnVsbCA9IG51bGw7XHJcbiAgcHJpdmF0ZSBtaXhlcjogQW5pbWF0aW9uTWl4ZXIgfCBudWxsID0gbnVsbDtcclxuICBwcml2YXRlIG9uRW50ZXJDbGlwOiBBbmltYXRpb25DbGlwIHwgbnVsbCA9IG51bGw7XHJcbiAgcHJpdmF0ZSBtZXNoOiBNZXNoIHwgbnVsbCA9IG51bGw7XHJcbiAgcHJpdmF0ZSBjdXJyZW50VGltZTogbnVtYmVyID0gMDtcclxuICBwcml2YXRlIG5leHRVcGRhdGU6IG51bWJlciA9IDA7XHJcbiAgcHJpdmF0ZSB0ZW1wZXJhdHVyZTogbnVtYmVyID0gMDtcclxuICBwcml2YXRlIHRlbXBDaGFuZ2VSYW5nZTogbnVtYmVyID0gNTtcclxuICBwcml2YXRlIGNvbXBvbmVudDogU2NlbmVDb21wb25lbnQ7XHJcblxyXG5cclxuICBvdmVycmlkZSBpbnB1dHM6IElucHV0cyA9IHtcclxuICAgIGxvYWRpbmdTdGF0ZTogJ0lkbGUnLFxyXG4gICAgdGV4dHVyZTogbnVsbCxcclxuICAgIHVwZGF0ZUludGVydmFsOiAxMDAwLFxyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgb3V0cHV0cyA9IHtcclxuICAgIHBhaW50ZXI6IG51bGwsXHJcbiAgICB2aXNpYmxlOiBmYWxzZSxcclxuICB9IGFzIE91dHB1dHM7XHJcblxyXG4gIG92ZXJyaWRlIGV2ZW50cyA9IHtcclxuICAgIFtIb3ZlckV2ZW50XTogdHJ1ZSxcclxuICAgIFtVbmhvdmVyRXZlbnRdOiB0cnVlLFxyXG4gIH07XHJcblxyXG4gIG92ZXJyaWRlIG9uSW5pdChtb2RlbE5vZGU/OiBhbnksIHBsYW5lPzogUGxhbmVSZW5kZXJlciwgaW5wdXRUZXh0dXJlPzogYW55KSB7XHJcbiAgICBpZiAoIXRoaXMuY29udGV4dCkge1xyXG4gICAgICB0aGlzLmNvbnRleHQgPSB7XHJcbiAgICAgICAgcm9vdDogbW9kZWxOb2RlXHJcbiAgICAgIH0gYXMgQ29tcG9uZW50Q29udGV4dDtcclxuICAgIH1cclxuICAgIHRoaXMuaW5wdXRzLnRleHR1cmUgPSBpbnB1dFRleHR1cmU7XHJcbiAgICBjb25zdCByb290ID0gdGhpcy5jb250ZXh0LnJvb3Q7XHJcbiAgICBjb25zdCBUSFJFRSA9IHRoaXMuY29udGV4dC50aHJlZTtcclxuXHJcbiAgICB0aGlzLnBsYW5lUmVuZGVyZXIgPSBwbGFuZTtcclxuICAgIHRoaXMucGxhbmVSZW5kZXJlci5vdXRwdXRzLm9iamVjdFJvb3QudHJhbnNsYXRlWigwLjA1KTtcclxuICAgIHRoaXMucGxhbmVSZW5kZXJlci5vdXRwdXRzLm9iamVjdFJvb3QudHJhbnNsYXRlWSgwLjQpO1xyXG4gICAgdGhpcy5wbGFuZVJlbmRlcmVyLm91dHB1dHMub2JqZWN0Um9vdC5zY2FsZS5zZXQoMC41LCAwLjUsIDAuNSk7XHJcbiAgICAvLyBwbGFuZVJlbmRlcmVyLmlucHV0cy5sb2NhbFBvc2l0aW9uLnogPSAwLjA1O1xyXG4gICAgLy8gcGxhbmVSZW5kZXJlci5pbnB1dHMubG9jYWxQb3NpdGlvbi55ID0gMC40O1xyXG4gICAgLy8gcGxhbmVSZW5kZXJlci5pbnB1dHMubG9jYWxTY2FsZSA9IHt4OiAwLjUsIHk6IDAuNSwgejogMC41fTtcclxuXHJcbiAgICB0aGlzLm91dHB1dHMucGFpbnRlciA9IHRoaXM7XHJcblxyXG4gICAgdGhpcy5taXhlciA9IG5ldyBBbmltYXRpb25NaXhlcih0aGlzLnBsYW5lUmVuZGVyZXIub3V0cHV0cy5vYmplY3RSb290KTtcclxuXHJcbiAgICBjb25zdCB0bSA9IDAuMjtcclxuICAgIGNvbnN0IHBvc2l0aW9uVHJhY2sgPSBuZXcgVmVjdG9yS2V5ZnJhbWVUcmFjaygnLnNjYWxlJywgWzAsIHRtXSwgW1xyXG4gICAgICAwLCAwLCAwLFxyXG4gICAgICAwLjUsIDAuNSwgMC41XHJcbiAgICBdLCBJbnRlcnBvbGF0ZVNtb290aCk7XHJcbiAgICB0aGlzLm9uRW50ZXJDbGlwID0gbmV3IEFuaW1hdGlvbkNsaXAobnVsbCwgdG0sIFtwb3NpdGlvblRyYWNrXSk7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBvbklucHV0c1VwZGF0ZWQoKSB7XHJcbiAgICBpZiAodGhpcy5pbnB1dHMubG9hZGluZ1N0YXRlID09PSAnTG9hZGVkJykge1xyXG4gICAgICBjb25zdCBsaW5lczogTGluZVNlZ21lbnRzW10gPSBbXTtcclxuXHJcbiAgICAgIC8vQHRzLWlnbm9yZVxyXG4gICAgICB0aGlzLmNvbnRleHQucm9vdC5vYmozRC50cmF2ZXJzZSgob2JqOiBPYmplY3QzRCkgPT4ge1xyXG4gICAgICAgIC8vIHdlIGRvbnQgd2FudCBsaW5lIHNlZ21lbnRzLCB0cmFjayB0aGVtIGFuZCByZW1vdmUgdGhlbS5cclxuICAgICAgICBpZiAob2JqLnR5cGUgPT09ICdMaW5lU2VnbWVudHMnKSB7XHJcbiAgICAgICAgICBsaW5lcy5wdXNoKG9iaiBhcyBMaW5lU2VnbWVudHMpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAob2JqLnR5cGUgPT09ICdNZXNoJykge1xyXG4gICAgICAgICAgdGhpcy5tZXNoID0gb2JqIGFzIE1lc2g7XHJcblxyXG4gICAgICAgICAgY29uc3QgbWF0ZXJpYWxzID0gdGhpcy5tZXNoLm1hdGVyaWFsIGFzIE1lc2hMYW1iZXJ0TWF0ZXJpYWw7XHJcbiAgICAgICAgICBtYXRlcmlhbHMuZm9yRWFjaCgobSwgaWR4KSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChtICYmIG0ubWFwLnNvdXJjZS5kYXRhLm91dGVySFRNTC5pbmRleE9mKCdfNWI3NmRiZTM4ODg2MjMwMDEyNmMxZTE0JykgIT09IC0xKSB7XHJcbiAgICAgICAgICAgICAgY29uc3QgbmV3TWF0ZXJpYWwgPSBuZXcgTWVzaEJhc2ljTWF0ZXJpYWwoe21hcDogdGhpcy5pbnB1dHMudGV4dHVyZX0pO1xyXG4gICAgICAgICAgICAgIHRoaXMubWVzaC5tYXRlcmlhbFtpZHhdID0gbmV3TWF0ZXJpYWw7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pXHJcblxyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcblxyXG4gICAgICAvLyByZW1vdmUgdGhlIGxpbmUgc2VnbWVudHMuXHJcbiAgICAgIGxpbmVzLmZvckVhY2goKGxpbmU6IExpbmVTZWdtZW50cykgPT4ge1xyXG4gICAgICAgIGxpbmUucGFyZW50LnJlbW92ZShsaW5lKTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBvbkV2ZW50KGV2ZW50VHlwZTogc3RyaW5nLCBldmVudERhdGE6IHVua25vd24pOiB2b2lkIHtcclxuICAgIGlmIChldmVudFR5cGUgPT09IEhvdmVyRXZlbnQpIHtcclxuICAgICAgY29uc3QgZGF0YTogYW55ID0gZXZlbnREYXRhO1xyXG4gICAgICBpZiAoZGF0YS5ob3Zlcikge1xyXG4gICAgICAgIHRoaXMub3V0cHV0cy52aXNpYmxlID0gdHJ1ZTtcclxuICAgICAgICBjb25zdCBvbkVudGVyQWN0aW9uOiBBbmltYXRpb25BY3Rpb24gPSB0aGlzLm1peGVyLmNsaXBBY3Rpb24odGhpcy5vbkVudGVyQ2xpcCk7XHJcbiAgICAgICAgb25FbnRlckFjdGlvbi5zdG9wKCk7XHJcbiAgICAgICAgb25FbnRlckFjdGlvbi5sb29wID0gTG9vcE9uY2U7XHJcbiAgICAgICAgb25FbnRlckFjdGlvbi5jbGFtcFdoZW5GaW5pc2hlZCA9IHRydWU7XHJcbiAgICAgICAgb25FbnRlckFjdGlvbi5wbGF5KCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5vdXRwdXRzLnZpc2libGUgPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcGFpbnQoY29udGV4dDJkOiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQsIHNpemU6IFNpemUpOiB2b2lkIHtcclxuICAgIGNvbnN0IHggPSA0OTA7XHJcbiAgICBjb25zdCB5ID0gNDkwO1xyXG5cclxuICAgIGNvbnRleHQyZC5maWxsU3R5bGUgPSAnYmxhY2snO1xyXG4gICAgY29udGV4dDJkLmJlZ2luUGF0aCgpO1xyXG4gICAgY29udGV4dDJkLmFyYyh4LCB5LCA0MDAsIDAsIE1hdGguUEkgKiAyKTtcclxuICAgIGNvbnRleHQyZC5maWxsKCk7XHJcblxyXG4gICAgY29udGV4dDJkLmZpbGxTdHlsZSA9ICcjQ0Y1MzAwJztcclxuICAgIGNvbnRleHQyZC5iZWdpblBhdGgoKTtcclxuICAgIGNvbnRleHQyZC5hcmMoeCwgeSwgMzAwLCAwLCBNYXRoLlBJICogMik7XHJcbiAgICBjb250ZXh0MmQuZmlsbCgpO1xyXG5cclxuICAgIGNvbnRleHQyZC5iZWdpblBhdGgoKTtcclxuICAgIGNvbnRleHQyZC5zdHJva2VTdHlsZSA9ICdvcmFuZ2UnO1xyXG4gICAgY29udGV4dDJkLmFyYyh4LCB5LCAyNDAsIDAuNzUgKiBNYXRoLlBJLCAwLjI1ICogTWF0aC5QSSk7XHJcbiAgICBjb250ZXh0MmQubGluZUNhcCA9ICdidXR0JztcclxuICAgIGNvbnRleHQyZC5saW5lV2lkdGggPSA4MDtcclxuICAgIGNvbnRleHQyZC5zdHJva2UoKTtcclxuXHJcbiAgICBjb250ZXh0MmQuZmlsbFN0eWxlID0gJ3doaXRlJztcclxuICAgIGNvbnRleHQyZC5mb250ID0gJzIyMHB4IEFyaWFsJztcclxuICAgIGNvbnRleHQyZC5maWxsVGV4dChgJHt0aGlzLnRlbXBlcmF0dXJlfWAsIHggLSAxMTUsIHkgKyA3NSk7XHJcbiAgICB0aGlzLm91dHB1dHMudmlzaWJsZSA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBvblRpY2soZGVsdGE6IG51bWJlcikge1xyXG4gICAgdGhpcy5jdXJyZW50VGltZSArPSBkZWx0YTtcclxuXHJcbiAgICBpZiAodGhpcy5taXhlcikge1xyXG4gICAgICB0aGlzLm1peGVyLnVwZGF0ZShkZWx0YSAvIDEwMDApO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmN1cnJlbnRUaW1lID4gdGhpcy5uZXh0VXBkYXRlKSB7XHJcbiAgICAgIHRoaXMubmV4dFVwZGF0ZSArPSB0aGlzLmlucHV0cy51cGRhdGVJbnRlcnZhbDtcclxuXHJcbiAgICAgIHRoaXMudGVtcGVyYXR1cmUgKz0gKE1hdGgucmFuZG9tKCkgKiB0aGlzLnRlbXBDaGFuZ2VSYW5nZSk7XHJcbiAgICAgIHRoaXMudGVtcGVyYXR1cmUgPSBNYXRoLnRydW5jKHRoaXMudGVtcGVyYXR1cmUpO1xyXG5cclxuICAgICAgaWYgKHRoaXMudGVtcGVyYXR1cmUgPiA5OSkge1xyXG4gICAgICAgIHRoaXMudGVtcGVyYXR1cmUgPSA5OTtcclxuICAgICAgICB0aGlzLnRlbXBDaGFuZ2VSYW5nZSA9IC10aGlzLnRlbXBDaGFuZ2VSYW5nZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy50ZW1wZXJhdHVyZSA8IDEwKSB7XHJcbiAgICAgICAgdGhpcy50ZW1wZXJhdHVyZSA9IDEwO1xyXG4gICAgICAgIHRoaXMudGVtcENoYW5nZVJhbmdlID0gLXRoaXMudGVtcENoYW5nZVJhbmdlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLmNvbXBvbmVudC5ub3RpZnkoUmVwYWludEV2ZW50KTtcclxuICAgICAgdGhpcy5jdi5yZXBhaW50KClcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNldENvbXBvbmVudChjb21wb25lbnQ6IFNjZW5lQ29tcG9uZW50LCBwbGFuZTogUGxhbmVSZW5kZXJlciwgY3Y6IENhbnZhc1JlbmRlcmVyKSB7XHJcbiAgICBjb21wb25lbnQub25UaWNrID0gdGhpcy5vblRpY2suYmluZCh0aGlzKTtcclxuICAgIC8vIHBsYW5lLm9uVGljayA9IHRoaXMub25UaWNrLmJpbmQodGhpcyk7XHJcbiAgICB0aGlzLmN2ID0gY3Y7XHJcbiAgICB0aGlzLmNvbXBvbmVudCA9IGNvbXBvbmVudDtcclxuICAgIHRoaXMuY29udGV4dCA9IGNvbXBvbmVudC5jb250ZXh0O1xyXG4gIH1cclxuXHJcbiAgc2V0Um9vdFNjZW5lKHJvb3RTY2VuZTogT2JqZWN0M0QpIHtcclxuICAgIHRoaXMucm9vdFNjZW5lID0gcm9vdFNjZW5lO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IG5lc3RUaGVybW9zdGF0VHlwZSA9ICdtcC5uZXN0VGhlcm1vc3RhdCc7XHJcbmV4cG9ydCBjb25zdCBtYWtlTmVzdFRoZXJtb3N0YXQgPSBmdW5jdGlvbiAoKSB7XHJcbiAgcmV0dXJuIG5ldyBOZXN0VGhlcm1vc3RhdCgpO1xyXG59XHJcbiJdfQ==
|
|
@@ -81,4 +81,4 @@ export const planeRendererType = 'mp.planeRenderer';
|
|
|
81
81
|
export function makePlaneRenderer() {
|
|
82
82
|
return new PlaneRenderer();
|
|
83
83
|
}
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGxhbmVSZW5kZXJlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zbWFydGVycGxhbi1jb3JlL3NyYy9saWIvbWF0dGVycG9ydC1leHRlbnNpb25zL25lc3QtdGhlcm1vc3RhdC9QbGFuZVJlbmRlcmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxjQUFjLEVBQUUsd0JBQXdCLEdBQW9CLE1BQU0sbUNBQW1DLENBQUM7QUFDOUcsT0FBTyxFQUVMLElBQUksRUFDSixpQkFBaUIsRUFFakIsS0FBSyxFQUNMLG1CQUFtQixFQUNwQixNQUFNLE9BQU8sQ0FBQztBQWlCZixNQUFNLE9BQU8sYUFBYyxTQUFRLGNBQWM7SUFDdkMsU0FBUyxHQUFvQixJQUFJLENBQUM7SUFDbEMsSUFBSSxDQUFPO0lBQ1gsU0FBUyxDQUFXO0lBRW5CLE1BQU0sR0FBVztRQUN4QixPQUFPLEVBQUUsSUFBSTtRQUNiLE1BQU0sRUFBRSxDQUFDO1FBQ1QsV0FBVyxFQUFFLElBQUk7UUFDakIsT0FBTyxFQUFFLElBQUk7UUFDYixPQUFPLEVBQUUsQ0FBQztRQUNWLGFBQWEsRUFBRSxLQUFLO1FBQ3BCLG1CQUFtQixFQUFFLENBQUM7UUFDdEIsa0JBQWtCLEVBQUUsQ0FBQztRQUNyQixVQUFVLEVBQUUsRUFBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBQztRQUM5QixhQUFhLEVBQUUsRUFBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBQztLQUNsQyxDQUFBO0lBRVEsTUFBTSxHQUFHO1FBQ2hCLENBQUMsd0JBQXdCLENBQUMsS0FBSyxDQUFDLEVBQUUsSUFBSTtLQUN2QyxDQUFDO0lBRU8sTUFBTSxDQUFDLFNBQWUsRUFBRSxZQUFrQjtRQUNqRCxJQUFJLENBQUMsTUFB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Q0FBQztJQUVELFlBQVksQ0FBQyxTQUFtQjtRQUM5QixJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztJQUM3QixDQUFDO0NBRUY7QUFNRCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxrQkFBa0IsQ0FBQztBQUVwRCxNQUFNLFVBQVUsaUJBQWlCO0lBQy9CLE9BQU8sSUFBSSxhQUFhLEVBQUUsQ0FBQztBQUM3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtTY2VuZUNvbXBvbmVudCwgQ29tcG9uZW50SW50ZXJhY3Rpb25UeXBlLCBDb21wb25lbnRDb250ZXh0LH0gZnJvbSAnLi4vc2NlbmUtY29tcG9uZW50L1NjZW5lQ29tcG9uZW50JztcclxuaW1wb3J0IHtcclxuICBUZXh0dXJlLFxyXG4gIE1lc2gsXHJcbiAgTWVzaEJhc2ljTWF0ZXJpYWwsXHJcbiAgT2JqZWN0M0QsXHJcbiAgR3JvdXAsXHJcbiAgUGxhbmVCdWZmZXJHZW9tZXRyeVxyXG59IGZyb20gJ3RocmVlJztcclxuXHJcbmV4cG9ydCB0eXBlIFNpemUgPSB7IHc6IG51bWJlcjsgaDogbnVtYmVyOyB9O1xyXG5cclxudHlwZSBJbnB1dHMgPSB7XHJcbiAgdGV4dHVyZTogVGV4dHVyZSB8IG51bGw7XHJcbiAgYXNwZWN0OiBudW1iZXI7XHJcbiAgdHJhbnNwYXJlbnQ6IGJvb2xlYW47XHJcbiAgdmlzaWJsZTogYm9vbGVhbjtcclxuICBvcGFjaXR5OiBudW1iZXI7XHJcbiAgcG9seWdvbk9mZnNldDogYm9vbGVhbjtcclxuICBwb2x5Z29uT2Zmc2V0RmFjdG9yOiBudW1iZXI7XHJcbiAgcG9seWdvbk9mZnNldFVuaXRzOiBudW1iZXI7XHJcbiAgbG9jYWxTY2FsZTogeyB4OiBudW1iZXI7IHk6IG51bWJlcjsgejogbnVtYmVyOyB9O1xyXG4gIGxvY2FsUG9zaXRpb246IHsgeDogbnVtYmVyOyB5OiBudW1iZXI7IHo6IG51bWJlcjsgfTtcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFBsYW5lUmVuZGVyZXIgZXh0ZW5kcyBTY2VuZUNvbXBvbmVudCBpbXBsZW1lbnRzIElQbGFuZVJlbmRlcmVyIHtcclxuICBwcml2YXRlIHJvb3RTY2VuZTogT2JqZWN0M0QgfCBudWxsID0gbnVsbDtcclxuICBwcml2YXRlIG1lc2g6IE1lc2g7XHJcbiAgcHJpdmF0ZSBwaXZvdE5vZGU6IE9iamVjdDNEO1xyXG5cclxuICBvdmVycmlkZSBpbnB1dHM6IElucHV0cyA9IHtcclxuICAgIHRleHR1cmU6IG51bGwsXHJcbiAgICBhc3BlY3Q6IDEsXHJcbiAgICB0cmFuc3BhcmVudDogdHJ1ZSxcclxuICAgIHZpc2libGU6IHRydWUsXHJcbiAgICBvcGFjaXR5OiAxLFxyXG4gICAgcG9seWdvbk9mZnNldDogZmFsc2UsXHJcbiAgICBwb2x5Z29uT2Zmc2V0RmFjdG9yOiAwLFxyXG4gICAgcG9seWdvbk9mZnNldFVuaXRzOiAwLFxyXG4gICAgbG9jYWxTY2FsZToge3g6IDEsIHk6IDEsIHo6IDF9LFxyXG4gICAgbG9jYWxQb3NpdGlvbjoge3g6IDAsIHk6IDAsIHo6IDB9LFxyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgZXZlbnRzID0ge1xyXG4gICAgW0NvbXBvbmVudEludGVyYWN0aW9uVHlwZS5DTElDS106IHRydWUsXHJcbiAgfTtcclxuXHJcbiAgb3ZlcnJpZGUgb25Jbml0KG1vZGVsTm9kZT86IGFueSwgaW5wdXRUZXh0dXJlPzogYW55KSB7XHJcbiAgICB0aGlzLmlucHV0cy50ZXh0dXJlID0gaW5wdXRUZXh0dXJlO1xyXG4gICAgaWYgKCF0aGlzLmNvbnRleHQpIHtcclxuICAgICAgdGhpcy5jb250ZXh0ID0ge1xyXG4gICAgICAgIHJvb3Q6IG1vZGVsTm9kZVxyXG4gICAgICB9IGFzIENvbXBvbmVudENvbnRleHQ7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5waXZvdE5vZGUgPSBuZXcgR3JvdXAoKTtcclxuXHJcbiAgICB0aGlzLm1lc2ggPSBuZXcgTWVzaChcclxuICAgICAgbmV3IFBsYW5lQnVmZmVyR2VvbWV0cnkoMS4wLCAxLjApLFxyXG4gICAgICBuZXcgTWVzaEJhc2ljTWF0ZXJpYWwoe1xyXG4gICAgICAgIHRyYW5zcGFyZW50OiB0aGlzLmlucHV0cy50cmFuc3BhcmVudCxcclxuICAgICAgICBtYXA6IHRoaXMuaW5wdXRzLnRleHR1cmUsXHJcbiAgICAgICAgb3BhY2l0eTogdGhpcy5pbnB1dHMub3BhY2l0eSxcclxuICAgICAgICBwb2x5Z29uT2Zmc2V0OiB0aGlzLmlucHV0cy5wb2x5Z29uT2Zmc2V0LFxyXG4gICAgICAgIHBvbHlnb25PZmZzZXRGYWN0b3I6IHRoaXMuaW5wdXRzLnBvbHlnb25PZmZzZXRGYWN0b3IsXHJcbiAgICAgICAgcG9seWdvbk9mZnNldFVuaXRzOiB0aGlzLmlucHV0cy5wb2x5Z29uT2Zmc2V0VW5pdHMsXHJcbiAgICAgIH0pKTtcclxuICAgIHRoaXMubWVzaC5zY2FsZS5zZXQodGhpcy5pbnB1dHMubG9jYWxTY2FsZS54LCB0aGlzLmlucHV0cy5sb2NhbFNjYWxlLnkgLyB0aGlzLmlucHV0cy5hc3BlY3QsIHRoaXMuaW5wdXRzLmxvY2FsU2NhbGUueik7XHJcbiAgICB0aGlzLm1lc2gucG9zaXRpb24uc2V0KHRoaXMuaW5wdXRzLmxvY2FsUG9zaXRpb24ueCwgdGhpcy5pbnB1dHMubG9jYWxQb3NpdGlvbi55LCB0aGlzLmlucHV0cy5sb2NhbFBvc2l0aW9uLnopO1xyXG4gICAgdGhpcy5tZXNoLnVwZGF0ZU1hdHJpeFdvcmxkKCk7XHJcbiAgICB0aGlzLnBpdm90Tm9kZS5hZGQodGhpcy5tZXNoKTtcclxuXHJcbiAgICB0aGlzLm91dHB1dHMub2JqZWN0Um9vdCA9IHRoaXMucGl2b3ROb2RlO1xyXG4gICAgdGhpcy5vdXRwdXRzLmNvbGxpZGVyID0gdGhpcy5waXZvdE5vZGU7XHJcbiAgICB0aGlzLm1lc2gudmlzaWJsZSA9IHRoaXMuaW5wdXRzLnZpc2libGU7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBvbkV2ZW50KGV2ZW50VHlwZTogc3RyaW5nLCBldmVudERhdGE6IHVua25vd24pIHtcclxuICAgIHRoaXMubm90aWZ5KGV2ZW50VHlwZSwgZXZlbnREYXRhKTtcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIG9uSW5wdXRzVXBkYXRlZChvbGRJbnB1dHM6IElucHV0cykge1xyXG4gICAgaWYgKG9sZElucHV0cy50cmFuc3BhcmVudCAhPT0gdGhpcy5pbnB1dHMudHJhbnNwYXJlbnQpIHtcclxuICAgICAgKHRoaXMubWVzaC5tYXRlcmlhbCBhcyBNZXNoQmFzaWNNYXRlcmlhbCkudHJhbnNwYXJlbnQgPSB0aGlzLmlucHV0cy50cmFuc3BhcmVudDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAob2xkSW5wdXRzLnRleHR1cmUgIT09IHRoaXMuaW5wdXRzLnRleHR1cmUpIHtcclxuICAgICAgY29uc3QgbWF0ZXJpYWwgPSB0aGlzLm1lc2gubWF0ZXJpYWwgYXMgTWVzaEJhc2ljTWF0ZXJpYWw7XHJcbiAgICAgIG1hdGVyaWFsLm1hcCA9IHRoaXMuaW5wdXRzLnRleHR1cmU7XHJcbiAgICAgIG1hdGVyaWFsLm5lZWRzVXBkYXRlID0gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAob2xkSW5wdXRzLnZpc2libGUgIT09IHRoaXMuaW5wdXRzLnZpc2libGUpIHtcclxuICAgICAgdGhpcy5tZXNoLnZpc2libGUgPSB0aGlzLmlucHV0cy52aXNpYmxlO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChvbGRJbnB1dHMucG9seWdvbk9mZnNldCAhPT0gdGhpcy5pbnB1dHMucG9seWdvbk9mZnNldCkge1xyXG4gICAgICBjb25zdCBtYXRlcmlhbCA9IHRoaXMubWVzaC5tYXRlcmlhbCBhcyBNZXNoQmFzaWNNYXRlcmlhbDtcclxuICAgICAgbWF0ZXJpYWwucG9seWdvbk9mZnNldCA9IHRoaXMuaW5wdXRzLnBvbHlnb25PZmZzZXQ7XHJcbiAgICAgIG1hdGVyaWFsLnBvbHlnb25PZmZzZXRGYWN0b3IgPSB0aGlzLmlucHV0cy5wb2x5Z29uT2Zmc2V0RmFjdG9yO1xyXG4gICAgICBtYXRlcmlhbC5wb2x5Z29uT2Zmc2V0VW5pdHMgPSB0aGlzLmlucHV0cy5wb2x5Z29uT2Zmc2V0VW5pdHM7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5tZXNoLnNjYWxlLnNldCh0aGlzLmlucHV0cy5sb2NhbFNjYWxlLngsIHRoaXMuaW5wdXRzLmxvY2FsU2NhbGUueSAvIHRoaXMuaW5wdXRzLmFzcGVjdCwgdGhpcy5pbnB1dHMubG9jYWxTY2FsZS56KTtcclxuICAgIHRoaXMubWVzaC5wb3NpdGlvbi5zZXQodGhpcy5pbnB1dHMubG9jYWxQb3NpdGlvbi54LCB0aGlzLmlucHV0cy5sb2NhbFBvc2l0aW9uLnksIHRoaXMuaW5wdXRzLmxvY2FsUG9zaXRpb24ueik7XHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBvbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLm91dHB1dHMuY29sbGlkZXIgPSBudWxsO1xyXG4gICAgdGhpcy5vdXRwdXRzLm9iamVjdFJvb3QgPSBudWxsO1xyXG5cclxuICAgICh0aGlzLm1lc2gubWF0ZXJpYWwgYXMgTWVzaEJhc2ljTWF0ZXJpYWwpLmRpc3Bvc2UoKTtcclxuICAgIHRoaXMubWVzaC5nZW9tZXRyeS5kaXNwb3NlKCk7XHJcbiAgfVxyXG5cclxuICBzZXRSb290U2NlbmUocm9vdFNjZW5lOiBPYmplY3QzRCkge1xyXG4gICAgdGhpcy5yb290U2NlbmUgPSByb290U2NlbmU7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBJUGxhbmVSZW5kZXJlciBleHRlbmRzIFNjZW5lQ29tcG9uZW50IHtcclxuICBpbnB1dHM6IElucHV0cztcclxufVxyXG5cclxuZXhwb3J0IGNvbnN0IHBsYW5lUmVuZGVyZXJUeXBlID0gJ21wLnBsYW5lUmVuZGVyZXInO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG1ha2VQbGFuZVJlbmRlcmVyKCkge1xyXG4gIHJldHVybiBuZXcgUGxhbmVSZW5kZXJlcigpO1xyXG59XHJcbiJdfQ==
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUGxhbmVSZW5kZXJlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zbWFydGVycGxhbi1jb3JlL3NyYy9saWIvbWF0dGVycG9ydC1leHRlbnNpb25zL25lc3QtdGhlcm1vc3RhdC9QbGFuZVJlbmRlcmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxjQUFjLEVBQUUsd0JBQXdCLEdBQW9CLE1BQU0sbUNBQW1DLENBQUM7QUFDOUcsT0FBTyxFQUVMLElBQUksRUFDSixpQkFBaUIsRUFFakIsS0FBSyxFQUNMLG1CQUFtQixFQUNwQixNQUFNLE9BQU8sQ0FBQztBQWlCZixNQUFNLE9BQU8sYUFBYyxTQUFRLGNBQWM7SUFDdkMsU0FBUyxHQUFvQixJQUFJLENBQUM7SUFDbEMsSUFBSSxDQUFPO0lBQ1gsU0FBUyxDQUFXO0lBRW5CLE1BQU0sR0FBVztRQUN4QixPQUFPLEVBQUUsSUFBSTtRQUNiLE1BQU0sRUFBRSxDQUFDO1FBQ1QsV0FBVyxFQUFFLElBQUk7UUFDakIsT0FBTyxFQUFFLElBQUk7UUFDYixPQUFPLEVBQUUsQ0FBQztRQUNWLGFBQWEsRUFBRSxLQUFLO1FBQ3BCLG1CQUFtQixFQUFFLENBQUM7UUFDdEIsa0JBQWtCLEVBQUUsQ0FBQztRQUNyQixVQUFVLEVBQUUsRUFBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBQztRQUM5QixhQUFhLEVBQUUsRUFBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBQztLQUNsQyxDQUFBO0lBRVEsTUFBTSxHQUFHO1FBQ2hCLENBQUMsd0JBQXdCLENBQUMsS0FBSyxDQUFDLEVBQUUsSUFBSTtLQUN2QyxDQUFDO0lBRU8sTUFBTSxDQUFDLFNBQWUsRUFBRSxZQUFrQjtRQUNqRCxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sR0FBRyxZQUFZLENBQUM7UUFDbkMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNsQixJQUFJLENBQUMsT0FBTyxHQUFHO2dCQUNiLElBQUksRUFBRSxTQUFTO2FBQ0ksQ0FBQztRQUN4QixDQUFDO1FBRUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDO1FBRTdCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQ2xCLElBQUksbUJBQW1CLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxFQUNqQyxJQUFJLGlCQUFpQixDQUFDO1lBQ3BCLFdBQVcsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVc7WUFDcEMsR0FBRyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTztZQUN4QixPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPO1lBQzVCLGFBQWEsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWE7WUFDeEMsbUJBQW1CLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxtQkFBbUI7WUFDcEQsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxrQkFBa0I7U0FDbkQsQ0FBQyxDQUFDLENBQUM7UUFDTixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN2SCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM5RyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDOUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTlCLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFDekMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUN2QyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQztJQUMxQyxDQUFDO0lBRVEsT0FBTyxDQUFDLFNBQWlCLEVBQUUsU0FBa0I7UUFDcEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVRLGVBQWUsQ0FBQyxTQUFpQjtRQUN4QyxJQUFJLFNBQVMsQ0FBQyxXQUFXLEtBQUssSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNyRCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQThCLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDO1FBQ2xGLENBQUM7UUFFRCxJQUFJLFNBQVMsQ0FBQyxPQUFPLEtBQUssSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUM5QyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQTZCLENBQUM7WUFDekQsUUFBUSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQztZQUNuQyxRQUFRLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztRQUM5QixDQUFDO1FBRUQsSUFBSSxTQUFTLENBQUMsT0FBTyxLQUFLLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDOUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDMUMsQ0FBQztRQUVELElBQUksU0FBUyxDQUFDLGFBQWEsS0FBSyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQzFELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBNkIsQ0FBQztZQUN6RCxRQUFRLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDO1lBQ25ELFFBQVEsQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLG1CQUFtQixDQUFDO1lBQy9ELFFBQVEsQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDO1FBQy9ELENBQUM7UUFFRCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN2SCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNoSCxDQUFDO0lBRVEsU0FBUztRQUNoQixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDN0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDO1FBRTlCLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBOEIsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNwRCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUMvQixDQUFDO0lBRUQsWUFBWSxDQUFDLFNBQW1CO1FBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO0lBQzdCLENBQUM7Q0FFRjtBQU1ELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLGtCQUFrQixDQUFDO0FBRXBELE1BQU0sVUFBVSxpQkFBaUI7SUFDL0IsT0FBTyxJQUFJLGFBQWEsRUFBRSxDQUFDO0FBQzdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1NjZW5lQ29tcG9uZW50LCBDb21wb25lbnRJbnRlcmFjdGlvblR5cGUsIENvbXBvbmVudENvbnRleHQsfSBmcm9tICcuLi9zY2VuZS1jb21wb25lbnQvU2NlbmVDb21wb25lbnQnO1xyXG5pbXBvcnQge1xyXG4gIFRleHR1cmUsXHJcbiAgTWVzaCxcclxuICBNZXNoQmFzaWNNYXRlcmlhbCxcclxuICBPYmplY3QzRCxcclxuICBHcm91cCxcclxuICBQbGFuZUJ1ZmZlckdlb21ldHJ5XHJcbn0gZnJvbSAndGhyZWUnO1xyXG5cclxuZXhwb3J0IHR5cGUgU2l6ZSA9IHsgdzogbnVtYmVyOyBoOiBudW1iZXI7IH07XHJcblxyXG50eXBlIElucHV0cyA9IHtcclxuICB0ZXh0dXJlOiBUZXh0dXJlIHwgbnVsbDtcclxuICBhc3BlY3Q6IG51bWJlcjtcclxuICB0cmFuc3BhcmVudDogYm9vbGVhbjtcclxuICB2aXNpYmxlOiBib29sZWFuO1xyXG4gIG9wYWNpdHk6IG51bWJlcjtcclxuICBwb2x5Z29uT2Zmc2V0OiBib29sZWFuO1xyXG4gIHBvbHlnb25PZmZzZXRGYWN0b3I6IG51bWJlcjtcclxuICBwb2x5Z29uT2Zmc2V0VW5pdHM6IG51bWJlcjtcclxuICBsb2NhbFNjYWxlOiB7IHg6IG51bWJlcjsgeTogbnVtYmVyOyB6OiBudW1iZXI7IH07XHJcbiAgbG9jYWxQb3NpdGlvbjogeyB4OiBudW1iZXI7IHk6IG51bWJlcjsgejogbnVtYmVyOyB9O1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgUGxhbmVSZW5kZXJlciBleHRlbmRzIFNjZW5lQ29tcG9uZW50IGltcGxlbWVudHMgSVBsYW5lUmVuZGVyZXIge1xyXG4gIHByaXZhdGUgcm9vdFNjZW5lOiBPYmplY3QzRCB8IG51bGwgPSBudWxsO1xyXG4gIHByaXZhdGUgbWVzaDogTWVzaDtcclxuICBwcml2YXRlIHBpdm90Tm9kZTogT2JqZWN0M0Q7XHJcblxyXG4gIG92ZXJyaWRlIGlucHV0czogSW5wdXRzID0ge1xyXG4gICAgdGV4dHVyZTogbnVsbCxcclxuICAgIGFzcGVjdDogMSxcclxuICAgIHRyYW5zcGFyZW50OiB0cnVlLFxyXG4gICAgdmlzaWJsZTogdHJ1ZSxcclxuICAgIG9wYWNpdHk6IDEsXHJcbiAgICBwb2x5Z29uT2Zmc2V0OiBmYWxzZSxcclxuICAgIHBvbHlnb25PZmZzZXRGYWN0b3I6IDAsXHJcbiAgICBwb2x5Z29uT2Zmc2V0VW5pdHM6IDAsXHJcbiAgICBsb2NhbFNjYWxlOiB7eDogMSwgeTogMSwgejogMX0sXHJcbiAgICBsb2NhbFBvc2l0aW9uOiB7eDogMCwgeTogMCwgejogMH0sXHJcbiAgfVxyXG5cclxuICBvdmVycmlkZSBldmVudHMgPSB7XHJcbiAgICBbQ29tcG9uZW50SW50ZXJhY3Rpb25UeXBlLkNMSUNLXTogdHJ1ZSxcclxuICB9O1xyXG5cclxuICBvdmVycmlkZSBvbkluaXQobW9kZWxOb2RlPzogYW55LCBpbnB1dFRleHR1cmU/OiBhbnkpIHtcclxuICAgIHRoaXMuaW5wdXRzLnRleHR1cmUgPSBpbnB1dFRleHR1cmU7XHJcbiAgICBpZiAoIXRoaXMuY29udGV4dCkge1xyXG4gICAgICB0aGlzLmNvbnRleHQgPSB7XHJcbiAgICAgICAgcm9vdDogbW9kZWxOb2RlXHJcbiAgICAgIH0gYXMgQ29tcG9uZW50Q29udGV4dDtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnBpdm90Tm9kZSA9IG5ldyBHcm91cCgpO1xyXG5cclxuICAgIHRoaXMubWVzaCA9IG5ldyBNZXNoKFxyXG4gICAgICBuZXcgUGxhbmVCdWZmZXJHZW9tZXRyeSgxLjAsIDEuMCksXHJcbiAgICAgIG5ldyBNZXNoQmFzaWNNYXRlcmlhbCh7XHJcbiAgICAgICAgdHJhbnNwYXJlbnQ6IHRoaXMuaW5wdXRzLnRyYW5zcGFyZW50LFxyXG4gICAgICAgIG1hcDogdGhpcy5pbnB1dHMudGV4dHVyZSxcclxuICAgICAgICBvcGFjaXR5OiB0aGlzLmlucHV0cy5vcGFjaXR5LFxyXG4gICAgICAgIHBvbHlnb25PZmZzZXQ6IHRoaXMuaW5wdXRzLnBvbHlnb25PZmZzZXQsXHJcbiAgICAgICAgcG9seWdvbk9mZnNldEZhY3RvcjogdGhpcy5pbnB1dHMucG9seWdvbk9mZnNldEZhY3RvcixcclxuICAgICAgICBwb2x5Z29uT2Zmc2V0VW5pdHM6IHRoaXMuaW5wdXRzLnBvbHlnb25PZmZzZXRVbml0cyxcclxuICAgICAgfSkpO1xyXG4gICAgdGhpcy5tZXNoLnNjYWxlLnNldCh0aGlzLmlucHV0cy5sb2NhbFNjYWxlLngsIHRoaXMuaW5wdXRzLmxvY2FsU2NhbGUueSAvIHRoaXMuaW5wdXRzLmFzcGVjdCwgdGhpcy5pbnB1dHMubG9jYWxTY2FsZS56KTtcclxuICAgIHRoaXMubWVzaC5wb3NpdGlvbi5zZXQodGhpcy5pbnB1dHMubG9jYWxQb3NpdGlvbi54LCB0aGlzLmlucHV0cy5sb2NhbFBvc2l0aW9uLnksIHRoaXMuaW5wdXRzLmxvY2FsUG9zaXRpb24ueik7XHJcbiAgICB0aGlzLm1lc2gudXBkYXRlTWF0cml4V29ybGQoKTtcclxuICAgIHRoaXMucGl2b3ROb2RlLmFkZCh0aGlzLm1lc2gpO1xyXG5cclxuICAgIHRoaXMub3V0cHV0cy5vYmplY3RSb290ID0gdGhpcy5waXZvdE5vZGU7XHJcbiAgICB0aGlzLm91dHB1dHMuY29sbGlkZXIgPSB0aGlzLnBpdm90Tm9kZTtcclxuICAgIHRoaXMubWVzaC52aXNpYmxlID0gdGhpcy5pbnB1dHMudmlzaWJsZTtcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIG9uRXZlbnQoZXZlbnRUeXBlOiBzdHJpbmcsIGV2ZW50RGF0YTogdW5rbm93bikge1xyXG4gICAgdGhpcy5ub3RpZnkoZXZlbnRUeXBlLCBldmVudERhdGEpO1xyXG4gIH1cclxuXHJcbiAgb3ZlcnJpZGUgb25JbnB1dHNVcGRhdGVkKG9sZElucHV0czogSW5wdXRzKSB7XHJcbiAgICBpZiAob2xkSW5wdXRzLnRyYW5zcGFyZW50ICE9PSB0aGlzLmlucHV0cy50cmFuc3BhcmVudCkge1xyXG4gICAgICAodGhpcy5tZXNoLm1hdGVyaWFsIGFzIE1lc2hCYXNpY01hdGVyaWFsKS50cmFuc3BhcmVudCA9IHRoaXMuaW5wdXRzLnRyYW5zcGFyZW50O1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChvbGRJbnB1dHMudGV4dHVyZSAhPT0gdGhpcy5pbnB1dHMudGV4dHVyZSkge1xyXG4gICAgICBjb25zdCBtYXRlcmlhbCA9IHRoaXMubWVzaC5tYXRlcmlhbCBhcyBNZXNoQmFzaWNNYXRlcmlhbDtcclxuICAgICAgbWF0ZXJpYWwubWFwID0gdGhpcy5pbnB1dHMudGV4dHVyZTtcclxuICAgICAgbWF0ZXJpYWwubmVlZHNVcGRhdGUgPSB0cnVlO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChvbGRJbnB1dHMudmlzaWJsZSAhPT0gdGhpcy5pbnB1dHMudmlzaWJsZSkge1xyXG4gICAgICB0aGlzLm1lc2gudmlzaWJsZSA9IHRoaXMuaW5wdXRzLnZpc2libGU7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKG9sZElucHV0cy5wb2x5Z29uT2Zmc2V0ICE9PSB0aGlzLmlucHV0cy5wb2x5Z29uT2Zmc2V0KSB7XHJcbiAgICAgIGNvbnN0IG1hdGVyaWFsID0gdGhpcy5tZXNoLm1hdGVyaWFsIGFzIE1lc2hCYXNpY01hdGVyaWFsO1xyXG4gICAgICBtYXRlcmlhbC5wb2x5Z29uT2Zmc2V0ID0gdGhpcy5pbnB1dHMucG9seWdvbk9mZnNldDtcclxuICAgICAgbWF0ZXJpYWwucG9seWdvbk9mZnNldEZhY3RvciA9IHRoaXMuaW5wdXRzLnBvbHlnb25PZmZzZXRGYWN0b3I7XHJcbiAgICAgIG1hdGVyaWFsLnBvbHlnb25PZmZzZXRVbml0cyA9IHRoaXMuaW5wdXRzLnBvbHlnb25PZmZzZXRVbml0cztcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLm1lc2guc2NhbGUuc2V0KHRoaXMuaW5wdXRzLmxvY2FsU2NhbGUueCwgdGhpcy5pbnB1dHMubG9jYWxTY2FsZS55IC8gdGhpcy5pbnB1dHMuYXNwZWN0LCB0aGlzLmlucHV0cy5sb2NhbFNjYWxlLnopO1xyXG4gICAgdGhpcy5tZXNoLnBvc2l0aW9uLnNldCh0aGlzLmlucHV0cy5sb2NhbFBvc2l0aW9uLngsIHRoaXMuaW5wdXRzLmxvY2FsUG9zaXRpb24ueSwgdGhpcy5pbnB1dHMubG9jYWxQb3NpdGlvbi56KTtcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIG9uRGVzdHJveSgpIHtcclxuICAgIHRoaXMub3V0cHV0cy5jb2xsaWRlciA9IG51bGw7XHJcbiAgICB0aGlzLm91dHB1dHMub2JqZWN0Um9vdCA9IG51bGw7XHJcblxyXG4gICAgKHRoaXMubWVzaC5tYXRlcmlhbCBhcyBNZXNoQmFzaWNNYXRlcmlhbCkuZGlzcG9zZSgpO1xyXG4gICAgdGhpcy5tZXNoLmdlb21ldHJ5LmRpc3Bvc2UoKTtcclxuICB9XHJcblxyXG4gIHNldFJvb3RTY2VuZShyb290U2NlbmU6IE9iamVjdDNEKSB7XHJcbiAgICB0aGlzLnJvb3RTY2VuZSA9IHJvb3RTY2VuZTtcclxuICB9XHJcblxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElQbGFuZVJlbmRlcmVyIGV4dGVuZHMgU2NlbmVDb21wb25lbnQge1xyXG4gIGlucHV0czogSW5wdXRzO1xyXG59XHJcblxyXG5leHBvcnQgY29uc3QgcGxhbmVSZW5kZXJlclR5cGUgPSAnbXAucGxhbmVSZW5kZXJlcic7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbWFrZVBsYW5lUmVuZGVyZXIoKSB7XHJcbiAgcmV0dXJuIG5ldyBQbGFuZVJlbmRlcmVyKCk7XHJcbn1cclxuIl19
|