bry-biometric-collector 2.2.7-RC01 → 2.2.8-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.
package/README.md CHANGED
@@ -46,6 +46,12 @@ Currently supported tag parameters:
46
46
 
47
47
  Example: `lottie_color="221 89 234"` -->
48
48
 
49
+ - **weights_path**: Should point to folder containing the weights, it will be used to perform image recognition.
50
+
51
+ Default: `"https://unpkg.com/bry-biometric-collector@latest/dist/weights/"`
52
+
53
+ Example: `weights_path="https://myapp.mydomain.com/public/weights/"`
54
+
49
55
  - **extension_name**: The extension name that the webcomponent should use to perform finger capturing.
50
56
  We require the extension to be able to access the fingerprint scanner. The webcomponent uses this extension by calling window[extension_name].
51
57
 
@@ -143,12 +149,29 @@ Currently supported tag parameters:
143
149
 
144
150
  Example: `video_filter=white`
145
151
 
146
- - **show_config_button**: Wether to hide config button. It will be shown below the video.
152
+ - **show_config_button**: Wether to hide config button. It will be shown below the video on the left side.
147
153
 
148
154
  Default: `true`
149
155
 
150
156
  Example: `show_config_button=false`
151
157
 
158
+ - **show_auto_capture_button**: Whether to hide the auto capture button. If you enable a button to trigger automatic capture, it will be shown below the oval.
159
+
160
+ Default: `false`
161
+
162
+ Example: `show_auto_capture_button`
163
+
164
+ - **language**: Language of the webcomponent that should override the browser language. Possible values are `"pt", "en", "es"`.
165
+
166
+ Default: `Browser language`
167
+
168
+ Example: `language="es"`
169
+
170
+ - **show_camera_button**: Wether to hide swap camera button. It will be shown below the video on the right side.
171
+
172
+ Default: `true`
173
+ Example: `show_camera_button=false`
174
+
152
175
  ### **Run-time Configuration**
153
176
 
154
177
  #### **Functions**
@@ -1,5 +1,5 @@
1
- import { aC as ie, S as K, r as J, t as Q, w as X, x as r, y as Z, B as M, C as D, E as T, I as H, a0 as B, ac as G, bb as C, bc as U, bd as j, aN as A, aQ as P, aR as v, aS as w, a_ as f, ag as F, be as k, aO as E, bf as O, aT as N, b2 as S, bg as y, bh as W, ax as I, J as z, aP as ce, aU as ue, aZ as re, aV as fe, aX as me, a$ as de } from "./main_91237e86_2.2.7-RC01.js";
2
- var g = /* @__PURE__ */ ((n) => (n.OK = "OK", n.DEVICE_NOT_FOUND_ERROR = "DEVICE_NOT_FOUND_ERROR", n.CAMERA_DENIED_ERROR = "CAMERA_DENIED_ERROR", n.CAMERA_IN_USE_ERROR = "CAMERA_IN_USE_ERROR", n.CAMERA_CLOSED_ERROR = "CAMERA_CLOSED_ERROR", n.CAMERA_UNSUPPORTED = "CAMERA_UNSUPPORTED", n.CAMERA_ORIENTATION_PORTRAIT = "CAMERA_ORIENTATION_PORTRAIT", n.CAMERA_ORIENTATION_LANDSCAPE = "CAMERA_ORIENTATION_LANDSCAPE", n))(g || {});
1
+ import { aL as ie, S as K, r as G, t as W, w as J, x as r, y as Z, z as g, B as D, D as I, V as U, ab as B, E as X, bb as C, bc as H, bd as j, G as A, I as P, J as v, K as w, O as f, P as F, be as k, aW as E, bf as O, L as M, M as y, bg as S, bh as Q, aG as T, W as z, b3 as ce, b4 as ue, a$ as re, aX as fe, aZ as me, b5 as de } from "./main_62d50f90_2.2.8-RC01.js";
2
+ var N = /* @__PURE__ */ ((n) => (n.OK = "OK", n.DEVICE_NOT_FOUND_ERROR = "DEVICE_NOT_FOUND_ERROR", n.CAMERA_DENIED_ERROR = "CAMERA_DENIED_ERROR", n.CAMERA_IN_USE_ERROR = "CAMERA_IN_USE_ERROR", n.CAMERA_CLOSED_ERROR = "CAMERA_CLOSED_ERROR", n.CAMERA_UNSUPPORTED = "CAMERA_UNSUPPORTED", n.CAMERA_ORIENTATION_PORTRAIT = "CAMERA_ORIENTATION_PORTRAIT", n.CAMERA_ORIENTATION_LANDSCAPE = "CAMERA_ORIENTATION_LANDSCAPE", n))(N || {});
3
3
  const q = ie(
4
4
  "OK"
5
5
  /* OK */
@@ -21,7 +21,7 @@ function Y(n) {
21
21
  t = k("svg"), i = k("path"), u = E(), s = A("span"), s.textContent = "O dispositivo precisa estar na posição paisagem.", d = E(), o = A("span"), o.textContent = "Por favor, vire o dispositivo ou pressione o botão abaixo.", m = E(), a = A("button"), a.textContent = "Ajustar Orientação", v(i, "fill", "currentColor"), v(i, "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"), w(i, p, 175, 6, 8412), O(t, b), w(t, p, 167, 4, 8237), v(s, "class", "text-xl font-bold text-center"), w(s, p, 180, 4, 8941), v(o, "class", "m-auto text-base block text-center"), w(o, p, 181, 4, 9045), v(a, "class", "z-20 ce-dui-btn ce-dui-btn-outline ce-dui-btn-primary m-auto"), w(a, p, 182, 4, 9164);
22
22
  },
23
23
  m: function(e, l) {
24
- r(e, t, l), N(t, i), r(e, u, l), r(e, s, l), r(e, d, l), r(e, o, l), r(e, m, l), r(e, a, l), _ || (h = S(
24
+ r(e, t, l), M(t, i), r(e, u, l), r(e, s, l), r(e, d, l), r(e, o, l), r(e, m, l), r(e, a, l), _ || (h = y(
25
25
  a,
26
26
  "click",
27
27
  /*click_handler_6*/
@@ -33,7 +33,7 @@ function Y(n) {
33
33
  ), _ = !0);
34
34
  },
35
35
  p: function(e, l) {
36
- O(t, b = y(x, [
36
+ O(t, b = S(x, [
37
37
  { class: "text-[8em] mx-auto" },
38
38
  { xmlns: "http://www.w3.org/2000/svg" },
39
39
  { width: "1em" },
@@ -48,7 +48,7 @@ function Y(n) {
48
48
  e && f(t), e && f(u), e && f(s), e && f(d), e && f(o), e && f(m), e && f(a), _ = !1, h();
49
49
  }
50
50
  };
51
- return M("SvelteRegisterBlock", {
51
+ return g("SvelteRegisterBlock", {
52
52
  block: R,
53
53
  id: Y.name,
54
54
  type: "if",
@@ -73,7 +73,7 @@ function $(n) {
73
73
  t = k("svg"), i = k("path"), u = E(), s = A("span"), s.textContent = "O dispositivo precisa estar na posição retrato.", d = E(), o = A("span"), o.textContent = "Por favor, vire o dispositivo ou pressione o botão abaixo.", m = E(), a = A("button"), a.textContent = "Ajustar Orientação", v(i, "fill", "currentColor"), v(i, "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"), w(i, p, 151, 6, 7113), O(t, b), w(t, p, 143, 4, 6938), v(s, "class", "text-xl font-bold text-center"), w(s, p, 156, 4, 7642), v(o, "class", "m-auto text-base block text-center"), w(o, p, 157, 4, 7745), v(a, "class", "z-20 ce-dui-btn ce-dui-btn-outline ce-dui-btn-primary m-auto"), w(a, p, 158, 4, 7864);
74
74
  },
75
75
  m: function(e, l) {
76
- r(e, t, l), N(t, i), r(e, u, l), r(e, s, l), r(e, d, l), r(e, o, l), r(e, m, l), r(e, a, l), _ || (h = S(
76
+ r(e, t, l), M(t, i), r(e, u, l), r(e, s, l), r(e, d, l), r(e, o, l), r(e, m, l), r(e, a, l), _ || (h = y(
77
77
  a,
78
78
  "click",
79
79
  /*click_handler_5*/
@@ -85,7 +85,7 @@ function $(n) {
85
85
  ), _ = !0);
86
86
  },
87
87
  p: function(e, l) {
88
- O(t, b = y(x, [
88
+ O(t, b = S(x, [
89
89
  { class: "text-[8em] mx-auto" },
90
90
  { xmlns: "http://www.w3.org/2000/svg" },
91
91
  { width: "1em" },
@@ -100,7 +100,7 @@ function $(n) {
100
100
  e && f(t), e && f(u), e && f(s), e && f(d), e && f(o), e && f(m), e && f(a), _ = !1, h();
101
101
  }
102
102
  };
103
- return M("SvelteRegisterBlock", {
103
+ return g("SvelteRegisterBlock", {
104
104
  block: R,
105
105
  id: $.name,
106
106
  type: "if",
@@ -125,7 +125,7 @@ function ee(n) {
125
125
  t = k("svg"), i = k("path"), u = E(), s = A("span"), s.textContent = "A câmera não atende os requisitos necessários.", d = E(), o = A("span"), o.textContent = "Por favor, conecte outra câmera e tente novamente.", m = E(), a = A("button"), a.textContent = "Reiniciar", v(i, "fill", "currentColor"), v(i, "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"), w(i, p, 128, 6, 5947), O(t, b), w(t, p, 120, 4, 5772), v(s, "class", "text-xl font-bold text-center"), w(s, p, 133, 4, 6403), v(o, "class", "m-auto text-base block text-center"), w(o, p, 134, 4, 6505), v(a, "class", "z-20 ce-dui-btn ce-dui-btn-outline ce-dui-btn-primary m-auto"), w(a, p, 135, 4, 6616);
126
126
  },
127
127
  m: function(e, l) {
128
- r(e, t, l), N(t, i), r(e, u, l), r(e, s, l), r(e, d, l), r(e, o, l), r(e, m, l), r(e, a, l), _ || (h = S(
128
+ r(e, t, l), M(t, i), r(e, u, l), r(e, s, l), r(e, d, l), r(e, o, l), r(e, m, l), r(e, a, l), _ || (h = y(
129
129
  a,
130
130
  "click",
131
131
  /*click_handler_4*/
@@ -137,7 +137,7 @@ function ee(n) {
137
137
  ), _ = !0);
138
138
  },
139
139
  p: function(e, l) {
140
- O(t, b = y(x, [
140
+ O(t, b = S(x, [
141
141
  { class: "text-[8em] mx-auto" },
142
142
  { xmlns: "http://www.w3.org/2000/svg" },
143
143
  { width: "1em" },
@@ -152,7 +152,7 @@ function ee(n) {
152
152
  e && f(t), e && f(u), e && f(s), e && f(d), e && f(o), e && f(m), e && f(a), _ = !1, h();
153
153
  }
154
154
  };
155
- return M("SvelteRegisterBlock", {
155
+ return g("SvelteRegisterBlock", {
156
156
  block: R,
157
157
  id: ee.name,
158
158
  type: "if",
@@ -177,7 +177,7 @@ function te(n) {
177
177
  t = k("svg"), i = k("path"), u = E(), s = A("span"), s.textContent = "Por favor, permaneça na mesma aba durante a coleta biométrica.", d = E(), o = A("span"), o.textContent = "Clique no botão Reiniciar para capturar novamente.", m = E(), a = A("button"), a.textContent = "Reiniciar", v(i, "fill", "currentColor"), v(i, "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"), w(i, p, 105, 6, 4761), O(t, b), w(t, p, 97, 4, 4586), v(s, "class", "text-xl font-bold text-center"), w(s, p, 110, 4, 5260), v(o, "class", "m-auto text-base block text-center"), w(o, p, 111, 4, 5378), v(a, "class", "z-20 ce-dui-btn ce-dui-btn-outline ce-dui-btn-primary m-auto"), w(a, p, 112, 4, 5489);
178
178
  },
179
179
  m: function(e, l) {
180
- r(e, t, l), N(t, i), r(e, u, l), r(e, s, l), r(e, d, l), r(e, o, l), r(e, m, l), r(e, a, l), _ || (h = S(
180
+ r(e, t, l), M(t, i), r(e, u, l), r(e, s, l), r(e, d, l), r(e, o, l), r(e, m, l), r(e, a, l), _ || (h = y(
181
181
  a,
182
182
  "click",
183
183
  /*click_handler_3*/
@@ -189,7 +189,7 @@ function te(n) {
189
189
  ), _ = !0);
190
190
  },
191
191
  p: function(e, l) {
192
- O(t, b = y(x, [
192
+ O(t, b = S(x, [
193
193
  { class: "text-[8em] mx-auto" },
194
194
  { xmlns: "http://www.w3.org/2000/svg" },
195
195
  { width: "1em" },
@@ -204,7 +204,7 @@ function te(n) {
204
204
  e && f(t), e && f(u), e && f(s), e && f(d), e && f(o), e && f(m), e && f(a), _ = !1, h();
205
205
  }
206
206
  };
207
- return M("SvelteRegisterBlock", {
207
+ return g("SvelteRegisterBlock", {
208
208
  block: R,
209
209
  id: te.name,
210
210
  type: "if",
@@ -229,7 +229,7 @@ function le(n) {
229
229
  t = k("svg"), i = k("path"), u = E(), s = A("span"), s.textContent = "A câmera está em uso.", d = E(), o = A("span"), o.textContent = "Certifique-se de que a câmera não está sendo utilizada por nenhuma outra aplicação e clique no botão abaixo.", m = E(), a = A("button"), a.textContent = "Reiniciar", v(i, "fill", "currentColor"), v(i, "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"), w(i, p, 77, 6, 3473), O(t, b), w(t, p, 69, 4, 3298), v(s, "class", "text-xl font-bold text-center"), w(s, p, 82, 4, 3965), v(o, "class", "m-auto text-base block text-center"), w(o, p, 83, 4, 4042), v(a, "class", "z-20 ce-dui-btn ce-dui-btn-outline ce-dui-btn-primary m-auto"), w(a, p, 86, 4, 4223);
230
230
  },
231
231
  m: function(e, l) {
232
- r(e, t, l), N(t, i), r(e, u, l), r(e, s, l), r(e, d, l), r(e, o, l), r(e, m, l), r(e, a, l), _ || (h = S(
232
+ r(e, t, l), M(t, i), r(e, u, l), r(e, s, l), r(e, d, l), r(e, o, l), r(e, m, l), r(e, a, l), _ || (h = y(
233
233
  a,
234
234
  "click",
235
235
  /*click_handler_2*/
@@ -241,7 +241,7 @@ function le(n) {
241
241
  ), _ = !0);
242
242
  },
243
243
  p: function(e, l) {
244
- O(t, b = y(x, [
244
+ O(t, b = S(x, [
245
245
  { class: "text-[8em] mx-auto" },
246
246
  { xmlns: "http://www.w3.org/2000/svg" },
247
247
  { width: "1em" },
@@ -256,7 +256,7 @@ function le(n) {
256
256
  e && f(t), e && f(u), e && f(s), e && f(d), e && f(o), e && f(m), e && f(a), _ = !1, h();
257
257
  }
258
258
  };
259
- return M("SvelteRegisterBlock", {
259
+ return g("SvelteRegisterBlock", {
260
260
  block: R,
261
261
  id: le.name,
262
262
  type: "if",
@@ -281,7 +281,7 @@ function se(n) {
281
281
  t = k("svg"), i = k("path"), u = E(), s = A("span"), s.textContent = "A câmera não foi detectada.", d = E(), o = A("span"), o.textContent = "Por favor, conecte a sua câmera, espere alguns instantes e clique no botão Reiniciar.", m = E(), a = A("button"), a.textContent = "Reiniciar", v(i, "fill", "currentColor"), v(i, "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"), w(i, p, 48, 6, 1927), O(t, b), w(t, p, 40, 4, 1752), v(s, "class", "text-xl font-bold text-center"), w(s, p, 53, 4, 2659), v(o, "class", "m-auto text-base block text-center"), w(o, p, 54, 4, 2742), v(a, "class", "z-20 ce-dui-btn ce-dui-btn-outline ce-dui-btn-primary m-auto"), w(a, p, 57, 4, 2900);
282
282
  },
283
283
  m: function(e, l) {
284
- r(e, t, l), N(t, i), r(e, u, l), r(e, s, l), r(e, d, l), r(e, o, l), r(e, m, l), r(e, a, l), _ || (h = S(
284
+ r(e, t, l), M(t, i), r(e, u, l), r(e, s, l), r(e, d, l), r(e, o, l), r(e, m, l), r(e, a, l), _ || (h = y(
285
285
  a,
286
286
  "click",
287
287
  /*click_handler_1*/
@@ -293,7 +293,7 @@ function se(n) {
293
293
  ), _ = !0);
294
294
  },
295
295
  p: function(e, l) {
296
- O(t, b = y(x, [
296
+ O(t, b = S(x, [
297
297
  { class: "text-[8em] mx-auto" },
298
298
  { xmlns: "http://www.w3.org/2000/svg" },
299
299
  { width: "1em" },
@@ -308,7 +308,7 @@ function se(n) {
308
308
  e && f(t), e && f(u), e && f(s), e && f(d), e && f(o), e && f(m), e && f(a), _ = !1, h();
309
309
  }
310
310
  };
311
- return M("SvelteRegisterBlock", {
311
+ return g("SvelteRegisterBlock", {
312
312
  block: R,
313
313
  id: se.name,
314
314
  type: "if",
@@ -333,7 +333,7 @@ function ae(n) {
333
333
  t = k("svg"), i = k("path"), u = E(), s = A("span"), s.textContent = "Por favor, conceda permissão de acesso à câmera.", d = E(), o = A("span"), o.textContent = "Após conceder a permissão, clique no botão Reiniciar.", m = E(), a = A("button"), a.textContent = "Reiniciar", v(i, "fill", "currentColor"), v(i, "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"), w(i, p, 21, 6, 663), O(t, b), w(t, p, 13, 4, 488), v(s, "class", "text-xl font-bold text-center"), w(s, p, 26, 4, 1119), v(o, "class", "m-auto text-base block text-center"), w(o, p, 27, 4, 1223), v(a, "class", "z-20 ce-dui-btn ce-dui-btn-outline ce-dui-btn-primary m-auto"), w(a, p, 28, 4, 1337);
334
334
  },
335
335
  m: function(e, l) {
336
- r(e, t, l), N(t, i), r(e, u, l), r(e, s, l), r(e, d, l), r(e, o, l), r(e, m, l), r(e, a, l), _ || (h = S(
336
+ r(e, t, l), M(t, i), r(e, u, l), r(e, s, l), r(e, d, l), r(e, o, l), r(e, m, l), r(e, a, l), _ || (h = y(
337
337
  a,
338
338
  "click",
339
339
  /*click_handler*/
@@ -345,7 +345,7 @@ function ae(n) {
345
345
  ), _ = !0);
346
346
  },
347
347
  p: function(e, l) {
348
- O(t, b = y(x, [
348
+ O(t, b = S(x, [
349
349
  { class: "text-[8em] mx-auto" },
350
350
  { xmlns: "http://www.w3.org/2000/svg" },
351
351
  { width: "1em" },
@@ -360,7 +360,7 @@ function ae(n) {
360
360
  e && f(t), e && f(u), e && f(s), e && f(d), e && f(o), e && f(m), e && f(a), _ = !1, h();
361
361
  }
362
362
  };
363
- return M("SvelteRegisterBlock", {
363
+ return g("SvelteRegisterBlock", {
364
364
  block: R,
365
365
  id: ae.name,
366
366
  type: "if",
@@ -373,38 +373,38 @@ function oe(n) {
373
373
  function i(o, m) {
374
374
  if (
375
375
  /*$cameraStatusStore*/
376
- o[1] === g.CAMERA_DENIED_ERROR
376
+ o[1] === N.CAMERA_DENIED_ERROR
377
377
  )
378
378
  return ae;
379
379
  if (
380
380
  /*$cameraStatusStore*/
381
- o[1] === g.DEVICE_NOT_FOUND_ERROR
381
+ o[1] === N.DEVICE_NOT_FOUND_ERROR
382
382
  )
383
383
  return se;
384
384
  if (
385
385
  /*$cameraStatusStore*/
386
- o[1] === g.CAMERA_IN_USE_ERROR
386
+ o[1] === N.CAMERA_IN_USE_ERROR
387
387
  )
388
388
  return le;
389
389
  if (
390
390
  /*$cameraStatusStore*/
391
- o[1] === g.CAMERA_CLOSED_ERROR
391
+ o[1] === N.CAMERA_CLOSED_ERROR
392
392
  )
393
393
  return te;
394
394
  if (
395
395
  /*$cameraStatusStore*/
396
- o[1] === g.CAMERA_UNSUPPORTED
396
+ o[1] === N.CAMERA_UNSUPPORTED
397
397
  )
398
398
  return ee;
399
399
  if (
400
400
  /*$cameraStatusStore*/
401
- o[1] === g.CAMERA_ORIENTATION_PORTRAIT && /*$collectorSelect*/
401
+ o[1] === N.CAMERA_ORIENTATION_PORTRAIT && /*$collectorSelect*/
402
402
  o[2] == "FACE"
403
403
  )
404
404
  return $;
405
405
  if (
406
406
  /*$cameraStatusStore*/
407
- o[1] === g.CAMERA_ORIENTATION_LANDSCAPE && /*$collectorSelect*/
407
+ o[1] === N.CAMERA_ORIENTATION_LANDSCAPE && /*$collectorSelect*/
408
408
  o[2] == "DOCUMENT"
409
409
  )
410
410
  return Y;
@@ -429,7 +429,7 @@ function oe(n) {
429
429
  m && f(t), s && s.d();
430
430
  }
431
431
  };
432
- return M("SvelteRegisterBlock", {
432
+ return g("SvelteRegisterBlock", {
433
433
  block: d,
434
434
  id: oe.name,
435
435
  type: "component",
@@ -439,9 +439,9 @@ function oe(n) {
439
439
  }
440
440
  function _e(n, t, i) {
441
441
  let u, s, d;
442
- D(q, "cameraStatusStore"), T(n, q, (l) => i(1, u = l)), D(H, "collectorSelect"), T(n, H, (l) => i(2, s = l)), D(B, "screenLocked"), T(n, B, (l) => i(3, d = l));
442
+ D(q, "cameraStatusStore"), I(n, q, (l) => i(1, u = l)), D(U, "collectorSelect"), I(n, U, (l) => i(2, s = l)), D(B, "screenLocked"), I(n, B, (l) => i(3, d = l));
443
443
  let { $$slots: o = {}, $$scope: m } = t;
444
- G("camera-status", o, []);
444
+ X("camera-status", o, []);
445
445
  let { handler: a = () => {
446
446
  } } = t;
447
447
  const _ = () => {
@@ -460,20 +460,20 @@ function _e(n, t, i) {
460
460
  F(B, d = !0, d), j(!1);
461
461
  };
462
462
  return n.$$set = (l) => {
463
- i(4, t = C(C({}, t), U(l))), "handler" in l && i(0, a = l.handler);
463
+ i(4, t = C(C({}, t), H(l))), "handler" in l && i(0, a = l.handler);
464
464
  }, n.$capture_state = () => ({
465
465
  handler: a,
466
- CameraStatusEnum: g,
466
+ CameraStatusEnum: N,
467
467
  cameraStatusStore: q,
468
468
  lockScreen: j,
469
- collectorSelect: H,
469
+ collectorSelect: U,
470
470
  screenLocked: B,
471
471
  $cameraStatusStore: u,
472
472
  $collectorSelect: s,
473
473
  $screenLocked: d
474
474
  }), n.$inject_state = (l) => {
475
475
  i(4, t = C(C({}, t), l)), "handler" in t && i(0, a = l.handler);
476
- }, t && "$$inject" in t && n.$inject_state(t.$$inject), t = U(t), [
476
+ }, t && "$$inject" in t && n.$inject_state(t.$$inject), t = H(t), [
477
477
  a,
478
478
  u,
479
479
  s,
@@ -490,16 +490,16 @@ function _e(n, t, i) {
490
490
  }
491
491
  class ve extends K {
492
492
  constructor(t) {
493
- super(), J(
493
+ super(), G(
494
494
  this,
495
495
  {
496
496
  target: this.shadowRoot,
497
- props: X(this.attributes),
497
+ props: J(this.attributes),
498
498
  customElement: !0
499
499
  },
500
500
  _e,
501
501
  oe,
502
- Q,
502
+ W,
503
503
  { handler: 0 },
504
504
  null
505
505
  ), t && (t.target && r(t.target, this, t.anchor), t.props && (this.$set(t.props), Z()));
@@ -518,7 +518,7 @@ customElements.define("camera-status", ve);
518
518
  const V = "src/lib/conf/CameraBtn.svelte";
519
519
  function ne(n) {
520
520
  let t, i, u, s, d, o, m, a, _, h, x;
521
- t = new W({ $$inline: !0 });
521
+ t = new Q({ $$inline: !0 });
522
522
  let b = [
523
523
  { xmlns: "http://www.w3.org/2000/svg" },
524
524
  { width: "2em" },
@@ -539,7 +539,7 @@ function ne(n) {
539
539
  throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option");
540
540
  },
541
541
  m: function(l, L) {
542
- ue(t, l, L), r(l, i, L), r(l, u, L), N(u, s), N(s, d), N(d, o), _ = !0, h || (x = S(
542
+ ue(t, l, L), r(l, i, L), r(l, u, L), M(u, s), M(s, d), M(d, o), _ = !0, h || (x = y(
543
543
  u,
544
544
  "click",
545
545
  /*click_handler*/
@@ -551,7 +551,7 @@ function ne(n) {
551
551
  ), h = !0);
552
552
  },
553
553
  p: function(l, [L]) {
554
- O(d, R = y(b, [
554
+ O(d, R = S(b, [
555
555
  { xmlns: "http://www.w3.org/2000/svg" },
556
556
  { width: "2em" },
557
557
  { height: "2em" },
@@ -575,7 +575,7 @@ function ne(n) {
575
575
  de(t, l), l && f(i), l && f(u), h = !1, x();
576
576
  }
577
577
  };
578
- return M("SvelteRegisterBlock", {
578
+ return g("SvelteRegisterBlock", {
579
579
  block: c,
580
580
  id: ne.name,
581
581
  type: "component",
@@ -585,38 +585,38 @@ function ne(n) {
585
585
  }
586
586
  function be(n, t, i) {
587
587
  let u, s;
588
- D(I, "swapCamera"), T(n, I, (_) => i(1, u = _)), D(z, "cameraDevicesStore"), T(n, z, (_) => i(2, s = _));
588
+ D(T, "swapCamera"), I(n, T, (_) => i(1, u = _)), D(z, "cameraDevicesStore"), I(n, z, (_) => i(2, s = _));
589
589
  let { $$slots: d = {}, $$scope: o } = t;
590
- G("camera-btn", d, []);
590
+ X("camera-btn", d, []);
591
591
  let { className: m = "" } = t;
592
592
  const a = () => {
593
- F(I, u = !u, u);
593
+ F(T, u = !u, u);
594
594
  };
595
595
  return n.$$set = (_) => {
596
- i(3, t = C(C({}, t), U(_))), "className" in _ && i(0, m = _.className);
596
+ i(3, t = C(C({}, t), H(_))), "className" in _ && i(0, m = _.className);
597
597
  }, n.$capture_state = () => ({
598
- swapCamera: I,
599
- ConfModal: W,
598
+ swapCamera: T,
599
+ ConfModal: Q,
600
600
  cameraDevicesStore: z,
601
601
  className: m,
602
602
  $swapCamera: u,
603
603
  $cameraDevicesStore: s
604
604
  }), n.$inject_state = (_) => {
605
605
  i(3, t = C(C({}, t), _)), "className" in t && i(0, m = _.className);
606
- }, t && "$$inject" in t && n.$inject_state(t.$$inject), t = U(t), [m, u, s, t, a];
606
+ }, t && "$$inject" in t && n.$inject_state(t.$$inject), t = H(t), [m, u, s, t, a];
607
607
  }
608
608
  class we extends K {
609
609
  constructor(t) {
610
- super(), J(
610
+ super(), G(
611
611
  this,
612
612
  {
613
613
  target: this.shadowRoot,
614
- props: X(this.attributes),
614
+ props: J(this.attributes),
615
615
  customElement: !0
616
616
  },
617
617
  be,
618
618
  ne,
619
- Q,
619
+ W,
620
620
  { className: 0 },
621
621
  null
622
622
  ), t && (t.target && r(t.target, this, t.anchor), t.props && (this.$set(t.props), Z()));
@@ -633,9 +633,9 @@ class we extends K {
633
633
  }
634
634
  customElements.define("camera-btn", we);
635
635
  export {
636
- g as C,
637
- we as a,
638
- ve as b,
636
+ N as C,
637
+ ve as a,
638
+ we as b,
639
639
  q as c
640
640
  };
641
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FtZXJhQnRuX2RlOGM0MTFkXzIuMi43LVJDMDEuanMiLCJzb3VyY2VzIjpbIi4uL3NyYy9saWIvZmFjZVRhYi9jYW1lcmFTdGF0dXMvY2FtZXJhU3RhdHVzU3RvcmUudHMiLCIuLi9zcmMvbGliL2ZhY2VUYWIvY2FtZXJhU3RhdHVzL0NhbWVyYVN0YXR1cy5zdmVsdGUiLCIuLi9zcmMvbGliL2NvbmYvQ2FtZXJhQnRuLnN2ZWx0ZSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB3cml0YWJsZSB9IGZyb20gJ3N2ZWx0ZS9zdG9yZSc7XG5cbmV4cG9ydCBjb25zdCBlbnVtIENhbWVyYVN0YXR1c0VudW0ge1xuICBPSyA9ICdPSycsXG4gIERFVklDRV9OT1RfRk9VTkRfRVJST1IgPSAnREVWSUNFX05PVF9GT1VORF9FUlJPUicsXG4gIENBTUVSQV9ERU5JRURfRVJST1IgPSAnQ0FNRVJBX0RFTklFRF9FUlJPUicsIC8vIG9yIGRpc21pc3NlZFxuICBDQU1FUkFfSU5fVVNFX0VSUk9SID0gJ0NBTUVSQV9JTl9VU0VfRVJST1InLFxuICBDQU1FUkFfQ0xPU0VEX0VSUk9SID0gJ0NBTUVSQV9DTE9TRURfRVJST1InLFxuICBDQU1FUkFfVU5TVVBQT1JURUQgPSAnQ0FNRVJBX1VOU1VQUE9SVEVEJyxcbiAgQ0FNRVJBX09SSUVOVEFUSU9OX1BPUlRSQUlUID0gJ0NBTUVSQV9PUklFTlRBVElPTl9QT1JUUkFJVCcsXG4gIENBTUVSQV9PUklFTlRBVElPTl9MQU5EU0NBUEUgPSAnQ0FNRVJBX09SSUVOVEFUSU9OX0xBTkRTQ0FQRScsXG59XG5cbmV4cG9ydCBjb25zdCBjYW1lcmFTdGF0dXNTdG9yZSA9IHdyaXRhYmxlPENhbWVyYVN0YXR1c0VudW0+KENhbWVyYVN0YXR1c0VudW0uT0spO1xuIiwiPHN2ZWx0ZTpvcHRpb25zIHRhZz1cImNhbWVyYS1zdGF0dXNcIiAvPlxuXG48c2NyaXB0IGxhbmc9XCJ0c1wiPlxuICBleHBvcnQgbGV0IGhhbmRsZXI6IEZ1bmN0aW9uID0gKCkgPT4ge307XG4gIGltcG9ydCB7IENhbWVyYVN0YXR1c0VudW0sIGNhbWVyYVN0YXR1c1N0b3JlIH0gZnJvbSAnLi9jYW1lcmFTdGF0dXNTdG9yZSc7XG4gIGltcG9ydCB7IGxvY2tTY3JlZW4gfSBmcm9tICcuLi8uLi91dGlsL3V0aWwnO1xuICBpbXBvcnQgeyBjb2xsZWN0b3JTZWxlY3QsIHNjcmVlbkxvY2tlZCB9IGZyb20gJy4uLy4uLy4uL21haW5TdG9yZSc7XG48L3NjcmlwdD5cblxuPGRpdlxuICBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTQganVzdGlmeS1jZW50ZXIgcmVsYXRpdmUgb3ZlcmZsb3ctdmlzaWJsZVwiXG4+XG4gIHsjaWYgJGNhbWVyYVN0YXR1c1N0b3JlID09PSBDYW1lcmFTdGF0dXNFbnVtLkNBTUVSQV9ERU5JRURfRVJST1J9XG4gICAgPCEtLSBpY29uaWZ5IHBoOnZpZGVvLWNhbWVyYS1zbGFzaC1ib2xkIC0tPlxuICAgIDxzdmdcbiAgICAgIGNsYXNzPVwidGV4dC1bOGVtXSBteC1hdXRvXCJcbiAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgd2lkdGg9XCIxZW1cIlxuICAgICAgaGVpZ2h0PVwiMWVtXCJcbiAgICAgIHZpZXdCb3g9XCIwIDAgMjU2IDI1NlwiXG4gICAgICB7Li4uJCRwcm9wc31cbiAgICA+XG4gICAgICA8cGF0aFxuICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgZD1cIk0yNDkuNDUgNjkuMzFhMTIgMTIgMCAwIDAtMTIuNTEgMUwyMTIgODguNDNWNzJhMjAgMjAgMCAwIDAtMjAtMjBoLTY4LjEyYTEyIDEyIDAgMCAwIDAgMjRIMTg4djY4YTEyIDEyIDAgMCAwIDQuNDYgOS4zM2MuMTUuMTMuMzEuMjUuNDguMzhsNDQgMzJBMTIgMTIgMCAwIDAgMjU2IDE3NlY4MGExMiAxMiAwIDAgMC02LjU1LTEwLjY5TTIzMiAxNTIuNDNsLTIwLTE0LjU0di0xOS43OGwyMC0xNC41NFpNNTYuODggMzEuOTNhMTIgMTIgMCAxIDAtMTcuNzYgMTYuMTRMNDIuNjkgNTJIMzJhMjAgMjAgMCAwIDAtMjAgMjB2MTEyYTIwIDIwIDAgMCAwIDIwIDIwaDE0OC44N2wxOC4yNSAyMC4wN2ExMiAxMiAwIDAgMCAxNy43Ni0xNi4xNFpNMzYgMTgwVjc2aDI4LjUxbDk0LjU1IDEwNFpcIlxuICAgICAgLz5cbiAgICA8L3N2Zz5cbiAgICA8c3BhbiBjbGFzcz1cInRleHQteGwgZm9udC1ib2xkIHRleHQtY2VudGVyXCI+UG9yIGZhdm9yLCBjb25jZWRhIHBlcm1pc3PDo28gZGUgYWNlc3NvIMOgIGPDom1lcmEuPC9zcGFuPlxuICAgIDxzcGFuIGNsYXNzPVwibS1hdXRvIHRleHQtYmFzZSBibG9jayB0ZXh0LWNlbnRlclwiPkFww7NzIGNvbmNlZGVyIGEgcGVybWlzc8OjbywgY2xpcXVlIG5vIGJvdMOjbyBSZWluaWNpYXIuPC9zcGFuPlxuICAgIDxidXR0b25cbiAgICAgIGNsYXNzPVwiei0yMCBjZS1kdWktYnRuIGNlLWR1aS1idG4tb3V0bGluZSBjZS1kdWktYnRuLXByaW1hcnkgbS1hdXRvXCJcbiAgICAgIG9uOmNsaWNrPXsoKSA9PiB7XG4gICAgICAgIGhhbmRsZXIoKTtcbiAgICAgICAgY29uc29sZS5sb2coJ2NhbmljbmEnLCBoYW5kbGVyKTtcbiAgICAgICAgLy8gY2FwdHVyaW5nID0gdHJ1ZTtcbiAgICAgICAgLy8gY2FtZXJhRGVuaWVkID0gZmFsc2U7XG4gICAgICAgIC8vIG9wZW5DYW1lcmEoKTtcbiAgICAgIH19PlJlaW5pY2lhcjwvYnV0dG9uXG4gICAgPlxuICB7OmVsc2UgaWYgJGNhbWVyYVN0YXR1c1N0b3JlID09PSBDYW1lcmFTdGF0dXNFbnVtLkRFVklDRV9OT1RfRk9VTkRfRVJST1J9XG4gICAgPCEtLSBpY29uaWZ5IHBoOnZpZGVvLWNhbWVyYS1zbGFzaC1ib2xkIC0tPlxuICAgIDxzdmdcbiAgICAgIGNsYXNzPVwidGV4dC1bOGVtXSBteC1hdXRvXCJcbiAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgd2lkdGg9XCIxZW1cIlxuICAgICAgaGVpZ2h0PVwiMWVtXCJcbiAgICAgIHZpZXdCb3g9XCIwIDAgMjU2IDI1NlwiXG4gICAgICB7Li4uJCRwcm9wc31cbiAgICA+XG4gICAgICA8cGF0aFxuICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgZD1cIm0xMzcgMTY4bDExLjUyLTExLjUxYTEyIDEyIDAgMCAwLTE3LTE3TDEyMCAxNTFsLTE1LTE1bDExLjUyLTExLjUxYTEyIDEyIDAgMCAwLTE3LTE3TDg4IDExOWwtMTUuNTEtMTUuNDlhMTIgMTIgMCAwIDAtMTcgMTdMNTkgMTI0bC0yMC40NiAyMC40OWEzNiAzNiAwIDAgMCAwIDUwLjkxbDIuNTUgMi41NGwtMjUuNTggMjUuNTdhMTIgMTIgMCAwIDAgMTcgMTdsMjUuNTctMjUuNThsMi41NCAyLjU1YTM2LjA2IDM2LjA2IDAgMCAwIDUwLjkxIDBMMTMyIDE5N2wzLjUxIDMuNTJhMTIgMTIgMCAwIDAgMTctMTdabS00Mi40NiAzMi40OWExMiAxMiAwIDAgMS0xNyAwbC0yMi4wMy0yMi4wNmExMiAxMiAwIDAgMSAwLTE3TDc2IDE0MWwzOSAzOVptMTQ2LTE4NWExMiAxMiAwIDAgMC0xNyAwbC0yNS42IDI1LjZsLTIuNTQtMi41NWEzNi4wNSAzNi4wNSAwIDAgMC01MC45MSAwTDEyNCA1OWwtMy41MS0zLjUyYTEyIDEyIDAgMCAwLTE3IDE3bDgwIDgwYTEyIDEyIDAgMCAwIDE3LTE3TDE5NyAxMzJsMjAuNDktMjAuNDlhMzYgMzYgMCAwIDAgMC01MC45MWwtMi41NS0yLjU0bDI1LjU4LTI1LjU3YTEyIDEyIDAgMCAwLS4wMy0xNi45OFptLTQwIDc5TDE4MCAxMTVsLTM5LTM5bDIwLjQ5LTIwLjQ5YTEyIDEyIDAgMCAxIDE3IDBsMjIuMDYgMjIuMDZhMTIgMTIgMCAwIDEgMCAxN1pcIlxuICAgICAgLz5cbiAgICA8L3N2Zz5cbiAgICA8c3BhbiBjbGFzcz1cInRleHQteGwgZm9udC1ib2xkIHRleHQtY2VudGVyXCI+QSBjw6JtZXJhIG7Do28gZm9pIGRldGVjdGFkYS48L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJtLWF1dG8gdGV4dC1iYXNlIGJsb2NrIHRleHQtY2VudGVyXCJcbiAgICAgID5Qb3IgZmF2b3IsIGNvbmVjdGUgYSBzdWEgY8OibWVyYSwgZXNwZXJlIGFsZ3VucyBpbnN0YW50ZXMgZSBjbGlxdWUgbm8gYm90w6NvIFJlaW5pY2lhci48L3NwYW5cbiAgICA+XG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3M9XCJ6LTIwIGNlLWR1aS1idG4gY2UtZHVpLWJ0bi1vdXRsaW5lIGNlLWR1aS1idG4tcHJpbWFyeSBtLWF1dG9cIlxuICAgICAgb246Y2xpY2s9eygpID0+IHtcbiAgICAgICAgaGFuZGxlcigpO1xuICAgICAgICBjb25zb2xlLmxvZygnY2FuaWNuYScsIGhhbmRsZXIpO1xuICAgICAgICAvLyBjYXB0dXJpbmcgPSB0cnVlO1xuICAgICAgICAvLyBkZXZpY2VOb3RGb3VuZCA9IGZhbHNlO1xuICAgICAgICAvLyBvcGVuQ2FtZXJhKCk7XG4gICAgICB9fT5SZWluaWNpYXI8L2J1dHRvblxuICAgID5cbiAgezplbHNlIGlmICRjYW1lcmFTdGF0dXNTdG9yZSA9PT0gQ2FtZXJhU3RhdHVzRW51bS5DQU1FUkFfSU5fVVNFX0VSUk9SfVxuICAgIDwhLS0gaWNvbmlmeSBwaDp3YXJuaW5nIC0tPlxuICAgIDxzdmdcbiAgICAgIGNsYXNzPVwidGV4dC1bOGVtXSBteC1hdXRvXCJcbiAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgd2lkdGg9XCIxZW1cIlxuICAgICAgaGVpZ2h0PVwiMWVtXCJcbiAgICAgIHZpZXdCb3g9XCIwIDAgMjU2IDI1NlwiXG4gICAgICB7Li4uJCRwcm9wc31cbiAgICA+XG4gICAgICA8cGF0aFxuICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgZD1cIk01Ni44OCAzMS45M2ExMiAxMiAwIDEgMC0xNy43NiAxNi4xNGw0IDQuMzdBMjggMjggMCAwIDAgMjAgODB2MTEyYTI4IDI4IDAgMCAwIDI4IDI4aDE0Ny40MmwzLjcgNC4wN2ExMiAxMiAwIDAgMCAxNy43Ni0xNi4xNFptNDkuMzUgOTBMMTM2IDE1NC42NGEyNCAyNCAwIDAgMS0yOS43Ny0zMi43NVpNNDggMTk2YTQgNCAwIDAgMS00LTRWODBhNCA0IDAgMCAxIDQtNGgxNi41MWwyNC45MiAyNy40MWE0OCA0OCAwIDAgMCA2My4zNCA2OS42N0wxNzMuNiAxOTZaTTIzNiA4MHY5NC4xNGExMiAxMiAwIDAgMS0yNCAwVjgwYTQgNCAwIDAgMC00LTRoLTMyYTEyIDEyIDAgMCAxLTEwLTUuMzRMMTUzLjU3IDUyaC01MS41MWExMiAxMiAwIDAgMSAwLTI0SDE2MGExMiAxMiAwIDAgMSAxMCA1LjM0TDE4Mi40MiA1MkgyMDhhMjggMjggMCAwIDEgMjggMjhcIlxuICAgICAgLz5cbiAgICA8L3N2Zz5cbiAgICA8c3BhbiBjbGFzcz1cInRleHQteGwgZm9udC1ib2xkIHRleHQtY2VudGVyXCI+QSBjw6JtZXJhIGVzdMOhIGVtIHVzby48L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJtLWF1dG8gdGV4dC1iYXNlIGJsb2NrIHRleHQtY2VudGVyXCJcbiAgICAgID5DZXJ0aWZpcXVlLXNlIGRlIHF1ZSBhIGPDom1lcmEgbsOjbyBlc3TDoSBzZW5kbyB1dGlsaXphZGEgcG9yIG5lbmh1bWEgb3V0cmEgYXBsaWNhw6fDo28gZSBjbGlxdWUgbm8gYm90w6NvIGFiYWl4by48L3NwYW5cbiAgICA+XG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3M9XCJ6LTIwIGNlLWR1aS1idG4gY2UtZHVpLWJ0bi1vdXRsaW5lIGNlLWR1aS1idG4tcHJpbWFyeSBtLWF1dG9cIlxuICAgICAgb246Y2xpY2s9eygpID0+IHtcbiAgICAgICAgaGFuZGxlcigpO1xuICAgICAgICBjb25zb2xlLmxvZygnY2FuaWNuYScsIGhhbmRsZXIpO1xuICAgICAgICAvLyBjYXB0dXJpbmcgPSB0cnVlO1xuICAgICAgICAvLyBvcGVuQ2FtZXJhKCk7XG4gICAgICB9fT5SZWluaWNpYXI8L2J1dHRvblxuICAgID5cbiAgezplbHNlIGlmICRjYW1lcmFTdGF0dXNTdG9yZSA9PT0gQ2FtZXJhU3RhdHVzRW51bS5DQU1FUkFfQ0xPU0VEX0VSUk9SfVxuICAgIDwhLS0gaWNvbmlmeSBwaDp3YXJuaW5nIC0tPlxuICAgIDxzdmdcbiAgICAgIGNsYXNzPVwidGV4dC1bOGVtXSBteC1hdXRvXCJcbiAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgd2lkdGg9XCIxZW1cIlxuICAgICAgaGVpZ2h0PVwiMWVtXCJcbiAgICAgIHZpZXdCb3g9XCIwIDAgMjU2IDI1NlwiXG4gICAgICB7Li4uJCRwcm9wc31cbiAgICA+XG4gICAgICA8cGF0aFxuICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgZD1cIk0yMzYuOCAxODguMDlMMTQ5LjM1IDM2LjIyYTI0Ljc2IDI0Ljc2IDAgMCAwLTQyLjcgMEwxOS4yIDE4OC4wOWEyMy41MSAyMy41MSAwIDAgMCAwIDIzLjcyQTI0LjM1IDI0LjM1IDAgMCAwIDQwLjU1IDIyNGgxNzQuOWEyNC4zNSAyNC4zNSAwIDAgMCAyMS4zMy0xMi4xOWEyMy41MSAyMy41MSAwIDAgMCAuMDItMjMuNzJtLTEzLjg3IDE1LjcxYTguNSA4LjUgMCAwIDEtNy40OCA0LjJINDAuNTVhOC41IDguNSAwIDAgMS03LjQ4LTQuMmE3LjU5IDcuNTkgMCAwIDEgMC03LjcybDg3LjQ1LTE1MS44N2E4Ljc1IDguNzUgMCAwIDEgMTUgMGw4Ny40NSAxNTEuODdhNy41OSA3LjU5IDAgMCAxLS4wNCA3LjcyTTEyMCAxNDR2LTQwYTggOCAwIDAgMSAxNiAwdjQwYTggOCAwIDAgMS0xNiAwbTIwIDM2YTEyIDEyIDAgMSAxLTEyLTEyYTEyIDEyIDAgMCAxIDEyIDEyXCJcbiAgICAgIC8+XG4gICAgPC9zdmc+XG4gICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXhsIGZvbnQtYm9sZCB0ZXh0LWNlbnRlclwiPlBvciBmYXZvciwgcGVybWFuZcOnYSBuYSBtZXNtYSBhYmEgZHVyYW50ZSBhIGNvbGV0YSBiaW9tw6l0cmljYS48L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJtLWF1dG8gdGV4dC1iYXNlIGJsb2NrIHRleHQtY2VudGVyXCI+Q2xpcXVlIG5vIGJvdMOjbyBSZWluaWNpYXIgcGFyYSBjYXB0dXJhciBub3ZhbWVudGUuPC9zcGFuPlxuICAgIDxidXR0b25cbiAgICAgIGNsYXNzPVwiei0yMCBjZS1kdWktYnRuIGNlLWR1aS1idG4tb3V0bGluZSBjZS1kdWktYnRuLXByaW1hcnkgbS1hdXRvXCJcbiAgICAgIG9uOmNsaWNrPXsoKSA9PiB7XG4gICAgICAgIGhhbmRsZXIoKTtcbiAgICAgIH19PlJlaW5pY2lhcjwvYnV0dG9uXG4gICAgPlxuICB7OmVsc2UgaWYgJGNhbWVyYVN0YXR1c1N0b3JlID09PSBDYW1lcmFTdGF0dXNFbnVtLkNBTUVSQV9VTlNVUFBPUlRFRH1cbiAgICA8IS0tIGljb25pZnkgcGg6dmlkZW8tY2FtZXJhLXNsYXNoLWJvbGQgLS0+XG4gICAgPHN2Z1xuICAgICAgY2xhc3M9XCJ0ZXh0LVs4ZW1dIG14LWF1dG9cIlxuICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICB3aWR0aD1cIjFlbVwiXG4gICAgICBoZWlnaHQ9XCIxZW1cIlxuICAgICAgdmlld0JveD1cIjAgMCAyNTYgMjU2XCJcbiAgICAgIHsuLi4kJHByb3BzfVxuICAgID5cbiAgICAgIDxwYXRoXG4gICAgICAgIGZpbGw9XCJjdXJyZW50Q29sb3JcIlxuICAgICAgICBkPVwiTTI0OS40NSA2OS4zMWExMiAxMiAwIDAgMC0xMi41MSAxTDIxMiA4OC40M1Y3MmEyMCAyMCAwIDAgMC0yMC0yMGgtNjguMTJhMTIgMTIgMCAwIDAgMCAyNEgxODh2NjhhMTIgMTIgMCAwIDAgNC40NiA5LjMzYy4xNS4xMy4zMS4yNS40OC4zOGw0NCAzMkExMiAxMiAwIDAgMCAyNTYgMTc2VjgwYTEyIDEyIDAgMCAwLTYuNTUtMTAuNjlNMjMyIDE1Mi40M2wtMjAtMTQuNTR2LTE5Ljc4bDIwLTE0LjU0Wk01Ni44OCAzMS45M2ExMiAxMiAwIDEgMC0xNy43NiAxNi4xNEw0Mi42OSA1MkgzMmEyMCAyMCAwIDAgMC0yMCAyMHYxMTJhMjAgMjAgMCAwIDAgMjAgMjBoMTQ4Ljg3bDE4LjI1IDIwLjA3YTEyIDEyIDAgMCAwIDE3Ljc2LTE2LjE0Wk0zNiAxODBWNzZoMjguNTFsOTQuNTUgMTA0WlwiXG4gICAgICAvPlxuICAgIDwvc3ZnPlxuICAgIDxzcGFuIGNsYXNzPVwidGV4dC14bCBmb250LWJvbGQgdGV4dC1jZW50ZXJcIj5BIGPDom1lcmEgbsOjbyBhdGVuZGUgb3MgcmVxdWlzaXRvcyBuZWNlc3PDoXJpb3MuPC9zcGFuPlxuICAgIDxzcGFuIGNsYXNzPVwibS1hdXRvIHRleHQtYmFzZSBibG9jayB0ZXh0LWNlbnRlclwiPlBvciBmYXZvciwgY29uZWN0ZSBvdXRyYSBjw6JtZXJhIGUgdGVudGUgbm92YW1lbnRlLjwvc3Bhbj5cbiAgICA8YnV0dG9uXG4gICAgICBjbGFzcz1cInotMjAgY2UtZHVpLWJ0biBjZS1kdWktYnRuLW91dGxpbmUgY2UtZHVpLWJ0bi1wcmltYXJ5IG0tYXV0b1wiXG4gICAgICBvbjpjbGljaz17KCkgPT4ge1xuICAgICAgICBoYW5kbGVyKCk7XG4gICAgICB9fT5SZWluaWNpYXI8L2J1dHRvblxuICAgID5cbiAgezplbHNlIGlmICRjYW1lcmFTdGF0dXNTdG9yZSA9PT0gQ2FtZXJhU3RhdHVzRW51bS5DQU1FUkFfT1JJRU5UQVRJT05fUE9SVFJBSVQgJiYgJGNvbGxlY3RvclNlbGVjdCA9PSAnRkFDRSd9XG4gICAgPCEtLSBpY29uaWZ5IHBoOnZpZGVvLWNhbWVyYS1zbGFzaC1ib2xkIC0tPlxuICAgIDxzdmdcbiAgICAgIGNsYXNzPVwidGV4dC1bOGVtXSBteC1hdXRvXCJcbiAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgd2lkdGg9XCIxZW1cIlxuICAgICAgaGVpZ2h0PVwiMWVtXCJcbiAgICAgIHZpZXdCb3g9XCIwIDAgMjU2IDI1NlwiXG4gICAgICB7Li4uJCRwcm9wc31cbiAgICA+XG4gICAgICA8cGF0aFxuICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgZD1cIk0yMDggNTZoLTI3LjcybC0xMy42My0yMC40NEE4IDggMCAwIDAgMTYwIDMySDk2YTggOCAwIDAgMC02LjY1IDMuNTZMNzUuNzEgNTZINDhhMjQgMjQgMCAwIDAtMjQgMjR2MTEyYTI0IDI0IDAgMCAwIDI0IDI0aDE2MGEyNCAyNCAwIDAgMCAyNC0yNFY4MGEyNCAyNCAwIDAgMC0yNC0yNG0tNTEuMTkgMTEwLjRBNDguMjEgNDguMjEgMCAwIDEgOTYgMTYzLjc3VjE2OGE4IDggMCAwIDEtMTYgMHYtMjRhOCA4IDAgMCAxIDgtOGgyNGE4IDggMCAwIDEgMCAxNmgtNS4xNWEzMi4xMiAzMi4xMiAwIDAgMCA0MC4zNCAxLjYxYTggOCAwIDAgMSA5LjYyIDEyLjc5TTE3NiAxMjBhOCA4IDAgMCAxLTggOGgtMjRhOCA4IDAgMCAxIDAtMTZoNS4xNWEzMi4xMiAzMi4xMiAwIDAgMC00MC4zNC0xLjYxYTggOCAwIDAgMS05LjYyLTEyLjc5YTQ4LjIxIDQ4LjIxIDAgMCAxIDYwLjgxIDIuNjNWOTZhOCA4IDAgMCAxIDE2IDBaXCJcbiAgICAgIC8+XG4gICAgPC9zdmc+XG4gICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXhsIGZvbnQtYm9sZCB0ZXh0LWNlbnRlclwiPk8gZGlzcG9zaXRpdm8gcHJlY2lzYSBlc3RhciBuYSBwb3Npw6fDo28gcmV0cmF0by48L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJtLWF1dG8gdGV4dC1iYXNlIGJsb2NrIHRleHQtY2VudGVyXCI+UG9yIGZhdm9yLCB2aXJlIG8gZGlzcG9zaXRpdm8gb3UgcHJlc3Npb25lIG8gYm90w6NvIGFiYWl4by48L3NwYW4+XG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3M9XCJ6LTIwIGNlLWR1aS1idG4gY2UtZHVpLWJ0bi1vdXRsaW5lIGNlLWR1aS1idG4tcHJpbWFyeSBtLWF1dG9cIlxuICAgICAgb246Y2xpY2s9eygpID0+IHtcbiAgICAgICAgJHNjcmVlbkxvY2tlZCA9IHRydWU7XG4gICAgICAgIGxvY2tTY3JlZW4odHJ1ZSk7XG4gICAgICB9fT5BanVzdGFyIE9yaWVudGHDp8OjbzwvYnV0dG9uXG4gICAgPlxuICB7OmVsc2UgaWYgJGNhbWVyYVN0YXR1c1N0b3JlID09PSBDYW1lcmFTdGF0dXNFbnVtLkNBTUVSQV9PUklFTlRBVElPTl9MQU5EU0NBUEUgJiYgJGNvbGxlY3RvclNlbGVjdCA9PSAnRE9DVU1FTlQnfVxuICAgIDwhLS0gaWNvbmlmeSBwaDp2aWRlby1jYW1lcmEtc2xhc2gtYm9sZCAtLT5cbiAgICA8c3ZnXG4gICAgICBjbGFzcz1cInRleHQtWzhlbV0gbXgtYXV0b1wiXG4gICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgIHdpZHRoPVwiMWVtXCJcbiAgICAgIGhlaWdodD1cIjFlbVwiXG4gICAgICB2aWV3Qm94PVwiMCAwIDI1NiAyNTZcIlxuICAgICAgey4uLiQkcHJvcHN9XG4gICAgPlxuICAgICAgPHBhdGhcbiAgICAgICAgZmlsbD1cImN1cnJlbnRDb2xvclwiXG4gICAgICAgIGQ9XCJNMjA4IDU2aC0yNy43MmwtMTMuNjMtMjAuNDRBOCA4IDAgMCAwIDE2MCAzMkg5NmE4IDggMCAwIDAtNi42NSAzLjU2TDc1LjcxIDU2SDQ4YTI0IDI0IDAgMCAwLTI0IDI0djExMmEyNCAyNCAwIDAgMCAyNCAyNGgxNjBhMjQgMjQgMCAwIDAgMjQtMjRWODBhMjQgMjQgMCAwIDAtMjQtMjRtLTUxLjE5IDExMC40QTQ4LjIxIDQ4LjIxIDAgMCAxIDk2IDE2My43N1YxNjhhOCA4IDAgMCAxLTE2IDB2LTI0YTggOCAwIDAgMSA4LThoMjRhOCA4IDAgMCAxIDAgMTZoLTUuMTVhMzIuMTIgMzIuMTIgMCAwIDAgNDAuMzQgMS42MWE4IDggMCAwIDEgOS42MiAxMi43OU0xNzYgMTIwYTggOCAwIDAgMS04IDhoLTI0YTggOCAwIDAgMSAwLTE2aDUuMTVhMzIuMTIgMzIuMTIgMCAwIDAtNDAuMzQtMS42MWE4IDggMCAwIDEtOS42Mi0xMi43OWE0OC4yMSA0OC4yMSAwIDAgMSA2MC44MSAyLjYzVjk2YTggOCAwIDAgMSAxNiAwWlwiXG4gICAgICAvPlxuICAgIDwvc3ZnPlxuICAgIDxzcGFuIGNsYXNzPVwidGV4dC14bCBmb250LWJvbGQgdGV4dC1jZW50ZXJcIj5PIGRpc3Bvc2l0aXZvIHByZWNpc2EgZXN0YXIgbmEgcG9zacOnw6NvIHBhaXNhZ2VtLjwvc3Bhbj5cbiAgICA8c3BhbiBjbGFzcz1cIm0tYXV0byB0ZXh0LWJhc2UgYmxvY2sgdGV4dC1jZW50ZXJcIj5Qb3IgZmF2b3IsIHZpcmUgbyBkaXNwb3NpdGl2byBvdSBwcmVzc2lvbmUgbyBib3TDo28gYWJhaXhvLjwvc3Bhbj5cbiAgICA8YnV0dG9uXG4gICAgICBjbGFzcz1cInotMjAgY2UtZHVpLWJ0biBjZS1kdWktYnRuLW91dGxpbmUgY2UtZHVpLWJ0bi1wcmltYXJ5IG0tYXV0b1wiXG4gICAgICBvbjpjbGljaz17KCkgPT4ge1xuICAgICAgICAkc2NyZWVuTG9ja2VkID0gdHJ1ZTtcbiAgICAgICAgbG9ja1NjcmVlbihmYWxzZSk7XG4gICAgICB9fT5BanVzdGFyIE9yaWVudGHDp8OjbzwvYnV0dG9uXG4gICAgPlxuICB7L2lmfVxuPC9kaXY+XG4iLCI8IS0tIHN2ZWx0ZS1pZ25vcmUgbWlzc2luZy1kZWNsYXJhdGlvbiAtLT5cbjxzdmVsdGU6b3B0aW9ucyB0YWc9XCJjYW1lcmEtYnRuXCIgLz5cblxuPHNjcmlwdCBsYW5nPVwidHNcIj5cbiAgaW1wb3J0IHsgc3dhcENhbWVyYSB9IGZyb20gJy4vY29uZlN0b3JlJztcbiAgaW1wb3J0IENvbmZNb2RhbCBmcm9tICcuL0NvbmZNb2RhbC5zdmVsdGUnO1xuICBpbXBvcnQgeyBjYW1lcmFEZXZpY2VzU3RvcmUgfSBmcm9tICcuLi9mYWNlVGFiL2ZhY2VTdG9yZSc7XG4gIGV4cG9ydCBsZXQgY2xhc3NOYW1lID0gJyc7XG48L3NjcmlwdD5cblxuPENvbmZNb2RhbCAvPlxuXG48IS0tIHN2ZWx0ZS1pZ25vcmUgYTExeS1jbGljay1ldmVudHMtaGF2ZS1rZXktZXZlbnRzIC0tPlxuPGRpdlxuICBvbjpjbGljaz17KCkgPT4ge1xuICAgICRzd2FwQ2FtZXJhID0gISRzd2FwQ2FtZXJhO1xuICB9fVxuICBjbGFzcz1cImNlLWR1aS1kcm9wZG93biBjZS1kdWktZHJvcGRvd24tdG9wIGFic29sdXRlIHotMTAgcmlnaHQtMCBzbTpibG9jayB7Y2xhc3NOYW1lfVwiXG4+XG4gIDwhLS0gc3ZlbHRlLWlnbm9yZSBhMTF5LWxhYmVsLWhhcy1hc3NvY2lhdGVkLWNvbnRyb2wgLS0+XG4gIDwhLS0gc3ZlbHRlLWlnbm9yZSBhMTF5LW5vLW5vbmludGVyYWN0aXZlLXRhYmluZGV4IC0tPlxuICA8bGFiZWwgdGFiaW5kZXg9XCIwXCIgaGlkZGVuPXskY2FtZXJhRGV2aWNlc1N0b3JlLmxlbmd0aCA9PSAxfSBjbGFzcz1cImNlLWR1aS1idG4gY2UtZHVpLWJ0bi1naG9zdCBtLTFcIlxuICAgID48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjJlbVwiIGhlaWdodD1cIjJlbVwiIHZpZXdCb3g9XCIwIDAgMjU2IDI1NlwiIHsuLi4kJHByb3BzfT5cbiAgICAgIDxwYXRoXG4gICAgICAgIGZpbGw9XCJjdXJyZW50Q29sb3JcIlxuICAgICAgICBkPVwiTTIwOCA1NmgtMjcuNzJsLTEzLjYzLTIwLjQ0QTggOCAwIDAgMCAxNjAgMzJIOTZhOCA4IDAgMCAwLTYuNjUgMy41Nkw3NS43MSA1Nkg0OGEyNCAyNCAwIDAgMC0yNCAyNHYxMTJhMjQgMjQgMCAwIDAgMjQgMjRoMTYwYTI0IDI0IDAgMCAwIDI0LTI0VjgwYTI0IDI0IDAgMCAwLTI0LTI0bS01MS4xOSAxMTAuNEE0OC4yMSA0OC4yMSAwIDAgMSA5NiAxNjMuNzdWMTY4YTggOCAwIDAgMS0xNiAwdi0yNGE4IDggMCAwIDEgOC04aDI0YTggOCAwIDAgMSAwIDE2aC01LjE1YTMyLjEyIDMyLjEyIDAgMCAwIDQwLjM0IDEuNjFhOCA4IDAgMCAxIDkuNjIgMTIuNzlNMTc2IDEyMGE4IDggMCAwIDEtOCA4aC0yNGE4IDggMCAwIDEgMC0xNmg1LjE1YTMyLjEyIDMyLjEyIDAgMCAwLTQwLjM0LTEuNjFhOCA4IDAgMCAxLTkuNjItMTIuNzlhNDguMjEgNDguMjEgMCAwIDEgNjAuODEgMi42M1Y5NmE4IDggMCAwIDEgMTYgMFpcIlxuICAgICAgLz5cbiAgICA8L3N2Zz48L2xhYmVsXG4gID5cbjwvZGl2PlxuIl0sIm5hbWVzIjpbIkNhbWVyYVN0YXR1c0VudW0iLCJjYW1lcmFTdGF0dXNTdG9yZSIsIndyaXRhYmxlIiwiY3R4IiwiaW5zZXJ0X2RldiIsInRhcmdldCIsInN2ZyIsImFuY2hvciIsImFwcGVuZF9kZXYiLCJwYXRoIiwic3BhbjAiLCJzcGFuMSIsImJ1dHRvbiIsImNyZWF0ZV9pZl9ibG9jayIsImNyZWF0ZV9pZl9ibG9ja18xIiwiY3JlYXRlX2lmX2Jsb2NrXzIiLCJjcmVhdGVfaWZfYmxvY2tfMyIsImNyZWF0ZV9pZl9ibG9ja180IiwiY3JlYXRlX2lmX2Jsb2NrXzUiLCJjcmVhdGVfaWZfYmxvY2tfNiIsImRpdiIsImhhbmRsZXIiLCJzZXRfc3RvcmVfdmFsdWUiLCJzY3JlZW5Mb2NrZWQiLCIkc2NyZWVuTG9ja2VkIiwibG9ja1NjcmVlbiIsImxhYmVsIiwiY2xhc3NOYW1lIiwiJCRwcm9wcyIsInN3YXBDYW1lcmEiLCIkc3dhcENhbWVyYSJdLCJtYXBwaW5ncyI6IjtBQUVrQixJQUFBQSxzQkFBQUEsT0FDaEJBLEVBQUEsS0FBSyxNQUNMQSxFQUFBLHlCQUF5QiwwQkFDekJBLEVBQUEsc0JBQXNCLHVCQUN0QkEsRUFBQSxzQkFBc0IsdUJBQ3RCQSxFQUFBLHNCQUFzQix1QkFDdEJBLEVBQUEscUJBQXFCLHNC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
641
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FtZXJhQnRuX2FjZmUyODJjXzIuMi44LVJDMDEuanMiLCJzb3VyY2VzIjpbIi4uL3NyYy9saWIvZmFjZVRhYi9jYW1lcmFTdGF0dXMvY2FtZXJhU3RhdHVzU3RvcmUudHMiLCIuLi9zcmMvbGliL2ZhY2VUYWIvY2FtZXJhU3RhdHVzL0NhbWVyYVN0YXR1cy5zdmVsdGUiLCIuLi9zcmMvbGliL2NvbmYvQ2FtZXJhQnRuLnN2ZWx0ZSJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB3cml0YWJsZSB9IGZyb20gJ3N2ZWx0ZS9zdG9yZSc7XG5cbmV4cG9ydCBjb25zdCBlbnVtIENhbWVyYVN0YXR1c0VudW0ge1xuICBPSyA9ICdPSycsXG4gIERFVklDRV9OT1RfRk9VTkRfRVJST1IgPSAnREVWSUNFX05PVF9GT1VORF9FUlJPUicsXG4gIENBTUVSQV9ERU5JRURfRVJST1IgPSAnQ0FNRVJBX0RFTklFRF9FUlJPUicsIC8vIG9yIGRpc21pc3NlZFxuICBDQU1FUkFfSU5fVVNFX0VSUk9SID0gJ0NBTUVSQV9JTl9VU0VfRVJST1InLFxuICBDQU1FUkFfQ0xPU0VEX0VSUk9SID0gJ0NBTUVSQV9DTE9TRURfRVJST1InLFxuICBDQU1FUkFfVU5TVVBQT1JURUQgPSAnQ0FNRVJBX1VOU1VQUE9SVEVEJyxcbiAgQ0FNRVJBX09SSUVOVEFUSU9OX1BPUlRSQUlUID0gJ0NBTUVSQV9PUklFTlRBVElPTl9QT1JUUkFJVCcsXG4gIENBTUVSQV9PUklFTlRBVElPTl9MQU5EU0NBUEUgPSAnQ0FNRVJBX09SSUVOVEFUSU9OX0xBTkRTQ0FQRScsXG59XG5cbmV4cG9ydCBjb25zdCBjYW1lcmFTdGF0dXNTdG9yZSA9IHdyaXRhYmxlPENhbWVyYVN0YXR1c0VudW0+KENhbWVyYVN0YXR1c0VudW0uT0spO1xuIiwiPHN2ZWx0ZTpvcHRpb25zIHRhZz1cImNhbWVyYS1zdGF0dXNcIiAvPlxuXG48c2NyaXB0IGxhbmc9XCJ0c1wiPlxuICBleHBvcnQgbGV0IGhhbmRsZXI6IEZ1bmN0aW9uID0gKCkgPT4ge307XG4gIGltcG9ydCB7IENhbWVyYVN0YXR1c0VudW0sIGNhbWVyYVN0YXR1c1N0b3JlIH0gZnJvbSAnLi9jYW1lcmFTdGF0dXNTdG9yZSc7XG4gIGltcG9ydCB7IGxvY2tTY3JlZW4gfSBmcm9tICcuLi8uLi91dGlsL3V0aWwnO1xuICBpbXBvcnQgeyBjb2xsZWN0b3JTZWxlY3QsIHNjcmVlbkxvY2tlZCB9IGZyb20gJy4uLy4uLy4uL21haW5TdG9yZSc7XG48L3NjcmlwdD5cblxuPGRpdlxuICBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTQganVzdGlmeS1jZW50ZXIgcmVsYXRpdmUgb3ZlcmZsb3ctdmlzaWJsZVwiXG4+XG4gIHsjaWYgJGNhbWVyYVN0YXR1c1N0b3JlID09PSBDYW1lcmFTdGF0dXNFbnVtLkNBTUVSQV9ERU5JRURfRVJST1J9XG4gICAgPCEtLSBpY29uaWZ5IHBoOnZpZGVvLWNhbWVyYS1zbGFzaC1ib2xkIC0tPlxuICAgIDxzdmdcbiAgICAgIGNsYXNzPVwidGV4dC1bOGVtXSBteC1hdXRvXCJcbiAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgd2lkdGg9XCIxZW1cIlxuICAgICAgaGVpZ2h0PVwiMWVtXCJcbiAgICAgIHZpZXdCb3g9XCIwIDAgMjU2IDI1NlwiXG4gICAgICB7Li4uJCRwcm9wc31cbiAgICA+XG4gICAgICA8cGF0aFxuICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgZD1cIk0yNDkuNDUgNjkuMzFhMTIgMTIgMCAwIDAtMTIuNTEgMUwyMTIgODguNDNWNzJhMjAgMjAgMCAwIDAtMjAtMjBoLTY4LjEyYTEyIDEyIDAgMCAwIDAgMjRIMTg4djY4YTEyIDEyIDAgMCAwIDQuNDYgOS4zM2MuMTUuMTMuMzEuMjUuNDguMzhsNDQgMzJBMTIgMTIgMCAwIDAgMjU2IDE3NlY4MGExMiAxMiAwIDAgMC02LjU1LTEwLjY5TTIzMiAxNTIuNDNsLTIwLTE0LjU0di0xOS43OGwyMC0xNC41NFpNNTYuODggMzEuOTNhMTIgMTIgMCAxIDAtMTcuNzYgMTYuMTRMNDIuNjkgNTJIMzJhMjAgMjAgMCAwIDAtMjAgMjB2MTEyYTIwIDIwIDAgMCAwIDIwIDIwaDE0OC44N2wxOC4yNSAyMC4wN2ExMiAxMiAwIDAgMCAxNy43Ni0xNi4xNFpNMzYgMTgwVjc2aDI4LjUxbDk0LjU1IDEwNFpcIlxuICAgICAgLz5cbiAgICA8L3N2Zz5cbiAgICA8c3BhbiBjbGFzcz1cInRleHQteGwgZm9udC1ib2xkIHRleHQtY2VudGVyXCI+UG9yIGZhdm9yLCBjb25jZWRhIHBlcm1pc3PDo28gZGUgYWNlc3NvIMOgIGPDom1lcmEuPC9zcGFuPlxuICAgIDxzcGFuIGNsYXNzPVwibS1hdXRvIHRleHQtYmFzZSBibG9jayB0ZXh0LWNlbnRlclwiPkFww7NzIGNvbmNlZGVyIGEgcGVybWlzc8OjbywgY2xpcXVlIG5vIGJvdMOjbyBSZWluaWNpYXIuPC9zcGFuPlxuICAgIDxidXR0b25cbiAgICAgIGNsYXNzPVwiei0yMCBjZS1kdWktYnRuIGNlLWR1aS1idG4tb3V0bGluZSBjZS1kdWktYnRuLXByaW1hcnkgbS1hdXRvXCJcbiAgICAgIG9uOmNsaWNrPXsoKSA9PiB7XG4gICAgICAgIGhhbmRsZXIoKTtcbiAgICAgICAgY29uc29sZS5sb2coJ2NhbmljbmEnLCBoYW5kbGVyKTtcbiAgICAgICAgLy8gY2FwdHVyaW5nID0gdHJ1ZTtcbiAgICAgICAgLy8gY2FtZXJhRGVuaWVkID0gZmFsc2U7XG4gICAgICAgIC8vIG9wZW5DYW1lcmEoKTtcbiAgICAgIH19PlJlaW5pY2lhcjwvYnV0dG9uXG4gICAgPlxuICB7OmVsc2UgaWYgJGNhbWVyYVN0YXR1c1N0b3JlID09PSBDYW1lcmFTdGF0dXNFbnVtLkRFVklDRV9OT1RfRk9VTkRfRVJST1J9XG4gICAgPCEtLSBpY29uaWZ5IHBoOnZpZGVvLWNhbWVyYS1zbGFzaC1ib2xkIC0tPlxuICAgIDxzdmdcbiAgICAgIGNsYXNzPVwidGV4dC1bOGVtXSBteC1hdXRvXCJcbiAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgd2lkdGg9XCIxZW1cIlxuICAgICAgaGVpZ2h0PVwiMWVtXCJcbiAgICAgIHZpZXdCb3g9XCIwIDAgMjU2IDI1NlwiXG4gICAgICB7Li4uJCRwcm9wc31cbiAgICA+XG4gICAgICA8cGF0aFxuICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgZD1cIm0xMzcgMTY4bDExLjUyLTExLjUxYTEyIDEyIDAgMCAwLTE3LTE3TDEyMCAxNTFsLTE1LTE1bDExLjUyLTExLjUxYTEyIDEyIDAgMCAwLTE3LTE3TDg4IDExOWwtMTUuNTEtMTUuNDlhMTIgMTIgMCAwIDAtMTcgMTdMNTkgMTI0bC0yMC40NiAyMC40OWEzNiAzNiAwIDAgMCAwIDUwLjkxbDIuNTUgMi41NGwtMjUuNTggMjUuNTdhMTIgMTIgMCAwIDAgMTcgMTdsMjUuNTctMjUuNThsMi41NCAyLjU1YTM2LjA2IDM2LjA2IDAgMCAwIDUwLjkxIDBMMTMyIDE5N2wzLjUxIDMuNTJhMTIgMTIgMCAwIDAgMTctMTdabS00Mi40NiAzMi40OWExMiAxMiAwIDAgMS0xNyAwbC0yMi4wMy0yMi4wNmExMiAxMiAwIDAgMSAwLTE3TDc2IDE0MWwzOSAzOVptMTQ2LTE4NWExMiAxMiAwIDAgMC0xNyAwbC0yNS42IDI1LjZsLTIuNTQtMi41NWEzNi4wNSAzNi4wNSAwIDAgMC01MC45MSAwTDEyNCA1OWwtMy41MS0zLjUyYTEyIDEyIDAgMCAwLTE3IDE3bDgwIDgwYTEyIDEyIDAgMCAwIDE3LTE3TDE5NyAxMzJsMjAuNDktMjAuNDlhMzYgMzYgMCAwIDAgMC01MC45MWwtMi41NS0yLjU0bDI1LjU4LTI1LjU3YTEyIDEyIDAgMCAwLS4wMy0xNi45OFptLTQwIDc5TDE4MCAxMTVsLTM5LTM5bDIwLjQ5LTIwLjQ5YTEyIDEyIDAgMCAxIDE3IDBsMjIuMDYgMjIuMDZhMTIgMTIgMCAwIDEgMCAxN1pcIlxuICAgICAgLz5cbiAgICA8L3N2Zz5cbiAgICA8c3BhbiBjbGFzcz1cInRleHQteGwgZm9udC1ib2xkIHRleHQtY2VudGVyXCI+QSBjw6JtZXJhIG7Do28gZm9pIGRldGVjdGFkYS48L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJtLWF1dG8gdGV4dC1iYXNlIGJsb2NrIHRleHQtY2VudGVyXCJcbiAgICAgID5Qb3IgZmF2b3IsIGNvbmVjdGUgYSBzdWEgY8OibWVyYSwgZXNwZXJlIGFsZ3VucyBpbnN0YW50ZXMgZSBjbGlxdWUgbm8gYm90w6NvIFJlaW5pY2lhci48L3NwYW5cbiAgICA+XG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3M9XCJ6LTIwIGNlLWR1aS1idG4gY2UtZHVpLWJ0bi1vdXRsaW5lIGNlLWR1aS1idG4tcHJpbWFyeSBtLWF1dG9cIlxuICAgICAgb246Y2xpY2s9eygpID0+IHtcbiAgICAgICAgaGFuZGxlcigpO1xuICAgICAgICBjb25zb2xlLmxvZygnY2FuaWNuYScsIGhhbmRsZXIpO1xuICAgICAgICAvLyBjYXB0dXJpbmcgPSB0cnVlO1xuICAgICAgICAvLyBkZXZpY2VOb3RGb3VuZCA9IGZhbHNlO1xuICAgICAgICAvLyBvcGVuQ2FtZXJhKCk7XG4gICAgICB9fT5SZWluaWNpYXI8L2J1dHRvblxuICAgID5cbiAgezplbHNlIGlmICRjYW1lcmFTdGF0dXNTdG9yZSA9PT0gQ2FtZXJhU3RhdHVzRW51bS5DQU1FUkFfSU5fVVNFX0VSUk9SfVxuICAgIDwhLS0gaWNvbmlmeSBwaDp3YXJuaW5nIC0tPlxuICAgIDxzdmdcbiAgICAgIGNsYXNzPVwidGV4dC1bOGVtXSBteC1hdXRvXCJcbiAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgd2lkdGg9XCIxZW1cIlxuICAgICAgaGVpZ2h0PVwiMWVtXCJcbiAgICAgIHZpZXdCb3g9XCIwIDAgMjU2IDI1NlwiXG4gICAgICB7Li4uJCRwcm9wc31cbiAgICA+XG4gICAgICA8cGF0aFxuICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgZD1cIk01Ni44OCAzMS45M2ExMiAxMiAwIDEgMC0xNy43NiAxNi4xNGw0IDQuMzdBMjggMjggMCAwIDAgMjAgODB2MTEyYTI4IDI4IDAgMCAwIDI4IDI4aDE0Ny40MmwzLjcgNC4wN2ExMiAxMiAwIDAgMCAxNy43Ni0xNi4xNFptNDkuMzUgOTBMMTM2IDE1NC42NGEyNCAyNCAwIDAgMS0yOS43Ny0zMi43NVpNNDggMTk2YTQgNCAwIDAgMS00LTRWODBhNCA0IDAgMCAxIDQtNGgxNi41MWwyNC45MiAyNy40MWE0OCA0OCAwIDAgMCA2My4zNCA2OS42N0wxNzMuNiAxOTZaTTIzNiA4MHY5NC4xNGExMiAxMiAwIDAgMS0yNCAwVjgwYTQgNCAwIDAgMC00LTRoLTMyYTEyIDEyIDAgMCAxLTEwLTUuMzRMMTUzLjU3IDUyaC01MS41MWExMiAxMiAwIDAgMSAwLTI0SDE2MGExMiAxMiAwIDAgMSAxMCA1LjM0TDE4Mi40MiA1MkgyMDhhMjggMjggMCAwIDEgMjggMjhcIlxuICAgICAgLz5cbiAgICA8L3N2Zz5cbiAgICA8c3BhbiBjbGFzcz1cInRleHQteGwgZm9udC1ib2xkIHRleHQtY2VudGVyXCI+QSBjw6JtZXJhIGVzdMOhIGVtIHVzby48L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJtLWF1dG8gdGV4dC1iYXNlIGJsb2NrIHRleHQtY2VudGVyXCJcbiAgICAgID5DZXJ0aWZpcXVlLXNlIGRlIHF1ZSBhIGPDom1lcmEgbsOjbyBlc3TDoSBzZW5kbyB1dGlsaXphZGEgcG9yIG5lbmh1bWEgb3V0cmEgYXBsaWNhw6fDo28gZSBjbGlxdWUgbm8gYm90w6NvIGFiYWl4by48L3NwYW5cbiAgICA+XG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3M9XCJ6LTIwIGNlLWR1aS1idG4gY2UtZHVpLWJ0bi1vdXRsaW5lIGNlLWR1aS1idG4tcHJpbWFyeSBtLWF1dG9cIlxuICAgICAgb246Y2xpY2s9eygpID0+IHtcbiAgICAgICAgaGFuZGxlcigpO1xuICAgICAgICBjb25zb2xlLmxvZygnY2FuaWNuYScsIGhhbmRsZXIpO1xuICAgICAgICAvLyBjYXB0dXJpbmcgPSB0cnVlO1xuICAgICAgICAvLyBvcGVuQ2FtZXJhKCk7XG4gICAgICB9fT5SZWluaWNpYXI8L2J1dHRvblxuICAgID5cbiAgezplbHNlIGlmICRjYW1lcmFTdGF0dXNTdG9yZSA9PT0gQ2FtZXJhU3RhdHVzRW51bS5DQU1FUkFfQ0xPU0VEX0VSUk9SfVxuICAgIDwhLS0gaWNvbmlmeSBwaDp3YXJuaW5nIC0tPlxuICAgIDxzdmdcbiAgICAgIGNsYXNzPVwidGV4dC1bOGVtXSBteC1hdXRvXCJcbiAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgd2lkdGg9XCIxZW1cIlxuICAgICAgaGVpZ2h0PVwiMWVtXCJcbiAgICAgIHZpZXdCb3g9XCIwIDAgMjU2IDI1NlwiXG4gICAgICB7Li4uJCRwcm9wc31cbiAgICA+XG4gICAgICA8cGF0aFxuICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgZD1cIk0yMzYuOCAxODguMDlMMTQ5LjM1IDM2LjIyYTI0Ljc2IDI0Ljc2IDAgMCAwLTQyLjcgMEwxOS4yIDE4OC4wOWEyMy41MSAyMy41MSAwIDAgMCAwIDIzLjcyQTI0LjM1IDI0LjM1IDAgMCAwIDQwLjU1IDIyNGgxNzQuOWEyNC4zNSAyNC4zNSAwIDAgMCAyMS4zMy0xMi4xOWEyMy41MSAyMy41MSAwIDAgMCAuMDItMjMuNzJtLTEzLjg3IDE1LjcxYTguNSA4LjUgMCAwIDEtNy40OCA0LjJINDAuNTVhOC41IDguNSAwIDAgMS03LjQ4LTQuMmE3LjU5IDcuNTkgMCAwIDEgMC03LjcybDg3LjQ1LTE1MS44N2E4Ljc1IDguNzUgMCAwIDEgMTUgMGw4Ny40NSAxNTEuODdhNy41OSA3LjU5IDAgMCAxLS4wNCA3LjcyTTEyMCAxNDR2LTQwYTggOCAwIDAgMSAxNiAwdjQwYTggOCAwIDAgMS0xNiAwbTIwIDM2YTEyIDEyIDAgMSAxLTEyLTEyYTEyIDEyIDAgMCAxIDEyIDEyXCJcbiAgICAgIC8+XG4gICAgPC9zdmc+XG4gICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXhsIGZvbnQtYm9sZCB0ZXh0LWNlbnRlclwiPlBvciBmYXZvciwgcGVybWFuZcOnYSBuYSBtZXNtYSBhYmEgZHVyYW50ZSBhIGNvbGV0YSBiaW9tw6l0cmljYS48L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJtLWF1dG8gdGV4dC1iYXNlIGJsb2NrIHRleHQtY2VudGVyXCI+Q2xpcXVlIG5vIGJvdMOjbyBSZWluaWNpYXIgcGFyYSBjYXB0dXJhciBub3ZhbWVudGUuPC9zcGFuPlxuICAgIDxidXR0b25cbiAgICAgIGNsYXNzPVwiei0yMCBjZS1kdWktYnRuIGNlLWR1aS1idG4tb3V0bGluZSBjZS1kdWktYnRuLXByaW1hcnkgbS1hdXRvXCJcbiAgICAgIG9uOmNsaWNrPXsoKSA9PiB7XG4gICAgICAgIGhhbmRsZXIoKTtcbiAgICAgIH19PlJlaW5pY2lhcjwvYnV0dG9uXG4gICAgPlxuICB7OmVsc2UgaWYgJGNhbWVyYVN0YXR1c1N0b3JlID09PSBDYW1lcmFTdGF0dXNFbnVtLkNBTUVSQV9VTlNVUFBPUlRFRH1cbiAgICA8IS0tIGljb25pZnkgcGg6dmlkZW8tY2FtZXJhLXNsYXNoLWJvbGQgLS0+XG4gICAgPHN2Z1xuICAgICAgY2xhc3M9XCJ0ZXh0LVs4ZW1dIG14LWF1dG9cIlxuICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICB3aWR0aD1cIjFlbVwiXG4gICAgICBoZWlnaHQ9XCIxZW1cIlxuICAgICAgdmlld0JveD1cIjAgMCAyNTYgMjU2XCJcbiAgICAgIHsuLi4kJHByb3BzfVxuICAgID5cbiAgICAgIDxwYXRoXG4gICAgICAgIGZpbGw9XCJjdXJyZW50Q29sb3JcIlxuICAgICAgICBkPVwiTTI0OS40NSA2OS4zMWExMiAxMiAwIDAgMC0xMi41MSAxTDIxMiA4OC40M1Y3MmEyMCAyMCAwIDAgMC0yMC0yMGgtNjguMTJhMTIgMTIgMCAwIDAgMCAyNEgxODh2NjhhMTIgMTIgMCAwIDAgNC40NiA5LjMzYy4xNS4xMy4zMS4yNS40OC4zOGw0NCAzMkExMiAxMiAwIDAgMCAyNTYgMTc2VjgwYTEyIDEyIDAgMCAwLTYuNTUtMTAuNjlNMjMyIDE1Mi40M2wtMjAtMTQuNTR2LTE5Ljc4bDIwLTE0LjU0Wk01Ni44OCAzMS45M2ExMiAxMiAwIDEgMC0xNy43NiAxNi4xNEw0Mi42OSA1MkgzMmEyMCAyMCAwIDAgMC0yMCAyMHYxMTJhMjAgMjAgMCAwIDAgMjAgMjBoMTQ4Ljg3bDE4LjI1IDIwLjA3YTEyIDEyIDAgMCAwIDE3Ljc2LTE2LjE0Wk0zNiAxODBWNzZoMjguNTFsOTQuNTUgMTA0WlwiXG4gICAgICAvPlxuICAgIDwvc3ZnPlxuICAgIDxzcGFuIGNsYXNzPVwidGV4dC14bCBmb250LWJvbGQgdGV4dC1jZW50ZXJcIj5BIGPDom1lcmEgbsOjbyBhdGVuZGUgb3MgcmVxdWlzaXRvcyBuZWNlc3PDoXJpb3MuPC9zcGFuPlxuICAgIDxzcGFuIGNsYXNzPVwibS1hdXRvIHRleHQtYmFzZSBibG9jayB0ZXh0LWNlbnRlclwiPlBvciBmYXZvciwgY29uZWN0ZSBvdXRyYSBjw6JtZXJhIGUgdGVudGUgbm92YW1lbnRlLjwvc3Bhbj5cbiAgICA8YnV0dG9uXG4gICAgICBjbGFzcz1cInotMjAgY2UtZHVpLWJ0biBjZS1kdWktYnRuLW91dGxpbmUgY2UtZHVpLWJ0bi1wcmltYXJ5IG0tYXV0b1wiXG4gICAgICBvbjpjbGljaz17KCkgPT4ge1xuICAgICAgICBoYW5kbGVyKCk7XG4gICAgICB9fT5SZWluaWNpYXI8L2J1dHRvblxuICAgID5cbiAgezplbHNlIGlmICRjYW1lcmFTdGF0dXNTdG9yZSA9PT0gQ2FtZXJhU3RhdHVzRW51bS5DQU1FUkFfT1JJRU5UQVRJT05fUE9SVFJBSVQgJiYgJGNvbGxlY3RvclNlbGVjdCA9PSAnRkFDRSd9XG4gICAgPCEtLSBpY29uaWZ5IHBoOnZpZGVvLWNhbWVyYS1zbGFzaC1ib2xkIC0tPlxuICAgIDxzdmdcbiAgICAgIGNsYXNzPVwidGV4dC1bOGVtXSBteC1hdXRvXCJcbiAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgd2lkdGg9XCIxZW1cIlxuICAgICAgaGVpZ2h0PVwiMWVtXCJcbiAgICAgIHZpZXdCb3g9XCIwIDAgMjU2IDI1NlwiXG4gICAgICB7Li4uJCRwcm9wc31cbiAgICA+XG4gICAgICA8cGF0aFxuICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgZD1cIk0yMDggNTZoLTI3LjcybC0xMy42My0yMC40NEE4IDggMCAwIDAgMTYwIDMySDk2YTggOCAwIDAgMC02LjY1IDMuNTZMNzUuNzEgNTZINDhhMjQgMjQgMCAwIDAtMjQgMjR2MTEyYTI0IDI0IDAgMCAwIDI0IDI0aDE2MGEyNCAyNCAwIDAgMCAyNC0yNFY4MGEyNCAyNCAwIDAgMC0yNC0yNG0tNTEuMTkgMTEwLjRBNDguMjEgNDguMjEgMCAwIDEgOTYgMTYzLjc3VjE2OGE4IDggMCAwIDEtMTYgMHYtMjRhOCA4IDAgMCAxIDgtOGgyNGE4IDggMCAwIDEgMCAxNmgtNS4xNWEzMi4xMiAzMi4xMiAwIDAgMCA0MC4zNCAxLjYxYTggOCAwIDAgMSA5LjYyIDEyLjc5TTE3NiAxMjBhOCA4IDAgMCAxLTggOGgtMjRhOCA4IDAgMCAxIDAtMTZoNS4xNWEzMi4xMiAzMi4xMiAwIDAgMC00MC4zNC0xLjYxYTggOCAwIDAgMS05LjYyLTEyLjc5YTQ4LjIxIDQ4LjIxIDAgMCAxIDYwLjgxIDIuNjNWOTZhOCA4IDAgMCAxIDE2IDBaXCJcbiAgICAgIC8+XG4gICAgPC9zdmc+XG4gICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXhsIGZvbnQtYm9sZCB0ZXh0LWNlbnRlclwiPk8gZGlzcG9zaXRpdm8gcHJlY2lzYSBlc3RhciBuYSBwb3Npw6fDo28gcmV0cmF0by48L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJtLWF1dG8gdGV4dC1iYXNlIGJsb2NrIHRleHQtY2VudGVyXCI+UG9yIGZhdm9yLCB2aXJlIG8gZGlzcG9zaXRpdm8gb3UgcHJlc3Npb25lIG8gYm90w6NvIGFiYWl4by48L3NwYW4+XG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3M9XCJ6LTIwIGNlLWR1aS1idG4gY2UtZHVpLWJ0bi1vdXRsaW5lIGNlLWR1aS1idG4tcHJpbWFyeSBtLWF1dG9cIlxuICAgICAgb246Y2xpY2s9eygpID0+IHtcbiAgICAgICAgJHNjcmVlbkxvY2tlZCA9IHRydWU7XG4gICAgICAgIGxvY2tTY3JlZW4odHJ1ZSk7XG4gICAgICB9fT5BanVzdGFyIE9yaWVudGHDp8OjbzwvYnV0dG9uXG4gICAgPlxuICB7OmVsc2UgaWYgJGNhbWVyYVN0YXR1c1N0b3JlID09PSBDYW1lcmFTdGF0dXNFbnVtLkNBTUVSQV9PUklFTlRBVElPTl9MQU5EU0NBUEUgJiYgJGNvbGxlY3RvclNlbGVjdCA9PSAnRE9DVU1FTlQnfVxuICAgIDwhLS0gaWNvbmlmeSBwaDp2aWRlby1jYW1lcmEtc2xhc2gtYm9sZCAtLT5cbiAgICA8c3ZnXG4gICAgICBjbGFzcz1cInRleHQtWzhlbV0gbXgtYXV0b1wiXG4gICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgIHdpZHRoPVwiMWVtXCJcbiAgICAgIGhlaWdodD1cIjFlbVwiXG4gICAgICB2aWV3Qm94PVwiMCAwIDI1NiAyNTZcIlxuICAgICAgey4uLiQkcHJvcHN9XG4gICAgPlxuICAgICAgPHBhdGhcbiAgICAgICAgZmlsbD1cImN1cnJlbnRDb2xvclwiXG4gICAgICAgIGQ9XCJNMjA4IDU2aC0yNy43MmwtMTMuNjMtMjAuNDRBOCA4IDAgMCAwIDE2MCAzMkg5NmE4IDggMCAwIDAtNi42NSAzLjU2TDc1LjcxIDU2SDQ4YTI0IDI0IDAgMCAwLTI0IDI0djExMmEyNCAyNCAwIDAgMCAyNCAyNGgxNjBhMjQgMjQgMCAwIDAgMjQtMjRWODBhMjQgMjQgMCAwIDAtMjQtMjRtLTUxLjE5IDExMC40QTQ4LjIxIDQ4LjIxIDAgMCAxIDk2IDE2My43N1YxNjhhOCA4IDAgMCAxLTE2IDB2LTI0YTggOCAwIDAgMSA4LThoMjRhOCA4IDAgMCAxIDAgMTZoLTUuMTVhMzIuMTIgMzIuMTIgMCAwIDAgNDAuMzQgMS42MWE4IDggMCAwIDEgOS42MiAxMi43OU0xNzYgMTIwYTggOCAwIDAgMS04IDhoLTI0YTggOCAwIDAgMSAwLTE2aDUuMTVhMzIuMTIgMzIuMTIgMCAwIDAtNDAuMzQtMS42MWE4IDggMCAwIDEtOS42Mi0xMi43OWE0OC4yMSA0OC4yMSAwIDAgMSA2MC44MSAyLjYzVjk2YTggOCAwIDAgMSAxNiAwWlwiXG4gICAgICAvPlxuICAgIDwvc3ZnPlxuICAgIDxzcGFuIGNsYXNzPVwidGV4dC14bCBmb250LWJvbGQgdGV4dC1jZW50ZXJcIj5PIGRpc3Bvc2l0aXZvIHByZWNpc2EgZXN0YXIgbmEgcG9zacOnw6NvIHBhaXNhZ2VtLjwvc3Bhbj5cbiAgICA8c3BhbiBjbGFzcz1cIm0tYXV0byB0ZXh0LWJhc2UgYmxvY2sgdGV4dC1jZW50ZXJcIj5Qb3IgZmF2b3IsIHZpcmUgbyBkaXNwb3NpdGl2byBvdSBwcmVzc2lvbmUgbyBib3TDo28gYWJhaXhvLjwvc3Bhbj5cbiAgICA8YnV0dG9uXG4gICAgICBjbGFzcz1cInotMjAgY2UtZHVpLWJ0biBjZS1kdWktYnRuLW91dGxpbmUgY2UtZHVpLWJ0bi1wcmltYXJ5IG0tYXV0b1wiXG4gICAgICBvbjpjbGljaz17KCkgPT4ge1xuICAgICAgICAkc2NyZWVuTG9ja2VkID0gdHJ1ZTtcbiAgICAgICAgbG9ja1NjcmVlbihmYWxzZSk7XG4gICAgICB9fT5BanVzdGFyIE9yaWVudGHDp8OjbzwvYnV0dG9uXG4gICAgPlxuICB7L2lmfVxuPC9kaXY+XG4iLCI8IS0tIHN2ZWx0ZS1pZ25vcmUgbWlzc2luZy1kZWNsYXJhdGlvbiAtLT5cbjxzdmVsdGU6b3B0aW9ucyB0YWc9XCJjYW1lcmEtYnRuXCIgLz5cblxuPHNjcmlwdCBsYW5nPVwidHNcIj5cbiAgaW1wb3J0IHsgc3dhcENhbWVyYSB9IGZyb20gJy4vY29uZlN0b3JlJztcbiAgaW1wb3J0IENvbmZNb2RhbCBmcm9tICcuL0NvbmZNb2RhbC5zdmVsdGUnO1xuICBpbXBvcnQgeyBjYW1lcmFEZXZpY2VzU3RvcmUgfSBmcm9tICcuLi9mYWNlVGFiL2ZhY2VTdG9yZSc7XG4gIGV4cG9ydCBsZXQgY2xhc3NOYW1lID0gJyc7XG48L3NjcmlwdD5cblxuPENvbmZNb2RhbCAvPlxuXG48IS0tIHN2ZWx0ZS1pZ25vcmUgYTExeS1jbGljay1ldmVudHMtaGF2ZS1rZXktZXZlbnRzIC0tPlxuPGRpdlxuICBvbjpjbGljaz17KCkgPT4ge1xuICAgICRzd2FwQ2FtZXJhID0gISRzd2FwQ2FtZXJhO1xuICB9fVxuICBjbGFzcz1cImNlLWR1aS1kcm9wZG93biBjZS1kdWktZHJvcGRvd24tdG9wIGFic29sdXRlIHotMTAgcmlnaHQtMCBzbTpibG9jayB7Y2xhc3NOYW1lfVwiXG4+XG4gIDwhLS0gc3ZlbHRlLWlnbm9yZSBhMTF5LWxhYmVsLWhhcy1hc3NvY2lhdGVkLWNvbnRyb2wgLS0+XG4gIDwhLS0gc3ZlbHRlLWlnbm9yZSBhMTF5LW5vLW5vbmludGVyYWN0aXZlLXRhYmluZGV4IC0tPlxuICA8bGFiZWwgdGFiaW5kZXg9XCIwXCIgaGlkZGVuPXskY2FtZXJhRGV2aWNlc1N0b3JlLmxlbmd0aCA9PSAxfSBjbGFzcz1cImNlLWR1aS1idG4gY2UtZHVpLWJ0bi1naG9zdCBtLTFcIlxuICAgID48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjJlbVwiIGhlaWdodD1cIjJlbVwiIHZpZXdCb3g9XCIwIDAgMjU2IDI1NlwiIHsuLi4kJHByb3BzfT5cbiAgICAgIDxwYXRoXG4gICAgICAgIGZpbGw9XCJjdXJyZW50Q29sb3JcIlxuICAgICAgICBkPVwiTTIwOCA1NmgtMjcuNzJsLTEzLjYzLTIwLjQ0QTggOCAwIDAgMCAxNjAgMzJIOTZhOCA4IDAgMCAwLTYuNjUgMy41Nkw3NS43MSA1Nkg0OGEyNCAyNCAwIDAgMC0yNCAyNHYxMTJhMjQgMjQgMCAwIDAgMjQgMjRoMTYwYTI0IDI0IDAgMCAwIDI0LTI0VjgwYTI0IDI0IDAgMCAwLTI0LTI0bS01MS4xOSAxMTAuNEE0OC4yMSA0OC4yMSAwIDAgMSA5NiAxNjMuNzdWMTY4YTggOCAwIDAgMS0xNiAwdi0yNGE4IDggMCAwIDEgOC04aDI0YTggOCAwIDAgMSAwIDE2aC01LjE1YTMyLjEyIDMyLjEyIDAgMCAwIDQwLjM0IDEuNjFhOCA4IDAgMCAxIDkuNjIgMTIuNzlNMTc2IDEyMGE4IDggMCAwIDEtOCA4aC0yNGE4IDggMCAwIDEgMC0xNmg1LjE1YTMyLjEyIDMyLjEyIDAgMCAwLTQwLjM0LTEuNjFhOCA4IDAgMCAxLTkuNjItMTIuNzlhNDguMjEgNDguMjEgMCAwIDEgNjAuODEgMi42M1Y5NmE4IDggMCAwIDEgMTYgMFpcIlxuICAgICAgLz5cbiAgICA8L3N2Zz48L2xhYmVsXG4gID5cbjwvZGl2PlxuIl0sIm5hbWVzIjpbIkNhbWVyYVN0YXR1c0VudW0iLCJjYW1lcmFTdGF0dXNTdG9yZSIsIndyaXRhYmxlIiwiY3R4IiwiaW5zZXJ0X2RldiIsInRhcmdldCIsInN2ZyIsImFuY2hvciIsImFwcGVuZF9kZXYiLCJwYXRoIiwic3BhbjAiLCJzcGFuMSIsImJ1dHRvbiIsImNyZWF0ZV9pZl9ibG9jayIsImNyZWF0ZV9pZl9ibG9ja18xIiwiY3JlYXRlX2lmX2Jsb2NrXzIiLCJjcmVhdGVfaWZfYmxvY2tfMyIsImNyZWF0ZV9pZl9ibG9ja180IiwiY3JlYXRlX2lmX2Jsb2NrXzUiLCJjcmVhdGVfaWZfYmxvY2tfNiIsImRpdiIsImhhbmRsZXIiLCJzZXRfc3RvcmVfdmFsdWUiLCJzY3JlZW5Mb2NrZWQiLCIkc2NyZWVuTG9ja2VkIiwibG9ja1NjcmVlbiIsImxhYmVsIiwiY2xhc3NOYW1lIiwiJCRwcm9wcyIsInN3YXBDYW1lcmEiLCIkc3dhcENhbWVyYSJdLCJtYXBwaW5ncyI6IjtBQUVrQixJQUFBQSxzQkFBQUEsT0FDaEJBLEVBQUEsS0FBSyxNQUNMQSxFQUFBLHlCQUF5QiwwQkFDekJBLEVBQUEsc0JBQXNCLHVCQUN0QkEsRUFBQSxzQkFBc0IsdUJBQ3RCQSxFQUFBLHNCQUFzQix1QkFDdEJBLEVBQUEscUJBQXFCLHNCQUNyQkEsRUFBQSw4QkFBOEIsK0JBQzlCQSxFQUFBLCtCQUErQixnQ0FSZkEsSUFBQUEsS0FBQSxDQUFBLENBQUE7QUFXTCxNQUFBQyxJQUFvQkM7QUFBQSxFQUEyQjtBQUFBO0FBQW1COzs7Ozs7Ozs7SUNpS3JFQyxFQUFPLENBQUE7QUFBQTs7Ozs7Ozs7QUFOYixNQUFBQyxFQVlLQyxHQUFBQyxHQUFBQyxDQUFBLEdBSkhDLEVBR0NGLEdBQUFHLENBQUEsZUFFSEwsRUFBa0dDLEdBQUFLLEdBQUFILENBQUEsZUFDbEdILEVBQWlIQyxHQUFBTSxHQUFBSixDQUFBLGVBQ2pISCxFQU1BQyxHQUFBTyxHQUFBTCxDQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztRQWZNSixFQUFPLENBQUE7QUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQXhCUEEsRUFBTyxDQUFBO0FBQUE7Ozs7Ozs7O0FBTmIsTUFBQUMsRUFZS0MsR0FBQUMsR0FBQUMsQ0FBQSxHQUpIQyxFQUdDRixHQUFBRyxDQUFBLGVBRUhMLEVBQWlHQyxHQUFBSyxHQUFBSCxDQUFBLGVBQ2pHSCxFQUFpSEMsR0FBQU0sR0FBQUosQ0FBQSxlQUNqSEgsRUFNQUMsR0FBQU8sR0FBQUwsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7UUFmTUosRUFBTyxDQUFBO0FBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUF2QlBBLEVBQU8sQ0FBQTtBQUFBOzs7Ozs7OztBQU5iLE1BQUFDLEVBWUtDLEdBQUFDLEdBQUFDLENBQUEsR0FKSEMsRUFHQ0YsR0FBQUcsQ0FBQSxlQUVITCxFQUFnR0MsR0FBQUssR0FBQUgsQ0FBQSxlQUNoR0gsRUFBeUdDLEdBQUFNLEdBQUFKLENBQUEsZUFDekdILEVBS0FDLEdBQUFPLEdBQUFMLENBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1FBZE1KLEVBQU8sQ0FBQTtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBdkJQQSxFQUFPLENBQUE7QUFBQTs7Ozs7Ozs7QUFOYixNQUFBQyxFQVlLQyxHQUFBQyxHQUFBQyxDQUFBLEdBSkhDLEVBR0NGLEdBQUFHLENBQUEsZUFFSEwsRUFBZ0hDLEdBQUFLLEdBQUFILENBQUEsZUFDaEhILEVBQXlHQyxHQUFBTSxHQUFBSixDQUFBLGVBQ3pHSCxFQUtBQyxHQUFBTyxHQUFBTCxDQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztRQWRNSixFQUFPLENBQUE7QUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQTVCUEEsRUFBTyxDQUFBO0FBQUE7Ozs7Ozs7O0FBTmIsTUFBQUMsRUFZS0MsR0FBQUMsR0FBQUMsQ0FBQSxHQUpIQyxFQUdDRixHQUFBRyxDQUFBLGVBRUhMLEVBQXVFQyxHQUFBSyxHQUFBSCxDQUFBLGVBQ3ZFSCxFQUVBQyxHQUFBTSxHQUFBSixDQUFBLGVBQ0FILEVBUUFDLEdBQUFPLEdBQUFMLENBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1FBbkJNSixFQUFPLENBQUE7QUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQTdCUEEsRUFBTyxDQUFBO0FBQUE7Ozs7Ozs7O0FBTmIsTUFBQUMsRUFZS0MsR0FBQUMsR0FBQUMsQ0FBQSxHQUpIQyxFQUdDRixHQUFBRyxDQUFBLGVBRUhMLEVBQTZFQyxHQUFBSyxHQUFBSCxDQUFBLGVBQzdFSCxFQUVBQyxHQUFBTSxHQUFBSixDQUFBLGVBQ0FILEVBU0FDLEdBQUFPLEdBQUFMLENBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O1FBcEJNSixFQUFPLENBQUE7QUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQTNCUEEsRUFBTyxDQUFBO0FBQUE7Ozs7Ozs7O0FBTmIsTUFBQUMsRUFZS0MsR0FBQUMsR0FBQUMsQ0FBQSxHQUpIQyxFQUdDRixHQUFBRyxDQUFBLGVBRUhMLEVBQWtHQyxHQUFBSyxHQUFBSCxDQUFBLGVBQ2xHSCxFQUE0R0MsR0FBQU0sR0FBQUosQ0FBQSxlQUM1R0gsRUFTQUMsR0FBQU8sR0FBQUwsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7UUFsQk1KLEVBQU8sQ0FBQTtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O01BUlZBLEVBQWtCLENBQUEsTUFBS0gsRUFBaUI7QUFBQTtBQUFtQixhQUFBYTs7O01BMkJ0RFYsRUFBa0IsQ0FBQSxNQUFLSCxFQUFpQjtBQUFBO0FBQXNCLGFBQUFjOzs7TUE2QjlEWCxFQUFrQixDQUFBLE1BQUtILEVBQWlCO0FBQUE7QUFBbUIsYUFBQWU7OztNQTRCM0RaLEVBQWtCLENBQUEsTUFBS0gsRUFBaUI7QUFBQTtBQUFtQixhQUFBZ0I7OztNQXVCM0RiLEVBQWtCLENBQUEsTUFBS0gsRUFBaUI7QUFBQTtBQUFrQixhQUFBaUI7QUF1QjFEO0FBQUE7QUFBQSxNQUFBZCxTQUF1QkgsRUFBaUI7QUFBQSxNQUErQkcsUUFBb0I7QUFBQTtBQUFNLGFBQUFlO0FBd0JqRztBQUFBO0FBQUEsTUFBQWYsU0FBdUJILEVBQWlCO0FBQUEsTUFBZ0NHLFFBQW9CO0FBQUE7QUFBVSxhQUFBZ0I7QUFBQTs7Ozs7Ozs7OztBQTdKbEgsTUFBQWYsRUFzTEtDLEdBQUFlLEdBQUFiLENBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztRQTVMUSxTQUFBYyxJQUFPLE1BQUE7QUFBQTs7QUE2QlosSUFBQUEsS0FDQSxRQUFRLElBQUksV0FBV0EsQ0FBTztBQUFBO0FBNEI5QixJQUFBQSxLQUNBLFFBQVEsSUFBSSxXQUFXQSxDQUFPO0FBQUE7QUE0QjlCLElBQUFBLEtBQ0EsUUFBUSxJQUFJLFdBQVdBLENBQU87QUFBQTtBQXlCOUIsSUFBQUE7O0FBdUJBLElBQUFBOztBQXVCQSxJQUFBQyxFQUFBQyxHQUFBQyxJQUFnQixJQUFJQSxDQUFBLEdBQ3BCQyxFQUFXLEVBQUk7QUFBQTtBQXVCZixJQUFBSCxFQUFBQyxHQUFBQyxJQUFnQixJQUFJQSxDQUFBLEdBQ3BCQyxFQUFXLEVBQUs7QUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztJQ3JLd0V0QixFQUFPLENBQUE7QUFBQTs7Ozs7O01BRHpFQSxFQUFtQixDQUFBLEVBQUMsVUFBVTtNQUppQkEsRUFBUyxDQUFBLENBQUE7Ozs7OzsrQkFKdEZDLEVBZ0JLQyxHQUFBZSxHQUFBYixDQUFBLEdBUkhDLEVBT0FZLEdBQUFNLENBQUEsR0FOR2xCLEVBS0trQixHQUFBcEIsQ0FBQSxHQUpKRSxFQUdDRixHQUFBRyxDQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O1FBSnlGTixFQUFPLENBQUE7QUFBQTs7TUFEekVBLEVBQW1CLENBQUEsRUFBQyxVQUFVOztNQUppQkEsRUFBUyxDQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBVnpFLE1BQUEsRUFBQSxXQUFBd0IsSUFBWSxHQUFFLElBQUFDOztBQVF2QixJQUFBTixFQUFBTyxHQUFBQyxLQUFlQSxHQUFXQSxDQUFBO0FBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OyJ9