@1money/component-ui 0.0.29 → 0.0.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/README.md +56 -8
  2. package/es/components/Alert/Alert.js +10 -6
  3. package/es/components/Calendar/Calendar.js +6 -4
  4. package/es/components/CoachMark/CoachMark.js +4 -3
  5. package/es/components/Icons/Icons.d.ts +173 -8
  6. package/es/components/Icons/Icons.js +188 -4
  7. package/{lib/components/Icons/illustrations → es/components/Icons}/Illustrations.d.ts +1 -1
  8. package/es/components/Icons/Illustrations.js +874 -0
  9. package/es/components/Icons/{logos/Logo.d.ts → Logo.d.ts} +1 -1
  10. package/es/components/Icons/Logo.js +209 -0
  11. package/es/components/Icons/SVGs.d.ts +265 -0
  12. package/es/components/Icons/SVGs.js +1918 -0
  13. package/es/components/Icons/{primitives/IconWrapper.d.ts → Wrapper.d.ts} +2 -1
  14. package/es/components/Icons/Wrapper.js +100 -0
  15. package/es/components/Icons/index.d.ts +2 -5
  16. package/es/components/Icons/index.js +2 -6
  17. package/es/components/Icons/interface.d.ts +24 -9
  18. package/es/components/Input/Password/Password.js +6 -4
  19. package/es/components/Input/Search/Search.js +6 -4
  20. package/es/components/Navigation/NavigationLogo.js +6 -4
  21. package/es/components/ProForm/style/ProForm.css +1 -1
  22. package/es/components/Select/SelectFieldShell.js +4 -3
  23. package/es/components/Select/SelectOptionContent.js +4 -3
  24. package/es/components/Select/SelectSearchControl.js +4 -3
  25. package/es/components/Select/SelectValueContent.js +4 -3
  26. package/es/components/Upload/Upload.js +6 -4
  27. package/es/components/Upload/UploadFileBar.js +4 -3
  28. package/es/index.css +1 -1
  29. package/es/index.d.ts +2 -2
  30. package/es/index.js +2 -2
  31. package/lib/components/Alert/Alert.js +9 -5
  32. package/lib/components/Calendar/Calendar.js +5 -3
  33. package/lib/components/CoachMark/CoachMark.js +3 -2
  34. package/lib/components/Icons/Icons.d.ts +173 -8
  35. package/lib/components/Icons/Icons.js +183 -5
  36. package/{es/components/Icons/illustrations → lib/components/Icons}/Illustrations.d.ts +1 -1
  37. package/lib/components/Icons/Illustrations.js +881 -0
  38. package/lib/components/Icons/{logos/Logo.d.ts → Logo.d.ts} +1 -1
  39. package/lib/components/Icons/Logo.js +219 -0
  40. package/lib/components/Icons/SVGs.d.ts +265 -0
  41. package/lib/components/Icons/SVGs.js +1926 -0
  42. package/lib/components/Icons/{primitives/IconWrapper.d.ts → Wrapper.d.ts} +2 -1
  43. package/lib/components/Icons/Wrapper.js +109 -0
  44. package/lib/components/Icons/index.d.ts +2 -5
  45. package/lib/components/Icons/index.js +5 -160
  46. package/lib/components/Icons/interface.d.ts +24 -9
  47. package/lib/components/Input/Password/Password.js +5 -3
  48. package/lib/components/Input/Search/Search.js +5 -3
  49. package/lib/components/Navigation/NavigationLogo.js +5 -3
  50. package/lib/components/ProForm/style/ProForm.css +1 -1
  51. package/lib/components/Select/SelectFieldShell.js +3 -2
  52. package/lib/components/Select/SelectOptionContent.js +3 -2
  53. package/lib/components/Select/SelectSearchControl.js +3 -2
  54. package/lib/components/Select/SelectValueContent.js +3 -2
  55. package/lib/components/Upload/Upload.js +5 -3
  56. package/lib/components/Upload/UploadFileBar.js +3 -2
  57. package/lib/index.css +1 -1
  58. package/lib/index.d.ts +2 -2
  59. package/lib/index.js +1 -223
  60. package/package.json +2 -6
  61. package/scripts/mcp-server/examples.generated.json +309 -723
  62. package/scripts/mcp-server/index.generated.json +699 -3409
  63. package/es/components/Icons/Icon.d.ts +0 -5
  64. package/es/components/Icons/Icon.js +0 -19
  65. package/es/components/Icons/icon-set/brand.d.ts +0 -6
  66. package/es/components/Icons/icon-set/brand.js +0 -62
  67. package/es/components/Icons/icon-set/currency.d.ts +0 -7
  68. package/es/components/Icons/icon-set/currency.js +0 -101
  69. package/es/components/Icons/icon-set/dynamic.d.ts +0 -16
  70. package/es/components/Icons/icon-set/dynamic.js +0 -92
  71. package/es/components/Icons/icon-set/functional.d.ts +0 -19
  72. package/es/components/Icons/icon-set/functional.js +0 -286
  73. package/es/components/Icons/icon-set/index.d.ts +0 -10
  74. package/es/components/Icons/icon-set/index.js +0 -10
  75. package/es/components/Icons/icon-set/menu.d.ts +0 -22
  76. package/es/components/Icons/icon-set/menu.js +0 -372
  77. package/es/components/Icons/icon-set/notification.d.ts +0 -6
  78. package/es/components/Icons/icon-set/notification.js +0 -109
  79. package/es/components/Icons/icon-set/primary.d.ts +0 -14
  80. package/es/components/Icons/icon-set/primary.js +0 -222
  81. package/es/components/Icons/icon-set/registry.d.ts +0 -159
  82. package/es/components/Icons/icon-set/registry.js +0 -166
  83. package/es/components/Icons/icon-set/system.d.ts +0 -64
  84. package/es/components/Icons/icon-set/system.js +0 -1093
  85. package/es/components/Icons/illustrations/Illustrations.js +0 -874
  86. package/es/components/Icons/illustrations/index.d.ts +0 -2
  87. package/es/components/Icons/illustrations/index.js +0 -2
  88. package/es/components/Icons/logos/Logo.js +0 -209
  89. package/es/components/Icons/logos/index.d.ts +0 -2
  90. package/es/components/Icons/logos/index.js +0 -2
  91. package/es/components/Icons/primitives/IconHover.d.ts +0 -4
  92. package/es/components/Icons/primitives/IconHover.js +0 -28
  93. package/es/components/Icons/primitives/IconWrapper.js +0 -81
  94. package/es/components/Icons/primitives/index.d.ts +0 -5
  95. package/es/components/Icons/primitives/index.js +0 -5
  96. package/es/components/Icons/primitives/interface.d.ts +0 -25
  97. package/es/components/Icons/primitives/interface.js +0 -2
  98. package/es/components/Icons/types.d.ts +0 -3
  99. package/es/components/Icons/types.js +0 -2
  100. package/lib/components/Icons/Icon.d.ts +0 -5
  101. package/lib/components/Icons/Icon.js +0 -25
  102. package/lib/components/Icons/icon-set/brand.d.ts +0 -6
  103. package/lib/components/Icons/icon-set/brand.js +0 -69
  104. package/lib/components/Icons/icon-set/currency.d.ts +0 -7
  105. package/lib/components/Icons/icon-set/currency.js +0 -108
  106. package/lib/components/Icons/icon-set/dynamic.d.ts +0 -16
  107. package/lib/components/Icons/icon-set/dynamic.js +0 -99
  108. package/lib/components/Icons/icon-set/functional.d.ts +0 -19
  109. package/lib/components/Icons/icon-set/functional.js +0 -293
  110. package/lib/components/Icons/icon-set/index.d.ts +0 -10
  111. package/lib/components/Icons/icon-set/index.js +0 -783
  112. package/lib/components/Icons/icon-set/menu.d.ts +0 -22
  113. package/lib/components/Icons/icon-set/menu.js +0 -379
  114. package/lib/components/Icons/icon-set/notification.d.ts +0 -6
  115. package/lib/components/Icons/icon-set/notification.js +0 -116
  116. package/lib/components/Icons/icon-set/primary.d.ts +0 -14
  117. package/lib/components/Icons/icon-set/primary.js +0 -229
  118. package/lib/components/Icons/icon-set/registry.d.ts +0 -159
  119. package/lib/components/Icons/icon-set/registry.js +0 -172
  120. package/lib/components/Icons/icon-set/system.d.ts +0 -64
  121. package/lib/components/Icons/icon-set/system.js +0 -1100
  122. package/lib/components/Icons/illustrations/Illustrations.js +0 -881
  123. package/lib/components/Icons/illustrations/index.d.ts +0 -2
  124. package/lib/components/Icons/illustrations/index.js +0 -79
  125. package/lib/components/Icons/logos/Logo.js +0 -219
  126. package/lib/components/Icons/logos/index.d.ts +0 -2
  127. package/lib/components/Icons/logos/index.js +0 -49
  128. package/lib/components/Icons/primitives/IconHover.d.ts +0 -4
  129. package/lib/components/Icons/primitives/IconHover.js +0 -37
  130. package/lib/components/Icons/primitives/IconWrapper.js +0 -88
  131. package/lib/components/Icons/primitives/index.d.ts +0 -5
  132. package/lib/components/Icons/primitives/index.js +0 -25
  133. package/lib/components/Icons/primitives/interface.d.ts +0 -25
  134. package/lib/components/Icons/primitives/interface.js +0 -6
  135. package/lib/components/Icons/types.d.ts +0 -3
  136. package/lib/components/Icons/types.js +0 -8
@@ -0,0 +1,874 @@
1
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
+ var __rest = this && this.__rest || function (s, e) {
3
+ var t = {};
4
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
6
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
7
+ }
8
+ return t;
9
+ };
10
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
11
+ import { useId } from 'react';
12
+ import IconWrapper from './Wrapper';
13
+ var DEFAULT_BORDER_COLOR = '#131313';
14
+ var DEFAULT_ALERT_COLOR = '#AE0000';
15
+ var DEFAULT_PENDING_COLOR = '#F4C600';
16
+ var DEFAULT_GRADIENT_COLOR = ['#B9CCE4', 'white'];
17
+ var DEFAULT_FIGMA_STROKE_COLOR = '#131313';
18
+ var renderGradientStops = function renderGradientStops(gradientColor) {
19
+ var _ref = Array.isArray(gradientColor) ? gradientColor : [gradientColor, gradientColor],
20
+ _ref2 = _slicedToArray(_ref, 2),
21
+ startColor = _ref2[0],
22
+ endColor = _ref2[1];
23
+ return _jsxs(_Fragment, {
24
+ children: [_jsx("stop", {
25
+ stopColor: startColor
26
+ }), _jsx("stop", {
27
+ offset: "1",
28
+ stopColor: endColor
29
+ })]
30
+ });
31
+ };
32
+ export var IllusChecked = function IllusChecked(_a) {
33
+ var _a$borderColor = _a.borderColor,
34
+ borderColor = _a$borderColor === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor,
35
+ _a$gradientColor = _a.gradientColor,
36
+ gradientColor = _a$gradientColor === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor,
37
+ rest = __rest(_a, ["borderColor", "gradientColor"]);
38
+ var gradientId = useId();
39
+ return _jsxs(IconWrapper, Object.assign({
40
+ viewBox: "0 0 74 74"
41
+ }, rest, {
42
+ children: [_jsxs("g", {
43
+ transform: "translate(10 6)",
44
+ children: [_jsx("path", {
45
+ fillRule: "evenodd",
46
+ clipRule: "evenodd",
47
+ d: "M17 60H16.5V62H17H21H25H29H33H37H37.5V60H37H33H29H25H21H17Z",
48
+ fill: borderColor
49
+ }), _jsx("circle", {
50
+ cx: "27",
51
+ cy: "27",
52
+ r: "27",
53
+ fill: "white"
54
+ }), _jsx("circle", {
55
+ cx: "27",
56
+ cy: "27",
57
+ r: "26",
58
+ stroke: borderColor,
59
+ strokeWidth: "2",
60
+ fill: "transparent"
61
+ }), _jsx("circle", {
62
+ cx: "26.997",
63
+ cy: "27.0009",
64
+ r: "20.1064",
65
+ fill: "url(#".concat(gradientId, ")")
66
+ }), _jsx("circle", {
67
+ cx: "26.997",
68
+ cy: "27.0009",
69
+ r: "19.6064",
70
+ stroke: borderColor,
71
+ fill: "transparent"
72
+ }), _jsx("path", {
73
+ d: "M16 26.3462L24 34.5L37.5 20",
74
+ stroke: borderColor,
75
+ strokeWidth: "2",
76
+ fill: "transparent"
77
+ })]
78
+ }), _jsx("defs", {
79
+ children: _jsx("linearGradient", {
80
+ id: gradientId,
81
+ x1: "36.997",
82
+ y1: "12.89453",
83
+ x2: "36.997",
84
+ y2: "53.1073",
85
+ gradientUnits: "userSpaceOnUse",
86
+ children: renderGradientStops(gradientColor)
87
+ })
88
+ })]
89
+ }));
90
+ };
91
+ export var IllusEmailError = function IllusEmailError(_a) {
92
+ var _a$borderColor2 = _a.borderColor,
93
+ borderColor = _a$borderColor2 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor2,
94
+ _a$color = _a.color,
95
+ color = _a$color === void 0 ? DEFAULT_ALERT_COLOR : _a$color,
96
+ _a$gradientColor2 = _a.gradientColor,
97
+ gradientColor = _a$gradientColor2 === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor2,
98
+ rest = __rest(_a, ["borderColor", "color", "gradientColor"]);
99
+ var gradientId = useId();
100
+ return _jsxs(IconWrapper, Object.assign({
101
+ viewBox: "0 0 74 74"
102
+ }, rest, {
103
+ children: [_jsx("path", {
104
+ d: "M41 66H37V64H41V66ZM49 66H45V64H49V66Z",
105
+ fill: borderColor
106
+ }), _jsx("path", {
107
+ d: "M13 14C13 10.6863 15.6863 8 19 8L59 8C62.3137 8 65 10.6863 65 14V17.8824C65 18.5769 64.6397 19.2217 64.0482 19.5857L40.0482 34.355C39.4054 34.7505 38.5946 34.7505 37.9518 34.355L13.9518 19.5857C13.3603 19.2217 13 18.5769 13 17.8824V14Z",
108
+ fill: "url(#".concat(gradientId, ")")
109
+ }), _jsx("path", {
110
+ d: "M61 8C63.2091 8 65 9.79086 65 12V50C65 52.2091 63.2091 54 61 54H17C14.7909 54 13 52.2091 13 50V12C13 9.79086 14.7909 8 17 8H61ZM41.1895 35.5684C39.8596 36.4379 38.1404 36.4379 36.8105 35.5684L15 21.3076V52H63V21.3076L41.1895 35.5684ZM15 18.918L39 34.6104L63 18.918V10H15V18.918Z",
111
+ fill: borderColor
112
+ }), _jsx("circle", {
113
+ cx: "16",
114
+ cy: "48",
115
+ r: "13",
116
+ fill: color
117
+ }), _jsx("circle", {
118
+ cx: "16",
119
+ cy: "48",
120
+ r: "12",
121
+ stroke: borderColor,
122
+ strokeWidth: "2"
123
+ }), _jsx("path", {
124
+ fillRule: "evenodd",
125
+ clipRule: "evenodd",
126
+ d: "M10.3416 52.2411L11.7559 53.6553L15.9984 49.4128L20.2425 53.6569L21.6568 52.2427L17.4126 47.9986L21.6553 43.7558L20.2411 42.3416L15.9984 46.5844L11.7573 42.3432L10.343 43.7574L14.5842 47.9986L10.3416 52.2411Z",
127
+ fill: "white"
128
+ }), _jsx("rect", {
129
+ x: "30",
130
+ y: "64",
131
+ width: "21",
132
+ height: "2",
133
+ fill: borderColor
134
+ }), _jsx("defs", {
135
+ children: _jsx("linearGradient", {
136
+ id: gradientId,
137
+ x1: "39",
138
+ y1: "8",
139
+ x2: "39",
140
+ y2: "35",
141
+ gradientUnits: "userSpaceOnUse",
142
+ children: renderGradientStops(gradientColor)
143
+ })
144
+ })]
145
+ }));
146
+ };
147
+ export var IllusLinkExpired = function IllusLinkExpired(_a) {
148
+ var _a$borderColor3 = _a.borderColor,
149
+ borderColor = _a$borderColor3 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor3,
150
+ _a$color2 = _a.color,
151
+ color = _a$color2 === void 0 ? DEFAULT_ALERT_COLOR : _a$color2,
152
+ _a$gradientColor3 = _a.gradientColor,
153
+ gradientColor = _a$gradientColor3 === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor3,
154
+ rest = __rest(_a, ["borderColor", "color", "gradientColor"]);
155
+ var gradientId = useId();
156
+ return _jsxs(IconWrapper, Object.assign({
157
+ viewBox: "0 0 74 74"
158
+ }, rest, {
159
+ children: [_jsx("circle", {
160
+ cx: "36.9996",
161
+ cy: "36.9979",
162
+ r: "29.5909",
163
+ fill: "white"
164
+ }), _jsx("circle", {
165
+ cx: "37",
166
+ cy: "37",
167
+ r: "30",
168
+ stroke: borderColor,
169
+ strokeWidth: "2"
170
+ }), _jsx("circle", {
171
+ cx: "37",
172
+ cy: "37",
173
+ r: "24",
174
+ fill: "url(#".concat(gradientId, ")")
175
+ }), _jsx("circle", {
176
+ cx: "37",
177
+ cy: "37",
178
+ r: "23.5",
179
+ stroke: borderColor
180
+ }), _jsx("path", {
181
+ fillRule: "evenodd",
182
+ clipRule: "evenodd",
183
+ d: "M47.0743 26.8327C44.5082 24.3902 40.3476 24.3902 37.7815 26.8327L34.4629 29.9915C31.3969 32.9098 31.3969 37.6414 34.4629 40.5597L35.9115 39.1808C33.6456 37.024 33.6456 33.5272 35.9115 31.3704L39.2302 28.2116C40.9962 26.5307 43.8596 26.5307 45.6256 28.2116C47.3917 29.8926 47.3917 32.618 45.6256 34.299L43.5137 36.3091L44.9624 37.688L47.0743 35.6779C49.6404 33.2354 49.6404 29.2753 47.0743 26.8327ZM26.9241 47.1673C29.4902 49.6098 33.6507 49.6098 36.2169 47.1673L39.5355 44.0085C42.6015 41.0902 42.6015 36.3587 39.5355 33.4403L38.0868 34.8192C40.3527 36.976 40.3528 40.4728 38.0868 42.6296L34.7682 45.7884C33.0021 47.4693 30.1388 47.4693 28.3728 45.7884C26.6067 44.1074 26.6067 41.382 28.3728 39.701L30.4846 37.6909L29.036 36.312L26.9241 38.3221C24.358 40.7646 24.358 44.7247 26.9241 47.1673Z",
184
+ fill: borderColor
185
+ }), _jsx("circle", {
186
+ cx: "15",
187
+ cy: "58",
188
+ r: "13",
189
+ fill: color
190
+ }), _jsx("circle", {
191
+ cx: "15",
192
+ cy: "58",
193
+ r: "12",
194
+ stroke: borderColor,
195
+ strokeWidth: "2"
196
+ }), _jsx("path", {
197
+ fillRule: "evenodd",
198
+ clipRule: "evenodd",
199
+ d: "M13.5842 57.9986L9.34164 62.2411L10.7559 63.6553L14.9984 59.4128L19.2425 63.6569L20.6568 62.2427L16.4126 57.9986L20.6553 53.7558L19.2411 52.3416L14.9984 56.5844L10.7573 52.3432L9.34305 53.7574L13.5842 57.9986Z",
200
+ fill: "white"
201
+ }), _jsx("defs", {
202
+ children: _jsx("linearGradient", {
203
+ id: gradientId,
204
+ x1: "37",
205
+ y1: "13",
206
+ x2: "37",
207
+ y2: "61",
208
+ gradientUnits: "userSpaceOnUse",
209
+ children: renderGradientStops(gradientColor)
210
+ })
211
+ })]
212
+ }));
213
+ };
214
+ export var Illus2FA = function Illus2FA(_a) {
215
+ var _a$borderColor4 = _a.borderColor,
216
+ borderColor = _a$borderColor4 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor4,
217
+ _a$color3 = _a.color,
218
+ color = _a$color3 === void 0 ? DEFAULT_ALERT_COLOR : _a$color3,
219
+ _a$gradientColor4 = _a.gradientColor,
220
+ gradientColor = _a$gradientColor4 === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor4,
221
+ rest = __rest(_a, ["borderColor", "color", "gradientColor"]);
222
+ var gradientId = useId();
223
+ return _jsxs(IconWrapper, Object.assign({
224
+ viewBox: "0 0 74 74"
225
+ }, rest, {
226
+ children: [_jsx("path", {
227
+ d: "M47.7071 26.1213L46.2929 24.7071L32 39L24.7071 31.7071L23.2929 33.1213L32 41.8284L47.7071 26.1213Z",
228
+ fill: borderColor
229
+ }), _jsx("path", {
230
+ fillRule: "evenodd",
231
+ clipRule: "evenodd",
232
+ d: "M31.675 67.3393C33.0658 68.3327 34.9342 68.3327 36.325 67.3393L43.6217 62.1273C53.0704 55.3783 59.1201 44.8564 60.1991 33.2952L61.7016 17.1972C61.8759 15.3294 60.7288 13.5914 58.9429 13.0174L35.224 5.39344C34.4281 5.13759 33.5719 5.13759 32.776 5.39344L9.05706 13.0174C7.27115 13.5914 6.12408 15.3294 6.29841 17.1972L7.80088 33.2952C8.87994 44.8564 14.9296 55.3783 24.3783 62.1273L31.675 67.3393ZM59.8595 15.4127L34 7.10078L8.14055 15.4127L9.79223 33.1093C10.8173 44.0925 16.5645 54.0883 25.5407 60.4999L34 66.5422L42.4593 60.4999C51.4355 54.0883 57.1827 44.0925 58.2078 33.1093L59.8595 15.4127Z",
233
+ fill: borderColor
234
+ }), _jsx("circle", {
235
+ cx: "53",
236
+ cy: "54",
237
+ r: "15",
238
+ fill: "url(#".concat(gradientId, ")")
239
+ }), _jsx("circle", {
240
+ cx: "53",
241
+ cy: "54",
242
+ r: "14",
243
+ stroke: borderColor,
244
+ strokeWidth: "2"
245
+ }), _jsx("path", {
246
+ fillRule: "evenodd",
247
+ clipRule: "evenodd",
248
+ d: "M50.5 49.5C50.5 48.1193 51.6193 47 53 47C54.3807 47 55.5 48.1193 55.5 49.5V51H50.5V49.5ZM48.5 51V49.5C48.5 47.0147 50.5147 45 53 45C55.4853 45 57.5 47.0147 57.5 49.5V51H59H60V52V60V61H59H47H46V60V52V51H47H48.5ZM48 59V53H58V59H48Z",
249
+ fill: borderColor
250
+ }), _jsx("defs", {
251
+ children: _jsx("linearGradient", {
252
+ id: gradientId,
253
+ x1: "53",
254
+ y1: "39",
255
+ x2: "53",
256
+ y2: "69",
257
+ gradientUnits: "userSpaceOnUse",
258
+ children: renderGradientStops(gradientColor)
259
+ })
260
+ })]
261
+ }));
262
+ };
263
+ export var IllusLocked = function IllusLocked(_a) {
264
+ var _a$borderColor5 = _a.borderColor,
265
+ borderColor = _a$borderColor5 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor5,
266
+ _a$color4 = _a.color,
267
+ color = _a$color4 === void 0 ? DEFAULT_ALERT_COLOR : _a$color4,
268
+ _a$gradientColor5 = _a.gradientColor,
269
+ gradientColor = _a$gradientColor5 === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor5,
270
+ rest = __rest(_a, ["borderColor", "color", "gradientColor"]);
271
+ var svgId = useId().replace(/:/g, '');
272
+ var gradientId = "illus-locked-gradient-".concat(svgId);
273
+ var lockedBorderColor = borderColor === DEFAULT_BORDER_COLOR ? DEFAULT_FIGMA_STROKE_COLOR : borderColor;
274
+ return _jsxs(IconWrapper, Object.assign({
275
+ viewBox: "0 0 74 74"
276
+ }, rest, {
277
+ children: [_jsx("path", {
278
+ d: "M39 3C48.9411 3 57 11.0589 57 21V28H65C66.1046 28 67 28.8954 67 30V64C67 65.1046 66.1046 66 65 66H13C11.8954 66 11 65.1046 11 64V30C11 28.8954 11.8954 28 13 28H21V21C21 11.0589 29.0589 3 39 3ZM39 11C33.4772 11 29 15.4772 29 21V28H49V21C49 15.4772 44.5229 11 39 11Z",
279
+ fill: "white"
280
+ }), _jsx("rect", {
281
+ x: "67",
282
+ y: "66",
283
+ width: "56",
284
+ height: "37",
285
+ rx: "4",
286
+ transform: "rotate(-180 67 66)",
287
+ fill: "url(#".concat(gradientId, ")")
288
+ }), _jsx("path", {
289
+ d: "M65 64V66H13V64H65ZM65 30H55V21C55 12.1634 47.8366 5 39 5C30.1634 5 23 12.1634 23 21V30H13V66C11.8954 66 11 65.1046 11 64V30C11 28.8954 11.8954 28 13 28H21V21C21 11.0589 29.0589 3 39 3C48.9411 3 57 11.0589 57 21V28H65C66.1046 28 67 28.8954 67 30V64C67 65.1046 66.1046 66 65 66V30ZM49 28V21C49 15.4772 44.5229 11 39 11C33.4772 11 29 15.4772 29 21V28H49ZM51 30H27V21C27 14.3726 32.3726 9 39 9C45.6274 9 51 14.3726 51 21V30Z",
290
+ fill: lockedBorderColor
291
+ }), _jsx("circle", {
292
+ cx: "14",
293
+ cy: "58",
294
+ r: "13",
295
+ fill: color
296
+ }), _jsx("circle", {
297
+ cx: "14",
298
+ cy: "58",
299
+ r: "12",
300
+ stroke: lockedBorderColor,
301
+ strokeWidth: "2"
302
+ }), _jsx("path", {
303
+ d: "M15.4128 57.9986L19.6569 62.2426L18.2426 63.6568L13.9986 59.4128L9.75598 63.6555L8.34176 62.2412L12.5844 57.9986L8.34315 53.7573L9.75736 52.3431L13.9986 56.5844L18.2413 52.3418L19.6555 53.756L15.4128 57.9986Z",
304
+ fill: "white"
305
+ }), _jsx("defs", {
306
+ children: _jsx("linearGradient", {
307
+ id: gradientId,
308
+ x1: "95",
309
+ y1: "66",
310
+ x2: "95",
311
+ y2: "103",
312
+ gradientUnits: "userSpaceOnUse",
313
+ children: renderGradientStops(gradientColor)
314
+ })
315
+ })]
316
+ }));
317
+ };
318
+ export var IllusError = function IllusError(_a) {
319
+ var _a$borderColor6 = _a.borderColor,
320
+ borderColor = _a$borderColor6 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor6,
321
+ _a$color5 = _a.color,
322
+ color = _a$color5 === void 0 ? DEFAULT_ALERT_COLOR : _a$color5,
323
+ rest = __rest(_a, ["borderColor", "color"]);
324
+ return _jsxs(IconWrapper, Object.assign({
325
+ viewBox: "0 0 74 74"
326
+ }, rest, {
327
+ children: [_jsx("path", {
328
+ d: "M12 59C12 55.6863 14.6863 53 18 53H56C59.3137 53 62 55.6863 62 59C62 62.3137 59.3137 65 56 65H18C14.6863 65 12 62.3137 12 59Z",
329
+ fill: color
330
+ }), _jsx("path", {
331
+ d: "M36 37V22H38V37H36Z",
332
+ fill: borderColor
333
+ }), _jsx("path", {
334
+ d: "M37 40C35.8954 40 35 40.8954 35 42C35 43.1046 35.8954 44 37 44C38.1046 44 39 43.1046 39 42C39 40.8954 38.1046 40 37 40Z",
335
+ fill: borderColor
336
+ }), _jsx("path", {
337
+ fillRule: "evenodd",
338
+ clipRule: "evenodd",
339
+ d: "M16.2308 53L7.84256 41.3164C6.76234 39.8118 6.85635 37.7624 8.06979 36.3631L33.9779 6.48512C35.5729 4.64582 38.4271 4.64582 40.0221 6.48512L65.9302 36.3631C67.1436 37.7624 67.2377 39.8118 66.1574 41.3164L57.7692 53H58C60.2091 53 62 54.7909 62 57V61C62 63.2091 60.2091 65 58 65H16C13.7909 65 12 63.2091 12 61V57C12 54.7909 13.7909 53 16 53H16.2308ZM37 6.05282L65.4541 38.8668L55.3072 53H18.6928L8.54593 38.8668L37 6.05282ZM60 55V63H14V55H60Z",
340
+ fill: borderColor
341
+ })]
342
+ }));
343
+ };
344
+ export var IllusRegionNotSupported = function IllusRegionNotSupported(_a) {
345
+ var _a$borderColor7 = _a.borderColor,
346
+ borderColor = _a$borderColor7 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor7,
347
+ _a$color6 = _a.color,
348
+ color = _a$color6 === void 0 ? DEFAULT_ALERT_COLOR : _a$color6,
349
+ _a$gradientColor6 = _a.gradientColor,
350
+ gradientColor = _a$gradientColor6 === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor6,
351
+ rest = __rest(_a, ["borderColor", "color", "gradientColor"]);
352
+ var gradientId = useId();
353
+ return _jsxs(IconWrapper, Object.assign({
354
+ viewBox: "0 0 74 74"
355
+ }, rest, {
356
+ children: [_jsx("rect", {
357
+ width: "74",
358
+ height: "74",
359
+ fill: "white"
360
+ }), _jsx("path", {
361
+ fillRule: "evenodd",
362
+ clipRule: "evenodd",
363
+ d: "M20.8809 38.6129L14.5057 60.129H67.4943L61.1191 38.6129H20.8809ZM63.3099 39.4208C62.8391 37.8319 61.3793 36.7419 59.7221 36.7419H22.2779C20.6207 36.7419 19.1609 37.8319 18.6901 39.4208L13.4237 57.195C12.7131 59.5932 14.5102 62 17.0115 62H64.9885C67.4898 62 69.2869 59.5932 68.5763 57.195L63.3099 39.4208Z",
364
+ fill: borderColor
365
+ }), _jsx("path", {
366
+ d: "M28.7911 9.05709C35.5338 2.31432 46.466 2.31432 53.2088 9.05709C59.4298 15.2781 59.9783 25.1819 54.4824 32.0519L40.9999 48.9049L27.5175 32.0519C22.0215 25.1819 22.5701 15.2781 28.7911 9.05709Z",
367
+ fill: "url(#".concat(gradientId, ")")
368
+ }), _jsx("path", {
369
+ fillRule: "evenodd",
370
+ clipRule: "evenodd",
371
+ d: "M41.0004 45.9099L53.0219 30.8831C57.9223 24.7576 57.4332 15.9269 51.8863 10.38C45.8742 4.36794 36.1266 4.36794 30.1145 10.38C24.5676 15.9269 24.0786 24.7576 28.979 30.8831L41.0004 45.9099ZM42.1984 47.4074L54.4828 32.0519C59.9788 25.1819 59.4303 15.2781 53.2093 9.05707C46.4665 2.31431 35.5343 2.31431 28.7916 9.05707C22.5706 15.2781 22.022 25.1819 27.518 32.0519L39.8024 47.4074L41.0004 48.9049L42.1984 47.4074Z",
372
+ fill: borderColor
373
+ }), _jsx("circle", {
374
+ cx: "41",
375
+ cy: "21.7742",
376
+ r: "7.48387",
377
+ fill: "white"
378
+ }), _jsx("circle", {
379
+ cx: "41",
380
+ cy: "21.7742",
381
+ r: "6.54839",
382
+ stroke: borderColor,
383
+ strokeWidth: "1.87097"
384
+ }), _jsx("rect", {
385
+ x: "19.4839",
386
+ y: "55.4516",
387
+ width: "5.6129",
388
+ height: "1.87097",
389
+ fill: borderColor
390
+ }), _jsx("rect", {
391
+ x: "28.8389",
392
+ y: "55.4516",
393
+ width: "5.6129",
394
+ height: "1.87097",
395
+ fill: borderColor
396
+ }), _jsx("rect", {
397
+ x: "38.1934",
398
+ y: "55.4516",
399
+ width: "5.6129",
400
+ height: "1.87097",
401
+ fill: borderColor
402
+ }), _jsx("rect", {
403
+ x: "47.5483",
404
+ y: "55.4516",
405
+ width: "5.6129",
406
+ height: "1.87097",
407
+ fill: borderColor
408
+ }), _jsx("rect", {
409
+ x: "56.9033",
410
+ y: "55.4516",
411
+ width: "5.6129",
412
+ height: "1.87097",
413
+ fill: borderColor
414
+ }), _jsx("circle", {
415
+ cx: "16",
416
+ cy: "57",
417
+ r: "13",
418
+ fill: color
419
+ }), _jsx("circle", {
420
+ cx: "16",
421
+ cy: "57",
422
+ r: "12",
423
+ stroke: borderColor,
424
+ strokeWidth: "2"
425
+ }), _jsx("path", {
426
+ fillRule: "evenodd",
427
+ clipRule: "evenodd",
428
+ d: "M14.5842 56.9986L10.3416 61.2411L11.7559 62.6553L15.9984 58.4128L20.2425 62.6569L21.6568 61.2427L17.4126 56.9986L21.6553 52.7558L20.2411 51.3416L15.9984 55.5844L11.7573 51.3432L10.343 52.7574L14.5842 56.9986Z",
429
+ fill: "white"
430
+ }), _jsx("defs", {
431
+ children: _jsx("linearGradient", {
432
+ id: gradientId,
433
+ x1: "40.9999",
434
+ y1: "4.00002",
435
+ x2: "40.9999",
436
+ y2: "48.9049",
437
+ gradientUnits: "userSpaceOnUse",
438
+ children: renderGradientStops(gradientColor)
439
+ })
440
+ })]
441
+ }));
442
+ };
443
+ export var IllusID = function IllusID(_a) {
444
+ var _a$borderColor8 = _a.borderColor,
445
+ borderColor = _a$borderColor8 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor8,
446
+ _a$gradientColor7 = _a.gradientColor,
447
+ gradientColor = _a$gradientColor7 === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor7,
448
+ rest = __rest(_a, ["borderColor", "gradientColor"]);
449
+ var gradientId0 = useId();
450
+ var gradientId1 = useId();
451
+ var gradientId2 = useId();
452
+ return _jsxs(IconWrapper, Object.assign({
453
+ viewBox: "0 0 74 74"
454
+ }, rest, {
455
+ children: [_jsx("path", {
456
+ d: "M11 50H63V59H11V50Z",
457
+ fill: "url(#".concat(gradientId0, ")")
458
+ }), _jsx("rect", {
459
+ x: "15",
460
+ y: "34",
461
+ width: "18",
462
+ height: "8",
463
+ fill: "url(#".concat(gradientId1, ")")
464
+ }), _jsx("circle", {
465
+ cx: "24",
466
+ cy: "24",
467
+ r: "5",
468
+ fill: "url(#".concat(gradientId2, ")")
469
+ }), _jsx("path", {
470
+ fillRule: "evenodd",
471
+ clipRule: "evenodd",
472
+ d: "M18 32C15.7909 32 14 33.7909 14 36V43H34V36C34 33.7909 32.2091 32 30 32H18ZM32 41V34H16V41H32Z",
473
+ fill: borderColor
474
+ }), _jsx("path", {
475
+ fillRule: "evenodd",
476
+ clipRule: "evenodd",
477
+ d: "M30 24C30 27.3137 27.3137 30 24 30C20.6863 30 18 27.3137 18 24C18 20.6863 20.6863 18 24 18C27.3137 18 30 20.6863 30 24ZM28 24C28 26.2091 26.2091 28 24 28C21.7909 28 20 26.2091 20 24C20 21.7909 21.7909 20 24 20C26.2091 20 28 21.7909 28 24Z",
478
+ fill: borderColor
479
+ }), _jsx("path", {
480
+ d: "M59 21H42V19H59V21Z",
481
+ fill: borderColor
482
+ }), _jsx("path", {
483
+ d: "M42 28H59V26H42V28Z",
484
+ fill: borderColor
485
+ }), _jsx("path", {
486
+ d: "M59 35H42V33H59V35Z",
487
+ fill: borderColor
488
+ }), _jsx("path", {
489
+ d: "M42 42H49V40H42V42Z",
490
+ fill: borderColor
491
+ }), _jsx("path", {
492
+ d: "M59 42H52V40H59V42Z",
493
+ fill: borderColor
494
+ }), _jsx("path", {
495
+ fillRule: "evenodd",
496
+ clipRule: "evenodd",
497
+ d: "M63 52H64C66.2091 52 68 50.2091 68 48V13C68 10.7909 66.2091 9 64 9H10C7.79086 9 6 10.7909 6 13V48C6 50.2091 7.79086 52 10 52H11V55C11 57.2091 12.7909 59 15 59H59C61.2091 59 63 57.2091 63 55V52ZM66 11H8V50H66V11ZM61 52H13V57H61V52Z",
498
+ fill: borderColor
499
+ }), _jsx("rect", {
500
+ x: "27",
501
+ y: "64",
502
+ width: "21",
503
+ height: "2",
504
+ fill: borderColor
505
+ }), _jsxs("defs", {
506
+ children: [_jsx("linearGradient", {
507
+ id: gradientId0,
508
+ x1: "37",
509
+ y1: "50",
510
+ x2: "37",
511
+ y2: "59",
512
+ gradientUnits: "userSpaceOnUse",
513
+ children: renderGradientStops(gradientColor)
514
+ }), _jsx("linearGradient", {
515
+ id: gradientId1,
516
+ x1: "24",
517
+ y1: "34",
518
+ x2: "24",
519
+ y2: "42",
520
+ gradientUnits: "userSpaceOnUse",
521
+ children: renderGradientStops(gradientColor)
522
+ }), _jsx("linearGradient", {
523
+ id: gradientId2,
524
+ x1: "24",
525
+ y1: "19",
526
+ x2: "24",
527
+ y2: "29",
528
+ gradientUnits: "userSpaceOnUse",
529
+ children: renderGradientStops(gradientColor)
530
+ })]
531
+ })]
532
+ }));
533
+ };
534
+ export var IllusVerification = function IllusVerification(_a) {
535
+ var _a$borderColor9 = _a.borderColor,
536
+ borderColor = _a$borderColor9 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor9,
537
+ _a$gradientColor8 = _a.gradientColor,
538
+ gradientColor = _a$gradientColor8 === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor8,
539
+ rest = __rest(_a, ["borderColor", "gradientColor"]);
540
+ var gradientId0 = useId();
541
+ var gradientId1 = useId();
542
+ return _jsxs(IconWrapper, Object.assign({
543
+ viewBox: "0 0 74 74"
544
+ }, rest, {
545
+ children: [_jsx("path", {
546
+ d: "M10 6C7.79086 6 6 7.79086 6 10V19H8V8H19V6H10Z",
547
+ fill: borderColor
548
+ }), _jsx("path", {
549
+ d: "M64 6C66.2091 6 68 7.79086 68 10V19H66V8H55V6H64Z",
550
+ fill: borderColor
551
+ }), _jsx("path", {
552
+ d: "M64 68C66.2091 68 68 66.2091 68 64V55H66V66H55V68H64Z",
553
+ fill: borderColor
554
+ }), _jsx("path", {
555
+ d: "M68 10C68 7.79086 66.2091 6 64 6L55 6L55 8L66 8L66 19L68 19L68 10Z",
556
+ fill: borderColor
557
+ }), _jsx("path", {
558
+ d: "M68 64C68 66.2091 66.2091 68 64 68L55 68L55 66L66 66L66 55L68 55L68 64Z",
559
+ fill: borderColor
560
+ }), _jsx("path", {
561
+ d: "M6 64C6 66.2091 7.79086 68 10 68L19 68L19 66L8 66L8 55L6 55L6 64Z",
562
+ fill: borderColor
563
+ }), _jsx("path", {
564
+ d: "M42.4546 26.8544V12.9453L57.1819 26.8544H42.4546Z",
565
+ fill: "url(#".concat(gradientId0, ")")
566
+ }), _jsx("path", {
567
+ d: "M49.8185 35.0359H29.3639V33.3995H49.8185V35.0359Z",
568
+ fill: borderColor
569
+ }), _jsx("path", {
570
+ d: "M29.3639 39.1268H32.6367V40.7631H29.3639V39.1268Z",
571
+ fill: borderColor
572
+ }), _jsx("path", {
573
+ d: "M35.0912 39.1268H38.3639V40.7631H35.0912V39.1268Z",
574
+ fill: borderColor
575
+ }), _jsx("path", {
576
+ d: "M44.0912 40.7631V39.1268H40.8185V40.7631H44.0912Z",
577
+ fill: borderColor
578
+ }), _jsx("path", {
579
+ d: "M46.5458 39.1268H49.8185V40.7631H46.5458V39.1268Z",
580
+ fill: borderColor
581
+ }), _jsx("path", {
582
+ fillRule: "evenodd",
583
+ clipRule: "evenodd",
584
+ d: "M41.9719 12.1268C42.8075 12.1268 43.6115 12.4464 44.219 13.0202L56.9747 25.0672C57.6293 25.6855 58.0003 26.5461 58.0003 27.4466V54.6722C58.0003 56.4797 56.5351 57.945 54.7276 57.945H24.4549C22.6474 57.945 21.1821 56.4797 21.1821 54.6722V15.3995C21.1821 13.592 22.6474 12.1268 24.4549 12.1268H41.9719ZM56.3639 56.3086H22.8185V13.7631H41.6367V24.3995C41.6367 26.207 43.1019 27.6722 44.9094 27.6722H56.3639V56.3086ZM55.6171 26.0359L43.273 14.3776V26.0359H55.6171Z",
585
+ fill: borderColor
586
+ }), _jsx("circle", {
587
+ cx: "24.4546",
588
+ cy: "51.4005",
589
+ r: "9",
590
+ fill: "url(#".concat(gradientId1, ")")
591
+ }), _jsx("circle", {
592
+ cx: "24.4546",
593
+ cy: "51.4005",
594
+ r: "8.18182",
595
+ stroke: borderColor,
596
+ strokeWidth: "1.63636"
597
+ }), _jsx("path", {
598
+ d: "M18.7273 57.127L13 62.8542",
599
+ stroke: borderColor,
600
+ strokeWidth: "1.63636"
601
+ }), _jsxs("defs", {
602
+ children: [_jsx("linearGradient", {
603
+ id: gradientId0,
604
+ x1: "49.8182",
605
+ y1: "12.9453",
606
+ x2: "49.8182",
607
+ y2: "26.8544",
608
+ gradientUnits: "userSpaceOnUse",
609
+ children: renderGradientStops(gradientColor)
610
+ }), _jsx("linearGradient", {
611
+ id: gradientId1,
612
+ x1: "24.4546",
613
+ y1: "42.4005",
614
+ x2: "24.4546",
615
+ y2: "60.4005",
616
+ gradientUnits: "userSpaceOnUse",
617
+ children: renderGradientStops(gradientColor)
618
+ })]
619
+ })]
620
+ }));
621
+ };
622
+ export var IllusPasskey = function IllusPasskey(_a) {
623
+ var _a$borderColor10 = _a.borderColor,
624
+ borderColor = _a$borderColor10 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor10,
625
+ _a$gradientColor9 = _a.gradientColor,
626
+ gradientColor = _a$gradientColor9 === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor9,
627
+ rest = __rest(_a, ["borderColor", "gradientColor"]);
628
+ var gradientId0 = useId();
629
+ var gradientId1 = useId();
630
+ var gradientId2 = useId();
631
+ var badgeGradientId = useId();
632
+ return _jsxs(IconWrapper, Object.assign({
633
+ viewBox: "0 0 74 74"
634
+ }, rest, {
635
+ children: [_jsx("path", {
636
+ d: "M11 52H63V61H11V52Z",
637
+ fill: "url(#".concat(gradientId0, ")")
638
+ }), _jsx("rect", {
639
+ x: "15",
640
+ y: "36",
641
+ width: "18",
642
+ height: "8",
643
+ fill: "url(#".concat(gradientId1, ")")
644
+ }), _jsx("circle", {
645
+ cx: "24",
646
+ cy: "26",
647
+ r: "5",
648
+ fill: "url(#".concat(gradientId2, ")")
649
+ }), _jsx("path", {
650
+ fillRule: "evenodd",
651
+ clipRule: "evenodd",
652
+ d: "M18 34C15.7909 34 14 35.7909 14 38V45H34V38C34 35.7909 32.2091 34 30 34H18ZM32 43V36H16V43H32Z",
653
+ fill: borderColor
654
+ }), _jsx("path", {
655
+ fillRule: "evenodd",
656
+ clipRule: "evenodd",
657
+ d: "M30 26C30 29.3137 27.3137 32 24 32C20.6863 32 18 29.3137 18 26C18 22.6863 20.6863 20 24 20C27.3137 20 30 22.6863 30 26ZM28 26C28 28.2091 26.2091 30 24 30C21.7909 30 20 28.2091 20 26C20 23.7909 21.7909 22 24 22C26.2091 22 28 23.7909 28 26Z",
658
+ fill: borderColor
659
+ }), _jsx("path", {
660
+ d: "M59 23H42V21H59V23Z",
661
+ fill: borderColor
662
+ }), _jsx("path", {
663
+ d: "M42 30H59V28H42V30Z",
664
+ fill: borderColor
665
+ }), _jsx("path", {
666
+ d: "M59 37H42V35H59V37Z",
667
+ fill: borderColor
668
+ }), _jsx("path", {
669
+ d: "M42 44H49V42H42V44Z",
670
+ fill: borderColor
671
+ }), _jsx("path", {
672
+ d: "M59 44H52V42H59V44Z",
673
+ fill: borderColor
674
+ }), _jsx("path", {
675
+ fillRule: "evenodd",
676
+ clipRule: "evenodd",
677
+ d: "M63 54H64C66.2091 54 68 52.2091 68 50V15C68 12.7909 66.2091 11 64 11H10C7.79086 11 6 12.7909 6 15V50C6 52.2091 7.79086 54 10 54H11V57C11 59.2091 12.7909 61 15 61H59C61.2091 61 63 59.2091 63 57V54ZM66 13H8V52H66V13ZM61 54H13V59H61V54Z",
678
+ fill: borderColor
679
+ }), _jsx("rect", {
680
+ x: "27",
681
+ y: "66",
682
+ width: "21",
683
+ height: "2",
684
+ fill: borderColor
685
+ }), _jsx("circle", {
686
+ cx: "59",
687
+ cy: "15",
688
+ r: "15",
689
+ fill: "url(#".concat(badgeGradientId, ")")
690
+ }), _jsx("circle", {
691
+ cx: "59",
692
+ cy: "15",
693
+ r: "14",
694
+ stroke: borderColor,
695
+ strokeWidth: "2"
696
+ }), _jsx("g", {
697
+ transform: "translate(50.6667 6.8333)",
698
+ children: _jsx("path", {
699
+ fillRule: "evenodd",
700
+ clipRule: "evenodd",
701
+ d: "M1.66667 1.66667H15V5.48801C15 10.1102 12.4249 14.3413 8.33333 16.4682C4.24177 14.3413 1.66667 10.1102 1.66667 5.48801V1.66667ZM0 1.66667C0 0.746192 0.746192 0 1.66667 0H15C15.9205 0 16.6667 0.746192 16.6667 1.66667V5.48801C16.6667 10.8069 13.6616 15.6692 8.90424 18.0479C8.54484 18.2276 8.12182 18.2276 7.76243 18.0479C3.0051 15.6692 0 10.8069 0 5.48801V1.66667ZM8.33333 6.2498C8.79357 6.2498 9.16667 5.8767 9.16667 5.41646C9.16667 4.95623 8.79357 4.58313 8.33333 4.58313C7.8731 4.58313 7.5 4.95623 7.5 5.41646C7.5 5.8767 7.8731 6.2498 8.33333 6.2498ZM10.8333 5.41646C10.8333 6.50498 10.1377 7.43101 9.16667 7.77421V9.9998H10.8333V11.6665H9.16667V13.3331H7.5V7.77421C6.52901 7.43101 5.83333 6.50498 5.83333 5.41646C5.83333 4.03575 6.95262 2.91646 8.33333 2.91646C9.71405 2.91646 10.8333 4.03575 10.8333 5.41646Z",
702
+ fill: borderColor
703
+ })
704
+ }), _jsxs("defs", {
705
+ children: [_jsx("linearGradient", {
706
+ id: gradientId0,
707
+ x1: "37",
708
+ y1: "52",
709
+ x2: "37",
710
+ y2: "61",
711
+ gradientUnits: "userSpaceOnUse",
712
+ children: renderGradientStops(gradientColor)
713
+ }), _jsx("linearGradient", {
714
+ id: gradientId1,
715
+ x1: "24",
716
+ y1: "36",
717
+ x2: "24",
718
+ y2: "44",
719
+ gradientUnits: "userSpaceOnUse",
720
+ children: renderGradientStops(gradientColor)
721
+ }), _jsx("linearGradient", {
722
+ id: gradientId2,
723
+ x1: "24",
724
+ y1: "21",
725
+ x2: "24",
726
+ y2: "31",
727
+ gradientUnits: "userSpaceOnUse",
728
+ children: renderGradientStops(gradientColor)
729
+ }), _jsx("linearGradient", {
730
+ id: badgeGradientId,
731
+ x1: "59",
732
+ y1: "0",
733
+ x2: "59",
734
+ y2: "30",
735
+ gradientUnits: "userSpaceOnUse",
736
+ children: renderGradientStops(gradientColor)
737
+ })]
738
+ })]
739
+ }));
740
+ };
741
+ export var IllusPending = function IllusPending(_a) {
742
+ var _a$borderColor11 = _a.borderColor,
743
+ borderColor = _a$borderColor11 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor11,
744
+ _a$color7 = _a.color,
745
+ color = _a$color7 === void 0 ? DEFAULT_PENDING_COLOR : _a$color7,
746
+ _a$gradientColor10 = _a.gradientColor,
747
+ gradientColor = _a$gradientColor10 === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor10,
748
+ rest = __rest(_a, ["borderColor", "color", "gradientColor"]);
749
+ var gradientId = useId();
750
+ return _jsxs(IconWrapper, Object.assign({
751
+ viewBox: "0 0 74 74"
752
+ }, rest, {
753
+ children: [_jsx("circle", {
754
+ cx: "36.9972",
755
+ cy: "36.9981",
756
+ r: "29.5909",
757
+ fill: "white"
758
+ }), _jsx("circle", {
759
+ cx: "37",
760
+ cy: "37",
761
+ r: "30",
762
+ stroke: borderColor,
763
+ strokeWidth: "2"
764
+ }), _jsx("circle", {
765
+ cx: "37",
766
+ cy: "37",
767
+ r: "24",
768
+ fill: "url(#".concat(gradientId, ")")
769
+ }), _jsx("circle", {
770
+ cx: "37",
771
+ cy: "37",
772
+ r: "23.5",
773
+ stroke: borderColor
774
+ }), _jsx("circle", {
775
+ cx: "15",
776
+ cy: "58",
777
+ r: "13",
778
+ fill: color
779
+ }), _jsx("path", {
780
+ d: "M15 52V58L21 61",
781
+ stroke: borderColor,
782
+ strokeWidth: "2"
783
+ }), _jsx("circle", {
784
+ cx: "15",
785
+ cy: "58",
786
+ r: "12",
787
+ stroke: borderColor,
788
+ strokeWidth: "2"
789
+ }), _jsx("path", {
790
+ transform: "translate(74 0) scale(-1 1)",
791
+ fillRule: "evenodd",
792
+ clipRule: "evenodd",
793
+ d: "M30.4144 31.0001L33.7073 34.293L32.293 35.7072L26.5859 30.0001L32.293 24.293L33.7073 25.7072L30.4144 29.0001L40.0002 29.0001C43.8661 29.0001 47.0002 32.1341 47.0002 36.0001L45.0002 36.0001C45.0002 33.2387 42.7616 31.0001 40.0002 31.0001L30.4144 31.0001ZM29.0002 36.0001C29.0002 38.7615 31.2387 41.0001 34.0002 41.0001H43.5859L40.293 37.7072L41.7073 36.293L47.4144 42.0001L41.7073 47.7072L40.293 46.293L43.5859 43.0001H34.0002C30.1342 43.0001 27.0002 39.8661 27.0002 36.0001H29.0002Z",
794
+ fill: borderColor
795
+ }), _jsx("defs", {
796
+ children: _jsx("linearGradient", {
797
+ id: gradientId,
798
+ x1: "37",
799
+ y1: "13",
800
+ x2: "37",
801
+ y2: "61",
802
+ gradientUnits: "userSpaceOnUse",
803
+ children: renderGradientStops(gradientColor)
804
+ })
805
+ })]
806
+ }));
807
+ };
808
+ export var IllusAddAccount = function IllusAddAccount(_a) {
809
+ var _a$borderColor12 = _a.borderColor,
810
+ borderColor = _a$borderColor12 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor12,
811
+ _a$gradientColor11 = _a.gradientColor,
812
+ gradientColor = _a$gradientColor11 === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor11,
813
+ rest = __rest(_a, ["borderColor", "gradientColor"]);
814
+ var cardGradientId = useId();
815
+ var badgeGradientId = useId();
816
+ return _jsxs(IconWrapper, Object.assign({
817
+ viewBox: "0 0 74 74"
818
+ }, rest, {
819
+ children: [_jsx("rect", {
820
+ width: "74",
821
+ height: "74",
822
+ fill: "white"
823
+ }), _jsx("rect", {
824
+ x: "22.5",
825
+ y: "26",
826
+ width: "30",
827
+ height: "28",
828
+ fill: "url(#".concat(cardGradientId, ")")
829
+ }), _jsx("path", {
830
+ d: "M37.5 14.5C35.8431 14.5 34.5 15.8431 34.5 17.5C34.5 19.1569 35.8431 20.5 37.5 20.5C39.1569 20.5 40.5 19.1569 40.5 17.5C40.5 15.8431 39.1569 14.5 37.5 14.5Z",
831
+ fill: borderColor
832
+ }), _jsx("path", {
833
+ fillRule: "evenodd",
834
+ clipRule: "evenodd",
835
+ d: "M60.5 27L64.5 27C66.7091 27 68.5 25.2091 68.5 23L68.5 20.7408C68.5 19.0889 67.4845 17.6069 65.944 17.0106L38.944 6.55896C38.0149 6.19932 36.9851 6.19932 36.056 6.55896L9.05602 17.0106C7.51549 17.6069 6.5 19.0889 6.5 20.7408L6.5 23C6.5 25.2091 8.29086 27 10.5 27L14.5 27L14.5 53L13.5 53C11.2909 53 9.5 54.7909 9.5 57L9.5 59L8.5 59C6.29086 59 4.5 60.7909 4.5 63L4.5 67L70.5 67L70.5 63C70.5 60.7909 68.7091 59 66.5 59L64.5 59L64.5 57C64.5 54.7909 62.7091 53 60.5 53L60.5 27ZM66.5 19.3704L37.5 8.14462L8.5 19.3704L8.5 25L66.5 25L66.5 19.3704ZM58.5 27L53.5 27L53.5 53L58.5 53L58.5 27ZM51.5 53L51.5 27L23.5 27L23.5 53L51.5 53ZM11.5 55L11.5 59L62.5 59L62.5 55L11.5 55ZM21.5 53L16.5 53L16.5 27L21.5 27L21.5 53ZM6.5 61L6.5 65L68.5 65L68.5 61L6.5 61Z",
836
+ fill: borderColor
837
+ }), _jsx("circle", {
838
+ cx: "59.8848",
839
+ cy: "59.3848",
840
+ r: "13",
841
+ transform: "rotate(-45 59.8848 59.3848)",
842
+ fill: "url(#".concat(badgeGradientId, ")")
843
+ }), _jsx("circle", {
844
+ cx: "59.8848",
845
+ cy: "59.3848",
846
+ r: "12",
847
+ transform: "rotate(-45 59.8848 59.3848)",
848
+ stroke: borderColor,
849
+ strokeWidth: "2"
850
+ }), _jsx("path", {
851
+ d: "M60.8828 58.3848H66.8848V60.3848H60.8828V66.3848H58.8828V60.3848H52.8848V58.3848H58.8828V52.3848H60.8828V58.3848Z",
852
+ fill: borderColor
853
+ }), _jsxs("defs", {
854
+ children: [_jsx("linearGradient", {
855
+ id: cardGradientId,
856
+ x1: "37.5",
857
+ y1: "26",
858
+ x2: "37.5",
859
+ y2: "54",
860
+ gradientUnits: "userSpaceOnUse",
861
+ children: renderGradientStops(gradientColor)
862
+ }), _jsx("linearGradient", {
863
+ id: badgeGradientId,
864
+ x1: "59.8848",
865
+ y1: "46.3848",
866
+ x2: "59.8848",
867
+ y2: "72.3848",
868
+ gradientUnits: "userSpaceOnUse",
869
+ children: renderGradientStops(gradientColor)
870
+ })]
871
+ })]
872
+ }));
873
+ };
874
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvSWNvbnMvSWxsdXN0cmF0aW9ucy5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvSWNvbnMvSWxsdXN0cmF0aW9ucy50c3giXSwibmFtZXMiOlsiX19yZXN0IiwicyIsImUiLCJ0IiwicCIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJpIiwibGVuZ3RoIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJqc3giLCJfanN4IiwiRnJhZ21lbnQiLCJfRnJhZ21lbnQiLCJqc3hzIiwiX2pzeHMiLCJ1c2VJZCIsIkljb25XcmFwcGVyIiwiREVGQVVMVF9CT1JERVJfQ09MT1IiLCJERUZBVUxUX0FMRVJUX0NPTE9SIiwiREVGQVVMVF9QRU5ESU5HX0NPTE9SIiwiREVGQVVMVF9HUkFESUVOVF9DT0xPUiIsIkRFRkFVTFRfRklHTUFfU1RST0tFX0NPTE9SIiwicmVuZGVyR3JhZGllbnRTdG9wcyIsImdyYWRpZW50Q29sb3IiLCJfcmVmIiwiQXJyYXkiLCJpc0FycmF5IiwiX3JlZjIiLCJfc2xpY2VkVG9BcnJheSIsInN0YXJ0Q29sb3IiLCJlbmRDb2xvciIsImNoaWxkcmVuIiwic3RvcENvbG9yIiwib2Zmc2V0IiwiSWxsdXNDaGVja2VkIiwiX2EiLCJfYSRib3JkZXJDb2xvciIsImJvcmRlckNvbG9yIiwiX2EkZ3JhZGllbnRDb2xvciIsInJlc3QiLCJncmFkaWVudElkIiwiYXNzaWduIiwidmlld0JveCIsInRyYW5zZm9ybSIsImZpbGxSdWxlIiwiY2xpcFJ1bGUiLCJkIiwiZmlsbCIsImN4IiwiY3kiLCJyIiwic3Ryb2tlIiwic3Ryb2tlV2lkdGgiLCJjb25jYXQiLCJpZCIsIngxIiwieTEiLCJ4MiIsInkyIiwiZ3JhZGllbnRVbml0cyIsIklsbHVzRW1haWxFcnJvciIsIl9hJGJvcmRlckNvbG9yMiIsIl9hJGNvbG9yIiwiY29sb3IiLCJfYSRncmFkaWVudENvbG9yMiIsIngiLCJ5Iiwid2lkdGgiLCJoZWlnaHQiLCJJbGx1c0xpbmtFeHBpcmVkIiwiX2EkYm9yZGVyQ29sb3IzIiwiX2EkY29sb3IyIiwiX2EkZ3JhZGllbnRDb2xvcjMiLCJJbGx1czJGQSIsIl9hJGJvcmRlckNvbG9yNCIsIl9hJGNvbG9yMyIsIl9hJGdyYWRpZW50Q29sb3I0IiwiSWxsdXNMb2NrZWQiLCJfYSRib3JkZXJDb2xvcjUiLCJfYSRjb2xvcjQiLCJfYSRncmFkaWVudENvbG9yNSIsInN2Z0lkIiwicmVwbGFjZSIsImxvY2tlZEJvcmRlckNvbG9yIiwicngiLCJJbGx1c0Vycm9yIiwiX2EkYm9yZGVyQ29sb3I2IiwiX2EkY29sb3I1IiwiSWxsdXNSZWdpb25Ob3RTdXBwb3J0ZWQiLCJfYSRib3JkZXJDb2xvcjciLCJfYSRjb2xvcjYiLCJfYSRncmFkaWVudENvbG9yNiIsIklsbHVzSUQiLCJfYSRib3JkZXJDb2xvcjgiLCJfYSRncmFkaWVudENvbG9yNyIsImdyYWRpZW50SWQwIiwiZ3JhZGllbnRJZDEiLCJncmFkaWVudElkMiIsIklsbHVzVmVyaWZpY2F0aW9uIiwiX2EkYm9yZGVyQ29sb3I5IiwiX2EkZ3JhZGllbnRDb2xvcjgiLCJJbGx1c1Bhc3NrZXkiLCJfYSRib3JkZXJDb2xvcjEwIiwiX2EkZ3JhZGllbnRDb2xvcjkiLCJiYWRnZUdyYWRpZW50SWQiLCJJbGx1c1BlbmRpbmciLCJfYSRib3JkZXJDb2xvcjExIiwiX2EkY29sb3I3IiwiX2EkZ3JhZGllbnRDb2xvcjEwIiwiSWxsdXNBZGRBY2NvdW50IiwiX2EkYm9yZGVyQ29sb3IxMiIsIl9hJGdyYWRpZW50Q29sb3IxMSIsImNhcmRHcmFkaWVudElkIl0sIm1hcHBpbmdzIjoiO0FBQUEsSUFBSUEsTUFBTSxHQUFJLElBQUksSUFBSSxJQUFJLENBQUNBLE1BQU0sSUFBSyxVQUFVQyxDQUFDLEVBQUVDLENBQUMsRUFBRTtFQUNsRCxJQUFJQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0VBQ1YsS0FBSyxJQUFJ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QUMsSUFBSTtNQUFDUCxTQUFTLEVBQUMsNkJBQTZCO01BQUNRLE1BQU0sRUFBRWQsV0FBVztNQUFFZSxXQUFXLEVBQUM7SUFBRyxDQUFBLENBQUUsRUFDdkgxQyxJQUFBLENBQUEsTUFBQSxFQUFBO01BQU1vQyxDQUFDLEVBQUMsbUhBQW1IO01BQUNDLElBQUksRUFBRVY7SUFBVyxDQUFBLENBQUcsRUFDaEp2QixLQUFBLENBQUEsTUFBQSxFQUFBO01BQUFpQixRQUFBLEVBQUEsQ0FDQXJCLElBQUEsQ0FBQSxnQkFBQSxFQUFBO1FBQWdCNEMsRUFBRSxFQUFFMEQsY0FBYztRQUFFekQsRUFBRSxFQUFDLE1BQU07UUFBQ0MsRUFBRSxFQUFDLElBQUk7UUFBQ0MsRUFBRSxFQUFDLE1BQU07UUFBQ0MsRUFBRSxFQUFDLElBQUk7UUFBQ0MsYUFBYSxFQUFDLGdCQUFnQjtRQUFBNUIsUUFBQSxFQUNuR1QsbUJBQW1CLENBQUNDLGFBQWE7TUFBQyxDQUFBLENBQ3BCLEVBQ2pCYixJQUFBLENBQUEsZ0JBQUEsRUFBQTtRQUFnQjRDLEVBQUUsRUFBRWtELGVBQWU7UUFBRWpELEVBQUUsRUFBQyxTQUFTO1FBQUNDLEVBQUUsRUFBQyxTQUFTO1FBQUNDLEVBQUUsRUFBQyxTQUFTO1FBQUNDLEVBQUUsRUFBQyxTQUFTO1FBQUNDLGFBQWEsRUFBQyxnQkFBZ0I7UUFBQTVCLFFBQUEsRUFDcEhULG1CQUFtQixDQUFDQyxhQUFhO01BQUMsQ0FBQSxDQUNwQjtJQUFBLENBQUEsQ0FDVjtFQUFBLENBQUEsQ0FBQSxDQUNLO0FBRWxCLENBQUMiLCJmaWxlIjoiY29tcG9uZW50cy9JY29ucy9JbGx1c3RyYXRpb25zLmpzIiwic291cmNlc0NvbnRlbnQiOlsidmFyIF9fcmVzdCA9ICh0aGlzICYmIHRoaXMuX19yZXN0KSB8fCBmdW5jdGlvbiAocywgZSkge1xuICAgIHZhciB0ID0ge307XG4gICAgZm9yICh2YXIgcCBpbiBzKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHMsIHApICYmIGUuaW5kZXhPZihwKSA8IDApXG4gICAgICAgIHRbcF0gPSBzW3BdO1xuICAgIGlmIChzICE9IG51bGwgJiYgdHlwZW9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMgPT09IFwiZnVuY3Rpb25cIilcbiAgICAgICAgZm9yICh2YXIgaSA9IDAsIHAgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHMpOyBpIDwgcC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaWYgKGUuaW5kZXhPZihwW2ldKSA8IDAgJiYgT2JqZWN0LnByb3RvdHlwZS5wcm9wZXJ0eUlzRW51bWVyYWJsZS5jYWxsKHMsIHBbaV0pKVxuICAgICAgICAgICAgICAgIHRbcFtpXV0gPSBzW3BbaV1dO1xuICAgICAgICB9XG4gICAgcmV0dXJuIHQ7XG59O1xuaW1wb3J0IHsganN4IGFzIF9qc3gsIEZyYWdtZW50IGFzIF9GcmFnbWVudCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJyZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IHsgdXNlSWQgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgSWNvbldyYXBwZXIgZnJvbSAnLi9XcmFwcGVyJztcbmNvbnN0IERFRkFVTFRfQk9SREVSX0NPTE9SID0gJyMxMzEzMTMnO1xuY29uc3QgREVGQVVMVF9BTEVSVF9DT0xPUiA9ICcjQUUwMDAwJztcbmNvbnN0IERFRkFVTFRfUEVORElOR19DT0xPUiA9ICcjRjRDNjAwJztcbmNvbnN0IERFRkFVTFRfR1JBRElFTlRfQ09MT1IgPSBbJyNCOUNDRTQnLCAnd2hpdGUnXTtcbmNvbnN0IERFRkFVTFRfRklHTUFfU1RST0tFX0NPTE9SID0gJyMxMzEzMTMnO1xuY29uc3QgcmVuZGVyR3JhZGllbnRTdG9wcyA9IChncmFkaWVudENvbG9yKSA9PiB7XG4gICAgY29uc3QgW3N0YXJ0Q29sb3IsIGVuZENvbG9yXSA9IEFycmF5LmlzQXJyYXkoZ3JhZGllbnRDb2xvcikgPyBncmFkaWVudENvbG9yIDogW2dyYWRpZW50Q29sb3IsIGdyYWRpZW50Q29sb3JdO1xuICAgIHJldHVybiAoX2pzeHMoX0ZyYWdtZW50LCB7IGNoaWxkcmVuOiBbX2pzeChcInN0b3BcIiwgeyBzdG9wQ29sb3I6IHN0YXJ0Q29sb3IgfSksIF9qc3goXCJzdG9wXCIsIHsgb2Zmc2V0OiBcIjFcIiwgc3RvcENvbG9yOiBlbmRDb2xvciB9KV0gfSkpO1xufTtcbmV4cG9ydCBjb25zdCBJbGx1c0NoZWNrZWQgPSAoX2EpID0+IHtcbiAgICB2YXIgeyBib3JkZXJDb2xvciA9IERFRkFVTFRfQk9SREVSX0NPTE9SLCBncmFkaWVudENvbG9yID0gREVGQVVMVF9HUkFESUVOVF9DT0xPUiB9ID0gX2EsIHJlc3QgPSBfX3Jlc3QoX2EsIFtcImJvcmRlckNvbG9yXCIsIFwiZ3JhZGllbnRDb2xvclwiXSk7XG4gICAgY29uc3QgZ3JhZGllbnRJZCA9IHVzZUlkKCk7XG4gICAgcmV0dXJuIChfanN4cyhJY29uV3JhcHBlciwgT2JqZWN0LmFzc2lnbih7IHZpZXdCb3g6IFwiMCAwIDc0IDc0XCIgfSwgcmVzdCwgeyBjaGlsZHJlbjogW19qc3hzKFwiZ1wiLCB7IHRyYW5zZm9ybTogXCJ0cmFuc2xhdGUoMTAgNilcIiwgY2hpbGRyZW46IFtfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk0xNyA2MEgxNi41VjYySDE3SDIxSDI1SDI5SDMzSDM3SDM3LjVWNjBIMzdIMzNIMjlIMjVIMjFIMTdaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwiY2lyY2xlXCIsIHsgY3g6IFwiMjdcIiwgY3k6IFwiMjdcIiwgcjogXCIyN1wiLCBmaWxsOiBcIndoaXRlXCIgfSksIF9qc3goXCJjaXJjbGVcIiwgeyBjeDogXCIyN1wiLCBjeTogXCIyN1wiLCByOiBcIjI2XCIsIHN0cm9rZTogYm9yZGVyQ29sb3IsIHN0cm9rZVdpZHRoOiBcIjJcIiwgZmlsbDogXCJ0cmFuc3BhcmVudFwiIH0pLCBfanN4KFwiY2lyY2xlXCIsIHsgY3g6IFwiMjYuOTk3XCIsIGN5OiBcIjI3LjAwMDlcIiwgcjogXCIyMC4xMDY0XCIsIGZpbGw6IGB1cmwoIyR7Z3JhZGllbnRJZH0pYCB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjI2Ljk5N1wiLCBjeTogXCIyNy4wMDA5XCIsIHI6IFwiMTkuNjA2NFwiLCBzdHJva2U6IGJvcmRlckNvbG9yLCBmaWxsOiBcInRyYW5zcGFyZW50XCIgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNMTYgMjYuMzQ2MkwyNCAzNC41TDM3LjUgMjBcIiwgc3Ryb2tlOiBib3JkZXJDb2xvciwgc3Ryb2tlV2lkdGg6IFwiMlwiLCBmaWxsOiBcInRyYW5zcGFyZW50XCIgfSldIH0pLCBfanN4KFwiZGVmc1wiLCB7IGNoaWxkcmVuOiBfanN4KFwibGluZWFyR3JhZGllbnRcIiwgeyBpZDogZ3JhZGllbnRJZCwgeDE6IFwiMzYuOTk3XCIsIHkxOiBcIjEyLjg5NDUzXCIsIHgyOiBcIjM2Ljk5N1wiLCB5MjogXCI1My4xMDczXCIsIGdyYWRpZW50VW5pdHM6IFwidXNlclNwYWNlT25Vc2VcIiwgY2hpbGRyZW46IHJlbmRlckdyYWRpZW50U3RvcHMoZ3JhZGllbnRDb2xvcikgfSkgfSldIH0pKSk7XG59O1xuZXhwb3J0IGNvbnN0IElsbHVzRW1haWxFcnJvciA9IChfYSkgPT4ge1xuICAgIHZhciB7IGJvcmRlckNvbG9yID0gREVGQVVMVF9CT1JERVJfQ09MT1IsIGNvbG9yID0gREVGQVVMVF9BTEVSVF9DT0xPUiwgZ3JhZGllbnRDb2xvciA9IERFRkFVTFRfR1JBRElFTlRfQ09MT1IgfSA9IF9hLCByZXN0ID0gX19yZXN0KF9hLCBbXCJib3JkZXJDb2xvclwiLCBcImNvbG9yXCIsIFwiZ3JhZGllbnRDb2xvclwiXSk7XG4gICAgY29uc3QgZ3JhZGllbnRJZCA9IHVzZUlkKCk7XG4gICAgcmV0dXJuIChfanN4cyhJY29uV3JhcHBlciwgT2JqZWN0LmFzc2lnbih7IHZpZXdCb3g6IFwiMCAwIDc0IDc0XCIgfSwgcmVzdCwgeyBjaGlsZHJlbjogW19qc3goXCJwYXRoXCIsIHsgZDogXCJNNDEgNjZIMzdWNjRINDFWNjZaTTQ5IDY2SDQ1VjY0SDQ5VjY2WlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk0xMyAxNEMxMyAxMC42ODYzIDE1LjY4NjMgOCAxOSA4TDU5IDhDNjIuMzEzNyA4IDY1IDEwLjY4NjMgNjUgMTRWMTcuODgyNEM2NSAxOC41NzY5IDY0LjYzOTcgMTkuMjIxNyA2NC4wNDgyIDE5LjU4NTdMNDAuMDQ4MiAzNC4zNTVDMzkuNDA1NCAzNC43NTA1IDM4LjU5NDYgMzQuNzUwNSAzNy45NTE4IDM0LjM1NUwxMy45NTE4IDE5LjU4NTdDMTMuMzYwMyAxOS4yMjE3IDEzIDE4LjU3NjkgMTMgMTcuODgyNFYxNFpcIiwgZmlsbDogYHVybCgjJHtncmFkaWVudElkfSlgIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTYxIDhDNjMuMjA5MSA4IDY1IDkuNzkwODYgNjUgMTJWNTBDNjUgNTIuMjA5MSA2My4yMDkxIDU0IDYxIDU0SDE3QzE0Ljc5MDkgNTQgMTMgNTIuMjA5MSAxMyA1MFYxMkMxMyA5Ljc5MDg2IDE0Ljc5MDkgOCAxNyA4SDYxWk00MS4xODk1IDM1LjU2ODRDMzkuODU5NiAzNi40Mzc5IDM4LjE0MDQgMzYuNDM3OSAzNi44MTA1IDM1LjU2ODRMMTUgMjEuMzA3NlY1Mkg2M1YyMS4zMDc2TDQxLjE4OTUgMzUuNTY4NFpNMTUgMTguOTE4TDM5IDM0LjYxMDRMNjMgMTguOTE4VjEwSDE1VjE4LjkxOFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJjaXJjbGVcIiwgeyBjeDogXCIxNlwiLCBjeTogXCI0OFwiLCByOiBcIjEzXCIsIGZpbGw6IGNvbG9yIH0pLCBfanN4KFwiY2lyY2xlXCIsIHsgY3g6IFwiMTZcIiwgY3k6IFwiNDhcIiwgcjogXCIxMlwiLCBzdHJva2U6IGJvcmRlckNvbG9yLCBzdHJva2VXaWR0aDogXCIyXCIgfSksIF9qc3goXCJwYXRoXCIsIHsgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLCBjbGlwUnVsZTogXCJldmVub2RkXCIsIGQ6IFwiTTEwLjM0MTYgNTIuMjQxMUwxMS43NTU5IDUzLjY1NTNMMTUuOTk4NCA0OS40MTI4TDIwLjI0MjUgNTMuNjU2OUwyMS42NTY4IDUyLjI0MjdMMTcuNDEyNiA0Ny45OTg2TDIxLjY1NTMgNDMuNzU1OEwyMC4yNDExIDQyLjM0MTZMMTUuOTk4NCA0Ni41ODQ0TDExLjc1NzMgNDIuMzQzMkwxMC4zNDMgNDMuNzU3NEwxNC41ODQyIDQ3Ljk5ODZMMTAuMzQxNiA1Mi4yNDExWlwiLCBmaWxsOiBcIndoaXRlXCIgfSksIF9qc3goXCJyZWN0XCIsIHsgeDogXCIzMFwiLCB5OiBcIjY0XCIsIHdpZHRoOiBcIjIxXCIsIGhlaWdodDogXCIyXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwiZGVmc1wiLCB7IGNoaWxkcmVuOiBfanN4KFwibGluZWFyR3JhZGllbnRcIiwgeyBpZDogZ3JhZGllbnRJZCwgeDE6IFwiMzlcIiwgeTE6IFwiOFwiLCB4MjogXCIzOVwiLCB5MjogXCIzNVwiLCBncmFkaWVudFVuaXRzOiBcInVzZXJTcGFjZU9uVXNlXCIsIGNoaWxkcmVuOiByZW5kZXJHcmFkaWVudFN0b3BzKGdyYWRpZW50Q29sb3IpIH0pIH0pXSB9KSkpO1xufTtcbmV4cG9ydCBjb25zdCBJbGx1c0xpbmtFeHBpcmVkID0gKF9hKSA9PiB7XG4gICAgdmFyIHsgYm9yZGVyQ29sb3IgPSBERUZBVUxUX0JPUkRFUl9DT0xPUiwgY29sb3IgPSBERUZBVUxUX0FMRVJUX0NPTE9SLCBncmFkaWVudENvbG9yID0gREVGQVVMVF9HUkFESUVOVF9DT0xPUiB9ID0gX2EsIHJlc3QgPSBfX3Jlc3QoX2EsIFtcImJvcmRlckNvbG9yXCIsIFwiY29sb3JcIiwgXCJncmFkaWVudENvbG9yXCJdKTtcbiAgICBjb25zdCBncmFkaWVudElkID0gdXNlSWQoKTtcbiAgICByZXR1cm4gKF9qc3hzKEljb25XcmFwcGVyLCBPYmplY3QuYXNzaWduKHsgdmlld0JveDogXCIwIDAgNzQgNzRcIiB9LCByZXN0LCB7IGNoaWxkcmVuOiBbX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjM2Ljk5OTZcIiwgY3k6IFwiMzYuOTk3OVwiLCByOiBcIjI5LjU5MDlcIiwgZmlsbDogXCJ3aGl0ZVwiIH0pLCBfanN4KFwiY2lyY2xlXCIsIHsgY3g6IFwiMzdcIiwgY3k6IFwiMzdcIiwgcjogXCIzMFwiLCBzdHJva2U6IGJvcmRlckNvbG9yLCBzdHJva2VXaWR0aDogXCIyXCIgfSksIF9qc3goXCJjaXJjbGVcIiwgeyBjeDogXCIzN1wiLCBjeTogXCIzN1wiLCByOiBcIjI0XCIsIGZpbGw6IGB1cmwoIyR7Z3JhZGllbnRJZH0pYCB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjM3XCIsIGN5OiBcIjM3XCIsIHI6IFwiMjMuNVwiLCBzdHJva2U6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk00Ny4wNzQzIDI2LjgzMjdDNDQuNTA4MiAyNC4zOTAyIDQwLjM0NzYgMjQuMzkwMiAzNy43ODE1IDI2LjgzMjdMMzQuNDYyOSAyOS45OTE1QzMxLjM5NjkgMzIuOTA5OCAzMS4zOTY5IDM3LjY0MTQgMzQuNDYyOSA0MC41NTk3TDM1LjkxMTUgMzkuMTgwOEMzMy42NDU2IDM3LjAyNCAzMy42NDU2IDMzLjUyNzIgMzUuOTExNSAzMS4zNzA0TDM5LjIzMDIgMjguMjExNkM0MC45OTYyIDI2LjUzMDcgNDMuODU5NiAyNi41MzA3IDQ1LjYyNTYgMjguMjExNkM0Ny4zOTE3IDI5Ljg5MjYgNDcuMzkxNyAzMi42MTggNDUuNjI1NiAzNC4yOTlMNDMuNTEzNyAzNi4zMDkxTDQ0Ljk2MjQgMzcuNjg4TDQ3LjA3NDMgMzUuNjc3OUM0OS42NDA0IDMzLjIzNTQgNDkuNjQwNCAyOS4yNzUzIDQ3LjA3NDMgMjYuODMyN1pNMjYuOTI0MSA0Ny4xNjczQzI5LjQ5MDIgNDkuNjA5OCAzMy42NTA3IDQ5LjYwOTggMzYuMjE2OSA0Ny4xNjczTDM5LjUzNTUgNDQuMDA4NUM0Mi42MDE1IDQxLjA5MDIgNDIuNjAxNSAzNi4zNTg3IDM5LjUzNTUgMzMuNDQwM0wzOC4wODY4IDM0LjgxOTJDNDAuMzUyNyAzNi45NzYgNDAuMzUyOCA0MC40NzI4IDM4LjA4NjggNDIuNjI5NkwzNC43NjgyIDQ1Ljc4ODRDMzMuMDAyMSA0Ny40NjkzIDMwLjEzODggNDcuNDY5MyAyOC4zNzI4IDQ1Ljc4ODRDMjYuNjA2NyA0NC4xMDc0IDI2LjYwNjcgNDEuMzgyIDI4LjM3MjggMzkuNzAxTDMwLjQ4NDYgMzcuNjkwOUwyOS4wMzYgMzYuMzEyTDI2LjkyNDEgMzguMzIyMUMyNC4zNTggNDAuNzY0NiAyNC4zNTggNDQuNzI0NyAyNi45MjQxIDQ3LjE2NzNaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwiY2lyY2xlXCIsIHsgY3g6IFwiMTVcIiwgY3k6IFwiNThcIiwgcjogXCIxM1wiLCBmaWxsOiBjb2xvciB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjE1XCIsIGN5OiBcIjU4XCIsIHI6IFwiMTJcIiwgc3Ryb2tlOiBib3JkZXJDb2xvciwgc3Ryb2tlV2lkdGg6IFwiMlwiIH0pLCBfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk0xMy41ODQyIDU3Ljk5ODZMOS4zNDE2NCA2Mi4yNDExTDEwLjc1NTkgNjMuNjU1M0wxNC45OTg0IDU5LjQxMjhMMTkuMjQyNSA2My42NTY5TDIwLjY1NjggNjIuMjQyN0wxNi40MTI2IDU3Ljk5ODZMMjAuNjU1MyA1My43NTU4TDE5LjI0MTEgNTIuMzQxNkwxNC45OTg0IDU2LjU4NDRMMTAuNzU3MyA1Mi4zNDMyTDkuMzQzMDUgNTMuNzU3NEwxMy41ODQyIDU3Ljk5ODZaXCIsIGZpbGw6IFwid2hpdGVcIiB9KSwgX2pzeChcImRlZnNcIiwgeyBjaGlsZHJlbjogX2pzeChcImxpbmVhckdyYWRpZW50XCIsIHsgaWQ6IGdyYWRpZW50SWQsIHgxOiBcIjM3XCIsIHkxOiBcIjEzXCIsIHgyOiBcIjM3XCIsIHkyOiBcIjYxXCIsIGdyYWRpZW50VW5pdHM6IFwidXNlclNwYWNlT25Vc2VcIiwgY2hpbGRyZW46IHJlbmRlckdyYWRpZW50U3RvcHMoZ3JhZGllbnRDb2xvcikgfSkgfSldIH0pKSk7XG59O1xuZXhwb3J0IGNvbnN0IElsbHVzMkZBID0gKF9hKSA9PiB7XG4gICAgdmFyIHsgYm9yZGVyQ29sb3IgPSBERUZBVUxUX0JPUkRFUl9DT0xPUiwgY29sb3IgPSBERUZBVUxUX0FMRVJUX0NPTE9SLCBncmFkaWVudENvbG9yID0gREVGQVVMVF9HUkFESUVOVF9DT0xPUiB9ID0gX2EsIHJlc3QgPSBfX3Jlc3QoX2EsIFtcImJvcmRlckNvbG9yXCIsIFwiY29sb3JcIiwgXCJncmFkaWVudENvbG9yXCJdKTtcbiAgICBjb25zdCBncmFkaWVudElkID0gdXNlSWQoKTtcbiAgICByZXR1cm4gKF9qc3hzKEljb25XcmFwcGVyLCBPYmplY3QuYXNzaWduKHsgdmlld0JveDogXCIwIDAgNzQgNzRcIiB9LCByZXN0LCB7IGNoaWxkcmVuOiBbX2pzeChcInBhdGhcIiwgeyBkOiBcIk00Ny43MDcxIDI2LjEyMTNMNDYuMjkyOSAyNC43MDcxTDMyIDM5TDI0LjcwNzEgMzEuNzA3MUwyMy4yOTI5IDMzLjEyMTNMMzIgNDEuODI4NEw0Ny43MDcxIDI2LjEyMTNaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk0zMS42NzUgNjcuMzM5M0MzMy4wNjU4IDY4LjMzMjcgMzQuOTM0MiA2OC4zMzI3IDM2LjMyNSA2Ny4zMzkzTDQzLjYyMTcgNjIuMTI3M0M1My4wNzA0IDU1LjM3ODMgNTkuMTIwMSA0NC44NTY0IDYwLjE5OTEgMzMuMjk1Mkw2MS43MDE2IDE3LjE5NzJDNjEuODc1OSAxNS4zMjk0IDYwLjcyODggMTMuNTkxNCA1OC45NDI5IDEzLjAxNzRMMzUuMjI0IDUuMzkzNDRDMzQuNDI4MSA1LjEzNzU5IDMzLjU3MTkgNS4xMzc1OSAzMi43NzYgNS4zOTM0NEw5LjA1NzA2IDEzLjAxNzRDNy4yNzExNSAxMy41OTE0IDYuMTI0MDggMTUuMzI5NCA2LjI5ODQxIDE3LjE5NzJMNy44MDA4OCAzMy4yOTUyQzguODc5OTQgNDQuODU2NCAxNC45Mjk2IDU1LjM3ODMgMjQuMzc4MyA2Mi4xMjczTDMxLjY3NSA2Ny4zMzkzWk01OS44NTk1IDE1LjQxMjdMMzQgNy4xMDA3OEw4LjE0MDU1IDE1LjQxMjdMOS43OTIyMyAzMy4xMDkzQzEwLjgxNzMgNDQuMDkyNSAxNi41NjQ1IDU0LjA4ODMgMjUuNTQwNyA2MC40OTk5TDM0IDY2LjU0MjJMNDIuNDU5MyA2MC40OTk5QzUxLjQzNTUgNTQuMDg4MyA1Ny4xODI3IDQ0LjA5MjUgNTguMjA3OCAzMy4xMDkzTDU5Ljg1OTUgMTUuNDEyN1pcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJjaXJjbGVcIiwgeyBjeDogXCI1M1wiLCBjeTogXCI1NFwiLCByOiBcIjE1XCIsIGZpbGw6IGB1cmwoIyR7Z3JhZGllbnRJZH0pYCB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjUzXCIsIGN5OiBcIjU0XCIsIHI6IFwiMTRcIiwgc3Ryb2tlOiBib3JkZXJDb2xvciwgc3Ryb2tlV2lkdGg6IFwiMlwiIH0pLCBfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk01MC41IDQ5LjVDNTAuNSA0OC4xMTkzIDUxLjYxOTMgNDcgNTMgNDdDNTQuMzgwNyA0NyA1NS41IDQ4LjExOTMgNTUuNSA0OS41VjUxSDUwLjVWNDkuNVpNNDguNSA1MVY0OS41QzQ4LjUgNDcuMDE0NyA1MC41MTQ3IDQ1IDUzIDQ1QzU1LjQ4NTMgNDUgNTcuNSA0Ny4wMTQ3IDU3LjUgNDkuNVY1MUg1OUg2MFY1MlY2MFY2MUg1OUg0N0g0NlY2MFY1MlY1MUg0N0g0OC41Wk00OCA1OVY1M0g1OFY1OUg0OFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJkZWZzXCIsIHsgY2hpbGRyZW46IF9qc3goXCJsaW5lYXJHcmFkaWVudFwiLCB7IGlkOiBncmFkaWVudElkLCB4MTogXCI1M1wiLCB5MTogXCIzOVwiLCB4MjogXCI1M1wiLCB5MjogXCI2OVwiLCBncmFkaWVudFVuaXRzOiBcInVzZXJTcGFjZU9uVXNlXCIsIGNoaWxkcmVuOiByZW5kZXJHcmFkaWVudFN0b3BzKGdyYWRpZW50Q29sb3IpIH0pIH0pXSB9KSkpO1xufTtcbmV4cG9ydCBjb25zdCBJbGx1c0xvY2tlZCA9IChfYSkgPT4ge1xuICAgIHZhciB7IGJvcmRlckNvbG9yID0gREVGQVVMVF9CT1JERVJfQ09MT1IsIGNvbG9yID0gREVGQVVMVF9BTEVSVF9DT0xPUiwgZ3JhZGllbnRDb2xvciA9IERFRkFVTFRfR1JBRElFTlRfQ09MT1IgfSA9IF9hLCByZXN0ID0gX19yZXN0KF9hLCBbXCJib3JkZXJDb2xvclwiLCBcImNvbG9yXCIsIFwiZ3JhZGllbnRDb2xvclwiXSk7XG4gICAgY29uc3Qgc3ZnSWQgPSB1c2VJZCgpLnJlcGxhY2UoLzovZywgJycpO1xuICAgIGNvbnN0IGdyYWRpZW50SWQgPSBgaWxsdXMtbG9ja2VkLWdyYWRpZW50LSR7c3ZnSWR9YDtcbiAgICBjb25zdCBsb2NrZWRCb3JkZXJDb2xvciA9IGJvcmRlckNvbG9yID09PSBERUZBVUxUX0JPUkRFUl9DT0xPUiA/IERFRkFVTFRfRklHTUFfU1RST0tFX0NPTE9SIDogYm9yZGVyQ29sb3I7XG4gICAgcmV0dXJuIChfanN4cyhJY29uV3JhcHBlciwgT2JqZWN0LmFzc2lnbih7IHZpZXdCb3g6IFwiMCAwIDc0IDc0XCIgfSwgcmVzdCwgeyBjaGlsZHJlbjogW19qc3goXCJwYXRoXCIsIHsgZDogXCJNMzkgM0M0OC45NDExIDMgNTcgMTEuMDU4OSA1NyAyMVYyOEg2NUM2Ni4xMDQ2IDI4IDY3IDI4Ljg5NTQgNjcgMzBWNjRDNjcgNjUuMTA0NiA2Ni4xMDQ2IDY2IDY1IDY2SDEzQzExLjg5NTQgNjYgMTEgNjUuMTA0NiAxMSA2NFYzMEMxMSAyOC44OTU0IDExLjg5NTQgMjggMTMgMjhIMjFWMjFDMjEgMTEuMDU4OSAyOS4wNTg5IDMgMzkgM1pNMzkgMTFDMzMuNDc3MiAxMSAyOSAxNS40NzcyIDI5IDIxVjI4SDQ5VjIxQzQ5IDE1LjQ3NzIgNDQuNTIyOSAxMSAzOSAxMVpcIiwgZmlsbDogXCJ3aGl0ZVwiIH0pLCBfanN4KFwicmVjdFwiLCB7IHg6IFwiNjdcIiwgeTogXCI2NlwiLCB3aWR0aDogXCI1NlwiLCBoZWlnaHQ6IFwiMzdcIiwgcng6IFwiNFwiLCB0cmFuc2Zvcm06IFwicm90YXRlKC0xODAgNjcgNjYpXCIsIGZpbGw6IGB1cmwoIyR7Z3JhZGllbnRJZH0pYCB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk02NSA2NFY2NkgxM1Y2NEg2NVpNNjUgMzBINTVWMjFDNTUgMTIuMTYzNCA0Ny44MzY2IDUgMzkgNUMzMC4xNjM0IDUgMjMgMTIuMTYzNCAyMyAyMVYzMEgxM1Y2NkMxMS44OTU0IDY2IDExIDY1LjEwNDYgMTEgNjRWMzBDMTEgMjguODk1NCAxMS44OTU0IDI4IDEzIDI4SDIxVjIxQzIxIDExLjA1ODkgMjkuMDU4OSAzIDM5IDNDNDguOTQxMSAzIDU3IDExLjA1ODkgNTcgMjFWMjhINjVDNjYuMTA0NiAyOCA2NyAyOC44OTU0IDY3IDMwVjY0QzY3IDY1LjEwNDYgNjYuMTA0NiA2NiA2NSA2NlYzMFpNNDkgMjhWMjFDNDkgMTUuNDc3MiA0NC41MjI5IDExIDM5IDExQzMzLjQ3NzIgMTEgMjkgMTUuNDc3MiAyOSAyMVYyOEg0OVpNNTEgMzBIMjdWMjFDMjcgMTQuMzcyNiAzMi4zNzI2IDkgMzkgOUM0NS42Mjc0IDkgNTEgMTQuMzcyNiA1MSAyMVYzMFpcIiwgZmlsbDogbG9ja2VkQm9yZGVyQ29sb3IgfSksIF9qc3goXCJjaXJjbGVcIiwgeyBjeDogXCIxNFwiLCBjeTogXCI1OFwiLCByOiBcIjEzXCIsIGZpbGw6IGNvbG9yIH0pLCBfanN4KFwiY2lyY2xlXCIsIHsgY3g6IFwiMTRcIiwgY3k6IFwiNThcIiwgcjogXCIxMlwiLCBzdHJva2U6IGxvY2tlZEJvcmRlckNvbG9yLCBzdHJva2VXaWR0aDogXCIyXCIgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNMTUuNDEyOCA1Ny45OTg2TDE5LjY1NjkgNjIuMjQyNkwxOC4yNDI2IDYzLjY1NjhMMTMuOTk4NiA1OS40MTI4TDkuNzU1OTggNjMuNjU1NUw4LjM0MTc2IDYyLjI0MTJMMTIuNTg0NCA1Ny45OTg2TDguMzQzMTUgNTMuNzU3M0w5Ljc1NzM2IDUyLjM0MzFMMTMuOTk4NiA1Ni41ODQ0TDE4LjI0MTMgNTIuMzQxOEwxOS42NTU1IDUzLjc1NkwxNS40MTI4IDU3Ljk5ODZaXCIsIGZpbGw6IFwid2hpdGVcIiB9KSwgX2pzeChcImRlZnNcIiwgeyBjaGlsZHJlbjogX2pzeChcImxpbmVhckdyYWRpZW50XCIsIHsgaWQ6IGdyYWRpZW50SWQsIHgxOiBcIjk1XCIsIHkxOiBcIjY2XCIsIHgyOiBcIjk1XCIsIHkyOiBcIjEwM1wiLCBncmFkaWVudFVuaXRzOiBcInVzZXJTcGFjZU9uVXNlXCIsIGNoaWxkcmVuOiByZW5kZXJHcmFkaWVudFN0b3BzKGdyYWRpZW50Q29sb3IpIH0pIH0pXSB9KSkpO1xufTtcbmV4cG9ydCBjb25zdCBJbGx1c0Vycm9yID0gKF9hKSA9PiB7XG4gICAgdmFyIHsgYm9yZGVyQ29sb3IgPSBERUZBVUxUX0JPUkRFUl9DT0xPUiwgY29sb3IgPSBERUZBVUxUX0FMRVJUX0NPTE9SIH0gPSBfYSwgcmVzdCA9IF9fcmVzdChfYSwgW1wiYm9yZGVyQ29sb3JcIiwgXCJjb2xvclwiXSk7XG4gICAgcmV0dXJuIF9qc3hzKEljb25XcmFwcGVyLCBPYmplY3QuYXNzaWduKHsgdmlld0JveDogXCIwIDAgNzQgNzRcIiB9LCByZXN0LCB7IGNoaWxkcmVuOiBbX2pzeChcInBhdGhcIiwgeyBkOiBcIk0xMiA1OUMxMiA1NS42ODYzIDE0LjY4NjMgNTMgMTggNTNINTZDNTkuMzEzNyA1MyA2MiA1NS42ODYzIDYyIDU5QzYyIDYyLjMxMzcgNTkuMzEzNyA2NSA1NiA2NUgxOEMxNC42ODYzIDY1IDEyIDYyLjMxMzcgMTIgNTlaXCIsIGZpbGw6IGNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTM2IDM3VjIySDM4VjM3SDM2WlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk0zNyA0MEMzNS44OTU0IDQwIDM1IDQwLjg5NTQgMzUgNDJDMzUgNDMuMTA0NiAzNS44OTU0IDQ0IDM3IDQ0QzM4LjEwNDYgNDQgMzkgNDMuMTA0NiAzOSA0MkMzOSA0MC44OTU0IDM4LjEwNDYgNDAgMzcgNDBaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk0xNi4yMzA4IDUzTDcuODQyNTYgNDEuMzE2NEM2Ljc2MjM0IDM5LjgxMTggNi44NTYzNSAzNy43NjI0IDguMDY5NzkgMzYuMzYzMUwzMy45Nzc5IDYuNDg1MTJDMzUuNTcyOSA0LjY0NTgyIDM4LjQyNzEgNC42NDU4MiA0MC4wMjIxIDYuNDg1MTJMNjUuOTMwMiAzNi4zNjMxQzY3LjE0MzYgMzcuNzYyNCA2Ny4yMzc3IDM5LjgxMTggNjYuMTU3NCA0MS4zMTY0TDU3Ljc2OTIgNTNINThDNjAuMjA5MSA1MyA2MiA1NC43OTA5IDYyIDU3VjYxQzYyIDYzLjIwOTEgNjAuMjA5MSA2NSA1OCA2NUgxNkMxMy43OTA5IDY1IDEyIDYzLjIwOTEgMTIgNjFWNTdDMTIgNTQuNzkwOSAxMy43OTA5IDUzIDE2IDUzSDE2LjIzMDhaTTM3IDYuMDUyODJMNjUuNDU0MSAzOC44NjY4TDU1LjMwNzIgNTNIMTguNjkyOEw4LjU0NTkzIDM4Ljg2NjhMMzcgNi4wNTI4MlpNNjAgNTVWNjNIMTRWNTVINjBaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pXSB9KSk7XG59O1xuZXhwb3J0IGNvbnN0IElsbHVzUmVnaW9uTm90U3VwcG9ydGVkID0gKF9hKSA9PiB7XG4gICAgdmFyIHsgYm9yZGVyQ29sb3IgPSBERUZBVUxUX0JPUkRFUl9DT0xPUiwgY29sb3IgPSBERUZBVUxUX0FMRVJUX0NPTE9SLCBncmFkaWVudENvbG9yID0gREVGQVVMVF9HUkFESUVOVF9DT0xPUiB9ID0gX2EsIHJlc3QgPSBfX3Jlc3QoX2EsIFtcImJvcmRlckNvbG9yXCIsIFwiY29sb3JcIiwgXCJncmFkaWVudENvbG9yXCJdKTtcbiAgICBjb25zdCBncmFkaWVudElkID0gdXNlSWQoKTtcbiAgICByZXR1cm4gKF9qc3hzKEljb25XcmFwcGVyLCBPYmplY3QuYXNzaWduKHsgdmlld0JveDogXCIwIDAgNzQgNzRcIiB9LCByZXN0LCB7IGNoaWxkcmVuOiBbX2pzeChcInJlY3RcIiwgeyB3aWR0aDogXCI3NFwiLCBoZWlnaHQ6IFwiNzRcIiwgZmlsbDogXCJ3aGl0ZVwiIH0pLCBfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk0yMC44ODA5IDM4LjYxMjlMMTQuNTA1NyA2MC4xMjlINjcuNDk0M0w2MS4xMTkxIDM4LjYxMjlIMjAuODgwOVpNNjMuMzA5OSAzOS40MjA4QzYyLjgzOTEgMzcuODMxOSA2MS4zNzkzIDM2Ljc0MTkgNTkuNzIyMSAzNi43NDE5SDIyLjI3NzlDMjAuNjIwNyAzNi43NDE5IDE5LjE2MDkgMzcuODMxOSAxOC42OTAxIDM5LjQyMDhMMTMuNDIzNyA1Ny4xOTVDMTIuNzEzMSA1OS41OTMyIDE0LjUxMDIgNjIgMTcuMDExNSA2Mkg2NC45ODg1QzY3LjQ4OTggNjIgNjkuMjg2OSA1OS41OTMyIDY4LjU3NjMgNTcuMTk1TDYzLjMwOTkgMzkuNDIwOFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNMjguNzkxMSA5LjA1NzA5QzM1LjUzMzggMi4zMTQzMiA0Ni40NjYgMi4zMTQzMiA1My4yMDg4IDkuMDU3MDlDNTkuNDI5OCAxNS4yNzgxIDU5Ljk3ODMgMjUuMTgxOSA1NC40ODI0IDMyLjA1MTlMNDAuOTk5OSA0OC45MDQ5TDI3LjUxNzUgMzIuMDUxOUMyMi4wMjE1IDI1LjE4MTkgMjIuNTcwMSAxNS4yNzgxIDI4Ljc5MTEgOS4wNTcwOVpcIiwgZmlsbDogYHVybCgjJHtncmFkaWVudElkfSlgIH0pLCBfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk00MS4wMDA0IDQ1LjkwOTlMNTMuMDIxOSAzMC44ODMxQzU3LjkyMjMgMjQuNzU3NiA1Ny40MzMyIDE1LjkyNjkgNTEuODg2MyAxMC4zOEM0NS44NzQyIDQuMzY3OTQgMzYuMTI2NiA0LjM2Nzk0IDMwLjExNDUgMTAuMzhDMjQuNTY3NiAxNS45MjY5IDI0LjA3ODYgMjQuNzU3NiAyOC45NzkgMzAuODgzMUw0MS4wMDA0IDQ1LjkwOTlaTTQyLjE5ODQgNDcuNDA3NEw1NC40ODI4IDMyLjA1MTlDNTkuOTc4OCAyNS4xODE5IDU5LjQzMDMgMTUuMjc4MSA1My4yMDkzIDkuMDU3MDdDNDYuNDY2NSAyLjMxNDMxIDM1LjUzNDMgMi4zMTQzMSAyOC43OTE2IDkuMDU3MDdDMjIuNTcwNiAxNS4yNzgxIDIyLjAyMiAyNS4xODE5IDI3LjUxOCAzMi4wNTE5TDM5LjgwMjQgNDcuNDA3NEw0MS4wMDA0IDQ4LjkwNDlMNDIuMTk4NCA0Ny40MDc0WlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjQxXCIsIGN5OiBcIjIxLjc3NDJcIiwgcjogXCI3LjQ4Mzg3XCIsIGZpbGw6IFwid2hpdGVcIiB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjQxXCIsIGN5OiBcIjIxLjc3NDJcIiwgcjogXCI2LjU0ODM5XCIsIHN0cm9rZTogYm9yZGVyQ29sb3IsIHN0cm9rZVdpZHRoOiBcIjEuODcwOTdcIiB9KSwgX2pzeChcInJlY3RcIiwgeyB4OiBcIjE5LjQ4MzlcIiwgeTogXCI1NS40NTE2XCIsIHdpZHRoOiBcIjUuNjEyOVwiLCBoZWlnaHQ6IFwiMS44NzA5N1wiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInJlY3RcIiwgeyB4OiBcIjI4LjgzODlcIiwgeTogXCI1NS40NTE2XCIsIHdpZHRoOiBcIjUuNjEyOVwiLCBoZWlnaHQ6IFwiMS44NzA5N1wiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInJlY3RcIiwgeyB4OiBcIjM4LjE5MzRcIiwgeTogXCI1NS40NTE2XCIsIHdpZHRoOiBcIjUuNjEyOVwiLCBoZWlnaHQ6IFwiMS44NzA5N1wiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInJlY3RcIiwgeyB4OiBcIjQ3LjU0ODNcIiwgeTogXCI1NS40NTE2XCIsIHdpZHRoOiBcIjUuNjEyOVwiLCBoZWlnaHQ6IFwiMS44NzA5N1wiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInJlY3RcIiwgeyB4OiBcIjU2LjkwMzNcIiwgeTogXCI1NS40NTE2XCIsIHdpZHRoOiBcIjUuNjEyOVwiLCBoZWlnaHQ6IFwiMS44NzA5N1wiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjE2XCIsIGN5OiBcIjU3XCIsIHI6IFwiMTNcIiwgZmlsbDogY29sb3IgfSksIF9qc3goXCJjaXJjbGVcIiwgeyBjeDogXCIxNlwiLCBjeTogXCI1N1wiLCByOiBcIjEyXCIsIHN0cm9rZTogYm9yZGVyQ29sb3IsIHN0cm9rZVdpZHRoOiBcIjJcIiB9KSwgX2pzeChcInBhdGhcIiwgeyBmaWxsUnVsZTogXCJldmVub2RkXCIsIGNsaXBSdWxlOiBcImV2ZW5vZGRcIiwgZDogXCJNMTQuNTg0MiA1Ni45OTg2TDEwLjM0MTYgNjEuMjQxMUwxMS43NTU5IDYyLjY1NTNMMTUuOTk4NCA1OC40MTI4TDIwLjI0MjUgNjIuNjU2OUwyMS42NTY4IDYxLjI0MjdMMTcuNDEyNiA1Ni45OTg2TDIxLjY1NTMgNTIuNzU1OEwyMC4yNDExIDUxLjM0MTZMMTUuOTk4NCA1NS41ODQ0TDExLjc1NzMgNTEuMzQzMkwxMC4zNDMgNTIuNzU3NEwxNC41ODQyIDU2Ljk5ODZaXCIsIGZpbGw6IFwid2hpdGVcIiB9KSwgX2pzeChcImRlZnNcIiwgeyBjaGlsZHJlbjogX2pzeChcImxpbmVhckdyYWRpZW50XCIsIHsgaWQ6IGdyYWRpZW50SWQsIHgxOiBcIjQwLjk5OTlcIiwgeTE6IFwiNC4wMDAwMlwiLCB4MjogXCI0MC45OTk5XCIsIHkyOiBcIjQ4LjkwNDlcIiwgZ3JhZGllbnRVbml0czogXCJ1c2VyU3BhY2VPblVzZVwiLCBjaGlsZHJlbjogcmVuZGVyR3JhZGllbnRTdG9wcyhncmFkaWVudENvbG9yKSB9KSB9KV0gfSkpKTtcbn07XG5leHBvcnQgY29uc3QgSWxsdXNJRCA9IChfYSkgPT4ge1xuICAgIHZhciB7IGJvcmRlckNvbG9yID0gREVGQVVMVF9CT1JERVJfQ09MT1IsIGdyYWRpZW50Q29sb3IgPSBERUZBVUxUX0dSQURJRU5UX0NPTE9SIH0gPSBfYSwgcmVzdCA9IF9fcmVzdChfYSwgW1wiYm9yZGVyQ29sb3JcIiwgXCJncmFkaWVudENvbG9yXCJdKTtcbiAgICBjb25zdCBncmFkaWVudElkMCA9IHVzZUlkKCk7XG4gICAgY29uc3QgZ3JhZGllbnRJZDEgPSB1c2VJZCgpO1xuICAgIGNvbnN0IGdyYWRpZW50SWQyID0gdXNlSWQoKTtcbiAgICByZXR1cm4gKF9qc3hzKEljb25XcmFwcGVyLCBPYmplY3QuYXNzaWduKHsgdmlld0JveDogXCIwIDAgNzQgNzRcIiB9LCByZXN0LCB7IGNoaWxkcmVuOiBbX2pzeChcInBhdGhcIiwgeyBkOiBcIk0xMSA1MEg2M1Y1OUgxMVY1MFpcIiwgZmlsbDogYHVybCgjJHtncmFkaWVudElkMH0pYCB9KSwgX2pzeChcInJlY3RcIiwgeyB4OiBcIjE1XCIsIHk6IFwiMzRcIiwgd2lkdGg6IFwiMThcIiwgaGVpZ2h0OiBcIjhcIiwgZmlsbDogYHVybCgjJHtncmFkaWVudElkMX0pYCB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjI0XCIsIGN5OiBcIjI0XCIsIHI6IFwiNVwiLCBmaWxsOiBgdXJsKCMke2dyYWRpZW50SWQyfSlgIH0pLCBfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk0xOCAzMkMxNS43OTA5IDMyIDE0IDMzLjc5MDkgMTQgMzZWNDNIMzRWMzZDMzQgMzMuNzkwOSAzMi4yMDkxIDMyIDMwIDMySDE4Wk0zMiA0MVYzNEgxNlY0MUgzMlpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLCBjbGlwUnVsZTogXCJldmVub2RkXCIsIGQ6IFwiTTMwIDI0QzMwIDI3LjMxMzcgMjcuMzEzNyAzMCAyNCAzMEMyMC42ODYzIDMwIDE4IDI3LjMxMzcgMTggMjRDMTggMjAuNjg2MyAyMC42ODYzIDE4IDI0IDE4QzI3LjMxMzcgMTggMzAgMjAuNjg2MyAzMCAyNFpNMjggMjRDMjggMjYuMjA5MSAyNi4yMDkxIDI4IDI0IDI4QzIxLjc5MDkgMjggMjAgMjYuMjA5MSAyMCAyNEMyMCAyMS43OTA5IDIxLjc5MDkgMjAgMjQgMjBDMjYuMjA5MSAyMCAyOCAyMS43OTA5IDI4IDI0WlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk01OSAyMUg0MlYxOUg1OVYyMVpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNNDIgMjhINTlWMjZINDJWMjhaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTU5IDM1SDQyVjMzSDU5VjM1WlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk00MiA0Mkg0OVY0MEg0MlY0MlpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNNTkgNDJINTJWNDBINTlWNDJaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk02MyA1Mkg2NEM2Ni4yMDkxIDUyIDY4IDUwLjIwOTEgNjggNDhWMTNDNjggMTAuNzkwOSA2Ni4yMDkxIDkgNjQgOUgxMEM3Ljc5MDg2IDkgNiAxMC43OTA5IDYgMTNWNDhDNiA1MC4yMDkxIDcuNzkwODYgNTIgMTAgNTJIMTFWNTVDMTEgNTcuMjA5MSAxMi43OTA5IDU5IDE1IDU5SDU5QzYxLjIwOTEgNTkgNjMgNTcuMjA5MSA2MyA1NVY1MlpNNjYgMTFIOFY1MEg2NlYxMVpNNjEgNTJIMTNWNTdINjFWNTJaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicmVjdFwiLCB7IHg6IFwiMjdcIiwgeTogXCI2NFwiLCB3aWR0aDogXCIyMVwiLCBoZWlnaHQ6IFwiMlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeHMoXCJkZWZzXCIsIHsgY2hpbGRyZW46IFtfanN4KFwibGluZWFyR3JhZGllbnRcIiwgeyBpZDogZ3JhZGllbnRJZDAsIHgxOiBcIjM3XCIsIHkxOiBcIjUwXCIsIHgyOiBcIjM3XCIsIHkyOiBcIjU5XCIsIGdyYWRpZW50VW5pdHM6IFwidXNlclNwYWNlT25Vc2VcIiwgY2hpbGRyZW46IHJlbmRlckdyYWRpZW50U3RvcHMoZ3JhZGllbnRDb2xvcikgfSksIF9qc3goXCJsaW5lYXJHcmFkaWVudFwiLCB7IGlkOiBncmFkaWVudElkMSwgeDE6IFwiMjRcIiwgeTE6IFwiMzRcIiwgeDI6IFwiMjRcIiwgeTI6IFwiNDJcIiwgZ3JhZGllbnRVbml0czogXCJ1c2VyU3BhY2VPblVzZVwiLCBjaGlsZHJlbjogcmVuZGVyR3JhZGllbnRTdG9wcyhncmFkaWVudENvbG9yKSB9KSwgX2pzeChcImxpbmVhckdyYWRpZW50XCIsIHsgaWQ6IGdyYWRpZW50SWQyLCB4MTogXCIyNFwiLCB5MTogXCIxOVwiLCB4MjogXCIyNFwiLCB5MjogXCIyOVwiLCBncmFkaWVudFVuaXRzOiBcInVzZXJTcGFjZU9uVXNlXCIsIGNoaWxkcmVuOiByZW5kZXJHcmFkaWVudFN0b3BzKGdyYWRpZW50Q29sb3IpIH0pXSB9KV0gfSkpKTtcbn07XG5leHBvcnQgY29uc3QgSWxsdXNWZXJpZmljYXRpb24gPSAoX2EpID0+IHtcbiAgICB2YXIgeyBib3JkZXJDb2xvciA9IERFRkFVTFRfQk9SREVSX0NPTE9SLCBncmFkaWVudENvbG9yID0gREVGQVVMVF9HUkFESUVOVF9DT0xPUiB9ID0gX2EsIHJlc3QgPSBfX3Jlc3QoX2EsIFtcImJvcmRlckNvbG9yXCIsIFwiZ3JhZGllbnRDb2xvclwiXSk7XG4gICAgY29uc3QgZ3JhZGllbnRJZDAgPSB1c2VJZCgpO1xuICAgIGNvbnN0IGdyYWRpZW50SWQxID0gdXNlSWQoKTtcbiAgICByZXR1cm4gKF9qc3hzKEljb25XcmFwcGVyLCBPYmplY3QuYXNzaWduKHsgdmlld0JveDogXCIwIDAgNzQgNzRcIiB9LCByZXN0LCB7IGNoaWxkcmVuOiBbX2pzeChcInBhdGhcIiwgeyBkOiBcIk0xMCA2QzcuNzkwODYgNiA2IDcuNzkwODYgNiAxMFYxOUg4VjhIMTlWNkgxMFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNNjQgNkM2Ni4yMDkxIDYgNjggNy43OTA4NiA2OCAxMFYxOUg2NlY4SDU1VjZINjRaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTY0IDY4QzY2LjIwOTEgNjggNjggNjYuMjA5MSA2OCA2NFY1NUg2NlY2Nkg1NVY2OEg2NFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNNjggMTBDNjggNy43OTA4NiA2Ni4yMDkxIDYgNjQgNkw1NSA2TDU1IDhMNjYgOEw2NiAxOUw2OCAxOUw2OCAxMFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNNjggNjRDNjggNjYuMjA5MSA2Ni4yMDkxIDY4IDY0IDY4TDU1IDY4TDU1IDY2TDY2IDY2TDY2IDU1TDY4IDU1TDY4IDY0WlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk02IDY0QzYgNjYuMjA5MSA3Ljc5MDg2IDY4IDEwIDY4TDE5IDY4TDE5IDY2TDggNjZMOCA1NUw2IDU1TDYgNjRaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTQyLjQ1NDYgMjYuODU0NFYxMi45NDUzTDU3LjE4MTkgMjYuODU0NEg0Mi40NTQ2WlwiLCBmaWxsOiBgdXJsKCMke2dyYWRpZW50SWQwfSlgIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTQ5LjgxODUgMzUuMDM1OUgyOS4zNjM5VjMzLjM5OTVINDkuODE4NVYzNS4wMzU5WlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk0yOS4zNjM5IDM5LjEyNjhIMzIuNjM2N1Y0MC43NjMxSDI5LjM2MzlWMzkuMTI2OFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNMzUuMDkxMiAzOS4xMjY4SDM4LjM2MzlWNDAuNzYzMUgzNS4wOTEyVjM5LjEyNjhaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTQ0LjA5MTIgNDAuNzYzMVYzOS4xMjY4SDQwLjgxODVWNDAuNzYzMUg0NC4wOTEyWlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk00Ni41NDU4IDM5LjEyNjhINDkuODE4NVY0MC43NjMxSDQ2LjU0NThWMzkuMTI2OFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLCBjbGlwUnVsZTogXCJldmVub2RkXCIsIGQ6IFwiTTQxLjk3MTkgMTIuMTI2OEM0Mi44MDc1IDEyLjEyNjggNDMuNjExNSAxMi40NDY0IDQ0LjIxOSAxMy4wMjAyTDU2Ljk3NDcgMjUuMDY3MkM1Ny42MjkzIDI1LjY4NTUgNTguMDAwMyAyNi41NDYxIDU4LjAwMDMgMjcuNDQ2NlY1NC42NzIyQzU4LjAwMDMgNTYuNDc5NyA1Ni41MzUxIDU3Ljk0NSA1NC43Mjc2IDU3Ljk0NUgyNC40NTQ5QzIyLjY0NzQgNTcuOTQ1IDIxLjE4MjEgNTYuNDc5NyAyMS4xODIxIDU0LjY3MjJWMTUuMzk5NUMyMS4xODIxIDEzLjU5MiAyMi42NDc0IDEyLjEyNjggMjQuNDU0OSAxMi4xMjY4SDQxLjk3MTlaTTU2LjM2MzkgNTYuMzA4NkgyMi44MTg1VjEzLjc2MzFINDEuNjM2N1YyNC4zOTk1QzQxLjYzNjcgMjYuMjA3IDQzLjEwMTkgMjcuNjcyMiA0NC45MDk0IDI3LjY3MjJINTYuMzYzOVY1Ni4zMDg2Wk01NS42MTcxIDI2LjAzNTlMNDMuMjczIDE0LjM3NzZWMjYuMDM1OUg1NS42MTcxWlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjI0LjQ1NDZcIiwgY3k6IFwiNTEuNDAwNVwiLCByOiBcIjlcIiwgZmlsbDogYHVybCgjJHtncmFkaWVudElkMX0pYCB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjI0LjQ1NDZcIiwgY3k6IFwiNTEuNDAwNVwiLCByOiBcIjguMTgxODJcIiwgc3Ryb2tlOiBib3JkZXJDb2xvciwgc3Ryb2tlV2lkdGg6IFwiMS42MzYzNlwiIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTE4LjcyNzMgNTcuMTI3TDEzIDYyLjg1NDJcIiwgc3Ryb2tlOiBib3JkZXJDb2xvciwgc3Ryb2tlV2lkdGg6IFwiMS42MzYzNlwiIH0pLCBfanN4cyhcImRlZnNcIiwgeyBjaGlsZHJlbjogW19qc3goXCJsaW5lYXJHcmFkaWVudFwiLCB7IGlkOiBncmFkaWVudElkMCwgeDE6IFwiNDkuODE4MlwiLCB5MTogXCIxMi45NDUzXCIsIHgyOiBcIjQ5LjgxODJcIiwgeTI6IFwiMjYuODU0NFwiLCBncmFkaWVudFVuaXRzOiBcInVzZXJTcGFjZU9uVXNlXCIsIGNoaWxkcmVuOiByZW5kZXJHcmFkaWVudFN0b3BzKGdyYWRpZW50Q29sb3IpIH0pLCBfanN4KFwibGluZWFyR3JhZGllbnRcIiwgeyBpZDogZ3JhZGllbnRJZDEsIHgxOiBcIjI0LjQ1NDZcIiwgeTE6IFwiNDIuNDAwNVwiLCB4MjogXCIyNC40NTQ2XCIsIHkyOiBcIjYwLjQwMDVcIiwgZ3JhZGllbnRVbml0czogXCJ1c2VyU3BhY2VPblVzZVwiLCBjaGlsZHJlbjogcmVuZGVyR3JhZGllbnRTdG9wcyhncmFkaWVudENvbG9yKSB9KV0gfSldIH0pKSk7XG59O1xuZXhwb3J0IGNvbnN0IElsbHVzUGFzc2tleSA9IChfYSkgPT4ge1xuICAgIHZhciB7IGJvcmRlckNvbG9yID0gREVGQVVMVF9CT1JERVJfQ09MT1IsIGdyYWRpZW50Q29sb3IgPSBERUZBVUxUX0dSQURJRU5UX0NPTE9SIH0gPSBfYSwgcmVzdCA9IF9fcmVzdChfYSwgW1wiYm9yZGVyQ29sb3JcIiwgXCJncmFkaWVudENvbG9yXCJdKTtcbiAgICBjb25zdCBncmFkaWVudElkMCA9IHVzZUlkKCk7XG4gICAgY29uc3QgZ3JhZGllbnRJZDEgPSB1c2VJZCgpO1xuICAgIGNvbnN0IGdyYWRpZW50SWQyID0gdXNlSWQoKTtcbiAgICBjb25zdCBiYWRnZUdyYWRpZW50SWQgPSB1c2VJZCgpO1xuICAgIHJldHVybiAoX2pzeHMoSWNvbldyYXBwZXIsIE9iamVjdC5hc3NpZ24oeyB2aWV3Qm94OiBcIjAgMCA3NCA3NFwiIH0sIHJlc3QsIHsgY2hpbGRyZW46IFtfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTExIDUySDYzVjYxSDExVjUyWlwiLCBmaWxsOiBgdXJsKCMke2dyYWRpZW50SWQwfSlgIH0pLCBfanN4KFwicmVjdFwiLCB7IHg6IFwiMTVcIiwgeTogXCIzNlwiLCB3aWR0aDogXCIxOFwiLCBoZWlnaHQ6IFwiOFwiLCBmaWxsOiBgdXJsKCMke2dyYWRpZW50SWQxfSlgIH0pLCBfanN4KFwiY2lyY2xlXCIsIHsgY3g6IFwiMjRcIiwgY3k6IFwiMjZcIiwgcjogXCI1XCIsIGZpbGw6IGB1cmwoIyR7Z3JhZGllbnRJZDJ9KWAgfSksIF9qc3goXCJwYXRoXCIsIHsgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLCBjbGlwUnVsZTogXCJldmVub2RkXCIsIGQ6IFwiTTE4IDM0QzE1Ljc5MDkgMzQgMTQgMzUuNzkwOSAxNCAzOFY0NUgzNFYzOEMzNCAzNS43OTA5IDMyLjIwOTEgMzQgMzAgMzRIMThaTTMyIDQzVjM2SDE2VjQzSDMyWlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBmaWxsUnVsZTogXCJldmVub2RkXCIsIGNsaXBSdWxlOiBcImV2ZW5vZGRcIiwgZDogXCJNMzAgMjZDMzAgMjkuMzEzNyAyNy4zMTM3IDMyIDI0IDMyQzIwLjY4NjMgMzIgMTggMjkuMzEzNyAxOCAyNkMxOCAyMi42ODYzIDIwLjY4NjMgMjAgMjQgMjBDMjcuMzEzNyAyMCAzMCAyMi42ODYzIDMwIDI2Wk0yOCAyNkMyOCAyOC4yMDkxIDI2LjIwOTEgMzAgMjQgMzBDMjEuNzkwOSAzMCAyMCAyOC4yMDkxIDIwIDI2QzIwIDIzLjc5MDkgMjEuNzkwOSAyMiAyNCAyMkMyNi4yMDkxIDIyIDI4IDIzLjc5MDkgMjggMjZaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTU5IDIzSDQyVjIxSDU5VjIzWlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk00MiAzMEg1OVYyOEg0MlYzMFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNNTkgMzdINDJWMzVINTlWMzdaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTQyIDQ0SDQ5VjQySDQyVjQ0WlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk01OSA0NEg1MlY0Mkg1OVY0NFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLCBjbGlwUnVsZTogXCJldmVub2RkXCIsIGQ6IFwiTTYzIDU0SDY0QzY2LjIwOTEgNTQgNjggNTIuMjA5MSA2OCA1MFYxNUM2OCAxMi43OTA5IDY2LjIwOTEgMTEgNjQgMTFIMTBDNy43OTA4NiAxMSA2IDEyLjc5MDkgNiAxNVY1MEM2IDUyLjIwOTEgNy43OTA4NiA1NCAxMCA1NEgxMVY1N0MxMSA1OS4yMDkxIDEyLjc5MDkgNjEgMTUgNjFINTlDNjEuMjA5MSA2MSA2MyA1OS4yMDkxIDYzIDU3VjU0Wk02NiAxM0g4VjUySDY2VjEzWk02MSA1NEgxM1Y1OUg2MVY1NFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJyZWN0XCIsIHsgeDogXCIyN1wiLCB5OiBcIjY2XCIsIHdpZHRoOiBcIjIxXCIsIGhlaWdodDogXCIyXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwiY2lyY2xlXCIsIHsgY3g6IFwiNTlcIiwgY3k6IFwiMTVcIiwgcjogXCIxNVwiLCBmaWxsOiBgdXJsKCMke2JhZGdlR3JhZGllbnRJZH0pYCB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjU5XCIsIGN5OiBcIjE1XCIsIHI6IFwiMTRcIiwgc3Ryb2tlOiBib3JkZXJDb2xvciwgc3Ryb2tlV2lkdGg6IFwiMlwiIH0pLCBfanN4KFwiZ1wiLCB7IHRyYW5zZm9ybTogXCJ0cmFuc2xhdGUoNTAuNjY2NyA2LjgzMzMpXCIsIGNoaWxkcmVuOiBfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk0xLjY2NjY3IDEuNjY2NjdIMTVWNS40ODgwMUMxNSAxMC4xMTAyIDEyLjQyNDkgMTQuMzQxMyA4LjMzMzMzIDE2LjQ2ODJDNC4yNDE3NyAxNC4zNDEzIDEuNjY2NjcgMTAuMTEwMiAxLjY2NjY3IDUuNDg4MDFWMS42NjY2N1pNMCAxLjY2NjY3QzAgMC43NDYxOTIgMC43NDYxOTIgMCAxLjY2NjY3IDBIMTVDMTUuOTIwNSAwIDE2LjY2NjcgMC43NDYxOTIgMTYuNjY2NyAxLjY2NjY3VjUuNDg4MDFDMTYuNjY2NyAxMC44MDY5IDEzLjY2MTYgMTUuNjY5MiA4LjkwNDI0IDE4LjA0NzlDOC41NDQ4NCAxOC4yMjc2IDguMTIxODIgMTguMjI3NiA3Ljc2MjQzIDE4LjA0NzlDMy4wMDUxIDE1LjY2OTIgMCAxMC44MDY5IDAgNS40ODgwMVYxLjY2NjY3Wk04LjMzMzMzIDYuMjQ5OEM4Ljc5MzU3IDYuMjQ5OCA5LjE2NjY3IDUuODc2NyA5LjE2NjY3IDUuNDE2NDZDOS4xNjY2NyA0Ljk1NjIzIDguNzkzNTcgNC41ODMxMyA4LjMzMzMzIDQuNTgzMTNDNy44NzMxIDQuNTgzMTMgNy41IDQuOTU2MjMgNy41IDUuNDE2NDZDNy41IDUuODc2NyA3Ljg3MzEgNi4yNDk4IDguMzMzMzMgNi4yNDk4Wk0xMC44MzMzIDUuNDE2NDZDMTAuODMzMyA2LjUwNDk4IDEwLjEzNzcgNy40MzEwMSA5LjE2NjY3IDcuNzc0MjFWOS45OTk4SDEwLjgzMzNWMTEuNjY2NUg5LjE2NjY3VjEzLjMzMzFINy41VjcuNzc0MjFDNi41MjkwMSA3LjQzMTAxIDUuODMzMzMgNi41MDQ5OCA1LjgzMzMzIDUuNDE2NDZDNS44MzMzMyA0LjAzNTc1IDYuOTUyNjIgMi45MTY0NiA4LjMzMzMzIDIuOTE2NDZDOS43MTQwNSAyLjkxNjQ2IDEwLjgzMzMgNC4wMzU3NSAxMC44MzMzIDUuNDE2NDZaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pIH0pLCBfanN4cyhcImRlZnNcIiwgeyBjaGlsZHJlbjogW19qc3goXCJsaW5lYXJHcmFkaWVudFwiLCB7IGlkOiBncmFkaWVudElkMCwgeDE6IFwiMzdcIiwgeTE6IFwiNTJcIiwgeDI6IFwiMzdcIiwgeTI6IFwiNjFcIiwgZ3JhZGllbnRVbml0czogXCJ1c2VyU3BhY2VPblVzZVwiLCBjaGlsZHJlbjogcmVuZGVyR3JhZGllbnRTdG9wcyhncmFkaWVudENvbG9yKSB9KSwgX2pzeChcImxpbmVhckdyYWRpZW50XCIsIHsgaWQ6IGdyYWRpZW50SWQxLCB4MTogXCIyNFwiLCB5MTogXCIzNlwiLCB4MjogXCIyNFwiLCB5MjogXCI0NFwiLCBncmFkaWVudFVuaXRzOiBcInVzZXJTcGFjZU9uVXNlXCIsIGNoaWxkcmVuOiByZW5kZXJHcmFkaWVudFN0b3BzKGdyYWRpZW50Q29sb3IpIH0pLCBfanN4KFwibGluZWFyR3JhZGllbnRcIiwgeyBpZDogZ3JhZGllbnRJZDIsIHgxOiBcIjI0XCIsIHkxOiBcIjIxXCIsIHgyOiBcIjI0XCIsIHkyOiBcIjMxXCIsIGdyYWRpZW50VW5pdHM6IFwidXNlclNwYWNlT25Vc2VcIiwgY2hpbGRyZW46IHJlbmRlckdyYWRpZW50U3RvcHMoZ3JhZGllbnRDb2xvcikgfSksIF9qc3goXCJsaW5lYXJHcmFkaWVudFwiLCB7IGlkOiBiYWRnZUdyYWRpZW50SWQsIHgxOiBcIjU5XCIsIHkxOiBcIjBcIiwgeDI6IFwiNTlcIiwgeTI6IFwiMzBcIiwgZ3JhZGllbnRVbml0czogXCJ1c2VyU3BhY2VPblVzZVwiLCBjaGlsZHJlbjogcmVuZGVyR3JhZGllbnRTdG9wcyhncmFkaWVudENvbG9yKSB9KV0gfSldIH0pKSk7XG59O1xuZXhwb3J0IGNvbnN0IElsbHVzUGVuZGluZyA9IChfYSkgPT4ge1xuICAgIHZhciB7IGJvcmRlckNvbG9yID0gREVGQVVMVF9CT1JERVJfQ09MT1IsIGNvbG9yID0gREVGQVVMVF9QRU5ESU5HX0NPTE9SLCBncmFkaWVudENvbG9yID0gREVGQVVMVF9HUkFESUVOVF9DT0xPUiB9ID0gX2EsIHJlc3QgPSBfX3Jlc3QoX2EsIFtcImJvcmRlckNvbG9yXCIsIFwiY29sb3JcIiwgXCJncmFkaWVudENvbG9yXCJdKTtcbiAgICBjb25zdCBncmFkaWVudElkID0gdXNlSWQoKTtcbiAgICByZXR1cm4gKF9qc3hzKEljb25XcmFwcGVyLCBPYmplY3QuYXNzaWduKHsgdmlld0JveDogXCIwIDAgNzQgNzRcIiB9LCByZXN0LCB7IGNoaWxkcmVuOiBbX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjM2Ljk5NzJcIiwgY3k6IFwiMzYuOTk4MVwiLCByOiBcIjI5LjU5MDlcIiwgZmlsbDogXCJ3aGl0ZVwiIH0pLCBfanN4KFwiY2lyY2xlXCIsIHsgY3g6IFwiMzdcIiwgY3k6IFwiMzdcIiwgcjogXCIzMFwiLCBzdHJva2U6IGJvcmRlckNvbG9yLCBzdHJva2VXaWR0aDogXCIyXCIgfSksIF9qc3goXCJjaXJjbGVcIiwgeyBjeDogXCIzN1wiLCBjeTogXCIzN1wiLCByOiBcIjI0XCIsIGZpbGw6IGB1cmwoIyR7Z3JhZGllbnRJZH0pYCB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjM3XCIsIGN5OiBcIjM3XCIsIHI6IFwiMjMuNVwiLCBzdHJva2U6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwiY2lyY2xlXCIsIHsgY3g6IFwiMTVcIiwgY3k6IFwiNThcIiwgcjogXCIxM1wiLCBmaWxsOiBjb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk0xNSA1MlY1OEwyMSA2MVwiLCBzdHJva2U6IGJvcmRlckNvbG9yLCBzdHJva2VXaWR0aDogXCIyXCIgfSksIF9qc3goXCJjaXJjbGVcIiwgeyBjeDogXCIxNVwiLCBjeTogXCI1OFwiLCByOiBcIjEyXCIsIHN0cm9rZTogYm9yZGVyQ29sb3IsIHN0cm9rZVdpZHRoOiBcIjJcIiB9KSwgX2pzeChcInBhdGhcIiwgeyB0cmFuc2Zvcm06IFwidHJhbnNsYXRlKDc0IDApIHNjYWxlKC0xIDEpXCIsIGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk0zMC40MTQ0IDMxLjAwMDFMMzMuNzA3MyAzNC4yOTNMMzIuMjkzIDM1LjcwNzJMMjYuNTg1OSAzMC4wMDAxTDMyLjI5MyAyNC4yOTNMMzMuNzA3MyAyNS43MDcyTDMwLjQxNDQgMjkuMDAwMUw0MC4wMDAyIDI5LjAwMDFDNDMuODY2MSAyOS4wMDAxIDQ3LjAwMDIgMzIuMTM0MSA0Ny4wMDAyIDM2LjAwMDFMNDUuMDAwMiAzNi4wMDAxQzQ1LjAwMDIgMzMuMjM4NyA0Mi43NjE2IDMxLjAwMDEgNDAuMDAwMiAzMS4wMDAxTDMwLjQxNDQgMzEuMDAwMVpNMjkuMDAwMiAzNi4wMDAxQzI5LjAwMDIgMzguNzYxNSAzMS4yMzg3IDQxLjAwMDEgMzQuMDAwMiA0MS4wMDAxSDQzLjU4NTlMNDAuMjkzIDM3LjcwNzJMNDEuNzA3MyAzNi4yOTNMNDcuNDE0NCA0Mi4wMDAxTDQxLjcwNzMgNDcuNzA3Mkw0MC4yOTMgNDYuMjkzTDQzLjU4NTkgNDMuMDAwMUgzNC4wMDAyQzMwLjEzNDIgNDMuMDAwMSAyNy4wMDAyIDM5Ljg2NjEgMjcuMDAwMiAzNi4wMDAxSDI5LjAwMDJaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwiZGVmc1wiLCB7IGNoaWxkcmVuOiBfanN4KFwibGluZWFyR3JhZGllbnRcIiwgeyBpZDogZ3JhZGllbnRJZCwgeDE6IFwiMzdcIiwgeTE6IFwiMTNcIiwgeDI6IFwiMzdcIiwgeTI6IFwiNjFcIiwgZ3JhZGllbnRVbml0czogXCJ1c2VyU3BhY2VPblVzZVwiLCBjaGlsZHJlbjogcmVuZGVyR3JhZGllbnRTdG9wcyhncmFkaWVudENvbG9yKSB9KSB9KV0gfSkpKTtcbn07XG5leHBvcnQgY29uc3QgSWxsdXNBZGRBY2NvdW50ID0gKF9hKSA9PiB7XG4gICAgdmFyIHsgYm9yZGVyQ29sb3IgPSBERUZBVUxUX0JPUkRFUl9DT0xPUiwgZ3JhZGllbnRDb2xvciA9IERFRkFVTFRfR1JBRElFTlRfQ09MT1IgfSA9IF9hLCByZXN0ID0gX19yZXN0KF9hLCBbXCJib3JkZXJDb2xvclwiLCBcImdyYWRpZW50Q29sb3JcIl0pO1xuICAgIGNvbnN0IGNhcmRHcmFkaWVudElkID0gdXNlSWQoKTtcbiAgICBjb25zdCBiYWRnZUdyYWRpZW50SWQgPSB1c2VJZCgpO1xuICAgIHJldHVybiAoX2pzeHMoSWNvbldyYXBwZXIsIE9iamVjdC5hc3NpZ24oeyB2aWV3Qm94OiBcIjAgMCA3NCA3NFwiIH0sIHJlc3QsIHsgY2hpbGRyZW46IFtfanN4KFwicmVjdFwiLCB7IHdpZHRoOiBcIjc0XCIsIGhlaWdodDogXCI3NFwiLCBmaWxsOiBcIndoaXRlXCIgfSksIF9qc3goXCJyZWN0XCIsIHsgeDogXCIyMi41XCIsIHk6IFwiMjZcIiwgd2lkdGg6IFwiMzBcIiwgaGVpZ2h0OiBcIjI4XCIsIGZpbGw6IGB1cmwoIyR7Y2FyZEdyYWRpZW50SWR9KWAgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNMzcuNSAxNC41QzM1Ljg0MzEgMTQuNSAzNC41IDE1Ljg0MzEgMzQuNSAxNy41QzM0LjUgMTkuMTU2OSAzNS44NDMxIDIwLjUgMzcuNSAyMC41QzM5LjE1NjkgMjAuNSA0MC41IDE5LjE1NjkgNDAuNSAxNy41QzQwLjUgMTUuODQzMSAzOS4xNTY5IDE0LjUgMzcuNSAxNC41WlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBmaWxsUnVsZTogXCJldmVub2RkXCIsIGNsaXBSdWxlOiBcImV2ZW5vZGRcIiwgZDogXCJNNjAuNSAyN0w2NC41IDI3QzY2LjcwOTEgMjcgNjguNSAyNS4yMDkxIDY4LjUgMjNMNjguNSAyMC43NDA4QzY4LjUgMTkuMDg4OSA2Ny40ODQ1IDE3LjYwNjkgNjUuOTQ0IDE3LjAxMDZMMzguOTQ0IDYuNTU4OTZDMzguMDE0OSA2LjE5OTMyIDM2Ljk4NTEgNi4xOTkzMiAzNi4wNTYgNi41NTg5Nkw5LjA1NjAyIDE3LjAxMDZDNy41MTU0OSAxNy42MDY5IDYuNSAxOS4wODg5IDYuNSAyMC43NDA4TDYuNSAyM0M2LjUgMjUuMjA5MSA4LjI5MDg2IDI3IDEwLjUgMjdMMTQuNSAyN0wxNC41IDUzTDEzLjUgNTNDMTEuMjkwOSA1MyA5LjUgNTQuNzkwOSA5LjUgNTdMOS41IDU5TDguNSA1OUM2LjI5MDg2IDU5IDQuNSA2MC43OTA5IDQuNSA2M0w0LjUgNjdMNzAuNSA2N0w3MC41IDYzQzcwLjUgNjAuNzkwOSA2OC43MDkxIDU5IDY2LjUgNTlMNjQuNSA1OUw2NC41IDU3QzY0LjUgNTQuNzkwOSA2Mi43MDkxIDUzIDYwLjUgNTNMNjAuNSAyN1pNNjYuNSAxOS4zNzA0TDM3LjUgOC4xNDQ2Mkw4LjUgMTkuMzcwNEw4LjUgMjVMNjYuNSAyNUw2Ni41IDE5LjM3MDRaTTU4LjUgMjdMNTMuNSAyN0w1My41IDUzTDU4LjUgNTNMNTguNSAyN1pNNTEuNSA1M0w1MS41IDI3TDIzLjUgMjdMMjMuNSA1M0w1MS41IDUzWk0xMS41IDU1TDExLjUgNTlMNjIuNSA1OUw2Mi41IDU1TDExLjUgNTVaTTIxLjUgNTNMMTYuNSA1M0wxNi41IDI3TDIxLjUgMjdMMjEuNSA1M1pNNi41IDYxTDYuNSA2NUw2OC41IDY1TDY4LjUgNjFMNi41IDYxWlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjU5Ljg4NDhcIiwgY3k6IFwiNTkuMzg0OFwiLCByOiBcIjEzXCIsIHRyYW5zZm9ybTogXCJyb3RhdGUoLTQ1IDU5Ljg4NDggNTkuMzg0OClcIiwgZmlsbDogYHVybCgjJHtiYWRnZUdyYWRpZW50SWR9KWAgfSksIF9qc3goXCJjaXJjbGVcIiwgeyBjeDogXCI1OS44ODQ4XCIsIGN5OiBcIjU5LjM4NDhcIiwgcjogXCIxMlwiLCB0cmFuc2Zvcm06IFwicm90YXRlKC00NSA1OS44ODQ4IDU5LjM4NDgpXCIsIHN0cm9rZTogYm9yZGVyQ29sb3IsIHN0cm9rZVdpZHRoOiBcIjJcIiB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk02MC44ODI4IDU4LjM4NDhINjYuODg0OFY2MC4zODQ4SDYwLjg4MjhWNjYuMzg0OEg1OC44ODI4VjYwLjM4NDhINTIuODg0OFY1OC4zODQ4SDU4Ljg4MjhWNTIuMzg0OEg2MC44ODI4VjU4LjM4NDhaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4cyhcImRlZnNcIiwgeyBjaGlsZHJlbjogW19qc3goXCJsaW5lYXJHcmFkaWVudFwiLCB7IGlkOiBjYXJkR3JhZGllbnRJZCwgeDE6IFwiMzcuNVwiLCB5MTogXCIyNlwiLCB4MjogXCIzNy41XCIsIHkyOiBcIjU0XCIsIGdyYWRpZW50VW5pdHM6IFwidXNlclNwYWNlT25Vc2VcIiwgY2hpbGRyZW46IHJlbmRlckdyYWRpZW50U3RvcHMoZ3JhZGllbnRDb2xvcikgfSksIF9qc3goXCJsaW5lYXJHcmFkaWVudFwiLCB7IGlkOiBiYWRnZUdyYWRpZW50SWQsIHgxOiBcIjU5Ljg4NDhcIiwgeTE6IFwiNDYuMzg0OFwiLCB4MjogXCI1OS44ODQ4XCIsIHkyOiBcIjcyLjM4NDhcIiwgZ3JhZGllbnRVbml0czogXCJ1c2VyU3BhY2VPblVzZVwiLCBjaGlsZHJlbjogcmVuZGVyR3JhZGllbnRTdG9wcyhncmFkaWVudENvbG9yKSB9KV0gfSldIH0pKSk7XG59OyIsbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==