@1money/component-ui 0.0.27 → 0.0.29

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 (201) hide show
  1. package/es/components/Alert/Alert.js +6 -10
  2. package/es/components/Calendar/Calendar.js +5 -6
  3. package/es/components/Checkbox/Checkbox.js +2 -1
  4. package/es/components/Checkbox/CheckboxGroup.js +2 -1
  5. package/es/components/Checkbox/index.js +2 -1
  6. package/es/components/CoachMark/CoachMark.js +3 -4
  7. package/es/components/Icons/Icon.d.ts +5 -0
  8. package/es/components/Icons/Icon.js +19 -0
  9. package/es/components/Icons/Icons.d.ts +8 -173
  10. package/es/components/Icons/Icons.js +4 -188
  11. package/es/components/Icons/icon-set/brand.d.ts +6 -0
  12. package/es/components/Icons/icon-set/brand.js +62 -0
  13. package/es/components/Icons/icon-set/currency.d.ts +7 -0
  14. package/es/components/Icons/icon-set/currency.js +101 -0
  15. package/es/components/Icons/icon-set/dynamic.d.ts +16 -0
  16. package/es/components/Icons/icon-set/dynamic.js +92 -0
  17. package/es/components/Icons/icon-set/functional.d.ts +19 -0
  18. package/es/components/Icons/icon-set/functional.js +286 -0
  19. package/es/components/Icons/icon-set/index.d.ts +10 -0
  20. package/es/components/Icons/icon-set/index.js +10 -0
  21. package/es/components/Icons/icon-set/menu.d.ts +22 -0
  22. package/es/components/Icons/icon-set/menu.js +372 -0
  23. package/es/components/Icons/icon-set/notification.d.ts +6 -0
  24. package/es/components/Icons/icon-set/notification.js +109 -0
  25. package/es/components/Icons/icon-set/primary.d.ts +14 -0
  26. package/es/components/Icons/icon-set/primary.js +222 -0
  27. package/es/components/Icons/icon-set/registry.d.ts +159 -0
  28. package/es/components/Icons/icon-set/registry.js +166 -0
  29. package/es/components/Icons/icon-set/system.d.ts +64 -0
  30. package/es/components/Icons/icon-set/system.js +1093 -0
  31. package/es/components/Icons/{Illustrations.d.ts → illustrations/Illustrations.d.ts} +1 -1
  32. package/es/components/Icons/illustrations/Illustrations.js +874 -0
  33. package/es/components/Icons/illustrations/index.d.ts +2 -0
  34. package/es/components/Icons/illustrations/index.js +2 -0
  35. package/es/components/Icons/index.d.ts +5 -2
  36. package/es/components/Icons/index.js +6 -2
  37. package/es/components/Icons/interface.d.ts +9 -24
  38. package/es/components/Icons/{Logo.d.ts → logos/Logo.d.ts} +1 -1
  39. package/es/components/Icons/logos/Logo.js +209 -0
  40. package/es/components/Icons/logos/index.d.ts +2 -0
  41. package/es/components/Icons/logos/index.js +2 -0
  42. package/es/components/Icons/primitives/IconHover.d.ts +4 -0
  43. package/es/components/Icons/primitives/IconHover.js +28 -0
  44. package/es/components/Icons/{Wrapper.d.ts → primitives/IconWrapper.d.ts} +1 -2
  45. package/es/components/Icons/primitives/IconWrapper.js +81 -0
  46. package/es/components/Icons/primitives/index.d.ts +5 -0
  47. package/es/components/Icons/primitives/index.js +5 -0
  48. package/es/components/Icons/primitives/interface.d.ts +25 -0
  49. package/es/components/Icons/primitives/interface.js +2 -0
  50. package/es/components/Icons/types.d.ts +3 -0
  51. package/es/components/Icons/types.js +2 -0
  52. package/es/components/Input/Amount/Amount.d.ts +2 -2
  53. package/es/components/Input/Amount/Amount.js +5 -2
  54. package/es/components/Input/Input/Input.js +2 -1
  55. package/es/components/Input/Mask/Mask.d.ts +2 -2
  56. package/es/components/Input/Mask/Mask.js +5 -2
  57. package/es/components/Input/OTP/OTP.d.ts +2 -2
  58. package/es/components/Input/OTP/OTP.js +5 -2
  59. package/es/components/Input/Password/Password.d.ts +2 -2
  60. package/es/components/Input/Password/Password.js +8 -7
  61. package/es/components/Input/Search/Search.d.ts +2 -2
  62. package/es/components/Input/Search/Search.js +8 -7
  63. package/es/components/Input/TextArea/TextArea.d.ts +2 -2
  64. package/es/components/Input/TextArea/TextArea.js +5 -2
  65. package/es/components/Input/Trade/Trade.d.ts +2 -2
  66. package/es/components/Input/Trade/Trade.js +5 -2
  67. package/es/components/Navigation/NavigationLogo.js +4 -6
  68. package/es/components/ProForm/ProForm.d.ts +2 -1
  69. package/es/components/ProForm/ProForm.js +120 -49
  70. package/es/components/ProForm/ProFormDependency.d.ts +2 -1
  71. package/es/components/ProForm/ProFormDependency.js +101 -8
  72. package/es/components/ProForm/Submitter.js +42 -3
  73. package/es/components/ProForm/core/constants.d.ts +1 -1
  74. package/es/components/ProForm/core/constants.js +3 -3
  75. package/es/components/ProForm/core/hooks/useForm.d.ts +2 -2
  76. package/es/components/ProForm/core/hooks/useForm.js +249 -113
  77. package/es/components/ProForm/core/hooks/useFormCore.js +3 -3
  78. package/es/components/ProForm/core/interface.d.ts +26 -0
  79. package/es/components/ProForm/core/useFormItem.d.ts +1 -0
  80. package/es/components/ProForm/core/useFormItem.js +56 -4
  81. package/es/components/ProForm/index.d.ts +3 -2
  82. package/es/components/ProForm/index.js +8 -2
  83. package/es/components/ProForm/interface.d.ts +11 -5
  84. package/es/components/Radio/RadioGroup.js +2 -1
  85. package/es/components/Select/SelectFieldShell.js +3 -4
  86. package/es/components/Select/SelectOptionContent.js +3 -4
  87. package/es/components/Select/SelectSearchControl.js +3 -4
  88. package/es/components/Select/SelectValueContent.js +3 -4
  89. package/es/components/Slider/Slider.js +2 -1
  90. package/es/components/Switch/Switch.js +2 -1
  91. package/es/components/Upload/Upload.js +4 -6
  92. package/es/components/Upload/UploadFileBar.js +3 -4
  93. package/es/index.d.ts +2 -2
  94. package/es/index.js +2 -2
  95. package/lib/components/Alert/Alert.js +5 -9
  96. package/lib/components/Calendar/Calendar.js +5 -6
  97. package/lib/components/Checkbox/Checkbox.js +2 -1
  98. package/lib/components/Checkbox/CheckboxGroup.js +2 -1
  99. package/lib/components/Checkbox/index.js +2 -1
  100. package/lib/components/CoachMark/CoachMark.js +2 -3
  101. package/lib/components/Icons/Icon.d.ts +5 -0
  102. package/lib/components/Icons/Icon.js +25 -0
  103. package/lib/components/Icons/Icons.d.ts +8 -173
  104. package/lib/components/Icons/Icons.js +5 -183
  105. package/lib/components/Icons/icon-set/brand.d.ts +6 -0
  106. package/lib/components/Icons/icon-set/brand.js +69 -0
  107. package/lib/components/Icons/icon-set/currency.d.ts +7 -0
  108. package/lib/components/Icons/icon-set/currency.js +108 -0
  109. package/lib/components/Icons/icon-set/dynamic.d.ts +16 -0
  110. package/lib/components/Icons/icon-set/dynamic.js +99 -0
  111. package/lib/components/Icons/icon-set/functional.d.ts +19 -0
  112. package/lib/components/Icons/icon-set/functional.js +293 -0
  113. package/lib/components/Icons/icon-set/index.d.ts +10 -0
  114. package/lib/components/Icons/icon-set/index.js +783 -0
  115. package/lib/components/Icons/icon-set/menu.d.ts +22 -0
  116. package/lib/components/Icons/icon-set/menu.js +379 -0
  117. package/lib/components/Icons/icon-set/notification.d.ts +6 -0
  118. package/lib/components/Icons/icon-set/notification.js +116 -0
  119. package/lib/components/Icons/icon-set/primary.d.ts +14 -0
  120. package/lib/components/Icons/icon-set/primary.js +229 -0
  121. package/lib/components/Icons/icon-set/registry.d.ts +159 -0
  122. package/lib/components/Icons/icon-set/registry.js +172 -0
  123. package/lib/components/Icons/icon-set/system.d.ts +64 -0
  124. package/lib/components/Icons/icon-set/system.js +1100 -0
  125. package/lib/components/Icons/{Illustrations.d.ts → illustrations/Illustrations.d.ts} +1 -1
  126. package/lib/components/Icons/illustrations/Illustrations.js +881 -0
  127. package/lib/components/Icons/illustrations/index.d.ts +2 -0
  128. package/lib/components/Icons/illustrations/index.js +79 -0
  129. package/lib/components/Icons/index.d.ts +5 -2
  130. package/lib/components/Icons/index.js +160 -5
  131. package/lib/components/Icons/interface.d.ts +9 -24
  132. package/lib/components/Icons/{Logo.d.ts → logos/Logo.d.ts} +1 -1
  133. package/lib/components/Icons/logos/Logo.js +219 -0
  134. package/lib/components/Icons/logos/index.d.ts +2 -0
  135. package/lib/components/Icons/logos/index.js +49 -0
  136. package/lib/components/Icons/primitives/IconHover.d.ts +4 -0
  137. package/lib/components/Icons/primitives/IconHover.js +37 -0
  138. package/lib/components/Icons/{Wrapper.d.ts → primitives/IconWrapper.d.ts} +1 -2
  139. package/lib/components/Icons/primitives/IconWrapper.js +88 -0
  140. package/lib/components/Icons/primitives/index.d.ts +5 -0
  141. package/lib/components/Icons/primitives/index.js +25 -0
  142. package/lib/components/Icons/primitives/interface.d.ts +25 -0
  143. package/lib/components/Icons/primitives/interface.js +6 -0
  144. package/lib/components/Icons/types.d.ts +3 -0
  145. package/lib/components/Icons/types.js +8 -0
  146. package/lib/components/Input/Amount/Amount.d.ts +2 -2
  147. package/lib/components/Input/Amount/Amount.js +5 -2
  148. package/lib/components/Input/Input/Input.js +2 -1
  149. package/lib/components/Input/Mask/Mask.d.ts +2 -2
  150. package/lib/components/Input/Mask/Mask.js +5 -2
  151. package/lib/components/Input/OTP/OTP.d.ts +2 -2
  152. package/lib/components/Input/OTP/OTP.js +5 -2
  153. package/lib/components/Input/Password/Password.d.ts +2 -2
  154. package/lib/components/Input/Password/Password.js +7 -6
  155. package/lib/components/Input/Search/Search.d.ts +2 -2
  156. package/lib/components/Input/Search/Search.js +7 -6
  157. package/lib/components/Input/TextArea/TextArea.d.ts +2 -2
  158. package/lib/components/Input/TextArea/TextArea.js +5 -2
  159. package/lib/components/Input/Trade/Trade.d.ts +2 -2
  160. package/lib/components/Input/Trade/Trade.js +5 -2
  161. package/lib/components/Navigation/NavigationLogo.js +3 -5
  162. package/lib/components/ProForm/ProForm.d.ts +2 -1
  163. package/lib/components/ProForm/ProForm.js +121 -50
  164. package/lib/components/ProForm/ProFormDependency.d.ts +2 -1
  165. package/lib/components/ProForm/ProFormDependency.js +108 -11
  166. package/lib/components/ProForm/Submitter.js +44 -5
  167. package/lib/components/ProForm/core/constants.d.ts +1 -1
  168. package/lib/components/ProForm/core/constants.js +3 -3
  169. package/lib/components/ProForm/core/hooks/useForm.d.ts +2 -2
  170. package/lib/components/ProForm/core/hooks/useForm.js +247 -112
  171. package/lib/components/ProForm/core/hooks/useFormCore.js +3 -3
  172. package/lib/components/ProForm/core/interface.d.ts +26 -0
  173. package/lib/components/ProForm/core/useFormItem.d.ts +1 -0
  174. package/lib/components/ProForm/core/useFormItem.js +58 -6
  175. package/lib/components/ProForm/index.d.ts +3 -2
  176. package/lib/components/ProForm/index.js +8 -2
  177. package/lib/components/ProForm/interface.d.ts +11 -5
  178. package/lib/components/Radio/RadioGroup.js +2 -1
  179. package/lib/components/Select/SelectFieldShell.js +2 -3
  180. package/lib/components/Select/SelectOptionContent.js +2 -3
  181. package/lib/components/Select/SelectSearchControl.js +2 -3
  182. package/lib/components/Select/SelectValueContent.js +2 -3
  183. package/lib/components/Slider/Slider.js +2 -1
  184. package/lib/components/Switch/Switch.js +2 -1
  185. package/lib/components/Upload/Upload.js +3 -5
  186. package/lib/components/Upload/UploadFileBar.js +2 -3
  187. package/lib/index.d.ts +2 -2
  188. package/lib/index.js +223 -1
  189. package/package.json +6 -2
  190. package/scripts/mcp-server/examples.generated.json +24 -24
  191. package/scripts/mcp-server/index.generated.json +3022 -204
  192. package/es/components/Icons/Illustrations.js +0 -874
  193. package/es/components/Icons/Logo.js +0 -209
  194. package/es/components/Icons/SVGs.d.ts +0 -265
  195. package/es/components/Icons/SVGs.js +0 -1918
  196. package/es/components/Icons/Wrapper.js +0 -100
  197. package/lib/components/Icons/Illustrations.js +0 -881
  198. package/lib/components/Icons/Logo.js +0 -219
  199. package/lib/components/Icons/SVGs.d.ts +0 -265
  200. package/lib/components/Icons/SVGs.js +0 -1926
  201. package/lib/components/Icons/Wrapper.js +0 -109
@@ -1,881 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
- Object.defineProperty(exports, "__esModule", {
5
- value: true
6
- });
7
- exports.IllusVerification = exports.IllusRegionNotSupported = exports.IllusPending = exports.IllusPasskey = exports.IllusLocked = exports.IllusLinkExpired = exports.IllusID = exports.IllusError = exports.IllusEmailError = exports.IllusChecked = exports.IllusAddAccount = exports.Illus2FA = void 0;
8
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
- var _jsxRuntime = require("react/jsx-runtime");
10
- var _react = require("react");
11
- var _Wrapper = _interopRequireDefault(require("./Wrapper"));
12
- var __rest = void 0 && (void 0).__rest || function (s, e) {
13
- var t = {};
14
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
15
- if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
16
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
17
- }
18
- return t;
19
- };
20
- var DEFAULT_BORDER_COLOR = '#131313';
21
- var DEFAULT_ALERT_COLOR = '#AE0000';
22
- var DEFAULT_PENDING_COLOR = '#F4C600';
23
- var DEFAULT_GRADIENT_COLOR = ['#B9CCE4', 'white'];
24
- var DEFAULT_FIGMA_STROKE_COLOR = '#131313';
25
- var renderGradientStops = function renderGradientStops(gradientColor) {
26
- var _ref = Array.isArray(gradientColor) ? gradientColor : [gradientColor, gradientColor],
27
- _ref2 = (0, _slicedToArray2["default"])(_ref, 2),
28
- startColor = _ref2[0],
29
- endColor = _ref2[1];
30
- return (0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
31
- children: [(0, _jsxRuntime.jsx)("stop", {
32
- stopColor: startColor
33
- }), (0, _jsxRuntime.jsx)("stop", {
34
- offset: "1",
35
- stopColor: endColor
36
- })]
37
- });
38
- };
39
- var IllusChecked = exports.IllusChecked = function IllusChecked(_a) {
40
- var _a$borderColor = _a.borderColor,
41
- borderColor = _a$borderColor === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor,
42
- _a$gradientColor = _a.gradientColor,
43
- gradientColor = _a$gradientColor === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor,
44
- rest = __rest(_a, ["borderColor", "gradientColor"]);
45
- var gradientId = (0, _react.useId)();
46
- return (0, _jsxRuntime.jsxs)(_Wrapper["default"], Object.assign({
47
- viewBox: "0 0 74 74"
48
- }, rest, {
49
- children: [(0, _jsxRuntime.jsxs)("g", {
50
- transform: "translate(10 6)",
51
- children: [(0, _jsxRuntime.jsx)("path", {
52
- fillRule: "evenodd",
53
- clipRule: "evenodd",
54
- d: "M17 60H16.5V62H17H21H25H29H33H37H37.5V60H37H33H29H25H21H17Z",
55
- fill: borderColor
56
- }), (0, _jsxRuntime.jsx)("circle", {
57
- cx: "27",
58
- cy: "27",
59
- r: "27",
60
- fill: "white"
61
- }), (0, _jsxRuntime.jsx)("circle", {
62
- cx: "27",
63
- cy: "27",
64
- r: "26",
65
- stroke: borderColor,
66
- strokeWidth: "2",
67
- fill: "transparent"
68
- }), (0, _jsxRuntime.jsx)("circle", {
69
- cx: "26.997",
70
- cy: "27.0009",
71
- r: "20.1064",
72
- fill: "url(#".concat(gradientId, ")")
73
- }), (0, _jsxRuntime.jsx)("circle", {
74
- cx: "26.997",
75
- cy: "27.0009",
76
- r: "19.6064",
77
- stroke: borderColor,
78
- fill: "transparent"
79
- }), (0, _jsxRuntime.jsx)("path", {
80
- d: "M16 26.3462L24 34.5L37.5 20",
81
- stroke: borderColor,
82
- strokeWidth: "2",
83
- fill: "transparent"
84
- })]
85
- }), (0, _jsxRuntime.jsx)("defs", {
86
- children: (0, _jsxRuntime.jsx)("linearGradient", {
87
- id: gradientId,
88
- x1: "36.997",
89
- y1: "12.89453",
90
- x2: "36.997",
91
- y2: "53.1073",
92
- gradientUnits: "userSpaceOnUse",
93
- children: renderGradientStops(gradientColor)
94
- })
95
- })]
96
- }));
97
- };
98
- var IllusEmailError = exports.IllusEmailError = function IllusEmailError(_a) {
99
- var _a$borderColor2 = _a.borderColor,
100
- borderColor = _a$borderColor2 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor2,
101
- _a$color = _a.color,
102
- color = _a$color === void 0 ? DEFAULT_ALERT_COLOR : _a$color,
103
- _a$gradientColor2 = _a.gradientColor,
104
- gradientColor = _a$gradientColor2 === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor2,
105
- rest = __rest(_a, ["borderColor", "color", "gradientColor"]);
106
- var gradientId = (0, _react.useId)();
107
- return (0, _jsxRuntime.jsxs)(_Wrapper["default"], Object.assign({
108
- viewBox: "0 0 74 74"
109
- }, rest, {
110
- children: [(0, _jsxRuntime.jsx)("path", {
111
- d: "M41 66H37V64H41V66ZM49 66H45V64H49V66Z",
112
- fill: borderColor
113
- }), (0, _jsxRuntime.jsx)("path", {
114
- 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",
115
- fill: "url(#".concat(gradientId, ")")
116
- }), (0, _jsxRuntime.jsx)("path", {
117
- 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",
118
- fill: borderColor
119
- }), (0, _jsxRuntime.jsx)("circle", {
120
- cx: "16",
121
- cy: "48",
122
- r: "13",
123
- fill: color
124
- }), (0, _jsxRuntime.jsx)("circle", {
125
- cx: "16",
126
- cy: "48",
127
- r: "12",
128
- stroke: borderColor,
129
- strokeWidth: "2"
130
- }), (0, _jsxRuntime.jsx)("path", {
131
- fillRule: "evenodd",
132
- clipRule: "evenodd",
133
- 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",
134
- fill: "white"
135
- }), (0, _jsxRuntime.jsx)("rect", {
136
- x: "30",
137
- y: "64",
138
- width: "21",
139
- height: "2",
140
- fill: borderColor
141
- }), (0, _jsxRuntime.jsx)("defs", {
142
- children: (0, _jsxRuntime.jsx)("linearGradient", {
143
- id: gradientId,
144
- x1: "39",
145
- y1: "8",
146
- x2: "39",
147
- y2: "35",
148
- gradientUnits: "userSpaceOnUse",
149
- children: renderGradientStops(gradientColor)
150
- })
151
- })]
152
- }));
153
- };
154
- var IllusLinkExpired = exports.IllusLinkExpired = function IllusLinkExpired(_a) {
155
- var _a$borderColor3 = _a.borderColor,
156
- borderColor = _a$borderColor3 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor3,
157
- _a$color2 = _a.color,
158
- color = _a$color2 === void 0 ? DEFAULT_ALERT_COLOR : _a$color2,
159
- _a$gradientColor3 = _a.gradientColor,
160
- gradientColor = _a$gradientColor3 === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor3,
161
- rest = __rest(_a, ["borderColor", "color", "gradientColor"]);
162
- var gradientId = (0, _react.useId)();
163
- return (0, _jsxRuntime.jsxs)(_Wrapper["default"], Object.assign({
164
- viewBox: "0 0 74 74"
165
- }, rest, {
166
- children: [(0, _jsxRuntime.jsx)("circle", {
167
- cx: "36.9996",
168
- cy: "36.9979",
169
- r: "29.5909",
170
- fill: "white"
171
- }), (0, _jsxRuntime.jsx)("circle", {
172
- cx: "37",
173
- cy: "37",
174
- r: "30",
175
- stroke: borderColor,
176
- strokeWidth: "2"
177
- }), (0, _jsxRuntime.jsx)("circle", {
178
- cx: "37",
179
- cy: "37",
180
- r: "24",
181
- fill: "url(#".concat(gradientId, ")")
182
- }), (0, _jsxRuntime.jsx)("circle", {
183
- cx: "37",
184
- cy: "37",
185
- r: "23.5",
186
- stroke: borderColor
187
- }), (0, _jsxRuntime.jsx)("path", {
188
- fillRule: "evenodd",
189
- clipRule: "evenodd",
190
- 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",
191
- fill: borderColor
192
- }), (0, _jsxRuntime.jsx)("circle", {
193
- cx: "15",
194
- cy: "58",
195
- r: "13",
196
- fill: color
197
- }), (0, _jsxRuntime.jsx)("circle", {
198
- cx: "15",
199
- cy: "58",
200
- r: "12",
201
- stroke: borderColor,
202
- strokeWidth: "2"
203
- }), (0, _jsxRuntime.jsx)("path", {
204
- fillRule: "evenodd",
205
- clipRule: "evenodd",
206
- 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",
207
- fill: "white"
208
- }), (0, _jsxRuntime.jsx)("defs", {
209
- children: (0, _jsxRuntime.jsx)("linearGradient", {
210
- id: gradientId,
211
- x1: "37",
212
- y1: "13",
213
- x2: "37",
214
- y2: "61",
215
- gradientUnits: "userSpaceOnUse",
216
- children: renderGradientStops(gradientColor)
217
- })
218
- })]
219
- }));
220
- };
221
- var Illus2FA = exports.Illus2FA = function Illus2FA(_a) {
222
- var _a$borderColor4 = _a.borderColor,
223
- borderColor = _a$borderColor4 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor4,
224
- _a$color3 = _a.color,
225
- color = _a$color3 === void 0 ? DEFAULT_ALERT_COLOR : _a$color3,
226
- _a$gradientColor4 = _a.gradientColor,
227
- gradientColor = _a$gradientColor4 === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor4,
228
- rest = __rest(_a, ["borderColor", "color", "gradientColor"]);
229
- var gradientId = (0, _react.useId)();
230
- return (0, _jsxRuntime.jsxs)(_Wrapper["default"], Object.assign({
231
- viewBox: "0 0 74 74"
232
- }, rest, {
233
- children: [(0, _jsxRuntime.jsx)("path", {
234
- d: "M47.7071 26.1213L46.2929 24.7071L32 39L24.7071 31.7071L23.2929 33.1213L32 41.8284L47.7071 26.1213Z",
235
- fill: borderColor
236
- }), (0, _jsxRuntime.jsx)("path", {
237
- fillRule: "evenodd",
238
- clipRule: "evenodd",
239
- 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",
240
- fill: borderColor
241
- }), (0, _jsxRuntime.jsx)("circle", {
242
- cx: "53",
243
- cy: "54",
244
- r: "15",
245
- fill: "url(#".concat(gradientId, ")")
246
- }), (0, _jsxRuntime.jsx)("circle", {
247
- cx: "53",
248
- cy: "54",
249
- r: "14",
250
- stroke: borderColor,
251
- strokeWidth: "2"
252
- }), (0, _jsxRuntime.jsx)("path", {
253
- fillRule: "evenodd",
254
- clipRule: "evenodd",
255
- 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",
256
- fill: borderColor
257
- }), (0, _jsxRuntime.jsx)("defs", {
258
- children: (0, _jsxRuntime.jsx)("linearGradient", {
259
- id: gradientId,
260
- x1: "53",
261
- y1: "39",
262
- x2: "53",
263
- y2: "69",
264
- gradientUnits: "userSpaceOnUse",
265
- children: renderGradientStops(gradientColor)
266
- })
267
- })]
268
- }));
269
- };
270
- var IllusLocked = exports.IllusLocked = function IllusLocked(_a) {
271
- var _a$borderColor5 = _a.borderColor,
272
- borderColor = _a$borderColor5 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor5,
273
- _a$color4 = _a.color,
274
- color = _a$color4 === void 0 ? DEFAULT_ALERT_COLOR : _a$color4,
275
- _a$gradientColor5 = _a.gradientColor,
276
- gradientColor = _a$gradientColor5 === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor5,
277
- rest = __rest(_a, ["borderColor", "color", "gradientColor"]);
278
- var svgId = (0, _react.useId)().replace(/:/g, '');
279
- var gradientId = "illus-locked-gradient-".concat(svgId);
280
- var lockedBorderColor = borderColor === DEFAULT_BORDER_COLOR ? DEFAULT_FIGMA_STROKE_COLOR : borderColor;
281
- return (0, _jsxRuntime.jsxs)(_Wrapper["default"], Object.assign({
282
- viewBox: "0 0 74 74"
283
- }, rest, {
284
- children: [(0, _jsxRuntime.jsx)("path", {
285
- 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",
286
- fill: "white"
287
- }), (0, _jsxRuntime.jsx)("rect", {
288
- x: "67",
289
- y: "66",
290
- width: "56",
291
- height: "37",
292
- rx: "4",
293
- transform: "rotate(-180 67 66)",
294
- fill: "url(#".concat(gradientId, ")")
295
- }), (0, _jsxRuntime.jsx)("path", {
296
- 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",
297
- fill: lockedBorderColor
298
- }), (0, _jsxRuntime.jsx)("circle", {
299
- cx: "14",
300
- cy: "58",
301
- r: "13",
302
- fill: color
303
- }), (0, _jsxRuntime.jsx)("circle", {
304
- cx: "14",
305
- cy: "58",
306
- r: "12",
307
- stroke: lockedBorderColor,
308
- strokeWidth: "2"
309
- }), (0, _jsxRuntime.jsx)("path", {
310
- 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",
311
- fill: "white"
312
- }), (0, _jsxRuntime.jsx)("defs", {
313
- children: (0, _jsxRuntime.jsx)("linearGradient", {
314
- id: gradientId,
315
- x1: "95",
316
- y1: "66",
317
- x2: "95",
318
- y2: "103",
319
- gradientUnits: "userSpaceOnUse",
320
- children: renderGradientStops(gradientColor)
321
- })
322
- })]
323
- }));
324
- };
325
- var IllusError = exports.IllusError = function IllusError(_a) {
326
- var _a$borderColor6 = _a.borderColor,
327
- borderColor = _a$borderColor6 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor6,
328
- _a$color5 = _a.color,
329
- color = _a$color5 === void 0 ? DEFAULT_ALERT_COLOR : _a$color5,
330
- rest = __rest(_a, ["borderColor", "color"]);
331
- return (0, _jsxRuntime.jsxs)(_Wrapper["default"], Object.assign({
332
- viewBox: "0 0 74 74"
333
- }, rest, {
334
- children: [(0, _jsxRuntime.jsx)("path", {
335
- 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",
336
- fill: color
337
- }), (0, _jsxRuntime.jsx)("path", {
338
- d: "M36 37V22H38V37H36Z",
339
- fill: borderColor
340
- }), (0, _jsxRuntime.jsx)("path", {
341
- 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",
342
- fill: borderColor
343
- }), (0, _jsxRuntime.jsx)("path", {
344
- fillRule: "evenodd",
345
- clipRule: "evenodd",
346
- 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",
347
- fill: borderColor
348
- })]
349
- }));
350
- };
351
- var IllusRegionNotSupported = exports.IllusRegionNotSupported = function IllusRegionNotSupported(_a) {
352
- var _a$borderColor7 = _a.borderColor,
353
- borderColor = _a$borderColor7 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor7,
354
- _a$color6 = _a.color,
355
- color = _a$color6 === void 0 ? DEFAULT_ALERT_COLOR : _a$color6,
356
- _a$gradientColor6 = _a.gradientColor,
357
- gradientColor = _a$gradientColor6 === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor6,
358
- rest = __rest(_a, ["borderColor", "color", "gradientColor"]);
359
- var gradientId = (0, _react.useId)();
360
- return (0, _jsxRuntime.jsxs)(_Wrapper["default"], Object.assign({
361
- viewBox: "0 0 74 74"
362
- }, rest, {
363
- children: [(0, _jsxRuntime.jsx)("rect", {
364
- width: "74",
365
- height: "74",
366
- fill: "white"
367
- }), (0, _jsxRuntime.jsx)("path", {
368
- fillRule: "evenodd",
369
- clipRule: "evenodd",
370
- 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",
371
- fill: borderColor
372
- }), (0, _jsxRuntime.jsx)("path", {
373
- 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",
374
- fill: "url(#".concat(gradientId, ")")
375
- }), (0, _jsxRuntime.jsx)("path", {
376
- fillRule: "evenodd",
377
- clipRule: "evenodd",
378
- 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",
379
- fill: borderColor
380
- }), (0, _jsxRuntime.jsx)("circle", {
381
- cx: "41",
382
- cy: "21.7742",
383
- r: "7.48387",
384
- fill: "white"
385
- }), (0, _jsxRuntime.jsx)("circle", {
386
- cx: "41",
387
- cy: "21.7742",
388
- r: "6.54839",
389
- stroke: borderColor,
390
- strokeWidth: "1.87097"
391
- }), (0, _jsxRuntime.jsx)("rect", {
392
- x: "19.4839",
393
- y: "55.4516",
394
- width: "5.6129",
395
- height: "1.87097",
396
- fill: borderColor
397
- }), (0, _jsxRuntime.jsx)("rect", {
398
- x: "28.8389",
399
- y: "55.4516",
400
- width: "5.6129",
401
- height: "1.87097",
402
- fill: borderColor
403
- }), (0, _jsxRuntime.jsx)("rect", {
404
- x: "38.1934",
405
- y: "55.4516",
406
- width: "5.6129",
407
- height: "1.87097",
408
- fill: borderColor
409
- }), (0, _jsxRuntime.jsx)("rect", {
410
- x: "47.5483",
411
- y: "55.4516",
412
- width: "5.6129",
413
- height: "1.87097",
414
- fill: borderColor
415
- }), (0, _jsxRuntime.jsx)("rect", {
416
- x: "56.9033",
417
- y: "55.4516",
418
- width: "5.6129",
419
- height: "1.87097",
420
- fill: borderColor
421
- }), (0, _jsxRuntime.jsx)("circle", {
422
- cx: "16",
423
- cy: "57",
424
- r: "13",
425
- fill: color
426
- }), (0, _jsxRuntime.jsx)("circle", {
427
- cx: "16",
428
- cy: "57",
429
- r: "12",
430
- stroke: borderColor,
431
- strokeWidth: "2"
432
- }), (0, _jsxRuntime.jsx)("path", {
433
- fillRule: "evenodd",
434
- clipRule: "evenodd",
435
- 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",
436
- fill: "white"
437
- }), (0, _jsxRuntime.jsx)("defs", {
438
- children: (0, _jsxRuntime.jsx)("linearGradient", {
439
- id: gradientId,
440
- x1: "40.9999",
441
- y1: "4.00002",
442
- x2: "40.9999",
443
- y2: "48.9049",
444
- gradientUnits: "userSpaceOnUse",
445
- children: renderGradientStops(gradientColor)
446
- })
447
- })]
448
- }));
449
- };
450
- var IllusID = exports.IllusID = function IllusID(_a) {
451
- var _a$borderColor8 = _a.borderColor,
452
- borderColor = _a$borderColor8 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor8,
453
- _a$gradientColor7 = _a.gradientColor,
454
- gradientColor = _a$gradientColor7 === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor7,
455
- rest = __rest(_a, ["borderColor", "gradientColor"]);
456
- var gradientId0 = (0, _react.useId)();
457
- var gradientId1 = (0, _react.useId)();
458
- var gradientId2 = (0, _react.useId)();
459
- return (0, _jsxRuntime.jsxs)(_Wrapper["default"], Object.assign({
460
- viewBox: "0 0 74 74"
461
- }, rest, {
462
- children: [(0, _jsxRuntime.jsx)("path", {
463
- d: "M11 50H63V59H11V50Z",
464
- fill: "url(#".concat(gradientId0, ")")
465
- }), (0, _jsxRuntime.jsx)("rect", {
466
- x: "15",
467
- y: "34",
468
- width: "18",
469
- height: "8",
470
- fill: "url(#".concat(gradientId1, ")")
471
- }), (0, _jsxRuntime.jsx)("circle", {
472
- cx: "24",
473
- cy: "24",
474
- r: "5",
475
- fill: "url(#".concat(gradientId2, ")")
476
- }), (0, _jsxRuntime.jsx)("path", {
477
- fillRule: "evenodd",
478
- clipRule: "evenodd",
479
- d: "M18 32C15.7909 32 14 33.7909 14 36V43H34V36C34 33.7909 32.2091 32 30 32H18ZM32 41V34H16V41H32Z",
480
- fill: borderColor
481
- }), (0, _jsxRuntime.jsx)("path", {
482
- fillRule: "evenodd",
483
- clipRule: "evenodd",
484
- 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",
485
- fill: borderColor
486
- }), (0, _jsxRuntime.jsx)("path", {
487
- d: "M59 21H42V19H59V21Z",
488
- fill: borderColor
489
- }), (0, _jsxRuntime.jsx)("path", {
490
- d: "M42 28H59V26H42V28Z",
491
- fill: borderColor
492
- }), (0, _jsxRuntime.jsx)("path", {
493
- d: "M59 35H42V33H59V35Z",
494
- fill: borderColor
495
- }), (0, _jsxRuntime.jsx)("path", {
496
- d: "M42 42H49V40H42V42Z",
497
- fill: borderColor
498
- }), (0, _jsxRuntime.jsx)("path", {
499
- d: "M59 42H52V40H59V42Z",
500
- fill: borderColor
501
- }), (0, _jsxRuntime.jsx)("path", {
502
- fillRule: "evenodd",
503
- clipRule: "evenodd",
504
- 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",
505
- fill: borderColor
506
- }), (0, _jsxRuntime.jsx)("rect", {
507
- x: "27",
508
- y: "64",
509
- width: "21",
510
- height: "2",
511
- fill: borderColor
512
- }), (0, _jsxRuntime.jsxs)("defs", {
513
- children: [(0, _jsxRuntime.jsx)("linearGradient", {
514
- id: gradientId0,
515
- x1: "37",
516
- y1: "50",
517
- x2: "37",
518
- y2: "59",
519
- gradientUnits: "userSpaceOnUse",
520
- children: renderGradientStops(gradientColor)
521
- }), (0, _jsxRuntime.jsx)("linearGradient", {
522
- id: gradientId1,
523
- x1: "24",
524
- y1: "34",
525
- x2: "24",
526
- y2: "42",
527
- gradientUnits: "userSpaceOnUse",
528
- children: renderGradientStops(gradientColor)
529
- }), (0, _jsxRuntime.jsx)("linearGradient", {
530
- id: gradientId2,
531
- x1: "24",
532
- y1: "19",
533
- x2: "24",
534
- y2: "29",
535
- gradientUnits: "userSpaceOnUse",
536
- children: renderGradientStops(gradientColor)
537
- })]
538
- })]
539
- }));
540
- };
541
- var IllusVerification = exports.IllusVerification = function IllusVerification(_a) {
542
- var _a$borderColor9 = _a.borderColor,
543
- borderColor = _a$borderColor9 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor9,
544
- _a$gradientColor8 = _a.gradientColor,
545
- gradientColor = _a$gradientColor8 === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor8,
546
- rest = __rest(_a, ["borderColor", "gradientColor"]);
547
- var gradientId0 = (0, _react.useId)();
548
- var gradientId1 = (0, _react.useId)();
549
- return (0, _jsxRuntime.jsxs)(_Wrapper["default"], Object.assign({
550
- viewBox: "0 0 74 74"
551
- }, rest, {
552
- children: [(0, _jsxRuntime.jsx)("path", {
553
- d: "M10 6C7.79086 6 6 7.79086 6 10V19H8V8H19V6H10Z",
554
- fill: borderColor
555
- }), (0, _jsxRuntime.jsx)("path", {
556
- d: "M64 6C66.2091 6 68 7.79086 68 10V19H66V8H55V6H64Z",
557
- fill: borderColor
558
- }), (0, _jsxRuntime.jsx)("path", {
559
- d: "M64 68C66.2091 68 68 66.2091 68 64V55H66V66H55V68H64Z",
560
- fill: borderColor
561
- }), (0, _jsxRuntime.jsx)("path", {
562
- d: "M68 10C68 7.79086 66.2091 6 64 6L55 6L55 8L66 8L66 19L68 19L68 10Z",
563
- fill: borderColor
564
- }), (0, _jsxRuntime.jsx)("path", {
565
- d: "M68 64C68 66.2091 66.2091 68 64 68L55 68L55 66L66 66L66 55L68 55L68 64Z",
566
- fill: borderColor
567
- }), (0, _jsxRuntime.jsx)("path", {
568
- d: "M6 64C6 66.2091 7.79086 68 10 68L19 68L19 66L8 66L8 55L6 55L6 64Z",
569
- fill: borderColor
570
- }), (0, _jsxRuntime.jsx)("path", {
571
- d: "M42.4546 26.8544V12.9453L57.1819 26.8544H42.4546Z",
572
- fill: "url(#".concat(gradientId0, ")")
573
- }), (0, _jsxRuntime.jsx)("path", {
574
- d: "M49.8185 35.0359H29.3639V33.3995H49.8185V35.0359Z",
575
- fill: borderColor
576
- }), (0, _jsxRuntime.jsx)("path", {
577
- d: "M29.3639 39.1268H32.6367V40.7631H29.3639V39.1268Z",
578
- fill: borderColor
579
- }), (0, _jsxRuntime.jsx)("path", {
580
- d: "M35.0912 39.1268H38.3639V40.7631H35.0912V39.1268Z",
581
- fill: borderColor
582
- }), (0, _jsxRuntime.jsx)("path", {
583
- d: "M44.0912 40.7631V39.1268H40.8185V40.7631H44.0912Z",
584
- fill: borderColor
585
- }), (0, _jsxRuntime.jsx)("path", {
586
- d: "M46.5458 39.1268H49.8185V40.7631H46.5458V39.1268Z",
587
- fill: borderColor
588
- }), (0, _jsxRuntime.jsx)("path", {
589
- fillRule: "evenodd",
590
- clipRule: "evenodd",
591
- 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",
592
- fill: borderColor
593
- }), (0, _jsxRuntime.jsx)("circle", {
594
- cx: "24.4546",
595
- cy: "51.4005",
596
- r: "9",
597
- fill: "url(#".concat(gradientId1, ")")
598
- }), (0, _jsxRuntime.jsx)("circle", {
599
- cx: "24.4546",
600
- cy: "51.4005",
601
- r: "8.18182",
602
- stroke: borderColor,
603
- strokeWidth: "1.63636"
604
- }), (0, _jsxRuntime.jsx)("path", {
605
- d: "M18.7273 57.127L13 62.8542",
606
- stroke: borderColor,
607
- strokeWidth: "1.63636"
608
- }), (0, _jsxRuntime.jsxs)("defs", {
609
- children: [(0, _jsxRuntime.jsx)("linearGradient", {
610
- id: gradientId0,
611
- x1: "49.8182",
612
- y1: "12.9453",
613
- x2: "49.8182",
614
- y2: "26.8544",
615
- gradientUnits: "userSpaceOnUse",
616
- children: renderGradientStops(gradientColor)
617
- }), (0, _jsxRuntime.jsx)("linearGradient", {
618
- id: gradientId1,
619
- x1: "24.4546",
620
- y1: "42.4005",
621
- x2: "24.4546",
622
- y2: "60.4005",
623
- gradientUnits: "userSpaceOnUse",
624
- children: renderGradientStops(gradientColor)
625
- })]
626
- })]
627
- }));
628
- };
629
- var IllusPasskey = exports.IllusPasskey = function IllusPasskey(_a) {
630
- var _a$borderColor10 = _a.borderColor,
631
- borderColor = _a$borderColor10 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor10,
632
- _a$gradientColor9 = _a.gradientColor,
633
- gradientColor = _a$gradientColor9 === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor9,
634
- rest = __rest(_a, ["borderColor", "gradientColor"]);
635
- var gradientId0 = (0, _react.useId)();
636
- var gradientId1 = (0, _react.useId)();
637
- var gradientId2 = (0, _react.useId)();
638
- var badgeGradientId = (0, _react.useId)();
639
- return (0, _jsxRuntime.jsxs)(_Wrapper["default"], Object.assign({
640
- viewBox: "0 0 74 74"
641
- }, rest, {
642
- children: [(0, _jsxRuntime.jsx)("path", {
643
- d: "M11 52H63V61H11V52Z",
644
- fill: "url(#".concat(gradientId0, ")")
645
- }), (0, _jsxRuntime.jsx)("rect", {
646
- x: "15",
647
- y: "36",
648
- width: "18",
649
- height: "8",
650
- fill: "url(#".concat(gradientId1, ")")
651
- }), (0, _jsxRuntime.jsx)("circle", {
652
- cx: "24",
653
- cy: "26",
654
- r: "5",
655
- fill: "url(#".concat(gradientId2, ")")
656
- }), (0, _jsxRuntime.jsx)("path", {
657
- fillRule: "evenodd",
658
- clipRule: "evenodd",
659
- d: "M18 34C15.7909 34 14 35.7909 14 38V45H34V38C34 35.7909 32.2091 34 30 34H18ZM32 43V36H16V43H32Z",
660
- fill: borderColor
661
- }), (0, _jsxRuntime.jsx)("path", {
662
- fillRule: "evenodd",
663
- clipRule: "evenodd",
664
- 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",
665
- fill: borderColor
666
- }), (0, _jsxRuntime.jsx)("path", {
667
- d: "M59 23H42V21H59V23Z",
668
- fill: borderColor
669
- }), (0, _jsxRuntime.jsx)("path", {
670
- d: "M42 30H59V28H42V30Z",
671
- fill: borderColor
672
- }), (0, _jsxRuntime.jsx)("path", {
673
- d: "M59 37H42V35H59V37Z",
674
- fill: borderColor
675
- }), (0, _jsxRuntime.jsx)("path", {
676
- d: "M42 44H49V42H42V44Z",
677
- fill: borderColor
678
- }), (0, _jsxRuntime.jsx)("path", {
679
- d: "M59 44H52V42H59V44Z",
680
- fill: borderColor
681
- }), (0, _jsxRuntime.jsx)("path", {
682
- fillRule: "evenodd",
683
- clipRule: "evenodd",
684
- 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",
685
- fill: borderColor
686
- }), (0, _jsxRuntime.jsx)("rect", {
687
- x: "27",
688
- y: "66",
689
- width: "21",
690
- height: "2",
691
- fill: borderColor
692
- }), (0, _jsxRuntime.jsx)("circle", {
693
- cx: "59",
694
- cy: "15",
695
- r: "15",
696
- fill: "url(#".concat(badgeGradientId, ")")
697
- }), (0, _jsxRuntime.jsx)("circle", {
698
- cx: "59",
699
- cy: "15",
700
- r: "14",
701
- stroke: borderColor,
702
- strokeWidth: "2"
703
- }), (0, _jsxRuntime.jsx)("g", {
704
- transform: "translate(50.6667 6.8333)",
705
- children: (0, _jsxRuntime.jsx)("path", {
706
- fillRule: "evenodd",
707
- clipRule: "evenodd",
708
- 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",
709
- fill: borderColor
710
- })
711
- }), (0, _jsxRuntime.jsxs)("defs", {
712
- children: [(0, _jsxRuntime.jsx)("linearGradient", {
713
- id: gradientId0,
714
- x1: "37",
715
- y1: "52",
716
- x2: "37",
717
- y2: "61",
718
- gradientUnits: "userSpaceOnUse",
719
- children: renderGradientStops(gradientColor)
720
- }), (0, _jsxRuntime.jsx)("linearGradient", {
721
- id: gradientId1,
722
- x1: "24",
723
- y1: "36",
724
- x2: "24",
725
- y2: "44",
726
- gradientUnits: "userSpaceOnUse",
727
- children: renderGradientStops(gradientColor)
728
- }), (0, _jsxRuntime.jsx)("linearGradient", {
729
- id: gradientId2,
730
- x1: "24",
731
- y1: "21",
732
- x2: "24",
733
- y2: "31",
734
- gradientUnits: "userSpaceOnUse",
735
- children: renderGradientStops(gradientColor)
736
- }), (0, _jsxRuntime.jsx)("linearGradient", {
737
- id: badgeGradientId,
738
- x1: "59",
739
- y1: "0",
740
- x2: "59",
741
- y2: "30",
742
- gradientUnits: "userSpaceOnUse",
743
- children: renderGradientStops(gradientColor)
744
- })]
745
- })]
746
- }));
747
- };
748
- var IllusPending = exports.IllusPending = function IllusPending(_a) {
749
- var _a$borderColor11 = _a.borderColor,
750
- borderColor = _a$borderColor11 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor11,
751
- _a$color7 = _a.color,
752
- color = _a$color7 === void 0 ? DEFAULT_PENDING_COLOR : _a$color7,
753
- _a$gradientColor10 = _a.gradientColor,
754
- gradientColor = _a$gradientColor10 === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor10,
755
- rest = __rest(_a, ["borderColor", "color", "gradientColor"]);
756
- var gradientId = (0, _react.useId)();
757
- return (0, _jsxRuntime.jsxs)(_Wrapper["default"], Object.assign({
758
- viewBox: "0 0 74 74"
759
- }, rest, {
760
- children: [(0, _jsxRuntime.jsx)("circle", {
761
- cx: "36.9972",
762
- cy: "36.9981",
763
- r: "29.5909",
764
- fill: "white"
765
- }), (0, _jsxRuntime.jsx)("circle", {
766
- cx: "37",
767
- cy: "37",
768
- r: "30",
769
- stroke: borderColor,
770
- strokeWidth: "2"
771
- }), (0, _jsxRuntime.jsx)("circle", {
772
- cx: "37",
773
- cy: "37",
774
- r: "24",
775
- fill: "url(#".concat(gradientId, ")")
776
- }), (0, _jsxRuntime.jsx)("circle", {
777
- cx: "37",
778
- cy: "37",
779
- r: "23.5",
780
- stroke: borderColor
781
- }), (0, _jsxRuntime.jsx)("circle", {
782
- cx: "15",
783
- cy: "58",
784
- r: "13",
785
- fill: color
786
- }), (0, _jsxRuntime.jsx)("path", {
787
- d: "M15 52V58L21 61",
788
- stroke: borderColor,
789
- strokeWidth: "2"
790
- }), (0, _jsxRuntime.jsx)("circle", {
791
- cx: "15",
792
- cy: "58",
793
- r: "12",
794
- stroke: borderColor,
795
- strokeWidth: "2"
796
- }), (0, _jsxRuntime.jsx)("path", {
797
- transform: "translate(74 0) scale(-1 1)",
798
- fillRule: "evenodd",
799
- clipRule: "evenodd",
800
- 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",
801
- fill: borderColor
802
- }), (0, _jsxRuntime.jsx)("defs", {
803
- children: (0, _jsxRuntime.jsx)("linearGradient", {
804
- id: gradientId,
805
- x1: "37",
806
- y1: "13",
807
- x2: "37",
808
- y2: "61",
809
- gradientUnits: "userSpaceOnUse",
810
- children: renderGradientStops(gradientColor)
811
- })
812
- })]
813
- }));
814
- };
815
- var IllusAddAccount = exports.IllusAddAccount = function IllusAddAccount(_a) {
816
- var _a$borderColor12 = _a.borderColor,
817
- borderColor = _a$borderColor12 === void 0 ? DEFAULT_BORDER_COLOR : _a$borderColor12,
818
- _a$gradientColor11 = _a.gradientColor,
819
- gradientColor = _a$gradientColor11 === void 0 ? DEFAULT_GRADIENT_COLOR : _a$gradientColor11,
820
- rest = __rest(_a, ["borderColor", "gradientColor"]);
821
- var cardGradientId = (0, _react.useId)();
822
- var badgeGradientId = (0, _react.useId)();
823
- return (0, _jsxRuntime.jsxs)(_Wrapper["default"], Object.assign({
824
- viewBox: "0 0 74 74"
825
- }, rest, {
826
- children: [(0, _jsxRuntime.jsx)("rect", {
827
- width: "74",
828
- height: "74",
829
- fill: "white"
830
- }), (0, _jsxRuntime.jsx)("rect", {
831
- x: "22.5",
832
- y: "26",
833
- width: "30",
834
- height: "28",
835
- fill: "url(#".concat(cardGradientId, ")")
836
- }), (0, _jsxRuntime.jsx)("path", {
837
- 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",
838
- fill: borderColor
839
- }), (0, _jsxRuntime.jsx)("path", {
840
- fillRule: "evenodd",
841
- clipRule: "evenodd",
842
- 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",
843
- fill: borderColor
844
- }), (0, _jsxRuntime.jsx)("circle", {
845
- cx: "59.8848",
846
- cy: "59.3848",
847
- r: "13",
848
- transform: "rotate(-45 59.8848 59.3848)",
849
- fill: "url(#".concat(badgeGradientId, ")")
850
- }), (0, _jsxRuntime.jsx)("circle", {
851
- cx: "59.8848",
852
- cy: "59.3848",
853
- r: "12",
854
- transform: "rotate(-45 59.8848 59.3848)",
855
- stroke: borderColor,
856
- strokeWidth: "2"
857
- }), (0, _jsxRuntime.jsx)("path", {
858
- d: "M60.8828 58.3848H66.8848V60.3848H60.8828V66.3848H58.8828V60.3848H52.8848V58.3848H58.8828V52.3848H60.8828V58.3848Z",
859
- fill: borderColor
860
- }), (0, _jsxRuntime.jsxs)("defs", {
861
- children: [(0, _jsxRuntime.jsx)("linearGradient", {
862
- id: cardGradientId,
863
- x1: "37.5",
864
- y1: "26",
865
- x2: "37.5",
866
- y2: "54",
867
- gradientUnits: "userSpaceOnUse",
868
- children: renderGradientStops(gradientColor)
869
- }), (0, _jsxRuntime.jsx)("linearGradient", {
870
- id: badgeGradientId,
871
- x1: "59.8848",
872
- y1: "46.3848",
873
- x2: "59.8848",
874
- y2: "72.3848",
875
- gradientUnits: "userSpaceOnUse",
876
- children: renderGradientStops(gradientColor)
877
- })]
878
- })]
879
- }));
880
- };
881
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvSWNvbnMvSWxsdXN0cmF0aW9ucy5qcyIsImNvbXBvbmVudHMvc3JjL2NvbXBvbmVudHMvSWNvbnMvSWxsdXN0cmF0aW9ucy50c3giXSwibmFtZXMiOlsiX2pzeFJ1bnRpbWUiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX1dyYXBwZXIiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX19yZXN0IiwicyIsImUiLCJ0IiwicCIsIk9iamVjdCIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImluZGV4T2YiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJpIiwibGVuZ3RoIiwicHJvcGVydHlJc0VudW1lcmFibGUiLCJERUZBVUxUX0JPUkRFUl9DT0xPUiIsIkRFRkFVTFRfQUxFUlRfQ09MT1IiLCJERUZBVUxUX1BFTkRJTkdfQ09MT1IiLCJERUZBVUxUX0dSQURJRU5UX0NPTE9SIiwiREVGQVVMVF9GSUdNQV9TVFJPS0VfQ09MT1IiLCJyZW5kZXJHcmFkaWVudFN0b3BzIiwiZ3JhZGllbnRDb2xvciIsIl9yZWYiLCJBcnJheSIsImlzQXJyYXkiLCJfcmVmMiIsIl9zbGljZWRUb0FycmF5MiIsInN0YXJ0Q29sb3IiLCJlbmRDb2xvciIsIl9qc3hzIiwiX0ZyYWdtZW50IiwiY2hpbGRyZW4iLCJfanN4Iiwic3RvcENvbG9yIiwib2Zmc2V0IiwiSWxsdXNDaGVja2VkIiwiZXhwb3J0cyIsIl9hIiwiX2EkYm9yZGVyQ29sb3IiLCJib3JkZXJDb2xvciIsIl9hJGdyYWRpZW50Q29sb3IiLCJyZXN0IiwiZ3JhZGllbnRJZCIsInVzZUlkIiwiSWNvbldyYXBwZXIiLCJhc3NpZ24iLCJ2aWV3Qm94IiwidHJhbnNmb3JtIiwiZmlsbFJ1bGUiLCJjbGlwUnVsZSIsImQiLCJmaWxsIiwiY3giLCJjeSIsInIiLCJzdHJva2UiLCJzdHJva2VXaWR0aCIsImNvbmNhdCIsImlkIiwieDEiLCJ5MSIsIngyIiwieTIiLCJncmFkaWVudFVuaXRzIiwiSWxsdXNFbWFpbEVycm9yIiwiX2EkYm9yZGVyQ29sb3IyIiwiX2EkY29sb3IiLCJjb2xvciIsIl9hJGdyYWRpZW50Q29sb3IyIiwieCIsInkiLCJ3aWR0aCIsImhlaWdodCIsIklsbHVzTGlua0V4cGlyZWQiLCJfYSRib3JkZXJDb2xvcjMiLCJfYSRjb2xvcjIiLCJfYSRncmFkaWVudENvbG9yMyIsIklsbHVzMkZBIiwiX2EkYm9yZGVyQ29sb3I0IiwiX2EkY29sb3IzIiwiX2EkZ3JhZGllbnRDb2xvcjQiLCJJbGx1c0xvY2tlZCIsIl9hJGJvcmRlckNvbG9yNSIsIl9hJGNvbG9yNCIsIl9hJGdyYWRpZW50Q29sb3I1Iiwic3ZnSWQiLCJyZXBsYWNlIiwibG9ja2VkQm9yZGVyQ29sb3IiLCJyeCIsIklsbHVzRXJyb3IiLCJfYSRib3JkZXJDb2xvcjYiLCJfYSRjb2xvcjUiLCJJbGx1c1JlZ2lvbk5vdFN1cHBvcnRlZCIsIl9hJGJvcmRlckNvbG9yNyIsIl9hJGNvbG9yNiIsIl9hJGdyYWRpZW50Q29sb3I2IiwiSWxsdXNJRCIsIl9hJGJvcmRlckNvbG9yOCIsIl9hJGdyYWRpZW50Q29sb3I3IiwiZ3JhZGllbnRJZDAiLCJncmFkaWVudElkMSIsImdyYWRpZW50SWQyIiwiSWxsdXNWZXJpZmljYXRpb24iLCJfYSRib3JkZXJDb2xvcjkiLCJfYSRncmFkaWVudENvbG9yOCIsIklsbHVzUGFzc2tleSIsIl9hJGJvcmRlckNvbG9yMTAiLCJfYSRncmFkaWVudENvbG9yOSIsImJhZGdlR3JhZGllbnRJZCIsIklsbHVzUGVuZGluZyIsIl9hJGJvcmRlckNvbG9yMTEiLCJfYSRjb2xvcjciLCJfYSRncmFkaWVudENvbG9yMTAiLCJJbGx1c0FkZEFjY291bnQiLCJfYSRib3JkZXJDb2xvcjEyIiwiX2EkZ3JhZGllbnRDb2xvcjExIiwiY2FyZEdyYWRpZW50SWQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBV0EsSUFBQUEsV0FBQSxHQUFBQyxPQUFBO0FDWEEsSUFBQUMsTUFBQSxHQUFBRCxPQUFBO0FBQ0EsSUFB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TUFBQ0MsS0FBSyxFQUFDLFFBQVE7TUFBQ0MsTUFBTSxFQUFDLFNBQVM7TUFBQ3JCLElBQUksRUFBRVo7SUFBVyxDQUFBLENBQUksRUFDbkYsSUFBQVAsZUFBQSxFQUFBLE1BQUEsRUFBQTtNQUFNcUMsQ0FBQyxFQUFDLFNBQVM7TUFBQ0MsQ0FBQyxFQUFDLFNBQVM7TUFBQ0MsS0FBSyxFQUFDLFFBQVE7TUFBQ0MsTUFBTSxFQUFDLFNBQVM7TUFBQ3JCLElBQUksRUFBRVo7SUFBVyxDQUFBLENBQUksRUFDbkYsSUFBQVAsZUFBQSxFQUFBLE1BQUEsRUFBQTtNQUFNcUMsQ0FBQyxFQUFDLFNBQVM7TUFBQ0MsQ0FBQyxFQUFDLFNBQVM7TUFBQ0MsS0FBSyxFQUFDLFFBQVE7TUFBQ0MsTUFBTSxFQUFDLFNBQVM7TUFBQ3JCLElBQUksRUFBRVo7SUFBVyxDQUFBLENBQUksRUFDbkYsSUFBQVAsZUFBQSxFQUFBLE1BQUEsRUFBQTtNQUFNcUMsQ0FBQyxFQUFDLFNBQVM7TUFBQ0MsQ0FBQyxFQUFDLFNBQVM7TUFBQ0MsS0FBSyxFQUFDLFFBQVE7TUFBQ0MsTUFBTSxFQUFDLFNBQVM7TUFBQ3JCLElBQUksRUFBRVo7SUFBVyxDQUFBLENBQUksRUFDbkYsSUFBQVAsZUFBQSxFQUFBLE1BQUEsRUFBQTtNQUFNcUMsQ0FBQyxFQUFDLFNBQVM7TUFBQ0MsQ0FBQyxFQUFDLFNBQVM7TUFBQ0MsS0FBSyxFQUFDLFFBQVE7TUFBQ0MsTUFBTSxFQUFDLFNBQVM7TUFBQ3JCLElBQUksRUFBRVo7SUFBVyxDQUFBLENBQUksRUFDbkYsSUFBQVAsZUFBQSxFQUFBLFFBQUEsRUFBQTtNQUFRb0IsRUFBRSxFQUFDLElBQUk7TUFBQ0MsRUFBRSxFQUFDLElBQUk7TUFBQ0MsQ0FBQyxFQUFDLElBQUk7TUFBQ0gsSUFBSSxFQUFFZ0I7SUFBSyxDQUFBLENBQUksRUFDOUMsSUFBQW5DLGVBQUEsRUFBQSxRQUFBLEVBQUE7TUFBUW9CLEVBQUUsRUFBQyxJQUFJO01BQUNDLEVBQUUsRUFBQyxJQUFJO01BQUNDLENBQUMsRUFBQyxJQUFJ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b25zLmpzIiwic291cmNlc0NvbnRlbnQiOlsidmFyIF9fcmVzdCA9ICh0aGlzICYmIHRoaXMuX19yZXN0KSB8fCBmdW5jdGlvbiAocywgZSkge1xuICAgIHZhciB0ID0ge307XG4gICAgZm9yICh2YXIgcCBpbiBzKSBpZiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHMsIHApICYmIGUuaW5kZXhPZihwKSA8IDApXG4gICAgICAgIHRbcF0gPSBzW3BdO1xuICAgIGlmIChzICE9IG51bGwgJiYgdHlwZW9mIE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHMgPT09IFwiZnVuY3Rpb25cIilcbiAgICAgICAgZm9yICh2YXIgaSA9IDAsIHAgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlTeW1ib2xzKHMpOyBpIDwgcC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaWYgKGUuaW5kZXhPZihwW2ldKSA8IDAgJiYgT2JqZWN0LnByb3RvdHlwZS5wcm9wZXJ0eUlzRW51bWVyYWJsZS5jYWxsKHMsIHBbaV0pKVxuICAgICAgICAgICAgICAgIHRbcFtpXV0gPSBzW3BbaV1dO1xuICAgICAgICB9XG4gICAgcmV0dXJuIHQ7XG59O1xuaW1wb3J0IHsganN4IGFzIF9qc3gsIEZyYWdtZW50IGFzIF9GcmFnbWVudCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJyZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IHsgdXNlSWQgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgSWNvbldyYXBwZXIgZnJvbSAnLi9XcmFwcGVyJztcbmNvbnN0IERFRkFVTFRfQk9SREVSX0NPTE9SID0gJyMxMzEzMTMnO1xuY29uc3QgREVGQVVMVF9BTEVSVF9DT0xPUiA9ICcjQUUwMDAwJztcbmNvbnN0IERFRkFVTFRfUEVORElOR19DT0xPUiA9ICcjRjRDNjAwJztcbmNvbnN0IERFRkFVTFRfR1JBRElFTlRfQ09MT1IgPSBbJyNCOUNDRTQnLCAnd2hpdGUnXTtcbmNvbnN0IERFRkFVTFRfRklHTUFfU1RST0tFX0NPTE9SID0gJyMxMzEzMTMnO1xuY29uc3QgcmVuZGVyR3JhZGllbnRTdG9wcyA9IChncmFkaWVudENvbG9yKSA9PiB7XG4gICAgY29uc3QgW3N0YXJ0Q29sb3IsIGVuZENvbG9yXSA9IEFycmF5LmlzQXJyYXkoZ3JhZGllbnRDb2xvcikgPyBncmFkaWVudENvbG9yIDogW2dyYWRpZW50Q29sb3IsIGdyYWRpZW50Q29sb3JdO1xuICAgIHJldHVybiAoX2pzeHMoX0ZyYWdtZW50LCB7IGNoaWxkcmVuOiBbX2pzeChcInN0b3BcIiwgeyBzdG9wQ29sb3I6IHN0YXJ0Q29sb3IgfSksIF9qc3goXCJzdG9wXCIsIHsgb2Zmc2V0OiBcIjFcIiwgc3RvcENvbG9yOiBlbmRDb2xvciB9KV0gfSkpO1xufTtcbmV4cG9ydCBjb25zdCBJbGx1c0NoZWNrZWQgPSAoX2EpID0+IHtcbiAgICB2YXIgeyBib3JkZXJDb2xvciA9IERFRkFVTFRfQk9SREVSX0NPTE9SLCBncmFkaWVudENvbG9yID0gREVGQVVMVF9HUkFESUVOVF9DT0xPUiB9ID0gX2EsIHJlc3QgPSBfX3Jlc3QoX2EsIFtcImJvcmRlckNvbG9yXCIsIFwiZ3JhZGllbnRDb2xvclwiXSk7XG4gICAgY29uc3QgZ3JhZGllbnRJZCA9IHVzZUlkKCk7XG4gICAgcmV0dXJuIChfanN4cyhJY29uV3JhcHBlciwgT2JqZWN0LmFzc2lnbih7IHZpZXdCb3g6IFwiMCAwIDc0IDc0XCIgfSwgcmVzdCwgeyBjaGlsZHJlbjogW19qc3hzKFwiZ1wiLCB7IHRyYW5zZm9ybTogXCJ0cmFuc2xhdGUoMTAgNilcIiwgY2hpbGRyZW46IFtfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk0xNyA2MEgxNi41VjYySDE3SDIxSDI1SDI5SDMzSDM3SDM3LjVWNjBIMzdIMzNIMjlIMjVIMjFIMTdaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwiY2lyY2xlXCIsIHsgY3g6IFwiMjdcIiwgY3k6IFwiMjdcIiwgcjogXCIyN1wiLCBmaWxsOiBcIndoaXRlXCIgfSksIF9qc3goXCJjaXJjbGVcIiwgeyBjeDogXCIyN1wiLCBjeTogXCIyN1wiLCByOiBcIjI2XCIsIHN0cm9rZTogYm9yZGVyQ29sb3IsIHN0cm9rZVdpZHRoOiBcIjJcIiwgZmlsbDogXCJ0cmFuc3BhcmVudFwiIH0pLCBfanN4KFwiY2lyY2xlXCIsIHsgY3g6IFwiMjYuOTk3XCIsIGN5OiBcIjI3LjAwMDlcIiwgcjogXCIyMC4xMDY0XCIsIGZpbGw6IGB1cmwoIyR7Z3JhZGllbnRJZH0pYCB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjI2Ljk5N1wiLCBjeTogXCIyNy4wMDA5XCIsIHI6IFwiMTkuNjA2NFwiLCBzdHJva2U6IGJvcmRlckNvbG9yLCBmaWxsOiBcInRyYW5zcGFyZW50XCIgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNMTYgMjYuMzQ2MkwyNCAzNC41TDM3LjUgMjBcIiwgc3Ryb2tlOiBib3JkZXJDb2xvciwgc3Ryb2tlV2lkdGg6IFwiMlwiLCBmaWxsOiBcInRyYW5zcGFyZW50XCIgfSldIH0pLCBfanN4KFwiZGVmc1wiLCB7IGNoaWxkcmVuOiBfanN4KFwibGluZWFyR3JhZGllbnRcIiwgeyBpZDogZ3JhZGllbnRJZCwgeDE6IFwiMzYuOTk3XCIsIHkxOiBcIjEyLjg5NDUzXCIsIHgyOiBcIjM2Ljk5N1wiLCB5MjogXCI1My4xMDczXCIsIGdyYWRpZW50VW5pdHM6IFwidXNlclNwYWNlT25Vc2VcIiwgY2hpbGRyZW46IHJlbmRlckdyYWRpZW50U3RvcHMoZ3JhZGllbnRDb2xvcikgfSkgfSldIH0pKSk7XG59O1xuZXhwb3J0IGNvbnN0IElsbHVzRW1haWxFcnJvciA9IChfYSkgPT4ge1xuICAgIHZhciB7IGJvcmRlckNvbG9yID0gREVGQVVMVF9CT1JERVJfQ09MT1IsIGNvbG9yID0gREVGQVVMVF9BTEVSVF9DT0xPUiwgZ3JhZGllbnRDb2xvciA9IERFRkFVTFRfR1JBRElFTlRfQ09MT1IgfSA9IF9hLCByZXN0ID0gX19yZXN0KF9hLCBbXCJib3JkZXJDb2xvclwiLCBcImNvbG9yXCIsIFwiZ3JhZGllbnRDb2xvclwiXSk7XG4gICAgY29uc3QgZ3JhZGllbnRJZCA9IHVzZUlkKCk7XG4gICAgcmV0dXJuIChfanN4cyhJY29uV3JhcHBlciwgT2JqZWN0LmFzc2lnbih7IHZpZXdCb3g6IFwiMCAwIDc0IDc0XCIgfSwgcmVzdCwgeyBjaGlsZHJlbjogW19qc3goXCJwYXRoXCIsIHsgZDogXCJNNDEgNjZIMzdWNjRINDFWNjZaTTQ5IDY2SDQ1VjY0SDQ5VjY2WlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk0xMyAxNEMxMyAxMC42ODYzIDE1LjY4NjMgOCAxOSA4TDU5IDhDNjIuMzEzNyA4IDY1IDEwLjY4NjMgNjUgMTRWMTcuODgyNEM2NSAxOC41NzY5IDY0LjYzOTcgMTkuMjIxNyA2NC4wNDgyIDE5LjU4NTdMNDAuMDQ4MiAzNC4zNTVDMzkuNDA1NCAzNC43NTA1IDM4LjU5NDYgMzQuNzUwNSAzNy45NTE4IDM0LjM1NUwxMy45NTE4IDE5LjU4NTdDMTMuMzYwMyAxOS4yMjE3IDEzIDE4LjU3NjkgMTMgMTcuODgyNFYxNFpcIiwgZmlsbDogYHVybCgjJHtncmFkaWVudElkfSlgIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTYxIDhDNjMuMjA5MSA4IDY1IDkuNzkwODYgNjUgMTJWNTBDNjUgNTIuMjA5MSA2My4yMDkxIDU0IDYxIDU0SDE3QzE0Ljc5MDkgNTQgMTMgNTIuMjA5MSAxMyA1MFYxMkMxMyA5Ljc5MDg2IDE0Ljc5MDkgOCAxNyA4SDYxWk00MS4xODk1IDM1LjU2ODRDMzkuODU5NiAzNi40Mzc5IDM4LjE0MDQgMzYuNDM3OSAzNi44MTA1IDM1LjU2ODRMMTUgMjEuMzA3NlY1Mkg2M1YyMS4zMDc2TDQxLjE4OTUgMzUuNTY4NFpNMTUgMTguOTE4TDM5IDM0LjYxMDRMNjMgMTguOTE4VjEwSDE1VjE4LjkxOFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJjaXJjbGVcIiwgeyBjeDogXCIxNlwiLCBjeTogXCI0OFwiLCByOiBcIjEzXCIsIGZpbGw6IGNvbG9yIH0pLCBfanN4KFwiY2lyY2xlXCIsIHsgY3g6IFwiMTZcIiwgY3k6IFwiNDhcIiwgcjogXCIxMlwiLCBzdHJva2U6IGJvcmRlckNvbG9yLCBzdHJva2VXaWR0aDogXCIyXCIgfSksIF9qc3goXCJwYXRoXCIsIHsgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLCBjbGlwUnVsZTogXCJldmVub2RkXCIsIGQ6IFwiTTEwLjM0MTYgNTIuMjQxMUwxMS43NTU5IDUzLjY1NTNMMTUuOTk4NCA0OS40MTI4TDIwLjI0MjUgNTMuNjU2OUwyMS42NTY4IDUyLjI0MjdMMTcuNDEyNiA0Ny45OTg2TDIxLjY1NTMgNDMuNzU1OEwyMC4yNDExIDQyLjM0MTZMMTUuOTk4NCA0Ni41ODQ0TDExLjc1NzMgNDIuMzQzMkwxMC4zNDMgNDMuNzU3NEwxNC41ODQyIDQ3Ljk5ODZMMTAuMzQxNiA1Mi4yNDExWlwiLCBmaWxsOiBcIndoaXRlXCIgfSksIF9qc3goXCJyZWN0XCIsIHsgeDogXCIzMFwiLCB5OiBcIjY0XCIsIHdpZHRoOiBcIjIxXCIsIGhlaWdodDogXCIyXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwiZGVmc1wiLCB7IGNoaWxkcmVuOiBfanN4KFwibGluZWFyR3JhZGllbnRcIiwgeyBpZDogZ3JhZGllbnRJZCwgeDE6IFwiMzlcIiwgeTE6IFwiOFwiLCB4MjogXCIzOVwiLCB5MjogXCIzNVwiLCBncmFkaWVudFVuaXRzOiBcInVzZXJTcGFjZU9uVXNlXCIsIGNoaWxkcmVuOiByZW5kZXJHcmFkaWVudFN0b3BzKGdyYWRpZW50Q29sb3IpIH0pIH0pXSB9KSkpO1xufTtcbmV4cG9ydCBjb25zdCBJbGx1c0xpbmtFeHBpcmVkID0gKF9hKSA9PiB7XG4gICAgdmFyIHsgYm9yZGVyQ29sb3IgPSBERUZBVUxUX0JPUkRFUl9DT0xPUiwgY29sb3IgPSBERUZBVUxUX0FMRVJUX0NPTE9SLCBncmFkaWVudENvbG9yID0gREVGQVVMVF9HUkFESUVOVF9DT0xPUiB9ID0gX2EsIHJlc3QgPSBfX3Jlc3QoX2EsIFtcImJvcmRlckNvbG9yXCIsIFwiY29sb3JcIiwgXCJncmFkaWVudENvbG9yXCJdKTtcbiAgICBjb25zdCBncmFkaWVudElkID0gdXNlSWQoKTtcbiAgICByZXR1cm4gKF9qc3hzKEljb25XcmFwcGVyLCBPYmplY3QuYXNzaWduKHsgdmlld0JveDogXCIwIDAgNzQgNzRcIiB9LCByZXN0LCB7IGNoaWxkcmVuOiBbX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjM2Ljk5OTZcIiwgY3k6IFwiMzYuOTk3OVwiLCByOiBcIjI5LjU5MDlcIiwgZmlsbDogXCJ3aGl0ZVwiIH0pLCBfanN4KFwiY2lyY2xlXCIsIHsgY3g6IFwiMzdcIiwgY3k6IFwiMzdcIiwgcjogXCIzMFwiLCBzdHJva2U6IGJvcmRlckNvbG9yLCBzdHJva2VXaWR0aDogXCIyXCIgfSksIF9qc3goXCJjaXJjbGVcIiwgeyBjeDogXCIzN1wiLCBjeTogXCIzN1wiLCByOiBcIjI0XCIsIGZpbGw6IGB1cmwoIyR7Z3JhZGllbnRJZH0pYCB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjM3XCIsIGN5OiBcIjM3XCIsIHI6IFwiMjMuNVwiLCBzdHJva2U6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk00Ny4wNzQzIDI2LjgzMjdDNDQuNTA4MiAyNC4zOTAyIDQwLjM0NzYgMjQuMzkwMiAzNy43ODE1IDI2LjgzMjdMMzQuNDYyOSAyOS45OTE1QzMxLjM5NjkgMzIuOTA5OCAzMS4zOTY5IDM3LjY0MTQgMzQuNDYyOSA0MC41NTk3TDM1LjkxMTUgMzkuMTgwOEMzMy42NDU2IDM3LjAyNCAzMy42NDU2IDMzLjUyNzIgMzUuOTExNSAzMS4zNzA0TDM5LjIzMDIgMjguMjExNkM0MC45OTYyIDI2LjUzMDcgNDMuODU5NiAyNi41MzA3IDQ1LjYyNTYgMjguMjExNkM0Ny4zOTE3IDI5Ljg5MjYgNDcuMzkxNyAzMi42MTggNDUuNjI1NiAzNC4yOTlMNDMuNTEzNyAzNi4zMDkxTDQ0Ljk2MjQgMzcuNjg4TDQ3LjA3NDMgMzUuNjc3OUM0OS42NDA0IDMzLjIzNTQgNDkuNjQwNCAyOS4yNzUzIDQ3LjA3NDMgMjYuODMyN1pNMjYuOTI0MSA0Ny4xNjczQzI5LjQ5MDIgNDkuNjA5OCAzMy42NTA3IDQ5LjYwOTggMzYuMjE2OSA0Ny4xNjczTDM5LjUzNTUgNDQuMDA4NUM0Mi42MDE1IDQxLjA5MDIgNDIuNjAxNSAzNi4zNTg3IDM5LjUzNTUgMzMuNDQwM0wzOC4wODY4IDM0LjgxOTJDNDAuMzUyNyAzNi45NzYgNDAuMzUyOCA0MC40NzI4IDM4LjA4NjggNDIuNjI5NkwzNC43NjgyIDQ1Ljc4ODRDMzMuMDAyMSA0Ny40NjkzIDMwLjEzODggNDcuNDY5MyAyOC4zNzI4IDQ1Ljc4ODRDMjYuNjA2NyA0NC4xMDc0IDI2LjYwNjcgNDEuMzgyIDI4LjM3MjggMzkuNzAxTDMwLjQ4NDYgMzcuNjkwOUwyOS4wMzYgMzYuMzEyTDI2LjkyNDEgMzguMzIyMUMyNC4zNTggNDAuNzY0NiAyNC4zNTggNDQuNzI0NyAyNi45MjQxIDQ3LjE2NzNaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwiY2lyY2xlXCIsIHsgY3g6IFwiMTVcIiwgY3k6IFwiNThcIiwgcjogXCIxM1wiLCBmaWxsOiBjb2xvciB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjE1XCIsIGN5OiBcIjU4XCIsIHI6IFwiMTJcIiwgc3Ryb2tlOiBib3JkZXJDb2xvciwgc3Ryb2tlV2lkdGg6IFwiMlwiIH0pLCBfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk0xMy41ODQyIDU3Ljk5ODZMOS4zNDE2NCA2Mi4yNDExTDEwLjc1NTkgNjMuNjU1M0wxNC45OTg0IDU5LjQxMjhMMTkuMjQyNSA2My42NTY5TDIwLjY1NjggNjIuMjQyN0wxNi40MTI2IDU3Ljk5ODZMMjAuNjU1MyA1My43NTU4TDE5LjI0MTEgNTIuMzQxNkwxNC45OTg0IDU2LjU4NDRMMTAuNzU3MyA1Mi4zNDMyTDkuMzQzMDUgNTMuNzU3NEwxMy41ODQyIDU3Ljk5ODZaXCIsIGZpbGw6IFwid2hpdGVcIiB9KSwgX2pzeChcImRlZnNcIiwgeyBjaGlsZHJlbjogX2pzeChcImxpbmVhckdyYWRpZW50XCIsIHsgaWQ6IGdyYWRpZW50SWQsIHgxOiBcIjM3XCIsIHkxOiBcIjEzXCIsIHgyOiBcIjM3XCIsIHkyOiBcIjYxXCIsIGdyYWRpZW50VW5pdHM6IFwidXNlclNwYWNlT25Vc2VcIiwgY2hpbGRyZW46IHJlbmRlckdyYWRpZW50U3RvcHMoZ3JhZGllbnRDb2xvcikgfSkgfSldIH0pKSk7XG59O1xuZXhwb3J0IGNvbnN0IElsbHVzMkZBID0gKF9hKSA9PiB7XG4gICAgdmFyIHsgYm9yZGVyQ29sb3IgPSBERUZBVUxUX0JPUkRFUl9DT0xPUiwgY29sb3IgPSBERUZBVUxUX0FMRVJUX0NPTE9SLCBncmFkaWVudENvbG9yID0gREVGQVVMVF9HUkFESUVOVF9DT0xPUiB9ID0gX2EsIHJlc3QgPSBfX3Jlc3QoX2EsIFtcImJvcmRlckNvbG9yXCIsIFwiY29sb3JcIiwgXCJncmFkaWVudENvbG9yXCJdKTtcbiAgICBjb25zdCBncmFkaWVudElkID0gdXNlSWQoKTtcbiAgICByZXR1cm4gKF9qc3hzKEljb25XcmFwcGVyLCBPYmplY3QuYXNzaWduKHsgdmlld0JveDogXCIwIDAgNzQgNzRcIiB9LCByZXN0LCB7IGNoaWxkcmVuOiBbX2pzeChcInBhdGhcIiwgeyBkOiBcIk00Ny43MDcxIDI2LjEyMTNMNDYuMjkyOSAyNC43MDcxTDMyIDM5TDI0LjcwNzEgMzEuNzA3MUwyMy4yOTI5IDMzLjEyMTNMMzIgNDEuODI4NEw0Ny43MDcxIDI2LjEyMTNaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk0zMS42NzUgNjcuMzM5M0MzMy4wNjU4IDY4LjMzMjcgMzQuOTM0MiA2OC4zMzI3IDM2LjMyNSA2Ny4zMzkzTDQzLjYyMTcgNjIuMTI3M0M1My4wNzA0IDU1LjM3ODMgNTkuMTIwMSA0NC44NTY0IDYwLjE5OTEgMzMuMjk1Mkw2MS43MDE2IDE3LjE5NzJDNjEuODc1OSAxNS4zMjk0IDYwLjcyODggMTMuNTkxNCA1OC45NDI5IDEzLjAxNzRMMzUuMjI0IDUuMzkzNDRDMzQuNDI4MSA1LjEzNzU5IDMzLjU3MTkgNS4xMzc1OSAzMi43NzYgNS4zOTM0NEw5LjA1NzA2IDEzLjAxNzRDNy4yNzExNSAxMy41OTE0IDYuMTI0MDggMTUuMzI5NCA2LjI5ODQxIDE3LjE5NzJMNy44MDA4OCAzMy4yOTUyQzguODc5OTQgNDQuODU2NCAxNC45Mjk2IDU1LjM3ODMgMjQuMzc4MyA2Mi4xMjczTDMxLjY3NSA2Ny4zMzkzWk01OS44NTk1IDE1LjQxMjdMMzQgNy4xMDA3OEw4LjE0MDU1IDE1LjQxMjdMOS43OTIyMyAzMy4xMDkzQzEwLjgxNzMgNDQuMDkyNSAxNi41NjQ1IDU0LjA4ODMgMjUuNTQwNyA2MC40OTk5TDM0IDY2LjU0MjJMNDIuNDU5MyA2MC40OTk5QzUxLjQzNTUgNTQuMDg4MyA1Ny4xODI3IDQ0LjA5MjUgNTguMjA3OCAzMy4xMDkzTDU5Ljg1OTUgMTUuNDEyN1pcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJjaXJjbGVcIiwgeyBjeDogXCI1M1wiLCBjeTogXCI1NFwiLCByOiBcIjE1XCIsIGZpbGw6IGB1cmwoIyR7Z3JhZGllbnRJZH0pYCB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjUzXCIsIGN5OiBcIjU0XCIsIHI6IFwiMTRcIiwgc3Ryb2tlOiBib3JkZXJDb2xvciwgc3Ryb2tlV2lkdGg6IFwiMlwiIH0pLCBfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk01MC41IDQ5LjVDNTAuNSA0OC4xMTkzIDUxLjYxOTMgNDcgNTMgNDdDNTQuMzgwNyA0NyA1NS41IDQ4LjExOTMgNTUuNSA0OS41VjUxSDUwLjVWNDkuNVpNNDguNSA1MVY0OS41QzQ4LjUgNDcuMDE0NyA1MC41MTQ3IDQ1IDUzIDQ1QzU1LjQ4NTMgNDUgNTcuNSA0Ny4wMTQ3IDU3LjUgNDkuNVY1MUg1OUg2MFY1MlY2MFY2MUg1OUg0N0g0NlY2MFY1MlY1MUg0N0g0OC41Wk00OCA1OVY1M0g1OFY1OUg0OFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJkZWZzXCIsIHsgY2hpbGRyZW46IF9qc3goXCJsaW5lYXJHcmFkaWVudFwiLCB7IGlkOiBncmFkaWVudElkLCB4MTogXCI1M1wiLCB5MTogXCIzOVwiLCB4MjogXCI1M1wiLCB5MjogXCI2OVwiLCBncmFkaWVudFVuaXRzOiBcInVzZXJTcGFjZU9uVXNlXCIsIGNoaWxkcmVuOiByZW5kZXJHcmFkaWVudFN0b3BzKGdyYWRpZW50Q29sb3IpIH0pIH0pXSB9KSkpO1xufTtcbmV4cG9ydCBjb25zdCBJbGx1c0xvY2tlZCA9IChfYSkgPT4ge1xuICAgIHZhciB7IGJvcmRlckNvbG9yID0gREVGQVVMVF9CT1JERVJfQ09MT1IsIGNvbG9yID0gREVGQVVMVF9BTEVSVF9DT0xPUiwgZ3JhZGllbnRDb2xvciA9IERFRkFVTFRfR1JBRElFTlRfQ09MT1IgfSA9IF9hLCByZXN0ID0gX19yZXN0KF9hLCBbXCJib3JkZXJDb2xvclwiLCBcImNvbG9yXCIsIFwiZ3JhZGllbnRDb2xvclwiXSk7XG4gICAgY29uc3Qgc3ZnSWQgPSB1c2VJZCgpLnJlcGxhY2UoLzovZywgJycpO1xuICAgIGNvbnN0IGdyYWRpZW50SWQgPSBgaWxsdXMtbG9ja2VkLWdyYWRpZW50LSR7c3ZnSWR9YDtcbiAgICBjb25zdCBsb2NrZWRCb3JkZXJDb2xvciA9IGJvcmRlckNvbG9yID09PSBERUZBVUxUX0JPUkRFUl9DT0xPUiA/IERFRkFVTFRfRklHTUFfU1RST0tFX0NPTE9SIDogYm9yZGVyQ29sb3I7XG4gICAgcmV0dXJuIChfanN4cyhJY29uV3JhcHBlciwgT2JqZWN0LmFzc2lnbih7IHZpZXdCb3g6IFwiMCAwIDc0IDc0XCIgfSwgcmVzdCwgeyBjaGlsZHJlbjogW19qc3goXCJwYXRoXCIsIHsgZDogXCJNMzkgM0M0OC45NDExIDMgNTcgMTEuMDU4OSA1NyAyMVYyOEg2NUM2Ni4xMDQ2IDI4IDY3IDI4Ljg5NTQgNjcgMzBWNjRDNjcgNjUuMTA0NiA2Ni4xMDQ2IDY2IDY1IDY2SDEzQzExLjg5NTQgNjYgMTEgNjUuMTA0NiAxMSA2NFYzMEMxMSAyOC44OTU0IDExLjg5NTQgMjggMTMgMjhIMjFWMjFDMjEgMTEuMDU4OSAyOS4wNTg5IDMgMzkgM1pNMzkgMTFDMzMuNDc3MiAxMSAyOSAxNS40NzcyIDI5IDIxVjI4SDQ5VjIxQzQ5IDE1LjQ3NzIgNDQuNTIyOSAxMSAzOSAxMVpcIiwgZmlsbDogXCJ3aGl0ZVwiIH0pLCBfanN4KFwicmVjdFwiLCB7IHg6IFwiNjdcIiwgeTogXCI2NlwiLCB3aWR0aDogXCI1NlwiLCBoZWlnaHQ6IFwiMzdcIiwgcng6IFwiNFwiLCB0cmFuc2Zvcm06IFwicm90YXRlKC0xODAgNjcgNjYpXCIsIGZpbGw6IGB1cmwoIyR7Z3JhZGllbnRJZH0pYCB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk02NSA2NFY2NkgxM1Y2NEg2NVpNNjUgMzBINTVWMjFDNTUgMTIuMTYzNCA0Ny44MzY2IDUgMzkgNUMzMC4xNjM0IDUgMjMgMTIuMTYzNCAyMyAyMVYzMEgxM1Y2NkMxMS44OTU0IDY2IDExIDY1LjEwNDYgMTEgNjRWMzBDMTEgMjguODk1NCAxMS44OTU0IDI4IDEzIDI4SDIxVjIxQzIxIDExLjA1ODkgMjkuMDU4OSAzIDM5IDNDNDguOTQxMSAzIDU3IDExLjA1ODkgNTcgMjFWMjhINjVDNjYuMTA0NiAyOCA2NyAyOC44OTU0IDY3IDMwVjY0QzY3IDY1LjEwNDYgNjYuMTA0NiA2NiA2NSA2NlYzMFpNNDkgMjhWMjFDNDkgMTUuNDc3MiA0NC41MjI5IDExIDM5IDExQzMzLjQ3NzIgMTEgMjkgMTUuNDc3MiAyOSAyMVYyOEg0OVpNNTEgMzBIMjdWMjFDMjcgMTQuMzcyNiAzMi4zNzI2IDkgMzkgOUM0NS42Mjc0IDkgNTEgMTQuMzcyNiA1MSAyMVYzMFpcIiwgZmlsbDogbG9ja2VkQm9yZGVyQ29sb3IgfSksIF9qc3goXCJjaXJjbGVcIiwgeyBjeDogXCIxNFwiLCBjeTogXCI1OFwiLCByOiBcIjEzXCIsIGZpbGw6IGNvbG9yIH0pLCBfanN4KFwiY2lyY2xlXCIsIHsgY3g6IFwiMTRcIiwgY3k6IFwiNThcIiwgcjogXCIxMlwiLCBzdHJva2U6IGxvY2tlZEJvcmRlckNvbG9yLCBzdHJva2VXaWR0aDogXCIyXCIgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNMTUuNDEyOCA1Ny45OTg2TDE5LjY1NjkgNjIuMjQyNkwxOC4yNDI2IDYzLjY1NjhMMTMuOTk4NiA1OS40MTI4TDkuNzU1OTggNjMuNjU1NUw4LjM0MTc2IDYyLjI0MTJMMTIuNTg0NCA1Ny45OTg2TDguMzQzMTUgNTMuNzU3M0w5Ljc1NzM2IDUyLjM0MzFMMTMuOTk4NiA1Ni41ODQ0TDE4LjI0MTMgNTIuMzQxOEwxOS42NTU1IDUzLjc1NkwxNS40MTI4IDU3Ljk5ODZaXCIsIGZpbGw6IFwid2hpdGVcIiB9KSwgX2pzeChcImRlZnNcIiwgeyBjaGlsZHJlbjogX2pzeChcImxpbmVhckdyYWRpZW50XCIsIHsgaWQ6IGdyYWRpZW50SWQsIHgxOiBcIjk1XCIsIHkxOiBcIjY2XCIsIHgyOiBcIjk1XCIsIHkyOiBcIjEwM1wiLCBncmFkaWVudFVuaXRzOiBcInVzZXJTcGFjZU9uVXNlXCIsIGNoaWxkcmVuOiByZW5kZXJHcmFkaWVudFN0b3BzKGdyYWRpZW50Q29sb3IpIH0pIH0pXSB9KSkpO1xufTtcbmV4cG9ydCBjb25zdCBJbGx1c0Vycm9yID0gKF9hKSA9PiB7XG4gICAgdmFyIHsgYm9yZGVyQ29sb3IgPSBERUZBVUxUX0JPUkRFUl9DT0xPUiwgY29sb3IgPSBERUZBVUxUX0FMRVJUX0NPTE9SIH0gPSBfYSwgcmVzdCA9IF9fcmVzdChfYSwgW1wiYm9yZGVyQ29sb3JcIiwgXCJjb2xvclwiXSk7XG4gICAgcmV0dXJuIF9qc3hzKEljb25XcmFwcGVyLCBPYmplY3QuYXNzaWduKHsgdmlld0JveDogXCIwIDAgNzQgNzRcIiB9LCByZXN0LCB7IGNoaWxkcmVuOiBbX2pzeChcInBhdGhcIiwgeyBkOiBcIk0xMiA1OUMxMiA1NS42ODYzIDE0LjY4NjMgNTMgMTggNTNINTZDNTkuMzEzNyA1MyA2MiA1NS42ODYzIDYyIDU5QzYyIDYyLjMxMzcgNTkuMzEzNyA2NSA1NiA2NUgxOEMxNC42ODYzIDY1IDEyIDYyLjMxMzcgMTIgNTlaXCIsIGZpbGw6IGNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTM2IDM3VjIySDM4VjM3SDM2WlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk0zNyA0MEMzNS44OTU0IDQwIDM1IDQwLjg5NTQgMzUgNDJDMzUgNDMuMTA0NiAzNS44OTU0IDQ0IDM3IDQ0QzM4LjEwNDYgNDQgMzkgNDMuMTA0NiAzOSA0MkMzOSA0MC44OTU0IDM4LjEwNDYgNDAgMzcgNDBaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk0xNi4yMzA4IDUzTDcuODQyNTYgNDEuMzE2NEM2Ljc2MjM0IDM5LjgxMTggNi44NTYzNSAzNy43NjI0IDguMDY5NzkgMzYuMzYzMUwzMy45Nzc5IDYuNDg1MTJDMzUuNTcyOSA0LjY0NTgyIDM4LjQyNzEgNC42NDU4MiA0MC4wMjIxIDYuNDg1MTJMNjUuOTMwMiAzNi4zNjMxQzY3LjE0MzYgMzcuNzYyNCA2Ny4yMzc3IDM5LjgxMTggNjYuMTU3NCA0MS4zMTY0TDU3Ljc2OTIgNTNINThDNjAuMjA5MSA1MyA2MiA1NC43OTA5IDYyIDU3VjYxQzYyIDYzLjIwOTEgNjAuMjA5MSA2NSA1OCA2NUgxNkMxMy43OTA5IDY1IDEyIDYzLjIwOTEgMTIgNjFWNTdDMTIgNTQuNzkwOSAxMy43OTA5IDUzIDE2IDUzSDE2LjIzMDhaTTM3IDYuMDUyODJMNjUuNDU0MSAzOC44NjY4TDU1LjMwNzIgNTNIMTguNjkyOEw4LjU0NTkzIDM4Ljg2NjhMMzcgNi4wNTI4MlpNNjAgNTVWNjNIMTRWNTVINjBaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pXSB9KSk7XG59O1xuZXhwb3J0IGNvbnN0IElsbHVzUmVnaW9uTm90U3VwcG9ydGVkID0gKF9hKSA9PiB7XG4gICAgdmFyIHsgYm9yZGVyQ29sb3IgPSBERUZBVUxUX0JPUkRFUl9DT0xPUiwgY29sb3IgPSBERUZBVUxUX0FMRVJUX0NPTE9SLCBncmFkaWVudENvbG9yID0gREVGQVVMVF9HUkFESUVOVF9DT0xPUiB9ID0gX2EsIHJlc3QgPSBfX3Jlc3QoX2EsIFtcImJvcmRlckNvbG9yXCIsIFwiY29sb3JcIiwgXCJncmFkaWVudENvbG9yXCJdKTtcbiAgICBjb25zdCBncmFkaWVudElkID0gdXNlSWQoKTtcbiAgICByZXR1cm4gKF9qc3hzKEljb25XcmFwcGVyLCBPYmplY3QuYXNzaWduKHsgdmlld0JveDogXCIwIDAgNzQgNzRcIiB9LCByZXN0LCB7IGNoaWxkcmVuOiBbX2pzeChcInJlY3RcIiwgeyB3aWR0aDogXCI3NFwiLCBoZWlnaHQ6IFwiNzRcIiwgZmlsbDogXCJ3aGl0ZVwiIH0pLCBfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk0yMC44ODA5IDM4LjYxMjlMMTQuNTA1NyA2MC4xMjlINjcuNDk0M0w2MS4xMTkxIDM4LjYxMjlIMjAuODgwOVpNNjMuMzA5OSAzOS40MjA4QzYyLjgzOTEgMzcuODMxOSA2MS4zNzkzIDM2Ljc0MTkgNTkuNzIyMSAzNi43NDE5SDIyLjI3NzlDMjAuNjIwNyAzNi43NDE5IDE5LjE2MDkgMzcuODMxOSAxOC42OTAxIDM5LjQyMDhMMTMuNDIzNyA1Ny4xOTVDMTIuNzEzMSA1OS41OTMyIDE0LjUxMDIgNjIgMTcuMDExNSA2Mkg2NC45ODg1QzY3LjQ4OTggNjIgNjkuMjg2OSA1OS41OTMyIDY4LjU3NjMgNTcuMTk1TDYzLjMwOTkgMzkuNDIwOFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNMjguNzkxMSA5LjA1NzA5QzM1LjUzMzggMi4zMTQzMiA0Ni40NjYgMi4zMTQzMiA1My4yMDg4IDkuMDU3MDlDNTkuNDI5OCAxNS4yNzgxIDU5Ljk3ODMgMjUuMTgxOSA1NC40ODI0IDMyLjA1MTlMNDAuOTk5OSA0OC45MDQ5TDI3LjUxNzUgMzIuMDUxOUMyMi4wMjE1IDI1LjE4MTkgMjIuNTcwMSAxNS4yNzgxIDI4Ljc5MTEgOS4wNTcwOVpcIiwgZmlsbDogYHVybCgjJHtncmFkaWVudElkfSlgIH0pLCBfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk00MS4wMDA0IDQ1LjkwOTlMNTMuMDIxOSAzMC44ODMxQzU3LjkyMjMgMjQuNzU3NiA1Ny40MzMyIDE1LjkyNjkgNTEuODg2MyAxMC4zOEM0NS44NzQyIDQuMzY3OTQgMzYuMTI2NiA0LjM2Nzk0IDMwLjExNDUgMTAuMzhDMjQuNTY3NiAxNS45MjY5IDI0LjA3ODYgMjQuNzU3NiAyOC45NzkgMzAuODgzMUw0MS4wMDA0IDQ1LjkwOTlaTTQyLjE5ODQgNDcuNDA3NEw1NC40ODI4IDMyLjA1MTlDNTkuOTc4OCAyNS4xODE5IDU5LjQzMDMgMTUuMjc4MSA1My4yMDkzIDkuMDU3MDdDNDYuNDY2NSAyLjMxNDMxIDM1LjUzNDMgMi4zMTQzMSAyOC43OTE2IDkuMDU3MDdDMjIuNTcwNiAxNS4yNzgxIDIyLjAyMiAyNS4xODE5IDI3LjUxOCAzMi4wNTE5TDM5LjgwMjQgNDcuNDA3NEw0MS4wMDA0IDQ4LjkwNDlMNDIuMTk4NCA0Ny40MDc0WlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjQxXCIsIGN5OiBcIjIxLjc3NDJcIiwgcjogXCI3LjQ4Mzg3XCIsIGZpbGw6IFwid2hpdGVcIiB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjQxXCIsIGN5OiBcIjIxLjc3NDJcIiwgcjogXCI2LjU0ODM5XCIsIHN0cm9rZTogYm9yZGVyQ29sb3IsIHN0cm9rZVdpZHRoOiBcIjEuODcwOTdcIiB9KSwgX2pzeChcInJlY3RcIiwgeyB4OiBcIjE5LjQ4MzlcIiwgeTogXCI1NS40NTE2XCIsIHdpZHRoOiBcIjUuNjEyOVwiLCBoZWlnaHQ6IFwiMS44NzA5N1wiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInJlY3RcIiwgeyB4OiBcIjI4LjgzODlcIiwgeTogXCI1NS40NTE2XCIsIHdpZHRoOiBcIjUuNjEyOVwiLCBoZWlnaHQ6IFwiMS44NzA5N1wiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInJlY3RcIiwgeyB4OiBcIjM4LjE5MzRcIiwgeTogXCI1NS40NTE2XCIsIHdpZHRoOiBcIjUuNjEyOVwiLCBoZWlnaHQ6IFwiMS44NzA5N1wiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInJlY3RcIiwgeyB4OiBcIjQ3LjU0ODNcIiwgeTogXCI1NS40NTE2XCIsIHdpZHRoOiBcIjUuNjEyOVwiLCBoZWlnaHQ6IFwiMS44NzA5N1wiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInJlY3RcIiwgeyB4OiBcIjU2LjkwMzNcIiwgeTogXCI1NS40NTE2XCIsIHdpZHRoOiBcIjUuNjEyOVwiLCBoZWlnaHQ6IFwiMS44NzA5N1wiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjE2XCIsIGN5OiBcIjU3XCIsIHI6IFwiMTNcIiwgZmlsbDogY29sb3IgfSksIF9qc3goXCJjaXJjbGVcIiwgeyBjeDogXCIxNlwiLCBjeTogXCI1N1wiLCByOiBcIjEyXCIsIHN0cm9rZTogYm9yZGVyQ29sb3IsIHN0cm9rZVdpZHRoOiBcIjJcIiB9KSwgX2pzeChcInBhdGhcIiwgeyBmaWxsUnVsZTogXCJldmVub2RkXCIsIGNsaXBSdWxlOiBcImV2ZW5vZGRcIiwgZDogXCJNMTQuNTg0MiA1Ni45OTg2TDEwLjM0MTYgNjEuMjQxMUwxMS43NTU5IDYyLjY1NTNMMTUuOTk4NCA1OC40MTI4TDIwLjI0MjUgNjIuNjU2OUwyMS42NTY4IDYxLjI0MjdMMTcuNDEyNiA1Ni45OTg2TDIxLjY1NTMgNTIuNzU1OEwyMC4yNDExIDUxLjM0MTZMMTUuOTk4NCA1NS41ODQ0TDExLjc1NzMgNTEuMzQzMkwxMC4zNDMgNTIuNzU3NEwxNC41ODQyIDU2Ljk5ODZaXCIsIGZpbGw6IFwid2hpdGVcIiB9KSwgX2pzeChcImRlZnNcIiwgeyBjaGlsZHJlbjogX2pzeChcImxpbmVhckdyYWRpZW50XCIsIHsgaWQ6IGdyYWRpZW50SWQsIHgxOiBcIjQwLjk5OTlcIiwgeTE6IFwiNC4wMDAwMlwiLCB4MjogXCI0MC45OTk5XCIsIHkyOiBcIjQ4LjkwNDlcIiwgZ3JhZGllbnRVbml0czogXCJ1c2VyU3BhY2VPblVzZVwiLCBjaGlsZHJlbjogcmVuZGVyR3JhZGllbnRTdG9wcyhncmFkaWVudENvbG9yKSB9KSB9KV0gfSkpKTtcbn07XG5leHBvcnQgY29uc3QgSWxsdXNJRCA9IChfYSkgPT4ge1xuICAgIHZhciB7IGJvcmRlckNvbG9yID0gREVGQVVMVF9CT1JERVJfQ09MT1IsIGdyYWRpZW50Q29sb3IgPSBERUZBVUxUX0dSQURJRU5UX0NPTE9SIH0gPSBfYSwgcmVzdCA9IF9fcmVzdChfYSwgW1wiYm9yZGVyQ29sb3JcIiwgXCJncmFkaWVudENvbG9yXCJdKTtcbiAgICBjb25zdCBncmFkaWVudElkMCA9IHVzZUlkKCk7XG4gICAgY29uc3QgZ3JhZGllbnRJZDEgPSB1c2VJZCgpO1xuICAgIGNvbnN0IGdyYWRpZW50SWQyID0gdXNlSWQoKTtcbiAgICByZXR1cm4gKF9qc3hzKEljb25XcmFwcGVyLCBPYmplY3QuYXNzaWduKHsgdmlld0JveDogXCIwIDAgNzQgNzRcIiB9LCByZXN0LCB7IGNoaWxkcmVuOiBbX2pzeChcInBhdGhcIiwgeyBkOiBcIk0xMSA1MEg2M1Y1OUgxMVY1MFpcIiwgZmlsbDogYHVybCgjJHtncmFkaWVudElkMH0pYCB9KSwgX2pzeChcInJlY3RcIiwgeyB4OiBcIjE1XCIsIHk6IFwiMzRcIiwgd2lkdGg6IFwiMThcIiwgaGVpZ2h0OiBcIjhcIiwgZmlsbDogYHVybCgjJHtncmFkaWVudElkMX0pYCB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjI0XCIsIGN5OiBcIjI0XCIsIHI6IFwiNVwiLCBmaWxsOiBgdXJsKCMke2dyYWRpZW50SWQyfSlgIH0pLCBfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk0xOCAzMkMxNS43OTA5IDMyIDE0IDMzLjc5MDkgMTQgMzZWNDNIMzRWMzZDMzQgMzMuNzkwOSAzMi4yMDkxIDMyIDMwIDMySDE4Wk0zMiA0MVYzNEgxNlY0MUgzMlpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLCBjbGlwUnVsZTogXCJldmVub2RkXCIsIGQ6IFwiTTMwIDI0QzMwIDI3LjMxMzcgMjcuMzEzNyAzMCAyNCAzMEMyMC42ODYzIDMwIDE4IDI3LjMxMzcgMTggMjRDMTggMjAuNjg2MyAyMC42ODYzIDE4IDI0IDE4QzI3LjMxMzcgMTggMzAgMjAuNjg2MyAzMCAyNFpNMjggMjRDMjggMjYuMjA5MSAyNi4yMDkxIDI4IDI0IDI4QzIxLjc5MDkgMjggMjAgMjYuMjA5MSAyMCAyNEMyMCAyMS43OTA5IDIxLjc5MDkgMjAgMjQgMjBDMjYuMjA5MSAyMCAyOCAyMS43OTA5IDI4IDI0WlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk01OSAyMUg0MlYxOUg1OVYyMVpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNNDIgMjhINTlWMjZINDJWMjhaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTU5IDM1SDQyVjMzSDU5VjM1WlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk00MiA0Mkg0OVY0MEg0MlY0MlpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNNTkgNDJINTJWNDBINTlWNDJaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk02MyA1Mkg2NEM2Ni4yMDkxIDUyIDY4IDUwLjIwOTEgNjggNDhWMTNDNjggMTAuNzkwOSA2Ni4yMDkxIDkgNjQgOUgxMEM3Ljc5MDg2IDkgNiAxMC43OTA5IDYgMTNWNDhDNiA1MC4yMDkxIDcuNzkwODYgNTIgMTAgNTJIMTFWNTVDMTEgNTcuMjA5MSAxMi43OTA5IDU5IDE1IDU5SDU5QzYxLjIwOTEgNTkgNjMgNTcuMjA5MSA2MyA1NVY1MlpNNjYgMTFIOFY1MEg2NlYxMVpNNjEgNTJIMTNWNTdINjFWNTJaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicmVjdFwiLCB7IHg6IFwiMjdcIiwgeTogXCI2NFwiLCB3aWR0aDogXCIyMVwiLCBoZWlnaHQ6IFwiMlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeHMoXCJkZWZzXCIsIHsgY2hpbGRyZW46IFtfanN4KFwibGluZWFyR3JhZGllbnRcIiwgeyBpZDogZ3JhZGllbnRJZDAsIHgxOiBcIjM3XCIsIHkxOiBcIjUwXCIsIHgyOiBcIjM3XCIsIHkyOiBcIjU5XCIsIGdyYWRpZW50VW5pdHM6IFwidXNlclNwYWNlT25Vc2VcIiwgY2hpbGRyZW46IHJlbmRlckdyYWRpZW50U3RvcHMoZ3JhZGllbnRDb2xvcikgfSksIF9qc3goXCJsaW5lYXJHcmFkaWVudFwiLCB7IGlkOiBncmFkaWVudElkMSwgeDE6IFwiMjRcIiwgeTE6IFwiMzRcIiwgeDI6IFwiMjRcIiwgeTI6IFwiNDJcIiwgZ3JhZGllbnRVbml0czogXCJ1c2VyU3BhY2VPblVzZVwiLCBjaGlsZHJlbjogcmVuZGVyR3JhZGllbnRTdG9wcyhncmFkaWVudENvbG9yKSB9KSwgX2pzeChcImxpbmVhckdyYWRpZW50XCIsIHsgaWQ6IGdyYWRpZW50SWQyLCB4MTogXCIyNFwiLCB5MTogXCIxOVwiLCB4MjogXCIyNFwiLCB5MjogXCIyOVwiLCBncmFkaWVudFVuaXRzOiBcInVzZXJTcGFjZU9uVXNlXCIsIGNoaWxkcmVuOiByZW5kZXJHcmFkaWVudFN0b3BzKGdyYWRpZW50Q29sb3IpIH0pXSB9KV0gfSkpKTtcbn07XG5leHBvcnQgY29uc3QgSWxsdXNWZXJpZmljYXRpb24gPSAoX2EpID0+IHtcbiAgICB2YXIgeyBib3JkZXJDb2xvciA9IERFRkFVTFRfQk9SREVSX0NPTE9SLCBncmFkaWVudENvbG9yID0gREVGQVVMVF9HUkFESUVOVF9DT0xPUiB9ID0gX2EsIHJlc3QgPSBfX3Jlc3QoX2EsIFtcImJvcmRlckNvbG9yXCIsIFwiZ3JhZGllbnRDb2xvclwiXSk7XG4gICAgY29uc3QgZ3JhZGllbnRJZDAgPSB1c2VJZCgpO1xuICAgIGNvbnN0IGdyYWRpZW50SWQxID0gdXNlSWQoKTtcbiAgICByZXR1cm4gKF9qc3hzKEljb25XcmFwcGVyLCBPYmplY3QuYXNzaWduKHsgdmlld0JveDogXCIwIDAgNzQgNzRcIiB9LCByZXN0LCB7IGNoaWxkcmVuOiBbX2pzeChcInBhdGhcIiwgeyBkOiBcIk0xMCA2QzcuNzkwODYgNiA2IDcuNzkwODYgNiAxMFYxOUg4VjhIMTlWNkgxMFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNNjQgNkM2Ni4yMDkxIDYgNjggNy43OTA4NiA2OCAxMFYxOUg2NlY4SDU1VjZINjRaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTY0IDY4QzY2LjIwOTEgNjggNjggNjYuMjA5MSA2OCA2NFY1NUg2NlY2Nkg1NVY2OEg2NFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNNjggMTBDNjggNy43OTA4NiA2Ni4yMDkxIDYgNjQgNkw1NSA2TDU1IDhMNjYgOEw2NiAxOUw2OCAxOUw2OCAxMFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNNjggNjRDNjggNjYuMjA5MSA2Ni4yMDkxIDY4IDY0IDY4TDU1IDY4TDU1IDY2TDY2IDY2TDY2IDU1TDY4IDU1TDY4IDY0WlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk02IDY0QzYgNjYuMjA5MSA3Ljc5MDg2IDY4IDEwIDY4TDE5IDY4TDE5IDY2TDggNjZMOCA1NUw2IDU1TDYgNjRaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTQyLjQ1NDYgMjYuODU0NFYxMi45NDUzTDU3LjE4MTkgMjYuODU0NEg0Mi40NTQ2WlwiLCBmaWxsOiBgdXJsKCMke2dyYWRpZW50SWQwfSlgIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTQ5LjgxODUgMzUuMDM1OUgyOS4zNjM5VjMzLjM5OTVINDkuODE4NVYzNS4wMzU5WlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk0yOS4zNjM5IDM5LjEyNjhIMzIuNjM2N1Y0MC43NjMxSDI5LjM2MzlWMzkuMTI2OFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNMzUuMDkxMiAzOS4xMjY4SDM4LjM2MzlWNDAuNzYzMUgzNS4wOTEyVjM5LjEyNjhaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTQ0LjA5MTIgNDAuNzYzMVYzOS4xMjY4SDQwLjgxODVWNDAuNzYzMUg0NC4wOTEyWlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk00Ni41NDU4IDM5LjEyNjhINDkuODE4NVY0MC43NjMxSDQ2LjU0NThWMzkuMTI2OFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLCBjbGlwUnVsZTogXCJldmVub2RkXCIsIGQ6IFwiTTQxLjk3MTkgMTIuMTI2OEM0Mi44MDc1IDEyLjEyNjggNDMuNjExNSAxMi40NDY0IDQ0LjIxOSAxMy4wMjAyTDU2Ljk3NDcgMjUuMDY3MkM1Ny42MjkzIDI1LjY4NTUgNTguMDAwMyAyNi41NDYxIDU4LjAwMDMgMjcuNDQ2NlY1NC42NzIyQzU4LjAwMDMgNTYuNDc5NyA1Ni41MzUxIDU3Ljk0NSA1NC43Mjc2IDU3Ljk0NUgyNC40NTQ5QzIyLjY0NzQgNTcuOTQ1IDIxLjE4MjEgNTYuNDc5NyAyMS4xODIxIDU0LjY3MjJWMTUuMzk5NUMyMS4xODIxIDEzLjU5MiAyMi42NDc0IDEyLjEyNjggMjQuNDU0OSAxMi4xMjY4SDQxLjk3MTlaTTU2LjM2MzkgNTYuMzA4NkgyMi44MTg1VjEzLjc2MzFINDEuNjM2N1YyNC4zOTk1QzQxLjYzNjcgMjYuMjA3IDQzLjEwMTkgMjcuNjcyMiA0NC45MDk0IDI3LjY3MjJINTYuMzYzOVY1Ni4zMDg2Wk01NS42MTcxIDI2LjAzNTlMNDMuMjczIDE0LjM3NzZWMjYuMDM1OUg1NS42MTcxWlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjI0LjQ1NDZcIiwgY3k6IFwiNTEuNDAwNVwiLCByOiBcIjlcIiwgZmlsbDogYHVybCgjJHtncmFkaWVudElkMX0pYCB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjI0LjQ1NDZcIiwgY3k6IFwiNTEuNDAwNVwiLCByOiBcIjguMTgxODJcIiwgc3Ryb2tlOiBib3JkZXJDb2xvciwgc3Ryb2tlV2lkdGg6IFwiMS42MzYzNlwiIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTE4LjcyNzMgNTcuMTI3TDEzIDYyLjg1NDJcIiwgc3Ryb2tlOiBib3JkZXJDb2xvciwgc3Ryb2tlV2lkdGg6IFwiMS42MzYzNlwiIH0pLCBfanN4cyhcImRlZnNcIiwgeyBjaGlsZHJlbjogW19qc3goXCJsaW5lYXJHcmFkaWVudFwiLCB7IGlkOiBncmFkaWVudElkMCwgeDE6IFwiNDkuODE4MlwiLCB5MTogXCIxMi45NDUzXCIsIHgyOiBcIjQ5LjgxODJcIiwgeTI6IFwiMjYuODU0NFwiLCBncmFkaWVudFVuaXRzOiBcInVzZXJTcGFjZU9uVXNlXCIsIGNoaWxkcmVuOiByZW5kZXJHcmFkaWVudFN0b3BzKGdyYWRpZW50Q29sb3IpIH0pLCBfanN4KFwibGluZWFyR3JhZGllbnRcIiwgeyBpZDogZ3JhZGllbnRJZDEsIHgxOiBcIjI0LjQ1NDZcIiwgeTE6IFwiNDIuNDAwNVwiLCB4MjogXCIyNC40NTQ2XCIsIHkyOiBcIjYwLjQwMDVcIiwgZ3JhZGllbnRVbml0czogXCJ1c2VyU3BhY2VPblVzZVwiLCBjaGlsZHJlbjogcmVuZGVyR3JhZGllbnRTdG9wcyhncmFkaWVudENvbG9yKSB9KV0gfSldIH0pKSk7XG59O1xuZXhwb3J0IGNvbnN0IElsbHVzUGFzc2tleSA9IChfYSkgPT4ge1xuICAgIHZhciB7IGJvcmRlckNvbG9yID0gREVGQVVMVF9CT1JERVJfQ09MT1IsIGdyYWRpZW50Q29sb3IgPSBERUZBVUxUX0dSQURJRU5UX0NPTE9SIH0gPSBfYSwgcmVzdCA9IF9fcmVzdChfYSwgW1wiYm9yZGVyQ29sb3JcIiwgXCJncmFkaWVudENvbG9yXCJdKTtcbiAgICBjb25zdCBncmFkaWVudElkMCA9IHVzZUlkKCk7XG4gICAgY29uc3QgZ3JhZGllbnRJZDEgPSB1c2VJZCgpO1xuICAgIGNvbnN0IGdyYWRpZW50SWQyID0gdXNlSWQoKTtcbiAgICBjb25zdCBiYWRnZUdyYWRpZW50SWQgPSB1c2VJZCgpO1xuICAgIHJldHVybiAoX2pzeHMoSWNvbldyYXBwZXIsIE9iamVjdC5hc3NpZ24oeyB2aWV3Qm94OiBcIjAgMCA3NCA3NFwiIH0sIHJlc3QsIHsgY2hpbGRyZW46IFtfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTExIDUySDYzVjYxSDExVjUyWlwiLCBmaWxsOiBgdXJsKCMke2dyYWRpZW50SWQwfSlgIH0pLCBfanN4KFwicmVjdFwiLCB7IHg6IFwiMTVcIiwgeTogXCIzNlwiLCB3aWR0aDogXCIxOFwiLCBoZWlnaHQ6IFwiOFwiLCBmaWxsOiBgdXJsKCMke2dyYWRpZW50SWQxfSlgIH0pLCBfanN4KFwiY2lyY2xlXCIsIHsgY3g6IFwiMjRcIiwgY3k6IFwiMjZcIiwgcjogXCI1XCIsIGZpbGw6IGB1cmwoIyR7Z3JhZGllbnRJZDJ9KWAgfSksIF9qc3goXCJwYXRoXCIsIHsgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLCBjbGlwUnVsZTogXCJldmVub2RkXCIsIGQ6IFwiTTE4IDM0QzE1Ljc5MDkgMzQgMTQgMzUuNzkwOSAxNCAzOFY0NUgzNFYzOEMzNCAzNS43OTA5IDMyLjIwOTEgMzQgMzAgMzRIMThaTTMyIDQzVjM2SDE2VjQzSDMyWlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBmaWxsUnVsZTogXCJldmVub2RkXCIsIGNsaXBSdWxlOiBcImV2ZW5vZGRcIiwgZDogXCJNMzAgMjZDMzAgMjkuMzEzNyAyNy4zMTM3IDMyIDI0IDMyQzIwLjY4NjMgMzIgMTggMjkuMzEzNyAxOCAyNkMxOCAyMi42ODYzIDIwLjY4NjMgMjAgMjQgMjBDMjcuMzEzNyAyMCAzMCAyMi42ODYzIDMwIDI2Wk0yOCAyNkMyOCAyOC4yMDkxIDI2LjIwOTEgMzAgMjQgMzBDMjEuNzkwOSAzMCAyMCAyOC4yMDkxIDIwIDI2QzIwIDIzLjc5MDkgMjEuNzkwOSAyMiAyNCAyMkMyNi4yMDkxIDIyIDI4IDIzLjc5MDkgMjggMjZaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTU5IDIzSDQyVjIxSDU5VjIzWlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk00MiAzMEg1OVYyOEg0MlYzMFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNNTkgMzdINDJWMzVINTlWMzdaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwicGF0aFwiLCB7IGQ6IFwiTTQyIDQ0SDQ5VjQySDQyVjQ0WlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk01OSA0NEg1MlY0Mkg1OVY0NFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJwYXRoXCIsIHsgZmlsbFJ1bGU6IFwiZXZlbm9kZFwiLCBjbGlwUnVsZTogXCJldmVub2RkXCIsIGQ6IFwiTTYzIDU0SDY0QzY2LjIwOTEgNTQgNjggNTIuMjA5MSA2OCA1MFYxNUM2OCAxMi43OTA5IDY2LjIwOTEgMTEgNjQgMTFIMTBDNy43OTA4NiAxMSA2IDEyLjc5MDkgNiAxNVY1MEM2IDUyLjIwOTEgNy43OTA4NiA1NCAxMCA1NEgxMVY1N0MxMSA1OS4yMDkxIDEyLjc5MDkgNjEgMTUgNjFINTlDNjEuMjA5MSA2MSA2MyA1OS4yMDkxIDYzIDU3VjU0Wk02NiAxM0g4VjUySDY2VjEzWk02MSA1NEgxM1Y1OUg2MVY1NFpcIiwgZmlsbDogYm9yZGVyQ29sb3IgfSksIF9qc3goXCJyZWN0XCIsIHsgeDogXCIyN1wiLCB5OiBcIjY2XCIsIHdpZHRoOiBcIjIxXCIsIGhlaWdodDogXCIyXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwiY2lyY2xlXCIsIHsgY3g6IFwiNTlcIiwgY3k6IFwiMTVcIiwgcjogXCIxNVwiLCBmaWxsOiBgdXJsKCMke2JhZGdlR3JhZGllbnRJZH0pYCB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjU5XCIsIGN5OiBcIjE1XCIsIHI6IFwiMTRcIiwgc3Ryb2tlOiBib3JkZXJDb2xvciwgc3Ryb2tlV2lkdGg6IFwiMlwiIH0pLCBfanN4KFwiZ1wiLCB7IHRyYW5zZm9ybTogXCJ0cmFuc2xhdGUoNTAuNjY2NyA2LjgzMzMpXCIsIGNoaWxkcmVuOiBfanN4KFwicGF0aFwiLCB7IGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk0xLjY2NjY3IDEuNjY2NjdIMTVWNS40ODgwMUMxNSAxMC4xMTAyIDEyLjQyNDkgMTQuMzQxMyA4LjMzMzMzIDE2LjQ2ODJDNC4yNDE3NyAxNC4zNDEzIDEuNjY2NjcgMTAuMTEwMiAxLjY2NjY3IDUuNDg4MDFWMS42NjY2N1pNMCAxLjY2NjY3QzAgMC43NDYxOTIgMC43NDYxOTIgMCAxLjY2NjY3IDBIMTVDMTUuOTIwNSAwIDE2LjY2NjcgMC43NDYxOTIgMTYuNjY2NyAxLjY2NjY3VjUuNDg4MDFDMTYuNjY2NyAxMC44MDY5IDEzLjY2MTYgMTUuNjY5MiA4LjkwNDI0IDE4LjA0NzlDOC41NDQ4NCAxOC4yMjc2IDguMTIxODIgMTguMjI3NiA3Ljc2MjQzIDE4LjA0NzlDMy4wMDUxIDE1LjY2OTIgMCAxMC44MDY5IDAgNS40ODgwMVYxLjY2NjY3Wk04LjMzMzMzIDYuMjQ5OEM4Ljc5MzU3IDYuMjQ5OCA5LjE2NjY3IDUuODc2NyA5LjE2NjY3IDUuNDE2NDZDOS4xNjY2NyA0Ljk1NjIzIDguNzkzNTcgNC41ODMxMyA4LjMzMzMzIDQuNTgzMTNDNy44NzMxIDQuNTgzMTMgNy41IDQuOTU2MjMgNy41IDUuNDE2NDZDNy41IDUuODc2NyA3Ljg3MzEgNi4yNDk4IDguMzMzMzMgNi4yNDk4Wk0xMC44MzMzIDUuNDE2NDZDMTAuODMzMyA2LjUwNDk4IDEwLjEzNzcgNy40MzEwMSA5LjE2NjY3IDcuNzc0MjFWOS45OTk4SDEwLjgzMzNWMTEuNjY2NUg5LjE2NjY3VjEzLjMzMzFINy41VjcuNzc0MjFDNi41MjkwMSA3LjQzMTAxIDUuODMzMzMgNi41MDQ5OCA1LjgzMzMzIDUuNDE2NDZDNS44MzMzMyA0LjAzNTc1IDYuOTUyNjIgMi45MTY0NiA4LjMzMzMzIDIuOTE2NDZDOS43MTQwNSAyLjkxNjQ2IDEwLjgzMzMgNC4wMzU3NSAxMC44MzMzIDUuNDE2NDZaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pIH0pLCBfanN4cyhcImRlZnNcIiwgeyBjaGlsZHJlbjogW19qc3goXCJsaW5lYXJHcmFkaWVudFwiLCB7IGlkOiBncmFkaWVudElkMCwgeDE6IFwiMzdcIiwgeTE6IFwiNTJcIiwgeDI6IFwiMzdcIiwgeTI6IFwiNjFcIiwgZ3JhZGllbnRVbml0czogXCJ1c2VyU3BhY2VPblVzZVwiLCBjaGlsZHJlbjogcmVuZGVyR3JhZGllbnRTdG9wcyhncmFkaWVudENvbG9yKSB9KSwgX2pzeChcImxpbmVhckdyYWRpZW50XCIsIHsgaWQ6IGdyYWRpZW50SWQxLCB4MTogXCIyNFwiLCB5MTogXCIzNlwiLCB4MjogXCIyNFwiLCB5MjogXCI0NFwiLCBncmFkaWVudFVuaXRzOiBcInVzZXJTcGFjZU9uVXNlXCIsIGNoaWxkcmVuOiByZW5kZXJHcmFkaWVudFN0b3BzKGdyYWRpZW50Q29sb3IpIH0pLCBfanN4KFwibGluZWFyR3JhZGllbnRcIiwgeyBpZDogZ3JhZGllbnRJZDIsIHgxOiBcIjI0XCIsIHkxOiBcIjIxXCIsIHgyOiBcIjI0XCIsIHkyOiBcIjMxXCIsIGdyYWRpZW50VW5pdHM6IFwidXNlclNwYWNlT25Vc2VcIiwgY2hpbGRyZW46IHJlbmRlckdyYWRpZW50U3RvcHMoZ3JhZGllbnRDb2xvcikgfSksIF9qc3goXCJsaW5lYXJHcmFkaWVudFwiLCB7IGlkOiBiYWRnZUdyYWRpZW50SWQsIHgxOiBcIjU5XCIsIHkxOiBcIjBcIiwgeDI6IFwiNTlcIiwgeTI6IFwiMzBcIiwgZ3JhZGllbnRVbml0czogXCJ1c2VyU3BhY2VPblVzZVwiLCBjaGlsZHJlbjogcmVuZGVyR3JhZGllbnRTdG9wcyhncmFkaWVudENvbG9yKSB9KV0gfSldIH0pKSk7XG59O1xuZXhwb3J0IGNvbnN0IElsbHVzUGVuZGluZyA9IChfYSkgPT4ge1xuICAgIHZhciB7IGJvcmRlckNvbG9yID0gREVGQVVMVF9CT1JERVJfQ09MT1IsIGNvbG9yID0gREVGQVVMVF9QRU5ESU5HX0NPTE9SLCBncmFkaWVudENvbG9yID0gREVGQVVMVF9HUkFESUVOVF9DT0xPUiB9ID0gX2EsIHJlc3QgPSBfX3Jlc3QoX2EsIFtcImJvcmRlckNvbG9yXCIsIFwiY29sb3JcIiwgXCJncmFkaWVudENvbG9yXCJdKTtcbiAgICBjb25zdCBncmFkaWVudElkID0gdXNlSWQoKTtcbiAgICByZXR1cm4gKF9qc3hzKEljb25XcmFwcGVyLCBPYmplY3QuYXNzaWduKHsgdmlld0JveDogXCIwIDAgNzQgNzRcIiB9LCByZXN0LCB7IGNoaWxkcmVuOiBbX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjM2Ljk5NzJcIiwgY3k6IFwiMzYuOTk4MVwiLCByOiBcIjI5LjU5MDlcIiwgZmlsbDogXCJ3aGl0ZVwiIH0pLCBfanN4KFwiY2lyY2xlXCIsIHsgY3g6IFwiMzdcIiwgY3k6IFwiMzdcIiwgcjogXCIzMFwiLCBzdHJva2U6IGJvcmRlckNvbG9yLCBzdHJva2VXaWR0aDogXCIyXCIgfSksIF9qc3goXCJjaXJjbGVcIiwgeyBjeDogXCIzN1wiLCBjeTogXCIzN1wiLCByOiBcIjI0XCIsIGZpbGw6IGB1cmwoIyR7Z3JhZGllbnRJZH0pYCB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjM3XCIsIGN5OiBcIjM3XCIsIHI6IFwiMjMuNVwiLCBzdHJva2U6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwiY2lyY2xlXCIsIHsgY3g6IFwiMTVcIiwgY3k6IFwiNThcIiwgcjogXCIxM1wiLCBmaWxsOiBjb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk0xNSA1MlY1OEwyMSA2MVwiLCBzdHJva2U6IGJvcmRlckNvbG9yLCBzdHJva2VXaWR0aDogXCIyXCIgfSksIF9qc3goXCJjaXJjbGVcIiwgeyBjeDogXCIxNVwiLCBjeTogXCI1OFwiLCByOiBcIjEyXCIsIHN0cm9rZTogYm9yZGVyQ29sb3IsIHN0cm9rZVdpZHRoOiBcIjJcIiB9KSwgX2pzeChcInBhdGhcIiwgeyB0cmFuc2Zvcm06IFwidHJhbnNsYXRlKDc0IDApIHNjYWxlKC0xIDEpXCIsIGZpbGxSdWxlOiBcImV2ZW5vZGRcIiwgY2xpcFJ1bGU6IFwiZXZlbm9kZFwiLCBkOiBcIk0zMC40MTQ0IDMxLjAwMDFMMzMuNzA3MyAzNC4yOTNMMzIuMjkzIDM1LjcwNzJMMjYuNTg1OSAzMC4wMDAxTDMyLjI5MyAyNC4yOTNMMzMuNzA3MyAyNS43MDcyTDMwLjQxNDQgMjkuMDAwMUw0MC4wMDAyIDI5LjAwMDFDNDMuODY2MSAyOS4wMDAxIDQ3LjAwMDIgMzIuMTM0MSA0Ny4wMDAyIDM2LjAwMDFMNDUuMDAwMiAzNi4wMDAxQzQ1LjAwMDIgMzMuMjM4NyA0Mi43NjE2IDMxLjAwMDEgNDAuMDAwMiAzMS4wMDAxTDMwLjQxNDQgMzEuMDAwMVpNMjkuMDAwMiAzNi4wMDAxQzI5LjAwMDIgMzguNzYxNSAzMS4yMzg3IDQxLjAwMDEgMzQuMDAwMiA0MS4wMDAxSDQzLjU4NTlMNDAuMjkzIDM3LjcwNzJMNDEuNzA3MyAzNi4yOTNMNDcuNDE0NCA0Mi4wMDAxTDQxLjcwNzMgNDcuNzA3Mkw0MC4yOTMgNDYuMjkzTDQzLjU4NTkgNDMuMDAwMUgzNC4wMDAyQzMwLjEzNDIgNDMuMDAwMSAyNy4wMDAyIDM5Ljg2NjEgMjcuMDAwMiAzNi4wMDAxSDI5LjAwMDJaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4KFwiZGVmc1wiLCB7IGNoaWxkcmVuOiBfanN4KFwibGluZWFyR3JhZGllbnRcIiwgeyBpZDogZ3JhZGllbnRJZCwgeDE6IFwiMzdcIiwgeTE6IFwiMTNcIiwgeDI6IFwiMzdcIiwgeTI6IFwiNjFcIiwgZ3JhZGllbnRVbml0czogXCJ1c2VyU3BhY2VPblVzZVwiLCBjaGlsZHJlbjogcmVuZGVyR3JhZGllbnRTdG9wcyhncmFkaWVudENvbG9yKSB9KSB9KV0gfSkpKTtcbn07XG5leHBvcnQgY29uc3QgSWxsdXNBZGRBY2NvdW50ID0gKF9hKSA9PiB7XG4gICAgdmFyIHsgYm9yZGVyQ29sb3IgPSBERUZBVUxUX0JPUkRFUl9DT0xPUiwgZ3JhZGllbnRDb2xvciA9IERFRkFVTFRfR1JBRElFTlRfQ09MT1IgfSA9IF9hLCByZXN0ID0gX19yZXN0KF9hLCBbXCJib3JkZXJDb2xvclwiLCBcImdyYWRpZW50Q29sb3JcIl0pO1xuICAgIGNvbnN0IGNhcmRHcmFkaWVudElkID0gdXNlSWQoKTtcbiAgICBjb25zdCBiYWRnZUdyYWRpZW50SWQgPSB1c2VJZCgpO1xuICAgIHJldHVybiAoX2pzeHMoSWNvbldyYXBwZXIsIE9iamVjdC5hc3NpZ24oeyB2aWV3Qm94OiBcIjAgMCA3NCA3NFwiIH0sIHJlc3QsIHsgY2hpbGRyZW46IFtfanN4KFwicmVjdFwiLCB7IHdpZHRoOiBcIjc0XCIsIGhlaWdodDogXCI3NFwiLCBmaWxsOiBcIndoaXRlXCIgfSksIF9qc3goXCJyZWN0XCIsIHsgeDogXCIyMi41XCIsIHk6IFwiMjZcIiwgd2lkdGg6IFwiMzBcIiwgaGVpZ2h0OiBcIjI4XCIsIGZpbGw6IGB1cmwoIyR7Y2FyZEdyYWRpZW50SWR9KWAgfSksIF9qc3goXCJwYXRoXCIsIHsgZDogXCJNMzcuNSAxNC41QzM1Ljg0MzEgMTQuNSAzNC41IDE1Ljg0MzEgMzQuNSAxNy41QzM0LjUgMTkuMTU2OSAzNS44NDMxIDIwLjUgMzcuNSAyMC41QzM5LjE1NjkgMjAuNSA0MC41IDE5LjE1NjkgNDAuNSAxNy41QzQwLjUgMTUuODQzMSAzOS4xNTY5IDE0LjUgMzcuNSAxNC41WlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcInBhdGhcIiwgeyBmaWxsUnVsZTogXCJldmVub2RkXCIsIGNsaXBSdWxlOiBcImV2ZW5vZGRcIiwgZDogXCJNNjAuNSAyN0w2NC41IDI3QzY2LjcwOTEgMjcgNjguNSAyNS4yMDkxIDY4LjUgMjNMNjguNSAyMC43NDA4QzY4LjUgMTkuMDg4OSA2Ny40ODQ1IDE3LjYwNjkgNjUuOTQ0IDE3LjAxMDZMMzguOTQ0IDYuNTU4OTZDMzguMDE0OSA2LjE5OTMyIDM2Ljk4NTEgNi4xOTkzMiAzNi4wNTYgNi41NTg5Nkw5LjA1NjAyIDE3LjAxMDZDNy41MTU0OSAxNy42MDY5IDYuNSAxOS4wODg5IDYuNSAyMC43NDA4TDYuNSAyM0M2LjUgMjUuMjA5MSA4LjI5MDg2IDI3IDEwLjUgMjdMMTQuNSAyN0wxNC41IDUzTDEzLjUgNTNDMTEuMjkwOSA1MyA5LjUgNTQuNzkwOSA5LjUgNTdMOS41IDU5TDguNSA1OUM2LjI5MDg2IDU5IDQuNSA2MC43OTA5IDQuNSA2M0w0LjUgNjdMNzAuNSA2N0w3MC41IDYzQzcwLjUgNjAuNzkwOSA2OC43MDkxIDU5IDY2LjUgNTlMNjQuNSA1OUw2NC41IDU3QzY0LjUgNTQuNzkwOSA2Mi43MDkxIDUzIDYwLjUgNTNMNjAuNSAyN1pNNjYuNSAxOS4zNzA0TDM3LjUgOC4xNDQ2Mkw4LjUgMTkuMzcwNEw4LjUgMjVMNjYuNSAyNUw2Ni41IDE5LjM3MDRaTTU4LjUgMjdMNTMuNSAyN0w1My41IDUzTDU4LjUgNTNMNTguNSAyN1pNNTEuNSA1M0w1MS41IDI3TDIzLjUgMjdMMjMuNSA1M0w1MS41IDUzWk0xMS41IDU1TDExLjUgNTlMNjIuNSA1OUw2Mi41IDU1TDExLjUgNTVaTTIxLjUgNTNMMTYuNSA1M0wxNi41IDI3TDIxLjUgMjdMMjEuNSA1M1pNNi41IDYxTDYuNSA2NUw2OC41IDY1TDY4LjUgNjFMNi41IDYxWlwiLCBmaWxsOiBib3JkZXJDb2xvciB9KSwgX2pzeChcImNpcmNsZVwiLCB7IGN4OiBcIjU5Ljg4NDhcIiwgY3k6IFwiNTkuMzg0OFwiLCByOiBcIjEzXCIsIHRyYW5zZm9ybTogXCJyb3RhdGUoLTQ1IDU5Ljg4NDggNTkuMzg0OClcIiwgZmlsbDogYHVybCgjJHtiYWRnZUdyYWRpZW50SWR9KWAgfSksIF9qc3goXCJjaXJjbGVcIiwgeyBjeDogXCI1OS44ODQ4XCIsIGN5OiBcIjU5LjM4NDhcIiwgcjogXCIxMlwiLCB0cmFuc2Zvcm06IFwicm90YXRlKC00NSA1OS44ODQ4IDU5LjM4NDgpXCIsIHN0cm9rZTogYm9yZGVyQ29sb3IsIHN0cm9rZVdpZHRoOiBcIjJcIiB9KSwgX2pzeChcInBhdGhcIiwgeyBkOiBcIk02MC44ODI4IDU4LjM4NDhINjYuODg0OFY2MC4zODQ4SDYwLjg4MjhWNjYuMzg0OEg1OC44ODI4VjYwLjM4NDhINTIuODg0OFY1OC4zODQ4SDU4Ljg4MjhWNTIuMzg0OEg2MC44ODI4VjU4LjM4NDhaXCIsIGZpbGw6IGJvcmRlckNvbG9yIH0pLCBfanN4cyhcImRlZnNcIiwgeyBjaGlsZHJlbjogW19qc3goXCJsaW5lYXJHcmFkaWVudFwiLCB7IGlkOiBjYXJkR3JhZGllbnRJZCwgeDE6IFwiMzcuNVwiLCB5MTogXCIyNlwiLCB4MjogXCIzNy41XCIsIHkyOiBcIjU0XCIsIGdyYWRpZW50VW5pdHM6IFwidXNlclNwYWNlT25Vc2VcIiwgY2hpbGRyZW46IHJlbmRlckdyYWRpZW50U3RvcHMoZ3JhZGllbnRDb2xvcikgfSksIF9qc3goXCJsaW5lYXJHcmFkaWVudFwiLCB7IGlkOiBiYWRnZUdyYWRpZW50SWQsIHgxOiBcIjU5Ljg4NDhcIiwgeTE6IFwiNDYuMzg0OFwiLCB4MjogXCI1OS44ODQ4XCIsIHkyOiBcIjcyLjM4NDhcIiwgZ3JhZGllbnRVbml0czogXCJ1c2VyU3BhY2VPblVzZVwiLCBjaGlsZHJlbjogcmVuZGVyR3JhZGllbnRTdG9wcyhncmFkaWVudENvbG9yKSB9KV0gfSldIH0pKSk7XG59OyIsbnVsbF0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==