@salutejs/plasma-new-hope 0.328.0-canary.2044.15883067405.0 → 0.328.0-canary.2044.15920656086.0
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/cjs/components/Autocomplete/Autocomplete.css +1 -1
- package/cjs/components/Combobox/ComboboxNew/Combobox.css +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDate.css +1 -1
- package/cjs/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +1 -1
- package/cjs/components/DatePicker/SingleDate/SingleDate.css +1 -1
- package/cjs/components/Pagination/Pagination.css +1 -1
- package/cjs/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +1 -1
- package/cjs/components/Range/Range.css +1 -1
- package/cjs/components/Select/Select.css +1 -1
- package/cjs/components/Select/ui/Target/Target.css +1 -1
- package/cjs/components/Select/ui/Target/ui/Textfield/Textfield.css +1 -1
- package/cjs/components/Slider/Slider.css +1 -1
- package/cjs/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.css +1 -1
- package/cjs/components/Table/Table.css +1 -1
- package/cjs/components/Table/ui/Cell/Cell.css +1 -1
- package/cjs/components/Table/ui/EditableCell/EditableCell.css +1 -1
- package/cjs/components/Table/ui/HeadCell/HeadCell.css +1 -1
- package/cjs/components/Table/ui/HeadCell/ui/Filter/Filter.css +1 -1
- package/cjs/components/TextArea/TextArea.js +7 -3
- package/cjs/components/TextArea/TextArea.js.map +1 -1
- package/cjs/components/TextArea/TextArea.tokens.js +4 -1
- package/cjs/components/TextArea/TextArea.tokens.js.map +1 -1
- package/cjs/components/TextArea/variations/_size/base.js +1 -1
- package/cjs/components/TextArea/variations/_size/base.js.map +1 -1
- package/cjs/components/TextArea/variations/_size/base_1mq4sb2.css +1 -0
- package/cjs/components/TextField/TextField.js +12 -3
- package/cjs/components/TextField/TextField.js.map +1 -1
- package/cjs/components/TextField/TextField.tokens.js +4 -1
- package/cjs/components/TextField/TextField.tokens.js.map +1 -1
- package/cjs/components/TextField/variations/_size/base.js +1 -1
- package/cjs/components/TextField/variations/_size/base.js.map +1 -1
- package/cjs/components/TextField/variations/_size/base_1oec4lw.css +1 -0
- package/cjs/components/Tour/Tour.css +4 -0
- package/cjs/components/Tour/Tour.js +223 -0
- package/cjs/components/Tour/Tour.js.map +1 -0
- package/cjs/components/Tour/Tour.styles.js +58 -0
- package/cjs/components/Tour/Tour.styles.js.map +1 -0
- package/cjs/components/Tour/Tour.styles_hmd79i.css +4 -0
- package/cjs/components/Tour/Tour.tokens.js +21 -0
- package/cjs/components/Tour/Tour.tokens.js.map +1 -0
- package/cjs/components/Tour/utils/index.js +126 -0
- package/cjs/components/Tour/utils/index.js.map +1 -0
- package/cjs/components/Tour/variatoins/_size/base.js +9 -0
- package/cjs/components/Tour/variatoins/_size/base.js.map +1 -0
- package/cjs/components/Tour/variatoins/_view/base.js +9 -0
- package/cjs/components/Tour/variatoins/_view/base.js.map +1 -0
- package/cjs/index.css +8 -1
- package/cjs/index.js +6 -0
- package/cjs/index.js.map +1 -1
- package/emotion/cjs/components/TextArea/TextArea.js +8 -4
- package/emotion/cjs/components/TextArea/TextArea.tokens.js +3 -1
- package/emotion/cjs/components/TextArea/variations/_size/base.js +2 -1
- package/emotion/cjs/components/TextField/TextField.js +13 -4
- package/emotion/cjs/components/TextField/TextField.tokens.js +3 -1
- package/emotion/cjs/components/TextField/variations/_size/base.js +1 -1
- package/emotion/cjs/components/Tour/Tour.js +387 -0
- package/emotion/cjs/components/Tour/Tour.styles.js +55 -0
- package/emotion/cjs/components/Tour/Tour.tokens.js +31 -0
- package/emotion/cjs/components/Tour/Tour.types.js +4 -0
- package/emotion/cjs/components/Tour/index.js +26 -0
- package/emotion/cjs/components/Tour/utils/index.js +157 -0
- package/emotion/cjs/components/Tour/variatoins/_size/base.js +12 -0
- package/emotion/cjs/components/Tour/variatoins/_view/base.js +12 -0
- package/emotion/cjs/examples/plasma_b2c/components/Tour/Tour.config.js +26 -0
- package/emotion/cjs/examples/plasma_b2c/components/Tour/Tour.js +15 -0
- package/emotion/cjs/examples/plasma_web/components/Tour/Tour.config.js +26 -0
- package/emotion/cjs/examples/plasma_web/components/Tour/Tour.js +15 -0
- package/emotion/cjs/index.js +1 -0
- package/emotion/es/components/TextArea/TextArea.js +8 -4
- package/emotion/es/components/TextArea/TextArea.tokens.js +3 -1
- package/emotion/es/components/TextArea/variations/_size/base.js +2 -1
- package/emotion/es/components/TextField/TextField.js +13 -4
- package/emotion/es/components/TextField/TextField.tokens.js +3 -1
- package/emotion/es/components/TextField/variations/_size/base.js +1 -1
- package/emotion/es/components/Tour/Tour.js +328 -0
- package/emotion/es/components/Tour/Tour.styles.js +26 -0
- package/emotion/es/components/Tour/Tour.tokens.js +13 -0
- package/emotion/es/components/Tour/Tour.types.js +1 -0
- package/emotion/es/components/Tour/index.js +2 -0
- package/emotion/es/components/Tour/utils/index.js +127 -0
- package/emotion/es/components/Tour/variatoins/_size/base.js +2 -0
- package/emotion/es/components/Tour/variatoins/_view/base.js +2 -0
- package/emotion/es/examples/plasma_b2c/components/Tour/Tour.config.js +16 -0
- package/emotion/es/examples/plasma_b2c/components/Tour/Tour.js +5 -0
- package/emotion/es/examples/plasma_web/components/Tour/Tour.config.js +16 -0
- package/emotion/es/examples/plasma_web/components/Tour/Tour.js +5 -0
- package/emotion/es/index.js +1 -0
- package/es/components/Autocomplete/Autocomplete.css +1 -1
- package/es/components/Combobox/ComboboxNew/Combobox.css +1 -1
- package/es/components/DatePicker/RangeDate/RangeDate.css +1 -1
- package/es/components/DatePicker/RangeDate/RangeDatePopover/RangeDatePopover.css +1 -1
- package/es/components/DatePicker/SingleDate/SingleDate.css +1 -1
- package/es/components/Pagination/Pagination.css +1 -1
- package/es/components/Pagination/ui/PaginationSelectPerPage/PaginationSelectPerPage.css +1 -1
- package/es/components/Range/Range.css +1 -1
- package/es/components/Select/Select.css +1 -1
- package/es/components/Select/ui/Target/Target.css +1 -1
- package/es/components/Select/ui/Target/ui/Textfield/Textfield.css +1 -1
- package/es/components/Slider/Slider.css +1 -1
- package/es/components/Slider/components/DoubleUncontrolled/DoubleUncontrolled.css +1 -1
- package/es/components/Table/Table.css +1 -1
- package/es/components/Table/ui/Cell/Cell.css +1 -1
- package/es/components/Table/ui/EditableCell/EditableCell.css +1 -1
- package/es/components/Table/ui/HeadCell/HeadCell.css +1 -1
- package/es/components/Table/ui/HeadCell/ui/Filter/Filter.css +1 -1
- package/es/components/TextArea/TextArea.js +7 -3
- package/es/components/TextArea/TextArea.js.map +1 -1
- package/es/components/TextArea/TextArea.tokens.js +4 -1
- package/es/components/TextArea/TextArea.tokens.js.map +1 -1
- package/es/components/TextArea/variations/_size/base.js +1 -1
- package/es/components/TextArea/variations/_size/base.js.map +1 -1
- package/es/components/TextArea/variations/_size/base_1mq4sb2.css +1 -0
- package/es/components/TextField/TextField.js +12 -3
- package/es/components/TextField/TextField.js.map +1 -1
- package/es/components/TextField/TextField.tokens.js +4 -1
- package/es/components/TextField/TextField.tokens.js.map +1 -1
- package/es/components/TextField/variations/_size/base.js +1 -1
- package/es/components/TextField/variations/_size/base.js.map +1 -1
- package/es/components/TextField/variations/_size/base_1oec4lw.css +1 -0
- package/es/components/Tour/Tour.css +4 -0
- package/es/components/Tour/Tour.js +214 -0
- package/es/components/Tour/Tour.js.map +1 -0
- package/es/components/Tour/Tour.styles.js +51 -0
- package/es/components/Tour/Tour.styles.js.map +1 -0
- package/es/components/Tour/Tour.styles_hmd79i.css +4 -0
- package/es/components/Tour/Tour.tokens.js +16 -0
- package/es/components/Tour/Tour.tokens.js.map +1 -0
- package/es/components/Tour/utils/index.js +117 -0
- package/es/components/Tour/utils/index.js.map +1 -0
- package/es/components/Tour/variatoins/_size/base.js +5 -0
- package/es/components/Tour/variatoins/_size/base.js.map +1 -0
- package/es/components/Tour/variatoins/_size/base_x642ct.css +1 -0
- package/es/components/Tour/variatoins/_view/base.js +5 -0
- package/es/components/Tour/variatoins/_view/base.js.map +1 -0
- package/es/components/Tour/variatoins/_view/base_x642ct.css +1 -0
- package/es/index.css +8 -1
- package/es/index.js +2 -0
- package/es/index.js.map +1 -1
- package/package.json +4 -4
- package/styled-components/cjs/components/TextArea/TextArea.js +7 -3
- package/styled-components/cjs/components/TextArea/TextArea.tokens.js +3 -1
- package/styled-components/cjs/components/TextArea/variations/_size/base.js +5 -2
- package/styled-components/cjs/components/TextField/TextField.js +12 -3
- package/styled-components/cjs/components/TextField/TextField.tokens.js +3 -1
- package/styled-components/cjs/components/TextField/variations/_size/base.js +3 -1
- package/styled-components/cjs/components/Tour/Tour.js +387 -0
- package/styled-components/cjs/components/Tour/Tour.styles.js +66 -0
- package/styled-components/cjs/components/Tour/Tour.tokens.js +31 -0
- package/styled-components/cjs/components/Tour/Tour.types.js +4 -0
- package/styled-components/cjs/components/Tour/index.js +26 -0
- package/styled-components/cjs/components/Tour/utils/index.js +157 -0
- package/styled-components/cjs/components/Tour/variatoins/_size/base.js +14 -0
- package/styled-components/cjs/components/Tour/variatoins/_view/base.js +14 -0
- package/styled-components/cjs/examples/plasma_b2c/components/Tour/Tour.config.js +33 -0
- package/styled-components/cjs/examples/plasma_b2c/components/Tour/Tour.js +15 -0
- package/styled-components/cjs/examples/plasma_web/components/Tour/Tour.config.js +33 -0
- package/styled-components/cjs/examples/plasma_web/components/Tour/Tour.js +15 -0
- package/styled-components/cjs/index.js +1 -0
- package/styled-components/es/components/TextArea/TextArea.js +7 -3
- package/styled-components/es/components/TextArea/TextArea.tokens.js +3 -1
- package/styled-components/es/components/TextArea/variations/_size/base.js +5 -2
- package/styled-components/es/components/TextField/TextField.js +12 -3
- package/styled-components/es/components/TextField/TextField.tokens.js +3 -1
- package/styled-components/es/components/TextField/variations/_size/base.js +3 -1
- package/styled-components/es/components/Tour/Tour.js +328 -0
- package/styled-components/es/components/Tour/Tour.styles.js +37 -0
- package/styled-components/es/components/Tour/Tour.tokens.js +13 -0
- package/styled-components/es/components/Tour/Tour.types.js +1 -0
- package/styled-components/es/components/Tour/index.js +2 -0
- package/styled-components/es/components/Tour/utils/index.js +127 -0
- package/styled-components/es/components/Tour/variatoins/_size/base.js +4 -0
- package/styled-components/es/components/Tour/variatoins/_view/base.js +4 -0
- package/styled-components/es/examples/plasma_b2c/components/Tour/Tour.config.js +23 -0
- package/styled-components/es/examples/plasma_b2c/components/Tour/Tour.js +5 -0
- package/styled-components/es/examples/plasma_web/components/Tour/Tour.config.js +23 -0
- package/styled-components/es/examples/plasma_web/components/Tour/Tour.js +5 -0
- package/styled-components/es/index.js +1 -0
- package/types/components/TextArea/TextArea.d.ts.map +1 -1
- package/types/components/TextArea/TextArea.tokens.d.ts +1 -0
- package/types/components/TextArea/TextArea.tokens.d.ts.map +1 -1
- package/types/components/TextArea/variations/_size/base.d.ts.map +1 -1
- package/types/components/TextField/TextField.d.ts.map +1 -1
- package/types/components/TextField/TextField.tokens.d.ts +1 -0
- package/types/components/TextField/TextField.tokens.d.ts.map +1 -1
- package/types/components/TextField/variations/_size/base.d.ts.map +1 -1
- package/types/components/Tour/Tour.d.ts +23 -0
- package/types/components/Tour/Tour.d.ts.map +1 -0
- package/types/components/Tour/Tour.styles.d.ts +11 -0
- package/types/components/Tour/Tour.styles.d.ts.map +1 -0
- package/types/components/Tour/Tour.tokens.d.ts +14 -0
- package/types/components/Tour/Tour.tokens.d.ts.map +1 -0
- package/types/components/Tour/Tour.types.d.ts +86 -0
- package/types/components/Tour/Tour.types.d.ts.map +1 -0
- package/types/components/Tour/index.d.ts +4 -0
- package/types/components/Tour/index.d.ts.map +1 -0
- package/types/components/Tour/utils/index.d.ts +7 -0
- package/types/components/Tour/utils/index.d.ts.map +1 -0
- package/types/components/Tour/variatoins/_size/base.d.ts +2 -0
- package/types/components/Tour/variatoins/_size/base.d.ts.map +1 -0
- package/types/components/Tour/variatoins/_view/base.d.ts +2 -0
- package/types/components/Tour/variatoins/_view/base.d.ts.map +1 -0
- package/types/index.d.ts +1 -0
- package/types/index.d.ts.map +1 -1
- package/cjs/components/TextField/variations/_size/base_uulqii.css +0 -1
- package/es/components/TextField/variations/_size/base_uulqii.css +0 -1
- /package/cjs/components/{TextArea/variations → Tour/variatoins}/_size/base_x642ct.css +0 -0
- /package/{es/components/TextArea/variations/_size → cjs/components/Tour/variatoins/_view}/base_x642ct.css +0 -0
@@ -0,0 +1,12 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
3
|
+
value: true
|
4
|
+
});
|
5
|
+
Object.defineProperty(exports, "base", {
|
6
|
+
enumerable: true,
|
7
|
+
get: function() {
|
8
|
+
return base;
|
9
|
+
}
|
10
|
+
});
|
11
|
+
var _react = require("@emotion/react");
|
12
|
+
var base = (0, /*#__PURE__*/ _react.css)("base", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjLWVtb3Rpb24vY29tcG9uZW50cy9Ub3VyL3ZhcmlhdG9pbnMvX3ZpZXcvYmFzZS50cyIsInNvdXJjZXMiOlsic3JjLWVtb3Rpb24vY29tcG9uZW50cy9Ub3VyL3ZhcmlhdG9pbnMvX3ZpZXcvYmFzZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbmV4cG9ydCBjb25zdCBiYXNlID0gY3NzYGA7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRW9CIn0= */");
|
@@ -0,0 +1,26 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
3
|
+
value: true
|
4
|
+
});
|
5
|
+
Object.defineProperty(exports, "config", {
|
6
|
+
enumerable: true,
|
7
|
+
get: function() {
|
8
|
+
return config;
|
9
|
+
}
|
10
|
+
});
|
11
|
+
var _react = require("@emotion/react");
|
12
|
+
var _Tourtokens = require("../../../../components/Tour/Tour.tokens");
|
13
|
+
var config = {
|
14
|
+
defaults: {
|
15
|
+
view: 'accent',
|
16
|
+
size: 's'
|
17
|
+
},
|
18
|
+
variations: {
|
19
|
+
view: {
|
20
|
+
default: (0, /*#__PURE__*/ _react.css)("default", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjLWVtb3Rpb24vZXhhbXBsZXMvcGxhc21hX2IyYy9jb21wb25lbnRzL1RvdXIvVG91ci5jb25maWcudHMiLCJzb3VyY2VzIjpbInNyYy1lbW90aW9uL2V4YW1wbGVzL3BsYXNtYV9iMmMvY29tcG9uZW50cy9Ub3VyL1RvdXIuY29uZmlnLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcblxuaW1wb3J0IHsgdG9rZW5zIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tcG9uZW50cy9Ub3VyL1RvdXIudG9rZW5zJztcblxuZXhwb3J0IGNvbnN0IGNvbmZpZyA9IHtcbiAgICBkZWZhdWx0czoge1xuICAgICAgICB2aWV3OiAnYWNjZW50JyxcbiAgICAgICAgc2l6ZTogJ3MnLFxuICAgIH0sXG4gICAgdmFyaWF0aW9uczoge1xuICAgICAgICB2aWV3OiB7XG4gICAgICAgICAgICBkZWZhdWx0OiBjc3NgYCxcbiAgICAgICAgfSxcbiAgICAgICAgc2l6ZToge1xuICAgICAgICAgICAgczogY3NzYFxuICAgICAgICAgICAgICAgICR7dG9rZW5zLmNhcmRQYWRkaW5nfTogMC43NXJlbTtcbiAgICAgICAgICAgICAgICAke3Rva2Vucy5jYXJkUmFkaXVzfTogMC43NXJlbTtcbiAgICAgICAgICAgICAgICAke3Rva2Vucy5oaWdobGlnaHRSYWRpdXN9OiAwLjc1cmVtO1xuICAgICAgICAgICAgYCxcbiAgICAgICAgfSxcbiAgICB9LFxufTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFXcUIifQ== */")
|
21
|
+
},
|
22
|
+
size: {
|
23
|
+
s: (0, /*#__PURE__*/ _react.css)(_Tourtokens.tokens.cardPadding, ":0.75rem;", _Tourtokens.tokens.cardRadius, ":0.75rem;", _Tourtokens.tokens.highlightRadius, ":0.75rem;", "s", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjLWVtb3Rpb24vZXhhbXBsZXMvcGxhc21hX2IyYy9jb21wb25lbnRzL1RvdXIvVG91ci5jb25maWcudHMiLCJzb3VyY2VzIjpbInNyYy1lbW90aW9uL2V4YW1wbGVzL3BsYXNtYV9iMmMvY29tcG9uZW50cy9Ub3VyL1RvdXIuY29uZmlnLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcblxuaW1wb3J0IHsgdG9rZW5zIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tcG9uZW50cy9Ub3VyL1RvdXIudG9rZW5zJztcblxuZXhwb3J0IGNvbnN0IGNvbmZpZyA9IHtcbiAgICBkZWZhdWx0czoge1xuICAgICAgICB2aWV3OiAnYWNjZW50JyxcbiAgICAgICAgc2l6ZTogJ3MnLFxuICAgIH0sXG4gICAgdmFyaWF0aW9uczoge1xuICAgICAgICB2aWV3OiB7XG4gICAgICAgICAgICBkZWZhdWx0OiBjc3NgYCxcbiAgICAgICAgfSxcbiAgICAgICAgc2l6ZToge1xuICAgICAgICAgICAgczogY3NzYFxuICAgICAgICAgICAgICAgICR7dG9rZW5zLmNhcmRQYWRkaW5nfTogMC43NXJlbTtcbiAgICAgICAgICAgICAgICAke3Rva2Vucy5jYXJkUmFkaXVzfTogMC43NXJlbTtcbiAgICAgICAgICAgICAgICAke3Rva2Vucy5oaWdobGlnaHRSYWRpdXN9OiAwLjc1cmVtO1xuICAgICAgICAgICAgYCxcbiAgICAgICAgfSxcbiAgICB9LFxufTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFjZSJ9 */")
|
24
|
+
}
|
25
|
+
}
|
26
|
+
};
|
@@ -0,0 +1,15 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
3
|
+
value: true
|
4
|
+
});
|
5
|
+
Object.defineProperty(exports, "Tour", {
|
6
|
+
enumerable: true,
|
7
|
+
get: function() {
|
8
|
+
return Tour;
|
9
|
+
}
|
10
|
+
});
|
11
|
+
var _Tour = require("../../../../components/Tour");
|
12
|
+
var _engines = require("../../../../engines");
|
13
|
+
var _Tourconfig = require("./Tour.config");
|
14
|
+
var mergedConfig = (0, _engines.mergeConfig)(_Tour.tourConfig, _Tourconfig.config);
|
15
|
+
var Tour = (0, _engines.component)(mergedConfig);
|
@@ -0,0 +1,26 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
3
|
+
value: true
|
4
|
+
});
|
5
|
+
Object.defineProperty(exports, "config", {
|
6
|
+
enumerable: true,
|
7
|
+
get: function() {
|
8
|
+
return config;
|
9
|
+
}
|
10
|
+
});
|
11
|
+
var _react = require("@emotion/react");
|
12
|
+
var _Tourtokens = require("../../../../components/Tour/Tour.tokens");
|
13
|
+
var config = {
|
14
|
+
defaults: {
|
15
|
+
view: 'accent',
|
16
|
+
size: 's'
|
17
|
+
},
|
18
|
+
variations: {
|
19
|
+
view: {
|
20
|
+
default: (0, /*#__PURE__*/ _react.css)("default", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjLWVtb3Rpb24vZXhhbXBsZXMvcGxhc21hX3dlYi9jb21wb25lbnRzL1RvdXIvVG91ci5jb25maWcudHMiLCJzb3VyY2VzIjpbInNyYy1lbW90aW9uL2V4YW1wbGVzL3BsYXNtYV93ZWIvY29tcG9uZW50cy9Ub3VyL1RvdXIuY29uZmlnLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcblxuaW1wb3J0IHsgdG9rZW5zIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tcG9uZW50cy9Ub3VyL1RvdXIudG9rZW5zJztcblxuZXhwb3J0IGNvbnN0IGNvbmZpZyA9IHtcbiAgICBkZWZhdWx0czoge1xuICAgICAgICB2aWV3OiAnYWNjZW50JyxcbiAgICAgICAgc2l6ZTogJ3MnLFxuICAgIH0sXG4gICAgdmFyaWF0aW9uczoge1xuICAgICAgICB2aWV3OiB7XG4gICAgICAgICAgICBkZWZhdWx0OiBjc3NgYCxcbiAgICAgICAgfSxcbiAgICAgICAgc2l6ZToge1xuICAgICAgICAgICAgczogY3NzYFxuICAgICAgICAgICAgICAgICR7dG9rZW5zLmNhcmRQYWRkaW5nfTogMC43NXJlbTtcbiAgICAgICAgICAgICAgICAke3Rva2Vucy5jYXJkUmFkaXVzfTogMC43NXJlbTtcbiAgICAgICAgICAgICAgICAke3Rva2Vucy5oaWdobGlnaHRSYWRpdXN9OiAwLjc1cmVtO1xuICAgICAgICAgICAgYCxcbiAgICAgICAgfSxcbiAgICB9LFxufTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFXcUIifQ== */")
|
21
|
+
},
|
22
|
+
size: {
|
23
|
+
s: (0, /*#__PURE__*/ _react.css)(_Tourtokens.tokens.cardPadding, ":0.75rem;", _Tourtokens.tokens.cardRadius, ":0.75rem;", _Tourtokens.tokens.highlightRadius, ":0.75rem;", "s", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjLWVtb3Rpb24vZXhhbXBsZXMvcGxhc21hX3dlYi9jb21wb25lbnRzL1RvdXIvVG91ci5jb25maWcudHMiLCJzb3VyY2VzIjpbInNyYy1lbW90aW9uL2V4YW1wbGVzL3BsYXNtYV93ZWIvY29tcG9uZW50cy9Ub3VyL1RvdXIuY29uZmlnLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcblxuaW1wb3J0IHsgdG9rZW5zIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tcG9uZW50cy9Ub3VyL1RvdXIudG9rZW5zJztcblxuZXhwb3J0IGNvbnN0IGNvbmZpZyA9IHtcbiAgICBkZWZhdWx0czoge1xuICAgICAgICB2aWV3OiAnYWNjZW50JyxcbiAgICAgICAgc2l6ZTogJ3MnLFxuICAgIH0sXG4gICAgdmFyaWF0aW9uczoge1xuICAgICAgICB2aWV3OiB7XG4gICAgICAgICAgICBkZWZhdWx0OiBjc3NgYCxcbiAgICAgICAgfSxcbiAgICAgICAgc2l6ZToge1xuICAgICAgICAgICAgczogY3NzYFxuICAgICAgICAgICAgICAgICR7dG9rZW5zLmNhcmRQYWRkaW5nfTogMC43NXJlbTtcbiAgICAgICAgICAgICAgICAke3Rva2Vucy5jYXJkUmFkaXVzfTogMC43NXJlbTtcbiAgICAgICAgICAgICAgICAke3Rva2Vucy5oaWdobGlnaHRSYWRpdXN9OiAwLjc1cmVtO1xuICAgICAgICAgICAgYCxcbiAgICAgICAgfSxcbiAgICB9LFxufTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFjZSJ9 */")
|
24
|
+
}
|
25
|
+
}
|
26
|
+
};
|
@@ -0,0 +1,15 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
3
|
+
value: true
|
4
|
+
});
|
5
|
+
Object.defineProperty(exports, "Tour", {
|
6
|
+
enumerable: true,
|
7
|
+
get: function() {
|
8
|
+
return Tour;
|
9
|
+
}
|
10
|
+
});
|
11
|
+
var _Tour = require("../../../../components/Tour");
|
12
|
+
var _engines = require("../../../../engines");
|
13
|
+
var _Tourconfig = require("./Tour.config");
|
14
|
+
var mergedConfig = (0, _engines.mergeConfig)(_Tour.tourConfig, _Tourconfig.config);
|
15
|
+
var Tour = (0, _engines.component)(mergedConfig);
|
package/emotion/cjs/index.js
CHANGED
@@ -82,6 +82,7 @@ _export_star(require("./components/Carousel"), exports);
|
|
82
82
|
_export_star(require("./components/PaginationDots"), exports);
|
83
83
|
_export_star(require("./components/CodeInput"), exports);
|
84
84
|
_export_star(require("./components/CodeField"), exports);
|
85
|
+
_export_star(require("./components/Tour"), exports);
|
85
86
|
function _export_star(from, to) {
|
86
87
|
Object.keys(from).forEach(function(k) {
|
87
88
|
if (k !== "default" && !Object.prototype.hasOwnProperty.call(to, k)) {
|
@@ -130,7 +130,7 @@ import { base as hintSizeCSS } from "./variations/_hint-size/base";
|
|
130
130
|
import { HintComponent } from "./ui/Hint/Hint";
|
131
131
|
var innerPlaceholderUp = classes.innerPlaceholderUp, focusedOuterPlaceholderColor = classes.focusedOuterPlaceholderColor, hidePlaceHolder = classes.hidePlaceHolder, styledContainer = classes.styledContainer, styledTextArea = classes.styledTextArea, styledTextAreaWrapper = classes.styledTextAreaWrapper, styledPlaceholder = classes.styledPlaceholder, styledHelpers = classes.styledHelpers;
|
132
132
|
var optionalText = 'optional';
|
133
|
-
var base = /*#__PURE__*/ css(applyDynamicLabel, ";position:relative;box-sizing:border-box;", "base", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjLWVtb3Rpb24vY29tcG9uZW50cy9UZXh0QXJlYS9UZXh0QXJlYS50c3giLCJzb3VyY2VzIjpbInNyYy1lbW90aW9uL2NvbXBvbmVudHMvVGV4dEFyZWEvVGV4dEFyZWEudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBmb3J3YXJkUmVmLCB1c2VTdGF0ZSwgY3JlYXRlUmVmLCB1c2VDYWxsYmFjaywgdXNlUmVmLCBNb3VzZUV2ZW50SGFuZGxlciwgdXNlTGF5b3V0RWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgdXNlRm9ya1JlZiwgdXNlUmVzaXplT2JzZXJ2ZXIgfSBmcm9tICdAc2FsdXRlanMvcGxhc21hLWNvcmUnO1xuXG5pbXBvcnQgeyBjeCwgbWVyZ2VSZWZzIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHR5cGUgeyBSb290UHJvcHMgfSBmcm9tICcuLi8uLi9lbmdpbmVzL3R5cGVzJztcbmltcG9ydCB7IHVzZU91dHNpZGVDbGljayB9IGZyb20gJy4uLy4uL2hvb2tzJztcblxuaW1wb3J0IHsgYXBwbHlEeW5hbWljTGFiZWwgfSBmcm9tICcuL21peGlucyc7XG5pbXBvcnQgeyB1c2VBdXRvUmVzaXplLCBST09UX0ZPTlRfU0laRSB9IGZyb20gJy4vaG9va3MnO1xuaW1wb3J0IHtcbiAgICBTdHlsZWRDb250ZW50LFxuICAgIFN0eWxlZEhlbHBlcnMsXG4gICAgU3R5bGVkTGVmdEhlbHBlcixcbiAgICBTdHlsZWRSaWdodEhlbHBlcixcbiAgICBTdHlsZWRMYWJlbCxcbiAgICBTdHlsZWRQbGFjZWhvbGRlcixcbiAgICBTdHlsZWRUZXh0QXJlYSxcbiAgICBTdHlsZWRUZXh0QXJlYVdyYXBwZXIsXG4gICAgU3R5bGVkQ29udGFpbmVyLFxuICAgIFN0eWxlZEluZGljYXRvcixcbiAgICBTdHlsZWRPcHRpb25hbFRleHQsXG4gICAgT3V0ZXJMYWJlbFdyYXBwZXIsXG4gICAgU3R5bGVkSW5kaWNhdG9yV3JhcHBlcixcbiAgICBTdHlsZWRIaW50V3JhcHBlcixcbiAgICBUaXRsZUNhcHRpb24sXG4gICAgU3R5bGVkT3V0c2lkZUhlbHBlcnNXcmFwcGVyLFxuICAgIFN0eWxlZEhpZGRlblRleHRBcmVhLFxufSBmcm9tICcuL1RleHRBcmVhLnN0eWxlcyc7XG5pbXBvcnQgeyBjbGFzc2VzIH0gZnJvbSAnLi9UZXh0QXJlYS50b2tlbnMnO1xuaW1wb3J0IHsgYmFzZSBhcyB2aWV3Q1NTIH0gZnJvbSAnLi92YXJpYXRpb25zL192aWV3L2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBzaXplQ1NTIH0gZnJvbSAnLi92YXJpYXRpb25zL19zaXplL2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBjbGVhckNTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fY2xlYXIvYmFzZSc7XG5pbXBvcnQgeyBiYXNlIGFzIHJlYWRPbmx5Q1NTIH0gZnJvbSAnLi92YXJpYXRpb25zL19yZWFkLW9ubHkvYmFzZSc7XG5pbXBvcnQgeyBiYXNlIGFzIGRpc2FibGVkQ1NTIH0gZnJvbSAnLi92YXJpYXRpb25zL19kaXNhYmxlZC9iYXNlJztcbmltcG9ydCB7IGJhc2UgYXMgaGludFZpZXdDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX2hpbnQtdmlldy9iYXNlJztcbmltcG9ydCB7IGJhc2UgYXMgaGludFNpemVDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX2hpbnQtc2l6ZS9iYXNlJztcbmltcG9ydCB0eXBlIHsgVGV4dEFyZWFQcm9wcywgVGV4dEFyZWFSb290UHJvcHMgfSBmcm9tICcuL1RleHRBcmVhLnR5cGVzJztcbmltcG9ydCB7IEhpbnRDb21wb25lbnQgfSBmcm9tICcuL3VpL0hpbnQvSGludCc7XG5cbmNvbnN0IHtcbiAgICBpbm5lclBsYWNlaG9sZGVyVXAsXG4gICAgZm9jdXNlZE91dGVyUGxhY2Vob2xkZXJDb2xvcixcbiAgICBoaWRlUGxhY2VIb2xkZXIsXG4gICAgc3R5bGVkQ29udGFpbmVyLFxuICAgIHN0eWxlZFRleHRBcmVhLFxuICAgIHN0eWxlZFRleHRBcmVhV3JhcHBlcixcbiAgICBzdHlsZWRQbGFjZWhvbGRlcixcbiAgICBzdHlsZWRIZWxwZXJzLFxufSA9IGNsYXNzZXM7XG5cbmNvbnN0IG9wdGlvbmFsVGV4dCA9ICdvcHRpb25hbCc7XG5cbmNvbnN0IGJhc2UgPSBjc3NgXG4gICAgJHthcHBseUR5bmFtaWNMYWJlbH07XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbmA7XG5cbi8vIFRPRE86INCj0LTQsNC70LjRgtGMINC/0L7RgdC70LUg0L7RgtC60LDQt9CwINC+0YIg0YHRgtCw0YDRi9GFINCx0LjQsdC70LjQvtGC0LXQuiBwbGFzbWEtd2ViIC8gcGxhc21hLWIyY1xuY29uc3QgZmFsbGJhY2tTdGF0dXNNYXAgPSB7XG4gICAgJyc6ICdwcmltYXJ5JyxcbiAgICBzdWNjZXNzOiAncG9zaXRpdmUnLFxuICAgIHdhcm5pbmc6ICd3YXJuaW5nJyxcbiAgICBlcnJvcjogJ25lZ2F0aXZlJyxcbn07XG5cbmNvbnN0IEhJTlRfREVGQVVMVF9PRkZTRVQ6IFtudW1iZXIsIG51bWJlcl0gPSBbMCwgMF07XG5cbi8vIFRPRE86INCf0LXRgNC10L3QtdGB0YLQuCDRjdGC0L7RgiDQvNC10YLQvtC0INCyINGE0LDQudC7IGFwcGx5RHluYW1pY0xhYmVsLnRzXG5leHBvcnQgY29uc3QgZ2V0RHluYW1pY0xhYmVsQ2xhc3NlcyA9IChwcm9wczogVGV4dEFyZWFQcm9wcywgZm9jdXNlZDogYm9vbGVhbikgPT4ge1xuICAgIGNvbnN0IHsgcmVhZE9ubHksIGxhYmVsLCBsYWJlbFBsYWNlbWVudCwgcm93cywgdmFsdWUsIHNpemUgfSA9IHByb3BzO1xuXG4gICAgLy8g0JTQvtCx0LDQstC40YLRjCDQutC70LDRgdGBINC+0YLQstC10YfQsNGO0YnQuNC5INC30LAg0LjQt9C80LXQvdC10L3QuNC1INGG0LLQtdGC0LAg0L/Qu9C10LnRgdGF0L7Qu9C00LXRgNCwINC/0YDQuCDRhNC+0LrRg9GB0LVcbiAgICBjb25zdCB3aXRoRm9jdXNlZE91dGVyVXBQbGFjZWhvbGRlciA9XG4gICAgICAgICFyZWFkT25seSAmJiBmb2N1c2VkICYmICghbGFiZWwgfHwgbGFiZWxQbGFjZW1lbnQgPT09ICdvdXRlcicpID8gZm9jdXNlZE91dGVyUGxhY2Vob2xkZXJDb2xvciA6IHVuZGVmaW5lZDtcblxuICAgIC8vINCU0L7QsdCw0LLQuNGC0Ywg0LrQu9Cw0YHRgSDQvtGC0LLQtdGH0LDRjtGJ0LjQuSDQt9CwINC/0L7QtNC90Y/RgtC40LUg0Lgg0YPQvNC10L3RjNGI0LXQvdC40LUg0L/Qu9C10LnRgdGF0L7Qu9C00LXRgNCwXG4gICAgY29uc3Qgd2l0aElubmVyUGxhY2Vob2xkZXJVcCA9XG4gICAgICAgIGxhYmVsUGxhY2VtZW50ID09PSAnaW5uZXInICYmXG4gICAgICAgIGxhYmVsICYmXG4gICAgICAgICFyb3dzICYmXG4gICAgICAgIHNpemUgIT09ICd4cycgJiZcbiAgICAgICAgKCghcmVhZE9ubHkgJiYgKHZhbHVlIHx8IGZvY3VzZWQpKSB8fCAocmVhZE9ubHkgJiYgdmFsdWUpKVxuICAgICAgICAgICAgPyBpbm5lclBsYWNlaG9sZGVyVXBcbiAgICAgICAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgLy8g0JTQvtCx0LDQstC40YLRjCDQutC70LDRgdGBINC+0YLQstC10YfQsNGO0YnQuNC5INC30LAg0YHQutGA0YvRgtC40LUg0L/Qu9C10LnRgdGF0L7Qu9C00LXRgNCwXG4gICAgY29uc3Qgd2l0aEhpZGVQbGFjZWhvbGRlciA9XG4gICAgICAgICh2YWx1ZSAmJiAhbGFiZWwpIHx8XG4gICAgICAgIChsYWJlbFBsYWNlbWVudCA9PT0gJ2lubmVyJyAmJiAoKGZvY3VzZWQgJiYgIXJlYWRPbmx5KSB8fCB2YWx1ZSkgJiYgbGFiZWwgJiYgcm93cykgfHxcbiAgICAgICAgKGxhYmVsUGxhY2VtZW50ID09PSAnb3V0ZXInICYmIHZhbHVlKSB8fFxuICAgICAgICAobGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcicgJiYgc2l6ZSA9PT0gJ3hzJyAmJiB2YWx1ZSlcbiAgICAgICAgICAgID8gaGlkZVBsYWNlSG9sZGVyXG4gICAgICAgICAgICA6IHVuZGVmaW5lZDtcblxuICAgIHJldHVybiBbd2l0aEZvY3VzZWRPdXRlclVwUGxhY2Vob2xkZXIsIHdpdGhJbm5lclBsYWNlaG9sZGVyVXAsIHdpdGhIaWRlUGxhY2Vob2xkZXJdO1xufTtcblxuZXhwb3J0IGNvbnN0IHRleHRBcmVhUm9vdCA9IChSb290OiBSb290UHJvcHM8SFRNTFRleHRBcmVhRWxlbWVudCwgVGV4dEFyZWFSb290UHJvcHM+KSA9PlxuICAgIGZvcndhcmRSZWY8SFRNTFRleHRBcmVhRWxlbWVudCwgVGV4dEFyZWFQcm9wcz4oKHByb3BzLCBpbm5lclJlZikgPT4ge1xuICAgICAgICBjb25zdCB7XG4gICAgICAgICAgICBoZWxwZXJUZXh0LFxuICAgICAgICAgICAgc3RhdHVzLFxuICAgICAgICAgICAgcmVzaXplLFxuICAgICAgICAgICAgcmlnaHRIZWxwZXIsXG4gICAgICAgICAgICBsZWZ0SGVscGVyLFxuICAgICAgICAgICAgbGVmdEhlbHBlclBsYWNlbWVudCA9ICdpbm5lcicsXG4gICAgICAgICAgICBjb250ZW50UmlnaHQsXG4gICAgICAgICAgICBhdXRvUmVzaXplID0gZmFsc2UsXG4gICAgICAgICAgICBtaW5BdXRvID0gMCxcbiAgICAgICAgICAgIG1heEF1dG8sXG4gICAgICAgICAgICBsYWJlbCxcbiAgICAgICAgICAgIGxhYmVsUGxhY2VtZW50ID0gJ2lubmVyJyxcbiAgICAgICAgICAgIHRpdGxlQ2FwdGlvbixcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyLFxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlLFxuICAgICAgICAgICAgaGVpZ2h0LFxuICAgICAgICAgICAgd2lkdGgsXG4gICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgIGRpc2FibGVkLFxuICAgICAgICAgICAgcmVxdWlyZWQgPSBmYWxzZSxcbiAgICAgICAgICAgIHJlcXVpcmVkUGxhY2VtZW50ID0gJ3JpZ2h0JyxcbiAgICAgICAgICAgIGhhc1JlcXVpcmVkSW5kaWNhdG9yID0gdHJ1ZSxcbiAgICAgICAgICAgIG9wdGlvbmFsID0gZmFsc2UsXG4gICAgICAgICAgICBjbGVhcixcbiAgICAgICAgICAgIGhhc0RpdmlkZXIsXG4gICAgICAgICAgICBzaXplLFxuICAgICAgICAgICAgdmlldyxcbiAgICAgICAgICAgIGlkLFxuICAgICAgICAgICAgc3R5bGUsXG4gICAgICAgICAgICBjbGFzc05hbWUsXG4gICAgICAgICAgICByZWFkT25seSxcbiAgICAgICAgICAgIHJvd3MsXG4gICAgICAgICAgICBjb2xzLFxuICAgICAgICAgICAgaGludFRyaWdnZXIgPSAnaG92ZXInLFxuICAgICAgICAgICAgaGludFRleHQsXG4gICAgICAgICAgICBoaW50VmlldyA9ICdkZWZhdWx0JyxcbiAgICAgICAgICAgIGhpbnRTaXplID0gJ20nLFxuICAgICAgICAgICAgaGludFRhcmdldEljb24sXG4gICAgICAgICAgICBoaW50UGxhY2VtZW50ID0gJ2F1dG8nLFxuICAgICAgICAgICAgaGludEhhc0Fycm93LFxuICAgICAgICAgICAgaGludE9mZnNldCA9IEhJTlRfREVGQVVMVF9PRkZTRVQsXG4gICAgICAgICAgICBoaW50V2lkdGgsXG4gICAgICAgICAgICBoaW50Q29udGVudExlZnQsXG4gICAgICAgICAgICBvbkNoYW5nZSxcbiAgICAgICAgICAgIC4uLnJlc3RcbiAgICAgICAgfSA9IHByb3BzO1xuXG4gICAgICAgIGNvbnN0IFtpc0hpbnRWaXNpYmxlLCBzZXRJc0hpbnRWaXNpYmxlXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgICAgICAgY29uc3QgW2hlbHBlcldpZHRoLCBzZXRIZWxwZXJXaWR0aF0gPSB1c2VTdGF0ZTxzdHJpbmc+KHdpZHRoID8gYCR7d2lkdGh9cmVtYCA6ICcxMDAlJyk7XG4gICAgICAgIGNvbnN0IFtmb2N1c2VkLCBzZXRGb2N1c2VkXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgICAgICAgLy8gVE9ETzog0L/QtdGA0LXQvdC10YHRgtC4INCyINC+0LHRidGD0Y4g0L/QtdGA0LXQvNC10L3QvdGD0Y4g0LTQu9GPIHZhbHVlINGB0L3QsNGA0YPQttC4INC4INCy0L3Rg9GC0YDQuFxuICAgICAgICBjb25zdCBbdW5jb250cm9sbGVkVmFsdWUsIHNldFVuY29udHJvbGxlZFZhbHVlXSA9IHVzZVN0YXRlPHN0cmluZyB8IHVuZGVmaW5lZD4oKTtcblxuICAgICAgICBjb25zdCBvdXRlclJlZiA9IGNyZWF0ZVJlZjxIVE1MVGV4dEFyZWFFbGVtZW50PigpO1xuICAgICAgICBjb25zdCBoaWRkZW5SZWYgPSB1c2VSZWY8SFRNTFRleHRBcmVhRWxlbWVudCB8IG51bGw+KG51bGwpO1xuXG4gICAgICAgIGNvbnN0IGhpbnRSZWYgPSB1c2VPdXRzaWRlQ2xpY2s8SFRNTERpdkVsZW1lbnQ+KCgpID0+IHtcbiAgICAgICAgICAgIHNldElzSGludFZpc2libGUoZmFsc2UpO1xuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgaGludElubmVyUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcbiAgICAgICAgY29uc3QgaGludEZvcmtSZWYgPSB1c2VGb3JrUmVmKGhpbnRSZWYsIGhpbnRJbm5lclJlZik7XG5cbiAgICAgICAgY29uc3QgaXNJbm5lckxlZnRIZWxwZXJQbGFjZW1lbnQgPSBsZWZ0SGVscGVyUGxhY2VtZW50ID09PSAnaW5uZXInO1xuICAgICAgICBjb25zdCBsZWZ0SGVscGVyVGV4dCA9IGxlZnRIZWxwZXIgfHwgaGVscGVyVGV4dDtcbiAgICAgICAgY29uc3QgaW5uZXJPcHRpb25hbCA9IHJlcXVpcmVkID8gZmFsc2UgOiBvcHRpb25hbDtcbiAgICAgICAgY29uc3QgaGFzTGVmdEhlbHBlciA9IEJvb2xlYW4obGVmdEhlbHBlciB8fCBoZWxwZXJUZXh0KTtcbiAgICAgICAgY29uc3QgaGFzUmlnaHRIZWxwZXIgPSBCb29sZWFuKHJpZ2h0SGVscGVyKTtcbiAgICAgICAgY29uc3QgaGFzSGVscGVyID0gIWlzSW5uZXJMZWZ0SGVscGVyUGxhY2VtZW50ID8gaGFzUmlnaHRIZWxwZXIgOiBoYXNMZWZ0SGVscGVyIHx8IGhhc1JpZ2h0SGVscGVyO1xuICAgICAgICBjb25zdCBoYXNPdXRlckxhYmVsID0gQm9vbGVhbihsYWJlbCAmJiBsYWJlbFBsYWNlbWVudCA9PT0gJ291dGVyJyk7XG4gICAgICAgIGNvbnN0IGhhc0lubmVyTGFiZWwgPSBCb29sZWFuKGxhYmVsICYmIGxhYmVsUGxhY2VtZW50ID09PSAnaW5uZXInICYmIHNpemUgIT09ICd4cycpO1xuICAgICAgICBjb25zdCBoYXNQbGFjZWhvbGRlck9wdGlvbmFsID0gaW5uZXJPcHRpb25hbCAmJiAhaGFzT3V0ZXJMYWJlbDtcblxuICAgICAgICBjb25zdCBvdmVycmlkZGVuVmlldyA9IHN0YXR1cyAhPT0gdW5kZWZpbmVkID8gZmFsbGJhY2tTdGF0dXNNYXBbc3RhdHVzXSA6IHZpZXc7XG4gICAgICAgIGNvbnN0IHRleHRhcmVhSGVscGVySWQgPSBpZCA/IGAke2lkfS1oZWxwZXJgIDogdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBhcHBseUN1c3RvbVdpZHRoID0gcmVzaXplICE9PSAnaG9yaXpvbnRhbCcgJiYgcmVzaXplICE9PSAnYm90aCcgJiYgIWNvbHM7XG4gICAgICAgIGNvbnN0IHBsYWNlaG9sZGVyTGFiZWwgPSBoYXNJbm5lckxhYmVsID8gbGFiZWwgOiBwbGFjZWhvbGRlcjtcbiAgICAgICAgY29uc3QgYXBwbHlBdXRvUmVzaXplID0gYXV0b1Jlc2l6ZSB8fCBCb29sZWFuKGNsZWFyKTtcblxuICAgICAgICBjb25zdCBjbGVhckNsYXNzID0gY2xlYXIgPyBjbGFzc2VzLmNsZWFyIDogdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBoYXNIaW50Q2xhc3MgPSBoaW50VGV4dCA/IGNsYXNzZXMuaGFzSGludCA6IHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgaGFzUmlnaHRDb250ZW50Q2xhc3MgPSBjb250ZW50UmlnaHQgPyBjbGFzc2VzLmhhc1JpZ2h0Q29udGVudCA6IHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgaGFzRGl2aWRlckNsYXNzID0gaGFzRGl2aWRlciA/IGNsYXNzZXMuaGFzRGl2aWRlciA6IHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgcmVxdWlyZWRQbGFjZW1lbnRDbGFzcyA9IHJlcXVpcmVkUGxhY2VtZW50ID09PSAncmlnaHQnID8gY2xhc3Nlcy5yZXF1aXJlZEFsaWduUmlnaHQgOiB1bmRlZmluZWQ7XG5cbiAgICAgICAgY29uc3QgaGFuZGxlSGludFNob3cgPSAoKSA9PiBzZXRJc0hpbnRWaXNpYmxlKHRydWUpO1xuICAgICAgICBjb25zdCBoYW5kbGVIaW50SGlkZSA9ICgpID0+IHNldElzSGludFZpc2libGUoZmFsc2UpO1xuICAgICAgICBjb25zdCBoYW5kbGVIaW50Q2xpY2s6IE1vdXNlRXZlbnRIYW5kbGVyID0gKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICBpZiAoIWhpbnRUZXh0IHx8IGhpbnRUcmlnZ2VyICE9PSAnY2xpY2snKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgIGNvbnN0IHRhcmdldElzUG9wb3ZlciA9IGV2ZW50LnRhcmdldCA9PT0gaGludElubmVyUmVmLmN1cnJlbnQ7XG4gICAgICAgICAgICBjb25zdCByb290SGFzVGFyZ2V0ID0gaGludElubmVyUmVmLmN1cnJlbnQ/LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBFbGVtZW50KTtcblxuICAgICAgICAgICAgaWYgKCF0YXJnZXRJc1BvcG92ZXIgJiYgIXJvb3RIYXNUYXJnZXQpIHtcbiAgICAgICAgICAgICAgICBzZXRJc0hpbnRWaXNpYmxlKHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAob3V0ZXJSZWYuY3VycmVudCkge1xuICAgICAgICAgICAgICAgIHNldFVuY29udHJvbGxlZFZhbHVlKG91dGVyUmVmLmN1cnJlbnQudmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LCBbb3V0ZXJSZWZdKTtcblxuICAgICAgICB1c2VSZXNpemVPYnNlcnZlcihvdXRlclJlZiwgKGN1cnJlbnRFbGVtZW50KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB7IHdpZHRoOiBpbmxpbmVXaWR0aCB9ID0gY3VycmVudEVsZW1lbnQuc3R5bGU7XG5cbiAgICAgICAgICAgIGlmIChpbmxpbmVXaWR0aCB8fCBjb2xzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgeyB3aWR0aDogZWxlbWVudFdpZHRoIH0gPSBjdXJyZW50RWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgICAgICBzZXRIZWxwZXJXaWR0aChgJHtlbGVtZW50V2lkdGggLyBST09UX0ZPTlRfU0laRX1yZW1gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdXNlQXV0b1Jlc2l6ZShhcHBseUF1dG9SZXNpemUsIG91dGVyUmVmLCB2YWx1ZSB8fCB1bmNvbnRyb2xsZWRWYWx1ZSwgbWluQXV0bywgbWF4QXV0bywgcmVzaXplLCBoaWRkZW5SZWYpO1xuXG4gICAgICAgIGNvbnN0IG9uRm9jdXNIYW5kbGVyID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgICAgICAgc2V0Rm9jdXNlZCh0cnVlKTtcbiAgICAgICAgfSwgW10pO1xuXG4gICAgICAgIGNvbnN0IG9uQmx1ckhhbmRsZXIgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICAgICAgICBzZXRGb2N1c2VkKGZhbHNlKTtcbiAgICAgICAgfSwgW10pO1xuXG4gICAgICAgIGNvbnN0IG9uQ2hhbmdlSGFuZGxlciA9IHVzZUNhbGxiYWNrKFxuICAgICAgICAgICAgKGV2ZW50OiBSZWFjdC5DaGFuZ2VFdmVudDxIVE1MVGV4dEFyZWFFbGVtZW50PikgPT4ge1xuICAgICAgICAgICAgICAgIC8vIElORk86INCU0LvRjyDQutGA0LDQudC90LUg0YDQtdC00LrQuNGFINC60LXQudGB0L7Qsiwg0LrQvtCz0LTQsCB2YWx1ZSDRgdC90LDRgNGD0LbQuCDQvdC1INC60L7QvdGC0YDQvtC70LjRgNGD0LXRgtGB0Y9cbiAgICAgICAgICAgICAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICBzZXRVbmNvbnRyb2xsZWRWYWx1ZShldmVudD8udGFyZ2V0LnZhbHVlKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBvbkNoYW5nZT8uKGV2ZW50KTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBbdmFsdWUsIG9uQ2hhbmdlXSxcbiAgICAgICAgKTtcblxuICAgICAgICBjb25zdCBoYW5kbGVUZXh0QXJlYUZvY3VzID0gKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHJlYWRPbmx5IHx8IGRpc2FibGVkIHx8ICFvdXRlclJlZj8uY3VycmVudCkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgb3V0ZXJSZWYuY3VycmVudC5mb2N1cygpO1xuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IGR5bmFtaWNMYWJlbENsYXNzZXMgPSBnZXREeW5hbWljTGFiZWxDbGFzc2VzKFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHNpemUsXG4gICAgICAgICAgICAgICAgcmVhZE9ubHksXG4gICAgICAgICAgICAgICAgbGFiZWwsXG4gICAgICAgICAgICAgICAgbGFiZWxQbGFjZW1lbnQsXG4gICAgICAgICAgICAgICAgdmFsdWU6IHZhbHVlIHx8IHVuY29udHJvbGxlZFZhbHVlIHx8IGRlZmF1bHRWYWx1ZSxcbiAgICAgICAgICAgICAgICByb3dzLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGZvY3VzZWQsXG4gICAgICAgICk7XG5cbiAgICAgICAgY29uc3Qgb3B0aW9uYWxUZXh0Tm9kZSA9IGlubmVyT3B0aW9uYWwgPyAoXG4gICAgICAgICAgICA8U3R5bGVkT3B0aW9uYWxUZXh0IGluaGVyaXRGb250PXshaGFzT3V0ZXJMYWJlbH0+XG4gICAgICAgICAgICAgICAge0Jvb2xlYW4oaGFzUGxhY2Vob2xkZXJPcHRpb25hbCA/IHBsYWNlaG9sZGVyTGFiZWwgOiBsYWJlbCkgJiYgJ1xceGEwJ31cbiAgICAgICAgICAgICAgICB7b3B0aW9uYWxUZXh0fVxuICAgICAgICAgICAgPC9TdHlsZWRPcHRpb25hbFRleHQ+XG4gICAgICAgICkgOiBudWxsO1xuXG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICA8Um9vdFxuICAgICAgICAgICAgICAgIHZpZXc9e292ZXJyaWRkZW5WaWV3fVxuICAgICAgICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgICAgICBzdHlsZT17eyB3aWR0aDogaGVscGVyV2lkdGgsIC4uLnN0eWxlIH19XG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjeChjbGVhckNsYXNzLCBoYXNEaXZpZGVyQ2xhc3MsIGhhc0hpbnRDbGFzcywgY2xhc3NOYW1lKX1cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVUZXh0QXJlYUZvY3VzfVxuICAgICAgICAgICAgICAgIHsuLi4oaGludFRleHQgJiYge1xuICAgICAgICAgICAgICAgICAgICBoaW50VmlldyxcbiAgICAgICAgICAgICAgICAgICAgaGludFNpemUsXG4gICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgeyhoYXNPdXRlckxhYmVsIHx8IHRpdGxlQ2FwdGlvbikgJiYgKFxuICAgICAgICAgICAgICAgICAgICA8T3V0ZXJMYWJlbFdyYXBwZXIgd2lkdGg9e2hlbHBlcldpZHRofSBpc0lubmVyTGFiZWw9e2xhYmVsUGxhY2VtZW50ID09PSAnaW5uZXInfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtoYXNPdXRlckxhYmVsICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW5kaWNhdG9yV3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZExhYmVsPntsYWJlbH08L1N0eWxlZExhYmVsPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtoaW50VGV4dCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSGludFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEhpbnRDb21wb25lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXtoaW50Rm9ya1JlZn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFRleHQ9e2hpbnRUZXh0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50VHJpZ2dlcj17aGludFRyaWdnZXJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzSGludFZpc2libGU9e2lzSGludFZpc2libGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRUYXJnZXRJY29uPXtoaW50VGFyZ2V0SWNvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFBsYWNlbWVudD17aGludFBsYWNlbWVudH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludEhhc0Fycm93PXtoaW50SGFzQXJyb3d9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRPZmZzZXQ9e2hpbnRPZmZzZXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRXaWR0aD17aGludFdpZHRofVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50Q29udGVudExlZnQ9e2hpbnRDb250ZW50TGVmdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlSGludFNob3c9e2hhbmRsZUhpbnRTaG93fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVIaW50SGlkZT17aGFuZGxlSGludEhpZGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRDbGljaz17aGFuZGxlSGludENsaWNrfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZEhpbnRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cmVxdWlyZWQgJiYgaGFzUmVxdWlyZWRJbmRpY2F0b3IgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEluZGljYXRvclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y3goXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzZXMub3V0ZXJMYWJlbFBsYWNlbWVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRQbGFjZW1lbnRDbGFzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFzSGludENsYXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7b3B0aW9uYWxUZXh0Tm9kZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZEluZGljYXRvcldyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAge3RpdGxlQ2FwdGlvbiAmJiA8VGl0bGVDYXB0aW9uPnt0aXRsZUNhcHRpb259PC9UaXRsZUNhcHRpb24+fVxuICAgICAgICAgICAgICAgICAgICA8L091dGVyTGFiZWxXcmFwcGVyPlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgPFN0eWxlZENvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2N4KHN0eWxlZENvbnRhaW5lciwgLi4uZHluYW1pY0xhYmVsQ2xhc3Nlcyl9XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoPXtoZWxwZXJXaWR0aH1cbiAgICAgICAgICAgICAgICAgICAgb25Gb2N1cz17b25Gb2N1c0hhbmRsZXJ9XG4gICAgICAgICAgICAgICAgICAgIG9uQmx1cj17b25CbHVySGFuZGxlcn1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHshaGFzT3V0ZXJMYWJlbCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtyZXF1aXJlZCAmJiBoYXNSZXF1aXJlZEluZGljYXRvciAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbmRpY2F0b3IgY2xhc3NOYW1lPXtjeChjbGFzc2VzLmlubmVyTGFiZWxQbGFjZW1lbnQsIHJlcXVpcmVkUGxhY2VtZW50Q2xhc3MpfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2hpbnRUZXh0ICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEhpbnRXcmFwcGVyIGNsYXNzTmFtZT17Y2xhc3Nlcy5pbm5lckxhYmVsUGxhY2VtZW50fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxIaW50Q29tcG9uZW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXtoaW50Rm9ya1JlZn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50VGV4dD17aGludFRleHR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFRyaWdnZXI9e2hpbnRUcmlnZ2VyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzSGludFZpc2libGU9e2lzSGludFZpc2libGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFRhcmdldEljb249e2hpbnRUYXJnZXRJY29ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRQbGFjZW1lbnQ9e2hpbnRQbGFjZW1lbnR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludEhhc0Fycm93PXtoaW50SGFzQXJyb3d9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludE9mZnNldD17aGludE9mZnNldH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50V2lkdGg9e2hpbnRXaWR0aH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50Q29udGVudExlZnQ9e2hpbnRDb250ZW50TGVmdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRTaG93PXtoYW5kbGVIaW50U2hvd31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVIaW50SGlkZT17aGFuZGxlSGludEhpZGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlSGludENsaWNrPXtoYW5kbGVIaW50Q2xpY2t9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNJbm5lckxhYmVsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZEhpbnRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAge2NvbnRlbnRSaWdodCAmJiA8U3R5bGVkQ29udGVudD57Y29udGVudFJpZ2h0fTwvU3R5bGVkQ29udGVudD59XG4gICAgICAgICAgICAgICAgICAgIDxTdHlsZWRUZXh0QXJlYVdyYXBwZXIgY2xhc3NOYW1lPXtjeChzdHlsZWRUZXh0QXJlYVdyYXBwZXIpfSBoYXNIZWxwZXI9e2hhc0hlbHBlcn0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkVGV4dEFyZWFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2N4KHN0eWxlZFRleHRBcmVhLCBoYXNSaWdodENvbnRlbnRDbGFzcyl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9e2lkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc0NvbnRlbnRSaWdodD17Qm9vbGVhbihjb250ZW50UmlnaHQpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc0hlbHBlcj17aGFzSGVscGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcGx5Q3VzdG9tV2lkdGg9e2FwcGx5Q3VzdG9tV2lkdGh9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXttZXJnZVJlZnMob3V0ZXJSZWYsIGlubmVyUmVmKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ9e3JlcXVpcmVkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD17YXBwbHlBdXRvUmVzaXplID8gbWluQXV0byA6IGhlaWdodH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD17d2lkdGh9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3BsYWNlaG9sZGVyTGFiZWx9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1kZXNjcmliZWRieT17dGV4dGFyZWFIZWxwZXJJZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17dmFsdWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhZE9ubHk9e3JlYWRPbmx5fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvd3M9e3Jvd3N9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29scz17Y29sc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNpemU9e3Jlc2l6ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0VmFsdWU9e2RlZmF1bHRWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2VIYW5kbGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsuLi5yZXN0fVxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIHthcHBseUF1dG9SZXNpemUgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRIaWRkZW5UZXh0QXJlYVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWhpZGRlblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWY9e2hpZGRlblJlZn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFzQ29udGVudFJpZ2h0PXtCb29sZWFuKGNvbnRlbnRSaWdodCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPXt2YWx1ZSB8fCB1bmNvbnRyb2xsZWRWYWx1ZSB8fCAnICd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRWYWx1ZT17ZGVmYXVsdFZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZFRleHRBcmVhV3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAge2hhc0hlbHBlciAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSGVscGVycyBjbGFzc05hbWU9e3N0eWxlZEhlbHBlcnN9IGlkPXt0ZXh0YXJlYUhlbHBlcklkfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aXNJbm5lckxlZnRIZWxwZXJQbGFjZW1lbnQgJiYgKGxlZnRIZWxwZXIgfHwgaGVscGVyVGV4dCkgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkTGVmdEhlbHBlcj57bGVmdEhlbHBlciB8fCBoZWxwZXJUZXh0fTwvU3R5bGVkTGVmdEhlbHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtyaWdodEhlbHBlciAmJiA8U3R5bGVkUmlnaHRIZWxwZXI+e3JpZ2h0SGVscGVyfTwvU3R5bGVkUmlnaHRIZWxwZXI+fVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRIZWxwZXJzPlxuICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICB7cGxhY2Vob2xkZXJMYWJlbCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkUGxhY2Vob2xkZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXNDb250ZW50UmlnaHQ9e0Jvb2xlYW4oY29udGVudFJpZ2h0KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e3N0eWxlZFBsYWNlaG9sZGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGh0bWxGb3I9e2lkfVxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtwbGFjZWhvbGRlckxhYmVsfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHshaGFzT3V0ZXJMYWJlbCAmJiBvcHRpb25hbFRleHROb2RlfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRQbGFjZWhvbGRlcj5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICA8L1N0eWxlZENvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICB7aGFzTGVmdEhlbHBlciAmJiAhaXNJbm5lckxlZnRIZWxwZXJQbGFjZW1lbnQgJiYgKFxuICAgICAgICAgICAgICAgICAgICA8U3R5bGVkT3V0c2lkZUhlbHBlcnNXcmFwcGVyIGlkPXt0ZXh0YXJlYUhlbHBlcklkfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRMZWZ0SGVscGVyPntsZWZ0SGVscGVyVGV4dH08L1N0eWxlZExlZnRIZWxwZXI+XG4gICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkT3V0c2lkZUhlbHBlcnNXcmFwcGVyPlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L1Jvb3Q+XG4gICAgICAgICk7XG4gICAgfSk7XG5cbmV4cG9ydCBjb25zdCB0ZXh0QXJlYUNvbmZpZyA9IHtcbiAgICBuYW1lOiAnVGV4dEFyZWEnLFxuICAgIHRhZzogJ2RpdicsXG4gICAgbGF5b3V0OiB0ZXh0QXJlYVJvb3QsXG4gICAgYmFzZSxcbiAgICB2YXJpYXRpb25zOiB7XG4gICAgICAgIHNpemU6IHtcbiAgICAgICAgICAgIGNzczogc2l6ZUNTUyxcbiAgICAgICAgfSxcbiAgICAgICAgdmlldzoge1xuICAgICAgICAgICAgY3NzOiB2aWV3Q1NTLFxuICAgICAgICB9LFxuICAgICAgICBjbGVhcjoge1xuICAgICAgICAgICAgY3NzOiBjbGVhckNTUyxcbiAgICAgICAgICAgIGF0dHJzOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICByZWFkT25seToge1xuICAgICAgICAgICAgY3NzOiByZWFkT25seUNTUyxcbiAgICAgICAgICAgIGF0dHJzOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICBkaXNhYmxlZDoge1xuICAgICAgICAgICAgY3NzOiBkaXNhYmxlZENTUyxcbiAgICAgICAgICAgIGF0dHJzOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICBoaW50Vmlldzoge1xuICAgICAgICAgICAgY3NzOiBoaW50Vmlld0NTUyxcbiAgICAgICAgfSxcbiAgICAgICAgaGludFNpemU6IHtcbiAgICAgICAgICAgIGNzczogaGludFNpemVDU1MsXG4gICAgICAgIH0sXG4gICAgfSxcbiAgICBkZWZhdWx0czoge1xuICAgICAgICBzaXplOiAnbScsXG4gICAgICAgIHZpZXc6ICdwcmltYXJ5JyxcbiAgICB9LFxufTtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxRGEifQ== */");
|
133
|
+
var base = /*#__PURE__*/ css(applyDynamicLabel, ";position:relative;box-sizing:border-box;", "base", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjLWVtb3Rpb24vY29tcG9uZW50cy9UZXh0QXJlYS9UZXh0QXJlYS50c3giLCJzb3VyY2VzIjpbInNyYy1lbW90aW9uL2NvbXBvbmVudHMvVGV4dEFyZWEvVGV4dEFyZWEudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBmb3J3YXJkUmVmLCB1c2VTdGF0ZSwgY3JlYXRlUmVmLCB1c2VDYWxsYmFjaywgdXNlUmVmLCBNb3VzZUV2ZW50SGFuZGxlciwgdXNlTGF5b3V0RWZmZWN0IH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgdXNlRm9ya1JlZiwgdXNlUmVzaXplT2JzZXJ2ZXIgfSBmcm9tICdAc2FsdXRlanMvcGxhc21hLWNvcmUnO1xuXG5pbXBvcnQgeyBjeCwgbWVyZ2VSZWZzIH0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHR5cGUgeyBSb290UHJvcHMgfSBmcm9tICcuLi8uLi9lbmdpbmVzL3R5cGVzJztcbmltcG9ydCB7IHVzZU91dHNpZGVDbGljayB9IGZyb20gJy4uLy4uL2hvb2tzJztcblxuaW1wb3J0IHsgYXBwbHlEeW5hbWljTGFiZWwgfSBmcm9tICcuL21peGlucyc7XG5pbXBvcnQgeyB1c2VBdXRvUmVzaXplLCBST09UX0ZPTlRfU0laRSB9IGZyb20gJy4vaG9va3MnO1xuaW1wb3J0IHtcbiAgICBTdHlsZWRDb250ZW50LFxuICAgIFN0eWxlZEhlbHBlcnMsXG4gICAgU3R5bGVkTGVmdEhlbHBlcixcbiAgICBTdHlsZWRSaWdodEhlbHBlcixcbiAgICBTdHlsZWRMYWJlbCxcbiAgICBTdHlsZWRQbGFjZWhvbGRlcixcbiAgICBTdHlsZWRUZXh0QXJlYSxcbiAgICBTdHlsZWRUZXh0QXJlYVdyYXBwZXIsXG4gICAgU3R5bGVkQ29udGFpbmVyLFxuICAgIFN0eWxlZEluZGljYXRvcixcbiAgICBTdHlsZWRPcHRpb25hbFRleHQsXG4gICAgT3V0ZXJMYWJlbFdyYXBwZXIsXG4gICAgU3R5bGVkSW5kaWNhdG9yV3JhcHBlcixcbiAgICBTdHlsZWRIaW50V3JhcHBlcixcbiAgICBUaXRsZUNhcHRpb24sXG4gICAgU3R5bGVkT3V0c2lkZUhlbHBlcnNXcmFwcGVyLFxuICAgIFN0eWxlZEhpZGRlblRleHRBcmVhLFxufSBmcm9tICcuL1RleHRBcmVhLnN0eWxlcyc7XG5pbXBvcnQgeyBjbGFzc2VzIH0gZnJvbSAnLi9UZXh0QXJlYS50b2tlbnMnO1xuaW1wb3J0IHsgYmFzZSBhcyB2aWV3Q1NTIH0gZnJvbSAnLi92YXJpYXRpb25zL192aWV3L2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBzaXplQ1NTIH0gZnJvbSAnLi92YXJpYXRpb25zL19zaXplL2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBjbGVhckNTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fY2xlYXIvYmFzZSc7XG5pbXBvcnQgeyBiYXNlIGFzIHJlYWRPbmx5Q1NTIH0gZnJvbSAnLi92YXJpYXRpb25zL19yZWFkLW9ubHkvYmFzZSc7XG5pbXBvcnQgeyBiYXNlIGFzIGRpc2FibGVkQ1NTIH0gZnJvbSAnLi92YXJpYXRpb25zL19kaXNhYmxlZC9iYXNlJztcbmltcG9ydCB7IGJhc2UgYXMgaGludFZpZXdDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX2hpbnQtdmlldy9iYXNlJztcbmltcG9ydCB7IGJhc2UgYXMgaGludFNpemVDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX2hpbnQtc2l6ZS9iYXNlJztcbmltcG9ydCB0eXBlIHsgVGV4dEFyZWFQcm9wcywgVGV4dEFyZWFSb290UHJvcHMgfSBmcm9tICcuL1RleHRBcmVhLnR5cGVzJztcbmltcG9ydCB7IEhpbnRDb21wb25lbnQgfSBmcm9tICcuL3VpL0hpbnQvSGludCc7XG5cbmNvbnN0IHtcbiAgICBpbm5lclBsYWNlaG9sZGVyVXAsXG4gICAgZm9jdXNlZE91dGVyUGxhY2Vob2xkZXJDb2xvcixcbiAgICBoaWRlUGxhY2VIb2xkZXIsXG4gICAgc3R5bGVkQ29udGFpbmVyLFxuICAgIHN0eWxlZFRleHRBcmVhLFxuICAgIHN0eWxlZFRleHRBcmVhV3JhcHBlcixcbiAgICBzdHlsZWRQbGFjZWhvbGRlcixcbiAgICBzdHlsZWRIZWxwZXJzLFxufSA9IGNsYXNzZXM7XG5cbmNvbnN0IG9wdGlvbmFsVGV4dCA9ICdvcHRpb25hbCc7XG5cbmNvbnN0IGJhc2UgPSBjc3NgXG4gICAgJHthcHBseUR5bmFtaWNMYWJlbH07XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbmA7XG5cbi8vIFRPRE86INCj0LTQsNC70LjRgtGMINC/0L7RgdC70LUg0L7RgtC60LDQt9CwINC+0YIg0YHRgtCw0YDRi9GFINCx0LjQsdC70LjQvtGC0LXQuiBwbGFzbWEtd2ViIC8gcGxhc21hLWIyY1xuY29uc3QgZmFsbGJhY2tTdGF0dXNNYXAgPSB7XG4gICAgJyc6ICdwcmltYXJ5JyxcbiAgICBzdWNjZXNzOiAncG9zaXRpdmUnLFxuICAgIHdhcm5pbmc6ICd3YXJuaW5nJyxcbiAgICBlcnJvcjogJ25lZ2F0aXZlJyxcbn07XG5cbmNvbnN0IEhJTlRfREVGQVVMVF9PRkZTRVQ6IFtudW1iZXIsIG51bWJlcl0gPSBbMCwgMF07XG5cbi8vIFRPRE86INCf0LXRgNC10L3QtdGB0YLQuCDRjdGC0L7RgiDQvNC10YLQvtC0INCyINGE0LDQudC7IGFwcGx5RHluYW1pY0xhYmVsLnRzXG5leHBvcnQgY29uc3QgZ2V0RHluYW1pY0xhYmVsQ2xhc3NlcyA9IChwcm9wczogVGV4dEFyZWFQcm9wcywgZm9jdXNlZDogYm9vbGVhbikgPT4ge1xuICAgIGNvbnN0IHsgcmVhZE9ubHksIGxhYmVsLCBsYWJlbFBsYWNlbWVudCwgcm93cywgdmFsdWUsIHNpemUgfSA9IHByb3BzO1xuXG4gICAgLy8g0JTQvtCx0LDQstC40YLRjCDQutC70LDRgdGBINC+0YLQstC10YfQsNGO0YnQuNC5INC30LAg0LjQt9C80LXQvdC10L3QuNC1INGG0LLQtdGC0LAg0L/Qu9C10LnRgdGF0L7Qu9C00LXRgNCwINC/0YDQuCDRhNC+0LrRg9GB0LVcbiAgICBjb25zdCB3aXRoRm9jdXNlZE91dGVyVXBQbGFjZWhvbGRlciA9XG4gICAgICAgICFyZWFkT25seSAmJiBmb2N1c2VkICYmICghbGFiZWwgfHwgbGFiZWxQbGFjZW1lbnQgPT09ICdvdXRlcicpID8gZm9jdXNlZE91dGVyUGxhY2Vob2xkZXJDb2xvciA6IHVuZGVmaW5lZDtcblxuICAgIC8vINCU0L7QsdCw0LLQuNGC0Ywg0LrQu9Cw0YHRgSDQvtGC0LLQtdGH0LDRjtGJ0LjQuSDQt9CwINC/0L7QtNC90Y/RgtC40LUg0Lgg0YPQvNC10L3RjNGI0LXQvdC40LUg0L/Qu9C10LnRgdGF0L7Qu9C00LXRgNCwXG4gICAgY29uc3Qgd2l0aElubmVyUGxhY2Vob2xkZXJVcCA9XG4gICAgICAgIGxhYmVsUGxhY2VtZW50ID09PSAnaW5uZXInICYmXG4gICAgICAgIGxhYmVsICYmXG4gICAgICAgICFyb3dzICYmXG4gICAgICAgIHNpemUgIT09ICd4cycgJiZcbiAgICAgICAgKCghcmVhZE9ubHkgJiYgKHZhbHVlIHx8IGZvY3VzZWQpKSB8fCAocmVhZE9ubHkgJiYgdmFsdWUpKVxuICAgICAgICAgICAgPyBpbm5lclBsYWNlaG9sZGVyVXBcbiAgICAgICAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgLy8g0JTQvtCx0LDQstC40YLRjCDQutC70LDRgdGBINC+0YLQstC10YfQsNGO0YnQuNC5INC30LAg0YHQutGA0YvRgtC40LUg0L/Qu9C10LnRgdGF0L7Qu9C00LXRgNCwXG4gICAgY29uc3Qgd2l0aEhpZGVQbGFjZWhvbGRlciA9XG4gICAgICAgICh2YWx1ZSAmJiAhbGFiZWwpIHx8XG4gICAgICAgIChsYWJlbFBsYWNlbWVudCA9PT0gJ2lubmVyJyAmJiAoKGZvY3VzZWQgJiYgIXJlYWRPbmx5KSB8fCB2YWx1ZSkgJiYgbGFiZWwgJiYgcm93cykgfHxcbiAgICAgICAgKGxhYmVsUGxhY2VtZW50ID09PSAnb3V0ZXInICYmIHZhbHVlKSB8fFxuICAgICAgICAobGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcicgJiYgc2l6ZSA9PT0gJ3hzJyAmJiB2YWx1ZSlcbiAgICAgICAgICAgID8gaGlkZVBsYWNlSG9sZGVyXG4gICAgICAgICAgICA6IHVuZGVmaW5lZDtcblxuICAgIHJldHVybiBbd2l0aEZvY3VzZWRPdXRlclVwUGxhY2Vob2xkZXIsIHdpdGhJbm5lclBsYWNlaG9sZGVyVXAsIHdpdGhIaWRlUGxhY2Vob2xkZXJdO1xufTtcblxuZXhwb3J0IGNvbnN0IHRleHRBcmVhUm9vdCA9IChSb290OiBSb290UHJvcHM8SFRNTFRleHRBcmVhRWxlbWVudCwgVGV4dEFyZWFSb290UHJvcHM+KSA9PlxuICAgIGZvcndhcmRSZWY8SFRNTFRleHRBcmVhRWxlbWVudCwgVGV4dEFyZWFQcm9wcz4oKHByb3BzLCBpbm5lclJlZikgPT4ge1xuICAgICAgICBjb25zdCB7XG4gICAgICAgICAgICBoZWxwZXJUZXh0LFxuICAgICAgICAgICAgc3RhdHVzLFxuICAgICAgICAgICAgcmVzaXplLFxuICAgICAgICAgICAgcmlnaHRIZWxwZXIsXG4gICAgICAgICAgICBsZWZ0SGVscGVyLFxuICAgICAgICAgICAgbGVmdEhlbHBlclBsYWNlbWVudCA9ICdpbm5lcicsXG4gICAgICAgICAgICBjb250ZW50UmlnaHQsXG4gICAgICAgICAgICBhdXRvUmVzaXplID0gZmFsc2UsXG4gICAgICAgICAgICBtaW5BdXRvID0gMCxcbiAgICAgICAgICAgIG1heEF1dG8sXG4gICAgICAgICAgICBsYWJlbCxcbiAgICAgICAgICAgIGxhYmVsUGxhY2VtZW50ID0gJ2lubmVyJyxcbiAgICAgICAgICAgIHRpdGxlQ2FwdGlvbixcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyLFxuICAgICAgICAgICAgZGVmYXVsdFZhbHVlLFxuICAgICAgICAgICAgaGVpZ2h0LFxuICAgICAgICAgICAgd2lkdGgsXG4gICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgIGRpc2FibGVkLFxuICAgICAgICAgICAgcmVxdWlyZWQgPSBmYWxzZSxcbiAgICAgICAgICAgIHJlcXVpcmVkUGxhY2VtZW50ID0gJ3JpZ2h0JyxcbiAgICAgICAgICAgIGhhc1JlcXVpcmVkSW5kaWNhdG9yID0gdHJ1ZSxcbiAgICAgICAgICAgIG9wdGlvbmFsID0gZmFsc2UsXG4gICAgICAgICAgICBjbGVhcixcbiAgICAgICAgICAgIGhhc0RpdmlkZXIsXG4gICAgICAgICAgICBzaXplLFxuICAgICAgICAgICAgdmlldyxcbiAgICAgICAgICAgIGlkLFxuICAgICAgICAgICAgc3R5bGUsXG4gICAgICAgICAgICBjbGFzc05hbWUsXG4gICAgICAgICAgICByZWFkT25seSxcbiAgICAgICAgICAgIHJvd3MsXG4gICAgICAgICAgICBjb2xzLFxuICAgICAgICAgICAgaGludFRyaWdnZXIgPSAnaG92ZXInLFxuICAgICAgICAgICAgaGludFRleHQsXG4gICAgICAgICAgICBoaW50VmlldyA9ICdkZWZhdWx0JyxcbiAgICAgICAgICAgIGhpbnRTaXplID0gJ20nLFxuICAgICAgICAgICAgaGludFRhcmdldEljb24sXG4gICAgICAgICAgICBoaW50UGxhY2VtZW50ID0gJ2F1dG8nLFxuICAgICAgICAgICAgaGludEhhc0Fycm93LFxuICAgICAgICAgICAgaGludE9mZnNldCA9IEhJTlRfREVGQVVMVF9PRkZTRVQsXG4gICAgICAgICAgICBoaW50V2lkdGgsXG4gICAgICAgICAgICBoaW50Q29udGVudExlZnQsXG4gICAgICAgICAgICBvbkNoYW5nZSxcbiAgICAgICAgICAgIC4uLnJlc3RcbiAgICAgICAgfSA9IHByb3BzO1xuXG4gICAgICAgIGNvbnN0IFtpc0hpbnRWaXNpYmxlLCBzZXRJc0hpbnRWaXNpYmxlXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgICAgICAgY29uc3QgW2hlbHBlcldpZHRoLCBzZXRIZWxwZXJXaWR0aF0gPSB1c2VTdGF0ZTxzdHJpbmc+KHdpZHRoID8gYCR7d2lkdGh9cmVtYCA6ICcxMDAlJyk7XG4gICAgICAgIGNvbnN0IFtmb2N1c2VkLCBzZXRGb2N1c2VkXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgICAgICAgLy8gVE9ETzog0L/QtdGA0LXQvdC10YHRgtC4INCyINC+0LHRidGD0Y4g0L/QtdGA0LXQvNC10L3QvdGD0Y4g0LTQu9GPIHZhbHVlINGB0L3QsNGA0YPQttC4INC4INCy0L3Rg9GC0YDQuFxuICAgICAgICBjb25zdCBbdW5jb250cm9sbGVkVmFsdWUsIHNldFVuY29udHJvbGxlZFZhbHVlXSA9IHVzZVN0YXRlPHN0cmluZyB8IHVuZGVmaW5lZD4oKTtcblxuICAgICAgICBjb25zdCBvdXRlclJlZiA9IGNyZWF0ZVJlZjxIVE1MVGV4dEFyZWFFbGVtZW50PigpO1xuICAgICAgICBjb25zdCBoaWRkZW5SZWYgPSB1c2VSZWY8SFRNTFRleHRBcmVhRWxlbWVudCB8IG51bGw+KG51bGwpO1xuXG4gICAgICAgIGNvbnN0IGhpbnRSZWYgPSB1c2VPdXRzaWRlQ2xpY2s8SFRNTERpdkVsZW1lbnQ+KCgpID0+IHtcbiAgICAgICAgICAgIHNldElzSGludFZpc2libGUoZmFsc2UpO1xuICAgICAgICB9KTtcbiAgICAgICAgY29uc3QgaGludElubmVyUmVmID0gdXNlUmVmPEhUTUxEaXZFbGVtZW50PihudWxsKTtcbiAgICAgICAgY29uc3QgaGludEZvcmtSZWYgPSB1c2VGb3JrUmVmKGhpbnRSZWYsIGhpbnRJbm5lclJlZik7XG5cbiAgICAgICAgY29uc3QgaXNJbm5lckxlZnRIZWxwZXJQbGFjZW1lbnQgPSBsZWZ0SGVscGVyUGxhY2VtZW50ID09PSAnaW5uZXInO1xuICAgICAgICBjb25zdCBsZWZ0SGVscGVyVGV4dCA9IGxlZnRIZWxwZXIgfHwgaGVscGVyVGV4dDtcbiAgICAgICAgY29uc3QgaW5uZXJPcHRpb25hbCA9IHJlcXVpcmVkID8gZmFsc2UgOiBvcHRpb25hbDtcbiAgICAgICAgY29uc3QgaGFzTGVmdEhlbHBlciA9IEJvb2xlYW4obGVmdEhlbHBlciB8fCBoZWxwZXJUZXh0KTtcbiAgICAgICAgY29uc3QgaGFzUmlnaHRIZWxwZXIgPSBCb29sZWFuKHJpZ2h0SGVscGVyKTtcbiAgICAgICAgY29uc3QgaGFzSGVscGVyID0gIWlzSW5uZXJMZWZ0SGVscGVyUGxhY2VtZW50ID8gaGFzUmlnaHRIZWxwZXIgOiBoYXNMZWZ0SGVscGVyIHx8IGhhc1JpZ2h0SGVscGVyO1xuICAgICAgICBjb25zdCBoYXNPdXRlckxhYmVsID0gQm9vbGVhbihsYWJlbCAmJiBsYWJlbFBsYWNlbWVudCA9PT0gJ291dGVyJyk7XG4gICAgICAgIGNvbnN0IGhhc0lubmVyTGFiZWwgPSBCb29sZWFuKGxhYmVsICYmIGxhYmVsUGxhY2VtZW50ID09PSAnaW5uZXInICYmIHNpemUgIT09ICd4cycpO1xuICAgICAgICBjb25zdCBoYXNQbGFjZWhvbGRlck9wdGlvbmFsID0gaW5uZXJPcHRpb25hbCAmJiAhaGFzT3V0ZXJMYWJlbDtcblxuICAgICAgICBjb25zdCBvdmVycmlkZGVuVmlldyA9IHN0YXR1cyAhPT0gdW5kZWZpbmVkID8gZmFsbGJhY2tTdGF0dXNNYXBbc3RhdHVzXSA6IHZpZXc7XG4gICAgICAgIGNvbnN0IHRleHRhcmVhSGVscGVySWQgPSBpZCA/IGAke2lkfS1oZWxwZXJgIDogdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBhcHBseUN1c3RvbVdpZHRoID0gcmVzaXplICE9PSAnaG9yaXpvbnRhbCcgJiYgcmVzaXplICE9PSAnYm90aCcgJiYgIWNvbHM7XG4gICAgICAgIGNvbnN0IHBsYWNlaG9sZGVyTGFiZWwgPSBoYXNJbm5lckxhYmVsID8gbGFiZWwgOiBwbGFjZWhvbGRlcjtcbiAgICAgICAgY29uc3QgYXBwbHlBdXRvUmVzaXplID0gYXV0b1Jlc2l6ZSB8fCBCb29sZWFuKGNsZWFyKTtcblxuICAgICAgICBjb25zdCBjbGVhckNsYXNzID0gY2xlYXIgPyBjbGFzc2VzLmNsZWFyIDogdW5kZWZpbmVkO1xuICAgICAgICBjb25zdCBoYXNIaW50Q2xhc3MgPSBoaW50VGV4dCA/IGNsYXNzZXMuaGFzSGludCA6IHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgaGFzUmlnaHRDb250ZW50Q2xhc3MgPSBjb250ZW50UmlnaHQgPyBjbGFzc2VzLmhhc1JpZ2h0Q29udGVudCA6IHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgaGFzRGl2aWRlckNsYXNzID0gaGFzRGl2aWRlciA/IGNsYXNzZXMuaGFzRGl2aWRlciA6IHVuZGVmaW5lZDtcbiAgICAgICAgY29uc3QgcmVxdWlyZWRQbGFjZW1lbnRDbGFzcyA9IHJlcXVpcmVkUGxhY2VtZW50ID09PSAncmlnaHQnID8gY2xhc3Nlcy5yZXF1aXJlZEFsaWduUmlnaHQgOiB1bmRlZmluZWQ7XG5cbiAgICAgICAgY29uc3QgaGFuZGxlSGludFNob3cgPSAoKSA9PiBzZXRJc0hpbnRWaXNpYmxlKHRydWUpO1xuICAgICAgICBjb25zdCBoYW5kbGVIaW50SGlkZSA9ICgpID0+IHNldElzSGludFZpc2libGUoZmFsc2UpO1xuICAgICAgICBjb25zdCBoYW5kbGVIaW50Q2xpY2s6IE1vdXNlRXZlbnRIYW5kbGVyID0gKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICBpZiAoIWhpbnRUZXh0IHx8IGhpbnRUcmlnZ2VyICE9PSAnY2xpY2snKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgIGNvbnN0IHRhcmdldElzUG9wb3ZlciA9IGV2ZW50LnRhcmdldCA9PT0gaGludElubmVyUmVmLmN1cnJlbnQ7XG4gICAgICAgICAgICBjb25zdCByb290SGFzVGFyZ2V0ID0gaGludElubmVyUmVmLmN1cnJlbnQ/LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBFbGVtZW50KTtcblxuICAgICAgICAgICAgaWYgKCF0YXJnZXRJc1BvcG92ZXIgJiYgIXJvb3RIYXNUYXJnZXQpIHtcbiAgICAgICAgICAgICAgICBzZXRJc0hpbnRWaXNpYmxlKHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAob3V0ZXJSZWYuY3VycmVudCkge1xuICAgICAgICAgICAgICAgIHNldFVuY29udHJvbGxlZFZhbHVlKG91dGVyUmVmLmN1cnJlbnQudmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9LCBbb3V0ZXJSZWZdKTtcblxuICAgICAgICB1c2VSZXNpemVPYnNlcnZlcihvdXRlclJlZiwgKGN1cnJlbnRFbGVtZW50KSA9PiB7XG4gICAgICAgICAgICBjb25zdCB7IHdpZHRoOiBpbmxpbmVXaWR0aCB9ID0gY3VycmVudEVsZW1lbnQuc3R5bGU7XG5cbiAgICAgICAgICAgIGlmIChpbmxpbmVXaWR0aCB8fCBjb2xzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgeyB3aWR0aDogZWxlbWVudFdpZHRoIH0gPSBjdXJyZW50RWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgICAgICAgICBzZXRIZWxwZXJXaWR0aChgJHtlbGVtZW50V2lkdGggLyBST09UX0ZPTlRfU0laRX1yZW1gKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdXNlQXV0b1Jlc2l6ZShhcHBseUF1dG9SZXNpemUsIG91dGVyUmVmLCB2YWx1ZSB8fCB1bmNvbnRyb2xsZWRWYWx1ZSwgbWluQXV0bywgbWF4QXV0bywgcmVzaXplLCBoaWRkZW5SZWYpO1xuXG4gICAgICAgIGNvbnN0IG9uRm9jdXNIYW5kbGVyID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgICAgICAgc2V0Rm9jdXNlZCh0cnVlKTtcbiAgICAgICAgfSwgW10pO1xuXG4gICAgICAgIGNvbnN0IG9uQmx1ckhhbmRsZXIgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgICAgICAgICBzZXRGb2N1c2VkKGZhbHNlKTtcbiAgICAgICAgfSwgW10pO1xuXG4gICAgICAgIGNvbnN0IG9uQ2hhbmdlSGFuZGxlciA9IHVzZUNhbGxiYWNrKFxuICAgICAgICAgICAgKGV2ZW50OiBSZWFjdC5DaGFuZ2VFdmVudDxIVE1MVGV4dEFyZWFFbGVtZW50PikgPT4ge1xuICAgICAgICAgICAgICAgIC8vIElORk86INCU0LvRjyDQutGA0LDQudC90LUg0YDQtdC00LrQuNGFINC60LXQudGB0L7Qsiwg0LrQvtCz0LTQsCB2YWx1ZSDRgdC90LDRgNGD0LbQuCDQvdC1INC60L7QvdGC0YDQvtC70LjRgNGD0LXRgtGB0Y9cbiAgICAgICAgICAgICAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICBzZXRVbmNvbnRyb2xsZWRWYWx1ZShldmVudD8udGFyZ2V0LnZhbHVlKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBvbkNoYW5nZT8uKGV2ZW50KTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBbdmFsdWUsIG9uQ2hhbmdlXSxcbiAgICAgICAgKTtcblxuICAgICAgICBjb25zdCBoYW5kbGVUZXh0QXJlYUZvY3VzID0gKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHJlYWRPbmx5IHx8IGRpc2FibGVkIHx8ICFvdXRlclJlZj8uY3VycmVudCkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgb3V0ZXJSZWYuY3VycmVudC5mb2N1cygpO1xuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IGR5bmFtaWNMYWJlbENsYXNzZXMgPSBnZXREeW5hbWljTGFiZWxDbGFzc2VzKFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHNpemUsXG4gICAgICAgICAgICAgICAgcmVhZE9ubHksXG4gICAgICAgICAgICAgICAgbGFiZWwsXG4gICAgICAgICAgICAgICAgbGFiZWxQbGFjZW1lbnQsXG4gICAgICAgICAgICAgICAgdmFsdWU6IHZhbHVlIHx8IHVuY29udHJvbGxlZFZhbHVlIHx8IGRlZmF1bHRWYWx1ZSxcbiAgICAgICAgICAgICAgICByb3dzLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGZvY3VzZWQsXG4gICAgICAgICk7XG5cbiAgICAgICAgY29uc3Qgb3B0aW9uYWxUZXh0Tm9kZSA9IGlubmVyT3B0aW9uYWwgPyAoXG4gICAgICAgICAgICA8U3R5bGVkT3B0aW9uYWxUZXh0IGluaGVyaXRGb250PXshaGFzT3V0ZXJMYWJlbH0+XG4gICAgICAgICAgICAgICAge0Jvb2xlYW4oaGFzUGxhY2Vob2xkZXJPcHRpb25hbCA/IHBsYWNlaG9sZGVyTGFiZWwgOiBsYWJlbCkgJiYgJ1xceGEwJ31cbiAgICAgICAgICAgICAgICB7b3B0aW9uYWxUZXh0fVxuICAgICAgICAgICAgPC9TdHlsZWRPcHRpb25hbFRleHQ+XG4gICAgICAgICkgOiBudWxsO1xuXG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICA8Um9vdFxuICAgICAgICAgICAgICAgIHZpZXc9e292ZXJyaWRkZW5WaWV3fVxuICAgICAgICAgICAgICAgIHNpemU9e3NpemV9XG4gICAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgICAgICBzdHlsZT17eyB3aWR0aDogaGVscGVyV2lkdGgsIC4uLnN0eWxlIH19XG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjeChjbGVhckNsYXNzLCBoYXNEaXZpZGVyQ2xhc3MsIGhhc0hpbnRDbGFzcywgY2xhc3NOYW1lKX1cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVUZXh0QXJlYUZvY3VzfVxuICAgICAgICAgICAgICAgIGRhdGEtcm9vdFxuICAgICAgICAgICAgICAgIHsuLi4oaGludFRleHQgJiYge1xuICAgICAgICAgICAgICAgICAgICBoaW50VmlldyxcbiAgICAgICAgICAgICAgICAgICAgaGludFNpemUsXG4gICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgeyhoYXNPdXRlckxhYmVsIHx8IHRpdGxlQ2FwdGlvbikgJiYgKFxuICAgICAgICAgICAgICAgICAgICA8T3V0ZXJMYWJlbFdyYXBwZXIgd2lkdGg9e2hlbHBlcldpZHRofSBpc0lubmVyTGFiZWw9e2xhYmVsUGxhY2VtZW50ID09PSAnaW5uZXInfT5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtoYXNPdXRlckxhYmVsICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW5kaWNhdG9yV3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZExhYmVsPntsYWJlbH08L1N0eWxlZExhYmVsPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtoaW50VGV4dCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSGludFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEhpbnRDb21wb25lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXtoaW50Rm9ya1JlZn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFRleHQ9e2hpbnRUZXh0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50VHJpZ2dlcj17aGludFRyaWdnZXJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzSGludFZpc2libGU9e2lzSGludFZpc2libGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRUYXJnZXRJY29uPXtoaW50VGFyZ2V0SWNvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFBsYWNlbWVudD17aGludFBsYWNlbWVudH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludEhhc0Fycm93PXtoaW50SGFzQXJyb3d9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRPZmZzZXQ9e2hpbnRPZmZzZXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRXaWR0aD17aGludFdpZHRofVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50Q29udGVudExlZnQ9e2hpbnRDb250ZW50TGVmdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlSGludFNob3c9e2hhbmRsZUhpbnRTaG93fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVIaW50SGlkZT17aGFuZGxlSGludEhpZGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRDbGljaz17aGFuZGxlSGludENsaWNrfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZEhpbnRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cmVxdWlyZWQgJiYgaGFzUmVxdWlyZWRJbmRpY2F0b3IgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEluZGljYXRvclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y3goXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzZXMub3V0ZXJMYWJlbFBsYWNlbWVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRQbGFjZW1lbnRDbGFzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFzSGludENsYXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7b3B0aW9uYWxUZXh0Tm9kZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZEluZGljYXRvcldyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAge3RpdGxlQ2FwdGlvbiAmJiA8VGl0bGVDYXB0aW9uPnt0aXRsZUNhcHRpb259PC9UaXRsZUNhcHRpb24+fVxuICAgICAgICAgICAgICAgICAgICA8L091dGVyTGFiZWxXcmFwcGVyPlxuICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgPFN0eWxlZENvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2N4KHN0eWxlZENvbnRhaW5lciwgLi4uZHluYW1pY0xhYmVsQ2xhc3Nlcyl9XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoPXtoZWxwZXJXaWR0aH1cbiAgICAgICAgICAgICAgICAgICAgb25Gb2N1cz17b25Gb2N1c0hhbmRsZXJ9XG4gICAgICAgICAgICAgICAgICAgIG9uQmx1cj17b25CbHVySGFuZGxlcn1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHshaGFzT3V0ZXJMYWJlbCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtyZXF1aXJlZCAmJiBoYXNSZXF1aXJlZEluZGljYXRvciAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbmRpY2F0b3IgY2xhc3NOYW1lPXtjeChjbGFzc2VzLmlubmVyTGFiZWxQbGFjZW1lbnQsIHJlcXVpcmVkUGxhY2VtZW50Q2xhc3MpfSAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2hpbnRUZXh0ICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEhpbnRXcmFwcGVyIGNsYXNzTmFtZT17Y2xhc3Nlcy5pbm5lckxhYmVsUGxhY2VtZW50fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxIaW50Q29tcG9uZW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXtoaW50Rm9ya1JlZn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50VGV4dD17aGludFRleHR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFRyaWdnZXI9e2hpbnRUcmlnZ2VyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzSGludFZpc2libGU9e2lzSGludFZpc2libGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFRhcmdldEljb249e2hpbnRUYXJnZXRJY29ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRQbGFjZW1lbnQ9e2hpbnRQbGFjZW1lbnR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludEhhc0Fycm93PXtoaW50SGFzQXJyb3d9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludE9mZnNldD17aGludE9mZnNldH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50V2lkdGg9e2hpbnRXaWR0aH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50Q29udGVudExlZnQ9e2hpbnRDb250ZW50TGVmdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRTaG93PXtoYW5kbGVIaW50U2hvd31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVIaW50SGlkZT17aGFuZGxlSGludEhpZGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlSGludENsaWNrPXtoYW5kbGVIaW50Q2xpY2t9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNJbm5lckxhYmVsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZEhpbnRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAge2NvbnRlbnRSaWdodCAmJiA8U3R5bGVkQ29udGVudD57Y29udGVudFJpZ2h0fTwvU3R5bGVkQ29udGVudD59XG4gICAgICAgICAgICAgICAgICAgIDxTdHlsZWRUZXh0QXJlYVdyYXBwZXIgY2xhc3NOYW1lPXtjeChzdHlsZWRUZXh0QXJlYVdyYXBwZXIpfSBoYXNIZWxwZXI9e2hhc0hlbHBlcn0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkVGV4dEFyZWFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2N4KHN0eWxlZFRleHRBcmVhLCBoYXNSaWdodENvbnRlbnRDbGFzcyl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9e2lkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc0NvbnRlbnRSaWdodD17Qm9vbGVhbihjb250ZW50UmlnaHQpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc0hlbHBlcj17aGFzSGVscGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFwcGx5Q3VzdG9tV2lkdGg9e2FwcGx5Q3VzdG9tV2lkdGh9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXttZXJnZVJlZnMob3V0ZXJSZWYsIGlubmVyUmVmKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ9e3JlcXVpcmVkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodD17YXBwbHlBdXRvUmVzaXplID8gbWluQXV0byA6IGhlaWdodH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD17d2lkdGh9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9e3BsYWNlaG9sZGVyTGFiZWx9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJpYS1kZXNjcmliZWRieT17dGV4dGFyZWFIZWxwZXJJZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZT17dmFsdWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhZE9ubHk9e3JlYWRPbmx5fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvd3M9e3Jvd3N9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29scz17Y29sc31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNpemU9e3Jlc2l6ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0VmFsdWU9e2RlZmF1bHRWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2VIYW5kbGVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEtdG91clxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsuLi5yZXN0fVxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgIHthcHBseUF1dG9SZXNpemUgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRIaWRkZW5UZXh0QXJlYVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcmlhLWhpZGRlblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWY9e2hpZGRlblJlZn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFzQ29udGVudFJpZ2h0PXtCb29sZWFuKGNvbnRlbnRSaWdodCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPXt2YWx1ZSB8fCB1bmNvbnRyb2xsZWRWYWx1ZSB8fCAnICd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRWYWx1ZT17ZGVmYXVsdFZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZFRleHRBcmVhV3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAge2hhc0hlbHBlciAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSGVscGVycyBjbGFzc05hbWU9e3N0eWxlZEhlbHBlcnN9IGlkPXt0ZXh0YXJlYUhlbHBlcklkfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aXNJbm5lckxlZnRIZWxwZXJQbGFjZW1lbnQgJiYgKGxlZnRIZWxwZXIgfHwgaGVscGVyVGV4dCkgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkTGVmdEhlbHBlcj57bGVmdEhlbHBlciB8fCBoZWxwZXJUZXh0fTwvU3R5bGVkTGVmdEhlbHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtyaWdodEhlbHBlciAmJiA8U3R5bGVkUmlnaHRIZWxwZXIgZGF0YS1yb290PntyaWdodEhlbHBlcn08L1N0eWxlZFJpZ2h0SGVscGVyPn1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkSGVscGVycz5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAge3BsYWNlaG9sZGVyTGFiZWwgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZFBsYWNlaG9sZGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFzQ29udGVudFJpZ2h0PXtCb29sZWFuKGNvbnRlbnRSaWdodCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtzdHlsZWRQbGFjZWhvbGRlcn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBodG1sRm9yPXtpZH1cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cGxhY2Vob2xkZXJMYWJlbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IWhhc091dGVyTGFiZWwgJiYgb3B0aW9uYWxUZXh0Tm9kZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkUGxhY2Vob2xkZXI+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgPC9TdHlsZWRDb250YWluZXI+XG4gICAgICAgICAgICAgICAge2hhc0xlZnRIZWxwZXIgJiYgIWlzSW5uZXJMZWZ0SGVscGVyUGxhY2VtZW50ICYmIChcbiAgICAgICAgICAgICAgICAgICAgPFN0eWxlZE91dHNpZGVIZWxwZXJzV3JhcHBlciBpZD17dGV4dGFyZWFIZWxwZXJJZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkTGVmdEhlbHBlcj57bGVmdEhlbHBlclRleHR9PC9TdHlsZWRMZWZ0SGVscGVyPlxuICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZE91dHNpZGVIZWxwZXJzV3JhcHBlcj5cbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9Sb290PlxuICAgICAgICApO1xuICAgIH0pO1xuXG5leHBvcnQgY29uc3QgdGV4dEFyZWFDb25maWcgPSB7XG4gICAgbmFtZTogJ1RleHRBcmVhJyxcbiAgICB0YWc6ICdkaXYnLFxuICAgIGxheW91dDogdGV4dEFyZWFSb290LFxuICAgIGJhc2UsXG4gICAgdmFyaWF0aW9uczoge1xuICAgICAgICBzaXplOiB7XG4gICAgICAgICAgICBjc3M6IHNpemVDU1MsXG4gICAgICAgIH0sXG4gICAgICAgIHZpZXc6IHtcbiAgICAgICAgICAgIGNzczogdmlld0NTUyxcbiAgICAgICAgfSxcbiAgICAgICAgY2xlYXI6IHtcbiAgICAgICAgICAgIGNzczogY2xlYXJDU1MsXG4gICAgICAgICAgICBhdHRyczogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAgcmVhZE9ubHk6IHtcbiAgICAgICAgICAgIGNzczogcmVhZE9ubHlDU1MsXG4gICAgICAgICAgICBhdHRyczogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAgZGlzYWJsZWQ6IHtcbiAgICAgICAgICAgIGNzczogZGlzYWJsZWRDU1MsXG4gICAgICAgICAgICBhdHRyczogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAgaGludFZpZXc6IHtcbiAgICAgICAgICAgIGNzczogaGludFZpZXdDU1MsXG4gICAgICAgIH0sXG4gICAgICAgIGhpbnRTaXplOiB7XG4gICAgICAgICAgICBjc3M6IGhpbnRTaXplQ1NTLFxuICAgICAgICB9LFxuICAgIH0sXG4gICAgZGVmYXVsdHM6IHtcbiAgICAgICAgc2l6ZTogJ20nLFxuICAgICAgICB2aWV3OiAncHJpbWFyeScsXG4gICAgfSxcbn07XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcURhIn0= */");
|
134
134
|
// TODO: Удалить после отказа от старых библиотек plasma-web / plasma-b2c
|
135
135
|
var fallbackStatusMap = {
|
136
136
|
'': 'primary',
|
@@ -311,7 +311,8 @@ export var textAreaRoot = function(Root) {
|
|
311
311
|
width: helperWidth
|
312
312
|
}, style),
|
313
313
|
className: cx(clearClass, hasDividerClass, hasHintClass, className),
|
314
|
-
onClick: handleTextAreaFocus
|
314
|
+
onClick: handleTextAreaFocus,
|
315
|
+
"data-root": true
|
315
316
|
}, hintText && {
|
316
317
|
hintView: hintView,
|
317
318
|
hintSize: hintSize
|
@@ -383,7 +384,8 @@ export var textAreaRoot = function(Root) {
|
|
383
384
|
cols: cols,
|
384
385
|
resize: resize,
|
385
386
|
defaultValue: defaultValue,
|
386
|
-
onChange: onChangeHandler
|
387
|
+
onChange: onChangeHandler,
|
388
|
+
"data-tour": true
|
387
389
|
}, rest)), applyAutoResize && /*#__PURE__*/ React.createElement(StyledHiddenTextArea, {
|
388
390
|
"aria-hidden": true,
|
389
391
|
ref: hiddenRef,
|
@@ -393,7 +395,9 @@ export var textAreaRoot = function(Root) {
|
|
393
395
|
})), hasHelper && /*#__PURE__*/ React.createElement(StyledHelpers, {
|
394
396
|
className: styledHelpers,
|
395
397
|
id: textareaHelperId
|
396
|
-
}, isInnerLeftHelperPlacement && (leftHelper || helperText) && /*#__PURE__*/ React.createElement(StyledLeftHelper, null, leftHelper || helperText), rightHelper && /*#__PURE__*/ React.createElement(StyledRightHelper,
|
398
|
+
}, isInnerLeftHelperPlacement && (leftHelper || helperText) && /*#__PURE__*/ React.createElement(StyledLeftHelper, null, leftHelper || helperText), rightHelper && /*#__PURE__*/ React.createElement(StyledRightHelper, {
|
399
|
+
"data-root": true
|
400
|
+
}, rightHelper)), placeholderLabel && /*#__PURE__*/ React.createElement(StyledPlaceholder, {
|
397
401
|
hasContentRight: Boolean(contentRight),
|
398
402
|
className: styledPlaceholder,
|
399
403
|
htmlFor: id
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import { TOUR_BORDER_RADIUS_TOKEN } from "../Tour/utils";
|
1
2
|
export var classes = {
|
2
3
|
/** Класс отвечающий за поднятие и уменьшение плейсхолдера */ innerPlaceholderUp: 'inner-placeholder-up',
|
3
4
|
/** Класс отвечающий за изменение цвета плейсхолдера при фокусе */ focusedOuterPlaceholderColor: 'focused-outer-placeholder-color',
|
@@ -165,5 +166,6 @@ export var tokens = {
|
|
165
166
|
tooltipArrowMaskImage: '--plasma-textarea__tooltip-arrow-mask-image',
|
166
167
|
tooltipArrowHeight: '--plasma-textarea__tooltip-arrow-height',
|
167
168
|
tooltipArrowEdgeMargin: '--plasma-textarea__tooltip-arrow-edge-margin',
|
168
|
-
tooltipArrowBackground: '--plasma-textarea__tooltip-arrow-background'
|
169
|
+
tooltipArrowBackground: '--plasma-textarea__tooltip-arrow-background',
|
170
|
+
tourBorderRadius: TOUR_BORDER_RADIUS_TOKEN
|
169
171
|
};
|
@@ -1,2 +1,3 @@
|
|
1
1
|
import { css } from "@emotion/react";
|
2
|
-
|
2
|
+
import { tokens } from "../../TextArea.tokens";
|
3
|
+
export var base = /*#__PURE__*/ css(tokens.tourBorderRadius, ":var(", tokens.borderRadius, ");", "base", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjLWVtb3Rpb24vY29tcG9uZW50cy9UZXh0QXJlYS92YXJpYXRpb25zL19zaXplL2Jhc2UudHMiLCJzb3VyY2VzIjpbInNyYy1lbW90aW9uL2NvbXBvbmVudHMvVGV4dEFyZWEvdmFyaWF0aW9ucy9fc2l6ZS9iYXNlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcblxuaW1wb3J0IHsgdG9rZW5zIH0gZnJvbSAnLi4vLi4vVGV4dEFyZWEudG9rZW5zJztcblxuZXhwb3J0IGNvbnN0IGJhc2UgPSBjc3NgXG4gICAgJHt0b2tlbnMudG91ckJvcmRlclJhZGl1c306IHZhcigke3Rva2Vucy5ib3JkZXJSYWRpdXN9KTtcbmA7XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSW9CIn0= */");
|
@@ -120,7 +120,7 @@ import { useKeyNavigation } from "./hooks";
|
|
120
120
|
import { HintComponent } from "./ui/Hint/Hint";
|
121
121
|
import { getInputWidth } from "./getInputWidth";
|
122
122
|
var optionalText = 'optional';
|
123
|
-
export var base = /*#__PURE__*/ css("display:block;", "base", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjLWVtb3Rpb24vY29tcG9uZW50cy9UZXh0RmllbGQvVGV4dEZpZWxkLnRzeCIsInNvdXJjZXMiOlsic3JjLWVtb3Rpb24vY29tcG9uZW50cy9UZXh0RmllbGQvVGV4dEZpZWxkLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgZm9yd2FyZFJlZiwgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHR5cGUgeyBGb3JtRXZlbnRIYW5kbGVyLCBDaGFuZ2VFdmVudEhhbmRsZXIsIEtleWJvYXJkRXZlbnQsIENoYW5nZUV2ZW50LCBNb3VzZUV2ZW50SGFuZGxlciB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZUZvcmtSZWYgfSBmcm9tICdAc2FsdXRlanMvcGxhc21hLWNvcmUnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgY3gsIHNhZmVVc2VJZCB9IGZyb20gJ3NyYy91dGlscyc7XG5pbXBvcnQgdHlwZSB7IFJvb3RQcm9wcyB9IGZyb20gJ3NyYy9lbmdpbmVzJztcbmltcG9ydCB7IHVzZU91dHNpZGVDbGljayB9IGZyb20gJ3NyYy9ob29rcyc7XG5cbmltcG9ydCB0eXBlIHsgQ2hpcFZhbHVlcywgVGV4dEZpZWxkUHJpbWl0aXZlVmFsdWUsIFRleHRGaWVsZFByb3BzLCBUZXh0RmllbGRSb290UHJvcHMgfSBmcm9tICcuL1RleHRGaWVsZC50eXBlcyc7XG5pbXBvcnQgeyBiYXNlIGFzIHNpemVDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX3NpemUvYmFzZSc7XG5pbXBvcnQgeyBiYXNlIGFzIHZpZXdDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX3ZpZXcvYmFzZSc7XG5pbXBvcnQgeyBiYXNlIGFzIGNsZWFyQ1NTIH0gZnJvbSAnLi92YXJpYXRpb25zL19jbGVhci9iYXNlJztcbmltcG9ydCB7IGJhc2UgYXMgZGlzYWJsZWRDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX2Rpc2FibGVkL2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyByZWFkT25seUNTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fcmVhZC1vbmx5L2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBsYWJlbFBsYWNlbWVudENTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fbGFiZWwtcGxhY2VtZW50L2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBoaW50Vmlld0NTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9faGludC12aWV3L2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBoaW50U2l6ZUNTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9faGludC1zaXplL2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBjaGlwVmlld0NTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fY2hpcC12aWV3L2Jhc2UnO1xuaW1wb3J0IHtcbiAgICBJbnB1dCxcbiAgICBJbnB1dENvbnRhaW5lcixcbiAgICBMZWZ0SGVscGVyLFxuICAgIExhYmVsLFxuICAgIElucHV0V3JhcHBlcixcbiAgICBJbnB1dExhYmVsV3JhcHBlcixcbiAgICBTdHlsZWRDb250ZW50TGVmdCxcbiAgICBTdHlsZWRDb250ZW50UmlnaHQsXG4gICAgU3R5bGVkQ2hpcHMsXG4gICAgU3R5bGVkVGV4dEJlZm9yZSxcbiAgICBTdHlsZWRUZXh0QWZ0ZXIsXG4gICAgU3R5bGVkSW5kaWNhdG9yLFxuICAgIFN0eWxlZE9wdGlvbmFsVGV4dCxcbiAgICBJbnB1dFBsYWNlaG9sZGVyLFxuICAgIE91dGVyTGFiZWxXcmFwcGVyLFxuICAgIFRpdGxlQ2FwdGlvbixcbiAgICBTdHlsZWRIaW50V3JhcHBlcixcbiAgICBTdHlsZWRJbmRpY2F0b3JXcmFwcGVyLFxuICAgIFN0eWxlZENvbnRlbnRSaWdodFdyYXBwZXIsXG59IGZyb20gJy4vVGV4dEZpZWxkLnN0eWxlcyc7XG5pbXBvcnQgeyBjbGFzc2VzIH0gZnJvbSAnLi9UZXh0RmllbGQudG9rZW5zJztcbmltcG9ydCB7IFRleHRGaWVsZENoaXAgfSBmcm9tICcuL3VpJztcbmltcG9ydCB7IHVzZUtleU5hdmlnYXRpb24gfSBmcm9tICcuL2hvb2tzJztcbmltcG9ydCB7IEhpbnRDb21wb25lbnQgfSBmcm9tICcuL3VpL0hpbnQvSGludCc7XG5pbXBvcnQgeyBnZXRJbnB1dFdpZHRoIH0gZnJvbSAnLi9nZXRJbnB1dFdpZHRoJztcblxuY29uc3Qgb3B0aW9uYWxUZXh0ID0gJ29wdGlvbmFsJztcblxuZXhwb3J0IGNvbnN0IGJhc2UgPSBjc3NgXG4gICAgLyogTk9URTogV2Via2l0INC90LUg0L/RgNC40LzQtdC90Y/QtdGCIG9wYWNpdHkg0LogaW5saW5lINGC0LXQs9Cw0LwgKi9cbiAgICBkaXNwbGF5OiBibG9jaztcbmA7XG5cbmNvbnN0IEhJTlRfREVGQVVMVF9PRkZTRVQ6IFtudW1iZXIsIG51bWJlcl0gPSBbMCwgMF07XG5cbmV4cG9ydCBjb25zdCB0ZXh0RmllbGRSb290ID0gKFJvb3Q6IFJvb3RQcm9wczxIVE1MRGl2RWxlbWVudCwgVGV4dEZpZWxkUm9vdFByb3BzPikgPT5cbiAgICBmb3J3YXJkUmVmPEhUTUxJbnB1dEVsZW1lbnQsIFRleHRGaWVsZFByb3BzPihcbiAgICAgICAgKFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGlkLFxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICAgICAgICAgICBzdHlsZSxcblxuICAgICAgICAgICAgICAgIC8vIGxheW91dFxuICAgICAgICAgICAgICAgIGNvbnRlbnRMZWZ0LFxuICAgICAgICAgICAgICAgIGNvbnRlbnRSaWdodCxcbiAgICAgICAgICAgICAgICBsYWJlbCxcbiAgICAgICAgICAgICAgICBsYWJlbFBsYWNlbWVudCxcbiAgICAgICAgICAgICAgICBrZWVwUGxhY2Vob2xkZXIsXG4gICAgICAgICAgICAgICAgdGV4dEJlZm9yZSxcbiAgICAgICAgICAgICAgICB0ZXh0QWZ0ZXIsXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXIsXG4gICAgICAgICAgICAgICAgbGVmdEhlbHBlcixcbiAgICAgICAgICAgICAgICBlbnVtZXJhdGlvblR5cGUgPSAncGxhaW4nLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkUGxhY2VtZW50ID0gJ3JpZ2h0JyxcbiAgICAgICAgICAgICAgICBoYXNSZXF1aXJlZEluZGljYXRvciA9IHRydWUsXG4gICAgICAgICAgICAgICAgdGl0bGVDYXB0aW9uLFxuICAgICAgICAgICAgICAgIGNoaXBWaWV3ID0gJ2RlZmF1bHQnLFxuICAgICAgICAgICAgICAgIGNoaXBWYWxpZGF0b3IsXG5cbiAgICAgICAgICAgICAgICAvLyBoaW50XG4gICAgICAgICAgICAgICAgaGludFRyaWdnZXIgPSAnaG92ZXInLFxuICAgICAgICAgICAgICAgIGhpbnRUZXh0LFxuICAgICAgICAgICAgICAgIGhpbnRWaWV3ID0gJ2RlZmF1bHQnLFxuICAgICAgICAgICAgICAgIGhpbnRTaXplID0gJ20nLFxuICAgICAgICAgICAgICAgIGhpbnRUYXJnZXRJY29uLFxuICAgICAgICAgICAgICAgIGhpbnRUYXJnZXRQbGFjZW1lbnQgPSAnb3V0ZXInLFxuICAgICAgICAgICAgICAgIGhpbnRQbGFjZW1lbnQgPSAnYXV0bycsXG4gICAgICAgICAgICAgICAgaGludEhhc0Fycm93LFxuICAgICAgICAgICAgICAgIGhpbnRPZmZzZXQgPSBISU5UX0RFRkFVTFRfT0ZGU0VULFxuICAgICAgICAgICAgICAgIGhpbnRXaWR0aCxcbiAgICAgICAgICAgICAgICBoaW50Q29udGVudExlZnQsXG5cbiAgICAgICAgICAgICAgICAvLyB2YXJpYXRpb25zXG4gICAgICAgICAgICAgICAgdmlldyxcbiAgICAgICAgICAgICAgICBzaXplLFxuICAgICAgICAgICAgICAgIHJlYWRPbmx5ID0gZmFsc2UsXG4gICAgICAgICAgICAgICAgZGlzYWJsZWQgPSBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXF1aXJlZCA9IGZhbHNlLFxuICAgICAgICAgICAgICAgIGNsZWFyID0gZmFsc2UsXG4gICAgICAgICAgICAgICAgb3B0aW9uYWwsXG4gICAgICAgICAgICAgICAgaGFzRGl2aWRlcixcblxuICAgICAgICAgICAgICAgIC8vIGNvbnRyb2xsZWRcbiAgICAgICAgICAgICAgICB2YWx1ZTogb3V0ZXJWYWx1ZSxcbiAgICAgICAgICAgICAgICBjaGlwczogdmFsdWVzLFxuICAgICAgICAgICAgICAgIGNoaXBUeXBlID0gJ2RlZmF1bHQnLFxuXG4gICAgICAgICAgICAgICAgLy8gZXZlbnRzXG4gICAgICAgICAgICAgICAgb25DaGFuZ2UsXG4gICAgICAgICAgICAgICAgb25DaGFuZ2VDaGlwcyxcbiAgICAgICAgICAgICAgICBvblNlYXJjaCxcbiAgICAgICAgICAgICAgICBvbktleURvd24sXG4gICAgICAgICAgICAgICAgb25Gb2N1cyxcbiAgICAgICAgICAgICAgICBvbkJsdXIsXG5cbiAgICAgICAgICAgICAgICAvLyDQn9GA0L7Qv9GB0Ysg0LTQu9GPINCy0L3Rg9GC0YDQtdC90L3QtdCz0L4g0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40Y8sINC90LUg0L7RgtC00LDQtdGC0YHRjyDQvdCw0YDRg9C20YMuXG4gICAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgICAgIF9vbkVudGVyRGlzYWJsZWQsXG4gICAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgICAgIF9mb3JjZUNoaXBNYW5pcHVsYXRpb25XaXRoUmVhZG9ubHksXG5cbiAgICAgICAgICAgICAgICAuLi5yZXN0XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcmVmLFxuICAgICAgICApID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRlbnRSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuICAgICAgICAgICAgY29uc3QgaW5wdXRDb250YWluZXJSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuICAgICAgICAgICAgY29uc3QgaW5wdXRSZWYgPSB1c2VSZWY8SFRNTElucHV0RWxlbWVudD4obnVsbCk7XG4gICAgICAgICAgICBjb25zdCBpbnB1dEZvcmtSZWYgPSB1c2VGb3JrUmVmKGlucHV0UmVmLCByZWYpO1xuICAgICAgICAgICAgY29uc3QgY2hpcHNSZWZzID0gdXNlUmVmPEFycmF5PEhUTUxCdXR0b25FbGVtZW50Pj4oW10pO1xuXG4gICAgICAgICAgICBjb25zdCBjb250cm9sbGVkUmVmcyA9IHsgY29udGVudFJlZiwgaW5wdXRSZWYsIGNoaXBzUmVmcyB9O1xuXG4gICAgICAgICAgICBjb25zdCBbaGFzVmFsdWUsIHNldEhhc1ZhbHVlXSA9IHVzZVN0YXRlKFxuICAgICAgICAgICAgICAgIEJvb2xlYW4ob3V0ZXJWYWx1ZSkgfHwgQm9vbGVhbihpbnB1dFJlZj8uY3VycmVudD8udmFsdWUpIHx8IEJvb2xlYW4ocmVzdD8uZGVmYXVsdFZhbHVlKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBjb25zdCBbaGFzRm9jdXMsIHNldEhhc0ZvY3VzXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICAgICAgICAgICAgY29uc3QgW2NoaXBzLCBzZXRDaGlwc10gPSB1c2VTdGF0ZTxBcnJheTxDaGlwVmFsdWVzPj4oW10pO1xuICAgICAgICAgICAgY29uc3QgW2lzSGludFZpc2libGUsIHNldElzSGludFZpc2libGVdID0gdXNlU3RhdGUoZmFsc2UpO1xuXG4gICAgICAgICAgICBjb25zdCB1bmlxSWQgPSBzYWZlVXNlSWQoKTtcbiAgICAgICAgICAgIGNvbnN0IGlubmVySWQgPSBpZCB8fCB1bmlxSWQ7XG4gICAgICAgICAgICBjb25zdCBsYWJlbElkID0gc2FmZVVzZUlkKCk7XG4gICAgICAgICAgICBjb25zdCBoZWxwZXJUZXh0SWQgPSBzYWZlVXNlSWQoKTtcblxuICAgICAgICAgICAgY29uc3QgaXNEZWZhdWx0VmlldyA9IHZpZXcgPT09ICdkZWZhdWx0JyB8fCByZWFkT25seSB8fCBkaXNhYmxlZDtcblxuICAgICAgICAgICAgY29uc3QgaXNDaGlwRW51bWVyYXRpb24gPSBlbnVtZXJhdGlvblR5cGUgPT09ICdjaGlwJztcbiAgICAgICAgICAgIGNvbnN0IGlzQ2hpcHNWaXNpYmxlID0gaXNDaGlwRW51bWVyYXRpb24gJiYgQm9vbGVhbihjaGlwcz8ubGVuZ3RoKTtcbiAgICAgICAgICAgIGNvbnN0IHdpdGhIYXNDaGlwcyA9IGlzQ2hpcHNWaXNpYmxlID8gY2xhc3Nlcy5oYXNDaGlwcyA6IHVuZGVmaW5lZDtcblxuICAgICAgICAgICAgY29uc3QgaGFzTGFiZWxWYWx1ZSA9IEJvb2xlYW4obGFiZWwpO1xuICAgICAgICAgICAgY29uc3QgaGFzSW5uZXJMYWJlbCA9IHNpemUgIT09ICd4cycgJiYgbGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcicgJiYgIWlzQ2hpcHNWaXNpYmxlICYmIGhhc0xhYmVsVmFsdWU7XG4gICAgICAgICAgICBjb25zdCBoYXNPdXRlckxhYmVsID0gbGFiZWxQbGFjZW1lbnQgPT09ICdvdXRlcicgJiYgaGFzTGFiZWxWYWx1ZTtcbiAgICAgICAgICAgIGNvbnN0IGlubmVyS2VlcFBsYWNlaG9sZGVyID0ga2VlcFBsYWNlaG9sZGVyICYmIGxhYmVsUGxhY2VtZW50ID09PSAnaW5uZXInO1xuICAgICAgICAgICAgY29uc3QgaGFzUGxhY2Vob2xkZXIgPSBCb29sZWFuKHBsYWNlaG9sZGVyKSAmJiAoaW5uZXJLZWVwUGxhY2Vob2xkZXIgfHwgIWhhc0lubmVyTGFiZWwpO1xuICAgICAgICAgICAgbGV0IGhhc1RleHRBZnRlciA9IEJvb2xlYW4odGV4dEFmdGVyKTtcbiAgICAgICAgICAgIGxldCBoYXNUZXh0QmVmb3JlID0gdGV4dEJlZm9yZSAmJiAhaXNDaGlwRW51bWVyYXRpb247XG4gICAgICAgICAgICBpZiAobGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcicpIHtcbiAgICAgICAgICAgICAgICBpZiAoIWhhc1ZhbHVlICYmICFoYXNQbGFjZWhvbGRlciAmJiAhaGFzRm9jdXMpIHtcbiAgICAgICAgICAgICAgICAgICAgaGFzVGV4dEFmdGVyID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIGhhc1RleHRCZWZvcmUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IGhhc1BsYWNlaG9sZGVyUGFkZGluZyA9IGhhc0lubmVyTGFiZWwgJiYga2VlcFBsYWNlaG9sZGVyICYmIHNpemUgIT09ICd4cyc7XG5cbiAgICAgICAgICAgIGNvbnN0IGlubmVyTGFiZWxWYWx1ZSA9IGhhc0lubmVyTGFiZWwgfHwgaGFzT3V0ZXJMYWJlbCA/IGxhYmVsIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3QgaW5uZXJMYWJlbFBsYWNlbWVudFZhbHVlID0gbGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcicgJiYgIWhhc0lubmVyTGFiZWwgPyB1bmRlZmluZWQgOiBsYWJlbFBsYWNlbWVudDtcblxuICAgICAgICAgICAgY29uc3QgaW5uZXJQbGFjZWhvbGRlclZhbHVlID0gaGFzUGxhY2Vob2xkZXIgPyBwbGFjZWhvbGRlciA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGNvbnN0IHBsYWNlaG9sZGVyU2hvd24gPSBCb29sZWFuKGlubmVyUGxhY2Vob2xkZXJWYWx1ZSkgJiYgIWhhc1ZhbHVlO1xuXG4gICAgICAgICAgICBjb25zdCBjbGVhckNsYXNzID0gY2xlYXIgPyBjbGFzc2VzLmNsZWFyIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3QgaGFzRGl2aWRlckNsYXNzID0gaGFzRGl2aWRlciA/IGNsYXNzZXMuaGFzRGl2aWRlciA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGNvbnN0IGhhc0lubmVySGludENsYXNzID0gaGludFRleHQgJiYgaGludFRhcmdldFBsYWNlbWVudCA9PT0gJ291dGVyJyA/IGNsYXNzZXMuaGFzSGludCA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGNvbnN0IGhhc0hpbnRDbGFzcyA9IGhpbnRUZXh0ID8gY2xhc3Nlcy5oYXNIaW50IDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3QgcmVxdWlyZWRQbGFjZW1lbnRDbGFzcyA9IHJlcXVpcmVkUGxhY2VtZW50ID09PSAncmlnaHQnID8gY2xhc3Nlcy5yZXF1aXJlZEFsaWduUmlnaHQgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICBjb25zdCBsYWJlbFBsYWNlbWVudENsYXNzID0gaW5uZXJMYWJlbFBsYWNlbWVudFZhbHVlXG4gICAgICAgICAgICAgICAgPyBjbGFzc2VzW2Ake2lubmVyTGFiZWxQbGFjZW1lbnRWYWx1ZX1MYWJlbFBsYWNlbWVudGAgYXMga2V5b2YgdHlwZW9mIGNsYXNzZXNdXG4gICAgICAgICAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICBjb25zdCBoYXNWYWx1ZUNsYXNzID0gaGFzVmFsdWUgPyBjbGFzc2VzLmhhc1ZhbHVlIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3Qga2VlcFBsYWNlaG9sZGVyQ2xhc3MgPSBoYXNQbGFjZWhvbGRlciAmJiBwbGFjZWhvbGRlclNob3duICYmIGNsYXNzZXMua2VlcFBsYWNlaG9sZGVyO1xuXG4gICAgICAgICAgICBjb25zdCB3cmFwcGVyV2l0aG91dExlZnRDb250ZW50ID1cbiAgICAgICAgICAgICAgICAhY29udGVudExlZnQgJiYgaXNDaGlwc1Zpc2libGUgJiYgY2hpcFR5cGUgPT09ICdkZWZhdWx0JyA/IGNsYXNzZXMuaGFzRW1wdHlDb250ZW50TGVmdCA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGNvbnN0IHdyYXBwZXJXaXRob3V0UmlnaHRDb250ZW50ID1cbiAgICAgICAgICAgICAgICAhY29udGVudFJpZ2h0ICYmIGlzQ2hpcHNWaXNpYmxlICYmIGNoaXBUeXBlID09PSAnZGVmYXVsdCcgPyBjbGFzc2VzLmhhc0VtcHR5Q29udGVudFJpZ2h0IDogdW5kZWZpbmVkO1xuXG4gICAgICAgICAgICBjb25zdCBjb250ZW50UmlnaHRDb21wZW5zYXRpb25NYXJnaW4gPVxuICAgICAgICAgICAgICAgICFoYXNPdXRlckxhYmVsICYmIGhpbnRUZXh0ICYmIGhpbnRUYXJnZXRQbGFjZW1lbnQgPT09ICdpbm5lcidcbiAgICAgICAgICAgICAgICAgICAgPyBjbGFzc2VzLmNvbnRlbnRSaWdodENvbXBlbnNhdGlvbk1hcmdpblxuICAgICAgICAgICAgICAgICAgICA6IHVuZGVmaW5lZDtcblxuICAgICAgICAgICAgY29uc3QgaGludFJlZiA9IHVzZU91dHNpZGVDbGljazxIVE1MRGl2RWxlbWVudD4oKCkgPT4ge1xuICAgICAgICAgICAgICAgIHNldElzSGludFZpc2libGUoZmFsc2UpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb25zdCBoaW50SW5uZXJSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuICAgICAgICAgICAgY29uc3QgaGludEZvcmtSZWYgPSB1c2VGb3JrUmVmKGhpbnRSZWYsIGhpbnRJbm5lclJlZik7XG5cbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZUlucHV0OiBGb3JtRXZlbnRIYW5kbGVyPEhUTUxJbnB1dEVsZW1lbnQ+ID0gKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG5cbiAgICAgICAgICAgICAgICBzZXRIYXNWYWx1ZShCb29sZWFuKHZhbHVlKSk7XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChoYXNUZXh0QWZ0ZXIgJiYgaW5wdXRSZWYuY3VycmVudCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB0ZXh0V2lkdGggPSBnZXRJbnB1dFdpZHRoKGlucHV0UmVmLmN1cnJlbnQsIGlucHV0Q29udGFpbmVyUmVmLmN1cnJlbnQpO1xuICAgICAgICAgICAgICAgICAgICBpbnB1dFJlZi5jdXJyZW50LnN0eWxlLndpZHRoID0gYCR7dGV4dFdpZHRofXB4YDtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBpbnB1dFJlZi5jdXJyZW50Py5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgnd2lkdGgnKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LCBbaGFzVGV4dEFmdGVyXSk7XG5cbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZUZvY3VzID0gKGV2ZW50OiBSZWFjdC5Gb2N1c0V2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+KSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0SGFzRm9jdXModHJ1ZSk7XG4gICAgICAgICAgICAgICAgb25Gb2N1cz8uKGV2ZW50KTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZUJsdXIgPSAoZXZlbnQ6IFJlYWN0LkZvY3VzRXZlbnQ8SFRNTElucHV0RWxlbWVudD4pID0+IHtcbiAgICAgICAgICAgICAgICBzZXRIYXNGb2N1cyhmYWxzZSk7XG4gICAgICAgICAgICAgICAgb25CbHVyPy4oZXZlbnQpO1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgY29uc3QgaGFuZGxlSGludFNob3cgPSAoKSA9PiBzZXRJc0hpbnRWaXNpYmxlKHRydWUpO1xuICAgICAgICAgICAgY29uc3QgaGFuZGxlSGludEhpZGUgPSAoKSA9PiBzZXRJc0hpbnRWaXNpYmxlKGZhbHNlKTtcbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZUhpbnRDbGljazogTW91c2VFdmVudEhhbmRsZXIgPSAoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIWhpbnRUZXh0IHx8IGhpbnRUcmlnZ2VyICE9PSAnY2xpY2snKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICBjb25zdCB0YXJnZXRJc1BvcG92ZXIgPSBldmVudC50YXJnZXQgPT09IGhpbnRJbm5lclJlZi5jdXJyZW50O1xuICAgICAgICAgICAgICAgIGNvbnN0IHJvb3RIYXNUYXJnZXQgPSBoaW50SW5uZXJSZWYuY3VycmVudD8uY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIEVsZW1lbnQpO1xuXG4gICAgICAgICAgICAgICAgaWYgKCF0YXJnZXRJc1BvcG92ZXIgJiYgIXJvb3RIYXNUYXJnZXQpIHtcbiAgICAgICAgICAgICAgICAgICAgc2V0SXNIaW50VmlzaWJsZSh0cnVlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBjb25zdCBoYW5kbGVDaGFuZ2U6IENoYW5nZUV2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50PiA9IChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChkaXNhYmxlZCB8fCByZWFkT25seSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3QgeyBtYXhMZW5ndGgsIHZhbHVlIH0gPSBldmVudC50YXJnZXQ7XG5cbiAgICAgICAgICAgICAgICBpZiAobWF4TGVuZ3RoICE9PSAtMSAmJiB2YWx1ZS5sZW5ndGggPiBtYXhMZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlPy4oZXZlbnQpO1xuXG4gICAgICAgICAgICAgICAgaWYgKGhhc1RleHRBZnRlcikge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB0ZXh0V2lkdGggPSBnZXRJbnB1dFdpZHRoKGV2ZW50LmN1cnJlbnRUYXJnZXQsIGlucHV0Q29udGFpbmVyUmVmLmN1cnJlbnQpO1xuICAgICAgICAgICAgICAgICAgICBldmVudC5jdXJyZW50VGFyZ2V0LnN0eWxlLndpZHRoID0gYCR7dGV4dFdpZHRofXB4YDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBjb25zdCB1cGRhdGVDaGlwcyA9IChuZXdDaGlwczogQXJyYXk8Q2hpcFZhbHVlcz4sIG5ld1ZhbHVlczogQXJyYXk8VGV4dEZpZWxkUHJpbWl0aXZlVmFsdWU+KSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0Q2hpcHMobmV3Q2hpcHMpO1xuICAgICAgICAgICAgICAgIG9uQ2hhbmdlQ2hpcHM/LihuZXdWYWx1ZXMpO1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgY29uc3QgeyBoYW5kbGVJbnB1dEtleWRvd24sIGhhbmRsZUNoaXBLZXlEb3duLCBvbkNoaXBDbGVhciwgaGFuZGxlQ29udGVudEtleURvd24gfSA9IHVzZUtleU5hdmlnYXRpb24oe1xuICAgICAgICAgICAgICAgIGNvbnRyb2xsZWRSZWZzLFxuICAgICAgICAgICAgICAgIGRpc2FibGVkLFxuICAgICAgICAgICAgICAgIHJlYWRPbmx5LFxuICAgICAgICAgICAgICAgIGNoaXBzLFxuICAgICAgICAgICAgICAgIGVudW1lcmF0aW9uVHlwZSxcbiAgICAgICAgICAgICAgICB1cGRhdGVDaGlwcyxcbiAgICAgICAgICAgICAgICBvblNlYXJjaCxcbiAgICAgICAgICAgICAgICBvbkNoYW5nZSxcbiAgICAgICAgICAgICAgICBvbkVudGVyRGlzYWJsZWQ6IF9vbkVudGVyRGlzYWJsZWQsXG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgY29uc3Qgb25DaGlwQ2xpY2sgPSAoZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEJ1dHRvbkVsZW1lbnQ+KSA9PiBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICAgICAgY29uc3QgaGFuZGxlSW5wdXRGb2N1cyA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAocmVhZE9ubHkgfHwgZGlzYWJsZWQgfHwgIWlucHV0UmVmPy5jdXJyZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpbnB1dFJlZi5jdXJyZW50LnNjcm9sbFRvKHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwLFxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiBpbnB1dFJlZi5jdXJyZW50Lm9mZnNldExlZnQsXG4gICAgICAgICAgICAgICAgICAgIGJlaGF2aW9yOiAnc21vb3RoJyxcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIGlucHV0UmVmLmN1cnJlbnQuZm9jdXMoKTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNvbnN0IGdldFJlZiA9IChlbGVtZW50OiBIVE1MQnV0dG9uRWxlbWVudCB8IG51bGwsIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZWxlbWVudCAmJiBjaGlwc1JlZnM/LmN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgY2hpcHNSZWZzLmN1cnJlbnRbaW5kZXhdID0gZWxlbWVudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBjb25zdCBoYW5kbGVPbktleURvd24gPSAoZXZlbnQ6IENoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+ICYgS2V5Ym9hcmRFdmVudDxIVE1MSW5wdXRFbGVtZW50PikgPT4ge1xuICAgICAgICAgICAgICAgIGhhbmRsZUlucHV0S2V5ZG93bihldmVudCk7XG5cbiAgICAgICAgICAgICAgICBpZiAob25LZXlEb3duKSB7XG4gICAgICAgICAgICAgICAgICAgIG9uS2V5RG93bihldmVudCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIWlzQ2hpcEVudW1lcmF0aW9uICYmICF2YWx1ZXM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3QgbmV3Q2hpcHMgPVxuICAgICAgICAgICAgICAgICAgICB2YWx1ZXM/Lm1hcCgodmFsdWUsIGluZGV4KSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IGAke2luZGV4fV8ke3ZhbHVlfWAsXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiB2YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgfSkpIHx8IFtdO1xuXG4gICAgICAgICAgICAgICAgc2V0Q2hpcHMobmV3Q2hpcHMpO1xuICAgICAgICAgICAgfSwgW2lzQ2hpcEVudW1lcmF0aW9uLCB2YWx1ZXNdKTtcblxuICAgICAgICAgICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBzZXRIYXNWYWx1ZShCb29sZWFuKHJlc3Q/LmRlZmF1bHRWYWx1ZSkpO1xuICAgICAgICAgICAgfSwgW3Jlc3QuZGVmYXVsdFZhbHVlXSk7XG5cbiAgICAgICAgICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0SGFzVmFsdWUoQm9vbGVhbihvdXRlclZhbHVlKSB8fCBCb29sZWFuKGlucHV0UmVmPy5jdXJyZW50Py52YWx1ZSkpO1xuICAgICAgICAgICAgfSwgW291dGVyVmFsdWUsIGlucHV0UmVmPy5jdXJyZW50Py52YWx1ZV0pO1xuXG4gICAgICAgICAgICBjb25zdCBpbm5lck9wdGlvbmFsID0gQm9vbGVhbihyZXF1aXJlZCA/IGZhbHNlIDogb3B0aW9uYWwpO1xuICAgICAgICAgICAgY29uc3QgaGFzUGxhY2Vob2xkZXJPcHRpb25hbCA9IGlubmVyT3B0aW9uYWwgJiYgIWlubmVyTGFiZWxWYWx1ZSAmJiAhaGFzT3V0ZXJMYWJlbDtcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbmFsVGV4dE5vZGUgPSBpbm5lck9wdGlvbmFsID8gKFxuICAgICAgICAgICAgICAgIDxTdHlsZWRPcHRpb25hbFRleHQ+XG4gICAgICAgICAgICAgICAgICAgIHtCb29sZWFuKGhhc1BsYWNlaG9sZGVyT3B0aW9uYWwgPyBpbm5lclBsYWNlaG9sZGVyVmFsdWUgOiBpbm5lckxhYmVsVmFsdWUpICYmICdcXHhhMCd9XG4gICAgICAgICAgICAgICAgICAgIHtvcHRpb25hbFRleHR9XG4gICAgICAgICAgICAgICAgPC9TdHlsZWRPcHRpb25hbFRleHQ+XG4gICAgICAgICAgICApIDogbnVsbDtcblxuICAgICAgICAgICAgY29uc3QgY2xhc3NUZXh0RWxsaXBzaXMgPVxuICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXRzLWNvbW1lbnRcbiAgICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVuZGVyc2NvcmUtZGFuZ2xlXG4gICAgICAgICAgICAgICAgIShyZXN0IGFzIGFueSkuX3RleHRFbGxpcHNpc0Rpc2FibGUgJiYgIXRleHRBZnRlciA/IGNsYXNzZXMuaW5wdXRUZXh0RWxsaXBzaXMgOiB1bmRlZmluZWQ7XG5cbiAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgPFJvb3RcbiAgICAgICAgICAgICAgICAgICAgdmlldz17dmlld31cbiAgICAgICAgICAgICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICAgICAgICByZWFkT25seT17IWRpc2FibGVkICYmIHJlYWRPbmx5fVxuICAgICAgICAgICAgICAgICAgICBsYWJlbFBsYWNlbWVudD17aW5uZXJMYWJlbFBsYWNlbWVudFZhbHVlfVxuICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVJbnB1dEZvY3VzfVxuICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2N4KFxuICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWxQbGFjZW1lbnRDbGFzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsZWFyQ2xhc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICBoYXNEaXZpZGVyQ2xhc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICBoYXNJbm5lckhpbnRDbGFzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzZXMudGV4dEZpZWxkR3JvdXBJdGVtLFxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lLFxuICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICBzdHlsZT17c3R5bGV9XG4gICAgICAgICAgICAgICAgICAgIHsuLi4oaGludFRleHQgJiYgeyBoaW50VmlldywgaGludFNpemUgfSl9XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7KGhhc091dGVyTGFiZWwgfHwgdGl0bGVDYXB0aW9uKSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8T3V0ZXJMYWJlbFdyYXBwZXIgaXNJbm5lckxhYmVsPXtsYWJlbFBsYWNlbWVudCA9PT0gJ2lubmVyJ30+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2hhc091dGVyTGFiZWwgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW5kaWNhdG9yV3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxMYWJlbCBpZD17bGFiZWxJZH0gaHRtbEZvcj17aWR9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtpbm5lckxhYmVsVmFsdWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0xhYmVsPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aGludFRleHQgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRIaW50V3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEhpbnRDb21wb25lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZj17aGludEZvcmtSZWZ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50VGV4dD17aGludFRleHR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50VHJpZ2dlcj17aGludFRyaWdnZXJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc0hpbnRWaXNpYmxlPXtpc0hpbnRWaXNpYmxlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFRhcmdldEljb249e2hpbnRUYXJnZXRJY29ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFBsYWNlbWVudD17aGludFBsYWNlbWVudH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRIYXNBcnJvdz17aGludEhhc0Fycm93fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludE9mZnNldD17aGludE9mZnNldH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRXaWR0aD17aGludFdpZHRofVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludENvbnRlbnRMZWZ0PXtoaW50Q29udGVudExlZnR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVIaW50U2hvdz17aGFuZGxlSGludFNob3d9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVIaW50SGlkZT17aGFuZGxlSGludEhpZGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVIaW50Q2xpY2s9e2hhbmRsZUhpbnRDbGlja31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZEhpbnRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtyZXF1aXJlZCAmJiBoYXNSZXF1aXJlZEluZGljYXRvciAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEluZGljYXRvclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2N4KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3Nlcy5vdXRlckxhYmVsUGxhY2VtZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZWRQbGFjZW1lbnRDbGFzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc0hpbnRDbGFzcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtvcHRpb25hbFRleHROb2RlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZEluZGljYXRvcldyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7dGl0bGVDYXB0aW9uICYmIDxUaXRsZUNhcHRpb24+e3RpdGxlQ2FwdGlvbn08L1RpdGxlQ2FwdGlvbj59XG4gICAgICAgICAgICAgICAgICAgICAgICA8L091dGVyTGFiZWxXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICA8SW5wdXRXcmFwcGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBSZWYg0LTQu9GPINCy0L3Rg9GC0YDQtdC90L3QtdCz0L4g0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40Y8uINCd0LUg0L7RgtC00LDQtdGC0YHRjyDQvdCw0YDRg9C20YMuXG4gICAgICAgICAgICAgICAgICAgICAgICByZWY9eyhyZXN0IGFzIGFueSkuaW5wdXRXcmFwcGVyUmVmfVxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gVE9ETzogIzE1NDQsINC4INC/0L7RgdC70LUg0YPQsdGA0LDRgtGMIGNsYXNzZXMuaW5wdXRXcmFwcGVyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2N4KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpdGhIYXNDaGlwcyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3cmFwcGVyV2l0aG91dExlZnRDb250ZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdyYXBwZXJXaXRob3V0UmlnaHRDb250ZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzZXMuaW5wdXRXcmFwcGVyLFxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgeyFoYXNPdXRlckxhYmVsICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cmVxdWlyZWQgJiYgaGFzUmVxdWlyZWRJbmRpY2F0b3IgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEluZGljYXRvclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y3goY2xhc3Nlcy5pbm5lckxhYmVsUGxhY2VtZW50LCByZXF1aXJlZFBsYWNlbWVudENsYXNzKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtoaW50VGV4dCAmJiBoaW50VGFyZ2V0UGxhY2VtZW50ID09PSAnb3V0ZXInICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRIaW50V3JhcHBlciBjbGFzc05hbWU9e2NsYXNzZXMuaW5uZXJMYWJlbFBsYWNlbWVudH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEhpbnRDb21wb25lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVmPXtoaW50Rm9ya1JlZn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFRleHQ9e2hpbnRUZXh0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50VHJpZ2dlcj17aGludFRyaWdnZXJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzSGludFZpc2libGU9e2lzSGludFZpc2libGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRUYXJnZXRJY29uPXtoaW50VGFyZ2V0SWNvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFBsYWNlbWVudD17aGludFBsYWNlbWVudH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludEhhc0Fycm93PXtoaW50SGFzQXJyb3d9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRPZmZzZXQ9e2hpbnRPZmZzZXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRXaWR0aD17aGludFdpZHRofVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50Q29udGVudExlZnQ9e2hpbnRDb250ZW50TGVmdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlSGludFNob3c9e2hhbmRsZUhpbnRTaG93fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVIaW50SGlkZT17aGFuZGxlSGludEhpZGV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRDbGljaz17aGFuZGxlSGludENsaWNrfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc0lubmVyTGFiZWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRIaW50V3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICB7Y29udGVudExlZnQgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRDb250ZW50TGVmdCBpc0NsZWFyPXtjbGVhcn0gaXNEZWZhdWx0Vmlldz17aXNEZWZhdWx0Vmlld30+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtjb250ZW50TGVmdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZENvbnRlbnRMZWZ0PlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDxJbnB1dExhYmVsV3JhcHBlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhYkluZGV4PXstMX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWY9e2NvbnRlbnRSZWZ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb25LZXlEb3duPXtoYW5kbGVDb250ZW50S2V5RG93bn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e3dpdGhIYXNDaGlwc31cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Qm9vbGVhbih0ZXh0QmVmb3JlICYmIGlzQ2hpcEVudW1lcmF0aW9uKSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRUZXh0QmVmb3JlPnt0ZXh0QmVmb3JlfTwvU3R5bGVkVGV4dEJlZm9yZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtpc0NoaXBFbnVtZXJhdGlvbiAmJiBCb29sZWFuKGNoaXBzPy5sZW5ndGgpICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZENoaXBzIGNsYXNzTmFtZT17Y2xhc3Nlcy5jaGlwc1dyYXBwZXJ9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2NoaXBzPy5tYXAoKHsgaWQ6IGNoaXBJZCwgdGV4dCB9LCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZhbGlkYXRpb25WaWV3ID0gY2hpcFZhbGlkYXRvcj8uKFN0cmluZyh0ZXh0KSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVzVmlldyA9IHZhbGlkYXRpb25WaWV3Py52aWV3IHx8IGNoaXBWaWV3O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFRleHRGaWVsZENoaXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPXtjaGlwSWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWY9eyhlbGVtZW50KSA9PiBnZXRSZWYoZWxlbWVudCwgaW5kZXgpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5PXtgJHtjaGlwSWR9XyR7aW5kZXh9YH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPXt0ZXh0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dD17dGV4dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uS2V5RG93bj17KGV2ZW50KSA9PiBoYW5kbGVDaGlwS2V5RG93bihldmVudCwgY2hpcElkLCBpbmRleCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsZWFyPXsoKSA9PiBvbkNoaXBDbGVhcihjaGlwSWQsIGluZGV4KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uQ2hpcENsaWNrfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpcFR5cGU9e2NoaXBUeXBlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlldz17cmVzVmlld31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvb3RXcmFwcGVyPXtSb290fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gVE9ETzogIzE1NDdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9mb3JjZUNoaXBNYW5pcHVsYXRpb25XaXRoUmVhZG9ubHk9e19mb3JjZUNoaXBNYW5pcHVsYXRpb25XaXRoUmVhZG9ubHl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZENoaXBzPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPElucHV0Q29udGFpbmVyIHJlZj17aW5wdXRDb250YWluZXJSZWZ9IGhhc0R5bmFtaWNXaWR0aD17aGFzVGV4dEFmdGVyfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2hhc1RleHRCZWZvcmUgJiYgPFN0eWxlZFRleHRCZWZvcmU+e3RleHRCZWZvcmV9PC9TdHlsZWRUZXh0QmVmb3JlPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPElucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWY9e2lucHV0Rm9ya1JlZn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPXtpbm5lcklkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e291dGVyVmFsdWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZD17ZW51bWVyYXRpb25UeXBlID09PSAnY2hpcCcgPyBjaGlwcy5sZW5ndGggPT09IDAgJiYgcmVxdWlyZWQgOiByZXF1aXJlZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17bGFiZWxJZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtZGVzY3JpYmVkYnk9e2hlbHBlclRleHRJZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtpbm5lclBsYWNlaG9sZGVyVmFsdWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2N4KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc1ZhbHVlQ2xhc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2VlcFBsYWNlaG9sZGVyQ2xhc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NUZXh0RWxsaXBzaXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhZE9ubHkgJiYgY2xhc3Nlcy5yZWFkT25seUlucHV0LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlYWRPbmx5PXshZGlzYWJsZWQgJiYgcmVhZE9ubHl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbklucHV0PXtoYW5kbGVJbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbktleURvd249e2hhbmRsZU9uS2V5RG93bn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uRm9jdXM9e2hhbmRsZUZvY3VzfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25CbHVyPXtoYW5kbGVCbHVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgey4uLnJlc3R9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtoYXNJbm5lckxhYmVsICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxMYWJlbCBpZD17bGFiZWxJZH0gaHRtbEZvcj17aW5uZXJJZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2lubmVyTGFiZWxWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7b3B0aW9uYWxUZXh0Tm9kZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtwbGFjZWhvbGRlclNob3duICYmICFoYXNWYWx1ZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW5wdXRQbGFjZWhvbGRlciBoYXNQYWRkaW5nPXtoYXNQbGFjZWhvbGRlclBhZGRpbmd9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtoYXNUZXh0QmVmb3JlICYmIDxTdHlsZWRUZXh0QmVmb3JlIGlzSGlkZGVuPnt0ZXh0QmVmb3JlfTwvU3R5bGVkVGV4dEJlZm9yZT59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2lubmVyUGxhY2Vob2xkZXJWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aGFzUGxhY2Vob2xkZXJPcHRpb25hbCAmJiBvcHRpb25hbFRleHROb2RlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9JbnB1dFBsYWNlaG9sZGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aGFzVGV4dEFmdGVyICYmIDxTdHlsZWRUZXh0QWZ0ZXI+e3RleHRBZnRlcn08L1N0eWxlZFRleHRBZnRlcj59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9JbnB1dENvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvSW5wdXRMYWJlbFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkQ29udGVudFJpZ2h0V3JhcHBlciBjbGFzc05hbWU9e2N4KGNvbnRlbnRSaWdodENvbXBlbnNhdGlvbk1hcmdpbil9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtjb250ZW50UmlnaHQgJiYgPFN0eWxlZENvbnRlbnRSaWdodD57Y29udGVudFJpZ2h0fTwvU3R5bGVkQ29udGVudFJpZ2h0Pn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHshaGFzT3V0ZXJMYWJlbCAmJiBoaW50VGV4dCAmJiBoaW50VGFyZ2V0UGxhY2VtZW50ID09PSAnaW5uZXInICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEhpbnRDb21wb25lbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlZj17aGludEZvcmtSZWZ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50VGV4dD17aGludFRleHR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50VHJpZ2dlcj17aGludFRyaWdnZXJ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc0hpbnRWaXNpYmxlPXtpc0hpbnRWaXNpYmxlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFRhcmdldEljb249e2hpbnRUYXJnZXRJY29ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFBsYWNlbWVudD17aGludFBsYWNlbWVudH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRIYXNBcnJvdz17aGludEhhc0Fycm93fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludE9mZnNldD17aGludE9mZnNldH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRXaWR0aD17aGludFdpZHRofVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludENvbnRlbnRMZWZ0PXtoaW50Q29udGVudExlZnR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlSGludFNob3c9e2hhbmRsZUhpbnRTaG93fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlSGludEhpZGU9e2hhbmRsZUhpbnRIaWRlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlSGludENsaWNrPXtoYW5kbGVIaW50Q2xpY2t9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc0lubmVyTGFiZWxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRDb250ZW50UmlnaHRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICA8L0lucHV0V3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAge2xlZnRIZWxwZXIgJiYgPExlZnRIZWxwZXIgaWQ9e2hlbHBlclRleHRJZH0+e2xlZnRIZWxwZXJ9PC9MZWZ0SGVscGVyPn1cbiAgICAgICAgICAgICAgICA8L1Jvb3Q+XG4gICAgICAgICAgICApO1xuICAgICAgICB9LFxuICAgICk7XG5cbmV4cG9ydCBjb25zdCB0ZXh0RmllbGRDb25maWcgPSB7XG4gICAgbmFtZTogJ1RleHRGaWVsZCcsXG4gICAgdGFnOiAnZGl2JyxcbiAgICBsYXlvdXQ6IHRleHRGaWVsZFJvb3QsXG4gICAgYmFzZSxcbiAgICB2YXJpYXRpb25zOiB7XG4gICAgICAgIHZpZXc6IHtcbiAgICAgICAgICAgIGNzczogdmlld0NTUyxcbiAgICAgICAgfSxcbiAgICAgICAgc2l6ZToge1xuICAgICAgICAgICAgY3NzOiBzaXplQ1NTLFxuICAgICAgICB9LFxuICAgICAgICBjbGVhcjoge1xuICAgICAgICAgICAgY3NzOiBjbGVhckNTUyxcbiAgICAgICAgICAgIGF0dHJzOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICBkaXNhYmxlZDoge1xuICAgICAgICAgICAgY3NzOiBkaXNhYmxlZENTUyxcbiAgICAgICAgICAgIGF0dHJzOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICByZWFkT25seToge1xuICAgICAgICAgICAgY3NzOiByZWFkT25seUNTUyxcbiAgICAgICAgICAgIGF0dHJzOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICBsYWJlbFBsYWNlbWVudDoge1xuICAgICAgICAgICAgY3NzOiBsYWJlbFBsYWNlbWVudENTUyxcbiAgICAgICAgfSxcbiAgICAgICAgaGludFZpZXc6IHtcbiAgICAgICAgICAgIGNzczogaGludFZpZXdDU1MsXG4gICAgICAgIH0sXG4gICAgICAgIGhpbnRTaXplOiB7XG4gICAgICAgICAgICBjc3M6IGhpbnRTaXplQ1NTLFxuICAgICAgICB9LFxuICAgICAgICBjaGlwVmlldzoge1xuICAgICAgICAgICAgY3NzOiBjaGlwVmlld0NTUyxcbiAgICAgICAgfSxcbiAgICB9LFxuICAgIGRlZmF1bHRzOiB7XG4gICAgICAgIHNpemU6ICdtJyxcbiAgICAgICAgdmlldzogJ2RlZmF1bHQnLFxuICAgIH0sXG59O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQStDb0IifQ== */");
|
123
|
+
export var base = /*#__PURE__*/ css("display:block;", "base", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjLWVtb3Rpb24vY29tcG9uZW50cy9UZXh0RmllbGQvVGV4dEZpZWxkLnRzeCIsInNvdXJjZXMiOlsic3JjLWVtb3Rpb24vY29tcG9uZW50cy9UZXh0RmllbGQvVGV4dEZpZWxkLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgZm9yd2FyZFJlZiwgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHR5cGUgeyBGb3JtRXZlbnRIYW5kbGVyLCBDaGFuZ2VFdmVudEhhbmRsZXIsIEtleWJvYXJkRXZlbnQsIENoYW5nZUV2ZW50LCBNb3VzZUV2ZW50SGFuZGxlciB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZUZvcmtSZWYgfSBmcm9tICdAc2FsdXRlanMvcGxhc21hLWNvcmUnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuaW1wb3J0IHsgY3gsIHNhZmVVc2VJZCB9IGZyb20gJ3NyYy91dGlscyc7XG5pbXBvcnQgdHlwZSB7IFJvb3RQcm9wcyB9IGZyb20gJ3NyYy9lbmdpbmVzJztcbmltcG9ydCB7IHVzZU91dHNpZGVDbGljayB9IGZyb20gJ3NyYy9ob29rcyc7XG5cbmltcG9ydCB0eXBlIHsgQ2hpcFZhbHVlcywgVGV4dEZpZWxkUHJpbWl0aXZlVmFsdWUsIFRleHRGaWVsZFByb3BzLCBUZXh0RmllbGRSb290UHJvcHMgfSBmcm9tICcuL1RleHRGaWVsZC50eXBlcyc7XG5pbXBvcnQgeyBiYXNlIGFzIHNpemVDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX3NpemUvYmFzZSc7XG5pbXBvcnQgeyBiYXNlIGFzIHZpZXdDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX3ZpZXcvYmFzZSc7XG5pbXBvcnQgeyBiYXNlIGFzIGNsZWFyQ1NTIH0gZnJvbSAnLi92YXJpYXRpb25zL19jbGVhci9iYXNlJztcbmltcG9ydCB7IGJhc2UgYXMgZGlzYWJsZWRDU1MgfSBmcm9tICcuL3ZhcmlhdGlvbnMvX2Rpc2FibGVkL2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyByZWFkT25seUNTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fcmVhZC1vbmx5L2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBsYWJlbFBsYWNlbWVudENTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fbGFiZWwtcGxhY2VtZW50L2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBoaW50Vmlld0NTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9faGludC12aWV3L2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBoaW50U2l6ZUNTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9faGludC1zaXplL2Jhc2UnO1xuaW1wb3J0IHsgYmFzZSBhcyBjaGlwVmlld0NTUyB9IGZyb20gJy4vdmFyaWF0aW9ucy9fY2hpcC12aWV3L2Jhc2UnO1xuaW1wb3J0IHtcbiAgICBJbnB1dCxcbiAgICBJbnB1dENvbnRhaW5lcixcbiAgICBMZWZ0SGVscGVyLFxuICAgIExhYmVsLFxuICAgIElucHV0V3JhcHBlcixcbiAgICBJbnB1dExhYmVsV3JhcHBlcixcbiAgICBTdHlsZWRDb250ZW50TGVmdCxcbiAgICBTdHlsZWRDb250ZW50UmlnaHQsXG4gICAgU3R5bGVkQ2hpcHMsXG4gICAgU3R5bGVkVGV4dEJlZm9yZSxcbiAgICBTdHlsZWRUZXh0QWZ0ZXIsXG4gICAgU3R5bGVkSW5kaWNhdG9yLFxuICAgIFN0eWxlZE9wdGlvbmFsVGV4dCxcbiAgICBJbnB1dFBsYWNlaG9sZGVyLFxuICAgIE91dGVyTGFiZWxXcmFwcGVyLFxuICAgIFRpdGxlQ2FwdGlvbixcbiAgICBTdHlsZWRIaW50V3JhcHBlcixcbiAgICBTdHlsZWRJbmRpY2F0b3JXcmFwcGVyLFxuICAgIFN0eWxlZENvbnRlbnRSaWdodFdyYXBwZXIsXG59IGZyb20gJy4vVGV4dEZpZWxkLnN0eWxlcyc7XG5pbXBvcnQgeyBjbGFzc2VzIH0gZnJvbSAnLi9UZXh0RmllbGQudG9rZW5zJztcbmltcG9ydCB7IFRleHRGaWVsZENoaXAgfSBmcm9tICcuL3VpJztcbmltcG9ydCB7IHVzZUtleU5hdmlnYXRpb24gfSBmcm9tICcuL2hvb2tzJztcbmltcG9ydCB7IEhpbnRDb21wb25lbnQgfSBmcm9tICcuL3VpL0hpbnQvSGludCc7XG5pbXBvcnQgeyBnZXRJbnB1dFdpZHRoIH0gZnJvbSAnLi9nZXRJbnB1dFdpZHRoJztcblxuY29uc3Qgb3B0aW9uYWxUZXh0ID0gJ29wdGlvbmFsJztcblxuZXhwb3J0IGNvbnN0IGJhc2UgPSBjc3NgXG4gICAgLyogTk9URTogV2Via2l0INC90LUg0L/RgNC40LzQtdC90Y/QtdGCIG9wYWNpdHkg0LogaW5saW5lINGC0LXQs9Cw0LwgKi9cbiAgICBkaXNwbGF5OiBibG9jaztcbmA7XG5cbmNvbnN0IEhJTlRfREVGQVVMVF9PRkZTRVQ6IFtudW1iZXIsIG51bWJlcl0gPSBbMCwgMF07XG5cbmV4cG9ydCBjb25zdCB0ZXh0RmllbGRSb290ID0gKFJvb3Q6IFJvb3RQcm9wczxIVE1MRGl2RWxlbWVudCwgVGV4dEZpZWxkUm9vdFByb3BzPikgPT5cbiAgICBmb3J3YXJkUmVmPEhUTUxJbnB1dEVsZW1lbnQsIFRleHRGaWVsZFByb3BzPihcbiAgICAgICAgKFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGlkLFxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICAgICAgICAgICBzdHlsZSxcblxuICAgICAgICAgICAgICAgIC8vIGxheW91dFxuICAgICAgICAgICAgICAgIGNvbnRlbnRMZWZ0LFxuICAgICAgICAgICAgICAgIGNvbnRlbnRSaWdodCxcbiAgICAgICAgICAgICAgICBsYWJlbCxcbiAgICAgICAgICAgICAgICBsYWJlbFBsYWNlbWVudCxcbiAgICAgICAgICAgICAgICBrZWVwUGxhY2Vob2xkZXIsXG4gICAgICAgICAgICAgICAgdGV4dEJlZm9yZSxcbiAgICAgICAgICAgICAgICB0ZXh0QWZ0ZXIsXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXIsXG4gICAgICAgICAgICAgICAgbGVmdEhlbHBlcixcbiAgICAgICAgICAgICAgICBlbnVtZXJhdGlvblR5cGUgPSAncGxhaW4nLFxuICAgICAgICAgICAgICAgIHJlcXVpcmVkUGxhY2VtZW50ID0gJ3JpZ2h0JyxcbiAgICAgICAgICAgICAgICBoYXNSZXF1aXJlZEluZGljYXRvciA9IHRydWUsXG4gICAgICAgICAgICAgICAgdGl0bGVDYXB0aW9uLFxuICAgICAgICAgICAgICAgIGNoaXBWaWV3ID0gJ2RlZmF1bHQnLFxuICAgICAgICAgICAgICAgIGNoaXBWYWxpZGF0b3IsXG5cbiAgICAgICAgICAgICAgICAvLyBoaW50XG4gICAgICAgICAgICAgICAgaGludFRyaWdnZXIgPSAnaG92ZXInLFxuICAgICAgICAgICAgICAgIGhpbnRUZXh0LFxuICAgICAgICAgICAgICAgIGhpbnRWaWV3ID0gJ2RlZmF1bHQnLFxuICAgICAgICAgICAgICAgIGhpbnRTaXplID0gJ20nLFxuICAgICAgICAgICAgICAgIGhpbnRUYXJnZXRJY29uLFxuICAgICAgICAgICAgICAgIGhpbnRUYXJnZXRQbGFjZW1lbnQgPSAnb3V0ZXInLFxuICAgICAgICAgICAgICAgIGhpbnRQbGFjZW1lbnQgPSAnYXV0bycsXG4gICAgICAgICAgICAgICAgaGludEhhc0Fycm93LFxuICAgICAgICAgICAgICAgIGhpbnRPZmZzZXQgPSBISU5UX0RFRkFVTFRfT0ZGU0VULFxuICAgICAgICAgICAgICAgIGhpbnRXaWR0aCxcbiAgICAgICAgICAgICAgICBoaW50Q29udGVudExlZnQsXG5cbiAgICAgICAgICAgICAgICAvLyB2YXJpYXRpb25zXG4gICAgICAgICAgICAgICAgdmlldyxcbiAgICAgICAgICAgICAgICBzaXplLFxuICAgICAgICAgICAgICAgIHJlYWRPbmx5ID0gZmFsc2UsXG4gICAgICAgICAgICAgICAgZGlzYWJsZWQgPSBmYWxzZSxcbiAgICAgICAgICAgICAgICByZXF1aXJlZCA9IGZhbHNlLFxuICAgICAgICAgICAgICAgIGNsZWFyID0gZmFsc2UsXG4gICAgICAgICAgICAgICAgb3B0aW9uYWwsXG4gICAgICAgICAgICAgICAgaGFzRGl2aWRlcixcblxuICAgICAgICAgICAgICAgIC8vIGNvbnRyb2xsZWRcbiAgICAgICAgICAgICAgICB2YWx1ZTogb3V0ZXJWYWx1ZSxcbiAgICAgICAgICAgICAgICBjaGlwczogdmFsdWVzLFxuICAgICAgICAgICAgICAgIGNoaXBUeXBlID0gJ2RlZmF1bHQnLFxuXG4gICAgICAgICAgICAgICAgLy8gZXZlbnRzXG4gICAgICAgICAgICAgICAgb25DaGFuZ2UsXG4gICAgICAgICAgICAgICAgb25DaGFuZ2VDaGlwcyxcbiAgICAgICAgICAgICAgICBvblNlYXJjaCxcbiAgICAgICAgICAgICAgICBvbktleURvd24sXG4gICAgICAgICAgICAgICAgb25Gb2N1cyxcbiAgICAgICAgICAgICAgICBvbkJsdXIsXG5cbiAgICAgICAgICAgICAgICAvLyDQn9GA0L7Qv9GB0Ysg0LTQu9GPINCy0L3Rg9GC0YDQtdC90L3QtdCz0L4g0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40Y8sINC90LUg0L7RgtC00LDQtdGC0YHRjyDQvdCw0YDRg9C20YMuXG4gICAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgICAgIF9vbkVudGVyRGlzYWJsZWQsXG4gICAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgICAgIF9mb3JjZUNoaXBNYW5pcHVsYXRpb25XaXRoUmVhZG9ubHksXG5cbiAgICAgICAgICAgICAgICAuLi5yZXN0XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcmVmLFxuICAgICAgICApID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbnRlbnRSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuICAgICAgICAgICAgY29uc3QgaW5wdXRDb250YWluZXJSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuICAgICAgICAgICAgY29uc3QgaW5wdXRSZWYgPSB1c2VSZWY8SFRNTElucHV0RWxlbWVudD4obnVsbCk7XG4gICAgICAgICAgICBjb25zdCBpbnB1dEZvcmtSZWYgPSB1c2VGb3JrUmVmKGlucHV0UmVmLCByZWYpO1xuICAgICAgICAgICAgY29uc3QgY2hpcHNSZWZzID0gdXNlUmVmPEFycmF5PEhUTUxCdXR0b25FbGVtZW50Pj4oW10pO1xuXG4gICAgICAgICAgICBjb25zdCBjb250cm9sbGVkUmVmcyA9IHsgY29udGVudFJlZiwgaW5wdXRSZWYsIGNoaXBzUmVmcyB9O1xuXG4gICAgICAgICAgICBjb25zdCBbaGFzVmFsdWUsIHNldEhhc1ZhbHVlXSA9IHVzZVN0YXRlKFxuICAgICAgICAgICAgICAgIEJvb2xlYW4ob3V0ZXJWYWx1ZSkgfHwgQm9vbGVhbihpbnB1dFJlZj8uY3VycmVudD8udmFsdWUpIHx8IEJvb2xlYW4ocmVzdD8uZGVmYXVsdFZhbHVlKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBjb25zdCBbaGFzRm9jdXMsIHNldEhhc0ZvY3VzXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICAgICAgICAgICAgY29uc3QgW2NoaXBzLCBzZXRDaGlwc10gPSB1c2VTdGF0ZTxBcnJheTxDaGlwVmFsdWVzPj4oW10pO1xuICAgICAgICAgICAgY29uc3QgW2lzSGludFZpc2libGUsIHNldElzSGludFZpc2libGVdID0gdXNlU3RhdGUoZmFsc2UpO1xuXG4gICAgICAgICAgICBjb25zdCB1bmlxSWQgPSBzYWZlVXNlSWQoKTtcbiAgICAgICAgICAgIGNvbnN0IGlubmVySWQgPSBpZCB8fCB1bmlxSWQ7XG4gICAgICAgICAgICBjb25zdCBsYWJlbElkID0gc2FmZVVzZUlkKCk7XG4gICAgICAgICAgICBjb25zdCBoZWxwZXJUZXh0SWQgPSBzYWZlVXNlSWQoKTtcblxuICAgICAgICAgICAgY29uc3QgaXNEZWZhdWx0VmlldyA9IHZpZXcgPT09ICdkZWZhdWx0JyB8fCByZWFkT25seSB8fCBkaXNhYmxlZDtcblxuICAgICAgICAgICAgY29uc3QgaXNDaGlwRW51bWVyYXRpb24gPSBlbnVtZXJhdGlvblR5cGUgPT09ICdjaGlwJztcbiAgICAgICAgICAgIGNvbnN0IGlzQ2hpcHNWaXNpYmxlID0gaXNDaGlwRW51bWVyYXRpb24gJiYgQm9vbGVhbihjaGlwcz8ubGVuZ3RoKTtcbiAgICAgICAgICAgIGNvbnN0IHdpdGhIYXNDaGlwcyA9IGlzQ2hpcHNWaXNpYmxlID8gY2xhc3Nlcy5oYXNDaGlwcyA6IHVuZGVmaW5lZDtcblxuICAgICAgICAgICAgY29uc3QgaGFzTGFiZWxWYWx1ZSA9IEJvb2xlYW4obGFiZWwpO1xuICAgICAgICAgICAgY29uc3QgaGFzSW5uZXJMYWJlbCA9IHNpemUgIT09ICd4cycgJiYgbGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcicgJiYgIWlzQ2hpcHNWaXNpYmxlICYmIGhhc0xhYmVsVmFsdWU7XG4gICAgICAgICAgICBjb25zdCBoYXNPdXRlckxhYmVsID0gbGFiZWxQbGFjZW1lbnQgPT09ICdvdXRlcicgJiYgaGFzTGFiZWxWYWx1ZTtcbiAgICAgICAgICAgIGNvbnN0IGlubmVyS2VlcFBsYWNlaG9sZGVyID0ga2VlcFBsYWNlaG9sZGVyICYmIGxhYmVsUGxhY2VtZW50ID09PSAnaW5uZXInO1xuICAgICAgICAgICAgY29uc3QgaGFzUGxhY2Vob2xkZXIgPSBCb29sZWFuKHBsYWNlaG9sZGVyKSAmJiAoaW5uZXJLZWVwUGxhY2Vob2xkZXIgfHwgIWhhc0lubmVyTGFiZWwpO1xuICAgICAgICAgICAgbGV0IGhhc1RleHRBZnRlciA9IEJvb2xlYW4odGV4dEFmdGVyKTtcbiAgICAgICAgICAgIGxldCBoYXNUZXh0QmVmb3JlID0gdGV4dEJlZm9yZSAmJiAhaXNDaGlwRW51bWVyYXRpb247XG4gICAgICAgICAgICBpZiAobGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcicpIHtcbiAgICAgICAgICAgICAgICBpZiAoIWhhc1ZhbHVlICYmICFoYXNQbGFjZWhvbGRlciAmJiAhaGFzRm9jdXMpIHtcbiAgICAgICAgICAgICAgICAgICAgaGFzVGV4dEFmdGVyID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgIGhhc1RleHRCZWZvcmUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IGhhc1BsYWNlaG9sZGVyUGFkZGluZyA9IGhhc0lubmVyTGFiZWwgJiYga2VlcFBsYWNlaG9sZGVyICYmIHNpemUgIT09ICd4cyc7XG5cbiAgICAgICAgICAgIGNvbnN0IGlubmVyTGFiZWxWYWx1ZSA9IGhhc0lubmVyTGFiZWwgfHwgaGFzT3V0ZXJMYWJlbCA/IGxhYmVsIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3QgaW5uZXJMYWJlbFBsYWNlbWVudFZhbHVlID0gbGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcicgJiYgIWhhc0lubmVyTGFiZWwgPyB1bmRlZmluZWQgOiBsYWJlbFBsYWNlbWVudDtcblxuICAgICAgICAgICAgY29uc3QgaW5uZXJQbGFjZWhvbGRlclZhbHVlID0gaGFzUGxhY2Vob2xkZXIgPyBwbGFjZWhvbGRlciA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGNvbnN0IHBsYWNlaG9sZGVyU2hvd24gPSBCb29sZWFuKGlubmVyUGxhY2Vob2xkZXJWYWx1ZSkgJiYgIWhhc1ZhbHVlO1xuXG4gICAgICAgICAgICBjb25zdCBjbGVhckNsYXNzID0gY2xlYXIgPyBjbGFzc2VzLmNsZWFyIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3QgaGFzRGl2aWRlckNsYXNzID0gaGFzRGl2aWRlciA/IGNsYXNzZXMuaGFzRGl2aWRlciA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGNvbnN0IGhhc0lubmVySGludENsYXNzID0gaGludFRleHQgJiYgaGludFRhcmdldFBsYWNlbWVudCA9PT0gJ291dGVyJyA/IGNsYXNzZXMuaGFzSGludCA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGNvbnN0IGhhc0hpbnRDbGFzcyA9IGhpbnRUZXh0ID8gY2xhc3Nlcy5oYXNIaW50IDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3QgcmVxdWlyZWRQbGFjZW1lbnRDbGFzcyA9IHJlcXVpcmVkUGxhY2VtZW50ID09PSAncmlnaHQnID8gY2xhc3Nlcy5yZXF1aXJlZEFsaWduUmlnaHQgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICBjb25zdCBsYWJlbFBsYWNlbWVudENsYXNzID0gaW5uZXJMYWJlbFBsYWNlbWVudFZhbHVlXG4gICAgICAgICAgICAgICAgPyBjbGFzc2VzW2Ake2lubmVyTGFiZWxQbGFjZW1lbnRWYWx1ZX1MYWJlbFBsYWNlbWVudGAgYXMga2V5b2YgdHlwZW9mIGNsYXNzZXNdXG4gICAgICAgICAgICAgICAgOiB1bmRlZmluZWQ7XG4gICAgICAgICAgICBjb25zdCBoYXNWYWx1ZUNsYXNzID0gaGFzVmFsdWUgPyBjbGFzc2VzLmhhc1ZhbHVlIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgY29uc3Qga2VlcFBsYWNlaG9sZGVyQ2xhc3MgPSBoYXNQbGFjZWhvbGRlciAmJiBwbGFjZWhvbGRlclNob3duICYmIGNsYXNzZXMua2VlcFBsYWNlaG9sZGVyO1xuXG4gICAgICAgICAgICBjb25zdCB3cmFwcGVyV2l0aG91dExlZnRDb250ZW50ID1cbiAgICAgICAgICAgICAgICAhY29udGVudExlZnQgJiYgaXNDaGlwc1Zpc2libGUgJiYgY2hpcFR5cGUgPT09ICdkZWZhdWx0JyA/IGNsYXNzZXMuaGFzRW1wdHlDb250ZW50TGVmdCA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgIGNvbnN0IHdyYXBwZXJXaXRob3V0UmlnaHRDb250ZW50ID1cbiAgICAgICAgICAgICAgICAhY29udGVudFJpZ2h0ICYmIGlzQ2hpcHNWaXNpYmxlICYmIGNoaXBUeXBlID09PSAnZGVmYXVsdCcgPyBjbGFzc2VzLmhhc0VtcHR5Q29udGVudFJpZ2h0IDogdW5kZWZpbmVkO1xuXG4gICAgICAgICAgICBjb25zdCBjb250ZW50UmlnaHRDb21wZW5zYXRpb25NYXJnaW4gPVxuICAgICAgICAgICAgICAgICFoYXNPdXRlckxhYmVsICYmIGhpbnRUZXh0ICYmIGhpbnRUYXJnZXRQbGFjZW1lbnQgPT09ICdpbm5lcidcbiAgICAgICAgICAgICAgICAgICAgPyBjbGFzc2VzLmNvbnRlbnRSaWdodENvbXBlbnNhdGlvbk1hcmdpblxuICAgICAgICAgICAgICAgICAgICA6IHVuZGVmaW5lZDtcblxuICAgICAgICAgICAgY29uc3QgaGludFJlZiA9IHVzZU91dHNpZGVDbGljazxIVE1MRGl2RWxlbWVudD4oKCkgPT4ge1xuICAgICAgICAgICAgICAgIHNldElzSGludFZpc2libGUoZmFsc2UpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb25zdCBoaW50SW5uZXJSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuICAgICAgICAgICAgY29uc3QgaGludEZvcmtSZWYgPSB1c2VGb3JrUmVmKGhpbnRSZWYsIGhpbnRJbm5lclJlZik7XG5cbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZUlucHV0OiBGb3JtRXZlbnRIYW5kbGVyPEhUTUxJbnB1dEVsZW1lbnQ+ID0gKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgeyB2YWx1ZSB9ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG5cbiAgICAgICAgICAgICAgICBzZXRIYXNWYWx1ZShCb29sZWFuKHZhbHVlKSk7XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChoYXNUZXh0QWZ0ZXIgJiYgaW5wdXRSZWYuY3VycmVudCkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB0ZXh0V2lkdGggPSBnZXRJbnB1dFdpZHRoKGlucHV0UmVmLmN1cnJlbnQsIGlucHV0Q29udGFpbmVyUmVmLmN1cnJlbnQpO1xuICAgICAgICAgICAgICAgICAgICBpbnB1dFJlZi5jdXJyZW50LnN0eWxlLndpZHRoID0gYCR7dGV4dFdpZHRofXB4YDtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBpbnB1dFJlZi5jdXJyZW50Py5zdHlsZS5yZW1vdmVQcm9wZXJ0eSgnd2lkdGgnKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9LCBbaGFzVGV4dEFmdGVyXSk7XG5cbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZUZvY3VzID0gKGV2ZW50OiBSZWFjdC5Gb2N1c0V2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+KSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0SGFzRm9jdXModHJ1ZSk7XG4gICAgICAgICAgICAgICAgb25Gb2N1cz8uKGV2ZW50KTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZUJsdXIgPSAoZXZlbnQ6IFJlYWN0LkZvY3VzRXZlbnQ8SFRNTElucHV0RWxlbWVudD4pID0+IHtcbiAgICAgICAgICAgICAgICBzZXRIYXNGb2N1cyhmYWxzZSk7XG4gICAgICAgICAgICAgICAgb25CbHVyPy4oZXZlbnQpO1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgY29uc3QgaGFuZGxlSGludFNob3cgPSAoKSA9PiBzZXRJc0hpbnRWaXNpYmxlKHRydWUpO1xuICAgICAgICAgICAgY29uc3QgaGFuZGxlSGludEhpZGUgPSAoKSA9PiBzZXRJc0hpbnRWaXNpYmxlKGZhbHNlKTtcbiAgICAgICAgICAgIGNvbnN0IGhhbmRsZUhpbnRDbGljazogTW91c2VFdmVudEhhbmRsZXIgPSAoZXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIWhpbnRUZXh0IHx8IGhpbnRUcmlnZ2VyICE9PSAnY2xpY2snKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICBjb25zdCB0YXJnZXRJc1BvcG92ZXIgPSBldmVudC50YXJnZXQgPT09IGhpbnRJbm5lclJlZi5jdXJyZW50O1xuICAgICAgICAgICAgICAgIGNvbnN0IHJvb3RIYXNUYXJnZXQgPSBoaW50SW5uZXJSZWYuY3VycmVudD8uY29udGFpbnMoZXZlbnQudGFyZ2V0IGFzIEVsZW1lbnQpO1xuXG4gICAgICAgICAgICAgICAgaWYgKCF0YXJnZXRJc1BvcG92ZXIgJiYgIXJvb3RIYXNUYXJnZXQpIHtcbiAgICAgICAgICAgICAgICAgICAgc2V0SXNIaW50VmlzaWJsZSh0cnVlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBjb25zdCBoYW5kbGVDaGFuZ2U6IENoYW5nZUV2ZW50SGFuZGxlcjxIVE1MSW5wdXRFbGVtZW50PiA9IChldmVudCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChkaXNhYmxlZCB8fCByZWFkT25seSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3QgeyBtYXhMZW5ndGgsIHZhbHVlIH0gPSBldmVudC50YXJnZXQ7XG5cbiAgICAgICAgICAgICAgICBpZiAobWF4TGVuZ3RoICE9PSAtMSAmJiB2YWx1ZS5sZW5ndGggPiBtYXhMZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIG9uQ2hhbmdlPy4oZXZlbnQpO1xuXG4gICAgICAgICAgICAgICAgaWYgKGhhc1RleHRBZnRlcikge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB0ZXh0V2lkdGggPSBnZXRJbnB1dFdpZHRoKGV2ZW50LmN1cnJlbnRUYXJnZXQsIGlucHV0Q29udGFpbmVyUmVmLmN1cnJlbnQpO1xuICAgICAgICAgICAgICAgICAgICBldmVudC5jdXJyZW50VGFyZ2V0LnN0eWxlLndpZHRoID0gYCR7dGV4dFdpZHRofXB4YDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBjb25zdCB1cGRhdGVDaGlwcyA9IChuZXdDaGlwczogQXJyYXk8Q2hpcFZhbHVlcz4sIG5ld1ZhbHVlczogQXJyYXk8VGV4dEZpZWxkUHJpbWl0aXZlVmFsdWU+KSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0Q2hpcHMobmV3Q2hpcHMpO1xuICAgICAgICAgICAgICAgIG9uQ2hhbmdlQ2hpcHM/LihuZXdWYWx1ZXMpO1xuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgY29uc3QgeyBoYW5kbGVJbnB1dEtleWRvd24sIGhhbmRsZUNoaXBLZXlEb3duLCBvbkNoaXBDbGVhciwgaGFuZGxlQ29udGVudEtleURvd24gfSA9IHVzZUtleU5hdmlnYXRpb24oe1xuICAgICAgICAgICAgICAgIGNvbnRyb2xsZWRSZWZzLFxuICAgICAgICAgICAgICAgIGRpc2FibGVkLFxuICAgICAgICAgICAgICAgIHJlYWRPbmx5LFxuICAgICAgICAgICAgICAgIGNoaXBzLFxuICAgICAgICAgICAgICAgIGVudW1lcmF0aW9uVHlwZSxcbiAgICAgICAgICAgICAgICB1cGRhdGVDaGlwcyxcbiAgICAgICAgICAgICAgICBvblNlYXJjaCxcbiAgICAgICAgICAgICAgICBvbkNoYW5nZSxcbiAgICAgICAgICAgICAgICBvbkVudGVyRGlzYWJsZWQ6IF9vbkVudGVyRGlzYWJsZWQsXG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgY29uc3Qgb25DaGlwQ2xpY2sgPSAoZXZlbnQ6IFJlYWN0Lk1vdXNlRXZlbnQ8SFRNTEJ1dHRvbkVsZW1lbnQ+KSA9PiBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICAgICAgY29uc3QgaGFuZGxlSW5wdXRGb2N1cyA9ICgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAocmVhZE9ubHkgfHwgZGlzYWJsZWQgfHwgIWlucHV0UmVmPy5jdXJyZW50KSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpbnB1dFJlZi5jdXJyZW50LnNjcm9sbFRvKHtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwLFxuICAgICAgICAgICAgICAgICAgICBsZWZ0OiBpbnB1dFJlZi5jdXJyZW50Lm9mZnNldExlZnQsXG4gICAgICAgICAgICAgICAgICAgIGJlaGF2aW9yOiAnc21vb3RoJyxcbiAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgIGlucHV0UmVmLmN1cnJlbnQuZm9jdXMoKTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGNvbnN0IGdldFJlZiA9IChlbGVtZW50OiBIVE1MQnV0dG9uRWxlbWVudCB8IG51bGwsIGluZGV4OiBudW1iZXIpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZWxlbWVudCAmJiBjaGlwc1JlZnM/LmN1cnJlbnQpIHtcbiAgICAgICAgICAgICAgICAgICAgY2hpcHNSZWZzLmN1cnJlbnRbaW5kZXhdID0gZWxlbWVudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICBjb25zdCBoYW5kbGVPbktleURvd24gPSAoZXZlbnQ6IENoYW5nZUV2ZW50PEhUTUxJbnB1dEVsZW1lbnQ+ICYgS2V5Ym9hcmRFdmVudDxIVE1MSW5wdXRFbGVtZW50PikgPT4ge1xuICAgICAgICAgICAgICAgIGhhbmRsZUlucHV0S2V5ZG93bihldmVudCk7XG5cbiAgICAgICAgICAgICAgICBpZiAob25LZXlEb3duKSB7XG4gICAgICAgICAgICAgICAgICAgIG9uS2V5RG93bihldmVudCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIWlzQ2hpcEVudW1lcmF0aW9uICYmICF2YWx1ZXM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3QgbmV3Q2hpcHMgPVxuICAgICAgICAgICAgICAgICAgICB2YWx1ZXM/Lm1hcCgodmFsdWUsIGluZGV4KSA9PiAoe1xuICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IGAke2luZGV4fV8ke3ZhbHVlfWAsXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiB2YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgfSkpIHx8IFtdO1xuXG4gICAgICAgICAgICAgICAgc2V0Q2hpcHMobmV3Q2hpcHMpO1xuICAgICAgICAgICAgfSwgW2lzQ2hpcEVudW1lcmF0aW9uLCB2YWx1ZXNdKTtcblxuICAgICAgICAgICAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgICAgICAgICBzZXRIYXNWYWx1ZShCb29sZWFuKHJlc3Q/LmRlZmF1bHRWYWx1ZSkpO1xuICAgICAgICAgICAgfSwgW3Jlc3QuZGVmYXVsdFZhbHVlXSk7XG5cbiAgICAgICAgICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgc2V0SGFzVmFsdWUoQm9vbGVhbihvdXRlclZhbHVlKSB8fCBCb29sZWFuKGlucHV0UmVmPy5jdXJyZW50Py52YWx1ZSkpO1xuICAgICAgICAgICAgfSwgW291dGVyVmFsdWUsIGlucHV0UmVmPy5jdXJyZW50Py52YWx1ZV0pO1xuXG4gICAgICAgICAgICBjb25zdCBpbm5lck9wdGlvbmFsID0gQm9vbGVhbihyZXF1aXJlZCA/IGZhbHNlIDogb3B0aW9uYWwpO1xuICAgICAgICAgICAgY29uc3QgaGFzUGxhY2Vob2xkZXJPcHRpb25hbCA9IGlubmVyT3B0aW9uYWwgJiYgIWlubmVyTGFiZWxWYWx1ZSAmJiAhaGFzT3V0ZXJMYWJlbDtcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbmFsVGV4dE5vZGUgPSBpbm5lck9wdGlvbmFsID8gKFxuICAgICAgICAgICAgICAgIDxTdHlsZWRPcHRpb25hbFRleHQ+XG4gICAgICAgICAgICAgICAgICAgIHtCb29sZWFuKGhhc1BsYWNlaG9sZGVyT3B0aW9uYWwgPyBpbm5lclBsYWNlaG9sZGVyVmFsdWUgOiBpbm5lckxhYmVsVmFsdWUpICYmICdcXHhhMCd9XG4gICAgICAgICAgICAgICAgICAgIHtvcHRpb25hbFRleHR9XG4gICAgICAgICAgICAgICAgPC9TdHlsZWRPcHRpb25hbFRleHQ+XG4gICAgICAgICAgICApIDogbnVsbDtcblxuICAgICAgICAgICAgY29uc3QgY2xhc3NUZXh0RWxsaXBzaXMgPVxuICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXRzLWNvbW1lbnRcbiAgICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVuZGVyc2NvcmUtZGFuZ2xlXG4gICAgICAgICAgICAgICAgIShyZXN0IGFzIGFueSkuX3RleHRFbGxpcHNpc0Rpc2FibGUgJiYgIXRleHRBZnRlciA/IGNsYXNzZXMuaW5wdXRUZXh0RWxsaXBzaXMgOiB1bmRlZmluZWQ7XG5cbiAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgPFJvb3RcbiAgICAgICAgICAgICAgICAgICAgdmlldz17dmlld31cbiAgICAgICAgICAgICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICAgICAgICAgICAgZGlzYWJsZWQ9e2Rpc2FibGVkfVxuICAgICAgICAgICAgICAgICAgICByZWFkT25seT17IWRpc2FibGVkICYmIHJlYWRPbmx5fVxuICAgICAgICAgICAgICAgICAgICBsYWJlbFBsYWNlbWVudD17aW5uZXJMYWJlbFBsYWNlbWVudFZhbHVlfVxuICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXtoYW5kbGVJbnB1dEZvY3VzfVxuICAgICAgICAgICAgICAgICAgICBkYXRhLXJvb3RcbiAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjeChcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVsUGxhY2VtZW50Q2xhc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGVhckNsYXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgaGFzRGl2aWRlckNsYXNzLFxuICAgICAgICAgICAgICAgICAgICAgICAgaGFzSW5uZXJIaW50Q2xhc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzc2VzLnRleHRGaWVsZEdyb3VwSXRlbSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgc3R5bGU9e3N0eWxlfVxuICAgICAgICAgICAgICAgICAgICB7Li4uKGhpbnRUZXh0ICYmIHsgaGludFZpZXcsIGhpbnRTaXplIH0pfVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgeyhoYXNPdXRlckxhYmVsIHx8IHRpdGxlQ2FwdGlvbikgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPE91dGVyTGFiZWxXcmFwcGVyIGlzSW5uZXJMYWJlbD17bGFiZWxQbGFjZW1lbnQgPT09ICdpbm5lcid9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtoYXNPdXRlckxhYmVsICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEluZGljYXRvcldyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8TGFiZWwgaWQ9e2xhYmVsSWR9IGh0bWxGb3I9e2lkfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aW5uZXJMYWJlbFZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9MYWJlbD5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2hpbnRUZXh0ICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSGludFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxIaW50Q29tcG9uZW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWY9e2hpbnRGb3JrUmVmfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFRleHQ9e2hpbnRUZXh0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFRyaWdnZXI9e2hpbnRUcmlnZ2VyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNIaW50VmlzaWJsZT17aXNIaW50VmlzaWJsZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRUYXJnZXRJY29uPXtoaW50VGFyZ2V0SWNvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRQbGFjZW1lbnQ9e2hpbnRQbGFjZW1lbnR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50SGFzQXJyb3c9e2hpbnRIYXNBcnJvd31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRPZmZzZXQ9e2hpbnRPZmZzZXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50V2lkdGg9e2hpbnRXaWR0aH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRDb250ZW50TGVmdD17aGludENvbnRlbnRMZWZ0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlSGludFNob3c9e2hhbmRsZUhpbnRTaG93fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlSGludEhpZGU9e2hhbmRsZUhpbnRIaWRlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlSGludENsaWNrPXtoYW5kbGVIaW50Q2xpY2t9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRIaW50V3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7cmVxdWlyZWQgJiYgaGFzUmVxdWlyZWRJbmRpY2F0b3IgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRJbmRpY2F0b3JcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjeChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzZXMub3V0ZXJMYWJlbFBsYWNlbWVudCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkUGxhY2VtZW50Q2xhc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYXNIaW50Q2xhc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7b3B0aW9uYWxUZXh0Tm9kZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRJbmRpY2F0b3JXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3RpdGxlQ2FwdGlvbiAmJiA8VGl0bGVDYXB0aW9uIGRhdGEtcm9vdD57dGl0bGVDYXB0aW9ufTwvVGl0bGVDYXB0aW9uPn1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvT3V0ZXJMYWJlbFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIDxJbnB1dFdyYXBwZXJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIFJlZiDQtNC70Y8g0LLQvdGD0YLRgNC10L3QvdC10LPQviDQuNGB0L/QvtC70YzQt9C+0LLQsNC90LjRjy4g0J3QtSDQvtGC0LTQsNC10YLRgdGPINC90LDRgNGD0LbRgy5cbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZj17KHJlc3QgYXMgYW55KS5pbnB1dFdyYXBwZXJSZWZ9XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBUT0RPOiAjMTU0NCwg0Lgg0L/QvtGB0LvQtSDRg9Cx0YDQsNGC0YwgY2xhc3Nlcy5pbnB1dFdyYXBwZXJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT17Y3goXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2l0aEhhc0NoaXBzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdyYXBwZXJXaXRob3V0TGVmdENvbnRlbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd3JhcHBlcldpdGhvdXRSaWdodENvbnRlbnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3Nlcy5pbnB1dFdyYXBwZXIsXG4gICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7IWhhc091dGVyTGFiZWwgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtyZXF1aXJlZCAmJiBoYXNSZXF1aXJlZEluZGljYXRvciAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkSW5kaWNhdG9yXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NOYW1lPXtjeChjbGFzc2VzLmlubmVyTGFiZWxQbGFjZW1lbnQsIHJlcXVpcmVkUGxhY2VtZW50Q2xhc3MpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2hpbnRUZXh0ICYmIGhpbnRUYXJnZXRQbGFjZW1lbnQgPT09ICdvdXRlcicgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZEhpbnRXcmFwcGVyIGNsYXNzTmFtZT17Y2xhc3Nlcy5pbm5lckxhYmVsUGxhY2VtZW50fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SGludENvbXBvbmVudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWY9e2hpbnRGb3JrUmVmfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50VGV4dD17aGludFRleHR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRUcmlnZ2VyPXtoaW50VHJpZ2dlcn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNIaW50VmlzaWJsZT17aXNIaW50VmlzaWJsZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFRhcmdldEljb249e2hpbnRUYXJnZXRJY29ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50UGxhY2VtZW50PXtoaW50UGxhY2VtZW50fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50SGFzQXJyb3c9e2hpbnRIYXNBcnJvd31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludE9mZnNldD17aGludE9mZnNldH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFdpZHRoPXtoaW50V2lkdGh9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRDb250ZW50TGVmdD17aGludENvbnRlbnRMZWZ0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplPXtzaXplfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoYW5kbGVIaW50U2hvdz17aGFuZGxlSGludFNob3d9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRIaWRlPXtoYW5kbGVIaW50SGlkZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGFuZGxlSGludENsaWNrPXtoYW5kbGVIaW50Q2xpY2t9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzSW5uZXJMYWJlbFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZEhpbnRXcmFwcGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHtjb250ZW50TGVmdCAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZENvbnRlbnRMZWZ0IGRhdGEtcm9vdCBpc0NsZWFyPXtjbGVhcn0gaXNEZWZhdWx0Vmlldz17aXNEZWZhdWx0Vmlld30+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtjb250ZW50TGVmdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZENvbnRlbnRMZWZ0PlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDxJbnB1dExhYmVsV3JhcHBlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhYkluZGV4PXstMX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWY9e2NvbnRlbnRSZWZ9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb25LZXlEb3duPXtoYW5kbGVDb250ZW50S2V5RG93bn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e3dpdGhIYXNDaGlwc31cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Qm9vbGVhbih0ZXh0QmVmb3JlICYmIGlzQ2hpcEVudW1lcmF0aW9uKSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxTdHlsZWRUZXh0QmVmb3JlPnt0ZXh0QmVmb3JlfTwvU3R5bGVkVGV4dEJlZm9yZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtpc0NoaXBFbnVtZXJhdGlvbiAmJiBCb29sZWFuKGNoaXBzPy5sZW5ndGgpICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFN0eWxlZENoaXBzIGNsYXNzTmFtZT17Y2xhc3Nlcy5jaGlwc1dyYXBwZXJ9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2NoaXBzPy5tYXAoKHsgaWQ6IGNoaXBJZCwgdGV4dCB9LCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHZhbGlkYXRpb25WaWV3ID0gY2hpcFZhbGlkYXRvcj8uKFN0cmluZyh0ZXh0KSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVzVmlldyA9IHZhbGlkYXRpb25WaWV3Py52aWV3IHx8IGNoaXBWaWV3O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPFRleHRGaWVsZENoaXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPXtjaGlwSWR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWY9eyhlbGVtZW50KSA9PiBnZXRSZWYoZWxlbWVudCwgaW5kZXgpfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5PXtgJHtjaGlwSWR9XyR7aW5kZXh9YH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlYWRPbmx5PXtyZWFkT25seX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlPXt0ZXh0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dD17dGV4dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uS2V5RG93bj17KGV2ZW50KSA9PiBoYW5kbGVDaGlwS2V5RG93bihldmVudCwgY2hpcElkLCBpbmRleCl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbkNsZWFyPXsoKSA9PiBvbkNoaXBDbGVhcihjaGlwSWQsIGluZGV4KX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2xpY2s9e29uQ2hpcENsaWNrfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpcFR5cGU9e2NoaXBUeXBlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmlldz17cmVzVmlld31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvb3RXcmFwcGVyPXtSb290fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gVE9ETzogIzE1NDdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF9mb3JjZUNoaXBNYW5pcHVsYXRpb25XaXRoUmVhZG9ubHk9e19mb3JjZUNoaXBNYW5pcHVsYXRpb25XaXRoUmVhZG9ubHl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZENoaXBzPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPElucHV0Q29udGFpbmVyIHJlZj17aW5wdXRDb250YWluZXJSZWZ9IGhhc0R5bmFtaWNXaWR0aD17aGFzVGV4dEFmdGVyfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2hhc1RleHRCZWZvcmUgJiYgPFN0eWxlZFRleHRCZWZvcmU+e3RleHRCZWZvcmV9PC9TdHlsZWRUZXh0QmVmb3JlPn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPElucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWY9e2lucHV0Rm9ya1JlZn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPXtpbm5lcklkfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWU9e291dGVyVmFsdWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXF1aXJlZD17ZW51bWVyYXRpb25UeXBlID09PSAnY2hpcCcgPyBjaGlwcy5sZW5ndGggPT09IDAgJiYgcmVxdWlyZWQgOiByZXF1aXJlZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtbGFiZWxsZWRieT17bGFiZWxJZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyaWEtZGVzY3JpYmVkYnk9e2hlbHBlclRleHRJZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPXtpbm5lclBsYWNlaG9sZGVyVmFsdWV9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e2N4KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc1ZhbHVlQ2xhc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2VlcFBsYWNlaG9sZGVyQ2xhc3MsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NUZXh0RWxsaXBzaXMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVhZE9ubHkgJiYgY2xhc3Nlcy5yZWFkT25seUlucHV0LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlYWRPbmx5PXshZGlzYWJsZWQgJiYgcmVhZE9ubHl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbklucHV0PXtoYW5kbGVJbnB1dH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uQ2hhbmdlPXtoYW5kbGVDaGFuZ2V9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbktleURvd249e2hhbmRsZU9uS2V5RG93bn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9uRm9jdXM9e2hhbmRsZUZvY3VzfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb25CbHVyPXtoYW5kbGVCbHVyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS10b3VyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7Li4ucmVzdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2hhc0lubmVyTGFiZWwgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPExhYmVsIGRhdGEtcm9vdCBpZD17bGFiZWxJZH0gaHRtbEZvcj17aW5uZXJJZH0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2lubmVyTGFiZWxWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7b3B0aW9uYWxUZXh0Tm9kZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvTGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtwbGFjZWhvbGRlclNob3duICYmICFoYXNWYWx1ZSAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8SW5wdXRQbGFjZWhvbGRlciBoYXNQYWRkaW5nPXtoYXNQbGFjZWhvbGRlclBhZGRpbmd9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtoYXNUZXh0QmVmb3JlICYmIDxTdHlsZWRUZXh0QmVmb3JlIGlzSGlkZGVuPnt0ZXh0QmVmb3JlfTwvU3R5bGVkVGV4dEJlZm9yZT59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2lubmVyUGxhY2Vob2xkZXJWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aGFzUGxhY2Vob2xkZXJPcHRpb25hbCAmJiBvcHRpb25hbFRleHROb2RlfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9JbnB1dFBsYWNlaG9sZGVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aGFzVGV4dEFmdGVyICYmIDxTdHlsZWRUZXh0QWZ0ZXI+e3RleHRBZnRlcn08L1N0eWxlZFRleHRBZnRlcj59XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9JbnB1dENvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvSW5wdXRMYWJlbFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8U3R5bGVkQ29udGVudFJpZ2h0V3JhcHBlciBjbGFzc05hbWU9e2N4KGNvbnRlbnRSaWdodENvbXBlbnNhdGlvbk1hcmdpbil9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtjb250ZW50UmlnaHQgJiYgPFN0eWxlZENvbnRlbnRSaWdodCBkYXRhLXJvb3Q+e2NvbnRlbnRSaWdodH08L1N0eWxlZENvbnRlbnRSaWdodD59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7IWhhc091dGVyTGFiZWwgJiYgaGludFRleHQgJiYgaGludFRhcmdldFBsYWNlbWVudCA9PT0gJ2lubmVyJyAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxIaW50Q29tcG9uZW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWY9e2hpbnRGb3JrUmVmfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFRleHQ9e2hpbnRUZXh0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGludFRyaWdnZXI9e2hpbnRUcmlnZ2VyfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNIaW50VmlzaWJsZT17aXNIaW50VmlzaWJsZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRUYXJnZXRJY29uPXtoaW50VGFyZ2V0SWNvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRQbGFjZW1lbnQ9e2hpbnRQbGFjZW1lbnR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50SGFzQXJyb3c9e2hpbnRIYXNBcnJvd31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRPZmZzZXQ9e2hpbnRPZmZzZXR9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoaW50V2lkdGg9e2hpbnRXaWR0aH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhpbnRDb250ZW50TGVmdD17aGludENvbnRlbnRMZWZ0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2l6ZT17c2l6ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRTaG93PXtoYW5kbGVIaW50U2hvd31cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRIaWRlPXtoYW5kbGVIaW50SGlkZX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhbmRsZUhpbnRDbGljaz17aGFuZGxlSGludENsaWNrfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNJbm5lckxhYmVsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvU3R5bGVkQ29udGVudFJpZ2h0V3JhcHBlcj5cbiAgICAgICAgICAgICAgICAgICAgPC9JbnB1dFdyYXBwZXI+XG4gICAgICAgICAgICAgICAgICAgIHtsZWZ0SGVscGVyICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIDxMZWZ0SGVscGVyIGRhdGEtcm9vdCBpZD17aGVscGVyVGV4dElkfT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7bGVmdEhlbHBlcn1cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvTGVmdEhlbHBlcj5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICA8L1Jvb3Q+XG4gICAgICAgICAgICApO1xuICAgICAgICB9LFxuICAgICk7XG5cbmV4cG9ydCBjb25zdCB0ZXh0RmllbGRDb25maWcgPSB7XG4gICAgbmFtZTogJ1RleHRGaWVsZCcsXG4gICAgdGFnOiAnZGl2JyxcbiAgICBsYXlvdXQ6IHRleHRGaWVsZFJvb3QsXG4gICAgYmFzZSxcbiAgICB2YXJpYXRpb25zOiB7XG4gICAgICAgIHZpZXc6IHtcbiAgICAgICAgICAgIGNzczogdmlld0NTUyxcbiAgICAgICAgfSxcbiAgICAgICAgc2l6ZToge1xuICAgICAgICAgICAgY3NzOiBzaXplQ1NTLFxuICAgICAgICB9LFxuICAgICAgICBjbGVhcjoge1xuICAgICAgICAgICAgY3NzOiBjbGVhckNTUyxcbiAgICAgICAgICAgIGF0dHJzOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICBkaXNhYmxlZDoge1xuICAgICAgICAgICAgY3NzOiBkaXNhYmxlZENTUyxcbiAgICAgICAgICAgIGF0dHJzOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICByZWFkT25seToge1xuICAgICAgICAgICAgY3NzOiByZWFkT25seUNTUyxcbiAgICAgICAgICAgIGF0dHJzOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICBsYWJlbFBsYWNlbWVudDoge1xuICAgICAgICAgICAgY3NzOiBsYWJlbFBsYWNlbWVudENTUyxcbiAgICAgICAgfSxcbiAgICAgICAgaGludFZpZXc6IHtcbiAgICAgICAgICAgIGNzczogaGludFZpZXdDU1MsXG4gICAgICAgIH0sXG4gICAgICAgIGhpbnRTaXplOiB7XG4gICAgICAgICAgICBjc3M6IGhpbnRTaXplQ1NTLFxuICAgICAgICB9LFxuICAgICAgICBjaGlwVmlldzoge1xuICAgICAgICAgICAgY3NzOiBjaGlwVmlld0NTUyxcbiAgICAgICAgfSxcbiAgICB9LFxuICAgIGRlZmF1bHRzOiB7XG4gICAgICAgIHNpemU6ICdtJyxcbiAgICAgICAgdmlldzogJ2RlZmF1bHQnLFxuICAgIH0sXG59O1xuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQStDb0IifQ== */");
|
124
124
|
var HINT_DEFAULT_OFFSET = [
|
125
125
|
0,
|
126
126
|
0
|
@@ -378,6 +378,7 @@ export var textFieldRoot = function(Root) {
|
|
378
378
|
readOnly: !disabled && readOnly,
|
379
379
|
labelPlacement: innerLabelPlacementValue,
|
380
380
|
onClick: handleInputFocus,
|
381
|
+
"data-root": true,
|
381
382
|
className: cx(labelPlacementClass, clearClass, hasDividerClass, hasInnerHintClass, classes.textFieldGroupItem, className),
|
382
383
|
style: style
|
383
384
|
}, hintText && {
|
@@ -404,7 +405,9 @@ export var textFieldRoot = function(Root) {
|
|
404
405
|
handleHintClick: handleHintClick
|
405
406
|
})), required && hasRequiredIndicator && /*#__PURE__*/ React.createElement(StyledIndicator, {
|
406
407
|
className: cx(classes.outerLabelPlacement, requiredPlacementClass, hasHintClass)
|
407
|
-
}), optionalTextNode), titleCaption && /*#__PURE__*/ React.createElement(TitleCaption,
|
408
|
+
}), optionalTextNode), titleCaption && /*#__PURE__*/ React.createElement(TitleCaption, {
|
409
|
+
"data-root": true
|
410
|
+
}, titleCaption)), /*#__PURE__*/ React.createElement(InputWrapper, {
|
408
411
|
// Ref для внутреннего использования. Не отдается наружу.
|
409
412
|
ref: rest.inputWrapperRef,
|
410
413
|
// TODO: #1544, и после убрать classes.inputWrapper
|
@@ -430,6 +433,7 @@ export var textFieldRoot = function(Root) {
|
|
430
433
|
handleHintClick: handleHintClick,
|
431
434
|
isInnerLabel: true
|
432
435
|
}))), contentLeft && /*#__PURE__*/ React.createElement(StyledContentLeft, {
|
436
|
+
"data-root": true,
|
433
437
|
isClear: clear,
|
434
438
|
isDefaultView: isDefaultView
|
435
439
|
}, contentLeft), /*#__PURE__*/ React.createElement(InputLabelWrapper, {
|
@@ -485,8 +489,10 @@ export var textFieldRoot = function(Root) {
|
|
485
489
|
onChange: handleChange,
|
486
490
|
onKeyDown: handleOnKeyDown,
|
487
491
|
onFocus: handleFocus,
|
488
|
-
onBlur: handleBlur
|
492
|
+
onBlur: handleBlur,
|
493
|
+
"data-tour": true
|
489
494
|
}, rest)), hasInnerLabel && /*#__PURE__*/ React.createElement(Label, {
|
495
|
+
"data-root": true,
|
490
496
|
id: labelId,
|
491
497
|
htmlFor: innerId
|
492
498
|
}, innerLabelValue, optionalTextNode), placeholderShown && !hasValue && /*#__PURE__*/ React.createElement(InputPlaceholder, {
|
@@ -495,7 +501,9 @@ export var textFieldRoot = function(Root) {
|
|
495
501
|
isHidden: true
|
496
502
|
}, textBefore), innerPlaceholderValue, hasPlaceholderOptional && optionalTextNode), hasTextAfter && /*#__PURE__*/ React.createElement(StyledTextAfter, null, textAfter))), /*#__PURE__*/ React.createElement(StyledContentRightWrapper, {
|
497
503
|
className: cx(contentRightCompensationMargin)
|
498
|
-
}, contentRight && /*#__PURE__*/ React.createElement(StyledContentRight,
|
504
|
+
}, contentRight && /*#__PURE__*/ React.createElement(StyledContentRight, {
|
505
|
+
"data-root": true
|
506
|
+
}, contentRight), !hasOuterLabel && hintText && hintTargetPlacement === 'inner' && /*#__PURE__*/ React.createElement(HintComponent, {
|
499
507
|
ref: hintForkRef,
|
500
508
|
hintText: hintText,
|
501
509
|
hintTrigger: hintTrigger,
|
@@ -512,6 +520,7 @@ export var textFieldRoot = function(Root) {
|
|
512
520
|
handleHintClick: handleHintClick,
|
513
521
|
isInnerLabel: true
|
514
522
|
}))), leftHelper && /*#__PURE__*/ React.createElement(LeftHelper, {
|
523
|
+
"data-root": true,
|
515
524
|
id: helperTextId
|
516
525
|
}, leftHelper));
|
517
526
|
});
|
@@ -1,3 +1,4 @@
|
|
1
|
+
import { TOUR_BORDER_RADIUS_TOKEN } from "../Tour/utils";
|
1
2
|
export var classes = {
|
2
3
|
hasChips: 'has-chips',
|
3
4
|
chipsWrapper: 'chips-wrapper',
|
@@ -176,5 +177,6 @@ export var tokens = {
|
|
176
177
|
indicatorLabelPlacementHintOuterRight: '--plasma-textfield__indicator-hint-placement-outer-right',
|
177
178
|
clearIndicatorLabelPlacementInner: '--plasma-textfield__clear-indicator-placement-inner',
|
178
179
|
clearIndicatorLabelPlacementInnerRight: '--plasma-textfield__clear-indicator-placement-inner-right',
|
179
|
-
clearIndicatorHintInnerRight: '--plasma-textfield__clear-indicator-hint-placement-inner-right'
|
180
|
+
clearIndicatorHintInnerRight: '--plasma-textfield__clear-indicator-hint-placement-inner-right',
|
181
|
+
tourBorderRadius: TOUR_BORDER_RADIUS_TOKEN
|
180
182
|
};
|
@@ -1,4 +1,4 @@
|
|
1
1
|
import { css } from "@emotion/react";
|
2
2
|
import { classes, tokens } from "../../TextField.tokens";
|
3
3
|
import { HintTargetWrapper, Input, InputContainer, InputWrapper, Label, LeftHelper, StyledContentRight, StyledContentRightWrapper, StyledHintWrapper, StyledOptionalText, StyledTextAfter, StyledTextBefore, TitleCaption } from "../../TextField.styles";
|
4
|
-
export var base = /*#__PURE__*/ css(Input, "{width:100%;font:inherit;letter-spacing:inherit;line-height:inherit;}", InputContainer, "{width:100%;font-family:var(", tokens.fontFamily, ");font-size:var(", tokens.fontSize, ");font-style:var(", tokens.fontStyle, ");font-weight:var(", tokens.fontWeight, ");letter-spacing:var(", tokens.letterSpacing, ");line-height:var(", tokens.lineHeight, ");}", InputWrapper, "{height:var(", tokens.height, ");border-radius:var(", tokens.borderRadius, ");padding:var(", tokens.padding, ");&.", classes.hasChips, "{padding-top:var(", tokens.paddingWithChips, ");padding-bottom:var(", tokens.paddingWithChips, ");}&.", classes.hasEmptyContentLeft, "{padding-left:var(", tokens.paddingWithChips, ");}&.", classes.hasEmptyContentRight, "{padding-right:var(", tokens.paddingWithChips, ");}}", Label, ",&:not(.", classes.innerLabelPlacement, ") ", StyledOptionalText, "{font-family:var(", tokens.labelFontFamily, ");font-size:var(", tokens.labelFontSize, ");font-style:var(", tokens.labelFontStyle, ");font-weight:var(", tokens.labelFontWeight, ");letter-spacing:var(", tokens.labelLetterSpacing, ");line-height:var(", tokens.labelLineHeight, ");}", StyledHintWrapper, "{margin:var(", tokens.hintMargin, ");width:var(", tokens.hintTargetSize, ");height:var(", tokens.hintTargetSize, ");}", HintTargetWrapper, "{width:var(", tokens.hintTargetSize, ");height:var(", tokens.hintTargetSize, ");}", TitleCaption, "{font-family:var(", tokens.titleCaptionFontFamily, ");font-size:var(", tokens.titleCaptionFontSize, ");font-style:var(", tokens.titleCaptionFontStyle, ");font-weight:var(", tokens.titleCaptionFontWeight, ");letter-spacing:var(", tokens.titleCaptionLetterSpacing, ");line-height:var(", tokens.titleCaptionLineHeight, ");}", LeftHelper, "{margin-top:var(", tokens.leftHelperOffset, ");font-family:var(", tokens.leftHelperFontFamily, ");font-size:var(", tokens.leftHelperFontSize, ");font-style:var(", tokens.leftHelperFontStyle, ");font-weight:var(", tokens.leftHelperFontWeight, ");letter-spacing:var(", tokens.leftHelperLetterSpacing, ");line-height:var(", tokens.leftHelperLineHeight, ");}", StyledTextBefore, ",", StyledTextAfter, "{font-family:var(", tokens.fontFamily, ");font-size:var(", tokens.fontSize, ");font-style:var(", tokens.fontStyle, ");font-weight:var(", tokens.fontWeight, ");letter-spacing:var(", tokens.letterSpacing, ");line-height:var(", tokens.lineHeight, ");}", StyledTextBefore, "{margin:var(", tokens.textBeforeMargin, ");}", StyledTextAfter, "{margin:var(", tokens.textAfterMargin, ");}", StyledContentRightWrapper, ".", classes.contentRightCompensationMargin, "{gap:var(", tokens.contentRightWrapperGap, ");margin:var(", tokens.contentRightWrapperMargin, ");", StyledContentRight, "{margin:var(", tokens.rightContentWithHintMargin, ");}}", "base", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
4
|
+
export var base = /*#__PURE__*/ css(tokens.tourBorderRadius, ":var(", tokens.borderRadius, ");", Input, "{width:100%;font:inherit;letter-spacing:inherit;line-height:inherit;}", InputContainer, "{width:100%;font-family:var(", tokens.fontFamily, ");font-size:var(", tokens.fontSize, ");font-style:var(", tokens.fontStyle, ");font-weight:var(", tokens.fontWeight, ");letter-spacing:var(", tokens.letterSpacing, ");line-height:var(", tokens.lineHeight, ");}", InputWrapper, "{height:var(", tokens.height, ");border-radius:var(", tokens.borderRadius, ");padding:var(", tokens.padding, ");&.", classes.hasChips, "{padding-top:var(", tokens.paddingWithChips, ");padding-bottom:var(", tokens.paddingWithChips, ");}&.", classes.hasEmptyContentLeft, "{padding-left:var(", tokens.paddingWithChips, ");}&.", classes.hasEmptyContentRight, "{padding-right:var(", tokens.paddingWithChips, ");}}", Label, ",&:not(.", classes.innerLabelPlacement, ") ", StyledOptionalText, "{font-family:var(", tokens.labelFontFamily, ");font-size:var(", tokens.labelFontSize, ");font-style:var(", tokens.labelFontStyle, ");font-weight:var(", tokens.labelFontWeight, ");letter-spacing:var(", tokens.labelLetterSpacing, ");line-height:var(", tokens.labelLineHeight, ");}", StyledHintWrapper, "{margin:var(", tokens.hintMargin, ");width:var(", tokens.hintTargetSize, ");height:var(", tokens.hintTargetSize, ");}", HintTargetWrapper, "{width:var(", tokens.hintTargetSize, ");height:var(", tokens.hintTargetSize, ");}", TitleCaption, "{font-family:var(", tokens.titleCaptionFontFamily, ");font-size:var(", tokens.titleCaptionFontSize, ");font-style:var(", tokens.titleCaptionFontStyle, ");font-weight:var(", tokens.titleCaptionFontWeight, ");letter-spacing:var(", tokens.titleCaptionLetterSpacing, ");line-height:var(", tokens.titleCaptionLineHeight, ");}", LeftHelper, "{margin-top:var(", tokens.leftHelperOffset, ");font-family:var(", tokens.leftHelperFontFamily, ");font-size:var(", tokens.leftHelperFontSize, ");font-style:var(", tokens.leftHelperFontStyle, ");font-weight:var(", tokens.leftHelperFontWeight, ");letter-spacing:var(", tokens.leftHelperLetterSpacing, ");line-height:var(", tokens.leftHelperLineHeight, ");}", StyledTextBefore, ",", StyledTextAfter, "{font-family:var(", tokens.fontFamily, ");font-size:var(", tokens.fontSize, ");font-style:var(", tokens.fontStyle, ");font-weight:var(", tokens.fontWeight, ");letter-spacing:var(", tokens.letterSpacing, ");line-height:var(", tokens.lineHeight, ");}", StyledTextBefore, "{margin:var(", tokens.textBeforeMargin, ");}", StyledTextAfter, "{margin:var(", tokens.textAfterMargin, ");}", StyledContentRightWrapper, ".", classes.contentRightCompensationMargin, "{gap:var(", tokens.contentRightWrapperGap, ");margin:var(", tokens.contentRightWrapperMargin, ");", StyledContentRight, "{margin:var(", tokens.rightContentWithHintMargin, ");}}", "base", "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3JjLWVtb3Rpb24vY29tcG9uZW50cy9UZXh0RmllbGQvdmFyaWF0aW9ucy9fc2l6ZS9iYXNlLnRzIiwic291cmNlcyI6WyJzcmMtZW1vdGlvbi9jb21wb25lbnRzL1RleHRGaWVsZC92YXJpYXRpb25zL19zaXplL2Jhc2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuXG5pbXBvcnQgeyBjbGFzc2VzLCB0b2tlbnMgfSBmcm9tICcuLi8uLi9UZXh0RmllbGQudG9rZW5zJztcbmltcG9ydCB7XG4gICAgSGludFRhcmdldFdyYXBwZXIsXG4gICAgSW5wdXQsXG4gICAgSW5wdXRDb250YWluZXIsXG4gICAgSW5wdXRXcmFwcGVyLFxuICAgIExhYmVsLFxuICAgIExlZnRIZWxwZXIsXG4gICAgU3R5bGVkQ29udGVudFJpZ2h0LFxuICAgIFN0eWxlZENvbnRlbnRSaWdodFdyYXBwZXIsXG4gICAgU3R5bGVkSGludFdyYXBwZXIsXG4gICAgU3R5bGVkT3B0aW9uYWxUZXh0LFxuICAgIFN0eWxlZFRleHRBZnRlcixcbiAgICBTdHlsZWRUZXh0QmVmb3JlLFxuICAgIFRpdGxlQ2FwdGlvbixcbn0gZnJvbSAnLi4vLi4vVGV4dEZpZWxkLnN0eWxlcyc7XG5cbmV4cG9ydCBjb25zdCBiYXNlID0gY3NzYFxuICAgICR7dG9rZW5zLnRvdXJCb3JkZXJSYWRpdXN9OiB2YXIoJHt0b2tlbnMuYm9yZGVyUmFkaXVzfSk7XG5cbiAgICAke0lucHV0fSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmb250OiBpbmhlcml0O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgJHtJbnB1dENvbnRhaW5lcn0ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigke3Rva2Vucy5mb250RmFtaWx5fSk7XG4gICAgICAgIGZvbnQtc2l6ZTogdmFyKCR7dG9rZW5zLmZvbnRTaXplfSk7XG4gICAgICAgIGZvbnQtc3R5bGU6IHZhcigke3Rva2Vucy5mb250U3R5bGV9KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigke3Rva2Vucy5mb250V2VpZ2h0fSk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiB2YXIoJHt0b2tlbnMubGV0dGVyU3BhY2luZ30pO1xuICAgICAgICBsaW5lLWhlaWdodDogdmFyKCR7dG9rZW5zLmxpbmVIZWlnaHR9KTtcbiAgICB9XG5cbiAgICAke0lucHV0V3JhcHBlcn0ge1xuICAgICAgICBoZWlnaHQ6IHZhcigke3Rva2Vucy5oZWlnaHR9KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKCR7dG9rZW5zLmJvcmRlclJhZGl1c30pO1xuICAgICAgICBwYWRkaW5nOiB2YXIoJHt0b2tlbnMucGFkZGluZ30pO1xuXG4gICAgICAgICYuJHtjbGFzc2VzLmhhc0NoaXBzfSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogdmFyKCR7dG9rZW5zLnBhZGRpbmdXaXRoQ2hpcHN9KTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoJHt0b2tlbnMucGFkZGluZ1dpdGhDaGlwc30pO1xuICAgICAgICB9XG5cbiAgICAgICAgJi4ke2NsYXNzZXMuaGFzRW1wdHlDb250ZW50TGVmdH0ge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoJHt0b2tlbnMucGFkZGluZ1dpdGhDaGlwc30pO1xuICAgICAgICB9XG5cbiAgICAgICAgJi4ke2NsYXNzZXMuaGFzRW1wdHlDb250ZW50UmlnaHR9IHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigke3Rva2Vucy5wYWRkaW5nV2l0aENoaXBzfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAke0xhYmVsfSwgJjpub3QoLiR7Y2xhc3Nlcy5pbm5lckxhYmVsUGxhY2VtZW50fSkgJHtTdHlsZWRPcHRpb25hbFRleHR9IHtcbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigke3Rva2Vucy5sYWJlbEZvbnRGYW1pbHl9KTtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoJHt0b2tlbnMubGFiZWxGb250U2l6ZX0pO1xuICAgICAgICBmb250LXN0eWxlOiB2YXIoJHt0b2tlbnMubGFiZWxGb250U3R5bGV9KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigke3Rva2Vucy5sYWJlbEZvbnRXZWlnaHR9KTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHZhcigke3Rva2Vucy5sYWJlbExldHRlclNwYWNpbmd9KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigke3Rva2Vucy5sYWJlbExpbmVIZWlnaHR9KTtcbiAgICB9XG5cbiAgICAke1N0eWxlZEhpbnRXcmFwcGVyfSB7XG4gICAgICAgIG1hcmdpbjogdmFyKCR7dG9rZW5zLmhpbnRNYXJnaW59KTtcbiAgICAgICAgd2lkdGg6IHZhcigke3Rva2Vucy5oaW50VGFyZ2V0U2l6ZX0pO1xuICAgICAgICBoZWlnaHQ6IHZhcigke3Rva2Vucy5oaW50VGFyZ2V0U2l6ZX0pO1xuICAgIH1cblxuICAgICR7SGludFRhcmdldFdyYXBwZXJ9IHtcbiAgICAgICAgd2lkdGg6IHZhcigke3Rva2Vucy5oaW50VGFyZ2V0U2l6ZX0pO1xuICAgICAgICBoZWlnaHQ6IHZhcigke3Rva2Vucy5oaW50VGFyZ2V0U2l6ZX0pO1xuICAgIH1cblxuICAgICR7VGl0bGVDYXB0aW9ufSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoJHt0b2tlbnMudGl0bGVDYXB0aW9uRm9udEZhbWlseX0pO1xuICAgICAgICBmb250LXNpemU6IHZhcigke3Rva2Vucy50aXRsZUNhcHRpb25Gb250U2l6ZX0pO1xuICAgICAgICBmb250LXN0eWxlOiB2YXIoJHt0b2tlbnMudGl0bGVDYXB0aW9uRm9udFN0eWxlfSk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoJHt0b2tlbnMudGl0bGVDYXB0aW9uRm9udFdlaWdodH0pO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogdmFyKCR7dG9rZW5zLnRpdGxlQ2FwdGlvbkxldHRlclNwYWNpbmd9KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigke3Rva2Vucy50aXRsZUNhcHRpb25MaW5lSGVpZ2h0fSk7XG4gICAgfVxuXG4gICAgJHtMZWZ0SGVscGVyfSB7XG4gICAgICAgIG1hcmdpbi10b3A6IHZhcigke3Rva2Vucy5sZWZ0SGVscGVyT2Zmc2V0fSk7XG5cbiAgICAgICAgZm9udC1mYW1pbHk6IHZhcigke3Rva2Vucy5sZWZ0SGVscGVyRm9udEZhbWlseX0pO1xuICAgICAgICBmb250LXNpemU6IHZhcigke3Rva2Vucy5sZWZ0SGVscGVyRm9udFNpemV9KTtcbiAgICAgICAgZm9udC1zdHlsZTogdmFyKCR7dG9rZW5zLmxlZnRIZWxwZXJGb250U3R5bGV9KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigke3Rva2Vucy5sZWZ0SGVscGVyRm9udFdlaWdodH0pO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogdmFyKCR7dG9rZW5zLmxlZnRIZWxwZXJMZXR0ZXJTcGFjaW5nfSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoJHt0b2tlbnMubGVmdEhlbHBlckxpbmVIZWlnaHR9KTtcbiAgICB9XG5cbiAgICAke1N0eWxlZFRleHRCZWZvcmV9LCAke1N0eWxlZFRleHRBZnRlcn0ge1xuICAgICAgICBmb250LWZhbWlseTogdmFyKCR7dG9rZW5zLmZvbnRGYW1pbHl9KTtcbiAgICAgICAgZm9udC1zaXplOiB2YXIoJHt0b2tlbnMuZm9udFNpemV9KTtcbiAgICAgICAgZm9udC1zdHlsZTogdmFyKCR7dG9rZW5zLmZvbnRTdHlsZX0pO1xuICAgICAgICBmb250LXdlaWdodDogdmFyKCR7dG9rZW5zLmZvbnRXZWlnaHR9KTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHZhcigke3Rva2Vucy5sZXR0ZXJTcGFjaW5nfSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiB2YXIoJHt0b2tlbnMubGluZUhlaWdodH0pO1xuICAgIH1cblxuICAgICR7U3R5bGVkVGV4dEJlZm9yZX0ge1xuICAgICAgICBtYXJnaW46IHZhcigke3Rva2Vucy50ZXh0QmVmb3JlTWFyZ2lufSk7XG4gICAgfVxuXG4gICAgJHtTdHlsZWRUZXh0QWZ0ZXJ9IHtcbiAgICAgICAgbWFyZ2luOiB2YXIoJHt0b2tlbnMudGV4dEFmdGVyTWFyZ2lufSk7XG4gICAgfVxuXG4gICAgJHtTdHlsZWRDb250ZW50UmlnaHRXcmFwcGVyfS4ke2NsYXNzZXMuY29udGVudFJpZ2h0Q29tcGVuc2F0aW9uTWFyZ2lufSB7XG4gICAgICAgIGdhcDogdmFyKCR7dG9rZW5zLmNvbnRlbnRSaWdodFdyYXBwZXJHYXB9KTtcbiAgICAgICAgbWFyZ2luOiB2YXIoJHt0b2tlbnMuY29udGVudFJpZ2h0V3JhcHBlck1hcmdpbn0pO1xuXG4gICAgICAgICR7U3R5bGVkQ29udGVudFJpZ2h0fSB7XG4gICAgICAgICAgICBtYXJnaW46IHZhcigke3Rva2Vucy5yaWdodENvbnRlbnRXaXRoSGludE1hcmdpbn0pO1xuICAgICAgICB9XG4gICAgfVxuYDtcbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtQm9CIn0= */");
|