@magic-xpa/gui 4.1000.0-dev4100.43 → 4.1000.0-dev4100.436
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/esm2020/index.mjs +1 -1
- package/esm2020/src/Commands.mjs +9 -6
- package/esm2020/src/Events.mjs +3 -3
- package/esm2020/src/GuiEnums.mjs +4 -1
- package/esm2020/src/Manager.mjs +2 -2
- package/esm2020/src/gui/low/GuiInteractive.mjs +3 -2
- package/esm2020/src/management/data/DcValues.mjs +4 -4
- package/esm2020/src/management/data/FieldDef.mjs +7 -7
- package/esm2020/src/management/data/GuiDataViewBase.mjs +1 -1
- package/esm2020/src/management/data/NUM_TYPE.mjs +7 -7
- package/esm2020/src/management/data/RecordUtils.mjs +4 -4
- package/esm2020/src/management/gui/DisplayConvertor.mjs +34 -41
- package/esm2020/src/management/gui/Helps.mjs +18 -18
- package/esm2020/src/management/gui/MgControlBase.mjs +24 -27
- package/esm2020/src/management/gui/MgFormBase.mjs +3 -2
- package/esm2020/src/management/gui/Property.mjs +4 -4
- package/esm2020/src/management/gui/ValidationDetails.mjs +10 -10
- package/esm2020/src/management/tasks/GuiTaskBase.mjs +16 -16
- package/fesm2015/magic-xpa-gui.mjs +136 -142
- package/fesm2015/magic-xpa-gui.mjs.map +1 -1
- package/fesm2020/magic-xpa-gui.mjs +135 -137
- package/fesm2020/magic-xpa-gui.mjs.map +1 -1
- package/package.json +4 -4
- package/src/Commands.d.ts +1 -1
- package/src/GuiEnums.d.ts +5 -2
- package/src/gui/low/GuiInteractive.d.ts +1 -1
- package/src/management/data/GuiDataViewBase.d.ts +1 -0
- package/src/management/gui/MgControlBase.d.ts +2 -1
- package/magic-xpa-gui.d.ts +0 -2
package/esm2020/src/GuiEnums.mjs
CHANGED
|
@@ -226,6 +226,8 @@ export var CommandType;
|
|
|
226
226
|
CommandType[CommandType["PROP_SET_BINDING_LEVEL"] = 154] = "PROP_SET_BINDING_LEVEL";
|
|
227
227
|
CommandType[CommandType["SHOW_SPINNER"] = 155] = "SHOW_SPINNER";
|
|
228
228
|
CommandType[CommandType["SHOW_HTML_ERROR"] = 156] = "SHOW_HTML_ERROR";
|
|
229
|
+
CommandType[CommandType["SET_WC_IDLE"] = 157] = "SET_WC_IDLE";
|
|
230
|
+
CommandType[CommandType["SET_CHUNK_SIZE"] = 158] = "SET_CHUNK_SIZE";
|
|
229
231
|
})(CommandType || (CommandType = {}));
|
|
230
232
|
export var HtmlProperties;
|
|
231
233
|
(function (HtmlProperties) {
|
|
@@ -246,6 +248,7 @@ export var HtmlProperties;
|
|
|
246
248
|
HtmlProperties["SelectedLayer"] = "SelectedLayer";
|
|
247
249
|
HtmlProperties["BindingLevel"] = "bindingLevel";
|
|
248
250
|
HtmlProperties["ZoomButtonTooltip"] = "ZoomButtonTooltip";
|
|
251
|
+
HtmlProperties["CheckBoxIndeterminate"] = "CheckBoxIndeterminate";
|
|
249
252
|
})(HtmlProperties || (HtmlProperties = {}));
|
|
250
253
|
export var MenuStyle;
|
|
251
254
|
(function (MenuStyle) {
|
|
@@ -295,4 +298,4 @@ export var OverlayType;
|
|
|
295
298
|
OverlayType[OverlayType["Alert"] = 1] = "Alert";
|
|
296
299
|
OverlayType[OverlayType["ConfirmationBox"] = 2] = "ConfirmationBox";
|
|
297
300
|
})(OverlayType || (OverlayType = {}));
|
|
298
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3VpRW51bXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ndWkvc3JjL0d1aUVudW1zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLFdBS1g7QUFMRCxXQUFZLFdBQVc7SUFDckIseUJBQVUsQ0FBQTtJQUNWLDBCQUFXLENBQUE7SUFDWCx3QkFBUyxDQUFBO0lBQ1Qsd0JBQVMsQ0FBQTtBQUNYLENBQUMsRUFMVyxXQUFXLEtBQVgsV0FBVyxRQUt0QjtBQUVELE1BQU0sQ0FBTixJQUFZLDJCQUdYO0FBSEQsV0FBWSwyQkFBMkI7SUFDckMseUNBQVUsQ0FBQTtJQUNWLDRDQUFhLENBQUE7QUFDZixDQUFDLEVBSFcsMkJBQTJCLEtBQTNCLDJCQUEyQixRQUd0QztBQUVELE1BQU0sQ0FBTixJQUFZLGNBSVg7QUFKRCxXQUFZLGNBQWM7SUFDeEIscUVBQWEsQ0FBQTtJQUNiLHFFQUFhLENBQUE7SUFDYixtRUFBWSxDQUFBO0FBQ2QsQ0FBQyxFQUpXLGNBQWMsS0FBZCxjQUFjLFFBSXpCO0FBRUQsTUFBTSxDQUFOLElBQVkscURBR1g7QUFIRCxXQUFZLHFEQUFxRDtJQUMvRCwrSEFBTyxDQUFBO0lBQ1AsK0lBQVcsQ0FBQTtBQUNiLENBQUMsRUFIVyxxREFBcUQsS0FBckQscURBQXFELFFBR2hFO0FBRUQsTUFBTSxDQUFOLElBQVkscUJBS1g7QUFMRCxXQUFZLHFCQUFxQjtJQUMvQixxQ0FBWSxDQUFBO0lBQ1oscUNBQVksQ0FBQTtJQUNaLHFDQUFZLENBQUE7SUFDWixtQ0FBVSxDQUFBO0FBQ1osQ0FBQyxFQUxXLHFCQUFxQixLQUFyQixxQkFBcUIsUUFLaEM7QUFFRCxNQUFNLENBQU4sSUFBWSxZQUlYO0FBSkQsV0FBWSxZQUFZO0lBQ3RCLHlEQUFhLENBQUE7SUFDYixxREFBTyxDQUFBO0lBQ1AsaUVBQWEsQ0FBQTtBQUNmLENBQUMsRUFKVyxZQUFZLEtBQVosWUFBWSxR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QWUsQ0FBQTtJQUNmLHFFQUFnQixDQUFBO0lBQ2hCLHFFQUFnQixDQUFBO0lBQ2hCLCtFQUFxQixDQUFBO0lBQ3JCLHVFQUFpQixDQUFBO0lBQ2pCLDJFQUFtQixDQUFBO0lBQ25CLG1DQUFvQixDQUFBO0FBQ3RCLENBQUMsRUFWVyxXQUFXLEtBQVgsV0FBVyxRQVV0QjtBQUtELE1BQU0sQ0FBTixJQUFZLFdBS1g7QUFMRCxXQUFZLFdBQVc7SUFFckIsbURBQVcsQ0FBQTtJQUNYLCtDQUFLLENBQUE7SUFDTCxtRUFBZSxDQUFBO0FBQ2pCLENBQUMsRUFMVyxXQUFXLEtBQVgsV0FBVyxRQUt0QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIERhdGVFbGVtZW50IHtcclxuICBZRUFSID0gJ1knLFxyXG4gIE1PTlRIID0gJ00nLFxyXG4gIERBWSA9ICdEJyxcclxuICBET1cgPSAnVydcclxufVxyXG5cclxuZXhwb3J0IGVudW0gTWVudUVudHJ5UHJvZ3JhbV9TcmNDb250ZXh0IHtcclxuICBNYWluID0gJ00nLFxyXG4gIEN1cnJlbnQgPSAnQydcclxufVxyXG5cclxuZXhwb3J0IGVudW0gRWRpdFJldHVybkNvZGUge1xyXG4gIEVESVRfQ09OVElOVUUsXHJcbiAgRURJVF9BVVRPU0tJUCxcclxuICBFRElUX1JFU1RBUlRcclxufVxyXG5cclxuZXhwb3J0IGVudW0gR3VpRXhwcmVzc2lvbkV2YWx1YXRvcl9Db250cm9sc1BlcnNpc3RlbmN5Q2xlYXJPcHRpb24ge1xyXG4gIEFsbCA9IDEsXHJcbiAgQ3VycmVudEZvcm1cclxufVxyXG5cclxuZXhwb3J0IGVudW0gRGF0YU1vZGlmaWNhdGlvblR5cGVzIHtcclxuICBVcGRhdGUgPSAndScsXHJcbiAgSW5zZXJ0ID0gJ2knLFxyXG4gIERlbGV0ZSA9ICdkJyxcclxuICBOb25lID0gJyAnXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIE1nQ2hlY2tTdGF0ZSB7XHJcbiAgVU5DSEVDS0VEID0gMSxcclxuICBDSEVDS0VELFxyXG4gIElOREVURVJNSU5BVEVcclxufVxyXG5cclxuZXhwb3J0IGVudW0gTWFya01vZGUge1xyXG4gIE1BUktfQUxMX1RFWFQgPSAxLFxyXG4gIFVOTUFSS19BTExfVEVYVCxcclxuICBNQVJLX1NFTEVDVElPTl9URVhUXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIE1nQ3Vyc29ycyB7XHJcbiAgQVJST1cgPSAxLFxyXG4gIFdBSVRDVVJTT1IsXHJcbiAgSEFORCxcclxuICBBUFBTVEFSVElORyxcclxuICBDUk9TUyxcclxuICBIRUxQLFxyXG4gIElCRUFNLFxyXG4gIE5PLFxyXG4gIFNJWkVBTEwsXHJcbiAgU0laRU5FU1csXHJcbiAgU0laRU5TLFxyXG4gIFNJWkVOV1NFLFxyXG4gIFNJWkVXRSxcclxuICBVUEFSUk9XXHJcbn1cclxuXHJcbi8vLyA8c3VtbWFyeT4gbW9kaWZpZXIga2V5czwvc3VtbWFyeT5cclxuZXhwb3J0IGVudW0gTW9kaWZpZXJzIHtcclxuICBNT0RJRklFUl9BTFQgPSAnQScsXHJcbiAgTU9ESUZJRVJfQ1RSTCA9ICdDJyxcclxuICBNT0RJRklFUl9TSElGVCA9ICdTJyxcclxuICBNT0RJRklFUl9OT05FID0gJyAnLFxyXG4gIE1PRElGSUVSX1NISUZUX0NUUkwgPSAnWCcsXHJcbiAgTU9ESUZJRVJfQUxUX0NUUkwgPSAnWScsXHJcbiAgTU9ESUZJRVJfQUxUX1NISUZUID0gJ1onXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIENvbW1hbmRUeXBlIHtcclxuICBPUEVOX0ZPUk0sXHJcbiAgQ1JFQVRFX0ZPUk0sXHJcbiAgSU5JVElBTF9GT1JNX0xBWU9VVCxcclxuICBTSE9XX0ZPUk0sXHJcbiAgQ1JFQVRFX0xBQkVMLFxyXG4gIENSRUFURV9FRElULFxyXG4gIENSRUFURV9CVVRUT04sXHJcbiAgQ1JFQVRFX0NPTUJPX0JPWCxcclxuICBDUkVBVEVfTElTVF9CT1gsXHJcbiAgQ1JFQVRFX1JBRElPX0NPTlRBSU5FUixcclxuICBDUkVBVEVfUkFESU9fQlVUVE9OLFxyXG4gIENSRUFURV9JTUFHRSxcclxuICBDUkVBVEVfQ0hFQ0tfQk9YLFxyXG4gIENSRUFURV9UQUIsXHJcbiAgQ1JFQVRFX1RBQkxFLFxyXG4gIENSRUFURV9DT0xVTU4sXHJcbiAgQ1JFQVRFX1NVQl9GT1JNLFxyXG4gIENMT1NFX1NVQl9GT1JNLFxyXG4gIENSRUFURV9CUk9XU0VSLFxyXG4gIENSRUFURV9HUk9VUCxcclxuICBDUkVBVEVfUklDSF9FRElULFxyXG4gIENSRUFURV9SSUNIX1RFWFQsXHJcbiAgQ1JFQVRFX0xJTkUsXHJcbiAgRElTUE9TRV9PQkpFQ1QsXHJcbiAgUFJPUF9TRVRfQ09OVFJPTF9OQU1FLFxyXG4gIFBST1BfU0VUX1RFWFQsXHJcbiAgUFJPUF9TRVRfUkVBRF9PTkxZLFxyXG4gIFBST1BfU0VUX1RFWFRfU0laRV9MSU1JVCxcclxuICBQUk9QX1NFVF9JVEVNU19MSVNULFxyXG4gIFBST1BfU0VUX0lNQUdFX0ZJTEVfTkFNRSxcclxuICBQUk9QX1NFVF9JTUFHRV9EQVRBLFxyXG4gIFBST1BfU0VUX0lNQUdFX0xJU1QsXHJcblxyXG4gIFBST1BfU0VUX1RPT0xUSVAsXHJcbiAgUFJPUF9TRVRfVklTSUJMRSxcclxuICBQUk9QX1NFVF9FTkFCTEUsXHJcbiAgUFJPUF9TRVRfTUVOVV9FTkFCTEUsXHJcbiAgUFJPUF9TRVRfVklTSUJMRV9MSU5FUyxcclxuICBQUk9QX1NFVF9SSUdIVF9UT19MRUZULFxyXG4gIFBST1BfU0VUX0NIRUNLRUQsXHJcbiAgUFJPUF9TRVRfU0VMRUNUSU9OLFxyXG4gIFBST1BfU0VUX0xBWU9VVF9OVU1fQ09MVU1OLFxyXG4gIFBST1BfU0VUX0xJTkVfVklTSUJMRSxcclxuICBQUk9QX1NFVF9SRVNJWkFCTEUsXHJcbiAgUFJPUF9TRVRfQUxMT1dfUkVPUkRFUixcclxuICBQUk9QX1NFVF9TT1JUQUJMRV9DT0xVTU4sXHJcbiAgUFJPUF9TRVRfQ09MVU1OX1BMQUNNRU5ULFxyXG4gIFBST1BfU0VUX0lDT05fRklMRV9OQU1FLFxyXG4gIFNFVF9XSU5ET1dfU1RBVEUsXHJcbiAgU0VUX0NPTFVNTl9PUkdfV0lEVEgsXHJcbiAgU0VUX0NPTFVNTl9TVEFSVF9QT1MsXHJcbiAgU0VUX1RBQkxFX0lURU1TX0NPVU5ULFxyXG4gIFNFVF9UQUJMRV9WSVJUVUFMX0lURU1TX0NPVU5ULFxyXG4gIFNFVF9UQUJMRV9WU0NST0xMX1RIVU1CX1BPUyxcclxuICBTRVRfVEFCTEVfVlNDUk9MTF9QQUdFX1NJWkUsXHJcbiAgU0VUX1RBQkxFX0lOQ0xVREVTX0ZJUlNULFxyXG4gIFNFVF9UQUJMRV9JTkNMVURFU19MQVNULFxyXG4gIFNFVF9UQUJMRV9UT1BfSU5ERVgsXHJcbiAgU0VUX1NFTEVDVElPTl9JTkRFWCxcclxuICBJTlZBTElEQVRFX1RBQkxFLFxyXG4gIFJFRlJFU0hfVEFCTEUsXHJcbiAgUkVGUkVTSF9UTVBfRURJVE9SLFxyXG4gIFVQREFURV9UTVBfRURJVE9SX0lOREVYLFxyXG4gIENSRUFURV9UQUJMRV9ST1csXHJcbiAgVU5ET19DUkVBVEVfVEFCTEVfUk9XLFxyXG4gIFNFVF9UQUJMRV9ST1dfVklTSUJJTElUWSxcclxuICBWQUxJREFURV9UQUJMRV9ST1csXHJcbiAgSU5TRVJUX1JPV1MsXHJcbiAgUkVNT1ZFX1JPV1MsXHJcbiAgQ0xFQVJfVEFCTEVfQ09MVU1OU19TT1JUX01BUkssXHJcbiAgUFJPUF9TRVRfVVJMLFxyXG4gIE1PVkVfQUJPVkUsXHJcbiAgU0VUX0ZPQ1VTLFxyXG4gIFdSSVRFX1RPX01FU1NBR0VfQk9YLFxyXG4gIENMT1NFX0ZPUk0sXHJcbiAgUkVNT1ZFX1NVQkZPUk1fQ09OVFJPTFMsXHJcbiAgU1RBUlRfVElNRVIsXHJcbiAgU1RPUF9USU1FUixcclxuICBCRUVQLFxyXG4gIENSRUFURV9UT09MQkFSLFxyXG4gIERFTEVURV9UT09MQkFSLFxyXG4gIENSRUFURV9UT09MQkFSX0lURU0sXHJcbiAgREVMRVRFX1RPT0xCQVJfSVRFTSxcclxuICBDUkVBVEVfU1RBVFVTX0JBUixcclxuICBQUk9QX1NFVF9TQl9QQU5FX1dJRFRILFxyXG4gIENSRUFURV9TQl9MQUJFTCxcclxuICBDUkVBVEVfU0JfSU1BR0UsXHJcbiAgU0hPV19UTVBfRURJVE9SLFxyXG4gIFBST1BfU0VUX1RSQU5TTEFUT1IsXHJcblxyXG4gIFBST1BfU0VUX1BBU1NXT1JEX0VESVQsXHJcbiAgUFJPUF9TRVRfVElUTEVfQkFSLFxyXG4gIFBST1BfU0hPV19GVUxMX1JPVyxcclxuICBQUk9QX1NIT1dfQlVUVE9OUyxcclxuICBQUk9QX1NIT1dfTElORVMsXHJcbiAgUFJPUF9TSE9XX1NDUk9MTEJBUixcclxuICBTRVRfRU5WX0FDQ0VTU19URVNULFxyXG4gIFNFVF9FTlZfVE9PTFRJUF9USU1FT1VULFxyXG4gIFNFVF9FTlZfU1BFQ0lBTF9URVhUX1NJWkVfRkFDVE9SSU5HLFxyXG4gIFNFVF9FTlZfU1BFQ0lBTF9GTEFUX0VESVRfT05fQ0xBU1NJQ19USEVNRSxcclxuICBQUk9QX1NFVF9TVEFSVFVQX1BPU0lUSU9OLFxyXG4gIFBST1BfU0VUX0NIRUNLX0JPWF9DSEVDS0VELFxyXG4gIENPTUJPX0RST1BfRE9XTixcclxuICBTRVRfQUNUSVZFVEVfS0VZQk9BUkRfTEFZT1VULFxyXG4gIFNFVF9UQUdfREFUQV9MSU5LX1ZJU0lURUQsXHJcbiAgQUxMT1dfVVBEQVRFLFxyXG4gIFNFVF9BTElHTk1FTlQsXHJcbiAgQlVMTEVULFxyXG4gIElOREVOVCxcclxuICBVTklOREVOVCxcclxuICBDSEFOR0VfQ09MVU1OX1NPUlRfTUFSSyxcclxuICBTRVRfQ1VSUkVOVF9DVVJTT1IsXHJcbiAgUkVPUkRFUl9DT0xVTU5TLFxyXG4gIFJFU1RPUkVfQ09MVU1OUyxcclxuICBBQ1RJVkFURV9GT1JNLFxyXG4gIExPQ0tfV0lORE9XX1VQREFURSxcclxuICBFTkFCTEVfWFBUSEVNRVMsXHJcbiAgVE9HR0xFX0FMVEVSTkFURV9DT0xPUl9GT1JfRklSU1RfUk9XLFxyXG4gIFJFR0lTVEVSX0ROX0NUUkxfVkFMVUVfQ0hBTkdFRF9FVkVOVCxcclxuICBTRVRfVEFCTEVfT1JHX1JPV19IRUlHSFQsXHJcbiAgU0VUX1RPT0xCQVIsXHJcbiAgQ1JFQVRFX0VOVFJZX0lOX0NPTlRST0xTX01BUCxcclxuICBSRU1PVkVfRU5UUllfRlJPTV9DT05UUk9MU19NQVAsXHJcbiAgUFJPQ0VTU19QUkVTU19FVkVOVCxcclxuICBTRVRfTUFSS0VEX0lURU1fU1RBVEUsXHJcbiAgQUNDRVBUX0RWQ09OVFJPTF9DSEFOR0VTLFxyXG4gIFVQREFURV9EVkNPTlRST0xfUk9XLFxyXG4gIEFERF9EVkNPTlRST0xfSEFORExFUixcclxuICBSRU1PVkVfRFZDT05UUk9MX0hBTkRMRVIsXHJcbiAgQ1JFQVRFX1JPV19JTl9EVkNPTlRST0wsXHJcbiAgVVBEQVRFX0RWQ09OVFJPTF9DT0xVTU4sXHJcbiAgREVMRVRFX0RWQ09OVFJPTF9ST1csXHJcbiAgU0VUX0RWQ09OVFJPTF9ST1dfUE9TSVRJT04sXHJcbiAgUkVKRUNUX0RWQ09OVFJPTF9DT0xVTU5fQ0hBTkdFUyxcclxuICBTRVRfREVTSUdORVJfVkFMVUVTLFxyXG4gIFBST1BfU0VUX0VESVRfSElOVCxcclxuICBQUk9QX1NFVF9NVUxUSV9DT0xVTU5fRElTUExBWSxcclxuICBTRVRfRU5WX0xBTUdVQUdFLFxyXG4gIFNFVF9MQVNUX0lOX0NPTlRFWFQsXHJcbiAgU0VUX0NBUkVULFxyXG4gIFNFVF9SRUNPUkRTX0JFRk9SRV9DVVJSRU5UX1ZJRVcsXHJcbiAgU0VUX1ZBTFVFLFxyXG4gIFNFVF9BVFRSSUJVVEUsXHJcbiAgU0VUX1BST1BFUlRZLFxyXG4gIFNFVF9DTEFTUyxcclxuICBTRVRfU1RZTEUsXHJcbiAgUkVGUkVTSF9UQVNLLFxyXG4gIFBST1BfU0VUX1VTRVJfUFJPUEVSVFksXHJcbiAgUFJPUF9TRVRfQ1VTVE9NX1ZBTElEQVRPUixcclxuICBTRVRfSVNfUk9XX0VESVRJTkcsXHJcbiAgU0VUX05PVF9JU19ST1dfRURJVElORyxcclxuICBTRVRfRU1QVFlfREFUQVZJRVcsXHJcbiAgU0VUX0lTX0xPR0dFRF9JTixcclxuICBSRUxPQURfUEFHRSxcclxuICBFWElUX01BR0lDLFxyXG4gIENBTExfSlMsXHJcbiAgUFJPUF9TRVRfQklORElOR19MRVZFTCxcclxuICBTSE9XX1NQSU5ORVIsXHJcbiAgU0hPV19IVE1MX0VSUk9SXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIEh0bWxQcm9wZXJ0aWVzIHtcclxuICBWaXNpYmxlID0gXCJ2aXNpYmxlXCIsXHJcbiAgRW5hYmxlZCA9IFwiZW5hYmxlZFwiLFxyXG4gIFRleHQgPSBcInRleHRcIixcclxuICBJdGVtc0xpc3QgPVwiaXRlbXNsaXN0XCIsXHJcbiAgSW1hZ2UgPSBcImltYWdlXCIsXHJcbiAgVG9vbHRpcCA9IFwidG9vbHRpcFwiLFxyXG4gIFNlbGVjdGVkVmFsdWUgPSBcInNlbGVjdGVkdmFsdWVcIixcclxuICBTaG93Qm9yZGVyPVwic2hvd2JvcmRlclwiLFxyXG4gIFBsYWNlSG9sZGVyPVwicGxhY2Vob2xkZXJcIixcclxuICBQYXNzd29yZD1cInBhc3N3b3JkXCIsXHJcbiAgVGFiSW5kZXg9XCJ0YWJpbmRleFwiLFxyXG4gIFNlbGVjdGVkUm93PVwic2VsZWN0ZWRSb3dcIixcclxuICBSZWFkT25seT1cInJlYWRPbmx5XCIsXHJcbiAgTXVzdElucHV0PVwibXVzdElucHV0XCIsXHJcbiAgU2VsZWN0ZWRMYXllcj1cIlNlbGVjdGVkTGF5ZXJcIixcclxuICBCaW5kaW5nTGV2ZWwgPSBcImJpbmRpbmdMZXZlbFwiLFxyXG4gIFpvb21CdXR0b25Ub29sdGlwID1cIlpvb21CdXR0b25Ub29sdGlwXCJcclxufVxyXG5cclxuZXhwb3J0IGVudW0gTWVudVN0eWxlIHtcclxuICBNRU5VX1NUWUxFX1BVTExET1dOID0gMSxcclxuICBNRU5VX1NUWUxFX0NPTlRFWFQsXHJcbiAgTUVOVV9TVFlMRV9UT09MQkFSXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIERvY2tpbmdTdHlsZSB7XHJcbiAgTk9ORSxcclxuICBCT1RUT00sXHJcbiAgRklMTCxcclxuICBMRUZULFxyXG4gIFJJR0hULFxyXG4gIFRPUFxyXG59XHJcblxyXG5leHBvcnQgZW51bSBSYWlzZWRCeSB7XHJcbiAgVVNFUl9BQ1RJT04sXHJcbiAgQ0xPU0VfU1lTVEVNX01FTlUsXHJcbiAgQ1RSTF9HT1RPLFxyXG4gIE1PVVNFX1dIRUVMLFxyXG4gIElOVEVSTkFMLFxyXG4gIEtCUFVUXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFRyYXZlcnNlTW9kZSB7XHJcbiAgTk9ORSA9IDEsXHJcbiAgV0lUSElOX0NPTlRST0wsXHJcbiAgQkVUV0VFTl9DT05UUk9MU1xyXG59XHJcblxyXG5leHBvcnQgZW51bSBDbGlwRm9ybWF0cyB7XHJcbiAgRk9STUFUX1VTRVIsXHJcbiAgRk9STUFUX1RFWFQsXHJcbiAgRk9STUFUX09FTV9URVhULFxyXG4gIEZPUk1BVF9SSUNIX1RFWFQsXHJcbiAgRk9STUFUX0hUTUxfVEVYVCxcclxuICBGT1JNQVRfSFlQRVJMSU5LX1RFWFQsXHJcbiAgRk9STUFUX0RST1BfRklMRVMsXHJcbiAgRk9STUFUX1VOSUNPREVfVEVYVCxcclxuICBGT1JNQVRfVU5LTk9XTiA9ICdjJ1xyXG59XHJcblxyXG4vKipcclxuICogQGlnbm9yZVxyXG4gKi9cclxuZXhwb3J0IGVudW0gT3ZlcmxheVR5cGVcclxue1xyXG4gIE92ZXJsYXkgPSAwLFxyXG4gIEFsZXJ0LFxyXG4gIENvbmZpcm1hdGlvbkJveFxyXG59XHJcbiJdfQ==
|
|
301
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3VpRW51bXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ndWkvc3JjL0d1aUVudW1zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBTixJQUFZLFdBS1g7QUFMRCxXQUFZLFdBQVc7SUFDckIseUJBQVUsQ0FBQTtJQUNWLDBCQUFXLENBQUE7SUFDWCx3QkFBUyxDQUFBO0lBQ1Qsd0JBQVMsQ0FBQTtBQUNYLENBQUMsRUFMVyxXQUFXLEtBQVgsV0FBVyxRQUt0QjtBQUVELE1BQU0sQ0FBTixJQUFZLDJCQUdYO0FBSEQsV0FBWSwyQkFBMkI7SUFDckMseUNBQVUsQ0FBQTtJQUNWLDRDQUFhLENBQUE7QUFDZixDQUFDLEVBSFcsMkJBQTJCLEtBQTNCLDJCQUEyQixRQUd0QztBQUVELE1BQU0sQ0FBTixJQUFZLGNBSVg7QUFKRCxXQUFZLGNBQWM7SUFDeEIscUVBQWEsQ0FBQTtJQUNiLHFFQUFhLENBQUE7SUFDYixtRUFBWSxDQUFBO0FBQ2QsQ0FBQyxFQUpXLGNBQWMsS0FBZCxjQUFjLFFBSXpCO0FBRUQsTUFBTSxDQUFOLElBQVkscURBR1g7QUFIRCxXQUFZLHFEQUFxRDtJQUMvRCwrSEFBTyxDQUFBO0lBQ1AsK0lBQVcsQ0FBQTtBQUNiLENBQUMsRUFIVyxxREFBcUQsS0FBckQscURBQXFELFFBR2hFO0FBRUQsTUFBTSxDQUFOLElBQVkscUJBS1g7QUFMRCxXQUFZLHFCQUFxQjtJQUMvQixxQ0FBWSxDQUFBO0lBQ1oscUNBQVksQ0FBQTtJQUNaLHFDQUFZLENBQUE7SUFDWixtQ0FBVSxDQUFBO0FBQ1osQ0FBQyxFQUxXLHFCQUFxQixLQUFyQixxQkFBcUIsUUFLaEM7QUFFRCxNQUFNLENBQU4sSUFBWSxZQUlYO0FBSkQsV0FBWSxZQUFZO0lBQ3RCLHlEQUFhLENBQUE7SUFDYixxREFBTyxDQUFBO0lBQ1AsaUVBQWEsQ0FBQTtBQUNmLENBQUMsRUFKVyxZQUFZLEtBQVosWUFBWSxR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QUFZLFdBQVc7SUFDckIsMkRBQVcsQ0FBQTtJQUNYLDJEQUFXLENBQUE7SUFDWCxtRUFBZSxDQUFBO0lBQ2YscUVBQWdCLENBQUE7SUFDaEIscUVBQWdCLENBQUE7SUFDaEIsK0VBQXFCLENBQUE7SUFDckIsdUVBQWlCLENBQUE7SUFDakIsMkVBQW1CLENBQUE7SUFDbkIsbUNBQW9CLENBQUE7QUFDdEIsQ0FBQyxFQVZXLFdBQVcsS0FBWCxXQUFXLFFBVXRCO0FBS0QsTUFBTSxDQUFOLElBQVksV0FLWDtBQUxELFdBQVksV0FBVztJQUVyQixtREFBVyxDQUFBO0lBQ1gsK0NBQUssQ0FBQTtJQUNMLG1FQUFlLENBQUE7QUFDakIsQ0FBQyxFQUxXLFdBQVcsS0FBWCxXQUFXLFFBS3RCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGVudW0gRGF0ZUVsZW1lbnQge1xyXG4gIFlFQVIgPSAnWScsXHJcbiAgTU9OVEggPSAnTScsXHJcbiAgREFZID0gJ0QnLFxyXG4gIERPVyA9ICdXJ1xyXG59XHJcblxyXG5leHBvcnQgZW51bSBNZW51RW50cnlQcm9ncmFtX1NyY0NvbnRleHQge1xyXG4gIE1haW4gPSAnTScsXHJcbiAgQ3VycmVudCA9ICdDJ1xyXG59XHJcblxyXG5leHBvcnQgZW51bSBFZGl0UmV0dXJuQ29kZSB7XHJcbiAgRURJVF9DT05USU5VRSxcclxuICBFRElUX0FVVE9TS0lQLFxyXG4gIEVESVRfUkVTVEFSVFxyXG59XHJcblxyXG5leHBvcnQgZW51bSBHdWlFeHByZXNzaW9uRXZhbHVhdG9yX0NvbnRyb2xzUGVyc2lzdGVuY3lDbGVhck9wdGlvbiB7XHJcbiAgQWxsID0gMSxcclxuICBDdXJyZW50Rm9ybVxyXG59XHJcblxyXG5leHBvcnQgZW51bSBEYXRhTW9kaWZpY2F0aW9uVHlwZXMge1xyXG4gIFVwZGF0ZSA9ICd1JyxcclxuICBJbnNlcnQgPSAnaScsXHJcbiAgRGVsZXRlID0gJ2QnLFxyXG4gIE5vbmUgPSAnICdcclxufVxyXG5cclxuZXhwb3J0IGVudW0gTWdDaGVja1N0YXRlIHtcclxuICBVTkNIRUNLRUQgPSAxLFxyXG4gIENIRUNLRUQsXHJcbiAgSU5ERVRFUk1JTkFURVxyXG59XHJcblxyXG5leHBvcnQgZW51bSBNYXJrTW9kZSB7XHJcbiAgTUFSS19BTExfVEVYVCA9IDEsXHJcbiAgVU5NQVJLX0FMTF9URVhULFxyXG4gIE1BUktfU0VMRUNUSU9OX1RFWFRcclxufVxyXG5cclxuZXhwb3J0IGVudW0gTWdDdXJzb3JzIHtcclxuICBBUlJPVyA9IDEsXHJcbiAgV0FJVENVUlNPUixcclxuICBIQU5ELFxyXG4gIEFQUFNUQVJUSU5HLFxyXG4gIENST1NTLFxyXG4gIEhFTFAsXHJcbiAgSUJFQU0sXHJcbiAgTk8sXHJcbiAgU0laRUFMTCxcclxuICBTSVpFTkVTVyxcclxuICBTSVpFTlMsXHJcbiAgU0laRU5XU0UsXHJcbiAgU0laRVdFLFxyXG4gIFVQQVJST1dcclxufVxyXG5cclxuLy8vIDxzdW1tYXJ5PiBtb2RpZmllciBrZXlzPC9zdW1tYXJ5PlxyXG5leHBvcnQgZW51bSBNb2RpZmllcnMge1xyXG4gIE1PRElGSUVSX0FMVCA9ICdBJyxcclxuICBNT0RJRklFUl9DVFJMID0gJ0MnLFxyXG4gIE1PRElGSUVSX1NISUZUID0gJ1MnLFxyXG4gIE1PRElGSUVSX05PTkUgPSAnICcsXHJcbiAgTU9ESUZJRVJfU0hJRlRfQ1RSTCA9ICdYJyxcclxuICBNT0RJRklFUl9BTFRfQ1RSTCA9ICdZJyxcclxuICBNT0RJRklFUl9BTFRfU0hJRlQgPSAnWidcclxufVxyXG5cclxuZXhwb3J0IGVudW0gQ29tbWFuZFR5cGUge1xyXG4gIE9QRU5fRk9STSxcclxuICBDUkVBVEVfRk9STSxcclxuICBJTklUSUFMX0ZPUk1fTEFZT1VULFxyXG4gIFNIT1dfRk9STSxcclxuICBDUkVBVEVfTEFCRUwsXHJcbiAgQ1JFQVRFX0VESVQsXHJcbiAgQ1JFQVRFX0JVVFRPTixcclxuICBDUkVBVEVfQ09NQk9fQk9YLFxyXG4gIENSRUFURV9MSVNUX0JPWCxcclxuICBDUkVBVEVfUkFESU9fQ09OVEFJTkVSLFxyXG4gIENSRUFURV9SQURJT19CVVRUT04sXHJcbiAgQ1JFQVRFX0lNQUdFLFxyXG4gIENSRUFURV9DSEVDS19CT1gsXHJcbiAgQ1JFQVRFX1RBQixcclxuICBDUkVBVEVfVEFCTEUsXHJcbiAgQ1JFQVRFX0NPTFVNTixcclxuICBDUkVBVEVfU1VCX0ZPUk0sXHJcbiAgQ0xPU0VfU1VCX0ZPUk0sXHJcbiAgQ1JFQVRFX0JST1dTRVIsXHJcbiAgQ1JFQVRFX0dST1VQLFxyXG4gIENSRUFURV9SSUNIX0VESVQsXHJcbiAgQ1JFQVRFX1JJQ0hfVEVYVCxcclxuICBDUkVBVEVfTElORSxcclxuICBESVNQT1NFX09CSkVDVCxcclxuICBQUk9QX1NFVF9DT05UUk9MX05BTUUsXHJcbiAgUFJPUF9TRVRfVEVYVCxcclxuICBQUk9QX1NFVF9SRUFEX09OTFksXHJcbiAgUFJPUF9TRVRfVEVYVF9TSVpFX0xJTUlULFxyXG4gIFBST1BfU0VUX0lURU1TX0xJU1QsXHJcbiAgUFJPUF9TRVRfSU1BR0VfRklMRV9OQU1FLFxyXG4gIFBST1BfU0VUX0lNQUdFX0RBVEEsXHJcbiAgUFJPUF9TRVRfSU1BR0VfTElTVCxcclxuXHJcbiAgUFJPUF9TRVRfVE9PTFRJUCxcclxuICBQUk9QX1NFVF9WSVNJQkxFLFxyXG4gIFBST1BfU0VUX0VOQUJMRSxcclxuICBQUk9QX1NFVF9NRU5VX0VOQUJMRSxcclxuICBQUk9QX1NFVF9WSVNJQkxFX0xJTkVTLFxyXG4gIFBST1BfU0VUX1JJR0hUX1RPX0xFRlQsXHJcbiAgUFJPUF9TRVRfQ0hFQ0tFRCxcclxuICBQUk9QX1NFVF9TRUxFQ1RJT04sXHJcbiAgUFJPUF9TRVRfTEFZT1VUX05VTV9DT0xVTU4sXHJcbiAgUFJPUF9TRVRfTElORV9WSVNJQkxFLFxyXG4gIFBST1BfU0VUX1JFU0laQUJMRSxcclxuICBQUk9QX1NFVF9BTExPV19SRU9SREVSLFxyXG4gIFBST1BfU0VUX1NPUlRBQkxFX0NPTFVNTixcclxuICBQUk9QX1NFVF9DT0xVTU5fUExBQ01FTlQsXHJcbiAgUFJPUF9TRVRfSUNPTl9GSUxFX05BTUUsXHJcbiAgU0VUX1dJTkRPV19TVEFURSxcclxuICBTRVRfQ09MVU1OX09SR19XSURUSCxcclxuICBTRVRfQ09MVU1OX1NUQVJUX1BPUyxcclxuICBTRVRfVEFCTEVfSVRFTVNfQ09VTlQsXHJcbiAgU0VUX1RBQkxFX1ZJUlRVQUxfSVRFTVNfQ09VTlQsXHJcbiAgU0VUX1RBQkxFX1ZTQ1JPTExfVEhVTUJfUE9TLFxyXG4gIFNFVF9UQUJMRV9WU0NST0xMX1BBR0VfU0laRSxcclxuICBTRVRfVEFCTEVfSU5DTFVERVNfRklSU1QsXHJcbiAgU0VUX1RBQkxFX0lOQ0xVREVTX0xBU1QsXHJcbiAgU0VUX1RBQkxFX1RPUF9JTkRFWCxcclxuICBTRVRfU0VMRUNUSU9OX0lOREVYLFxyXG4gIElOVkFMSURBVEVfVEFCTEUsXHJcbiAgUkVGUkVTSF9UQUJMRSxcclxuICBSRUZSRVNIX1RNUF9FRElUT1IsXHJcbiAgVVBEQVRFX1RNUF9FRElUT1JfSU5ERVgsXHJcbiAgQ1JFQVRFX1RBQkxFX1JPVyxcclxuICBVTkRPX0NSRUFURV9UQUJMRV9ST1csXHJcbiAgU0VUX1RBQkxFX1JPV19WSVNJQklMSVRZLFxyXG4gIFZBTElEQVRFX1RBQkxFX1JPVyxcclxuICBJTlNFUlRfUk9XUyxcclxuICBSRU1PVkVfUk9XUyxcclxuICBDTEVBUl9UQUJMRV9DT0xVTU5TX1NPUlRfTUFSSyxcclxuICBQUk9QX1NFVF9VUkwsXHJcbiAgTU9WRV9BQk9WRSxcclxuICBTRVRfRk9DVVMsXHJcbiAgV1JJVEVfVE9fTUVTU0FHRV9CT1gsXHJcbiAgQ0xPU0VfRk9STSxcclxuICBSRU1PVkVfU1VCRk9STV9DT05UUk9MUyxcclxuICBTVEFSVF9USU1FUixcclxuICBTVE9QX1RJTUVSLFxyXG4gIEJFRVAsXHJcbiAgQ1JFQVRFX1RPT0xCQVIsXHJcbiAgREVMRVRFX1RPT0xCQVIsXHJcbiAgQ1JFQVRFX1RPT0xCQVJfSVRFTSxcclxuICBERUxFVEVfVE9PTEJBUl9JVEVNLFxyXG4gIENSRUFURV9TVEFUVVNfQkFSLFxyXG4gIFBST1BfU0VUX1NCX1BBTkVfV0lEVEgsXHJcbiAgQ1JFQVRFX1NCX0xBQkVMLFxyXG4gIENSRUFURV9TQl9JTUFHRSxcclxuICBTSE9XX1RNUF9FRElUT1IsXHJcbiAgUFJPUF9TRVRfVFJBTlNMQVRPUixcclxuXHJcbiAgUFJPUF9TRVRfUEFTU1dPUkRfRURJVCxcclxuICBQUk9QX1NFVF9USVRMRV9CQVIsXHJcbiAgUFJPUF9TSE9XX0ZVTExfUk9XLFxyXG4gIFBST1BfU0hPV19CVVRUT05TLFxyXG4gIFBST1BfU0hPV19MSU5FUyxcclxuICBQUk9QX1NIT1dfU0NST0xMQkFSLFxyXG4gIFNFVF9FTlZfQUNDRVNTX1RFU1QsXHJcbiAgU0VUX0VOVl9UT09MVElQX1RJTUVPVVQsXHJcbiAgU0VUX0VOVl9TUEVDSUFMX1RFWFRfU0laRV9GQUNUT1JJTkcsXHJcbiAgU0VUX0VOVl9TUEVDSUFMX0ZMQVRfRURJVF9PTl9DTEFTU0lDX1RIRU1FLFxyXG4gIFBST1BfU0VUX1NUQVJUVVBfUE9TSVRJT04sXHJcbiAgUFJPUF9TRVRfQ0hFQ0tfQk9YX0NIRUNLRUQsXHJcbiAgQ09NQk9fRFJPUF9ET1dOLFxyXG4gIFNFVF9BQ1RJVkVURV9LRVlCT0FSRF9MQVlPVVQsXHJcbiAgU0VUX1RBR19EQVRBX0xJTktfVklTSVRFRCxcclxuICBBTExPV19VUERBVEUsXHJcbiAgU0VUX0FMSUdOTUVOVCxcclxuICBCVUxMRVQsXHJcbiAgSU5ERU5ULFxyXG4gIFVOSU5ERU5ULFxyXG4gIENIQU5HRV9DT0xVTU5fU09SVF9NQVJLLFxyXG4gIFNFVF9DVVJSRU5UX0NVUlNPUixcclxuICBSRU9SREVSX0NPTFVNTlMsXHJcbiAgUkVTVE9SRV9DT0xVTU5TLFxyXG4gIEFDVElWQVRFX0ZPUk0sXHJcbiAgTE9DS19XSU5ET1dfVVBEQVRFLFxyXG4gIEVOQUJMRV9YUFRIRU1FUyxcclxuICBUT0dHTEVfQUxURVJOQVRFX0NPTE9SX0ZPUl9GSVJTVF9ST1csXHJcbiAgUkVHSVNURVJfRE5fQ1RSTF9WQUxVRV9DSEFOR0VEX0VWRU5ULFxyXG4gIFNFVF9UQUJMRV9PUkdfUk9XX0hFSUdIVCxcclxuICBTRVRfVE9PTEJBUixcclxuICBDUkVBVEVfRU5UUllfSU5fQ09OVFJPTFNfTUFQLFxyXG4gIFJFTU9WRV9FTlRSWV9GUk9NX0NPTlRST0xTX01BUCxcclxuICBQUk9DRVNTX1BSRVNTX0VWRU5ULFxyXG4gIFNFVF9NQVJLRURfSVRFTV9TVEFURSxcclxuICBBQ0NFUFRfRFZDT05UUk9MX0NIQU5HRVMsXHJcbiAgVVBEQVRFX0RWQ09OVFJPTF9ST1csXHJcbiAgQUREX0RWQ09OVFJPTF9IQU5ETEVSLFxyXG4gIFJFTU9WRV9EVkNPTlRST0xfSEFORExFUixcclxuICBDUkVBVEVfUk9XX0lOX0RWQ09OVFJPTCxcclxuICBVUERBVEVfRFZDT05UUk9MX0NPTFVNTixcclxuICBERUxFVEVfRFZDT05UUk9MX1JPVyxcclxuICBTRVRfRFZDT05UUk9MX1JPV19QT1NJVElPTixcclxuICBSRUpFQ1RfRFZDT05UUk9MX0NPTFVNTl9DSEFOR0VTLFxyXG4gIFNFVF9ERVNJR05FUl9WQUxVRVMsXHJcbiAgUFJPUF9TRVRfRURJVF9ISU5ULFxyXG4gIFBST1BfU0VUX01VTFRJX0NPTFVNTl9ESVNQTEFZLFxyXG4gIFNFVF9FTlZfTEFNR1VBR0UsXHJcbiAgU0VUX0xBU1RfSU5fQ09OVEVYVCxcclxuICBTRVRfQ0FSRVQsXHJcbiAgU0VUX1JFQ09SRFNfQkVGT1JFX0NVUlJFTlRfVklFVyxcclxuICBTRVRfVkFMVUUsXHJcbiAgU0VUX0FUVFJJQlVURSxcclxuICBTRVRfUFJPUEVSVFksXHJcbiAgU0VUX0NMQVNTLFxyXG4gIFNFVF9TVFlMRSxcclxuICBSRUZSRVNIX1RBU0ssXHJcbiAgUFJPUF9TRVRfVVNFUl9QUk9QRVJUWSxcclxuICBQUk9QX1NFVF9DVVNUT01fVkFMSURBVE9SLFxyXG4gIFNFVF9JU19ST1dfRURJVElORyxcclxuICBTRVRfTk9UX0lTX1JPV19FRElUSU5HLFxyXG4gIFNFVF9FTVBUWV9EQVRBVklFVyxcclxuICBTRVRfSVNfTE9HR0VEX0lOLFxyXG4gIFJFTE9BRF9QQUdFLFxyXG4gIEVYSVRfTUFHSUMsXHJcbiAgQ0FMTF9KUyxcclxuICBQUk9QX1NFVF9CSU5ESU5HX0xFVkVMLFxyXG4gIFNIT1dfU1BJTk5FUixcclxuICBTSE9XX0hUTUxfRVJST1IsXHJcbiAgU0VUX1dDX0lETEUsXHJcbiAgU0VUX0NIVU5LX1NJWkUsXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIEh0bWxQcm9wZXJ0aWVzIHtcclxuICBWaXNpYmxlID0gXCJ2aXNpYmxlXCIsXHJcbiAgRW5hYmxlZCA9IFwiZW5hYmxlZFwiLFxyXG4gIFRleHQgPSBcInRleHRcIixcclxuICBJdGVtc0xpc3QgPVwiaXRlbXNsaXN0XCIsXHJcbiAgSW1hZ2UgPSBcImltYWdlXCIsXHJcbiAgVG9vbHRpcCA9IFwidG9vbHRpcFwiLFxyXG4gIFNlbGVjdGVkVmFsdWUgPSBcInNlbGVjdGVkdmFsdWVcIixcclxuICBTaG93Qm9yZGVyPVwic2hvd2JvcmRlclwiLFxyXG4gIFBsYWNlSG9sZGVyPVwicGxhY2Vob2xkZXJcIixcclxuICBQYXNzd29yZD1cInBhc3N3b3JkXCIsXHJcbiAgVGFiSW5kZXg9XCJ0YWJpbmRleFwiLFxyXG4gIFNlbGVjdGVkUm93PVwic2VsZWN0ZWRSb3dcIixcclxuICBSZWFkT25seT1cInJlYWRPbmx5XCIsXHJcbiAgTXVzdElucHV0PVwibXVzdElucHV0XCIsXHJcbiAgU2VsZWN0ZWRMYXllcj1cIlNlbGVjdGVkTGF5ZXJcIixcclxuICBCaW5kaW5nTGV2ZWwgPSBcImJpbmRpbmdMZXZlbFwiLFxyXG4gIFpvb21CdXR0b25Ub29sdGlwID1cIlpvb21CdXR0b25Ub29sdGlwXCIsXHJcbiAgQ2hlY2tCb3hJbmRldGVybWluYXRlID0gXCJDaGVja0JveEluZGV0ZXJtaW5hdGVcIlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBNZW51U3R5bGUge1xyXG4gIE1FTlVfU1RZTEVfUFVMTERPV04gPSAxLFxyXG4gIE1FTlVfU1RZTEVfQ09OVEVYVCxcclxuICBNRU5VX1NUWUxFX1RPT0xCQVJcclxufVxyXG5cclxuZXhwb3J0IGVudW0gRG9ja2luZ1N0eWxlIHtcclxuICBOT05FLFxyXG4gIEJPVFRPTSxcclxuICBGSUxMLFxyXG4gIExFRlQsXHJcbiAgUklHSFQsXHJcbiAgVE9QXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIFJhaXNlZEJ5IHtcclxuICBVU0VSX0FDVElPTixcclxuICBDTE9TRV9TWVNURU1fTUVOVSxcclxuICBDVFJMX0dPVE8sXHJcbiAgTU9VU0VfV0hFRUwsXHJcbiAgSU5URVJOQUwsXHJcbiAgS0JQVVRcclxufVxyXG5cclxuZXhwb3J0IGVudW0gVHJhdmVyc2VNb2RlIHtcclxuICBOT05FID0gMSxcclxuICBXSVRISU5fQ09OVFJPTCxcclxuICBCRVRXRUVOX0NPTlRST0xTXHJcbn1cclxuXHJcbmV4cG9ydCBlbnVtIENsaXBGb3JtYXRzIHtcclxuICBGT1JNQVRfVVNFUixcclxuICBGT1JNQVRfVEVYVCxcclxuICBGT1JNQVRfT0VNX1RFWFQsXHJcbiAgRk9STUFUX1JJQ0hfVEVYVCxcclxuICBGT1JNQVRfSFRNTF9URVhULFxyXG4gIEZPUk1BVF9IWVBFUkxJTktfVEVYVCxcclxuICBGT1JNQVRfRFJPUF9GSUxFUyxcclxuICBGT1JNQVRfVU5JQ09ERV9URVhULFxyXG4gIEZPUk1BVF9VTktOT1dOID0gJ2MnXHJcbn1cclxuXHJcbi8qKlxyXG4gKiBAaWdub3JlXHJcbiAqL1xyXG5leHBvcnQgZW51bSBPdmVybGF5VHlwZVxyXG57XHJcbiAgT3ZlcmxheSA9IDAsXHJcbiAgQWxlcnQsXHJcbiAgQ29uZmlybWF0aW9uQm94XHJcbn1cclxuIl19
|
package/esm2020/src/Manager.mjs
CHANGED
|
@@ -27,7 +27,7 @@ export class Manager {
|
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
static GetCtrlVal(ctrl) {
|
|
30
|
-
return Commands.getValue(ctrl, ctrl.getDisplayLine(true));
|
|
30
|
+
return Commands.getValue(ctrl, ctrl.getDisplayLine(true), ctrl.isThreeStateCheckBox());
|
|
31
31
|
}
|
|
32
32
|
static async SetReadOnlyControl(ctrl, isReadOnly) {
|
|
33
33
|
if (ctrl.isTextControl() || ctrl.IsRepeatable || ctrl.isComboBox() || ctrl.isListBox() || ctrl.isCheckBox() || ctrl.isRadio()) {
|
|
@@ -88,4 +88,4 @@ Manager.DefaultProtocol = null;
|
|
|
88
88
|
Manager.DefaultServerName = null;
|
|
89
89
|
Manager.UtilImeJpn = (UtilStrByteMode.isLocaleDefLangJPN() ? new UtilImeJpn() : null);
|
|
90
90
|
Manager.EventsManager = null;
|
|
91
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2d1aS9zcmMvTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUMsVUFBVSxFQUFFLGVBQWUsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBSTdELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFFcEMsT0FBTyxFQUFDLFdBQVcsRUFBRSxjQUFjLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFDdkQsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUVoQyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDN0QsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBR2hELE1BQU0sT0FBTyxPQUFPO0lBbUJsQixNQUFNLENBQUMsbUJBQW1CLENBQUMsU0FBaUI7UUFDMUMsT0FBTyxDQUFDLGlCQUFpQixHQUFHLFNBQVMsQ0FBQztJQUN4QyxDQUFDO0lBTUQsTUFBTSxDQUFDLG1CQUFtQjtRQUN4QixPQUFPLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQztJQUNuQyxDQUFDO0lBSUQsTUFBTSxDQUFDLElBQUk7UUFDVCxPQUFPO0lBQ1QsQ0FBQztJQVFELE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBZ0I7UUFFM0IsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFFakQsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUU7Z0JBQ25CLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO2dCQUUzQixJQUFJLGdCQUFnQixHQUFlLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO2dCQUM5RCxJQUFJLGdCQUFnQixLQUFLLElBQUk7b0JBQzNCLGdCQUFnQixDQUFDLHFCQUFxQixDQUFDLElBQUksRUFB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QUFDO1lBQzlDLElBQUksYUFBYSxLQUFLLENBQUMsQ0FBQztnQkFDdEIsR0FBRyxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1lBRXJDLElBQUksWUFBWSxHQUFXLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDN0MsSUFBSSxZQUFZLEtBQUssQ0FBQyxDQUFDO2dCQUNyQixHQUFHLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUM7U0FDckM7UUFFRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFPRCxNQUFNLENBQUMsd0JBQXdCO1FBQzdCLE9BQU8sTUFBTSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUM7SUFDakUsQ0FBQztJQU1NLE1BQU0sQ0FBQyxzQkFBc0I7UUFDbEMsT0FBTyxjQUFjLENBQUMsV0FBVyxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDN0QsQ0FBQzs7QUFuTE0scUJBQWEsR0FBWSxLQUFLLENBQUM7QUFPdkIseUJBQWlCLEdBQVcsSUFBSSxDQUFDO0FBRXpDLHVCQUFlLEdBQVcsSUFBSSxDQUFDO0FBQy9CLHlCQUFpQixHQUFXLElBQUksQ0FBQztBQUNqQyxrQkFBVSxHQUFlLENBQUMsZUFBZSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQzFGLHFCQUFhLEdBQXNCLElBQUksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vLyA8c3VtbWFyeT5cclxuLy8vIE1nR3VpLmRsbCdzIG1hbmFnZXIgLSBhc3NlbWJseSBsZXZlbCBwcm9wZXJ0aWVzIGFuZCBtZXRob2RzLlxyXG4vLy8gPC9zdW1tYXJ5PlxyXG5pbXBvcnQge1V0aWxJbWVKcG4sIFV0aWxTdHJCeXRlTW9kZX0gZnJvbSBcIkBtYWdpYy14cGEvdXRpbHNcIjtcclxuaW1wb3J0IHtJR3VpRXZlbnRzTWFuYWdlcn0gZnJvbSBcIi4vbWFuYWdlbWVudC9ldmVudHMvSUd1aUV2ZW50c01hbmFnZXJcIjtcclxuaW1wb3J0IHtHdWlUYXNrQmFzZX0gZnJvbSBcIi4vbWFuYWdlbWVudC90YXNrcy9HdWlUYXNrQmFzZVwiO1xyXG5pbXBvcnQge01nQ29udHJvbEJhc2V9IGZyb20gXCIuL21hbmFnZW1lbnQvZ3VpL01nQ29udHJvbEJhc2VcIjtcclxuaW1wb3J0IHtDb21tYW5kc30gZnJvbSBcIi4vQ29tbWFuZHNcIjtcclxuaW1wb3J0IHtNZ0Zvcm1CYXNlfSBmcm9tIFwiLi9tYW5hZ2VtZW50L2d1aS9NZ0Zvcm1CYXNlXCI7XHJcbmltcG9ydCB7Q29tbWFuZFR5cGUsIEh0bWxQcm9wZXJ0aWVzfSBmcm9tIFwiLi9HdWlFbnVtc1wiO1xyXG5pbXBvcnQge0V2ZW50c30gZnJvbSBcIi4vRXZlbnRzXCI7XHJcbmltcG9ydCB7UnVudGltZUNvbnRleHRCYXNlfSBmcm9tIFwiLi9tYW5hZ2VtZW50L1J1bnRpbWVDb250ZXh0QmFzZVwiO1xyXG5pbXBvcnQge1Byb3BJbnRlcmZhY2V9IGZyb20gXCIuL21hbmFnZW1lbnQvZ3VpL1Byb3BJbnRlcmZhY2VcIjtcclxuaW1wb3J0IHtHdWlFbnZpcm9ubWVudH0gZnJvbSBcIi4vR3VpRW52aXJvbm1lbnRcIjtcclxuXHJcblxyXG5leHBvcnQgY2xhc3MgTWFuYWdlciB7XHJcbiAgc3RhdGljIElzT3ZlcmxheU9wZW46IGJvb2xlYW4gPSBmYWxzZTtcclxuLy8gdGhpcyBvYmplY3QgaXMgdXNlZCBmb3IgZXhlY3V0aW9uIGFuZCBpbnRlcnJ1cHRpbmcgZGVsYXkgY29tbWFuZFxyXG4vLyBEYXRhIHRvIGJlIHdyaXR0ZW4gdG8gdGhlIGNsaXBib2FyZC5cclxuXHJcbiAgLy8gVGhpcyB3aWxsIGhvbGQgdGhlIGNvbnRleHRJRCBmb3IgYSBjdXJyZW50IHRocmVhZC5cclxuICAvLyBUaHJlYWQgc3RhdGljIGlzIGEgc2VwYXJhdGUgZm9yIGVhY2ggdGhyZWFkIChpLmUuOiB2YWx1ZSBvZiBhIHN0YXRpYyBmaWVsZCBpcyB1bmlxdWUgZm9yIGVhY2ggdGhyZWFkKS5cclxuICAvLyBodHRwOi8vbXNkbi5taWNyb3NvZnQuY29tL2VuLXVzL2xpYnJhcnkvc3lzdGVtLnRocmVhZHN0YXRpY2F0dHJpYnV0ZS5hc3B4XHJcbiAgcHJpdmF0ZSBzdGF0aWMgX2N1cnJlbnRDb250ZXh0SUQ6IHN0cmluZyA9ICdcXDAnO1xyXG5cclxuICBzdGF0aWMgRGVmYXVsdFByb3RvY29sOiBzdHJpbmcgPSBudWxsOyAvLyBkZWZhdWx0IHByb3RvY29sIChodHRwL2h0dHBzKSBhbmQgc2VydmVyIG5hbWUgdG8gYmUgdXNlZCBmb3IgYW55IHJlbGF0aXZlIHVybFxyXG4gIHN0YXRpYyBEZWZhdWx0U2VydmVyTmFtZTogc3RyaW5nID0gbnVsbDtcclxuICBzdGF0aWMgVXRpbEltZUpwbjogVXRpbEltZUpwbiA9IChVdGlsU3RyQnl0ZU1vZGUuaXNMb2NhbGVEZWZMYW5nSlBOKCkgPyBuZXcgVXRpbEltZUpwbigpIDogbnVsbCk7IC8vIEpQTjogSU1FIHN1cHBvcnRcclxuICBzdGF0aWMgRXZlbnRzTWFuYWdlcjogSUd1aUV2ZW50c01hbmFnZXIgPSBudWxsO1xyXG5cclxuICAvLy8gPHN1bW1hcnk+KHB1YmxpYylcclxuICAvLy8gU2V0IHRoZSBjb250ZXh0IElEIGZvciBhIGN1cnJlbnQgdGhyZWFkXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJjb250ZXh0SURcIj48L3BhcmFtPlxyXG4gIHN0YXRpYyBTZXRDdXJyZW50Q29udGV4dElEKGNvbnRleHRJRDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBNYW5hZ2VyLl9jdXJyZW50Q29udGV4dElEID0gY29udGV4dElEO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBHZXQgdGhlIGNvbnRleHQgSUQgZm9yIGEgY3VycmVudCB0aHJlYWRcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz5jdXJyZW50IHRocmVhZCdzIGNvbnRleHRJRDwvcmV0dXJucz5cclxuICBzdGF0aWMgR2V0Q3VycmVudENvbnRleHRJRCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIE1hbmFnZXIuX2N1cnJlbnRDb250ZXh0SUQ7XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIHN0YXRpYyBJbml0KCk6IHZvaWQge1xyXG4gICAgcmV0dXJuO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gIGNsb3NlIHRoZSB0YXNrXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcImZvcm1cIj4gPC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJtYWluUHJnVGFza1wiPjwvcGFyYW0+XHJcbiAgc3RhdGljIEFib3J0KGZvcm06IE1nRm9ybUJhc2UpOiB2b2lkIHtcclxuXHJcbiAgICBpZiAoZm9ybS5nZXRTdWJGb3JtQ3RybCgpID09PSBudWxsICYmIGZvcm0uT3BlbmVkKSB7XHJcbiAgICAgIC8vIGlmIHRoZSBjbG9zaW5nIGZvcm0gaXMgJ29wZW5lZCBhcyBhIG1vZGFsJyB0aGVuIGRlY3JlbWVudCB0aGUgbW9kYWwgY291bnQgb24gaXRzIGZyYW1lIHdpbmRvdy5cclxuICAgICAgaWYgKGZvcm0uaXNEaWFsb2coKSkge1xyXG4gICAgICAgIHRoaXMuSXNPdmVybGF5T3BlbiA9IGZhbHNlO1xyXG5cclxuICAgICAgICBsZXQgdG9wTW9zdEZyYW1lRm9ybTogTWdGb3JtQmFzZSA9IGZvcm0uZ2V0VG9wTW9zdEZyYW1lRm9ybSgpO1xyXG4gICAgICAgIGlmICh0b3BNb3N0RnJhbWVGb3JtICE9PSBudWxsKVxyXG4gICAgICAgICAgdG9wTW9zdEZyYW1lRm9ybS5VcGRhdGVNb2RhbEZvcm1zQ291bnQoZm9ybSwgZmFsc2UpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBDb21tYW5kcy5hZGRDbG9zZUZvcm0oZm9ybSwgXCIwXCIsIGZvcm0uZ2V0VGFzaygpLmdldFRhc2tUYWcoKSk7XHJcblxyXG4gICAgICBDb21tYW5kcy5iZWdpbkludm9rZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybnMgdGhlIGN1cnJlbnQgdmFsdWUgb2YgdGhlIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZSA9IFwiY3RybFwiPmNvbnRyb2wgdG8gZ2V0IHZhbHVlIDwvcGFyYW0+XHJcbiAgLy8vIDxyZXR1cm5zPiB2YWx1ZSBvZiB0aGUgY29udHJvbCA8L3JldHVybnM+XHJcbiAgc3RhdGljIEdldEN0cmxWYWwoY3RybDogTWdDb250cm9sQmFzZSk6IHN0cmluZyB7XHJcbiAgICAvLyBRQ1IgIzc0NTExNzogTWFrZSBzdXJlIHRoYXQgaWYgdGhlIGNvbnRlbnRzIG9mIGEgY29udHJvbCB3ZXJlIGNoYW5nZWRcclxuICAgIC8vIHRoZW4gdGhlIGNoYW5nZXMgYXJlIGFwcGxpZWQgYmVmb3JlIGV4YW1pbmluZyBpdHMgdmFsdWUuXHJcbiAgICByZXR1cm4gQ29tbWFuZHMuZ2V0VmFsdWUoY3RybCwgY3RybC5nZXREaXNwbGF5TGluZSh0cnVlKSk7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgU2V0IHJlYWQgb25seSBmb3IgY29udHJvbHNcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZSA9IFwiY3RybFwiPnRoZSBjb250cm9sIHRvIGNoYW5nZSBpdHMgcHJvcGVydHkgPC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcImlzUmVhZE9ubHlcIj5ib29sZWFuIDwvcGFyYW0+XHJcbiAgc3RhdGljIGFzeW5jIFNldFJlYWRPbmx5Q29udHJvbChjdHJsOiBNZ0NvbnRyb2xCYXNlLCBpc1JlYWRPbmx5OiBib29sZWFuKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBpZiAoY3RybC5pc1RleHRDb250cm9sKCkgfHwgY3RybC5Jc1JlcGVhdGFibGUgfHwgY3RybC5pc0NvbWJvQm94KCkgfHwgY3RybC5pc0xpc3RCb3goKSB8fCBjdHJsLmlzQ2hlY2tCb3goKSB8fCBjdHJsLmlzUmFkaW8oKSkgLy8gRGVmZWN0IDEzMTgwMjogU2V0IFJlYWRPbmx5IGZvciBSaWNoIFRleHQgY29udHJvbCBpbiBUYWJsZSBIZWFkZXIgYW5kIGRlZmVjdCAxMzE3MDQ6IGluIGdlbmVyYWwgZm9yIFJpY2ggVGV4dC5cclxuICAgIHtcclxuICAgICAgLy8gSlBOOiBJTUUgc3VwcG9ydCAoZW5hYmxlIElNRSBpbiBxdWVyeSBtb2RlKVxyXG4gICAgICBpZiAoVXRpbFN0ckJ5dGVNb2RlLmlzTG9jYWxlRGVmTGFuZ0RCQ1MoKSkge1xyXG4gICAgICAgIGlmIChhd2FpdCBjdHJsLmdldEZvcm0oKS5nZXRUYXNrKCkuY2hlY2tQcm9wKFByb3BJbnRlcmZhY2UuUFJPUF9UWVBFX0FMTE9XX0xPQ0FURV9JTl9RVUVSWSwgZmFsc2UpKVxyXG4gICAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICAgIENvbW1hbmRzLmFkZE9wZXJhdGlvbldpdGhMaW5lKENvbW1hbmRUeXBlLlNFVF9QUk9QRVJUWSwgY3RybCwgY3RybC5nZXREaXNwbGF5TGluZShmYWxzZSksIEh0bWxQcm9wZXJ0aWVzLlJlYWRPbmx5LCBpc1JlYWRPbmx5KTtcclxuXHJcbiAgICAgIENvbW1hbmRzLmJlZ2luSW52b2tlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBPcGVuIHRoZSBmb3JtLiA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwibWdGb3JtXCI+Zm9ybSB0byBiZSBvcGVuZWQuPC9wYXJhbT5cclxuICBzdGF0aWMgT3BlbkZvcm0obWdGb3JtOiBNZ0Zvcm1CYXNlKTogdm9pZCB7XHJcbiAgICAvLyBub24gaW50ZXJhY3RpdmUgY2FuIGNob29zZSBub3QgdG8gb3BlbiB0aGUgd2luZG93LlxyXG4gICAgaWYgKCFtZ0Zvcm0uT3BlbmVkICYmIChtZ0Zvcm0uZ2V0VGFzaygpLklzSW50ZXJhY3RpdmUgfHwgbWdGb3JtLmdldFRhc2soKS5pc09wZW5XaW4oKSkpIHtcclxuICAgICAgaWYgKCFtZ0Zvcm0uaXNTdWJGb3JtKCkpIHtcclxuICAgICAgICAvLyBpZiB0aGUgZm9ybSBpcyB0byBiZSBvcGVuZWQgYXMgYSBtb2RhbCwgdGhlbiBpbmNyZW1lbnQgdGhlIG1vZGFsIGNvdW50IG9uIGl0cyBmcmFtZSB3aW5kb3cuXHJcbiAgICAgICAgaWYgKG1nRm9ybS5pc0RpYWxvZygpKSB7XHJcbiAgICAgICAgICB0aGlzLklzT3ZlcmxheU9wZW4gPSB0cnVlO1xyXG5cclxuICAgICAgICAgIGxldCB0b3BNb3N0RnJhbWVGb3JtOiBNZ0Zvcm1CYXNlID0gbWdGb3JtLmdldFRvcE1vc3RGcmFtZUZvcm0oKTtcclxuICAgICAgICAgIGlmICh0b3BNb3N0RnJhbWVGb3JtICE9PSBudWxsKVxyXG4gICAgICAgICAgICB0b3BNb3N0RnJhbWVGb3JtLlVwZGF0ZU1vZGFsRm9ybXNDb3VudChtZ0Zvcm0sIHRydWUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH1cclxuICAgICAgLy8gaWYgKCFtZ0Zvcm0uaXNTdWJGb3JtKCkpIHtcclxuICAgICAgLy8gICBsZXQgZm9ybU5hbWU6IHN0cmluZyA9IG1nRm9ybS5VbmlxdWVOYW1lO1xyXG4gICAgICAvLyAgIFVJQnJpZGdlLmdldEluc3RhbmNlKCkuT3BlbkZvcm0oZm9ybU5hbWUpO1xyXG5cclxuICAgICAgLy8gfVxyXG4gICAgICAvLyBlbHNlIHtcclxuICAgICAgLy8gICBsZXQgaW5wdXRDb250cm9scyA9IG1nRm9ybS5HZXRMaXN0T2ZJbnB1dENvbnRyb2xzKCk7XHJcbiAgICAgIC8vIC8vXHJcbiAgICAgIC8vIC8vICAgSlNCcmlkZ2UuSW5zdGFuY2UuT3BlblN1YkZvcm0odGhpcy5nZXRTdWJGb3JtQ3RybCgpLmdldE5hbWUoKSwgUGFyZW50Rm9ybS5nZXRUYXNrKCkuZ2V0VGFza1RhZygpLCBnZXRQcm9wKFByb3BJbnRlcmZhY2UuUFJPUF9UWVBFX0ZPUk1fTkFNRSkuZ2V0VmFsdWUoKSwgX3Rhc2suZ2V0VGFza1RhZygpLCBpbnB1dENvbnRyb2xzKTtcclxuICAgICAgLy8gLy8gfVxyXG4gICAgICAvLyB9XHJcblxyXG4gICAgICBtZ0Zvcm0uT3BlbmVkID0gdHJ1ZTtcclxuXHJcbiAgICAgIENvbW1hbmRzLmJlZ2luSW52b2tlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+IFBlcmZvcm1zIGZpcnN0IHJlZnJlc2ggZm9yIHRoZSB0YWJsZSBjb250cm9sIDwvc3VtbWFyeT5cclxuICBzdGF0aWMgYXN5bmMgRG9GaXJzdFJlZnJlc2hUYWJsZShtZ0Zvcm06IE1nRm9ybUJhc2UpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmIChtZ0Zvcm0gIT09IG51bGwgJiYgIW1nRm9ybS5pZ25vcmVGaXJzdFJlZnJlc2hUYWJsZSkge1xyXG4gICAgICBtZ0Zvcm0uaWdub3JlRmlyc3RSZWZyZXNoVGFibGUgPSB0cnVlO1xyXG4gICAgICBhd2FpdCBtZ0Zvcm0uZmlyc3RUYWJsZVJlZnJlc2goKTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIGNsZWFuIHRoZSBzdGF0dXMgYmFyXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcInRhc2tcIj48L3BhcmFtPlxyXG4gIHN0YXRpYyBDbGVhbk1lc3NhZ2VQYW5lKHRhc2s6IEd1aVRhc2tCYXNlKTogdm9pZCB7XHJcbiAgICB0YXNrLldyaXRlVG9NZXNzYWdlUGFuZShNYW5hZ2VyLkdldEN1cnJlbnRSdW50aW1lQ29udGV4dCgpLkRlZmF1bHRTdGF0dXNNc2cpO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBNZXNzYWdlIHN0cmluZyB0byBiZSBkaXNwbGF5ZWQgb24gc3RhdHVzIGJhciBvciBpbiBNZXNzYWdlIGJveFxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJtc2dcIj4gaW5wdXQgbWVzc2FnZSBzdHJpbmcgPC9wYXJhbT5cclxuICAvLy8gPHJldHVybnM+IG91dHB1dCBtZXNzYWdlIHN0cmluZyA8L3JldHVybnM+XHJcbiAgc3RhdGljIEdldE1lc3NhZ2UobXNnOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgaWYgKG1zZyA9PT0gbnVsbClcclxuICAgICAgbXNnID0gXCJcIjtcclxuICAgIGVsc2UgaWYgKG1zZy5sZW5ndGggPiAwKSB7XHJcbiAgICAgIGxldCBpZHhPZkNhcnJpYWdlOiBudW1iZXIgPSBtc2cuaW5kZXhPZihcIlxcclwiKTtcclxuICAgICAgaWYgKGlkeE9mQ2FycmlhZ2UgIT09IC0xKVxyXG4gICAgICAgIG1zZyA9IG1zZy5zdWJzdHIoMCwgaWR4T2ZDYXJyaWFnZSk7XHJcblxyXG4gICAgICBsZXQgaWR4T2ZOZXdMaW5lOiBudW1iZXIgPSBtc2cuaW5kZXhPZihcIlxcblwiKTtcclxuICAgICAgaWYgKGlkeE9mTmV3TGluZSAhPT0gLTEpXHJcbiAgICAgICAgbXNnID0gbXNnLnN1YnN0cigwLCBpZHhPZk5ld0xpbmUpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBtc2c7XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBHZXRzIHRoZSBydW50aW1lIGNvbnRleHQgYmVsb25ncyB0byB0aGUgY3VycmVudCB0aHJlYWQuXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+UnVudGltZUNvbnRleHRCYXNlPC9yZXR1cm5zPlxyXG4gIHN0YXRpYyBHZXRDdXJyZW50UnVudGltZUNvbnRleHQoKTogUnVudGltZUNvbnRleHRCYXNlIHtcclxuICAgIHJldHVybiBFdmVudHMuR2V0UnVudGltZUNvbnRleHQoTWFuYWdlci5HZXRDdXJyZW50Q29udGV4dElEKCkpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyByZXR1cm4gU3BlY2lhbFZhbE5ld1BvbGljeVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxyZXR1cm5zPjwvcmV0dXJucz5cclxuICBwdWJsaWMgc3RhdGljIEdldFNwZWNpYWxWYWxOZXdQb2xpY3koKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gR3VpRW52aXJvbm1lbnQuRW52aXJvbm1lbnQuR2V0U3BlY2lhbFZhbE5ld1BvbGljeSgpO1xyXG4gIH1cclxufVxyXG5cclxuXHJcbiJdfQ==
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWFuYWdlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2d1aS9zcmMvTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUMsVUFBVSxFQUFFLGVBQWUsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBSTdELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFFcEMsT0FBTyxFQUFDLFdBQVcsRUFBRSxjQUFjLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFDdkQsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLFVBQVUsQ0FBQztBQUVoQyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDN0QsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBR2hELE1BQU0sT0FBTyxPQUFPO0lBbUJsQixNQUFNLENBQUMsbUJBQW1CLENBQUMsU0FBaUI7UUFDMUMsT0FBTyxDQUFDLGlCQUFpQixHQUFHLFNBQVMsQ0FBQztJQUN4QyxDQUFDO0lBTUQsTUFBTSxDQUFDLG1CQUFtQjtRQUN4QixPQUFPLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQztJQUNuQyxDQUFDO0lBSUQsTUFBTSxDQUFDLElBQUk7UUFDVCxPQUFPO0lBQ1QsQ0FBQztJQVFELE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBZ0I7UUFFM0IsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFFakQsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUU7Z0JBQ25CLElBQUksQ0FBQyxhQUFhLEdBQUcsS0FBSyxDQUFDO2dCQUUzQixJQUFJLGdCQUFnQixHQUFlLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO2dCQUM5RCxJQUFJLGdCQUFnQixLQUFLLElBQUk7b0JBQzNCLGdCQUFnQixDQUFDLHFCQUFxQixDQUFDLElBQUksRUFB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LENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzlDLElBQUksYUFBYSxLQUFLLENBQUMsQ0FBQztnQkFDdEIsR0FBRyxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1lBRXJDLElBQUksWUFBWSxHQUFXLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDN0MsSUFBSSxZQUFZLEtBQUssQ0FBQyxDQUFDO2dCQUNyQixHQUFHLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUM7U0FDckM7UUFFRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUM7SUFPRCxNQUFNLENBQUMsd0JBQXdCO1FBQzdCLE9BQU8sTUFBTSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUM7SUFDakUsQ0FBQztJQU1NLE1BQU0sQ0FBQyxzQkFBc0I7UUFDbEMsT0FBTyxjQUFjLENBQUMsV0FBVyxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDN0QsQ0FBQzs7QUFuTE0scUJBQWEsR0FBWSxLQUFLLENBQUM7QUFPdkIseUJBQWlCLEdBQVcsSUFBSSxDQUFDO0FBRXpDLHVCQUFlLEdBQVcsSUFBSSxDQUFDO0FBQy9CLHlCQUFpQixHQUFXLElBQUksQ0FBQztBQUNqQyxrQkFBVSxHQUFlLENBQUMsZUFBZSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQzFGLHFCQUFhLEdBQXNCLElBQUksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vLyA8c3VtbWFyeT5cclxuLy8vIE1nR3VpLmRsbCdzIG1hbmFnZXIgLSBhc3NlbWJseSBsZXZlbCBwcm9wZXJ0aWVzIGFuZCBtZXRob2RzLlxyXG4vLy8gPC9zdW1tYXJ5PlxyXG5pbXBvcnQge1V0aWxJbWVKcG4sIFV0aWxTdHJCeXRlTW9kZX0gZnJvbSBcIkBtYWdpYy14cGEvdXRpbHNcIjtcclxuaW1wb3J0IHtJR3VpRXZlbnRzTWFuYWdlcn0gZnJvbSBcIi4vbWFuYWdlbWVudC9ldmVudHMvSUd1aUV2ZW50c01hbmFnZXJcIjtcclxuaW1wb3J0IHtHdWlUYXNrQmFzZX0gZnJvbSBcIi4vbWFuYWdlbWVudC90YXNrcy9HdWlUYXNrQmFzZVwiO1xyXG5pbXBvcnQge01nQ29udHJvbEJhc2V9IGZyb20gXCIuL21hbmFnZW1lbnQvZ3VpL01nQ29udHJvbEJhc2VcIjtcclxuaW1wb3J0IHtDb21tYW5kc30gZnJvbSBcIi4vQ29tbWFuZHNcIjtcclxuaW1wb3J0IHtNZ0Zvcm1CYXNlfSBmcm9tIFwiLi9tYW5hZ2VtZW50L2d1aS9NZ0Zvcm1CYXNlXCI7XHJcbmltcG9ydCB7Q29tbWFuZFR5cGUsIEh0bWxQcm9wZXJ0aWVzfSBmcm9tIFwiLi9HdWlFbnVtc1wiO1xyXG5pbXBvcnQge0V2ZW50c30gZnJvbSBcIi4vRXZlbnRzXCI7XHJcbmltcG9ydCB7UnVudGltZUNvbnRleHRCYXNlfSBmcm9tIFwiLi9tYW5hZ2VtZW50L1J1bnRpbWVDb250ZXh0QmFzZVwiO1xyXG5pbXBvcnQge1Byb3BJbnRlcmZhY2V9IGZyb20gXCIuL21hbmFnZW1lbnQvZ3VpL1Byb3BJbnRlcmZhY2VcIjtcclxuaW1wb3J0IHtHdWlFbnZpcm9ubWVudH0gZnJvbSBcIi4vR3VpRW52aXJvbm1lbnRcIjtcclxuXHJcblxyXG5leHBvcnQgY2xhc3MgTWFuYWdlciB7XHJcbiAgc3RhdGljIElzT3ZlcmxheU9wZW46IGJvb2xlYW4gPSBmYWxzZTtcclxuLy8gdGhpcyBvYmplY3QgaXMgdXNlZCBmb3IgZXhlY3V0aW9uIGFuZCBpbnRlcnJ1cHRpbmcgZGVsYXkgY29tbWFuZFxyXG4vLyBEYXRhIHRvIGJlIHdyaXR0ZW4gdG8gdGhlIGNsaXBib2FyZC5cclxuXHJcbiAgLy8gVGhpcyB3aWxsIGhvbGQgdGhlIGNvbnRleHRJRCBmb3IgYSBjdXJyZW50IHRocmVhZC5cclxuICAvLyBUaHJlYWQgc3RhdGljIGlzIGEgc2VwYXJhdGUgZm9yIGVhY2ggdGhyZWFkIChpLmUuOiB2YWx1ZSBvZiBhIHN0YXRpYyBmaWVsZCBpcyB1bmlxdWUgZm9yIGVhY2ggdGhyZWFkKS5cclxuICAvLyBodHRwOi8vbXNkbi5taWNyb3NvZnQuY29tL2VuLXVzL2xpYnJhcnkvc3lzdGVtLnRocmVhZHN0YXRpY2F0dHJpYnV0ZS5hc3B4XHJcbiAgcHJpdmF0ZSBzdGF0aWMgX2N1cnJlbnRDb250ZXh0SUQ6IHN0cmluZyA9ICdcXDAnO1xyXG5cclxuICBzdGF0aWMgRGVmYXVsdFByb3RvY29sOiBzdHJpbmcgPSBudWxsOyAvLyBkZWZhdWx0IHByb3RvY29sIChodHRwL2h0dHBzKSBhbmQgc2VydmVyIG5hbWUgdG8gYmUgdXNlZCBmb3IgYW55IHJlbGF0aXZlIHVybFxyXG4gIHN0YXRpYyBEZWZhdWx0U2VydmVyTmFtZTogc3RyaW5nID0gbnVsbDtcclxuICBzdGF0aWMgVXRpbEltZUpwbjogVXRpbEltZUpwbiA9IChVdGlsU3RyQnl0ZU1vZGUuaXNMb2NhbGVEZWZMYW5nSlBOKCkgPyBuZXcgVXRpbEltZUpwbigpIDogbnVsbCk7IC8vIEpQTjogSU1FIHN1cHBvcnRcclxuICBzdGF0aWMgRXZlbnRzTWFuYWdlcjogSUd1aUV2ZW50c01hbmFnZXIgPSBudWxsO1xyXG5cclxuICAvLy8gPHN1bW1hcnk+KHB1YmxpYylcclxuICAvLy8gU2V0IHRoZSBjb250ZXh0IElEIGZvciBhIGN1cnJlbnQgdGhyZWFkXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJjb250ZXh0SURcIj48L3BhcmFtPlxyXG4gIHN0YXRpYyBTZXRDdXJyZW50Q29udGV4dElEKGNvbnRleHRJRDogc3RyaW5nKTogdm9pZCB7XHJcbiAgICBNYW5hZ2VyLl9jdXJyZW50Q29udGV4dElEID0gY29udGV4dElEO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBHZXQgdGhlIGNvbnRleHQgSUQgZm9yIGEgY3VycmVudCB0aHJlYWRcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz5jdXJyZW50IHRocmVhZCdzIGNvbnRleHRJRDwvcmV0dXJucz5cclxuICBzdGF0aWMgR2V0Q3VycmVudENvbnRleHRJRCgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIE1hbmFnZXIuX2N1cnJlbnRDb250ZXh0SUQ7XHJcbiAgfVxyXG5cclxuXHJcblxyXG4gIHN0YXRpYyBJbml0KCk6IHZvaWQge1xyXG4gICAgcmV0dXJuO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gIGNsb3NlIHRoZSB0YXNrXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcImZvcm1cIj4gPC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJtYWluUHJnVGFza1wiPjwvcGFyYW0+XHJcbiAgc3RhdGljIEFib3J0KGZvcm06IE1nRm9ybUJhc2UpOiB2b2lkIHtcclxuXHJcbiAgICBpZiAoZm9ybS5nZXRTdWJGb3JtQ3RybCgpID09PSBudWxsICYmIGZvcm0uT3BlbmVkKSB7XHJcbiAgICAgIC8vIGlmIHRoZSBjbG9zaW5nIGZvcm0gaXMgJ29wZW5lZCBhcyBhIG1vZGFsJyB0aGVuIGRlY3JlbWVudCB0aGUgbW9kYWwgY291bnQgb24gaXRzIGZyYW1lIHdpbmRvdy5cclxuICAgICAgaWYgKGZvcm0uaXNEaWFsb2coKSkge1xyXG4gICAgICAgIHRoaXMuSXNPdmVybGF5T3BlbiA9IGZhbHNlO1xyXG5cclxuICAgICAgICBsZXQgdG9wTW9zdEZyYW1lRm9ybTogTWdGb3JtQmFzZSA9IGZvcm0uZ2V0VG9wTW9zdEZyYW1lRm9ybSgpO1xyXG4gICAgICAgIGlmICh0b3BNb3N0RnJhbWVGb3JtICE9PSBudWxsKVxyXG4gICAgICAgICAgdG9wTW9zdEZyYW1lRm9ybS5VcGRhdGVNb2RhbEZvcm1zQ291bnQoZm9ybSwgZmFsc2UpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBDb21tYW5kcy5hZGRDbG9zZUZvcm0oZm9ybSwgXCIwXCIsIGZvcm0uZ2V0VGFzaygpLmdldFRhc2tUYWcoKSk7XHJcblxyXG4gICAgICBDb21tYW5kcy5iZWdpbkludm9rZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybnMgdGhlIGN1cnJlbnQgdmFsdWUgb2YgdGhlIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZSA9IFwiY3RybFwiPmNvbnRyb2wgdG8gZ2V0IHZhbHVlIDwvcGFyYW0+XHJcbiAgLy8vIDxyZXR1cm5zPiB2YWx1ZSBvZiB0aGUgY29udHJvbCA8L3JldHVybnM+XHJcbiAgc3RhdGljIEdldEN0cmxWYWwoY3RybDogTWdDb250cm9sQmFzZSk6IHN0cmluZyB7XHJcbiAgICAvLyBRQ1IgIzc0NTExNzogTWFrZSBzdXJlIHRoYXQgaWYgdGhlIGNvbnRlbnRzIG9mIGEgY29udHJvbCB3ZXJlIGNoYW5nZWRcclxuICAgIC8vIHRoZW4gdGhlIGNoYW5nZXMgYXJlIGFwcGxpZWQgYmVmb3JlIGV4YW1pbmluZyBpdHMgdmFsdWUuXHJcbiAgICByZXR1cm4gQ29tbWFuZHMuZ2V0VmFsdWUoY3RybCwgY3RybC5nZXREaXNwbGF5TGluZSh0cnVlKSwgY3RybC5pc1RocmVlU3RhdGVDaGVja0JveCgpKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBTZXQgcmVhZCBvbmx5IGZvciBjb250cm9sc1xyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJjdHJsXCI+dGhlIGNvbnRyb2wgdG8gY2hhbmdlIGl0cyBwcm9wZXJ0eSA8L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZSA9IFwiaXNSZWFkT25seVwiPmJvb2xlYW4gPC9wYXJhbT5cclxuICBzdGF0aWMgYXN5bmMgU2V0UmVhZE9ubHlDb250cm9sKGN0cmw6IE1nQ29udHJvbEJhc2UsIGlzUmVhZE9ubHk6IGJvb2xlYW4pOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGlmIChjdHJsLmlzVGV4dENvbnRyb2woKSB8fCBjdHJsLklzUmVwZWF0YWJsZSB8fCBjdHJsLmlzQ29tYm9Cb3goKSB8fCBjdHJsLmlzTGlzdEJveCgpIHx8IGN0cmwuaXNDaGVja0JveCgpIHx8IGN0cmwuaXNSYWRpbygpKSAvLyBEZWZlY3QgMTMxODAyOiBTZXQgUmVhZE9ubHkgZm9yIFJpY2ggVGV4dCBjb250cm9sIGluIFRhYmxlIEhlYWRlciBhbmQgZGVmZWN0IDEzMTcwNDogaW4gZ2VuZXJhbCBmb3IgUmljaCBUZXh0LlxyXG4gICAge1xyXG4gICAgICAvLyBKUE46IElNRSBzdXBwb3J0IChlbmFibGUgSU1FIGluIHF1ZXJ5IG1vZGUpXHJcbiAgICAgIGlmIChVdGlsU3RyQnl0ZU1vZGUuaXNMb2NhbGVEZWZMYW5nREJDUygpKSB7XHJcbiAgICAgICAgaWYgKGF3YWl0IGN0cmwuZ2V0Rm9ybSgpLmdldFRhc2soKS5jaGVja1Byb3AoUHJvcEludGVyZmFjZS5QUk9QX1RZUEVfQUxMT1dfTE9DQVRFX0lOX1FVRVJZLCBmYWxzZSkpXHJcbiAgICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgQ29tbWFuZHMuYWRkT3BlcmF0aW9uV2l0aExpbmUoQ29tbWFuZFR5cGUuU0VUX1BST1BFUlRZLCBjdHJsLCBjdHJsLmdldERpc3BsYXlMaW5lKGZhbHNlKSwgSHRtbFByb3BlcnRpZXMuUmVhZE9ubHksIGlzUmVhZE9ubHkpO1xyXG5cclxuICAgICAgQ29tbWFuZHMuYmVnaW5JbnZva2UoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG5cclxuICAvLy8gPHN1bW1hcnk+IE9wZW4gdGhlIGZvcm0uIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJtZ0Zvcm1cIj5mb3JtIHRvIGJlIG9wZW5lZC48L3BhcmFtPlxyXG4gIHN0YXRpYyBPcGVuRm9ybShtZ0Zvcm06IE1nRm9ybUJhc2UpOiB2b2lkIHtcclxuICAgIC8vIG5vbiBpbnRlcmFjdGl2ZSBjYW4gY2hvb3NlIG5vdCB0byBvcGVuIHRoZSB3aW5kb3cuXHJcbiAgICBpZiAoIW1nRm9ybS5PcGVuZWQgJiYgKG1nRm9ybS5nZXRUYXNrKCkuSXNJbnRlcmFjdGl2ZSB8fCBtZ0Zvcm0uZ2V0VGFzaygpLmlzT3BlbldpbigpKSkge1xyXG4gICAgICBpZiAoIW1nRm9ybS5pc1N1YkZvcm0oKSkge1xyXG4gICAgICAgIC8vIGlmIHRoZSBmb3JtIGlzIHRvIGJlIG9wZW5lZCBhcyBhIG1vZGFsLCB0aGVuIGluY3JlbWVudCB0aGUgbW9kYWwgY291bnQgb24gaXRzIGZyYW1lIHdpbmRvdy5cclxuICAgICAgICBpZiAobWdGb3JtLmlzRGlhbG9nKCkpIHtcclxuICAgICAgICAgIHRoaXMuSXNPdmVybGF5T3BlbiA9IHRydWU7XHJcblxyXG4gICAgICAgICAgbGV0IHRvcE1vc3RGcmFtZUZvcm06IE1nRm9ybUJhc2UgPSBtZ0Zvcm0uZ2V0VG9wTW9zdEZyYW1lRm9ybSgpO1xyXG4gICAgICAgICAgaWYgKHRvcE1vc3RGcmFtZUZvcm0gIT09IG51bGwpXHJcbiAgICAgICAgICAgIHRvcE1vc3RGcmFtZUZvcm0uVXBkYXRlTW9kYWxGb3Jtc0NvdW50KG1nRm9ybSwgdHJ1ZSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgfVxyXG4gICAgICAvLyBpZiAoIW1nRm9ybS5pc1N1YkZvcm0oKSkge1xyXG4gICAgICAvLyAgIGxldCBmb3JtTmFtZTogc3RyaW5nID0gbWdGb3JtLlVuaXF1ZU5hbWU7XHJcbiAgICAgIC8vICAgVUlCcmlkZ2UuZ2V0SW5zdGFuY2UoKS5PcGVuRm9ybShmb3JtTmFtZSk7XHJcblxyXG4gICAgICAvLyB9XHJcbiAgICAgIC8vIGVsc2Uge1xyXG4gICAgICAvLyAgIGxldCBpbnB1dENvbnRyb2xzID0gbWdGb3JtLkdldExpc3RPZklucHV0Q29udHJvbHMoKTtcclxuICAgICAgLy8gLy9cclxuICAgICAgLy8gLy8gICBKU0JyaWRnZS5JbnN0YW5jZS5PcGVuU3ViRm9ybSh0aGlzLmdldFN1YkZvcm1DdHJsKCkuZ2V0TmFtZSgpLCBQYXJlbnRGb3JtLmdldFRhc2soKS5nZXRUYXNrVGFnKCksIGdldFByb3AoUHJvcEludGVyZmFjZS5QUk9QX1RZUEVfRk9STV9OQU1FKS5nZXRWYWx1ZSgpLCBfdGFzay5nZXRUYXNrVGFnKCksIGlucHV0Q29udHJvbHMpO1xyXG4gICAgICAvLyAvLyB9XHJcbiAgICAgIC8vIH1cclxuXHJcbiAgICAgIG1nRm9ybS5PcGVuZWQgPSB0cnVlO1xyXG5cclxuICAgICAgQ29tbWFuZHMuYmVnaW5JbnZva2UoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gUGVyZm9ybXMgZmlyc3QgcmVmcmVzaCBmb3IgdGhlIHRhYmxlIGNvbnRyb2wgPC9zdW1tYXJ5PlxyXG4gIHN0YXRpYyBhc3luYyBEb0ZpcnN0UmVmcmVzaFRhYmxlKG1nRm9ybTogTWdGb3JtQmFzZSk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgaWYgKG1nRm9ybSAhPT0gbnVsbCAmJiAhbWdGb3JtLmlnbm9yZUZpcnN0UmVmcmVzaFRhYmxlKSB7XHJcbiAgICAgIG1nRm9ybS5pZ25vcmVGaXJzdFJlZnJlc2hUYWJsZSA9IHRydWU7XHJcbiAgICAgIGF3YWl0IG1nRm9ybS5maXJzdFRhYmxlUmVmcmVzaCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcblxyXG4vLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgY2xlYW4gdGhlIHN0YXR1cyBiYXJcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZSA9IFwidGFza1wiPjwvcGFyYW0+XHJcbiAgc3RhdGljIENsZWFuTWVzc2FnZVBhbmUodGFzazogR3VpVGFza0Jhc2UpOiB2b2lkIHtcclxuICAgIHRhc2suV3JpdGVUb01lc3NhZ2VQYW5lKE1hbmFnZXIuR2V0Q3VycmVudFJ1bnRpbWVDb250ZXh0KCkuRGVmYXVsdFN0YXR1c01zZyk7XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIE1lc3NhZ2Ugc3RyaW5nIHRvIGJlIGRpc3BsYXllZCBvbiBzdGF0dXMgYmFyIG9yIGluIE1lc3NhZ2UgYm94XHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcIm1zZ1wiPiBpbnB1dCBtZXNzYWdlIHN0cmluZyA8L3BhcmFtPlxyXG4gIC8vLyA8cmV0dXJucz4gb3V0cHV0IG1lc3NhZ2Ugc3RyaW5nIDwvcmV0dXJucz5cclxuICBzdGF0aWMgR2V0TWVzc2FnZShtc2c6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBpZiAobXNnID09PSBudWxsKVxyXG4gICAgICBtc2cgPSBcIlwiO1xyXG4gICAgZWxzZSBpZiAobXNnLmxlbmd0aCA+IDApIHtcclxuICAgICAgbGV0IGlkeE9mQ2FycmlhZ2U6IG51bWJlciA9IG1zZy5pbmRleE9mKFwiXFxyXCIpO1xyXG4gICAgICBpZiAoaWR4T2ZDYXJyaWFnZSAhPT0gLTEpXHJcbiAgICAgICAgbXNnID0gbXNnLnN1YnN0cigwLCBpZHhPZkNhcnJpYWdlKTtcclxuXHJcbiAgICAgIGxldCBpZHhPZk5ld0xpbmU6IG51bWJlciA9IG1zZy5pbmRleE9mKFwiXFxuXCIpO1xyXG4gICAgICBpZiAoaWR4T2ZOZXdMaW5lICE9PSAtMSlcclxuICAgICAgICBtc2cgPSBtc2cuc3Vic3RyKDAsIGlkeE9mTmV3TGluZSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIG1zZztcclxuICB9XHJcblxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIEdldHMgdGhlIHJ1bnRpbWUgY29udGV4dCBiZWxvbmdzIHRvIHRoZSBjdXJyZW50IHRocmVhZC5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cmV0dXJucz5SdW50aW1lQ29udGV4dEJhc2U8L3JldHVybnM+XHJcbiAgc3RhdGljIEdldEN1cnJlbnRSdW50aW1lQ29udGV4dCgpOiBSdW50aW1lQ29udGV4dEJhc2Uge1xyXG4gICAgcmV0dXJuIEV2ZW50cy5HZXRSdW50aW1lQ29udGV4dChNYW5hZ2VyLkdldEN1cnJlbnRDb250ZXh0SUQoKSk7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIHJldHVybiBTcGVjaWFsVmFsTmV3UG9saWN5XHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHJldHVybnM+PC9yZXR1cm5zPlxyXG4gIHB1YmxpYyBzdGF0aWMgR2V0U3BlY2lhbFZhbE5ld1BvbGljeSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiBHdWlFbnZpcm9ubWVudC5FbnZpcm9ubWVudC5HZXRTcGVjaWFsVmFsTmV3UG9saWN5KCk7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuIl19
|
|
@@ -43,9 +43,10 @@ export class GuiInteractiveBase {
|
|
|
43
43
|
this._boolVal = retSuggestedValue;
|
|
44
44
|
this.Invoke();
|
|
45
45
|
}
|
|
46
|
-
getValue(obj, line) {
|
|
46
|
+
getValue(obj, line, isThreeStateCheckBox) {
|
|
47
47
|
this._commandType = InteractiveCommandType.GET_VALUE;
|
|
48
48
|
this._obj2 = obj;
|
|
49
|
+
this._boolVal = isThreeStateCheckBox;
|
|
49
50
|
this._line = line;
|
|
50
51
|
this._mgValue = new MgValue();
|
|
51
52
|
this.Invoke();
|
|
@@ -162,4 +163,4 @@ export class GuiInteractiveBase {
|
|
|
162
163
|
}
|
|
163
164
|
export class GuiInteractive extends GuiInteractiveBase {
|
|
164
165
|
}
|
|
165
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3VpSW50ZXJhY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ndWkvc3JjL2d1aS9sb3cvR3VpSW50ZXJhY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLFlBQVksQ0FBQztBQUNuQyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDcEMsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3hDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFFbEQsTUFBTSxDQUFOLElBQVksc0JBZVg7QUFmRCxXQUFZLHNCQUFzQjtJQUNoQyw2RUFBUyxDQUFBO0lBQ1QscUZBQWEsQ0FBQTtJQUNiLGlGQUFXLENBQUE7SUFDWCw2RUFBUyxDQUFBO0lBQ1QscUZBQWEsQ0FBQTtJQUNiLDJGQUFnQixDQUFBO0lBQ2hCLHFGQUFhLENBQUE7SUFDYixtRkFBWSxDQUFBO0lBQ1osMkZBQWdCLENBQUE7SUFDaEIscUtBQXFELENBQUE7SUFDckQsZ0dBQWtCLENBQUE7SUFDbEIsMEhBQStCLENBQUE7SUFDL0IsMEVBQU8sQ0FBQTtJQUNQLHdGQUFjLENBQUE7QUFDaEIsQ0FBQyxFQWZXLHNCQUFzQixLQUF0QixzQkFBc0IsUUFlakM7QUFHRCxNQUFNLE9BQWdCLGtCQUFrQjtJQW1CdEM7UUFsQkEsaUJBQVksR0FBMkIsQ0FBQyxDQUFDO1FBQ3pDLFlBQU8sR0FBVyxJQUFJLENBQUM7UUFDdkIsZ0JBQVcsR0FBVyxJQUFJLENBQUM7UUFFM0IsU0FBSSxHQUFXLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEMsYUFB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RCxNQUFNLE9BQU8sY0FBZSxTQUFRLGtCQUFrQjtDQUVyRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7R3VpTWdDb250cm9sfSBmcm9tICcuLi9HdWlNZ0NvbnRyb2wnO1xyXG5pbXBvcnQge01nVmFsdWV9IGZyb20gJy4uL01nVmFsdWUnO1xyXG5pbXBvcnQge0d1aU1nRm9ybX0gZnJvbSAnLi4vR3VpTWdGb3JtJztcclxuaW1wb3J0IHtFdmVudHN9IGZyb20gJy4uLy4uL0V2ZW50cyc7XHJcbmltcG9ydCB7VUlCcmlkZ2V9IGZyb20gJy4uLy4uL1VJQnJpZGdlJztcclxuaW1wb3J0IHtDb250cm9sQmFzZX0gZnJvbSAnLi4vQ29udHJvbEJhc2UnO1xyXG5pbXBvcnQge0d1aUNvbW1hbmRRdWV1ZX0gZnJvbSAnLi9HdWlDb21tYW5kUXVldWUnO1xyXG5cclxuZXhwb3J0IGVudW0gSW50ZXJhY3RpdmVDb21tYW5kVHlwZSB7XHJcbiAgR0VUX1ZBTFVFLFxyXG4gIEdFVF9UT1BfSU5ERVgsXHJcbiAgTUVTU0FHRV9CT1gsXHJcbiAgU0VUX1RJVExFLFxyXG4gIFNFVF9FRElUX1RFWFQsXHJcbiAgSU5TRVJUX0VESVRfVEVYVCxcclxuICBHRVRfQ0FSRVRfUE9TLFxyXG4gIFJFRlJFU0hfUEFHRSxcclxuICBHRVRfUk9XU19JTl9QQUdFLFxyXG4gIFNFVF9HRVRfU1VHR0VTVEVEX1ZBTFVFX0ZPUl9DSE9JQ0VfQ09OVFJPTF9PTl9UQUdEQVRBLFxyXG4gIEdFVF9JU19ST1dfRURJVElORyxcclxuICBHRVRfTUFYX1JPV1NfSU5fUEFHSU5BVEVEX1RBQkxFLFxyXG4gIENBTExfSlMsXHJcbiAgR0VUX0xBU1RfUk9VVEVcclxufVxyXG5cclxuLy8vIDxzdW1tYXJ5PiBHdWlVdGlscyBjbGFzcyBwcm92aWRlcyBtZXRob2RzIGZvciByZXRyaWV2aW5nIGluZm9ybWF0aW9uIGZyb20gdGhlIEdVSSBsYXllcjwvc3VtbWFyeT5cclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEd1aUludGVyYWN0aXZlQmFzZSB7XHJcbiAgX2NvbW1hbmRUeXBlOiBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlID0gMDtcclxuICBUYXNrVGFnOiBzdHJpbmcgPSBudWxsO1xyXG4gIGNvbnRyb2xOYW1lOiBzdHJpbmcgPSBudWxsO1xyXG5cclxuICBfc3RyOiBzdHJpbmcgPSBTdHJpbmcuZnJvbUNoYXJDb2RlKDApO1xyXG4gIF9pbnRWYWwxOiBudW1iZXIgPSAwO1xyXG4gIF9saW5lOiBudW1iZXIgPSAwO1xyXG4gIF9vYmoxOiBhbnkgPSBudWxsO1xyXG4gIF9wYXJhbWV0ZXJzOiBhbnlbXSA9IG51bGw7XHJcbiAgX2Jvb2xWYWw6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBfb2JqMjogYW55ID0gbnVsbDtcclxuICBfbWdWYWx1ZTogTWdWYWx1ZSA9IG51bGw7XHJcbiAgYXJndW1lbnRzIDogQXJyYXk8YW55PiA7XHJcbiAgcmVzdWx0U3RyaW5nIDogc3RyaW5nID0gU3RyaW5nLmZyb21DaGFyQ29kZSgwKTtcclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBDb25zdHJ1Y3RvciA6IHNldHMgdGhlIGNvbnRleHRJRCBmb3IgdGhlIGN1cnJlbnQgY29tbWFuZC5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBUaGlzIG1ldGhvZGUgaXMgc2V0IFRSVUVcXEZBTFNFIHRoYXQgR3VpVXRpbGVzXFxHZXRWYWx1ZSgpIG1ldGhvZCB3aWxsIGJlIHVzZVxyXG4gIC8vLyB0aGlzIGZhbGcgc2F5IGlmIHRvIHJldHVybiB0aGUgOiAodHJ1ZSkgc3VnZ2VzdGVkIHZhbHVlIG9yIChmYWxzZSl0aGUgcmVhbCB2YWx1ZVxyXG4gIC8vLyB0aGlzIG1ldGhvZCBpcyB1c2UgZm9yIE1HX0FDVF9DVFJMX01PRElGWVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwiY3RybFwiPjwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwicmV0U3VnZ2VzdGVkVmFsdWVcIj48L3BhcmFtPlxyXG4gIHNldEdldFN1Z2dlc3RlZFZhbHVlT2ZDaG9pY2VDb250cm9sT25UYWdEYXRhKGN0cmw6IEd1aU1nQ29udHJvbCwgbGluZTogbnVtYmVyLCByZXRTdWdnZXN0ZWRWYWx1ZTogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgdGhpcy5fY29tbWFuZFR5cGUgPSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLlNFVF9HRVRfU1VHR0VTVEVEX1ZBTFVFX0ZPUl9DSE9JQ0VfQ09OVFJPTF9PTl9UQUdEQVRBO1xyXG4gICAgdGhpcy5fb2JqMiA9IGN0cmw7XHJcbiAgICB0aGlzLl9saW5lID0gbGluZTtcclxuICAgIHRoaXMuX2Jvb2xWYWwgPSByZXRTdWdnZXN0ZWRWYWx1ZTtcclxuICAgIHRoaXMuSW52b2tlKCk7XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBHZXQgdmFsdWUgb2YgdGhlIGNvbnRyb2w8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwib2JqZWN0XCI+YSByZWZlcmVuY2UgdG8gdGhlIHJlbGV2YW50IG9iamVjdDwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwicmVjdFwiPmEgcmVmZXJlbmNlIHRvIHRoZSBvYmplY3QgdGhhdCBvbiByZXR1cm4gd2lsbCBjb250YWluIHRoZSByZXF1ZXN0ZWQgdmFsdWVzIG9uIHN0cmluZzwvcGFyYW0+XHJcbiAgZ2V0VmFsdWUob2JqOiBhbnksIGxpbmU6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICB0aGlzLl9jb21tYW5kVHlwZSA9IEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX1ZBTFVFO1xyXG4gICAgdGhpcy5fb2JqMiA9IG9iajtcclxuXHJcbiAgICB0aGlzLl9saW5lID0gbGluZTtcclxuICAgIHRoaXMuX21nVmFsdWUgPSBuZXcgTWdWYWx1ZSgpO1xyXG4gICAgdGhpcy5JbnZva2UoKTtcclxuICAgIHJldHVybiB0aGlzLl9tZ1ZhbHVlLm9iajtcclxuICB9XHJcblxyXG5cclxuICBnZXRUb3BJbmRleCh0YWJsZWNvbnRyb2w6IEd1aU1nQ29udHJvbCk6IG51bWJlciB7XHJcbiAgICB0aGlzLl9jb21tYW5kVHlwZSA9IEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX1RPUF9JTkRFWDtcclxuICAgIHRoaXMuX29iajIgPSB0YWJsZWNvbnRyb2w7XHJcbiAgICB0aGlzLkludm9rZSgpO1xyXG4gICAgcmV0dXJuIHRoaXMuX2ludFZhbDE7XHJcbiAgfVxyXG5cclxuICBnZXRJc1Jvd0VkaXRpbmcodGFibGVjb250cm9sOiBHdWlNZ0NvbnRyb2wsIGxpbmU6IG51bWJlciwgaXNMaW5lTW9kZTogYm9vbGVhbik6IGJvb2xlYW4ge1xyXG4gICAgdGhpcy5fY29tbWFuZFR5cGUgPSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9JU19ST1dfRURJVElORztcclxuICAgIHRoaXMuX29iajIgPSB0YWJsZWNvbnRyb2w7XHJcbiAgICB0aGlzLl9pbnRWYWwxID0gbGluZTtcclxuICAgIHRoaXMuX2Jvb2xWYWwgPSBpc0xpbmVNb2RlO1xyXG5cclxuICAgIHRoaXMuSW52b2tlKCk7XHJcbiAgICByZXR1cm4gdGhpcy5fYm9vbFZhbDtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5PcGVuIG1lc3NhZ2UgYm94IHdpdGggcGFyZW50IGZvcm08L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwidGl0bGVcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cIm1zZ1wiPjwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwic3R5bGVcIj50aGUgc3R5bGUgb2YgdGhlIG1lc3NhZ2UgYm94IGNhbiBiZSBmbGFncyBvZiBTdHlsZXMuTVNHQk9YX3h4eCA8L3BhcmFtPlxyXG4gIC8vLyA8cmV0dXJucz4gbWVzc2FnZSBib3ggc3R5bGUgZnJvbSBTdHlsZXMuTVNHQk9YX1hYWDwvcmV0dXJucz5cclxuICBtZXNzYWdlQm94KHRpdGxlOiBzdHJpbmcsIG1zZzogc3RyaW5nLCBzdHlsZTogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgIHRoaXMuX2NvbW1hbmRUeXBlID0gSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5NRVNTQUdFX0JPWDtcclxuICAgIHRoaXMuX21nVmFsdWUgPSBuZXcgTWdWYWx1ZSgpO1xyXG4gICAgdGhpcy5fbWdWYWx1ZS50aXRsZSA9IHRpdGxlO1xyXG4gICAgdGhpcy5fbWdWYWx1ZS5zdHIgPSAoKG1zZyA9PT0gbnVsbCkgPyAnJyA6IG1zZyk7XHJcbiAgICB0aGlzLl9tZ1ZhbHVlLnN0eWxlID0gc3R5bGU7XHJcbiAgICBFdmVudHMuUmVmcmVzaFRhYmxlcygpO1xyXG4gICAgdGhpcy5JbnZva2UoKTtcclxuICAgIHJldHVybiB0aGlzLl9tZ1ZhbHVlLm51bWJlcjtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5zZXQgdGl0bGUgdG8gYnJvd3Nlcjwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJ0b3BNb3N0Rm9ybVwiPnRoZSBwYXJlbnQgZm9ybSBvZiB0aGUgbWVzc2FnZSBib3g8L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cInRpdGxlXCI+PC9wYXJhbT5cclxuICAvLy8gPHJldHVybnM+IG1lc3NhZ2UgYm94IHN0eWxlIGZyb20gU3R5bGVzLk1TR0JPWF9YWFg8L3JldHVybnM+XHJcbiAgc2V0VGl0bGUodG9wTW9zdEZvcm06IEd1aU1nRm9ybSwgdGl0bGU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgdGhpcy5fY29tbWFuZFR5cGUgPSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLlNFVF9USVRMRTtcclxuICAgIHRoaXMuX21nVmFsdWUgPSBuZXcgTWdWYWx1ZSgpO1xyXG4gICAgdGhpcy5fb2JqMiA9IHRvcE1vc3RGb3JtO1xyXG4gICAgdGhpcy5fbWdWYWx1ZS50aXRsZSA9ICgodGl0bGUgPT09IG51bGwpID8gJycgOiB0aXRsZSk7XHJcbiAgICB0aGlzLkludm9rZSgpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBzZXQgdGhlIHRleHQgdG8gdGhlIHRoZSBjb250cm9sXHJcbiAgLy8vXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJjb250cm9sXCI+PC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJsaW5lXCI+PC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJ0ZXh0XCI+PC9wYXJhbT5cclxuICBzZXRFZGl0VGV4dChjb250cm9sOiBHdWlNZ0NvbnRyb2wsIGxpbmU6IG51bWJlciwgdGV4dDogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICB0aGlzLl9jb21tYW5kVHlwZSA9IEludGVyYWN0aXZlQ29tbWFuZFR5cGUuU0VUX0VESVRfVEVYVDtcclxuICAgIHRoaXMuX29iajIgPSBjb250cm9sO1xyXG4gICAgdGhpcy5fbGluZSA9IGxpbmU7XHJcbiAgICB0aGlzLl9tZ1ZhbHVlID0gbmV3IE1nVmFsdWUoKTtcclxuICAgIHRoaXMuX21nVmFsdWUuc3RyID0gdGV4dDtcclxuXHJcbiAgICB0aGlzLkludm9rZSgpO1xyXG5cclxuICAgIHJldHVybiB0aGlzLl9tZ1ZhbHVlLmJvb2xWYWw7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+IGluc2VydCB0aGUgdGV4dCB0byB0aGUgdGhlIGNvbnRyb2wgYXQgdGhlIGdpdmVuIHBvc2l0aW9uXHJcbiAgLy8vXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJjb250cm9sXCI+PC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJsaW5lXCI+PC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJ0ZXh0XCI+PC9wYXJhbT5cclxuICBpbnNlcnRFZGl0VGV4dChjb250cm9sOiBHdWlNZ0NvbnRyb2wsIGxpbmU6IG51bWJlciwgc3RhcnRQb3NpdGlvbjogbnVtYmVyLCB0ZXh0VG9JbnNlcnQ6IHN0cmluZyk6IGJvb2xlYW4ge1xyXG4gICAgdGhpcy5fY29tbWFuZFR5cGUgPSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLklOU0VSVF9FRElUX1RFWFQ7XHJcbiAgICB0aGlzLl9vYmoyID0gY29udHJvbDtcclxuICAgIHRoaXMuX2xpbmUgPSBsaW5lO1xyXG4gICAgdGhpcy5fbWdWYWx1ZSA9IG5ldyBNZ1ZhbHVlKCk7XHJcbiAgICB0aGlzLl9tZ1ZhbHVlLnN0ciA9IHRleHRUb0luc2VydDtcclxuICAgIHRoaXMuX2ludFZhbDEgPSBzdGFydFBvc2l0aW9uO1xyXG5cclxuICAgIHRoaXMuSW52b2tlKCk7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuX21nVmFsdWUuYm9vbFZhbDtcclxuICB9XHJcblxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIGdldCB0aGUgcG9zaXRpb24gb2YgdGhlIGNhcmV0IG9uIHRoZSBjb250cm9sXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJjb250cm9sXCI+PC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJsaW5lXCI+PC9wYXJhbT5cclxuICBjYXJldFBvc0dldChjb250cm9sOiBHdWlNZ0NvbnRyb2wsIGxpbmU6IG51bWJlcik6IG51bWJlciB7XHJcbiAgICB0aGlzLl9jb21tYW5kVHlwZSA9IEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0NBUkVUX1BPUztcclxuICAgIHRoaXMuX29iajIgPSBjb250cm9sO1xyXG4gICAgdGhpcy5fbGluZSA9IGxpbmU7XHJcblxyXG4gICAgdGhpcy5fbWdWYWx1ZSA9IG5ldyBNZ1ZhbHVlKCk7XHJcbiAgICB0aGlzLkludm9rZSgpO1xyXG5cclxuICAgIHJldHVybiB0aGlzLl9tZ1ZhbHVlLm51bWJlcjtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gcmVmcmVzaCBwYWdlXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBSZWZyZXNoUGFnZShuYXZpZ2F0ZVRvUm9vdFJvdXRlOiBib29sZWFuLCBpbml0aWFsVXJsOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX2NvbW1hbmRUeXBlID0gSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5SRUZSRVNIX1BBR0U7XHJcbiAgICB0aGlzLl9ib29sVmFsID0gbmF2aWdhdGVUb1Jvb3RSb3V0ZTtcclxuICAgIHRoaXMuX29iajEgPSBpbml0aWFsVXJsO1xyXG4gICAgdGhpcy5JbnZva2UoKTtcclxuICAgIHJldHVybjtcclxuICB9XHJcblxyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiByZXR1cm4gbnVtYmVyIG9mIHJvd3MgaW4gdGhlIHRhYmxlPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImNvbnRyb2xcIj48L3BhcmFtPlxyXG4gIC8vLyA8cmV0dXJucz48L3JldHVybnM+XHJcbiAgZ2V0Um93c0luUGFnZShjb250cm9sOiBHdWlNZ0NvbnRyb2wpOiBudW1iZXIge1xyXG4gICAgdGhpcy5fY29tbWFuZFR5cGUgPSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9ST1dTX0lOX1BBR0U7XHJcbiAgICB0aGlzLl9vYmoyID0gY29udHJvbDtcclxuICAgIHRoaXMuSW52b2tlKCk7XHJcbiAgICByZXR1cm4gdGhpcy5faW50VmFsMTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gcmV0dXJuIG51bWJlciBvZiByb3dzIGluIHRoZSB0YWJsZTwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJjb250cm9sXCI+PC9wYXJhbT5cclxuICAvLy8gPHJldHVybnM+PC9yZXR1cm5zPlxyXG4gIGdldE1heFJvd3NJblBhZ2luYXRlZFRhYmxlKGNvbnRyb2w6IEd1aU1nQ29udHJvbCk6IG51bWJlciB7XHJcbiAgICB0aGlzLl9jb21tYW5kVHlwZSA9IEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX01BWF9ST1dTX0lOX1BBR0lOQVRFRF9UQUJMRTtcclxuICAgIHRoaXMuX29iajIgPSBjb250cm9sO1xyXG4gICAgdGhpcy5JbnZva2UoKTtcclxuICAgIHJldHVybiB0aGlzLl9pbnRWYWwxO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBHZXQgdGhlIGxhc3Qgcm91dGVcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGdldExhc3RSb3V0ZSgpOiBzdHJpbmcge1xyXG4gICAgdGhpcy5fY29tbWFuZFR5cGUgPSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9MQVNUX1JPVVRFO1xyXG4gICAgdGhpcy5JbnZva2UoKTtcclxuICAgIHJldHVybiB0aGlzLnJlc3VsdFN0cmluZztcclxuICB9XHJcblxyXG5cclxuXHJcbiAgRXhlY3V0ZUNhbGxKUyhmb3JtICwgZm9ybU5hbWU6IHN0cmluZywgIGZ1bmN0aW9uTmFtZTogc3RyaW5nLCBhcmdzOiBBcnJheTxhbnk+KTogc3RyaW5nIHtcclxuICAgIHRoaXMuX2NvbW1hbmRUeXBlID0gSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5DQUxMX0pTO1xyXG4gICAgdGhpcy5fb2JqMiA9IGZvcm07XHJcbiAgICB0aGlzLmNvbnRyb2xOYW1lID0gZm9ybU5hbWU7XHJcbiAgICB0aGlzLl9zdHIgPSBmdW5jdGlvbk5hbWU7XHJcbiAgICB0aGlzLmFyZ3VtZW50cyA9IGFyZ3M7XHJcbiAgICB0aGlzLkludm9rZSgpO1xyXG4gICAgcmV0dXJuIHRoaXMucmVzdWx0U3RyaW5nO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBDYWxscyBSdW4oKSBzeW5jaHJvbm91c2x5IHRvIGV4ZWN1dGUgdGhlIGNvbW1hbmQuXHJcbiAgLy8vIEJ1dCBiZWZvcmUgdGhhdCwgaXQgZXhlY3V0ZXMgdGhlIEd1aUNvbW1hbmRRdWV1ZS5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIHByaXZhdGUgSW52b2tlKCk6IHZvaWQge1xyXG4gICAgR3VpQ29tbWFuZFF1ZXVlLmdldEluc3RhbmNlKCkuaW52b2tlKCk7XHJcbiAgICBpZiAodGhpcy5fb2JqMiBpbnN0YW5jZW9mIENvbnRyb2xCYXNlKSB7XHJcbiAgICAgIGxldCBjb250cm9sQmFzZTogQ29udHJvbEJhc2UgPSA8Q29udHJvbEJhc2U+dGhpcy5fb2JqMjtcclxuICAgICAgdGhpcy5UYXNrVGFnID0gY29udHJvbEJhc2UuVGFza1RhZztcclxuICAgICAgdGhpcy5jb250cm9sTmFtZSA9IGNvbnRyb2xCYXNlLlVuaXF1ZU5hbWU7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuX29iajIgaW5zdGFuY2VvZiBHdWlNZ0Zvcm0pIHtcclxuICAgICAgbGV0IGd1aU1nRm9ybTogR3VpTWdGb3JtID0gPEd1aU1nRm9ybT50aGlzLl9vYmoyO1xyXG4gICAgICB0aGlzLlRhc2tUYWcgPSBndWlNZ0Zvcm0uVGFza1RhZztcclxuICAgIH0gZWxzZVxyXG4gICAgICB0aGlzLlRhc2tUYWcgPSAnMCc7IC8vIGdlbmVyYWwgY29tbWFuZFxyXG5cclxuICAgIFVJQnJpZGdlLmdldEluc3RhbmNlKCkuRXhlY3V0ZUludGVyYWN0aXZlQ29tbWFuZCh0aGlzKTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gaW1wbGVtZW50cyB0aGUgUnVubmFibGUgcnVuIG1ldGhvZCBmb3IgY2FsbGluZyBEaXNwbGF5LnN5bmNFeGVjKCk8L3N1bW1hcnk+XHJcbiAgLy8gUnVuKCk6IHZvaWQge1xyXG4gIC8vICAgLy8gU2V0cyB0aGUgY3VycmVudENvbnRleHRJRFxyXG4gIC8vICAgbGV0IGNvbnRleHRJREd1YXJkID0gbmV3IENvbnRleHRJREd1YXJkKHRoaXMuX2NvbnRleHRJRCk7XHJcbiAgLy8gICB0cnkge1xyXG4gIC8vICAgICBzd2l0Y2ggKHRoaXMuX2NvbW1hbmRUeXBlKSB7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9GT05UX01FVFJJQ1M6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0Rm9udE1ldHJpY3MoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfUkVTT0xVVElPTjpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXRSZXNvbHV0aW9uKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0JPVU5EUzpcclxuICAvLyAgICAgICAgIHRoaXMub25Cb3VuZHMoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfVkFMVUU6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uVmFsdWUoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5TRVRfQlJPV1NFUl9URVhUOlxyXG4gIC8vICAgICAgICAgdGhpcy5vblNldEJyb3dzZXJUZXh0KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0JST1dTRVJfVEVYVDpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXRCcm93c2VyVGV4dCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkJST1dTRVJfRVhFQ1VURTpcclxuICAvLyAgICAgICAgIHRoaXMub25Ccm93c2VyRXhlY3V0ZSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9UT1BfSU5ERVg6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0VG9wSW5kZXgoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5NRVNTQUdFX0JPWDpcclxuICAvLyAgICAgICAgIHRoaXMub25NZXNzYWdlQm94KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuRElSRUNUT1JZX0RJQUxPR19CT1g6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uRGlyZWN0b3J5RGlhbG9nQm94KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0NMSUVOVF9CT1VORFM6XHJcbiAgLy8gICAgICAgICB0aGlzLmdldENsaWVudEJvdW5kcygpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLlNFVF9FRElUX1RFWFQ6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uU2V0RWRpdFRleHQoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5JTlNFUlRfRURJVF9URVhUOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkluc2VydEVkaXRUZXh0KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuU0VUX1NFTEVDVElPTjpcclxuICAvLyAgICAgICAgIHRoaXMub25TZXRTZWxlY3Rpb24oKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfU0VMRUNUSU9OOlxyXG4gIC8vICAgICAgICAgdGhpcy5vblNlbGVjdGlvbkdldCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9DQVJFVF9QT1M6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uQ2FyZXRQb3NHZXQoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfSVNfVE9QX09GX1RFWFRCT1g6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0SXNUb3BPZlRleHRCb3goKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfSVNfRU5EX09GX1RFWFRCT1g6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0SXNFbmRPZlRleHRCb3goKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5DTElQQk9BUkRfR0VUX0NPTlRFTlQ6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uQ2xpcGJvYXJkUmVhZCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkNMSVBCT0FSRF9TRVRfQ09OVEVOVDpcclxuICAvLyAgICAgICAgIHRoaXMub25DbGlwYm9hcmRXcml0ZSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkNMSVBCT0FSRF9QQVNURTpcclxuICAvLyAgICAgICAgIHRoaXMub25DbGlwYm9hcmRQYXN0ZSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLlBPU1RfS0VZX0VWRU5UOlxyXG4gIC8vICAgICAgICAgdGhpcy5vblBvc3RLZXlFdmVudCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLlBPU1RfQ0hBUl9FVkVOVDpcclxuICAvLyAgICAgICAgIHRoaXMub25Qb3N0Q2hhckV2ZW50KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuU0VUX0NVUlNPUjpcclxuICAvLyAgICAgICAgIHRoaXMub25TZXRDdXJzb3IoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5ESVNQT1NFX0FMTF9GT1JNUzpcclxuICAvLyAgICAgICAgIHRoaXMub25EaXNwb3NlQWxsRm9ybXMoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfUk9XU19JTl9QQUdFOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkdldFJvd3NJblBhZ2UoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfSElEREVOX1JPV1NfQ09VTlRfSU5fVEFCTEU6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0SGlkZGVuUm93c0NvdW50SW5UYWJsZSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkZJTEVfT1BFTl9ESUFMT0dfQk9YOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkZpbGVPcGVuRGlhbG9nQm94KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuRklMRV9TQVZFX0RJQUxPR19CT1g6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uRmlsZVNhdmVEaWFsb2dCb3goKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5DUkVBVEVfRElBTE9HOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkNyZWF0ZURpYWxvZygpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLk9QRU5fRElBTE9HOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbk9wZW5EaWFsb2coKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5DTE9TRV9ESUFMT0c6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uQ2xvc2VEaWFsb2coKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5TRVRfR0VUX1NVR0dFU1RFRF9WQUxVRV9GT1JfQ0hPSUNFX0NPTlRST0xfT05fVEFHREFUQTpcclxuICAvLyAgICAgICAgIHRoaXMuT25TZXRHZXRTdWdnZXN0ZWRWYWx1ZU9mQ2hvaWNlQ29udHJvbE9uVGFnRGF0YSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9MQVNUX1dJTkRPV19TVEFURTpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXRMYXN0V2luZG93U3RhdGUoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfRlJBTUVTX0JPVU5EUzpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXRGcmFtZXNCb3VuZHMoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfTElOS0VEX1BBUkVOVF9JRFg6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0TGlua2VkUGFyZW50SWR4KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0ZPUk1fQk9VTkRTOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkdldEZvcm1Cb3VuZHMoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfQ09MVU1OU19TVEFURTpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXRDb2x1bW5zU3RhdGUoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfRk9STV9IQU5ETEU6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0Rm9ybUhhbmRsZSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9DVFJMX0hBTkRMRTpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXRDdHJsSGFuZGxlKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuSVNfRk9STV9BQ1RJVkU6XHJcbiAgLy8gICAgICAgICB0aGlzLmlzRm9ybUFjdGl2ZSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9EUk9QUEVEX0RBVEE6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0RHJvcHBlZERhdGEoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfRFJPUFBFRF9QT0lOVDpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXREcm9wcGVkUG9pbnQoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfRFJPUFBFRF9TRUxFQ1RJT046XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0RHJvcHBlZFNlbGVjdGlvbigpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkRST1BfRk9STUFUX1NVUFBPUlRFRDpcclxuICAvLyAgICAgICAgIHRoaXMub25DaGVja0Ryb3BGb3JtYXRQcmVzZW50KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0lTX0JFR0lOX0RSQUc6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0SXNCZWdpbkRyYWcoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5BQ1RJVkFURV9ORVhUX09SX1BSRVZJT1VTX01ESV9DSElMRDpcclxuICAvLyAgICAgICAgIHRoaXMuT25BY3RpdmF0ZU5leHRPclByZXZpb3VzTURJQ2hpbGQoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5TRU5EX0lNRV9NU0c6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uU2VuZEltZU1zZygpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkNBTl9GT0NVUzpcclxuICAvLyAgICAgICAgIHRoaXMub25DYW5Gb2N1cygpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9TRUxFQ1RFRF9JTkRJQ0U6XHJcbiAgLy8gICAgICAgICB0aGlzLk9uR2V0U2VsZWN0ZWRJbmRpY2UoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5TRVRfU1VHR0VTVEVEX1ZBTFVFOlxyXG4gIC8vICAgICAgICAgdGhpcy5vblNldFN1Z2dlc3RlZFZhbHVlKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuTUFQX1dJREdFVF9UT19HVUlfT0JKRUNUOlxyXG4gIC8vICAgICAgICAgdGhpcy5NYXBXaWRnZXQoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5SRU1PVkVfRE5fQ09OVFJPTF9WQUxVRV9DSEFOR0VEX0hBTkRMRVI6XHJcbiAgLy8gICAgICAgICB0aGlzLk9uUmVtb3ZlRE5Db250cm9sVmFsdWVDaGFuZ2VkSGFuZGxlcigpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkFERF9ETl9DT05UUk9MX1ZBTFVFX0NIQU5HRURfSEFORExFUjpcclxuICAvLyAgICAgICAgIHRoaXMuT25BZGRETkNvbnRyb2xWYWx1ZUNoYW5nZWRIYW5kbGVyKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX1JURl9WQUxVRV9CRUZPUkVfRU5URVJJTkdfQ09OVFJPTDpcclxuICAvLyAgICAgICAgIHRoaXMuT25HZXRSdGZWYWx1ZUJlZm9yZUVudGVyaW5nQ29udHJvbCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9NRElfQ0hJTERfQ09VTlQ6XHJcbiAgLy8gICAgICAgICB0aGlzLk9uR2V0TURJQ2hpbGRDb3VudCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkFDVElWQVRFX0ZPUk06XHJcbiAgLy8gICAgICAgICB0aGlzLk9uQWN0aXZhdGVGb3JtKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuRU5BQkxFX01FTlVfRU5UUlk6XHJcbiAgLy8gICAgICAgICB0aGlzLk9uRW5hYmxlTWVudUVudHJ5KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuU0hPV19DT05URVhUX01FTlU6XHJcbiAgLy8gICAgICAgICB0aGlzLk9uU2hvd0NvbnRleHRNZW51KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuSVNfQ09NQk9fRFJPUFBFRF9ET1dOOlxyXG4gIC8vICAgICAgICAgdGhpcy5PbklzQ29tYm9Ecm9wcGVkRG93bmRTdGF0ZSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLklOVk9LRV9VRFBDT01NQU5EOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkludm9rZVVEUCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9IQVNJTkRFTlQ6XHJcbiAgLy8gICAgICAgICB0aGlzLk9uR2V0SGFzSW5kZW50KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgfVxyXG4gIC8vICAgfVxyXG4gIC8vICAgY2F0Y2ggKGV4KSB7XHJcbiAgLy8gICAgIGlmIChleCBpbnN0YW5jZW9mIEV4Y2VwdGlvbikge1xyXG4gIC8vICAgICAgIEV2ZW50cy5Xcml0ZUV4Y2VwdGlvblRvTG9nKGV4KTtcclxuICAvLyAgICAgICB0aHJvdyBleDtcclxuICAvLyAgICAgfVxyXG4gIC8vICAgICBlbHNlXHJcbiAgLy8gICAgICAgdGhyb3cgZXg7IC8vIFJlc2V0IHRoZSBjdXJyZW50IGNvbnRleHRJRC5cclxuICAvLyAgIH1cclxuICAvLyAgIGZpbmFsbHkge1xyXG4gIC8vICAgICBjb250ZXh0SURHdWFyZC5EaXNwb3NlKCk7XHJcbiAgLy8gICB9XHJcbiAgLy8gfVxyXG5cclxuXHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gZ2V0IG51bWJlciBvZiByb3dzIGluIHRoZSB0YWJsZVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgb25HZXRSb3dzSW5QYWdlKCk6IHZvaWQge1xyXG4gIH1cclxuXHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBHdWlJbnRlcmFjdGl2ZSBleHRlbmRzIEd1aUludGVyYWN0aXZlQmFzZSB7XHJcblxyXG59XHJcbiJdfQ==
|
|
166
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiR3VpSW50ZXJhY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ndWkvc3JjL2d1aS9sb3cvR3VpSW50ZXJhY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLFlBQVksQ0FBQztBQUNuQyxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sY0FBYyxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDcEMsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3hDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFFbEQsTUFBTSxDQUFOLElBQVksc0JBZVg7QUFmRCxXQUFZLHNCQUFzQjtJQUNoQyw2RUFBUyxDQUFBO0lBQ1QscUZBQWEsQ0FBQTtJQUNiLGlGQUFXLENBQUE7SUFDWCw2RUFBUyxDQUFBO0lBQ1QscUZBQWEsQ0FBQTtJQUNiLDJGQUFnQixDQUFBO0lBQ2hCLHFGQUFhLENBQUE7SUFDYixtRkFBWSxDQUFBO0lBQ1osMkZBQWdCLENBQUE7SUFDaEIscUtBQXFELENBQUE7SUFDckQsZ0dBQWtCLENBQUE7SUFDbEIsMEhBQStCLENBQUE7SUFDL0IsMEVBQU8sQ0FBQTtJQUNQLHdGQUFjLENBQUE7QUFDaEIsQ0FBQyxFQWZXLHNCQUFzQixLQUF0QixzQkFBc0IsUUFlakM7QUFHRCxNQUFNLE9BQWdCLGtCQUFrQjtJQW1CdEM7UUFsQkEsaUJBQVksR0FBMkIsQ0FBQyxDQUFDO1FBQ3pDLFlBQU8sR0FBVyxJQUFJLENBQUM7UUFDdkIsZ0JBQVcsR0FBVyxJQUFJLENBQUM7UUFFM0IsU0FBSSxHQUFXLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEMsYUFB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Q0FBQyxDQUFDO0lBQ3pELENBQUM7SUFxTkQsZUFBZTtJQUNmLENBQUM7Q0FFRjtBQUVELE1BQU0sT0FBTyxjQUFlLFNBQVEsa0JBQWtCO0NBRXJEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtHdWlNZ0NvbnRyb2x9IGZyb20gJy4uL0d1aU1nQ29udHJvbCc7XHJcbmltcG9ydCB7TWdWYWx1ZX0gZnJvbSAnLi4vTWdWYWx1ZSc7XHJcbmltcG9ydCB7R3VpTWdGb3JtfSBmcm9tICcuLi9HdWlNZ0Zvcm0nO1xyXG5pbXBvcnQge0V2ZW50c30gZnJvbSAnLi4vLi4vRXZlbnRzJztcclxuaW1wb3J0IHtVSUJyaWRnZX0gZnJvbSAnLi4vLi4vVUlCcmlkZ2UnO1xyXG5pbXBvcnQge0NvbnRyb2xCYXNlfSBmcm9tICcuLi9Db250cm9sQmFzZSc7XHJcbmltcG9ydCB7R3VpQ29tbWFuZFF1ZXVlfSBmcm9tICcuL0d1aUNvbW1hbmRRdWV1ZSc7XHJcblxyXG5leHBvcnQgZW51bSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlIHtcclxuICBHRVRfVkFMVUUsXHJcbiAgR0VUX1RPUF9JTkRFWCxcclxuICBNRVNTQUdFX0JPWCxcclxuICBTRVRfVElUTEUsXHJcbiAgU0VUX0VESVRfVEVYVCxcclxuICBJTlNFUlRfRURJVF9URVhULFxyXG4gIEdFVF9DQVJFVF9QT1MsXHJcbiAgUkVGUkVTSF9QQUdFLFxyXG4gIEdFVF9ST1dTX0lOX1BBR0UsXHJcbiAgU0VUX0dFVF9TVUdHRVNURURfVkFMVUVfRk9SX0NIT0lDRV9DT05UUk9MX09OX1RBR0RBVEEsXHJcbiAgR0VUX0lTX1JPV19FRElUSU5HLFxyXG4gIEdFVF9NQVhfUk9XU19JTl9QQUdJTkFURURfVEFCTEUsXHJcbiAgQ0FMTF9KUyxcclxuICBHRVRfTEFTVF9ST1VURVxyXG59XHJcblxyXG4vLy8gPHN1bW1hcnk+IEd1aVV0aWxzIGNsYXNzIHByb3ZpZGVzIG1ldGhvZHMgZm9yIHJldHJpZXZpbmcgaW5mb3JtYXRpb24gZnJvbSB0aGUgR1VJIGxheWVyPC9zdW1tYXJ5PlxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgR3VpSW50ZXJhY3RpdmVCYXNlIHtcclxuICBfY29tbWFuZFR5cGU6IEludGVyYWN0aXZlQ29tbWFuZFR5cGUgPSAwO1xyXG4gIFRhc2tUYWc6IHN0cmluZyA9IG51bGw7XHJcbiAgY29udHJvbE5hbWU6IHN0cmluZyA9IG51bGw7XHJcblxyXG4gIF9zdHI6IHN0cmluZyA9IFN0cmluZy5mcm9tQ2hhckNvZGUoMCk7XHJcbiAgX2ludFZhbDE6IG51bWJlciA9IDA7XHJcbiAgX2xpbmU6IG51bWJlciA9IDA7XHJcbiAgX29iajE6IGFueSA9IG51bGw7XHJcbiAgX3BhcmFtZXRlcnM6IGFueVtdID0gbnVsbDtcclxuICBfYm9vbFZhbDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIF9vYmoyOiBhbnkgPSBudWxsO1xyXG4gIF9tZ1ZhbHVlOiBNZ1ZhbHVlID0gbnVsbDtcclxuICBhcmd1bWVudHMgOiBBcnJheTxhbnk+IDtcclxuICByZXN1bHRTdHJpbmcgOiBzdHJpbmcgPSBTdHJpbmcuZnJvbUNoYXJDb2RlKDApO1xyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIENvbnN0cnVjdG9yIDogc2V0cyB0aGUgY29udGV4dElEIGZvciB0aGUgY3VycmVudCBjb21tYW5kLlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIFRoaXMgbWV0aG9kZSBpcyBzZXQgVFJVRVxcRkFMU0UgdGhhdCBHdWlVdGlsZXNcXEdldFZhbHVlKCkgbWV0aG9kIHdpbGwgYmUgdXNlXHJcbiAgLy8vIHRoaXMgZmFsZyBzYXkgaWYgdG8gcmV0dXJuIHRoZSA6ICh0cnVlKSBzdWdnZXN0ZWQgdmFsdWUgb3IgKGZhbHNlKXRoZSByZWFsIHZhbHVlXHJcbiAgLy8vIHRoaXMgbWV0aG9kIGlzIHVzZSBmb3IgTUdfQUNUX0NUUkxfTU9ESUZZXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJjdHJsXCI+PC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJyZXRTdWdnZXN0ZWRWYWx1ZVwiPjwvcGFyYW0+XHJcbiAgc2V0R2V0U3VnZ2VzdGVkVmFsdWVPZkNob2ljZUNvbnRyb2xPblRhZ0RhdGEoY3RybDogR3VpTWdDb250cm9sLCBsaW5lOiBudW1iZXIsIHJldFN1Z2dlc3RlZFZhbHVlOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLl9jb21tYW5kVHlwZSA9IEludGVyYWN0aXZlQ29tbWFuZFR5cGUuU0VUX0dFVF9TVUdHRVNURURfVkFMVUVfRk9SX0NIT0lDRV9DT05UUk9MX09OX1RBR0RBVEE7XHJcbiAgICB0aGlzLl9vYmoyID0gY3RybDtcclxuICAgIHRoaXMuX2xpbmUgPSBsaW5lO1xyXG4gICAgdGhpcy5fYm9vbFZhbCA9IHJldFN1Z2dlc3RlZFZhbHVlO1xyXG4gICAgdGhpcy5JbnZva2UoKTtcclxuICB9XHJcblxyXG5cclxuICAvLy8gPHN1bW1hcnk+IEdldCB2YWx1ZSBvZiB0aGUgY29udHJvbDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJvYmplY3RcIj5hIHJlZmVyZW5jZSB0byB0aGUgcmVsZXZhbnQgb2JqZWN0PC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJyZWN0XCI+YSByZWZlcmVuY2UgdG8gdGhlIG9iamVjdCB0aGF0IG9uIHJldHVybiB3aWxsIGNvbnRhaW4gdGhlIHJlcXVlc3RlZCB2YWx1ZXMgb24gc3RyaW5nPC9wYXJhbT5cclxuICBnZXRWYWx1ZShvYmo6IGFueSwgbGluZTogbnVtYmVyLCBpc1RocmVlU3RhdGVDaGVja0JveDogYm9vbGVhbik6IHN0cmluZyB7XHJcbiAgICB0aGlzLl9jb21tYW5kVHlwZSA9IEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX1ZBTFVFO1xyXG4gICAgdGhpcy5fb2JqMiA9IG9iajtcclxuICAgIHRoaXMuX2Jvb2xWYWwgPSBpc1RocmVlU3RhdGVDaGVja0JveDtcclxuICAgIHRoaXMuX2xpbmUgPSBsaW5lO1xyXG4gICAgdGhpcy5fbWdWYWx1ZSA9IG5ldyBNZ1ZhbHVlKCk7XHJcbiAgICB0aGlzLkludm9rZSgpO1xyXG4gICAgcmV0dXJuIHRoaXMuX21nVmFsdWUub2JqO1xyXG4gIH1cclxuXHJcblxyXG4gIGdldFRvcEluZGV4KHRhYmxlY29udHJvbDogR3VpTWdDb250cm9sKTogbnVtYmVyIHtcclxuICAgIHRoaXMuX2NvbW1hbmRUeXBlID0gSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfVE9QX0lOREVYO1xyXG4gICAgdGhpcy5fb2JqMiA9IHRhYmxlY29udHJvbDtcclxuICAgIHRoaXMuSW52b2tlKCk7XHJcbiAgICByZXR1cm4gdGhpcy5faW50VmFsMTtcclxuICB9XHJcblxyXG4gIGdldElzUm93RWRpdGluZyh0YWJsZWNvbnRyb2w6IEd1aU1nQ29udHJvbCwgbGluZTogbnVtYmVyLCBpc0xpbmVNb2RlOiBib29sZWFuKTogYm9vbGVhbiB7XHJcbiAgICB0aGlzLl9jb21tYW5kVHlwZSA9IEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0lTX1JPV19FRElUSU5HO1xyXG4gICAgdGhpcy5fb2JqMiA9IHRhYmxlY29udHJvbDtcclxuICAgIHRoaXMuX2ludFZhbDEgPSBsaW5lO1xyXG4gICAgdGhpcy5fYm9vbFZhbCA9IGlzTGluZU1vZGU7XHJcblxyXG4gICAgdGhpcy5JbnZva2UoKTtcclxuICAgIHJldHVybiB0aGlzLl9ib29sVmFsO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5Pk9wZW4gbWVzc2FnZSBib3ggd2l0aCBwYXJlbnQgZm9ybTwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJ0aXRsZVwiPjwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwibXNnXCI+PC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJzdHlsZVwiPnRoZSBzdHlsZSBvZiB0aGUgbWVzc2FnZSBib3ggY2FuIGJlIGZsYWdzIG9mIFN0eWxlcy5NU0dCT1hfeHh4IDwvcGFyYW0+XHJcbiAgLy8vIDxyZXR1cm5zPiBtZXNzYWdlIGJveCBzdHlsZSBmcm9tIFN0eWxlcy5NU0dCT1hfWFhYPC9yZXR1cm5zPlxyXG4gIG1lc3NhZ2VCb3godGl0bGU6IHN0cmluZywgbXNnOiBzdHJpbmcsIHN0eWxlOiBudW1iZXIpOiBudW1iZXIge1xyXG4gICAgdGhpcy5fY29tbWFuZFR5cGUgPSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLk1FU1NBR0VfQk9YO1xyXG4gICAgdGhpcy5fbWdWYWx1ZSA9IG5ldyBNZ1ZhbHVlKCk7XHJcbiAgICB0aGlzLl9tZ1ZhbHVlLnRpdGxlID0gdGl0bGU7XHJcbiAgICB0aGlzLl9tZ1ZhbHVlLnN0ciA9ICgobXNnID09PSBudWxsKSA/ICcnIDogbXNnKTtcclxuICAgIHRoaXMuX21nVmFsdWUuc3R5bGUgPSBzdHlsZTtcclxuICAgIEV2ZW50cy5SZWZyZXNoVGFibGVzKCk7XHJcbiAgICB0aGlzLkludm9rZSgpO1xyXG4gICAgcmV0dXJuIHRoaXMuX21nVmFsdWUubnVtYmVyO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PnNldCB0aXRsZSB0byBicm93c2VyPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cInRvcE1vc3RGb3JtXCI+dGhlIHBhcmVudCBmb3JtIG9mIHRoZSBtZXNzYWdlIGJveDwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwidGl0bGVcIj48L3BhcmFtPlxyXG4gIC8vLyA8cmV0dXJucz4gbWVzc2FnZSBib3ggc3R5bGUgZnJvbSBTdHlsZXMuTVNHQk9YX1hYWDwvcmV0dXJucz5cclxuICBzZXRUaXRsZSh0b3BNb3N0Rm9ybTogR3VpTWdGb3JtLCB0aXRsZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgICB0aGlzLl9jb21tYW5kVHlwZSA9IEludGVyYWN0aXZlQ29tbWFuZFR5cGUuU0VUX1RJVExFO1xyXG4gICAgdGhpcy5fbWdWYWx1ZSA9IG5ldyBNZ1ZhbHVlKCk7XHJcbiAgICB0aGlzLl9vYmoyID0gdG9wTW9zdEZvcm07XHJcbiAgICB0aGlzLl9tZ1ZhbHVlLnRpdGxlID0gKCh0aXRsZSA9PT0gbnVsbCkgPyAnJyA6IHRpdGxlKTtcclxuICAgIHRoaXMuSW52b2tlKCk7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+IHNldCB0aGUgdGV4dCB0byB0aGUgdGhlIGNvbnRyb2xcclxuICAvLy9cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImNvbnRyb2xcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImxpbmVcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cInRleHRcIj48L3BhcmFtPlxyXG4gIHNldEVkaXRUZXh0KGNvbnRyb2w6IEd1aU1nQ29udHJvbCwgbGluZTogbnVtYmVyLCB0ZXh0OiBzdHJpbmcpOiBib29sZWFuIHtcclxuICAgIHRoaXMuX2NvbW1hbmRUeXBlID0gSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5TRVRfRURJVF9URVhUO1xyXG4gICAgdGhpcy5fb2JqMiA9IGNvbnRyb2w7XHJcbiAgICB0aGlzLl9saW5lID0gbGluZTtcclxuICAgIHRoaXMuX21nVmFsdWUgPSBuZXcgTWdWYWx1ZSgpO1xyXG4gICAgdGhpcy5fbWdWYWx1ZS5zdHIgPSB0ZXh0O1xyXG5cclxuICAgIHRoaXMuSW52b2tlKCk7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuX21nVmFsdWUuYm9vbFZhbDtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT4gaW5zZXJ0IHRoZSB0ZXh0IHRvIHRoZSB0aGUgY29udHJvbCBhdCB0aGUgZ2l2ZW4gcG9zaXRpb25cclxuICAvLy9cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImNvbnRyb2xcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImxpbmVcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cInRleHRcIj48L3BhcmFtPlxyXG4gIGluc2VydEVkaXRUZXh0KGNvbnRyb2w6IEd1aU1nQ29udHJvbCwgbGluZTogbnVtYmVyLCBzdGFydFBvc2l0aW9uOiBudW1iZXIsIHRleHRUb0luc2VydDogc3RyaW5nKTogYm9vbGVhbiB7XHJcbiAgICB0aGlzLl9jb21tYW5kVHlwZSA9IEludGVyYWN0aXZlQ29tbWFuZFR5cGUuSU5TRVJUX0VESVRfVEVYVDtcclxuICAgIHRoaXMuX29iajIgPSBjb250cm9sO1xyXG4gICAgdGhpcy5fbGluZSA9IGxpbmU7XHJcbiAgICB0aGlzLl9tZ1ZhbHVlID0gbmV3IE1nVmFsdWUoKTtcclxuICAgIHRoaXMuX21nVmFsdWUuc3RyID0gdGV4dFRvSW5zZXJ0O1xyXG4gICAgdGhpcy5faW50VmFsMSA9IHN0YXJ0UG9zaXRpb247XHJcblxyXG4gICAgdGhpcy5JbnZva2UoKTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5fbWdWYWx1ZS5ib29sVmFsO1xyXG4gIH1cclxuXHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gZ2V0IHRoZSBwb3NpdGlvbiBvZiB0aGUgY2FyZXQgb24gdGhlIGNvbnRyb2xcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImNvbnRyb2xcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImxpbmVcIj48L3BhcmFtPlxyXG4gIGNhcmV0UG9zR2V0KGNvbnRyb2w6IEd1aU1nQ29udHJvbCwgbGluZTogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgIHRoaXMuX2NvbW1hbmRUeXBlID0gSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfQ0FSRVRfUE9TO1xyXG4gICAgdGhpcy5fb2JqMiA9IGNvbnRyb2w7XHJcbiAgICB0aGlzLl9saW5lID0gbGluZTtcclxuXHJcbiAgICB0aGlzLl9tZ1ZhbHVlID0gbmV3IE1nVmFsdWUoKTtcclxuICAgIHRoaXMuSW52b2tlKCk7XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuX21nVmFsdWUubnVtYmVyO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyByZWZyZXNoIHBhZ2VcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIFJlZnJlc2hQYWdlKG5hdmlnYXRlVG9Sb290Um91dGU6IGJvb2xlYW4sIGluaXRpYWxVcmw6IHN0cmluZykge1xyXG4gICAgdGhpcy5fY29tbWFuZFR5cGUgPSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLlJFRlJFU0hfUEFHRTtcclxuICAgIHRoaXMuX2Jvb2xWYWwgPSBuYXZpZ2F0ZVRvUm9vdFJvdXRlO1xyXG4gICAgdGhpcy5fb2JqMSA9IGluaXRpYWxVcmw7XHJcbiAgICB0aGlzLkludm9rZSgpO1xyXG4gICAgcmV0dXJuO1xyXG4gIH1cclxuXHJcblxyXG5cclxuICAvLy8gPHN1bW1hcnk+IHJldHVybiBudW1iZXIgb2Ygcm93cyBpbiB0aGUgdGFibGU8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwiY29udHJvbFwiPjwvcGFyYW0+XHJcbiAgLy8vIDxyZXR1cm5zPjwvcmV0dXJucz5cclxuICBnZXRSb3dzSW5QYWdlKGNvbnRyb2w6IEd1aU1nQ29udHJvbCk6IG51bWJlciB7XHJcbiAgICB0aGlzLl9jb21tYW5kVHlwZSA9IEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX1JPV1NfSU5fUEFHRTtcclxuICAgIHRoaXMuX29iajIgPSBjb250cm9sO1xyXG4gICAgdGhpcy5JbnZva2UoKTtcclxuICAgIHJldHVybiB0aGlzLl9pbnRWYWwxO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiByZXR1cm4gbnVtYmVyIG9mIHJvd3MgaW4gdGhlIHRhYmxlPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImNvbnRyb2xcIj48L3BhcmFtPlxyXG4gIC8vLyA8cmV0dXJucz48L3JldHVybnM+XHJcbiAgZ2V0TWF4Um93c0luUGFnaW5hdGVkVGFibGUoY29udHJvbDogR3VpTWdDb250cm9sKTogbnVtYmVyIHtcclxuICAgIHRoaXMuX2NvbW1hbmRUeXBlID0gSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfTUFYX1JPV1NfSU5fUEFHSU5BVEVEX1RBQkxFO1xyXG4gICAgdGhpcy5fb2JqMiA9IGNvbnRyb2w7XHJcbiAgICB0aGlzLkludm9rZSgpO1xyXG4gICAgcmV0dXJuIHRoaXMuX2ludFZhbDE7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIEdldCB0aGUgbGFzdCByb3V0ZVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgZ2V0TGFzdFJvdXRlKCk6IHN0cmluZyB7XHJcbiAgICB0aGlzLl9jb21tYW5kVHlwZSA9IEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0xBU1RfUk9VVEU7XHJcbiAgICB0aGlzLkludm9rZSgpO1xyXG4gICAgcmV0dXJuIHRoaXMucmVzdWx0U3RyaW5nO1xyXG4gIH1cclxuXHJcblxyXG5cclxuICBFeGVjdXRlQ2FsbEpTKGZvcm0gLCBmb3JtTmFtZTogc3RyaW5nLCAgZnVuY3Rpb25OYW1lOiBzdHJpbmcsIGFyZ3M6IEFycmF5PGFueT4pOiBzdHJpbmcge1xyXG4gICAgdGhpcy5fY29tbWFuZFR5cGUgPSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkNBTExfSlM7XHJcbiAgICB0aGlzLl9vYmoyID0gZm9ybTtcclxuICAgIHRoaXMuY29udHJvbE5hbWUgPSBmb3JtTmFtZTtcclxuICAgIHRoaXMuX3N0ciA9IGZ1bmN0aW9uTmFtZTtcclxuICAgIHRoaXMuYXJndW1lbnRzID0gYXJncztcclxuICAgIHRoaXMuSW52b2tlKCk7XHJcbiAgICByZXR1cm4gdGhpcy5yZXN1bHRTdHJpbmc7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+IENhbGxzIFJ1bigpIHN5bmNocm9ub3VzbHkgdG8gZXhlY3V0ZSB0aGUgY29tbWFuZC5cclxuICAvLy8gQnV0IGJlZm9yZSB0aGF0LCBpdCBleGVjdXRlcyB0aGUgR3VpQ29tbWFuZFF1ZXVlLlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgcHJpdmF0ZSBJbnZva2UoKTogdm9pZCB7XHJcbiAgICBHdWlDb21tYW5kUXVldWUuZ2V0SW5zdGFuY2UoKS5pbnZva2UoKTtcclxuICAgIGlmICh0aGlzLl9vYmoyIGluc3RhbmNlb2YgQ29udHJvbEJhc2UpIHtcclxuICAgICAgbGV0IGNvbnRyb2xCYXNlOiBDb250cm9sQmFzZSA9IDxDb250cm9sQmFzZT50aGlzLl9vYmoyO1xyXG4gICAgICB0aGlzLlRhc2tUYWcgPSBjb250cm9sQmFzZS5UYXNrVGFnO1xyXG4gICAgICB0aGlzLmNvbnRyb2xOYW1lID0gY29udHJvbEJhc2UuVW5pcXVlTmFtZTtcclxuICAgIH0gZWxzZSBpZiAodGhpcy5fb2JqMiBpbnN0YW5jZW9mIEd1aU1nRm9ybSkge1xyXG4gICAgICBsZXQgZ3VpTWdGb3JtOiBHdWlNZ0Zvcm0gPSA8R3VpTWdGb3JtPnRoaXMuX29iajI7XHJcbiAgICAgIHRoaXMuVGFza1RhZyA9IGd1aU1nRm9ybS5UYXNrVGFnO1xyXG4gICAgfSBlbHNlXHJcbiAgICAgIHRoaXMuVGFza1RhZyA9ICcwJzsgLy8gZ2VuZXJhbCBjb21tYW5kXHJcblxyXG4gICAgVUlCcmlkZ2UuZ2V0SW5zdGFuY2UoKS5FeGVjdXRlSW50ZXJhY3RpdmVDb21tYW5kKHRoaXMpO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBpbXBsZW1lbnRzIHRoZSBSdW5uYWJsZSBydW4gbWV0aG9kIGZvciBjYWxsaW5nIERpc3BsYXkuc3luY0V4ZWMoKTwvc3VtbWFyeT5cclxuICAvLyBSdW4oKTogdm9pZCB7XHJcbiAgLy8gICAvLyBTZXRzIHRoZSBjdXJyZW50Q29udGV4dElEXHJcbiAgLy8gICBsZXQgY29udGV4dElER3VhcmQgPSBuZXcgQ29udGV4dElER3VhcmQodGhpcy5fY29udGV4dElEKTtcclxuICAvLyAgIHRyeSB7XHJcbiAgLy8gICAgIHN3aXRjaCAodGhpcy5fY29tbWFuZFR5cGUpIHtcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0ZPTlRfTUVUUklDUzpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXRGb250TWV0cmljcygpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9SRVNPTFVUSU9OOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkdldFJlc29sdXRpb24oKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfQk9VTkRTOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkJvdW5kcygpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9WQUxVRTpcclxuICAvLyAgICAgICAgIHRoaXMub25WYWx1ZSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLlNFVF9CUk9XU0VSX1RFWFQ6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uU2V0QnJvd3NlclRleHQoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfQlJPV1NFUl9URVhUOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkdldEJyb3dzZXJUZXh0KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuQlJPV1NFUl9FWEVDVVRFOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkJyb3dzZXJFeGVjdXRlKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX1RPUF9JTkRFWDpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXRUb3BJbmRleCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLk1FU1NBR0VfQk9YOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbk1lc3NhZ2VCb3goKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5ESVJFQ1RPUllfRElBTE9HX0JPWDpcclxuICAvLyAgICAgICAgIHRoaXMub25EaXJlY3RvcnlEaWFsb2dCb3goKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfQ0xJRU5UX0JPVU5EUzpcclxuICAvLyAgICAgICAgIHRoaXMuZ2V0Q2xpZW50Qm91bmRzKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuU0VUX0VESVRfVEVYVDpcclxuICAvLyAgICAgICAgIHRoaXMub25TZXRFZGl0VGV4dCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLklOU0VSVF9FRElUX1RFWFQ6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uSW5zZXJ0RWRpdFRleHQoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5TRVRfU0VMRUNUSU9OOlxyXG4gIC8vICAgICAgICAgdGhpcy5vblNldFNlbGVjdGlvbigpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9TRUxFQ1RJT046XHJcbiAgLy8gICAgICAgICB0aGlzLm9uU2VsZWN0aW9uR2V0KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0NBUkVUX1BPUzpcclxuICAvLyAgICAgICAgIHRoaXMub25DYXJldFBvc0dldCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9JU19UT1BfT0ZfVEVYVEJPWDpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXRJc1RvcE9mVGV4dEJveCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9JU19FTkRfT0ZfVEVYVEJPWDpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXRJc0VuZE9mVGV4dEJveCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkNMSVBCT0FSRF9HRVRfQ09OVEVOVDpcclxuICAvLyAgICAgICAgIHRoaXMub25DbGlwYm9hcmRSZWFkKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuQ0xJUEJPQVJEX1NFVF9DT05URU5UOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkNsaXBib2FyZFdyaXRlKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuQ0xJUEJPQVJEX1BBU1RFOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkNsaXBib2FyZFBhc3RlKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuUE9TVF9LRVlfRVZFTlQ6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uUG9zdEtleUV2ZW50KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuUE9TVF9DSEFSX0VWRU5UOlxyXG4gIC8vICAgICAgICAgdGhpcy5vblBvc3RDaGFyRXZlbnQoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5TRVRfQ1VSU09SOlxyXG4gIC8vICAgICAgICAgdGhpcy5vblNldEN1cnNvcigpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkRJU1BPU0VfQUxMX0ZPUk1TOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkRpc3Bvc2VBbGxGb3JtcygpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9ST1dTX0lOX1BBR0U6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0Um93c0luUGFnZSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9ISURERU5fUk9XU19DT1VOVF9JTl9UQUJMRTpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXRIaWRkZW5Sb3dzQ291bnRJblRhYmxlKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuRklMRV9PUEVOX0RJQUxPR19CT1g6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uRmlsZU9wZW5EaWFsb2dCb3goKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5GSUxFX1NBVkVfRElBTE9HX0JPWDpcclxuICAvLyAgICAgICAgIHRoaXMub25GaWxlU2F2ZURpYWxvZ0JveCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkNSRUFURV9ESUFMT0c6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uQ3JlYXRlRGlhbG9nKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuT1BFTl9ESUFMT0c6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uT3BlbkRpYWxvZygpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkNMT1NFX0RJQUxPRzpcclxuICAvLyAgICAgICAgIHRoaXMub25DbG9zZURpYWxvZygpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLlNFVF9HRVRfU1VHR0VTVEVEX1ZBTFVFX0ZPUl9DSE9JQ0VfQ09OVFJPTF9PTl9UQUdEQVRBOlxyXG4gIC8vICAgICAgICAgdGhpcy5PblNldEdldFN1Z2dlc3RlZFZhbHVlT2ZDaG9pY2VDb250cm9sT25UYWdEYXRhKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0xBU1RfV0lORE9XX1NUQVRFOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkdldExhc3RXaW5kb3dTdGF0ZSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9GUkFNRVNfQk9VTkRTOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkdldEZyYW1lc0JvdW5kcygpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9MSU5LRURfUEFSRU5UX0lEWDpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXRMaW5rZWRQYXJlbnRJZHgoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfRk9STV9CT1VORFM6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uR2V0Rm9ybUJvdW5kcygpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9DT0xVTU5TX1NUQVRFOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkdldENvbHVtbnNTdGF0ZSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9GT1JNX0hBTkRMRTpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXRGb3JtSGFuZGxlKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0NUUkxfSEFORExFOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkdldEN0cmxIYW5kbGUoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5JU19GT1JNX0FDVElWRTpcclxuICAvLyAgICAgICAgIHRoaXMuaXNGb3JtQWN0aXZlKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0RST1BQRURfREFUQTpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXREcm9wcGVkRGF0YSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9EUk9QUEVEX1BPSU5UOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkdldERyb3BwZWRQb2ludCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkdFVF9EUk9QUEVEX1NFTEVDVElPTjpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXREcm9wcGVkU2VsZWN0aW9uKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuRFJPUF9GT1JNQVRfU1VQUE9SVEVEOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkNoZWNrRHJvcEZvcm1hdFByZXNlbnQoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfSVNfQkVHSU5fRFJBRzpcclxuICAvLyAgICAgICAgIHRoaXMub25HZXRJc0JlZ2luRHJhZygpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLkFDVElWQVRFX05FWFRfT1JfUFJFVklPVVNfTURJX0NISUxEOlxyXG4gIC8vICAgICAgICAgdGhpcy5PbkFjdGl2YXRlTmV4dE9yUHJldmlvdXNNRElDaGlsZCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLlNFTkRfSU1FX01TRzpcclxuICAvLyAgICAgICAgIHRoaXMub25TZW5kSW1lTXNnKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuQ0FOX0ZPQ1VTOlxyXG4gIC8vICAgICAgICAgdGhpcy5vbkNhbkZvY3VzKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX1NFTEVDVEVEX0lORElDRTpcclxuICAvLyAgICAgICAgIHRoaXMuT25HZXRTZWxlY3RlZEluZGljZSgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLlNFVF9TVUdHRVNURURfVkFMVUU6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uU2V0U3VnZ2VzdGVkVmFsdWUoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5NQVBfV0lER0VUX1RPX0dVSV9PQkpFQ1Q6XHJcbiAgLy8gICAgICAgICB0aGlzLk1hcFdpZGdldCgpO1xyXG4gIC8vICAgICAgICAgYnJlYWs7XHJcbiAgLy8gICAgICAgY2FzZSBJbnRlcmFjdGl2ZUNvbW1hbmRUeXBlLlJFTU9WRV9ETl9DT05UUk9MX1ZBTFVFX0NIQU5HRURfSEFORExFUjpcclxuICAvLyAgICAgICAgIHRoaXMuT25SZW1vdmVETkNvbnRyb2xWYWx1ZUNoYW5nZWRIYW5kbGVyKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuQUREX0ROX0NPTlRST0xfVkFMVUVfQ0hBTkdFRF9IQU5ETEVSOlxyXG4gIC8vICAgICAgICAgdGhpcy5PbkFkZEROQ29udHJvbFZhbHVlQ2hhbmdlZEhhbmRsZXIoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5HRVRfUlRGX1ZBTFVFX0JFRk9SRV9FTlRFUklOR19DT05UUk9MOlxyXG4gIC8vICAgICAgICAgdGhpcy5PbkdldFJ0ZlZhbHVlQmVmb3JlRW50ZXJpbmdDb250cm9sKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX01ESV9DSElMRF9DT1VOVDpcclxuICAvLyAgICAgICAgIHRoaXMuT25HZXRNRElDaGlsZENvdW50KCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuQUNUSVZBVEVfRk9STTpcclxuICAvLyAgICAgICAgIHRoaXMuT25BY3RpdmF0ZUZvcm0oKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5FTkFCTEVfTUVOVV9FTlRSWTpcclxuICAvLyAgICAgICAgIHRoaXMuT25FbmFibGVNZW51RW50cnkoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5TSE9XX0NPTlRFWFRfTUVOVTpcclxuICAvLyAgICAgICAgIHRoaXMuT25TaG93Q29udGV4dE1lbnUoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICAgIGNhc2UgSW50ZXJhY3RpdmVDb21tYW5kVHlwZS5JU19DT01CT19EUk9QUEVEX0RPV046XHJcbiAgLy8gICAgICAgICB0aGlzLk9uSXNDb21ib0Ryb3BwZWREb3duZFN0YXRlKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuSU5WT0tFX1VEUENPTU1BTkQ6XHJcbiAgLy8gICAgICAgICB0aGlzLm9uSW52b2tlVURQKCk7XHJcbiAgLy8gICAgICAgICBicmVhaztcclxuICAvLyAgICAgICBjYXNlIEludGVyYWN0aXZlQ29tbWFuZFR5cGUuR0VUX0hBU0lOREVOVDpcclxuICAvLyAgICAgICAgIHRoaXMuT25HZXRIYXNJbmRlbnQoKTtcclxuICAvLyAgICAgICAgIGJyZWFrO1xyXG4gIC8vICAgICB9XHJcbiAgLy8gICB9XHJcbiAgLy8gICBjYXRjaCAoZXgpIHtcclxuICAvLyAgICAgaWYgKGV4IGluc3RhbmNlb2YgRXhjZXB0aW9uKSB7XHJcbiAgLy8gICAgICAgRXZlbnRzLldyaXRlRXhjZXB0aW9uVG9Mb2coZXgpO1xyXG4gIC8vICAgICAgIHRocm93IGV4O1xyXG4gIC8vICAgICB9XHJcbiAgLy8gICAgIGVsc2VcclxuICAvLyAgICAgICB0aHJvdyBleDsgLy8gUmVzZXQgdGhlIGN1cnJlbnQgY29udGV4dElELlxyXG4gIC8vICAgfVxyXG4gIC8vICAgZmluYWxseSB7XHJcbiAgLy8gICAgIGNvbnRleHRJREd1YXJkLkRpc3Bvc2UoKTtcclxuICAvLyAgIH1cclxuICAvLyB9XHJcblxyXG5cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PiBnZXQgbnVtYmVyIG9mIHJvd3MgaW4gdGhlIHRhYmxlXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBvbkdldFJvd3NJblBhZ2UoKTogdm9pZCB7XHJcbiAgfVxyXG5cclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEd1aUludGVyYWN0aXZlIGV4dGVuZHMgR3VpSW50ZXJhY3RpdmVCYXNlIHtcclxuXHJcbn1cclxuIl19
|
|
@@ -6,6 +6,9 @@ import { VectorType } from "./VectorType";
|
|
|
6
6
|
export const EMPTY_DCREF = -2;
|
|
7
7
|
export const NOT_FOUND = GuiConstants.DEFAULT_VALUE_INT;
|
|
8
8
|
export class DcValues {
|
|
9
|
+
get HasReferences() {
|
|
10
|
+
return this._refCount > 0;
|
|
11
|
+
}
|
|
9
12
|
constructor(empty) {
|
|
10
13
|
this._id = 0;
|
|
11
14
|
this._type = StorageAttribute.NONE;
|
|
@@ -20,9 +23,6 @@ export class DcValues {
|
|
|
20
23
|
}
|
|
21
24
|
this._isNumericType = false;
|
|
22
25
|
}
|
|
23
|
-
get HasReferences() {
|
|
24
|
-
return this._refCount > 0;
|
|
25
|
-
}
|
|
26
26
|
GetAttr() {
|
|
27
27
|
return this._type;
|
|
28
28
|
}
|
|
@@ -211,4 +211,4 @@ export class DcValues {
|
|
|
211
211
|
return NString.Format("{{DCValues 0x{0:X8}, {1} refs}}", this._id, this._refCount);
|
|
212
212
|
}
|
|
213
213
|
}
|
|
214
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGNWYWx1ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ndWkvc3JjL21hbmFnZW1lbnQvZGF0YS9EY1ZhbHVlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDaEQsT0FBTyxFQUFDLGdCQUFnQixFQUFFLE9BQU8sRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQzNELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFDcEMsT0FBTyxFQUFDLG9CQUFvQixFQUFFLE9BQU8sRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25FLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFHeEMsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFXLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBVyxZQUFZLENBQUMsaUJBQWlCLENBQUM7QUFHaEUsTUFBTSxPQUFPLFFBQVE7SUFxQm5CLFlBQVksS0FBYztRQWxCbEIsUUFBRyxHQUFXLENBQUMsQ0FBQztRQUNoQixVQUFLLEdBQXFCLGdCQUFnQixDQUFDLElBQUksQ0FBQztRQUNoRCxjQUFTLEdBQVcsQ0FBQyxDQUFDO1FBQ3RCLGVBQVUsR0FBYyxJQUFJLENBQUM7UUFDN0IsbUJBQWMsR0FBWSxLQUFLLENBQUM7UUFDaEMsYUFBUSxHQUFlLElBQUksQ0FBQztRQUM1QixjQUFTLEdBQWEsSUFBSSxDQUFDO1FBQzNCLGNBQVMsR0FBYSxJQUFJLENBQUM7UUFZakMsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsR0FBRyxHQUFHLFdBQVcsQ0FBQztTQUN4QjtRQUNELElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDO0lBQzlCLENBQUM7SUFkRCxJQUFJLGFBQWE7UUFDZixPQUFPLElBQUksQ0FBQyxTQUFTLEdBQUcs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QyxTQUFTLEdBQUcsQ0FBQyxFQUFFO1lBQ3RCLE1BQU0sSUFBSSxvQkFBb0IsQ0FBQyx5REFBeUQsQ0FBQyxDQUFDO1NBQzNGO0lBQ0gsQ0FBQztJQUtELFFBQVE7UUFDTixPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsaUNBQWlDLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDckYsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJUmVmZXJlbmNlZE9iamVjdH0gZnJvbSBcIi4vSVJlZmVyZW5jZWRPYmplY3RcIjtcclxuaW1wb3J0IHtHdWlDb25zdGFudHN9IGZyb20gXCIuLi8uLi9HdWlDb25zdGFudHNcIjtcclxuaW1wb3J0IHtTdG9yYWdlQXR0cmlidXRlLCBTdHJVdGlsfSBmcm9tIFwiQG1hZ2ljLXhwYS91dGlsc1wiO1xyXG5pbXBvcnQge05VTV9UWVBFfSBmcm9tIFwiLi9OVU1fVFlQRVwiO1xyXG5pbXBvcnQge0FwcGxpY2F0aW9uRXhjZXB0aW9uLCBOU3RyaW5nfSBmcm9tIFwiQG1hZ2ljLXhwYS9tc2NvcmVsaWJcIjtcclxuaW1wb3J0IHtWZWN0b3JUeXBlfSBmcm9tIFwiLi9WZWN0b3JUeXBlXCI7XHJcblxyXG5cclxuZXhwb3J0IGNvbnN0IEVNUFRZX0RDUkVGOiBudW1iZXIgPSAtMjtcclxuZXhwb3J0IGNvbnN0IE5PVF9GT1VORDogbnVtYmVyID0gR3VpQ29uc3RhbnRzLkRFRkFVTFRfVkFMVUVfSU5UO1xyXG5cclxuXHJcbmV4cG9ydCBjbGFzcyBEY1ZhbHVlcyBpbXBsZW1lbnRzIElSZWZlcmVuY2VkT2JqZWN0IHtcclxuXHJcblxyXG4gIHByaXZhdGUgX2lkOiBudW1iZXIgPSAwO1xyXG4gIHByaXZhdGUgX3R5cGU6IFN0b3JhZ2VBdHRyaWJ1dGUgPSBTdG9yYWdlQXR0cmlidXRlLk5PTkU7IC8vIEFscGhhIHwgTnVtZXJpYyB8IERhdGUgfCBUaW1lIHwgTG9naWNhbFxyXG4gIHByaXZhdGUgX3JlZkNvdW50OiBudW1iZXIgPSAwOyAvLyByZWZlcmVuY2VzIGNvdW50ZXJcclxuICBwcml2YXRlIF9udWxsRmxhZ3M6IGJvb2xlYW5bXSA9IG51bGw7IC8vIGxpbmtlZCBudWxsIHZhbHVlIGZsYWdzXHJcbiAgcHJpdmF0ZSBfaXNOdW1lcmljVHlwZTogYm9vbGVhbiA9IGZhbHNlOyAvLyB0cnVlIGlmIHRoZSB0eXBlIGlzIG9uZSBvZjogbnVtZXJpYywgZGF0ZSwgdGltZVxyXG4gIHByaXZhdGUgX251bVZhbHM6IE5VTV9UWVBFW10gPSBudWxsOyAvLyBudW1lcmljIGxpbmtlZCB2YWx1ZXNcclxuICBwcml2YXRlIF9saW5rVmFsczogc3RyaW5nW10gPSBudWxsOyAvLyBsaW5rZWQgdmFsdWVzXHJcbiAgcHJpdmF0ZSBfZGlzcFZhbHM6IHN0cmluZ1tdID0gbnVsbDsgLy8gZGlzcGxheSB2YWx1ZXNcclxuXHJcbiAgZ2V0IEhhc1JlZmVyZW5jZXMoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fcmVmQ291bnQgPiAwO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vL1xyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lPVwiZW1wdHlcIj48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImlzVmVjdG9yXCI+PC9wYXJhbT5cclxuICBjb25zdHJ1Y3RvcihlbXB0eTogYm9vbGVhbikge1xyXG4gICAgaWYgKGVtcHR5KSB7XHJcbiAgICAgIHRoaXMuX2lkID0gRU1QVFlfRENSRUY7XHJcbiAgICB9XHJcbiAgICB0aGlzLl9pc051bWVyaWNUeXBlID0gZmFsc2U7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIFJldHVybnMgdGhlIGF0dHIgb2YgRGNWYWx1ZXNcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIEdldEF0dHIoKTogU3RvcmFnZUF0dHJpYnV0ZSB7XHJcbiAgICByZXR1cm4gdGhpcy5fdHlwZTtcclxuICB9XHJcblxyXG4gIHNldFR5cGUodHlwZTogU3RvcmFnZUF0dHJpYnV0ZSk6IHZvaWQge1xyXG4gICAgdGhpcy5fdHlwZSA9IHR5cGU7XHJcbiAgICBpZiAodGhpcy5fdHlwZSA9PT0gU3RvcmFnZUF0dHJpYnV0ZS5NRU1PKVxyXG4gICAgICB0aGlzLl90eXBlID0gU3RvcmFnZUF0dHJpYnV0ZS5BTFBIQTtcclxuICAgIGlmICh0aGlzLl90eXBlID09PSBTdG9yYWdlQXR0cmlidXRlLk5VTUVSSUMgfHwgdGhpcy5fdHlwZSA9PT0gU3RvcmFnZUF0dHJpYnV0ZS5EQVRFIHx8XHJcbiAgICAgIHRoaXMuX3R5cGUgPT09IFN0b3JhZ2VBdHRyaWJ1dGUuVElNRSkge1xyXG4gICAgICB0aGlzLl9pc051bWVyaWNUeXBlID0gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIFNldElEKG5ld0lkOiBudW1iZXIpOiB2b2lkIHtcclxuICAgIHRoaXMuX2lkID0gbmV3SWQ7XHJcbiAgfVxyXG5cclxuICBTZXREaXNwbGF5VmFsdWVzKGRpc3BsYXlWYWx1ZXM6IHN0cmluZ1tdKTogdm9pZCB7XHJcbiAgICBpZiAoZGlzcGxheVZhbHVlcyAhPT0gbnVsbClcclxuICAgICAgdGhpcy5fZGlzcFZhbHMgPSBkaXNwbGF5VmFsdWVzLnNsaWNlKCk7XHJcbiAgICBlbHNlXHJcbiAgICAgIHRoaXMuX2Rpc3BWYWxzID0gbnVsbDtcclxuICB9XHJcblxyXG4gIFNldExpbmtWYWx1ZXMobGlua1ZhbHVlczogc3RyaW5nW10pOiB2b2lkIHtcclxuICAgIGlmIChsaW5rVmFsdWVzICE9PSBudWxsKVxyXG4gICAgICB0aGlzLl9saW5rVmFscyA9IGxpbmtWYWx1ZXMuc2xpY2UoKTtcclxuICAgIGVsc2VcclxuICAgICAgdGhpcy5fbGlua1ZhbHMgPSBudWxsO1xyXG5cclxuICAgIHRoaXMuc2V0TnVtZXJpY1ZhbHMoKTtcclxuICB9XHJcblxyXG4gIHNldE51bGxGbGFncyhudWxsRmxhZ3M6IGJvb2xlYW5bXSk6IHZvaWQge1xyXG4gICAgaWYgKG51bGxGbGFncyAhPT0gbnVsbClcclxuICAgICAgdGhpcy5fbnVsbEZsYWdzID0gbnVsbEZsYWdzLnNsaWNlKCk7XHJcblxyXG4gICAgZWxzZVxyXG4gICAgICB0aGlzLl9udWxsRmxhZ3MgPSBudWxsO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXROdW1lcmljVmFscygpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl9pc051bWVyaWNUeXBlICYmIHRoaXMuX2xpbmtWYWxzICE9PSBudWxsKSB7XHJcbiAgICAgIHRoaXMuX251bVZhbHMgPSBuZXcgQXJyYXk8TlVNX1RZUEU+KHRoaXMuX2xpbmtWYWxzLmxlbmd0aCk7XHJcbiAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IDA7IGkgPCB0aGlzLl9saW5rVmFscy5sZW5ndGg7IGkgPSBpICsgMSkge1xyXG4gICAgICAgIHRoaXMuX251bVZhbHNbaV0gPSBuZXcgTlVNX1RZUEUodGhpcy5fbGlua1ZhbHNbaV0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgdGhpcy5fbnVtVmFscyA9IG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJucyB0aGUgaWQgb2YgdGhpcyBkY1ZhbHMgb2JqZWN0XHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBnZXRJZCgpOiBudW1iZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuX2lkO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybiB0aGUgZGlzcGxheSB2YWx1ZXNcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIGdldERpc3BWYWxzKCk6IHN0cmluZ1tdIHtcclxuICAgIHJldHVybiB0aGlzLl9kaXNwVmFscztcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gcmV0dXJuIExpbmsgZmllbGQgdmFsdWVzLlxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgR2V0TGlua1ZhbHMoKTogc3RyaW5nW10ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2xpbmtWYWxzO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybnMgdGhlIGFycmF5IG9mIGluZGljZSBmb3IgYW4gaXRlbSBpbiB0aGUgbGlzdCBieSBjb21wYXJpbmcgdGhlIG1nVmFsIHRvIHRoZSBsaW5rZWQgdmFsdWUgb3IgKC0xKSBpZiBub25lIHdhc1xyXG4gIC8vLyAgIGZvdW5kXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcIm1nVmFsXCI+dGhlIGludGVybmFsIHZhbHVlIHRvIGxvb2sgZm9yIDwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJpc1ZlY3RvclZhbHVlXCI+RGVub3RlcyB3aGV0aGVyIHRoZSB2YWx1ZSBpbiBtZ1ZhbCBzaG91bGQgYmUgdHJlYXRlZCBhcyBhIHZlY3RvciAodHJ1ZSkgb3Igbm90IChmYWxzZSkuPC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcImlzTnVsbFwiPnRydWUgaWYgdGhlIHZhbHVlIHRvIGxvb2sgZm9yIGlzIG51bGwgPC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcImV4dHJhVmFsc1wiPkFkZGl0aW9uYWwgdmFsdWVzLCBwcmVwZW5kZWQgdG8gdGhlIHNlYXJjaGVkIHZhbHVlcy48L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImV4dHJhTnVtc1wiPkFkZGl0aW9uYWwgbnVtZXJpYyB2YWx1ZXMgdG8gYmUgcHJlcGVuZGVkIHRvIHRoZSBzZWFyY2hlZCB2YWx1ZXMuPC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcInNwbGl0Q29tbWFTZXBlcmF0ZWRWYWxzXCI+dG8gc3BsaXQgdGhlIHZhbCBvbiBjb21tYSBvciBub3QgPC9wYXJhbT5cclxuICBnZXRJbmRleE9mKG1nVmFsOiBzdHJpbmcsIGlzVmVjdG9yVmFsdWU6IGJvb2xlYW4sIGlzTnVsbDogYm9vbGVhbiwgZXh0cmFWYWxzOiBzdHJpbmdbXSwgZXh0cmFOdW1zOiBOVU1fVFlQRVtdLCBzcGxpdENvbW1hU2VwZXJhdGVkVmFsczogYm9vbGVhbik6IG51bWJlcltdIHtcclxuICAgIGxldCByZXN1bHQ6IG51bWJlciA9IE5PVF9GT1VORDtcclxuXHJcbiAgICBsZXQgdG1wTWdWYWw6IHN0cmluZztcclxuICAgIGxldCBjdHJsTnVtVmFsOiBOVU1fVFlQRTtcclxuICAgIGxldCB0cmltbWVkVmFsOiBzdHJpbmc7XHJcbiAgICBsZXQgdmFsczogc3RyaW5nW10gPSBudWxsO1xyXG4gICAgbGV0IG51bXM6IE5VTV9UWVBFW10gPSBudWxsO1xyXG4gICAgbGV0IG9mZnNldDogbnVtYmVyID0gMDtcclxuICAgIGxldCBmaXJzdEZpdE1hdGNoSWR4O1xyXG4gICAgbGV0IGZpcnN0Rml0TWF0Y2hMZW5ndGg6IG51bWJlciA9IC0xO1xyXG4gICAgbGV0IG1pbkxlbmd0aDogbnVtYmVyID0gLTE7XHJcbiAgICBsZXQgY29tcFN0cjogc3RyaW5nID0gXCJcIjtcclxuICAgIGxldCBpbmRpY2U6IG51bWJlcltdID0gbnVsbDtcclxuICAgIGxldCB2YWx1ZXM6IHN0cmluZ1tdID0gbnVsbDtcclxuXHJcbiAgICBpZiAoaXNOdWxsKSB7XHJcbiAgICAgIGxldCBpOiBudW1iZXIgPSAwO1xyXG4gICAgICBpbmRpY2UgPSBbXHJcbiAgICAgICAgTk9UX0ZPVU5EXHJcbiAgICAgIF07XHJcbiAgICAgIGZvciAoaSA9IDA7IHRoaXMuX251bGxGbGFncyAhPT0gbnVsbCAmJiBpIDwgdGhpcy5fbnVsbEZsYWdzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuX251bGxGbGFnc1tpXSkge1xyXG4gICAgICAgICAgaW5kaWNlWzBdID0gaTtcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgcmV0dXJuIGluZGljZTtcclxuICAgIH1cclxuICAgIGlmICghaXNWZWN0b3JWYWx1ZSkge1xyXG4gICAgICAvLyBzcGxpdCB0aGUgY29tbWEgc2VwYXJhdGVkIHZhbHVlcztcclxuICAgICAgaWYgKHNwbGl0Q29tbWFTZXBlcmF0ZWRWYWxzKSB7XHJcbiAgICAgICAgdmFsdWVzID0gbWdWYWwuc3BsaXQoJywnKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICB2YWx1ZXMgPSBbXHJcbiAgICAgICAgICBtZ1ZhbFxyXG4gICAgICAgIF07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICBsZXQgdmVjdG9yVHlwZTogVmVjdG9yVHlwZSA9IG5ldyBWZWN0b3JUeXBlKG1nVmFsKTtcclxuICAgICAgdmFsdWVzID0gdmVjdG9yVHlwZS5HZXRDZWxsVmFsdWVzKCk7XHJcbiAgICB9XHJcbiAgICBpbmRpY2UgPSBuZXcgQXJyYXk8bnVtYmVyPih2YWx1ZXMubGVuZ3RoKTtcclxuXHJcbiAgICBmb3IgKGxldCBpQ3RyOiBudW1iZXIgPSAwOyBpQ3RyIDwgdmFsdWVzLmxlbmd0aDsgaUN0ciA9IGlDdHIgKyAxKSB7XHJcbiAgICAgIHJlc3VsdCA9IE5PVF9GT1VORDtcclxuICAgICAgZmlyc3RGaXRNYXRjaElkeCA9IE5PVF9GT1VORDtcclxuXHJcbiAgICAgIHRtcE1nVmFsID0gdmFsdWVzW2lDdHJdO1xyXG5cclxuICAgICAgaWYgKHRoaXMuX2lzTnVtZXJpY1R5cGUgfHwgZXh0cmFOdW1zICE9PSBudWxsKSB7XHJcbiAgICAgICAgICBjdHJsTnVtVmFsID0gbmV3IE5VTV9UWVBFKHRtcE1nVmFsKTtcclxuICAgICAgICB0cmltbWVkVmFsID0gdG1wTWdWYWw7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgY3RybE51bVZhbCA9IG51bGw7XHJcbiAgICAgICAgdHJpbW1lZFZhbCA9IFN0clV0aWwucnRyaW0odG1wTWdWYWwpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAvLyBSdW4gdHdvIHBhc3Nlcy4gRmlyc3Qgb25lIG9uIGV4dHJhIHZhbHVlcywgc2Vjb25kIG9uZSBvbiB2YWx1ZXMgYmVsb25naW5nIHRvIHRoaXMgb2JqZWN0XHJcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgMiAmJiByZXN1bHQgPT09IE5PVF9GT1VORDsgaSsrKSB7XHJcbiAgICAgICAgc3dpdGNoIChpKSB7XHJcbiAgICAgICAgICBjYXNlIDA6XHJcbiAgICAgICAgICAgIHZhbHMgPSBleHRyYVZhbHM7XHJcbiAgICAgICAgICAgIG51bXMgPSBleHRyYU51bXM7XHJcbiAgICAgICAgICAgIG9mZnNldCA9IDA7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgICAgIGNhc2UgMTpcclxuICAgICAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgICAgIGlmICh0aGlzLl9pc051bWVyaWNUeXBlIHx8IG51bXMgIT0gbnVsbClcclxuICAgICAgICAgICAgICBvZmZzZXQgPSAobnVtcyA9PSBudWxsID8gMCA6IG51bXMubGVuZ3RoKTtcclxuICAgICAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICAgIG9mZnNldCA9ICh2YWxzID09IG51bGwgPyAwIDogdmFscy5sZW5ndGgpO1xyXG4gICAgICAgICAgICB2YWxzID0gdGhpcy5fbGlua1ZhbHM7XHJcbiAgICAgICAgICAgIG51bXMgPSB0aGlzLl9udW1WYWxzO1xyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmICh2YWxzICE9IG51bGwpIHtcclxuICAgICAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgdmFscy5sZW5ndGggJiYgcmVzdWx0ID09PSBOT1RfRk9VTkQ7IGorKykge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5faXNOdW1lcmljVHlwZSB8fCBudW1zICE9IG51bGwpIHtcclxuICAgICAgICAgICAgICBpZiAoTlVNX1RZUEUubnVtX2NtcChjdHJsTnVtVmFsLCBudW1zW2pdKSA9PT0gMCB8fCB0bXBNZ1ZhbCA9PT0gdmFsc1tqXSB8fFxyXG4gICAgICAgICAgICAgICAgdG1wTWdWYWwgPT09IHZhbHNbal0pIHtcclxuICAgICAgICAgICAgICAgIC8vIHRoZSBudW1lcmljIHR5cGUgaXMgZm91bmQgZXhhY3RseVxyXG4gICAgICAgICAgICAgICAgcmVzdWx0ID0gaiArIG9mZnNldDtcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICBpZiAodmFsc1tqXSA9PT0gdG1wTWdWYWwgfHwgdHJpbW1lZFZhbC5sZW5ndGggPiAwICYmIFN0clV0aWwucnRyaW0odmFsc1tqXSkgPT09IHRyaW1tZWRWYWwpIHtcclxuICAgICAgICAgICAgICAgIHJlc3VsdCA9IGogKyBvZmZzZXQ7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgIC8vIElmIE1hZ2ljIHNlbnQgdXMgYSBibGFuayB2YWx1ZSwgYW5kIHN1Y2ggYSB2YWx1ZSBleGlzdHMgaW4gdGhlIFwibm9uIERDIHJhbmdlXCIgc2VsZWN0IGl0LlxyXG4gICAgICAgICAgICAgIC8vIFFDUiAjIDc1MTAzNyAtIHNlYXJjaCBmb3IgYmxhbmsgdmFsdWVzIGV2ZW4gaW4gdGhlIGxpbmtlZCB2YWx1ZXMgYXJyYXkgb2YgdGhlIGRhdGEgY29udHJvbFxyXG4gICAgICAgICAgICAgIGlmICh0cmltbWVkVmFsLmxlbmd0aCA9PT0gMCAmJiBTdHJVdGlsLnJ0cmltKHZhbHNbal0pLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICAgICAgICAgICAgcmVzdWx0ID0gaiArIG9mZnNldDtcclxuICAgICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgLy8gc2F2ZSB0aGUgZmlyc3QgZml0dGluZyByZXN1bHRcclxuICAgICAgICAgICAgICAvLyBmaXhlZCBidWcjOiA5MzUwMTUsIHRoZSBjb21wYXJpc29uIHdpbGwgYmUgYWNjb3JkaW5nIHRvIHRoZSBtaW4gbGVuZ3RoIG9mIHRoZSBkYXRhICYgdGhlIG9wdGlvbnNcclxuICAgICAgICAgICAgICBpZiAocmVzdWx0ID09PSBOT1RfRk9VTkQgJiYgdHJpbW1lZFZhbC5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICBtaW5MZW5ndGggPSBNYXRoLm1pbih0cmltbWVkVmFsLmxlbmd0aCwgdmFsc1tqXS5sZW5ndGgpO1xyXG4gICAgICAgICAgICAgICAgY29tcFN0ciA9IHRyaW1tZWRWYWwuc3Vic3RyKDAsIG1pbkxlbmd0aCk7XHJcbiAgICAgICAgICAgICAgICBpZiAoY29tcFN0ci5sZW5ndGggPiAwICYmIHZhbHNbal0uc3RhcnRzV2l0aChjb21wU3RyKSkge1xyXG4gICAgICAgICAgICAgICAgICAvLyBpZiB0aGVyZSBpcyBhIG1pbiBsZW5ndGggbWF0Y2gsIGNoZWNrIGlmIGl0IGlzIHRoZSBmaXJzdCBmaXQgbWF0Y2guXHJcbiAgICAgICAgICAgICAgICAgIC8vIGVnOiBpZiBsaXN0IGhhcyBhLGFhYSxhYWFhYSBhbmQgZmllbGQgdmFsdWUgaXMgJ2FhJyB0aGVuIGZpcnN0IGZpdCBtYXRjaCBpcyAnYWFhJy5cclxuICAgICAgICAgICAgICAgICAgLy8gaWYgbGlzdCBpcyBhLGFhYWFhLGFhYSBhbmQgZmllbGQgdmFsdWUgaXMgJ2FhJyB0aGVuIGZpcnN0IGZpdCBtYXRjaCBpcyAnYWFhYWEnLlxyXG4gICAgICAgICAgICAgICAgICAvLyBpZiBmaXJzdCBmaXQgbm90IGZvdW5kLCB0aGVuIGNsb3Nlc3QgbWF0Y2ggaXMgdXNlZCAoZWctIGlmIGZpZWxkIHZhbHVlIGlzXHJcbiAgICAgICAgICAgICAgICAgIC8vICdhYWFhYWFhYWEnIGluIGJvdGggdGhlIGFib3ZlIGxpc3QsIGNsb3Nlc3QgbWF0Y2ggd291bGQgYmUgJ2FhYWFhJykuXHJcbiAgICAgICAgICAgICAgICAgIGlmIChtaW5MZW5ndGggPiBmaXJzdEZpdE1hdGNoTGVuZ3RoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZmlyc3RGaXRNYXRjaElkeCA9IGogKyBvZmZzZXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgZmlyc3RGaXRNYXRjaExlbmd0aCA9IG1pbkxlbmd0aDtcclxuICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKHJlc3VsdCA9PT0gTk9UX0ZPVU5EKVxyXG4gICAgICAgIHJlc3VsdCA9IGZpcnN0Rml0TWF0Y2hJZHg7XHJcblxyXG4gICAgICAvLyBzdG9yZSBpbmRpY2UgZm91bmQgaW4gaW50ZWdlciBhcnJheS5cclxuICAgICAgaW5kaWNlW2lDdHJdID0gcmVzdWx0O1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBpbmRpY2U7XHJcbiAgfVxyXG5cclxuLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIGdldHMgdGhlIHZhbHVlIG9mIGEgc3BlY2lmaWMgbGluayBpdGVtXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcImlkeFwiPnRoZSBpbmRleCBvZiB0aGUgbGluayB2YWx1ZSAoMCA9IGZpcnN0IGl0ZW0pIDwvcGFyYW0+XHJcbiAgLy8vIDxyZXR1cm5zPiBNYWdpYyB2YWx1ZSBvZiB0aGUgaXRlbSA8L3JldHVybnM+XHJcbiAgZ2V0TGlua1ZhbHVlKGlkeDogbnVtYmVyKTogc3RyaW5nIHtcclxuICAgIGxldCBsbmtWYWw6IHN0cmluZyA9IG51bGw7XHJcblxyXG4gICAgaWYgKHRoaXMuX2xpbmtWYWxzICE9PSBudWxsKSB7XHJcbiAgICAgIGxua1ZhbCA9IHRoaXMuX2xpbmtWYWxzW2lkeF07XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGxua1ZhbDtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICByZXR1cm5zIHRydWUsIGlmIHZhbHVlIGF0IGluZGV4IGlkeCBpcyBudWxsXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICAvLy8gPHBhcmFtIG5hbWUgPSBcInRoZVwiPmluZGV4IG9mIGFuIGl0ZW0gaW4gdGhlIGxpc3QgPC9wYXJhbT5cclxuICBpc051bGwoaWR4OiBudW1iZXIpOiBib29sZWFuIHtcclxuICAgIGlmICh0aGlzLl9udWxsRmxhZ3MgPT0gbnVsbClcclxuICAgIC8vIGhhcHBlbnMgZm9yIG5vbi1EQyBjaG9pY2UgY29udHJvbHNcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG5cclxuICAgIHJldHVybiB0aGlzLl9udWxsRmxhZ3NbaWR4XTtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBpbmNyZWFzZSB0aGUgcmVmZXJlbmNlcyBjb3VudCBieSAxXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBBZGRSZWZlcmVuY2UoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9yZWZDb3VudCsrO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIGRlY3JlYXNlIHRoZSByZWZlcmVuY2VzIGNvdW50IGJ5IDFcclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIFJlbW92ZVJlZmVyZW5jZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3JlZkNvdW50LS07XHJcbiAgICBpZiAodGhpcy5fcmVmQ291bnQgPCAwKSB7XHJcbiAgICAgIHRocm93IG5ldyBBcHBsaWNhdGlvbkV4Y2VwdGlvbihcImluIGRjVmFscy5kZWNyZWFzZSgpIHJlZmVyZW5jZXMgY291bnQgaXMgbGVzcyB0aGFuIHplcm9cIik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJucyB0cnVlIGlmIHRoZSByZWZlcmVuY2VzIGNvdW50IGlzIHplcm9cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIFRvU3RyaW5nKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gTlN0cmluZy5Gb3JtYXQoXCJ7e0RDVmFsdWVzIDB4ezA6WDh9LCB7MX0gcmVmc319XCIsIHRoaXMuX2lkLCB0aGlzLl9yZWZDb3VudCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
214
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRGNWYWx1ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9ndWkvc3JjL21hbmFnZW1lbnQvZGF0YS9EY1ZhbHVlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDaEQsT0FBTyxFQUFDLGdCQUFnQixFQUFFLE9BQU8sRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQzNELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxZQUFZLENBQUM7QUFDcEMsT0FBTyxFQUFDLG9CQUFvQixFQUFFLE9BQU8sRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25FLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFHeEMsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFXLENBQUMsQ0FBQyxDQUFDO0FBQ3RDLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBVyxZQUFZLENBQUMsaUJBQWlCLENBQUM7QUFHaEUsTUFBTSxPQUFPLFFBQVE7SUFZbkIsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBT0QsWUFBWSxLQUFjO1FBbEJsQixRQUFHLEdBQVcsQ0FBQyxDQUFDO1FBQ2hCLFVBQUssR0FBcUIsZ0JBQWdCLENBQUMsSUFBSSxDQUFDO1FBQ2hELGNBQVMsR0FBVyxDQUFDLENBQUM7UUFDdEIsZUFBVSxHQUFjLElBQUksQ0FBQztRQUM3QixtQkFBYyxHQUFZLEtBQUssQ0FBQztRQUNoQyxhQUFRLEdBQWUsSUFBSSxDQUFDO1FBQzVCLGNBQVMsR0FBYSxJQUFJLENBQUM7UUFDM0IsY0FBUyxHQUFhLElBQUksQ0FBQztRQVlqQyxJQUFJLEtBQUssRUFBRTtZQUNULElBQUksQ0FBQyxHQUFHLEdBQUcsV0FBVyxDQUFDO1NBQ3hCO1FBQ0QsSUFBSSxDQUFDLGNBQWMsR0FBRyxL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U0FBUyxHQUFHLENBQUMsRUFBRTtZQUN0QixNQUFNLElBQUksb0JBQW9CLENBQUMseURBQXlELENBQUMsQ0FBQztTQUMzRjtJQUNILENBQUM7SUFLRCxRQUFRO1FBQ04sT0FBTyxPQUFPLENBQUMsTUFBTSxDQUFDLGlDQUFpQyxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3JGLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SVJlZmVyZW5jZWRPYmplY3R9IGZyb20gXCIuL0lSZWZlcmVuY2VkT2JqZWN0XCI7XHJcbmltcG9ydCB7R3VpQ29uc3RhbnRzfSBmcm9tIFwiLi4vLi4vR3VpQ29uc3RhbnRzXCI7XHJcbmltcG9ydCB7U3RvcmFnZUF0dHJpYnV0ZSwgU3RyVXRpbH0gZnJvbSBcIkBtYWdpYy14cGEvdXRpbHNcIjtcclxuaW1wb3J0IHtOVU1fVFlQRX0gZnJvbSBcIi4vTlVNX1RZUEVcIjtcclxuaW1wb3J0IHtBcHBsaWNhdGlvbkV4Y2VwdGlvbiwgTlN0cmluZ30gZnJvbSBcIkBtYWdpYy14cGEvbXNjb3JlbGliXCI7XHJcbmltcG9ydCB7VmVjdG9yVHlwZX0gZnJvbSBcIi4vVmVjdG9yVHlwZVwiO1xyXG5cclxuXHJcbmV4cG9ydCBjb25zdCBFTVBUWV9EQ1JFRjogbnVtYmVyID0gLTI7XHJcbmV4cG9ydCBjb25zdCBOT1RfRk9VTkQ6IG51bWJlciA9IEd1aUNvbnN0YW50cy5ERUZBVUxUX1ZBTFVFX0lOVDtcclxuXHJcblxyXG5leHBvcnQgY2xhc3MgRGNWYWx1ZXMgaW1wbGVtZW50cyBJUmVmZXJlbmNlZE9iamVjdCB7XHJcblxyXG5cclxuICBwcml2YXRlIF9pZDogbnVtYmVyID0gMDtcclxuICBwcml2YXRlIF90eXBlOiBTdG9yYWdlQXR0cmlidXRlID0gU3RvcmFnZUF0dHJpYnV0ZS5OT05FOyAvLyBBbHBoYSB8IE51bWVyaWMgfCBEYXRlIHwgVGltZSB8IExvZ2ljYWxcclxuICBwcml2YXRlIF9yZWZDb3VudDogbnVtYmVyID0gMDsgLy8gcmVmZXJlbmNlcyBjb3VudGVyXHJcbiAgcHJpdmF0ZSBfbnVsbEZsYWdzOiBib29sZWFuW10gPSBudWxsOyAvLyBsaW5rZWQgbnVsbCB2YWx1ZSBmbGFnc1xyXG4gIHByaXZhdGUgX2lzTnVtZXJpY1R5cGU6IGJvb2xlYW4gPSBmYWxzZTsgLy8gdHJ1ZSBpZiB0aGUgdHlwZSBpcyBvbmUgb2Y6IG51bWVyaWMsIGRhdGUsIHRpbWVcclxuICBwcml2YXRlIF9udW1WYWxzOiBOVU1fVFlQRVtdID0gbnVsbDsgLy8gbnVtZXJpYyBsaW5rZWQgdmFsdWVzXHJcbiAgcHJpdmF0ZSBfbGlua1ZhbHM6IHN0cmluZ1tdID0gbnVsbDsgLy8gbGlua2VkIHZhbHVlc1xyXG4gIHByaXZhdGUgX2Rpc3BWYWxzOiBzdHJpbmdbXSA9IG51bGw7IC8vIGRpc3BsYXkgdmFsdWVzXHJcblxyXG4gIGdldCBIYXNSZWZlcmVuY2VzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3JlZkNvdW50ID4gMDtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy9cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIC8vLyA8cGFyYW0gbmFtZT1cImVtcHR5XCI+PC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJpc1ZlY3RvclwiPjwvcGFyYW0+XHJcbiAgY29uc3RydWN0b3IoZW1wdHk6IGJvb2xlYW4pIHtcclxuICAgIGlmIChlbXB0eSkge1xyXG4gICAgICB0aGlzLl9pZCA9IEVNUFRZX0RDUkVGO1xyXG4gICAgfVxyXG4gICAgdGhpcy5faXNOdW1lcmljVHlwZSA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyBSZXR1cm5zIHRoZSBhdHRyIG9mIERjVmFsdWVzXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBHZXRBdHRyKCk6IFN0b3JhZ2VBdHRyaWJ1dGUge1xyXG4gICAgcmV0dXJuIHRoaXMuX3R5cGU7XHJcbiAgfVxyXG5cclxuICBzZXRUeXBlKHR5cGU6IFN0b3JhZ2VBdHRyaWJ1dGUpOiB2b2lkIHtcclxuICAgIHRoaXMuX3R5cGUgPSB0eXBlO1xyXG4gICAgaWYgKHRoaXMuX3R5cGUgPT09IFN0b3JhZ2VBdHRyaWJ1dGUuTUVNTylcclxuICAgICAgdGhpcy5fdHlwZSA9IFN0b3JhZ2VBdHRyaWJ1dGUuQUxQSEE7XHJcbiAgICBpZiAodGhpcy5fdHlwZSA9PT0gU3RvcmFnZUF0dHJpYnV0ZS5OVU1FUklDIHx8IHRoaXMuX3R5cGUgPT09IFN0b3JhZ2VBdHRyaWJ1dGUuREFURSB8fFxyXG4gICAgICB0aGlzLl90eXBlID09PSBTdG9yYWdlQXR0cmlidXRlLlRJTUUpIHtcclxuICAgICAgdGhpcy5faXNOdW1lcmljVHlwZSA9IHRydWU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBTZXRJRChuZXdJZDogbnVtYmVyKTogdm9pZCB7XHJcbiAgICB0aGlzLl9pZCA9IG5ld0lkO1xyXG4gIH1cclxuXHJcbiAgU2V0RGlzcGxheVZhbHVlcyhkaXNwbGF5VmFsdWVzOiBzdHJpbmdbXSk6IHZvaWQge1xyXG4gICAgaWYgKGRpc3BsYXlWYWx1ZXMgIT09IG51bGwpXHJcbiAgICAgIHRoaXMuX2Rpc3BWYWxzID0gZGlzcGxheVZhbHVlcy5zbGljZSgpO1xyXG4gICAgZWxzZVxyXG4gICAgICB0aGlzLl9kaXNwVmFscyA9IG51bGw7XHJcbiAgfVxyXG5cclxuICBTZXRMaW5rVmFsdWVzKGxpbmtWYWx1ZXM6IHN0cmluZ1tdKTogdm9pZCB7XHJcbiAgICBpZiAobGlua1ZhbHVlcyAhPT0gbnVsbClcclxuICAgICAgdGhpcy5fbGlua1ZhbHMgPSBsaW5rVmFsdWVzLnNsaWNlKCk7XHJcbiAgICBlbHNlXHJcbiAgICAgIHRoaXMuX2xpbmtWYWxzID0gbnVsbDtcclxuXHJcbiAgICB0aGlzLnNldE51bWVyaWNWYWxzKCk7XHJcbiAgfVxyXG5cclxuICBzZXROdWxsRmxhZ3MobnVsbEZsYWdzOiBib29sZWFuW10pOiB2b2lkIHtcclxuICAgIGlmIChudWxsRmxhZ3MgIT09IG51bGwpXHJcbiAgICAgIHRoaXMuX251bGxGbGFncyA9IG51bGxGbGFncy5zbGljZSgpO1xyXG5cclxuICAgIGVsc2VcclxuICAgICAgdGhpcy5fbnVsbEZsYWdzID0gbnVsbDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0TnVtZXJpY1ZhbHMoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5faXNOdW1lcmljVHlwZSAmJiB0aGlzLl9saW5rVmFscyAhPT0gbnVsbCkge1xyXG4gICAgICB0aGlzLl9udW1WYWxzID0gbmV3IEFycmF5PE5VTV9UWVBFPih0aGlzLl9saW5rVmFscy5sZW5ndGgpO1xyXG4gICAgICBmb3IgKGxldCBpOiBudW1iZXIgPSAwOyBpIDwgdGhpcy5fbGlua1ZhbHMubGVuZ3RoOyBpID0gaSArIDEpIHtcclxuICAgICAgICB0aGlzLl9udW1WYWxzW2ldID0gbmV3IE5VTV9UWVBFKHRoaXMuX2xpbmtWYWxzW2ldKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMuX251bVZhbHMgPSBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybnMgdGhlIGlkIG9mIHRoaXMgZGNWYWxzIG9iamVjdFxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgZ2V0SWQoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLl9pZDtcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICByZXR1cm4gdGhlIGRpc3BsYXkgdmFsdWVzXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBnZXREaXNwVmFscygpOiBzdHJpbmdbXSB7XHJcbiAgICByZXR1cm4gdGhpcy5fZGlzcFZhbHM7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vIHJldHVybiBMaW5rIGZpZWxkIHZhbHVlcy5cclxuICAvLy8gPC9zdW1tYXJ5PlxyXG4gIEdldExpbmtWYWxzKCk6IHN0cmluZ1tdIHtcclxuICAgIHJldHVybiB0aGlzLl9saW5rVmFscztcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICByZXR1cm5zIHRoZSBhcnJheSBvZiBpbmRpY2UgZm9yIGFuIGl0ZW0gaW4gdGhlIGxpc3QgYnkgY29tcGFyaW5nIHRoZSBtZ1ZhbCB0byB0aGUgbGlua2VkIHZhbHVlIG9yICgtMSkgaWYgbm9uZSB3YXNcclxuICAvLy8gICBmb3VuZFxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJtZ1ZhbFwiPnRoZSBpbnRlcm5hbCB2YWx1ZSB0byBsb29rIGZvciA8L3BhcmFtPlxyXG4gIC8vLyA8cGFyYW0gbmFtZSA9IFwiaXNWZWN0b3JWYWx1ZVwiPkRlbm90ZXMgd2hldGhlciB0aGUgdmFsdWUgaW4gbWdWYWwgc2hvdWxkIGJlIHRyZWF0ZWQgYXMgYSB2ZWN0b3IgKHRydWUpIG9yIG5vdCAoZmFsc2UpLjwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJpc051bGxcIj50cnVlIGlmIHRoZSB2YWx1ZSB0byBsb29rIGZvciBpcyBudWxsIDwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJleHRyYVZhbHNcIj5BZGRpdGlvbmFsIHZhbHVlcywgcHJlcGVuZGVkIHRvIHRoZSBzZWFyY2hlZCB2YWx1ZXMuPC9wYXJhbT5cclxuICAvLy8gPHBhcmFtIG5hbWU9XCJleHRyYU51bXNcIj5BZGRpdGlvbmFsIG51bWVyaWMgdmFsdWVzIHRvIGJlIHByZXBlbmRlZCB0byB0aGUgc2VhcmNoZWQgdmFsdWVzLjwvcGFyYW0+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJzcGxpdENvbW1hU2VwZXJhdGVkVmFsc1wiPnRvIHNwbGl0IHRoZSB2YWwgb24gY29tbWEgb3Igbm90IDwvcGFyYW0+XHJcbiAgZ2V0SW5kZXhPZihtZ1ZhbDogc3RyaW5nLCBpc1ZlY3RvclZhbHVlOiBib29sZWFuLCBpc051bGw6IGJvb2xlYW4sIGV4dHJhVmFsczogc3RyaW5nW10sIGV4dHJhTnVtczogTlVNX1RZUEVbXSwgc3BsaXRDb21tYVNlcGVyYXRlZFZhbHM6IGJvb2xlYW4pOiBudW1iZXJbXSB7XHJcbiAgICBsZXQgcmVzdWx0OiBudW1iZXIgPSBOT1RfRk9VTkQ7XHJcblxyXG4gICAgbGV0IHRtcE1nVmFsOiBzdHJpbmc7XHJcbiAgICBsZXQgY3RybE51bVZhbDogTlVNX1RZUEU7XHJcbiAgICBsZXQgdHJpbW1lZFZhbDogc3RyaW5nO1xyXG4gICAgbGV0IHZhbHM6IHN0cmluZ1tdID0gbnVsbDtcclxuICAgIGxldCBudW1zOiBOVU1fVFlQRVtdID0gbnVsbDtcclxuICAgIGxldCBvZmZzZXQ6IG51bWJlciA9IDA7XHJcbiAgICBsZXQgZmlyc3RGaXRNYXRjaElkeDtcclxuICAgIGxldCBmaXJzdEZpdE1hdGNoTGVuZ3RoOiBudW1iZXIgPSAtMTtcclxuICAgIGxldCBtaW5MZW5ndGg6IG51bWJlciA9IC0xO1xyXG4gICAgbGV0IGNvbXBTdHI6IHN0cmluZyA9IFwiXCI7XHJcbiAgICBsZXQgaW5kaWNlOiBudW1iZXJbXSA9IG51bGw7XHJcbiAgICBsZXQgdmFsdWVzOiBzdHJpbmdbXSA9IG51bGw7XHJcblxyXG4gICAgaWYgKGlzTnVsbCkge1xyXG4gICAgICBsZXQgaTogbnVtYmVyID0gMDtcclxuICAgICAgaW5kaWNlID0gW1xyXG4gICAgICAgIE5PVF9GT1VORFxyXG4gICAgICBdO1xyXG4gICAgICBmb3IgKGkgPSAwOyB0aGlzLl9udWxsRmxhZ3MgIT09IG51bGwgJiYgaSA8IHRoaXMuX251bGxGbGFncy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgIGlmICh0aGlzLl9udWxsRmxhZ3NbaV0pIHtcclxuICAgICAgICAgIGluZGljZVswXSA9IGk7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHJldHVybiBpbmRpY2U7XHJcbiAgICB9XHJcbiAgICBpZiAoIWlzVmVjdG9yVmFsdWUpIHtcclxuICAgICAgLy8gc3BsaXQgdGhlIGNvbW1hIHNlcGFyYXRlZCB2YWx1ZXM7XHJcbiAgICAgIGlmIChzcGxpdENvbW1hU2VwZXJhdGVkVmFscykge1xyXG4gICAgICAgIHZhbHVlcyA9IG1nVmFsLnNwbGl0KCcsJyk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgdmFsdWVzID0gW1xyXG4gICAgICAgICAgbWdWYWxcclxuICAgICAgICBdO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgbGV0IHZlY3RvclR5cGU6IFZlY3RvclR5cGUgPSBuZXcgVmVjdG9yVHlwZShtZ1ZhbCk7XHJcbiAgICAgIHZhbHVlcyA9IHZlY3RvclR5cGUuR2V0Q2VsbFZhbHVlcygpO1xyXG4gICAgfVxyXG4gICAgaW5kaWNlID0gbmV3IEFycmF5PG51bWJlcj4odmFsdWVzLmxlbmd0aCk7XHJcblxyXG4gICAgZm9yIChsZXQgaUN0cjogbnVtYmVyID0gMDsgaUN0ciA8IHZhbHVlcy5sZW5ndGg7IGlDdHIgPSBpQ3RyICsgMSkge1xyXG4gICAgICByZXN1bHQgPSBOT1RfRk9VTkQ7XHJcbiAgICAgIGZpcnN0Rml0TWF0Y2hJZHggPSBOT1RfRk9VTkQ7XHJcblxyXG4gICAgICB0bXBNZ1ZhbCA9IHZhbHVlc1tpQ3RyXTtcclxuXHJcbiAgICAgIGlmICh0aGlzLl9pc051bWVyaWNUeXBlIHx8IGV4dHJhTnVtcyAhPT0gbnVsbCkge1xyXG4gICAgICAgICAgY3RybE51bVZhbCA9IG5ldyBOVU1fVFlQRSh0bXBNZ1ZhbCk7XHJcbiAgICAgICAgdHJpbW1lZFZhbCA9IHRtcE1nVmFsO1xyXG4gICAgICB9XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIGN0cmxOdW1WYWwgPSBudWxsO1xyXG4gICAgICAgIHRyaW1tZWRWYWwgPSBTdHJVdGlsLnJ0cmltKHRtcE1nVmFsKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgLy8gUnVuIHR3byBwYXNzZXMuIEZpcnN0IG9uZSBvbiBleHRyYSB2YWx1ZXMsIHNlY29uZCBvbmUgb24gdmFsdWVzIGJlbG9uZ2luZyB0byB0aGlzIG9iamVjdFxyXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IDIgJiYgcmVzdWx0ID09PSBOT1RfRk9VTkQ7IGkrKykge1xyXG4gICAgICAgIHN3aXRjaCAoaSkge1xyXG4gICAgICAgICAgY2FzZSAwOlxyXG4gICAgICAgICAgICB2YWxzID0gZXh0cmFWYWxzO1xyXG4gICAgICAgICAgICBudW1zID0gZXh0cmFOdW1zO1xyXG4gICAgICAgICAgICBvZmZzZXQgPSAwO1xyXG4gICAgICAgICAgICBicmVhaztcclxuXHJcbiAgICAgICAgICBjYXNlIDE6XHJcbiAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICBpZiAodGhpcy5faXNOdW1lcmljVHlwZSB8fCBudW1zICE9IG51bGwpXHJcbiAgICAgICAgICAgICAgb2Zmc2V0ID0gKG51bXMgPT0gbnVsbCA/IDAgOiBudW1zLmxlbmd0aCk7XHJcbiAgICAgICAgICAgIGVsc2VcclxuICAgICAgICAgICAgICBvZmZzZXQgPSAodmFscyA9PSBudWxsID8gMCA6IHZhbHMubGVuZ3RoKTtcclxuICAgICAgICAgICAgdmFscyA9IHRoaXMuX2xpbmtWYWxzO1xyXG4gICAgICAgICAgICBudW1zID0gdGhpcy5fbnVtVmFscztcclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAodmFscyAhPSBudWxsKSB7XHJcbiAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHZhbHMubGVuZ3RoICYmIHJlc3VsdCA9PT0gTk9UX0ZPVU5EOyBqKyspIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuX2lzTnVtZXJpY1R5cGUgfHwgbnVtcyAhPSBudWxsKSB7XHJcbiAgICAgICAgICAgICAgaWYgKE5VTV9UWVBFLm51bV9jbXAoY3RybE51bVZhbCwgbnVtc1tqXSkgPT09IDAgfHwgdG1wTWdWYWwgPT09IHZhbHNbal0gfHxcclxuICAgICAgICAgICAgICAgIHRtcE1nVmFsID09PSB2YWxzW2pdKSB7XHJcbiAgICAgICAgICAgICAgICAvLyB0aGUgbnVtZXJpYyB0eXBlIGlzIGZvdW5kIGV4YWN0bHlcclxuICAgICAgICAgICAgICAgIHJlc3VsdCA9IGogKyBvZmZzZXQ7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgaWYgKHZhbHNbal0gPT09IHRtcE1nVmFsIHx8IHRyaW1tZWRWYWwubGVuZ3RoID4gMCAmJiBTdHJVdGlsLnJ0cmltKHZhbHNbal0pID09PSB0cmltbWVkVmFsKSB7XHJcbiAgICAgICAgICAgICAgICByZXN1bHQgPSBqICsgb2Zmc2V0O1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAvLyBJZiBNYWdpYyBzZW50IHVzIGEgYmxhbmsgdmFsdWUsIGFuZCBzdWNoIGEgdmFsdWUgZXhpc3RzIGluIHRoZSBcIm5vbiBEQyByYW5nZVwiIHNlbGVjdCBpdC5cclxuICAgICAgICAgICAgICAvLyBRQ1IgIyA3NTEwMzcgLSBzZWFyY2ggZm9yIGJsYW5rIHZhbHVlcyBldmVuIGluIHRoZSBsaW5rZWQgdmFsdWVzIGFycmF5IG9mIHRoZSBkYXRhIGNvbnRyb2xcclxuICAgICAgICAgICAgICBpZiAodHJpbW1lZFZhbC5sZW5ndGggPT09IDAgJiYgU3RyVXRpbC5ydHJpbSh2YWxzW2pdKS5sZW5ndGggPT09IDApIHtcclxuICAgICAgICAgICAgICAgIHJlc3VsdCA9IGogKyBvZmZzZXQ7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgIC8vIHNhdmUgdGhlIGZpcnN0IGZpdHRpbmcgcmVzdWx0XHJcbiAgICAgICAgICAgICAgLy8gZml4ZWQgYnVnIzogOTM1MDE1LCB0aGUgY29tcGFyaXNvbiB3aWxsIGJlIGFjY29yZGluZyB0byB0aGUgbWluIGxlbmd0aCBvZiB0aGUgZGF0YSAmIHRoZSBvcHRpb25zXHJcbiAgICAgICAgICAgICAgaWYgKHJlc3VsdCA9PT0gTk9UX0ZPVU5EICYmIHRyaW1tZWRWYWwubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAgICAgbWluTGVuZ3RoID0gTWF0aC5taW4odHJpbW1lZFZhbC5sZW5ndGgsIHZhbHNbal0ubGVuZ3RoKTtcclxuICAgICAgICAgICAgICAgIGNvbXBTdHIgPSB0cmltbWVkVmFsLnN1YnN0cigwLCBtaW5MZW5ndGgpO1xyXG4gICAgICAgICAgICAgICAgaWYgKGNvbXBTdHIubGVuZ3RoID4gMCAmJiB2YWxzW2pdLnN0YXJ0c1dpdGgoY29tcFN0cikpIHtcclxuICAgICAgICAgICAgICAgICAgLy8gaWYgdGhlcmUgaXMgYSBtaW4gbGVuZ3RoIG1hdGNoLCBjaGVjayBpZiBpdCBpcyB0aGUgZmlyc3QgZml0IG1hdGNoLlxyXG4gICAgICAgICAgICAgICAgICAvLyBlZzogaWYgbGlzdCBoYXMgYSxhYWEsYWFhYWEgYW5kIGZpZWxkIHZhbHVlIGlzICdhYScgdGhlbiBmaXJzdCBmaXQgbWF0Y2ggaXMgJ2FhYScuXHJcbiAgICAgICAgICAgICAgICAgIC8vIGlmIGxpc3QgaXMgYSxhYWFhYSxhYWEgYW5kIGZpZWxkIHZhbHVlIGlzICdhYScgdGhlbiBmaXJzdCBmaXQgbWF0Y2ggaXMgJ2FhYWFhJy5cclxuICAgICAgICAgICAgICAgICAgLy8gaWYgZmlyc3QgZml0IG5vdCBmb3VuZCwgdGhlbiBjbG9zZXN0IG1hdGNoIGlzIHVzZWQgKGVnLSBpZiBmaWVsZCB2YWx1ZSBpc1xyXG4gICAgICAgICAgICAgICAgICAvLyAnYWFhYWFhYWFhJyBpbiBib3RoIHRoZSBhYm92ZSBsaXN0LCBjbG9zZXN0IG1hdGNoIHdvdWxkIGJlICdhYWFhYScpLlxyXG4gICAgICAgICAgICAgICAgICBpZiAobWluTGVuZ3RoID4gZmlyc3RGaXRNYXRjaExlbmd0aCkge1xyXG4gICAgICAgICAgICAgICAgICAgIGZpcnN0Rml0TWF0Y2hJZHggPSBqICsgb2Zmc2V0O1xyXG4gICAgICAgICAgICAgICAgICAgIGZpcnN0Rml0TWF0Y2hMZW5ndGggPSBtaW5MZW5ndGg7XHJcbiAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmIChyZXN1bHQgPT09IE5PVF9GT1VORClcclxuICAgICAgICByZXN1bHQgPSBmaXJzdEZpdE1hdGNoSWR4O1xyXG5cclxuICAgICAgLy8gc3RvcmUgaW5kaWNlIGZvdW5kIGluIGludGVnZXIgYXJyYXkuXHJcbiAgICAgIGluZGljZVtpQ3RyXSA9IHJlc3VsdDtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gaW5kaWNlO1xyXG4gIH1cclxuXHJcbi8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBnZXRzIHRoZSB2YWx1ZSBvZiBhIHNwZWNpZmljIGxpbmsgaXRlbVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJpZHhcIj50aGUgaW5kZXggb2YgdGhlIGxpbmsgdmFsdWUgKDAgPSBmaXJzdCBpdGVtKSA8L3BhcmFtPlxyXG4gIC8vLyA8cmV0dXJucz4gTWFnaWMgdmFsdWUgb2YgdGhlIGl0ZW0gPC9yZXR1cm5zPlxyXG4gIGdldExpbmtWYWx1ZShpZHg6IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICBsZXQgbG5rVmFsOiBzdHJpbmcgPSBudWxsO1xyXG5cclxuICAgIGlmICh0aGlzLl9saW5rVmFscyAhPT0gbnVsbCkge1xyXG4gICAgICBsbmtWYWwgPSB0aGlzLl9saW5rVmFsc1tpZHhdO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBsbmtWYWw7XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgcmV0dXJucyB0cnVlLCBpZiB2YWx1ZSBhdCBpbmRleCBpZHggaXMgbnVsbFxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgLy8vIDxwYXJhbSBuYW1lID0gXCJ0aGVcIj5pbmRleCBvZiBhbiBpdGVtIGluIHRoZSBsaXN0IDwvcGFyYW0+XHJcbiAgaXNOdWxsKGlkeDogbnVtYmVyKTogYm9vbGVhbiB7XHJcbiAgICBpZiAodGhpcy5fbnVsbEZsYWdzID09IG51bGwpXHJcbiAgICAvLyBoYXBwZW5zIGZvciBub24tREMgY2hvaWNlIGNvbnRyb2xzXHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuXHJcbiAgICByZXR1cm4gdGhpcy5fbnVsbEZsYWdzW2lkeF07XHJcbiAgfVxyXG5cclxuICAvLy8gPHN1bW1hcnk+XHJcbiAgLy8vICAgaW5jcmVhc2UgdGhlIHJlZmVyZW5jZXMgY291bnQgYnkgMVxyXG4gIC8vLyA8L3N1bW1hcnk+XHJcbiAgQWRkUmVmZXJlbmNlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fcmVmQ291bnQrKztcclxuICB9XHJcblxyXG4gIC8vLyA8c3VtbWFyeT5cclxuICAvLy8gICBkZWNyZWFzZSB0aGUgcmVmZXJlbmNlcyBjb3VudCBieSAxXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBSZW1vdmVSZWZlcmVuY2UoKTogdm9pZCB7XHJcbiAgICB0aGlzLl9yZWZDb3VudC0tO1xyXG4gICAgaWYgKHRoaXMuX3JlZkNvdW50IDwgMCkge1xyXG4gICAgICB0aHJvdyBuZXcgQXBwbGljYXRpb25FeGNlcHRpb24oXCJpbiBkY1ZhbHMuZGVjcmVhc2UoKSByZWZlcmVuY2VzIGNvdW50IGlzIGxlc3MgdGhhbiB6ZXJvXCIpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8vIDxzdW1tYXJ5PlxyXG4gIC8vLyAgIHJldHVybnMgdHJ1ZSBpZiB0aGUgcmVmZXJlbmNlcyBjb3VudCBpcyB6ZXJvXHJcbiAgLy8vIDwvc3VtbWFyeT5cclxuICBUb1N0cmluZygpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIE5TdHJpbmcuRm9ybWF0KFwie3tEQ1ZhbHVlcyAweHswOlg4fSwgezF9IHJlZnN9fVwiLCB0aGlzLl9pZCwgdGhpcy5fcmVmQ291bnQpO1xyXG4gIH1cclxufVxyXG4iXX0=
|