@eqproject/eqp-dynamic-module 2.9.26 → 2.9.28
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/lib/components/exported/eqp-dynamic-module-configurator/eqp-dynamic-module-configurator.component.mjs +3 -3
- package/esm2020/lib/components/private/action-button-creator/action-button-creator.component.mjs +3 -3
- package/esm2020/lib/components/private/add-form-field/add-form-field.component.mjs +28 -8
- package/esm2020/lib/components/private/add-formula-field/add-formula-field.component.mjs +4 -3
- package/esm2020/lib/components/private/dbgetter/dbgetter.component.mjs +25 -10
- package/esm2020/lib/components/private/dynamic-module-field-fix/dynamic-module-field.component.mjs +138 -115
- package/esm2020/lib/components/private/field-templates/boolean-field-template/boolean-field-template.component.mjs +4 -1
- package/esm2020/lib/components/private/field-templates/date-field-template/date-field-template.component.mjs +4 -1
- package/esm2020/lib/components/private/field-templates/list-value-field-template/list-value-field-template.component.mjs +4 -1
- package/esm2020/lib/components/private/field-templates/numeric-field-template/numeric-field-template.component.mjs +4 -1
- package/esm2020/lib/components/private/field-templates/text-field-template/text-field-template.component.mjs +4 -1
- package/esm2020/lib/components/private/field-templates/textarea-field-template/textarea-field-template.component.mjs +4 -1
- package/esm2020/lib/components/private/form-records/hlist-form-record/hlist-form-record.component.mjs +5 -5
- package/esm2020/lib/components/private/form-records/list-view-form-record/list-view-form-record.component.mjs +3 -2
- package/esm2020/lib/components/private/tmw-image-marker/tmw-image-marker.component.mjs +3 -2
- package/esm2020/lib/models/baseField.model.mjs +7 -3
- package/fesm2015/eqproject-eqp-dynamic-module.mjs +226 -144
- package/fesm2015/eqproject-eqp-dynamic-module.mjs.map +1 -1
- package/fesm2020/eqproject-eqp-dynamic-module.mjs +223 -144
- package/fesm2020/eqproject-eqp-dynamic-module.mjs.map +1 -1
- package/lib/components/private/add-form-field/add-form-field.component.d.ts +2 -0
- package/lib/components/private/dynamic-module-field-fix/dynamic-module-field.component.d.ts +32 -0
- package/lib/models/baseField.model.d.ts +4 -2
- package/package.json +1 -1
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
2
|
import { fabric } from 'fabric';
|
|
3
3
|
import { Observable, of, switchMap } from 'rxjs';
|
|
4
|
+
import { GlobalService } from '../../../services/global.service';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
import * as i1 from "@angular/material/icon";
|
|
6
7
|
import * as i2 from "@angular/forms";
|
|
@@ -292,7 +293,7 @@ export class TmwImageMarkerComponent {
|
|
|
292
293
|
return Math.floor(Math.random() * (max - min + 1) + min);
|
|
293
294
|
}
|
|
294
295
|
log(el) {
|
|
295
|
-
|
|
296
|
+
GlobalService.debugLog("imageMarker element ", el);
|
|
296
297
|
}
|
|
297
298
|
}
|
|
298
299
|
TmwImageMarkerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TmwImageMarkerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
@@ -333,4 +334,4 @@ export class OutMarker {
|
|
|
333
334
|
}
|
|
334
335
|
export class MarkedImage {
|
|
335
336
|
}
|
|
336
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG13LWltYWdlLW1hcmtlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcXAtZHluYW1pYy1tb2R1bGUvc3JjL2xpYi9jb21wb25lbnRzL3ByaXZhdGUvdG13LWltYWdlLW1hcmtlci90bXctaW1hZ2UtbWFya2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VxcC1keW5hbWljLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvcHJpdmF0ZS90bXctaW1hZ2UtbWFya2VyL3Rtdy1pbWFnZS1tYXJrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ2hDLE9BQU8sRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7QUFPakQsTUFBTSxPQUFPLHVCQUF1QjtJQWtDbEM7UUE3QlMsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUMxQixpQkFBWSxHQUFXLElBQUksQ0FBQztRQUVyQixtQkFBYyxHQUFHLFlBQVksQ0FBQztRQUM5QixrQkFBYSxHQUFHLEdBQUcsQ0FBQztRQUVwQixvQkFBZSxHQUFHLElBQUksQ0FBQztRQUU3QixnQkFBVyxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBQzNELFNBQUksR0FBOEIsSUFBSSxZQUFZLEVBQWUsQ0FBQztRQUc1RSxjQUFTLEdBQVksSUFBSSxDQUFDO1FBQzFCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFHbEIsVUFBSyxHQUFvQixFQUFFLENBQUM7UUFFcEMsWUFBTyxHQUFrQixJQUFJLEtBQUssRUFBVSxDQUFDO1FBQzdDLGVBQVUsR0FB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LENBQUM7SUFDbEIsQ0FBQzs7cUhBelhVLHVCQUF1Qjt5R0FBdkIsdUJBQXVCLG1VQ1RwQyxvb0RBb0NNOzRGRDNCTyx1QkFBdUI7a0JBTG5DLFNBQVM7K0JBQ0Usa0JBQWtCOzBFQU1uQixHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBRVUsY0FBYztzQkFBN0IsS0FBSztnQkFDVSxhQUFhO3NCQUE1QixLQUFLO2dCQUVVLGVBQWU7c0JBQTlCLEtBQUs7Z0JBRUksV0FBVztzQkFBcEIsTUFBTTtnQkFDRyxJQUFJO3NCQUFiLE1BQU07O0FBK1dULE1BQU0sT0FBTyxNQUFNO0lBQW5CO1FBT0UsZ0JBQVcsR0FBVyxFQUFFLENBQUM7SUFDM0IsQ0FBQztDQUFBO0FBRUQsTUFBTSxPQUFPLFNBQVM7SUFBdEI7UUFJRSxnQkFBVyxHQUFXLEVBQUUsQ0FBQztJQUMzQixDQUFDO0NBQUE7QUFFRCxNQUFNLE9BQU8sV0FBVztDQUd2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGZhYnJpYyB9IGZyb20gJ2ZhYnJpYyc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndG13LWltYWdlLW1hcmtlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3Rtdy1pbWFnZS1tYXJrZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3Rtdy1pbWFnZS1tYXJrZXIuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgVG13SW1hZ2VNYXJrZXJDb21wb25lbnQge1xyXG5cclxuICBASW5wdXQoKSBzcmM6IHN0cmluZztcclxuICBASW5wdXQoKSB3aWR0aDogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIGhlaWdodDogbnVtYmVyO1xyXG4gIEBJbnB1dCgpIGluQ29uZmlnOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2F2ZWRNYXJrZXJzOiBzdHJpbmcgPSBudWxsO1xyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgb3V0cHV0TWltZVR5cGUgPSAnaW1hZ2UvanBlZyc7XHJcbiAgQElucHV0KCkgcHVibGljIG91dHB1dFF1YWxpdHkgPSAwLjg7XHJcblxyXG4gIEBJbnB1dCgpIHB1YmxpYyBmb3JjZVNpemVDYW52YXMgPSB0cnVlO1xyXG5cclxuICBAT3V0cHV0KCkgY2xvc2VEaWFsb2c6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuICBAT3V0cHV0KCkgc2F2ZTogRXZlbnRFbWl0dGVyPE1hcmtlZEltYWdlPiA9IG5ldyBFdmVudEVtaXR0ZXI8TWFya2VkSW1hZ2U+KCk7XHJcblxyXG4gIGNvbXBvbmVudEd1aWQ6IHN0cmluZztcclxuICBpc0xvYWRpbmc6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIGhhc0Vycm9yOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHByaXZhdGUgY2FudmFzOiBmYWJyaWMuQ2FudmFzO1xyXG4gIHByaXZhdGUgc3RhY2s6IGZhYnJpYy5PYmplY3RbXSA9IFtdO1xyXG5cclxuICBtYXJrZXJzOiBBcnJheTxNYXJrZXI+ID0gbmV3IEFycmF5PE1hcmtlcj4oKTtcclxuICBvdXRtYXJrZXJzOiBBcnJheTxPdXRNYXJrZXI+ID0gbmV3IEFycmF5PE91dE1hcmtlcj4oKTtcclxuICBtYXJrZWRJbWFnZTogTWFya2VkSW1hZ2UgPSBuZXcgTWFya2VkSW1hZ2UoKTtcclxuXHJcbiAgY2FuVW5kbzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGNhblJlZG86IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgZXJyb3JNZXNzYWdlOiBzdHJpbmcgPSBcIlwiO1xyXG5cclxuICBwcml2YXRlIGltYWdlVXNlZD86IGZhYnJpYy5JbWFnZTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7fVxyXG5cclxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XHJcblxyXG4gICAgLy8gQ3JlYXppb25lIGRpIHVuYSBHVUlEIHVuaWNhIHBlciBpbCBjb21wb25lbnRlXHJcbiAgICB0aGlzLmNvbXBvbmVudEd1aWQgPSAneHh4eC14eHh4LXh4eHgteHh4eCcucmVwbGFjZSgvW3h5XS9nLCBmdW5jdGlvbiAoYykge1xyXG4gICAgICB2YXIgciA9IE1hdGgucmFuZG9tKCkgKiAxNiB8IDAsXHJcbiAgICAgICAgdiA9IGMgPT0gJ3gnID8gciA6IChyICYgMHgzIHwgMHg4KTtcclxuICAgICAgcmV0dXJuIHYudG9TdHJpbmcoMTYpO1xyXG4gICAgfSk7XHJcblxyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XHJcblxyXG4gICAgY29uc3QgY2FudmFzU2NhbGVkRWxlbWVudCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuY29tcG9uZW50R3VpZCk7XHJcbiAgICB0aGlzLmNhbnZhcyA9IG5ldyBmYWJyaWMuQ2FudmFzKGNhbnZhc1NjYWxlZEVsZW1lbnQsIHtcclxuICAgICAgaG92ZXJDdXJzb3I6ICdwb2ludGVyJyxcclxuICAgICAgaXNEcmF3aW5nTW9kZTogZmFsc2UsXHJcbiAgICB9KTtcclxuICAgIHRoaXMuY2FudmFzLmJhY2tncm91bmRDb2xvciA9ICd3aGl0ZSc7XHJcblxyXG4gICAgaWYgKHRoaXMuc3JjKSB7XHJcbiAgICAgIHRoaXMuaW1wb3J0UGhvdG9Gcm9tU3JjKHRoaXMuc3JjKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmICghdGhpcy53aWR0aCB8fCAhdGhpcy5oZWlnaHQpIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIHdpZHRoIG9yIGhpZ2h0IGdpdmVuICEnKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5jYW52YXMuc2V0V2lkdGgodGhpcy53aWR0aCk7XHJcbiAgICAgIHRoaXMuY2FudmFzLnNldEhlaWdodCh0aGlzLmhlaWdodCk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5jYW52YXMub24oJ3BhdGg6Y3JlYXRlZCcsICgpID0+IHtcclxuICAgICAgdGhpcy5zdGFjayA9IFtdO1xyXG4gICAgICB0aGlzLnNldFVuZG9SZWRvKCk7XHJcbiAgICB9KTtcclxuXHJcbiAgfSAgXHJcblxyXG4gIG5ld01hcmtlcigpe1xyXG4gICAgdmFyIHN0YXJ0WCA9IE1hdGguZmxvb3IodGhpcy53aWR0aCAvIDIpO1xyXG4gICAgdmFyIHN0YXJ0WSA9IE1hdGguZmxvb3IodGhpcy5oZWlnaHQgLyAyKTtcclxuXHJcbiAgICB2YXIgbGVmdCA9IHRoaXMucmFuZG9tSW50RnJvbUludGVydmFsKHN0YXJ0WC0xMDAsc3RhcnRYKzEwMCk7XHJcbiAgICB2YXIgdG9wID0gdGhpcy5yYW5kb21JbnRGcm9tSW50ZXJ2YWwoc3RhcnRZLTEwMCxzdGFydFkrMTAwKTtcclxuICAgIHZhciBkZXNjcmlwdGlvbjogJyc7XHJcbiAgICB2YXIgY2FwdGlvbiA9ICcwJztcclxuXHJcbiAgICAvLyBDcmVhemlvbmUgZGVsbGEgY2FwdGlvblxyXG4gICAgZm9yICh2YXIgaSA9IDE7IGkgPD0gMTAwMDAwOyBpKyspe1xyXG4gICAgICBpZiAodGhpcy5tYXJrZXJzLmZpbmQoeCA9PiB4LmNhcHRpb24gPT0gaS50b1N0cmluZygpKSA9PSBudWxsKXtcclxuICAgICAgICBjYXB0aW9uID0gaS50b1N0cmluZygpO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuXHJcbiAgICB0aGlzLmNyZWF0ZU1hcmtlcih0b3AsbGVmdCxjYXB0aW9uLGRlc2NyaXB0aW9uKTtcclxuICB9XHJcblxyXG4gIGNyZWF0ZU1hcmtlcih0b3A6IG51bWJlciwgbGVmdDogbnVtYmVyLCBjYXB0aW9uOiBzdHJpbmcsIGRlc2NyaXB0aW9uOiBzdHJpbmcpe1xyXG5cclxuICAgIC8qXHJcbiAgICAqIENyZW8gdW4gbnVvdm8gTWFya2VyXHJcbiAgICAqL1xyXG5cclxuICAgIC8vIENyZW8gaWwgY2VyY2hpb1xyXG4gICAgdmFyIGNpcmNsZSA9IG5ldyBmYWJyaWMuQ2lyY2xlKHtcclxuICAgICAgcmFkaXVzOiAzMCxcclxuICAgICAgb3BhY2l0eTogMC43LFxyXG4gICAgICBmaWxsOiAnZGFya2JsdWUnLFxyXG4gICAgICBzdHJva2U6ICd3aGl0ZScsXHJcbiAgICAgIHN0cm9rZVdpZHRoOiAyLFxyXG4gICAgICBvcmlnaW5YOiAnY2VudGVyJywgXHJcbiAgICAgIG9yaWdpblk6ICdjZW50ZXInIFxyXG4gICAgfSk7XHJcblxyXG4gICAgLy8gQ3JlbyBpbCB0ZXN0byBkZW50cm8gYWwgY2VyY2hpbyBcclxuICAgIHZhciB0ZXh0ID0gbmV3IGZhYnJpYy5UZXh0KGNhcHRpb24sXHJcbiAgICB7ICBmb250U2l6ZTogMjUsIFxyXG4gICAgICAgIG9yaWdpblg6ICdjZW50ZXInLCBcclxuICAgICAgICBvcmlnaW5ZOiAnY2VudGVyJyxcclxuICAgICAgICBmaWxsIDogJ3doaXRlJyBcclxuICAgICAgfSk7XHJcblxyXG4gICAgLy8gQ3JlbyBpbCBncnVwcG8gbmVsIHF1YWxlIG1ldHRvIGNlcmNoaW8gZSB0ZXN0byBpbiBtb2RvIGNoZSBzaSBtdW92YW5vIGluc2llbWVcclxuICAgIHZhciBncm91cCA9IG5ldyBmYWJyaWMuR3JvdXAoWyBjaXJjbGUsIHRleHQgXSwgeyAgbGVmdDogbGVmdCwgdG9wOiB0b3AgfSk7ICAgIFxyXG5cclxuICAgIC8vIENyZW8gdW4gb2dnZXR0byBtYXJrZXIgY2hlIGNvbnRpZW5lIGdsaSBlbGVtZW50aSBhdG9taWNpLiBTZXJ2ZSBwZXIgbGUgY2FuY2VsbGF6aW9uaSBlIGlsIHJvbGxiYWNrL21vZGlmaWNhIGRlZ2xpIGVsZW1lbnRpXHJcbiAgICB2YXIgbWFya2VyOiBNYXJrZXIgPSBuZXcgTWFya2VyKCk7XHJcbiAgICBtYXJrZXIuY2lyY2xlID0gY2lyY2xlO1xyXG4gICAgbWFya2VyLnRleHQgPSB0ZXh0O1xyXG4gICAgbWFya2VyLmdyb3VwID0gZ3JvdXA7XHJcbiAgICBtYXJrZXIuY2FwdGlvbiA9IGNhcHRpb247XHJcbiAgICBtYXJrZXIuZGVzY3JpcHRpb24gPSBkZXNjcmlwdGlvbjtcclxuXHJcbiAgICAvLyBBZ2dpdW5nbyBpbCBncnVwcG8gbmVsbGEgbGlzdGEgZGVpIGdydXBwaVxyXG4gICAgdGhpcy5tYXJrZXJzLnB1c2gobWFya2VyKTtcclxuICAgIHRoaXMubWFya2Vycy5zb3J0KChhLGIpPT4geyByZXR1cm4gTnVtYmVyKGEuY2FwdGlvbikgLSBOdW1iZXIoYi5jYXB0aW9uKSB9KTtcclxuXHJcbiAgICAvLyBBZ2dpdW5nbyBpbCBncnVwcG8gYWxsJ2ltbWFnaW5lIGEgc2NoZXJtb1xyXG4gICAgdGhpcy5jYW52YXMuYWRkKGdyb3VwKTtcclxuICB9XHJcblxyXG4gIGRlbGV0ZU1hcmtlckJ5SW5kZXgoaW5kZXg6IG51bWJlcil7XHJcbiAgICB0aGlzLmNhbnZhcy5yZW1vdmUodGhpcy5tYXJrZXJzW2luZGV4XS5ncm91cCk7XHJcbiAgICB0aGlzLm1hcmtlcnMuc3BsaWNlKGluZGV4LDEpO1xyXG4gIH1cclxuXHJcbiAgcmVtb3ZlQWxsTWFya2Vycygpe1xyXG4gICAgdGhpcy5tYXJrZXJzLmZvckVhY2goKG1hcmtlcikgPT4ge1xyXG4gICAgICB0aGlzLmNhbnZhcy5yZW1vdmUobWFya2VyLmdyb3VwKTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5tYXJrZXJzID0gbmV3IEFycmF5PE1hcmtlcj4oKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0VW5kb1JlZG8oKSB7XHJcbiAgICB0aGlzLmNhblVuZG8gPSB0aGlzLmNhbnZhcy5nZXRPYmplY3RzKCkubGVuZ3RoID4gMDtcclxuICAgIHRoaXMuY2FuUmVkbyA9IHRoaXMuc3RhY2subGVuZ3RoID4gMDtcclxuICB9XHJcblxyXG4gIC8qXHJcblxyXG4gICAgLy8gQWN0aW9uc1xyXG4gICAgcHVibGljIHVuZG8oKSB7XHJcbiAgICAgIGlmICh0aGlzLmNhblVuZG8pIHtcclxuICAgICAgICBjb25zdCBsYXN0SWQgPSB0aGlzLmNhbnZhcy5nZXRPYmplY3RzKCkubGVuZ3RoIC0gMTtcclxuICAgICAgICBjb25zdCBsYXN0T2JqID0gdGhpcy5jYW52YXMuZ2V0T2JqZWN0cygpW2xhc3RJZF07XHJcbiAgICAgICAgdGhpcy5zdGFjay5wdXNoKGxhc3RPYmopO1xyXG4gICAgICAgIHRoaXMuY2FudmFzLnJlbW92ZShsYXN0T2JqKTtcclxuICAgICAgICB0aGlzLnNldFVuZG9SZWRvKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICBcclxuICAgIHB1YmxpYyByZWRvKCkge1xyXG4gICAgICBpZiAodGhpcy5jYW5SZWRvKSB7XHJcbiAgICAgICAgY29uc3QgZmlyc3RJblN0YWNrID0gdGhpcy5zdGFjay5zcGxpY2UoLTEsIDEpWzBdO1xyXG4gICAgICAgIGlmIChmaXJzdEluU3RhY2spIHtcclxuICAgICAgICAgIHRoaXMuY2FudmFzLmluc2VydEF0KGZpcnN0SW5TdGFjaywgdGhpcy5jYW52YXMuZ2V0T2JqZWN0cygpLmxlbmd0aCAtIDEsIGZhbHNlKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5zZXRVbmRvUmVkbygpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgXHJcbiAgICBwdWJsaWMgY2xlYXJDYW52YXMoKSB7XHJcbiAgICAgIGlmICh0aGlzLmNhbnZhcykge1xyXG4gICAgICAgIHRoaXMuY2FudmFzLnJlbW92ZSguLi50aGlzLmNhbnZhcy5nZXRPYmplY3RzKCkpO1xyXG4gICAgICAgIHRoaXMuc2V0VW5kb1JlZG8oKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuKi9cclxuXHJcbiAgcHJpdmF0ZSBpbXBvcnRQaG90b0Zyb21TcmMoc3JjOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcclxuICAgIGxldCBpc0ZpcnN0VHJ5ID0gdHJ1ZTtcclxuICAgIGNvbnN0IGltZ0VsID0gbmV3IEltYWdlKCk7XHJcbiAgICBpbWdFbC5zZXRBdHRyaWJ1dGUoJ2Nyb3NzT3JpZ2luJywgJ2Fub255bW91cycpO1xyXG4gICAgaW1nRWwuc3JjID0gc3JjO1xyXG4gICAgaW1nRWwub25lcnJvciA9ICgpID0+IHtcclxuICAgICAgLy8gUmV0cnkgd2l0aCBjb3JzIHByb3h5XHJcbiAgICAgIGlmIChpc0ZpcnN0VHJ5KSB7XHJcbiAgICAgICAgaW1nRWwuc3JjID0gJ2h0dHBzOi8vY29ycy1hbnl3aGVyZS5oZXJva3VhcHAuY29tLycgKyB0aGlzLnNyYztcclxuICAgICAgICBpc0ZpcnN0VHJ5ID0gZmFsc2U7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLmhhc0Vycm9yID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IFwiQ09SUyBFcnJvclwiO1xyXG4gICAgICB9XHJcbiAgICB9O1xyXG4gICAgaW1nRWwub25sb2FkID0gKCkgPT4ge1xyXG4gICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICB0aGlzLmltYWdlVXNlZCA9IG5ldyBmYWJyaWMuSW1hZ2UoaW1nRWwpO1xyXG5cclxuICAgICAgdGhpcy5pbWFnZVVzZWQuY2xvbmVBc0ltYWdlKGltYWdlID0+IHtcclxuICAgICAgICBsZXQgd2lkdGggPSBpbWdFbC53aWR0aDtcclxuICAgICAgICBsZXQgaGVpZ2h0ID0gaW1nRWwuaGVpZ2h0O1xyXG5cclxuICAgICAgICBpZiAodGhpcy53aWR0aCkge1xyXG4gICAgICAgICAgd2lkdGggPSB0aGlzLndpZHRoO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGhpcy5oZWlnaHQpIHtcclxuICAgICAgICAgIGhlaWdodCA9IHRoaXMuaGVpZ2h0O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaW1hZ2Uuc2NhbGVUb1dpZHRoKHdpZHRoLCBmYWxzZSk7XHJcbiAgICAgICAgaW1hZ2Uuc2NhbGVUb0hlaWdodChoZWlnaHQsIGZhbHNlKTtcclxuXHJcbiAgICAgICAgdGhpcy5jYW52YXMuc2V0QmFja2dyb3VuZEltYWdlKGltYWdlLCAoKGltZzogSFRNTEltYWdlRWxlbWVudCkgPT4ge1xyXG4gICAgICAgICAgaWYgKGltZykge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5mb3JjZVNpemVDYW52YXMpIHtcclxuICAgICAgICAgICAgICB0aGlzLmNhbnZhcy5zZXRXaWR0aCh3aWR0aCk7XHJcbiAgICAgICAgICAgICAgdGhpcy5jYW52YXMuc2V0SGVpZ2h0KGhlaWdodCk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5jYW52YXMuc2V0V2lkdGgoaW1hZ2UuZ2V0U2NhbGVkV2lkdGgoKSk7XHJcbiAgICAgICAgICAgICAgdGhpcy5jYW52YXMuc2V0SGVpZ2h0KGltYWdlLmdldFNjYWxlZEhlaWdodCgpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pLCB7XHJcbiAgICAgICAgICBjcm9zc09yaWdpbjogJ2Fub255bW91cycsXHJcbiAgICAgICAgICBvcmlnaW5YOiAnbGVmdCcsXHJcbiAgICAgICAgICBvcmlnaW5ZOiAndG9wJ1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9KTtcclxuXHJcbiAgICAgIGlmICh0aGlzLnNhdmVkTWFya2VycyAhPSBudWxsKXsgdGhpcy5sb2FkTWFya2VycygpOyB9XHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgbG9hZE1hcmtlcnMoKXtcclxuICAgIHZhciBtYXJrZXJzT2JqOiBBcnJheTxPdXRNYXJrZXI+ID0gSlNPTi5wYXJzZSh0aGlzLnNhdmVkTWFya2Vycyk7XHJcbiAgICBtYXJrZXJzT2JqLmZvckVhY2goKG1hcmtlcikgPT4ge1xyXG4gICAgICB0aGlzLmNyZWF0ZU1hcmtlcihtYXJrZXIudG9wLG1hcmtlci5sZWZ0LG1hcmtlci5jYXB0aW9uLG1hcmtlci5kZXNjcmlwdGlvbik7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBzYXZlSW1hZ2UoKXtcclxuXHJcbiAgICB0aGlzLm91dG1hcmtlcnMgPSBuZXcgQXJyYXk8T3V0TWFya2VyPigpO1xyXG5cclxuICAgIHRoaXMubWFya2Vycy5mb3JFYWNoKChtYXJrZXIpID0+IHtcclxuICAgICAgdmFyIG91dG1hcmtlciA9IG5ldyBPdXRNYXJrZXIoKTtcclxuICAgICAgb3V0bWFya2VyLmNhcHRpb24gPSBtYXJrZXIuY2FwdGlvbjtcclxuICAgICAgb3V0bWFya2VyLmRlc2NyaXB0aW9uID0gbWFya2VyLmRlc2NyaXB0aW9uO1xyXG4gICAgICBvdXRtYXJrZXIudG9wID0gbWFya2VyLmdyb3VwLnRvcDtcclxuICAgICAgb3V0bWFya2VyLmxlZnQgPSBtYXJrZXIuZ3JvdXAubGVmdDtcclxuICAgICAgdGhpcy5vdXRtYXJrZXJzLnB1c2gob3V0bWFya2VyKTtcclxuICAgIH0pXHJcblxyXG4gICAgaWYgKHRoaXMud2lkdGggJiYgdGhpcy5oZWlnaHQpIHtcclxuICAgICAgY29uc3QgY2FudmFzU2NhbGVkRWxlbWVudDogSFRNTENhbnZhc0VsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdjYW52YXMnKTtcclxuICAgICAgY29uc3QgY2FudmFzU2NhbGVkID0gbmV3IGZhYnJpYy5DYW52YXMoY2FudmFzU2NhbGVkRWxlbWVudCk7XHJcbiAgICAgIGNhbnZhc1NjYWxlZC5iYWNrZ3JvdW5kQ29sb3IgPSAnd2hpdGUnO1xyXG5cclxuICAgICAgbmV3IE9ic2VydmFibGU8ZmFicmljLkNhbnZhcz4ob2JzZXJ2ZXIgPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLmltYWdlVXNlZCkge1xyXG5cclxuICAgICAgICAgICAgY2FudmFzU2NhbGVkLnNldEJhY2tncm91bmRJbWFnZSh0aGlzLmltYWdlVXNlZCwgKGltZzogSFRNTEltYWdlRWxlbWVudCkgPT4ge1xyXG4gICAgICAgICAgICAgIGlmICghaW1nKSB7XHJcbiAgICAgICAgICAgICAgICBvYnNlcnZlci5lcnJvcihuZXcgRXJyb3IoJ0ltcG9zc2libGUgdG8gZHJhdyB0aGUgaW1hZ2Ugb24gdGhlIHRlbXBvcmFyeSBjYW52YXMnKSk7XHJcbiAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICBjYW52YXNTY2FsZWQuc2V0V2lkdGgoaW1nLndpZHRoKTtcclxuICAgICAgICAgICAgICBjYW52YXNTY2FsZWQuc2V0SGVpZ2h0KGltZy5oZWlnaHQpO1xyXG5cclxuICAgICAgICAgICAgICBvYnNlcnZlci5uZXh0KGNhbnZhc1NjYWxlZCk7XHJcbiAgICAgICAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcclxuICAgICAgICAgICAgfSwge1xyXG4gICAgICAgICAgICAgIGNyb3NzT3JpZ2luOiAnYW5vbnltb3VzJyxcclxuICAgICAgICAgICAgICBvcmlnaW5YOiAnbGVmdCcsXHJcbiAgICAgICAgICAgICAgb3JpZ2luWTogJ3RvcCdcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICBcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgY2FudmFzU2NhbGVkLnNldFdpZHRoKHRoaXMud2lkdGgpO1xyXG4gICAgICAgICAgY2FudmFzU2NhbGVkLnNldEhlaWdodCh0aGlzLmhlaWdodCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KS5waXBlKFxyXG4gICAgICAgIHN3aXRjaE1hcCgoKSA9PiB7XHJcbiAgICAgICAgICBsZXQgcHJvY2VzcyA9IG9mKGNhbnZhc1NjYWxlZCk7XHJcblxyXG4gICAgICAgICAgaWYgKHRoaXMuY2FudmFzLmdldE9iamVjdHMoKS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHJhdGlvWCA9IGNhbnZhc1NjYWxlZC5nZXRXaWR0aCgpIC8gdGhpcy5jYW52YXMuZ2V0V2lkdGgoKTtcclxuICAgICAgICAgICAgY29uc3QgcmF0aW9ZID0gY2FudmFzU2NhbGVkLmdldEhlaWdodCgpIC8gdGhpcy5jYW52YXMuZ2V0SGVpZ2h0KCk7XHJcblxyXG4gICAgICAgICAgICB0aGlzLmNhbnZhcy5nZXRPYmplY3RzKCkuZm9yRWFjaCgob3JpZ2luYWxPYmplY3Q6IGZhYnJpYy5PYmplY3QsIGk6IG51bWJlcikgPT4ge1xyXG4gICAgICAgICAgICAgIHByb2Nlc3MgPSBwcm9jZXNzLnBpcGUoc3dpdGNoTWFwKCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZTxmYWJyaWMuQ2FudmFzPihvYnNlcnZlck9iamVjdCA9PiB7XHJcbiAgICAgICAgICAgICAgICAgIG9yaWdpbmFsT2JqZWN0LmNsb25lKChjbG9uZWRPYmplY3Q6IGZhYnJpYy5PYmplY3QpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBjbG9uZWRPYmplY3Quc2V0KCdsZWZ0Jywgb3JpZ2luYWxPYmplY3QubGVmdCAqIHJhdGlvWCk7XHJcbiAgICAgICAgICAgICAgICAgICAgY2xvbmVkT2JqZWN0LnNldCgndG9wJywgb3JpZ2luYWxPYmplY3QudG9wICogcmF0aW9ZKTtcclxuICAgICAgICAgICAgICAgICAgICBjbG9uZWRPYmplY3Quc2NhbGVUb1dpZHRoKG9yaWdpbmFsT2JqZWN0LndpZHRoICogcmF0aW9YKTtcclxuICAgICAgICAgICAgICAgICAgICBjbG9uZWRPYmplY3Quc2NhbGVUb0hlaWdodChvcmlnaW5hbE9iamVjdC5oZWlnaHQgKiByYXRpb1kpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBjYW52YXNTY2FsZWQuaW5zZXJ0QXQoY2xvbmVkT2JqZWN0LCBpLCBmYWxzZSk7XHJcbiAgICAgICAgICAgICAgICAgICAgY2FudmFzU2NhbGVkLnJlbmRlckFsbCgpO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBvYnNlcnZlck9iamVjdC5uZXh0KGNhbnZhc1NjYWxlZCk7XHJcbiAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXJPYmplY3QuY29tcGxldGUoKTtcclxuICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICB9KSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcmV0dXJuIHByb2Nlc3M7XHJcbiAgICAgICAgfSksXHJcbiAgICAgICkuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICBjYW52YXNTY2FsZWQucmVuZGVyQWxsKCk7XHJcbiAgICAgICAgY2FudmFzU2NhbGVkLmdldEVsZW1lbnQoKS50b0Jsb2IoXHJcbiAgICAgICAgICAoZGF0YTogQmxvYikgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLm1hcmtlZEltYWdlLmltYWdlID0gZGF0YTtcclxuICAgICAgICAgICAgdGhpcy5tYXJrZWRJbWFnZS5vdXRtYXJrZXJzID0gdGhpcy5vdXRtYXJrZXJzO1xyXG4gICAgICAgICAgICB0aGlzLnNhdmUuZW1pdCh0aGlzLm1hcmtlZEltYWdlKTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICB0aGlzLm91dHB1dE1pbWVUeXBlLFxyXG4gICAgICAgICAgdGhpcy5vdXRwdXRRdWFsaXR5XHJcbiAgICAgICAgKTtcclxuICAgICAgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmNhbnZhcy5nZXRFbGVtZW50KCkudG9CbG9iKFxyXG4gICAgICAgIChkYXRhOiBCbG9iKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLm1hcmtlZEltYWdlLmltYWdlID0gZGF0YTtcclxuICAgICAgICAgIHRoaXMubWFya2VkSW1hZ2Uub3V0bWFya2VycyA9IHRoaXMub3V0bWFya2VycztcclxuICAgICAgICAgIHRoaXMuc2F2ZS5lbWl0KHRoaXMubWFya2VkSW1hZ2UpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgdGhpcy5vdXRwdXRNaW1lVHlwZSxcclxuICAgICAgICB0aGlzLm91dHB1dFF1YWxpdHlcclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcbiAgLy90aGlzLnNhdmUuZW1pdCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsb3NlKCl7XHJcbiAgICB0aGlzLmNsb3NlRGlhbG9nLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIHJhbmRvbUludEZyb21JbnRlcnZhbChtaW4sIG1heCkgeyAvLyBtaW4gYW5kIG1heCBpbmNsdWRlZCBcclxuICAgIHJldHVybiBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAobWF4IC0gbWluICsgMSkgKyBtaW4pXHJcbiAgfVxyXG5cclxuICBsb2coZWwpe1xyXG4gICAgY29uc29sZS5sb2coZWwpO1xyXG4gIH1cclxuXHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBNYXJrZXIge1xyXG4gIGNpcmNsZTogZmFicmljLkNpcmNsZTtcclxuICB0ZXh0OiBmYWJyaWMuVGV4dDtcclxuICBncm91cDogZmFicmljLkdyb3VwO1xyXG4gIHRvcDogbnVtYmVyO1xyXG4gIGxlZnQ6IG51bWJlcjtcclxuICBjYXB0aW9uOiBzdHJpbmc7XHJcbiAgZGVzY3JpcHRpb246IHN0cmluZyA9IFwiXCI7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBPdXRNYXJrZXIge1xyXG4gIHRvcDogbnVtYmVyO1xyXG4gIGxlZnQ6IG51bWJlcjtcclxuICBjYXB0aW9uOiBzdHJpbmc7XHJcbiAgZGVzY3JpcHRpb246IHN0cmluZyA9IFwiXCI7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBNYXJrZWRJbWFnZSB7XHJcbiAgb3V0bWFya2VyczogQXJyYXk8T3V0TWFya2VyPjtcclxuICBpbWFnZTogQmxvYjtcclxufSIsIjxkaXYgY2xhc3M9XCJjYW52YXMtY29udGFpbmVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY2FudmFzXCI+XHJcbiAgICAgICAgPGNhbnZhcyBbaWRdPVwiY29tcG9uZW50R3VpZFwiPjwvY2FudmFzPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IGNsYXNzPVwidG9vbGJveFwiPlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTJcIj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgbWFya2VyQnV0dG9uXCIgKGNsaWNrKT1cIm5ld01hcmtlcigpXCI+Q3JlYSBudW92byBtYXJrZXI8L2J1dHRvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgbXQtMlwiPlxyXG5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWdlbmRfb3ZlcmZsb3dfY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZ2VuZF9jb250YWluZXJcIiAqbmdGb3I9XCJsZXQgbWFya2VyIG9mIG1hcmtlcnM7IGluZGV4IGFzIGlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcHRpb25cIiBbaW5uZXJIVE1MXT1cIm1hcmtlci5jYXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0YXJlYVwiPjx0ZXh0YXJlYSAgWyhuZ01vZGVsKV09XCJtYXJrZXIuZGVzY3JpcHRpb25cIiAoY2xpY2spPVwibG9nKG1hcmtlci5kZXNjcmlwdGlvbilcIj48L3RleHRhcmVhPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGVsZXRlXCIgKGNsaWNrKT1cImRlbGV0ZU1hcmtlckJ5SW5kZXgoaSlcIj48bWF0LWljb24+ZGVsZXRlPC9tYXQtaWNvbj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtMTIgbXQtMlwiICpuZ0lmPVwiIWluQ29uZmlnXCI+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1zdWNjZXNzIG1hcmtlckJ1dHRvblwiIChjbGljayk9XCJzYXZlSW1hZ2UoKVwiPlNhbHZhIEltbWFnaW5lPC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIG10LTJcIj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXdhcm5pbmcgbWFya2VyQnV0dG9uXCIgKGNsaWNrKT1cInJlbW92ZUFsbE1hcmtlcnMoKVwiPlJpbXVvdmkgdHV0dGkgaSBtYXJrZXJzPC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIG10LTJcIj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLWRhbmdlciBtYXJrZXJCdXR0b25cIiAoY2xpY2spPVwiY2xvc2UoKVwiPkFubnVsbGEgRGlzZWdubzwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICBcclxuXHJcblxyXG5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj4iXX0=
|
|
337
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG13LWltYWdlLW1hcmtlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lcXAtZHluYW1pYy1tb2R1bGUvc3JjL2xpYi9jb21wb25lbnRzL3ByaXZhdGUvdG13LWltYWdlLW1hcmtlci90bXctaW1hZ2UtbWFya2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VxcC1keW5hbWljLW1vZHVsZS9zcmMvbGliL2NvbXBvbmVudHMvcHJpdmF0ZS90bXctaW1hZ2UtbWFya2VyL3Rtdy1pbWFnZS1tYXJrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ2hDLE9BQU8sRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7Ozs7O0FBT2pFLE1BQU0sT0FBTyx1QkFBdUI7SUFrQ2xDO1FBN0JTLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFDMUIsaUJBQVksR0FBVyxJQUFJLENBQUM7UUFFckIsbUJBQWMsR0FBRyxZQUFZLENBQUM7UUFDOUIsa0JBQWEsR0FBRyxHQUFHLENBQUM7UUFFcEIsb0JBQWUsR0FBRyxJQUFJLENBQUM7UUFFN0IsZ0JBQVcsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUMzRCxTQUFJLEdBQThCLElBQUksWUFBWSxFQUFlLENBQUM7UUFHNUUsY0FBUyxHQUFZLElBQUksQ0FBQztRQUMxQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBR2xCLFVBQUssR0FBb0IsRUFBRSxDQUFDO1FBRXBDLFlB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QUFDLEVBQUU7UUFDSixhQUFhLENBQUMsUUFBUSxDQUFDLHNCQUFzQixFQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3BELENBQUM7O3FIQXpYVSx1QkFBdUI7eUdBQXZCLHVCQUF1QixtVUNWcEMsb29EQW9DTTs0RkQxQk8sdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLGtCQUFrQjswRUFNbkIsR0FBRztzQkFBWCxLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUVVLGNBQWM7c0JBQTdCLEtBQUs7Z0JBQ1UsYUFBYTtzQkFBNUIsS0FBSztnQkFFVSxlQUFlO3NCQUE5QixLQUFLO2dCQUVJLFdBQVc7c0JBQXBCLE1BQU07Z0JBQ0csSUFBSTtzQkFBYixNQUFNOztBQStXVCxNQUFNLE9BQU8sTUFBTTtJQUFuQjtRQU9FLGdCQUFXLEdBQVcsRUFBRSxDQUFDO0lBQzNCLENBQUM7Q0FBQTtBQUVELE1BQU0sT0FBTyxTQUFTO0lBQXRCO1FBSUUsZ0JBQVcsR0FBVyxFQUFFLENBQUM7SUFDM0IsQ0FBQztDQUFBO0FBRUQsTUFBTSxPQUFPLFdBQVc7Q0FHdkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBmYWJyaWMgfSBmcm9tICdmYWJyaWMnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEdsb2JhbFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9nbG9iYWwuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3Rtdy1pbWFnZS1tYXJrZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi90bXctaW1hZ2UtbWFya2VyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi90bXctaW1hZ2UtbWFya2VyLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFRtd0ltYWdlTWFya2VyQ29tcG9uZW50IHtcclxuXHJcbiAgQElucHV0KCkgc3JjOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgd2lkdGg6IG51bWJlcjtcclxuICBASW5wdXQoKSBoZWlnaHQ6IG51bWJlcjtcclxuICBASW5wdXQoKSBpbkNvbmZpZzogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHNhdmVkTWFya2Vyczogc3RyaW5nID0gbnVsbDtcclxuXHJcbiAgQElucHV0KCkgcHVibGljIG91dHB1dE1pbWVUeXBlID0gJ2ltYWdlL2pwZWcnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBvdXRwdXRRdWFsaXR5ID0gMC44O1xyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgZm9yY2VTaXplQ2FudmFzID0gdHJ1ZTtcclxuXHJcbiAgQE91dHB1dCgpIGNsb3NlRGlhbG9nOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcbiAgQE91dHB1dCgpIHNhdmU6IEV2ZW50RW1pdHRlcjxNYXJrZWRJbWFnZT4gPSBuZXcgRXZlbnRFbWl0dGVyPE1hcmtlZEltYWdlPigpO1xyXG5cclxuICBjb21wb25lbnRHdWlkOiBzdHJpbmc7XHJcbiAgaXNMb2FkaW5nOiBib29sZWFuID0gdHJ1ZTtcclxuICBoYXNFcnJvcjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBwcml2YXRlIGNhbnZhczogZmFicmljLkNhbnZhcztcclxuICBwcml2YXRlIHN0YWNrOiBmYWJyaWMuT2JqZWN0W10gPSBbXTtcclxuXHJcbiAgbWFya2VyczogQXJyYXk8TWFya2VyPiA9IG5ldyBBcnJheTxNYXJrZXI+KCk7XHJcbiAgb3V0bWFya2VyczogQXJyYXk8T3V0TWFya2VyPiA9IG5ldyBBcnJheTxPdXRNYXJrZXI+KCk7XHJcbiAgbWFya2VkSW1hZ2U6IE1hcmtlZEltYWdlID0gbmV3IE1hcmtlZEltYWdlKCk7XHJcblxyXG4gIGNhblVuZG86IGJvb2xlYW4gPSBmYWxzZTtcclxuICBjYW5SZWRvOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIGVycm9yTWVzc2FnZTogc3RyaW5nID0gXCJcIjtcclxuXHJcbiAgcHJpdmF0ZSBpbWFnZVVzZWQ/OiBmYWJyaWMuSW1hZ2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge31cclxuXHJcbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG5cclxuICAgIC8vIENyZWF6aW9uZSBkaSB1bmEgR1VJRCB1bmljYSBwZXIgaWwgY29tcG9uZW50ZVxyXG4gICAgdGhpcy5jb21wb25lbnRHdWlkID0gJ3h4eHgteHh4eC14eHh4LXh4eHgnLnJlcGxhY2UoL1t4eV0vZywgZnVuY3Rpb24gKGMpIHtcclxuICAgICAgdmFyIHIgPSBNYXRoLnJhbmRvbSgpICogMTYgfCAwLFxyXG4gICAgICAgIHYgPSBjID09ICd4JyA/IHIgOiAociAmIDB4MyB8IDB4OCk7XHJcbiAgICAgIHJldHVybiB2LnRvU3RyaW5nKDE2KTtcclxuICAgIH0pO1xyXG5cclxuICB9XHJcblxyXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xyXG5cclxuICAgIGNvbnN0IGNhbnZhc1NjYWxlZEVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0aGlzLmNvbXBvbmVudEd1aWQpO1xyXG4gICAgdGhpcy5jYW52YXMgPSBuZXcgZmFicmljLkNhbnZhcyhjYW52YXNTY2FsZWRFbGVtZW50LCB7XHJcbiAgICAgIGhvdmVyQ3Vyc29yOiAncG9pbnRlcicsXHJcbiAgICAgIGlzRHJhd2luZ01vZGU6IGZhbHNlLFxyXG4gICAgfSk7XHJcbiAgICB0aGlzLmNhbnZhcy5iYWNrZ3JvdW5kQ29sb3IgPSAnd2hpdGUnO1xyXG5cclxuICAgIGlmICh0aGlzLnNyYykge1xyXG4gICAgICB0aGlzLmltcG9ydFBob3RvRnJvbVNyYyh0aGlzLnNyYyk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBpZiAoIXRoaXMud2lkdGggfHwgIXRoaXMuaGVpZ2h0KSB7XHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdObyB3aWR0aCBvciBoaWdodCBnaXZlbiAhJyk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMuY2FudmFzLnNldFdpZHRoKHRoaXMud2lkdGgpO1xyXG4gICAgICB0aGlzLmNhbnZhcy5zZXRIZWlnaHQodGhpcy5oZWlnaHQpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuY2FudmFzLm9uKCdwYXRoOmNyZWF0ZWQnLCAoKSA9PiB7XHJcbiAgICAgIHRoaXMuc3RhY2sgPSBbXTtcclxuICAgICAgdGhpcy5zZXRVbmRvUmVkbygpO1xyXG4gICAgfSk7XHJcblxyXG4gIH0gIFxyXG5cclxuICBuZXdNYXJrZXIoKXtcclxuICAgIHZhciBzdGFydFggPSBNYXRoLmZsb29yKHRoaXMud2lkdGggLyAyKTtcclxuICAgIHZhciBzdGFydFkgPSBNYXRoLmZsb29yKHRoaXMuaGVpZ2h0IC8gMik7XHJcblxyXG4gICAgdmFyIGxlZnQgPSB0aGlzLnJhbmRvbUludEZyb21JbnRlcnZhbChzdGFydFgtMTAwLHN0YXJ0WCsxMDApO1xyXG4gICAgdmFyIHRvcCA9IHRoaXMucmFuZG9tSW50RnJvbUludGVydmFsKHN0YXJ0WS0xMDAsc3RhcnRZKzEwMCk7XHJcbiAgICB2YXIgZGVzY3JpcHRpb246ICcnO1xyXG4gICAgdmFyIGNhcHRpb24gPSAnMCc7XHJcblxyXG4gICAgLy8gQ3JlYXppb25lIGRlbGxhIGNhcHRpb25cclxuICAgIGZvciAodmFyIGkgPSAxOyBpIDw9IDEwMDAwMDsgaSsrKXtcclxuICAgICAgaWYgKHRoaXMubWFya2Vycy5maW5kKHggPT4geC5jYXB0aW9uID09IGkudG9TdHJpbmcoKSkgPT0gbnVsbCl7XHJcbiAgICAgICAgY2FwdGlvbiA9IGkudG9TdHJpbmcoKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcblxyXG4gICAgdGhpcy5jcmVhdGVNYXJrZXIodG9wLGxlZnQsY2FwdGlvbixkZXNjcmlwdGlvbik7XHJcbiAgfVxyXG5cclxuICBjcmVhdGVNYXJrZXIodG9wOiBudW1iZXIsIGxlZnQ6IG51bWJlciwgY2FwdGlvbjogc3RyaW5nLCBkZXNjcmlwdGlvbjogc3RyaW5nKXtcclxuXHJcbiAgICAvKlxyXG4gICAgKiBDcmVvIHVuIG51b3ZvIE1hcmtlclxyXG4gICAgKi9cclxuXHJcbiAgICAvLyBDcmVvIGlsIGNlcmNoaW9cclxuICAgIHZhciBjaXJjbGUgPSBuZXcgZmFicmljLkNpcmNsZSh7XHJcbiAgICAgIHJhZGl1czogMzAsXHJcbiAgICAgIG9wYWNpdHk6IDAuNyxcclxuICAgICAgZmlsbDogJ2RhcmtibHVlJyxcclxuICAgICAgc3Ryb2tlOiAnd2hpdGUnLFxyXG4gICAgICBzdHJva2VXaWR0aDogMixcclxuICAgICAgb3JpZ2luWDogJ2NlbnRlcicsIFxyXG4gICAgICBvcmlnaW5ZOiAnY2VudGVyJyBcclxuICAgIH0pO1xyXG5cclxuICAgIC8vIENyZW8gaWwgdGVzdG8gZGVudHJvIGFsIGNlcmNoaW8gXHJcbiAgICB2YXIgdGV4dCA9IG5ldyBmYWJyaWMuVGV4dChjYXB0aW9uLFxyXG4gICAgeyAgZm9udFNpemU6IDI1LCBcclxuICAgICAgICBvcmlnaW5YOiAnY2VudGVyJywgXHJcbiAgICAgICAgb3JpZ2luWTogJ2NlbnRlcicsXHJcbiAgICAgICAgZmlsbCA6ICd3aGl0ZScgXHJcbiAgICAgIH0pO1xyXG5cclxuICAgIC8vIENyZW8gaWwgZ3J1cHBvIG5lbCBxdWFsZSBtZXR0byBjZXJjaGlvIGUgdGVzdG8gaW4gbW9kbyBjaGUgc2kgbXVvdmFubyBpbnNpZW1lXHJcbiAgICB2YXIgZ3JvdXAgPSBuZXcgZmFicmljLkdyb3VwKFsgY2lyY2xlLCB0ZXh0IF0sIHsgIGxlZnQ6IGxlZnQsIHRvcDogdG9wIH0pOyAgICBcclxuXHJcbiAgICAvLyBDcmVvIHVuIG9nZ2V0dG8gbWFya2VyIGNoZSBjb250aWVuZSBnbGkgZWxlbWVudGkgYXRvbWljaS4gU2VydmUgcGVyIGxlIGNhbmNlbGxhemlvbmkgZSBpbCByb2xsYmFjay9tb2RpZmljYSBkZWdsaSBlbGVtZW50aVxyXG4gICAgdmFyIG1hcmtlcjogTWFya2VyID0gbmV3IE1hcmtlcigpO1xyXG4gICAgbWFya2VyLmNpcmNsZSA9IGNpcmNsZTtcclxuICAgIG1hcmtlci50ZXh0ID0gdGV4dDtcclxuICAgIG1hcmtlci5ncm91cCA9IGdyb3VwO1xyXG4gICAgbWFya2VyLmNhcHRpb24gPSBjYXB0aW9uO1xyXG4gICAgbWFya2VyLmRlc2NyaXB0aW9uID0gZGVzY3JpcHRpb247XHJcblxyXG4gICAgLy8gQWdnaXVuZ28gaWwgZ3J1cHBvIG5lbGxhIGxpc3RhIGRlaSBncnVwcGlcclxuICAgIHRoaXMubWFya2Vycy5wdXNoKG1hcmtlcik7XHJcbiAgICB0aGlzLm1hcmtlcnMuc29ydCgoYSxiKT0+IHsgcmV0dXJuIE51bWJlcihhLmNhcHRpb24pIC0gTnVtYmVyKGIuY2FwdGlvbikgfSk7XHJcblxyXG4gICAgLy8gQWdnaXVuZ28gaWwgZ3J1cHBvIGFsbCdpbW1hZ2luZSBhIHNjaGVybW9cclxuICAgIHRoaXMuY2FudmFzLmFkZChncm91cCk7XHJcbiAgfVxyXG5cclxuICBkZWxldGVNYXJrZXJCeUluZGV4KGluZGV4OiBudW1iZXIpe1xyXG4gICAgdGhpcy5jYW52YXMucmVtb3ZlKHRoaXMubWFya2Vyc1tpbmRleF0uZ3JvdXApO1xyXG4gICAgdGhpcy5tYXJrZXJzLnNwbGljZShpbmRleCwxKTtcclxuICB9XHJcblxyXG4gIHJlbW92ZUFsbE1hcmtlcnMoKXtcclxuICAgIHRoaXMubWFya2Vycy5mb3JFYWNoKChtYXJrZXIpID0+IHtcclxuICAgICAgdGhpcy5jYW52YXMucmVtb3ZlKG1hcmtlci5ncm91cCk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMubWFya2VycyA9IG5ldyBBcnJheTxNYXJrZXI+KCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHNldFVuZG9SZWRvKCkge1xyXG4gICAgdGhpcy5jYW5VbmRvID0gdGhpcy5jYW52YXMuZ2V0T2JqZWN0cygpLmxlbmd0aCA+IDA7XHJcbiAgICB0aGlzLmNhblJlZG8gPSB0aGlzLnN0YWNrLmxlbmd0aCA+IDA7XHJcbiAgfVxyXG5cclxuICAvKlxyXG5cclxuICAgIC8vIEFjdGlvbnNcclxuICAgIHB1YmxpYyB1bmRvKCkge1xyXG4gICAgICBpZiAodGhpcy5jYW5VbmRvKSB7XHJcbiAgICAgICAgY29uc3QgbGFzdElkID0gdGhpcy5jYW52YXMuZ2V0T2JqZWN0cygpLmxlbmd0aCAtIDE7XHJcbiAgICAgICAgY29uc3QgbGFzdE9iaiA9IHRoaXMuY2FudmFzLmdldE9iamVjdHMoKVtsYXN0SWRdO1xyXG4gICAgICAgIHRoaXMuc3RhY2sucHVzaChsYXN0T2JqKTtcclxuICAgICAgICB0aGlzLmNhbnZhcy5yZW1vdmUobGFzdE9iaik7XHJcbiAgICAgICAgdGhpcy5zZXRVbmRvUmVkbygpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgXHJcbiAgICBwdWJsaWMgcmVkbygpIHtcclxuICAgICAgaWYgKHRoaXMuY2FuUmVkbykge1xyXG4gICAgICAgIGNvbnN0IGZpcnN0SW5TdGFjayA9IHRoaXMuc3RhY2suc3BsaWNlKC0xLCAxKVswXTtcclxuICAgICAgICBpZiAoZmlyc3RJblN0YWNrKSB7XHJcbiAgICAgICAgICB0aGlzLmNhbnZhcy5pbnNlcnRBdChmaXJzdEluU3RhY2ssIHRoaXMuY2FudmFzLmdldE9iamVjdHMoKS5sZW5ndGggLSAxLCBmYWxzZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuc2V0VW5kb1JlZG8oKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIFxyXG4gICAgcHVibGljIGNsZWFyQ2FudmFzKCkge1xyXG4gICAgICBpZiAodGhpcy5jYW52YXMpIHtcclxuICAgICAgICB0aGlzLmNhbnZhcy5yZW1vdmUoLi4udGhpcy5jYW52YXMuZ2V0T2JqZWN0cygpKTtcclxuICAgICAgICB0aGlzLnNldFVuZG9SZWRvKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiovXHJcblxyXG4gIHByaXZhdGUgaW1wb3J0UGhvdG9Gcm9tU3JjKHNyYzogc3RyaW5nKSB7XHJcbiAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XHJcbiAgICBsZXQgaXNGaXJzdFRyeSA9IHRydWU7XHJcbiAgICBjb25zdCBpbWdFbCA9IG5ldyBJbWFnZSgpO1xyXG4gICAgaW1nRWwuc2V0QXR0cmlidXRlKCdjcm9zc09yaWdpbicsICdhbm9ueW1vdXMnKTtcclxuICAgIGltZ0VsLnNyYyA9IHNyYztcclxuICAgIGltZ0VsLm9uZXJyb3IgPSAoKSA9PiB7XHJcbiAgICAgIC8vIFJldHJ5IHdpdGggY29ycyBwcm94eVxyXG4gICAgICBpZiAoaXNGaXJzdFRyeSkge1xyXG4gICAgICAgIGltZ0VsLnNyYyA9ICdodHRwczovL2NvcnMtYW55d2hlcmUuaGVyb2t1YXBwLmNvbS8nICsgdGhpcy5zcmM7XHJcbiAgICAgICAgaXNGaXJzdFRyeSA9IGZhbHNlO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5oYXNFcnJvciA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSBcIkNPUlMgRXJyb3JcIjtcclxuICAgICAgfVxyXG4gICAgfTtcclxuICAgIGltZ0VsLm9ubG9hZCA9ICgpID0+IHtcclxuICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgdGhpcy5pbWFnZVVzZWQgPSBuZXcgZmFicmljLkltYWdlKGltZ0VsKTtcclxuXHJcbiAgICAgIHRoaXMuaW1hZ2VVc2VkLmNsb25lQXNJbWFnZShpbWFnZSA9PiB7XHJcbiAgICAgICAgbGV0IHdpZHRoID0gaW1nRWwud2lkdGg7XHJcbiAgICAgICAgbGV0IGhlaWdodCA9IGltZ0VsLmhlaWdodDtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMud2lkdGgpIHtcclxuICAgICAgICAgIHdpZHRoID0gdGhpcy53aWR0aDtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRoaXMuaGVpZ2h0KSB7XHJcbiAgICAgICAgICBoZWlnaHQgPSB0aGlzLmhlaWdodDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGltYWdlLnNjYWxlVG9XaWR0aCh3aWR0aCwgZmFsc2UpO1xyXG4gICAgICAgIGltYWdlLnNjYWxlVG9IZWlnaHQoaGVpZ2h0LCBmYWxzZSk7XHJcblxyXG4gICAgICAgIHRoaXMuY2FudmFzLnNldEJhY2tncm91bmRJbWFnZShpbWFnZSwgKChpbWc6IEhUTUxJbWFnZUVsZW1lbnQpID0+IHtcclxuICAgICAgICAgIGlmIChpbWcpIHtcclxuICAgICAgICAgICAgaWYgKHRoaXMuZm9yY2VTaXplQ2FudmFzKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5jYW52YXMuc2V0V2lkdGgod2lkdGgpO1xyXG4gICAgICAgICAgICAgIHRoaXMuY2FudmFzLnNldEhlaWdodChoZWlnaHQpO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHRoaXMuY2FudmFzLnNldFdpZHRoKGltYWdlLmdldFNjYWxlZFdpZHRoKCkpO1xyXG4gICAgICAgICAgICAgIHRoaXMuY2FudmFzLnNldEhlaWdodChpbWFnZS5nZXRTY2FsZWRIZWlnaHQoKSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9KSwge1xyXG4gICAgICAgICAgY3Jvc3NPcmlnaW46ICdhbm9ueW1vdXMnLFxyXG4gICAgICAgICAgb3JpZ2luWDogJ2xlZnQnLFxyXG4gICAgICAgICAgb3JpZ2luWTogJ3RvcCdcclxuICAgICAgICB9KTtcclxuICAgICAgfSk7XHJcblxyXG4gICAgICBpZiAodGhpcy5zYXZlZE1hcmtlcnMgIT0gbnVsbCl7IHRoaXMubG9hZE1hcmtlcnMoKTsgfVxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIGxvYWRNYXJrZXJzKCl7XHJcbiAgICB2YXIgbWFya2Vyc09iajogQXJyYXk8T3V0TWFya2VyPiA9IEpTT04ucGFyc2UodGhpcy5zYXZlZE1hcmtlcnMpO1xyXG4gICAgbWFya2Vyc09iai5mb3JFYWNoKChtYXJrZXIpID0+IHtcclxuICAgICAgdGhpcy5jcmVhdGVNYXJrZXIobWFya2VyLnRvcCxtYXJrZXIubGVmdCxtYXJrZXIuY2FwdGlvbixtYXJrZXIuZGVzY3JpcHRpb24pO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2F2ZUltYWdlKCl7XHJcblxyXG4gICAgdGhpcy5vdXRtYXJrZXJzID0gbmV3IEFycmF5PE91dE1hcmtlcj4oKTtcclxuXHJcbiAgICB0aGlzLm1hcmtlcnMuZm9yRWFjaCgobWFya2VyKSA9PiB7XHJcbiAgICAgIHZhciBvdXRtYXJrZXIgPSBuZXcgT3V0TWFya2VyKCk7XHJcbiAgICAgIG91dG1hcmtlci5jYXB0aW9uID0gbWFya2VyLmNhcHRpb247XHJcbiAgICAgIG91dG1hcmtlci5kZXNjcmlwdGlvbiA9IG1hcmtlci5kZXNjcmlwdGlvbjtcclxuICAgICAgb3V0bWFya2VyLnRvcCA9IG1hcmtlci5ncm91cC50b3A7XHJcbiAgICAgIG91dG1hcmtlci5sZWZ0ID0gbWFya2VyLmdyb3VwLmxlZnQ7XHJcbiAgICAgIHRoaXMub3V0bWFya2Vycy5wdXNoKG91dG1hcmtlcik7XHJcbiAgICB9KVxyXG5cclxuICAgIGlmICh0aGlzLndpZHRoICYmIHRoaXMuaGVpZ2h0KSB7XHJcbiAgICAgIGNvbnN0IGNhbnZhc1NjYWxlZEVsZW1lbnQ6IEhUTUxDYW52YXNFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7XHJcbiAgICAgIGNvbnN0IGNhbnZhc1NjYWxlZCA9IG5ldyBmYWJyaWMuQ2FudmFzKGNhbnZhc1NjYWxlZEVsZW1lbnQpO1xyXG4gICAgICBjYW52YXNTY2FsZWQuYmFja2dyb3VuZENvbG9yID0gJ3doaXRlJztcclxuXHJcbiAgICAgIG5ldyBPYnNlcnZhYmxlPGZhYnJpYy5DYW52YXM+KG9ic2VydmVyID0+IHtcclxuICAgICAgICBpZiAodGhpcy5pbWFnZVVzZWQpIHtcclxuXHJcbiAgICAgICAgICAgIGNhbnZhc1NjYWxlZC5zZXRCYWNrZ3JvdW5kSW1hZ2UodGhpcy5pbWFnZVVzZWQsIChpbWc6IEhUTUxJbWFnZUVsZW1lbnQpID0+IHtcclxuICAgICAgICAgICAgICBpZiAoIWltZykge1xyXG4gICAgICAgICAgICAgICAgb2JzZXJ2ZXIuZXJyb3IobmV3IEVycm9yKCdJbXBvc3NpYmxlIHRvIGRyYXcgdGhlIGltYWdlIG9uIHRoZSB0ZW1wb3JhcnkgY2FudmFzJykpO1xyXG4gICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgY2FudmFzU2NhbGVkLnNldFdpZHRoKGltZy53aWR0aCk7XHJcbiAgICAgICAgICAgICAgY2FudmFzU2NhbGVkLnNldEhlaWdodChpbWcuaGVpZ2h0KTtcclxuXHJcbiAgICAgICAgICAgICAgb2JzZXJ2ZXIubmV4dChjYW52YXNTY2FsZWQpO1xyXG4gICAgICAgICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKCk7XHJcbiAgICAgICAgICAgIH0sIHtcclxuICAgICAgICAgICAgICBjcm9zc09yaWdpbjogJ2Fub255bW91cycsXHJcbiAgICAgICAgICAgICAgb3JpZ2luWDogJ2xlZnQnLFxyXG4gICAgICAgICAgICAgIG9yaWdpblk6ICd0b3AnXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgXHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGNhbnZhc1NjYWxlZC5zZXRXaWR0aCh0aGlzLndpZHRoKTtcclxuICAgICAgICAgIGNhbnZhc1NjYWxlZC5zZXRIZWlnaHQodGhpcy5oZWlnaHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfSkucGlwZShcclxuICAgICAgICBzd2l0Y2hNYXAoKCkgPT4ge1xyXG4gICAgICAgICAgbGV0IHByb2Nlc3MgPSBvZihjYW52YXNTY2FsZWQpO1xyXG5cclxuICAgICAgICAgIGlmICh0aGlzLmNhbnZhcy5nZXRPYmplY3RzKCkubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICBjb25zdCByYXRpb1ggPSBjYW52YXNTY2FsZWQuZ2V0V2lkdGgoKSAvIHRoaXMuY2FudmFzLmdldFdpZHRoKCk7XHJcbiAgICAgICAgICAgIGNvbnN0IHJhdGlvWSA9IGNhbnZhc1NjYWxlZC5nZXRIZWlnaHQoKSAvIHRoaXMuY2FudmFzLmdldEhlaWdodCgpO1xyXG5cclxuICAgICAgICAgICAgdGhpcy5jYW52YXMuZ2V0T2JqZWN0cygpLmZvckVhY2goKG9yaWdpbmFsT2JqZWN0OiBmYWJyaWMuT2JqZWN0LCBpOiBudW1iZXIpID0+IHtcclxuICAgICAgICAgICAgICBwcm9jZXNzID0gcHJvY2Vzcy5waXBlKHN3aXRjaE1hcCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV3IE9ic2VydmFibGU8ZmFicmljLkNhbnZhcz4ob2JzZXJ2ZXJPYmplY3QgPT4ge1xyXG4gICAgICAgICAgICAgICAgICBvcmlnaW5hbE9iamVjdC5jbG9uZSgoY2xvbmVkT2JqZWN0OiBmYWJyaWMuT2JqZWN0KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgY2xvbmVkT2JqZWN0LnNldCgnbGVmdCcsIG9yaWdpbmFsT2JqZWN0LmxlZnQgKiByYXRpb1gpO1xyXG4gICAgICAgICAgICAgICAgICAgIGNsb25lZE9iamVjdC5zZXQoJ3RvcCcsIG9yaWdpbmFsT2JqZWN0LnRvcCAqIHJhdGlvWSk7XHJcbiAgICAgICAgICAgICAgICAgICAgY2xvbmVkT2JqZWN0LnNjYWxlVG9XaWR0aChvcmlnaW5hbE9iamVjdC53aWR0aCAqIHJhdGlvWCk7XHJcbiAgICAgICAgICAgICAgICAgICAgY2xvbmVkT2JqZWN0LnNjYWxlVG9IZWlnaHQob3JpZ2luYWxPYmplY3QuaGVpZ2h0ICogcmF0aW9ZKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgY2FudmFzU2NhbGVkLmluc2VydEF0KGNsb25lZE9iamVjdCwgaSwgZmFsc2UpO1xyXG4gICAgICAgICAgICAgICAgICAgIGNhbnZhc1NjYWxlZC5yZW5kZXJBbGwoKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgb2JzZXJ2ZXJPYmplY3QubmV4dChjYW52YXNTY2FsZWQpO1xyXG4gICAgICAgICAgICAgICAgICAgIG9ic2VydmVyT2JqZWN0LmNvbXBsZXRlKCk7XHJcbiAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgfSkpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHJldHVybiBwcm9jZXNzO1xyXG4gICAgICAgIH0pLFxyXG4gICAgICApLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgY2FudmFzU2NhbGVkLnJlbmRlckFsbCgpO1xyXG4gICAgICAgIGNhbnZhc1NjYWxlZC5nZXRFbGVtZW50KCkudG9CbG9iKFxyXG4gICAgICAgICAgKGRhdGE6IEJsb2IpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5tYXJrZWRJbWFnZS5pbWFnZSA9IGRhdGE7XHJcbiAgICAgICAgICAgIHRoaXMubWFya2VkSW1hZ2Uub3V0bWFya2VycyA9IHRoaXMub3V0bWFya2VycztcclxuICAgICAgICAgICAgdGhpcy5zYXZlLmVtaXQodGhpcy5tYXJrZWRJbWFnZSk7XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgdGhpcy5vdXRwdXRNaW1lVHlwZSxcclxuICAgICAgICAgIHRoaXMub3V0cHV0UXVhbGl0eVxyXG4gICAgICAgICk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jYW52YXMuZ2V0RWxlbWVudCgpLnRvQmxvYihcclxuICAgICAgICAoZGF0YTogQmxvYikgPT4ge1xyXG4gICAgICAgICAgdGhpcy5tYXJrZWRJbWFnZS5pbWFnZSA9IGRhdGE7XHJcbiAgICAgICAgICB0aGlzLm1hcmtlZEltYWdlLm91dG1hcmtlcnMgPSB0aGlzLm91dG1hcmtlcnM7XHJcbiAgICAgICAgICB0aGlzLnNhdmUuZW1pdCh0aGlzLm1hcmtlZEltYWdlKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIHRoaXMub3V0cHV0TWltZVR5cGUsXHJcbiAgICAgICAgdGhpcy5vdXRwdXRRdWFsaXR5XHJcbiAgICAgICk7XHJcbiAgICB9XHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG4gIC8vdGhpcy5zYXZlLmVtaXQoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbG9zZSgpe1xyXG4gICAgdGhpcy5jbG9zZURpYWxvZy5lbWl0KCk7XHJcbiAgfVxyXG5cclxuICByYW5kb21JbnRGcm9tSW50ZXJ2YWwobWluLCBtYXgpIHsgLy8gbWluIGFuZCBtYXggaW5jbHVkZWQgXHJcbiAgICByZXR1cm4gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogKG1heCAtIG1pbiArIDEpICsgbWluKVxyXG4gIH1cclxuXHJcbiAgbG9nKGVsKXtcclxuICAgIEdsb2JhbFNlcnZpY2UuZGVidWdMb2coXCJpbWFnZU1hcmtlciBlbGVtZW50IFwiLGVsKTtcclxuICB9XHJcblxyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgTWFya2VyIHtcclxuICBjaXJjbGU6IGZhYnJpYy5DaXJjbGU7XHJcbiAgdGV4dDogZmFicmljLlRleHQ7XHJcbiAgZ3JvdXA6IGZhYnJpYy5Hcm91cDtcclxuICB0b3A6IG51bWJlcjtcclxuICBsZWZ0OiBudW1iZXI7XHJcbiAgY2FwdGlvbjogc3RyaW5nO1xyXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmcgPSBcIlwiO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgT3V0TWFya2VyIHtcclxuICB0b3A6IG51bWJlcjtcclxuICBsZWZ0OiBudW1iZXI7XHJcbiAgY2FwdGlvbjogc3RyaW5nO1xyXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmcgPSBcIlwiO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgTWFya2VkSW1hZ2Uge1xyXG4gIG91dG1hcmtlcnM6IEFycmF5PE91dE1hcmtlcj47XHJcbiAgaW1hZ2U6IEJsb2I7XHJcbn0iLCI8ZGl2IGNsYXNzPVwiY2FudmFzLWNvbnRhaW5lclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNhbnZhc1wiPlxyXG4gICAgICAgIDxjYW52YXMgW2lkXT1cImNvbXBvbmVudEd1aWRcIj48L2NhbnZhcz5cclxuICAgIDwvZGl2PlxyXG4gICAgPGRpdiBjbGFzcz1cInRvb2xib3hcIj5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyXCI+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IG1hcmtlckJ1dHRvblwiIChjbGljayk9XCJuZXdNYXJrZXIoKVwiPkNyZWEgbnVvdm8gbWFya2VyPC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIG10LTJcIj5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVnZW5kX292ZXJmbG93X2NvbnRhaW5lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWdlbmRfY29udGFpbmVyXCIgKm5nRm9yPVwibGV0IG1hcmtlciBvZiBtYXJrZXJzOyBpbmRleCBhcyBpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXB0aW9uXCIgW2lubmVySFRNTF09XCJtYXJrZXIuY2FwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dGFyZWFcIj48dGV4dGFyZWEgIFsobmdNb2RlbCldPVwibWFya2VyLmRlc2NyaXB0aW9uXCIgKGNsaWNrKT1cImxvZyhtYXJrZXIuZGVzY3JpcHRpb24pXCI+PC90ZXh0YXJlYT48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRlbGV0ZVwiIChjbGljayk9XCJkZWxldGVNYXJrZXJCeUluZGV4KGkpXCI+PG1hdC1pY29uPmRlbGV0ZTwvbWF0LWljb24+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIG10LTJcIiAqbmdJZj1cIiFpbkNvbmZpZ1wiPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tc3VjY2VzcyBtYXJrZXJCdXR0b25cIiAoY2xpY2spPVwic2F2ZUltYWdlKClcIj5TYWx2YSBJbW1hZ2luZTwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBtdC0yXCI+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi13YXJuaW5nIG1hcmtlckJ1dHRvblwiIChjbGljayk9XCJyZW1vdmVBbGxNYXJrZXJzKClcIj5SaW11b3ZpIHR1dHRpIGkgbWFya2VyczwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj4gICAgICAgICAgICBcclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC0xMiBtdC0yXCI+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1kYW5nZXIgbWFya2VyQnV0dG9uXCIgKGNsaWNrKT1cImNsb3NlKClcIj5Bbm51bGxhIERpc2Vnbm88L2J1dHRvbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgXHJcblxyXG5cclxuXHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
|
|
@@ -98,7 +98,11 @@ export var FieldInvisibilityEnum;
|
|
|
98
98
|
})(FieldInvisibilityEnum || (FieldInvisibilityEnum = {}));
|
|
99
99
|
export var DataGetterCardinalityEnum;
|
|
100
100
|
(function (DataGetterCardinalityEnum) {
|
|
101
|
-
|
|
102
|
-
DataGetterCardinalityEnum[DataGetterCardinalityEnum["
|
|
101
|
+
// 'TUTTE LE RISPOSTE' = 0,
|
|
102
|
+
DataGetterCardinalityEnum[DataGetterCardinalityEnum["PIU RECENTE"] = 1] = "PIU RECENTE";
|
|
103
|
+
// 'PRIMA E ULTIMA' = 2,
|
|
104
|
+
// 'NESSUNA' = 3,
|
|
105
|
+
DataGetterCardinalityEnum[DataGetterCardinalityEnum["MENO RECENTE"] = 4] = "MENO RECENTE";
|
|
106
|
+
DataGetterCardinalityEnum[DataGetterCardinalityEnum["CONTESTUALIZZATA ALLA RISPOSTA"] = 5] = "CONTESTUALIZZATA ALLA RISPOSTA";
|
|
103
107
|
})(DataGetterCardinalityEnum || (DataGetterCardinalityEnum = {}));
|
|
104
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZUZpZWxkLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZXFwLWR5bmFtaWMtbW9kdWxlL3NyYy9saWIvbW9kZWxzL2Jhc2VGaWVsZC5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHMUM7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLFNBQVUsU0FBUSxPQUFPO0lBQXRDOztRQWtCSSxtRUFBbUU7UUFDbkUsZ0JBQVcsR0FBZ0IsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxxQkFBcUIsQ0FBQyxRQUFRLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsRUFBRSxFQUFFLGFBQWEsRUFBRSxFQUFFLEVBQUUsWUFBWSxFQUFFLEVBQUUsRUFBRSxDQUFDO1FBZXZLLG1CQUFjLEdBQVksS0FBSyxDQUFDO1FBTWhDLGVBQVUsR0FBZSxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBQzFDLGdDQUEyQixHQUFXLEVBQUUsQ0FBQztJQUc3QyxDQUFDO0NBQUE7QUFHRCxNQUFNLE9BQU8sV0FBVztDQU92QjtBQUFBLENBQUM7QUFFRixNQUFNLE9BQU8sVUFBVTtJQUF2QjtRQUNJLG1CQUFjLEdBQXVCLGtCQUFrQixDQUFDLE9BQU8sQ0FBQztRQUNoRSxvQkFBZSxHQUFRLElBQUksQ0FBQztRQUM1QiwwQkFBcUIsR0FBUSxJQUFJLENBQUM7UUFDbEMsMEJBQXFCLEdBQThCLHlCQUF5QixDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsa0NBQWtDO1FBRS9ILDZCQUF3QixHQUFZLElBQUksQ0FBQyxDQUFDLHdCQUF3QjtJQUN0RSxDQUFDO0NBQUE7QUFFRCxNQUFNLENBQU4sSUFBWSxhQWVYO0FBZkQsV0FBWSxhQUFhO0lBQ3JCLHFFQUFvQixDQUFBO0lBQ3BCLG1FQUFtQixDQUFBO0lBQ25CLHlEQUFjLENBQUE7SUFDZCxpRUFBa0IsQ0FBQTtJQUNsQixxRUFBb0IsQ0FBQTtJQUNwQix5REFBYyxDQUFBO0lBQ2QseURBQWMsQ0FBQTtJQUNkLHVFQUFxQixDQUFBO0lBQ3JCLHFEQUFZLENBQUE7SUFDWiw0RUFBd0IsQ0FBQTtJQUN4Qix3RUFBc0IsQ0FBQTtJQUN0Qiw0REFBZ0IsQ0FBQTtJQUNoQixrRkFBMEIsQ0FBQTtJQUMxQixzRUFBcUIsQ0FBQTtBQUN6QixDQUFDLEVBZlcsYUFBYSxLQUFiLGFBQWEsUUFleEI7QUFFRCxNQUFNLENBQU4sSUFBWSxrQkFLWDtBQUxELFdBQVksa0JBQWtCO0lBQzFCLGlFQUFhLENBQUE7SUFDYixpRUFBYSxDQUFBO0lBQ2IseUVBQWlCLENBQUE7SUFDakIsdUZBQXdCLENBQUE7QUFDNUIsQ0FBQyxFQUxXLGtCQUFrQixLQUFsQixrQkFBa0IsUUFLN0I7QUFFRCxNQUFNLENBQU4sSUFBWSxnQkE4Q1g7QUE5Q0QsV0FBWSxnQkFBZ0I7SUFDeEIsK0RBQWMsQ0FBQTtJQUNkLCtEQUFjLENBQUE7SUFDZCwrREFBYyxDQUFBO0lBQ2QsaUVBQWUsQ0FBQTtJQUVmLCtEQUFjLENBQUE7SUFDZCwrREFBYyxDQUFBO0lBQ2QsK0RBQWMsQ0FBQTtJQUNkLGlFQUFlLENBQUE7SUFFZiwrREFBYyxDQUFBO0lBQ2QsZ0VBQWUsQ0FBQTtJQUNmLGdFQUFlLENBQUE7SUFDZixrRUFBZ0IsQ0FBQTtJQUVoQixnRkFBdUIsQ0FBQTtJQUN2QixrRkFBd0IsQ0FBQTtJQUN4Qiw0RUFBcUIsQ0FBQTtJQUVyQixnRUFBZSxDQUFBO0lBQ2YsZ0VBQWUsQ0FBQTtJQUNmLGdFQUFlLENBQUE7SUFDZixnRUFBZSxDQUFBO0lBQ2YsZ0VBQWUsQ0FBQTtJQUNmLGdFQUFlLENBQUE7SUFDZixrRUFBZ0IsQ0FBQTtJQUNoQixrRUFBZ0IsQ0FBQTtJQUVoQixnRUFBZSxDQUFBO0lBQ2YsZ0VBQWUsQ0FBQTtJQUNmLGdFQUFlLENBQUE7SUFDZixnRUFBZSxDQUFBO0lBQ2YsZ0VBQWUsQ0FBQTtJQUNmLGdFQUFlLENBQUE7SUFDZixrRUFBZ0IsQ0FBQTtJQUNoQixrRUFBZ0IsQ0FBQTtJQUVoQixnRUFBZSxDQUFBO0lBQ2YsZ0VBQWUsQ0FBQTtJQUNmLGdFQUFlLENBQUE7SUFDZixnRUFBZSxDQUFBO0lBQ2YsZ0VBQWUsQ0FBQTtJQUNmLGdFQUFlLENBQUE7SUFDZixrRUFBZ0IsQ0FBQTtJQUNoQixrRUFBZ0IsQ0FBQTtBQUNwQixDQUFDLEVBOUNXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUE4QzNCO0FBRUQsTUFBTSxDQUFOLElBQVkscUJBR1g7QUFIRCxXQUFZLHFCQUFxQjtJQUM3Qix5RUFBYyxDQUFBO0lBQ2QsNkdBQWdDLENBQUE7QUFDcEMsQ0FBQyxFQUhXLHFCQUFxQixLQUFyQixxQkFBcUIsUUFHaEM7QUFFRCxNQUFNLENBQU4sSUFBWSx5QkFRVDtBQVJILFdBQVkseUJBQXlCO0lBQ2pDLDJCQUEyQjtJQUMzQix1RkFBaUIsQ0FBQTtJQUNqQix3QkFBd0I7SUFDeEIsaUJBQWlCO0lBQ2pCLHlGQUFrQixDQUFBO0lBQ2xCLDZIQUFvQyxDQUFBO0FBRXRDLENBQUMsRUFSUyx5QkFBeUIsS0FBekIseUJBQXlCLFFBUWxDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgQmFzZU9iaiB9IGZyb20gJy4vYmFzZU9iai5tb2RlbCc7XHJcbmltcG9ydCB7IENvbnRlc3R1YWxpemF0aW9uIH0gZnJvbSAnLi9nZXR0ZXIubW9kZWwnO1xyXG5cclxuLyoqXHJcbiAqIENvbnRpZW5lIGxlIGluZm9ybWF6aW9uaSBkaSBiYXNlIGRlbCBjYW1wbywgaW5kaXBlbmRlbnRlbWVudGUgZGFsIHRpcG8uXHJcbiAqIFF1ZXN0YSBjbGFzc2Ugw6ggdm9sdXRhbWVudGUgYXN0cmF0dGEgcGVyY2jDqSBpbCB0aXBvIGRpIGNhbXBvIMOoIGRldHRhdG8gZGFsIHRpcG9cclxuICovXHJcbmV4cG9ydCBjbGFzcyBCYXNlRmllbGQgZXh0ZW5kcyBCYXNlT2JqIHtcclxuICAgIC8qKlxyXG4gICAgICogTm9tZSBkZWwgY2FtcG8gY2hlIHBlciBwcm9nZXR0YXppb25lIMOoIHVuYSBzb3N0aXR1emlvbmUgZGVsbGEgbGFiZWxcclxuICAgICAqIElsIHZlcm8gaWRlbnRpZmljYXRpdm8gZGVsIGNhbXBvIMOoIGwnSURcclxuICAgICAqL1xyXG4gICAgTmFtZTogc3RyaW5nO1xyXG4gICAgTGFiZWw6IHN0cmluZztcclxuICAgIERlc2NyaXB0aW9uOiBzdHJpbmc7XHJcbiAgICBSZXF1aXJlZDogYm9vbGVhbjtcclxuICAgIEZvcm11bGE6IHN0cmluZztcclxuICAgIFRvb2x0aXA6IHN0cmluZztcclxuICAgIE9yZGluYWxQb3NpdGlvbjogbnVtYmVyO1xyXG4gICAgRGlzYWJsZWQ6IGJvb2xlYW47XHJcbiAgICBSZWFkb25seTogYm9vbGVhbjtcclxuICAgIFJlYWRvbmx5SWY6IHN0cmluZztcclxuICAgIEZpZWxkc3R5bGVDU1M6IHN0cmluZztcclxuICAgIExhYmVsc3R5bGVDU1M6IHN0cmluZztcclxuXHJcbiAgICAvLyByYXBwcmVzZW50YXppb25lIGdyYWZpY2EgZGkgZGVmYXVsdCBwZXIgZ2xpIGVsZW1lbnRpIGRpIHJpc3Bvc3RhXHJcbiAgICBBbnN3ZXJTdHlsZTogQW5zd2VyU3R5bGUgPSB7IEluTGlzdFZpZXc6IHRydWUsIEludmlzaWJpbGl0eTogRmllbGRJbnZpc2liaWxpdHlFbnVtLk5BU0NPU1RPLCBWaXNpYmxlSWY6IG51bGwsIEZpZWxkc3R5bGVDU1M6IFwiXCIsIExhYmVsc3R5bGVDU1M6IFwiXCIsIENvbFNwYW5TaXplczogW10gfTtcclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBFbnRpdMOgIGEgY3VpIGFwcGFydGllbmUgaWwgY2FtcG8uIFNpIHRlbmdhIHByZXNlbnRlIGNoZSBzb25vIGFtbWVzc2kgYW5jaGUgY2FtcGlcclxuICAgICAqIGRpIHNvbGEgdmlzdWFsaXp6YXppb25lIGUgY2FsY29sYXRpLCBkYSB1dGlsaXp6YXJlIG5lbGxlIGZvcm0sIFxyXG4gICAgICogZSBwZXIgcXVlc3RvIG1vdGl2byBwb3Nzb25vIGVzc2VyZSBjb24gRW50aXR5ID09IG51bGxcclxuICAgICovXHJcbiAgICBFbnRpdHlJRDogc3RyaW5nO1xyXG5cclxuICAgIEZpZWxkR3JvdXA6IHN0cmluZztcclxuICAgIENvbFNwYW5TaXplczogQXJyYXk8Q29sU3BhblNpemVzRW51bT47XHJcbiAgICBWaXNpYmxlSWY6IHN0cmluZzsgLy8gY29uZGl6aW9uZSBkaSB2aXN1YWxpenphemlvbmVcclxuICAgIEluTGlzdFZpZXc6IGJvb2xlYW47IC8vIHZpc3VhbGl6emF6aW9uZSAoaW1wb3N0YXRhIGRpIGRlZmF1bHQgb3BwdXJlIGNvbmRpemlvbmF0YSBjYWxjb2xhdGEgZHVyYW50ZSBsYSBjb21waWxhemlvbmUgZGVsIHF1ZXN0aW9uYXJpbylcclxuICAgIEludmlzaWJpbGl0eTogRmllbGRJbnZpc2liaWxpdHlFbnVtO1xyXG4gICAgTWFpbnRhaW5fVmFsdWU6IGJvb2xlYW4gPSBmYWxzZTtcclxuICAgIFxyXG4gICAgLy8gUHJvcHJpdMOgIGNsaWVudFxyXG4gICAgRmllbGRUeXBlOiBGaWVsZFR5cGVFbnVtO1xyXG4gICAgRmllbGRWYWx1ZTogYW55O1xyXG5cclxuICAgIERhdGFHZXR0ZXI6IERhdGFHZXR0ZXIgPSBuZXcgRGF0YUdldHRlcigpO1xyXG4gICAgRGF0YUdldHRlclZhbHVlQmFzZTY0U3RyaW5nOiBzdHJpbmcgPSBcIlwiO1xyXG5cclxuICAgIEZvcm1Gb3JtR3JvdXA6IFVudHlwZWRGb3JtR3JvdXA7XHJcbn1cclxuXHJcblxyXG5leHBvcnQgY2xhc3MgQW5zd2VyU3R5bGUge1xyXG4gICAgSW5MaXN0VmlldzogYm9vbGVhbiAvLyB2aXNpYmxlXHJcbiAgICBJbnZpc2liaWxpdHk6IEZpZWxkSW52aXNpYmlsaXR5RW51bVxyXG4gICAgVmlzaWJsZUlmOiBzdHJpbmcgLy8gZm9ybXVsYSB2aXNpYmxlXHJcbiAgICBGaWVsZHN0eWxlQ1NTOiBzdHJpbmdcclxuICAgIExhYmVsc3R5bGVDU1M6IHN0cmluZ1xyXG4gICAgQ29sU3BhblNpemVzOiBBcnJheTxDb2xTcGFuU2l6ZXNFbnVtPlxyXG59O1xyXG5cclxuZXhwb3J0IGNsYXNzIERhdGFHZXR0ZXIge1xyXG4gICAgRGF0YUdldHRlclR5cGU6IERhdGFHZXR0ZXJUeXBlRW51bSA9IERhdGFHZXR0ZXJUeXBlRW51bS5NYW51YWxlO1xyXG4gICAgRGF0YUdldHRlclZhbHVlOiBhbnkgPSBudWxsO1xyXG4gICAgRGF0YUdldHRlckNvbHVtbkZvcmNlOiBhbnkgPSBudWxsO1xyXG4gICAgRGF0YUdldHRlckNhcmRpbmFsaXR5OiBEYXRhR2V0dGVyQ2FyZGluYWxpdHlFbnVtID0gRGF0YUdldHRlckNhcmRpbmFsaXR5RW51bVsnUElVIFJFQ0VOVEUnXTsgLy8gVXNhdG8gc29sbyBpbiBjYXNvIGRpIERNIEdldHRlclxyXG4gICAgRGF0YUdldHRlckNvbnRlc3R1YWxpemF0aW9uOiBDb250ZXN0dWFsaXphdGlvbjsgLy8gVXNhdG8gcGVyIGNvbnRlc3R1YWxpenphcmUgaWwgRE0gR2V0dGVyXHJcbiAgICBEYXRhR2V0dGVySGFzUmVzZXRCdXR0b246IGJvb2xlYW4gPSB0cnVlOyAvLyBoYSBpbCBwdWxzYW50ZSByZXNldD9cclxufVxyXG5cclxuZXhwb3J0IGVudW0gRmllbGRUeXBlRW51bSB7XHJcbiAgICAnQ2FtcG8gZGkgdGVzdG8nID0gMSxcclxuICAgICdBcmVhIGRpIHRlc3RvJyA9IDIsXHJcbiAgICAnQm9vbGVhbm8nID0gMyxcclxuICAgICdEYXRhIGUvbyBvcmEnID0gNCxcclxuICAgICdDYW1wbyBudW1lcmljbycgPSA1LFxyXG4gICAgJ0FsbGVnYXRvJyA9IDYsXHJcbiAgICAnSW1tYWdpbmUnID0gNyxcclxuICAgICdFbGVuY28gZ2VuZXJpY28nID0gOCxcclxuICAgICdMb29rdXAnID0gOSxcclxuICAgICdGb3JtIGRpIGRldHRhZ2xpbycgPSAxMCxcclxuICAgICdFbGVuY28gaW1tYWdpbmknID0gMTEsXHJcbiAgICBcIkV0aWNoZXR0YVwiID0gMTIsXHJcbiAgICBcIkltbWFnaW5lIGNvbiBtYXJrZXJzXCIgPTEzLFxyXG4gICAgXCJCb3R0b25lIGF6aW9uZVwiID0gMTRcclxufVxyXG5cclxuZXhwb3J0IGVudW0gRGF0YUdldHRlclR5cGVFbnVtIHtcclxuICAgICdNYW51YWxlJyA9IDEsXHJcbiAgICAnRm9ybXVsYScgPSAyLFxyXG4gICAgJ0RhIGRhdGFiYXNlJyA9IDMsXHJcbiAgICAnRGEgbW9kdWxvIGRpbmFtaWNvJyA9IDRcclxufVxyXG5cclxuZXhwb3J0IGVudW0gQ29sU3BhblNpemVzRW51bSB7XHJcbiAgICAnY29sLXNtLTMnID0gMSxcclxuICAgICdjb2wtc20tNCcgPSAyLFxyXG4gICAgJ2NvbC1zbS02JyA9IDMsXHJcbiAgICAnY29sLXNtLTEyJyA9IDQsXHJcblxyXG4gICAgJ2NvbC1tZC0zJyA9IDUsXHJcbiAgICAnY29sLW1kLTQnID0gNixcclxuICAgICdjb2wtbWQtNicgPSA3LFxyXG4gICAgJ2NvbC1tZC0xMicgPSA4LFxyXG5cclxuICAgICdjb2wtbGctMycgPSA5LFxyXG4gICAgJ2NvbC1sZy00JyA9IDEwLFxyXG4gICAgJ2NvbC1sZy02JyA9IDExLFxyXG4gICAgJ2NvbC1sZy0xMicgPSAxMixcclxuXHJcbiAgICAnYWxpZ24tc2VsZi1zdGFydCcgPSAxMyxcclxuICAgICdhbGlnbi1zZWxmLWNlbnRlcicgPSAxNCxcclxuICAgICdhbGlnbi1zZWxmLWVuZCcgPSAxNSxcclxuXHJcbiAgICAnY29sLXNtLTEnID0gMTYsXHJcbiAgICAnY29sLXNtLTInID0gMTcsXHJcbiAgICAnY29sLXNtLTUnID0gMTgsXHJcbiAgICAnY29sLXNtLTcnID0gMTksXHJcbiAgICAnY29sLXNtLTgnID0gMjAsXHJcbiAgICAnY29sLXNtLTknID0gMjEsXHJcbiAgICAnY29sLXNtLTEwJyA9IDIyLFxyXG4gICAgJ2NvbC1zbS0xMScgPSAyMyxcclxuXHJcbiAgICAnY29sLW1kLTEnID0gMjQsXHJcbiAgICAnY29sLW1kLTInID0gMjUsXHJcbiAgICAnY29sLW1kLTUnID0gMjYsXHJcbiAgICAnY29sLW1kLTcnID0gMjcsXHJcbiAgICAnY29sLW1kLTgnID0gMjgsXHJcbiAgICAnY29sLW1kLTknID0gMjksXHJcbiAgICAnY29sLW1kLTEwJyA9IDMwLFxyXG4gICAgJ2NvbC1tZC0xMScgPSAzMSxcclxuXHJcbiAgICAnY29sLWxnLTEnID0gMzIsXHJcbiAgICAnY29sLWxnLTInID0gMzMsXHJcbiAgICAnY29sLWxnLTUnID0gMzQsXHJcbiAgICAnY29sLWxnLTcnID0gMzUsXHJcbiAgICAnY29sLWxnLTgnID0gMzYsXHJcbiAgICAnY29sLWxnLTknID0gMzcsXHJcbiAgICAnY29sLWxnLTEwJyA9IDM4LFxyXG4gICAgJ2NvbC1sZy0xMScgPSAzOVxyXG59XHJcblxyXG5leHBvcnQgZW51bSBGaWVsZEludmlzaWJpbGl0eUVudW0ge1xyXG4gICAgJ05BU0NPU1RPJyA9IDEsXHJcbiAgICAnTkFTQ09TVE8gQ09OIEFSRUEgVklTSUJJTEUnID0gMlxyXG59XHJcblxyXG5leHBvcnQgZW51bSBEYXRhR2V0dGVyQ2FyZGluYWxpdHlFbnVtIHtcclxuICAgIC8vICdUVVRURSBMRSBSSVNQT1NURScgPSAwLFxyXG4gICAgJ1BJVSBSRUNFTlRFJyA9IDEsXHJcbiAgICAvLyAnUFJJTUEgRSBVTFRJTUEnID0gMixcclxuICAgIC8vICdORVNTVU5BJyA9IDMsXHJcbiAgICAnTUVOTyBSRUNFTlRFJyA9IDQsXHJcbiAgICAnQ09OVEVTVFVBTElaWkFUQSBBTExBIFJJU1BPU1RBJyA9IDVcclxuXHJcbiAgfSJdfQ==
|