@kando-env/kando-ui 1.2.135 → 1.2.136
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/Widgets/Map/Map.js +5 -2
- package/lib/Widgets/Map/MapUtils.js +160 -2
- package/lib/Widgets/Map/areas/AreaPolygon.js +4 -2
- package/lib/Widgets/Map/events/Event.js +2 -2
- package/lib/Widgets/Map/events/PointOfEvent.js +4 -1
- package/lib/Widgets/Map/points/PointMarker.js +4 -1
- package/lib/Widgets/Map/points/PointUtils.js +39 -23
- package/lib/assets/map/pin-matash-white.svg +28 -42
- package/lib/assets/map/pin-plant-white.svg +28 -38
- package/lib/assets/map/pin-suction.svg +23 -32
- package/lib/assets/map/pin-water.svg +17 -21
- package/lib/assets/point_icons/Pin Sample observation.svg +13 -0
- package/lib/assets/point_icons/WWTP-icon.svg +21 -25
- package/lib/assets/point_icons/factory-icon.svg +21 -22
- package/lib/assets/point_icons/factory-icon1.svg +23 -0
- package/lib/assets/point_icons/pump-station-icon.svg +16 -14
- package/lib/assets/point_icons/pump-station-icon1.svg +15 -0
- package/lib/assets/point_icons/sampling-icon.svg +10 -8
- package/lib/assets/point_icons/sampling-icon1.svg +9 -0
- package/lib/assets/point_icons/water-no-background.svg +10 -21
- package/lib/macros/getVersion.js +1 -1
- package/package.json +1 -1
|
@@ -45,6 +45,8 @@ var _waterNoBackground = _interopRequireDefault(require("../../../assets/point_i
|
|
|
45
45
|
|
|
46
46
|
var _whitePoint = _interopRequireDefault(require("../../../assets/white-point.png"));
|
|
47
47
|
|
|
48
|
+
var _MapUtils = require("../MapUtils");
|
|
49
|
+
|
|
48
50
|
var isCollectorFocused = function isCollectorFocused(point, event) {
|
|
49
51
|
var _event$observations;
|
|
50
52
|
|
|
@@ -58,13 +60,15 @@ exports.isCollectorFocused = isCollectorFocused;
|
|
|
58
60
|
var createBubblePoint = function createBubblePoint(markerLocation, point, map, hovered) {
|
|
59
61
|
// @ts-ignore
|
|
60
62
|
matchIconToPoint(point) !== null && // @ts-ignore
|
|
61
|
-
matchIconToPoint(point).forEach(function (icon) {
|
|
63
|
+
matchIconToPoint(point).forEach(function (icon, index) {
|
|
62
64
|
var pointCustomIcon = _leaflet.default.marker(markerLocation, {
|
|
63
65
|
icon: icon,
|
|
64
66
|
riseOnHover: false
|
|
65
67
|
}).addTo(map);
|
|
66
68
|
|
|
67
69
|
pointCustomIcon.bindTooltip("".concat(point.group.name, " (").concat(point.group.sector_name, ")"));
|
|
70
|
+
pointCustomIcon['kando_few_layer_icon'] = matchIconToPoint(point).length > 1;
|
|
71
|
+
pointCustomIcon['kando_index_object'] = index;
|
|
68
72
|
pointCustomIcon['kando_object_id'] = point.id;
|
|
69
73
|
pointCustomIcon['kando_object'] = 'Point';
|
|
70
74
|
if (hovered) pointCustomIcon['kando_object'] = 'PointHovered';
|
|
@@ -75,9 +79,10 @@ var createBubblePoint = function createBubblePoint(markerLocation, point, map, h
|
|
|
75
79
|
icon: _leaflet.default.divIcon({
|
|
76
80
|
className: "\n ".concat(point.relatedEventsAmount >= 100 ? 'circle-events-amount circle-events-amount--tridigit' : 'circle-events-amount', " \n ").concat(point.relatedEventsAmount > 2 ? 'alert-color' : '', "\n "),
|
|
77
81
|
html: "<p>".concat(point.relatedEventsAmount, "</p>"),
|
|
78
|
-
iconAnchor:
|
|
82
|
+
iconAnchor: (0, _MapUtils.eventsCountIcon)(map._zoom).iconAnchor
|
|
79
83
|
}),
|
|
80
|
-
riseOnHover: false
|
|
84
|
+
riseOnHover: false,
|
|
85
|
+
opacity: hovered ? 1 : 0
|
|
81
86
|
}).addTo(map);
|
|
82
87
|
|
|
83
88
|
pointCustomIcon['kando_object_id'] = point.id;
|
|
@@ -103,6 +108,7 @@ var createManholePoint = function createManholePoint(markerLocation, point, map,
|
|
|
103
108
|
manholeIcon.bindTooltip("".concat(point.group.name, " (").concat(point.group.sector_name, ")"));
|
|
104
109
|
manholeIcon['kando_object_id'] = point.id;
|
|
105
110
|
manholeIcon['kando_object'] = 'Point';
|
|
111
|
+
manholeIcon['kando_point_type'] = 'Manhole';
|
|
106
112
|
if (hovered) manholeIcon['kando_object'] = 'PointHovered';
|
|
107
113
|
};
|
|
108
114
|
|
|
@@ -153,11 +159,11 @@ var matchIconToPoint = function matchIconToPoint(point, event) {
|
|
|
153
159
|
if (isCollectorFocused(point, event)) {
|
|
154
160
|
return [_leaflet.default.icon({
|
|
155
161
|
iconUrl: _redPinRedShadow.default,
|
|
156
|
-
iconSize: [
|
|
162
|
+
iconSize: [0, 0],
|
|
157
163
|
iconAnchor: [30, 52]
|
|
158
164
|
}), _leaflet.default.icon({
|
|
159
165
|
iconUrl: _waterNoBackground.default,
|
|
160
|
-
iconSize: [
|
|
166
|
+
iconSize: [0, 0],
|
|
161
167
|
iconAnchor: [22, 44],
|
|
162
168
|
popupAnchor: [0, -30]
|
|
163
169
|
})];
|
|
@@ -177,7 +183,7 @@ var standardBackground = function standardBackground() {
|
|
|
177
183
|
var third = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
178
184
|
return _leaflet.default.icon({
|
|
179
185
|
iconUrl: _whitePinBlackShadow.default,
|
|
180
|
-
iconSize: secondary ? [
|
|
186
|
+
iconSize: secondary ? [0, 0] : [0, 0],
|
|
181
187
|
iconAnchor: secondary && third ? [-2, 19] : secondary ? [-2, 44] : [20, 42],
|
|
182
188
|
popupAnchor: [0, -30]
|
|
183
189
|
});
|
|
@@ -186,43 +192,43 @@ var standardBackground = function standardBackground() {
|
|
|
186
192
|
exports.standardBackground = standardBackground;
|
|
187
193
|
var combinedFactoryIcon = [_leaflet.default.icon({
|
|
188
194
|
iconUrl: _yellowCircle.default,
|
|
189
|
-
iconSize: [
|
|
195
|
+
iconSize: [0, 0],
|
|
190
196
|
iconAnchor: [10.7, 33.7],
|
|
191
197
|
popupAnchor: [0, -30]
|
|
192
198
|
}), _leaflet.default.icon({
|
|
193
199
|
iconUrl: _factoryIcon.default,
|
|
194
|
-
iconSize: [
|
|
200
|
+
iconSize: [0, 0],
|
|
195
201
|
iconAnchor: [5, 30],
|
|
196
202
|
popupAnchor: [0, -30]
|
|
197
203
|
})];
|
|
198
204
|
exports.combinedFactoryIcon = combinedFactoryIcon;
|
|
199
205
|
var combinedPumpStationIcon = [_leaflet.default.icon({
|
|
200
206
|
iconUrl: _greenCircle.default,
|
|
201
|
-
iconSize: [
|
|
207
|
+
iconSize: [0, 0],
|
|
202
208
|
iconAnchor: [10.7, 33.7],
|
|
203
209
|
popupAnchor: [0, -30]
|
|
204
210
|
}), _leaflet.default.icon({
|
|
205
211
|
iconUrl: _pumpStationIcon.default,
|
|
206
|
-
iconSize: [
|
|
212
|
+
iconSize: [0, 0],
|
|
207
213
|
iconAnchor: [7, 32],
|
|
208
214
|
popupAnchor: [0, -30]
|
|
209
215
|
})];
|
|
210
216
|
exports.combinedPumpStationIcon = combinedPumpStationIcon;
|
|
211
217
|
var combinedCollectorsIcon = [_leaflet.default.icon({
|
|
212
218
|
iconUrl: _pinWater.default,
|
|
213
|
-
iconSize: [
|
|
219
|
+
iconSize: [0, 0],
|
|
214
220
|
iconAnchor: [25, 50],
|
|
215
221
|
popupAnchor: [0, -30]
|
|
216
222
|
})];
|
|
217
223
|
exports.combinedCollectorsIcon = combinedCollectorsIcon;
|
|
218
224
|
var combinedWWTPIcon = [_leaflet.default.icon({
|
|
219
225
|
iconUrl: _brightBlueCircle.default,
|
|
220
|
-
iconSize: [
|
|
226
|
+
iconSize: [0, 0],
|
|
221
227
|
iconAnchor: [10.7, 33.7],
|
|
222
228
|
popupAnchor: [0, -30]
|
|
223
229
|
}), _leaflet.default.icon({
|
|
224
230
|
iconUrl: _WWTPIcon.default,
|
|
225
|
-
iconSize: [
|
|
231
|
+
iconSize: [0, 0],
|
|
226
232
|
iconAnchor: [8, 31],
|
|
227
233
|
popupAnchor: [0, -30]
|
|
228
234
|
})];
|
|
@@ -231,7 +237,7 @@ exports.combinedWWTPIcon = combinedWWTPIcon;
|
|
|
231
237
|
var selectedBackground = function selectedBackground() {
|
|
232
238
|
return _leaflet.default.icon({
|
|
233
239
|
iconUrl: _redPinRedShadow.default,
|
|
234
|
-
iconSize: [
|
|
240
|
+
iconSize: [0, 0],
|
|
235
241
|
iconAnchor: [32, 54],
|
|
236
242
|
popupAnchor: [0, -30]
|
|
237
243
|
});
|
|
@@ -242,7 +248,7 @@ exports.selectedBackground = selectedBackground;
|
|
|
242
248
|
var belongsToSourceBackground = function belongsToSourceBackground() {
|
|
243
249
|
return _leaflet.default.icon({
|
|
244
250
|
iconUrl: _whitePinRedShadow.default,
|
|
245
|
-
iconSize: [
|
|
251
|
+
iconSize: [0, 0],
|
|
246
252
|
iconAnchor: [32, 54],
|
|
247
253
|
popupAnchor: [0, -30]
|
|
248
254
|
});
|
|
@@ -278,31 +284,37 @@ var createSamplingIconPoint = function createSamplingIconPoint(markerLocation, s
|
|
|
278
284
|
// Icon Anchor: [(-right)(+left), (-down)(+up)]
|
|
279
285
|
var samplingIcon = [_leaflet.default.icon({
|
|
280
286
|
iconUrl: _blueCircle.default,
|
|
281
|
-
iconSize: secondaryIcon ? [
|
|
287
|
+
iconSize: secondaryIcon ? [0, 0] : [0, 0],
|
|
282
288
|
iconAnchor: secondaryIcon ? [-7, 15] : [10.7, 33.7],
|
|
283
289
|
popupAnchor: [0, -30]
|
|
284
290
|
}), _leaflet.default.icon({
|
|
285
291
|
iconUrl: _samplingIcon.default,
|
|
286
|
-
iconSize: secondaryIcon ? [
|
|
292
|
+
iconSize: secondaryIcon ? [0, 0] : [0, 0],
|
|
287
293
|
iconAnchor: secondaryIcon ? [-8, 13] : [5, 30],
|
|
288
294
|
popupAnchor: [0, -30]
|
|
289
295
|
})];
|
|
296
|
+
var thirdIcon = false;
|
|
290
297
|
|
|
291
298
|
if (markerBelongsToSelectedSource(event, point) && !secondaryIcon) {
|
|
292
299
|
samplingIcon.unshift(selectedBackground());
|
|
293
300
|
} else if (markerBelongsToSource(event, point) && !secondaryIcon) {
|
|
294
301
|
samplingIcon.unshift(belongsToSourceBackground());
|
|
295
302
|
} else {
|
|
296
|
-
|
|
303
|
+
thirdIcon = true;
|
|
304
|
+
samplingIcon.unshift(standardBackground(secondaryIcon, thirdIcon));
|
|
297
305
|
}
|
|
298
306
|
|
|
299
|
-
samplingIcon.forEach(function (icon) {
|
|
307
|
+
samplingIcon.forEach(function (icon, index) {
|
|
300
308
|
var pointCustomIcon = _leaflet.default.marker(markerLocation, {
|
|
301
309
|
icon: icon,
|
|
302
310
|
riseOnHover: false
|
|
303
311
|
}).addTo(map);
|
|
304
312
|
|
|
305
313
|
pointCustomIcon.bindTooltip("".concat(point.group.name, " (").concat(point.group.sector_name, ")"));
|
|
314
|
+
pointCustomIcon['kando_index_object'] = index;
|
|
315
|
+
pointCustomIcon['kando_few_layer_icon'] = true;
|
|
316
|
+
pointCustomIcon['kando_secondary'] = thirdIcon ? false : secondaryIcon;
|
|
317
|
+
pointCustomIcon['kando_third'] = thirdIcon;
|
|
306
318
|
pointCustomIcon['kando_object_id'] = point.id;
|
|
307
319
|
pointCustomIcon['kando_object'] = 'Sampling';
|
|
308
320
|
if (hovered) pointCustomIcon['kando_object'] = 'SamplingHovered';
|
|
@@ -316,12 +328,12 @@ var createObservationIconPoint = function createObservationIconPoint(markerLocat
|
|
|
316
328
|
// Icon Anchor: [(-right)(+left), (-down)(+up)]
|
|
317
329
|
var observationIcon = [_leaflet.default.icon({
|
|
318
330
|
iconUrl: _pinkCircle.default,
|
|
319
|
-
iconSize: secondaryIcon ? [
|
|
331
|
+
iconSize: secondaryIcon ? [0, 0] : [0, 0],
|
|
320
332
|
iconAnchor: secondaryIcon ? [-7, 40] : [10.7, 33.7],
|
|
321
333
|
popupAnchor: [0, -30]
|
|
322
334
|
}), _leaflet.default.icon({
|
|
323
335
|
iconUrl: _observationIcon.default,
|
|
324
|
-
iconSize: secondaryIcon ? [
|
|
336
|
+
iconSize: secondaryIcon ? [0, 0] : [0, 0],
|
|
325
337
|
iconAnchor: secondaryIcon ? [-8, 38] : [5, 30],
|
|
326
338
|
popupAnchor: [0, -30]
|
|
327
339
|
})];
|
|
@@ -334,13 +346,17 @@ var createObservationIconPoint = function createObservationIconPoint(markerLocat
|
|
|
334
346
|
observationIcon.unshift(standardBackground(secondaryIcon));
|
|
335
347
|
}
|
|
336
348
|
|
|
337
|
-
observationIcon.forEach(function (icon) {
|
|
349
|
+
observationIcon.forEach(function (icon, index) {
|
|
338
350
|
var pointCustomIcon = _leaflet.default.marker(markerLocation, {
|
|
339
351
|
icon: icon,
|
|
340
352
|
riseOnHover: false
|
|
341
353
|
}).addTo(map);
|
|
342
354
|
|
|
343
355
|
pointCustomIcon.bindTooltip("".concat(point.group.name, " (").concat(point.group.sector_name, ")"));
|
|
356
|
+
pointCustomIcon['kando_index_object'] = index;
|
|
357
|
+
pointCustomIcon['kando_few_layer_icon'] = true;
|
|
358
|
+
pointCustomIcon['kando_secondary'] = secondaryIcon;
|
|
359
|
+
pointCustomIcon['kando_third'] = false;
|
|
344
360
|
pointCustomIcon['kando_object_id'] = point.id;
|
|
345
361
|
pointCustomIcon['kando_object'] = 'Observation';
|
|
346
362
|
if (hovered) pointCustomIcon['kando_object'] = 'ObservationHovered';
|
|
@@ -370,4 +386,4 @@ var popupContent = function popupContent(obs, point) {
|
|
|
370
386
|
};
|
|
371
387
|
|
|
372
388
|
exports.popupContent = popupContent;
|
|
373
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9wb2ludHMvUG9pbnRVdGlscy50cyJdLCJuYW1lcyI6WyJpc0NvbGxlY3RvckZvY3VzZWQiLCJwb2ludCIsImV2ZW50Iiwib2JzZXJ2YXRpb25zIiwibGVuZ3RoIiwiaWQiLCJwb2ludF9pZCIsImNyZWF0ZUJ1YmJsZVBvaW50IiwibWFya2VyTG9jYXRpb24iLCJtYXAiLCJob3ZlcmVkIiwibWF0Y2hJY29uVG9Qb2ludCIsImZvckVhY2giLCJpY29uIiwicG9pbnRDdXN0b21JY29uIiwiTCIsIm1hcmtlciIsInJpc2VPbkhvdmVyIiwiYWRkVG8iLCJiaW5kVG9vbHRpcCIsImdyb3VwIiwibmFtZSIsInNlY3Rvcl9uYW1lIiwicmVsYXRlZEV2ZW50c0Ftb3VudCIsImRpdkljb24iLCJjbGFzc05hbWUiLCJodG1sIiwiaWNvbkFuY2hvciIsImNyZWF0ZU1hbmhvbGVQb2ludCIsInBvaW50SWNvbiIsImljb25VcmwiLCJ3aGl0ZVBvaW50IiwiaWNvblNpemUiLCJtYW5ob2xlSWNvbiIsInR5cGUiLCJjb21iaW5lZEZhY3RvcnlJY29uIiwibWFya2VyQmVsb25nc1RvU2VsZWN0ZWRTb3VyY2UiLCJ1bnNoaWZ0Iiwic2VsZWN0ZWRCYWNrZ3JvdW5kIiwibWFya2VyQmVsb25nc1RvU291cmNlIiwiYmVsb25nc1RvU291cmNlQmFja2dyb3VuZCIsInN0YW5kYXJkQmFja2dyb3VuZCIsImNvbWJpbmVkUHVtcFN0YXRpb25JY29uIiwiY29tYmluZWRXV1RQSWNvbiIsInJlZFBpblJlZFNoYWRvdyIsIndhdGVySWNvbk5vQmFja2dyb3VuZCIsInBvcHVwQW5jaG9yIiwiY29tYmluZWRDb2xsZWN0b3JzSWNvbiIsInNlY29uZGFyeSIsInRoaXJkIiwid2hpdGVQaW5CbGFja1NoYWRvdyIsInllbGxvd0NpcmNsZVVSTCIsInBsYW50SWNvblVSTCIsImdyZWVuQ2lyY2xlVVJMIiwicHVtcFN0YXRpb25JY29uVVJMIiwiY29sbGVjdG9ySWNvbiIsImJyaWdodEJsdWVDaXJjbGVVUkwiLCJXV1RQSWNvblVSTCIsIndoaXRlUGluUmVkU2hhZG93Iiwic291cmNlIiwidW5kZWZpbmVkIiwic291cmNlcyIsImZpbHRlciIsInNlbGVjdGVkX3NvdXJjZSIsImNyZWF0ZVNhbXBsaW5nSWNvblBvaW50Iiwic2Vjb25kYXJ5SWNvbiIsInNhbXBsaW5nSWNvbiIsImJsdWVDaXJjbGVVUkwiLCJzYW1wbGluZ0ljb25VUkwiLCJjcmVhdGVPYnNlcnZhdGlvbkljb25Qb2ludCIsIm9ic2VydmF0aW9uSWNvbiIsInBpbmtDaXJjbGVVUkwiLCJvYnNlcnZhdGlvbkljb25VUkwiLCJjcmVhdGVTYW1wbGluZ0ljb25zIiwic2FtcGxlZFBvaW50SWRzIiwic2FtcGxpbmdzIiwicyIsImluY2x1ZGVzIiwicG9wdXBDb250ZW50Iiwib2JzIiwiR3JhcGhJY29uIiwiaTE4biIsInQiLCJzZXZlcml0eSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFDQTs7QUFDQTs7Ozs7Ozs7OztBQU9BOztBQUNBOztBQUNBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFTQTs7QUFFTyxJQUFNQSxrQkFBa0IsR0FBRyxTQUFyQkEsa0JBQXFCLENBQUNDLEtBQUQsRUFBZ0JDLEtBQWhCLEVBQWtDO0FBQUE7O0FBQ2xFLFNBQ0UsQ0FBQUEsS0FBSyxTQUFMLElBQUFBLEtBQUssV0FBTCxtQ0FBQUEsS0FBSyxDQUFFQyxZQUFQLDRFQUFxQkMsTUFBckIsTUFBZ0MsQ0FBaEMsSUFDQUgsS0FBSyxDQUFDSSxFQUFOLEtBQWFILEtBQUssQ0FBQ0MsWUFBTixDQUFtQixDQUFuQixFQUFzQkcsUUFGckM7QUFJRCxDQUxNLEMsQ0FPUDtBQUNBOzs7OztBQUNPLElBQU1DLGlCQUFpQixHQUFHLFNBQXBCQSxpQkFBb0IsQ0FDL0JDLGNBRCtCLEVBRS9CUCxLQUYrQixFQUcvQlEsR0FIK0IsRUFJL0JDLE9BSitCLEVBSzVCO0FBQ0g7QUFDQUMsRUFBQUEsZ0JBQWdCLENBQUNWLEtBQUQsQ0FB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K0hBRTREOUUsS0FBSyxDQUFDSSxFQUZsRSxpREFHNEIyRSxrQkFINUIsd0pBTTBEL0UsS0FBSyxDQUFDbUIsS0FBTixDQUFZQyxJQU50RTtBQWFELEdBZEQsTUFjTztBQUNMLCtIQUU0RDBELEdBQUcsQ0FBQzFFLEVBRmhFLGlEQUc0QjJFLGtCQUg1Qix3SkFPa0IvRSxLQUFLLENBQUNtQixLQUFOLENBQVlDLElBUDlCLG9KQVUyRDRELGNBQUtDLENBQUwsNEJBVjNELHlEQWNzQiw4QkFBOEJILEdBQUcsQ0FBQ0ksUUFkeEQsdUhBaUI4QkYsY0FBS0MsQ0FBTCxzQ0FDOEJILEdBQUcsQ0FBQ0ksUUFEbEMsRUFqQjlCLG1XQTRCK0RGLGNBQUtDLENBQUwsOEJBNUIvRCxnT0FrQytERCxjQUFLQyxDQUFMLDZCQWxDL0Q7QUEyQ0Q7QUFDRixDQTVETSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBHcmFwaEljb24gZnJvbSAnLi4vLi4vLi4vYXNzZXRzL2xpbmUtY2hhcnQuc3ZnJztcbmltcG9ydCBMLCB7IExhdExuZ1R1cGxlIH0gZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgaTE4biBmcm9tICcuLi8uLi8uLi91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9wb2ludHMvbW9kZWxzL0lQb2ludCc7XG5pbXBvcnQgYmx1ZUNpcmNsZVVSTCBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvYmx1ZS1jaXJjbGUuc3ZnJztcbmltcG9ydCBzYW1wbGluZ0ljb25VUkwgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3BvaW50X2ljb25zL3NhbXBsaW5nLWljb24uc3ZnJztcbmltcG9ydCBwaW5rQ2lyY2xlVVJMIGZyb20gJy4uLy4uLy4uL2Fzc2V0cy9wb2ludF9pY29ucy9waW5rLWNpcmNsZS5zdmcnO1xuaW1wb3J0IG9ic2VydmF0aW9uSWNvblVSTCBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvb2JzZXJ2YXRpb24taWNvbi5zdmcnO1xuaW1wb3J0IHsgSUV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvZXZlbnRzL21vZGVscy9JRXZlbnQnO1xuaW1wb3J0IHJlZFBpblJlZFNoYWRvdyBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvcmVkLXBpbi1yZWQtc2hhZG93LnBuZyc7XG5pbXBvcnQgd2hpdGVQaW5SZWRTaGFkb3cgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3BvaW50X2ljb25zL3doaXRlLXBpbi1yZWQtc2hhZG93LnBuZyc7XG5pbXBvcnQgd2hpdGVQaW5CbGFja1NoYWRvdyBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvd2hpdGUtcGluLWJsYWNrLXNoYWRvdy5wbmcnO1xuaW1wb3J0IHllbGxvd0NpcmNsZVVSTCBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMveWVsbG93LWNpcmNsZS5zdmcnO1xuaW1wb3J0IHBsYW50SWNvblVSTCBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvZmFjdG9yeS1pY29uLnN2Zyc7XG5pbXBvcnQgZ3JlZW5DaXJjbGVVUkwgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3BvaW50X2ljb25zL2dyZWVuLWNpcmNsZS5zdmcnO1xuaW1wb3J0IHB1bXBTdGF0aW9uSWNvblVSTCBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvcHVtcC1zdGF0aW9uLWljb24uc3ZnJztcbmltcG9ydCBjb2xsZWN0b3JJY29uIGZyb20gJy4uLy4uLy4uL2Fzc2V0cy9tYXAvcGluLXdhdGVyLnN2Zyc7XG5pbXBvcnQgYnJpZ2h0Qmx1ZUNpcmNsZVVSTCBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvYnJpZ2h0LWJsdWUtY2lyY2xlLnN2Zyc7XG5pbXBvcnQgV1dUUEljb25VUkwgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3BvaW50X2ljb25zL1dXVFAtaWNvbi5zdmcnO1xuaW1wb3J0IHdhdGVySWNvbk5vQmFja2dyb3VuZCBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvd2F0ZXItbm8tYmFja2dyb3VuZC5zdmcnO1xuaW1wb3J0IHdoaXRlUG9pbnQgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3doaXRlLXBvaW50LnBuZyc7XG5cbmV4cG9ydCBjb25zdCBpc0NvbGxlY3RvckZvY3VzZWQgPSAocG9pbnQ6IElQb2ludCwgZXZlbnQ6IElFdmVudCkgPT4ge1xuICByZXR1cm4gKFxuICAgIGV2ZW50Py5vYnNlcnZhdGlvbnM/Lmxlbmd0aCA9PT0gMSAmJlxuICAgIHBvaW50LmlkID09PSBldmVudC5vYnNlcnZhdGlvbnNbMF0ucG9pbnRfaWRcbiAgKTtcbn07XG5cbi8vIGljb25TaXplOiBbd2lkdGgsIGhlaWdodF0sXG4vLyBJY29uQW5jaG9yOiBbKC1yaWdodCkoK2xlZnQpLCAoLWRvd24pKCt1cCldXG5leHBvcnQgY29uc3QgY3JlYXRlQnViYmxlUG9pbnQgPSAoXG4gIG1hcmtlckxvY2F0aW9uOiBMYXRMbmdUdXBsZSxcbiAgcG9pbnQ6IElQb2ludCxcbiAgbWFwLFxuICBob3ZlcmVkPyxcbikgPT4ge1xuICAvLyBAdHMtaWdub3JlXG4gIG1hdGNoSWNvblRvUG9pbnQocG9pbnQpICE9PSBudWxsICYmXG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIG1hdGNoSWNvblRvUG9pbnQocG9pbnQpLmZvckVhY2goKGljb246IGFueSkgPT4ge1xuICAgICAgbGV0IHBvaW50Q3VzdG9tSWNvbjogYW55ID0gTC5tYXJrZXIobWFya2VyTG9jYXRpb24sIHtcbiAgICAgICAgaWNvbjogaWNvbixcbiAgICAgICAgcmlzZU9uSG92ZXI6IGZhbHNlLFxuICAgICAgfSkuYWRkVG8obWFwKTtcbiAgICAgIHBvaW50Q3VzdG9tSWNvbi5iaW5kVG9vbHRpcChcbiAgICAgICAgYCR7cG9pbnQuZ3JvdXAubmFtZX0gKCR7cG9pbnQuZ3JvdXAuc2VjdG9yX25hbWV9KWAsXG4gICAgICApO1xuICAgICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3RfaWQnXSA9IHBvaW50LmlkO1xuICAgICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3QnXSA9ICdQb2ludCc7XG4gICAgICBpZiAoaG92ZXJlZCkgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3QnXSA9ICdQb2ludEhvdmVyZWQnO1xuICAgIH0pO1xuXG4gIGlmIChwb2ludC5yZWxhdGVkRXZlbnRzQW1vdW50KSB7XG4gICAgbGV0IHBvaW50Q3VzdG9tSWNvbiA9IEwubWFya2VyKG1hcmtlckxvY2F0aW9uLCB7XG4gICAgICBpY29uOiBMLmRpdkljb24oe1xuICAgICAgICBjbGFzc05hbWU6IGBcbiAgICAgICAgICAke1xuICAgICAgICAgICAgcG9pbnQucmVsYXRlZEV2ZW50c0Ftb3VudCA+PSAxMDBcbiAgICAgICAgICAgICAgPyAnY2lyY2xlLWV2ZW50cy1hbW91bnQgY2lyY2xlLWV2ZW50cy1hbW91bnQtLXRyaWRpZ2l0J1xuICAgICAgICAgICAgICA6ICdjaXJjbGUtZXZlbnRzLWFtb3VudCdcbiAgICAgICAgICB9IFxuICAgICAgICAgICR7cG9pbnQucmVsYXRlZEV2ZW50c0Ftb3VudCA+IDIgPyAnYWxlcnQtY29sb3InIDogJyd9XG4gICAgICAgICAgICBgLFxuICAgICAgICBodG1sOiBgPHA+JHtwb2ludC5yZWxhdGVkRXZlbnRzQW1vdW50fTwvcD5gLFxuICAgICAgICBpY29uQW5jaG9yOiBbLTUsIDQyXSxcbiAgICAgIH0pLFxuICAgICAgcmlzZU9uSG92ZXI6IGZhbHNlLFxuICAgIH0pLmFkZFRvKG1hcCk7XG5cbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX29iamVjdF9pZCddID0gcG9pbnQuaWQ7XG4gICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3QnXSA9ICdJY29uTnVtYmVyJztcbiAgICBpZiAoaG92ZXJlZCkgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3QnXSA9ICdJY29uTnVtYmVySG92ZXJlZCc7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVNYW5ob2xlUG9pbnQgPSAoXG4gIG1hcmtlckxvY2F0aW9uOiBMYXRMbmdUdXBsZSxcbiAgcG9pbnQ6IElQb2ludCxcbiAgbWFwLFxuICBob3ZlcmVkPyxcbikgPT4ge1xuICBsZXQgcG9pbnRJY29uID0gTC5pY29uKHtcbiAgICBpY29uVXJsOiB3aGl0ZVBvaW50LFxuICAgIGljb25TaXplOiBbOSwgOV0sXG4gICAgaWNvbkFuY2hvcjogWzQuNSwgNC41XSxcbiAgfSk7XG4gIGxldCBtYW5ob2xlSWNvbjogYW55ID0gTC5tYXJrZXIobWFya2VyTG9jYXRpb24sIHtcbiAgICBpY29uOiBwb2ludEljb24sXG4gICAgcmlzZU9uSG92ZXI6IHRydWUsXG4gIH0pLmFkZFRvKG1hcCk7XG4gIG1hbmhvbGVJY29uLmJpbmRUb29sdGlwKGAke3BvaW50Lmdyb3VwLm5hbWV9ICgke3BvaW50Lmdyb3VwLnNlY3Rvcl9uYW1lfSlgKTtcbiAgbWFuaG9sZUljb25bJ2thbmRvX29iamVjdF9pZCddID0gcG9pbnQuaWQ7XG4gIG1hbmhvbGVJY29uWydrYW5kb19vYmplY3QnXSA9ICdQb2ludCc7XG4gIGlmIChob3ZlcmVkKSBtYW5ob2xlSWNvblsna2FuZG9fb2JqZWN0J10gPSAnUG9pbnRIb3ZlcmVkJztcbn07XG5cbmV4cG9ydCBjb25zdCBtYXRjaEljb25Ub1BvaW50ID0gKHBvaW50OiBJUG9pbnQsIGV2ZW50OiBJRXZlbnQpID0+IHtcbiAgc3dpdGNoIChwb2ludC5ncm91cC50eXBlKSB7XG4gICAgY2FzZSAnR3JvdXBzOjpGYWN0b3J5JzpcbiAgICAgIGlmIChjb21iaW5lZEZhY3RvcnlJY29uLmxlbmd0aCA9PT0gMikge1xuICAgICAgICBpZiAobWFya2VyQmVsb25nc1RvU2VsZWN0ZWRTb3VyY2UoZXZlbnQsIHBvaW50KSkge1xuICAgICAgICAgIGNvbWJpbmVkRmFjdG9yeUljb24udW5zaGlmdChzZWxlY3RlZEJhY2tncm91bmQoKSk7XG4gICAgICAgIH0gZWxzZSBpZiAobWFya2VyQmVsb25nc1RvU291cmNlKGV2ZW50LCBwb2ludCkpIHtcbiAgICAgICAgICBjb21iaW5lZEZhY3RvcnlJY29uLnVuc2hpZnQoYmVsb25nc1RvU291cmNlQmFja2dyb3VuZCgpKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb21iaW5lZEZhY3RvcnlJY29uLnVuc2hpZnQoc3RhbmRhcmRCYWNrZ3JvdW5kKCkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjb21iaW5lZEZhY3RvcnlJY29uO1xuICAgIGNhc2UgJ0dyb3Vwczo6UHVtcFN0YXRpb24nOlxuICAgICAgaWYgKGNvbWJpbmVkUHVtcFN0YXRpb25JY29uLmxlbmd0aCA9PT0gMikge1xuICAgICAgICBpZiAobWFya2VyQmVsb25nc1RvU2VsZWN0ZWRTb3VyY2UoZXZlbnQsIHBvaW50KSkge1xuICAgICAgICAgIGNvbWJpbmVkUHVtcFN0YXRpb25JY29uLnVuc2hpZnQoc2VsZWN0ZWRCYWNrZ3JvdW5kKCkpO1xuICAgICAgICB9IGVsc2UgaWYgKG1hcmtlckJlbG9uZ3NUb1NvdXJjZShldmVudCwgcG9pbnQpKSB7XG4gICAgICAgICAgY29tYmluZWRQdW1wU3RhdGlvbkljb24udW5zaGlmdChiZWxvbmdzVG9Tb3VyY2VCYWNrZ3JvdW5kKCkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbWJpbmVkUHVtcFN0YXRpb25JY29uLnVuc2hpZnQoc3RhbmRhcmRCYWNrZ3JvdW5kKCkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBjb21iaW5lZFB1bXBTdGF0aW9uSWNvbjtcbiAgICBjYXNlICdHcm91cHM6Oldhc3Rld2F0ZXJUcmVhdG1lbnRQbGFudCc6XG4gICAgICBpZiAoY29tYmluZWRXV1RQSWNvbi5sZW5ndGggPT09IDIpIHtcbiAgICAgICAgaWYgKG1hcmtlckJlbG9uZ3NUb1NlbGVjdGVkU291cmNlKGV2ZW50LCBwb2ludCkpIHtcbiAgICAgICAgICBjb21iaW5lZFdXVFBJY29uLnVuc2hpZnQoc2VsZWN0ZWRCYWNrZ3JvdW5kKCkpO1xuICAgICAgICB9IGVsc2UgaWYgKG1hcmtlckJlbG9uZ3NUb1NvdXJjZShldmVudCwgcG9pbnQpKSB7XG4gICAgICAgICAgY29tYmluZWRXV1RQSWNvbi51bnNoaWZ0KGJlbG9uZ3NUb1NvdXJjZUJhY2tncm91bmQoKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29tYmluZWRXV1RQSWNvbi51bnNoaWZ0KHN0YW5kYXJkQmFja2dyb3VuZCgpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gY29tYmluZWRXV1RQSWNvbjtcblxuICAgIGNhc2UgJ0dyb3Vwczo6Q29sbGVjdG9ycyc6XG4gICAgICBpZiAoaXNDb2xsZWN0b3JGb2N1c2VkKHBvaW50LCBldmVudCkpIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICBMLmljb24oe1xuICAgICAgICAgICAgaWNvblVybDogcmVkUGluUmVkU2hhZG93LFxuICAgICAgICAgICAgaWNvblNpemU6IFs2MiwgNjJdLFxuICAgICAgICAgICAgaWNvbkFuY2hvcjogWzMwLCA1Ml0sXG4gICAgICAgICAgfSksXG5cbiAgICAgICAgICBMLmljb24oe1xuICAgICAgICAgICAgaWNvblVybDogd2F0ZXJJY29uTm9CYWNrZ3JvdW5kLFxuICAgICAgICAgICAgaWNvblNpemU6IFs0NiwgNDZdLFxuXG4gICAgICAgICAgICBpY29uQW5jaG9yOiBbMjIsIDQ0XSxcbiAgICAgICAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgXTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNvbWJpbmVkQ29sbGVjdG9yc0ljb247XG5cbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIG51bGw7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBzdGFuZGFyZEJhY2tncm91bmQgPSAoXG4gIHNlY29uZGFyeTogYm9vbGVhbiA9IGZhbHNlLFxuICB0aGlyZDogYm9vbGVhbiA9IGZhbHNlLFxuKSA9PiB7XG4gIHJldHVybiBMLmljb24oe1xuICAgIGljb25Vcmw6IHdoaXRlUGluQmxhY2tTaGFkb3csXG4gICAgaWNvblNpemU6IHNlY29uZGFyeSA/IFsyMCwgMjBdIDogWzQzLCA0Nl0sXG4gICAgaWNvbkFuY2hvcjogc2Vjb25kYXJ5ICYmIHRoaXJkID8gWy0yLCAxOV0gOiBzZWNvbmRhcnkgPyBbLTIsIDQ0XSA6IFsyMCwgNDJdLFxuICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgY29tYmluZWRGYWN0b3J5SWNvbiA9IFtcbiAgTC5pY29uKHtcbiAgICBpY29uVXJsOiB5ZWxsb3dDaXJjbGVVUkwsXG4gICAgaWNvblNpemU6IFsyNSwgMjRdLFxuICAgIGljb25BbmNob3I6IFsxMC43LCAzMy43XSxcbiAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gIH0pLFxuICBMLmljb24oe1xuICAgIGljb25Vcmw6IHBsYW50SWNvblVSTCxcbiAgICBpY29uU2l6ZTogWzE1LCAxNV0sXG4gICAgaWNvbkFuY2hvcjogWzUsIDMwXSxcbiAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gIH0pLFxuXTtcblxuZXhwb3J0IGNvbnN0IGNvbWJpbmVkUHVtcFN0YXRpb25JY29uID0gW1xuICBMLmljb24oe1xuICAgIGljb25Vcmw6IGdyZWVuQ2lyY2xlVVJMLFxuICAgIGljb25TaXplOiBbMjUsIDI0XSxcbiAgICBpY29uQW5jaG9yOiBbMTAuNywgMzMuN10sXG4gICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICB9KSxcbiAgTC5pY29uKHtcbiAgICBpY29uVXJsOiBwdW1wU3RhdGlvbkljb25VUkwsXG4gICAgaWNvblNpemU6IFsyMCwgMjBdLFxuICAgIGljb25BbmNob3I6IFs3LCAzMl0sXG4gICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICB9KSxcbl07XG5cbmV4cG9ydCBjb25zdCBjb21iaW5lZENvbGxlY3RvcnNJY29uID0gW1xuICBMLmljb24oe1xuICAgIGljb25Vcmw6IGNvbGxlY3Rvckljb24sXG4gICAgaWNvblNpemU6IFs0NSwgNDVdLFxuXG4gICAgaWNvbkFuY2hvcjogWzI1LCA1MF0sXG4gICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICB9KSxcbl07XG5cbmV4cG9ydCBjb25zdCBjb21iaW5lZFdXVFBJY29uID0gW1xuICBMLmljb24oe1xuICAgIGljb25Vcmw6IGJyaWdodEJsdWVDaXJjbGVVUkwsXG4gICAgaWNvblNpemU6IFsyNSwgMjVdLFxuICAgIGljb25BbmNob3I6IFsxMC43LCAzMy43XSxcbiAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gIH0pLFxuICBMLmljb24oe1xuICAgIGljb25Vcmw6IFdXVFBJY29uVVJMLFxuICAgIGljb25TaXplOiBbMjAsIDIwXSxcbiAgICBpY29uQW5jaG9yOiBbOCwgMzFdLFxuICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgfSksXG5dO1xuXG5leHBvcnQgY29uc3Qgc2VsZWN0ZWRCYWNrZ3JvdW5kID0gKCkgPT4ge1xuICByZXR1cm4gTC5pY29uKHtcbiAgICBpY29uVXJsOiByZWRQaW5SZWRTaGFkb3csXG4gICAgaWNvblNpemU6IFs2NywgNzBdLFxuICAgIGljb25BbmNob3I6IFszMiwgNTRdLFxuICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgYmVsb25nc1RvU291cmNlQmFja2dyb3VuZCA9ICgpID0+IHtcbiAgcmV0dXJuIEwuaWNvbih7XG4gICAgaWNvblVybDogd2hpdGVQaW5SZWRTaGFkb3csXG4gICAgaWNvblNpemU6IFs2NywgNzBdLFxuICAgIGljb25BbmNob3I6IFszMiwgNTRdLFxuICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgbWFya2VyQmVsb25nc1RvU2VsZWN0ZWRTb3VyY2UgPSAoZXZlbnQ6IElFdmVudCwgcG9pbnQ6IElQb2ludCkgPT4ge1xuICBsZXQgc291cmNlO1xuXG4gIGlmIChldmVudCAhPT0gbnVsbCAmJiBldmVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgc291cmNlID0gZXZlbnQuc291cmNlcy5maWx0ZXIoKHNvdXJjZSkgPT4gc291cmNlLnBvaW50X2lkID09PSBwb2ludC5pZClbMF07XG4gIH1cblxuICByZXR1cm4gZXZlbnQgIT09IG51bGwgJiYgc291cmNlICYmIGV2ZW50LnNlbGVjdGVkX3NvdXJjZSA9PT0gc291cmNlLnBvaW50X2lkO1xufTtcblxuZXhwb3J0IGNvbnN0IG1hcmtlckJlbG9uZ3NUb1NvdXJjZSA9IChldmVudDogSUV2ZW50LCBwb2ludDogSVBvaW50KSA9PiB7XG4gIGlmIChldmVudCA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gIHJldHVybiAoXG4gICAgZXZlbnQgIT09IG51bGwgJiZcbiAgICBldmVudC5zb3VyY2VzLmZpbHRlcigoc291cmNlKSA9PiBzb3VyY2UucG9pbnRfaWQgPT09IHBvaW50LmlkKVswXVxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZVNhbXBsaW5nSWNvblBvaW50ID0gKFxuICBtYXJrZXJMb2NhdGlvbjogTGF0TG5nVHVwbGUsXG4gIHNlY29uZGFyeUljb246IGJvb2xlYW4sXG4gIG1hcCxcbiAgcG9pbnQ6IElQb2ludCxcbiAgZXZlbnQ6IElFdmVudCxcbiAgaG92ZXJlZD8sXG4pID0+IHtcbiAgLy8gaWNvblNpemU6IFt3aWR0aCwgaGVpZ2h0XSxcbiAgLy8gSWNvbiBBbmNob3I6IFsoLXJpZ2h0KSgrbGVmdCksICgtZG93bikoK3VwKV1cbiAgbGV0IHNhbXBsaW5nSWNvbiA9IFtcbiAgICBMLmljb24oe1xuICAgICAgaWNvblVybDogYmx1ZUNpcmNsZVVSTCxcbiAgICAgIGljb25TaXplOiBzZWNvbmRhcnlJY29uID8gWzEwLCAxMF0gOiBbMjUsIDI0XSxcbiAgICAgIGljb25BbmNob3I6IHNlY29uZGFyeUljb24gPyBbLTcsIDE1XSA6IFsxMC43LCAzMy43XSxcbiAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgICB9KSxcbiAgICBMLmljb24oe1xuICAgICAgaWNvblVybDogc2FtcGxpbmdJY29uVVJMLFxuICAgICAgaWNvblNpemU6IHNlY29uZGFyeUljb24gPyBbNywgN10gOiBbMTMsIDE1XSxcbiAgICAgIGljb25BbmNob3I6IHNlY29uZGFyeUljb24gPyBbLTgsIDEzXSA6IFs1LCAzMF0sXG4gICAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gICAgfSksXG4gIF07XG5cbiAgaWYgKG1hcmtlckJlbG9uZ3NUb1NlbGVjdGVkU291cmNlKGV2ZW50LCBwb2ludCkgJiYgIXNlY29uZGFyeUljb24pIHtcbiAgICBzYW1wbGluZ0ljb24udW5zaGlmdChzZWxlY3RlZEJhY2tncm91bmQoKSk7XG4gIH0gZWxzZSBpZiAobWFya2VyQmVsb25nc1RvU291cmNlKGV2ZW50LCBwb2ludCkgJiYgIXNlY29uZGFyeUljb24pIHtcbiAgICBzYW1wbGluZ0ljb24udW5zaGlmdChiZWxvbmdzVG9Tb3VyY2VCYWNrZ3JvdW5kKCkpO1xuICB9IGVsc2Uge1xuICAgIHNhbXBsaW5nSWNvbi51bnNoaWZ0KHN0YW5kYXJkQmFja2dyb3VuZChzZWNvbmRhcnlJY29uLCB0cnVlKSk7XG4gIH1cblxuICBzYW1wbGluZ0ljb24uZm9yRWFjaCgoaWNvbikgPT4ge1xuICAgIGxldCBwb2ludEN1c3RvbUljb246IGFueSA9IEwubWFya2VyKG1hcmtlckxvY2F0aW9uLCB7XG4gICAgICBpY29uOiBpY29uLFxuICAgICAgcmlzZU9uSG92ZXI6IGZhbHNlLFxuICAgIH0pLmFkZFRvKG1hcCk7XG4gICAgcG9pbnRDdXN0b21JY29uLmJpbmRUb29sdGlwKFxuICAgICAgYCR7cG9pbnQuZ3JvdXAubmFtZX0gKCR7cG9pbnQuZ3JvdXAuc2VjdG9yX25hbWV9KWAsXG4gICAgKTtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX29iamVjdF9pZCddID0gcG9pbnQuaWQ7XG4gICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3QnXSA9ICdTYW1wbGluZyc7XG4gICAgaWYgKGhvdmVyZWQpIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fb2JqZWN0J10gPSAnU2FtcGxpbmdIb3ZlcmVkJztcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlT2JzZXJ2YXRpb25JY29uUG9pbnQgPSAoXG4gIG1hcmtlckxvY2F0aW9uOiBMYXRMbmdUdXBsZSxcbiAgc2Vjb25kYXJ5SWNvbjogYm9vbGVhbixcbiAgbWFwLFxuICBwb2ludDogSVBvaW50LFxuICBldmVudDogSUV2ZW50LFxuICBob3ZlcmVkPyxcbikgPT4ge1xuICAvLyBpY29uU2l6ZTogW3dpZHRoLCBoZWlnaHRdLFxuICAvLyBJY29uIEFuY2hvcjogWygtcmlnaHQpKCtsZWZ0KSwgKC1kb3duKSgrdXApXVxuICBsZXQgb2JzZXJ2YXRpb25JY29uID0gW1xuICAgIEwuaWNvbih7XG4gICAgICBpY29uVXJsOiBwaW5rQ2lyY2xlVVJMLFxuICAgICAgaWNvblNpemU6IHNlY29uZGFyeUljb24gPyBbMTAsIDEwXSA6IFsyNSwgMjRdLFxuICAgICAgaWNvbkFuY2hvcjogc2Vjb25kYXJ5SWNvbiA/IFstNywgNDBdIDogWzEwLjcsIDMzLjddLFxuICAgICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICAgIH0pLFxuICAgIEwuaWNvbih7XG4gICAgICBpY29uVXJsOiBvYnNlcnZhdGlvbkljb25VUkwsXG4gICAgICBpY29uU2l6ZTogc2Vjb25kYXJ5SWNvbiA/IFs3LCA3XSA6IFsxMywgMTVdLFxuICAgICAgaWNvbkFuY2hvcjogc2Vjb25kYXJ5SWNvbiA/IFstOCwgMzhdIDogWzUsIDMwXSxcbiAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgICB9KSxcbiAgXTtcblxuICBpZiAobWFya2VyQmVsb25nc1RvU2VsZWN0ZWRTb3VyY2UoZXZlbnQsIHBvaW50KSAmJiAhc2Vjb25kYXJ5SWNvbikge1xuICAgIG9ic2VydmF0aW9uSWNvbi51bnNoaWZ0KHNlbGVjdGVkQmFja2dyb3VuZCgpKTtcbiAgfSBlbHNlIGlmIChtYXJrZXJCZWxvbmdzVG9Tb3VyY2UoZXZlbnQsIHBvaW50KSAmJiAhc2Vjb25kYXJ5SWNvbikge1xuICAgIG9ic2VydmF0aW9uSWNvbi51bnNoaWZ0KGJlbG9uZ3NUb1NvdXJjZUJhY2tncm91bmQoKSk7XG4gIH0gZWxzZSB7XG4gICAgb2JzZXJ2YXRpb25JY29uLnVuc2hpZnQoc3RhbmRhcmRCYWNrZ3JvdW5kKHNlY29uZGFyeUljb24pKTtcbiAgfVxuXG4gIG9ic2VydmF0aW9uSWNvbi5mb3JFYWNoKChpY29uKSA9PiB7XG4gICAgbGV0IHBvaW50Q3VzdG9tSWNvbjogYW55ID0gTC5tYXJrZXIobWFya2VyTG9jYXRpb24sIHtcbiAgICAgIGljb246IGljb24sXG4gICAgICByaXNlT25Ib3ZlcjogZmFsc2UsXG4gICAgfSkuYWRkVG8obWFwKTtcbiAgICBwb2ludEN1c3RvbUljb24uYmluZFRvb2x0aXAoXG4gICAgICBgJHtwb2ludC5ncm91cC5uYW1lfSAoJHtwb2ludC5ncm91cC5zZWN0b3JfbmFtZX0pYCxcbiAgICApO1xuICAgIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fb2JqZWN0X2lkJ10gPSBwb2ludC5pZDtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX29iamVjdCddID0gJ09ic2VydmF0aW9uJztcbiAgICBpZiAoaG92ZXJlZCkgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3QnXSA9ICdPYnNlcnZhdGlvbkhvdmVyZWQnO1xuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBjcmVhdGVTYW1wbGluZ0ljb25zID0gKFxuICBtYXJrZXJMb2NhdGlvbjogTGF0TG5nVHVwbGUsXG4gIGV2ZW50OiBJRXZlbnQsXG4gIHBvaW50OiBJUG9pbnQsXG4gIG1hcCxcbiAgaG92ZXJlZCxcbikgPT4ge1xuICBsZXQgc2FtcGxlZFBvaW50SWRzID0gZXZlbnQuc2FtcGxpbmdzLm1hcCgocykgPT4gcy5wb2ludF9pZCk7XG4gIGlmIChcbiAgICBldmVudCAhPT0gbnVsbCAmJlxuICAgIGV2ZW50LnNhbXBsaW5ncy5sZW5ndGggIT09IDAgJiZcbiAgICBzYW1wbGVkUG9pbnRJZHMuaW5jbHVkZXMocG9pbnQuaWQpXG4gICkge1xuICAgIGNyZWF0ZVNhbXBsaW5nSWNvblBvaW50KFxuICAgICAgbWFya2VyTG9jYXRpb24sXG4gICAgICBtYXRjaEljb25Ub1BvaW50KHBvaW50LCBldmVudCkgIT09IG51bGwsXG4gICAgICBtYXAsXG4gICAgICBwb2ludCxcbiAgICAgIGV2ZW50LFxuICAgICAgaG92ZXJlZCxcbiAgICApO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgcG9wdXBDb250ZW50ID0gKG9iczogYW55LCBwb2ludDogSVBvaW50KSA9PiB7XG4gIGlmIChvYnMgPT09IG51bGwpIHtcbiAgICByZXR1cm4gYFxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImV2ZW50LXBvcHVwXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBvcHVwLWdyYXBoLWljb24gcG9wdXAtZ3JhcGgtaWNvbi0ke3BvaW50LmlkfVwiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIiR7R3JhcGhJY29ufVwiLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9wdXAtY29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9XCJwb3B1cC1jb250ZW50X19zaXRlLW5hbWVcIj48Yj4ke3BvaW50Lmdyb3VwLm5hbWV9PC9iPjwvaDU+XG4gICAgICAgICAgICAgICAgICAgIDxoci8+XG4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPVwic2VjdG9yXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIGA7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIGBcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldmVudC1wb3B1cFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC1ncmFwaC1pY29uIHBvcHVwLWdyYXBoLWljb24tJHtvYnMuaWR9XCI+XG4gICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiJHtHcmFwaEljb259XCIvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC1jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgICAgIDxoNSBjbGFzcz1cInBvcHVwLWNvbnRlbnRfX3NpdGUtbmFtZVwiPjxiPiR7XG4gICAgICAgICAgICAgICAgICAgICAgcG9pbnQuZ3JvdXAubmFtZVxuICAgICAgICAgICAgICAgICAgICB9PC9iPjwvaDU+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC1jb250ZW50X19zZXZlcml0eVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJwb3B1cC1jb250ZW50X19zZXZlcml0eS1wXCI+JHtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGBldmVudHNfb3ZlcnZpZXcuc2V2ZXJpdHlgLFxuICAgICAgICAgICAgICAgICAgICAgICAgKX08L3A+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIiR7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICdwb3B1cC1jb250ZW50X19zZXZlcml0eS0tJyArIG9icy5zZXZlcml0eVxuICAgICAgICAgICAgICAgICAgICAgICAgfVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxiIGNsYXNzPVwicG9wdXAtY29udGVudF9fc2V2ZXJpdHktYlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAke2kxOG4udChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXZlbnRzX292ZXJ2aWV3LnNldmVyaXRpZXMuJHtvYnMuc2V2ZXJpdHl9YCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2I+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgPGhyIGNsYXNzPVwicG9wdXAtY29udGVudF9faHJcIiAvPlxuXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC1jb250ZW50X19kaXNjaGFyZ2UtdGltZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cInBvcHVwLWNvbnRlbnRfX3NldmVyaXR5LXBcIj4ke2kxOG4udChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBldmVudHNfb3ZlcnZpZXcuZmlyc3Rfc2VlbmAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX06PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjxiIGlkPVwiZmlyc3Qtc2Vlbi1wb3B1cFwiPjwvYj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJwb3B1cC1jb250ZW50X19zZXZlcml0eS1wXCI+JHtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXZlbnRzX292ZXJ2aWV3Lmxhc3Rfc2VlbmAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX06PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPjxiIGlkPVwibGFzdC1zZWVuLXBvcHVwXCI+PC9iPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICBgO1xuICB9XG59O1xuIl19
|
|
389
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9wb2ludHMvUG9pbnRVdGlscy50cyJdLCJuYW1lcyI6WyJpc0NvbGxlY3RvckZvY3VzZWQiLCJwb2ludCIsImV2ZW50Iiwib2JzZXJ2YXRpb25zIiwibGVuZ3RoIiwiaWQiLCJwb2ludF9pZCIsImNyZWF0ZUJ1YmJsZVBvaW50IiwibWFya2VyTG9jYXRpb24iLCJtYXAiLCJob3ZlcmVkIiwibWF0Y2hJY29uVG9Qb2ludCIsImZvckVhY2giLCJpY29uIiwiaW5kZXgiLCJwb2ludEN1c3RvbUljb24iLCJMIiwibWFya2VyIiwicmlzZU9uSG92ZXIiLCJhZGRUbyIsImJpbmRUb29sdGlwIiwiZ3JvdXAiLCJuYW1lIiwic2VjdG9yX25hbWUiLCJyZWxhdGVkRXZlbnRzQW1vdW50IiwiZGl2SWNvbiIsImNsYXNzTmFtZSIsImh0bWwiLCJpY29uQW5jaG9yIiwiX3pvb20iLCJvcGFjaXR5IiwiY3JlYXRlTWFuaG9sZVBvaW50IiwicG9pbnRJY29uIiwiaWNvblVybCIsIndoaXRlUG9pbnQiLCJpY29uU2l6ZSIsIm1hbmhvbGVJY29uIiwidHlwZSIsImNvbWJpbmVkRmFjdG9yeUljb24iLCJtYXJrZXJCZWxvbmdzVG9TZWxlY3RlZFNvdXJjZSIsInVuc2hpZnQiLCJzZWxlY3RlZEJhY2tncm91bmQiLCJtYXJrZXJCZWxvbmdzVG9Tb3VyY2UiLCJiZWxvbmdzVG9Tb3VyY2VCYWNrZ3JvdW5kIiwic3RhbmRhcmRCYWNrZ3JvdW5kIiwiY29tYmluZWRQdW1wU3RhdGlvbkljb24iLCJjb21iaW5lZFdXVFBJY29uIiwicmVkUGluUmVkU2hhZG93Iiwid2F0ZXJJY29uTm9CYWNrZ3JvdW5kIiwicG9wdXBBbmNob3IiLCJjb21iaW5lZENvbGxlY3RvcnNJY29uIiwic2Vjb25kYXJ5IiwidGhpcmQiLCJ3aGl0ZVBpbkJsYWNrU2hhZG93IiwieWVsbG93Q2lyY2xlVVJMIiwicGxhbnRJY29uVVJMIiwiZ3JlZW5DaXJjbGVVUkwiLCJwdW1wU3RhdGlvbkljb25VUkwiLCJjb2xsZWN0b3JJY29uIiwiYnJpZ2h0Qmx1ZUNpcmNsZVVSTCIsIldXVFBJY29uVVJMIiwid2hpdGVQaW5SZWRTaGFkb3ciLCJzb3VyY2UiLCJ1bmRlZmluZWQiLCJzb3VyY2VzIiwiZmlsdGVyIiwic2VsZWN0ZWRfc291cmNlIiwiY3JlYXRlU2FtcGxpbmdJY29uUG9pbnQiLCJzZWNvbmRhcnlJY29uIiwic2FtcGxpbmdJY29uIiwiYmx1ZUNpcmNsZVVSTCIsInNhbXBsaW5nSWNvblVSTCIsInRoaXJkSWNvbiIsImNyZWF0ZU9ic2VydmF0aW9uSWNvblBvaW50Iiwib2JzZXJ2YXRpb25JY29uIiwicGlua0NpcmNsZVVSTCIsIm9ic2VydmF0aW9uSWNvblVSTCIsImNyZWF0ZVNhbXBsaW5nSWNvbnMiLCJzYW1wbGVkUG9pbnRJZHMiLCJzYW1wbGluZ3MiLCJzIiwiaW5jbHVkZXMiLCJwb3B1cENvbnRlbnQiLCJvYnMiLCJHcmFwaEljb24iLCJpMThuIiwidCIsInNldmVyaXR5Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUNBOztBQUNBOzs7Ozs7Ozs7O0FBT0E7O0FBQ0E7O0FBQ0E7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVNBOztBQUNBOztBQUVPLElBQU1BLGtCQUFrQixHQUFHLFNBQXJCQSxrQkFBcUIsQ0FBQ0MsS0FBRCxFQUFnQkMsS0FBaEIsRUFBa0M7QUFBQTs7QUFDbEUsU0FDRSxDQUFBQSxLQUFLLFNBQUwsSUFBQUEsS0FBSyxXQUFMLG1DQUFBQSxLQUFLLENBQUVDLFlBQVAsNEVBQXFCQyxNQUFyQixNQUFnQyxDQUFoQyxJQUNBSCxLQUFLLENBQUNJLEVBQU4sS0FBYUgsS0FBSyxDQUFDQyxZQUFOLENBQW1CLENBQW5CLEVBQXNCRyxRQUZyQztBQUlELENBTE0sQyxDQU9QO0FBQ0E7Ozs7O0FBQ08sSUFBTUMsaUJBQWlCLEdBQUcsU0FBcEJBLGlCQUFvQixDQUMvQkMsY0FEK0IsRUFFL0JQLEtBRitCLEVBRy9CUSxHQUgrQixFQUkvQkMsT0FKK0Is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LGlEQUc0QitFLGtCQUg1Qix3SkFPa0JuRixLQUFLLENBQUNvQixLQUFOLENBQVlDLElBUDlCLG9KQVUyRCtELGNBQUtDLENBQUwsNEJBVjNELHlEQWNzQiw4QkFBOEJILEdBQUcsQ0FBQ0ksUUFkeEQsdUhBaUI4QkYsY0FBS0MsQ0FBTCxzQ0FDOEJILEdBQUcsQ0FBQ0ksUUFEbEMsRUFqQjlCLG1XQTRCK0RGLGNBQUtDLENBQUwsOEJBNUIvRCxnT0FrQytERCxjQUFLQyxDQUFMLDZCQWxDL0Q7QUEyQ0Q7QUFDRixDQTVETSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBHcmFwaEljb24gZnJvbSAnLi4vLi4vLi4vYXNzZXRzL2xpbmUtY2hhcnQuc3ZnJztcbmltcG9ydCBMLCB7IExhdExuZ1R1cGxlIH0gZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgaTE4biBmcm9tICcuLi8uLi8uLi91dGlsaXRpZXMvaTE4bic7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICcuLi8uLi8uLi9zdG9yZS9wb2ludHMvbW9kZWxzL0lQb2ludCc7XG5pbXBvcnQgYmx1ZUNpcmNsZVVSTCBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvYmx1ZS1jaXJjbGUuc3ZnJztcbmltcG9ydCBzYW1wbGluZ0ljb25VUkwgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3BvaW50X2ljb25zL3NhbXBsaW5nLWljb24uc3ZnJztcbmltcG9ydCBwaW5rQ2lyY2xlVVJMIGZyb20gJy4uLy4uLy4uL2Fzc2V0cy9wb2ludF9pY29ucy9waW5rLWNpcmNsZS5zdmcnO1xuaW1wb3J0IG9ic2VydmF0aW9uSWNvblVSTCBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvb2JzZXJ2YXRpb24taWNvbi5zdmcnO1xuaW1wb3J0IHsgSUV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vc3RvcmUvZXZlbnRzL21vZGVscy9JRXZlbnQnO1xuaW1wb3J0IHJlZFBpblJlZFNoYWRvdyBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvcmVkLXBpbi1yZWQtc2hhZG93LnBuZyc7XG5pbXBvcnQgd2hpdGVQaW5SZWRTaGFkb3cgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3BvaW50X2ljb25zL3doaXRlLXBpbi1yZWQtc2hhZG93LnBuZyc7XG5pbXBvcnQgd2hpdGVQaW5CbGFja1NoYWRvdyBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvd2hpdGUtcGluLWJsYWNrLXNoYWRvdy5wbmcnO1xuaW1wb3J0IHllbGxvd0NpcmNsZVVSTCBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMveWVsbG93LWNpcmNsZS5zdmcnO1xuaW1wb3J0IHBsYW50SWNvblVSTCBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvZmFjdG9yeS1pY29uLnN2Zyc7XG5pbXBvcnQgZ3JlZW5DaXJjbGVVUkwgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3BvaW50X2ljb25zL2dyZWVuLWNpcmNsZS5zdmcnO1xuaW1wb3J0IHB1bXBTdGF0aW9uSWNvblVSTCBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvcHVtcC1zdGF0aW9uLWljb24uc3ZnJztcbmltcG9ydCBjb2xsZWN0b3JJY29uIGZyb20gJy4uLy4uLy4uL2Fzc2V0cy9tYXAvcGluLXdhdGVyLnN2Zyc7XG5pbXBvcnQgYnJpZ2h0Qmx1ZUNpcmNsZVVSTCBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvYnJpZ2h0LWJsdWUtY2lyY2xlLnN2Zyc7XG5pbXBvcnQgV1dUUEljb25VUkwgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3BvaW50X2ljb25zL1dXVFAtaWNvbi5zdmcnO1xuaW1wb3J0IHdhdGVySWNvbk5vQmFja2dyb3VuZCBmcm9tICcuLi8uLi8uLi9hc3NldHMvcG9pbnRfaWNvbnMvd2F0ZXItbm8tYmFja2dyb3VuZC5zdmcnO1xuaW1wb3J0IHdoaXRlUG9pbnQgZnJvbSAnLi4vLi4vLi4vYXNzZXRzL3doaXRlLXBvaW50LnBuZyc7XG5pbXBvcnQgeyBldmVudHNDb3VudEljb24gfSBmcm9tICcuLi9NYXBVdGlscyc7XG5cbmV4cG9ydCBjb25zdCBpc0NvbGxlY3RvckZvY3VzZWQgPSAocG9pbnQ6IElQb2ludCwgZXZlbnQ6IElFdmVudCkgPT4ge1xuICByZXR1cm4gKFxuICAgIGV2ZW50Py5vYnNlcnZhdGlvbnM/Lmxlbmd0aCA9PT0gMSAmJlxuICAgIHBvaW50LmlkID09PSBldmVudC5vYnNlcnZhdGlvbnNbMF0ucG9pbnRfaWRcbiAgKTtcbn07XG5cbi8vIGljb25TaXplOiBbd2lkdGgsIGhlaWdodF0sXG4vLyBJY29uQW5jaG9yOiBbKC1yaWdodCkoK2xlZnQpLCAoLWRvd24pKCt1cCldXG5leHBvcnQgY29uc3QgY3JlYXRlQnViYmxlUG9pbnQgPSAoXG4gIG1hcmtlckxvY2F0aW9uOiBMYXRMbmdUdXBsZSxcbiAgcG9pbnQ6IElQb2ludCxcbiAgbWFwLFxuICBob3ZlcmVkPyxcbikgPT4ge1xuICAvLyBAdHMtaWdub3JlXG4gIG1hdGNoSWNvblRvUG9pbnQocG9pbnQpICE9PSBudWxsICYmXG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIG1hdGNoSWNvblRvUG9pbnQocG9pbnQpLmZvckVhY2goKGljb246IGFueSwgaW5kZXgpID0+IHtcbiAgICAgIGxldCBwb2ludEN1c3RvbUljb246IGFueSA9IEwubWFya2VyKG1hcmtlckxvY2F0aW9uLCB7XG4gICAgICAgIGljb246IGljb24sXG4gICAgICAgIHJpc2VPbkhvdmVyOiBmYWxzZSxcbiAgICAgIH0pLmFkZFRvKG1hcCk7XG4gICAgICBwb2ludEN1c3RvbUljb24uYmluZFRvb2x0aXAoXG4gICAgICAgIGAke3BvaW50Lmdyb3VwLm5hbWV9ICgke3BvaW50Lmdyb3VwLnNlY3Rvcl9uYW1lfSlgLFxuICAgICAgKTtcbiAgICAgIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fZmV3X2xheWVyX2ljb24nXSA9XG4gICAgICAgIG1hdGNoSWNvblRvUG9pbnQocG9pbnQpLmxlbmd0aCA+IDE7XG4gICAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX2luZGV4X29iamVjdCddID0gaW5kZXg7XG4gICAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX29iamVjdF9pZCddID0gcG9pbnQuaWQ7XG4gICAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX29iamVjdCddID0gJ1BvaW50JztcbiAgICAgIGlmIChob3ZlcmVkKSBwb2ludEN1c3RvbUljb25bJ2thbmRvX29iamVjdCddID0gJ1BvaW50SG92ZXJlZCc7XG4gICAgfSk7XG5cbiAgaWYgKHBvaW50LnJlbGF0ZWRFdmVudHNBbW91bnQpIHtcbiAgICBsZXQgcG9pbnRDdXN0b21JY29uID0gTC5tYXJrZXIobWFya2VyTG9jYXRpb24sIHtcbiAgICAgIGljb246IEwuZGl2SWNvbih7XG4gICAgICAgIGNsYXNzTmFtZTogYFxuICAgICAgICAgICR7XG4gICAgICAgICAgICBwb2ludC5yZWxhdGVkRXZlbnRzQW1vdW50ID49IDEwMFxuICAgICAgICAgICAgICA/ICdjaXJjbGUtZXZlbnRzLWFtb3VudCBjaXJjbGUtZXZlbnRzLWFtb3VudC0tdHJpZGlnaXQnXG4gICAgICAgICAgICAgIDogJ2NpcmNsZS1ldmVudHMtYW1vdW50J1xuICAgICAgICAgIH0gXG4gICAgICAgICAgJHtwb2ludC5yZWxhdGVkRXZlbnRzQW1vdW50ID4gMiA/ICdhbGVydC1jb2xvcicgOiAnJ31cbiAgICAgICAgICAgIGAsXG4gICAgICAgIGh0bWw6IGA8cD4ke3BvaW50LnJlbGF0ZWRFdmVudHNBbW91bnR9PC9wPmAsXG4gICAgICAgIGljb25BbmNob3I6IGV2ZW50c0NvdW50SWNvbihtYXAuX3pvb20pLmljb25BbmNob3IsXG4gICAgICB9KSxcbiAgICAgIHJpc2VPbkhvdmVyOiBmYWxzZSxcbiAgICAgIG9wYWNpdHk6IGhvdmVyZWQgPyAxIDogMCxcbiAgICB9KS5hZGRUbyhtYXApO1xuXG4gICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3RfaWQnXSA9IHBvaW50LmlkO1xuICAgIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fb2JqZWN0J10gPSAnSWNvbk51bWJlcic7XG4gICAgaWYgKGhvdmVyZWQpIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fb2JqZWN0J10gPSAnSWNvbk51bWJlckhvdmVyZWQnO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlTWFuaG9sZVBvaW50ID0gKFxuICBtYXJrZXJMb2NhdGlvbjogTGF0TG5nVHVwbGUsXG4gIHBvaW50OiBJUG9pbnQsXG4gIG1hcCxcbiAgaG92ZXJlZD8sXG4pID0+IHtcbiAgbGV0IHBvaW50SWNvbiA9IEwuaWNvbih7XG4gICAgaWNvblVybDogd2hpdGVQb2ludCxcbiAgICBpY29uU2l6ZTogWzksIDldLFxuICAgIGljb25BbmNob3I6IFs0LjUsIDQuNV0sXG4gIH0pO1xuICBsZXQgbWFuaG9sZUljb246IGFueSA9IEwubWFya2VyKG1hcmtlckxvY2F0aW9uLCB7XG4gICAgaWNvbjogcG9pbnRJY29uLFxuICAgIHJpc2VPbkhvdmVyOiB0cnVlLFxuICB9KS5hZGRUbyhtYXApO1xuICBtYW5ob2xlSWNvbi5iaW5kVG9vbHRpcChgJHtwb2ludC5ncm91cC5uYW1lfSAoJHtwb2ludC5ncm91cC5zZWN0b3JfbmFtZX0pYCk7XG4gIG1hbmhvbGVJY29uWydrYW5kb19vYmplY3RfaWQnXSA9IHBvaW50LmlkO1xuICBtYW5ob2xlSWNvblsna2FuZG9fb2JqZWN0J10gPSAnUG9pbnQnO1xuICBtYW5ob2xlSWNvblsna2FuZG9fcG9pbnRfdHlwZSddID0gJ01hbmhvbGUnO1xuICBpZiAoaG92ZXJlZCkgbWFuaG9sZUljb25bJ2thbmRvX29iamVjdCddID0gJ1BvaW50SG92ZXJlZCc7XG59O1xuXG5leHBvcnQgY29uc3QgbWF0Y2hJY29uVG9Qb2ludCA9IChwb2ludDogSVBvaW50LCBldmVudDogSUV2ZW50KSA9PiB7XG4gIHN3aXRjaCAocG9pbnQuZ3JvdXAudHlwZSkge1xuICAgIGNhc2UgJ0dyb3Vwczo6RmFjdG9yeSc6XG4gICAgICBpZiAoY29tYmluZWRGYWN0b3J5SWNvbi5sZW5ndGggPT09IDIpIHtcbiAgICAgICAgaWYgKG1hcmtlckJlbG9uZ3NUb1NlbGVjdGVkU291cmNlKGV2ZW50LCBwb2ludCkpIHtcbiAgICAgICAgICBjb21iaW5lZEZhY3RvcnlJY29uLnVuc2hpZnQoc2VsZWN0ZWRCYWNrZ3JvdW5kKCkpO1xuICAgICAgICB9IGVsc2UgaWYgKG1hcmtlckJlbG9uZ3NUb1NvdXJjZShldmVudCwgcG9pbnQpKSB7XG4gICAgICAgICAgY29tYmluZWRGYWN0b3J5SWNvbi51bnNoaWZ0KGJlbG9uZ3NUb1NvdXJjZUJhY2tncm91bmQoKSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29tYmluZWRGYWN0b3J5SWNvbi51bnNoaWZ0KHN0YW5kYXJkQmFja2dyb3VuZCgpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gY29tYmluZWRGYWN0b3J5SWNvbjtcbiAgICBjYXNlICdHcm91cHM6OlB1bXBTdGF0aW9uJzpcbiAgICAgIGlmIChjb21iaW5lZFB1bXBTdGF0aW9uSWNvbi5sZW5ndGggPT09IDIpIHtcbiAgICAgICAgaWYgKG1hcmtlckJlbG9uZ3NUb1NlbGVjdGVkU291cmNlKGV2ZW50LCBwb2ludCkpIHtcbiAgICAgICAgICBjb21iaW5lZFB1bXBTdGF0aW9uSWNvbi51bnNoaWZ0KHNlbGVjdGVkQmFja2dyb3VuZCgpKTtcbiAgICAgICAgfSBlbHNlIGlmIChtYXJrZXJCZWxvbmdzVG9Tb3VyY2UoZXZlbnQsIHBvaW50KSkge1xuICAgICAgICAgIGNvbWJpbmVkUHVtcFN0YXRpb25JY29uLnVuc2hpZnQoYmVsb25nc1RvU291cmNlQmFja2dyb3VuZCgpKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb21iaW5lZFB1bXBTdGF0aW9uSWNvbi51bnNoaWZ0KHN0YW5kYXJkQmFja2dyb3VuZCgpKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gY29tYmluZWRQdW1wU3RhdGlvbkljb247XG4gICAgY2FzZSAnR3JvdXBzOjpXYXN0ZXdhdGVyVHJlYXRtZW50UGxhbnQnOlxuICAgICAgaWYgKGNvbWJpbmVkV1dUUEljb24ubGVuZ3RoID09PSAyKSB7XG4gICAgICAgIGlmIChtYXJrZXJCZWxvbmdzVG9TZWxlY3RlZFNvdXJjZShldmVudCwgcG9pbnQpKSB7XG4gICAgICAgICAgY29tYmluZWRXV1RQSWNvbi51bnNoaWZ0KHNlbGVjdGVkQmFja2dyb3VuZCgpKTtcbiAgICAgICAgfSBlbHNlIGlmIChtYXJrZXJCZWxvbmdzVG9Tb3VyY2UoZXZlbnQsIHBvaW50KSkge1xuICAgICAgICAgIGNvbWJpbmVkV1dUUEljb24udW5zaGlmdChiZWxvbmdzVG9Tb3VyY2VCYWNrZ3JvdW5kKCkpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbWJpbmVkV1dUUEljb24udW5zaGlmdChzdGFuZGFyZEJhY2tncm91bmQoKSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNvbWJpbmVkV1dUUEljb247XG5cbiAgICBjYXNlICdHcm91cHM6OkNvbGxlY3RvcnMnOlxuICAgICAgaWYgKGlzQ29sbGVjdG9yRm9jdXNlZChwb2ludCwgZXZlbnQpKSB7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgTC5pY29uKHtcbiAgICAgICAgICAgIGljb25Vcmw6IHJlZFBpblJlZFNoYWRvdyxcbiAgICAgICAgICAgIGljb25TaXplOiBbMCwgMF0sXG4gICAgICAgICAgICBpY29uQW5jaG9yOiBbMzAsIDUyXSxcbiAgICAgICAgICB9KSxcblxuICAgICAgICAgIEwuaWNvbih7XG4gICAgICAgICAgICBpY29uVXJsOiB3YXRlckljb25Ob0JhY2tncm91bmQsXG4gICAgICAgICAgICBpY29uU2l6ZTogWzAsIDBdLFxuXG4gICAgICAgICAgICBpY29uQW5jaG9yOiBbMjIsIDQ0XSxcbiAgICAgICAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgXTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGNvbWJpbmVkQ29sbGVjdG9yc0ljb247XG5cbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIG51bGw7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBzdGFuZGFyZEJhY2tncm91bmQgPSAoXG4gIHNlY29uZGFyeTogYm9vbGVhbiA9IGZhbHNlLFxuICB0aGlyZDogYm9vbGVhbiA9IGZhbHNlLFxuKSA9PiB7XG4gIHJldHVybiBMLmljb24oe1xuICAgIGljb25Vcmw6IHdoaXRlUGluQmxhY2tTaGFkb3csXG4gICAgaWNvblNpemU6IHNlY29uZGFyeSA/IFswLCAwXSA6IFswLCAwXSxcbiAgICBpY29uQW5jaG9yOiBzZWNvbmRhcnkgJiYgdGhpcmQgPyBbLTIsIDE5XSA6IHNlY29uZGFyeSA/IFstMiwgNDRdIDogWzIwLCA0Ml0sXG4gICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBjb21iaW5lZEZhY3RvcnlJY29uID0gW1xuICBMLmljb24oe1xuICAgIGljb25Vcmw6IHllbGxvd0NpcmNsZVVSTCxcbiAgICBpY29uU2l6ZTogWzAsIDBdLFxuICAgIGljb25BbmNob3I6IFsxMC43LCAzMy43XSxcbiAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gIH0pLFxuICBMLmljb24oe1xuICAgIGljb25Vcmw6IHBsYW50SWNvblVSTCxcbiAgICBpY29uU2l6ZTogWzAsIDBdLFxuICAgIGljb25BbmNob3I6IFs1LCAzMF0sXG4gICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICB9KSxcbl07XG5cbmV4cG9ydCBjb25zdCBjb21iaW5lZFB1bXBTdGF0aW9uSWNvbiA9IFtcbiAgTC5pY29uKHtcbiAgICBpY29uVXJsOiBncmVlbkNpcmNsZVVSTCxcbiAgICBpY29uU2l6ZTogWzAsIDBdLFxuICAgIGljb25BbmNob3I6IFsxMC43LCAzMy43XSxcbiAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gIH0pLFxuICBMLmljb24oe1xuICAgIGljb25Vcmw6IHB1bXBTdGF0aW9uSWNvblVSTCxcbiAgICBpY29uU2l6ZTogWzAsIDBdLFxuICAgIGljb25BbmNob3I6IFs3LCAzMl0sXG4gICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICB9KSxcbl07XG5cbmV4cG9ydCBjb25zdCBjb21iaW5lZENvbGxlY3RvcnNJY29uID0gW1xuICBMLmljb24oe1xuICAgIGljb25Vcmw6IGNvbGxlY3Rvckljb24sXG4gICAgaWNvblNpemU6IFswLCAwXSxcblxuICAgIGljb25BbmNob3I6IFsyNSwgNTBdLFxuICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgfSksXG5dO1xuXG5leHBvcnQgY29uc3QgY29tYmluZWRXV1RQSWNvbiA9IFtcbiAgTC5pY29uKHtcbiAgICBpY29uVXJsOiBicmlnaHRCbHVlQ2lyY2xlVVJMLFxuICAgIGljb25TaXplOiBbMCwgMF0sXG4gICAgaWNvbkFuY2hvcjogWzEwLjcsIDMzLjddLFxuICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgfSksXG4gIEwuaWNvbih7XG4gICAgaWNvblVybDogV1dUUEljb25VUkwsXG4gICAgaWNvblNpemU6IFswLCAwXSxcbiAgICBpY29uQW5jaG9yOiBbOCwgMzFdLFxuICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgfSksXG5dO1xuXG5leHBvcnQgY29uc3Qgc2VsZWN0ZWRCYWNrZ3JvdW5kID0gKCkgPT4ge1xuICByZXR1cm4gTC5pY29uKHtcbiAgICBpY29uVXJsOiByZWRQaW5SZWRTaGFkb3csXG4gICAgaWNvblNpemU6IFswLCAwXSxcbiAgICBpY29uQW5jaG9yOiBbMzIsIDU0XSxcbiAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IGJlbG9uZ3NUb1NvdXJjZUJhY2tncm91bmQgPSAoKSA9PiB7XG4gIHJldHVybiBMLmljb24oe1xuICAgIGljb25Vcmw6IHdoaXRlUGluUmVkU2hhZG93LFxuICAgIGljb25TaXplOiBbMCwgMF0sXG4gICAgaWNvbkFuY2hvcjogWzMyLCA1NF0sXG4gICAgcG9wdXBBbmNob3I6IFswLCAtMzBdLFxuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBtYXJrZXJCZWxvbmdzVG9TZWxlY3RlZFNvdXJjZSA9IChldmVudDogSUV2ZW50LCBwb2ludDogSVBvaW50KSA9PiB7XG4gIGxldCBzb3VyY2U7XG5cbiAgaWYgKGV2ZW50ICE9PSBudWxsICYmIGV2ZW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICBzb3VyY2UgPSBldmVudC5zb3VyY2VzLmZpbHRlcigoc291cmNlKSA9PiBzb3VyY2UucG9pbnRfaWQgPT09IHBvaW50LmlkKVswXTtcbiAgfVxuXG4gIHJldHVybiBldmVudCAhPT0gbnVsbCAmJiBzb3VyY2UgJiYgZXZlbnQuc2VsZWN0ZWRfc291cmNlID09PSBzb3VyY2UucG9pbnRfaWQ7XG59O1xuXG5leHBvcnQgY29uc3QgbWFya2VyQmVsb25nc1RvU291cmNlID0gKGV2ZW50OiBJRXZlbnQsIHBvaW50OiBJUG9pbnQpID0+IHtcbiAgaWYgKGV2ZW50ID09PSB1bmRlZmluZWQpIHJldHVybjtcbiAgcmV0dXJuIChcbiAgICBldmVudCAhPT0gbnVsbCAmJlxuICAgIGV2ZW50LnNvdXJjZXMuZmlsdGVyKChzb3VyY2UpID0+IHNvdXJjZS5wb2ludF9pZCA9PT0gcG9pbnQuaWQpWzBdXG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlU2FtcGxpbmdJY29uUG9pbnQgPSAoXG4gIG1hcmtlckxvY2F0aW9uOiBMYXRMbmdUdXBsZSxcbiAgc2Vjb25kYXJ5SWNvbjogYm9vbGVhbixcbiAgbWFwLFxuICBwb2ludDogSVBvaW50LFxuICBldmVudDogSUV2ZW50LFxuICBob3ZlcmVkPyxcbikgPT4ge1xuICAvLyBpY29uU2l6ZTogW3dpZHRoLCBoZWlnaHRdLFxuICAvLyBJY29uIEFuY2hvcjogWygtcmlnaHQpKCtsZWZ0KSwgKC1kb3duKSgrdXApXVxuICBsZXQgc2FtcGxpbmdJY29uID0gW1xuICAgIEwuaWNvbih7XG4gICAgICBpY29uVXJsOiBibHVlQ2lyY2xlVVJMLFxuICAgICAgaWNvblNpemU6IHNlY29uZGFyeUljb24gPyBbMCwgMF0gOiBbMCwgMF0sXG4gICAgICBpY29uQW5jaG9yOiBzZWNvbmRhcnlJY29uID8gWy03LCAxNV0gOiBbMTAuNywgMzMuN10sXG4gICAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gICAgfSksXG4gICAgTC5pY29uKHtcbiAgICAgIGljb25Vcmw6IHNhbXBsaW5nSWNvblVSTCxcbiAgICAgIGljb25TaXplOiBzZWNvbmRhcnlJY29uID8gWzAsIDBdIDogWzAsIDBdLFxuICAgICAgaWNvbkFuY2hvcjogc2Vjb25kYXJ5SWNvbiA/IFstOCwgMTNdIDogWzUsIDMwXSxcbiAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgICB9KSxcbiAgXTtcblxuICBsZXQgdGhpcmRJY29uID0gZmFsc2U7XG4gIGlmIChtYXJrZXJCZWxvbmdzVG9TZWxlY3RlZFNvdXJjZShldmVudCwgcG9pbnQpICYmICFzZWNvbmRhcnlJY29uKSB7XG4gICAgc2FtcGxpbmdJY29uLnVuc2hpZnQoc2VsZWN0ZWRCYWNrZ3JvdW5kKCkpO1xuICB9IGVsc2UgaWYgKG1hcmtlckJlbG9uZ3NUb1NvdXJjZShldmVudCwgcG9pbnQpICYmICFzZWNvbmRhcnlJY29uKSB7XG4gICAgc2FtcGxpbmdJY29uLnVuc2hpZnQoYmVsb25nc1RvU291cmNlQmFja2dyb3VuZCgpKTtcbiAgfSBlbHNlIHtcbiAgICB0aGlyZEljb24gPSB0cnVlO1xuICAgIHNhbXBsaW5nSWNvbi51bnNoaWZ0KHN0YW5kYXJkQmFja2dyb3VuZChzZWNvbmRhcnlJY29uLCB0aGlyZEljb24pKTtcbiAgfVxuXG4gIHNhbXBsaW5nSWNvbi5mb3JFYWNoKChpY29uLCBpbmRleCkgPT4ge1xuICAgIGxldCBwb2ludEN1c3RvbUljb246IGFueSA9IEwubWFya2VyKG1hcmtlckxvY2F0aW9uLCB7XG4gICAgICBpY29uOiBpY29uLFxuICAgICAgcmlzZU9uSG92ZXI6IGZhbHNlLFxuICAgIH0pLmFkZFRvKG1hcCk7XG4gICAgcG9pbnRDdXN0b21JY29uLmJpbmRUb29sdGlwKFxuICAgICAgYCR7cG9pbnQuZ3JvdXAubmFtZX0gKCR7cG9pbnQuZ3JvdXAuc2VjdG9yX25hbWV9KWAsXG4gICAgKTtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX2luZGV4X29iamVjdCddID0gaW5kZXg7XG4gICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19mZXdfbGF5ZXJfaWNvbiddID0gdHJ1ZTtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX3NlY29uZGFyeSddID0gdGhpcmRJY29uID8gZmFsc2UgOiBzZWNvbmRhcnlJY29uO1xuICAgIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fdGhpcmQnXSA9IHRoaXJkSWNvbjtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX29iamVjdF9pZCddID0gcG9pbnQuaWQ7XG4gICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3QnXSA9ICdTYW1wbGluZyc7XG4gICAgaWYgKGhvdmVyZWQpIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fb2JqZWN0J10gPSAnU2FtcGxpbmdIb3ZlcmVkJztcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlT2JzZXJ2YXRpb25JY29uUG9pbnQgPSAoXG4gIG1hcmtlckxvY2F0aW9uOiBMYXRMbmdUdXBsZSxcbiAgc2Vjb25kYXJ5SWNvbjogYm9vbGVhbixcbiAgbWFwLFxuICBwb2ludDogSVBvaW50LFxuICBldmVudDogSUV2ZW50LFxuICBob3ZlcmVkPyxcbikgPT4ge1xuICAvLyBpY29uU2l6ZTogW3dpZHRoLCBoZWlnaHRdLFxuICAvLyBJY29uIEFuY2hvcjogWygtcmlnaHQpKCtsZWZ0KSwgKC1kb3duKSgrdXApXVxuICBsZXQgb2JzZXJ2YXRpb25JY29uID0gW1xuICAgIEwuaWNvbih7XG4gICAgICBpY29uVXJsOiBwaW5rQ2lyY2xlVVJMLFxuICAgICAgaWNvblNpemU6IHNlY29uZGFyeUljb24gPyBbMCwgMF0gOiBbMCwgMF0sXG4gICAgICBpY29uQW5jaG9yOiBzZWNvbmRhcnlJY29uID8gWy03LCA0MF0gOiBbMTAuNywgMzMuN10sXG4gICAgICBwb3B1cEFuY2hvcjogWzAsIC0zMF0sXG4gICAgfSksXG4gICAgTC5pY29uKHtcbiAgICAgIGljb25Vcmw6IG9ic2VydmF0aW9uSWNvblVSTCxcbiAgICAgIGljb25TaXplOiBzZWNvbmRhcnlJY29uID8gWzAsIDBdIDogWzAsIDBdLFxuICAgICAgaWNvbkFuY2hvcjogc2Vjb25kYXJ5SWNvbiA/IFstOCwgMzhdIDogWzUsIDMwXSxcbiAgICAgIHBvcHVwQW5jaG9yOiBbMCwgLTMwXSxcbiAgICB9KSxcbiAgXTtcblxuICBpZiAobWFya2VyQmVsb25nc1RvU2VsZWN0ZWRTb3VyY2UoZXZlbnQsIHBvaW50KSAmJiAhc2Vjb25kYXJ5SWNvbikge1xuICAgIG9ic2VydmF0aW9uSWNvbi51bnNoaWZ0KHNlbGVjdGVkQmFja2dyb3VuZCgpKTtcbiAgfSBlbHNlIGlmIChtYXJrZXJCZWxvbmdzVG9Tb3VyY2UoZXZlbnQsIHBvaW50KSAmJiAhc2Vjb25kYXJ5SWNvbikge1xuICAgIG9ic2VydmF0aW9uSWNvbi51bnNoaWZ0KGJlbG9uZ3NUb1NvdXJjZUJhY2tncm91bmQoKSk7XG4gIH0gZWxzZSB7XG4gICAgb2JzZXJ2YXRpb25JY29uLnVuc2hpZnQoc3RhbmRhcmRCYWNrZ3JvdW5kKHNlY29uZGFyeUljb24pKTtcbiAgfVxuXG4gIG9ic2VydmF0aW9uSWNvbi5mb3JFYWNoKChpY29uLCBpbmRleCkgPT4ge1xuICAgIGxldCBwb2ludEN1c3RvbUljb246IGFueSA9IEwubWFya2VyKG1hcmtlckxvY2F0aW9uLCB7XG4gICAgICBpY29uOiBpY29uLFxuICAgICAgcmlzZU9uSG92ZXI6IGZhbHNlLFxuICAgIH0pLmFkZFRvKG1hcCk7XG4gICAgcG9pbnRDdXN0b21JY29uLmJpbmRUb29sdGlwKFxuICAgICAgYCR7cG9pbnQuZ3JvdXAubmFtZX0gKCR7cG9pbnQuZ3JvdXAuc2VjdG9yX25hbWV9KWAsXG4gICAgKTtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX2luZGV4X29iamVjdCddID0gaW5kZXg7XG4gICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19mZXdfbGF5ZXJfaWNvbiddID0gdHJ1ZTtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX3NlY29uZGFyeSddID0gc2Vjb25kYXJ5SWNvbjtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX3RoaXJkJ10gPSBmYWxzZTtcbiAgICBwb2ludEN1c3RvbUljb25bJ2thbmRvX29iamVjdF9pZCddID0gcG9pbnQuaWQ7XG4gICAgcG9pbnRDdXN0b21JY29uWydrYW5kb19vYmplY3QnXSA9ICdPYnNlcnZhdGlvbic7XG4gICAgaWYgKGhvdmVyZWQpIHBvaW50Q3VzdG9tSWNvblsna2FuZG9fb2JqZWN0J10gPSAnT2JzZXJ2YXRpb25Ib3ZlcmVkJztcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlU2FtcGxpbmdJY29ucyA9IChcbiAgbWFya2VyTG9jYXRpb246IExhdExuZ1R1cGxlLFxuICBldmVudDogSUV2ZW50LFxuICBwb2ludDogSVBvaW50LFxuICBtYXAsXG4gIGhvdmVyZWQsXG4pID0+IHtcbiAgbGV0IHNhbXBsZWRQb2ludElkcyA9IGV2ZW50LnNhbXBsaW5ncy5tYXAoKHMpID0+IHMucG9pbnRfaWQpO1xuICBpZiAoXG4gICAgZXZlbnQgIT09IG51bGwgJiZcbiAgICBldmVudC5zYW1wbGluZ3MubGVuZ3RoICE9PSAwICYmXG4gICAgc2FtcGxlZFBvaW50SWRzLmluY2x1ZGVzKHBvaW50LmlkKVxuICApIHtcbiAgICBjcmVhdGVTYW1wbGluZ0ljb25Qb2ludChcbiAgICAgIG1hcmtlckxvY2F0aW9uLFxuICAgICAgbWF0Y2hJY29uVG9Qb2ludChwb2ludCwgZXZlbnQpICE9PSBudWxsLFxuICAgICAgbWFwLFxuICAgICAgcG9pbnQsXG4gICAgICBldmVudCxcbiAgICAgIGhvdmVyZWQsXG4gICAgKTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IHBvcHVwQ29udGVudCA9IChvYnM6IGFueSwgcG9pbnQ6IElQb2ludCkgPT4ge1xuICBpZiAob2JzID09PSBudWxsKSB7XG4gICAgcmV0dXJuIGBcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJldmVudC1wb3B1cFwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwb3B1cC1ncmFwaC1pY29uIHBvcHVwLWdyYXBoLWljb24tJHtwb2ludC5pZH1cIj5cbiAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCIke0dyYXBoSWNvbn1cIi8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBvcHVwLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICAgICAgPGg1IGNsYXNzPVwicG9wdXAtY29udGVudF9fc2l0ZS1uYW1lXCI+PGI+JHtwb2ludC5ncm91cC5uYW1lfTwvYj48L2g1PlxuICAgICAgICAgICAgICAgICAgICA8aHIvPlxuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBpZD1cInNlY3RvclwiPjwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICBgO1xuICB9IGVsc2Uge1xuICAgIHJldHVybiBgXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZXZlbnQtcG9wdXBcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9wdXAtZ3JhcGgtaWNvbiBwb3B1cC1ncmFwaC1pY29uLSR7b2JzLmlkfVwiPlxuICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIiR7R3JhcGhJY29ufVwiLz5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9wdXAtY29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICA8aDUgY2xhc3M9XCJwb3B1cC1jb250ZW50X19zaXRlLW5hbWVcIj48Yj4ke1xuICAgICAgICAgICAgICAgICAgICAgIHBvaW50Lmdyb3VwLm5hbWVcbiAgICAgICAgICAgICAgICAgICAgfTwvYj48L2g1PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9wdXAtY29udGVudF9fc2V2ZXJpdHlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwicG9wdXAtY29udGVudF9fc2V2ZXJpdHktcFwiPiR7aTE4bi50KFxuICAgICAgICAgICAgICAgICAgICAgICAgICBgZXZlbnRzX292ZXJ2aWV3LnNldmVyaXR5YCxcbiAgICAgICAgICAgICAgICAgICAgICAgICl9PC9wPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCIke1xuICAgICAgICAgICAgICAgICAgICAgICAgICAncG9wdXAtY29udGVudF9fc2V2ZXJpdHktLScgKyBvYnMuc2V2ZXJpdHlcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YiBjbGFzcz1cInBvcHVwLWNvbnRlbnRfX3NldmVyaXR5LWJcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGV2ZW50c19vdmVydmlldy5zZXZlcml0aWVzLiR7b2JzLnNldmVyaXR5fWAsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9iPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIDxociBjbGFzcz1cInBvcHVwLWNvbnRlbnRfX2hyXCIgLz5cblxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9wdXAtY29udGVudF9fZGlzY2hhcmdlLXRpbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3M9XCJwb3B1cC1jb250ZW50X19zZXZlcml0eS1wXCI+JHtpMThuLnQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXZlbnRzX292ZXJ2aWV3LmZpcnN0X3NlZW5gLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9OjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj48YiBpZD1cImZpcnN0LXNlZW4tcG9wdXBcIj48L2I+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwicG9wdXAtY29udGVudF9fc2V2ZXJpdHktcFwiPiR7aTE4bi50KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYGV2ZW50c19vdmVydmlldy5sYXN0X3NlZW5gLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9OjwvcD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj48YiBpZD1cImxhc3Qtc2Vlbi1wb3B1cFwiPjwvYj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgYDtcbiAgfVxufTtcbiJdfQ==
|
|
@@ -1,43 +1,29 @@
|
|
|
1
|
-
<svg
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
<stop offset="0" stop-color="#B1EBE1"/>
|
|
30
|
-
<stop offset="1" stop-color="#C1FAF0"/>
|
|
31
|
-
</linearGradient>
|
|
32
|
-
<path fill="url(#SVGID_2_)" d="M22.5 34.5c0 5.3 3.8 9.9 9.1 10.8V23.7c-5.3.9-9.1 5.5-9.1 10.8z"/>
|
|
33
|
-
<path d="M33.4 46.1c-6.4 0-11.5-5.2-11.5-11.5S27 23 33.4 23s11.5 5.2 11.5 11.5-5.1 11.6-11.5 11.6zm0-21.9c-5.7 0-10.4 4.6-10.4 10.4C23 40.3 27.6 45 33.4 45c5.7 0 10.4-4.6 10.4-10.4s-4.7-10.4-10.4-10.4z"/>
|
|
34
|
-
<path fill="#EBEBEB" d="M33.4 23c6.4 0 11.5 5.2 11.5 11.5s-5.1 11.6-11.5 11.6-11.5-5.2-11.5-11.5S27 23 33.4 23m0-2c-7.5 0-13.5 6.1-13.5 13.5C19.9 42 26 48 33.4 48c7.5 0 13.5-6.1 13.5-13.5 0-7.5-6-13.5-13.5-13.5z" filter="url(#dropshadow)"/>
|
|
35
|
-
<path d="M31.9 24.1v21.4m3-21.8v21.8" class="st6"/>
|
|
36
|
-
<path d="M32.1 23.7h2.6v8.5h-2.6v-8.5zm0 13.1h2.6v8.5h-2.6v-8.5z" class="st0"/>
|
|
37
|
-
<path d="M32.1 41.7h2.8m-2.8-1.9h2.8m-2.8-10.6h2.8m-2.8-1.8h2.6" class="st6"/>
|
|
38
|
-
<circle cx="33.4" cy="34.5" r="2.4" fill="#FFFFFF" stroke="#000000" stroke-miterlimit="10" stroke-width="0.9206"/>
|
|
39
|
-
<path d="M33.9 34h10.6v1.1H33.9V34z"/>
|
|
40
|
-
</g>
|
|
41
|
-
</g>
|
|
42
|
-
</g>
|
|
1
|
+
<svg width="52" height="58" viewBox="0 0 52 58" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<g clip-path="url(#clip0_829_35664)">
|
|
3
|
+
<path d="M43.95 7.47977C39.0876 2.70083 32.5427 0.0229492 25.725 0.0229492C18.9073 0.0229492 12.3623 2.70083 7.49997 7.47977C2.70741 12.2881 0.0174243 18.8009 0.0199692 25.5898C0.00606998 31.4514 2.01362 37.1386 5.70418 41.6926C9.39475 46.2466 14.5426 49.3889 20.28 50.5898L25.74 57.8798L31.21 50.5898C36.9387 49.3717 42.0759 46.2247 45.7634 41.6745C49.4509 37.1243 51.4652 31.4465 51.47 25.5898C51.4764 22.2238 50.815 18.89 49.5242 15.7814C48.2334 12.6728 46.3387 9.85114 43.95 7.47977Z" fill="#F9FAFC"/>
|
|
4
|
+
<path fill-rule="evenodd" clip-rule="evenodd" d="M25.72 3.08008C31.69 3.08008 37.4155 5.45166 41.6369 9.6731C45.8584 13.8945 48.23 19.6201 48.23 25.5901C48.2313 28.5465 47.6499 31.4742 46.5192 34.2058C45.3884 36.9375 43.7304 39.4195 41.6399 41.51C39.5494 43.6005 37.0673 45.2585 34.3357 46.3893C31.6041 47.5201 28.6764 48.1014 25.72 48.1001C19.7499 48.1001 14.0244 45.7285 9.80299 41.507C5.58154 37.2856 3.20996 31.5601 3.20996 25.5901C3.20996 19.6201 5.58154 13.8945 9.80299 9.6731C14.0244 5.45166 19.7499 3.08008 25.72 3.08008V3.08008Z" fill="#B1EBE1"/>
|
|
5
|
+
<path d="M37.51 25.59C37.5242 28.3689 36.5522 31.0627 34.7669 33.1922C32.9815 35.3218 30.4987 36.749 27.76 37.22V14.02C30.4816 14.5041 32.9475 15.9267 34.7288 18.0406C36.5102 20.1544 37.4943 22.8257 37.51 25.59V25.59Z" fill="url(#paint0_linear_829_35664)"/>
|
|
6
|
+
<path d="M14.02 25.59C14.0067 28.3718 14.9815 31.0679 16.7708 33.1979C18.5601 35.3279 21.0477 36.7533 23.79 37.22V14.02C21.0561 14.4813 18.5743 15.8969 16.7855 18.0152C14.9967 20.1336 14.0169 22.8175 14.02 25.59V25.59Z" fill="url(#paint1_linear_829_35664)"/>
|
|
7
|
+
<path d="M25.72 38.03C22.4517 38.0274 19.318 36.7271 17.0079 34.4151C14.6977 32.1031 13.4 28.9684 13.4 25.7C13.3947 22.4208 14.6875 19.2727 16.9959 16.9436C19.3044 14.6145 22.4409 13.2938 25.72 13.27C28.9832 13.278 32.1102 14.5791 34.4158 16.8884C36.7213 19.1977 38.0174 22.3268 38.02 25.59C38.0255 28.8668 36.7358 32.0129 34.4319 34.343C32.128 36.6731 28.9967 37.9984 25.72 38.03ZM25.72 14.55C24.2554 14.5487 22.8049 14.8362 21.4516 15.3961C20.0982 15.956 18.8685 16.7772 17.8329 17.8128C16.7972 18.8485 15.976 20.0782 15.4161 21.4315C14.8562 22.7849 14.5687 24.2354 14.57 25.7C14.57 27.1643 14.8584 28.6142 15.4188 29.9669C15.9791 31.3197 16.8004 32.5489 17.8358 33.5843C18.8712 34.6196 20.1003 35.4409 21.4531 36.0013C22.8059 36.5616 24.2558 36.85 25.72 36.85C27.1846 36.8513 28.6351 36.5638 29.9885 36.004C31.3419 35.4441 32.5716 34.6228 33.6072 33.5872C34.6429 32.5516 35.4641 31.3219 36.024 29.9685C36.5839 28.6151 36.8714 27.1646 36.87 25.7C36.8714 24.2354 36.5839 22.7849 36.024 21.4315C35.4641 20.0782 34.6429 18.8485 33.6072 17.8128C32.5716 16.7772 31.3419 15.956 29.9885 15.3961C28.6351 14.8362 27.1846 14.5487 25.72 14.55V14.55Z" fill="black"/>
|
|
8
|
+
<path d="M25.72 13.2702C28.9832 13.2782 32.1102 14.5794 34.4157 16.8887C36.7213 19.198 38.0174 22.327 38.02 25.5902C38.0254 28.867 36.7357 32.0132 34.4318 34.3433C32.128 36.6734 28.9966 37.9986 25.72 38.0302C22.4516 38.0276 19.318 36.7274 17.0078 34.4153C14.6977 32.1033 13.4 28.9686 13.4 25.7002C13.3946 22.421 14.6874 19.2729 16.9959 16.9438C19.3043 14.6147 22.4408 13.294 25.72 13.2702M25.72 11.1202C21.8831 11.1229 18.2042 12.6483 15.4911 15.3613C12.778 18.0744 11.2526 21.7534 11.25 25.5902C11.2526 29.4271 12.778 33.1061 15.4911 35.8192C18.2042 38.5322 21.8831 40.0576 25.72 40.0602C29.5577 40.0602 33.2382 38.5357 35.9518 35.8221C38.6655 33.1084 40.19 29.4279 40.19 25.5902C40.1979 23.6878 39.8291 21.8026 39.1047 20.0434C38.3803 18.2843 37.3148 16.686 35.9695 15.3407C34.6243 13.9955 33.026 12.9299 31.2668 12.2055C29.5076 11.4812 27.6224 11.1123 25.72 11.1202V11.1202Z" fill="#EBEBEB"/>
|
|
9
|
+
<path d="M27.82 37.38H26.82V14.02H27.82V37.38ZM24.61 37.38H23.61V14.45H24.61V37.38Z" fill="black"/>
|
|
10
|
+
<path d="M24.33 14.02H27.12V23.13H24.33V14.02ZM24.33 28.02H27.12V37.22H24.33V28.02Z" fill="white"/>
|
|
11
|
+
<path d="M27.33 33.8003H24.33V32.8003H27.33V33.8003ZM27.33 31.8003H24.33V30.8003H27.33V31.8003ZM27.33 20.4403H24.33V19.4403H27.33V20.4403ZM27.12 18.5103H24.33V17.5103H27.12V18.5103Z" fill="black"/>
|
|
12
|
+
<path d="M25.73 28.16C27.1494 28.16 28.3 27.0094 28.3 25.59C28.3 24.1706 27.1494 23.02 25.73 23.02C24.3107 23.02 23.16 24.1706 23.16 25.59C23.16 27.0094 24.3107 28.16 25.73 28.16Z" fill="white"/>
|
|
13
|
+
<path d="M25.72 28.6603C24.9076 28.6576 24.1293 28.333 23.5557 27.7576C22.9821 27.1821 22.66 26.4028 22.66 25.5903C22.66 25.1884 22.7392 24.7905 22.893 24.4193C23.0467 24.048 23.2721 23.7107 23.5563 23.4265C23.8404 23.1424 24.1778 22.917 24.549 22.7632C24.9203 22.6094 25.3182 22.5303 25.72 22.5303C26.5325 22.5303 27.3119 22.8523 27.8873 23.4259C28.4628 23.9995 28.7874 24.7778 28.79 25.5903C28.7874 26.4037 28.4631 27.183 27.8879 27.7582C27.3128 28.3333 26.5334 28.6576 25.72 28.6603ZM25.72 23.5103C25.1692 23.5129 24.6417 23.7329 24.2522 24.1224C23.8627 24.5119 23.6427 25.0394 23.64 25.5903C23.64 26.1419 23.8592 26.671 24.2493 27.0611C24.6393 27.4511 25.1684 27.6703 25.72 27.6703C26.2717 27.6703 26.8007 27.4511 27.1908 27.0611C27.5809 26.671 27.8 26.1419 27.8 25.5903C27.8 25.0386 27.5809 24.5096 27.1908 24.1195C26.8007 23.7294 26.2717 23.5103 25.72 23.5103V23.5103Z" fill="black"/>
|
|
14
|
+
<path d="M26.26 25.0601H37.62V26.2201H26.26V25.0601Z" fill="black"/>
|
|
15
|
+
</g>
|
|
16
|
+
<defs>
|
|
17
|
+
<linearGradient id="paint0_linear_829_35664" x1="32.64" y1="39.83" x2="32.64" y2="12.92" gradientUnits="userSpaceOnUse">
|
|
18
|
+
<stop stop-color="#B1EBE1"/>
|
|
19
|
+
<stop offset="1" stop-color="#C1FAF0"/>
|
|
20
|
+
</linearGradient>
|
|
21
|
+
<linearGradient id="paint1_linear_829_35664" x1="18.92" y1="39.83" x2="18.92" y2="12.92" gradientUnits="userSpaceOnUse">
|
|
22
|
+
<stop stop-color="#B1EBE1"/>
|
|
23
|
+
<stop offset="1" stop-color="#C1FAF0"/>
|
|
24
|
+
</linearGradient>
|
|
25
|
+
<clipPath id="clip0_829_35664">
|
|
26
|
+
<rect width="51.45" height="57.86" fill="white"/>
|
|
27
|
+
</clipPath>
|
|
28
|
+
</defs>
|
|
43
29
|
</svg>
|
|
@@ -1,39 +1,29 @@
|
|
|
1
|
-
<svg
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
<path fill="url(#o0xnve2grc)" d="M24.2 28H27.9V29.3H24.2z"/>
|
|
30
|
-
<linearGradient id="8v5788hrxd" x1="29.329" x2="43.329" y1="1031.05" y2="1031.05" gradientTransform="matrix(1 0 0 1 0 -992)" gradientUnits="userSpaceOnUse">
|
|
31
|
-
<stop offset="0" stop-color="#EFC530"/>
|
|
32
|
-
<stop offset="1" stop-color="#FCEDB6"/>
|
|
33
|
-
</linearGradient>
|
|
34
|
-
<path fill="url(#8v5788hrxd)" d="M38.9 36.4c-.3.1-.5 0-.7-.3.2 0-.1-.2-.1-.3v-1.2l-4.3 1.8c-.3.1-.6 0-.8-.3v-1.5l-3.8 1.6.1 7.3h13.9v-8.9l-4.3 1.8zm2.5 5.1c0 .4-.3.7-.7.7h-9.2c-.4 0-.7-.3-.7-.7v-3.1c0-.4.3-.7.7-.7h9.3c.4 0 .7.3.7.7l-.1 3.1z"/>
|
|
35
|
-
<path d="M40.7 37.7h-9.2c-.4 0-.7.3-.7.7v3.1c0 .4.3.7.7.7h9.3c.4 0 .7-.3.7-.7v-3.1c-.1-.4-.4-.7-.8-.7zm-8.6 1.4h1.8v1.8h-1.8v-1.8zm3.1 0H37v1.8h-1.8v-1.8zm4.9 1.7h-1.8V39h1.8v1.8z"/>
|
|
36
|
-
<path d="M44.5 43.5h-.3v-9.9c0-.4-.3-.7-.7-.7-.1 0-.2 0-.3.1l-4.1 1.8v-1.2c0-.4-.3-.7-.7-.7-.1 0-.2 0-.3.1L34 34.8v-1.2c0-.4-.3-.7-.7-.7-.1 0-.2 0-.3.1l-4.1 1.8v-7.4c0-.4-.3-.7-.7-.7h-4.4c-.4 0-.7.3-.7.7v16.1h-.3c-.4 0-.7.3-.7.7s.3.7.7.7h21.7c.4 0 .7-.3.7-.7s-.3-.7-.7-.7zM27.9 28v1.3h-3.7V28h3.7zm-3.6 2.7H28v12.8h-3.7V30.7zm5 12.8v-7.3l3.7-1.6v1.2c0 .4.3.7.7.7.1 0 .2 0 .3-.1l4.1-1.8v1.2c0 .4.3.7.7.7.1 0 .2 0 .3-.1l4.1-1.8v8.9H29.3zM24.4 25.3c.4 0 .7-.3.7-.7 0-.1.1-.2.2-.2h.4c.9 0 1.5-.7 1.5-1.5 0-.4-.3-.7-.7-.7s-.7.3-.7.7c0 .1-.1.2-.2.2h-.4c-.9 0-1.5.7-1.5 1.5 0 .4.3.7.7.7zM27.5 26.2c.4 0 .7-.3.7-.7 0-.1.1-.2.2-.2h.4c.9 0 1.5-.7 1.5-1.5 0-.4-.3-.7-.7-.7s-.7.3-.7.7c0 .1-.1.2-.2.2h-.4c-.9 0-1.5.7-1.5 1.5 0 .4.3.7.7.7z"/>
|
|
37
|
-
</g>
|
|
38
|
-
</g>
|
|
1
|
+
<svg width="52" height="58" viewBox="0 0 52 58" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<g clip-path="url(#clip0_829_35681)">
|
|
3
|
+
<path d="M43.94 7.48001C39.0855 2.68973 32.5399 0.00390625 25.72 0.00390625C18.9 0.00390625 12.3544 2.68973 7.49995 7.48001C2.70005 12.2851 0.00271309 18.7983 -5.03797e-05 25.59C-0.0139496 31.4517 1.99359 37.1389 5.68415 41.6929C9.37472 46.2469 14.5226 49.3892 20.2599 50.59L25.7299 57.86L31.1999 50.57C36.9287 49.352 42.0659 46.2049 45.7534 41.6548C49.4408 37.1046 51.4552 31.4268 51.4599 25.57C51.4654 22.2072 50.8035 18.8767 49.5126 15.7715C48.2218 12.6663 46.3277 9.84802 43.94 7.48001V7.48001Z" fill="#F9FAFC"/>
|
|
4
|
+
<path fill-rule="evenodd" clip-rule="evenodd" d="M25.73 3.08008C31.6869 3.11942 37.3886 5.50394 41.5999 9.71717C45.8113 13.9304 48.1933 19.6331 48.23 25.5901C48.1959 31.5479 45.8147 37.2521 41.6028 41.4659C37.3909 45.6796 31.6877 48.0633 25.73 48.1001C19.7713 48.0634 14.0671 45.68 9.85356 41.4665C5.64005 37.253 3.25669 31.5488 3.21997 25.5901C3.25669 19.6314 5.64005 13.9272 9.85356 9.71368C14.0671 5.50017 19.7713 3.1168 25.73 3.08008Z" fill="#F3CE80"/>
|
|
5
|
+
<path d="M39.01 33.8502V24.6302C39.0127 24.2495 38.9398 23.872 38.7956 23.5196C38.6515 23.1673 38.4389 22.847 38.1701 22.5773C37.9013 22.3076 37.5818 22.0939 37.2299 21.9485C36.878 21.8031 36.5008 21.7289 36.12 21.7302C35.7186 21.7501 35.3217 21.8241 34.9401 21.9502L33.01 22.8102C32.74 22.4656 32.3933 22.1885 31.9976 22.0011C31.6018 21.8136 31.1678 21.7209 30.73 21.7302C30.3286 21.7501 29.9317 21.8241 29.5501 21.9502L27.62 22.8102C27.353 22.4696 27.0112 22.1951 26.621 22.0078C26.2309 21.8205 25.8028 21.7255 25.37 21.7302C24.9686 21.7501 24.5717 21.8241 24.1901 21.9502L22.8001 22.5902V17.9802C22.8245 17.689 22.787 17.3959 22.6901 17.1202C23.1222 16.7482 23.4698 16.288 23.7095 15.7706C23.9493 15.2532 24.0756 14.6905 24.0801 14.1202C24.0827 13.742 24.0108 13.367 23.8685 13.0166C23.7262 12.6661 23.5163 12.3472 23.2507 12.0779C22.9851 11.8086 22.6691 11.5943 22.3207 11.4471C21.9723 11.2999 21.5983 11.2229 21.2201 11.2202C20.8779 11.2381 20.5405 11.3089 20.2201 11.4302C19.9575 11.0585 19.61 10.7548 19.2065 10.5444C18.803 10.3339 18.3551 10.2228 17.9 10.2202C17.4749 10.2184 17.0556 10.3193 16.6778 10.5143C16.3 10.7093 15.9748 10.9926 15.73 11.3402C14.8756 11.5261 14.1111 12.0003 13.5648 12.6831C13.0186 13.3659 12.7238 14.2158 12.73 15.0902C12.7397 15.4928 12.814 15.8912 12.9501 16.2702C12.5939 16.7689 12.4049 17.3675 12.41 17.9802V33.8502C12.091 34.1068 11.8349 34.4332 11.6616 34.8041C11.4882 35.1751 11.4022 35.5808 11.41 35.9902C11.4074 36.3705 11.4803 36.7475 11.6246 37.0993C11.7689 37.4512 11.9817 37.7708 12.2506 38.0397C12.5195 38.3086 12.8391 38.5214 13.191 38.6657C13.5428 38.81 13.9198 38.8829 14.3001 38.8802H37.02C37.4008 38.8829 37.7783 38.81 38.1306 38.6658C38.483 38.5217 38.8033 38.3091 39.073 38.0403C39.3427 37.7715 39.5564 37.452 39.7018 37.1001C39.8472 36.7482 39.9214 36.371 39.9201 35.9902C39.9184 35.5909 39.8371 35.196 39.6808 34.8285C39.5246 34.461 39.2965 34.1284 39.01 33.8502V33.8502Z" fill="#EBEBEB"/>
|
|
6
|
+
<path d="M15.97 21.52H19.97V35.22H15.97V21.52Z" fill="url(#paint0_linear_829_35681)"/>
|
|
7
|
+
<path d="M15.86 18.6299H19.86V20.0199H15.86V18.6299Z" fill="url(#paint1_linear_829_35681)"/>
|
|
8
|
+
<path d="M31.62 27.6302C31.3 27.7402 31.08 27.6302 30.87 27.3102C31.08 27.3102 30.76 27.0902 30.76 26.9902V25.7002L26.15 27.6302C25.9918 27.6852 25.8194 27.6833 25.6624 27.6249C25.5054 27.5665 25.3737 27.4552 25.29 27.3102V25.7002L21.22 27.4202L21.33 35.2202H36.23V25.6802L31.62 27.6302ZM34.3 33.1002C34.3027 33.1994 34.2852 33.2982 34.2485 33.3904C34.2118 33.4827 34.1566 33.5664 34.0864 33.6366C34.0162 33.7068 33.9325 33.762 33.8402 33.7987C33.748 33.8354 33.6492 33.8529 33.55 33.8502H23.73C23.6307 33.8529 23.532 33.8354 23.4397 33.7987C23.3475 33.762 23.2637 33.7068 23.1935 33.6366C23.1233 33.5664 23.0681 33.4827 23.0314 33.3904C22.9947 33.2982 22.9772 33.1994 22.98 33.1002V29.7702C22.9772 29.6709 22.9947 29.5722 23.0314 29.4799C23.0681 29.3877 23.1233 29.3039 23.1935 29.2337C23.2637 29.1635 23.3475 29.1084 23.4397 29.0716C23.532 29.0349 23.6307 29.0174 23.73 29.0202H33.73C33.8292 29.0174 33.928 29.0349 34.0202 29.0716C34.1124 29.1084 34.1962 29.1635 34.2664 29.2337C34.3366 29.3039 34.3918 29.3877 34.4285 29.4799C34.4652 29.5722 34.4827 29.6709 34.48 29.7702L34.3 33.1002Z" fill="url(#paint2_linear_829_35681)"/>
|
|
9
|
+
<path d="M33.55 29.02H23.73C23.6308 29.0173 23.532 29.0348 23.4398 29.0715C23.3475 29.1082 23.2638 29.1633 23.1935 29.2335C23.1233 29.3037 23.0682 29.3875 23.0315 29.4798C22.9948 29.572 22.9773 29.6708 22.98 29.77V33.1C22.9773 33.1993 22.9948 33.298 23.0315 33.3903C23.0682 33.4825 23.1233 33.5663 23.1935 33.6365C23.2638 33.7067 23.3475 33.7618 23.4398 33.7985C23.532 33.8353 23.6308 33.8528 23.73 33.85H33.73C33.8293 33.8528 33.928 33.8353 34.0203 33.7985C34.1125 33.7618 34.1963 33.7067 34.2665 33.6365C34.3367 33.5663 34.3918 33.4825 34.4286 33.3903C34.4653 33.298 34.4828 33.1993 34.48 33.1V29.77C34.4456 29.5519 34.3314 29.3544 34.1596 29.2158C33.9877 29.0772 33.7705 29.0074 33.55 29.02V29.02ZM24.33 30.52H26.26V32.45H24.33V30.52ZM27.65 30.52H29.58V32.45H27.65V30.52ZM32.9 32.35H30.97V30.42H32.9V32.35Z" fill="black"/>
|
|
10
|
+
<path d="M37.62 35.2199H37.3V24.6299C37.3028 24.5307 37.2853 24.4319 37.2485 24.3397C37.2118 24.2474 37.1567 24.1637 37.0865 24.0935C37.0163 24.0233 36.9325 23.9681 36.8403 23.9314C36.748 23.8947 36.6493 23.8772 36.55 23.8799C36.4918 23.8715 36.4324 23.8771 36.3767 23.8962C36.321 23.9153 36.2708 23.9475 36.23 23.9899L31.83 25.9099V24.6299C31.8328 24.5307 31.8153 24.4319 31.7785 24.3397C31.7418 24.2474 31.6867 24.1637 31.6165 24.0935C31.5463 24.0233 31.4625 23.9681 31.3703 23.9314C31.278 23.8947 31.1793 23.8772 31.08 23.8799C31.0218 23.8723 30.9626 23.8783 30.9071 23.8973C30.8516 23.9164 30.8012 23.9481 30.76 23.9899L26.37 25.9099V24.6299C26.3714 24.5311 26.3529 24.4329 26.3157 24.3413C26.2785 24.2497 26.2233 24.1665 26.1533 24.0966C26.0834 24.0267 26.0002 23.9715 25.9086 23.9343C25.817 23.8971 25.7189 23.8786 25.62 23.8799C25.5603 23.8722 25.4996 23.8781 25.4424 23.8972C25.3853 23.9162 25.3332 23.9479 25.29 23.9899L20.9 25.9099V17.9799C20.9028 17.8807 20.8853 17.7819 20.8485 17.6897C20.8118 17.5974 20.7567 17.5137 20.6865 17.4435C20.6163 17.3733 20.5325 17.3181 20.4403 17.2814C20.348 17.2447 20.2493 17.2272 20.15 17.2299H15.43C15.3308 17.2272 15.232 17.2447 15.1398 17.2814C15.0475 17.3181 14.9637 17.3733 14.8935 17.4435C14.8233 17.5137 14.7682 17.5974 14.7315 17.6897C14.6948 17.7819 14.6773 17.8807 14.68 17.9799V35.2199H14.36C14.2608 35.2172 14.162 35.2347 14.0698 35.2714C13.9775 35.3081 13.8938 35.3633 13.8236 35.4335C13.7534 35.5037 13.6982 35.5874 13.6615 35.6797C13.6248 35.7719 13.6073 35.8707 13.61 35.9699C13.6073 36.0692 13.6248 36.1679 13.6615 36.2602C13.6982 36.3524 13.7534 36.4362 13.8236 36.5064C13.8938 36.5766 13.9775 36.6317 14.0698 36.6685C14.162 36.7052 14.2608 36.7227 14.36 36.7199H37.62C37.7193 36.7227 37.818 36.7052 37.9103 36.6685C38.0025 36.6317 38.0863 36.5766 38.1565 36.5064C38.2267 36.4362 38.2818 36.3524 38.3186 36.2602C38.3553 36.1679 38.3728 36.0692 38.37 35.9699C38.3728 35.8707 38.3553 35.7719 38.3186 35.6797C38.2818 35.5874 38.2267 35.5037 38.1565 35.4335C38.0863 35.3633 38.0025 35.3081 37.9103 35.2714C37.818 35.2347 37.7193 35.2172 37.62 35.2199V35.2199ZM19.83 18.6299V20.0199H15.83V18.6299H19.83ZM15.97 21.5199H19.97V35.2199H15.97V21.5199ZM21.33 35.2199V27.4199L25.33 25.6999V26.9899C25.3287 27.0888 25.3471 27.1869 25.3844 27.2785C25.4216 27.3701 25.4768 27.4533 25.5467 27.5233C25.6166 27.5932 25.6998 27.6484 25.7914 27.6856C25.883 27.7228 25.9812 27.7413 26.08 27.7399C26.1398 27.7476 26.2005 27.7417 26.2576 27.7227C26.3147 27.7036 26.3668 27.6719 26.41 27.6299L30.73 25.6999V26.9899C30.7273 27.0892 30.7448 27.1879 30.7815 27.2802C30.8182 27.3724 30.8733 27.4562 30.9436 27.5264C31.0138 27.5966 31.0975 27.6517 31.1898 27.6885C31.282 27.7252 31.3808 27.7427 31.48 27.7399C31.5383 27.7484 31.5977 27.7428 31.6533 27.7237C31.709 27.7045 31.7593 27.6724 31.8 27.6299L36.2 25.6999V35.2199H21.33ZM16.08 15.7099C16.1789 15.7113 16.277 15.6928 16.3686 15.6556C16.4602 15.6184 16.5434 15.5632 16.6133 15.4933C16.6833 15.4233 16.7385 15.3401 16.7757 15.2485C16.8129 15.1569 16.8314 15.0588 16.83 14.9599C16.8325 14.905 16.8554 14.853 16.8942 14.8142C16.9331 14.7753 16.9851 14.7524 17.04 14.7499H17.47C17.6826 14.754 17.8938 14.7151 18.0909 14.6357C18.2881 14.5562 18.4672 14.4378 18.6175 14.2875C18.7679 14.1371 18.8863 13.958 18.9658 13.7608C19.0452 13.5637 19.0841 13.3525 19.08 13.1399C19.0814 13.0411 19.0629 12.9429 19.0257 12.8513C18.9885 12.7597 18.9333 12.6765 18.8633 12.6066C18.7934 12.5367 18.7102 12.4815 18.6186 12.4443C18.527 12.4071 18.4289 12.3886 18.33 12.3899C18.2308 12.3872 18.132 12.4047 18.0398 12.4414C17.9475 12.4781 17.8638 12.5333 17.7936 12.6035C17.7234 12.6737 17.6682 12.7574 17.6315 12.8497C17.5948 12.9419 17.5773 13.0407 17.58 13.1399C17.5752 13.1957 17.5502 13.2478 17.5097 13.2865C17.4692 13.3251 17.416 13.3477 17.36 13.3499H16.93C16.7175 13.3459 16.5063 13.3847 16.3091 13.4642C16.1119 13.5437 15.9328 13.6621 15.7825 13.8124C15.6322 13.9627 15.5137 14.1418 15.4343 14.339C15.3548 14.5362 15.3159 14.7474 15.32 14.9599C15.3159 15.0613 15.3326 15.1625 15.3692 15.2571C15.4058 15.3517 15.4615 15.4378 15.5327 15.51C15.604 15.5823 15.6894 15.639 15.7835 15.6769C15.8777 15.7147 15.9786 15.7328 16.08 15.7299V15.7099ZM19.4 16.7099C19.4989 16.7113 19.597 16.6928 19.6886 16.6556C19.7802 16.6184 19.8634 16.5632 19.9333 16.4933C20.0033 16.4233 20.0584 16.3401 20.0957 16.2485C20.1329 16.1569 20.1514 16.0588 20.15 15.9599C20.1542 15.9047 20.1774 15.8525 20.2157 15.8124C20.254 15.7723 20.305 15.7467 20.36 15.7399H20.79C21.0026 15.744 21.2138 15.7051 21.4109 15.6257C21.6081 15.5462 21.7872 15.4278 21.9375 15.2775C22.0879 15.1271 22.2063 14.948 22.2858 14.7508C22.3652 14.5537 22.4041 14.3425 22.4 14.1299C22.4028 14.0307 22.3853 13.9319 22.3485 13.8397C22.3118 13.7474 22.2567 13.6637 22.1865 13.5935C22.1163 13.5233 22.0325 13.4681 21.9403 13.4314C21.848 13.3947 21.7493 13.3772 21.65 13.3799C21.5508 13.3772 21.452 13.3947 21.3598 13.4314C21.2675 13.4681 21.1837 13.5233 21.1135 13.5935C21.0433 13.6637 20.9882 13.7474 20.9515 13.8397C20.9148 13.9319 20.8973 14.0307 20.9 14.1299C20.8954 14.1868 20.8708 14.2401 20.8305 14.2804C20.7902 14.3207 20.7368 14.3454 20.68 14.3499H20.26C20.0475 14.3459 19.8363 14.3847 19.6391 14.4642C19.4419 14.5437 19.2628 14.6621 19.1125 14.8124C18.9622 14.9627 18.8437 15.1418 18.7643 15.339C18.6848 15.5362 18.6459 15.7474 18.65 15.9599C18.65 16.058 18.6695 16.155 18.7073 16.2454C18.7451 16.3359 18.8005 16.4179 18.8703 16.4868C18.9401 16.5556 19.0228 16.6099 19.1138 16.6465C19.2047 16.6831 19.302 16.7013 19.4 16.6999V16.7099Z" fill="black"/>
|
|
11
|
+
</g>
|
|
12
|
+
<defs>
|
|
13
|
+
<linearGradient id="paint0_linear_829_35681" x1="15.9" y1="28.38" x2="19.82" y2="28.38" gradientUnits="userSpaceOnUse">
|
|
14
|
+
<stop stop-color="#F37C1C"/>
|
|
15
|
+
<stop offset="1" stop-color="#FCC191"/>
|
|
16
|
+
</linearGradient>
|
|
17
|
+
<linearGradient id="paint1_linear_829_35681" x1="15.8" y1="19.3199" x2="19.71" y2="19.3199" gradientUnits="userSpaceOnUse">
|
|
18
|
+
<stop stop-color="#F37C1C"/>
|
|
19
|
+
<stop offset="1" stop-color="#FCC191"/>
|
|
20
|
+
</linearGradient>
|
|
21
|
+
<linearGradient id="paint2_linear_829_35681" x1="21.36" y1="30.4702" x2="36.37" y2="30.4702" gradientUnits="userSpaceOnUse">
|
|
22
|
+
<stop stop-color="#EFC530"/>
|
|
23
|
+
<stop offset="1" stop-color="#FCEDB6"/>
|
|
24
|
+
</linearGradient>
|
|
25
|
+
<clipPath id="clip0_829_35681">
|
|
26
|
+
<rect width="51.45" height="57.86" fill="white"/>
|
|
27
|
+
</clipPath>
|
|
28
|
+
</defs>
|
|
39
29
|
</svg>
|