bry-biometric-collector 2.2.16 → 2.2.17-RC01

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.
@@ -0,0 +1,1280 @@
1
+ import { aK as Te, S as ae, q as ie, r as se, t as oe, w as D, P as Z, x as R, y as Y, B as x, $ as G, T as Q, ab as X, C as ne, O as te, bb as T, bc as le, bd as ue, E as v, H as V, I as j, J as _, N as g, be as p, aV as L, G as E, bf as C, K as A, L as P, bg as W, M as S, bh as me, aF as q, W as ce, D as H, aW as pe, aX as Ce, b0 as F, aY as Re, a_ as Ye, b1 as xe, bi as Ne, X as re, ai as Me, ba as fe, b5 as De, bj as B } from "./main_ee4a3972_2.2.17-RC01.js";
2
+ var U = /* @__PURE__ */ ((l) => (l.OK = "OK", l.DEVICE_NOT_FOUND_ERROR = "DEVICE_NOT_FOUND_ERROR", l.CAMERA_DENIED_ERROR = "CAMERA_DENIED_ERROR", l.CAMERA_IN_USE_ERROR = "CAMERA_IN_USE_ERROR", l.CAMERA_CLOSED_ERROR = "CAMERA_CLOSED_ERROR", l.CAMERA_UNSUPPORTED = "CAMERA_UNSUPPORTED", l.CAMERA_ORIENTATION_PORTRAIT = "CAMERA_ORIENTATION_PORTRAIT", l.CAMERA_ORIENTATION_LANDSCAPE = "CAMERA_ORIENTATION_LANDSCAPE", l))(U || {});
3
+ const $ = Te(
4
+ "OK"
5
+ /* OK */
6
+ ), y = "src/lib/faceTab/cameraStatus/CameraStatus.svelte";
7
+ function je(l) {
8
+ let e, t, s, i, c = (
9
+ /*$_*/
10
+ l[2]("cameraStatus.deviceMustBeInLandscape") + ""
11
+ ), r, u, o, n = (
12
+ /*$_*/
13
+ l[2]("cameraStatus.rotateDeviceOrPressButton") + ""
14
+ ), N, h, d, z = (
15
+ /*$_*/
16
+ l[2]("cameraStatus.adjustOrientation") + ""
17
+ ), w, f, m, b = [
18
+ { class: "text-[8em] mx-auto" },
19
+ { xmlns: "http://www.w3.org/2000/svg" },
20
+ { width: "1em" },
21
+ { height: "1em" },
22
+ { viewBox: "0 0 24 24" },
23
+ /*$$props*/
24
+ l[5]
25
+ ], k = {};
26
+ for (let I = 0; I < b.length; I += 1)
27
+ k = T(k, b[I]);
28
+ const O = {
29
+ c: function() {
30
+ e = p("svg"), t = p("path"), s = L(), i = v("span"), r = E(c), u = L(), o = v("span"), N = E(n), h = L(), d = v("button"), w = E(z), j(t, "fill", "currentColor"), j(t, "d", "M9 1H3a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2m0 14H3V3h6zm12-2h-8v2h8v6H9v-1H6v1a2 2 0 0 0 2 2h13a2 2 0 0 0 2-2v-6a2 2 0 0 0-2-2m2-3l-4-2l1.91-.91A7.52 7.52 0 0 0 14 2.5V1a9 9 0 0 1 9 9"), _(t, y, 181, 6, 8374), C(e, k), _(e, y, 173, 4, 8201), j(i, "class", "text-xl font-bold text-center"), _(i, y, 186, 4, 8654), j(o, "class", "m-auto text-base block text-center"), _(o, y, 187, 4, 8754), j(d, "class", "z-20 ce-dui-btn ce-dui-btn-outline ce-dui-btn-primary m-auto"), _(d, y, 188, 4, 8861);
31
+ },
32
+ m: function(a, M) {
33
+ D(a, e, M), A(e, t), D(a, s, M), D(a, i, M), A(i, r), D(a, u, M), D(a, o, M), A(o, N), D(a, h, M), D(a, d, M), A(d, w), f || (m = P(
34
+ d,
35
+ "click",
36
+ /*click_handler_6*/
37
+ l[12],
38
+ !1,
39
+ !1,
40
+ !1,
41
+ !1
42
+ ), f = !0);
43
+ },
44
+ p: function(a, M) {
45
+ C(e, k = W(b, [
46
+ { class: "text-[8em] mx-auto" },
47
+ { xmlns: "http://www.w3.org/2000/svg" },
48
+ { width: "1em" },
49
+ { height: "1em" },
50
+ { viewBox: "0 0 24 24" },
51
+ M & /*$$props*/
52
+ 32 && /*$$props*/
53
+ a[5]
54
+ ])), M & /*$_*/
55
+ 4 && c !== (c = /*$_*/
56
+ a[2]("cameraStatus.deviceMustBeInLandscape") + "") && S(r, c), M & /*$_*/
57
+ 4 && n !== (n = /*$_*/
58
+ a[2]("cameraStatus.rotateDeviceOrPressButton") + "") && S(N, n), M & /*$_*/
59
+ 4 && z !== (z = /*$_*/
60
+ a[2]("cameraStatus.adjustOrientation") + "") && S(w, z);
61
+ },
62
+ d: function(a) {
63
+ a && g(e), a && g(s), a && g(i), a && g(u), a && g(o), a && g(h), a && g(d), f = !1, m();
64
+ }
65
+ };
66
+ return R("SvelteRegisterBlock", {
67
+ block: O,
68
+ id: je.name,
69
+ type: "if",
70
+ source: "(172:115) ",
71
+ ctx: l
72
+ }), O;
73
+ }
74
+ function ge(l) {
75
+ let e, t, s, i, c = (
76
+ /*$_*/
77
+ l[2]("cameraStatus.deviceMustBeInPortrait") + ""
78
+ ), r, u, o, n = (
79
+ /*$_*/
80
+ l[2]("cameraStatus.rotateDeviceOrPressButton") + ""
81
+ ), N, h, d, z = (
82
+ /*$_*/
83
+ l[2]("cameraStatus.adjustOrientation") + ""
84
+ ), w, f, m, b = [
85
+ { class: "text-[8em] mx-auto" },
86
+ { xmlns: "http://www.w3.org/2000/svg" },
87
+ { width: "1em" },
88
+ { height: "1em" },
89
+ { viewBox: "0 0 24 24" },
90
+ /*$$props*/
91
+ l[5]
92
+ ], k = {};
93
+ for (let I = 0; I < b.length; I += 1)
94
+ k = T(k, b[I]);
95
+ const O = {
96
+ c: function() {
97
+ e = p("svg"), t = p("path"), s = L(), i = v("span"), r = E(c), u = L(), o = v("span"), N = E(n), h = L(), d = v("button"), w = E(z), j(t, "fill", "currentColor"), j(t, "d", "M9 1H3a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2h1v-3H3V3h6v8h2V3a2 2 0 0 0-2-2m14 20v-6a2 2 0 0 0-2-2H8a2 2 0 0 0-2 2v6a2 2 0 0 0 2 2h13a2 2 0 0 0 2-2M9 21v-6h12v6zm14-11h-1.5c0-3-1.81-5.73-4.58-6.91L16 5l-2-4a9 9 0 0 1 9 9"), _(t, y, 157, 6, 7318), C(e, k), _(e, y, 149, 4, 7145), j(i, "class", "text-xl font-bold text-center"), _(i, y, 162, 4, 7602), j(o, "class", "m-auto text-base block text-center"), _(o, y, 163, 4, 7701), j(d, "class", "z-20 ce-dui-btn ce-dui-btn-outline ce-dui-btn-primary m-auto"), _(d, y, 164, 4, 7808);
98
+ },
99
+ m: function(a, M) {
100
+ D(a, e, M), A(e, t), D(a, s, M), D(a, i, M), A(i, r), D(a, u, M), D(a, o, M), A(o, N), D(a, h, M), D(a, d, M), A(d, w), f || (m = P(
101
+ d,
102
+ "click",
103
+ /*click_handler_5*/
104
+ l[11],
105
+ !1,
106
+ !1,
107
+ !1,
108
+ !1
109
+ ), f = !0);
110
+ },
111
+ p: function(a, M) {
112
+ C(e, k = W(b, [
113
+ { class: "text-[8em] mx-auto" },
114
+ { xmlns: "http://www.w3.org/2000/svg" },
115
+ { width: "1em" },
116
+ { height: "1em" },
117
+ { viewBox: "0 0 24 24" },
118
+ M & /*$$props*/
119
+ 32 && /*$$props*/
120
+ a[5]
121
+ ])), M & /*$_*/
122
+ 4 && c !== (c = /*$_*/
123
+ a[2]("cameraStatus.deviceMustBeInPortrait") + "") && S(r, c), M & /*$_*/
124
+ 4 && n !== (n = /*$_*/
125
+ a[2]("cameraStatus.rotateDeviceOrPressButton") + "") && S(N, n), M & /*$_*/
126
+ 4 && z !== (z = /*$_*/
127
+ a[2]("cameraStatus.adjustOrientation") + "") && S(w, z);
128
+ },
129
+ d: function(a) {
130
+ a && g(e), a && g(s), a && g(i), a && g(u), a && g(o), a && g(h), a && g(d), f = !1, m();
131
+ }
132
+ };
133
+ return R("SvelteRegisterBlock", {
134
+ block: O,
135
+ id: ge.name,
136
+ type: "if",
137
+ source: "(148:110) ",
138
+ ctx: l
139
+ }), O;
140
+ }
141
+ function Ie(l) {
142
+ let e, t, s, i, c = (
143
+ /*$_*/
144
+ l[2]("cameraStatus.cameraNotSupported") + ""
145
+ ), r, u, o, n = (
146
+ /*$_*/
147
+ l[2]("cameraStatus.connectAnotherCamera") + ""
148
+ ), N, h, d, z = (
149
+ /*$_*/
150
+ l[2]("cameraStatus.restart") + ""
151
+ ), w, f, m, b = [
152
+ { class: "text-[8em] mx-auto" },
153
+ { xmlns: "http://www.w3.org/2000/svg" },
154
+ { width: "1em" },
155
+ { height: "1em" },
156
+ { viewBox: "0 0 256 256" },
157
+ /*$$props*/
158
+ l[5]
159
+ ], k = {};
160
+ for (let I = 0; I < b.length; I += 1)
161
+ k = T(k, b[I]);
162
+ const O = {
163
+ c: function() {
164
+ e = p("svg"), t = p("path"), s = L(), i = v("span"), r = E(c), u = L(), o = v("span"), N = E(n), h = L(), d = v("button"), w = E(z), j(t, "fill", "currentColor"), j(t, "d", "M249.45 69.31a12 12 0 0 0-12.51 1L212 88.43V72a20 20 0 0 0-20-20h-68.12a12 12 0 0 0 0 24H188v68a12 12 0 0 0 4.46 9.33c.15.13.31.25.48.38l44 32A12 12 0 0 0 256 176V80a12 12 0 0 0-6.55-10.69M232 152.43l-20-14.54v-19.78l20-14.54ZM56.88 31.93a12 12 0 1 0-17.76 16.14L42.69 52H32a20 20 0 0 0-20 20v112a20 20 0 0 0 20 20h148.87l18.25 20.07a12 12 0 0 0 17.76-16.14ZM36 180V76h28.51l94.55 104Z"), _(t, y, 134, 6, 6151), C(e, k), _(e, y, 126, 4, 5976), j(i, "class", "text-xl font-bold text-center"), _(i, y, 139, 4, 6607), j(o, "class", "m-auto text-base block text-center"), _(o, y, 140, 4, 6702), j(d, "class", "z-20 ce-dui-btn ce-dui-btn-outline ce-dui-btn-primary m-auto"), _(d, y, 141, 4, 6804);
165
+ },
166
+ m: function(a, M) {
167
+ D(a, e, M), A(e, t), D(a, s, M), D(a, i, M), A(i, r), D(a, u, M), D(a, o, M), A(o, N), D(a, h, M), D(a, d, M), A(d, w), f || (m = P(
168
+ d,
169
+ "click",
170
+ /*click_handler_4*/
171
+ l[10],
172
+ !1,
173
+ !1,
174
+ !1,
175
+ !1
176
+ ), f = !0);
177
+ },
178
+ p: function(a, M) {
179
+ C(e, k = W(b, [
180
+ { class: "text-[8em] mx-auto" },
181
+ { xmlns: "http://www.w3.org/2000/svg" },
182
+ { width: "1em" },
183
+ { height: "1em" },
184
+ { viewBox: "0 0 256 256" },
185
+ M & /*$$props*/
186
+ 32 && /*$$props*/
187
+ a[5]
188
+ ])), M & /*$_*/
189
+ 4 && c !== (c = /*$_*/
190
+ a[2]("cameraStatus.cameraNotSupported") + "") && S(r, c), M & /*$_*/
191
+ 4 && n !== (n = /*$_*/
192
+ a[2]("cameraStatus.connectAnotherCamera") + "") && S(N, n), M & /*$_*/
193
+ 4 && z !== (z = /*$_*/
194
+ a[2]("cameraStatus.restart") + "") && S(w, z);
195
+ },
196
+ d: function(a) {
197
+ a && g(e), a && g(s), a && g(i), a && g(u), a && g(o), a && g(h), a && g(d), f = !1, m();
198
+ }
199
+ };
200
+ return R("SvelteRegisterBlock", {
201
+ block: O,
202
+ id: Ie.name,
203
+ type: "if",
204
+ source: "(125:71) ",
205
+ ctx: l
206
+ }), O;
207
+ }
208
+ function _e(l) {
209
+ let e, t, s, i, c = (
210
+ /*$_*/
211
+ l[2]("cameraStatus.stayOnSameTab") + ""
212
+ ), r, u, o, n = (
213
+ /*$_*/
214
+ l[2]("cameraStatus.clickRestartToRecapture") + ""
215
+ ), N, h, d, z = (
216
+ /*$_*/
217
+ l[2]("cameraStatus.restart") + ""
218
+ ), w, f, m, b = [
219
+ { class: "text-[8em] mx-auto" },
220
+ { xmlns: "http://www.w3.org/2000/svg" },
221
+ { width: "1em" },
222
+ { height: "1em" },
223
+ { viewBox: "0 0 256 256" },
224
+ /*$$props*/
225
+ l[5]
226
+ ], k = {};
227
+ for (let I = 0; I < b.length; I += 1)
228
+ k = T(k, b[I]);
229
+ const O = {
230
+ c: function() {
231
+ e = p("svg"), t = p("path"), s = L(), i = v("span"), r = E(c), u = L(), o = v("span"), N = E(n), h = L(), d = v("button"), w = E(z), j(t, "fill", "currentColor"), j(t, "d", "M236.8 188.09L149.35 36.22a24.76 24.76 0 0 0-42.7 0L19.2 188.09a23.51 23.51 0 0 0 0 23.72A24.35 24.35 0 0 0 40.55 224h174.9a24.35 24.35 0 0 0 21.33-12.19a23.51 23.51 0 0 0 .02-23.72m-13.87 15.71a8.5 8.5 0 0 1-7.48 4.2H40.55a8.5 8.5 0 0 1-7.48-4.2a7.59 7.59 0 0 1 0-7.72l87.45-151.87a8.75 8.75 0 0 1 15 0l87.45 151.87a7.59 7.59 0 0 1-.04 7.72M120 144v-40a8 8 0 0 1 16 0v40a8 8 0 0 1-16 0m20 36a12 12 0 1 1-12-12a12 12 0 0 1 12 12"), _(t, y, 111, 6, 4980), C(e, k), _(e, y, 103, 4, 4805), j(i, "class", "text-xl font-bold text-center"), _(i, y, 116, 4, 5479), j(o, "class", "m-auto text-base block text-center"), _(o, y, 117, 4, 5569), j(d, "class", "z-20 ce-dui-btn ce-dui-btn-outline ce-dui-btn-primary m-auto"), _(d, y, 118, 4, 5674);
232
+ },
233
+ m: function(a, M) {
234
+ D(a, e, M), A(e, t), D(a, s, M), D(a, i, M), A(i, r), D(a, u, M), D(a, o, M), A(o, N), D(a, h, M), D(a, d, M), A(d, w), f || (m = P(
235
+ d,
236
+ "click",
237
+ /*click_handler_3*/
238
+ l[9],
239
+ !1,
240
+ !1,
241
+ !1,
242
+ !1
243
+ ), f = !0);
244
+ },
245
+ p: function(a, M) {
246
+ C(e, k = W(b, [
247
+ { class: "text-[8em] mx-auto" },
248
+ { xmlns: "http://www.w3.org/2000/svg" },
249
+ { width: "1em" },
250
+ { height: "1em" },
251
+ { viewBox: "0 0 256 256" },
252
+ M & /*$$props*/
253
+ 32 && /*$$props*/
254
+ a[5]
255
+ ])), M & /*$_*/
256
+ 4 && c !== (c = /*$_*/
257
+ a[2]("cameraStatus.stayOnSameTab") + "") && S(r, c), M & /*$_*/
258
+ 4 && n !== (n = /*$_*/
259
+ a[2]("cameraStatus.clickRestartToRecapture") + "") && S(N, n), M & /*$_*/
260
+ 4 && z !== (z = /*$_*/
261
+ a[2]("cameraStatus.restart") + "") && S(w, z);
262
+ },
263
+ d: function(a) {
264
+ a && g(e), a && g(s), a && g(i), a && g(u), a && g(o), a && g(h), a && g(d), f = !1, m();
265
+ }
266
+ };
267
+ return R("SvelteRegisterBlock", {
268
+ block: O,
269
+ id: _e.name,
270
+ type: "if",
271
+ source: "(102:72) ",
272
+ ctx: l
273
+ }), O;
274
+ }
275
+ function be(l) {
276
+ let e, t, s, i, c = (
277
+ /*$_*/
278
+ l[2]("cameraStatus.cameraInUse") + ""
279
+ ), r, u, o, n = (
280
+ /*$_*/
281
+ l[2]("cameraStatus.ensureCameraNotInUse") + ""
282
+ ), N, h, d, z = (
283
+ /*$_*/
284
+ l[2]("cameraStatus.restart") + ""
285
+ ), w, f, m, b = [
286
+ { class: "text-[8em] mx-auto" },
287
+ { xmlns: "http://www.w3.org/2000/svg" },
288
+ { width: "1em" },
289
+ { height: "1em" },
290
+ { viewBox: "0 0 256 256" },
291
+ /*$$props*/
292
+ l[5]
293
+ ], k = {};
294
+ for (let I = 0; I < b.length; I += 1)
295
+ k = T(k, b[I]);
296
+ const O = {
297
+ c: function() {
298
+ e = p("svg"), t = p("path"), s = L(), i = v("span"), r = E(c), u = L(), o = v("span"), N = E(n), h = L(), d = v("button"), w = E(z), j(t, "fill", "currentColor"), j(t, "d", "M56.88 31.93a12 12 0 1 0-17.76 16.14l4 4.37A28 28 0 0 0 20 80v112a28 28 0 0 0 28 28h147.42l3.7 4.07a12 12 0 0 0 17.76-16.14Zm49.35 90L136 154.64a24 24 0 0 1-29.77-32.75ZM48 196a4 4 0 0 1-4-4V80a4 4 0 0 1 4-4h16.51l24.92 27.41a48 48 0 0 0 63.34 69.67L173.6 196ZM236 80v94.14a12 12 0 0 1-24 0V80a4 4 0 0 0-4-4h-32a12 12 0 0 1-10-5.34L153.57 52h-51.51a12 12 0 0 1 0-24H160a12 12 0 0 1 10 5.34L182.42 52H208a28 28 0 0 1 28 28"), _(t, y, 83, 6, 3729), C(e, k), _(e, y, 75, 4, 3554), j(i, "class", "text-xl font-bold text-center"), _(i, y, 88, 4, 4221), j(o, "class", "m-auto text-base block text-center"), _(o, y, 89, 4, 4309), j(d, "class", "z-20 ce-dui-btn ce-dui-btn-outline ce-dui-btn-primary m-auto"), _(d, y, 92, 4, 4423);
299
+ },
300
+ m: function(a, M) {
301
+ D(a, e, M), A(e, t), D(a, s, M), D(a, i, M), A(i, r), D(a, u, M), D(a, o, M), A(o, N), D(a, h, M), D(a, d, M), A(d, w), f || (m = P(
302
+ d,
303
+ "click",
304
+ /*click_handler_2*/
305
+ l[8],
306
+ !1,
307
+ !1,
308
+ !1,
309
+ !1
310
+ ), f = !0);
311
+ },
312
+ p: function(a, M) {
313
+ C(e, k = W(b, [
314
+ { class: "text-[8em] mx-auto" },
315
+ { xmlns: "http://www.w3.org/2000/svg" },
316
+ { width: "1em" },
317
+ { height: "1em" },
318
+ { viewBox: "0 0 256 256" },
319
+ M & /*$$props*/
320
+ 32 && /*$$props*/
321
+ a[5]
322
+ ])), M & /*$_*/
323
+ 4 && c !== (c = /*$_*/
324
+ a[2]("cameraStatus.cameraInUse") + "") && S(r, c), M & /*$_*/
325
+ 4 && n !== (n = /*$_*/
326
+ a[2]("cameraStatus.ensureCameraNotInUse") + "") && S(N, n), M & /*$_*/
327
+ 4 && z !== (z = /*$_*/
328
+ a[2]("cameraStatus.restart") + "") && S(w, z);
329
+ },
330
+ d: function(a) {
331
+ a && g(e), a && g(s), a && g(i), a && g(u), a && g(o), a && g(h), a && g(d), f = !1, m();
332
+ }
333
+ };
334
+ return R("SvelteRegisterBlock", {
335
+ block: O,
336
+ id: be.name,
337
+ type: "if",
338
+ source: "(74:72) ",
339
+ ctx: l
340
+ }), O;
341
+ }
342
+ function ze(l) {
343
+ let e, t, s, i, c = (
344
+ /*$_*/
345
+ l[2]("cameraStatus.cameraNotDetected") + ""
346
+ ), r, u, o, n = (
347
+ /*$_*/
348
+ l[2]("cameraStatus.connectCameraAndRestart") + ""
349
+ ), N, h, d, z = (
350
+ /*$_*/
351
+ l[2]("cameraStatus.restart") + ""
352
+ ), w, f, m, b = [
353
+ { class: "text-[8em] mx-auto" },
354
+ { xmlns: "http://www.w3.org/2000/svg" },
355
+ { width: "1em" },
356
+ { height: "1em" },
357
+ { viewBox: "0 0 256 256" },
358
+ /*$$props*/
359
+ l[5]
360
+ ], k = {};
361
+ for (let I = 0; I < b.length; I += 1)
362
+ k = T(k, b[I]);
363
+ const O = {
364
+ c: function() {
365
+ e = p("svg"), t = p("path"), s = L(), i = v("span"), r = E(c), u = L(), o = v("span"), N = E(n), h = L(), d = v("button"), w = E(z), j(t, "fill", "currentColor"), j(t, "d", "m137 168l11.52-11.51a12 12 0 0 0-17-17L120 151l-15-15l11.52-11.51a12 12 0 0 0-17-17L88 119l-15.51-15.49a12 12 0 0 0-17 17L59 124l-20.46 20.49a36 36 0 0 0 0 50.91l2.55 2.54l-25.58 25.57a12 12 0 0 0 17 17l25.57-25.58l2.54 2.55a36.06 36.06 0 0 0 50.91 0L132 197l3.51 3.52a12 12 0 0 0 17-17Zm-42.46 32.49a12 12 0 0 1-17 0l-22.03-22.06a12 12 0 0 1 0-17L76 141l39 39Zm146-185a12 12 0 0 0-17 0l-25.6 25.6l-2.54-2.55a36.05 36.05 0 0 0-50.91 0L124 59l-3.51-3.52a12 12 0 0 0-17 17l80 80a12 12 0 0 0 17-17L197 132l20.49-20.49a36 36 0 0 0 0-50.91l-2.55-2.54l25.58-25.57a12 12 0 0 0-.03-16.98Zm-40 79L180 115l-39-39l20.49-20.49a12 12 0 0 1 17 0l22.06 22.06a12 12 0 0 1 0 17Z"), _(t, y, 54, 6, 2194), C(e, k), _(e, y, 46, 4, 2019), j(i, "class", "text-xl font-bold text-center"), _(i, y, 59, 4, 2926), j(o, "class", "m-auto text-base block text-center"), _(o, y, 60, 4, 3020), j(d, "class", "z-20 ce-dui-btn ce-dui-btn-outline ce-dui-btn-primary m-auto"), _(d, y, 63, 4, 3137);
366
+ },
367
+ m: function(a, M) {
368
+ D(a, e, M), A(e, t), D(a, s, M), D(a, i, M), A(i, r), D(a, u, M), D(a, o, M), A(o, N), D(a, h, M), D(a, d, M), A(d, w), f || (m = P(
369
+ d,
370
+ "click",
371
+ /*click_handler_1*/
372
+ l[7],
373
+ !1,
374
+ !1,
375
+ !1,
376
+ !1
377
+ ), f = !0);
378
+ },
379
+ p: function(a, M) {
380
+ C(e, k = W(b, [
381
+ { class: "text-[8em] mx-auto" },
382
+ { xmlns: "http://www.w3.org/2000/svg" },
383
+ { width: "1em" },
384
+ { height: "1em" },
385
+ { viewBox: "0 0 256 256" },
386
+ M & /*$$props*/
387
+ 32 && /*$$props*/
388
+ a[5]
389
+ ])), M & /*$_*/
390
+ 4 && c !== (c = /*$_*/
391
+ a[2]("cameraStatus.cameraNotDetected") + "") && S(r, c), M & /*$_*/
392
+ 4 && n !== (n = /*$_*/
393
+ a[2]("cameraStatus.connectCameraAndRestart") + "") && S(N, n), M & /*$_*/
394
+ 4 && z !== (z = /*$_*/
395
+ a[2]("cameraStatus.restart") + "") && S(w, z);
396
+ },
397
+ d: function(a) {
398
+ a && g(e), a && g(s), a && g(i), a && g(u), a && g(o), a && g(h), a && g(d), f = !1, m();
399
+ }
400
+ };
401
+ return R("SvelteRegisterBlock", {
402
+ block: O,
403
+ id: ze.name,
404
+ type: "if",
405
+ source: "(45:75) ",
406
+ ctx: l
407
+ }), O;
408
+ }
409
+ function Ae(l) {
410
+ let e, t, s, i, c = (
411
+ /*$_*/
412
+ l[2]("cameraStatus.cameraPermission") + ""
413
+ ), r, u, o, n = (
414
+ /*$_*/
415
+ l[2]("cameraStatus.clickRestartButton") + ""
416
+ ), N, h, d, z = (
417
+ /*$_*/
418
+ l[2]("cameraStatus.restart") + ""
419
+ ), w, f, m, b = [
420
+ { class: "text-[8em] mx-auto" },
421
+ { xmlns: "http://www.w3.org/2000/svg" },
422
+ { width: "1em" },
423
+ { height: "1em" },
424
+ { viewBox: "0 0 256 256" },
425
+ /*$$props*/
426
+ l[5]
427
+ ], k = {};
428
+ for (let I = 0; I < b.length; I += 1)
429
+ k = T(k, b[I]);
430
+ const O = {
431
+ c: function() {
432
+ e = p("svg"), t = p("path"), s = L(), i = v("span"), r = E(c), u = L(), o = v("span"), N = E(n), h = L(), d = v("button"), w = E(z), j(t, "fill", "currentColor"), j(t, "d", "M249.45 69.31a12 12 0 0 0-12.51 1L212 88.43V72a20 20 0 0 0-20-20h-68.12a12 12 0 0 0 0 24H188v68a12 12 0 0 0 4.46 9.33c.15.13.31.25.48.38l44 32A12 12 0 0 0 256 176V80a12 12 0 0 0-6.55-10.69M232 152.43l-20-14.54v-19.78l20-14.54ZM56.88 31.93a12 12 0 1 0-17.76 16.14L42.69 52H32a20 20 0 0 0-20 20v112a20 20 0 0 0 20 20h148.87l18.25 20.07a12 12 0 0 0 17.76-16.14ZM36 180V76h28.51l94.55 104Z"), _(t, y, 27, 6, 936), C(e, k), _(e, y, 19, 4, 761), j(i, "class", "text-xl font-bold text-center"), _(i, y, 32, 4, 1392), j(o, "class", "m-auto text-base block text-center"), _(o, y, 33, 4, 1485), j(d, "class", "z-20 ce-dui-btn ce-dui-btn-outline ce-dui-btn-primary m-auto"), _(d, y, 34, 4, 1585);
433
+ },
434
+ m: function(a, M) {
435
+ D(a, e, M), A(e, t), D(a, s, M), D(a, i, M), A(i, r), D(a, u, M), D(a, o, M), A(o, N), D(a, h, M), D(a, d, M), A(d, w), f || (m = P(
436
+ d,
437
+ "click",
438
+ /*click_handler*/
439
+ l[6],
440
+ !1,
441
+ !1,
442
+ !1,
443
+ !1
444
+ ), f = !0);
445
+ },
446
+ p: function(a, M) {
447
+ C(e, k = W(b, [
448
+ { class: "text-[8em] mx-auto" },
449
+ { xmlns: "http://www.w3.org/2000/svg" },
450
+ { width: "1em" },
451
+ { height: "1em" },
452
+ { viewBox: "0 0 256 256" },
453
+ M & /*$$props*/
454
+ 32 && /*$$props*/
455
+ a[5]
456
+ ])), M & /*$_*/
457
+ 4 && c !== (c = /*$_*/
458
+ a[2]("cameraStatus.cameraPermission") + "") && S(r, c), M & /*$_*/
459
+ 4 && n !== (n = /*$_*/
460
+ a[2]("cameraStatus.clickRestartButton") + "") && S(N, n), M & /*$_*/
461
+ 4 && z !== (z = /*$_*/
462
+ a[2]("cameraStatus.restart") + "") && S(w, z);
463
+ },
464
+ d: function(a) {
465
+ a && g(e), a && g(s), a && g(i), a && g(u), a && g(o), a && g(h), a && g(d), f = !1, m();
466
+ }
467
+ };
468
+ return R("SvelteRegisterBlock", {
469
+ block: O,
470
+ id: Ae.name,
471
+ type: "if",
472
+ source: "(18:2) {#if $cameraStatusStore === CameraStatusEnum.CAMERA_DENIED_ERROR}",
473
+ ctx: l
474
+ }), O;
475
+ }
476
+ function he(l) {
477
+ let e;
478
+ function t(r, u) {
479
+ if (
480
+ /*$cameraStatusStore*/
481
+ r[1] === U.CAMERA_DENIED_ERROR
482
+ )
483
+ return Ae;
484
+ if (
485
+ /*$cameraStatusStore*/
486
+ r[1] === U.DEVICE_NOT_FOUND_ERROR
487
+ )
488
+ return ze;
489
+ if (
490
+ /*$cameraStatusStore*/
491
+ r[1] === U.CAMERA_IN_USE_ERROR
492
+ )
493
+ return be;
494
+ if (
495
+ /*$cameraStatusStore*/
496
+ r[1] === U.CAMERA_CLOSED_ERROR
497
+ )
498
+ return _e;
499
+ if (
500
+ /*$cameraStatusStore*/
501
+ r[1] === U.CAMERA_UNSUPPORTED
502
+ )
503
+ return Ie;
504
+ if (
505
+ /*$cameraStatusStore*/
506
+ r[1] === U.CAMERA_ORIENTATION_PORTRAIT && /*$collectorSelect*/
507
+ r[3] == "FACE"
508
+ )
509
+ return ge;
510
+ if (
511
+ /*$cameraStatusStore*/
512
+ r[1] === U.CAMERA_ORIENTATION_LANDSCAPE && /*$collectorSelect*/
513
+ r[3] == "DOCUMENT"
514
+ )
515
+ return je;
516
+ }
517
+ let s = t(l), i = s && s(l);
518
+ const c = {
519
+ c: function() {
520
+ e = v("div"), i && i.c(), this.c = V, j(e, "class", "flex flex-col gap-4 justify-center relative overflow-visible p-4"), _(e, y, 14, 0, 559);
521
+ },
522
+ l: function(u) {
523
+ throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option");
524
+ },
525
+ m: function(u, o) {
526
+ D(u, e, o), i && i.m(e, null);
527
+ },
528
+ p: function(u, [o]) {
529
+ s === (s = t(u)) && i ? i.p(u, o) : (i && i.d(1), i = s && s(u), i && (i.c(), i.m(e, null)));
530
+ },
531
+ i: V,
532
+ o: V,
533
+ d: function(u) {
534
+ u && g(e), i && i.d();
535
+ }
536
+ };
537
+ return R("SvelteRegisterBlock", {
538
+ block: c,
539
+ id: he.name,
540
+ type: "component",
541
+ source: "",
542
+ ctx: l
543
+ }), c;
544
+ }
545
+ function Ue(l, e, t) {
546
+ let s, i, c, r;
547
+ Y($, "cameraStatusStore"), x(l, $, (b) => t(1, s = b)), Y(G, "_"), x(l, G, (b) => t(2, i = b)), Y(Q, "collectorSelect"), x(l, Q, (b) => t(3, c = b)), Y(X, "screenLocked"), x(l, X, (b) => t(4, r = b));
548
+ let { $$slots: u = {}, $$scope: o } = e;
549
+ ne("camera-status", u, []);
550
+ let { handler: n = () => {
551
+ } } = e;
552
+ (s === U.CAMERA_ORIENTATION_LANDSCAPE || s === U.CAMERA_ORIENTATION_PORTRAIT) && setTimeout(
553
+ () => {
554
+ te($, s = U.OK, s);
555
+ },
556
+ 8e3
557
+ );
558
+ const N = () => {
559
+ n(), console.log("canicna", n);
560
+ }, h = () => {
561
+ n(), console.log("canicna", n);
562
+ }, d = () => {
563
+ n(), console.log("canicna", n);
564
+ }, z = () => {
565
+ n();
566
+ }, w = () => {
567
+ n();
568
+ }, f = () => {
569
+ te(X, r = !0, r), ue(!0);
570
+ }, m = () => {
571
+ te(X, r = !0, r), ue(!1);
572
+ };
573
+ return l.$$set = (b) => {
574
+ t(5, e = T(T({}, e), le(b))), "handler" in b && t(0, n = b.handler);
575
+ }, l.$capture_state = () => ({
576
+ handler: n,
577
+ CameraStatusEnum: U,
578
+ cameraStatusStore: $,
579
+ lockScreen: ue,
580
+ collectorSelect: Q,
581
+ screenLocked: X,
582
+ _: G,
583
+ $cameraStatusStore: s,
584
+ $_: i,
585
+ $collectorSelect: c,
586
+ $screenLocked: r
587
+ }), l.$inject_state = (b) => {
588
+ t(5, e = T(T({}, e), b)), "handler" in e && t(0, n = b.handler);
589
+ }, e && "$$inject" in e && l.$inject_state(e.$$inject), e = le(e), [
590
+ n,
591
+ s,
592
+ i,
593
+ c,
594
+ r,
595
+ e,
596
+ N,
597
+ h,
598
+ d,
599
+ z,
600
+ w,
601
+ f,
602
+ m
603
+ ];
604
+ }
605
+ class Be extends ae {
606
+ constructor(e) {
607
+ super(), ie(
608
+ this,
609
+ {
610
+ target: this.shadowRoot,
611
+ props: oe(this.attributes),
612
+ customElement: !0
613
+ },
614
+ Ue,
615
+ he,
616
+ se,
617
+ { handler: 0 },
618
+ null
619
+ ), e && (e.target && D(e.target, this, e.anchor), e.props && (this.$set(e.props), Z()));
620
+ }
621
+ static get observedAttributes() {
622
+ return ["handler"];
623
+ }
624
+ get handler() {
625
+ return this.$$.ctx[0];
626
+ }
627
+ set handler(e) {
628
+ this.$$set({ handler: e }), Z();
629
+ }
630
+ }
631
+ customElements.define("camera-status", Be);
632
+ const ee = "src/lib/conf/CameraBtn.svelte";
633
+ function we(l) {
634
+ let e, t, s, i, c, r, u, o, n, N, h;
635
+ e = new me({ $$inline: !0 });
636
+ let d = [
637
+ { xmlns: "http://www.w3.org/2000/svg" },
638
+ { width: "2em" },
639
+ { height: "2em" },
640
+ { viewBox: "0 0 256 256" },
641
+ /*$$props*/
642
+ l[3]
643
+ ], z = {};
644
+ for (let f = 0; f < d.length; f += 1)
645
+ z = T(z, d[f]);
646
+ const w = {
647
+ c: function() {
648
+ pe(e.$$.fragment), t = L(), s = v("div"), i = v("label"), c = p("svg"), r = p("path"), this.c = V, j(r, "fill", "hsl(var(--n))"), j(r, "d", "M208 56h-27.72l-13.63-20.44A8 8 0 0 0 160 32H96a8 8 0 0 0-6.65 3.56L75.71 56H48a24 24 0 0 0-24 24v112a24 24 0 0 0 24 24h160a24 24 0 0 0 24-24V80a24 24 0 0 0-24-24m-51.19 110.4A48.21 48.21 0 0 1 96 163.77V168a8 8 0 0 1-16 0v-24a8 8 0 0 1 8-8h24a8 8 0 0 1 0 16h-5.15a32.12 32.12 0 0 0 40.34 1.61a8 8 0 0 1 9.62 12.79M176 120a8 8 0 0 1-8 8h-24a8 8 0 0 1 0-16h5.15a32.12 32.12 0 0 0-40.34-1.61a8 8 0 0 1-9.62-12.79a48.21 48.21 0 0 1 60.81 2.63V96a8 8 0 0 1 16 0Z"), _(r, ee, 28, 6, 1199), C(c, z), _(c, ee, 27, 5, 1092), j(i, "tabindex", "0"), i.hidden = u = /*$cameraDevicesStore*/
649
+ l[2].length <= 1, j(i, "class", "ce-dui-btn ce-dui-btn-ghost"), _(i, ee, 26, 2, 990), j(s, "class", o = H() && /*$collectorSelect*/
650
+ l[1] == "DOCUMENT" ? "ce-dui-dropdown ce-dui-dropdown-top absolute right-10 top-10 translate-y-1/2 z-20 rotate-[-90deg]" : H() && /*$collectorSelect*/
651
+ l[1] == "FACE" ? "ce-dui-dropdown ce-dui-dropdown-top absolute z-20 right-2 sm:block bottom-10" : "ce-dui-dropdown ce-dui-dropdown-top absolute z-20 right-2 sm:block bottom-2"), _(s, ee, 13, 0, 432);
652
+ },
653
+ l: function(m) {
654
+ throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option");
655
+ },
656
+ m: function(m, b) {
657
+ Ce(e, m, b), D(m, t, b), D(m, s, b), A(s, i), A(i, c), A(c, r), n = !0, N || (h = P(
658
+ s,
659
+ "click",
660
+ /*click_handler*/
661
+ l[4],
662
+ !1,
663
+ !1,
664
+ !1,
665
+ !1
666
+ ), N = !0);
667
+ },
668
+ p: function(m, [b]) {
669
+ C(c, z = W(d, [
670
+ { xmlns: "http://www.w3.org/2000/svg" },
671
+ { width: "2em" },
672
+ { height: "2em" },
673
+ { viewBox: "0 0 256 256" },
674
+ b & /*$$props*/
675
+ 8 && /*$$props*/
676
+ m[3]
677
+ ])), (!n || b & /*$cameraDevicesStore*/
678
+ 4 && u !== (u = /*$cameraDevicesStore*/
679
+ m[2].length <= 1)) && F(i, "hidden", u), (!n || b & /*$collectorSelect*/
680
+ 2 && o !== (o = H() && /*$collectorSelect*/
681
+ m[1] == "DOCUMENT" ? "ce-dui-dropdown ce-dui-dropdown-top absolute right-10 top-10 translate-y-1/2 z-20 rotate-[-90deg]" : H() && /*$collectorSelect*/
682
+ m[1] == "FACE" ? "ce-dui-dropdown ce-dui-dropdown-top absolute z-20 right-2 sm:block bottom-10" : "ce-dui-dropdown ce-dui-dropdown-top absolute z-20 right-2 sm:block bottom-2")) && j(s, "class", o);
683
+ },
684
+ i: function(m) {
685
+ n || (Re(e.$$.fragment, m), n = !0);
686
+ },
687
+ o: function(m) {
688
+ Ye(e.$$.fragment, m), n = !1;
689
+ },
690
+ d: function(m) {
691
+ xe(e, m), m && g(t), m && g(s), N = !1, h();
692
+ }
693
+ };
694
+ return R("SvelteRegisterBlock", {
695
+ block: w,
696
+ id: we.name,
697
+ type: "component",
698
+ source: "",
699
+ ctx: l
700
+ }), w;
701
+ }
702
+ function Qe(l, e, t) {
703
+ let s, i, c;
704
+ Y(q, "swapCamera"), x(l, q, (n) => t(0, s = n)), Y(Q, "collectorSelect"), x(l, Q, (n) => t(1, i = n)), Y(ce, "cameraDevicesStore"), x(l, ce, (n) => t(2, c = n));
705
+ let { $$slots: r = {}, $$scope: u } = e;
706
+ ne("camera-btn", r, []);
707
+ const o = () => {
708
+ te(q, s = !s, s);
709
+ };
710
+ return l.$$set = (n) => {
711
+ t(3, e = T(T({}, e), le(n)));
712
+ }, l.$capture_state = () => ({
713
+ isMobile: H,
714
+ swapCamera: q,
715
+ ConfModal: me,
716
+ cameraDevicesStore: ce,
717
+ collectorSelect: Q,
718
+ $swapCamera: s,
719
+ $collectorSelect: i,
720
+ $cameraDevicesStore: c
721
+ }), l.$inject_state = (n) => {
722
+ t(3, e = T(T({}, e), n));
723
+ }, e && "$$inject" in e && l.$inject_state(e.$$inject), e = le(e), [s, i, c, e, o];
724
+ }
725
+ class Pe extends ae {
726
+ constructor(e) {
727
+ super(), ie(
728
+ this,
729
+ {
730
+ target: this.shadowRoot,
731
+ props: oe(this.attributes),
732
+ customElement: !0
733
+ },
734
+ Qe,
735
+ we,
736
+ se,
737
+ {},
738
+ null
739
+ ), e && (e.target && D(e.target, this, e.anchor), e.props && (this.$set(e.props), Z()));
740
+ }
741
+ }
742
+ customElements.define("camera-btn", Pe);
743
+ const K = "src/lib/faceTab/buttons/capture/takePictureBtn/TakePictureBtn.svelte";
744
+ function ye(l) {
745
+ let e, t, s = (
746
+ /*$_*/
747
+ l[5]("faceCollector.capture") + ""
748
+ ), i, c, r;
749
+ const u = {
750
+ c: function() {
751
+ e = v("div"), t = v("button"), i = E(s), j(
752
+ t,
753
+ "id",
754
+ /*id*/
755
+ l[1]
756
+ ), t.disabled = /*disabled*/
757
+ l[2], t.hidden = /*hidden*/
758
+ l[3], j(t, "class", H() ? "ce-dui-btn ce-dui-btn-primary text-xl pb-[2px] absolute z-20 bottom-10" : "ce-dui-btn ce-dui-btn-primary text-xl pb-[2px] absolute z-20 bottom-2"), _(t, K, 35, 4, 1076), j(e, "class", "flex justify-center items-center"), _(e, K, 34, 2, 1025);
759
+ },
760
+ m: function(n, N) {
761
+ D(n, e, N), A(e, t), A(t, i), c || (r = P(
762
+ t,
763
+ "click",
764
+ /*click_handler_2*/
765
+ l[8],
766
+ !1,
767
+ !1,
768
+ !1,
769
+ !1
770
+ ), c = !0);
771
+ },
772
+ p: function(n, N) {
773
+ N & /*$_*/
774
+ 32 && s !== (s = /*$_*/
775
+ n[5]("faceCollector.capture") + "") && S(i, s), N & /*id*/
776
+ 2 && j(
777
+ t,
778
+ "id",
779
+ /*id*/
780
+ n[1]
781
+ ), N & /*disabled*/
782
+ 4 && F(
783
+ t,
784
+ "disabled",
785
+ /*disabled*/
786
+ n[2]
787
+ ), N & /*hidden*/
788
+ 8 && F(
789
+ t,
790
+ "hidden",
791
+ /*hidden*/
792
+ n[3]
793
+ );
794
+ },
795
+ d: function(n) {
796
+ n && g(e), c = !1, r();
797
+ }
798
+ };
799
+ return R("SvelteRegisterBlock", {
800
+ block: u,
801
+ id: ye.name,
802
+ type: "else",
803
+ source: "(34:0) {:else}",
804
+ ctx: l
805
+ }), u;
806
+ }
807
+ function ve(l) {
808
+ let e, t, s = (
809
+ /*$_*/
810
+ l[5]("docCollector.capture") + ""
811
+ ), i, c, r;
812
+ const u = {
813
+ c: function() {
814
+ e = v("div"), t = v("button"), i = E(s), j(
815
+ t,
816
+ "id",
817
+ /*id*/
818
+ l[1]
819
+ ), t.disabled = /*disabled*/
820
+ l[2], t.hidden = /*hidden*/
821
+ l[3], j(t, "class", "ce-dui-btn ce-dui-btn-primary text-xl pb-[2px] absolute z-10 bottom-2"), _(t, K, 24, 4, 772), j(e, "class", "flex justify-center items-center"), _(e, K, 23, 2, 721);
822
+ },
823
+ m: function(n, N) {
824
+ D(n, e, N), A(e, t), A(t, i), c || (r = P(
825
+ t,
826
+ "click",
827
+ /*click_handler_1*/
828
+ l[7],
829
+ !1,
830
+ !1,
831
+ !1,
832
+ !1
833
+ ), c = !0);
834
+ },
835
+ p: function(n, N) {
836
+ N & /*$_*/
837
+ 32 && s !== (s = /*$_*/
838
+ n[5]("docCollector.capture") + "") && S(i, s), N & /*id*/
839
+ 2 && j(
840
+ t,
841
+ "id",
842
+ /*id*/
843
+ n[1]
844
+ ), N & /*disabled*/
845
+ 4 && F(
846
+ t,
847
+ "disabled",
848
+ /*disabled*/
849
+ n[2]
850
+ ), N & /*hidden*/
851
+ 8 && F(
852
+ t,
853
+ "hidden",
854
+ /*hidden*/
855
+ n[3]
856
+ );
857
+ },
858
+ d: function(n) {
859
+ n && g(e), c = !1, r();
860
+ }
861
+ };
862
+ return R("SvelteRegisterBlock", {
863
+ block: u,
864
+ id: ve.name,
865
+ type: "if",
866
+ source: "(23:41) ",
867
+ ctx: l
868
+ }), u;
869
+ }
870
+ function ke(l) {
871
+ let e, t, s = (
872
+ /*$_*/
873
+ l[5]("docCollector.capture") + ""
874
+ ), i, c, r;
875
+ const u = {
876
+ c: function() {
877
+ e = v("div"), t = v("button"), i = E(s), j(
878
+ t,
879
+ "id",
880
+ /*id*/
881
+ l[1]
882
+ ), t.disabled = /*disabled*/
883
+ l[2], t.hidden = /*hidden*/
884
+ l[3], j(t, "class", "ce-dui-btn ce-dui-btn-primary text-xl pb-[2px]"), _(t, K, 13, 4, 457), j(e, "class", "absolute right-2 top-1/2 -translate-y-1/2 z-20 rotate-[-90deg]"), _(e, K, 12, 2, 376);
885
+ },
886
+ m: function(n, N) {
887
+ D(n, e, N), A(e, t), A(t, i), c || (r = P(
888
+ t,
889
+ "click",
890
+ /*click_handler*/
891
+ l[6],
892
+ !1,
893
+ !1,
894
+ !1,
895
+ !1
896
+ ), c = !0);
897
+ },
898
+ p: function(n, N) {
899
+ N & /*$_*/
900
+ 32 && s !== (s = /*$_*/
901
+ n[5]("docCollector.capture") + "") && S(i, s), N & /*id*/
902
+ 2 && j(
903
+ t,
904
+ "id",
905
+ /*id*/
906
+ n[1]
907
+ ), N & /*disabled*/
908
+ 4 && F(
909
+ t,
910
+ "disabled",
911
+ /*disabled*/
912
+ n[2]
913
+ ), N & /*hidden*/
914
+ 8 && F(
915
+ t,
916
+ "hidden",
917
+ /*hidden*/
918
+ n[3]
919
+ );
920
+ },
921
+ d: function(n) {
922
+ n && g(e), c = !1, r();
923
+ }
924
+ };
925
+ return R("SvelteRegisterBlock", {
926
+ block: u,
927
+ id: ke.name,
928
+ type: "if",
929
+ source: "(12:0) {#if isMobile() && $collectorSelect == 'DOCUMENT'}",
930
+ ctx: l
931
+ }), u;
932
+ }
933
+ function Ee(l) {
934
+ let e, t;
935
+ function s(u, o) {
936
+ return o & /*$collectorSelect*/
937
+ 16 && (e = null), e == null && (e = !!(H() && /*$collectorSelect*/
938
+ u[4] == "DOCUMENT")), e ? ke : (
939
+ /*$collectorSelect*/
940
+ u[4] == "DOCUMENT" ? ve : ye
941
+ );
942
+ }
943
+ let i = s(l, -1), c = i(l);
944
+ const r = {
945
+ c: function() {
946
+ c.c(), t = Ne(), this.c = V;
947
+ },
948
+ l: function(o) {
949
+ throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option");
950
+ },
951
+ m: function(o, n) {
952
+ c.m(o, n), D(o, t, n);
953
+ },
954
+ p: function(o, [n]) {
955
+ i === (i = s(o, n)) && c ? c.p(o, n) : (c.d(1), c = i(o), c && (c.c(), c.m(t.parentNode, t)));
956
+ },
957
+ i: V,
958
+ o: V,
959
+ d: function(o) {
960
+ c.d(o), o && g(t);
961
+ }
962
+ };
963
+ return R("SvelteRegisterBlock", {
964
+ block: r,
965
+ id: Ee.name,
966
+ type: "component",
967
+ source: "",
968
+ ctx: l
969
+ }), r;
970
+ }
971
+ function He(l, e, t) {
972
+ let s, i;
973
+ Y(Q, "collectorSelect"), x(l, Q, (f) => t(4, s = f)), Y(G, "_"), x(l, G, (f) => t(5, i = f));
974
+ let { $$slots: c = {}, $$scope: r } = e;
975
+ ne("take-picture-btn", c, []);
976
+ let { handler: u = () => {
977
+ } } = e, { id: o = "" } = e, { disabled: n = !1 } = e, { hidden: N = !1 } = e;
978
+ const h = ["handler", "id", "disabled", "hidden"];
979
+ Object.keys(e).forEach((f) => {
980
+ !~h.indexOf(f) && f.slice(0, 2) !== "$$" && f !== "slot" && console.warn(`<take-picture-btn> was created with unknown prop '${f}'`);
981
+ });
982
+ const d = () => u(), z = () => u(), w = () => u();
983
+ return l.$$set = (f) => {
984
+ "handler" in f && t(0, u = f.handler), "id" in f && t(1, o = f.id), "disabled" in f && t(2, n = f.disabled), "hidden" in f && t(3, N = f.hidden);
985
+ }, l.$capture_state = () => ({
986
+ _: G,
987
+ isMobile: H,
988
+ collectorSelect: Q,
989
+ handler: u,
990
+ id: o,
991
+ disabled: n,
992
+ hidden: N,
993
+ $collectorSelect: s,
994
+ $_: i
995
+ }), l.$inject_state = (f) => {
996
+ "handler" in f && t(0, u = f.handler), "id" in f && t(1, o = f.id), "disabled" in f && t(2, n = f.disabled), "hidden" in f && t(3, N = f.hidden);
997
+ }, e && "$$inject" in e && l.$inject_state(e.$$inject), [
998
+ u,
999
+ o,
1000
+ n,
1001
+ N,
1002
+ s,
1003
+ i,
1004
+ d,
1005
+ z,
1006
+ w
1007
+ ];
1008
+ }
1009
+ class Ve extends ae {
1010
+ constructor(e) {
1011
+ super(), ie(
1012
+ this,
1013
+ {
1014
+ target: this.shadowRoot,
1015
+ props: oe(this.attributes),
1016
+ customElement: !0
1017
+ },
1018
+ He,
1019
+ Ee,
1020
+ se,
1021
+ {
1022
+ handler: 0,
1023
+ id: 1,
1024
+ disabled: 2,
1025
+ hidden: 3
1026
+ },
1027
+ null
1028
+ ), e && (e.target && D(e.target, this, e.anchor), e.props && (this.$set(e.props), Z()));
1029
+ }
1030
+ static get observedAttributes() {
1031
+ return ["handler", "id", "disabled", "hidden"];
1032
+ }
1033
+ get handler() {
1034
+ return this.$$.ctx[0];
1035
+ }
1036
+ set handler(e) {
1037
+ this.$$set({ handler: e }), Z();
1038
+ }
1039
+ get id() {
1040
+ return this.$$.ctx[1];
1041
+ }
1042
+ set id(e) {
1043
+ this.$$set({ id: e }), Z();
1044
+ }
1045
+ get disabled() {
1046
+ return this.$$.ctx[2];
1047
+ }
1048
+ set disabled(e) {
1049
+ this.$$set({ disabled: e }), Z();
1050
+ }
1051
+ get hidden() {
1052
+ return this.$$.ctx[3];
1053
+ }
1054
+ set hidden(e) {
1055
+ this.$$set({ hidden: e }), Z();
1056
+ }
1057
+ }
1058
+ customElements.define("take-picture-btn", Ve);
1059
+ const de = "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iODUiIGhlaWdodD0iMjUiIHZpZXdCb3g9IjAgMCA4NSAyNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTI4LjMzNiAyMFY1LjdIMzQuMjc2QzM1LjIyMjcgNS43IDM2LjA0OTMgNS44NTMzMyAzNi43NTYgNi4xNkMzNy40NjI3IDYuNDY2NjcgMzguMDA5MyA2LjkgMzguMzk2IDcuNDZDMzguNzgyNyA4LjAyIDM4Ljk3NiA4LjY4IDM4Ljk3NiA5LjQ0QzM4Ljk3NiAxMC4xMzMzIDM4Ljc4MjcgMTAuNzUzMyAzOC4zOTYgMTEuM0MzOC4wMDkzIDExLjgzMzMgMzcuNDYyNyAxMi4yNTMzIDM2Ljc1NiAxMi41NkMzNi4wNDkzIDEyLjg2NjcgMzUuMjIyNyAxMy4wMiAzNC4yNzYgMTMuMDJIMzEuMjM2VjEySDM0LjQ1NkMzNS40ODI3IDEyIDM2LjM3NiAxMi4xNiAzNy4xMzYgMTIuNDhDMzcuOTA5MyAxMi43ODY3IDM4LjUwOTMgMTMuMjMzMyAzOC45MzYgMTMuODJDMzkuMzc2IDE0LjM5MzMgMzkuNTk2IDE1LjA4IDM5LjU5NiAxNS44OEMzOS41OTYgMTYuNjkzMyAzOS4zODI3IDE3LjQxMzMgMzguOTU2IDE4LjA0QzM4LjUyOTQgMTguNjY2NyAzNy45MjkzIDE5LjE1MzMgMzcuMTU2IDE5LjVDMzYuMzgyNyAxOS44MzMzIDM1LjQ4MjcgMjAgMzQuNDU2IDIwSDI4LjMzNlpNMzEuMDM2IDE3Ljc0SDM0LjQ3NkMzNS4yMDkzIDE3Ljc0IDM1Ljc4OTMgMTcuNTY2NyAzNi4yMTYgMTcuMjJDMzYuNjQyNyAxNi44NiAzNi44NTYgMTYuMzYgMzYuODU2IDE1LjcyQzM2Ljg1NiAxNS4xMDY3IDM2LjY0MjcgMTQuNjMzMyAzNi4yMTYgMTQuM0MzNS43ODkzIDEzLjk1MzMgMzUuMjA5MyAxMy43OCAzNC40NzYgMTMuNzhIMzAuODM2VjExLjU2SDM0LjEzNkMzNC43ODkzIDExLjU2IDM1LjMwMjcgMTEuNCAzNS42NzYgMTEuMDhDMzYuMDYyNyAxMC43NDY3IDM2LjI1NiAxMC4yOTMzIDM2LjI1NiA5LjcyQzM2LjI1NiA5LjE2IDM2LjA2MjcgOC43MjY2NyAzNS42NzYgOC40MkMzNS4zMDI3IDguMTEzMzMgMzQuNzg5MyA3Ljk2IDM0LjEzNiA3Ljk2SDMxLjAzNlYxNy43NFpNNDcuODMyMSA5Ljc2VjEyLjE2SDQ3LjI5MjFDNDYuNjY1NCAxMi4xNiA0Ni4xMjU0IDEyLjI4NjcgNDUuNjcyMSAxMi41NEM0NS4yMTg4IDEyLjc4IDQ0Ljg1ODggMTMuMTYgNDQuNTkyMSAxMy42OEM0NC4zMzg4IDE0LjIgNDQuMjEyMSAxNC44NzMzIDQ0LjIxMjEgMTUuN1YyMEg0MS41NzIxVjkuOTRINDQuMTkyMVYxMy4ySDQzLjg3MjFDNDMuOTkyMSAxMi4zMDY3IDQ0LjIzODggMTEuNjEzMyA0NC42MTIxIDExLjEyQzQ0Ljk5ODggMTAuNjI2NyA0NS40NDU0IDEwLjI4IDQ1Ljk1MjEgMTAuMDhDNDYuNDcyMSA5Ljg2NjY3IDQ2Ljk3ODggOS43NiA0Ny40NzIxIDkuNzZINDcuODMyMVpNNTcuMjAwOSA5Ljk0SDU5Ljg2MDlMNTUuMDgwOSAyMS4xNkM1NC42OTQyIDIyLjA1MzMgNTQuMjA3NSAyMi43MjY3IDUzLjYyMDkgMjMuMThDNTMuMDM0MiAyMy42NDY3IDUyLjI1NDIgMjMuODggNTEuMjgwOSAyMy44OEg0OS45ODA5VjIxLjcySDUxLjE0MDlDNTEuNTQwOSAyMS43MiA1MS44NzQyIDIxLjYyNjcgNTIuMTQwOSAyMS40NEM1Mi40MjA5IDIxLjI2NjcgNTIuNjQwOSAyMC45ODY3IDUyLjgwMDkgMjAuNkw1My4wMjA5IDIwLjAyTDQ4LjcyMDkgOS45NEg1MS40NjA5TDU0Ljc0MDkgMTguNTJINTMuODgwOUw1Ny4yMDA5IDkuOTRaTTY3LjkwMzUgMjBINjUuMjYzNVY5Ljk0SDY3LjkwMzVWMjBaTTY2LjU4MzUgOC4yQzY2LjE0MzUgOC4yIDY1Ljc2MzUgOC4wNTMzMyA2NS40NDM1IDcuNzZDNjUuMTM2OCA3LjQ1MzMzIDY0Ljk4MzUgNy4wODY2NyA2NC45ODM1IDYuNjZDNjQuOTgzNSA2LjIwNjY3IDY1LjEzNjggNS44MzMzMyA2NS40NDM1IDUuNTRDNjUuNzYzNSA1LjI0NjY3IDY2LjE0MzUgNS4xIDY2LjU4MzUgNS4xQzY3LjAzNjggNS4xIDY3LjQxNjggNS4yNTMzMyA2Ny43MjM1IDUuNTZDNjguMDMwMiA1Ljg1MzMzIDY4LjE4MzUgNi4yMiA2OC4xODM1IDYuNjZDNjguMTgzNSA3LjA4NjY3IDY4LjAzMDIgNy40NTMzMyA2Ny43MjM1IDcuNzZDNjcuNDE2OCA4LjA1MzMzIDY3LjAzNjggOC4yIDY2LjU4MzUgOC4yWk03MC41MDQgMjBWNS43SDc1LjUwNEM3Ny4wMzczIDUuNyA3OC4zNzczIDYuMDA2NjcgNzkuNTI0IDYuNjJDODAuNjg0IDcuMjIgODEuNTg0IDguMDYgODIuMjI0IDkuMTRDODIuODc3MyAxMC4yMDY3IDgzLjIwNCAxMS40NCA4My4yMDQgMTIuODRDODMuMjA0IDE0LjI0IDgyLjg3NzMgMTUuNDggODIuMjI0IDE2LjU2QzgxLjU4NCAxNy42MjY3IDgwLjY4NCAxOC40NjY3IDc5LjUyNCAxOS4wOEM3OC4zNzczIDE5LjY5MzMgNzcuMDM3MyAyMCA3NS41MDQgMjBINzAuNTA0Wk03My4yMDQgMTcuN0g3NS41MDRDNzYuNTA0IDE3LjcgNzcuMzY0IDE3LjUgNzguMDg0IDE3LjFDNzguODE3MyAxNi43IDc5LjM3NzMgMTYuMTQgNzkuNzY0IDE1LjQyQzgwLjE2NCAxNC42ODY3IDgwLjM2NCAxMy44MjY3IDgwLjM2NCAxMi44NEM4MC4zNjQgMTEuODUzMyA4MC4xNjQgMTEgNzkuNzY0IDEwLjI4Qzc5LjM3NzMgOS41NDY2NyA3OC44MTczIDguOTg2NjcgNzguMDg0IDguNkM3Ny4zNjQgOC4yIDc2LjUwNCA4IDc1LjUwNCA4SDczLjIwNFYxNy43WiIgZmlsbD0id2hpdGUiLz4KPGNpcmNsZSBjeD0iMTAiIGN5PSIxMy4zMDYyIiByPSI0IiBmaWxsPSJ3aGl0ZSIvPgo8Y2lyY2xlIGN4PSI5Ljk1OTA1IiBjeT0iMTMuMjUyIiByPSI2Ljc1MjAyIiBzdHJva2U9IndoaXRlIi8+CjxwYXRoIGQ9Ik01LjQ3OTE5IDRIMy4xMzI5NUMxLjk1NDk1IDQgMSA0Ljk1NDk1IDEgNi4xMzI5NVY4LjQ3OTE5TTE0LjQzNzYgNEgxNi43ODM4QzE3Ljk2MTggNCAxOC45MTY3IDQuOTU0OTUgMTguOTE2NyA2LjEzMjk1VjguNDc5MTlNMTguOTE2NyAxNy40Mzc2VjE5Ljc4MzhDMTguOTE2NyAyMC45NjE4IDE3Ljk2MTggMjEuOTE2NyAxNi43ODM4IDIxLjkxNjdIMTQuNDM3Nk01LjQ3OTE5IDIxLjkxNjdIMy4xMzI5NUMxLjk1NDk1IDIxLjkxNjcgMSAyMC45NjE4IDEgMTkuNzgzOFYxNy40Mzc2IiBzdHJva2U9IndoaXRlIi8+Cjwvc3ZnPgo=", J = "src/lib/waterMark/WaterMark.svelte";
1060
+ function Se(l) {
1061
+ let e, t, s, i;
1062
+ const c = {
1063
+ c: function() {
1064
+ e = v("div"), t = v("div"), s = v("img"), De(s.src, i = de) || j(s, "src", i), j(s, "alt", "BryID"), _(s, J, 50, 16, 1769), j(t, "class", "mx-auto my-10 display: flex justify-center items-end p-4"), B(
1065
+ t,
1066
+ "width",
1067
+ /*docWidth*/
1068
+ l[3] + "%"
1069
+ ), B(
1070
+ t,
1071
+ "height",
1072
+ /*docHeight*/
1073
+ l[4] + "%"
1074
+ ), B(
1075
+ t,
1076
+ "margin-top",
1077
+ /*docMarginTop*/
1078
+ l[5] + "%"
1079
+ ), _(t, J, 44, 12, 1539), j(e, "class", "absolute inset-0 z-10"), _(e, J, 42, 8, 1482);
1080
+ },
1081
+ m: function(u, o) {
1082
+ D(u, e, o), A(e, t), A(t, s);
1083
+ },
1084
+ p: function(u, o) {
1085
+ o & /*docWidth*/
1086
+ 8 && B(
1087
+ t,
1088
+ "width",
1089
+ /*docWidth*/
1090
+ u[3] + "%"
1091
+ ), o & /*docHeight*/
1092
+ 16 && B(
1093
+ t,
1094
+ "height",
1095
+ /*docHeight*/
1096
+ u[4] + "%"
1097
+ ), o & /*docMarginTop*/
1098
+ 32 && B(
1099
+ t,
1100
+ "margin-top",
1101
+ /*docMarginTop*/
1102
+ u[5] + "%"
1103
+ );
1104
+ },
1105
+ d: function(u) {
1106
+ u && g(e);
1107
+ }
1108
+ };
1109
+ return R("SvelteRegisterBlock", {
1110
+ block: c,
1111
+ id: Se.name,
1112
+ type: "else",
1113
+ source: "(42:4) {:else}",
1114
+ ctx: l
1115
+ }), c;
1116
+ }
1117
+ function Le(l) {
1118
+ let e, t, s, i;
1119
+ const c = {
1120
+ c: function() {
1121
+ e = v("div"), t = v("div"), s = v("img"), De(s.src, i = de) || j(s, "src", i), j(s, "alt", "BryID"), _(s, J, 37, 12, 1392), j(t, "class", "mx-auto my-10 display: flex justify-center items-end p-4"), B(
1122
+ t,
1123
+ "width",
1124
+ /*ovalWidth*/
1125
+ l[0] + "%"
1126
+ ), B(
1127
+ t,
1128
+ "height",
1129
+ /*ovalHeight*/
1130
+ l[1] + "%"
1131
+ ), B(
1132
+ t,
1133
+ "margin-top",
1134
+ /*ovalMarginTop*/
1135
+ l[2] + "%"
1136
+ ), _(t, J, 31, 8, 1183), j(e, "class", "absolute inset-0 z-10"), _(e, J, 29, 4, 1134);
1137
+ },
1138
+ m: function(u, o) {
1139
+ D(u, e, o), A(e, t), A(t, s);
1140
+ },
1141
+ p: function(u, o) {
1142
+ o & /*ovalWidth*/
1143
+ 1 && B(
1144
+ t,
1145
+ "width",
1146
+ /*ovalWidth*/
1147
+ u[0] + "%"
1148
+ ), o & /*ovalHeight*/
1149
+ 2 && B(
1150
+ t,
1151
+ "height",
1152
+ /*ovalHeight*/
1153
+ u[1] + "%"
1154
+ ), o & /*ovalMarginTop*/
1155
+ 4 && B(
1156
+ t,
1157
+ "margin-top",
1158
+ /*ovalMarginTop*/
1159
+ u[2] + "%"
1160
+ );
1161
+ },
1162
+ d: function(u) {
1163
+ u && g(e);
1164
+ }
1165
+ };
1166
+ return R("SvelteRegisterBlock", {
1167
+ block: c,
1168
+ id: Le.name,
1169
+ type: "if",
1170
+ source: "(29:0) {#if $collectorSelect == 'FACE'}",
1171
+ ctx: l
1172
+ }), c;
1173
+ }
1174
+ function Oe(l) {
1175
+ let e;
1176
+ function t(r, u) {
1177
+ return (
1178
+ /*$collectorSelect*/
1179
+ r[6] == "FACE" ? Le : Se
1180
+ );
1181
+ }
1182
+ let s = t(l), i = s(l);
1183
+ const c = {
1184
+ c: function() {
1185
+ i.c(), e = Ne(), this.c = V;
1186
+ },
1187
+ l: function(u) {
1188
+ throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option");
1189
+ },
1190
+ m: function(u, o) {
1191
+ i.m(u, o), D(u, e, o);
1192
+ },
1193
+ p: function(u, [o]) {
1194
+ s === (s = t(u)) && i ? i.p(u, o) : (i.d(1), i = s(u), i && (i.c(), i.m(e.parentNode, e)));
1195
+ },
1196
+ i: V,
1197
+ o: V,
1198
+ d: function(u) {
1199
+ i.d(u), u && g(e);
1200
+ }
1201
+ };
1202
+ return R("SvelteRegisterBlock", {
1203
+ block: c,
1204
+ id: Oe.name,
1205
+ type: "component",
1206
+ source: "",
1207
+ ctx: l
1208
+ }), c;
1209
+ }
1210
+ function Ze(l, e, t) {
1211
+ let s, i, c, r;
1212
+ Y(re, "videoStore"), x(l, re, (m) => t(7, s = m)), Y(Me, "ovalDimensions"), x(l, Me, (m) => t(8, i = m)), Y(fe, "docDimensions"), x(l, fe, (m) => t(9, c = m)), Y(Q, "collectorSelect"), x(l, Q, (m) => t(6, r = m));
1213
+ let { $$slots: u = {}, $$scope: o } = e;
1214
+ ne("water-mark", u, []);
1215
+ let n, N, h, d, z, w;
1216
+ const f = [];
1217
+ return Object.keys(e).forEach((m) => {
1218
+ !~f.indexOf(m) && m.slice(0, 2) !== "$$" && m !== "slot" && console.warn(`<water-mark> was created with unknown prop '${m}'`);
1219
+ }), l.$capture_state = () => ({
1220
+ ovalDimensions: Me,
1221
+ docDimensions: fe,
1222
+ collectorSelect: Q,
1223
+ waterMark: de,
1224
+ videoStore: re,
1225
+ isMobile: H,
1226
+ ovalWidth: n,
1227
+ ovalHeight: N,
1228
+ ovalMarginTop: h,
1229
+ docWidth: d,
1230
+ docHeight: z,
1231
+ docMarginTop: w,
1232
+ $videoStore: s,
1233
+ $ovalDimensions: i,
1234
+ $docDimensions: c,
1235
+ $collectorSelect: r
1236
+ }), l.$inject_state = (m) => {
1237
+ "ovalWidth" in m && t(0, n = m.ovalWidth), "ovalHeight" in m && t(1, N = m.ovalHeight), "ovalMarginTop" in m && t(2, h = m.ovalMarginTop), "docWidth" in m && t(3, d = m.docWidth), "docHeight" in m && t(4, z = m.docHeight), "docMarginTop" in m && t(5, w = m.docMarginTop);
1238
+ }, e && "$$inject" in e && l.$inject_state(e.$$inject), l.$$.update = () => {
1239
+ l.$$.dirty & /*$videoStore, $ovalDimensions, $docDimensions*/
1240
+ 896 && s && (t(0, n = i.width / s.videoWidth * 100), t(1, N = i.height / s.videoHeight * 100), t(2, h = (i.y - i.height / 2) / s.videoHeight * 59), t(3, d = c.width / s.videoWidth * 100), t(4, z = c.height / s.videoHeight * 100), t(5, w = c.y / s.videoHeight * 57), H() && t(2, h = (i.y - i.height / 2) / s.videoHeight * 100));
1241
+ }, [
1242
+ n,
1243
+ N,
1244
+ h,
1245
+ d,
1246
+ z,
1247
+ w,
1248
+ r,
1249
+ s,
1250
+ i,
1251
+ c
1252
+ ];
1253
+ }
1254
+ class We extends ae {
1255
+ constructor(e) {
1256
+ super(), ie(
1257
+ this,
1258
+ {
1259
+ target: this.shadowRoot,
1260
+ props: oe(this.attributes),
1261
+ customElement: !0
1262
+ },
1263
+ Ze,
1264
+ Oe,
1265
+ se,
1266
+ {},
1267
+ null
1268
+ ), e && e.target && D(e.target, this, e.anchor);
1269
+ }
1270
+ }
1271
+ customElements.define("water-mark", We);
1272
+ export {
1273
+ U as C,
1274
+ Ve as T,
1275
+ We as W,
1276
+ Be as a,
1277
+ Pe as b,
1278
+ $ as c
1279
+ };
1280
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV2F0ZXJNYXJrXzc0MmRjYjc4XzIuMi4xNy1SQzAxLmpzIiwic291cmNlcyI6WyIuLi9zcmMvbGliL2ZhY2VUYWIvY2FtZXJhU3RhdHVzL2NhbWVyYVN0YXR1c1N0b3JlLnRzIiwiLi4vc3JjL2xpYi9mYWNlVGFiL2NhbWVyYVN0YXR1cy9DYW1lcmFTdGF0dXMuc3ZlbHRlIiwiLi4vc3JjL2xpYi9jb25mL0NhbWVyYUJ0bi5zdmVsdGUiLCIuLi9zcmMvbGliL2ZhY2VUYWIvYnV0dG9ucy9jYXB0dXJlL3Rha2VQaWN0dXJlQnRuL1Rha2VQaWN0dXJlQnRuLnN2ZWx0ZSIsIi4uL3NyYy9hc3NldHMvaW1nL0JyeUlEd2F0ZXJNYXJrLnN2ZyIsIi4uL3NyYy9saWIvd2F0ZXJNYXJrL1dhdGVyTWFyay5zdmVsdGUiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgd3JpdGFibGUgfSBmcm9tICdzdmVsdGUvc3RvcmUnO1xuXG5leHBvcnQgY29uc3QgZW51bSBDYW1lcmFTdGF0dXNFbnVtIHtcbiAgT0sgPSAnT0snLFxuICBERVZJQ0VfTk9UX0ZPVU5EX0VSUk9SID0gJ0RFVklDRV9OT1RfRk9VTkRfRVJST1InLFxuICBDQU1FUkFfREVOSUVEX0VSUk9SID0gJ0NBTUVSQV9ERU5JRURfRVJST1InLCAvLyBvciBkaXNtaXNzZWRcbiAgQ0FNRVJBX0lOX1VTRV9FUlJPUiA9ICdDQU1FUkFfSU5fVVNFX0VSUk9SJyxcbiAgQ0FNRVJBX0NMT1NFRF9FUlJPUiA9ICdDQU1FUkFfQ0xPU0VEX0VSUk9SJyxcbiAgQ0FNRVJBX1VOU1VQUE9SVEVEID0gJ0NBTUVSQV9VTlNVUFBPUlRFRCcsXG4gIENBTUVSQV9PUklFTlRBVElPTl9QT1JUUkFJVCA9ICdDQU1FUkFfT1JJRU5UQVRJT05fUE9SVFJBSVQnLFxuICBDQU1FUkFfT1JJRU5UQVRJT05fTEFORFNDQVBFID0gJ0NBTUVSQV9PUklFTlRBVElPTl9MQU5EU0NBUEUnLFxufVxuXG5leHBvcnQgY29uc3QgY2FtZXJhU3RhdHVzU3RvcmUgPSB3cml0YWJsZTxDYW1lcmFTdGF0dXNFbnVtPihDYW1lcmFTdGF0dXNFbnVtLk9LKTtcbiIsIjxzdmVsdGU6b3B0aW9ucyB0YWc9XCJjYW1lcmEtc3RhdHVzXCIgLz5cblxuPHNjcmlwdCBsYW5nPVwidHNcIj5cbiAgZXhwb3J0IGxldCBoYW5kbGVyOiBGdW5jdGlvbiA9ICgpID0+IHt9O1xuICBpbXBvcnQgeyBDYW1lcmFTdGF0dXNFbnVtLCBjYW1lcmFTdGF0dXNTdG9yZSB9IGZyb20gJy4vY2FtZXJhU3RhdHVzU3RvcmUnO1xuICBpbXBvcnQgeyBsb2NrU2NyZWVuIH0gZnJvbSAnLi4vLi4vdXRpbC91dGlsJztcbiAgaW1wb3J0IHsgY29sbGVjdG9yU2VsZWN0LCBzY3JlZW5Mb2NrZWQgfSBmcm9tICcuLi8uLi8uLi9tYWluU3RvcmUnO1xuICBpbXBvcnQgeyBfIH0gZnJvbSAnc3ZlbHRlLWkxOG4nO1xuXG4gIGlmICgkY2FtZXJhU3RhdHVzU3RvcmUgPT09IENhbWVyYVN0YXR1c0VudW0uQ0FNRVJBX09SSUVOVEFUSU9OX0xBTkRTQ0FQRSB8fCAkY2FtZXJhU3RhdHVzU3RvcmUgPT09IENhbWVyYVN0YXR1c0VudW0uQ0FNRVJBX09SSUVOVEFUSU9OX1BPUlRSQUlUKSB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAkY2FtZXJhU3RhdHVzU3RvcmUgPSBDYW1lcmFTdGF0dXNFbnVtLk9LO1xuICAgIH0sIDgwMDApO1xuICB9XG5cbjwvc2NyaXB0PlxuXG48ZGl2XG4gIGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtNCBqdXN0aWZ5LWNlbnRlciByZWxhdGl2ZSBvdmVyZmxvdy12aXNpYmxlIHAtNFwiXG4+XG4gIHsjaWYgJGNhbWVyYVN0YXR1c1N0b3JlID09PSBDYW1lcmFTdGF0dXNFbnVtLkNBTUVSQV9ERU5JRURfRVJST1J9XG4gICAgPCEtLSBpY29uaWZ5IHBoOnZpZGVvLWNhbWVyYS1zbGFzaC1ib2xkIC0tPlxuICAgIDxzdmdcbiAgICAgIGNsYXNzPVwidGV4dC1bOGVtXSBteC1hdXRvXCJcbiAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgd2lkdGg9XCIxZW1cIlxuICAgICAgaGVpZ2h0PVwiMWVtXCJcbiAgICAgIHZpZXdCb3g9XCIwIDAgMjU2IDI1NlwiXG4gICAgICB7Li4uJCRwcm9wc31cbiAgICA+XG4gICAgICA8cGF0aFxuICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgZD1cIk0yNDkuNDUgNjkuMzFhMTIgMTIgMCAwIDAtMTIuNTEgMUwyMTIgODguNDNWNzJhMjAgMjAgMCAwIDAtMjAtMjBoLTY4LjEyYTEyIDEyIDAgMCAwIDAgMjRIMTg4djY4YTEyIDEyIDAgMCAwIDQuNDYgOS4zM2MuMTUuMTMuMzEuMjUuNDguMzhsNDQgMzJBMTIgMTIgMCAwIDAgMjU2IDE3NlY4MGExMiAxMiAwIDAgMC02LjU1LTEwLjY5TTIzMiAxNTIuNDNsLTIwLTE0LjU0di0xOS43OGwyMC0xNC41NFpNNTYuODggMzEuOTNhMTIgMTIgMCAxIDAtMTcuNzYgMTYuMTRMNDIuNjkgNTJIMzJhMjAgMjAgMCAwIDAtMjAgMjB2MTEyYTIwIDIwIDAgMCAwIDIwIDIwaDE0OC44N2wxOC4yNSAyMC4wN2ExMiAxMiAwIDAgMCAxNy43Ni0xNi4xNFpNMzYgMTgwVjc2aDI4LjUxbDk0LjU1IDEwNFpcIlxuICAgICAgLz5cbiAgICA8L3N2Zz5cbiAgICA8c3BhbiBjbGFzcz1cInRleHQteGwgZm9udC1ib2xkIHRleHQtY2VudGVyXCI+eyRfKCdjYW1lcmFTdGF0dXMuY2FtZXJhUGVybWlzc2lvbicpfTwvc3Bhbj5cbiAgICA8c3BhbiBjbGFzcz1cIm0tYXV0byB0ZXh0LWJhc2UgYmxvY2sgdGV4dC1jZW50ZXJcIj57JF8oJ2NhbWVyYVN0YXR1cy5jbGlja1Jlc3RhcnRCdXR0b24nKX08L3NwYW4+XG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3M9XCJ6LTIwIGNlLWR1aS1idG4gY2UtZHVpLWJ0bi1vdXRsaW5lIGNlLWR1aS1idG4tcHJpbWFyeSBtLWF1dG9cIlxuICAgICAgb246Y2xpY2s9eygpID0+IHtcbiAgICAgICAgaGFuZGxlcigpO1xuICAgICAgICBjb25zb2xlLmxvZygnY2FuaWNuYScsIGhhbmRsZXIpO1xuICAgICAgICAvLyBjYXB0dXJpbmcgPSB0cnVlO1xuICAgICAgICAvLyBjYW1lcmFEZW5pZWQgPSBmYWxzZTtcbiAgICAgICAgLy8gb3BlbkNhbWVyYSgpO1xuICAgICAgfX0+eyRfKCdjYW1lcmFTdGF0dXMucmVzdGFydCcpfTwvYnV0dG9uXG4gICAgPlxuICB7OmVsc2UgaWYgJGNhbWVyYVN0YXR1c1N0b3JlID09PSBDYW1lcmFTdGF0dXNFbnVtLkRFVklDRV9OT1RfRk9VTkRfRVJST1J9XG4gICAgPCEtLSBpY29uaWZ5IHBoOnZpZGVvLWNhbWVyYS1zbGFzaC1ib2xkIC0tPlxuICAgIDxzdmdcbiAgICAgIGNsYXNzPVwidGV4dC1bOGVtXSBteC1hdXRvXCJcbiAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgd2lkdGg9XCIxZW1cIlxuICAgICAgaGVpZ2h0PVwiMWVtXCJcbiAgICAgIHZpZXdCb3g9XCIwIDAgMjU2IDI1NlwiXG4gICAgICB7Li4uJCRwcm9wc31cbiAgICA+XG4gICAgICA8cGF0aFxuICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgZD1cIm0xMzcgMTY4bDExLjUyLTExLjUxYTEyIDEyIDAgMCAwLTE3LTE3TDEyMCAxNTFsLTE1LTE1bDExLjUyLTExLjUxYTEyIDEyIDAgMCAwLTE3LTE3TDg4IDExOWwtMTUuNTEtMTUuNDlhMTIgMTIgMCAwIDAtMTcgMTdMNTkgMTI0bC0yMC40NiAyMC40OWEzNiAzNiAwIDAgMCAwIDUwLjkxbDIuNTUgMi41NGwtMjUuNTggMjUuNTdhMTIgMTIgMCAwIDAgMTcgMTdsMjUuNTctMjUuNThsMi41NCAyLjU1YTM2LjA2IDM2LjA2IDAgMCAwIDUwLjkxIDBMMTMyIDE5N2wzLjUxIDMuNTJhMTIgMTIgMCAwIDAgMTctMTdabS00Mi40NiAzMi40OWExMiAxMiAwIDAgMS0xNyAwbC0yMi4wMy0yMi4wNmExMiAxMiAwIDAgMSAwLTE3TDc2IDE0MWwzOSAzOVptMTQ2LTE4NWExMiAxMiAwIDAgMC0xNyAwbC0yNS42IDI1LjZsLTIuNTQtMi41NWEzNi4wNSAzNi4wNSAwIDAgMC01MC45MSAwTDEyNCA1OWwtMy41MS0zLjUyYTEyIDEyIDAgMCAwLTE3IDE3bDgwIDgwYTEyIDEyIDAgMCAwIDE3LTE3TDE5NyAxMzJsMjAuNDktMjAuNDlhMzYgMzYgMCAwIDAgMC01MC45MWwtMi41NS0yLjU0bDI1LjU4LTI1LjU3YTEyIDEyIDAgMCAwLS4wMy0xNi45OFptLTQwIDc5TDE4MCAxMTVsLTM5LTM5bDIwLjQ5LTIwLjQ5YTEyIDEyIDAgMCAxIDE3IDBsMjIuMDYgMjIuMDZhMTIgMTIgMCAwIDEgMCAxN1pcIlxuICAgICAgLz5cbiAgICA8L3N2Zz5cbiAgICA8c3BhbiBjbGFzcz1cInRleHQteGwgZm9udC1ib2xkIHRleHQtY2VudGVyXCI+eyRfKCdjYW1lcmFTdGF0dXMuY2FtZXJhTm90RGV0ZWN0ZWQnKX08L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJtLWF1dG8gdGV4dC1iYXNlIGJsb2NrIHRleHQtY2VudGVyXCJcbiAgICAgID57JF8oJ2NhbWVyYVN0YXR1cy5jb25uZWN0Q2FtZXJhQW5kUmVzdGFydCcpfTwvc3BhblxuICAgID5cbiAgICA8YnV0dG9uXG4gICAgICBjbGFzcz1cInotMjAgY2UtZHVpLWJ0biBjZS1kdWktYnRuLW91dGxpbmUgY2UtZHVpLWJ0bi1wcmltYXJ5IG0tYXV0b1wiXG4gICAgICBvbjpjbGljaz17KCkgPT4ge1xuICAgICAgICBoYW5kbGVyKCk7XG4gICAgICAgIGNvbnNvbGUubG9nKCdjYW5pY25hJywgaGFuZGxlcik7XG4gICAgICAgIC8vIGNhcHR1cmluZyA9IHRydWU7XG4gICAgICAgIC8vIGRldmljZU5vdEZvdW5kID0gZmFsc2U7XG4gICAgICAgIC8vIG9wZW5DYW1lcmEoKTtcbiAgICAgIH19PnskXygnY2FtZXJhU3RhdHVzLnJlc3RhcnQnKX08L2J1dHRvblxuICAgID5cbiAgezplbHNlIGlmICRjYW1lcmFTdGF0dXNTdG9yZSA9PT0gQ2FtZXJhU3RhdHVzRW51bS5DQU1FUkFfSU5fVVNFX0VSUk9SfVxuICAgIDwhLS0gaWNvbmlmeSBwaDp3YXJuaW5nIC0tPlxuICAgIDxzdmdcbiAgICAgIGNsYXNzPVwidGV4dC1bOGVtXSBteC1hdXRvXCJcbiAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgd2lkdGg9XCIxZW1cIlxuICAgICAgaGVpZ2h0PVwiMWVtXCJcbiAgICAgIHZpZXdCb3g9XCIwIDAgMjU2IDI1NlwiXG4gICAgICB7Li4uJCRwcm9wc31cbiAgICA+XG4gICAgICA8cGF0aFxuICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgZD1cIk01Ni44OCAzMS45M2ExMiAxMiAwIDEgMC0xNy43NiAxNi4xNGw0IDQuMzdBMjggMjggMCAwIDAgMjAgODB2MTEyYTI4IDI4IDAgMCAwIDI4IDI4aDE0Ny40MmwzLjcgNC4wN2ExMiAxMiAwIDAgMCAxNy43Ni0xNi4xNFptNDkuMzUgOTBMMTM2IDE1NC42NGEyNCAyNCAwIDAgMS0yOS43Ny0zMi43NVpNNDggMTk2YTQgNCAwIDAgMS00LTRWODBhNCA0IDAgMCAxIDQtNGgxNi41MWwyNC45MiAyNy40MWE0OCA0OCAwIDAgMCA2My4zNCA2OS42N0wxNzMuNiAxOTZaTTIzNiA4MHY5NC4xNGExMiAxMiAwIDAgMS0yNCAwVjgwYTQgNCAwIDAgMC00LTRoLTMyYTEyIDEyIDAgMCAxLTEwLTUuMzRMMTUzLjU3IDUyaC01MS41MWExMiAxMiAwIDAgMSAwLTI0SDE2MGExMiAxMiAwIDAgMSAxMCA1LjM0TDE4Mi40MiA1MkgyMDhhMjggMjggMCAwIDEgMjggMjhcIlxuICAgICAgLz5cbiAgICA8L3N2Zz5cbiAgICA8c3BhbiBjbGFzcz1cInRleHQteGwgZm9udC1ib2xkIHRleHQtY2VudGVyXCI+eyRfKCdjYW1lcmFTdGF0dXMuY2FtZXJhSW5Vc2UnKX08L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJtLWF1dG8gdGV4dC1iYXNlIGJsb2NrIHRleHQtY2VudGVyXCJcbiAgICAgID57JF8oJ2NhbWVyYVN0YXR1cy5lbnN1cmVDYW1lcmFOb3RJblVzZScpfTwvc3BhblxuICAgID5cbiAgICA8YnV0dG9uXG4gICAgICBjbGFzcz1cInotMjAgY2UtZHVpLWJ0biBjZS1kdWktYnRuLW91dGxpbmUgY2UtZHVpLWJ0bi1wcmltYXJ5IG0tYXV0b1wiXG4gICAgICBvbjpjbGljaz17KCkgPT4ge1xuICAgICAgICBoYW5kbGVyKCk7XG4gICAgICAgIGNvbnNvbGUubG9nKCdjYW5pY25hJywgaGFuZGxlcik7XG4gICAgICAgIC8vIGNhcHR1cmluZyA9IHRydWU7XG4gICAgICAgIC8vIG9wZW5DYW1lcmEoKTtcbiAgICAgIH19PnskXygnY2FtZXJhU3RhdHVzLnJlc3RhcnQnKX08L2J1dHRvblxuICAgID5cbiAgezplbHNlIGlmICRjYW1lcmFTdGF0dXNTdG9yZSA9PT0gQ2FtZXJhU3RhdHVzRW51bS5DQU1FUkFfQ0xPU0VEX0VSUk9SfVxuICAgIDwhLS0gaWNvbmlmeSBwaDp3YXJuaW5nIC0tPlxuICAgIDxzdmdcbiAgICAgIGNsYXNzPVwidGV4dC1bOGVtXSBteC1hdXRvXCJcbiAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgd2lkdGg9XCIxZW1cIlxuICAgICAgaGVpZ2h0PVwiMWVtXCJcbiAgICAgIHZpZXdCb3g9XCIwIDAgMjU2IDI1NlwiXG4gICAgICB7Li4uJCRwcm9wc31cbiAgICA+XG4gICAgICA8cGF0aFxuICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgZD1cIk0yMzYuOCAxODguMDlMMTQ5LjM1IDM2LjIyYTI0Ljc2IDI0Ljc2IDAgMCAwLTQyLjcgMEwxOS4yIDE4OC4wOWEyMy41MSAyMy41MSAwIDAgMCAwIDIzLjcyQTI0LjM1IDI0LjM1IDAgMCAwIDQwLjU1IDIyNGgxNzQuOWEyNC4zNSAyNC4zNSAwIDAgMCAyMS4zMy0xMi4xOWEyMy41MSAyMy41MSAwIDAgMCAuMDItMjMuNzJtLTEzLjg3IDE1LjcxYTguNSA4LjUgMCAwIDEtNy40OCA0LjJINDAuNTVhOC41IDguNSAwIDAgMS03LjQ4LTQuMmE3LjU5IDcuNTkgMCAwIDEgMC03LjcybDg3LjQ1LTE1MS44N2E4Ljc1IDguNzUgMCAwIDEgMTUgMGw4Ny40NSAxNTEuODdhNy41OSA3LjU5IDAgMCAxLS4wNCA3LjcyTTEyMCAxNDR2LTQwYTggOCAwIDAgMSAxNiAwdjQwYTggOCAwIDAgMS0xNiAwbTIwIDM2YTEyIDEyIDAgMSAxLTEyLTEyYTEyIDEyIDAgMCAxIDEyIDEyXCJcbiAgICAgIC8+XG4gICAgPC9zdmc+XG4gICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXhsIGZvbnQtYm9sZCB0ZXh0LWNlbnRlclwiPnskXygnY2FtZXJhU3RhdHVzLnN0YXlPblNhbWVUYWInKX08L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJtLWF1dG8gdGV4dC1iYXNlIGJsb2NrIHRleHQtY2VudGVyXCI+eyRfKCdjYW1lcmFTdGF0dXMuY2xpY2tSZXN0YXJ0VG9SZWNhcHR1cmUnKX08L3NwYW4+XG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3M9XCJ6LTIwIGNlLWR1aS1idG4gY2UtZHVpLWJ0bi1vdXRsaW5lIGNlLWR1aS1idG4tcHJpbWFyeSBtLWF1dG9cIlxuICAgICAgb246Y2xpY2s9eygpID0+IHtcbiAgICAgICAgaGFuZGxlcigpO1xuICAgICAgfX0+eyRfKCdjYW1lcmFTdGF0dXMucmVzdGFydCcpfTwvYnV0dG9uXG4gICAgPlxuICB7OmVsc2UgaWYgJGNhbWVyYVN0YXR1c1N0b3JlID09PSBDYW1lcmFTdGF0dXNFbnVtLkNBTUVSQV9VTlNVUFBPUlRFRH1cbiAgICA8IS0tIGljb25pZnkgcGg6dmlkZW8tY2FtZXJhLXNsYXNoLWJvbGQgLS0+XG4gICAgPHN2Z1xuICAgICAgY2xhc3M9XCJ0ZXh0LVs4ZW1dIG14LWF1dG9cIlxuICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICB3aWR0aD1cIjFlbVwiXG4gICAgICBoZWlnaHQ9XCIxZW1cIlxuICAgICAgdmlld0JveD1cIjAgMCAyNTYgMjU2XCJcbiAgICAgIHsuLi4kJHByb3BzfVxuICAgID5cbiAgICAgIDxwYXRoXG4gICAgICAgIGZpbGw9XCJjdXJyZW50Q29sb3JcIlxuICAgICAgICBkPVwiTTI0OS40NSA2OS4zMWExMiAxMiAwIDAgMC0xMi41MSAxTDIxMiA4OC40M1Y3MmEyMCAyMCAwIDAgMC0yMC0yMGgtNjguMTJhMTIgMTIgMCAwIDAgMCAyNEgxODh2NjhhMTIgMTIgMCAwIDAgNC40NiA5LjMzYy4xNS4xMy4zMS4yNS40OC4zOGw0NCAzMkExMiAxMiAwIDAgMCAyNTYgMTc2VjgwYTEyIDEyIDAgMCAwLTYuNTUtMTAuNjlNMjMyIDE1Mi40M2wtMjAtMTQuNTR2LTE5Ljc4bDIwLTE0LjU0Wk01Ni44OCAzMS45M2ExMiAxMiAwIDEgMC0xNy43NiAxNi4xNEw0Mi42OSA1MkgzMmEyMCAyMCAwIDAgMC0yMCAyMHYxMTJhMjAgMjAgMCAwIDAgMjAgMjBoMTQ4Ljg3bDE4LjI1IDIwLjA3YTEyIDEyIDAgMCAwIDE3Ljc2LTE2LjE0Wk0zNiAxODBWNzZoMjguNTFsOTQuNTUgMTA0WlwiXG4gICAgICAvPlxuICAgIDwvc3ZnPlxuICAgIDxzcGFuIGNsYXNzPVwidGV4dC14bCBmb250LWJvbGQgdGV4dC1jZW50ZXJcIj57JF8oJ2NhbWVyYVN0YXR1cy5jYW1lcmFOb3RTdXBwb3J0ZWQnKX08L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJtLWF1dG8gdGV4dC1iYXNlIGJsb2NrIHRleHQtY2VudGVyXCI+eyRfKCdjYW1lcmFTdGF0dXMuY29ubmVjdEFub3RoZXJDYW1lcmEnKX08L3NwYW4+XG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3M9XCJ6LTIwIGNlLWR1aS1idG4gY2UtZHVpLWJ0bi1vdXRsaW5lIGNlLWR1aS1idG4tcHJpbWFyeSBtLWF1dG9cIlxuICAgICAgb246Y2xpY2s9eygpID0+IHtcbiAgICAgICAgaGFuZGxlcigpO1xuICAgICAgfX0+eyRfKCdjYW1lcmFTdGF0dXMucmVzdGFydCcpfTwvYnV0dG9uXG4gICAgPlxuICB7OmVsc2UgaWYgJGNhbWVyYVN0YXR1c1N0b3JlID09PSBDYW1lcmFTdGF0dXNFbnVtLkNBTUVSQV9PUklFTlRBVElPTl9QT1JUUkFJVCAmJiAkY29sbGVjdG9yU2VsZWN0ID09ICdGQUNFJ31cbiAgICA8IS0tIGljb25pZnkgcGg6dmlkZW8tY2FtZXJhLXNsYXNoLWJvbGQgLS0+XG4gICAgPHN2Z1xuICAgICAgY2xhc3M9XCJ0ZXh0LVs4ZW1dIG14LWF1dG9cIlxuICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICB3aWR0aD1cIjFlbVwiXG4gICAgICBoZWlnaHQ9XCIxZW1cIlxuICAgICAgdmlld0JveD1cIjAgMCAyNCAyNFwiXG4gICAgICB7Li4uJCRwcm9wc31cbiAgICA+XG4gICAgICA8cGF0aFxuICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgZD1cIk05IDFIM2EyIDIgMCAwIDAtMiAydjEzYTIgMiAwIDAgMCAyIDJoMXYtM0gzVjNoNnY4aDJWM2EyIDIgMCAwIDAtMi0ybTE0IDIwdi02YTIgMiAwIDAgMC0yLTJIOGEyIDIgMCAwIDAtMiAydjZhMiAyIDAgMCAwIDIgMmgxM2EyIDIgMCAwIDAgMi0yTTkgMjF2LTZoMTJ2NnptMTQtMTFoLTEuNWMwLTMtMS44MS01LjczLTQuNTgtNi45MUwxNiA1bC0yLTRhOSA5IDAgMCAxIDkgOVwiXG4gICAgICAvPlxuICAgIDwvc3ZnPlxuICAgIDxzcGFuIGNsYXNzPVwidGV4dC14bCBmb250LWJvbGQgdGV4dC1jZW50ZXJcIj57JF8oJ2NhbWVyYVN0YXR1cy5kZXZpY2VNdXN0QmVJblBvcnRyYWl0Jyl9PC9zcGFuPlxuICAgIDxzcGFuIGNsYXNzPVwibS1hdXRvIHRleHQtYmFzZSBibG9jayB0ZXh0LWNlbnRlclwiPnskXygnY2FtZXJhU3RhdHVzLnJvdGF0ZURldmljZU9yUHJlc3NCdXR0b24nKX08L3NwYW4+XG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3M9XCJ6LTIwIGNlLWR1aS1idG4gY2UtZHVpLWJ0bi1vdXRsaW5lIGNlLWR1aS1idG4tcHJpbWFyeSBtLWF1dG9cIlxuICAgICAgb246Y2xpY2s9eygpID0+IHtcbiAgICAgICAgJHNjcmVlbkxvY2tlZCA9IHRydWU7XG4gICAgICAgIGxvY2tTY3JlZW4odHJ1ZSk7XG4gICAgICB9fT57JF8oJ2NhbWVyYVN0YXR1cy5hZGp1c3RPcmllbnRhdGlvbicpfTwvYnV0dG9uXG4gICAgPlxuICB7OmVsc2UgaWYgJGNhbWVyYVN0YXR1c1N0b3JlID09PSBDYW1lcmFTdGF0dXNFbnVtLkNBTUVSQV9PUklFTlRBVElPTl9MQU5EU0NBUEUgJiYgJGNvbGxlY3RvclNlbGVjdCA9PSAnRE9DVU1FTlQnfVxuICAgIDwhLS0gaWNvbmlmeSBwaDp2aWRlby1jYW1lcmEtc2xhc2gtYm9sZCAtLT5cbiAgICA8c3ZnXG4gICAgICBjbGFzcz1cInRleHQtWzhlbV0gbXgtYXV0b1wiXG4gICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgIHdpZHRoPVwiMWVtXCJcbiAgICAgIGhlaWdodD1cIjFlbVwiXG4gICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCJcbiAgICAgIHsuLi4kJHByb3BzfVxuICAgID5cbiAgICAgIDxwYXRoXG4gICAgICAgIGZpbGw9XCJjdXJyZW50Q29sb3JcIlxuICAgICAgICBkPVwiTTkgMUgzYTIgMiAwIDAgMC0yIDJ2MTNhMiAyIDAgMCAwIDIgMmg2YTIgMiAwIDAgMCAyLTJWM2EyIDIgMCAwIDAtMi0ybTAgMTRIM1YzaDZ6bTEyLTJoLTh2Mmg4djZIOXYtMUg2djFhMiAyIDAgMCAwIDIgMmgxM2EyIDIgMCAwIDAgMi0ydi02YTIgMiAwIDAgMC0yLTJtMi0zbC00LTJsMS45MS0uOTFBNy41MiA3LjUyIDAgMCAwIDE0IDIuNVYxYTkgOSAwIDAgMSA5IDlcIlxuICAgICAgLz5cbiAgICA8L3N2Zz5cbiAgICA8c3BhbiBjbGFzcz1cInRleHQteGwgZm9udC1ib2xkIHRleHQtY2VudGVyXCI+eyRfKCdjYW1lcmFTdGF0dXMuZGV2aWNlTXVzdEJlSW5MYW5kc2NhcGUnKX08L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJtLWF1dG8gdGV4dC1iYXNlIGJsb2NrIHRleHQtY2VudGVyXCI+eyRfKCdjYW1lcmFTdGF0dXMucm90YXRlRGV2aWNlT3JQcmVzc0J1dHRvbicpfTwvc3Bhbj5cbiAgICA8YnV0dG9uXG4gICAgICBjbGFzcz1cInotMjAgY2UtZHVpLWJ0biBjZS1kdWktYnRuLW91dGxpbmUgY2UtZHVpLWJ0bi1wcmltYXJ5IG0tYXV0b1wiXG4gICAgICBvbjpjbGljaz17KCkgPT4ge1xuICAgICAgICAkc2NyZWVuTG9ja2VkID0gdHJ1ZTtcbiAgICAgICAgbG9ja1NjcmVlbihmYWxzZSk7XG4gICAgICB9fT57JF8oJ2NhbWVyYVN0YXR1cy5hZGp1c3RPcmllbnRhdGlvbicpfTwvYnV0dG9uXG4gICAgPlxuICB7L2lmfVxuPC9kaXY+XG4iLCI8IS0tIHN2ZWx0ZS1pZ25vcmUgbWlzc2luZy1kZWNsYXJhdGlvbiAtLT5cbjxzdmVsdGU6b3B0aW9ucyB0YWc9XCJjYW1lcmEtYnRuXCIgLz5cblxuPHNjcmlwdCBsYW5nPVwidHNcIj5cbiAgaW1wb3J0IHsgaXNNb2JpbGUgfSBmcm9tICcuLi8uLi8uLi9zcmMvbGliL3V0aWwvdXRpbCc7XG4gIGltcG9ydCB7IHN3YXBDYW1lcmEgfSBmcm9tICcuL2NvbmZTdG9yZSc7XG4gIGltcG9ydCBDb25mTW9kYWwgZnJvbSAnLi9Db25mTW9kYWwuc3ZlbHRlJztcbiAgaW1wb3J0IHsgY2FtZXJhRGV2aWNlc1N0b3JlIH0gZnJvbSAnLi4vZmFjZVRhYi9mYWNlU3RvcmUnO1xuICBpbXBvcnQgeyBjb2xsZWN0b3JTZWxlY3QgfSBmcm9tICcuLi8uLi9tYWluU3RvcmUnO1xuPC9zY3JpcHQ+XG5cbjxDb25mTW9kYWwgLz5cblxuPCEtLSBzdmVsdGUtaWdub3JlIGExMXktY2xpY2stZXZlbnRzLWhhdmUta2V5LWV2ZW50cyAtLT5cbjxkaXZcbiAgb246Y2xpY2s9eygpID0+IHtcbiAgICAkc3dhcENhbWVyYSA9ICEkc3dhcENhbWVyYTtcbiAgfX1cbiAgY2xhc3M9e1xuICBpc01vYmlsZSgpICYmICRjb2xsZWN0b3JTZWxlY3QgPT0gJ0RPQ1VNRU5UJ1xuICA/IGBjZS1kdWktZHJvcGRvd24gY2UtZHVpLWRyb3Bkb3duLXRvcCBhYnNvbHV0ZSByaWdodC0xMCB0b3AtMTAgdHJhbnNsYXRlLXktMS8yIHotMjAgcm90YXRlLVstOTBkZWddYCBcbiAgOiAoaXNNb2JpbGUoKSAmJiAkY29sbGVjdG9yU2VsZWN0ID09ICdGQUNFJyBcbiAgPyBgY2UtZHVpLWRyb3Bkb3duIGNlLWR1aS1kcm9wZG93bi10b3AgYWJzb2x1dGUgei0yMCByaWdodC0yIHNtOmJsb2NrIGJvdHRvbS0xMGBcbiAgOiBgY2UtZHVpLWRyb3Bkb3duIGNlLWR1aS1kcm9wZG93bi10b3AgYWJzb2x1dGUgei0yMCByaWdodC0yIHNtOmJsb2NrIGJvdHRvbS0yYCl9XG4+XG4gIDwhLS0gc3ZlbHRlLWlnbm9yZSBhMTF5LWxhYmVsLWhhcy1hc3NvY2lhdGVkLWNvbnRyb2wgLS0+XG4gIDwhLS0gc3ZlbHRlLWlnbm9yZSBhMTF5LW5vLW5vbmludGVyYWN0aXZlLXRhYmluZGV4IC0tPlxuICA8bGFiZWwgdGFiaW5kZXg9XCIwXCIgaGlkZGVuPXskY2FtZXJhRGV2aWNlc1N0b3JlLmxlbmd0aCA8PSAxfSBjbGFzcz1cImNlLWR1aS1idG4gY2UtZHVpLWJ0bi1naG9zdFwiXG4gICAgPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMmVtXCIgaGVpZ2h0PVwiMmVtXCIgdmlld0JveD1cIjAgMCAyNTYgMjU2XCIgey4uLiQkcHJvcHN9PlxuICAgICAgPHBhdGhcbiAgICAgICAgZmlsbD1cImhzbCh2YXIoLS1uKSlcIlxuICAgICAgICBkPVwiTTIwOCA1NmgtMjcuNzJsLTEzLjYzLTIwLjQ0QTggOCAwIDAgMCAxNjAgMzJIOTZhOCA4IDAgMCAwLTYuNjUgMy41Nkw3NS43MSA1Nkg0OGEyNCAyNCAwIDAgMC0yNCAyNHYxMTJhMjQgMjQgMCAwIDAgMjQgMjRoMTYwYTI0IDI0IDAgMCAwIDI0LTI0VjgwYTI0IDI0IDAgMCAwLTI0LTI0bS01MS4xOSAxMTAuNEE0OC4yMSA0OC4yMSAwIDAgMSA5NiAxNjMuNzdWMTY4YTggOCAwIDAgMS0xNiAwdi0yNGE4IDggMCAwIDEgOC04aDI0YTggOCAwIDAgMSAwIDE2aC01LjE1YTMyLjEyIDMyLjEyIDAgMCAwIDQwLjM0IDEuNjFhOCA4IDAgMCAxIDkuNjIgMTIuNzlNMTc2IDEyMGE4IDggMCAwIDEtOCA4aC0yNGE4IDggMCAwIDEgMC0xNmg1LjE1YTMyLjEyIDMyLjEyIDAgMCAwLTQwLjM0LTEuNjFhOCA4IDAgMCAxLTkuNjItMTIuNzlhNDguMjEgNDguMjEgMCAwIDEgNjAuODEgMi42M1Y5NmE4IDggMCAwIDEgMTYgMFpcIlxuICAgICAgLz5cbiAgICA8L3N2Zz48L2xhYmVsXG4gID5cbjwvZGl2PlxuIiwiPHN2ZWx0ZTpvcHRpb25zIHRhZz1cInRha2UtcGljdHVyZS1idG5cIiAvPlxuXG48c2NyaXB0IGxhbmc9XCJ0c1wiPlxuICAgIGltcG9ydCB7IF8gfSBmcm9tICdzdmVsdGUtaTE4bic7XG4gIGltcG9ydCB7IGlzTW9iaWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbC91dGlsJztcbiAgaW1wb3J0IHsgY29sbGVjdG9yU2VsZWN0IH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vbWFpblN0b3JlJztcbiAgICBleHBvcnQgbGV0IGhhbmRsZXI6IEZ1bmN0aW9uID0gKCkgPT4ge307XG4gICAgZXhwb3J0IGxldCBpZCA9ICcnO1xuICAgIGV4cG9ydCBsZXQgZGlzYWJsZWQgPSBmYWxzZTtcbiAgICBleHBvcnQgbGV0IGhpZGRlbiA9IGZhbHNlO1xuPC9zY3JpcHQ+XG5cbnsjaWYgaXNNb2JpbGUoKSAmJiAkY29sbGVjdG9yU2VsZWN0ID09ICdET0NVTUVOVCd9XG4gIDxkaXYgY2xhc3M9XCJhYnNvbHV0ZSByaWdodC0yIHRvcC0xLzIgLXRyYW5zbGF0ZS15LTEvMiB6LTIwIHJvdGF0ZS1bLTkwZGVnXVwiPlxuICAgIDxidXR0b25cbiAgICAgIHtpZH1cbiAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgIGhpZGRlbj17aGlkZGVufVxuICAgICAgY2xhc3M9XCJjZS1kdWktYnRuIGNlLWR1aS1idG4tcHJpbWFyeSB0ZXh0LXhsIHBiLVsycHhdXCJcbiAgICAgIG9uOmNsaWNrPXsoKSA9PiBoYW5kbGVyKCl9PlxuICAgICAgeyRfKCdkb2NDb2xsZWN0b3IuY2FwdHVyZScpfVxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cbns6ZWxzZSBpZiAkY29sbGVjdG9yU2VsZWN0ID09ICdET0NVTUVOVCd9XG4gIDxkaXYgY2xhc3M9XCJmbGV4IGp1c3RpZnktY2VudGVyIGl0ZW1zLWNlbnRlclwiPlxuICAgIDxidXR0b25cbiAgICAgIHtpZH1cbiAgICAgIGRpc2FibGVkPXtkaXNhYmxlZH1cbiAgICAgIGhpZGRlbj17aGlkZGVufVxuICAgICAgY2xhc3M9XCJjZS1kdWktYnRuIGNlLWR1aS1idG4tcHJpbWFyeSB0ZXh0LXhsIHBiLVsycHhdIGFic29sdXRlIHotMTAgYm90dG9tLTJcIlxuICAgICAgb246Y2xpY2s9eygpID0+IGhhbmRsZXIoKX0+XG4gICAgICB7JF8oJ2RvY0NvbGxlY3Rvci5jYXB0dXJlJyl9XG4gICAgPC9idXR0b24+XG4gIDwvZGl2PlxuezplbHNlfVxuICA8ZGl2IGNsYXNzPVwiZmxleCBqdXN0aWZ5LWNlbnRlciBpdGVtcy1jZW50ZXJcIj5cbiAgICA8YnV0dG9uXG4gICAgICB7aWR9XG4gICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICBoaWRkZW49e2hpZGRlbn1cbiAgICAgIGNsYXNzPXtcbiAgICAgIGlzTW9iaWxlKClcbiAgICAgID8gXCJjZS1kdWktYnRuIGNlLWR1aS1idG4tcHJpbWFyeSB0ZXh0LXhsIHBiLVsycHhdIGFic29sdXRlIHotMjAgYm90dG9tLTEwXCJcbiAgICAgIDogXCJjZS1kdWktYnRuIGNlLWR1aS1idG4tcHJpbWFyeSB0ZXh0LXhsIHBiLVsycHhdIGFic29sdXRlIHotMjAgYm90dG9tLTJcIn1cbiAgICAgIG9uOmNsaWNrPXsoKSA9PiBoYW5kbGVyKCl9PlxuICAgICAgeyRfKCdmYWNlQ29sbGVjdG9yLmNhcHR1cmUnKX1cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG57L2lmfSIsImV4cG9ydCBkZWZhdWx0IFwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCM2FXUjBhRDBpT0RVaUlHaGxhV2RvZEQwaU1qVWlJSFpwWlhkQ2IzZzlJakFnTUNBNE5TQXlOU0lnWm1sc2JEMGlibTl1WlNJZ2VHMXNibk05SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpJd01EQXZjM1puSWo0S1BIQmhkR2dnWkQwaVRUSTRMak16TmlBeU1GWTFMamRJTXpRdU1qYzJRek0xTGpJeU1qY2dOUzQzSURNMkxqQTBPVE1nTlM0NE5UTXpNeUF6Tmk0M05UWWdOaTR4TmtNek55NDBOakkzSURZdU5EWTJOamNnTXpndU1EQTVNeUEyTGprZ016Z3VNemsySURjdU5EWkRNemd1TnpneU55QTRMakF5SURNNExqazNOaUE0TGpZNElETTRMamszTmlBNUxqUTBRek00TGprM05pQXhNQzR4TXpNeklETTRMamM0TWpjZ01UQXVOelV6TXlBek9DNHpPVFlnTVRFdU0wTXpPQzR3TURreklERXhMamd6TXpNZ016Y3VORFl5TnlBeE1pNHlOVE16SURNMkxqYzFOaUF4TWk0MU5rTXpOaTR3TkRreklERXlMamcyTmpjZ016VXVNakl5TnlBeE15NHdNaUF6TkM0eU56WWdNVE11TURKSU16RXVNak0yVmpFeVNETTBMalExTmtNek5TNDBPREkzSURFeUlETTJMak0zTmlBeE1pNHhOaUF6Tnk0eE16WWdNVEl1TkRoRE16Y3VPVEE1TXlBeE1pNDNPRFkzSURNNExqVXdPVE1nTVRNdU1qTXpNeUF6T0M0NU16WWdNVE11T0RKRE16a3VNemMySURFMExqTTVNek1nTXprdU5UazJJREUxTGpBNElETTVMalU1TmlBeE5TNDRPRU16T1M0MU9UWWdNVFl1Tmprek15QXpPUzR6T0RJM0lERTNMalF4TXpNZ016Z3VPVFUySURFNExqQTBRek00TGpVeU9UUWdNVGd1TmpZMk55QXpOeTQ1TWpreklERTVMakUxTXpNZ016Y3VNVFUySURFNUxqVkRNell1TXpneU55QXhPUzQ0TXpNeklETTFMalE0TWpjZ01qQWdNelF1TkRVMklESXdTREk0TGpNek5scE5NekV1TURNMklERTNMamMwU0RNMExqUTNOa016TlM0eU1Ea3pJREUzTGpjMElETTFMamM0T1RNZ01UY3VOVFkyTnlBek5pNHlNVFlnTVRjdU1qSkRNell1TmpReU55QXhOaTQ0TmlBek5pNDROVFlnTVRZdU16WWdNell1T0RVMklERTFMamN5UXpNMkxqZzFOaUF4TlM0eE1EWTNJRE0yTGpZME1qY2dNVFF1TmpNek15QXpOaTR5TVRZZ01UUXVNME16TlM0M09Ea3pJREV6TGprMU16TWdNelV1TWpBNU15QXhNeTQzT0NBek5DNDBOellnTVRNdU56aElNekF1T0RNMlZqRXhMalUyU0RNMExqRXpOa016TkM0M09Ea3pJREV4TGpVMklETTFMak13TWpjZ01URXVOQ0F6TlM0Mk56WWdNVEV1TURoRE16WXVNRFl5TnlBeE1DNDNORFkzSURNMkxqSTFOaUF4TUM0eU9UTXpJRE0yTGpJMU5pQTVMamN5UXpNMkxqSTFOaUE1TGpFMklETTJMakEyTWpjZ09DNDNNalkyTnlBek5TNDJOellnT0M0ME1rTXpOUzR6TURJM0lEZ3VNVEV6TXpNZ016UXVOemc1TXlBM0xqazJJRE0wTGpFek5pQTNMamsyU0RNeExqQXpObFl4Tnk0M05GcE5ORGN1T0RNeU1TQTVMamMyVmpFeUxqRTJTRFEzTGpJNU1qRkRORFl1TmpZMU5DQXhNaTR4TmlBME5pNHhNalUwSURFeUxqSTROamNnTkRVdU5qY3lNU0F4TWk0MU5FTTBOUzR5TVRnNElERXlMamM0SURRMExqZzFPRGdnTVRNdU1UWWdORFF1TlRreU1TQXhNeTQyT0VNME5DNHpNemc0SURFMExqSWdORFF1TWpFeU1TQXhOQzQ0TnpNeklEUTBMakl4TWpFZ01UVXVOMVl5TUVnME1TNDFOekl4VmprdU9UUklORFF1TVRreU1WWXhNeTR5U0RRekxqZzNNakZETkRNdU9Ua3lNU0F4TWk0ek1EWTNJRFEwTGpJek9EZ2dNVEV1TmpFek15QTBOQzQyTVRJeElERXhMakV5UXpRMExqazVPRGdnTVRBdU5qSTJOeUEwTlM0ME5EVTBJREV3TGpJNElEUTFMamsxTWpFZ01UQXVNRGhETkRZdU5EY3lNU0E1TGpnMk5qWTNJRFEyTGprM09EZ2dPUzQzTmlBME55NDBOekl4SURrdU56WklORGN1T0RNeU1WcE5OVGN1TWpBd09TQTVMamswU0RVNUxqZzJNRGxNTlRVdU1EZ3dPU0F5TVM0eE5rTTFOQzQyT1RReUlESXlMakExTXpNZ05UUXVNakEzTlNBeU1pNDNNalkzSURVekxqWXlNRGtnTWpNdU1UaEROVE11TURNME1pQXlNeTQyTkRZM0lEVXlMakkxTkRJZ01qTXVPRGdnTlRFdU1qZ3dPU0F5TXk0NE9FZzBPUzQ1T0RBNVZqSXhMamN5U0RVeExqRTBNRGxETlRFdU5UUXdPU0F5TVM0M01pQTFNUzQ0TnpReUlESXhMall5TmpjZ05USXVNVFF3T1NBeU1TNDBORU0xTWk0ME1qQTVJREl4TGpJMk5qY2dOVEl1TmpRd09TQXlNQzQ1T0RZM0lEVXlMamd3TURrZ01qQXVOa3cxTXk0d01qQTVJREl3TGpBeVREUTRMamN5TURrZ09TNDVORWcxTVM0ME5qQTVURFUwTGpjME1Ea2dNVGd1TlRKSU5UTXVPRGd3T1V3MU55NHlNREE1SURrdU9UUmFUVFkzTGprd016VWdNakJJTmpVdU1qWXpOVlk1TGprMFNEWTNMamt3TXpWV01qQmFUVFkyTGpVNE16VWdPQzR5UXpZMkxqRTBNelVnT0M0eUlEWTFMamMyTXpVZ09DNHdOVE16TXlBMk5TNDBORE0xSURjdU56WkROalV1TVRNMk9DQTNMalExTXpNeklEWTBMams0TXpVZ055NHdPRFkyTnlBMk5DNDVPRE0xSURZdU5qWkROalF1T1Rnek5TQTJMakl3TmpZM0lEWTFMakV6TmpnZ05TNDRNek16TXlBMk5TNDBORE0xSURVdU5UUkROalV1TnpZek5TQTFMakkwTmpZM0lEWTJMakUwTXpVZ05TNHhJRFkyTGpVNE16VWdOUzR4UXpZM0xqQXpOamdnTlM0eElEWTNMalF4TmpnZ05TNHlOVE16TXlBMk55NDNNak0xSURVdU5UWkROamd1TURNd01pQTFMamcxTXpNeklEWTRMakU0TXpVZ05pNHlNaUEyT0M0eE9ETTFJRFl1TmpaRE5qZ3VNVGd6TlNBM0xqQTROalkzSURZNExqQXpNRElnTnk0ME5UTXpNeUEyTnk0M01qTTFJRGN1TnpaRE5qY3VOREUyT0NBNExqQTFNek16SURZM0xqQXpOamdnT0M0eUlEWTJMalU0TXpVZ09DNHlXazAzTUM0MU1EUWdNakJXTlM0M1NEYzFMalV3TkVNM055NHdNemN6SURVdU55QTNPQzR6TnpjeklEWXVNREEyTmpjZ056a3VOVEkwSURZdU5qSkRPREF1TmpnMElEY3VNaklnT0RFdU5UZzBJRGd1TURZZ09ESXVNakkwSURrdU1UUkRPREl1T0RjM015QXhNQzR5TURZM0lEZ3pMakl3TkNBeE1TNDBOQ0E0TXk0eU1EUWdNVEl1T0RSRE9ETXVNakEwSURFMExqSTBJRGd5TGpnM056TWdNVFV1TkRnZ09ESXVNakkwSURFMkxqVTJRemd4TGpVNE5DQXhOeTQyTWpZM0lEZ3dMalk0TkNBeE9DNDBOalkzSURjNUxqVXlOQ0F4T1M0d09FTTNPQzR6TnpjeklERTVMalk1TXpNZ056Y3VNRE0zTXlBeU1DQTNOUzQxTURRZ01qQklOekF1TlRBMFdrMDNNeTR5TURRZ01UY3VOMGczTlM0MU1EUkROell1TlRBMElERTNMamNnTnpjdU16WTBJREUzTGpVZ056Z3VNRGcwSURFM0xqRkROemd1T0RFM015QXhOaTQzSURjNUxqTTNOek1nTVRZdU1UUWdOemt1TnpZMElERTFMalF5UXpnd0xqRTJOQ0F4TkM0Mk9EWTNJRGd3TGpNMk5DQXhNeTQ0TWpZM0lEZ3dMak0yTkNBeE1pNDRORU00TUM0ek5qUWdNVEV1T0RVek15QTRNQzR4TmpRZ01URWdOemt1TnpZMElERXdMakk0UXpjNUxqTTNOek1nT1M0MU5EWTJOeUEzT0M0NE1UY3pJRGd1T1RnMk5qY2dOemd1TURnMElEZ3VOa00zTnk0ek5qUWdPQzR5SURjMkxqVXdOQ0E0SURjMUxqVXdOQ0E0U0RjekxqSXdORll4Tnk0M1dpSWdabWxzYkQwaWQyaHBkR1VpTHo0S1BHTnBjbU5zWlNCamVEMGlNVEFpSUdONVBTSXhNeTR6TURZeUlpQnlQU0kwSWlCbWFXeHNQU0ozYUdsMFpTSXZQZ284WTJseVkyeGxJR040UFNJNUxqazFPVEExSWlCamVUMGlNVE11TWpVeUlpQnlQU0kyTGpjMU1qQXlJaUJ6ZEhKdmEyVTlJbmRvYVhSbElpOCtDanh3WVhSb0lHUTlJazAxTGpRM09URTVJRFJJTXk0eE16STVOVU14TGprMU5EazFJRFFnTVNBMExqazFORGsxSURFZ05pNHhNekk1TlZZNExqUTNPVEU1VFRFMExqUXpOellnTkVneE5pNDNPRE00UXpFM0xqazJNVGdnTkNBeE9DNDVNVFkzSURRdU9UVTBPVFVnTVRndU9URTJOeUEyTGpFek1qazFWamd1TkRjNU1UbE5NVGd1T1RFMk55QXhOeTQwTXpjMlZqRTVMamM0TXpoRE1UZ3VPVEUyTnlBeU1DNDVOakU0SURFM0xqazJNVGdnTWpFdU9URTJOeUF4Tmk0M09ETTRJREl4TGpreE5qZElNVFF1TkRNM05rMDFMalEzT1RFNUlESXhMamt4TmpkSU15NHhNekk1TlVNeExqazFORGsxSURJeExqa3hOamNnTVNBeU1DNDVOakU0SURFZ01Ua3VOemd6T0ZZeE55NDBNemMySWlCemRISnZhMlU5SW5kb2FYUmxJaTgrQ2p3dmMzWm5QZ289XCIiLCI8IS0tIHN2ZWx0ZS1pZ25vcmUgbWlzc2luZy1kZWNsYXJhdGlvbiAtLT5cbjxzdmVsdGU6b3B0aW9ucyB0YWc9XCJ3YXRlci1tYXJrXCIgLz5cblxuPHNjcmlwdCBsYW5nPVwidHNcIj5cbiAgICBpbXBvcnQgeyBvdmFsRGltZW5zaW9ucywgZG9jRGltZW5zaW9ucyB9IGZyb20gXCIuLi9mYWNlVGFiL2ZhY2VBcGlTdG9yZVwiO1xuICAgIGltcG9ydCB7IGNvbGxlY3RvclNlbGVjdCB9IGZyb20gXCIuLi8uLi9tYWluU3RvcmVcIjtcbiAgICBpbXBvcnQgd2F0ZXJNYXJrIGZyb20gXCIuLi8uLi9hc3NldHMvaW1nL0JyeUlEd2F0ZXJNYXJrLnN2Z1wiO1xuICAgIGltcG9ydCB7IHZpZGVvU3RvcmUgfSBmcm9tIFwiLi4vZmFjZVRhYi9mYWNlU3RvcmVcIjtcbiAgICBpbXBvcnQgeyBpc01vYmlsZSB9IGZyb20gJy4uL3V0aWwvdXRpbCc7XG5cbiAgICBsZXQgb3ZhbFdpZHRoOiBudW1iZXI7XG4gICAgbGV0IG92YWxIZWlnaHQ6IG51bWJlcjtcbiAgICBsZXQgb3ZhbE1hcmdpblRvcDogbnVtYmVyO1xuICAgIGxldCBkb2NXaWR0aDogbnVtYmVyO1xuICAgIGxldCBkb2NIZWlnaHQ6IG51bWJlcjtcbiAgICBsZXQgZG9jTWFyZ2luVG9wOiBudW1iZXI7XG5cbiAgICAkOiBpZiAoJHZpZGVvU3RvcmUpIHtcbiAgICAgICAgb3ZhbFdpZHRoID0gJG92YWxEaW1lbnNpb25zLndpZHRoIC8gJHZpZGVvU3RvcmUudmlkZW9XaWR0aCAqIDEwMDtcbiAgICAgICAgb3ZhbEhlaWdodCA9ICRvdmFsRGltZW5zaW9ucy5oZWlnaHQgLyAkdmlkZW9TdG9yZS52aWRlb0hlaWdodCAqIDEwMDtcbiAgICAgICAgb3ZhbE1hcmdpblRvcCA9ICgkb3ZhbERpbWVuc2lvbnMueSAtICgkb3ZhbERpbWVuc2lvbnMuaGVpZ2h0IC8gMikpIC8gJHZpZGVvU3RvcmUudmlkZW9IZWlnaHQgKiA1OVxuXG4gICAgICAgIGRvY1dpZHRoID0gJGRvY0RpbWVuc2lvbnMud2lkdGggLyAkdmlkZW9TdG9yZS52aWRlb1dpZHRoICogMTAwO1xuICAgICAgICBkb2NIZWlnaHQgPSAkZG9jRGltZW5zaW9ucy5oZWlnaHQgLyAkdmlkZW9TdG9yZS52aWRlb0hlaWdodCAqIDEwMDtcbiAgICAgICAgZG9jTWFyZ2luVG9wID0gJGRvY0RpbWVuc2lvbnMueSAvICR2aWRlb1N0b3JlLnZpZGVvSGVpZ2h0ICogNTdcblxuICAgICAgICBpZiAoaXNNb2JpbGUoKSkge1xuICAgICAgICAgICAgb3ZhbE1hcmdpblRvcCA9ICgkb3ZhbERpbWVuc2lvbnMueSAtICgkb3ZhbERpbWVuc2lvbnMuaGVpZ2h0IC8gMikpIC8gJHZpZGVvU3RvcmUudmlkZW9IZWlnaHQgKiAxMDBcbiAgICAgICAgfVxuICAgIH1cbjwvc2NyaXB0PlxuXG5cbnsjaWYgJGNvbGxlY3RvclNlbGVjdCA9PSAnRkFDRSd9XG4gICAgPGRpdiBcbiAgICBjbGFzcz1cImFic29sdXRlIGluc2V0LTAgei0xMFwiPlxuICAgICAgICA8ZGl2IFxuICAgICAgICBjbGFzcz1cIm14LWF1dG8gbXktMTAgZGlzcGxheTogZmxleCBqdXN0aWZ5LWNlbnRlciBpdGVtcy1lbmQgcC00XCJcbiAgICAgICAgc3R5bGU9XCJcbiAgICAgICAgd2lkdGg6IHtvdmFsV2lkdGh9JTsgXG4gICAgICAgIGhlaWdodDoge292YWxIZWlnaHR9JTsgXG4gICAgICAgIG1hcmdpbi10b3A6IHtvdmFsTWFyZ2luVG9wfSU7XCI+XG4gICAgICAgICAgICA8aW1nIHNyYz17d2F0ZXJNYXJrfSBhbHQ9XCJCcnlJRFwiPiAgICAgICAgIFxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIHs6ZWxzZX1cbiAgICAgICAgPGRpdiBcbiAgICAgICAgY2xhc3M9XCJhYnNvbHV0ZSBpbnNldC0wIHotMTBcIj5cbiAgICAgICAgICAgIDxkaXYgXG4gICAgICAgICAgICBjbGFzcz1cIm14LWF1dG8gbXktMTAgZGlzcGxheTogZmxleCBqdXN0aWZ5LWNlbnRlciBpdGVtcy1lbmQgcC00XCJcbiAgICAgICAgICAgIHN0eWxlPVwiXG4gICAgICAgICAgICB3aWR0aDoge2RvY1dpZHRofSU7IFxuICAgICAgICAgICAgaGVpZ2h0OiB7ZG9jSGVpZ2h0fSU7IFxuICAgICAgICAgICAgbWFyZ2luLXRvcDoge2RvY01hcmdpblRvcH0lO1wiPlxuICAgICAgICAgICAgICAgIDxpbWcgc3JjPXt3YXRlck1hcmt9IGFsdD1cIkJyeUlEXCI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG57L2lmfSJdLCJuYW1lcyI6WyJDYW1lcmFTdGF0dXNFbnVtIiwiY2FtZXJhU3RhdHVzU3RvcmUiLCJ3cml0YWJsZSIsInQxX3ZhbHVlIiwiY3R4IiwidDNfdmFsdWUiLCJ0NV92YWx1ZSIsImluc2VydF9kZXYiLCJ0YXJnZXQiLCJzdmciLCJhbmNob3IiLCJhcHBlbmRfZGV2IiwicGF0aCIsInNwYW4wIiwic3BhbjEiLCJidXR0b24iLCJkaXJ0eSIsInNldF9kYXRhX2RldiIsInQxIiwidDMiLCJ0NSIsImNyZWF0ZV9pZl9ibG9jayIsImNyZWF0ZV9pZl9ibG9ja18xIiwiY3JlYXRlX2lmX2Jsb2NrXzIiLCJjcmVhdGVfaWZfYmxvY2tfMyIsImNyZWF0ZV9pZl9ibG9ja180IiwiY3JlYXRlX2lmX2Jsb2NrXzUiLCJjcmVhdGVfaWZfYmxvY2tfNiIsImRpdiIsImhhbmRsZXIiLCIkY2FtZXJhU3RhdHVzU3RvcmUiLCJzZXRfc3RvcmVfdmFsdWUiLCJzY3JlZW5Mb2NrZWQiLCIkc2NyZWVuTG9ja2VkIiwibG9ja1NjcmVlbiIsImlzTW9iaWxlIiwibGFiZWwiLCJzd2FwQ2FtZXJhIiwiJHN3YXBDYW1lcmEiLCJ0X3ZhbHVlIiwidCIsImlkIiwiJCRwcm9wcyIsImRpc2FibGVkIiwiaGlkZGVuIiwid2F0ZXJNYXJrIiwiYXR0cl9kZXYiLCJpbWciLCJpbWdfc3JjX3ZhbHVlIiwiZGl2MSIsImRpdjAiLCJvdmFsV2lkdGgiLCJvdmFsSGVpZ2h0Iiwib3ZhbE1hcmdpblRvcCIsImRvY1dpZHRoIiwiZG9jSGVpZ2h0IiwiZG9jTWFyZ2luVG9wIiwiJHZpZGVvU3RvcmUiLCIkb3ZhbERpbWVuc2lvbnMiLCIkJGludmFsaWRhdGUiLCIkZG9jRGltZW5zaW9ucyJdLCJtYXBwaW5n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