ids-enterprise-wc 1.15.9-patch.12 → 1.15.9-patch.13

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.
Files changed (39) hide show
  1. package/chunks/{ids-chunk-EGZI5ZV3-full.js → ids-chunk-6YJ4HIUC-full.js} +16 -1
  2. package/chunks/{ids-chunk-EGZI5ZV3-full.js.map → ids-chunk-6YJ4HIUC-full.js.map} +2 -2
  3. package/chunks/{ids-chunk-MZTBZCHG-full.js → ids-chunk-CVY6XSRY-full.js} +17 -4
  4. package/chunks/ids-chunk-CVY6XSRY-full.js.map +7 -0
  5. package/chunks/{ids-chunk-A5IOTIO6-full.js → ids-chunk-DSWFDICX-full.js} +62 -14
  6. package/chunks/{ids-chunk-A5IOTIO6-full.js.map → ids-chunk-DSWFDICX-full.js.map} +2 -2
  7. package/chunks/{ids-chunk-FV5W3K6S-full.js → ids-chunk-O32SEXUF-full.js} +2 -2
  8. package/chunks/{ids-chunk-5GV6Y3WM-full.js → ids-chunk-OP5EXDDT-full.js} +2 -2
  9. package/components/ids-accordion/ids-accordion.css +93 -9
  10. package/components/ids-app-menu/ids-app-menu.css +23 -132
  11. package/components/ids-button/ids-button.css +392 -43
  12. package/components/ids-calendar/ids-calendar.css +190 -265
  13. package/components/ids-checkbox/ids-checkbox.css +7 -580
  14. package/components/ids-data-grid/ids-data-grid-cell.js +1 -1
  15. package/components/ids-data-grid/ids-data-grid-editors.js +1 -1
  16. package/components/ids-data-grid/ids-data-grid-filters.js +2 -2
  17. package/components/ids-data-grid/ids-data-grid-row.js +2 -2
  18. package/components/ids-data-grid/ids-data-grid.js +5 -5
  19. package/components/ids-hierarchy/ids-hierarchy.css +117 -14
  20. package/components/ids-layout-grid/ids-layout-grid.css +10 -21300
  21. package/components/ids-list-box/ids-list-box.css +66 -98
  22. package/components/ids-list-view/ids-list-view.css +15 -112
  23. package/components/ids-menu/ids-menu.css +335 -11
  24. package/components/ids-modal/ids-modal.css +23 -94
  25. package/components/ids-pager/ids-pager.css +3 -37
  26. package/components/ids-swappable/ids-swappable.css +84 -19
  27. package/components/ids-tabs/ids-tabs.css +264 -470
  28. package/components/ids-tag/ids-tag.css +152 -8
  29. package/components/ids-time-picker/ids-time-picker.css +49 -67
  30. package/components/ids-toolbar/ids-toolbar.css +122 -12
  31. package/custom-elements.json +2769 -2749
  32. package/enterprise-wc.all.iife.js +88 -12
  33. package/enterprise-wc.all.iife.js.map +2 -2
  34. package/enterprise-wc.js +5 -5
  35. package/package.json +1 -1
  36. package/vscode.html-custom-data.json +1 -1
  37. package/chunks/ids-chunk-MZTBZCHG-full.js.map +0 -7
  38. /package/chunks/{ids-chunk-FV5W3K6S-full.js.map → ids-chunk-O32SEXUF-full.js.map} +0 -0
  39. /package/chunks/{ids-chunk-5GV6Y3WM-full.js.map → ids-chunk-OP5EXDDT-full.js.map} +0 -0
@@ -1,553 +1,347 @@
1
- :host(:not([hidden])):not([color-variant=module]) {
1
+ /* Ids Sub Tab Component */
2
+ /**
3
+ * Base Styles/Mixins for Ids Sub Tabs Component and all subcomponents.
4
+ */
5
+ /**
6
+ * Single Checkmark Mixin
7
+ */
8
+ /**
9
+ * Checkbox Mixins.
10
+ */
11
+ @keyframes check {
12
+ 0% {
13
+ height: 0;
14
+ left: 0;
15
+ top: 8px;
16
+ width: 0;
17
+ }
18
+ 50% {
19
+ height: 0;
20
+ left: 0;
21
+ top: 8px;
22
+ width: 4px;
23
+ }
24
+ 100% {
25
+ height: 10px;
26
+ left: 4px;
27
+ top: 0;
28
+ width: 4px;
29
+ }
30
+ }
31
+ @keyframes checkindeterminate {
32
+ 0% {
33
+ width: 0;
34
+ }
35
+ 100% {
36
+ width: 10px;
37
+ }
38
+ }
39
+ /**
40
+ * NOTE ABOUT MENU ITEM ELEMENT ORDER:
41
+ * Definitions for grid template size in IdsMenuItem are defined based on the below order.
42
+ * If changes are made to IdsMenuItem's rendering, this order must remain in place.
43
+ *
44
+ * [checkmark?] - [icon?] - text - [shortcut text?] - [submenu icon?]
45
+ **/
46
+ :root {
2
47
  display: block;
48
+ position: static;
3
49
  }
4
-
5
- :host(ids-tab:not([orientation=vertical]):not([color-variant=module]):first-child),
6
- :host(ids-tab-more:not([orientation=vertical]):not([color-variant=module]):first-child),
7
- .ids-tabs-container:not(.orientation-vertical):not(.color-variant-module) [class*=ids-tab]:first-child {
8
- margin-inline-start: var(--ids-space-3xs);
50
+ :host ::slotted(ids-menu) {
51
+ display: none;
9
52
  }
10
53
 
11
- :host(ids-tab:not([orientation=vertical]):not([color-variant=module]):last-child),
12
- :host(ids-tab-more:not([orientation=vertical]):not([color-variant=module]):last-child),
13
- .ids-tabs-container:not(.orientation-vertical):not(.color-variant-module) [class*=ids-tab]:last-child {
14
- margin-inline-end: var(--ids-space-3xs);
54
+ :host(.ids-tab-more-menu-item) div a .ids-sub-tab-text {
55
+ text-overflow: unset;
56
+ overflow: visible;
15
57
  }
16
58
 
17
- :host(ids-tab:not([orientation=vertical]):not([color-variant=module]):not([color-variant=header]):not(:last-child)),
18
- :host(ids-tab-more:not([orientation=vertical]):not([color-variant=module]):not(:last-child)),
19
- .ids-tabs-container:not(.orientation-vertical):not(.color-variant-module) [class*=ids-tab]:not(:last-child) {
20
- margin-inline-end: var(--ids-space-3xs);
59
+ ::slotted(ids-text) {
60
+ pointer-events: none;
21
61
  }
22
62
 
23
- :host(ids-tab:focus-visible),
24
- :host(ids-tab-more:focus-visible),
25
- .ids-tab-container [class*=ids-tab]:focus-visible {
26
- outline: none;
63
+ ::slotted(ids-icon[icon=close]) {
64
+ inset-block-start: 1px;
27
65
  }
28
66
 
29
- :host(ids-tab:not([has-error])) slot[name=error] {
30
- display: none;
67
+ ::slotted(ids-popup-menu) {
68
+ position: static;
31
69
  }
32
70
 
33
- :host(ids-tab[value=app-menu]) {
34
- position: sticky;
35
- left: 0;
36
- z-index: 1;
71
+ :host([hidden]) {
72
+ display: none;
37
73
  }
38
74
 
39
- .ids-tab {
40
- display: flex;
41
- position: relative;
75
+ .ids-sub-tab {
42
76
  align-items: center;
43
- color: var(--ids-tab-color-text-default);
44
- box-sizing: border-box;
45
- height: 100%;
46
- padding-inline: var(--ids-space-2xs);
47
- padding-block: var(--ids-space-xs);
48
- list-style: none outside none;
49
- user-select: none;
50
- cursor: pointer;
51
- }
52
- .ids-tab:hover:not(.more):not(.selected) {
53
- color: var(--ids-tab-color-text-hover);
54
- background-color: var(--ids-tab-color-background-hover);
55
- }
56
- .ids-tab:hover:not(.more):not(.selected)::after, .ids-tab:hover:not(.more):not(.selected) .selection-underline {
57
- background-color: var(--ids-tab-color-text-hover);
58
- }
59
- .ids-tab:hover.more, .ids-tab.is-open.more {
60
- background-color: var(--ids-button-tertiary-color-background-hover);
61
- }
62
- .ids-tab.disabled {
63
- cursor: default;
64
- color: var(--ids-tab-color-text-disabled);
65
- pointer-events: none;
66
- }
67
- .ids-tab.selected {
68
- color: var(--ids-tab-color-text-selected);
69
- cursor: default;
70
- }
71
- .ids-tab.selected.ids-text {
72
- font-weight: 700;
73
- }
74
- .ids-tab.selected::after, .ids-tab.selected .selection-underline {
75
- background-color: var(--ids-tab-color-text-selected);
76
- }
77
- .ids-tab.selected ids-menu-button::part(button) {
78
- color: var(--ids-tab-color-text-selected);
79
- }
80
- .ids-tab.selected ids-menu-button::part(button) .is-focused {
81
- border: 1px solid transparent;
82
- }
83
- .ids-tab.selected ids-menu-button::part(button):focus, .ids-tab.selected ids-menu-button::part(button):focus-within, .ids-tab.selected ids-menu-button::part(button):focus-visible, .ids-tab.selected ids-menu-button::part(button):active, .ids-tab.selected ids-menu-button::part(button):target {
84
- border: 1px solid transparent;
85
- box-shadow: unset;
86
- }
87
- .ids-tab.selected ids-menu-button::part(button):hover {
88
- background-color: transparent;
89
- border: 1px solid transparent;
90
- }
91
- .ids-tab.actionable {
92
77
  cursor: pointer;
93
- }
94
- .ids-tab.count {
95
- padding-inline: 12px;
96
- }
97
- .ids-tab.count .ids-tab-count-container {
98
- display: flex;
99
- flex-direction: column;
100
- }
101
- .ids-tab:focus-visible {
102
- outline: none;
103
- }
104
- .ids-tab .ids-tab-trigger-container {
105
- display: flex;
106
- place-content: center;
107
- }
108
- .ids-tab.orientation-horizontal:not(.count) {
109
- padding-top: var(--ids-space-xs);
110
- }
111
- .ids-tab.orientation-horizontal:not(.color-variant-module) {
112
- border-bottom: 1px solid transparent;
113
- }
114
- .ids-tab.orientation-horizontal:not(.color-variant-module):focus-visible {
115
- outline: none;
116
- }
117
- .ids-tab.orientation-horizontal:not(.color-variant-module):focus-visible:not(.hide-focus)::before {
118
- border: 1px solid;
119
- position: absolute;
120
- inset-block-start: 0px;
121
- inset-inline-start: -1px;
122
- width: calc(100% - 0px);
123
- height: calc(100% - 2px);
124
- content: "";
125
- pointer-events: none;
126
- }
127
- .ids-tab.orientation-horizontal:not(.color-variant-module):focus-visible.color-variant-module::before {
128
- border: 1px solid var(--ids-tab-module-color-focus-border);
129
- border-radius: 6px;
130
- position: absolute;
131
- inset-block-start: 0px;
132
- inset-inline-start: -1px;
133
- width: calc(100% - -1px);
134
- height: calc(100% - 0px);
135
- content: "";
136
- pointer-events: none;
137
- }
138
- .ids-tab.orientation-horizontal:not(.color-variant-module).selected, .ids-tab.orientation-horizontal:not(.color-variant-module):hover {
139
- border-bottom: 1px solid transparent;
140
- }
141
- .ids-tab.orientation-horizontal:not(.color-variant-module).selected::after, .ids-tab.orientation-horizontal:not(.color-variant-module).selected .selection-underline, .ids-tab.orientation-horizontal:not(.color-variant-module):hover::after, .ids-tab.orientation-horizontal:not(.color-variant-module):hover .selection-underline {
142
- position: absolute;
143
- height: 3px;
144
- inset-block-end: 0;
145
- inset-inline: 0;
146
- z-index: 1;
147
- pointer-events: none;
148
- content: "";
149
- }
150
- .ids-tab.orientation-horizontal:not(.color-variant-module).disabled::after, .ids-tab.orientation-horizontal:not(.color-variant-module).disabled .selection-underline {
151
- display: none;
152
- }
153
- .ids-tab.orientation-horizontal ids-menu-button::part(button):hover {
154
- background-color: transparent;
155
- border: 1px solid transparent;
156
- }
157
- .ids-tab.has-sub-tabs {
158
- height: 100%;
159
- }
160
- .ids-tab.has-sub-tabs ids-menu-button::part(button):hover {
161
- background-color: unset;
162
- }
163
- .ids-tab ids-text::part(text),
164
- .ids-tab .ids-tab.ids-text {
165
- display: inline-flex;
166
- flex-direction: column;
167
- align-items: center;
168
- justify-content: space-between;
169
- }
170
- .ids-tab:not(.orientation-vertical) ids-text::part(text)::after,
171
- .ids-tab:not(.orientation-vertical) .ids-tab.ids-text::after {
172
- content: attr(data-text);
173
- content: attr(data-text)/"";
174
- font-weight: 700;
175
- visibility: hidden;
176
- height: 0;
78
+ font-family: var(--ids-font-family-default), var(--ids-font-family-system-sans);
79
+ list-style: none;
80
+ position: static;
81
+ transition: background-color 50ms cubic-bezier(0.4, 0, 0.6, 1);
177
82
  user-select: none;
178
- pointer-events: none;
179
83
  }
180
- @media speech {
181
- .ids-tab:not(.orientation-vertical) ids-text::part(text)::after,
182
- .ids-tab:not(.orientation-vertical) .ids-tab.ids-text::after {
183
- display: none;
184
- }
185
- }
186
- .ids-tab.swappable {
187
- padding-inline-start: var(--ids-space-xs);
188
- padding-inline-end: 6px;
189
- }
190
-
191
- .ids-tab.orientation-vertical {
192
- padding-inline: var(--ids-space-md);
84
+ .ids-sub-tab.dismissible {
193
85
  display: flex;
194
- align-items: center;
195
- flex-direction: row;
196
- justify-content: flex-start;
197
- width: 100%;
198
- height: 42px;
199
- background-color: var(--ids-tab-vertical-color-background-default);
200
- color: var(--ids-tab-vertical-color-text-default);
201
- }
202
- .ids-tab.orientation-vertical ids-icon {
203
- margin-inline-end: 8px;
204
- }
205
- .ids-tab.orientation-vertical ids-text[overflow=ellipsis] {
206
- margin-inline-end: 8px;
207
86
  }
208
- .ids-tab.orientation-vertical.count {
209
- padding-inline: 12px;
87
+ .ids-sub-tab.dismissible a {
88
+ width: calc(100% - 32px);
210
89
  }
211
- .ids-tab.orientation-vertical.count .ids-tab-count-container {
90
+ .ids-sub-tab ids-icon,
91
+ .ids-sub-tab .ids-icon,
92
+ .ids-sub-tab .ids-sub-tab-display-icon {
93
+ display: block;
94
+ align-self: center;
95
+ justify-content: center;
96
+ place-self: inherit;
97
+ }
98
+ .ids-sub-tab a {
99
+ padding-inline-start: 12px;
100
+ padding-inline-end: var(--ids-space-xs);
101
+ padding-block: var(--ids-menu-item-padding);
102
+ display: grid;
103
+ font-size: var(--ids-menu-item-font-size);
104
+ grid-template-columns: 0 auto;
105
+ max-width: 100%;
106
+ overflow: hidden;
107
+ text-overflow: ellipsis;
108
+ user-select: inherit;
109
+ white-space: nowrap;
110
+ }
111
+ .ids-sub-tab a:focus {
112
+ outline: 0;
113
+ }
114
+ .ids-sub-tab a > * {
115
+ vertical-align: middle;
116
+ }
117
+ .ids-sub-tab a .ids-sub-tab-icon {
212
118
  display: flex;
213
- flex-direction: row;
214
119
  align-items: center;
120
+ justify-content: center;
215
121
  }
216
- .ids-tab.orientation-vertical:hover {
217
- background-color: var(--ids-tab-vertical-color-background-hover);
218
- color: var(--ids-tab-vertical-color-text-hover);
122
+ .ids-sub-tab a ids-icon,
123
+ .ids-sub-tab a .ids-icon,
124
+ .ids-sub-tab a .ids-sub-tab-display-icon {
125
+ grid-column-start: 1;
219
126
  }
220
- .ids-tab.orientation-vertical.disabled {
221
- background-color: var(--ids-tab-vertical-color-background-disabled);
222
- color: var(--ids-tab-vertical-color-text-disabled);
127
+ .ids-sub-tab a .ids-sub-tab-text {
128
+ grid-column-start: 2;
223
129
  }
224
- .ids-tab.orientation-vertical:focus-visible {
225
- outline: none;
130
+ .ids-sub-tab a .ids-sub-tab-text span,
131
+ .ids-sub-tab a .ids-sub-tab-text .ids-text {
132
+ display: inline-block;
226
133
  }
227
- .ids-tab.orientation-vertical:focus-visible:not(.hide-focus)::before {
228
- border: 1px solid;
229
- position: absolute;
230
- inset-block-start: 1px;
231
- inset-inline-start: 1px;
232
- width: calc(100% - 4px);
233
- height: calc(100% - 4px);
234
- content: "";
235
- pointer-events: none;
134
+ .ids-sub-tab a .ids-sub-tab-text ::slotted(ids-text) {
135
+ display: inline-block;
236
136
  }
237
- .ids-tab.orientation-vertical:focus-visible.color-variant-module::before {
238
- border: 1px solid var(--ids-tab-module-color-focus-border);
239
- border-radius: 6px;
240
- position: absolute;
241
- inset-block-start: 1px;
242
- inset-inline-start: 1px;
243
- width: calc(100% - 3px);
244
- height: calc(100% - 2px);
245
- content: "";
246
- pointer-events: none;
137
+ .ids-sub-tab a .ids-sub-tab-submenu-icon {
138
+ margin-inline-start: 12px;
139
+ grid-column-start: 3;
140
+ transform: rotateZ(-90deg);
247
141
  }
248
- .ids-tab.orientation-vertical.selected {
249
- border-style: none;
250
- background-color: var(--ids-tab-vertical-color-background-selected);
251
- color: var(--ids-tab-vertical-color-text-selected);
142
+ .ids-sub-tab .ids-sub-tab-text {
143
+ white-space: nowrap;
144
+ display: block;
145
+ text-overflow: ellipsis;
146
+ overflow: hidden;
252
147
  }
253
- .ids-tab.orientation-vertical.selected:focus-visible:not(.hide-focus)::after, .ids-tab.orientation-vertical.selected:focus-visible:not(.hide-focus) .selection-underline {
254
- background-color: var(--ids-tab-vertical-color-border-selected);
148
+ .ids-sub-tab:not(.text-center) .ids-sub-tab-text, .ids-sub-tab:not(.text-start) .ids-sub-tab-text, .ids-sub-tab:not(.text-end) .ids-sub-tab-text {
149
+ text-align: start;
255
150
  }
256
-
257
- :host(ids-tab[color-variant=module]:not(:last-child):not([value=add]):not([value=reset])) {
258
- background-color: var(--ids-tab-module-color-body-background);
151
+ .ids-sub-tab.text-center a, .ids-sub-tab.text-start a, .ids-sub-tab.text-end a {
259
152
  display: flex;
260
153
  align-items: center;
261
- justify-content: center;
262
- border-inline-end: 4px solid transparent;
263
154
  }
264
-
265
- :host(ids-tab[color-variant=module][value=add]),
266
- :host(ids-tab[color-variant=module][value=reset]) {
267
- border-inline-end: 1px solid var(--ids-tab-module-color-border-right);
155
+ .ids-sub-tab.text-center a .ids-sub-tab-text, .ids-sub-tab.text-start a .ids-sub-tab-text, .ids-sub-tab.text-end a .ids-sub-tab-text {
156
+ margin-inline-start: var(--ids-space-xs);
268
157
  }
269
-
270
- :host(ids-tab[color-variant=module][selected]) {
271
- align-items: flex-end;
272
- background: linear-gradient(to bottom, var(--ids-tab-module-color-body-background) 0%, var(--ids-tab-module-color-body-background) 85%, var(--ids-tab-module-color-background-selected) 15%, var(--ids-tab-module-color-background-selected) 100%);
273
- }
274
-
275
- :host(ids-tab[color-variant=module]),
276
- .ids-tabs-container.color-variant-module .ids-tabs-list-more {
277
- height: 43px;
278
- }
279
-
280
- .ids-tab.color-variant-module:not(.add):not(.reset):not(.more) {
281
- min-width: 169px;
282
- height: 36px;
283
- flex: 1;
284
- border-radius: 6px;
285
- padding-inline: 10px;
286
- }
287
- .ids-tab.color-variant-module:not(.add):not(.reset):not(.more).selected {
288
- border-radius: 6px 6px 0 0;
289
- background-color: var(--ids-tab-module-color-background-selected);
290
- height: 34.5px;
291
- }
292
- .ids-tab.color-variant-module:not(.add):not(.reset):not(.more).selected::before {
293
- content: " ";
294
- border: 0;
295
- position: absolute;
296
- right: -4px;
297
- bottom: -4.5px;
298
- width: 4px;
299
- height: 7px;
300
- border-radius: 0 0 0 6px;
301
- background: var(--ids-tab-module-color-body-background);
302
- box-shadow: 0 2px 0 0 var(--ids-tab-module-color-background-selected);
158
+ .ids-sub-tab.text-center a {
159
+ text-align: center;
160
+ justify-content: center;
303
161
  }
304
- .ids-tab.color-variant-module:not(.add):not(.reset):not(.more).selected::after {
305
- content: " ";
306
- border: 0;
307
- position: absolute;
308
- left: -4px;
309
- bottom: -4.5px;
310
- width: 4px;
311
- height: 7px;
312
- border-radius: 0 0 6px;
313
- background: var(--ids-tab-module-color-body-background);
314
- box-shadow: 0 2px 0 0 var(--ids-tab-module-color-background-selected);
162
+ .ids-sub-tab.text-start a {
163
+ text-align: start;
164
+ justify-content: start;
315
165
  }
316
-
317
- :host(ids-tab[color-variant=module]:not([orientation=vertical]):not([actionable])),
318
- :host(ids-tab-more[color-variant=module]:not([orientation=vertical]):not([actionable])),
319
- .ids-tab-container.color-variant-module:not(.orientation-vertical):not(.actionable) [class*=ids-tab] {
320
- flex-grow: 1;
166
+ .ids-sub-tab.text-end a {
167
+ text-align: end;
168
+ justify-content: end;
321
169
  }
322
-
323
- .ids-tab.color-variant-module {
324
- outline: none;
325
- background-color: var(--ids-tab-module-color-background-default);
326
- color: var(--ids-tab-module-color-text-default);
327
- justify-content: center;
328
- border-bottom: 1px solid var(--ids-tab-module-tab-color-border-bottom);
170
+ .ids-sub-tab.disabled {
171
+ color: var(--ids-menu-item-color-text-disabled);
172
+ cursor: default;
173
+ pointer-events: none;
174
+ user-select: none;
329
175
  }
330
- .ids-tab.color-variant-module:hover:not(.more):not(.selected) {
331
- color: var(--ids-tab-module-color-text-hover);
332
- background-color: var(--ids-tab-module-color-background-hover);
176
+ .ids-sub-tab.disabled a {
177
+ color: inherit;
333
178
  }
334
- .ids-tab.color-variant-module:hover.more {
335
- color: var(--ids-tab-module-color-text-hover);
336
- background-color: var(--ids-tab-module-color-background-hover);
179
+ .ids-sub-tab.disabled ids-icon,
180
+ .ids-sub-tab.disabled .ids-icon {
181
+ fill: var(--ids-menu-item-color-text-disabled);
337
182
  }
338
- .ids-tab.color-variant-module.selected {
339
- background-color: var(--ids-tab-module-color-background-selected);
340
- color: var(--ids-tab-module-color-text-selected);
183
+ .ids-sub-tab.hidden {
184
+ display: none;
341
185
  }
342
- .ids-tab.color-variant-module:not(.selected):focus-visible {
343
- outline: none;
186
+ .ids-sub-tab.highlighted {
187
+ background-color: var(--ids-menu-item-highlight-color);
344
188
  }
345
- .ids-tab.color-variant-module:not(.selected):focus-visible:not(.hide-focus)::before {
346
- border: 1px solid;
347
- position: absolute;
348
- inset-block-start: 1px;
349
- inset-inline-start: 1px;
350
- width: calc(100% - 4px);
351
- height: calc(100% - 4px);
352
- content: "";
353
- pointer-events: none;
189
+ .ids-sub-tab.has-shortcuts a {
190
+ grid-template-columns: 0 minmax(100px, auto) 1fr;
354
191
  }
355
- .ids-tab.color-variant-module:not(.selected):focus-visible.color-variant-module::before {
356
- border: 1px solid var(--ids-tab-module-color-focus-border);
357
- border-radius: 6px;
358
- position: absolute;
359
- inset-block-start: 1px;
360
- inset-inline-start: 1px;
361
- width: calc(100% - 3px);
362
- height: calc(100% - 2px);
363
- content: "";
364
- pointer-events: none;
192
+ .ids-sub-tab.has-icon a {
193
+ padding-inline-start: var(--ids-space-xs);
194
+ padding-inline-end: 14px;
195
+ grid-template-columns: 30px auto;
365
196
  }
366
- .ids-tab.color-variant-module.disabled {
367
- background-color: var(--ids-tab-module-color-background-disabled);
368
- color: var(--ids-tab-module-color-text-disabled);
197
+ .ids-sub-tab.has-shortcuts.has-icon a {
198
+ grid-template-columns: 30px calc(50% - 15px) calc(50% - 15px);
369
199
  }
370
- .ids-tab.color-variant-module > ids-text,
371
- .ids-tab.color-variant-module > .ids-text {
372
- padding-bottom: 3px;
373
- text-align: center;
200
+ .ids-sub-tab.has-checkmark a, .ids-sub-tab.has-multi-checkmark a {
201
+ padding-inline-start: var(--ids-space-2xs);
202
+ grid-template-columns: 30px 0 max-content 0;
374
203
  }
375
- .ids-tab.color-variant-module:not(.actionable) {
376
- min-width: var(--ids-tab-min-width);
377
- }
378
- .ids-tab.color-variant-module.more {
379
- min-width: var(--ids-tab-more-button-width);
380
- height: calc(var(--ids-tab-module-height) + 1px);
381
- }
382
- .ids-tab.color-variant-module.actionable {
383
- min-width: 44px;
384
- gap: 0;
385
- height: calc(var(--ids-tab-module-height) + 1px);
386
- }
387
- .ids-tab.color-variant-module.dismissible {
388
- justify-content: space-around;
389
- }
390
- .ids-tab.color-variant-module.dismissible > ids-text,
391
- .ids-tab.color-variant-module.dismissible > .ids-text {
392
- flex-grow: 1;
393
- }
394
- .ids-tab.color-variant-module.dismissible.selected:not(.disabled) ::slotted(ids-trigger-button),
395
- .ids-tab.color-variant-module.dismissible.selected:not(.disabled) > .ids-trigger-button,
396
- .ids-tab.color-variant-module.dismissible.selected:not(.disabled) > ids-trigger-button, .ids-tab.color-variant-module.dismissible.is-focused:not(.disabled) ::slotted(ids-trigger-button),
397
- .ids-tab.color-variant-module.dismissible.is-focused:not(.disabled) > .ids-trigger-button,
398
- .ids-tab.color-variant-module.dismissible.is-focused:not(.disabled) > ids-trigger-button {
399
- color: var(--ids-tab-module-dimissible-color);
400
- visibility: visible;
401
- }
402
- .ids-tab.color-variant-module.dismissible ::slotted(ids-trigger-button),
403
- .ids-tab.color-variant-module.dismissible > .ids-trigger-button,
404
- .ids-tab.color-variant-module.dismissible > ids-trigger-button {
405
- flex-grow: 0;
406
- flex-shrink: 1;
407
- visibility: hidden;
408
- }
409
- .ids-tab.color-variant-module.dismissible:hover ::slotted(ids-trigger-button),
410
- .ids-tab.color-variant-module.dismissible:hover > .ids-trigger-button,
411
- .ids-tab.color-variant-module.dismissible:hover > ids-trigger-button {
412
- visibility: visible;
204
+ .ids-sub-tab.has-checkmark a .check, .ids-sub-tab.has-multi-checkmark a .check {
205
+ grid-column-start: 1;
413
206
  }
414
-
415
- .ids-tab.color-variant-alternate {
416
- color: var(--ids-tab-alternate-color-text-default);
207
+ .ids-sub-tab.has-checkmark a ids-icon,
208
+ .ids-sub-tab.has-checkmark a .ids-icon,
209
+ .ids-sub-tab.has-checkmark a .ids-sub-tab-display-icon, .ids-sub-tab.has-multi-checkmark a ids-icon,
210
+ .ids-sub-tab.has-multi-checkmark a .ids-icon,
211
+ .ids-sub-tab.has-multi-checkmark a .ids-sub-tab-display-icon {
212
+ grid-column-start: 2;
417
213
  }
418
- .ids-tab.color-variant-alternate:hover {
419
- color: var(--ids-tab-alternate-color-text-hover);
214
+ .ids-sub-tab.has-checkmark a .ids-sub-tab-text, .ids-sub-tab.has-multi-checkmark a .ids-sub-tab-text {
215
+ grid-column-start: 3;
420
216
  }
421
- .ids-tab.color-variant-alternate:hover::after {
422
- background-color: var(--ids-tab-alternate-color-background-hover);
217
+ .ids-sub-tab.has-checkmark a .ids-sub-tab-submenu-icon, .ids-sub-tab.has-multi-checkmark a .ids-sub-tab-submenu-icon {
218
+ grid-column-start: 4;
423
219
  }
424
- .ids-tab.color-variant-alternate.selected {
425
- color: var(--ids-tab-alternate-color-text-selected);
220
+ .ids-sub-tab.has-checkmark .ids-sub-tab-submenu-icon, .ids-sub-tab.has-multi-checkmark .ids-sub-tab-submenu-icon {
221
+ position: relative;
222
+ inset-block-start: 3px;
223
+ inset-inline-start: 8px;
426
224
  }
427
- .ids-tab.color-variant-alternate.selected::after, .ids-tab.color-variant-alternate.selected .selection-underline {
428
- background-color: var(--ids-tab-alternate-horizontal-color-background);
225
+ .ids-sub-tab.has-shortcuts.has-checkmark a, .ids-sub-tab.has-shortcuts.has-multi-checkmark a {
226
+ grid-template-columns: 30px 0 50% calc(50% - 30px);
429
227
  }
430
- .ids-tab.color-variant-alternate.disabled {
431
- color: var(--ids-tab-alternate-color-text-disabled);
228
+ .ids-sub-tab.has-submenu a {
229
+ grid-template-columns: 0 calc(100% - 24px) 29px;
432
230
  }
433
- .ids-tab.color-variant-alternate.disabled.selected {
434
- color: var(--ids-tab-alternate-color-text-disabled);
231
+ .ids-sub-tab.has-submenu .ids-sub-tab-shortcuts {
232
+ display: none;
435
233
  }
436
- .ids-tab.color-variant-alternate.disabled.selected::after, .ids-tab.color-variant-alternate.disabled.selected .selection-underline {
437
- background-color: var(--ids-tab-alternate-color-text-disabled);
234
+ .ids-sub-tab.has-icon.has-checkmark a, .ids-sub-tab.has-icon.has-multi-checkmark a {
235
+ padding-inline-start: 0;
236
+ grid-template-columns: 30px 30px calc(100% - 60px);
237
+ width: calc(100% - 12px);
438
238
  }
439
- .ids-tab.color-variant-alternate:not(.hide-focus):focus-visible, .ids-tab.color-variant-alternate:not(.hide-focus):focus, .ids-tab.color-variant-alternate:not(.hide-focus):focus-within {
440
- border-color: var(--ids-tab-alternate-color-border-focus);
239
+ .ids-sub-tab.has-icon.has-checkmark.align-icon-end a, .ids-sub-tab.has-icon.has-multi-checkmark.align-icon-end a {
240
+ grid-template-columns: 30px calc(100% - 55px) 25px;
441
241
  }
442
-
443
- .ids-tab.color-variant-header {
444
- color: var(--ids-tab-header-color-text-default);
242
+ .ids-sub-tab.has-icon.has-checkmark.align-icon-end a .ids-sub-tab-text, .ids-sub-tab.has-icon.has-multi-checkmark.align-icon-end a .ids-sub-tab-text {
243
+ grid-column-start: 2;
445
244
  }
446
- .ids-tab.color-variant-header:hover {
447
- background-color: var(--ids-tab-header-color-background-hover);
448
- color: var(--ids-tab-header-color-text-hover);
245
+ .ids-sub-tab.has-icon.has-checkmark.align-icon-end a .ids-sub-tab-icon, .ids-sub-tab.has-icon.has-multi-checkmark.align-icon-end a .ids-sub-tab-icon {
246
+ grid-column-start: 3;
449
247
  }
450
- .ids-tab.color-variant-header.selected {
451
- color: var(--ids-tab-header-color-text-selected);
248
+ .ids-sub-tab.has-shortcuts.has-icon.has-checkmark a, .ids-sub-tab.has-shortcuts.has-icon.has-mutlt-checkmark a {
249
+ grid-template-columns: 24px 30px calc(50% - 24px) calc(50% - 24px);
452
250
  }
453
- .ids-tab.color-variant-header.selected::after, .ids-tab.color-variant-header.selected .selection-underline {
454
- background-color: var(--ids-tab-header-color-text-selected);
251
+ .ids-sub-tab.has-icon.has-submenu a {
252
+ grid-template-columns: 30px calc(100% - 53px) 31px;
455
253
  }
456
- .ids-tab.color-variant-header.disabled {
457
- color: var(--ids-tab-header-color-text-disabled);
254
+ .ids-sub-tab.has-checkmark.has-submenu a, .ids-sub-tab.has-multi-checkmark.has-submenu a {
255
+ grid-template-columns: 30px 0 calc(100% - 55px) 25px;
458
256
  }
459
- .ids-tab.color-variant-header:not(.hide-focus):focus-visible, .ids-tab.color-variant-header:not(.hide-focus):focus, .ids-tab.color-variant-header:not(.hide-focus):focus-within {
460
- border-color: var(--ids-tab-header-color-border-focus);
257
+ .ids-sub-tab.has-icon.has-checkmark.has-submenu a, .ids-sub-tab.has-icon.has-multi-checkmark.has-submenu a {
258
+ grid-template-columns: 30px 30px calc(100% - 85px) 25px;
461
259
  }
462
- .ids-tab.color-variant-header.actionable {
463
- border-bottom: 0;
464
- padding-inline: 7px;
465
- padding-block-start: 7px;
466
- width: var(--ids-tab-header-button-width);
260
+ .ids-sub-tab:not(.inherit-color):not(.disabled) {
261
+ color: var(--ids-menu-item-color-text-default);
467
262
  }
468
- .ids-tab.color-variant-header.actionable:first-child {
469
- border-inline-start: 1px solid var(--ids-tab-divider-color-border);
263
+ .ids-sub-tab.inherit-color:not(.disabled) {
264
+ color: inherit;
470
265
  }
471
- .ids-tab.color-variant-header.actionable:hover {
472
- border-bottom: none;
473
- background-color: var(--ids-tab-header-color-background-hover);
474
- color: var(--ids-tab-header-color-text-hover);
266
+ .ids-sub-tab.inherit-color:not(.disabled) a {
267
+ color: inherit;
475
268
  }
476
- .ids-tab.color-variant-header.actionable:hover::after {
477
- background-color: var(--ids-tab-header-color-background-hover);
269
+ .ids-sub-tab.color-variant-module-nav {
270
+ color: var(--ids-module-nav-settings-menu-item-text-color);
478
271
  }
479
- .ids-tab.color-variant-header.actionable.add {
480
- border-inline-start: 1px solid var(--ids-tab-divider-color-border);
272
+ .ids-sub-tab.color-variant-module-nav a {
273
+ padding-block: 10px;
481
274
  }
482
- .ids-tab.color-variant-header.more.orientation-horizontal:not(.color-variant-module) {
483
- --ids-tab-divider-width: var(--ids-tab-header-button-width);
484
- border-inline-start: none;
275
+ .ids-sub-tab.color-variant-module-nav .ids-sub-tab-text {
276
+ color: var(--ids-module-nav-settings-menu-item-text-color);
277
+ padding-inline-start: var(--ids-module-nav-accordion-gutter-size);
485
278
  }
486
- .ids-tab.color-variant-header.more.orientation-horizontal:not(.color-variant-module) .tab-more-text > *:not(.last-child) {
487
- padding-inline-end: 2px;
279
+
280
+ .ids-sub-tab-shortcuts {
281
+ pointer-events: none;
282
+ text-align: end;
488
283
  }
489
284
 
490
- .tab-more-text {
491
- display: inline-flex;
492
- align-items: center;
493
- padding-inline-end: 3px;
285
+ .has-checkmark span.check {
286
+ position: relative;
494
287
  }
495
- .tab-more-text > *:not(.last-child) {
496
- padding-inline-end: 3px;
497
- padding-block-start: 2px;
288
+ .has-checkmark.selected span.check::after {
289
+ position: absolute;
290
+ border: 1px solid;
291
+ transform: rotate(45deg);
292
+ border-color: var(--ids-menu-check-color-default) var(--ids-menu-check-color-default) var(--ids-menu-check-color-default) transparent;
293
+ border-width: 0 2px 2px 0;
294
+ content: " ";
295
+ height: 11px;
296
+ width: 5px;
297
+ left: 11px;
298
+ margin-top: var(--ids-space-3xs);
498
299
  }
499
- .tab-more-text ids-text,
500
- .tab-more-text .ids-text {
501
- display: inline-block;
300
+ .has-checkmark.selected.disabled span.check::after {
301
+ border-color: var(--ids-menu-check-color-disabled) var(--ids-menu-check-color-disabled) var(--ids-menu-check-color-disabled) transparent;
502
302
  }
503
303
 
504
- ids-popup-menu,
505
- .ids-popup-menu {
304
+ .has-multi-checkmark span.check {
506
305
  position: absolute;
507
- width: 100%;
306
+ border: var(--ids-checkbox-border);
307
+ border-radius: var(--ids-checkbox-border-radius);
308
+ height: 14px;
309
+ width: 14px;
310
+ left: 0;
311
+ top: 3px;
312
+ align-self: center;
313
+ justify-self: center;
314
+ position: relative;
315
+ top: 0;
508
316
  }
509
-
510
- .ids-tab:not(.more) ::slotted(ids-icon) {
511
- color: currentColor;
512
- pointer-events: none;
317
+ .has-multi-checkmark.disabled span.check {
318
+ opacity: var(--ids-menu-color-disabled);
513
319
  }
514
-
515
- .ids-tab.more.orientation-horizontal:not(.color-variant-module) {
516
- border-inline-start: 1px solid var(--ids-tab-divider-color-border);
517
- border-bottom: 0 solid transparent;
518
- margin-inline-end: -3px;
519
- height: var(--ids-tab-divider-width);
520
- width: var(--ids-tab-divider-width);
521
- }
522
- .ids-tab.more.orientation-horizontal:not(.color-variant-module)::after {
523
- content: "";
524
- position: absolute;
525
- height: 44px;
526
- width: 44px;
527
- top: 50%;
528
- left: 50%;
529
- transform: translate(-50%, -50%);
530
- cursor: pointer;
531
- z-index: 2;
320
+ .has-multi-checkmark.selected span.check {
321
+ background-color: var(--ids-checkbox-color-background-selected);
322
+ border-color: var(--ids-checkbox-color-border-selected);
532
323
  }
533
-
534
- ::slotted(ids-trigger-button) {
535
- align-items: center;
536
- color: currentColor;
537
- cursor: pointer;
538
- display: flex;
539
- justify-content: center;
540
- margin-inline-start: 4px;
541
- margin-inline-end: var(--ids-tab-dismiss-button-offset);
542
- place-self: center;
324
+ .has-multi-checkmark.selected span.check::after {
325
+ position: absolute;
326
+ display: block;
327
+ border: var(--ids-font-size-2xs) solid var(--ids-checkbox-color-border-selected-after);
328
+ border-width: var(--ids-checkbox-border-width-selected-after);
329
+ animation: check 0.15s;
330
+ transform: rotate(45deg);
331
+ content: "";
332
+ height: 10px;
333
+ left: 4px;
334
+ top: 0;
335
+ width: 4px;
543
336
  }
544
-
545
- ::slotted(ids-trigger-button.ids-tab-close-button) {
546
- margin-inline-start: unset;
337
+ .has-multi-checkmark.disabled.selected span.check {
338
+ background-color: var(--ids-checkbox-color-background-selected-disabled);
339
+ border-color: var(--ids-checkbox-color-border-selected-disabled);
547
340
  }
548
341
 
549
- ::slotted(.ids-tab-more-menu-item-text) {
550
- display: inline-block;
551
- margin-inline-start: var(--ids-space-2xs);
342
+ .ids-sub-tab[dir=rtl] a .ids-sub-tab-submenu-icon,
343
+ .ids-sub-tab.rtl a .ids-sub-tab-submenu-icon {
344
+ grid-column-start: 3;
345
+ transform: rotateZ(90deg);
552
346
  }
553
- /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2J1aWxkcy9pbmZvci1kZXNpZ24vZW50ZXJwcmlzZS13Yy9zcmMvY29tcG9uZW50cy9pZHMtdGFicyIsInNvdXJjZXMiOlsiaWRzLXRhYi5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXNFQTtFQUNFOzs7QUFNRjtBQUFBO0FBQUE7RUFHRTs7O0FBR0Y7QUFBQTtBQUFBO0VBR0U7OztBQUdGO0FBQUE7QUFBQTtFQUdFOzs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHQTtFQUNFO0VBQ0E7O0FBRUE7RUFFRTs7QUFJSjtFQUVFOztBQUlGO0VBQ0U7RUFDQTtFQUNBOztBQUlGO0VBQ0U7RUFDQTs7QUFFQTtFQUNFOztBQUdGO0VBRUU7O0FBSUE7RUFDRTs7QUFFQTtFQUNFOztBQUdGO0VBS0U7RUFDQTs7QUFHRjtFQUNFO0VBQ0E7O0FBT1I7RUFDRTs7QUFJRjtFQUNFOztBQUVBO0VBQ0U7RUFDQTs7QUFJSjtFQUNFOztBQUlGO0VBQ0U7RUFDQTs7QUFLQTtFQUNFOztBQUlGO0VBQ0U7O0FBRUE7RUF4Tko7O0FBR0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQW1NQTtFQXpMSjs7QUFFQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQXNMSTtFQUVFOztBQU1KO0VBQ0U7RUFDQTs7QUFLTjtFQUNFOztBQUdFO0VBQ0U7O0FBT047QUFBQTtFQUVFO0VBQ0E7RUFDQTtFQUNBOztBQWpORjtBQUFBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFURjtBQUFBO0lBVUk7OztBQW1OSjtFQUNFO0VBQ0E7OztBQVFKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsUUFuU3dCO0VBb1N4QjtFQUNBOztBQUVBO0VBQ0U7O0FBR0Y7RUFDRTs7QUFJRjtFQUNFOztBQUVBO0VBQ0U7RUFDQTtFQUNBOztBQUtKO0VBQ0U7RUFDQTs7QUFJRjtFQUNFO0VBQ0E7O0FBR0Y7RUFuVUE7O0FBR0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQStTSjtFQUNFO0VBQ0E7RUFDQTs7QUFHRTtFQUVFOzs7QUFTUjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdGO0FBQUE7RUFFRTs7O0FBR0Y7RUFDRTtFQUNBOzs7QUFTRjtBQUFBO0VBRUU7OztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUtOO0FBQUE7QUFBQTtFQUdFOzs7QUFHRjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0E7RUFDRTtFQUNBOztBQUdGO0VBQ0U7RUFDQTs7QUFJRjtFQUNFO0VBQ0E7O0FBSUY7RUE3YkE7O0FBR0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUtGO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQXlhSjtFQUNFO0VBQ0E7O0FBSUY7QUFBQTtFQUVFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7O0FBR0Y7RUFDRSxXQTVkMkI7RUE2ZDNCO0VBQ0E7O0FBR0Y7RUFDRTs7QUFFQTtBQUFBO0VBRUU7O0FBS0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQUdFO0VBQ0E7O0FBSUo7QUFBQTtBQUFBO0VBR0U7RUFDQTtFQUNBOztBQUlBO0FBQUE7QUFBQTtFQUdFOzs7QUFVUjtFQUNFOztBQUlBO0VBQ0U7O0FBRUE7RUFDRTs7QUFLSjtFQUNFOztBQUVBO0VBRUU7O0FBS0o7RUFDRTs7QUFFQTtFQUNFOztBQUVBO0VBRUU7O0FBTU47RUFHRTs7O0FBUUo7RUFDRTs7QUFFQTtFQUNFO0VBQ0E7O0FBR0Y7RUFDRTs7QUFFQTtFQUVFOztBQUlKO0VBQ0U7O0FBS0E7RUFHRTs7QUFJSjtFQUNFO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTs7QUFLTjtFQUNFOztBQUdGO0VBQ0U7RUFFQTs7QUFFQTtFQUNFOzs7QUFPTjtFQUNFO0VBQ0E7RUFDQTs7QUFFQTtFQUNFO0VBQ0E7O0FBR0Y7QUFBQTtFQUVFOzs7QUFLSjtBQUFBO0VBRUU7RUFDQTs7O0FBS0E7RUFDRTtFQUNBOzs7QUFJSjtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFDRTtFQUNBIiwic291cmNlc0NvbnRlbnQiOlsiJGlkcy10YWItYWx0ZXJuYXRlLWNvbG9yLWRpc2FibGVkOiByZ2IoMjU1IDI1NSAyNTUgLyAwLjQpO1xuJGlkcy10YWItYWN0aW9uYWJsZS1taW4td2lkdGg6IDQ0cHg7XG4kaWRzLXRhYi12ZXJ0aWNhbC1oZWlnaHQ6IDQycHg7XG5cbkBtaXhpbiBpZHMtdGFicy1mb2N1cy1ib3JkZXIoJGluc2V0LXgtZGlzdGFuY2U6IDQsICRpbnNldC15LWRpc3RhbmNlOiA0LCAkb2Zmc2V0LXgtZGlzdGFuY2U6IC0xLCAkb2Zmc2V0LXktZGlzdGFuY2U6IDApIHtcbiAgb3V0bGluZTogbm9uZTtcblxuICAmOm5vdCguaGlkZS1mb2N1cykge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGluc2V0LWJsb2NrLXN0YXJ0OiAjeyRvZmZzZXQteC1kaXN0YW5jZX1weDtcbiAgICAgIGluc2V0LWlubGluZS1zdGFydDogI3skb2Zmc2V0LXktZGlzdGFuY2V9cHg7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gI3skaW5zZXQteC1kaXN0YW5jZX1weCk7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtICN7JGluc2V0LXktZGlzdGFuY2V9cHgpO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLmNvbG9yLXZhcmlhbnQtbW9kdWxlIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0taWRzLXRhYi1tb2R1bGUtY29sb3ItZm9jdXMtYm9yZGVyKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGluc2V0LWJsb2NrLXN0YXJ0OiAjeyRvZmZzZXQteC1kaXN0YW5jZX1weDtcbiAgICAgIGluc2V0LWlubGluZS1zdGFydDogI3skb2Zmc2V0LXktZGlzdGFuY2V9cHg7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gI3skaW5zZXQteC1kaXN0YW5jZSAtIDF9cHgpO1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAjeyRpbnNldC15LWRpc3RhbmNlIC0gMn1weCk7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRzIHRoZSBcInVuZGVybGluZVwiIGVsZW1lbnQgZm9yIHNlbGVjdGVkIHN0YXRlLlxuLy8gY2Fubm90IHJlYWQgY3NzIHZhciBmb3IgY29sb3IgaW4gOjphZnRlclxuLy8gd2l0aG91dCBzaGFkb3dET00gc2NvcGUgc28gbmVlZCAuc2VsZWN0aW9uLXVuZGVybGluZSBkaXZcbi8vIGFzIHdvcmthcm91bmRcbkBtaXhpbiBpZHMtdGFicy1zZWxlY3RlZC11bmRlcmxpbmUoKSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAmOjphZnRlcixcbiAgJiAuc2VsZWN0aW9uLXVuZGVybGluZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogM3B4O1xuICAgIGluc2V0LWJsb2NrLWVuZDogMDtcbiAgICBpbnNldC1pbmxpbmU6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjb250ZW50OiAnJztcbiAgfVxufVxuXG5AbWl4aW4gZGlzcGxheS1kYXRhLXRleHQtYXMtYm9sZCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS10ZXh0KTtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtdGV4dCkgLyAnJztcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBoZWlnaHQ6IDA7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICBAbWVkaWEgc3BlZWNoIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbjpob3N0KDpub3QoW2hpZGRlbl0pKTpub3QoW2NvbG9yLXZhcmlhbnQ9J21vZHVsZSddKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBEZWZhdWx0IFZhcmlhbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbjpob3N0KGlkcy10YWI6bm90KFtvcmllbnRhdGlvbj0ndmVydGljYWwnXSk6bm90KFtjb2xvci12YXJpYW50PSdtb2R1bGUnXSk6Zmlyc3QtY2hpbGQpLFxuOmhvc3QoaWRzLXRhYi1tb3JlOm5vdChbb3JpZW50YXRpb249J3ZlcnRpY2FsJ10pOm5vdChbY29sb3ItdmFyaWFudD0nbW9kdWxlJ10pOmZpcnN0LWNoaWxkKSxcbi5pZHMtdGFicy1jb250YWluZXI6bm90KC5vcmllbnRhdGlvbi12ZXJ0aWNhbCk6bm90KC5jb2xvci12YXJpYW50LW1vZHVsZSkgW2NsYXNzKj0naWRzLXRhYiddOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLTN4cyk7XG59XG5cbjpob3N0KGlkcy10YWI6bm90KFtvcmllbnRhdGlvbj0ndmVydGljYWwnXSk6bm90KFtjb2xvci12YXJpYW50PSdtb2R1bGUnXSk6bGFzdC1jaGlsZCksXG46aG9zdChpZHMtdGFiLW1vcmU6bm90KFtvcmllbnRhdGlvbj0ndmVydGljYWwnXSk6bm90KFtjb2xvci12YXJpYW50PSdtb2R1bGUnXSk6bGFzdC1jaGlsZCksXG4uaWRzLXRhYnMtY29udGFpbmVyOm5vdCgub3JpZW50YXRpb24tdmVydGljYWwpOm5vdCguY29sb3ItdmFyaWFudC1tb2R1bGUpIFtjbGFzcyo9J2lkcy10YWInXTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IHZhcigtLWlkcy1zcGFjZS0zeHMpO1xufVxuXG46aG9zdChpZHMtdGFiOm5vdChbb3JpZW50YXRpb249J3ZlcnRpY2FsJ10pOm5vdChbY29sb3ItdmFyaWFudD0nbW9kdWxlJ10pOm5vdChbY29sb3ItdmFyaWFudD0naGVhZGVyJ10pOm5vdCg6bGFzdC1jaGlsZCkpLFxuOmhvc3QoaWRzLXRhYi1tb3JlOm5vdChbb3JpZW50YXRpb249J3ZlcnRpY2FsJ10pOm5vdChbY29sb3ItdmFyaWFudD0nbW9kdWxlJ10pOm5vdCg6bGFzdC1jaGlsZCkpLFxuLmlkcy10YWJzLWNvbnRhaW5lcjpub3QoLm9yaWVudGF0aW9uLXZlcnRpY2FsKTpub3QoLmNvbG9yLXZhcmlhbnQtbW9kdWxlKSBbY2xhc3MqPSdpZHMtdGFiJ106bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiB2YXIoLS1pZHMtc3BhY2UtM3hzKTtcbn1cblxuOmhvc3QoaWRzLXRhYjpmb2N1cy12aXNpYmxlKSxcbjpob3N0KGlkcy10YWItbW9yZTpmb2N1cy12aXNpYmxlKSxcbi5pZHMtdGFiLWNvbnRhaW5lciBbY2xhc3MqPSdpZHMtdGFiJ106Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbjpob3N0KGlkcy10YWI6bm90KFtoYXMtZXJyb3JdKSkgc2xvdFtuYW1lPSdlcnJvciddIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuOmhvc3QoaWRzLXRhYlt2YWx1ZT0nYXBwLW1lbnUnXSkge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xufVxuXG4uaWRzLXRhYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29sb3I6IHZhcigtLWlkcy10YWItY29sb3ItdGV4dC1kZWZhdWx0KTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwYWRkaW5nLWlubGluZTogdmFyKC0taWRzLXNwYWNlLTJ4cyk7XG4gIHBhZGRpbmctYmxvY2s6IHZhcigtLWlkcy1zcGFjZS14cyk7XG4gIGxpc3Qtc3R5bGU6IG5vbmUgb3V0c2lkZSBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIEhvdmVyIHN0YXRlXG4gICY6aG92ZXI6bm90KC5tb3JlKTpub3QoLnNlbGVjdGVkKSB7XG4gICAgY29sb3I6IHZhcigtLWlkcy10YWItY29sb3ItdGV4dC1ob3Zlcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLXRhYi1jb2xvci1iYWNrZ3JvdW5kLWhvdmVyKTtcblxuICAgICY6OmFmdGVyLFxuICAgICYgLnNlbGVjdGlvbi11bmRlcmxpbmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLXRhYi1jb2xvci10ZXh0LWhvdmVyKTtcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyLm1vcmUsXG4gICYuaXMtb3Blbi5tb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtYnV0dG9uLXRlcnRpYXJ5LWNvbG9yLWJhY2tncm91bmQtaG92ZXIpO1xuICB9XG5cbiAgLy8gRGlzYWJsZWRcbiAgJi5kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIGNvbG9yOiB2YXIoLS1pZHMtdGFiLWNvbG9yLXRleHQtZGlzYWJsZWQpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgLy8gU2VsZWN0ZWQgc3RhdGVcbiAgJi5zZWxlY3RlZCB7XG4gICAgY29sb3I6IHZhcigtLWlkcy10YWItY29sb3ItdGV4dC1zZWxlY3RlZCk7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgJi5pZHMtdGV4dCB7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cblxuICAgICY6OmFmdGVyLFxuICAgICYgLnNlbGVjdGlvbi11bmRlcmxpbmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLXRhYi1jb2xvci10ZXh0LXNlbGVjdGVkKTtcbiAgICB9XG5cbiAgICBpZHMtbWVudS1idXR0b24ge1xuICAgICAgJjo6cGFydChidXR0b24pIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWlkcy10YWItY29sb3ItdGV4dC1zZWxlY3RlZCk7XG5cbiAgICAgICAgLmlzLWZvY3VzZWQge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cyxcbiAgICAgICAgJjpmb2N1cy13aXRoaW4sXG4gICAgICAgICY6Zm9jdXMtdmlzaWJsZSxcbiAgICAgICAgJjphY3RpdmUsXG4gICAgICAgICY6dGFyZ2V0IHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3gtc2hhZG93OiB1bnNldDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQWN0aW9uYWJsZVxuICAmLmFjdGlvbmFibGUge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuXG4gIC8vIENvdW50c1xuICAmLmNvdW50IHtcbiAgICBwYWRkaW5nLWlubGluZTogMTJweDtcblxuICAgIC5pZHMtdGFiLWNvdW50LWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAvLyBUcmlnZ2VyIEJ1dHRvbiBTbG90XG4gIC5pZHMtdGFiLXRyaWdnZXItY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHBsYWNlLWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuXG4gIC8vIE9yaWVudGF0aW9uLWhvcml6b250YWxcbiAgJi5vcmllbnRhdGlvbi1ob3Jpem9udGFsIHtcbiAgICAmOm5vdCguY291bnQpIHtcbiAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1pZHMtc3BhY2UteHMpO1xuICAgIH1cblxuICAgIC8vIEluLXBhZ2UgYW5kIEhlYWRlciBUYWJzIG9ubHlcbiAgICAmOm5vdCguY29sb3ItdmFyaWFudC1tb2R1bGUpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgQGluY2x1ZGUgaWRzLXRhYnMtZm9jdXMtYm9yZGVyKDAsIDIsIDAsIC0xKTtcbiAgICAgIH1cblxuICAgICAgJi5zZWxlY3RlZCxcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBAaW5jbHVkZSBpZHMtdGFicy1zZWxlY3RlZC11bmRlcmxpbmU7XG4gICAgICB9XG5cbiAgICAgIC8vIEhpZGUgdGhlIHVuZGVybGluZSBvbiBkaXNhYmxlZFxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgICY6OmFmdGVyLFxuICAgICAgICAmIC5zZWxlY3Rpb24tdW5kZXJsaW5lIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWRzLW1lbnUtYnV0dG9uIHtcbiAgICAgICY6OnBhcnQoYnV0dG9uKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmhhcy1zdWItdGFicyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgaWRzLW1lbnUtYnV0dG9uIHtcbiAgICAgICY6OnBhcnQoYnV0dG9uKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHVuc2V0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gTWFrZXMgdGV4dCBhcHBlYXIgYm9sZGVkIHdpdGhvdXQgc2h1ZGRlcmluZyB0aGUgd2lkdGhzO1xuICBpZHMtdGV4dDo6cGFydCh0ZXh0KSxcbiAgLmlkcy10YWIuaWRzLXRleHQge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICAmOm5vdCgub3JpZW50YXRpb24tdmVydGljYWwpIHtcbiAgICBpZHMtdGV4dDo6cGFydCh0ZXh0KSxcbiAgICAuaWRzLXRhYi5pZHMtdGV4dCB7XG4gICAgICBAaW5jbHVkZSBkaXNwbGF5LWRhdGEtdGV4dC1hcy1ib2xkO1xuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gVGFicyBjb21iaW5lZCB3aXRoIElkc1N3YXBwYWJsZSBjcmVhdGUgXCJzd2FwcGFibGVcIiB0YWJzXG4gICYuc3dhcHBhYmxlIHtcbiAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLXhzKTtcbiAgICBwYWRkaW5nLWlubGluZS1lbmQ6IDZweDtcbiAgfVxufVxuXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFZlcnRpY2FsIFZhcmlhbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi5pZHMtdGFiLm9yaWVudGF0aW9uLXZlcnRpY2FsIHtcbiAgcGFkZGluZy1pbmxpbmU6IHZhcigtLWlkcy1zcGFjZS1tZCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGlkcy10YWItdmVydGljYWwtaGVpZ2h0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtdGFiLXZlcnRpY2FsLWNvbG9yLWJhY2tncm91bmQtZGVmYXVsdCk7XG4gIGNvbG9yOiB2YXIoLS1pZHMtdGFiLXZlcnRpY2FsLWNvbG9yLXRleHQtZGVmYXVsdCk7XG5cbiAgaWRzLWljb24ge1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiA4cHg7XG4gIH1cblxuICBpZHMtdGV4dFtvdmVyZmxvdz1cImVsbGlwc2lzXCJdIHtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogOHB4O1xuICB9XG5cbiAgLy8gQ291bnRzIC0gdmVyaXRjYWwgdGFic1xuICAmLmNvdW50IHtcbiAgICBwYWRkaW5nLWlubGluZTogMTJweDtcblxuICAgIC5pZHMtdGFiLWNvdW50LWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gdmVydGljYWwgaG92ZXIgc3RhdGVcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLXRhYi12ZXJ0aWNhbC1jb2xvci1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgICBjb2xvcjogdmFyKC0taWRzLXRhYi12ZXJ0aWNhbC1jb2xvci10ZXh0LWhvdmVyKTtcbiAgfVxuXG4gIC8vIHZlcnRpY2FsIGRpc2FibGVkIHN0YXRlXG4gICYuZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy10YWItdmVydGljYWwtY29sb3ItYmFja2dyb3VuZC1kaXNhYmxlZCk7XG4gICAgY29sb3I6IHZhcigtLWlkcy10YWItdmVydGljYWwtY29sb3ItdGV4dC1kaXNhYmxlZCk7XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIEBpbmNsdWRlIGlkcy10YWJzLWZvY3VzLWJvcmRlcig0LCA0LCAxLCAxKTtcbiAgfVxuXG4gIC8vIHZlcnRpY2FsIHNlbGVjdGVkIHN0YXRlXG4gICYuc2VsZWN0ZWQge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtdGFiLXZlcnRpY2FsLWNvbG9yLWJhY2tncm91bmQtc2VsZWN0ZWQpO1xuICAgIGNvbG9yOiB2YXIoLS1pZHMtdGFiLXZlcnRpY2FsLWNvbG9yLXRleHQtc2VsZWN0ZWQpO1xuXG4gICAgJjpmb2N1cy12aXNpYmxlOm5vdCguaGlkZS1mb2N1cykge1xuICAgICAgJjo6YWZ0ZXIsXG4gICAgICAmIC5zZWxlY3Rpb24tdW5kZXJsaW5lIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLXRhYi12ZXJ0aWNhbC1jb2xvci1ib3JkZXItc2VsZWN0ZWQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBNb2R1bGUgQ29sb3IgVmFyaWFudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuOmhvc3QoaWRzLXRhYltjb2xvci12YXJpYW50PSdtb2R1bGUnXTpub3QoOmxhc3QtY2hpbGQpOm5vdChbdmFsdWU9J2FkZCddKTpub3QoW3ZhbHVlPSdyZXNldCddKSkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtdGFiLW1vZHVsZS1jb2xvci1ib2R5LWJhY2tncm91bmQpO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm9yZGVyLWlubGluZS1lbmQ6IDRweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuOmhvc3QoaWRzLXRhYltjb2xvci12YXJpYW50PSdtb2R1bGUnXVt2YWx1ZT0nYWRkJ10pLFxuOmhvc3QoaWRzLXRhYltjb2xvci12YXJpYW50PSdtb2R1bGUnXVt2YWx1ZT0ncmVzZXQnXSkge1xuICBib3JkZXItaW5saW5lLWVuZDogMXB4IHNvbGlkIHZhcigtLWlkcy10YWItbW9kdWxlLWNvbG9yLWJvcmRlci1yaWdodCk7XG59XG5cbjpob3N0KGlkcy10YWJbY29sb3ItdmFyaWFudD0nbW9kdWxlJ11bc2VsZWN0ZWRdKSB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgIHRvIGJvdHRvbSxcbiAgICB2YXIoLS1pZHMtdGFiLW1vZHVsZS1jb2xvci1ib2R5LWJhY2tncm91bmQpIDAlLFxuICAgIHZhcigtLWlkcy10YWItbW9kdWxlLWNvbG9yLWJvZHktYmFja2dyb3VuZCkgODUlLFxuICAgIHZhcigtLWlkcy10YWItbW9kdWxlLWNvbG9yLWJhY2tncm91bmQtc2VsZWN0ZWQpIDE1JSxcbiAgICB2YXIoLS1pZHMtdGFiLW1vZHVsZS1jb2xvci1iYWNrZ3JvdW5kLXNlbGVjdGVkKSAxMDAlXG4gICk7XG59XG5cbjpob3N0KGlkcy10YWJbY29sb3ItdmFyaWFudD0nbW9kdWxlJ10pLFxuLmlkcy10YWJzLWNvbnRhaW5lci5jb2xvci12YXJpYW50LW1vZHVsZSAuaWRzLXRhYnMtbGlzdC1tb3JlIHtcbiAgaGVpZ2h0OiA0M3B4O1xufVxuXG4uaWRzLXRhYi5jb2xvci12YXJpYW50LW1vZHVsZTpub3QoLmFkZCk6bm90KC5yZXNldCk6bm90KC5tb3JlKSB7XG4gIG1pbi13aWR0aDogMTY5cHg7XG4gIGhlaWdodDogMzZweDtcbiAgZmxleDogMTtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBwYWRkaW5nLWlubGluZTogMTBweDtcblxuICAmLnNlbGVjdGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiA2cHggNnB4IDAgMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtdGFiLW1vZHVsZS1jb2xvci1iYWNrZ3JvdW5kLXNlbGVjdGVkKTs7XG4gICAgaGVpZ2h0OiAzNC41cHg7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogLTRweDtcbiAgICAgIGJvdHRvbTogLTQuNXB4O1xuICAgICAgd2lkdGg6IDRweDtcbiAgICAgIGhlaWdodDogN3B4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMCAwIDAgNnB4O1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0taWRzLXRhYi1tb2R1bGUtY29sb3ItYm9keS1iYWNrZ3JvdW5kKTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDAgMCB2YXIoLS1pZHMtdGFiLW1vZHVsZS1jb2xvci1iYWNrZ3JvdW5kLXNlbGVjdGVkKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnICc7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAtNHB4O1xuICAgICAgYm90dG9tOiAtNC41cHg7XG4gICAgICB3aWR0aDogNHB4O1xuICAgICAgaGVpZ2h0OiA3cHg7XG4gICAgICBib3JkZXItcmFkaXVzOiAwIDAgNnB4O1xuICAgICAgYmFja2dyb3VuZDogdmFyKC0taWRzLXRhYi1tb2R1bGUtY29sb3ItYm9keS1iYWNrZ3JvdW5kKTtcbiAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDAgMCB2YXIoLS1pZHMtdGFiLW1vZHVsZS1jb2xvci1iYWNrZ3JvdW5kLXNlbGVjdGVkKTtcbiAgICB9XG4gIH1cbn1cblxuOmhvc3QoaWRzLXRhYltjb2xvci12YXJpYW50PSdtb2R1bGUnXTpub3QoW29yaWVudGF0aW9uPSd2ZXJ0aWNhbCddKTpub3QoW2FjdGlvbmFibGVdKSksXG46aG9zdChpZHMtdGFiLW1vcmVbY29sb3ItdmFyaWFudD0nbW9kdWxlJ106bm90KFtvcmllbnRhdGlvbj0ndmVydGljYWwnXSk6bm90KFthY3Rpb25hYmxlXSkpLFxuLmlkcy10YWItY29udGFpbmVyLmNvbG9yLXZhcmlhbnQtbW9kdWxlOm5vdCgub3JpZW50YXRpb24tdmVydGljYWwpOm5vdCguYWN0aW9uYWJsZSkgW2NsYXNzKj0naWRzLXRhYiddIHtcbiAgZmxleC1ncm93OiAxO1xufVxuXG4uaWRzLXRhYi5jb2xvci12YXJpYW50LW1vZHVsZSB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy10YWItbW9kdWxlLWNvbG9yLWJhY2tncm91bmQtZGVmYXVsdCk7XG4gIGNvbG9yOiB2YXIoLS1pZHMtdGFiLW1vZHVsZS1jb2xvci10ZXh0LWRlZmF1bHQpO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWlkcy10YWItbW9kdWxlLXRhYi1jb2xvci1ib3JkZXItYm90dG9tKTtcblxuICAvLyBNb2R1bGUgLSBIb3ZlciBzdGF0ZVxuICAmOmhvdmVyOm5vdCgubW9yZSk6bm90KC5zZWxlY3RlZCkge1xuICAgIGNvbG9yOiB2YXIoLS1pZHMtdGFiLW1vZHVsZS1jb2xvci10ZXh0LWhvdmVyKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtdGFiLW1vZHVsZS1jb2xvci1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgfVxuXG4gICY6aG92ZXIubW9yZSB7XG4gICAgY29sb3I6IHZhcigtLWlkcy10YWItbW9kdWxlLWNvbG9yLXRleHQtaG92ZXIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy10YWItbW9kdWxlLWNvbG9yLWJhY2tncm91bmQtaG92ZXIpO1xuICB9XG5cbiAgLy8gTW9kdWxlIC0gU2VsZWN0ZWQgc3RhdGVcbiAgJi5zZWxlY3RlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLXRhYi1tb2R1bGUtY29sb3ItYmFja2dyb3VuZC1zZWxlY3RlZCk7XG4gICAgY29sb3I6IHZhcigtLWlkcy10YWItbW9kdWxlLWNvbG9yLXRleHQtc2VsZWN0ZWQpO1xuICB9XG5cbiAgLy8gTW9kdWxlIC0gRm9jdXMgc3RhdGVcbiAgJjpub3QoLnNlbGVjdGVkKTpmb2N1cy12aXNpYmxlIHtcbiAgICBAaW5jbHVkZSBpZHMtdGFicy1mb2N1cy1ib3JkZXIoNCwgNCwgMSwgMSk7XG4gIH1cblxuICAvLyBNb2R1bGUgLSBEaXNhYmxlZCBzdGF0ZVxuICAmLmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtdGFiLW1vZHVsZS1jb2xvci1iYWNrZ3JvdW5kLWRpc2FibGVkKTtcbiAgICBjb2xvcjogdmFyKC0taWRzLXRhYi1tb2R1bGUtY29sb3ItdGV4dC1kaXNhYmxlZCk7XG4gIH1cblxuICAvLyBTY29wZWQgdG8gdGhlIGZpcnN0IGNoaWxkIHRleHQgZWxlbWVudCB0byBhdm9pZCBjb25mbGljdHMgd2l0aCBtZW51c1xuICA+IGlkcy10ZXh0LFxuICA+IC5pZHMtdGV4dCB7XG4gICAgcGFkZGluZy1ib3R0b206IDNweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAmOm5vdCguYWN0aW9uYWJsZSkge1xuICAgIG1pbi13aWR0aDogdmFyKC0taWRzLXRhYi1taW4td2lkdGgpO1xuICB9XG5cbiAgJi5tb3JlIHtcbiAgICBtaW4td2lkdGg6IHZhcigtLWlkcy10YWItbW9yZS1idXR0b24td2lkdGgpO1xuICAgIGhlaWdodDogY2FsYyh2YXIoIC0taWRzLXRhYi1tb2R1bGUtaGVpZ2h0KSArIDFweCk7XG4gIH1cblxuICAmLmFjdGlvbmFibGUge1xuICAgIG1pbi13aWR0aDogJGlkcy10YWItYWN0aW9uYWJsZS1taW4td2lkdGg7XG4gICAgZ2FwOiAwO1xuICAgIGhlaWdodDogY2FsYyh2YXIoIC0taWRzLXRhYi1tb2R1bGUtaGVpZ2h0KSArIDFweCk7XG4gIH1cblxuICAmLmRpc21pc3NpYmxlIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcblxuICAgID4gaWRzLXRleHQsXG4gICAgPiAuaWRzLXRleHQge1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgIH1cblxuICAgICYuc2VsZWN0ZWQ6bm90KC5kaXNhYmxlZCksXG4gICAgJi5pcy1mb2N1c2VkOm5vdCguZGlzYWJsZWQpIHtcbiAgICAgIDo6c2xvdHRlZChpZHMtdHJpZ2dlci1idXR0b24pLFxuICAgICAgPiAuaWRzLXRyaWdnZXItYnV0dG9uLFxuICAgICAgPiBpZHMtdHJpZ2dlci1idXR0b24ge1xuICAgICAgICBjb2xvcjogdmFyKC0taWRzLXRhYi1tb2R1bGUtZGltaXNzaWJsZS1jb2xvcik7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgOjpzbG90dGVkKGlkcy10cmlnZ2VyLWJ1dHRvbiksXG4gICAgPiAuaWRzLXRyaWdnZXItYnV0dG9uLFxuICAgID4gaWRzLXRyaWdnZXItYnV0dG9uIHtcbiAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgOjpzbG90dGVkKGlkcy10cmlnZ2VyLWJ1dHRvbiksXG4gICAgICA+IC5pZHMtdHJpZ2dlci1idXR0b24sXG4gICAgICA+IGlkcy10cmlnZ2VyLWJ1dHRvbiB7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQWx0ZXJuYXRlIENvbG9yIFZhcmlhbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi5pZHMtdGFiLmNvbG9yLXZhcmlhbnQtYWx0ZXJuYXRlIHtcbiAgY29sb3I6IHZhcigtLWlkcy10YWItYWx0ZXJuYXRlLWNvbG9yLXRleHQtZGVmYXVsdCk7XG5cblxuICAvLyBBbHRlcm5hdGUgLSBIb3ZlciBzdGF0ZVxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0taWRzLXRhYi1hbHRlcm5hdGUtY29sb3ItdGV4dC1ob3Zlcik7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtdGFiLWFsdGVybmF0ZS1jb2xvci1iYWNrZ3JvdW5kLWhvdmVyKTtcbiAgICB9XG4gIH1cblxuICAvLyBBbHRlcm5hdGUgLSBTZWxlY3RlZCBzdGF0ZVxuICAmLnNlbGVjdGVkIHtcbiAgICBjb2xvcjogdmFyKC0taWRzLXRhYi1hbHRlcm5hdGUtY29sb3ItdGV4dC1zZWxlY3RlZCk7XG5cbiAgICAmOjphZnRlcixcbiAgICAmIC5zZWxlY3Rpb24tdW5kZXJsaW5lIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy10YWItYWx0ZXJuYXRlLWhvcml6b250YWwtY29sb3ItYmFja2dyb3VuZCk7XG4gICAgfVxuICB9XG5cbiAgLy8gQWx0ZXJhbnRlIC0gRGlzYWJsZWQgc3RhdGVcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6IHZhcigtLWlkcy10YWItYWx0ZXJuYXRlLWNvbG9yLXRleHQtZGlzYWJsZWQpO1xuXG4gICAgJi5zZWxlY3RlZCB7XG4gICAgICBjb2xvcjogdmFyKC0taWRzLXRhYi1hbHRlcm5hdGUtY29sb3ItdGV4dC1kaXNhYmxlZCk7XG5cbiAgICAgICY6OmFmdGVyLFxuICAgICAgJiAuc2VsZWN0aW9uLXVuZGVybGluZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy10YWItYWx0ZXJuYXRlLWNvbG9yLXRleHQtZGlzYWJsZWQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEFsdGVybmF0ZSAtIEZvY3VzIHN0YXRlXG4gICY6bm90KC5oaWRlLWZvY3VzKTpmb2N1cy12aXNpYmxlLFxuICAmOm5vdCguaGlkZS1mb2N1cyk6Zm9jdXMsXG4gICY6bm90KC5oaWRlLWZvY3VzKTpmb2N1cy13aXRoaW4ge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLXRhYi1hbHRlcm5hdGUtY29sb3ItYm9yZGVyLWZvY3VzKTtcbiAgfVxufVxuXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIEhlYWRlciBDb2xvciBWYXJpYW50XG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4uaWRzLXRhYi5jb2xvci12YXJpYW50LWhlYWRlciB7XG4gIGNvbG9yOiB2YXIoLS1pZHMtdGFiLWhlYWRlci1jb2xvci10ZXh0LWRlZmF1bHQpO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWlkcy10YWItaGVhZGVyLWNvbG9yLWJhY2tncm91bmQtaG92ZXIpO1xuICAgIGNvbG9yOiB2YXIoLS1pZHMtdGFiLWhlYWRlci1jb2xvci10ZXh0LWhvdmVyKTtcbiAgfVxuXG4gICYuc2VsZWN0ZWQge1xuICAgIGNvbG9yOiB2YXIoLS1pZHMtdGFiLWhlYWRlci1jb2xvci10ZXh0LXNlbGVjdGVkKTtcblxuICAgICY6OmFmdGVyLFxuICAgICYgLnNlbGVjdGlvbi11bmRlcmxpbmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLXRhYi1oZWFkZXItY29sb3ItdGV4dC1zZWxlY3RlZCk7XG4gICAgfVxuICB9XG5cbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6IHZhcigtLWlkcy10YWItaGVhZGVyLWNvbG9yLXRleHQtZGlzYWJsZWQpO1xuICB9XG5cbiAgLy8gQWx0ZXJuYXRlIC0gRm9jdXMgc3RhdGVcbiAgJjpub3QoLmhpZGUtZm9jdXMpIHtcbiAgICAmOmZvY3VzLXZpc2libGUsXG4gICAgJjpmb2N1cyxcbiAgICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWlkcy10YWItaGVhZGVyLWNvbG9yLWJvcmRlci1mb2N1cyk7XG4gICAgfVxuICB9XG5cbiAgJi5hY3Rpb25hYmxlIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIHBhZGRpbmctaW5saW5lOiA3cHg7XG4gICAgcGFkZGluZy1ibG9jay1zdGFydDogN3B4O1xuICAgIHdpZHRoOiB2YXIoLS1pZHMtdGFiLWhlYWRlci1idXR0b24td2lkdGgpO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBib3JkZXItaW5saW5lLXN0YXJ0OiAxcHggc29saWQgdmFyKC0taWRzLXRhYi1kaXZpZGVyLWNvbG9yLWJvcmRlcik7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLXRhYi1oZWFkZXItY29sb3ItYmFja2dyb3VuZC1ob3Zlcik7XG4gICAgICBjb2xvcjogdmFyKC0taWRzLXRhYi1oZWFkZXItY29sb3ItdGV4dC1ob3Zlcik7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLXRhYi1oZWFkZXItY29sb3ItYmFja2dyb3VuZC1ob3Zlcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5hY3Rpb25hYmxlLmFkZCB7XG4gICAgYm9yZGVyLWlubGluZS1zdGFydDogMXB4IHNvbGlkIHZhcigtLWlkcy10YWItZGl2aWRlci1jb2xvci1ib3JkZXIpO1xuICB9XG5cbiAgJi5tb3JlLm9yaWVudGF0aW9uLWhvcml6b250YWw6bm90KC5jb2xvci12YXJpYW50LW1vZHVsZSkge1xuICAgIC0taWRzLXRhYi1kaXZpZGVyLXdpZHRoOiB2YXIoLS1pZHMtdGFiLWhlYWRlci1idXR0b24td2lkdGgpO1xuXG4gICAgYm9yZGVyLWlubGluZS1zdGFydDogbm9uZTtcblxuICAgIC50YWItbW9yZS10ZXh0ID4gKjpub3QoLmxhc3QtY2hpbGQpIHtcbiAgICAgIHBhZGRpbmctaW5saW5lLWVuZDogMnB4O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFwiTW9yZVwiIFRhYidzIHRleHQgY29udGVudCBhbmQgaWNvbnMgYXJlIGNlbnRlcmVkXG4udGFiLW1vcmUtdGV4dCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nLWlubGluZS1lbmQ6IDNweDtcblxuICA+ICo6bm90KC5sYXN0LWNoaWxkKSB7XG4gICAgcGFkZGluZy1pbmxpbmUtZW5kOiAzcHg7XG4gICAgcGFkZGluZy1ibG9jay1zdGFydDogMnB4O1xuICB9XG5cbiAgaWRzLXRleHQsXG4gIC5pZHMtdGV4dCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5cbi8vIFBvcHVwbWVudXMgaW5zaWRlIG9mIHRoZSBcIk1vcmUgVGFic1wiIHRhYiwgb3IgRHJvcGRvd24gdGFic1xuaWRzLXBvcHVwLW1lbnUsXG4uaWRzLXBvcHVwLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vLyBcIk1vcmUgVGFic1wiIHRhYiBmbGV4IHJ1bGVzXG4uaWRzLXRhYjpub3QoLm1vcmUpIHtcbiAgOjpzbG90dGVkKGlkcy1pY29uKSB7XG4gICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxufVxuXG4uaWRzLXRhYi5tb3JlLm9yaWVudGF0aW9uLWhvcml6b250YWw6bm90KC5jb2xvci12YXJpYW50LW1vZHVsZSkge1xuICBib3JkZXItaW5saW5lLXN0YXJ0OiAxcHggc29saWQgdmFyKC0taWRzLXRhYi1kaXZpZGVyLWNvbG9yLWJvcmRlcik7XG4gIGJvcmRlci1ib3R0b206IDAgc29saWQgdHJhbnNwYXJlbnQ7XG4gIG1hcmdpbi1pbmxpbmUtZW5kOiAtM3B4O1xuICBoZWlnaHQ6IHZhcigtLWlkcy10YWItZGl2aWRlci13aWR0aCk7XG4gIHdpZHRoOiB2YXIoLS1pZHMtdGFiLWRpdmlkZXItd2lkdGgpO1xuXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiA0NHB4O1xuICAgIHdpZHRoOiA0NHB4O1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgei1pbmRleDogMjtcbiAgfVxufVxuXG46OnNsb3R0ZWQoaWRzLXRyaWdnZXItYnV0dG9uKSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDRweDtcbiAgbWFyZ2luLWlubGluZS1lbmQ6IHZhcigtLWlkcy10YWItZGlzbWlzcy1idXR0b24tb2Zmc2V0KTtcbiAgcGxhY2Utc2VsZjogY2VudGVyO1xufVxuXG46OnNsb3R0ZWQoaWRzLXRyaWdnZXItYnV0dG9uLmlkcy10YWItY2xvc2UtYnV0dG9uKSB7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IHVuc2V0O1xufVxuXG46OnNsb3R0ZWQoLmlkcy10YWItbW9yZS1tZW51LWl0ZW0tdGV4dCkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1zcGFjZS0yeHMpO1xufVxuIl19 */
347
+ /*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2J1aWxkcy9pbmZvci1kZXNpZ24vZW50ZXJwcmlzZS13Yy9zcmMvY29tcG9uZW50cy9pZHMtdGFicyIsInNvdXJjZXMiOlsiaWRzLXN1Yi10YWIuc2NzcyIsImlkcy1zdWItdGFicy1iYXNlLnNjc3MiLCIuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy1jaGVjay1taXhpbi5zY3NzIiwiLi4vLi4vdGhlbWVzL21peGlucy9pZHMtY2hlY2tib3gtbWl4aW4uc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQ0FBO0FBQUE7QUFBQTtBQ0FBO0FBQUE7QUFBQTtBQ0FBO0FBQUE7QUFBQTtBQW9JQTtFQUNFO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7O0VBR0Y7SUFDRTtJQUNBO0lBQ0E7SUFDQTs7RUFHRjtJQUNFO0lBQ0E7SUFDQTtJQUNBOzs7QUFJSjtFQUNFO0lBQ0U7O0VBR0Y7SUFDRTs7O0FINUpKO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0E7RUFDRTtFQUNBOztBQUlBO0VBQ0U7OztBQU1GO0VBQ0U7RUFDQTs7O0FBS0o7RUFDRTs7O0FBSUY7RUFDRTs7O0FBSUY7RUFDRTs7O0FBR0Y7RUFDRTs7O0FBR0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNFOztBQUVBO0VBQ0U7O0FBSUo7QUFBQTtBQUFBO0VBR0U7RUFDQTtFQUNBO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUlBO0VBQ0U7O0FBR0Y7RUFDRTs7QUFJRjtFQUNFO0VBQ0E7RUFDQTs7QUFHRjtBQUFBO0FBQUE7RUFHRTs7QUFHRjtFQUNFOztBQUVBO0FBQUE7RUFFRTs7QUFHRjtFQUNFOztBQUlKO0VBQ0U7RUFDQTtFQUNBOztBQUlKO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7O0FBTUE7RUFDRTs7QUFPRjtFQUNFO0VBQ0E7O0FBRUE7RUFDRTs7QUFNSjtFQUNFO0VBQ0E7O0FBS0Y7RUFDRTtFQUNBOztBQUtGO0VBQ0U7RUFDQTs7QUFNSjtFQUNFO0VBR0E7RUFDQTtFQUNBOztBQUVBO0VBQ0U7O0FBR0Y7QUFBQTtFQUVFOztBQU9KO0VBQ0U7O0FBTUY7RUFDRTs7QUFPQTtFQUNFOztBQVFGO0VBQ0U7RUFDQTtFQUNBOztBQUtGO0VBQ0U7O0FBU0Y7RUFDRTtFQUNBOztBQUdBO0VBQ0U7O0FBR0Y7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQUdFOztBQUdGO0VBQ0U7O0FBR0Y7RUFDRTs7QUFJSjtFQUNFO0VBQ0E7RUFDQTs7QUFNRjtFQUNFOztBQVFGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFTRjtFQUNFO0VBQ0E7RUFDQTs7QUFNRjtFQUNFOztBQUVBO0VBQ0U7O0FBR0Y7RUFDRTs7QUFPSjtFQUNFOztBQVNGO0VBQ0U7O0FBT0Y7RUFDRTs7QUFTRjtFQUNFOztBQVFGO0VBQ0U7O0FBS0Y7RUFDRTs7QUFFQTtFQUNFOztBQVFOO0VBQ0U7O0FBRUE7RUFDRTs7QUFHRjtFQUNFO0VBQ0E7OztBQUtOO0VBQ0U7RUFDQTs7O0FBT0E7RUVsWkE7O0FGdVpFO0VFbFpGO0VBQ0E7RUFDQTtFQUNBLGNBQ0U7RUFJRjtFQUNBO0VBQ0E7RUFDQTtFRjBZSTtFQUNBOztBQUlBO0VFellKLGNBQ0U7OztBRmdaRjtFR3JhQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFSGthRTtFQUNBO0VBQ0E7RUFDQTs7QUFHRjtFQUNFOztBQUlBO0VHcGFGO0VBQ0E7O0FIc2FJO0VHbGFKO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FIZ2FJO0VHN1hKO0VBQ0E7OztBSHNZQTtBQUFBO0VBQ0U7RUFDQSIsInNvdXJjZXNDb250ZW50IjpbIi8qIElkcyBTdWIgVGFiIENvbXBvbmVudCAqL1xuQHVzZSAnLi9pZHMtc3ViLXRhYnMtYmFzZScgYXMgKjtcbkB1c2UgJy4uLy4uL3RoZW1lcy9taXhpbnMvaWRzLWNoZWNrLW1peGluJyBhcyAqO1xuQHVzZSAnLi4vLi4vdGhlbWVzL21peGlucy9pZHMtY2hlY2tib3gtbWl4aW4nIGFzICo7XG5cbi8qKlxuICogTk9URSBBQk9VVCBNRU5VIElURU0gRUxFTUVOVCBPUkRFUjpcbiAqIERlZmluaXRpb25zIGZvciBncmlkIHRlbXBsYXRlIHNpemUgaW4gSWRzTWVudUl0ZW0gYXJlIGRlZmluZWQgYmFzZWQgb24gdGhlIGJlbG93IG9yZGVyLlxuICogSWYgY2hhbmdlcyBhcmUgbWFkZSB0byBJZHNNZW51SXRlbSdzIHJlbmRlcmluZywgdGhpcyBvcmRlciBtdXN0IHJlbWFpbiBpbiBwbGFjZS5cbiAqXG4gKiBbY2hlY2ttYXJrP10gLSBbaWNvbj9dIC0gdGV4dCAtIFtzaG9ydGN1dCB0ZXh0P10gLSBbc3VibWVudSBpY29uP11cbiAqKi9cbjpob3N0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG5cbiAgLy8gQFRPRE86IHJlbW92ZSBzbG90dGVkIHJ1bGVzIGlmIHdlIGRlY2lkZSB0b1xuICAvLyBzdXBwb3J0IFN1Ym1lbnVzIGluc2lkZSBzdGFuZGFsb25lIGlkcy1tZW51XG4gIDo6c2xvdHRlZChpZHMtbWVudSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gb3ZlcnJpZGUgd2hlbiBpZHMgbWVudSBpdGVtIGlzIGJlaW5nIHVzZWQgaW4gaWRzIHRhYlxuOmhvc3QoLmlkcy10YWItbW9yZS1tZW51LWl0ZW0pIHtcbiAgZGl2IGEgLmlkcy1zdWItdGFiLXRleHR7XG4gICAgdGV4dC1vdmVyZmxvdzogXHR1bnNldDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxufVxuXG4vLyBGaXhlcyB1c2FiaWxpdHkgaXNzdWVzIHdpdGggc29tZSBzbG90dGVkIElEUyBjb21wb25lbnRzIGluc2lkZSBtZW51IGl0ZW1zXG46OnNsb3R0ZWQoaWRzLXRleHQpIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi8vIEZvciBtZW51IGl0ZW1zIGluY2x1ZGluZyBhIGNsb3NlIGJ1dHRvbiwgc2hpZnQgYnkgMXB4IGZvciBhbGlnbm1lbnQncyBzYWtlXG46OnNsb3R0ZWQoaWRzLWljb25baWNvbj1cImNsb3NlXCJdKSB7XG4gIGluc2V0LWJsb2NrLXN0YXJ0OiAxcHg7XG59XG5cbi8vIFJlc2V0cyBwb3NpdGlvbiBydWxlcyBmb3IgbmVzdGVkIG1lbnVzXG46OnNsb3R0ZWQoaWRzLXBvcHVwLW1lbnUpIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbn1cblxuOmhvc3QoW2hpZGRlbl0pIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmlkcy1zdWItdGFiIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LWZhbWlseTogdmFyKC0taWRzLWZvbnQtZmFtaWx5LWRlZmF1bHQpLCB2YXIoLS1pZHMtZm9udC1mYW1pbHktc3lzdGVtLXNhbnMpO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDUwbXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC42LCAxKTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgJi5kaXNtaXNzaWJsZSB7XG4gICAgZGlzcGxheTogZmxleDtcblxuICAgIGEge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDMycHgpO1xuICAgIH1cbiAgfVxuXG4gIGlkcy1pY29uLFxuICAuaWRzLWljb24sXG4gIC5pZHMtc3ViLXRhYi1kaXNwbGF5LWljb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwbGFjZS1zZWxmOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIFN0YW5kYXJkIFJ1bGVzIGZvciBhIG1lbnUgaXRlbSB3aXRoIG5vIGljb25zXG4gIGEge1xuICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAxMnB4O1xuICAgIHBhZGRpbmctaW5saW5lLWVuZDogdmFyKC0taWRzLXNwYWNlLXhzKTtcbiAgICBwYWRkaW5nLWJsb2NrOiB2YXIoLS1pZHMtbWVudS1pdGVtLXBhZGRpbmcpO1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZm9udC1zaXplOiB2YXIoLS1pZHMtbWVudS1pdGVtLWZvbnQtc2l6ZSk7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAwIGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgdXNlci1zZWxlY3Q6IGluaGVyaXQ7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIC8vIERpc2FibGUgZGVmYXVsdCBicm93c2VyIGZvY3VzIHN0YXRlLlxuICAgIC8vIChjb21tZW50IHRoaXMgb3V0IHRvIGRlYnVnIHRoZSB0cnVlIG1lbnUgZm9jdXMgc3RhdGUpXG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgIH1cblxuICAgID4gKiB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIFdyYXBzIHNsb3R0ZWQgaWNvbnMgaW5zaWRlIG1lbnUgaXRlbXMgYW5kIG5lZWRzIGl0cyBvd24gY2VudGVyaW5nIHJ1bGVzXG4gICAgLmlkcy1zdWItdGFiLWljb24ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICBpZHMtaWNvbixcbiAgICAuaWRzLWljb24sXG4gICAgLmlkcy1zdWItdGFiLWRpc3BsYXktaWNvbiB7XG4gICAgICBncmlkLWNvbHVtbi1zdGFydDogMTtcbiAgICB9XG5cbiAgICAuaWRzLXN1Yi10YWItdGV4dCB7XG4gICAgICBncmlkLWNvbHVtbi1zdGFydDogMjtcblxuICAgICAgc3BhbixcbiAgICAgIC5pZHMtdGV4dCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cblxuICAgICAgOjpzbG90dGVkKGlkcy10ZXh0KSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaWRzLXN1Yi10YWItc3VibWVudS1pY29uIHtcbiAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDEycHg7XG4gICAgICBncmlkLWNvbHVtbi1zdGFydDogMztcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlWigtOTBkZWcpO1xuICAgIH1cbiAgfVxuXG4gIC5pZHMtc3ViLXRhYi10ZXh0IHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAmOm5vdCgudGV4dC1jZW50ZXIpLFxuICAmOm5vdCgudGV4dC1zdGFydCksXG4gICY6bm90KC50ZXh0LWVuZCkge1xuICAgIC5pZHMtc3ViLXRhYi10ZXh0IHtcbiAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgIH1cbiAgfVxuXG4gICYudGV4dC1jZW50ZXIsXG4gICYudGV4dC1zdGFydCxcbiAgJi50ZXh0LWVuZCB7XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgLmlkcy1zdWItdGFiLXRleHQge1xuICAgICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtc3BhY2UteHMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYudGV4dC1jZW50ZXIge1xuICAgIGEge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgJi50ZXh0LXN0YXJ0IHtcbiAgICBhIHtcbiAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgICB9XG4gIH1cblxuICAmLnRleHQtZW5kIHtcbiAgICBhIHtcbiAgICAgIHRleHQtYWxpZ246IGVuZDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZW5kO1xuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0taWRzLW1lbnUtaXRlbS1jb2xvci10ZXh0LWRpc2FibGVkKTtcblxuICAgIC8vIERpc2FibGUgYWxsIG1vdXNlIGludGVyYWN0aW9uc1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICAgIGEge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgaWRzLWljb24sXG4gICAgLmlkcy1pY29uIHtcbiAgICAgIGZpbGw6IHZhcigtLWlkcy1tZW51LWl0ZW0tY29sb3ItdGV4dC1kaXNhYmxlZCk7XG4gICAgfVxuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIEhpZGRlbiBzdGF0ZVxuXG4gICYuaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIEhpZ2hsaWdodGVkIHN0YXRlXG5cbiAgJi5oaWdobGlnaHRlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLW1lbnUtaXRlbS1oaWdobGlnaHQtY29sb3IpO1xuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIFJ1bGVzIGZvciBhIG1lbnUgaXRlbSB3aXRoIHNob3J0Y3V0IGtleXNcblxuICAmLmhhcy1zaG9ydGN1dHMge1xuICAgIGEge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAwIG1pbm1heCgxMDBweCwgYXV0bykgMWZyO1xuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBSdWxlcyBmb3IgYSBtZW51IGl0ZW0gd2l0aCBhbiBpY29uXG5cbiAgJi5oYXMtaWNvbiB7XG4gICAgYSB7XG4gICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0taWRzLXNwYWNlLXhzKTtcbiAgICAgIHBhZGRpbmctaW5saW5lLWVuZDogMTRweDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMzBweCBhdXRvO1xuICAgIH1cbiAgfVxuXG4gICYuaGFzLXNob3J0Y3V0cy5oYXMtaWNvbiB7XG4gICAgYSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDMwcHggY2FsYyg1MCUgLSAxNXB4KSBjYWxjKDUwJSAtIDE1cHgpO1xuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBSdWxlcyBmb3IgYSBtZW51IGl0ZW0gd2l0aCBhIGNoZWNrbWFya1xuXG4gICYuaGFzLWNoZWNrbWFyayxcbiAgJi5oYXMtbXVsdGktY2hlY2ttYXJrIHtcbiAgICBhIHtcbiAgICAgIHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1pZHMtc3BhY2UtMnhzKTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMzBweCAwIG1heC1jb250ZW50IDA7XG5cbiAgICAgIC8vIFdoZW4gY2hlY2ttYXJrcyBhcmUgcHJlc2VudCwgYWxsIGNvbHVtbiBwbGFjZW1lbnRzIGNoYW5nZVxuICAgICAgLmNoZWNrIHtcbiAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IDE7XG4gICAgICB9XG5cbiAgICAgIGlkcy1pY29uLFxuICAgICAgLmlkcy1pY29uLFxuICAgICAgLmlkcy1zdWItdGFiLWRpc3BsYXktaWNvbiB7XG4gICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAyO1xuICAgICAgfVxuXG4gICAgICAuaWRzLXN1Yi10YWItdGV4dCB7XG4gICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAzO1xuICAgICAgfVxuXG4gICAgICAuaWRzLXN1Yi10YWItc3VibWVudS1pY29uIHtcbiAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IDQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmlkcy1zdWItdGFiLXN1Ym1lbnUtaWNvbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBpbnNldC1ibG9jay1zdGFydDogM3B4O1xuICAgICAgaW5zZXQtaW5saW5lLXN0YXJ0OiA4cHg7XG4gICAgfVxuICB9XG5cbiAgJi5oYXMtc2hvcnRjdXRzLmhhcy1jaGVja21hcmssXG4gICYuaGFzLXNob3J0Y3V0cy5oYXMtbXVsdGktY2hlY2ttYXJrIHtcbiAgICBhIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMzBweCAwIDUwJSBjYWxjKDUwJSAtIDMwcHgpO1xuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBSdWxlcyBmb3IgYSBtZW51IGl0ZW0gd2l0aCBhIHN1Ym1lbnUgKyBzdWJtZW51IGljb25cblxuICAmLmhhcy1zdWJtZW51IHtcbiAgICBhIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMCBjYWxjKDEwMCUgLSAyNHB4KSAyOXB4O1xuICAgIH1cblxuICAgIC8vIE5PVEU6IFN1Ym1lbnUgaXRlbXMgY29udGFpbiB0aGlzIGVsZW1lbnQsXG4gICAgLy8gYnV0IGhpZGUgaXQgZnJvbSB0aGUgZ3JpZCB0ZW1wbGF0ZSBjYWxjdWxhdGlvblxuICAgIC5pZHMtc3ViLXRhYi1zaG9ydGN1dHMge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgLy8gUnVsZXMgZm9yIGEgbWVudSBpdGVtIHdpdGggYSBjaGVja21hcmtcblxuICAmLmhhcy1pY29uLmhhcy1jaGVja21hcmssXG4gICYuaGFzLWljb24uaGFzLW11bHRpLWNoZWNrbWFyayB7XG4gICAgYSB7XG4gICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMDtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMzBweCAzMHB4IGNhbGMoMTAwJSAtIDYwcHgpO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEycHgpO1xuICAgIH1cbiAgfVxuXG4gICYuaGFzLWljb24uaGFzLWNoZWNrbWFyay5hbGlnbi1pY29uLWVuZCxcbiAgJi5oYXMtaWNvbi5oYXMtbXVsdGktY2hlY2ttYXJrLmFsaWduLWljb24tZW5kIHtcbiAgICBhIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMzBweCBjYWxjKDEwMCUgLSA1NXB4KSAyNXB4O1xuXG4gICAgICAuaWRzLXN1Yi10YWItdGV4dCB7XG4gICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAyO1xuICAgICAgfVxuXG4gICAgICAuaWRzLXN1Yi10YWItaWNvbiB7XG4gICAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiAzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuaGFzLXNob3J0Y3V0cy5oYXMtaWNvbi5oYXMtY2hlY2ttYXJrLFxuICAmLmhhcy1zaG9ydGN1dHMuaGFzLWljb24uaGFzLW11dGx0LWNoZWNrbWFyayB7XG4gICAgYSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDI0cHggMzBweCBjYWxjKDUwJSAtIDI0cHgpIGNhbGMoNTAlIC0gMjRweCk7XG4gICAgfVxuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIFJ1bGVzIGZvciBhIG1lbnUgaXRlbSB3aXRoIGFuIGFjdGlvbi1kZWZpbmVkIGljb24sIGFuZCBhIHN1Ym1lbnUgKyBzdWJtZW51IGljb25cbiAgLy8gQWxzbyBmb3IgYSBtZW51IGl0ZW0gd2l0aCBhIGNoZWNrbWFyaywgYW5kIGEgc3VibWVudSArIHN1Ym1lbnUgaWNvblxuXG4gICYuaGFzLWljb24uaGFzLXN1Ym1lbnUge1xuICAgIGEge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAzMHB4IGNhbGMoMTAwJSAtIDUzcHgpIDMxcHg7XG4gICAgfVxuICB9XG5cbiAgLy8gSWNvbiBzbG90IGlzIHN0aWxsIHByZXNlbnQgKGJ1dCBoaWRkZW4pIGluIHRoaXMgY29uZmlndXJhdGlvblxuICAmLmhhcy1jaGVja21hcmsuaGFzLXN1Ym1lbnUsXG4gICYuaGFzLW11bHRpLWNoZWNrbWFyay5oYXMtc3VibWVudSB7XG4gICAgYSB7XG4gICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDMwcHggMCBjYWxjKDEwMCUgLSA1NXB4KSAyNXB4O1xuICAgIH1cbiAgfVxuXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAvLyBSdWxlcyBmb3IgYSBtZW51IGl0ZW0gd2l0aCBhIGNoZWNrbWFyaywgYWN0aW9uLWRlZmluZWQgaWNvbiwgYW5kIGEgc3VibWVudSArIHN1Ym1lbnUgaWNvblxuXG4gICYuaGFzLWljb24uaGFzLWNoZWNrbWFyay5oYXMtc3VibWVudSxcbiAgJi5oYXMtaWNvbi5oYXMtbXVsdGktY2hlY2ttYXJrLmhhcy1zdWJtZW51IHtcbiAgICBhIHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMzBweCAzMHB4IGNhbGMoMTAwJSAtIDg1cHgpIDI1cHg7XG4gICAgfVxuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIEluaGVyaXRzIGEgdGV4dCBjb2xvciBmcm9tIGEgY29udGFpbmluZyBlbGVtZW50XG5cbiAgJjpub3QoLmluaGVyaXQtY29sb3IpIHtcbiAgICAmOm5vdCguZGlzYWJsZWQpIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1pZHMtbWVudS1pdGVtLWNvbG9yLXRleHQtZGVmYXVsdCk7XG4gICAgfVxuICB9XG5cbiAgJi5pbmhlcml0LWNvbG9yIHtcbiAgICAmOm5vdCguZGlzYWJsZWQpIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gIC8vIENvbG9yIFZhcmlhbnQ6IE1vZHVsZSBOYXZcblxuICAmLmNvbG9yLXZhcmlhbnQtbW9kdWxlLW5hdiB7XG4gICAgY29sb3I6IHZhcigtLWlkcy1tb2R1bGUtbmF2LXNldHRpbmdzLW1lbnUtaXRlbS10ZXh0LWNvbG9yKTtcblxuICAgIGEge1xuICAgICAgcGFkZGluZy1ibG9jazogMTBweDtcbiAgICB9XG5cbiAgICAuaWRzLXN1Yi10YWItdGV4dCB7XG4gICAgICBjb2xvcjogdmFyKC0taWRzLW1vZHVsZS1uYXYtc2V0dGluZ3MtbWVudS1pdGVtLXRleHQtY29sb3IpO1xuICAgICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IHZhcigtLWlkcy1tb2R1bGUtbmF2LWFjY29yZGlvbi1ndXR0ZXItc2l6ZSk7XG4gICAgfVxuICB9XG59XG5cbi5pZHMtc3ViLXRhYi1zaG9ydGN1dHMge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdGV4dC1hbGlnbjogZW5kO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQ2hlY2ttYXJrIFN0eWxlc1xuXG4uaGFzLWNoZWNrbWFyayB7XG4gIHNwYW4uY2hlY2sge1xuICAgIEBpbmNsdWRlIGNoZWNrLWJhc2UoKTtcbiAgfVxuXG4gICYuc2VsZWN0ZWQge1xuICAgIHNwYW4uY2hlY2s6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGNoZWNrLWljb24oKTtcblxuICAgICAgbGVmdDogMTFweDtcbiAgICAgIG1hcmdpbi10b3A6IHZhcigtLWlkcy1zcGFjZS0zeHMpO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgc3Bhbi5jaGVjazo6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBjaGVjay1pY29uLWRpc2FibGVkKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5oYXMtbXVsdGktY2hlY2ttYXJrIHtcbiAgc3Bhbi5jaGVjayB7XG4gICAgQGluY2x1ZGUgY2hlY2tib3gtdW5jaGVja2VkKCk7XG5cbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAganVzdGlmeS1zZWxmOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMDtcbiAgfVxuXG4gICYuZGlzYWJsZWQgc3Bhbi5jaGVjayAge1xuICAgIG9wYWNpdHk6IHZhcigtLWlkcy1tZW51LWNvbG9yLWRpc2FibGVkKTtcbiAgfVxuXG4gICYuc2VsZWN0ZWQge1xuICAgIHNwYW4uY2hlY2sge1xuICAgICAgQGluY2x1ZGUgY2hlY2tib3gtY2hlY2tlZCgpO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIGNoZWNrYm94LWNoZWNrZWQtYWZ0ZXIoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmRpc2FibGVkIHtcbiAgICAmLnNlbGVjdGVkIHtcbiAgICAgIHNwYW4uY2hlY2sge1xuICAgICAgICBAaW5jbHVkZSBjaGVja2JveC1kaXNhYmxlZC1jaGVja2VkKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFJUTCBGaXhlc1xuLmlkcy1zdWItdGFiW2Rpcj0ncnRsJ10sXG4uaWRzLXN1Yi10YWIucnRsIHtcbiAgYSAuaWRzLXN1Yi10YWItc3VibWVudS1pY29uIHtcbiAgICBncmlkLWNvbHVtbi1zdGFydDogMztcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZVooOTBkZWcpO1xuICB9XG59XG4iLCIvKipcbiAqIEJhc2UgU3R5bGVzL01peGlucyBmb3IgSWRzIFN1YiBUYWJzIENvbXBvbmVudCBhbmQgYWxsIHN1YmNvbXBvbmVudHMuXG4gKi9cbi8vIFJlc2V0cyB0aGUgVXNlci1BZ2VudCBzdHlsZXNoZWV0IHJ1bGVzIGZvciBgPHVsPmAgaW4gQ2hyb21lXG5AbWl4aW4gcmVzZXQtbWVudS1zdHlsZSgpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ibG9jay1lbmQ6IDA7XG4gIG1hcmdpbi1ibG9jay1zdGFydDogMDtcbiAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDA7XG59XG4iLCIvKipcbiAqIFNpbmdsZSBDaGVja21hcmsgTWl4aW5cbiAqL1xuXG4vLyBVc2UgdGhpcyBvbiBhbiBlbGVtZW50IHRoYXQgc2VydmVzIGFzIGEgY2hlY2ttYXJrIGNvbnRhaW5lclxuQG1peGluIGNoZWNrLWJhc2UoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLy8gVXNlIHRoaXMgb24gdGhhdCBzYW1lIGVsZW1lbnQncyBgOjphZnRlcmAgcHNldWRvLWVsZW1lbnRcbkBtaXhpbiBjaGVjay1pY29uKCkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIGJvcmRlci1jb2xvcjpcbiAgICB2YXIoLS1pZHMtbWVudS1jaGVjay1jb2xvci1kZWZhdWx0KVxuICAgIHZhcigtLWlkcy1tZW51LWNoZWNrLWNvbG9yLWRlZmF1bHQpXG4gICAgdmFyKC0taWRzLW1lbnUtY2hlY2stY29sb3ItZGVmYXVsdClcbiAgICB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAwIDJweCAycHggMDtcbiAgY29udGVudDogJyAnO1xuICBoZWlnaHQ6IDExcHg7XG4gIHdpZHRoOiA1cHg7XG59XG5cbi8vIFVzZSB0aGlzIG9uIHRvcCBvZiB0aGUgYWJvdmUgZGVmaW5pdGlvbixcbi8vIGZvciBzaXR1YXRpb25zIHdoZXJlIHRoaXMgY2hlY2ttYXJrIGNhbiBhcHBlYXIgdG8gYmUgXCJkaXNhYmxlZFwiXG5AbWl4aW4gY2hlY2staWNvbi1kaXNhYmxlZCgpIHtcbiAgYm9yZGVyLWNvbG9yOlxuICAgIHZhcigtLWlkcy1tZW51LWNoZWNrLWNvbG9yLWRpc2FibGVkKVxuICAgIHZhcigtLWlkcy1tZW51LWNoZWNrLWNvbG9yLWRpc2FibGVkKVxuICAgIHZhcigtLWlkcy1tZW51LWNoZWNrLWNvbG9yLWRpc2FibGVkKVxuICAgIHRyYW5zcGFyZW50O1xufVxuIiwiLyoqXG4gKiBDaGVja2JveCBNaXhpbnMuXG4gKi9cbkB1c2UgJ3Nhc3M6bGlzdCc7XG5AdXNlICcuLi8uLi90aGVtZXMvbWl4aW5zL2lkcy1jb3JlLW1peGlucycgYXMgbWl4aW5zO1xuXG4vLyBVbmNoZWNrZWRcbkBtaXhpbiBjaGVja2JveC11bmNoZWNrZWQoKSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyOiB2YXIoLS1pZHMtY2hlY2tib3gtYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0taWRzLWNoZWNrYm94LWJvcmRlci1yYWRpdXMpO1xuICBoZWlnaHQ6IDE0cHg7XG4gIHdpZHRoOiAxNHB4O1xuICBsZWZ0OiAwO1xuICB0b3A6IDNweDtcbn1cblxuQG1peGluIGNoZWNrYm94LXVuY2hlY2tlZC1lcnJvciB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWNoZWNrYm94LWNvbG9yLWJvcmRlci1lcnJvcik7XG59XG5cbi8vIENoZWNrZWRcbkBtaXhpbiBjaGVja2JveC1jaGVja2VkKCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtY2hlY2tib3gtY29sb3ItYmFja2dyb3VuZC1zZWxlY3RlZCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWNoZWNrYm94LWNvbG9yLWJvcmRlci1zZWxlY3RlZCk7XG59XG5cbkBtaXhpbiBjaGVja2JveC1jaGVja2VkLWFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyOiB2YXIoLS1pZHMtZm9udC1zaXplLTJ4cykgc29saWQgdmFyKC0taWRzLWNoZWNrYm94LWNvbG9yLWJvcmRlci1zZWxlY3RlZC1hZnRlcik7XG4gIGJvcmRlci13aWR0aDogdmFyKC0taWRzLWNoZWNrYm94LWJvcmRlci13aWR0aC1zZWxlY3RlZC1hZnRlcik7XG4gIGFuaW1hdGlvbjogY2hlY2sgMC4xNXM7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgY29udGVudDogJyc7XG4gIGhlaWdodDogMTBweDtcbiAgbGVmdDogNHB4O1xuICB0b3A6IDA7XG4gIHdpZHRoOiA0cHg7XG59XG5cbi8vIEluZGV0ZXJtaW5hdGVcbkBtaXhpbiBjaGVja2JveC1pbmRldGVybWluYXRlKCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pZHMtY2hlY2tib3gtY29sb3ItYmFja2dyb3VuZC1pbmRldGVybWluYXRlKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pZHMtY2hlY2tib3gtY29sb3ItYm9yZGVyLWluZGV0ZXJtaW5hdGUpO1xufVxuXG5AbWl4aW4gY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1hZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYW5pbWF0aW9uOiBjaGVja2luZGV0ZXJtaW5hdGUgMC4xNXM7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pZHMtY2hlY2tib3gtY29sb3ItYm9yZGVyLWluZGV0ZXJtaW5hdGUtYWZ0ZXIpO1xuICBib3JkZXItd2lkdGg6IHZhcigtLWlkcy1jaGVja2JveC1ib3JkZXItd2lkdGgtaW5kZXRlcm1pbmF0ZSk7XG4gIGNvbnRlbnQ6ICcnO1xuICBoZWlnaHQ6IDZweDtcbiAgbGVmdDogMnB4O1xuICB0b3A6IDA7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgd2lkdGg6IDEwcHg7XG59XG5cbi8vIERpc2FibGVkXG5AbWl4aW4gY2hlY2tib3gtZGlzYWJsZWQtdW5jaGVja2VkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWNoZWNrYm94LWNvbG9yLWJhY2tncm91bmQtZGlzYWJsZWQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1jaGVja2JveC1jb2xvci1ib3JkZXItZGlzYWJsZWQpO1xuICBjdXJzb3I6IHZhcigtLWlkcy1jdXJzb3ItZGVmYXVsdCk7XG59XG5cbkBtaXhpbiBjaGVja2JveC1kaXNhYmxlZC11bmNoZWNrZWQtZXJyb3Ige1xuICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1jaGVja2JveC1jb2xvci1ib3JkZXItZm9jdXMtZXJyb3IpO1xufVxuXG5AbWl4aW4gY2hlY2tib3gtZGlzYWJsZWQtY2hlY2tlZCgpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0taWRzLWNoZWNrYm94LWNvbG9yLWJhY2tncm91bmQtc2VsZWN0ZWQtZGlzYWJsZWQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1jaGVja2JveC1jb2xvci1ib3JkZXItc2VsZWN0ZWQtZGlzYWJsZWQpO1xufVxuXG5AbWl4aW4gY2hlY2tib3gtZGlzYWJsZWQtdGV4dCB7XG4gIGN1cnNvcjogdmFyKC0taWRzLWN1cnNvci1kZWZhdWx0KTtcbiAgY29sb3I6IHZhcigtLWlkcy1jaGVja2JveC1jb2xvci10ZXh0LWRpc2FibGVkKTtcbn1cblxuLy8gRm9jdXNcbkBtaXhpbiBjaGVja2JveC1mb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0taWRzLWNoZWNrYm94LWNvbG9yLWJvcmRlci1mb2N1cyk7XG4gIGJveC1zaGFkb3c6IHZhcigtLWlkcy1jaGVja2JveC1zaGFkb3ctZm9jdXMpO1xufVxuXG5AbWl4aW4gY2hlY2tib3gtZm9jdXMtZXJyb3Ige1xuICBib3JkZXItY29sb3I6IHZhcigtLWlkcy1jaGVja2JveC1jb2xvci1ib3JkZXItZm9jdXMtZXJyb3IpO1xuICBib3gtc2hhZG93OiB2YXIoLS1pZHMtY2hlY2tib3gtc2hhZG93LWZvY3VzLWVycm9yKTtcbn1cblxuLy8gQ29sb3JlZFxuJGNvbG9yLW5hbWVzOiAnZ3JlZW4nICdwdXJwbGUnICdibHVlJyAnb3JhbmdlJyAncmVkJztcbiRjb2xvci12YXJzOiAtLWlkcy1jb2xvci1ncmVlbi03MCAtLWlkcy1jb2xvci1wdXJwbGUtNzAgLS1pZHMtY29sb3ItYmx1ZS03MCAtLWlkcy1jb2xvci1vcmFuZ2UtNzAgLS1pZHMtY29sb3ItcmVkLTcwO1xuXG5AbWl4aW4gY2hlY2tib3gtY29sb3JlZCgpIHtcbiAgQGVhY2ggJG5hbWUgaW4gJGNvbG9yLW5hbWVzIHtcbiAgICAkaTogbGlzdC5pbmRleCgkY29sb3ItbmFtZXMsICRuYW1lKTtcbiAgICAkY29sb3I6IHZhcigje2xpc3QubnRoKCRjb2xvci12YXJzLCAkaSl9KTtcblxuICAgICZbY29sb3I9JyN7JG5hbWV9J10gaW5wdXRbdHlwZT0nY2hlY2tib3gnXSB7XG4gICAgICB+IC5jaGVja21hcmsge1xuICAgICAgICBAaW5jbHVkZSBjaGVja2JveC1jb2xvcmVkLWJveCgkY29sb3IpO1xuICAgICAgfVxuXG4gICAgICAmOmRpc2FibGVkIH4gLmNoZWNrbWFyayB7XG4gICAgICAgIEBpbmNsdWRlIGNoZWNrYm94LWRpc2FibGVkLXVuY2hlY2tlZCgpO1xuICAgICAgfVxuXG4gICAgICAmOmRpc2FibGVkOmNoZWNrZWQgfiAuY2hlY2ttYXJrIHtcbiAgICAgICAgQGluY2x1ZGUgY2hlY2tib3gtZGlzYWJsZWQtY2hlY2tlZCgpO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIH4gLmNoZWNrbWFyayB7XG4gICAgICAgIEBpbmNsdWRlIGNoZWNrYm94LWNvbG9yZWQtYm94LWZvY3VzKCRjb2xvcik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBjaGVja2JveC1jb2xvcmVkLWJveCgkY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcbn1cblxuQG1peGluIGNoZWNrYm94LWNvbG9yZWQtYm94LWZvY3VzKCRjb2xvcikge1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcbn1cblxuLy8gQW5pbWF0aW9uc1xuQGtleWZyYW1lcyBjaGVjayB7XG4gIDAlIHtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDhweDtcbiAgICB3aWR0aDogMDtcbiAgfVxuXG4gIDUwJSB7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiA4cHg7XG4gICAgd2lkdGg6IDRweDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIGhlaWdodDogMTBweDtcbiAgICBsZWZ0OiA0cHg7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiA0cHg7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBjaGVja2luZGV0ZXJtaW5hdGUge1xuICAwJSB7XG4gICAgd2lkdGg6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICB3aWR0aDogMTBweDtcbiAgfVxufVxuIl19 */