@muraai/mnl-form 0.0.1-alpha-28c23a4 → 0.0.1-alpha-db495b1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -5
- package/esm2022/lib/confirmation-dialog/confirmation-dialog.component.mjs +1 -1
- package/esm2022/lib/mnl-form/mnl-form-standalone.module.mjs +155 -0
- package/esm2022/lib/mnl-form/mnl-form.component.mjs +199 -0
- package/esm2022/lib/models/custom-form-field.model.mjs +1 -1
- package/esm2022/lib/models/workflow-status.model.mjs +1 -1
- package/esm2022/lib/services/graphql.service.mjs +1 -1
- package/esm2022/lib/services/scoring.service.mjs +1 -1
- package/esm2022/lib/types/action-button-renderer.component.mjs +1 -1
- package/esm2022/lib/types/autocomplete-type.component.mjs +1 -1
- package/esm2022/lib/types/button.type.mjs +1 -1
- package/esm2022/lib/types/comments.type.mjs +1 -1
- package/esm2022/lib/types/country-code-input.type.mjs +1 -1
- package/esm2022/lib/types/custom-date.type.mjs +1 -1
- package/esm2022/lib/types/custom-input.component.mjs +1 -1
- package/esm2022/lib/types/date-format.type.mjs +1 -1
- package/esm2022/lib/types/expansion-panel.types.mjs +1 -1
- package/esm2022/lib/types/formly-field-panel.type.mjs +1 -1
- package/esm2022/lib/types/grid-actionable.type.mjs +1 -1
- package/esm2022/lib/types/grid-formly-cell.component.mjs +1 -1
- package/esm2022/lib/types/grid.type.mjs +1 -1
- package/esm2022/lib/types/input.type.mjs +1 -1
- package/esm2022/lib/types/mu-helper-text.type.mjs +3 -3
- package/esm2022/lib/types/multi-select-autocomplete.mjs +1 -1
- package/esm2022/lib/types/multi-select-checkbox.component.mjs +1 -1
- package/esm2022/lib/types/radio.type.mjs +1 -1
- package/esm2022/lib/types/scrollable-tabs.types.mjs +1 -1
- package/esm2022/lib/types/select-api-auto-complete.component.mjs +1 -1
- package/esm2022/lib/types/select-autocomplete-redefined.component.mjs +1 -1
- package/esm2022/lib/types/select-autocomplete.type.mjs +1 -1
- package/esm2022/lib/types/stepper.type.mjs +1 -1
- package/esm2022/lib/types/table.types.mjs +1 -1
- package/esm2022/lib/types/tabs.types.mjs +1 -1
- package/esm2022/lib/types/tabular-form-dialog.component.mjs +1 -1
- package/esm2022/lib/types/tabular-form.type.mjs +1 -1
- package/esm2022/lib/types/upload-file.mjs +1 -1
- package/esm2022/lib/types/view-file-dialog.component.mjs +1 -1
- package/esm2022/lib/utils/formly.utils.mjs +1 -1
- package/esm2022/lib/validators/custom-email-validator.mjs +1 -1
- package/esm2022/lib/validators/ein-validators.mjs +1 -1
- package/esm2022/lib/validators/gst-validator.mjs +1 -1
- package/esm2022/lib/validators/normal-email-validator.mjs +1 -1
- package/esm2022/lib/validators/npi-validator.mjs +1 -1
- package/esm2022/lib/validators/pan-validator.mjs +1 -1
- package/esm2022/lib/validators/phone-number-validator.mjs +1 -1
- package/esm2022/lib/validators/select-validator.mjs +1 -1
- package/esm2022/lib/validators/tinSsn-validator.mjs +1 -1
- package/esm2022/lib/workflow-status/ workflow-status.module.mjs +1 -1
- package/esm2022/lib/workflow-status/workflow-status.component.mjs +1 -1
- package/esm2022/lib/wrappers/form-field-description-wrapper.component.mjs +1 -1
- package/esm2022/lib/wrappers/form-field-wrapper.component.mjs +1 -1
- package/esm2022/lib/wrappers/formly-wrapper-with-old-value.component.mjs +1 -1
- package/esm2022/lib/wrappers/prefix-suffix-wrapper.component.mjs +1 -1
- package/esm2022/lib/wrappers/prefix-sufix-extension.component.mjs +1 -1
- package/esm2022/muraai-mnl-form.mjs +1 -1
- package/esm2022/public-api.mjs +3 -3
- package/fesm2022/muraai-mnl-form.mjs +7 -7
- package/fesm2022/muraai-mnl-form.mjs.map +1 -1
- package/lib/{formly-lib/formly-lib.component.d.ts → mnl-form/mnl-form.component.d.ts} +3 -3
- package/package.json +1 -1
- package/public-api.d.ts +2 -2
- package/esm2022/lib/formly-lib/formly-lib.component.mjs +0 -199
- package/esm2022/lib/formly-lib/formly-standalone.module.mjs +0 -155
- /package/lib/{formly-lib/formly-standalone.module.d.ts → mnl-form/mnl-form-standalone.module.d.ts} +0 -0
|
@@ -638,4 +638,4 @@ function findNestedKey(obj, targetKey) {
|
|
|
638
638
|
}
|
|
639
639
|
return undefined;
|
|
640
640
|
}
|
|
641
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFidWxhci1mb3JtLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mb3JtLWxpYi9zcmMvbGliL3R5cGVzL3RhYnVsYXItZm9ybS50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsU0FBUyxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUU1RSxPQUFPLEVBQWEsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBZSxpQkFBaUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzdFLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGVBQWUsRUFBb0IsTUFBTSxxQkFBcUIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFJL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDL0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sc0RBQXNELENBQUM7Ozs7Ozs7Ozs7O0FBeUVuRyxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsY0FBdUM7SUFnQi9FLFlBQ1UsTUFBaUIsRUFDakIsUUFBcUIsRUFDckIsRUFBcUIsRUFDckIsZ0JBQWtDLEVBQ2xDLFFBQWtCO1FBQzFCLEtBQUssRUFBRSxDQUFDO1FBTEEsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUNqQixhQUFRLEdBQVIsUUFBUSxDQUFhO1FBQ3JCLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBQ3JCLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQXBCNUIscUJBQWdCLEdBQUcsQ0FBQyxDQUFDO1FBQ3JCLHNCQUFpQixHQUFHLEtBQUssQ0FBQztRQUMxQixlQUFVLEdBQWEsRUFBRSxDQUFDO1FBQzFCLFlBQU8sR0FBMEIsRUFBRSxDQUFDO1FBRXBDLGtCQUFhLEdBQUc7WUFDZCxRQUFRLEVBQUUsSUFBSTtZQUNkLE1BQU0sRUFBRSxJQUFJO1lBQ1osU0FBUyxFQUFFLElBQUk7WUFDZixJQUFJLEVBQUUsQ0FBQztZQUNQLFFBQVEsRUFBRSxHQUFHO1lBQ2IsY0FBYyxFQUFFLElBQUk7WUFDcEIsZ0JBQWdCLEVBQUUsSUFBSTtTQUN2QixDQUFDO1FBaWRGLGdCQUFXLEdBQUcsQ0FBQyxNQUFXLEVBQUUsRUFBRTtZQUM1QixJQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxDQUFDO2dCQUN4QyxJQUFJLE1BQU0sQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUM7b0JBQzNCLE9BQU8sRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFFLENBQUM7Z0JBQ3hDLENBQUM7Z0JBQ0QsSUFBSSxNQUFNLENBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRSxDQUFDO29CQUM3QixPQUFPLEVBQUUsZUFBZSxFQUFFLFdBQVcsRUFBRSxDQUFDO2dCQUMxQyxDQUFDO1lBQ0gsQ0FBQztZQUNELE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUMsQ0FBQztJQWxkRixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDeEMsTUFBTSxTQUFTLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ2hFLElBQUksQ0FBQyxRQUFRLEdBQUcsU0FBUyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFhLENBQUMsQ0FBQztRQUN4RCxDQUFDO1FBRUQsSUFBRyxJQUFJLENBQUMsS0FBSyxFQUFFLGVBQWUsRUFBRSxDQUFDO1lBQy9CLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsZUFBZSxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2hJLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQztZQUN0QyxJQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLGFBQWEsRUFBRSxDQUFDO2dCQUN6QyxJQUFJLENBQUMsVUFBVSxHQUFHO29CQUNoQjt3QkFDRSx1QkFBdUIsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUI7d0JBQ2hELGlCQUFpQixFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUU7NEJBQzVCLE9BQU8sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQTt3QkFDMUQsQ0FBQzt3QkFDRCxVQUFVLEVBQUUsRUFBRTt3QkFDZCxLQUFLLEVBQUUsRUFBRTt3QkFDVCxRQUFRLEVBQUUsRUFBRTt3QkFDWixNQUFNLEVBQUUsS0FBSzt3QkFDYixTQUFTLEVBQUMsS0FBSztxQkFDaEI7b0JBQ0Q7d0JBQ0UsVUFBVSxFQUFFLEVBQUU7d0JBQ2QsS0FBSyxFQUFFLEVBQUU7d0JBQ1QsUUFBUSxFQUFFLEVBQUU7d0JBQ1osTUFBTSxFQUFFLEtBQUs7d0JBQ2IsU0FBUyxFQUFDLEtBQUs7d0JBQ2YsS0FBSyxFQUFFLFdBQVc7d0JBQ2xCLFlBQVksRUFBRSxDQUFDLE1BQVcsRUFBRSxFQUFFOzRCQUM1QixJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQ0FDakIsT0FBTyxnRkFBZ0YsQ0FBQzs0QkFDMUYsQ0FBQztpQ0FBTSxDQUFDO2dDQUNOLE9BQU8sd0ZBQXdGLENBQUM7NEJBQ2xHLENBQUM7d0JBQ0gsQ0FBQzt3QkFDRCxhQUFhLEVBQUUsQ0FBQyxNQUFNLEVBQUUsRUFBRTs0QkFDeEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDO3dCQUNqQyxDQUFDO3dCQUNELGtCQUFrQixFQUFFLENBQUMsTUFBVyxFQUFFLEVBQUU7NEJBQ2xDLElBQUksTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO2dDQUNqQixPQUFPLDRFQUE0RSxDQUFDOzRCQUN0RixDQUFDOzRCQUNELE9BQU8sRUFBRSxDQUFDO3dCQUNaLENBQUM7cUJBRUY7b0JBQ0QsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsWUFBWSxDQUFDLENBQUM7aUJBQzNELENBQUE7WUFDSCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxDQUFDLFVBQVUsR0FBRztvQkFDaEI7d0JBQ0UsdUJBQXVCLEVBQUUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCO3dCQUNoRCxpQkFBaUIsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUI7d0JBQzFDLFVBQVUsRUFBRSxFQUFFO3dCQUNkLEtBQUssRUFBRSxFQUFFO3dCQUNULFFBQVEsRUFBRSxFQUFFO3dCQUNaLE1BQU0sRUFBRSxLQUFLO3dCQUNiLFNBQVMsRUFBQyxLQUFLO3FCQUNoQjtvQkFDRDt3QkFDRSxVQUFVLEVBQUUsRUFBRTt3QkFDZCxLQUFLLEVBQUUsTUFBTTt3QkFDYixLQUFLLEVBQUUsRUFBRTt3QkFDVCxRQUFRLEVBQUUsRUFBRTt3QkFDWixNQUFNLEVBQUUsS0FBSzt3QkFDYixTQUFTLEVBQUMsS0FBSzt3QkFDZixZQUFZLEVBQUUsR0FBRyxFQUFFOzRCQUNqQixPQUFPLHdGQUF3RixDQUFDO3dCQUNsRyxDQUFDO3dCQUNELGFBQWEsRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFOzRCQUN4QixJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUM7d0JBQ2pDLENBQUM7cUJBQ0Y7b0JBQ0QsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUMsWUFBWSxDQUFDLENBQUM7aUJBQzNELENBQUM7WUFDSixDQUFDO1lBRUQsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDOUMsSUFBSSxNQUFNLEVBQUUsSUFBSSxLQUFLLE1BQU0sRUFBRSxDQUFDO29CQUM1QixPQUFPO3dCQUNMLEdBQUcsTUFBTTt3QkFDVCxjQUFjLEVBQUUsQ0FBQyxDQUFDLE1BQVUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7cUJBQ2hFLENBQUM7Z0JBQ0osQ0FBQztnQkFDRCxJQUFHLE1BQU0sRUFBRSxLQUFLLEVBQUUsUUFBUSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUM7b0JBQ3ZDLE9BQU87d0JBQ0wsR0FBRyxNQUFNO3dCQUNULFlBQVksRUFBRSxDQUFDLE1BQVcsRUFBRSxFQUFFOzRCQUM1QixJQUFHLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQ0FDaEIsT0FBTztvQkFDSCxNQUFNLENBQUMsS0FBSztxQkFDWCxDQUFDOzRCQUNSLENBQUM7aUNBQU0sQ0FBQztnQ0FDTixPQUFPLEVBQUUsQ0FBQzs0QkFDWixDQUFDO3dCQUNILENBQUM7d0JBQ0QsYUFBYSxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUU7NEJBQ3hCLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7d0JBQy9CLENBQUM7cUJBQ0YsQ0FBQTtnQkFDSCxDQUFDO2dCQUNELE9BQU8sTUFBTSxDQUFDO1lBQ2hCLENBQUMsQ0FBQyxDQUFBO1lBQ0YsTUFBTSxRQUFRLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3pFLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDdkQsSUFBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7Z0JBQ2pDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsWUFBWSxFQUFFLEVBQUUsSUFBSSxFQUFFLEVBQUUsU0FBUyxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUU7b0JBQzdFLElBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDO3dCQUNmLElBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFRLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUM7NEJBQzFELElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTt3QkFDbEMsQ0FBQzs2QkFBTSxDQUFDOzRCQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQzt3QkFDNUMsQ0FBQztvQkFDSCxDQUFDO2dCQUNILENBQUMsQ0FBQyxDQUFBO1lBQ0osQ0FBQztZQUNELElBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO2dCQUN2QyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLGVBQWUsQ0FBQyxFQUFFLFlBQVksRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLFNBQVMsQ0FBQyxDQUFDLElBQVMsRUFBRSxFQUFFO29CQUNuRixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQVEsRUFBRSxFQUFFO3dCQUNoRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBWSxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRSxJQUFJLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQzt3QkFDakUsTUFBTSxVQUFVLEdBQUc7NEJBQ2pCLEdBQUcsR0FBRzs0QkFDTixHQUFHLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQzt5QkFDbEIsQ0FBQzt3QkFDRixPQUFPLFVBQVUsQ0FBQztvQkFDcEIsQ0FBQyxDQUFDLENBQUM7b0JBQ0gsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLEdBQUcsV0FBVyxDQUFDLENBQUM7b0JBQ2hDLElBQUksQ0FBQyxPQUFPLEVBQUUsU0FBUyxFQUFFLENBQUM7b0JBQzFCLElBQUksQ0FBQyxPQUFPLEVBQUUsV0FBVyxFQUFFLENBQUM7Z0JBQzlCLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBQ0QsV0FBVyxDQUFDLE1BQVc7UUFDckIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDO1FBQzFCLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQztZQUNyRCxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLGNBQWMsQ0FBQyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEQsQ0FBQztRQUNELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLDBCQUEwQixFQUFFO1lBQzdELEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsYUFBYSxDQUFDLElBQUksS0FBSztZQUMzQyxRQUFRLEVBQUUsTUFBTTtZQUNoQixNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEtBQUs7WUFDN0MsSUFBSSxFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsUUFBUSxJQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSztnQkFDakssV0FBVyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUs7YUFDdEM7WUFDRCxZQUFZLEVBQUUsSUFBSTtZQUNsQixTQUFTLEVBQUUsS0FBSztTQUNqQixDQUFDLENBQUM7UUFFSCxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3pDLElBQUksTUFBTSxFQUFFLENBQUM7Z0JBQ1gsTUFBTSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztnQkFDeEMsSUFBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsQ0FBQztvQkFDeEMsTUFBTSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7Z0JBQzVCLENBQUM7Z0JBQ0QsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsbUNBQW1DLENBQUMsRUFBRSxDQUFDO29CQUN0RCxNQUFNLENBQUMsa0JBQWtCLEdBQUcsTUFBTSxJQUFJLENBQUMsMEJBQTBCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQztnQkFDaEcsQ0FBQztnQkFDRCxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzVCLENBQUM7WUFDRCxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDO2dCQUNyRCxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLGNBQWMsQ0FBQyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDeEQsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsU0FBUyxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFTLEVBQUUsRUFBRTtZQUMzRCxJQUFJLENBQUMsRUFBRSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1lBQ3RDLElBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQ3hDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1lBQzFCLENBQUM7WUFDRCxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztZQUNwRSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELG9CQUFvQjtRQUNsQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsWUFBWSxDQUFDLElBQVM7UUFDcEIsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQztZQUM1QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyx3QkFBd0IsSUFBSSxDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFO2dCQUM1RSxRQUFRLEVBQUUsSUFBSTthQUNmLENBQUMsQ0FBQztZQUNILE9BQU87UUFDVCxDQUFDO1FBQ0QsS0FBSyxNQUFNLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUN2QixJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxNQUFNLEVBQUUsQ0FBQztnQkFDaEMsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUM7b0JBQ3hCLElBQUksQ0FBQyxHQUFHLEdBQUcsVUFBVSxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQztnQkFDOUMsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNqQyxJQUFJLENBQUMsVUFBVSxHQUFHO2dCQUNoQjtvQkFDRSx1QkFBdUIsRUFBRSxJQUFJO29CQUM3QixpQkFBaUIsRUFBRSxJQUFJO29CQUN2QixVQUFVLEVBQUUsRUFBRTtvQkFDZCxLQUFLLEVBQUUsRUFBRTtvQkFDVCxRQUFRLEVBQUUsRUFBRTtvQkFDWixTQUFTLEVBQUMsS0FBSztvQkFDZixNQUFNLEVBQUUsS0FBSztpQkFDZDtnQkFDRCxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO3FCQUNqQixNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUU7b0JBQ1osTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxJQUFJLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztvQkFDaEYsT0FBTyxHQUFHLEtBQUssSUFBSSxJQUFJLFdBQVcsRUFBRSxJQUFJLEtBQUssV0FBVyxDQUFDO2dCQUMzRCxDQUFDLENBQUM7cUJBQ0QsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFO29CQUNULE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsSUFBSSxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUM7b0JBQzdFLE9BQU87d0JBQ0wsS0FBSyxFQUFFLEdBQUc7d0JBQ1YsVUFBVSxFQUFFLEtBQUs7cUJBQ2xCLENBQUM7Z0JBQ0osQ0FBQyxDQUFDO2FBQ0wsQ0FBQztRQUNKLENBQUM7UUFDRCxJQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ3RELElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUNsQyxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDekMsQ0FBQztRQUNELElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2hCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsMENBQTBDLENBQUMsRUFDekUsT0FBTyxFQUNQO1lBQ0UsUUFBUSxFQUFFLENBQUM7U0FDWixDQUNGLENBQUM7UUFDRixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELG9CQUFvQixDQUFDLFlBQW1CLEVBQUUsR0FBVztRQUNuRCxLQUFLLE1BQU0sS0FBSyxJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ2pDLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxHQUFHLEVBQUUsQ0FBQztnQkFDdEIsT0FBTyxLQUFLLENBQUM7WUFDZixDQUFDO1lBQ0QsSUFBSSxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUM7Z0JBQ3JCLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxDQUFDO2dCQUNwRSxJQUFJLFVBQVUsRUFBRSxDQUFDO29CQUNmLE9BQU8sVUFBVSxDQUFDO2dCQUNwQixDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxZQUFtQixFQUFFLEdBQVc7UUFDdEQsS0FBSyxNQUFNLEtBQUssSUFBSSxZQUFZLEVBQUUsQ0FBQztZQUNqQyxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssR0FBRyxFQUFFLENBQUM7Z0JBQ3RCLE9BQU8sS0FBSyxDQUFDLEtBQUssRUFBRSxLQUFLLElBQUksR0FBRyxDQUFDO1lBQ25DLENBQUM7WUFDRCxJQUFJLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQztnQkFDckIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQ2xFLElBQUksS0FBSyxFQUFFLENBQUM7b0JBQ1YsT0FBTyxLQUFLLENBQUM7Z0JBQ2YsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO1FBQ0QsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLElBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDeEMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM1RSxJQUFHLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO2dCQUNqRCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDaEIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FDM0Isa0RBQWtELENBQ25ELEVBQ0QsSUFBSSxFQUNKO29CQUNFLFFBQVEsRUFBRSxDQUFDO29CQUNYLFVBQVUsRUFBRSxDQUFDLGdCQUFnQixDQUFDO2lCQUMvQixDQUNGLENBQUM7Z0JBQ0YsT0FBTztZQUNULENBQUM7UUFDSCxDQUFDO1FBQ0QsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsMkJBQTJCLEVBQUU7WUFDM0QsS0FBSyxFQUFFLEtBQUs7WUFDWixNQUFNLEVBQUUsS0FBSztZQUNiLElBQUksRUFBRSxFQUFFLEtBQUssRUFBRSx5QkFBeUIsRUFBQztTQUMxQyxDQUFDLENBQUM7UUFDSCxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7WUFDckMsSUFBRyxHQUFHLEVBQUUsQ0FBQztnQkFDUCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixFQUFFLENBQUM7Z0JBQ3RELE1BQU0sWUFBWSxHQUFHLGFBQWEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQzFELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDdkUsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFBO2dCQUU3RSxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDO29CQUM1QixNQUFNLEVBQUUsWUFBWTtpQkFDckIsQ0FBQyxDQUFDO2dCQUNILElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1lBQ2hDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxhQUFhLENBQUMsS0FBdUI7UUFDbkMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVELHNCQUFzQjtRQUNwQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLE1BQU0sQ0FBQztJQUNqRSxDQUFDO0lBRUQsZUFBZSxDQUNiLFVBQWlCO1FBRWpCLE9BQU8sVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQy9CLE9BQU87Z0JBQ0wsR0FBRyxNQUFNO2dCQUNULFVBQVUsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUM7YUFDN0QsQ0FBQTtRQUNILENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELFVBQVU7UUFDUixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDdEQsTUFBTSxZQUFZLEdBQUcsYUFBYSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxRCxJQUFJLFlBQVksRUFBRSxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDN0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2hCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQzNCLHVDQUF1QyxDQUN4QyxFQUNDLElBQUksRUFBRTtnQkFDUixRQUFRLEVBQUUsSUFBSTthQUNmLENBQUMsQ0FBQztZQUNILE9BQU87UUFDVCxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQztZQUNyRCxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLGNBQWMsQ0FBQyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDeEQsQ0FBQztRQUNELE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLDBCQUEwQixFQUFFO1lBQzdELEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsYUFBYSxDQUFDLElBQUksS0FBSztZQUMzQyxRQUFRLEVBQUUsTUFBTTtZQUNoQixNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEtBQUs7WUFDN0MsSUFBSSxFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsU0FBUyxJQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUMsRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsV0FBVyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRTtZQUNoUCxZQUFZLEVBQUUsSUFBSTtZQUNsQixTQUFTLEVBQUUsS0FBSztTQUNqQixDQUFDLENBQUM7UUFDSCxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3pDLElBQUksTUFBTSxFQUFFLENBQUM7Z0JBQ1gsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFO29CQUM1QyxJQUFJLFNBQVMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLE1BQU0sRUFBRSxFQUFFLEVBQUUsQ0FBQzt3QkFDckMsSUFBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxhQUFhLEVBQUUsQ0FBQzs0QkFDekMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFXLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEtBQUssTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDOzRCQUNsRixJQUFHLFdBQVcsRUFBRSxDQUFDO2dDQUNmLFdBQVcsQ0FBQyxXQUFXLENBQUMsR0FBRyxLQUFLLENBQUM7Z0NBQ2pDLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxLQUFLLENBQUM7Z0NBQzVCLE1BQU0sUUFBUSxHQUFHO29DQUNmLEdBQUcsTUFBTTtvQ0FDVCxHQUFHLFdBQVc7aUNBQ2YsQ0FBQTtnQ0FDRCxNQUFNLEVBQUUsR0FBRyxTQUFTLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO2dDQUN2QyxTQUFTLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0NBQzdCLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQzs0QkFDNUIsQ0FBQzt3QkFDSCxDQUFDO3dCQUNELE1BQU0sVUFBVSxHQUFHOzRCQUNqQixHQUFHLFNBQVM7NEJBQ1osR0FBRyxNQUFNO3lCQUNWLENBQUM7d0JBQ0YsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7NEJBQ3BDLElBQUksVUFBVSxDQUFDLEdBQUcsQ0FBQyxZQUFZLE1BQU0sRUFBRSxDQUFDO2dDQUN0QyxJQUFJLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQztvQ0FDOUIsVUFBVSxDQUFDLEdBQUcsR0FBRyxVQUFVLENBQUMsR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDO2dDQUMxRCxDQUFDOzRCQUNILENBQUM7d0JBQ0gsQ0FBQyxDQUFDLENBQUM7d0JBQ0gsT0FBTyxVQUFVLENBQUM7b0JBQ3BCLENBQUM7b0JBQ0QsT0FBTyxTQUFTLENBQUM7Z0JBQ25CLENBQUMsQ0FBQyxDQUFDO2dCQUNILFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDOUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUMxQixDQUFDO1lBQ0QsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7WUFDOUIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUN4QixJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLENBQUM7Z0JBQzFELElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzdELENBQUM7WUFDRCxJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDO2dCQUNyRCxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDLGNBQWMsQ0FBQyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDeEQsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFZO1FBQ3JCLElBQUcsSUFBSSxFQUFFLENBQUM7WUFDUixNQUFNLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN6QixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNqRCxNQUFNLFVBQVUsR0FBRyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDeEcsTUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1lBQ3ZDLE1BQU0sSUFBSSxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUM3QixPQUFPLEdBQUcsR0FBRyxJQUFJLEtBQUssSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUNuQyxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sRUFBRSxDQUFDO1FBQ1osQ0FBQztJQUNILENBQUM7SUFFRCxlQUFlLENBQUMsTUFBVztRQUN6QixNQUFNLG1CQUFtQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUM3RixNQUFNLHFCQUFxQixHQUFHLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDL0UsSUFBRyxxQkFBcUI7WUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFRCxRQUFRLENBQUMsT0FBVztRQUNoQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyx1QkFBdUIsRUFBRTtZQUMxRCxLQUFLLEVBQUUsS0FBSztZQUNaLFFBQVEsRUFBRSxLQUFLO1lBQ2YsTUFBTSxFQUFFLEtBQUs7WUFDYixJQUFJLEVBQUUsT0FBTztTQUNkLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxNQUFXO1FBQzNCLE1BQU0sU0FBUyxHQUFHO1lBQ2hCLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTO1lBQ3pCLFNBQVMsRUFBRSxFQUFFO1NBQ2QsQ0FBQTtRQUNELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLDBCQUEwQixFQUFFO1lBQzNDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsYUFBYSxDQUFDLElBQUksS0FBSztZQUMzQyxRQUFRLEVBQUUsS0FBSztZQUNmLE1BQU0sRUFBRSxLQUFLO1lBQ2IsSUFBSSxFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsU0FBUyxJQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxNQUFNLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUU7WUFDblAsWUFBWSxFQUFFLElBQUk7U0FDbkIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELDBCQUEwQixDQUFDLFdBQWdCO1FBQ3pDLElBQUksV0FBVyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLDJDQUEyQyxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQztZQUNyRixNQUFNLG9CQUFvQixHQUFHLFdBQVcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQywyQ0FBMkMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBa0MsRUFBRSxDQUFrQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsU0FBdUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDLENBQUM7WUFDbFUsT0FBTyxDQUFDLENBQUMsb0JBQW9CLEVBQUUsa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDekQsQ0FBQztRQUNELE9BQU8sQ0FBQyxDQUFDO0lBQ1gsQ0FBQzsrR0E3ZFUsb0JBQW9CO21HQUFwQixvQkFBb0Isd0VBakVwQixDQUFDLFFBQVEsQ0FBQyxpREFDWDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3RFQsc0hBNURTLFlBQVksa0lBQUUsWUFBWSxxSkFBRSxpQkFBaUIsOEJBQUUsZUFBZSwyRkFBRSxtQkFBbUIsOEJBQUUsZUFBZSw4QkFBRSxjQUFjLDhCQUFFLGVBQWUsd1VBQzVILFlBQVksd25TQUFrQixhQUFhLG1MQUFDLGdCQUFnQjs7NEZBbUVwRSxvQkFBb0I7a0JBdkVoQyxTQUFTOytCQUNFLDJCQUEyQixjQUN6QixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsWUFBWSxFQUFFLGlCQUFpQixFQUFFLGVBQWUsRUFBRSxtQkFBbUIsRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLGVBQWU7d0JBQzdJLGVBQWUsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFDLGFBQWEsRUFBQyxnQkFBZ0I7cUJBQzlFLGFBQ1UsQ0FBQyxRQUFRLENBQUMsWUFDWDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3RFQ7O0FBb2ZILFNBQVMsV0FBVyxDQUFDLEdBQVEsRUFBRSxTQUFjLEVBQUUsUUFBYSxFQUFFLE1BQWM7SUFDMUUsS0FBSyxNQUFNLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUN0QixJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN0QixJQUFJLE1BQU0sS0FBSyxNQUFNLEVBQUUsQ0FBQztnQkFDdEIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUM7b0JBQzVCLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQzFCLENBQUM7cUJBQU0sSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssU0FBUyxFQUFFLENBQUM7b0JBQ2xDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDbEMsQ0FBQztxQkFBTSxDQUFDO29CQUNOLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUN4QixDQUFDO1lBQ0gsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxRQUFRLENBQUM7WUFDdEIsQ0FBQztZQUVELE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUNELElBQUksT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssUUFBUSxJQUFJLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUN0RCxNQUFNLE1BQU0sR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7WUFDbEUsSUFBSSxNQUFNO2dCQUFFLE9BQU8sSUFBSSxDQUFDO1FBQzFCLENBQUM7SUFDSCxDQUFDO0lBQ0QsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBRUQsU0FBUyxhQUFhLENBQUMsR0FBUSxFQUFFLFNBQWM7SUFDN0MsS0FBSyxNQUFNLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUN0QixJQUFJLEdBQUcsS0FBSyxTQUFTO1lBQUUsT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdkMsSUFBSSxPQUFPLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUNqQyxNQUFNLE1BQU0sR0FBRyxhQUFhLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQ2xELElBQUksTUFBTTtnQkFBRSxPQUFPLE1BQU0sQ0FBQztRQUM1QixDQUFDO0lBQ0gsQ0FBQztJQUNELE9BQU8sU0FBUyxDQUFDO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGaWVsZFR5cGUgfSBmcm9tICdAbmd4LWZvcm1seS9tYXRlcmlhbCc7XG5pbXBvcnQgeyBNYXREaWFsb2csIE1hdERpYWxvZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBNYXRUYWJsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYmxlJztcbmltcG9ydCB7IE1hdFNuYWNrQmFyLCBNYXRTbmFja0Jhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUsIERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZpZWxkQXJyYXlUeXBlLCBGb3JtbHlNb2R1bGUgfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBUYWJ1bGFyRm9ybURpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vdGFidWxhci1mb3JtLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSwgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgQWdHcmlkTW9kdWxlIH0gZnJvbSAnYWctZ3JpZC1hbmd1bGFyJztcbmltcG9ydCB7IENvbERlZiB9IGZyb20gJ2FnLWdyaWQtY29tbXVuaXR5JztcbmltcG9ydCB7IEN1c3RvbUZvcm1seUZpZWxkQ29uZmlnIH0gZnJvbSAnLi4vbW9kZWxzL2N1c3RvbS1mb3JtLWZpZWxkLm1vZGVsJztcbmltcG9ydCB7IEdyaWRBcGksIFJvd1NlbGVjdGVkRXZlbnQgfSBmcm9tICdhZy1ncmlkLWNvbW11bml0eSc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XG5pbXBvcnQgeyBkZWVwRXF1YWwsIGZsYXR0ZW5Kc29uIH0gZnJvbSAnLi4vdXRpbHMvZm9ybWx5LnV0aWxzJztcbmltcG9ydCB7IFZpZXdGaWxlRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi92aWV3LWZpbGUtZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb25maXJtYXRpb25EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9jb25maXJtYXRpb24tZGlhbG9nL2NvbmZpcm1hdGlvbi1kaWFsb2cuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbXUtZm9ybWx5LWFkZC1kaWFsb2ctdHlwZScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvcm1seU1vZHVsZSwgTWF0U25hY2tCYXJNb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSwgTWF0RGlhbG9nTW9kdWxlLCBNYXRUYWJsZU1vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1hdERpYWxvZ01vZHVsZSwgQWdHcmlkTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGUsTWF0SWNvbk1vZHVsZSxNYXRUb29sdGlwTW9kdWxlXG4gIF0sXG4gIHByb3ZpZGVyczogW0RhdGVQaXBlXSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LXN0YXJ0IG10LTIgbXItMiBpdGVtcy1jZW50ZXJcIj5cbiAgICAgIEBpZihzZWxlY3RlZFJvd0NvdW50ID4gMCkge1xuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgKm5nSWY9XCIhZmllbGQucHJvcHM/LlsnaGlkZURlbGV0ZSddXCJcbiAgICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAoY2xpY2spPVwicmVtb3ZlU2VsZWN0ZWRSb3dzKClcIlxuICAgICAgICAgIG1hdFRvb2x0aXA9XCJ7eyBmaWVsZC5wcm9wcz8uWydkZWxldGVCdXR0b25Ub29sdGlwJ118dHJhbnNsYXRlIH19XCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNCdXR0b25zRGlzYWJsZWRcIlxuICAgICAgICAgID5cbiAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImljb25cIj57eyBmaWVsZC5wcm9wcz8uWydkZWxldGVCdXR0b25JY29uJ10gfX08L21hdC1pY29uPlxuICAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgPGJ1dHRvbiBcbiAgICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgICAqbmdJZj1cIiFmaWVsZC5wcm9wcz8uWydoaWRlRWRpdCddXCJcbiAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAoY2xpY2spPVwiZWRpdERpYWxvZygpXCJcbiAgICAgICAgICBtYXRUb29sdGlwPVwie3sgZmllbGQucHJvcHM/LlsnZWRpdEJ1dHRvblRvb2x0aXAnXSB8IHRyYW5zbGF0ZX19XCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNCdXR0b25zRGlzYWJsZWRcIj5cbiAgICAgICAgICA8bWF0LWljb24+XG4gICAgICAgICAgICB7eyBmaWVsZC5wcm9wcz8uWydlZGl0QnV0dG9uSWNvbiddIH19XG4gICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICB9XG4gICAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwiIWZpZWxkLnByb3BzPy5bJ2hpZGVBZGQnXSAmJiAocHJvcHNbJ21heFJvd3MnXSA/IHJvd0RhdGEubGVuZ3RoIDwgZ2V0TWF4Um93cygpIDogdHJ1ZSlcIlxuICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAoY2xpY2spPVwib3BlbkRpYWxvZygpXCJcbiAgICAgICAgbWF0VG9vbHRpcD1cInt7IGZpZWxkLnByb3BzPy5bJ2FkZEJ1dHRvblRvb2x0aXAnXSB8IHRyYW5zbGF0ZX19XCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImlzQnV0dG9uc0Rpc2FibGVkXCJcbiAgICAgID5cbiAgICAgICAgPG1hdC1pY29uPlxuICAgICAgICAgIHt7IGZpZWxkLnByb3BzPy5bJ2FkZEJ1dHRvbkljb24nXSB9fVxuICAgICAgICA8L21hdC1pY29uPlxuICAgICAgICA8c3Bhbj57e2ZpZWxkLnByb3BzPy5bJ2FkZEJ0bkxhYmVsJ10gfCB0cmFuc2xhdGV9fTwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgICAgIDxhZy1ncmlkLWFuZ3VsYXJcbiAgICAgICAgICAgIGNsYXNzPVwiYWctdGhlbWUtYWxwaW5lXCJcbiAgICAgICAgICAgIFtyb3dEYXRhXT1cInJvd0RhdGFcIlxuICAgICAgICAgICAgW2Zvcm1seUF0dHJpYnV0ZXNdPVwiZmllbGRcIlxuICAgICAgICAgICAgW2NvbHVtbkRlZnNdPVwiY29sdW1uRGVmc1wiXG4gICAgICAgICAgICBbZGVmYXVsdENvbERlZl09XCJkZWZhdWx0Q29sRGVmXCJcbiAgICAgICAgICAgIFtzdXBwcmVzc1Jvd0NsaWNrU2VsZWN0aW9uXT1cInRydWVcIlxuICAgICAgICAgICAgcm93U2VsZWN0aW9uPVwibXVsdGlwbGVcIlxuICAgICAgICAgICAgKGdyaWRSZWFkeSk9XCJvbkdyaWRSZWFkeSgkZXZlbnQpXCJcbiAgICAgICAgICAgIFtkb21MYXlvdXRdPVwicm93RGF0YS5sZW5ndGggPiA1ID8gJ25vcm1hbCcgOiAnYXV0b0hlaWdodCdcIlxuICAgICAgICAgICAgKHJvd1NlbGVjdGVkKT1cIm9uUm93U2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICBbc3R5bGUuaGVpZ2h0XT1cInJvd0RhdGEubGVuZ3RoID4gNSA/ICczMDBweCcgOiAnYXV0bydcIlxuICAgICAgICAgICAgW2dldFJvd1N0eWxlXT1cImdldFJvd1N0eWxlXCJcbiAgICAgICAgICAgIFtncmlkT3B0aW9uc109XCJ7IHN1cHByZXNzTW92YWJsZUNvbHVtbnMgOiB0cnVlIH1cIlxuICAgICAgICAgICAgPlxuICAgICAgICA8L2FnLWdyaWQtYW5ndWxhcj5cbiAgYCxcbiAgc3R5bGVzOiBbYFxuICAgIGFnLWdyaWQtYW5ndWxhciB7XG4gICAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICBgXVxufSlcbmV4cG9ydCBjbGFzcyBUYWJ1bGFyRm9ybUNvbXBvbmVudCBleHRlbmRzIEZpZWxkQXJyYXlUeXBlPEN1c3RvbUZvcm1seUZpZWxkQ29uZmlnPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHNlbGVjdGVkUm93Q291bnQgPSAwO1xuICBpc0J1dHRvbnNEaXNhYmxlZCA9IGZhbHNlO1xuICBjb2x1bW5EZWZzOiBDb2xEZWZbXSA9IFtdO1xuICByb3dEYXRhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+W10gPSBbXTtcbiAgZ3JpZEFwaSE6IEdyaWRBcGk7XG4gIGRlZmF1bHRDb2xEZWYgPSB7XG4gICAgc29ydGFibGU6IHRydWUsXG4gICAgZmlsdGVyOiB0cnVlLFxuICAgIHJlc2l6YWJsZTogdHJ1ZSxcbiAgICBmbGV4OiAxLFxuICAgIG1pbldpZHRoOiAxNTAsXG4gICAgd3JhcEhlYWRlclRleHQ6IHRydWUsXG4gICAgYXV0b0hlYWRlckhlaWdodDogdHJ1ZVxuICB9O1xuICBvbGRWYWx1ZSE6IGFueTtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBkaWFsb2c6IE1hdERpYWxvZyxcbiAgICBwcml2YXRlIHNuYWNrQmFyOiBNYXRTbmFja0JhcixcbiAgICBwcml2YXRlIGNkOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBkYXRlUGlwZTogRGF0ZVBpcGUpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYodGhpcy5vcHRpb25zLmZvcm1TdGF0ZS5zaG93T2xkVmFsdWVzKSB7XG4gICAgICBjb25zdCBvbGRWYWx1ZXMgPSBmbGF0dGVuSnNvbih0aGlzLm9wdGlvbnMuZm9ybVN0YXRlLm9sZFZhbHVlcyk7XG4gICAgICB0aGlzLm9sZFZhbHVlID0gb2xkVmFsdWVzPy5bdGhpcy5maWVsZC5rZXkgYXMgc3RyaW5nXTtcbiAgICB9XG5cbiAgICBpZih0aGlzLmZpZWxkPy5lbmFibGVkRm9yUm9sZXMpIHtcbiAgICAgIHRoaXMuaXNCdXR0b25zRGlzYWJsZWQgPSAhdGhpcy5vcHRpb25zLmZvcm1TdGF0ZT8udXNlclJvbGVzPy5zb21lKChyb2xlOiBhbnkpID0+IHRoaXMuZmllbGQ/LmVuYWJsZWRGb3JSb2xlcz8uaW5jbHVkZXMocm9sZSkpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmZpZWxkPy5wcm9wcz8uWydjb2x1bW5EZWZzJ10pIHtcbiAgICAgIGlmKHRoaXMub3B0aW9ucy5mb3JtU3RhdGU/LnNob3dPbGRWYWx1ZXMpIHtcbiAgICAgICAgdGhpcy5jb2x1bW5EZWZzID0gW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGhlYWRlckNoZWNrYm94U2VsZWN0aW9uOiAhdGhpcy5pc0J1dHRvbnNEaXNhYmxlZCxcbiAgICAgICAgICAgIGNoZWNrYm94U2VsZWN0aW9uOiAocGFyYW1zKSA9PiB7XG4gICAgICAgICAgICAgIHJldHVybiAhdGhpcy5pc0J1dHRvbnNEaXNhYmxlZCAmJiAhcGFyYW1zLmRhdGEuaXNPbGREYXRhXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgaGVhZGVyTmFtZTogJycsXG4gICAgICAgICAgICB3aWR0aDogNDAsXG4gICAgICAgICAgICBtYXhXaWR0aDogNDAsXG4gICAgICAgICAgICBmaWx0ZXI6IGZhbHNlLFxuICAgICAgICAgICAgcmVzaXphYmxlOmZhbHNlXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBoZWFkZXJOYW1lOiAnJyxcbiAgICAgICAgICAgIHdpZHRoOiA0MCxcbiAgICAgICAgICAgIG1heFdpZHRoOiA2MCxcbiAgICAgICAgICAgIGZpbHRlcjogZmFsc2UsXG4gICAgICAgICAgICByZXNpemFibGU6ZmFsc2UsXG4gICAgICAgICAgICBmaWVsZDogJ2lzQ2hhbmdlZCcsXG4gICAgICAgICAgICBjZWxsUmVuZGVyZXI6IChwYXJhbXM6IGFueSkgPT4ge1xuICAgICAgICAgICAgICBpZiAocGFyYW1zLnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGA8aSBjbGFzcz1cIm1hdGVyaWFsLWljb25zIGN1cnNvci1wb2ludGVyIG10LVs5cHhdXCIgc3R5bGU9XCJjb2xvcjogcmVkO1wiPmVkaXQ8L2k+YDtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gYDxpIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMgY3Vyc29yLXBvaW50ZXIgbXQtWzlweF1cIiBzdHlsZT1cImNvbG9yOiBibGFjaztcIj52aXNpYmlsaXR5PC9pPmA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBvbkNlbGxDbGlja2VkOiAocGFyYW1zKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMuc2hvd0NoYW5nZWRWYWx1ZXMocGFyYW1zKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB0b29sdGlwVmFsdWVHZXR0ZXI6IChwYXJhbXM6IGFueSkgPT4ge1xuICAgICAgICAgICAgICBpZiAocGFyYW1zLnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuICdUaGlzIHJvdyBkYXRhIGlzIGNoYW5nZWQsIFBsZWFzZSBjbGljayBvbiB0aGlzIHRvIHZpZXcgdGhlIGNoYW5nZWQgZGV0YWlscyc7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgcmV0dXJuICcnO1xuICAgICAgICAgICAgfSxcblxuICAgICAgICAgIH0sXG4gICAgICAgICAgLi4udGhpcy50cmFuc2xhdGVMYWJlbHModGhpcy5maWVsZD8ucHJvcHM/LlsnY29sdW1uRGVmcyddKVxuICAgICAgICBdXG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmNvbHVtbkRlZnMgPSBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgaGVhZGVyQ2hlY2tib3hTZWxlY3Rpb246ICF0aGlzLmlzQnV0dG9uc0Rpc2FibGVkLFxuICAgICAgICAgICAgY2hlY2tib3hTZWxlY3Rpb246ICF0aGlzLmlzQnV0dG9uc0Rpc2FibGVkLFxuICAgICAgICAgICAgaGVhZGVyTmFtZTogJycsXG4gICAgICAgICAgICB3aWR0aDogNDAsXG4gICAgICAgICAgICBtYXhXaWR0aDogNDAsXG4gICAgICAgICAgICBmaWx0ZXI6IGZhbHNlLFxuICAgICAgICAgICAgcmVzaXphYmxlOmZhbHNlXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBoZWFkZXJOYW1lOiAnJyxcbiAgICAgICAgICAgIGZpZWxkOiAndmlldycsXG4gICAgICAgICAgICB3aWR0aDogNTAsXG4gICAgICAgICAgICBtYXhXaWR0aDogNTAsXG4gICAgICAgICAgICBmaWx0ZXI6IGZhbHNlLFxuICAgICAgICAgICAgcmVzaXphYmxlOmZhbHNlLFxuICAgICAgICAgICAgY2VsbFJlbmRlcmVyOiAoKSA9PiB7XG4gICAgICAgICAgICAgIHJldHVybiBgPGkgY2xhc3M9XCJtYXRlcmlhbC1pY29ucyBjdXJzb3ItcG9pbnRlciBtdC1bOXB4XVwiIHN0eWxlPVwiY29sb3I6IGJsYWNrO1wiPnZpc2liaWxpdHk8L2k+YDtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBvbkNlbGxDbGlja2VkOiAocGFyYW1zKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMuc2hvd0NoYW5nZWRWYWx1ZXMocGFyYW1zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgIC4uLnRoaXMudHJhbnNsYXRlTGFiZWxzKHRoaXMuZmllbGQ/LnByb3BzPy5bJ2NvbHVtbkRlZnMnXSlcbiAgICAgICAgXTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5jb2x1bW5EZWZzID0gdGhpcy5jb2x1bW5EZWZzPy5tYXAoY29sRGVmID0+IHtcbiAgICAgICAgaWYgKGNvbERlZj8udHlwZSA9PT0gJ2RhdGUnKSB7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLmNvbERlZixcbiAgICAgICAgICAgIHZhbHVlRm9ybWF0dGVyOiAoKHBhcmFtczphbnkpID0+IHRoaXMuZm9ybWF0RGF0ZShwYXJhbXMudmFsdWUpKVxuICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgICAgaWYoY29sRGVmPy5maWVsZD8uaW5jbHVkZXMoJ0ZpbGVOYW1lJykpIHtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4uY29sRGVmLFxuICAgICAgICAgICAgY2VsbFJlbmRlcmVyOiAocGFyYW1zOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgaWYocGFyYW1zLnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGA8YSBocmVmPVwiamF2YXNjcmlwdDp2b2lkKDApXCIgc3R5bGU9XCJjb2xvcjogYmx1ZTsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XCI+XG4gICAgICAgICAgICAgICAgICAke3BhcmFtcy52YWx1ZX1cbiAgICAgICAgICAgICAgICA8L2E+YDtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBvbkNlbGxDbGlja2VkOiAocGFyYW1zKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMub25GaWxlbmFtZUNsaWNrKHBhcmFtcyk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY29sRGVmO1xuICAgICAgfSlcbiAgICAgIGNvbnN0IGdyaWREYXRhID0gZmluZE5lc3RlZEtleSh0aGlzLmZpZWxkLnBhcmVudD8ubW9kZWwsIHRoaXMuZmllbGQua2V5KTtcbiAgICAgIHRoaXMucm93RGF0YSA9IEFycmF5LmlzQXJyYXkoZ3JpZERhdGEpID8gZ3JpZERhdGEgOiBbXTtcbiAgICAgIGlmKHRoaXMuZmllbGQucHJvcHM/Llsncm93RGF0YSddKSB7XG4gICAgICAgIHRoaXMuZmllbGQucHJvcHM/Llsncm93RGF0YSddPy5hc09ic2VydmFibGUoKT8ucGlwZSgpPy5zdWJzY3JpYmUoKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIGlmKGRhdGFbMF0/LmlkKSB7XG4gICAgICAgICAgICBpZih0aGlzLnJvd0RhdGEuZmluZCgocm93OiBhbnkpID0+IHJvdy5pZCA9PSBkYXRhWzBdPy5pZCkpIHtcbiAgICAgICAgICAgICAgdGhpcy5yb3dEYXRhID0gWy4uLnRoaXMucm93RGF0YV1cbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgIHRoaXMucm93RGF0YSA9IFsuLi50aGlzLnJvd0RhdGEsIC4uLmRhdGFdO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICAgIGlmKHRoaXMuZmllbGQucHJvcHM/LlsndXBkYXRlUm93RGF0YSddKSB7XG4gICAgICAgIHRoaXMuZmllbGQucHJvcHM/LlsndXBkYXRlUm93RGF0YSddPy5hc09ic2VydmFibGUoKT8ucGlwZSgpPy5zdWJzY3JpYmUoKGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIGNvbnN0IHVwZGF0ZWRSb3dzID0gdGhpcy5yb3dEYXRhLm1hcCgocm93OiBhbnkpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG5ld1JvdyA9IGRhdGEuZmluZCgoZWFjaFJvdzogYW55KSA9PiBlYWNoUm93LmlkID09IHJvdy5pZCk7XG4gICAgICAgICAgICBjb25zdCBuZXdSb3dEYXRhID0ge1xuICAgICAgICAgICAgICAuLi5yb3csXG4gICAgICAgICAgICAgIC4uLihuZXdSb3cgPz8ge30pXG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgcmV0dXJuIG5ld1Jvd0RhdGE7XG4gICAgICAgICAgfSk7XG4gICAgICAgICAgdGhpcy5yb3dEYXRhID0gWy4uLnVwZGF0ZWRSb3dzXTtcbiAgICAgICAgICB0aGlzLmdyaWRBcGk/LnNlbGVjdEFsbCgpO1xuICAgICAgICAgIHRoaXMuZ3JpZEFwaT8uZGVzZWxlY3RBbGwoKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIG9uR3JpZFJlYWR5KHBhcmFtczogYW55KTogdm9pZCB7XG4gICAgdGhpcy5ncmlkQXBpID0gcGFyYW1zLmFwaTtcbiAgICB0aGlzLnVwZGF0ZVNlbGVjdGVkUm93Q291bnQoKTtcbiAgfVxuXG4gIG9wZW5EaWFsb2coKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZmllbGQgJiYgdGhpcy5maWVsZC5wcm9wcz8uWydkaWFsb2dPcGVuZWQnXSkge1xuICAgICAgdGhpcy5maWVsZC5wcm9wcz8uWydkaWFsb2dPcGVuZWQnXShldmVudCwgdGhpcy5maWVsZCk7XG4gICAgfVxuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oVGFidWxhckZvcm1EaWFsb2dDb21wb25lbnQsIHtcbiAgICAgIHdpZHRoOiB0aGlzLnByb3BzPy5bJ2RpYWxvZ1dpZHRoJ10gPz8gJzc1JScsXG4gICAgICBtYXhXaWR0aDogJzEwMCUnLFxuICAgICAgaGVpZ2h0OiB0aGlzLnByb3BzPy5bJ2RpYWxvZ0hlaWdodCddID8/ICc4NSUnLFxuICAgICAgZGF0YTogeyBmaWVsZENvbmZpZzogdGhpcy5maWVsZC5maWVsZEFycmF5LmZpZWxkR3JvdXAsIGxhYmVsOiB0aGlzLmZpZWxkLnByb3BzPy5hZGRMYWJlbD8/J0FkZCcsIGZvcm1TdGF0ZTogdGhpcy5vcHRpb25zPy5mb3JtU3RhdGUsIHRhYnVsYXJQcm9wczogdGhpcy5maWVsZC5wcm9wcyxcbiAgICAgICAgcGFyZW50TW9kZWw6IHRoaXMuZmllbGQucGFyZW50Py5tb2RlbFxuICAgICAgfSxcbiAgICAgIGRpc2FibGVDbG9zZTogdHJ1ZSxcbiAgICAgIGF1dG9Gb2N1czogZmFsc2VcbiAgICB9KTtcblxuICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZShyZXN1bHQgPT4ge1xuICAgICAgaWYgKHJlc3VsdCkge1xuICAgICAgICByZXN1bHQuaWQgPSB0aGlzLmdlbmVyYXRlUmFuZG9tTnVtYmVyKCk7XG4gICAgICAgIGlmKHRoaXMub3B0aW9ucy5mb3JtU3RhdGUuc2hvd09sZFZhbHVlcykge1xuICAgICAgICAgIHJlc3VsdC5hZGRlZE5ld1JvdyA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMucHJvcHM/LlsnaXNTZXF1ZW50aWFsTnVtR2VuZXJhdGlvblJlcXVpcmVkJ10pIHtcbiAgICAgICAgICByZXN1bHQuc2VxdWVudGlhbE51bWJlcklkID0gYDAwMCR7dGhpcy5nZW5lcmF0ZVNlcXVlbnRpYWxJZE51bWJlcih0aGlzLmZpZWxkLnBhcmVudD8ubW9kZWwpfWA7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5hZGRSb3dUb0dyaWQocmVzdWx0KTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmZpZWxkICYmIHRoaXMuZmllbGQucHJvcHM/LlsnZGlhbG9nQ2xvc2VkJ10pIHtcbiAgICAgICAgdGhpcy5maWVsZC5wcm9wcz8uWydkaWFsb2dDbG9zZWQnXShldmVudCwgdGhpcy5maWVsZCk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBkaWFsb2dSZWYuY29tcG9uZW50SW5zdGFuY2Uuc2F2ZURhdGEuc3Vic2NyaWJlKChkYXRhOiBhbnkpID0+IHtcbiAgICAgIGRhdGEuaWQgPSB0aGlzLmdlbmVyYXRlUmFuZG9tTnVtYmVyKCk7XG4gICAgICBpZih0aGlzLm9wdGlvbnMuZm9ybVN0YXRlLnNob3dPbGRWYWx1ZXMpIHtcbiAgICAgICAgZGF0YS5hZGRlZE5ld1JvdyA9IHRydWU7XG4gICAgICB9XG4gICAgICB1cGRhdGVNb2RlbCh0aGlzLmZpZWxkLnBhcmVudD8ubW9kZWwsIHRoaXMuZmllbGQua2V5LCBkYXRhLCAncHVzaCcpO1xuICAgICAgdGhpcy5hZGRSb3dUb0dyaWQoZGF0YSk7XG4gICAgfSk7XG4gIH1cblxuICBnZW5lcmF0ZVJhbmRvbU51bWJlcigpOiBudW1iZXIge1xuICAgIHJldHVybiBNYXRoLmZsb29yKDEwMDAgKyBNYXRoLnJhbmRvbSgpICogOTAwMCk7XG4gIH1cblxuICBhZGRSb3dUb0dyaWQoZGF0YTogYW55KTogdm9pZCB7XG4gICAgaWYgKHRoaXMucm93RGF0YS5sZW5ndGggPiB0aGlzLmdldE1heFJvd3MoKSkge1xuICAgICAgdGhpcy5zbmFja0Jhci5vcGVuKGBDYW5ub3QgYWRkIG1vcmUgdGhhbiAke3RoaXMuZ2V0TWF4Um93cygpfSByb3dzYCwgJ0Nsb3NlJywge1xuICAgICAgICBkdXJhdGlvbjogMzAwMFxuICAgICAgfSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGZvciAoY29uc3Qga2V5IGluIGRhdGEpIHtcbiAgICAgIGlmIChkYXRhW2tleV0gaW5zdGFuY2VvZiBPYmplY3QpIHtcbiAgICAgICAgaWYgKGRhdGFba2V5XT8uZmlsZU5hbWUpIHtcbiAgICAgICAgICBkYXRhW2Ake2tleX1GaWxlTmFtZWBdID0gZGF0YVtrZXldLmZpbGVOYW1lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGlmICh0aGlzLmNvbHVtbkRlZnMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aGlzLmNvbHVtbkRlZnMgPSBbXG4gICAgICAgIHtcbiAgICAgICAgICBoZWFkZXJDaGVja2JveFNlbGVjdGlvbjogdHJ1ZSxcbiAgICAgICAgICBjaGVja2JveFNlbGVjdGlvbjogdHJ1ZSxcbiAgICAgICAgICBoZWFkZXJOYW1lOiAnJyxcbiAgICAgICAgICB3aWR0aDogNDAsXG4gICAgICAgICAgbWF4V2lkdGg6IDQwLFxuICAgICAgICAgIHJlc2l6YWJsZTpmYWxzZSxcbiAgICAgICAgICBmaWx0ZXI6IGZhbHNlXG4gICAgICAgIH0sXG4gICAgICAgIC4uLk9iamVjdC5rZXlzKGRhdGEpXG4gICAgICAgICAgLmZpbHRlcihrZXkgPT4ge1xuICAgICAgICAgICAgY29uc3QgZmllbGRDb25maWcgPSB0aGlzLmZpbmRGaWVsZENvbmZpZ0J5S2V5KHRoaXMuZmllbGQuZmllbGRHcm91cCB8fCBbXSwga2V5KTtcbiAgICAgICAgICAgIHJldHVybiBrZXkgIT09ICdpZCcgJiYgZmllbGRDb25maWc/LnR5cGUgIT09ICdtdS1idXR0b24nO1xuICAgICAgICAgIH0pXG4gICAgICAgICAgLm1hcChrZXkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbGFiZWwgPSB0aGlzLmZpbmRMYWJlbEluTmVzdGVkRmllbGRzKHRoaXMuZmllbGQuZmllbGRHcm91cCB8fCBbXSwga2V5KTtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgIGZpZWxkOiBrZXksXG4gICAgICAgICAgICAgIGhlYWRlck5hbWU6IGxhYmVsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH0pXG4gICAgICBdO1xuICAgIH1cbiAgICBpZih0aGlzLnJvd0RhdGEuZmluZCgocm93OiBhbnkpID0+IHJvdy5pZCA9PSBkYXRhLmlkKSkge1xuICAgICAgdGhpcy5yb3dEYXRhID0gWy4uLnRoaXMucm93RGF0YV1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5yb3dEYXRhID0gWy4uLnRoaXMucm93RGF0YSwgZGF0YV07XG4gICAgfVxuICAgIHRoaXMuYWRkKG51bGwsIGRhdGEpO1xuICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIHRoaXMuc25hY2tCYXIub3BlbihcbiAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdNTkxfVEFCVUxBUl9GT1JNLkRBVEFfQURERURfU1VDQ0VTU0ZVTExZJyksXG4gICAgICAnQ2xvc2UnLFxuICAgICAge1xuICAgICAgICBkdXJhdGlvbjogMCxcbiAgICAgIH1cbiAgICApO1xuICAgIHRoaXMuZ3JpZEFwaS5zZWxlY3RBbGwoKTtcbiAgICB0aGlzLmdyaWRBcGkuZGVzZWxlY3RBbGwoKTtcbiAgfVxuXG4gIGZpbmRGaWVsZENvbmZpZ0J5S2V5KGZpZWxkQ29uZmlnczogYW55W10sIGtleTogc3RyaW5nKTogYW55IHtcbiAgICBmb3IgKGNvbnN0IGZpZWxkIG9mIGZpZWxkQ29uZmlncykge1xuICAgICAgaWYgKGZpZWxkLmtleSA9PT0ga2V5KSB7XG4gICAgICAgIHJldHVybiBmaWVsZDtcbiAgICAgIH1cbiAgICAgIGlmIChmaWVsZC5maWVsZEdyb3VwKSB7XG4gICAgICAgIGNvbnN0IGZvdW5kRmllbGQgPSB0aGlzLmZpbmRGaWVsZENvbmZpZ0J5S2V5KGZpZWxkLmZpZWxkR3JvdXAsIGtleSk7XG4gICAgICAgIGlmIChmb3VuZEZpZWxkKSB7XG4gICAgICAgICAgcmV0dXJuIGZvdW5kRmllbGQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBnZXRNYXhSb3dzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMudG9bJ21heFJvd3MnXTtcbiAgfVxuXG4gIGZpbmRMYWJlbEluTmVzdGVkRmllbGRzKGZpZWxkQ29uZmlnczogYW55W10sIGtleTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBmb3IgKGNvbnN0IGZpZWxkIG9mIGZpZWxkQ29uZmlncykge1xuICAgICAgaWYgKGZpZWxkLmtleSA9PT0ga2V5KSB7XG4gICAgICAgIHJldHVybiBmaWVsZC5wcm9wcz8ubGFiZWwgfHwga2V5O1xuICAgICAgfVxuICAgICAgaWYgKGZpZWxkLmZpZWxkR3JvdXApIHtcbiAgICAgICAgY29uc3QgbGFiZWwgPSB0aGlzLmZpbmRMYWJlbEluTmVzdGVkRmllbGRzKGZpZWxkLmZpZWxkR3JvdXAsIGtleSk7XG4gICAgICAgIGlmIChsYWJlbCkge1xuICAgICAgICAgIHJldHVybiBsYWJlbDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4ga2V5O1xuICB9XG5cbiAgcmVtb3ZlU2VsZWN0ZWRSb3dzKCkge1xuICAgIGlmKHRoaXMub3B0aW9ucy5mb3JtU3RhdGUuc2hvd09sZFZhbHVlcykge1xuICAgICAgY29uc3Qgc2VsZWN0ZWREYXRhID0gdGhpcy5ncmlkQXBpLmdldFNlbGVjdGVkTm9kZXMoKS5tYXAobm9kZSA9PiBub2RlLmRhdGEpO1xuICAgICAgaWYoIXNlbGVjdGVkRGF0YS5ldmVyeShkYXRhID0+IGRhdGEuYWRkZWROZXdSb3cpKSB7XG4gICAgICAgIHRoaXMuc25hY2tCYXIub3BlbihcbiAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgICAgICdNTkxfVEFCVUxBUl9GT1JNLk5PX0FDQ0VTU19UT19ERUxFVEVfT0xEX1JFQ09SRFMnXG4gICAgICAgICAgKSxcbiAgICAgICAgICAnT2snLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGR1cmF0aW9uOiAwLFxuICAgICAgICAgICAgcGFuZWxDbGFzczogWydlcnJvci1zbmFja2JhciddLFxuICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cbiAgICBjb25zdCBkaWFsb2cgPSB0aGlzLmRpYWxvZy5vcGVuKENvbmZpcm1hdGlvbkRpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgd2lkdGg6ICc1MCUnLFxuICAgICAgaGVpZ2h0OiAnMjglJyxcbiAgICAgIGRhdGE6IHsgdGl0bGU6ICdBcmUgeW91IHN1cmUgdG8gZGVsZXRlPyd9XG4gICAgfSk7XG4gICAgZGlhbG9nLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKChyZXMpID0+IHtcbiAgICAgIGlmKHJlcykge1xuICAgICAgICBjb25zdCBzZWxlY3RlZE5vZGVzID0gdGhpcy5ncmlkQXBpLmdldFNlbGVjdGVkTm9kZXMoKTtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWREYXRhID0gc2VsZWN0ZWROb2Rlcy5tYXAobm9kZSA9PiBub2RlLmRhdGEpO1xuICAgICAgICB0aGlzLnJvd0RhdGEgPSB0aGlzLnJvd0RhdGEuZmlsdGVyKHJvdyA9PiAhc2VsZWN0ZWREYXRhLmluY2x1ZGVzKHJvdykpO1xuICAgICAgICB1cGRhdGVNb2RlbCh0aGlzLmZpZWxkLnBhcmVudD8ubW9kZWwsIHRoaXMuZmllbGQua2V5LCB0aGlzLnJvd0RhdGEsICdhc3NpZ24nKVxuICAgIFxuICAgICAgICB0aGlzLmdyaWRBcGkuYXBwbHlUcmFuc2FjdGlvbih7XG4gICAgICAgICAgcmVtb3ZlOiBzZWxlY3RlZERhdGFcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMudXBkYXRlU2VsZWN0ZWRSb3dDb3VudCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgb25Sb3dTZWxlY3RlZChldmVudDogUm93U2VsZWN0ZWRFdmVudCk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlU2VsZWN0ZWRSb3dDb3VudCgpO1xuICB9XG5cbiAgdXBkYXRlU2VsZWN0ZWRSb3dDb3VudCgpOiB2b2lkIHtcbiAgICB0aGlzLnNlbGVjdGVkUm93Q291bnQgPSB0aGlzLmdyaWRBcGkuZ2V0U2VsZWN0ZWROb2RlcygpLmxlbmd0aDtcbiAgfVxuXG4gIHRyYW5zbGF0ZUxhYmVscyhcbiAgICBjb2x1bW5EZWZzOiBhbnlbXVxuICApOiBhbnlbXSB7XG4gICAgcmV0dXJuIGNvbHVtbkRlZnMubWFwKChjb2x1bW4pID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLmNvbHVtbixcbiAgICAgICAgaGVhZGVyTmFtZTogdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoY29sdW1uLmhlYWRlck5hbWUpXG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIGVkaXREaWFsb2coKSB7XG4gICAgY29uc3Qgc2VsZWN0ZWROb2RlcyA9IHRoaXMuZ3JpZEFwaS5nZXRTZWxlY3RlZE5vZGVzKCk7XG4gICAgY29uc3Qgc2VsZWN0ZWREYXRhID0gc2VsZWN0ZWROb2Rlcy5tYXAobm9kZSA9PiBub2RlLmRhdGEpO1xuICAgIGlmIChzZWxlY3RlZERhdGE/Lmxlbmd0aCA+IDEpIHtcbiAgICAgIHRoaXMuc25hY2tCYXIub3BlbihcbiAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoXG4gICAgICAgICAgJ01OTF9UQUJVTEFSX0ZPUk0uTVVMVElfUk9XX0VESVRfRVJST1InXG4gICAgICAgIClcbiAgICAgICAgLCAnT2snLCB7XG4gICAgICAgIGR1cmF0aW9uOiA1MDAwLFxuICAgICAgfSk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmICh0aGlzLmZpZWxkICYmIHRoaXMuZmllbGQucHJvcHM/LlsnZGlhbG9nT3BlbmVkJ10pIHtcbiAgICAgIHRoaXMuZmllbGQucHJvcHM/LlsnZGlhbG9nT3BlbmVkJ10oZXZlbnQsIHRoaXMuZmllbGQpO1xuICAgIH1cbiAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKFRhYnVsYXJGb3JtRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICB3aWR0aDogdGhpcy5wcm9wcz8uWydkaWFsb2dXaWR0aCddID8/ICc3NSUnLFxuICAgICAgbWF4V2lkdGg6ICcxMDAlJyxcbiAgICAgIGhlaWdodDogdGhpcy5wcm9wcz8uWydkaWFsb2dIZWlnaHQnXSA/PyAnODUlJyxcbiAgICAgIGRhdGE6IHsgZmllbGRDb25maWc6IHRoaXMuZmllbGQuZmllbGRBcnJheS5maWVsZEdyb3VwLCBsYWJlbDogdGhpcy5maWVsZC5wcm9wcz8uZWRpdExhYmVsPz8nRWRpdCcsIGZvcm1TdGF0ZTogdGhpcy5vcHRpb25zPy5mb3JtU3RhdGUsIHNlbGVjdGVkUm93RGF0YTogc2VsZWN0ZWREYXRhWzBdLCB0YWJ1bGFyUHJvcHM6IHRoaXMuZmllbGQucHJvcHMsIHBhcmVudE1vZGVsOiB0aGlzLmZpZWxkLnBhcmVudD8ubW9kZWwgfSxcbiAgICAgIGRpc2FibGVDbG9zZTogdHJ1ZSxcbiAgICAgIGF1dG9Gb2N1czogZmFsc2VcbiAgICB9KTtcbiAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgdGhpcy5yb3dEYXRhID0gdGhpcy5yb3dEYXRhLm1hcCgocm93UmVjb3JkKSA9PiB7XG4gICAgICAgICAgaWYgKHJvd1JlY29yZD8uWydpZCddID09PSByZXN1bHQ/LmlkKSB7XG4gICAgICAgICAgICBpZih0aGlzLm9wdGlvbnMuZm9ybVN0YXRlPy5zaG93T2xkVmFsdWVzKSB7XG4gICAgICAgICAgICAgIGNvbnN0IG9sZFJvd1ZhbHVlID0gdGhpcy5vbGRWYWx1ZS5maW5kKChyZWNvcmQ6IGFueSkgPT4gcmVjb3JkLmlkID09PSByZXN1bHQ/LmlkKTtcbiAgICAgICAgICAgICAgaWYob2xkUm93VmFsdWUpIHtcbiAgICAgICAgICAgICAgICBvbGRSb3dWYWx1ZVsnaXNDaGFuZ2VkJ10gPSBmYWxzZTtcbiAgICAgICAgICAgICAgICByZXN1bHRbJ2lzQ2hhbmdlZCddID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgY29uc3QgbWVyZ2RPbGQgPSB7XG4gICAgICAgICAgICAgICAgICAuLi5yZXN1bHQsXG4gICAgICAgICAgICAgICAgICAuLi5vbGRSb3dWYWx1ZVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBjb25zdCBlcSA9IGRlZXBFcXVhbChtZXJnZE9sZCwgcmVzdWx0KTtcbiAgICAgICAgICAgICAgICByb3dSZWNvcmRbJ2lzQ2hhbmdlZCddID0gIWVxO1xuICAgICAgICAgICAgICAgIHJlc3VsdFsnaXNDaGFuZ2VkJ10gPSAhZXE7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHVwZGF0ZWRSb3cgPSB7XG4gICAgICAgICAgICAgIC4uLnJvd1JlY29yZCxcbiAgICAgICAgICAgICAgLi4ucmVzdWx0LFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIE9iamVjdC5rZXlzKHVwZGF0ZWRSb3cpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgICAgICAgaWYgKHVwZGF0ZWRSb3dba2V5XSBpbnN0YW5jZW9mIE9iamVjdCkge1xuICAgICAgICAgICAgICAgIGlmICh1cGRhdGVkUm93W2tleV0/LmZpbGVOYW1lKSB7XG4gICAgICAgICAgICAgICAgICB1cGRhdGVkUm93W2Ake2tleX1GaWxlTmFtZWBdID0gdXBkYXRlZFJvd1trZXldLmZpbGVOYW1lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm4gdXBkYXRlZFJvdztcbiAgICAgICAgICB9XG4gICAgICAgICAgcmV0dXJuIHJvd1JlY29yZDtcbiAgICAgICAgfSk7XG4gICAgICAgIHVwZGF0ZU1vZGVsKHRoaXMuZmllbGQucGFyZW50Py5tb2RlbCwgdGhpcy5maWVsZC5rZXksIHRoaXMucm93RGF0YSwgJ2Fzc2lnbicpO1xuICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMudXBkYXRlU2VsZWN0ZWRSb3dDb3VudCgpO1xuICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICBpZiAodGhpcy5maWVsZCAmJiB0aGlzLmZpZWxkLnByb3BzPy5bJ3RhYnVsYXJEYXRhRWRpdGVkJ10pIHtcbiAgICAgICAgdGhpcy5maWVsZC5wcm9wcz8uWyd0YWJ1bGFyRGF0YUVkaXRlZCddKGV2ZW50LCB0aGlzLmZpZWxkKTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLmZpZWxkICYmIHRoaXMuZmllbGQucHJvcHM/LlsnZGlhbG9nQ2xvc2VkJ10pIHtcbiAgICAgICAgdGhpcy5maWVsZC5wcm9wcz8uWydkaWFsb2dDbG9zZWQnXShldmVudCwgdGhpcy5maWVsZCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBmb3JtYXREYXRlKGRhdGU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgaWYoZGF0ZSkge1xuICAgICAgY29uc3QgZCA9IG5ldyBEYXRlKGRhdGUpO1xuICAgICAgY29uc3QgZGF5ID0gU3RyaW5nKGQuZ2V0RGF0ZSgpKS5wYWRTdGFydCgyLCAnMCcpO1xuICAgICAgY29uc3QgbW9udGhOYW1lcyA9IFsnSmFuJywgJ0ZlYicsICdNYXInLCAnQXByJywgJ01heScsICdKdW4nLCAnSnVsJywgJ0F1ZycsICdTZXAnLCAnT2N0JywgJ05vdicsICdEZWMnXTtcbiAgICAgIGNvbnN0IG1vbnRoID0gbW9udGhOYW1lc1tkLmdldE1vbnRoKCldO1xuICAgICAgY29uc3QgeWVhciA9IGQuZ2V0RnVsbFllYXIoKTtcbiAgICAgIHJldHVybiBgJHtkYXl9LSR7bW9udGh9LSR7eWVhcn1gO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gJyc7XG4gICAgfVxuICB9XG5cbiAgb25GaWxlbmFtZUNsaWNrKHBhcmFtczogYW55KSB7XG4gICAgY29uc3QgdXBsb2FkZWRGaWxlTmFtZUtleSA9IE9iamVjdC5rZXlzKHBhcmFtcy5kYXRhKS5maWx0ZXIoa2V5ID0+IGtleS5lbmRzV2l0aCgnRmlsZU5hbWUnKSk7XG4gICAgY29uc3QgdXBsb2FkZWRGaWxlT2JqZWN0S2V5ID0gdXBsb2FkZWRGaWxlTmFtZUtleVswXT8ucmVwbGFjZSgvRmlsZU5hbWUkLywgXCJcIik7XG4gICAgaWYodXBsb2FkZWRGaWxlT2JqZWN0S2V5KSB0aGlzLnZpZXdGaWxlKHBhcmFtcy5kYXRhW3VwbG9hZGVkRmlsZU9iamVjdEtleV0pO1xuICB9XG5cbiAgdmlld0ZpbGUoZWxlbWVudDphbnkpIHtcbiAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nLm9wZW4oVmlld0ZpbGVEaWFsb2dDb21wb25lbnQsIHtcbiAgICAgICAgd2lkdGg6ICc3NSUnLFxuICAgICAgICBtYXhXaWR0aDogJzk1JScsXG4gICAgICAgIGhlaWdodDogJzg1JScsXG4gICAgICAgIGRhdGE6IGVsZW1lbnRcbiAgICAgIH0pO1xuICB9XG5cbiAgc2hvd0NoYW5nZWRWYWx1ZXMocGFyYW1zOiBhbnkpIHtcbiAgICBjb25zdCBmb3JtU3RhdGUgPSB7XG4gICAgICAuLi50aGlzLm9wdGlvbnMuZm9ybVN0YXRlLFxuICAgICAgdXNlclJvbGVzOiBbXVxuICAgIH1cbiAgICB0aGlzLmRpYWxvZy5vcGVuKFRhYnVsYXJGb3JtRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICB3aWR0aDogdGhpcy5wcm9wcz8uWydkaWFsb2dXaWR0aCddID8/ICc3NSUnLFxuICAgICAgbWF4V2lkdGg6ICc5NSUnLFxuICAgICAgaGVpZ2h0OiAnODUlJyxcbiAgICAgIGRhdGE6IHsgZmllbGRDb25maWc6IHRoaXMuZmllbGQuZmllbGRBcnJheS5maWVsZEdyb3VwLCBsYWJlbDogdGhpcy5maWVsZC5wcm9wcz8udmlld0xhYmVsPz8nVmlldycsIGZvcm1TdGF0ZTogZm9ybVN0YXRlLCBzZWxlY3RlZFJvd0RhdGE6IHBhcmFtcy5kYXRhLCBoaWRlVXBkYXRlQnRuOiB0cnVlLCBwYXJlbnRNb2RlbDogdGhpcy5maWVsZC5wYXJlbnQ/Lm1vZGVsLCB0YWJ1bGFyUHJvcHM6IHRoaXMuZmllbGQucHJvcHMgfSxcbiAgICAgIGRpc2FibGVDbG9zZTogdHJ1ZVxuICAgIH0pO1xuICB9XG5cbiAgZ2VuZXJhdGVTZXF1ZW50aWFsSWROdW1iZXIocGFyZW50TW9kZWw6IGFueSkge1xuICAgIGlmIChwYXJlbnRNb2RlbD8uW3RoaXMucHJvcHM/LlsncGFyZW5ldE1vZGVsS2V5VG9HZW5lcmF0ZVNlcXVlbnRpYWxOdW1iZXInXV0/Lmxlbmd0aCkge1xuICAgICAgY29uc3QgbGF0ZXN0UmVjb3JkSWROdW1iZXIgPSBwYXJlbnRNb2RlbD8uW3RoaXMucHJvcHM/LlsncGFyZW5ldE1vZGVsS2V5VG9HZW5lcmF0ZVNlcXVlbnRpYWxOdW1iZXInXV0/LnNvcnQoKGE6IHsgc2VxdWVudGlhbE51bWJlcklkOiBudW1iZXI7IH0sIGI6IHsgc2VxdWVudGlhbE51bWJlcklkOiBudW1iZXI7IH0pID0+ICsoYj8uc2VxdWVudGlhbE51bWJlcklkKSAtICsoYT8uc2VxdWVudGlhbE51bWJlcklkKSk/LmZpbmQoKHBhcmVuRGF0YTogeyBzZXF1ZW50aWFsTnVtYmVySWQ6IGFueTsgfSkgPT4gKyhwYXJlbkRhdGE/LnNlcXVlbnRpYWxOdW1iZXJJZCkpO1xuICAgICAgcmV0dXJuICsobGF0ZXN0UmVjb3JkSWROdW1iZXI/LnNlcXVlbnRpYWxOdW1iZXJJZCkgKyAxO1xuICAgIH1cbiAgICByZXR1cm4gMTtcbiAgfVxuXG4gIGdldFJvd1N0eWxlID0gKHBhcmFtczogYW55KSA9PiB7XG4gICAgaWYodGhpcy5vcHRpb25zLmZvcm1TdGF0ZS5zaG93T2xkVmFsdWVzKSB7XG4gICAgICBpZiAocGFyYW1zLmRhdGE/LmlzQ2hhbmdlZCkge1xuICAgICAgICByZXR1cm4geyBiYWNrZ3JvdW5kQ29sb3I6ICcjZmZjY2NjJyB9O1xuICAgICAgfVxuICAgICAgaWYgKHBhcmFtcy5kYXRhPy5hZGRlZE5ld1Jvdykge1xuICAgICAgICByZXR1cm4geyBiYWNrZ3JvdW5kQ29sb3I6ICcjRjBFQkFEODAnIH07XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH07XG59XG5cbmZ1bmN0aW9uIHVwZGF0ZU1vZGVsKG9iajogYW55LCB0YXJnZXRLZXk6IGFueSwgbmV3VmFsdWU6IGFueSwgYWN0aW9uOiBzdHJpbmcpIHtcbiAgZm9yIChjb25zdCBrZXkgaW4gb2JqKSB7XG4gICAgaWYgKGtleSA9PT0gdGFyZ2V0S2V5KSB7XG4gICAgICBpZiAoYWN0aW9uID09PSAncHVzaCcpIHtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkob2JqW2tleV0pKSB7XG4gICAgICAgICAgb2JqW2tleV0ucHVzaChuZXdWYWx1ZSk7XG4gICAgICAgIH0gZWxzZSBpZiAob2JqW2tleV0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIG9ialtrZXldID0gW29ialtrZXldLCBuZXdWYWx1ZV07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgb2JqW2tleV0gPSBbbmV3VmFsdWVdO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBvYmpba2V5XSA9IG5ld1ZhbHVlO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiBvYmpba2V5XSA9PT0gJ29iamVjdCcgJiYgb2JqW2tleV0gIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IHVwZGF0ZU1vZGVsKG9ialtrZXldLCB0YXJnZXRLZXksIG5ld1ZhbHVlLCBhY3Rpb24pO1xuICAgICAgaWYgKHJlc3VsdCkgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG4gIHJldHVybiBmYWxzZTtcbn1cblxuZnVuY3Rpb24gZmluZE5lc3RlZEtleShvYmo6IGFueSwgdGFyZ2V0S2V5OiBhbnkpOiBhbnkge1xuICBmb3IgKGNvbnN0IGtleSBpbiBvYmopIHtcbiAgICBpZiAoa2V5ID09PSB0YXJnZXRLZXkpIHJldHVybiBvYmpba2V5XTtcbiAgICBpZiAodHlwZW9mIG9ialtrZXldID09PSAnb2JqZWN0Jykge1xuICAgICAgY29uc3QgcmVzdWx0ID0gZmluZE5lc3RlZEtleShvYmpba2V5XSwgdGFyZ2V0S2V5KTtcbiAgICAgIGlmIChyZXN1bHQpIHJldHVybiByZXN1bHQ7XG4gICAgfVxuICB9XG4gIHJldHVybiB1bmRlZmluZWQ7XG59Il19
|
|
641
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFidWxhci1mb3JtLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Zvcm0vc3JjL2xpYi90eXBlcy90YWJ1bGFyLWZvcm0udHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFFNUUsT0FBTyxFQUFhLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQWUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM3RSxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQW9CLE1BQU0scUJBQXFCLENBQUM7QUFDeEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBSS9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQy9ELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3ZFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDOzs7Ozs7Ozs7OztB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QUksQ0FBQztRQUMxQixDQUFDO0lBQ0gsQ0FBQztJQUNELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQztBQUVELFNBQVMsYUFBYSxDQUFDLEdBQVEsRUFBRSxTQUFjO0lBQzdDLEtBQUssTUFBTSxHQUFHLElBQUksR0FBRyxFQUFFLENBQUM7UUFDdEIsSUFBSSxHQUFHLEtBQUssU0FBUztZQUFFLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3ZDLElBQUksT0FBTyxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssUUFBUSxFQUFFLENBQUM7WUFDakMsTUFBTSxNQUFNLEdBQUcsYUFBYSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztZQUNsRCxJQUFJLE1BQU07Z0JBQUUsT0FBTyxNQUFNLENBQUM7UUFDNUIsQ0FBQztJQUNILENBQUM7SUFDRCxPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmllbGRUeXBlIH0gZnJvbSAnQG5neC1mb3JtbHkvbWF0ZXJpYWwnO1xuaW1wb3J0IHsgTWF0RGlhbG9nLCBNYXREaWFsb2dNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgTWF0VGFibGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XG5pbXBvcnQgeyBNYXRTbmFja0JhciwgTWF0U25hY2tCYXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zbmFjay1iYXInO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGaWVsZEFycmF5VHlwZSwgRm9ybWx5TW9kdWxlIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgVGFidWxhckZvcm1EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL3RhYnVsYXItZm9ybS1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUsIFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IEFnR3JpZE1vZHVsZSB9IGZyb20gJ2FnLWdyaWQtYW5ndWxhcic7XG5pbXBvcnQgeyBDb2xEZWYgfSBmcm9tICdhZy1ncmlkLWNvbW11bml0eSc7XG5pbXBvcnQgeyBDdXN0b21Gb3JtbHlGaWVsZENvbmZpZyB9IGZyb20gJy4uL21vZGVscy9jdXN0b20tZm9ybS1maWVsZC5tb2RlbCc7XG5pbXBvcnQgeyBHcmlkQXBpLCBSb3dTZWxlY3RlZEV2ZW50IH0gZnJvbSAnYWctZ3JpZC1jb21tdW5pdHknO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2x0aXAnO1xuaW1wb3J0IHsgZGVlcEVxdWFsLCBmbGF0dGVuSnNvbiB9IGZyb20gJy4uL3V0aWxzL2Zvcm1seS51dGlscyc7XG5pbXBvcnQgeyBWaWV3RmlsZURpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vdmlldy1maWxlLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29uZmlybWF0aW9uRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi4vY29uZmlybWF0aW9uLWRpYWxvZy9jb25maXJtYXRpb24tZGlhbG9nLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ211LWZvcm1seS1hZGQtZGlhbG9nLXR5cGUnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBGb3JtbHlNb2R1bGUsIE1hdFNuYWNrQmFyTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIE1hdERpYWxvZ01vZHVsZSwgTWF0VGFibGVNb2R1bGUsIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICBNYXREaWFsb2dNb2R1bGUsIEFnR3JpZE1vZHVsZSwgVHJhbnNsYXRlTW9kdWxlLE1hdEljb25Nb2R1bGUsTWF0VG9vbHRpcE1vZHVsZVxuICBdLFxuICBwcm92aWRlcnM6IFtEYXRlUGlwZV0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImZsZXgganVzdGlmeS1zdGFydCBtdC0yIG1yLTIgaXRlbXMtY2VudGVyXCI+XG4gICAgICBAaWYoc2VsZWN0ZWRSb3dDb3VudCA+IDApIHtcbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICpuZ0lmPVwiIWZpZWxkLnByb3BzPy5bJ2hpZGVEZWxldGUnXVwiXG4gICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgKGNsaWNrKT1cInJlbW92ZVNlbGVjdGVkUm93cygpXCJcbiAgICAgICAgICBtYXRUb29sdGlwPVwie3sgZmllbGQucHJvcHM/LlsnZGVsZXRlQnV0dG9uVG9vbHRpcCddfHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImlzQnV0dG9uc0Rpc2FibGVkXCJcbiAgICAgICAgICA+XG4gICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJpY29uXCI+e3sgZmllbGQucHJvcHM/LlsnZGVsZXRlQnV0dG9uSWNvbiddIH19PC9tYXQtaWNvbj5cbiAgICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgIDxidXR0b24gXG4gICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgKm5nSWY9XCIhZmllbGQucHJvcHM/LlsnaGlkZUVkaXQnXVwiXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgKGNsaWNrKT1cImVkaXREaWFsb2coKVwiXG4gICAgICAgICAgbWF0VG9vbHRpcD1cInt7IGZpZWxkLnByb3BzPy5bJ2VkaXRCdXR0b25Ub29sdGlwJ10gfCB0cmFuc2xhdGV9fVwiXG4gICAgICAgICAgW2Rpc2FibGVkXT1cImlzQnV0dG9uc0Rpc2FibGVkXCI+XG4gICAgICAgICAgPG1hdC1pY29uPlxuICAgICAgICAgICAge3sgZmllbGQucHJvcHM/LlsnZWRpdEJ1dHRvbkljb24nXSB9fVxuICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgfVxuICAgICAgPGJ1dHRvblxuICAgICAgICAqbmdJZj1cIiFmaWVsZC5wcm9wcz8uWydoaWRlQWRkJ10gJiYgKHByb3BzWydtYXhSb3dzJ10gPyByb3dEYXRhLmxlbmd0aCA8IGdldE1heFJvd3MoKSA6IHRydWUpXCJcbiAgICAgICAgbWF0LWJ1dHRvblxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgKGNsaWNrKT1cIm9wZW5EaWFsb2coKVwiXG4gICAgICAgIG1hdFRvb2x0aXA9XCJ7eyBmaWVsZC5wcm9wcz8uWydhZGRCdXR0b25Ub29sdGlwJ10gfCB0cmFuc2xhdGV9fVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJpc0J1dHRvbnNEaXNhYmxlZFwiXG4gICAgICA+XG4gICAgICAgIDxtYXQtaWNvbj5cbiAgICAgICAgICB7eyBmaWVsZC5wcm9wcz8uWydhZGRCdXR0b25JY29uJ10gfX1cbiAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgPHNwYW4+e3tmaWVsZC5wcm9wcz8uWydhZGRCdG5MYWJlbCddIHwgdHJhbnNsYXRlfX08L3NwYW4+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgICAgICA8YWctZ3JpZC1hbmd1bGFyXG4gICAgICAgICAgICBjbGFzcz1cImFnLXRoZW1lLWFscGluZVwiXG4gICAgICAgICAgICBbcm93RGF0YV09XCJyb3dEYXRhXCJcbiAgICAgICAgICAgIFtmb3JtbHlBdHRyaWJ1dGVzXT1cImZpZWxkXCJcbiAgICAgICAgICAgIFtjb2x1bW5EZWZzXT1cImNvbHVtbkRlZnNcIlxuICAgICAgICAgICAgW2RlZmF1bHRDb2xEZWZdPVwiZGVmYXVsdENvbERlZlwiXG4gICAgICAgICAgICBbc3VwcHJlc3NSb3dDbGlja1NlbGVjdGlvbl09XCJ0cnVlXCJcbiAgICAgICAgICAgIHJvd1NlbGVjdGlvbj1cIm11bHRpcGxlXCJcbiAgICAgICAgICAgIChncmlkUmVhZHkpPVwib25HcmlkUmVhZHkoJGV2ZW50KVwiXG4gICAgICAgICAgICBbZG9tTGF5b3V0XT1cInJvd0RhdGEubGVuZ3RoID4gNSA/ICdub3JtYWwnIDogJ2F1dG9IZWlnaHQnXCJcbiAgICAgICAgICAgIChyb3dTZWxlY3RlZCk9XCJvblJvd1NlbGVjdGVkKCRldmVudClcIlxuICAgICAgICAgICAgW3N0eWxlLmhlaWdodF09XCJyb3dEYXRhLmxlbmd0aCA+IDUgPyAnMzAwcHgnIDogJ2F1dG8nXCJcbiAgICAgICAgICAgIFtnZXRSb3dTdHlsZV09XCJnZXRSb3dTdHlsZVwiXG4gICAgICAgICAgICBbZ3JpZE9wdGlvbnNdPVwieyBzdXBwcmVzc01vdmFibGVDb2x1bW5zIDogdHJ1ZSB9XCJcbiAgICAgICAgICAgID5cbiAgICAgICAgPC9hZy1ncmlkLWFuZ3VsYXI+XG4gIGAsXG4gIHN0eWxlczogW2BcbiAgICBhZy1ncmlkLWFuZ3VsYXIge1xuICAgICAgbWFyZ2luLXRvcDogMTZweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgYF1cbn0pXG5leHBvcnQgY2xhc3MgVGFidWxhckZvcm1Db21wb25lbnQgZXh0ZW5kcyBGaWVsZEFycmF5VHlwZTxDdXN0b21Gb3JtbHlGaWVsZENvbmZpZz4gaW1wbGVtZW50cyBPbkluaXQge1xuICBzZWxlY3RlZFJvd0NvdW50ID0gMDtcbiAgaXNCdXR0b25zRGlzYWJsZWQgPSBmYWxzZTtcbiAgY29sdW1uRGVmczogQ29sRGVmW10gPSBbXTtcbiAgcm93RGF0YTogUmVjb3JkPHN0cmluZywgYW55PltdID0gW107XG4gIGdyaWRBcGkhOiBHcmlkQXBpO1xuICBkZWZhdWx0Q29sRGVmID0ge1xuICAgIHNvcnRhYmxlOiB0cnVlLFxuICAgIGZpbHRlcjogdHJ1ZSxcbiAgICByZXNpemFibGU6IHRydWUsXG4gICAgZmxleDogMSxcbiAgICBtaW5XaWR0aDogMTUwLFxuICAgIHdyYXBIZWFkZXJUZXh0OiB0cnVlLFxuICAgIGF1dG9IZWFkZXJIZWlnaHQ6IHRydWVcbiAgfTtcbiAgb2xkVmFsdWUhOiBhbnk7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZGlhbG9nOiBNYXREaWFsb2csXG4gICAgcHJpdmF0ZSBzbmFja0JhcjogTWF0U25hY2tCYXIsXG4gICAgcHJpdmF0ZSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgZGF0ZVBpcGU6IERhdGVQaXBlKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmKHRoaXMub3B0aW9ucy5mb3JtU3RhdGUuc2hvd09sZFZhbHVlcykge1xuICAgICAgY29uc3Qgb2xkVmFsdWVzID0gZmxhdHRlbkpzb24odGhpcy5vcHRpb25zLmZvcm1TdGF0ZS5vbGRWYWx1ZXMpO1xuICAgICAgdGhpcy5vbGRWYWx1ZSA9IG9sZFZhbHVlcz8uW3RoaXMuZmllbGQua2V5IGFzIHN0cmluZ107XG4gICAgfVxuXG4gICAgaWYodGhpcy5maWVsZD8uZW5hYmxlZEZvclJvbGVzKSB7XG4gICAgICB0aGlzLmlzQnV0dG9uc0Rpc2FibGVkID0gIXRoaXMub3B0aW9ucy5mb3JtU3RhdGU/LnVzZXJSb2xlcz8uc29tZSgocm9sZTogYW55KSA9PiB0aGlzLmZpZWxkPy5lbmFibGVkRm9yUm9sZXM/LmluY2x1ZGVzKHJvbGUpKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5maWVsZD8ucHJvcHM/LlsnY29sdW1uRGVmcyddKSB7XG4gICAgICBpZih0aGlzLm9wdGlvbnMuZm9ybVN0YXRlPy5zaG93T2xkVmFsdWVzKSB7XG4gICAgICAgIHRoaXMuY29sdW1uRGVmcyA9IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBoZWFkZXJDaGVja2JveFNlbGVjdGlvbjogIXRoaXMuaXNCdXR0b25zRGlzYWJsZWQsXG4gICAgICAgICAgICBjaGVja2JveFNlbGVjdGlvbjogKHBhcmFtcykgPT4ge1xuICAgICAgICAgICAgICByZXR1cm4gIXRoaXMuaXNCdXR0b25zRGlzYWJsZWQgJiYgIXBhcmFtcy5kYXRhLmlzT2xkRGF0YVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGhlYWRlck5hbWU6ICcnLFxuICAgICAgICAgICAgd2lkdGg6IDQwLFxuICAgICAgICAgICAgbWF4V2lkdGg6IDQwLFxuICAgICAgICAgICAgZmlsdGVyOiBmYWxzZSxcbiAgICAgICAgICAgIHJlc2l6YWJsZTpmYWxzZVxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgaGVhZGVyTmFtZTogJycsXG4gICAgICAgICAgICB3aWR0aDogNDAsXG4gICAgICAgICAgICBtYXhXaWR0aDogNjAsXG4gICAgICAgICAgICBmaWx0ZXI6IGZhbHNlLFxuICAgICAgICAgICAgcmVzaXphYmxlOmZhbHNlLFxuICAgICAgICAgICAgZmllbGQ6ICdpc0NoYW5nZWQnLFxuICAgICAgICAgICAgY2VsbFJlbmRlcmVyOiAocGFyYW1zOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgaWYgKHBhcmFtcy52YWx1ZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBgPGkgY2xhc3M9XCJtYXRlcmlhbC1pY29ucyBjdXJzb3ItcG9pbnRlciBtdC1bOXB4XVwiIHN0eWxlPVwiY29sb3I6IHJlZDtcIj5lZGl0PC9pPmA7XG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGA8aSBjbGFzcz1cIm1hdGVyaWFsLWljb25zIGN1cnNvci1wb2ludGVyIG10LVs5cHhdXCIgc3R5bGU9XCJjb2xvcjogYmxhY2s7XCI+dmlzaWJpbGl0eTwvaT5gO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgb25DZWxsQ2xpY2tlZDogKHBhcmFtcykgPT4ge1xuICAgICAgICAgICAgICB0aGlzLnNob3dDaGFuZ2VkVmFsdWVzKHBhcmFtcyk7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgdG9vbHRpcFZhbHVlR2V0dGVyOiAocGFyYW1zOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgaWYgKHBhcmFtcy52YWx1ZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiAnVGhpcyByb3cgZGF0YSBpcyBjaGFuZ2VkLCBQbGVhc2UgY2xpY2sgb24gdGhpcyB0byB2aWV3IHRoZSBjaGFuZ2VkIGRldGFpbHMnO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHJldHVybiAnJztcbiAgICAgICAgICAgIH0sXG5cbiAgICAgICAgICB9LFxuICAgICAgICAgIC4uLnRoaXMudHJhbnNsYXRlTGFiZWxzKHRoaXMuZmllbGQ/LnByb3BzPy5bJ2NvbHVtbkRlZnMnXSlcbiAgICAgICAgXVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5jb2x1bW5EZWZzID0gW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGhlYWRlckNoZWNrYm94U2VsZWN0aW9uOiAhdGhpcy5pc0J1dHRvbnNEaXNhYmxlZCxcbiAgICAgICAgICAgIGNoZWNrYm94U2VsZWN0aW9uOiAhdGhpcy5pc0J1dHRvbnNEaXNhYmxlZCxcbiAgICAgICAgICAgIGhlYWRlck5hbWU6ICcnLFxuICAgICAgICAgICAgd2lkdGg6IDQwLFxuICAgICAgICAgICAgbWF4V2lkdGg6IDQwLFxuICAgICAgICAgICAgZmlsdGVyOiBmYWxzZSxcbiAgICAgICAgICAgIHJlc2l6YWJsZTpmYWxzZVxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgaGVhZGVyTmFtZTogJycsXG4gICAgICAgICAgICBmaWVsZDogJ3ZpZXcnLFxuICAgICAgICAgICAgd2lkdGg6IDUwLFxuICAgICAgICAgICAgbWF4V2lkdGg6IDUwLFxuICAgICAgICAgICAgZmlsdGVyOiBmYWxzZSxcbiAgICAgICAgICAgIHJlc2l6YWJsZTpmYWxzZSxcbiAgICAgICAgICAgIGNlbGxSZW5kZXJlcjogKCkgPT4ge1xuICAgICAgICAgICAgICByZXR1cm4gYDxpIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMgY3Vyc29yLXBvaW50ZXIgbXQtWzlweF1cIiBzdHlsZT1cImNvbG9yOiBibGFjaztcIj52aXNpYmlsaXR5PC9pPmA7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgb25DZWxsQ2xpY2tlZDogKHBhcmFtcykgPT4ge1xuICAgICAgICAgICAgICB0aGlzLnNob3dDaGFuZ2VkVmFsdWVzKHBhcmFtcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICAuLi50aGlzLnRyYW5zbGF0ZUxhYmVscyh0aGlzLmZpZWxkPy5wcm9wcz8uWydjb2x1bW5EZWZzJ10pXG4gICAgICAgIF07XG4gICAgICB9XG5cbiAgICAgIHRoaXMuY29sdW1uRGVmcyA9IHRoaXMuY29sdW1uRGVmcz8ubWFwKGNvbERlZiA9PiB7XG4gICAgICAgIGlmIChjb2xEZWY/LnR5cGUgPT09ICdkYXRlJykge1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5jb2xEZWYsXG4gICAgICAgICAgICB2YWx1ZUZvcm1hdHRlcjogKChwYXJhbXM6YW55KSA9PiB0aGlzLmZvcm1hdERhdGUocGFyYW1zLnZhbHVlKSlcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIGlmKGNvbERlZj8uZmllbGQ/LmluY2x1ZGVzKCdGaWxlTmFtZScpKSB7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLmNvbERlZixcbiAgICAgICAgICAgIGNlbGxSZW5kZXJlcjogKHBhcmFtczogYW55KSA9PiB7XG4gICAgICAgICAgICAgIGlmKHBhcmFtcy52YWx1ZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBgPGEgaHJlZj1cImphdmFzY3JpcHQ6dm9pZCgwKVwiIHN0eWxlPVwiY29sb3I6IGJsdWU7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1wiPlxuICAgICAgICAgICAgICAgICAgJHtwYXJhbXMudmFsdWV9XG4gICAgICAgICAgICAgICAgPC9hPmA7XG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuICcnO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgb25DZWxsQ2xpY2tlZDogKHBhcmFtcykgPT4ge1xuICAgICAgICAgICAgICB0aGlzLm9uRmlsZW5hbWVDbGljayhwYXJhbXMpO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNvbERlZjtcbiAgICAgIH0pXG4gICAgICBjb25zdCBncmlkRGF0YSA9IGZpbmROZXN0ZWRLZXkodGhpcy5maWVsZC5wYXJlbnQ/Lm1vZGVsLCB0aGlzLmZpZWxkLmtleSk7XG4gICAgICB0aGlzLnJvd0RhdGEgPSBBcnJheS5pc0FycmF5KGdyaWREYXRhKSA/IGdyaWREYXRhIDogW107XG4gICAgICBpZih0aGlzLmZpZWxkLnByb3BzPy5bJ3Jvd0RhdGEnXSkge1xuICAgICAgICB0aGlzLmZpZWxkLnByb3BzPy5bJ3Jvd0RhdGEnXT8uYXNPYnNlcnZhYmxlKCk/LnBpcGUoKT8uc3Vic2NyaWJlKChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICBpZihkYXRhWzBdPy5pZCkge1xuICAgICAgICAgICAgaWYodGhpcy5yb3dEYXRhLmZpbmQoKHJvdzogYW55KSA9PiByb3cuaWQgPT0gZGF0YVswXT8uaWQpKSB7XG4gICAgICAgICAgICAgIHRoaXMucm93RGF0YSA9IFsuLi50aGlzLnJvd0RhdGFdXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICB0aGlzLnJvd0RhdGEgPSBbLi4udGhpcy5yb3dEYXRhLCAuLi5kYXRhXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgICBpZih0aGlzLmZpZWxkLnByb3BzPy5bJ3VwZGF0ZVJvd0RhdGEnXSkge1xuICAgICAgICB0aGlzLmZpZWxkLnByb3BzPy5bJ3VwZGF0ZVJvd0RhdGEnXT8uYXNPYnNlcnZhYmxlKCk/LnBpcGUoKT8uc3Vic2NyaWJlKChkYXRhOiBhbnkpID0+IHtcbiAgICAgICAgICBjb25zdCB1cGRhdGVkUm93cyA9IHRoaXMucm93RGF0YS5tYXAoKHJvdzogYW55KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBuZXdSb3cgPSBkYXRhLmZpbmQoKGVhY2hSb3c6IGFueSkgPT4gZWFjaFJvdy5pZCA9PSByb3cuaWQpO1xuICAgICAgICAgICAgY29uc3QgbmV3Um93RGF0YSA9IHtcbiAgICAgICAgICAgICAgLi4ucm93LFxuICAgICAgICAgICAgICAuLi4obmV3Um93ID8/IHt9KVxuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIHJldHVybiBuZXdSb3dEYXRhO1xuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRoaXMucm93RGF0YSA9IFsuLi51cGRhdGVkUm93c107XG4gICAgICAgICAgdGhpcy5ncmlkQXBpPy5zZWxlY3RBbGwoKTtcbiAgICAgICAgICB0aGlzLmdyaWRBcGk/LmRlc2VsZWN0QWxsKCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBvbkdyaWRSZWFkeShwYXJhbXM6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuZ3JpZEFwaSA9IHBhcmFtcy5hcGk7XG4gICAgdGhpcy51cGRhdGVTZWxlY3RlZFJvd0NvdW50KCk7XG4gIH1cblxuICBvcGVuRGlhbG9nKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmZpZWxkICYmIHRoaXMuZmllbGQucHJvcHM/LlsnZGlhbG9nT3BlbmVkJ10pIHtcbiAgICAgIHRoaXMuZmllbGQucHJvcHM/LlsnZGlhbG9nT3BlbmVkJ10oZXZlbnQsIHRoaXMuZmllbGQpO1xuICAgIH1cbiAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKFRhYnVsYXJGb3JtRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICB3aWR0aDogdGhpcy5wcm9wcz8uWydkaWFsb2dXaWR0aCddID8/ICc3NSUnLFxuICAgICAgbWF4V2lkdGg6ICcxMDAlJyxcbiAgICAgIGhlaWdodDogdGhpcy5wcm9wcz8uWydkaWFsb2dIZWlnaHQnXSA/PyAnODUlJyxcbiAgICAgIGRhdGE6IHsgZmllbGRDb25maWc6IHRoaXMuZmllbGQuZmllbGRBcnJheS5maWVsZEdyb3VwLCBsYWJlbDogdGhpcy5maWVsZC5wcm9wcz8uYWRkTGFiZWw/PydBZGQnLCBmb3JtU3RhdGU6IHRoaXMub3B0aW9ucz8uZm9ybVN0YXRlLCB0YWJ1bGFyUHJvcHM6IHRoaXMuZmllbGQucHJvcHMsXG4gICAgICAgIHBhcmVudE1vZGVsOiB0aGlzLmZpZWxkLnBhcmVudD8ubW9kZWxcbiAgICAgIH0sXG4gICAgICBkaXNhYmxlQ2xvc2U6IHRydWUsXG4gICAgICBhdXRvRm9jdXM6IGZhbHNlXG4gICAgfSk7XG5cbiAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUocmVzdWx0ID0+IHtcbiAgICAgIGlmIChyZXN1bHQpIHtcbiAgICAgICAgcmVzdWx0LmlkID0gdGhpcy5nZW5lcmF0ZVJhbmRvbU51bWJlcigpO1xuICAgICAgICBpZih0aGlzLm9wdGlvbnMuZm9ybVN0YXRlLnNob3dPbGRWYWx1ZXMpIHtcbiAgICAgICAgICByZXN1bHQuYWRkZWROZXdSb3cgPSB0cnVlO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLnByb3BzPy5bJ2lzU2VxdWVudGlhbE51bUdlbmVyYXRpb25SZXF1aXJlZCddKSB7XG4gICAgICAgICAgcmVzdWx0LnNlcXVlbnRpYWxOdW1iZXJJZCA9IGAwMDAke3RoaXMuZ2VuZXJhdGVTZXF1ZW50aWFsSWROdW1iZXIodGhpcy5maWVsZC5wYXJlbnQ/Lm1vZGVsKX1gO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuYWRkUm93VG9HcmlkKHJlc3VsdCk7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5maWVsZCAmJiB0aGlzLmZpZWxkLnByb3BzPy5bJ2RpYWxvZ0Nsb3NlZCddKSB7XG4gICAgICAgIHRoaXMuZmllbGQucHJvcHM/LlsnZGlhbG9nQ2xvc2VkJ10oZXZlbnQsIHRoaXMuZmllbGQpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgZGlhbG9nUmVmLmNvbXBvbmVudEluc3RhbmNlLnNhdmVEYXRhLnN1YnNjcmliZSgoZGF0YTogYW55KSA9PiB7XG4gICAgICBkYXRhLmlkID0gdGhpcy5nZW5lcmF0ZVJhbmRvbU51bWJlcigpO1xuICAgICAgaWYodGhpcy5vcHRpb25zLmZvcm1TdGF0ZS5zaG93T2xkVmFsdWVzKSB7XG4gICAgICAgIGRhdGEuYWRkZWROZXdSb3cgPSB0cnVlO1xuICAgICAgfVxuICAgICAgdXBkYXRlTW9kZWwodGhpcy5maWVsZC5wYXJlbnQ/Lm1vZGVsLCB0aGlzLmZpZWxkLmtleSwgZGF0YSwgJ3B1c2gnKTtcbiAgICAgIHRoaXMuYWRkUm93VG9HcmlkKGRhdGEpO1xuICAgIH0pO1xuICB9XG5cbiAgZ2VuZXJhdGVSYW5kb21OdW1iZXIoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gTWF0aC5mbG9vcigxMDAwICsgTWF0aC5yYW5kb20oKSAqIDkwMDApO1xuICB9XG5cbiAgYWRkUm93VG9HcmlkKGRhdGE6IGFueSk6IHZvaWQge1xuICAgIGlmICh0aGlzLnJvd0RhdGEubGVuZ3RoID4gdGhpcy5nZXRNYXhSb3dzKCkpIHtcbiAgICAgIHRoaXMuc25hY2tCYXIub3BlbihgQ2Fubm90IGFkZCBtb3JlIHRoYW4gJHt0aGlzLmdldE1heFJvd3MoKX0gcm93c2AsICdDbG9zZScsIHtcbiAgICAgICAgZHVyYXRpb246IDMwMDBcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBmb3IgKGNvbnN0IGtleSBpbiBkYXRhKSB7XG4gICAgICBpZiAoZGF0YVtrZXldIGluc3RhbmNlb2YgT2JqZWN0KSB7XG4gICAgICAgIGlmIChkYXRhW2tleV0/LmZpbGVOYW1lKSB7XG4gICAgICAgICAgZGF0YVtgJHtrZXl9RmlsZU5hbWVgXSA9IGRhdGFba2V5XS5maWxlTmFtZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBpZiAodGhpcy5jb2x1bW5EZWZzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5jb2x1bW5EZWZzID0gW1xuICAgICAgICB7XG4gICAgICAgICAgaGVhZGVyQ2hlY2tib3hTZWxlY3Rpb246IHRydWUsXG4gICAgICAgICAgY2hlY2tib3hTZWxlY3Rpb246IHRydWUsXG4gICAgICAgICAgaGVhZGVyTmFtZTogJycsXG4gICAgICAgICAgd2lkdGg6IDQwLFxuICAgICAgICAgIG1heFdpZHRoOiA0MCxcbiAgICAgICAgICByZXNpemFibGU6ZmFsc2UsXG4gICAgICAgICAgZmlsdGVyOiBmYWxzZVxuICAgICAgICB9LFxuICAgICAgICAuLi5PYmplY3Qua2V5cyhkYXRhKVxuICAgICAgICAgIC5maWx0ZXIoa2V5ID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGZpZWxkQ29uZmlnID0gdGhpcy5maW5kRmllbGRDb25maWdCeUtleSh0aGlzLmZpZWxkLmZpZWxkR3JvdXAgfHwgW10sIGtleSk7XG4gICAgICAgICAgICByZXR1cm4ga2V5ICE9PSAnaWQnICYmIGZpZWxkQ29uZmlnPy50eXBlICE9PSAnbXUtYnV0dG9uJztcbiAgICAgICAgICB9KVxuICAgICAgICAgIC5tYXAoa2V5ID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGxhYmVsID0gdGhpcy5maW5kTGFiZWxJbk5lc3RlZEZpZWxkcyh0aGlzLmZpZWxkLmZpZWxkR3JvdXAgfHwgW10sIGtleSk7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICBmaWVsZDoga2V5LFxuICAgICAgICAgICAgICBoZWFkZXJOYW1lOiBsYWJlbFxuICAgICAgICAgICAgfTtcbiAgICAgICAgICB9KVxuICAgICAgXTtcbiAgICB9XG4gICAgaWYodGhpcy5yb3dEYXRhLmZpbmQoKHJvdzogYW55KSA9PiByb3cuaWQgPT0gZGF0YS5pZCkpIHtcbiAgICAgIHRoaXMucm93RGF0YSA9IFsuLi50aGlzLnJvd0RhdGFdXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucm93RGF0YSA9IFsuLi50aGlzLnJvd0RhdGEsIGRhdGFdO1xuICAgIH1cbiAgICB0aGlzLmFkZChudWxsLCBkYXRhKTtcbiAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcbiAgICB0aGlzLnNuYWNrQmFyLm9wZW4oXG4gICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnTU5MX1RBQlVMQVJfRk9STS5EQVRBX0FEREVEX1NVQ0NFU1NGVUxMWScpLFxuICAgICAgJ0Nsb3NlJyxcbiAgICAgIHtcbiAgICAgICAgZHVyYXRpb246IDAsXG4gICAgICB9XG4gICAgKTtcbiAgICB0aGlzLmdyaWRBcGkuc2VsZWN0QWxsKCk7XG4gICAgdGhpcy5ncmlkQXBpLmRlc2VsZWN0QWxsKCk7XG4gIH1cblxuICBmaW5kRmllbGRDb25maWdCeUtleShmaWVsZENvbmZpZ3M6IGFueVtdLCBrZXk6IHN0cmluZyk6IGFueSB7XG4gICAgZm9yIChjb25zdCBmaWVsZCBvZiBmaWVsZENvbmZpZ3MpIHtcbiAgICAgIGlmIChmaWVsZC5rZXkgPT09IGtleSkge1xuICAgICAgICByZXR1cm4gZmllbGQ7XG4gICAgICB9XG4gICAgICBpZiAoZmllbGQuZmllbGRHcm91cCkge1xuICAgICAgICBjb25zdCBmb3VuZEZpZWxkID0gdGhpcy5maW5kRmllbGRDb25maWdCeUtleShmaWVsZC5maWVsZEdyb3VwLCBrZXkpO1xuICAgICAgICBpZiAoZm91bmRGaWVsZCkge1xuICAgICAgICAgIHJldHVybiBmb3VuZEZpZWxkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgZ2V0TWF4Um93cygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnRvWydtYXhSb3dzJ107XG4gIH1cblxuICBmaW5kTGFiZWxJbk5lc3RlZEZpZWxkcyhmaWVsZENvbmZpZ3M6IGFueVtdLCBrZXk6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgZm9yIChjb25zdCBmaWVsZCBvZiBmaWVsZENvbmZpZ3MpIHtcbiAgICAgIGlmIChmaWVsZC5rZXkgPT09IGtleSkge1xuICAgICAgICByZXR1cm4gZmllbGQucHJvcHM/LmxhYmVsIHx8IGtleTtcbiAgICAgIH1cbiAgICAgIGlmIChmaWVsZC5maWVsZEdyb3VwKSB7XG4gICAgICAgIGNvbnN0IGxhYmVsID0gdGhpcy5maW5kTGFiZWxJbk5lc3RlZEZpZWxkcyhmaWVsZC5maWVsZEdyb3VwLCBrZXkpO1xuICAgICAgICBpZiAobGFiZWwpIHtcbiAgICAgICAgICByZXR1cm4gbGFiZWw7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGtleTtcbiAgfVxuXG4gIHJlbW92ZVNlbGVjdGVkUm93cygpIHtcbiAgICBpZih0aGlzLm9wdGlvbnMuZm9ybVN0YXRlLnNob3dPbGRWYWx1ZXMpIHtcbiAgICAgIGNvbnN0IHNlbGVjdGVkRGF0YSA9IHRoaXMuZ3JpZEFwaS5nZXRTZWxlY3RlZE5vZGVzKCkubWFwKG5vZGUgPT4gbm9kZS5kYXRhKTtcbiAgICAgIGlmKCFzZWxlY3RlZERhdGEuZXZlcnkoZGF0YSA9PiBkYXRhLmFkZGVkTmV3Um93KSkge1xuICAgICAgICB0aGlzLnNuYWNrQmFyLm9wZW4oXG4gICAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoXG4gICAgICAgICAgICAnTU5MX1RBQlVMQVJfRk9STS5OT19BQ0NFU1NfVE9fREVMRVRFX09MRF9SRUNPUkRTJ1xuICAgICAgICAgICksXG4gICAgICAgICAgJ09rJyxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBkdXJhdGlvbjogMCxcbiAgICAgICAgICAgIHBhbmVsQ2xhc3M6IFsnZXJyb3Itc25hY2tiYXInXSxcbiAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3QgZGlhbG9nID0gdGhpcy5kaWFsb2cub3BlbihDb25maXJtYXRpb25EaWFsb2dDb21wb25lbnQsIHtcbiAgICAgIHdpZHRoOiAnNTAlJyxcbiAgICAgIGhlaWdodDogJzI4JScsXG4gICAgICBkYXRhOiB7IHRpdGxlOiAnQXJlIHlvdSBzdXJlIHRvIGRlbGV0ZT8nfVxuICAgIH0pO1xuICAgIGRpYWxvZy5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICBpZihyZXMpIHtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWROb2RlcyA9IHRoaXMuZ3JpZEFwaS5nZXRTZWxlY3RlZE5vZGVzKCk7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkRGF0YSA9IHNlbGVjdGVkTm9kZXMubWFwKG5vZGUgPT4gbm9kZS5kYXRhKTtcbiAgICAgICAgdGhpcy5yb3dEYXRhID0gdGhpcy5yb3dEYXRhLmZpbHRlcihyb3cgPT4gIXNlbGVjdGVkRGF0YS5pbmNsdWRlcyhyb3cpKTtcbiAgICAgICAgdXBkYXRlTW9kZWwodGhpcy5maWVsZC5wYXJlbnQ/Lm1vZGVsLCB0aGlzLmZpZWxkLmtleSwgdGhpcy5yb3dEYXRhLCAnYXNzaWduJylcbiAgICBcbiAgICAgICAgdGhpcy5ncmlkQXBpLmFwcGx5VHJhbnNhY3Rpb24oe1xuICAgICAgICAgIHJlbW92ZTogc2VsZWN0ZWREYXRhXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnVwZGF0ZVNlbGVjdGVkUm93Q291bnQoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIG9uUm93U2VsZWN0ZWQoZXZlbnQ6IFJvd1NlbGVjdGVkRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLnVwZGF0ZVNlbGVjdGVkUm93Q291bnQoKTtcbiAgfVxuXG4gIHVwZGF0ZVNlbGVjdGVkUm93Q291bnQoKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RlZFJvd0NvdW50ID0gdGhpcy5ncmlkQXBpLmdldFNlbGVjdGVkTm9kZXMoKS5sZW5ndGg7XG4gIH1cblxuICB0cmFuc2xhdGVMYWJlbHMoXG4gICAgY29sdW1uRGVmczogYW55W11cbiAgKTogYW55W10ge1xuICAgIHJldHVybiBjb2x1bW5EZWZzLm1hcCgoY29sdW1uKSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5jb2x1bW4sXG4gICAgICAgIGhlYWRlck5hbWU6IHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KGNvbHVtbi5oZWFkZXJOYW1lKVxuICAgICAgfVxuICAgIH0pXG4gIH1cblxuICBlZGl0RGlhbG9nKCkge1xuICAgIGNvbnN0IHNlbGVjdGVkTm9kZXMgPSB0aGlzLmdyaWRBcGkuZ2V0U2VsZWN0ZWROb2RlcygpO1xuICAgIGNvbnN0IHNlbGVjdGVkRGF0YSA9IHNlbGVjdGVkTm9kZXMubWFwKG5vZGUgPT4gbm9kZS5kYXRhKTtcbiAgICBpZiAoc2VsZWN0ZWREYXRhPy5sZW5ndGggPiAxKSB7XG4gICAgICB0aGlzLnNuYWNrQmFyLm9wZW4oXG4gICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KFxuICAgICAgICAgICdNTkxfVEFCVUxBUl9GT1JNLk1VTFRJX1JPV19FRElUX0VSUk9SJ1xuICAgICAgICApXG4gICAgICAgICwgJ09rJywge1xuICAgICAgICBkdXJhdGlvbjogNTAwMCxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAodGhpcy5maWVsZCAmJiB0aGlzLmZpZWxkLnByb3BzPy5bJ2RpYWxvZ09wZW5lZCddKSB7XG4gICAgICB0aGlzLmZpZWxkLnByb3BzPy5bJ2RpYWxvZ09wZW5lZCddKGV2ZW50LCB0aGlzLmZpZWxkKTtcbiAgICB9XG4gICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihUYWJ1bGFyRm9ybURpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgd2lkdGg6IHRoaXMucHJvcHM/LlsnZGlhbG9nV2lkdGgnXSA/PyAnNzUlJyxcbiAgICAgIG1heFdpZHRoOiAnMTAwJScsXG4gICAgICBoZWlnaHQ6IHRoaXMucHJvcHM/LlsnZGlhbG9nSGVpZ2h0J10gPz8gJzg1JScsXG4gICAgICBkYXRhOiB7IGZpZWxkQ29uZmlnOiB0aGlzLmZpZWxkLmZpZWxkQXJyYXkuZmllbGRHcm91cCwgbGFiZWw6IHRoaXMuZmllbGQucHJvcHM/LmVkaXRMYWJlbD8/J0VkaXQnLCBmb3JtU3RhdGU6IHRoaXMub3B0aW9ucz8uZm9ybVN0YXRlLCBzZWxlY3RlZFJvd0RhdGE6IHNlbGVjdGVkRGF0YVswXSwgdGFidWxhclByb3BzOiB0aGlzLmZpZWxkLnByb3BzLCBwYXJlbnRNb2RlbDogdGhpcy5maWVsZC5wYXJlbnQ/Lm1vZGVsIH0sXG4gICAgICBkaXNhYmxlQ2xvc2U6IHRydWUsXG4gICAgICBhdXRvRm9jdXM6IGZhbHNlXG4gICAgfSk7XG4gICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XG4gICAgICBpZiAocmVzdWx0KSB7XG4gICAgICAgIHRoaXMucm93RGF0YSA9IHRoaXMucm93RGF0YS5tYXAoKHJvd1JlY29yZCkgPT4ge1xuICAgICAgICAgIGlmIChyb3dSZWNvcmQ/LlsnaWQnXSA9PT0gcmVzdWx0Py5pZCkge1xuICAgICAgICAgICAgaWYodGhpcy5vcHRpb25zLmZvcm1TdGF0ZT8uc2hvd09sZFZhbHVlcykge1xuICAgICAgICAgICAgICBjb25zdCBvbGRSb3dWYWx1ZSA9IHRoaXMub2xkVmFsdWUuZmluZCgocmVjb3JkOiBhbnkpID0+IHJlY29yZC5pZCA9PT0gcmVzdWx0Py5pZCk7XG4gICAgICAgICAgICAgIGlmKG9sZFJvd1ZhbHVlKSB7XG4gICAgICAgICAgICAgICAgb2xkUm93VmFsdWVbJ2lzQ2hhbmdlZCddID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgcmVzdWx0Wydpc0NoYW5nZWQnXSA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIGNvbnN0IG1lcmdkT2xkID0ge1xuICAgICAgICAgICAgICAgICAgLi4ucmVzdWx0LFxuICAgICAgICAgICAgICAgICAgLi4ub2xkUm93VmFsdWVcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY29uc3QgZXEgPSBkZWVwRXF1YWwobWVyZ2RPbGQsIHJlc3VsdCk7XG4gICAgICAgICAgICAgICAgcm93UmVjb3JkWydpc0NoYW5nZWQnXSA9ICFlcTtcbiAgICAgICAgICAgICAgICByZXN1bHRbJ2lzQ2hhbmdlZCddID0gIWVxO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCB1cGRhdGVkUm93ID0ge1xuICAgICAgICAgICAgICAuLi5yb3dSZWNvcmQsXG4gICAgICAgICAgICAgIC4uLnJlc3VsdCxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICBPYmplY3Qua2V5cyh1cGRhdGVkUm93KS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICAgICAgICAgIGlmICh1cGRhdGVkUm93W2tleV0gaW5zdGFuY2VvZiBPYmplY3QpIHtcbiAgICAgICAgICAgICAgICBpZiAodXBkYXRlZFJvd1trZXldPy5maWxlTmFtZSkge1xuICAgICAgICAgICAgICAgICAgdXBkYXRlZFJvd1tgJHtrZXl9RmlsZU5hbWVgXSA9IHVwZGF0ZWRSb3dba2V5XS5maWxlTmFtZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmV0dXJuIHVwZGF0ZWRSb3c7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiByb3dSZWNvcmQ7XG4gICAgICAgIH0pO1xuICAgICAgICB1cGRhdGVNb2RlbCh0aGlzLmZpZWxkLnBhcmVudD8ubW9kZWwsIHRoaXMuZmllbGQua2V5LCB0aGlzLnJvd0RhdGEsICdhc3NpZ24nKTtcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICB9XG4gICAgICB0aGlzLnVwZGF0ZVNlbGVjdGVkUm93Q291bnQoKTtcbiAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgaWYgKHRoaXMuZmllbGQgJiYgdGhpcy5maWVsZC5wcm9wcz8uWyd0YWJ1bGFyRGF0YUVkaXRlZCddKSB7XG4gICAgICAgIHRoaXMuZmllbGQucHJvcHM/LlsndGFidWxhckRhdGFFZGl0ZWQnXShldmVudCwgdGhpcy5maWVsZCk7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5maWVsZCAmJiB0aGlzLmZpZWxkLnByb3BzPy5bJ2RpYWxvZ0Nsb3NlZCddKSB7XG4gICAgICAgIHRoaXMuZmllbGQucHJvcHM/LlsnZGlhbG9nQ2xvc2VkJ10oZXZlbnQsIHRoaXMuZmllbGQpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgZm9ybWF0RGF0ZShkYXRlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGlmKGRhdGUpIHtcbiAgICAgIGNvbnN0IGQgPSBuZXcgRGF0ZShkYXRlKTtcbiAgICAgIGNvbnN0IGRheSA9IFN0cmluZyhkLmdldERhdGUoKSkucGFkU3RhcnQoMiwgJzAnKTtcbiAgICAgIGNvbnN0IG1vbnRoTmFtZXMgPSBbJ0phbicsICdGZWInLCAnTWFyJywgJ0FwcicsICdNYXknLCAnSnVuJywgJ0p1bCcsICdBdWcnLCAnU2VwJywgJ09jdCcsICdOb3YnLCAnRGVjJ107XG4gICAgICBjb25zdCBtb250aCA9IG1vbnRoTmFtZXNbZC5nZXRNb250aCgpXTtcbiAgICAgIGNvbnN0IHllYXIgPSBkLmdldEZ1bGxZZWFyKCk7XG4gICAgICByZXR1cm4gYCR7ZGF5fS0ke21vbnRofS0ke3llYXJ9YDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuICcnO1xuICAgIH1cbiAgfVxuXG4gIG9uRmlsZW5hbWVDbGljayhwYXJhbXM6IGFueSkge1xuICAgIGNvbnN0IHVwbG9hZGVkRmlsZU5hbWVLZXkgPSBPYmplY3Qua2V5cyhwYXJhbXMuZGF0YSkuZmlsdGVyKGtleSA9PiBrZXkuZW5kc1dpdGgoJ0ZpbGVOYW1lJykpO1xuICAgIGNvbnN0IHVwbG9hZGVkRmlsZU9iamVjdEtleSA9IHVwbG9hZGVkRmlsZU5hbWVLZXlbMF0/LnJlcGxhY2UoL0ZpbGVOYW1lJC8sIFwiXCIpO1xuICAgIGlmKHVwbG9hZGVkRmlsZU9iamVjdEtleSkgdGhpcy52aWV3RmlsZShwYXJhbXMuZGF0YVt1cGxvYWRlZEZpbGVPYmplY3RLZXldKTtcbiAgfVxuXG4gIHZpZXdGaWxlKGVsZW1lbnQ6YW55KSB7XG4gICAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLmRpYWxvZy5vcGVuKFZpZXdGaWxlRGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICAgIHdpZHRoOiAnNzUlJyxcbiAgICAgICAgbWF4V2lkdGg6ICc5NSUnLFxuICAgICAgICBoZWlnaHQ6ICc4NSUnLFxuICAgICAgICBkYXRhOiBlbGVtZW50XG4gICAgICB9KTtcbiAgfVxuXG4gIHNob3dDaGFuZ2VkVmFsdWVzKHBhcmFtczogYW55KSB7XG4gICAgY29uc3QgZm9ybVN0YXRlID0ge1xuICAgICAgLi4udGhpcy5vcHRpb25zLmZvcm1TdGF0ZSxcbiAgICAgIHVzZXJSb2xlczogW11cbiAgICB9XG4gICAgdGhpcy5kaWFsb2cub3BlbihUYWJ1bGFyRm9ybURpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgd2lkdGg6IHRoaXMucHJvcHM/LlsnZGlhbG9nV2lkdGgnXSA/PyAnNzUlJyxcbiAgICAgIG1heFdpZHRoOiAnOTUlJyxcbiAgICAgIGhlaWdodDogJzg1JScsXG4gICAgICBkYXRhOiB7IGZpZWxkQ29uZmlnOiB0aGlzLmZpZWxkLmZpZWxkQXJyYXkuZmllbGRHcm91cCwgbGFiZWw6IHRoaXMuZmllbGQucHJvcHM/LnZpZXdMYWJlbD8/J1ZpZXcnLCBmb3JtU3RhdGU6IGZvcm1TdGF0ZSwgc2VsZWN0ZWRSb3dEYXRhOiBwYXJhbXMuZGF0YSwgaGlkZVVwZGF0ZUJ0bjogdHJ1ZSwgcGFyZW50TW9kZWw6IHRoaXMuZmllbGQucGFyZW50Py5tb2RlbCwgdGFidWxhclByb3BzOiB0aGlzLmZpZWxkLnByb3BzIH0sXG4gICAgICBkaXNhYmxlQ2xvc2U6IHRydWVcbiAgICB9KTtcbiAgfVxuXG4gIGdlbmVyYXRlU2VxdWVudGlhbElkTnVtYmVyKHBhcmVudE1vZGVsOiBhbnkpIHtcbiAgICBpZiAocGFyZW50TW9kZWw/Llt0aGlzLnByb3BzPy5bJ3BhcmVuZXRNb2RlbEtleVRvR2VuZXJhdGVTZXF1ZW50aWFsTnVtYmVyJ11dPy5sZW5ndGgpIHtcbiAgICAgIGNvbnN0IGxhdGVzdFJlY29yZElkTnVtYmVyID0gcGFyZW50TW9kZWw/Llt0aGlzLnByb3BzPy5bJ3BhcmVuZXRNb2RlbEtleVRvR2VuZXJhdGVTZXF1ZW50aWFsTnVtYmVyJ11dPy5zb3J0KChhOiB7IHNlcXVlbnRpYWxOdW1iZXJJZDogbnVtYmVyOyB9LCBiOiB7IHNlcXVlbnRpYWxOdW1iZXJJZDogbnVtYmVyOyB9KSA9PiArKGI/LnNlcXVlbnRpYWxOdW1iZXJJZCkgLSArKGE/LnNlcXVlbnRpYWxOdW1iZXJJZCkpPy5maW5kKChwYXJlbkRhdGE6IHsgc2VxdWVudGlhbE51bWJlcklkOiBhbnk7IH0pID0+ICsocGFyZW5EYXRhPy5zZXF1ZW50aWFsTnVtYmVySWQpKTtcbiAgICAgIHJldHVybiArKGxhdGVzdFJlY29yZElkTnVtYmVyPy5zZXF1ZW50aWFsTnVtYmVySWQpICsgMTtcbiAgICB9XG4gICAgcmV0dXJuIDE7XG4gIH1cblxuICBnZXRSb3dTdHlsZSA9IChwYXJhbXM6IGFueSkgPT4ge1xuICAgIGlmKHRoaXMub3B0aW9ucy5mb3JtU3RhdGUuc2hvd09sZFZhbHVlcykge1xuICAgICAgaWYgKHBhcmFtcy5kYXRhPy5pc0NoYW5nZWQpIHtcbiAgICAgICAgcmV0dXJuIHsgYmFja2dyb3VuZENvbG9yOiAnI2ZmY2NjYycgfTtcbiAgICAgIH1cbiAgICAgIGlmIChwYXJhbXMuZGF0YT8uYWRkZWROZXdSb3cpIHtcbiAgICAgICAgcmV0dXJuIHsgYmFja2dyb3VuZENvbG9yOiAnI0YwRUJBRDgwJyB9O1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9O1xufVxuXG5mdW5jdGlvbiB1cGRhdGVNb2RlbChvYmo6IGFueSwgdGFyZ2V0S2V5OiBhbnksIG5ld1ZhbHVlOiBhbnksIGFjdGlvbjogc3RyaW5nKSB7XG4gIGZvciAoY29uc3Qga2V5IGluIG9iaikge1xuICAgIGlmIChrZXkgPT09IHRhcmdldEtleSkge1xuICAgICAgaWYgKGFjdGlvbiA9PT0gJ3B1c2gnKSB7XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KG9ialtrZXldKSkge1xuICAgICAgICAgIG9ialtrZXldLnB1c2gobmV3VmFsdWUpO1xuICAgICAgICB9IGVsc2UgaWYgKG9ialtrZXldICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBvYmpba2V5XSA9IFtvYmpba2V5XSwgbmV3VmFsdWVdO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIG9ialtrZXldID0gW25ld1ZhbHVlXTtcbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgb2JqW2tleV0gPSBuZXdWYWx1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGlmICh0eXBlb2Ygb2JqW2tleV0gPT09ICdvYmplY3QnICYmIG9ialtrZXldICE9PSBudWxsKSB7XG4gICAgICBjb25zdCByZXN1bHQgPSB1cGRhdGVNb2RlbChvYmpba2V5XSwgdGFyZ2V0S2V5LCBuZXdWYWx1ZSwgYWN0aW9uKTtcbiAgICAgIGlmIChyZXN1bHQpIHJldHVybiB0cnVlO1xuICAgIH1cbiAgfVxuICByZXR1cm4gZmFsc2U7XG59XG5cbmZ1bmN0aW9uIGZpbmROZXN0ZWRLZXkob2JqOiBhbnksIHRhcmdldEtleTogYW55KTogYW55IHtcbiAgZm9yIChjb25zdCBrZXkgaW4gb2JqKSB7XG4gICAgaWYgKGtleSA9PT0gdGFyZ2V0S2V5KSByZXR1cm4gb2JqW2tleV07XG4gICAgaWYgKHR5cGVvZiBvYmpba2V5XSA9PT0gJ29iamVjdCcpIHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGZpbmROZXN0ZWRLZXkob2JqW2tleV0sIHRhcmdldEtleSk7XG4gICAgICBpZiAocmVzdWx0KSByZXR1cm4gcmVzdWx0O1xuICAgIH1cbiAgfVxuICByZXR1cm4gdW5kZWZpbmVkO1xufSJdfQ==
|
|
@@ -521,4 +521,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
521
521
|
></div>
|
|
522
522
|
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".mat-mdc-table{margin-top:5px;box-shadow:none}.header-cell{background-color:#7876761f!important}.action-buttons{display:flex;flex-direction:row;justify-content:start;align-items:center}.action-icons{font-size:20px}.actions-container{display:flex;justify-content:center;align-items:center;height:43px;padding-top:5px}.input-btn button,.red-upload button{color:#fff;padding:3px 10px;border:none;cursor:pointer;border-radius:50px;font-family:Poppins,Helvetica Neue,sans-serif;font-weight:500;font-size:14px;display:flex;align-items:center;justify-content:center}.input-btn button:disabled,.red-upload button:disabled{background-color:#d3d3d3;color:#b0b0b0}th,td,.upload-btn{font-family:Poppins,Helvetica Neue,sans-serif}.red-upload button{background-color:red}\n"] }]
|
|
523
523
|
}], ctorParameters: () => [{ type: i1.MatSnackBar }, { type: i2.TranslateService }, { type: i3.BreakpointObserver }, { type: i0.ChangeDetectorRef }] });
|
|
524
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWZpbGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9mb3JtLWxpYi9zcmMvbGliL3R5cGVzL3VwbG9hZC1maWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBc0IsV0FBVyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEUsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6RCxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBZSxpQkFBaUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzdFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM3RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQW9CLE1BQU0scUJBQXFCLENBQUM7QUFDeEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7OztBQXVObEMsTUFBTSxPQUFPLHlCQUNYLFNBQVEsU0FBa0M7SUFpQjFDLFlBQ1UsUUFBcUIs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Q2YsaUJBQWlCOzs0RkFpTVIseUJBQXlCO2tCQS9NckMsU0FBUzsrQkFDRSxzQkFBc0IsY0FDcEIsSUFBSSxXQUNQO3dCQUNQLFdBQVc7d0JBQ1gsa0JBQWtCO3dCQUNsQixjQUFjO3dCQUNkLG1CQUFtQjt3QkFDbkIsWUFBWTt3QkFDWixZQUFZO3dCQUNaLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YsaUJBQWlCO3dCQUNqQixRQUFRO3FCQUNULFlBQ1M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9JVCxtQkF3RGdCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCcmVha3BvaW50T2JzZXJ2ZXIsIEJyZWFrcG9pbnRzIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2xheW91dCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUsIERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBEZXN0cm95UmVmLFxuICBpbmplY3QsXG4gIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0SW5wdXRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pbnB1dCc7XG5pbXBvcnQgeyBNYXRTbmFja0JhciwgTWF0U25hY2tCYXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zbmFjay1iYXInO1xuaW1wb3J0IHsgTWF0VGFibGVEYXRhU291cmNlLCBNYXRUYWJsZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYmxlJztcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwJztcbmltcG9ydCB7IEZpZWxkVHlwZSwgRm9ybWx5TW9kdWxlIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUsIFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gIEN1c3RvbUZvcm1seUZpZWxkQ29uZmlnLFxuICBGaWxlQWN0aW9uLFxuICBNYXliZUFzeW5jQm9vbCxcbn0gZnJvbSAnLi4vbW9kZWxzL2N1c3RvbS1mb3JtLWZpZWxkLm1vZGVsJztcbmltcG9ydCB7IEFjdGlvbiB9IGZyb20gJ3J4anMvaW50ZXJuYWwvc2NoZWR1bGVyL0FjdGlvbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ211LWZvcm1seS1maWVsZC1maWxlJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIEZvcm1zTW9kdWxlLFxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICBNYXRJbnB1dE1vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIEZvcm1seU1vZHVsZSxcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgTWF0VGFibGVNb2R1bGUsXG4gICAgTWF0SWNvbk1vZHVsZSxcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcbiAgICBNYXRTbmFja0Jhck1vZHVsZSxcbiAgICBEYXRlUGlwZSxcbiAgXSxcbiAgdGVtcGxhdGU6IGBcbiAgICBAaWYoc2hvd1VwbG9hZGJ0bikge1xuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwiaW5wdXQtYnRuXCJcbiAgICAgIFtuZ0NsYXNzXT1cInsgJ3JlZC11cGxvYWQnOiAhZmllbGQuZm9ybUNvbnRyb2w/LnZhbGlkIH1cIlxuICAgID5cbiAgICAgIDxidXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJmaWVsZC5wcm9wcz8uWydkaXNhYmxlZCddXCJcbiAgICAgICAgW25nQ2xhc3NdPVwiW2ZpZWxkLnByb3BzPy5bJ2NvbG9yJ11dXCJcbiAgICAgICAgKGNsaWNrKT1cImZpbGVJbnB1dC5jbGljaygpXCJcbiAgICAgID5cbiAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgKm5nSWY9XCJmaWVsZC5wcm9wcz8uWydpY29uJ11cIlxuICAgICAgICAgIGNsYXNzPVwidGV4dC1sZyBtYi0xXCJcbiAgICAgICAgICA+e3sgZmllbGQucHJvcHM/LlsnaWNvbiddIH19PC9tYXQtaWNvblxuICAgICAgICA+XG4gICAgICAgIHt7IGZpZWxkLnByb3BzPy5sYWJlbCB9fTxzcGFuICpuZ0lmPVwidG8ucmVxdWlyZWRcIj4qPC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8aW5wdXRcbiAgICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgICAjZmlsZUlucHV0XG4gICAgICAgIChjaGFuZ2UpPVwib25GaWxlU2VsZWN0KCRldmVudClcIlxuICAgICAgICBbZm9ybWx5QXR0cmlidXRlc109XCJmaWVsZFwiXG4gICAgICAgIFttdWx0aXBsZV09XCJmaWVsZC5wcm9wcz8uWydpc011bHRpRmlsZVVwbG9hZCddXCJcbiAgICAgICAgW2FjY2VwdF09XCJmaWVsZC5wcm9wcz8uWydhY2NlcHRlZEZpbGVUeXBlcyddIHx8ICcucGRmLC54bHN4LC5qcGcsLmpwZWcsLmRvY3gnXCJcbiAgICAgICAgY2xhc3M9XCJoaWRkZW5cIlxuICAgICAgLz5cbiAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LVswLjgzcmVtXSB0ZXh0LWdyYXktNTAwIG10LTFcIj5cbiAgICAgICAgQWxsb3dlZCBmaWxlIHR5cGVzOlxuICAgICAgICB7eyBmaWVsZC5wcm9wcz8uWydhY2NlcHRlZEZpbGVUeXBlcyddIHx8ICcucGRmLCAueGxzeCwgLmpwZywganBlZywgLmRvY3gnIH19XG4gICAgICAgIDxiciAvPlxuICAgICAgICBNYXhpbXVtIGZpbGUgc2l6ZToge3sgZmllbGQucHJvcHM/LlsnbWF4RmlsZVNpemVNQiddIHx8IDEgfX1NQlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgfVxuICAgIDx0YWJsZVxuICAgICAgbWF0LXRhYmxlXG4gICAgICAqbmdJZj1cInRoaXMucHJvcHM/LlsnaXNNdWx0aUZpbGVVcGxvYWQnXSAmJiB1cGxvYWRlZEZpbGVzPy5sZW5ndGhcIlxuICAgICAgW2RhdGFTb3VyY2VdPVwiZGF0YVNvdXJjZVwiXG4gICAgICBjbGFzcz1cIm1hdC1lbGV2YXRpb24tejhcIlxuICAgID5cbiAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwiZmlsZU5hbWVcIj5cbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBjbGFzcz1cImhlYWRlci1jZWxsXCI+RmlsZSBOYW1lPC90aD5cbiAgICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIj57eyBlbGVtZW50LmZpbGVOYW1lIH19PC90ZD5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImNvbnZlcnRlZEZpbGVTaXplXCI+XG4gICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgY2xhc3M9XCJoZWFkZXItY2VsbFwiPlNpemU8L3RoPlxuICAgICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgZWxlbWVudFwiPlxuICAgICAgICAgIHt7IGVsZW1lbnQuY29udmVydGVkRmlsZVNpemUgfX1cbiAgICAgICAgPC90ZD5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cInVwbG9hZGVkQnlcIj5cbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBjbGFzcz1cImhlYWRlci1jZWxsXCI+XG4gICAgICAgICAgVXBsb2FkZWQgQnlcbiAgICAgICAgPC90aD5cbiAgICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIj57eyBlbGVtZW50LnVwbG9hZGVkQnkgfX08L3RkPlxuICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwidXBsb2FkZWRBdFwiPlxuICAgICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmIGNsYXNzPVwiaGVhZGVyLWNlbGxcIj5cbiAgICAgICAgICBVcGxvYWRlZCBEYXRlXG4gICAgICAgIDwvdGg+XG4gICAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCI+XG4gICAgICAgICAge3sgZWxlbWVudC51cGxvYWRlZEF0IHwgZGF0ZSA6ICdkZC1NTU0teXl5eSwgaGg6bW06c3MgYScgfX1cbiAgICAgICAgPC90ZD5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImFjdGlvbnNcIj5cbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBjbGFzcz1cImhlYWRlci1jZWxsXCI+QWN0aW9uczwvdGg+XG4gICAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50OyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImFjdGlvbi1idXR0b25zXCI+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBhY3Rpb24gb2YgZmllbGQ/LnByb3BzPy5bJ2FjdGlvbnMnXVwiXG4gICAgICAgICAgICAgIGNsYXNzPVwiYWN0aW9ucy1jb250YWluZXJcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgICAgICBjbGFzcz1cImFjdGlvbi1pY29uc1wiXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJzaG93VXBsb2FkQWN0aW9uKGFjdGlvbiwgZWxlbWVudClcIlxuICAgICAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJ7eyBhY3Rpb24ubGFiZWwgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVBY3Rpb25DbGljayhhY3Rpb24sIGksIGVsZW1lbnQpXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IGFjdGlvbi5pY29uIH19XG4gICAgICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC90ZD5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICA8dHIgbWF0LWhlYWRlci1yb3cgKm1hdEhlYWRlclJvd0RlZj1cImRpc3BsYXllZENvbHVtbnNcIj48L3RyPlxuICAgICAgPHRyIG1hdC1yb3cgKm1hdFJvd0RlZj1cImxldCByb3c7IGNvbHVtbnM6IGRpc3BsYXllZENvbHVtbnNcIj48L3RyPlxuICAgIDwvdGFibGU+XG5cbiAgICA8ZGl2IGNsYXNzPVwidy1mdWxsXCI+XG4gICAgICA8dGFibGVcbiAgICAgICAgKm5nSWY9XCIhdGhpcy5wcm9wcz8uWydpc011bHRpRmlsZVVwbG9hZCddICYmIHVwbG9hZGVkRmlsZXM/Lmxlbmd0aFwiXG4gICAgICAgIGNsYXNzPVwidy1mdWxsIGZsZXggZmxleC1jb2wgbWQ6ZmxleC1yb3cgaXRlbXMtc3RhcnQgbWQ6aXRlbXMtY2VudGVyIGdhcC0yIG1kOmdhcC00XCJcbiAgICAgID5cbiAgICAgICAgPHRyXG4gICAgICAgICAgY2xhc3M9XCJmbGV4IGZsZXgtY29sIG1kOmZsZXgtcm93IGl0ZW1zLXN0YXJ0IG1kOml0ZW1zLWNlbnRlciBnYXAtMiBtZDpnYXAtNCB3LWZ1bGxcIlxuICAgICAgICA+XG4gICAgICAgICAgPHRkXG4gICAgICAgICAgICBjbGFzcz1cInRleHQtc20gdHJ1bmNhdGUgb3ZlcmZsb3ctaGlkZGVuIHdoaXRlc3BhY2Utbm93cmFwIG1heC13LWZ1bGwgZmxleC0xIG1kOmJvcmRlci1ub25lXCJcbiAgICAgICAgICAgIFttYXRUb29sdGlwXT1cInVwbG9hZGVkRmlsZXNbMF0uZmlsZU5hbWVcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt7IHVwbG9hZGVkRmlsZXNbMF0uZmlsZU5hbWUgfX1cbiAgICAgICAgICA8L3RkPlxuICAgICAgICAgIDx0ZCBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktZW5kIG1kOmZsZXgtc2hyaW5rLTBcIj5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGFjdGlvbiBvZiBmaWVsZD8ucHJvcHM/LlsnYWN0aW9ucyddXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlclwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJ7eyBhY3Rpb24ubGFiZWwgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwic2hvd1VwbG9hZEFjdGlvbihhY3Rpb24sIHVwbG9hZGVkRmlsZXNbMF0pXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlQWN0aW9uQ2xpY2soYWN0aW9uLCAwLCB1cGxvYWRlZEZpbGVzWzBdKVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJhY3Rpb24taWNvbnNcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgYWN0aW9uLmljb24gfX1cbiAgICAgICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvdGQ+XG4gICAgICAgIDwvdHI+XG4gICAgICA8L3RhYmxlPlxuICAgIDwvZGl2PlxuICAgIDxkaXZcbiAgICAgICpuZ0lmPVwidG9bJ25vdGUnXVwiXG4gICAgICBjbGFzcz1cInRleHQtZ3JheS01MDAgbXQtMSB3LVs5MDBweF1cIlxuICAgICAgW2lubmVySFRNTF09XCJ0b1snbm90ZSddXCJcbiAgICA+PC9kaXY+XG4gIGAsXG4gIHN0eWxlczogW1xuICAgIGBcbiAgICAgIC5tYXQtbWRjLXRhYmxlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgfVxuICAgICAgLmhlYWRlci1jZWxsIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEyMCAxMTggMTE4IC8gMTIlKSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLmFjdGlvbi1idXR0b25zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIH1cbiAgICAgIC5hY3Rpb24taWNvbnMge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICB9XG4gICAgICAuYWN0aW9ucy1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgaGVpZ2h0OiA0M3B4O1xuICAgICAgICBwYWRkaW5nLXRvcDogNXB4O1xuICAgICAgfVxuXG4gICAgICAuaW5wdXQtYnRuIGJ1dHRvbixcbiAgICAgIC5yZWQtdXBsb2FkIGJ1dHRvbiB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogM3B4IDEwcHg7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgICAgICBmb250LWZhbWlseTogUG9wcGlucywgJ0hlbHZldGljYSBOZXVlJywgc2Fucy1zZXJpZjtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIH1cbiAgICAgIC5pbnB1dC1idG4gYnV0dG9uOmRpc2FibGVkLFxuICAgICAgLnJlZC11cGxvYWQgYnV0dG9uOmRpc2FibGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2QzZDNkMztcbiAgICAgICAgY29sb3I6ICNiMGIwYjA7XG4gICAgICB9XG4gICAgICB0aCxcbiAgICAgIHRkLFxuICAgICAgLnVwbG9hZC1idG4ge1xuICAgICAgICBmb250LWZhbWlseTogUG9wcGlucywgJ0hlbHZldGljYSBOZXVlJywgc2Fucy1zZXJpZjtcbiAgICAgIH1cbiAgICAgIC5yZWQtdXBsb2FkIGJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJlZDtcbiAgICAgIH1cbiAgICBgLFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRm9ybWx5RmlsZVVwbG9hZENvbXBvbmVudFxuICBleHRlbmRzIEZpZWxkVHlwZTxDdXN0b21Gb3JtbHlGaWVsZENvbmZpZz5cbiAgaW1wbGVtZW50cyBPbkluaXRcbntcbiAgdXBsb2FkZWRGaWxlczogYW55W10gPSBbXTtcbiAgZGlzcGxheWVkQ29sdW1uczogc3RyaW5nW10gPSBbXG4gICAgJ2ZpbGVOYW1lJyxcbiAgICAnY29udmVydGVkRmlsZVNpemUnLFxuICAgICd1cGxvYWRlZEJ5JyxcbiAgICAndXBsb2FkZWRBdCcsXG4gICAgJ2FjdGlvbnMnLFxuICBdO1xuICBkYXRhU291cmNlID0gbmV3IE1hdFRhYmxlRGF0YVNvdXJjZSgpO1xuICBzaG93VXBsb2FkYnRuID0gdHJ1ZTtcbiAgbG9nZ2VkSW5Vc2VyRGV0YWlscyE6IGFueTtcbiAgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcbiAgaXNNb2JpbGVEZXZpY2U6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHNuYWNrQmFyOiBNYXRTbmFja0JhcixcbiAgICBwcml2YXRlIHRyYW5zbGF0ZVNlcnZpY2U6IFRyYW5zbGF0ZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBicmVha3BvaW50T2JzZXJ2ZXI6IEJyZWFrcG9pbnRPYnNlcnZlcixcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLmJyZWFrcG9pbnRPYnNlcnZlclxuICAgICAgPy5vYnNlcnZlKFtCcmVha3BvaW50cy5IYW5kc2V0XSlcbiAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgLnN1YnNjcmliZSgocmVzdWx0KSA9PiB7XG4gICAgICAgIHRoaXMuaXNNb2JpbGVEZXZpY2UgPSByZXN1bHQ/Lm1hdGNoZXM7XG4gICAgICB9KTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGNvbnN0IHVzZXJEZXRhaWxzID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ2xvZ2dlZEluVXNlckRldGFpbHMnKTtcbiAgICB0aGlzLmxvZ2dlZEluVXNlckRldGFpbHMgPSB1c2VyRGV0YWlsc1xuICAgICAgPyBKU09OLnBhcnNlKHVzZXJEZXRhaWxzKVxuICAgICAgOiB7IGVtYWlsOiAnJyB9O1xuXG4gICAgaWYgKHRoaXMuZmllbGQucHJvcHM/LlsnaXNNdWx0aUZpbGVVcGxvYWQnXSAmJiB0aGlzLmZvcm1Db250cm9sLnZhbHVlKSB7XG4gICAgICB0aGlzLnVwbG9hZGVkRmlsZXMgPSB0aGlzLmZvcm1Db250cm9sLnZhbHVlID8/IFtdO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoXG4gICAgICAgIHRoaXMuZm9ybUNvbnRyb2wudmFsdWUgJiZcbiAgICAgICAgT2JqZWN0LmtleXModGhpcy5mb3JtQ29udHJvbC52YWx1ZSB8fCB7fSkubGVuZ3RoXG4gICAgICApIHtcbiAgICAgICAgdGhpcy51cGxvYWRlZEZpbGVzID0gW3RoaXMuZm9ybUNvbnRyb2wudmFsdWVdO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLmRhdGFTb3VyY2UuZGF0YSA9IFsuLi50aGlzLnVwbG9hZGVkRmlsZXNdO1xuICAgIHRoaXMuc2hvd1VwbG9hZGJ0biA9IHRoaXMucHJvcHM/LlsnaXNNdWx0aUZpbGVVcGxvYWQnXVxuICAgICAgPyB0cnVlXG4gICAgICA6ICF0aGlzLnVwbG9hZGVkRmlsZXMubGVuZ3RoO1xuICB9XG5cbiAgb25GaWxlU2VsZWN0KGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICBjb25zdCBzZWxlY3RlZEZpbGUgPSBldmVudC50YXJnZXQuZmlsZXM7XG4gICAgaWYgKCFzZWxlY3RlZEZpbGUgfHwgIXNlbGVjdGVkRmlsZS5sZW5ndGgpIHJldHVybjtcblxuICAgIGNvbnN0IG1heEZpbGVTaXplTUIgPSB0aGlzLmZpZWxkLnByb3BzPy5bJ21heEZpbGVTaXplTUInXSB8fCAxO1xuICAgIGNvbnN0IG1heEZpbGVTaXplID0gbWF4RmlsZVNpemVNQiAqIDEwMjQgKiAxMDI0O1xuXG4gICAgaWYgKHRoaXMucHJvcHM/LlsnaXNNdWx0aUZpbGVVcGxvYWQnXSkge1xuICAgICAgaWYgKHRoaXMuaXNGaWxlQWxyZWFkeVVwbG9hZGVkKGV2ZW50LnRhcmdldC5maWxlcykpIHtcbiAgICAgICAgdGhpcy5zbmFja0Jhci5vcGVuKFxuICAgICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdNTkxfVVBMT0FEX0ZJTEUuRFVQTElDQVRFX1VQTE9BREVEJyksXG4gICAgICAgICAgJ09rJyxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBkdXJhdGlvbjogMzAwMCxcbiAgICAgICAgICAgIHBhbmVsQ2xhc3M6IFsnd2Fybi1zbmFja2JhciddLFxuICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5yZXNldEZpbGVJbnB1dChldmVudC50YXJnZXQpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3Qgc2VsZWN0ZWRGaWxlcyA9IEFycmF5LmZyb20oc2VsZWN0ZWRGaWxlKTtcbiAgICBjb25zdCBpbnZhbGlkQ2hhcnMgPSAvWyYsXCJdLztcblxuICAgIGNvbnN0IGZpbGVzVG9Qcm9jZXNzID0gdGhpcy5maWVsZC5wcm9wcz8uWydpc011bHRpRmlsZVVwbG9hZCddXG4gICAgICA/IHNlbGVjdGVkRmlsZXNcbiAgICAgIDogW3NlbGVjdGVkRmlsZXNbMF1dO1xuXG4gICAgZmlsZXNUb1Byb2Nlc3MuZm9yRWFjaCgoZmlsZTogYW55KSA9PiB7XG4gICAgICBpZiAoZmlsZS5zaXplID4gbWF4RmlsZVNpemUpIHtcbiAgICAgICAgdGhpcy5zbmFja0Jhci5vcGVuKFxuICAgICAgICAgIGBUaGUgZmlsZSBcIiR7ZmlsZS5uYW1lfVwiIGV4Y2VlZHMgdGhlICR7bWF4RmlsZVNpemVNQn0gTUIgc2l6ZSBsaW1pdC5gLFxuICAgICAgICAgICdPSycsXG4gICAgICAgICAge1xuICAgICAgICAgICAgZHVyYXRpb246IDMwMDAsXG4gICAgICAgICAgICBwYW5lbENsYXNzOiBbJ3dhcm4tc25hY2tiYXInXSxcbiAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgICB9IGVsc2UgaWYgKGludmFsaWRDaGFycy50ZXN0KGZpbGUubmFtZSkpIHtcbiAgICAgICAgdGhpcy5zbmFja0Jhci5vcGVuKCdNTkxfVVBMT0FEX0ZJTEUuSU5WQUxJRF9DSEFSU19GSUxFX05BTUUnLCAnT2snLCB7XG4gICAgICAgICAgZHVyYXRpb246IDcwMDAsXG4gICAgICAgICAgcGFuZWxDbGFzczogWydlcnJvci1zbmFja2JhciddLFxuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IG5ld0ZpbGUgPSB7XG4gICAgICAgICAgZmlsZU5hbWU6IGZpbGUubmFtZSxcbiAgICAgICAgICBmaWxlU2l6ZTogZmlsZS5zaXplLFxuICAgICAgICAgIGZpbGVUeXBlOiBmaWxlLnR5cGUsXG4gICAgICAgICAgZmlsZTogZmlsZSxcbiAgICAgICAgICB1cGxvYWRlZEJ5OiB0aGlzLmxvZ2dlZEluVXNlckRldGFpbHMuZW1haWwsXG4gICAgICAgICAgdXBsb2FkZWRBdDogbmV3IERhdGUoKSxcbiAgICAgICAgICBub2RlSWQ6ICcnLFxuICAgICAgICAgIGNvbnZlcnRlZEZpbGVTaXplOiB0aGlzLmZvcm1hdEZpbGVTaXplKGZpbGUuc2l6ZSksXG4gICAgICAgIH07XG5cbiAgICAgICAgaWYgKCF0aGlzLnByb3BzPy5bJ2lzTXVsdGlGaWxlVXBsb2FkJ10pIHtcbiAgICAgICAgICB0aGlzLnVwbG9hZGVkRmlsZXMgPSBbbmV3RmlsZV07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy51cGxvYWRlZEZpbGVzLnB1c2gobmV3RmlsZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMuZGF0YVNvdXJjZS5kYXRhID0gWy4uLnRoaXMudXBsb2FkZWRGaWxlc107XG5cbiAgICB0aGlzLnJlc2V0RmlsZUlucHV0KGV2ZW50LnRhcmdldCk7XG4gICAgdGhpcy5zaG93VXBsb2FkYnRuID0gdGhpcy5wcm9wcz8uWydpc011bHRpRmlsZVVwbG9hZCddXG4gICAgICA/IHRydWVcbiAgICAgIDogIXRoaXMudXBsb2FkZWRGaWxlcy5sZW5ndGg7XG5cbiAgICBpZiAodGhpcy5maWVsZC5wcm9wcz8uWydvbkZpbGVzQWRkZWQnXSkge1xuICAgICAgdGhpcy5maWVsZC5wcm9wc1snb25GaWxlc0FkZGVkJ10odGhpcy51cGxvYWRlZEZpbGVzKTtcbiAgICB9XG4gIH1cblxuICBoYW5kbGVBY3Rpb25DbGljayhhY3Rpb246IEZpbGVBY3Rpb24sIGluZGV4OiBudW1iZXIsIGVsZW1lbnQ6IGFueSkge1xuICAgIGNvbnN0IG9uVXBsb2FkRmlsZUFjdGlvbiA9IHRoaXMuZmllbGQucHJvcHM/Llsnb25VcGxvYWRGaWxlQWN0aW9uJ107XG4gICAgaWYgKHR5cGVvZiBvblVwbG9hZEZpbGVBY3Rpb24gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IG9uVXBsb2FkRmlsZUFjdGlvbihhY3Rpb24uaWNvbiwgZWxlbWVudCwgaW5kZXgpO1xuICAgICAgdGhpcy5pbnZva2VBY3Rpb24oXG4gICAgICAgICgpID0+IHJlc3VsdCxcbiAgICAgICAgZWxlbWVudCxcbiAgICAgICAgaW5kZXgsXG4gICAgICAgICgpID0+IHtcbiAgICAgICAgICBpZiAoYWN0aW9uLmljb24gPT09ICdkZWxldGUnKSB0aGlzLnJlbW92ZUZpbGUoaW5kZXgpO1xuICAgICAgICAgIGlmIChhY3Rpb24uaWNvbiA9PT0gJ2Nsb3VkX3VwbG9hZCcpXG4gICAgICAgICAgICB0aGlzLnJlZnJlc2hVcGxvYWRlZFRhYmxlKGVsZW1lbnQsIGluZGV4KTtcbiAgICAgICAgICBpZiAoYWN0aW9uLmljb24gPT09ICdjbG91ZF9kb3dubG9hZCcgfHwgYWN0aW9uLmljb24gPT09ICd2aXNpYmlsaXR5JylcbiAgICAgICAgICAgICgpID0+IHt9O1xuICAgICAgICB9LFxuICAgICAgICBhY3Rpb24uaWNvblxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICByZWZyZXNoVXBsb2FkZWRUYWJsZShlbGVtZW50OiBhbnksIGluZGV4OiBudW1iZXIpIHtcbiAgICB0aGlzLnVwbG9hZGVkRmlsZXNbaW5kZXhdID0gZWxlbWVudDtcbiAgICBpZiAodGhpcy5wcm9wcz8uWydpc011bHRpRmlsZVVwbG9hZCddKSB7XG4gICAgICBjb25zdCB1cGxvYWRlZCA9IHRoaXMudXBsb2FkZWRGaWxlcy5maWx0ZXIoKGYpID0+ICEhZi5ub2RlSWQpO1xuICAgICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZSh1cGxvYWRlZCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wuc2V0VmFsdWUodGhpcy51cGxvYWRlZEZpbGVzWzBdKTtcbiAgICB9XG5cbiAgICB0aGlzLmZvcm1Db250cm9sLm1hcmtBc1RvdWNoZWQoKTtcbiAgICB0aGlzLmZvcm0udXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xuICAgIHRoaXMuZGF0YVNvdXJjZS5kYXRhID0gWy4uLnRoaXMudXBsb2FkZWRGaWxlc107XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgcmVtb3ZlRmlsZShpbmRleDogbnVtYmVyKSB7XG4gICAgdGhpcy51cGxvYWRlZEZpbGVzLnNwbGljZShpbmRleCwgMSk7XG4gICAgdGhpcy5kYXRhU291cmNlLmRhdGEgPSBbLi4udGhpcy51cGxvYWRlZEZpbGVzXTtcblxuICAgIGlmICghdGhpcy5maWVsZC5wcm9wcz8uWydpc011bHRpRmlsZVVwbG9hZCddKSB7XG4gICAgICB0aGlzLmZvcm1Db250cm9sLnNldFZhbHVlKG51bGwpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmZvcm1Db250cm9sLnNldFZhbHVlKHRoaXMudXBsb2FkZWRGaWxlcyk7XG4gICAgICBjb25zdCB1cGxvYWRlZCA9IHRoaXMudXBsb2FkZWRGaWxlcy5maWx0ZXIoKGYpID0+ICEhZi5ub2RlSWQpO1xuICAgICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZSh1cGxvYWRlZCk7XG4gICAgfVxuICAgIHRoaXMuc2hvd1VwbG9hZGJ0biA9IHRoaXMucHJvcHM/LlsnaXNNdWx0aUZpbGVVcGxvYWQnXVxuICAgICAgPyB0cnVlXG4gICAgICA6ICF0aGlzLnVwbG9hZGVkRmlsZXMubGVuZ3RoO1xuICB9XG5cbiAgaXNGaWxlQWxyZWFkeVVwbG9hZGVkKHNlbGVjdGVkRmlsZTogYW55KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudXBsb2FkZWRGaWxlcy5zb21lKFxuICAgICAgKGZpbGUpID0+IGZpbGUuZmlsZU5hbWUgPT09IHNlbGVjdGVkRmlsZVswXS5uYW1lXG4gICAgKTtcbiAgfVxuXG4gIHJlc2V0RmlsZUlucHV0KGZpbGVJbnB1dDogYW55KTogdm9pZCB7XG4gICAgZmlsZUlucHV0LnZhbHVlID0gJyc7XG4gIH1cblxuICBzaG93VXBsb2FkQWN0aW9uKGFjdGlvbjogYW55LCBmaWxlOiBhbnkpOiBib29sZWFuIHtcbiAgICBjb25zdCBoYXNOb2RlID0gISFmaWxlLm5vZGVJZDtcbiAgICBjb25zdCB1c2VyUm9sZXMgPSB0aGlzLm9wdGlvbnMuZm9ybVN0YXRlPy51c2VyUm9sZXMgPz8gW107XG4gICAgY29uc3QgZW5hYmxlZFJvbGVzID0gdGhpcy5maWVsZD8uZW5hYmxlZEZvclJvbGVzID8/IFtdO1xuXG4gICAgc3dpdGNoIChhY3Rpb24uaWNvbikge1xuICAgICAgY2FzZSAnY2xvdWRfdXBsb2FkJzpcbiAgICAgICAgcmV0dXJuICFoYXNOb2RlO1xuXG4gICAgICBjYXNlICdjbG91ZF9kb3dubG9hZCc6XG4gICAgICBjYXNlICd2aXNpYmlsaXR5JzpcbiAgICAgICAgcmV0dXJuIGhhc05vZGU7XG5cbiAgICAgIGNhc2UgJ2RlbGV0ZSc6XG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgaGFzTm9kZSAmJiB1c2VyUm9sZXMuc29tZSgocm9sZTogYW55KSA9PiBlbmFibGVkUm9sZXMuaW5jbHVkZXMocm9sZSkpXG4gICAgICAgICk7XG5cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBmb3JtYXRGaWxlU2l6ZShieXRlczogbnVtYmVyKTogc3RyaW5nIHtcbiAgICBpZiAoYnl0ZXMgPCAxMDI0KSByZXR1cm4gYnl0ZXMgKyAnIEInO1xuICAgIGlmIChieXRlcyA8IDEwNDg1NzYpIHJldHVybiAoYnl0ZXMgLyAxMDI0KS50b0ZpeGVkKDIpICsgJyBLQic7XG4gICAgcmV0dXJuIChieXRlcyAvIDEwNDg1NzYpLnRvRml4ZWQoMikgKyAnIE1CJztcbiAgfVxuXG4gIHByaXZhdGUgaW52b2tlQWN0aW9uKFxuICAgIGFjdGlvbkNhbGxiYWNrOlxuICAgICAgfCB1bmRlZmluZWRcbiAgICAgIHwgKChlbGVtZW50OiBhbnksIGluZGV4OiBudW1iZXIpID0+IE1heWJlQXN5bmNCb29sKSxcbiAgICBlbGVtZW50OiBhbnksXG4gICAgaW5kZXg6IG51bWJlcixcbiAgICBkZWZhdWx0Rm46ICgpID0+IHZvaWQsXG4gICAgaWNvbj86IHN0cmluZ1xuICApOiB2b2lkIHtcbiAgICBpZiAoIWFjdGlvbkNhbGxiYWNrKSB7XG4gICAgICBkZWZhdWx0Rm4oKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCByZXN1bHQgPSBhY3Rpb25DYWxsYmFjayhlbGVtZW50LCBpbmRleCk7XG5cbiAgICBpZiAocmVzdWx0IGluc3RhbmNlb2YgT2JzZXJ2YWJsZSkge1xuICAgICAgKHJlc3VsdCBhcyBPYnNlcnZhYmxlPGJvb2xlYW4+KS5zdWJzY3JpYmUoKHNob3VsZFByb2NlZWQpID0+IHtcbiAgICAgICAgaWYgKHNob3VsZFByb2NlZWQpIHtcbiAgICAgICAgICB0aGlzLnN1Y2Nlc3NNZXNzYWdlKGljb24pO1xuICAgICAgICAgIGRlZmF1bHRGbigpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgUHJvbWlzZS5yZXNvbHZlKHJlc3VsdCBhcyBib29sZWFuIHwgUHJvbWlzZTxib29sZWFuPikudGhlbihcbiAgICAgICAgKHNob3VsZFByb2NlZWQpID0+IHtcbiAgICAgICAgICBpZiAoc2hvdWxkUHJvY2VlZCkge1xuICAgICAgICAgICAgdGhpcy5zdWNjZXNzTWVzc2FnZShpY29uKTtcbiAgICAgICAgICAgIGRlZmF1bHRGbigpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBzdWNjZXNzTWVzc2FnZShpY29uOiBzdHJpbmcpIHtcbiAgICBpZiAoaWNvbiA9PT0gJ2Nsb3VkX3VwbG9hZCcpIHtcbiAgICAgIHRoaXMuc25hY2tCYXIub3BlbihcbiAgICAgICAgdGhpcy50cmFuc2xhdGVTZXJ2aWNlLmluc3RhbnQoXG4gICAgICAgICAgJ01OTF9VUExPQURfRklMRS5GSUxFX1NVQ0NFU1NGVUxfVVBMT0FERUQnXG4gICAgICAgICksXG4gICAgICAgICdPaycsXG4gICAgICAgIHtcbiAgICAgICAgICBkdXJhdGlvbjogNTAwMCxcbiAgICAgICAgICBwYW5lbENsYXNzOiBbJ3N1Y2Nlc3Mtc25hY2tiYXInXSxcbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9IGVsc2UgaWYgKGljb24gPT09ICdkZWxldGUnKSB7XG4gICAgICB0aGlzLnNuYWNrQmFyLm9wZW4oXG4gICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KFxuICAgICAgICAgICdNTkxfVVBMT0FEX0ZJTEUuRklMRV9TVUNDRVNTRlVMX0RFTEVURUQnXG4gICAgICAgICksXG4gICAgICAgICdPaycsXG4gICAgICAgIHtcbiAgICAgICAgICBkdXJhdGlvbjogNTAwMCxcbiAgICAgICAgICBwYW5lbENsYXNzOiBbJ3N1Y2Nlc3Mtc25hY2tiYXInXSxcbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
524
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBsb2FkLWZpbGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Zvcm0vc3JjL2xpYi90eXBlcy91cGxvYWQtZmlsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXNCLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekQsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sR0FFUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQWUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUM3RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDN0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZUFBZSxFQUFvQixNQUFNLHFCQUFxQixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7Ozs7QUF1TmxDLE1BQU0sT0FBTyx5QkFDWCxTQUFRLFNBQWtDO0lBaUIxQyxZQUNVLFFBQXFCLEVBQ3JCLGdC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Qjs7NEZBaU1SLHlCQUF5QjtrQkEvTXJDLFNBQVM7K0JBQ0Usc0JBQXNCLGNBQ3BCLElBQUksV0FDUDt3QkFDUCxXQUFXO3dCQUNYLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCxtQkFBbUI7d0JBQ25CLFlBQVk7d0JBQ1osWUFBWTt3QkFDWixjQUFjO3dCQUNkLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixlQUFlO3dCQUNmLGlCQUFpQjt3QkFDakIsUUFBUTtxQkFDVCxZQUNTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvSVQsbUJBd0RnQix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnJlYWtwb2ludE9ic2VydmVyLCBCcmVha3BvaW50cyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9sYXlvdXQnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRGVzdHJveVJlZixcbiAgaW5qZWN0LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRGb3JtRmllbGRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9mb3JtLWZpZWxkJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgTWF0U25hY2tCYXIsIE1hdFNuYWNrQmFyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJztcbmltcG9ydCB7IE1hdFRhYmxlRGF0YVNvdXJjZSwgTWF0VGFibGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XG5pbXBvcnQgeyBNYXRUb29sdGlwTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcCc7XG5pbXBvcnQgeyBGaWVsZFR5cGUsIEZvcm1seU1vZHVsZSB9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlLCBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBDdXN0b21Gb3JtbHlGaWVsZENvbmZpZyxcbiAgRmlsZUFjdGlvbixcbiAgTWF5YmVBc3luY0Jvb2wsXG59IGZyb20gJy4uL21vZGVscy9jdXN0b20tZm9ybS1maWVsZC5tb2RlbCc7XG5pbXBvcnQgeyBBY3Rpb24gfSBmcm9tICdyeGpzL2ludGVybmFsL3NjaGVkdWxlci9BY3Rpb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtdS1mb3JtbHktZmllbGQtZmlsZScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgTWF0SW5wdXRNb2R1bGUsXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICBGb3JtbHlNb2R1bGUsXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdFRhYmxlTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0VG9vbHRpcE1vZHVsZSxcbiAgICBUcmFuc2xhdGVNb2R1bGUsXG4gICAgTWF0U25hY2tCYXJNb2R1bGUsXG4gICAgRGF0ZVBpcGUsXG4gIF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgQGlmKHNob3dVcGxvYWRidG4pIHtcbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cImlucHV0LWJ0blwiXG4gICAgICBbbmdDbGFzc109XCJ7ICdyZWQtdXBsb2FkJzogIWZpZWxkLmZvcm1Db250cm9sPy52YWxpZCB9XCJcbiAgICA+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZmllbGQucHJvcHM/LlsnZGlzYWJsZWQnXVwiXG4gICAgICAgIFtuZ0NsYXNzXT1cIltmaWVsZC5wcm9wcz8uWydjb2xvciddXVwiXG4gICAgICAgIChjbGljayk9XCJmaWxlSW5wdXQuY2xpY2soKVwiXG4gICAgICA+XG4gICAgICAgIDxtYXQtaWNvblxuICAgICAgICAgICpuZ0lmPVwiZmllbGQucHJvcHM/LlsnaWNvbiddXCJcbiAgICAgICAgICBjbGFzcz1cInRleHQtbGcgbWItMVwiXG4gICAgICAgICAgPnt7IGZpZWxkLnByb3BzPy5bJ2ljb24nXSB9fTwvbWF0LWljb25cbiAgICAgICAgPlxuICAgICAgICB7eyBmaWVsZC5wcm9wcz8ubGFiZWwgfX08c3BhbiAqbmdJZj1cInRvLnJlcXVpcmVkXCI+Kjwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPGlucHV0XG4gICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgI2ZpbGVJbnB1dFxuICAgICAgICAoY2hhbmdlKT1cIm9uRmlsZVNlbGVjdCgkZXZlbnQpXCJcbiAgICAgICAgW2Zvcm1seUF0dHJpYnV0ZXNdPVwiZmllbGRcIlxuICAgICAgICBbbXVsdGlwbGVdPVwiZmllbGQucHJvcHM/LlsnaXNNdWx0aUZpbGVVcGxvYWQnXVwiXG4gICAgICAgIFthY2NlcHRdPVwiZmllbGQucHJvcHM/LlsnYWNjZXB0ZWRGaWxlVHlwZXMnXSB8fCAnLnBkZiwueGxzeCwuanBnLC5qcGVnLC5kb2N4J1wiXG4gICAgICAgIGNsYXNzPVwiaGlkZGVuXCJcbiAgICAgIC8+XG4gICAgICA8ZGl2IGNsYXNzPVwidGV4dC1bMC44M3JlbV0gdGV4dC1ncmF5LTUwMCBtdC0xXCI+XG4gICAgICAgIEFsbG93ZWQgZmlsZSB0eXBlczpcbiAgICAgICAge3sgZmllbGQucHJvcHM/LlsnYWNjZXB0ZWRGaWxlVHlwZXMnXSB8fCAnLnBkZiwgLnhsc3gsIC5qcGcsIGpwZWcsIC5kb2N4JyB9fVxuICAgICAgICA8YnIgLz5cbiAgICAgICAgTWF4aW11bSBmaWxlIHNpemU6IHt7IGZpZWxkLnByb3BzPy5bJ21heEZpbGVTaXplTUInXSB8fCAxIH19TUJcbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIH1cbiAgICA8dGFibGVcbiAgICAgIG1hdC10YWJsZVxuICAgICAgKm5nSWY9XCJ0aGlzLnByb3BzPy5bJ2lzTXVsdGlGaWxlVXBsb2FkJ10gJiYgdXBsb2FkZWRGaWxlcz8ubGVuZ3RoXCJcbiAgICAgIFtkYXRhU291cmNlXT1cImRhdGFTb3VyY2VcIlxuICAgICAgY2xhc3M9XCJtYXQtZWxldmF0aW9uLXo4XCJcbiAgICA+XG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cImZpbGVOYW1lXCI+XG4gICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgY2xhc3M9XCJoZWFkZXItY2VsbFwiPkZpbGUgTmFtZTwvdGg+XG4gICAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCI+e3sgZWxlbWVudC5maWxlTmFtZSB9fTwvdGQ+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJjb252ZXJ0ZWRGaWxlU2l6ZVwiPlxuICAgICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmIGNsYXNzPVwiaGVhZGVyLWNlbGxcIj5TaXplPC90aD5cbiAgICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIj5cbiAgICAgICAgICB7eyBlbGVtZW50LmNvbnZlcnRlZEZpbGVTaXplIH19XG4gICAgICAgIDwvdGQ+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJ1cGxvYWRlZEJ5XCI+XG4gICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgY2xhc3M9XCJoZWFkZXItY2VsbFwiPlxuICAgICAgICAgIFVwbG9hZGVkIEJ5XG4gICAgICAgIDwvdGg+XG4gICAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCI+e3sgZWxlbWVudC51cGxvYWRlZEJ5IH19PC90ZD5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICA8bmctY29udGFpbmVyIG1hdENvbHVtbkRlZj1cInVwbG9hZGVkQXRcIj5cbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBjbGFzcz1cImhlYWRlci1jZWxsXCI+XG4gICAgICAgICAgVXBsb2FkZWQgRGF0ZVxuICAgICAgICA8L3RoPlxuICAgICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgZWxlbWVudFwiPlxuICAgICAgICAgIHt7IGVsZW1lbnQudXBsb2FkZWRBdCB8IGRhdGUgOiAnZGQtTU1NLXl5eXksIGhoOm1tOnNzIGEnIH19XG4gICAgICAgIDwvdGQ+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPG5nLWNvbnRhaW5lciBtYXRDb2x1bW5EZWY9XCJhY3Rpb25zXCI+XG4gICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgY2xhc3M9XCJoZWFkZXItY2VsbFwiPkFjdGlvbnM8L3RoPlxuICAgICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgZWxlbWVudDsgbGV0IGkgPSBpbmRleFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb24tYnV0dG9uc1wiPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgYWN0aW9uIG9mIGZpZWxkPy5wcm9wcz8uWydhY3Rpb25zJ11cIlxuICAgICAgICAgICAgICBjbGFzcz1cImFjdGlvbnMtY29udGFpbmVyXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPG1hdC1pY29uXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJhY3Rpb24taWNvbnNcIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwic2hvd1VwbG9hZEFjdGlvbihhY3Rpb24sIGVsZW1lbnQpXCJcbiAgICAgICAgICAgICAgICBtYXRUb29sdGlwPVwie3sgYWN0aW9uLmxhYmVsIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlQWN0aW9uQ2xpY2soYWN0aW9uLCBpLCBlbGVtZW50KVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBhY3Rpb24uaWNvbiB9fVxuICAgICAgICAgICAgICA8L21hdC1pY29uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvdGQ+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgPHRyIG1hdC1oZWFkZXItcm93ICptYXRIZWFkZXJSb3dEZWY9XCJkaXNwbGF5ZWRDb2x1bW5zXCI+PC90cj5cbiAgICAgIDx0ciBtYXQtcm93ICptYXRSb3dEZWY9XCJsZXQgcm93OyBjb2x1bW5zOiBkaXNwbGF5ZWRDb2x1bW5zXCI+PC90cj5cbiAgICA8L3RhYmxlPlxuXG4gICAgPGRpdiBjbGFzcz1cInctZnVsbFwiPlxuICAgICAgPHRhYmxlXG4gICAgICAgICpuZ0lmPVwiIXRoaXMucHJvcHM/LlsnaXNNdWx0aUZpbGVVcGxvYWQnXSAmJiB1cGxvYWRlZEZpbGVzPy5sZW5ndGhcIlxuICAgICAgICBjbGFzcz1cInctZnVsbCBmbGV4IGZsZXgtY29sIG1kOmZsZXgtcm93IGl0ZW1zLXN0YXJ0IG1kOml0ZW1zLWNlbnRlciBnYXAtMiBtZDpnYXAtNFwiXG4gICAgICA+XG4gICAgICAgIDx0clxuICAgICAgICAgIGNsYXNzPVwiZmxleCBmbGV4LWNvbCBtZDpmbGV4LXJvdyBpdGVtcy1zdGFydCBtZDppdGVtcy1jZW50ZXIgZ2FwLTIgbWQ6Z2FwLTQgdy1mdWxsXCJcbiAgICAgICAgPlxuICAgICAgICAgIDx0ZFxuICAgICAgICAgICAgY2xhc3M9XCJ0ZXh0LXNtIHRydW5jYXRlIG92ZXJmbG93LWhpZGRlbiB3aGl0ZXNwYWNlLW5vd3JhcCBtYXgtdy1mdWxsIGZsZXgtMSBtZDpib3JkZXItbm9uZVwiXG4gICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJ1cGxvYWRlZEZpbGVzWzBdLmZpbGVOYW1lXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICB7eyB1cGxvYWRlZEZpbGVzWzBdLmZpbGVOYW1lIH19XG4gICAgICAgICAgPC90ZD5cbiAgICAgICAgICA8dGQgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWVuZCBtZDpmbGV4LXNocmluay0wXCI+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBhY3Rpb24gb2YgZmllbGQ/LnByb3BzPy5bJ2FjdGlvbnMnXVwiXG4gICAgICAgICAgICAgIGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXJcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgICAgICBtYXRUb29sdGlwPVwie3sgYWN0aW9uLmxhYmVsIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cInNob3dVcGxvYWRBY3Rpb24oYWN0aW9uLCB1cGxvYWRlZEZpbGVzWzBdKVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImhhbmRsZUFjdGlvbkNsaWNrKGFjdGlvbiwgMCwgdXBsb2FkZWRGaWxlc1swXSlcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYWN0aW9uLWljb25zXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IGFjdGlvbi5pY29uIH19XG4gICAgICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L3RkPlxuICAgICAgICA8L3RyPlxuICAgICAgPC90YWJsZT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2XG4gICAgICAqbmdJZj1cInRvWydub3RlJ11cIlxuICAgICAgY2xhc3M9XCJ0ZXh0LWdyYXktNTAwIG10LTEgdy1bOTAwcHhdXCJcbiAgICAgIFtpbm5lckhUTUxdPVwidG9bJ25vdGUnXVwiXG4gICAgPjwvZGl2PlxuICBgLFxuICBzdHlsZXM6IFtcbiAgICBgXG4gICAgICAubWF0LW1kYy10YWJsZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIH1cbiAgICAgIC5oZWFkZXItY2VsbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigxMjAgMTE4IDExOCAvIDEyJSkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC5hY3Rpb24tYnV0dG9ucyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB9XG4gICAgICAuYWN0aW9uLWljb25zIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgfVxuICAgICAgLmFjdGlvbnMtY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGhlaWdodDogNDNweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDVweDtcbiAgICAgIH1cblxuICAgICAgLmlucHV0LWJ0biBidXR0b24sXG4gICAgICAucmVkLXVwbG9hZCBidXR0b24ge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDNweCAxMHB4O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgICAgICAgZm9udC1mYW1pbHk6IFBvcHBpbnMsICdIZWx2ZXRpY2EgTmV1ZScsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB9XG4gICAgICAuaW5wdXQtYnRuIGJ1dHRvbjpkaXNhYmxlZCxcbiAgICAgIC5yZWQtdXBsb2FkIGJ1dHRvbjpkaXNhYmxlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNkM2QzZDM7XG4gICAgICAgIGNvbG9yOiAjYjBiMGIwO1xuICAgICAgfVxuICAgICAgdGgsXG4gICAgICB0ZCxcbiAgICAgIC51cGxvYWQtYnRuIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IFBvcHBpbnMsICdIZWx2ZXRpY2EgTmV1ZScsIHNhbnMtc2VyaWY7XG4gICAgICB9XG4gICAgICAucmVkLXVwbG9hZCBidXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG4gICAgICB9XG4gICAgYCxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1seUZpbGVVcGxvYWRDb21wb25lbnRcbiAgZXh0ZW5kcyBGaWVsZFR5cGU8Q3VzdG9tRm9ybWx5RmllbGRDb25maWc+XG4gIGltcGxlbWVudHMgT25Jbml0XG57XG4gIHVwbG9hZGVkRmlsZXM6IGFueVtdID0gW107XG4gIGRpc3BsYXllZENvbHVtbnM6IHN0cmluZ1tdID0gW1xuICAgICdmaWxlTmFtZScsXG4gICAgJ2NvbnZlcnRlZEZpbGVTaXplJyxcbiAgICAndXBsb2FkZWRCeScsXG4gICAgJ3VwbG9hZGVkQXQnLFxuICAgICdhY3Rpb25zJyxcbiAgXTtcbiAgZGF0YVNvdXJjZSA9IG5ldyBNYXRUYWJsZURhdGFTb3VyY2UoKTtcbiAgc2hvd1VwbG9hZGJ0biA9IHRydWU7XG4gIGxvZ2dlZEluVXNlckRldGFpbHMhOiBhbnk7XG4gIGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG4gIGlzTW9iaWxlRGV2aWNlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzbmFja0JhcjogTWF0U25hY2tCYXIsXG4gICAgcHJpdmF0ZSB0cmFuc2xhdGVTZXJ2aWNlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgYnJlYWtwb2ludE9ic2VydmVyOiBCcmVha3BvaW50T2JzZXJ2ZXIsXG4gICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmXG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5icmVha3BvaW50T2JzZXJ2ZXJcbiAgICAgID8ub2JzZXJ2ZShbQnJlYWtwb2ludHMuSGFuZHNldF0pXG4gICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgIC5zdWJzY3JpYmUoKHJlc3VsdCkgPT4ge1xuICAgICAgICB0aGlzLmlzTW9iaWxlRGV2aWNlID0gcmVzdWx0Py5tYXRjaGVzO1xuICAgICAgfSk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCB1c2VyRGV0YWlscyA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdsb2dnZWRJblVzZXJEZXRhaWxzJyk7XG4gICAgdGhpcy5sb2dnZWRJblVzZXJEZXRhaWxzID0gdXNlckRldGFpbHNcbiAgICAgID8gSlNPTi5wYXJzZSh1c2VyRGV0YWlscylcbiAgICAgIDogeyBlbWFpbDogJycgfTtcblxuICAgIGlmICh0aGlzLmZpZWxkLnByb3BzPy5bJ2lzTXVsdGlGaWxlVXBsb2FkJ10gJiYgdGhpcy5mb3JtQ29udHJvbC52YWx1ZSkge1xuICAgICAgdGhpcy51cGxvYWRlZEZpbGVzID0gdGhpcy5mb3JtQ29udHJvbC52YWx1ZSA/PyBbXTtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKFxuICAgICAgICB0aGlzLmZvcm1Db250cm9sLnZhbHVlICYmXG4gICAgICAgIE9iamVjdC5rZXlzKHRoaXMuZm9ybUNvbnRyb2wudmFsdWUgfHwge30pLmxlbmd0aFxuICAgICAgKSB7XG4gICAgICAgIHRoaXMudXBsb2FkZWRGaWxlcyA9IFt0aGlzLmZvcm1Db250cm9sLnZhbHVlXTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5kYXRhU291cmNlLmRhdGEgPSBbLi4udGhpcy51cGxvYWRlZEZpbGVzXTtcbiAgICB0aGlzLnNob3dVcGxvYWRidG4gPSB0aGlzLnByb3BzPy5bJ2lzTXVsdGlGaWxlVXBsb2FkJ11cbiAgICAgID8gdHJ1ZVxuICAgICAgOiAhdGhpcy51cGxvYWRlZEZpbGVzLmxlbmd0aDtcbiAgfVxuXG4gIG9uRmlsZVNlbGVjdChldmVudDogYW55KTogdm9pZCB7XG4gICAgY29uc3Qgc2VsZWN0ZWRGaWxlID0gZXZlbnQudGFyZ2V0LmZpbGVzO1xuICAgIGlmICghc2VsZWN0ZWRGaWxlIHx8ICFzZWxlY3RlZEZpbGUubGVuZ3RoKSByZXR1cm47XG5cbiAgICBjb25zdCBtYXhGaWxlU2l6ZU1CID0gdGhpcy5maWVsZC5wcm9wcz8uWydtYXhGaWxlU2l6ZU1CJ10gfHwgMTtcbiAgICBjb25zdCBtYXhGaWxlU2l6ZSA9IG1heEZpbGVTaXplTUIgKiAxMDI0ICogMTAyNDtcblxuICAgIGlmICh0aGlzLnByb3BzPy5bJ2lzTXVsdGlGaWxlVXBsb2FkJ10pIHtcbiAgICAgIGlmICh0aGlzLmlzRmlsZUFscmVhZHlVcGxvYWRlZChldmVudC50YXJnZXQuZmlsZXMpKSB7XG4gICAgICAgIHRoaXMuc25hY2tCYXIub3BlbihcbiAgICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnTU5MX1VQTE9BRF9GSUxFLkRVUExJQ0FURV9VUExPQURFRCcpLFxuICAgICAgICAgICdPaycsXG4gICAgICAgICAge1xuICAgICAgICAgICAgZHVyYXRpb246IDMwMDAsXG4gICAgICAgICAgICBwYW5lbENsYXNzOiBbJ3dhcm4tc25hY2tiYXInXSxcbiAgICAgICAgICB9XG4gICAgICAgICk7XG4gICAgICAgIHRoaXMucmVzZXRGaWxlSW5wdXQoZXZlbnQudGFyZ2V0KTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IHNlbGVjdGVkRmlsZXMgPSBBcnJheS5mcm9tKHNlbGVjdGVkRmlsZSk7XG4gICAgY29uc3QgaW52YWxpZENoYXJzID0gL1smLFwiXS87XG5cbiAgICBjb25zdCBmaWxlc1RvUHJvY2VzcyA9IHRoaXMuZmllbGQucHJvcHM/LlsnaXNNdWx0aUZpbGVVcGxvYWQnXVxuICAgICAgPyBzZWxlY3RlZEZpbGVzXG4gICAgICA6IFtzZWxlY3RlZEZpbGVzWzBdXTtcblxuICAgIGZpbGVzVG9Qcm9jZXNzLmZvckVhY2goKGZpbGU6IGFueSkgPT4ge1xuICAgICAgaWYgKGZpbGUuc2l6ZSA+IG1heEZpbGVTaXplKSB7XG4gICAgICAgIHRoaXMuc25hY2tCYXIub3BlbihcbiAgICAgICAgICBgVGhlIGZpbGUgXCIke2ZpbGUubmFtZX1cIiBleGNlZWRzIHRoZSAke21heEZpbGVTaXplTUJ9IE1CIHNpemUgbGltaXQuYCxcbiAgICAgICAgICAnT0snLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGR1cmF0aW9uOiAzMDAwLFxuICAgICAgICAgICAgcGFuZWxDbGFzczogWyd3YXJuLXNuYWNrYmFyJ10sXG4gICAgICAgICAgfVxuICAgICAgICApO1xuICAgICAgfSBlbHNlIGlmIChpbnZhbGlkQ2hhcnMudGVzdChmaWxlLm5hbWUpKSB7XG4gICAgICAgIHRoaXMuc25hY2tCYXIub3BlbignTU5MX1VQTE9BRF9GSUxFLklOVkFMSURfQ0hBUlNfRklMRV9OQU1FJywgJ09rJywge1xuICAgICAgICAgIGR1cmF0aW9uOiA3MDAwLFxuICAgICAgICAgIHBhbmVsQ2xhc3M6IFsnZXJyb3Itc25hY2tiYXInXSxcbiAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBuZXdGaWxlID0ge1xuICAgICAgICAgIGZpbGVOYW1lOiBmaWxlLm5hbWUsXG4gICAgICAgICAgZmlsZVNpemU6IGZpbGUuc2l6ZSxcbiAgICAgICAgICBmaWxlVHlwZTogZmlsZS50eXBlLFxuICAgICAgICAgIGZpbGU6IGZpbGUsXG4gICAgICAgICAgdXBsb2FkZWRCeTogdGhpcy5sb2dnZWRJblVzZXJEZXRhaWxzLmVtYWlsLFxuICAgICAgICAgIHVwbG9hZGVkQXQ6IG5ldyBEYXRlKCksXG4gICAgICAgICAgbm9kZUlkOiAnJyxcbiAgICAgICAgICBjb252ZXJ0ZWRGaWxlU2l6ZTogdGhpcy5mb3JtYXRGaWxlU2l6ZShmaWxlLnNpemUpLFxuICAgICAgICB9O1xuXG4gICAgICAgIGlmICghdGhpcy5wcm9wcz8uWydpc011bHRpRmlsZVVwbG9hZCddKSB7XG4gICAgICAgICAgdGhpcy51cGxvYWRlZEZpbGVzID0gW25ld0ZpbGVdO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMudXBsb2FkZWRGaWxlcy5wdXNoKG5ld0ZpbGUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLmRhdGFTb3VyY2UuZGF0YSA9IFsuLi50aGlzLnVwbG9hZGVkRmlsZXNdO1xuXG4gICAgdGhpcy5yZXNldEZpbGVJbnB1dChldmVudC50YXJnZXQpO1xuICAgIHRoaXMuc2hvd1VwbG9hZGJ0biA9IHRoaXMucHJvcHM/LlsnaXNNdWx0aUZpbGVVcGxvYWQnXVxuICAgICAgPyB0cnVlXG4gICAgICA6ICF0aGlzLnVwbG9hZGVkRmlsZXMubGVuZ3RoO1xuXG4gICAgaWYgKHRoaXMuZmllbGQucHJvcHM/Llsnb25GaWxlc0FkZGVkJ10pIHtcbiAgICAgIHRoaXMuZmllbGQucHJvcHNbJ29uRmlsZXNBZGRlZCddKHRoaXMudXBsb2FkZWRGaWxlcyk7XG4gICAgfVxuICB9XG5cbiAgaGFuZGxlQWN0aW9uQ2xpY2soYWN0aW9uOiBGaWxlQWN0aW9uLCBpbmRleDogbnVtYmVyLCBlbGVtZW50OiBhbnkpIHtcbiAgICBjb25zdCBvblVwbG9hZEZpbGVBY3Rpb24gPSB0aGlzLmZpZWxkLnByb3BzPy5bJ29uVXBsb2FkRmlsZUFjdGlvbiddO1xuICAgIGlmICh0eXBlb2Ygb25VcGxvYWRGaWxlQWN0aW9uID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICBjb25zdCByZXN1bHQgPSBvblVwbG9hZEZpbGVBY3Rpb24oYWN0aW9uLmljb24sIGVsZW1lbnQsIGluZGV4KTtcbiAgICAgIHRoaXMuaW52b2tlQWN0aW9uKFxuICAgICAgICAoKSA9PiByZXN1bHQsXG4gICAgICAgIGVsZW1lbnQsXG4gICAgICAgIGluZGV4LFxuICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgaWYgKGFjdGlvbi5pY29uID09PSAnZGVsZXRlJykgdGhpcy5yZW1vdmVGaWxlKGluZGV4KTtcbiAgICAgICAgICBpZiAoYWN0aW9uLmljb24gPT09ICdjbG91ZF91cGxvYWQnKVxuICAgICAgICAgICAgdGhpcy5yZWZyZXNoVXBsb2FkZWRUYWJsZShlbGVtZW50LCBpbmRleCk7XG4gICAgICAgICAgaWYgKGFjdGlvbi5pY29uID09PSAnY2xvdWRfZG93bmxvYWQnIHx8IGFjdGlvbi5pY29uID09PSAndmlzaWJpbGl0eScpXG4gICAgICAgICAgICAoKSA9PiB7fTtcbiAgICAgICAgfSxcbiAgICAgICAgYWN0aW9uLmljb25cbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcmVmcmVzaFVwbG9hZGVkVGFibGUoZWxlbWVudDogYW55LCBpbmRleDogbnVtYmVyKSB7XG4gICAgdGhpcy51cGxvYWRlZEZpbGVzW2luZGV4XSA9IGVsZW1lbnQ7XG4gICAgaWYgKHRoaXMucHJvcHM/LlsnaXNNdWx0aUZpbGVVcGxvYWQnXSkge1xuICAgICAgY29uc3QgdXBsb2FkZWQgPSB0aGlzLnVwbG9hZGVkRmlsZXMuZmlsdGVyKChmKSA9PiAhIWYubm9kZUlkKTtcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wuc2V0VmFsdWUodXBsb2FkZWQpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmZvcm1Db250cm9sLnNldFZhbHVlKHRoaXMudXBsb2FkZWRGaWxlc1swXSk7XG4gICAgfVxuXG4gICAgdGhpcy5mb3JtQ29udHJvbC5tYXJrQXNUb3VjaGVkKCk7XG4gICAgdGhpcy5mb3JtLnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKTtcbiAgICB0aGlzLmRhdGFTb3VyY2UuZGF0YSA9IFsuLi50aGlzLnVwbG9hZGVkRmlsZXNdO1xuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIHJlbW92ZUZpbGUoaW5kZXg6IG51bWJlcikge1xuICAgIHRoaXMudXBsb2FkZWRGaWxlcy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIHRoaXMuZGF0YVNvdXJjZS5kYXRhID0gWy4uLnRoaXMudXBsb2FkZWRGaWxlc107XG5cbiAgICBpZiAoIXRoaXMuZmllbGQucHJvcHM/LlsnaXNNdWx0aUZpbGVVcGxvYWQnXSkge1xuICAgICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZShudWxsKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZSh0aGlzLnVwbG9hZGVkRmlsZXMpO1xuICAgICAgY29uc3QgdXBsb2FkZWQgPSB0aGlzLnVwbG9hZGVkRmlsZXMuZmlsdGVyKChmKSA9PiAhIWYubm9kZUlkKTtcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wuc2V0VmFsdWUodXBsb2FkZWQpO1xuICAgIH1cbiAgICB0aGlzLnNob3dVcGxvYWRidG4gPSB0aGlzLnByb3BzPy5bJ2lzTXVsdGlGaWxlVXBsb2FkJ11cbiAgICAgID8gdHJ1ZVxuICAgICAgOiAhdGhpcy51cGxvYWRlZEZpbGVzLmxlbmd0aDtcbiAgfVxuXG4gIGlzRmlsZUFscmVhZHlVcGxvYWRlZChzZWxlY3RlZEZpbGU6IGFueSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnVwbG9hZGVkRmlsZXMuc29tZShcbiAgICAgIChmaWxlKSA9PiBmaWxlLmZpbGVOYW1lID09PSBzZWxlY3RlZEZpbGVbMF0ubmFtZVxuICAgICk7XG4gIH1cblxuICByZXNldEZpbGVJbnB1dChmaWxlSW5wdXQ6IGFueSk6IHZvaWQge1xuICAgIGZpbGVJbnB1dC52YWx1ZSA9ICcnO1xuICB9XG5cbiAgc2hvd1VwbG9hZEFjdGlvbihhY3Rpb246IGFueSwgZmlsZTogYW55KTogYm9vbGVhbiB7XG4gICAgY29uc3QgaGFzTm9kZSA9ICEhZmlsZS5ub2RlSWQ7XG4gICAgY29uc3QgdXNlclJvbGVzID0gdGhpcy5vcHRpb25zLmZvcm1TdGF0ZT8udXNlclJvbGVzID8/IFtdO1xuICAgIGNvbnN0IGVuYWJsZWRSb2xlcyA9IHRoaXMuZmllbGQ/LmVuYWJsZWRGb3JSb2xlcyA/PyBbXTtcblxuICAgIHN3aXRjaCAoYWN0aW9uLmljb24pIHtcbiAgICAgIGNhc2UgJ2Nsb3VkX3VwbG9hZCc6XG4gICAgICAgIHJldHVybiAhaGFzTm9kZTtcblxuICAgICAgY2FzZSAnY2xvdWRfZG93bmxvYWQnOlxuICAgICAgY2FzZSAndmlzaWJpbGl0eSc6XG4gICAgICAgIHJldHVybiBoYXNOb2RlO1xuXG4gICAgICBjYXNlICdkZWxldGUnOlxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIGhhc05vZGUgJiYgdXNlclJvbGVzLnNvbWUoKHJvbGU6IGFueSkgPT4gZW5hYmxlZFJvbGVzLmluY2x1ZGVzKHJvbGUpKVxuICAgICAgICApO1xuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgZm9ybWF0RmlsZVNpemUoYnl0ZXM6IG51bWJlcik6IHN0cmluZyB7XG4gICAgaWYgKGJ5dGVzIDwgMTAyNCkgcmV0dXJuIGJ5dGVzICsgJyBCJztcbiAgICBpZiAoYnl0ZXMgPCAxMDQ4NTc2KSByZXR1cm4gKGJ5dGVzIC8gMTAyNCkudG9GaXhlZCgyKSArICcgS0InO1xuICAgIHJldHVybiAoYnl0ZXMgLyAxMDQ4NTc2KS50b0ZpeGVkKDIpICsgJyBNQic7XG4gIH1cblxuICBwcml2YXRlIGludm9rZUFjdGlvbihcbiAgICBhY3Rpb25DYWxsYmFjazpcbiAgICAgIHwgdW5kZWZpbmVkXG4gICAgICB8ICgoZWxlbWVudDogYW55LCBpbmRleDogbnVtYmVyKSA9PiBNYXliZUFzeW5jQm9vbCksXG4gICAgZWxlbWVudDogYW55LFxuICAgIGluZGV4OiBudW1iZXIsXG4gICAgZGVmYXVsdEZuOiAoKSA9PiB2b2lkLFxuICAgIGljb24/OiBzdHJpbmdcbiAgKTogdm9pZCB7XG4gICAgaWYgKCFhY3Rpb25DYWxsYmFjaykge1xuICAgICAgZGVmYXVsdEZuKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgcmVzdWx0ID0gYWN0aW9uQ2FsbGJhY2soZWxlbWVudCwgaW5kZXgpO1xuXG4gICAgaWYgKHJlc3VsdCBpbnN0YW5jZW9mIE9ic2VydmFibGUpIHtcbiAgICAgIChyZXN1bHQgYXMgT2JzZXJ2YWJsZTxib29sZWFuPikuc3Vic2NyaWJlKChzaG91bGRQcm9jZWVkKSA9PiB7XG4gICAgICAgIGlmIChzaG91bGRQcm9jZWVkKSB7XG4gICAgICAgICAgdGhpcy5zdWNjZXNzTWVzc2FnZShpY29uKTtcbiAgICAgICAgICBkZWZhdWx0Rm4oKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIFByb21pc2UucmVzb2x2ZShyZXN1bHQgYXMgYm9vbGVhbiB8IFByb21pc2U8Ym9vbGVhbj4pLnRoZW4oXG4gICAgICAgIChzaG91bGRQcm9jZWVkKSA9PiB7XG4gICAgICAgICAgaWYgKHNob3VsZFByb2NlZWQpIHtcbiAgICAgICAgICAgIHRoaXMuc3VjY2Vzc01lc3NhZ2UoaWNvbik7XG4gICAgICAgICAgICBkZWZhdWx0Rm4oKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgc3VjY2Vzc01lc3NhZ2UoaWNvbjogc3RyaW5nKSB7XG4gICAgaWYgKGljb24gPT09ICdjbG91ZF91cGxvYWQnKSB7XG4gICAgICB0aGlzLnNuYWNrQmFyLm9wZW4oXG4gICAgICAgIHRoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KFxuICAgICAgICAgICdNTkxfVVBMT0FEX0ZJTEUuRklMRV9TVUNDRVNTRlVMX1VQTE9BREVEJ1xuICAgICAgICApLFxuICAgICAgICAnT2snLFxuICAgICAgICB7XG4gICAgICAgICAgZHVyYXRpb246IDUwMDAsXG4gICAgICAgICAgcGFuZWxDbGFzczogWydzdWNjZXNzLXNuYWNrYmFyJ10sXG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgfSBlbHNlIGlmIChpY29uID09PSAnZGVsZXRlJykge1xuICAgICAgdGhpcy5zbmFja0Jhci5vcGVuKFxuICAgICAgICB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChcbiAgICAgICAgICAnTU5MX1VQTE9BRF9GSUxFLkZJTEVfU1VDQ0VTU0ZVTF9ERUxFVEVEJ1xuICAgICAgICApLFxuICAgICAgICAnT2snLFxuICAgICAgICB7XG4gICAgICAgICAgZHVyYXRpb246IDUwMDAsXG4gICAgICAgICAgcGFuZWxDbGFzczogWydzdWNjZXNzLXNuYWNrYmFyJ10sXG4gICAgICAgIH1cbiAgICAgICk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -87,4 +87,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
87
87
|
type: Inject,
|
|
88
88
|
args: [MAT_DIALOG_DATA]
|
|
89
89
|
}] }, { type: i0.ElementRef }] });
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlldy1maWxlLWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Zvcm0vc3JjL2xpYi90eXBlcy92aWV3LWZpbGUtZGlhbG9nLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQWdCLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7OztBQThEM0QsTUFBTSxPQUFPLHVCQUF1QjtJQUNsQyxZQUNVLFNBQWdELEVBQ3hCLElBQVMsRUFDakMsV0FBdUI7UUFGdkIsY0FBUyxHQUFULFNBQVMsQ0FBdUM7UUFDeEIsU0FBSSxHQUFKLElBQUksQ0FBSztRQUNqQyxnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUUvQixJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxXQUFXLENBQUMsYUFBcUIsRUFBRSxJQUFVO1FBQzNDLE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQyxHQUFHLEVBQUU7WUFDbEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQzNFLElBQUksTUFBTSxFQUFFLENBQUM7Z0JBQ1gsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2dCQUMxQixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztvQkFDdEIsSUFBSSxJQUFJLFlBQVksSUFBSSxFQUFFLENBQUM7d0JBQ3pCLE1BQU0sQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsR0FBRyxZQUFZLENBQUM7b0JBQ3hELENBQUM7eUJBQU0sQ0FBQzt3QkFDTixNQUFNLE9BQU8sR0FBRzs7Ozs7YUFLZixDQUFDO3dCQUNGLE1BQU0sU0FBUyxHQUFHLElBQUksSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQzt3QkFDN0QsTUFBTSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDO3dCQUM1QyxPQUFPLENBQUMsS0FBSyxDQUFDLHNDQUFzQyxDQUFDLENBQUM7b0JBQ3hELENBQUM7Z0JBQ0gsQ0FBQztxQkFBTSxDQUFDO29CQUNOLE1BQU0sT0FBTyxHQUFHOzs7b0ZBRzBELElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUTsyRUFDM0IsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNOztXQUVoRixDQUFDO29CQUNGLE1BQU0sV0FBVyxHQUFHLElBQUksSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztvQkFDL0QsTUFBTSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUNoRCxDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNSLENBQUM7K0dBN0NVLHVCQUF1Qiw4Q0FHeEIsZUFBZTttR0FIZCx1QkFBdUIsK0VBbkR4Qjs7Ozs7Ozs7OztHQVVULHNsQkFmQyxZQUFZLDhCQUNaLGFBQWEsbUxBQ2IsZUFBZSw4QkFDZixlQUFlOzs0RkFxRE4sdUJBQXVCO2tCQTVEbkMsU0FBUzsrQkFDRSxxQkFBcUIsY0FDbkIsSUFBSSxXQUNQO3dCQUNQLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixlQUFlO3dCQUNmLGVBQWU7cUJBQ2hCLFlBQ1M7Ozs7Ozs7Ozs7R0FVVDs7MEJBNENFLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2dSZWYsIE1BVF9ESUFMT0dfREFUQSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IE1hdERpYWxvZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ211LXZpZXctZmlsZS1kaWFsb2cnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1hdERpYWxvZ01vZHVsZVxuICBdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJkaWFsb2ctY29udGFpbmVyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwidG9wLWJhciBtbmwtYmctcHJpbWFyeVwiIGNka0RyYWcgY2RrRHJhZ1Jvb3RFbGVtZW50PVwiLmNkay1vdmVybGF5LXBhbmVcIj5cbiAgICAgICAgPGgyIG1hdC1kaWFsb2ctdGl0bGU+e3sgZGF0YS5maWxlTmFtZSB9fTwvaDI+XG4gICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cImNsb3NlSWNvblwiIChjbGljayk9XCJjbG9zZSgpXCI+Y2xvc2U8L21hdC1pY29uPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZGlhbG9nLWNvbnRlbnRcIj5cbiAgICAgICAgPGlmcmFtZSBpZD1cInZpZXdEb2NcIj48L2lmcmFtZT5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZXM6IFtgXG4gICAgLmRpYWxvZy1jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMTJweDtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gICAgLnRvcC1iYXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2UwZTBlMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBwYWRkaW5nOiAzcHg7XG4gICAgICBjdXJzb3I6IG1vdmU7XG4gICAgfVxuICAgIC50b3AtYmFyIC5tYXQtbWRjLWRpYWxvZy10aXRsZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICB9XG4gICAgLmRpYWxvZy1jb250ZW50IHtcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSA4MHB4KTtcbiAgICB9XG4gICAgLmRpYWxvZy1jb250ZW50IGlmcmFtZSB7XG4gICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICB9XG4gICAgLmNsb3NlSWNvbiB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICBgXVxufSlcbmV4cG9ydCBjbGFzcyBWaWV3RmlsZURpYWxvZ0NvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8Vmlld0ZpbGVEaWFsb2dDb21wb25lbnQ+LFxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogYW55LFxuICAgIHByaXZhdGUgaG9zdEVsZW1lbnQ6IEVsZW1lbnRSZWZcbiAgKSB7XG4gICAgdGhpcy5yZW5kZXJGcmFtZSgnI3ZpZXdEb2MnLCBkYXRhLmZpbGUpO1xuICB9XG5cbiAgY2xvc2UoKSB7XG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoKTtcbiAgfVxuXG4gIHJlbmRlckZyYW1lKHF1ZXJ5U2VsZWN0b3I6IHN0cmluZywgYmxvYjogQmxvYikge1xuICAgIGNvbnN0IGludGVydmFsSWQgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICBjb25zdCBpZnJhbWUgPSB0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcihxdWVyeVNlbGVjdG9yKTtcbiAgICAgIGlmIChpZnJhbWUpIHtcbiAgICAgICAgY2xlYXJJbnRlcnZhbChpbnRlcnZhbElkKTtcbiAgICAgICAgaWYgKCF0aGlzLmRhdGEubm9kZUlkKSB7XG4gICAgICAgICAgaWYgKGJsb2IgaW5zdGFuY2VvZiBCbG9iKSB7XG4gICAgICAgICAgICBpZnJhbWUuc3JjID0gVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKSArICcjdG9vbGJhcj0wJztcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgbWVzc2FnZSA9IGBcbiAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogY2VudGVyOyBoZWlnaHQ6IDEwMCU7IGZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjtcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwiZm9udC1zaXplOiAxOHB4OyBmb250LXdlaWdodDogYm9sZDsgbWFyZ2luLWJvdHRvbTogMTBweDtcIj5VbmFibGUgdG8gdmlldyB0aGUgZmlsZTwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCI+VGhlIGZpbGUgaXMgbm90IHVwbG9hZGVkIHRvIENvbnRlbnQgU2VydmVyLiBQbGVhc2UgdXBsb2FkIHRoZSBmaWxlLjwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIGA7XG4gICAgICAgICAgICBjb25zdCBlcnJvckJsb2IgPSBuZXcgQmxvYihbbWVzc2FnZV0sIHsgdHlwZTogJ3RleHQvaHRtbCcgfSk7XG4gICAgICAgICAgICBpZnJhbWUuc3JjID0gVVJMLmNyZWF0ZU9iamVjdFVSTChlcnJvckJsb2IpO1xuICAgICAgICAgICAgY29uc29sZS5lcnJvcignVGhlIGJsb2IgaXMgbm90IGEgdmFsaWQgZmlsZSBvYmplY3QuJyk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSBgXG4gICAgICAgICAgICA8ZGl2IHN0eWxlPVwiZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IGhlaWdodDogMTAwJTsgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmO1wiPlxuICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwiZm9udC1zaXplOiAxOHB4OyBmb250LXdlaWdodDogYm9sZDsgbWFyZ2luLWJvdHRvbTogMTBweDtcIj5GaWxlIFByZXZpZXc8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj5UaGlzIGlzIGEgcHJldmlldyBwbGFjZWhvbGRlciBmb3I6ICR7dGhpcy5kYXRhLmZpbGVOYW1lfTwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyOyBtYXJnaW4tdG9wOiAxMHB4O1wiPk5vZGVJZDogJHt0aGlzLmRhdGEubm9kZUlkfTwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgYDtcbiAgICAgICAgICBjb25zdCBwcmV2aWV3QmxvYiA9IG5ldyBCbG9iKFttZXNzYWdlXSwgeyB0eXBlOiAndGV4dC9odG1sJyB9KTtcbiAgICAgICAgICBpZnJhbWUuc3JjID0gVVJMLmNyZWF0ZU9iamVjdFVSTChwcmV2aWV3QmxvYik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9LCAyKTtcbiAgfVxufSJdfQ==
|
|
@@ -102,4 +102,4 @@ export function deepEqual(obj1, obj2) {
|
|
|
102
102
|
}
|
|
103
103
|
return true;
|
|
104
104
|
}
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWx5LnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZm9ybS1saWIvc3JjL2xpYi91dGlscy9mb3JtbHkudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUszQixTQUFTLGNBQWMsQ0FBQyxHQUFRLEVBQUUsSUFBWTtJQUM1QyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFO1FBQzFDLElBQUksR0FBRyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNuQyxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQixDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLHNCQUFzQixDQUFDLENBQUM7WUFDbEQsT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztJQUNILENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztBQUNWLENBQUM7QUFFRCxTQUFTLGlCQUFpQixDQUFDLEtBQThCLEVBQUUsS0FBVTtJQUNuRSxJQUFJLEtBQUssQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUMvQyxNQUFNLFNBQVMsR0FBRyxFQUFFLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNsRCxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBRXJDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLHFDQUFxQyxFQUFFLENBQUMsQ0FBQyxFQUFFLFFBQVEs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LElBQUksS0FBSyxJQUFJLElBQUksT0FBTyxJQUFJLEtBQUssUUFBUSxFQUFFLENBQUM7UUFDM0YsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRWhDLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxLQUFLLENBQUMsTUFBTTtRQUFFLE9BQU8sS0FBSyxDQUFDO0lBRWhELEtBQUssTUFBTSxHQUFHLElBQUksS0FBSyxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDN0QsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1hcCB9IGZyb20gXCJyeGpzXCI7XG5pbXBvcnQgeyBDdXN0b21Gb3JtbHlGaWVsZENvbmZpZyB9IGZyb20gXCIuLi9tb2RlbHMvY3VzdG9tLWZvcm0tZmllbGQubW9kZWxcIjtcbmltcG9ydCB7IEdyYXBoUUxTZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2VzL2dyYXBocWwuc2VydmljZVwiO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gXCJAbmd4LXRyYW5zbGF0ZS9jb3JlXCI7XG5cbmZ1bmN0aW9uIGdldE5lc3RlZFZhbHVlKG9iajogYW55LCBwYXRoOiBzdHJpbmcpOiBhbnkge1xuICByZXR1cm4gcGF0aC5zcGxpdCgnLicpLnJlZHVjZSgoYWNjLCBwYXJ0KSA9PiB7XG4gICAgaWYgKGFjYyAmJiBhY2NbcGFydF0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIGFjY1twYXJ0XTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS53YXJuKGBQYXRoIFwiJHtwYXRofVwiIG5vdCBmb3VuZCBpbiBtb2RlbGApO1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gIH0sIG9iaik7XG59XG5cbmZ1bmN0aW9uIHBvcHVsYXRlVmFyaWFibGVzKGZpZWxkOiBDdXN0b21Gb3JtbHlGaWVsZENvbmZpZywgbW9kZWw6IGFueSkge1xuICBpZiAoZmllbGQuZ3FsUXVlcnkgJiYgZmllbGQuZ3FsUXVlcnkudmFyaWFibGVzKSB7XG4gICAgY29uc3QgdmFyaWFibGVzID0geyAuLi5maWVsZC5ncWxRdWVyeS52YXJpYWJsZXMgfTtcbiAgICBPYmplY3Qua2V5cyh2YXJpYWJsZXMpLmZvckVhY2goKGtleSkgPT4ge1xuICAgICAgXG4gICAgICB2YXJpYWJsZXNba2V5XSA9IHZhcmlhYmxlc1trZXldLnJlcGxhY2UoL1xce1xce1xcc3swLDJ9bW9kZWxcXC4oLio/KVxcc3swLDJ9XFx9XFx9L2csIChfLCBtb2RlbEtleSkgPT4ge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IGdldE5lc3RlZFZhbHVlKG1vZGVsLCBtb2RlbEtleSk7XG4gICAgICAgIGlmICh2YWx1ZSAhPT0gbnVsbCAmJiB0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgcmV0dXJuIHZhbHVlLnZhbHVlO1xuICAgICAgICB9IGVsc2UgaWYodmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zb2xlLndhcm4oYE5vIHZhbHVlIGZvdW5kIGZvciB7eyBtb2RlbC4ke21vZGVsS2V5fSB9fWApO1xuICAgICAgICAgIHJldHVybiBge3sgbW9kZWwuJHttb2RlbEtleX0gfX1gOyBcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG4gICAgcmV0dXJuIHZhcmlhYmxlcztcbiAgfVxuICByZXR1cm4ge307XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1cGRhdGVGaWVsZE9wdGlvbnNXaXRoR3FsKGZpZWxkQ29uZmlnOiBhbnksIGdyYXBoUUxTZXJ2aWNlOiBHcmFwaFFMU2VydmljZSwgbW9kZWw6IGFueSk6IHZvaWQge1xuICBpZiAoZmllbGRDb25maWcuZ3FsUXVlcnkgJiYgZmllbGRDb25maWcuZ3FsUXVlcnkucXVlcnkpIHtcbiAgICBjb25zdCB7IHF1ZXJ5LCByZXNwb25zZUtleSwgb3B0aW9uc0xhYmVsLCBvcHRpb25zVmFsdWUgfSA9IGZpZWxkQ29uZmlnLmdxbFF1ZXJ5O1xuICAgIGNvbnN0IHZhcmlhYmxlcyA9IHBvcHVsYXRlVmFyaWFibGVzKGZpZWxkQ29uZmlnLCBtb2RlbCk7XG5cbiAgICBpZiAoZmllbGRDb25maWcuZ3FsUXVlcnkuaXNQYWdpbmF0aW9uQXBpKSB7XG4gICAgICBmaWVsZENvbmZpZy5wcm9wcy5vcHRpb25zID0gZ3JhcGhRTFNlcnZpY2UuZXhlY3V0ZVF1ZXJ5KHF1ZXJ5LCB2YXJpYWJsZXMpLnBpcGUoXG4gICAgICAgIG1hcCgocmVzdWx0OiBhbnkpID0+IHtcbiAgICAgICAgICByZXR1cm4gcmVzdWx0LmRhdGFbcmVzcG9uc2VLZXldLnJvd3MubWFwKChpdGVtOiBhbnkpID0+IHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgIGxhYmVsOiBpdGVtW29wdGlvbnNMYWJlbF0sXG4gICAgICAgICAgICAgIHZhbHVlOiBpdGVtW29wdGlvbnNWYWx1ZV1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICB9KSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGZpZWxkQ29uZmlnLnByb3BzLm9wdGlvbnMgPSBncmFwaFFMU2VydmljZS5leGVjdXRlUXVlcnkocXVlcnksIHZhcmlhYmxlcykucGlwZShcbiAgICAgICAgbWFwKChyZXN1bHQ6IGFueSkgPT4ge1xuICAgICAgICAgIGxldCBvcHRpb25zID0gcmVzdWx0LmRhdGFbcmVzcG9uc2VLZXldO1xuICAgICAgICAgIGlmKGZpZWxkQ29uZmlnLnByb3BzLm9wdGlvbnNUb0JlRXhjbHVkZWQ/Lmxlbmd0aCkge1xuICAgICAgICAgICAgY29uc3Qgb3B0aW9uc1RvQmVSZW1vdmVkID0gZmllbGRDb25maWcucHJvcHMub3B0aW9uc1RvQmVFeGNsdWRlZDtcbiAgICAgICAgICAgIGNvbnN0IHJlbW92ZVNldCA9IG5ldyBTZXQob3B0aW9uc1RvQmVSZW1vdmVkKTtcbiAgICAgICAgICAgIG9wdGlvbnMgPSBvcHRpb25zLmZpbHRlcigoaXRlbTogYW55KSA9PiAhcmVtb3ZlU2V0LmhhcyhpdGVtW2ZpZWxkQ29uZmlnLnByb3BzLm9wdGlvbktleV0pKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYoZmllbGRDb25maWcucHJvcHMuYWRkT3RoZXJzT3B0aW9uKSB7XG4gICAgICAgICAgICBjb25zdCBvcHRucyA9IG9wdGlvbnMubWFwKChpdGVtOiBhbnkpID0+ICh7XG4gICAgICAgICAgICAgIGxhYmVsOiBpdGVtW29wdGlvbnNMYWJlbF0sXG4gICAgICAgICAgICAgIHZhbHVlOiBpdGVtW29wdGlvbnNWYWx1ZV1cbiAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAgIHsgbGFiZWw6ICdPdGhlcnMnLCB2YWx1ZTogJ090aGVycyd9LFxuICAgICAgICAgICAgICAuLi5vcHRuc1xuICAgICAgICAgICAgXVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gb3B0aW9ucy5tYXAoKGl0ZW06IGFueSkgPT4gKHtcbiAgICAgICAgICAgICAgbGFiZWw6IGl0ZW1bb3B0aW9uc0xhYmVsXSxcbiAgICAgICAgICAgICAgdmFsdWU6IGl0ZW1bb3B0aW9uc1ZhbHVlXVxuICAgICAgICAgICAgfSkpO1xuICAgICAgICAgIH1cbiAgICAgIH0pKTtcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZsYXR0ZW5Kc29uKGRhdGE6IGFueSwgcmVzdWx0OiBhbnkgPSB7fSkge1xuICBmb3IgKGNvbnN0IGtleSBpbiBkYXRhKSB7XG4gICAgaWYgKHR5cGVvZiBkYXRhW2tleV0gPT09ICdvYmplY3QnICYmICFBcnJheS5pc0FycmF5KGRhdGFba2V5XSkpIHtcbiAgICAgIGZsYXR0ZW5Kc29uKGRhdGFba2V5XSwgcmVzdWx0KTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmVzdWx0W2tleV0gPSBkYXRhW2tleV07XG4gICAgfVxuICB9XG4gIHJldHVybiByZXN1bHQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWVwRXF1YWwob2JqMTogYW55LCBvYmoyOiBhbnkpIHtcbiAgaWYgKG9iajEgPT09IG9iajIpIHJldHVybiB0cnVlO1xuXG4gIGlmIChvYmoxID09PSBudWxsIHx8IHR5cGVvZiBvYmoxICE9PSAnb2JqZWN0JyB8fCBvYmoyID09PSBudWxsIHx8IHR5cGVvZiBvYmoyICE9PSAnb2JqZWN0Jykge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGNvbnN0IGtleXMxID0gT2JqZWN0LmtleXMob2JqMSk7XG4gIGNvbnN0IGtleXMyID0gT2JqZWN0LmtleXMob2JqMik7XG5cbiAgaWYgKGtleXMxLmxlbmd0aCAhPT0ga2V5czIubGVuZ3RoKSByZXR1cm4gZmFsc2U7XG5cbiAgZm9yIChjb25zdCBrZXkgb2Yga2V5czEpIHtcbiAgICBpZiAoIWtleXMyLmluY2x1ZGVzKGtleSkgfHwgIWRlZXBFcXVhbChvYmoxW2tleV0sIG9iajJba2V5XSkpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdHJ1ZTtcbn1cbiJdfQ==
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWx5LnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9mb3JtL3NyYy9saWIvdXRpbHMvZm9ybWx5LnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFLM0IsU0FBUyxjQUFjLENBQUMsR0FBUSxFQUFFLElBQVk7SUFDNUMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRTtRQUMxQyxJQUFJLEdBQUcsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDbkMsT0FBTyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkIsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxzQkFBc0IsQ0FBQyxDQUFDO1lBQ2xELE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUM7SUFDSCxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDVixDQUFDO0FBRUQsU0FBUyxpQkFBaUIsQ0FBQyxLQUE4QixFQUFFLEtBQVU7SUFDbkUsSUFBSSxLQUFLLENBQUMsUUFBUSxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDL0MsTUFBTSxTQUFTLEdBQUcsRUFBRSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDbEQsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRTtZQUVyQyxTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxxQ0FBcUMsRUFBRSxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsRUFB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QUssSUFBSSxJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzNGLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUVoQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssS0FBSyxDQUFDLE1BQU07UUFBRSxPQUFPLEtBQUssQ0FBQztJQUVoRCxLQUFLLE1BQU0sR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQzdELE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBtYXAgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgQ3VzdG9tRm9ybWx5RmllbGRDb25maWcgfSBmcm9tIFwiLi4vbW9kZWxzL2N1c3RvbS1mb3JtLWZpZWxkLm1vZGVsXCI7XG5pbXBvcnQgeyBHcmFwaFFMU2VydmljZSB9IGZyb20gXCIuLi9zZXJ2aWNlcy9ncmFwaHFsLnNlcnZpY2VcIjtcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tIFwiQG5neC10cmFuc2xhdGUvY29yZVwiO1xuXG5mdW5jdGlvbiBnZXROZXN0ZWRWYWx1ZShvYmo6IGFueSwgcGF0aDogc3RyaW5nKTogYW55IHtcbiAgcmV0dXJuIHBhdGguc3BsaXQoJy4nKS5yZWR1Y2UoKGFjYywgcGFydCkgPT4ge1xuICAgIGlmIChhY2MgJiYgYWNjW3BhcnRdICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiBhY2NbcGFydF07XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUud2FybihgUGF0aCBcIiR7cGF0aH1cIiBub3QgZm91bmQgaW4gbW9kZWxgKTtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICB9LCBvYmopO1xufVxuXG5mdW5jdGlvbiBwb3B1bGF0ZVZhcmlhYmxlcyhmaWVsZDogQ3VzdG9tRm9ybWx5RmllbGRDb25maWcsIG1vZGVsOiBhbnkpIHtcbiAgaWYgKGZpZWxkLmdxbFF1ZXJ5ICYmIGZpZWxkLmdxbFF1ZXJ5LnZhcmlhYmxlcykge1xuICAgIGNvbnN0IHZhcmlhYmxlcyA9IHsgLi4uZmllbGQuZ3FsUXVlcnkudmFyaWFibGVzIH07XG4gICAgT2JqZWN0LmtleXModmFyaWFibGVzKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgIFxuICAgICAgdmFyaWFibGVzW2tleV0gPSB2YXJpYWJsZXNba2V5XS5yZXBsYWNlKC9cXHtcXHtcXHN7MCwyfW1vZGVsXFwuKC4qPylcXHN7MCwyfVxcfVxcfS9nLCAoXywgbW9kZWxLZXkpID0+IHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSBnZXROZXN0ZWRWYWx1ZShtb2RlbCwgbW9kZWxLZXkpO1xuICAgICAgICBpZiAodmFsdWUgIT09IG51bGwgJiYgdHlwZW9mIHZhbHVlID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgIHJldHVybiB2YWx1ZS52YWx1ZTtcbiAgICAgICAgfSBlbHNlIGlmKHZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc29sZS53YXJuKGBObyB2YWx1ZSBmb3VuZCBmb3Ige3sgbW9kZWwuJHttb2RlbEtleX0gfX1gKTtcbiAgICAgICAgICByZXR1cm4gYHt7IG1vZGVsLiR7bW9kZWxLZXl9IH19YDsgXG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuICAgIHJldHVybiB2YXJpYWJsZXM7XG4gIH1cbiAgcmV0dXJuIHt9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdXBkYXRlRmllbGRPcHRpb25zV2l0aEdxbChmaWVsZENvbmZpZzogYW55LCBncmFwaFFMU2VydmljZTogR3JhcGhRTFNlcnZpY2UsIG1vZGVsOiBhbnkpOiB2b2lkIHtcbiAgaWYgKGZpZWxkQ29uZmlnLmdxbFF1ZXJ5ICYmIGZpZWxkQ29uZmlnLmdxbFF1ZXJ5LnF1ZXJ5KSB7XG4gICAgY29uc3QgeyBxdWVyeSwgcmVzcG9uc2VLZXksIG9wdGlvbnNMYWJlbCwgb3B0aW9uc1ZhbHVlIH0gPSBmaWVsZENvbmZpZy5ncWxRdWVyeTtcbiAgICBjb25zdCB2YXJpYWJsZXMgPSBwb3B1bGF0ZVZhcmlhYmxlcyhmaWVsZENvbmZpZywgbW9kZWwpO1xuXG4gICAgaWYgKGZpZWxkQ29uZmlnLmdxbFF1ZXJ5LmlzUGFnaW5hdGlvbkFwaSkge1xuICAgICAgZmllbGRDb25maWcucHJvcHMub3B0aW9ucyA9IGdyYXBoUUxTZXJ2aWNlLmV4ZWN1dGVRdWVyeShxdWVyeSwgdmFyaWFibGVzKS5waXBlKFxuICAgICAgICBtYXAoKHJlc3VsdDogYW55KSA9PiB7XG4gICAgICAgICAgcmV0dXJuIHJlc3VsdC5kYXRhW3Jlc3BvbnNlS2V5XS5yb3dzLm1hcCgoaXRlbTogYW55KSA9PiB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICBsYWJlbDogaXRlbVtvcHRpb25zTGFiZWxdLFxuICAgICAgICAgICAgICB2YWx1ZTogaXRlbVtvcHRpb25zVmFsdWVdXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfSkpO1xuICAgIH0gZWxzZSB7XG4gICAgICBmaWVsZENvbmZpZy5wcm9wcy5vcHRpb25zID0gZ3JhcGhRTFNlcnZpY2UuZXhlY3V0ZVF1ZXJ5KHF1ZXJ5LCB2YXJpYWJsZXMpLnBpcGUoXG4gICAgICAgIG1hcCgocmVzdWx0OiBhbnkpID0+IHtcbiAgICAgICAgICBsZXQgb3B0aW9ucyA9IHJlc3VsdC5kYXRhW3Jlc3BvbnNlS2V5XTtcbiAgICAgICAgICBpZihmaWVsZENvbmZpZy5wcm9wcy5vcHRpb25zVG9CZUV4Y2x1ZGVkPy5sZW5ndGgpIHtcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbnNUb0JlUmVtb3ZlZCA9IGZpZWxkQ29uZmlnLnByb3BzLm9wdGlvbnNUb0JlRXhjbHVkZWQ7XG4gICAgICAgICAgICBjb25zdCByZW1vdmVTZXQgPSBuZXcgU2V0KG9wdGlvbnNUb0JlUmVtb3ZlZCk7XG4gICAgICAgICAgICBvcHRpb25zID0gb3B0aW9ucy5maWx0ZXIoKGl0ZW06IGFueSkgPT4gIXJlbW92ZVNldC5oYXMoaXRlbVtmaWVsZENvbmZpZy5wcm9wcy5vcHRpb25LZXldKSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmKGZpZWxkQ29uZmlnLnByb3BzLmFkZE90aGVyc09wdGlvbikge1xuICAgICAgICAgICAgY29uc3Qgb3B0bnMgPSBvcHRpb25zLm1hcCgoaXRlbTogYW55KSA9PiAoe1xuICAgICAgICAgICAgICBsYWJlbDogaXRlbVtvcHRpb25zTGFiZWxdLFxuICAgICAgICAgICAgICB2YWx1ZTogaXRlbVtvcHRpb25zVmFsdWVdXG4gICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgICB7IGxhYmVsOiAnT3RoZXJzJywgdmFsdWU6ICdPdGhlcnMnfSxcbiAgICAgICAgICAgICAgLi4ub3B0bnNcbiAgICAgICAgICAgIF1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIG9wdGlvbnMubWFwKChpdGVtOiBhbnkpID0+ICh7XG4gICAgICAgICAgICAgIGxhYmVsOiBpdGVtW29wdGlvbnNMYWJlbF0sXG4gICAgICAgICAgICAgIHZhbHVlOiBpdGVtW29wdGlvbnNWYWx1ZV1cbiAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICB9XG4gICAgICB9KSk7XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmbGF0dGVuSnNvbihkYXRhOiBhbnksIHJlc3VsdDogYW55ID0ge30pIHtcbiAgZm9yIChjb25zdCBrZXkgaW4gZGF0YSkge1xuICAgIGlmICh0eXBlb2YgZGF0YVtrZXldID09PSAnb2JqZWN0JyAmJiAhQXJyYXkuaXNBcnJheShkYXRhW2tleV0pKSB7XG4gICAgICBmbGF0dGVuSnNvbihkYXRhW2tleV0sIHJlc3VsdCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlc3VsdFtrZXldID0gZGF0YVtrZXldO1xuICAgIH1cbiAgfVxuICByZXR1cm4gcmVzdWx0O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZGVlcEVxdWFsKG9iajE6IGFueSwgb2JqMjogYW55KSB7XG4gIGlmIChvYmoxID09PSBvYmoyKSByZXR1cm4gdHJ1ZTtcblxuICBpZiAob2JqMSA9PT0gbnVsbCB8fCB0eXBlb2Ygb2JqMSAhPT0gJ29iamVjdCcgfHwgb2JqMiA9PT0gbnVsbCB8fCB0eXBlb2Ygb2JqMiAhPT0gJ29iamVjdCcpIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBjb25zdCBrZXlzMSA9IE9iamVjdC5rZXlzKG9iajEpO1xuICBjb25zdCBrZXlzMiA9IE9iamVjdC5rZXlzKG9iajIpO1xuXG4gIGlmIChrZXlzMS5sZW5ndGggIT09IGtleXMyLmxlbmd0aCkgcmV0dXJuIGZhbHNlO1xuXG4gIGZvciAoY29uc3Qga2V5IG9mIGtleXMxKSB7XG4gICAgaWYgKCFrZXlzMi5pbmNsdWRlcyhrZXkpIHx8ICFkZWVwRXF1YWwob2JqMVtrZXldLCBvYmoyW2tleV0pKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHRydWU7XG59XG4iXX0=
|
|
@@ -15,4 +15,4 @@ export function emailValidator(control) {
|
|
|
15
15
|
return { email: true };
|
|
16
16
|
}
|
|
17
17
|
}
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWVtYWlsLXZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZm9ybS9zcmMvbGliL3ZhbGlkYXRvcnMvY3VzdG9tLWVtYWlsLXZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsY0FBYyxDQUFDLE9BQXdCO0lBQ3JELE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO0lBQ2xDLE1BQU0sWUFBWSxHQUFHLDRCQUE0QixDQUFDLENBQUMsNkJBQTZCO0lBQ2hGLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxzQkFBc0IsRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsd0JBQXdCLENBQUMsQ0FBQztJQUUvRyxJQUFJLENBQUMsS0FBSyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUN2QyxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ1YsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3pFLElBQUksaUJBQWlCLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7Z0JBQ3ZDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUsQ0FBQztZQUNwQyxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztTQUFNLENBQUM7UUFDTixPQUFPLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDO0lBQ3pCLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gZW1haWxWYWxpZGF0b3IoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSB7XG4gIGNvbnN0IHZhbHVlID0gY29udHJvbC52YWx1ZSB8fCAnJztcbiAgY29uc3QgZW1haWxQYXR0ZXJuID0gL15bXlxcc0BdK0BbXlxcc0BdK1xcLlteXFxzQF0rJC87IC8vIFNpbXBsZSBlbWFpbCByZWdleCBwYXR0ZXJuXG4gIGNvbnN0IHJlc3RyaWN0ZWREb21haW5zID0gWydsdXBpbmRpYWdub3N0aWNzLmNvbScsICdsdXBpbi5jb20nLCAnYXRoYXJ2YWJpbGl0eS5jb20nLCAnbHVwaW5kaWdpdGFsaGVhbHRoLmNvbSddO1xuXG4gIGlmICghdmFsdWUgfHwgZW1haWxQYXR0ZXJuLnRlc3QodmFsdWUpKSB7XG4gICAgaWYgKHZhbHVlKSB7XG4gICAgICBjb25zdCBkb21haW4gPSB2YWx1ZS5zdWJzdHJpbmcodmFsdWUubGFzdEluZGV4T2YoJ0AnKSArIDEpLnRvTG93ZXJDYXNlKCk7XG4gICAgICBpZiAocmVzdHJpY3RlZERvbWFpbnMuaW5jbHVkZXMoZG9tYWluKSkge1xuICAgICAgICByZXR1cm4geyByZXN0cmljdGVkRG9tYWluOiB0cnVlIH07IFxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbnVsbDsgXG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIHsgZW1haWw6IHRydWUgfTtcbiAgfVxufVxuIl19
|
|
@@ -8,4 +8,4 @@ export function einValidator(control) {
|
|
|
8
8
|
return { ein: true };
|
|
9
9
|
}
|
|
10
10
|
}
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWluLXZhbGlkYXRvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Zvcm0vc3JjL2xpYi92YWxpZGF0b3JzL2Vpbi12YWxpZGF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxZQUFZLENBQUMsT0FBd0I7SUFDbkQsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7SUFDbEMsTUFBTSxVQUFVLEdBQUcsZ0NBQWdDLENBQUM7SUFFcEQsSUFBSSxDQUFDLEtBQUssSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDckMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO1NBQU0sQ0FBQztRQUNOLE9BQU8sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDdkIsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmV4cG9ydCBmdW5jdGlvbiBlaW5WYWxpZGF0b3IoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSB7XG4gIGNvbnN0IHZhbHVlID0gY29udHJvbC52YWx1ZSB8fCAnJztcbiAgY29uc3QgZWluUGF0dGVybiA9IC9eKD8hMDApXFxkezJ9LSg/ITAwMDAwMDApXFxkezd9JC87XG5cbiAgaWYgKCF2YWx1ZSB8fCBlaW5QYXR0ZXJuLnRlc3QodmFsdWUpKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIHsgZWluOiB0cnVlIH07IFxuICB9XG59Il19
|
|
@@ -8,4 +8,4 @@ export function gstValidator(control) {
|
|
|
8
8
|
return { gst: true };
|
|
9
9
|
}
|
|
10
10
|
}
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3N0LXZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZm9ybS9zcmMvbGliL3ZhbGlkYXRvcnMvZ3N0LXZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsWUFBWSxDQUFDLE9BQXdCO0lBQ25ELE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO0lBQ2xDLE1BQU0sVUFBVSxHQUFHLGdFQUFnRSxDQUFDO0lBRXBGLElBQUksQ0FBQyxLQUFLLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3JDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztTQUFNLENBQUM7UUFDTixPQUFPLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxDQUFDO0lBQ3ZCLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gZ3N0VmFsaWRhdG9yKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCkge1xuICBjb25zdCB2YWx1ZSA9IGNvbnRyb2wudmFsdWUgfHwgJyc7XG4gIGNvbnN0IGdzdFBhdHRlcm4gPSAvXlswLTldezJ9W0EtWl17NX1bMC05XXs0fVtBLVpdezF9WzEtOUEtWl17MX1bWl17MX1bMC05QS1aXXsxfSQvO1xuXG4gIGlmICghdmFsdWUgfHwgZ3N0UGF0dGVybi50ZXN0KHZhbHVlKSkge1xuICAgIHJldHVybiBudWxsO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiB7IGdzdDogdHJ1ZSB9O1xuICB9XG59XG4iXX0=
|
|
@@ -14,4 +14,4 @@ export function normalEmailValidator(control) {
|
|
|
14
14
|
}
|
|
15
15
|
return { email: true };
|
|
16
16
|
}
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9ybWFsLWVtYWlsLXZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZm9ybS9zcmMvbGliL3ZhbGlkYXRvcnMvbm9ybWFsLWVtYWlsLXZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsb0JBQW9CLENBQUMsT0FBd0I7SUFDM0QsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7SUFDbEMsTUFBTSxjQUFjLEdBQUcsQ0FBQyxzQkFBc0IsRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsd0JBQXdCLENBQUMsQ0FBQztJQUU1RyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDWCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDRCxNQUFNLFlBQVksR0FBRyw4QkFBOEIsQ0FBQztJQUNwRCxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBRXhDLElBQUksS0FBSyxFQUFFLENBQUM7UUFDVixNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDeEIsSUFBSSxjQUFjLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDcEMsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO0lBQ0gsQ0FBQztJQUNELE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7QUFDekIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuZXhwb3J0IGZ1bmN0aW9uIG5vcm1hbEVtYWlsVmFsaWRhdG9yKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCkge1xuICBjb25zdCB2YWx1ZSA9IGNvbnRyb2wudmFsdWUgfHwgJyc7XG4gIGNvbnN0IGFsbG93ZWREb21haW5zID0gWydsdXBpbmRpYWdub3N0aWNzLmNvbScsICdsdXBpbi5jb20nLCAnYXRoYXJ2YWJpbGl0eS5jb20nLCAnbHVwaW5kaWdpdGFsaGVhbHRoLmNvbSddO1xuXG4gIGlmICghdmFsdWUpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICBjb25zdCBlbWFpbFBhdHRlcm4gPSAvXlteXFxzQF0rQChbXlxcc0BdK1xcLlteXFxzQF0rKSQvO1xuICBjb25zdCBtYXRjaCA9IHZhbHVlLm1hdGNoKGVtYWlsUGF0dGVybik7XG5cbiAgaWYgKG1hdGNoKSB7XG4gICAgY29uc3QgZG9tYWluID0gbWF0Y2hbMV07XG4gICAgaWYgKGFsbG93ZWREb21haW5zLmluY2x1ZGVzKGRvbWFpbikpIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuICByZXR1cm4geyBlbWFpbDogdHJ1ZSB9O1xufVxuIl19
|
|
@@ -8,4 +8,4 @@ export function npiValidator(control) {
|
|
|
8
8
|
return { npi: true };
|
|
9
9
|
}
|
|
10
10
|
}
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnBpLXZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZm9ybS9zcmMvbGliL3ZhbGlkYXRvcnMvbnBpLXZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsWUFBWSxDQUFDLE9BQXdCO0lBQ25ELE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO0lBQ2xDLE1BQU0sVUFBVSxHQUFHLGlCQUFpQixDQUFDO0lBRXJDLElBQUksQ0FBQyxLQUFLLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3JDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztTQUFNLENBQUM7UUFDTixPQUFPLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxDQUFDO0lBQ3ZCLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gbnBpVmFsaWRhdG9yKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCkge1xuICBjb25zdCB2YWx1ZSA9IGNvbnRyb2wudmFsdWUgfHwgJyc7XG4gIGNvbnN0IG5waVBhdHRlcm4gPSAvXlsxLTldWzAtOV17OX0kLztcblxuICBpZiAoIXZhbHVlIHx8IG5waVBhdHRlcm4udGVzdCh2YWx1ZSkpIHtcbiAgICByZXR1cm4gbnVsbDsgXG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIHsgbnBpOiB0cnVlIH07XG4gIH1cbn0iXX0=
|
|
@@ -8,4 +8,4 @@ export function panValidator(control) {
|
|
|
8
8
|
return { pan: true };
|
|
9
9
|
}
|
|
10
10
|
}
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFuLXZhbGlkYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvZm9ybS9zcmMvbGliL3ZhbGlkYXRvcnMvcGFuLXZhbGlkYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLFVBQVUsWUFBWSxDQUFDLE9BQXdCO0lBQ25ELE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO0lBQ2xDLE1BQU0sVUFBVSxHQUFHLDRCQUE0QixDQUFDO0lBRWhELElBQUksQ0FBQyxLQUFLLElBQUksVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ3JDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztTQUFNLENBQUM7UUFDTixPQUFPLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxDQUFDO0lBQ3ZCLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5leHBvcnQgZnVuY3Rpb24gcGFuVmFsaWRhdG9yKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCkge1xuICBjb25zdCB2YWx1ZSA9IGNvbnRyb2wudmFsdWUgfHwgJyc7XG4gIGNvbnN0IHBhblBhdHRlcm4gPSAvXltBLVpdezV9WzAtOV17NH1bQS1aXXsxfSQvO1xuXG4gIGlmICghdmFsdWUgfHwgcGFuUGF0dGVybi50ZXN0KHZhbHVlKSkge1xuICAgIHJldHVybiBudWxsO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiB7IHBhbjogdHJ1ZSB9O1xuICB9XG59XG4iXX0=
|