vk-payments 0.0.21 → 0.0.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/vk-payments.umd.js +2 -1
- package/bundles/vk-payments.umd.js.map +1 -1
- package/bundles/vk-payments.umd.min.js +1 -1
- package/bundles/vk-payments.umd.min.js.map +1 -1
- package/esm2015/lib/sps-decidir/components/sps-decidir.component.js +3 -2
- package/esm5/lib/sps-decidir/components/sps-decidir.component.js +3 -2
- package/fesm2015/vk-payments.js +2 -1
- package/fesm2015/vk-payments.js.map +1 -1
- package/fesm5/vk-payments.js +2 -1
- package/fesm5/vk-payments.js.map +1 -1
- package/package.json +1 -1
|
@@ -187,7 +187,8 @@ export class SpsDecidirComponent {
|
|
|
187
187
|
* @return {?}
|
|
188
188
|
*/
|
|
189
189
|
config => {
|
|
190
|
-
|
|
190
|
+
console.log(config);
|
|
191
|
+
if (config == 'SPS-Decidir-Supervielle') {
|
|
191
192
|
console.log('Modo Supervielle');
|
|
192
193
|
this.decidir.setPublishableKey(this.superviellePublishableKey);
|
|
193
194
|
}
|
|
@@ -892,4 +893,4 @@ if (false) {
|
|
|
892
893
|
/** @type {?} */
|
|
893
894
|
SpsDecidirComponent.prototype.spsDecidirApiService;
|
|
894
895
|
}
|
|
895
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BzLWRlY2lkaXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vdmstcGF5bWVudHMvIiwic291cmNlcyI6WyJsaWIvc3BzLWRlY2lkaXIvY29tcG9uZW50cy9zcHMtZGVjaWRpci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBaUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BILE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBWTVCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBUzNFLE1BQU0sT0FBTyxtQkFBbUI7Ozs7O0lBdUQ5QixZQUFvQixNQUFjLEVBQVMsb0JBQTBDO1FBQWpFLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBUyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBbkM1RSxhQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ2YsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFpQixDQUFDO1FBRXhELGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFPdEIseUJBQW9CLEdBQW9CLElBQUksQ0FBQztRQUU3QyxrQkFBYSxHQUFrQixFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLENBQUM7UUFTeEYsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFDdEIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFHcEIsY0FBUyxHQUFHLElBQUksQ0FBQztRQUVqQixpQkFBWSxHQUFHLGFBQWEsQ0FBQztRQUU3QixXQUFNLEdBQVksSUFBSSxDQUFDO0lB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QUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVLEVBQUU7Z0JBQ3BDLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRSxDQUFDO2FBQ2xCO1lBQ0QsYUFBYTtpQkFDUixJQUFJLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUk7Z0JBQ25DLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUk7Z0JBQzVCLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENB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SztvQ0FDTCxLQUFLO3dDQUNMLEtBQUs7eUJBQ0wsS0FBSzt5QkFDTCxLQUFLOzZCQUNMLEtBQUs7dUJBQ0wsS0FBSztzQkFDTCxLQUFLO3VCQUNMLEtBQUs7b0JBQ0wsS0FBSzttQkFDTCxLQUFLOzBCQUNMLEtBQUs7dUJBQ0wsS0FBSzt3QkFDTCxNQUFNOzs7O0lBbkJQLDJDQUF3RDs7SUFDeEQsMENBQTZCOztJQUM3Qix3Q0FBMkI7O0lBQzNCLHVDQUEwQjs7SUFDMUIsNENBQStCOztJQUMvQixzQ0FBeUI7O0lBQ3pCLHVDQUEwQjs7SUFDMUIsb0RBQXVDOztJQUN2Qyx3REFBMkM7O0lBQzNDLHlDQUE0Qjs7SUFDNUIseUNBQTRCOztJQUM1Qiw2Q0FBaUM7O0lBQ2pDLHVDQUEyQjs7SUFDM0Isc0NBQXlCOztJQUN6Qix1Q0FBMEI7O0lBQzFCLG9DQUF1Qjs7SUFDdkIsbUNBQXNCOztJQUN0QiwwQ0FBNkI7O0lBQzdCLHVDQUF5Qjs7SUFDekIsd0NBQXdEOztJQUV4RCx1Q0FBaUI7O0lBQ2pCLDRDQUFzQjs7SUFDdEIsMENBQW9COztJQUNwQixrREFBNEI7O0lBQzVCLHlDQUFtQjs7SUFDbkIseUNBQW1COztJQUVuQiwwQ0FBMEI7O0lBQzFCLG1EQUE2Qzs7SUFDN0MsOENBQW1DOztJQUNuQyw0Q0FBd0Y7O0lBR3hGLHdDQUFrQjs7SUFDbEIsdUNBQWlCOztJQUNqQixzQ0FBZ0I7O0lBQ2hCLHNDQUFnQjs7SUFDaEIsNENBQXNCOztJQUN0Qix1Q0FBaUI7O0lBQ2pCLDRDQUFzQjs7SUFDdEIsMENBQW9COzs7OztJQUVwQixzQ0FBcUI7O0lBQ3JCLHdDQUFpQjs7SUFFakIsMkNBQTZCOztJQUM3Qix3Q0FBa0I7O0lBQ2xCLHFDQUF1Qjs7SUFDdkIsc0NBQWlCOztJQUNqQixpREFBd0M7O0lBQ3hDLDJDQUFxQjs7Ozs7SUFFVCxxQ0FBc0I7O0lBQUUsbURBQWlEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5nRm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgc2hhMjU2IGZyb20gJ3NoYTI1Nic7XG5cbmltcG9ydCB7XG4gIENyZWRpdENhcmQsXG4gIENyZWRpdENhcmRQbGFucyxcbiAgRXJyb3JUb2tlbixcbiAgUGF5bWVudCxcbiAgUGF5bWVudFJlc3BvbnNlSW5mbyxcbiAgUGF5bWVudFJlc3VsdCxcbiAgUmVzcG9uc2VBcGksXG4gIFNwc1Jlc3BvbnNlUGF5bWVudCxcbn0gZnJvbSAnLi4vbW9kZWxzL3BheW1lbnQubW9kZWwnO1xuaW1wb3J0IHsgU3BzRGVjaWRpckFwaVNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9zcHMtZGVjaWRpci5hcGkuc2VydmljZSc7XG5cbmRlY2xhcmUgdmFyIERlY2lkaXI6IGFueTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3BzLWZvcm0tcGF5JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Nwcy1kZWNpZGlyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3BzLWRlY2lkaXIuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBTcHNEZWNpZGlyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuXG4gIEBWaWV3Q2hpbGQoJ2YnLCB7IHN0YXRpYzogZmFsc2UgfSkgY2hlY2tPdXRGb3JtOiBOZ0Zvcm07XG4gIEBJbnB1dCgpIGFjY2Vzc1Rva2VuOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNwc1VybEFwaTogc3RyaW5nO1xuICBASW5wdXQoKSB2a1VybEFwaTogc3RyaW5nO1xuICBASW5wdXQoKSBwYXltZW50QW1vdW50OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGxvZ29TcHM6IHN0cmluZztcbiAgQElucHV0KCkgY3VycmVuY3k6IHN0cmluZztcbiAgQElucHV0KCkgZGVmYXVsdFB1Ymxpc2hhYmxlS2V5OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHN1cGVydmllbGxlUHVibGlzaGFibGVLZXk6IHN0cmluZztcbiAgQElucHV0KCkgc3VjY2Vzc1VybDogc3RyaW5nO1xuICBASW5wdXQoKSBmYWlsdXJlVXJsOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHVzZUN5YmVyc291cmNlOiBib29sZWFuO1xuICBASW5wdXQoKSBkZWJ1Z0xvZzogYm9vbGVhbjtcbiAgQElucHV0KCkgc3RvcmVJZDogc3RyaW5nO1xuICBASW5wdXQoKSBkb21haW5JZDogbnVtYmVyO1xuICBASW5wdXQoKSBpZFZlbjogbnVtYmVyO1xuICBASW5wdXQoKSBkYXRhOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGxhYmVsQnV0dG9uOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGxhbmd1YWdlID0gJ2VzJztcbiAgQE91dHB1dCgpIHN0YXR1c1BheSA9IG5ldyBFdmVudEVtaXR0ZXI8UGF5bWVudFJlc3VsdD4oKTtcblxuICBkaXNhYmxlZCA9IGZhbHNlO1xuICBkaXNhYmxlU2VsZWN0ID0gZmFsc2U7XG4gIHRvdGFsQW1vdW50OiBzdHJpbmc7XG4gIHRvdGFsRmluYW5jZWRBbW91bnQ6IHN0cmluZztcbiAgY3VycmVudFRFQTogc3RyaW5nO1xuICBjdXJyZW50Q0ZUOiBzdHJpbmc7XG5cbiAgY3JlZGl0Q2FyZHM6IENyZWRpdENhcmRbXTtcbiAgc2VsZWN0Q3JlZGl0Q2FyZFBsYW46IENyZWRpdENhcmRQbGFucyA9IG51bGw7XG4gIGNyZWRpdENhcmRQbGFuczogQ3JlZGl0Q2FyZFBsYW5zW107XG4gIHBheW1lbnRSZXN1bHQ6IFBheW1lbnRSZXN1bHQgPSB7IHN1Y2Nlc3M6IGZhbHNlLCBwYXltZW50SWQ6ICcnLCBpbnRlZ3JhdG9yOiAnREVDSURJUicgfTtcblxuICAvLyBGb3JtIGJpbmRcbiAgbW9udGhUZXh0OiBzdHJpbmc7XG4gIHllYXJUZXh0OiBzdHJpbmc7XG4gIGN2Y1RleHQ6IHN0cmluZztcbiAgZG5pVGV4dDogc3RyaW5nO1xuICBwYXllck5hbWVUZXh0OiBzdHJpbmc7XG4gIGNhcmRUZXh0OiBzdHJpbmc7XG4gIHN1Ym1pdFByZXNzZWQgPSBmYWxzZTtcbiAgaW52YWxpZERhdGUgPSBmYWxzZTtcblxuICBwcml2YXRlIGRlY2lkaXI6IGFueTtcbiAgYWRkU2NyaXB0ID0gdHJ1ZTtcblxuICBwYXltZW50U3RhdGUgPSAndW5zdWJtaXR0ZWQnO1xuICBwYXllck5hbWU6IHN0cmluZztcbiAgaXNzdWVyPzogbnVtYmVyID0gbnVsbDtcbiAgcGF5bWVudDogUGF5bWVudDtcbiAgcGF5bWVudFN1Y2Nlc3NJbmZvOiBQYXltZW50UmVzcG9uc2VJbmZvO1xuICBlcnJvck1lc3NhZ2U6IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlcjogUm91dGVyLCBwdWJsaWMgc3BzRGVjaWRpckFwaVNlcnZpY2U6IFNwc0RlY2lkaXJBcGlTZXJ2aWNlKSB7IH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmluaXREZWNpZGlyKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKCFjaGFuZ2VzLnBheW1lbnRBbW91bnQuaXNGaXJzdENoYW5nZSgpKSB7XG4gICAgICB0aGlzLmNoZWNrT3V0Rm9ybS5yZXNldCgpO1xuICAgICAgdGhpcy5kaXNhYmxlZCA9IGZhbHNlO1xuICAgICAgdGhpcy5kaXNhYmxlU2VsZWN0ID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpbml0RGVjaWRpcigpIHtcbiAgICB0aGlzLmFkZERlY2lkaXJTY3JpcHQoKVxuICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICB0aGlzLmdldENyZWRpdENhcmRzKCk7XG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZVNwc0RlY2lkaXIoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgYWRkRGVjaWRpclNjcmlwdCgpIHtcbiAgICB0aGlzLmFkZFNjcmlwdCA9IHRydWU7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICBjb25zdCBzY3JpcHR0YWdFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAgICBzY3JpcHR0YWdFbGVtZW50LnNyYyA9ICdodHRwczovL2xpdmUuZGVjaWRpci5jb20vc3RhdGljL3YyLjQvZGVjaWRpci5qcyc7XG4gICAgICBzY3JpcHR0YWdFbGVtZW50Lm9ubG9hZCA9IHJlc29sdmU7XG4gICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHNjcmlwdHRhZ0VsZW1lbnQpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDcmVkaXRDYXJkcygpIHtcbiAgICB0aGlzLnNwc0RlY2lkaXJBcGlTZXJ2aWNlLmdldENyZWRpdENhcmRzKHRoaXMuYWNjZXNzVG9rZW4sIHRoaXMudmtVcmxBcGksIHRoaXMuZG9tYWluSWQpXG4gICAgICAuc3Vic2NyaWJlKChyZXM6IFJlc3BvbnNlQXBpKSA9PiB7XG4gICAgICAgIHRoaXMuY3JlZGl0Q2FyZHMgPSByZXMuZGF0YSBhcyBDcmVkaXRDYXJkW107XG4gICAgICAgIHRoaXMubG9nZ2VyKCdnZXRDcmVkaXRDYXJkcycsIHRoaXMuY3JlZGl0Q2FyZHMpO1xuICAgICAgfSwgXyA9PiB0aGlzLnBheW1lbnRTdGF0ZSA9ICdhcGlFcnJvcicpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRQbGFuc0J5Q3JlZGl0Q2FyZElkKGFtb3VudDogc3RyaW5nLCBjcmVkaXRDYXJkSWQ6IG51bWJlciwgZG9tYWluSWQ6IG51bWJlciwgYmluOiBzdHJpbmcpIHtcbiAgICB0aGlzLnNwc0RlY2lkaXJBcGlTZXJ2aWNlLmdldFBsYW5zQnlDcmVkaXRDYXJkSWQodGhpcy5hY2Nlc3NUb2tlbiwgdGhpcy52a1VybEFwaSwgYW1vdW50LCBjcmVkaXRDYXJkSWQsIGRvbWFpbklkLCBiaW4pXG4gICAgICAuc3Vic2NyaWJlKChyZXM6IFJlc3BvbnNlQXBpKSA9PiB7XG4gICAgICAgIHRoaXMuY3JlZGl0Q2FyZFBsYW5zID0gcmVzLmRhdGEgYXMgQ3JlZGl0Q2FyZFBsYW5zW107XG4gICAgICAgIHRoaXMubG9nZ2VyKCdnZXRQbGFuc0J5Q3JlZGl0Q2FyZElkJywgdGhpcy5jcmVkaXRDYXJkUGxhbnMpO1xuICAgICAgfSwgXyA9PiB0aGlzLnBheW1lbnRTdGF0ZSA9ICdhcGlFcnJvcicpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplU3BzRGVjaWRpcigpIHtcbiAgICB0aGlzLmRlY2lkaXIgPSBuZXcgRGVjaWRpcih0aGlzLnNwc0RlY2lkaXJBcGlTZXJ2aWNlLm5vcm1hbGl6ZVVybCh0aGlzLnNwc1VybEFwaSksICF0aGlzLnVzZUN5YmVyc291cmNlKTtcbiAgICB0aGlzLmRlY2lkaXIuc2V0VGltZW91dCgxNTAwMCk7XG4gICAgdGhpcy5kZWNpZGlyLnNldFB1Ymxpc2hhYmxlS2V5KHRoaXMuZGVmYXVsdFB1Ymxpc2hhYmxlS2V5KTtcbiAgfVxuXG4gIHByaXZhdGUgbG9nZ2VyKG1lc3NhZ2U6IHN0cmluZywgZGF0YTogYW55KTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmRlYnVnTG9nKSB7IHJldHVybjsgfVxuICAgIGNvbnNvbGUubG9nKG1lc3NhZ2UsIGRhdGEpO1xuICB9XG5cbiAgcHVibGljIHNlbGVjdGVkQ3JlZGl0Q2FyZCgpIHtcbiAgICBpZiAoIXRoaXMuaXNzdWVyKSB7IHJldHVybjsgfVxuXG4gICAgdGhpcy5zZWxlY3RDcmVkaXRDYXJkUGxhbiA9IG51bGw7XG4gICAgaWYgKHRoaXMuY3VycmVuY3kgPT09ICdBUlMnICYmIHRoaXMuY2FyZFRleHQuc3Vic3RyaW5nKDAsOCkgIT09ICcwMDAwMDAwMCcpIHtcbiAgICAgIHRoaXMuZ2V0UGxhbnNCeUNyZWRpdENhcmRJZCh0aGlzLnBheW1lbnRBbW91bnQsIHRoaXMuaXNzdWVyLCB0aGlzLmRvbWFpbklkLCB0aGlzLmNhcmRUZXh0LnN1YnN0cmluZygwLDgpKTtcbiAgICAgIHJldHVybjtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jYXJkVGV4dCA9Jyc7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY3VycmVuY3kgPT09ICdVU0QnKSB7XG4gICAgICB0aGlzLnRvdGFsQW1vdW50ID0gdGhpcy50b3RhbEZpbmFuY2VkQW1vdW50ID0gdGhpcy5wYXltZW50QW1vdW50O1xuICAgIH1cbiAgfVxuXG4gIHNlbGVjdGVkQ3JlZGl0Q2FyZFBsYW4oKSB7XG4gICAgaWYgKHRoaXMuc2VsZWN0Q3JlZGl0Q2FyZFBsYW4gPT09IG51bGwpIHsgcmV0dXJuOyB9XG5cbiAgICB0aGlzLnRvdGFsRmluYW5jZWRBbW91bnQgPSB0aGlzLnNlbGVjdENyZWRpdENhcmRQbGFuLnRvdGFsQW1vdW50O1xuICAgIHRoaXMudG90YWxBbW91bnQgPSB0aGlzLnBheW1lbnRBbW91bnQ7XG4gICAgdGhpcy5jdXJyZW50VEVBID0gdGhpcy5zZWxlY3RDcmVkaXRDYXJkUGxhbi50bmE7XG4gICAgdGhpcy5jdXJyZW50Q0ZUID0gdGhpcy5zZWxlY3RDcmVkaXRDYXJkUGxhbi5jZnQ7XG4gIH1cblxuICBvblN1Ym1pdChldmVudCkge1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5zdWJtaXRQcmVzc2VkID0gdHJ1ZTtcbiAgICB0aGlzLnBheW1lbnRSZXN1bHQgPSB7IHN1Y2Nlc3M6IGZhbHNlLCBwYXltZW50SWQ6ICcnLCBpbnRlZ3JhdG9yOiAnREVDSURJUicgfTtcblxuICAgIGlmICghdGhpcy5jaGVja091dEZvcm0udmFsaWQpIHsgcmV0dXJuOyB9XG5cbiAgICB0aGlzLnNwc0RlY2lkaXJBcGlTZXJ2aWNlLmdldERlY2lkaXJDb25maWdCeUJpbih0aGlzLmNhcmRUZXh0LnN1YnN0cmluZygwLCA4KSwgdGhpcy52a1VybEFwaSlcbiAgICAgIC5zdWJzY3JpYmUoY29uZmlnID0+IHtcbiAgICAgICAgaWYoY29uZmlnID0nU1BTLURlY2lkaXItU3VwZXJ2aWVsbGUnKXtcbiAgICAgICAgICBjb25zb2xlLmxvZygnTW9kbyBTdXBlcnZpZWxsZScpO1xuICAgICAgICAgIHRoaXMuZGVjaWRpci5zZXRQdWJsaXNoYWJsZUtleSh0aGlzLnN1cGVydmllbGxlUHVibGlzaGFibGVLZXkpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5wYXltZW50U3RhdGUgPSAncHJvY2Vzc2luZyc7XG4gICAgICAgIGNvbnN0IGZvcm0gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjZm9ybXVsYXJpbycpO1xuICAgICAgICB0aGlzLmRlY2lkaXIuY3JlYXRlVG9rZW4oZm9ybSwgKHN0YXR1czogbnVtYmVyLCByZXNwb25zZTogU3BzUmVzcG9uc2VQYXltZW50KSA9PiB7XG4gICAgICAgICAgaWYgKHN0YXR1cyAhPT0gMjAwICYmIHN0YXR1cyAhPT0gMjAxKSB7XG4gICAgICAgICAgICB0aGlzLnBheW1lbnRTdGF0ZSA9ICdlcnJvcic7XG4gICAgICAgICAgICB0aGlzLnN0YXR1c1BheS5lbWl0KHRoaXMucGF5bWVudFJlc3VsdCk7XG4gICAgICAgICAgICB0aGlzLnByb2Nlc3NFcnJvclRva2VuKHJlc3BvbnNlKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5tYWtlUGF5bWVudChmb3JtLCByZXNwb25zZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgfSk7XG4gIH1cblxuICBtYWtlUGF5bWVudChmb3JtOiBhbnksIHBheW1lbnRSZXNwb25zZTogU3BzUmVzcG9uc2VQYXltZW50KTogdm9pZCB7XG4gICAgdGhpcy5sb2dnZXIoJ21ha2VQYXltZW50OicsIEpTT04uc3RyaW5naWZ5KHBheW1lbnRSZXNwb25zZSkpO1xuICAgIGNvbnN0IGhhc2hlZENhcmQgPSB0aGlzLmhhc2hUZXh0KHRoaXMuY2FyZFRleHQsMTAwMDAwKTtcbiAgICB0aGlzLnBheW1lbnQgPSB7XG4gICAgICB0b2tlbjogcGF5bWVudFJlc3BvbnNlLmlkLFxuICAgICAgYW1vdW50OiB0aGlzLnRvdGFsQW1vdW50LFxuICAgICAgdG90YWxGaW5hbmNlZEFtb3VudDogdGhpcy50b3RhbEZpbmFuY2VkQW1vdW50LFxuICAgICAgYmluOiBwYXltZW50UmVzcG9uc2UuYmluLFxuICAgICAgY3VycmVuY3k6ICdBUlMnLFxuICAgICAgZG9jdW1lbnROdW1iZXI6IHRoaXMuY3VycmVuY3kgPT09ICdVU0QnID8gJzAnIDogcGF5bWVudFJlc3BvbnNlLmNhcmRob2xkZXIuaWRlbnRpZmljYXRpb24ubnVtYmVyLFxuICAgICAgaWRWZW46IHRoaXMuaWRWZW4sXG4gICAgICBwYXltZW50VHlwZTogJ3NpbmdsZScsXG4gICAgICBpbnN0YWxsbWVudHM6IHRoaXMuY3VycmVuY3kgPT09ICdVU0QnID8gMSA6IHRoaXMuc2VsZWN0Q3JlZGl0Q2FyZFBsYW4uaW5zdGFsbG1lbnRzLFxuICAgICAgY3JlZGl0Q2FyZFBsYW5JZDogdGhpcy5jdXJyZW5jeSA9PT0gJ1VTRCcgPyAwIDogdGhpcy5zZWxlY3RDcmVkaXRDYXJkUGxhbi5pZCxcbiAgICAgIHBheW1lbnRNZXRob2RJZDogdGhpcy5pc3N1ZXIsXG4gICAgICBjYXJkaG9sZGVyOiB0aGlzLnBheWVyTmFtZVRleHQsXG4gICAgICBzdG9yZUlkOiB0aGlzLnN0b3JlSWQsXG4gICAgICBkYXRhOiB0aGlzLmRhdGEsXG4gICAgICBzdWJQYXltZW50czogW10sXG4gICAgICBjcmVkaXRDYXJkSGFzaDogaGFzaGVkQ2FyZCxcbiAgICAgIGxhc3RGb3VyRGlnaXRzOiB0aGlzLmNhcmRUZXh0LnNsaWNlKC00KVxuICAgIH07XG4gICAgXG5cbiAgICB0aGlzLmxvZ2dlcigncGF5bWVudDonLCBKU09OLnN0cmluZ2lmeSh0aGlzLnBheW1lbnQpKTtcbiAgICB0aGlzLnNwc0RlY2lkaXJBcGlTZXJ2aWNlLm1ha2VQYXltZW50KHRoaXMucGF5bWVudCwgdGhpcy5hY2Nlc3NUb2tlbiwgdGhpcy52a1VybEFwaSlcbiAgICAgIC5zdWJzY3JpYmUoKHJlczogUmVzcG9uc2VBcGkpID0+IHtcbiAgICAgICAgdGhpcy5wYXltZW50UmVzcG9uc2VIYW5kbGVyKHJlcyk7XG4gICAgICB9LCBlcnJvciA9PiB7XG4gICAgICAgIHRoaXMuc3RhdHVzUGF5LmVtaXQodGhpcy5wYXltZW50UmVzdWx0KTtcbiAgICAgICAgdGhpcy5wYXltZW50U3RhdGUgPSAnYXBpRXJyb3InO1xuICAgICAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBoYXNoVGV4dCh0ZXh0OiBzdHJpbmcsIGl0ZXJhdGlvbnM6bnVtYmVyKTogc3RyaW5ne1xuICAgIGxldCBoYXNoZWR0ZXh0ID0gdGV4dDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGl0ZXJhdGlvbnM7IGkrKykge1xuICAgICAgaGFzaGVkdGV4dCA9IHNoYTI1NihoYXNoZWR0ZXh0KTtcbiAgICB9XG4gICAgcmV0dXJuIGhhc2hlZHRleHRcbiAgfVxuXG4gIHBheW1lbnRSZXNwb25zZUhhbmRsZXIocmVzcG9uc2U6IFJlc3BvbnNlQXBpKSB7XG4gICAgdGhpcy5sb2dnZXIoJ3BheW1lbnRSZXNwb25zZUhhbmRsZXI6JywgSlNPTi5zdHJpbmdpZnkocmVzcG9uc2UpKTtcblxuICAgIGlmIChyZXNwb25zZS5zdWNjZXNzKSB7XG4gICAgICB0aGlzLnBheW1lbnRTdGF0ZSA9ICdzdWNjZXNzJztcbiAgICAgIHRoaXMucGF5bWVudFN1Y2Nlc3NJbmZvID0gcmVzcG9uc2UuZGF0YSBhcyBQYXltZW50UmVzcG9uc2VJbmZvO1xuICAgICAgdGhpcy5wYXltZW50UmVzdWx0ID0geyBzdWNjZXNzOiB0cnVlLCBwYXltZW50SWQ6IHRoaXMucGF5bWVudFN1Y2Nlc3NJbmZvLnBheW1lbnRfaWQsIGludGVncmF0b3I6ICdERUNJRElSJyB9O1xuICAgICAgdGhpcy5zdGF0dXNQYXkuZW1pdCh0aGlzLnBheW1lbnRSZXN1bHQpO1xuICAgICAgdGhpcy5kaXNhYmxlZCA9IHRydWU7XG4gICAgICB0aGlzLmRpc2FibGVTZWxlY3QgPSB0cnVlO1xuXG4gICAgICBpZiAodGhpcy5zdWNjZXNzVXJsICYmIHRoaXMuc3VjY2Vzc1VybC5sZW5ndGggPiAwKSB7XG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtgJHt0aGlzLnN1Y2Nlc3NVcmx9YF0pLnRoZW4oKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnBheW1lbnRTdGF0ZSA9ICdlcnJvcic7XG4gICAgICB0aGlzLnN0YXR1c1BheS5lbWl0KHRoaXMucGF5bWVudFJlc3VsdCk7XG4gICAgICB0aGlzLnByb2Nlc3NFcnJvck1lc3NhZ2UocmVzcG9uc2UuZGF0YSk7XG5cbiAgICAgIGlmICh0aGlzLmZhaWx1cmVVcmwgJiYgdGhpcy5mYWlsdXJlVXJsLmxlbmd0aCA+IDApIHtcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2Ake3RoaXMuZmFpbHVyZVVybH1gXSkudGhlbigpXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcm9jZXNzRXJyb3JUb2tlbihyZXNwb25zZTogYW55KTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IHRydWU7XG4gICAgdGhpcy5kaXNhYmxlU2VsZWN0ID0gdHJ1ZTtcblxuICAgIGNvbnN0IGVycm9yOiBFcnJvclRva2VuID0gcmVzcG9uc2UgYXMgRXJyb3JUb2tlbjtcblxuICAgIC8vIG9idGVuZW1vcyBtZW5zYWplcyBkZSBlcnJvclxuICAgIGVycm9yLmVycm9yLmZvckVhY2goKHgpID0+IHtcbiAgICAgIGlmICh4LmVycm9yLnR5cGUgPT09ICdpbnZhbGlkX2V4cGlyeV9kYXRlJykge1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9ICdSZXZpc8OhIGxhIGZlY2hhIGRlIHZlbmNpbWllbnRvLic7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IEpTT04uc3RyaW5naWZ5KGVycm9yKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8vIGRpZmVyZW50ZXMgdGlwb3MgZGUgZXJyb3Igbm9zIGRldnVlbHZlIGRlY2lkaXJcbiAgcHJvY2Vzc0Vycm9yTWVzc2FnZShyZXNwb25zZUVycm9yOiBQYXltZW50UmVzcG9uc2VJbmZvKTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IHRydWU7XG4gICAgdGhpcy5kaXNhYmxlU2VsZWN0ID0gdHJ1ZTtcblxuICAgIGlmIChyZXNwb25zZUVycm9yLmVycm9yKSB7XG4gICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHJlc3BvbnNlRXJyb3IuZXJyb3IucmVhc29uLmRlc2NyaXB0aW9uO1xuXG4gICAgICBpZiAocmVzcG9uc2VFcnJvci5lcnJvci5yZWFzb24uYWRkaXRpb25hbF9kZXNjcmlwdGlvbikge1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRoaXMuZXJyb3JNZXNzYWdlICsgJyAtICcgKyByZXNwb25zZUVycm9yLmVycm9yLnJlYXNvbi5hZGRpdGlvbmFsX2Rlc2NyaXB0aW9uO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5lcnJvck1lc3NhZ2UgPT0gJycgfHwgdGhpcy5lcnJvck1lc3NhZ2UgPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gSlNPTi5zdHJpbmdpZnkocmVzcG9uc2VFcnJvcik7XG4gICAgICB9XG4gICAgfVxuICAgIGVsc2UgaWYgKHJlc3BvbnNlRXJyb3IuZXJyb3JfdHlwZSkge1xuICAgICAgc3dpdGNoIChyZXNwb25zZUVycm9yLmVycm9yX3R5cGUpIHtcbiAgICAgICAgY2FzZSAnaW52YWxpZF9yZXF1ZXN0X2Vycm9yJzpcbiAgICAgICAgICBpZiAocmVzcG9uc2VFcnJvci52YWxpZGF0aW9uX2Vycm9ycy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBpZiAocmVzcG9uc2VFcnJvci52YWxpZGF0aW9uX2Vycm9yc1swXS5jb2RlID09PSAnaW52YWxpZF9wYXJhbScpIHtcbiAgICAgICAgICAgICAgc3dpdGNoIChyZXNwb25zZUVycm9yLnZhbGlkYXRpb25fZXJyb3JzWzBdLnBhcmFtKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAnY2FyZF9udW1iZXInOlxuICAgICAgICAgICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnVGFyamV0YSBpbnbDoWxpZGEnO1xuICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnYmluJzpcbiAgICAgICAgICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ1RhcmpldGEgaW52w6FsaWRhJztcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHJlc3BvbnNlRXJyb3IuZXJyb3IucmVhc29uLmRlc2NyaXB0aW9uO1xuICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZXJyb3JNZXNzYWdlID09ICcnIHx8IHRoaXMuZXJyb3JNZXNzYWdlID09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IEpTT04uc3RyaW5naWZ5KHJlc3BvbnNlRXJyb3IpO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ25vdF9mb3VuZF9lcnJvcic6XG4gICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnRGF0b3Mgbm8gZW5jb250cmFkb3MgKDQwNCkuJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnYXV0aGVudGljYXRpb25fZXJyb3InOlxuICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ0Vycm9yICg0MDEpLic7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ21hbGZvcm1lZF9yZXF1ZXN0X2Vycm9yJzpcbiAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9ICdFcnJvciBhbCBlbnZpYXIgbG9zIGRhdG9zICAoNDAwKS4nO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdhcGlfZXJyb3InOlxuICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ0Vycm9yIGludGVybm8gKDQwOSkuJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IEpTT04uc3RyaW5naWZ5KHJlc3BvbnNlRXJyb3IpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGNvbXBhcmVEYXRlKHllYXI6IG51bWJlciwgbW9udGg6IG51bWJlciwgZGF5OiBudW1iZXIpOiBudW1iZXIge1xuICAgIGNvbnN0IGQxOiBEYXRlID0gbmV3IERhdGUoeWVhciwgbW9udGgsIGRheSk7XG4gICAgY29uc3QgZDI6IERhdGUgPSBuZXcgRGF0ZSgpO1xuXG4gICAgY29uc3Qgc2FtZSA9IGQxLmdldFRpbWUoKSA9PT0gZDIuZ2V0VGltZSgpO1xuICAgIGlmIChzYW1lKSB7IHJldHVybiAwOyB9XG4gICAgaWYgKGQxID4gZDIpIHsgcmV0dXJuIDE7IH1cbiAgICBpZiAoZDEgPCBkMikgeyByZXR1cm4gLTE7IH1cbiAgfVxuXG4gIC8vIElucHV0IGNvbnRyb2xzXG4gIG9uWWVhckNoYW5nZSgpIHtcbiAgICBpZiAoTnVtYmVyLmlzTmFOKCt0aGlzLnllYXJUZXh0KSkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMueWVhclRleHQgPSAnJztcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIG9uWWVhckJsdXIoZWxlbWVudDogYW55KSB7XG4gICAgaWYgKHRoaXMuY29tcGFyZURhdGUoXG4gICAgICBOdW1iZXIoYDIwJHt0aGlzLnllYXJUZXh0fWApLFxuICAgICAgTnVtYmVyKHRoaXMubW9udGhUZXh0KSxcbiAgICAgIG5ldyBEYXRlKCkuZ2V0RGF0ZSgpKSA8IDApIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLnllYXJUZXh0ID0gJyc7XG4gICAgICAgIHRoaXMuaW52YWxpZERhdGUgPSB0cnVlO1xuICAgICAgICBlbGVtZW50LnRhcmdldC5mb2N1cygpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW52YWxpZERhdGUgPSBmYWxzZTtcbiAgICB9XG5cbiAgfVxuXG4gIG9uTW9udGhMb3N0Rm9jdXMoKSB7XG4gICAgaWYgKCt0aGlzLm1vbnRoVGV4dCA+IDAgJiYgIWlzTmFOKCt0aGlzLm1vbnRoVGV4dCkpIHtcbiAgICAgIGlmICh0aGlzLm1vbnRoVGV4dCA9PT0gJzEnKSB7XG4gICAgICAgIHRoaXMubW9udGhUZXh0ID0gJzAxJztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBvbk1vbnRoQ2hhbmdlKCkge1xuICAgIGlmICgrdGhpcy5tb250aFRleHQgPj0gMCAmJiArdGhpcy5tb250aFRleHQgPCAxMyAmJiAhaXNOYU4oK3RoaXMubW9udGhUZXh0KSkge1xuICAgICAgc3dpdGNoICh0aGlzLm1vbnRoVGV4dCkge1xuICAgICAgICBjYXNlICcyJzoge1xuICAgICAgICAgIHRoaXMubW9udGhUZXh0ID0gJzAyJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICczJzoge1xuICAgICAgICAgIHRoaXMubW9udGhUZXh0ID0gJzAzJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICc0Jzoge1xuICAgICAgICAgIHRoaXMubW9udGhUZXh0ID0gJzA0JztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICc1Jzoge1xuICAgICAgICAgIHRoaXMubW9udGhUZXh0ID0gJzA1JztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICc2Jzoge1xuICAgICAgICAgIHRoaXMubW9udGhUZXh0ID0gJzA2JztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICc3Jzoge1xuICAgICAgICAgIHRoaXMubW9udGhUZXh0ID0gJzA3JztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICc4Jzoge1xuICAgICAgICAgIHRoaXMubW9udGhUZXh0ID0gJzA4JztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICc5Jzoge1xuICAgICAgICAgIHRoaXMubW9udGhUZXh0ID0gJzA5JztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5tb250aFRleHQgPSAnJztcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIG9uQ29kZUNoYW5nZSgpIHtcbiAgICBpZiAoTnVtYmVyLmlzTmFOKCt0aGlzLmN2Y1RleHQpKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5jdmNUZXh0ID0gJyc7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5jdmNUZXh0LnNlYXJjaCgnICcpID4gLTEpIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmN2Y1RleHQgPSAnJztcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIG9uRG5pQ2hhbmdlKCkge1xuICAgIGlmIChOdW1iZXIuaXNOYU4oK3RoaXMuZG5pVGV4dCkpIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmRuaVRleHQgPSAnJztcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmRuaVRleHQuc2VhcmNoKCcgJykgPiAtMSkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuZG5pVGV4dCA9ICcnO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgb25QYXllck5hbWVDaGFuZ2UoKSB7XG4gICAgaWYgKCFpc05hTigrdGhpcy5wYXllck5hbWVUZXh0KSkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMucGF5ZXJOYW1lVGV4dCA9ICcnO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgb25DYXJkQ2hhbmdlKCkge1xuICAgIGlmIChOdW1iZXIuaXNOYU4oK3RoaXMuY2FyZFRleHQpKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5jYXJkVGV4dCA9ICcnO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY2FyZFRleHQuc2VhcmNoKCcgJykgPiAtMSkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2FyZFRleHQgPSAnJztcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmKHRoaXMuY2FyZFRleHQubGVuZ3RoIDw4KSB7XG4gICAgICB0aGlzLmRpc2FibGVTZWxlY3QgPSB0cnVlO1xuICAgICAgdGhpcy5pc3N1ZXIgPSBudWxsO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmRpc2FibGVTZWxlY3QgPSBmYWxzZTtcbiAgICB9XG5cbiAgICAvLyBzZXRlYSB0YXJqZXRhXG4gICAgaWYgKHRoaXMuY2FyZFRleHQubGVuZ3RoID09PSA4ICYmIHRoaXMuY2FyZFRleHQgIT09ICcwMDAwMDAwMCcpe1xuICAgICAgdGhpcy5zZXRDcmVkaXRUeXBlKHRoaXMuY2FyZFRleHQpO1xuICAgIH1cbiAgICBcbiAgfVxuXG4gIHNldENyZWRpdFR5cGUoYmluOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoYmluLmxlbmd0aCA8IDgpIHtcbiAgICAgIHRoaXMuaXNzdWVyID0gbnVsbDtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoYmluLmxlbmd0aCA9PT0gOCkge1xuICAgICAgdGhpcy5pc3N1ZXIgPSBudWxsO1xuXG4gICAgICAvLyB2aXNhIGRlYml0b1xuICAgICAgaWYgKGJpbi5zdWJzdHJpbmcoMCwgNCkgPT09ICc0NzcwJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNDQyNTQ4JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNDA2ODA5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNDA4NzM4JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNDExNTIxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNDExNjYzJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNDI2MzU5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNDI5NzgwJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNDM4MjY3JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNDYxMTg3JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTAwMzM0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTA5NDEzJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTEyMjg1JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTEyODgxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTE4NjM1JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTM4NDQ5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTUwNTUzJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTY2MDU3JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTY3OTMzJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTcyMTQwJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTg0MjU3JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTk4NzE4JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNjA1ODAxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNjA2MTIwJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNjMxMDU3JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNjc2MjE1JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNzEzMjc0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNzEzMjg0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNzE3NTE1JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNzQ4NzYxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNzUzMzcxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNzUzNjAwJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTEyMzk0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTE2MTQ4JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTE2NzczJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTIzNDA1JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTMwOTY1JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTM0MDkxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTM1NzYxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTQzMzEzJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTQ1NzIxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTQ4ODA5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTYwNjQ0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTY5MDg1JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTcwMTY3JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTc4MDYxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDAyNjc5MTknIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0MDMyNzE3NicgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQwNDE2MDA0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDA0MjE5MzMnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0MDQ1MTU1NicgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQwNTQxMDEwJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDA2MjM4MzUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0MDczMzQ2OScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQwNzMzNTg2JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDA4NzI0OTgnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTAwNzc4OScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MDI0ODIyJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUwMzQ3NTEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTA0Njk4NycgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MDYwNTQ5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUwNjI0ODInIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTA3MDA3MScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MDg0NzA4JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUwOTE0MzMnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTEwMDkwMicgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MTAzODY5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUxMzEwNDcnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTE2ODg4NCcgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MTc0MzA2JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUxODQ2MTEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTE5MTkyMScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MjAxODgxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUyMDY0MDEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTI0NTI5NCcgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MzE0OTQ0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUzMTc4NDcnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTM1NzQwOScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1Mzc0NTg3JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUzOTQ3MDUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTQ1NjU4NCcgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1NTQxOTI0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU1NDU3OTUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTU2Nzc0NicgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1NTgzNzU5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU2NDg4MzgnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTY3MjUwNicgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1Njc4NDIxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU3MTA3NTYnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTcxNjAwNicgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1NzI1MDI5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU3MzIxMTMnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTczMjY5OCcgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1NzkzOTE3JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU4NDExODUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTg2MjAyMScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1OTE1MzM2JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU5NzE0OTYnKSB7XG4gICAgICAgIHRoaXMuaXNzdWVyID0gMzE7XG4gICAgICB9XG4gICAgICAvLyBtYXN0ZXJjYXJkXG4gICAgICBlbHNlIGlmIChiaW4uc3Vic3RyaW5nKDAsIDIpID09PSAnNTEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgMikgPT09ICc1MicgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCAyKSA9PT0gJzUzJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDIpID09PSAnNTQnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgMikgPT09ICc1NScpIHtcbiAgICAgICAgdGhpcy5pc3N1ZXIgPSAxMDQ7XG4gICAgICB9XG4gICAgICAvLyB0YXJqZXRhIG5hcmFuamFcbiAgICAgIGVsc2UgaWYgKGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1ODk1NjInKSB7XG4gICAgICAgIHRoaXMuaXNzdWVyID0gMjQ7XG4gICAgICB9XG4gICAgICAvLyB2aXNhIGNyZWRpdG9cbiAgICAgIGVsc2UgaWYgKGJpbi5zdWJzdHJpbmcoMCwgMSkgPT09ICc0Jykge1xuICAgICAgICB0aGlzLmlzc3VlciA9IDE7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc2VsZWN0ZWRDcmVkaXRDYXJkKCk7XG4gICAgfVxuICB9XG5cbiAgb25QYXN0ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICByZXNldEZvcm0oKSB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGZhbHNlO1xuICAgIHRoaXMuZGlzYWJsZVNlbGVjdCA9IGZhbHNlO1xuICAgIHRoaXMudG90YWxBbW91bnRcbiAgICB0aGlzLnRvdGFsRmluYW5jZWRBbW91bnQgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5jdXJyZW50VEVBID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuY3VycmVudENGVCA9IHVuZGVmaW5lZDtcbiAgICAvLyBjcmVkaXRDYXJkczogQ3JlZGl0Q2FyZFtdO1xuICAgIHRoaXMuY3JlZGl0Q2FyZHMgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5zZWxlY3RDcmVkaXRDYXJkUGxhbiA9IG51bGw7XG4gICAgLy8gY3JlZGl0Q2FyZFBsYW5zOiBDcmVkaXRDYXJkUGxhbnNbXTtcbiAgICB0aGlzLmNyZWRpdENhcmRQbGFucyA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLnBheW1lbnRSZXN1bHQgPSB7IHN1Y2Nlc3M6IGZhbHNlLCBwYXltZW50SWQ6ICcnLCBpbnRlZ3JhdG9yOiAnREVDSURJUicgfTtcbiAgXG4gICAgLy8gRm9ybSBiaW5kXG4gICAgdGhpcy5tb250aFRleHQgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy55ZWFyVGV4dCA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLmN2Y1RleHQgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5kbmlUZXh0ID0gdW5kZWZpbmVkO1xuICAgIHRoaXMucGF5ZXJOYW1lVGV4dCA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLmNhcmRUZXh0ID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuc3VibWl0UHJlc3NlZCA9IGZhbHNlO1xuICAgIHRoaXMuaW52YWxpZERhdGUgPSBmYWxzZTtcbiAgXG4gICAgdGhpcy5kZWNpZGlyID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuYWRkU2NyaXB0ID0gdHJ1ZTtcbiAgXG4gICAgdGhpcy5wYXltZW50U3RhdGUgPSAndW5zdWJtaXR0ZWQnO1xuICAgIHRoaXMucGF5ZXJOYW1lID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuaXNzdWVyID0gbnVsbDtcbiAgICB0aGlzLnBheW1lbnQgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5wYXltZW50U3VjY2Vzc0luZm8gPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB1bmRlZmluZWQ7XG5cbiAgICB0aGlzLmluaXREZWNpZGlyKCk7XG4gIH1cblxufVxuIl19
|
|
896
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BzLWRlY2lkaXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vdmstcGF5bWVudHMvIiwic291cmNlcyI6WyJsaWIvc3BzLWRlY2lkaXIvY29tcG9uZW50cy9zcHMtZGVjaWRpci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBaUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BILE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBWTVCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBUzNFLE1BQU0sT0FBTyxtQkFBbUI7Ozs7O0lBdUQ5QixZQUFvQixNQUFjLEVBQVMsb0JBQTBDO1FBQWpFLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBUyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBbkM1RSxhQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ2YsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFpQixDQUFDO1FBRXhELGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFPdEIseUJBQW9CLEdBQW9CLElBQUksQ0FBQztRQUU3QyxrQkFBYSxHQUFrQixFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLENBQUM7UUFTeEYsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFDdEIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFHcEIsY0FBUyxHQUFHLElBQUksQ0FBQztRQUVqQixpQkFBWSxHQUFHLGFBQWEsQ0FBQztRQUU3QixXQUFNLEdBQVksSUFBSSxDQUFDO0lB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QUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVUsRUFBRTtnQkFDcEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUM7YUFDbEI7WUFDRCxhQUFhO2lCQUNSLElBQUksR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSTtnQkFDbkMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFB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bnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdGb3JtIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCBzaGEyNTYgZnJvbSAnc2hhMjU2JztcblxuaW1wb3J0IHtcbiAgQ3JlZGl0Q2FyZCxcbiAgQ3JlZGl0Q2FyZFBsYW5zLFxuICBFcnJvclRva2VuLFxuICBQYXltZW50LFxuICBQYXltZW50UmVzcG9uc2VJbmZvLFxuICBQYXltZW50UmVzdWx0LFxuICBSZXNwb25zZUFwaSxcbiAgU3BzUmVzcG9uc2VQYXltZW50LFxufSBmcm9tICcuLi9tb2RlbHMvcGF5bWVudC5tb2RlbCc7XG5pbXBvcnQgeyBTcHNEZWNpZGlyQXBpU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3Nwcy1kZWNpZGlyLmFwaS5zZXJ2aWNlJztcblxuZGVjbGFyZSB2YXIgRGVjaWRpcjogYW55O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzcHMtZm9ybS1wYXknLFxuICB0ZW1wbGF0ZVVybDogJy4vc3BzLWRlY2lkaXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zcHMtZGVjaWRpci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFNwc0RlY2lkaXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG5cbiAgQFZpZXdDaGlsZCgnZicsIHsgc3RhdGljOiBmYWxzZSB9KSBjaGVja091dEZvcm06IE5nRm9ybTtcbiAgQElucHV0KCkgYWNjZXNzVG9rZW46IHN0cmluZztcbiAgQElucHV0KCkgc3BzVXJsQXBpOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHZrVXJsQXBpOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHBheW1lbnRBbW91bnQ6IHN0cmluZztcbiAgQElucHV0KCkgbG9nb1Nwczogc3RyaW5nO1xuICBASW5wdXQoKSBjdXJyZW5jeTogc3RyaW5nO1xuICBASW5wdXQoKSBkZWZhdWx0UHVibGlzaGFibGVLZXk6IHN0cmluZztcbiAgQElucHV0KCkgc3VwZXJ2aWVsbGVQdWJsaXNoYWJsZUtleTogc3RyaW5nO1xuICBASW5wdXQoKSBzdWNjZXNzVXJsOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGZhaWx1cmVVcmw6IHN0cmluZztcbiAgQElucHV0KCkgdXNlQ3liZXJzb3VyY2U6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGRlYnVnTG9nOiBib29sZWFuO1xuICBASW5wdXQoKSBzdG9yZUlkOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRvbWFpbklkOiBudW1iZXI7XG4gIEBJbnB1dCgpIGlkVmVuOiBudW1iZXI7XG4gIEBJbnB1dCgpIGRhdGE6IHN0cmluZztcbiAgQElucHV0KCkgbGFiZWxCdXR0b246IHN0cmluZztcbiAgQElucHV0KCkgbGFuZ3VhZ2UgPSAnZXMnO1xuICBAT3V0cHV0KCkgc3RhdHVzUGF5ID0gbmV3IEV2ZW50RW1pdHRlcjxQYXltZW50UmVzdWx0PigpO1xuXG4gIGRpc2FibGVkID0gZmFsc2U7XG4gIGRpc2FibGVTZWxlY3QgPSBmYWxzZTtcbiAgdG90YWxBbW91bnQ6IHN0cmluZztcbiAgdG90YWxGaW5hbmNlZEFtb3VudDogc3RyaW5nO1xuICBjdXJyZW50VEVBOiBzdHJpbmc7XG4gIGN1cnJlbnRDRlQ6IHN0cmluZztcblxuICBjcmVkaXRDYXJkczogQ3JlZGl0Q2FyZFtdO1xuICBzZWxlY3RDcmVkaXRDYXJkUGxhbjogQ3JlZGl0Q2FyZFBsYW5zID0gbnVsbDtcbiAgY3JlZGl0Q2FyZFBsYW5zOiBDcmVkaXRDYXJkUGxhbnNbXTtcbiAgcGF5bWVudFJlc3VsdDogUGF5bWVudFJlc3VsdCA9IHsgc3VjY2VzczogZmFsc2UsIHBheW1lbnRJZDogJycsIGludGVncmF0b3I6ICdERUNJRElSJyB9O1xuXG4gIC8vIEZvcm0gYmluZFxuICBtb250aFRleHQ6IHN0cmluZztcbiAgeWVhclRleHQ6IHN0cmluZztcbiAgY3ZjVGV4dDogc3RyaW5nO1xuICBkbmlUZXh0OiBzdHJpbmc7XG4gIHBheWVyTmFtZVRleHQ6IHN0cmluZztcbiAgY2FyZFRleHQ6IHN0cmluZztcbiAgc3VibWl0UHJlc3NlZCA9IGZhbHNlO1xuICBpbnZhbGlkRGF0ZSA9IGZhbHNlO1xuXG4gIHByaXZhdGUgZGVjaWRpcjogYW55O1xuICBhZGRTY3JpcHQgPSB0cnVlO1xuXG4gIHBheW1lbnRTdGF0ZSA9ICd1bnN1Ym1pdHRlZCc7XG4gIHBheWVyTmFtZTogc3RyaW5nO1xuICBpc3N1ZXI/OiBudW1iZXIgPSBudWxsO1xuICBwYXltZW50OiBQYXltZW50O1xuICBwYXltZW50U3VjY2Vzc0luZm86IFBheW1lbnRSZXNwb25zZUluZm87XG4gIGVycm9yTWVzc2FnZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsIHB1YmxpYyBzcHNEZWNpZGlyQXBpU2VydmljZTogU3BzRGVjaWRpckFwaVNlcnZpY2UpIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuaW5pdERlY2lkaXIoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoIWNoYW5nZXMucGF5bWVudEFtb3VudC5pc0ZpcnN0Q2hhbmdlKCkpIHtcbiAgICAgIHRoaXMuY2hlY2tPdXRGb3JtLnJlc2V0KCk7XG4gICAgICB0aGlzLmRpc2FibGVkID0gZmFsc2U7XG4gICAgICB0aGlzLmRpc2FibGVTZWxlY3QgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGluaXREZWNpZGlyKCkge1xuICAgIHRoaXMuYWRkRGVjaWRpclNjcmlwdCgpXG4gICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgIHRoaXMuZ2V0Q3JlZGl0Q2FyZHMoKTtcbiAgICAgICAgdGhpcy5pbml0aWFsaXplU3BzRGVjaWRpcigpO1xuICAgICAgfSk7XG4gIH1cblxuICBhZGREZWNpZGlyU2NyaXB0KCkge1xuICAgIHRoaXMuYWRkU2NyaXB0ID0gdHJ1ZTtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgIGNvbnN0IHNjcmlwdHRhZ0VsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcbiAgICAgIHNjcmlwdHRhZ0VsZW1lbnQuc3JjID0gJ2h0dHBzOi8vbGl2ZS5kZWNpZGlyLmNvbS9zdGF0aWMvdjIuNC9kZWNpZGlyLmpzJztcbiAgICAgIHNjcmlwdHRhZ0VsZW1lbnQub25sb2FkID0gcmVzb2x2ZTtcbiAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoc2NyaXB0dGFnRWxlbWVudCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldENyZWRpdENhcmRzKCkge1xuICAgIHRoaXMuc3BzRGVjaWRpckFwaVNlcnZpY2UuZ2V0Q3JlZGl0Q2FyZHModGhpcy5hY2Nlc3NUb2tlbiwgdGhpcy52a1VybEFwaSwgdGhpcy5kb21haW5JZClcbiAgICAgIC5zdWJzY3JpYmUoKHJlczogUmVzcG9uc2VBcGkpID0+IHtcbiAgICAgICAgdGhpcy5jcmVkaXRDYXJkcyA9IHJlcy5kYXRhIGFzIENyZWRpdENhcmRbXTtcbiAgICAgICAgdGhpcy5sb2dnZXIoJ2dldENyZWRpdENhcmRzJywgdGhpcy5jcmVkaXRDYXJkcyk7XG4gICAgICB9LCBfID0+IHRoaXMucGF5bWVudFN0YXRlID0gJ2FwaUVycm9yJyk7XG4gIH1cblxuICBwcml2YXRlIGdldFBsYW5zQnlDcmVkaXRDYXJkSWQoYW1vdW50OiBzdHJpbmcsIGNyZWRpdENhcmRJZDogbnVtYmVyLCBkb21haW5JZDogbnVtYmVyLCBiaW46IHN0cmluZykge1xuICAgIHRoaXMuc3BzRGVjaWRpckFwaVNlcnZpY2UuZ2V0UGxhbnNCeUNyZWRpdENhcmRJZCh0aGlzLmFjY2Vzc1Rva2VuLCB0aGlzLnZrVXJsQXBpLCBhbW91bnQsIGNyZWRpdENhcmRJZCwgZG9tYWluSWQsIGJpbilcbiAgICAgIC5zdWJzY3JpYmUoKHJlczogUmVzcG9uc2VBcGkpID0+IHtcbiAgICAgICAgdGhpcy5jcmVkaXRDYXJkUGxhbnMgPSByZXMuZGF0YSBhcyBDcmVkaXRDYXJkUGxhbnNbXTtcbiAgICAgICAgdGhpcy5sb2dnZXIoJ2dldFBsYW5zQnlDcmVkaXRDYXJkSWQnLCB0aGlzLmNyZWRpdENhcmRQbGFucyk7XG4gICAgICB9LCBfID0+IHRoaXMucGF5bWVudFN0YXRlID0gJ2FwaUVycm9yJyk7XG4gIH1cblxuICBwcml2YXRlIGluaXRpYWxpemVTcHNEZWNpZGlyKCkge1xuICAgIHRoaXMuZGVjaWRpciA9IG5ldyBEZWNpZGlyKHRoaXMuc3BzRGVjaWRpckFwaVNlcnZpY2Uubm9ybWFsaXplVXJsKHRoaXMuc3BzVXJsQXBpKSwgIXRoaXMudXNlQ3liZXJzb3VyY2UpO1xuICAgIHRoaXMuZGVjaWRpci5zZXRUaW1lb3V0KDE1MDAwKTtcbiAgICB0aGlzLmRlY2lkaXIuc2V0UHVibGlzaGFibGVLZXkodGhpcy5kZWZhdWx0UHVibGlzaGFibGVLZXkpO1xuICB9XG5cbiAgcHJpdmF0ZSBsb2dnZXIobWVzc2FnZTogc3RyaW5nLCBkYXRhOiBhbnkpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZGVidWdMb2cpIHsgcmV0dXJuOyB9XG4gICAgY29uc29sZS5sb2cobWVzc2FnZSwgZGF0YSk7XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0ZWRDcmVkaXRDYXJkKCkge1xuICAgIGlmICghdGhpcy5pc3N1ZXIpIHsgcmV0dXJuOyB9XG5cbiAgICB0aGlzLnNlbGVjdENyZWRpdENhcmRQbGFuID0gbnVsbDtcbiAgICBpZiAodGhpcy5jdXJyZW5jeSA9PT0gJ0FSUycgJiYgdGhpcy5jYXJkVGV4dC5zdWJzdHJpbmcoMCw4KSAhPT0gJzAwMDAwMDAwJykge1xuICAgICAgdGhpcy5nZXRQbGFuc0J5Q3JlZGl0Q2FyZElkKHRoaXMucGF5bWVudEFtb3VudCwgdGhpcy5pc3N1ZXIsIHRoaXMuZG9tYWluSWQsIHRoaXMuY2FyZFRleHQuc3Vic3RyaW5nKDAsOCkpO1xuICAgICAgcmV0dXJuO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNhcmRUZXh0ID0nJztcbiAgICB9XG5cbiAgICBpZiAodGhpcy5jdXJyZW5jeSA9PT0gJ1VTRCcpIHtcbiAgICAgIHRoaXMudG90YWxBbW91bnQgPSB0aGlzLnRvdGFsRmluYW5jZWRBbW91bnQgPSB0aGlzLnBheW1lbnRBbW91bnQ7XG4gICAgfVxuICB9XG5cbiAgc2VsZWN0ZWRDcmVkaXRDYXJkUGxhbigpIHtcbiAgICBpZiAodGhpcy5zZWxlY3RDcmVkaXRDYXJkUGxhbiA9PT0gbnVsbCkgeyByZXR1cm47IH1cblxuICAgIHRoaXMudG90YWxGaW5hbmNlZEFtb3VudCA9IHRoaXMuc2VsZWN0Q3JlZGl0Q2FyZFBsYW4udG90YWxBbW91bnQ7XG4gICAgdGhpcy50b3RhbEFtb3VudCA9IHRoaXMucGF5bWVudEFtb3VudDtcbiAgICB0aGlzLmN1cnJlbnRURUEgPSB0aGlzLnNlbGVjdENyZWRpdENhcmRQbGFuLnRuYTtcbiAgICB0aGlzLmN1cnJlbnRDRlQgPSB0aGlzLnNlbGVjdENyZWRpdENhcmRQbGFuLmNmdDtcbiAgfVxuXG4gIG9uU3VibWl0KGV2ZW50KSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB0aGlzLnN1Ym1pdFByZXNzZWQgPSB0cnVlO1xuICAgIHRoaXMucGF5bWVudFJlc3VsdCA9IHsgc3VjY2VzczogZmFsc2UsIHBheW1lbnRJZDogJycsIGludGVncmF0b3I6ICdERUNJRElSJyB9O1xuXG4gICAgaWYgKCF0aGlzLmNoZWNrT3V0Rm9ybS52YWxpZCkgeyByZXR1cm47IH1cblxuICAgIHRoaXMuc3BzRGVjaWRpckFwaVNlcnZpY2UuZ2V0RGVjaWRpckNvbmZpZ0J5QmluKHRoaXMuY2FyZFRleHQuc3Vic3RyaW5nKDAsIDgpLCB0aGlzLnZrVXJsQXBpKVxuICAgICAgLnN1YnNjcmliZShjb25maWcgPT4ge1xuICAgICAgICBjb25zb2xlLmxvZyhjb25maWcpO1xuICAgICAgICBpZihjb25maWcgPT0nU1BTLURlY2lkaXItU3VwZXJ2aWVsbGUnKXtcbiAgICAgICAgICBjb25zb2xlLmxvZygnTW9kbyBTdXBlcnZpZWxsZScpO1xuICAgICAgICAgIHRoaXMuZGVjaWRpci5zZXRQdWJsaXNoYWJsZUtleSh0aGlzLnN1cGVydmllbGxlUHVibGlzaGFibGVLZXkpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5wYXltZW50U3RhdGUgPSAncHJvY2Vzc2luZyc7XG4gICAgICAgIGNvbnN0IGZvcm0gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjZm9ybXVsYXJpbycpO1xuICAgICAgICB0aGlzLmRlY2lkaXIuY3JlYXRlVG9rZW4oZm9ybSwgKHN0YXR1czogbnVtYmVyLCByZXNwb25zZTogU3BzUmVzcG9uc2VQYXltZW50KSA9PiB7XG4gICAgICAgICAgaWYgKHN0YXR1cyAhPT0gMjAwICYmIHN0YXR1cyAhPT0gMjAxKSB7XG4gICAgICAgICAgICB0aGlzLnBheW1lbnRTdGF0ZSA9ICdlcnJvcic7XG4gICAgICAgICAgICB0aGlzLnN0YXR1c1BheS5lbWl0KHRoaXMucGF5bWVudFJlc3VsdCk7XG4gICAgICAgICAgICB0aGlzLnByb2Nlc3NFcnJvclRva2VuKHJlc3BvbnNlKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5tYWtlUGF5bWVudChmb3JtLCByZXNwb25zZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcblxuICAgICAgfSk7XG4gIH1cblxuICBtYWtlUGF5bWVudChmb3JtOiBhbnksIHBheW1lbnRSZXNwb25zZTogU3BzUmVzcG9uc2VQYXltZW50KTogdm9pZCB7XG4gICAgdGhpcy5sb2dnZXIoJ21ha2VQYXltZW50OicsIEpTT04uc3RyaW5naWZ5KHBheW1lbnRSZXNwb25zZSkpO1xuICAgIGNvbnN0IGhhc2hlZENhcmQgPSB0aGlzLmhhc2hUZXh0KHRoaXMuY2FyZFRleHQsMTAwMDAwKTtcbiAgICB0aGlzLnBheW1lbnQgPSB7XG4gICAgICB0b2tlbjogcGF5bWVudFJlc3BvbnNlLmlkLFxuICAgICAgYW1vdW50OiB0aGlzLnRvdGFsQW1vdW50LFxuICAgICAgdG90YWxGaW5hbmNlZEFtb3VudDogdGhpcy50b3RhbEZpbmFuY2VkQW1vdW50LFxuICAgICAgYmluOiBwYXltZW50UmVzcG9uc2UuYmluLFxuICAgICAgY3VycmVuY3k6ICdBUlMnLFxuICAgICAgZG9jdW1lbnROdW1iZXI6IHRoaXMuY3VycmVuY3kgPT09ICdVU0QnID8gJzAnIDogcGF5bWVudFJlc3BvbnNlLmNhcmRob2xkZXIuaWRlbnRpZmljYXRpb24ubnVtYmVyLFxuICAgICAgaWRWZW46IHRoaXMuaWRWZW4sXG4gICAgICBwYXltZW50VHlwZTogJ3NpbmdsZScsXG4gICAgICBpbnN0YWxsbWVudHM6IHRoaXMuY3VycmVuY3kgPT09ICdVU0QnID8gMSA6IHRoaXMuc2VsZWN0Q3JlZGl0Q2FyZFBsYW4uaW5zdGFsbG1lbnRzLFxuICAgICAgY3JlZGl0Q2FyZFBsYW5JZDogdGhpcy5jdXJyZW5jeSA9PT0gJ1VTRCcgPyAwIDogdGhpcy5zZWxlY3RDcmVkaXRDYXJkUGxhbi5pZCxcbiAgICAgIHBheW1lbnRNZXRob2RJZDogdGhpcy5pc3N1ZXIsXG4gICAgICBjYXJkaG9sZGVyOiB0aGlzLnBheWVyTmFtZVRleHQsXG4gICAgICBzdG9yZUlkOiB0aGlzLnN0b3JlSWQsXG4gICAgICBkYXRhOiB0aGlzLmRhdGEsXG4gICAgICBzdWJQYXltZW50czogW10sXG4gICAgICBjcmVkaXRDYXJkSGFzaDogaGFzaGVkQ2FyZCxcbiAgICAgIGxhc3RGb3VyRGlnaXRzOiB0aGlzLmNhcmRUZXh0LnNsaWNlKC00KVxuICAgIH07XG4gICAgXG5cbiAgICB0aGlzLmxvZ2dlcigncGF5bWVudDonLCBKU09OLnN0cmluZ2lmeSh0aGlzLnBheW1lbnQpKTtcbiAgICB0aGlzLnNwc0RlY2lkaXJBcGlTZXJ2aWNlLm1ha2VQYXltZW50KHRoaXMucGF5bWVudCwgdGhpcy5hY2Nlc3NUb2tlbiwgdGhpcy52a1VybEFwaSlcbiAgICAgIC5zdWJzY3JpYmUoKHJlczogUmVzcG9uc2VBcGkpID0+IHtcbiAgICAgICAgdGhpcy5wYXltZW50UmVzcG9uc2VIYW5kbGVyKHJlcyk7XG4gICAgICB9LCBlcnJvciA9PiB7XG4gICAgICAgIHRoaXMuc3RhdHVzUGF5LmVtaXQodGhpcy5wYXltZW50UmVzdWx0KTtcbiAgICAgICAgdGhpcy5wYXltZW50U3RhdGUgPSAnYXBpRXJyb3InO1xuICAgICAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBoYXNoVGV4dCh0ZXh0OiBzdHJpbmcsIGl0ZXJhdGlvbnM6bnVtYmVyKTogc3RyaW5ne1xuICAgIGxldCBoYXNoZWR0ZXh0ID0gdGV4dDtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGl0ZXJhdGlvbnM7IGkrKykge1xuICAgICAgaGFzaGVkdGV4dCA9IHNoYTI1NihoYXNoZWR0ZXh0KTtcbiAgICB9XG4gICAgcmV0dXJuIGhhc2hlZHRleHRcbiAgfVxuXG4gIHBheW1lbnRSZXNwb25zZUhhbmRsZXIocmVzcG9uc2U6IFJlc3BvbnNlQXBpKSB7XG4gICAgdGhpcy5sb2dnZXIoJ3BheW1lbnRSZXNwb25zZUhhbmRsZXI6JywgSlNPTi5zdHJpbmdpZnkocmVzcG9uc2UpKTtcblxuICAgIGlmIChyZXNwb25zZS5zdWNjZXNzKSB7XG4gICAgICB0aGlzLnBheW1lbnRTdGF0ZSA9ICdzdWNjZXNzJztcbiAgICAgIHRoaXMucGF5bWVudFN1Y2Nlc3NJbmZvID0gcmVzcG9uc2UuZGF0YSBhcyBQYXltZW50UmVzcG9uc2VJbmZvO1xuICAgICAgdGhpcy5wYXltZW50UmVzdWx0ID0geyBzdWNjZXNzOiB0cnVlLCBwYXltZW50SWQ6IHRoaXMucGF5bWVudFN1Y2Nlc3NJbmZvLnBheW1lbnRfaWQsIGludGVncmF0b3I6ICdERUNJRElSJyB9O1xuICAgICAgdGhpcy5zdGF0dXNQYXkuZW1pdCh0aGlzLnBheW1lbnRSZXN1bHQpO1xuICAgICAgdGhpcy5kaXNhYmxlZCA9IHRydWU7XG4gICAgICB0aGlzLmRpc2FibGVTZWxlY3QgPSB0cnVlO1xuXG4gICAgICBpZiAodGhpcy5zdWNjZXNzVXJsICYmIHRoaXMuc3VjY2Vzc1VybC5sZW5ndGggPiAwKSB7XG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtgJHt0aGlzLnN1Y2Nlc3NVcmx9YF0pLnRoZW4oKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnBheW1lbnRTdGF0ZSA9ICdlcnJvcic7XG4gICAgICB0aGlzLnN0YXR1c1BheS5lbWl0KHRoaXMucGF5bWVudFJlc3VsdCk7XG4gICAgICB0aGlzLnByb2Nlc3NFcnJvck1lc3NhZ2UocmVzcG9uc2UuZGF0YSk7XG5cbiAgICAgIGlmICh0aGlzLmZhaWx1cmVVcmwgJiYgdGhpcy5mYWlsdXJlVXJsLmxlbmd0aCA+IDApIHtcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2Ake3RoaXMuZmFpbHVyZVVybH1gXSkudGhlbigpXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcm9jZXNzRXJyb3JUb2tlbihyZXNwb25zZTogYW55KTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IHRydWU7XG4gICAgdGhpcy5kaXNhYmxlU2VsZWN0ID0gdHJ1ZTtcblxuICAgIGNvbnN0IGVycm9yOiBFcnJvclRva2VuID0gcmVzcG9uc2UgYXMgRXJyb3JUb2tlbjtcblxuICAgIC8vIG9idGVuZW1vcyBtZW5zYWplcyBkZSBlcnJvclxuICAgIGVycm9yLmVycm9yLmZvckVhY2goKHgpID0+IHtcbiAgICAgIGlmICh4LmVycm9yLnR5cGUgPT09ICdpbnZhbGlkX2V4cGlyeV9kYXRlJykge1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9ICdSZXZpc8OhIGxhIGZlY2hhIGRlIHZlbmNpbWllbnRvLic7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IEpTT04uc3RyaW5naWZ5KGVycm9yKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8vIGRpZmVyZW50ZXMgdGlwb3MgZGUgZXJyb3Igbm9zIGRldnVlbHZlIGRlY2lkaXJcbiAgcHJvY2Vzc0Vycm9yTWVzc2FnZShyZXNwb25zZUVycm9yOiBQYXltZW50UmVzcG9uc2VJbmZvKTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IHRydWU7XG4gICAgdGhpcy5kaXNhYmxlU2VsZWN0ID0gdHJ1ZTtcblxuICAgIGlmIChyZXNwb25zZUVycm9yLmVycm9yKSB7XG4gICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHJlc3BvbnNlRXJyb3IuZXJyb3IucmVhc29uLmRlc2NyaXB0aW9uO1xuXG4gICAgICBpZiAocmVzcG9uc2VFcnJvci5lcnJvci5yZWFzb24uYWRkaXRpb25hbF9kZXNjcmlwdGlvbikge1xuICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHRoaXMuZXJyb3JNZXNzYWdlICsgJyAtICcgKyByZXNwb25zZUVycm9yLmVycm9yLnJlYXNvbi5hZGRpdGlvbmFsX2Rlc2NyaXB0aW9uO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5lcnJvck1lc3NhZ2UgPT0gJycgfHwgdGhpcy5lcnJvck1lc3NhZ2UgPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gSlNPTi5zdHJpbmdpZnkocmVzcG9uc2VFcnJvcik7XG4gICAgICB9XG4gICAgfVxuICAgIGVsc2UgaWYgKHJlc3BvbnNlRXJyb3IuZXJyb3JfdHlwZSkge1xuICAgICAgc3dpdGNoIChyZXNwb25zZUVycm9yLmVycm9yX3R5cGUpIHtcbiAgICAgICAgY2FzZSAnaW52YWxpZF9yZXF1ZXN0X2Vycm9yJzpcbiAgICAgICAgICBpZiAocmVzcG9uc2VFcnJvci52YWxpZGF0aW9uX2Vycm9ycy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBpZiAocmVzcG9uc2VFcnJvci52YWxpZGF0aW9uX2Vycm9yc1swXS5jb2RlID09PSAnaW52YWxpZF9wYXJhbScpIHtcbiAgICAgICAgICAgICAgc3dpdGNoIChyZXNwb25zZUVycm9yLnZhbGlkYXRpb25fZXJyb3JzWzBdLnBhcmFtKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAnY2FyZF9udW1iZXInOlxuICAgICAgICAgICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnVGFyamV0YSBpbnbDoWxpZGEnO1xuICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnYmluJzpcbiAgICAgICAgICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ1RhcmpldGEgaW52w6FsaWRhJztcbiAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHJlc3BvbnNlRXJyb3IuZXJyb3IucmVhc29uLmRlc2NyaXB0aW9uO1xuICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuZXJyb3JNZXNzYWdlID09ICcnIHx8IHRoaXMuZXJyb3JNZXNzYWdlID09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IEpTT04uc3RyaW5naWZ5KHJlc3BvbnNlRXJyb3IpO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ25vdF9mb3VuZF9lcnJvcic6XG4gICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnRGF0b3Mgbm8gZW5jb250cmFkb3MgKDQwNCkuJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnYXV0aGVudGljYXRpb25fZXJyb3InOlxuICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ0Vycm9yICg0MDEpLic7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ21hbGZvcm1lZF9yZXF1ZXN0X2Vycm9yJzpcbiAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9ICdFcnJvciBhbCBlbnZpYXIgbG9zIGRhdG9zICAoNDAwKS4nO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdhcGlfZXJyb3InOlxuICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ0Vycm9yIGludGVybm8gKDQwOSkuJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9IEpTT04uc3RyaW5naWZ5KHJlc3BvbnNlRXJyb3IpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGNvbXBhcmVEYXRlKHllYXI6IG51bWJlciwgbW9udGg6IG51bWJlciwgZGF5OiBudW1iZXIpOiBudW1iZXIge1xuICAgIGNvbnN0IGQxOiBEYXRlID0gbmV3IERhdGUoeWVhciwgbW9udGgsIGRheSk7XG4gICAgY29uc3QgZDI6IERhdGUgPSBuZXcgRGF0ZSgpO1xuXG4gICAgY29uc3Qgc2FtZSA9IGQxLmdldFRpbWUoKSA9PT0gZDIuZ2V0VGltZSgpO1xuICAgIGlmIChzYW1lKSB7IHJldHVybiAwOyB9XG4gICAgaWYgKGQxID4gZDIpIHsgcmV0dXJuIDE7IH1cbiAgICBpZiAoZDEgPCBkMikgeyByZXR1cm4gLTE7IH1cbiAgfVxuXG4gIC8vIElucHV0IGNvbnRyb2xzXG4gIG9uWWVhckNoYW5nZSgpIHtcbiAgICBpZiAoTnVtYmVyLmlzTmFOKCt0aGlzLnllYXJUZXh0KSkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMueWVhclRleHQgPSAnJztcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIG9uWWVhckJsdXIoZWxlbWVudDogYW55KSB7XG4gICAgaWYgKHRoaXMuY29tcGFyZURhdGUoXG4gICAgICBOdW1iZXIoYDIwJHt0aGlzLnllYXJUZXh0fWApLFxuICAgICAgTnVtYmVyKHRoaXMubW9udGhUZXh0KSxcbiAgICAgIG5ldyBEYXRlKCkuZ2V0RGF0ZSgpKSA8IDApIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLnllYXJUZXh0ID0gJyc7XG4gICAgICAgIHRoaXMuaW52YWxpZERhdGUgPSB0cnVlO1xuICAgICAgICBlbGVtZW50LnRhcmdldC5mb2N1cygpO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW52YWxpZERhdGUgPSBmYWxzZTtcbiAgICB9XG5cbiAgfVxuXG4gIG9uTW9udGhMb3N0Rm9jdXMoKSB7XG4gICAgaWYgKCt0aGlzLm1vbnRoVGV4dCA+IDAgJiYgIWlzTmFOKCt0aGlzLm1vbnRoVGV4dCkpIHtcbiAgICAgIGlmICh0aGlzLm1vbnRoVGV4dCA9PT0gJzEnKSB7XG4gICAgICAgIHRoaXMubW9udGhUZXh0ID0gJzAxJztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBvbk1vbnRoQ2hhbmdlKCkge1xuICAgIGlmICgrdGhpcy5tb250aFRleHQgPj0gMCAmJiArdGhpcy5tb250aFRleHQgPCAxMyAmJiAhaXNOYU4oK3RoaXMubW9udGhUZXh0KSkge1xuICAgICAgc3dpdGNoICh0aGlzLm1vbnRoVGV4dCkge1xuICAgICAgICBjYXNlICcyJzoge1xuICAgICAgICAgIHRoaXMubW9udGhUZXh0ID0gJzAyJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICczJzoge1xuICAgICAgICAgIHRoaXMubW9udGhUZXh0ID0gJzAzJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICc0Jzoge1xuICAgICAgICAgIHRoaXMubW9udGhUZXh0ID0gJzA0JztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICc1Jzoge1xuICAgICAgICAgIHRoaXMubW9udGhUZXh0ID0gJzA1JztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICc2Jzoge1xuICAgICAgICAgIHRoaXMubW9udGhUZXh0ID0gJzA2JztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICc3Jzoge1xuICAgICAgICAgIHRoaXMubW9udGhUZXh0ID0gJzA3JztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICc4Jzoge1xuICAgICAgICAgIHRoaXMubW9udGhUZXh0ID0gJzA4JztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBjYXNlICc5Jzoge1xuICAgICAgICAgIHRoaXMubW9udGhUZXh0ID0gJzA5JztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5tb250aFRleHQgPSAnJztcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIG9uQ29kZUNoYW5nZSgpIHtcbiAgICBpZiAoTnVtYmVyLmlzTmFOKCt0aGlzLmN2Y1RleHQpKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5jdmNUZXh0ID0gJyc7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5jdmNUZXh0LnNlYXJjaCgnICcpID4gLTEpIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmN2Y1RleHQgPSAnJztcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIG9uRG5pQ2hhbmdlKCkge1xuICAgIGlmIChOdW1iZXIuaXNOYU4oK3RoaXMuZG5pVGV4dCkpIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmRuaVRleHQgPSAnJztcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmRuaVRleHQuc2VhcmNoKCcgJykgPiAtMSkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuZG5pVGV4dCA9ICcnO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgb25QYXllck5hbWVDaGFuZ2UoKSB7XG4gICAgaWYgKCFpc05hTigrdGhpcy5wYXllck5hbWVUZXh0KSkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMucGF5ZXJOYW1lVGV4dCA9ICcnO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgb25DYXJkQ2hhbmdlKCkge1xuICAgIGlmIChOdW1iZXIuaXNOYU4oK3RoaXMuY2FyZFRleHQpKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5jYXJkVGV4dCA9ICcnO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY2FyZFRleHQuc2VhcmNoKCcgJykgPiAtMSkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2FyZFRleHQgPSAnJztcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmKHRoaXMuY2FyZFRleHQubGVuZ3RoIDw4KSB7XG4gICAgICB0aGlzLmRpc2FibGVTZWxlY3QgPSB0cnVlO1xuICAgICAgdGhpcy5pc3N1ZXIgPSBudWxsO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmRpc2FibGVTZWxlY3QgPSBmYWxzZTtcbiAgICB9XG5cbiAgICAvLyBzZXRlYSB0YXJqZXRhXG4gICAgaWYgKHRoaXMuY2FyZFRleHQubGVuZ3RoID09PSA4ICYmIHRoaXMuY2FyZFRleHQgIT09ICcwMDAwMDAwMCcpe1xuICAgICAgdGhpcy5zZXRDcmVkaXRUeXBlKHRoaXMuY2FyZFRleHQpO1xuICAgIH1cbiAgICBcbiAgfVxuXG4gIHNldENyZWRpdFR5cGUoYmluOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoYmluLmxlbmd0aCA8IDgpIHtcbiAgICAgIHRoaXMuaXNzdWVyID0gbnVsbDtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoYmluLmxlbmd0aCA9PT0gOCkge1xuICAgICAgdGhpcy5pc3N1ZXIgPSBudWxsO1xuXG4gICAgICAvLyB2aXNhIGRlYml0b1xuICAgICAgaWYgKGJpbi5zdWJzdHJpbmcoMCwgNCkgPT09ICc0NzcwJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNDQyNTQ4JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNDA2ODA5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNDA4NzM4JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNDExNTIxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNDExNjYzJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNDI2MzU5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNDI5NzgwJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNDM4MjY3JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNDYxMTg3JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTAwMzM0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTA5NDEzJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTEyMjg1JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTEyODgxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTE4NjM1JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTM4NDQ5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTUwNTUzJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTY2MDU3JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTY3OTMzJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTcyMTQwJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTg0MjU3JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNTk4NzE4JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNjA1ODAxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNjA2MTIwJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNjMxMDU3JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNjc2MjE1JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNzEzMjc0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNzEzMjg0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNzE3NTE1JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNzQ4NzYxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNzUzMzcxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnNzUzNjAwJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTEyMzk0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTE2MTQ4JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTE2NzczJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTIzNDA1JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTMwOTY1JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTM0MDkxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTM1NzYxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTQzMzEzJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTQ1NzIxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTQ4ODA5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTYwNjQ0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTY5MDg1JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTcwMTY3JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDYpID09PSAnOTc4MDYxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDAyNjc5MTknIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0MDMyNzE3NicgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQwNDE2MDA0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDA0MjE5MzMnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0MDQ1MTU1NicgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQwNTQxMDEwJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDA2MjM4MzUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0MDczMzQ2OScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQwNzMzNTg2JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDA4NzI0OTgnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTAwNzc4OScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MDI0ODIyJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUwMzQ3NTEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTA0Njk4NycgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MDYwNTQ5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUwNjI0ODInIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTA3MDA3MScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MDg0NzA4JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUwOTE0MzMnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTEwMDkwMicgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MTAzODY5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUxMzEwNDcnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTE2ODg4NCcgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MTc0MzA2JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUxODQ2MTEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTE5MTkyMScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MjAxODgxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUyMDY0MDEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTI0NTI5NCcgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MzE0OTQ0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUzMTc4NDcnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTM1NzQwOScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1Mzc0NTg3JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUzOTQ3MDUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTQ1NjU4NCcgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1NTQxOTI0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU1NDU3OTUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTU2Nzc0NicgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1NTgzNzU5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU2NDg4MzgnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTY3MjUwNicgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1Njc4NDIxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU3MTA3NTYnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTcxNjAwNicgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1NzI1MDI5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU3MzIxMTMnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTczMjY5OCcgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1NzkzOTE3JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU4NDExODUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTg2MjAyMScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1OTE1MzM2JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU5NzE0OTYnKSB7XG4gICAgICAgIHRoaXMuaXNzdWVyID0gMzE7XG4gICAgICB9XG4gICAgICAvLyBtYXN0ZXJjYXJkXG4gICAgICBlbHNlIGlmIChiaW4uc3Vic3RyaW5nKDAsIDIpID09PSAnNTEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgMikgPT09ICc1MicgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCAyKSA9PT0gJzUzJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDIpID09PSAnNTQnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgMikgPT09ICc1NScpIHtcbiAgICAgICAgdGhpcy5pc3N1ZXIgPSAxMDQ7XG4gICAgICB9XG4gICAgICAvLyB0YXJqZXRhIG5hcmFuamFcbiAgICAgIGVsc2UgaWYgKGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1ODk1NjInKSB7XG4gICAgICAgIHRoaXMuaXNzdWVyID0gMjQ7XG4gICAgICB9XG4gICAgICAvLyB2aXNhIGNyZWRpdG9cbiAgICAgIGVsc2UgaWYgKGJpbi5zdWJzdHJpbmcoMCwgMSkgPT09ICc0Jykge1xuICAgICAgICB0aGlzLmlzc3VlciA9IDE7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc2VsZWN0ZWRDcmVkaXRDYXJkKCk7XG4gICAgfVxuICB9XG5cbiAgb25QYXN0ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICByZXNldEZvcm0oKSB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGZhbHNlO1xuICAgIHRoaXMuZGlzYWJsZVNlbGVjdCA9IGZhbHNlO1xuICAgIHRoaXMudG90YWxBbW91bnRcbiAgICB0aGlzLnRvdGFsRmluYW5jZWRBbW91bnQgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5jdXJyZW50VEVBID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuY3VycmVudENGVCA9IHVuZGVmaW5lZDtcbiAgICAvLyBjcmVkaXRDYXJkczogQ3JlZGl0Q2FyZFtdO1xuICAgIHRoaXMuY3JlZGl0Q2FyZHMgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5zZWxlY3RDcmVkaXRDYXJkUGxhbiA9IG51bGw7XG4gICAgLy8gY3JlZGl0Q2FyZFBsYW5zOiBDcmVkaXRDYXJkUGxhbnNbXTtcbiAgICB0aGlzLmNyZWRpdENhcmRQbGFucyA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLnBheW1lbnRSZXN1bHQgPSB7IHN1Y2Nlc3M6IGZhbHNlLCBwYXltZW50SWQ6ICcnLCBpbnRlZ3JhdG9yOiAnREVDSURJUicgfTtcbiAgXG4gICAgLy8gRm9ybSBiaW5kXG4gICAgdGhpcy5tb250aFRleHQgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy55ZWFyVGV4dCA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLmN2Y1RleHQgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5kbmlUZXh0ID0gdW5kZWZpbmVkO1xuICAgIHRoaXMucGF5ZXJOYW1lVGV4dCA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLmNhcmRUZXh0ID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuc3VibWl0UHJlc3NlZCA9IGZhbHNlO1xuICAgIHRoaXMuaW52YWxpZERhdGUgPSBmYWxzZTtcbiAgXG4gICAgdGhpcy5kZWNpZGlyID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuYWRkU2NyaXB0ID0gdHJ1ZTtcbiAgXG4gICAgdGhpcy5wYXltZW50U3RhdGUgPSAndW5zdWJtaXR0ZWQnO1xuICAgIHRoaXMucGF5ZXJOYW1lID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuaXNzdWVyID0gbnVsbDtcbiAgICB0aGlzLnBheW1lbnQgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5wYXltZW50U3VjY2Vzc0luZm8gPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5lcnJvck1lc3NhZ2UgPSB1bmRlZmluZWQ7XG5cbiAgICB0aGlzLmluaXREZWNpZGlyKCk7XG4gIH1cblxufVxuIl19
|
|
@@ -233,7 +233,8 @@ var SpsDecidirComponent = /** @class */ (function () {
|
|
|
233
233
|
* @return {?}
|
|
234
234
|
*/
|
|
235
235
|
function (config) {
|
|
236
|
-
|
|
236
|
+
console.log(config);
|
|
237
|
+
if (config == 'SPS-Decidir-Supervielle') {
|
|
237
238
|
console.log('Modo Supervielle');
|
|
238
239
|
_this.decidir.setPublishableKey(_this.superviellePublishableKey);
|
|
239
240
|
}
|
|
@@ -1019,4 +1020,4 @@ if (false) {
|
|
|
1019
1020
|
/** @type {?} */
|
|
1020
1021
|
SpsDecidirComponent.prototype.spsDecidirApiService;
|
|
1021
1022
|
}
|
|
1022
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BzLWRlY2lkaXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vdmstcGF5bWVudHMvIiwic291cmNlcyI6WyJsaWIvc3BzLWRlY2lkaXIvY29tcG9uZW50cy9zcHMtZGVjaWRpci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBaUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BILE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBWTVCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBSTNFO0lBNERFLDZCQUFvQixNQUFjLEVBQVMsb0JBQTBDO1FBQWpFLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBUyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBbkM1RSxhQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ2YsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFpQixDQUFDO1FBRXhELGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFPdEIseUJBQW9CLEdBQW9CLElBQUksQ0FBQztRQUU3QyxrQkFBYSxHQUFrQixFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLENBQUM7UUFTeEYsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFDdEIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFHcEIsY0FBUyxHQUFHLElBQUksQ0FBQztRQUVqQixpQkFBWSxHQUFHLGFBQWEsQ0FBQztRQUU3QixXQUFNLEdBQVksSUFBSSxDQUFDO0lBS2tFLENBQUM7Ozs7SUFFMUYsc0NB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QyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxRQUFRO2dCQUNoQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxVQUFVO2dCQUNsQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMs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SUFDaEIsc0NBQWdCOztJQUNoQiw0Q0FBc0I7O0lBQ3RCLHVDQUFpQjs7SUFDakIsNENBQXNCOztJQUN0QiwwQ0FBb0I7Ozs7O0lBRXBCLHNDQUFxQjs7SUFDckIsd0NBQWlCOztJQUVqQiwyQ0FBNkI7O0lBQzdCLHdDQUFrQjs7SUFDbEIscUNBQXVCOztJQUN2QixzQ0FBaUI7O0lBQ2pCLGlEQUF3Qzs7SUFDeEMsMkNBQXFCOzs7OztJQUVULHFDQUFzQjs7SUFBRSxtREFBaUQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0LCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmdGb3JtIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCBzaGEyNTYgZnJvbSAnc2hhMjU2JztcblxuaW1wb3J0IHtcbiAgQ3JlZGl0Q2FyZCxcbiAgQ3JlZGl0Q2FyZFBsYW5zLFxuICBFcnJvclRva2VuLFxuICBQYXltZW50LFxuICBQYXltZW50UmVzcG9uc2VJbmZvLFxuICBQYXltZW50UmVzdWx0LFxuICBSZXNwb25zZUFwaSxcbiAgU3BzUmVzcG9uc2VQYXltZW50LFxufSBmcm9tICcuLi9tb2RlbHMvcGF5bWVudC5tb2RlbCc7XG5pbXBvcnQgeyBTcHNEZWNpZGlyQXBpU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3Nwcy1kZWNpZGlyLmFwaS5zZXJ2aWNlJztcblxuZGVjbGFyZSB2YXIgRGVjaWRpcjogYW55O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzcHMtZm9ybS1wYXknLFxuICB0ZW1wbGF0ZVVybDogJy4vc3BzLWRlY2lkaXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zcHMtZGVjaWRpci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFNwc0RlY2lkaXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG5cbiAgQFZpZXdDaGlsZCgnZicsIHsgc3RhdGljOiBmYWxzZSB9KSBjaGVja091dEZvcm06IE5nRm9ybTtcbiAgQElucHV0KCkgYWNjZXNzVG9rZW46IHN0cmluZztcbiAgQElucHV0KCkgc3BzVXJsQXBpOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHZrVXJsQXBpOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHBheW1lbnRBbW91bnQ6IHN0cmluZztcbiAgQElucHV0KCkgbG9nb1Nwczogc3RyaW5nO1xuICBASW5wdXQoKSBjdXJyZW5jeTogc3RyaW5nO1xuICBASW5wdXQoKSBkZWZhdWx0UHVibGlzaGFibGVLZXk6IHN0cmluZztcbiAgQElucHV0KCkgc3VwZXJ2aWVsbGVQdWJsaXNoYWJsZUtleTogc3RyaW5nO1xuICBASW5wdXQoKSBzdWNjZXNzVXJsOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGZhaWx1cmVVcmw6IHN0cmluZztcbiAgQElucHV0KCkgdXNlQ3liZXJzb3VyY2U6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGRlYnVnTG9nOiBib29sZWFuO1xuICBASW5wdXQoKSBzdG9yZUlkOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRvbWFpbklkOiBudW1iZXI7XG4gIEBJbnB1dCgpIGlkVmVuOiBudW1iZXI7XG4gIEBJbnB1dCgpIGRhdGE6IHN0cmluZztcbiAgQElucHV0KCkgbGFiZWxCdXR0b246IHN0cmluZztcbiAgQElucHV0KCkgbGFuZ3VhZ2UgPSAnZXMnO1xuICBAT3V0cHV0KCkgc3RhdHVzUGF5ID0gbmV3IEV2ZW50RW1pdHRlcjxQYXltZW50UmVzdWx0PigpO1xuXG4gIGRpc2FibGVkID0gZmFsc2U7XG4gIGRpc2FibGVTZWxlY3QgPSBmYWxzZTtcbiAgdG90YWxBbW91bnQ6IHN0cmluZztcbiAgdG90YWxGaW5hbmNlZEFtb3VudDogc3RyaW5nO1xuICBjdXJyZW50VEVBOiBzdHJpbmc7XG4gIGN1cnJlbnRDRlQ6IHN0cmluZztcblxuICBjcmVkaXRDYXJkczogQ3JlZGl0Q2FyZFtdO1xuICBzZWxlY3RDcmVkaXRDYXJkUGxhbjogQ3JlZGl0Q2FyZFBsYW5zID0gbnVsbDtcbiAgY3JlZGl0Q2FyZFBsYW5zOiBDcmVkaXRDYXJkUGxhbnNbXTtcbiAgcGF5bWVudFJlc3VsdDogUGF5bWVudFJlc3VsdCA9IHsgc3VjY2VzczogZmFsc2UsIHBheW1lbnRJZDogJycsIGludGVncmF0b3I6ICdERUNJRElSJyB9O1xuXG4gIC8vIEZvcm0gYmluZFxuICBtb250aFRleHQ6IHN0cmluZztcbiAgeWVhclRleHQ6IHN0cmluZztcbiAgY3ZjVGV4dDogc3RyaW5nO1xuICBkbmlUZXh0OiBzdHJpbmc7XG4gIHBheWVyTmFtZVRleHQ6IHN0cmluZztcbiAgY2FyZFRleHQ6IHN0cmluZztcbiAgc3VibWl0UHJlc3NlZCA9IGZhbHNlO1xuICBpbnZhbGlkRGF0ZSA9IGZhbHNlO1xuXG4gIHByaXZhdGUgZGVjaWRpcjogYW55O1xuICBhZGRTY3JpcHQgPSB0cnVlO1xuXG4gIHBheW1lbnRTdGF0ZSA9ICd1bnN1Ym1pdHRlZCc7XG4gIHBheWVyTmFtZTogc3RyaW5nO1xuICBpc3N1ZXI/OiBudW1iZXIgPSBudWxsO1xuICBwYXltZW50OiBQYXltZW50O1xuICBwYXltZW50U3VjY2Vzc0luZm86IFBheW1lbnRSZXNwb25zZUluZm87XG4gIGVycm9yTWVzc2FnZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsIHB1YmxpYyBzcHNEZWNpZGlyQXBpU2VydmljZTogU3BzRGVjaWRpckFwaVNlcnZpY2UpIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuaW5pdERlY2lkaXIoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoIWNoYW5nZXMucGF5bWVudEFtb3VudC5pc0ZpcnN0Q2hhbmdlKCkpIHtcbiAgICAgIHRoaXMuY2hlY2tPdXRGb3JtLnJlc2V0KCk7XG4gICAgICB0aGlzLmRpc2FibGVkID0gZmFsc2U7XG4gICAgICB0aGlzLmRpc2FibGVTZWxlY3QgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGluaXREZWNpZGlyKCkge1xuICAgIHRoaXMuYWRkRGVjaWRpclNjcmlwdCgpXG4gICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgIHRoaXMuZ2V0Q3JlZGl0Q2FyZHMoKTtcbiAgICAgICAgdGhpcy5pbml0aWFsaXplU3BzRGVjaWRpcigpO1xuICAgICAgfSk7XG4gIH1cblxuICBhZGREZWNpZGlyU2NyaXB0KCkge1xuICAgIHRoaXMuYWRkU2NyaXB0ID0gdHJ1ZTtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUpID0+IHtcbiAgICAgIGNvbnN0IHNjcmlwdHRhZ0VsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKTtcbiAgICAgIHNjcmlwdHRhZ0VsZW1lbnQuc3JjID0gJ2h0dHBzOi8vbGl2ZS5kZWNpZGlyLmNvbS9zdGF0aWMvdjIuNC9kZWNpZGlyLmpzJztcbiAgICAgIHNjcmlwdHRhZ0VsZW1lbnQub25sb2FkID0gcmVzb2x2ZTtcbiAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoc2NyaXB0dGFnRWxlbWVudCk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldENyZWRpdENhcmRzKCkge1xuICAgIHRoaXMuc3BzRGVjaWRpckFwaVNlcnZpY2UuZ2V0Q3JlZGl0Q2FyZHModGhpcy5hY2Nlc3NUb2tlbiwgdGhpcy52a1VybEFwaSwgdGhpcy5kb21haW5JZClcbiAgICAgIC5zdWJzY3JpYmUoKHJlczogUmVzcG9uc2VBcGkpID0+IHtcbiAgICAgICAgdGhpcy5jcmVkaXRDYXJkcyA9IHJlcy5kYXRhIGFzIENyZWRpdENhcmRbXTtcbiAgICAgICAgdGhpcy5sb2dnZXIoJ2dldENyZWRpdENhcmRzJywgdGhpcy5jcmVkaXRDYXJkcyk7XG4gICAgICB9LCBfID0+IHRoaXMucGF5bWVudFN0YXRlID0gJ2FwaUVycm9yJyk7XG4gIH1cblxuICBwcml2YXRlIGdldFBsYW5zQnlDcmVkaXRDYXJkSWQoYW1vdW50OiBzdHJpbmcsIGNyZWRpdENhcmRJZDogbnVtYmVyLCBkb21haW5JZDogbnVtYmVyLCBiaW46IHN0cmluZykge1xuICAgIHRoaXMuc3BzRGVjaWRpckFwaVNlcnZpY2UuZ2V0UGxhbnNCeUNyZWRpdENhcmRJZCh0aGlzLmFjY2Vzc1Rva2VuLCB0aGlzLnZrVXJsQXBpLCBhbW91bnQsIGNyZWRpdENhcmRJZCwgZG9tYWluSWQsIGJpbilcbiAgICAgIC5zdWJzY3JpYmUoKHJlczogUmVzcG9uc2VBcGkpID0+IHtcbiAgICAgICAgdGhpcy5jcmVkaXRDYXJkUGxhbnMgPSByZXMuZGF0YSBhcyBDcmVkaXRDYXJkUGxhbnNbXTtcbiAgICAgICAgdGhpcy5sb2dnZXIoJ2dldFBsYW5zQnlDcmVkaXRDYXJkSWQnLCB0aGlzLmNyZWRpdENhcmRQbGFucyk7XG4gICAgICB9LCBfID0+IHRoaXMucGF5bWVudFN0YXRlID0gJ2FwaUVycm9yJyk7XG4gIH1cblxuICBwcml2YXRlIGluaXRpYWxpemVTcHNEZWNpZGlyKCkge1xuICAgIHRoaXMuZGVjaWRpciA9IG5ldyBEZWNpZGlyKHRoaXMuc3BzRGVjaWRpckFwaVNlcnZpY2Uubm9ybWFsaXplVXJsKHRoaXMuc3BzVXJsQXBpKSwgIXRoaXMudXNlQ3liZXJzb3VyY2UpO1xuICAgIHRoaXMuZGVjaWRpci5zZXRUaW1lb3V0KDE1MDAwKTtcbiAgICB0aGlzLmRlY2lkaXIuc2V0UHVibGlzaGFibGVLZXkodGhpcy5kZWZhdWx0UHVibGlzaGFibGVLZXkpO1xuICB9XG5cbiAgcHJpdmF0ZSBsb2dnZXIobWVzc2FnZTogc3RyaW5nLCBkYXRhOiBhbnkpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuZGVidWdMb2cpIHsgcmV0dXJuOyB9XG4gICAgY29uc29sZS5sb2cobWVzc2FnZSwgZGF0YSk7XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0ZWRDcmVkaXRDYXJkKCkge1xuICAgIGlmICghdGhpcy5pc3N1ZXIpIHsgcmV0dXJuOyB9XG5cbiAgICB0aGlzLnNlbGVjdENyZWRpdENhcmRQbGFuID0gbnVsbDtcbiAgICBpZiAodGhpcy5jdXJyZW5jeSA9PT0gJ0FSUycgJiYgdGhpcy5jYXJkVGV4dC5zdWJzdHJpbmcoMCw4KSAhPT0gJzAwMDAwMDAwJykge1xuICAgICAgdGhpcy5nZXRQbGFuc0J5Q3JlZGl0Q2FyZElkKHRoaXMucGF5bWVudEFtb3VudCwgdGhpcy5pc3N1ZXIsIHRoaXMuZG9tYWluSWQsIHRoaXMuY2FyZFRleHQuc3Vic3RyaW5nKDAsOCkpO1xuICAgICAgcmV0dXJuO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmNhcmRUZXh0ID0nJztcbiAgICB9XG5cbiAgICBpZiAodGhpcy5jdXJyZW5jeSA9PT0gJ1VTRCcpIHtcbiAgICAgIHRoaXMudG90YWxBbW91bnQgPSB0aGlzLnRvdGFsRmluYW5jZWRBbW91bnQgPSB0aGlzLnBheW1lbnRBbW91bnQ7XG4gICAgfVxuICB9XG5cbiAgc2VsZWN0ZWRDcmVkaXRDYXJkUGxhbigpIHtcbiAgICBpZiAodGhpcy5zZWxlY3RDcmVkaXRDYXJkUGxhbiA9PT0gbnVsbCkgeyByZXR1cm47IH1cblxuICAgIHRoaXMudG90YWxGaW5hbmNlZEFtb3VudCA9IHRoaXMuc2VsZWN0Q3JlZGl0Q2FyZFBsYW4udG90YWxBbW91bnQ7XG4gICAgdGhpcy50b3RhbEFtb3VudCA9IHRoaXMucGF5bWVudEFtb3VudDtcbiAgICB0aGlzLmN1cnJlbnRURUEgPSB0aGlzLnNlbGVjdENyZWRpdENhcmRQbGFuLnRuYTtcbiAgICB0aGlzLmN1cnJlbnRDRlQgPSB0aGlzLnNlbGVjdENyZWRpdENhcmRQbGFuLmNmdDtcbiAgfVxuXG4gIG9uU3VibWl0KGV2ZW50KSB7XG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICB0aGlzLnN1Ym1pdFByZXNzZWQgPSB0cnVlO1xuICAgIHRoaXMucGF5bWVudFJlc3VsdCA9IHsgc3VjY2VzczogZmFsc2UsIHBheW1lbnRJZDogJycsIGludGVncmF0b3I6ICdERUNJRElSJyB9O1xuXG4gICAgaWYgKCF0aGlzLmNoZWNrT3V0Rm9ybS52YWxpZCkgeyByZXR1cm47IH1cblxuICAgIHRoaXMuc3BzRGVjaWRpckFwaVNlcnZpY2UuZ2V0RGVjaWRpckNvbmZpZ0J5QmluKHRoaXMuY2FyZFRleHQuc3Vic3RyaW5nKDAsIDgpLCB0aGlzLnZrVXJsQXBpKVxuICAgICAgLnN1YnNjcmliZShjb25maWcgPT4ge1xuICAgICAgICBpZihjb25maWcgPSdTUFMtRGVjaWRpci1TdXBlcnZpZWxsZScpe1xuICAgICAgICAgIGNvbnNvbGUubG9nKCdNb2RvIFN1cGVydmllbGxlJyk7XG4gICAgICAgICAgdGhpcy5kZWNpZGlyLnNldFB1Ymxpc2hhYmxlS2V5KHRoaXMuc3VwZXJ2aWVsbGVQdWJsaXNoYWJsZUtleSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnBheW1lbnRTdGF0ZSA9ICdwcm9jZXNzaW5nJztcbiAgICAgICAgY29uc3QgZm9ybSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNmb3JtdWxhcmlvJyk7XG4gICAgICAgIHRoaXMuZGVjaWRpci5jcmVhdGVUb2tlbihmb3JtLCAoc3RhdHVzOiBudW1iZXIsIHJlc3BvbnNlOiBTcHNSZXNwb25zZVBheW1lbnQpID0+IHtcbiAgICAgICAgICBpZiAoc3RhdHVzICE9PSAyMDAgJiYgc3RhdHVzICE9PSAyMDEpIHtcbiAgICAgICAgICAgIHRoaXMucGF5bWVudFN0YXRlID0gJ2Vycm9yJztcbiAgICAgICAgICAgIHRoaXMuc3RhdHVzUGF5LmVtaXQodGhpcy5wYXltZW50UmVzdWx0KTtcbiAgICAgICAgICAgIHRoaXMucHJvY2Vzc0Vycm9yVG9rZW4ocmVzcG9uc2UpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm1ha2VQYXltZW50KGZvcm0sIHJlc3BvbnNlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICB9KTtcbiAgfVxuXG4gIG1ha2VQYXltZW50KGZvcm06IGFueSwgcGF5bWVudFJlc3BvbnNlOiBTcHNSZXNwb25zZVBheW1lbnQpOiB2b2lkIHtcbiAgICB0aGlzLmxvZ2dlcignbWFrZVBheW1lbnQ6JywgSlNPTi5zdHJpbmdpZnkocGF5bWVudFJlc3BvbnNlKSk7XG4gICAgY29uc3QgaGFzaGVkQ2FyZCA9IHRoaXMuaGFzaFRleHQodGhpcy5jYXJkVGV4dCwxMDAwMDApO1xuICAgIHRoaXMucGF5bWVudCA9IHtcbiAgICAgIHRva2VuOiBwYXltZW50UmVzcG9uc2UuaWQsXG4gICAgICBhbW91bnQ6IHRoaXMudG90YWxBbW91bnQsXG4gICAgICB0b3RhbEZpbmFuY2VkQW1vdW50OiB0aGlzLnRvdGFsRmluYW5jZWRBbW91bnQsXG4gICAgICBiaW46IHBheW1lbnRSZXNwb25zZS5iaW4sXG4gICAgICBjdXJyZW5jeTogJ0FSUycsXG4gICAgICBkb2N1bWVudE51bWJlcjogdGhpcy5jdXJyZW5jeSA9PT0gJ1VTRCcgPyAnMCcgOiBwYXltZW50UmVzcG9uc2UuY2FyZGhvbGRlci5pZGVudGlmaWNhdGlvbi5udW1iZXIsXG4gICAgICBpZFZlbjogdGhpcy5pZFZlbixcbiAgICAgIHBheW1lbnRUeXBlOiAnc2luZ2xlJyxcbiAgICAgIGluc3RhbGxtZW50czogdGhpcy5jdXJyZW5jeSA9PT0gJ1VTRCcgPyAxIDogdGhpcy5zZWxlY3RDcmVkaXRDYXJkUGxhbi5pbnN0YWxsbWVudHMsXG4gICAgICBjcmVkaXRDYXJkUGxhbklkOiB0aGlzLmN1cnJlbmN5ID09PSAnVVNEJyA/IDAgOiB0aGlzLnNlbGVjdENyZWRpdENhcmRQbGFuLmlkLFxuICAgICAgcGF5bWVudE1ldGhvZElkOiB0aGlzLmlzc3VlcixcbiAgICAgIGNhcmRob2xkZXI6IHRoaXMucGF5ZXJOYW1lVGV4dCxcbiAgICAgIHN0b3JlSWQ6IHRoaXMuc3RvcmVJZCxcbiAgICAgIGRhdGE6IHRoaXMuZGF0YSxcbiAgICAgIHN1YlBheW1lbnRzOiBbXSxcbiAgICAgIGNyZWRpdENhcmRIYXNoOiBoYXNoZWRDYXJkLFxuICAgICAgbGFzdEZvdXJEaWdpdHM6IHRoaXMuY2FyZFRleHQuc2xpY2UoLTQpXG4gICAgfTtcbiAgICBcblxuICAgIHRoaXMubG9nZ2VyKCdwYXltZW50OicsIEpTT04uc3RyaW5naWZ5KHRoaXMucGF5bWVudCkpO1xuICAgIHRoaXMuc3BzRGVjaWRpckFwaVNlcnZpY2UubWFrZVBheW1lbnQodGhpcy5wYXltZW50LCB0aGlzLmFjY2Vzc1Rva2VuLCB0aGlzLnZrVXJsQXBpKVxuICAgICAgLnN1YnNjcmliZSgocmVzOiBSZXNwb25zZUFwaSkgPT4ge1xuICAgICAgICB0aGlzLnBheW1lbnRSZXNwb25zZUhhbmRsZXIocmVzKTtcbiAgICAgIH0sIGVycm9yID0+IHtcbiAgICAgICAgdGhpcy5zdGF0dXNQYXkuZW1pdCh0aGlzLnBheW1lbnRSZXN1bHQpO1xuICAgICAgICB0aGlzLnBheW1lbnRTdGF0ZSA9ICdhcGlFcnJvcic7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGhhc2hUZXh0KHRleHQ6IHN0cmluZywgaXRlcmF0aW9uczpudW1iZXIpOiBzdHJpbmd7XG4gICAgbGV0IGhhc2hlZHRleHQgPSB0ZXh0O1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaXRlcmF0aW9uczsgaSsrKSB7XG4gICAgICBoYXNoZWR0ZXh0ID0gc2hhMjU2KGhhc2hlZHRleHQpO1xuICAgIH1cbiAgICByZXR1cm4gaGFzaGVkdGV4dFxuICB9XG5cbiAgcGF5bWVudFJlc3BvbnNlSGFuZGxlcihyZXNwb25zZTogUmVzcG9uc2VBcGkpIHtcbiAgICB0aGlzLmxvZ2dlcigncGF5bWVudFJlc3BvbnNlSGFuZGxlcjonLCBKU09OLnN0cmluZ2lmeShyZXNwb25zZSkpO1xuXG4gICAgaWYgKHJlc3BvbnNlLnN1Y2Nlc3MpIHtcbiAgICAgIHRoaXMucGF5bWVudFN0YXRlID0gJ3N1Y2Nlc3MnO1xuICAgICAgdGhpcy5wYXltZW50U3VjY2Vzc0luZm8gPSByZXNwb25zZS5kYXRhIGFzIFBheW1lbnRSZXNwb25zZUluZm87XG4gICAgICB0aGlzLnBheW1lbnRSZXN1bHQgPSB7IHN1Y2Nlc3M6IHRydWUsIHBheW1lbnRJZDogdGhpcy5wYXltZW50U3VjY2Vzc0luZm8ucGF5bWVudF9pZCwgaW50ZWdyYXRvcjogJ0RFQ0lESVInIH07XG4gICAgICB0aGlzLnN0YXR1c1BheS5lbWl0KHRoaXMucGF5bWVudFJlc3VsdCk7XG4gICAgICB0aGlzLmRpc2FibGVkID0gdHJ1ZTtcbiAgICAgIHRoaXMuZGlzYWJsZVNlbGVjdCA9IHRydWU7XG5cbiAgICAgIGlmICh0aGlzLnN1Y2Nlc3NVcmwgJiYgdGhpcy5zdWNjZXNzVXJsLmxlbmd0aCA+IDApIHtcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2Ake3RoaXMuc3VjY2Vzc1VybH1gXSkudGhlbigpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucGF5bWVudFN0YXRlID0gJ2Vycm9yJztcbiAgICAgIHRoaXMuc3RhdHVzUGF5LmVtaXQodGhpcy5wYXltZW50UmVzdWx0KTtcbiAgICAgIHRoaXMucHJvY2Vzc0Vycm9yTWVzc2FnZShyZXNwb25zZS5kYXRhKTtcblxuICAgICAgaWYgKHRoaXMuZmFpbHVyZVVybCAmJiB0aGlzLmZhaWx1cmVVcmwubGVuZ3RoID4gMCkge1xuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbYCR7dGhpcy5mYWlsdXJlVXJsfWBdKS50aGVuKClcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByb2Nlc3NFcnJvclRva2VuKHJlc3BvbnNlOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gdHJ1ZTtcbiAgICB0aGlzLmRpc2FibGVTZWxlY3QgPSB0cnVlO1xuXG4gICAgY29uc3QgZXJyb3I6IEVycm9yVG9rZW4gPSByZXNwb25zZSBhcyBFcnJvclRva2VuO1xuXG4gICAgLy8gb2J0ZW5lbW9zIG1lbnNhamVzIGRlIGVycm9yXG4gICAgZXJyb3IuZXJyb3IuZm9yRWFjaCgoeCkgPT4ge1xuICAgICAgaWYgKHguZXJyb3IudHlwZSA9PT0gJ2ludmFsaWRfZXhwaXJ5X2RhdGUnKSB7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ1Jldmlzw6EgbGEgZmVjaGEgZGUgdmVuY2ltaWVudG8uJztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gSlNPTi5zdHJpbmdpZnkoZXJyb3IpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLy8gZGlmZXJlbnRlcyB0aXBvcyBkZSBlcnJvciBub3MgZGV2dWVsdmUgZGVjaWRpclxuICBwcm9jZXNzRXJyb3JNZXNzYWdlKHJlc3BvbnNlRXJyb3I6IFBheW1lbnRSZXNwb25zZUluZm8pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gdHJ1ZTtcbiAgICB0aGlzLmRpc2FibGVTZWxlY3QgPSB0cnVlO1xuXG4gICAgaWYgKHJlc3BvbnNlRXJyb3IuZXJyb3IpIHtcbiAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gcmVzcG9uc2VFcnJvci5lcnJvci5yZWFzb24uZGVzY3JpcHRpb247XG5cbiAgICAgIGlmIChyZXNwb25zZUVycm9yLmVycm9yLnJlYXNvbi5hZGRpdGlvbmFsX2Rlc2NyaXB0aW9uKSB7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5lcnJvck1lc3NhZ2UgKyAnIC0gJyArIHJlc3BvbnNlRXJyb3IuZXJyb3IucmVhc29uLmFkZGl0aW9uYWxfZGVzY3JpcHRpb247XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLmVycm9yTWVzc2FnZSA9PSAnJyB8fCB0aGlzLmVycm9yTWVzc2FnZSA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSBKU09OLnN0cmluZ2lmeShyZXNwb25zZUVycm9yKTtcbiAgICAgIH1cbiAgICB9XG4gICAgZWxzZSBpZiAocmVzcG9uc2VFcnJvci5lcnJvcl90eXBlKSB7XG4gICAgICBzd2l0Y2ggKHJlc3BvbnNlRXJyb3IuZXJyb3JfdHlwZSkge1xuICAgICAgICBjYXNlICdpbnZhbGlkX3JlcXVlc3RfZXJyb3InOlxuICAgICAgICAgIGlmIChyZXNwb25zZUVycm9yLnZhbGlkYXRpb25fZXJyb3JzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGlmIChyZXNwb25zZUVycm9yLnZhbGlkYXRpb25fZXJyb3JzWzBdLmNvZGUgPT09ICdpbnZhbGlkX3BhcmFtJykge1xuICAgICAgICAgICAgICBzd2l0Y2ggKHJlc3BvbnNlRXJyb3IudmFsaWRhdGlvbl9lcnJvcnNbMF0ucGFyYW0pIHtcbiAgICAgICAgICAgICAgICBjYXNlICdjYXJkX251bWJlcic6XG4gICAgICAgICAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9ICdUYXJqZXRhIGludsOhbGlkYSc7XG4gICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdiaW4nOlxuICAgICAgICAgICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnVGFyamV0YSBpbnbDoWxpZGEnO1xuICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gcmVzcG9uc2VFcnJvci5lcnJvci5yZWFzb24uZGVzY3JpcHRpb247XG4gICAgICAgICAgICAgICAgICBpZiAodGhpcy5lcnJvck1lc3NhZ2UgPT0gJycgfHwgdGhpcy5lcnJvck1lc3NhZ2UgPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gSlNPTi5zdHJpbmdpZnkocmVzcG9uc2VFcnJvcik7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnbm90X2ZvdW5kX2Vycm9yJzpcbiAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9ICdEYXRvcyBubyBlbmNvbnRyYWRvcyAoNDA0KS4nO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdhdXRoZW50aWNhdGlvbl9lcnJvcic6XG4gICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnRXJyb3IgKDQwMSkuJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnbWFsZm9ybWVkX3JlcXVlc3RfZXJyb3InOlxuICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ0Vycm9yIGFsIGVudmlhciBsb3MgZGF0b3MgICg0MDApLic7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2FwaV9lcnJvcic6XG4gICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnRXJyb3IgaW50ZXJubyAoNDA5KS4nO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gSlNPTi5zdHJpbmdpZnkocmVzcG9uc2VFcnJvcik7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY29tcGFyZURhdGUoeWVhcjogbnVtYmVyLCBtb250aDogbnVtYmVyLCBkYXk6IG51bWJlcik6IG51bWJlciB7XG4gICAgY29uc3QgZDE6IERhdGUgPSBuZXcgRGF0ZSh5ZWFyLCBtb250aCwgZGF5KTtcbiAgICBjb25zdCBkMjogRGF0ZSA9IG5ldyBEYXRlKCk7XG5cbiAgICBjb25zdCBzYW1lID0gZDEuZ2V0VGltZSgpID09PSBkMi5nZXRUaW1lKCk7XG4gICAgaWYgKHNhbWUpIHsgcmV0dXJuIDA7IH1cbiAgICBpZiAoZDEgPiBkMikgeyByZXR1cm4gMTsgfVxuICAgIGlmIChkMSA8IGQyKSB7IHJldHVybiAtMTsgfVxuICB9XG5cbiAgLy8gSW5wdXQgY29udHJvbHNcbiAgb25ZZWFyQ2hhbmdlKCkge1xuICAgIGlmIChOdW1iZXIuaXNOYU4oK3RoaXMueWVhclRleHQpKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy55ZWFyVGV4dCA9ICcnO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgb25ZZWFyQmx1cihlbGVtZW50OiBhbnkpIHtcbiAgICBpZiAodGhpcy5jb21wYXJlRGF0ZShcbiAgICAgIE51bWJlcihgMjAke3RoaXMueWVhclRleHR9YCksXG4gICAgICBOdW1iZXIodGhpcy5tb250aFRleHQpLFxuICAgICAgbmV3IERhdGUoKS5nZXREYXRlKCkpIDwgMCkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMueWVhclRleHQgPSAnJztcbiAgICAgICAgdGhpcy5pbnZhbGlkRGF0ZSA9IHRydWU7XG4gICAgICAgIGVsZW1lbnQudGFyZ2V0LmZvY3VzKCk7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pbnZhbGlkRGF0ZSA9IGZhbHNlO1xuICAgIH1cblxuICB9XG5cbiAgb25Nb250aExvc3RGb2N1cygpIHtcbiAgICBpZiAoK3RoaXMubW9udGhUZXh0ID4gMCAmJiAhaXNOYU4oK3RoaXMubW9udGhUZXh0KSkge1xuICAgICAgaWYgKHRoaXMubW9udGhUZXh0ID09PSAnMScpIHtcbiAgICAgICAgdGhpcy5tb250aFRleHQgPSAnMDEnO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9uTW9udGhDaGFuZ2UoKSB7XG4gICAgaWYgKCt0aGlzLm1vbnRoVGV4dCA+PSAwICYmICt0aGlzLm1vbnRoVGV4dCA8IDEzICYmICFpc05hTigrdGhpcy5tb250aFRleHQpKSB7XG4gICAgICBzd2l0Y2ggKHRoaXMubW9udGhUZXh0KSB7XG4gICAgICAgIGNhc2UgJzInOiB7XG4gICAgICAgICAgdGhpcy5tb250aFRleHQgPSAnMDInO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJzMnOiB7XG4gICAgICAgICAgdGhpcy5tb250aFRleHQgPSAnMDMnO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJzQnOiB7XG4gICAgICAgICAgdGhpcy5tb250aFRleHQgPSAnMDQnO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJzUnOiB7XG4gICAgICAgICAgdGhpcy5tb250aFRleHQgPSAnMDUnO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJzYnOiB7XG4gICAgICAgICAgdGhpcy5tb250aFRleHQgPSAnMDYnO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJzcnOiB7XG4gICAgICAgICAgdGhpcy5tb250aFRleHQgPSAnMDcnO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJzgnOiB7XG4gICAgICAgICAgdGhpcy5tb250aFRleHQgPSAnMDgnO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJzknOiB7XG4gICAgICAgICAgdGhpcy5tb250aFRleHQgPSAnMDknO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLm1vbnRoVGV4dCA9ICcnO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgb25Db2RlQ2hhbmdlKCkge1xuICAgIGlmIChOdW1iZXIuaXNOYU4oK3RoaXMuY3ZjVGV4dCkpIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmN2Y1RleHQgPSAnJztcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmN2Y1RleHQuc2VhcmNoKCcgJykgPiAtMSkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuY3ZjVGV4dCA9ICcnO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgb25EbmlDaGFuZ2UoKSB7XG4gICAgaWYgKE51bWJlci5pc05hTigrdGhpcy5kbmlUZXh0KSkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuZG5pVGV4dCA9ICcnO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZG5pVGV4dC5zZWFyY2goJyAnKSA+IC0xKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5kbmlUZXh0ID0gJyc7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBvblBheWVyTmFtZUNoYW5nZSgpIHtcbiAgICBpZiAoIWlzTmFOKCt0aGlzLnBheWVyTmFtZVRleHQpKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5wYXllck5hbWVUZXh0ID0gJyc7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBvbkNhcmRDaGFuZ2UoKSB7XG4gICAgaWYgKE51bWJlci5pc05hTigrdGhpcy5jYXJkVGV4dCkpIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmNhcmRUZXh0ID0gJyc7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5jYXJkVGV4dC5zZWFyY2goJyAnKSA+IC0xKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5jYXJkVGV4dCA9ICcnO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYodGhpcy5jYXJkVGV4dC5sZW5ndGggPDgpIHtcbiAgICAgIHRoaXMuZGlzYWJsZVNlbGVjdCA9IHRydWU7XG4gICAgICB0aGlzLmlzc3VlciA9IG51bGw7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGlzYWJsZVNlbGVjdCA9IGZhbHNlO1xuICAgIH1cblxuICAgIC8vIHNldGVhIHRhcmpldGFcbiAgICBpZiAodGhpcy5jYXJkVGV4dC5sZW5ndGggPT09IDggJiYgdGhpcy5jYXJkVGV4dCAhPT0gJzAwMDAwMDAwJyl7XG4gICAgICB0aGlzLnNldENyZWRpdFR5cGUodGhpcy5jYXJkVGV4dCk7XG4gICAgfVxuICAgIFxuICB9XG5cbiAgc2V0Q3JlZGl0VHlwZShiaW46IHN0cmluZyk6IHZvaWQge1xuICAgIGlmIChiaW4ubGVuZ3RoIDwgOCkge1xuICAgICAgdGhpcy5pc3N1ZXIgPSBudWxsO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChiaW4ubGVuZ3RoID09PSA4KSB7XG4gICAgICB0aGlzLmlzc3VlciA9IG51bGw7XG5cbiAgICAgIC8vIHZpc2EgZGViaXRvXG4gICAgICBpZiAoYmluLnN1YnN0cmluZygwLCA0KSA9PT0gJzQ3NzAnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc0NDI1NDgnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc0MDY4MDknIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc0MDg3MzgnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc0MTE1MjEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc0MTE2NjMnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc0MjYzNTknIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc0Mjk3ODAnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc0MzgyNjcnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc0NjExODcnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1MDAzMzQnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1MDk0MTMnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1MTIyODUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1MTI4ODEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1MTg2MzUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1Mzg0NDknIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1NTA1NTMnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1NjYwNTcnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1Njc5MzMnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1NzIxNDAnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1ODQyNTcnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1OTg3MTgnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc2MDU4MDEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc2MDYxMjAnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc2MzEwNTcnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc2NzYyMTUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc3MTMyNzQnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc3MTMyODQnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc3MTc1MTUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc3NDg3NjEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc3NTMzNzEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc3NTM2MDAnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5MTIzOTQnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5MTYxNDgnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5MTY3NzMnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5MjM0MDUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5MzA5NjUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5MzQwOTEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5MzU3NjEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5NDMzMTMnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5NDU3MjEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5NDg4MDknIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5NjA2NDQnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5NjkwODUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5NzAxNjcnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5NzgwNjEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0MDI2NzkxOScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQwMzI3MTc2JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDA0MTYwMDQnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0MDQyMTkzMycgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQwNDUxNTU2JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDA1NDEwMTAnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0MDYyMzgzNScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQwNzMzNDY5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDA3MzM1ODYnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0MDg3MjQ5OCcgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MDA3Nzg5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUwMjQ4MjInIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTAzNDc1MScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MDQ2OTg3JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUwNjA1NDknIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTA2MjQ4MicgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MDcwMDcxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUwODQ3MDgnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTA5MTQzMycgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MTAwOTAyJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUxMDM4NjknIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTEzMTA0NycgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MTY4ODg0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUxNzQzMDYnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTE4NDYxMScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MTkxOTIxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUyMDE4ODEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTIwNjQwMScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MjQ1Mjk0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUzMTQ5NDQnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTMxNzg0NycgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MzU3NDA5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUzNzQ1ODcnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTM5NDcwNScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1NDU2NTg0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU1NDE5MjQnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTU0NTc5NScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1NTY3NzQ2JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU1ODM3NTknIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTY0ODgzOCcgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1NjcyNTA2JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU2Nzg0MjEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTcxMDc1NicgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1NzE2MDA2JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU3MjUwMjknIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTczMjExMycgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1NzMyNjk4JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU3OTM5MTcnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTg0MTE4NScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1ODYyMDIxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU5MTUzMzYnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTk3MTQ5NicpIHtcbiAgICAgICAgdGhpcy5pc3N1ZXIgPSAzMTtcbiAgICAgIH1cbiAgICAgIC8vIG1hc3RlcmNhcmRcbiAgICAgIGVsc2UgaWYgKGJpbi5zdWJzdHJpbmcoMCwgMikgPT09ICc1MScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCAyKSA9PT0gJzUyJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDIpID09PSAnNTMnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgMikgPT09ICc1NCcgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCAyKSA9PT0gJzU1Jykge1xuICAgICAgICB0aGlzLmlzc3VlciA9IDEwNDtcbiAgICAgIH1cbiAgICAgIC8vIHRhcmpldGEgbmFyYW5qYVxuICAgICAgZWxzZSBpZiAoYmluLnN1YnN0cmluZygwLCA2KSA9PT0gJzU4OTU2MicpIHtcbiAgICAgICAgdGhpcy5pc3N1ZXIgPSAyNDtcbiAgICAgIH1cbiAgICAgIC8vIHZpc2EgY3JlZGl0b1xuICAgICAgZWxzZSBpZiAoYmluLnN1YnN0cmluZygwLCAxKSA9PT0gJzQnKSB7XG4gICAgICAgIHRoaXMuaXNzdWVyID0gMTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5zZWxlY3RlZENyZWRpdENhcmQoKTtcbiAgICB9XG4gIH1cblxuICBvblBhc3RlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHJlc2V0Rm9ybSgpIHtcbiAgICB0aGlzLmRpc2FibGVkID0gZmFsc2U7XG4gICAgdGhpcy5kaXNhYmxlU2VsZWN0ID0gZmFsc2U7XG4gICAgdGhpcy50b3RhbEFtb3VudFxuICAgIHRoaXMudG90YWxGaW5hbmNlZEFtb3VudCA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLmN1cnJlbnRURUEgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5jdXJyZW50Q0ZUID0gdW5kZWZpbmVkO1xuICAgIC8vIGNyZWRpdENhcmRzOiBDcmVkaXRDYXJkW107XG4gICAgdGhpcy5jcmVkaXRDYXJkcyA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLnNlbGVjdENyZWRpdENhcmRQbGFuID0gbnVsbDtcbiAgICAvLyBjcmVkaXRDYXJkUGxhbnM6IENyZWRpdENhcmRQbGFuc1tdO1xuICAgIHRoaXMuY3JlZGl0Q2FyZFBsYW5zID0gdW5kZWZpbmVkO1xuICAgIHRoaXMucGF5bWVudFJlc3VsdCA9IHsgc3VjY2VzczogZmFsc2UsIHBheW1lbnRJZDogJycsIGludGVncmF0b3I6ICdERUNJRElSJyB9O1xuICBcbiAgICAvLyBGb3JtIGJpbmRcbiAgICB0aGlzLm1vbnRoVGV4dCA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLnllYXJUZXh0ID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuY3ZjVGV4dCA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLmRuaVRleHQgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5wYXllck5hbWVUZXh0ID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuY2FyZFRleHQgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5zdWJtaXRQcmVzc2VkID0gZmFsc2U7XG4gICAgdGhpcy5pbnZhbGlkRGF0ZSA9IGZhbHNlO1xuICBcbiAgICB0aGlzLmRlY2lkaXIgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5hZGRTY3JpcHQgPSB0cnVlO1xuICBcbiAgICB0aGlzLnBheW1lbnRTdGF0ZSA9ICd1bnN1Ym1pdHRlZCc7XG4gICAgdGhpcy5wYXllck5hbWUgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5pc3N1ZXIgPSBudWxsO1xuICAgIHRoaXMucGF5bWVudCA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLnBheW1lbnRTdWNjZXNzSW5mbyA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHVuZGVmaW5lZDtcblxuICAgIHRoaXMuaW5pdERlY2lkaXIoKTtcbiAgfVxuXG59XG4iXX0=
|
|
1023
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BzLWRlY2lkaXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vdmstcGF5bWVudHMvIiwic291cmNlcyI6WyJsaWIvc3BzLWRlY2lkaXIvY29tcG9uZW50cy9zcHMtZGVjaWRpci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBaUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BILE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBWTVCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBSTNFO0lBNERFLDZCQUFvQixNQUFjLEVBQVMsb0JBQTBDO1FBQWpFLFdBQU0sR0FBTixNQUFNLENBQVE7UUFBUyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBbkM1RSxhQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ2YsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFpQixDQUFDO1FBRXhELGFBQVEsR0FBRyxLQUFLLENBQUM7UUFDakIsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFPdEIseUJBQW9CLEdBQW9CLElBQUksQ0FBQztRQUU3QyxrQkFBYSxHQUFrQixFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLENBQUM7UUFTeEYsa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFDdEIsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFHcEIsY0FBUyxHQUFHLElBQUksQ0FBQztRQUVqQixpQkFBWSxHQUFHLGFBQWEsQ0FBQztRQUU3QixXQUFNLEdBQVksSUFBSSxDQUFDO0lBS2tFLENBQUM7Ozs7SUFFMUYsc0NB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LENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFFBQVE7Z0JBQ2hDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLFVBQVU7Z0JBQ2xD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QUd4Rix3Q0FBa0I7O0lBQ2xCLHVDQUFpQjs7SUFDakIsc0NBQWdCOztJQUNoQixzQ0FBZ0I7O0lBQ2hCLDRDQUFzQjs7SUFDdEIsdUNBQWlCOztJQUNqQiw0Q0FBc0I7O0lBQ3RCLDBDQUFvQjs7Ozs7SUFFcEIsc0NBQXFCOztJQUNyQix3Q0FBaUI7O0lBRWpCLDJDQUE2Qjs7SUFDN0Isd0NBQWtCOztJQUNsQixxQ0FBdUI7O0lBQ3ZCLHNDQUFpQjs7SUFDakIsaURBQXdDOztJQUN4QywyQ0FBcUI7Ozs7O0lBRVQscUNBQXNCOztJQUFFLG1EQUFpRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCwgU2ltcGxlQ2hhbmdlcywgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOZ0Zvcm0gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHNoYTI1NiBmcm9tICdzaGEyNTYnO1xuXG5pbXBvcnQge1xuICBDcmVkaXRDYXJkLFxuICBDcmVkaXRDYXJkUGxhbnMsXG4gIEVycm9yVG9rZW4sXG4gIFBheW1lbnQsXG4gIFBheW1lbnRSZXNwb25zZUluZm8sXG4gIFBheW1lbnRSZXN1bHQsXG4gIFJlc3BvbnNlQXBpLFxuICBTcHNSZXNwb25zZVBheW1lbnQsXG59IGZyb20gJy4uL21vZGVscy9wYXltZW50Lm1vZGVsJztcbmltcG9ydCB7IFNwc0RlY2lkaXJBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvc3BzLWRlY2lkaXIuYXBpLnNlcnZpY2UnO1xuXG5kZWNsYXJlIHZhciBEZWNpZGlyOiBhbnk7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3Nwcy1mb3JtLXBheScsXG4gIHRlbXBsYXRlVXJsOiAnLi9zcHMtZGVjaWRpci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3Nwcy1kZWNpZGlyLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgU3BzRGVjaWRpckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcblxuICBAVmlld0NoaWxkKCdmJywgeyBzdGF0aWM6IGZhbHNlIH0pIGNoZWNrT3V0Rm9ybTogTmdGb3JtO1xuICBASW5wdXQoKSBhY2Nlc3NUb2tlbjogc3RyaW5nO1xuICBASW5wdXQoKSBzcHNVcmxBcGk6IHN0cmluZztcbiAgQElucHV0KCkgdmtVcmxBcGk6IHN0cmluZztcbiAgQElucHV0KCkgcGF5bWVudEFtb3VudDogc3RyaW5nO1xuICBASW5wdXQoKSBsb2dvU3BzOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGN1cnJlbmN5OiBzdHJpbmc7XG4gIEBJbnB1dCgpIGRlZmF1bHRQdWJsaXNoYWJsZUtleTogc3RyaW5nO1xuICBASW5wdXQoKSBzdXBlcnZpZWxsZVB1Ymxpc2hhYmxlS2V5OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHN1Y2Nlc3NVcmw6IHN0cmluZztcbiAgQElucHV0KCkgZmFpbHVyZVVybDogc3RyaW5nO1xuICBASW5wdXQoKSB1c2VDeWJlcnNvdXJjZTogYm9vbGVhbjtcbiAgQElucHV0KCkgZGVidWdMb2c6IGJvb2xlYW47XG4gIEBJbnB1dCgpIHN0b3JlSWQ6IHN0cmluZztcbiAgQElucHV0KCkgZG9tYWluSWQ6IG51bWJlcjtcbiAgQElucHV0KCkgaWRWZW46IG51bWJlcjtcbiAgQElucHV0KCkgZGF0YTogc3RyaW5nO1xuICBASW5wdXQoKSBsYWJlbEJ1dHRvbjogc3RyaW5nO1xuICBASW5wdXQoKSBsYW5ndWFnZSA9ICdlcyc7XG4gIEBPdXRwdXQoKSBzdGF0dXNQYXkgPSBuZXcgRXZlbnRFbWl0dGVyPFBheW1lbnRSZXN1bHQ+KCk7XG5cbiAgZGlzYWJsZWQgPSBmYWxzZTtcbiAgZGlzYWJsZVNlbGVjdCA9IGZhbHNlO1xuICB0b3RhbEFtb3VudDogc3RyaW5nO1xuICB0b3RhbEZpbmFuY2VkQW1vdW50OiBzdHJpbmc7XG4gIGN1cnJlbnRURUE6IHN0cmluZztcbiAgY3VycmVudENGVDogc3RyaW5nO1xuXG4gIGNyZWRpdENhcmRzOiBDcmVkaXRDYXJkW107XG4gIHNlbGVjdENyZWRpdENhcmRQbGFuOiBDcmVkaXRDYXJkUGxhbnMgPSBudWxsO1xuICBjcmVkaXRDYXJkUGxhbnM6IENyZWRpdENhcmRQbGFuc1tdO1xuICBwYXltZW50UmVzdWx0OiBQYXltZW50UmVzdWx0ID0geyBzdWNjZXNzOiBmYWxzZSwgcGF5bWVudElkOiAnJywgaW50ZWdyYXRvcjogJ0RFQ0lESVInIH07XG5cbiAgLy8gRm9ybSBiaW5kXG4gIG1vbnRoVGV4dDogc3RyaW5nO1xuICB5ZWFyVGV4dDogc3RyaW5nO1xuICBjdmNUZXh0OiBzdHJpbmc7XG4gIGRuaVRleHQ6IHN0cmluZztcbiAgcGF5ZXJOYW1lVGV4dDogc3RyaW5nO1xuICBjYXJkVGV4dDogc3RyaW5nO1xuICBzdWJtaXRQcmVzc2VkID0gZmFsc2U7XG4gIGludmFsaWREYXRlID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBkZWNpZGlyOiBhbnk7XG4gIGFkZFNjcmlwdCA9IHRydWU7XG5cbiAgcGF5bWVudFN0YXRlID0gJ3Vuc3VibWl0dGVkJztcbiAgcGF5ZXJOYW1lOiBzdHJpbmc7XG4gIGlzc3Vlcj86IG51bWJlciA9IG51bGw7XG4gIHBheW1lbnQ6IFBheW1lbnQ7XG4gIHBheW1lbnRTdWNjZXNzSW5mbzogUGF5bWVudFJlc3BvbnNlSW5mbztcbiAgZXJyb3JNZXNzYWdlOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlciwgcHVibGljIHNwc0RlY2lkaXJBcGlTZXJ2aWNlOiBTcHNEZWNpZGlyQXBpU2VydmljZSkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5pbml0RGVjaWRpcigpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmICghY2hhbmdlcy5wYXltZW50QW1vdW50LmlzRmlyc3RDaGFuZ2UoKSkge1xuICAgICAgdGhpcy5jaGVja091dEZvcm0ucmVzZXQoKTtcbiAgICAgIHRoaXMuZGlzYWJsZWQgPSBmYWxzZTtcbiAgICAgIHRoaXMuZGlzYWJsZVNlbGVjdCA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5pdERlY2lkaXIoKSB7XG4gICAgdGhpcy5hZGREZWNpZGlyU2NyaXB0KClcbiAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgdGhpcy5nZXRDcmVkaXRDYXJkcygpO1xuICAgICAgICB0aGlzLmluaXRpYWxpemVTcHNEZWNpZGlyKCk7XG4gICAgICB9KTtcbiAgfVxuXG4gIGFkZERlY2lkaXJTY3JpcHQoKSB7XG4gICAgdGhpcy5hZGRTY3JpcHQgPSB0cnVlO1xuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuICAgICAgY29uc3Qgc2NyaXB0dGFnRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpO1xuICAgICAgc2NyaXB0dGFnRWxlbWVudC5zcmMgPSAnaHR0cHM6Ly9saXZlLmRlY2lkaXIuY29tL3N0YXRpYy92Mi40L2RlY2lkaXIuanMnO1xuICAgICAgc2NyaXB0dGFnRWxlbWVudC5vbmxvYWQgPSByZXNvbHZlO1xuICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChzY3JpcHR0YWdFbGVtZW50KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Q3JlZGl0Q2FyZHMoKSB7XG4gICAgdGhpcy5zcHNEZWNpZGlyQXBpU2VydmljZS5nZXRDcmVkaXRDYXJkcyh0aGlzLmFjY2Vzc1Rva2VuLCB0aGlzLnZrVXJsQXBpLCB0aGlzLmRvbWFpbklkKVxuICAgICAgLnN1YnNjcmliZSgocmVzOiBSZXNwb25zZUFwaSkgPT4ge1xuICAgICAgICB0aGlzLmNyZWRpdENhcmRzID0gcmVzLmRhdGEgYXMgQ3JlZGl0Q2FyZFtdO1xuICAgICAgICB0aGlzLmxvZ2dlcignZ2V0Q3JlZGl0Q2FyZHMnLCB0aGlzLmNyZWRpdENhcmRzKTtcbiAgICAgIH0sIF8gPT4gdGhpcy5wYXltZW50U3RhdGUgPSAnYXBpRXJyb3InKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UGxhbnNCeUNyZWRpdENhcmRJZChhbW91bnQ6IHN0cmluZywgY3JlZGl0Q2FyZElkOiBudW1iZXIsIGRvbWFpbklkOiBudW1iZXIsIGJpbjogc3RyaW5nKSB7XG4gICAgdGhpcy5zcHNEZWNpZGlyQXBpU2VydmljZS5nZXRQbGFuc0J5Q3JlZGl0Q2FyZElkKHRoaXMuYWNjZXNzVG9rZW4sIHRoaXMudmtVcmxBcGksIGFtb3VudCwgY3JlZGl0Q2FyZElkLCBkb21haW5JZCwgYmluKVxuICAgICAgLnN1YnNjcmliZSgocmVzOiBSZXNwb25zZUFwaSkgPT4ge1xuICAgICAgICB0aGlzLmNyZWRpdENhcmRQbGFucyA9IHJlcy5kYXRhIGFzIENyZWRpdENhcmRQbGFuc1tdO1xuICAgICAgICB0aGlzLmxvZ2dlcignZ2V0UGxhbnNCeUNyZWRpdENhcmRJZCcsIHRoaXMuY3JlZGl0Q2FyZFBsYW5zKTtcbiAgICAgIH0sIF8gPT4gdGhpcy5wYXltZW50U3RhdGUgPSAnYXBpRXJyb3InKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdGlhbGl6ZVNwc0RlY2lkaXIoKSB7XG4gICAgdGhpcy5kZWNpZGlyID0gbmV3IERlY2lkaXIodGhpcy5zcHNEZWNpZGlyQXBpU2VydmljZS5ub3JtYWxpemVVcmwodGhpcy5zcHNVcmxBcGkpLCAhdGhpcy51c2VDeWJlcnNvdXJjZSk7XG4gICAgdGhpcy5kZWNpZGlyLnNldFRpbWVvdXQoMTUwMDApO1xuICAgIHRoaXMuZGVjaWRpci5zZXRQdWJsaXNoYWJsZUtleSh0aGlzLmRlZmF1bHRQdWJsaXNoYWJsZUtleSk7XG4gIH1cblxuICBwcml2YXRlIGxvZ2dlcihtZXNzYWdlOiBzdHJpbmcsIGRhdGE6IGFueSk6IHZvaWQge1xuICAgIGlmICghdGhpcy5kZWJ1Z0xvZykgeyByZXR1cm47IH1cbiAgICBjb25zb2xlLmxvZyhtZXNzYWdlLCBkYXRhKTtcbiAgfVxuXG4gIHB1YmxpYyBzZWxlY3RlZENyZWRpdENhcmQoKSB7XG4gICAgaWYgKCF0aGlzLmlzc3VlcikgeyByZXR1cm47IH1cblxuICAgIHRoaXMuc2VsZWN0Q3JlZGl0Q2FyZFBsYW4gPSBudWxsO1xuICAgIGlmICh0aGlzLmN1cnJlbmN5ID09PSAnQVJTJyAmJiB0aGlzLmNhcmRUZXh0LnN1YnN0cmluZygwLDgpICE9PSAnMDAwMDAwMDAnKSB7XG4gICAgICB0aGlzLmdldFBsYW5zQnlDcmVkaXRDYXJkSWQodGhpcy5wYXltZW50QW1vdW50LCB0aGlzLmlzc3VlciwgdGhpcy5kb21haW5JZCwgdGhpcy5jYXJkVGV4dC5zdWJzdHJpbmcoMCw4KSk7XG4gICAgICByZXR1cm47XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2FyZFRleHQgPScnO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmN1cnJlbmN5ID09PSAnVVNEJykge1xuICAgICAgdGhpcy50b3RhbEFtb3VudCA9IHRoaXMudG90YWxGaW5hbmNlZEFtb3VudCA9IHRoaXMucGF5bWVudEFtb3VudDtcbiAgICB9XG4gIH1cblxuICBzZWxlY3RlZENyZWRpdENhcmRQbGFuKCkge1xuICAgIGlmICh0aGlzLnNlbGVjdENyZWRpdENhcmRQbGFuID09PSBudWxsKSB7IHJldHVybjsgfVxuXG4gICAgdGhpcy50b3RhbEZpbmFuY2VkQW1vdW50ID0gdGhpcy5zZWxlY3RDcmVkaXRDYXJkUGxhbi50b3RhbEFtb3VudDtcbiAgICB0aGlzLnRvdGFsQW1vdW50ID0gdGhpcy5wYXltZW50QW1vdW50O1xuICAgIHRoaXMuY3VycmVudFRFQSA9IHRoaXMuc2VsZWN0Q3JlZGl0Q2FyZFBsYW4udG5hO1xuICAgIHRoaXMuY3VycmVudENGVCA9IHRoaXMuc2VsZWN0Q3JlZGl0Q2FyZFBsYW4uY2Z0O1xuICB9XG5cbiAgb25TdWJtaXQoZXZlbnQpIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMuc3VibWl0UHJlc3NlZCA9IHRydWU7XG4gICAgdGhpcy5wYXltZW50UmVzdWx0ID0geyBzdWNjZXNzOiBmYWxzZSwgcGF5bWVudElkOiAnJywgaW50ZWdyYXRvcjogJ0RFQ0lESVInIH07XG5cbiAgICBpZiAoIXRoaXMuY2hlY2tPdXRGb3JtLnZhbGlkKSB7IHJldHVybjsgfVxuXG4gICAgdGhpcy5zcHNEZWNpZGlyQXBpU2VydmljZS5nZXREZWNpZGlyQ29uZmlnQnlCaW4odGhpcy5jYXJkVGV4dC5zdWJzdHJpbmcoMCwgOCksIHRoaXMudmtVcmxBcGkpXG4gICAgICAuc3Vic2NyaWJlKGNvbmZpZyA9PiB7XG4gICAgICAgIGNvbnNvbGUubG9nKGNvbmZpZyk7XG4gICAgICAgIGlmKGNvbmZpZyA9PSdTUFMtRGVjaWRpci1TdXBlcnZpZWxsZScpe1xuICAgICAgICAgIGNvbnNvbGUubG9nKCdNb2RvIFN1cGVydmllbGxlJyk7XG4gICAgICAgICAgdGhpcy5kZWNpZGlyLnNldFB1Ymxpc2hhYmxlS2V5KHRoaXMuc3VwZXJ2aWVsbGVQdWJsaXNoYWJsZUtleSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnBheW1lbnRTdGF0ZSA9ICdwcm9jZXNzaW5nJztcbiAgICAgICAgY29uc3QgZm9ybSA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNmb3JtdWxhcmlvJyk7XG4gICAgICAgIHRoaXMuZGVjaWRpci5jcmVhdGVUb2tlbihmb3JtLCAoc3RhdHVzOiBudW1iZXIsIHJlc3BvbnNlOiBTcHNSZXNwb25zZVBheW1lbnQpID0+IHtcbiAgICAgICAgICBpZiAoc3RhdHVzICE9PSAyMDAgJiYgc3RhdHVzICE9PSAyMDEpIHtcbiAgICAgICAgICAgIHRoaXMucGF5bWVudFN0YXRlID0gJ2Vycm9yJztcbiAgICAgICAgICAgIHRoaXMuc3RhdHVzUGF5LmVtaXQodGhpcy5wYXltZW50UmVzdWx0KTtcbiAgICAgICAgICAgIHRoaXMucHJvY2Vzc0Vycm9yVG9rZW4ocmVzcG9uc2UpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLm1ha2VQYXltZW50KGZvcm0sIHJlc3BvbnNlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICB9KTtcbiAgfVxuXG4gIG1ha2VQYXltZW50KGZvcm06IGFueSwgcGF5bWVudFJlc3BvbnNlOiBTcHNSZXNwb25zZVBheW1lbnQpOiB2b2lkIHtcbiAgICB0aGlzLmxvZ2dlcignbWFrZVBheW1lbnQ6JywgSlNPTi5zdHJpbmdpZnkocGF5bWVudFJlc3BvbnNlKSk7XG4gICAgY29uc3QgaGFzaGVkQ2FyZCA9IHRoaXMuaGFzaFRleHQodGhpcy5jYXJkVGV4dCwxMDAwMDApO1xuICAgIHRoaXMucGF5bWVudCA9IHtcbiAgICAgIHRva2VuOiBwYXltZW50UmVzcG9uc2UuaWQsXG4gICAgICBhbW91bnQ6IHRoaXMudG90YWxBbW91bnQsXG4gICAgICB0b3RhbEZpbmFuY2VkQW1vdW50OiB0aGlzLnRvdGFsRmluYW5jZWRBbW91bnQsXG4gICAgICBiaW46IHBheW1lbnRSZXNwb25zZS5iaW4sXG4gICAgICBjdXJyZW5jeTogJ0FSUycsXG4gICAgICBkb2N1bWVudE51bWJlcjogdGhpcy5jdXJyZW5jeSA9PT0gJ1VTRCcgPyAnMCcgOiBwYXltZW50UmVzcG9uc2UuY2FyZGhvbGRlci5pZGVudGlmaWNhdGlvbi5udW1iZXIsXG4gICAgICBpZFZlbjogdGhpcy5pZFZlbixcbiAgICAgIHBheW1lbnRUeXBlOiAnc2luZ2xlJyxcbiAgICAgIGluc3RhbGxtZW50czogdGhpcy5jdXJyZW5jeSA9PT0gJ1VTRCcgPyAxIDogdGhpcy5zZWxlY3RDcmVkaXRDYXJkUGxhbi5pbnN0YWxsbWVudHMsXG4gICAgICBjcmVkaXRDYXJkUGxhbklkOiB0aGlzLmN1cnJlbmN5ID09PSAnVVNEJyA/IDAgOiB0aGlzLnNlbGVjdENyZWRpdENhcmRQbGFuLmlkLFxuICAgICAgcGF5bWVudE1ldGhvZElkOiB0aGlzLmlzc3VlcixcbiAgICAgIGNhcmRob2xkZXI6IHRoaXMucGF5ZXJOYW1lVGV4dCxcbiAgICAgIHN0b3JlSWQ6IHRoaXMuc3RvcmVJZCxcbiAgICAgIGRhdGE6IHRoaXMuZGF0YSxcbiAgICAgIHN1YlBheW1lbnRzOiBbXSxcbiAgICAgIGNyZWRpdENhcmRIYXNoOiBoYXNoZWRDYXJkLFxuICAgICAgbGFzdEZvdXJEaWdpdHM6IHRoaXMuY2FyZFRleHQuc2xpY2UoLTQpXG4gICAgfTtcbiAgICBcblxuICAgIHRoaXMubG9nZ2VyKCdwYXltZW50OicsIEpTT04uc3RyaW5naWZ5KHRoaXMucGF5bWVudCkpO1xuICAgIHRoaXMuc3BzRGVjaWRpckFwaVNlcnZpY2UubWFrZVBheW1lbnQodGhpcy5wYXltZW50LCB0aGlzLmFjY2Vzc1Rva2VuLCB0aGlzLnZrVXJsQXBpKVxuICAgICAgLnN1YnNjcmliZSgocmVzOiBSZXNwb25zZUFwaSkgPT4ge1xuICAgICAgICB0aGlzLnBheW1lbnRSZXNwb25zZUhhbmRsZXIocmVzKTtcbiAgICAgIH0sIGVycm9yID0+IHtcbiAgICAgICAgdGhpcy5zdGF0dXNQYXkuZW1pdCh0aGlzLnBheW1lbnRSZXN1bHQpO1xuICAgICAgICB0aGlzLnBheW1lbnRTdGF0ZSA9ICdhcGlFcnJvcic7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGhhc2hUZXh0KHRleHQ6IHN0cmluZywgaXRlcmF0aW9uczpudW1iZXIpOiBzdHJpbmd7XG4gICAgbGV0IGhhc2hlZHRleHQgPSB0ZXh0O1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaXRlcmF0aW9uczsgaSsrKSB7XG4gICAgICBoYXNoZWR0ZXh0ID0gc2hhMjU2KGhhc2hlZHRleHQpO1xuICAgIH1cbiAgICByZXR1cm4gaGFzaGVkdGV4dFxuICB9XG5cbiAgcGF5bWVudFJlc3BvbnNlSGFuZGxlcihyZXNwb25zZTogUmVzcG9uc2VBcGkpIHtcbiAgICB0aGlzLmxvZ2dlcigncGF5bWVudFJlc3BvbnNlSGFuZGxlcjonLCBKU09OLnN0cmluZ2lmeShyZXNwb25zZSkpO1xuXG4gICAgaWYgKHJlc3BvbnNlLnN1Y2Nlc3MpIHtcbiAgICAgIHRoaXMucGF5bWVudFN0YXRlID0gJ3N1Y2Nlc3MnO1xuICAgICAgdGhpcy5wYXltZW50U3VjY2Vzc0luZm8gPSByZXNwb25zZS5kYXRhIGFzIFBheW1lbnRSZXNwb25zZUluZm87XG4gICAgICB0aGlzLnBheW1lbnRSZXN1bHQgPSB7IHN1Y2Nlc3M6IHRydWUsIHBheW1lbnRJZDogdGhpcy5wYXltZW50U3VjY2Vzc0luZm8ucGF5bWVudF9pZCwgaW50ZWdyYXRvcjogJ0RFQ0lESVInIH07XG4gICAgICB0aGlzLnN0YXR1c1BheS5lbWl0KHRoaXMucGF5bWVudFJlc3VsdCk7XG4gICAgICB0aGlzLmRpc2FibGVkID0gdHJ1ZTtcbiAgICAgIHRoaXMuZGlzYWJsZVNlbGVjdCA9IHRydWU7XG5cbiAgICAgIGlmICh0aGlzLnN1Y2Nlc3NVcmwgJiYgdGhpcy5zdWNjZXNzVXJsLmxlbmd0aCA+IDApIHtcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2Ake3RoaXMuc3VjY2Vzc1VybH1gXSkudGhlbigpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucGF5bWVudFN0YXRlID0gJ2Vycm9yJztcbiAgICAgIHRoaXMuc3RhdHVzUGF5LmVtaXQodGhpcy5wYXltZW50UmVzdWx0KTtcbiAgICAgIHRoaXMucHJvY2Vzc0Vycm9yTWVzc2FnZShyZXNwb25zZS5kYXRhKTtcblxuICAgICAgaWYgKHRoaXMuZmFpbHVyZVVybCAmJiB0aGlzLmZhaWx1cmVVcmwubGVuZ3RoID4gMCkge1xuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbYCR7dGhpcy5mYWlsdXJlVXJsfWBdKS50aGVuKClcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByb2Nlc3NFcnJvclRva2VuKHJlc3BvbnNlOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gdHJ1ZTtcbiAgICB0aGlzLmRpc2FibGVTZWxlY3QgPSB0cnVlO1xuXG4gICAgY29uc3QgZXJyb3I6IEVycm9yVG9rZW4gPSByZXNwb25zZSBhcyBFcnJvclRva2VuO1xuXG4gICAgLy8gb2J0ZW5lbW9zIG1lbnNhamVzIGRlIGVycm9yXG4gICAgZXJyb3IuZXJyb3IuZm9yRWFjaCgoeCkgPT4ge1xuICAgICAgaWYgKHguZXJyb3IudHlwZSA9PT0gJ2ludmFsaWRfZXhwaXJ5X2RhdGUnKSB7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ1Jldmlzw6EgbGEgZmVjaGEgZGUgdmVuY2ltaWVudG8uJztcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gSlNPTi5zdHJpbmdpZnkoZXJyb3IpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLy8gZGlmZXJlbnRlcyB0aXBvcyBkZSBlcnJvciBub3MgZGV2dWVsdmUgZGVjaWRpclxuICBwcm9jZXNzRXJyb3JNZXNzYWdlKHJlc3BvbnNlRXJyb3I6IFBheW1lbnRSZXNwb25zZUluZm8pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gdHJ1ZTtcbiAgICB0aGlzLmRpc2FibGVTZWxlY3QgPSB0cnVlO1xuXG4gICAgaWYgKHJlc3BvbnNlRXJyb3IuZXJyb3IpIHtcbiAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gcmVzcG9uc2VFcnJvci5lcnJvci5yZWFzb24uZGVzY3JpcHRpb247XG5cbiAgICAgIGlmIChyZXNwb25zZUVycm9yLmVycm9yLnJlYXNvbi5hZGRpdGlvbmFsX2Rlc2NyaXB0aW9uKSB7XG4gICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gdGhpcy5lcnJvck1lc3NhZ2UgKyAnIC0gJyArIHJlc3BvbnNlRXJyb3IuZXJyb3IucmVhc29uLmFkZGl0aW9uYWxfZGVzY3JpcHRpb247XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLmVycm9yTWVzc2FnZSA9PSAnJyB8fCB0aGlzLmVycm9yTWVzc2FnZSA9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSBKU09OLnN0cmluZ2lmeShyZXNwb25zZUVycm9yKTtcbiAgICAgIH1cbiAgICB9XG4gICAgZWxzZSBpZiAocmVzcG9uc2VFcnJvci5lcnJvcl90eXBlKSB7XG4gICAgICBzd2l0Y2ggKHJlc3BvbnNlRXJyb3IuZXJyb3JfdHlwZSkge1xuICAgICAgICBjYXNlICdpbnZhbGlkX3JlcXVlc3RfZXJyb3InOlxuICAgICAgICAgIGlmIChyZXNwb25zZUVycm9yLnZhbGlkYXRpb25fZXJyb3JzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGlmIChyZXNwb25zZUVycm9yLnZhbGlkYXRpb25fZXJyb3JzWzBdLmNvZGUgPT09ICdpbnZhbGlkX3BhcmFtJykge1xuICAgICAgICAgICAgICBzd2l0Y2ggKHJlc3BvbnNlRXJyb3IudmFsaWRhdGlvbl9lcnJvcnNbMF0ucGFyYW0pIHtcbiAgICAgICAgICAgICAgICBjYXNlICdjYXJkX251bWJlcic6XG4gICAgICAgICAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9ICdUYXJqZXRhIGludsOhbGlkYSc7XG4gICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlICdiaW4nOlxuICAgICAgICAgICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnVGFyamV0YSBpbnbDoWxpZGEnO1xuICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gcmVzcG9uc2VFcnJvci5lcnJvci5yZWFzb24uZGVzY3JpcHRpb247XG4gICAgICAgICAgICAgICAgICBpZiAodGhpcy5lcnJvck1lc3NhZ2UgPT0gJycgfHwgdGhpcy5lcnJvck1lc3NhZ2UgPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gSlNPTi5zdHJpbmdpZnkocmVzcG9uc2VFcnJvcik7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnbm90X2ZvdW5kX2Vycm9yJzpcbiAgICAgICAgICB0aGlzLmVycm9yTWVzc2FnZSA9ICdEYXRvcyBubyBlbmNvbnRyYWRvcyAoNDA0KS4nO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdhdXRoZW50aWNhdGlvbl9lcnJvcic6XG4gICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnRXJyb3IgKDQwMSkuJztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnbWFsZm9ybWVkX3JlcXVlc3RfZXJyb3InOlxuICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gJ0Vycm9yIGFsIGVudmlhciBsb3MgZGF0b3MgICg0MDApLic7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2FwaV9lcnJvcic6XG4gICAgICAgICAgdGhpcy5lcnJvck1lc3NhZ2UgPSAnRXJyb3IgaW50ZXJubyAoNDA5KS4nO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHRoaXMuZXJyb3JNZXNzYWdlID0gSlNPTi5zdHJpbmdpZnkocmVzcG9uc2VFcnJvcik7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY29tcGFyZURhdGUoeWVhcjogbnVtYmVyLCBtb250aDogbnVtYmVyLCBkYXk6IG51bWJlcik6IG51bWJlciB7XG4gICAgY29uc3QgZDE6IERhdGUgPSBuZXcgRGF0ZSh5ZWFyLCBtb250aCwgZGF5KTtcbiAgICBjb25zdCBkMjogRGF0ZSA9IG5ldyBEYXRlKCk7XG5cbiAgICBjb25zdCBzYW1lID0gZDEuZ2V0VGltZSgpID09PSBkMi5nZXRUaW1lKCk7XG4gICAgaWYgKHNhbWUpIHsgcmV0dXJuIDA7IH1cbiAgICBpZiAoZDEgPiBkMikgeyByZXR1cm4gMTsgfVxuICAgIGlmIChkMSA8IGQyKSB7IHJldHVybiAtMTsgfVxuICB9XG5cbiAgLy8gSW5wdXQgY29udHJvbHNcbiAgb25ZZWFyQ2hhbmdlKCkge1xuICAgIGlmIChOdW1iZXIuaXNOYU4oK3RoaXMueWVhclRleHQpKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy55ZWFyVGV4dCA9ICcnO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgb25ZZWFyQmx1cihlbGVtZW50OiBhbnkpIHtcbiAgICBpZiAodGhpcy5jb21wYXJlRGF0ZShcbiAgICAgIE51bWJlcihgMjAke3RoaXMueWVhclRleHR9YCksXG4gICAgICBOdW1iZXIodGhpcy5tb250aFRleHQpLFxuICAgICAgbmV3IERhdGUoKS5nZXREYXRlKCkpIDwgMCkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMueWVhclRleHQgPSAnJztcbiAgICAgICAgdGhpcy5pbnZhbGlkRGF0ZSA9IHRydWU7XG4gICAgICAgIGVsZW1lbnQudGFyZ2V0LmZvY3VzKCk7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pbnZhbGlkRGF0ZSA9IGZhbHNlO1xuICAgIH1cblxuICB9XG5cbiAgb25Nb250aExvc3RGb2N1cygpIHtcbiAgICBpZiAoK3RoaXMubW9udGhUZXh0ID4gMCAmJiAhaXNOYU4oK3RoaXMubW9udGhUZXh0KSkge1xuICAgICAgaWYgKHRoaXMubW9udGhUZXh0ID09PSAnMScpIHtcbiAgICAgICAgdGhpcy5tb250aFRleHQgPSAnMDEnO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9uTW9udGhDaGFuZ2UoKSB7XG4gICAgaWYgKCt0aGlzLm1vbnRoVGV4dCA+PSAwICYmICt0aGlzLm1vbnRoVGV4dCA8IDEzICYmICFpc05hTigrdGhpcy5tb250aFRleHQpKSB7XG4gICAgICBzd2l0Y2ggKHRoaXMubW9udGhUZXh0KSB7XG4gICAgICAgIGNhc2UgJzInOiB7XG4gICAgICAgICAgdGhpcy5tb250aFRleHQgPSAnMDInO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJzMnOiB7XG4gICAgICAgICAgdGhpcy5tb250aFRleHQgPSAnMDMnO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJzQnOiB7XG4gICAgICAgICAgdGhpcy5tb250aFRleHQgPSAnMDQnO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJzUnOiB7XG4gICAgICAgICAgdGhpcy5tb250aFRleHQgPSAnMDUnO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJzYnOiB7XG4gICAgICAgICAgdGhpcy5tb250aFRleHQgPSAnMDYnO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJzcnOiB7XG4gICAgICAgICAgdGhpcy5tb250aFRleHQgPSAnMDcnO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJzgnOiB7XG4gICAgICAgICAgdGhpcy5tb250aFRleHQgPSAnMDgnO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGNhc2UgJzknOiB7XG4gICAgICAgICAgdGhpcy5tb250aFRleHQgPSAnMDknO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLm1vbnRoVGV4dCA9ICcnO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgb25Db2RlQ2hhbmdlKCkge1xuICAgIGlmIChOdW1iZXIuaXNOYU4oK3RoaXMuY3ZjVGV4dCkpIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmN2Y1RleHQgPSAnJztcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmN2Y1RleHQuc2VhcmNoKCcgJykgPiAtMSkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuY3ZjVGV4dCA9ICcnO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgb25EbmlDaGFuZ2UoKSB7XG4gICAgaWYgKE51bWJlci5pc05hTigrdGhpcy5kbmlUZXh0KSkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuZG5pVGV4dCA9ICcnO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuZG5pVGV4dC5zZWFyY2goJyAnKSA+IC0xKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5kbmlUZXh0ID0gJyc7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBvblBheWVyTmFtZUNoYW5nZSgpIHtcbiAgICBpZiAoIWlzTmFOKCt0aGlzLnBheWVyTmFtZVRleHQpKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5wYXllck5hbWVUZXh0ID0gJyc7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBvbkNhcmRDaGFuZ2UoKSB7XG4gICAgaWYgKE51bWJlci5pc05hTigrdGhpcy5jYXJkVGV4dCkpIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICB0aGlzLmNhcmRUZXh0ID0gJyc7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5jYXJkVGV4dC5zZWFyY2goJyAnKSA+IC0xKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5jYXJkVGV4dCA9ICcnO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYodGhpcy5jYXJkVGV4dC5sZW5ndGggPDgpIHtcbiAgICAgIHRoaXMuZGlzYWJsZVNlbGVjdCA9IHRydWU7XG4gICAgICB0aGlzLmlzc3VlciA9IG51bGw7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGlzYWJsZVNlbGVjdCA9IGZhbHNlO1xuICAgIH1cblxuICAgIC8vIHNldGVhIHRhcmpldGFcbiAgICBpZiAodGhpcy5jYXJkVGV4dC5sZW5ndGggPT09IDggJiYgdGhpcy5jYXJkVGV4dCAhPT0gJzAwMDAwMDAwJyl7XG4gICAgICB0aGlzLnNldENyZWRpdFR5cGUodGhpcy5jYXJkVGV4dCk7XG4gICAgfVxuICAgIFxuICB9XG5cbiAgc2V0Q3JlZGl0VHlwZShiaW46IHN0cmluZyk6IHZvaWQge1xuICAgIGlmIChiaW4ubGVuZ3RoIDwgOCkge1xuICAgICAgdGhpcy5pc3N1ZXIgPSBudWxsO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChiaW4ubGVuZ3RoID09PSA4KSB7XG4gICAgICB0aGlzLmlzc3VlciA9IG51bGw7XG5cbiAgICAgIC8vIHZpc2EgZGViaXRvXG4gICAgICBpZiAoYmluLnN1YnN0cmluZygwLCA0KSA9PT0gJzQ3NzAnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc0NDI1NDgnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc0MDY4MDknIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc0MDg3MzgnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc0MTE1MjEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc0MTE2NjMnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc0MjYzNTknIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc0Mjk3ODAnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc0MzgyNjcnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc0NjExODcnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1MDAzMzQnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1MDk0MTMnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1MTIyODUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1MTI4ODEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1MTg2MzUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1Mzg0NDknIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1NTA1NTMnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1NjYwNTcnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1Njc5MzMnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1NzIxNDAnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1ODQyNTcnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc1OTg3MTgnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc2MDU4MDEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc2MDYxMjAnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc2MzEwNTcnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc2NzYyMTUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc3MTMyNzQnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc3MTMyODQnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc3MTc1MTUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc3NDg3NjEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc3NTMzNzEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc3NTM2MDAnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5MTIzOTQnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5MTYxNDgnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5MTY3NzMnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5MjM0MDUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5MzA5NjUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5MzQwOTEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5MzU3NjEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5NDMzMTMnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5NDU3MjEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5NDg4MDknIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5NjA2NDQnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5NjkwODUnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5NzAxNjcnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgNikgPT09ICc5NzgwNjEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0MDI2NzkxOScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQwMzI3MTc2JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDA0MTYwMDQnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0MDQyMTkzMycgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQwNDUxNTU2JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDA1NDEwMTAnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0MDYyMzgzNScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQwNzMzNDY5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDA3MzM1ODYnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0MDg3MjQ5OCcgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MDA3Nzg5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUwMjQ4MjInIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTAzNDc1MScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MDQ2OTg3JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUwNjA1NDknIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTA2MjQ4MicgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MDcwMDcxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUwODQ3MDgnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTA5MTQzMycgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MTAwOTAyJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUxMDM4NjknIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTEzMTA0NycgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MTY4ODg0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUxNzQzMDYnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTE4NDYxMScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MTkxOTIxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUyMDE4ODEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTIwNjQwMScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MjQ1Mjk0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUzMTQ5NDQnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTMxNzg0NycgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1MzU3NDA5JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDUzNzQ1ODcnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTM5NDcwNScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1NDU2NTg0JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU1NDE5MjQnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTU0NTc5NScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1NTY3NzQ2JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU1ODM3NTknIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTY0ODgzOCcgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1NjcyNTA2JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU2Nzg0MjEnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTcxMDc1NicgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1NzE2MDA2JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU3MjUwMjknIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTczMjExMycgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1NzMyNjk4JyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU3OTM5MTcnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTg0MTE4NScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCA4KSA9PT0gJzQ1ODYyMDIxJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDgpID09PSAnNDU5MTUzMzYnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgOCkgPT09ICc0NTk3MTQ5NicpIHtcbiAgICAgICAgdGhpcy5pc3N1ZXIgPSAzMTtcbiAgICAgIH1cbiAgICAgIC8vIG1hc3RlcmNhcmRcbiAgICAgIGVsc2UgaWYgKGJpbi5zdWJzdHJpbmcoMCwgMikgPT09ICc1MScgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCAyKSA9PT0gJzUyJyB8fFxuICAgICAgICBiaW4uc3Vic3RyaW5nKDAsIDIpID09PSAnNTMnIHx8XG4gICAgICAgIGJpbi5zdWJzdHJpbmcoMCwgMikgPT09ICc1NCcgfHxcbiAgICAgICAgYmluLnN1YnN0cmluZygwLCAyKSA9PT0gJzU1Jykge1xuICAgICAgICB0aGlzLmlzc3VlciA9IDEwNDtcbiAgICAgIH1cbiAgICAgIC8vIHRhcmpldGEgbmFyYW5qYVxuICAgICAgZWxzZSBpZiAoYmluLnN1YnN0cmluZygwLCA2KSA9PT0gJzU4OTU2MicpIHtcbiAgICAgICAgdGhpcy5pc3N1ZXIgPSAyNDtcbiAgICAgIH1cbiAgICAgIC8vIHZpc2EgY3JlZGl0b1xuICAgICAgZWxzZSBpZiAoYmluLnN1YnN0cmluZygwLCAxKSA9PT0gJzQnKSB7XG4gICAgICAgIHRoaXMuaXNzdWVyID0gMTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5zZWxlY3RlZENyZWRpdENhcmQoKTtcbiAgICB9XG4gIH1cblxuICBvblBhc3RlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHJlc2V0Rm9ybSgpIHtcbiAgICB0aGlzLmRpc2FibGVkID0gZmFsc2U7XG4gICAgdGhpcy5kaXNhYmxlU2VsZWN0ID0gZmFsc2U7XG4gICAgdGhpcy50b3RhbEFtb3VudFxuICAgIHRoaXMudG90YWxGaW5hbmNlZEFtb3VudCA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLmN1cnJlbnRURUEgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5jdXJyZW50Q0ZUID0gdW5kZWZpbmVkO1xuICAgIC8vIGNyZWRpdENhcmRzOiBDcmVkaXRDYXJkW107XG4gICAgdGhpcy5jcmVkaXRDYXJkcyA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLnNlbGVjdENyZWRpdENhcmRQbGFuID0gbnVsbDtcbiAgICAvLyBjcmVkaXRDYXJkUGxhbnM6IENyZWRpdENhcmRQbGFuc1tdO1xuICAgIHRoaXMuY3JlZGl0Q2FyZFBsYW5zID0gdW5kZWZpbmVkO1xuICAgIHRoaXMucGF5bWVudFJlc3VsdCA9IHsgc3VjY2VzczogZmFsc2UsIHBheW1lbnRJZDogJycsIGludGVncmF0b3I6ICdERUNJRElSJyB9O1xuICBcbiAgICAvLyBGb3JtIGJpbmRcbiAgICB0aGlzLm1vbnRoVGV4dCA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLnllYXJUZXh0ID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuY3ZjVGV4dCA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLmRuaVRleHQgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5wYXllck5hbWVUZXh0ID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuY2FyZFRleHQgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5zdWJtaXRQcmVzc2VkID0gZmFsc2U7XG4gICAgdGhpcy5pbnZhbGlkRGF0ZSA9IGZhbHNlO1xuICBcbiAgICB0aGlzLmRlY2lkaXIgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5hZGRTY3JpcHQgPSB0cnVlO1xuICBcbiAgICB0aGlzLnBheW1lbnRTdGF0ZSA9ICd1bnN1Ym1pdHRlZCc7XG4gICAgdGhpcy5wYXllck5hbWUgPSB1bmRlZmluZWQ7XG4gICAgdGhpcy5pc3N1ZXIgPSBudWxsO1xuICAgIHRoaXMucGF5bWVudCA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLnBheW1lbnRTdWNjZXNzSW5mbyA9IHVuZGVmaW5lZDtcbiAgICB0aGlzLmVycm9yTWVzc2FnZSA9IHVuZGVmaW5lZDtcblxuICAgIHRoaXMuaW5pdERlY2lkaXIoKTtcbiAgfVxuXG59XG4iXX0=
|
package/fesm2015/vk-payments.js
CHANGED
|
@@ -1347,7 +1347,8 @@ class SpsDecidirComponent {
|
|
|
1347
1347
|
* @return {?}
|
|
1348
1348
|
*/
|
|
1349
1349
|
config => {
|
|
1350
|
-
|
|
1350
|
+
console.log(config);
|
|
1351
|
+
if (config == 'SPS-Decidir-Supervielle') {
|
|
1351
1352
|
console.log('Modo Supervielle');
|
|
1352
1353
|
this.decidir.setPublishableKey(this.superviellePublishableKey);
|
|
1353
1354
|
}
|