mmhglobal-dynamicform 2.29.0 → 2.30.0
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/README.md +414 -1028
- package/esm2020/lib/components/datalistingfieldbase.component.mjs +2 -2
- package/esm2020/lib/mmhglobal-dynamicform.module.mjs +17 -8
- package/esm2020/lib/zform/zform.component.mjs +2 -2
- package/esm2020/lib/zganttchart/zganttchart.component.mjs +160 -0
- package/esm2020/lib/zloop/zloop.component.mjs +2 -2
- package/esm2020/lib/zudf/zudf.component.mjs +2 -2
- package/esm2020/lib/zworkflowbuttons/zworkflowbuttons.component.mjs +4 -3
- package/esm2020/public-api.mjs +2 -1
- package/fesm2015/mmhglobal-dynamicform.mjs +175 -14
- package/fesm2015/mmhglobal-dynamicform.mjs.map +1 -1
- package/fesm2020/mmhglobal-dynamicform.mjs +176 -14
- package/fesm2020/mmhglobal-dynamicform.mjs.map +1 -1
- package/lib/mmhglobal-dynamicform.module.d.ts +42 -40
- package/lib/zganttchart/zganttchart.component.d.ts +40 -0
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -8,7 +8,7 @@ import { FieldBase } from "./fieldbase.component";
|
|
|
8
8
|
import { ZComponentHelper } from "mmhglobal-zcore";
|
|
9
9
|
import * as i0 from "@angular/core";
|
|
10
10
|
import * as i1 from "../services/zcomponent.service";
|
|
11
|
-
// For: zgrid, ztree, ztreelist
|
|
11
|
+
// For: zgrid, ztree, ztreelist, zganttchart
|
|
12
12
|
export class DataListingFieldBase extends FieldBase {
|
|
13
13
|
constructor(componentService) {
|
|
14
14
|
super(componentService);
|
|
@@ -165,4 +165,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImpor
|
|
|
165
165
|
type: ViewChild,
|
|
166
166
|
args: ['dataitemcontextmenu']
|
|
167
167
|
}] } });
|
|
168
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWxpc3RpbmdmaWVsZGJhc2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW1oZ2xvYmFsLWR5bmFtaWNmb3JtL3NyYy9saWIvY29tcG9uZW50cy9kYXRhbGlzdGluZ2ZpZWxkYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0UsNkJBQTZCO0FBRTdCLDhCQUE4QjtBQUM5QixPQUFPLEVBQUUsWUFBWSxFQUFFLEdBQUcsRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHekQsMkNBQTJDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVsRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQVUsTUFBTSxpQkFBaUIsQ0FBQzs7O0FBUzNELCtCQUErQjtBQUMvQixNQUFNLE9BQU8sb0JBQXFCLFNBQVEsU0FBUztJQWNqRCxZQUNTLGdCQUFtQztRQUUxQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUZqQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQW1CO1FBZGxDLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUkzQyxnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUNwQixvQkFBZSxHQUFHO1lBQ3ZCLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFO1lBQ2xDLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFO1lBQ2hELEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLElBQUksRUFBRSxrQkFBa0IsRUFBRTtZQUN0RCxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRTtZ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QyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDaEU7aUJBQ0k7Z0JBQ0gsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7YUFDNUM7U0FDRjtJQUNILENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxNQUFNO1FBQy9CLElBQUksT0FBTyxNQUFNLEtBQUssUUFBUSxFQUFFO1lBQzlCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUMvQjthQUNJO1lBQ0gsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUNuQjtnQkFDRSxJQUFJLEVBQUUsTUFBTSxJQUFJLEVBQUU7YUFDbkIsQ0FDRixDQUFDO1NBQ0g7SUFDSCxDQUFDOztpSEExS1Usb0JBQW9CO3FHQUFwQixvQkFBb0IseVZBSnJCLEVBQUU7MkZBSUQsb0JBQW9CO2tCQUxoQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxFQUFFO2lCQUNiO3dHQUlXLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ21ELGdCQUFnQjtzQkFBekUsU0FBUzt1QkFBQyxrQkFBa0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ2QsbUJBQW1CO3NCQUFwRCxTQUFTO3VCQUFDLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqIEFuZ3VsYXIgKioqKioqKioqKi9cclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbi8qKioqKioqKioqIElvbmljICoqKioqKioqKiovXHJcblxyXG4vKioqKioqKioqKiBQbHVnaW4gKioqKioqKioqKi9cclxuaW1wb3J0IHsgaXNPYnNlcnZhYmxlLCBtYXAsIE9ic2VydmFibGUsIG9mIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgUG9wb3ZlckNvbnRhaW5lckRpcmVjdGl2ZSB9IGZyb20gXCJAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci10b29sdGlwXCI7XHJcblxyXG4vKioqKioqKioqKiBDb21wb25lbnQgJiBTZXJ2aWNlICoqKioqKioqKiovXHJcbmltcG9ydCB7IEZpZWxkQmFzZSB9IGZyb20gXCIuL2ZpZWxkYmFzZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgWkNvbXBvbmVudFNlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvemNvbXBvbmVudC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFpDb21wb25lbnRIZWxwZXIsIFpGaWVsZCB9IGZyb20gXCJtbWhnbG9iYWwtemNvcmVcIjtcclxuaW1wb3J0IHsgUm93Q2xhc3NBcmdzIH0gZnJvbSBcIkBwcm9ncmVzcy9rZW5kby1hbmd1bGFyLWdyaWRcIjtcclxuaW1wb3J0IHsgQ29udGV4dE1lbnVDb21wb25lbnQgfSBmcm9tIFwiLi4vZW1iZWQtY29tcG9uZW50cy9jb250ZXh0LW1lbnUvY29udGV4dC1tZW51LmNvbXBvbmVudFwiO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlOiBgYCxcclxufSlcclxuXHJcbi8vIEZvcjogemdyaWQsIHp0cmVlLCB6dHJlZWxpc3RcclxuZXhwb3J0IGNsYXNzIERhdGFMaXN0aW5nRmllbGRCYXNlIGV4dGVuZHMgRmllbGRCYXNlIHtcclxuICBAT3V0cHV0KCkgc2hvd0Zvcm1QYWdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG4gIEBWaWV3Q2hpbGQoXCJwb3BvdmVyY29udGFpbmVyXCIsIHsgc3RhdGljOiBmYWxzZSB9KSBwcml2YXRlIHBvcG92ZXJjb250YWluZXI6IFBvcG92ZXJDb250YWluZXJEaXJlY3RpdmU7XHJcbiAgQFZpZXdDaGlsZCgnZGF0YWl0ZW1jb250ZXh0bWVudScpIGRhdGFJdGVtQ29udGV4dE1lbnU6IENvbnRleHRNZW51Q29tcG9uZW50O1xyXG5cclxuICBwcm90ZWN0ZWQgcG9wb3ZlckRhdGEgPSBbXTtcclxuICBwdWJsaWMgdG9vbGJhckl0ZW1MaXN0ID0gW1xyXG4gICAgeyBuYW1lOiBcIlNlYXJjaFwiLCB0ZXh0OiBcIlNlYXJjaFwiIH0sXHJcbiAgICB7IG5hbWU6IFwiU2F2ZSBTZXR0aW5nc1wiLCB0ZXh0OiBcIlNhdmUgU2V0dGluZ3NcIiB9LFxyXG4gICAgeyBuYW1lOiBcIlJlc3RvcmUgU2V0dGluZ3NcIiwgdGV4dDogXCJSZXN0b3JlIFNldHRpbmdzXCIgfSxcclxuICAgIHsgbmFtZTogXCJBZGQgTmV3XCIsIHRleHQ6IFwiQWRkIE5ld1wiIH0sXHJcbiAgICB7IG5hbWU6IFwiQWR2YW5jZWQgU2VhcmNoXCIsIHRleHQ6IFwiQWR2YW5jZWQgU2VhcmNoXCIgfSxcclxuICBdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBjb21wb25lbnRTZXJ2aWNlOiBaQ29tcG9uZW50U2VydmljZVxyXG4gICkge1xyXG4gICAgc3VwZXIoY29tcG9uZW50U2VydmljZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgaW5pdENvbXBvbmVudCgpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHN1cGVyLmluaXRDb21wb25lbnQoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRHcmlkQ29sdW1uU3R5bGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5jb21wb25lbnRQcm9wZXJ0aWVzLnN0eWxlLnN0eWxlMyA/IHRoaXMuY29tcG9uZW50U2VydmljZS5jb252ZXJ0U3R5bGVTdHJpbmdUb09iamVjdCh0aGlzLmNvbXBvbmVudFByb3BlcnRpZXMuc3R5bGUuc3R5bGUzKSA6IHt9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0R3JpZEhlYWRlclN0eWxlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuY29tcG9uZW50UHJvcGVydGllcy5zdHlsZS5zdHlsZTQgPyB0aGlzLmNvbXBvbmVudFNlcnZpY2UuY29udmVydFN0eWxlU3RyaW5nVG9PYmplY3QodGhpcy5jb21wb25lbnRQcm9wZXJ0aWVzLnN0eWxlLnN0eWxlNCkgOiB7fVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldEdyaWRGb290ZXJTdHlsZSgpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbXBvbmVudFByb3BlcnRpZXMuc3R5bGUuc3R5bGU5ID8gdGhpcy5jb21wb25lbnRTZXJ2aWNlLmNvbnZlcnRTdHlsZVN0cmluZ1RvT2JqZWN0KHRoaXMuY29tcG9uZW50UHJvcGVydGllcy5zdHlsZS5zdHlsZTkpIDoge31cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRDZWxsU3R5bGUoY29sdW1uRmllbGQ6IFpGaWVsZCwgZGF0YUl0ZW06IGFueSk6IGFueSB7XHJcbiAgICBjb25zdCBzdHlsZSA9IGNvbHVtbkZpZWxkW2BTdHlsZTEwYF07XHJcbiAgICBjb25zdCBmdW5jID0gWkNvbXBvbmVudEhlbHBlci5nZXRHcm91cEV2YWxWYWx1ZS5jYWxsKHRoaXMsIHN0eWxlKTtcclxuICAgIGlmICh0eXBlb2YgZnVuYyA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICBjb25zdCBjYWxsRnVuYyA9IGZ1bmMuYmluZCh0aGlzLmdyb3VwLmN0cmxTY29wZSk7XHJcbiAgICAgIHJldHVybiBjYWxsRnVuYyhkYXRhSXRlbSk7XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmICh0eXBlb2YgZnVuYyA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgcmV0dXJuIGZ1bmM7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gc3R5bGU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdHJhbnNsYXRlVG9vbEJhckl0ZW1zKCk6IE9ic2VydmFibGU8YW55PiB7XHJcbiAgICByZXR1cm4gdGhpcy5jb21wb25lbnRTZXJ2aWNlLnRyYW5zbGF0ZVRvb2xCYXJJdGVtcyh0aGlzLnRvb2xiYXJJdGVtTGlzdCwgdGhpcy5ncm91cCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0VG9vbEJhckl0ZW1MYWJlbE5hbWUobmFtZTogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdGhpcy50b29sYmFySXRlbUxpc3QuZmluZCh0ID0+IHQubmFtZSA9PT0gbmFtZSk/LnRleHQgfHwgbmFtZTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyB0cmFuc2xhdGVDb2x1bW5IZWFkZXIoY29sdW1uczogYW55W10pOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY29tcG9uZW50U2VydmljZS50cmFuc2xhdGVHcmlkQ29sdW1uSGVhZGVyKGNvbHVtbnMsIHRoaXMuZ3JvdXApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHJvd0NhbGxiYWNrKGNvbnRleHQ6IFJvd0NsYXNzQXJncyk6IHN0cmluZyB7XHJcbiAgICBpZiAodGhpcy5kYXRhLkRhdGFSb3dDbGFzcyAmJiB0eXBlb2YgdGhpcy5kYXRhLkRhdGFSb3dDbGFzcyA9PSAnc3RyaW5nJyAmJiB0aGlzLmRhdGEuRGF0YVJvd0NsYXNzLnN0YXJ0c1dpdGgoJ2dyb3VwLicpKSB7XHJcbiAgICAgIGNvbnN0IGZ1bmMgPSBaQ29tcG9uZW50SGVscGVyLmdldEdyb3VwVmFsdWUodGhpcy5kYXRhLkRhdGFSb3dDbGFzcywgdGhpcy5ncm91cCk7XHJcblxyXG4gICAgICBpZiAodHlwZW9mIGZ1bmMgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgICByZXR1cm4gZnVuYyhjb250ZXh0KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiAnJztcclxuICB9XHJcblxyXG4gIC8vI3JlZ2lvbiBQb3BvdmVyXHJcbiAgcHVibGljIHNldHVwUG9wb3ZlckZlYXR1cmUoY29sdW1uczogQXJyYXk8YW55PiwgZ3JpZERhdGE6IEFycmF5PGFueT4pIHtcclxuICAgIGNvbnN0IHBvcG92ZXJDb2xzID0gY29sdW1ucy5maWx0ZXIoYyA9PiBjLlBvcE92ZXJDb250ZW50KTtcclxuICAgIGlmIChwb3BvdmVyQ29scy5sZW5ndGggPiAwICYmIGdyaWREYXRhLmxlbmd0aCA+IDApIHtcclxuXHJcbiAgICAgIGZvciAoY29uc3QgZGF0YSBvZiBncmlkRGF0YSkge1xyXG4gICAgICAgIHRoaXMucG9wb3ZlckRhdGEucHVzaChcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgaWQ6IGRhdGEuSWQsXHJcbiAgICAgICAgICAgIHBvcG92ZXJDb250ZW50OiB0aGlzLmdldFBvcE92ZXJDb250ZW50QnlDb2wocG9wb3ZlckNvbHMsIGRhdGEpXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHNob3dQb3BPdmVyKGNvbHVtbkZpZWxkOiBaRmllbGQsIGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIGlmICghY29sdW1uRmllbGQuUG9wT3ZlckNvbnRlbnQgfHwgIXRoaXMucG9wb3ZlcmNvbnRhaW5lcikge1xyXG4gICAgICB0aGlzLnBvcG92ZXJjb250YWluZXIuaGlkZSgpO1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgZWxlbWVudCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcclxuICAgIHRoaXMucG9wb3ZlcmNvbnRhaW5lci5oaWRlKCk7XHJcbiAgICBpZiAoZWxlbWVudC5ub2RlTmFtZSA9PT0gJ0RJVicgfHwgZWxlbWVudC5ub2RlTmFtZSA9PT0gJ1NQQU4nKSB7XHJcbiAgICAgIHRoaXMucG9wb3ZlcmNvbnRhaW5lci5zaG93KGVsZW1lbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsb3NlUG9wT3ZlcihldmVudDogYW55KTogdm9pZCB7XHJcbiAgICBpZiAoZXZlbnQgJiYgZXZlbnQudG9FbGVtZW50ICYmIGV2ZW50LnRvRWxlbWVudC5ub2RlTmFtZSA9PSBcIkRJVlwiICYmIChldmVudC50b0VsZW1lbnQucGFyZW50RWxlbWVudC5ub2RlTmFtZSA9PSBcIlREXCIgfHwgKGV2ZW50LnRvRWxlbWVudC5wYXJlbnRFbGVtZW50Lm5vZGVOYW1lID09IFwiRElWXCIgJiYgZXZlbnQudG9FbGVtZW50LnBhcmVudEVsZW1lbnQuY2xhc3NOYW1lLmluY2x1ZGVzKFwiay1wb3BvdmVyLWJvZHlcIikpKSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLnBvcG92ZXJjb250YWluZXIuaGlkZSgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldENvbnRleHREYXRhKGFuY2hvcjogSFRNTEVsZW1lbnQpIHtcclxuICAgIGlmIChhbmNob3IuYXR0cmlidXRlc1tcImRhdGEtaWRcIl0gJiYgYW5jaG9yLmF0dHJpYnV0ZXNbXCJkYXRhLWlkXCJdLnZhbHVlICYmIGFuY2hvci5hdHRyaWJ1dGVzW1wiY29sdW1uLW5hbWVcIl0gJiYgYW5jaG9yLmF0dHJpYnV0ZXNbXCJjb2x1bW4tbmFtZVwiXS52YWx1ZSkge1xyXG4gICAgICBjb25zdCByZWNvcmRJZCA9IGFuY2hvci5hdHRyaWJ1dGVzW1wiZGF0YS1pZFwiXS52YWx1ZTtcclxuICAgICAgY29uc3QgY29sdW1uTmFtZSA9IGFuY2hvci5hdHRyaWJ1dGVzW1wiY29sdW1uLW5hbWVcIl0udmFsdWU7XHJcbiAgICAgIGNvbnN0IHBvcG92ZXJBbGxDb2xEYXRhID0gdGhpcy5wb3BvdmVyRGF0YS5maW5kKGQgPT4gZC5pZCA9PSByZWNvcmRJZCk7XHJcbiAgICAgIGNvbnN0IHBvcG92ZXJDb2xEYXRhID0gcG9wb3ZlckFsbENvbERhdGEucG9wb3ZlckNvbnRlbnQuZmluZChkID0+IGQuY29sdW1uTmFtZSA9PSBjb2x1bW5OYW1lKTtcclxuICAgICAgcmV0dXJuIEpTT04ucGFyc2UocG9wb3ZlckNvbERhdGEuY29udGVudClcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0UG9wT3ZlckNvbnRlbnRCeUNvbChjb2x1bW5zOiBBcnJheTxhbnk+LCBkYXRhOiBhbnkpOiBBcnJheTxhbnk+IHtcclxuICAgIGNvbnN0IHBvcE92ZXJDb250ZW50ID0gW107XHJcbiAgICBmb3IgKGNvbnN0IGNvbCBvZiBjb2x1bW5zKSB7XHJcbiAgICAgIHRoaXMuZ2V0UG9wT3ZlckNvbnRlbnQoY29sLCBkYXRhKS5zdWJzY3JpYmUoY29udGVudCA9PiB7XHJcbiAgICAgICAgcG9wT3ZlckNvbnRlbnQucHVzaCh7XHJcbiAgICAgICAgICBjb2x1bW5OYW1lOiBjb2wuZmllbGQsXHJcbiAgICAgICAgICBjb250ZW50OiBjb250ZW50XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0pXHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHBvcE92ZXJDb250ZW50O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRQb3BPdmVyQ29udGVudChjb2x1bW5GaWVsZDogWkZpZWxkLCBkYXRhSXRlbTogYW55KTogT2JzZXJ2YWJsZTxzdHJpbmc+IHtcclxuICAgIGNvbnN0IGNvbnRlbnQgPSBjb2x1bW5GaWVsZC5Qb3BPdmVyQ29udGVudDtcclxuICAgIGlmICghY29udGVudCkge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICAgIC8vIHJldHVybiB7XHJcbiAgICAvLyAgIEJvZHk6IGA8Yj4yPC9iPiBtb3JlIGdvYWxzIGFuZCA8Yj41PC9iPiBtb3JlIGNvbXBldGVuY2llcyB0byBncmFkZS4gPGJyLz5cclxuICAgIC8vICAgR29hbCAxOiA8YiBzdHlsZT0nY29sb3I6dmFyKC0taW9uLWNvbG9yLXByaW1hcnkpOyc+MTwvYj4gPGJyLz5gLFxyXG4gICAgLy8gICBCb2R5Q2xhc3M6J2FwcHJhaXNhbC1wb3BvdmVyJ1xyXG4gICAgLy8gfTtcclxuICAgIGNvbnN0IGZ1bmMgPSBaQ29tcG9uZW50SGVscGVyLmdldEdyb3VwRXZhbFZhbHVlLmNhbGwodGhpcywgY29udGVudCk7XHJcblxyXG4gICAgbGV0IHJlc3VsdCA9IGZ1bmM7XHJcbiAgICBpZiAodHlwZW9mIGZ1bmMgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgY29uc3QgY2FsbEZ1bmMgPSBmdW5jLmJpbmQodGhpcy5ncm91cC5jdHJsU2NvcGUpO1xyXG4gICAgICByZXN1bHQgPSBjYWxsRnVuYyhjb2x1bW5GaWVsZCwgZGF0YUl0ZW0pO1xyXG5cclxuICAgICAgaWYgKGlzT2JzZXJ2YWJsZShyZXN1bHQpKSB7XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdC5waXBlKG1hcChkYXRhID0+IHRoaXMucGFyc2VQb3BvdmVyT2JqZWN0KGRhdGEpKSk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuIG9mKHRoaXMucGFyc2VQb3BvdmVyT2JqZWN0KHJlc3VsdCkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHBhcnNlUG9wb3Zlck9iamVjdChyZXN1bHQpOiBzdHJpbmcge1xyXG4gICAgaWYgKHR5cGVvZiByZXN1bHQgPT09IFwib2JqZWN0XCIpIHtcclxuICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KHJlc3VsdCk7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIEJvZHk6IHJlc3VsdCB8fCAnJyxcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vI2VuZHJlZ2lvblxyXG59XHJcbiJdfQ==
|
|
168
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWxpc3RpbmdmaWVsZGJhc2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW1oZ2xvYmFsLWR5bmFtaWNmb3JtL3NyYy9saWIvY29tcG9uZW50cy9kYXRhbGlzdGluZ2ZpZWxkYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0UsNkJBQTZCO0FBRTdCLDhCQUE4QjtBQUM5QixPQUFPLEVBQUUsWUFBWSxFQUFFLEdBQUcsRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHekQsMkNBQTJDO0FBQzNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVsRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQVUsTUFBTSxpQkFBaUIsQ0FBQzs7O0FBUzNELDRDQUE0QztBQUM1QyxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsU0FBUztJQWNqRCxZQUNTLGdCQUFtQztRQUUxQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUZqQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQW1CO1FBZGxDLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUkzQyxnQkFBVyxHQUFHLEVBQUUsQ0FBQztRQUNwQixvQkFBZSxHQUFHO1lBQ3ZCLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFO1lBQ2xDLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFO1lBQ2hELEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFLElBQUksRUFBRSxrQkFBa0IsRUFBRTtZQUN0RCxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRTtZ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QyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDaEU7aUJBQ0k7Z0JBQ0gsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7YUFDNUM7U0FDRjtJQUNILENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxNQUFNO1FBQy9CLElBQUksT0FBTyxNQUFNLEtBQUssUUFBUSxFQUFFO1lBQzlCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUMvQjthQUNJO1lBQ0gsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUNuQjtnQkFDRSxJQUFJLEVBQUUsTUFBTSxJQUFJLEVBQUU7YUFDbkIsQ0FDRixDQUFDO1NBQ0g7SUFDSCxDQUFDOztpSEExS1Usb0JBQW9CO3FHQUFwQixvQkFBb0IseVZBSnJCLEVBQUU7MkZBSUQsb0JBQW9CO2tCQUxoQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxFQUFFO2lCQUNiO3dHQUlXLFlBQVk7c0JBQXJCLE1BQU07Z0JBQ21ELGdCQUFnQjtzQkFBekUsU0FBUzt1QkFBQyxrQkFBa0IsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ2QsbUJBQW1CO3NCQUFwRCxTQUFTO3VCQUFDLHFCQUFxQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqIEFuZ3VsYXIgKioqKioqKioqKi9cclxuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbi8qKioqKioqKioqIElvbmljICoqKioqKioqKiovXHJcblxyXG4vKioqKioqKioqKiBQbHVnaW4gKioqKioqKioqKi9cclxuaW1wb3J0IHsgaXNPYnNlcnZhYmxlLCBtYXAsIE9ic2VydmFibGUsIG9mIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgUG9wb3ZlckNvbnRhaW5lckRpcmVjdGl2ZSB9IGZyb20gXCJAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci10b29sdGlwXCI7XHJcblxyXG4vKioqKioqKioqKiBDb21wb25lbnQgJiBTZXJ2aWNlICoqKioqKioqKiovXHJcbmltcG9ydCB7IEZpZWxkQmFzZSB9IGZyb20gXCIuL2ZpZWxkYmFzZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgWkNvbXBvbmVudFNlcnZpY2UgfSBmcm9tIFwiLi4vc2VydmljZXMvemNvbXBvbmVudC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IFpDb21wb25lbnRIZWxwZXIsIFpGaWVsZCB9IGZyb20gXCJtbWhnbG9iYWwtemNvcmVcIjtcclxuaW1wb3J0IHsgUm93Q2xhc3NBcmdzIH0gZnJvbSBcIkBwcm9ncmVzcy9rZW5kby1hbmd1bGFyLWdyaWRcIjtcclxuaW1wb3J0IHsgQ29udGV4dE1lbnVDb21wb25lbnQgfSBmcm9tIFwiLi4vZW1iZWQtY29tcG9uZW50cy9jb250ZXh0LW1lbnUvY29udGV4dC1tZW51LmNvbXBvbmVudFwiO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHRlbXBsYXRlOiBgYCxcclxufSlcclxuXHJcbi8vIEZvcjogemdyaWQsIHp0cmVlLCB6dHJlZWxpc3QsIHpnYW50dGNoYXJ0XHJcbmV4cG9ydCBjbGFzcyBEYXRhTGlzdGluZ0ZpZWxkQmFzZSBleHRlbmRzIEZpZWxkQmFzZSB7XHJcbiAgQE91dHB1dCgpIHNob3dGb3JtUGFnZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuICBAVmlld0NoaWxkKFwicG9wb3ZlcmNvbnRhaW5lclwiLCB7IHN0YXRpYzogZmFsc2UgfSkgcHJpdmF0ZSBwb3BvdmVyY29udGFpbmVyOiBQb3BvdmVyQ29udGFpbmVyRGlyZWN0aXZlO1xyXG4gIEBWaWV3Q2hpbGQoJ2RhdGFpdGVtY29udGV4dG1lbnUnKSBkYXRhSXRlbUNvbnRleHRNZW51OiBDb250ZXh0TWVudUNvbXBvbmVudDtcclxuXHJcbiAgcHJvdGVjdGVkIHBvcG92ZXJEYXRhID0gW107XHJcbiAgcHVibGljIHRvb2xiYXJJdGVtTGlzdCA9IFtcclxuICAgIHsgbmFtZTogXCJTZWFyY2hcIiwgdGV4dDogXCJTZWFyY2hcIiB9LFxyXG4gICAgeyBuYW1lOiBcIlNhdmUgU2V0dGluZ3NcIiwgdGV4dDogXCJTYXZlIFNldHRpbmdzXCIgfSxcclxuICAgIHsgbmFtZTogXCJSZXN0b3JlIFNldHRpbmdzXCIsIHRleHQ6IFwiUmVzdG9yZSBTZXR0aW5nc1wiIH0sXHJcbiAgICB7IG5hbWU6IFwiQWRkIE5ld1wiLCB0ZXh0OiBcIkFkZCBOZXdcIiB9LFxyXG4gICAgeyBuYW1lOiBcIkFkdmFuY2VkIFNlYXJjaFwiLCB0ZXh0OiBcIkFkdmFuY2VkIFNlYXJjaFwiIH0sXHJcbiAgXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgY29tcG9uZW50U2VydmljZTogWkNvbXBvbmVudFNlcnZpY2VcclxuICApIHtcclxuICAgIHN1cGVyKGNvbXBvbmVudFNlcnZpY2UpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGluaXRDb21wb25lbnQoKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiBzdXBlci5pbml0Q29tcG9uZW50KCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0R3JpZENvbHVtblN0eWxlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuY29tcG9uZW50UHJvcGVydGllcy5zdHlsZS5zdHlsZTMgPyB0aGlzLmNvbXBvbmVudFNlcnZpY2UuY29udmVydFN0eWxlU3RyaW5nVG9PYmplY3QodGhpcy5jb21wb25lbnRQcm9wZXJ0aWVzLnN0eWxlLnN0eWxlMykgOiB7fVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldEdyaWRIZWFkZXJTdHlsZSgpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbXBvbmVudFByb3BlcnRpZXMuc3R5bGUuc3R5bGU0ID8gdGhpcy5jb21wb25lbnRTZXJ2aWNlLmNvbnZlcnRTdHlsZVN0cmluZ1RvT2JqZWN0KHRoaXMuY29tcG9uZW50UHJvcGVydGllcy5zdHlsZS5zdHlsZTQpIDoge31cclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRHcmlkRm9vdGVyU3R5bGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5jb21wb25lbnRQcm9wZXJ0aWVzLnN0eWxlLnN0eWxlOSA/IHRoaXMuY29tcG9uZW50U2VydmljZS5jb252ZXJ0U3R5bGVTdHJpbmdUb09iamVjdCh0aGlzLmNvbXBvbmVudFByb3BlcnRpZXMuc3R5bGUuc3R5bGU5KSA6IHt9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0Q2VsbFN0eWxlKGNvbHVtbkZpZWxkOiBaRmllbGQsIGRhdGFJdGVtOiBhbnkpOiBhbnkge1xyXG4gICAgY29uc3Qgc3R5bGUgPSBjb2x1bW5GaWVsZFtgU3R5bGUxMGBdO1xyXG4gICAgY29uc3QgZnVuYyA9IFpDb21wb25lbnRIZWxwZXIuZ2V0R3JvdXBFdmFsVmFsdWUuY2FsbCh0aGlzLCBzdHlsZSk7XHJcbiAgICBpZiAodHlwZW9mIGZ1bmMgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgY29uc3QgY2FsbEZ1bmMgPSBmdW5jLmJpbmQodGhpcy5ncm91cC5jdHJsU2NvcGUpO1xyXG4gICAgICByZXR1cm4gY2FsbEZ1bmMoZGF0YUl0ZW0pO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAodHlwZW9mIGZ1bmMgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgIHJldHVybiBmdW5jO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHN0eWxlO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIHRyYW5zbGF0ZVRvb2xCYXJJdGVtcygpOiBPYnNlcnZhYmxlPGFueT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuY29tcG9uZW50U2VydmljZS50cmFuc2xhdGVUb29sQmFySXRlbXModGhpcy50b29sYmFySXRlbUxpc3QsIHRoaXMuZ3JvdXApO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldFRvb2xCYXJJdGVtTGFiZWxOYW1lKG5hbWU6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIHRoaXMudG9vbGJhckl0ZW1MaXN0LmZpbmQodCA9PiB0Lm5hbWUgPT09IG5hbWUpPy50ZXh0IHx8IG5hbWU7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdHJhbnNsYXRlQ29sdW1uSGVhZGVyKGNvbHVtbnM6IGFueVtdKTogT2JzZXJ2YWJsZTxhbnk+IHtcclxuICAgIHJldHVybiB0aGlzLmNvbXBvbmVudFNlcnZpY2UudHJhbnNsYXRlR3JpZENvbHVtbkhlYWRlcihjb2x1bW5zLCB0aGlzLmdyb3VwKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyByb3dDYWxsYmFjayhjb250ZXh0OiBSb3dDbGFzc0FyZ3MpOiBzdHJpbmcge1xyXG4gICAgaWYgKHRoaXMuZGF0YS5EYXRhUm93Q2xhc3MgJiYgdHlwZW9mIHRoaXMuZGF0YS5EYXRhUm93Q2xhc3MgPT0gJ3N0cmluZycgJiYgdGhpcy5kYXRhLkRhdGFSb3dDbGFzcy5zdGFydHNXaXRoKCdncm91cC4nKSkge1xyXG4gICAgICBjb25zdCBmdW5jID0gWkNvbXBvbmVudEhlbHBlci5nZXRHcm91cFZhbHVlKHRoaXMuZGF0YS5EYXRhUm93Q2xhc3MsIHRoaXMuZ3JvdXApO1xyXG5cclxuICAgICAgaWYgKHR5cGVvZiBmdW5jID09PSAnZnVuY3Rpb24nKSB7XHJcbiAgICAgICAgcmV0dXJuIGZ1bmMoY29udGV4dCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gJyc7XHJcbiAgfVxyXG5cclxuICAvLyNyZWdpb24gUG9wb3ZlclxyXG4gIHB1YmxpYyBzZXR1cFBvcG92ZXJGZWF0dXJlKGNvbHVtbnM6IEFycmF5PGFueT4sIGdyaWREYXRhOiBBcnJheTxhbnk+KSB7XHJcbiAgICBjb25zdCBwb3BvdmVyQ29scyA9IGNvbHVtbnMuZmlsdGVyKGMgPT4gYy5Qb3BPdmVyQ29udGVudCk7XHJcbiAgICBpZiAocG9wb3ZlckNvbHMubGVuZ3RoID4gMCAmJiBncmlkRGF0YS5sZW5ndGggPiAwKSB7XHJcblxyXG4gICAgICBmb3IgKGNvbnN0IGRhdGEgb2YgZ3JpZERhdGEpIHtcclxuICAgICAgICB0aGlzLnBvcG92ZXJEYXRhLnB1c2goXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGlkOiBkYXRhLklkLFxyXG4gICAgICAgICAgICBwb3BvdmVyQ29udGVudDogdGhpcy5nZXRQb3BPdmVyQ29udGVudEJ5Q29sKHBvcG92ZXJDb2xzLCBkYXRhKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBzaG93UG9wT3Zlcihjb2x1bW5GaWVsZDogWkZpZWxkLCBldmVudDogYW55KTogdm9pZCB7XHJcbiAgICBpZiAoIWNvbHVtbkZpZWxkLlBvcE92ZXJDb250ZW50IHx8ICF0aGlzLnBvcG92ZXJjb250YWluZXIpIHtcclxuICAgICAgdGhpcy5wb3BvdmVyY29udGFpbmVyLmhpZGUoKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0IGVsZW1lbnQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICB0aGlzLnBvcG92ZXJjb250YWluZXIuaGlkZSgpO1xyXG4gICAgaWYgKGVsZW1lbnQubm9kZU5hbWUgPT09ICdESVYnIHx8IGVsZW1lbnQubm9kZU5hbWUgPT09ICdTUEFOJykge1xyXG4gICAgICB0aGlzLnBvcG92ZXJjb250YWluZXIuc2hvdyhlbGVtZW50KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbG9zZVBvcE92ZXIoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgaWYgKGV2ZW50ICYmIGV2ZW50LnRvRWxlbWVudCAmJiBldmVudC50b0VsZW1lbnQubm9kZU5hbWUgPT0gXCJESVZcIiAmJiAoZXZlbnQudG9FbGVtZW50LnBhcmVudEVsZW1lbnQubm9kZU5hbWUgPT0gXCJURFwiIHx8IChldmVudC50b0VsZW1lbnQucGFyZW50RWxlbWVudC5ub2RlTmFtZSA9PSBcIkRJVlwiICYmIGV2ZW50LnRvRWxlbWVudC5wYXJlbnRFbGVtZW50LmNsYXNzTmFtZS5pbmNsdWRlcyhcImstcG9wb3Zlci1ib2R5XCIpKSkpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5wb3BvdmVyY29udGFpbmVyLmhpZGUoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBnZXRDb250ZXh0RGF0YShhbmNob3I6IEhUTUxFbGVtZW50KSB7XHJcbiAgICBpZiAoYW5jaG9yLmF0dHJpYnV0ZXNbXCJkYXRhLWlkXCJdICYmIGFuY2hvci5hdHRyaWJ1dGVzW1wiZGF0YS1pZFwiXS52YWx1ZSAmJiBhbmNob3IuYXR0cmlidXRlc1tcImNvbHVtbi1uYW1lXCJdICYmIGFuY2hvci5hdHRyaWJ1dGVzW1wiY29sdW1uLW5hbWVcIl0udmFsdWUpIHtcclxuICAgICAgY29uc3QgcmVjb3JkSWQgPSBhbmNob3IuYXR0cmlidXRlc1tcImRhdGEtaWRcIl0udmFsdWU7XHJcbiAgICAgIGNvbnN0IGNvbHVtbk5hbWUgPSBhbmNob3IuYXR0cmlidXRlc1tcImNvbHVtbi1uYW1lXCJdLnZhbHVlO1xyXG4gICAgICBjb25zdCBwb3BvdmVyQWxsQ29sRGF0YSA9IHRoaXMucG9wb3ZlckRhdGEuZmluZChkID0+IGQuaWQgPT0gcmVjb3JkSWQpO1xyXG4gICAgICBjb25zdCBwb3BvdmVyQ29sRGF0YSA9IHBvcG92ZXJBbGxDb2xEYXRhLnBvcG92ZXJDb250ZW50LmZpbmQoZCA9PiBkLmNvbHVtbk5hbWUgPT0gY29sdW1uTmFtZSk7XHJcbiAgICAgIHJldHVybiBKU09OLnBhcnNlKHBvcG92ZXJDb2xEYXRhLmNvbnRlbnQpXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldFBvcE92ZXJDb250ZW50QnlDb2woY29sdW1uczogQXJyYXk8YW55PiwgZGF0YTogYW55KTogQXJyYXk8YW55PiB7XHJcbiAgICBjb25zdCBwb3BPdmVyQ29udGVudCA9IFtdO1xyXG4gICAgZm9yIChjb25zdCBjb2wgb2YgY29sdW1ucykge1xyXG4gICAgICB0aGlzLmdldFBvcE92ZXJDb250ZW50KGNvbCwgZGF0YSkuc3Vic2NyaWJlKGNvbnRlbnQgPT4ge1xyXG4gICAgICAgIHBvcE92ZXJDb250ZW50LnB1c2goe1xyXG4gICAgICAgICAgY29sdW1uTmFtZTogY29sLmZpZWxkLFxyXG4gICAgICAgICAgY29udGVudDogY29udGVudFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9KVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBwb3BPdmVyQ29udGVudDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0UG9wT3ZlckNvbnRlbnQoY29sdW1uRmllbGQ6IFpGaWVsZCwgZGF0YUl0ZW06IGFueSk6IE9ic2VydmFibGU8c3RyaW5nPiB7XHJcbiAgICBjb25zdCBjb250ZW50ID0gY29sdW1uRmllbGQuUG9wT3ZlckNvbnRlbnQ7XHJcbiAgICBpZiAoIWNvbnRlbnQpIHtcclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9XHJcbiAgICAvLyByZXR1cm4ge1xyXG4gICAgLy8gICBCb2R5OiBgPGI+MjwvYj4gbW9yZSBnb2FscyBhbmQgPGI+NTwvYj4gbW9yZSBjb21wZXRlbmNpZXMgdG8gZ3JhZGUuIDxici8+XHJcbiAgICAvLyAgIEdvYWwgMTogPGIgc3R5bGU9J2NvbG9yOnZhcigtLWlvbi1jb2xvci1wcmltYXJ5KTsnPjE8L2I+IDxici8+YCxcclxuICAgIC8vICAgQm9keUNsYXNzOidhcHByYWlzYWwtcG9wb3ZlcidcclxuICAgIC8vIH07XHJcbiAgICBjb25zdCBmdW5jID0gWkNvbXBvbmVudEhlbHBlci5nZXRHcm91cEV2YWxWYWx1ZS5jYWxsKHRoaXMsIGNvbnRlbnQpO1xyXG5cclxuICAgIGxldCByZXN1bHQgPSBmdW5jO1xyXG4gICAgaWYgKHR5cGVvZiBmdW5jID09PSAnZnVuY3Rpb24nKSB7XHJcbiAgICAgIGNvbnN0IGNhbGxGdW5jID0gZnVuYy5iaW5kKHRoaXMuZ3JvdXAuY3RybFNjb3BlKTtcclxuICAgICAgcmVzdWx0ID0gY2FsbEZ1bmMoY29sdW1uRmllbGQsIGRhdGFJdGVtKTtcclxuXHJcbiAgICAgIGlmIChpc09ic2VydmFibGUocmVzdWx0KSkge1xyXG4gICAgICAgIHJldHVybiByZXN1bHQucGlwZShtYXAoZGF0YSA9PiB0aGlzLnBhcnNlUG9wb3Zlck9iamVjdChkYXRhKSkpO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIHJldHVybiBvZih0aGlzLnBhcnNlUG9wb3Zlck9iamVjdChyZXN1bHQpKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBwYXJzZVBvcG92ZXJPYmplY3QocmVzdWx0KTogc3RyaW5nIHtcclxuICAgIGlmICh0eXBlb2YgcmVzdWx0ID09PSBcIm9iamVjdFwiKSB7XHJcbiAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeShyZXN1bHQpO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHJldHVybiBKU09OLnN0cmluZ2lmeShcclxuICAgICAgICB7XHJcbiAgICAgICAgICBCb2R5OiByZXN1bHQgfHwgJycsXHJcbiAgICAgICAgfVxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxuICAvLyNlbmRyZWdpb25cclxufVxyXG4iXX0=
|
|
@@ -42,6 +42,7 @@ import { PopoverModule } from "@progress/kendo-angular-tooltip";
|
|
|
42
42
|
import { UploadModule, UploadsModule } from '@progress/kendo-angular-upload';
|
|
43
43
|
import { NavigationModule } from '@progress/kendo-angular-navigation';
|
|
44
44
|
import { MenusModule } from "@progress/kendo-angular-menu";
|
|
45
|
+
import { GanttModule } from "@progress/kendo-angular-gantt";
|
|
45
46
|
/********** Service & Directive **********/
|
|
46
47
|
import { ZCoreModule } from 'mmhglobal-zcore';
|
|
47
48
|
import { MmhglobalZmodalModule, ModalService } from 'mmhglobal-zmodal';
|
|
@@ -132,6 +133,7 @@ import { ScrollViewModule } from '@progress/kendo-angular-scrollview';
|
|
|
132
133
|
import { ContextMenuComponent } from './embed-components/context-menu/context-menu.component';
|
|
133
134
|
import { FiconComponent } from './ficon/ficon.component';
|
|
134
135
|
import { SfdatetimepickerComponent } from './sfdatetimepicker/sfdatetimepicker.component';
|
|
136
|
+
import { ZganttchartComponent } from './zganttchart/zganttchart.component';
|
|
135
137
|
import * as i0 from "@angular/core";
|
|
136
138
|
export class MmhglobalDynamicformModule {
|
|
137
139
|
}
|
|
@@ -219,7 +221,8 @@ MmhglobalDynamicformModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.
|
|
|
219
221
|
KScrollViewComponent,
|
|
220
222
|
ContextMenuComponent,
|
|
221
223
|
FiconComponent,
|
|
222
|
-
SfdatetimepickerComponent
|
|
224
|
+
SfdatetimepickerComponent,
|
|
225
|
+
ZganttchartComponent], imports: [IonicModule,
|
|
223
226
|
IonicSelectableModule,
|
|
224
227
|
CommonModule,
|
|
225
228
|
RouterModule,
|
|
@@ -268,7 +271,8 @@ MmhglobalDynamicformModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.
|
|
|
268
271
|
ColorPickerModule,
|
|
269
272
|
ScrollViewModule,
|
|
270
273
|
MenusModule,
|
|
271
|
-
DateTimePickerModule
|
|
274
|
+
DateTimePickerModule,
|
|
275
|
+
GanttModule], exports: [ScrollbarThemeDirective,
|
|
272
276
|
FieldElementDirective,
|
|
273
277
|
ZGridBindingDirective,
|
|
274
278
|
ZGridPopupAnchorDirective,
|
|
@@ -349,7 +353,8 @@ MmhglobalDynamicformModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.
|
|
|
349
353
|
KmenuComponent,
|
|
350
354
|
KScrollViewComponent,
|
|
351
355
|
FiconComponent,
|
|
352
|
-
SfdatetimepickerComponent
|
|
356
|
+
SfdatetimepickerComponent,
|
|
357
|
+
ZganttchartComponent] });
|
|
353
358
|
MmhglobalDynamicformModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: MmhglobalDynamicformModule, providers: [
|
|
354
359
|
ModalService
|
|
355
360
|
], imports: [[
|
|
@@ -402,7 +407,8 @@ MmhglobalDynamicformModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.
|
|
|
402
407
|
ColorPickerModule,
|
|
403
408
|
ScrollViewModule,
|
|
404
409
|
MenusModule,
|
|
405
|
-
DateTimePickerModule
|
|
410
|
+
DateTimePickerModule,
|
|
411
|
+
GanttModule
|
|
406
412
|
]] });
|
|
407
413
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImport: i0, type: MmhglobalDynamicformModule, decorators: [{
|
|
408
414
|
type: NgModule,
|
|
@@ -491,7 +497,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImpor
|
|
|
491
497
|
KScrollViewComponent,
|
|
492
498
|
ContextMenuComponent,
|
|
493
499
|
FiconComponent,
|
|
494
|
-
SfdatetimepickerComponent
|
|
500
|
+
SfdatetimepickerComponent,
|
|
501
|
+
ZganttchartComponent
|
|
495
502
|
],
|
|
496
503
|
imports: [
|
|
497
504
|
IonicModule,
|
|
@@ -543,7 +550,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImpor
|
|
|
543
550
|
ColorPickerModule,
|
|
544
551
|
ScrollViewModule,
|
|
545
552
|
MenusModule,
|
|
546
|
-
DateTimePickerModule
|
|
553
|
+
DateTimePickerModule,
|
|
554
|
+
GanttModule
|
|
547
555
|
],
|
|
548
556
|
exports: [
|
|
549
557
|
ScrollbarThemeDirective,
|
|
@@ -627,7 +635,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImpor
|
|
|
627
635
|
KmenuComponent,
|
|
628
636
|
KScrollViewComponent,
|
|
629
637
|
FiconComponent,
|
|
630
|
-
SfdatetimepickerComponent
|
|
638
|
+
SfdatetimepickerComponent,
|
|
639
|
+
ZganttchartComponent
|
|
631
640
|
],
|
|
632
641
|
providers: [
|
|
633
642
|
ModalService
|
|
@@ -635,4 +644,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImpor
|
|
|
635
644
|
schemas: [CUSTOM_ELEMENTS_SCHEMA]
|
|
636
645
|
}]
|
|
637
646
|
}] });
|
|
638
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW1oZ2xvYmFsLWR5bmFtaWNmb3JtLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21taGdsb2JhbC1keW5hbWljZm9ybS9zcmMvbGliL21taGdsb2JhbC1keW5hbWljZm9ybS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBQy9CLE9BQU8sRUFBRSxRQUFRLEVBQUUsc0JBQXNCLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELGtGQUFrRjtBQUNsRixPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsNkJBQTZCO0FBQzdCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUV6RCw4QkFBOEI7QUFDOUIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXhELGtDQUFrQztBQUNsQyxPQUFPLEVBQUUsa0JBQWtCLElBQUksb0JBQW9CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNsRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUV6RSw2QkFBNkI7QUFDN0IsT0FBTyxFQUFFLGNBQWMsRUFBRSxN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QXlCO3dCQUN6Qix3QkFBd0I7d0JBQ3hCLHFCQUFxQjt3QkFDckIsWUFBWTt3QkFDWix3QkFBd0I7d0JBQ3hCLGdCQUFnQjt3QkFDaEIsMEJBQTBCO3dCQUMxQix5QkFBeUI7d0JBQ3pCLGdCQUFnQjt3QkFDaEIsbUJBQW1CO3dCQUNuQiwrQkFBK0I7d0JBQy9CLGNBQWM7d0JBQ2QsdUJBQXVCO3dCQUN2QixxQkFBcUI7d0JBQ3JCLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQix1QkFBdUI7d0JBQ3ZCLGNBQWM7d0JBQ2Qsa0JBQWtCO3dCQUNsQixzQkFBc0I7d0JBQ3RCLHFCQUFxQjt3QkFDckIsY0FBYzt3QkFDZCxvQkFBb0I7d0JBQ3BCLGNBQWM7d0JBQ2QseUJBQXlCO3FCQUMxQjtvQkFDRCxTQUFTLEVBQUU7d0JBQ1QsWUFBWTtxQkFDYjtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztpQkFDbEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKiBBbmd1bGFyICoqKioqKioqKiovXHJcbmltcG9ydCB7IE5nTW9kdWxlLCBDVVNUT01fRUxFTUVOVFNfU0NIRU1BLCBNb2R1bGVXaXRoUHJvdmlkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFNjcm9sbGluZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9zY3JvbGxpbmcnO1xyXG4vLyBpbXBvcnQgeyBCcm93c2VyQW5pbWF0aW9uc01vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyL2FuaW1hdGlvbnNcIjtcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuXHJcbi8qKioqKioqKioqIElvbmljICoqKioqKioqKiovXHJcbmltcG9ydCB7IElvbmljTW9kdWxlIH0gZnJvbSAnQGlvbmljL2FuZ3VsYXInO1xyXG5pbXBvcnQgeyBJb25pY1NlbGVjdGFibGVNb2R1bGUgfSBmcm9tICdpb25pYy1zZWxlY3RhYmxlJztcclxuXHJcbi8qKioqKioqKioqIFBsdWdpbiAqKioqKioqKioqL1xyXG5pbXBvcnQgeyBBY2VFZGl0b3JNb2R1bGUgfSBmcm9tICduZzItYWNlLWVkaXRvcic7XHJcbmltcG9ydCB7IEZvbnRBd2Vzb21lTW9kdWxlIH0gZnJvbSAnQGZvcnRhd2Vzb21lL2FuZ3VsYXItZm9udGF3ZXNvbWUnO1xyXG5pbXBvcnQgeyBRdWVyeUJ1aWxkZXJNb2R1bGUgfSBmcm9tIFwiYW5ndWxhcjItcXVlcnktYnVpbGRlclwiO1xyXG5pbXBvcnQgeyBGbGV4TGF5b3V0TW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2ZsZXgtbGF5b3V0XCI7XHJcblxyXG4vKioqKioqKioqKiBTeW5jRnVzaW9uICoqKioqKioqKiovXHJcbmltcG9ydCB7IFF1ZXJ5QnVpbGRlck1vZHVsZSBhcyBTRlF1ZXJ5QnVpbGRlck1vZHVsZSB9IGZyb20gJ0BzeW5jZnVzaW9uL2VqMi1hbmd1bGFyLXF1ZXJ5YnVpbGRlcic7XHJcbmltcG9ydCB7IERhdGVUaW1lUGlja2VyTW9kdWxlIH0gZnJvbSAnQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItY2FsZW5kYXJzJztcclxuXHJcbi8qKioqKioqKioqIEtlbmRvICoqKioqKioqKiovXHJcbmltcG9ydCB7IEFyY0dhdWdlTW9kdWxlIH0gZnJvbSAnQHByb2dyZXNzL2tlbmRvLWFuZ3VsYXItZ2F1Z2VzJztcclxuaW1wb3J0IHsgQnV0dG9uc01vZHVsZSB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1hbmd1bGFyLWJ1dHRvbnMnO1xyXG5pbXBvcnQgeyBDaGFydHNNb2R1bGUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1jaGFydHMnO1xyXG5pbXBvcnQgeyBDYWxlbmRhck1vZHVsZSwgRGF0ZUlucHV0c01vZHVsZSB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1hbmd1bGFyLWRhdGVpbnB1dHMnO1xyXG5pbXBvcnQgeyBEcm9wRG93bnNNb2R1bGUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1kcm9wZG93bnMnO1xyXG5pbXBvcnQgeyBFZGl0b3JNb2R1bGUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1lZGl0b3InO1xyXG5pbXBvcnQgeyBFeGNlbE1vZHVsZSwgR3JpZE1vZHVsZSB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1hbmd1bGFyLWdyaWQnO1xyXG5pbXBvcnQgeyBGaWx0ZXJNb2R1bGUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1maWx0ZXInO1xyXG5pbXBvcnQgeyBJbmRpY2F0b3JzTW9kdWxlIH0gZnJvbSBcIkBwcm9ncmVzcy9rZW5kby1hbmd1bGFyLWluZGljYXRvcnNcIjtcclxuaW1wb3J0IHsgSW50bE1vZHVsZSB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1hbmd1bGFyLWludGwnO1xyXG5pbXBvcnQgeyBDb2xvclBpY2tlck1vZHVsZSwgSW5wdXRzTW9kdWxlLCBTd2l0Y2hNb2R1bGUsIFRleHRCb3hNb2R1bGUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1pbnB1dHMnO1xyXG5pbXBvcnQgeyBMYWJlbE1vZHVsZSB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1hbmd1bGFyLWxhYmVsJztcclxuaW1wb3J0IHsgTGF5b3V0TW9kdWxlLCBQYW5lbEJhck1vZHVsZSwgVGFiU3RyaXBNb2R1bGUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1sYXlvdXQnO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb25Nb2R1bGUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBQb3B1cE1vZHVsZSB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1hbmd1bGFyLXBvcHVwJztcclxuaW1wb3J0IHsgUHJvZ3Jlc3NCYXJNb2R1bGUgfSBmcm9tIFwiQHByb2dyZXNzL2tlbmRvLWFuZ3VsYXItcHJvZ3Jlc3NiYXJcIjtcclxuaW1wb3J0IHsgVGVsZXJpa1JlcG9ydGluZ01vZHVsZSB9IGZyb20gJ0Bwcm9ncmVzcy90ZWxlcmlrLWFuZ3VsYXItcmVwb3J0LXZpZXdlcic7XHJcbmltcG9ydCB7IFNjaGVkdWxlck1vZHVsZSB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1hbmd1bGFyLXNjaGVkdWxlcic7XHJcbmltcG9ydCB7IFRyZWVMaXN0TW9kdWxlIH0gZnJvbSAnQHByb2dyZXNzL2tlbmRvLWFuZ3VsYXItdHJlZWxpc3QnO1xyXG5pbXBvcnQgeyBUcmVlVmlld01vZHVsZSB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1hbmd1bGFyLXRyZWV2aWV3JztcclxuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1hbmd1bGFyLXRvb2x0aXAnO1xyXG5pbXBvcnQgeyBQb3BvdmVyTW9kdWxlIH0gZnJvbSBcIkBwcm9ncmVzcy9rZW5kby1hbmd1bGFyLXRvb2x0aXBcIjtcclxuaW1wb3J0IHsgVXBsb2FkTW9kdWxlLCBVcGxvYWRzTW9kdWxlIH0gZnJvbSAnQHByb2dyZXNzL2tlbmRvLWFuZ3VsYXItdXBsb2FkJztcclxuaW1wb3J0IHsgTmF2aWdhdGlvbk1vZHVsZSB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1hbmd1bGFyLW5hdmlnYXRpb24nO1xyXG5pbXBvcnQgeyBNZW51c01vZHVsZSB9IGZyb20gXCJAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1tZW51XCI7XHJcblxyXG4vKioqKioqKioqKiBTZXJ2aWNlICYgRGlyZWN0aXZlICoqKioqKioqKiovXHJcbmltcG9ydCB7IFpDb3JlTW9kdWxlLCBaR3JvdXAgfSBmcm9tICdtbWhnbG9iYWwtemNvcmUnO1xyXG5pbXBvcnQgeyBNbWhnbG9iYWxNaWRkbGV3YXJlTW9kdWxlIH0gZnJvbSAnbW1oZ2xvYmFsLW1pZGRsZXdhcmUnO1xyXG5pbXBvcnQgeyBNbWhnbG9iYWxabW9kYWxNb2R1bGUsIE1vZGFsU2VydmljZSB9IGZyb20gJ21taGdsb2JhbC16bW9kYWwnO1xyXG5pbXBvcnQgeyBNYWluU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvbWFpbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU2Nyb2xsYmFyVGhlbWVEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvc2Nyb2xsYmFyLnRoZW1lLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEZpZWxkRWxlbWVudERpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9maWVsZGVsZW1lbnQuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgWkdyaWRCaW5kaW5nRGlyZWN0aXZlIH0gZnJvbSAnLi96Z3JpZC96Z3JpZC5iaW5kaW5nLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFpHcmlkUG9wdXBBbmNob3JEaXJlY3RpdmUgfSBmcm9tICcuL3pncmlkL3pncmlkLnBvcHVwLmFuY2hvci10YXJnZXQuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgT3Blbk9uRm9jdXNEaXJlY3RpdmUgfSBmcm9tICcuL3pzZWxlY3RtdWx0aXBsZS96c2VsZWN0bXVsdGlwbGUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgRWxlbWVudENvbnRhaW5lckRpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9lbGVtZW50Y29udGFpbmVyLmRpcmVjdGl2ZSc7XHJcblxyXG4vKioqKioqKioqKiBBZGRvbiAqKioqKioqKioqL1xyXG5pbXBvcnQgeyBEYXRlUGFyc2VyRmlsdGVyIH0gZnJvbSAnLi96ZGF0ZXRpbWUvZGF0ZVBhcnNlci5waXBlJztcclxuaW1wb3J0IHsgRWRpdG9yRmlsdGVyIH0gZnJvbSAnLi96Y29kZWVkaXRvci96Y29kZWVkaXRvci5waXBlJztcclxuaW1wb3J0IHsgRGl2ekxheW91dCB9IGZyb20gJy4vemRpdi96ZGl2LnBpcGUnO1xyXG5pbXBvcnQgeyBUYWJGaWx0ZXIgfSBmcm9tICcuL3p0YWIvenRhYi5waXBlJztcclxuaW1wb3J0IHsgUGFuZWxBcmVhRmlsdGVyIH0gZnJvbSAnLi9waXBlL3BhbmVsLWFyZWEucGlwZSc7XHJcbmltcG9ydCB7IFpJbnB1dFBhcnNlciB9IGZyb20gJy4vemlucHV0LWNvbnRhaW5lci96aW5wdXQtY29udGFpbmVyLnBpcGUnO1xyXG5pbXBvcnQgeyBIdG1sU2FuaXRpemVQaXBlIH0gZnJvbSAnLi9waXBlL2h0bWxTYW5pdGl6ZS5waXBlJztcclxuaW1wb3J0IHsgRGF0ZVJhbmdlRmlsdGVyQ2VsbENvbXBvbmVudCB9IGZyb20gJy4vemdyaWQvZGF0ZS1yYW5nZS1jZWxsLWZpbHRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBaU2NoZWR1bGVyVG9vbEJhckNvbXBvbmVudCB9IGZyb20gJy4venNjaGVkdWxlci96c2NoZWR1bGVyLnRvb2xiYXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWlNlbGVjdFRyYW5zbGF0aW9uUGFyc2VyIH0gZnJvbSAnLi96c2VsZWN0bXVsdGlwbGUvenNlbGVjdG11bHRpcGxlLnBpcGUnO1xyXG5pbXBvcnQgeyBaTnVtZXJpY1BhcnNlciB9IGZyb20gJy4vem51bWVyaWMvem51bWVyaWMuY29tcG9uZW50LnBpcGUnO1xyXG5pbXBvcnQgeyBEYXRlS2VuZG9Gb3JtYXRQYXJzZXIgfSBmcm9tICcuL3pkYXRldGltZS9kYXRlS2VuZG9Gb3JtYXRQYXJzZXIucGlwZSc7XHJcbmltcG9ydCB7IERhdGVJb25pY0Zvcm1hdFBhcnNlciB9IGZyb20gJy4vemRhdGV0aW1lL2RhdGVJb25pY0Zvcm1hdFBhcnNlci5waXBlJztcclxuXHJcbi8qKioqKioqKioqIHpDb21wb25lbnQgKioqKioqKioqKi9cclxuaW1wb3J0IHsgVWlwYWdlQ29tcG9uZW50IH0gZnJvbSAnLi91aXBhZ2UvdWlwYWdlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpaGVhZGVyQ29tcG9uZW50IH0gZnJvbSAnLi91aWhlYWRlci91aWhlYWRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaWNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vdWljb250YWluZXIvdWljb250YWluZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWljb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi91aWNvbnRlbnQvdWljb250ZW50LmNvbXBvbmVudCc7XHJcblxyXG5pbXBvcnQgeyBVaW1lbnVjb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi91aW1lbnVjb250ZW50L3VpbWVudWNvbnRlbnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWltZW51YnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi91aW1lbnVidXR0b24vdWltZW51YnV0dG9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpYXBwbWVudWNvbnRlbnRDb21wb25lbnQgfSBmcm9tICcuL3VpYXBwbWVudWNvbnRlbnQvdWlhcHBtZW51Y29udGVudC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaWJ1bGxldGluQ29tcG9uZW50IH0gZnJvbSAnLi91aWJ1bGxldGluL3VpYnVsbGV0aW4uY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlhY3Rpb25idXR0b25Db21wb25lbnQgfSBmcm9tICcuL3VpYWN0aW9uYnV0dG9uL3VpYWN0aW9uYnV0dG9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpdmFsaWRhdGlvbm1lc3NhZ2VDb21wb25lbnQgfSBmcm9tICcuL3VpdmFsaWRhdGlvbm1lc3NhZ2UvdWl2YWxpZGF0aW9ubWVzc2FnZS5jb21wb25lbnQnO1xyXG5cclxuaW1wb3J0IHsgWkJ1bGxldENvbXBvbmVudCB9IGZyb20gXCIuL3pidWxsZXQvemJ1bGxldC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgWmJ1dHRvbnNDb21wb25lbnQgfSBmcm9tIFwiLi96YnV0dG9ucy96YnV0dG9ucy5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgWmNhcmRDb21wb25lbnQgfSBmcm9tIFwiLi96Y2FyZC96Y2FyZC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgWmNoYXJ0Q29tcG9uZW50IH0gZnJvbSAnLi96Y2hhcnQvemNoYXJ0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFpjaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4vemNoZWNrYm94L3pjaGVja2JveC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBaQ2hpcENvbXBvbmVudCB9IGZyb20gXCIuL3pjaGlwL3pjaGlwLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBaY29kZWVkaXRvckNvbXBvbmVudCB9IGZyb20gJy4vemNvZGVlZGl0b3IvemNvZGVlZGl0b3IuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWmRhdGVyYW5nZUNvbXBvbmVudCB9IGZyb20gJy4vemRhdGVyYW5nZS96ZGF0ZXJhbmdlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFpkYXRldGltZUNvbXBvbmVudCB9IGZyb20gJy4vemRhdGV0aW1lL3pkYXRldGltZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBaZGl2Q29tcG9uZW50IH0gZnJvbSAnLi96ZGl2L3pkaXYuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWmZvcm1Db21wb25lbnQgfSBmcm9tIFwiLi96Zm9ybS96Zm9ybS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgWmZvcm1jb250cm9sQ29tcG9uZW50IH0gZnJvbSBcIi4vemZvcm1jb250cm9sL3pmb3JtY29udHJvbC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgWmdhdWdlQ29tcG9uZW50IH0gZnJvbSAnLi96Z2F1Z2UvemdhdWdlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFpncmlkQ29tcG9uZW50IH0gZnJvbSBcIi4vemdyaWQvemdyaWQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFpncmlkQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSBcIi4vemdyaWQvY29udGFpbmVyL3pncmlkLWNvbnRhaW5lci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgWmltZ0NvbXBvbmVudCB9IGZyb20gJy4vemltZy96aW1nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFpsYWJlbENvbXBvbmVudCB9IGZyb20gJy4vemxhYmVsL3psYWJlbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBabWZiQ29tcG9uZW50IH0gZnJvbSAnLi96bWZiL3ptZmIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWm1vZGFsQ29tcG9uZW50IH0gZnJvbSBcIi4vem1vZGFsL3ptb2RhbC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgWm1vZGFsTW9iaWxlQ29tcG9uZW50IH0gZnJvbSBcIi4vem1vZGFsL3ptb2RhbC1tb2JpbGUuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFpudW1lcmljQ29tcG9uZW50IH0gZnJvbSAnLi96bnVtZXJpYy96bnVtZXJpYy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBacG9zdHNlbGVjdGlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi96cG9zdHNlbGVjdGlucHV0L3pwb3N0c2VsZWN0aW5wdXQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWnJlcG9ydENvbXBvbmVudCB9IGZyb20gJy4venJlcG9ydC96cmVwb3J0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFpzY2hlZHVsZXJDb21wb25lbnQgfSBmcm9tICcuL3pzY2hlZHVsZXIvenNjaGVkdWxlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBac2VsZWN0bXVsdGlwbGVDb21wb25lbnQgfSBmcm9tIFwiLi96c2VsZWN0bXVsdGlwbGUvenNlbGVjdG11bHRpcGxlLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBadGFiQ29tcG9uZW50IH0gZnJvbSBcIi4venRhYi96dGFiLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBadGV4dENvbXBvbmVudCB9IGZyb20gXCIuL3p0ZXh0L3p0ZXh0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBadGV4dGFyZWFDb21wb25lbnQgfSBmcm9tICcuL3p0ZXh0YXJlYS96dGV4dGFyZWEuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWnRleHRlZGl0b3JDb21wb25lbnQgfSBmcm9tICcuL3p0ZXh0ZWRpdG9yL3p0ZXh0ZWRpdG9yLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFp0cmVlQ29tcG9uZW50IH0gZnJvbSAnLi96dHJlZS96dHJlZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBadHJlZWxpc3RDb21wb25lbnQgfSBmcm9tICcuL3p0cmVlbGlzdC96dHJlZWxpc3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWnRyZW5kY2FyZENvbXBvbmVudCB9IGZyb20gJy4venRyZW5kY2FyZC96dHJlbmRjYXJkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFp1bmtub3duQ29tcG9uZW50IH0gZnJvbSBcIi4venVua25vd24venVua25vd24uY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFp1ZGZDb21wb25lbnQgfSBmcm9tICcuL3p1ZGYvenVkZi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBadXBsb2FkQ29tcG9uZW50IH0gZnJvbSAnLi96dXBsb2FkL3p1cGxvYWQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWndvcmtmbG93YnV0dG9uc0NvbXBvbmVudCB9IGZyb20gXCIuL3p3b3JrZmxvd2J1dHRvbnMvendvcmtmbG93YnV0dG9ucy5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgS2NhcmRDb21wb25lbnQgfSBmcm9tICcuL2tjYXJkL2tjYXJkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFpJbnB1dENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vemlucHV0LWNvbnRhaW5lci96aW5wdXQtY29udGFpbmVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFpwcm9ncmVzc2JhckNvbXBvbmVudCB9IGZyb20gJy4venByb2dyZXNzYmFyL3pwcm9ncmVzc2Jhci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBJbnB1dEVycm9yTWVzc2FnZUNvbXBvbmVudCB9IGZyb20gJy4vaW5wdXQtZXJyb3ItbWVzc2FnZS9pbnB1dC1lcnJvci1tZXNzYWdlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IElucHV0RmllbGRBZGRPbnNDb21wb25lbnQgfSBmcm9tICcuL2VtYmVkLWNvbXBvbmVudHMvaW5wdXQtZmllbGQtYWRkb25zL2lucHV0LWZpZWxkLWFkZG9ucy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQcm9jZXNzaW5nUmVjb3JkTG9hZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9lbWJlZC1jb21wb25lbnRzL3Byb2Nlc3NpbmctcmVjb3JkLWxvYWRlci9wcm9jZXNzaW5nLXJlY29yZC1sb2FkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRGF0ZUlvbmljTWluTWF4UGFyc2VyIH0gZnJvbSAnLi96ZGF0ZXRpbWUvZGF0ZUlvbmljTWluTWF4RGF0ZS5waXBlJztcclxuaW1wb3J0IHsgU2ZxdWVyeWJ1aWxkZXJDb21wb25lbnQgfSBmcm9tICcuL3NmcXVlcnlidWlsZGVyL3NmcXVlcnlidWlsZGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFpsb29wQ29tcG9uZW50IH0gZnJvbSAnLi96bG9vcC96bG9vcC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBLc3BsaXR0ZXJDb21wb25lbnQgfSBmcm9tICcuL2tzcGxpdHRlci9rc3BsaXR0ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVmlydHVhbFNjcm9sbENvbXBvbmVudCB9IGZyb20gJy4vdmlydHVhbC1zY3JvbGwvdmlydHVhbC1zY3JvbGwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3Bpbm5lckNvbXBvbmVudCB9IGZyb20gJy4vZW1iZWQtY29tcG9uZW50cy9zcGlubmVyL3NwaW5uZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUGFnZUxvYWRlckNvbXBvbmVudCB9IGZyb20gJy4vZW1iZWQtY29tcG9uZW50cy9wYWdlLWxvYWRlci9wYWdlLWxvYWRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBaY29sb3JwaWNrZXJDb21wb25lbnQgfSBmcm9tICcuL3pjb2xvcnBpY2tlci96Y29sb3JwaWNrZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgS21lbnVDb21wb25lbnQgfSBmcm9tICcuL2ttZW51L2ttZW51LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEtTY3JvbGxWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9rc2Nyb2xsdmlldy9rc2Nyb2xsdmlldy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTY3JvbGxWaWV3TW9kdWxlIH0gZnJvbSAnQHByb2dyZXNzL2tlbmRvLWFuZ3VsYXItc2Nyb2xsdmlldyc7XHJcbmltcG9ydCB7IENvbnRleHRNZW51Q29tcG9uZW50IH0gZnJvbSAnLi9lbWJlZC1jb21wb25lbnRzL2NvbnRleHQtbWVudS9jb250ZXh0LW1lbnUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRmljb25Db21wb25lbnQgfSBmcm9tICcuL2ZpY29uL2ZpY29uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNmZGF0ZXRpbWVwaWNrZXJDb21wb25lbnQgfSBmcm9tICcuL3NmZGF0ZXRpbWVwaWNrZXIvc2ZkYXRldGltZXBpY2tlci5jb21wb25lbnQnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIFNjcm9sbGJhclRoZW1lRGlyZWN0aXZlLFxyXG4gICAgRmllbGRFbGVtZW50RGlyZWN0aXZlLFxyXG4gICAgWkdyaWRCaW5kaW5nRGlyZWN0aXZlLFxyXG4gICAgWkdyaWRQb3B1cEFuY2hvckRpcmVjdGl2ZSxcclxuICAgIE9wZW5PbkZvY3VzRGlyZWN0aXZlLFxyXG4gICAgRWxlbWVudENvbnRhaW5lckRpcmVjdGl2ZSxcclxuICAgIERhdGVQYXJzZXJGaWx0ZXIsIC8vIHpncmlkIGFkZG9uXHJcbiAgICBFZGl0b3JGaWx0ZXIsIC8vIHpjb2RlIGFkZG9uXHJcbiAgICBEaXZ6TGF5b3V0LCAvLyB6ZGl2IGFkZG9uXHJcbiAgICBUYWJGaWx0ZXIsIC8vIHp0YWIgYWRkb25cclxuICAgIFBhbmVsQXJlYUZpbHRlciwgLy8gcGFuZWwgYXJlYSBhZGRvblxyXG4gICAgRGF0ZVJhbmdlRmlsdGVyQ2VsbENvbXBvbmVudCwgLy8gemdyaWQgYWRkb25cclxuICAgIFpTY2hlZHVsZXJUb29sQmFyQ29tcG9uZW50LCAvLyB6c2NoZWR1bGVyIGFkZG9uXHJcbiAgICBVaWhlYWRlckNvbXBvbmVudCxcclxuICAgIFVpY29udGFpbmVyQ29tcG9uZW50LFxyXG4gICAgVWljb250ZW50Q29tcG9uZW50LFxyXG4gICAgVWlwYWdlQ29tcG9uZW50LFxyXG4gICAgVWlidWxsZXRpbkNvbXBvbmVudCxcclxuICAgIFVpYWN0aW9uYnV0dG9uQ29tcG9uZW50LFxyXG4gICAgVWltZW51Y29udGVudENvbXBvbmVudCxcclxuICAgIFVpbWVudWJ1dHRvbkNvbXBvbmVudCxcclxuICAgIFVpYXBwbWVudWNvbnRlbnRDb21wb25lbnQsXHJcbiAgICBVaXZhbGlkYXRpb25tZXNzYWdlQ29tcG9uZW50LFxyXG4gICAgWkJ1bGxldENvbXBvbmVudCxcclxuICAgIFpidXR0b25zQ29tcG9uZW50LFxyXG4gICAgWmNhcmRDb21wb25lbnQsXHJcbiAgICBaY2hhcnRDb21wb25lbnQsXHJcbiAgICBaY2hlY2tib3hDb21wb25lbnQsXHJcbiAgICBaQ2hpcENvbXBvbmVudCxcclxuICAgIFpjb2RlZWRpdG9yQ29tcG9uZW50LFxyXG4gICAgWmRhdGVyYW5nZUNvbXBvbmVudCxcclxuICAgIFpkYXRldGltZUNvbXBvbmVudCxcclxuICAgIFpkaXZDb21wb25lbnQsXHJcbiAgICBaZm9ybUNvbXBvbmVudCxcclxuICAgIFpmb3JtY29udHJvbENvbXBvbmVudCxcclxuICAgIFpnYXVnZUNvbXBvbmVudCxcclxuICAgIFpncmlkQ29tcG9uZW50LFxyXG4gICAgWmltZ0NvbXBvbmVudCxcclxuICAgIFpsYWJlbENvbXBvbmVudCxcclxuICAgIFptZmJDb21wb25lbnQsXHJcbiAgICBabW9kYWxDb21wb25lbnQsXHJcbiAgICBabW9kYWxNb2JpbGVDb21wb25lbnQsXHJcbiAgICBabnVtZXJpY0NvbXBvbmVudCxcclxuICAgIFpwb3N0c2VsZWN0aW5wdXRDb21wb25lbnQsXHJcbiAgICBacmVwb3J0Q29tcG9uZW50LFxyXG4gICAgWnNjaGVkdWxlckNvbXBvbmVudCxcclxuICAgIFpzZWxlY3RtdWx0aXBsZUNvbXBvbmVudCxcclxuICAgIFp0YWJDb21wb25lbnQsXHJcbiAgICBadGV4dENvbXBvbmVudCxcclxuICAgIFp0ZXh0YXJlYUNvbXBvbmVudCxcclxuICAgIFp0ZXh0ZWRpdG9yQ29tcG9uZW50LFxyXG4gICAgWnRyZWVDb21wb25lbnQsXHJcbiAgICBadHJlZWxpc3RDb21wb25lbnQsXHJcbiAgICBadHJlbmRjYXJkQ29tcG9uZW50LFxyXG4gICAgWnVua25vd25Db21wb25lbnQsXHJcbiAgICBadWRmQ29tcG9uZW50LFxyXG4gICAgWnVwbG9hZENvbXBvbmVudCxcclxuICAgIFp3b3JrZmxvd2J1dHRvbnNDb21wb25lbnQsXHJcbiAgICBLY2FyZENvbXBvbmVudCxcclxuICAgIFpJbnB1dENvbnRhaW5lckNvbXBvbmVudCxcclxuICAgIFpwcm9ncmVzc2JhckNvbXBvbmVudCxcclxuICAgIFpJbnB1dFBhcnNlcixcclxuICAgIFpTZWxlY3RUcmFuc2xhdGlvblBhcnNlcixcclxuICAgIEh0bWxTYW5pdGl6ZVBpcGUsXHJcbiAgICBJbnB1dEVycm9yTWVzc2FnZUNvbXBvbmVudCxcclxuICAgIElucHV0RmllbGRBZGRPbnNDb21wb25lbnQsXHJcbiAgICBTcGlubmVyQ29tcG9uZW50LFxyXG4gICAgUGFnZUxvYWRlckNvbXBvbmVudCxcclxuICAgIFByb2Nlc3NpbmdSZWNvcmRMb2FkZXJDb21wb25lbnQsXHJcbiAgICBaTnVtZXJpY1BhcnNlcixcclxuICAgIFpncmlkQ29udGFpbmVyQ29tcG9uZW50LFxyXG4gICAgRGF0ZUtlbmRvRm9ybWF0UGFyc2VyLFxyXG4gICAgRGF0ZUlvbmljRm9ybWF0UGFyc2VyLFxyXG4gICAgRGF0ZUlvbmljTWluTWF4UGFyc2VyLFxyXG4gICAgU2ZxdWVyeWJ1aWxkZXJDb21wb25lbnQsXHJcbiAgICBabG9vcENvbXBvbmVudCxcclxuICAgIEtzcGxpdHRlckNvbXBvbmVudCxcclxuICAgIFZpcnR1YWxTY3JvbGxDb21wb25lbnQsXHJcbiAgICBaY29sb3JwaWNrZXJDb21wb25lbnQsXHJcbiAgICBLbWVudUNvbXBvbmVudCxcclxuICAgIEtTY3JvbGxWaWV3Q29tcG9uZW50LFxyXG4gICAgQ29udGV4dE1lbnVDb21wb25lbnQsXHJcbiAgICBGaWNvbkNvbXBvbmVudCxcclxuICAgIFNmZGF0ZXRpbWVwaWNrZXJDb21wb25lbnRcclxuICBdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIElvbmljTW9kdWxlLFxyXG4gICAgSW9uaWNTZWxlY3RhYmxlTW9kdWxlLFxyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgUm91dGVyTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgQWNlRWRpdG9yTW9kdWxlLFxyXG4gICAgRm9udEF3ZXNvbWVNb2R1bGUsXHJcbiAgICBRdWVyeUJ1aWxkZXJNb2R1bGUsXHJcbiAgICBBcmNHYXVnZU1vZHVsZSxcclxuICAgIEJ1dHRvbnNNb2R1bGUsXHJcbiAgICBDaGFydHNNb2R1bGUsXHJcbiAgICBDYWxlbmRhck1vZHVsZSxcclxuICAgIERhdGVJbnB1dHNNb2R1bGUsXHJcbiAgICBEcm9wRG93bnNNb2R1bGUsXHJcbiAgICBFZGl0b3JNb2R1bGUsXHJcbiAgICBFeGNlbE1vZHVsZSxcclxuICAgIEdyaWRNb2R1bGUsXHJcbiAgICBGaWx0ZXJNb2R1bGUsXHJcbiAgICBJbmRpY2F0b3JzTW9kdWxlLFxyXG4gICAgSW50bE1vZHVsZSxcclxuICAgIElucHV0c01vZHVsZSxcclxuICAgIFN3aXRjaE1vZHVsZSxcclxuICAgIFRleHRCb3hNb2R1bGUsXHJcbiAgICBMYWJlbE1vZHVsZSxcclxuICAgIExheW91dE1vZHVsZSxcclxuICAgIFBhbmVsQmFyTW9kdWxlLFxyXG4gICAgVGFiU3RyaXBNb2R1bGUsXHJcbiAgICBOb3RpZmljYXRpb25Nb2R1bGUsXHJcbiAgICBQb3B1cE1vZHVsZSxcclxuICAgIFByb2dyZXNzQmFyTW9kdWxlLFxyXG4gICAgVGVsZXJpa1JlcG9ydGluZ01vZHVsZSxcclxuICAgIFNjaGVkdWxlck1vZHVsZSxcclxuICAgIFRyZWVMaXN0TW9kdWxlLFxyXG4gICAgVHJlZVZpZXdNb2R1bGUsXHJcbiAgICBUb29sdGlwTW9kdWxlLFxyXG4gICAgUG9wb3Zlck1vZHVsZSxcclxuICAgIFVwbG9hZE1vZHVsZSxcclxuICAgIFVwbG9hZHNNb2R1bGUsXHJcbiAgICBaQ29yZU1vZHVsZSxcclxuICAgIE1taGdsb2JhbFptb2RhbE1vZHVsZSxcclxuICAgIE5hdmlnYXRpb25Nb2R1bGUsXHJcbiAgICBGbGV4TGF5b3V0TW9kdWxlLFxyXG4gICAgU0ZRdWVyeUJ1aWxkZXJNb2R1bGUsXHJcbiAgICBTY3JvbGxpbmdNb2R1bGUsXHJcbiAgICBRdWVyeUJ1aWxkZXJNb2R1bGUsXHJcbiAgICBDb2xvclBpY2tlck1vZHVsZSxcclxuICAgIFNjcm9sbFZpZXdNb2R1bGUsXHJcbiAgICBNZW51c01vZHVsZSxcclxuICAgIERhdGVUaW1lUGlja2VyTW9kdWxlIFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgU2Nyb2xsYmFyVGhlbWVEaXJlY3RpdmUsXHJcbiAgICBGaWVsZEVsZW1lbnREaXJlY3RpdmUsXHJcbiAgICBaR3JpZEJpbmRpbmdEaXJlY3RpdmUsXHJcbiAgICBaR3JpZFBvcHVwQW5jaG9yRGlyZWN0aXZlLFxyXG4gICAgT3Blbk9uRm9jdXNEaXJlY3RpdmUsXHJcbiAgICBFbGVtZW50Q29udGFpbmVyRGlyZWN0aXZlLFxyXG4gICAgRGF0ZVBhcnNlckZpbHRlciwgLy8gemRhdGV0aW1lIGFkZG9uXHJcbiAgICBFZGl0b3JGaWx0ZXIsIC8vIHpjb2RlIGFkZG9uXHJcbiAgICBEaXZ6TGF5b3V0LCAvLyB6ZGl2IGFkZG9uXHJcbiAgICBUYWJGaWx0ZXIsIC8vIHp0YWIgYWRkb25cclxuICAgIFBhbmVsQXJlYUZpbHRlciwgLy8gcGFuZWwgYXJlYSBhZGRvblxyXG4gICAgRGF0ZVJhbmdlRmlsdGVyQ2VsbENvbXBvbmVudCwgLy8gemdyaWQgYWRkb25cclxuICAgIFpTY2hlZHVsZXJUb29sQmFyQ29tcG9uZW50LCAvLyB6c2NoZWR1bGVyIGFkZG9uXHJcbiAgICBVaWhlYWRlckNvbXBvbmVudCxcclxuICAgIFVpY29udGFpbmVyQ29tcG9uZW50LFxyXG4gICAgVWljb250ZW50Q29tcG9uZW50LFxyXG4gICAgVWlwYWdlQ29tcG9uZW50LFxyXG4gICAgVWltZW51Y29udGVudENvbXBvbmVudCxcclxuICAgIFVpbWVudWJ1dHRvbkNvbXBvbmVudCxcclxuICAgIFVpYXBwbWVudWNvbnRlbnRDb21wb25lbnQsXHJcbiAgICBVaWJ1bGxldGluQ29tcG9uZW50LFxyXG4gICAgVWlhY3Rpb25idXR0b25Db21wb25lbnQsXHJcbiAgICBVaXZhbGlkYXRpb25tZXNzYWdlQ29tcG9uZW50LFxyXG4gICAgWkJ1bGxldENvbXBvbmVudCxcclxuICAgIFpidXR0b25zQ29tcG9uZW50LFxyXG4gICAgWmNhcmRDb21wb25lbnQsXHJcbiAgICBaY2hhcnRDb21wb25lbnQsXHJcbiAgICBaY2hlY2tib3hDb21wb25lbnQsXHJcbiAgICBaQ2hpcENvbXBvbmVudCxcclxuICAgIFpjb2RlZWRpdG9yQ29tcG9uZW50LFxyXG4gICAgWmRhdGVyYW5nZUNvbXBvbmVudCxcclxuICAgIFpkYXRldGltZUNvbXBvbmVudCxcclxuICAgIFpkaXZDb21wb25lbnQsXHJcbiAgICBaZm9ybUNvbXBvbmVudCxcclxuICAgIFpmb3JtY29udHJvbENvbXBvbmVudCxcclxuICAgIFpnYXVnZUNvbXBvbmVudCxcclxuICAgIFpncmlkQ29tcG9uZW50LFxyXG4gICAgWmltZ0NvbXBvbmVudCxcclxuICAgIFpsYWJlbENvbXBvbmVudCxcclxuICAgIFptZmJDb21wb25lbnQsXHJcbiAgICBabW9kYWxDb21wb25lbnQsXHJcbiAgICBabW9kYWxNb2JpbGVDb21wb25lbnQsXHJcbiAgICBabnVtZXJpY0NvbXBvbmVudCxcclxuICAgIFpwb3N0c2VsZWN0aW5wdXRDb21wb25lbnQsXHJcbiAgICBacmVwb3J0Q29tcG9uZW50LFxyXG4gICAgWnNjaGVkdWxlckNvbXBvbmVudCxcclxuICAgIFpzZWxlY3RtdWx0aXBsZUNvbXBvbmVudCxcclxuICAgIFp0YWJDb21wb25lbnQsXHJcbiAgICBadGV4dENvbXBvbmVudCxcclxuICAgIFp0ZXh0YXJlYUNvbXBvbmVudCxcclxuICAgIFp0ZXh0ZWRpdG9yQ29tcG9uZW50LFxyXG4gICAgWnRyZWVDb21wb25lbnQsXHJcbiAgICBadHJlZWxpc3RDb21wb25lbnQsXHJcbiAgICBadHJlbmRjYXJkQ29tcG9uZW50LFxyXG4gICAgWnVua25vd25Db21wb25lbnQsXHJcbiAgICBadWRmQ29tcG9uZW50LFxyXG4gICAgWnVwbG9hZENvbXBvbmVudCxcclxuICAgIFp3b3JrZmxvd2J1dHRvbnNDb21wb25lbnQsXHJcbiAgICBaSW5wdXRDb250YWluZXJDb21wb25lbnQsXHJcbiAgICBacHJvZ3Jlc3NiYXJDb21wb25lbnQsXHJcbiAgICBaSW5wdXRQYXJzZXIsXHJcbiAgICBaU2VsZWN0VHJhbnNsYXRpb25QYXJzZXIsXHJcbiAgICBIdG1sU2FuaXRpemVQaXBlLFxyXG4gICAgSW5wdXRFcnJvck1lc3NhZ2VDb21wb25lbnQsXHJcbiAgICBJbnB1dEZpZWxkQWRkT25zQ29tcG9uZW50LFxyXG4gICAgU3Bpbm5lckNvbXBvbmVudCxcclxuICAgIFBhZ2VMb2FkZXJDb21wb25lbnQsXHJcbiAgICBQcm9jZXNzaW5nUmVjb3JkTG9hZGVyQ29tcG9uZW50LFxyXG4gICAgWk51bWVyaWNQYXJzZXIsXHJcbiAgICBaZ3JpZENvbnRhaW5lckNvbXBvbmVudCxcclxuICAgIERhdGVLZW5kb0Zvcm1hdFBhcnNlcixcclxuICAgIERhdGVJb25pY0Zvcm1hdFBhcnNlcixcclxuICAgIERhdGVJb25pY01pbk1heFBhcnNlcixcclxuICAgIFNmcXVlcnlidWlsZGVyQ29tcG9uZW50LFxyXG4gICAgWmxvb3BDb21wb25lbnQsXHJcbiAgICBLc3BsaXR0ZXJDb21wb25lbnQsXHJcbiAgICBWaXJ0dWFsU2Nyb2xsQ29tcG9uZW50LFxyXG4gICAgWmNvbG9ycGlja2VyQ29tcG9uZW50LFxyXG4gICAgS21lbnVDb21wb25lbnQsXHJcbiAgICBLU2Nyb2xsVmlld0NvbXBvbmVudCxcclxuICAgIEZpY29uQ29tcG9uZW50LFxyXG4gICAgU2ZkYXRldGltZXBpY2tlckNvbXBvbmVudFxyXG4gIF0sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICBNb2RhbFNlcnZpY2VcclxuICBdLFxyXG4gIHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXVxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIE1taGdsb2JhbER5bmFtaWNmb3JtTW9kdWxlIHsgfVxyXG4iXX0=
|
|
647
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW1oZ2xvYmFsLWR5bmFtaWNmb3JtLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21taGdsb2JhbC1keW5hbWljZm9ybS9zcmMvbGliL21taGdsb2JhbC1keW5hbWljZm9ybS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBQy9CLE9BQU8sRUFBRSxRQUFRLEVBQUUsc0JBQXNCLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELGtGQUFrRjtBQUNsRixPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsNkJBQTZCO0FBQzdCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUV6RCw4QkFBOEI7QUFDOUIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXhELGtDQUFrQztBQUNsQyxPQUFPLEVBQUUsa0JBQWtCLElBQUksb0JBQW9CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUNsRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUV6RSw2QkFBNkI7QUFDN0IsT0FBTyxFQUFFLGNBQWMsRUFBRSxN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QkFBbUI7d0JBQ25CLHdCQUF3Qjt3QkFDeEIsYUFBYTt3QkFDYixjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsb0JBQW9CO3dCQUNwQixjQUFjO3dCQUNkLGtCQUFrQjt3QkFDbEIsbUJBQW1CO3dCQUNuQixpQkFBaUI7d0JBQ2pCLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQix5QkFBeUI7d0JBQ3pCLHdCQUF3Qjt3QkFDeEIscUJBQXFCO3dCQUNyQixZQUFZO3dCQUNaLHdCQUF3Qjt3QkFDeEIsZ0JBQWdCO3dCQUNoQiwwQkFBMEI7d0JBQzFCLHlCQUF5Qjt3QkFDekIsZ0JBQWdCO3dCQUNoQixtQkFBbUI7d0JBQ25CLCtCQUErQjt3QkFDL0IsY0FBYzt3QkFDZCx1QkFBdUI7d0JBQ3ZCLHFCQUFxQjt3QkFDckIscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLHVCQUF1Qjt3QkFDdkIsY0FBYzt3QkFDZCxrQkFBa0I7d0JBQ2xCLHNCQUFzQjt3QkFDdEIscUJBQXFCO3dCQUNyQixjQUFjO3dCQUNkLG9CQUFvQjt3QkFDcEIsY0FBYzt3QkFDZCx5QkFBeUI7d0JBQ3pCLG9CQUFvQjtxQkFDckI7b0JBQ0QsU0FBUyxFQUFFO3dCQUNULFlBQVk7cUJBQ2I7b0JBQ0QsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqKioqKioqKiogQW5ndWxhciAqKioqKioqKioqL1xyXG5pbXBvcnQgeyBOZ01vZHVsZSwgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBTY3JvbGxpbmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jZGsvc2Nyb2xsaW5nJztcclxuLy8gaW1wb3J0IHsgQnJvd3NlckFuaW1hdGlvbnNNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlci9hbmltYXRpb25zXCI7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcblxyXG4vKioqKioqKioqKiBJb25pYyAqKioqKioqKioqL1xyXG5pbXBvcnQgeyBJb25pY01vZHVsZSB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcclxuaW1wb3J0IHsgSW9uaWNTZWxlY3RhYmxlTW9kdWxlIH0gZnJvbSAnaW9uaWMtc2VsZWN0YWJsZSc7XHJcblxyXG4vKioqKioqKioqKiBQbHVnaW4gKioqKioqKioqKi9cclxuaW1wb3J0IHsgQWNlRWRpdG9yTW9kdWxlIH0gZnJvbSAnbmcyLWFjZS1lZGl0b3InO1xyXG5pbXBvcnQgeyBGb250QXdlc29tZU1vZHVsZSB9IGZyb20gJ0Bmb3J0YXdlc29tZS9hbmd1bGFyLWZvbnRhd2Vzb21lJztcclxuaW1wb3J0IHsgUXVlcnlCdWlsZGVyTW9kdWxlIH0gZnJvbSBcImFuZ3VsYXIyLXF1ZXJ5LWJ1aWxkZXJcIjtcclxuaW1wb3J0IHsgRmxleExheW91dE1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9mbGV4LWxheW91dFwiO1xyXG5cclxuLyoqKioqKioqKiogU3luY0Z1c2lvbiAqKioqKioqKioqL1xyXG5pbXBvcnQgeyBRdWVyeUJ1aWxkZXJNb2R1bGUgYXMgU0ZRdWVyeUJ1aWxkZXJNb2R1bGUgfSBmcm9tICdAc3luY2Z1c2lvbi9lajItYW5ndWxhci1xdWVyeWJ1aWxkZXInO1xyXG5pbXBvcnQgeyBEYXRlVGltZVBpY2tlck1vZHVsZSB9IGZyb20gJ0BzeW5jZnVzaW9uL2VqMi1hbmd1bGFyLWNhbGVuZGFycyc7XHJcblxyXG4vKioqKioqKioqKiBLZW5kbyAqKioqKioqKioqL1xyXG5pbXBvcnQgeyBBcmNHYXVnZU1vZHVsZSB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1hbmd1bGFyLWdhdWdlcyc7XHJcbmltcG9ydCB7IEJ1dHRvbnNNb2R1bGUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1idXR0b25zJztcclxuaW1wb3J0IHsgQ2hhcnRzTW9kdWxlIH0gZnJvbSAnQHByb2dyZXNzL2tlbmRvLWFuZ3VsYXItY2hhcnRzJztcclxuaW1wb3J0IHsgQ2FsZW5kYXJNb2R1bGUsIERhdGVJbnB1dHNNb2R1bGUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1kYXRlaW5wdXRzJztcclxuaW1wb3J0IHsgRHJvcERvd25zTW9kdWxlIH0gZnJvbSAnQHByb2dyZXNzL2tlbmRvLWFuZ3VsYXItZHJvcGRvd25zJztcclxuaW1wb3J0IHsgRWRpdG9yTW9kdWxlIH0gZnJvbSAnQHByb2dyZXNzL2tlbmRvLWFuZ3VsYXItZWRpdG9yJztcclxuaW1wb3J0IHsgRXhjZWxNb2R1bGUsIEdyaWRNb2R1bGUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1ncmlkJztcclxuaW1wb3J0IHsgRmlsdGVyTW9kdWxlIH0gZnJvbSAnQHByb2dyZXNzL2tlbmRvLWFuZ3VsYXItZmlsdGVyJztcclxuaW1wb3J0IHsgSW5kaWNhdG9yc01vZHVsZSB9IGZyb20gXCJAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1pbmRpY2F0b3JzXCI7XHJcbmltcG9ydCB7IEludGxNb2R1bGUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1pbnRsJztcclxuaW1wb3J0IHsgQ29sb3JQaWNrZXJNb2R1bGUsIElucHV0c01vZHVsZSwgU3dpdGNoTW9kdWxlLCBUZXh0Qm94TW9kdWxlIH0gZnJvbSAnQHByb2dyZXNzL2tlbmRvLWFuZ3VsYXItaW5wdXRzJztcclxuaW1wb3J0IHsgTGFiZWxNb2R1bGUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1sYWJlbCc7XHJcbmltcG9ydCB7IExheW91dE1vZHVsZSwgUGFuZWxCYXJNb2R1bGUsIFRhYlN0cmlwTW9kdWxlIH0gZnJvbSAnQHByb2dyZXNzL2tlbmRvLWFuZ3VsYXItbGF5b3V0JztcclxuaW1wb3J0IHsgTm90aWZpY2F0aW9uTW9kdWxlIH0gZnJvbSAnQHByb2dyZXNzL2tlbmRvLWFuZ3VsYXItbm90aWZpY2F0aW9uJztcclxuaW1wb3J0IHsgUG9wdXBNb2R1bGUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1wb3B1cCc7XHJcbmltcG9ydCB7IFByb2dyZXNzQmFyTW9kdWxlIH0gZnJvbSBcIkBwcm9ncmVzcy9rZW5kby1hbmd1bGFyLXByb2dyZXNzYmFyXCI7XHJcbmltcG9ydCB7IFRlbGVyaWtSZXBvcnRpbmdNb2R1bGUgfSBmcm9tICdAcHJvZ3Jlc3MvdGVsZXJpay1hbmd1bGFyLXJlcG9ydC12aWV3ZXInO1xyXG5pbXBvcnQgeyBTY2hlZHVsZXJNb2R1bGUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1zY2hlZHVsZXInO1xyXG5pbXBvcnQgeyBUcmVlTGlzdE1vZHVsZSB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1hbmd1bGFyLXRyZWVsaXN0JztcclxuaW1wb3J0IHsgVHJlZVZpZXdNb2R1bGUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci10cmVldmlldyc7XHJcbmltcG9ydCB7IFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci10b29sdGlwJztcclxuaW1wb3J0IHsgUG9wb3Zlck1vZHVsZSB9IGZyb20gXCJAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci10b29sdGlwXCI7XHJcbmltcG9ydCB7IFVwbG9hZE1vZHVsZSwgVXBsb2Fkc01vZHVsZSB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1hbmd1bGFyLXVwbG9hZCc7XHJcbmltcG9ydCB7IE5hdmlnYXRpb25Nb2R1bGUgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1uYXZpZ2F0aW9uJztcclxuaW1wb3J0IHsgTWVudXNNb2R1bGUgfSBmcm9tIFwiQHByb2dyZXNzL2tlbmRvLWFuZ3VsYXItbWVudVwiO1xyXG5pbXBvcnQgeyBHYW50dE1vZHVsZSB9IGZyb20gXCJAcHJvZ3Jlc3Mva2VuZG8tYW5ndWxhci1nYW50dFwiO1xyXG5cclxuLyoqKioqKioqKiogU2VydmljZSAmIERpcmVjdGl2ZSAqKioqKioqKioqL1xyXG5pbXBvcnQgeyBaQ29yZU1vZHVsZSwgWkdyb3VwIH0gZnJvbSAnbW1oZ2xvYmFsLXpjb3JlJztcclxuaW1wb3J0IHsgTW1oZ2xvYmFsTWlkZGxld2FyZU1vZHVsZSB9IGZyb20gJ21taGdsb2JhbC1taWRkbGV3YXJlJztcclxuaW1wb3J0IHsgTW1oZ2xvYmFsWm1vZGFsTW9kdWxlLCBNb2RhbFNlcnZpY2UgfSBmcm9tICdtbWhnbG9iYWwtem1vZGFsJztcclxuaW1wb3J0IHsgTWFpblNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL21haW4uc2VydmljZSc7XHJcbmltcG9ydCB7IFNjcm9sbGJhclRoZW1lRGlyZWN0aXZlIH0gZnJvbSAnLi9kaXJlY3RpdmVzL3Njcm9sbGJhci50aGVtZS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBGaWVsZEVsZW1lbnREaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZmllbGRlbGVtZW50LmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFpHcmlkQmluZGluZ0RpcmVjdGl2ZSB9IGZyb20gJy4vemdyaWQvemdyaWQuYmluZGluZy5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBaR3JpZFBvcHVwQW5jaG9yRGlyZWN0aXZlIH0gZnJvbSAnLi96Z3JpZC96Z3JpZC5wb3B1cC5hbmNob3ItdGFyZ2V0LmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IE9wZW5PbkZvY3VzRGlyZWN0aXZlIH0gZnJvbSAnLi96c2VsZWN0bXVsdGlwbGUvenNlbGVjdG11bHRpcGxlLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEVsZW1lbnRDb250YWluZXJEaXJlY3RpdmUgfSBmcm9tICcuL2RpcmVjdGl2ZXMvZWxlbWVudGNvbnRhaW5lci5kaXJlY3RpdmUnO1xyXG5cclxuLyoqKioqKioqKiogQWRkb24gKioqKioqKioqKi9cclxuaW1wb3J0IHsgRGF0ZVBhcnNlckZpbHRlciB9IGZyb20gJy4vemRhdGV0aW1lL2RhdGVQYXJzZXIucGlwZSc7XHJcbmltcG9ydCB7IEVkaXRvckZpbHRlciB9IGZyb20gJy4vemNvZGVlZGl0b3IvemNvZGVlZGl0b3IucGlwZSc7XHJcbmltcG9ydCB7IERpdnpMYXlvdXQgfSBmcm9tICcuL3pkaXYvemRpdi5waXBlJztcclxuaW1wb3J0IHsgVGFiRmlsdGVyIH0gZnJvbSAnLi96dGFiL3p0YWIucGlwZSc7XHJcbmltcG9ydCB7IFBhbmVsQXJlYUZpbHRlciB9IGZyb20gJy4vcGlwZS9wYW5lbC1hcmVhLnBpcGUnO1xyXG5pbXBvcnQgeyBaSW5wdXRQYXJzZXIgfSBmcm9tICcuL3ppbnB1dC1jb250YWluZXIvemlucHV0LWNvbnRhaW5lci5waXBlJztcclxuaW1wb3J0IHsgSHRtbFNhbml0aXplUGlwZSB9IGZyb20gJy4vcGlwZS9odG1sU2FuaXRpemUucGlwZSc7XHJcbmltcG9ydCB7IERhdGVSYW5nZUZpbHRlckNlbGxDb21wb25lbnQgfSBmcm9tICcuL3pncmlkL2RhdGUtcmFuZ2UtY2VsbC1maWx0ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWlNjaGVkdWxlclRvb2xCYXJDb21wb25lbnQgfSBmcm9tICcuL3pzY2hlZHVsZXIvenNjaGVkdWxlci50b29sYmFyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFpTZWxlY3RUcmFuc2xhdGlvblBhcnNlciB9IGZyb20gJy4venNlbGVjdG11bHRpcGxlL3pzZWxlY3RtdWx0aXBsZS5waXBlJztcclxuaW1wb3J0IHsgWk51bWVyaWNQYXJzZXIgfSBmcm9tICcuL3pudW1lcmljL3pudW1lcmljLmNvbXBvbmVudC5waXBlJztcclxuaW1wb3J0IHsgRGF0ZUtlbmRvRm9ybWF0UGFyc2VyIH0gZnJvbSAnLi96ZGF0ZXRpbWUvZGF0ZUtlbmRvRm9ybWF0UGFyc2VyLnBpcGUnO1xyXG5pbXBvcnQgeyBEYXRlSW9uaWNGb3JtYXRQYXJzZXIgfSBmcm9tICcuL3pkYXRldGltZS9kYXRlSW9uaWNGb3JtYXRQYXJzZXIucGlwZSc7XHJcblxyXG4vKioqKioqKioqKiB6Q29tcG9uZW50ICoqKioqKioqKiovXHJcbmltcG9ydCB7IFVpcGFnZUNvbXBvbmVudCB9IGZyb20gJy4vdWlwYWdlL3VpcGFnZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaWhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4vdWloZWFkZXIvdWloZWFkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWljb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL3VpY29udGFpbmVyL3VpY29udGFpbmVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpY29udGVudENvbXBvbmVudCB9IGZyb20gJy4vdWljb250ZW50L3VpY29udGVudC5jb21wb25lbnQnO1xyXG5cclxuaW1wb3J0IHsgVWltZW51Y29udGVudENvbXBvbmVudCB9IGZyb20gJy4vdWltZW51Y29udGVudC91aW1lbnVjb250ZW50LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpbWVudWJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4vdWltZW51YnV0dG9uL3VpbWVudWJ1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaWFwcG1lbnVjb250ZW50Q29tcG9uZW50IH0gZnJvbSAnLi91aWFwcG1lbnVjb250ZW50L3VpYXBwbWVudWNvbnRlbnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVWlidWxsZXRpbkNvbXBvbmVudCB9IGZyb20gJy4vdWlidWxsZXRpbi91aWJ1bGxldGluLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVpYWN0aW9uYnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi91aWFjdGlvbmJ1dHRvbi91aWFjdGlvbmJ1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVaXZhbGlkYXRpb25tZXNzYWdlQ29tcG9uZW50IH0gZnJvbSAnLi91aXZhbGlkYXRpb25tZXNzYWdlL3VpdmFsaWRhdGlvbm1lc3NhZ2UuY29tcG9uZW50JztcclxuXHJcbmltcG9ydCB7IFpCdWxsZXRDb21wb25lbnQgfSBmcm9tIFwiLi96YnVsbGV0L3pidWxsZXQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFpidXR0b25zQ29tcG9uZW50IH0gZnJvbSBcIi4vemJ1dHRvbnMvemJ1dHRvbnMuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFpjYXJkQ29tcG9uZW50IH0gZnJvbSBcIi4vemNhcmQvemNhcmQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFpjaGFydENvbXBvbmVudCB9IGZyb20gJy4vemNoYXJ0L3pjaGFydC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBaY2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuL3pjaGVja2JveC96Y2hlY2tib3guY29tcG9uZW50JztcclxuaW1wb3J0IHsgWkNoaXBDb21wb25lbnQgfSBmcm9tIFwiLi96Y2hpcC96Y2hpcC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgWmNvZGVlZGl0b3JDb21wb25lbnQgfSBmcm9tICcuL3pjb2RlZWRpdG9yL3pjb2RlZWRpdG9yLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFpkYXRlcmFuZ2VDb21wb25lbnQgfSBmcm9tICcuL3pkYXRlcmFuZ2UvemRhdGVyYW5nZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBaZGF0ZXRpbWVDb21wb25lbnQgfSBmcm9tICcuL3pkYXRldGltZS96ZGF0ZXRpbWUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWmRpdkNvbXBvbmVudCB9IGZyb20gJy4vemRpdi96ZGl2LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFpmb3JtQ29tcG9uZW50IH0gZnJvbSBcIi4vemZvcm0vemZvcm0uY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFpmb3JtY29udHJvbENvbXBvbmVudCB9IGZyb20gXCIuL3pmb3JtY29udHJvbC96Zm9ybWNvbnRyb2wuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFpnYXVnZUNvbXBvbmVudCB9IGZyb20gJy4vemdhdWdlL3pnYXVnZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBaZ3JpZENvbXBvbmVudCB9IGZyb20gXCIuL3pncmlkL3pncmlkLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBaZ3JpZENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gXCIuL3pncmlkL2NvbnRhaW5lci96Z3JpZC1jb250YWluZXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFppbWdDb21wb25lbnQgfSBmcm9tICcuL3ppbWcvemltZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBabGFiZWxDb21wb25lbnQgfSBmcm9tICcuL3psYWJlbC96bGFiZWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWm1mYkNvbXBvbmVudCB9IGZyb20gJy4vem1mYi96bWZiLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFptb2RhbENvbXBvbmVudCB9IGZyb20gXCIuL3ptb2RhbC96bW9kYWwuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IFptb2RhbE1vYmlsZUNvbXBvbmVudCB9IGZyb20gXCIuL3ptb2RhbC96bW9kYWwtbW9iaWxlLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBabnVtZXJpY0NvbXBvbmVudCB9IGZyb20gJy4vem51bWVyaWMvem51bWVyaWMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWnBvc3RzZWxlY3RpbnB1dENvbXBvbmVudCB9IGZyb20gJy4venBvc3RzZWxlY3RpbnB1dC96cG9zdHNlbGVjdGlucHV0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFpyZXBvcnRDb21wb25lbnQgfSBmcm9tICcuL3pyZXBvcnQvenJlcG9ydC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBac2NoZWR1bGVyQ29tcG9uZW50IH0gZnJvbSAnLi96c2NoZWR1bGVyL3pzY2hlZHVsZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWnNlbGVjdG11bHRpcGxlQ29tcG9uZW50IH0gZnJvbSBcIi4venNlbGVjdG11bHRpcGxlL3pzZWxlY3RtdWx0aXBsZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgWnRhYkNvbXBvbmVudCB9IGZyb20gXCIuL3p0YWIvenRhYi5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgWnRleHRDb21wb25lbnQgfSBmcm9tIFwiLi96dGV4dC96dGV4dC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgWnRleHRhcmVhQ29tcG9uZW50IH0gZnJvbSAnLi96dGV4dGFyZWEvenRleHRhcmVhLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFp0ZXh0ZWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi96dGV4dGVkaXRvci96dGV4dGVkaXRvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBadHJlZUNvbXBvbmVudCB9IGZyb20gJy4venRyZWUvenRyZWUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWnRyZWVsaXN0Q29tcG9uZW50IH0gZnJvbSAnLi96dHJlZWxpc3QvenRyZWVsaXN0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFp0cmVuZGNhcmRDb21wb25lbnQgfSBmcm9tICcuL3p0cmVuZGNhcmQvenRyZW5kY2FyZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBadW5rbm93bkNvbXBvbmVudCB9IGZyb20gXCIuL3p1bmtub3duL3p1bmtub3duLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBadWRmQ29tcG9uZW50IH0gZnJvbSAnLi96dWRmL3p1ZGYuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWnVwbG9hZENvbXBvbmVudCB9IGZyb20gJy4venVwbG9hZC96dXBsb2FkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFp3b3JrZmxvd2J1dHRvbnNDb21wb25lbnQgfSBmcm9tIFwiLi96d29ya2Zsb3didXR0b25zL3p3b3JrZmxvd2J1dHRvbnMuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEtjYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9rY2FyZC9rY2FyZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBaSW5wdXRDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL3ppbnB1dC1jb250YWluZXIvemlucHV0LWNvbnRhaW5lci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBacHJvZ3Jlc3NiYXJDb21wb25lbnQgfSBmcm9tICcuL3pwcm9ncmVzc2Jhci96cHJvZ3Jlc3NiYXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSW5wdXRFcnJvck1lc3NhZ2VDb21wb25lbnQgfSBmcm9tICcuL2lucHV0LWVycm9yLW1lc3NhZ2UvaW5wdXQtZXJyb3ItbWVzc2FnZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBJbnB1dEZpZWxkQWRkT25zQ29tcG9uZW50IH0gZnJvbSAnLi9lbWJlZC1jb21wb25lbnRzL2lucHV0LWZpZWxkLWFkZG9ucy9pbnB1dC1maWVsZC1hZGRvbnMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUHJvY2Vzc2luZ1JlY29yZExvYWRlckNvbXBvbmVudCB9IGZyb20gJy4vZW1iZWQtY29tcG9uZW50cy9wcm9jZXNzaW5nLXJlY29yZC1sb2FkZXIvcHJvY2Vzc2luZy1yZWNvcmQtbG9hZGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERhdGVJb25pY01pbk1heFBhcnNlciB9IGZyb20gJy4vemRhdGV0aW1lL2RhdGVJb25pY01pbk1heERhdGUucGlwZSc7XHJcbmltcG9ydCB7IFNmcXVlcnlidWlsZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9zZnF1ZXJ5YnVpbGRlci9zZnF1ZXJ5YnVpbGRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBabG9vcENvbXBvbmVudCB9IGZyb20gJy4vemxvb3Avemxvb3AuY29tcG9uZW50JztcclxuaW1wb3J0IHsgS3NwbGl0dGVyQ29tcG9uZW50IH0gZnJvbSAnLi9rc3BsaXR0ZXIva3NwbGl0dGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFZpcnR1YWxTY3JvbGxDb21wb25lbnQgfSBmcm9tICcuL3ZpcnR1YWwtc2Nyb2xsL3ZpcnR1YWwtc2Nyb2xsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNwaW5uZXJDb21wb25lbnQgfSBmcm9tICcuL2VtYmVkLWNvbXBvbmVudHMvc3Bpbm5lci9zcGlubmVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFBhZ2VMb2FkZXJDb21wb25lbnQgfSBmcm9tICcuL2VtYmVkLWNvbXBvbmVudHMvcGFnZS1sb2FkZXIvcGFnZS1sb2FkZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWmNvbG9ycGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi96Y29sb3JwaWNrZXIvemNvbG9ycGlja2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEttZW51Q29tcG9uZW50IH0gZnJvbSAnLi9rbWVudS9rbWVudS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBLU2Nyb2xsVmlld0NvbXBvbmVudCB9IGZyb20gJy4va3Njcm9sbHZpZXcva3Njcm9sbHZpZXcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2Nyb2xsVmlld01vZHVsZSB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1hbmd1bGFyLXNjcm9sbHZpZXcnO1xyXG5pbXBvcnQgeyBDb250ZXh0TWVudUNvbXBvbmVudCB9IGZyb20gJy4vZW1iZWQtY29tcG9uZW50cy9jb250ZXh0LW1lbnUvY29udGV4dC1tZW51LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZpY29uQ29tcG9uZW50IH0gZnJvbSAnLi9maWNvbi9maWNvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTZmRhdGV0aW1lcGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi9zZmRhdGV0aW1lcGlja2VyL3NmZGF0ZXRpbWVwaWNrZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgWmdhbnR0Y2hhcnRDb21wb25lbnQgfSBmcm9tICcuL3pnYW50dGNoYXJ0L3pnYW50dGNoYXJ0LmNvbXBvbmVudCc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgU2Nyb2xsYmFyVGhlbWVEaXJlY3RpdmUsXHJcbiAgICBGaWVsZEVsZW1lbnREaXJlY3RpdmUsXHJcbiAgICBaR3JpZEJpbmRpbmdEaXJlY3RpdmUsXHJcbiAgICBaR3JpZFBvcHVwQW5jaG9yRGlyZWN0aXZlLFxyXG4gICAgT3Blbk9uRm9jdXNEaXJlY3RpdmUsXHJcbiAgICBFbGVtZW50Q29udGFpbmVyRGlyZWN0aXZlLFxyXG4gICAgRGF0ZVBhcnNlckZpbHRlciwgLy8gemdyaWQgYWRkb25cclxuICAgIEVkaXRvckZpbHRlciwgLy8gemNvZGUgYWRkb25cclxuICAgIERpdnpMYXlvdXQsIC8vIHpkaXYgYWRkb25cclxuICAgIFRhYkZpbHRlciwgLy8genRhYiBhZGRvblxyXG4gICAgUGFuZWxBcmVhRmlsdGVyLCAvLyBwYW5lbCBhcmVhIGFkZG9uXHJcbiAgICBEYXRlUmFuZ2VGaWx0ZXJDZWxsQ29tcG9uZW50LCAvLyB6Z3JpZCBhZGRvblxyXG4gICAgWlNjaGVkdWxlclRvb2xCYXJDb21wb25lbnQsIC8vIHpzY2hlZHVsZXIgYWRkb25cclxuICAgIFVpaGVhZGVyQ29tcG9uZW50LFxyXG4gICAgVWljb250YWluZXJDb21wb25lbnQsXHJcbiAgICBVaWNvbnRlbnRDb21wb25lbnQsXHJcbiAgICBVaXBhZ2VDb21wb25lbnQsXHJcbiAgICBVaWJ1bGxldGluQ29tcG9uZW50LFxyXG4gICAgVWlhY3Rpb25idXR0b25Db21wb25lbnQsXHJcbiAgICBVaW1lbnVjb250ZW50Q29tcG9uZW50LFxyXG4gICAgVWltZW51YnV0dG9uQ29tcG9uZW50LFxyXG4gICAgVWlhcHBtZW51Y29udGVudENvbXBvbmVudCxcclxuICAgIFVpdmFsaWRhdGlvbm1lc3NhZ2VDb21wb25lbnQsXHJcbiAgICBaQnVsbGV0Q29tcG9uZW50LFxyXG4gICAgWmJ1dHRvbnNDb21wb25lbnQsXHJcbiAgICBaY2FyZENvbXBvbmVudCxcclxuICAgIFpjaGFydENvbXBvbmVudCxcclxuICAgIFpjaGVja2JveENvbXBvbmVudCxcclxuICAgIFpDaGlwQ29tcG9uZW50LFxyXG4gICAgWmNvZGVlZGl0b3JDb21wb25lbnQsXHJcbiAgICBaZGF0ZXJhbmdlQ29tcG9uZW50LFxyXG4gICAgWmRhdGV0aW1lQ29tcG9uZW50LFxyXG4gICAgWmRpdkNvbXBvbmVudCxcclxuICAgIFpmb3JtQ29tcG9uZW50LFxyXG4gICAgWmZvcm1jb250cm9sQ29tcG9uZW50LFxyXG4gICAgWmdhdWdlQ29tcG9uZW50LFxyXG4gICAgWmdyaWRDb21wb25lbnQsXHJcbiAgICBaaW1nQ29tcG9uZW50LFxyXG4gICAgWmxhYmVsQ29tcG9uZW50LFxyXG4gICAgWm1mYkNvbXBvbmVudCxcclxuICAgIFptb2RhbENvbXBvbmVudCxcclxuICAgIFptb2RhbE1vYmlsZUNvbXBvbmVudCxcclxuICAgIFpudW1lcmljQ29tcG9uZW50LFxyXG4gICAgWnBvc3RzZWxlY3RpbnB1dENvbXBvbmVudCxcclxuICAgIFpyZXBvcnRDb21wb25lbnQsXHJcbiAgICBac2NoZWR1bGVyQ29tcG9uZW50LFxyXG4gICAgWnNlbGVjdG11bHRpcGxlQ29tcG9uZW50LFxyXG4gICAgWnRhYkNvbXBvbmVudCxcclxuICAgIFp0ZXh0Q29tcG9uZW50LFxyXG4gICAgWnRleHRhcmVhQ29tcG9uZW50LFxyXG4gICAgWnRleHRlZGl0b3JDb21wb25lbnQsXHJcbiAgICBadHJlZUNvbXBvbmVudCxcclxuICAgIFp0cmVlbGlzdENvbXBvbmVudCxcclxuICAgIFp0cmVuZGNhcmRDb21wb25lbnQsXHJcbiAgICBadW5rbm93bkNvbXBvbmVudCxcclxuICAgIFp1ZGZDb21wb25lbnQsXHJcbiAgICBadXBsb2FkQ29tcG9uZW50LFxyXG4gICAgWndvcmtmbG93YnV0dG9uc0NvbXBvbmVudCxcclxuICAgIEtjYXJkQ29tcG9uZW50LFxyXG4gICAgWklucHV0Q29udGFpbmVyQ29tcG9uZW50LFxyXG4gICAgWnByb2dyZXNzYmFyQ29tcG9uZW50LFxyXG4gICAgWklucHV0UGFyc2VyLFxyXG4gICAgWlNlbGVjdFRyYW5zbGF0aW9uUGFyc2VyLFxyXG4gICAgSHRtbFNhbml0aXplUGlwZSxcclxuICAgIElucHV0RXJyb3JNZXNzYWdlQ29tcG9uZW50LFxyXG4gICAgSW5wdXRGaWVsZEFkZE9uc0NvbXBvbmVudCxcclxuICAgIFNwaW5uZXJDb21wb25lbnQsXHJcbiAgICBQYWdlTG9hZGVyQ29tcG9uZW50LFxyXG4gICAgUHJvY2Vzc2luZ1JlY29yZExvYWRlckNvbXBvbmVudCxcclxuICAgIFpOdW1lcmljUGFyc2VyLFxyXG4gICAgWmdyaWRDb250YWluZXJDb21wb25lbnQsXHJcbiAgICBEYXRlS2VuZG9Gb3JtYXRQYXJzZXIsXHJcbiAgICBEYXRlSW9uaWNGb3JtYXRQYXJzZXIsXHJcbiAgICBEYXRlSW9uaWNNaW5NYXhQYXJzZXIsXHJcbiAgICBTZnF1ZXJ5YnVpbGRlckNvbXBvbmVudCxcclxuICAgIFpsb29wQ29tcG9uZW50LFxyXG4gICAgS3NwbGl0dGVyQ29tcG9uZW50LFxyXG4gICAgVmlydHVhbFNjcm9sbENvbXBvbmVudCxcclxuICAgIFpjb2xvcnBpY2tlckNvbXBvbmVudCxcclxuICAgIEttZW51Q29tcG9uZW50LFxyXG4gICAgS1Njcm9sbFZpZXdDb21wb25lbnQsXHJcbiAgICBDb250ZXh0TWVudUNvbXBvbmVudCxcclxuICAgIEZpY29uQ29tcG9uZW50LFxyXG4gICAgU2ZkYXRldGltZXBpY2tlckNvbXBvbmVudCxcclxuICAgIFpnYW50dGNoYXJ0Q29tcG9uZW50XHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBJb25pY01vZHVsZSxcclxuICAgIElvbmljU2VsZWN0YWJsZU1vZHVsZSxcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIFJvdXRlck1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIEFjZUVkaXRvck1vZHVsZSxcclxuICAgIEZvbnRBd2Vzb21lTW9kdWxlLFxyXG4gICAgUXVlcnlCdWlsZGVyTW9kdWxlLFxyXG4gICAgQXJjR2F1Z2VNb2R1bGUsXHJcbiAgICBCdXR0b25zTW9kdWxlLFxyXG4gICAgQ2hhcnRzTW9kdWxlLFxyXG4gICAgQ2FsZW5kYXJNb2R1bGUsXHJcbiAgICBEYXRlSW5wdXRzTW9kdWxlLFxyXG4gICAgRHJvcERvd25zTW9kdWxlLFxyXG4gICAgRWRpdG9yTW9kdWxlLFxyXG4gICAgRXhjZWxNb2R1bGUsXHJcbiAgICBHcmlkTW9kdWxlLFxyXG4gICAgRmlsdGVyTW9kdWxlLFxyXG4gICAgSW5kaWNhdG9yc01vZHVsZSxcclxuICAgIEludGxNb2R1bGUsXHJcbiAgICBJbnB1dHNNb2R1bGUsXHJcbiAgICBTd2l0Y2hNb2R1bGUsXHJcbiAgICBUZXh0Qm94TW9kdWxlLFxyXG4gICAgTGFiZWxNb2R1bGUsXHJcbiAgICBMYXlvdXRNb2R1bGUsXHJcbiAgICBQYW5lbEJhck1vZHVsZSxcclxuICAgIFRhYlN0cmlwTW9kdWxlLFxyXG4gICAgTm90aWZpY2F0aW9uTW9kdWxlLFxyXG4gICAgUG9wdXBNb2R1bGUsXHJcbiAgICBQcm9ncmVzc0Jhck1vZHVsZSxcclxuICAgIFRlbGVyaWtSZXBvcnRpbmdNb2R1bGUsXHJcbiAgICBTY2hlZHVsZXJNb2R1bGUsXHJcbiAgICBUcmVlTGlzdE1vZHVsZSxcclxuICAgIFRyZWVWaWV3TW9kdWxlLFxyXG4gICAgVG9vbHRpcE1vZHVsZSxcclxuICAgIFBvcG92ZXJNb2R1bGUsXHJcbiAgICBVcGxvYWRNb2R1bGUsXHJcbiAgICBVcGxvYWRzTW9kdWxlLFxyXG4gICAgWkNvcmVNb2R1bGUsXHJcbiAgICBNbWhnbG9iYWxabW9kYWxNb2R1bGUsXHJcbiAgICBOYXZpZ2F0aW9uTW9kdWxlLFxyXG4gICAgRmxleExheW91dE1vZHVsZSxcclxuICAgIFNGUXVlcnlCdWlsZGVyTW9kdWxlLFxyXG4gICAgU2Nyb2xsaW5nTW9kdWxlLFxyXG4gICAgUXVlcnlCdWlsZGVyTW9kdWxlLFxyXG4gICAgQ29sb3JQaWNrZXJNb2R1bGUsXHJcbiAgICBTY3JvbGxWaWV3TW9kdWxlLFxyXG4gICAgTWVudXNNb2R1bGUsXHJcbiAgICBEYXRlVGltZVBpY2tlck1vZHVsZSxcclxuICAgIEdhbnR0TW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBTY3JvbGxiYXJUaGVtZURpcmVjdGl2ZSxcclxuICAgIEZpZWxkRWxlbWVudERpcmVjdGl2ZSxcclxuICAgIFpHcmlkQmluZGluZ0RpcmVjdGl2ZSxcclxuICAgIFpHcmlkUG9wdXBBbmNob3JEaXJlY3RpdmUsXHJcbiAgICBPcGVuT25Gb2N1c0RpcmVjdGl2ZSxcclxuICAgIEVsZW1lbnRDb250YWluZXJEaXJlY3RpdmUsXHJcbiAgICBEYXRlUGFyc2VyRmlsdGVyLCAvLyB6ZGF0ZXRpbWUgYWRkb25cclxuICAgIEVkaXRvckZpbHRlciwgLy8gemNvZGUgYWRkb25cclxuICAgIERpdnpMYXlvdXQsIC8vIHpkaXYgYWRkb25cclxuICAgIFRhYkZpbHRlciwgLy8genRhYiBhZGRvblxyXG4gICAgUGFuZWxBcmVhRmlsdGVyLCAvLyBwYW5lbCBhcmVhIGFkZG9uXHJcbiAgICBEYXRlUmFuZ2VGaWx0ZXJDZWxsQ29tcG9uZW50LCAvLyB6Z3JpZCBhZGRvblxyXG4gICAgWlNjaGVkdWxlclRvb2xCYXJDb21wb25lbnQsIC8vIHpzY2hlZHVsZXIgYWRkb25cclxuICAgIFVpaGVhZGVyQ29tcG9uZW50LFxyXG4gICAgVWljb250YWluZXJDb21wb25lbnQsXHJcbiAgICBVaWNvbnRlbnRDb21wb25lbnQsXHJcbiAgICBVaXBhZ2VDb21wb25lbnQsXHJcbiAgICBVaW1lbnVjb250ZW50Q29tcG9uZW50LFxyXG4gICAgVWltZW51YnV0dG9uQ29tcG9uZW50LFxyXG4gICAgVWlhcHBtZW51Y29udGVudENvbXBvbmVudCxcclxuICAgIFVpYnVsbGV0aW5Db21wb25lbnQsXHJcbiAgICBVaWFjdGlvbmJ1dHRvbkNvbXBvbmVudCxcclxuICAgIFVpdmFsaWRhdGlvbm1lc3NhZ2VDb21wb25lbnQsXHJcbiAgICBaQnVsbGV0Q29tcG9uZW50LFxyXG4gICAgWmJ1dHRvbnNDb21wb25lbnQsXHJcbiAgICBaY2FyZENvbXBvbmVudCxcclxuICAgIFpjaGFydENvbXBvbmVudCxcclxuICAgIFpjaGVja2JveENvbXBvbmVudCxcclxuICAgIFpDaGlwQ29tcG9uZW50LFxyXG4gICAgWmNvZGVlZGl0b3JDb21wb25lbnQsXHJcbiAgICBaZGF0ZXJhbmdlQ29tcG9uZW50LFxyXG4gICAgWmRhdGV0aW1lQ29tcG9uZW50LFxyXG4gICAgWmRpdkNvbXBvbmVudCxcclxuICAgIFpmb3JtQ29tcG9uZW50LFxyXG4gICAgWmZvcm1jb250cm9sQ29tcG9uZW50LFxyXG4gICAgWmdhdWdlQ29tcG9uZW50LFxyXG4gICAgWmdyaWRDb21wb25lbnQsXHJcbiAgICBaaW1nQ29tcG9uZW50LFxyXG4gICAgWmxhYmVsQ29tcG9uZW50LFxyXG4gICAgWm1mYkNvbXBvbmVudCxcclxuICAgIFptb2RhbENvbXBvbmVudCxcclxuICAgIFptb2RhbE1vYmlsZUNvbXBvbmVudCxcclxuICAgIFpudW1lcmljQ29tcG9uZW50LFxyXG4gICAgWnBvc3RzZWxlY3RpbnB1dENvbXBvbmVudCxcclxuICAgIFpyZXBvcnRDb21wb25lbnQsXHJcbiAgICBac2NoZWR1bGVyQ29tcG9uZW50LFxyXG4gICAgWnNlbGVjdG11bHRpcGxlQ29tcG9uZW50LFxyXG4gICAgWnRhYkNvbXBvbmVudCxcclxuICAgIFp0ZXh0Q29tcG9uZW50LFxyXG4gICAgWnRleHRhcmVhQ29tcG9uZW50LFxyXG4gICAgWnRleHRlZGl0b3JDb21wb25lbnQsXHJcbiAgICBadHJlZUNvbXBvbmVudCxcclxuICAgIFp0cmVlbGlzdENvbXBvbmVudCxcclxuICAgIFp0cmVuZGNhcmRDb21wb25lbnQsXHJcbiAgICBadW5rbm93bkNvbXBvbmVudCxcclxuICAgIFp1ZGZDb21wb25lbnQsXHJcbiAgICBadXBsb2FkQ29tcG9uZW50LFxyXG4gICAgWndvcmtmbG93YnV0dG9uc0NvbXBvbmVudCxcclxuICAgIFpJbnB1dENvbnRhaW5lckNvbXBvbmVudCxcclxuICAgIFpwcm9ncmVzc2JhckNvbXBvbmVudCxcclxuICAgIFpJbnB1dFBhcnNlcixcclxuICAgIFpTZWxlY3RUcmFuc2xhdGlvblBhcnNlcixcclxuICAgIEh0bWxTYW5pdGl6ZVBpcGUsXHJcbiAgICBJbnB1dEVycm9yTWVzc2FnZUNvbXBvbmVudCxcclxuICAgIElucHV0RmllbGRBZGRPbnNDb21wb25lbnQsXHJcbiAgICBTcGlubmVyQ29tcG9uZW50LFxyXG4gICAgUGFnZUxvYWRlckNvbXBvbmVudCxcclxuICAgIFByb2Nlc3NpbmdSZWNvcmRMb2FkZXJDb21wb25lbnQsXHJcbiAgICBaTnVtZXJpY1BhcnNlcixcclxuICAgIFpncmlkQ29udGFpbmVyQ29tcG9uZW50LFxyXG4gICAgRGF0ZUtlbmRvRm9ybWF0UGFyc2VyLFxyXG4gICAgRGF0ZUlvbmljRm9ybWF0UGFyc2VyLFxyXG4gICAgRGF0ZUlvbmljTWluTWF4UGFyc2VyLFxyXG4gICAgU2ZxdWVyeWJ1aWxkZXJDb21wb25lbnQsXHJcbiAgICBabG9vcENvbXBvbmVudCxcclxuICAgIEtzcGxpdHRlckNvbXBvbmVudCxcclxuICAgIFZpcnR1YWxTY3JvbGxDb21wb25lbnQsXHJcbiAgICBaY29sb3JwaWNrZXJDb21wb25lbnQsXHJcbiAgICBLbWVudUNvbXBvbmVudCxcclxuICAgIEtTY3JvbGxWaWV3Q29tcG9uZW50LFxyXG4gICAgRmljb25Db21wb25lbnQsXHJcbiAgICBTZmRhdGV0aW1lcGlja2VyQ29tcG9uZW50LFxyXG4gICAgWmdhbnR0Y2hhcnRDb21wb25lbnRcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgTW9kYWxTZXJ2aWNlXHJcbiAgXSxcclxuICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV1cclxufSlcclxuXHJcbmV4cG9ydCBjbGFzcyBNbWhnbG9iYWxEeW5hbWljZm9ybU1vZHVsZSB7IH1cclxuIl19
|
|
@@ -132,7 +132,7 @@ export class ZformComponent {
|
|
|
132
132
|
this.addToFieldIndex(field);
|
|
133
133
|
this.fieldService.patchFieldProperty(field);
|
|
134
134
|
if (typeof field.Value === "string" && field.Value.indexOf(".") !== -1) {
|
|
135
|
-
if (['zgrid', 'ztree', 'textareajson'].indexOf(field.Type) === -1) {
|
|
135
|
+
if (['zgrid', 'ztree', 'textareajson', 'zganttchart'].indexOf(field.Type) === -1) {
|
|
136
136
|
console.warn("FormControl - invalid field value", field.Value);
|
|
137
137
|
}
|
|
138
138
|
}
|
|
@@ -184,4 +184,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.3", ngImpor
|
|
|
184
184
|
}], fieldName: [{
|
|
185
185
|
type: Input
|
|
186
186
|
}] } });
|
|
187
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW1oZ2xvYmFsLWR5bmFtaWNmb3JtL3NyYy9saWIvemZvcm0vemZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW1oZ2xvYmFsLWR5bmFtaWNmb3JtL3NyYy9saWIvemZvcm0vemZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFlLE1BQU0sZ0JBQWdCLENBQUM7QUFFckUsNkJBQTZCO0FBRTdCLDhCQUE4QjtBQUM5QixPQUFPLEVBQUUsRUFBRSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUl2RCxPQUFPLEVBRUwsZ0JBQWdCLEVBQ2pCLE1BQU0saUJBQWlCLENBQUM7Ozs7Ozs7OztBQVN6QixNQUFNLE9BQU8sY0FBYztJQVd6QixZQUNVLFdBQXdCLEVBQ3hCLFlBQTBCLEVBQzFCLFlBQW9DLEVBQ3BDLFlBQTBCLEVBQzFCLFlBQTBCO0lBQ2xDLHNDQUFzQztJQUN0Qyx5QkFBeUI7O1FBTmpCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLGlCQUFZLEdBQVosWUFBWSxDQUF3QjtRQUNwQyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQVRwQyxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBRWpCLGVBQVUsR0FBRyxFQUFFLENBQUM7SUFVWixDQUFDO0lBRUwsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ25CLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztTQUN4QjthQUNJO1lBQ0gsaURBQWlEO1lBQ2pELDZEQUE2RDtZQUM3RCxxREFBcUQ7WUFDckQsbUJBQW1CO1lBQ25CLHdCQUF3QjtZQUN4QiwrQkFBK0I7WUFDL0Isb0RBQW9EO1lBQ3BELGlFQUFpRTtZQUNqRSxTQUFTO1lBQ1QsaUJBQWlCO1lBQ2pCLCtCQUErQjtZQUMvQixxRUFBcUU7WUFDckUsOENBQThDO1lBQzlDLFNBQVM7WUFDVCxTQUFTO1lBQ1QsZ0JBQWdCO1lBQ2hCLHVCQUF1QjtZQUN2Qix1Q0FBdUM7WUFDdkMsMkNBQTJDO1lBQzNDLE9BQU87WUFDUCxHQUFHO1lBQ0gsUUFBUTtZQUNSLElBQUksQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FDbEYsU0FBUyxDQUFDLGFBQWEsQ0FBQyxFQUFFO2dCQUN4QixPQUFPLElBQUksQ0FBQyw4QkFBOEIsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUM1RCxDQUFDLENBQUMsRUFDRixTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUNiLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO2dCQUN2QixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRTtvQkFDMUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztpQkFDckM7Z0JBQ0QsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDaEIsQ0FBQyxDQUFDLEVBQ0YsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2lCQUNWLFNBQVMsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2QsSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDakMsSUFBSSxDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ3ZDLENBQUMsQ0FBQyxDQUFDO1lBQ0wsR0FBRztTQUNKO0lBQ0gsQ0FBQztJQUVPLDhCQUE4QixDQUFDLFlBQXNCO1FBQzNELElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxTQUFTLEVBQUU7WUFDaEMsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLENBQUM7U0FDOUQ7YUFBTTtZQUNMLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLFlBQVksQ0FBQztZQUNqQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDcEIsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDZjtJQUNILENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLEVBQUcsNEJBQTRCO1lBQ3BELElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDakM7SUFDSCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxTQUFTLEVBQUU7WUFDaEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQ25CO2FBQU07WUFDTCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO1NBQzFCO0lBQ0gsQ0FBQztJQUVPLFlBQVk7UUFDbEIsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksQ0FDWCxHQUFHLENBQUMsR0FBRyxFQUFFO1lBQ1AsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDaEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztZQUM1QixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDO1FBQ2xDLENBQUMsQ0FBQyxFQUNGLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsRUFBRTtnQkFDaEMsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7YUFDZjtZQUNELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO1FBQ3ZDLENBQUMsQ0FBQyxDQUNILENBQUMsU0FBUyxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVELGtCQUFrQixDQUFDLEtBQWE7UUFDOUIsT0FBTyxnQkFBZ0IsQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFTyxXQUFXLENBQUMsYUFBNEI7UUFDOUMsTUFBTSxZQUFZLEdBQW1DLEVBQUUsQ0FBQztRQUN4RCxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsRUFBRSxZQUFZLENBQUMsQ0FBQztRQUNsRCxNQUFNLFlBQVksR0FBRyxJQUFJLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNqRCxPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDO0lBRU8sZUFBZSxDQUFDLEtBQWE7UUFDbkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUU7WUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLHdCQUF3QixFQUFFLEtBQUssQ0FBQyxDQUFDO1NBQ2hEO1FBQ0QsSUFBSSxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3ZELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNsQzthQUFNO1lBQ0wsT0FBTyxDQUFDLEtBQUssQ0FBQywwQkFBMEIsR0FBRyxLQUFLLENBQUMsSUFBSSxHQUFHLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztTQUN2RTtJQUNILENBQUM7SUFFTyxlQUFlLENBQ3JCLFVBQXlCLEVBQ3pCLFlBQTRDLEVBQzVDLHFCQUE4QixJQUFJO1FBRWxDLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDekIsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUU7Z0JBQ2xCLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzVCLElBQUksQ0FBQyxZQUFZLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBRTVDLElBQUksT0FBTyxLQUFLLENBQUMsS0FBSyxLQUFLLFFBQVEsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtvQkFDdEUsSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsY0FBYyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTt3QkFDakUsT0FBTyxDQUFDLElBQUksQ0FBQyxtQ0FBbUMsRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7cUJBQ2hFO2lCQUNGO3FCQUNJO29CQUNILElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxPQUFPLEVBQUU7d0JBQ3hELE1BQU0sa0JBQWtCLEdBQUcsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO3dCQUM5RSxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsWUFBWSxFQUFFLGtCQUFrQixDQUFDLENBQUM7cUJBQ3JFO3lCQUNJO3dCQUNILE1BQU0sYUFBYSxHQUFHLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQzt3QkFDNUQsTUFBTSxTQUFTLEdBQUcsZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO3dCQUNyRSxNQUFNLFVBQVUsR0FBRyxnQkFBZ0IsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7d0JBRXZFLHVFQUF1RTt3QkFDdkUsSUFBSSxTQUFTLElBQUksa0JBQWtCLEVBQUU7NEJBQ25DLElBQUksQ0FBQyxZQUFZLENBQUMseUJBQXlCLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUM7eUJBQ3JFO3dCQUVELElBQUksYUFBYSxLQUFLLElBQUksRUFBRTs0QkFDMUIsTUFBTSxVQUFVLEdBQWtCLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7NEJBQzNHLFlBQVksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEdBQUcsSUFBSSxXQUFXLENBQ3pDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxVQUFVLENBQzNDLENBQUM7NEJBRUYsSUFBSSxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFO2dDQUMzQyxNQUFNLFlBQVksR0FBa0IsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRSxTQUFTLEVBQUUsVUFBVSxDQUFDLENBQUM7Z0NBQ25HLFlBQVksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsSUFBSSxXQUFXLENBQzNDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsRUFDaEMsWUFBWSxDQUNiLENBQUM7NkJBQ0g7eUJBQ0Y7cUJBQ0Y7aUJBQ0Y7YUFDRjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGdCQUFnQixDQUFDLEtBQWE7UUFDcEMsTUFBTSxhQUFhLEdBQUcsZ0JBQWdCLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDcEYsSUFBSSxPQUFPLGFBQWEsS0FBSyxVQUFVLEVBQUU7WUFDdkMsT0FBTyxhQUFhLEVBQUUsQ0FBQztTQUN4QjtRQUNELE9BQU8sYUFBYSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxTQUFTLENBQUMsS0FBYSxFQUFFLElBQUk7UUFDM0IsMkNBQTJDO1FBQzNDLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQzs7MkdBaE1VLGNBQWM7K0ZBQWQsY0FBYyxxR0N4QjNCLGl4QkFlQTsyRkRTYSxjQUFjO2tCQU4xQixTQUFTOytCQUNFLFdBQVc7d05BTVosS0FBSztzQkFBYixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKioqKioqKioqKiBBbmd1bGFyICoqKioqKioqKiovXHJcbmltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgT25EZXN0cm95IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRm9ybUdyb3VwLCBGb3JtQ29udHJvbCwgVmFsaWRhdG9yRm4gfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuXHJcbi8qKioqKioqKioqIElvbmljICoqKioqKioqKiovXHJcblxyXG4vKioqKioqKioqKiBQbHVnaW4gKioqKioqKioqKi9cclxuaW1wb3J0IHsgb2YsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBzd2l0Y2hNYXAsIGRlbGF5LCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG4vKioqKioqKioqKiBDb21wb25lbnQgJiBTZXJ2aWNlICoqKioqKioqKiovXHJcbmltcG9ydCB7IFpDb21wb25lbnREZWJ1Z1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy96Y29tcG9uZW50LmRlYnVnLnNlcnZpY2UnO1xyXG5pbXBvcnQge1xyXG4gIEF1dGhTZXJ2aWNlLCBGaWVsZFNlcnZpY2UsIFpDb3JlU2VydmljZSwgQ2FjaGVTZXJ2aWNlLFxyXG4gIFpDb21wb25lbnRIZWxwZXIsIFpHcm91cCwgWkZpZWxkXHJcbn0gZnJvbSAnbW1oZ2xvYmFsLXpjb3JlJztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJhcHAtemZvcm1cIixcclxuICB0ZW1wbGF0ZVVybDogXCIuL3pmb3JtLmNvbXBvbmVudC5odG1sXCIsXHJcbiAgc3R5bGVVcmxzOiBbXCIuL3pmb3JtLmNvbXBvbmVudC5zY3NzXCJdXHJcbn0pXHJcblxyXG5leHBvcnQgY2xhc3MgWmZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgQElucHV0KCkgZ3JvdXA6IFpHcm91cDtcclxuICBASW5wdXQoKSBmaWVsZE5hbWU6IHN0cmluZztcclxuICAvLyBAVmlld0NoaWxkKCdmcm0nLCB7c3RhdGljOiB0cnVlfSkgZm9ybTogTmdGb3JtO1xyXG5cclxuICBmb3JtOiBGb3JtR3JvdXA7XHJcbiAgZmllbGRzOiBBcnJheTxaRmllbGQ+O1xyXG4gIGlzTG9hZGluZyA9IHRydWU7XHJcbiAgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcbiAgZmllbGRJbmRleCA9IFtdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgYXV0aFNlcnZpY2U6IEF1dGhTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBmaWVsZFNlcnZpY2U6IEZpZWxkU2VydmljZSxcclxuICAgIHByaXZhdGUgZGVidWdTZXJ2aWNlOiBaQ29tcG9uZW50RGVidWdTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB6Y29yZVNlcnZpY2U6IFpDb3JlU2VydmljZSxcclxuICAgIHByaXZhdGUgY2FjaGVTZXJ2aWNlOiBDYWNoZVNlcnZpY2VcclxuICAgIC8vIHByaXZhdGUgbW9kYWxTZXJ2aWNlOiBNb2RhbFNlcnZpY2UsXHJcbiAgICAvLyBwcml2YXRlIHJvdXRlcjogUm91dGVyXHJcbiAgKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBpZiAoIXRoaXMuZmllbGROYW1lKSB7XHJcbiAgICAgIHRoaXMub25Jbml0Tm9ybWFsKCk7XHJcbiAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgLy9jb25zdCBjYWNoZUtleSA9IGBGb3JtRmllbGRfJHt0aGlzLmZpZWxkTmFtZX1gO1xyXG4gICAgICAvLyBpZiBnZXQgZnJvbSBjYWNoZSwgZmllbGQgd29udCBsb2FkLiB0ZW1wb3JhcnkgY29tbWVudCBvdXQuXHJcbiAgICAgIC8vY29uc3QgY2FjaGVkRGF0YSA9IHRoaXMuY2FjaGVTZXJ2aWNlLmdldChjYWNoZUtleSk7XHJcbiAgICAgIC8vaWYgKGNhY2hlZERhdGEpIHtcclxuICAgICAgLy8gIG9mKGNhY2hlZERhdGEpLnBpcGUoXHJcbiAgICAgIC8vICAgIHN3aXRjaE1hcChjYWNoZWREYXRhID0+IHtcclxuICAgICAgLy8gICAgICBjb25zdCBjYWNoZWRaRmllbGQgPSBjYWNoZWREYXRhIGFzIFpGaWVsZFtdO1xyXG4gICAgICAvLyAgICAgIHJldHVybiB0aGlzLm9uU3RhcnREZWJ1Z2dlck9yTG9hZEZyb21DYWNoZShjYWNoZWRaRmllbGQpO1xyXG4gICAgICAvLyAgICB9KSxcclxuICAgICAgLy8gICAgdGFwKCgpID0+IHtcclxuICAgICAgLy8gICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAvLyAgICAgIGlmICh0aGlzLmdyb3VwLl9pc0RlYnVnZ2luZyAmJiB0aGlzLmdyb3VwLl9kZWJ1Zy5pc0xvYWRpbmcpIHtcclxuICAgICAgLy8gICAgICAgIHRoaXMuZ3JvdXAuX2RlYnVnLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAvLyAgICAgIH1cclxuICAgICAgLy8gICAgfSksXHJcbiAgICAgIC8vICAgIGRlbGF5KDUwMClcclxuICAgICAgLy8gICkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgLy8gICAgdGhpcy5kZWJ1Z1NlcnZpY2UuTG9hZEdyaWREYXRhKCk7XHJcbiAgICAgIC8vICAgIHRoaXMuZGVidWdTZXJ2aWNlLmxvYWRXb3JrZmxvd0RhdGEoKTtcclxuICAgICAgLy8gIH0pO1xyXG4gICAgICAvL31cclxuICAgICAgLy9lbHNlIHtcclxuICAgICAgdGhpcy5maWVsZFNlcnZpY2UuZ2V0Rm9ybUZpZWxkQ29kZSh0aGlzLmZpZWxkTmFtZSwgJ0Zvcm1GaWVsZCcsIHRoaXMsICdmaWVsZHMnKS5waXBlKFxyXG4gICAgICAgIHN3aXRjaE1hcChmaWVsZEVsZW1lbnRzID0+IHtcclxuICAgICAgICAgIHJldHVybiB0aGlzLm9uU3RhcnREZWJ1Z2dlck9yTG9hZEZyb21DYWNoZShmaWVsZEVsZW1lbnRzKTtcclxuICAgICAgICB9KSxcclxuICAgICAgICBzd2l0Y2hNYXAoKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIGlmICh0aGlzLmdyb3VwLl9pc0RlYnVnZ2luZyAmJiB0aGlzLmdyb3VwLl9kZWJ1Zy5pc0xvYWRpbmcpIHtcclxuICAgICAgICAgICAgdGhpcy5ncm91cC5fZGVidWcuaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICByZXR1cm4gb2YoW10pO1xyXG4gICAgICAgIH0pLFxyXG4gICAgICAgIGRlbGF5KDUwMCkpXHJcbiAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmRlYnVnU2VydmljZS5sb2FkR3JpZERhdGEoKTtcclxuICAgICAgICAgIHRoaXMuZGVidWdTZXJ2aWNlLmxvYWRXb3JrZmxvd0RhdGEoKTtcclxuICAgICAgICB9KTtcclxuICAgICAgLy99XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG9uU3RhcnREZWJ1Z2dlck9yTG9hZEZyb21DYWNoZShjYWNoZWRaRmllbGQ6IFpGaWVsZFtdKSB7XHJcbiAgICBpZiAodGhpcy5maWVsZE5hbWUgPT09ICdkZWJ1Z1YyJykge1xyXG4gICAgICByZXR1cm4gdGhpcy5kZWJ1Z1NlcnZpY2Uub25TdGFydERlYnVnZ2VyKGNhY2hlZFpGaWVsZCwgdGhpcyk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmdyb3VwLmZpZWxkcyA9IGNhY2hlZFpGaWVsZDtcclxuICAgICAgdGhpcy5vbkluaXROb3JtYWwoKTtcclxuICAgICAgcmV0dXJuIG9mKFtdKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgaWYgKHRoaXMuc3Vic2NyaXB0aW9uKSB7ICAvLyBmb3IgZGVidWdnZXIgc3Vic2NyaXB0aW9uXHJcbiAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRHcm91cCgpIHtcclxuICAgIGlmICh0aGlzLmZpZWxkTmFtZSAhPT0gJ2RlYnVnVjInKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmdyb3VwO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHRoaXMuZ3JvdXAuX2RlYnVnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvbkluaXROb3JtYWwoKSB7XHJcbiAgICBvZih0cnVlKS5waXBlKFxyXG4gICAgICB0YXAoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuZm9ybSA9IHRoaXMudG9Gb3JtR3JvdXAodGhpcy5ncm91cC5maWVsZHMpO1xyXG4gICAgICAgIHRoaXMuZ3JvdXAuZm9ybSA9IHRoaXMuZm9ybTtcclxuICAgICAgICB0aGlzLmZpZWxkcyA9IHRoaXMuZ3JvdXAuZmllbGRzO1xyXG4gICAgICB9KSxcclxuICAgICAgc3dpdGNoTWFwKCgpID0+IHtcclxuICAgICAgICBpZiAoIXRoaXMuZ3JvdXBbJ2FmdGVyRm9ybUluaXQnXSkge1xyXG4gICAgICAgICAgcmV0dXJuIG9mKHt9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZ3JvdXBbJ2FmdGVyRm9ybUluaXQnXSgpO1xyXG4gICAgICB9KVxyXG4gICAgKS5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIENvbXBvbmVudElzVmlzaWJsZShmaWVsZDogWkZpZWxkKTogYW55IHtcclxuICAgIHJldHVybiBaQ29tcG9uZW50SGVscGVyLkNvbXBvbmVudElzVmlzaWJsZShmaWVsZCwgdGhpcy5ncm91cCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHRvRm9ybUdyb3VwKGZpZWxkRWxlbWVudHM6IEFycmF5PFpGaWVsZD4pIHtcclxuICAgIGNvbnN0IGZvcm1Db250cm9sczogeyBba2V5OiBzdHJpbmddOiBGb3JtQ29udHJvbCB9ID0ge307XHJcbiAgICB0aGlzLmdldEZvcm1Db250cm9scyhmaWVsZEVsZW1lbnRzLCBmb3JtQ29udHJvbHMpO1xyXG4gICAgY29uc3QgbmV3Rm9ybUdyb3VwID0gbmV3IEZvcm1Hcm91cChmb3JtQ29udHJvbHMpO1xyXG4gICAgcmV0dXJuIG5ld0Zvcm1Hcm91cDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWRkVG9GaWVsZEluZGV4KGZpZWxkOiBaRmllbGQpIHtcclxuICAgIGlmICghZmllbGQuTmFtZSkge1xyXG4gICAgICBjb25zb2xlLmVycm9yKCdGaWVsZCBOYW1lIHVuZGVmaW5lZDogJywgZmllbGQpO1xyXG4gICAgfVxyXG4gICAgaWYgKGZpZWxkLk5hbWUgJiYgIXRoaXMuZmllbGRJbmRleC5pbmNsdWRlcyhmaWVsZC5OYW1lKSkge1xyXG4gICAgICB0aGlzLmZpZWxkSW5kZXgucHVzaChmaWVsZC5OYW1lKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ0ZpZWxkIE5hbWUgRHVwbGljYXRpb246ICcgKyBmaWVsZC5OYW1lICsgJzsgICcsIGZpZWxkKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0Rm9ybUNvbnRyb2xzKFxyXG4gICAgZmllbGRBcnJheTogQXJyYXk8WkZpZWxkPixcclxuICAgIGZvcm1Db250cm9sczogeyBba2V5OiBzdHJpbmddOiBGb3JtQ29udHJvbCB9LFxyXG4gICAgY29udGFpbmVySXNWaXNpYmxlOiBib29sZWFuID0gdHJ1ZVxyXG4gICkge1xyXG4gICAgZmllbGRBcnJheS5mb3JFYWNoKGZpZWxkID0+IHtcclxuICAgICAgaWYgKCFmaWVsZC5TdWJUeXBlKSB7XHJcbiAgICAgICAgdGhpcy5hZGRUb0ZpZWxkSW5kZXgoZmllbGQpO1xyXG4gICAgICAgIHRoaXMuZmllbGRTZXJ2aWNlLnBhdGNoRmllbGRQcm9wZXJ0eShmaWVsZCk7XHJcblxyXG4gICAgICAgIGlmICh0eXBlb2YgZmllbGQuVmFsdWUgPT09IFwic3RyaW5nXCIgJiYgZmllbGQuVmFsdWUuaW5kZXhPZihcIi5cIikgIT09IC0xKSB7XHJcbiAgICAgICAgICBpZiAoWyd6Z3JpZCcsICd6dHJlZScsICd0ZXh0YXJlYWpzb24nXS5pbmRleE9mKGZpZWxkLlR5cGUpID09PSAtMSkge1xyXG4gICAgICAgICAgICBjb25zb2xlLndhcm4oXCJGb3JtQ29udHJvbCAtIGludmFsaWQgZmllbGQgdmFsdWVcIiwgZmllbGQuVmFsdWUpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgIGlmIChBcnJheS5pc0FycmF5KGZpZWxkLlZhbHVlKSAmJiBmaWVsZC5UeXBlICE9PSAnemxvb3AnKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGNvbnRhaW5lcklzVmlzaWJsZSA9IFpDb21wb25lbnRIZWxwZXIuaXNWaXNpYmxlRm9ybUNvbnRyb2wodGhpcywgZmllbGQpO1xyXG4gICAgICAgICAgICB0aGlzLmdldEZvcm1Db250cm9scyhmaWVsZC5WYWx1ZSwgZm9ybUNvbnRyb2xzLCBjb250YWluZXJJc1Zpc2libGUpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGlzRm9ybUNvbnRyb2wgPSBaQ29tcG9uZW50SGVscGVyLmlzRm9ybUNvbnRyb2woZmllbGQpO1xyXG4gICAgICAgICAgICBjb25zdCBpc1Zpc2libGUgPSBaQ29tcG9uZW50SGVscGVyLmlzVmlzaWJsZUZvcm1Db250cm9sKHRoaXMsIGZpZWxkKTtcclxuICAgICAgICAgICAgY29uc3QgaXNSZXF1aXJlZCA9IFpDb21wb25lbnRIZWxwZXIuaXNSZXF1aXJlZEZvcm1Db250cm9sKHRoaXMsIGZpZWxkKTtcclxuXHJcbiAgICAgICAgICAgIC8vIGlmIGNvbnRhaW5lciB8fCBjb250cm9sIHZpc2libGUgPT0gZmFsc2UsIGRvbnQgaW5jcmVhc2UgdGhlIGNvdW50ZXIuXHJcbiAgICAgICAgICAgIGlmIChpc1Zpc2libGUgJiYgY29udGFpbmVySXNWaXNpYmxlKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5maWVsZFNlcnZpY2UuaW5jcmVtZW50Q29tcG9uZW50Q291bnRlcihmaWVsZC5GaWVsZEVsZW1lbnROYW1lKTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaWYgKGlzRm9ybUNvbnRyb2wgPT09IHRydWUpIHtcclxuICAgICAgICAgICAgICBjb25zdCB2YWxpZGF0b3JzOiBWYWxpZGF0b3JGbltdID0gWkNvbXBvbmVudEhlbHBlci5nZXRWYWxpZGF0b3JzKGZpZWxkLCBpc1Zpc2libGUsIGlzUmVxdWlyZWQsIHRoaXMuZ3JvdXApO1xyXG4gICAgICAgICAgICAgIGZvcm1Db250cm9sc1tmaWVsZC5WYWx1ZV0gPSBuZXcgRm9ybUNvbnRyb2woXHJcbiAgICAgICAgICAgICAgICB0aGlzLmdyb3VwLnpNb2RlbFtmaWVsZC5WYWx1ZV0sIHZhbGlkYXRvcnNcclxuICAgICAgICAgICAgICApO1xyXG5cclxuICAgICAgICAgICAgICBpZiAoWkNvbXBvbmVudEhlbHBlci5oYXNDQ0ZpZWxkKGZpZWxkLlR5cGUpKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBjY1ZhbGlkYXRvcnM6IFZhbGlkYXRvckZuW10gPSBaQ29tcG9uZW50SGVscGVyLmdldENDVmFsaWRhdG9ycyhmaWVsZCwgaXNWaXNpYmxlLCBpc1JlcXVpcmVkKTtcclxuICAgICAgICAgICAgICAgIGZvcm1Db250cm9sc1tmaWVsZC5DQ1ZhbHVlXSA9IG5ldyBGb3JtQ29udHJvbChcclxuICAgICAgICAgICAgICAgICAgdGhpcy5ncm91cC56TW9kZWxbZmllbGQuQ0NWYWx1ZV0sXHJcbiAgICAgICAgICAgICAgICAgIGNjVmFsaWRhdG9yc1xyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBnZXRSZWFkT25seVZhbHVlKGZpZWxkOiBaRmllbGQpIHtcclxuICAgIGNvbnN0IHJlYWRPbmx5VmFsdWUgPSBaQ29tcG9uZW50SGVscGVyLmdldEdyb3VwRXZhbFZhbHVlLmNhbGwodGhpcywgZmllbGQuUmVhZE9ubHkpO1xyXG4gICAgaWYgKHR5cGVvZiByZWFkT25seVZhbHVlID09PSAnZnVuY3Rpb24nKSB7XHJcbiAgICAgIHJldHVybiByZWFkT25seVZhbHVlKCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVhZE9ubHlWYWx1ZTtcclxuICB9XHJcblxyXG4gIHRyYWNrQnlGbihpbmRleDogbnVtYmVyLCBpdGVtKTogbnVtYmVyIHtcclxuICAgIC8vcmV0dXJuIGl0ZW1bJ1R5cGUnXSArICctJyArIGl0ZW1bJ05hbWUnXTtcclxuICAgIHJldHVybiBpbmRleDtcclxuICB9XHJcblxyXG4gIC8vIHByaXZhdGUgZ2V0VmFsdWUoZmllbGQ6IFpGaWVsZCkge1xyXG4gIC8vICAgaWYgKGZpZWxkLlR5cGUuaW5kZXhPZignZGF0ZScpICE9PSAtMSkge1xyXG4gIC8vICAgICByZXR1cm4gbmV3IERhdGUodGhpcy5ncm91cC56TW9kZWxbZmllbGQuVmFsdWVdKTtcclxuICAvLyAgIH0gZWxzZSB7XHJcbiAgLy8gICAgIHJldHVybiB0aGlzLmdyb3VwLnpNb2RlbFtmaWVsZC5WYWx1ZV07XHJcbiAgLy8gICB9XHJcbiAgLy8gfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJlMS1mb3JtXCI+XHJcbiAgPCEtLTxkaXYgY2xhc3M9XCJrLW92ZXJsYXlcIiAqbmdJZj1cImlzTG9hZGluZ1wiPjwvZGl2Pi0tPlxyXG4gIDxmb3JtIFtmb3JtR3JvdXBdPVwiZm9ybVwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiICpuZ0lmPVwiIWlzTG9hZGluZ1wiPlxyXG4gICAgPGlvbi1ncmlkPlxyXG4gICAgICA8aW9uLXJvdyBpZD1cImR5bmFtaWMtZm9ybS1ob3N0XCIgY2xhc3M9XCJpb24tYWxpZ24taXRlbXMtc3RhcnRcIj5cclxuICAgICAgICA8YXBwLXpmb3JtY29udHJvbCAqbmdGb3I9XCJsZXQgZmllbGQgb2YgZmllbGRzOyB0cmFja0J5OiB0cmFja0J5Rm5cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cImdyb3VwW2ZpZWxkWydpc1Zpc2libGVGaWVsZCddXSA/IGZpZWxkLkRpdkNsYXNzIDooKGZpZWxkLlZpc2libGUgPT09IHRydWUpID8gIGZpZWxkLkRpdkNsYXNzIDogJ2ZsZXgtaGlkZScpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbZmllbGRdPVwiZmllbGRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIFtncm91cF09XCJnZXRHcm91cCgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbZm9ybV09XCJmb3JtXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cInt7ZmllbGQuVHlwZX19LXt7ZmllbGQuTmFtZX19XCI+PC9hcHAtemZvcm1jb250cm9sPlxyXG4gICAgICA8L2lvbi1yb3c+XHJcbiAgICA8L2lvbi1ncmlkPlxyXG4gIDwvZm9ybT5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
187
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiemZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW1oZ2xvYmFsLWR5bmFtaWNmb3JtL3NyYy9saWIvemZvcm0vemZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW1oZ2xvYmFsLWR5bmFtaWNmb3JtL3NyYy9saWIvemZvcm0vemZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0JBQStCO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFlLE1BQU0sZ0JBQWdCLENBQUM7QUFFckUsNkJBQTZCO0FBRTdCLDhCQUE4QjtBQUM5QixPQUFPLEVBQUUsRUFBRSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUl2RCxPQUFPLEVBRUwsZ0JBQWdCLEVBQ2pCLE1BQU0saUJBQWlCLENBQUM7Ozs7Ozs7OztBQVN6QixNQUFNLE9BQU8sY0FBYztJQVd6QixZQUNVLFdBQXdCLEVBQ3hCLFlBQTBCLEVBQzFCLFlBQW9DLEVBQ3BDLFlBQTBCLEVBQzFCLFlBQTBCO0lBQ2xDLHNDQUFzQztJQUN0Qyx5QkFBeUI7O1FBTmpCLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLGlCQUFZLEdBQVosWUFBWSxDQUF3QjtRQUNwQyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUMxQixpQkFBWSxHQUFaLFlBQVksQ0FBYztRQVRwQyxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBRWpCLGVBQVUsR0FBRyxFQUFFLENBQUM7SUFVWixDQUFDO0lBRUwsUUFBUTtRQUNOLElBQUksQ0FBQyxJQUFJLENB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QUssVUFBVSxFQUFFO1lBQ3ZDLE9BQU8sYUFBYSxFQUFFLENBQUM7U0FDeEI7UUFDRCxPQUFPLGFBQWEsQ0FBQztJQUN2QixDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQWEsRUFBRSxJQUFJO1FBQzNCLDJDQUEyQztRQUMzQyxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7OzJHQWhNVSxjQUFjOytGQUFkLGNBQWMscUdDeEIzQixpeEJBZUE7MkZEU2EsY0FBYztrQkFOMUIsU0FBUzsrQkFDRSxXQUFXO3dOQU1aLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyoqKioqKioqKiogQW5ndWxhciAqKioqKioqKioqL1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIE9uRGVzdHJveSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEZvcm1Hcm91cCwgRm9ybUNvbnRyb2wsIFZhbGlkYXRvckZuIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcblxyXG4vKioqKioqKioqKiBJb25pYyAqKioqKioqKioqL1xyXG5cclxuLyoqKioqKioqKiogUGx1Z2luICoqKioqKioqKiovXHJcbmltcG9ydCB7IG9mLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgc3dpdGNoTWFwLCBkZWxheSwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuLyoqKioqKioqKiogQ29tcG9uZW50ICYgU2VydmljZSAqKioqKioqKioqL1xyXG5pbXBvcnQgeyBaQ29tcG9uZW50RGVidWdTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvemNvbXBvbmVudC5kZWJ1Zy5zZXJ2aWNlJztcclxuaW1wb3J0IHtcclxuICBBdXRoU2VydmljZSwgRmllbGRTZXJ2aWNlLCBaQ29yZVNlcnZpY2UsIENhY2hlU2VydmljZSxcclxuICBaQ29tcG9uZW50SGVscGVyLCBaR3JvdXAsIFpGaWVsZFxyXG59IGZyb20gJ21taGdsb2JhbC16Y29yZSc7XHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiYXBwLXpmb3JtXCIsXHJcbiAgdGVtcGxhdGVVcmw6IFwiLi96Zm9ybS5jb21wb25lbnQuaHRtbFwiLFxyXG4gIHN0eWxlVXJsczogW1wiLi96Zm9ybS5jb21wb25lbnQuc2Nzc1wiXVxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIFpmb3JtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIEBJbnB1dCgpIGdyb3VwOiBaR3JvdXA7XHJcbiAgQElucHV0KCkgZmllbGROYW1lOiBzdHJpbmc7XHJcbiAgLy8gQFZpZXdDaGlsZCgnZnJtJywge3N0YXRpYzogdHJ1ZX0pIGZvcm06IE5nRm9ybTtcclxuXHJcbiAgZm9ybTogRm9ybUdyb3VwO1xyXG4gIGZpZWxkczogQXJyYXk8WkZpZWxkPjtcclxuICBpc0xvYWRpbmcgPSB0cnVlO1xyXG4gIHN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG4gIGZpZWxkSW5kZXggPSBbXTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGF1dGhTZXJ2aWNlOiBBdXRoU2VydmljZSxcclxuICAgIHByaXZhdGUgZmllbGRTZXJ2aWNlOiBGaWVsZFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGRlYnVnU2VydmljZTogWkNvbXBvbmVudERlYnVnU2VydmljZSxcclxuICAgIHByaXZhdGUgemNvcmVTZXJ2aWNlOiBaQ29yZVNlcnZpY2UsXHJcbiAgICBwcml2YXRlIGNhY2hlU2VydmljZTogQ2FjaGVTZXJ2aWNlXHJcbiAgICAvLyBwcml2YXRlIG1vZGFsU2VydmljZTogTW9kYWxTZXJ2aWNlLFxyXG4gICAgLy8gcHJpdmF0ZSByb3V0ZXI6IFJvdXRlclxyXG4gICkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gICAgaWYgKCF0aGlzLmZpZWxkTmFtZSkge1xyXG4gICAgICB0aGlzLm9uSW5pdE5vcm1hbCgpO1xyXG4gICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIC8vY29uc3QgY2FjaGVLZXkgPSBgRm9ybUZpZWxkXyR7dGhpcy5maWVsZE5hbWV9YDtcclxuICAgICAgLy8gaWYgZ2V0IGZyb20gY2FjaGUsIGZpZWxkIHdvbnQgbG9hZC4gdGVtcG9yYXJ5IGNvbW1lbnQgb3V0LlxyXG4gICAgICAvL2NvbnN0IGNhY2hlZERhdGEgPSB0aGlzLmNhY2hlU2VydmljZS5nZXQoY2FjaGVLZXkpO1xyXG4gICAgICAvL2lmIChjYWNoZWREYXRhKSB7XHJcbiAgICAgIC8vICBvZihjYWNoZWREYXRhKS5waXBlKFxyXG4gICAgICAvLyAgICBzd2l0Y2hNYXAoY2FjaGVkRGF0YSA9PiB7XHJcbiAgICAgIC8vICAgICAgY29uc3QgY2FjaGVkWkZpZWxkID0gY2FjaGVkRGF0YSBhcyBaRmllbGRbXTtcclxuICAgICAgLy8gICAgICByZXR1cm4gdGhpcy5vblN0YXJ0RGVidWdnZXJPckxvYWRGcm9tQ2FjaGUoY2FjaGVkWkZpZWxkKTtcclxuICAgICAgLy8gICAgfSksXHJcbiAgICAgIC8vICAgIHRhcCgoKSA9PiB7XHJcbiAgICAgIC8vICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgLy8gICAgICBpZiAodGhpcy5ncm91cC5faXNEZWJ1Z2dpbmcgJiYgdGhpcy5ncm91cC5fZGVidWcuaXNMb2FkaW5nKSB7XHJcbiAgICAgIC8vICAgICAgICB0aGlzLmdyb3VwLl9kZWJ1Zy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgLy8gICAgICB9XHJcbiAgICAgIC8vICAgIH0pLFxyXG4gICAgICAvLyAgICBkZWxheSg1MDApXHJcbiAgICAgIC8vICApLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgIC8vICAgIHRoaXMuZGVidWdTZXJ2aWNlLkxvYWRHcmlkRGF0YSgpO1xyXG4gICAgICAvLyAgICB0aGlzLmRlYnVnU2VydmljZS5sb2FkV29ya2Zsb3dEYXRhKCk7XHJcbiAgICAgIC8vICB9KTtcclxuICAgICAgLy99XHJcbiAgICAgIC8vZWxzZSB7XHJcbiAgICAgIHRoaXMuZmllbGRTZXJ2aWNlLmdldEZvcm1GaWVsZENvZGUodGhpcy5maWVsZE5hbWUsICdGb3JtRmllbGQnLCB0aGlzLCAnZmllbGRzJykucGlwZShcclxuICAgICAgICBzd2l0Y2hNYXAoZmllbGRFbGVtZW50cyA9PiB7XHJcbiAgICAgICAgICByZXR1cm4gdGhpcy5vblN0YXJ0RGVidWdnZXJPckxvYWRGcm9tQ2FjaGUoZmllbGRFbGVtZW50cyk7XHJcbiAgICAgICAgfSksXHJcbiAgICAgICAgc3dpdGNoTWFwKCgpID0+IHtcclxuICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICBpZiAodGhpcy5ncm91cC5faXNEZWJ1Z2dpbmcgJiYgdGhpcy5ncm91cC5fZGVidWcuaXNMb2FkaW5nKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZ3JvdXAuX2RlYnVnLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcmV0dXJuIG9mKFtdKTtcclxuICAgICAgICB9KSxcclxuICAgICAgICBkZWxheSg1MDApKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5kZWJ1Z1NlcnZpY2UubG9hZEdyaWREYXRhKCk7XHJcbiAgICAgICAgICB0aGlzLmRlYnVnU2VydmljZS5sb2FkV29ya2Zsb3dEYXRhKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIC8vfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvblN0YXJ0RGVidWdnZXJPckxvYWRGcm9tQ2FjaGUoY2FjaGVkWkZpZWxkOiBaRmllbGRbXSkge1xyXG4gICAgaWYgKHRoaXMuZmllbGROYW1lID09PSAnZGVidWdWMicpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuZGVidWdTZXJ2aWNlLm9uU3RhcnREZWJ1Z2dlcihjYWNoZWRaRmllbGQsIHRoaXMpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5ncm91cC5maWVsZHMgPSBjYWNoZWRaRmllbGQ7XHJcbiAgICAgIHRoaXMub25Jbml0Tm9ybWFsKCk7XHJcbiAgICAgIHJldHVybiBvZihbXSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIGlmICh0aGlzLnN1YnNjcmlwdGlvbikgeyAgLy8gZm9yIGRlYnVnZ2VyIHN1YnNjcmlwdGlvblxyXG4gICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0R3JvdXAoKSB7XHJcbiAgICBpZiAodGhpcy5maWVsZE5hbWUgIT09ICdkZWJ1Z1YyJykge1xyXG4gICAgICByZXR1cm4gdGhpcy5ncm91cDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmdyb3VwLl9kZWJ1ZztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25Jbml0Tm9ybWFsKCkge1xyXG4gICAgb2YodHJ1ZSkucGlwZShcclxuICAgICAgdGFwKCgpID0+IHtcclxuICAgICAgICB0aGlzLmZvcm0gPSB0aGlzLnRvRm9ybUdyb3VwKHRoaXMuZ3JvdXAuZmllbGRzKTtcclxuICAgICAgICB0aGlzLmdyb3VwLmZvcm0gPSB0aGlzLmZvcm07XHJcbiAgICAgICAgdGhpcy5maWVsZHMgPSB0aGlzLmdyb3VwLmZpZWxkcztcclxuICAgICAgfSksXHJcbiAgICAgIHN3aXRjaE1hcCgoKSA9PiB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmdyb3VwWydhZnRlckZvcm1Jbml0J10pIHtcclxuICAgICAgICAgIHJldHVybiBvZih7fSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB0aGlzLmdyb3VwWydhZnRlckZvcm1Jbml0J10oKTtcclxuICAgICAgfSlcclxuICAgICkuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICBDb21wb25lbnRJc1Zpc2libGUoZmllbGQ6IFpGaWVsZCk6IGFueSB7XHJcbiAgICByZXR1cm4gWkNvbXBvbmVudEhlbHBlci5Db21wb25lbnRJc1Zpc2libGUoZmllbGQsIHRoaXMuZ3JvdXApO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB0b0Zvcm1Hcm91cChmaWVsZEVsZW1lbnRzOiBBcnJheTxaRmllbGQ+KSB7XHJcbiAgICBjb25zdCBmb3JtQ29udHJvbHM6IHsgW2tleTogc3RyaW5nXTogRm9ybUNvbnRyb2wgfSA9IHt9O1xyXG4gICAgdGhpcy5nZXRGb3JtQ29udHJvbHMoZmllbGRFbGVtZW50cywgZm9ybUNvbnRyb2xzKTtcclxuICAgIGNvbnN0IG5ld0Zvcm1Hcm91cCA9IG5ldyBGb3JtR3JvdXAoZm9ybUNvbnRyb2xzKTtcclxuICAgIHJldHVybiBuZXdGb3JtR3JvdXA7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGFkZFRvRmllbGRJbmRleChmaWVsZDogWkZpZWxkKSB7XHJcbiAgICBpZiAoIWZpZWxkLk5hbWUpIHtcclxuICAgICAgY29uc29sZS5lcnJvcignRmllbGQgTmFtZSB1bmRlZmluZWQ6ICcsIGZpZWxkKTtcclxuICAgIH1cclxuICAgIGlmIChmaWVsZC5OYW1lICYmICF0aGlzLmZpZWxkSW5kZXguaW5jbHVkZXMoZmllbGQuTmFtZSkpIHtcclxuICAgICAgdGhpcy5maWVsZEluZGV4LnB1c2goZmllbGQuTmFtZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb25zb2xlLmVycm9yKCdGaWVsZCBOYW1lIER1cGxpY2F0aW9uOiAnICsgZmllbGQuTmFtZSArICc7ICAnLCBmaWVsZCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGdldEZvcm1Db250cm9scyhcclxuICAgIGZpZWxkQXJyYXk6IEFycmF5PFpGaWVsZD4sXHJcbiAgICBmb3JtQ29udHJvbHM6IHsgW2tleTogc3RyaW5nXTogRm9ybUNvbnRyb2wgfSxcclxuICAgIGNvbnRhaW5lcklzVmlzaWJsZTogYm9vbGVhbiA9IHRydWVcclxuICApIHtcclxuICAgIGZpZWxkQXJyYXkuZm9yRWFjaChmaWVsZCA9PiB7XHJcbiAgICAgIGlmICghZmllbGQuU3ViVHlwZSkge1xyXG4gICAgICAgIHRoaXMuYWRkVG9GaWVsZEluZGV4KGZpZWxkKTtcclxuICAgICAgICB0aGlzLmZpZWxkU2VydmljZS5wYXRjaEZpZWxkUHJvcGVydHkoZmllbGQpO1xyXG5cclxuICAgICAgICBpZiAodHlwZW9mIGZpZWxkLlZhbHVlID09PSBcInN0cmluZ1wiICYmIGZpZWxkLlZhbHVlLmluZGV4T2YoXCIuXCIpICE9PSAtMSkge1xyXG4gICAgICAgICAgaWYgKFsnemdyaWQnLCAnenRyZWUnLCAndGV4dGFyZWFqc29uJywgJ3pnYW50dGNoYXJ0J10uaW5kZXhPZihmaWVsZC5UeXBlKSA9PT0gLTEpIHtcclxuICAgICAgICAgICAgY29uc29sZS53YXJuKFwiRm9ybUNvbnRyb2wgLSBpbnZhbGlkIGZpZWxkIHZhbHVlXCIsIGZpZWxkLlZhbHVlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShmaWVsZC5WYWx1ZSkgJiYgZmllbGQuVHlwZSAhPT0gJ3psb29wJykge1xyXG4gICAgICAgICAgICBjb25zdCBjb250YWluZXJJc1Zpc2libGUgPSBaQ29tcG9uZW50SGVscGVyLmlzVmlzaWJsZUZvcm1Db250cm9sKHRoaXMsIGZpZWxkKTtcclxuICAgICAgICAgICAgdGhpcy5nZXRGb3JtQ29udHJvbHMoZmllbGQuVmFsdWUsIGZvcm1Db250cm9scywgY29udGFpbmVySXNWaXNpYmxlKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICBjb25zdCBpc0Zvcm1Db250cm9sID0gWkNvbXBvbmVudEhlbHBlci5pc0Zvcm1Db250cm9sKGZpZWxkKTtcclxuICAgICAgICAgICAgY29uc3QgaXNWaXNpYmxlID0gWkNvbXBvbmVudEhlbHBlci5pc1Zpc2libGVGb3JtQ29udHJvbCh0aGlzLCBmaWVsZCk7XHJcbiAgICAgICAgICAgIGNvbnN0IGlzUmVxdWlyZWQgPSBaQ29tcG9uZW50SGVscGVyLmlzUmVxdWlyZWRGb3JtQ29udHJvbCh0aGlzLCBmaWVsZCk7XHJcblxyXG4gICAgICAgICAgICAvLyBpZiBjb250YWluZXIgfHwgY29udHJvbCB2aXNpYmxlID09IGZhbHNlLCBkb250IGluY3JlYXNlIHRoZSBjb3VudGVyLlxyXG4gICAgICAgICAgICBpZiAoaXNWaXNpYmxlICYmIGNvbnRhaW5lcklzVmlzaWJsZSkge1xyXG4gICAgICAgICAgICAgIHRoaXMuZmllbGRTZXJ2aWNlLmluY3JlbWVudENvbXBvbmVudENvdW50ZXIoZmllbGQuRmllbGRFbGVtZW50TmFtZSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGlmIChpc0Zvcm1Db250cm9sID09PSB0cnVlKSB7XHJcbiAgICAgICAgICAgICAgY29uc3QgdmFsaWRhdG9yczogVmFsaWRhdG9yRm5bXSA9IFpDb21wb25lbnRIZWxwZXIuZ2V0VmFsaWRhdG9ycyhmaWVsZCwgaXNWaXNpYmxlLCBpc1JlcXVpcmVkLCB0aGlzLmdyb3VwKTtcclxuICAgICAgICAgICAgICBmb3JtQ29udHJvbHNbZmllbGQuVmFsdWVdID0gbmV3IEZvcm1Db250cm9sKFxyXG4gICAgICAgICAgICAgICAgdGhpcy5ncm91cC56TW9kZWxbZmllbGQuVmFsdWVdLCB2YWxpZGF0b3JzXHJcbiAgICAgICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICAgICAgaWYgKFpDb21wb25lbnRIZWxwZXIuaGFzQ0NGaWVsZChmaWVsZC5UeXBlKSkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgY2NWYWxpZGF0b3JzOiBWYWxpZGF0b3JGbltdID0gWkNvbXBvbmVudEhlbHBlci5nZXRDQ1ZhbGlkYXRvcnMoZmllbGQsIGlzVmlzaWJsZSwgaXNSZXF1aXJlZCk7XHJcbiAgICAgICAgICAgICAgICBmb3JtQ29udHJvbHNbZmllbGQuQ0NWYWx1ZV0gPSBuZXcgRm9ybUNvbnRyb2woXHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuZ3JvdXAuek1vZGVsW2ZpZWxkLkNDVmFsdWVdLFxyXG4gICAgICAgICAgICAgICAgICBjY1ZhbGlkYXRvcnNcclxuICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZ2V0UmVhZE9ubHlWYWx1ZShmaWVsZDogWkZpZWxkKSB7XHJcbiAgICBjb25zdCByZWFkT25seVZhbHVlID0gWkNvbXBvbmVudEhlbHBlci5nZXRHcm91cEV2YWxWYWx1ZS5jYWxsKHRoaXMsIGZpZWxkLlJlYWRPbmx5KTtcclxuICAgIGlmICh0eXBlb2YgcmVhZE9ubHlWYWx1ZSA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICByZXR1cm4gcmVhZE9ubHlWYWx1ZSgpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlYWRPbmx5VmFsdWU7XHJcbiAgfVxyXG5cclxuICB0cmFja0J5Rm4oaW5kZXg6IG51bWJlciwgaXRlbSk6IG51bWJlciB7XHJcbiAgICAvL3JldHVybiBpdGVtWydUeXBlJ10gKyAnLScgKyBpdGVtWydOYW1lJ107XHJcbiAgICByZXR1cm4gaW5kZXg7XHJcbiAgfVxyXG5cclxuICAvLyBwcml2YXRlIGdldFZhbHVlKGZpZWxkOiBaRmllbGQpIHtcclxuICAvLyAgIGlmIChmaWVsZC5UeXBlLmluZGV4T2YoJ2RhdGUnKSAhPT0gLTEpIHtcclxuICAvLyAgICAgcmV0dXJuIG5ldyBEYXRlKHRoaXMuZ3JvdXAuek1vZGVsW2ZpZWxkLlZhbHVlXSk7XHJcbiAgLy8gICB9IGVsc2Uge1xyXG4gIC8vICAgICByZXR1cm4gdGhpcy5ncm91cC56TW9kZWxbZmllbGQuVmFsdWVdO1xyXG4gIC8vICAgfVxyXG4gIC8vIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiZTEtZm9ybVwiPlxyXG4gIDwhLS08ZGl2IGNsYXNzPVwiay1vdmVybGF5XCIgKm5nSWY9XCJpc0xvYWRpbmdcIj48L2Rpdj4tLT5cclxuICA8Zm9ybSBbZm9ybUdyb3VwXT1cImZvcm1cIiBhdXRvY29tcGxldGU9XCJvZmZcIiAqbmdJZj1cIiFpc0xvYWRpbmdcIj5cclxuICAgIDxpb24tZ3JpZD5cclxuICAgICAgPGlvbi1yb3cgaWQ9XCJkeW5hbWljLWZvcm0taG9zdFwiIGNsYXNzPVwiaW9uLWFsaWduLWl0ZW1zLXN0YXJ0XCI+XHJcbiAgICAgICAgPGFwcC16Zm9ybWNvbnRyb2wgKm5nRm9yPVwibGV0IGZpZWxkIG9mIGZpZWxkczsgdHJhY2tCeTogdHJhY2tCeUZuXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJncm91cFtmaWVsZFsnaXNWaXNpYmxlRmllbGQnXV0gPyBmaWVsZC5EaXZDbGFzcyA6KChmaWVsZC5WaXNpYmxlID09PSB0cnVlKSA/ICBmaWVsZC5EaXZDbGFzcyA6ICdmbGV4LWhpZGUnKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2ZpZWxkXT1cImZpZWxkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICBbZ3JvdXBdPVwiZ2V0R3JvdXAoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgW2Zvcm1dPVwiZm9ybVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJ7e2ZpZWxkLlR5cGV9fS17e2ZpZWxkLk5hbWV9fVwiPjwvYXBwLXpmb3JtY29udHJvbD5cclxuICAgICAgPC9pb24tcm93PlxyXG4gICAgPC9pb24tZ3JpZD5cclxuICA8L2Zvcm0+XHJcbjwvZGl2PlxyXG4iXX0=
|