@simpleangularcontrols/sac-common 16.0.0-rc.21 → 16.0.0-rc.22
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/controls/grid/gridcolumnbase.d.ts +5 -1
- package/controls/grid/gridcolumnbase.d.ts.map +1 -1
- package/controls/treeview/treeview.d.ts +2 -2
- package/controls/treeview/treeview.d.ts.map +1 -1
- package/esm2022/common/basedatetimecontrol.mjs +1 -1
- package/esm2022/common/baseinputcontrol.mjs +1 -1
- package/esm2022/common/baselistcontrol.mjs +1 -1
- package/esm2022/common/basemodelcontrol.mjs +1 -1
- package/esm2022/common/baseselectcontrol.mjs +1 -1
- package/esm2022/common/baseuploadcontrol.mjs +1 -1
- package/esm2022/components/browser/browser.mjs +1 -1
- package/esm2022/components/browser/models/browserfiledeleterequest.mjs +1 -1
- package/esm2022/components/browser/models/browserfilerenamerequest.mjs +1 -1
- package/esm2022/components/browser/models/browserfilesaverequest.mjs +1 -1
- package/esm2022/components/browser/models/browsernodedeleterequest.mjs +1 -1
- package/esm2022/components/browser/models/browsernodenewrequest.mjs +1 -1
- package/esm2022/components/browser/models/browsernoderenamerequest.mjs +1 -1
- package/esm2022/components/browser/models/browsernoderequest.mjs +1 -1
- package/esm2022/controls/buttons/button.mjs +1 -1
- package/esm2022/controls/checkbox/checkbox.mjs +1 -1
- package/esm2022/controls/checkbox/radiobutton.mjs +1 -1
- package/esm2022/controls/checkbox/radiobuttons.mjs +1 -1
- package/esm2022/controls/confirm/confirm.button.mjs +1 -1
- package/esm2022/controls/confirm/confirm.mjs +1 -1
- package/esm2022/controls/confirm/confirm.service.mjs +1 -1
- package/esm2022/controls/contextmenu/contextmenu.mjs +1 -1
- package/esm2022/controls/contextmenu/contextmenuanchor.mjs +1 -1
- package/esm2022/controls/contextmenu/contextmenucontainer.mjs +1 -1
- package/esm2022/controls/contextmenu/contextmenuitem.mjs +1 -1
- package/esm2022/controls/contextmenu/contextmenuitembutton.mjs +1 -1
- package/esm2022/controls/datetime/date.mjs +1 -1
- package/esm2022/controls/datetime/dateselector.mjs +1 -1
- package/esm2022/controls/datetime/datetime.mjs +1 -1
- package/esm2022/controls/datetime/time.mjs +1 -1
- package/esm2022/controls/dialog/dialog.mjs +1 -1
- package/esm2022/controls/form/form.mjs +1 -1
- package/esm2022/controls/grid/grid.mjs +1 -1
- package/esm2022/controls/grid/gridbutton.mjs +1 -1
- package/esm2022/controls/grid/gridcolumn.mjs +1 -1
- package/esm2022/controls/grid/gridcolumnaction.mjs +1 -1
- package/esm2022/controls/grid/gridcolumnbase.mjs +16 -14
- package/esm2022/controls/grid/model.mjs +1 -1
- package/esm2022/controls/grid/paging.mjs +1 -1
- package/esm2022/controls/input/input.mjs +1 -1
- package/esm2022/controls/input/inputarea.mjs +1 -1
- package/esm2022/controls/input/inputcurrency.mjs +1 -1
- package/esm2022/controls/input/inputdecimal.mjs +1 -1
- package/esm2022/controls/input/inputemail.mjs +1 -1
- package/esm2022/controls/input/inputinteger.mjs +1 -1
- package/esm2022/controls/input/inputpassword.mjs +1 -1
- package/esm2022/controls/input/inputsearch.mjs +1 -1
- package/esm2022/controls/layout/formlayout.mjs +1 -1
- package/esm2022/controls/list/buildvaluestring.mjs +1 -1
- package/esm2022/controls/list/dropdown.mjs +1 -1
- package/esm2022/controls/list/dropdownoptions.mjs +1 -1
- package/esm2022/controls/list/listbox.mjs +1 -1
- package/esm2022/controls/multilanguage/multilanguageinput.mjs +1 -1
- package/esm2022/controls/multilanguage/multilanguageinputarea.mjs +1 -1
- package/esm2022/controls/static/formcontainer.mjs +1 -1
- package/esm2022/controls/static/staticlabel.mjs +1 -1
- package/esm2022/controls/tabs/tab.mjs +1 -1
- package/esm2022/controls/tabs/tabitem.mjs +1 -1
- package/esm2022/controls/tinymce/tinymce.mjs +1 -1
- package/esm2022/controls/tinymce/tinymcedialogsettings.mjs +1 -1
- package/esm2022/controls/tooltip/tooltip.mjs +1 -1
- package/esm2022/controls/treeview/treeview.mjs +6 -6
- package/esm2022/controls/upload/dropzonemultiple.mjs +1 -1
- package/esm2022/controls/upload/dropzonesingle.mjs +1 -1
- package/esm2022/controls/upload/uploadmultiple.mjs +1 -1
- package/esm2022/controls/upload/uploadsingle.mjs +1 -1
- package/esm2022/controls/validation/validationsummary.mjs +1 -1
- package/esm2022/controls/wizard/wizard.mjs +1 -1
- package/esm2022/controls/wizard/wizarditem.mjs +1 -1
- package/esm2022/enums/ControlHeight.mjs +1 -1
- package/esm2022/enums/IconType.mjs +1 -1
- package/esm2022/models/languagemodel.mjs +1 -1
- package/esm2022/services/sac-configuration.service.mjs +1 -1
- package/esm2022/services/sac-filebrowser.service.mjs +1 -1
- package/esm2022/services/sac-icon.service.mjs +1 -1
- package/esm2022/services/sac-language.service.mjs +1 -1
- package/esm2022/services/sac-localisation.service.mjs +1 -1
- package/esm2022/services/sac-validationkey.service.mjs +1 -1
- package/esm2022/utilities/convertion.mjs +1 -1
- package/esm2022/utilities/datatypes.mjs +1 -1
- package/esm2022/utilities/enums.mjs +1 -1
- package/esm2022/utilities/guid.mjs +1 -1
- package/esm2022/utilities/interpolation.mjs +1 -1
- package/esm2022/utilities/popuphelper.mjs +1 -1
- package/esm2022/utilities/positioning.mjs +1 -1
- package/esm2022/utilities/testingattribute.pipe.mjs +1 -1
- package/esm2022/validation/email.validator.mjs +1 -1
- package/esm2022/validation/equals.validator.mjs +1 -1
- package/esm2022/validation/invaliddate.validator.mjs +1 -1
- package/esm2022/validation/isDateValid.mjs +1 -1
- package/esm2022/validation/maxdate.validator.mjs +1 -1
- package/esm2022/validation/maxtime.validator.mjs +1 -1
- package/esm2022/validation/maxvalue.validator.mjs +1 -1
- package/esm2022/validation/mindate.validator.mjs +1 -1
- package/esm2022/validation/minfiles.validator.mjs +1 -1
- package/esm2022/validation/mintextlength.validator.mjs +1 -1
- package/esm2022/validation/mintime.validator.mjs +1 -1
- package/esm2022/validation/minvalue.validator.mjs +1 -1
- package/esm2022/validation/multilanguagerequired.validator.mjs +1 -1
- package/esm2022/validation/multilanguagerequiredany.validator.mjs +1 -1
- package/esm2022/validation/notequals.validator.mjs +1 -1
- package/esm2022/validation/pattern.validator.mjs +1 -1
- package/esm2022/validation/required.validator.mjs +1 -1
- package/esm2022/validation/validation.mjs +1 -1
- package/esm2022/validation/validationerrorcreator.mjs +1 -1
- package/esm2022/validation/validationerroritem.mjs +1 -1
- package/fesm2022/simpleangularcontrols-sac-common.mjs +668 -666
- package/fesm2022/simpleangularcontrols-sac-common.mjs.map +1 -1
- package/package.json +1 -1
- package/simpleangularcontrols-sac-common-16.0.0-rc.22.tgz +0 -0
- package/simpleangularcontrols-sac-common-16.0.0-rc.21.tgz +0 -0
|
@@ -143,4 +143,4 @@ node.IsExpanded=true;cov_13aj6impkv().s[148]++;for(const item of node.ChildNodes
|
|
|
143
143
|
*/resetNodeEditMode(node){cov_13aj6impkv().f[48]++;cov_13aj6impkv().s[153]++;if(node===null){cov_13aj6impkv().b[40][0]++;cov_13aj6impkv().s[154]++;this.resetNodeEditMode(this.rootNode);}else{cov_13aj6impkv().b[40][1]++;cov_13aj6impkv().s[155]++;node.IsEditMode=false;cov_13aj6impkv().s[156]++;if(node.ChildNodes){cov_13aj6impkv().b[41][0]++;cov_13aj6impkv().s[157]++;node.ChildNodes.forEach(itm=>{cov_13aj6impkv().f[49]++;cov_13aj6impkv().s[158]++;return this.resetNodeEditMode(itm);});}else{cov_13aj6impkv().b[41][1]++;}}}/**
|
|
144
144
|
* Setzt den Pfad in allen Nodes
|
|
145
145
|
*/setPathToAllNodes(){cov_13aj6impkv().f[50]++;cov_13aj6impkv().s[159]++;this.rootNode.ChildNodes.forEach(itm=>{cov_13aj6impkv().f[51]++;cov_13aj6impkv().s[160]++;this.fillPath(itm,'');});}static{cov_13aj6impkv().s[161]++;this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"16.2.12",ngImport:i0,type:SacFileBrowserCommon,deps:[{token:i1.HttpClient},{token:i0.Injector}],target:i0.ɵɵFactoryTarget.Directive});}static{cov_13aj6impkv().s[162]++;this.ɵdir=i0.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"16.2.12",type:SacFileBrowserCommon,inputs:{allowedtypes:"allowedtypes",allowfiledelete:"allowfiledelete",allowfilerename:"allowfilerename",allowfileupload:"allowfileupload",allowfoldercreate:"allowfoldercreate",allowfolderdelete:"allowfolderdelete",allowfolderrename:"allowfolderrename",apiurl:"apiurl",selectedfile:"selectedfile"},outputs:{file:"file"},host:{listeners:{"document:click":"exitEditMode($event.target)"}},ngImport:i0});}}export{SacFileBrowserCommon};cov_13aj6impkv().s[163]++;i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"16.2.12",ngImport:i0,type:SacFileBrowserCommon,decorators:[{type:Directive}],ctorParameters:function(){cov_13aj6impkv().f[52]++;cov_13aj6impkv().s[164]++;return[{type:i1.HttpClient},{type:i0.Injector}];},propDecorators:{allowedtypes:[{type:Input}],allowfiledelete:[{type:Input}],allowfilerename:[{type:Input}],allowfileupload:[{type:Input}],allowfoldercreate:[{type:Input}],allowfolderdelete:[{type:Input}],allowfolderrename:[{type:Input}],apiurl:[{type:Input}],file:[{type:Output}],selectedfile:[{type:Input}],exitEditMode:[{type:HostListener,args:['document:click',['$event.target']]}]}});//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3Nlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1jb21tb24vc3JjL2NvbXBvbmVudHMvYnJvd3Nlci9icm93c2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLFlBQVksRUFFWixLQUFLLEVBRUwsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBTXZCLE9BQU8sRUFDTCxlQUFlLEVBQ2YsdUJBQXVCLEVBQ3ZCLHdCQUF3QixFQUN4QixxQkFBcUIsRUFDckIsOEJBQThCLEdBQy9CLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUNMLHNCQUFzQixFQUN0Qiw0QkFBNEIsR0FDN0IsTUFBTSx3Q0FBd0MsQ0FBQztBQUNoRCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7O0FBTXhGOztHQUVHO0FBQ0gsTUFDc0Isb0JBQW9CO0lBb0d4Qyx3QkFBd0I7SUFFeEIsdUJBQXVCO0lBRXZCOzs7O09BSUc7SUFDSCxZQUFZLFVBQXNCLEVBQUUsUUFBa0I7UUFsR3REOztXQUVHO1FBQ0ssbUJBQWMsR0FBa0IsSUFBSSxDQUFDO1FBRTdDOzs7V0FHRztRQUVJLGlCQUFZLEdBQVcsRUFBRSxDQUFDO1FBQ2pDOztXQUVHO1FBRUksb0JBQWUsR0FBWSxJQUFJLENBQUM7UUFDdkM7O1dBRUc7UUFFSSxvQkFBZSxHQUFZLElBQUksQ0FBQztRQUN2Qzs7V0FFRztRQUVJLG9CQUFlLEdBQVksSUFBSSxDQUFDO1FBQ3ZDOztXQUVHO1FBRUksc0JBQWlCLEdBQVksSUFBSSxDQUFDO1FBQ3pDOztXQUVHO1FBRUksc0JBQWlCLEdBQVksSUFBSSxDQUFDO1FBQ3pDOztXQUVHO1FBRUksc0JBQWlCLEdBQVksSUFBSSxDQUFDO1FBTXpDOztXQUVHO1FBRUksU0FBSSxHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO1FBTS9EOztX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QUUsRUFBRTtZQUN2QyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN6QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7K0dBMXFCbUIsb0JBQW9CO21HQUFwQixvQkFBb0I7O1NBQXBCLG9CQUFvQjs0RkFBcEIsb0JBQW9CO2tCQUR6QyxTQUFTO3dIQXNCRCxZQUFZO3NCQURsQixLQUFLO2dCQU1DLGVBQWU7c0JBRHJCLEtBQUs7Z0JBTUMsZUFBZTtzQkFEckIsS0FBSztnQkFNQyxlQUFlO3NCQURyQixLQUFLO2dCQU1DLGlCQUFpQjtzQkFEdkIsS0FBSztnQkFNQyxpQkFBaUI7c0JBRHZCLEtBQUs7Z0JBTUMsaUJBQWlCO3NCQUR2QixLQUFLO2dCQU1DLE1BQU07c0JBRFosS0FBSztnQkFNQyxJQUFJO3NCQURWLE1BQU07Z0JBNkVJLFlBQVk7c0JBRHRCLEtBQUs7Z0JBeUZDLFlBQVk7c0JBSmxCLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5qZWN0b3IsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJU2FjRmlsZUJyb3dzZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9JU2FjRmlsZUJyb3dzZXJTZXJ2aWNlJztcbmltcG9ydCB7IElTYWNJY29uU2VydmljZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvSVNhY0ljb25TZXJ2aWNlJztcbmltcG9ydCB7IElTYWNMb2NhbGlzYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9JU2FjTG9jYWxpc2F0aW9uU2VydmljZSc7XG5pbXBvcnQgeyBJU2FjVmFsaWRhdGlvbktleVNlcnZpY2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lTYWNWYWxpZGF0aW9uS2V5U2VydmljZSc7XG5pbXBvcnQge1xuICBTQUNJQ09OX1NFUlZJQ0UsXG4gIFNBQ0xPQ0FMSVNBVElPTl9TRVJWSUNFLFxuICBTQUNWQUxJREFUSU9OS0VZX1NFUlZJQ0UsXG4gIFNhY0RlZmF1bHRJY29uU2VydmljZSxcbiAgU2FjRGVmYXVsdFZhbGlkYXRpb25LZXlTZXJ2aWNlLFxufSBmcm9tICcuLi8uLi9zZXJ2aWNlcyc7XG5pbXBvcnQge1xuICBTQUNGSUxFQlJPV1NFUl9TRVJWSUNFLFxuICBTYWNEZWZhdWx0RmlsZUJyb3dzZXJTZXJ2aWNlLFxufSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9zYWMtZmlsZWJyb3dzZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTYWNEZWZhdWx0TG9jYWxpc2F0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3NhYy1sb2NhbGlzYXRpb24uc2VydmljZSc7XG5pbXBvcnQgeyBJQnJvd3NlckZpbGUgfSBmcm9tICcuL21vZGVscy9icm93c2VyZmlsZSc7XG5pbXBvcnQgeyBJQnJvd3NlckZpbGVSZXNwb25zZSB9IGZyb20gJy4vbW9kZWxzL2Jyb3dzZXJmaWxlcmVzcG9uc2UnO1xuaW1wb3J0IHsgSUJyb3dzZXJOb2RlIH0gZnJvbSAnLi9tb2RlbHMvYnJvd3Nlcm5vZGUnO1xuaW1wb3J0IHsgSUJyb3dzZXJOb2RlUmVzcG9uc2UgfSBmcm9tICcuL21vZGVscy9icm93c2Vybm9kZXJlc3BvbnNlJztcblxuLyoqXG4gKiBCYXNlIENvbXBvbmVudCBmw7xyIEZpbGUgQnJvd3NlclxuICovXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTYWNGaWxlQnJvd3NlckNvbW1vbiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8vICNyZWdpb24gUHJvcGVydGllc1xuXG4gIC8qKlxuICAgKiBTZXJ2aWNlIGbDvHIgRmlsZSBCcm93c2VyIFp1Z3JpZmYgKEJhY2tlbmQpXG4gICAqL1xuICBwcml2YXRlIGJyb3dzZXJTZXJ2aWNlOiBJU2FjRmlsZUJyb3dzZXJTZXJ2aWNlO1xuICAvKipcbiAgICogSWNvbiBzZXJ2aWNlIHRvIHJlY2VpdmUgaWNvbiBjbGFzc2VzIGZvciB1aVxuICAgKi9cbiAgcHJpdmF0ZSBpY29uU2VydmljZTogSVNhY0ljb25TZXJ2aWNlO1xuICAvKipcbiAgICogRmlsZSB3ZWxjaGVzIGJlaW0gc3RhcnRlbiBkZXMgQnJvd3NlcnMgYmVyZWl0cyBzZWxla3RpZXJ0IGlzdFxuICAgKi9cbiAgcHJpdmF0ZSBwcmVzZWxlY2VkZmlsZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgLyoqXG4gICAqIEVybGF1YnRlIERhdGVpZXJ3ZWl0ZXJ1bmdlbiBmw7xyIEZpbGVhdXN3YWhsIHVuZCBVcGxvYWQuIERhdGVpZXJ3ZWl0ZXJ1bmcgbWl0IFB1bmt0IHVuZFxuICAgKiBnZXRyZW5udCBkdXJjaCBLb21tYSBmw7xyIG1laHIgYWxzIGVpbmUgRXJ3ZWl0ZXJ1bmcgKEV4YW1wbGU6IFwiLmpwZywuZ2lmXCIpXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYWxsb3dlZHR5cGVzOiBzdHJpbmcgPSAnJztcbiAgLyoqXG4gICAqIEVybGF1YnQgZGFzIGzDtnNjaGVuIGVpbmVyIERhdGVpXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYWxsb3dmaWxlZGVsZXRlOiBib29sZWFuID0gdHJ1ZTtcbiAgLyoqXG4gICAqIEVybGF1YnQgZGFzIHVtYmVuZW5uZW4gZWluZXIgRGF0ZWlcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhbGxvd2ZpbGVyZW5hbWU6IGJvb2xlYW4gPSB0cnVlO1xuICAvKipcbiAgICogRXJsYXVidCBkZW4gVXBsb2FkIHZvbiBEYXRlaWVuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYWxsb3dmaWxldXBsb2FkOiBib29sZWFuID0gdHJ1ZTtcbiAgLyoqXG4gICAqIEVybGF1YnQgZGFzIGVyc3RlbGxlbiBlaW5lcyBuZXVlbiBPcmRuZXJzXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYWxsb3dmb2xkZXJjcmVhdGU6IGJvb2xlYW4gPSB0cnVlO1xuICAvKipcbiAgICogRXJsYXVidCBkYXMgbMO2c2NoZW4gZWluZXMgT3JkbmVyc1xuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGFsbG93Zm9sZGVyZGVsZXRlOiBib29sZWFuID0gdHJ1ZTtcbiAgLyoqXG4gICAqIEVybGF1YnQgZGFzIFVtYmVuZW5uZW4gZWluZXMgT3JkbmVyc1xuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGFsbG93Zm9sZGVycmVuYW1lOiBib29sZWFuID0gdHJ1ZTtcbiAgLyoqXG4gICAqIFVSTCBmw7xyIEJhY2tlbmQgQVBJXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYXBpdXJsOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBPdXRwdXQgRW1pdHRlciB3ZW5uIEZpbGUgc2VsZWt0aWVydCB3aXJkLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBmaWxlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xuXG4gIC8qKlxuICAgKiBTZXJ2aWNlIGbDvHIgRXJyb3IgTG9jYWxpc2F0aW9uXG4gICAqL1xuICBwdWJsaWMgbG5nUmVzb3VyY2VTZXJ2aWNlOiBJU2FjTG9jYWxpc2F0aW9uU2VydmljZTtcbiAgLyoqXG4gICAqIFJvb3QgTm9kZSBJdGVtIGbDvHIgVHJlZVxuICAgKi9cbiAgcHVibGljIHJvb3ROb2RlOiBJQnJvd3Nlck5vZGUgPSB7XG4gICAgTmFtZTogJycsXG4gICAgQ2hpbGROb2RlczogW10sXG4gICAgRmlsZXM6IFtdLFxuICAgIElzRXhwYW5kZWQ6IHRydWUsXG4gICAgSXNFZGl0TW9kZTogZmFsc2UsXG4gICAgSXNOZXdOb2RlOiBmYWxzZSxcbiAgICBQYXRoOiAnJyxcbiAgfTtcbiAgLyoqXG4gICAqIFNlbGVjdGVkIEZpbGUgTmFtZVxuICAgKi9cbiAgcHVibGljIHNlbGVjdGVkRmlsZTogc3RyaW5nO1xuICAvKipcbiAgICogU2VsZWN0ZWQgRmlsZSBJdGVtXG4gICAqL1xuICBwdWJsaWMgc2VsZWN0ZWRGaWxlSXRlbTogSUJyb3dzZXJGaWxlID0gbnVsbDtcbiAgLyoqXG4gICAqIFNlbGVjdGVkIE5vZGUgSXRlbVxuICAgKi9cbiAgcHVibGljIHNlbGVjdGVkTm9kZTogSUJyb3dzZXJOb2RlID0gbnVsbDtcbiAgLyoqXG4gICAqIExpc3RlIHZvbiBVcGxvYWRzXG4gICAqL1xuICBwdWJsaWMgdXBsb2Fkczogc3RyaW5nW10gPSBbXTtcbiAgLyoqXG4gICAqIFNlcnZpY2UgdG8gcmVjZWl2ZSBzdGFuZGFyZCB2YWxpZGF0aW9uIG1lc3NhZ2Uga2V5cyBhbmQgdGV4dHNcbiAgICovXG4gIHB1YmxpYyB2YWxpZGF0aW9uS2V5U2VydmljZTogSVNhY1ZhbGlkYXRpb25LZXlTZXJ2aWNlO1xuXG4gIC8vICNlbmRyZWdpb24gUHJvcGVydGllc1xuXG4gIC8vICNyZWdpb24gQ29uc3RydWN0b3JzXG5cbiAgLyoqXG4gICAqIEtvbnN0cnVrdG9yXG4gICAqIEBwYXJhbSBodHRwY2xpZW50IEFuZ3VsYXIgSFRUUCBDbGllbnRcbiAgICogQHBhcmFtIGluamVjdG9yIFNlcnZpY2UgSW5qZWN0b3JcbiAgICovXG4gIGNvbnN0cnVjdG9yKGh0dHBjbGllbnQ6IEh0dHBDbGllbnQsIGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgIHRoaXMuYnJvd3NlclNlcnZpY2UgPSBpbmplY3Rvci5nZXQoXG4gICAgICBTQUNGSUxFQlJPV1NFUl9TRVJWSUNFLFxuICAgICAgbmV3IFNhY0RlZmF1bHRGaWxlQnJvd3NlclNlcnZpY2UoaHR0cGNsaWVudClcbiAgICApO1xuICAgIHRoaXMudmFsaWRhdGlvbktleVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoXG4gICAgICBTQUNWQUxJREFUSU9OS0VZX1NFUlZJQ0UsXG4gICAgICBuZXcgU2FjRGVmYXVsdFZhbGlkYXRpb25LZXlTZXJ2aWNlKClcbiAgICApO1xuICAgIHRoaXMubG5nUmVzb3VyY2VTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KFxuICAgICAgU0FDTE9DQUxJU0FUSU9OX1NFUlZJQ0UsXG4gICAgICBuZXcgU2FjRGVmYXVsdExvY2FsaXNhdGlvblNlcnZpY2UodGhpcy52YWxpZGF0aW9uS2V5U2VydmljZSlcbiAgICApO1xuXG4gICAgdGhpcy5pY29uU2VydmljZSA9IGluamVjdG9yLmdldChcbiAgICAgIFNBQ0lDT05fU0VSVklDRSxcbiAgICAgIG5ldyBTYWNEZWZhdWx0SWNvblNlcnZpY2UoKVxuICAgICk7XG4gIH1cblxuICAvLyAjZW5kcmVnaW9uIENvbnN0cnVjdG9yc1xuXG4gIC8vICNyZWdpb24gUHVibGljIEdldHRlcnMgQW5kIFNldHRlcnNcblxuICAvKipcbiAgICogU2V0enQgZGVuIFNlbGVjZWQgTm9kZSDDvGJlciBkZW4gUGZhZFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBzZWxlY3RlZGZpbGUodjogc3RyaW5nIHwgbnVsbCkge1xuICAgIGNvbnN0IHNlbGVjdGVkbm9kZSA9IHRoaXMuZmluZFNlbGVjdGVkTm9kZUJ5UGF0aCh0aGlzLnJvb3ROb2RlLCB2KTtcblxuICAgIGlmIChzZWxlY3RlZG5vZGUgIT09IG51bGwpIHtcbiAgICAgIHRoaXMuc2VsZWN0Tm9kZShzZWxlY3RlZG5vZGUpO1xuICAgIH1cblxuICAgIHRoaXMucHJlc2VsZWNlZGZpbGUgPSB2O1xuICB9XG5cbiAgLyoqXG4gICAqIENTUyBpY29uIGNsYXNzIGZvciBkZWxldGUgaWNvblxuICAgKiBAcmV0dXJucyBjc3MgY2xhc3Mgd2l0aCBpY29uXG4gICAqL1xuICBwdWJsaWMgZ2V0IGljb25EZWxldGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pY29uU2VydmljZS5Ccm93c2VyQ29tcG9uZW50RGVsZXRlSWNvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDU1MgaWNvbiBjbGFzcyBmb3IgZWRpdCBpY29uXG4gICAqIEByZXR1cm5zIGNzcyBjbGFzcyB3aXRoIGljb25cbiAgICovXG4gIHB1YmxpYyBnZXQgaWNvbkVkaXQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pY29uU2VydmljZS5Ccm93c2VyQ29tcG9uZW50RWRpdEljb247XG4gIH1cblxuICAvKipcbiAgICogQ1NTIGljb24gZm9yIGZvbGRlcnMgaW4gdHJlZSB0aGVyZSBhcmUgY29sbGFic2VkXG4gICAqIEByZXR1cm5zIGNzcyBjbGFzcyB3aXRoIGljb25cbiAgICovXG4gIHB1YmxpYyBnZXQgaWNvbkZvbGRlckNvbGxhYnNlZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmljb25TZXJ2aWNlLkJyb3dzZXJDb21wb25lbnRGb2xkZXJDbG9zZWRJY29uO1xuICB9XG5cbiAgLyoqXG4gICAqIENTUyBpY29uIGNsYXNzIGZvciBmb2xkZXJzIHdpdGhvdXQgc3ViZm9sZGVyc1xuICAgKiBAcmV0dXJucyBjc3MgY2xhc3Mgd2l0aCBpY29uXG4gICAqL1xuICBwdWJsaWMgZ2V0IGljb25Gb2xkZXJFbXB0eSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmljb25TZXJ2aWNlLkJyb3dzZXJDb21wb25lbnRGb2xkZXJFbXB0eUljb247XG4gIH1cblxuICAvKipcbiAgICogQ1NTIGljb24gZm9yIG5ldyBmb2xkZXJzIGFjdGlvblxuICAgKiBAcmV0dXJucyBjc3MgY2xhc3Mgd2l0aCBpY29uXG4gICAqL1xuICBwdWJsaWMgZ2V0IGljb25Gb2xkZXJOZXcoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pY29uU2VydmljZS5Ccm93c2VyQ29tcG9uZW50Rm9sZGVyTmV3SWNvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDU1MgaWNvbiBmb3IgZm9sZGVycyBpbiB0cmVlIHRoZXJlIGFyZSBleHBhbmRlZFxuICAgKiBAcmV0dXJucyBjc3MgY2xhc3Mgd2l0aCBpY29uXG4gICAqL1xuICBwdWJsaWMgZ2V0IGljb25Gb2xkZXJPcGVuKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaWNvblNlcnZpY2UuQnJvd3NlckNvbXBvbmVudEZvbGRlck9wZW5JY29uO1xuICB9XG5cbiAgLyoqXG4gICAqIENTUyBpY29uIGNsYXNzIGZvciByZWZyZXNoIGljb25cbiAgICogQHJldHVybnMgY3NzIGNsYXNzIHdpdGggaWNvblxuICAgKi9cbiAgcHVibGljIGdldCBpY29uUmVmcmVzaCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmljb25TZXJ2aWNlLkJyb3dzZXJDb21wb25lbnRSZWZyZXNoSWNvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXR0ZXIgZsO8ciBTZWxlY3RlZCBGaWxlLiBJc3QgYW4gSW5wdXQgUHJvcGVydHkgZ2VidW5kZW5cbiAgICovXG4gIHB1YmxpYyBnZXQgc2VsZWN0ZWRmaWxlKCk6IHN0cmluZyB8IG51bGwge1xuICAgIGlmICh0aGlzLnNlbGVjdEZpbGUgJiYgdGhpcy5zZWxlY3RGaWxlLmxlbmd0aCA+IDApIHtcbiAgICAgIHJldHVybiB0aGlzLnNlbGVjdGVkRmlsZTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG5cbiAgLy8gI2VuZHJlZ2lvbiBQdWJsaWMgR2V0dGVycyBBbmQgU2V0dGVyc1xuXG4gIC8vICNyZWdpb24gUHVibGljIE1ldGhvZHNcblxuICAvKipcbiAgICogSG9zdExpc3RlbmVyIHdlbGNoZXIgZGVuIEVkaXQgTW9kZSBiZWkgYWxsZW4gRmlsZXMgdW5kIE5vZGVzIGJlZW5kZXQuXG4gICAqL1xuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50LnRhcmdldCddKVxuICAvKipcbiAgICogQ2xpY2sgRXZlbnRcbiAgICovXG4gIHB1YmxpYyBleGl0RWRpdE1vZGUodGFyZ2V0RWxlbWVudCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnNlbGVjdGVkTm9kZSkge1xuICAgICAgdGhpcy5zZWxlY3RlZE5vZGUuRmlsZXMuZm9yRWFjaCgoaXRtKSA9PiAoaXRtLklzRWRpdE1vZGUgPSBmYWxzZSkpO1xuXG4gICAgICBpZiAoXG4gICAgICAgICF0aGlzLnNlbGVjdGVkTm9kZSB8fFxuICAgICAgICB0aGlzLnNlbGVjdGVkTm9kZS5OYW1lID09PSBudWxsIHx8XG4gICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlLk5hbWUubGVuZ3RoID09PSAwXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5jbGVhck5ld0NoaWxkTm9kZXModGhpcy5yb290Tm9kZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5yZXNldE5vZGVFZGl0TW9kZShudWxsKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMw7ZzY2h0IGVpbiBGaWxlXG4gICAqIEBwYXJhbSBmaWxlIEZpbGUgd2VsY2hlcyBnZWzDtnNjaHQgd2VyZGVuIHNvbGxcbiAgICovXG4gIHB1YmxpYyBkZWxldGVGaWxlKGZpbGU6IElCcm93c2VyRmlsZSk6IHZvaWQge1xuICAgIHRoaXMuY29uZmlybURlbGV0ZUZpbGUoZmlsZSkuc3Vic2NyaWJlKChjb25maXJtKSA9PiB7XG4gICAgICBpZiAoY29uZmlybSkge1xuICAgICAgICB0aGlzLmJyb3dzZXJTZXJ2aWNlXG4gICAgICAgICAgLkRlbGV0ZUZpbGUoXG4gICAgICAgICAgICB0aGlzLmFwaXVybCxcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlLlBhdGggKyAnLycgKyBmaWxlLkZpbGVuYW1lLFxuICAgICAgICAgICAgdGhpcy5hbGxvd2VkdHlwZXNcbiAgICAgICAgICApXG4gICAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3NlckZpbGVSZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUuRmlsZXMgPSByZXN1bHQuRmlsZXM7XG4gICAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogTMO2c2NodCBlaW5lbiBOb2RlXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgd2VsY2hlciBnZWzDtnNjaHQgd2VyZGVuIHNvbGxcbiAgICovXG4gIHB1YmxpYyBkZWxldGVOb2RlKG5vZGU6IElCcm93c2VyTm9kZSk6IHZvaWQge1xuICAgIHRoaXMuY29uZmlybURlbGV0ZU5vZGUobm9kZSkuc3Vic2NyaWJlKChjb25maXJtKSA9PiB7XG4gICAgICBpZiAoY29uZmlybSkge1xuICAgICAgICB0aGlzLmJyb3dzZXJTZXJ2aWNlXG4gICAgICAgICAgLkRlbGV0ZU5vZGUodGhpcy5hcGl1cmwsIG5vZGUuUGF0aClcbiAgICAgICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IElCcm93c2VyTm9kZVJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBwYXJlbnROb2RlID0gdGhpcy5maW5kUGFyZW50Tm9kZSh0aGlzLnJvb3ROb2RlLCBub2RlKTtcbiAgICAgICAgICAgIHBhcmVudE5vZGUuQ2hpbGROb2RlcyA9IHJlc3VsdC5Ob2RlLkNoaWxkTm9kZXM7XG5cbiAgICAgICAgICAgIHRoaXMucm9vdE5vZGUuQ2hpbGROb2Rlcy5mb3JFYWNoKChpdG0pID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5maWxsUGF0aChpdG0sICcnKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICB0aGlzLnNlbGVjdE5vZGUocGFyZW50Tm9kZSk7XG4gICAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0enQgZWluIEZpbGUgaW4gZGVuIEVkaXQgTW9kZVxuICAgKiBAcGFyYW0gZmlsZSBGaWxlIHdlbGNoZXMgaW4gZGVuIEVkaXQgTW9kZSBnZXNldHp0IHdlcmRlbiBzb2xsXG4gICAqL1xuICBwdWJsaWMgZWRpdEZpbGUoZmlsZTogSUJyb3dzZXJGaWxlKTogdm9pZCB7XG4gICAgZmlsZS5Jc0VkaXRNb2RlID0gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXR6dCBlaW5lbiBOb2RlIGluIGRlbiBFZGl0IE1vZGVcbiAgICogQHBhcmFtIG5vZGUgTm9kZSB3ZWxjaGVyIGJlYXJiZWl0ZXQgd2VyZGVuIHNvbGxcbiAgICovXG4gIHB1YmxpYyBlZGl0Tm9kZShub2RlOiBJQnJvd3Nlck5vZGUpOiB2b2lkIHtcbiAgICBub2RlLklzRWRpdE1vZGUgPSB0cnVlO1xuICB9XG5cbiAgLyoqXG4gICAqIEVyemV1Z3QgZWluZW4gbmV1ZW4gTm9kZSBpbSBUcmVlXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgdW50ZXIgd2VsY2hlbSBlaW4gbmV1ZXIgTm9kZSBlcnN0ZWxsdCB3ZXJkZW4gc29sbFxuICAgKi9cbiAgcHVibGljIG5ld05vZGUobm9kZTogSUJyb3dzZXJOb2RlKSB7XG4gICAgY29uc3QgaXRlbTogSUJyb3dzZXJOb2RlID0ge1xuICAgICAgQ2hpbGROb2RlczogW10sXG4gICAgICBGaWxlczogW10sXG4gICAgICBJc0VkaXRNb2RlOiBmYWxzZSxcbiAgICAgIElzRXhwYW5kZWQ6IGZhbHNlLFxuICAgICAgTmFtZTogJycsXG4gICAgICBQYXRoOiBub2RlLlBhdGgsXG4gICAgICBJc05ld05vZGU6IHRydWUsXG4gICAgfTtcblxuICAgIG5vZGUuQ2hpbGROb2Rlcy5wdXNoKGl0ZW0pO1xuICAgIHRoaXMuc2VsZWN0Tm9kZShpdGVtKTtcbiAgICB0aGlzLmVkaXROb2RlKGl0ZW0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXQgRXZlbnQgZGVyIEtvbXBvbmVudGVcbiAgICovXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmJyb3dzZXJTZXJ2aWNlXG4gICAgICAuR2V0Tm9kZSh0aGlzLmFwaXVybCwgJycsIHRoaXMuYWxsb3dlZHR5cGVzKVxuICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3Nlck5vZGVSZXNwb25zZSkgPT4ge1xuICAgICAgICB0aGlzLnJvb3ROb2RlID0ge1xuICAgICAgICAgIE5hbWU6IHJlc3VsdC5Ob2RlLk5hbWUsXG4gICAgICAgICAgRmlsZXM6IHJlc3VsdC5Ob2RlLkZpbGVzLFxuICAgICAgICAgIENoaWxkTm9kZXM6IHJlc3VsdC5Ob2RlLkNoaWxkTm9kZXMsXG4gICAgICAgICAgSXNFeHBhbmRlZDogdHJ1ZSxcbiAgICAgICAgICBJc0VkaXRNb2RlOiBmYWxzZSxcbiAgICAgICAgICBJc05ld05vZGU6IGZhbHNlLFxuICAgICAgICAgIFBhdGg6ICcvJyxcbiAgICAgICAgfTtcblxuICAgICAgICB0aGlzLnNldFBhdGhUb0FsbE5vZGVzKCk7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlID0gdGhpcy5yb290Tm9kZTtcblxuICAgICAgICAvLyBTZWxlY3RlZCBGaWxlIGVybmV1dCBzZXR6ZW4sIHdlbm4gUHJvcGVydHkgZ2VzZXR6dCB3dXJkZSBiZXZvciBEYXRlbiB2b20gU2VydmljZSBnZWxhZGVuIHd1cmRlbi5cbiAgICAgICAgaWYgKHRoaXMucHJlc2VsZWNlZGZpbGUgIT09IG51bGwgJiYgdGhpcy5wcmVzZWxlY2VkZmlsZS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZGZpbGUgPSB0aGlzLnByZXNlbGVjZWRmaWxlO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBa3R1YWxpc2llcnQgZGVuIE5vZGVcbiAgICovXG4gIHB1YmxpYyByZWZyZXNoTm9kZShub2RlOiBJQnJvd3Nlck5vZGUpOiB2b2lkIHtcbiAgICBpZiAoIW5vZGUuSXNFeHBhbmRlZCkge1xuICAgICAgdGhpcy5zd2l0Y2hFeHBhbmROb2RlKG5vZGUpO1xuICAgIH1cblxuICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcbiAgICAgIC5HZXROb2RlKHRoaXMuYXBpdXJsLCBub2RlLlBhdGgsIHRoaXMuYWxsb3dlZHR5cGVzKVxuICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3Nlck5vZGVSZXNwb25zZSkgPT4ge1xuICAgICAgICBub2RlLkNoaWxkTm9kZXMgPSByZXN1bHQuTm9kZS5DaGlsZE5vZGVzO1xuICAgICAgICBub2RlLkZpbGVzID0gcmVzdWx0Lk5vZGUuRmlsZXM7XG5cbiAgICAgICAgdGhpcy5zZXRQYXRoVG9BbGxOb2RlcygpO1xuICAgICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogTWV0aG9kZSB3ZW5uIGVpbmUgRGF0ZWkgdW1iZW5hbm50IHdlcmRlbiBzb2xsXG4gICAqIEBwYXJhbSBmaWxlIEZpbGUgd2VsY2hlcyB1bWJlbmFubnQgd2VyZGVuIHNvbGxcbiAgICogQHBhcmFtIG5ld0ZpbGVuYW1lIE5ldWVyIERhdGVpbmFtZVxuICAgKi9cbiAgcHVibGljIHJlbmFtZUZpbGUoZmlsZTogSUJyb3dzZXJGaWxlLCBuZXdGaWxlbmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgZmlsZS5Jc0VkaXRNb2RlID0gZmFsc2U7XG5cbiAgICBpZiAoIW5ld0ZpbGVuYW1lIHx8IG5ld0ZpbGVuYW1lID09PSBudWxsIHx8IG5ld0ZpbGVuYW1lLmxlbmd0aCA9PT0gMCkge1xuICAgICAgLy8gQ2FuY2VsLCBJbnZhbGlkIEZpbGVuYW1lXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKGZpbGUuRmlsZW5hbWUgIT09IG5ld0ZpbGVuYW1lKSB7XG4gICAgICB0aGlzLmJyb3dzZXJTZXJ2aWNlXG4gICAgICAgIC5SZW5hbWVGaWxlKFxuICAgICAgICAgIHRoaXMuYXBpdXJsLFxuICAgICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlLlBhdGggKyAnLycgKyBmaWxlLkZpbGVuYW1lLFxuICAgICAgICAgIG5ld0ZpbGVuYW1lLFxuICAgICAgICAgIHRoaXMuYWxsb3dlZHR5cGVzXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3NlckZpbGVSZXNwb25zZSkgPT4ge1xuICAgICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlLkZpbGVzID0gcmVzdWx0LkZpbGVzO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTWV0aG9kZSB3ZW5uIGVpbiBOb2RlIHVtYmVuYW5udCB3ZXJkZW4gc29sbFxuICAgKiBAcGFyYW0gbm9kZSBOb2RlIHdlbGNoZXIgdW1iZW5hbm50IHdlcmRlbiBzb2xsXG4gICAqIEBwYXJhbSBuZXdGb2xkZXJuYW1lIE5ldWVyIE9yZG5lcm5hbWVcbiAgICovXG4gIHB1YmxpYyByZW5hbWVOb2RlKG5vZGU6IElCcm93c2VyTm9kZSwgbmV3Rm9sZGVybmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgbm9kZS5Jc0VkaXRNb2RlID0gZmFsc2U7XG5cbiAgICBpZiAoIW5vZGUuSXNOZXdOb2RlKSB7XG4gICAgICBpZiAoXG4gICAgICAgICFuZXdGb2xkZXJuYW1lIHx8XG4gICAgICAgIG5ld0ZvbGRlcm5hbWUgPT09IG51bGwgfHxcbiAgICAgICAgbmV3Rm9sZGVybmFtZS5sZW5ndGggPT09IDBcbiAgICAgICkge1xuICAgICAgICAvLyBDYW5jZWwgUmVuYW1lLiBJbnZhbGlkIEZvbGRlcm5hbWVcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAobm9kZS5OYW1lICE9PSBuZXdGb2xkZXJuYW1lKSB7XG4gICAgICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcbiAgICAgICAgICAuUmVuYW1lTm9kZSh0aGlzLmFwaXVybCwgbm9kZS5QYXRoLCBuZXdGb2xkZXJuYW1lKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdDogSUJyb3dzZXJOb2RlUmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgIG5vZGUuTmFtZSA9IHJlc3VsdC5Ob2RlLk5hbWU7XG5cbiAgICAgICAgICAgIHRoaXMuc2V0UGF0aFRvQWxsTm9kZXMoKTtcbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKFxuICAgICAgICAhbmV3Rm9sZGVybmFtZSB8fFxuICAgICAgICBuZXdGb2xkZXJuYW1lID09PSBudWxsIHx8XG4gICAgICAgIG5ld0ZvbGRlcm5hbWUubGVuZ3RoID09PSAwXG4gICAgICApIHtcbiAgICAgICAgdGhpcy5jbGVhck5ld0NoaWxkTm9kZXModGhpcy5yb290Tm9kZSk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgbm9kZS5OYW1lID0gbmV3Rm9sZGVybmFtZTtcbiAgICAgIG5vZGUuSXNOZXdOb2RlID0gZmFsc2U7XG4gICAgICB0aGlzLmJyb3dzZXJTZXJ2aWNlXG4gICAgICAgIC5TYXZlTm9kZSh0aGlzLmFwaXVybCwgbm9kZS5QYXRoLCBuZXdGb2xkZXJuYW1lKVxuICAgICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IElCcm93c2VyTm9kZVJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgbm9kZS5OYW1lID0gcmVzdWx0Lk5vZGUuTmFtZTtcbiAgICAgICAgICBub2RlLkZpbGVzID0gcmVzdWx0Lk5vZGUuRmlsZXM7XG5cbiAgICAgICAgICB0aGlzLnNldFBhdGhUb0FsbE5vZGVzKCk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBNZXRob2RlIHdlbm4gZWluIEZpbGUgc2VsZWt0aWVydCB3aXJkXG4gICAqIEBwYXJhbSBmaWxlIEZpbGUgd2VsY2hlcyBzZWxla3RpZXJ0IHdpcmRcbiAgICovXG4gIHB1YmxpYyBzZWxlY3RGaWxlKGZpbGU6IElCcm93c2VyRmlsZSkge1xuICAgIGlmICghZmlsZS5Jc0VkaXRNb2RlKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkTm9kZS5GaWxlcy5mb3JFYWNoKChpdG0pID0+IChpdG0uSXNFZGl0TW9kZSA9IGZhbHNlKSk7XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLnNlbGVjdGVkTm9kZS5QYXRoLmVuZHNXaXRoKCcvJykpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRGaWxlID0gdGhpcy5zZWxlY3RlZE5vZGUuUGF0aCArICcvJyArIGZpbGUuRmlsZW5hbWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRGaWxlID0gJy8nICsgZmlsZS5GaWxlbmFtZTtcbiAgICB9XG5cbiAgICB0aGlzLnNlbGVjdGVkRmlsZUl0ZW0gPSBmaWxlO1xuICAgIHRoaXMuZmlsZS5lbWl0KHRoaXMuc2VsZWN0ZWRGaWxlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNZXRob2RlIHdlbm4gZWluIE5vZGUgc2VsZWt0aWVydCB3aXJkXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgd2VsY2hlciBzZWxla3RpZXJ0IHdlcmRlbiBzb2xsXG4gICAqL1xuICBwdWJsaWMgc2VsZWN0Tm9kZShub2RlOiBJQnJvd3Nlck5vZGUpOiB2b2lkIHtcbiAgICBpZiAoIW5vZGUuSXNFeHBhbmRlZCkge1xuICAgICAgdGhpcy5zd2l0Y2hFeHBhbmROb2RlKG5vZGUpO1xuICAgIH1cblxuICAgIC8vIFJlc2V0IHRoZSBFZGl0IE1vZGUgaW4gYWxsIE5vZGVzXG4gICAgdGhpcy5yZXNldE5vZGVFZGl0TW9kZShudWxsKTtcblxuICAgIGlmICghbm9kZS5GaWxlcykge1xuICAgICAgdGhpcy5icm93c2VyU2VydmljZVxuICAgICAgICAuR2V0RmlsZXModGhpcy5hcGl1cmwsIG5vZGUuUGF0aCwgdGhpcy5hbGxvd2VkdHlwZXMpXG4gICAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdDogSUJyb3dzZXJGaWxlUmVzcG9uc2UpID0+IHtcbiAgICAgICAgICBub2RlLkZpbGVzID0gcmVzdWx0LkZpbGVzO1xuICAgICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlID0gbm9kZTtcblxuICAgICAgICAgIGlmICh0aGlzLnByZXNlbGVjZWRmaWxlICE9PSBudWxsICYmIHRoaXMucHJlc2VsZWNlZGZpbGUubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgY29uc3QgZmlsZW5hbWUgPSB0aGlzLnByZXNlbGVjZWRmaWxlLnN1YnN0cmluZyhcbiAgICAgICAgICAgICAgdGhpcy5wcmVzZWxlY2VkZmlsZS5sYXN0SW5kZXhPZignLycpICsgMVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGNvbnN0IGZpbGUgPSBub2RlLkZpbGVzLmZpbmQoKGl0bSkgPT4gaXRtLkZpbGVuYW1lID09PSBmaWxlbmFtZSk7XG4gICAgICAgICAgICBpZiAoZmlsZSkge1xuICAgICAgICAgICAgICB0aGlzLnNlbGVjdEZpbGUoZmlsZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZWxlY3RlZE5vZGUgPSBub2RlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBFeHBhbmQvQ29sbGFic2UgTWV0aG9kZSBmw7xyIE5vZGVzXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgd2VsY2hlciBnZcO2ZmZuZXQgb2RlciBnZXNjaGxvc3NlbiB3ZXJkZW4gc29sbFxuICAgKi9cbiAgcHVibGljIHN3aXRjaEV4cGFuZE5vZGUobm9kZTogSUJyb3dzZXJOb2RlKTogdm9pZCB7XG4gICAgaWYgKG5vZGUuSXNFeHBhbmRlZCkge1xuICAgICAgbm9kZS5Jc0V4cGFuZGVkID0gZmFsc2U7XG4gICAgfSBlbHNlIHtcbiAgICAgIG5vZGUuSXNFeHBhbmRlZCA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZGUgZGllIEF1ZmdlcnVmZW4gd2VyZGVuIG11c3MsIHdlbm4gZWluIFVwbG9hZCBiZWVuZGV0IGlzdC5cbiAgICogQHBhcmFtIHBhcmFtIFBhcmFtZXRlciBkZXMgaG9jaGdlbGFkZW5lbiBGaWxlc1xuICAgKi9cbiAgcHVibGljIHVwbG9hZENvbXBsZXRlKG5vZGU6IElCcm93c2VyTm9kZSwgdXBsb2FkSWRMaXN0OiBzdHJpbmdbXSk6IHZvaWQge1xuICAgIGlmICh1cGxvYWRJZExpc3QgIT09IG51bGwpIHtcbiAgICAgIHVwbG9hZElkTGlzdC5mb3JFYWNoKChlbGVtZW50KSA9PiB7XG4gICAgICAgIGlmICh0aGlzLnVwbG9hZHMuaW5kZXhPZihlbGVtZW50KSA8IDApIHtcbiAgICAgICAgICB0aGlzLnVwbG9hZHMucHVzaChlbGVtZW50KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgY29uc3QgaWQgPSB0aGlzLnVwbG9hZHMucG9wKCk7XG4gICAgaWYgKGlkKSB7XG4gICAgICB0aGlzLmJyb3dzZXJTZXJ2aWNlXG4gICAgICAgIC5TYXZlRmlsZSh0aGlzLmFwaXVybCwgbm9kZS5QYXRoLCBpZCwgdGhpcy5hbGxvd2VkdHlwZXMpXG4gICAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdDogSUJyb3dzZXJGaWxlUmVzcG9uc2UpID0+IHtcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkTm9kZS5GaWxlcyA9IHJlc3VsdC5GaWxlcztcbiAgICAgICAgICB0aGlzLnVwbG9hZGVkRmlsZU1vdmVkKGlkKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLy8gI2VuZHJlZ2lvbiBQdWJsaWMgTWV0aG9kc1xuXG4gIC8vICNyZWdpb24gUHVibGljIEFic3RyYWN0IE1ldGhvZHNcblxuICAvKipcbiAgICogQWJzdHJha3RlIENvbmZpcm0gTWV0aG9kZSB3ZWxjaGUgaW1wbGVtZW50aWVydCB3ZXJkZW4gbXVzcy4gTWV0aG9kZSB3aXJkIGF1ZmdlcnVmZW4sIHdlbm4gZWluZVxuICAgKiBEYXRlaSBnZWzDtnNjaHQgd2VyZGVuIHNvbGwuXG4gICAqIEBwYXJhbSBmaWxlIEZpbGUgZsO8ciB3ZWxjaGVzIGVpbiBEZWxldGUgQ29uZmlybSBlaW5nZWZvcmRlcnQgd2VyZGVuIHNvbGxcbiAgICovXG4gIHB1YmxpYyBhYnN0cmFjdCBjb25maXJtRGVsZXRlRmlsZShmaWxlOiBJQnJvd3NlckZpbGUpOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAvKipcbiAgICogQWJzdHJha3RlIENvbmZpcm0gTWV0aG9kZSB3ZWxjaGUgaW1wbGVtZW50aWVydCB3ZXJkZW4gbXVzcy4gTWV0aG9kZSB3aXJkIGF1ZmdlcnVmZW4sIHdlbm4gZWluXG4gICAqIE9yZG5lciBnZWzDtnNjaHQgd2VyZGVuIHNvbGwuXG4gICAqIEBwYXJhbSBmb2xkZXIgT3JkZXJuIGbDvHIgd2VsY2hlbiBlaW4gRGVsZXRlIENvbmZpcm0gZWluZ2Vmb3JkZXJ0IHdlcmRlbiBzb2xsLlxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGNvbmZpcm1EZWxldGVOb2RlKGZvbGRlcjogSUJyb3dzZXJOb2RlKTogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgLyoqXG4gICAqIEFic3RyYWt0ZSBNZXRob2RlIGRpZSBBdWZnZXJ1ZmVuIHdpcmQsIHdlbm4gZGFzIEhvY2hnZWxhZGVuZSBGaWxlIGF1cyBkZW0gVGVtcCBGb2xkZXIgaW4gZGllXG4gICAqIFN0cnVrdHVyIHZlcnNjaG9iZW4gd3VyZGUuXG4gICAqIEBwYXJhbSB1cGxvYWRpZCBJRCBkZXMgVXBsb2Fkc1xuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IHVwbG9hZGVkRmlsZU1vdmVkKHVwbG9hZGlkOiBzdHJpbmcpOiB2b2lkO1xuXG4gIC8vICNlbmRyZWdpb24gUHVibGljIEFic3RyYWN0IE1ldGhvZHNcblxuICAvLyAjcmVnaW9uIFByaXZhdGUgTWV0aG9kc1xuXG4gIC8qKlxuICAgKiBSZWt1cnNpdmUgTWV0aG9kZSB3ZWxjaGUgYmVpbSBOb2RlIHVuZCBhbGwgc2VpbmVuIENoaWxkcyBuZXVlIE5vZGVzIGVudGZlcm50XG4gICAqIEBwYXJhbSBub2RlIE5vZGUgYmVpIHdlbGNoZW0gYWxsZSBuZXVlbiBOb2RlcyBlbnRmZXJudCB3ZXJkZW4gc29sbC5cbiAgICovXG4gIHByaXZhdGUgY2xlYXJOZXdDaGlsZE5vZGVzKG5vZGU6IElCcm93c2VyTm9kZSkge1xuICAgIG5vZGUuQ2hpbGROb2Rlcy5mb3JFYWNoKChpdG0pID0+IHtcbiAgICAgIGlmIChpdG0uSXNOZXdOb2RlKSB7XG4gICAgICAgIG5vZGUuQ2hpbGROb2Rlcy5zcGxpY2Uobm9kZS5DaGlsZE5vZGVzLmluZGV4T2YoaXRtKSk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBub2RlLkNoaWxkTm9kZXMuZm9yRWFjaCgoaXRtKSA9PiB0aGlzLmNsZWFyTmV3Q2hpbGROb2RlcyhpdG0pKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNZXRob2RlIHdlbGNoZSBkZW4gUGZhZCBmw7xyIGVpbmVuIE5vZGUgZXJ6ZXVndFxuICAgKiBAcGFyYW0gbm9kZSBOb2RlIGbDvHIgd2VsY2hlbiBkZXIgUGZhZCBlcnpldWd0IHdlcmRlbiBzb2xsXG4gICAqIEBwYXJhbSBwYXJlbnRQYXRoIMOcYmVyZ2VvcmRuZXRlciBQZmFkXG4gICAqL1xuICBwcml2YXRlIGZpbGxQYXRoKG5vZGU6IElCcm93c2VyTm9kZSwgcGFyZW50UGF0aDogc3RyaW5nKSB7XG4gICAgbm9kZS5QYXRoID0gcGFyZW50UGF0aCArICcvJyArIG5vZGUuTmFtZTtcbiAgICBub2RlLkNoaWxkTm9kZXMuZm9yRWFjaCgoaXRtKSA9PiB7XG4gICAgICB0aGlzLmZpbGxQYXRoKGl0bSwgbm9kZS5QYXRoKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdWNodCBkZW4gw7xiZXJnZW9yZG5ldGVuIE5vZGUgaW0gVHJlZVxuICAgKiBAcGFyYW0gbm9kZSBBa3R1ZWxsZXIgTm9kZVxuICAgKiBAcGFyYW0gbm9kZVRvRmluZCBOb2RlIHdlbGNoZXIgZ2VmdW5kZW4gd2VyZGVuIHNvbGxcbiAgICogQHJldHVybnMgTm9kZSB3ZW5uIGVyIGdlZnVuZGVuIHd1cmRlLCBhbnNvbnN0ZW4gd2lyZCBOVUxMIHp1csO8Y2tnZWdlYmVuXG4gICAqL1xuICBwcml2YXRlIGZpbmRQYXJlbnROb2RlKFxuICAgIG5vZGU6IElCcm93c2VyTm9kZSxcbiAgICBub2RlVG9GaW5kOiBJQnJvd3Nlck5vZGVcbiAgKTogSUJyb3dzZXJOb2RlIHtcbiAgICBpZiAobm9kZS5DaGlsZE5vZGVzLmluZGV4T2Yobm9kZVRvRmluZCkgPj0gMCkge1xuICAgICAgcmV0dXJuIG5vZGU7XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBjaGlsZCBvZiBub2RlLkNoaWxkTm9kZXMpIHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuZmluZFBhcmVudE5vZGUoY2hpbGQsIG5vZGVUb0ZpbmQpO1xuICAgICAgaWYgKHJlc3VsdCAhPT0gbnVsbCkge1xuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIFN1Y2h0IGVpbmVuIE5vZGUgZ2VtLiBlaW5lbSBVUkwgUGZhZFxuICAgKiBAcGFyYW0gbm9kZSBOb2RlIGluIHdlbGNoZW0gZ2VzdWNodCB3ZXJkZW4gc29sbFxuICAgKiBAcGFyYW0gcGF0aCBQZmFkIG5hY2ggd2VsY2hlbSBnZXN1Y2h0IHdpcmRcbiAgICogQHJldHVybnMgTm9kZSB3ZWxjaGVyIHp1bSBnZXN1Y2h0ZW4gUGZhZCBwYXNzdC4gV2VubiBrZWluIE5vZGUgZ2VmdW5kZW4gd2lyZCwgd2lyZCBOVUxMIHp1csO8Y2tnZWdlYmVuXG4gICAqL1xuICBwcml2YXRlIGZpbmRTZWxlY3RlZE5vZGVCeVBhdGgoXG4gICAgbm9kZTogSUJyb3dzZXJOb2RlLFxuICAgIHBhdGg6IHN0cmluZ1xuICApOiBJQnJvd3Nlck5vZGUge1xuICAgIC8vIENhbmNlbCB3ZW5uIFBmYWQgbmljaHQgZGVmaW5pZXJ0XG4gICAgaWYgKHBhdGggPT09IHVuZGVmaW5lZCB8fCBwYXRoID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICAvLyBQZmFkIGluIEFycmF5IHNwbGl0dGVuIHVuZCBSb290IEZvbGRlcm5hbWUgc2V0emVuXG4gICAgY29uc3QgcGF0aEFycmF5ID0gcGF0aC5zcGxpdCgnLycpO1xuICAgIHBhdGhBcnJheVswXSA9IHRoaXMucm9vdE5vZGUuTmFtZTtcblxuICAgIHJldHVybiB0aGlzLmZpbmRTZWxlY3RlZE5vZGVCeVBhdGhBcnJheShub2RlLCBwYXRoQXJyYXksIDApO1xuICB9XG5cbiAgLyoqXG4gICAqIFN1Y2h0IGVpbmVuIE5vZGUgZ2VtLiBlaW5lbSBBcnJheSB2b24gTm9kZSBOYW1lblxuICAgKiBAcGFyYW0gbm9kZSBOb2RlIGluIHdlbGNoZW0gZ2VzdWNodCB3ZXJkZW4gc29sbFxuICAgKiBAcGFyYW0gcGF0aCBBcnJheSB2b24gTm9kZSBOYW1lbiwgd2VsY2hlIGRpZSBIaXJhcmNoeSBkZXMgUGZhZGVzIGFiYmlsZGVuXG4gICAqIEBwYXJhbSBpbmRleCBBa3R1ZWxsZXIgSW5kZXggaW0gUEFUSCBBcnJheVxuICAgKiBAcmV0dXJucyBOb2RlIHdlbm4gZWluZXIgZ2VmdW5kZW4gd3VyZGUsIGFuc29uc3RlbiBOVUxMXG4gICAqL1xuICBwcml2YXRlIGZpbmRTZWxlY3RlZE5vZGVCeVBhdGhBcnJheShcbiAgICBub2RlOiBJQnJvd3Nlck5vZGUsXG4gICAgcGF0aDogc3RyaW5nW10sXG4gICAgaW5kZXg6IG51bWJlclxuICApOiBJQnJvd3Nlck5vZGUge1xuICAgIC8vIENoZWNrIG9iIE9yZG5lciBrb3JyZWt0LiBMZXR6ZXIgT3JkbmVyIHp1csO8Y2tnZWJlbi4gUGF0aCBMYXN0IEluZGV4IGlzdCBkZXIgRmlsZW5hbWVcbiAgICBpZiAobm9kZS5OYW1lID09PSBwYXRoW2luZGV4XSAmJiBwYXRoLmxlbmd0aCAtIDIgPT09IGluZGV4KSB7XG4gICAgICByZXR1cm4gbm9kZTtcbiAgICB9IGVsc2UgaWYgKG5vZGUuTmFtZSA9PT0gcGF0aFtpbmRleF0pIHtcbiAgICAgIC8vIEV4cGFuZCBOb2RlXG4gICAgICBub2RlLklzRXhwYW5kZWQgPSB0cnVlO1xuICAgICAgZm9yIChjb25zdCBpdGVtIG9mIG5vZGUuQ2hpbGROb2Rlcykge1xuICAgICAgICBjb25zdCByZXN1bHQgPSB0aGlzLmZpbmRTZWxlY3RlZE5vZGVCeVBhdGhBcnJheShpdGVtLCBwYXRoLCBpbmRleCArIDEpO1xuXG4gICAgICAgIGlmIChyZXN1bHQgIT09IG51bGwpIHtcbiAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIFJla3Vyc2l2ZSBNZXRob2RlIHdlbGNoZSBiZWltIE5vZGUgdW5kIGFsbCBzZWluZW4gQ2hpbGRzIGRlbiBFZGl0IE1vZGUgYmVlbmRldC5cbiAgICogQHBhcmFtIG5vZGUgTm9kZSBiZWkgd2VsY2hlbSBkZXIgRWRpdCBNb2RlIGJlZW5kZXQgd2VyZGVuIHNvbGxcbiAgICovXG4gIHByaXZhdGUgcmVzZXROb2RlRWRpdE1vZGUobm9kZTogSUJyb3dzZXJOb2RlKTogdm9pZCB7XG4gICAgaWYgKG5vZGUgPT09IG51bGwpIHtcbiAgICAgIHRoaXMucmVzZXROb2RlRWRpdE1vZGUodGhpcy5yb290Tm9kZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIG5vZGUuSXNFZGl0TW9kZSA9IGZhbHNlO1xuXG4gICAgICBpZiAobm9kZS5DaGlsZE5vZGVzKSB7XG4gICAgICAgIG5vZGUuQ2hpbGROb2Rlcy5mb3JFYWNoKChpdG0pID0+IHRoaXMucmVzZXROb2RlRWRpdE1vZGUoaXRtKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNldHp0IGRlbiBQZmFkIGluIGFsbGVuIE5vZGVzXG4gICAqL1xuICBwcml2YXRlIHNldFBhdGhUb0FsbE5vZGVzKCkge1xuICAgIHRoaXMucm9vdE5vZGUuQ2hpbGROb2Rlcy5mb3JFYWNoKChpdG0pID0+IHtcbiAgICAgIHRoaXMuZmlsbFBhdGgoaXRtLCAnJyk7XG4gICAgfSk7XG4gIH1cblxuICAvLyAjZW5kcmVnaW9uIFByaXZhdGUgTWV0aG9kc1xufVxuIl19
|
|
146
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJEaXJlY3RpdmUiLCJFdmVudEVtaXR0ZXIiLCJIb3N0TGlzdGVuZXIiLCJJbnB1dCIsIk91dHB1dCIsIlNBQ0lDT05fU0VSVklDRSIsIlNBQ0xPQ0FMSVNBVElPTl9TRVJWSUNFIiwiU0FDVkFMSURBVElPTktFWV9TRVJWSUNFIiwiU2FjRGVmYXVsdEljb25TZXJ2aWNlIiwiU2FjRGVmYXVsdFZhbGlkYXRpb25LZXlTZXJ2aWNlIiwiU0FDRklMRUJST1dTRVJfU0VSVklDRSIsIlNhY0RlZmF1bHRGaWxlQnJvd3NlclNlcnZpY2UiLCJTYWNEZWZhdWx0TG9jYWxpc2F0aW9uU2VydmljZSIsIlNhY0ZpbGVCcm93c2VyQ29tbW9uIiwiY29uc3RydWN0b3IiLCJodHRwY2xpZW50IiwiaW5qZWN0b3IiLCJjb3ZfMTNhajZpbXBrdiIsImYiLCJzIiwicHJlc2VsZWNlZGZpbGUiLCJhbGxvd2VkdHlwZXMiLCJhbGxvd2ZpbGVkZWxldGUiLCJhbGxvd2ZpbGVyZW5hbWUiLCJhbGxvd2ZpbGV1cGxvYWQiLCJhbGxvd2ZvbGRlcmNyZWF0ZSIsImFsbG93Zm9sZGVyZGVsZXRlIiwiYWxsb3dmb2xkZXJyZW5hbWUiLCJmaWxlIiwicm9vdE5vZGUiLCJOYW1lIiwiQ2hpbGROb2RlcyIsIkZpbGVzIiwiSXNFeHBhbmRlZCIsIklzRWRpdE1vZGUiLCJJc05ld05vZGUiLCJQYXRoIiwic2VsZWN0ZWRGaWxlSXRlbSIsInNlbGVjdGVkTm9kZSIsInVwbG9hZHMiLCJicm93c2VyU2VydmljZSIsImdldCIsInZhbGlkYXRpb25LZXlTZXJ2aWNlIiwibG5nUmVzb3VyY2VTZXJ2aWNlIiwiaWNvblNlcnZpY2UiLCJzZWxlY3RlZGZpbGUiLCJ2Iiwic2VsZWN0ZWRub2RlIiwiZmluZFNlbGVjdGVkTm9kZUJ5UGF0aCIsImIiLCJzZWxlY3ROb2RlIiwiaWNvbkRlbGV0ZSIsIkJyb3dzZXJDb21wb25lbnREZWxldGVJY29uIiwiaWNvbkVkaXQiLCJCcm93c2VyQ29tcG9uZW50RWRpdEljb24iLCJpY29uRm9sZGVyQ29sbGFic2VkIiwiQnJvd3NlckNvbXBvbmVudEZvbGRlckNsb3NlZEljb24iLCJpY29uRm9sZGVyRW1wdHkiLCJCcm93c2VyQ29tcG9uZW50Rm9sZGVyRW1wdHlJY29uIiwiaWNvbkZvbGRlck5ldyIsIkJyb3dzZXJDb21wb25lbnRGb2xkZXJOZXdJY29uIiwiaWNvbkZvbGRlck9wZW4iLCJCcm93c2VyQ29tcG9uZW50Rm9sZGVyT3Blbkljb24iLCJpY29uUmVmcmVzaCIsIkJyb3dzZXJDb21wb25lbnRSZWZyZXNoSWNvbiIsInNlbGVjdEZpbGUiLCJsZW5ndGgiLCJzZWxlY3RlZEZpbGUiLCJleGl0RWRpdE1vZGUiLCJ0YXJnZXRFbGVtZW50IiwiZm9yRWFjaCIsIml0bSIsImNsZWFyTmV3Q2hpbGROb2RlcyIsInJlc2V0Tm9kZUVkaXRNb2RlIiwiZGVsZXRlRmlsZSIsImNvbmZpcm1EZWxldGVGaWxlIiwic3Vic2NyaWJlIiwiY29uZmlybSIsIkRlbGV0ZUZpbGUiLCJhcGl1cmwiLCJGaWxlbmFtZSIsInJlc3VsdCIsImRlbGV0ZU5vZGUiLCJub2RlIiwiY29uZmlybURlbGV0ZU5vZGUiLCJEZWxldGVOb2RlIiwicGFyZW50Tm9kZSIsImZpbmRQYXJlbnROb2RlIiwiTm9kZSIsImZpbGxQYXRoIiwiZWRpdEZpbGUiLCJlZGl0Tm9kZSIsIm5ld05vZGUiLCJpdGVtIiwicHVzaCIsIm5nT25Jbml0IiwiR2V0Tm9kZSIsInNldFBhdGhUb0FsbE5vZGVzIiwicmVmcmVzaE5vZGUiLCJzd2l0Y2hFeHBhbmROb2RlIiwicmVuYW1lRmlsZSIsIm5ld0ZpbGVuYW1lIiwiUmVuYW1lRmlsZSIsInJlbmFtZU5vZGUiLCJuZXdGb2xkZXJuYW1lIiwiUmVuYW1lTm9kZSIsIlNhdmVOb2RlIiwiZW5kc1dpdGgiLCJlbWl0IiwiR2V0RmlsZXMiLCJmaWxlbmFtZSIsInN1YnN0cmluZyIsImxhc3RJbmRleE9mIiwiZmluZCIsInVwbG9hZENvbXBsZXRlIiwidXBsb2FkSWRMaXN0IiwiZWxlbWVudCIsImluZGV4T2YiLCJpZCIsInBvcCIsIlNhdmVGaWxlIiwidXBsb2FkZWRGaWxlTW92ZWQiLCJzcGxpY2UiLCJwYXJlbnRQYXRoIiwibm9kZVRvRmluZCIsImNoaWxkIiwicGF0aCIsInVuZGVmaW5lZCIsInBhdGhBcnJheSIsInNwbGl0IiwiZmluZFNlbGVjdGVkTm9kZUJ5UGF0aEFycmF5IiwiaW5kZXgiLCJkZXBzIiwidG9rZW4iLCJpMSIsIkh0dHBDbGllbnQiLCJpMCIsIkluamVjdG9yIiwidGFyZ2V0IiwiybXJtUZhY3RvcnlUYXJnZXQiLCJpbnB1dHMiLCJvdXRwdXRzIiwiaG9zdCIsImxpc3RlbmVycyIsIm5nSW1wb3J0IiwiZGVjb3JhdG9ycyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1jb21tb24vc3JjL2NvbXBvbmVudHMvYnJvd3Nlci9icm93c2VyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbmplY3RvcixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IElTYWNGaWxlQnJvd3NlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lTYWNGaWxlQnJvd3NlclNlcnZpY2UnO1xuaW1wb3J0IHsgSVNhY0ljb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9JU2FjSWNvblNlcnZpY2UnO1xuaW1wb3J0IHsgSVNhY0xvY2FsaXNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lTYWNMb2NhbGlzYXRpb25TZXJ2aWNlJztcbmltcG9ydCB7IElTYWNWYWxpZGF0aW9uS2V5U2VydmljZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvSVNhY1ZhbGlkYXRpb25LZXlTZXJ2aWNlJztcbmltcG9ydCB7XG4gIFNBQ0lDT05fU0VSVklDRSxcbiAgU0FDTE9DQUxJU0FUSU9OX1NFUlZJQ0UsXG4gIFNBQ1ZBTElEQVRJT05LRVlfU0VSVklDRSxcbiAgU2FjRGVmYXVsdEljb25TZXJ2aWNlLFxuICBTYWNEZWZhdWx0VmFsaWRhdGlvbktleVNlcnZpY2UsXG59IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7XG4gIFNBQ0ZJTEVCUk9XU0VSX1NFUlZJQ0UsXG4gIFNhY0RlZmF1bHRGaWxlQnJvd3NlclNlcnZpY2UsXG59IGZyb20gJy4uLy4uL3NlcnZpY2VzL3NhYy1maWxlYnJvd3Nlci5zZXJ2aWNlJztcbmltcG9ydCB7IFNhY0RlZmF1bHRMb2NhbGlzYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc2FjLWxvY2FsaXNhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IElCcm93c2VyRmlsZSB9IGZyb20gJy4vbW9kZWxzL2Jyb3dzZXJmaWxlJztcbmltcG9ydCB7IElCcm93c2VyRmlsZVJlc3BvbnNlIH0gZnJvbSAnLi9tb2RlbHMvYnJvd3NlcmZpbGVyZXNwb25zZSc7XG5pbXBvcnQgeyBJQnJvd3Nlck5vZGUgfSBmcm9tICcuL21vZGVscy9icm93c2Vybm9kZSc7XG5pbXBvcnQgeyBJQnJvd3Nlck5vZGVSZXNwb25zZSB9IGZyb20gJy4vbW9kZWxzL2Jyb3dzZXJub2RlcmVzcG9uc2UnO1xuXG4vKipcbiAqIEJhc2UgQ29tcG9uZW50IGbDvHIgRmlsZSBCcm93c2VyXG4gKi9cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFNhY0ZpbGVCcm93c2VyQ29tbW9uIGltcGxlbWVudHMgT25Jbml0IHtcbiAgLy8gI3JlZ2lvbiBQcm9wZXJ0aWVzXG5cbiAgLyoqXG4gICAqIFNlcnZpY2UgZsO8ciBGaWxlIEJyb3dzZXIgWnVncmlmZiAoQmFja2VuZClcbiAgICovXG4gIHByaXZhdGUgYnJvd3NlclNlcnZpY2U6IElTYWNGaWxlQnJvd3NlclNlcnZpY2U7XG4gIC8qKlxuICAgKiBJY29uIHNlcnZpY2UgdG8gcmVjZWl2ZSBpY29uIGNsYXNzZXMgZm9yIHVpXG4gICAqL1xuICBwcml2YXRlIGljb25TZXJ2aWNlOiBJU2FjSWNvblNlcnZpY2U7XG4gIC8qKlxuICAgKiBGaWxlIHdlbGNoZXMgYmVpbSBzdGFydGVuIGRlcyBCcm93c2VycyBiZXJlaXRzIHNlbGVrdGllcnQgaXN0XG4gICAqL1xuICBwcml2YXRlIHByZXNlbGVjZWRmaWxlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogRXJsYXVidGUgRGF0ZWllcndlaXRlcnVuZ2VuIGbDvHIgRmlsZWF1c3dhaGwgdW5kIFVwbG9hZC4gRGF0ZWllcndlaXRlcnVuZyBtaXQgUHVua3QgdW5kXG4gICAqIGdldHJlbm50IGR1cmNoIEtvbW1hIGbDvHIgbWVociBhbHMgZWluZSBFcndlaXRlcnVuZyAoRXhhbXBsZTogXCIuanBnLC5naWZcIilcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhbGxvd2VkdHlwZXM6IHN0cmluZyA9ICcnO1xuICAvKipcbiAgICogRXJsYXVidCBkYXMgbMO2c2NoZW4gZWluZXIgRGF0ZWlcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhbGxvd2ZpbGVkZWxldGU6IGJvb2xlYW4gPSB0cnVlO1xuICAvKipcbiAgICogRXJsYXVidCBkYXMgdW1iZW5lbm5lbiBlaW5lciBEYXRlaVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGFsbG93ZmlsZXJlbmFtZTogYm9vbGVhbiA9IHRydWU7XG4gIC8qKlxuICAgKiBFcmxhdWJ0IGRlbiBVcGxvYWQgdm9uIERhdGVpZW5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhbGxvd2ZpbGV1cGxvYWQ6IGJvb2xlYW4gPSB0cnVlO1xuICAvKipcbiAgICogRXJsYXVidCBkYXMgZXJzdGVsbGVuIGVpbmVzIG5ldWVuIE9yZG5lcnNcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhbGxvd2ZvbGRlcmNyZWF0ZTogYm9vbGVhbiA9IHRydWU7XG4gIC8qKlxuICAgKiBFcmxhdWJ0IGRhcyBsw7ZzY2hlbiBlaW5lcyBPcmRuZXJzXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYWxsb3dmb2xkZXJkZWxldGU6IGJvb2xlYW4gPSB0cnVlO1xuICAvKipcbiAgICogRXJsYXVidCBkYXMgVW1iZW5lbm5lbiBlaW5lcyBPcmRuZXJzXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYWxsb3dmb2xkZXJyZW5hbWU6IGJvb2xlYW4gPSB0cnVlO1xuICAvKipcbiAgICogVVJMIGbDvHIgQmFja2VuZCBBUElcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhcGl1cmw6IHN0cmluZztcbiAgLyoqXG4gICAqIE91dHB1dCBFbWl0dGVyIHdlbm4gRmlsZSBzZWxla3RpZXJ0IHdpcmQuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIGZpbGU6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgLyoqXG4gICAqIFNlcnZpY2UgZsO8ciBFcnJvciBMb2NhbGlzYXRpb25cbiAgICovXG4gIHB1YmxpYyBsbmdSZXNvdXJjZVNlcnZpY2U6IElTYWNMb2NhbGlzYXRpb25TZXJ2aWNlO1xuICAvKipcbiAgICogUm9vdCBOb2RlIEl0ZW0gZsO8ciBUcmVlXG4gICAqL1xuICBwdWJsaWMgcm9vdE5vZGU6IElCcm93c2VyTm9kZSA9IHtcbiAgICBOYW1lOiAnJyxcbiAgICBDaGlsZE5vZGVzOiBbXSxcbiAgICBGaWxlczogW10sXG4gICAgSXNFeHBhbmRlZDogdHJ1ZSxcbiAgICBJc0VkaXRNb2RlOiBmYWxzZSxcbiAgICBJc05ld05vZGU6IGZhbHNlLFxuICAgIFBhdGg6ICcnLFxuICB9O1xuICAvKipcbiAgICogU2VsZWN0ZWQgRmlsZSBOYW1lXG4gICAqL1xuICBwdWJsaWMgc2VsZWN0ZWRGaWxlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTZWxlY3RlZCBGaWxlIEl0ZW1cbiAgICovXG4gIHB1YmxpYyBzZWxlY3RlZEZpbGVJdGVtOiBJQnJvd3NlckZpbGUgPSBudWxsO1xuICAvKipcbiAgICogU2VsZWN0ZWQgTm9kZSBJdGVtXG4gICAqL1xuICBwdWJsaWMgc2VsZWN0ZWROb2RlOiBJQnJvd3Nlck5vZGUgPSBudWxsO1xuICAvKipcbiAgICogTGlzdGUgdm9uIFVwbG9hZHNcbiAgICovXG4gIHB1YmxpYyB1cGxvYWRzOiBzdHJpbmdbXSA9IFtdO1xuICAvKipcbiAgICogU2VydmljZSB0byByZWNlaXZlIHN0YW5kYXJkIHZhbGlkYXRpb24gbWVzc2FnZSBrZXlzIGFuZCB0ZXh0c1xuICAgKi9cbiAgcHVibGljIHZhbGlkYXRpb25LZXlTZXJ2aWNlOiBJU2FjVmFsaWRhdGlvbktleVNlcnZpY2U7XG5cbiAgLy8gI2VuZHJlZ2lvbiBQcm9wZXJ0aWVzXG5cbiAgLy8gI3JlZ2lvbiBDb25zdHJ1Y3RvcnNcblxuICAvKipcbiAgICogS29uc3RydWt0b3JcbiAgICogQHBhcmFtIGh0dHBjbGllbnQgQW5ndWxhciBIVFRQIENsaWVudFxuICAgKiBAcGFyYW0gaW5qZWN0b3IgU2VydmljZSBJbmplY3RvclxuICAgKi9cbiAgY29uc3RydWN0b3IoaHR0cGNsaWVudDogSHR0cENsaWVudCwgaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgdGhpcy5icm93c2VyU2VydmljZSA9IGluamVjdG9yLmdldChcbiAgICAgIFNBQ0ZJTEVCUk9XU0VSX1NFUlZJQ0UsXG4gICAgICBuZXcgU2FjRGVmYXVsdEZpbGVCcm93c2VyU2VydmljZShodHRwY2xpZW50KVxuICAgICk7XG4gICAgdGhpcy52YWxpZGF0aW9uS2V5U2VydmljZSA9IGluamVjdG9yLmdldChcbiAgICAgIFNBQ1ZBTElEQVRJT05LRVlfU0VSVklDRSxcbiAgICAgIG5ldyBTYWNEZWZhdWx0VmFsaWRhdGlvbktleVNlcnZpY2UoKVxuICAgICk7XG4gICAgdGhpcy5sbmdSZXNvdXJjZVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoXG4gICAgICBTQUNMT0NBTElTQVRJT05fU0VSVklDRSxcbiAgICAgIG5ldyBTYWNEZWZhdWx0TG9jYWxpc2F0aW9uU2VydmljZSh0aGlzLnZhbGlkYXRpb25LZXlTZXJ2aWNlKVxuICAgICk7XG5cbiAgICB0aGlzLmljb25TZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KFxuICAgICAgU0FDSUNPTl9TRVJWSUNFLFxuICAgICAgbmV3IFNhY0RlZmF1bHRJY29uU2VydmljZSgpXG4gICAgKTtcbiAgfVxuXG4gIC8vICNlbmRyZWdpb24gQ29uc3RydWN0b3JzXG5cbiAgLy8gI3JlZ2lvbiBQdWJsaWMgR2V0dGVycyBBbmQgU2V0dGVyc1xuXG4gIC8qKlxuICAgKiBTZXR6dCBkZW4gU2VsZWNlZCBOb2RlIMO8YmVyIGRlbiBQZmFkXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNlbGVjdGVkZmlsZSh2OiBzdHJpbmcgfCBudWxsKSB7XG4gICAgY29uc3Qgc2VsZWN0ZWRub2RlID0gdGhpcy5maW5kU2VsZWN0ZWROb2RlQnlQYXRoKHRoaXMucm9vdE5vZGUsIHYpO1xuXG4gICAgaWYgKHNlbGVjdGVkbm9kZSAhPT0gbnVsbCkge1xuICAgICAgdGhpcy5zZWxlY3ROb2RlKHNlbGVjdGVkbm9kZSk7XG4gICAgfVxuXG4gICAgdGhpcy5wcmVzZWxlY2VkZmlsZSA9IHY7XG4gIH1cblxuICAvKipcbiAgICogQ1NTIGljb24gY2xhc3MgZm9yIGRlbGV0ZSBpY29uXG4gICAqIEByZXR1cm5zIGNzcyBjbGFzcyB3aXRoIGljb25cbiAgICovXG4gIHB1YmxpYyBnZXQgaWNvbkRlbGV0ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmljb25TZXJ2aWNlLkJyb3dzZXJDb21wb25lbnREZWxldGVJY29uO1xuICB9XG5cbiAgLyoqXG4gICAqIENTUyBpY29uIGNsYXNzIGZvciBlZGl0IGljb25cbiAgICogQHJldHVybnMgY3NzIGNsYXNzIHdpdGggaWNvblxuICAgKi9cbiAgcHVibGljIGdldCBpY29uRWRpdCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmljb25TZXJ2aWNlLkJyb3dzZXJDb21wb25lbnRFZGl0SWNvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDU1MgaWNvbiBmb3IgZm9sZGVycyBpbiB0cmVlIHRoZXJlIGFyZSBjb2xsYWJzZWRcbiAgICogQHJldHVybnMgY3NzIGNsYXNzIHdpdGggaWNvblxuICAgKi9cbiAgcHVibGljIGdldCBpY29uRm9sZGVyQ29sbGFic2VkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaWNvblNlcnZpY2UuQnJvd3NlckNvbXBvbmVudEZvbGRlckNsb3NlZEljb247XG4gIH1cblxuICAvKipcbiAgICogQ1NTIGljb24gY2xhc3MgZm9yIGZvbGRlcnMgd2l0aG91dCBzdWJmb2xkZXJzXG4gICAqIEByZXR1cm5zIGNzcyBjbGFzcyB3aXRoIGljb25cbiAgICovXG4gIHB1YmxpYyBnZXQgaWNvbkZvbGRlckVtcHR5KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaWNvblNlcnZpY2UuQnJvd3NlckNvbXBvbmVudEZvbGRlckVtcHR5SWNvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDU1MgaWNvbiBmb3IgbmV3IGZvbGRlcnMgYWN0aW9uXG4gICAqIEByZXR1cm5zIGNzcyBjbGFzcyB3aXRoIGljb25cbiAgICovXG4gIHB1YmxpYyBnZXQgaWNvbkZvbGRlck5ldygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmljb25TZXJ2aWNlLkJyb3dzZXJDb21wb25lbnRGb2xkZXJOZXdJY29uO1xuICB9XG5cbiAgLyoqXG4gICAqIENTUyBpY29uIGZvciBmb2xkZXJzIGluIHRyZWUgdGhlcmUgYXJlIGV4cGFuZGVkXG4gICAqIEByZXR1cm5zIGNzcyBjbGFzcyB3aXRoIGljb25cbiAgICovXG4gIHB1YmxpYyBnZXQgaWNvbkZvbGRlck9wZW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pY29uU2VydmljZS5Ccm93c2VyQ29tcG9uZW50Rm9sZGVyT3Blbkljb247XG4gIH1cblxuICAvKipcbiAgICogQ1NTIGljb24gY2xhc3MgZm9yIHJlZnJlc2ggaWNvblxuICAgKiBAcmV0dXJucyBjc3MgY2xhc3Mgd2l0aCBpY29uXG4gICAqL1xuICBwdWJsaWMgZ2V0IGljb25SZWZyZXNoKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaWNvblNlcnZpY2UuQnJvd3NlckNvbXBvbmVudFJlZnJlc2hJY29uO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHRlciBmw7xyIFNlbGVjdGVkIEZpbGUuIElzdCBhbiBJbnB1dCBQcm9wZXJ0eSBnZWJ1bmRlblxuICAgKi9cbiAgcHVibGljIGdldCBzZWxlY3RlZGZpbGUoKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgaWYgKHRoaXMuc2VsZWN0RmlsZSAmJiB0aGlzLnNlbGVjdEZpbGUubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRGaWxlO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICAvLyAjZW5kcmVnaW9uIFB1YmxpYyBHZXR0ZXJzIEFuZCBTZXR0ZXJzXG5cbiAgLy8gI3JlZ2lvbiBQdWJsaWMgTWV0aG9kc1xuXG4gIC8qKlxuICAgKiBIb3N0TGlzdGVuZXIgd2VsY2hlciBkZW4gRWRpdCBNb2RlIGJlaSBhbGxlbiBGaWxlcyB1bmQgTm9kZXMgYmVlbmRldC5cbiAgICovXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgWyckZXZlbnQudGFyZ2V0J10pXG4gIC8qKlxuICAgKiBDbGljayBFdmVudFxuICAgKi9cbiAgcHVibGljIGV4aXRFZGl0TW9kZSh0YXJnZXRFbGVtZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2VsZWN0ZWROb2RlKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkTm9kZS5GaWxlcy5mb3JFYWNoKChpdG0pID0+IChpdG0uSXNFZGl0TW9kZSA9IGZhbHNlKSk7XG5cbiAgICAgIGlmIChcbiAgICAgICAgIXRoaXMuc2VsZWN0ZWROb2RlIHx8XG4gICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlLk5hbWUgPT09IG51bGwgfHxcbiAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUuTmFtZS5sZW5ndGggPT09IDBcbiAgICAgICkge1xuICAgICAgICB0aGlzLmNsZWFyTmV3Q2hpbGROb2Rlcyh0aGlzLnJvb3ROb2RlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnJlc2V0Tm9kZUVkaXRNb2RlKG51bGwpO1xuICB9XG5cbiAgLyoqXG4gICAqIEzDtnNjaHQgZWluIEZpbGVcbiAgICogQHBhcmFtIGZpbGUgRmlsZSB3ZWxjaGVzIGdlbMO2c2NodCB3ZXJkZW4gc29sbFxuICAgKi9cbiAgcHVibGljIGRlbGV0ZUZpbGUoZmlsZTogSUJyb3dzZXJGaWxlKTogdm9pZCB7XG4gICAgdGhpcy5jb25maXJtRGVsZXRlRmlsZShmaWxlKS5zdWJzY3JpYmUoKGNvbmZpcm0pID0+IHtcbiAgICAgIGlmIChjb25maXJtKSB7XG4gICAgICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcbiAgICAgICAgICAuRGVsZXRlRmlsZShcbiAgICAgICAgICAgIHRoaXMuYXBpdXJsLFxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUuUGF0aCArICcvJyArIGZpbGUuRmlsZW5hbWUsXG4gICAgICAgICAgICB0aGlzLmFsbG93ZWR0eXBlc1xuICAgICAgICAgIClcbiAgICAgICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IElCcm93c2VyRmlsZVJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkTm9kZS5GaWxlcyA9IHJlc3VsdC5GaWxlcztcbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMw7ZzY2h0IGVpbmVuIE5vZGVcbiAgICogQHBhcmFtIG5vZGUgTm9kZSB3ZWxjaGVyIGdlbMO2c2NodCB3ZXJkZW4gc29sbFxuICAgKi9cbiAgcHVibGljIGRlbGV0ZU5vZGUobm9kZTogSUJyb3dzZXJOb2RlKTogdm9pZCB7XG4gICAgdGhpcy5jb25maXJtRGVsZXRlTm9kZShub2RlKS5zdWJzY3JpYmUoKGNvbmZpcm0pID0+IHtcbiAgICAgIGlmIChjb25maXJtKSB7XG4gICAgICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcbiAgICAgICAgICAuRGVsZXRlTm9kZSh0aGlzLmFwaXVybCwgbm9kZS5QYXRoKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdDogSUJyb3dzZXJOb2RlUmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHBhcmVudE5vZGUgPSB0aGlzLmZpbmRQYXJlbnROb2RlKHRoaXMucm9vdE5vZGUsIG5vZGUpO1xuICAgICAgICAgICAgcGFyZW50Tm9kZS5DaGlsZE5vZGVzID0gcmVzdWx0Lk5vZGUuQ2hpbGROb2RlcztcblxuICAgICAgICAgICAgdGhpcy5yb290Tm9kZS5DaGlsZE5vZGVzLmZvckVhY2goKGl0bSkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLmZpbGxQYXRoKGl0bSwgJycpO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIHRoaXMuc2VsZWN0Tm9kZShwYXJlbnROb2RlKTtcbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXR6dCBlaW4gRmlsZSBpbiBkZW4gRWRpdCBNb2RlXG4gICAqIEBwYXJhbSBmaWxlIEZpbGUgd2VsY2hlcyBpbiBkZW4gRWRpdCBNb2RlIGdlc2V0enQgd2VyZGVuIHNvbGxcbiAgICovXG4gIHB1YmxpYyBlZGl0RmlsZShmaWxlOiBJQnJvd3NlckZpbGUpOiB2b2lkIHtcbiAgICBmaWxlLklzRWRpdE1vZGUgPSB0cnVlO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHp0IGVpbmVuIE5vZGUgaW4gZGVuIEVkaXQgTW9kZVxuICAgKiBAcGFyYW0gbm9kZSBOb2RlIHdlbGNoZXIgYmVhcmJlaXRldCB3ZXJkZW4gc29sbFxuICAgKi9cbiAgcHVibGljIGVkaXROb2RlKG5vZGU6IElCcm93c2VyTm9kZSk6IHZvaWQge1xuICAgIG5vZGUuSXNFZGl0TW9kZSA9IHRydWU7XG4gIH1cblxuICAvKipcbiAgICogRXJ6ZXVndCBlaW5lbiBuZXVlbiBOb2RlIGltIFRyZWVcbiAgICogQHBhcmFtIG5vZGUgTm9kZSB1bnRlciB3ZWxjaGVtIGVpbiBuZXVlciBOb2RlIGVyc3RlbGx0IHdlcmRlbiBzb2xsXG4gICAqL1xuICBwdWJsaWMgbmV3Tm9kZShub2RlOiBJQnJvd3Nlck5vZGUpIHtcbiAgICBjb25zdCBpdGVtOiBJQnJvd3Nlck5vZGUgPSB7XG4gICAgICBDaGlsZE5vZGVzOiBbXSxcbiAgICAgIEZpbGVzOiBbXSxcbiAgICAgIElzRWRpdE1vZGU6IGZhbHNlLFxuICAgICAgSXNFeHBhbmRlZDogZmFsc2UsXG4gICAgICBOYW1lOiAnJyxcbiAgICAgIFBhdGg6IG5vZGUuUGF0aCxcbiAgICAgIElzTmV3Tm9kZTogdHJ1ZSxcbiAgICB9O1xuXG4gICAgbm9kZS5DaGlsZE5vZGVzLnB1c2goaXRlbSk7XG4gICAgdGhpcy5zZWxlY3ROb2RlKGl0ZW0pO1xuICAgIHRoaXMuZWRpdE5vZGUoaXRlbSk7XG4gIH1cblxuICAvKipcbiAgICogSW5pdCBFdmVudCBkZXIgS29tcG9uZW50ZVxuICAgKi9cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcbiAgICAgIC5HZXROb2RlKHRoaXMuYXBpdXJsLCAnJywgdGhpcy5hbGxvd2VkdHlwZXMpXG4gICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IElCcm93c2VyTm9kZVJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHRoaXMucm9vdE5vZGUgPSB7XG4gICAgICAgICAgTmFtZTogcmVzdWx0Lk5vZGUuTmFtZSxcbiAgICAgICAgICBGaWxlczogcmVzdWx0Lk5vZGUuRmlsZXMsXG4gICAgICAgICAgQ2hpbGROb2RlczogcmVzdWx0Lk5vZGUuQ2hpbGROb2RlcyxcbiAgICAgICAgICBJc0V4cGFuZGVkOiB0cnVlLFxuICAgICAgICAgIElzRWRpdE1vZGU6IGZhbHNlLFxuICAgICAgICAgIElzTmV3Tm9kZTogZmFsc2UsXG4gICAgICAgICAgUGF0aDogJy8nLFxuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMuc2V0UGF0aFRvQWxsTm9kZXMoKTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUgPSB0aGlzLnJvb3ROb2RlO1xuXG4gICAgICAgIC8vIFNlbGVjdGVkIEZpbGUgZXJuZXV0IHNldHplbiwgd2VubiBQcm9wZXJ0eSBnZXNldHp0IHd1cmRlIGJldm9yIERhdGVuIHZvbSBTZXJ2aWNlIGdlbGFkZW4gd3VyZGVuLlxuICAgICAgICBpZiAodGhpcy5wcmVzZWxlY2VkZmlsZSAhPT0gbnVsbCAmJiB0aGlzLnByZXNlbGVjZWRmaWxlLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkZmlsZSA9IHRoaXMucHJlc2VsZWNlZGZpbGU7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFrdHVhbGlzaWVydCBkZW4gTm9kZVxuICAgKi9cbiAgcHVibGljIHJlZnJlc2hOb2RlKG5vZGU6IElCcm93c2VyTm9kZSk6IHZvaWQge1xuICAgIGlmICghbm9kZS5Jc0V4cGFuZGVkKSB7XG4gICAgICB0aGlzLnN3aXRjaEV4cGFuZE5vZGUobm9kZSk7XG4gICAgfVxuXG4gICAgdGhpcy5icm93c2VyU2VydmljZVxuICAgICAgLkdldE5vZGUodGhpcy5hcGl1cmwsIG5vZGUuUGF0aCwgdGhpcy5hbGxvd2VkdHlwZXMpXG4gICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IElCcm93c2VyTm9kZVJlc3BvbnNlKSA9PiB7XG4gICAgICAgIG5vZGUuQ2hpbGROb2RlcyA9IHJlc3VsdC5Ob2RlLkNoaWxkTm9kZXM7XG4gICAgICAgIG5vZGUuRmlsZXMgPSByZXN1bHQuTm9kZS5GaWxlcztcblxuICAgICAgICB0aGlzLnNldFBhdGhUb0FsbE5vZGVzKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNZXRob2RlIHdlbm4gZWluZSBEYXRlaSB1bWJlbmFubnQgd2VyZGVuIHNvbGxcbiAgICogQHBhcmFtIGZpbGUgRmlsZSB3ZWxjaGVzIHVtYmVuYW5udCB3ZXJkZW4gc29sbFxuICAgKiBAcGFyYW0gbmV3RmlsZW5hbWUgTmV1ZXIgRGF0ZWluYW1lXG4gICAqL1xuICBwdWJsaWMgcmVuYW1lRmlsZShmaWxlOiBJQnJvd3NlckZpbGUsIG5ld0ZpbGVuYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBmaWxlLklzRWRpdE1vZGUgPSBmYWxzZTtcblxuICAgIGlmICghbmV3RmlsZW5hbWUgfHwgbmV3RmlsZW5hbWUgPT09IG51bGwgfHwgbmV3RmlsZW5hbWUubGVuZ3RoID09PSAwKSB7XG4gICAgICAvLyBDYW5jZWwsIEludmFsaWQgRmlsZW5hbWVcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoZmlsZS5GaWxlbmFtZSAhPT0gbmV3RmlsZW5hbWUpIHtcbiAgICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcbiAgICAgICAgLlJlbmFtZUZpbGUoXG4gICAgICAgICAgdGhpcy5hcGl1cmwsXG4gICAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUuUGF0aCArICcvJyArIGZpbGUuRmlsZW5hbWUsXG4gICAgICAgICAgbmV3RmlsZW5hbWUsXG4gICAgICAgICAgdGhpcy5hbGxvd2VkdHlwZXNcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IElCcm93c2VyRmlsZVJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUuRmlsZXMgPSByZXN1bHQuRmlsZXM7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBNZXRob2RlIHdlbm4gZWluIE5vZGUgdW1iZW5hbm50IHdlcmRlbiBzb2xsXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgd2VsY2hlciB1bWJlbmFubnQgd2VyZGVuIHNvbGxcbiAgICogQHBhcmFtIG5ld0ZvbGRlcm5hbWUgTmV1ZXIgT3JkbmVybmFtZVxuICAgKi9cbiAgcHVibGljIHJlbmFtZU5vZGUobm9kZTogSUJyb3dzZXJOb2RlLCBuZXdGb2xkZXJuYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBub2RlLklzRWRpdE1vZGUgPSBmYWxzZTtcblxuICAgIGlmICghbm9kZS5Jc05ld05vZGUpIHtcbiAgICAgIGlmIChcbiAgICAgICAgIW5ld0ZvbGRlcm5hbWUgfHxcbiAgICAgICAgbmV3Rm9sZGVybmFtZSA9PT0gbnVsbCB8fFxuICAgICAgICBuZXdGb2xkZXJuYW1lLmxlbmd0aCA9PT0gMFxuICAgICAgKSB7XG4gICAgICAgIC8vIENhbmNlbCBSZW5hbWUuIEludmFsaWQgRm9sZGVybmFtZVxuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmIChub2RlLk5hbWUgIT09IG5ld0ZvbGRlcm5hbWUpIHtcbiAgICAgICAgdGhpcy5icm93c2VyU2VydmljZVxuICAgICAgICAgIC5SZW5hbWVOb2RlKHRoaXMuYXBpdXJsLCBub2RlLlBhdGgsIG5ld0ZvbGRlcm5hbWUpXG4gICAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3Nlck5vZGVSZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgbm9kZS5OYW1lID0gcmVzdWx0Lk5vZGUuTmFtZTtcblxuICAgICAgICAgICAgdGhpcy5zZXRQYXRoVG9BbGxOb2RlcygpO1xuICAgICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoXG4gICAgICAgICFuZXdGb2xkZXJuYW1lIHx8XG4gICAgICAgIG5ld0ZvbGRlcm5hbWUgPT09IG51bGwgfHxcbiAgICAgICAgbmV3Rm9sZGVybmFtZS5sZW5ndGggPT09IDBcbiAgICAgICkge1xuICAgICAgICB0aGlzLmNsZWFyTmV3Q2hpbGROb2Rlcyh0aGlzLnJvb3ROb2RlKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBub2RlLk5hbWUgPSBuZXdGb2xkZXJuYW1lO1xuICAgICAgbm9kZS5Jc05ld05vZGUgPSBmYWxzZTtcbiAgICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcbiAgICAgICAgLlNhdmVOb2RlKHRoaXMuYXBpdXJsLCBub2RlLlBhdGgsIG5ld0ZvbGRlcm5hbWUpXG4gICAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdDogSUJyb3dzZXJOb2RlUmVzcG9uc2UpID0+IHtcbiAgICAgICAgICBub2RlLk5hbWUgPSByZXN1bHQuTm9kZS5OYW1lO1xuICAgICAgICAgIG5vZGUuRmlsZXMgPSByZXN1bHQuTm9kZS5GaWxlcztcblxuICAgICAgICAgIHRoaXMuc2V0UGF0aFRvQWxsTm9kZXMoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZGUgd2VubiBlaW4gRmlsZSBzZWxla3RpZXJ0IHdpcmRcbiAgICogQHBhcmFtIGZpbGUgRmlsZSB3ZWxjaGVzIHNlbGVrdGllcnQgd2lyZFxuICAgKi9cbiAgcHVibGljIHNlbGVjdEZpbGUoZmlsZTogSUJyb3dzZXJGaWxlKSB7XG4gICAgaWYgKCFmaWxlLklzRWRpdE1vZGUpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWROb2RlLkZpbGVzLmZvckVhY2goKGl0bSkgPT4gKGl0bS5Jc0VkaXRNb2RlID0gZmFsc2UpKTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuc2VsZWN0ZWROb2RlLlBhdGguZW5kc1dpdGgoJy8nKSkge1xuICAgICAgdGhpcy5zZWxlY3RlZEZpbGUgPSB0aGlzLnNlbGVjdGVkTm9kZS5QYXRoICsgJy8nICsgZmlsZS5GaWxlbmFtZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZWxlY3RlZEZpbGUgPSAnLycgKyBmaWxlLkZpbGVuYW1lO1xuICAgIH1cblxuICAgIHRoaXMuc2VsZWN0ZWRGaWxlSXRlbSA9IGZpbGU7XG4gICAgdGhpcy5maWxlLmVtaXQodGhpcy5zZWxlY3RlZEZpbGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZGUgd2VubiBlaW4gTm9kZSBzZWxla3RpZXJ0IHdpcmRcbiAgICogQHBhcmFtIG5vZGUgTm9kZSB3ZWxjaGVyIHNlbGVrdGllcnQgd2VyZGVuIHNvbGxcbiAgICovXG4gIHB1YmxpYyBzZWxlY3ROb2RlKG5vZGU6IElCcm93c2VyTm9kZSk6IHZvaWQge1xuICAgIGlmICghbm9kZS5Jc0V4cGFuZGVkKSB7XG4gICAgICB0aGlzLnN3aXRjaEV4cGFuZE5vZGUobm9kZSk7XG4gICAgfVxuXG4gICAgLy8gUmVzZXQgdGhlIEVkaXQgTW9kZSBpbiBhbGwgTm9kZXNcbiAgICB0aGlzLnJlc2V0Tm9kZUVkaXRNb2RlKG51bGwpO1xuXG4gICAgaWYgKCFub2RlLkZpbGVzKSB7XG4gICAgICB0aGlzLmJyb3dzZXJTZXJ2aWNlXG4gICAgICAgIC5HZXRGaWxlcyh0aGlzLmFwaXVybCwgbm9kZS5QYXRoLCB0aGlzLmFsbG93ZWR0eXBlcylcbiAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3NlckZpbGVSZXNwb25zZSkgPT4ge1xuICAgICAgICAgIG5vZGUuRmlsZXMgPSByZXN1bHQuRmlsZXM7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUgPSBub2RlO1xuXG4gICAgICAgICAgaWYgKHRoaXMucHJlc2VsZWNlZGZpbGUgIT09IG51bGwgJiYgdGhpcy5wcmVzZWxlY2VkZmlsZS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBjb25zdCBmaWxlbmFtZSA9IHRoaXMucHJlc2VsZWNlZGZpbGUuc3Vic3RyaW5nKFxuICAgICAgICAgICAgICB0aGlzLnByZXNlbGVjZWRmaWxlLmxhc3RJbmRleE9mKCcvJykgKyAxXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgY29uc3QgZmlsZSA9IG5vZGUuRmlsZXMuZmluZCgoaXRtKSA9PiBpdG0uRmlsZW5hbWUgPT09IGZpbGVuYW1lKTtcbiAgICAgICAgICAgIGlmIChmaWxlKSB7XG4gICAgICAgICAgICAgIHRoaXMuc2VsZWN0RmlsZShmaWxlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlbGVjdGVkTm9kZSA9IG5vZGU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEV4cGFuZC9Db2xsYWJzZSBNZXRob2RlIGbDvHIgTm9kZXNcbiAgICogQHBhcmFtIG5vZGUgTm9kZSB3ZWxjaGVyIGdlw7ZmZm5ldCBvZGVyIGdlc2NobG9zc2VuIHdlcmRlbiBzb2xsXG4gICAqL1xuICBwdWJsaWMgc3dpdGNoRXhwYW5kTm9kZShub2RlOiBJQnJvd3Nlck5vZGUpOiB2b2lkIHtcbiAgICBpZiAobm9kZS5Jc0V4cGFuZGVkKSB7XG4gICAgICBub2RlLklzRXhwYW5kZWQgPSBmYWxzZTtcbiAgICB9IGVsc2Uge1xuICAgICAgbm9kZS5Jc0V4cGFuZGVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTWV0aG9kZSBkaWUgQXVmZ2VydWZlbiB3ZXJkZW4gbXVzcywgd2VubiBlaW4gVXBsb2FkIGJlZW5kZXQgaXN0LlxuICAgKiBAcGFyYW0gcGFyYW0gUGFyYW1ldGVyIGRlcyBob2NoZ2VsYWRlbmVuIEZpbGVzXG4gICAqL1xuICBwdWJsaWMgdXBsb2FkQ29tcGxldGUobm9kZTogSUJyb3dzZXJOb2RlLCB1cGxvYWRJZExpc3Q6IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgaWYgKHVwbG9hZElkTGlzdCAhPT0gbnVsbCkge1xuICAgICAgdXBsb2FkSWRMaXN0LmZvckVhY2goKGVsZW1lbnQpID0+IHtcbiAgICAgICAgaWYgKHRoaXMudXBsb2Fkcy5pbmRleE9mKGVsZW1lbnQpIDwgMCkge1xuICAgICAgICAgIHRoaXMudXBsb2Fkcy5wdXNoKGVsZW1lbnQpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBjb25zdCBpZCA9IHRoaXMudXBsb2Fkcy5wb3AoKTtcbiAgICBpZiAoaWQpIHtcbiAgICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcbiAgICAgICAgLlNhdmVGaWxlKHRoaXMuYXBpdXJsLCBub2RlLlBhdGgsIGlkLCB0aGlzLmFsbG93ZWR0eXBlcylcbiAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3NlckZpbGVSZXNwb25zZSkgPT4ge1xuICAgICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlLkZpbGVzID0gcmVzdWx0LkZpbGVzO1xuICAgICAgICAgIHRoaXMudXBsb2FkZWRGaWxlTW92ZWQoaWQpO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvLyAjZW5kcmVnaW9uIFB1YmxpYyBNZXRob2RzXG5cbiAgLy8gI3JlZ2lvbiBQdWJsaWMgQWJzdHJhY3QgTWV0aG9kc1xuXG4gIC8qKlxuICAgKiBBYnN0cmFrdGUgQ29uZmlybSBNZXRob2RlIHdlbGNoZSBpbXBsZW1lbnRpZXJ0IHdlcmRlbiBtdXNzLiBNZXRob2RlIHdpcmQgYXVmZ2VydWZlbiwgd2VubiBlaW5lXG4gICAqIERhdGVpIGdlbMO2c2NodCB3ZXJkZW4gc29sbC5cbiAgICogQHBhcmFtIGZpbGUgRmlsZSBmw7xyIHdlbGNoZXMgZWluIERlbGV0ZSBDb25maXJtIGVpbmdlZm9yZGVydCB3ZXJkZW4gc29sbFxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGNvbmZpcm1EZWxldGVGaWxlKGZpbGU6IElCcm93c2VyRmlsZSk6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIC8qKlxuICAgKiBBYnN0cmFrdGUgQ29uZmlybSBNZXRob2RlIHdlbGNoZSBpbXBsZW1lbnRpZXJ0IHdlcmRlbiBtdXNzLiBNZXRob2RlIHdpcmQgYXVmZ2VydWZlbiwgd2VubiBlaW5cbiAgICogT3JkbmVyIGdlbMO2c2NodCB3ZXJkZW4gc29sbC5cbiAgICogQHBhcmFtIGZvbGRlciBPcmRlcm4gZsO8ciB3ZWxjaGVuIGVpbiBEZWxldGUgQ29uZmlybSBlaW5nZWZvcmRlcnQgd2VyZGVuIHNvbGwuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgY29uZmlybURlbGV0ZU5vZGUoZm9sZGVyOiBJQnJvd3Nlck5vZGUpOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAvKipcbiAgICogQWJzdHJha3RlIE1ldGhvZGUgZGllIEF1ZmdlcnVmZW4gd2lyZCwgd2VubiBkYXMgSG9jaGdlbGFkZW5lIEZpbGUgYXVzIGRlbSBUZW1wIEZvbGRlciBpbiBkaWVcbiAgICogU3RydWt0dXIgdmVyc2Nob2JlbiB3dXJkZS5cbiAgICogQHBhcmFtIHVwbG9hZGlkIElEIGRlcyBVcGxvYWRzXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgdXBsb2FkZWRGaWxlTW92ZWQodXBsb2FkaWQ6IHN0cmluZyk6IHZvaWQ7XG5cbiAgLy8gI2VuZHJlZ2lvbiBQdWJsaWMgQWJzdHJhY3QgTWV0aG9kc1xuXG4gIC8vICNyZWdpb24gUHJpdmF0ZSBNZXRob2RzXG5cbiAgLyoqXG4gICAqIFJla3Vyc2l2ZSBNZXRob2RlIHdlbGNoZSBiZWltIE5vZGUgdW5kIGFsbCBzZWluZW4gQ2hpbGRzIG5ldWUgTm9kZXMgZW50ZmVybnRcbiAgICogQHBhcmFtIG5vZGUgTm9kZSBiZWkgd2VsY2hlbSBhbGxlIG5ldWVuIE5vZGVzIGVudGZlcm50IHdlcmRlbiBzb2xsLlxuICAgKi9cbiAgcHJpdmF0ZSBjbGVhck5ld0NoaWxkTm9kZXMobm9kZTogSUJyb3dzZXJOb2RlKSB7XG4gICAgbm9kZS5DaGlsZE5vZGVzLmZvckVhY2goKGl0bSkgPT4ge1xuICAgICAgaWYgKGl0bS5Jc05ld05vZGUpIHtcbiAgICAgICAgbm9kZS5DaGlsZE5vZGVzLnNwbGljZShub2RlLkNoaWxkTm9kZXMuaW5kZXhPZihpdG0pKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIG5vZGUuQ2hpbGROb2Rlcy5mb3JFYWNoKChpdG0pID0+IHRoaXMuY2xlYXJOZXdDaGlsZE5vZGVzKGl0bSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZGUgd2VsY2hlIGRlbiBQZmFkIGbDvHIgZWluZW4gTm9kZSBlcnpldWd0XG4gICAqIEBwYXJhbSBub2RlIE5vZGUgZsO8ciB3ZWxjaGVuIGRlciBQZmFkIGVyemV1Z3Qgd2VyZGVuIHNvbGxcbiAgICogQHBhcmFtIHBhcmVudFBhdGggw5xiZXJnZW9yZG5ldGVyIFBmYWRcbiAgICovXG4gIHByaXZhdGUgZmlsbFBhdGgobm9kZTogSUJyb3dzZXJOb2RlLCBwYXJlbnRQYXRoOiBzdHJpbmcpIHtcbiAgICBub2RlLlBhdGggPSBwYXJlbnRQYXRoICsgJy8nICsgbm9kZS5OYW1lO1xuICAgIG5vZGUuQ2hpbGROb2Rlcy5mb3JFYWNoKChpdG0pID0+IHtcbiAgICAgIHRoaXMuZmlsbFBhdGgoaXRtLCBub2RlLlBhdGgpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFN1Y2h0IGRlbiDDvGJlcmdlb3JkbmV0ZW4gTm9kZSBpbSBUcmVlXG4gICAqIEBwYXJhbSBub2RlIEFrdHVlbGxlciBOb2RlXG4gICAqIEBwYXJhbSBub2RlVG9GaW5kIE5vZGUgd2VsY2hlciBnZWZ1bmRlbiB3ZXJkZW4gc29sbFxuICAgKiBAcmV0dXJucyBOb2RlIHdlbm4gZXIgZ2VmdW5kZW4gd3VyZGUsIGFuc29uc3RlbiB3aXJkIE5VTEwgenVyw7xja2dlZ2ViZW5cbiAgICovXG4gIHByaXZhdGUgZmluZFBhcmVudE5vZGUoXG4gICAgbm9kZTogSUJyb3dzZXJOb2RlLFxuICAgIG5vZGVUb0ZpbmQ6IElCcm93c2VyTm9kZVxuICApOiBJQnJvd3Nlck5vZGUge1xuICAgIGlmIChub2RlLkNoaWxkTm9kZXMuaW5kZXhPZihub2RlVG9GaW5kKSA+PSAwKSB7XG4gICAgICByZXR1cm4gbm9kZTtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGNoaWxkIG9mIG5vZGUuQ2hpbGROb2Rlcykge1xuICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5maW5kUGFyZW50Tm9kZShjaGlsZCwgbm9kZVRvRmluZCk7XG4gICAgICBpZiAocmVzdWx0ICE9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvKipcbiAgICogU3VjaHQgZWluZW4gTm9kZSBnZW0uIGVpbmVtIFVSTCBQZmFkXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgaW4gd2VsY2hlbSBnZXN1Y2h0IHdlcmRlbiBzb2xsXG4gICAqIEBwYXJhbSBwYXRoIFBmYWQgbmFjaCB3ZWxjaGVtIGdlc3VjaHQgd2lyZFxuICAgKiBAcmV0dXJucyBOb2RlIHdlbGNoZXIgenVtIGdlc3VjaHRlbiBQZmFkIHBhc3N0LiBXZW5uIGtlaW4gTm9kZSBnZWZ1bmRlbiB3aXJkLCB3aXJkIE5VTEwgenVyw7xja2dlZ2ViZW5cbiAgICovXG4gIHByaXZhdGUgZmluZFNlbGVjdGVkTm9kZUJ5UGF0aChcbiAgICBub2RlOiBJQnJvd3Nlck5vZGUsXG4gICAgcGF0aDogc3RyaW5nXG4gICk6IElCcm93c2VyTm9kZSB7XG4gICAgLy8gQ2FuY2VsIHdlbm4gUGZhZCBuaWNodCBkZWZpbmllcnRcbiAgICBpZiAocGF0aCA9PT0gdW5kZWZpbmVkIHx8IHBhdGggPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIC8vIFBmYWQgaW4gQXJyYXkgc3BsaXR0ZW4gdW5kIFJvb3QgRm9sZGVybmFtZSBzZXR6ZW5cbiAgICBjb25zdCBwYXRoQXJyYXkgPSBwYXRoLnNwbGl0KCcvJyk7XG4gICAgcGF0aEFycmF5WzBdID0gdGhpcy5yb290Tm9kZS5OYW1lO1xuXG4gICAgcmV0dXJuIHRoaXMuZmluZFNlbGVjdGVkTm9kZUJ5UGF0aEFycmF5KG5vZGUsIHBhdGhBcnJheSwgMCk7XG4gIH1cblxuICAvKipcbiAgICogU3VjaHQgZWluZW4gTm9kZSBnZW0uIGVpbmVtIEFycmF5IHZvbiBOb2RlIE5hbWVuXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgaW4gd2VsY2hlbSBnZXN1Y2h0IHdlcmRlbiBzb2xsXG4gICAqIEBwYXJhbSBwYXRoIEFycmF5IHZvbiBOb2RlIE5hbWVuLCB3ZWxjaGUgZGllIEhpcmFyY2h5IGRlcyBQZmFkZXMgYWJiaWxkZW5cbiAgICogQHBhcmFtIGluZGV4IEFrdHVlbGxlciBJbmRleCBpbSBQQVRIIEFycmF5XG4gICAqIEByZXR1cm5zIE5vZGUgd2VubiBlaW5lciBnZWZ1bmRlbiB3dXJkZSwgYW5zb25zdGVuIE5VTExcbiAgICovXG4gIHByaXZhdGUgZmluZFNlbGVjdGVkTm9kZUJ5UGF0aEFycmF5KFxuICAgIG5vZGU6IElCcm93c2VyTm9kZSxcbiAgICBwYXRoOiBzdHJpbmdbXSxcbiAgICBpbmRleDogbnVtYmVyXG4gICk6IElCcm93c2VyTm9kZSB7XG4gICAgLy8gQ2hlY2sgb2IgT3JkbmVyIGtvcnJla3QuIExldHplciBPcmRuZXIgenVyw7xja2dlYmVuLiBQYXRoIExhc3QgSW5kZXggaXN0IGRlciBGaWxlbmFtZVxuICAgIGlmIChub2RlLk5hbWUgPT09IHBhdGhbaW5kZXhdICYmIHBhdGgubGVuZ3RoIC0gMiA9PT0gaW5kZXgpIHtcbiAgICAgIHJldHVybiBub2RlO1xuICAgIH0gZWxzZSBpZiAobm9kZS5OYW1lID09PSBwYXRoW2luZGV4XSkge1xuICAgICAgLy8gRXhwYW5kIE5vZGVcbiAgICAgIG5vZGUuSXNFeHBhbmRlZCA9IHRydWU7XG4gICAgICBmb3IgKGNvbnN0IGl0ZW0gb2Ygbm9kZS5DaGlsZE5vZGVzKSB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuZmluZFNlbGVjdGVkTm9kZUJ5UGF0aEFycmF5KGl0ZW0sIHBhdGgsIGluZGV4ICsgMSk7XG5cbiAgICAgICAgaWYgKHJlc3VsdCAhPT0gbnVsbCkge1xuICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvKipcbiAgICogUmVrdXJzaXZlIE1ldGhvZGUgd2VsY2hlIGJlaW0gTm9kZSB1bmQgYWxsIHNlaW5lbiBDaGlsZHMgZGVuIEVkaXQgTW9kZSBiZWVuZGV0LlxuICAgKiBAcGFyYW0gbm9kZSBOb2RlIGJlaSB3ZWxjaGVtIGRlciBFZGl0IE1vZGUgYmVlbmRldCB3ZXJkZW4gc29sbFxuICAgKi9cbiAgcHJpdmF0ZSByZXNldE5vZGVFZGl0TW9kZShub2RlOiBJQnJvd3Nlck5vZGUpOiB2b2lkIHtcbiAgICBpZiAobm9kZSA9PT0gbnVsbCkge1xuICAgICAgdGhpcy5yZXNldE5vZGVFZGl0TW9kZSh0aGlzLnJvb3ROb2RlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgbm9kZS5Jc0VkaXRNb2RlID0gZmFsc2U7XG5cbiAgICAgIGlmIChub2RlLkNoaWxkTm9kZXMpIHtcbiAgICAgICAgbm9kZS5DaGlsZE5vZGVzLmZvckVhY2goKGl0bSkgPT4gdGhpcy5yZXNldE5vZGVFZGl0TW9kZShpdG0pKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2V0enQgZGVuIFBmYWQgaW4gYWxsZW4gTm9kZXNcbiAgICovXG4gIHByaXZhdGUgc2V0UGF0aFRvQWxsTm9kZXMoKSB7XG4gICAgdGhpcy5yb290Tm9kZS5DaGlsZE5vZGVzLmZvckVhY2goKGl0bSkgPT4ge1xuICAgICAgdGhpcy5maWxsUGF0aChpdG0sICcnKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8vICNlbmRyZWdpb24gUHJpdmF0ZSBNZXRob2RzXG59XG4iXSwibWFwcGluZ3MiOiI7MkZBQ0EsT0FDRUEsU0FBUyxDQUNUQyxZQUFZLENBQ1pDLFlBQVksQ0FFWkMsS0FBSyxDQUVMQyxNQUFNLEtBQ0QsZUFBZSxDQU10QixPQUNFQyxlQUFlLENBQ2ZDLHVCQUF1QixDQUN2QkMsd0JBQXdCLENBQ3hCQyxxQkFBcUIsQ0FDckJDLDhCQUE4QixLQUN6QixnQkFBZ0IsQ0FDdkIsT0FDRUMsc0JBQXNCLENBQ3RCQyw0QkFBNEIsS0FDdkIsd0NBQXdDLENBQy9DLE9BQVNDLDZCQUE2QixLQUFRLHlDQUF5QyxDLHlFQU12Rjs7R0FHQSxLQUNzQixDQUFBQyxvQkFBb0IsQ0FvR3hDO0FBRUE7QUFFQTs7OztPQUtBQyxZQUFZQyxVQUFzQixD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
|
|
146
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJEaXJlY3RpdmUiLCJFdmVudEVtaXR0ZXIiLCJIb3N0TGlzdGVuZXIiLCJJbnB1dCIsIk91dHB1dCIsIlNBQ0lDT05fU0VSVklDRSIsIlNBQ0xPQ0FMSVNBVElPTl9TRVJWSUNFIiwiU0FDVkFMSURBVElPTktFWV9TRVJWSUNFIiwiU2FjRGVmYXVsdEljb25TZXJ2aWNlIiwiU2FjRGVmYXVsdFZhbGlkYXRpb25LZXlTZXJ2aWNlIiwiU0FDRklMRUJST1dTRVJfU0VSVklDRSIsIlNhY0RlZmF1bHRGaWxlQnJvd3NlclNlcnZpY2UiLCJTYWNEZWZhdWx0TG9jYWxpc2F0aW9uU2VydmljZSIsIlNhY0ZpbGVCcm93c2VyQ29tbW9uIiwiY29uc3RydWN0b3IiLCJodHRwY2xpZW50IiwiaW5qZWN0b3IiLCJjb3ZfMTNhajZpbXBrdiIsImYiLCJzIiwicHJlc2VsZWNlZGZpbGUiLCJhbGxvd2VkdHlwZXMiLCJhbGxvd2ZpbGVkZWxldGUiLCJhbGxvd2ZpbGVyZW5hbWUiLCJhbGxvd2ZpbGV1cGxvYWQiLCJhbGxvd2ZvbGRlcmNyZWF0ZSIsImFsbG93Zm9sZGVyZGVsZXRlIiwiYWxsb3dmb2xkZXJyZW5hbWUiLCJmaWxlIiwicm9vdE5vZGUiLCJOYW1lIiwiQ2hpbGROb2RlcyIsIkZpbGVzIiwiSXNFeHBhbmRlZCIsIklzRWRpdE1vZGUiLCJJc05ld05vZGUiLCJQYXRoIiwic2VsZWN0ZWRGaWxlSXRlbSIsInNlbGVjdGVkTm9kZSIsInVwbG9hZHMiLCJicm93c2VyU2VydmljZSIsImdldCIsInZhbGlkYXRpb25LZXlTZXJ2aWNlIiwibG5nUmVzb3VyY2VTZXJ2aWNlIiwiaWNvblNlcnZpY2UiLCJzZWxlY3RlZGZpbGUiLCJ2Iiwic2VsZWN0ZWRub2RlIiwiZmluZFNlbGVjdGVkTm9kZUJ5UGF0aCIsImIiLCJzZWxlY3ROb2RlIiwiaWNvbkRlbGV0ZSIsIkJyb3dzZXJDb21wb25lbnREZWxldGVJY29uIiwiaWNvbkVkaXQiLCJCcm93c2VyQ29tcG9uZW50RWRpdEljb24iLCJpY29uRm9sZGVyQ29sbGFic2VkIiwiQnJvd3NlckNvbXBvbmVudEZvbGRlckNsb3NlZEljb24iLCJpY29uRm9sZGVyRW1wdHkiLCJCcm93c2VyQ29tcG9uZW50Rm9sZGVyRW1wdHlJY29uIiwiaWNvbkZvbGRlck5ldyIsIkJyb3dzZXJDb21wb25lbnRGb2xkZXJOZXdJY29uIiwiaWNvbkZvbGRlck9wZW4iLCJCcm93c2VyQ29tcG9uZW50Rm9sZGVyT3Blbkljb24iLCJpY29uUmVmcmVzaCIsIkJyb3dzZXJDb21wb25lbnRSZWZyZXNoSWNvbiIsInNlbGVjdEZpbGUiLCJsZW5ndGgiLCJzZWxlY3RlZEZpbGUiLCJleGl0RWRpdE1vZGUiLCJ0YXJnZXRFbGVtZW50IiwiZm9yRWFjaCIsIml0bSIsImNsZWFyTmV3Q2hpbGROb2RlcyIsInJlc2V0Tm9kZUVkaXRNb2RlIiwiZGVsZXRlRmlsZSIsImNvbmZpcm1EZWxldGVGaWxlIiwic3Vic2NyaWJlIiwiY29uZmlybSIsIkRlbGV0ZUZpbGUiLCJhcGl1cmwiLCJGaWxlbmFtZSIsInJlc3VsdCIsImRlbGV0ZU5vZGUiLCJub2RlIiwiY29uZmlybURlbGV0ZU5vZGUiLCJEZWxldGVOb2RlIiwicGFyZW50Tm9kZSIsImZpbmRQYXJlbnROb2RlIiwiTm9kZSIsImZpbGxQYXRoIiwiZWRpdEZpbGUiLCJlZGl0Tm9kZSIsIm5ld05vZGUiLCJpdGVtIiwicHVzaCIsIm5nT25Jbml0IiwiR2V0Tm9kZSIsInNldFBhdGhUb0FsbE5vZGVzIiwicmVmcmVzaE5vZGUiLCJzd2l0Y2hFeHBhbmROb2RlIiwicmVuYW1lRmlsZSIsIm5ld0ZpbGVuYW1lIiwiUmVuYW1lRmlsZSIsInJlbmFtZU5vZGUiLCJuZXdGb2xkZXJuYW1lIiwiUmVuYW1lTm9kZSIsIlNhdmVOb2RlIiwiZW5kc1dpdGgiLCJlbWl0IiwiR2V0RmlsZXMiLCJmaWxlbmFtZSIsInN1YnN0cmluZyIsImxhc3RJbmRleE9mIiwiZmluZCIsInVwbG9hZENvbXBsZXRlIiwidXBsb2FkSWRMaXN0IiwiZWxlbWVudCIsImluZGV4T2YiLCJpZCIsInBvcCIsIlNhdmVGaWxlIiwidXBsb2FkZWRGaWxlTW92ZWQiLCJzcGxpY2UiLCJwYXJlbnRQYXRoIiwibm9kZVRvRmluZCIsImNoaWxkIiwicGF0aCIsInVuZGVmaW5lZCIsInBhdGhBcnJheSIsInNwbGl0IiwiZmluZFNlbGVjdGVkTm9kZUJ5UGF0aEFycmF5IiwiaW5kZXgiLCJkZXBzIiwidG9rZW4iLCJpMSIsIkh0dHBDbGllbnQiLCJpMCIsIkluamVjdG9yIiwidGFyZ2V0IiwiybXJtUZhY3RvcnlUYXJnZXQiLCJpbnB1dHMiLCJvdXRwdXRzIiwiaG9zdCIsImxpc3RlbmVycyIsIm5nSW1wb3J0IiwiZGVjb3JhdG9ycyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1jb21tb24vc3JjL2NvbXBvbmVudHMvYnJvd3Nlci9icm93c2VyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBJbmplY3RvcixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IElTYWNGaWxlQnJvd3NlclNlcnZpY2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lTYWNGaWxlQnJvd3NlclNlcnZpY2UnO1xuaW1wb3J0IHsgSVNhY0ljb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9JU2FjSWNvblNlcnZpY2UnO1xuaW1wb3J0IHsgSVNhY0xvY2FsaXNhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL0lTYWNMb2NhbGlzYXRpb25TZXJ2aWNlJztcbmltcG9ydCB7IElTYWNWYWxpZGF0aW9uS2V5U2VydmljZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvSVNhY1ZhbGlkYXRpb25LZXlTZXJ2aWNlJztcbmltcG9ydCB7XG4gIFNBQ0lDT05fU0VSVklDRSxcbiAgU0FDTE9DQUxJU0FUSU9OX1NFUlZJQ0UsXG4gIFNBQ1ZBTElEQVRJT05LRVlfU0VSVklDRSxcbiAgU2FjRGVmYXVsdEljb25TZXJ2aWNlLFxuICBTYWNEZWZhdWx0VmFsaWRhdGlvbktleVNlcnZpY2UsXG59IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7XG4gIFNBQ0ZJTEVCUk9XU0VSX1NFUlZJQ0UsXG4gIFNhY0RlZmF1bHRGaWxlQnJvd3NlclNlcnZpY2UsXG59IGZyb20gJy4uLy4uL3NlcnZpY2VzL3NhYy1maWxlYnJvd3Nlci5zZXJ2aWNlJztcbmltcG9ydCB7IFNhY0RlZmF1bHRMb2NhbGlzYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvc2FjLWxvY2FsaXNhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IElCcm93c2VyRmlsZSB9IGZyb20gJy4vbW9kZWxzL2Jyb3dzZXJmaWxlJztcbmltcG9ydCB7IElCcm93c2VyRmlsZVJlc3BvbnNlIH0gZnJvbSAnLi9tb2RlbHMvYnJvd3NlcmZpbGVyZXNwb25zZSc7XG5pbXBvcnQgeyBJQnJvd3Nlck5vZGUgfSBmcm9tICcuL21vZGVscy9icm93c2Vybm9kZSc7XG5pbXBvcnQgeyBJQnJvd3Nlck5vZGVSZXNwb25zZSB9IGZyb20gJy4vbW9kZWxzL2Jyb3dzZXJub2RlcmVzcG9uc2UnO1xuXG4vKipcbiAqIEJhc2UgQ29tcG9uZW50IGbDvHIgRmlsZSBCcm93c2VyXG4gKi9cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFNhY0ZpbGVCcm93c2VyQ29tbW9uIGltcGxlbWVudHMgT25Jbml0IHtcbiAgLy8gI3JlZ2lvbiBQcm9wZXJ0aWVzXG5cbiAgLyoqXG4gICAqIFNlcnZpY2UgZsO8ciBGaWxlIEJyb3dzZXIgWnVncmlmZiAoQmFja2VuZClcbiAgICovXG4gIHByaXZhdGUgYnJvd3NlclNlcnZpY2U6IElTYWNGaWxlQnJvd3NlclNlcnZpY2U7XG4gIC8qKlxuICAgKiBJY29uIHNlcnZpY2UgdG8gcmVjZWl2ZSBpY29uIGNsYXNzZXMgZm9yIHVpXG4gICAqL1xuICBwcml2YXRlIGljb25TZXJ2aWNlOiBJU2FjSWNvblNlcnZpY2U7XG4gIC8qKlxuICAgKiBGaWxlIHdlbGNoZXMgYmVpbSBzdGFydGVuIGRlcyBCcm93c2VycyBiZXJlaXRzIHNlbGVrdGllcnQgaXN0XG4gICAqL1xuICBwcml2YXRlIHByZXNlbGVjZWRmaWxlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogRXJsYXVidGUgRGF0ZWllcndlaXRlcnVuZ2VuIGbDvHIgRmlsZWF1c3dhaGwgdW5kIFVwbG9hZC4gRGF0ZWllcndlaXRlcnVuZyBtaXQgUHVua3QgdW5kXG4gICAqIGdldHJlbm50IGR1cmNoIEtvbW1hIGbDvHIgbWVociBhbHMgZWluZSBFcndlaXRlcnVuZyAoRXhhbXBsZTogXCIuanBnLC5naWZcIilcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhbGxvd2VkdHlwZXM6IHN0cmluZyA9ICcnO1xuICAvKipcbiAgICogRXJsYXVidCBkYXMgbMO2c2NoZW4gZWluZXIgRGF0ZWlcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhbGxvd2ZpbGVkZWxldGU6IGJvb2xlYW4gPSB0cnVlO1xuICAvKipcbiAgICogRXJsYXVidCBkYXMgdW1iZW5lbm5lbiBlaW5lciBEYXRlaVxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGFsbG93ZmlsZXJlbmFtZTogYm9vbGVhbiA9IHRydWU7XG4gIC8qKlxuICAgKiBFcmxhdWJ0IGRlbiBVcGxvYWQgdm9uIERhdGVpZW5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhbGxvd2ZpbGV1cGxvYWQ6IGJvb2xlYW4gPSB0cnVlO1xuICAvKipcbiAgICogRXJsYXVidCBkYXMgZXJzdGVsbGVuIGVpbmVzIG5ldWVuIE9yZG5lcnNcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhbGxvd2ZvbGRlcmNyZWF0ZTogYm9vbGVhbiA9IHRydWU7XG4gIC8qKlxuICAgKiBFcmxhdWJ0IGRhcyBsw7ZzY2hlbiBlaW5lcyBPcmRuZXJzXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYWxsb3dmb2xkZXJkZWxldGU6IGJvb2xlYW4gPSB0cnVlO1xuICAvKipcbiAgICogRXJsYXVidCBkYXMgVW1iZW5lbm5lbiBlaW5lcyBPcmRuZXJzXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgYWxsb3dmb2xkZXJyZW5hbWU6IGJvb2xlYW4gPSB0cnVlO1xuICAvKipcbiAgICogVVJMIGbDvHIgQmFja2VuZCBBUElcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhcGl1cmw6IHN0cmluZztcbiAgLyoqXG4gICAqIE91dHB1dCBFbWl0dGVyIHdlbm4gRmlsZSBzZWxla3RpZXJ0IHdpcmQuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIGZpbGU6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgLyoqXG4gICAqIFNlcnZpY2UgZsO8ciBFcnJvciBMb2NhbGlzYXRpb25cbiAgICovXG4gIHB1YmxpYyBsbmdSZXNvdXJjZVNlcnZpY2U6IElTYWNMb2NhbGlzYXRpb25TZXJ2aWNlO1xuICAvKipcbiAgICogUm9vdCBOb2RlIEl0ZW0gZsO8ciBUcmVlXG4gICAqL1xuICBwdWJsaWMgcm9vdE5vZGU6IElCcm93c2VyTm9kZSA9IHtcbiAgICBOYW1lOiAnJyxcbiAgICBDaGlsZE5vZGVzOiBbXSxcbiAgICBGaWxlczogW10sXG4gICAgSXNFeHBhbmRlZDogdHJ1ZSxcbiAgICBJc0VkaXRNb2RlOiBmYWxzZSxcbiAgICBJc05ld05vZGU6IGZhbHNlLFxuICAgIFBhdGg6ICcnLFxuICB9O1xuICAvKipcbiAgICogU2VsZWN0ZWQgRmlsZSBOYW1lXG4gICAqL1xuICBwdWJsaWMgc2VsZWN0ZWRGaWxlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTZWxlY3RlZCBGaWxlIEl0ZW1cbiAgICovXG4gIHB1YmxpYyBzZWxlY3RlZEZpbGVJdGVtOiBJQnJvd3NlckZpbGUgPSBudWxsO1xuICAvKipcbiAgICogU2VsZWN0ZWQgTm9kZSBJdGVtXG4gICAqL1xuICBwdWJsaWMgc2VsZWN0ZWROb2RlOiBJQnJvd3Nlck5vZGUgPSBudWxsO1xuICAvKipcbiAgICogTGlzdGUgdm9uIFVwbG9hZHNcbiAgICovXG4gIHB1YmxpYyB1cGxvYWRzOiBzdHJpbmdbXSA9IFtdO1xuICAvKipcbiAgICogU2VydmljZSB0byByZWNlaXZlIHN0YW5kYXJkIHZhbGlkYXRpb24gbWVzc2FnZSBrZXlzIGFuZCB0ZXh0c1xuICAgKi9cbiAgcHVibGljIHZhbGlkYXRpb25LZXlTZXJ2aWNlOiBJU2FjVmFsaWRhdGlvbktleVNlcnZpY2U7XG5cbiAgLy8gI2VuZHJlZ2lvbiBQcm9wZXJ0aWVzXG5cbiAgLy8gI3JlZ2lvbiBDb25zdHJ1Y3RvcnNcblxuICAvKipcbiAgICogS29uc3RydWt0b3JcbiAgICogQHBhcmFtIGh0dHBjbGllbnQgQW5ndWxhciBIVFRQIENsaWVudFxuICAgKiBAcGFyYW0gaW5qZWN0b3IgU2VydmljZSBJbmplY3RvclxuICAgKi9cbiAgY29uc3RydWN0b3IoaHR0cGNsaWVudDogSHR0cENsaWVudCwgaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgdGhpcy5icm93c2VyU2VydmljZSA9IGluamVjdG9yLmdldChcbiAgICAgIFNBQ0ZJTEVCUk9XU0VSX1NFUlZJQ0UsXG4gICAgICBuZXcgU2FjRGVmYXVsdEZpbGVCcm93c2VyU2VydmljZShodHRwY2xpZW50KVxuICAgICk7XG4gICAgdGhpcy52YWxpZGF0aW9uS2V5U2VydmljZSA9IGluamVjdG9yLmdldChcbiAgICAgIFNBQ1ZBTElEQVRJT05LRVlfU0VSVklDRSxcbiAgICAgIG5ldyBTYWNEZWZhdWx0VmFsaWRhdGlvbktleVNlcnZpY2UoKVxuICAgICk7XG4gICAgdGhpcy5sbmdSZXNvdXJjZVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoXG4gICAgICBTQUNMT0NBTElTQVRJT05fU0VSVklDRSxcbiAgICAgIG5ldyBTYWNEZWZhdWx0TG9jYWxpc2F0aW9uU2VydmljZSh0aGlzLnZhbGlkYXRpb25LZXlTZXJ2aWNlKVxuICAgICk7XG5cbiAgICB0aGlzLmljb25TZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KFxuICAgICAgU0FDSUNPTl9TRVJWSUNFLFxuICAgICAgbmV3IFNhY0RlZmF1bHRJY29uU2VydmljZSgpXG4gICAgKTtcbiAgfVxuXG4gIC8vICNlbmRyZWdpb24gQ29uc3RydWN0b3JzXG5cbiAgLy8gI3JlZ2lvbiBQdWJsaWMgR2V0dGVycyBBbmQgU2V0dGVyc1xuXG4gIC8qKlxuICAgKiBTZXR6dCBkZW4gU2VsZWNlZCBOb2RlIMO8YmVyIGRlbiBQZmFkXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IHNlbGVjdGVkZmlsZSh2OiBzdHJpbmcgfCBudWxsKSB7XG4gICAgY29uc3Qgc2VsZWN0ZWRub2RlID0gdGhpcy5maW5kU2VsZWN0ZWROb2RlQnlQYXRoKHRoaXMucm9vdE5vZGUsIHYpO1xuXG4gICAgaWYgKHNlbGVjdGVkbm9kZSAhPT0gbnVsbCkge1xuICAgICAgdGhpcy5zZWxlY3ROb2RlKHNlbGVjdGVkbm9kZSk7XG4gICAgfVxuXG4gICAgdGhpcy5wcmVzZWxlY2VkZmlsZSA9IHY7XG4gIH1cblxuICAvKipcbiAgICogQ1NTIGljb24gY2xhc3MgZm9yIGRlbGV0ZSBpY29uXG4gICAqIEByZXR1cm5zIGNzcyBjbGFzcyB3aXRoIGljb25cbiAgICovXG4gIHB1YmxpYyBnZXQgaWNvbkRlbGV0ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmljb25TZXJ2aWNlLkJyb3dzZXJDb21wb25lbnREZWxldGVJY29uO1xuICB9XG5cbiAgLyoqXG4gICAqIENTUyBpY29uIGNsYXNzIGZvciBlZGl0IGljb25cbiAgICogQHJldHVybnMgY3NzIGNsYXNzIHdpdGggaWNvblxuICAgKi9cbiAgcHVibGljIGdldCBpY29uRWRpdCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmljb25TZXJ2aWNlLkJyb3dzZXJDb21wb25lbnRFZGl0SWNvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDU1MgaWNvbiBmb3IgZm9sZGVycyBpbiB0cmVlIHRoZXJlIGFyZSBjb2xsYWJzZWRcbiAgICogQHJldHVybnMgY3NzIGNsYXNzIHdpdGggaWNvblxuICAgKi9cbiAgcHVibGljIGdldCBpY29uRm9sZGVyQ29sbGFic2VkKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaWNvblNlcnZpY2UuQnJvd3NlckNvbXBvbmVudEZvbGRlckNsb3NlZEljb247XG4gIH1cblxuICAvKipcbiAgICogQ1NTIGljb24gY2xhc3MgZm9yIGZvbGRlcnMgd2l0aG91dCBzdWJmb2xkZXJzXG4gICAqIEByZXR1cm5zIGNzcyBjbGFzcyB3aXRoIGljb25cbiAgICovXG4gIHB1YmxpYyBnZXQgaWNvbkZvbGRlckVtcHR5KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaWNvblNlcnZpY2UuQnJvd3NlckNvbXBvbmVudEZvbGRlckVtcHR5SWNvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDU1MgaWNvbiBmb3IgbmV3IGZvbGRlcnMgYWN0aW9uXG4gICAqIEByZXR1cm5zIGNzcyBjbGFzcyB3aXRoIGljb25cbiAgICovXG4gIHB1YmxpYyBnZXQgaWNvbkZvbGRlck5ldygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmljb25TZXJ2aWNlLkJyb3dzZXJDb21wb25lbnRGb2xkZXJOZXdJY29uO1xuICB9XG5cbiAgLyoqXG4gICAqIENTUyBpY29uIGZvciBmb2xkZXJzIGluIHRyZWUgdGhlcmUgYXJlIGV4cGFuZGVkXG4gICAqIEByZXR1cm5zIGNzcyBjbGFzcyB3aXRoIGljb25cbiAgICovXG4gIHB1YmxpYyBnZXQgaWNvbkZvbGRlck9wZW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pY29uU2VydmljZS5Ccm93c2VyQ29tcG9uZW50Rm9sZGVyT3Blbkljb247XG4gIH1cblxuICAvKipcbiAgICogQ1NTIGljb24gY2xhc3MgZm9yIHJlZnJlc2ggaWNvblxuICAgKiBAcmV0dXJucyBjc3MgY2xhc3Mgd2l0aCBpY29uXG4gICAqL1xuICBwdWJsaWMgZ2V0IGljb25SZWZyZXNoKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuaWNvblNlcnZpY2UuQnJvd3NlckNvbXBvbmVudFJlZnJlc2hJY29uO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHRlciBmw7xyIFNlbGVjdGVkIEZpbGUuIElzdCBhbiBJbnB1dCBQcm9wZXJ0eSBnZWJ1bmRlblxuICAgKi9cbiAgcHVibGljIGdldCBzZWxlY3RlZGZpbGUoKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgaWYgKHRoaXMuc2VsZWN0RmlsZSAmJiB0aGlzLnNlbGVjdEZpbGUubGVuZ3RoID4gMCkge1xuICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRGaWxlO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICAvLyAjZW5kcmVnaW9uIFB1YmxpYyBHZXR0ZXJzIEFuZCBTZXR0ZXJzXG5cbiAgLy8gI3JlZ2lvbiBQdWJsaWMgTWV0aG9kc1xuXG4gIC8qKlxuICAgKiBIb3N0TGlzdGVuZXIgd2VsY2hlciBkZW4gRWRpdCBNb2RlIGJlaSBhbGxlbiBGaWxlcyB1bmQgTm9kZXMgYmVlbmRldC5cbiAgICovXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgWyckZXZlbnQudGFyZ2V0J10pXG4gIC8qKlxuICAgKiBDbGljayBFdmVudFxuICAgKi9cbiAgcHVibGljIGV4aXRFZGl0TW9kZSh0YXJnZXRFbGVtZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2VsZWN0ZWROb2RlKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkTm9kZS5GaWxlcy5mb3JFYWNoKChpdG0pID0+IChpdG0uSXNFZGl0TW9kZSA9IGZhbHNlKSk7XG5cbiAgICAgIGlmIChcbiAgICAgICAgIXRoaXMuc2VsZWN0ZWROb2RlIHx8XG4gICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlLk5hbWUgPT09IG51bGwgfHxcbiAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUuTmFtZS5sZW5ndGggPT09IDBcbiAgICAgICkge1xuICAgICAgICB0aGlzLmNsZWFyTmV3Q2hpbGROb2Rlcyh0aGlzLnJvb3ROb2RlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnJlc2V0Tm9kZUVkaXRNb2RlKG51bGwpO1xuICB9XG5cbiAgLyoqXG4gICAqIEzDtnNjaHQgZWluIEZpbGVcbiAgICogQHBhcmFtIGZpbGUgRmlsZSB3ZWxjaGVzIGdlbMO2c2NodCB3ZXJkZW4gc29sbFxuICAgKi9cbiAgcHVibGljIGRlbGV0ZUZpbGUoZmlsZTogSUJyb3dzZXJGaWxlKTogdm9pZCB7XG4gICAgdGhpcy5jb25maXJtRGVsZXRlRmlsZShmaWxlKS5zdWJzY3JpYmUoKGNvbmZpcm0pID0+IHtcbiAgICAgIGlmIChjb25maXJtKSB7XG4gICAgICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcbiAgICAgICAgICAuRGVsZXRlRmlsZShcbiAgICAgICAgICAgIHRoaXMuYXBpdXJsLFxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUuUGF0aCArICcvJyArIGZpbGUuRmlsZW5hbWUsXG4gICAgICAgICAgICB0aGlzLmFsbG93ZWR0eXBlc1xuICAgICAgICAgIClcbiAgICAgICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IElCcm93c2VyRmlsZVJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNlbGVjdGVkTm9kZS5GaWxlcyA9IHJlc3VsdC5GaWxlcztcbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMw7ZzY2h0IGVpbmVuIE5vZGVcbiAgICogQHBhcmFtIG5vZGUgTm9kZSB3ZWxjaGVyIGdlbMO2c2NodCB3ZXJkZW4gc29sbFxuICAgKi9cbiAgcHVibGljIGRlbGV0ZU5vZGUobm9kZTogSUJyb3dzZXJOb2RlKTogdm9pZCB7XG4gICAgdGhpcy5jb25maXJtRGVsZXRlTm9kZShub2RlKS5zdWJzY3JpYmUoKGNvbmZpcm0pID0+IHtcbiAgICAgIGlmIChjb25maXJtKSB7XG4gICAgICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcbiAgICAgICAgICAuRGVsZXRlTm9kZSh0aGlzLmFwaXVybCwgbm9kZS5QYXRoKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdDogSUJyb3dzZXJOb2RlUmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHBhcmVudE5vZGUgPSB0aGlzLmZpbmRQYXJlbnROb2RlKHRoaXMucm9vdE5vZGUsIG5vZGUpO1xuICAgICAgICAgICAgcGFyZW50Tm9kZS5DaGlsZE5vZGVzID0gcmVzdWx0Lk5vZGUuQ2hpbGROb2RlcztcblxuICAgICAgICAgICAgdGhpcy5yb290Tm9kZS5DaGlsZE5vZGVzLmZvckVhY2goKGl0bSkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLmZpbGxQYXRoKGl0bSwgJycpO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIHRoaXMuc2VsZWN0Tm9kZShwYXJlbnROb2RlKTtcbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXR6dCBlaW4gRmlsZSBpbiBkZW4gRWRpdCBNb2RlXG4gICAqIEBwYXJhbSBmaWxlIEZpbGUgd2VsY2hlcyBpbiBkZW4gRWRpdCBNb2RlIGdlc2V0enQgd2VyZGVuIHNvbGxcbiAgICovXG4gIHB1YmxpYyBlZGl0RmlsZShmaWxlOiBJQnJvd3NlckZpbGUpOiB2b2lkIHtcbiAgICBmaWxlLklzRWRpdE1vZGUgPSB0cnVlO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHp0IGVpbmVuIE5vZGUgaW4gZGVuIEVkaXQgTW9kZVxuICAgKiBAcGFyYW0gbm9kZSBOb2RlIHdlbGNoZXIgYmVhcmJlaXRldCB3ZXJkZW4gc29sbFxuICAgKi9cbiAgcHVibGljIGVkaXROb2RlKG5vZGU6IElCcm93c2VyTm9kZSk6IHZvaWQge1xuICAgIG5vZGUuSXNFZGl0TW9kZSA9IHRydWU7XG4gIH1cblxuICAvKipcbiAgICogRXJ6ZXVndCBlaW5lbiBuZXVlbiBOb2RlIGltIFRyZWVcbiAgICogQHBhcmFtIG5vZGUgTm9kZSB1bnRlciB3ZWxjaGVtIGVpbiBuZXVlciBOb2RlIGVyc3RlbGx0IHdlcmRlbiBzb2xsXG4gICAqL1xuICBwdWJsaWMgbmV3Tm9kZShub2RlOiBJQnJvd3Nlck5vZGUpIHtcbiAgICBjb25zdCBpdGVtOiBJQnJvd3Nlck5vZGUgPSB7XG4gICAgICBDaGlsZE5vZGVzOiBbXSxcbiAgICAgIEZpbGVzOiBbXSxcbiAgICAgIElzRWRpdE1vZGU6IGZhbHNlLFxuICAgICAgSXNFeHBhbmRlZDogZmFsc2UsXG4gICAgICBOYW1lOiAnJyxcbiAgICAgIFBhdGg6IG5vZGUuUGF0aCxcbiAgICAgIElzTmV3Tm9kZTogdHJ1ZSxcbiAgICB9O1xuXG4gICAgbm9kZS5DaGlsZE5vZGVzLnB1c2goaXRlbSk7XG4gICAgdGhpcy5zZWxlY3ROb2RlKGl0ZW0pO1xuICAgIHRoaXMuZWRpdE5vZGUoaXRlbSk7XG4gIH1cblxuICAvKipcbiAgICogSW5pdCBFdmVudCBkZXIgS29tcG9uZW50ZVxuICAgKi9cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcbiAgICAgIC5HZXROb2RlKHRoaXMuYXBpdXJsLCAnJywgdGhpcy5hbGxvd2VkdHlwZXMpXG4gICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IElCcm93c2VyTm9kZVJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHRoaXMucm9vdE5vZGUgPSB7XG4gICAgICAgICAgTmFtZTogcmVzdWx0Lk5vZGUuTmFtZSxcbiAgICAgICAgICBGaWxlczogcmVzdWx0Lk5vZGUuRmlsZXMsXG4gICAgICAgICAgQ2hpbGROb2RlczogcmVzdWx0Lk5vZGUuQ2hpbGROb2RlcyxcbiAgICAgICAgICBJc0V4cGFuZGVkOiB0cnVlLFxuICAgICAgICAgIElzRWRpdE1vZGU6IGZhbHNlLFxuICAgICAgICAgIElzTmV3Tm9kZTogZmFsc2UsXG4gICAgICAgICAgUGF0aDogJy8nLFxuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMuc2V0UGF0aFRvQWxsTm9kZXMoKTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUgPSB0aGlzLnJvb3ROb2RlO1xuXG4gICAgICAgIC8vIFNlbGVjdGVkIEZpbGUgZXJuZXV0IHNldHplbiwgd2VubiBQcm9wZXJ0eSBnZXNldHp0IHd1cmRlIGJldm9yIERhdGVuIHZvbSBTZXJ2aWNlIGdlbGFkZW4gd3VyZGVuLlxuICAgICAgICBpZiAodGhpcy5wcmVzZWxlY2VkZmlsZSAhPT0gbnVsbCAmJiB0aGlzLnByZXNlbGVjZWRmaWxlLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkZmlsZSA9IHRoaXMucHJlc2VsZWNlZGZpbGU7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFrdHVhbGlzaWVydCBkZW4gTm9kZVxuICAgKi9cbiAgcHVibGljIHJlZnJlc2hOb2RlKG5vZGU6IElCcm93c2VyTm9kZSk6IHZvaWQge1xuICAgIGlmICghbm9kZS5Jc0V4cGFuZGVkKSB7XG4gICAgICB0aGlzLnN3aXRjaEV4cGFuZE5vZGUobm9kZSk7XG4gICAgfVxuXG4gICAgdGhpcy5icm93c2VyU2VydmljZVxuICAgICAgLkdldE5vZGUodGhpcy5hcGl1cmwsIG5vZGUuUGF0aCwgdGhpcy5hbGxvd2VkdHlwZXMpXG4gICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IElCcm93c2VyTm9kZVJlc3BvbnNlKSA9PiB7XG4gICAgICAgIG5vZGUuQ2hpbGROb2RlcyA9IHJlc3VsdC5Ob2RlLkNoaWxkTm9kZXM7XG4gICAgICAgIG5vZGUuRmlsZXMgPSByZXN1bHQuTm9kZS5GaWxlcztcblxuICAgICAgICB0aGlzLnNldFBhdGhUb0FsbE5vZGVzKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBNZXRob2RlIHdlbm4gZWluZSBEYXRlaSB1bWJlbmFubnQgd2VyZGVuIHNvbGxcbiAgICogQHBhcmFtIGZpbGUgRmlsZSB3ZWxjaGVzIHVtYmVuYW5udCB3ZXJkZW4gc29sbFxuICAgKiBAcGFyYW0gbmV3RmlsZW5hbWUgTmV1ZXIgRGF0ZWluYW1lXG4gICAqL1xuICBwdWJsaWMgcmVuYW1lRmlsZShmaWxlOiBJQnJvd3NlckZpbGUsIG5ld0ZpbGVuYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBmaWxlLklzRWRpdE1vZGUgPSBmYWxzZTtcblxuICAgIGlmICghbmV3RmlsZW5hbWUgfHwgbmV3RmlsZW5hbWUgPT09IG51bGwgfHwgbmV3RmlsZW5hbWUubGVuZ3RoID09PSAwKSB7XG4gICAgICAvLyBDYW5jZWwsIEludmFsaWQgRmlsZW5hbWVcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoZmlsZS5GaWxlbmFtZSAhPT0gbmV3RmlsZW5hbWUpIHtcbiAgICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcbiAgICAgICAgLlJlbmFtZUZpbGUoXG4gICAgICAgICAgdGhpcy5hcGl1cmwsXG4gICAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUuUGF0aCArICcvJyArIGZpbGUuRmlsZW5hbWUsXG4gICAgICAgICAgbmV3RmlsZW5hbWUsXG4gICAgICAgICAgdGhpcy5hbGxvd2VkdHlwZXNcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKChyZXN1bHQ6IElCcm93c2VyRmlsZVJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUuRmlsZXMgPSByZXN1bHQuRmlsZXM7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBNZXRob2RlIHdlbm4gZWluIE5vZGUgdW1iZW5hbm50IHdlcmRlbiBzb2xsXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgd2VsY2hlciB1bWJlbmFubnQgd2VyZGVuIHNvbGxcbiAgICogQHBhcmFtIG5ld0ZvbGRlcm5hbWUgTmV1ZXIgT3JkbmVybmFtZVxuICAgKi9cbiAgcHVibGljIHJlbmFtZU5vZGUobm9kZTogSUJyb3dzZXJOb2RlLCBuZXdGb2xkZXJuYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBub2RlLklzRWRpdE1vZGUgPSBmYWxzZTtcblxuICAgIGlmICghbm9kZS5Jc05ld05vZGUpIHtcbiAgICAgIGlmIChcbiAgICAgICAgIW5ld0ZvbGRlcm5hbWUgfHxcbiAgICAgICAgbmV3Rm9sZGVybmFtZSA9PT0gbnVsbCB8fFxuICAgICAgICBuZXdGb2xkZXJuYW1lLmxlbmd0aCA9PT0gMFxuICAgICAgKSB7XG4gICAgICAgIC8vIENhbmNlbCBSZW5hbWUuIEludmFsaWQgRm9sZGVybmFtZVxuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmIChub2RlLk5hbWUgIT09IG5ld0ZvbGRlcm5hbWUpIHtcbiAgICAgICAgdGhpcy5icm93c2VyU2VydmljZVxuICAgICAgICAgIC5SZW5hbWVOb2RlKHRoaXMuYXBpdXJsLCBub2RlLlBhdGgsIG5ld0ZvbGRlcm5hbWUpXG4gICAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3Nlck5vZGVSZXNwb25zZSkgPT4ge1xuICAgICAgICAgICAgbm9kZS5OYW1lID0gcmVzdWx0Lk5vZGUuTmFtZTtcblxuICAgICAgICAgICAgdGhpcy5zZXRQYXRoVG9BbGxOb2RlcygpO1xuICAgICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoXG4gICAgICAgICFuZXdGb2xkZXJuYW1lIHx8XG4gICAgICAgIG5ld0ZvbGRlcm5hbWUgPT09IG51bGwgfHxcbiAgICAgICAgbmV3Rm9sZGVybmFtZS5sZW5ndGggPT09IDBcbiAgICAgICkge1xuICAgICAgICB0aGlzLmNsZWFyTmV3Q2hpbGROb2Rlcyh0aGlzLnJvb3ROb2RlKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBub2RlLk5hbWUgPSBuZXdGb2xkZXJuYW1lO1xuICAgICAgbm9kZS5Jc05ld05vZGUgPSBmYWxzZTtcbiAgICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcbiAgICAgICAgLlNhdmVOb2RlKHRoaXMuYXBpdXJsLCBub2RlLlBhdGgsIG5ld0ZvbGRlcm5hbWUpXG4gICAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdDogSUJyb3dzZXJOb2RlUmVzcG9uc2UpID0+IHtcbiAgICAgICAgICBub2RlLk5hbWUgPSByZXN1bHQuTm9kZS5OYW1lO1xuICAgICAgICAgIG5vZGUuRmlsZXMgPSByZXN1bHQuTm9kZS5GaWxlcztcblxuICAgICAgICAgIHRoaXMuc2V0UGF0aFRvQWxsTm9kZXMoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZGUgd2VubiBlaW4gRmlsZSBzZWxla3RpZXJ0IHdpcmRcbiAgICogQHBhcmFtIGZpbGUgRmlsZSB3ZWxjaGVzIHNlbGVrdGllcnQgd2lyZFxuICAgKi9cbiAgcHVibGljIHNlbGVjdEZpbGUoZmlsZTogSUJyb3dzZXJGaWxlKSB7XG4gICAgaWYgKCFmaWxlLklzRWRpdE1vZGUpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWROb2RlLkZpbGVzLmZvckVhY2goKGl0bSkgPT4gKGl0bS5Jc0VkaXRNb2RlID0gZmFsc2UpKTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuc2VsZWN0ZWROb2RlLlBhdGguZW5kc1dpdGgoJy8nKSkge1xuICAgICAgdGhpcy5zZWxlY3RlZEZpbGUgPSB0aGlzLnNlbGVjdGVkTm9kZS5QYXRoICsgJy8nICsgZmlsZS5GaWxlbmFtZTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZWxlY3RlZEZpbGUgPSAnLycgKyBmaWxlLkZpbGVuYW1lO1xuICAgIH1cblxuICAgIHRoaXMuc2VsZWN0ZWRGaWxlSXRlbSA9IGZpbGU7XG4gICAgdGhpcy5maWxlLmVtaXQodGhpcy5zZWxlY3RlZEZpbGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZGUgd2VubiBlaW4gTm9kZSBzZWxla3RpZXJ0IHdpcmRcbiAgICogQHBhcmFtIG5vZGUgTm9kZSB3ZWxjaGVyIHNlbGVrdGllcnQgd2VyZGVuIHNvbGxcbiAgICovXG4gIHB1YmxpYyBzZWxlY3ROb2RlKG5vZGU6IElCcm93c2VyTm9kZSk6IHZvaWQge1xuICAgIGlmICghbm9kZS5Jc0V4cGFuZGVkKSB7XG4gICAgICB0aGlzLnN3aXRjaEV4cGFuZE5vZGUobm9kZSk7XG4gICAgfVxuXG4gICAgLy8gUmVzZXQgdGhlIEVkaXQgTW9kZSBpbiBhbGwgTm9kZXNcbiAgICB0aGlzLnJlc2V0Tm9kZUVkaXRNb2RlKG51bGwpO1xuXG4gICAgaWYgKCFub2RlLkZpbGVzKSB7XG4gICAgICB0aGlzLmJyb3dzZXJTZXJ2aWNlXG4gICAgICAgIC5HZXRGaWxlcyh0aGlzLmFwaXVybCwgbm9kZS5QYXRoLCB0aGlzLmFsbG93ZWR0eXBlcylcbiAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3NlckZpbGVSZXNwb25zZSkgPT4ge1xuICAgICAgICAgIG5vZGUuRmlsZXMgPSByZXN1bHQuRmlsZXM7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZE5vZGUgPSBub2RlO1xuXG4gICAgICAgICAgaWYgKHRoaXMucHJlc2VsZWNlZGZpbGUgIT09IG51bGwgJiYgdGhpcy5wcmVzZWxlY2VkZmlsZS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBjb25zdCBmaWxlbmFtZSA9IHRoaXMucHJlc2VsZWNlZGZpbGUuc3Vic3RyaW5nKFxuICAgICAgICAgICAgICB0aGlzLnByZXNlbGVjZWRmaWxlLmxhc3RJbmRleE9mKCcvJykgKyAxXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgY29uc3QgZmlsZSA9IG5vZGUuRmlsZXMuZmluZCgoaXRtKSA9PiBpdG0uRmlsZW5hbWUgPT09IGZpbGVuYW1lKTtcbiAgICAgICAgICAgIGlmIChmaWxlKSB7XG4gICAgICAgICAgICAgIHRoaXMuc2VsZWN0RmlsZShmaWxlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNlbGVjdGVkTm9kZSA9IG5vZGU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEV4cGFuZC9Db2xsYWJzZSBNZXRob2RlIGbDvHIgTm9kZXNcbiAgICogQHBhcmFtIG5vZGUgTm9kZSB3ZWxjaGVyIGdlw7ZmZm5ldCBvZGVyIGdlc2NobG9zc2VuIHdlcmRlbiBzb2xsXG4gICAqL1xuICBwdWJsaWMgc3dpdGNoRXhwYW5kTm9kZShub2RlOiBJQnJvd3Nlck5vZGUpOiB2b2lkIHtcbiAgICBpZiAobm9kZS5Jc0V4cGFuZGVkKSB7XG4gICAgICBub2RlLklzRXhwYW5kZWQgPSBmYWxzZTtcbiAgICB9IGVsc2Uge1xuICAgICAgbm9kZS5Jc0V4cGFuZGVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTWV0aG9kZSBkaWUgQXVmZ2VydWZlbiB3ZXJkZW4gbXVzcywgd2VubiBlaW4gVXBsb2FkIGJlZW5kZXQgaXN0LlxuICAgKiBAcGFyYW0gcGFyYW0gUGFyYW1ldGVyIGRlcyBob2NoZ2VsYWRlbmVuIEZpbGVzXG4gICAqL1xuICBwdWJsaWMgdXBsb2FkQ29tcGxldGUobm9kZTogSUJyb3dzZXJOb2RlLCB1cGxvYWRJZExpc3Q6IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgaWYgKHVwbG9hZElkTGlzdCAhPT0gbnVsbCkge1xuICAgICAgdXBsb2FkSWRMaXN0LmZvckVhY2goKGVsZW1lbnQpID0+IHtcbiAgICAgICAgaWYgKHRoaXMudXBsb2Fkcy5pbmRleE9mKGVsZW1lbnQpIDwgMCkge1xuICAgICAgICAgIHRoaXMudXBsb2Fkcy5wdXNoKGVsZW1lbnQpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBjb25zdCBpZCA9IHRoaXMudXBsb2Fkcy5wb3AoKTtcbiAgICBpZiAoaWQpIHtcbiAgICAgIHRoaXMuYnJvd3NlclNlcnZpY2VcbiAgICAgICAgLlNhdmVGaWxlKHRoaXMuYXBpdXJsLCBub2RlLlBhdGgsIGlkLCB0aGlzLmFsbG93ZWR0eXBlcylcbiAgICAgICAgLnN1YnNjcmliZSgocmVzdWx0OiBJQnJvd3NlckZpbGVSZXNwb25zZSkgPT4ge1xuICAgICAgICAgIHRoaXMuc2VsZWN0ZWROb2RlLkZpbGVzID0gcmVzdWx0LkZpbGVzO1xuICAgICAgICAgIHRoaXMudXBsb2FkZWRGaWxlTW92ZWQoaWQpO1xuICAgICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvLyAjZW5kcmVnaW9uIFB1YmxpYyBNZXRob2RzXG5cbiAgLy8gI3JlZ2lvbiBQdWJsaWMgQWJzdHJhY3QgTWV0aG9kc1xuXG4gIC8qKlxuICAgKiBBYnN0cmFrdGUgQ29uZmlybSBNZXRob2RlIHdlbGNoZSBpbXBsZW1lbnRpZXJ0IHdlcmRlbiBtdXNzLiBNZXRob2RlIHdpcmQgYXVmZ2VydWZlbiwgd2VubiBlaW5lXG4gICAqIERhdGVpIGdlbMO2c2NodCB3ZXJkZW4gc29sbC5cbiAgICogQHBhcmFtIGZpbGUgRmlsZSBmw7xyIHdlbGNoZXMgZWluIERlbGV0ZSBDb25maXJtIGVpbmdlZm9yZGVydCB3ZXJkZW4gc29sbFxuICAgKi9cbiAgcHVibGljIGFic3RyYWN0IGNvbmZpcm1EZWxldGVGaWxlKGZpbGU6IElCcm93c2VyRmlsZSk6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIC8qKlxuICAgKiBBYnN0cmFrdGUgQ29uZmlybSBNZXRob2RlIHdlbGNoZSBpbXBsZW1lbnRpZXJ0IHdlcmRlbiBtdXNzLiBNZXRob2RlIHdpcmQgYXVmZ2VydWZlbiwgd2VubiBlaW5cbiAgICogT3JkbmVyIGdlbMO2c2NodCB3ZXJkZW4gc29sbC5cbiAgICogQHBhcmFtIGZvbGRlciBPcmRlcm4gZsO8ciB3ZWxjaGVuIGVpbiBEZWxldGUgQ29uZmlybSBlaW5nZWZvcmRlcnQgd2VyZGVuIHNvbGwuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgY29uZmlybURlbGV0ZU5vZGUoZm9sZGVyOiBJQnJvd3Nlck5vZGUpOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAvKipcbiAgICogQWJzdHJha3RlIE1ldGhvZGUgZGllIEF1ZmdlcnVmZW4gd2lyZCwgd2VubiBkYXMgSG9jaGdlbGFkZW5lIEZpbGUgYXVzIGRlbSBUZW1wIEZvbGRlciBpbiBkaWVcbiAgICogU3RydWt0dXIgdmVyc2Nob2JlbiB3dXJkZS5cbiAgICogQHBhcmFtIHVwbG9hZGlkIElEIGRlcyBVcGxvYWRzXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgdXBsb2FkZWRGaWxlTW92ZWQodXBsb2FkaWQ6IHN0cmluZyk6IHZvaWQ7XG5cbiAgLy8gI2VuZHJlZ2lvbiBQdWJsaWMgQWJzdHJhY3QgTWV0aG9kc1xuXG4gIC8vICNyZWdpb24gUHJpdmF0ZSBNZXRob2RzXG5cbiAgLyoqXG4gICAqIFJla3Vyc2l2ZSBNZXRob2RlIHdlbGNoZSBiZWltIE5vZGUgdW5kIGFsbCBzZWluZW4gQ2hpbGRzIG5ldWUgTm9kZXMgZW50ZmVybnRcbiAgICogQHBhcmFtIG5vZGUgTm9kZSBiZWkgd2VsY2hlbSBhbGxlIG5ldWVuIE5vZGVzIGVudGZlcm50IHdlcmRlbiBzb2xsLlxuICAgKi9cbiAgcHJpdmF0ZSBjbGVhck5ld0NoaWxkTm9kZXMobm9kZTogSUJyb3dzZXJOb2RlKSB7XG4gICAgbm9kZS5DaGlsZE5vZGVzLmZvckVhY2goKGl0bSkgPT4ge1xuICAgICAgaWYgKGl0bS5Jc05ld05vZGUpIHtcbiAgICAgICAgbm9kZS5DaGlsZE5vZGVzLnNwbGljZShub2RlLkNoaWxkTm9kZXMuaW5kZXhPZihpdG0pKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIG5vZGUuQ2hpbGROb2Rlcy5mb3JFYWNoKChpdG0pID0+IHRoaXMuY2xlYXJOZXdDaGlsZE5vZGVzKGl0bSkpO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZGUgd2VsY2hlIGRlbiBQZmFkIGbDvHIgZWluZW4gTm9kZSBlcnpldWd0XG4gICAqIEBwYXJhbSBub2RlIE5vZGUgZsO8ciB3ZWxjaGVuIGRlciBQZmFkIGVyemV1Z3Qgd2VyZGVuIHNvbGxcbiAgICogQHBhcmFtIHBhcmVudFBhdGggw5xiZXJnZW9yZG5ldGVyIFBmYWRcbiAgICovXG4gIHByaXZhdGUgZmlsbFBhdGgobm9kZTogSUJyb3dzZXJOb2RlLCBwYXJlbnRQYXRoOiBzdHJpbmcpIHtcbiAgICBub2RlLlBhdGggPSBwYXJlbnRQYXRoICsgJy8nICsgbm9kZS5OYW1lO1xuICAgIG5vZGUuQ2hpbGROb2Rlcy5mb3JFYWNoKChpdG0pID0+IHtcbiAgICAgIHRoaXMuZmlsbFBhdGgoaXRtLCBub2RlLlBhdGgpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFN1Y2h0IGRlbiDDvGJlcmdlb3JkbmV0ZW4gTm9kZSBpbSBUcmVlXG4gICAqIEBwYXJhbSBub2RlIEFrdHVlbGxlciBOb2RlXG4gICAqIEBwYXJhbSBub2RlVG9GaW5kIE5vZGUgd2VsY2hlciBnZWZ1bmRlbiB3ZXJkZW4gc29sbFxuICAgKiBAcmV0dXJucyBOb2RlIHdlbm4gZXIgZ2VmdW5kZW4gd3VyZGUsIGFuc29uc3RlbiB3aXJkIE5VTEwgenVyw7xja2dlZ2ViZW5cbiAgICovXG4gIHByaXZhdGUgZmluZFBhcmVudE5vZGUoXG4gICAgbm9kZTogSUJyb3dzZXJOb2RlLFxuICAgIG5vZGVUb0ZpbmQ6IElCcm93c2VyTm9kZVxuICApOiBJQnJvd3Nlck5vZGUge1xuICAgIGlmIChub2RlLkNoaWxkTm9kZXMuaW5kZXhPZihub2RlVG9GaW5kKSA+PSAwKSB7XG4gICAgICByZXR1cm4gbm9kZTtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGNoaWxkIG9mIG5vZGUuQ2hpbGROb2Rlcykge1xuICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5maW5kUGFyZW50Tm9kZShjaGlsZCwgbm9kZVRvRmluZCk7XG4gICAgICBpZiAocmVzdWx0ICE9PSBudWxsKSB7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvKipcbiAgICogU3VjaHQgZWluZW4gTm9kZSBnZW0uIGVpbmVtIFVSTCBQZmFkXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgaW4gd2VsY2hlbSBnZXN1Y2h0IHdlcmRlbiBzb2xsXG4gICAqIEBwYXJhbSBwYXRoIFBmYWQgbmFjaCB3ZWxjaGVtIGdlc3VjaHQgd2lyZFxuICAgKiBAcmV0dXJucyBOb2RlIHdlbGNoZXIgenVtIGdlc3VjaHRlbiBQZmFkIHBhc3N0LiBXZW5uIGtlaW4gTm9kZSBnZWZ1bmRlbiB3aXJkLCB3aXJkIE5VTEwgenVyw7xja2dlZ2ViZW5cbiAgICovXG4gIHByaXZhdGUgZmluZFNlbGVjdGVkTm9kZUJ5UGF0aChcbiAgICBub2RlOiBJQnJvd3Nlck5vZGUsXG4gICAgcGF0aDogc3RyaW5nXG4gICk6IElCcm93c2VyTm9kZSB7XG4gICAgLy8gQ2FuY2VsIHdlbm4gUGZhZCBuaWNodCBkZWZpbmllcnRcbiAgICBpZiAocGF0aCA9PT0gdW5kZWZpbmVkIHx8IHBhdGggPT09IG51bGwpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIC8vIFBmYWQgaW4gQXJyYXkgc3BsaXR0ZW4gdW5kIFJvb3QgRm9sZGVybmFtZSBzZXR6ZW5cbiAgICBjb25zdCBwYXRoQXJyYXkgPSBwYXRoLnNwbGl0KCcvJyk7XG4gICAgcGF0aEFycmF5WzBdID0gdGhpcy5yb290Tm9kZS5OYW1lO1xuXG4gICAgcmV0dXJuIHRoaXMuZmluZFNlbGVjdGVkTm9kZUJ5UGF0aEFycmF5KG5vZGUsIHBhdGhBcnJheSwgMCk7XG4gIH1cblxuICAvKipcbiAgICogU3VjaHQgZWluZW4gTm9kZSBnZW0uIGVpbmVtIEFycmF5IHZvbiBOb2RlIE5hbWVuXG4gICAqIEBwYXJhbSBub2RlIE5vZGUgaW4gd2VsY2hlbSBnZXN1Y2h0IHdlcmRlbiBzb2xsXG4gICAqIEBwYXJhbSBwYXRoIEFycmF5IHZvbiBOb2RlIE5hbWVuLCB3ZWxjaGUgZGllIEhpcmFyY2h5IGRlcyBQZmFkZXMgYWJiaWxkZW5cbiAgICogQHBhcmFtIGluZGV4IEFrdHVlbGxlciBJbmRleCBpbSBQQVRIIEFycmF5XG4gICAqIEByZXR1cm5zIE5vZGUgd2VubiBlaW5lciBnZWZ1bmRlbiB3dXJkZSwgYW5zb25zdGVuIE5VTExcbiAgICovXG4gIHByaXZhdGUgZmluZFNlbGVjdGVkTm9kZUJ5UGF0aEFycmF5KFxuICAgIG5vZGU6IElCcm93c2VyTm9kZSxcbiAgICBwYXRoOiBzdHJpbmdbXSxcbiAgICBpbmRleDogbnVtYmVyXG4gICk6IElCcm93c2VyTm9kZSB7XG4gICAgLy8gQ2hlY2sgb2IgT3JkbmVyIGtvcnJla3QuIExldHplciBPcmRuZXIgenVyw7xja2dlYmVuLiBQYXRoIExhc3QgSW5kZXggaXN0IGRlciBGaWxlbmFtZVxuICAgIGlmIChub2RlLk5hbWUgPT09IHBhdGhbaW5kZXhdICYmIHBhdGgubGVuZ3RoIC0gMiA9PT0gaW5kZXgpIHtcbiAgICAgIHJldHVybiBub2RlO1xuICAgIH0gZWxzZSBpZiAobm9kZS5OYW1lID09PSBwYXRoW2luZGV4XSkge1xuICAgICAgLy8gRXhwYW5kIE5vZGVcbiAgICAgIG5vZGUuSXNFeHBhbmRlZCA9IHRydWU7XG4gICAgICBmb3IgKGNvbnN0IGl0ZW0gb2Ygbm9kZS5DaGlsZE5vZGVzKSB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMuZmluZFNlbGVjdGVkTm9kZUJ5UGF0aEFycmF5KGl0ZW0sIHBhdGgsIGluZGV4ICsgMSk7XG5cbiAgICAgICAgaWYgKHJlc3VsdCAhPT0gbnVsbCkge1xuICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvKipcbiAgICogUmVrdXJzaXZlIE1ldGhvZGUgd2VsY2hlIGJlaW0gTm9kZSB1bmQgYWxsIHNlaW5lbiBDaGlsZHMgZGVuIEVkaXQgTW9kZSBiZWVuZGV0LlxuICAgKiBAcGFyYW0gbm9kZSBOb2RlIGJlaSB3ZWxjaGVtIGRlciBFZGl0IE1vZGUgYmVlbmRldCB3ZXJkZW4gc29sbFxuICAgKi9cbiAgcHJpdmF0ZSByZXNldE5vZGVFZGl0TW9kZShub2RlOiBJQnJvd3Nlck5vZGUpOiB2b2lkIHtcbiAgICBpZiAobm9kZSA9PT0gbnVsbCkge1xuICAgICAgdGhpcy5yZXNldE5vZGVFZGl0TW9kZSh0aGlzLnJvb3ROb2RlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgbm9kZS5Jc0VkaXRNb2RlID0gZmFsc2U7XG5cbiAgICAgIGlmIChub2RlLkNoaWxkTm9kZXMpIHtcbiAgICAgICAgbm9kZS5DaGlsZE5vZGVzLmZvckVhY2goKGl0bSkgPT4gdGhpcy5yZXNldE5vZGVFZGl0TW9kZShpdG0pKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2V0enQgZGVuIFBmYWQgaW4gYWxsZW4gTm9kZXNcbiAgICovXG4gIHByaXZhdGUgc2V0UGF0aFRvQWxsTm9kZXMoKSB7XG4gICAgdGhpcy5yb290Tm9kZS5DaGlsZE5vZGVzLmZvckVhY2goKGl0bSkgPT4ge1xuICAgICAgdGhpcy5maWxsUGF0aChpdG0sICcnKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8vICNlbmRyZWdpb24gUHJpdmF0ZSBNZXRob2RzXG59XG4iXSwibWFwcGluZ3MiOiI7MkZBQ0EsT0FDRUEsU0FBUyxDQUNUQyxZQUFZLENBQ1pDLFlBQVksQ0FFWkMsS0FBSyxDQUVMQyxNQUFNLEtBQ0QsZUFBZSxDQU10QixPQUNFQyxlQUFlLENBQ2ZDLHVCQUF1QixDQUN2QkMsd0JBQXdCLENBQ3hCQyxxQkFBcUIsQ0FDckJDLDhCQUE4QixLQUN6QixnQkFBZ0IsQ0FDdkIsT0FDRUMsc0JBQXNCLENBQ3RCQyw0QkFBNEIsS0FDdkIsd0NBQXdDLENBQy9DLE9BQVNDLDZCQUE2QixLQUFRLHlDQUF5QyxDLHlFQU12Rjs7R0FHQSxLQUNzQixDQUFBQyxvQkFBb0IsQ0FvR3hDO0FBRUE7QUFFQTs7OztPQUtBQyxZQUFZQyxVQUFzQixD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
|
|
@@ -5,4 +5,4 @@ cov_2yyxkk9u3=function(){return actualCoverage;};}return actualCoverage;}cov_2yy
|
|
|
5
5
|
* Konstruktor
|
|
6
6
|
* @param init Initale Werte der Klasse
|
|
7
7
|
*/constructor(init){cov_2yyxkk9u3().f[0]++;cov_2yyxkk9u3().s[0]++;Object.assign(this,init);}}//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3NlcmZpbGVkZWxldGVyZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29tcG9uZW50cy9icm93c2VyL21vZGVscy9icm93c2VyZmlsZWRlbGV0ZXJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxNQUFNLE9BQU8sd0JBQXdCO0lBQ25DOzs7T0FHRztJQUNILFlBQVksSUFBd0M7UUFDbEQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztDQVVGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBLbGFzc2UgZsO8ciBBUEkgUmVxdWVzdCB6dW0gbMO2c2NoZW4gZWluZXMgRmlsZXNcbiAqL1xuZXhwb3J0IGNsYXNzIEJyb3dzZXJGaWxlRGVsZXRlUmVxdWVzdCB7XG4gIC8qKlxuICAgKiBLb25zdHJ1a3RvclxuICAgKiBAcGFyYW0gaW5pdCBJbml0YWxlIFdlcnRlIGRlciBLbGFzc2VcbiAgICovXG4gIGNvbnN0cnVjdG9yKGluaXQ/OiBQYXJ0aWFsPEJyb3dzZXJGaWxlRGVsZXRlUmVxdWVzdD4pIHtcbiAgICBPYmplY3QuYXNzaWduKHRoaXMsIGluaXQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFBmYWRcbiAgICovXG4gIFBhdGg6IHN0cmluZztcbiAgLyoqXG4gICAqIEVybGF1YnRlIERhdGVpdHlwZW5cbiAgICovXG4gIEFsbG93ZWRUeXBlczogc3RyaW5nO1xufVxuIl19
|
|
8
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCcm93c2VyRmlsZURlbGV0ZVJlcXVlc3QiLCJjb25zdHJ1Y3RvciIsImluaXQiLCJjb3ZfMnl5eGtrOXUzIiwiZiIsInMiLCJPYmplY3QiLCJhc3NpZ24iXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy9jb21wb25lbnRzL2Jyb3dzZXIvbW9kZWxzL2Jyb3dzZXJmaWxlZGVsZXRlcmVxdWVzdC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEtsYXNzZSBmw7xyIEFQSSBSZXF1ZXN0IHp1bSBsw7ZzY2hlbiBlaW5lcyBGaWxlc1xuICovXG5leHBvcnQgY2xhc3MgQnJvd3NlckZpbGVEZWxldGVSZXF1ZXN0IHtcbiAgLyoqXG4gICAqIEtvbnN0cnVrdG9yXG4gICAqIEBwYXJhbSBpbml0IEluaXRhbGUgV2VydGUgZGVyIEtsYXNzZVxuICAgKi9cbiAgY29uc3RydWN0b3IoaW5pdD86IFBhcnRpYWw8QnJvd3NlckZpbGVEZWxldGVSZXF1ZXN0Pikge1xuICAgIE9iamVjdC5hc3NpZ24odGhpcywgaW5pdCk7XG4gIH1cblxuICAvKipcbiAgICogUGZhZFxuICAgKi9cbiAgUGF0aDogc3RyaW5nO1xuICAvKipcbiAgICogRXJsYXVidGUgRGF0ZWl0eXBlblxuICAgKi9cbiAgQWxsb3dlZFR5cGVzOiBzdHJpbmc7XG59XG4iXSwibWFwcGluZ3MiOiI7eUZBQUE7O0dBR0EsTUFBTSxNQUFPLENBQUFBLHdCQUF3QixDQUNuQzs7O09BSUFDLFlBQVlDLElBQXdDLEVBQUFDLGFBQUEsR0FBQUMsQ0FBQSxLQUFBRCxDQUFBLGdCQUFBRSxDQUFBLE1BQ2xEQyxNQUFNLENBQUNDLE1BQU0sQ0FBQyxJQUFJLENBQUVMLElBQUksQ0FBQyxDQUMzQixDIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -5,4 +5,4 @@ cov_vped5ge6w=function(){return actualCoverage;};}return actualCoverage;}cov_vpe
|
|
|
5
5
|
* Konstruktor
|
|
6
6
|
* @param init Initiale Werte
|
|
7
7
|
*/constructor(init){cov_vped5ge6w().f[0]++;cov_vped5ge6w().s[0]++;Object.assign(this,init);}}//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3NlcmZpbGVyZW5hbWVyZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29tcG9uZW50cy9icm93c2VyL21vZGVscy9icm93c2VyZmlsZXJlbmFtZXJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxNQUFNLE9BQU8sd0JBQXdCO0lBQ25DOzs7T0FHRztJQUNILFlBQVksSUFBd0M7UUFDbEQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztDQWNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBLbGFzc2UgZsO8ciBkZW4gQVBJIFJlcXVlc3QgenVtIHVtYmVuZW5uZW4gZWluZXIgRGF0ZWlcbiAqL1xuZXhwb3J0IGNsYXNzIEJyb3dzZXJGaWxlUmVuYW1lUmVxdWVzdCB7XG4gIC8qKlxuICAgKiBLb25zdHJ1a3RvclxuICAgKiBAcGFyYW0gaW5pdCBJbml0aWFsZSBXZXJ0ZVxuICAgKi9cbiAgY29uc3RydWN0b3IoaW5pdD86IFBhcnRpYWw8QnJvd3NlckZpbGVSZW5hbWVSZXF1ZXN0Pikge1xuICAgIE9iamVjdC5hc3NpZ24odGhpcywgaW5pdCk7XG4gIH1cblxuICAvKipcbiAgICogUGZhZCB6dSBEYXRlaVxuICAgKi9cbiAgUGF0aDogc3RyaW5nO1xuICAvKipcbiAgICogTmV1ZXIgRGF0ZWluYW1lXG4gICAqL1xuICBOZXdGaWxlbmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogRXJsYXVidGUgRGF0ZWllcndlaXRlcnVuZ2VuXG4gICAqL1xuICBBbGxvd2VkVHlwZXM6IHN0cmluZztcbn1cbiJdfQ==
|
|
8
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCcm93c2VyRmlsZVJlbmFtZVJlcXVlc3QiLCJjb25zdHJ1Y3RvciIsImluaXQiLCJjb3ZfdnBlZDVnZTZ3IiwiZiIsInMiLCJPYmplY3QiLCJhc3NpZ24iXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy9jb21wb25lbnRzL2Jyb3dzZXIvbW9kZWxzL2Jyb3dzZXJmaWxlcmVuYW1lcmVxdWVzdC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEtsYXNzZSBmw7xyIGRlbiBBUEkgUmVxdWVzdCB6dW0gdW1iZW5lbm5lbiBlaW5lciBEYXRlaVxuICovXG5leHBvcnQgY2xhc3MgQnJvd3NlckZpbGVSZW5hbWVSZXF1ZXN0IHtcbiAgLyoqXG4gICAqIEtvbnN0cnVrdG9yXG4gICAqIEBwYXJhbSBpbml0IEluaXRpYWxlIFdlcnRlXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihpbml0PzogUGFydGlhbDxCcm93c2VyRmlsZVJlbmFtZVJlcXVlc3Q+
|
|
8
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCcm93c2VyRmlsZVJlbmFtZVJlcXVlc3QiLCJjb25zdHJ1Y3RvciIsImluaXQiLCJjb3ZfdnBlZDVnZTZ3IiwiZiIsInMiLCJPYmplY3QiLCJhc3NpZ24iXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy9jb21wb25lbnRzL2Jyb3dzZXIvbW9kZWxzL2Jyb3dzZXJmaWxlcmVuYW1lcmVxdWVzdC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEtsYXNzZSBmw7xyIGRlbiBBUEkgUmVxdWVzdCB6dW0gdW1iZW5lbm5lbiBlaW5lciBEYXRlaVxuICovXG5leHBvcnQgY2xhc3MgQnJvd3NlckZpbGVSZW5hbWVSZXF1ZXN0IHtcbiAgLyoqXG4gICAqIEtvbnN0cnVrdG9yXG4gICAqIEBwYXJhbSBpbml0IEluaXRpYWxlIFdlcnRlXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihpbml0PzogUGFydGlhbDxCcm93c2VyRmlsZVJlbmFtZVJlcXVlc3Q+KSB7XG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLCBpbml0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQZmFkIHp1IERhdGVpXG4gICAqL1xuICBQYXRoOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBOZXVlciBEYXRlaW5hbWVcbiAgICovXG4gIE5ld0ZpbGVuYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBFcmxhdWJ0ZSBEYXRlaWVyd2VpdGVydW5nZW5cbiAgICovXG4gIEFsbG93ZWRUeXBlczogc3RyaW5nO1xufVxuIl0sIm1hcHBpbmdzIjoiO3lGQUFBOztHQUdBLE1BQU0sTUFBTyxDQUFBQSx3QkFBd0IsQ0FDbkM7OztPQUlBQyxZQUFZQyxJQUF3QyxFQUFBQyxhQUFBLEdBQUFDLENBQUEsS0FBQUQsQ0FBQSxnQkFBQUUsQ0FBQSxNQUNsREMsTUFBTSxDQUFDQyxNQUFNLENBQUMsSUFBSSxDQUFFTCxJQUFJLENBQUMsQ0FDM0IsQyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -5,4 +5,4 @@ cov_2f3np7i29w=function(){return actualCoverage;};}return actualCoverage;}cov_2f
|
|
|
5
5
|
* Constructor
|
|
6
6
|
* @param init Initale Parameter
|
|
7
7
|
*/constructor(init){cov_2f3np7i29w().f[0]++;cov_2f3np7i29w().s[0]++;Object.assign(this,init);}}//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3NlcmZpbGVzYXZlcmVxdWVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1jb21tb24vc3JjL2NvbXBvbmVudHMvYnJvd3Nlci9tb2RlbHMvYnJvd3NlcmZpbGVzYXZlcmVxdWVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sT0FBTyxzQkFBc0I7SUFDakM7OztPQUdHO0lBQ0gsWUFBWSxJQUFzQztRQUNoRCxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM1QixDQUFDO0NBY0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFJlcXVlc3QgenVtIHNwZWljaGVybiBlaW5lciBob2NoZ2VsYWRlbmVuIERhdGVpXG4gKi9cbmV4cG9ydCBjbGFzcyBCcm93c2VyRmlsZVNhdmVSZXF1ZXN0IHtcbiAgLyoqXG4gICAqIENvbnN0cnVjdG9yXG4gICAqIEBwYXJhbSBpbml0IEluaXRhbGUgUGFyYW1ldGVyXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihpbml0PzogUGFydGlhbDxCcm93c2VyRmlsZVNhdmVSZXF1ZXN0Pikge1xuICAgIE9iamVjdC5hc3NpZ24odGhpcywgaW5pdCk7XG4gIH1cblxuICAvKipcbiAgICogUGZhZCBpbiB3ZWxjaGVtIGRlciBVcGxvYWQgZ2VzcGVpY2hlcnQgd2VyZGVuIHNvbGxcbiAgICovXG4gIHB1YmxpYyBQYXRoOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBVcGxvYWQgSURcbiAgICovXG4gIHB1YmxpYyBVcGxvYWRJZDogc3RyaW5nO1xuICAvKipcbiAgICogRXJsYXVidGUgRGF0ZWl0eXBlblxuICAgKi9cbiAgcHVibGljIEFsbG93ZWRUeXBlczogc3RyaW5nO1xufVxuIl19
|
|
8
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCcm93c2VyRmlsZVNhdmVSZXF1ZXN0IiwiY29uc3RydWN0b3IiLCJpbml0IiwiY292XzJmM25wN2kyOXciLCJmIiwicyIsIk9iamVjdCIsImFzc2lnbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1jb21tb24vc3JjL2NvbXBvbmVudHMvYnJvd3Nlci9tb2RlbHMvYnJvd3NlcmZpbGVzYXZlcmVxdWVzdC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFJlcXVlc3QgenVtIHNwZWljaGVybiBlaW5lciBob2NoZ2VsYWRlbmVuIERhdGVpXG4gKi9cbmV4cG9ydCBjbGFzcyBCcm93c2VyRmlsZVNhdmVSZXF1ZXN0IHtcbiAgLyoqXG4gICAqIENvbnN0cnVjdG9yXG4gICAqIEBwYXJhbSBpbml0IEluaXRhbGUgUGFyYW1ldGVyXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihpbml0PzogUGFydGlhbDxCcm93c2VyRmlsZVNhdmVSZXF1ZXN0Pikge1xuICAgIE9iamVjdC5hc3NpZ24odGhpcywgaW5pdCk7XG4gIH1cblxuICAvKipcbiAgICogUGZhZCBpbiB3ZWxjaGVtIGRlciBVcGxvYWQgZ2VzcGVpY2hlcnQgd2VyZGVuIHNvbGxcbiAgICovXG4gIHB1YmxpYyBQYXRoOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBVcGxvYWQgSURcbiAgICovXG4gIHB1YmxpYyBVcGxvYWRJZDogc3RyaW5nO1xuICAvKipcbiAgICogRXJsYXVidGUgRGF0ZWl0eXBlblxuICAgKi9cbiAgcHVibGljIEFsbG93ZWRUeXBlczogc3RyaW5nO1xufVxuIl0sIm1hcHBpbmdzIjoiOzJGQUFBOztHQUdBLE1BQU0sTUFBTyxDQUFBQSxzQkFBc0IsQ0FDakM7OztPQUlBQyxZQUFZQyxJQUFzQyxFQUFBQyxjQUFBLEdBQUFDLENBQUEsS0FBQUQsQ0FBQSxpQkFBQUUsQ0FBQSxNQUNoREMsTUFBTSxDQUFDQyxNQUFNLENBQUMsSUFBSSxDQUFFTCxJQUFJLENBQUMsQ0FDM0IsQyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -5,4 +5,4 @@ cov_es1rqupl=function(){return actualCoverage;};}return actualCoverage;}cov_es1r
|
|
|
5
5
|
* Konstruktor
|
|
6
6
|
* @param init Initiale Werte
|
|
7
7
|
*/constructor(init){cov_es1rqupl().f[0]++;cov_es1rqupl().s[0]++;Object.assign(this,init);}}//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3Nlcm5vZGVkZWxldGVyZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29tcG9uZW50cy9icm93c2VyL21vZGVscy9icm93c2Vybm9kZWRlbGV0ZXJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxNQUFNLE9BQU8sd0JBQXdCO0lBQ25DOzs7T0FHRztJQUNILFlBQVksSUFBd0M7UUFDbEQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztDQU1GIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBLbGFzc2UgZsO8ciBBUEkgUmVxdWVzdCB6dW0gbMO2c2NoZW4gZWluZXMgTm9kZXNcbiAqL1xuZXhwb3J0IGNsYXNzIEJyb3dzZXJOb2RlRGVsZXRlUmVxdWVzdCB7XG4gIC8qKlxuICAgKiBLb25zdHJ1a3RvclxuICAgKiBAcGFyYW0gaW5pdCBJbml0aWFsZSBXZXJ0ZVxuICAgKi9cbiAgY29uc3RydWN0b3IoaW5pdD86IFBhcnRpYWw8QnJvd3Nlck5vZGVEZWxldGVSZXF1ZXN0Pikge1xuICAgIE9iamVjdC5hc3NpZ24odGhpcywgaW5pdCk7XG4gIH1cblxuICAvKipcbiAgICogUGZhZFxuICAgKi9cbiAgUGF0aDogc3RyaW5nO1xufVxuIl19
|
|
8
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCcm93c2VyTm9kZURlbGV0ZVJlcXVlc3QiLCJjb25zdHJ1Y3RvciIsImluaXQiLCJjb3ZfZXMxcnF1cGwiLCJmIiwicyIsIk9iamVjdCIsImFzc2lnbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1jb21tb24vc3JjL2NvbXBvbmVudHMvYnJvd3Nlci9tb2RlbHMvYnJvd3Nlcm5vZGVkZWxldGVyZXF1ZXN0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogS2xhc3NlIGbDvHIgQVBJIFJlcXVlc3QgenVtIGzDtnNjaGVuIGVpbmVzIE5vZGVzXG4gKi9cbmV4cG9ydCBjbGFzcyBCcm93c2VyTm9kZURlbGV0ZVJlcXVlc3Qge1xuICAvKipcbiAgICogS29uc3RydWt0b3JcbiAgICogQHBhcmFtIGluaXQgSW5pdGlhbGUgV2VydGVcbiAgICovXG4gIGNvbnN0cnVjdG9yKGluaXQ/
|
|
8
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCcm93c2VyTm9kZURlbGV0ZVJlcXVlc3QiLCJjb25zdHJ1Y3RvciIsImluaXQiLCJjb3ZfZXMxcnF1cGwiLCJmIiwicyIsIk9iamVjdCIsImFzc2lnbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NhYy1jb21tb24vc3JjL2NvbXBvbmVudHMvYnJvd3Nlci9tb2RlbHMvYnJvd3Nlcm5vZGVkZWxldGVyZXF1ZXN0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogS2xhc3NlIGbDvHIgQVBJIFJlcXVlc3QgenVtIGzDtnNjaGVuIGVpbmVzIE5vZGVzXG4gKi9cbmV4cG9ydCBjbGFzcyBCcm93c2VyTm9kZURlbGV0ZVJlcXVlc3Qge1xuICAvKipcbiAgICogS29uc3RydWt0b3JcbiAgICogQHBhcmFtIGluaXQgSW5pdGlhbGUgV2VydGVcbiAgICovXG4gIGNvbnN0cnVjdG9yKGluaXQ/OiBQYXJ0aWFsPEJyb3dzZXJOb2RlRGVsZXRlUmVxdWVzdD4pIHtcbiAgICBPYmplY3QuYXNzaWduKHRoaXMsIGluaXQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFBmYWRcbiAgICovXG4gIFBhdGg6IHN0cmluZztcbn1cbiJdLCJtYXBwaW5ncyI6Ijt1RkFBQTs7R0FHQSxNQUFNLE1BQU8sQ0FBQUEsd0JBQXdCLENBQ25DOzs7T0FJQUMsWUFBWUMsSUFBd0MsRUFBQUMsWUFBQSxHQUFBQyxDQUFBLEtBQUFELENBQUEsZUFBQUUsQ0FBQSxNQUNsREMsTUFBTSxDQUFDQyxNQUFNLENBQUMsSUFBSSxDQUFFTCxJQUFJLENBQUMsQ0FDM0IsQyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -5,4 +5,4 @@ cov_22b9gak86u=function(){return actualCoverage;};}return actualCoverage;}cov_22
|
|
|
5
5
|
* Konstruktor
|
|
6
6
|
* @param init Initiale Werte
|
|
7
7
|
*/constructor(init){cov_22b9gak86u().f[0]++;cov_22b9gak86u().s[0]++;Object.assign(this,init);}}//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3Nlcm5vZGVuZXdyZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29tcG9uZW50cy9icm93c2VyL21vZGVscy9icm93c2Vybm9kZW5ld3JlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxNQUFNLE9BQU8scUJBQXFCO0lBQ2hDOzs7T0FHRztJQUNILFlBQVksSUFBcUM7UUFDL0MsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztDQVVGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBLbGFzc2UgZsO8ciBBUEkgUmVxdWVzdCB6dW0gYW5sZWdlbiBlaW5lcyBuZXVlbiBOb2Rlc1xuICovXG5leHBvcnQgY2xhc3MgQnJvd3Nlck5vZGVOZXdSZXF1ZXN0IHtcbiAgLyoqXG4gICAqIEtvbnN0cnVrdG9yXG4gICAqIEBwYXJhbSBpbml0IEluaXRpYWxlIFdlcnRlXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihpbml0PzogUGFydGlhbDxCcm93c2VyTm9kZU5ld1JlcXVlc3Q+KSB7XG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLCBpbml0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQZmFkXG4gICAqL1xuICBQYXRoOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBOYW1lIGRlcyBuZXVlbiBOb2Rlc1xuICAgKi9cbiAgTmV3Rm9sZGVybmFtZTogc3RyaW5nO1xufVxuIl19
|
|
8
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCcm93c2VyTm9kZU5ld1JlcXVlc3QiLCJjb25zdHJ1Y3RvciIsImluaXQiLCJjb3ZfMjJiOWdhazg2dSIsImYiLCJzIiwiT2JqZWN0IiwiYXNzaWduIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29tcG9uZW50cy9icm93c2VyL21vZGVscy9icm93c2Vybm9kZW5ld3JlcXVlc3QudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBLbGFzc2UgZsO8ciBBUEkgUmVxdWVzdCB6dW0gYW5sZWdlbiBlaW5lcyBuZXVlbiBOb2Rlc1xuICovXG5leHBvcnQgY2xhc3MgQnJvd3Nlck5vZGVOZXdSZXF1ZXN0IHtcbiAgLyoqXG4gICAqIEtvbnN0cnVrdG9yXG4gICAqIEBwYXJhbSBpbml0IEluaXRpYWxlIFdlcnRlXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihpbml0PzogUGFydGlhbDxCcm93c2VyTm9kZU5ld1JlcXVlc3Q+
|
|
8
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCcm93c2VyTm9kZU5ld1JlcXVlc3QiLCJjb25zdHJ1Y3RvciIsImluaXQiLCJjb3ZfMjJiOWdhazg2dSIsImYiLCJzIiwiT2JqZWN0IiwiYXNzaWduIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29tcG9uZW50cy9icm93c2VyL21vZGVscy9icm93c2Vybm9kZW5ld3JlcXVlc3QudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBLbGFzc2UgZsO8ciBBUEkgUmVxdWVzdCB6dW0gYW5sZWdlbiBlaW5lcyBuZXVlbiBOb2Rlc1xuICovXG5leHBvcnQgY2xhc3MgQnJvd3Nlck5vZGVOZXdSZXF1ZXN0IHtcbiAgLyoqXG4gICAqIEtvbnN0cnVrdG9yXG4gICAqIEBwYXJhbSBpbml0IEluaXRpYWxlIFdlcnRlXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihpbml0PzogUGFydGlhbDxCcm93c2VyTm9kZU5ld1JlcXVlc3Q+KSB7XG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLCBpbml0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQZmFkXG4gICAqL1xuICBQYXRoOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBOYW1lIGRlcyBuZXVlbiBOb2Rlc1xuICAgKi9cbiAgTmV3Rm9sZGVybmFtZTogc3RyaW5nO1xufVxuIl0sIm1hcHBpbmdzIjoiOzJGQUFBOztHQUdBLE1BQU0sTUFBTyxDQUFBQSxxQkFBcUIsQ0FDaEM7OztPQUlBQyxZQUFZQyxJQUFxQyxFQUFBQyxjQUFBLEdBQUFDLENBQUEsS0FBQUQsQ0FBQSxpQkFBQUUsQ0FBQSxNQUMvQ0MsTUFBTSxDQUFDQyxNQUFNLENBQUMsSUFBSSxDQUFFTCxJQUFJLENBQUMsQ0FDM0IsQyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -5,4 +5,4 @@ cov_rztnyml=function(){return actualCoverage;};}return actualCoverage;}cov_rztny
|
|
|
5
5
|
* Konstruktor
|
|
6
6
|
* @param init Initiale Werte
|
|
7
7
|
*/constructor(init){cov_rztnyml().f[0]++;cov_rztnyml().s[0]++;Object.assign(this,init);}}//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3Nlcm5vZGVyZW5hbWVyZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29tcG9uZW50cy9icm93c2VyL21vZGVscy9icm93c2Vybm9kZXJlbmFtZXJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxNQUFNLE9BQU8sd0JBQXdCO0lBQ25DOzs7T0FHRztJQUNILFlBQVksSUFBd0M7UUFDbEQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztDQVVGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBLbGFzc2UgZsO8ciBBUEkgUmVxdWVzdCB6dW0gdW1iZW5lbm5lbiBlaW5lcyBOb2Rlc1xuICovXG5leHBvcnQgY2xhc3MgQnJvd3Nlck5vZGVSZW5hbWVSZXF1ZXN0IHtcbiAgLyoqXG4gICAqIEtvbnN0cnVrdG9yXG4gICAqIEBwYXJhbSBpbml0IEluaXRpYWxlIFdlcnRlXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihpbml0PzogUGFydGlhbDxCcm93c2VyTm9kZVJlbmFtZVJlcXVlc3Q+KSB7XG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLCBpbml0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQZmFkXG4gICAqL1xuICBQYXRoOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBOZXVlciBOYW1lIGRlcyBOb2Rlc1xuICAgKi9cbiAgTmV3Rm9sZGVybmFtZTogc3RyaW5nO1xufVxuIl19
|
|
8
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCcm93c2VyTm9kZVJlbmFtZVJlcXVlc3QiLCJjb25zdHJ1Y3RvciIsImluaXQiLCJjb3Zfcnp0bnltbCIsImYiLCJzIiwiT2JqZWN0IiwiYXNzaWduIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29tcG9uZW50cy9icm93c2VyL21vZGVscy9icm93c2Vybm9kZXJlbmFtZXJlcXVlc3QudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBLbGFzc2UgZsO8ciBBUEkgUmVxdWVzdCB6dW0gdW1iZW5lbm5lbiBlaW5lcyBOb2Rlc1xuICovXG5leHBvcnQgY2xhc3MgQnJvd3Nlck5vZGVSZW5hbWVSZXF1ZXN0IHtcbiAgLyoqXG4gICAqIEtvbnN0cnVrdG9yXG4gICAqIEBwYXJhbSBpbml0IEluaXRpYWxlIFdlcnRlXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihpbml0PzogUGFydGlhbDxCcm93c2VyTm9kZVJlbmFtZVJlcXVlc3Q+
|
|
8
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCcm93c2VyTm9kZVJlbmFtZVJlcXVlc3QiLCJjb25zdHJ1Y3RvciIsImluaXQiLCJjb3Zfcnp0bnltbCIsImYiLCJzIiwiT2JqZWN0IiwiYXNzaWduIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29tcG9uZW50cy9icm93c2VyL21vZGVscy9icm93c2Vybm9kZXJlbmFtZXJlcXVlc3QudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBLbGFzc2UgZsO8ciBBUEkgUmVxdWVzdCB6dW0gdW1iZW5lbm5lbiBlaW5lcyBOb2Rlc1xuICovXG5leHBvcnQgY2xhc3MgQnJvd3Nlck5vZGVSZW5hbWVSZXF1ZXN0IHtcbiAgLyoqXG4gICAqIEtvbnN0cnVrdG9yXG4gICAqIEBwYXJhbSBpbml0IEluaXRpYWxlIFdlcnRlXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihpbml0PzogUGFydGlhbDxCcm93c2VyTm9kZVJlbmFtZVJlcXVlc3Q+KSB7XG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLCBpbml0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQZmFkXG4gICAqL1xuICBQYXRoOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBOZXVlciBOYW1lIGRlcyBOb2Rlc1xuICAgKi9cbiAgTmV3Rm9sZGVybmFtZTogc3RyaW5nO1xufVxuIl0sIm1hcHBpbmdzIjoiO3FGQUFBOztHQUdBLE1BQU0sTUFBTyxDQUFBQSx3QkFBd0IsQ0FDbkM7OztPQUlBQyxZQUFZQyxJQUF3QyxFQUFBQyxXQUFBLEdBQUFDLENBQUEsS0FBQUQsQ0FBQSxjQUFBRSxDQUFBLE1BQ2xEQyxNQUFNLENBQUNDLE1BQU0sQ0FBQyxJQUFJLENBQUVMLElBQUksQ0FBQyxDQUMzQixDIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -5,4 +5,4 @@ cov_rb10w466z=function(){return actualCoverage;};}return actualCoverage;}cov_rb1
|
|
|
5
5
|
* Konstruktor
|
|
6
6
|
* @param init Initale Werte für die Instanz
|
|
7
7
|
*/constructor(init){cov_rb10w466z().f[0]++;cov_rb10w466z().s[0]++;Object.assign(this,init);}}//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3Nlcm5vZGVyZXF1ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29tcG9uZW50cy9icm93c2VyL21vZGVscy9icm93c2Vybm9kZXJlcXVlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxNQUFNLE9BQU8sa0JBQWtCO0lBQzdCOzs7T0FHRztJQUNILFlBQVksSUFBa0M7UUFDNUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztDQVVGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBLbGFzc2UgZsO8ciBkZW4gUmVxdWVzdCBlaW5lcyBOb2Rlc1xuICovXG5leHBvcnQgY2xhc3MgQnJvd3Nlck5vZGVSZXF1ZXN0IHtcbiAgLyoqXG4gICAqIEtvbnN0cnVrdG9yXG4gICAqIEBwYXJhbSBpbml0IEluaXRhbGUgV2VydGUgZsO8ciBkaWUgSW5zdGFuelxuICAgKi9cbiAgY29uc3RydWN0b3IoaW5pdD86IFBhcnRpYWw8QnJvd3Nlck5vZGVSZXF1ZXN0Pikge1xuICAgIE9iamVjdC5hc3NpZ24odGhpcywgaW5pdCk7XG4gIH1cblxuICAvKipcbiAgICogUGZhZCBkZXMgTm9kZXNcbiAgICovXG4gIHB1YmxpYyBQYXRoOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBFcmxhdWJ0ZSBEYXRlaXR5cGVuXG4gICAqL1xuICBwdWJsaWMgQWxsb3dlZFR5cGVzOiBzdHJpbmc7XG59XG4iXX0=
|
|
8
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCcm93c2VyTm9kZVJlcXVlc3QiLCJjb25zdHJ1Y3RvciIsImluaXQiLCJjb3ZfcmIxMHc0NjZ6IiwiZiIsInMiLCJPYmplY3QiLCJhc3NpZ24iXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy9jb21wb25lbnRzL2Jyb3dzZXIvbW9kZWxzL2Jyb3dzZXJub2RlcmVxdWVzdC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEtsYXNzZSBmw7xyIGRlbiBSZXF1ZXN0IGVpbmVzIE5vZGVzXG4gKi9cbmV4cG9ydCBjbGFzcyBCcm93c2VyTm9kZVJlcXVlc3Qge1xuICAvKipcbiAgICogS29uc3RydWt0b3JcbiAgICogQHBhcmFtIGluaXQgSW5pdGFsZSBXZXJ0ZSBmw7xyIGRpZSBJbnN0YW56XG4gICAqL1xuICBjb25zdHJ1Y3Rvcihpbml0PzogUGFydGlhbDxCcm93c2VyTm9kZVJlcXVlc3Q+
|
|
8
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCcm93c2VyTm9kZVJlcXVlc3QiLCJjb25zdHJ1Y3RvciIsImluaXQiLCJjb3ZfcmIxMHc0NjZ6IiwiZiIsInMiLCJPYmplY3QiLCJhc3NpZ24iXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy9jb21wb25lbnRzL2Jyb3dzZXIvbW9kZWxzL2Jyb3dzZXJub2RlcmVxdWVzdC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEtsYXNzZSBmw7xyIGRlbiBSZXF1ZXN0IGVpbmVzIE5vZGVzXG4gKi9cbmV4cG9ydCBjbGFzcyBCcm93c2VyTm9kZVJlcXVlc3Qge1xuICAvKipcbiAgICogS29uc3RydWt0b3JcbiAgICogQHBhcmFtIGluaXQgSW5pdGFsZSBXZXJ0ZSBmw7xyIGRpZSBJbnN0YW56XG4gICAqL1xuICBjb25zdHJ1Y3Rvcihpbml0PzogUGFydGlhbDxCcm93c2VyTm9kZVJlcXVlc3Q+KSB7XG4gICAgT2JqZWN0LmFzc2lnbih0aGlzLCBpbml0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQZmFkIGRlcyBOb2Rlc1xuICAgKi9cbiAgcHVibGljIFBhdGg6IHN0cmluZztcbiAgLyoqXG4gICAqIEVybGF1YnRlIERhdGVpdHlwZW5cbiAgICovXG4gIHB1YmxpYyBBbGxvd2VkVHlwZXM6IHN0cmluZztcbn1cbiJdLCJtYXBwaW5ncyI6Ijt5RkFBQTs7R0FHQSxNQUFNLE1BQU8sQ0FBQUEsa0JBQWtCLENBQzdCOzs7T0FJQUMsWUFBWUMsSUFBa0MsRUFBQUMsYUFBQSxHQUFBQyxDQUFBLEtBQUFELENBQUEsZ0JBQUFFLENBQUEsTUFDNUNDLE1BQU0sQ0FBQ0MsTUFBTSxDQUFDLElBQUksQ0FBRUwsSUFBSSxDQUFDLENBQzNCLEMiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -44,4 +44,4 @@ if(v===''){cov_2fvuch6l14().b[5][0]++;cov_2fvuch6l14().s[21]++;this._role='defau
|
|
|
44
44
|
/**
|
|
45
45
|
* Die Methode wird ein Event aufrufen, wenn das Button geklickt wird UND das Button nicht disabled ODER isloading ist.
|
|
46
46
|
*/buttonClick(){cov_2fvuch6l14().f[8]++;cov_2fvuch6l14().s[25]++;if((cov_2fvuch6l14().b[7][0]++,this._isdisabled===false)&&(cov_2fvuch6l14().b[7][1]++,this._isloadingvalue===false)){cov_2fvuch6l14().b[6][0]++;cov_2fvuch6l14().s[26]++;this.clicked.emit();}else{cov_2fvuch6l14().b[6][1]++;}}static{cov_2fvuch6l14().s[27]++;this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"16.2.12",ngImport:i0,type:SacButtonCommon,deps:[],target:i0.ɵɵFactoryTarget.Directive});}static{cov_2fvuch6l14().s[28]++;this.ɵdir=i0.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"16.2.12",type:SacButtonCommon,inputs:{e2eidentifier:"e2eidentifier",icon:"icon",name:"name",text:"text",isdisabled:"isdisabled",isloading:"isloading",role:"role"},outputs:{clicked:"clicked"},ngImport:i0});}}export{SacButtonCommon};cov_2fvuch6l14().s[29]++;i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"16.2.12",ngImport:i0,type:SacButtonCommon,decorators:[{type:Directive}],propDecorators:{clicked:[{type:Output}],e2eidentifier:[{type:Input}],icon:[{type:Input}],name:[{type:Input}],text:[{type:Input}],isdisabled:[{type:Input}],isloading:[{type:Input}],role:[{type:Input}]}});//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29udHJvbHMvYnV0dG9ucy9idXR0b24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFdkU7O0dBRUc7QUFDSCxNQUNhLGVBQWU7SUFENUI7UUFFSSxxQkFBcUI7UUFFckI7O1dBRUc7UUFDSyxxQkFBZ0IsR0FBWSxLQUFLLENBQUM7UUFFMUM7O1dBRUc7UUFDSyxVQUFLLEdBQW1CLFNBQVMsQ0FBQztRQUUxQzs7V0FFRztRQUNJLG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBRXhDOztXQUVHO1FBRUksWUFBTyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFcEM7O1dBRUc7UUFFSSxrQkFBYSxHQUFrQixJQUFJLENBQUM7UUFFM0M7O1dBRUc7UUFDSSxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBRXhCOztXQUVHO1FBQ2EsU0FBSSxHQUFXLEVBQUUsQ0FBQztRQUVsQzs7V0FFRztRQUNhLFNBQUksR0FBVyxFQUFFLENBQUM7UUFFbEM7O1dBRUc7UUFDYSxTQUFJLEdBQVcsRUFBRSxDQUFDO0tBcUdyQztJQW5HRyx3QkFBd0I7SUFFeEIscUNBQXFDO0lBRXJDOztPQUVHO0lBQ0gsSUFBVyxXQUFXO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUFXLFVBQVU7UUFDakIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDakMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxJQUNXLFVBQVUsQ0FBQyxDQUFtQjtRQUNyQyxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLFNBQVMsSUFBSSxPQUFPLENBQUMsS0FBSyxTQUFTLEVBQUU7WUFDekQsSUFBSSxDQUFDLGdCQUFnQixHQUFHLENBQVksQ0FBQztTQUN4QzthQUFNO1lBQ0gsSUFBSSxDQUFDLGdCQUFnQixHQUFHLENBQUMsS0FBSyxNQUFNLENBQUM7U0FDeEM7SUFDTCxDQUFDO0lBRUQsSUFBVyxTQUFTO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUNoQyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUNXLFNBQVMsQ0FBQyxDQUFtQjtRQUNwQyxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLFNBQVMsSUFBSSxPQUFPLENBQUMsS0FBSyxTQUFTLEVBQUU7WUFDekQsSUFBSSxDQUFDLGVBQWUsR0FBRyxDQUFZLENBQUM7U0FDdkM7YUFBTTtZQUNILElBQUksQ0FBQyxlQUFlLEdBQUcsQ0FBQyxLQUFLLE1BQU0sQ0FBQztTQUN2QztJQUNMLENBQUM7SUFFRDs7T0FFRztJQUNILElBQVcsSUFBSTtRQUNYLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxJQUNXLElBQUksQ0FBQyxDQUFpQjtRQUM3QixzQkFBc0I7UUFDdEIsUUFBUSxDQUFDLEVBQUU7WUFDUCxLQUFLLEVBQUUsQ0FBQztZQUNSLEtBQUssU0FBUyxDQUFDO1lBQ2YsS0FBSyxTQUFTLENBQUM7WUFDZixLQUFLLE9BQU8sQ0FBQztZQUNiLEtBQUssTUFBTSxDQUFDO1lBQ1osS0FBSyxNQUFNLENBQUM7WUFDWixLQUFLLFNBQVMsQ0FBQztZQUNmLEtBQUssV0FBVyxDQUFDO1lBQ2pCLEtBQUssUUFBUSxDQUFDO1lBQ2QsS0FBSyxTQUFTLENBQUM7WUFDZixLQUFLLE1BQU07Z0JBQ1Asd0JBQXdCO2dCQUN4QixJQUFJLENBQUMsS0FBSyxFQUFFLEVBQUU7b0JBQ1YsSUFBSSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUM7aUJBQzFCO3FCQUFNO29CQUNILElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO2lCQUNsQjtnQkFDRCxNQUFNO1lBQ1Y7Z0JBQ0ksTUFBTSxJQUFJLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO1NBQzdEO0lBQ0wsQ0FBQztJQUVELHdDQUF3QztJQUV4Qyx5QkFBeUI7SUFFekI7O09BRUc7SUFDSSxXQUFXO1FBQ2QsSUFBSSxJQUFJLENBQUMsV0FBVyxLQUFLLEtBQUssSUFBSSxJQUFJLENBQUMsZUFBZSxLQUFLLEtBQUssRUFBRTtZQUM5RCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ3ZCO0lBQ0wsQ0FBQzsrR0FsSlEsZUFBZTttR0FBZixlQUFlOztTQUFmLGVBQWU7NEZBQWYsZUFBZTtrQkFEM0IsU0FBUzs4QkF1QkMsT0FBTztzQkFEYixNQUFNO2dCQU9BLGFBQWE7c0JBRG5CLEtBQUs7Z0JBV1UsSUFBSTtzQkFBbkIsS0FBSztnQkFLVSxJQUFJO3NCQUFuQixLQUFLO2dCQUtVLElBQUk7c0JBQW5CLEtBQUs7Z0JBdUJLLFVBQVU7c0JBRHBCLEtBQUs7Z0JBaUJLLFNBQVM7c0JBRG5CLEtBQUs7Z0JBdUJLLElBQUk7c0JBRGQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJVVFRPTlJPTEVUWVBFIH0gZnJvbSAnLi4vLi4vZW51bXMvQnV0dG9uUm9sZVR5cGUnO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBCYXNlIEtvbXBvbmVudGUgZsO8ciBkYXMgQnV0dG9uXG4gKi9cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGNsYXNzIFNhY0J1dHRvbkNvbW1vbiB7XG4gICAgLy8gI3JlZ2lvbiBQcm9wZXJ0aWVzXG5cbiAgICAvKipcbiAgICAgKiBCb29sZWFuIFByb3BlcnR5IGRlZmluaWVydCwgb2IgZGFzIEJ1dHRvbiAnZGlzYWJsZWQnIGlzdDsgZGVmYXVsdCAtIGZhbHNlXG4gICAgICovXG4gICAgcHJpdmF0ZSBfaXNkaXNhYmxlZHZhbHVlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBEYXMgUHJvcGVydHkgZGVmaW5pZXJ0IGRpZSBSb2xsZSBkZXMgQnV0dG9ucy4gU3RhbmRhcmR3ZXJ0IGlzdCAnZGVmYXVsdCcuXG4gICAgICovXG4gICAgcHJpdmF0ZSBfcm9sZTogQlVUVE9OUk9MRVRZUEUgPSAnZGVmYXVsdCc7XG5cbiAgICAvKipcbiAgICAgKiBEYXMgYm9vbGVhbiBwcm9wZXJ0eSBpc3QgYmVudXR6dCBmw7xyIEFrdGl2YXRpb24gZGVzIFNwaW5uZXIgZGVzIEJ1dHRvbi4gRGVmYXVsdCBpc3QgZmFsc2UuXG4gICAgICovXG4gICAgcHVibGljIF9pc2xvYWRpbmd2YWx1ZTogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogT3V0cHV0IEV2ZW50IEVtaXR0ZXJcbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICBwdWJsaWMgY2xpY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIC8qKlxuICAgICAqIElkZW50aWZpZXIgdXNlZCBmb3IgdGhlIEUyRSBkYXRhIGF0dHJpYnV0ZS5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBlMmVpZGVudGlmaWVyOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAgIC8qKlxuICAgICAqIEJvb2xlYW4gUHJvcGVydHkgZsO8ciBFcnJvcjsgZGVmYXVsdCBXZXJ0IC0gZmFsc2VcbiAgICAgKi9cbiAgICBwdWJsaWMgaGFzRXJyb3IgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIElucHV0IFByb3BlcnR5IGbDvHIgSWNvbiBTdHlsZSBLbGFzc2U7IGRlZmF1bHQgV2VydCAtICcnXG4gICAgICovXG4gICAgQElucHV0KCkgcHVibGljIGljb246IHN0cmluZyA9ICcnO1xuXG4gICAgLyoqXG4gICAgICogSW5wdXQgUHJvcGVydHkgZsO8ciBOYW1lOyBkZWZhdWx0IFdlcnQgLSAnJ1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyBuYW1lOiBzdHJpbmcgPSAnJztcblxuICAgIC8qKlxuICAgICAqIElucHV0IFByb3BlcnR5IGbDvHIgVGV4dCBkZXMgQnV0dG9uczsgZGVmYXVsdCBXZXJ0IC0gJydcbiAgICAgKi9cbiAgICBASW5wdXQoKSBwdWJsaWMgdGV4dDogc3RyaW5nID0gJyc7XG5cbiAgICAvLyAjZW5kcmVnaW9uIFByb3BlcnRpZXNcblxuICAgIC8vICNyZWdpb24gUHVibGljIEdldHRlcnMgQW5kIFNldHRlcnNcblxuICAgIC8qKlxuICAgICAqIEdldHRlciBNZXRob2RlLiBFcmdpYnQgYm9vbGVhbiBXZXJ0LiBEZWZpbmllcnQsIG9iIGRhcyBCdXR0b24gZGVzYWJsZWQgaXN0LlxuICAgICAqL1xuICAgIHB1YmxpYyBnZXQgX2lzZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc2Rpc2FibGVkdmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBpc2Rpc2FibGVkKCk6IGJvb2xlYW4gfCBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNkaXNhYmxlZHZhbHVlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIERlYWt0aXZpZXJlbiB2b24gQnV0dG9uc1xuICAgICAqIEBwYXJhbSB2IERlYWt0aXZpZXJ0IGRlbiBCdXR0b25cbiAgICAgKiBAcmV0dXJuIERlZmluaWVydCBvYiBkZXIgQnV0dG9uIGRlYWt0aXZpZXJ0IGlzdFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNldCBpc2Rpc2FibGVkKHY6IGJvb2xlYW4gfCBzdHJpbmcpIHtcbiAgICAgICAgaWYgKHYgPT09IG51bGwgfHwgdiA9PT0gdW5kZWZpbmVkIHx8IHR5cGVvZiB2ID09PSAnYm9vbGVhbicpIHtcbiAgICAgICAgICAgIHRoaXMuX2lzZGlzYWJsZWR2YWx1ZSA9IHYgYXMgYm9vbGVhbjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX2lzZGlzYWJsZWR2YWx1ZSA9IHYgPT09ICd0cnVlJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaXNsb2FkaW5nKCk6IGJvb2xlYW4gfCBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNsb2FkaW5ndmFsdWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRGFzIElucHV0IHByb3BlcnR5LiBEZWZpbmllcnQgZGVyIFN0YXR1cyBkZXMgaXNsYW9kaW5nIHByb3BlcnR5LiBFcyBpc3QgYmVudXR6dCBmw7xyIEFrdGl2YXRpb24gZGVzIFNwaW5uZXIgZGVzIEJ1dHRvbi5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBzZXQgaXNsb2FkaW5nKHY6IGJvb2xlYW4gfCBzdHJpbmcpIHtcbiAgICAgICAgaWYgKHYgPT09IG51bGwgfHwgdiA9PT0gdW5kZWZpbmVkIHx8IHR5cGVvZiB2ID09PSAnYm9vbGVhbicpIHtcbiAgICAgICAgICAgIHRoaXMuX2lzbG9hZGluZ3ZhbHVlID0gdiBhcyBib29sZWFuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5faXNsb2FkaW5ndmFsdWUgPSB2ID09PSAndHJ1ZSc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEaWUgTWV0aG9kZSByZXR1cm5zIGRpZSBkZWZpbmllcnRlIFN0eWxlLVJvbGxlIGRlcyBCdXR0b25zXG4gICAgICovXG4gICAgcHVibGljIGdldCByb2xlKCk6IEJVVFRPTlJPTEVUWVBFIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3JvbGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRGVmaW5pZXJ0IGRlbiBTdHlsZSBkZXMgQnV0dG9uc1xuICAgICAqIEBwYXJhbSAgdiBEZWZpbmllcnQgZGVuIFN0eWxlIGRlcyBCdXR0b25zLlxuICAgICAqIEZvbGdlbmRlIFR5cGVuIHNpbmQgU3VwcG9ydGVkOiBwcmltYXJ5LCBzZWNvbmRhcnksIHN1Y2Nlc3MsIGRhbmdlciwgd2FybmluZywgaW5mbywgbGlnaHQsIGRhcmssIGxpbmssIGRlZmF1bHRcbiAgICAgKiBAcmV0dXJucyAgVHlwZSBkZXMgQnV0dG9uc1xuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNldCByb2xlKHY6IEJVVFRPTlJPTEVUWVBFKSB7XG4gICAgICAgIC8vIFZhbGlkYXRpb24gb2YgSW5wdXRcbiAgICAgICAgc3dpdGNoICh2KSB7XG4gICAgICAgICAgICBjYXNlICcnOlxuICAgICAgICAgICAgY2FzZSAncHJpbWFyeSc6XG4gICAgICAgICAgICBjYXNlICdkZWZhdWx0JzpcbiAgICAgICAgICAgIGNhc2UgJ2xpZ2h0JzpcbiAgICAgICAgICAgIGNhc2UgJ2RhcmsnOlxuICAgICAgICAgICAgY2FzZSAnbGluayc6XG4gICAgICAgICAgICBjYXNlICdzdWNjZXNzJzpcbiAgICAgICAgICAgIGNhc2UgJ3NlY29uZGFyeSc6XG4gICAgICAgICAgICBjYXNlICdkYW5nZXInOlxuICAgICAgICAgICAgY2FzZSAnd2FybmluZyc6XG4gICAgICAgICAgICBjYXNlICdpbmZvJzpcbiAgICAgICAgICAgICAgICAvLyBFbXB0eSBSb2xlIGlzIERlZmF1bHRcbiAgICAgICAgICAgICAgICBpZiAodiA9PT0gJycpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fcm9sZSA9ICdkZWZhdWx0JztcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9yb2xlID0gdjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCByb2xlIFwiICsgdiArIFwiIGZvciBidXR0b24uJyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAjZW5kcmVnaW9uIFB1YmxpYyBHZXR0ZXJzIEFuZCBTZXR0ZXJzXG5cbiAgICAvLyAjcmVnaW9uIFB1YmxpYyBNZXRob2RzXG5cbiAgICAvKipcbiAgICAgKiBEaWUgTWV0aG9kZSB3aXJkIGVpbiBFdmVudCBhdWZydWZlbiwgd2VubiBkYXMgQnV0dG9uIGdla2xpY2t0IHdpcmQgVU5EIGRhcyBCdXR0b24gbmljaHQgZGlzYWJsZWQgT0RFUiBpc2xvYWRpbmcgaXN0LlxuICAgICAqL1xuICAgIHB1YmxpYyBidXR0b25DbGljaygpIHtcbiAgICAgICAgaWYgKHRoaXMuX2lzZGlzYWJsZWQgPT09IGZhbHNlICYmIHRoaXMuX2lzbG9hZGluZ3ZhbHVlID09PSBmYWxzZSkge1xuICAgICAgICAgICAgdGhpcy5jbGlja2VkLmVtaXQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vICNlbmRyZWdpb24gUHVibGljIE1ldGhvZHNcbn1cbiJdfQ==
|
|
47
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjb3ZfMmZ2dWNoNmwxNCIsImFjdHVhbENvdmVyYWdlIiwiRGlyZWN0aXZlIiwiRXZlbnRFbWl0dGVyIiwiSW5wdXQiLCJPdXRwdXQiLCJTYWNCdXR0b25Db21tb24iLCJjb25zdHJ1Y3RvciIsImYiLCJzIiwiX2lzZGlzYWJsZWR2YWx1ZSIsIl9yb2xlIiwiX2lzbG9hZGluZ3ZhbHVlIiwiY2xpY2tlZCIsImUyZWlkZW50aWZpZXIiLCJoYXNFcnJvciIsImljb24iLCJuYW1lIiwidGV4dCIsIl9pc2Rpc2FibGVkIiwiaXNkaXNhYmxlZCIsInYiLCJiIiwidW5kZWZpbmVkIiwiaXNsb2FkaW5nIiwicm9sZSIsIkVycm9yIiwiYnV0dG9uQ2xpY2siLCJlbWl0IiwiZGVwcyIsInRhcmdldCIsImkwIiwiybXJtUZhY3RvcnlUYXJnZXQiLCJpbnB1dHMiLCJvdXRwdXRzIiwibmdJbXBvcnQiLCJkZWNvcmF0b3JzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29udHJvbHMvYnV0dG9ucy9idXR0b24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQlVUVE9OUk9MRVRZUEUgfSBmcm9tICcuLi8uLi9lbnVtcy9CdXR0b25Sb2xlVHlwZSc7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIEJhc2UgS29tcG9uZW50ZSBmw7xyIGRhcyBCdXR0b25cbiAqL1xuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgU2FjQnV0dG9uQ29tbW9uIHtcbiAgICAvLyAjcmVnaW9uIFByb3BlcnRpZXNcblxuICAgIC8qKlxuICAgICAqIEJvb2xlYW4gUHJvcGVydHkgZGVmaW5pZXJ0LCBvYiBkYXMgQnV0dG9uICdkaXNhYmxlZCcgaXN0OyBkZWZhdWx0IC0gZmFsc2VcbiAgICAgKi9cbiAgICBwcml2YXRlIF9pc2Rpc2FibGVkdmFsdWU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIERhcyBQcm9wZXJ0eSBkZWZpbmllcnQgZGllIFJvbGxlIGRlcyBCdXR0b25zLiBTdGFuZGFyZHdlcnQgaXN0ICdkZWZhdWx0Jy5cbiAgICAgKi9cbiAgICBwcml2YXRlIF9yb2xlOiBCVVRUT05ST0xFVFlQRSA9ICdkZWZhdWx0JztcblxuICAgIC8qKlxuICAgICAqIERhcyBib29sZWFuIHByb3BlcnR5IGlzdCBiZW51dHp0IGbDvHIgQWt0aXZhdGlvbiBkZXMgU3Bpbm5lciBkZXMgQnV0dG9uLiBEZWZhdWx0IGlzdCBmYWxzZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgX2lzbG9hZGluZ3ZhbHVlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBPdXRwdXQgRXZlbnQgRW1pdHRlclxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBjbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgLyoqXG4gICAgICogSWRlbnRpZmllciB1c2VkIGZvciB0aGUgRTJFIGRhdGEgYXR0cmlidXRlLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGUyZWlkZW50aWZpZXI6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gICAgLyoqXG4gICAgICogQm9vbGVhbiBQcm9wZXJ0eSBmw7xyIEVycm9yOyBkZWZhdWx0IFdlcnQgLSBmYWxzZVxuICAgICAqL1xuICAgIHB1YmxpYyBoYXNFcnJvciA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogSW5wdXQgUHJvcGVydHkgZsO8ciBJY29uIFN0eWxlIEtsYXNzZTsgZGVmYXVsdCBXZXJ0IC0gJydcbiAgICAgKi9cbiAgICBASW5wdXQoKSBwdWJsaWMgaWNvbjogc3RyaW5nID0gJyc7XG5cbiAgICAvKipcbiAgICAgKiBJbnB1dCBQcm9wZXJ0eSBmw7xyIE5hbWU7IGRlZmF1bHQgV2VydCAtICcnXG4gICAgICovXG4gICAgQElucHV0KCkgcHVibGljIG5hbWU6IHN0cmluZyA9ICcnO1xuXG4gICAgLyoqXG4gICAgICogSW5wdXQgUHJvcGVydHkgZsO8ciBUZXh0IGRlcyBCdXR0b25zOyBkZWZhdWx0IFdlcnQgLSAnJ1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyB0ZXh0OiBzdHJpbmcgPSAnJztcblxuICAgIC8vICNlbmRyZWdpb24gUHJvcGVydGllc1xuXG4gICAgLy8gI3JlZ2lvbiBQdWJsaWMgR2V0dGVycyBBbmQgU2V0dGVyc1xuXG4gICAgLyoqXG4gICAgICogR2V0dGVyIE1ldGhvZGUuIEVyZ2lidCBib29sZWFuIFdlcnQuIERlZmluaWVydCwgb2IgZGFzIEJ1dHRvbiBkZXNhYmxlZCBpc3QuXG4gICAgICovXG4gICAgcHVibGljIGdldCBfaXNkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzZGlzYWJsZWR2YWx1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGlzZGlzYWJsZWQoKTogYm9vbGVhbiB8IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc2Rpc2FibGVkdmFsdWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRGVha3RpdmllcmVuIHZvbiBCdXR0b25zXG4gICAgICogQHBhcmFtIHYgRGVha3RpdmllcnQgZGVuIEJ1dHRvblxuICAgICAqIEByZXR1cm4gRGVmaW5pZXJ0IG9iIGRlciBCdXR0b24gZGVha3RpdmllcnQgaXN0XG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2V0IGlzZGlzYWJsZWQodjogYm9vbGVhbiB8IHN0cmluZykge1xuICAgICAgICBpZiAodiA9PT0gbnVsbCB8fCB2ID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIHYgPT09ICdib29sZWFuJykge1xuICAgICAgICAgICAgdGhpcy5faXNkaXNhYmxlZHZhbHVlID0gdiBhcyBib29sZWFuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5faXNkaXNhYmxlZHZhbHVlID0gdiA9PT0gJ3RydWUnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBpc2xvYWRpbmcoKTogYm9vbGVhbiB8IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc2xvYWRpbmd2YWx1ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEYXMgSW5wdXQgcHJvcGVydHkuIERlZmluaWVydCBkZXIgU3RhdHVzIGRlcyBpc2xhb2RpbmcgcHJvcGVydHkuIEVzIGlzdCBiZW51dHp0IGbDvHIgQWt0aXZhdGlvbiBkZXMgU3Bpbm5lciBkZXMgQnV0dG9uLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNldCBpc2xvYWRpbmcodjogYm9vbGVhbiB8IHN0cmluZykge1xuICAgICAgICBpZiAodiA9PT0gbnVsbCB8fCB2ID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIHYgPT09ICdib29sZWFuJykge1xuICAgICAgICAgICAgdGhpcy5faXNsb2FkaW5ndmFsdWUgPSB2IGFzIGJvb2xlYW47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9pc2xvYWRpbmd2YWx1ZSA9IHYgPT09ICd0cnVlJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIERpZSBNZXRob2RlIHJldHVybnMgZGllIGRlZmluaWVydGUgU3R5bGUtUm9sbGUgZGVzIEJ1dHRvbnNcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0IHJvbGUoKTogQlVUVE9OUk9MRVRZUEUge1xuICAgICAgICByZXR1cm4gdGhpcy5fcm9sZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEZWZpbmllcnQgZGVuIFN0eWxlIGRlcyBCdXR0b25zXG4gICAgICogQHBhcmFtICB2IERlZmluaWVydCBkZW4gU3R5bGUgZGVzIEJ1dHRvbnMuXG4gICAgICogRm9sZ2VuZGUgVHlwZW4gc2luZCBTdXBwb3J0ZWQ6IHByaW1hcnksIHNlY29uZGFyeSwgc3VjY2VzcywgZGFuZ2VyLCB3YXJuaW5nLCBpbmZvLCBsaWdodCwgZGFyaywgbGluaywgZGVmYXVsdFxuICAgICAqIEByZXR1cm5zICBUeXBlIGRlcyBCdXR0b25zXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2V0IHJvbGUodjogQlVUVE9OUk9MRVRZUEUpIHtcbiAgICAgICAgLy8gVmFsaWRhdGlvbiBvZiBJbnB1dFxuICAgICAgICBzd2l0Y2ggKHYpIHtcbiAgICAgICAgICAgIGNhc2UgJyc6XG4gICAgICAgICAgICBjYXNlICdwcmltYXJ5JzpcbiAgICAgICAgICAgIGNhc2UgJ2RlZmF1bHQnOlxuICAgICAgICAgICAgY2FzZSAnbGlnaHQnOlxuICAgICAgICAgICAgY2FzZSAnZGFyayc6XG4gICAgICAgICAgICBjYXNlICdsaW5rJzpcbiAgICAgICAgICAgIGNhc2UgJ3N1Y2Nlc3MnOlxuICAgICAgICAgICAgY2FzZSAnc2Vjb25kYXJ5JzpcbiAgICAgICAgICAgIGNhc2UgJ2Rhbmdlcic6XG4gICAgICAgICAgICBjYXNlICd3YXJuaW5nJzpcbiAgICAgICAgICAgIGNhc2UgJ2luZm8nOlxuICAgICAgICAgICAgICAgIC8vIEVtcHR5IFJvbGUgaXMgRGVmYXVsdFxuICAgICAgICAgICAgICAgIGlmICh2ID09PSAnJykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9yb2xlID0gJ2RlZmF1bHQnO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3JvbGUgPSB2O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHJvbGUgXCIgKyB2ICsgXCIgZm9yIGJ1dHRvbi4nKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vICNlbmRyZWdpb24gUHVibGljIEdldHRlcnMgQW5kIFNldHRlcnNcblxuICAgIC8vICNyZWdpb24gUHVibGljIE1ldGhvZHNcblxuICAgIC8qKlxuICAgICAqIERpZSBNZXRob2RlIHdpcmQgZWluIEV2ZW50IGF1ZnJ1ZmVuLCB3ZW5uIGRhcyBCdXR0b24gZ2VrbGlja3Qgd2lyZCBVTkQgZGFzIEJ1dHRvbiBuaWNodCBkaXNhYmxlZCBPREVSIGlzbG9hZGluZyBpc3QuXG4gICAgICovXG4gICAgcHVibGljIGJ1dHRvbkNsaWNrKCkge1xuICAgICAgICBpZiAodGhpcy5faXNkaXNhYmxlZCA9PT0gZmFsc2UgJiYgdGhpcy5faXNsb2FkaW5ndmFsdWUgPT09IGZhbHNlKSB7XG4gICAgICAgICAgICB0aGlzLmNsaWNrZWQuZW1pdCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gI2VuZHJlZ2lvbiBQdWJsaWMgTWV0aG9kc1xufVxuIl0sIm1hcHBpbmdzIjoiK3RaQWtCWTtBQUFBQSxjQUFBLFNBQUFBLENBQUEsU0FBQUMsY0FBQSxXQUFBQSxjQUFBLEVBQUFELGNBQUEsR0FqQlosT0FBU0UsU0FBUyxDQUFFQyxZQUFZLENBQUVDLEtBQUssQ0FBRUMsTUFBTSxLQUFRLGVBQWUsQyxpQ0FFdEU7O0dBR0EsS0FDYSxDQUFBQyxlQUFlLENBRDVCQyxZQUFBLEVBQUFQLGNBQUEsR0FBQVEsQ0FBQSxNQUFBUixjQUFBLEdBQUFTLENBQUEsTUFFSTtBQUVBOztXQUdRLEtBQUFDLGdCQUFnQixDQUFZLEtBQUssQ0FFekM7O1dBQUFWLGNBQUEsR0FBQVMsQ0FBQSxNQUdRLEtBQUFFLEtBQUssQ0FBbUIsU0FBUyxDQUV6Qzs7V0FBQVgsY0FBQSxHQUFBUyxDQUFBLE1BR08sS0FBQUcsZUFBZSxDQUFZLEtBQUssQ0FFdkM7O1dBQUFaLGNBQUEsR0FBQVMsQ0FBQSxNQUlPLEtBQUFJLE9BQU8sQ0FBRyxHQUFJLENBQUFWLFlBQVksRUFBRSxDQUVuQzs7V0FBQUgsY0FBQSxHQUFBUyxDQUFBLE1BSU8sS0FBQUssYUFBYSxDQUFrQixJQUFJLENBRTFDOztXQUFBZCxjQUFBLEdBQUFTLENBQUEsTUFHTyxLQUFBTSxR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
|
|
47
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjb3ZfMmZ2dWNoNmwxNCIsImFjdHVhbENvdmVyYWdlIiwiRGlyZWN0aXZlIiwiRXZlbnRFbWl0dGVyIiwiSW5wdXQiLCJPdXRwdXQiLCJTYWNCdXR0b25Db21tb24iLCJjb25zdHJ1Y3RvciIsImYiLCJzIiwiX2lzZGlzYWJsZWR2YWx1ZSIsIl9yb2xlIiwiX2lzbG9hZGluZ3ZhbHVlIiwiY2xpY2tlZCIsImUyZWlkZW50aWZpZXIiLCJoYXNFcnJvciIsImljb24iLCJuYW1lIiwidGV4dCIsIl9pc2Rpc2FibGVkIiwiaXNkaXNhYmxlZCIsInYiLCJiIiwidW5kZWZpbmVkIiwiaXNsb2FkaW5nIiwicm9sZSIsIkVycm9yIiwiYnV0dG9uQ2xpY2siLCJlbWl0IiwiZGVwcyIsInRhcmdldCIsImkwIiwiybXJtUZhY3RvcnlUYXJnZXQiLCJpbnB1dHMiLCJvdXRwdXRzIiwibmdJbXBvcnQiLCJkZWNvcmF0b3JzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29udHJvbHMvYnV0dG9ucy9idXR0b24udHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQlVUVE9OUk9MRVRZUEUgfSBmcm9tICcuLi8uLi9lbnVtcy9CdXR0b25Sb2xlVHlwZSc7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIEJhc2UgS29tcG9uZW50ZSBmw7xyIGRhcyBCdXR0b25cbiAqL1xuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgU2FjQnV0dG9uQ29tbW9uIHtcbiAgICAvLyAjcmVnaW9uIFByb3BlcnRpZXNcblxuICAgIC8qKlxuICAgICAqIEJvb2xlYW4gUHJvcGVydHkgZGVmaW5pZXJ0LCBvYiBkYXMgQnV0dG9uICdkaXNhYmxlZCcgaXN0OyBkZWZhdWx0IC0gZmFsc2VcbiAgICAgKi9cbiAgICBwcml2YXRlIF9pc2Rpc2FibGVkdmFsdWU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIERhcyBQcm9wZXJ0eSBkZWZpbmllcnQgZGllIFJvbGxlIGRlcyBCdXR0b25zLiBTdGFuZGFyZHdlcnQgaXN0ICdkZWZhdWx0Jy5cbiAgICAgKi9cbiAgICBwcml2YXRlIF9yb2xlOiBCVVRUT05ST0xFVFlQRSA9ICdkZWZhdWx0JztcblxuICAgIC8qKlxuICAgICAqIERhcyBib29sZWFuIHByb3BlcnR5IGlzdCBiZW51dHp0IGbDvHIgQWt0aXZhdGlvbiBkZXMgU3Bpbm5lciBkZXMgQnV0dG9uLiBEZWZhdWx0IGlzdCBmYWxzZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgX2lzbG9hZGluZ3ZhbHVlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBPdXRwdXQgRXZlbnQgRW1pdHRlclxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHB1YmxpYyBjbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgLyoqXG4gICAgICogSWRlbnRpZmllciB1c2VkIGZvciB0aGUgRTJFIGRhdGEgYXR0cmlidXRlLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIGUyZWlkZW50aWZpZXI6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuXG4gICAgLyoqXG4gICAgICogQm9vbGVhbiBQcm9wZXJ0eSBmw7xyIEVycm9yOyBkZWZhdWx0IFdlcnQgLSBmYWxzZVxuICAgICAqL1xuICAgIHB1YmxpYyBoYXNFcnJvciA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogSW5wdXQgUHJvcGVydHkgZsO8ciBJY29uIFN0eWxlIEtsYXNzZTsgZGVmYXVsdCBXZXJ0IC0gJydcbiAgICAgKi9cbiAgICBASW5wdXQoKSBwdWJsaWMgaWNvbjogc3RyaW5nID0gJyc7XG5cbiAgICAvKipcbiAgICAgKiBJbnB1dCBQcm9wZXJ0eSBmw7xyIE5hbWU7IGRlZmF1bHQgV2VydCAtICcnXG4gICAgICovXG4gICAgQElucHV0KCkgcHVibGljIG5hbWU6IHN0cmluZyA9ICcnO1xuXG4gICAgLyoqXG4gICAgICogSW5wdXQgUHJvcGVydHkgZsO8ciBUZXh0IGRlcyBCdXR0b25zOyBkZWZhdWx0IFdlcnQgLSAnJ1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHB1YmxpYyB0ZXh0OiBzdHJpbmcgPSAnJztcblxuICAgIC8vICNlbmRyZWdpb24gUHJvcGVydGllc1xuXG4gICAgLy8gI3JlZ2lvbiBQdWJsaWMgR2V0dGVycyBBbmQgU2V0dGVyc1xuXG4gICAgLyoqXG4gICAgICogR2V0dGVyIE1ldGhvZGUuIEVyZ2lidCBib29sZWFuIFdlcnQuIERlZmluaWVydCwgb2IgZGFzIEJ1dHRvbiBkZXNhYmxlZCBpc3QuXG4gICAgICovXG4gICAgcHVibGljIGdldCBfaXNkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzZGlzYWJsZWR2YWx1ZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGlzZGlzYWJsZWQoKTogYm9vbGVhbiB8IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc2Rpc2FibGVkdmFsdWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRGVha3RpdmllcmVuIHZvbiBCdXR0b25zXG4gICAgICogQHBhcmFtIHYgRGVha3RpdmllcnQgZGVuIEJ1dHRvblxuICAgICAqIEByZXR1cm4gRGVmaW5pZXJ0IG9iIGRlciBCdXR0b24gZGVha3RpdmllcnQgaXN0XG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2V0IGlzZGlzYWJsZWQodjogYm9vbGVhbiB8IHN0cmluZykge1xuICAgICAgICBpZiAodiA9PT0gbnVsbCB8fCB2ID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIHYgPT09ICdib29sZWFuJykge1xuICAgICAgICAgICAgdGhpcy5faXNkaXNhYmxlZHZhbHVlID0gdiBhcyBib29sZWFuO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5faXNkaXNhYmxlZHZhbHVlID0gdiA9PT0gJ3RydWUnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBpc2xvYWRpbmcoKTogYm9vbGVhbiB8IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc2xvYWRpbmd2YWx1ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEYXMgSW5wdXQgcHJvcGVydHkuIERlZmluaWVydCBkZXIgU3RhdHVzIGRlcyBpc2xhb2RpbmcgcHJvcGVydHkuIEVzIGlzdCBiZW51dHp0IGbDvHIgQWt0aXZhdGlvbiBkZXMgU3Bpbm5lciBkZXMgQnV0dG9uLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHNldCBpc2xvYWRpbmcodjogYm9vbGVhbiB8IHN0cmluZykge1xuICAgICAgICBpZiAodiA9PT0gbnVsbCB8fCB2ID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIHYgPT09ICdib29sZWFuJykge1xuICAgICAgICAgICAgdGhpcy5faXNsb2FkaW5ndmFsdWUgPSB2IGFzIGJvb2xlYW47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9pc2xvYWRpbmd2YWx1ZSA9IHYgPT09ICd0cnVlJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIERpZSBNZXRob2RlIHJldHVybnMgZGllIGRlZmluaWVydGUgU3R5bGUtUm9sbGUgZGVzIEJ1dHRvbnNcbiAgICAgKi9cbiAgICBwdWJsaWMgZ2V0IHJvbGUoKTogQlVUVE9OUk9MRVRZUEUge1xuICAgICAgICByZXR1cm4gdGhpcy5fcm9sZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEZWZpbmllcnQgZGVuIFN0eWxlIGRlcyBCdXR0b25zXG4gICAgICogQHBhcmFtICB2IERlZmluaWVydCBkZW4gU3R5bGUgZGVzIEJ1dHRvbnMuXG4gICAgICogRm9sZ2VuZGUgVHlwZW4gc2luZCBTdXBwb3J0ZWQ6IHByaW1hcnksIHNlY29uZGFyeSwgc3VjY2VzcywgZGFuZ2VyLCB3YXJuaW5nLCBpbmZvLCBsaWdodCwgZGFyaywgbGluaywgZGVmYXVsdFxuICAgICAqIEByZXR1cm5zICBUeXBlIGRlcyBCdXR0b25zXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgc2V0IHJvbGUodjogQlVUVE9OUk9MRVRZUEUpIHtcbiAgICAgICAgLy8gVmFsaWRhdGlvbiBvZiBJbnB1dFxuICAgICAgICBzd2l0Y2ggKHYpIHtcbiAgICAgICAgICAgIGNhc2UgJyc6XG4gICAgICAgICAgICBjYXNlICdwcmltYXJ5JzpcbiAgICAgICAgICAgIGNhc2UgJ2RlZmF1bHQnOlxuICAgICAgICAgICAgY2FzZSAnbGlnaHQnOlxuICAgICAgICAgICAgY2FzZSAnZGFyayc6XG4gICAgICAgICAgICBjYXNlICdsaW5rJzpcbiAgICAgICAgICAgIGNhc2UgJ3N1Y2Nlc3MnOlxuICAgICAgICAgICAgY2FzZSAnc2Vjb25kYXJ5JzpcbiAgICAgICAgICAgIGNhc2UgJ2Rhbmdlcic6XG4gICAgICAgICAgICBjYXNlICd3YXJuaW5nJzpcbiAgICAgICAgICAgIGNhc2UgJ2luZm8nOlxuICAgICAgICAgICAgICAgIC8vIEVtcHR5IFJvbGUgaXMgRGVmYXVsdFxuICAgICAgICAgICAgICAgIGlmICh2ID09PSAnJykge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9yb2xlID0gJ2RlZmF1bHQnO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3JvbGUgPSB2O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHJvbGUgXCIgKyB2ICsgXCIgZm9yIGJ1dHRvbi4nKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vICNlbmRyZWdpb24gUHVibGljIEdldHRlcnMgQW5kIFNldHRlcnNcblxuICAgIC8vICNyZWdpb24gUHVibGljIE1ldGhvZHNcblxuICAgIC8qKlxuICAgICAqIERpZSBNZXRob2RlIHdpcmQgZWluIEV2ZW50IGF1ZnJ1ZmVuLCB3ZW5uIGRhcyBCdXR0b24gZ2VrbGlja3Qgd2lyZCBVTkQgZGFzIEJ1dHRvbiBuaWNodCBkaXNhYmxlZCBPREVSIGlzbG9hZGluZyBpc3QuXG4gICAgICovXG4gICAgcHVibGljIGJ1dHRvbkNsaWNrKCkge1xuICAgICAgICBpZiAodGhpcy5faXNkaXNhYmxlZCA9PT0gZmFsc2UgJiYgdGhpcy5faXNsb2FkaW5ndmFsdWUgPT09IGZhbHNlKSB7XG4gICAgICAgICAgICB0aGlzLmNsaWNrZWQuZW1pdCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gI2VuZHJlZ2lvbiBQdWJsaWMgTWV0aG9kc1xufVxuIl0sIm1hcHBpbmdzIjoiK3RaQWtCWTtBQUFBQSxjQUFBLFNBQUFBLENBQUEsU0FBQUMsY0FBQSxXQUFBQSxjQUFBLEVBQUFELGNBQUEsR0FqQlosT0FBU0UsU0FBUyxDQUFFQyxZQUFZLENBQUVDLEtBQUssQ0FBRUMsTUFBTSxLQUFRLGVBQWUsQyxpQ0FFdEU7O0dBR0EsS0FDYSxDQUFBQyxlQUFlLENBRDVCQyxZQUFBLEVBQUFQLGNBQUEsR0FBQVEsQ0FBQSxLQUFBUixDQUFBLGlCQUFBUyxDQUFBLE1BRUk7QUFFQTs7V0FHUSxLQUFBQyxnQkFBZ0IsQ0FBWSxLQUFLLENBRXpDOztXQUFBVixjQUFBLEdBQUFTLENBQUEsTUFHUSxLQUFBRSxLQUFLLENBQW1CLFNBQVMsQ0FFekM7O1dBQUFYLGNBQUEsR0FBQVMsQ0FBQSxNQUdPLEtBQUFHLGVBQWUsQ0FBWSxLQUFLLENBRXZDOztXQUFBWixjQUFBLEdBQUFTLENBQUEsTUFJTyxLQUFBSSxPQUFPLENBQUcsR0FBSSxDQUFBVixZQUFZLEVBQUUsQ0FFbkM7O1dBQUFILGNBQUEsR0FBQVMsQ0FBQSxNQUlPLEtBQUFLLGFBQWEsQ0FBa0IsSUFBSSxDQUUxQzs7V0FBQWQsY0FBQSxHQUFBUyxDQUFBLE1BR08sS0FBQU0s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
|
|
@@ -14,4 +14,4 @@ cov_rx52jdmtq=function(){return actualCoverage;};}return actualCoverage;}cov_rx5
|
|
|
14
14
|
/**
|
|
15
15
|
* Adopts the default display if no display has been defined on the component.
|
|
16
16
|
*/setCheckboxStyle(){cov_rx52jdmtq().f[3]++;cov_rx52jdmtq().s[5]++;if(!this.checkboxstyle){cov_rx52jdmtq().b[0][0]++;cov_rx52jdmtq().s[6]++;if(this.formlayout?.checkboxstyle){cov_rx52jdmtq().b[1][0]++;cov_rx52jdmtq().s[7]++;this.checkboxstyle=this.formlayout.checkboxstyle;}else{cov_rx52jdmtq().b[1][1]++;cov_rx52jdmtq().s[8]++;this.checkboxstyle=this.configurationService.CheckboxStyle;}}else{cov_rx52jdmtq().b[0][1]++;}}static{cov_rx52jdmtq().s[9]++;this.ɵfac=i0.ɵɵngDeclareFactory({minVersion:"12.0.0",version:"16.2.12",ngImport:i0,type:SacCheckboxCommon,deps:null,target:i0.ɵɵFactoryTarget.Directive});}static{cov_rx52jdmtq().s[10]++;this.ɵdir=i0.ɵɵngDeclareDirective({minVersion:"14.0.0",version:"16.2.12",type:SacCheckboxCommon,inputs:{checkboxstyle:"checkboxstyle",checkboxtext:"checkboxtext",stacked:"stacked"},usesInheritance:true,ngImport:i0});}}export{SacCheckboxCommon};cov_rx52jdmtq().s[11]++;i0.ɵɵngDeclareClassMetadata({minVersion:"12.0.0",version:"16.2.12",ngImport:i0,type:SacCheckboxCommon,decorators:[{type:Directive}],propDecorators:{checkboxstyle:[{type:Input}],checkboxtext:[{type:Input}],stacked:[{type:Input}]}});//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zYWMtY29tbW9uL3NyYy9jb250cm9scy9jaGVja2JveC9jaGVja2JveC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUV6RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7QUFFcEU7O0dBRUc7QUFDSCxNQUNhLGlCQUNYLFNBQVEsbUJBQTRCO0lBRnRDOztRQWdCRTs7V0FFRztRQUNhLFlBQU8sR0FBWSxLQUFLLENBQUM7S0F3QzFDO0lBdENDLHdCQUF3QjtJQUV4Qix5QkFBeUI7SUFFekI7O09BRUc7SUFDSSxRQUFRO1FBQ2IsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRWpCLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRDs7T0FFRztJQUNJLFlBQVksQ0FBQyxDQUFrQjtRQUNwQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCw0QkFBNEI7SUFFNUIsMEJBQTBCO0lBRTFCOztPQUVHO0lBQ0ssZ0JBQWdCO1FBQ3RCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3ZCLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxhQUFhLEVBQUU7Z0JBQ2xDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7YUFDcEQ7aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsYUFBYSxDQUFDO2FBQzlEO1NBQ0Y7SUFDSCxDQUFDOytHQXZEVSxpQkFBaUI7bUdBQWpCLGlCQUFpQjs7U0FBakIsaUJBQWlCOzRGQUFqQixpQkFBaUI7a0JBRDdCLFNBQVM7OEJBV0QsYUFBYTtzQkFEbkIsS0FBSztnQkFLVSxZQUFZO3NCQUEzQixLQUFLO2dCQUlVLE9BQU87c0JBQXRCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFNhY0Jhc2VNb2RlbENvbnRyb2wgfSBmcm9tICcuLi8uLi9jb21tb24vYmFzZW1vZGVsY29udHJvbCc7XG5cbi8qKlxuICogQmFzaXMgS29tcG9uZW50ZSBmw7xyIFNhY0NoZWNrYm94Q29tbW9uLiBFeHRlbmRzIFNhY0Jhc2VNb2RlbENvbnRyb2xcbiAqL1xuQERpcmVjdGl2ZSgpXG5leHBvcnQgY2xhc3MgU2FjQ2hlY2tib3hDb21tb25cbiAgZXh0ZW5kcyBTYWNCYXNlTW9kZWxDb250cm9sPGJvb2xlYW4+XG4gIGltcGxlbWVudHMgT25Jbml0XG57XG4gIC8vICNyZWdpb24gUHJvcGVydGllc1xuXG4gIC8qKlxuICAgKiBEZWZpbmVzIHRoZSBkaXNwbGF5IGZvciBhIGNoZWNrYm94XG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgY2hlY2tib3hzdHlsZTogJ2NoZWNrYm94JyB8ICdzd2l0Y2gnIHwgbnVsbDtcbiAgLyoqXG4gICAqIFRleHQgdm9tIENoZWNrYm94LUNvbnRyb2wuIERlciBUZXh0IHdpcmQgcmVjaHRzIHZvbiBkZXIgQ2hlY2tib3ggYW5nZXplaWd0LlxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGNoZWNrYm94dGV4dDtcbiAgLyoqXG4gICAqIERlZmluZXMgdGhhdCB0aGUgY2hlY2tib3ggY2FuIGJlIHVzZWQgaW4gYSBsaXN0IG9mIGNoZWNrYm94ZXMgYW5kIGlzIG5vdCBoYW5kbGVkIGFzIGEgc2luZ2xlIGZvcm0gY29udHJvbFxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIHN0YWNrZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvLyAjZW5kcmVnaW9uIFByb3BlcnRpZXNcblxuICAvLyAjcmVnaW9uIFB1YmxpYyBNZXRob2RzXG5cbiAgLyoqXG4gICAqIEluaXQgRXZlbnRcbiAgICovXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuXG4gICAgdGhpcy5zZXRDaGVja2JveFN0eWxlKCk7XG4gIH1cblxuICAvKipcbiAgICogQ29udHJvbCBoYXQga2VpbmVuIFZhbGlkYXRvclxuICAgKi9cbiAgcHVibGljIHZhbGlkYXRlRGF0YShjOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvLyAjZW5kcmVnaW9uIFB1YmxpYyBNZXRob2RzXG5cbiAgLy8gI3JlZ2lvbiBQcml2YXRlIE1ldGhvZHNcblxuICAvKipcbiAgICogQWRvcHRzIHRoZSBkZWZhdWx0IGRpc3BsYXkgaWYgbm8gZGlzcGxheSBoYXMgYmVlbiBkZWZpbmVkIG9uIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwcml2YXRlIHNldENoZWNrYm94U3R5bGUoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNoZWNrYm94c3R5bGUpIHtcbiAgICAgIGlmICh0aGlzLmZvcm1sYXlvdXQ/LmNoZWNrYm94c3R5bGUpIHtcbiAgICAgICAgdGhpcy5jaGVja2JveHN0eWxlID0gdGhpcy5mb3JtbGF5b3V0LmNoZWNrYm94c3R5bGU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmNoZWNrYm94c3R5bGUgPSB0aGlzLmNvbmZpZ3VyYXRpb25TZXJ2aWNlLkNoZWNrYm94U3R5bGU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gI2VuZHJlZ2lvbiBQcml2YXRlIE1ldGhvZHNcbn1cbiJdfQ==
|
|
17
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjb3Zfcng1MmpkbXRxIiwiYWN0dWFsQ292ZXJhZ2UiLCJEaXJlY3RpdmUiLCJJbnB1dCIsIlNhY0Jhc2VNb2RlbENvbnRyb2wiLCJTYWNDaGVja2JveENvbW1vbiIsImNvbnN0cnVjdG9yIiwiZiIsInMiLCJzdGFja2VkIiwibmdPbkluaXQiLCJzZXRDaGVja2JveFN0eWxlIiwidmFsaWRhdGVEYXRhIiwiYyIsImNoZWNrYm94c3R5bGUiLCJiIiwiZm9ybWxheW91dCIsImNvbmZpZ3VyYXRpb25TZXJ2aWNlIiwiQ2hlY2tib3hTdHlsZSIsImRlcHMiLCJ0YXJnZXQiLCJpMCIsIsm1ybVGYWN0b3J5VGFyZ2V0IiwiaW5wdXRzIiwiY2hlY2tib3h0ZXh0IiwidXNlc0luaGVyaXRhbmNlIiwibmdJbXBvcnQiLCJkZWNvcmF0b3JzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2FjLWNvbW1vbi9zcmMvY29udHJvbHMvY2hlY2tib3gvY2hlY2tib3gudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIFZhbGlkYXRpb25FcnJvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTYWNCYXNlTW9kZWxDb250cm9sIH0gZnJvbSAnLi4vLi4vY29tbW9uL2Jhc2Vtb2RlbGNvbnRyb2wnO1xuXG4vKipcbiAqIEJhc2lzIEtvbXBvbmVudGUgZsO8ciBTYWNDaGVja2JveENvbW1vbi4gRXh0ZW5kcyBTYWNCYXNlTW9kZWxDb250cm9sXG4gKi9cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGNsYXNzIFNhY0NoZWNrYm94Q29tbW9uXG4gIGV4dGVuZHMgU2FjQmFzZU1vZGVsQ29udHJvbDxib29sZWFuPlxuICBpbXBsZW1lbnRzIE9uSW5pdFxue1xuICAvLyAjcmVnaW9uIFByb3BlcnRpZXNcblxuICAvKipcbiAgICogRGVmaW5lcyB0aGUgZGlzcGxheSBmb3IgYSBjaGVja2JveFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGNoZWNrYm94c3R5bGU6ICdjaGVja2JveCcgfCAnc3dpdGNoJyB8IG51bGw7XG4gIC8qKlxuICAgKiBUZXh0IHZvbSBDaGVja2JveC1Db250cm9sLiBEZXIgVGV4dCB3aXJkIHJlY2h0cyB2b24gZGVyIENoZWNrYm94IGFuZ2V6ZWlndC5cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBjaGVja2JveHRleHQ7XG4gIC8qKlxuICAgKiBEZWZpbmVzIHRoYXQgdGhlIGNoZWNrYm94IGNhbiBiZSB1c2VkIGluIGEgbGlzdCBvZiBjaGVja2JveGVzIGFuZCBpcyBub3QgaGFuZGxlZCBhcyBhIHNpbmdsZSBmb3JtIGNvbnRyb2xcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBzdGFja2VkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLy8gI2VuZHJlZ2lvbiBQcm9wZXJ0aWVzXG5cbiAgLy8gI3JlZ2lvbiBQdWJsaWMgTWV0aG9kc1xuXG4gIC8qKlxuICAgKiBJbml0IEV2ZW50XG4gICAqL1xuICBwdWJsaWMgbmdPbkluaXQoKSB7XG4gICAgc3VwZXIubmdPbkluaXQoKTtcblxuICAgIHRoaXMuc2V0Q2hlY2tib3hTdHlsZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnRyb2wgaGF0IGtlaW5lbiBWYWxpZGF0b3JcbiAgICovXG4gIHB1YmxpYyB2YWxpZGF0ZURhdGEoYzogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgLy8gI2VuZHJlZ2lvbiBQdWJsaWMgTWV0aG9kc1xuXG4gIC8vICNyZWdpb24gUHJpdmF0ZSBNZXRob2RzXG5cbiAgLyoqXG4gICAqIEFkb3B0cyB0aGUgZGVmYXVsdCBkaXNwbGF5IGlmIG5vIGRpc3BsYXkgaGFzIGJlZW4gZGVmaW5lZCBvbiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHJpdmF0ZSBzZXRDaGVja2JveFN0eWxlKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5jaGVja2JveHN0eWxlKSB7XG4gICAgICBpZiAodGhpcy5mb3JtbGF5b3V0Py5jaGVja2JveHN0eWxlKSB7XG4gICAgICAgIHRoaXMuY2hlY2tib3hzdHlsZSA9IHRoaXMuZm9ybWxheW91dC5jaGVja2JveHN0eWxlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5jaGVja2JveHN0eWxlID0gdGhpcy5jb25maWd1cmF0aW9uU2VydmljZS5DaGVja2JveFN0eWxlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vICNlbmRyZWdpb24gUHJpdmF0ZSBNZXRob2RzXG59XG4iXSwibWFwcGluZ3MiOiI0Z0tBOEJFO0FBQUFBLGFBQUEsU0FBQUEsQ0FBQSxTQUFBQyxjQUFBLFdBQUFBLGNBQUEsRUFBQUQsYUFBQSxHQTlCRixPQUFTRSxTQUFTLENBQUVDLEtBQUssS0FBZ0IsZUFBZSxDQUV4RCxPQUFTQyxtQkFBbUIsS0FBUSwrQkFBK0IsQyxpQ0FFbkU7O0dBR0EsS0FDYSxDQUFBQyxpQkFDWCxRQUFRLENBQUFELG1CQUE0QixDQUZ0Q0UsWUFBQSxFQUFBTixhQUFBLEdBQUFPLENBQUEsS0FBQVAsQ0FBQSxnQkFBQVEsQ0FBQSxNLG9CQWdCRTs7V0FBQVIsYUFBQSxHQUFBUSxDQUFBLE1BR2dCLEtBQUFDLE9BQU8sQ0FBWSxLQUFLLEMsQ0FFeEM7QUFFQTtBQUVBOztPQUdPQyxRQUFRQSxDQUFBLEVBQUFWLGFBQUEsR0FBQU8sQ0FBQSxLQUFBUCxDQUFBLGdCQUFBUSxDQUFBLE1BQ2IsS0FBSyxDQUFDRSxRQUFRLEVBQUUsQ0FBQ1YsYUFBQSxHQUFBUSxDQUFBLE1BRWpCLElBQUksQ0FBQ0csZ0JBQWdCLEVBQUUsQ0FDekIsQ0FFQTs7T0FHT0MsWUFBWUEsQ0FBQ0MsQ0FBa0IsRUFBQWIsYUFBQSxHQUFBTyxDQUFBLEtBQUFQLENBQUEsZ0JBQUFRLENBQUEsTUFDcEMsTUFBTyxLQUFJLENBQ2IsQ0FFQTtBQUVBO0FBRUE7O09BR1FHLGdCQUFnQkEsQ0FBQSxFQUFBWCxhQUFBLEdBQUFPLENBQUEsS0FBQVAsQ0FBQSxnQkFBQVEsQ0FBQSxNQUN0QixHQUFJLENBQUMsSUFBSSxDQUFDTSxhQUFhLENBQUUsQ0FBQWQsYUFBQSxHQUFBZSxDQUFBLFFBQUFmLENBQUEsZ0JBQUFRLENBQUEsTUFDdkIsR0FBSSxJQUFJLENBQUNRLFVBQVUsRUFBRUYsYUFBYSxDQUFFLENBQUFkLGFBQUEsR0FBQWUsQ0FBQSxRQUFBZixDQUFBLGdCQUFBUSxDQUFBLE1BQ2xDLElBQUksQ0FBQ00sYUFBYSxDQUFHLElBQUksQ0FBQ0UsVUFBVSxDQUFDRixhQUFhLEMsQ0FDbkQsSUFBTSxDQUFBZCxhQUFBLEdBQUFlLENBQUEsUUFBQWYsQ0FBQSxnQkFBQVEsQ0FBQSxNQUNMLElBQUksQ0FBQ00sYUFBYSxDQUFHLElBQUksQ0FBQ0csb0JBQW9CLENBQUNDLGFBQWEsQyxFQUUvRCxLQUFBbEIsYUFBQSxHQUFBZSxDQUFBLFVBQ0gsQyxzSEF2RFdWLGlCQUFpQixDQUFBYyxJQUFBLE1BQUFDLE1BQUEsQ0FBQUMsRUFBQSxDQUFBQyxlQUFBLENBQUFwQixTQUFBLEksNkdBQWpCRyxpQkFBaUIsQ0FBQWtCLE1BQUEsRUFBQVQsYUFBQSxpQkFBQVUsWUFBQSxnQkFBQWYsT0FBQSxZQUFBZ0IsZUFBQSxNQUFBQyxRQUFBLENBQUFMLEVBQUEsSSxRQUFqQmhCLGlCQUFpQixFQUFBTCxhQUFBLEdBQUFRLENBQUEsTyxvRkFBakJILGlCQUFpQixDQUFBc0IsVUFBQSxHLEtBRDdCekIsUyxtQkFXUVksYUFBYSxHLEtBRG5CWCxLLEdBS2VxQixZQUFZLEcsS0FBM0JyQixLLEdBSWVNLE9BQU8sRyxLQUF0Qk4sSyIsImlnbm9yZUxpc3QiOltdfQ==
|