@db-ux/ngx-core-components 1.1.0 → 1.1.1
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 +6 -1
- package/components/navigation-item/model.d.ts +3 -2
- package/components/navigation-item/navigation-item.d.ts +2 -0
- package/esm2022/components/checkbox/checkbox.mjs +1 -1
- package/esm2022/components/input/input.mjs +1 -1
- package/esm2022/components/navigation-item/model.mjs +1 -1
- package/esm2022/components/navigation-item/navigation-item.mjs +24 -5
- package/esm2022/components/radio/radio.mjs +7 -5
- package/esm2022/components/select/select.mjs +1 -1
- package/esm2022/components/switch/switch.mjs +1 -1
- package/esm2022/components/tab-item/tab-item.mjs +1 -1
- package/esm2022/components/textarea/textarea.mjs +1 -1
- package/fesm2022/db-ux-ngx-core-components.mjs +27 -6
- package/fesm2022/db-ux-ngx-core-components.mjs.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -53,6 +53,10 @@ The current default development config in `angular.json` doesn't use output hash
|
|
|
53
53
|
As a solution add `
|
|
54
54
|
"outputHashing": "media"` to `configurations/development` in`angular.json`.
|
|
55
55
|
|
|
56
|
+
### DB Theme
|
|
57
|
+
|
|
58
|
+
In case that you're building a website or application for Deutsche Bahn, you'll additionally have to install the DB Theme via the [`@db-ux/db-theme`](https://www.npmjs.com/package/@db-ux/db-theme) node package (even also available as an inner source node package, as described within that packages README).
|
|
59
|
+
|
|
56
60
|
## Usage
|
|
57
61
|
|
|
58
62
|
```ts app.component.ts
|
|
@@ -114,7 +118,8 @@ There are 3 ways to use Events in Angular:
|
|
|
114
118
|
As we'd like to perfectly support our users and customers on their digital journey, the usage of Deutsche Bahn brand and trademarks are bound of clear guidelines and restrictions even when being used with the code that we're provide with this product; Deutsche Bahn fully reserves all rights regarding the Deutsche Bahn brand, even though that we're providing the code of DB UX Design System products free to use and release it under the Apache 2.0 license.
|
|
115
119
|
Please have a look at our brand portal at <https://marketingportal.extranet.deutschebahn.com/> for any further questions and whom to contact on any brand issues.
|
|
116
120
|
|
|
117
|
-
|
|
121
|
+
For any usage outside of Deutsche Bahn websites and applications you aren't allowed to use any Deutsche Bahn brand and
|
|
122
|
+
design assets as well as protected characteristics and trademarks, that for not including the DB Theme.
|
|
118
123
|
|
|
119
124
|
## Contributions
|
|
120
125
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ClickEvent, ClickEventProps, ClickEventState, GlobalProps, GlobalState, IconProps, InitializedState, NavigationBackButtonProps, ShowIconProps, TextProps, WidthProps } from '../../shared/model';
|
|
1
|
+
import { ClickEvent, ClickEventProps, ClickEventState, GlobalProps, GlobalState, IconProps, InitializedState, NavigationBackButtonProps, NavigationBehaviorState, ShowIconProps, TextProps, WidthProps } from '../../shared/model';
|
|
2
2
|
import { NavigationItemSafeTriangle } from '../../utils/navigation';
|
|
3
3
|
export type DBNavigationItemDefaultProps = {
|
|
4
4
|
/**
|
|
@@ -30,5 +30,6 @@ export type DBNavigationItemDefaultState = {
|
|
|
30
30
|
hasSubNavigation?: boolean;
|
|
31
31
|
updateSubNavigationState: () => void;
|
|
32
32
|
navigationItemSafeTriangle?: NavigationItemSafeTriangle;
|
|
33
|
+
autoClose?: boolean;
|
|
33
34
|
};
|
|
34
|
-
export type DBNavigationItemState = DBNavigationItemDefaultState & ClickEventState<HTMLButtonElement> & GlobalState & InitializedState;
|
|
35
|
+
export type DBNavigationItemState = DBNavigationItemDefaultState & ClickEventState<HTMLButtonElement> & GlobalState & InitializedState & NavigationBehaviorState;
|
|
@@ -25,8 +25,10 @@ export declare class DBNavigationItem {
|
|
|
25
25
|
hasAreaPopup: DBNavigationItemState["hasAreaPopup"];
|
|
26
26
|
hasSubNavigation: DBNavigationItemState["hasSubNavigation"];
|
|
27
27
|
isSubNavigationExpanded: DBNavigationItemState["isSubNavigationExpanded"];
|
|
28
|
+
autoClose: DBNavigationItemState["autoClose"];
|
|
28
29
|
subNavigationId: DBNavigationItemState["subNavigationId"];
|
|
29
30
|
navigationItemSafeTriangle: DBNavigationItemState["navigationItemSafeTriangle"];
|
|
31
|
+
handleNavigationItemClick(event: unknown): ReturnType<DBNavigationItemState["handleNavigationItemClick"]>;
|
|
30
32
|
handleClick(event: ClickEvent<HTMLButtonElement>): ReturnType<DBNavigationItemState["handleClick"]>;
|
|
31
33
|
handleBackClick(event: ClickEvent<HTMLButtonElement>): ReturnType<DBNavigationItemState["handleBackClick"]>;
|
|
32
34
|
updateSubNavigationState(): ReturnType<DBNavigationItemState["updateSubNavigationState"]>;
|
|
@@ -324,4 +324,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
324
324
|
type: ViewChild,
|
|
325
325
|
args: ["_ref"]
|
|
326
326
|
}] } });
|
|
327
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9vdXRwdXQvYW5ndWxhci9zcmMvY29tcG9uZW50cy9jaGVja2JveC9jaGVja2JveC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEVBQ1QsU0FBUyxFQUVULEtBQUssRUFFSSxNQUFNLGVBQWUsQ0FBQztBQUNqQyxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHekUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBSy9DLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUNBQWlDLEVBQ2pDLHlCQUF5QixFQUN6QixxQkFBcUIsRUFDckIsK0JBQStCLEdBQ2hDLE1BQU0sd0JBQXdCLENBQUM7QUFFaEMsT0FBTyxFQUNMLDJCQUEyQixHQUU1QixNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQ0wsR0FBRyxFQUNILEtBQUssRUFDTCxXQUFXLEVBQ1gsWUFBWSxFQUNaLGlCQUFpQixFQUNqQixJQUFJLEdBQ0wsTUFBTSxhQUFhLENBQUM7OztBQXZCckIsTUFBTSxZQUFZLEdBQUcsRUFBRSxDQUFDO0FBOEV4QixNQUFNLE9BQU8sVUFBVTtJQUNyQixZQUFvQixRQUFtQjtRQUFuQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ3ZDLDRCQUF1QixHQUFHLHVCQUF1QixDQUFDO1FBQ2xELDBCQUFxQixHQUFHLHFCQUFxQixDQUFDO1FBQzlDLFFBQUcsR0FBRyxHQUFHLENBQUM7UUFDVixnQkFBVyxHQUFHLFdBQVcsQ0FBQztRQUMxQixzQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztRQW9CNUIsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDOUIsV0FBTSxHQUFHLElB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Qzs0QkFDWCxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLFlBQVk7NEJBQ3ZCLEtBQUssRUFBRSxJQUFJO3lCQUNYLENBQUM7b0JBQ0YsUUFBUSxFQUFFLGFBQWE7b0JBQ3ZCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMENUO29CQUNELFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDO2lCQUNwQzs4RUFTVSxFQUFFO3NCQUFWLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFFSSxRQUFRO3NCQUFqQixNQUFNO2dCQUNHLE1BQU07c0JBQWYsTUFBTTtnQkFDRyxNQUFNO3NCQUFmLE1BQU07Z0JBQ0csSUFBSTtzQkFBYixNQUFNO2dCQUNHLE9BQU87c0JBQWhCLE1BQU07Z0JBQ0csS0FBSztzQkFBZCxNQUFNO2dCQUVZLElBQUk7c0JBQXRCLFNBQVM7dUJBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBDb21wb25lbnQsXG4gIFZpZXdDaGlsZCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG5SZW5kZXJlcjIgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5cbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcblxuY29uc3QgZGVmYXVsdFByb3BzID0ge307XG5cbmltcG9ydCB7IERCQ2hlY2tib3hQcm9wcywgREJDaGVja2JveFN0YXRlIH0gZnJvbSBcIi4vbW9kZWxcIjtcbmltcG9ydCB7XG4gIERFRkFVTFRfSU5WQUxJRF9NRVNTQUdFLFxuICBERUZBVUxUX0lOVkFMSURfTUVTU0FHRV9JRF9TVUZGSVgsXG4gIERFRkFVTFRfTUVTU0FHRV9JRF9TVUZGSVgsXG4gIERFRkFVTFRfVkFMSURfTUVTU0FHRSxcbiAgREVGQVVMVF9WQUxJRF9NRVNTQUdFX0lEX1NVRkZJWCxcbn0gZnJvbSBcIi4uLy4uL3NoYXJlZC9jb25zdGFudHNcIjtcbmltcG9ydCB7IENoYW5nZUV2ZW50LCBJbnRlcmFjdGlvbkV2ZW50IH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9tb2RlbFwiO1xuaW1wb3J0IHtcbiAgaGFuZGxlRnJhbWV3b3JrRXZlbnRBbmd1bGFyLFxuICBoYW5kbGVGcmFtZXdvcmtFdmVudFZ1ZSxcbn0gZnJvbSBcIi4uLy4uL3V0aWxzL2Zvcm0tY29tcG9uZW50c1wiO1xuaW1wb3J0IHsgREJJbmZvdGV4dCB9IGZyb20gXCIuLi9pbmZvdGV4dC9pbmZvdGV4dFwiO1xuaW1wb3J0IHtcbiAgY2xzLFxuICBkZWxheSxcbiAgZ2V0SGlkZVByb3AsXG4gIGhhc1ZvaWNlT3ZlcixcbiAgc3RyaW5nUHJvcFZpc2libGUsXG4gIHV1aWQsXG59IGZyb20gXCIuLi8uLi91dGlsc1wiO1xuXG5AQ29tcG9uZW50KHtcblx0XHRwcm92aWRlcnM6IFt7XG5cdFx0XHRwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcblx0XHRcdHVzZUV4aXN0aW5nOiBEQkNoZWNrYm94LFxuXHRcdFx0bXVsdGk6IHRydWVcblx0XHR9XSxcdFxuICBzZWxlY3RvcjogXCJkYi1jaGVja2JveFwiLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXZcbiAgICAgIFtjbGFzc109XCJjbHMoJ2RiLWNoZWNrYm94JywgY2xhc3NOYW1lKVwiXG4gICAgICBbYXR0ci5kYXRhLXNpemVdPVwic2l6ZVwiXG4gICAgICBbYXR0ci5kYXRhLWhpZGUtbGFiZWxdPVwiZ2V0SGlkZVByb3Aoc2hvd0xhYmVsKVwiXG4gICAgPlxuICAgICAgPGxhYmVsIFthdHRyLmZvcl09XCJfaWRcIj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICBbYXR0ci5hcmlhLWludmFsaWRdPVwidmFsaWRhdGlvbiA9PT0gJ2ludmFsaWQnXCJcbiAgICAgICAgICBbYXR0ci5kYXRhLWN1c3RvbS12YWxpZGl0eV09XCJ2YWxpZGF0aW9uXCJcbiAgICAgICAgICAjX3JlZlxuICAgICAgICAgIFthdHRyLmlkXT1cIl9pZFwiXG4gICAgICAgICAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgICAgICAgICBbY2hlY2tlZF09XCJjaGVja2VkXCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgIFthdHRyLnZhbHVlXT1cInZhbHVlXCJcbiAgICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgICAgIChjaGFuZ2UpPVwiaGFuZGxlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgIChibHVyKT1cImhhbmRsZUJsdXIoJGV2ZW50KVwiXG4gICAgICAgICAgKGZvY3VzKT1cImhhbmRsZUZvY3VzKCRldmVudClcIlxuICAgICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiX2Rlc2NCeUlkc1wiXG4gICAgICAgIC8+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsYWJlbFwiPnt7bGFiZWx9fTwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIShsYWJlbClcIj48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2xhYmVsPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0cmluZ1Byb3BWaXNpYmxlKG1lc3NhZ2UsIHNob3dNZXNzYWdlKVwiPlxuICAgICAgICA8ZGItaW5mb3RleHQgc2l6ZT1cInNtYWxsXCIgW2ljb25dPVwibWVzc2FnZUljb25cIiBbaWRdPVwiX21lc3NhZ2VJZFwiPlxuICAgICAgICAgIHt7bWVzc2FnZX19XG4gICAgICAgIDwvZGItaW5mb3RleHQ+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxkYi1pbmZvdGV4dCBzaXplPVwic21hbGxcIiBzZW1hbnRpYz1cInN1Y2Nlc3NmdWxcIiBbaWRdPVwiX3ZhbGlkTWVzc2FnZUlkXCI+XG4gICAgICAgIHt7dmFsaWRNZXNzYWdlID8/IERFRkFVTFRfVkFMSURfTUVTU0FHRX19XG4gICAgICA8L2RiLWluZm90ZXh0PlxuICAgICAgPGRiLWluZm90ZXh0IHNpemU9XCJzbWFsbFwiIHNlbWFudGljPVwiY3JpdGljYWxcIiBbaWRdPVwiX2ludmFsaWRNZXNzYWdlSWRcIj5cbiAgICAgICAge3tpbnZhbGlkTWVzc2FnZSA/PyB0aGlzLl9yZWY/LnZhbGlkYXRpb25NZXNzYWdlID8/XG4gICAgICAgICAgICBERUZBVUxUX0lOVkFMSURfTUVTU0FHRX19XG4gICAgICA8L2RiLWluZm90ZXh0PlxuICAgICAgPHNwYW4gZGF0YS12aXN1YWxseS1oaWRkZW49XCJ0cnVlXCIgcm9sZT1cInN0YXR1c1wiPlxuICAgICAgICB7e192b2ljZU92ZXJGYWxsYmFja319XG4gICAgICA8L3NwYW4+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIERCSW5mb3RleHRdLFxufSlcbmV4cG9ydCBjbGFzcyBEQkNoZWNrYm94IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuXHRcdGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikgeyB9XG4gIERFRkFVTFRfSU5WQUxJRF9NRVNTQUdFID0gREVGQVVMVF9JTlZBTElEX01FU1NBR0U7XG4gIERFRkFVTFRfVkFMSURfTUVTU0FHRSA9IERFRkFVTFRfVkFMSURfTUVTU0FHRTtcbiAgY2xzID0gY2xzO1xuICBnZXRIaWRlUHJvcCA9IGdldEhpZGVQcm9wO1xuICBzdHJpbmdQcm9wVmlzaWJsZSA9IHN0cmluZ1Byb3BWaXNpYmxlO1xuXG4gIEBJbnB1dCgpIGlkITogREJDaGVja2JveFByb3BzW1wiaWRcIl07XG4gIEBJbnB1dCgpIG1lc3NhZ2UhOiBEQkNoZWNrYm94UHJvcHNbXCJtZXNzYWdlXCJdO1xuICBASW5wdXQoKSBzaG93TWVzc2FnZSE6IERCQ2hlY2tib3hQcm9wc1tcInNob3dNZXNzYWdlXCJdO1xuICBASW5wdXQoKSBpbmRldGVybWluYXRlITogREJDaGVja2JveFByb3BzW1wiaW5kZXRlcm1pbmF0ZVwiXTtcbiAgQElucHV0KCkgY2hlY2tlZCE6IERCQ2hlY2tib3hQcm9wc1tcImNoZWNrZWRcIl07XG4gIEBJbnB1dCgpIHZhbGlkYXRpb24hOiBEQkNoZWNrYm94UHJvcHNbXCJ2YWxpZGF0aW9uXCJdO1xuICBASW5wdXQoKSBpbnZhbGlkTWVzc2FnZSE6IERCQ2hlY2tib3hQcm9wc1tcImludmFsaWRNZXNzYWdlXCJdO1xuICBASW5wdXQoKSByZXF1aXJlZCE6IERCQ2hlY2tib3hQcm9wc1tcInJlcXVpcmVkXCJdO1xuICBASW5wdXQoKSB2YWxpZE1lc3NhZ2UhOiBEQkNoZWNrYm94UHJvcHNbXCJ2YWxpZE1lc3NhZ2VcIl07XG4gIEBJbnB1dCgpIGNsYXNzTmFtZSE6IERCQ2hlY2tib3hQcm9wc1tcImNsYXNzTmFtZVwiXTtcbiAgQElucHV0KCkgc2l6ZSE6IERCQ2hlY2tib3hQcm9wc1tcInNpemVcIl07XG4gIEBJbnB1dCgpIHNob3dMYWJlbCE6IERCQ2hlY2tib3hQcm9wc1tcInNob3dMYWJlbFwiXTtcbiAgQElucHV0KCkgbmFtZSE6IERCQ2hlY2tib3hQcm9wc1tcIm5hbWVcIl07XG4gIEBJbnB1dCgpIGRpc2FibGVkITogREJDaGVja2JveFByb3BzW1wiZGlzYWJsZWRcIl07XG4gIEBJbnB1dCgpIHZhbHVlITogREJDaGVja2JveFByb3BzW1widmFsdWVcIl07XG4gIEBJbnB1dCgpIGxhYmVsITogREJDaGVja2JveFByb3BzW1wibGFiZWxcIl07XG4gIEBJbnB1dCgpIG1lc3NhZ2VJY29uITogREJDaGVja2JveFByb3BzW1wibWVzc2FnZUljb25cIl07XG5cbiAgQE91dHB1dCgpIG9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgb25CbHVyID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgYmx1ciA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIG9uRm9jdXMgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBmb2N1cyA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAVmlld0NoaWxkKFwiX3JlZlwiKSBfcmVmITogRWxlbWVudFJlZiB8IHVuZGVmaW5lZDtcblxuICBpbml0aWFsaXplZDogREJDaGVja2JveFN0YXRlW1wiaW5pdGlhbGl6ZWRcIl0gPSBmYWxzZTtcbiAgX2lkOiBEQkNoZWNrYm94U3RhdGVbXCJfaWRcIl0gPSB1bmRlZmluZWQ7XG4gIF9tZXNzYWdlSWQ6IERCQ2hlY2tib3hTdGF0ZVtcIl9tZXNzYWdlSWRcIl0gPSB1bmRlZmluZWQ7XG4gIF92YWxpZE1lc3NhZ2VJZDogREJDaGVja2JveFN0YXRlW1wiX3ZhbGlkTWVzc2FnZUlkXCJdID0gdW5kZWZpbmVkO1xuICBfaW52YWxpZE1lc3NhZ2VJZDogREJDaGVja2JveFN0YXRlW1wiX2ludmFsaWRNZXNzYWdlSWRcIl0gPSB1bmRlZmluZWQ7XG4gIF9kZXNjQnlJZHM6IERCQ2hlY2tib3hTdGF0ZVtcIl9kZXNjQnlJZHNcIl0gPSBcIlwiO1xuICBfdm9pY2VPdmVyRmFsbGJhY2s6IERCQ2hlY2tib3hTdGF0ZVtcIl92b2ljZU92ZXJGYWxsYmFja1wiXSA9IFwiXCI7XG4gIGhhbmRsZUNoYW5nZShcbiAgICBldmVudDogQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD5cbiAgKTogUmV0dXJuVHlwZTxEQkNoZWNrYm94U3RhdGVbXCJoYW5kbGVDaGFuZ2VcIl0+IHtcbiAgICBpZiAodGhpcy5vbkNoYW5nZSkge1xuICAgICAgdGhpcy5vbkNoYW5nZS5lbWl0KGV2ZW50KTtcbiAgICB9XG4gICAgaWYgKHRoaXMuY2hhbmdlKSB7XG4gICAgICB0aGlzLmNoYW5nZS5lbWl0KGV2ZW50KTtcbiAgICB9XG4gICAgaGFuZGxlRnJhbWV3b3JrRXZlbnRBbmd1bGFyKHRoaXMsIGV2ZW50LCBcImNoZWNrZWRcIik7XG5cbiAgICAvKiBGb3IgYTExeSByZWFzb25zIHdlIG5lZWQgdG8gbWFwIHRoZSBjb3JyZWN0IG1lc3NhZ2Ugd2l0aCB0aGUgY2hlY2tib3ggKi9cbiAgICBpZiAoXG4gICAgICAhdGhpcy5fcmVmPy5uYXRpdmVFbGVtZW50Py52YWxpZGl0eS52YWxpZCB8fFxuICAgICAgdGhpcy52YWxpZGF0aW9uID09PSBcImludmFsaWRcIlxuICAgICkge1xuICAgICAgdGhpcy5fZGVzY0J5SWRzID0gdGhpcy5faW52YWxpZE1lc3NhZ2VJZDtcbiAgICAgIGlmIChoYXNWb2ljZU92ZXIoKSkge1xuICAgICAgICB0aGlzLl92b2ljZU92ZXJGYWxsYmFjayA9XG4gICAgICAgICAgdGhpcy5pbnZhbGlkTWVzc2FnZSA/P1xuICAgICAgICAgIHRoaXMuX3JlZj8ubmF0aXZlRWxlbWVudD8udmFsaWRhdGlvbk1lc3NhZ2UgPz9cbiAgICAgICAgICBERUZBVUxUX0lOVkFMSURfTUVTU0FHRTtcbiAgICAgICAgZGVsYXkoKCkgPT4gKHRoaXMuX3ZvaWNlT3ZlckZhbGxiYWNrID0gXCJcIiksIDEwMDApO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoXG4gICAgICB0aGlzLnZhbGlkYXRpb24gPT09IFwidmFsaWRcIiB8fFxuICAgICAgKHRoaXMuX3JlZj8ubmF0aXZlRWxlbWVudD8udmFsaWRpdHkudmFsaWQgJiYgdGhpcy5yZXF1aXJlZClcbiAgICApIHtcbiAgICAgIHRoaXMuX2Rlc2NCeUlkcyA9IHRoaXMuX3ZhbGlkTWVzc2FnZUlkO1xuICAgICAgaWYgKGhhc1ZvaWNlT3ZlcigpKSB7XG4gICAgICAgIHRoaXMuX3ZvaWNlT3ZlckZhbGxiYWNrID0gdGhpcy52YWxpZE1lc3NhZ2UgPz8gREVGQVVMVF9WQUxJRF9NRVNTQUdFO1xuICAgICAgICBkZWxheSgoKSA9PiAodGhpcy5fdm9pY2VPdmVyRmFsbGJhY2sgPSBcIlwiKSwgMTAwMCk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChzdHJpbmdQcm9wVmlzaWJsZSh0aGlzLm1lc3NhZ2UsIHRoaXMuc2hvd01lc3NhZ2UpKSB7XG4gICAgICB0aGlzLl9kZXNjQnlJZHMgPSB0aGlzLl9tZXNzYWdlSWQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2Rlc2NCeUlkcyA9IFwiXCI7XG4gICAgfVxuICB9XG4gIGhhbmRsZUJsdXIoXG4gICAgZXZlbnQ6IEludGVyYWN0aW9uRXZlbnQ8SFRNTElucHV0RWxlbWVudD5cbiAgKTogUmV0dXJuVHlwZTxEQkNoZWNrYm94U3RhdGVbXCJoYW5kbGVCbHVyXCJdPiB7XG4gICAgaWYgKHRoaXMub25CbHVyKSB7XG4gICAgICB0aGlzLm9uQmx1ci5lbWl0KGV2ZW50KTtcbiAgICB9XG4gICAgaWYgKHRoaXMuYmx1cikge1xuICAgICAgdGhpcy5ibHVyLmVtaXQoZXZlbnQpO1xuICAgIH1cbiAgfVxuICBoYW5kbGVGb2N1cyhcbiAgICBldmVudDogSW50ZXJhY3Rpb25FdmVudDxIVE1MSW5wdXRFbGVtZW50PlxuICApOiBSZXR1cm5UeXBlPERCQ2hlY2tib3hTdGF0ZVtcImhhbmRsZUZvY3VzXCJdPiB7XG4gICAgaWYgKHRoaXMub25Gb2N1cykge1xuICAgICAgdGhpcy5vbkZvY3VzLmVtaXQoZXZlbnQpO1xuICAgIH1cbiAgICBpZiAodGhpcy5mb2N1cykge1xuICAgICAgdGhpcy5mb2N1cy5lbWl0KGV2ZW50KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUGFzc2VzIGBhcmlhLSpgLCBgZGF0YS0qYCAmIGBjbGFzc2AgYXR0cmlidXRlcyB0byBjb3JyZWN0IGNoaWxkLiBVc2VkIGluIGFuZ3VsYXIgYW5kIHN0ZW5jaWwuXG4gICAqIEBwYXJhbSBlbGVtZW50ICB0aGUgcmVmIGZvciB0aGUgY29tcG9uZW50XG4gICAqIEBwYXJhbSBjdXN0b21FbGVtZW50U2VsZWN0b3IgIHRoZSBjdXN0b20gZWxlbWVudCBsaWtlIGBteS1jb21wb25lbnRgXG4gICAqL1xuICBwcml2YXRlIGVuYWJsZUF0dHJpYnV0ZVBhc3NpbmcoXG4gICAgZWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsLFxuICAgIGN1c3RvbUVsZW1lbnRTZWxlY3Rvcjogc3RyaW5nXG4gICkge1xuICAgIGNvbnN0IHBhcmVudCA9IGVsZW1lbnQ/LmNsb3Nlc3QoY3VzdG9tRWxlbWVudFNlbGVjdG9yKTtcbiAgICBpZiAoZWxlbWVudCAmJiBwYXJlbnQpIHtcbiAgICAgIGNvbnN0IGF0dHJpYnV0ZXMgPSBwYXJlbnQuYXR0cmlidXRlcztcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXR0cmlidXRlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBhdHRyID0gYXR0cmlidXRlcy5pdGVtKGkpO1xuICAgICAgICBpZiAoXG4gICAgICAgICAgYXR0ciAmJlxuICAgICAgICAgIChhdHRyLm5hbWUuc3RhcnRzV2l0aChcImRhdGEtXCIpIHx8IGF0dHIubmFtZS5zdGFydHNXaXRoKFwiYXJpYS1cIikpXG4gICAgICAgICkge1xuICAgICAgICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKGF0dHIubmFtZSwgYXR0ci52YWx1ZSk7XG4gICAgICAgICAgcGFyZW50LnJlbW92ZUF0dHJpYnV0ZShhdHRyLm5hbWUpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChhdHRyICYmIGF0dHIubmFtZSA9PT0gXCJjbGFzc1wiKSB7XG4gICAgICAgICAgY29uc3QgaXNXZWJDb21wb25lbnQgPSBhdHRyLnZhbHVlLmluY2x1ZGVzKFwiaHlkcmF0ZWRcIik7XG4gICAgICAgICAgY29uc3QgdmFsdWUgPSBhdHRyLnZhbHVlLnJlcGxhY2UoXCJoeWRyYXRlZFwiLCBcIlwiKS50cmltKCk7XG4gICAgICAgICAgY29uc3QgY3VycmVudENsYXNzID0gZWxlbWVudC5nZXRBdHRyaWJ1dGUoXCJjbGFzc1wiKTtcbiAgICAgICAgICBlbGVtZW50LnNldEF0dHJpYnV0ZShcbiAgICAgICAgICAgIGF0dHIubmFtZSxcbiAgICAgICAgICAgIGAke2N1cnJlbnRDbGFzcyA/IGAke2N1cnJlbnRDbGFzc30gYCA6IFwiXCJ9JHt2YWx1ZX1gXG4gICAgICAgICAgKTtcbiAgICAgICAgICBpZiAoaXNXZWJDb21wb25lbnQpIHtcbiAgICAgICAgICAgIC8vIFN0ZW5jaWwgaXMgdXNpbmcgdGhpcyBjbGFzcyBmb3IgbGF6eSBsb2FkaW5nIGNvbXBvbmVudFxuICAgICAgICAgICAgcGFyZW50LnNldEF0dHJpYnV0ZShcImNsYXNzXCIsIFwiaHlkcmF0ZWRcIik7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBhcmVudC5yZW1vdmVBdHRyaWJ1dGUoYXR0ci5uYW1lKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBcblx0XHR3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcblx0XHQgIHRoaXMuY2hlY2tlZCA9ICEhdmFsdWU7XG5cblx0XHQgIGlmICh0aGlzLl9yZWY/Lm5hdGl2ZUVsZW1lbnQpIHtcblx0XHRcdCB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuX3JlZj8ubmF0aXZlRWxlbWVudCwgJ2NoZWNrZWQnLCAhIXZhbHVlKTtcblx0XHQgIH1cblx0XHR9XG5cblx0XHRwcm9wYWdhdGVDaGFuZ2UoXzogYW55KSB7fVxuXG5cdFx0cmVnaXN0ZXJPbkNoYW5nZShvbkNoYW5nZTogYW55KSB7XG5cdFx0ICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IG9uQ2hhbmdlO1xuXHRcdH1cblxuXHRcdHJlZ2lzdGVyT25Ub3VjaGVkKG9uVG91Y2hlZDogYW55KSB7XG5cdFx0IC8vdGhpcy5vblRvdWNoZWQgPSBvblRvdWNoZWQ7XG5cdFx0fVxuXG5cdFx0c2V0RGlzYWJsZWRTdGF0ZShkaXNhYmxlZDogYm9vbGVhbikge1xuXHRcdCAgdGhpcy5kaXNhYmxlZCA9IGRpc2FibGVkO1xuXHRcdH1cblxuXHRcdG5nT25Jbml0KCkge1xuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSBcInVuZGVmaW5lZFwiKSB7XG4gICAgICB0aGlzLmluaXRpYWxpemVkID0gdHJ1ZTtcbiAgICAgIGNvbnN0IG1JZCA9IHRoaXMuaWQgPz8gYGNoZWNrYm94LSR7dXVpZCgpfWA7XG4gICAgICB0aGlzLl9pZCA9IG1JZDtcbiAgICAgIHRoaXMuX21lc3NhZ2VJZCA9IG1JZCArIERFRkFVTFRfTUVTU0FHRV9JRF9TVUZGSVg7XG4gICAgICB0aGlzLl92YWxpZE1lc3NhZ2VJZCA9IG1JZCArIERFRkFVTFRfVkFMSURfTUVTU0FHRV9JRF9TVUZGSVg7XG4gICAgICB0aGlzLl9pbnZhbGlkTWVzc2FnZUlkID0gbUlkICsgREVGQVVMVF9JTlZBTElEX01FU1NBR0VfSURfU1VGRklYO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBjb25zdCBlbGVtZW50OiBIVE1MRWxlbWVudCB8IG51bGwgPSB0aGlzLl9yZWY/Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgdGhpcy5lbmFibGVBdHRyaWJ1dGVQYXNzaW5nKGVsZW1lbnQsIFwiZGItY2hlY2tib3hcIik7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudENoZWNrZWQoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSBcInVuZGVmaW5lZFwiKSB7XG4gICAgICBpZiAodGhpcy5faWQpIHtcbiAgICAgICAgY29uc3QgbWVzc2FnZUlkID0gdGhpcy5faWQgKyBERUZBVUxUX01FU1NBR0VfSURfU1VGRklYO1xuICAgICAgICB0aGlzLl9tZXNzYWdlSWQgPSBtZXNzYWdlSWQ7XG4gICAgICAgIHRoaXMuX3ZhbGlkTWVzc2FnZUlkID0gdGhpcy5faWQgKyBERUZBVUxUX1ZBTElEX01FU1NBR0VfSURfU1VGRklYO1xuICAgICAgICB0aGlzLl9pbnZhbGlkTWVzc2FnZUlkID0gdGhpcy5faWQgKyBERUZBVUxUX0lOVkFMSURfTUVTU0FHRV9JRF9TVUZGSVg7XG4gICAgICAgIGlmIChzdHJpbmdQcm9wVmlzaWJsZSh0aGlzLm1lc3NhZ2UsIHRoaXMuc2hvd01lc3NhZ2UpKSB7XG4gICAgICAgICAgdGhpcy5fZGVzY0J5SWRzID0gbWVzc2FnZUlkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5fcmVmPy5uYXRpdmVFbGVtZW50KSB7XG4gICAgICAgIGlmICh0aGlzLmluaXRpYWxpemVkICYmIHRoaXMuaW5kZXRlcm1pbmF0ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgLy8gV2hlbiBpbmRldGVybWluYXRlIGlzIHNldCwgdGhlIHZhbHVlIG9mIHRoZSBjaGVja2VkIHByb3Agb25seSBpbXBhY3RzIHRoZSBmb3JtIHN1Ym1pdHRlZCB2YWx1ZXMuXG4gICAgICAgICAgLy8gSXQgaGFzIG5vIGFjY2Vzc2liaWxpdHkgb3IgVVggaW1wbGljYXRpb25zLiAoaHR0cHM6Ly9tdWkuY29tL21hdGVyaWFsLXVpL3JlYWN0LWNoZWNrYm94LylcbiAgICAgICAgICB0aGlzLl9yZWYubmF0aXZlRWxlbWVudC5pbmRldGVybWluYXRlID0gdGhpcy5pbmRldGVybWluYXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5pbml0aWFsaXplZCAmJiB0aGlzLl9yZWY/Lm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgICAgLy8gaW4gYW5ndWxhciB0aGlzIG11c3QgYmUgc2V0IHZpYSBuYXRpdmUgZWxlbWVudFxuICAgICAgICBpZiAodGhpcy5jaGVja2VkICE9IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHRoaXMuX3JlZi5uYXRpdmVFbGVtZW50LmNoZWNrZWQgPSB0aGlzLmNoZWNrZWQ7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5pbml0aWFsaXplZCA9IGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl19
|
|
327
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9vdXRwdXQvYW5ndWxhci9zcmMvY29tcG9uZW50cy9jaGVja2JveC9jaGVja2JveC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEVBQ1QsU0FBUyxFQUVULEtBQUssRUFFSSxNQUFNLGVBQWUsQ0FBQztBQUNqQyxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHekUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBSy9DLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUNBQWlDLEVBQ2pDLHlCQUF5QixFQUN6QixxQkFBcUIsRUFDckIsK0JBQStCLEdBQ2hDLE1BQU0sd0JBQXdCLENBQUM7QUFFaEMsT0FBTyxFQUNMLDJCQUEyQixHQUU1QixNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQ0wsR0FBRyxFQUNILEtBQUssRUFDTCxXQUFXLEVBQ1gsWUFBWSxFQUNaLGlCQUFpQixFQUNqQixJQUFJLEdBQ0wsTUFBTSxhQUFhLENBQUM7OztBQXZCckIsTUFBTSxZQUFZLEdBQUcsRUFBRSxDQUFDO0FBOEV4QixNQUFNLE9BQU8sVUFBVTtJQUNyQixZQUFvQixRQUFtQjtRQUFuQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ3ZDLDRCQUF1QixHQUFHLHVCQUF1QixDQUFDO1FBQ2xELDBCQUFxQixHQUFHLHFCQUFxQixDQUFDO1FBQzlDLFFBQUcsR0FBRyxHQUFHLENBQUM7UUFDVixnQkFBVyxHQUFHLFdBQVcsQ0FBQztRQUMxQixzQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztRQW9CNUIsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDOUIsV0FBTSxHQUFHLElB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Qzs0QkFDWCxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLFlBQVk7NEJBQ3ZCLEtBQUssRUFBRSxJQUFJO3lCQUNYLENBQUM7b0JBQ0YsUUFBUSxFQUFFLGFBQWE7b0JBQ3ZCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMENUO29CQUNELFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDO2lCQUNwQzs4RUFTVSxFQUFFO3NCQUFWLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFFSSxRQUFRO3NCQUFqQixNQUFNO2dCQUNHLE1BQU07c0JBQWYsTUFBTTtnQkFDRyxNQUFNO3NCQUFmLE1BQU07Z0JBQ0csSUFBSTtzQkFBYixNQUFNO2dCQUNHLE9BQU87c0JBQWhCLE1BQU07Z0JBQ0csS0FBSztzQkFBZCxNQUFNO2dCQUVZLElBQUk7c0JBQXRCLFNBQVM7dUJBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBDb21wb25lbnQsXG4gIFZpZXdDaGlsZCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG5SZW5kZXJlcjIgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5cbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcblxuY29uc3QgZGVmYXVsdFByb3BzID0ge307XG5cbmltcG9ydCB7IERCQ2hlY2tib3hQcm9wcywgREJDaGVja2JveFN0YXRlIH0gZnJvbSBcIi4vbW9kZWxcIjtcbmltcG9ydCB7XG4gIERFRkFVTFRfSU5WQUxJRF9NRVNTQUdFLFxuICBERUZBVUxUX0lOVkFMSURfTUVTU0FHRV9JRF9TVUZGSVgsXG4gIERFRkFVTFRfTUVTU0FHRV9JRF9TVUZGSVgsXG4gIERFRkFVTFRfVkFMSURfTUVTU0FHRSxcbiAgREVGQVVMVF9WQUxJRF9NRVNTQUdFX0lEX1NVRkZJWCxcbn0gZnJvbSBcIi4uLy4uL3NoYXJlZC9jb25zdGFudHNcIjtcbmltcG9ydCB7IENoYW5nZUV2ZW50LCBJbnRlcmFjdGlvbkV2ZW50IH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9tb2RlbFwiO1xuaW1wb3J0IHtcbiAgaGFuZGxlRnJhbWV3b3JrRXZlbnRBbmd1bGFyLFxuICBoYW5kbGVGcmFtZXdvcmtFdmVudFZ1ZSxcbn0gZnJvbSBcIi4uLy4uL3V0aWxzL2Zvcm0tY29tcG9uZW50c1wiO1xuaW1wb3J0IHsgREJJbmZvdGV4dCB9IGZyb20gXCIuLi9pbmZvdGV4dC9pbmZvdGV4dFwiO1xuaW1wb3J0IHtcbiAgY2xzLFxuICBkZWxheSxcbiAgZ2V0SGlkZVByb3AsXG4gIGhhc1ZvaWNlT3ZlcixcbiAgc3RyaW5nUHJvcFZpc2libGUsXG4gIHV1aWQsXG59IGZyb20gXCIuLi8uLi91dGlsc1wiO1xuXG5AQ29tcG9uZW50KHtcblx0XHRwcm92aWRlcnM6IFt7XG5cdFx0XHRwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcblx0XHRcdHVzZUV4aXN0aW5nOiBEQkNoZWNrYm94LFxuXHRcdFx0bXVsdGk6IHRydWVcblx0XHR9XSxcdFxuICBzZWxlY3RvcjogXCJkYi1jaGVja2JveFwiLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXZcbiAgICAgIFtjbGFzc109XCJjbHMoJ2RiLWNoZWNrYm94JywgY2xhc3NOYW1lKVwiXG4gICAgICBbYXR0ci5kYXRhLXNpemVdPVwic2l6ZVwiXG4gICAgICBbYXR0ci5kYXRhLWhpZGUtbGFiZWxdPVwiZ2V0SGlkZVByb3Aoc2hvd0xhYmVsKVwiXG4gICAgPlxuICAgICAgPGxhYmVsIFthdHRyLmZvcl09XCJfaWRcIj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcbiAgICAgICAgICBbYXR0ci5hcmlhLWludmFsaWRdPVwidmFsaWRhdGlvbiA9PT0gJ2ludmFsaWQnXCJcbiAgICAgICAgICBbYXR0ci5kYXRhLWN1c3RvbS12YWxpZGl0eV09XCJ2YWxpZGF0aW9uXCJcbiAgICAgICAgICAjX3JlZlxuICAgICAgICAgIFthdHRyLmlkXT1cIl9pZFwiXG4gICAgICAgICAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgICAgICAgICBbY2hlY2tlZF09XCJjaGVja2VkXCJcbiAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgIFthdHRyLnZhbHVlXT1cInZhbHVlXCJcbiAgICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgICAgIChjaGFuZ2UpPVwiaGFuZGxlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgIChibHVyKT1cImhhbmRsZUJsdXIoJGV2ZW50KVwiXG4gICAgICAgICAgKGZvY3VzKT1cImhhbmRsZUZvY3VzKCRldmVudClcIlxuICAgICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiX2Rlc2NCeUlkc1wiXG4gICAgICAgIC8+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsYWJlbFwiPnt7bGFiZWx9fTwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIShsYWJlbClcIj48bmctY29udGVudD48L25nLWNvbnRlbnQ+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2xhYmVsPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN0cmluZ1Byb3BWaXNpYmxlKG1lc3NhZ2UsIHNob3dNZXNzYWdlKVwiPlxuICAgICAgICA8ZGItaW5mb3RleHQgc2l6ZT1cInNtYWxsXCIgW2ljb25dPVwibWVzc2FnZUljb25cIiBbaWRdPVwiX21lc3NhZ2VJZFwiPlxuICAgICAgICAgIHt7bWVzc2FnZX19XG4gICAgICAgIDwvZGItaW5mb3RleHQ+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxkYi1pbmZvdGV4dCBzaXplPVwic21hbGxcIiBzZW1hbnRpYz1cInN1Y2Nlc3NmdWxcIiBbaWRdPVwiX3ZhbGlkTWVzc2FnZUlkXCI+XG4gICAgICAgIHt7dmFsaWRNZXNzYWdlID8/IERFRkFVTFRfVkFMSURfTUVTU0FHRX19XG4gICAgICA8L2RiLWluZm90ZXh0PlxuICAgICAgPGRiLWluZm90ZXh0IHNpemU9XCJzbWFsbFwiIHNlbWFudGljPVwiY3JpdGljYWxcIiBbaWRdPVwiX2ludmFsaWRNZXNzYWdlSWRcIj5cbiAgICAgICAge3tpbnZhbGlkTWVzc2FnZSA/PyB0aGlzLl9yZWY/LnZhbGlkYXRpb25NZXNzYWdlID8/XG4gICAgICAgICAgICBERUZBVUxUX0lOVkFMSURfTUVTU0FHRX19XG4gICAgICA8L2RiLWluZm90ZXh0PlxuICAgICAgPHNwYW4gZGF0YS12aXN1YWxseS1oaWRkZW49XCJ0cnVlXCIgcm9sZT1cInN0YXR1c1wiPlxuICAgICAgICB7e192b2ljZU92ZXJGYWxsYmFja319XG4gICAgICA8L3NwYW4+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIERCSW5mb3RleHRdLFxufSlcbmV4cG9ydCBjbGFzcyBEQkNoZWNrYm94IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuXHRcdGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikgeyB9XG4gIERFRkFVTFRfSU5WQUxJRF9NRVNTQUdFID0gREVGQVVMVF9JTlZBTElEX01FU1NBR0U7XG4gIERFRkFVTFRfVkFMSURfTUVTU0FHRSA9IERFRkFVTFRfVkFMSURfTUVTU0FHRTtcbiAgY2xzID0gY2xzO1xuICBnZXRIaWRlUHJvcCA9IGdldEhpZGVQcm9wO1xuICBzdHJpbmdQcm9wVmlzaWJsZSA9IHN0cmluZ1Byb3BWaXNpYmxlO1xuXG4gIEBJbnB1dCgpIGlkITogREJDaGVja2JveFByb3BzW1wiaWRcIl07XG4gIEBJbnB1dCgpIG1lc3NhZ2UhOiBEQkNoZWNrYm94UHJvcHNbXCJtZXNzYWdlXCJdO1xuICBASW5wdXQoKSBzaG93TWVzc2FnZSE6IERCQ2hlY2tib3hQcm9wc1tcInNob3dNZXNzYWdlXCJdO1xuICBASW5wdXQoKSBpbmRldGVybWluYXRlITogREJDaGVja2JveFByb3BzW1wiaW5kZXRlcm1pbmF0ZVwiXTtcbiAgQElucHV0KCkgY2hlY2tlZCE6IERCQ2hlY2tib3hQcm9wc1tcImNoZWNrZWRcIl07XG4gIEBJbnB1dCgpIHZhbGlkYXRpb24hOiBEQkNoZWNrYm94UHJvcHNbXCJ2YWxpZGF0aW9uXCJdO1xuICBASW5wdXQoKSBpbnZhbGlkTWVzc2FnZSE6IERCQ2hlY2tib3hQcm9wc1tcImludmFsaWRNZXNzYWdlXCJdO1xuICBASW5wdXQoKSByZXF1aXJlZCE6IERCQ2hlY2tib3hQcm9wc1tcInJlcXVpcmVkXCJdO1xuICBASW5wdXQoKSB2YWxpZE1lc3NhZ2UhOiBEQkNoZWNrYm94UHJvcHNbXCJ2YWxpZE1lc3NhZ2VcIl07XG4gIEBJbnB1dCgpIGNsYXNzTmFtZSE6IERCQ2hlY2tib3hQcm9wc1tcImNsYXNzTmFtZVwiXTtcbiAgQElucHV0KCkgc2l6ZSE6IERCQ2hlY2tib3hQcm9wc1tcInNpemVcIl07XG4gIEBJbnB1dCgpIHNob3dMYWJlbCE6IERCQ2hlY2tib3hQcm9wc1tcInNob3dMYWJlbFwiXTtcbiAgQElucHV0KCkgbmFtZSE6IERCQ2hlY2tib3hQcm9wc1tcIm5hbWVcIl07XG4gIEBJbnB1dCgpIGRpc2FibGVkITogREJDaGVja2JveFByb3BzW1wiZGlzYWJsZWRcIl07XG4gIEBJbnB1dCgpIHZhbHVlITogREJDaGVja2JveFByb3BzW1widmFsdWVcIl07XG4gIEBJbnB1dCgpIGxhYmVsITogREJDaGVja2JveFByb3BzW1wibGFiZWxcIl07XG4gIEBJbnB1dCgpIG1lc3NhZ2VJY29uITogREJDaGVja2JveFByb3BzW1wibWVzc2FnZUljb25cIl07XG5cbiAgQE91dHB1dCgpIG9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgb25CbHVyID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgYmx1ciA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIG9uRm9jdXMgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBmb2N1cyA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAVmlld0NoaWxkKFwiX3JlZlwiKSBfcmVmITogRWxlbWVudFJlZiB8IHVuZGVmaW5lZDtcblxuICBpbml0aWFsaXplZDogREJDaGVja2JveFN0YXRlW1wiaW5pdGlhbGl6ZWRcIl0gPSBmYWxzZTtcbiAgX2lkOiBEQkNoZWNrYm94U3RhdGVbXCJfaWRcIl0gPSB1bmRlZmluZWQ7XG4gIF9tZXNzYWdlSWQ6IERCQ2hlY2tib3hTdGF0ZVtcIl9tZXNzYWdlSWRcIl0gPSB1bmRlZmluZWQ7XG4gIF92YWxpZE1lc3NhZ2VJZDogREJDaGVja2JveFN0YXRlW1wiX3ZhbGlkTWVzc2FnZUlkXCJdID0gdW5kZWZpbmVkO1xuICBfaW52YWxpZE1lc3NhZ2VJZDogREJDaGVja2JveFN0YXRlW1wiX2ludmFsaWRNZXNzYWdlSWRcIl0gPSB1bmRlZmluZWQ7XG4gIF9kZXNjQnlJZHM6IERCQ2hlY2tib3hTdGF0ZVtcIl9kZXNjQnlJZHNcIl0gPSBcIlwiO1xuICBfdm9pY2VPdmVyRmFsbGJhY2s6IERCQ2hlY2tib3hTdGF0ZVtcIl92b2ljZU92ZXJGYWxsYmFja1wiXSA9IFwiXCI7XG4gIGhhbmRsZUNoYW5nZShcbiAgICBldmVudDogQ2hhbmdlRXZlbnQ8SFRNTElucHV0RWxlbWVudD5cbiAgKTogUmV0dXJuVHlwZTxEQkNoZWNrYm94U3RhdGVbXCJoYW5kbGVDaGFuZ2VcIl0+IHtcbiAgICBpZiAodGhpcy5vbkNoYW5nZSkge1xuICAgICAgdGhpcy5vbkNoYW5nZS5lbWl0KGV2ZW50KTtcbiAgICB9XG4gICAgaWYgKHRoaXMuY2hhbmdlKSB7XG4gICAgICB0aGlzLmNoYW5nZS5lbWl0KGV2ZW50KTtcbiAgICB9XG4gICAgaGFuZGxlRnJhbWV3b3JrRXZlbnRBbmd1bGFyKHRoaXMsIGV2ZW50LCBcImNoZWNrZWRcIik7XG5cbiAgICAvKiBGb3IgYTExeSByZWFzb25zIHdlIG5lZWQgdG8gbWFwIHRoZSBjb3JyZWN0IG1lc3NhZ2Ugd2l0aCB0aGUgY2hlY2tib3ggKi9cbiAgICBpZiAoXG4gICAgICAhdGhpcy5fcmVmPy5uYXRpdmVFbGVtZW50Py52YWxpZGl0eS52YWxpZCB8fFxuICAgICAgdGhpcy52YWxpZGF0aW9uID09PSBcImludmFsaWRcIlxuICAgICkge1xuICAgICAgdGhpcy5fZGVzY0J5SWRzID0gdGhpcy5faW52YWxpZE1lc3NhZ2VJZDtcbiAgICAgIGlmIChoYXNWb2ljZU92ZXIoKSkge1xuICAgICAgICB0aGlzLl92b2ljZU92ZXJGYWxsYmFjayA9XG4gICAgICAgICAgdGhpcy5pbnZhbGlkTWVzc2FnZSA/P1xuICAgICAgICAgIHRoaXMuX3JlZj8ubmF0aXZlRWxlbWVudD8udmFsaWRhdGlvbk1lc3NhZ2UgPz9cbiAgICAgICAgICBERUZBVUxUX0lOVkFMSURfTUVTU0FHRTtcbiAgICAgICAgZGVsYXkoKCkgPT4gKHRoaXMuX3ZvaWNlT3ZlckZhbGxiYWNrID0gXCJcIiksIDEwMDApO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoXG4gICAgICB0aGlzLnZhbGlkYXRpb24gPT09IFwidmFsaWRcIiB8fFxuICAgICAgKHRoaXMuX3JlZj8ubmF0aXZlRWxlbWVudD8udmFsaWRpdHkudmFsaWQgJiYgdGhpcy5yZXF1aXJlZClcbiAgICApIHtcbiAgICAgIHRoaXMuX2Rlc2NCeUlkcyA9IHRoaXMuX3ZhbGlkTWVzc2FnZUlkO1xuICAgICAgaWYgKGhhc1ZvaWNlT3ZlcigpKSB7XG4gICAgICAgIHRoaXMuX3ZvaWNlT3ZlckZhbGxiYWNrID0gdGhpcy52YWxpZE1lc3NhZ2UgPz8gREVGQVVMVF9WQUxJRF9NRVNTQUdFO1xuICAgICAgICBkZWxheSgoKSA9PiAodGhpcy5fdm9pY2VPdmVyRmFsbGJhY2sgPSBcIlwiKSwgMTAwMCk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChzdHJpbmdQcm9wVmlzaWJsZSh0aGlzLm1lc3NhZ2UsIHRoaXMuc2hvd01lc3NhZ2UpKSB7XG4gICAgICB0aGlzLl9kZXNjQnlJZHMgPSB0aGlzLl9tZXNzYWdlSWQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuX2Rlc2NCeUlkcyA9IFwiXCI7XG4gICAgfVxuICB9XG4gIGhhbmRsZUJsdXIoXG4gICAgZXZlbnQ6IEludGVyYWN0aW9uRXZlbnQ8SFRNTElucHV0RWxlbWVudD5cbiAgKTogUmV0dXJuVHlwZTxEQkNoZWNrYm94U3RhdGVbXCJoYW5kbGVCbHVyXCJdPiB7XG4gICAgaWYgKHRoaXMub25CbHVyKSB7XG4gICAgICB0aGlzLm9uQmx1ci5lbWl0KGV2ZW50KTtcbiAgICB9XG4gICAgaWYgKHRoaXMuYmx1cikge1xuICAgICAgdGhpcy5ibHVyLmVtaXQoZXZlbnQpO1xuICAgIH1cbiAgfVxuICBoYW5kbGVGb2N1cyhcbiAgICBldmVudDogSW50ZXJhY3Rpb25FdmVudDxIVE1MSW5wdXRFbGVtZW50PlxuICApOiBSZXR1cm5UeXBlPERCQ2hlY2tib3hTdGF0ZVtcImhhbmRsZUZvY3VzXCJdPiB7XG4gICAgaWYgKHRoaXMub25Gb2N1cykge1xuICAgICAgdGhpcy5vbkZvY3VzLmVtaXQoZXZlbnQpO1xuICAgIH1cbiAgICBpZiAodGhpcy5mb2N1cykge1xuICAgICAgdGhpcy5mb2N1cy5lbWl0KGV2ZW50KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUGFzc2VzIGBhcmlhLSpgLCBgZGF0YS0qYCAmIGBjbGFzc2AgYXR0cmlidXRlcyB0byBjb3JyZWN0IGNoaWxkLiBVc2VkIGluIGFuZ3VsYXIgYW5kIHN0ZW5jaWwuXG4gICAqIEBwYXJhbSBlbGVtZW50ICB0aGUgcmVmIGZvciB0aGUgY29tcG9uZW50XG4gICAqIEBwYXJhbSBjdXN0b21FbGVtZW50U2VsZWN0b3IgIHRoZSBjdXN0b20gZWxlbWVudCBsaWtlIGBteS1jb21wb25lbnRgXG4gICAqL1xuICBwcml2YXRlIGVuYWJsZUF0dHJpYnV0ZVBhc3NpbmcoXG4gICAgZWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsLFxuICAgIGN1c3RvbUVsZW1lbnRTZWxlY3Rvcjogc3RyaW5nXG4gICkge1xuICAgIGNvbnN0IHBhcmVudCA9IGVsZW1lbnQ/LmNsb3Nlc3QoY3VzdG9tRWxlbWVudFNlbGVjdG9yKTtcbiAgICBpZiAoZWxlbWVudCAmJiBwYXJlbnQpIHtcbiAgICAgIGNvbnN0IGF0dHJpYnV0ZXMgPSBwYXJlbnQuYXR0cmlidXRlcztcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXR0cmlidXRlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBhdHRyID0gYXR0cmlidXRlcy5pdGVtKGkpO1xuICAgICAgICBpZiAoXG4gICAgICAgICAgYXR0ciAmJlxuICAgICAgICAgIChhdHRyLm5hbWUuc3RhcnRzV2l0aChcImRhdGEtXCIpIHx8IGF0dHIubmFtZS5zdGFydHNXaXRoKFwiYXJpYS1cIikpXG4gICAgICAgICkge1xuICAgICAgICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKGF0dHIubmFtZSwgYXR0ci52YWx1ZSk7XG4gICAgICAgICAgcGFyZW50LnJlbW92ZUF0dHJpYnV0ZShhdHRyLm5hbWUpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChhdHRyICYmIGF0dHIubmFtZSA9PT0gXCJjbGFzc1wiKSB7XG4gICAgICAgICAgY29uc3QgaXNXZWJDb21wb25lbnQgPSBhdHRyLnZhbHVlLmluY2x1ZGVzKFwiaHlkcmF0ZWRcIik7XG4gICAgICAgICAgY29uc3QgdmFsdWUgPSBhdHRyLnZhbHVlLnJlcGxhY2UoXCJoeWRyYXRlZFwiLCBcIlwiKS50cmltKCk7XG4gICAgICAgICAgY29uc3QgY3VycmVudENsYXNzID0gZWxlbWVudC5nZXRBdHRyaWJ1dGUoXCJjbGFzc1wiKTtcbiAgICAgICAgICBlbGVtZW50LnNldEF0dHJpYnV0ZShcbiAgICAgICAgICAgIGF0dHIubmFtZSxcbiAgICAgICAgICAgIGAke2N1cnJlbnRDbGFzcyA/IGAke2N1cnJlbnRDbGFzc30gYCA6IFwiXCJ9JHt2YWx1ZX1gXG4gICAgICAgICAgKTtcbiAgICAgICAgICBpZiAoaXNXZWJDb21wb25lbnQpIHtcbiAgICAgICAgICAgIC8vIFN0ZW5jaWwgaXMgdXNpbmcgdGhpcyBjbGFzcyBmb3IgbGF6eSBsb2FkaW5nIGNvbXBvbmVudFxuICAgICAgICAgICAgcGFyZW50LnNldEF0dHJpYnV0ZShcImNsYXNzXCIsIFwiaHlkcmF0ZWRcIik7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBhcmVudC5yZW1vdmVBdHRyaWJ1dGUoYXR0ci5uYW1lKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBcblx0XHR3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcblx0XHRcdFxuXHRcdCAgdGhpcy5jaGVja2VkID0gISF2YWx1ZTtcblxuXHRcdCAgaWYgKHRoaXMuX3JlZj8ubmF0aXZlRWxlbWVudCkge1xuXHRcdFx0IHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5fcmVmPy5uYXRpdmVFbGVtZW50LCAnY2hlY2tlZCcsICEhdmFsdWUpO1xuXHRcdCAgfVxuXHRcdFx0XG5cdFx0fVxuXG5cdFx0cHJvcGFnYXRlQ2hhbmdlKF86IGFueSkge31cblxuXHRcdHJlZ2lzdGVyT25DaGFuZ2Uob25DaGFuZ2U6IGFueSkge1xuXHRcdCAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UgPSBvbkNoYW5nZTtcblx0XHR9XG5cblx0XHRyZWdpc3Rlck9uVG91Y2hlZChvblRvdWNoZWQ6IGFueSkge1xuXHRcdCAvL3RoaXMub25Ub3VjaGVkID0gb25Ub3VjaGVkO1xuXHRcdH1cblxuXHRcdHNldERpc2FibGVkU3RhdGUoZGlzYWJsZWQ6IGJvb2xlYW4pIHtcblx0XHQgIHRoaXMuZGlzYWJsZWQgPSBkaXNhYmxlZDtcblx0XHR9XG5cblx0XHRuZ09uSW5pdCgpIHtcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gXCJ1bmRlZmluZWRcIikge1xuICAgICAgdGhpcy5pbml0aWFsaXplZCA9IHRydWU7XG4gICAgICBjb25zdCBtSWQgPSB0aGlzLmlkID8/IGBjaGVja2JveC0ke3V1aWQoKX1gO1xuICAgICAgdGhpcy5faWQgPSBtSWQ7XG4gICAgICB0aGlzLl9tZXNzYWdlSWQgPSBtSWQgKyBERUZBVUxUX01FU1NBR0VfSURfU1VGRklYO1xuICAgICAgdGhpcy5fdmFsaWRNZXNzYWdlSWQgPSBtSWQgKyBERUZBVUxUX1ZBTElEX01FU1NBR0VfSURfU1VGRklYO1xuICAgICAgdGhpcy5faW52YWxpZE1lc3NhZ2VJZCA9IG1JZCArIERFRkFVTFRfSU5WQUxJRF9NRVNTQUdFX0lEX1NVRkZJWDtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgY29uc3QgZWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsID0gdGhpcy5fcmVmPy5uYXRpdmVFbGVtZW50O1xuICAgIHRoaXMuZW5hYmxlQXR0cmlidXRlUGFzc2luZyhlbGVtZW50LCBcImRiLWNoZWNrYm94XCIpO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRDaGVja2VkKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gXCJ1bmRlZmluZWRcIikge1xuICAgICAgaWYgKHRoaXMuX2lkKSB7XG4gICAgICAgIGNvbnN0IG1lc3NhZ2VJZCA9IHRoaXMuX2lkICsgREVGQVVMVF9NRVNTQUdFX0lEX1NVRkZJWDtcbiAgICAgICAgdGhpcy5fbWVzc2FnZUlkID0gbWVzc2FnZUlkO1xuICAgICAgICB0aGlzLl92YWxpZE1lc3NhZ2VJZCA9IHRoaXMuX2lkICsgREVGQVVMVF9WQUxJRF9NRVNTQUdFX0lEX1NVRkZJWDtcbiAgICAgICAgdGhpcy5faW52YWxpZE1lc3NhZ2VJZCA9IHRoaXMuX2lkICsgREVGQVVMVF9JTlZBTElEX01FU1NBR0VfSURfU1VGRklYO1xuICAgICAgICBpZiAoc3RyaW5nUHJvcFZpc2libGUodGhpcy5tZXNzYWdlLCB0aGlzLnNob3dNZXNzYWdlKSkge1xuICAgICAgICAgIHRoaXMuX2Rlc2NCeUlkcyA9IG1lc3NhZ2VJZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHRoaXMuX3JlZj8ubmF0aXZlRWxlbWVudCkge1xuICAgICAgICBpZiAodGhpcy5pbml0aWFsaXplZCAmJiB0aGlzLmluZGV0ZXJtaW5hdGUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIC8vIFdoZW4gaW5kZXRlcm1pbmF0ZSBpcyBzZXQsIHRoZSB2YWx1ZSBvZiB0aGUgY2hlY2tlZCBwcm9wIG9ubHkgaW1wYWN0cyB0aGUgZm9ybSBzdWJtaXR0ZWQgdmFsdWVzLlxuICAgICAgICAgIC8vIEl0IGhhcyBubyBhY2Nlc3NpYmlsaXR5IG9yIFVYIGltcGxpY2F0aW9ucy4gKGh0dHBzOi8vbXVpLmNvbS9tYXRlcmlhbC11aS9yZWFjdC1jaGVja2JveC8pXG4gICAgICAgICAgdGhpcy5fcmVmLm5hdGl2ZUVsZW1lbnQuaW5kZXRlcm1pbmF0ZSA9IHRoaXMuaW5kZXRlcm1pbmF0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHRoaXMuaW5pdGlhbGl6ZWQgJiYgdGhpcy5fcmVmPy5uYXRpdmVFbGVtZW50KSB7XG4gICAgICAgIC8vIGluIGFuZ3VsYXIgdGhpcyBtdXN0IGJlIHNldCB2aWEgbmF0aXZlIGVsZW1lbnRcbiAgICAgICAgaWYgKHRoaXMuY2hlY2tlZCAhPSB1bmRlZmluZWQpIHtcbiAgICAgICAgICB0aGlzLl9yZWYubmF0aXZlRWxlbWVudC5jaGVja2VkID0gdGhpcy5jaGVja2VkO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZWQgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -428,4 +428,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
428
428
|
type: ViewChild,
|
|
429
429
|
args: ["_ref"]
|
|
430
430
|
}] } });
|
|
431
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9vdXRwdXQvYW5ndWxhci9zcmMvY29tcG9uZW50cy9pbnB1dC9pbnB1dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEVBQ1QsU0FBUyxFQUVULEtBQUssRUFFSSxNQUFNLGVBQWUsQ0FBQztBQUNqQyxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHekUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBSS9DLE9BQU8sRUFDTCxHQUFHLEVBQ0gsS0FBSyxFQUNMLFdBQVcsRUFDWCxZQUFZLEVBQ1osZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixJQUFJLEdBQ0wsTUFBTSxhQUFhLENBQUM7QUFFckIsT0FBTyxFQUNMLDBCQUEwQixFQUMxQix1QkFBdUIsRUFDdkIsaUNBQWlDLEVBQ2pDLGFBQWEsRUFDYix5QkFBeUIsRUFDekIsbUJBQW1CLEVBQ25CLHFCQUFxQixFQUNyQiwrQkFBK0IsR0FDaEMsTUFBTSx3QkFBd0IsQ0FBQztBQU9oQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUVMLDJCQUEyQixHQUM1QixNQUFNLDZCQUE2QixDQUFDOzs7QUFoQ3JDLE1BQU0sWUFBWSxHQUFHLEVBQUUsQ0FBQztBQStHeEIsTUFBTSxPQUFPLE9BQU87SUFDbEIsWUFBb0IsUUFBbUI7UUFBbkIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUN2QyxRQUFHLEdBQUcsR0FBRyxDQUFDO1FBQ1YsZ0JBQVcsR0FBRyxXQUFXLENBQUM7UUFDMUIsc0JBQWlCLEdBQUcsaUJBQWlCLENBQUM7UUFDdEMsNEJBQXVCLEdBQUcsdUJBQXVCLENBQUM7UUFDbEQsa0JBQWEsR0FBRyxhQUFhLENBQUM7UUFDOUIsd0JBQW1CLEdBQUcsbUJBQW1CLENBQUM7UUFDMUMsMEJBQXFCLEdBQUcscUJBQXFCLENBQUM7UUFvQ3BDLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzdCLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzNCLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzlCLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzVCLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzVCLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzFCLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzdCLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBSXJDLFFBQUcsR0FBd0IsU0FBUyxDQUFDO1FBQ3JDLGVBQVUsR0FBK0IsU0FBUyxDQUFDO1FBQ25ELG9CQUFlLEdBQW9DLFNBQVMsQ0FBQztRQUM3RCxzQkFBaUIsR0FBc0MsU0FBUyxDQUFDO1FBQ2pFLGdCQUFXLEdBQWdDLFNBQVMsQ0FBQztRQUNyRCxlQUFVLEdBQStCLEVBQUUsQ0FBQztRQUM1QyxXQUFNLEdBQTJCLEVBQUUsQ0FBQztRQUNwQyx1QkFBa0IsR0FBdUMsRUFBRSxDQUFDO0lBN0RqQixDQUFDO0lBOEQ1QyxXQUFXLENBQ1QsS0FBbUM7UUFFbkMsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDM0IsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2YsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekIsQ0FBQztJQUNILENBQUM7SUFDRCxZQUFZLENBQ1YsS0FBb0M7UUFFcEMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUIsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFCLENBQUM7UUFDRCwyQkFBMkIsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFekMsd0VBQXdFO1FBQ3hFLElBQ0UsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRSxRQUFRLENBQUMsS0FBSztZQUN6QyxJQUFJLENBQUMsVUFBVSxLQUFLLFNBQVMsRUFDN0IsQ0FBQztZQUNELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDO1lBQ3pDLElBQUksWUFBWSxFQUFFLEVBQUUsQ0FBQztnQkFDbkIsSUFBSSxDQUFDLGtCQUFrQjtvQkFDckIsSUFBSSxDQUFDLGNBQWM7d0JBQ25CLElBQUksQ0FBQyxJQUFJLEVBQUUsYUFBYSxFQUFFLGlCQUFpQjt3QkFDM0MsdUJBQXVCLENBQUM7Z0JBQzFCLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUNwRCxDQUFDO1FBQ0gsQ0FBQzthQUFNLElBQ0wsSUFBSSxDQUFDLFVBQVUsS0FBSyxPQUFPO1lBQzNCLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxhQUFhLEVBQUUsUUFBUSxDQUFDLEtBQUs7Z0JBQ3ZDLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEVBQ3RFLENBQUM7WUFDRCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7WUFDdkMsSUFBSSxZQUFZLEVBQUUsRUFBRSxDQUFDO2dCQUNuQixJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLFlBQVksSUFBSSxxQkFBcUIsQ0FBQztnQkFDckUsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ3BELENBQUM7UUFDSCxDQUFDO2FBQU0sSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1lBQzdELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUNwQyxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ3ZCLENBQUM7SUFDSCxDQUFDO0lBQ0QsVUFBVSxDQUNSLEtBQXlDO1FBRXpDLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFCLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hCLENBQUM7SUFDSCxDQUFDO0lBQ0QsV0FBVyxDQUNULEtBQXlDO1FBRXpDLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNCLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNmLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pCLENBQUM7SUFDSCxDQUFDO0lBQ0QsV0FBVyxDQUNULEtBQW1DO1FBRW5DLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FDZixDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQztZQUN0QixDQUFDLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDMUIsS0FBSyxFQUFFLEdBQUc7Z0JBQ1YsS0FBSyxFQUFFLFNBQVM7YUFDakIsQ0FBQyxDQUFDO1lBQ0wsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FDakIsQ0FBQztJQUNKLENBQUM7SUFDRCxjQUFjLENBQUMsQ0FBQyxFQUFFLE1BQU07UUFDdEIsT0FBTyxJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO0lBQ3RELENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssc0JBQXNCLENBQzVCLE9BQTJCLEVBQzNCLHFCQUE2QjtRQUU3QixNQUFNLE1BQU0sR0FBRyxPQUFPLEVBQUUsT0FBTyxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDdkQsSUFBSSxPQUFPLElBQUksTUFBTSxFQUFFLENBQUM7WUFDdEIsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztZQUNyQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsVUFBVSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUMzQyxNQUFNLElBQUksR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNoQyxJQUNFLElBQUk7b0JBQ0osQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUNoRSxDQUFDO29CQUNELE9BQU8sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQzVDLE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNwQyxDQUFDO2dCQUNELElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssT0FBTyxFQUFFLENBQUM7b0JBQ2xDLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxDQUFDO29CQUN2RCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7b0JBQ3hELE1BQU0sWUFBWSxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7b0JBQ25ELE9BQU8sQ0FBQyxZQUFZLENBQ2xCLElBQUksQ0FBQyxJQUFJLEVBQ1QsR0FBRyxZQUFZLENBQUMsQ0FBQyxDQUFDLEdBQUcsWUFBWSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsQ0FDcEQsQ0FBQztvQkFDRixJQUFJLGNBQWMsRUFBRSxDQUFDO3dCQUNuQix5REFBeUQ7d0JBQ3pELE1BQU0sQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDO29CQUMzQyxDQUFDO3lCQUFNLENBQUM7d0JBQ04sTUFBTSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQ3BDLENBQUM7Z0JBQ0gsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUdELFVBQVUsQ0FBQyxLQUFVO1FBQ3ZCLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLE1BQU07WUFDaEMsSUFBSSxDQUFDLElBQUksS0FBSyxNQUFNO1lBQ3BCLElBQUksQ0FBQyxJQUFJLEtBQUssTUFBTTtZQUNwQixJQUFJLENBQUMsSUFBSSxLQUFLLE9BQU87WUFDckIsSUFBSSxDQUFDLElBQUksS0FBSyxnQkFBZ0IsQ0FDN0I7WUFBRSxPQUFPO1FBQ1QsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFFbkIsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRSxDQUFDO1lBQy9CLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNwRSxDQUFDO0lBQ0gsQ0FBQztJQUVELGVBQWUsQ0FBQyxDQUFNLElBQUcsQ0FBQztJQUUxQixnQkFBZ0IsQ0FBQyxRQUFhO1FBQzVCLElBQUksQ0FBQyxlQUFlLEdBQUcsUUFBUSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxTQUFjO1FBQy9CLDZCQUE2QjtJQUM5QixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsUUFBaUI7UUFDaEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDM0IsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVcsRUFBRSxDQUFDO1lBQ2xDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxFQUFFLElBQUksU0FBUyxJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ3pDLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO1lBQ2YsSUFBSSxDQUFDLFVBQVUsR0FBRyxHQUFHLEdBQUcseUJBQXlCLENBQUM7WUFDbEQsSUFBSSxDQUFDLGVBQWUsR0FBRyxHQUFHLEdBQUcsK0JBQStCLENBQUM7WUFDN0QsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEdBQUcsR0FBRyxpQ0FBaUMsQ0FBQztZQUNqRSxJQUFJLENBQUMsV0FBVyxHQUFHLEdBQUcsR0FBRywwQkFBMEIsQ0FBQztRQUN0RCxDQUFDO0lBQ0gsQ0FBQztJQUVELGVBQWU7UUFDYixNQUFNLE9BQU8sR0FBdUIsSUFBSSxDQUFDLElBQUksRUFBRSxhQUFhLENBQUM7UUFDN0QsSUFBSSxDQUFDLHNCQUFzQixDQUFDLE9BQU8sRUFBRSxVQUFVLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQscUJBQXFCLENBQUMsT0FBc0I7UUFDMUMsSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLEVBQUUsQ0FBQztZQUNsQyxJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztnQkFDYixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsR0FBRyxHQUFHLHlCQUF5QixDQUFDO2dCQUN2RCxJQUFJLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQztnQkFDNUIsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsR0FBRyxHQUFHLCtCQUErQixDQUFDO2dCQUNsRSxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLEdBQUcsR0FBRyxpQ0FBaUMsQ0FBQztnQkFDdEUsSUFBSSxDQUFDLFdBQVc7b0JBQ2QsSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsR0FBRyxHQUFHLDBCQUEwQixDQUFDO2dCQUMzRCxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7b0JBQ3RELElBQUksQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDO2dCQUM5QixDQUFDO1lBQ0gsQ0FBQztZQUNELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUMzQixDQUFDO0lBQ0gsQ0FBQzsrR0F6UFUsT0FBTzttR0FBUCxPQUFPLHM1QkE1RVAsQ0FBQztnQkFDWCxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsT0FBTztnQkFDcEIsS0FBSyxFQUFFLElBQUk7YUFDWCxDQUFDLHdIQUVROzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrRVQsMkRBRVMsWUFBWSxnUUFBRSxVQUFVOzs0RkFFdkIsT0FBTztrQkE3RW5CLFNBQVM7bUJBQUM7b0JBQ1QsU0FBUyxFQUFFLENBQUM7NEJBQ1gsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxTQUFTOzRCQUNwQixLQUFLLEVBQUUsSUFBSTt5QkFDWCxDQUFDO29CQUNGLFFBQVEsRUFBRSxVQUFVO29CQUNwQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtFVDtvQkFDRCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQztpQkFDcEM7OEVBV1UsRUFBRTtzQkFBVixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxHQUFHO3NCQUFYLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVJLE9BQU87c0JBQWhCLE1BQU07Z0JBQ0csS0FBSztzQkFBZCxNQUFNO2dCQUNHLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ0csTUFBTTtzQkFBZixNQUFNO2dCQUNHLE1BQU07c0JBQWYsTUFBTTtnQkFDRyxJQUFJO3NCQUFiLE1BQU07Z0JBQ0csT0FBTztzQkFBaEIsTUFBTTtnQkFDRyxLQUFLO3NCQUFkLE1BQU07Z0JBRVksSUFBSTtzQkFBdEIsU0FBUzt1QkFBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIENvbXBvbmVudCxcbiAgVmlld0NoaWxkLFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcblJlbmRlcmVyMiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cblxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuXG5jb25zdCBkZWZhdWx0UHJvcHMgPSB7fTtcblxuaW1wb3J0IHtcbiAgY2xzLFxuICBkZWxheSxcbiAgZ2V0SGlkZVByb3AsXG4gIGhhc1ZvaWNlT3ZlcixcbiAgaXNBcnJheU9mU3RyaW5ncyxcbiAgc3RyaW5nUHJvcFZpc2libGUsXG4gIHV1aWQsXG59IGZyb20gXCIuLi8uLi91dGlsc1wiO1xuaW1wb3J0IHsgREJJbnB1dFByb3BzLCBEQklucHV0U3RhdGUgfSBmcm9tIFwiLi9tb2RlbFwiO1xuaW1wb3J0IHtcbiAgREVGQVVMVF9EQVRBTElTVF9JRF9TVUZGSVgsXG4gIERFRkFVTFRfSU5WQUxJRF9NRVNTQUdFLFxuICBERUZBVUxUX0lOVkFMSURfTUVTU0FHRV9JRF9TVUZGSVgsXG4gIERFRkFVTFRfTEFCRUwsXG4gIERFRkFVTFRfTUVTU0FHRV9JRF9TVUZGSVgsXG4gIERFRkFVTFRfUExBQ0VIT0xERVIsXG4gIERFRkFVTFRfVkFMSURfTUVTU0FHRSxcbiAgREVGQVVMVF9WQUxJRF9NRVNTQUdFX0lEX1NVRkZJWCxcbn0gZnJvbSBcIi4uLy4uL3NoYXJlZC9jb25zdGFudHNcIjtcbmltcG9ydCB7XG4gIENoYW5nZUV2ZW50LFxuICBJbnB1dEV2ZW50LFxuICBJbnRlcmFjdGlvbkV2ZW50LFxuICBWYWx1ZUxhYmVsVHlwZSxcbn0gZnJvbSBcIi4uLy4uL3NoYXJlZC9tb2RlbFwiO1xuaW1wb3J0IHsgREJJbmZvdGV4dCB9IGZyb20gXCIuLi9pbmZvdGV4dC9pbmZvdGV4dFwiO1xuaW1wb3J0IHtcbiAgaGFuZGxlRnJhbWV3b3JrRXZlbnRWdWUsXG4gIGhhbmRsZUZyYW1ld29ya0V2ZW50QW5ndWxhcixcbn0gZnJvbSBcIi4uLy4uL3V0aWxzL2Zvcm0tY29tcG9uZW50c1wiO1xuXG5AQ29tcG9uZW50KHtcblx0XHRwcm92aWRlcnM6IFt7XG5cdFx0XHRwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcblx0XHRcdHVzZUV4aXN0aW5nOiBEQklucHV0LFxuXHRcdFx0bXVsdGk6IHRydWVcblx0XHR9XSxcdFxuICBzZWxlY3RvcjogXCJkYi1pbnB1dFwiLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXZcbiAgICAgIFtjbGFzc109XCJjbHMoJ2RiLWlucHV0JywgY2xhc3NOYW1lKVwiXG4gICAgICBbYXR0ci5kYXRhLXZhcmlhbnRdPVwidmFyaWFudFwiXG4gICAgICBbYXR0ci5kYXRhLWhpZGUtbGFiZWxdPVwiZ2V0SGlkZVByb3Aoc2hvd0xhYmVsKVwiXG4gICAgICBbYXR0ci5kYXRhLWhpZGUtaWNvbl09XCJnZXRIaWRlUHJvcChzaG93SWNvbilcIlxuICAgICAgW2F0dHIuZGF0YS1pY29uXT1cImljb25cIlxuICAgICAgW2F0dHIuZGF0YS1pY29uLWFmdGVyXT1cImljb25BZnRlclwiXG4gICAgICBbYXR0ci5kYXRhLWhpZGUtaWNvbi1hZnRlcl09XCJnZXRIaWRlUHJvcChzaG93SWNvbilcIlxuICAgID5cbiAgICAgIDxsYWJlbCBbYXR0ci5mb3JdPVwiX2lkXCI+e3tsYWJlbCA/PyBERUZBVUxUX0xBQkVMfX08L2xhYmVsPlxuICAgICAgPGlucHV0XG4gICAgICAgIFthdHRyLmFyaWEtaW52YWxpZF09XCJ2YWxpZGF0aW9uID09PSAnaW52YWxpZCdcIlxuICAgICAgICBbYXR0ci5kYXRhLWN1c3RvbS12YWxpZGl0eV09XCJ2YWxpZGF0aW9uXCJcbiAgICAgICAgI19yZWZcbiAgICAgICAgW2F0dHIuaWRdPVwiX2lkXCJcbiAgICAgICAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgICAgICAgW2F0dHIudHlwZV09XCJ0eXBlIHx8ICd0ZXh0J1wiXG4gICAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyID8/IERFRkFVTFRfUExBQ0VIT0xERVJcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgICBbYXR0ci5zdGVwXT1cInN0ZXBcIlxuICAgICAgICBbYXR0ci52YWx1ZV09XCJ2YWx1ZSA/PyBfdmFsdWVcIlxuICAgICAgICBbYXR0ci5tYXhMZW5ndGhdPVwibWF4TGVuZ3RoXCJcbiAgICAgICAgW2F0dHIubWluTGVuZ3RoXT1cIm1pbkxlbmd0aFwiXG4gICAgICAgIFthdHRyLm1heF09XCJtYXhcIlxuICAgICAgICBbYXR0ci5taW5dPVwibWluXCJcbiAgICAgICAgW2F0dHIucmVhZE9ubHldPVwicmVhZE9ubHlcIlxuICAgICAgICBbYXR0ci5mb3JtXT1cImZvcm1cIlxuICAgICAgICBbYXR0ci5wYXR0ZXJuXT1cInBhdHRlcm5cIlxuICAgICAgICBbYXR0ci5zaXplXT1cInNpemVcIlxuICAgICAgICBbYXR0ci5hdXRvQ29tcGxldGVdPVwiYXV0b2NvbXBsZXRlXCJcbiAgICAgICAgW2F0dHIuYXV0b0ZvY3VzXT1cImF1dG9mb2N1c1wiXG4gICAgICAgIChpbnB1dCk9XCJoYW5kbGVJbnB1dCgkZXZlbnQpXCJcbiAgICAgICAgKGNoYW5nZSk9XCJoYW5kbGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIChibHVyKT1cImhhbmRsZUJsdXIoJGV2ZW50KVwiXG4gICAgICAgIChmb2N1cyk9XCJoYW5kbGVGb2N1cygkZXZlbnQpXCJcbiAgICAgICAgW2F0dHIubGlzdF09XCJkYXRhTGlzdCAmJiBfZGF0YUxpc3RJZFwiXG4gICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiX2Rlc2NCeUlkc1wiXG4gICAgICAvPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRhdGFMaXN0XCI+XG4gICAgICAgIDxkYXRhbGlzdCBbYXR0ci5pZF09XCJfZGF0YUxpc3RJZFwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgZ2V0RGF0YUxpc3QoZGF0YUxpc3QpOyB0cmFja0J5OiB0cmFja0J5T3B0aW9uMFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPG9wdGlvbiBbYXR0ci52YWx1ZV09XCJvcHRpb24udmFsdWVcIj57e29wdGlvbi5sYWJlbH19PC9vcHRpb24+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGF0YWxpc3Q+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdHJpbmdQcm9wVmlzaWJsZShtZXNzYWdlLCBzaG93TWVzc2FnZSlcIj5cbiAgICAgICAgPGRiLWluZm90ZXh0IHNpemU9XCJzbWFsbFwiIFtpY29uXT1cIm1lc3NhZ2VJY29uXCIgW2lkXT1cIl9tZXNzYWdlSWRcIj5cbiAgICAgICAgICB7e21lc3NhZ2V9fVxuICAgICAgICA8L2RiLWluZm90ZXh0PlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8ZGItaW5mb3RleHQgc2l6ZT1cInNtYWxsXCIgc2VtYW50aWM9XCJzdWNjZXNzZnVsXCIgW2lkXT1cIl92YWxpZE1lc3NhZ2VJZFwiPlxuICAgICAgICB7e3ZhbGlkTWVzc2FnZSA/PyBERUZBVUxUX1ZBTElEX01FU1NBR0V9fVxuICAgICAgPC9kYi1pbmZvdGV4dD5cbiAgICAgIDxkYi1pbmZvdGV4dCBzaXplPVwic21hbGxcIiBzZW1hbnRpYz1cImNyaXRpY2FsXCIgW2lkXT1cIl9pbnZhbGlkTWVzc2FnZUlkXCI+XG4gICAgICAgIHt7aW52YWxpZE1lc3NhZ2UgPz8gdGhpcy5fcmVmPy52YWxpZGF0aW9uTWVzc2FnZSA/P1xuICAgICAgICAgICAgREVGQVVMVF9JTlZBTElEX01FU1NBR0V9fVxuICAgICAgPC9kYi1pbmZvdGV4dD5cbiAgICAgIDxzcGFuIGRhdGEtdmlzdWFsbHktaGlkZGVuPVwidHJ1ZVwiIHJvbGU9XCJzdGF0dXNcIj5cbiAgICAgICAge3tfdm9pY2VPdmVyRmFsbGJhY2t9fVxuICAgICAgPC9zcGFuPlxuICAgIDwvZGl2PlxuICBgLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBEQkluZm90ZXh0XSxcbn0pXG5leHBvcnQgY2xhc3MgREJJbnB1dCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcblx0XHRjb25zdHJ1Y3Rvcihwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHsgfVxuICBjbHMgPSBjbHM7XG4gIGdldEhpZGVQcm9wID0gZ2V0SGlkZVByb3A7XG4gIHN0cmluZ1Byb3BWaXNpYmxlID0gc3RyaW5nUHJvcFZpc2libGU7XG4gIERFRkFVTFRfSU5WQUxJRF9NRVNTQUdFID0gREVGQVVMVF9JTlZBTElEX01FU1NBR0U7XG4gIERFRkFVTFRfTEFCRUwgPSBERUZBVUxUX0xBQkVMO1xuICBERUZBVUxUX1BMQUNFSE9MREVSID0gREVGQVVMVF9QTEFDRUhPTERFUjtcbiAgREVGQVVMVF9WQUxJRF9NRVNTQUdFID0gREVGQVVMVF9WQUxJRF9NRVNTQUdFO1xuXG4gIEBJbnB1dCgpIGlkITogREJJbnB1dFByb3BzW1wiaWRcIl07XG4gIEBJbnB1dCgpIGRhdGFMaXN0SWQhOiBEQklucHV0UHJvcHNbXCJkYXRhTGlzdElkXCJdO1xuICBASW5wdXQoKSBtZXNzYWdlITogREJJbnB1dFByb3BzW1wibWVzc2FnZVwiXTtcbiAgQElucHV0KCkgc2hvd01lc3NhZ2UhOiBEQklucHV0UHJvcHNbXCJzaG93TWVzc2FnZVwiXTtcbiAgQElucHV0KCkgdmFsdWUhOiBEQklucHV0UHJvcHNbXCJ2YWx1ZVwiXTtcbiAgQElucHV0KCkgdmFsaWRhdGlvbiE6IERCSW5wdXRQcm9wc1tcInZhbGlkYXRpb25cIl07XG4gIEBJbnB1dCgpIGludmFsaWRNZXNzYWdlITogREJJbnB1dFByb3BzW1wiaW52YWxpZE1lc3NhZ2VcIl07XG4gIEBJbnB1dCgpIHJlcXVpcmVkITogREJJbnB1dFByb3BzW1wicmVxdWlyZWRcIl07XG4gIEBJbnB1dCgpIG1pbkxlbmd0aCE6IERCSW5wdXRQcm9wc1tcIm1pbkxlbmd0aFwiXTtcbiAgQElucHV0KCkgbWF4TGVuZ3RoITogREJJbnB1dFByb3BzW1wibWF4TGVuZ3RoXCJdO1xuICBASW5wdXQoKSBwYXR0ZXJuITogREJJbnB1dFByb3BzW1wicGF0dGVyblwiXTtcbiAgQElucHV0KCkgdmFsaWRNZXNzYWdlITogREJJbnB1dFByb3BzW1widmFsaWRNZXNzYWdlXCJdO1xuICBASW5wdXQoKSBjbGFzc05hbWUhOiBEQklucHV0UHJvcHNbXCJjbGFzc05hbWVcIl07XG4gIEBJbnB1dCgpIHZhcmlhbnQhOiBEQklucHV0UHJvcHNbXCJ2YXJpYW50XCJdO1xuICBASW5wdXQoKSBzaG93TGFiZWwhOiBEQklucHV0UHJvcHNbXCJzaG93TGFiZWxcIl07XG4gIEBJbnB1dCgpIHNob3dJY29uITogREJJbnB1dFByb3BzW1wic2hvd0ljb25cIl07XG4gIEBJbnB1dCgpIGljb24hOiBEQklucHV0UHJvcHNbXCJpY29uXCJdO1xuICBASW5wdXQoKSBpY29uQWZ0ZXIhOiBEQklucHV0UHJvcHNbXCJpY29uQWZ0ZXJcIl07XG4gIEBJbnB1dCgpIGxhYmVsITogREJJbnB1dFByb3BzW1wibGFiZWxcIl07XG4gIEBJbnB1dCgpIG5hbWUhOiBEQklucHV0UHJvcHNbXCJuYW1lXCJdO1xuICBASW5wdXQoKSB0eXBlITogREJJbnB1dFByb3BzW1widHlwZVwiXTtcbiAgQElucHV0KCkgcGxhY2Vob2xkZXIhOiBEQklucHV0UHJvcHNbXCJwbGFjZWhvbGRlclwiXTtcbiAgQElucHV0KCkgZGlzYWJsZWQhOiBEQklucHV0UHJvcHNbXCJkaXNhYmxlZFwiXTtcbiAgQElucHV0KCkgc3RlcCE6IERCSW5wdXRQcm9wc1tcInN0ZXBcIl07XG4gIEBJbnB1dCgpIG1heCE6IERCSW5wdXRQcm9wc1tcIm1heFwiXTtcbiAgQElucHV0KCkgbWluITogREJJbnB1dFByb3BzW1wibWluXCJdO1xuICBASW5wdXQoKSByZWFkT25seSE6IERCSW5wdXRQcm9wc1tcInJlYWRPbmx5XCJdO1xuICBASW5wdXQoKSBmb3JtITogREJJbnB1dFByb3BzW1wiZm9ybVwiXTtcbiAgQElucHV0KCkgc2l6ZSE6IERCSW5wdXRQcm9wc1tcInNpemVcIl07XG4gIEBJbnB1dCgpIGF1dG9jb21wbGV0ZSE6IERCSW5wdXRQcm9wc1tcImF1dG9jb21wbGV0ZVwiXTtcbiAgQElucHV0KCkgYXV0b2ZvY3VzITogREJJbnB1dFByb3BzW1wiYXV0b2ZvY3VzXCJdO1xuICBASW5wdXQoKSBkYXRhTGlzdCE6IERCSW5wdXRQcm9wc1tcImRhdGFMaXN0XCJdO1xuICBASW5wdXQoKSBtZXNzYWdlSWNvbiE6IERCSW5wdXRQcm9wc1tcIm1lc3NhZ2VJY29uXCJdO1xuXG4gIEBPdXRwdXQoKSBvbklucHV0ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgaW5wdXQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBvbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIG9uQmx1ciA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGJsdXIgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBvbkZvY3VzID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgZm9jdXMgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQFZpZXdDaGlsZChcIl9yZWZcIikgX3JlZiE6IEVsZW1lbnRSZWYgfCB1bmRlZmluZWQ7XG5cbiAgX2lkOiBEQklucHV0U3RhdGVbXCJfaWRcIl0gPSB1bmRlZmluZWQ7XG4gIF9tZXNzYWdlSWQ6IERCSW5wdXRTdGF0ZVtcIl9tZXNzYWdlSWRcIl0gPSB1bmRlZmluZWQ7XG4gIF92YWxpZE1lc3NhZ2VJZDogREJJbnB1dFN0YXRlW1wiX3ZhbGlkTWVzc2FnZUlkXCJdID0gdW5kZWZpbmVkO1xuICBfaW52YWxpZE1lc3NhZ2VJZDogREJJbnB1dFN0YXRlW1wiX2ludmFsaWRNZXNzYWdlSWRcIl0gPSB1bmRlZmluZWQ7XG4gIF9kYXRhTGlzdElkOiBEQklucHV0U3RhdGVbXCJfZGF0YUxpc3RJZFwiXSA9IHVuZGVmaW5lZDtcbiAgX2Rlc2NCeUlkczogREJJbnB1dFN0YXRlW1wiX2Rlc2NCeUlkc1wiXSA9IFwiXCI7XG4gIF92YWx1ZTogREJJbnB1dFN0YXRlW1wiX3ZhbHVlXCJdID0gXCJcIjtcbiAgX3ZvaWNlT3ZlckZhbGxiYWNrOiBEQklucHV0U3RhdGVbXCJfdm9pY2VPdmVyRmFsbGJhY2tcIl0gPSBcIlwiO1xuICBoYW5kbGVJbnB1dChcbiAgICBldmVudDogSW5wdXRFdmVudDxIVE1MSW5wdXRFbGVtZW50PlxuICApOiBSZXR1cm5UeXBlPERCSW5wdXRTdGF0ZVtcImhhbmRsZUlucHV0XCJdPiB7XG4gICAgaWYgKHRoaXMub25JbnB1dCkge1xuICAgICAgdGhpcy5vbklucHV0LmVtaXQoZXZlbnQpO1xuICAgIH1cbiAgICBpZiAodGhpcy5pbnB1dCkge1xuICAgICAgdGhpcy5pbnB1dC5lbWl0KGV2ZW50KTtcbiAgICB9XG4gIH1cbiAgaGFuZGxlQ2hhbmdlKFxuICAgIGV2ZW50OiBDaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50PlxuICApOiBSZXR1cm5UeXBlPERCSW5wdXRTdGF0ZVtcImhhbmRsZUNoYW5nZVwiXT4ge1xuICAgIGlmICh0aGlzLm9uQ2hhbmdlKSB7XG4gICAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoZXZlbnQpO1xuICAgIH1cbiAgICBpZiAodGhpcy5jaGFuZ2UpIHtcbiAgICAgIHRoaXMuY2hhbmdlLmVtaXQoZXZlbnQpO1xuICAgIH1cbiAgICBoYW5kbGVGcmFtZXdvcmtFdmVudEFuZ3VsYXIodGhpcywgZXZlbnQpO1xuXG4gICAgLyogRm9yIGExMXkgcmVhc29ucyB3ZSBuZWVkIHRvIG1hcCB0aGUgY29ycmVjdCBtZXNzYWdlIHdpdGggdGhlIGlucHV0ICovXG4gICAgaWYgKFxuICAgICAgIXRoaXMuX3JlZj8ubmF0aXZlRWxlbWVudD8udmFsaWRpdHkudmFsaWQgfHxcbiAgICAgIHRoaXMudmFsaWRhdGlvbiA9PT0gXCJpbnZhbGlkXCJcbiAgICApIHtcbiAgICAgIHRoaXMuX2Rlc2NCeUlkcyA9IHRoaXMuX2ludmFsaWRNZXNzYWdlSWQ7XG4gICAgICBpZiAoaGFzVm9pY2VPdmVyKCkpIHtcbiAgICAgICAgdGhpcy5fdm9pY2VPdmVyRmFsbGJhY2sgPVxuICAgICAgICAgIHRoaXMuaW52YWxpZE1lc3NhZ2UgPz9cbiAgICAgICAgICB0aGlzLl9yZWY/Lm5hdGl2ZUVsZW1lbnQ/LnZhbGlkYXRpb25NZXNzYWdlID8/XG4gICAgICAgICAgREVGQVVMVF9JTlZBTElEX01FU1NBR0U7XG4gICAgICAgIGRlbGF5KCgpID0+ICh0aGlzLl92b2ljZU92ZXJGYWxsYmFjayA9IFwiXCIpLCAxMDAwKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKFxuICAgICAgdGhpcy52YWxpZGF0aW9uID09PSBcInZhbGlkXCIgfHxcbiAgICAgICh0aGlzLl9yZWY/Lm5hdGl2ZUVsZW1lbnQ/LnZhbGlkaXR5LnZhbGlkICYmXG4gICAgICAgICh0aGlzLnJlcXVpcmVkIHx8IHRoaXMubWluTGVuZ3RoIHx8IHRoaXMubWF4TGVuZ3RoIHx8IHRoaXMucGF0dGVybikpXG4gICAgKSB7XG4gICAgICB0aGlzLl9kZXNjQnlJZHMgPSB0aGlzLl92YWxpZE1lc3NhZ2VJZDtcbiAgICAgIGlmIChoYXNWb2ljZU92ZXIoKSkge1xuICAgICAgICB0aGlzLl92b2ljZU92ZXJGYWxsYmFjayA9IHRoaXMudmFsaWRNZXNzYWdlID8/IERFRkFVTFRfVkFMSURfTUVTU0FHRTtcbiAgICAgICAgZGVsYXkoKCkgPT4gKHRoaXMuX3ZvaWNlT3ZlckZhbGxiYWNrID0gXCJcIiksIDEwMDApO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoc3RyaW5nUHJvcFZpc2libGUodGhpcy5tZXNzYWdlLCB0aGlzLnNob3dNZXNzYWdlKSkge1xuICAgICAgdGhpcy5fZGVzY0J5SWRzID0gdGhpcy5fbWVzc2FnZUlkO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9kZXNjQnlJZHMgPSBcIlwiO1xuICAgIH1cbiAgfVxuICBoYW5kbGVCbHVyKFxuICAgIGV2ZW50OiBJbnRlcmFjdGlvbkV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+XG4gICk6IFJldHVyblR5cGU8REJJbnB1dFN0YXRlW1wiaGFuZGxlQmx1clwiXT4ge1xuICAgIGlmICh0aGlzLm9uQmx1cikge1xuICAgICAgdGhpcy5vbkJsdXIuZW1pdChldmVudCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmJsdXIpIHtcbiAgICAgIHRoaXMuYmx1ci5lbWl0KGV2ZW50KTtcbiAgICB9XG4gIH1cbiAgaGFuZGxlRm9jdXMoXG4gICAgZXZlbnQ6IEludGVyYWN0aW9uRXZlbnQ8SFRNTElucHV0RWxlbWVudD5cbiAgKTogUmV0dXJuVHlwZTxEQklucHV0U3RhdGVbXCJoYW5kbGVGb2N1c1wiXT4ge1xuICAgIGlmICh0aGlzLm9uRm9jdXMpIHtcbiAgICAgIHRoaXMub25Gb2N1cy5lbWl0KGV2ZW50KTtcbiAgICB9XG4gICAgaWYgKHRoaXMuZm9jdXMpIHtcbiAgICAgIHRoaXMuZm9jdXMuZW1pdChldmVudCk7XG4gICAgfVxuICB9XG4gIGdldERhdGFMaXN0KFxuICAgIF9saXN0Pzogc3RyaW5nW10gfCBWYWx1ZUxhYmVsVHlwZVtdXG4gICk6IFJldHVyblR5cGU8REJJbnB1dFN0YXRlW1wiZ2V0RGF0YUxpc3RcIl0+IHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbShcbiAgICAgIChpc0FycmF5T2ZTdHJpbmdzKF9saXN0KVxuICAgICAgICA/IF9saXN0Lm1hcCgodmFsOiBzdHJpbmcpID0+ICh7XG4gICAgICAgICAgICB2YWx1ZTogdmFsLFxuICAgICAgICAgICAgbGFiZWw6IHVuZGVmaW5lZCxcbiAgICAgICAgICB9KSlcbiAgICAgICAgOiBfbGlzdCkgfHwgW11cbiAgICApO1xuICB9XG4gIHRyYWNrQnlPcHRpb24wKF8sIG9wdGlvbikge1xuICAgIHJldHVybiB0aGlzLl9kYXRhTGlzdElkICsgXCItb3B0aW9uLVwiICsgb3B0aW9uLnZhbHVlO1xuICB9XG5cbiAgLyoqXG4gICAqIFBhc3NlcyBgYXJpYS0qYCwgYGRhdGEtKmAgJiBgY2xhc3NgIGF0dHJpYnV0ZXMgdG8gY29ycmVjdCBjaGlsZC4gVXNlZCBpbiBhbmd1bGFyIGFuZCBzdGVuY2lsLlxuICAgKiBAcGFyYW0gZWxlbWVudCAgdGhlIHJlZiBmb3IgdGhlIGNvbXBvbmVudFxuICAgKiBAcGFyYW0gY3VzdG9tRWxlbWVudFNlbGVjdG9yICB0aGUgY3VzdG9tIGVsZW1lbnQgbGlrZSBgbXktY29tcG9uZW50YFxuICAgKi9cbiAgcHJpdmF0ZSBlbmFibGVBdHRyaWJ1dGVQYXNzaW5nKFxuICAgIGVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgbnVsbCxcbiAgICBjdXN0b21FbGVtZW50U2VsZWN0b3I6IHN0cmluZ1xuICApIHtcbiAgICBjb25zdCBwYXJlbnQgPSBlbGVtZW50Py5jbG9zZXN0KGN1c3RvbUVsZW1lbnRTZWxlY3Rvcik7XG4gICAgaWYgKGVsZW1lbnQgJiYgcGFyZW50KSB7XG4gICAgICBjb25zdCBhdHRyaWJ1dGVzID0gcGFyZW50LmF0dHJpYnV0ZXM7XG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGF0dHJpYnV0ZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgYXR0ciA9IGF0dHJpYnV0ZXMuaXRlbShpKTtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIGF0dHIgJiZcbiAgICAgICAgICAoYXR0ci5uYW1lLnN0YXJ0c1dpdGgoXCJkYXRhLVwiKSB8fCBhdHRyLm5hbWUuc3RhcnRzV2l0aChcImFyaWEtXCIpKVxuICAgICAgICApIHtcbiAgICAgICAgICBlbGVtZW50LnNldEF0dHJpYnV0ZShhdHRyLm5hbWUsIGF0dHIudmFsdWUpO1xuICAgICAgICAgIHBhcmVudC5yZW1vdmVBdHRyaWJ1dGUoYXR0ci5uYW1lKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoYXR0ciAmJiBhdHRyLm5hbWUgPT09IFwiY2xhc3NcIikge1xuICAgICAgICAgIGNvbnN0IGlzV2ViQ29tcG9uZW50ID0gYXR0ci52YWx1ZS5pbmNsdWRlcyhcImh5ZHJhdGVkXCIpO1xuICAgICAgICAgIGNvbnN0IHZhbHVlID0gYXR0ci52YWx1ZS5yZXBsYWNlKFwiaHlkcmF0ZWRcIiwgXCJcIikudHJpbSgpO1xuICAgICAgICAgIGNvbnN0IGN1cnJlbnRDbGFzcyA9IGVsZW1lbnQuZ2V0QXR0cmlidXRlKFwiY2xhc3NcIik7XG4gICAgICAgICAgZWxlbWVudC5zZXRBdHRyaWJ1dGUoXG4gICAgICAgICAgICBhdHRyLm5hbWUsXG4gICAgICAgICAgICBgJHtjdXJyZW50Q2xhc3MgPyBgJHtjdXJyZW50Q2xhc3N9IGAgOiBcIlwifSR7dmFsdWV9YFxuICAgICAgICAgICk7XG4gICAgICAgICAgaWYgKGlzV2ViQ29tcG9uZW50KSB7XG4gICAgICAgICAgICAvLyBTdGVuY2lsIGlzIHVzaW5nIHRoaXMgY2xhc3MgZm9yIGxhenkgbG9hZGluZyBjb21wb25lbnRcbiAgICAgICAgICAgIHBhcmVudC5zZXRBdHRyaWJ1dGUoXCJjbGFzc1wiLCBcImh5ZHJhdGVkXCIpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwYXJlbnQucmVtb3ZlQXR0cmlidXRlKGF0dHIubmFtZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgXG5cdFx0d3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XG5pZiAoIXZhbHVlICYmICh0aGlzLnR5cGUgPT09IFwiZGF0ZVwiIHx8XG5cdFx0XHR0aGlzLnR5cGUgPT09IFwidGltZVwiIHx8XG5cdFx0XHR0aGlzLnR5cGUgPT09IFwid2Vla1wiIHx8XG5cdFx0XHR0aGlzLnR5cGUgPT09IFwibW9udGhcIiB8fFxuXHRcdFx0dGhpcy50eXBlID09PSBcImRhdGV0aW1lLWxvY2FsXCJcblx0XHRcdCkpIHJldHVybjtcblx0XHQgIHRoaXMudmFsdWUgPSB2YWx1ZTtcblxuXHRcdCAgaWYgKHRoaXMuX3JlZj8ubmF0aXZlRWxlbWVudCkge1xuXHRcdFx0IHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5fcmVmPy5uYXRpdmVFbGVtZW50LCAndmFsdWUnLCB2YWx1ZSk7XG5cdFx0ICB9XG5cdFx0fVxuXG5cdFx0cHJvcGFnYXRlQ2hhbmdlKF86IGFueSkge31cblxuXHRcdHJlZ2lzdGVyT25DaGFuZ2Uob25DaGFuZ2U6IGFueSkge1xuXHRcdCAgdGhpcy5wcm9wYWdhdGVDaGFuZ2UgPSBvbkNoYW5nZTtcblx0XHR9XG5cblx0XHRyZWdpc3Rlck9uVG91Y2hlZChvblRvdWNoZWQ6IGFueSkge1xuXHRcdCAvL3RoaXMub25Ub3VjaGVkID0gb25Ub3VjaGVkO1xuXHRcdH1cblxuXHRcdHNldERpc2FibGVkU3RhdGUoZGlzYWJsZWQ6IGJvb2xlYW4pIHtcblx0XHQgIHRoaXMuZGlzYWJsZWQgPSBkaXNhYmxlZDtcblx0XHR9XG5cblx0XHRuZ09uSW5pdCgpIHtcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gXCJ1bmRlZmluZWRcIikge1xuICAgICAgY29uc3QgbUlkID0gdGhpcy5pZCA/PyBgaW5wdXQtJHt1dWlkKCl9YDtcbiAgICAgIHRoaXMuX2lkID0gbUlkO1xuICAgICAgdGhpcy5fbWVzc2FnZUlkID0gbUlkICsgREVGQVVMVF9NRVNTQUdFX0lEX1NVRkZJWDtcbiAgICAgIHRoaXMuX3ZhbGlkTWVzc2FnZUlkID0gbUlkICsgREVGQVVMVF9WQUxJRF9NRVNTQUdFX0lEX1NVRkZJWDtcbiAgICAgIHRoaXMuX2ludmFsaWRNZXNzYWdlSWQgPSBtSWQgKyBERUZBVUxUX0lOVkFMSURfTUVTU0FHRV9JRF9TVUZGSVg7XG4gICAgICB0aGlzLl9kYXRhTGlzdElkID0gbUlkICsgREVGQVVMVF9EQVRBTElTVF9JRF9TVUZGSVg7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGNvbnN0IGVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgbnVsbCA9IHRoaXMuX3JlZj8ubmF0aXZlRWxlbWVudDtcbiAgICB0aGlzLmVuYWJsZUF0dHJpYnV0ZVBhc3NpbmcoZWxlbWVudCwgXCJkYi1pbnB1dFwiKTtcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50Q2hlY2tlZChjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09IFwidW5kZWZpbmVkXCIpIHtcbiAgICAgIGlmICh0aGlzLl9pZCkge1xuICAgICAgICBjb25zdCBtZXNzYWdlSWQgPSB0aGlzLl9pZCArIERFRkFVTFRfTUVTU0FHRV9JRF9TVUZGSVg7XG4gICAgICAgIHRoaXMuX21lc3NhZ2VJZCA9IG1lc3NhZ2VJZDtcbiAgICAgICAgdGhpcy5fdmFsaWRNZXNzYWdlSWQgPSB0aGlzLl9pZCArIERFRkFVTFRfVkFMSURfTUVTU0FHRV9JRF9TVUZGSVg7XG4gICAgICAgIHRoaXMuX2ludmFsaWRNZXNzYWdlSWQgPSB0aGlzLl9pZCArIERFRkFVTFRfSU5WQUxJRF9NRVNTQUdFX0lEX1NVRkZJWDtcbiAgICAgICAgdGhpcy5fZGF0YUxpc3RJZCA9XG4gICAgICAgICAgdGhpcy5kYXRhTGlzdElkID8/IHRoaXMuX2lkICsgREVGQVVMVF9EQVRBTElTVF9JRF9TVUZGSVg7XG4gICAgICAgIGlmIChzdHJpbmdQcm9wVmlzaWJsZSh0aGlzLm1lc3NhZ2UsIHRoaXMuc2hvd01lc3NhZ2UpKSB7XG4gICAgICAgICAgdGhpcy5fZGVzY0J5SWRzID0gbWVzc2FnZUlkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0aGlzLl92YWx1ZSA9IHRoaXMudmFsdWU7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
431
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9vdXRwdXQvYW5ndWxhci9zcmMvY29tcG9uZW50cy9pbnB1dC9pbnB1dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEVBQ1QsU0FBUyxFQUVULEtBQUssRUFFSSxNQUFNLGVBQWUsQ0FBQztBQUNqQyxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHekUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBSS9DLE9BQU8sRUFDTCxHQUFHLEVBQ0gsS0FBSyxFQUNMLFdBQVcsRUFDWCxZQUFZLEVBQ1osZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixJQUFJLEdBQ0wsTUFBTSxhQUFhLENBQUM7QUFFckIsT0FBTyxFQUNMLDBCQUEwQixFQUMxQix1QkFBdUIsRUFDdkIsaUNBQWlDLEVBQ2pDLGFBQWEsRUFDYix5QkFBeUIsRUFDekIsbUJBQW1CLEVBQ25CLHFCQUFxQixFQUNyQiwrQkFBK0IsR0FDaEMsTUFBTSx3QkFBd0IsQ0FBQztBQU9oQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUVMLDJCQUEyQixHQUM1QixNQUFNLDZCQUE2QixDQUFDOzs7QUFoQ3JDLE1BQU0sWUFBWSxHQUFHLEVBQUUsQ0FBQztBQStHeEIsTUFBTSxPQUFPLE9BQU87SUFDbEIsWUFBb0IsUUFBbUI7UUFBbkIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUN2QyxRQUFHLEdBQUcsR0FBRyxDQUFDO1FBQ1YsZ0JBQVcsR0FBRyxXQUFXLENBQUM7UUFDMUIsc0JBQWlCLEdBQUcsaUJBQWlCLENBQUM7UUFDdEMsNEJBQXVCLEdBQUcsdUJBQXVCLENBQUM7UUFDbEQsa0JBQWEsR0FBRyxhQUFhLENBQUM7UUFDOUIsd0JBQW1CLEdBQUcs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QU07c0JBQWYsTUFBTTtnQkFDRyxJQUFJO3NCQUFiLE1BQU07Z0JBQ0csT0FBTztzQkFBaEIsTUFBTTtnQkFDRyxLQUFLO3NCQUFkLE1BQU07Z0JBRVksSUFBSTtzQkFBdEIsU0FBUzt1QkFBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIENvbXBvbmVudCxcbiAgVmlld0NoaWxkLFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcblJlbmRlcmVyMiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cblxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuXG5jb25zdCBkZWZhdWx0UHJvcHMgPSB7fTtcblxuaW1wb3J0IHtcbiAgY2xzLFxuICBkZWxheSxcbiAgZ2V0SGlkZVByb3AsXG4gIGhhc1ZvaWNlT3ZlcixcbiAgaXNBcnJheU9mU3RyaW5ncyxcbiAgc3RyaW5nUHJvcFZpc2libGUsXG4gIHV1aWQsXG59IGZyb20gXCIuLi8uLi91dGlsc1wiO1xuaW1wb3J0IHsgREJJbnB1dFByb3BzLCBEQklucHV0U3RhdGUgfSBmcm9tIFwiLi9tb2RlbFwiO1xuaW1wb3J0IHtcbiAgREVGQVVMVF9EQVRBTElTVF9JRF9TVUZGSVgsXG4gIERFRkFVTFRfSU5WQUxJRF9NRVNTQUdFLFxuICBERUZBVUxUX0lOVkFMSURfTUVTU0FHRV9JRF9TVUZGSVgsXG4gIERFRkFVTFRfTEFCRUwsXG4gIERFRkFVTFRfTUVTU0FHRV9JRF9TVUZGSVgsXG4gIERFRkFVTFRfUExBQ0VIT0xERVIsXG4gIERFRkFVTFRfVkFMSURfTUVTU0FHRSxcbiAgREVGQVVMVF9WQUxJRF9NRVNTQUdFX0lEX1NVRkZJWCxcbn0gZnJvbSBcIi4uLy4uL3NoYXJlZC9jb25zdGFudHNcIjtcbmltcG9ydCB7XG4gIENoYW5nZUV2ZW50LFxuICBJbnB1dEV2ZW50LFxuICBJbnRlcmFjdGlvbkV2ZW50LFxuICBWYWx1ZUxhYmVsVHlwZSxcbn0gZnJvbSBcIi4uLy4uL3NoYXJlZC9tb2RlbFwiO1xuaW1wb3J0IHsgREJJbmZvdGV4dCB9IGZyb20gXCIuLi9pbmZvdGV4dC9pbmZvdGV4dFwiO1xuaW1wb3J0IHtcbiAgaGFuZGxlRnJhbWV3b3JrRXZlbnRWdWUsXG4gIGhhbmRsZUZyYW1ld29ya0V2ZW50QW5ndWxhcixcbn0gZnJvbSBcIi4uLy4uL3V0aWxzL2Zvcm0tY29tcG9uZW50c1wiO1xuXG5AQ29tcG9uZW50KHtcblx0XHRwcm92aWRlcnM6IFt7XG5cdFx0XHRwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcblx0XHRcdHVzZUV4aXN0aW5nOiBEQklucHV0LFxuXHRcdFx0bXVsdGk6IHRydWVcblx0XHR9XSxcdFxuICBzZWxlY3RvcjogXCJkYi1pbnB1dFwiLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXZcbiAgICAgIFtjbGFzc109XCJjbHMoJ2RiLWlucHV0JywgY2xhc3NOYW1lKVwiXG4gICAgICBbYXR0ci5kYXRhLXZhcmlhbnRdPVwidmFyaWFudFwiXG4gICAgICBbYXR0ci5kYXRhLWhpZGUtbGFiZWxdPVwiZ2V0SGlkZVByb3Aoc2hvd0xhYmVsKVwiXG4gICAgICBbYXR0ci5kYXRhLWhpZGUtaWNvbl09XCJnZXRIaWRlUHJvcChzaG93SWNvbilcIlxuICAgICAgW2F0dHIuZGF0YS1pY29uXT1cImljb25cIlxuICAgICAgW2F0dHIuZGF0YS1pY29uLWFmdGVyXT1cImljb25BZnRlclwiXG4gICAgICBbYXR0ci5kYXRhLWhpZGUtaWNvbi1hZnRlcl09XCJnZXRIaWRlUHJvcChzaG93SWNvbilcIlxuICAgID5cbiAgICAgIDxsYWJlbCBbYXR0ci5mb3JdPVwiX2lkXCI+e3tsYWJlbCA/PyBERUZBVUxUX0xBQkVMfX08L2xhYmVsPlxuICAgICAgPGlucHV0XG4gICAgICAgIFthdHRyLmFyaWEtaW52YWxpZF09XCJ2YWxpZGF0aW9uID09PSAnaW52YWxpZCdcIlxuICAgICAgICBbYXR0ci5kYXRhLWN1c3RvbS12YWxpZGl0eV09XCJ2YWxpZGF0aW9uXCJcbiAgICAgICAgI19yZWZcbiAgICAgICAgW2F0dHIuaWRdPVwiX2lkXCJcbiAgICAgICAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgICAgICAgW2F0dHIudHlwZV09XCJ0eXBlIHx8ICd0ZXh0J1wiXG4gICAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyID8/IERFRkFVTFRfUExBQ0VIT0xERVJcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgICBbYXR0ci5zdGVwXT1cInN0ZXBcIlxuICAgICAgICBbYXR0ci52YWx1ZV09XCJ2YWx1ZSA/PyBfdmFsdWVcIlxuICAgICAgICBbYXR0ci5tYXhMZW5ndGhdPVwibWF4TGVuZ3RoXCJcbiAgICAgICAgW2F0dHIubWluTGVuZ3RoXT1cIm1pbkxlbmd0aFwiXG4gICAgICAgIFthdHRyLm1heF09XCJtYXhcIlxuICAgICAgICBbYXR0ci5taW5dPVwibWluXCJcbiAgICAgICAgW2F0dHIucmVhZE9ubHldPVwicmVhZE9ubHlcIlxuICAgICAgICBbYXR0ci5mb3JtXT1cImZvcm1cIlxuICAgICAgICBbYXR0ci5wYXR0ZXJuXT1cInBhdHRlcm5cIlxuICAgICAgICBbYXR0ci5zaXplXT1cInNpemVcIlxuICAgICAgICBbYXR0ci5hdXRvQ29tcGxldGVdPVwiYXV0b2NvbXBsZXRlXCJcbiAgICAgICAgW2F0dHIuYXV0b0ZvY3VzXT1cImF1dG9mb2N1c1wiXG4gICAgICAgIChpbnB1dCk9XCJoYW5kbGVJbnB1dCgkZXZlbnQpXCJcbiAgICAgICAgKGNoYW5nZSk9XCJoYW5kbGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIChibHVyKT1cImhhbmRsZUJsdXIoJGV2ZW50KVwiXG4gICAgICAgIChmb2N1cyk9XCJoYW5kbGVGb2N1cygkZXZlbnQpXCJcbiAgICAgICAgW2F0dHIubGlzdF09XCJkYXRhTGlzdCAmJiBfZGF0YUxpc3RJZFwiXG4gICAgICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiX2Rlc2NCeUlkc1wiXG4gICAgICAvPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRhdGFMaXN0XCI+XG4gICAgICAgIDxkYXRhbGlzdCBbYXR0ci5pZF09XCJfZGF0YUxpc3RJZFwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgZ2V0RGF0YUxpc3QoZGF0YUxpc3QpOyB0cmFja0J5OiB0cmFja0J5T3B0aW9uMFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPG9wdGlvbiBbYXR0ci52YWx1ZV09XCJvcHRpb24udmFsdWVcIj57e29wdGlvbi5sYWJlbH19PC9vcHRpb24+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvZGF0YWxpc3Q+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdHJpbmdQcm9wVmlzaWJsZShtZXNzYWdlLCBzaG93TWVzc2FnZSlcIj5cbiAgICAgICAgPGRiLWluZm90ZXh0IHNpemU9XCJzbWFsbFwiIFtpY29uXT1cIm1lc3NhZ2VJY29uXCIgW2lkXT1cIl9tZXNzYWdlSWRcIj5cbiAgICAgICAgICB7e21lc3NhZ2V9fVxuICAgICAgICA8L2RiLWluZm90ZXh0PlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8ZGItaW5mb3RleHQgc2l6ZT1cInNtYWxsXCIgc2VtYW50aWM9XCJzdWNjZXNzZnVsXCIgW2lkXT1cIl92YWxpZE1lc3NhZ2VJZFwiPlxuICAgICAgICB7e3ZhbGlkTWVzc2FnZSA/PyBERUZBVUxUX1ZBTElEX01FU1NBR0V9fVxuICAgICAgPC9kYi1pbmZvdGV4dD5cbiAgICAgIDxkYi1pbmZvdGV4dCBzaXplPVwic21hbGxcIiBzZW1hbnRpYz1cImNyaXRpY2FsXCIgW2lkXT1cIl9pbnZhbGlkTWVzc2FnZUlkXCI+XG4gICAgICAgIHt7aW52YWxpZE1lc3NhZ2UgPz8gdGhpcy5fcmVmPy52YWxpZGF0aW9uTWVzc2FnZSA/P1xuICAgICAgICAgICAgREVGQVVMVF9JTlZBTElEX01FU1NBR0V9fVxuICAgICAgPC9kYi1pbmZvdGV4dD5cbiAgICAgIDxzcGFuIGRhdGEtdmlzdWFsbHktaGlkZGVuPVwidHJ1ZVwiIHJvbGU9XCJzdGF0dXNcIj5cbiAgICAgICAge3tfdm9pY2VPdmVyRmFsbGJhY2t9fVxuICAgICAgPC9zcGFuPlxuICAgIDwvZGl2PlxuICBgLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBEQkluZm90ZXh0XSxcbn0pXG5leHBvcnQgY2xhc3MgREJJbnB1dCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcblx0XHRjb25zdHJ1Y3Rvcihwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHsgfVxuICBjbHMgPSBjbHM7XG4gIGdldEhpZGVQcm9wID0gZ2V0SGlkZVByb3A7XG4gIHN0cmluZ1Byb3BWaXNpYmxlID0gc3RyaW5nUHJvcFZpc2libGU7XG4gIERFRkFVTFRfSU5WQUxJRF9NRVNTQUdFID0gREVGQVVMVF9JTlZBTElEX01FU1NBR0U7XG4gIERFRkFVTFRfTEFCRUwgPSBERUZBVUxUX0xBQkVMO1xuICBERUZBVUxUX1BMQUNFSE9MREVSID0gREVGQVVMVF9QTEFDRUhPTERFUjtcbiAgREVGQVVMVF9WQUxJRF9NRVNTQUdFID0gREVGQVVMVF9WQUxJRF9NRVNTQUdFO1xuXG4gIEBJbnB1dCgpIGlkITogREJJbnB1dFByb3BzW1wiaWRcIl07XG4gIEBJbnB1dCgpIGRhdGFMaXN0SWQhOiBEQklucHV0UHJvcHNbXCJkYXRhTGlzdElkXCJdO1xuICBASW5wdXQoKSBtZXNzYWdlITogREJJbnB1dFByb3BzW1wibWVzc2FnZVwiXTtcbiAgQElucHV0KCkgc2hvd01lc3NhZ2UhOiBEQklucHV0UHJvcHNbXCJzaG93TWVzc2FnZVwiXTtcbiAgQElucHV0KCkgdmFsdWUhOiBEQklucHV0UHJvcHNbXCJ2YWx1ZVwiXTtcbiAgQElucHV0KCkgdmFsaWRhdGlvbiE6IERCSW5wdXRQcm9wc1tcInZhbGlkYXRpb25cIl07XG4gIEBJbnB1dCgpIGludmFsaWRNZXNzYWdlITogREJJbnB1dFByb3BzW1wiaW52YWxpZE1lc3NhZ2VcIl07XG4gIEBJbnB1dCgpIHJlcXVpcmVkITogREJJbnB1dFByb3BzW1wicmVxdWlyZWRcIl07XG4gIEBJbnB1dCgpIG1pbkxlbmd0aCE6IERCSW5wdXRQcm9wc1tcIm1pbkxlbmd0aFwiXTtcbiAgQElucHV0KCkgbWF4TGVuZ3RoITogREJJbnB1dFByb3BzW1wibWF4TGVuZ3RoXCJdO1xuICBASW5wdXQoKSBwYXR0ZXJuITogREJJbnB1dFByb3BzW1wicGF0dGVyblwiXTtcbiAgQElucHV0KCkgdmFsaWRNZXNzYWdlITogREJJbnB1dFByb3BzW1widmFsaWRNZXNzYWdlXCJdO1xuICBASW5wdXQoKSBjbGFzc05hbWUhOiBEQklucHV0UHJvcHNbXCJjbGFzc05hbWVcIl07XG4gIEBJbnB1dCgpIHZhcmlhbnQhOiBEQklucHV0UHJvcHNbXCJ2YXJpYW50XCJdO1xuICBASW5wdXQoKSBzaG93TGFiZWwhOiBEQklucHV0UHJvcHNbXCJzaG93TGFiZWxcIl07XG4gIEBJbnB1dCgpIHNob3dJY29uITogREJJbnB1dFByb3BzW1wic2hvd0ljb25cIl07XG4gIEBJbnB1dCgpIGljb24hOiBEQklucHV0UHJvcHNbXCJpY29uXCJdO1xuICBASW5wdXQoKSBpY29uQWZ0ZXIhOiBEQklucHV0UHJvcHNbXCJpY29uQWZ0ZXJcIl07XG4gIEBJbnB1dCgpIGxhYmVsITogREJJbnB1dFByb3BzW1wibGFiZWxcIl07XG4gIEBJbnB1dCgpIG5hbWUhOiBEQklucHV0UHJvcHNbXCJuYW1lXCJdO1xuICBASW5wdXQoKSB0eXBlITogREJJbnB1dFByb3BzW1widHlwZVwiXTtcbiAgQElucHV0KCkgcGxhY2Vob2xkZXIhOiBEQklucHV0UHJvcHNbXCJwbGFjZWhvbGRlclwiXTtcbiAgQElucHV0KCkgZGlzYWJsZWQhOiBEQklucHV0UHJvcHNbXCJkaXNhYmxlZFwiXTtcbiAgQElucHV0KCkgc3RlcCE6IERCSW5wdXRQcm9wc1tcInN0ZXBcIl07XG4gIEBJbnB1dCgpIG1heCE6IERCSW5wdXRQcm9wc1tcIm1heFwiXTtcbiAgQElucHV0KCkgbWluITogREJJbnB1dFByb3BzW1wibWluXCJdO1xuICBASW5wdXQoKSByZWFkT25seSE6IERCSW5wdXRQcm9wc1tcInJlYWRPbmx5XCJdO1xuICBASW5wdXQoKSBmb3JtITogREJJbnB1dFByb3BzW1wiZm9ybVwiXTtcbiAgQElucHV0KCkgc2l6ZSE6IERCSW5wdXRQcm9wc1tcInNpemVcIl07XG4gIEBJbnB1dCgpIGF1dG9jb21wbGV0ZSE6IERCSW5wdXRQcm9wc1tcImF1dG9jb21wbGV0ZVwiXTtcbiAgQElucHV0KCkgYXV0b2ZvY3VzITogREJJbnB1dFByb3BzW1wiYXV0b2ZvY3VzXCJdO1xuICBASW5wdXQoKSBkYXRhTGlzdCE6IERCSW5wdXRQcm9wc1tcImRhdGFMaXN0XCJdO1xuICBASW5wdXQoKSBtZXNzYWdlSWNvbiE6IERCSW5wdXRQcm9wc1tcIm1lc3NhZ2VJY29uXCJdO1xuXG4gIEBPdXRwdXQoKSBvbklucHV0ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgaW5wdXQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBvbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIG9uQmx1ciA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGJsdXIgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBvbkZvY3VzID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgZm9jdXMgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQFZpZXdDaGlsZChcIl9yZWZcIikgX3JlZiE6IEVsZW1lbnRSZWYgfCB1bmRlZmluZWQ7XG5cbiAgX2lkOiBEQklucHV0U3RhdGVbXCJfaWRcIl0gPSB1bmRlZmluZWQ7XG4gIF9tZXNzYWdlSWQ6IERCSW5wdXRTdGF0ZVtcIl9tZXNzYWdlSWRcIl0gPSB1bmRlZmluZWQ7XG4gIF92YWxpZE1lc3NhZ2VJZDogREJJbnB1dFN0YXRlW1wiX3ZhbGlkTWVzc2FnZUlkXCJdID0gdW5kZWZpbmVkO1xuICBfaW52YWxpZE1lc3NhZ2VJZDogREJJbnB1dFN0YXRlW1wiX2ludmFsaWRNZXNzYWdlSWRcIl0gPSB1bmRlZmluZWQ7XG4gIF9kYXRhTGlzdElkOiBEQklucHV0U3RhdGVbXCJfZGF0YUxpc3RJZFwiXSA9IHVuZGVmaW5lZDtcbiAgX2Rlc2NCeUlkczogREJJbnB1dFN0YXRlW1wiX2Rlc2NCeUlkc1wiXSA9IFwiXCI7XG4gIF92YWx1ZTogREJJbnB1dFN0YXRlW1wiX3ZhbHVlXCJdID0gXCJcIjtcbiAgX3ZvaWNlT3ZlckZhbGxiYWNrOiBEQklucHV0U3RhdGVbXCJfdm9pY2VPdmVyRmFsbGJhY2tcIl0gPSBcIlwiO1xuICBoYW5kbGVJbnB1dChcbiAgICBldmVudDogSW5wdXRFdmVudDxIVE1MSW5wdXRFbGVtZW50PlxuICApOiBSZXR1cm5UeXBlPERCSW5wdXRTdGF0ZVtcImhhbmRsZUlucHV0XCJdPiB7XG4gICAgaWYgKHRoaXMub25JbnB1dCkge1xuICAgICAgdGhpcy5vbklucHV0LmVtaXQoZXZlbnQpO1xuICAgIH1cbiAgICBpZiAodGhpcy5pbnB1dCkge1xuICAgICAgdGhpcy5pbnB1dC5lbWl0KGV2ZW50KTtcbiAgICB9XG4gIH1cbiAgaGFuZGxlQ2hhbmdlKFxuICAgIGV2ZW50OiBDaGFuZ2VFdmVudDxIVE1MSW5wdXRFbGVtZW50PlxuICApOiBSZXR1cm5UeXBlPERCSW5wdXRTdGF0ZVtcImhhbmRsZUNoYW5nZVwiXT4ge1xuICAgIGlmICh0aGlzLm9uQ2hhbmdlKSB7XG4gICAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoZXZlbnQpO1xuICAgIH1cbiAgICBpZiAodGhpcy5jaGFuZ2UpIHtcbiAgICAgIHRoaXMuY2hhbmdlLmVtaXQoZXZlbnQpO1xuICAgIH1cbiAgICBoYW5kbGVGcmFtZXdvcmtFdmVudEFuZ3VsYXIodGhpcywgZXZlbnQpO1xuXG4gICAgLyogRm9yIGExMXkgcmVhc29ucyB3ZSBuZWVkIHRvIG1hcCB0aGUgY29ycmVjdCBtZXNzYWdlIHdpdGggdGhlIGlucHV0ICovXG4gICAgaWYgKFxuICAgICAgIXRoaXMuX3JlZj8ubmF0aXZlRWxlbWVudD8udmFsaWRpdHkudmFsaWQgfHxcbiAgICAgIHRoaXMudmFsaWRhdGlvbiA9PT0gXCJpbnZhbGlkXCJcbiAgICApIHtcbiAgICAgIHRoaXMuX2Rlc2NCeUlkcyA9IHRoaXMuX2ludmFsaWRNZXNzYWdlSWQ7XG4gICAgICBpZiAoaGFzVm9pY2VPdmVyKCkpIHtcbiAgICAgICAgdGhpcy5fdm9pY2VPdmVyRmFsbGJhY2sgPVxuICAgICAgICAgIHRoaXMuaW52YWxpZE1lc3NhZ2UgPz9cbiAgICAgICAgICB0aGlzLl9yZWY/Lm5hdGl2ZUVsZW1lbnQ/LnZhbGlkYXRpb25NZXNzYWdlID8/XG4gICAgICAgICAgREVGQVVMVF9JTlZBTElEX01FU1NBR0U7XG4gICAgICAgIGRlbGF5KCgpID0+ICh0aGlzLl92b2ljZU92ZXJGYWxsYmFjayA9IFwiXCIpLCAxMDAwKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKFxuICAgICAgdGhpcy52YWxpZGF0aW9uID09PSBcInZhbGlkXCIgfHxcbiAgICAgICh0aGlzLl9yZWY/Lm5hdGl2ZUVsZW1lbnQ/LnZhbGlkaXR5LnZhbGlkICYmXG4gICAgICAgICh0aGlzLnJlcXVpcmVkIHx8IHRoaXMubWluTGVuZ3RoIHx8IHRoaXMubWF4TGVuZ3RoIHx8IHRoaXMucGF0dGVybikpXG4gICAgKSB7XG4gICAgICB0aGlzLl9kZXNjQnlJZHMgPSB0aGlzLl92YWxpZE1lc3NhZ2VJZDtcbiAgICAgIGlmIChoYXNWb2ljZU92ZXIoKSkge1xuICAgICAgICB0aGlzLl92b2ljZU92ZXJGYWxsYmFjayA9IHRoaXMudmFsaWRNZXNzYWdlID8/IERFRkFVTFRfVkFMSURfTUVTU0FHRTtcbiAgICAgICAgZGVsYXkoKCkgPT4gKHRoaXMuX3ZvaWNlT3ZlckZhbGxiYWNrID0gXCJcIiksIDEwMDApO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAoc3RyaW5nUHJvcFZpc2libGUodGhpcy5tZXNzYWdlLCB0aGlzLnNob3dNZXNzYWdlKSkge1xuICAgICAgdGhpcy5fZGVzY0J5SWRzID0gdGhpcy5fbWVzc2FnZUlkO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLl9kZXNjQnlJZHMgPSBcIlwiO1xuICAgIH1cbiAgfVxuICBoYW5kbGVCbHVyKFxuICAgIGV2ZW50OiBJbnRlcmFjdGlvbkV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+XG4gICk6IFJldHVyblR5cGU8REJJbnB1dFN0YXRlW1wiaGFuZGxlQmx1clwiXT4ge1xuICAgIGlmICh0aGlzLm9uQmx1cikge1xuICAgICAgdGhpcy5vbkJsdXIuZW1pdChldmVudCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmJsdXIpIHtcbiAgICAgIHRoaXMuYmx1ci5lbWl0KGV2ZW50KTtcbiAgICB9XG4gIH1cbiAgaGFuZGxlRm9jdXMoXG4gICAgZXZlbnQ6IEludGVyYWN0aW9uRXZlbnQ8SFRNTElucHV0RWxlbWVudD5cbiAgKTogUmV0dXJuVHlwZTxEQklucHV0U3RhdGVbXCJoYW5kbGVGb2N1c1wiXT4ge1xuICAgIGlmICh0aGlzLm9uRm9jdXMpIHtcbiAgICAgIHRoaXMub25Gb2N1cy5lbWl0KGV2ZW50KTtcbiAgICB9XG4gICAgaWYgKHRoaXMuZm9jdXMpIHtcbiAgICAgIHRoaXMuZm9jdXMuZW1pdChldmVudCk7XG4gICAgfVxuICB9XG4gIGdldERhdGFMaXN0KFxuICAgIF9saXN0Pzogc3RyaW5nW10gfCBWYWx1ZUxhYmVsVHlwZVtdXG4gICk6IFJldHVyblR5cGU8REJJbnB1dFN0YXRlW1wiZ2V0RGF0YUxpc3RcIl0+IHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbShcbiAgICAgIChpc0FycmF5T2ZTdHJpbmdzKF9saXN0KVxuICAgICAgICA/IF9saXN0Lm1hcCgodmFsOiBzdHJpbmcpID0+ICh7XG4gICAgICAgICAgICB2YWx1ZTogdmFsLFxuICAgICAgICAgICAgbGFiZWw6IHVuZGVmaW5lZCxcbiAgICAgICAgICB9KSlcbiAgICAgICAgOiBfbGlzdCkgfHwgW11cbiAgICApO1xuICB9XG4gIHRyYWNrQnlPcHRpb24wKF8sIG9wdGlvbikge1xuICAgIHJldHVybiB0aGlzLl9kYXRhTGlzdElkICsgXCItb3B0aW9uLVwiICsgb3B0aW9uLnZhbHVlO1xuICB9XG5cbiAgLyoqXG4gICAqIFBhc3NlcyBgYXJpYS0qYCwgYGRhdGEtKmAgJiBgY2xhc3NgIGF0dHJpYnV0ZXMgdG8gY29ycmVjdCBjaGlsZC4gVXNlZCBpbiBhbmd1bGFyIGFuZCBzdGVuY2lsLlxuICAgKiBAcGFyYW0gZWxlbWVudCAgdGhlIHJlZiBmb3IgdGhlIGNvbXBvbmVudFxuICAgKiBAcGFyYW0gY3VzdG9tRWxlbWVudFNlbGVjdG9yICB0aGUgY3VzdG9tIGVsZW1lbnQgbGlrZSBgbXktY29tcG9uZW50YFxuICAgKi9cbiAgcHJpdmF0ZSBlbmFibGVBdHRyaWJ1dGVQYXNzaW5nKFxuICAgIGVsZW1lbnQ6IEhUTUxFbGVtZW50IHwgbnVsbCxcbiAgICBjdXN0b21FbGVtZW50U2VsZWN0b3I6IHN0cmluZ1xuICApIHtcbiAgICBjb25zdCBwYXJlbnQgPSBlbGVtZW50Py5jbG9zZXN0KGN1c3RvbUVsZW1lbnRTZWxlY3Rvcik7XG4gICAgaWYgKGVsZW1lbnQgJiYgcGFyZW50KSB7XG4gICAgICBjb25zdCBhdHRyaWJ1dGVzID0gcGFyZW50LmF0dHJpYnV0ZXM7XG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGF0dHJpYnV0ZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgY29uc3QgYXR0ciA9IGF0dHJpYnV0ZXMuaXRlbShpKTtcbiAgICAgICAgaWYgKFxuICAgICAgICAgIGF0dHIgJiZcbiAgICAgICAgICAoYXR0ci5uYW1lLnN0YXJ0c1dpdGgoXCJkYXRhLVwiKSB8fCBhdHRyLm5hbWUuc3RhcnRzV2l0aChcImFyaWEtXCIpKVxuICAgICAgICApIHtcbiAgICAgICAgICBlbGVtZW50LnNldEF0dHJpYnV0ZShhdHRyLm5hbWUsIGF0dHIudmFsdWUpO1xuICAgICAgICAgIHBhcmVudC5yZW1vdmVBdHRyaWJ1dGUoYXR0ci5uYW1lKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoYXR0ciAmJiBhdHRyLm5hbWUgPT09IFwiY2xhc3NcIikge1xuICAgICAgICAgIGNvbnN0IGlzV2ViQ29tcG9uZW50ID0gYXR0ci52YWx1ZS5pbmNsdWRlcyhcImh5ZHJhdGVkXCIpO1xuICAgICAgICAgIGNvbnN0IHZhbHVlID0gYXR0ci52YWx1ZS5yZXBsYWNlKFwiaHlkcmF0ZWRcIiwgXCJcIikudHJpbSgpO1xuICAgICAgICAgIGNvbnN0IGN1cnJlbnRDbGFzcyA9IGVsZW1lbnQuZ2V0QXR0cmlidXRlKFwiY2xhc3NcIik7XG4gICAgICAgICAgZWxlbWVudC5zZXRBdHRyaWJ1dGUoXG4gICAgICAgICAgICBhdHRyLm5hbWUsXG4gICAgICAgICAgICBgJHtjdXJyZW50Q2xhc3MgPyBgJHtjdXJyZW50Q2xhc3N9IGAgOiBcIlwifSR7dmFsdWV9YFxuICAgICAgICAgICk7XG4gICAgICAgICAgaWYgKGlzV2ViQ29tcG9uZW50KSB7XG4gICAgICAgICAgICAvLyBTdGVuY2lsIGlzIHVzaW5nIHRoaXMgY2xhc3MgZm9yIGxhenkgbG9hZGluZyBjb21wb25lbnRcbiAgICAgICAgICAgIHBhcmVudC5zZXRBdHRyaWJ1dGUoXCJjbGFzc1wiLCBcImh5ZHJhdGVkXCIpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwYXJlbnQucmVtb3ZlQXR0cmlidXRlKGF0dHIubmFtZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgXG5cdFx0d3JpdGVWYWx1ZSh2YWx1ZTogYW55KSB7XG5pZiAoIXZhbHVlICYmICh0aGlzLnR5cGUgPT09IFwiZGF0ZVwiIHx8XG5cdFx0XHR0aGlzLnR5cGUgPT09IFwidGltZVwiIHx8XG5cdFx0XHR0aGlzLnR5cGUgPT09IFwid2Vla1wiIHx8XG5cdFx0XHR0aGlzLnR5cGUgPT09IFwibW9udGhcIiB8fFxuXHRcdFx0dGhpcy50eXBlID09PSBcImRhdGV0aW1lLWxvY2FsXCJcblx0XHRcdCkpIHJldHVybjtcblx0XHRcdFxuXHRcdCAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuXG5cdFx0ICBpZiAodGhpcy5fcmVmPy5uYXRpdmVFbGVtZW50KSB7XG5cdFx0XHQgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLl9yZWY/Lm5hdGl2ZUVsZW1lbnQsICd2YWx1ZScsIHZhbHVlKTtcblx0XHQgIH1cblx0XHRcdFxuXHRcdH1cblxuXHRcdHByb3BhZ2F0ZUNoYW5nZShfOiBhbnkpIHt9XG5cblx0XHRyZWdpc3Rlck9uQ2hhbmdlKG9uQ2hhbmdlOiBhbnkpIHtcblx0XHQgIHRoaXMucHJvcGFnYXRlQ2hhbmdlID0gb25DaGFuZ2U7XG5cdFx0fVxuXG5cdFx0cmVnaXN0ZXJPblRvdWNoZWQob25Ub3VjaGVkOiBhbnkpIHtcblx0XHQgLy90aGlzLm9uVG91Y2hlZCA9IG9uVG91Y2hlZDtcblx0XHR9XG5cblx0XHRzZXREaXNhYmxlZFN0YXRlKGRpc2FibGVkOiBib29sZWFuKSB7XG5cdFx0ICB0aGlzLmRpc2FibGVkID0gZGlzYWJsZWQ7XG5cdFx0fVxuXG5cdFx0bmdPbkluaXQoKSB7XG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09IFwidW5kZWZpbmVkXCIpIHtcbiAgICAgIGNvbnN0IG1JZCA9IHRoaXMuaWQgPz8gYGlucHV0LSR7dXVpZCgpfWA7XG4gICAgICB0aGlzLl9pZCA9IG1JZDtcbiAgICAgIHRoaXMuX21lc3NhZ2VJZCA9IG1JZCArIERFRkFVTFRfTUVTU0FHRV9JRF9TVUZGSVg7XG4gICAgICB0aGlzLl92YWxpZE1lc3NhZ2VJZCA9IG1JZCArIERFRkFVTFRfVkFMSURfTUVTU0FHRV9JRF9TVUZGSVg7XG4gICAgICB0aGlzLl9pbnZhbGlkTWVzc2FnZUlkID0gbUlkICsgREVGQVVMVF9JTlZBTElEX01FU1NBR0VfSURfU1VGRklYO1xuICAgICAgdGhpcy5fZGF0YUxpc3RJZCA9IG1JZCArIERFRkFVTFRfREFUQUxJU1RfSURfU1VGRklYO1xuICAgIH1cbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBjb25zdCBlbGVtZW50OiBIVE1MRWxlbWVudCB8IG51bGwgPSB0aGlzLl9yZWY/Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgdGhpcy5lbmFibGVBdHRyaWJ1dGVQYXNzaW5nKGVsZW1lbnQsIFwiZGItaW5wdXRcIik7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudENoZWNrZWQoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSBcInVuZGVmaW5lZFwiKSB7XG4gICAgICBpZiAodGhpcy5faWQpIHtcbiAgICAgICAgY29uc3QgbWVzc2FnZUlkID0gdGhpcy5faWQgKyBERUZBVUxUX01FU1NBR0VfSURfU1VGRklYO1xuICAgICAgICB0aGlzLl9tZXNzYWdlSWQgPSBtZXNzYWdlSWQ7XG4gICAgICAgIHRoaXMuX3ZhbGlkTWVzc2FnZUlkID0gdGhpcy5faWQgKyBERUZBVUxUX1ZBTElEX01FU1NBR0VfSURfU1VGRklYO1xuICAgICAgICB0aGlzLl9pbnZhbGlkTWVzc2FnZUlkID0gdGhpcy5faWQgKyBERUZBVUxUX0lOVkFMSURfTUVTU0FHRV9JRF9TVUZGSVg7XG4gICAgICAgIHRoaXMuX2RhdGFMaXN0SWQgPVxuICAgICAgICAgIHRoaXMuZGF0YUxpc3RJZCA/PyB0aGlzLl9pZCArIERFRkFVTFRfREFUQUxJU1RfSURfU1VGRklYO1xuICAgICAgICBpZiAoc3RyaW5nUHJvcFZpc2libGUodGhpcy5tZXNzYWdlLCB0aGlzLnNob3dNZXNzYWdlKSkge1xuICAgICAgICAgIHRoaXMuX2Rlc2NCeUlkcyA9IG1lc3NhZ2VJZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGhpcy5fdmFsdWUgPSB0aGlzLnZhbHVlO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9vdXRwdXQvYW5ndWxhci9zcmMvY29tcG9uZW50cy9uYXZpZ2F0aW9uLWl0ZW0vbW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENsaWNrRXZlbnQsIENsaWNrRXZlbnRQcm9wcywgQ2xpY2tFdmVudFN0YXRlLCBHbG9iYWxQcm9wcywgR2xvYmFsU3RhdGUsIEljb25Qcm9wcywgSW5pdGlhbGl6ZWRTdGF0ZSwgTmF2aWdhdGlvbkJhY2tCdXR0b25Qcm9wcywgTmF2aWdhdGlvbkJlaGF2aW9yU3RhdGUsIFNob3dJY29uUHJvcHMsIFRleHRQcm9wcywgV2lkdGhQcm9wcyB9IGZyb20gJy4uLy4uL3NoYXJlZC9tb2RlbCc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uSXRlbVNhZmVUcmlhbmdsZSB9IGZyb20gJy4uLy4uL3V0aWxzL25hdmlnYXRpb24nO1xuZXhwb3J0IHR5cGUgREJOYXZpZ2F0aW9uSXRlbURlZmF1bHRQcm9wcyA9IHtcbiAgLyoqXG4gICAqIEFsdGVybmF0aXZlIGluZGljYXRvciBmb3IgYWN0aXZlIG5hdmlnYXRpb24gaXRlbSAoYm9sZCBmb250KS4gSW4gY29udHJhc3QgdG8gdGhlIHVzZSBvZiBhcmlhLWN1cnJlbnQ9XCJwYWdlXCIgb24gdGhlIGNvbnRhaW5lZCBhbmNob3IsIHRoaXMgZG9lcyBub3QgZ3VhcmFudGVlIGNvcnJlY3QgYTExeS5cbiAgICovXG4gIGFjdGl2ZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBkaXNhYmxlZCBhdHRyaWJ1dGUgY2FuIGJlIHNldCB0byBba2VlcCBhIHVzZXIgZnJvbSBjbGlja2luZyBvbiB0aGUgaXRlbV0oaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSFRNTC9FbGVtZW50L2J1dHRvbiNkaXNhYmxlZCkuXG4gICAqL1xuICBkaXNhYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFJlYWN0LXNwZWNpZmljIHByb3BlcnR5IHRvIHBhc3MgaW4gYSBzbG90IGZvciBzdWItbmF2aWdhdGlvblxuICAgKi9cbiAgc3ViTmF2aWdhdGlvbj86IGFueTtcblxuICAvKipcbiAgICogVGhpcyBpcyBmb3IgbW9iaWxlIG5hdmlnYXRpb24gb25seSwgaWYgaXQgaXMgc2V0IHRoZSBzdWItbmF2aWdhdGlvbiBpcyBhIHN0YXRpYyBvdmVybGF5XG4gICAqL1xuICBzdWJOYXZpZ2F0aW9uRXhwYW5kZWQ/OiBib29sZWFuO1xufTtcbmV4cG9ydCB0eXBlIERCTmF2aWdhdGlvbkl0ZW1Qcm9wcyA9IERCTmF2aWdhdGlvbkl0ZW1EZWZhdWx0UHJvcHMgJiBHbG9iYWxQcm9wcyAmIENsaWNrRXZlbnRQcm9wczxIVE1MQnV0dG9uRWxlbWVudD4gJiBJY29uUHJvcHMgJiBXaWR0aFByb3BzICYgTmF2aWdhdGlvbkJhY2tCdXR0b25Qcm9wcyAmIFNob3dJY29uUHJvcHMgJiBUZXh0UHJvcHM7XG5leHBvcnQgdHlwZSBEQk5hdmlnYXRpb25JdGVtRGVmYXVsdFN0YXRlID0ge1xuICBoYW5kbGVCYWNrQ2xpY2s6IChldmVudDogQ2xpY2tFdmVudDxIVE1MQnV0dG9uRWxlbWVudD4pID0+IHZvaWQ7XG4gIGhhc0FyZWFQb3B1cDogYm9vbGVhbjtcbiAgaXNTdWJOYXZpZ2F0aW9uRXhwYW5kZWQ6IGJvb2xlYW47XG4gIHN1Yk5hdmlnYXRpb25JZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJbnRlcm5hbCBzdGF0ZSBwcm9wZXJ0eSB0byBzaG93L2hpZGUgc3ViLW5hdmlnYXRpb24gYnV0dG9uXG4gICAqL1xuICBoYXNTdWJOYXZpZ2F0aW9uPzogYm9vbGVhbjtcbiAgdXBkYXRlU3ViTmF2aWdhdGlvblN0YXRlOiAoKSA9PiB2b2lkO1xuICBuYXZpZ2F0aW9uSXRlbVNhZmVUcmlhbmdsZT86IE5hdmlnYXRpb25JdGVtU2FmZVRyaWFuZ2xlO1xuICBhdXRvQ2xvc2U/OiBib29sZWFuO1xufTtcbmV4cG9ydCB0eXBlIERCTmF2aWdhdGlvbkl0ZW1TdGF0ZSA9IERCTmF2aWdhdGlvbkl0ZW1EZWZhdWx0U3RhdGUgJiBDbGlja0V2ZW50U3RhdGU8SFRNTEJ1dHRvbkVsZW1lbnQ+ICYgR2xvYmFsU3RhdGUgJiBJbml0aWFsaXplZFN0YXRlICYgTmF2aWdhdGlvbkJlaGF2aW9yU3RhdGUiXX0=
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Output, EventEmitter, Component, ViewChild, Input, ContentChild, TemplateRef } from "@angular/core";
|
|
2
2
|
import { CommonModule } from "@angular/common";
|
|
3
3
|
import { DBButton } from "../button/button";
|
|
4
|
-
import { cls, getBooleanAsString, getHideProp, uuid } from "../../utils";
|
|
5
|
-
import { NavigationItemSafeTriangle } from "../../utils/navigation";
|
|
4
|
+
import { cls, delay, getBooleanAsString, getHideProp, uuid } from "../../utils";
|
|
5
|
+
import { isEventTargetNavigationItem, NavigationItemSafeTriangle, } from "../../utils/navigation";
|
|
6
6
|
import { DEFAULT_BACK } from "../../shared/constants";
|
|
7
7
|
import { NavigationContentDirective } from './NavigationContent.directive';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
@@ -19,9 +19,18 @@ export class DBNavigationItem {
|
|
|
19
19
|
this.hasAreaPopup = false;
|
|
20
20
|
this.hasSubNavigation = true;
|
|
21
21
|
this.isSubNavigationExpanded = false;
|
|
22
|
+
this.autoClose = false;
|
|
22
23
|
this.subNavigationId = "sub-navigation-" + uuid();
|
|
23
24
|
this.navigationItemSafeTriangle = undefined;
|
|
24
25
|
}
|
|
26
|
+
handleNavigationItemClick(event) {
|
|
27
|
+
if (isEventTargetNavigationItem(event)) {
|
|
28
|
+
this.autoClose = true;
|
|
29
|
+
delay(() => {
|
|
30
|
+
this.autoClose = false;
|
|
31
|
+
}, 300);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
25
34
|
handleClick(event) {
|
|
26
35
|
if (this.onClick) {
|
|
27
36
|
this.onClick.emit(event);
|
|
@@ -129,7 +138,12 @@ export class DBNavigationItem {
|
|
|
129
138
|
<ng-container *ngIf="text">{{text}}</ng-container>
|
|
130
139
|
<ng-container *ngIf="!(text)"><ng-content *ngTemplateOutlet="dbNavigationContent"></ng-content></ng-container>
|
|
131
140
|
</button>
|
|
132
|
-
<menu
|
|
141
|
+
<menu
|
|
142
|
+
class="db-sub-navigation"
|
|
143
|
+
[attr.data-auto-close]="autoClose"
|
|
144
|
+
[attr.id]="subNavigationId"
|
|
145
|
+
(click)="handleNavigationItemClick($event)"
|
|
146
|
+
>
|
|
133
147
|
<ng-container *ngIf="hasAreaPopup">
|
|
134
148
|
<div class="db-mobile-navigation-back">
|
|
135
149
|
<db-button
|
|
@@ -181,7 +195,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
181
195
|
<ng-container *ngIf="text">{{text}}</ng-container>
|
|
182
196
|
<ng-container *ngIf="!(text)"><ng-content *ngTemplateOutlet="dbNavigationContent"></ng-content></ng-container>
|
|
183
197
|
</button>
|
|
184
|
-
<menu
|
|
198
|
+
<menu
|
|
199
|
+
class="db-sub-navigation"
|
|
200
|
+
[attr.data-auto-close]="autoClose"
|
|
201
|
+
[attr.id]="subNavigationId"
|
|
202
|
+
(click)="handleNavigationItemClick($event)"
|
|
203
|
+
>
|
|
185
204
|
<ng-container *ngIf="hasAreaPopup">
|
|
186
205
|
<div class="db-mobile-navigation-back">
|
|
187
206
|
<db-button
|
|
@@ -233,4 +252,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
233
252
|
type: ViewChild,
|
|
234
253
|
args: ["_ref"]
|
|
235
254
|
}] } });
|
|
236
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi1pdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vb3V0cHV0L2FuZ3VsYXIvc3JjL2NvbXBvbmVudHMvbmF2aWdhdGlvbi1pdGVtL25hdmlnYXRpb24taXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEVBQ1QsU0FBUyxFQUVULEtBQUssRUFFUCxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU8sZUFBZSxDQUFDO0FBRWxELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUsvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDNUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3pFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUd0RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7O0FBVDNFLE1BQU0sWUFBWSxHQUFHLEVBQUUsQ0FBQztBQStEeEIsTUFBTSxPQUFPLGdCQUFnQjtJQXBEN0I7UUFzREUsUUFBRyxHQUFHLEdBQUcsQ0FBQztRQUNWLHVCQUFrQixHQUFHLGtCQUFrQixDQUFDO1FBQ3hDLGdCQUFXLEdBQUcsV0FBVyxDQUFDO1FBQzFCLGlCQUFZLEdBQUcsWUFBWSxDQUFDO1FBZWxCLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBSXZDLGdCQUFXLEdBQXlDLEtBQUssQ0FBQztRQUMxRCxpQkFBWSxHQUEwQyxLQUFLLENBQUM7UUFDNUQscUJBQWdCLEdBQThDLElBQUksQ0FBQztRQUNuRSw0QkFBdUIsR0FDckIsS0FBSyxDQUFDO1FBQ1Isb0JBQWUs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QThDVCwyREFFUyxZQUFZLDBTQUFFLFFBQVE7OzRGQUVyQixnQkFBZ0I7a0JBcEQ1QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQThDVDtvQkFDRCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQztpQkFDbEM7OEJBRWlFLG1CQUFtQjtzQkFBbkYsWUFBWTt1QkFBQywwQkFBMEIsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUU7Z0JBTzlELHFCQUFxQjtzQkFEcEIsS0FBSztnQkFFRyxFQUFFO3NCQUFWLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFFSSxPQUFPO3NCQUFoQixNQUFNO2dCQUVZLElBQUk7c0JBQXRCLFNBQVM7dUJBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIE91dHB1dCxcbiAgRXZlbnRFbWl0dGVyLFxuICBDb21wb25lbnQsXG4gIFZpZXdDaGlsZCxcbiAgRWxlbWVudFJlZixcbiAgSW5wdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG5Db250ZW50Q2hpbGQsIFRlbXBsYXRlUmVmIH0gZnJvbSAgXCJAYW5ndWxhci9jb3JlXCI7XG5cbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcblxuY29uc3QgZGVmYXVsdFByb3BzID0ge307XG5cbmltcG9ydCB7IERCTmF2aWdhdGlvbkl0ZW1Qcm9wcywgREJOYXZpZ2F0aW9uSXRlbVN0YXRlIH0gZnJvbSBcIi4vbW9kZWxcIjtcbmltcG9ydCB7IERCQnV0dG9uIH0gZnJvbSBcIi4uL2J1dHRvbi9idXR0b25cIjtcbmltcG9ydCB7IGNscywgZ2V0Qm9vbGVhbkFzU3RyaW5nLCBnZXRIaWRlUHJvcCwgdXVpZCB9IGZyb20gXCIuLi8uLi91dGlsc1wiO1xuaW1wb3J0IHsgTmF2aWdhdGlvbkl0ZW1TYWZlVHJpYW5nbGUgfSBmcm9tIFwiLi4vLi4vdXRpbHMvbmF2aWdhdGlvblwiO1xuaW1wb3J0IHsgREVGQVVMVF9CQUNLIH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9jb25zdGFudHNcIjtcbmltcG9ydCB7IENsaWNrRXZlbnQgfSBmcm9tIFwiLi4vLi4vc2hhcmVkL21vZGVsXCI7XG5cbmltcG9ydCB7IE5hdmlnYXRpb25Db250ZW50RGlyZWN0aXZlIH0gZnJvbSAnLi9OYXZpZ2F0aW9uQ29udGVudC5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiZGItbmF2aWdhdGlvbi1pdGVtXCIsXG4gIHRlbXBsYXRlOiBgXG4gICAgPGxpXG4gICAgICAjX3JlZlxuICAgICAgW2F0dHIuaWRdPVwiaWRcIlxuICAgICAgKG1vdXNlb3Zlcik9XCJuYXZpZ2F0aW9uSXRlbVNhZmVUcmlhbmdsZT8uZW5hYmxlRm9sbG93KClcIlxuICAgICAgKG1vdXNlbGVhdmUpPVwibmF2aWdhdGlvbkl0ZW1TYWZlVHJpYW5nbGU/LmRpc2FibGVGb2xsb3coKVwiXG4gICAgICAobW91c2Vtb3ZlKT1cIm5hdmlnYXRpb25JdGVtU2FmZVRyaWFuZ2xlPy5mb2xsb3dCeU1vdXNlRXZlbnQoJGV2ZW50KVwiXG4gICAgICBbY2xhc3NdPVwiY2xzKCdkYi1uYXZpZ2F0aW9uLWl0ZW0nLCBjbGFzc05hbWUpXCJcbiAgICAgIFthdHRyLmRhdGEtd2lkdGhdPVwid2lkdGhcIlxuICAgICAgW2F0dHIuZGF0YS1pY29uXT1cImljb25cIlxuICAgICAgW2F0dHIuZGF0YS1oaWRlLWljb25dPVwiZ2V0SGlkZVByb3Aoc2hvd0ljb24pXCJcbiAgICAgIFthdHRyLmRhdGEtYWN0aXZlXT1cImFjdGl2ZVwiXG4gICAgICBbYXR0ci5hcmlhLWRpc2FibGVkXT1cImdldEJvb2xlYW5Bc1N0cmluZyhkaXNhYmxlZClcIlxuICAgID5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaGFzU3ViTmF2aWdhdGlvblwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidGV4dFwiPnt7dGV4dH19PC9uZy1jb250YWluZXI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhKHRleHQpXCI+PG5nLWNvbnRlbnQgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkYk5hdmlnYXRpb25Db250ZW50XCI+PC9uZy1jb250ZW50PjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaGFzU3ViTmF2aWdhdGlvblwiPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgY2xhc3M9XCJkYi1uYXZpZ2F0aW9uLWl0ZW0tZXhwYW5kLWJ1dHRvblwiXG4gICAgICAgICAgW2F0dHIuYXJpYS1oYXNwb3B1cF09XCJoYXNBcmVhUG9wdXBcIlxuICAgICAgICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiaXNTdWJOYXZpZ2F0aW9uRXhwYW5kZWRcIlxuICAgICAgICAgIFthdHRyLmRpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgICAoY2xpY2spPVwiaGFuZGxlQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgID5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidGV4dFwiPnt7dGV4dH19PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiEodGV4dClcIj48bmctY29udGVudCAqbmdUZW1wbGF0ZU91dGxldD1cImRiTmF2aWdhdGlvbkNvbnRlbnRcIj48L25nLWNvbnRlbnQ+PC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8bWVudSBjbGFzcz1cImRiLXN1Yi1uYXZpZ2F0aW9uXCIgW2F0dHIuaWRdPVwic3ViTmF2aWdhdGlvbklkXCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhhc0FyZWFQb3B1cFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRiLW1vYmlsZS1uYXZpZ2F0aW9uLWJhY2tcIj5cbiAgICAgICAgICAgICAgPGRiLWJ1dHRvblxuICAgICAgICAgICAgICAgIGljb249XCJhcnJvd19sZWZ0XCJcbiAgICAgICAgICAgICAgICB2YXJpYW50PVwiZ2hvc3RcIlxuICAgICAgICAgICAgICAgIFtpZF09XCJiYWNrQnV0dG9uSWRcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVCYWNrQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7e2JhY2tCdXR0b25UZXh0ID8/IERFRkFVTFRfQkFDS319XG4gICAgICAgICAgICAgIDwvZGItYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3N1Yi1uYXZpZ2F0aW9uXVwiPjwvbmctY29udGVudD5cbiAgICAgICAgPC9tZW51PlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9saT5cbiAgYCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgREJCdXR0b25dLFxufSlcbmV4cG9ydCBjbGFzcyBEQk5hdmlnYXRpb25JdGVtIHtcblx0QENvbnRlbnRDaGlsZChOYXZpZ2F0aW9uQ29udGVudERpcmVjdGl2ZSwgeyByZWFkOiBUZW1wbGF0ZVJlZiB9KSBkYk5hdmlnYXRpb25Db250ZW50OiBhbnk7XG4gIGNscyA9IGNscztcbiAgZ2V0Qm9vbGVhbkFzU3RyaW5nID0gZ2V0Qm9vbGVhbkFzU3RyaW5nO1xuICBnZXRIaWRlUHJvcCA9IGdldEhpZGVQcm9wO1xuICBERUZBVUxUX0JBQ0sgPSBERUZBVUxUX0JBQ0s7XG5cbiAgQElucHV0KClcbiAgc3ViTmF2aWdhdGlvbkV4cGFuZGVkITogREJOYXZpZ2F0aW9uSXRlbVByb3BzW1wic3ViTmF2aWdhdGlvbkV4cGFuZGVkXCJdO1xuICBASW5wdXQoKSBpZCE6IERCTmF2aWdhdGlvbkl0ZW1Qcm9wc1tcImlkXCJdO1xuICBASW5wdXQoKSBjbGFzc05hbWUhOiBEQk5hdmlnYXRpb25JdGVtUHJvcHNbXCJjbGFzc05hbWVcIl07XG4gIEBJbnB1dCgpIHdpZHRoITogREJOYXZpZ2F0aW9uSXRlbVByb3BzW1wid2lkdGhcIl07XG4gIEBJbnB1dCgpIGljb24hOiBEQk5hdmlnYXRpb25JdGVtUHJvcHNbXCJpY29uXCJdO1xuICBASW5wdXQoKSBzaG93SWNvbiE6IERCTmF2aWdhdGlvbkl0ZW1Qcm9wc1tcInNob3dJY29uXCJdO1xuICBASW5wdXQoKSBhY3RpdmUhOiBEQk5hdmlnYXRpb25JdGVtUHJvcHNbXCJhY3RpdmVcIl07XG4gIEBJbnB1dCgpIGRpc2FibGVkITogREJOYXZpZ2F0aW9uSXRlbVByb3BzW1wiZGlzYWJsZWRcIl07XG4gIEBJbnB1dCgpIHRleHQhOiBEQk5hdmlnYXRpb25JdGVtUHJvcHNbXCJ0ZXh0XCJdO1xuICBASW5wdXQoKSBiYWNrQnV0dG9uSWQhOiBEQk5hdmlnYXRpb25JdGVtUHJvcHNbXCJiYWNrQnV0dG9uSWRcIl07XG4gIEBJbnB1dCgpIGJhY2tCdXR0b25UZXh0ITogREJOYXZpZ2F0aW9uSXRlbVByb3BzW1wiYmFja0J1dHRvblRleHRcIl07XG5cbiAgQE91dHB1dCgpIG9uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQFZpZXdDaGlsZChcIl9yZWZcIikgX3JlZiE6IEVsZW1lbnRSZWYgfCB1bmRlZmluZWQ7XG5cbiAgaW5pdGlhbGl6ZWQ6IERCTmF2aWdhdGlvbkl0ZW1TdGF0ZVtcImluaXRpYWxpemVkXCJdID0gZmFsc2U7XG4gIGhhc0FyZWFQb3B1cDogREJOYXZpZ2F0aW9uSXRlbVN0YXRlW1wiaGFzQXJlYVBvcHVwXCJdID0gZmFsc2U7XG4gIGhhc1N1Yk5hdmlnYXRpb246IERCTmF2aWdhdGlvbkl0ZW1TdGF0ZVtcImhhc1N1Yk5hdmlnYXRpb25cIl0gPSB0cnVlO1xuICBpc1N1Yk5hdmlnYXRpb25FeHBhbmRlZDogREJOYXZpZ2F0aW9uSXRlbVN0YXRlW1wiaXNTdWJOYXZpZ2F0aW9uRXhwYW5kZWRcIl0gPVxuICAgIGZhbHNlO1xuICBzdWJOYXZpZ2F0aW9uSWQ6IERCTmF2aWdhdGlvbkl0ZW1TdGF0ZVtcInN1Yk5hdmlnYXRpb25JZFwiXSA9XG4gICAgXCJzdWItbmF2aWdhdGlvbi1cIiArIHV1aWQoKTtcbiAgbmF2aWdhdGlvbkl0ZW1TYWZlVHJpYW5nbGU6IERCTmF2aWdhdGlvbkl0ZW1TdGF0ZVtcIm5hdmlnYXRpb25JdGVtU2FmZVRyaWFuZ2xlXCJdID1cbiAgICB1bmRlZmluZWQ7XG4gIGhhbmRsZUNsaWNrKFxuICAgIGV2ZW50OiBDbGlja0V2ZW50PEhUTUxCdXR0b25FbGVtZW50PlxuICApOiBSZXR1cm5UeXBlPERCTmF2aWdhdGlvbkl0ZW1TdGF0ZVtcImhhbmRsZUNsaWNrXCJdPiB7XG4gICAgaWYgKHRoaXMub25DbGljaykge1xuICAgICAgdGhpcy5vbkNsaWNrLmVtaXQoZXZlbnQpO1xuICAgIH1cbiAgICBpZiAodGhpcy5oYXNBcmVhUG9wdXApIHtcbiAgICAgIHRoaXMuaXNTdWJOYXZpZ2F0aW9uRXhwYW5kZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuICBoYW5kbGVCYWNrQ2xpY2soXG4gICAgZXZlbnQ6IENsaWNrRXZlbnQ8SFRNTEJ1dHRvbkVsZW1lbnQ+XG4gICk6IFJldHVyblR5cGU8REJOYXZpZ2F0aW9uSXRlbVN0YXRlW1wiaGFuZGxlQmFja0NsaWNrXCJdPiB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5pc1N1Yk5hdmlnYXRpb25FeHBhbmRlZCA9IGZhbHNlO1xuICB9XG4gIHVwZGF0ZVN1Yk5hdmlnYXRpb25TdGF0ZSgpOiBSZXR1cm5UeXBlPFxuICAgIERCTmF2aWdhdGlvbkl0ZW1TdGF0ZVtcInVwZGF0ZVN1Yk5hdmlnYXRpb25TdGF0ZVwiXVxuICA+IHtcbiAgICBpZiAodGhpcy5pbml0aWFsaXplZCAmJiBkb2N1bWVudCAmJiB0aGlzLnN1Yk5hdmlnYXRpb25JZCkge1xuICAgICAgY29uc3Qgc3ViTmF2aWdhdGlvblNsb3QgPSBkb2N1bWVudD8uZ2V0RWxlbWVudEJ5SWQoXG4gICAgICAgIHRoaXMuc3ViTmF2aWdhdGlvbklkXG4gICAgICApIGFzIEhUTUxNZW51RWxlbWVudDtcbiAgICAgIGlmIChzdWJOYXZpZ2F0aW9uU2xvdCkge1xuICAgICAgICBpZiAoc3ViTmF2aWdhdGlvblNsb3QuY2hpbGRyZW4/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICB0aGlzLmhhc0FyZWFQb3B1cCA9IHRydWU7XG4gICAgICAgICAgaWYgKCF0aGlzLm5hdmlnYXRpb25JdGVtU2FmZVRyaWFuZ2xlKSB7XG4gICAgICAgICAgICB0aGlzLm5hdmlnYXRpb25JdGVtU2FmZVRyaWFuZ2xlID0gbmV3IE5hdmlnYXRpb25JdGVtU2FmZVRyaWFuZ2xlKFxuICAgICAgICAgICAgICB0aGlzLl9yZWY/Lm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAgIHN1Yk5hdmlnYXRpb25TbG90XG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmhhc1N1Yk5hdmlnYXRpb24gPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBQYXNzZXMgYGFyaWEtKmAsIGBkYXRhLSpgICYgYGNsYXNzYCBhdHRyaWJ1dGVzIHRvIGNvcnJlY3QgY2hpbGQuIFVzZWQgaW4gYW5ndWxhciBhbmQgc3RlbmNpbC5cbiAgICogQHBhcmFtIGVsZW1lbnQgIHRoZSByZWYgZm9yIHRoZSBjb21wb25lbnRcbiAgICogQHBhcmFtIGN1c3RvbUVsZW1lbnRTZWxlY3RvciAgdGhlIGN1c3RvbSBlbGVtZW50IGxpa2UgYG15LWNvbXBvbmVudGBcbiAgICovXG4gIHByaXZhdGUgZW5hYmxlQXR0cmlidXRlUGFzc2luZyhcbiAgICBlbGVtZW50OiBIVE1MRWxlbWVudCB8IG51bGwsXG4gICAgY3VzdG9tRWxlbWVudFNlbGVjdG9yOiBzdHJpbmdcbiAgKSB7XG4gICAgY29uc3QgcGFyZW50ID0gZWxlbWVudD8uY2xvc2VzdChjdXN0b21FbGVtZW50U2VsZWN0b3IpO1xuICAgIGlmIChlbGVtZW50ICYmIHBhcmVudCkge1xuICAgICAgY29uc3QgYXR0cmlidXRlcyA9IHBhcmVudC5hdHRyaWJ1dGVzO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhdHRyaWJ1dGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IGF0dHIgPSBhdHRyaWJ1dGVzLml0ZW0oaSk7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBhdHRyICYmXG4gICAgICAgICAgKGF0dHIubmFtZS5zdGFydHNXaXRoKFwiZGF0YS1cIikgfHwgYXR0ci5uYW1lLnN0YXJ0c1dpdGgoXCJhcmlhLVwiKSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgZWxlbWVudC5zZXRBdHRyaWJ1dGUoYXR0ci5uYW1lLCBhdHRyLnZhbHVlKTtcbiAgICAgICAgICBwYXJlbnQucmVtb3ZlQXR0cmlidXRlKGF0dHIubmFtZSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGF0dHIgJiYgYXR0ci5uYW1lID09PSBcImNsYXNzXCIpIHtcbiAgICAgICAgICBjb25zdCBpc1dlYkNvbXBvbmVudCA9IGF0dHIudmFsdWUuaW5jbHVkZXMoXCJoeWRyYXRlZFwiKTtcbiAgICAgICAgICBjb25zdCB2YWx1ZSA9IGF0dHIudmFsdWUucmVwbGFjZShcImh5ZHJhdGVkXCIsIFwiXCIpLnRyaW0oKTtcbiAgICAgICAgICBjb25zdCBjdXJyZW50Q2xhc3MgPSBlbGVtZW50LmdldEF0dHJpYnV0ZShcImNsYXNzXCIpO1xuICAgICAgICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKFxuICAgICAgICAgICAgYXR0ci5uYW1lLFxuICAgICAgICAgICAgYCR7Y3VycmVudENsYXNzID8gYCR7Y3VycmVudENsYXNzfSBgIDogXCJcIn0ke3ZhbHVlfWBcbiAgICAgICAgICApO1xuICAgICAgICAgIGlmIChpc1dlYkNvbXBvbmVudCkge1xuICAgICAgICAgICAgLy8gU3RlbmNpbCBpcyB1c2luZyB0aGlzIGNsYXNzIGZvciBsYXp5IGxvYWRpbmcgY29tcG9uZW50XG4gICAgICAgICAgICBwYXJlbnQuc2V0QXR0cmlidXRlKFwiY2xhc3NcIiwgXCJoeWRyYXRlZFwiKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcGFyZW50LnJlbW92ZUF0dHJpYnV0ZShhdHRyLm5hbWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSBcInVuZGVmaW5lZFwiKSB7XG4gICAgICB0aGlzLmluaXRpYWxpemVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgY29uc3QgZWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsID0gdGhpcy5fcmVmPy5uYXRpdmVFbGVtZW50O1xuICAgIHRoaXMuZW5hYmxlQXR0cmlidXRlUGFzc2luZyhlbGVtZW50LCBcImRiLW5hdmlnYXRpb24taXRlbVwiKTtcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50Q2hlY2tlZChjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09IFwidW5kZWZpbmVkXCIpIHtcbiAgICAgIGlmICh0aGlzLnN1Yk5hdmlnYXRpb25FeHBhbmRlZCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMuaXNTdWJOYXZpZ2F0aW9uRXhwYW5kZWQgPSAhIXRoaXMuc3ViTmF2aWdhdGlvbkV4cGFuZGVkO1xuICAgICAgfVxuICAgICAgdGhpcy51cGRhdGVTdWJOYXZpZ2F0aW9uU3RhdGUoKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
255
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi1pdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vb3V0cHV0L2FuZ3VsYXIvc3JjL2NvbXBvbmVudHMvbmF2aWdhdGlvbi1pdGVtL25hdmlnYXRpb24taXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEVBQ1QsU0FBUyxFQUVULEtBQUssRUFFUCxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU8sZUFBZSxDQUFDO0FBRWxELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUsvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDNUMsT0FBTyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNoRixPQUFPLEVBQ0wsMkJBQTJCLEVBQzNCLDBCQUEwQixHQUMzQixNQUFNLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUd0RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7O0FBWjNFLE1BQU0sWUFBWSxHQUFHLEVBQUUsQ0FBQztBQXVFeEIsTUFBTSxPQUFPLGdCQUFnQjtJQXpEN0I7UUEyREUsUUFBRyxHQUFHLEdBQUcsQ0FBQztRQUNWLHVCQUFrQixHQUFHLGtCQUFrQixDQUFDO1FBQ3hDLGdCQUFXLEdBQUcsV0FBVyxDQUFDO1FBQzFCLGlCQUFZLEdBQUcsWUFBWSxDQUFDO1FBZWxCLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBSXZDLGdCQUFXLEdBQXlDLEtBQUssQ0FBQztRQUMxRCxpQkFBWSxHQUEwQyxLQUFLLENBQUM7UUFDNUQscUJBQWdCLEdBQThDLElBQUksQ0FBQztRQUNuRSw0QkFBdUIsR0FD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IHtcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIENvbXBvbmVudCxcbiAgVmlld0NoaWxkLFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbiAgU2ltcGxlQ2hhbmdlcyxcbkNvbnRlbnRDaGlsZCwgVGVtcGxhdGVSZWYgfSBmcm9tICBcIkBhbmd1bGFyL2NvcmVcIjtcblxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuXG5jb25zdCBkZWZhdWx0UHJvcHMgPSB7fTtcblxuaW1wb3J0IHsgREJOYXZpZ2F0aW9uSXRlbVByb3BzLCBEQk5hdmlnYXRpb25JdGVtU3RhdGUgfSBmcm9tIFwiLi9tb2RlbFwiO1xuaW1wb3J0IHsgREJCdXR0b24gfSBmcm9tIFwiLi4vYnV0dG9uL2J1dHRvblwiO1xuaW1wb3J0IHsgY2xzLCBkZWxheSwgZ2V0Qm9vbGVhbkFzU3RyaW5nLCBnZXRIaWRlUHJvcCwgdXVpZCB9IGZyb20gXCIuLi8uLi91dGlsc1wiO1xuaW1wb3J0IHtcbiAgaXNFdmVudFRhcmdldE5hdmlnYXRpb25JdGVtLFxuICBOYXZpZ2F0aW9uSXRlbVNhZmVUcmlhbmdsZSxcbn0gZnJvbSBcIi4uLy4uL3V0aWxzL25hdmlnYXRpb25cIjtcbmltcG9ydCB7IERFRkFVTFRfQkFDSyB9IGZyb20gXCIuLi8uLi9zaGFyZWQvY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBDbGlja0V2ZW50IH0gZnJvbSBcIi4uLy4uL3NoYXJlZC9tb2RlbFwiO1xuXG5pbXBvcnQgeyBOYXZpZ2F0aW9uQ29udGVudERpcmVjdGl2ZSB9IGZyb20gJy4vTmF2aWdhdGlvbkNvbnRlbnQuZGlyZWN0aXZlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcImRiLW5hdmlnYXRpb24taXRlbVwiLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxsaVxuICAgICAgI19yZWZcbiAgICAgIFthdHRyLmlkXT1cImlkXCJcbiAgICAgIChtb3VzZW92ZXIpPVwibmF2aWdhdGlvbkl0ZW1TYWZlVHJpYW5nbGU/LmVuYWJsZUZvbGxvdygpXCJcbiAgICAgIChtb3VzZWxlYXZlKT1cIm5hdmlnYXRpb25JdGVtU2FmZVRyaWFuZ2xlPy5kaXNhYmxlRm9sbG93KClcIlxuICAgICAgKG1vdXNlbW92ZSk9XCJuYXZpZ2F0aW9uSXRlbVNhZmVUcmlhbmdsZT8uZm9sbG93QnlNb3VzZUV2ZW50KCRldmVudClcIlxuICAgICAgW2NsYXNzXT1cImNscygnZGItbmF2aWdhdGlvbi1pdGVtJywgY2xhc3NOYW1lKVwiXG4gICAgICBbYXR0ci5kYXRhLXdpZHRoXT1cIndpZHRoXCJcbiAgICAgIFthdHRyLmRhdGEtaWNvbl09XCJpY29uXCJcbiAgICAgIFthdHRyLmRhdGEtaGlkZS1pY29uXT1cImdldEhpZGVQcm9wKHNob3dJY29uKVwiXG4gICAgICBbYXR0ci5kYXRhLWFjdGl2ZV09XCJhY3RpdmVcIlxuICAgICAgW2F0dHIuYXJpYS1kaXNhYmxlZF09XCJnZXRCb29sZWFuQXNTdHJpbmcoZGlzYWJsZWQpXCJcbiAgICA+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWhhc1N1Yk5hdmlnYXRpb25cIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInRleHRcIj57e3RleHR9fTwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiISh0ZXh0KVwiPjxuZy1jb250ZW50ICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGJOYXZpZ2F0aW9uQ29udGVudFwiPjwvbmctY29udGVudD48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhhc1N1Yk5hdmlnYXRpb25cIj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGNsYXNzPVwiZGItbmF2aWdhdGlvbi1pdGVtLWV4cGFuZC1idXR0b25cIlxuICAgICAgICAgIFthdHRyLmFyaWEtaGFzcG9wdXBdPVwiaGFzQXJlYVBvcHVwXCJcbiAgICAgICAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cImlzU3ViTmF2aWdhdGlvbkV4cGFuZGVkXCJcbiAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgKGNsaWNrKT1cImhhbmRsZUNsaWNrKCRldmVudClcIlxuICAgICAgICA+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInRleHRcIj57e3RleHR9fTwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhKHRleHQpXCI+PG5nLWNvbnRlbnQgKm5nVGVtcGxhdGVPdXRsZXQ9XCJkYk5hdmlnYXRpb25Db250ZW50XCI+PC9uZy1jb250ZW50PjwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPG1lbnVcbiAgICAgICAgICBjbGFzcz1cImRiLXN1Yi1uYXZpZ2F0aW9uXCJcbiAgICAgICAgICBbYXR0ci5kYXRhLWF1dG8tY2xvc2VdPVwiYXV0b0Nsb3NlXCJcbiAgICAgICAgICBbYXR0ci5pZF09XCJzdWJOYXZpZ2F0aW9uSWRcIlxuICAgICAgICAgIChjbGljayk9XCJoYW5kbGVOYXZpZ2F0aW9uSXRlbUNsaWNrKCRldmVudClcIlxuICAgICAgICA+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhhc0FyZWFQb3B1cFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRiLW1vYmlsZS1uYXZpZ2F0aW9uLWJhY2tcIj5cbiAgICAgICAgICAgICAgPGRiLWJ1dHRvblxuICAgICAgICAgICAgICAgIGljb249XCJhcnJvd19sZWZ0XCJcbiAgICAgICAgICAgICAgICB2YXJpYW50PVwiZ2hvc3RcIlxuICAgICAgICAgICAgICAgIFtpZF09XCJiYWNrQnV0dG9uSWRcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJoYW5kbGVCYWNrQ2xpY2soJGV2ZW50KVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7e2JhY2tCdXR0b25UZXh0ID8/IERFRkFVTFRfQkFDS319XG4gICAgICAgICAgICAgIDwvZGItYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW3N1Yi1uYXZpZ2F0aW9uXVwiPjwvbmctY29udGVudD5cbiAgICAgICAgPC9tZW51PlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9saT5cbiAgYCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgREJCdXR0b25dLFxufSlcbmV4cG9ydCBjbGFzcyBEQk5hdmlnYXRpb25JdGVtIHtcblx0QENvbnRlbnRDaGlsZChOYXZpZ2F0aW9uQ29udGVudERpcmVjdGl2ZSwgeyByZWFkOiBUZW1wbGF0ZVJlZiB9KSBkYk5hdmlnYXRpb25Db250ZW50OiBhbnk7XG4gIGNscyA9IGNscztcbiAgZ2V0Qm9vbGVhbkFzU3RyaW5nID0gZ2V0Qm9vbGVhbkFzU3RyaW5nO1xuICBnZXRIaWRlUHJvcCA9IGdldEhpZGVQcm9wO1xuICBERUZBVUxUX0JBQ0sgPSBERUZBVUxUX0JBQ0s7XG5cbiAgQElucHV0KClcbiAgc3ViTmF2aWdhdGlvbkV4cGFuZGVkITogREJOYXZpZ2F0aW9uSXRlbVByb3BzW1wic3ViTmF2aWdhdGlvbkV4cGFuZGVkXCJdO1xuICBASW5wdXQoKSBpZCE6IERCTmF2aWdhdGlvbkl0ZW1Qcm9wc1tcImlkXCJdO1xuICBASW5wdXQoKSBjbGFzc05hbWUhOiBEQk5hdmlnYXRpb25JdGVtUHJvcHNbXCJjbGFzc05hbWVcIl07XG4gIEBJbnB1dCgpIHdpZHRoITogREJOYXZpZ2F0aW9uSXRlbVByb3BzW1wid2lkdGhcIl07XG4gIEBJbnB1dCgpIGljb24hOiBEQk5hdmlnYXRpb25JdGVtUHJvcHNbXCJpY29uXCJdO1xuICBASW5wdXQoKSBzaG93SWNvbiE6IERCTmF2aWdhdGlvbkl0ZW1Qcm9wc1tcInNob3dJY29uXCJdO1xuICBASW5wdXQoKSBhY3RpdmUhOiBEQk5hdmlnYXRpb25JdGVtUHJvcHNbXCJhY3RpdmVcIl07XG4gIEBJbnB1dCgpIGRpc2FibGVkITogREJOYXZpZ2F0aW9uSXRlbVByb3BzW1wiZGlzYWJsZWRcIl07XG4gIEBJbnB1dCgpIHRleHQhOiBEQk5hdmlnYXRpb25JdGVtUHJvcHNbXCJ0ZXh0XCJdO1xuICBASW5wdXQoKSBiYWNrQnV0dG9uSWQhOiBEQk5hdmlnYXRpb25JdGVtUHJvcHNbXCJiYWNrQnV0dG9uSWRcIl07XG4gIEBJbnB1dCgpIGJhY2tCdXR0b25UZXh0ITogREJOYXZpZ2F0aW9uSXRlbVByb3BzW1wiYmFja0J1dHRvblRleHRcIl07XG5cbiAgQE91dHB1dCgpIG9uQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQFZpZXdDaGlsZChcIl9yZWZcIikgX3JlZiE6IEVsZW1lbnRSZWYgfCB1bmRlZmluZWQ7XG5cbiAgaW5pdGlhbGl6ZWQ6IERCTmF2aWdhdGlvbkl0ZW1TdGF0ZVtcImluaXRpYWxpemVkXCJdID0gZmFsc2U7XG4gIGhhc0FyZWFQb3B1cDogREJOYXZpZ2F0aW9uSXRlbVN0YXRlW1wiaGFzQXJlYVBvcHVwXCJdID0gZmFsc2U7XG4gIGhhc1N1Yk5hdmlnYXRpb246IERCTmF2aWdhdGlvbkl0ZW1TdGF0ZVtcImhhc1N1Yk5hdmlnYXRpb25cIl0gPSB0cnVlO1xuICBpc1N1Yk5hdmlnYXRpb25FeHBhbmRlZDogREJOYXZpZ2F0aW9uSXRlbVN0YXRlW1wiaXNTdWJOYXZpZ2F0aW9uRXhwYW5kZWRcIl0gPVxuICAgIGZhbHNlO1xuICBhdXRvQ2xvc2U6IERCTmF2aWdhdGlvbkl0ZW1TdGF0ZVtcImF1dG9DbG9zZVwiXSA9IGZhbHNlO1xuICBzdWJOYXZpZ2F0aW9uSWQ6IERCTmF2aWdhdGlvbkl0ZW1TdGF0ZVtcInN1Yk5hdmlnYXRpb25JZFwiXSA9XG4gICAgXCJzdWItbmF2aWdhdGlvbi1cIiArIHV1aWQoKTtcbiAgbmF2aWdhdGlvbkl0ZW1TYWZlVHJpYW5nbGU6IERCTmF2aWdhdGlvbkl0ZW1TdGF0ZVtcIm5hdmlnYXRpb25JdGVtU2FmZVRyaWFuZ2xlXCJdID1cbiAgICB1bmRlZmluZWQ7XG4gIGhhbmRsZU5hdmlnYXRpb25JdGVtQ2xpY2soXG4gICAgZXZlbnQ6IHVua25vd25cbiAgKTogUmV0dXJuVHlwZTxEQk5hdmlnYXRpb25JdGVtU3RhdGVbXCJoYW5kbGVOYXZpZ2F0aW9uSXRlbUNsaWNrXCJdPiB7XG4gICAgaWYgKGlzRXZlbnRUYXJnZXROYXZpZ2F0aW9uSXRlbShldmVudCkpIHtcbiAgICAgIHRoaXMuYXV0b0Nsb3NlID0gdHJ1ZTtcbiAgICAgIGRlbGF5KCgpID0+IHtcbiAgICAgICAgdGhpcy5hdXRvQ2xvc2UgPSBmYWxzZTtcbiAgICAgIH0sIDMwMCk7XG4gICAgfVxuICB9XG4gIGhhbmRsZUNsaWNrKFxuICAgIGV2ZW50OiBDbGlja0V2ZW50PEhUTUxCdXR0b25FbGVtZW50PlxuICApOiBSZXR1cm5UeXBlPERCTmF2aWdhdGlvbkl0ZW1TdGF0ZVtcImhhbmRsZUNsaWNrXCJdPiB7XG4gICAgaWYgKHRoaXMub25DbGljaykge1xuICAgICAgdGhpcy5vbkNsaWNrLmVtaXQoZXZlbnQpO1xuICAgIH1cbiAgICBpZiAodGhpcy5oYXNBcmVhUG9wdXApIHtcbiAgICAgIHRoaXMuaXNTdWJOYXZpZ2F0aW9uRXhwYW5kZWQgPSB0cnVlO1xuICAgIH1cbiAgfVxuICBoYW5kbGVCYWNrQ2xpY2soXG4gICAgZXZlbnQ6IENsaWNrRXZlbnQ8SFRNTEJ1dHRvbkVsZW1lbnQ+XG4gICk6IFJldHVyblR5cGU8REJOYXZpZ2F0aW9uSXRlbVN0YXRlW1wiaGFuZGxlQmFja0NsaWNrXCJdPiB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5pc1N1Yk5hdmlnYXRpb25FeHBhbmRlZCA9IGZhbHNlO1xuICB9XG4gIHVwZGF0ZVN1Yk5hdmlnYXRpb25TdGF0ZSgpOiBSZXR1cm5UeXBlPFxuICAgIERCTmF2aWdhdGlvbkl0ZW1TdGF0ZVtcInVwZGF0ZVN1Yk5hdmlnYXRpb25TdGF0ZVwiXVxuICA+IHtcbiAgICBpZiAodGhpcy5pbml0aWFsaXplZCAmJiBkb2N1bWVudCAmJiB0aGlzLnN1Yk5hdmlnYXRpb25JZCkge1xuICAgICAgY29uc3Qgc3ViTmF2aWdhdGlvblNsb3QgPSBkb2N1bWVudD8uZ2V0RWxlbWVudEJ5SWQoXG4gICAgICAgIHRoaXMuc3ViTmF2aWdhdGlvbklkXG4gICAgICApIGFzIEhUTUxNZW51RWxlbWVudDtcbiAgICAgIGlmIChzdWJOYXZpZ2F0aW9uU2xvdCkge1xuICAgICAgICBpZiAoc3ViTmF2aWdhdGlvblNsb3QuY2hpbGRyZW4/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICB0aGlzLmhhc0FyZWFQb3B1cCA9IHRydWU7XG4gICAgICAgICAgaWYgKCF0aGlzLm5hdmlnYXRpb25JdGVtU2FmZVRyaWFuZ2xlKSB7XG4gICAgICAgICAgICB0aGlzLm5hdmlnYXRpb25JdGVtU2FmZVRyaWFuZ2xlID0gbmV3IE5hdmlnYXRpb25JdGVtU2FmZVRyaWFuZ2xlKFxuICAgICAgICAgICAgICB0aGlzLl9yZWY/Lm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAgIHN1Yk5hdmlnYXRpb25TbG90XG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLmhhc1N1Yk5hdmlnYXRpb24gPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBQYXNzZXMgYGFyaWEtKmAsIGBkYXRhLSpgICYgYGNsYXNzYCBhdHRyaWJ1dGVzIHRvIGNvcnJlY3QgY2hpbGQuIFVzZWQgaW4gYW5ndWxhciBhbmQgc3RlbmNpbC5cbiAgICogQHBhcmFtIGVsZW1lbnQgIHRoZSByZWYgZm9yIHRoZSBjb21wb25lbnRcbiAgICogQHBhcmFtIGN1c3RvbUVsZW1lbnRTZWxlY3RvciAgdGhlIGN1c3RvbSBlbGVtZW50IGxpa2UgYG15LWNvbXBvbmVudGBcbiAgICovXG4gIHByaXZhdGUgZW5hYmxlQXR0cmlidXRlUGFzc2luZyhcbiAgICBlbGVtZW50OiBIVE1MRWxlbWVudCB8IG51bGwsXG4gICAgY3VzdG9tRWxlbWVudFNlbGVjdG9yOiBzdHJpbmdcbiAgKSB7XG4gICAgY29uc3QgcGFyZW50ID0gZWxlbWVudD8uY2xvc2VzdChjdXN0b21FbGVtZW50U2VsZWN0b3IpO1xuICAgIGlmIChlbGVtZW50ICYmIHBhcmVudCkge1xuICAgICAgY29uc3QgYXR0cmlidXRlcyA9IHBhcmVudC5hdHRyaWJ1dGVzO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhdHRyaWJ1dGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IGF0dHIgPSBhdHRyaWJ1dGVzLml0ZW0oaSk7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBhdHRyICYmXG4gICAgICAgICAgKGF0dHIubmFtZS5zdGFydHNXaXRoKFwiZGF0YS1cIikgfHwgYXR0ci5uYW1lLnN0YXJ0c1dpdGgoXCJhcmlhLVwiKSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgZWxlbWVudC5zZXRBdHRyaWJ1dGUoYXR0ci5uYW1lLCBhdHRyLnZhbHVlKTtcbiAgICAgICAgICBwYXJlbnQucmVtb3ZlQXR0cmlidXRlKGF0dHIubmFtZSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGF0dHIgJiYgYXR0ci5uYW1lID09PSBcImNsYXNzXCIpIHtcbiAgICAgICAgICBjb25zdCBpc1dlYkNvbXBvbmVudCA9IGF0dHIudmFsdWUuaW5jbHVkZXMoXCJoeWRyYXRlZFwiKTtcbiAgICAgICAgICBjb25zdCB2YWx1ZSA9IGF0dHIudmFsdWUucmVwbGFjZShcImh5ZHJhdGVkXCIsIFwiXCIpLnRyaW0oKTtcbiAgICAgICAgICBjb25zdCBjdXJyZW50Q2xhc3MgPSBlbGVtZW50LmdldEF0dHJpYnV0ZShcImNsYXNzXCIpO1xuICAgICAgICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKFxuICAgICAgICAgICAgYXR0ci5uYW1lLFxuICAgICAgICAgICAgYCR7Y3VycmVudENsYXNzID8gYCR7Y3VycmVudENsYXNzfSBgIDogXCJcIn0ke3ZhbHVlfWBcbiAgICAgICAgICApO1xuICAgICAgICAgIGlmIChpc1dlYkNvbXBvbmVudCkge1xuICAgICAgICAgICAgLy8gU3RlbmNpbCBpcyB1c2luZyB0aGlzIGNsYXNzIGZvciBsYXp5IGxvYWRpbmcgY29tcG9uZW50XG4gICAgICAgICAgICBwYXJlbnQuc2V0QXR0cmlidXRlKFwiY2xhc3NcIiwgXCJoeWRyYXRlZFwiKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcGFyZW50LnJlbW92ZUF0dHJpYnV0ZShhdHRyLm5hbWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSBcInVuZGVmaW5lZFwiKSB7XG4gICAgICB0aGlzLmluaXRpYWxpemVkID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgY29uc3QgZWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsID0gdGhpcy5fcmVmPy5uYXRpdmVFbGVtZW50O1xuICAgIHRoaXMuZW5hYmxlQXR0cmlidXRlUGFzc2luZyhlbGVtZW50LCBcImRiLW5hdmlnYXRpb24taXRlbVwiKTtcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50Q2hlY2tlZChjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09IFwidW5kZWZpbmVkXCIpIHtcbiAgICAgIGlmICh0aGlzLnN1Yk5hdmlnYXRpb25FeHBhbmRlZCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMuaXNTdWJOYXZpZ2F0aW9uRXhwYW5kZWQgPSAhIXRoaXMuc3ViTmF2aWdhdGlvbkV4cGFuZGVkO1xuICAgICAgfVxuICAgICAgdGhpcy51cGRhdGVTdWJOYXZpZ2F0aW9uU3RhdGUoKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -27,7 +27,7 @@ export class DBRadio {
|
|
|
27
27
|
if (this.change) {
|
|
28
28
|
this.change.emit(event);
|
|
29
29
|
}
|
|
30
|
-
handleFrameworkEventAngular(this, event
|
|
30
|
+
handleFrameworkEventAngular(this, event);
|
|
31
31
|
}
|
|
32
32
|
handleBlur(event) {
|
|
33
33
|
if (this.onBlur) {
|
|
@@ -78,9 +78,11 @@ export class DBRadio {
|
|
|
78
78
|
}
|
|
79
79
|
}
|
|
80
80
|
writeValue(value) {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
81
|
+
if (value) {
|
|
82
|
+
this.value = value;
|
|
83
|
+
if (this._ref?.nativeElement) {
|
|
84
|
+
this.renderer.setProperty(this._ref?.nativeElement, 'value', value);
|
|
85
|
+
}
|
|
84
86
|
}
|
|
85
87
|
}
|
|
86
88
|
propagateChange(_) { }
|
|
@@ -222,4 +224,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
|
|
|
222
224
|
type: ViewChild,
|
|
223
225
|
args: ["_ref"]
|
|
224
226
|
}] } });
|
|
225
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9vdXRwdXQvYW5ndWxhci9zcmMvY29tcG9uZW50cy9yYWRpby9yYWRpby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEVBQ1QsU0FBUyxFQUVULEtBQUssRUFFSSxNQUFNLGVBQWUsQ0FBQztBQUNqQyxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHekUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBSy9DLE9BQU8sRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVyRCxPQUFPLEVBQ0wsMkJBQTJCLEdBRTVCLE1BQU0sNkJBQTZCLENBQUM7OztBQVJyQyxNQUFNLFlBQVksR0FBRyxFQUFFLENBQUM7QUErQ3hCLE1BQU0sT0FBTyxPQUFPO0lBQ2xCLFlBQW9CLFFBQW1CO1FBQW5CLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDdkMsUUFBRyxHQUFHLEdBQUcsQ0FBQztRQUNWLGdCQUFXLEdBQUcsV0FBVyxDQUFDO1FBZWhCLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzlCLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzVCLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzVCLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzFCLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzdCLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBSXJDLGdCQUFXLEdBQWdDLEtBQUssQ0FBQztRQUNqRCxRQUFHLEdBQXdCLFNBQVMsQ0FBQztJQTNCTSxDQUFDO0lBNEI1QyxZQUFZLENBQ1YsS0FBb0M7UUFFcEMsSUFBSSxJQUFJLENBQUMsUUFB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QkFDRyxNQUFNO3NCQUFmLE1BQU07Z0JBQ0csTUFBTTtzQkFBZixNQUFNO2dCQUNHLElBQUk7c0JBQWIsTUFBTTtnQkFDRyxPQUFPO3NCQUFoQixNQUFNO2dCQUNHLEtBQUs7c0JBQWQsTUFBTTtnQkFFWSxJQUFJO3NCQUF0QixTQUFTO3VCQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgQ29tcG9uZW50LFxuICBWaWV3Q2hpbGQsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuUmVuZGVyZXIyIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5cbmNvbnN0IGRlZmF1bHRQcm9wcyA9IHt9O1xuXG5pbXBvcnQgeyBEQlJhZGlvUHJvcHMsIERCUmFkaW9TdGF0ZSB9IGZyb20gXCIuL21vZGVsXCI7XG5pbXBvcnQgeyBjbHMsIGdldEhpZGVQcm9wLCB1dWlkIH0gZnJvbSBcIi4uLy4uL3V0aWxzXCI7XG5pbXBvcnQgeyBDaGFuZ2VFdmVudCwgSW50ZXJhY3Rpb25FdmVudCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvbW9kZWxcIjtcbmltcG9ydCB7XG4gIGhhbmRsZUZyYW1ld29ya0V2ZW50QW5ndWxhcixcbiAgaGFuZGxlRnJhbWV3b3JrRXZlbnRWdWUsXG59IGZyb20gXCIuLi8uLi91dGlscy9mb3JtLWNvbXBvbmVudHNcIjtcblxuQENvbXBvbmVudCh7XG5cdFx0cHJvdmlkZXJzOiBbe1xuXHRcdFx0cHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG5cdFx0XHR1c2VFeGlzdGluZzogREJSYWRpbyxcblx0XHRcdG11bHRpOiB0cnVlXG5cdFx0fV0sXHRcbiAgc2VsZWN0b3I6IFwiZGItcmFkaW9cIixcbiAgdGVtcGxhdGU6IGBcbiAgICA8bGFiZWxcbiAgICAgIFthdHRyLmRhdGEtc2l6ZV09XCJzaXplXCJcbiAgICAgIFthdHRyLmRhdGEtaGlkZS1sYWJlbF09XCJnZXRIaWRlUHJvcChzaG93TGFiZWwpXCJcbiAgICAgIFtjbGFzc109XCJjbHMoJ2RiLXJhZGlvJywgY2xhc3NOYW1lKVwiXG4gICAgICBbYXR0ci5mb3JdPVwiX2lkXCJcbiAgICA+XG4gICAgICA8aW5wdXRcbiAgICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cInZhbGlkYXRpb24gPT09ICdpbnZhbGlkJ1wiXG4gICAgICAgIFthdHRyLmRhdGEtY3VzdG9tLXZhbGlkaXR5XT1cInZhbGlkYXRpb25cIlxuICAgICAgICAjX3JlZlxuICAgICAgICBbYXR0ci5pZF09XCJfaWRcIlxuICAgICAgICBbYXR0ci5uYW1lXT1cIm5hbWVcIlxuICAgICAgICBbY2hlY2tlZF09XCJjaGVja2VkXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJkZXNjcmliZWRieWlkXCJcbiAgICAgICAgW2F0dHIudmFsdWVdPVwidmFsdWVcIlxuICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgICAoY2hhbmdlKT1cImhhbmRsZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgKGJsdXIpPVwiaGFuZGxlQmx1cigkZXZlbnQpXCJcbiAgICAgICAgKGZvY3VzKT1cImhhbmRsZUZvY3VzKCRldmVudClcIlxuICAgICAgLz5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsYWJlbFwiPnt7bGFiZWx9fTwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiEobGFiZWwpXCI+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvbmctY29udGFpbmVyPlxuICAgIDwvbGFiZWw+XG4gIGAsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBEQlJhZGlvIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuXHRcdGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikgeyB9XG4gIGNscyA9IGNscztcbiAgZ2V0SGlkZVByb3AgPSBnZXRIaWRlUHJvcDtcblxuICBASW5wdXQoKSBpZCE6IERCUmFkaW9Qcm9wc1tcImlkXCJdO1xuICBASW5wdXQoKSBjaGVja2VkITogREJSYWRpb1Byb3BzW1wiY2hlY2tlZFwiXTtcbiAgQElucHV0KCkgc2l6ZSE6IERCUmFkaW9Qcm9wc1tcInNpemVcIl07XG4gIEBJbnB1dCgpIHNob3dMYWJlbCE6IERCUmFkaW9Qcm9wc1tcInNob3dMYWJlbFwiXTtcbiAgQElucHV0KCkgY2xhc3NOYW1lITogREJSYWRpb1Byb3BzW1wiY2xhc3NOYW1lXCJdO1xuICBASW5wdXQoKSB2YWxpZGF0aW9uITogREJSYWRpb1Byb3BzW1widmFsaWRhdGlvblwiXTtcbiAgQElucHV0KCkgbmFtZSE6IERCUmFkaW9Qcm9wc1tcIm5hbWVcIl07XG4gIEBJbnB1dCgpIGRpc2FibGVkITogREJSYWRpb1Byb3BzW1wiZGlzYWJsZWRcIl07XG4gIEBJbnB1dCgpIGRlc2NyaWJlZGJ5aWQhOiBEQlJhZGlvUHJvcHNbXCJkZXNjcmliZWRieWlkXCJdO1xuICBASW5wdXQoKSB2YWx1ZSE6IERCUmFkaW9Qcm9wc1tcInZhbHVlXCJdO1xuICBASW5wdXQoKSByZXF1aXJlZCE6IERCUmFkaW9Qcm9wc1tcInJlcXVpcmVkXCJdO1xuICBASW5wdXQoKSBsYWJlbCE6IERCUmFkaW9Qcm9wc1tcImxhYmVsXCJdO1xuXG4gIEBPdXRwdXQoKSBvbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIG9uQmx1ciA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGJsdXIgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBvbkZvY3VzID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgZm9jdXMgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQFZpZXdDaGlsZChcIl9yZWZcIikgX3JlZiE6IEVsZW1lbnRSZWYgfCB1bmRlZmluZWQ7XG5cbiAgaW5pdGlhbGl6ZWQ6IERCUmFkaW9TdGF0ZVtcImluaXRpYWxpemVkXCJdID0gZmFsc2U7XG4gIF9pZDogREJSYWRpb1N0YXRlW1wiX2lkXCJdID0gdW5kZWZpbmVkO1xuICBoYW5kbGVDaGFuZ2UoXG4gICAgZXZlbnQ6IENoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+XG4gICk6IFJldHVyblR5cGU8REJSYWRpb1N0YXRlW1wiaGFuZGxlQ2hhbmdlXCJdPiB7XG4gICAgaWYgKHRoaXMub25DaGFuZ2UpIHtcbiAgICAgIHRoaXMub25DaGFuZ2UuZW1pdChldmVudCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmNoYW5nZSkge1xuICAgICAgdGhpcy5jaGFuZ2UuZW1pdChldmVudCk7XG4gICAgfVxuICAgIGhhbmRsZUZyYW1ld29ya0V2ZW50QW5ndWxhcih0aGlzLCBldmVudCwgXCJjaGVja2VkXCIpO1xuICB9XG4gIGhhbmRsZUJsdXIoXG4gICAgZXZlbnQ6IEludGVyYWN0aW9uRXZlbnQ8SFRNTElucHV0RWxlbWVudD5cbiAgKTogUmV0dXJuVHlwZTxEQlJhZGlvU3RhdGVbXCJoYW5kbGVCbHVyXCJdPiB7XG4gICAgaWYgKHRoaXMub25CbHVyKSB7XG4gICAgICB0aGlzLm9uQmx1ci5lbWl0KGV2ZW50KTtcbiAgICB9XG4gICAgaWYgKHRoaXMuYmx1cikge1xuICAgICAgdGhpcy5ibHVyLmVtaXQoZXZlbnQpO1xuICAgIH1cbiAgfVxuICBoYW5kbGVGb2N1cyhcbiAgICBldmVudDogSW50ZXJhY3Rpb25FdmVudDxIVE1MSW5wdXRFbGVtZW50PlxuICApOiBSZXR1cm5UeXBlPERCUmFkaW9TdGF0ZVtcImhhbmRsZUZvY3VzXCJdPiB7XG4gICAgaWYgKHRoaXMub25Gb2N1cykge1xuICAgICAgdGhpcy5vbkZvY3VzLmVtaXQoZXZlbnQpO1xuICAgIH1cbiAgICBpZiAodGhpcy5mb2N1cykge1xuICAgICAgdGhpcy5mb2N1cy5lbWl0KGV2ZW50KTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUGFzc2VzIGBhcmlhLSpgLCBgZGF0YS0qYCAmIGBjbGFzc2AgYXR0cmlidXRlcyB0byBjb3JyZWN0IGNoaWxkLiBVc2VkIGluIGFuZ3VsYXIgYW5kIHN0ZW5jaWwuXG4gICAqIEBwYXJhbSBlbGVtZW50ICB0aGUgcmVmIGZvciB0aGUgY29tcG9uZW50XG4gICAqIEBwYXJhbSBjdXN0b21FbGVtZW50U2VsZWN0b3IgIHRoZSBjdXN0b20gZWxlbWVudCBsaWtlIGBteS1jb21wb25lbnRgXG4gICAqL1xuICBwcml2YXRlIGVuYWJsZUF0dHJpYnV0ZVBhc3NpbmcoXG4gICAgZWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsLFxuICAgIGN1c3RvbUVsZW1lbnRTZWxlY3Rvcjogc3RyaW5nXG4gICkge1xuICAgIGNvbnN0IHBhcmVudCA9IGVsZW1lbnQ/LmNsb3Nlc3QoY3VzdG9tRWxlbWVudFNlbGVjdG9yKTtcbiAgICBpZiAoZWxlbWVudCAmJiBwYXJlbnQpIHtcbiAgICAgIGNvbnN0IGF0dHJpYnV0ZXMgPSBwYXJlbnQuYXR0cmlidXRlcztcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgYXR0cmlidXRlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICBjb25zdCBhdHRyID0gYXR0cmlidXRlcy5pdGVtKGkpO1xuICAgICAgICBpZiAoXG4gICAgICAgICAgYXR0ciAmJlxuICAgICAgICAgIChhdHRyLm5hbWUuc3RhcnRzV2l0aChcImRhdGEtXCIpIHx8IGF0dHIubmFtZS5zdGFydHNXaXRoKFwiYXJpYS1cIikpXG4gICAgICAgICkge1xuICAgICAgICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKGF0dHIubmFtZSwgYXR0ci52YWx1ZSk7XG4gICAgICAgICAgcGFyZW50LnJlbW92ZUF0dHJpYnV0ZShhdHRyLm5hbWUpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChhdHRyICYmIGF0dHIubmFtZSA9PT0gXCJjbGFzc1wiKSB7XG4gICAgICAgICAgY29uc3QgaXNXZWJDb21wb25lbnQgPSBhdHRyLnZhbHVlLmluY2x1ZGVzKFwiaHlkcmF0ZWRcIik7XG4gICAgICAgICAgY29uc3QgdmFsdWUgPSBhdHRyLnZhbHVlLnJlcGxhY2UoXCJoeWRyYXRlZFwiLCBcIlwiKS50cmltKCk7XG4gICAgICAgICAgY29uc3QgY3VycmVudENsYXNzID0gZWxlbWVudC5nZXRBdHRyaWJ1dGUoXCJjbGFzc1wiKTtcbiAgICAgICAgICBlbGVtZW50LnNldEF0dHJpYnV0ZShcbiAgICAgICAgICAgIGF0dHIubmFtZSxcbiAgICAgICAgICAgIGAke2N1cnJlbnRDbGFzcyA/IGAke2N1cnJlbnRDbGFzc30gYCA6IFwiXCJ9JHt2YWx1ZX1gXG4gICAgICAgICAgKTtcbiAgICAgICAgICBpZiAoaXNXZWJDb21wb25lbnQpIHtcbiAgICAgICAgICAgIC8vIFN0ZW5jaWwgaXMgdXNpbmcgdGhpcyBjbGFzcyBmb3IgbGF6eSBsb2FkaW5nIGNvbXBvbmVudFxuICAgICAgICAgICAgcGFyZW50LnNldEF0dHJpYnV0ZShcImNsYXNzXCIsIFwiaHlkcmF0ZWRcIik7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBhcmVudC5yZW1vdmVBdHRyaWJ1dGUoYXR0ci5uYW1lKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBcblx0XHR3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcblx0XHQgIHRoaXMuY2hlY2tlZCA9ICEhdmFsdWU7XG5cblx0XHQgIGlmICh0aGlzLl9yZWY/Lm5hdGl2ZUVsZW1lbnQpIHtcblx0XHRcdCB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuX3JlZj8ubmF0aXZlRWxlbWVudCwgJ2NoZWNrZWQnLCAhIXZhbHVlKTtcblx0XHQgIH1cblx0XHR9XG5cblx0XHRwcm9wYWdhdGVDaGFuZ2UoXzogYW55KSB7fVxuXG5cdFx0cmVnaXN0ZXJPbkNoYW5nZShvbkNoYW5nZTogYW55KSB7XG5cdFx0ICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IG9uQ2hhbmdlO1xuXHRcdH1cblxuXHRcdHJlZ2lzdGVyT25Ub3VjaGVkKG9uVG91Y2hlZDogYW55KSB7XG5cdFx0IC8vdGhpcy5vblRvdWNoZWQgPSBvblRvdWNoZWQ7XG5cdFx0fVxuXG5cdFx0c2V0RGlzYWJsZWRTdGF0ZShkaXNhYmxlZDogYm9vbGVhbikge1xuXHRcdCAgdGhpcy5kaXNhYmxlZCA9IGRpc2FibGVkO1xuXHRcdH1cblxuXHRcdG5nT25Jbml0KCkge1xuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSBcInVuZGVmaW5lZFwiKSB7XG4gICAgICB0aGlzLmluaXRpYWxpemVkID0gdHJ1ZTtcbiAgICAgIHRoaXMuX2lkID0gdGhpcy5pZCA/PyBgcmFkaW8tJHt1dWlkKCl9YDtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgY29uc3QgZWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsID0gdGhpcy5fcmVmPy5uYXRpdmVFbGVtZW50O1xuICAgIHRoaXMuZW5hYmxlQXR0cmlidXRlUGFzc2luZyhlbGVtZW50LCBcImRiLXJhZGlvXCIpO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRDaGVja2VkKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gXCJ1bmRlZmluZWRcIikge1xuICAgICAgaWYgKHRoaXMuY2hlY2tlZCAmJiB0aGlzLmluaXRpYWxpemVkICYmIHRoaXMuX3JlZj8ubmF0aXZlRWxlbWVudCkge1xuICAgICAgICB0aGlzLl9yZWYubmF0aXZlRWxlbWVudC5jaGVja2VkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
227
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9vdXRwdXQvYW5ndWxhci9zcmMvY29tcG9uZW50cy9yYWRpby9yYWRpby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsTUFBTSxFQUNOLFlBQVksRUFDWixTQUFTLEVBQ1QsU0FBUyxFQUVULEtBQUssRUFFSSxNQUFNLGVBQWUsQ0FBQztBQUNqQyxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHekUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBSy9DLE9BQU8sRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUVyRCxPQUFPLEVBQ0wsMkJBQTJCLEdBRTVCLE1BQU0sNkJBQTZCLENBQUM7OztBQVJyQyxNQUFNLFlBQVksR0FBRyxFQUFFLENBQUM7QUErQ3hCLE1BQU0sT0FBTyxPQUFPO0lBQ2xCLFlBQW9CLFFBQW1CO1FBQW5CLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDdkMsUUFBRyxHQUFHLEdBQUcsQ0FBQztRQUNWLGdCQUFXLEdBQUcsV0FBVyxDQUFDO1FBZWhCLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzlCLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzVCLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzVCLFNBQUksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzFCLFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzdCLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBSXJDLGdCQUFXLEdBQWdDLEtBQUssQ0FBQztRQUNqRCxRQUFHLEdBQXdCLFNBQVMsQ0FBQztJQTNCTSxDQUFDO0lBNEI1QyxZQUFZLENBQ1YsS0FBb0M7UUFFcEMsSUFBSSxJQUFJLENBQUMsUUFB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TUFBTTtnQkFDRyxNQUFNO3NCQUFmLE1BQU07Z0JBQ0csTUFBTTtzQkFBZixNQUFNO2dCQUNHLElBQUk7c0JBQWIsTUFBTTtnQkFDRyxPQUFPO3NCQUFoQixNQUFNO2dCQUNHLEtBQUs7c0JBQWQsTUFBTTtnQkFFWSxJQUFJO3NCQUF0QixTQUFTO3VCQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgQ29tcG9uZW50LFxuICBWaWV3Q2hpbGQsXG4gIEVsZW1lbnRSZWYsXG4gIElucHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxuUmVuZGVyZXIyIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5cbmNvbnN0IGRlZmF1bHRQcm9wcyA9IHt9O1xuXG5pbXBvcnQgeyBEQlJhZGlvUHJvcHMsIERCUmFkaW9TdGF0ZSB9IGZyb20gXCIuL21vZGVsXCI7XG5pbXBvcnQgeyBjbHMsIGdldEhpZGVQcm9wLCB1dWlkIH0gZnJvbSBcIi4uLy4uL3V0aWxzXCI7XG5pbXBvcnQgeyBDaGFuZ2VFdmVudCwgSW50ZXJhY3Rpb25FdmVudCB9IGZyb20gXCIuLi8uLi9zaGFyZWQvbW9kZWxcIjtcbmltcG9ydCB7XG4gIGhhbmRsZUZyYW1ld29ya0V2ZW50QW5ndWxhcixcbiAgaGFuZGxlRnJhbWV3b3JrRXZlbnRWdWUsXG59IGZyb20gXCIuLi8uLi91dGlscy9mb3JtLWNvbXBvbmVudHNcIjtcblxuQENvbXBvbmVudCh7XG5cdFx0cHJvdmlkZXJzOiBbe1xuXHRcdFx0cHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG5cdFx0XHR1c2VFeGlzdGluZzogREJSYWRpbyxcblx0XHRcdG11bHRpOiB0cnVlXG5cdFx0fV0sXHRcbiAgc2VsZWN0b3I6IFwiZGItcmFkaW9cIixcbiAgdGVtcGxhdGU6IGBcbiAgICA8bGFiZWxcbiAgICAgIFthdHRyLmRhdGEtc2l6ZV09XCJzaXplXCJcbiAgICAgIFthdHRyLmRhdGEtaGlkZS1sYWJlbF09XCJnZXRIaWRlUHJvcChzaG93TGFiZWwpXCJcbiAgICAgIFtjbGFzc109XCJjbHMoJ2RiLXJhZGlvJywgY2xhc3NOYW1lKVwiXG4gICAgICBbYXR0ci5mb3JdPVwiX2lkXCJcbiAgICA+XG4gICAgICA8aW5wdXRcbiAgICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgICAgW2F0dHIuYXJpYS1pbnZhbGlkXT1cInZhbGlkYXRpb24gPT09ICdpbnZhbGlkJ1wiXG4gICAgICAgIFthdHRyLmRhdGEtY3VzdG9tLXZhbGlkaXR5XT1cInZhbGlkYXRpb25cIlxuICAgICAgICAjX3JlZlxuICAgICAgICBbYXR0ci5pZF09XCJfaWRcIlxuICAgICAgICBbYXR0ci5uYW1lXT1cIm5hbWVcIlxuICAgICAgICBbY2hlY2tlZF09XCJjaGVja2VkXCJcbiAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgICAgW2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJkZXNjcmliZWRieWlkXCJcbiAgICAgICAgW2F0dHIudmFsdWVdPVwidmFsdWVcIlxuICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgICAoY2hhbmdlKT1cImhhbmRsZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgKGJsdXIpPVwiaGFuZGxlQmx1cigkZXZlbnQpXCJcbiAgICAgICAgKGZvY3VzKT1cImhhbmRsZUZvY3VzKCRldmVudClcIlxuICAgICAgLz5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsYWJlbFwiPnt7bGFiZWx9fTwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiEobGFiZWwpXCI+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvbmctY29udGFpbmVyPlxuICAgIDwvbGFiZWw+XG4gIGAsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBEQlJhZGlvIGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuXHRcdGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikgeyB9XG4gIGNscyA9IGNscztcbiAgZ2V0SGlkZVByb3AgPSBnZXRIaWRlUHJvcDtcblxuICBASW5wdXQoKSBpZCE6IERCUmFkaW9Qcm9wc1tcImlkXCJdO1xuICBASW5wdXQoKSBjaGVja2VkITogREJSYWRpb1Byb3BzW1wiY2hlY2tlZFwiXTtcbiAgQElucHV0KCkgc2l6ZSE6IERCUmFkaW9Qcm9wc1tcInNpemVcIl07XG4gIEBJbnB1dCgpIHNob3dMYWJlbCE6IERCUmFkaW9Qcm9wc1tcInNob3dMYWJlbFwiXTtcbiAgQElucHV0KCkgY2xhc3NOYW1lITogREJSYWRpb1Byb3BzW1wiY2xhc3NOYW1lXCJdO1xuICBASW5wdXQoKSB2YWxpZGF0aW9uITogREJSYWRpb1Byb3BzW1widmFsaWRhdGlvblwiXTtcbiAgQElucHV0KCkgbmFtZSE6IERCUmFkaW9Qcm9wc1tcIm5hbWVcIl07XG4gIEBJbnB1dCgpIGRpc2FibGVkITogREJSYWRpb1Byb3BzW1wiZGlzYWJsZWRcIl07XG4gIEBJbnB1dCgpIGRlc2NyaWJlZGJ5aWQhOiBEQlJhZGlvUHJvcHNbXCJkZXNjcmliZWRieWlkXCJdO1xuICBASW5wdXQoKSB2YWx1ZSE6IERCUmFkaW9Qcm9wc1tcInZhbHVlXCJdO1xuICBASW5wdXQoKSByZXF1aXJlZCE6IERCUmFkaW9Qcm9wc1tcInJlcXVpcmVkXCJdO1xuICBASW5wdXQoKSBsYWJlbCE6IERCUmFkaW9Qcm9wc1tcImxhYmVsXCJdO1xuXG4gIEBPdXRwdXQoKSBvbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIG9uQmx1ciA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGJsdXIgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBvbkZvY3VzID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgZm9jdXMgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQFZpZXdDaGlsZChcIl9yZWZcIikgX3JlZiE6IEVsZW1lbnRSZWYgfCB1bmRlZmluZWQ7XG5cbiAgaW5pdGlhbGl6ZWQ6IERCUmFkaW9TdGF0ZVtcImluaXRpYWxpemVkXCJdID0gZmFsc2U7XG4gIF9pZDogREJSYWRpb1N0YXRlW1wiX2lkXCJdID0gdW5kZWZpbmVkO1xuICBoYW5kbGVDaGFuZ2UoXG4gICAgZXZlbnQ6IENoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+XG4gICk6IFJldHVyblR5cGU8REJSYWRpb1N0YXRlW1wiaGFuZGxlQ2hhbmdlXCJdPiB7XG4gICAgaWYgKHRoaXMub25DaGFuZ2UpIHtcbiAgICAgIHRoaXMub25DaGFuZ2UuZW1pdChldmVudCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmNoYW5nZSkge1xuICAgICAgdGhpcy5jaGFuZ2UuZW1pdChldmVudCk7XG4gICAgfVxuICAgIGhhbmRsZUZyYW1ld29ya0V2ZW50QW5ndWxhcih0aGlzLCBldmVudCk7XG4gIH1cbiAgaGFuZGxlQmx1cihcbiAgICBldmVudDogSW50ZXJhY3Rpb25FdmVudDxIVE1MSW5wdXRFbGVtZW50PlxuICApOiBSZXR1cm5UeXBlPERCUmFkaW9TdGF0ZVtcImhhbmRsZUJsdXJcIl0+IHtcbiAgICBpZiAodGhpcy5vbkJsdXIpIHtcbiAgICAgIHRoaXMub25CbHVyLmVtaXQoZXZlbnQpO1xuICAgIH1cbiAgICBpZiAodGhpcy5ibHVyKSB7XG4gICAgICB0aGlzLmJsdXIuZW1pdChldmVudCk7XG4gICAgfVxuICB9XG4gIGhhbmRsZUZvY3VzKFxuICAgIGV2ZW50OiBJbnRlcmFjdGlvbkV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+XG4gICk6IFJldHVyblR5cGU8REJSYWRpb1N0YXRlW1wiaGFuZGxlRm9jdXNcIl0+IHtcbiAgICBpZiAodGhpcy5vbkZvY3VzKSB7XG4gICAgICB0aGlzLm9uRm9jdXMuZW1pdChldmVudCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmZvY3VzKSB7XG4gICAgICB0aGlzLmZvY3VzLmVtaXQoZXZlbnQpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBQYXNzZXMgYGFyaWEtKmAsIGBkYXRhLSpgICYgYGNsYXNzYCBhdHRyaWJ1dGVzIHRvIGNvcnJlY3QgY2hpbGQuIFVzZWQgaW4gYW5ndWxhciBhbmQgc3RlbmNpbC5cbiAgICogQHBhcmFtIGVsZW1lbnQgIHRoZSByZWYgZm9yIHRoZSBjb21wb25lbnRcbiAgICogQHBhcmFtIGN1c3RvbUVsZW1lbnRTZWxlY3RvciAgdGhlIGN1c3RvbSBlbGVtZW50IGxpa2UgYG15LWNvbXBvbmVudGBcbiAgICovXG4gIHByaXZhdGUgZW5hYmxlQXR0cmlidXRlUGFzc2luZyhcbiAgICBlbGVtZW50OiBIVE1MRWxlbWVudCB8IG51bGwsXG4gICAgY3VzdG9tRWxlbWVudFNlbGVjdG9yOiBzdHJpbmdcbiAgKSB7XG4gICAgY29uc3QgcGFyZW50ID0gZWxlbWVudD8uY2xvc2VzdChjdXN0b21FbGVtZW50U2VsZWN0b3IpO1xuICAgIGlmIChlbGVtZW50ICYmIHBhcmVudCkge1xuICAgICAgY29uc3QgYXR0cmlidXRlcyA9IHBhcmVudC5hdHRyaWJ1dGVzO1xuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhdHRyaWJ1dGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGNvbnN0IGF0dHIgPSBhdHRyaWJ1dGVzLml0ZW0oaSk7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBhdHRyICYmXG4gICAgICAgICAgKGF0dHIubmFtZS5zdGFydHNXaXRoKFwiZGF0YS1cIikgfHwgYXR0ci5uYW1lLnN0YXJ0c1dpdGgoXCJhcmlhLVwiKSlcbiAgICAgICAgKSB7XG4gICAgICAgICAgZWxlbWVudC5zZXRBdHRyaWJ1dGUoYXR0ci5uYW1lLCBhdHRyLnZhbHVlKTtcbiAgICAgICAgICBwYXJlbnQucmVtb3ZlQXR0cmlidXRlKGF0dHIubmFtZSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGF0dHIgJiYgYXR0ci5uYW1lID09PSBcImNsYXNzXCIpIHtcbiAgICAgICAgICBjb25zdCBpc1dlYkNvbXBvbmVudCA9IGF0dHIudmFsdWUuaW5jbHVkZXMoXCJoeWRyYXRlZFwiKTtcbiAgICAgICAgICBjb25zdCB2YWx1ZSA9IGF0dHIudmFsdWUucmVwbGFjZShcImh5ZHJhdGVkXCIsIFwiXCIpLnRyaW0oKTtcbiAgICAgICAgICBjb25zdCBjdXJyZW50Q2xhc3MgPSBlbGVtZW50LmdldEF0dHJpYnV0ZShcImNsYXNzXCIpO1xuICAgICAgICAgIGVsZW1lbnQuc2V0QXR0cmlidXRlKFxuICAgICAgICAgICAgYXR0ci5uYW1lLFxuICAgICAgICAgICAgYCR7Y3VycmVudENsYXNzID8gYCR7Y3VycmVudENsYXNzfSBgIDogXCJcIn0ke3ZhbHVlfWBcbiAgICAgICAgICApO1xuICAgICAgICAgIGlmIChpc1dlYkNvbXBvbmVudCkge1xuICAgICAgICAgICAgLy8gU3RlbmNpbCBpcyB1c2luZyB0aGlzIGNsYXNzIGZvciBsYXp5IGxvYWRpbmcgY29tcG9uZW50XG4gICAgICAgICAgICBwYXJlbnQuc2V0QXR0cmlidXRlKFwiY2xhc3NcIiwgXCJoeWRyYXRlZFwiKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcGFyZW50LnJlbW92ZUF0dHJpYnV0ZShhdHRyLm5hbWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIFxuXHRcdHdyaXRlVmFsdWUodmFsdWU6IGFueSkge1xuXHRcdFx0aWYodmFsdWUpe1xuXHRcdCAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuXG5cdFx0ICBpZiAodGhpcy5fcmVmPy5uYXRpdmVFbGVtZW50KSB7XG5cdFx0XHQgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLl9yZWY/Lm5hdGl2ZUVsZW1lbnQsICd2YWx1ZScsIHZhbHVlKTtcblx0XHQgIH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHRwcm9wYWdhdGVDaGFuZ2UoXzogYW55KSB7fVxuXG5cdFx0cmVnaXN0ZXJPbkNoYW5nZShvbkNoYW5nZTogYW55KSB7XG5cdFx0ICB0aGlzLnByb3BhZ2F0ZUNoYW5nZSA9IG9uQ2hhbmdlO1xuXHRcdH1cblxuXHRcdHJlZ2lzdGVyT25Ub3VjaGVkKG9uVG91Y2hlZDogYW55KSB7XG5cdFx0IC8vdGhpcy5vblRvdWNoZWQgPSBvblRvdWNoZWQ7XG5cdFx0fVxuXG5cdFx0c2V0RGlzYWJsZWRTdGF0ZShkaXNhYmxlZDogYm9vbGVhbikge1xuXHRcdCAgdGhpcy5kaXNhYmxlZCA9IGRpc2FibGVkO1xuXHRcdH1cblxuXHRcdG5nT25Jbml0KCkge1xuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSBcInVuZGVmaW5lZFwiKSB7XG4gICAgICB0aGlzLmluaXRpYWxpemVkID0gdHJ1ZTtcbiAgICAgIHRoaXMuX2lkID0gdGhpcy5pZCA/PyBgcmFkaW8tJHt1dWlkKCl9YDtcbiAgICB9XG4gIH1cblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgY29uc3QgZWxlbWVudDogSFRNTEVsZW1lbnQgfCBudWxsID0gdGhpcy5fcmVmPy5uYXRpdmVFbGVtZW50O1xuICAgIHRoaXMuZW5hYmxlQXR0cmlidXRlUGFzc2luZyhlbGVtZW50LCBcImRiLXJhZGlvXCIpO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRDaGVja2VkKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gXCJ1bmRlZmluZWRcIikge1xuICAgICAgaWYgKHRoaXMuY2hlY2tlZCAmJiB0aGlzLmluaXRpYWxpemVkICYmIHRoaXMuX3JlZj8ubmF0aXZlRWxlbWVudCkge1xuICAgICAgICB0aGlzLl9yZWYubmF0aXZlRWxlbWVudC5jaGVja2VkID0gdHJ1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==
|