tide-design-system 2.0.14 → 2.0.16
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/dist/{IconAccountBalance-07f1fe86.js → IconAccountBalance-3310f85a.js} +2 -2
- package/dist/{IconAdd-f04ee0d6.js → IconAdd-b83ff922.js} +2 -2
- package/dist/{IconAiDescription-d087da58.js → IconAiDescription-019c6cb0.js} +2 -2
- package/dist/{IconAlignSpace-d82fab2a.js → IconAlignSpace-1c0ddeee.js} +2 -2
- package/dist/{IconApplePay-061e6fbc.js → IconApplePay-85435892.js} +2 -2
- package/dist/{IconArrowBack-f9e1d105.js → IconArrowBack-f5747d22.js} +2 -2
- package/dist/{IconArrowForward-e3f32caf.js → IconArrowForward-419a9d1b.js} +2 -2
- package/dist/{IconArrowRight-bf93dc71.js → IconArrowRight-1f21c8f3.js} +2 -2
- package/dist/{IconAssignment-fd5128f6.js → IconAssignment-99c08650.js} +2 -2
- package/dist/{IconAwardStar-ba435e41.js → IconAwardStar-efd1d356.js} +2 -2
- package/dist/{IconBookmark-015d6d78.js → IconBookmark-2532cca9.js} +2 -2
- package/dist/{IconCalendarMonth-54b9336d.js → IconCalendarMonth-4e78fd12.js} +2 -2
- package/dist/{IconCall-3b308b40.js → IconCall-d9933e4e.js} +2 -2
- package/dist/{IconCheck-13be7e34.js → IconCheck-71c8fd89.js} +2 -2
- package/dist/{IconChevronLeft-f2c842bd.js → IconChevronLeft-46ce3729.js} +2 -2
- package/dist/{IconChevronRight-6c8f415f.js → IconChevronRight-fecae855.js} +2 -2
- package/dist/{IconClear-87c5429b.js → IconClear-c198f9c5.js} +2 -2
- package/dist/{IconClose-5b6b6304.js → IconClose-bb721acb.js} +2 -2
- package/dist/{IconCycle-7f315b4c.js → IconCycle-0ad3bac6.js} +2 -2
- package/dist/{IconDelete-06825f85.js → IconDelete-11cf30cd.js} +2 -2
- package/dist/{IconDiamond-90b106e1.js → IconDiamond-cfe74831.js} +2 -2
- package/dist/{IconEdit-15e77ec8.js → IconEdit-110896ea.js} +2 -2
- package/dist/{IconError-9e4aa896.js → IconError-8e07e8d8.js} +2 -2
- package/dist/{IconExpandContent-cb8a4a76.js → IconExpandContent-61be92df.js} +2 -2
- package/dist/{IconExpandLess-9794a1c1.js → IconExpandLess-7993bdaa.js} +2 -2
- package/dist/{IconExpandMore-9da1db29.js → IconExpandMore-22c16c54.js} +2 -2
- package/dist/{IconFacebook-c0a3de96.js → IconFacebook-81317031.js} +2 -2
- package/dist/{IconFavorite-93d33370.js → IconFavorite-c23ab4f2.js} +2 -2
- package/dist/{IconFavoriteFilled-1a2039c0.js → IconFavoriteFilled-fa554072.js} +2 -2
- package/dist/{IconFormatBold-f47143a6.js → IconFormatBold-18fb5045.js} +2 -2
- package/dist/{IconFormatItalic-acd704ed.js → IconFormatItalic-95e92ac6.js} +2 -2
- package/dist/{IconFormatListBulleted-7ee56e91.js → IconFormatListBulleted-e6642701.js} +2 -2
- package/dist/{IconForum-438094b8.js → IconForum-a6f41a25.js} +2 -2
- package/dist/{IconGavel-6349fae0.js → IconGavel-276610c8.js} +2 -2
- package/dist/{IconGoogle-4758a397.js → IconGoogle-7b38a687.js} +2 -2
- package/dist/{IconGooglePay-4faa49e9.js → IconGooglePay-e159daca.js} +2 -2
- package/dist/{IconGrid-2cbc4858.js → IconGrid-4d04fd29.js} +2 -2
- package/dist/{IconHelp-2ba9a862.js → IconHelp-91d7271b.js} +2 -2
- package/dist/{IconInfo-f6d67f0f.js → IconInfo-5a67f445.js} +2 -2
- package/dist/{IconInsertText-f39cc0d9.js → IconInsertText-d28fb9bb.js} +2 -2
- package/dist/{IconInstagram-45c42686.js → IconInstagram-6be667bc.js} +2 -2
- package/dist/{IconIosShare-de3497b4.js → IconIosShare-18cd342e.js} +2 -2
- package/dist/{IconLayout-1cbc27af.js → IconLayout-b2e988b8.js} +2 -2
- package/dist/{IconLinkedIn-1c2b53e8.js → IconLinkedIn-053d7e34.js} +2 -2
- package/dist/{IconLocalShipping-76dd9aa9.js → IconLocalShipping-2f809419.js} +2 -2
- package/dist/{IconLock-3fbd2466.js → IconLock-17f22d70.js} +2 -2
- package/dist/{IconMail-333bee2a.js → IconMail-acced79c.js} +2 -2
- package/dist/{IconMenu-ccbb052e.js → IconMenu-9b47fb3f.js} +2 -2
- package/dist/{IconMoreHoriz-08f56881.js → IconMoreHoriz-c32b7e23.js} +2 -2
- package/dist/{IconNotifications-ac412a56.js → IconNotifications-43d317fe.js} +2 -2
- package/dist/{IconOpenInNew-a5b625d5.js → IconOpenInNew-d9d8a644.js} +2 -2
- package/dist/{IconPalette-26c23813.js → IconPalette-1f521f65.js} +2 -2
- package/dist/{IconPaypal-a17b8d5c.js → IconPaypal-03d3da7f.js} +2 -2
- package/dist/{IconPerson-11211fa3.js → IconPerson-5c4cfd25.js} +2 -2
- package/dist/{IconPhotoCamera-dbc2d043.js → IconPhotoCamera-fdcb57bc.js} +2 -2
- package/dist/{IconPinterest-c798a6c1.js → IconPinterest-1fac1ad7.js} +2 -2
- package/dist/{IconPlayArrow-e3a0e781.js → IconPlayArrow-5f738f2c.js} +2 -2
- package/dist/{IconRemove-204c608a.js → IconRemove-cac0677f.js} +2 -2
- package/dist/{IconRoundedCorners-5d535ce0.js → IconRoundedCorners-f9a3e463.js} +2 -2
- package/dist/{IconSearch-a0ba62e1.js → IconSearch-2220b9de.js} +2 -2
- package/dist/{IconSell-8f72fc12.js → IconSell-12e3c5fb.js} +2 -2
- package/dist/{IconShare-051780c5.js → IconShare-7e5bfc3f.js} +2 -2
- package/dist/{IconShoppingCart-0249642d.js → IconShoppingCart-e5d1931c.js} +2 -2
- package/dist/{IconSms-313af13d.js → IconSms-b5d7cc7e.js} +2 -2
- package/dist/{IconStar-d440c310.js → IconStar-14220b7c.js} +2 -2
- package/dist/{IconSwapVert-d37d084e.js → IconSwapVert-62d07fe8.js} +2 -2
- package/dist/{IconThreeDRotation-c3eaf078.js → IconThreeDRotation-7d4882fe.js} +2 -2
- package/dist/{IconTrophy-d966c7d5.js → IconTrophy-3d015794.js} +2 -2
- package/dist/{IconTune-b935f589.js → IconTune-d9d8ab5e.js} +2 -2
- package/dist/{IconTwitter-4804a34e.js → IconTwitter-bc151a2b.js} +2 -2
- package/dist/{IconVideocam-90d033aa.js → IconVideocam-9943e86e.js} +2 -2
- package/dist/{IconViewInAr-913ab940.js → IconViewInAr-a4f0fb07.js} +2 -2
- package/dist/{IconVisibility-25b726ff.js → IconVisibility-5b6f2273.js} +2 -2
- package/dist/{IconVolumeOff-950bb211.js → IconVolumeOff-50393cc1.js} +2 -2
- package/dist/{IconVolumeOn-14ab82fc.js → IconVolumeOn-1c8c277d.js} +2 -2
- package/dist/{IconWarning-96db8210.js → IconWarning-b5878614.js} +2 -2
- package/dist/{IconYoutube-51f24606.js → IconYoutube-55b22548.js} +2 -2
- package/dist/css/dynamic-buttons.css +22 -22
- package/dist/index-e7aacf31.js +2106 -0
- package/dist/style.css +1 -1
- package/dist/tide-design-system.js +1 -1
- package/package.json +1 -1
- package/dist/index-a734dcbd.js +0 -2126
package/dist/index-a734dcbd.js
DELETED
|
@@ -1,2126 +0,0 @@
|
|
|
1
|
-
import { defineComponent as v, openBlock as l, createElementBlock as r, normalizeClass as a, unref as t, ref as N, watch as Q, defineAsyncComponent as ue, markRaw as Re, createBlock as S, resolveDynamicComponent as q, createCommentVNode as A, toDisplayString as L, onMounted as j, createElementVNode as E, createVNode as G, renderSlot as W, withCtx as J, computed as F, Fragment as $, renderList as z, createTextVNode as ce, onUnmounted as Ne, onUpdated as Ae, normalizeStyle as ie, onBeforeUnmount as Le, getCurrentInstance as ee, withDirectives as ae, vModelSelect as pe, withModifiers as Te, vModelDynamic as ve, vModelText as Fe, Teleport as _e } from "vue";
|
|
2
|
-
const e = {
|
|
3
|
-
ALIGN: {
|
|
4
|
-
X: {
|
|
5
|
-
CENTER: "tide-text-center",
|
|
6
|
-
LEFT: "tide-text-left",
|
|
7
|
-
RIGHT: "tide-text-right"
|
|
8
|
-
},
|
|
9
|
-
Y: {
|
|
10
|
-
MIDDLE: "tide-align-middle"
|
|
11
|
-
}
|
|
12
|
-
},
|
|
13
|
-
AXIS1: {
|
|
14
|
-
AROUND: "tide-axis1-around",
|
|
15
|
-
BETWEEN: "tide-axis1-between",
|
|
16
|
-
CENTER: "tide-axis1-center",
|
|
17
|
-
END: "tide-axis1-end",
|
|
18
|
-
START: "tide-axis1-start"
|
|
19
|
-
},
|
|
20
|
-
AXIS2: {
|
|
21
|
-
AROUND: "tide-axis2-around",
|
|
22
|
-
CENTER: "tide-axis2-center",
|
|
23
|
-
END: "tide-axis2-end",
|
|
24
|
-
START: "tide-axis2-start"
|
|
25
|
-
},
|
|
26
|
-
BG: {
|
|
27
|
-
BLUR: "tide-bg-blur",
|
|
28
|
-
ERROR: "tide-bg-error",
|
|
29
|
-
INFO: "tide-bg-info",
|
|
30
|
-
PRIMARY: "tide-bg-primary",
|
|
31
|
-
SECONDARY: "tide-bg-secondary",
|
|
32
|
-
SUCCESS: "tide-bg-success",
|
|
33
|
-
SURFACE: {
|
|
34
|
-
ACCENT: "tide-bg-surface-accent",
|
|
35
|
-
ACCENT_VARIANT: "tide-bg-surface-accent-variant",
|
|
36
|
-
BRAND: "tide-bg-surface-brand",
|
|
37
|
-
DEFAULT: "tide-bg-surface",
|
|
38
|
-
ERROR: "tide-bg-surface-error",
|
|
39
|
-
FLOATING: "tide-bg-surface-floating",
|
|
40
|
-
GRADIENT: "tide-bg-surface-gradient",
|
|
41
|
-
INFO: "tide-bg-surface-info",
|
|
42
|
-
SUCCESS: "tide-bg-surface-success",
|
|
43
|
-
VARIANT: "tide-bg-surface-variant",
|
|
44
|
-
WARNING: "tide-bg-surface-warning"
|
|
45
|
-
},
|
|
46
|
-
WARNING: "tide-bg-warning"
|
|
47
|
-
},
|
|
48
|
-
BORDER: {
|
|
49
|
-
COLOR: {
|
|
50
|
-
DEFAULT: "tide-border",
|
|
51
|
-
FLOATING: "tide-border-floating",
|
|
52
|
-
HIGH: "tide-border-high",
|
|
53
|
-
LOW: "tide-border-low",
|
|
54
|
-
PRIMARY: "tide-border-primary"
|
|
55
|
-
},
|
|
56
|
-
RADIUS: {
|
|
57
|
-
QUARTER: "tide-radius-1/4",
|
|
58
|
-
HALF: "tide-radius-1/2",
|
|
59
|
-
ONE: "tide-radius-1",
|
|
60
|
-
FULL: "tide-radius-full"
|
|
61
|
-
},
|
|
62
|
-
BOTTOM: {
|
|
63
|
-
ONE: "tide-border-bottom-1",
|
|
64
|
-
TWO: "tide-border-bottom-2"
|
|
65
|
-
},
|
|
66
|
-
FULL: {
|
|
67
|
-
ONE: "tide-border-1",
|
|
68
|
-
TWO: "tide-border-2"
|
|
69
|
-
},
|
|
70
|
-
LEFT: {
|
|
71
|
-
ONE: "tide-border-left-1",
|
|
72
|
-
TWO: "tide-border-left-2"
|
|
73
|
-
},
|
|
74
|
-
RIGHT: {
|
|
75
|
-
ONE: "tide-border-right-1",
|
|
76
|
-
TWO: "tide-border-right-2"
|
|
77
|
-
},
|
|
78
|
-
TOP: {
|
|
79
|
-
ONE: "tide-border-top-1",
|
|
80
|
-
TWO: "tide-border-top-2"
|
|
81
|
-
}
|
|
82
|
-
},
|
|
83
|
-
BOX_SIZING: {
|
|
84
|
-
BORDER_BOX: "tide-box-border",
|
|
85
|
-
CONTENT_BOX: "tide-box-content"
|
|
86
|
-
},
|
|
87
|
-
BREAK_WORD: {
|
|
88
|
-
ON: "tide-break-word"
|
|
89
|
-
},
|
|
90
|
-
COLUMNS: {
|
|
91
|
-
ONE: "tide-columns-1",
|
|
92
|
-
TWO: "tide-columns-2",
|
|
93
|
-
THREE: "tide-columns-3",
|
|
94
|
-
FOUR: "tide-columns-4"
|
|
95
|
-
},
|
|
96
|
-
CURSOR: {
|
|
97
|
-
NOT_ALLOWED: "tide-cursor-not-allowed",
|
|
98
|
-
POINTER: "tide-cursor-pointer",
|
|
99
|
-
TEXT: "tide-cursor-text"
|
|
100
|
-
},
|
|
101
|
-
DISPLAY: {
|
|
102
|
-
BLOCK: "tide-display-block",
|
|
103
|
-
CONTENTS: "tide-contents",
|
|
104
|
-
FLEX: "tide-display-flex",
|
|
105
|
-
GRID: "tide-display-grid",
|
|
106
|
-
INITIAL: "initial",
|
|
107
|
-
INLINE: "tide-display-inline",
|
|
108
|
-
INLINE_BLOCK: "tide-display-inline-block",
|
|
109
|
-
INLINE_FLEX: "tide-display-inline-flex",
|
|
110
|
-
NONE: "tide-display-none"
|
|
111
|
-
},
|
|
112
|
-
FLEX: {
|
|
113
|
-
DIRECTION: {
|
|
114
|
-
COLUMN: "tide-flex-column",
|
|
115
|
-
COLUMN_REVERSE: "tide-flex-column-reverse",
|
|
116
|
-
ROW: "tide-flex-row",
|
|
117
|
-
ROW_REVERSE: "tide-row-reverse"
|
|
118
|
-
},
|
|
119
|
-
GROW: {
|
|
120
|
-
OFF: "tide-grow-none",
|
|
121
|
-
ON: "tide-grow"
|
|
122
|
-
},
|
|
123
|
-
SHRINK: {
|
|
124
|
-
OFF: "tide-shrink-none",
|
|
125
|
-
ON: "tide-shrink"
|
|
126
|
-
},
|
|
127
|
-
WRAP: "tide-flex-wrap"
|
|
128
|
-
},
|
|
129
|
-
FONT: {
|
|
130
|
-
COLOR: {
|
|
131
|
-
PRIMARY: "tide-font-on-primary",
|
|
132
|
-
SECONDARY: "tide-font-on-secondary",
|
|
133
|
-
SURFACE: {
|
|
134
|
-
BRAND: "tide-font-on-surface-brand",
|
|
135
|
-
DEFAULT: "tide-font-on-surface",
|
|
136
|
-
INVERSE: "tide-font-on-surface-inverse",
|
|
137
|
-
VARIANT: "tide-font-on-surface-variant",
|
|
138
|
-
VARIANT_INVERSE: "tide-font-on-surface-variant-inverse"
|
|
139
|
-
}
|
|
140
|
-
},
|
|
141
|
-
SIZE: {
|
|
142
|
-
TWELVE: "tide-font-12",
|
|
143
|
-
FOURTEEN: "tide-font-14",
|
|
144
|
-
SIXTEEN: "tide-font-16",
|
|
145
|
-
TWENTY: "tide-font-20",
|
|
146
|
-
TWENTY_FOUR: "tide-font-24",
|
|
147
|
-
THIRTY_TWO: "tide-font-32"
|
|
148
|
-
},
|
|
149
|
-
WEIGHT: {
|
|
150
|
-
FOUR_HUNDRED: "tide-font-400",
|
|
151
|
-
FIVE_HUNDRED: "tide-font-500",
|
|
152
|
-
SIX_HUNDRED: "tide-font-600",
|
|
153
|
-
SEVEN_HUNDRED: "tide-font-700"
|
|
154
|
-
}
|
|
155
|
-
},
|
|
156
|
-
GAP: {
|
|
157
|
-
QUARTER: "tide-gap-1/4",
|
|
158
|
-
HALF: "tide-gap-1/2",
|
|
159
|
-
ONE: "tide-gap-1",
|
|
160
|
-
TWO: "tide-gap-2",
|
|
161
|
-
FOUR: "tide-gap-4"
|
|
162
|
-
},
|
|
163
|
-
GRID: {
|
|
164
|
-
END: {
|
|
165
|
-
ONE: "tide-end-1",
|
|
166
|
-
TWO: "tide-end-2",
|
|
167
|
-
THREE: "tide-end-3",
|
|
168
|
-
FOUR: "tide-end-4",
|
|
169
|
-
FIVE: "tide-end-5",
|
|
170
|
-
SIX: "tide-end-6",
|
|
171
|
-
SEVEN: "tide-end-7",
|
|
172
|
-
EIGHT: "tide-end-8",
|
|
173
|
-
NINE: "tide-end-9",
|
|
174
|
-
TEN: "tide-end-10",
|
|
175
|
-
ELEVEN: "tide-end-11",
|
|
176
|
-
TWELVE: "tide-end-12",
|
|
177
|
-
THIRTEEN: "tide-end-13"
|
|
178
|
-
},
|
|
179
|
-
FLUID: "tide-fluid",
|
|
180
|
-
LAYOUT: "tide-grid-layout",
|
|
181
|
-
START: {
|
|
182
|
-
ZERO: "tide-start-0",
|
|
183
|
-
ONE: "tide-start-1",
|
|
184
|
-
TWO: "tide-start-2",
|
|
185
|
-
THREE: "tide-start-3",
|
|
186
|
-
FOUR: "tide-start-4",
|
|
187
|
-
FIVE: "tide-start-5",
|
|
188
|
-
SIX: "tide-start-6",
|
|
189
|
-
SEVEN: "tide-start-7",
|
|
190
|
-
EIGHT: "tide-start-8",
|
|
191
|
-
NINE: "tide-start-9",
|
|
192
|
-
TEN: "tide-start-10",
|
|
193
|
-
ELEVEN: "tide-start-11",
|
|
194
|
-
TWELVE: "tide-start-12"
|
|
195
|
-
},
|
|
196
|
-
XL: "tide-grid-xl"
|
|
197
|
-
},
|
|
198
|
-
HEIGHT: {
|
|
199
|
-
FULL: "tide-height-full"
|
|
200
|
-
},
|
|
201
|
-
LIST_BULLETS: {
|
|
202
|
-
OFF: "tide-list-none"
|
|
203
|
-
},
|
|
204
|
-
MARGIN: {
|
|
205
|
-
BOTTOM: {
|
|
206
|
-
QUARTER: "tide-margin-bottom-1/4",
|
|
207
|
-
HALF: "tide-margin-bottom-1/2",
|
|
208
|
-
ONE: "tide-margin-bottom-1",
|
|
209
|
-
TWO: "tide-margin-bottom-2",
|
|
210
|
-
FOUR: "tide-margin-bottom-4"
|
|
211
|
-
},
|
|
212
|
-
FULL: {
|
|
213
|
-
QUARTER: "tide-margin-1/4",
|
|
214
|
-
HALF: "tide-margin-1/2",
|
|
215
|
-
ONE: "tide-margin-1",
|
|
216
|
-
TWO: "tide-margin-2",
|
|
217
|
-
FOUR: "tide-margin-4"
|
|
218
|
-
},
|
|
219
|
-
LEFT: {
|
|
220
|
-
AUTO: "tide-margin-left-auto",
|
|
221
|
-
QUARTER: "tide-margin-left-1/4",
|
|
222
|
-
HALF: "tide-margin-left-1/2",
|
|
223
|
-
ONE: "tide-margin-left-1",
|
|
224
|
-
TWO: "tide-margin-left-2",
|
|
225
|
-
FOUR: "tide-margin-left-4"
|
|
226
|
-
},
|
|
227
|
-
RIGHT: {
|
|
228
|
-
AUTO: "tide-margin-right-auto",
|
|
229
|
-
QUARTER: "tide-margin-right-1/4",
|
|
230
|
-
HALF: "tide-margin-right-1/2",
|
|
231
|
-
ONE: "tide-margin-right-1",
|
|
232
|
-
TWO: "tide-margin-right-2",
|
|
233
|
-
FOUR: "tide-margin-right-4"
|
|
234
|
-
},
|
|
235
|
-
TOP: {
|
|
236
|
-
QUARTER: "tide-margin-top-1/4",
|
|
237
|
-
HALF: "tide-margin-top-1/2",
|
|
238
|
-
ONE: "tide-margin-top-1",
|
|
239
|
-
TWO: "tide-margin-top-2",
|
|
240
|
-
FOUR: "tide-margin-top-4"
|
|
241
|
-
},
|
|
242
|
-
X: {
|
|
243
|
-
AUTO: "tide-margin-x-auto",
|
|
244
|
-
QUARTER: "tide-margin-x-1/4",
|
|
245
|
-
HALF: "tide-margin-x-1/2",
|
|
246
|
-
ONE: "tide-margin-x-1",
|
|
247
|
-
TWO: "tide-margin-x-2",
|
|
248
|
-
FOUR: "tide-margin-x-4"
|
|
249
|
-
},
|
|
250
|
-
Y: {
|
|
251
|
-
QUARTER: "tide-margin-y-1/4",
|
|
252
|
-
HALF: "tide-margin-y-1/2",
|
|
253
|
-
ONE: "tide-margin-y-1",
|
|
254
|
-
TWO: "tide-margin-y-2",
|
|
255
|
-
FOUR: "tide-margin-y-4"
|
|
256
|
-
}
|
|
257
|
-
},
|
|
258
|
-
OBJECT: {
|
|
259
|
-
CENTER: "tide-object-center",
|
|
260
|
-
CONTAIN: "tide-object-contain",
|
|
261
|
-
COVER: "tide-object-cover",
|
|
262
|
-
SCALE_DOWN: "tide-object-scale-down"
|
|
263
|
-
},
|
|
264
|
-
OPACITY: {
|
|
265
|
-
OFF: "tide-opacity-none",
|
|
266
|
-
ON: "tide-opacity"
|
|
267
|
-
},
|
|
268
|
-
OVERFLOW: {
|
|
269
|
-
X: {
|
|
270
|
-
AUTO: "tide-x-auto",
|
|
271
|
-
HIDDEN: "tide-x-hidden",
|
|
272
|
-
SCROLL: "tide-x-scroll"
|
|
273
|
-
},
|
|
274
|
-
XY: {
|
|
275
|
-
AUTO: "tide-xy-auto",
|
|
276
|
-
HIDDEN: "tide-xy-hidden"
|
|
277
|
-
},
|
|
278
|
-
Y: {
|
|
279
|
-
AUTO: "tide-y-auto",
|
|
280
|
-
HIDDEN: "tide-y-hidden"
|
|
281
|
-
}
|
|
282
|
-
},
|
|
283
|
-
PADDING: {
|
|
284
|
-
BOTTOM: {
|
|
285
|
-
QUARTER: "tide-padding-bottom-1/4",
|
|
286
|
-
HALF: "tide-padding-bottom-1/2",
|
|
287
|
-
ONE: "tide-padding-bottom-1",
|
|
288
|
-
TWO: "tide-padding-bottom-2",
|
|
289
|
-
FOUR: "tide-padding-bottom-4"
|
|
290
|
-
},
|
|
291
|
-
FULL: {
|
|
292
|
-
QUARTER: "tide-padding-1/4",
|
|
293
|
-
HALF: "tide-padding-1/2",
|
|
294
|
-
ONE: "tide-padding-1",
|
|
295
|
-
TWO: "tide-padding-2",
|
|
296
|
-
FOUR: "tide-padding-4"
|
|
297
|
-
},
|
|
298
|
-
LEFT: {
|
|
299
|
-
QUARTER: "tide-padding-left-1/4",
|
|
300
|
-
HALF: "tide-padding-left-1/2",
|
|
301
|
-
ONE: "tide-padding-left-1",
|
|
302
|
-
TWO: "tide-padding-left-2",
|
|
303
|
-
FOUR: "tide-padding-left-4"
|
|
304
|
-
},
|
|
305
|
-
RIGHT: {
|
|
306
|
-
QUARTER: "tide-padding-right-1/4",
|
|
307
|
-
HALF: "tide-padding-right-1/2",
|
|
308
|
-
ONE: "tide-padding-right-1",
|
|
309
|
-
TWO: "tide-padding-right-2",
|
|
310
|
-
FOUR: "tide-padding-right-4"
|
|
311
|
-
},
|
|
312
|
-
TOP: {
|
|
313
|
-
QUARTER: "tide-padding-top-1/4",
|
|
314
|
-
HALF: "tide-padding-top-1/2",
|
|
315
|
-
ONE: "tide-padding-top-1",
|
|
316
|
-
TWO: "tide-padding-top-2",
|
|
317
|
-
FOUR: "tide-padding-top-4"
|
|
318
|
-
},
|
|
319
|
-
X: {
|
|
320
|
-
QUARTER: "tide-padding-x-1/4",
|
|
321
|
-
HALF: "tide-padding-x-1/2",
|
|
322
|
-
ONE: "tide-padding-x-1",
|
|
323
|
-
TWO: "tide-padding-x-2",
|
|
324
|
-
FOUR: "tide-padding-x-4"
|
|
325
|
-
},
|
|
326
|
-
Y: {
|
|
327
|
-
QUARTER: "tide-padding-y-1/4",
|
|
328
|
-
HALF: "tide-padding-y-1/2",
|
|
329
|
-
ONE: "tide-padding-y-1",
|
|
330
|
-
TWO: "tide-padding-y-2",
|
|
331
|
-
FOUR: "tide-padding-y-4"
|
|
332
|
-
}
|
|
333
|
-
},
|
|
334
|
-
POINTER_EVENTS: {
|
|
335
|
-
OFF: "tide-pointer-events-none",
|
|
336
|
-
ON: "tide-pointer-events"
|
|
337
|
-
},
|
|
338
|
-
POSITION: {
|
|
339
|
-
ABSOLUTE: "tide-position-absolute",
|
|
340
|
-
FIXED: "tide-position-fixed",
|
|
341
|
-
RELATIVE: "tide-position-relative",
|
|
342
|
-
STICKY: "tide-sticky"
|
|
343
|
-
},
|
|
344
|
-
POSITIONING: {
|
|
345
|
-
BOTTOM: "tide-bottom-0",
|
|
346
|
-
LEFT: "tide-left-0",
|
|
347
|
-
RIGHT: "tide-right-0",
|
|
348
|
-
TOP: "tide-top-0"
|
|
349
|
-
},
|
|
350
|
-
SCROLLBAR: {
|
|
351
|
-
OFF: "tide-scrollbar-none"
|
|
352
|
-
},
|
|
353
|
-
SHADOW: {
|
|
354
|
-
BOTTOM: "tide-shadow-bottom",
|
|
355
|
-
TOP: "tide-shadow-top"
|
|
356
|
-
},
|
|
357
|
-
SNAP: {
|
|
358
|
-
ON: "tide-snap"
|
|
359
|
-
},
|
|
360
|
-
SNAP_ALIGN: {
|
|
361
|
-
START: "tide-snap-start"
|
|
362
|
-
},
|
|
363
|
-
TEXT_TRANSFORM: {
|
|
364
|
-
LOWER: "tide-text-transform-lower",
|
|
365
|
-
NONE: "tide-text-transform-none",
|
|
366
|
-
UPPER: "tide-text-transform-upper"
|
|
367
|
-
},
|
|
368
|
-
UNDERLINE: {
|
|
369
|
-
HOVER: "tide-underline-hover",
|
|
370
|
-
OFF: "tide-underline-none",
|
|
371
|
-
ON: "tide-underline"
|
|
372
|
-
},
|
|
373
|
-
VISIBILITY: {
|
|
374
|
-
OFF: "tide-visible-none",
|
|
375
|
-
ON: "tide-visible"
|
|
376
|
-
},
|
|
377
|
-
WHITESPACE_WRAP: {
|
|
378
|
-
OFF: "tide-whitespace-nowrap"
|
|
379
|
-
},
|
|
380
|
-
WIDTH: {
|
|
381
|
-
FULL: "tide-width-full",
|
|
382
|
-
MAX_FULL: "tide-max-width-full"
|
|
383
|
-
}
|
|
384
|
-
};
|
|
385
|
-
e.DISPLAY.BLOCK, e.DISPLAY.CONTENTS, e.DISPLAY.FLEX, e.DISPLAY.GRID, e.DISPLAY.NONE, e.DISPLAY.INITIAL, e.DISPLAY.INLINE, e.DISPLAY.INLINE_BLOCK, e.DISPLAY.INLINE_FLEX, e.AXIS1.AROUND, e.AXIS1.BETWEEN, e.AXIS1.CENTER, e.AXIS1.END, e.AXIS1.START, e.AXIS2.AROUND, e.AXIS2.CENTER, e.AXIS2.END, e.AXIS2.START, e.FLEX.DIRECTION.COLUMN, e.FLEX.DIRECTION.COLUMN_REVERSE, e.FLEX.DIRECTION.ROW, e.FLEX.DIRECTION.ROW_REVERSE, e.GAP.ONE, e.GAP.HALF, e.GAP.QUARTER, e.GAP.TWO, e.GAP.FOUR, e.FLEX.GROW.ON, e.FLEX.GROW.OFF, e.FLEX.SHRINK.ON, e.FLEX.SHRINK.OFF, e.FLEX.WRAP, e.POSITION.ABSOLUTE, e.POSITION.FIXED, e.POSITION.RELATIVE, e.POSITION.STICKY, e.POSITIONING.TOP, e.POSITIONING.RIGHT, e.POSITIONING.BOTTOM, e.POSITIONING.LEFT, e.BOX_SIZING.BORDER_BOX, e.BOX_SIZING.CONTENT_BOX, e.MARGIN.FULL.ONE, e.MARGIN.FULL.HALF, e.MARGIN.FULL.QUARTER, e.MARGIN.FULL.TWO, e.MARGIN.FULL.FOUR, e.MARGIN.Y.ONE, e.MARGIN.Y.HALF, e.MARGIN.Y.QUARTER, e.MARGIN.Y.TWO, e.MARGIN.Y.FOUR, e.MARGIN.TOP.ONE, e.MARGIN.TOP.HALF, e.MARGIN.TOP.QUARTER, e.MARGIN.TOP.TWO, e.MARGIN.TOP.FOUR, e.MARGIN.X.ONE, e.MARGIN.X.HALF, e.MARGIN.X.QUARTER, e.MARGIN.X.TWO, e.MARGIN.X.FOUR, e.MARGIN.X.AUTO, e.MARGIN.RIGHT.ONE, e.MARGIN.RIGHT.HALF, e.MARGIN.RIGHT.QUARTER, e.MARGIN.RIGHT.TWO, e.MARGIN.RIGHT.FOUR, e.MARGIN.RIGHT.AUTO, e.MARGIN.BOTTOM.ONE, e.MARGIN.BOTTOM.HALF, e.MARGIN.BOTTOM.QUARTER, e.MARGIN.BOTTOM.TWO, e.MARGIN.BOTTOM.FOUR, e.MARGIN.LEFT.ONE, e.MARGIN.LEFT.HALF, e.MARGIN.LEFT.QUARTER, e.MARGIN.LEFT.TWO, e.MARGIN.LEFT.FOUR, e.MARGIN.LEFT.AUTO, e.BORDER.FULL.ONE, e.BORDER.FULL.TWO, e.BORDER.TOP.ONE, e.BORDER.TOP.TWO, e.BORDER.RIGHT.ONE, e.BORDER.RIGHT.TWO, e.BORDER.BOTTOM.ONE, e.BORDER.BOTTOM.TWO, e.BORDER.LEFT.ONE, e.BORDER.LEFT.TWO, e.BORDER.RADIUS.ONE, e.BORDER.RADIUS.HALF, e.BORDER.RADIUS.QUARTER, e.BORDER.RADIUS.FULL, e.PADDING.FULL.ONE, e.PADDING.FULL.HALF, e.PADDING.FULL.QUARTER, e.PADDING.FULL.TWO, e.PADDING.FULL.FOUR, e.PADDING.Y.ONE, e.PADDING.Y.HALF, e.PADDING.Y.QUARTER, e.PADDING.Y.TWO, e.PADDING.Y.FOUR, e.PADDING.TOP.ONE, e.PADDING.TOP.HALF, e.PADDING.TOP.QUARTER, e.PADDING.TOP.TWO, e.PADDING.TOP.FOUR, e.PADDING.X.ONE, e.PADDING.X.HALF, e.PADDING.X.QUARTER, e.PADDING.X.TWO, e.PADDING.X.FOUR, e.PADDING.RIGHT.ONE, e.PADDING.RIGHT.HALF, e.PADDING.RIGHT.QUARTER, e.PADDING.RIGHT.TWO, e.PADDING.RIGHT.FOUR, e.PADDING.BOTTOM.ONE, e.PADDING.BOTTOM.HALF, e.PADDING.BOTTOM.QUARTER, e.PADDING.BOTTOM.TWO, e.PADDING.BOTTOM.FOUR, e.PADDING.LEFT.ONE, e.PADDING.LEFT.HALF, e.PADDING.LEFT.QUARTER, e.PADDING.LEFT.TWO, e.PADDING.LEFT.FOUR, e.WIDTH.MAX_FULL, e.WIDTH.FULL, e.HEIGHT.FULL, e.ALIGN.Y.MIDDLE, e.BREAK_WORD, e.CURSOR.NOT_ALLOWED, e.CURSOR.POINTER, e.FONT.SIZE.TWELVE, e.FONT.SIZE.FOURTEEN, e.FONT.SIZE.SIXTEEN, e.FONT.SIZE.TWENTY, e.FONT.SIZE.TWENTY_FOUR, e.FONT.SIZE.THIRTY_TWO, e.FONT.WEIGHT.FOUR_HUNDRED, e.FONT.WEIGHT.FIVE_HUNDRED, e.FONT.WEIGHT.SIX_HUNDRED, e.FONT.WEIGHT.SEVEN_HUNDRED, e.LIST_BULLETS.OFF, e.OBJECT.CENTER, e.OBJECT.CONTAIN, e.OBJECT.COVER, e.OBJECT.SCALE_DOWN, e.POINTER_EVENTS.ON, e.POINTER_EVENTS.OFF, e.SCROLLBAR.OFF, e.SHADOW.BOTTOM, e.SHADOW.TOP, e.SNAP.ON, e.SNAP_ALIGN.START, e.ALIGN.X.LEFT, e.ALIGN.X.CENTER, e.ALIGN.X.RIGHT, e.TEXT_TRANSFORM.LOWER, e.TEXT_TRANSFORM.NONE, e.TEXT_TRANSFORM.UPPER, e.UNDERLINE, e.UNDERLINE.HOVER, e.UNDERLINE.OFF, e.VISIBILITY.ON, e.VISIBILITY.OFF, e.WHITESPACE_WRAP.OFF, e.OVERFLOW.XY.AUTO, e.OVERFLOW.XY.HIDDEN, e.OVERFLOW.X.AUTO, e.OVERFLOW.X.HIDDEN, e.OVERFLOW.X.SCROLL, e.OVERFLOW.Y.AUTO, e.OVERFLOW.Y.HIDDEN;
|
|
386
|
-
const de = {
|
|
387
|
-
HORIZONTAL: "horizontal",
|
|
388
|
-
VERTICAL: "vertical"
|
|
389
|
-
}, re = /* @__PURE__ */ v({
|
|
390
|
-
__name: "TideDivider",
|
|
391
|
-
props: {
|
|
392
|
-
orientation: { default: de.HORIZONTAL }
|
|
393
|
-
},
|
|
394
|
-
setup(n) {
|
|
395
|
-
const s = n;
|
|
396
|
-
return (i, o) => (l(), r("div", {
|
|
397
|
-
class: a([
|
|
398
|
-
t(e).BORDER.COLOR.LOW,
|
|
399
|
-
s.orientation === t(de).HORIZONTAL ? [t(e).MARGIN.Y.HALF, t(e).BORDER.BOTTOM.ONE] : [t(e).MARGIN.X.HALF, t(e).BORDER.RIGHT.ONE]
|
|
400
|
-
])
|
|
401
|
-
}, null, 2));
|
|
402
|
-
}
|
|
403
|
-
}), De = (n, s) => {
|
|
404
|
-
const i = n[s];
|
|
405
|
-
return i ? typeof i == "function" ? i() : Promise.resolve(i) : new Promise((o, d) => {
|
|
406
|
-
(typeof queueMicrotask == "function" ? queueMicrotask : setTimeout)(d.bind(null, new Error("Unknown variable dynamic import: " + s)));
|
|
407
|
-
});
|
|
408
|
-
}, y = {
|
|
409
|
-
LARGE: "large",
|
|
410
|
-
SMALL: "small"
|
|
411
|
-
}, Se = (n) => n && typeof n == "string" ? n.replace(/([a-z]{1})([A-Z]{1})/g, "$1 $2").replace(/[\s_-]/g, " ").toLowerCase().split(" ").map((s) => s.slice(0, 1).toUpperCase() + s.slice(1)).join("") : n, fe = ["data-icon"], Ue = /* @__PURE__ */ v({
|
|
412
|
-
__name: "TideIcon",
|
|
413
|
-
props: {
|
|
414
|
-
icon: {},
|
|
415
|
-
size: { default: y.SMALL }
|
|
416
|
-
},
|
|
417
|
-
setup(n) {
|
|
418
|
-
const s = n, i = N();
|
|
419
|
-
return Q(
|
|
420
|
-
() => s.icon,
|
|
421
|
-
() => {
|
|
422
|
-
const o = s.icon, d = Se(o), T = ue(() => De(/* @__PURE__ */ Object.assign({ "../assets/svg/icons/IconAccountBalance.vue": () => import("./IconAccountBalance-07f1fe86.js"), "../assets/svg/icons/IconAdd.vue": () => import("./IconAdd-f04ee0d6.js"), "../assets/svg/icons/IconAiDescription.vue": () => import("./IconAiDescription-d087da58.js"), "../assets/svg/icons/IconAlignSpace.vue": () => import("./IconAlignSpace-d82fab2a.js"), "../assets/svg/icons/IconApplePay.vue": () => import("./IconApplePay-061e6fbc.js"), "../assets/svg/icons/IconArrowBack.vue": () => import("./IconArrowBack-f9e1d105.js"), "../assets/svg/icons/IconArrowForward.vue": () => import("./IconArrowForward-e3f32caf.js"), "../assets/svg/icons/IconArrowRight.vue": () => import("./IconArrowRight-bf93dc71.js"), "../assets/svg/icons/IconAssignment.vue": () => import("./IconAssignment-fd5128f6.js"), "../assets/svg/icons/IconAwardStar.vue": () => import("./IconAwardStar-ba435e41.js"), "../assets/svg/icons/IconBookmark.vue": () => import("./IconBookmark-015d6d78.js"), "../assets/svg/icons/IconCalendarMonth.vue": () => import("./IconCalendarMonth-54b9336d.js"), "../assets/svg/icons/IconCall.vue": () => import("./IconCall-3b308b40.js"), "../assets/svg/icons/IconCheck.vue": () => import("./IconCheck-13be7e34.js"), "../assets/svg/icons/IconChevronLeft.vue": () => import("./IconChevronLeft-f2c842bd.js"), "../assets/svg/icons/IconChevronRight.vue": () => import("./IconChevronRight-6c8f415f.js"), "../assets/svg/icons/IconClear.vue": () => import("./IconClear-87c5429b.js"), "../assets/svg/icons/IconClose.vue": () => import("./IconClose-5b6b6304.js"), "../assets/svg/icons/IconCycle.vue": () => import("./IconCycle-7f315b4c.js"), "../assets/svg/icons/IconDelete.vue": () => import("./IconDelete-06825f85.js"), "../assets/svg/icons/IconDiamond.vue": () => import("./IconDiamond-90b106e1.js"), "../assets/svg/icons/IconEdit.vue": () => import("./IconEdit-15e77ec8.js"), "../assets/svg/icons/IconError.vue": () => import("./IconError-9e4aa896.js"), "../assets/svg/icons/IconExpandContent.vue": () => import("./IconExpandContent-cb8a4a76.js"), "../assets/svg/icons/IconExpandLess.vue": () => import("./IconExpandLess-9794a1c1.js"), "../assets/svg/icons/IconExpandMore.vue": () => import("./IconExpandMore-9da1db29.js"), "../assets/svg/icons/IconFacebook.vue": () => import("./IconFacebook-c0a3de96.js"), "../assets/svg/icons/IconFavorite.vue": () => import("./IconFavorite-93d33370.js"), "../assets/svg/icons/IconFavoriteFilled.vue": () => import("./IconFavoriteFilled-1a2039c0.js"), "../assets/svg/icons/IconFormatBold.vue": () => import("./IconFormatBold-f47143a6.js"), "../assets/svg/icons/IconFormatItalic.vue": () => import("./IconFormatItalic-acd704ed.js"), "../assets/svg/icons/IconFormatListBulleted.vue": () => import("./IconFormatListBulleted-7ee56e91.js"), "../assets/svg/icons/IconForum.vue": () => import("./IconForum-438094b8.js"), "../assets/svg/icons/IconGavel.vue": () => import("./IconGavel-6349fae0.js"), "../assets/svg/icons/IconGoogle.vue": () => import("./IconGoogle-4758a397.js"), "../assets/svg/icons/IconGooglePay.vue": () => import("./IconGooglePay-4faa49e9.js"), "../assets/svg/icons/IconGrid.vue": () => import("./IconGrid-2cbc4858.js"), "../assets/svg/icons/IconHelp.vue": () => import("./IconHelp-2ba9a862.js"), "../assets/svg/icons/IconInfo.vue": () => import("./IconInfo-f6d67f0f.js"), "../assets/svg/icons/IconInsertText.vue": () => import("./IconInsertText-f39cc0d9.js"), "../assets/svg/icons/IconInstagram.vue": () => import("./IconInstagram-45c42686.js"), "../assets/svg/icons/IconIosShare.vue": () => import("./IconIosShare-de3497b4.js"), "../assets/svg/icons/IconLayout.vue": () => import("./IconLayout-1cbc27af.js"), "../assets/svg/icons/IconLinkedIn.vue": () => import("./IconLinkedIn-1c2b53e8.js"), "../assets/svg/icons/IconLocalShipping.vue": () => import("./IconLocalShipping-76dd9aa9.js"), "../assets/svg/icons/IconLock.vue": () => import("./IconLock-3fbd2466.js"), "../assets/svg/icons/IconMail.vue": () => import("./IconMail-333bee2a.js"), "../assets/svg/icons/IconMenu.vue": () => import("./IconMenu-ccbb052e.js"), "../assets/svg/icons/IconMoreHoriz.vue": () => import("./IconMoreHoriz-08f56881.js"), "../assets/svg/icons/IconNotifications.vue": () => import("./IconNotifications-ac412a56.js"), "../assets/svg/icons/IconOpenInNew.vue": () => import("./IconOpenInNew-a5b625d5.js"), "../assets/svg/icons/IconPalette.vue": () => import("./IconPalette-26c23813.js"), "../assets/svg/icons/IconPaypal.vue": () => import("./IconPaypal-a17b8d5c.js"), "../assets/svg/icons/IconPerson.vue": () => import("./IconPerson-11211fa3.js"), "../assets/svg/icons/IconPhotoCamera.vue": () => import("./IconPhotoCamera-dbc2d043.js"), "../assets/svg/icons/IconPinterest.vue": () => import("./IconPinterest-c798a6c1.js"), "../assets/svg/icons/IconPlayArrow.vue": () => import("./IconPlayArrow-e3a0e781.js"), "../assets/svg/icons/IconRemove.vue": () => import("./IconRemove-204c608a.js"), "../assets/svg/icons/IconRoundedCorners.vue": () => import("./IconRoundedCorners-5d535ce0.js"), "../assets/svg/icons/IconSearch.vue": () => import("./IconSearch-a0ba62e1.js"), "../assets/svg/icons/IconSell.vue": () => import("./IconSell-8f72fc12.js"), "../assets/svg/icons/IconShare.vue": () => import("./IconShare-051780c5.js"), "../assets/svg/icons/IconShoppingCart.vue": () => import("./IconShoppingCart-0249642d.js"), "../assets/svg/icons/IconSms.vue": () => import("./IconSms-313af13d.js"), "../assets/svg/icons/IconStar.vue": () => import("./IconStar-d440c310.js"), "../assets/svg/icons/IconSwapVert.vue": () => import("./IconSwapVert-d37d084e.js"), "../assets/svg/icons/IconThreeDRotation.vue": () => import("./IconThreeDRotation-c3eaf078.js"), "../assets/svg/icons/IconTrophy.vue": () => import("./IconTrophy-d966c7d5.js"), "../assets/svg/icons/IconTune.vue": () => import("./IconTune-b935f589.js"), "../assets/svg/icons/IconTwitter.vue": () => import("./IconTwitter-4804a34e.js"), "../assets/svg/icons/IconVideocam.vue": () => import("./IconVideocam-90d033aa.js"), "../assets/svg/icons/IconViewInAr.vue": () => import("./IconViewInAr-913ab940.js"), "../assets/svg/icons/IconVisibility.vue": () => import("./IconVisibility-25b726ff.js"), "../assets/svg/icons/IconVolumeOff.vue": () => import("./IconVolumeOff-950bb211.js"), "../assets/svg/icons/IconVolumeOn.vue": () => import("./IconVolumeOn-14ab82fc.js"), "../assets/svg/icons/IconWarning.vue": () => import("./IconWarning-96db8210.js"), "../assets/svg/icons/IconYoutube.vue": () => import("./IconYoutube-51f24606.js") }), `../assets/svg/icons/Icon${d}.vue`));
|
|
423
|
-
i.value = Re(T);
|
|
424
|
-
},
|
|
425
|
-
{ immediate: !0 }
|
|
426
|
-
), (o, d) => (l(), r("div", {
|
|
427
|
-
class: a(["tide-icon", s.size])
|
|
428
|
-
}, [
|
|
429
|
-
(l(), r("svg", {
|
|
430
|
-
class: a([t(e).DISPLAY.BLOCK]),
|
|
431
|
-
"data-icon": o.icon,
|
|
432
|
-
fill: "currentColor",
|
|
433
|
-
viewBox: "0 0 24 24"
|
|
434
|
-
}, [
|
|
435
|
-
i.value ? (l(), S(q(i.value), { key: 0 })) : A("", !0)
|
|
436
|
-
], 10, fe))
|
|
437
|
-
], 2));
|
|
438
|
-
}
|
|
439
|
-
});
|
|
440
|
-
const C = (n, s) => {
|
|
441
|
-
const i = n.__vccOpts || n;
|
|
442
|
-
for (const [o, d] of s)
|
|
443
|
-
i[o] = d;
|
|
444
|
-
return i;
|
|
445
|
-
}, f = /* @__PURE__ */ C(Ue, [["__scopeId", "data-v-e98f3f85"]]), me = /* @__PURE__ */ v({
|
|
446
|
-
__name: "TideIndicator",
|
|
447
|
-
props: {
|
|
448
|
-
label: { default: void 0 }
|
|
449
|
-
},
|
|
450
|
-
setup(n) {
|
|
451
|
-
const s = n;
|
|
452
|
-
return (i, o) => (l(), r("div", {
|
|
453
|
-
class: a([
|
|
454
|
-
s.label ? "tide-indicator-label" : "tide-indicator",
|
|
455
|
-
"border-white",
|
|
456
|
-
t(e).BG.SURFACE.ACCENT,
|
|
457
|
-
t(e).BORDER.FULL.ONE,
|
|
458
|
-
t(e).BORDER.RADIUS.FULL,
|
|
459
|
-
s.label ? [t(e).POSITION.RELATIVE, t(e).FONT.SIZE.TWELVE, t(e).FONT.WEIGHT.SEVEN_HUNDRED, t(e).FONT.COLOR.SURFACE.DEFAULT] : []
|
|
460
|
-
])
|
|
461
|
-
}, [
|
|
462
|
-
s.label ? (l(), r("div", {
|
|
463
|
-
key: 0,
|
|
464
|
-
class: a([
|
|
465
|
-
t(e).POSITION.ABSOLUTE,
|
|
466
|
-
t(e).POSITIONING.TOP,
|
|
467
|
-
t(e).DISPLAY.FLEX,
|
|
468
|
-
t(e).AXIS1.CENTER,
|
|
469
|
-
t(e).AXIS2.CENTER,
|
|
470
|
-
t(e).WIDTH.FULL,
|
|
471
|
-
t(e).HEIGHT.FULL
|
|
472
|
-
])
|
|
473
|
-
}, L(s.label), 3)) : A("", !0)
|
|
474
|
-
], 2));
|
|
475
|
-
}
|
|
476
|
-
});
|
|
477
|
-
const ge = /* @__PURE__ */ C(me, [["__scopeId", "data-v-9786ee82"]]), _ = {
|
|
478
|
-
ACCOUNT_BALANCE: "account-balance",
|
|
479
|
-
ADD: "add",
|
|
480
|
-
AI_DESCRIPTION: "ai-description",
|
|
481
|
-
ALIGN_SPACE: "align-space",
|
|
482
|
-
APPLE_PAY: "apple-pay",
|
|
483
|
-
ARROW_BACK: "arrow-back",
|
|
484
|
-
ARROW_FORWARD: "arrow-forward",
|
|
485
|
-
ARROW_RIGHT: "arrow-right",
|
|
486
|
-
ASSIGNMENT: "assignment",
|
|
487
|
-
AWARD_STAR: "award-star",
|
|
488
|
-
BOOKMARK: "bookmark",
|
|
489
|
-
CALENDAR_MONTH: "calendar-month",
|
|
490
|
-
CALL: "call",
|
|
491
|
-
CHECK: "check",
|
|
492
|
-
CHEVRON_LEFT: "chevron-left",
|
|
493
|
-
CHEVRON_RIGHT: "chevron-right",
|
|
494
|
-
CLEAR: "clear",
|
|
495
|
-
CLOSE: "close",
|
|
496
|
-
CYCLE: "cycle",
|
|
497
|
-
DELETE: "delete",
|
|
498
|
-
DIAMOND: "diamond",
|
|
499
|
-
EDIT: "edit",
|
|
500
|
-
ERROR: "error",
|
|
501
|
-
EXPAND_CONTENT: "expand-content",
|
|
502
|
-
EXPAND_LESS: "expand-less",
|
|
503
|
-
EXPAND_MORE: "expand-more",
|
|
504
|
-
FACEBOOK: "facebook",
|
|
505
|
-
FAVORITE: "favorite",
|
|
506
|
-
FAVORITE_FILLED: "favorite-filled",
|
|
507
|
-
FORMAT_BOLD: "format-bold",
|
|
508
|
-
FORMAT_ITALIC: "format-italic",
|
|
509
|
-
FORMAT_LIST_BULLETED: "format-list-bulleted",
|
|
510
|
-
FORUM: "forum",
|
|
511
|
-
GAVEL: "gavel",
|
|
512
|
-
GOOGLE: "google",
|
|
513
|
-
GOOGLE_PAY: "google-pay",
|
|
514
|
-
GRID: "grid",
|
|
515
|
-
HELP: "help",
|
|
516
|
-
INFO: "info",
|
|
517
|
-
INSERT_TEXT: "insert-text",
|
|
518
|
-
INSTAGRAM: "instagram",
|
|
519
|
-
IOS_SHARE: "ios-share",
|
|
520
|
-
LAYOUT: "layout",
|
|
521
|
-
LINKED_IN: "linked in",
|
|
522
|
-
LOCAL_SHIPPING: "local-shipping",
|
|
523
|
-
LOCK: "lock",
|
|
524
|
-
MAIL: "mail",
|
|
525
|
-
MENU: "menu",
|
|
526
|
-
MORE_HORIZ: "more-horiz",
|
|
527
|
-
NOTIFICATIONS: "notifications",
|
|
528
|
-
OPEN_IN_NEW: "open-in-new",
|
|
529
|
-
PALETTE: "palette",
|
|
530
|
-
PAYPAL: "paypal",
|
|
531
|
-
PERSON: "person",
|
|
532
|
-
PHOTO_CAMERA: "photo-camera",
|
|
533
|
-
PINTEREST: "pinterest",
|
|
534
|
-
PLAY_ARROW: "play-arrow",
|
|
535
|
-
REMOVE: "remove",
|
|
536
|
-
ROUNDED_CORNERS: "rounded-corners",
|
|
537
|
-
SEARCH: "search",
|
|
538
|
-
SELL: "sell",
|
|
539
|
-
SHARE: "share",
|
|
540
|
-
SHOPPING_CART: "shopping-cart",
|
|
541
|
-
SMS: "sms",
|
|
542
|
-
STAR: "star",
|
|
543
|
-
SWAP_VERT: "swap-vert",
|
|
544
|
-
THREE_D_ROTATION: "three-d-rotation",
|
|
545
|
-
TROPHY: "trophy",
|
|
546
|
-
TUNE: "tune",
|
|
547
|
-
TWITTER: "twitter",
|
|
548
|
-
VIDEOCAM: "videocam",
|
|
549
|
-
VIEW_IN_AR: "view-in-ar",
|
|
550
|
-
VISIBILITY: "visibility",
|
|
551
|
-
VOLUME_OFF: "volume-off",
|
|
552
|
-
VOLUME_ON: "volume-on",
|
|
553
|
-
WARNING: "warning",
|
|
554
|
-
YOUTUBE: "youtube"
|
|
555
|
-
}, Ce = { class: "tide-accordion-item" }, Pe = /* @__PURE__ */ v({
|
|
556
|
-
__name: "TideAccordionItem",
|
|
557
|
-
props: {
|
|
558
|
-
hasBottomDivider: {
|
|
559
|
-
default: !1,
|
|
560
|
-
required: !1,
|
|
561
|
-
type: Boolean
|
|
562
|
-
},
|
|
563
|
-
hasTopDivider: {
|
|
564
|
-
default: !1,
|
|
565
|
-
required: !1,
|
|
566
|
-
type: Boolean
|
|
567
|
-
},
|
|
568
|
-
isActive: {
|
|
569
|
-
default: !1,
|
|
570
|
-
required: !1,
|
|
571
|
-
type: Boolean
|
|
572
|
-
},
|
|
573
|
-
isExpandedInitial: {
|
|
574
|
-
default: !1,
|
|
575
|
-
required: !1,
|
|
576
|
-
type: Boolean
|
|
577
|
-
},
|
|
578
|
-
isOptional: {
|
|
579
|
-
default: !1,
|
|
580
|
-
required: !1,
|
|
581
|
-
type: Boolean
|
|
582
|
-
},
|
|
583
|
-
label: {
|
|
584
|
-
default: "",
|
|
585
|
-
required: !0,
|
|
586
|
-
type: String
|
|
587
|
-
}
|
|
588
|
-
},
|
|
589
|
-
setup(n) {
|
|
590
|
-
const s = n, i = N(s.isExpandedInitial);
|
|
591
|
-
let o = N();
|
|
592
|
-
const d = () => {
|
|
593
|
-
const T = o.value;
|
|
594
|
-
i.value = !i.value, T.style.gridTemplateRows = i.value ? "1fr" : "0fr";
|
|
595
|
-
};
|
|
596
|
-
return j(() => {
|
|
597
|
-
const T = o.value;
|
|
598
|
-
T.style.gridTemplateRows = i.value ? "1fr" : "0fr";
|
|
599
|
-
}), (T, I) => (l(), r("div", Ce, [
|
|
600
|
-
s.hasTopDivider ? (l(), S(re, { key: 0 })) : A("", !0),
|
|
601
|
-
E("div", {
|
|
602
|
-
class: a(["tide-accordion-head", t(e).DISPLAY.FLEX, t(e).AXIS1.BETWEEN, t(e).PADDING.Y.HALF, t(e).CURSOR.POINTER]),
|
|
603
|
-
onClick: d
|
|
604
|
-
}, [
|
|
605
|
-
E("div", {
|
|
606
|
-
class: a([t(e).DISPLAY.FLEX, t(e).AXIS2.CENTER, t(e).GAP.HALF, t(e).FONT.WEIGHT.SEVEN_HUNDRED])
|
|
607
|
-
}, [
|
|
608
|
-
E("span", null, L(s.label), 1),
|
|
609
|
-
s.isOptional ? (l(), r("span", {
|
|
610
|
-
key: 0,
|
|
611
|
-
class: a([t(e).FONT.COLOR.SURFACE.VARIANT])
|
|
612
|
-
}, " (optional) ", 2)) : A("", !0),
|
|
613
|
-
s.isActive ? (l(), S(ge, { key: 1 })) : A("", !0)
|
|
614
|
-
], 2),
|
|
615
|
-
G(f, {
|
|
616
|
-
icon: i.value ? t(_).EXPAND_LESS : t(_).EXPAND_MORE
|
|
617
|
-
}, null, 8, ["icon"])
|
|
618
|
-
], 2),
|
|
619
|
-
E("div", {
|
|
620
|
-
class: a(["tide-accordion-body", t(e).DISPLAY.GRID]),
|
|
621
|
-
ref_key: "accordionBody",
|
|
622
|
-
ref: o
|
|
623
|
-
}, [
|
|
624
|
-
E("div", {
|
|
625
|
-
class: a([t(e).OVERFLOW.Y.HIDDEN])
|
|
626
|
-
}, [
|
|
627
|
-
E("div", {
|
|
628
|
-
class: a([t(e).MARGIN.Y.ONE, t(e).FONT.WEIGHT.FOUR_HUNDRED, t(e).FONT.COLOR.SURFACE.DEFAULT])
|
|
629
|
-
}, [
|
|
630
|
-
W(T.$slots, "default", {}, void 0, !0)
|
|
631
|
-
], 2)
|
|
632
|
-
], 2)
|
|
633
|
-
], 2),
|
|
634
|
-
s.hasBottomDivider ? (l(), S(re, { key: 1 })) : A("", !0)
|
|
635
|
-
]));
|
|
636
|
-
}
|
|
637
|
-
});
|
|
638
|
-
const _t = /* @__PURE__ */ C(Pe, [["__scopeId", "data-v-ad283103"]]), D = {
|
|
639
|
-
BUTTON: "button",
|
|
640
|
-
LINK: "a"
|
|
641
|
-
}, x = {
|
|
642
|
-
BUTTON: "button",
|
|
643
|
-
DIV: "div",
|
|
644
|
-
LINK: "a"
|
|
645
|
-
}, w = {
|
|
646
|
-
PRIMARY: "primary",
|
|
647
|
-
SECONDARY: "secondary",
|
|
648
|
-
TERTIARY: "tertiary",
|
|
649
|
-
QUATERNARY: "quaternary",
|
|
650
|
-
FLOATING: "floating"
|
|
651
|
-
}, X = {
|
|
652
|
-
BLANK: "_blank",
|
|
653
|
-
SELF: void 0
|
|
654
|
-
}, Z = /* @__PURE__ */ v({
|
|
655
|
-
__name: "TideButtonIcon",
|
|
656
|
-
props: {
|
|
657
|
-
disabled: { type: Boolean, default: !1 },
|
|
658
|
-
element: { default: D.BUTTON },
|
|
659
|
-
href: { default: void 0 },
|
|
660
|
-
icon: { default: void 0 },
|
|
661
|
-
isNewTab: { type: Boolean, default: !1 },
|
|
662
|
-
priority: { default: w.PRIMARY }
|
|
663
|
-
},
|
|
664
|
-
setup(n) {
|
|
665
|
-
const s = n;
|
|
666
|
-
return (i, o) => (l(), S(q(s.element === t(D).LINK ? "a" : "button"), {
|
|
667
|
-
"aria-label": s.icon,
|
|
668
|
-
class: a([
|
|
669
|
-
s.element === t(D).LINK ? "tide-link-as-button-icon" : "tide-button-icon",
|
|
670
|
-
s.priority && s.priority,
|
|
671
|
-
[t(e).DISPLAY.FLEX, t(e).AXIS1.CENTER, t(e).AXIS2.CENTER, t(e).BORDER.RADIUS.FULL, t(e).PADDING.FULL.HALF],
|
|
672
|
-
s.element === t(D).LINK ? [t(e).UNDERLINE.OFF] : ""
|
|
673
|
-
]),
|
|
674
|
-
disabled: s.element === t(D).BUTTON && s.disabled,
|
|
675
|
-
href: s.element === t(D).LINK && s.href ? s.href : void 0,
|
|
676
|
-
target: s.element === t(D).LINK && s.isNewTab ? t(X).BLANK : t(X).SELF
|
|
677
|
-
}, {
|
|
678
|
-
default: J(() => [
|
|
679
|
-
s.icon ? (l(), S(f, {
|
|
680
|
-
key: 0,
|
|
681
|
-
icon: s.icon,
|
|
682
|
-
size: t(y).LARGE
|
|
683
|
-
}, null, 8, ["icon", "size"])) : A("", !0)
|
|
684
|
-
]),
|
|
685
|
-
_: 1
|
|
686
|
-
}, 8, ["aria-label", "class", "disabled", "href", "target"]));
|
|
687
|
-
}
|
|
688
|
-
}), b = {
|
|
689
|
-
ERROR: "error",
|
|
690
|
-
INFO: "info",
|
|
691
|
-
SUCCESS: "success",
|
|
692
|
-
WARNING: "warning"
|
|
693
|
-
}, Ge = /* @__PURE__ */ v({
|
|
694
|
-
__name: "TideAlert",
|
|
695
|
-
props: {
|
|
696
|
-
heading: { default: void 0 },
|
|
697
|
-
isToast: { type: Boolean, default: !1 },
|
|
698
|
-
type: { default: b.INFO }
|
|
699
|
-
},
|
|
700
|
-
setup(n) {
|
|
701
|
-
const s = n, i = F(() => {
|
|
702
|
-
let o = _.VIEW_IN_AR;
|
|
703
|
-
switch (s.type) {
|
|
704
|
-
case b.ERROR:
|
|
705
|
-
o = _.ERROR;
|
|
706
|
-
break;
|
|
707
|
-
default:
|
|
708
|
-
case b.INFO:
|
|
709
|
-
o = _.INFO;
|
|
710
|
-
break;
|
|
711
|
-
case b.SUCCESS:
|
|
712
|
-
o = _.CHECK;
|
|
713
|
-
break;
|
|
714
|
-
case b.WARNING:
|
|
715
|
-
o = _.WARNING;
|
|
716
|
-
break;
|
|
717
|
-
}
|
|
718
|
-
return o;
|
|
719
|
-
});
|
|
720
|
-
return (o, d) => (l(), r("div", {
|
|
721
|
-
class: a([
|
|
722
|
-
s.type,
|
|
723
|
-
"tide-alert",
|
|
724
|
-
t(e).DISPLAY.GRID,
|
|
725
|
-
t(e).BORDER.RADIUS.HALF,
|
|
726
|
-
t(e).PADDING.FULL.ONE,
|
|
727
|
-
s.type === t(b).ERROR && t(e).BG.SURFACE.ERROR,
|
|
728
|
-
s.type === t(b).INFO && t(e).BG.SURFACE.INFO,
|
|
729
|
-
s.type === t(b).SUCCESS && t(e).BG.SURFACE.SUCCESS,
|
|
730
|
-
s.type === t(b).WARNING && t(e).BG.SURFACE.WARNING,
|
|
731
|
-
s.isToast ? t(e).SHADOW.BOTTOM : ""
|
|
732
|
-
])
|
|
733
|
-
}, [
|
|
734
|
-
E("div", {
|
|
735
|
-
class: a(["tide-alert-icon", t(e).DISPLAY.FLEX, t(e).AXIS2.CENTER])
|
|
736
|
-
}, [
|
|
737
|
-
G(f, {
|
|
738
|
-
class: a([
|
|
739
|
-
s.type,
|
|
740
|
-
t(e).BORDER.RADIUS.FULL,
|
|
741
|
-
t(e).PADDING.FULL.HALF,
|
|
742
|
-
t(e).FONT.COLOR.SURFACE.INVERSE,
|
|
743
|
-
s.type === t(b).ERROR && t(e).BG.ERROR,
|
|
744
|
-
s.type === t(b).INFO && t(e).BG.INFO,
|
|
745
|
-
s.type === t(b).SUCCESS && t(e).BG.SUCCESS,
|
|
746
|
-
s.type === t(b).WARNING && t(e).BG.WARNING
|
|
747
|
-
]),
|
|
748
|
-
icon: i.value
|
|
749
|
-
}, null, 8, ["class", "icon"])
|
|
750
|
-
], 2),
|
|
751
|
-
E("div", {
|
|
752
|
-
class: a(["tide-alert-heading", t(e).DISPLAY.FLEX, t(e).AXIS2.CENTER])
|
|
753
|
-
}, [
|
|
754
|
-
E("h2", {
|
|
755
|
-
class: a([t(e).FONT.SIZE.SIXTEEN, t(e).FONT.WEIGHT.SIX_HUNDRED, t(e).FONT.COLOR.SURFACE.DEFAULT])
|
|
756
|
-
}, L(s.heading), 3)
|
|
757
|
-
], 2),
|
|
758
|
-
G(Z, {
|
|
759
|
-
class: a(["tide-alert-close", t(e).AXIS2.CENTER, t(e).FONT.COLOR.SURFACE.DEFAULT]),
|
|
760
|
-
icon: t(_).CLOSE,
|
|
761
|
-
priority: t(w).QUATERNARY,
|
|
762
|
-
"aria-label": "Close alert"
|
|
763
|
-
}, null, 8, ["class", "icon", "priority"]),
|
|
764
|
-
E("div", {
|
|
765
|
-
class: a(["tide-alert-body", t(e).FONT.WEIGHT.FIVE_HUNDRED, t(e).FONT.COLOR.SURFACE.VARIANT])
|
|
766
|
-
}, [
|
|
767
|
-
W(o.$slots, "default", {}, void 0, !0)
|
|
768
|
-
], 2)
|
|
769
|
-
], 2));
|
|
770
|
-
}
|
|
771
|
-
});
|
|
772
|
-
const Dt = /* @__PURE__ */ C(Ge, [["__scopeId", "data-v-279a5605"]]), St = /* @__PURE__ */ v({
|
|
773
|
-
__name: "TideBadge",
|
|
774
|
-
props: {
|
|
775
|
-
label: {}
|
|
776
|
-
},
|
|
777
|
-
setup(n) {
|
|
778
|
-
const s = n;
|
|
779
|
-
return (i, o) => (l(), r("div", {
|
|
780
|
-
class: a([
|
|
781
|
-
"tide-badge",
|
|
782
|
-
t(e).FONT.COLOR.SURFACE.DEFAULT,
|
|
783
|
-
t(e).BG.SURFACE.FLOATING,
|
|
784
|
-
t(e).DISPLAY.INLINE_FLEX,
|
|
785
|
-
t(e).AXIS2.CENTER,
|
|
786
|
-
t(e).GAP.QUARTER,
|
|
787
|
-
t(e).BORDER.RADIUS.QUARTER,
|
|
788
|
-
t(e).PADDING.Y.QUARTER,
|
|
789
|
-
t(e).PADDING.X.HALF,
|
|
790
|
-
t(e).FONT.SIZE.FOURTEEN
|
|
791
|
-
])
|
|
792
|
-
}, L(s.label), 3));
|
|
793
|
-
}
|
|
794
|
-
}), ft = /* @__PURE__ */ v({
|
|
795
|
-
__name: "TideBadgePremium",
|
|
796
|
-
props: {
|
|
797
|
-
label: {}
|
|
798
|
-
},
|
|
799
|
-
setup(n) {
|
|
800
|
-
const s = n;
|
|
801
|
-
return (i, o) => (l(), r("div", {
|
|
802
|
-
class: a([
|
|
803
|
-
"tide-badge",
|
|
804
|
-
t(e).FONT.COLOR.SURFACE.DEFAULT,
|
|
805
|
-
t(e).BG.SURFACE.VARIANT,
|
|
806
|
-
t(e).DISPLAY.INLINE_FLEX,
|
|
807
|
-
t(e).GAP.QUARTER,
|
|
808
|
-
t(e).BORDER.RADIUS.QUARTER,
|
|
809
|
-
t(e).PADDING.Y.QUARTER,
|
|
810
|
-
t(e).PADDING.X.HALF,
|
|
811
|
-
t(e).FONT.SIZE.TWELVE
|
|
812
|
-
])
|
|
813
|
-
}, L(s.label), 3));
|
|
814
|
-
}
|
|
815
|
-
}), Ut = {
|
|
816
|
-
JUST_LISTED: "Just listed",
|
|
817
|
-
NATIONWIDE: "Nationwide",
|
|
818
|
-
REDUCED: "Reduced",
|
|
819
|
-
UPDATED: "Updated"
|
|
820
|
-
}, mt = {
|
|
821
|
-
PREMIUM: "Premium",
|
|
822
|
-
PREMIUM_SELECT: "Premium SELECT"
|
|
823
|
-
}, he = {
|
|
824
|
-
YEARS_10: "10",
|
|
825
|
-
YEARS_15: "15",
|
|
826
|
-
YEARS_5: "5"
|
|
827
|
-
}, He = {
|
|
828
|
-
class: /* @__PURE__ */ a([])
|
|
829
|
-
}, gt = /* @__PURE__ */ v({
|
|
830
|
-
__name: "TideBadgeTrustedPartner",
|
|
831
|
-
props: {
|
|
832
|
-
years: { default: he.YEARS_5 }
|
|
833
|
-
},
|
|
834
|
-
setup(n) {
|
|
835
|
-
const s = n;
|
|
836
|
-
return (i, o) => (l(), r("div", {
|
|
837
|
-
class: a([
|
|
838
|
-
"tide-badge-trusted-partner",
|
|
839
|
-
t(e).FONT.COLOR.SURFACE.BRAND,
|
|
840
|
-
t(e).DISPLAY.INLINE_FLEX,
|
|
841
|
-
t(e).AXIS2.CENTER,
|
|
842
|
-
t(e).GAP.QUARTER,
|
|
843
|
-
t(e).PADDING.Y.QUARTER,
|
|
844
|
-
t(e).PADDING.X.HALF,
|
|
845
|
-
t(e).FONT.SIZE.FOURTEEN
|
|
846
|
-
])
|
|
847
|
-
}, [
|
|
848
|
-
G(f, {
|
|
849
|
-
icon: t(_).VIEW_IN_AR
|
|
850
|
-
}, null, 8, ["icon"]),
|
|
851
|
-
E("div", He, [
|
|
852
|
-
E("span", null, L(s.years) + " year trusted partner", 1)
|
|
853
|
-
])
|
|
854
|
-
], 2));
|
|
855
|
-
}
|
|
856
|
-
}), be = ["data-track", "href"], ye = ["data-track"], Be = { key: 0 }, Ct = /* @__PURE__ */ v({
|
|
857
|
-
__name: "TideBreadCrumbs",
|
|
858
|
-
props: {
|
|
859
|
-
breadCrumbs: {
|
|
860
|
-
default: void 0,
|
|
861
|
-
required: !0,
|
|
862
|
-
type: Object
|
|
863
|
-
}
|
|
864
|
-
},
|
|
865
|
-
setup(n) {
|
|
866
|
-
const s = n;
|
|
867
|
-
return (i, o) => (l(), r("ul", {
|
|
868
|
-
class: a(["tide-bread-crumbs", t(e).DISPLAY.FLEX, t(e).AXIS2.CENTER, t(e).GAP.QUARTER, t(e).LIST_BULLETS.OFF])
|
|
869
|
-
}, [
|
|
870
|
-
(l(!0), r($, null, z(s.breadCrumbs, (d, T) => (l(), r($, {
|
|
871
|
-
key: d.label
|
|
872
|
-
}, [
|
|
873
|
-
E("li", {
|
|
874
|
-
class: a([t(e).FONT.SIZE.FOURTEEN])
|
|
875
|
-
}, [
|
|
876
|
-
d.url ? (l(), r("a", {
|
|
877
|
-
key: 0,
|
|
878
|
-
class: a([t(e).FONT.WEIGHT.SEVEN_HUNDRED, t(e).FONT.COLOR.SURFACE.DEFAULT]),
|
|
879
|
-
"data-track": d.dataTrack || void 0,
|
|
880
|
-
href: d.url
|
|
881
|
-
}, L(d.label), 11, be)) : (l(), r("span", {
|
|
882
|
-
key: 1,
|
|
883
|
-
class: a([t(e).FONT.WEIGHT.FIVE_HUNDRED, t(e).FONT.COLOR.SURFACE.VARIANT]),
|
|
884
|
-
"data-track": d.dataTrack || void 0
|
|
885
|
-
}, L(d.label), 11, ye))
|
|
886
|
-
], 2),
|
|
887
|
-
s.breadCrumbs && T < s.breadCrumbs.length - 1 ? (l(), r("li", Be, [
|
|
888
|
-
G(f, {
|
|
889
|
-
icon: t(_).ARROW_RIGHT,
|
|
890
|
-
size: t(y).SMALL
|
|
891
|
-
}, null, 8, ["icon", "size"])
|
|
892
|
-
])) : A("", !0)
|
|
893
|
-
], 64))), 128))
|
|
894
|
-
], 2));
|
|
895
|
-
}
|
|
896
|
-
}), Pt = /* @__PURE__ */ v({
|
|
897
|
-
__name: "TideButton",
|
|
898
|
-
props: {
|
|
899
|
-
disabled: { type: Boolean, default: !1 },
|
|
900
|
-
element: { default: D.BUTTON },
|
|
901
|
-
href: { default: void 0 },
|
|
902
|
-
iconLeading: { default: void 0 },
|
|
903
|
-
iconTrailing: { default: void 0 },
|
|
904
|
-
isNewTab: { type: Boolean, default: !1 },
|
|
905
|
-
label: { default: void 0 },
|
|
906
|
-
priority: { default: w.PRIMARY }
|
|
907
|
-
},
|
|
908
|
-
setup(n) {
|
|
909
|
-
const s = n;
|
|
910
|
-
return (i, o) => (l(), S(q(s.element === t(D).LINK ? t(D).LINK : t(D).BUTTON), {
|
|
911
|
-
class: a([
|
|
912
|
-
s.element === t(D).LINK ? "tide-link-as-button" : "tide-button",
|
|
913
|
-
s.priority && s.priority,
|
|
914
|
-
s.element === t(D).LINK ? [t(e).DISPLAY.INLINE_FLEX] : [t(e).DISPLAY.FLEX],
|
|
915
|
-
[t(e).AXIS1.CENTER, t(e).AXIS2.CENTER, t(e).GAP.HALF, t(e).BORDER.RADIUS.HALF],
|
|
916
|
-
s.element === t(D).LINK ? t(e).UNDERLINE.OFF : "",
|
|
917
|
-
t(e).PADDING.Y.ONE,
|
|
918
|
-
t(e).PADDING.X.TWO,
|
|
919
|
-
t(e).FONT.WEIGHT.SIX_HUNDRED
|
|
920
|
-
]),
|
|
921
|
-
disabled: s.element === t(D).BUTTON && s.disabled,
|
|
922
|
-
href: s.element === t(D).LINK && s.href ? s.href : void 0,
|
|
923
|
-
target: s.element === t(D).LINK && s.isNewTab ? t(X).BLANK : t(X).SELF
|
|
924
|
-
}, {
|
|
925
|
-
default: J(() => [
|
|
926
|
-
s.iconLeading ? (l(), S(f, {
|
|
927
|
-
key: 0,
|
|
928
|
-
icon: s.iconLeading,
|
|
929
|
-
size: t(y).LARGE
|
|
930
|
-
}, null, 8, ["icon", "size"])) : A("", !0),
|
|
931
|
-
ce(" " + L(s.label) + " ", 1),
|
|
932
|
-
s.iconTrailing ? (l(), S(f, {
|
|
933
|
-
key: 1,
|
|
934
|
-
icon: s.iconTrailing,
|
|
935
|
-
size: t(y).LARGE
|
|
936
|
-
}, null, 8, ["icon", "size"])) : A("", !0)
|
|
937
|
-
]),
|
|
938
|
-
_: 1
|
|
939
|
-
}, 8, ["class", "disabled", "href", "target"]));
|
|
940
|
-
}
|
|
941
|
-
}), We = /* @__PURE__ */ v({
|
|
942
|
-
__name: "TideButtonPagination",
|
|
943
|
-
props: {
|
|
944
|
-
disabled: { type: Boolean, default: !1 },
|
|
945
|
-
element: { default: x.BUTTON },
|
|
946
|
-
href: { default: void 0 },
|
|
947
|
-
label: { default: void 0 }
|
|
948
|
-
},
|
|
949
|
-
setup(n) {
|
|
950
|
-
const s = n;
|
|
951
|
-
return (i, o) => (l(), S(q(
|
|
952
|
-
s.element === t(x).LINK ? "a" : s.element === t(x).BUTTON ? "button" : "div"
|
|
953
|
-
), {
|
|
954
|
-
class: a([
|
|
955
|
-
s.element === t(x).LINK ? "tide-link-as-button-icon" : "tide-button-icon",
|
|
956
|
-
[t(e).DISPLAY.INLINE_BLOCK, t(e).BORDER.RADIUS.FULL, t(e).PADDING.FULL.HALF],
|
|
957
|
-
s.element === t(x).LINK ? [t(e).UNDERLINE.OFF] : "",
|
|
958
|
-
s.element === t(x).DIV ? [t(e).CURSOR.POINTER] : "",
|
|
959
|
-
[t(e).FONT.WEIGHT.SEVEN_HUNDRED]
|
|
960
|
-
]),
|
|
961
|
-
disabled: s.element === t(x).BUTTON && s.disabled,
|
|
962
|
-
href: s.element === t(x).LINK && s.href ? s.href : void 0
|
|
963
|
-
}, {
|
|
964
|
-
default: J(() => [
|
|
965
|
-
E("span", {
|
|
966
|
-
class: a(["label", t(e).DISPLAY.FLEX, t(e).AXIS1.CENTER, t(e).AXIS2.CENTER])
|
|
967
|
-
}, L(s.label), 3)
|
|
968
|
-
]),
|
|
969
|
-
_: 1
|
|
970
|
-
}, 8, ["class", "disabled", "href"]));
|
|
971
|
-
}
|
|
972
|
-
});
|
|
973
|
-
const Xe = /* @__PURE__ */ C(We, [["__scopeId", "data-v-0710b4ab"]]), Gt = /* @__PURE__ */ v({
|
|
974
|
-
__name: "TideCard",
|
|
975
|
-
setup(n) {
|
|
976
|
-
return (s, i) => (l(), r("div", {
|
|
977
|
-
class: a([
|
|
978
|
-
"tide-card",
|
|
979
|
-
t(e).HEIGHT.FULL,
|
|
980
|
-
t(e).BORDER.RADIUS.HALF,
|
|
981
|
-
t(e).BG.SURFACE.DEFAULT,
|
|
982
|
-
t(e).SHADOW.BOTTOM,
|
|
983
|
-
t(e).FONT.COLOR.SURFACE.DEFAULT,
|
|
984
|
-
t(e).SNAP_ALIGN.START
|
|
985
|
-
])
|
|
986
|
-
}, [
|
|
987
|
-
W(s.$slots, "default")
|
|
988
|
-
], 2));
|
|
989
|
-
}
|
|
990
|
-
}), Ee = 16, ht = /* @__PURE__ */ v({
|
|
991
|
-
__name: "TideCarousel",
|
|
992
|
-
props: {
|
|
993
|
-
isTouchscreen: { type: Boolean },
|
|
994
|
-
offsetX: { default: 0 }
|
|
995
|
-
},
|
|
996
|
-
emits: ["change"],
|
|
997
|
-
setup(n, { emit: s }) {
|
|
998
|
-
const i = n;
|
|
999
|
-
let o = N(), d = N(), T = N(), I = N();
|
|
1000
|
-
const c = N(), R = N(), p = N(), O = N(0), g = () => {
|
|
1001
|
-
const u = Array.from(c.value.children).map((P) => P.offsetLeft);
|
|
1002
|
-
if (u.length === 0)
|
|
1003
|
-
return;
|
|
1004
|
-
const U = u.reduce((P, k) => Math.abs(k - R.value.scrollLeft) < Math.abs(P - R.value.scrollLeft) ? k : P);
|
|
1005
|
-
O.value = u.indexOf(U);
|
|
1006
|
-
}, h = () => {
|
|
1007
|
-
o.value = c.value.scrollWidth, d.value = R.value.clientWidth, T.value = o.value > d.value, I.value = R.value.scrollWidth - R.value.clientWidth, p.value = T.value && !i.isTouchscreen, g();
|
|
1008
|
-
}, M = () => {
|
|
1009
|
-
h();
|
|
1010
|
-
}, Y = (u) => {
|
|
1011
|
-
R.value.scrollTo({
|
|
1012
|
-
behavior: "smooth",
|
|
1013
|
-
left: c.value.children[u].offsetLeft
|
|
1014
|
-
});
|
|
1015
|
-
}, V = () => {
|
|
1016
|
-
const u = c.value.scrollWidth, U = R.value.scrollLeft + R.value.clientWidth;
|
|
1017
|
-
if (U > u)
|
|
1018
|
-
R.value.scrollTo({
|
|
1019
|
-
behavior: "smooth",
|
|
1020
|
-
left: u
|
|
1021
|
-
});
|
|
1022
|
-
else {
|
|
1023
|
-
const P = i.offsetX && O.value === 0, te = U === u ? 0 : P ? 2 : O.value + 1;
|
|
1024
|
-
Y(te);
|
|
1025
|
-
}
|
|
1026
|
-
}, H = () => {
|
|
1027
|
-
const u = i.offsetX ? 1 : 0, U = O.value - 1 === u, k = O.value <= u ? c.value.children.length - 1 : U ? 0 : O.value - 1;
|
|
1028
|
-
Y(k);
|
|
1029
|
-
};
|
|
1030
|
-
return window.addEventListener("resize", h), j(() => {
|
|
1031
|
-
h();
|
|
1032
|
-
}), Ne(() => {
|
|
1033
|
-
window.removeEventListener("resize", h);
|
|
1034
|
-
}), Ae(() => {
|
|
1035
|
-
h();
|
|
1036
|
-
}), Q(O, () => {
|
|
1037
|
-
s("change", O.value);
|
|
1038
|
-
}), (u, U) => (l(), r("section", {
|
|
1039
|
-
class: a(["tide-carousel", t(e).POSITION.RELATIVE, t(e).DISPLAY.FLEX, t(e).AXIS2.CENTER, t(e).WIDTH.FULL]),
|
|
1040
|
-
ref: "carouselRef"
|
|
1041
|
-
}, [
|
|
1042
|
-
E("div", {
|
|
1043
|
-
class: a([t(e).SCROLLBAR.OFF, t(e).SNAP.ON, t(e).OVERFLOW.X.SCROLL]),
|
|
1044
|
-
ref_key: "frameRef",
|
|
1045
|
-
ref: R,
|
|
1046
|
-
onScroll: M
|
|
1047
|
-
}, [
|
|
1048
|
-
E("ul", {
|
|
1049
|
-
class: a([i.isTouchscreen ? [t(e).OVERFLOW.X.AUTO] : "", t(e).DISPLAY.FLEX, t(e).GAP.ONE, t(e).LIST_BULLETS.OFF]),
|
|
1050
|
-
ref_key: "contentRef",
|
|
1051
|
-
ref: c
|
|
1052
|
-
}, [
|
|
1053
|
-
i.offsetX ? (l(), r("li", {
|
|
1054
|
-
key: 0,
|
|
1055
|
-
class: a([t(e).FLEX.SHRINK.OFF, t(e).SNAP_ALIGN.START]),
|
|
1056
|
-
style: ie({ width: `${i.offsetX - Ee}px` })
|
|
1057
|
-
}, null, 6)) : A("", !0),
|
|
1058
|
-
W(u.$slots, "default"),
|
|
1059
|
-
i.offsetX ? (l(), r("li", {
|
|
1060
|
-
key: 1,
|
|
1061
|
-
class: a([t(e).FLEX.SHRINK.OFF, t(e).SNAP_ALIGN.START]),
|
|
1062
|
-
style: ie({ width: `${i.offsetX - Ee}px` })
|
|
1063
|
-
}, null, 6)) : A("", !0)
|
|
1064
|
-
], 2)
|
|
1065
|
-
], 34),
|
|
1066
|
-
p.value ? (l(), r("div", {
|
|
1067
|
-
key: 0,
|
|
1068
|
-
class: a([
|
|
1069
|
-
t(e).POSITION.ABSOLUTE,
|
|
1070
|
-
t(e).DISPLAY.FLEX,
|
|
1071
|
-
t(e).AXIS1.BETWEEN,
|
|
1072
|
-
t(e).AXIS2.CENTER,
|
|
1073
|
-
t(e).WIDTH.FULL,
|
|
1074
|
-
t(e).HEIGHT.FULL,
|
|
1075
|
-
t(e).POINTER_EVENTS.OFF
|
|
1076
|
-
])
|
|
1077
|
-
}, [
|
|
1078
|
-
G(Z, {
|
|
1079
|
-
class: a([t(e).MARGIN.LEFT.ONE, t(e).POINTER_EVENTS.ON]),
|
|
1080
|
-
icon: t(_).CHEVRON_LEFT,
|
|
1081
|
-
priority: t(w).QUATERNARY,
|
|
1082
|
-
onClick: H
|
|
1083
|
-
}, null, 8, ["class", "icon", "priority"]),
|
|
1084
|
-
G(Z, {
|
|
1085
|
-
class: a([t(e).MARGIN.RIGHT.ONE, t(e).POINTER_EVENTS.ON]),
|
|
1086
|
-
icon: t(_).CHEVRON_RIGHT,
|
|
1087
|
-
priority: t(w).QUATERNARY,
|
|
1088
|
-
onClick: V
|
|
1089
|
-
}, null, 8, ["class", "icon", "priority"])
|
|
1090
|
-
], 2)) : A("", !0)
|
|
1091
|
-
], 2));
|
|
1092
|
-
}
|
|
1093
|
-
}), Me = ["href", "target"], Ye = /* @__PURE__ */ v({
|
|
1094
|
-
__name: "TideChipAction",
|
|
1095
|
-
props: {
|
|
1096
|
-
href: {},
|
|
1097
|
-
isNewTab: { type: Boolean, default: !1 },
|
|
1098
|
-
label: {}
|
|
1099
|
-
},
|
|
1100
|
-
setup(n) {
|
|
1101
|
-
const s = n;
|
|
1102
|
-
return (i, o) => (l(), r("a", {
|
|
1103
|
-
class: a([
|
|
1104
|
-
"tide-chip-action",
|
|
1105
|
-
t(e).AXIS2.CENTER,
|
|
1106
|
-
t(e).GAP.HALF,
|
|
1107
|
-
t(e).BORDER.FULL.ONE,
|
|
1108
|
-
t(e).BORDER.RADIUS.FULL,
|
|
1109
|
-
t(e).PADDING.X.ONE,
|
|
1110
|
-
t(e).PADDING.Y.HALF,
|
|
1111
|
-
t(e).BG.SURFACE.DEFAULT,
|
|
1112
|
-
t(e).FONT.SIZE.FOURTEEN,
|
|
1113
|
-
t(e).FONT.WEIGHT.FIVE_HUNDRED,
|
|
1114
|
-
t(e).FONT.COLOR.SURFACE.DEFAULT,
|
|
1115
|
-
t(e).UNDERLINE.OFF
|
|
1116
|
-
]),
|
|
1117
|
-
href: s.href,
|
|
1118
|
-
target: s.isNewTab ? t(X).BLANK : t(X).SELF
|
|
1119
|
-
}, [
|
|
1120
|
-
G(f, {
|
|
1121
|
-
icon: t(_).SEARCH
|
|
1122
|
-
}, null, 8, ["icon"]),
|
|
1123
|
-
E("span", null, L(s.label), 1)
|
|
1124
|
-
], 10, Me));
|
|
1125
|
-
}
|
|
1126
|
-
});
|
|
1127
|
-
const Ht = /* @__PURE__ */ C(Ye, [["__scopeId", "data-v-99f83e8d"]]), Ve = /* @__PURE__ */ v({
|
|
1128
|
-
__name: "TideChipFilter",
|
|
1129
|
-
props: {
|
|
1130
|
-
isActive: { type: Boolean },
|
|
1131
|
-
label: {}
|
|
1132
|
-
},
|
|
1133
|
-
setup(n) {
|
|
1134
|
-
const s = n;
|
|
1135
|
-
return (i, o) => (l(), r("button", {
|
|
1136
|
-
class: a([
|
|
1137
|
-
"tide-chip-filter",
|
|
1138
|
-
s.isActive ? [t(e).BG.SECONDARY, t(e).FONT.COLOR.SECONDARY] : [t(e).BG.SURFACE.VARIANT, t(e).FONT.COLOR.SURFACE.DEFAULT],
|
|
1139
|
-
t(e).DISPLAY.FLEX,
|
|
1140
|
-
t(e).AXIS2.CENTER,
|
|
1141
|
-
t(e).GAP.HALF,
|
|
1142
|
-
t(e).BORDER.FULL.ONE,
|
|
1143
|
-
t(e).BORDER.RADIUS.FULL,
|
|
1144
|
-
t(e).PADDING.X.ONE,
|
|
1145
|
-
t(e).PADDING.Y.HALF,
|
|
1146
|
-
t(e).FONT.SIZE.FOURTEEN,
|
|
1147
|
-
t(e).FONT.WEIGHT.FIVE_HUNDRED,
|
|
1148
|
-
s.isActive ? "active" : ""
|
|
1149
|
-
])
|
|
1150
|
-
}, [
|
|
1151
|
-
W(i.$slots, "default", {}, void 0, !0),
|
|
1152
|
-
E("div", {
|
|
1153
|
-
class: a([t(e).DISPLAY.FLEX, t(e).AXIS1.CENTER, t(e).AXIS2.CENTER, t(e).GAP.HALF])
|
|
1154
|
-
}, [
|
|
1155
|
-
E("span", {
|
|
1156
|
-
class: a([s.isActive ? "" : "icon-spacing", t(e).FONT.WEIGHT.FIVE_HUNDRED, t(e).WHITESPACE_WRAP.OFF])
|
|
1157
|
-
}, L(s.label), 3)
|
|
1158
|
-
], 2)
|
|
1159
|
-
], 2));
|
|
1160
|
-
}
|
|
1161
|
-
});
|
|
1162
|
-
const bt = /* @__PURE__ */ C(Ve, [["__scopeId", "data-v-c07faf14"]]), ke = /* @__PURE__ */ v({
|
|
1163
|
-
__name: "TideChipInput",
|
|
1164
|
-
props: {
|
|
1165
|
-
label: {}
|
|
1166
|
-
},
|
|
1167
|
-
setup(n) {
|
|
1168
|
-
const s = n;
|
|
1169
|
-
return (i, o) => (l(), r("button", {
|
|
1170
|
-
class: a([
|
|
1171
|
-
"tide-chip-input",
|
|
1172
|
-
t(e).BG.SURFACE.VARIANT,
|
|
1173
|
-
t(e).FONT.COLOR.SURFACE,
|
|
1174
|
-
t(e).DISPLAY.FLEX,
|
|
1175
|
-
t(e).AXIS2.CENTER,
|
|
1176
|
-
t(e).GAP.HALF,
|
|
1177
|
-
t(e).BORDER.FULL.ONE,
|
|
1178
|
-
t(e).BORDER.RADIUS.FULL,
|
|
1179
|
-
t(e).PADDING.X.ONE,
|
|
1180
|
-
t(e).PADDING.Y.HALF,
|
|
1181
|
-
t(e).FONT.SIZE.FOURTEEN,
|
|
1182
|
-
t(e).FONT.WEIGHT.FIVE_HUNDRED
|
|
1183
|
-
])
|
|
1184
|
-
}, [
|
|
1185
|
-
E("span", null, L(s.label), 1),
|
|
1186
|
-
G(f, {
|
|
1187
|
-
icon: t(_).CLOSE
|
|
1188
|
-
}, null, 8, ["icon"])
|
|
1189
|
-
], 2));
|
|
1190
|
-
}
|
|
1191
|
-
});
|
|
1192
|
-
const yt = /* @__PURE__ */ C(ke, [["__scopeId", "data-v-62b9f1c0"]]), xe = { class: "tide-columns" }, we = { class: "tide-columns-column" }, $e = { class: "tide-columns-column" }, Qe = { class: "tide-columns-column" }, Ke = { class: "tide-columns-column" }, Ze = /* @__PURE__ */ v({
|
|
1193
|
-
__name: "TideColumns",
|
|
1194
|
-
props: {
|
|
1195
|
-
heading: { default: "" }
|
|
1196
|
-
},
|
|
1197
|
-
setup(n) {
|
|
1198
|
-
const s = n;
|
|
1199
|
-
return (i, o) => (l(), r("section", xe, [
|
|
1200
|
-
E("h2", {
|
|
1201
|
-
class: a([t(e).MARGIN.BOTTOM.HALF, t(e).FONT.SIZE.SIXTEEN])
|
|
1202
|
-
}, L(s.heading), 3),
|
|
1203
|
-
E("ul", {
|
|
1204
|
-
class: a([t(e).DISPLAY.FLEX, t(e).FLEX.WRAP, t(e).GAP.TWO, t(e).LIST_BULLETS.OFF])
|
|
1205
|
-
}, [
|
|
1206
|
-
E("li", we, [
|
|
1207
|
-
W(i.$slots, "section1", {}, void 0, !0)
|
|
1208
|
-
]),
|
|
1209
|
-
E("li", $e, [
|
|
1210
|
-
W(i.$slots, "section2", {}, void 0, !0)
|
|
1211
|
-
]),
|
|
1212
|
-
E("li", Qe, [
|
|
1213
|
-
W(i.$slots, "section3", {}, void 0, !0)
|
|
1214
|
-
]),
|
|
1215
|
-
E("li", Ke, [
|
|
1216
|
-
W(i.$slots, "section4", {}, void 0, !0)
|
|
1217
|
-
])
|
|
1218
|
-
], 2)
|
|
1219
|
-
]));
|
|
1220
|
-
}
|
|
1221
|
-
});
|
|
1222
|
-
const Bt = /* @__PURE__ */ C(Ze, [["__scopeId", "data-v-14ad0455"]]), qe = ["alt", "src"], Wt = /* @__PURE__ */ v({
|
|
1223
|
-
__name: "TideImage",
|
|
1224
|
-
props: {
|
|
1225
|
-
alt: { default: "" },
|
|
1226
|
-
cdn: { default: void 0 },
|
|
1227
|
-
isLazy: { type: Boolean, default: !0 },
|
|
1228
|
-
offset: { default: 0 },
|
|
1229
|
-
src: { default: void 0 }
|
|
1230
|
-
},
|
|
1231
|
-
setup(n, { expose: s }) {
|
|
1232
|
-
const i = n, o = N(), d = `${i.cdn}/image-coming-soon-512.png`, T = () => {
|
|
1233
|
-
if (i.src) {
|
|
1234
|
-
const p = new Image();
|
|
1235
|
-
p.onload = c, p.onerror = I, p.src = i.src;
|
|
1236
|
-
}
|
|
1237
|
-
}, I = () => {
|
|
1238
|
-
o.value.src = d;
|
|
1239
|
-
}, c = () => {
|
|
1240
|
-
o.value.src = i.src;
|
|
1241
|
-
};
|
|
1242
|
-
s(o.value);
|
|
1243
|
-
const R = new IntersectionObserver((p, O) => {
|
|
1244
|
-
p.forEach(
|
|
1245
|
-
(g) => {
|
|
1246
|
-
g.isIntersecting && (T(), O.unobserve(g.target));
|
|
1247
|
-
},
|
|
1248
|
-
{
|
|
1249
|
-
rootMargin: `${i.offset}px`
|
|
1250
|
-
}
|
|
1251
|
-
);
|
|
1252
|
-
});
|
|
1253
|
-
return j(() => {
|
|
1254
|
-
i.isLazy ? R.observe(o.value) : T();
|
|
1255
|
-
}), Le(() => {
|
|
1256
|
-
R.unobserve(o.value);
|
|
1257
|
-
}), (p, O) => (l(), r("img", {
|
|
1258
|
-
alt: p.alt,
|
|
1259
|
-
class: a(["tide-image", t(e).OBJECT.CENTER, t(e).OBJECT.COVER]),
|
|
1260
|
-
ref_key: "tideImage",
|
|
1261
|
-
ref: o,
|
|
1262
|
-
src: p.isLazy && p.src ? p.src : d
|
|
1263
|
-
}, null, 10, qe));
|
|
1264
|
-
}
|
|
1265
|
-
}), ze = ["checked", "id"], je = ["for"], Je = /* @__PURE__ */ v({
|
|
1266
|
-
__name: "TideInputRadio",
|
|
1267
|
-
props: {
|
|
1268
|
-
checked: { type: Boolean, default: !1 },
|
|
1269
|
-
dataTrack: { default: "" },
|
|
1270
|
-
disabled: { type: Boolean, default: !1 },
|
|
1271
|
-
inputId: { default: void 0 },
|
|
1272
|
-
label: { default: void 0 },
|
|
1273
|
-
name: {}
|
|
1274
|
-
},
|
|
1275
|
-
setup(n) {
|
|
1276
|
-
const s = n, i = N(s.checked), o = F(() => {
|
|
1277
|
-
var d;
|
|
1278
|
-
return s.inputId ? s.inputId : `text-input-${((d = ee()) == null ? void 0 : d.uid) || ""}`;
|
|
1279
|
-
});
|
|
1280
|
-
return Q(s, (d, T) => {
|
|
1281
|
-
(d.checked !== T.checked || d.checked !== i.value) && (i.value = s.checked);
|
|
1282
|
-
}), (d, T) => (l(), r("div", {
|
|
1283
|
-
class: a(["tide-input-radio", t(e).DISPLAY.FLEX, t(e).AXIS2.CENTER, t(e).GAP.HALF, s.disabled && "disabled"])
|
|
1284
|
-
}, [
|
|
1285
|
-
E("input", {
|
|
1286
|
-
checked: i.value,
|
|
1287
|
-
class: a([t(e).DISPLAY.NONE]),
|
|
1288
|
-
id: o.value,
|
|
1289
|
-
name: "",
|
|
1290
|
-
type: "radio",
|
|
1291
|
-
value: ""
|
|
1292
|
-
}, null, 10, ze),
|
|
1293
|
-
E("div", {
|
|
1294
|
-
class: a([
|
|
1295
|
-
"tide-input-radio-custom",
|
|
1296
|
-
t(e).POSITION.RELATIVE,
|
|
1297
|
-
t(e).DISPLAY.FLEX,
|
|
1298
|
-
t(e).AXIS1.CENTER,
|
|
1299
|
-
t(e).AXIS2.CENTER,
|
|
1300
|
-
t(e).BORDER.FULL.ONE,
|
|
1301
|
-
i.value ? t(e).BORDER.COLOR.HIGH : t(e).BORDER.COLOR.DEFAULT,
|
|
1302
|
-
t(e).BORDER.RADIUS.FULL,
|
|
1303
|
-
i.value && "checked"
|
|
1304
|
-
])
|
|
1305
|
-
}, [
|
|
1306
|
-
E("div", {
|
|
1307
|
-
class: a(["tide-input-radio-check", t(e).BORDER.RADIUS.FULL, s.checked && t(e).BG.SECONDARY])
|
|
1308
|
-
}, null, 2)
|
|
1309
|
-
], 2),
|
|
1310
|
-
E("label", {
|
|
1311
|
-
class: a(t(e).FONT.WEIGHT.FOUR_HUNDRED),
|
|
1312
|
-
for: o.value
|
|
1313
|
-
}, L(s.label), 11, je)
|
|
1314
|
-
], 2));
|
|
1315
|
-
}
|
|
1316
|
-
});
|
|
1317
|
-
const Xt = /* @__PURE__ */ C(Je, [["__scopeId", "data-v-c820007d"]]), Ie = "Please enter a valid value.", oe = (n, s) => typeof n == "string" && n.length > 0 ? n : typeof s == "string" && s.length > 0 ? s : Ie, ne = (n, s) => n !== !1 || s !== !1, et = ({ maxlength: n, minlength: s, value: i }) => {
|
|
1318
|
-
const o = n && i.length > n, d = s && i.length < s;
|
|
1319
|
-
return !o && !d;
|
|
1320
|
-
}, Oe = ({
|
|
1321
|
-
error: n,
|
|
1322
|
-
errorFromProps: s,
|
|
1323
|
-
maxlength: i,
|
|
1324
|
-
minlength: o,
|
|
1325
|
-
validators: d,
|
|
1326
|
-
value: T
|
|
1327
|
-
}) => {
|
|
1328
|
-
if (n.value = s || !1, !n.value && d) {
|
|
1329
|
-
const I = st(T.value, d);
|
|
1330
|
-
I.valid || (n.value = I.message);
|
|
1331
|
-
}
|
|
1332
|
-
if (!n.value && (i || o)) {
|
|
1333
|
-
const I = tt({
|
|
1334
|
-
maxlength: i,
|
|
1335
|
-
minlength: o,
|
|
1336
|
-
value: T.value
|
|
1337
|
-
});
|
|
1338
|
-
I.valid || (n.value = I.message);
|
|
1339
|
-
}
|
|
1340
|
-
}, tt = ({ maxlength: n, minlength: s, value: i }) => {
|
|
1341
|
-
const o = {
|
|
1342
|
-
message: "",
|
|
1343
|
-
valid: !0
|
|
1344
|
-
};
|
|
1345
|
-
return o.valid = et({
|
|
1346
|
-
maxlength: n,
|
|
1347
|
-
minlength: s,
|
|
1348
|
-
value: i
|
|
1349
|
-
}), o.valid || (o.message = Ie, n && s ? o.message = `Please enter a value between ${s} and ${n} characters in length.` : n ? o.message = `Please enter a value no more than ${n} characters in length.` : s && (o.message = `Please enter a value no less than ${s} characters in length.`)), o;
|
|
1350
|
-
};
|
|
1351
|
-
function st(n, s) {
|
|
1352
|
-
for (const i of s) {
|
|
1353
|
-
const o = i(n);
|
|
1354
|
-
if (!o.valid)
|
|
1355
|
-
return o;
|
|
1356
|
-
}
|
|
1357
|
-
return {
|
|
1358
|
-
message: "",
|
|
1359
|
-
valid: !0
|
|
1360
|
-
};
|
|
1361
|
-
}
|
|
1362
|
-
const it = ["for"], at = ["disabled", "name", "required", "id"], ot = ["selected", "value"], nt = /* @__PURE__ */ v({
|
|
1363
|
-
__name: "TideInputSelect",
|
|
1364
|
-
props: {
|
|
1365
|
-
inputId: { default: void 0 },
|
|
1366
|
-
supportingText: { default: void 0 },
|
|
1367
|
-
options: {},
|
|
1368
|
-
disabled: { type: Boolean, default: !1 },
|
|
1369
|
-
error: { type: [String, Boolean], default: !1 },
|
|
1370
|
-
label: { default: void 0 },
|
|
1371
|
-
name: {},
|
|
1372
|
-
required: { type: Boolean, default: !1 },
|
|
1373
|
-
value: { default: "" }
|
|
1374
|
-
},
|
|
1375
|
-
setup(n, { expose: s }) {
|
|
1376
|
-
const i = n, o = N(i.error), d = N(!1), T = N(null), I = N(i.required), c = N(i.value), R = F(() => oe(i.error, o.value)), p = F(() => i.required ? `${i.label} *` : i.label), O = F(() => i.required && !c.value || ne(o.value, i.error)), g = F(() => d.value || !h.value), h = F(() => c.value === ""), M = F(() => {
|
|
1377
|
-
var u;
|
|
1378
|
-
return i.inputId ? i.inputId : `text-input-${((u = ee()) == null ? void 0 : u.uid) || ""}`;
|
|
1379
|
-
}), Y = () => {
|
|
1380
|
-
var U;
|
|
1381
|
-
const u = new MouseEvent("mousedown");
|
|
1382
|
-
(U = T == null ? void 0 : T.value) == null || U.dispatchEvent(u);
|
|
1383
|
-
}, V = () => {
|
|
1384
|
-
d.value = !0;
|
|
1385
|
-
}, H = () => {
|
|
1386
|
-
d.value = !1;
|
|
1387
|
-
};
|
|
1388
|
-
return Q(i, (u, U) => {
|
|
1389
|
-
(u.value !== U.value || u.value !== c.value) && (c.value = i.value);
|
|
1390
|
-
}), s({ error: o, value: c }), (u, U) => (l(), r("div", {
|
|
1391
|
-
class: a([
|
|
1392
|
-
"tide-input-select",
|
|
1393
|
-
t(e).DISPLAY.FLEX,
|
|
1394
|
-
t(e).FLEX.DIRECTION.COLUMN,
|
|
1395
|
-
t(e).GAP.QUARTER,
|
|
1396
|
-
u.disabled && "disabled",
|
|
1397
|
-
O.value && "error"
|
|
1398
|
-
])
|
|
1399
|
-
}, [
|
|
1400
|
-
E("div", {
|
|
1401
|
-
class: a([
|
|
1402
|
-
"tide-input-border",
|
|
1403
|
-
t(e).POSITION.RELATIVE,
|
|
1404
|
-
t(e).DISPLAY.FLEX,
|
|
1405
|
-
t(e).AXIS2.CENTER,
|
|
1406
|
-
t(e).GAP.HALF,
|
|
1407
|
-
t(e).BORDER.RADIUS.HALF,
|
|
1408
|
-
i.disabled ? t(e).CURSOR.NOT_ALLOWED : "",
|
|
1409
|
-
t(e).OVERFLOW.XY.HIDDEN
|
|
1410
|
-
]),
|
|
1411
|
-
onClick: Y
|
|
1412
|
-
}, [
|
|
1413
|
-
E("div", {
|
|
1414
|
-
class: a([t(e).DISPLAY.FLEX, t(e).FLEX.DIRECTION.COLUMN, t(e).WIDTH.FULL])
|
|
1415
|
-
}, [
|
|
1416
|
-
u.label ? (l(), r("label", {
|
|
1417
|
-
key: 0,
|
|
1418
|
-
class: a([
|
|
1419
|
-
g.value ? ["minilabel", t(e).FONT.SIZE.TWELVE] : t(e).FONT.SIZE.SIXTEEN,
|
|
1420
|
-
t(e).POSITION.ABSOLUTE,
|
|
1421
|
-
t(e).POSITIONING.LEFT,
|
|
1422
|
-
t(e).MARGIN.TOP.HALF,
|
|
1423
|
-
t(e).MARGIN.LEFT.ONE,
|
|
1424
|
-
!O.value && t(e).FONT.COLOR.SURFACE.VARIANT,
|
|
1425
|
-
t(e).FONT.WEIGHT.FIVE_HUNDRED
|
|
1426
|
-
]),
|
|
1427
|
-
for: M.value
|
|
1428
|
-
}, L(p.value), 11, it)) : A("", !0),
|
|
1429
|
-
ae(E("select", {
|
|
1430
|
-
class: a([t(e).PADDING.BOTTOM.HALF, t(e).PADDING.X.ONE, t(e).WIDTH.FULL, u.disabled && t(e).CURSOR.NOT_ALLOWED]),
|
|
1431
|
-
disabled: u.disabled,
|
|
1432
|
-
name: u.name,
|
|
1433
|
-
ref_key: "input",
|
|
1434
|
-
ref: T,
|
|
1435
|
-
required: I.value,
|
|
1436
|
-
onFocus: V,
|
|
1437
|
-
onFocusout: H,
|
|
1438
|
-
id: M.value,
|
|
1439
|
-
"onUpdate:modelValue": U[0] || (U[0] = (P) => c.value = P)
|
|
1440
|
-
}, [
|
|
1441
|
-
(l(!0), r($, null, z(u.options, (P) => (l(), r("option", {
|
|
1442
|
-
class: a([t(e).WIDTH.FULL, t(e).BG.SURFACE.DEFAULT]),
|
|
1443
|
-
key: P.value,
|
|
1444
|
-
selected: c.value === P.value ? !0 : void 0,
|
|
1445
|
-
value: P.value
|
|
1446
|
-
}, L(P.label), 11, ot))), 128))
|
|
1447
|
-
], 42, at), [
|
|
1448
|
-
[pe, c.value]
|
|
1449
|
-
])
|
|
1450
|
-
], 2),
|
|
1451
|
-
G(f, {
|
|
1452
|
-
class: a([t(e).POSITION.ABSOLUTE, t(e).POSITIONING.RIGHT, t(e).MARGIN.RIGHT.ONE, t(e).POINTER_EVENTS.OFF]),
|
|
1453
|
-
icon: t(_).EXPAND_MORE,
|
|
1454
|
-
size: t(y).SMALL
|
|
1455
|
-
}, null, 8, ["class", "icon", "size"])
|
|
1456
|
-
], 2),
|
|
1457
|
-
i.supportingText || O.value ? (l(), r("div", {
|
|
1458
|
-
key: 0,
|
|
1459
|
-
class: a([t(e).DISPLAY.FLEX, t(e).AXIS2.CENTER, t(e).GAP.QUARTER, t(e).MARGIN.LEFT.ONE])
|
|
1460
|
-
}, [
|
|
1461
|
-
O.value ? (l(), S(f, {
|
|
1462
|
-
key: 0,
|
|
1463
|
-
class: a([]),
|
|
1464
|
-
icon: t(_).ERROR,
|
|
1465
|
-
size: t(y).SMALL
|
|
1466
|
-
}, null, 8, ["icon", "size"])) : A("", !0),
|
|
1467
|
-
E("div", {
|
|
1468
|
-
class: a([t(e).FONT.SIZE.TWELVE, t(e).FONT.WEIGHT.FIVE_HUNDRED])
|
|
1469
|
-
}, L(O.value ? R.value : i.supportingText), 3)
|
|
1470
|
-
], 2)) : A("", !0)
|
|
1471
|
-
], 2));
|
|
1472
|
-
}
|
|
1473
|
-
});
|
|
1474
|
-
const Mt = /* @__PURE__ */ C(nt, [["__scopeId", "data-v-46bac7ed"]]), K = {
|
|
1475
|
-
DATE: "date",
|
|
1476
|
-
DATETIME_LOCAL: "datetime-local",
|
|
1477
|
-
EMAIL: "email",
|
|
1478
|
-
MONTH: "month",
|
|
1479
|
-
NUMBER: "number",
|
|
1480
|
-
PASSWORD: "password",
|
|
1481
|
-
SEARCH: "search",
|
|
1482
|
-
TEL: "tel",
|
|
1483
|
-
TEXT: "text",
|
|
1484
|
-
TIME: "time",
|
|
1485
|
-
URL: "url",
|
|
1486
|
-
WEEK: "week"
|
|
1487
|
-
}, lt = ["for"], dt = ["autocomplete", "data-track", "disabled", "maxlength", "minlength", "name", "required", "type", "id"], rt = /* @__PURE__ */ v({
|
|
1488
|
-
__name: "TideInputText",
|
|
1489
|
-
props: {
|
|
1490
|
-
autocomplete: { type: Boolean, default: !1 },
|
|
1491
|
-
dataTrack: { default: "" },
|
|
1492
|
-
disabled: { type: Boolean, default: !1 },
|
|
1493
|
-
error: { type: [String, Boolean], default: !1 },
|
|
1494
|
-
hasClear: { type: Boolean, default: !1 },
|
|
1495
|
-
iconLeading: { default: void 0 },
|
|
1496
|
-
inputId: { default: void 0 },
|
|
1497
|
-
label: { default: void 0 },
|
|
1498
|
-
maxlength: { default: void 0 },
|
|
1499
|
-
minlength: { default: void 0 },
|
|
1500
|
-
name: {},
|
|
1501
|
-
prefix: { default: void 0 },
|
|
1502
|
-
required: { type: Boolean, default: !1 },
|
|
1503
|
-
suffix: { default: void 0 },
|
|
1504
|
-
supportingText: { default: void 0 },
|
|
1505
|
-
transformValue: { type: Function, default: void 0 },
|
|
1506
|
-
type: { default: K.TEXT },
|
|
1507
|
-
validators: { default: void 0 },
|
|
1508
|
-
value: { default: "" }
|
|
1509
|
-
},
|
|
1510
|
-
setup(n, { expose: s }) {
|
|
1511
|
-
const i = n, o = N(i.error), d = N(!1), T = N(null), I = N(!1), c = N(i.value), R = F(() => oe(i.error, o.value)), p = F(() => i.required && i.label ? `${i.label} *` : i.label), O = F(() => i.hasClear && c.value), g = F(() => i.required && !c.value || ne(o.value, i.error)), h = F(() => d.value || !M.value), M = F(() => c.value === ""), Y = F(
|
|
1512
|
-
() => i.type === K.PASSWORD && I.value === !0 ? K.TEXT : i.type
|
|
1513
|
-
), V = F(() => {
|
|
1514
|
-
var m;
|
|
1515
|
-
return i.inputId ? i.inputId : `text-input-${((m = ee()) == null ? void 0 : m.uid) || ""}`;
|
|
1516
|
-
}), H = () => {
|
|
1517
|
-
var m;
|
|
1518
|
-
c.value = "", (m = T.value) == null || m.focus();
|
|
1519
|
-
}, u = () => {
|
|
1520
|
-
d.value = !0;
|
|
1521
|
-
}, U = () => {
|
|
1522
|
-
d.value = !1, k();
|
|
1523
|
-
}, P = () => {
|
|
1524
|
-
var m;
|
|
1525
|
-
if (i.transformValue) {
|
|
1526
|
-
const B = ((m = c.value.match(/\d/g)) == null ? void 0 : m.join("")) || void 0;
|
|
1527
|
-
c.value = B ? i.transformValue(B) : "";
|
|
1528
|
-
}
|
|
1529
|
-
}, k = () => {
|
|
1530
|
-
Oe({
|
|
1531
|
-
error: o,
|
|
1532
|
-
errorFromProps: i.error,
|
|
1533
|
-
maxlength: i.maxlength,
|
|
1534
|
-
minlength: i.minlength,
|
|
1535
|
-
validators: i.validators,
|
|
1536
|
-
value: c
|
|
1537
|
-
});
|
|
1538
|
-
}, te = (m) => {
|
|
1539
|
-
c.value = m;
|
|
1540
|
-
};
|
|
1541
|
-
return Q(
|
|
1542
|
-
i,
|
|
1543
|
-
(m, B) => {
|
|
1544
|
-
(m.value !== B.value || m.value !== c.value) && (c.value = i.value);
|
|
1545
|
-
},
|
|
1546
|
-
{ deep: !0 }
|
|
1547
|
-
), s({ error: o, updateValue: te, value: c }), (m, B) => (l(), r("div", {
|
|
1548
|
-
class: a([
|
|
1549
|
-
"tide-input-text",
|
|
1550
|
-
t(e).DISPLAY.FLEX,
|
|
1551
|
-
t(e).FLEX.DIRECTION.COLUMN,
|
|
1552
|
-
t(e).GAP.QUARTER,
|
|
1553
|
-
m.disabled && "disabled",
|
|
1554
|
-
g.value && "error"
|
|
1555
|
-
])
|
|
1556
|
-
}, [
|
|
1557
|
-
E("div", {
|
|
1558
|
-
class: a([
|
|
1559
|
-
"tide-input-border",
|
|
1560
|
-
t(e).DISPLAY.FLEX,
|
|
1561
|
-
t(e).AXIS2.CENTER,
|
|
1562
|
-
t(e).GAP.HALF,
|
|
1563
|
-
t(e).POSITION.RELATIVE,
|
|
1564
|
-
t(e).BORDER.RADIUS.HALF,
|
|
1565
|
-
O.value ? [t(e).PADDING.RIGHT.HALF, t(e).PADDING.LEFT.ONE] : [t(e).PADDING.X.ONE],
|
|
1566
|
-
t(e).PADDING.Y.HALF,
|
|
1567
|
-
i.disabled ? t(e).CURSOR.NOT_ALLOWED : t(e).CURSOR.TEXT
|
|
1568
|
-
])
|
|
1569
|
-
}, [
|
|
1570
|
-
i.iconLeading ? (l(), S(f, {
|
|
1571
|
-
key: 0,
|
|
1572
|
-
icon: i.iconLeading,
|
|
1573
|
-
size: t(y).SMALL
|
|
1574
|
-
}, null, 8, ["icon", "size"])) : A("", !0),
|
|
1575
|
-
E("div", {
|
|
1576
|
-
class: a([t(e).DISPLAY.FLEX, t(e).AXIS2.CENTER, t(e).GAP.QUARTER, t(e).WIDTH.FULL])
|
|
1577
|
-
}, [
|
|
1578
|
-
i.prefix ? (l(), r("div", {
|
|
1579
|
-
key: 0,
|
|
1580
|
-
class: a(["tide-input-text-prefix", !g.value && t(e).FONT.COLOR.SURFACE.VARIANT, h.value ? "" : "offset"])
|
|
1581
|
-
}, L(i.prefix), 3)) : A("", !0),
|
|
1582
|
-
E("div", {
|
|
1583
|
-
class: a([t(e).DISPLAY.FLEX, t(e).FLEX.DIRECTION.COLUMN, t(e).WIDTH.FULL]),
|
|
1584
|
-
onClick: B[1] || (B[1] = Te((se) => {
|
|
1585
|
-
var le;
|
|
1586
|
-
return (le = T.value) == null ? void 0 : le.focus();
|
|
1587
|
-
}, ["prevent"]))
|
|
1588
|
-
}, [
|
|
1589
|
-
m.label ? (l(), r("label", {
|
|
1590
|
-
key: 0,
|
|
1591
|
-
class: a([
|
|
1592
|
-
h.value ? ["minilabel", t(e).FONT.SIZE.TWELVE] : t(e).FONT.SIZE.SIXTEEN,
|
|
1593
|
-
!g.value && t(e).FONT.COLOR.SURFACE.VARIANT,
|
|
1594
|
-
t(e).FONT.WEIGHT.FIVE_HUNDRED,
|
|
1595
|
-
t(e).CURSOR.TEXT
|
|
1596
|
-
]),
|
|
1597
|
-
for: V.value
|
|
1598
|
-
}, L(p.value), 11, lt)) : A("", !0),
|
|
1599
|
-
ae(E("input", {
|
|
1600
|
-
autocomplete: m.autocomplete ? "on" : "off",
|
|
1601
|
-
class: a([t(e).WIDTH.FULL, m.disabled && t(e).CURSOR.NOT_ALLOWED]),
|
|
1602
|
-
"data-track": i.dataTrack,
|
|
1603
|
-
disabled: i.disabled,
|
|
1604
|
-
maxlength: i.maxlength,
|
|
1605
|
-
minlength: i.minlength,
|
|
1606
|
-
name: i.name,
|
|
1607
|
-
ref_key: "input",
|
|
1608
|
-
ref: T,
|
|
1609
|
-
required: i.required,
|
|
1610
|
-
type: Y.value,
|
|
1611
|
-
onChange: k,
|
|
1612
|
-
onFocus: u,
|
|
1613
|
-
onFocusout: U,
|
|
1614
|
-
onInput: P,
|
|
1615
|
-
id: V.value,
|
|
1616
|
-
"onUpdate:modelValue": B[0] || (B[0] = (se) => c.value = se)
|
|
1617
|
-
}, null, 42, dt), [
|
|
1618
|
-
[ve, c.value]
|
|
1619
|
-
])
|
|
1620
|
-
], 2),
|
|
1621
|
-
i.suffix ? (l(), r("div", {
|
|
1622
|
-
key: 1,
|
|
1623
|
-
class: a(["tide-input-text-suffix", !g.value && t(e).FONT.COLOR.SURFACE.VARIANT, h.value ? "" : "offset"])
|
|
1624
|
-
}, L(i.suffix), 3)) : A("", !0)
|
|
1625
|
-
], 2),
|
|
1626
|
-
O.value && i.type !== t(K).PASSWORD ? (l(), S(f, {
|
|
1627
|
-
key: 1,
|
|
1628
|
-
class: a([t(e).PADDING.Y.HALF, t(e).PADDING.FULL.HALF, t(e).CURSOR.POINTER]),
|
|
1629
|
-
icon: t(_).CLOSE,
|
|
1630
|
-
size: t(y).SMALL,
|
|
1631
|
-
onClick: H
|
|
1632
|
-
}, null, 8, ["class", "icon", "size"])) : A("", !0),
|
|
1633
|
-
i.type === t(K).PASSWORD ? (l(), S(f, {
|
|
1634
|
-
key: 2,
|
|
1635
|
-
class: a([t(e).PADDING.Y.HALF, t(e).PADDING.FULL.HALF, t(e).CURSOR.POINTER]),
|
|
1636
|
-
icon: t(_).VISIBILITY,
|
|
1637
|
-
size: t(y).SMALL,
|
|
1638
|
-
onClick: B[2] || (B[2] = (se) => I.value = !I.value)
|
|
1639
|
-
}, null, 8, ["class", "icon", "size"])) : A("", !0)
|
|
1640
|
-
], 2),
|
|
1641
|
-
i.supportingText || g.value ? (l(), r("div", {
|
|
1642
|
-
key: 0,
|
|
1643
|
-
class: a([t(e).DISPLAY.FLEX, t(e).AXIS2.CENTER, t(e).GAP.QUARTER, t(e).MARGIN.LEFT.ONE])
|
|
1644
|
-
}, [
|
|
1645
|
-
g.value ? (l(), S(f, {
|
|
1646
|
-
key: 0,
|
|
1647
|
-
class: a([]),
|
|
1648
|
-
icon: t(_).ERROR,
|
|
1649
|
-
size: t(y).SMALL
|
|
1650
|
-
}, null, 8, ["icon", "size"])) : A("", !0),
|
|
1651
|
-
E("div", {
|
|
1652
|
-
class: a([t(e).FONT.SIZE.TWELVE, t(e).FONT.WEIGHT.FIVE_HUNDRED])
|
|
1653
|
-
}, L(g.value ? R.value : i.supportingText), 3)
|
|
1654
|
-
], 2)) : A("", !0)
|
|
1655
|
-
], 2));
|
|
1656
|
-
}
|
|
1657
|
-
});
|
|
1658
|
-
const Yt = /* @__PURE__ */ C(rt, [["__scopeId", "data-v-b8328f68"]]), Et = ["for"], ct = ["data-track", "maxlength", "minlength", "name", "required", "rows", "id"], Tt = /* @__PURE__ */ v({
|
|
1659
|
-
__name: "TideInputTextarea",
|
|
1660
|
-
props: {
|
|
1661
|
-
dataTrack: { default: "" },
|
|
1662
|
-
error: { type: [String, Boolean], default: !1 },
|
|
1663
|
-
inputId: { default: void 0 },
|
|
1664
|
-
label: { default: void 0 },
|
|
1665
|
-
maxlength: { default: void 0 },
|
|
1666
|
-
minlength: { default: void 0 },
|
|
1667
|
-
name: { default: void 0 },
|
|
1668
|
-
required: { type: Boolean, default: !1 },
|
|
1669
|
-
rows: { default: 8 },
|
|
1670
|
-
supportingText: { default: void 0 },
|
|
1671
|
-
value: { default: "" }
|
|
1672
|
-
},
|
|
1673
|
-
setup(n, { expose: s }) {
|
|
1674
|
-
const i = n, o = N(i.error), d = N(!1), T = N(null), I = N(i.value), c = F(() => oe(i.error, o.value)), R = F(() => i.required ? `${i.label} *` : i.label), p = F(() => i.required && !I.value || ne(o.value, i.error)), O = F(() => d.value || !g.value), g = F(() => I.value === ""), h = F(() => {
|
|
1675
|
-
var H;
|
|
1676
|
-
return i.inputId ? i.inputId : `text-input-${((H = ee()) == null ? void 0 : H.uid) || ""}`;
|
|
1677
|
-
}), M = () => {
|
|
1678
|
-
d.value = !0;
|
|
1679
|
-
}, Y = () => {
|
|
1680
|
-
d.value = !1;
|
|
1681
|
-
}, V = () => Oe({
|
|
1682
|
-
error: o,
|
|
1683
|
-
errorFromProps: i.error,
|
|
1684
|
-
maxlength: i.maxlength,
|
|
1685
|
-
minlength: i.minlength,
|
|
1686
|
-
value: I
|
|
1687
|
-
});
|
|
1688
|
-
return Q(i, (H, u) => {
|
|
1689
|
-
(H.value !== u.value || H.value !== I.value) && (I.value = i.value);
|
|
1690
|
-
}), s({ error: o, value: I }), (H, u) => (l(), r("div", {
|
|
1691
|
-
class: a(["tide-input-textarea", t(e).DISPLAY.FLEX, t(e).FLEX.DIRECTION.COLUMN, t(e).GAP.QUARTER, p.value && "error"])
|
|
1692
|
-
}, [
|
|
1693
|
-
E("div", {
|
|
1694
|
-
class: a([
|
|
1695
|
-
"tide-input-textarea-field",
|
|
1696
|
-
t(e).GAP.HALF,
|
|
1697
|
-
t(e).POSITION.RELATIVE,
|
|
1698
|
-
t(e).BORDER.RADIUS.HALF,
|
|
1699
|
-
t(e).PADDING.LEFT.ONE,
|
|
1700
|
-
t(e).PADDING.TOP.HALF,
|
|
1701
|
-
t(e).OVERFLOW.XY.HIDDEN
|
|
1702
|
-
])
|
|
1703
|
-
}, [
|
|
1704
|
-
H.label ? (l(), r("label", {
|
|
1705
|
-
key: 0,
|
|
1706
|
-
class: a([
|
|
1707
|
-
O.value ? ["minilabel", t(e).FONT.SIZE.TWELVE] : t(e).FONT.SIZE.SIXTEEN,
|
|
1708
|
-
!p.value && t(e).FONT.COLOR.SURFACE.VARIANT,
|
|
1709
|
-
t(e).FONT.WEIGHT.FIVE_HUNDRED,
|
|
1710
|
-
t(e).CURSOR.TEXT
|
|
1711
|
-
]),
|
|
1712
|
-
for: h.value,
|
|
1713
|
-
ref: "label"
|
|
1714
|
-
}, L(R.value), 11, Et)) : A("", !0),
|
|
1715
|
-
ae(E("textarea", {
|
|
1716
|
-
class: a([t(e).WIDTH.FULL]),
|
|
1717
|
-
"data-track": i.dataTrack,
|
|
1718
|
-
maxlength: i.maxlength,
|
|
1719
|
-
minlength: i.minlength,
|
|
1720
|
-
name: i.name,
|
|
1721
|
-
ref_key: "input",
|
|
1722
|
-
ref: T,
|
|
1723
|
-
required: i.required,
|
|
1724
|
-
rows: i.rows,
|
|
1725
|
-
onChange: V,
|
|
1726
|
-
onFocus: M,
|
|
1727
|
-
onFocusout: Y,
|
|
1728
|
-
id: h.value,
|
|
1729
|
-
"onUpdate:modelValue": u[0] || (u[0] = (U) => I.value = U)
|
|
1730
|
-
}, null, 42, ct), [
|
|
1731
|
-
[Fe, I.value]
|
|
1732
|
-
])
|
|
1733
|
-
], 2),
|
|
1734
|
-
i.supportingText || p.value ? (l(), r("div", {
|
|
1735
|
-
key: 0,
|
|
1736
|
-
class: a([t(e).DISPLAY.FLEX, t(e).AXIS2.CENTER, t(e).GAP.QUARTER, t(e).MARGIN.LEFT.ONE])
|
|
1737
|
-
}, [
|
|
1738
|
-
p.value ? (l(), S(f, {
|
|
1739
|
-
key: 0,
|
|
1740
|
-
icon: t(_).ERROR,
|
|
1741
|
-
size: t(y).SMALL
|
|
1742
|
-
}, null, 8, ["icon", "size"])) : A("", !0),
|
|
1743
|
-
E("div", {
|
|
1744
|
-
class: a([t(e).FONT.SIZE.TWELVE, t(e).FONT.WEIGHT.FIVE_HUNDRED])
|
|
1745
|
-
}, L(p.value ? c.value : i.supportingText), 3)
|
|
1746
|
-
], 2)) : A("", !0)
|
|
1747
|
-
], 2));
|
|
1748
|
-
}
|
|
1749
|
-
});
|
|
1750
|
-
const Vt = /* @__PURE__ */ C(Tt, [["__scopeId", "data-v-022c8af4"]]), kt = /* @__PURE__ */ v({
|
|
1751
|
-
__name: "TideLink",
|
|
1752
|
-
props: {
|
|
1753
|
-
element: { default: D.LINK },
|
|
1754
|
-
href: { default: void 0 },
|
|
1755
|
-
iconLeading: { default: void 0 },
|
|
1756
|
-
iconTrailing: { default: void 0 },
|
|
1757
|
-
isNewTab: { type: Boolean, default: !1 },
|
|
1758
|
-
label: { default: void 0 }
|
|
1759
|
-
},
|
|
1760
|
-
setup(n) {
|
|
1761
|
-
const s = n, i = F(() => s.iconLeading || s.iconTrailing);
|
|
1762
|
-
return (o, d) => (l(), S(q(s.element === t(D).LINK ? t(D).LINK : t(D).BUTTON), {
|
|
1763
|
-
class: a([
|
|
1764
|
-
s.element === t(D).LINK ? "tide-button-as-link" : "tide-link",
|
|
1765
|
-
i.value ? [t(e).DISPLAY.INLINE_FLEX, t(e).AXIS2.CENTER, t(e).GAP.HALF] : [t(e).FONT.WEIGHT.SEVEN_HUNDRED, t(e).UNDERLINE.ON]
|
|
1766
|
-
]),
|
|
1767
|
-
href: s.href,
|
|
1768
|
-
target: s.isNewTab ? t(X).BLANK : t(X).SELF
|
|
1769
|
-
}, {
|
|
1770
|
-
default: J(() => [
|
|
1771
|
-
s.iconLeading ? (l(), S(f, {
|
|
1772
|
-
key: 0,
|
|
1773
|
-
icon: s.iconLeading
|
|
1774
|
-
}, null, 8, ["icon"])) : A("", !0),
|
|
1775
|
-
i.value ? (l(), r("div", {
|
|
1776
|
-
key: 1,
|
|
1777
|
-
class: a([t(e).FONT.WEIGHT.SEVEN_HUNDRED, t(e).UNDERLINE.ON])
|
|
1778
|
-
}, L(s.label), 3)) : (l(), r($, { key: 2 }, [
|
|
1779
|
-
ce(L(s.label), 1)
|
|
1780
|
-
], 64)),
|
|
1781
|
-
s.iconTrailing ? (l(), S(f, {
|
|
1782
|
-
key: 3,
|
|
1783
|
-
icon: s.iconTrailing
|
|
1784
|
-
}, null, 8, ["icon"])) : A("", !0)
|
|
1785
|
-
]),
|
|
1786
|
-
_: 1
|
|
1787
|
-
}, 8, ["class", "href", "target"]));
|
|
1788
|
-
}
|
|
1789
|
-
}), It = ["onClick"], Ot = /* @__PURE__ */ v({
|
|
1790
|
-
__name: "TideModal",
|
|
1791
|
-
props: {
|
|
1792
|
-
isOpen: { type: Boolean },
|
|
1793
|
-
title: {},
|
|
1794
|
-
width: {}
|
|
1795
|
-
},
|
|
1796
|
-
emits: ["close"],
|
|
1797
|
-
setup(n, { emit: s }) {
|
|
1798
|
-
const i = n, o = N(i.isOpen), d = N(null), T = (O) => {
|
|
1799
|
-
o.value = !1, I(), s("close", O);
|
|
1800
|
-
}, I = () => {
|
|
1801
|
-
o.value ? (d.value = window.scrollY, document.body.style.overflow = "hidden", d.value && window.scrollTo(0, d.value), R()) : (document.body.style.overflow = "", p());
|
|
1802
|
-
}, c = (O) => {
|
|
1803
|
-
O.key === "Escape" && (O.stopPropagation(), T(O));
|
|
1804
|
-
}, R = () => {
|
|
1805
|
-
window.addEventListener("keydown", c);
|
|
1806
|
-
}, p = () => {
|
|
1807
|
-
window.removeEventListener("keydown", c);
|
|
1808
|
-
};
|
|
1809
|
-
return j(() => {
|
|
1810
|
-
I();
|
|
1811
|
-
}), Q(i, (O) => {
|
|
1812
|
-
o.value = O.isOpen, I();
|
|
1813
|
-
}), (O, g) => (l(), S(_e, { to: "body" }, [
|
|
1814
|
-
E("div", {
|
|
1815
|
-
class: a([
|
|
1816
|
-
"tide-modal-wrapper",
|
|
1817
|
-
t(e).POSITION.ABSOLUTE,
|
|
1818
|
-
t(e).DISPLAY.FLEX,
|
|
1819
|
-
t(e).AXIS1.CENTER,
|
|
1820
|
-
t(e).AXIS2.CENTER,
|
|
1821
|
-
t(e).POSITIONING.TOP,
|
|
1822
|
-
t(e).POSITIONING.LEFT,
|
|
1823
|
-
t(e).WIDTH.FULL,
|
|
1824
|
-
t(e).HEIGHT.FULL,
|
|
1825
|
-
i.isOpen ? "active" : t(e).POINTER_EVENTS.OFF,
|
|
1826
|
-
t(e).OVERFLOW.Y.HIDDEN
|
|
1827
|
-
])
|
|
1828
|
-
}, [
|
|
1829
|
-
E("div", {
|
|
1830
|
-
class: a(["tide-modal-bg", t(e).POSITION.ABSOLUTE, t(e).WIDTH.FULL, t(e).HEIGHT.FULL]),
|
|
1831
|
-
style: ie({ "--tide-modal-width": i.width }),
|
|
1832
|
-
onClick: Te(T, ["self"])
|
|
1833
|
-
}, null, 14, It),
|
|
1834
|
-
E("div", {
|
|
1835
|
-
class: a([
|
|
1836
|
-
"tide-modal",
|
|
1837
|
-
t(e).BG.SURFACE.DEFAULT,
|
|
1838
|
-
t(e).FONT.COLOR.SURFACE.DEFAULT,
|
|
1839
|
-
t(e).POSITION.ABSOLUTE,
|
|
1840
|
-
t(e).DISPLAY.FLEX,
|
|
1841
|
-
t(e).FLEX.DIRECTION.COLUMN,
|
|
1842
|
-
t(e).BORDER.RADIUS.ONE,
|
|
1843
|
-
t(e).OVERFLOW.XY.HIDDEN,
|
|
1844
|
-
t(e).SHADOW.BOTTOM
|
|
1845
|
-
])
|
|
1846
|
-
}, [
|
|
1847
|
-
E("header", {
|
|
1848
|
-
class: a([
|
|
1849
|
-
"tide-modal-header",
|
|
1850
|
-
t(e).POSITION.RELATIVE,
|
|
1851
|
-
t(e).DISPLAY.FLEX,
|
|
1852
|
-
t(e).AXIS2.CENTER,
|
|
1853
|
-
t(e).PADDING.Y.ONE,
|
|
1854
|
-
t(e).PADDING.X.TWO,
|
|
1855
|
-
t(e).BORDER.BOTTOM.ONE,
|
|
1856
|
-
t(e).BORDER.COLOR.LOW
|
|
1857
|
-
])
|
|
1858
|
-
}, [
|
|
1859
|
-
O.title ? (l(), r("div", {
|
|
1860
|
-
key: 0,
|
|
1861
|
-
class: a([t(e).FLEX.GROW.ON, t(e).FONT.SIZE.TWENTY, t(e).FONT.WEIGHT.SEVEN_HUNDRED])
|
|
1862
|
-
}, L(O.title), 3)) : A("", !0),
|
|
1863
|
-
E("button", {
|
|
1864
|
-
class: a([t(e).POSITION.ABSOLUTE, t(e).POSITIONING.RIGHT, t(e).MARGIN.RIGHT.TWO]),
|
|
1865
|
-
onClick: T,
|
|
1866
|
-
title: "Close"
|
|
1867
|
-
}, [
|
|
1868
|
-
G(f, {
|
|
1869
|
-
icon: t(_).CLOSE
|
|
1870
|
-
}, null, 8, ["icon"])
|
|
1871
|
-
], 2)
|
|
1872
|
-
], 2),
|
|
1873
|
-
E("div", {
|
|
1874
|
-
class: a(["tide-modal-content", t(e).PADDING.FULL.TWO, t(e).OVERFLOW.Y.AUTO])
|
|
1875
|
-
}, [
|
|
1876
|
-
W(O.$slots, "default", {}, void 0, !0)
|
|
1877
|
-
], 2),
|
|
1878
|
-
O.$slots.footer ? (l(), r("footer", {
|
|
1879
|
-
key: 0,
|
|
1880
|
-
class: a([
|
|
1881
|
-
"tide-bg-surface",
|
|
1882
|
-
t(e).POSITION.STICKY,
|
|
1883
|
-
t(e).POSITIONING.LEFT,
|
|
1884
|
-
t(e).POSITIONING.BOTTOM,
|
|
1885
|
-
t(e).DISPLAY.FLEX,
|
|
1886
|
-
t(e).AXIS1.END,
|
|
1887
|
-
t(e).GAP.ONE,
|
|
1888
|
-
t(e).PADDING.X.TWO,
|
|
1889
|
-
t(e).PADDING.Y.ONE,
|
|
1890
|
-
t(e).SHADOW.TOP
|
|
1891
|
-
])
|
|
1892
|
-
}, [
|
|
1893
|
-
W(O.$slots, "footer", {}, void 0, !0)
|
|
1894
|
-
], 2)) : A("", !0)
|
|
1895
|
-
], 2)
|
|
1896
|
-
], 2)
|
|
1897
|
-
]));
|
|
1898
|
-
}
|
|
1899
|
-
});
|
|
1900
|
-
const xt = /* @__PURE__ */ C(Ot, [["__scopeId", "data-v-be0a6835"]]), wt = /* @__PURE__ */ v({
|
|
1901
|
-
__name: "TidePagination",
|
|
1902
|
-
props: {
|
|
1903
|
-
pageCurrent: { default: 1 },
|
|
1904
|
-
pageTotal: { default: 1 }
|
|
1905
|
-
},
|
|
1906
|
-
emits: ["change"],
|
|
1907
|
-
setup(n, { emit: s }) {
|
|
1908
|
-
const i = n, o = N(i.pageCurrent), d = F(() => new Array(i.pageTotal).fill("").map((I, c) => c + 1)), T = (I, c) => {
|
|
1909
|
-
o.value = c, s("change", I, c);
|
|
1910
|
-
};
|
|
1911
|
-
return (I, c) => (l(), r("section", {
|
|
1912
|
-
class: a(["tide-pagination", t(e).DISPLAY.FLEX, t(e).AXIS1.CENTER, t(e).AXIS2.CENTER, t(e).GAP.QUARTER, t(e).WIDTH.FULL])
|
|
1913
|
-
}, [
|
|
1914
|
-
G(Z, {
|
|
1915
|
-
disabled: o.value === 1,
|
|
1916
|
-
icon: t(_).CHEVRON_LEFT,
|
|
1917
|
-
priority: t(w).QUATERNARY,
|
|
1918
|
-
onClick: c[0] || (c[0] = (R) => T(R, o.value - 1))
|
|
1919
|
-
}, null, 8, ["disabled", "icon", "priority"]),
|
|
1920
|
-
E("ul", {
|
|
1921
|
-
class: a([t(e).DISPLAY.FLEX, t(e).AXIS2.CENTER, t(e).GAP.QUARTER, t(e).LIST_BULLETS.OFF])
|
|
1922
|
-
}, [
|
|
1923
|
-
(l(!0), r($, null, z(d.value, (R) => (l(), r("li", { key: R }, [
|
|
1924
|
-
G(Xe, {
|
|
1925
|
-
disabled: o.value === R,
|
|
1926
|
-
label: R,
|
|
1927
|
-
priority: t(w).QUATERNARY,
|
|
1928
|
-
onClick: (p) => T(p, R)
|
|
1929
|
-
}, null, 8, ["disabled", "label", "priority", "onClick"])
|
|
1930
|
-
]))), 128))
|
|
1931
|
-
], 2),
|
|
1932
|
-
G(Z, {
|
|
1933
|
-
disabled: o.value === d.value[d.value.length - 1],
|
|
1934
|
-
icon: t(_).CHEVRON_RIGHT,
|
|
1935
|
-
priority: t(w).QUATERNARY,
|
|
1936
|
-
onClick: c[1] || (c[1] = (R) => T(R, o.value + 1))
|
|
1937
|
-
}, null, 8, ["disabled", "icon", "priority"])
|
|
1938
|
-
], 2));
|
|
1939
|
-
}
|
|
1940
|
-
}), ut = { class: "tide-seo-links" }, Rt = ["href", "target"], Nt = /* @__PURE__ */ v({
|
|
1941
|
-
__name: "TideSeoLinks",
|
|
1942
|
-
props: {
|
|
1943
|
-
heading: { default: "" },
|
|
1944
|
-
links: {}
|
|
1945
|
-
},
|
|
1946
|
-
setup(n) {
|
|
1947
|
-
const s = n;
|
|
1948
|
-
return (i, o) => (l(), r("section", ut, [
|
|
1949
|
-
E("h2", {
|
|
1950
|
-
class: a([t(e).MARGIN.BOTTOM.HALF, t(e).FONT.SIZE.SIXTEEN])
|
|
1951
|
-
}, L(s.heading), 3),
|
|
1952
|
-
E("ul", {
|
|
1953
|
-
class: a([t(e).DISPLAY.FLEX, t(e).FLEX.WRAP, t(e).GAP.TWO, t(e).LIST_BULLETS.OFF])
|
|
1954
|
-
}, [
|
|
1955
|
-
(l(!0), r($, null, z(s.links, (d) => (l(), r("li", {
|
|
1956
|
-
class: a(["tide-seo-link", t(e).DISPLAY.FLEX, t(e).FLEX.DIRECTION.COLUMN, t(e).GAP.QUARTER, t(e).FONT.SIZE.FOURTEEN]),
|
|
1957
|
-
key: d.label
|
|
1958
|
-
}, [
|
|
1959
|
-
E("a", {
|
|
1960
|
-
class: a([t(e).UNDERLINE.OFF]),
|
|
1961
|
-
href: d.url,
|
|
1962
|
-
target: d.isNewTab ? t(X).BLANK : t(X).SELF
|
|
1963
|
-
}, L(d.label), 11, Rt)
|
|
1964
|
-
], 2))), 128))
|
|
1965
|
-
], 2)
|
|
1966
|
-
]));
|
|
1967
|
-
}
|
|
1968
|
-
});
|
|
1969
|
-
const $t = /* @__PURE__ */ C(Nt, [["__scopeId", "data-v-d62373f1"]]), At = ["data-track", "onClick"], Lt = /* @__PURE__ */ v({
|
|
1970
|
-
__name: "TideTabs",
|
|
1971
|
-
props: {
|
|
1972
|
-
activeTabInitial: { default: 0 },
|
|
1973
|
-
tabs: {}
|
|
1974
|
-
},
|
|
1975
|
-
emits: ["change"],
|
|
1976
|
-
setup(n, { emit: s }) {
|
|
1977
|
-
const i = n, o = N(i.activeTabInitial), d = (T, I) => {
|
|
1978
|
-
o.value = I, s("change", T, I);
|
|
1979
|
-
};
|
|
1980
|
-
return (T, I) => (l(), r("div", {
|
|
1981
|
-
class: a([
|
|
1982
|
-
"tide-tabs",
|
|
1983
|
-
t(e).BG.SURFACE.VARIANT,
|
|
1984
|
-
t(e).DISPLAY.FLEX,
|
|
1985
|
-
t(e).GAP.QUARTER,
|
|
1986
|
-
t(e).BORDER.RADIUS.HALF,
|
|
1987
|
-
t(e).PADDING.FULL.QUARTER,
|
|
1988
|
-
t(e).OVERFLOW.XY.HIDDEN,
|
|
1989
|
-
t(e).WIDTH.FULL
|
|
1990
|
-
])
|
|
1991
|
-
}, [
|
|
1992
|
-
(l(!0), r($, null, z(i.tabs, (c, R) => (l(), r("button", {
|
|
1993
|
-
class: a([
|
|
1994
|
-
"tide-tabs-tab",
|
|
1995
|
-
R === o.value ? [t(e).BG.SURFACE.DEFAULT, t(e).FONT.COLOR.SURFACE.DEFAULT, t(e).SHADOW.BOTTOM] : ["inactive", t(e).FONT.COLOR.SURFACE.VARIANT],
|
|
1996
|
-
t(e).FLEX.GROW.ON,
|
|
1997
|
-
t(e).BORDER.RADIUS.QUARTER,
|
|
1998
|
-
t(e).PADDING.Y.QUARTER,
|
|
1999
|
-
t(e).WIDTH.FULL,
|
|
2000
|
-
t(e).FONT.WEIGHT.SIX_HUNDRED,
|
|
2001
|
-
t(e).WHITESPACE_WRAP.OFF
|
|
2002
|
-
]),
|
|
2003
|
-
"data-track": c.dataTrack || void 0,
|
|
2004
|
-
key: c.label,
|
|
2005
|
-
onClick: (p) => d(p, R)
|
|
2006
|
-
}, [
|
|
2007
|
-
E("span", {
|
|
2008
|
-
class: a([t(e).FONT.WEIGHT.SIX_HUNDRED])
|
|
2009
|
-
}, L(c.label), 3),
|
|
2010
|
-
c.count && c.count > 0 ? (l(), r("span", {
|
|
2011
|
-
key: 0,
|
|
2012
|
-
class: a([t(e).FONT.WEIGHT.SIX_HUNDRED])
|
|
2013
|
-
}, " (" + L(c.count) + ") ", 3)) : A("", !0)
|
|
2014
|
-
], 10, At))), 128))
|
|
2015
|
-
], 2));
|
|
2016
|
-
}
|
|
2017
|
-
});
|
|
2018
|
-
const Qt = /* @__PURE__ */ C(Lt, [["__scopeId", "data-v-894fc638"]]), pt = ["disabled"], vt = /* @__PURE__ */ v({
|
|
2019
|
-
__name: "TideToggle",
|
|
2020
|
-
props: {
|
|
2021
|
-
disabled: {
|
|
2022
|
-
default: !1,
|
|
2023
|
-
required: !1,
|
|
2024
|
-
type: Boolean
|
|
2025
|
-
},
|
|
2026
|
-
isActive: {
|
|
2027
|
-
required: !0,
|
|
2028
|
-
type: Boolean
|
|
2029
|
-
}
|
|
2030
|
-
},
|
|
2031
|
-
emits: ["change"],
|
|
2032
|
-
setup(n, { emit: s }) {
|
|
2033
|
-
const i = n, o = N(i.isActive), d = (T) => {
|
|
2034
|
-
i.disabled || (o.value = !o.value, s("change", T, o.value));
|
|
2035
|
-
};
|
|
2036
|
-
return (T, I) => (l(), r("button", {
|
|
2037
|
-
class: a([
|
|
2038
|
-
"tide-toggle",
|
|
2039
|
-
i.isActive ? "active" : "",
|
|
2040
|
-
t(e).DISPLAY.FLEX,
|
|
2041
|
-
t(e).AXIS2.CENTER,
|
|
2042
|
-
t(e).BORDER.FULL.ONE,
|
|
2043
|
-
t(e).BORDER.RADIUS.FULL,
|
|
2044
|
-
i.isActive ? "" : t(e).BORDER.COLOR.DEFAULT,
|
|
2045
|
-
t(e).OVERFLOW.XY.HIDDEN,
|
|
2046
|
-
i.isActive ? t(e).BG.SECONDARY : t(e).BG.SURFACE.DEFAULT
|
|
2047
|
-
]),
|
|
2048
|
-
disabled: i.disabled,
|
|
2049
|
-
onClick: d,
|
|
2050
|
-
"aria-label": "Toggle"
|
|
2051
|
-
}, [
|
|
2052
|
-
E("div", {
|
|
2053
|
-
class: a([
|
|
2054
|
-
"tide-toggle-indicator",
|
|
2055
|
-
t(e).POSITION.RELATIVE,
|
|
2056
|
-
t(e).DISPLAY.FLEX,
|
|
2057
|
-
t(e).AXIS1.CENTER,
|
|
2058
|
-
t(e).AXIS2.CENTER,
|
|
2059
|
-
t(e).BORDER.RADIUS.FULL,
|
|
2060
|
-
i.isActive ? t(e).BG.SURFACE.DEFAULT : t(e).BG.SECONDARY
|
|
2061
|
-
])
|
|
2062
|
-
}, [
|
|
2063
|
-
G(f, {
|
|
2064
|
-
icon: t(_).CHECK,
|
|
2065
|
-
size: t(y).LARGE
|
|
2066
|
-
}, null, 8, ["icon", "size"])
|
|
2067
|
-
], 2)
|
|
2068
|
-
], 10, pt));
|
|
2069
|
-
}
|
|
2070
|
-
});
|
|
2071
|
-
const Kt = /* @__PURE__ */ C(vt, [["__scopeId", "data-v-59d06131"]]), Zt = {
|
|
2072
|
-
AERO: "aero",
|
|
2073
|
-
ATV: "atv",
|
|
2074
|
-
BOATMART: "boatmart",
|
|
2075
|
-
CYCLE: "cycle",
|
|
2076
|
-
EQUIP: "equip",
|
|
2077
|
-
PWC: "pwc",
|
|
2078
|
-
RV: "rv",
|
|
2079
|
-
SNOW: "snow",
|
|
2080
|
-
TRUCK: "truck"
|
|
2081
|
-
};
|
|
2082
|
-
export {
|
|
2083
|
-
b as A,
|
|
2084
|
-
Ut as B,
|
|
2085
|
-
e as C,
|
|
2086
|
-
kt as D,
|
|
2087
|
-
D as E,
|
|
2088
|
-
xt as F,
|
|
2089
|
-
wt as G,
|
|
2090
|
-
$t as H,
|
|
2091
|
-
_ as I,
|
|
2092
|
-
Qt as J,
|
|
2093
|
-
Kt as K,
|
|
2094
|
-
w as P,
|
|
2095
|
-
Zt as R,
|
|
2096
|
-
y as S,
|
|
2097
|
-
X as T,
|
|
2098
|
-
C as _,
|
|
2099
|
-
mt as a,
|
|
2100
|
-
he as b,
|
|
2101
|
-
x as c,
|
|
2102
|
-
_t as d,
|
|
2103
|
-
Dt as e,
|
|
2104
|
-
St as f,
|
|
2105
|
-
ft as g,
|
|
2106
|
-
gt as h,
|
|
2107
|
-
Ct as i,
|
|
2108
|
-
Pt as j,
|
|
2109
|
-
Z as k,
|
|
2110
|
-
Xe as l,
|
|
2111
|
-
Gt as m,
|
|
2112
|
-
ht as n,
|
|
2113
|
-
Ht as o,
|
|
2114
|
-
bt as p,
|
|
2115
|
-
yt as q,
|
|
2116
|
-
Bt as r,
|
|
2117
|
-
re as s,
|
|
2118
|
-
f as t,
|
|
2119
|
-
Wt as u,
|
|
2120
|
-
ge as v,
|
|
2121
|
-
Xt as w,
|
|
2122
|
-
Mt as x,
|
|
2123
|
-
Yt as y,
|
|
2124
|
-
Vt as z
|
|
2125
|
-
};
|
|
2126
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXgtYTczNGRjYmQuanMiLCJzb3VyY2VzIjpbIi4uL3NyYy90eXBlcy9TdHlsZXMudHMiLCIuLi9zcmMvdHlwZXMvT3JpZW50YXRpb24udHMiLCIuLi9zcmMvdHlwZXMvU2l6ZS50cyIsIi4uL3NyYy91dGlsaXRpZXMvZm9ybWF0LnRzIiwiLi4vc3JjL2NvbXBvbmVudHMvVGlkZUljb24udnVlIiwiLi4vc3JjL3R5cGVzL0ljb24udHMiLCIuLi9zcmMvY29tcG9uZW50cy9UaWRlQWNjb3JkaW9uSXRlbS52dWUiLCIuLi9zcmMvdHlwZXMvRWxlbWVudC50cyIsIi4uL3NyYy90eXBlcy9Qcmlvcml0eS50cyIsIi4uL3NyYy90eXBlcy9UYXJnZXQudHMiLCIuLi9zcmMvdHlwZXMvQWxlcnQudHMiLCIuLi9zcmMvY29tcG9uZW50cy9UaWRlQWxlcnQudnVlIiwiLi4vc3JjL3R5cGVzL0JhZGdlLnRzIiwiLi4vc3JjL2NvbXBvbmVudHMvVGlkZUNhcm91c2VsLnZ1ZSIsIi4uL3NyYy9jb21wb25lbnRzL1RpZGVJbWFnZS52dWUiLCIuLi9zcmMvY29tcG9uZW50cy9UaWRlSW5wdXRSYWRpby52dWUiLCIuLi9zcmMvdXRpbGl0aWVzL3ZhbGlkYXRpb24udHMiLCIuLi9zcmMvY29tcG9uZW50cy9UaWRlSW5wdXRTZWxlY3QudnVlIiwiLi4vc3JjL3R5cGVzL1RleHRJbnB1dC50cyIsIi4uL3NyYy9jb21wb25lbnRzL1RpZGVJbnB1dFRleHQudnVlIiwiLi4vc3JjL2NvbXBvbmVudHMvVGlkZUlucHV0VGV4dGFyZWEudnVlIiwiLi4vc3JjL2NvbXBvbmVudHMvVGlkZUxpbmsudnVlIiwiLi4vc3JjL2NvbXBvbmVudHMvVGlkZU1vZGFsLnZ1ZSIsIi4uL3NyYy9jb21wb25lbnRzL1RpZGVQYWdpbmF0aW9uLnZ1ZSIsIi4uL3NyYy9jb21wb25lbnRzL1RpZGVUYWJzLnZ1ZSIsIi4uL3NyYy9jb21wb25lbnRzL1RpZGVUb2dnbGUudnVlIiwiLi4vc3JjL3R5cGVzL1JlYWxtLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIHZ1ZS9zb3J0LWtleXMgKi9cblxuZXhwb3J0IGNvbnN0IENTUyA9IHtcbiAgQUxJR046IHtcbiAgICBYOiB7XG4gICAgICBDRU5URVI6ICd0aWRlLXRleHQtY2VudGVyJyxcbiAgICAgIExFRlQ6ICd0aWRlLXRleHQtbGVmdCcsXG4gICAgICBSSUdIVDogJ3RpZGUtdGV4dC1yaWdodCcsXG4gICAgfSxcbiAgICBZOiB7XG4gICAgICBNSURETEU6ICd0aWRlLWFsaWduLW1pZGRsZScsXG4gICAgfSxcbiAgfSxcbiAgQVhJUzE6IHtcbiAgICBBUk9VTkQ6ICd0aWRlLWF4aXMxLWFyb3VuZCcsXG4gICAgQkVUV0VFTjogJ3RpZGUtYXhpczEtYmV0d2VlbicsXG4gICAgQ0VOVEVSOiAndGlkZS1heGlzMS1jZW50ZXInLFxuICAgIEVORDogJ3RpZGUtYXhpczEtZW5kJyxcbiAgICBTVEFSVDogJ3RpZGUtYXhpczEtc3RhcnQnLFxuICB9LFxuICBBWElTMjoge1xuICAgIEFST1VORDogJ3RpZGUtYXhpczItYXJvdW5kJyxcbiAgICBDRU5URVI6ICd0aWRlLWF4aXMyLWNlbnRlcicsXG4gICAgRU5EOiAndGlkZS1heGlzMi1lbmQnLFxuICAgIFNUQVJUOiAndGlkZS1heGlzMi1zdGFydCcsXG4gIH0sXG4gIEJHOiB7XG4gICAgQkxVUjogJ3RpZGUtYmctYmx1cicsXG4gICAgRVJST1I6ICd0aWRlLWJnLWVycm9yJyxcbiAgICBJTkZPOiAndGlkZS1iZy1pbmZvJyxcbiAgICBQUklNQVJZOiAndGlkZS1iZy1wcmltYXJ5JyxcbiAgICBTRUNPTkRBUlk6ICd0aWRlLWJnLXNlY29uZGFyeScsXG4gICAgU1VDQ0VTUzogJ3RpZGUtYmctc3VjY2VzcycsXG4gICAgU1VSRkFDRToge1xuICAgICAgQUNDRU5UOiAndGlkZS1iZy1zdXJmYWNlLWFjY2VudCcsXG4gICAgICBBQ0NFTlRfVkFSSUFOVDogJ3RpZGUtYmctc3VyZmFjZS1hY2NlbnQtdmFyaWFudCcsXG4gICAgICBCUkFORDogJ3RpZGUtYmctc3VyZmFjZS1icmFuZCcsXG4gICAgICBERUZBVUxUOiAndGlkZS1iZy1zdXJmYWNlJyxcbiAgICAgIEVSUk9SOiAndGlkZS1iZy1zdXJmYWNlLWVycm9yJyxcbiAgICAgIEZMT0FUSU5HOiAndGlkZS1iZy1zdXJmYWNlLWZsb2F0aW5nJyxcbiAgICAgIEdSQURJRU5UOiAndGlkZS1iZy1zdXJmYWNlLWdyYWRpZW50JyxcbiAgICAgIElORk86ICd0aWRlLWJnLXN1cmZhY2UtaW5mbycsXG4gICAgICBTVUNDRVNTOiAndGlkZS1iZy1zdXJmYWNlLXN1Y2Nlc3MnLFxuICAgICAgVkFSSUFOVDogJ3RpZGUtYmctc3VyZmFjZS12YXJpYW50JyxcbiAgICAgIFdBUk5JTkc6ICd0aWRlLWJnLXN1cmZhY2Utd2FybmluZycsXG4gICAgfSxcbiAgICBXQVJOSU5HOiAndGlkZS1iZy13YXJuaW5nJyxcbiAgfSxcbiAgQk9SREVSOiB7XG4gICAgQ09MT1I6IHtcbiAgICAgIERFRkFVTFQ6ICd0aWRlLWJvcmRlcicsXG4gICAgICBGTE9BVElORzogJ3RpZGUtYm9yZGVyLWZsb2F0aW5nJyxcbiAgICAgIEhJR0g6ICd0aWRlLWJvcmRlci1oaWdoJyxcbiAgICAgIExPVzogJ3RpZGUtYm9yZGVyLWxvdycsXG4gICAgICBQUklNQVJZOiAndGlkZS1ib3JkZXItcHJpbWFyeScsXG4gICAgfSxcbiAgICBSQURJVVM6IHtcbiAgICAgIFFVQVJURVI6ICd0aWRlLXJhZGl1cy0xLzQnLFxuICAgICAgSEFMRjogJ3RpZGUtcmFkaXVzLTEvMicsXG4gICAgICBPTkU6ICd0aWRlLXJhZGl1cy0xJyxcbiAgICAgIEZVTEw6ICd0aWRlLXJhZGl1cy1mdWxsJyxcbiAgICB9LFxuICAgIEJPVFRPTToge1xuICAgICAgT05FOiAndGlkZS1ib3JkZXItYm90dG9tLTEnLFxuICAgICAgVFdPOiAndGlkZS1ib3JkZXItYm90dG9tLTInLFxuICAgIH0sXG4gICAgRlVMTDoge1xuICAgICAgT05FOiAndGlkZS1ib3JkZXItMScsXG4gICAgICBUV086ICd0aWRlLWJvcmRlci0yJyxcbiAgICB9LFxuICAgIExFRlQ6IHtcbiAgICAgIE9ORTogJ3RpZGUtYm9yZGVyLWxlZnQtMScsXG4gICAgICBUV086ICd0aWRlLWJvcmRlci1sZWZ0LTInLFxuICAgIH0sXG4gICAgUklHSFQ6IHtcbiAgICAgIE9ORTogJ3RpZGUtYm9yZGVyLXJpZ2h0LTEnLFxuICAgICAgVFdPOiAndGlkZS1ib3JkZXItcmlnaHQtMicsXG4gICAgfSxcbiAgICBUT1A6IHtcbiAgICAgIE9ORTogJ3RpZGUtYm9yZGVyLXRvcC0xJyxcbiAgICAgIFRXTzogJ3RpZGUtYm9yZGVyLXRvcC0yJyxcbiAgICB9LFxuICB9LFxuICBCT1hfU0laSU5HOiB7XG4gICAgQk9SREVSX0JPWDogJ3RpZGUtYm94LWJvcmRlcicsXG4gICAgQ09OVEVOVF9CT1g6ICd0aWRlLWJveC1jb250ZW50JyxcbiAgfSxcbiAgQlJFQUtfV09SRDoge1xuICAgIE9OOiAndGlkZS1icmVhay13b3JkJyxcbiAgfSxcbiAgQ09MVU1OUzoge1xuICAgIE9ORTogJ3RpZGUtY29sdW1ucy0xJyxcbiAgICBUV086ICd0aWRlLWNvbHVtbnMtMicsXG4gICAgVEhSRUU6ICd0aWRlLWNvbHVtbnMtMycsXG4gICAgRk9VUjogJ3RpZGUtY29sdW1ucy00JyxcbiAgfSxcbiAgQ1VSU09SOiB7XG4gICAgTk9UX0FMTE9XRUQ6ICd0aWRlLWN1cnNvci1ub3QtYWxsb3dlZCcsXG4gICAgUE9JTlRFUjogJ3RpZGUtY3Vyc29yLXBvaW50ZXInLFxuICAgIFRFWFQ6ICd0aWRlLWN1cnNvci10ZXh0JyxcbiAgfSxcbiAgRElTUExBWToge1xuICAgIEJMT0NLOiAndGlkZS1kaXNwbGF5LWJsb2NrJyxcbiAgICBDT05URU5UUzogJ3RpZGUtY29udGVudHMnLFxuICAgIEZMRVg6ICd0aWRlLWRpc3BsYXktZmxleCcsXG4gICAgR1JJRDogJ3RpZGUtZGlzcGxheS1ncmlkJyxcbiAgICBJTklUSUFMOiAnaW5pdGlhbCcsXG4gICAgSU5MSU5FOiAndGlkZS1kaXNwbGF5LWlubGluZScsXG4gICAgSU5MSU5FX0JMT0NLOiAndGlkZS1kaXNwbGF5LWlubGluZS1ibG9jaycsXG4gICAgSU5MSU5FX0ZMRVg6ICd0aWRlLWRpc3BsYXktaW5saW5lLWZsZXgnLFxuICAgIE5PTkU6ICd0aWRlLWRpc3BsYXktbm9uZScsXG4gIH0sXG4gIEZMRVg6IHtcbiAgICBESVJFQ1RJT046IHtcbiAgICAgIENPTFVNTjogJ3RpZGUtZmxleC1jb2x1bW4nLFxuICAgICAgQ09MVU1OX1JFVkVSU0U6ICd0aWRlLWZsZXgtY29sdW1uLXJldmVyc2UnLFxuICAgICAgUk9XOiAndGlkZS1mbGV4LXJvdycsXG4gICAgICBST1dfUkVWRVJTRTogJ3RpZGUtcm93LXJldmVyc2UnLFxuICAgIH0sXG4gICAgR1JPVzoge1xuICAgICAgT0ZGOiAndGlkZS1ncm93LW5vbmUnLFxuICAgICAgT046ICd0aWRlLWdyb3cnLFxuICAgIH0sXG4gICAgU0hSSU5LOiB7XG4gICAgICBPRkY6ICd0aWRlLXNocmluay1ub25lJyxcbiAgICAgIE9OOiAndGlkZS1zaHJpbmsnLFxuICAgIH0sXG4gICAgV1JBUDogJ3RpZGUtZmxleC13cmFwJyxcbiAgfSxcbiAgRk9OVDoge1xuICAgIENPTE9SOiB7XG4gICAgICBQUklNQVJZOiAndGlkZS1mb250LW9uLXByaW1hcnknLFxuICAgICAgU0VDT05EQVJZOiAndGlkZS1mb250LW9uLXNlY29uZGFyeScsXG4gICAgICBTVVJGQUNFOiB7XG4gICAgICAgIEJSQU5EOiAndGlkZS1mb250LW9uLXN1cmZhY2UtYnJhbmQnLFxuICAgICAgICBERUZBVUxUOiAndGlkZS1mb250LW9uLXN1cmZhY2UnLFxuICAgICAgICBJTlZFUlNFOiAndGlkZS1mb250LW9uLXN1cmZhY2UtaW52ZXJzZScsXG4gICAgICAgIFZBUklBTlQ6ICd0aWRlLWZvbnQtb24tc3VyZmFjZS12YXJpYW50JyxcbiAgICAgICAgVkFSSUFOVF9JTlZFUlNFOiAndGlkZS1mb250LW9uLXN1cmZhY2UtdmFyaWFudC1pbnZlcnNlJyxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBTSVpFOiB7XG4gICAgICBUV0VMVkU6ICd0aWRlLWZvbnQtMTInLFxuICAgICAgRk9VUlRFRU46ICd0aWRlLWZvbnQtMTQnLFxuICAgICAgU0lYVEVFTjogJ3RpZGUtZm9udC0xNicsXG4gICAgICBUV0VOVFk6ICd0aWRlLWZvbnQtMjAnLFxuICAgICAgVFdFTlRZX0ZPVVI6ICd0aWRlLWZvbnQtMjQnLFxuICAgICAgVEhJUlRZX1RXTzogJ3RpZGUtZm9udC0zMicsXG4gICAgfSxcbiAgICBXRUlHSFQ6IHtcbiAgICAgIEZPVVJfSFVORFJFRDogJ3RpZGUtZm9udC00MDAnLFxuICAgICAgRklWRV9IVU5EUkVEOiAndGlkZS1mb250LTUwMCcsXG4gICAgICBTSVhfSFVORFJFRDogJ3RpZGUtZm9udC02MDAnLFxuICAgICAgU0VWRU5fSFVORFJFRDogJ3RpZGUtZm9udC03MDAnLFxuICAgIH0sXG4gIH0sXG4gIEdBUDoge1xuICAgIFFVQVJURVI6ICd0aWRlLWdhcC0xLzQnLFxuICAgIEhBTEY6ICd0aWRlLWdhcC0xLzInLFxuICAgIE9ORTogJ3RpZGUtZ2FwLTEnLFxuICAgIFRXTzogJ3RpZGUtZ2FwLTInLFxuICAgIEZPVVI6ICd0aWRlLWdhcC00JyxcbiAgfSxcbiAgR1JJRDoge1xuICAgIEVORDoge1xuICAgICAgT05FOiAndGlkZS1lbmQtMScsXG4gICAgICBUV086ICd0aWRlLWVuZC0yJyxcbiAgICAgIFRIUkVFOiAndGlkZS1lbmQtMycsXG4gICAgICBGT1VSOiAndGlkZS1lbmQtNCcsXG4gICAgICBGSVZFOiAndGlkZS1lbmQtNScsXG4gICAgICBTSVg6ICd0aWRlLWVuZC02JyxcbiAgICAgIFNFVkVOOiAndGlkZS1lbmQtNycsXG4gICAgICBFSUdIVDogJ3RpZGUtZW5kLTgnLFxuICAgICAgTklORTogJ3RpZGUtZW5kLTknLFxuICAgICAgVEVOOiAndGlkZS1lbmQtMTAnLFxuICAgICAgRUxFVkVOOiAndGlkZS1lbmQtMTEnLFxuICAgICAgVFdFTFZFOiAndGlkZS1lbmQtMTInLFxuICAgICAgVEhJUlRFRU46ICd0aWRlLWVuZC0xMycsXG4gICAgfSxcbiAgICBGTFVJRDogJ3RpZGUtZmx1aWQnLFxuICAgIExBWU9VVDogJ3RpZGUtZ3JpZC1sYXlvdXQnLFxuICAgIFNUQVJUOiB7XG4gICAgICBaRVJPOiAndGlkZS1zdGFydC0wJyxcbiAgICAgIE9ORTogJ3RpZGUtc3RhcnQtMScsXG4gICAgICBUV086ICd0aWRlLXN0YXJ0LTInLFxuICAgICAgVEhSRUU6ICd0aWRlLXN0YXJ0LTMnLFxuICAgICAgRk9VUjogJ3RpZGUtc3RhcnQtNCcsXG4gICAgICBGSVZFOiAndGlkZS1zdGFydC01JyxcbiAgICAgIFNJWDogJ3RpZGUtc3RhcnQtNicsXG4gICAgICBTRVZFTjogJ3RpZGUtc3RhcnQtNycsXG4gICAgICBFSUdIVDogJ3RpZGUtc3RhcnQtOCcsXG4gICAgICBOSU5FOiAndGlkZS1zdGFydC05JyxcbiAgICAgIFRFTjogJ3RpZGUtc3RhcnQtMTAnLFxuICAgICAgRUxFVkVOOiAndGlkZS1zdGFydC0xMScsXG4gICAgICBUV0VMVkU6ICd0aWRlLXN0YXJ0LTEyJyxcbiAgICB9LFxuICAgIFhMOiAndGlkZS1ncmlkLXhsJyxcbiAgfSxcbiAgSEVJR0hUOiB7XG4gICAgRlVMTDogJ3RpZGUtaGVpZ2h0LWZ1bGwnLFxuICB9LFxuICBMSVNUX0JVTExFVFM6IHtcbiAgICBPRkY6ICd0aWRlLWxpc3Qtbm9uZScsXG4gIH0sXG4gIE1BUkdJTjoge1xuICAgIEJPVFRPTToge1xuICAgICAgUVVBUlRFUjogJ3RpZGUtbWFyZ2luLWJvdHRvbS0xLzQnLFxuICAgICAgSEFMRjogJ3RpZGUtbWFyZ2luLWJvdHRvbS0xLzInLFxuICAgICAgT05FOiAndGlkZS1tYXJnaW4tYm90dG9tLTEnLFxuICAgICAgVFdPOiAndGlkZS1tYXJnaW4tYm90dG9tLTInLFxuICAgICAgRk9VUjogJ3RpZGUtbWFyZ2luLWJvdHRvbS00JyxcbiAgICB9LFxuICAgIEZVTEw6IHtcbiAgICAgIFFVQVJURVI6ICd0aWRlLW1hcmdpbi0xLzQnLFxuICAgICAgSEFMRjogJ3RpZGUtbWFyZ2luLTEvMicsXG4gICAgICBPTkU6ICd0aWRlLW1hcmdpbi0xJyxcbiAgICAgIFRXTzogJ3RpZGUtbWFyZ2luLTInLFxuICAgICAgRk9VUjogJ3RpZGUtbWFyZ2luLTQnLFxuICAgIH0sXG4gICAgTEVGVDoge1xuICAgICAgQVVUTzogJ3RpZGUtbWFyZ2luLWxlZnQtYXV0bycsXG4gICAgICBRVUFSVEVSOiAndGlkZS1tYXJnaW4tbGVmdC0xLzQnLFxuICAgICAgSEFMRjogJ3RpZGUtbWFyZ2luLWxlZnQtMS8yJyxcbiAgICAgIE9ORTogJ3RpZGUtbWFyZ2luLWxlZnQtMScsXG4gICAgICBUV086ICd0aWRlLW1hcmdpbi1sZWZ0LTInLFxuICAgICAgRk9VUjogJ3RpZGUtbWFyZ2luLWxlZnQtNCcsXG4gICAgfSxcbiAgICBSSUdIVDoge1xuICAgICAgQVVUTzogJ3RpZGUtbWFyZ2luLXJpZ2h0LWF1dG8nLFxuICAgICAgUVVBUlRFUjogJ3RpZGUtbWFyZ2luLXJpZ2h0LTEvNCcsXG4gICAgICBIQUxGOiAndGlkZS1tYXJnaW4tcmlnaHQtMS8yJyxcbiAgICAgIE9ORTogJ3RpZGUtbWFyZ2luLXJpZ2h0LTEnLFxuICAgICAgVFdPOiAndGlkZS1tYXJnaW4tcmlnaHQtMicsXG4gICAgICBGT1VSOiAndGlkZS1tYXJnaW4tcmlnaHQtNCcsXG4gICAgfSxcbiAgICBUT1A6IHtcbiAgICAgIFFVQVJURVI6ICd0aWRlLW1hcmdpbi10b3AtMS80JyxcbiAgICAgIEhBTEY6ICd0aWRlLW1hcmdpbi10b3AtMS8yJyxcbiAgICAgIE9ORTogJ3RpZGUtbWFyZ2luLXRvcC0xJyxcbiAgICAgIFRXTzogJ3RpZGUtbWFyZ2luLXRvcC0yJyxcbiAgICAgIEZPVVI6ICd0aWRlLW1hcmdpbi10b3AtNCcsXG4gICAgfSxcbiAgICBYOiB7XG4gICAgICBBVVRPOiAndGlkZS1tYXJnaW4teC1hdXRvJyxcbiAgICAgIFFVQVJURVI6ICd0aWRlLW1hcmdpbi14LTEvNCcsXG4gICAgICBIQUxGOiAndGlkZS1tYXJnaW4teC0xLzInLFxuICAgICAgT05FOiAndGlkZS1tYXJnaW4teC0xJyxcbiAgICAgIFRXTzogJ3RpZGUtbWFyZ2luLXgtMicsXG4gICAgICBGT1VSOiAndGlkZS1tYXJnaW4teC00JyxcbiAgICB9LFxuICAgIFk6IHtcbiAgICAgIFFVQVJURVI6ICd0aWRlLW1hcmdpbi15LTEvNCcsXG4gICAgICBIQUxGOiAndGlkZS1tYXJnaW4teS0xLzInLFxuICAgICAgT05FOiAndGlkZS1tYXJnaW4teS0xJyxcbiAgICAgIFRXTzogJ3RpZGUtbWFyZ2luLXktMicsXG4gICAgICBGT1VSOiAndGlkZS1tYXJnaW4teS00JyxcbiAgICB9LFxuICB9LFxuICBPQkpFQ1Q6IHtcbiAgICBDRU5URVI6ICd0aWRlLW9iamVjdC1jZW50ZXInLFxuICAgIENPTlRBSU46ICd0aWRlLW9iamVjdC1jb250YWluJyxcbiAgICBDT1ZFUjogJ3RpZGUtb2JqZWN0LWNvdmVyJyxcbiAgICBTQ0FMRV9ET1dOOiAndGlkZS1vYmplY3Qtc2NhbGUtZG93bicsXG4gIH0sXG4gIE9QQUNJVFk6IHtcbiAgICBPRkY6ICd0aWRlLW9wYWNpdHktbm9uZScsXG4gICAgT046ICd0aWRlLW9wYWNpdHknLFxuICB9LFxuICBPVkVSRkxPVzoge1xuICAgIFg6IHtcbiAgICAgIEFVVE86ICd0aWRlLXgtYXV0bycsXG4gICAgICBISURERU46ICd0aWRlLXgtaGlkZGVuJyxcbiAgICAgIFNDUk9MTDogJ3RpZGUteC1zY3JvbGwnLFxuICAgIH0sXG4gICAgWFk6IHtcbiAgICAgIEFVVE86ICd0aWRlLXh5LWF1dG8nLFxuICAgICAgSElEREVOOiAndGlkZS14eS1oaWRkZW4nLFxuICAgIH0sXG4gICAgWToge1xuICAgICAgQVVUTzogJ3RpZGUteS1hdXRvJyxcbiAgICAgIEhJRERFTjogJ3RpZGUteS1oaWRkZW4nLFxuICAgIH0sXG4gIH0sXG4gIFBBRERJTkc6IHtcbiAgICBCT1RUT006IHtcbiAgICAgIFFVQVJURVI6ICd0aWRlLXBhZGRpbmctYm90dG9tLTEvNCcsXG4gICAgICBIQUxGOiAndGlkZS1wYWRkaW5nLWJvdHRvbS0xLzInLFxuICAgICAgT05FOiAndGlkZS1wYWRkaW5nLWJvdHRvbS0xJyxcbiAgICAgIFRXTzogJ3RpZGUtcGFkZGluZy1ib3R0b20tMicsXG4gICAgICBGT1VSOiAndGlkZS1wYWRkaW5nLWJvdHRvbS00JyxcbiAgICB9LFxuICAgIEZVTEw6IHtcbiAgICAgIFFVQVJURVI6ICd0aWRlLXBhZGRpbmctMS80JyxcbiAgICAgIEhBTEY6ICd0aWRlLXBhZGRpbmctMS8yJyxcbiAgICAgIE9ORTogJ3RpZGUtcGFkZGluZy0xJyxcbiAgICAgIFRXTzogJ3RpZGUtcGFkZGluZy0yJyxcbiAgICAgIEZPVVI6ICd0aWRlLXBhZGRpbmctNCcsXG4gICAgfSxcbiAgICBMRUZUOiB7XG4gICAgICBRVUFSVEVSOiAndGlkZS1wYWRkaW5nLWxlZnQtMS80JyxcbiAgICAgIEhBTEY6ICd0aWRlLXBhZGRpbmctbGVmdC0xLzInLFxuICAgICAgT05FOiAndGlkZS1wYWRkaW5nLWxlZnQtMScsXG4gICAgICBUV086ICd0aWRlLXBhZGRpbmctbGVmdC0yJyxcbiAgICAgIEZPVVI6ICd0aWRlLXBhZGRpbmctbGVmdC00JyxcbiAgICB9LFxuICAgIFJJR0hUOiB7XG4gICAgICBRVUFSVEVSOiAndGlkZS1wYWRkaW5nLXJpZ2h0LTEvNCcsXG4gICAgICBIQUxGOiAndGlkZS1wYWRkaW5nLXJpZ2h0LTEvMicsXG4gICAgICBPTkU6ICd0aWRlLXBhZGRpbmctcmlnaHQtMScsXG4gICAgICBUV086ICd0aWRlLXBhZGRpbmctcmlnaHQtMicsXG4gICAgICBGT1VSOiAndGlkZS1wYWRkaW5nLXJpZ2h0LTQnLFxuICAgIH0sXG4gICAgVE9QOiB7XG4gICAgICBRVUFSVEVSOiAndGlkZS1wYWRkaW5nLXRvcC0xLzQnLFxuICAgICAgSEFMRjogJ3RpZGUtcGFkZGluZy10b3AtMS8yJyxcbiAgICAgIE9ORTogJ3RpZGUtcGFkZGluZy10b3AtMScsXG4gICAgICBUV086ICd0aWRlLXBhZGRpbmctdG9wLTInLFxuICAgICAgRk9VUjogJ3RpZGUtcGFkZGluZy10b3AtNCcsXG4gICAgfSxcbiAgICBYOiB7XG4gICAgICBRVUFSVEVSOiAndGlkZS1wYWRkaW5nLXgtMS80JyxcbiAgICAgIEhBTEY6ICd0aWRlLXBhZGRpbmcteC0xLzInLFxuICAgICAgT05FOiAndGlkZS1wYWRkaW5nLXgtMScsXG4gICAgICBUV086ICd0aWRlLXBhZGRpbmcteC0yJyxcbiAgICAgIEZPVVI6ICd0aWRlLXBhZGRpbmcteC00JyxcbiAgICB9LFxuICAgIFk6IHtcbiAgICAgIFFVQVJURVI6ICd0aWRlLXBhZGRpbmcteS0xLzQnLFxuICAgICAgSEFMRjogJ3RpZGUtcGFkZGluZy15LTEvMicsXG4gICAgICBPTkU6ICd0aWRlLXBhZGRpbmcteS0xJyxcbiAgICAgIFRXTzogJ3RpZGUtcGFkZGluZy15LTInLFxuICAgICAgRk9VUjogJ3RpZGUtcGFkZGluZy15LTQnLFxuICAgIH0sXG4gIH0sXG4gIFBPSU5URVJfRVZFTlRTOiB7XG4gICAgT0ZGOiAndGlkZS1wb2ludGVyLWV2ZW50cy1ub25lJyxcbiAgICBPTjogJ3RpZGUtcG9pbnRlci1ldmVudHMnLFxuICB9LFxuICBQT1NJVElPTjoge1xuICAgIEFCU09MVVRFOiAndGlkZS1wb3NpdGlvbi1hYnNvbHV0ZScsXG4gICAgRklYRUQ6ICd0aWRlLXBvc2l0aW9uLWZpeGVkJyxcbiAgICBSRUxBVElWRTogJ3RpZGUtcG9zaXRpb24tcmVsYXRpdmUnLFxuICAgIFNUSUNLWTogJ3RpZGUtc3RpY2t5JyxcbiAgfSxcbiAgUE9TSVRJT05JTkc6IHtcbiAgICBCT1RUT006ICd0aWRlLWJvdHRvbS0wJyxcbiAgICBMRUZUOiAndGlkZS1sZWZ0LTAnLFxuICAgIFJJR0hUOiAndGlkZS1yaWdodC0wJyxcbiAgICBUT1A6ICd0aWRlLXRvcC0wJyxcbiAgfSxcbiAgU0NST0xMQkFSOiB7XG4gICAgT0ZGOiAndGlkZS1zY3JvbGxiYXItbm9uZScsXG4gIH0sXG4gIFNIQURPVzoge1xuICAgIEJPVFRPTTogJ3RpZGUtc2hhZG93LWJvdHRvbScsXG4gICAgVE9QOiAndGlkZS1zaGFkb3ctdG9wJyxcbiAgfSxcbiAgU05BUDoge1xuICAgIE9OOiAndGlkZS1zbmFwJyxcbiAgfSxcbiAgU05BUF9BTElHTjoge1xuICAgIFNUQVJUOiAndGlkZS1zbmFwLXN0YXJ0JyxcbiAgfSxcbiAgVEVYVF9UUkFOU0ZPUk06IHtcbiAgICBMT1dFUjogJ3RpZGUtdGV4dC10cmFuc2Zvcm0tbG93ZXInLFxuICAgIE5PTkU6ICd0aWRlLXRleHQtdHJhbnNmb3JtLW5vbmUnLFxuICAgIFVQUEVSOiAndGlkZS10ZXh0LXRyYW5zZm9ybS11cHBlcicsXG4gIH0sXG4gIFVOREVSTElORToge1xuICAgIEhPVkVSOiAndGlkZS11bmRlcmxpbmUtaG92ZXInLFxuICAgIE9GRjogJ3RpZGUtdW5kZXJsaW5lLW5vbmUnLFxuICAgIE9OOiAndGlkZS11bmRlcmxpbmUnLFxuICB9LFxuICBWSVNJQklMSVRZOiB7XG4gICAgT0ZGOiAndGlkZS12aXNpYmxlLW5vbmUnLFxuICAgIE9OOiAndGlkZS12aXNpYmxlJyxcbiAgfSxcbiAgV0hJVEVTUEFDRV9XUkFQOiB7XG4gICAgT0ZGOiAndGlkZS13aGl0ZXNwYWNlLW5vd3JhcCcsXG4gIH0sXG4gIFdJRFRIOiB7XG4gICAgRlVMTDogJ3RpZGUtd2lkdGgtZnVsbCcsXG4gICAgTUFYX0ZVTEw6ICd0aWRlLW1heC13aWR0aC1mdWxsJyxcbiAgfSxcbn07XG5cbmV4cG9ydCB0eXBlIENzc1V0aWxpdHkgPSAodHlwZW9mIENTUylba2V5b2YgdHlwZW9mIENTU107XG5cbmV4cG9ydCBjb25zdCBjc3NTb3J0T3JkZXIgPSBbXG4gIENTUy5ESVNQTEFZLkJMT0NLLFxuICBDU1MuRElTUExBWS5DT05URU5UUyxcbiAgQ1NTLkRJU1BMQVkuRkxFWCxcbiAgQ1NTLkRJU1BMQVkuR1JJRCxcbiAgQ1NTLkRJU1BMQVkuTk9ORSxcbiAgQ1NTLkRJU1BMQVkuSU5JVElBTCxcbiAgQ1NTLkRJU1BMQVkuSU5MSU5FLFxuICBDU1MuRElTUExBWS5JTkxJTkVfQkxPQ0ssXG4gIENTUy5ESVNQTEFZLklOTElORV9GTEVYLFxuICBDU1MuQVhJUzEuQVJPVU5ELFxuICBDU1MuQVhJUzEuQkVUV0VFTixcbiAgQ1NTLkFYSVMxLkNFTlRFUixcbiAgQ1NTLkFYSVMxLkVORCxcbiAgQ1NTLkFYSVMxLlNUQVJULFxuICBDU1MuQVhJUzIuQVJPVU5ELFxuICBDU1MuQVhJUzIuQ0VOVEVSLFxuICBDU1MuQVhJUzIuRU5ELFxuICBDU1MuQVhJUzIuU1RBUlQsXG4gIENTUy5GTEVYLkRJUkVDVElPTi5DT0xVTU4sXG4gIENTUy5GTEVYLkRJUkVDVElPTi5DT0xVTU5fUkVWRVJTRSxcbiAgQ1NTLkZMRVguRElSRUNUSU9OLlJPVyxcbiAgQ1NTLkZMRVguRElSRUNUSU9OLlJPV19SRVZFUlNFLFxuICBDU1MuR0FQLk9ORSxcbiAgQ1NTLkdBUC5IQUxGLFxuICBDU1MuR0FQLlFVQVJURVIsXG4gIENTUy5HQVAuVFdPLFxuICBDU1MuR0FQLkZPVVIsXG4gIENTUy5GTEVYLkdST1cuT04sXG4gIENTUy5GTEVYLkdST1cuT0ZGLFxuICBDU1MuRkxFWC5TSFJJTksuT04sXG4gIENTUy5GTEVYLlNIUklOSy5PRkYsXG4gIENTUy5GTEVYLldSQVAsXG4gIENTUy5QT1NJVElPTi5BQlNPTFVURSxcbiAgQ1NTLlBPU0lUSU9OLkZJWEVELFxuICBDU1MuUE9TSVRJT04uUkVMQVRJVkUsXG4gIENTUy5QT1NJVElPTi5TVElDS1ksXG4gIENTUy5QT1NJVElPTklORy5UT1AsXG4gIENTUy5QT1NJVElPTklORy5SSUdIVCxcbiAgQ1NTLlBPU0lUSU9OSU5HLkJPVFRPTSxcbiAgQ1NTLlBPU0lUSU9OSU5HLkxFRlQsXG4gIENTUy5CT1hfU0laSU5HLkJPUkRFUl9CT1gsXG4gIENTUy5CT1hfU0laSU5HLkNPTlRFTlRfQk9YLFxuICBDU1MuTUFSR0lOLkZVTEwuT05FLFxuICBDU1MuTUFSR0lOLkZVTEwuSEFMRixcbiAgQ1NTLk1BUkdJTi5GVUxMLlFVQVJURVIsXG4gIENTUy5NQVJHSU4uRlVMTC5UV08sXG4gIENTUy5NQVJHSU4uRlVMTC5GT1VSLFxuICBDU1MuTUFSR0lOLlkuT05FLFxuICBDU1MuTUFSR0lOLlkuSEFMRixcbiAgQ1NTLk1BUkdJTi5ZLlFVQVJURVIsXG4gIENTUy5NQVJHSU4uWS5UV08sXG4gIENTUy5NQVJHSU4uWS5GT1VSLFxuICBDU1MuTUFSR0lOLlRPUC5PTkUsXG4gIENTUy5NQVJHSU4uVE9QLkhBTEYsXG4gIENTUy5NQVJHSU4uVE9QLlFVQVJURVIsXG4gIENTUy5NQVJHSU4uVE9QLlRXTyxcbiAgQ1NTLk1BUkdJTi5UT1AuRk9VUixcbiAgQ1NTLk1BUkdJTi5YLk9ORSxcbiAgQ1NTLk1BUkdJTi5YLkhBTEYsXG4gIENTUy5NQVJHSU4uWC5RVUFSVEVSLFxuICBDU1MuTUFSR0lOLlguVFdPLFxuICBDU1MuTUFSR0lOLlguRk9VUixcbiAgQ1NTLk1BUkdJTi5YLkFVVE8sXG4gIENTUy5NQVJHSU4uUklHSFQuT05FLFxuICBDU1MuTUFSR0lOLlJJR0hULkhBTEYsXG4gIENTUy5NQVJHSU4uUklHSFQuUVVBUlRFUixcbiAgQ1NTLk1BUkdJTi5SSUdIVC5UV08sXG4gIENTUy5NQVJHSU4uUklHSFQuRk9VUixcbiAgQ1NTLk1BUkdJTi5SSUdIVC5BVVRPLFxuICBDU1MuTUFSR0lOLkJPVFRPTS5PTkUsXG4gIENTUy5NQVJHSU4uQk9UVE9NLkhBTEYsXG4gIENTUy5NQVJHSU4uQk9UVE9NLlFVQVJURVIsXG4gIENTUy5NQVJHSU4uQk9UVE9NLlRXTyxcbiAgQ1NTLk1BUkdJTi5CT1RUT00uRk9VUixcbiAgQ1NTLk1BUkdJTi5MRUZULk9ORSxcbiAgQ1NTLk1BUkdJTi5MRUZULkhBTEYsXG4gIENTUy5NQVJHSU4uTEVGVC5RVUFSVEVSLFxuICBDU1MuTUFSR0lOLkxFRlQuVFdPLFxuICBDU1MuTUFSR0lOLkxFRlQuRk9VUixcbiAgQ1NTLk1BUkdJTi5MRUZULkFVVE8sXG4gIENTUy5CT1JERVIuRlVMTC5PTkUsXG4gIENTUy5CT1JERVIuRlVMTC5UV08sXG4gIENTUy5CT1JERVIuVE9QLk9ORSxcbiAgQ1NTLkJPUkRFUi5UT1AuVFdPLFxuICBDU1MuQk9SREVSLlJJR0hULk9ORSxcbiAgQ1NTLkJPUkRFUi5SSUdIVC5UV08sXG4gIENTUy5CT1JERVIuQk9UVE9NLk9ORSxcbiAgQ1NTLkJPUkRFUi5CT1RUT00uVFdPLFxuICBDU1MuQk9SREVSLkxFRlQuT05FLFxuICBDU1MuQk9SREVSLkxFRlQuVFdPLFxuICBDU1MuQk9SREVSLlJBRElVUy5PTkUsXG4gIENTUy5CT1JERVIuUkFESVVTLkhBTEYsXG4gIENTUy5CT1JERVIuUkFESVVTLlFVQVJURVIsXG4gIENTUy5CT1JERVIuUkFESVVTLkZVTEwsXG4gIENTUy5QQURESU5HLkZVTEwuT05FLFxuICBDU1MuUEFERElORy5GVUxMLkhBTEYsXG4gIENTUy5QQURESU5HLkZVTEwuUVVBUlRFUixcbiAgQ1NTLlBBRERJTkcuRlVMTC5UV08sXG4gIENTUy5QQURESU5HLkZVTEwuRk9VUixcbiAgQ1NTLlBBRERJTkcuWS5PTkUsXG4gIENTUy5QQURESU5HLlkuSEFMRixcbiAgQ1NTLlBBRERJTkcuWS5RVUFSVEVSLFxuICBDU1MuUEFERElORy5ZLlRXTyxcbiAgQ1NTLlBBRERJTkcuWS5GT1VSLFxuICBDU1MuUEFERElORy5UT1AuT05FLFxuICBDU1MuUEFERElORy5UT1AuSEFMRixcbiAgQ1NTLlBBRERJTkcuVE9QLlFVQVJURVIsXG4gIENTUy5QQURESU5HLlRPUC5UV08sXG4gIENTUy5QQURESU5HLlRPUC5GT1VSLFxuICBDU1MuUEFERElORy5YLk9ORSxcbiAgQ1NTLlBBRERJTkcuWC5IQUxGLFxuICBDU1MuUEFERElORy5YLlFVQVJURVIsXG4gIENTUy5QQURESU5HLlguVFdPLFxuICBDU1MuUEFERElORy5YLkZPVVIsXG4gIENTUy5QQURESU5HLlJJR0hULk9ORSxcbiAgQ1NTLlBBRERJTkcuUklHSFQuSEFMRixcbiAgQ1NTLlBBRERJTkcuUklHSFQuUVVBUlRFUixcbiAgQ1NTLlBBRERJTkcuUklHSFQuVFdPLFxuICBDU1MuUEFERElORy5SSUdIVC5GT1VSLFxuICBDU1MuUEFERElORy5CT1RUT00uT05FLFxuICBDU1MuUEFERElORy5CT1RUT00uSEFMRixcbiAgQ1NTLlBBRERJTkcuQk9UVE9NLlFVQVJURVIsXG4gIENTUy5QQURESU5HLkJPVFRPTS5UV08sXG4gIENTUy5QQURESU5HLkJPVFRPTS5GT1VSLFxuICBDU1MuUEFERElORy5MRUZULk9ORSxcbiAgQ1NTLlBBRERJTkcuTEVGVC5IQUxGLFxuICBDU1MuUEFERElORy5MRUZULlFVQVJURVIsXG4gIENTUy5QQURESU5HLkxFRlQuVFdPLFxuICBDU1MuUEFERElORy5MRUZULkZPVVIsXG4gIENTUy5XSURUSC5NQVhfRlVMTCxcbiAgQ1NTLldJRFRILkZVTEwsXG4gIENTUy5IRUlHSFQuRlVMTCxcbiAgQ1NTLkFMSUdOLlkuTUlERExFLFxuICBDU1MuQlJFQUtfV09SRCxcbiAgQ1NTLkNVUlNPUi5OT1RfQUxMT1dFRCxcbiAgQ1NTLkNVUlNPUi5QT0lOVEVSLFxuICBDU1MuRk9OVC5TSVpFLlRXRUxWRSxcbiAgQ1NTLkZPTlQuU0laRS5GT1VSVEVFTixcbiAgQ1NTLkZPTlQuU0laRS5TSVhURUVOLFxuICBDU1MuRk9OVC5TSVpFLlRXRU5UWSxcbiAgQ1NTLkZPTlQuU0laRS5UV0VOVFlfRk9VUixcbiAgQ1NTLkZPTlQuU0laRS5USElSVFlfVFdPLFxuICBDU1MuRk9OVC5XRUlHSFQuRk9VUl9IVU5EUkVELFxuICBDU1MuRk9OVC5XRUlHSFQuRklWRV9IVU5EUkVELFxuICBDU1MuRk9OVC5XRUlHSFQuU0lYX0hVTkRSRUQsXG4gIENTUy5GT05ULldFSUdIVC5TRVZFTl9IVU5EUkVELFxuICBDU1MuTElTVF9CVUxMRVRTLk9GRixcbiAgQ1NTLk9CSkVDVC5DRU5URVIsXG4gIENTUy5PQkpFQ1QuQ09OVEFJTixcbiAgQ1NTLk9CSkVDVC5DT1ZFUixcbiAgQ1NTLk9CSkVDVC5TQ0FMRV9ET1dOLFxuICBDU1MuUE9JTlRFUl9FVkVOVFMuT04sXG4gIENTUy5QT0lOVEVSX0VWRU5UUy5PRkYsXG4gIENTUy5TQ1JPTExCQVIuT0ZGLFxuICBDU1MuU0hBRE9XLkJPVFRPTSxcbiAgQ1NTLlNIQURPVy5UT1AsXG4gIENTUy5TTkFQLk9OLFxuICBDU1MuU05BUF9BTElHTi5TVEFSVCxcbiAgQ1NTLkFMSUdOLlguTEVGVCxcbiAgQ1NTLkFMSUdOLlguQ0VOVEVSLFxuICBDU1MuQUxJR04uWC5SSUdIVCxcbiAgQ1NTLlRFWFRfVFJBTlNGT1JNLkxPV0VSLFxuICBDU1MuVEVYVF9UUkFOU0ZPUk0uTk9ORSxcbiAgQ1NTLlRFWFRfVFJBTlNGT1JNLlVQUEVSLFxuICBDU1MuVU5ERVJMSU5FLFxuICBDU1MuVU5ERVJMSU5FLkhPVkVSLFxuICBDU1MuVU5ERVJMSU5FLk9GRixcbiAgQ1NTLlZJU0lCSUxJVFkuT04sXG4gIENTUy5WSVNJQklMSVRZLk9GRixcbiAgQ1NTLldISVRFU1BBQ0VfV1JBUC5PRkYsXG4gIENTUy5PVkVSRkxPVy5YWS5BVVRPLFxuICBDU1MuT1ZFUkZMT1cuWFkuSElEREVOLFxuICBDU1MuT1ZFUkZMT1cuWC5BVVRPLFxuICBDU1MuT1ZFUkZMT1cuWC5ISURERU4sXG4gIENTUy5PVkVSRkxPVy5YLlNDUk9MTCxcbiAgQ1NTLk9WRVJGTE9XLlkuQVVUTyxcbiAgQ1NTLk9WRVJGTE9XLlkuSElEREVOLFxuXTtcbiIsImV4cG9ydCBjb25zdCBPUklFTlRBVElPTiA9IHtcbiAgSE9SSVpPTlRBTDogJ2hvcml6b250YWwnLFxuICBWRVJUSUNBTDogJ3ZlcnRpY2FsJyxcbn0gYXMgY29uc3Q7XG5cbmV4cG9ydCB0eXBlIE9yaWVudGF0aW9uID0gKHR5cGVvZiBPUklFTlRBVElPTilba2V5b2YgdHlwZW9mIE9SSUVOVEFUSU9OXTtcbiIsImV4cG9ydCBjb25zdCBTSVpFID0ge1xuICBMQVJHRTogJ2xhcmdlJyxcbiAgU01BTEw6ICdzbWFsbCcsXG59IGFzIGNvbnN0O1xuXG5leHBvcnQgdHlwZSBTaXplID0gKHR5cGVvZiBTSVpFKVtrZXlvZiB0eXBlb2YgU0laRV07XG4iLCJjb25zdCBjYXBpdGFsaXplRmlyc3QgPSAoc3RyaW5nOiBzdHJpbmcpID0+IHtcbiAgcmV0dXJuIHN0cmluZy5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHN0cmluZy5zbGljZSgxKTtcbn07XG5cbmNvbnN0IGZvcm1hdENhbWVsQ2FzZSA9IChpbnB1dDogc3RyaW5nKTogc3RyaW5nID0+IHtcbiAgcmV0dXJuIGlucHV0ICYmIHR5cGVvZiBpbnB1dCA9PT0gJ3N0cmluZydcbiAgICA/IGlucHV0XG4gICAgICAgIC5yZXBsYWNlKC9eW1xcc18tXS8sICcnKVxuICAgICAgICAucmVwbGFjZSgvKFthLXpdezF9KShbQS1aXXsxfSkvZywgJyQxICQyJylcbiAgICAgICAgLnJlcGxhY2UoL1tcXHNfLV0vZywgJyAnKVxuICAgICAgICAudG9Mb3dlckNhc2UoKVxuICAgICAgICAuc3BsaXQoJyAnKVxuICAgICAgICAubWFwKCh3b3JkLCBpbmRleCkgPT4gKGluZGV4ID09PSAwID8gd29yZCA6IHdvcmQuc2xpY2UoMCwgMSkudG9VcHBlckNhc2UoKSArIHdvcmQuc2xpY2UoMSkpKVxuICAgICAgICAuam9pbignJylcbiAgICA6IGlucHV0O1xufTtcblxuY29uc3QgZm9ybWF0S2ViYWJDYXNlID0gKGlucHV0OiBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuICByZXR1cm4gaW5wdXQgJiYgdHlwZW9mIGlucHV0ID09PSAnc3RyaW5nJ1xuICAgID8gaW5wdXRcbiAgICAgICAgLnJlcGxhY2UoLyhbYS16XXsxfSkoW0EtWl17MX0pL2csICckMSAkMicpXG4gICAgICAgIC50b0xvd2VyQ2FzZSgpXG4gICAgICAgIC5yZXBsYWNlKC9bXFxzXy1dL2csICctJylcbiAgICA6IGlucHV0O1xufTtcblxuY29uc3QgZm9ybWF0TGFiZWwgPSAodmFsdWU6IHN0cmluZykgPT4ge1xuICBjb25zdCBsYWJlbE1hcDogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHtcbiAgICBmYWxzZTogJ05vJyxcbiAgICB0cnVlOiAnWWVzJyxcbiAgfTtcbiAgcmV0dXJuIE9iamVjdC5oYXNPd24obGFiZWxNYXAsIHZhbHVlKSA/IGxhYmVsTWFwW3ZhbHVlXSA6IHZhbHVlO1xufTtcblxuY29uc3QgZm9ybWF0TnVtYmVyID0gKGlucHV0OiBudW1iZXIgfCBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuICBsZXQgb3V0cHV0ID0gaW5wdXQgJiYgdHlwZW9mIGlucHV0ID09PSAnbnVtYmVyJyA/IG5ldyBJbnRsLk51bWJlckZvcm1hdCgpLmZvcm1hdChpbnB1dCkgOiBTdHJpbmcoaW5wdXQgfHwgJycpO1xuICBsZXQgZGlnaXRzID0gb3V0cHV0O1xuXG4gIGlmIChpbnB1dCAmJiB0eXBlb2YgaW5wdXQgPT09ICdzdHJpbmcnKSB7XG4gICAgZGlnaXRzID0gZGlnaXRzLnJlcGxhY2UoL1xcRC9nLCAnJyk7XG4gICAgaWYgKE51bWJlcihkaWdpdHMpKSB7XG4gICAgICBvdXRwdXQgPSBuZXcgSW50bC5OdW1iZXJGb3JtYXQoKS5mb3JtYXQoTnVtYmVyKGRpZ2l0cykpO1xuICAgIH0gZWxzZSB7XG4gICAgICBvdXRwdXQgPSAnMCc7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIG91dHB1dDtcbn07XG5cbmNvbnN0IGZvcm1hdFBhc2NhbENhc2UgPSAoaW5wdXQ6IHN0cmluZyk6IHN0cmluZyA9PiB7XG4gIHJldHVybiBpbnB1dCAmJiB0eXBlb2YgaW5wdXQgPT09ICdzdHJpbmcnXG4gICAgPyBpbnB1dFxuICAgICAgICAucmVwbGFjZSgvKFthLXpdezF9KShbQS1aXXsxfSkvZywgJyQxICQyJylcbiAgICAgICAgLnJlcGxhY2UoL1tcXHNfLV0vZywgJyAnKVxuICAgICAgICAudG9Mb3dlckNhc2UoKVxuICAgICAgICAuc3BsaXQoJyAnKVxuICAgICAgICAubWFwKCh3b3JkKSA9PiB3b3JkLnNsaWNlKDAsIDEpLnRvVXBwZXJDYXNlKCkgKyB3b3JkLnNsaWNlKDEpKVxuICAgICAgICAuam9pbignJylcbiAgICA6IGlucHV0O1xufTtcblxuY29uc3QgZm9ybWF0UGhvbmUgPSAoaW5wdXQ6IG51bWJlciB8IHN0cmluZyk6IHN0cmluZyA9PiB7XG4gIGxldCBvdXRwdXQgPSBpbnB1dCAmJiB0eXBlb2YgaW5wdXQgPT09ICdudW1iZXInID8gU3RyaW5nKGlucHV0KSA6IFN0cmluZyhpbnB1dCB8fCAnJyk7XG4gIGxldCBkaWdpdHMgPSBvdXRwdXQ7XG4gIGRpZ2l0cyA9IGRpZ2l0cy5yZXBsYWNlKC9cXEQvZywgJycpO1xuXG4gIHN3aXRjaCAoZGlnaXRzLmxlbmd0aCkge1xuICAgIGNhc2UgNzpcbiAgICAgIG91dHB1dCA9IGAke2RpZ2l0cy5zbGljZSgwLCAzKX0tJHtkaWdpdHMuc2xpY2UoMyl9YDtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgMTA6XG4gICAgICBvdXRwdXQgPSBgJHtkaWdpdHMuc2xpY2UoMCwgMyl9LSR7ZGlnaXRzLnNsaWNlKDMsIDYpfS0ke2RpZ2l0cy5zbGljZSg2KX1gO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAxMTpcbiAgICAgIG91dHB1dCA9IGAke2RpZ2l0cy5zbGljZSgwLCAxKX0tJHtkaWdpdHMuc2xpY2UoMSwgNCl9LSR7ZGlnaXRzLnNsaWNlKDQsIDcpfS0ke2RpZ2l0cy5zbGljZSg3KX1gO1xuICAgICAgYnJlYWs7XG4gICAgZGVmYXVsdDpcbiAgICAgIG91dHB1dCA9IGRpZ2l0cztcbiAgICAgIGJyZWFrO1xuICB9XG5cbiAgcmV0dXJuIG91dHB1dDtcbn07XG5cbmNvbnN0IGZvcm1hdFByaWNlID0gKGlucHV0OiBudW1iZXIgfCBzdHJpbmcpOiBzdHJpbmcgPT4ge1xuICBjb25zdCBvdXRwdXQgPSBpbnB1dCA/IGZvcm1hdE51bWJlcihpbnB1dCkgOiBTdHJpbmcoaW5wdXQgfHwgJzAnKTtcbiAgcmV0dXJuIGAkJHtvdXRwdXR9YDtcbn07XG5cbmNvbnN0IGZvcm1hdFF1b3RlcyA9ICh2YWx1ZTogc3RyaW5nKSA9PiB7XG4gIGlmICh2YWx1ZS5zdGFydHNXaXRoKCdcIicpICYmIHZhbHVlLmVuZHNXaXRoKCdcIicpKSB7XG4gICAgcmV0dXJuIHZhbHVlLnNsaWNlKDEsIC0xKTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gdmFsdWU7XG4gIH1cbn07XG5cbmNvbnN0IGZvcm1hdFNlbnRlbmNlQ2FzZSA9IChpbnB1dDogc3RyaW5nKTogc3RyaW5nID0+IHtcbiAgbGV0IHNlbnRlbmNlQ2FzZSA9IGlucHV0O1xuXG4gIGlmIChpbnB1dCAmJiB0eXBlb2YgaW5wdXQgPT09ICdzdHJpbmcnKSB7XG4gICAgY29uc3QgbG93ZXJDYXNlID0gaW5wdXRcbiAgICAgIC5yZXBsYWNlKC8oW2Etel17MX0pKFtBLVpdezF9KS9nLCAnJDEgJDInKVxuICAgICAgLnRvTG93ZXJDYXNlKClcbiAgICAgIC5yZXBsYWNlKC9bXFxzXy1dL2csICcgJyk7XG5cbiAgICBzZW50ZW5jZUNhc2UgPSBsb3dlckNhc2Uuc2xpY2UoMCwgMSkudG9VcHBlckNhc2UoKSArIGxvd2VyQ2FzZS5zbGljZSgxKTtcbiAgfVxuXG4gIHJldHVybiBzZW50ZW5jZUNhc2U7XG59O1xuXG5jb25zdCBmb3JtYXRTbmFrZUNhc2UgPSAoaW5wdXQ6IHN0cmluZyk6IHN0cmluZyA9PiB7XG4gIHJldHVybiBpbnB1dCAmJiB0eXBlb2YgaW5wdXQgPT09ICdzdHJpbmcnXG4gICAgPyBpbnB1dFxuICAgICAgICAucmVwbGFjZSgvKFthLXpdezF9KShbQS1aXXsxfSkvZywgJyQxICQyJylcbiAgICAgICAgLnRvTG93ZXJDYXNlKClcbiAgICAgICAgLnJlcGxhY2UoL1tcXHNfLV0vZywgJ18nKVxuICAgIDogaW5wdXQ7XG59O1xuXG5jb25zdCBmb3JtYXRUaXRsZUNhc2UgPSAoaW5wdXQ6IHN0cmluZyk6IHN0cmluZyA9PiB7XG4gIHJldHVybiBpbnB1dCAmJiB0eXBlb2YgaW5wdXQgPT09ICdzdHJpbmcnXG4gICAgPyBpbnB1dFxuICAgICAgICAucmVwbGFjZSgvKFthLXpdezF9KShbQS1aXXsxfSkvZywgJyQxICQyJylcbiAgICAgICAgLnRvTG93ZXJDYXNlKClcbiAgICAgICAgLnJlcGxhY2UoL1tcXHNfLV0vZywgJyAnKVxuICAgICAgICAuc3BsaXQoJyAnKVxuICAgICAgICAubWFwKCh3b3JkKSA9PiB3b3JkLnNsaWNlKDAsIDEpLnRvVXBwZXJDYXNlKCkgKyB3b3JkLnNsaWNlKDEpKVxuICAgICAgICAuam9pbignICcpXG4gICAgOiBpbnB1dDtcbn07XG5cbmNvbnN0IGZvcm1hdFVybEZyb21Sb290ID0gKHVybDogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IHVybEZvcm1hdHRlZCA9IHVybC5zcGxpdCgnLmNvbS8nKTtcblxuICByZXR1cm4gdXJsRm9ybWF0dGVkLmxlbmd0aCA+IDEgPyBgLyR7dXJsRm9ybWF0dGVkWzFdfWAgOiB1cmw7XG59O1xuXG5jb25zdCBmb3JtYXRXZWlnaHQgPSAoaW5wdXQ6IG51bWJlciB8IHN0cmluZyk6IHN0cmluZyA9PiB7XG4gIGNvbnN0IG91dHB1dCA9IGlucHV0ID8gZm9ybWF0TnVtYmVyKGlucHV0KSA6IFN0cmluZyhpbnB1dCB8fCAnMCcpO1xuICByZXR1cm4gYCR7b3V0cHV0fSBsYnNgO1xufTtcblxuY29uc3QgZ2V0QXJ0aWNsZSA9IChub3VuOiBzdHJpbmcsIGlzUGx1cmFsID0gZmFsc2UsIGlzRGVmaW5pdGUgPSBmYWxzZSkgPT4ge1xuICBjb25zdCB2b3dlbHMgPSBbJ2EnLCAnZScsICdpJywgJ28nLCAndSddO1xuICBjb25zdCBpc1Zvd2VsTGVhZGluZyA9IHZvd2Vscy5pbmNsdWRlcyhub3VuLmNoYXJBdCgwKSk7XG5cbiAgcmV0dXJuIGlzRGVmaW5pdGUgPyAndGhlJyA6IGlzUGx1cmFsID8gJ3NvbWUnIDogaXNWb3dlbExlYWRpbmcgPyAnYW4nIDogJ2EnO1xufTtcblxuY29uc3QgcHJpY2VUb051bWJlciA9ICh2YWx1ZTogc3RyaW5nKSA9PiB7XG4gIGlmIChOdW1iZXIuaXNOYU4oTnVtYmVyKHZhbHVlKSkpIHtcbiAgICB2YWx1ZSA9IHZhbHVlLnJlcGxhY2UoJyQnLCAnJyk7XG4gICAgdmFsdWUgPSB2YWx1ZS5yZXBsYWNlKC8sL2csICcnKTtcbiAgfVxuICByZXR1cm4gcGFyc2VJbnQodmFsdWUsIDEwKTtcbn07XG5cbmNvbnN0IHVuZm9ybWF0UHJpY2UgPSAoaW5wdXQ6IHN0cmluZyk6IHN0cmluZyA9PiB7XG4gIGNvbnN0IG91dHB1dCA9IGlucHV0LnJlcGxhY2UoL1xcJC9nLCAnJykucmVwbGFjZSgvLC9nLCAnJyk7XG4gIHJldHVybiBgJHtvdXRwdXR9YDtcbn07XG5cbmV4cG9ydCB7XG4gIGNhcGl0YWxpemVGaXJzdCxcbiAgZm9ybWF0Q2FtZWxDYXNlLFxuICBmb3JtYXRLZWJhYkNhc2UsXG4gIGZvcm1hdExhYmVsLFxuICBmb3JtYXROdW1iZXIsXG4gIGZvcm1hdFBhc2NhbENhc2UsXG4gIGZvcm1hdFBob25lLFxuICBmb3JtYXRQcmljZSxcbiAgZm9ybWF0UXVvdGVzLFxuICBmb3JtYXRTZW50ZW5jZUNhc2UsXG4gIGZvcm1hdFNuYWtlQ2FzZSxcbiAgZm9ybWF0VGl0bGVDYXNlLFxuICBmb3JtYXRVcmxGcm9tUm9vdCxcbiAgZm9ybWF0V2VpZ2h0LFxuICBnZXRBcnRpY2xlLFxuICBwcmljZVRvTnVtYmVyLFxuICB1bmZvcm1hdFByaWNlLFxufTtcbiIsIjxzY3JpcHQgbGFuZz1cInRzXCIgc2V0dXA+XG4gIGltcG9ydCB7IGRlZmluZUFzeW5jQ29tcG9uZW50LCBtYXJrUmF3LCByZWYsIHdhdGNoIH0gZnJvbSAndnVlJztcblxuICBpbXBvcnQgdHlwZSB7IENvbXBvbmVudCB9IGZyb20gJ3Z1ZSc7XG4gIGltcG9ydCB0eXBlIHsgSWNvbiB9IGZyb20gJ0AvdHlwZXMvSWNvbic7XG4gIGltcG9ydCB0eXBlIHsgU2l6ZSB9IGZyb20gJ0AvdHlwZXMvU2l6ZSc7XG5cbiAgaW1wb3J0IHsgQ1NTIH0gZnJvbSAnQC90eXBlcy9TdHlsZXMnO1xuICBpbXBvcnQgeyBTSVpFIH0gZnJvbSAnQC90eXBlcy9TaXplJztcbiAgaW1wb3J0IHsgZm9ybWF0UGFzY2FsQ2FzZSB9IGZyb20gJ0AvdXRpbGl0aWVzL2Zvcm1hdCc7XG5cbiAgdHlwZSBQcm9wcyA9IHtcbiAgICBpY29uOiBJY29uO1xuICAgIHNpemU/OiBTaXplO1xuICB9O1xuXG4gIGNvbnN0IHByb3BzID0gd2l0aERlZmF1bHRzKGRlZmluZVByb3BzPFByb3BzPigpLCB7XG4gICAgc2l6ZTogU0laRS5TTUFMTCxcbiAgfSk7XG5cbiAgY29uc3QgaW5uZXJTVkcgPSByZWY8Q29tcG9uZW50PigpO1xuXG4gIHdhdGNoKFxuICAgICgpID0+IHByb3BzLmljb24sXG4gICAgKCkgPT4ge1xuICAgICAgY29uc3QgaWQgPSBwcm9wcy5pY29uIGFzIHVua25vd24gYXMgc3RyaW5nO1xuICAgICAgY29uc3QgbmFtZSA9IGZvcm1hdFBhc2NhbENhc2UoaWQpO1xuICAgICAgY29uc3QgY29tcG9uZW50ID0gZGVmaW5lQXN5bmNDb21wb25lbnQoKCkgPT4gaW1wb3J0KGAuLi9hc3NldHMvc3ZnL2ljb25zL0ljb24ke25hbWV9LnZ1ZWApKTtcblxuICAgICAgaW5uZXJTVkcudmFsdWUgPSBtYXJrUmF3KGNvbXBvbmVudCk7XG4gICAgfSxcbiAgICB7IGltbWVkaWF0ZTogdHJ1ZSB9XG4gICk7XG48L3NjcmlwdD5cblxuPHRlbXBsYXRlPlxuICA8ZGl2IDpjbGFzcz1cIlsndGlkZS1pY29uJywgcHJvcHMuc2l6ZV1cIj5cbiAgICA8c3ZnXG4gICAgICA6Y2xhc3M9XCJbQ1NTLkRJU1BMQVkuQkxPQ0tdXCJcbiAgICAgIDpkYXRhLWljb249XCJpY29uXCJcbiAgICAgIGZpbGw9XCJjdXJyZW50Q29sb3JcIlxuICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiXG4gICAgPlxuICAgICAgPENvbXBvbmVudFxuICAgICAgICA6aXM9XCJpbm5lclNWR1wiXG4gICAgICAgIHYtaWY9XCJpbm5lclNWR1wiXG4gICAgICAvPlxuICAgIDwvc3ZnPlxuICA8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzdHlsZSBzY29wZWQ+XG4gIC50aWRlLWljb24gc3ZnIHtcbiAgICB3aWR0aDogMS41cmVtO1xuICAgIGhlaWdodDogMS41cmVtO1xuICB9XG5cbiAgLnRpZGUtaWNvbi5zbWFsbCBzdmcge1xuICAgIHdpZHRoOiAxLjI1cmVtO1xuICAgIGhlaWdodDogMS4yNXJlbTtcbiAgfVxuPC9zdHlsZT5cbiIsImV4cG9ydCBjb25zdCBJQ09OID0ge1xuICBBQ0NPVU5UX0JBTEFOQ0U6ICdhY2NvdW50LWJhbGFuY2UnLFxuICBBREQ6ICdhZGQnLFxuICBBSV9ERVNDUklQVElPTjogJ2FpLWRlc2NyaXB0aW9uJyxcbiAgQUxJR05fU1BBQ0U6ICdhbGlnbi1zcGFjZScsXG4gIEFQUExFX1BBWTogJ2FwcGxlLXBheScsXG4gIEFSUk9XX0JBQ0s6ICdhcnJvdy1iYWNrJyxcbiAgQVJST1dfRk9SV0FSRDogJ2Fycm93LWZvcndhcmQnLFxuICBBUlJPV19SSUdIVDogJ2Fycm93LXJpZ2h0JyxcbiAgQVNTSUdOTUVOVDogJ2Fzc2lnbm1lbnQnLFxuICBBV0FSRF9TVEFSOiAnYXdhcmQtc3RhcicsXG4gIEJPT0tNQVJLOiAnYm9va21hcmsnLFxuICBDQUxFTkRBUl9NT05USDogJ2NhbGVuZGFyLW1vbnRoJyxcbiAgQ0FMTDogJ2NhbGwnLFxuICBDSEVDSzogJ2NoZWNrJyxcbiAgQ0hFVlJPTl9MRUZUOiAnY2hldnJvbi1sZWZ0JyxcbiAgQ0hFVlJPTl9SSUdIVDogJ2NoZXZyb24tcmlnaHQnLFxuICBDTEVBUjogJ2NsZWFyJyxcbiAgQ0xPU0U6ICdjbG9zZScsXG4gIENZQ0xFOiAnY3ljbGUnLFxuICBERUxFVEU6ICdkZWxldGUnLFxuICBESUFNT05EOiAnZGlhbW9uZCcsXG4gIEVESVQ6ICdlZGl0JyxcbiAgRVJST1I6ICdlcnJvcicsXG4gIEVYUEFORF9DT05URU5UOiAnZXhwYW5kLWNvbnRlbnQnLFxuICBFWFBBTkRfTEVTUzogJ2V4cGFuZC1sZXNzJyxcbiAgRVhQQU5EX01PUkU6ICdleHBhbmQtbW9yZScsXG4gIEZBQ0VCT09LOiAnZmFjZWJvb2snLFxuICBGQVZPUklURTogJ2Zhdm9yaXRlJyxcbiAgRkFWT1JJVEVfRklMTEVEOiAnZmF2b3JpdGUtZmlsbGVkJyxcbiAgRk9STUFUX0JPTEQ6ICdmb3JtYXQtYm9sZCcsXG4gIEZPUk1BVF9JVEFMSUM6ICdmb3JtYXQtaXRhbGljJyxcbiAgRk9STUFUX0xJU1RfQlVMTEVURUQ6ICdmb3JtYXQtbGlzdC1idWxsZXRlZCcsXG4gIEZPUlVNOiAnZm9ydW0nLFxuICBHQVZFTDogJ2dhdmVsJyxcbiAgR09PR0xFOiAnZ29vZ2xlJyxcbiAgR09PR0xFX1BBWTogJ2dvb2dsZS1wYXknLFxuICBHUklEOiAnZ3JpZCcsXG4gIEhFTFA6ICdoZWxwJyxcbiAgSU5GTzogJ2luZm8nLFxuICBJTlNFUlRfVEVYVDogJ2luc2VydC10ZXh0JyxcbiAgSU5TVEFHUkFNOiAnaW5zdGFncmFtJyxcbiAgSU9TX1NIQVJFOiAnaW9zLXNoYXJlJyxcbiAgTEFZT1VUOiAnbGF5b3V0JyxcbiAgTElOS0VEX0lOOiAnbGlua2VkIGluJyxcbiAgTE9DQUxfU0hJUFBJTkc6ICdsb2NhbC1zaGlwcGluZycsXG4gIExPQ0s6ICdsb2NrJyxcbiAgTUFJTDogJ21haWwnLFxuICBNRU5VOiAnbWVudScsXG4gIE1PUkVfSE9SSVo6ICdtb3JlLWhvcml6JyxcbiAgTk9USUZJQ0FUSU9OUzogJ25vdGlmaWNhdGlvbnMnLFxuICBPUEVOX0lOX05FVzogJ29wZW4taW4tbmV3JyxcbiAgUEFMRVRURTogJ3BhbGV0dGUnLFxuICBQQVlQQUw6ICdwYXlwYWwnLFxuICBQRVJTT046ICdwZXJzb24nLFxuICBQSE9UT19DQU1FUkE6ICdwaG90by1jYW1lcmEnLFxuICBQSU5URVJFU1Q6ICdwaW50ZXJlc3QnLFxuICBQTEFZX0FSUk9XOiAncGxheS1hcnJvdycsXG4gIFJFTU9WRTogJ3JlbW92ZScsXG4gIFJPVU5ERURfQ09STkVSUzogJ3JvdW5kZWQtY29ybmVycycsXG4gIFNFQVJDSDogJ3NlYXJjaCcsXG4gIFNFTEw6ICdzZWxsJyxcbiAgU0hBUkU6ICdzaGFyZScsXG4gIFNIT1BQSU5HX0NBUlQ6ICdzaG9wcGluZy1jYXJ0JyxcbiAgU01TOiAnc21zJyxcbiAgU1RBUjogJ3N0YXInLFxuICBTV0FQX1ZFUlQ6ICdzd2FwLXZlcnQnLFxuICBUSFJFRV9EX1JPVEFUSU9OOiAndGhyZWUtZC1yb3RhdGlvbicsXG4gIFRST1BIWTogJ3Ryb3BoeScsXG4gIFRVTkU6ICd0dW5lJyxcbiAgVFdJVFRFUjogJ3R3aXR0ZXInLFxuICBWSURFT0NBTTogJ3ZpZGVvY2FtJyxcbiAgVklFV19JTl9BUjogJ3ZpZXctaW4tYXInLFxuICBWSVNJQklMSVRZOiAndmlzaWJpbGl0eScsXG4gIFZPTFVNRV9PRkY6ICd2b2x1bWUtb2ZmJyxcbiAgVk9MVU1FX09OOiAndm9sdW1lLW9uJyxcbiAgV0FSTklORzogJ3dhcm5pbmcnLFxuICBZT1VUVUJFOiAneW91dHViZScsXG59IGFzIGNvbnN0O1xuXG5leHBvcnQgdHlwZSBJY29uID0gKHR5cGVvZiBJQ09OKVtrZXlvZiB0eXBlb2YgSUNPTl07XG4iLCI8c2NyaXB0IGxhbmc9XCJ0c1wiIHNldHVwPlxuICBpbXBvcnQgeyBvbk1vdW50ZWQsIHJlZiB9IGZyb20gJ3Z1ZSc7XG5cbiAgaW1wb3J0IFRpZGVEaXZpZGVyIGZyb20gJ0AvY29tcG9uZW50cy9UaWRlRGl2aWRlci52dWUnO1xuICBpbXBvcnQgVGlkZUljb24gZnJvbSAnQC9jb21wb25lbnRzL1RpZGVJY29uLnZ1ZSc7XG4gIGltcG9ydCBUaWRlSW5kaWNhdG9yIGZyb20gJ0AvY29tcG9uZW50cy9UaWRlSW5kaWNhdG9yLnZ1ZSc7XG4gIGltcG9ydCB7IElDT04gfSBmcm9tICdAL3R5cGVzL0ljb24nO1xuICBpbXBvcnQgeyBDU1MgfSBmcm9tICdAL3R5cGVzL1N0eWxlcyc7XG5cbiAgY29uc3QgcHJvcHMgPSBkZWZpbmVQcm9wcyh7XG4gICAgaGFzQm90dG9tRGl2aWRlcjoge1xuICAgICAgZGVmYXVsdDogZmFsc2UsXG4gICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICB0eXBlOiBCb29sZWFuLFxuICAgIH0sXG4gICAgaGFzVG9wRGl2aWRlcjoge1xuICAgICAgZGVmYXVsdDogZmFsc2UsXG4gICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICB0eXBlOiBCb29sZWFuLFxuICAgIH0sXG4gICAgaXNBY3RpdmU6IHtcbiAgICAgIGRlZmF1bHQ6IGZhbHNlLFxuICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICB9LFxuICAgIGlzRXhwYW5kZWRJbml0aWFsOiB7XG4gICAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgIHR5cGU6IEJvb2xlYW4sXG4gICAgfSxcbiAgICBpc09wdGlvbmFsOiB7XG4gICAgICBkZWZhdWx0OiBmYWxzZSxcbiAgICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICAgIHR5cGU6IEJvb2xlYW4sXG4gICAgfSxcbiAgICBsYWJlbDoge1xuICAgICAgZGVmYXVsdDogJycsXG4gICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgIHR5cGU6IFN0cmluZyxcbiAgICB9LFxuICB9KTtcblxuICBjb25zdCBpc0V4cGFuZGVkID0gcmVmKHByb3BzLmlzRXhwYW5kZWRJbml0aWFsKTtcblxuICBsZXQgYWNjb3JkaW9uQm9keSA9IHJlZigpO1xuXG4gIGNvbnN0IHRvZ2dsZUlzRXhwYW5kZWQgPSAoKSA9PiB7XG4gICAgY29uc3QgZWxlbWVudCA9IGFjY29yZGlvbkJvZHkudmFsdWUgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICBpc0V4cGFuZGVkLnZhbHVlID0gIWlzRXhwYW5kZWQudmFsdWU7XG5cbiAgICBlbGVtZW50LnN0eWxlLmdyaWRUZW1wbGF0ZVJvd3MgPSBpc0V4cGFuZGVkLnZhbHVlID8gJzFmcicgOiAnMGZyJztcbiAgfTtcblxuICBvbk1vdW50ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGVsZW1lbnQgPSBhY2NvcmRpb25Cb2R5LnZhbHVlIGFzIEhUTUxFbGVtZW50O1xuXG4gICAgZWxlbWVudC5zdHlsZS5ncmlkVGVtcGxhdGVSb3dzID0gaXNFeHBhbmRlZC52YWx1ZSA/ICcxZnInIDogJzBmcic7XG4gIH0pO1xuPC9zY3JpcHQ+XG5cbjx0ZW1wbGF0ZT5cbiAgPGRpdiBjbGFzcz1cInRpZGUtYWNjb3JkaW9uLWl0ZW1cIj5cbiAgICA8VGlkZURpdmlkZXIgdi1pZj1cInByb3BzLmhhc1RvcERpdmlkZXJcIiAvPlxuXG4gICAgPGRpdlxuICAgICAgOmNsYXNzPVwiWyd0aWRlLWFjY29yZGlvbi1oZWFkJywgQ1NTLkRJU1BMQVkuRkxFWCwgQ1NTLkFYSVMxLkJFVFdFRU4sIENTUy5QQURESU5HLlkuSEFMRiwgQ1NTLkNVUlNPUi5QT0lOVEVSXVwiXG4gICAgICBAY2xpY2s9XCJ0b2dnbGVJc0V4cGFuZGVkXCJcbiAgICA+XG4gICAgICA8ZGl2IDpjbGFzcz1cIltDU1MuRElTUExBWS5GTEVYLCBDU1MuQVhJUzIuQ0VOVEVSLCBDU1MuR0FQLkhBTEYsIENTUy5GT05ULldFSUdIVC5TRVZFTl9IVU5EUkVEXVwiPlxuICAgICAgICA8c3Bhbj57eyBwcm9wcy5sYWJlbCB9fTwvc3Bhbj5cblxuICAgICAgICA8c3BhblxuICAgICAgICAgIDpjbGFzcz1cIltDU1MuRk9OVC5DT0xPUi5TVVJGQUNFLlZBUklBTlRdXCJcbiAgICAgICAgICB2LWlmPVwicHJvcHMuaXNPcHRpb25hbFwiXG4gICAgICAgID5cbiAgICAgICAgICAob3B0aW9uYWwpXG4gICAgICAgIDwvc3Bhbj5cblxuICAgICAgICA8VGlkZUluZGljYXRvciB2LWlmPVwicHJvcHMuaXNBY3RpdmVcIiAvPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxUaWRlSWNvbiA6aWNvbj1cImlzRXhwYW5kZWQgPyBJQ09OLkVYUEFORF9MRVNTIDogSUNPTi5FWFBBTkRfTU9SRVwiIC8+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2XG4gICAgICA6Y2xhc3M9XCJbJ3RpZGUtYWNjb3JkaW9uLWJvZHknLCBDU1MuRElTUExBWS5HUklEXVwiXG4gICAgICByZWY9XCJhY2NvcmRpb25Cb2R5XCJcbiAgICA+XG4gICAgICA8ZGl2IDpjbGFzcz1cIltDU1MuT1ZFUkZMT1cuWS5ISURERU5dXCI+XG4gICAgICAgIDxkaXYgOmNsYXNzPVwiW0NTUy5NQVJHSU4uWS5PTkUsIENTUy5GT05ULldFSUdIVC5GT1VSX0hVTkRSRUQsIENTUy5GT05ULkNPTE9SLlNVUkZBQ0UuREVGQVVMVF1cIj5cbiAgICAgICAgICA8c2xvdCAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuXG4gICAgPFRpZGVEaXZpZGVyIHYtaWY9XCJwcm9wcy5oYXNCb3R0b21EaXZpZGVyXCIgLz5cbiAgPC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c3R5bGUgc2NvcGVkPlxuICAudGlkZS1hY2NvcmRpb24tYm9keSB7XG4gICAgdHJhbnNpdGlvbjogZ3JpZC10ZW1wbGF0ZS1yb3dzIHZhcigtLXRpZGUtYW5pbWF0ZSk7XG4gIH1cbjwvc3R5bGU+XG4iLCJleHBvcnQgY29uc3QgRUxFTUVOVCA9IHtcbiAgQlVUVE9OOiAnYnV0dG9uJyxcbiAgTElOSzogJ2EnLFxufSBhcyBjb25zdDtcblxuZXhwb3J0IGNvbnN0IEVMRU1FTlRfVEVYVF9BU19JQ09OID0ge1xuICBCVVRUT046ICdidXR0b24nLFxuICBESVY6ICdkaXYnLFxuICBMSU5LOiAnYScsXG59IGFzIGNvbnN0O1xuXG5leHBvcnQgdHlwZSBFbGVtZW50ID0gKHR5cGVvZiBFTEVNRU5UKVtrZXlvZiB0eXBlb2YgRUxFTUVOVF07XG5leHBvcnQgdHlwZSBFbGVtZW50VGV4dEFzSWNvbiA9ICh0eXBlb2YgRUxFTUVOVF9URVhUX0FTX0lDT04pW2tleW9mIHR5cGVvZiBFTEVNRU5UX1RFWFRfQVNfSUNPTl07XG4iLCIvKiBlc2xpbnQtZGlzYWJsZSB2dWUvc29ydC1rZXlzICovXG5cbmV4cG9ydCBjb25zdCBQUklPUklUWSA9IHtcbiAgUFJJTUFSWTogJ3ByaW1hcnknLFxuICBTRUNPTkRBUlk6ICdzZWNvbmRhcnknLFxuICBURVJUSUFSWTogJ3RlcnRpYXJ5JyxcbiAgUVVBVEVSTkFSWTogJ3F1YXRlcm5hcnknLFxuICBGTE9BVElORzogJ2Zsb2F0aW5nJyxcbn0gYXMgY29uc3Q7XG5cbmV4cG9ydCB0eXBlIFByaW9yaXR5ID0gKHR5cGVvZiBQUklPUklUWSlba2V5b2YgdHlwZW9mIFBSSU9SSVRZXTtcbiIsImV4cG9ydCBjb25zdCBUQVJHRVQgPSB7XG4gIEJMQU5LOiAnX2JsYW5rJyxcbiAgU0VMRjogdW5kZWZpbmVkLFxufSBhcyBjb25zdDtcblxuZXhwb3J0IHR5cGUgVGFyZ2V0ID0gKHR5cGVvZiBUQVJHRVQpW2tleW9mIHR5cGVvZiBUQVJHRVRdO1xuIiwiZXhwb3J0IGNvbnN0IEFMRVJUID0ge1xuICBFUlJPUjogJ2Vycm9yJyxcbiAgSU5GTzogJ2luZm8nLFxuICBTVUNDRVNTOiAnc3VjY2VzcycsXG4gIFdBUk5JTkc6ICd3YXJuaW5nJyxcbn0gYXMgY29uc3Q7XG5cbmV4cG9ydCB0eXBlIEFsZXJ0ID0gKHR5cGVvZiBBTEVSVClba2V5b2YgdHlwZW9mIEFMRVJUXTtcbiIsIjxzY3JpcHQgbGFuZz1cInRzXCIgc2V0dXA+XG4gIGltcG9ydCB7IGNvbXB1dGVkIH0gZnJvbSAndnVlJztcblxuICBpbXBvcnQgdHlwZSB7IEFsZXJ0IH0gZnJvbSAnQC90eXBlcy9BbGVydCc7XG4gIGltcG9ydCB0eXBlIHsgSWNvbiB9IGZyb20gJ0AvdHlwZXMvSWNvbic7XG5cbiAgaW1wb3J0IFRpZGVJY29uIGZyb20gJ0AvY29tcG9uZW50cy9UaWRlSWNvbi52dWUnO1xuICBpbXBvcnQgVGlkZUJ1dHRvbkljb24gZnJvbSAnQC9jb21wb25lbnRzL1RpZGVCdXR0b25JY29uLnZ1ZSc7XG4gIGltcG9ydCB7IEFMRVJUIH0gZnJvbSAnQC90eXBlcy9BbGVydCc7XG4gIGltcG9ydCB7IENTUyB9IGZyb20gJ0AvdHlwZXMvU3R5bGVzJztcbiAgaW1wb3J0IHsgSUNPTiB9IGZyb20gJ0AvdHlwZXMvSWNvbic7XG4gIGltcG9ydCB7IFBSSU9SSVRZIH0gZnJvbSAnQC90eXBlcy9Qcmlvcml0eSc7XG5cbiAgdHlwZSBQcm9wcyA9IHtcbiAgICBoZWFkaW5nPzogc3RyaW5nO1xuICAgIGlzVG9hc3Q/OiBib29sZWFuO1xuICAgIHR5cGU/OiBBbGVydDtcbiAgfTtcblxuICBjb25zdCBwcm9wcyA9IHdpdGhEZWZhdWx0cyhkZWZpbmVQcm9wczxQcm9wcz4oKSwge1xuICAgIGhlYWRpbmc6IHVuZGVmaW5lZCxcbiAgICBpc1RvYXN0OiBmYWxzZSxcbiAgICB0eXBlOiBBTEVSVC5JTkZPLFxuICB9KTtcblxuICBjb25zdCBpY29uID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGxldCBpY29uOiBJY29uID0gSUNPTi5WSUVXX0lOX0FSO1xuXG4gICAgc3dpdGNoIChwcm9wcy50eXBlKSB7XG4gICAgICBjYXNlIEFMRVJULkVSUk9SOlxuICAgICAgICBpY29uID0gSUNPTi5FUlJPUjtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgY2FzZSBBTEVSVC5JTkZPOlxuICAgICAgICBpY29uID0gSUNPTi5JTkZPO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgQUxFUlQuU1VDQ0VTUzpcbiAgICAgICAgaWNvbiA9IElDT04uQ0hFQ0s7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBBTEVSVC5XQVJOSU5HOlxuICAgICAgICBpY29uID0gSUNPTi5XQVJOSU5HO1xuICAgICAgICBicmVhaztcbiAgICB9XG5cbiAgICByZXR1cm4gaWNvbjtcbiAgfSk7XG48L3NjcmlwdD5cblxuPHRlbXBsYXRlPlxuICA8ZGl2XG4gICAgOmNsYXNzPVwiW1xuICAgICAgcHJvcHMudHlwZSxcbiAgICAgICd0aWRlLWFsZXJ0JyxcbiAgICAgIENTUy5ESVNQTEFZLkdSSUQsXG4gICAgICBDU1MuQk9SREVSLlJBRElVUy5IQUxGLFxuICAgICAgQ1NTLlBBRERJTkcuRlVMTC5PTkUsXG4gICAgICBwcm9wcy50eXBlID09PSBBTEVSVC5FUlJPUiAmJiBDU1MuQkcuU1VSRkFDRS5FUlJPUixcbiAgICAgIHByb3BzLnR5cGUgPT09IEFMRVJULklORk8gJiYgQ1NTLkJHLlNVUkZBQ0UuSU5GTyxcbiAgICAgIHByb3BzLnR5cGUgPT09IEFMRVJULlNVQ0NFU1MgJiYgQ1NTLkJHLlNVUkZBQ0UuU1VDQ0VTUyxcbiAgICAgIHByb3BzLnR5cGUgPT09IEFMRVJULldBUk5JTkcgJiYgQ1NTLkJHLlNVUkZBQ0UuV0FSTklORyxcbiAgICAgIHByb3BzLmlzVG9hc3QgPyBDU1MuU0hBRE9XLkJPVFRPTSA6ICcnLFxuICAgIF1cIlxuICA+XG4gICAgPGRpdiA6Y2xhc3M9XCJbJ3RpZGUtYWxlcnQtaWNvbicsIENTUy5ESVNQTEFZLkZMRVgsIENTUy5BWElTMi5DRU5URVJdXCI+XG4gICAgICA8VGlkZUljb25cbiAgICAgICAgOmNsYXNzPVwiW1xuICAgICAgICAgIHByb3BzLnR5cGUsXG4gICAgICAgICAgQ1NTLkJPUkRFUi5SQURJVVMuRlVMTCxcbiAgICAgICAgICBDU1MuUEFERElORy5GVUxMLkhBTEYsXG4gICAgICAgICAgQ1NTLkZPTlQuQ09MT1IuU1VSRkFDRS5JTlZFUlNFLFxuICAgICAgICAgIHByb3BzLnR5cGUgPT09IEFMRVJULkVSUk9SICYmIENTUy5CRy5FUlJPUixcbiAgICAgICAgICBwcm9wcy50eXBlID09PSBBTEVSVC5JTkZPICYmIENTUy5CRy5JTkZPLFxuICAgICAgICAgIHByb3BzLnR5cGUgPT09IEFMRVJULlNVQ0NFU1MgJiYgQ1NTLkJHLlNVQ0NFU1MsXG4gICAgICAgICAgcHJvcHMudHlwZSA9PT0gQUxFUlQuV0FSTklORyAmJiBDU1MuQkcuV0FSTklORyxcbiAgICAgICAgXVwiXG4gICAgICAgIDppY29uPVwiaWNvblwiXG4gICAgICAvPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiA6Y2xhc3M9XCJbJ3RpZGUtYWxlcnQtaGVhZGluZycsIENTUy5ESVNQTEFZLkZMRVgsIENTUy5BWElTMi5DRU5URVJdXCI+XG4gICAgICA8aDIgOmNsYXNzPVwiW0NTUy5GT05ULlNJWkUuU0lYVEVFTiwgQ1NTLkZPTlQuV0VJR0hULlNJWF9IVU5EUkVELCBDU1MuRk9OVC5DT0xPUi5TVVJGQUNFLkRFRkFVTFRdXCI+XG4gICAgICAgIHt7IHByb3BzLmhlYWRpbmcgfX1cbiAgICAgIDwvaDI+XG4gICAgPC9kaXY+XG5cbiAgICA8VGlkZUJ1dHRvbkljb25cbiAgICAgIDpjbGFzcz1cIlsndGlkZS1hbGVydC1jbG9zZScsIENTUy5BWElTMi5DRU5URVIsIENTUy5GT05ULkNPTE9SLlNVUkZBQ0UuREVGQVVMVF1cIlxuICAgICAgOmljb249XCJJQ09OLkNMT1NFXCJcbiAgICAgIDpwcmlvcml0eT1cIlBSSU9SSVRZLlFVQVRFUk5BUllcIlxuICAgICAgYXJpYS1sYWJlbD1cIkNsb3NlIGFsZXJ0XCJcbiAgICAvPlxuXG4gICAgPGRpdiA6Y2xhc3M9XCJbJ3RpZGUtYWxlcnQtYm9keScsIENTUy5GT05ULldFSUdIVC5GSVZFX0hVTkRSRUQsIENTUy5GT05ULkNPTE9SLlNVUkZBQ0UuVkFSSUFOVF1cIj5cbiAgICAgIDxzbG90IC8+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHN0eWxlIHNjb3BlZD5cbiAgLnRpZGUtYWxlcnQge1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICAnaWNvbiBoZWFkaW5nIGNsb3NlJ1xuICAgICAgJy4gYm9keSAuJztcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyIGF1dG87XG4gICAgZ3JpZC1jb2x1bW4tZ2FwOiAwLjVyZW07XG4gICAgbWF4LXdpZHRoOiA0MHJlbTtcbiAgfVxuXG4gIC50aWRlLWFsZXJ0LWljb24ge1xuICAgIGdyaWQtYXJlYTogaWNvbjtcbiAgfVxuXG4gIC50aWRlLWFsZXJ0LWhlYWRpbmcge1xuICAgIGdyaWQtYXJlYTogaGVhZGluZztcbiAgfVxuXG4gIC50aWRlLWFsZXJ0LWNsb3NlIHtcbiAgICBncmlkLWFyZWE6IGNsb3NlO1xuICB9XG5cbiAgLnRpZGUtYWxlcnQtYm9keSB7XG4gICAgZ3JpZC1hcmVhOiBib2R5O1xuICB9XG48L3N0eWxlPlxuIiwiZXhwb3J0IGNvbnN0IEJBREdFID0ge1xuICBKVVNUX0xJU1RFRDogJ0p1c3QgbGlzdGVkJyxcbiAgTkFUSU9OV0lERTogJ05hdGlvbndpZGUnLFxuICBSRURVQ0VEOiAnUmVkdWNlZCcsXG4gIFVQREFURUQ6ICdVcGRhdGVkJyxcbn0gYXMgY29uc3Q7XG5cbmV4cG9ydCBjb25zdCBCQURHRV9QUkVNSVVNID0ge1xuICBQUkVNSVVNOiAnUHJlbWl1bScsXG4gIFBSRU1JVU1fU0VMRUNUOiAnUHJlbWl1bSBTRUxFQ1QnLFxufSBhcyBjb25zdDtcblxuZXhwb3J0IGNvbnN0IEJBREdFX1RSVVNURUQgPSB7XG4gIFlFQVJTXzEwOiAnMTAnLFxuICBZRUFSU18xNTogJzE1JyxcbiAgWUVBUlNfNTogJzUnLFxufSBhcyBjb25zdDtcblxuZXhwb3J0IHR5cGUgQmFkZ2UgPSAodHlwZW9mIEJBREdFKVtrZXlvZiB0eXBlb2YgQkFER0VdO1xuZXhwb3J0IHR5cGUgQmFkZ2VQcmVtaXVtID0gKHR5cGVvZiBCQURHRV9QUkVNSVVNKVtrZXlvZiB0eXBlb2YgQkFER0VfUFJFTUlVTV07XG5leHBvcnQgdHlwZSBCYWRnZVRydXN0ZWRZZWFycyA9ICh0eXBlb2YgQkFER0VfVFJVU1RFRClba2V5b2YgdHlwZW9mIEJBREdFX1RSVVNURURdO1xuIiwiPHNjcmlwdCBsYW5nPVwidHNcIiBzZXR1cD5cbiAgaW1wb3J0IHsgb25Nb3VudGVkLCBvblVubW91bnRlZCwgb25VcGRhdGVkLCByZWYsIHdhdGNoIH0gZnJvbSAndnVlJztcblxuICBpbXBvcnQgVGlkZUJ1dHRvbkljb24gZnJvbSAnQC9jb21wb25lbnRzL1RpZGVCdXR0b25JY29uLnZ1ZSc7XG4gIGltcG9ydCB7IENTUyB9IGZyb20gJ0AvdHlwZXMvU3R5bGVzJztcbiAgaW1wb3J0IHsgSUNPTiB9IGZyb20gJ0AvdHlwZXMvSWNvbic7XG4gIGltcG9ydCB7IFBSSU9SSVRZIH0gZnJvbSAnQC90eXBlcy9Qcmlvcml0eSc7XG5cbiAgdHlwZSBQcm9wcyA9IHtcbiAgICBpc1RvdWNoc2NyZWVuPzogYm9vbGVhbjtcbiAgICBvZmZzZXRYPzogbnVtYmVyO1xuICB9O1xuXG4gIGNvbnN0IHByb3BzID0gd2l0aERlZmF1bHRzKGRlZmluZVByb3BzPFByb3BzPigpLCB7XG4gICAgb2Zmc2V0WDogMCxcbiAgfSk7XG5cbiAgY29uc3QgZW1pdCA9IGRlZmluZUVtaXRzKFsnY2hhbmdlJ10pO1xuXG4gIGxldCBjb250ZW50V2lkdGggPSByZWYoKTtcbiAgbGV0IGZyYW1lV2lkdGggPSByZWYoKTtcbiAgbGV0IGhhc092ZXJmbG93ID0gcmVmKCk7XG4gIGxldCBsYXN0UG9zaXRpb24gPSByZWYoKTtcblxuICBjb25zdCBjb250ZW50UmVmID0gcmVmKCk7XG4gIGNvbnN0IGZyYW1lUmVmID0gcmVmKCk7XG4gIGNvbnN0IHNob3dCdXR0b25zID0gcmVmKCk7XG4gIGNvbnN0IGN1cnJlbnRTbGlkZSA9IHJlZigwKTtcblxuICBjb25zdCBnYXAgPSAxNjtcblxuICAvKipcbiAgICogTWVhc3VyZSB0aGUgY3VycmVudCBzbGlkZSBiYXNlZCBvbiB0aGUgc2Nyb2xsXG4gICAqIHBvc2l0aW9uIG9mIHRoZSBmcmFtZS4gVGhlIGN1cnJlbnQgc2xpZGUgaXNcbiAgICogdGhlIHNsaWRlIHRoYXQgaXMgY2xvc2VzdCB0byB0aGUgbGVmdCBlZGdlIG9mXG4gICAqIHRoZSBmcmFtZS5cbiAgICovXG4gIGNvbnN0IG1lYXN1cmVDdXJyZW50U2xpZGUgPSAoKSA9PiB7XG4gICAgLy8gZ2V0IGxlZnQgb2Zmc2V0cyBvZiBlYWNoIHNsaWRlXG4gICAgY29uc3Qgc2xpZGVPZmZzZXRzID0gQXJyYXkuZnJvbShjb250ZW50UmVmLnZhbHVlLmNoaWxkcmVuKS5tYXAoKHNsaWRlOiBhbnkpID0+IHNsaWRlLm9mZnNldExlZnQpO1xuXG4gICAgaWYgKHNsaWRlT2Zmc2V0cy5sZW5ndGggPT09IDApIHJldHVybjtcblxuICAgIC8vIGdldCB2YWx1ZSBjbG9zZXN0IHRvIGN1cnJlbnQgc2Nyb2xsIHBvc2l0aW9uXG4gICAgY29uc3QgY2xvc2VzdFNsaWRlT2Zmc2V0ID0gc2xpZGVPZmZzZXRzLnJlZHVjZSgocHJldiwgY3VycikgPT4ge1xuICAgICAgcmV0dXJuIE1hdGguYWJzKGN1cnIgLSBmcmFtZVJlZi52YWx1ZS5zY3JvbGxMZWZ0KSA8IE1hdGguYWJzKHByZXYgLSBmcmFtZVJlZi52YWx1ZS5zY3JvbGxMZWZ0KSA/IGN1cnIgOiBwcmV2O1xuICAgIH0pO1xuXG4gICAgLy8gc2V0IGN1cnJlbnQgc2xpZGUgdG8gaW5kZXggb2YgY2xvc2VzdCBzbGlkZVxuICAgIGN1cnJlbnRTbGlkZS52YWx1ZSA9IHNsaWRlT2Zmc2V0cy5pbmRleE9mKGNsb3Nlc3RTbGlkZU9mZnNldCk7XG4gIH07XG5cbiAgY29uc3QgbWVhc3VyZURvbSA9ICgpID0+IHtcbiAgICBjb250ZW50V2lkdGgudmFsdWUgPSBjb250ZW50UmVmLnZhbHVlLnNjcm9sbFdpZHRoO1xuICAgIGZyYW1lV2lkdGgudmFsdWUgPSBmcmFtZVJlZi52YWx1ZS5jbGllbnRXaWR0aDtcbiAgICBoYXNPdmVyZmxvdy52YWx1ZSA9IGNvbnRlbnRXaWR0aC52YWx1ZSA+IGZyYW1lV2lkdGgudmFsdWU7XG4gICAgbGFzdFBvc2l0aW9uLnZhbHVlID0gZnJhbWVSZWYudmFsdWUuc2Nyb2xsV2lkdGggLSBmcmFtZVJlZi52YWx1ZS5jbGllbnRXaWR0aDtcbiAgICBzaG93QnV0dG9ucy52YWx1ZSA9IGhhc092ZXJmbG93LnZhbHVlICYmICFwcm9wcy5pc1RvdWNoc2NyZWVuO1xuXG4gICAgbWVhc3VyZUN1cnJlbnRTbGlkZSgpO1xuICB9O1xuXG4gIC8vIFRPRE86IGRlYm91bmNlIHRoaXNcbiAgY29uc3QgaGFuZGxlU2Nyb2xsID0gKCkgPT4ge1xuICAgIG1lYXN1cmVEb20oKTtcbiAgfTtcblxuICAvKipcbiAgICogU2Nyb2xscyB0byB0aGUgc2xpZGUgYXQgdGhlIGdpdmVuIGluZGV4LCBvclxuICAgKiB0byB0aGUgZmlyc3Qgb3IgbGFzdCBzbGlkZSBpZiB0aGUgZ2l2ZW4gaW5kZXhcbiAgICogaXMgb3V0IG9mIGJvdW5kcy5cbiAgICogQHBhcmFtIHNsaWRlSW5kZXggVGhlIGluZGV4IG9mIHRoZSBzbGlkZSB0byBzY3JvbGwgdG9cbiAgICovXG4gIGNvbnN0IHNjcm9sbFRvU2xpZGUgPSAoc2xpZGVJbmRleDogbnVtYmVyKSA9PiB7XG4gICAgZnJhbWVSZWYudmFsdWUuc2Nyb2xsVG8oe1xuICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxuICAgICAgbGVmdDogY29udGVudFJlZi52YWx1ZS5jaGlsZHJlbltzbGlkZUluZGV4XS5vZmZzZXRMZWZ0LFxuICAgIH0pO1xuICB9O1xuXG4gIGNvbnN0IHNob3dOZXh0U2xpZGUgPSAoKSA9PiB7XG4gICAgY29uc3QgY29udGVudFdpZHRoID0gY29udGVudFJlZi52YWx1ZS5zY3JvbGxXaWR0aDtcbiAgICBjb25zdCBjb250ZW50UmlnaHRFZGdlID0gZnJhbWVSZWYudmFsdWUuc2Nyb2xsTGVmdCArIGZyYW1lUmVmLnZhbHVlLmNsaWVudFdpZHRoO1xuXG4gICAgaWYgKGNvbnRlbnRSaWdodEVkZ2UgPiBjb250ZW50V2lkdGgpIHtcbiAgICAgIGZyYW1lUmVmLnZhbHVlLnNjcm9sbFRvKHtcbiAgICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnLFxuICAgICAgICBsZWZ0OiBjb250ZW50V2lkdGgsXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgaXNGaXJzdFNsaWRlV2l0aE9mZnNldCA9IHByb3BzLm9mZnNldFggJiYgY3VycmVudFNsaWRlLnZhbHVlID09PSAwO1xuICAgICAgY29uc3QgaXNMYXN0U2xpZGUgPSBjb250ZW50UmlnaHRFZGdlID09PSBjb250ZW50V2lkdGg7XG4gICAgICBjb25zdCBuZXh0U2xpZGUgPSBpc0xhc3RTbGlkZSA/IDAgOiBpc0ZpcnN0U2xpZGVXaXRoT2Zmc2V0ID8gMiA6IGN1cnJlbnRTbGlkZS52YWx1ZSArIDE7XG5cbiAgICAgIHNjcm9sbFRvU2xpZGUobmV4dFNsaWRlKTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3Qgc2hvd1ByZXZpb3VzU2xpZGUgPSAoKSA9PiB7XG4gICAgY29uc3QgZmlyc3RTbGlkZSA9IHByb3BzLm9mZnNldFggPyAxIDogMDtcbiAgICBjb25zdCBpc0ZpcnN0U2xpZGUgPSBjdXJyZW50U2xpZGUudmFsdWUgLSAxID09PSBmaXJzdFNsaWRlO1xuICAgIGNvbnN0IGlzU2Vjb25kU2xpZGUgPSBjdXJyZW50U2xpZGUudmFsdWUgPD0gZmlyc3RTbGlkZTtcbiAgICBjb25zdCBwcmV2aW91c1NsaWRlID0gaXNTZWNvbmRTbGlkZVxuICAgICAgPyBjb250ZW50UmVmLnZhbHVlLmNoaWxkcmVuLmxlbmd0aCAtIDFcbiAgICAgIDogaXNGaXJzdFNsaWRlXG4gICAgICA/IDBcbiAgICAgIDogY3VycmVudFNsaWRlLnZhbHVlIC0gMTtcblxuICAgIHNjcm9sbFRvU2xpZGUocHJldmlvdXNTbGlkZSk7XG4gIH07XG5cbiAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIG1lYXN1cmVEb20pO1xuXG4gIG9uTW91bnRlZCgoKSA9PiB7XG4gICAgbWVhc3VyZURvbSgpO1xuICB9KTtcblxuICBvblVubW91bnRlZCgoKSA9PiB7XG4gICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIG1lYXN1cmVEb20pO1xuICB9KTtcblxuICBvblVwZGF0ZWQoKCkgPT4ge1xuICAgIG1lYXN1cmVEb20oKTtcbiAgfSk7XG5cbiAgd2F0Y2goY3VycmVudFNsaWRlLCAoKSA9PiB7XG4gICAgZW1pdCgnY2hhbmdlJywgY3VycmVudFNsaWRlLnZhbHVlKTtcbiAgfSk7XG48L3NjcmlwdD5cblxuPHRlbXBsYXRlPlxuICA8c2VjdGlvblxuICAgIDpjbGFzcz1cIlsndGlkZS1jYXJvdXNlbCcsIENTUy5QT1NJVElPTi5SRUxBVElWRSwgQ1NTLkRJU1BMQVkuRkxFWCwgQ1NTLkFYSVMyLkNFTlRFUiwgQ1NTLldJRFRILkZVTExdXCJcbiAgICByZWY9XCJjYXJvdXNlbFJlZlwiXG4gID5cbiAgICA8ZGl2XG4gICAgICA6Y2xhc3M9XCJbQ1NTLlNDUk9MTEJBUi5PRkYsIENTUy5TTkFQLk9OLCBDU1MuT1ZFUkZMT1cuWC5TQ1JPTExdXCJcbiAgICAgIHJlZj1cImZyYW1lUmVmXCJcbiAgICAgIEBzY3JvbGw9XCJoYW5kbGVTY3JvbGxcIlxuICAgID5cbiAgICAgIDx1bFxuICAgICAgICA6Y2xhc3M9XCJbcHJvcHMuaXNUb3VjaHNjcmVlbiA/IFtDU1MuT1ZFUkZMT1cuWC5BVVRPXSA6ICcnLCBDU1MuRElTUExBWS5GTEVYLCBDU1MuR0FQLk9ORSwgQ1NTLkxJU1RfQlVMTEVUUy5PRkZdXCJcbiAgICAgICAgcmVmPVwiY29udGVudFJlZlwiXG4gICAgICA+XG4gICAgICAgIDxsaVxuICAgICAgICAgIDpjbGFzcz1cIltDU1MuRkxFWC5TSFJJTksuT0ZGLCBDU1MuU05BUF9BTElHTi5TVEFSVF1cIlxuICAgICAgICAgIDpzdHlsZT1cInsgd2lkdGg6IGAke3Byb3BzLm9mZnNldFggLSBnYXB9cHhgIH1cIlxuICAgICAgICAgIHYtaWY9XCJwcm9wcy5vZmZzZXRYXCJcbiAgICAgICAgLz5cblxuICAgICAgICA8c2xvdCAvPlxuXG4gICAgICAgIDxsaVxuICAgICAgICAgIDpjbGFzcz1cIltDU1MuRkxFWC5TSFJJTksuT0ZGLCBDU1MuU05BUF9BTElHTi5TVEFSVF1cIlxuICAgICAgICAgIDpzdHlsZT1cInsgd2lkdGg6IGAke3Byb3BzLm9mZnNldFggLSBnYXB9cHhgIH1cIlxuICAgICAgICAgIHYtaWY9XCJwcm9wcy5vZmZzZXRYXCJcbiAgICAgICAgLz5cbiAgICAgIDwvdWw+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2XG4gICAgICA6Y2xhc3M9XCJbXG4gICAgICAgIENTUy5QT1NJVElPTi5BQlNPTFVURSxcbiAgICAgICAgQ1NTLkRJU1BMQVkuRkxFWCxcbiAgICAgICAgQ1NTLkFYSVMxLkJFVFdFRU4sXG4gICAgICAgIENTUy5BWElTMi5DRU5URVIsXG4gICAgICAgIENTUy5XSURUSC5GVUxMLFxuICAgICAgICBDU1MuSEVJR0hULkZVTEwsXG4gICAgICAgIENTUy5QT0lOVEVSX0VWRU5UUy5PRkYsXG4gICAgICBdXCJcbiAgICAgIHYtaWY9XCJzaG93QnV0dG9uc1wiXG4gICAgPlxuICAgICAgPFRpZGVCdXR0b25JY29uXG4gICAgICAgIDpjbGFzcz1cIltDU1MuTUFSR0lOLkxFRlQuT05FLCBDU1MuUE9JTlRFUl9FVkVOVFMuT05dXCJcbiAgICAgICAgOmljb249XCJJQ09OLkNIRVZST05fTEVGVFwiXG4gICAgICAgIDpwcmlvcml0eT1cIlBSSU9SSVRZLlFVQVRFUk5BUllcIlxuICAgICAgICBAY2xpY2s9XCJzaG93UHJldmlvdXNTbGlkZVwiXG4gICAgICAvPlxuXG4gICAgICA8VGlkZUJ1dHRvbkljb25cbiAgICAgICAgOmNsYXNzPVwiW0NTUy5NQVJHSU4uUklHSFQuT05FLCBDU1MuUE9JTlRFUl9FVkVOVFMuT05dXCJcbiAgICAgICAgOmljb249XCJJQ09OLkNIRVZST05fUklHSFRcIlxuICAgICAgICA6cHJpb3JpdHk9XCJQUklPUklUWS5RVUFURVJOQVJZXCJcbiAgICAgICAgQGNsaWNrPVwic2hvd05leHRTbGlkZVwiXG4gICAgICAvPlxuICAgIDwvZGl2PlxuICA8L3NlY3Rpb24+XG48L3RlbXBsYXRlPlxuIiwiPHNjcmlwdCBsYW5nPVwidHNcIiBzZXR1cD5cbiAgaW1wb3J0IHsgb25Nb3VudGVkLCBvbkJlZm9yZVVubW91bnQsIHJlZiB9IGZyb20gJ3Z1ZSc7XG5cbiAgaW1wb3J0IHsgQ1NTIH0gZnJvbSAnQC90eXBlcy9TdHlsZXMnO1xuXG4gIHR5cGUgUHJvcHMgPSB7XG4gICAgYWx0Pzogc3RyaW5nO1xuICAgIGNkbj86IHN0cmluZztcbiAgICBpc0xhenk/OiBib29sZWFuO1xuICAgIG9mZnNldD86IG51bWJlcjtcbiAgICBzcmM/OiBzdHJpbmc7XG4gIH07XG5cbiAgY29uc3QgcHJvcHMgPSB3aXRoRGVmYXVsdHMoZGVmaW5lUHJvcHM8UHJvcHM+KCksIHtcbiAgICBhbHQ6ICcnLFxuICAgIGNkbjogdW5kZWZpbmVkLFxuICAgIGlzTGF6eTogdHJ1ZSxcbiAgICBvZmZzZXQ6IDAsXG4gICAgc3JjOiB1bmRlZmluZWQsXG4gIH0pO1xuXG4gIGNvbnN0IHRpZGVJbWFnZSA9IHJlZigpO1xuXG4gIGNvbnN0IGltYWdlRGVmYXVsdCA9IGAke3Byb3BzLmNkbn0vaW1hZ2UtY29taW5nLXNvb24tNTEyLnBuZ2A7XG5cbiAgY29uc3QgbG9hZEltYWdlID0gKCkgPT4ge1xuICAgIGlmIChwcm9wcy5zcmMpIHtcbiAgICAgIGNvbnN0IGltYWdlTG9hZGVyID0gbmV3IEltYWdlKCk7XG5cbiAgICAgIGltYWdlTG9hZGVyLm9ubG9hZCA9IHNldEltYWdlRnJvbVNyYztcbiAgICAgIGltYWdlTG9hZGVyLm9uZXJyb3IgPSBzZXRJbWFnZUZyb21EZWZhdWx0O1xuICAgICAgaW1hZ2VMb2FkZXIuc3JjID0gcHJvcHMuc3JjO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBzZXRJbWFnZUZyb21EZWZhdWx0ID0gKCkgPT4ge1xuICAgIHRpZGVJbWFnZS52YWx1ZS5zcmMgPSBpbWFnZURlZmF1bHQ7XG4gIH07XG5cbiAgY29uc3Qgc2V0SW1hZ2VGcm9tU3JjID0gKCkgPT4ge1xuICAgIHRpZGVJbWFnZS52YWx1ZS5zcmMgPSBwcm9wcy5zcmM7XG4gIH07XG5cbiAgZGVmaW5lRXhwb3NlKHRpZGVJbWFnZS52YWx1ZSk7XG5cbiAgY29uc3Qgb2JzZXJ2ZXIgPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoKGVudHJpZXMsIG9ic2VydmVyKSA9PiB7XG4gICAgZW50cmllcy5mb3JFYWNoKFxuICAgICAgKGVudHJ5KSA9PiB7XG4gICAgICAgIGlmIChlbnRyeS5pc0ludGVyc2VjdGluZykge1xuICAgICAgICAgIGxvYWRJbWFnZSgpO1xuICAgICAgICAgIG9ic2VydmVyLnVub2JzZXJ2ZShlbnRyeS50YXJnZXQpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAge1xuICAgICAgICByb290TWFyZ2luOiBgJHtwcm9wcy5vZmZzZXR9cHhgLFxuICAgICAgfVxuICAgICk7XG4gIH0pO1xuXG4gIG9uTW91bnRlZCgoKSA9PiB7XG4gICAgaWYgKHByb3BzLmlzTGF6eSkge1xuICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSh0aWRlSW1hZ2UudmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBsb2FkSW1hZ2UoKTtcbiAgICB9XG4gIH0pO1xuXG4gIG9uQmVmb3JlVW5tb3VudCgoKSA9PiB7XG4gICAgb2JzZXJ2ZXIudW5vYnNlcnZlKHRpZGVJbWFnZS52YWx1ZSk7XG4gIH0pO1xuPC9zY3JpcHQ+XG5cbjx0ZW1wbGF0ZT5cbiAgPGltZ1xuICAgIDphbHQ9XCJhbHRcIlxuICAgIDpjbGFzcz1cIlsndGlkZS1pbWFnZScsIENTUy5PQkpFQ1QuQ0VOVEVSLCBDU1MuT0JKRUNULkNPVkVSXVwiXG4gICAgcmVmPVwidGlkZUltYWdlXCJcbiAgICA6c3JjPVwiaXNMYXp5ICYmIHNyYyA/IHNyYyA6IGltYWdlRGVmYXVsdFwiXG4gIC8+XG48L3RlbXBsYXRlPlxuXG48c3R5bGUgc2NvcGVkPjwvc3R5bGU+XG4iLCI8c2NyaXB0IGxhbmc9XCJ0c1wiIHNldHVwPlxuICBpbXBvcnQgeyBjb21wdXRlZCwgZ2V0Q3VycmVudEluc3RhbmNlLCByZWYsIHdhdGNoIH0gZnJvbSAndnVlJztcblxuICBpbXBvcnQgeyBDU1MgfSBmcm9tICdAL3R5cGVzL1N0eWxlcyc7XG5cbiAgdHlwZSBQcm9wcyA9IHtcbiAgICBjaGVja2VkPzogYm9vbGVhbjtcbiAgICBkYXRhVHJhY2s/OiBzdHJpbmc7XG4gICAgZGlzYWJsZWQ/OiBib29sZWFuO1xuICAgIGlucHV0SWQ/OiBzdHJpbmc7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICBuYW1lOiBzdHJpbmc7XG4gIH07XG5cbiAgY29uc3QgcHJvcHMgPSB3aXRoRGVmYXVsdHMoZGVmaW5lUHJvcHM8UHJvcHM+KCksIHtcbiAgICBjaGVja2VkOiBmYWxzZSxcbiAgICBkYXRhVHJhY2s6ICcnLFxuICAgIGRpc2FibGVkOiBmYWxzZSxcbiAgICBpbnB1dElkOiB1bmRlZmluZWQsXG4gICAgbGFiZWw6IHVuZGVmaW5lZCxcbiAgfSk7XG5cbiAgY29uc3QgY2hlY2tlZCA9IHJlZihwcm9wcy5jaGVja2VkKTtcblxuICBjb25zdCB1bmlxdWVJZCA9IGNvbXB1dGVkKCgpID0+IChwcm9wcy5pbnB1dElkID8gcHJvcHMuaW5wdXRJZCA6IGB0ZXh0LWlucHV0LSR7Z2V0Q3VycmVudEluc3RhbmNlKCk/LnVpZCB8fCAnJ31gKSk7XG5cbiAgd2F0Y2gocHJvcHMsIChuZXdWYWx1ZSwgb2xkVmFsdWUpID0+IHtcbiAgICBpZiAobmV3VmFsdWUuY2hlY2tlZCAhPT0gb2xkVmFsdWUuY2hlY2tlZCB8fCBuZXdWYWx1ZS5jaGVja2VkICE9PSBjaGVja2VkLnZhbHVlKSB7XG4gICAgICBjaGVja2VkLnZhbHVlID0gcHJvcHMuY2hlY2tlZDtcbiAgICB9XG4gIH0pO1xuPC9zY3JpcHQ+XG5cbjx0ZW1wbGF0ZT5cbiAgPGRpdiA6Y2xhc3M9XCJbJ3RpZGUtaW5wdXQtcmFkaW8nLCBDU1MuRElTUExBWS5GTEVYLCBDU1MuQVhJUzIuQ0VOVEVSLCBDU1MuR0FQLkhBTEYsIHByb3BzLmRpc2FibGVkICYmICdkaXNhYmxlZCddXCI+XG4gICAgPGlucHV0XG4gICAgICA6Y2hlY2tlZD1cImNoZWNrZWRcIlxuICAgICAgOmNsYXNzPVwiW0NTUy5ESVNQTEFZLk5PTkVdXCJcbiAgICAgIDppZD1cInVuaXF1ZUlkXCJcbiAgICAgIG5hbWU9XCJcIlxuICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgIHZhbHVlPVwiXCJcbiAgICAvPlxuXG4gICAgPGRpdlxuICAgICAgOmNsYXNzPVwiW1xuICAgICAgICAndGlkZS1pbnB1dC1yYWRpby1jdXN0b20nLFxuICAgICAgICBDU1MuUE9TSVRJT04uUkVMQVRJVkUsXG4gICAgICAgIENTUy5ESVNQTEFZLkZMRVgsXG4gICAgICAgIENTUy5BWElTMS5DRU5URVIsXG4gICAgICAgIENTUy5BWElTMi5DRU5URVIsXG4gICAgICAgIENTUy5CT1JERVIuRlVMTC5PTkUsXG4gICAgICAgIGNoZWNrZWQgPyBDU1MuQk9SREVSLkNPTE9SLkhJR0ggOiBDU1MuQk9SREVSLkNPTE9SLkRFRkFVTFQsXG4gICAgICAgIENTUy5CT1JERVIuUkFESVVTLkZVTEwsXG4gICAgICAgIGNoZWNrZWQgJiYgJ2NoZWNrZWQnLFxuICAgICAgXVwiXG4gICAgPlxuICAgICAgPGRpdiA6Y2xhc3M9XCJbJ3RpZGUtaW5wdXQtcmFkaW8tY2hlY2snLCBDU1MuQk9SREVSLlJBRElVUy5GVUxMLCBwcm9wcy5jaGVja2VkICYmIENTUy5CRy5TRUNPTkRBUlldXCIgLz5cbiAgICA8L2Rpdj5cblxuICAgIDxsYWJlbFxuICAgICAgOmNsYXNzPVwiQ1NTLkZPTlQuV0VJR0hULkZPVVJfSFVORFJFRFwiXG4gICAgICA6Zm9yPVwidW5pcXVlSWRcIlxuICAgID5cbiAgICAgIHt7IHByb3BzLmxhYmVsIH19XG4gICAgPC9sYWJlbD5cbiAgPC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c3R5bGUgc2NvcGVkPlxuICAudGlkZS1pbnB1dC1yYWRpby5kaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogdmFyKC0tdGlkZS1kaXNhYmxlZCk7XG4gIH1cblxuICAudGlkZS1pbnB1dC1yYWRpby1jdXN0b20ge1xuICAgIHdpZHRoOiB2YXIoLS10aWRlLWZvbnQtMjgpO1xuICAgIGhlaWdodDogdmFyKC0tdGlkZS1mb250LTI4KTtcbiAgfVxuXG4gIC50aWRlLWlucHV0LXJhZGlvLWNoZWNrIHtcbiAgICB3aWR0aDogMXJlbTtcbiAgICBoZWlnaHQ6IDFyZW07XG4gIH1cbjwvc3R5bGU+XG4iLCJpbXBvcnQgdHlwZSB7IFJlZiB9IGZyb20gJ3Z1ZSc7XG5cbmltcG9ydCB0eXBlIHsgUmFuZ2VEYXRhIH0gZnJvbSAnQC90eXBlcy9GYWNldFJhbmdlJztcbmltcG9ydCB0eXBlIHsgU2VsZWN0T3B0aW9uIH0gZnJvbSAnQC90eXBlcy9TZWxlY3QnO1xuaW1wb3J0IHR5cGUgeyBTdHJpbmdJbnB1dCB9IGZyb20gJ0AvdHlwZXMvRm9ybSc7XG5pbXBvcnQgdHlwZSB7IFZhbGlkYXRpb25FcnJvciwgVmFsaWRhdGlvbkxlbmd0aCwgVmFsaWRhdGlvblJlc3VsdCwgVmFsaWRhdG9yIH0gZnJvbSAnQC90eXBlcy9WYWxpZGF0aW9uJztcblxuaW1wb3J0IHsgcHJpY2VUb051bWJlciB9IGZyb20gJ0AvdXRpbGl0aWVzL2Zvcm1hdCc7XG5cbmV4cG9ydCBjb25zdCBlcnJvck1lc3NhZ2VEZWZhdWx0ID0gJ1BsZWFzZSBlbnRlciBhIHZhbGlkIHZhbHVlLic7XG5cbmV4cG9ydCBjb25zdCBub0Vycm9yID0ge1xuICBtZXNzYWdlOiAnJyxcbiAgdmFsaWQ6IHRydWUsXG59IGFzIFJlYWRvbmx5PFZhbGlkYXRpb25SZXN1bHQ+O1xuXG5leHBvcnQgY29uc3QgY2hlY2tGb3JtYXQgPSAoZm9ybWF0OiBSZWdFeHApID0+IHtcbiAgcmV0dXJuICh2YWx1ZTogc3RyaW5nKTogVmFsaWRhdGlvblJlc3VsdCA9PiB7XG4gICAgbGV0IHJlc3VsdCA9IG5vRXJyb3I7XG5cbiAgICBpZiAoIXZhbHVlLnRyaW0oKS5tYXRjaChmb3JtYXQpKSB7XG4gICAgICByZXN1bHQgPSB7XG4gICAgICAgIG1lc3NhZ2U6IGVycm9yTWVzc2FnZURlZmF1bHQsXG4gICAgICAgIHZhbGlkOiBmYWxzZSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRFcnJvck1lc3NhZ2UgPSAoZXJyb3JGcm9tUHJvcHM6IFZhbGlkYXRpb25FcnJvciwgZXJyb3JGcm9tUmVmOiBWYWxpZGF0aW9uRXJyb3IpID0+IHtcbiAgLy8gZXJyb3IgaW4gcHJvcHMgdGFrZXMgcHJlY2VkZW5jZSBvdmVyIHZhbGlkYXRpb24gZXJyb3JcbiAgaWYgKHR5cGVvZiBlcnJvckZyb21Qcm9wcyA9PT0gJ3N0cmluZycgJiYgZXJyb3JGcm9tUHJvcHMubGVuZ3RoID4gMCkgcmV0dXJuIGVycm9yRnJvbVByb3BzO1xuXG4gIHJldHVybiB0eXBlb2YgZXJyb3JGcm9tUmVmID09PSAnc3RyaW5nJyAmJiBlcnJvckZyb21SZWYubGVuZ3RoID4gMCA/IGVycm9yRnJvbVJlZiA6IGVycm9yTWVzc2FnZURlZmF1bHQ7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0RmllbGRIYXNFcnJvciA9IChlcnJvckZyb21Qcm9wczogVmFsaWRhdGlvbkVycm9yLCBlcnJvckZyb21SZWY6IFZhbGlkYXRpb25FcnJvcikgPT5cbiAgZXJyb3JGcm9tUHJvcHMgIT09IGZhbHNlIHx8IGVycm9yRnJvbVJlZiAhPT0gZmFsc2U7XG5cbmV4cG9ydCBjb25zdCBnZXRGaWVsZExlbmd0aElzVmFsaWQgPSAoeyBtYXhsZW5ndGgsIG1pbmxlbmd0aCwgdmFsdWUgfTogVmFsaWRhdGlvbkxlbmd0aCkgPT4ge1xuICBjb25zdCB0b29TaG9ydCA9IG1heGxlbmd0aCAmJiB2YWx1ZS5sZW5ndGggPiBtYXhsZW5ndGg7XG4gIGNvbnN0IHRvb0xvbmcgPSBtaW5sZW5ndGggJiYgdmFsdWUubGVuZ3RoIDwgbWlubGVuZ3RoO1xuXG4gIHJldHVybiAhdG9vU2hvcnQgJiYgIXRvb0xvbmc7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0TWF4UmFuZ2VJc1ZhbGlkID0gKHsgbWluIH06IFBpY2s8UmFuZ2VEYXRhLCAnbWluJz4sIHR5cGU/OiAncHJpY2UnKSA9PiB7XG4gIHJldHVybiAodmFsdWU6IHN0cmluZyk6IFZhbGlkYXRpb25SZXN1bHQgPT4ge1xuICAgIGxldCBuZXdNYXg6IG51bWJlciB8IG51bGwgPSB0eXBlID09PSAncHJpY2UnID8gcHJpY2VUb051bWJlcih2YWx1ZSkgOiBOdW1iZXIodmFsdWUpO1xuICAgIG5ld01heCA9ICFpc05hTihuZXdNYXgpID8gbmV3TWF4IDogbnVsbDtcbiAgICBpZiAobWluICYmIG5ld01heCkge1xuICAgICAgaWYgKG5ld01heCA+PSBtaW4pIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBtZXNzYWdlOiAnJyxcbiAgICAgICAgICB2YWxpZDogdHJ1ZSxcbiAgICAgICAgfTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgbWVzc2FnZTogYE11c3QgYmUgZ3JlYXRlciB0aGFuIG1pbmAsXG4gICAgICAgICAgdmFsaWQ6IGZhbHNlLFxuICAgICAgICB9O1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gbm9FcnJvcjtcbiAgICB9XG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0TWluUmFuZ2VJc1ZhbGlkID0gKHsgbWF4IH06IFBpY2s8UmFuZ2VEYXRhLCAnbWF4Jz4sIHR5cGU/OiAncHJpY2UnKSA9PiB7XG4gIHJldHVybiAodmFsdWU6IHN0cmluZyk6IFZhbGlkYXRpb25SZXN1bHQgPT4ge1xuICAgIGxldCBuZXdNaW46IG51bWJlciB8IG51bGwgPSB0eXBlID09PSAncHJpY2UnID8gcHJpY2VUb051bWJlcih2YWx1ZSkgOiBOdW1iZXIodmFsdWUpO1xuICAgIG5ld01pbiA9ICFpc05hTihuZXdNaW4pID8gbmV3TWluIDogbnVsbDtcbiAgICBpZiAobWF4ICYmIG5ld01pbikge1xuICAgICAgaWYgKG5ld01pbiA8PSBtYXgpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBtZXNzYWdlOiAnJyxcbiAgICAgICAgICB2YWxpZDogdHJ1ZSxcbiAgICAgICAgfTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgbWVzc2FnZTogYE11c3QgYmUgbGVzcyB0aGFuIG1heGAsXG4gICAgICAgICAgdmFsaWQ6IGZhbHNlLFxuICAgICAgICB9O1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gbm9FcnJvcjtcbiAgICB9XG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0U2VsZWN0T3B0aW9uc0Zyb21TdHJpbmdzID0gKHN0cmluZ3M6IHN0cmluZ1tdKSA9PlxuICBzdHJpbmdzLm1hcChcbiAgICAob3B0aW9uKSA9PlxuICAgICAgKHtcbiAgICAgICAgbGFiZWw6IG9wdGlvbixcbiAgICAgICAgdmFsdWU6IG9wdGlvbixcbiAgICAgIH0gYXMgU2VsZWN0T3B0aW9uKVxuICApO1xuXG5leHBvcnQgY29uc3QgaGFuZGxlRmllbGRWYWxpZGF0aW9uID0gKHtcbiAgZXJyb3IsXG4gIGVycm9yRnJvbVByb3BzLFxuICBtYXhsZW5ndGgsXG4gIG1pbmxlbmd0aCxcbiAgdmFsaWRhdG9ycyxcbiAgdmFsdWUsXG59OiB7XG4gIGVycm9yOiBSZWY8VmFsaWRhdGlvbkVycm9yPjtcbiAgZXJyb3JGcm9tUHJvcHM6IFZhbGlkYXRpb25FcnJvcjtcbiAgbWF4bGVuZ3RoPzogbnVtYmVyO1xuICBtaW5sZW5ndGg/OiBudW1iZXI7XG4gIHZhbGlkYXRvcnM/OiBWYWxpZGF0b3JbXTtcbiAgdmFsdWU6IFJlZjxzdHJpbmc+O1xufSkgPT4ge1xuICAvLyBlcnJvciBpbiBwcm9wcyB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgdmFsaWRhdGlvbiBlcnJvclxuXG4gIGVycm9yLnZhbHVlID0gZXJyb3JGcm9tUHJvcHMgPyBlcnJvckZyb21Qcm9wcyA6IGZhbHNlO1xuXG4gIGlmICghZXJyb3IudmFsdWUgJiYgdmFsaWRhdG9ycykge1xuICAgIGNvbnN0IHZhbGlkYXRpb24gPSB2YWxpZGF0ZVByb3BlcnR5KHZhbHVlLnZhbHVlLCB2YWxpZGF0b3JzKTtcblxuICAgIGlmICghdmFsaWRhdGlvbi52YWxpZCkge1xuICAgICAgZXJyb3IudmFsdWUgPSB2YWxpZGF0aW9uLm1lc3NhZ2U7XG4gICAgfVxuICB9XG5cbiAgaWYgKCFlcnJvci52YWx1ZSAmJiAobWF4bGVuZ3RoIHx8IG1pbmxlbmd0aCkpIHtcbiAgICBjb25zdCBsZW5ndGh2YWxpZGF0aW9uID0gdmFsaWRhdGVMZW5ndGgoe1xuICAgICAgbWF4bGVuZ3RoLFxuICAgICAgbWlubGVuZ3RoLFxuICAgICAgdmFsdWU6IHZhbHVlLnZhbHVlLFxuICAgIH0pO1xuXG4gICAgaWYgKCFsZW5ndGh2YWxpZGF0aW9uLnZhbGlkKSB7XG4gICAgICBlcnJvci52YWx1ZSA9IGxlbmd0aHZhbGlkYXRpb24ubWVzc2FnZTtcbiAgICB9XG4gIH1cbn07XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZUZpZWxkc0Zyb21SZWZzKGZpZWxkczogeyBba2V5OiBzdHJpbmddOiBSZWY8U3RyaW5nSW5wdXQgfCBudWxsPiB9KSB7XG4gIGxldCB2YWxpZCA9IHRydWU7XG5cbiAgZm9yIChjb25zdCBrZXkgaW4gZmllbGRzKSB7XG4gICAgaWYgKGZpZWxkc1trZXldLnZhbHVlPy5yZXF1aXJlZCkge1xuICAgICAgY29uc3QgdmFsdWUgPSBmaWVsZHNba2V5XS52YWx1ZT8udmFsdWU7XG4gICAgICB2YWxpZCA9IHZhbGlkICYmICEhdmFsdWUgJiYgdmFsdWUudHJpbSgpICE9PSAnJztcbiAgICB9XG5cbiAgICBjb25zdCBlcnJvciA9IGZpZWxkc1trZXldLnZhbHVlPy5lcnJvcjtcbiAgICB2YWxpZCA9IHZhbGlkICYmICFlcnJvcjtcbiAgfVxuXG4gIHJldHVybiB2YWxpZDtcbn1cblxuZXhwb3J0IGNvbnN0IHZhbGlkYXRlTGVuZ3RoID0gKHsgbWF4bGVuZ3RoLCBtaW5sZW5ndGgsIHZhbHVlIH06IFZhbGlkYXRpb25MZW5ndGgpOiBWYWxpZGF0aW9uUmVzdWx0ID0+IHtcbiAgY29uc3QgcmVzcG9uc2UgPSB7XG4gICAgbWVzc2FnZTogJycsXG4gICAgdmFsaWQ6IHRydWUsXG4gIH07XG5cbiAgcmVzcG9uc2UudmFsaWQgPSBnZXRGaWVsZExlbmd0aElzVmFsaWQoe1xuICAgIG1heGxlbmd0aCxcbiAgICBtaW5sZW5ndGgsXG4gICAgdmFsdWUsXG4gIH0pO1xuXG4gIGlmIChyZXNwb25zZS52YWxpZCkgcmV0dXJuIHJlc3BvbnNlO1xuXG4gIHJlc3BvbnNlLm1lc3NhZ2UgPSBlcnJvck1lc3NhZ2VEZWZhdWx0O1xuXG4gIGlmIChtYXhsZW5ndGggJiYgbWlubGVuZ3RoKSB7XG4gICAgcmVzcG9uc2UubWVzc2FnZSA9IGBQbGVhc2UgZW50ZXIgYSB2YWx1ZSBiZXR3ZWVuICR7bWlubGVuZ3RofSBhbmQgJHttYXhsZW5ndGh9IGNoYXJhY3RlcnMgaW4gbGVuZ3RoLmA7XG4gIH0gZWxzZSBpZiAobWF4bGVuZ3RoKSB7XG4gICAgcmVzcG9uc2UubWVzc2FnZSA9IGBQbGVhc2UgZW50ZXIgYSB2YWx1ZSBubyBtb3JlIHRoYW4gJHttYXhsZW5ndGh9IGNoYXJhY3RlcnMgaW4gbGVuZ3RoLmA7XG4gIH0gZWxzZSBpZiAobWlubGVuZ3RoKSB7XG4gICAgcmVzcG9uc2UubWVzc2FnZSA9IGBQbGVhc2UgZW50ZXIgYSB2YWx1ZSBubyBsZXNzIHRoYW4gJHttaW5sZW5ndGh9IGNoYXJhY3RlcnMgaW4gbGVuZ3RoLmA7XG4gIH1cblxuICByZXR1cm4gcmVzcG9uc2U7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVQcm9wZXJ0eSh2YWx1ZTogc3RyaW5nLCB2YWxpZGF0b3JzOiAoKHZhbHVlOiBzdHJpbmcpID0+IFZhbGlkYXRpb25SZXN1bHQpW10pOiBWYWxpZGF0aW9uUmVzdWx0IHtcbiAgZm9yIChjb25zdCB2YWxpZGF0b3Igb2YgdmFsaWRhdG9ycykge1xuICAgIGNvbnN0IHZhbGlkYXRpb24gPSB2YWxpZGF0b3IodmFsdWUpO1xuICAgIGlmICghdmFsaWRhdGlvbi52YWxpZCkge1xuICAgICAgcmV0dXJuIHZhbGlkYXRpb247XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBtZXNzYWdlOiAnJyxcbiAgICB2YWxpZDogdHJ1ZSxcbiAgfTtcbn1cbiIsIjxzY3JpcHQgbGFuZz1cInRzXCIgc2V0dXA+XG4gIGltcG9ydCB7IGdldEN1cnJlbnRJbnN0YW5jZSwgY29tcHV0ZWQsIHJlZiwgd2F0Y2ggfSBmcm9tICd2dWUnO1xuXG4gIGltcG9ydCB0eXBlIHsgU2VsZWN0RmllbGQgfSBmcm9tICdAL3R5cGVzL0ZpZWxkJztcblxuICBpbXBvcnQgVGlkZUljb24gZnJvbSAnQC9jb21wb25lbnRzL1RpZGVJY29uLnZ1ZSc7XG4gIGltcG9ydCB7IENTUyB9IGZyb20gJ0AvdHlwZXMvU3R5bGVzJztcbiAgaW1wb3J0IHsgSUNPTiB9IGZyb20gJ0AvdHlwZXMvSWNvbic7XG4gIGltcG9ydCB7IFNJWkUgfSBmcm9tICdAL3R5cGVzL1NpemUnO1xuICBpbXBvcnQgeyBnZXRGaWVsZEhhc0Vycm9yLCBnZXRFcnJvck1lc3NhZ2UgfSBmcm9tICdAL3V0aWxpdGllcy92YWxpZGF0aW9uJztcblxuICBpbnRlcmZhY2UgUHJvcHMgZXh0ZW5kcyBTZWxlY3RGaWVsZCB7XG4gICAgaW5wdXRJZD86IHN0cmluZztcbiAgICBzdXBwb3J0aW5nVGV4dD86IHN0cmluZztcbiAgfVxuXG4gIGNvbnN0IHByb3BzID0gd2l0aERlZmF1bHRzKGRlZmluZVByb3BzPFByb3BzPigpLCB7XG4gICAgZGlzYWJsZWQ6IGZhbHNlLFxuICAgIGVycm9yOiBmYWxzZSxcbiAgICBpbnB1dElkOiB1bmRlZmluZWQsXG4gICAgbGFiZWw6IHVuZGVmaW5lZCxcbiAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgc3VwcG9ydGluZ1RleHQ6IHVuZGVmaW5lZCxcbiAgICB2YWx1ZTogJycsXG4gIH0pO1xuXG4gIGNvbnN0IGVycm9yID0gcmVmKHByb3BzLmVycm9yKTtcbiAgY29uc3QgaGFzRm9jdXMgPSByZWYoZmFsc2UpO1xuICBjb25zdCBpbnB1dCA9IHJlZjxIVE1MU2VsZWN0RWxlbWVudCB8IG51bGw+KG51bGwpO1xuICBjb25zdCByZXF1aXJlZCA9IHJlZihwcm9wcy5yZXF1aXJlZCk7XG4gIGNvbnN0IHZhbHVlID0gcmVmKHByb3BzLnZhbHVlKTtcblxuICBjb25zdCBlcnJvck1lc3NhZ2UgPSBjb21wdXRlZCgoKSA9PiBnZXRFcnJvck1lc3NhZ2UocHJvcHMuZXJyb3IsIGVycm9yLnZhbHVlKSk7XG4gIGNvbnN0IGZvcm1hdHRlZExhYmVsID0gY29tcHV0ZWQoKCkgPT4gKHByb3BzLnJlcXVpcmVkID8gYCR7cHJvcHMubGFiZWx9ICpgIDogcHJvcHMubGFiZWwpKTtcbiAgY29uc3QgaGFzRXJyb3IgPSBjb21wdXRlZCgoKSA9PiAocHJvcHMucmVxdWlyZWQgJiYgIXZhbHVlLnZhbHVlKSB8fCBnZXRGaWVsZEhhc0Vycm9yKGVycm9yLnZhbHVlLCBwcm9wcy5lcnJvcikpO1xuICBjb25zdCBoYXNNaW5pbGFiZWwgPSBjb21wdXRlZCgoKSA9PiBoYXNGb2N1cy52YWx1ZSB8fCAhaXNFbXB0eS52YWx1ZSk7XG4gIGNvbnN0IGlzRW1wdHkgPSBjb21wdXRlZCgoKSA9PiB2YWx1ZS52YWx1ZSA9PT0gJycpO1xuXG4gIGNvbnN0IHVuaXF1ZUlkID0gY29tcHV0ZWQoKCkgPT4gKHByb3BzLmlucHV0SWQgPyBwcm9wcy5pbnB1dElkIDogYHRleHQtaW5wdXQtJHtnZXRDdXJyZW50SW5zdGFuY2UoKT8udWlkIHx8ICcnfWApKTtcblxuICBjb25zdCBleHBhbmRPcHRpb25zID0gKCkgPT4ge1xuICAgIGNvbnN0IGV2ZW50ID0gbmV3IE1vdXNlRXZlbnQoJ21vdXNlZG93bicpO1xuICAgIGlucHV0Py52YWx1ZT8uZGlzcGF0Y2hFdmVudChldmVudCk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlRm9jdXMgPSAoKSA9PiB7XG4gICAgaGFzRm9jdXMudmFsdWUgPSB0cnVlO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUZvY3VzT3V0ID0gKCkgPT4ge1xuICAgIGhhc0ZvY3VzLnZhbHVlID0gZmFsc2U7XG4gIH07XG5cbiAgd2F0Y2gocHJvcHMsIChuZXdWYWx1ZSwgb2xkVmFsdWUpID0+IHtcbiAgICBpZiAobmV3VmFsdWUudmFsdWUgIT09IG9sZFZhbHVlLnZhbHVlIHx8IG5ld1ZhbHVlLnZhbHVlICE9PSB2YWx1ZS52YWx1ZSkge1xuICAgICAgdmFsdWUudmFsdWUgPSBwcm9wcy52YWx1ZTtcbiAgICB9XG4gIH0pO1xuXG4gIGRlZmluZUV4cG9zZSh7IGVycm9yLCB2YWx1ZSB9KTtcbjwvc2NyaXB0PlxuXG48dGVtcGxhdGU+XG4gIDxkaXZcbiAgICA6Y2xhc3M9XCJbXG4gICAgICAndGlkZS1pbnB1dC1zZWxlY3QnLFxuICAgICAgQ1NTLkRJU1BMQVkuRkxFWCxcbiAgICAgIENTUy5GTEVYLkRJUkVDVElPTi5DT0xVTU4sXG4gICAgICBDU1MuR0FQLlFVQVJURVIsXG4gICAgICBkaXNhYmxlZCAmJiAnZGlzYWJsZWQnLFxuICAgICAgaGFzRXJyb3IgJiYgJ2Vycm9yJyxcbiAgICBdXCJcbiAgPlxuICAgIDxkaXZcbiAgICAgIDpjbGFzcz1cIltcbiAgICAgICAgJ3RpZGUtaW5wdXQtYm9yZGVyJyxcbiAgICAgICAgQ1NTLlBPU0lUSU9OLlJFTEFUSVZFLFxuICAgICAgICBDU1MuRElTUExBWS5GTEVYLFxuICAgICAgICBDU1MuQVhJUzIuQ0VOVEVSLFxuICAgICAgICBDU1MuR0FQLkhBTEYsXG4gICAgICAgIENTUy5CT1JERVIuUkFESVVTLkhBTEYsXG4gICAgICAgIHByb3BzLmRpc2FibGVkID8gQ1NTLkNVUlNPUi5OT1RfQUxMT1dFRCA6ICcnLFxuICAgICAgICBDU1MuT1ZFUkZMT1cuWFkuSElEREVOLFxuICAgICAgXVwiXG4gICAgICBAY2xpY2s9XCJleHBhbmRPcHRpb25zXCJcbiAgICA+XG4gICAgICA8ZGl2IDpjbGFzcz1cIltDU1MuRElTUExBWS5GTEVYLCBDU1MuRkxFWC5ESVJFQ1RJT04uQ09MVU1OLCBDU1MuV0lEVEguRlVMTF1cIj5cbiAgICAgICAgPGxhYmVsXG4gICAgICAgICAgOmNsYXNzPVwiW1xuICAgICAgICAgICAgaGFzTWluaWxhYmVsID8gWydtaW5pbGFiZWwnLCBDU1MuRk9OVC5TSVpFLlRXRUxWRV0gOiBDU1MuRk9OVC5TSVpFLlNJWFRFRU4sXG4gICAgICAgICAgICBDU1MuUE9TSVRJT04uQUJTT0xVVEUsXG4gICAgICAgICAgICBDU1MuUE9TSVRJT05JTkcuTEVGVCxcbiAgICAgICAgICAgIENTUy5NQVJHSU4uVE9QLkhBTEYsXG4gICAgICAgICAgICBDU1MuTUFSR0lOLkxFRlQuT05FLFxuICAgICAgICAgICAgIWhhc0Vycm9yICYmIENTUy5GT05ULkNPTE9SLlNVUkZBQ0UuVkFSSUFOVCxcbiAgICAgICAgICAgIENTUy5GT05ULldFSUdIVC5GSVZFX0hVTkRSRUQsXG4gICAgICAgICAgXVwiXG4gICAgICAgICAgOmZvcj1cInVuaXF1ZUlkXCJcbiAgICAgICAgICB2LWlmPVwibGFiZWxcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgZm9ybWF0dGVkTGFiZWwgfX1cbiAgICAgICAgPC9sYWJlbD5cblxuICAgICAgICA8c2VsZWN0XG4gICAgICAgICAgOmNsYXNzPVwiW0NTUy5QQURESU5HLkJPVFRPTS5IQUxGLCBDU1MuUEFERElORy5YLk9ORSwgQ1NTLldJRFRILkZVTEwsIGRpc2FibGVkICYmIENTUy5DVVJTT1IuTk9UX0FMTE9XRURdXCJcbiAgICAgICAgICA6ZGlzYWJsZWQ9XCJkaXNhYmxlZFwiXG4gICAgICAgICAgOm5hbWU9XCJuYW1lXCJcbiAgICAgICAgICByZWY9XCJpbnB1dFwiXG4gICAgICAgICAgOnJlcXVpcmVkPVwicmVxdWlyZWRcIlxuICAgICAgICAgIEBmb2N1cz1cImhhbmRsZUZvY3VzXCJcbiAgICAgICAgICBAZm9jdXNvdXQ9XCJoYW5kbGVGb2N1c091dFwiXG4gICAgICAgICAgOmlkPVwidW5pcXVlSWRcIlxuICAgICAgICAgIHYtbW9kZWw9XCJ2YWx1ZVwiXG4gICAgICAgID5cbiAgICAgICAgICA8b3B0aW9uXG4gICAgICAgICAgICA6Y2xhc3M9XCJbQ1NTLldJRFRILkZVTEwsIENTUy5CRy5TVVJGQUNFLkRFRkFVTFRdXCJcbiAgICAgICAgICAgIDprZXk9XCJvcHRpb24udmFsdWVcIlxuICAgICAgICAgICAgOnNlbGVjdGVkPVwidmFsdWUgPT09IG9wdGlvbi52YWx1ZSA/IHRydWUgOiB1bmRlZmluZWRcIlxuICAgICAgICAgICAgOnZhbHVlPVwib3B0aW9uLnZhbHVlXCJcbiAgICAgICAgICAgIHYtZm9yPVwib3B0aW9uIGluIG9wdGlvbnNcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt7IG9wdGlvbi5sYWJlbCB9fVxuICAgICAgICAgIDwvb3B0aW9uPlxuICAgICAgICA8L3NlbGVjdD5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8VGlkZUljb25cbiAgICAgICAgOmNsYXNzPVwiW0NTUy5QT1NJVElPTi5BQlNPTFVURSwgQ1NTLlBPU0lUSU9OSU5HLlJJR0hULCBDU1MuTUFSR0lOLlJJR0hULk9ORSwgQ1NTLlBPSU5URVJfRVZFTlRTLk9GRl1cIlxuICAgICAgICA6aWNvbj1cIklDT04uRVhQQU5EX01PUkVcIlxuICAgICAgICA6c2l6ZT1cIlNJWkUuU01BTExcIlxuICAgICAgLz5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXZcbiAgICAgIDpjbGFzcz1cIltDU1MuRElTUExBWS5GTEVYLCBDU1MuQVhJUzIuQ0VOVEVSLCBDU1MuR0FQLlFVQVJURVIsIENTUy5NQVJHSU4uTEVGVC5PTkVdXCJcbiAgICAgIHYtaWY9XCJwcm9wcy5zdXBwb3J0aW5nVGV4dCB8fCBoYXNFcnJvclwiXG4gICAgPlxuICAgICAgPFRpZGVJY29uXG4gICAgICAgIDpjbGFzcz1cIltdXCJcbiAgICAgICAgOmljb249XCJJQ09OLkVSUk9SXCJcbiAgICAgICAgOnNpemU9XCJTSVpFLlNNQUxMXCJcbiAgICAgICAgdi1pZj1cImhhc0Vycm9yXCJcbiAgICAgIC8+XG5cbiAgICAgIDxkaXYgOmNsYXNzPVwiW0NTUy5GT05ULlNJWkUuVFdFTFZFLCBDU1MuRk9OVC5XRUlHSFQuRklWRV9IVU5EUkVEXVwiPlxuICAgICAgICB7eyBoYXNFcnJvciA/IGVycm9yTWVzc2FnZSA6IHByb3BzLnN1cHBvcnRpbmdUZXh0IH19XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L3RlbXBsYXRlPlxuXG48c3R5bGUgc2NvcGVkPlxuICBzZWxlY3Qge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICBsYWJlbCB7XG4gICAgaGVpZ2h0OiAxLjE4NzVyZW07XG4gICAgdHJhbnNpdGlvbjogZm9udC1zaXplIHZhcigtLXRpZGUtYW5pbWF0ZSksIHRyYW5zZm9ybSB2YXIoLS10aWRlLWFuaW1hdGUpO1xuICB9XG5cbiAgbGFiZWw6bm90KC5taW5pbGFiZWwpIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCBjYWxjKDkgLyAxNiAqIDFyZW0pKTtcbiAgfVxuXG4gIC50aWRlLWlucHV0LXNlbGVjdC5kaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogdmFyKC0tdGlkZS1kaXNhYmxlZCk7XG4gIH1cblxuICAudGlkZS1pbnB1dC1zZWxlY3QuZXJyb3IgLnRpZGUtaW5wdXQtYm9yZGVyIHtcbiAgICBvdXRsaW5lLWNvbG9yOiB2YXIoLS10aWRlLWVycm9yLWJvcmRlcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGlkZS1lcnJvci1zdXJmYWNlKTtcbiAgfVxuXG4gIC50aWRlLWlucHV0LXNlbGVjdC5lcnJvcjpmb2N1cy13aXRoaW4gLnRpZGUtaW5wdXQtYm9yZGVyIHtcbiAgICBvdXRsaW5lLWNvbG9yOiB2YXIoLS10aWRlLWVycm9yLWJvcmRlcik7XG4gIH1cblxuICAudGlkZS1pbnB1dC1zZWxlY3Q6Zm9jdXMtd2l0aGluIC50aWRlLWlucHV0LWJvcmRlciB7XG4gICAgLS10aWRlLWlucHV0LW91dGxpbmUtd2lkdGg6IHZhcigtLXRpZGUtYm9yZGVyLXdpZHRoLTIpO1xuICAgIG91dGxpbmUtY29sb3I6IHZhcigtLXRpZGUtc3VyZmFjZS1ib3JkZXItaGlnaCk7XG4gIH1cblxuICAudGlkZS1pbnB1dC1ib3JkZXIge1xuICAgIC0tdGlkZS1pbnB1dC1vdXRsaW5lLXdpZHRoOiB2YXIoLS10aWRlLWJvcmRlci13aWR0aC0xKTtcbiAgICBvdXRsaW5lOiB2YXIoLS10aWRlLWlucHV0LW91dGxpbmUtd2lkdGgpIHNvbGlkIHZhcigtLXRpZGUtYm9yZGVyKTtcbiAgICBvdXRsaW5lLW9mZnNldDogY2FsYyh2YXIoLS10aWRlLWlucHV0LW91dGxpbmUtd2lkdGgpICogLTEpO1xuICB9XG5cbiAgLnRpZGUtaW5wdXQtc2VsZWN0LmVycm9yIHtcbiAgICBjb2xvcjogdmFyKC0tdGlkZS1lcnJvci1vbi1zdXJmYWNlKTtcbiAgfVxuXG4gIC50aWRlLWlucHV0LXNlbGVjdC5lcnJvciBvcHRpb24ge1xuICAgIGNvbG9yOiB2YXIoLS10aWRlLW9uLXN1cmZhY2UpO1xuICB9XG5cbiAgc2VsZWN0IHtcbiAgICBwYWRkaW5nLXRvcDogMjdweDtcbiAgfVxuPC9zdHlsZT5cbiIsImV4cG9ydCBjb25zdCBURVhUX0lOUFVUX1RZUEUgPSB7XG4gIERBVEU6ICdkYXRlJyxcbiAgREFURVRJTUVfTE9DQUw6ICdkYXRldGltZS1sb2NhbCcsXG4gIEVNQUlMOiAnZW1haWwnLFxuICBNT05USDogJ21vbnRoJyxcbiAgTlVNQkVSOiAnbnVtYmVyJyxcbiAgUEFTU1dPUkQ6ICdwYXNzd29yZCcsXG4gIFNFQVJDSDogJ3NlYXJjaCcsXG4gIFRFTDogJ3RlbCcsXG4gIFRFWFQ6ICd0ZXh0JyxcbiAgVElNRTogJ3RpbWUnLFxuICBVUkw6ICd1cmwnLFxuICBXRUVLOiAnd2VlaycsXG59IGFzIGNvbnN0O1xuXG5leHBvcnQgdHlwZSBUZXh0SW5wdXRUeXBlID0gKHR5cGVvZiBURVhUX0lOUFVUX1RZUEUpW2tleW9mIHR5cGVvZiBURVhUX0lOUFVUX1RZUEVdO1xuIiwiPHNjcmlwdCBsYW5nPVwidHNcIiBzZXR1cD5cbiAgaW1wb3J0IHsgY29tcHV0ZWQsIGdldEN1cnJlbnRJbnN0YW5jZSwgcmVmLCB3YXRjaCB9IGZyb20gJ3Z1ZSc7XG5cbiAgaW1wb3J0IHR5cGUgeyBGb3JtVmFsdWVUcmFuc2Zvcm1lciB9IGZyb20gJ0AvdHlwZXMvRm9ybSc7XG4gIGltcG9ydCB0eXBlIHsgSWNvbiB9IGZyb20gJ0AvdHlwZXMvSWNvbic7XG4gIGltcG9ydCB0eXBlIHsgVGV4dElucHV0VHlwZSB9IGZyb20gJ0AvdHlwZXMvVGV4dElucHV0JztcbiAgaW1wb3J0IHR5cGUgeyBWYWxpZGF0aW9uRXJyb3IsIFZhbGlkYXRvciB9IGZyb20gJ0AvdHlwZXMvVmFsaWRhdGlvbic7XG5cbiAgaW1wb3J0IFRpZGVJY29uIGZyb20gJ0AvY29tcG9uZW50cy9UaWRlSWNvbi52dWUnO1xuICBpbXBvcnQgeyBDU1MgfSBmcm9tICdAL3R5cGVzL1N0eWxlcyc7XG4gIGltcG9ydCB7IElDT04gfSBmcm9tICdAL3R5cGVzL0ljb24nO1xuICBpbXBvcnQgeyBTSVpFIH0gZnJvbSAnQC90eXBlcy9TaXplJztcbiAgaW1wb3J0IHsgVEVYVF9JTlBVVF9UWVBFIH0gZnJvbSAnQC90eXBlcy9UZXh0SW5wdXQnO1xuICBpbXBvcnQgeyBnZXRFcnJvck1lc3NhZ2UsIGdldEZpZWxkSGFzRXJyb3IsIGhhbmRsZUZpZWxkVmFsaWRhdGlvbiB9IGZyb20gJ0AvdXRpbGl0aWVzL3ZhbGlkYXRpb24nO1xuXG4gIHR5cGUgUHJvcHMgPSB7XG4gICAgYXV0b2NvbXBsZXRlPzogYm9vbGVhbjtcbiAgICBkYXRhVHJhY2s/OiBzdHJpbmc7XG4gICAgZGlzYWJsZWQ/OiBib29sZWFuO1xuICAgIGVycm9yPzogVmFsaWRhdGlvbkVycm9yO1xuICAgIGhhc0NsZWFyPzogYm9vbGVhbjtcbiAgICBpY29uTGVhZGluZz86IEljb247XG4gICAgaW5wdXRJZD86IHN0cmluZztcbiAgICBsYWJlbDogc3RyaW5nO1xuICAgIG1heGxlbmd0aD86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICBtaW5sZW5ndGg/OiBudW1iZXIgfCB1bmRlZmluZWQ7XG4gICAgbmFtZTogc3RyaW5nO1xuICAgIHByZWZpeD86IHN0cmluZztcbiAgICByZXF1aXJlZD86IGJvb2xlYW47XG4gICAgc3VmZml4Pzogc3RyaW5nO1xuICAgIHN1cHBvcnRpbmdUZXh0Pzogc3RyaW5nO1xuICAgIHRyYW5zZm9ybVZhbHVlPzogRm9ybVZhbHVlVHJhbnNmb3JtZXI7XG4gICAgdHlwZT86IFRleHRJbnB1dFR5cGU7XG4gICAgdmFsaWRhdG9ycz86IFZhbGlkYXRvcltdO1xuICAgIHZhbHVlPzogc3RyaW5nO1xuICB9O1xuXG4gIGNvbnN0IHByb3BzID0gd2l0aERlZmF1bHRzKGRlZmluZVByb3BzPFByb3BzPigpLCB7XG4gICAgYXV0b2NvbXBsZXRlOiBmYWxzZSxcbiAgICBkYXRhVHJhY2s6ICcnLFxuICAgIGRpc2FibGVkOiBmYWxzZSxcbiAgICBlcnJvcjogZmFsc2UsXG4gICAgaGFzQ2xlYXI6IGZhbHNlLFxuICAgIGljb25MZWFkaW5nOiB1bmRlZmluZWQsXG4gICAgaW5wdXRJZDogdW5kZWZpbmVkLFxuICAgIGxhYmVsOiB1bmRlZmluZWQsXG4gICAgbWF4bGVuZ3RoOiB1bmRlZmluZWQsXG4gICAgbWlubGVuZ3RoOiB1bmRlZmluZWQsXG4gICAgcHJlZml4OiB1bmRlZmluZWQsXG4gICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgIHN1ZmZpeDogdW5kZWZpbmVkLFxuICAgIHN1cHBvcnRpbmdUZXh0OiB1bmRlZmluZWQsXG4gICAgdHJhbnNmb3JtVmFsdWU6IHVuZGVmaW5lZCxcbiAgICB0eXBlOiBURVhUX0lOUFVUX1RZUEUuVEVYVCxcbiAgICB2YWxpZGF0b3JzOiB1bmRlZmluZWQsXG4gICAgdmFsdWU6ICcnLFxuICB9KTtcblxuICBjb25zdCBlcnJvciA9IHJlZihwcm9wcy5lcnJvcik7XG4gIGNvbnN0IGhhc0ZvY3VzID0gcmVmKGZhbHNlKTtcbiAgY29uc3QgaW5wdXQgPSByZWY8SFRNTElucHV0RWxlbWVudCB8IG51bGw+KG51bGwpO1xuICBjb25zdCBzaG93UGFzc3dvcmQgPSByZWYoZmFsc2UpO1xuICBjb25zdCB2YWx1ZSA9IHJlZihwcm9wcy52YWx1ZSk7XG5cbiAgY29uc3QgZXJyb3JNZXNzYWdlID0gY29tcHV0ZWQoKCkgPT4gZ2V0RXJyb3JNZXNzYWdlKHByb3BzLmVycm9yLCBlcnJvci52YWx1ZSkpO1xuICBjb25zdCBmb3JtYXR0ZWRMYWJlbCA9IGNvbXB1dGVkKCgpID0+IChwcm9wcy5yZXF1aXJlZCAmJiBwcm9wcy5sYWJlbCA/IGAke3Byb3BzLmxhYmVsfSAqYCA6IHByb3BzLmxhYmVsKSk7XG4gIGNvbnN0IGhhc0NsZWFyID0gY29tcHV0ZWQoKCkgPT4gcHJvcHMuaGFzQ2xlYXIgJiYgdmFsdWUudmFsdWUpO1xuICBjb25zdCBoYXNFcnJvciA9IGNvbXB1dGVkKCgpID0+IChwcm9wcy5yZXF1aXJlZCAmJiAhdmFsdWUudmFsdWUpIHx8IGdldEZpZWxkSGFzRXJyb3IoZXJyb3IudmFsdWUsIHByb3BzLmVycm9yKSk7XG4gIGNvbnN0IGhhc01pbmlsYWJlbCA9IGNvbXB1dGVkKCgpID0+IGhhc0ZvY3VzLnZhbHVlIHx8ICFpc0VtcHR5LnZhbHVlKTtcbiAgY29uc3QgaXNFbXB0eSA9IGNvbXB1dGVkKCgpID0+IHZhbHVlLnZhbHVlID09PSAnJyk7XG4gIGNvbnN0IHR5cGUgPSBjb21wdXRlZCgoKSA9PlxuICAgIHByb3BzLnR5cGUgPT09IFRFWFRfSU5QVVRfVFlQRS5QQVNTV09SRCAmJiBzaG93UGFzc3dvcmQudmFsdWUgPT09IHRydWUgPyBURVhUX0lOUFVUX1RZUEUuVEVYVCA6IHByb3BzLnR5cGVcbiAgKTtcbiAgY29uc3QgdW5pcXVlSWQgPSBjb21wdXRlZCgoKSA9PiAocHJvcHMuaW5wdXRJZCA/IHByb3BzLmlucHV0SWQgOiBgdGV4dC1pbnB1dC0ke2dldEN1cnJlbnRJbnN0YW5jZSgpPy51aWQgfHwgJyd9YCkpO1xuXG4gIGNvbnN0IGhhbmRsZUNsZWFyID0gKCkgPT4ge1xuICAgIHZhbHVlLnZhbHVlID0gJyc7XG4gICAgaW5wdXQudmFsdWU/LmZvY3VzKCk7XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlRm9jdXMgPSAoKSA9PiB7XG4gICAgaGFzRm9jdXMudmFsdWUgPSB0cnVlO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUZvY3VzT3V0ID0gKCkgPT4ge1xuICAgIGhhc0ZvY3VzLnZhbHVlID0gZmFsc2U7XG4gICAgaGFuZGxlVmFsaWRhdGlvbigpO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUlucHV0ID0gKCkgPT4ge1xuICAgIGlmIChwcm9wcy50cmFuc2Zvcm1WYWx1ZSkge1xuICAgICAgY29uc3QgZGlnaXRzID0gdmFsdWUudmFsdWUubWF0Y2goL1xcZC9nKT8uam9pbignJykgfHwgdW5kZWZpbmVkO1xuXG4gICAgICB2YWx1ZS52YWx1ZSA9IGRpZ2l0cyA/IHByb3BzLnRyYW5zZm9ybVZhbHVlKGRpZ2l0cykgOiAnJztcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgaGFuZGxlVmFsaWRhdGlvbiA9ICgpID0+IHtcbiAgICBoYW5kbGVGaWVsZFZhbGlkYXRpb24oe1xuICAgICAgZXJyb3IsXG4gICAgICBlcnJvckZyb21Qcm9wczogcHJvcHMuZXJyb3IsXG4gICAgICBtYXhsZW5ndGg6IHByb3BzLm1heGxlbmd0aCxcbiAgICAgIG1pbmxlbmd0aDogcHJvcHMubWlubGVuZ3RoLFxuICAgICAgdmFsaWRhdG9yczogcHJvcHMudmFsaWRhdG9ycyxcbiAgICAgIHZhbHVlLFxuICAgIH0pO1xuICB9O1xuXG4gIGNvbnN0IHVwZGF0ZVZhbHVlID0gKG5ld1ZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICB2YWx1ZS52YWx1ZSA9IG5ld1ZhbHVlO1xuICB9O1xuXG4gIHdhdGNoKFxuICAgIHByb3BzLFxuICAgIChuZXdWYWx1ZSwgb2xkVmFsdWUpID0+IHtcbiAgICAgIGlmIChuZXdWYWx1ZS52YWx1ZSAhPT0gb2xkVmFsdWUudmFsdWUgfHwgbmV3VmFsdWUudmFsdWUgIT09IHZhbHVlLnZhbHVlKSB7XG4gICAgICAgIHZhbHVlLnZhbHVlID0gcHJvcHMudmFsdWU7XG4gICAgICB9XG4gICAgfSxcbiAgICB7IGRlZXA6IHRydWUgfVxuICApO1xuXG4gIGRlZmluZUV4cG9zZSh7IGVycm9yLCB1cGRhdGVWYWx1ZSwgdmFsdWUgfSk7XG48L3NjcmlwdD5cblxuPHRlbXBsYXRlPlxuICA8ZGl2XG4gICAgOmNsYXNzPVwiW1xuICAgICAgJ3RpZGUtaW5wdXQtdGV4dCcsXG4gICAgICBDU1MuRElTUExBWS5GTEVYLFxuICAgICAgQ1NTLkZMRVguRElSRUNUSU9OLkNPTFVNTixcbiAgICAgIENTUy5HQVAuUVVBUlRFUixcbiAgICAgIGRpc2FibGVkICYmICdkaXNhYmxlZCcsXG4gICAgICBoYXNFcnJvciAmJiAnZXJyb3InLFxuICAgIF1cIlxuICA+XG4gICAgPGRpdlxuICAgICAgOmNsYXNzPVwiW1xuICAgICAgICAndGlkZS1pbnB1dC1ib3JkZXInLFxuICAgICAgICBDU1MuRElTUExBWS5GTEVYLFxuICAgICAgICBDU1MuQVhJUzIuQ0VOVEVSLFxuICAgICAgICBDU1MuR0FQLkhBTEYsXG4gICAgICAgIENTUy5QT1NJVElPTi5SRUxBVElWRSxcbiAgICAgICAgQ1NTLkJPUkRFUi5SQURJVVMuSEFMRixcbiAgICAgICAgaGFzQ2xlYXIgPyBbQ1NTLlBBRERJTkcuUklHSFQuSEFMRiwgQ1NTLlBBRERJTkcuTEVGVC5PTkVdIDogW0NTUy5QQURESU5HLlguT05FXSxcbiAgICAgICAgQ1NTLlBBRERJTkcuWS5IQUxGLFxuICAgICAgICBwcm9wcy5kaXNhYmxlZCA/IENTUy5DVVJTT1IuTk9UX0FMTE9XRUQgOiBDU1MuQ1VSU09SLlRFWFQsXG4gICAgICBdXCJcbiAgICA+XG4gICAgICA8VGlkZUljb25cbiAgICAgICAgOmljb249XCJwcm9wcy5pY29uTGVhZGluZ1wiXG4gICAgICAgIDpzaXplPVwiU0laRS5TTUFMTFwiXG4gICAgICAgIHYtaWY9XCJwcm9wcy5pY29uTGVhZGluZ1wiXG4gICAgICAvPlxuXG4gICAgICA8ZGl2IDpjbGFzcz1cIltDU1MuRElTUExBWS5GTEVYLCBDU1MuQVhJUzIuQ0VOVEVSLCBDU1MuR0FQLlFVQVJURVIsIENTUy5XSURUSC5GVUxMXVwiPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgOmNsYXNzPVwiWyd0aWRlLWlucHV0LXRleHQtcHJlZml4JywgIWhhc0Vycm9yICYmIENTUy5GT05ULkNPTE9SLlNVUkZBQ0UuVkFSSUFOVCwgaGFzTWluaWxhYmVsID8gJycgOiAnb2Zmc2V0J11cIlxuICAgICAgICAgIHYtaWY9XCJwcm9wcy5wcmVmaXhcIlxuICAgICAgICA+XG4gICAgICAgICAge3sgcHJvcHMucHJlZml4IH19XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXZcbiAgICAgICAgICA6Y2xhc3M9XCJbQ1NTLkRJU1BMQVkuRkxFWCwgQ1NTLkZMRVguRElSRUNUSU9OLkNPTFVNTiwgQ1NTLldJRFRILkZVTExdXCJcbiAgICAgICAgICBAY2xpY2sucHJldmVudD1cImlucHV0Py5mb2N1cygpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgOmNsYXNzPVwiW1xuICAgICAgICAgICAgICBoYXNNaW5pbGFiZWwgPyBbJ21pbmlsYWJlbCcsIENTUy5GT05ULlNJWkUuVFdFTFZFXSA6IENTUy5GT05ULlNJWkUuU0lYVEVFTixcbiAgICAgICAgICAgICAgIWhhc0Vycm9yICYmIENTUy5GT05ULkNPTE9SLlNVUkZBQ0UuVkFSSUFOVCxcbiAgICAgICAgICAgICAgQ1NTLkZPTlQuV0VJR0hULkZJVkVfSFVORFJFRCxcbiAgICAgICAgICAgICAgQ1NTLkNVUlNPUi5URVhULFxuICAgICAgICAgICAgXVwiXG4gICAgICAgICAgICA6Zm9yPVwidW5pcXVlSWRcIlxuICAgICAgICAgICAgdi1pZj1cImxhYmVsXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICB7eyBmb3JtYXR0ZWRMYWJlbCB9fVxuICAgICAgICAgIDwvbGFiZWw+XG5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIDphdXRvY29tcGxldGU9XCJhdXRvY29tcGxldGUgPyAnb24nIDogJ29mZidcIlxuICAgICAgICAgICAgOmNsYXNzPVwiW0NTUy5XSURUSC5GVUxMLCBkaXNhYmxlZCAmJiBDU1MuQ1VSU09SLk5PVF9BTExPV0VEXVwiXG4gICAgICAgICAgICA6ZGF0YS10cmFjaz1cInByb3BzLmRhdGFUcmFja1wiXG4gICAgICAgICAgICA6ZGlzYWJsZWQ9XCJwcm9wcy5kaXNhYmxlZFwiXG4gICAgICAgICAgICA6bWF4bGVuZ3RoPVwicHJvcHMubWF4bGVuZ3RoXCJcbiAgICAgICAgICAgIDptaW5sZW5ndGg9XCJwcm9wcy5taW5sZW5ndGhcIlxuICAgICAgICAgICAgOm5hbWU9XCJwcm9wcy5uYW1lXCJcbiAgICAgICAgICAgIHJlZj1cImlucHV0XCJcbiAgICAgICAgICAgIDpyZXF1aXJlZD1cInByb3BzLnJlcXVpcmVkXCJcbiAgICAgICAgICAgIDp0eXBlPVwidHlwZVwiXG4gICAgICAgICAgICBAY2hhbmdlPVwiaGFuZGxlVmFsaWRhdGlvblwiXG4gICAgICAgICAgICBAZm9jdXM9XCJoYW5kbGVGb2N1c1wiXG4gICAgICAgICAgICBAZm9jdXNvdXQ9XCJoYW5kbGVGb2N1c091dFwiXG4gICAgICAgICAgICBAaW5wdXQ9XCJoYW5kbGVJbnB1dFwiXG4gICAgICAgICAgICA6aWQ9XCJ1bmlxdWVJZFwiXG4gICAgICAgICAgICB2LW1vZGVsPVwidmFsdWVcIlxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDxkaXZcbiAgICAgICAgICA6Y2xhc3M9XCJbJ3RpZGUtaW5wdXQtdGV4dC1zdWZmaXgnLCAhaGFzRXJyb3IgJiYgQ1NTLkZPTlQuQ09MT1IuU1VSRkFDRS5WQVJJQU5ULCBoYXNNaW5pbGFiZWwgPyAnJyA6ICdvZmZzZXQnXVwiXG4gICAgICAgICAgdi1pZj1cInByb3BzLnN1ZmZpeFwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyBwcm9wcy5zdWZmaXggfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPFRpZGVJY29uXG4gICAgICAgIDpjbGFzcz1cIltDU1MuUEFERElORy5ZLkhBTEYsIENTUy5QQURESU5HLkZVTEwuSEFMRiwgQ1NTLkNVUlNPUi5QT0lOVEVSXVwiXG4gICAgICAgIDppY29uPVwiSUNPTi5DTE9TRVwiXG4gICAgICAgIDpzaXplPVwiU0laRS5TTUFMTFwiXG4gICAgICAgIEBjbGljaz1cImhhbmRsZUNsZWFyXCJcbiAgICAgICAgdi1pZj1cImhhc0NsZWFyICYmIHByb3BzLnR5cGUgIT09IFRFWFRfSU5QVVRfVFlQRS5QQVNTV09SRFwiXG4gICAgICAvPlxuXG4gICAgICA8VGlkZUljb25cbiAgICAgICAgOmNsYXNzPVwiW0NTUy5QQURESU5HLlkuSEFMRiwgQ1NTLlBBRERJTkcuRlVMTC5IQUxGLCBDU1MuQ1VSU09SLlBPSU5URVJdXCJcbiAgICAgICAgOmljb249XCJJQ09OLlZJU0lCSUxJVFlcIlxuICAgICAgICA6c2l6ZT1cIlNJWkUuU01BTExcIlxuICAgICAgICBAY2xpY2s9XCJzaG93UGFzc3dvcmQgPSAhc2hvd1Bhc3N3b3JkXCJcbiAgICAgICAgdi1pZj1cInByb3BzLnR5cGUgPT09IFRFWFRfSU5QVVRfVFlQRS5QQVNTV09SRFwiXG4gICAgICAvPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdlxuICAgICAgOmNsYXNzPVwiW0NTUy5ESVNQTEFZLkZMRVgsIENTUy5BWElTMi5DRU5URVIsIENTUy5HQVAuUVVBUlRFUiwgQ1NTLk1BUkdJTi5MRUZULk9ORV1cIlxuICAgICAgdi1pZj1cInByb3BzLnN1cHBvcnRpbmdUZXh0IHx8IGhhc0Vycm9yXCJcbiAgICA+XG4gICAgICA8VGlkZUljb25cbiAgICAgICAgOmNsYXNzPVwiW11cIlxuICAgICAgICA6aWNvbj1cIklDT04uRVJST1JcIlxuICAgICAgICA6c2l6ZT1cIlNJWkUuU01BTExcIlxuICAgICAgICB2LWlmPVwiaGFzRXJyb3JcIlxuICAgICAgLz5cblxuICAgICAgPGRpdiA6Y2xhc3M9XCJbQ1NTLkZPTlQuU0laRS5UV0VMVkUsIENTUy5GT05ULldFSUdIVC5GSVZFX0hVTkRSRURdXCI+XG4gICAgICAgIHt7IGhhc0Vycm9yID8gZXJyb3JNZXNzYWdlIDogcHJvcHMuc3VwcG9ydGluZ1RleHQgfX1cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzdHlsZSBzY29wZWQ+XG4gIGxhYmVsIHtcbiAgICBoZWlnaHQ6IDEuMTg3NXJlbTtcbiAgICB0cmFuc2l0aW9uOiBmb250LXNpemUgdmFyKC0tdGlkZS1hbmltYXRlKSwgdHJhbnNmb3JtIHZhcigtLXRpZGUtYW5pbWF0ZSk7XG4gIH1cblxuICBsYWJlbDpub3QoLm1pbmlsYWJlbCksXG4gIC50aWRlLWlucHV0LXRleHQtcHJlZml4Om5vdCgub2Zmc2V0KSxcbiAgLnRpZGUtaW5wdXQtdGV4dC1zdWZmaXg6bm90KC5vZmZzZXQpIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCBjYWxjKDkgLyAxNiAqIDFyZW0pKTtcbiAgfVxuXG4gIC50aWRlLWlucHV0LXRleHQtcHJlZml4LFxuICAudGlkZS1pbnB1dC10ZXh0LXN1ZmZpeCB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLXRpZGUtYW5pbWF0ZSk7XG4gIH1cblxuICAudGlkZS1pbnB1dC10ZXh0LmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiB2YXIoLS10aWRlLWRpc2FibGVkKTtcbiAgfVxuXG4gIC50aWRlLWlucHV0LXRleHQuZXJyb3Ige1xuICAgIGNvbG9yOiB2YXIoLS10aWRlLWVycm9yLW9uLXN1cmZhY2UpO1xuICB9XG5cbiAgLnRpZGUtaW5wdXQtdGV4dC5lcnJvciAudGlkZS1pbnB1dC1ib3JkZXIge1xuICAgIG91dGxpbmUtY29sb3I6IHZhcigtLXRpZGUtZXJyb3ItYm9yZGVyKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aWRlLWVycm9yLXN1cmZhY2UpO1xuICB9XG5cbiAgLnRpZGUtaW5wdXQtdGV4dC5lcnJvcjpmb2N1cy13aXRoaW4gLnRpZGUtaW5wdXQtYm9yZGVyIHtcbiAgICBvdXRsaW5lLWNvbG9yOiB2YXIoLS10aWRlLWVycm9yLWJvcmRlcik7XG4gIH1cblxuICAudGlkZS1pbnB1dC10ZXh0OmZvY3VzLXdpdGhpbiAudGlkZS1pbnB1dC1ib3JkZXIge1xuICAgIC0tdGlkZS1pbnB1dC1vdXRsaW5lLXdpZHRoOiB2YXIoLS10aWRlLWJvcmRlci13aWR0aC0yKTtcbiAgICBvdXRsaW5lLWNvbG9yOiB2YXIoLS10aWRlLXN1cmZhY2UtYm9yZGVyLWhpZ2gpO1xuICB9XG5cbiAgLnRpZGUtaW5wdXQtdGV4dCBpbnB1dCB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuXG4gIC50aWRlLWlucHV0LWJvcmRlciB7XG4gICAgLS10aWRlLWlucHV0LW91dGxpbmUtd2lkdGg6IHZhcigtLXRpZGUtYm9yZGVyLXdpZHRoLTEpO1xuICAgIG91dGxpbmU6IHZhcigtLXRpZGUtaW5wdXQtb3V0bGluZS13aWR0aCkgc29saWQgdmFyKC0tdGlkZS1ib3JkZXIpO1xuICAgIG91dGxpbmUtb2Zmc2V0OiBjYWxjKHZhcigtLXRpZGUtaW5wdXQtb3V0bGluZS13aWR0aCkgKiAtMSk7XG4gICAgY29sb3I6IHZhcigtLXRpZGUtc3VyZmFjZS1mb3JlZ3JvdW5kKTtcbiAgfVxuPC9zdHlsZT5cbiIsIjxzY3JpcHQgbGFuZz1cInRzXCIgc2V0dXA+XG4gIGltcG9ydCB7IGNvbXB1dGVkLCBnZXRDdXJyZW50SW5zdGFuY2UsIHJlZiwgd2F0Y2ggfSBmcm9tICd2dWUnO1xuXG4gIGltcG9ydCB0eXBlIHsgVmFsaWRhdGlvbkVycm9yIH0gZnJvbSAnQC90eXBlcy9WYWxpZGF0aW9uJztcblxuICBpbXBvcnQgVGlkZUljb24gZnJvbSAnQC9jb21wb25lbnRzL1RpZGVJY29uLnZ1ZSc7XG4gIGltcG9ydCB7IENTUyB9IGZyb20gJ0AvdHlwZXMvU3R5bGVzJztcbiAgaW1wb3J0IHsgSUNPTiB9IGZyb20gJ0AvdHlwZXMvSWNvbic7XG4gIGltcG9ydCB7IFNJWkUgfSBmcm9tICdAL3R5cGVzL1NpemUnO1xuICBpbXBvcnQgeyBnZXRFcnJvck1lc3NhZ2UsIGdldEZpZWxkSGFzRXJyb3IsIGhhbmRsZUZpZWxkVmFsaWRhdGlvbiB9IGZyb20gJ0AvdXRpbGl0aWVzL3ZhbGlkYXRpb24nO1xuXG4gIHR5cGUgUHJvcHMgPSB7XG4gICAgZGF0YVRyYWNrPzogc3RyaW5nO1xuICAgIGVycm9yPzogVmFsaWRhdGlvbkVycm9yO1xuICAgIGlucHV0SWQ/OiBzdHJpbmc7XG4gICAgbGFiZWw/OiBzdHJpbmc7XG4gICAgbWF4bGVuZ3RoPzogbnVtYmVyIHwgdW5kZWZpbmVkO1xuICAgIG1pbmxlbmd0aD86IG51bWJlciB8IHVuZGVmaW5lZDtcbiAgICBuYW1lPzogc3RyaW5nO1xuICAgIHJlcXVpcmVkPzogYm9vbGVhbjtcbiAgICByb3dzPzogbnVtYmVyO1xuICAgIHN1cHBvcnRpbmdUZXh0Pzogc3RyaW5nO1xuICAgIHZhbHVlPzogc3RyaW5nO1xuICB9O1xuXG4gIGNvbnN0IHByb3BzID0gd2l0aERlZmF1bHRzKGRlZmluZVByb3BzPFByb3BzPigpLCB7XG4gICAgZGF0YVRyYWNrOiAnJyxcbiAgICBlcnJvcjogZmFsc2UsXG4gICAgaW5wdXRJZDogdW5kZWZpbmVkLFxuICAgIGxhYmVsOiB1bmRlZmluZWQsXG4gICAgbWF4bGVuZ3RoOiB1bmRlZmluZWQsXG4gICAgbWlubGVuZ3RoOiB1bmRlZmluZWQsXG4gICAgbmFtZTogdW5kZWZpbmVkLFxuICAgIHJlcXVpcmVkOiBmYWxzZSxcbiAgICByb3dzOiA4LFxuICAgIHN1cHBvcnRpbmdUZXh0OiB1bmRlZmluZWQsXG4gICAgdmFsdWU6ICcnLFxuICB9KTtcblxuICBjb25zdCBlcnJvciA9IHJlZihwcm9wcy5lcnJvcik7XG4gIGNvbnN0IGhhc0ZvY3VzID0gcmVmKGZhbHNlKTtcbiAgY29uc3QgaW5wdXQgPSByZWY8SFRNTElucHV0RWxlbWVudCB8IG51bGw+KG51bGwpO1xuICBjb25zdCB2YWx1ZSA9IHJlZihwcm9wcy52YWx1ZSk7XG5cbiAgY29uc3QgZXJyb3JNZXNzYWdlID0gY29tcHV0ZWQoKCkgPT4gZ2V0RXJyb3JNZXNzYWdlKHByb3BzLmVycm9yLCBlcnJvci52YWx1ZSkpO1xuICBjb25zdCBmb3JtYXR0ZWRMYWJlbCA9IGNvbXB1dGVkKCgpID0+IChwcm9wcy5yZXF1aXJlZCA/IGAke3Byb3BzLmxhYmVsfSAqYCA6IHByb3BzLmxhYmVsKSk7XG4gIGNvbnN0IGhhc0Vycm9yID0gY29tcHV0ZWQoKCkgPT4gKHByb3BzLnJlcXVpcmVkICYmICF2YWx1ZS52YWx1ZSkgfHwgZ2V0RmllbGRIYXNFcnJvcihlcnJvci52YWx1ZSwgcHJvcHMuZXJyb3IpKTtcbiAgY29uc3QgaGFzTWluaWxhYmVsID0gY29tcHV0ZWQoKCkgPT4gaGFzRm9jdXMudmFsdWUgfHwgIWlzRW1wdHkudmFsdWUpO1xuICBjb25zdCBpc0VtcHR5ID0gY29tcHV0ZWQoKCkgPT4gdmFsdWUudmFsdWUgPT09ICcnKTtcbiAgY29uc3QgdW5pcXVlSWQgPSBjb21wdXRlZCgoKSA9PiAocHJvcHMuaW5wdXRJZCA/IHByb3BzLmlucHV0SWQgOiBgdGV4dC1pbnB1dC0ke2dldEN1cnJlbnRJbnN0YW5jZSgpPy51aWQgfHwgJyd9YCkpO1xuXG4gIGNvbnN0IGhhbmRsZUZvY3VzID0gKCkgPT4ge1xuICAgIGhhc0ZvY3VzLnZhbHVlID0gdHJ1ZTtcbiAgfTtcblxuICBjb25zdCBoYW5kbGVGb2N1c091dCA9ICgpID0+IHtcbiAgICBoYXNGb2N1cy52YWx1ZSA9IGZhbHNlO1xuICB9O1xuXG4gIGNvbnN0IGhhbmRsZVZhbGlkYXRpb24gPSAoKSA9PiB7XG4gICAgcmV0dXJuIGhhbmRsZUZpZWxkVmFsaWRhdGlvbih7XG4gICAgICBlcnJvcixcbiAgICAgIGVycm9yRnJvbVByb3BzOiBwcm9wcy5lcnJvcixcbiAgICAgIG1heGxlbmd0aDogcHJvcHMubWF4bGVuZ3RoLFxuICAgICAgbWlubGVuZ3RoOiBwcm9wcy5taW5sZW5ndGgsXG4gICAgICB2YWx1ZSxcbiAgICB9KTtcbiAgfTtcblxuICB3YXRjaChwcm9wcywgKG5ld1ZhbHVlLCBvbGRWYWx1ZSkgPT4ge1xuICAgIGlmIChuZXdWYWx1ZS52YWx1ZSAhPT0gb2xkVmFsdWUudmFsdWUgfHwgbmV3VmFsdWUudmFsdWUgIT09IHZhbHVlLnZhbHVlKSB7XG4gICAgICB2YWx1ZS52YWx1ZSA9IHByb3BzLnZhbHVlO1xuICAgIH1cbiAgfSk7XG5cbiAgZGVmaW5lRXhwb3NlKHsgZXJyb3IsIHZhbHVlIH0pO1xuPC9zY3JpcHQ+XG5cbjx0ZW1wbGF0ZT5cbiAgPGRpdlxuICAgIDpjbGFzcz1cIlsndGlkZS1pbnB1dC10ZXh0YXJlYScsIENTUy5ESVNQTEFZLkZMRVgsIENTUy5GTEVYLkRJUkVDVElPTi5DT0xVTU4sIENTUy5HQVAuUVVBUlRFUiwgaGFzRXJyb3IgJiYgJ2Vycm9yJ11cIlxuICA+XG4gICAgPGRpdlxuICAgICAgOmNsYXNzPVwiW1xuICAgICAgICAndGlkZS1pbnB1dC10ZXh0YXJlYS1maWVsZCcsXG4gICAgICAgIENTUy5HQVAuSEFMRixcbiAgICAgICAgQ1NTLlBPU0lUSU9OLlJFTEFUSVZFLFxuICAgICAgICBDU1MuQk9SREVSLlJBRElVUy5IQUxGLFxuICAgICAgICBDU1MuUEFERElORy5MRUZULk9ORSxcbiAgICAgICAgQ1NTLlBBRERJTkcuVE9QLkhBTEYsXG4gICAgICAgIENTUy5PVkVSRkxPVy5YWS5ISURERU4sXG4gICAgICBdXCJcbiAgICA+XG4gICAgICA8bGFiZWxcbiAgICAgICAgOmNsYXNzPVwiW1xuICAgICAgICAgIGhhc01pbmlsYWJlbCA/IFsnbWluaWxhYmVsJywgQ1NTLkZPTlQuU0laRS5UV0VMVkVdIDogQ1NTLkZPTlQuU0laRS5TSVhURUVOLFxuICAgICAgICAgICFoYXNFcnJvciAmJiBDU1MuRk9OVC5DT0xPUi5TVVJGQUNFLlZBUklBTlQsXG4gICAgICAgICAgQ1NTLkZPTlQuV0VJR0hULkZJVkVfSFVORFJFRCxcbiAgICAgICAgICBDU1MuQ1VSU09SLlRFWFQsXG4gICAgICAgIF1cIlxuICAgICAgICA6Zm9yPVwidW5pcXVlSWRcIlxuICAgICAgICByZWY9XCJsYWJlbFwiXG4gICAgICAgIHYtaWY9XCJsYWJlbFwiXG4gICAgICA+XG4gICAgICAgIHt7IGZvcm1hdHRlZExhYmVsIH19XG4gICAgICA8L2xhYmVsPlxuXG4gICAgICA8dGV4dGFyZWFcbiAgICAgICAgOmNsYXNzPVwiW0NTUy5XSURUSC5GVUxMXVwiXG4gICAgICAgIDpkYXRhLXRyYWNrPVwicHJvcHMuZGF0YVRyYWNrXCJcbiAgICAgICAgOm1heGxlbmd0aD1cInByb3BzLm1heGxlbmd0aFwiXG4gICAgICAgIDptaW5sZW5ndGg9XCJwcm9wcy5taW5sZW5ndGhcIlxuICAgICAgICA6bmFtZT1cInByb3BzLm5hbWVcIlxuICAgICAgICByZWY9XCJpbnB1dFwiXG4gICAgICAgIDpyZXF1aXJlZD1cInByb3BzLnJlcXVpcmVkXCJcbiAgICAgICAgOnJvd3M9XCJwcm9wcy5yb3dzXCJcbiAgICAgICAgQGNoYW5nZT1cImhhbmRsZVZhbGlkYXRpb25cIlxuICAgICAgICBAZm9jdXM9XCJoYW5kbGVGb2N1c1wiXG4gICAgICAgIEBmb2N1c291dD1cImhhbmRsZUZvY3VzT3V0XCJcbiAgICAgICAgOmlkPVwidW5pcXVlSWRcIlxuICAgICAgICB2LW1vZGVsPVwidmFsdWVcIlxuICAgICAgLz5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXZcbiAgICAgIDpjbGFzcz1cIltDU1MuRElTUExBWS5GTEVYLCBDU1MuQVhJUzIuQ0VOVEVSLCBDU1MuR0FQLlFVQVJURVIsIENTUy5NQVJHSU4uTEVGVC5PTkVdXCJcbiAgICAgIHYtaWY9XCJwcm9wcy5zdXBwb3J0aW5nVGV4dCB8fCBoYXNFcnJvclwiXG4gICAgPlxuICAgICAgPFRpZGVJY29uXG4gICAgICAgIDppY29uPVwiSUNPTi5FUlJPUlwiXG4gICAgICAgIDpzaXplPVwiU0laRS5TTUFMTFwiXG4gICAgICAgIHYtaWY9XCJoYXNFcnJvclwiXG4gICAgICAvPlxuXG4gICAgICA8ZGl2IDpjbGFzcz1cIltDU1MuRk9OVC5TSVpFLlRXRUxWRSwgQ1NTLkZPTlQuV0VJR0hULkZJVkVfSFVORFJFRF1cIj5cbiAgICAgICAge3sgaGFzRXJyb3IgPyBlcnJvck1lc3NhZ2UgOiBwcm9wcy5zdXBwb3J0aW5nVGV4dCB9fVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC90ZW1wbGF0ZT5cblxuPHN0eWxlIHNjb3BlZD5cbiAgdGV4dGFyZWEge1xuICAgIHJlc2l6ZTogdmVydGljYWw7XG4gIH1cbjwvc3R5bGU+XG5cbjxzdHlsZSBzY29wZWQ+XG4gIGxhYmVsIHtcbiAgICBoZWlnaHQ6IDEuMTg3NXJlbTtcbiAgICB0cmFuc2l0aW9uOiBmb250LXNpemUgdmFyKC0tdGlkZS1hbmltYXRlKSwgdHJhbnNmb3JtIHZhcigtLXRpZGUtYW5pbWF0ZSk7XG4gIH1cblxuICBsYWJlbDpub3QoLm1pbmlsYWJlbCksXG4gIC50aWRlLWlucHV0LXRleHRhcmVhLXByZWZpeDpub3QoLm9mZnNldCksXG4gIC50aWRlLWlucHV0LXRleHRhcmVhLXN1ZmZpeDpub3QoLm9mZnNldCkge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIGNhbGMoOSAvIDE2ICogMXJlbSkpO1xuICB9XG5cbiAgLnRpZGUtaW5wdXQtdGV4dGFyZWEtcHJlZml4LFxuICAudGlkZS1pbnB1dC10ZXh0YXJlYS1zdWZmaXgge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSB2YXIoLS10aWRlLWFuaW1hdGUpO1xuICB9XG5cbiAgLnRpZGUtaW5wdXQtdGV4dGFyZWEuZXJyb3Ige1xuICAgIGNvbG9yOiB2YXIoLS10aWRlLWVycm9yLW9uLXN1cmZhY2UpO1xuICB9XG5cbiAgLnRpZGUtaW5wdXQtdGV4dGFyZWEuZXJyb3IgLnRpZGUtaW5wdXQtdGV4dGFyZWEtZmllbGQge1xuICAgIG91dGxpbmUtY29sb3I6IHZhcigtLXRpZGUtZXJyb3ItYm9yZGVyKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aWRlLWVycm9yLXN1cmZhY2UpO1xuICB9XG5cbiAgLnRpZGUtaW5wdXQtdGV4dGFyZWEuZXJyb3I6Zm9jdXMtd2l0aGluIC50aWRlLWlucHV0LXRleHRhcmVhLWZpZWxkIHtcbiAgICBvdXRsaW5lLWNvbG9yOiB2YXIoLS10aWRlLWVycm9yLWJvcmRlcik7XG4gIH1cblxuICAudGlkZS1pbnB1dC10ZXh0YXJlYTpmb2N1cy13aXRoaW4gLnRpZGUtaW5wdXQtdGV4dGFyZWEtZmllbGQge1xuICAgIC0tdGlkZS1pbnB1dC1vdXRsaW5lLXdpZHRoOiB2YXIoLS10aWRlLWJvcmRlci13aWR0aC0yKTtcbiAgICBvdXRsaW5lLWNvbG9yOiB2YXIoLS10aWRlLXN1cmZhY2UtYm9yZGVyLWhpZ2gpO1xuICB9XG5cbiAgLnRpZGUtaW5wdXQtdGV4dGFyZWEgdGV4dGFyZWEge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAudGlkZS1pbnB1dC10ZXh0YXJlYS1maWVsZCB7XG4gICAgLS10aWRlLWlucHV0LW91dGxpbmUtd2lkdGg6IHZhcigtLXRpZGUtYm9yZGVyLXdpZHRoLTEpO1xuICAgIG91dGxpbmU6IHZhcigtLXRpZGUtaW5wdXQtb3V0bGluZS13aWR0aCkgc29saWQgdmFyKC0tdGlkZS1ib3JkZXIpO1xuICAgIG91dGxpbmUtb2Zmc2V0OiBjYWxjKHZhcigtLXRpZGUtaW5wdXQtb3V0bGluZS13aWR0aCkgKiAtMSk7XG4gICAgY29sb3I6IHZhcigtLXRpZGUtc3VyZmFjZS1mb3JlZ3JvdW5kKTtcbiAgfVxuPC9zdHlsZT5cbiIsIjxzY3JpcHQgbGFuZz1cInRzXCIgc2V0dXA+XG4gIGltcG9ydCB7IGNvbXB1dGVkIH0gZnJvbSAndnVlJztcblxuICBpbXBvcnQgdHlwZSB7IEVsZW1lbnQgfSBmcm9tICdAL3R5cGVzL0VsZW1lbnQnO1xuICBpbXBvcnQgdHlwZSB7IEljb24gfSBmcm9tICdAL3R5cGVzL0ljb24nO1xuXG4gIGltcG9ydCBUaWRlSWNvbiBmcm9tICdAL2NvbXBvbmVudHMvVGlkZUljb24udnVlJztcbiAgaW1wb3J0IHsgQ1NTIH0gZnJvbSAnQC90eXBlcy9TdHlsZXMnO1xuICBpbXBvcnQgeyBFTEVNRU5UIH0gZnJvbSAnQC90eXBlcy9FbGVtZW50JztcbiAgaW1wb3J0IHsgVEFSR0VUIH0gZnJvbSAnQC90eXBlcy9UYXJnZXQnO1xuXG4gIHR5cGUgUHJvcHMgPSB7XG4gICAgZWxlbWVudD86IEVsZW1lbnQ7XG4gICAgaHJlZj86IHN0cmluZztcbiAgICBpY29uTGVhZGluZz86IEljb247XG4gICAgaWNvblRyYWlsaW5nPzogSWNvbjtcbiAgICBpc05ld1RhYj86IGJvb2xlYW47XG4gICAgbGFiZWw6IHN0cmluZztcbiAgfTtcblxuICBjb25zdCBwcm9wcyA9IHdpdGhEZWZhdWx0cyhkZWZpbmVQcm9wczxQcm9wcz4oKSwge1xuICAgIGVsZW1lbnQ6IEVMRU1FTlQuTElOSyxcbiAgICBocmVmOiB1bmRlZmluZWQsXG4gICAgaWNvbkxlYWRpbmc6IHVuZGVmaW5lZCxcbiAgICBpY29uVHJhaWxpbmc6IHVuZGVmaW5lZCxcbiAgICBpc05ld1RhYjogZmFsc2UsXG4gICAgbGFiZWw6IHVuZGVmaW5lZCxcbiAgfSk7XG5cbiAgY29uc3QgaGFzSWNvbiA9IGNvbXB1dGVkKCgpID0+IHByb3BzLmljb25MZWFkaW5nIHx8IHByb3BzLmljb25UcmFpbGluZyk7XG48L3NjcmlwdD5cblxuPHRlbXBsYXRlPlxuICA8Y29tcG9uZW50XG4gICAgOmNsYXNzPVwiW1xuICAgICAgcHJvcHMuZWxlbWVudCA9PT0gRUxFTUVOVC5MSU5LID8gJ3RpZGUtYnV0dG9uLWFzLWxpbmsnIDogJ3RpZGUtbGluaycsXG4gICAgICBoYXNJY29uXG4gICAgICAgID8gW0NTUy5ESVNQTEFZLklOTElORV9GTEVYLCBDU1MuQVhJUzIuQ0VOVEVSLCBDU1MuR0FQLkhBTEZdXG4gICAgICAgIDogW0NTUy5GT05ULldFSUdIVC5TRVZFTl9IVU5EUkVELCBDU1MuVU5ERVJMSU5FLk9OXSxcbiAgICBdXCJcbiAgICA6aHJlZj1cInByb3BzLmhyZWZcIlxuICAgIDp0YXJnZXQ9XCJwcm9wcy5pc05ld1RhYiA/IFRBUkdFVC5CTEFOSyA6IFRBUkdFVC5TRUxGXCJcbiAgICA6aXM9XCJwcm9wcy5lbGVtZW50ID09PSBFTEVNRU5ULkxJTksgPyBFTEVNRU5ULkxJTksgOiBFTEVNRU5ULkJVVFRPTlwiXG4gID5cbiAgICA8VGlkZUljb25cbiAgICAgIDppY29uPVwicHJvcHMuaWNvbkxlYWRpbmdcIlxuICAgICAgdi1pZj1cInByb3BzLmljb25MZWFkaW5nXCJcbiAgICAvPlxuXG4gICAgPGRpdlxuICAgICAgOmNsYXNzPVwiW0NTUy5GT05ULldFSUdIVC5TRVZFTl9IVU5EUkVELCBDU1MuVU5ERVJMSU5FLk9OXVwiXG4gICAgICB2LWlmPVwiaGFzSWNvblwiXG4gICAgPlxuICAgICAge3sgcHJvcHMubGFiZWwgfX1cbiAgICA8L2Rpdj5cblxuICAgIDx0ZW1wbGF0ZSB2LWVsc2U+XG4gICAgICB7eyBwcm9wcy5sYWJlbCB9fVxuICAgIDwvdGVtcGxhdGU+XG5cbiAgICA8VGlkZUljb25cbiAgICAgIDppY29uPVwicHJvcHMuaWNvblRyYWlsaW5nXCJcbiAgICAgIHYtaWY9XCJwcm9wcy5pY29uVHJhaWxpbmdcIlxuICAgIC8+XG4gIDwvY29tcG9uZW50PlxuPC90ZW1wbGF0ZT5cbiIsIjxzY3JpcHQgbGFuZz1cInRzXCIgc2V0dXA+XG4gIGltcG9ydCB7IG9uTW91bnRlZCwgcmVmLCB3YXRjaCB9IGZyb20gJ3Z1ZSc7XG5cbiAgaW1wb3J0IFRpZGVJY29uIGZyb20gJ0AvY29tcG9uZW50cy9UaWRlSWNvbi52dWUnO1xuICBpbXBvcnQgeyBDU1MgfSBmcm9tICdAL3R5cGVzL1N0eWxlcyc7XG4gIGltcG9ydCB7IElDT04gfSBmcm9tICdAL3R5cGVzL0ljb24nO1xuXG4gIHR5cGUgUHJvcHMgPSB7XG4gICAgaXNPcGVuOiBib29sZWFuO1xuICAgIHRpdGxlPzogc3RyaW5nO1xuICAgIHdpZHRoPzogc3RyaW5nO1xuICB9O1xuXG4gIGNvbnN0IHByb3BzID0gZGVmaW5lUHJvcHM8UHJvcHM+KCk7XG5cbiAgY29uc3QgZW1pdCA9IGRlZmluZUVtaXRzKFsnY2xvc2UnXSk7XG5cbiAgY29uc3QgaXNPcGVuID0gcmVmKHByb3BzLmlzT3Blbik7XG4gIGNvbnN0IHNhdmVkU2Nyb2xsUG9zaXRpb24gPSByZWY8bnVtYmVyIHwgbnVsbD4obnVsbCk7IC8vIFRPRE86IHJlcGxhY2UgYm9keSBzY3JvbGwgbG9jayB3aXRoIGdsb2JhbCBzdHJ1Y3R1cmU/XG5cbiAgY29uc3QgaGFuZGxlQ2xvc2UgPSAoZXZlbnQ6IEV2ZW50KSA9PiB7XG4gICAgaXNPcGVuLnZhbHVlID0gZmFsc2U7XG5cbiAgICB1cGRhdGVNb2RhbERpc3BsYXkoKTtcbiAgICBlbWl0KCdjbG9zZScsIGV2ZW50KTtcbiAgfTtcblxuICBjb25zdCB1cGRhdGVNb2RhbERpc3BsYXkgPSAoKSA9PiB7XG4gICAgaWYgKGlzT3Blbi52YWx1ZSkge1xuICAgICAgc2F2ZWRTY3JvbGxQb3NpdGlvbi52YWx1ZSA9IHdpbmRvdy5zY3JvbGxZO1xuICAgICAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvdyA9ICdoaWRkZW4nO1xuICAgICAgc2F2ZWRTY3JvbGxQb3NpdGlvbi52YWx1ZSAmJiB3aW5kb3cuc2Nyb2xsVG8oMCwgc2F2ZWRTY3JvbGxQb3NpdGlvbi52YWx1ZSk7XG5cbiAgICAgIGFkZE9wZW5MaXN0ZW5lcnMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvdyA9ICcnO1xuXG4gICAgICByZW1vdmVPcGVuTGlzdGVuZXJzKCk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGhhbmRsZUtleURvd24gPSAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpID0+IHtcbiAgICBpZiAoZXZlbnQua2V5ID09PSAnRXNjYXBlJykge1xuICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICBoYW5kbGVDbG9zZShldmVudCk7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGFkZE9wZW5MaXN0ZW5lcnMgPSAoKSA9PiB7XG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCBoYW5kbGVLZXlEb3duKTtcbiAgfTtcblxuICBjb25zdCByZW1vdmVPcGVuTGlzdGVuZXJzID0gKCkgPT4ge1xuICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdrZXlkb3duJywgaGFuZGxlS2V5RG93bik7XG4gIH07XG5cbiAgb25Nb3VudGVkKCgpID0+IHtcbiAgICB1cGRhdGVNb2RhbERpc3BsYXkoKTtcbiAgfSk7XG5cbiAgd2F0Y2gocHJvcHMsIChuZXdWYWx1ZSkgPT4ge1xuICAgIGlzT3Blbi52YWx1ZSA9IG5ld1ZhbHVlLmlzT3BlbjtcblxuICAgIHVwZGF0ZU1vZGFsRGlzcGxheSgpO1xuICB9KTtcbjwvc2NyaXB0PlxuXG48dGVtcGxhdGU+XG4gIDxUZWxlcG9ydCB0bz1cImJvZHlcIj5cbiAgICA8ZGl2XG4gICAgICA6Y2xhc3M9XCJbXG4gICAgICAgICd0aWRlLW1vZGFsLXdyYXBwZXInLFxuICAgICAgICBDU1MuUE9TSVRJT04uQUJTT0xVVEUsXG4gICAgICAgIENTUy5ESVNQTEFZLkZMRVgsXG4gICAgICAgIENTUy5BWElTMS5DRU5URVIsXG4gICAgICAgIENTUy5BWElTMi5DRU5URVIsXG4gICAgICAgIENTUy5QT1NJVElPTklORy5UT1AsXG4gICAgICAgIENTUy5QT1NJVElPTklORy5MRUZULFxuICAgICAgICBDU1MuV0lEVEguRlVMTCxcbiAgICAgICAgQ1NTLkhFSUdIVC5GVUxMLFxuICAgICAgICBwcm9wcy5pc09wZW4gPyAnYWN0aXZlJyA6IENTUy5QT0lOVEVSX0VWRU5UUy5PRkYsXG4gICAgICAgIENTUy5PVkVSRkxPVy5ZLkhJRERFTixcbiAgICAgIF1cIlxuICAgID5cbiAgICAgIDxkaXZcbiAgICAgICAgOmNsYXNzPVwiWyd0aWRlLW1vZGFsLWJnJywgQ1NTLlBPU0lUSU9OLkFCU09MVVRFLCBDU1MuV0lEVEguRlVMTCwgQ1NTLkhFSUdIVC5GVUxMXVwiXG4gICAgICAgIDpzdHlsZT1cInsgJy0tdGlkZS1tb2RhbC13aWR0aCc6IHByb3BzLndpZHRoIH1cIlxuICAgICAgICBAY2xpY2suc2VsZj1cImhhbmRsZUNsb3NlXCJcbiAgICAgIC8+XG5cbiAgICAgIDxkaXZcbiAgICAgICAgOmNsYXNzPVwiW1xuICAgICAgICAgICd0aWRlLW1vZGFsJyxcbiAgICAgICAgICBDU1MuQkcuU1VSRkFDRS5ERUZBVUxULFxuICAgICAgICAgIENTUy5GT05ULkNPTE9SLlNVUkZBQ0UuREVGQVVMVCxcbiAgICAgICAgICBDU1MuUE9TSVRJT04uQUJTT0xVVEUsXG4gICAgICAgICAgQ1NTLkRJU1BMQVkuRkxFWCxcbiAgICAgICAgICBDU1MuRkxFWC5ESVJFQ1RJT04uQ09MVU1OLFxuICAgICAgICAgIENTUy5CT1JERVIuUkFESVVTLk9ORSxcbiAgICAgICAgICBDU1MuT1ZFUkZMT1cuWFkuSElEREVOLFxuICAgICAgICAgIENTUy5TSEFET1cuQk9UVE9NLFxuICAgICAgICBdXCJcbiAgICAgID5cbiAgICAgICAgPGhlYWRlclxuICAgICAgICAgIDpjbGFzcz1cIltcbiAgICAgICAgICAgICd0aWRlLW1vZGFsLWhlYWRlcicsXG4gICAgICAgICAgICBDU1MuUE9TSVRJT04uUkVMQVRJVkUsXG4gICAgICAgICAgICBDU1MuRElTUExBWS5GTEVYLFxuICAgICAgICAgICAgQ1NTLkFYSVMyLkNFTlRFUixcbiAgICAgICAgICAgIENTUy5QQURESU5HLlkuT05FLFxuICAgICAgICAgICAgQ1NTLlBBRERJTkcuWC5UV08sXG4gICAgICAgICAgICBDU1MuQk9SREVSLkJPVFRPTS5PTkUsXG4gICAgICAgICAgICBDU1MuQk9SREVSLkNPTE9SLkxPVyxcbiAgICAgICAgICBdXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIDpjbGFzcz1cIltDU1MuRkxFWC5HUk9XLk9OLCBDU1MuRk9OVC5TSVpFLlRXRU5UWSwgQ1NTLkZPTlQuV0VJR0hULlNFVkVOX0hVTkRSRURdXCJcbiAgICAgICAgICAgIHYtaWY9XCJ0aXRsZVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAge3sgdGl0bGUgfX1cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIDpjbGFzcz1cIltDU1MuUE9TSVRJT04uQUJTT0xVVEUsIENTUy5QT1NJVElPTklORy5SSUdIVCwgQ1NTLk1BUkdJTi5SSUdIVC5UV09dXCJcbiAgICAgICAgICAgIEBjbGljaz1cImhhbmRsZUNsb3NlXCJcbiAgICAgICAgICAgIHRpdGxlPVwiQ2xvc2VcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxUaWRlSWNvbiA6aWNvbj1cIklDT04uQ0xPU0VcIiAvPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2hlYWRlcj5cblxuICAgICAgICA8ZGl2IDpjbGFzcz1cIlsndGlkZS1tb2RhbC1jb250ZW50JywgQ1NTLlBBRERJTkcuRlVMTC5UV08sIENTUy5PVkVSRkxPVy5ZLkFVVE9dXCI+XG4gICAgICAgICAgPHNsb3QgLz5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPHRlbXBsYXRlIHYtaWY9XCIkc2xvdHMuZm9vdGVyXCI+XG4gICAgICAgICAgPGZvb3RlclxuICAgICAgICAgICAgOmNsYXNzPVwiW1xuICAgICAgICAgICAgICAndGlkZS1iZy1zdXJmYWNlJyxcbiAgICAgICAgICAgICAgQ1NTLlBPU0lUSU9OLlNUSUNLWSxcbiAgICAgICAgICAgICAgQ1NTLlBPU0lUSU9OSU5HLkxFRlQsXG4gICAgICAgICAgICAgIENTUy5QT1NJVElPTklORy5CT1RUT00sXG4gICAgICAgICAgICAgIENTUy5ESVNQTEFZLkZMRVgsXG4gICAgICAgICAgICAgIENTUy5BWElTMS5FTkQsXG4gICAgICAgICAgICAgIENTUy5HQVAuT05FLFxuICAgICAgICAgICAgICBDU1MuUEFERElORy5YLlRXTyxcbiAgICAgICAgICAgICAgQ1NTLlBBRERJTkcuWS5PTkUsXG4gICAgICAgICAgICAgIENTUy5TSEFET1cuVE9QLFxuICAgICAgICAgICAgXVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHNsb3QgbmFtZT1cImZvb3RlclwiIC8+XG4gICAgICAgICAgPC9mb290ZXI+XG4gICAgICAgIDwvdGVtcGxhdGU+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9UZWxlcG9ydD5cbjwvdGVtcGxhdGU+XG5cbjxzdHlsZSBzY29wZWQ+XG4gIC50aWRlLW1vZGFsIHtcbiAgICB3aWR0aDogdmFyKC0tdGlkZS1tb2RhbC13aWR0aCk7XG4gICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAycmVtKTtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSAycmVtKTtcbiAgICBib3gtc2hhZG93OiAwcHggMTBweCAyNXB4IDBweCByZ2JhKDE4LCA0MywgNTgsIDAuMik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMHZoKTtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS10aWRlLWFuaW1hdGUpO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgfVxuXG4gIC50aWRlLW1vZGFsLWJnIHtcbiAgICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMHB4KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICAgIHRyYW5zaXRpb246IHZhcigtLXRpZGUtYW5pbWF0ZSk7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogYmFja2Ryb3AtZmlsdGVyLCBiYWNrZ3JvdW5kLWNvbG9yO1xuICB9XG5cbiAgLmFjdGl2ZSAudGlkZS1tb2RhbCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgLmFjdGl2ZSAudGlkZS1tb2RhbC1iZyB7XG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDhweCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGlkZS10cmFuc3BhcmVudC00MDApO1xuICB9XG48L3N0eWxlPlxuIiwiPHNjcmlwdCBsYW5nPVwidHNcIiBzZXR1cD5cbiAgaW1wb3J0IHsgY29tcHV0ZWQsIHJlZiB9IGZyb20gJ3Z1ZSc7XG5cbiAgaW1wb3J0IFRpZGVCdXR0b25JY29uIGZyb20gJ0AvY29tcG9uZW50cy9UaWRlQnV0dG9uSWNvbi52dWUnO1xuICBpbXBvcnQgVGlkZUJ1dHRvblBhZ2luYXRpb24gZnJvbSAnQC9jb21wb25lbnRzL1RpZGVCdXR0b25QYWdpbmF0aW9uLnZ1ZSc7XG4gIGltcG9ydCB7IENTUyB9IGZyb20gJ0AvdHlwZXMvU3R5bGVzJztcbiAgaW1wb3J0IHsgSUNPTiB9IGZyb20gJ0AvdHlwZXMvSWNvbic7XG4gIGltcG9ydCB7IFBSSU9SSVRZIH0gZnJvbSAnQC90eXBlcy9Qcmlvcml0eSc7XG5cbiAgdHlwZSBQcm9wcyA9IHtcbiAgICBwYWdlQ3VycmVudD86IG51bWJlcjtcbiAgICBwYWdlVG90YWw/OiBudW1iZXI7XG4gIH07XG5cbiAgY29uc3QgcHJvcHMgPSB3aXRoRGVmYXVsdHMoZGVmaW5lUHJvcHM8UHJvcHM+KCksIHtcbiAgICBwYWdlQ3VycmVudDogMSxcbiAgICBwYWdlVG90YWw6IDEsXG4gIH0pO1xuXG4gIGNvbnN0IGVtaXQgPSBkZWZpbmVFbWl0cyhbJ2NoYW5nZSddKTtcblxuICBjb25zdCBwYWdlQ3VycmVudCA9IHJlZihwcm9wcy5wYWdlQ3VycmVudCk7XG5cbiAgY29uc3QgcGFnaW5hdGlvbkJ1dHRvbnMgPSBjb21wdXRlZCgoKSA9PiBuZXcgQXJyYXkocHJvcHMucGFnZVRvdGFsKS5maWxsKCcnKS5tYXAoKGVtcHR5LCBpbmRleCkgPT4gaW5kZXggKyAxKSk7XG5cbiAgY29uc3QgaGFuZGxlQ2xpY2sgPSAoZXZlbnQ6IEV2ZW50LCBpbmRleDogbnVtYmVyKSA9PiB7XG4gICAgcGFnZUN1cnJlbnQudmFsdWUgPSBpbmRleDtcblxuICAgIGVtaXQoJ2NoYW5nZScsIGV2ZW50LCBpbmRleCk7XG4gIH07XG48L3NjcmlwdD5cblxuPHRlbXBsYXRlPlxuICA8c2VjdGlvblxuICAgIDpjbGFzcz1cIlsndGlkZS1wYWdpbmF0aW9uJywgQ1NTLkRJU1BMQVkuRkxFWCwgQ1NTLkFYSVMxLkNFTlRFUiwgQ1NTLkFYSVMyLkNFTlRFUiwgQ1NTLkdBUC5RVUFSVEVSLCBDU1MuV0lEVEguRlVMTF1cIlxuICA+XG4gICAgPFRpZGVCdXR0b25JY29uXG4gICAgICA6ZGlzYWJsZWQ9XCJwYWdlQ3VycmVudCA9PT0gMVwiXG4gICAgICA6aWNvbj1cIklDT04uQ0hFVlJPTl9MRUZUXCJcbiAgICAgIDpwcmlvcml0eT1cIlBSSU9SSVRZLlFVQVRFUk5BUllcIlxuICAgICAgQGNsaWNrPVwiKGV2ZW50OiBFdmVudCkgPT4gaGFuZGxlQ2xpY2soZXZlbnQsIHBhZ2VDdXJyZW50IC0gMSlcIlxuICAgIC8+XG5cbiAgICA8dWwgOmNsYXNzPVwiW0NTUy5ESVNQTEFZLkZMRVgsIENTUy5BWElTMi5DRU5URVIsIENTUy5HQVAuUVVBUlRFUiwgQ1NTLkxJU1RfQlVMTEVUUy5PRkZdXCI+XG4gICAgICA8bGlcbiAgICAgICAgOmtleT1cInBhZ2luYXRpb25CdXR0b25cIlxuICAgICAgICB2LWZvcj1cInBhZ2luYXRpb25CdXR0b24gaW4gcGFnaW5hdGlvbkJ1dHRvbnNcIlxuICAgICAgPlxuICAgICAgICA8VGlkZUJ1dHRvblBhZ2luYXRpb25cbiAgICAgICAgICA6ZGlzYWJsZWQ9XCJwYWdlQ3VycmVudCA9PT0gcGFnaW5hdGlvbkJ1dHRvblwiXG4gICAgICAgICAgOmxhYmVsPVwicGFnaW5hdGlvbkJ1dHRvblwiXG4gICAgICAgICAgOnByaW9yaXR5PVwiUFJJT1JJVFkuUVVBVEVSTkFSWVwiXG4gICAgICAgICAgQGNsaWNrPVwiKGV2ZW50OiBFdmVudCkgPT4gaGFuZGxlQ2xpY2soZXZlbnQsIHBhZ2luYXRpb25CdXR0b24pXCJcbiAgICAgICAgLz5cbiAgICAgIDwvbGk+XG4gICAgPC91bD5cblxuICAgIDxUaWRlQnV0dG9uSWNvblxuICAgICAgOmRpc2FibGVkPVwicGFnZUN1cnJlbnQgPT09IHBhZ2luYXRpb25CdXR0b25zW3BhZ2luYXRpb25CdXR0b25zLmxlbmd0aCAtIDFdXCJcbiAgICAgIDppY29uPVwiSUNPTi5DSEVWUk9OX1JJR0hUXCJcbiAgICAgIDpwcmlvcml0eT1cIlBSSU9SSVRZLlFVQVRFUk5BUllcIlxuICAgICAgQGNsaWNrPVwiKGV2ZW50OiBFdmVudCkgPT4gaGFuZGxlQ2xpY2soZXZlbnQsIHBhZ2VDdXJyZW50ICsgMSlcIlxuICAgIC8+XG4gIDwvc2VjdGlvbj5cbjwvdGVtcGxhdGU+XG5cbjxzdHlsZSBzY29wZWQ+PC9zdHlsZT5cbiIsIjxzY3JpcHQgbGFuZz1cInRzXCIgc2V0dXA+XG4gIGltcG9ydCB7IHJlZiB9IGZyb20gJ3Z1ZSc7XG5cbiAgaW1wb3J0IHR5cGUgeyBUYWIgfSBmcm9tICdAL3R5cGVzL1RhYic7XG5cbiAgaW1wb3J0IHsgQ1NTIH0gZnJvbSAnQC90eXBlcy9TdHlsZXMnO1xuXG4gIHR5cGUgUHJvcHMgPSB7XG4gICAgYWN0aXZlVGFiSW5pdGlhbD86IG51bWJlcjtcbiAgICB0YWJzOiBUYWJbXTtcbiAgfTtcblxuICBjb25zdCBwcm9wcyA9IHdpdGhEZWZhdWx0cyhkZWZpbmVQcm9wczxQcm9wcz4oKSwge1xuICAgIGFjdGl2ZVRhYkluaXRpYWw6IDAsXG4gIH0pO1xuXG4gIGNvbnN0IGVtaXQgPSBkZWZpbmVFbWl0cyhbJ2NoYW5nZSddKTtcblxuICBjb25zdCBhY3RpdmVUYWIgPSByZWYocHJvcHMuYWN0aXZlVGFiSW5pdGlhbCk7XG5cbiAgY29uc3QgaGFuZGxlQ2xpY2sgPSAoZXZlbnQ6IEV2ZW50LCBpbmRleDogbnVtYmVyKSA9PiB7XG4gICAgYWN0aXZlVGFiLnZhbHVlID0gaW5kZXg7XG5cbiAgICBlbWl0KCdjaGFuZ2UnLCBldmVudCwgaW5kZXgpO1xuICB9O1xuPC9zY3JpcHQ+XG5cbjx0ZW1wbGF0ZT5cbiAgPGRpdlxuICAgIDpjbGFzcz1cIltcbiAgICAgICd0aWRlLXRhYnMnLFxuICAgICAgQ1NTLkJHLlNVUkZBQ0UuVkFSSUFOVCxcbiAgICAgIENTUy5ESVNQTEFZLkZMRVgsXG4gICAgICBDU1MuR0FQLlFVQVJURVIsXG4gICAgICBDU1MuQk9SREVSLlJBRElVUy5IQUxGLFxuICAgICAgQ1NTLlBBRERJTkcuRlVMTC5RVUFSVEVSLFxuICAgICAgQ1NTLk9WRVJGTE9XLlhZLkhJRERFTixcbiAgICAgIENTUy5XSURUSC5GVUxMLFxuICAgIF1cIlxuICA+XG4gICAgPGJ1dHRvblxuICAgICAgOmNsYXNzPVwiW1xuICAgICAgICAndGlkZS10YWJzLXRhYicsXG4gICAgICAgIGluZGV4ID09PSBhY3RpdmVUYWJcbiAgICAgICAgICA/IFtDU1MuQkcuU1VSRkFDRS5ERUZBVUxULCBDU1MuRk9OVC5DT0xPUi5TVVJGQUNFLkRFRkFVTFQsIENTUy5TSEFET1cuQk9UVE9NXVxuICAgICAgICAgIDogWydpbmFjdGl2ZScsIENTUy5GT05ULkNPTE9SLlNVUkZBQ0UuVkFSSUFOVF0sXG4gICAgICAgIENTUy5GTEVYLkdST1cuT04sXG4gICAgICAgIENTUy5CT1JERVIuUkFESVVTLlFVQVJURVIsXG4gICAgICAgIENTUy5QQURESU5HLlkuUVVBUlRFUixcbiAgICAgICAgQ1NTLldJRFRILkZVTEwsXG4gICAgICAgIENTUy5GT05ULldFSUdIVC5TSVhfSFVORFJFRCxcbiAgICAgICAgQ1NTLldISVRFU1BBQ0VfV1JBUC5PRkYsXG4gICAgICBdXCJcbiAgICAgIDpkYXRhLXRyYWNrPVwidGFiLmRhdGFUcmFjayB8fCB1bmRlZmluZWRcIlxuICAgICAgOmtleT1cInRhYi5sYWJlbFwiXG4gICAgICBAY2xpY2s9XCIoZXZlbnQ6IEV2ZW50KSA9PiBoYW5kbGVDbGljayhldmVudCwgaW5kZXgpXCJcbiAgICAgIHYtZm9yPVwiKHRhYiwgaW5kZXgpIGluIHByb3BzLnRhYnNcIlxuICAgID5cbiAgICAgIDxzcGFuIDpjbGFzcz1cIltDU1MuRk9OVC5XRUlHSFQuU0lYX0hVTkRSRURdXCI+XG4gICAgICAgIHt7IHRhYi5sYWJlbCB9fVxuICAgICAgPC9zcGFuPlxuICAgICAgPHNwYW5cbiAgICAgICAgOmNsYXNzPVwiW0NTUy5GT05ULldFSUdIVC5TSVhfSFVORFJFRF1cIlxuICAgICAgICB2LWlmPVwidGFiLmNvdW50ICYmIHRhYi5jb3VudCA+IDBcIlxuICAgICAgPlxuICAgICAgICAoe3sgdGFiLmNvdW50IH19KVxuICAgICAgPC9zcGFuPlxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbjwvdGVtcGxhdGU+XG5cbjxzdHlsZSBzY29wZWQ+XG4gIC50aWRlLXRhYnMge1xuICAgIG1heC13aWR0aDogMjMuM3JlbTtcbiAgfVxuXG4gIC50aWRlLXRhYnMtdGFiIHtcbiAgICBmbGV4OiAxO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tdGlkZS1hbmltYXRlKTtcbiAgfVxuXG4gIC5pbmFjdGl2ZTpub3QoOmhvdmVyKSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdGlkZS1zdXJmYWNlLXZhcmlhbnQpO1xuICB9XG5cbiAgLmluYWN0aXZlOmhvdmVyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10aWRlLWJvcmRlcik7XG4gIH1cbjwvc3R5bGU+XG4iLCI8c2NyaXB0IGxhbmc9XCJ0c1wiIHNldHVwPlxuICBpbXBvcnQgeyByZWYgfSBmcm9tICd2dWUnO1xuXG4gIGltcG9ydCBUaWRlSWNvbiBmcm9tICdAL2NvbXBvbmVudHMvVGlkZUljb24udnVlJztcbiAgaW1wb3J0IHsgQ1NTIH0gZnJvbSAnQC90eXBlcy9TdHlsZXMnO1xuICBpbXBvcnQgeyBJQ09OIH0gZnJvbSAnQC90eXBlcy9JY29uJztcbiAgaW1wb3J0IHsgU0laRSB9IGZyb20gJ0AvdHlwZXMvU2l6ZSc7XG5cbiAgY29uc3QgcHJvcHMgPSBkZWZpbmVQcm9wcyh7XG4gICAgZGlzYWJsZWQ6IHtcbiAgICAgIGRlZmF1bHQ6IGZhbHNlLFxuICAgICAgcmVxdWlyZWQ6IGZhbHNlLFxuICAgICAgdHlwZTogQm9vbGVhbixcbiAgICB9LFxuICAgIGlzQWN0aXZlOiB7XG4gICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgIHR5cGU6IEJvb2xlYW4sXG4gICAgfSxcbiAgfSk7XG5cbiAgY29uc3QgZW1pdCA9IGRlZmluZUVtaXRzKFsnY2hhbmdlJ10pO1xuXG4gIGNvbnN0IGlzQWN0aXZlID0gcmVmKHByb3BzLmlzQWN0aXZlKTtcblxuICBjb25zdCBoYW5kbGVDbGljayA9IChldmVudDogRXZlbnQpID0+IHtcbiAgICBpZiAoIXByb3BzLmRpc2FibGVkKSB7XG4gICAgICBpc0FjdGl2ZS52YWx1ZSA9ICFpc0FjdGl2ZS52YWx1ZTtcblxuICAgICAgZW1pdCgnY2hhbmdlJywgZXZlbnQsIGlzQWN0aXZlLnZhbHVlKTtcbiAgICB9XG4gIH07XG48L3NjcmlwdD5cblxuPHRlbXBsYXRlPlxuICA8YnV0dG9uXG4gICAgOmNsYXNzPVwiW1xuICAgICAgJ3RpZGUtdG9nZ2xlJyxcbiAgICAgIHByb3BzLmlzQWN0aXZlID8gJ2FjdGl2ZScgOiAnJyxcbiAgICAgIENTUy5ESVNQTEFZLkZMRVgsXG4gICAgICBDU1MuQVhJUzIuQ0VOVEVSLFxuICAgICAgQ1NTLkJPUkRFUi5GVUxMLk9ORSxcbiAgICAgIENTUy5CT1JERVIuUkFESVVTLkZVTEwsXG4gICAgICBwcm9wcy5pc0FjdGl2ZSA/ICcnIDogQ1NTLkJPUkRFUi5DT0xPUi5ERUZBVUxULFxuICAgICAgQ1NTLk9WRVJGTE9XLlhZLkhJRERFTixcbiAgICAgIHByb3BzLmlzQWN0aXZlID8gQ1NTLkJHLlNFQ09OREFSWSA6IENTUy5CRy5TVVJGQUNFLkRFRkFVTFQsXG4gICAgXVwiXG4gICAgOmRpc2FibGVkPVwicHJvcHMuZGlzYWJsZWRcIlxuICAgIEBjbGljaz1cImhhbmRsZUNsaWNrXCJcbiAgICBhcmlhLWxhYmVsPVwiVG9nZ2xlXCJcbiAgPlxuICAgIDxkaXZcbiAgICAgIDpjbGFzcz1cIltcbiAgICAgICAgJ3RpZGUtdG9nZ2xlLWluZGljYXRvcicsXG4gICAgICAgIENTUy5QT1NJVElPTi5SRUxBVElWRSxcbiAgICAgICAgQ1NTLkRJU1BMQVkuRkxFWCxcbiAgICAgICAgQ1NTLkFYSVMxLkNFTlRFUixcbiAgICAgICAgQ1NTLkFYSVMyLkNFTlRFUixcbiAgICAgICAgQ1NTLkJPUkRFUi5SQURJVVMuRlVMTCxcbiAgICAgICAgcHJvcHMuaXNBY3RpdmUgPyBDU1MuQkcuU1VSRkFDRS5ERUZBVUxUIDogQ1NTLkJHLlNFQ09OREFSWSxcbiAgICAgIF1cIlxuICAgID5cbiAgICAgIDxUaWRlSWNvblxuICAgICAgICA6aWNvbj1cIklDT04uQ0hFQ0tcIlxuICAgICAgICA6c2l6ZT1cIlNJWkUuTEFSR0VcIlxuICAgICAgLz5cbiAgICA8L2Rpdj5cbiAgPC9idXR0b24+XG48L3RlbXBsYXRlPlxuXG48c3R5bGUgc2NvcGVkPlxuICAudGlkZS10b2dnbGUge1xuICAgIHdpZHRoOiA2NHB4O1xuICAgIGhlaWdodDogMzJweDtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS10aWRlLWFuaW1hdGUpO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3I7XG4gIH1cblxuICAudGlkZS10b2dnbGU6ZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuMzI7XG4gIH1cblxuICAudGlkZS10b2dnbGUuYWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXRpZGUtc2Vjb25kYXJ5KTtcbiAgfVxuXG4gIC50aWRlLXRvZ2dsZS5hY3RpdmUgLnRpZGUtdG9nZ2xlLWluZGljYXRvciB7XG4gICAgbGVmdDogMzZweDtcbiAgfVxuXG4gIC50aWRlLXRvZ2dsZS1pbmRpY2F0b3Ige1xuICAgIGxlZnQ6IDRweDtcbiAgICB0cmFuc2l0aW9uOiB2YXIoLS10aWRlLWFuaW1hdGUpO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGxlZnQsIGJvcmRlci1jb2xvciwgYmFja2dyb3VuZC1jb2xvcjtcbiAgfVxuPC9zdHlsZT5cbiIsImV4cG9ydCBjb25zdCBSRUFMTSA9IHtcbiAgQUVSTzogJ2Flcm8nLFxuICBBVFY6ICdhdHYnLFxuICBCT0FUTUFSVDogJ2JvYXRtYXJ0JyxcbiAgQ1lDTEU6ICdjeWNsZScsXG4gIEVRVUlQOiAnZXF1aXAnLFxuICBQV0M6ICdwd2MnLFxuICBSVjogJ3J2JyxcbiAgU05PVzogJ3Nub3cnLFxuICBUUlVDSzogJ3RydWNrJyxcbn0gYXMgY29uc3Q7XG5cbmV4cG9ydCB0eXBlIFJlYWxtID0gKHR5cGVvZiBSRUFMTSlba2V5b2YgdHlwZW9mIFJFQUxNXTtcbiJdLCJuYW1lcyI6WyJDU1MiLCJPUklFTlRBVElPTiIsIlNJWkUiLCJmb3JtYXRQYXNjYWxDYXNlIiwiaW5wdXQiLCJ3b3JkIiwiaW5uZXJTVkciLCJyZWYiLCJ3YXRjaCIsInByb3BzIiwiaWQiLCJuYW1lIiwiY29tcG9uZW50IiwiZGVmaW5lQXN5bmNDb21wb25lbnQiLCJfX3ZhcmlhYmxlRHluYW1pY0ltcG9ydFJ1bnRpbWVIZWxwZXIiLCJtYXJrUmF3IiwiSUNPTiIsImlzRXhwYW5kZWQiLCJhY2NvcmRpb25Cb2R5IiwidG9nZ2xlSXNFeHBhbmRlZCIsImVsZW1lbnQiLCJvbk1vdW50ZWQiLCJFTEVNRU5UIiwiRUxFTUVOVF9URVhUX0FTX0lDT04iLCJQUklPUklUWSIsIlRBUkdFVCIsIkFMRVJUIiwiaWNvbiIsImNvbXB1dGVkIiwiQkFER0UiLCJCQURHRV9QUkVNSVVNIiwiQkFER0VfVFJVU1RFRCIsImdhcCIsImNvbnRlbnRXaWR0aCIsImZyYW1lV2lkdGgiLCJoYXNPdmVyZmxvdyIsImxhc3RQb3NpdGlvbiIsImNvbnRlbnRSZWYiLCJmcmFtZVJlZiIsInNob3dCdXR0b25zIiwiY3VycmVudFNsaWRlIiwibWVhc3VyZUN1cnJlbnRTbGlkZSIsInNsaWRlT2Zmc2V0cyIsInNsaWRlIiwiY2xvc2VzdFNsaWRlT2Zmc2V0IiwicHJldiIsImN1cnIiLCJtZWFzdXJlRG9tIiwiaGFuZGxlU2Nyb2xsIiwic2Nyb2xsVG9TbGlkZSIsInNsaWRlSW5kZXgiLCJzaG93TmV4dFNsaWRlIiwiY29udGVudFJpZ2h0RWRnZSIsImlzRmlyc3RTbGlkZVdpdGhPZmZzZXQiLCJuZXh0U2xpZGUiLCJzaG93UHJldmlvdXNTbGlkZSIsImZpcnN0U2xpZGUiLCJpc0ZpcnN0U2xpZGUiLCJwcmV2aW91c1NsaWRlIiwib25Vbm1vdW50ZWQiLCJvblVwZGF0ZWQiLCJlbWl0IiwidGlkZUltYWdlIiwiaW1hZ2VEZWZhdWx0IiwibG9hZEltYWdlIiwiaW1hZ2VMb2FkZXIiLCJzZXRJbWFnZUZyb21TcmMiLCJzZXRJbWFnZUZyb21EZWZhdWx0IiwiX19leHBvc2UiLCJvYnNlcnZlciIsImVudHJpZXMiLCJlbnRyeSIsIm9uQmVmb3JlVW5tb3VudCIsImNoZWNrZWQiLCJ1bmlxdWVJZCIsIl9hIiwiZ2V0Q3VycmVudEluc3RhbmNlIiwibmV3VmFsdWUiLCJvbGRWYWx1ZSIsImVycm9yTWVzc2FnZURlZmF1bHQiLCJnZXRFcnJvck1lc3NhZ2UiLCJlcnJvckZyb21Qcm9wcyIsImVycm9yRnJvbVJlZiIsImdldEZpZWxkSGFzRXJyb3IiLCJnZXRGaWVsZExlbmd0aElzVmFsaWQiLCJtYXhsZW5ndGgiLCJtaW5sZW5ndGgiLCJ2YWx1ZSIsInRvb1Nob3J0IiwidG9vTG9uZyIsImhhbmRsZUZpZWxkVmFsaWRhdGlvbiIsImVycm9yIiwidmFsaWRhdG9ycyIsInZhbGlkYXRpb24iLCJ2YWxpZGF0ZVByb3BlcnR5IiwibGVuZ3RodmFsaWRhdGlvbiIsInZhbGlkYXRlTGVuZ3RoIiwicmVzcG9uc2UiLCJ2YWxpZGF0b3IiLCJoYXNGb2N1cyIsInJlcXVpcmVkIiwiZXJyb3JNZXNzYWdlIiwiZm9ybWF0dGVkTGFiZWwiLCJoYXNFcnJvciIsImhhc01pbmlsYWJlbCIsImlzRW1wdHkiLCJleHBhbmRPcHRpb25zIiwiZXZlbnQiLCJoYW5kbGVGb2N1cyIsImhhbmRsZUZvY3VzT3V0IiwiVEVYVF9JTlBVVF9UWVBFIiwic2hvd1Bhc3N3b3JkIiwiaGFzQ2xlYXIiLCJ0eXBlIiwiaGFuZGxlQ2xlYXIiLCJoYW5kbGVWYWxpZGF0aW9uIiwiaGFuZGxlSW5wdXQiLCJkaWdpdHMiLCJ1cGRhdGVWYWx1ZSIsImhhc0ljb24iLCJpc09wZW4iLCJzYXZlZFNjcm9sbFBvc2l0aW9uIiwiaGFuZGxlQ2xvc2UiLCJ1cGRhdGVNb2RhbERpc3BsYXkiLCJhZGRPcGVuTGlzdGVuZXJzIiwicmVtb3ZlT3Blbkxpc3RlbmVycyIsImhhbmRsZUtleURvd24iLCJwYWdlQ3VycmVudCIsInBhZ2luYXRpb25CdXR0b25zIiwiZW1wdHkiLCJpbmRleCIsImhhbmRsZUNsaWNrIiwiYWN0aXZlVGFiIiwiaXNBY3RpdmUiLCJSRUFMTSJdLCJtYXBwaW5ncyI6IjtBQUVPLE1BQU1BLElBQU07QUFBQSxFQUNqQixPQUFPO0FBQUEsSUFDTCxHQUFHO0FBQUEsTUFDRCxRQUFRO0FBQUEsTUFDUixNQUFNO0FBQUEsTUFDTixPQUFPO0FBQUEsSUFDVDtBQUFBLElBQ0EsR0FBRztBQUFBLE1BQ0QsUUFBUTtBQUFBLElBQ1Y7QUFBQSxFQUNGO0FBQUEsRUFDQSxPQUFPO0FBQUEsSUFDTCxRQUFRO0FBQUEsSUFDUixTQUFTO0FBQUEsSUFDVCxRQUFRO0FBQUEsSUFDUixLQUFLO0FBQUEsSUFDTCxPQUFPO0FBQUEsRUFDVDtBQUFBLEVBQ0EsT0FBTztBQUFBLElBQ0wsUUFBUTtBQUFBLElBQ1IsUUFBUTtBQUFBLElBQ1IsS0FBSztBQUFBLElBQ0wsT0FBTztBQUFBLEVBQ1Q7QUFBQSxFQUNBLElBQUk7QUFBQSxJQUNGLE1BQU07QUFBQSxJQUNOLE9BQU87QUFBQSxJQUNQLE1BQU07QUFBQSxJQUNOLFNBQVM7QUFBQSxJQUNULFdBQVc7QUFBQSxJQUNYLFNBQVM7QUFBQSxJQUNULFNBQVM7QUFBQSxNQUNQLFFBQVE7QUFBQSxNQUNSLGdCQUFnQjtBQUFBLE1BQ2hCLE9BQU87QUFBQSxNQUNQLFNBQVM7QUFBQSxNQUNULE9BQU87QUFBQSxNQUNQLFVBQVU7QUFBQSxNQUNWLFVBQVU7QUFBQSxNQUNWLE1BQU07QUFBQSxNQUNOLFNBQVM7QUFBQSxNQUNULFNBQVM7QUFBQSxNQUNULFNBQVM7QUFBQSxJQUNYO0FBQUEsSUFDQSxTQUFTO0FBQUEsRUFDWDtBQUFBLEVBQ0EsUUFBUTtBQUFBLElBQ04sT0FBTztBQUFBLE1BQ0wsU0FBUztBQUFBLE1BQ1QsVUFBVTtBQUFBLE1BQ1YsTUFBTTtBQUFBLE1BQ04sS0FBSztBQUFBLE1BQ0wsU0FBUztBQUFBLElBQ1g7QUFBQSxJQUNBLFFBQVE7QUFBQSxNQUNOLFNBQVM7QUFBQSxNQUNULE1BQU07QUFBQSxNQUNOLEtBQUs7QUFBQSxNQUNMLE1BQU07QUFBQSxJQUNSO0FBQUEsSUFDQSxRQUFRO0FBQUEsTUFDTixLQUFLO0FBQUEsTUFDTCxLQUFLO0FBQUEsSUFDUDtBQUFBLElBQ0EsTUFBTTtBQUFBLE1BQ0osS0FBSztBQUFBLE1BQ0wsS0FBSztBQUFBLElBQ1A7QUFBQSxJQUNBLE1BQU07QUFBQSxNQUNKLEtBQUs7QUFBQSxNQUNMLEtBQUs7QUFBQSxJQUNQO0FBQUEsSUFDQSxPQUFPO0FBQUEsTUFDTCxLQUFLO0FBQUEsTUFDTCxLQUFLO0FBQUEsSUFDUDtBQUFBLElBQ0EsS0FBSztBQUFBLE1BQ0gsS0FBSztBQUFBLE1BQ0wsS0FBSztBQUFBLElBQ1A7QUFBQSxFQUNGO0FBQUEsRUFDQSxZQUFZO0FBQUEsSUFDVixZQUFZO0FBQUEsSUFDWixhQUFhO0FBQUEsRUFDZjtBQUFBLEVBQ0EsWUFBWTtBQUFBLElBQ1YsSUFBSTtBQUFBLEVBQ047QUFBQSxFQUNBLFNBQVM7QUFBQSxJQUNQLEtBQUs7QUFBQSxJQUNMLEtBQUs7QUFBQSxJQUNMLE9BQU87QUFBQSxJQUNQLE1BQU07QUFBQSxFQUNSO0FBQUEsRUFDQSxRQUFRO0FBQUEsSUFDTixhQUFhO0FBQUEsSUFDYixTQUFTO0FBQUEsSUFDVCxNQUFNO0FBQUEsRUFDUjtBQUFBLEVBQ0EsU0FBUztBQUFBLElBQ1AsT0FBTztBQUFBLElBQ1AsVUFBVTtBQUFBLElBQ1YsTUFBTTtBQUFBLElBQ04sTUFBTTtBQUFBLElBQ04sU0FBUztBQUFBLElBQ1QsUUFBUTtBQUFBLElBQ1IsY0FBYztBQUFBLElBQ2QsYUFBYTtBQUFBLElBQ2IsTUFBTTtBQUFBLEVBQ1I7QUFBQSxFQUNBLE1BQU07QUFBQSxJQUNKLFdBQVc7QUFBQSxNQUNULFFBQVE7QUFBQSxNQUNSLGdCQUFnQjtBQUFBLE1BQ2hCLEtBQUs7QUFBQSxNQUNMLGFBQWE7QUFBQSxJQUNmO0FBQUEsSUFDQSxNQUFNO0FBQUEsTUFDSixLQUFLO0FBQUEsTUFDTCxJQUFJO0FBQUEsSUFDTjtBQUFBLElBQ0EsUUFBUTtBQUFBLE1BQ04sS0FBSztBQUFBLE1BQ0wsSUFBSTtBQUFBLElBQ047QUFBQSxJQUNBLE1BQU07QUFBQSxFQUNSO0FBQUEsRUFDQSxNQUFNO0FBQUEsSUFDSixPQUFPO0FBQUEsTUFDTCxTQUFTO0FBQUEsTUFDVCxXQUFXO0FBQUEsTUFDWCxTQUFTO0FBQUEsUUFDUCxPQUFPO0FBQUEsUUFDUCxTQUFTO0FBQUEsUUFDVCxTQUFTO0FBQUEsUUFDVCxTQUFTO0FBQUEsUUFDVCxpQkFBaUI7QUFBQSxNQUNuQjtBQUFBLElBQ0Y7QUFBQSxJQUNBLE1BQU07QUFBQSxNQUNKLFFBQVE7QUFBQSxNQUNSLFVBQVU7QUFBQSxNQUNWLFNBQVM7QUFBQSxNQUNULFFBQVE7QUFBQSxNQUNSLGFBQWE7QUFBQSxNQUNiLFlBQVk7QUFBQSxJQUNkO0FBQUEsSUFDQSxRQUFRO0FBQUEsTUFDTixjQUFjO0FBQUEsTUFDZCxjQUFjO0FBQUEsTUFDZCxhQUFhO0FBQUEsTUFDYixlQUFlO0FBQUEsSUFDakI7QUFBQSxFQUNGO0FBQUEsRUFDQSxLQUFLO0FBQUEsSUFDSCxTQUFTO0FBQUEsSUFDVCxNQUFNO0FBQUEsSUFDTixLQUFLO0FBQUEsSUFDTCxLQUFLO0FBQUEsSUFDTCxNQUFNO0FBQUEsRUFDUjtBQUFBLEVBQ0EsTUFBTTtBQUFBLElBQ0osS0FBSztBQUFBLE1BQ0gsS0FBSztBQUFBLE1BQ0wsS0FBSztBQUFBLE1BQ0wsT0FBTztBQUFBLE1BQ1AsTUFBTTtBQUFBLE1BQ04sTUFBTTtBQUFBLE1BQ04sS0FBSztBQUFBLE1BQ0wsT0FBTztBQUFBLE1BQ1AsT0FBTztBQUFBLE1BQ1AsTUFBTTtBQUFBLE1BQ04sS0FBSztBQUFBLE1BQ0wsUUFBUTtBQUFBLE1BQ1IsUUFBUTtBQUFBLE1BQ1IsVUFBVTtBQUFBLElBQ1o7QUFBQSxJQUNBLE9BQU87QUFBQSxJQUNQLFFBQVE7QUFBQSxJQUNSLE9BQU87QUFBQSxNQUNMLE1BQU07QUFBQSxNQUNOLEtBQUs7QUFBQSxNQUNMLEtBQUs7QUFBQSxNQUNMLE9BQU87QUFBQSxNQUNQLE1BQU07QUFBQSxNQUNOLE1BQU07QUFBQSxNQUNOLEtBQUs7QUFBQSxNQUNMLE9BQU87QUFBQSxNQUNQLE9BQU87QUFBQSxNQUNQLE1BQU07QUFBQSxNQUNOLEtBQUs7QUFBQSxNQUNMLFFBQVE7QUFBQSxNQUNSLFFBQVE7QUFBQSxJQUNWO0FBQUEsSUFDQSxJQUFJO0FBQUEsRUFDTjtBQUFBLEVBQ0EsUUFBUTtBQUFBLElBQ04sTUFBTTtBQUFBLEVBQ1I7QUFBQSxFQUNBLGNBQWM7QUFBQSxJQUNaLEtBQUs7QUFBQSxFQUNQO0FBQUEsRUFDQSxRQUFRO0FBQUEsSUFDTixRQUFRO0FBQUEsTUFDTixTQUFTO0FBQUEsTUFDVCxNQUFNO0FBQUEsTUFDTixLQUFLO0FBQUEsTUFDTCxLQUFLO0FBQUEsTUFDTCxNQUFNO0FBQUEsSUFDUjtBQUFBLElBQ0EsTUFBTTtBQUFBLE1BQ0osU0FBUztBQUFBLE1BQ1QsTUFBTTtBQUFBLE1BQ04sS0FBSztBQUFBLE1BQ0wsS0FBSztBQUFBLE1BQ0wsTUFBTTtBQUFBLElBQ1I7QUFBQSxJQUNBLE1BQU07QUFBQSxNQUNKLE1BQU07QUFBQSxNQUNOLFNBQVM7QUFBQSxNQUNULE1BQU07QUFBQSxNQUNOLEtBQUs7QUFBQSxNQUNMLEtBQUs7QUFBQSxNQUNMLE1BQU07QUFBQSxJQUNSO0FBQUEsSUFDQSxPQUFPO0FBQUEsTUFDTCxNQUFNO0FBQUEsTUFDTixTQUFTO0FBQUEsTUFDVCxNQUFNO0FBQUEsTUFDTixLQUFLO0FBQUEsTUFDTCxLQUFLO0FBQUEsTUFDTCxNQUFNO0FBQUEsSUFDUjtBQUFBLElBQ0EsS0FBSztBQUFBLE1BQ0gsU0FBUztBQUFBLE1BQ1QsTUFBTTtBQUFBLE1BQ04sS0FBSztBQUFBLE1BQ0wsS0FBSztBQUFBLE1BQ0wsTUFBTTtBQUFBLElBQ1I7QUFBQSxJQUNBLEdBQUc7QUFBQSxNQUNELE1BQU07QUFBQSxNQUNOLFNBQVM7QUFBQSxNQUNULE1BQU07QUFBQSxNQUNOLEtBQUs7QUFBQSxNQUNMLEtBQUs7QUFBQSxNQUNMLE1BQU07QUFBQSxJQUNSO0FBQUEsSUFDQSxHQUFHO0FBQUEsTUFDRCxTQUFTO0FBQUEsTUFDVCxNQUFNO0FBQUEsTUFDTixLQUFLO0FBQUEsTUFDTCxLQUFLO0FBQUEsTUFDTCxNQUFNO0FBQUEsSUFDUjtBQUFBLEVBQ0Y7QUFBQSxFQUNBLFFBQVE7QUFBQSxJQUNOLFFBQVE7QUFBQSxJQUNSLFNBQVM7QUFBQSxJQUNULE9BQU87QUFBQSxJQUNQLFlBQVk7QUFBQSxFQUNkO0FBQUEsRUFDQSxTQUFTO0FBQUEsSUFDUCxLQUFLO0FBQUEsSUFDTCxJQUFJO0FBQUEsRUFDTjtBQUFBLEVBQ0EsVUFBVTtBQUFBLElBQ1IsR0FBRztBQUFBLE1BQ0QsTUFBTTtBQUFBLE1BQ04sUUFBUTtBQUFBLE1BQ1IsUUFBUTtBQUFBLElBQ1Y7QUFBQSxJQUNBLElBQUk7QUFBQSxNQUNGLE1BQU07QUFBQSxNQUNOLFFBQVE7QUFBQSxJQUNWO0FBQUEsSUFDQSxHQUFHO0FBQUEsTUFDRCxNQUFNO0FBQUEsTUFDTixRQUFRO0FBQUEsSUFDVjtBQUFBLEVBQ0Y7QUFBQSxFQUNBLFNBQVM7QUFBQSxJQUNQLFFBQVE7QUFBQSxNQUNOLFNBQVM7QUFBQSxNQUNULE1BQU07QUFBQSxNQUNOLEtBQUs7QUFBQSxNQUNMLEtBQUs7QUFBQSxNQUNMLE1BQU07QUFBQSxJQUNSO0FBQUEsSUFDQSxNQUFNO0FBQUEsTUFDSixTQUFTO0FBQUEsTUFDVCxNQUFNO0FBQUEsTUFDTixLQUFLO0FBQUEsTUFDTCxLQUFLO0FBQUEsTUFDTCxNQUFNO0FBQUEsSUFDUjtBQUFBLElBQ0EsTUFBTTtBQUFBLE1BQ0osU0FBUztBQUFBLE1BQ1QsTUFBTTtBQUFBLE1BQ04sS0FBSztBQUFBLE1BQ0wsS0FBSztBQUFBLE1BQ0wsTUFBTTtBQUFBLElBQ1I7QUFBQSxJQUNBLE9BQU87QUFBQSxNQUNMLFNBQVM7QUFBQSxNQUNULE1BQU07QUFBQSxNQUNOLEtBQUs7QUFBQSxNQUNMLEtBQUs7QUFBQSxNQUNMLE1BQU07QUFBQSxJQUNSO0FBQUEsSUFDQSxLQUFLO0FBQUEsTUFDSCxTQUFTO0FBQUEsTUFDVCxNQUFNO0FBQUEsTUFDTixLQUFLO0FBQUEsTUFDTCxLQUFLO0FBQUEsTUFDTCxNQUFNO0FBQUEsSUFDUjtBQUFBLElBQ0EsR0FBRztBQUFBLE1BQ0QsU0FBUztBQUFBLE1BQ1QsTUFBTTtBQUFBLE1BQ04sS0FBSztBQUFBLE1BQ0wsS0FBSztBQUFBLE1BQ0wsTUFBTTtBQUFBLElBQ1I7QUFBQSxJQUNBLEdBQUc7QUFBQSxNQUNELFNBQVM7QUFBQSxNQUNULE1BQU07QUFBQSxNQUNOLEtBQUs7QUFBQSxNQUNMLEtBQUs7QUFBQSxNQUNMLE1BQU07QUFBQSxJQUNSO0FBQUEsRUFDRjtBQUFBLEVBQ0EsZ0JBQWdCO0FBQUEsSUFDZCxLQUFLO0FBQUEsSUFDTCxJQUFJO0FBQUEsRUFDTjtBQUFBLEVBQ0EsVUFBVTtBQUFBLElBQ1IsVUFBVTtBQUFBLElBQ1YsT0FBTztBQUFBLElBQ1AsVUFBVTtBQUFBLElBQ1YsUUFBUTtBQUFBLEVBQ1Y7QUFBQSxFQUNBLGFBQWE7QUFBQSxJQUNYLFFBQVE7QUFBQSxJQUNSLE1BQU07QUFBQSxJQUNOLE9BQU87QUFBQSxJQUNQLEtBQUs7QUFBQSxFQUNQO0FBQUEsRUFDQSxXQUFXO0FBQUEsSUFDVCxLQUFLO0FBQUEsRUFDUDtBQUFBLEVBQ0EsUUFBUTtBQUFBLElBQ04sUUFBUTtBQUFBLElBQ1IsS0FBSztBQUFBLEVBQ1A7QUFBQSxFQUNBLE1BQU07QUFBQSxJQUNKLElBQUk7QUFBQSxFQUNOO0FBQUEsRUFDQSxZQUFZO0FBQUEsSUFDVixPQUFPO0FBQUEsRUFDVDtBQUFBLEVBQ0EsZ0JBQWdCO0FBQUEsSUFDZCxPQUFPO0FBQUEsSUFDUCxNQUFNO0FBQUEsSUFDTixPQUFPO0FBQUEsRUFDVDtBQUFBLEVBQ0EsV0FBVztBQUFBLElBQ1QsT0FBTztBQUFBLElBQ1AsS0FBSztBQUFBLElBQ0wsSUFBSTtBQUFBLEVBQ047QUFBQSxFQUNBLFlBQVk7QUFBQSxJQUNWLEtBQUs7QUFBQSxJQUNMLElBQUk7QUFBQSxFQUNOO0FBQUEsRUFDQSxpQkFBaUI7QUFBQSxJQUNmLEtBQUs7QUFBQSxFQUNQO0FBQUEsRUFDQSxPQUFPO0FBQUEsSUFDTCxNQUFNO0FBQUEsSUFDTixVQUFVO0FBQUEsRUFDWjtBQUNGO0FBS0VBLEVBQUksUUFBUSxPQUNaQSxFQUFJLFFBQVEsVUFDWkEsRUFBSSxRQUFRLE1BQ1pBLEVBQUksUUFBUSxNQUNaQSxFQUFJLFFBQVEsTUFDWkEsRUFBSSxRQUFRLFNBQ1pBLEVBQUksUUFBUSxRQUNaQSxFQUFJLFFBQVEsY0FDWkEsRUFBSSxRQUFRLGFBQ1pBLEVBQUksTUFBTSxRQUNWQSxFQUFJLE1BQU0sU0FDVkEsRUFBSSxNQUFNLFFBQ1ZBLEVBQUksTUFBTSxLQUNWQSxFQUFJLE1BQU0sT0FDVkEsRUFBSSxNQUFNLFFBQ1ZBLEVBQUksTUFBTSxRQUNWQSxFQUFJLE1BQU0sS0FDVkEsRUFBSSxNQUFNLE9BQ1ZBLEVBQUksS0FBSyxVQUFVLFFBQ25CQSxFQUFJLEtBQUssVUFBVSxnQkFDbkJBLEVBQUksS0FBSyxVQUFVLEtBQ25CQSxFQUFJLEtBQUssVUFBVSxhQUNuQkEsRUFBSSxJQUFJLEtBQ1JBLEVBQUksSUFBSSxNQUNSQSxFQUFJLElBQUksU0FDUkEsRUFBSSxJQUFJLEtBQ1JBLEVBQUksSUFBSSxNQUNSQSxFQUFJLEtBQUssS0FBSyxJQUNkQSxFQUFJLEtBQUssS0FBSyxLQUNkQSxFQUFJLEtBQUssT0FBTyxJQUNoQkEsRUFBSSxLQUFLLE9BQU8sS0FDaEJBLEVBQUksS0FBSyxNQUNUQSxFQUFJLFNBQVMsVUFDYkEsRUFBSSxTQUFTLE9BQ2JBLEVBQUksU0FBUyxVQUNiQSxFQUFJLFNBQVMsUUFDYkEsRUFBSSxZQUFZLEtBQ2hCQSxFQUFJLFlBQVksT0FDaEJBLEVBQUksWUFBWSxRQUNoQkEsRUFBSSxZQUFZLE1BQ2hCQSxFQUFJLFdBQVcsWUFDZkEsRUFBSSxXQUFXLGFBQ2ZBLEVBQUksT0FBTyxLQUFLLEtBQ2hCQSxFQUFJLE9BQU8sS0FBSyxNQUNoQkEsRUFBSSxPQUFPLEtBQUssU0FDaEJBLEVBQUksT0FBTyxLQUFLLEtBQ2hCQSxFQUFJLE9BQU8sS0FBSyxNQUNoQkEsRUFBSSxPQUFPLEVBQUUsS0FDYkEsRUFBSSxPQUFPLEVBQUUsTUFDYkEsRUFBSSxPQUFPLEVBQUUsU0FDYkEsRUFBSSxPQUFPLEVBQUUsS0FDYkEsRUFBSSxPQUFPLEVBQUUsTUFDYkEsRUFBSSxPQUFPLElBQUksS0FDZkEsRUFBSSxPQUFPLElBQUksTUFDZkEsRUFBSSxPQUFPLElBQUksU0FDZkEsRUFBSSxPQUFPLElBQUksS0FDZkEsRUFBSSxPQUFPLElBQUksTUFDZkEsRUFBSSxPQUFPLEVBQUUsS0FDYkEsRUFBSSxPQUFPLEVBQUUsTUFDYkEsRUFBSSxPQUFPLEVBQUUsU0FDYkEsRUFBSSxPQUFPLEVBQUUsS0FDYkEsRUFBSSxPQUFPLEVBQUUsTUFDYkEsRUFBSSxPQUFPLEVBQUUsTUFDYkEsRUFBSSxPQUFPLE1BQU0sS0FDakJBLEVBQUksT0FBTyxNQUFNLE1BQ2pCQSxFQUFJLE9BQU8sTUFBTSxTQUNqQkEsRUFBSSxPQUFPLE1BQU0sS0FDakJBLEVBQUksT0FBTyxNQUFNLE1BQ2pCQSxFQUFJLE9BQU8sTUFBTSxNQUNqQkEsRUFBSSxPQUFPLE9BQU8sS0FDbEJBLEVBQUksT0FBTyxPQUFPLE1BQ2xCQSxFQUFJLE9BQU8sT0FBTyxTQUNsQkEsRUFBSSxPQUFPLE9BQU8sS0FDbEJBLEVBQUksT0FBTyxPQUFPLE1BQ2xCQSxFQUFJLE9BQU8sS0FBSyxLQUNoQkEsRUFBSSxPQUFPLEtBQUssTUFDaEJBLEVBQUksT0FBTyxLQUFLLFNBQ2hCQSxFQUFJLE9BQU8sS0FBSyxLQUNoQkEsRUFBSSxPQUFPLEtBQUssTUFDaEJBLEVBQUksT0FBTyxLQUFLLE1BQ2hCQSxFQUFJLE9BQU8sS0FBSyxLQUNoQkEsRUFBSSxPQUFPLEtBQUssS0FDaEJBLEVBQUksT0FBTyxJQUFJLEtBQ2ZBLEVBQUksT0FBTyxJQUFJLEtBQ2ZBLEVBQUksT0FBTyxNQUFNLEtBQ2pCQSxFQUFJLE9BQU8sTUFBTSxLQUNqQkEsRUFBSSxPQUFPLE9BQU8sS0FDbEJBLEVBQUksT0FBTyxPQUFPLEtBQ2xCQSxFQUFJLE9BQU8sS0FBSyxLQUNoQkEsRUFBSSxPQUFPLEtBQUssS0FDaEJBLEVBQUksT0FBTyxPQUFPLEtBQ2xCQSxFQUFJLE9BQU8sT0FBTyxNQUNsQkEsRUFBSSxPQUFPLE9BQU8sU0FDbEJBLEVBQUksT0FBTyxPQUFPLE1BQ2xCQSxFQUFJLFFBQVEsS0FBSyxLQUNqQkEsRUFBSSxRQUFRLEtBQUssTUFDakJBLEVBQUksUUFBUSxLQUFLLFNBQ2pCQSxFQUFJLFFBQVEsS0FBSyxLQUNqQkEsRUFBSSxRQUFRLEtBQUssTUFDakJBLEVBQUksUUFBUSxFQUFFLEtBQ2RBLEVBQUksUUFBUSxFQUFFLE1BQ2RBLEVBQUksUUFBUSxFQUFFLFNBQ2RBLEVBQUksUUFBUSxFQUFFLEtBQ2RBLEVBQUksUUFBUSxFQUFFLE1BQ2RBLEVBQUksUUFBUSxJQUFJLEtBQ2hCQSxFQUFJLFFBQVEsSUFBSSxNQUNoQkEsRUFBSSxRQUFRLElBQUksU0FDaEJBLEVBQUksUUFBUSxJQUFJLEtBQ2hCQSxFQUFJLFFBQVEsSUFBSSxNQUNoQkEsRUFBSSxRQUFRLEVBQUUsS0FDZEEsRUFBSSxRQUFRLEVBQUUsTUFDZEEsRUFBSSxRQUFRLEVBQUUsU0FDZEEsRUFBSSxRQUFRLEVBQUUsS0FDZEEsRUFBSSxRQUFRLEVBQUUsTUFDZEEsRUFBSSxRQUFRLE1BQU0sS0FDbEJBLEVBQUksUUFBUSxNQUFNLE1BQ2xCQSxFQUFJLFFBQVEsTUFBTSxTQUNsQkEsRUFBSSxRQUFRLE1BQU0sS0FDbEJBLEVBQUksUUFBUSxNQUFNLE1B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LDhCQUFBLEdBQUEsMENBQUEsTUFBQSxPQUFBLDhCQUFBLEdBQUEseUNBQUEsTUFBQSxPQUFBLDZCQUFBLEdBQUEsd0NBQUEsTUFBQSxPQUFBLDRCQUFBLEdBQUEsNkNBQUEsTUFBQSxPQUFBLGlDQUFBLEdBQUEsb0NBQUEsTUFBQSxPQUFBLHdCQUFBLEdBQUEscUNBQUEsTUFBQSxPQUFBLHlCQUFBLEdBQUEsMkNBQUEsTUFBQSxPQUFBLCtCQUFBLEdBQUEsNENBQUEsTUFBQSxPQUFBLGdDQUFBLEdBQUEscUNBQUEsTUFBQSxPQUFBLHlCQUFBLEdBQUEscUNBQUEsTUFBQSxPQUFBLHlCQUFBLEdBQUEscUNBQUEsTUFBQSxPQUFBLHlCQUFBLEdBQUEsc0NBQUEsTUFBQSxPQUFBLDBCQUFBLEdBQUEsdUNBQUEsTUFBQSxPQUFBLDJCQUFBLEdBQUEsb0NBQUEsTUFBQSxPQUFBLHdCQUFBLEdBQUEscUNBQUEsTUFBQSxPQUFBLHlCQUFBLEdBQUEsNkNBQUEsTUFBQSxPQUFBLGlDQUFBLEdBQUEsMENBQUEsTUFBQSxPQUFBLDhCQUFBLEdBQUEsMENBQUEsTUFBQSxPQUFBLDhCQUFBLEdBQUEsd0NBQUEsTUFBQSxPQUFBLDRCQUFBLEdBQUEsd0NBQUEsTUFBQSxPQUFBLDRCQUFBLEdBQUEsOENBQUEsTUFBQSxPQUFBLGtDQUFBLEdBQUEsMENBQUEsTUFBQSxPQUFBLDhCQUFBLEdBQUEsNENBQUEsTUFBQSxPQUFBLGdDQUFBLEdBQUEsa0RBQUEsTUFBQSxPQUFBLHNDQUFBLEdBQUEscUNBQUEsTUFBQSxPQUFBLHlCQUFBLEdBQUEscUNBQUEsTUFBQSxPQUFBLHlCQUFBLEdBQUEsc0NBQUEsTUFBQSxPQUFBLDBCQUFBLEdBQUEseUNBQUEsTUFBQSxPQUFBLDZCQUFBLEdBQUEsb0NBQUEsTUFBQSxPQUFBLHdCQUFBLEdBQUEsb0NBQUEsTUFBQSxPQUFBLHdCQUFBLEdBQUEsb0NBQUEsTUFBQSxPQUFBLHdCQUFBLEdBQUEsMENBQUEsTUFBQSxPQUFBLDhCQUFBLEdBQUEseUNBQUEsTUFBQSxPQUFBLDZCQUFBLEdBQUEsd0NBQUEsTUFBQSxPQUFBLDRCQUFBLEdBQUEsc0NBQUEsTUFBQSxPQUFBLDBCQUFBLEdBQUEsd0NBQUEsTUFBQSxPQUFBLDRCQUFBLEdBQUEsNkNBQUEsTUFBQSxPQUFBLGlDQUFBLEdBQUEsb0NBQUEsTUFBQSxPQUFBLHdCQUFBLEdBQUEsb0NBQUEsTUFBQSxPQUFBLHdCQUFBLEdBQUEsb0NBQUEsTUFBQSxPQUFBLHdCQUFBLEdBQUEseUNBQUEsTUFBQSxPQUFBLDZCQUFBLEdBQUEsNkNBQUEsTUFBQSxPQUFBLGlDQUFBLEdBQUEseUNBQUEsTUFBQSxPQUFBLDZCQUFBLEdBQUEsdUNBQUEsTUFBQSxPQUFBLDJCQUFBLEdBQUEsc0NBQUEsTUFBQSxPQUFBLDBCQUFBLEdBQUEsc0NBQUEsTUFBQSxPQUFBLDBCQUFBLEdBQUEsMkNBQUEsTUFBQSxPQUFBLCtCQUFBLEdBQUEseUNBQUEsTUFBQSxPQUFBLDZCQUFBLEdBQUEseUNBQUEsTUFBQSxPQUFBLDZCQUFBLEdBQUEsc0NBQUEsTUFBQSxPQUFBLDBCQUFBLEdBQUEsOENBQUEsTUFBQSxPQUFBLGtDQUFBLEdBQUEsc0NBQUEsTUFBQSxPQUFBLDBCQUFBLEdBQUEsb0NBQUEsTUFBQSxPQUFBLHdCQUFBLEdBQUEscUNBQUEsTUFBQSxPQUFBLHlCQUFBLEdBQUEsNENBQUEsTUFBQSxPQUFBLGdDQUFBLEdBQUEsbUNBQUEsTUFBQSxPQUFBLHVCQUFBLEdBQUEsb0NBQUEsTUFBQSxPQUFBLHdCQUFBLEdBQUEsd0NBQUEsTUFBQSxPQUFBLDRCQUFBLEdBQUEsOENBQUEsTUFBQSxPQUFBLGtDQUFBLEdBQUEsc0NBQUEsTUFBQSxPQUFBLDBCQUFBLEdBQUEsb0NBQUEsTUFBQSxPQUFBLHdCQUFBLEdBQUEsdUNBQUEsTUFBQSxPQUFBLDJCQUFBLEdBQUEsd0NBQUEsTUFBQSxPQUFBLDRCQUFBLEdBQUEsd0NBQUEsTUFBQSxPQUFBLDRCQUFBLEdBQUEsMENBQUEsTUFBQSxPQUFBLDhCQUFBLEdBQUEseUNBQUEsTUFBQSxPQUFBLDZCQUFBLEdBQUEsd0NBQUEs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
|