@enegelai/bot-widget 1.9.1 → 1.9.3

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/dist/index.es.js CHANGED
@@ -1,10 +1,11 @@
1
- var ja = Object.defineProperty;
2
- var Pa = (c, e, a) => e in c ? ja(c, e, { enumerable: !0, configurable: !0, writable: !0, value: a }) : c[e] = a;
3
- var pe = (c, e, a) => Pa(c, typeof e != "symbol" ? e + "" : e, a);
4
- import { css as Y, LitElement as pt, html as g, svg as we } from "lit";
1
+ var Oa = Object.defineProperty;
2
+ var ja = (c, e, a) => e in c ? Oa(c, e, { enumerable: !0, configurable: !0, writable: !0, value: a }) : c[e] = a;
3
+ var pe = (c, e, a) => ja(c, typeof e != "symbol" ? e + "" : e, a);
4
+ import { css as Y, LitElement as ut, html as g, svg as we } from "lit";
5
5
  import { property as v, customElement as Z, queryAll as Qt, query as xe, eventOptions as Tt } from "lit/decorators.js";
6
- import { unsafeHTML as ae } from "lit-html/directives/unsafe-html.js";
7
- import { when as re } from "lit/directives/when.js";
6
+ import { unsafeHTML as Q } from "lit-html/directives/unsafe-html.js";
7
+ import { when as ne } from "lit/directives/when.js";
8
+ import { registerIconLibrary as Ha } from "@shoelace-style/shoelace";
8
9
  import "@shoelace-style/shoelace/dist/components/button/button.js";
9
10
  import "@shoelace-style/shoelace/dist/components/avatar/avatar.js";
10
11
  import "@shoelace-style/shoelace/dist/components/input/input.js";
@@ -22,30 +23,30 @@ import "@shoelace-style/shoelace/dist/components/tooltip/tooltip.js";
22
23
  import "@shoelace-style/shoelace/dist/components/spinner/spinner.js";
23
24
  import "@shoelace-style/shoelace/dist/components/alert/alert.js";
24
25
  import "@shoelace-style/shoelace/dist/components/progress-bar/progress-bar.js";
25
- import "@shoelace-style/shoelace/dist/components/rating/rating.js";
26
26
  import { repeat as Ye } from "lit/directives/repeat.js";
27
27
  import { until as Ft } from "lit-html/directives/until.js";
28
- import Ha from "markdown-it";
29
- import Ba from "markdown-it-link-attributes";
30
- import wt from "highlight.js";
28
+ import Ba from "markdown-it";
29
+ import Ra from "markdown-it-link-attributes";
30
+ import vt from "highlight.js";
31
31
  import "@shoelace-style/shoelace/dist/components/popup/popup.js";
32
+ import "@shoelace-style/shoelace/dist/components/rating/rating.js";
32
33
  function ea(c) {
33
34
  return typeof c == "function" ? c() : c;
34
35
  }
35
- const ut = class ut extends Event {
36
+ const ht = class ht extends Event {
36
37
  /**
37
38
  * @param {string} key of the state that has changed
38
39
  * @param {unknown} value for the changed key
39
40
  */
40
41
  constructor(e, a, s) {
41
- super(ut.eventName, {
42
+ super(ht.eventName, {
42
43
  cancelable: !1
43
44
  }), this.key = e, this.value = a, this.state = s;
44
45
  }
45
46
  };
46
- ut.eventName = "lit-state-changed";
47
- let Oe = ut;
48
- const Ra = (c, e) => e !== c && (e === e || c === c), qt = class qt extends EventTarget {
47
+ ht.eventName = "lit-state-changed";
48
+ let ze = ht;
49
+ const Va = (c, e) => e !== c && (e === e || c === c), qt = class qt extends EventTarget {
49
50
  static initPropertyMap() {
50
51
  this.propertyMap || (this.propertyMap = /* @__PURE__ */ new Map());
51
52
  }
@@ -78,7 +79,7 @@ const Ra = (c, e) => e !== c && (e === e || c === c), qt = class qt extends Even
78
79
  Object.defineProperty(this.prototype, e, i);
79
80
  }
80
81
  static getPropertyDescriptor(e, a, s) {
81
- const i = (s == null ? void 0 : s.hasChanged) || Ra;
82
+ const i = (s == null ? void 0 : s.hasChanged) || Va;
82
83
  return {
83
84
  get() {
84
85
  return this[a];
@@ -113,26 +114,26 @@ const Ra = (c, e) => e !== c && (e === e || c === c), qt = class qt extends Even
113
114
  const i = (d) => {
114
115
  (!a || a.includes(d.key)) && e(d.key, d.value, this);
115
116
  };
116
- return this.addEventListener(Oe.eventName, i, s), () => this.removeEventListener(Oe.eventName, i);
117
+ return this.addEventListener(ze.eventName, i, s), () => this.removeEventListener(ze.eventName, i);
117
118
  }
118
119
  dispatchStateEvent(e, a, s) {
119
- this.dispatchEvent(new Oe(e, a, s));
120
+ this.dispatchEvent(new ze(e, a, s));
120
121
  }
121
122
  };
122
123
  qt.finalized = !1;
123
- let Ct = qt;
124
- class gt {
124
+ let kt = qt;
125
+ class pt {
125
126
  constructor(e, a, s) {
126
127
  this.host = e, this.state = a, this.callback = s || (() => this.host.requestUpdate()), this.host.addController(this);
127
128
  }
128
129
  hostConnected() {
129
- this.state.addEventListener(Oe.eventName, this.callback), this.callback();
130
+ this.state.addEventListener(ze.eventName, this.callback), this.callback();
130
131
  }
131
132
  hostDisconnected() {
132
- this.state.removeEventListener(Oe.eventName, this.callback);
133
+ this.state.removeEventListener(ze.eventName, this.callback);
133
134
  }
134
135
  }
135
- function P(c) {
136
+ function z(c) {
136
137
  return (e, a) => {
137
138
  if (Object.getOwnPropertyDescriptor(e, a))
138
139
  throw new Error("@property must be called before all state decorators");
@@ -146,7 +147,7 @@ function P(c) {
146
147
  }), s.createProperty(a, c), i ? Object.getOwnPropertyDescriptor(e, a) : void 0;
147
148
  };
148
149
  }
149
- function Va(c, e) {
150
+ function Da(c, e) {
150
151
  if (c !== null && (e === Boolean || e === Number || e === Array || e === Object))
151
152
  try {
152
153
  c = JSON.parse(c);
@@ -156,23 +157,23 @@ function Va(c, e) {
156
157
  return c;
157
158
  }
158
159
  new URL(location.href);
159
- const Da = {
160
+ const Fa = {
160
161
  prefix: "_ls"
161
162
  };
162
163
  function le(c) {
163
- return c = { ...Da, ...c }, (e, a) => {
164
+ return c = { ...Fa, ...c }, (e, a) => {
164
165
  const s = Object.getOwnPropertyDescriptor(e, a);
165
166
  if (!s)
166
167
  throw new Error("@local-storage decorator need to be called after @property");
167
168
  const i = `${(c == null ? void 0 : c.prefix) || ""}_${(c == null ? void 0 : c.key) || String(a)}`, d = e.constructor, f = d.propertyMap.get(a), x = f == null ? void 0 : f.type;
168
169
  if (f) {
169
170
  const F = f.initialValue;
170
- f.initialValue = () => Va(localStorage.getItem(i), x) ?? ea(F), d.propertyMap.set(a, { ...f, ...c });
171
+ f.initialValue = () => Da(localStorage.getItem(i), x) ?? ea(F), d.propertyMap.set(a, { ...f, ...c });
171
172
  }
172
- const _ = s == null ? void 0 : s.set, J = {
173
+ const S = s == null ? void 0 : s.set, J = {
173
174
  ...s,
174
175
  set: function(F) {
175
- F !== void 0 && localStorage.setItem(i, x === Object || x === Array ? JSON.stringify(F) : F), _ && _.call(this, F);
176
+ F !== void 0 && localStorage.setItem(i, x === Object || x === Array ? JSON.stringify(F) : F), S && S.call(this, F);
176
177
  }
177
178
  };
178
179
  Object.defineProperty(d.prototype, a, J);
@@ -195,44 +196,44 @@ var ca = { exports: {} };
195
196
  "warn",
196
197
  "error"
197
198
  ], d = {}, f = null;
198
- function x($, V) {
199
- var C = $[V];
199
+ function x(M, V) {
200
+ var C = M[V];
200
201
  if (typeof C.bind == "function")
201
- return C.bind($);
202
+ return C.bind(M);
202
203
  try {
203
- return Function.prototype.bind.call(C, $);
204
+ return Function.prototype.bind.call(C, M);
204
205
  } catch {
205
206
  return function() {
206
- return Function.prototype.apply.apply(C, [$, arguments]);
207
+ return Function.prototype.apply.apply(C, [M, arguments]);
207
208
  };
208
209
  }
209
210
  }
210
- function _() {
211
+ function S() {
211
212
  console.log && (console.log.apply ? console.log.apply(console, arguments) : Function.prototype.apply.apply(console.log, [console, arguments])), console.trace && console.trace();
212
213
  }
213
- function S($) {
214
- return $ === "debug" && ($ = "log"), typeof console === a ? !1 : $ === "trace" && s ? _ : console[$] !== void 0 ? x(console, $) : console.log !== void 0 ? x(console, "log") : e;
214
+ function _(M) {
215
+ return M === "debug" && (M = "log"), typeof console === a ? !1 : M === "trace" && s ? S : console[M] !== void 0 ? x(console, M) : console.log !== void 0 ? x(console, "log") : e;
215
216
  }
216
217
  function J() {
217
- for (var $ = this.getLevel(), V = 0; V < i.length; V++) {
218
+ for (var M = this.getLevel(), V = 0; V < i.length; V++) {
218
219
  var C = i[V];
219
- this[C] = V < $ ? e : this.methodFactory(C, $, this.name);
220
+ this[C] = V < M ? e : this.methodFactory(C, M, this.name);
220
221
  }
221
- if (this.log = this.debug, typeof console === a && $ < this.levels.SILENT)
222
+ if (this.log = this.debug, typeof console === a && M < this.levels.SILENT)
222
223
  return "No console available for logging";
223
224
  }
224
- function F($) {
225
+ function F(M) {
225
226
  return function() {
226
- typeof console !== a && (J.call(this), this[$].apply(this, arguments));
227
+ typeof console !== a && (J.call(this), this[M].apply(this, arguments));
227
228
  };
228
229
  }
229
- function T($, V, C) {
230
- return S($) || F.apply(this, arguments);
230
+ function T(M, V, C) {
231
+ return _(M) || F.apply(this, arguments);
231
232
  }
232
- function N($, V) {
233
+ function N(M, V) {
233
234
  var C = this, Ee, Ae, ce, ie = "loglevel";
234
- typeof $ == "string" ? ie += ":" + $ : typeof $ == "symbol" && (ie = void 0);
235
- function yt(q) {
235
+ typeof M == "string" ? ie += ":" + M : typeof M == "symbol" && (ie = void 0);
236
+ function mt(q) {
236
237
  var B = (i[q] || "silent").toUpperCase();
237
238
  if (!(typeof window === a || !ie)) {
238
239
  try {
@@ -246,7 +247,7 @@ var ca = { exports: {} };
246
247
  }
247
248
  }
248
249
  }
249
- function je() {
250
+ function Oe() {
250
251
  var q;
251
252
  if (!(typeof window === a || !ie)) {
252
253
  try {
@@ -282,7 +283,7 @@ var ca = { exports: {} };
282
283
  return B;
283
284
  throw new TypeError("log.setLevel() called with invalid level: " + q);
284
285
  }
285
- C.name = $, C.levels = {
286
+ C.name = M, C.levels = {
286
287
  TRACE: 0,
287
288
  DEBUG: 1,
288
289
  INFO: 2,
@@ -292,9 +293,9 @@ var ca = { exports: {} };
292
293
  }, C.methodFactory = V || T, C.getLevel = function() {
293
294
  return ce ?? Ae ?? Ee;
294
295
  }, C.setLevel = function(q, B) {
295
- return ce = ye(q), B !== !1 && yt(ce), J.call(C);
296
+ return ce = ye(q), B !== !1 && mt(ce), J.call(C);
296
297
  }, C.setDefaultLevel = function(q) {
297
- Ae = ye(q), je() || C.setLevel(q, !1);
298
+ Ae = ye(q), Oe() || C.setLevel(q, !1);
298
299
  }, C.resetLevel = function() {
299
300
  ce = null, Qe(), J.call(C);
300
301
  }, C.enableAll = function(q) {
@@ -308,7 +309,7 @@ var ca = { exports: {} };
308
309
  }, Ee = ye(
309
310
  f ? f.getLevel() : "WARN"
310
311
  );
311
- var L = je();
312
+ var L = Oe();
312
313
  L != null && (ce = ye(L)), J.call(C);
313
314
  }
314
315
  f = new N(), f.getLogger = function(V) {
@@ -328,8 +329,8 @@ var ca = { exports: {} };
328
329
  }, f.default = f, f;
329
330
  });
330
331
  })(ca);
331
- var Fa = ca.exports;
332
- const Ke = /* @__PURE__ */ aa(Fa), Na = Y`
332
+ var Na = ca.exports;
333
+ const Ke = /* @__PURE__ */ aa(Na), Ua = Y`
333
334
  :host {
334
335
  font-size: 16px;
335
336
  }
@@ -492,17 +493,17 @@ const Ke = /* @__PURE__ */ aa(Fa), Na = Y`
492
493
  color: white;
493
494
  }
494
495
  `;
495
- var Ua = Object.defineProperty, Wa = Object.getOwnPropertyDescriptor, Et = (c, e, a, s) => {
496
- for (var i = s > 1 ? void 0 : s ? Wa(e, a) : e, d = c.length - 1, f; d >= 0; d--)
496
+ var Wa = Object.defineProperty, Ya = Object.getOwnPropertyDescriptor, Et = (c, e, a, s) => {
497
+ for (var i = s > 1 ? void 0 : s ? Ya(e, a) : e, d = c.length - 1, f; d >= 0; d--)
497
498
  (f = c[d]) && (i = (s ? f(e, a, i) : f(i)) || i);
498
- return s && i && Ua(e, a, i), i;
499
+ return s && i && Wa(e, a, i), i;
499
500
  };
500
- let Ge = class extends pt {
501
+ let Ge = class extends ut {
501
502
  constructor() {
502
503
  super(...arguments), this.color = "primary", this.svg = "";
503
504
  }
504
505
  render() {
505
- return g`<span class="cb-icon" part="base">${ae(this.svg)}</span>`;
506
+ return g`<span class="cb-icon" part="base">${Q(this.svg)}</span>`;
506
507
  }
507
508
  };
508
509
  Ge.styles = ia;
@@ -515,22 +516,22 @@ Et([
515
516
  Ge = Et([
516
517
  Z("cb-icon")
517
518
  ], Ge);
518
- let Ya = (c) => crypto.getRandomValues(new Uint8Array(c)), Xa = (c, e, a) => {
519
+ let Xa = (c) => crypto.getRandomValues(new Uint8Array(c)), Ga = (c, e, a) => {
519
520
  let s = (2 << Math.log(c.length - 1) / Math.LN2) - 1, i = -~(1.6 * s * e / c.length);
520
521
  return (d = e) => {
521
522
  let f = "";
522
523
  for (; ; ) {
523
- let x = a(i), _ = i;
524
- for (; _--; )
525
- if (f += c[x[_] & s] || "", f.length === d) return f;
524
+ let x = a(i), S = i;
525
+ for (; S--; )
526
+ if (f += c[x[S] & s] || "", f.length === d) return f;
526
527
  }
527
528
  };
528
- }, Ga = (c, e = 21) => Xa(c, e, Ya);
529
- const Za = Ga("1234567890abcdefghijklmnopqrstuvwxyz", 10);
529
+ }, Za = (c, e = 21) => Ga(c, e, Xa);
530
+ const Ja = Za("1234567890abcdefghijklmnopqrstuvwxyz", 10);
530
531
  function Ve(c = 10) {
531
- return Za(c);
532
+ return Ja(c);
532
533
  }
533
- function Ja(c) {
534
+ function Ka(c) {
534
535
  return new Promise((e, a) => {
535
536
  try {
536
537
  navigator.clipboard.writeText(c).then(() => {
@@ -541,7 +542,7 @@ function Ja(c) {
541
542
  }
542
543
  });
543
544
  }
544
- function Ka(c = !0) {
545
+ function Qa(c = !0) {
545
546
  return new Promise((e) => {
546
547
  const a = document.createElement("input");
547
548
  a.type = "file", c && (a.multiple = !0), a.style.display = "none", a.addEventListener("change", () => {
@@ -553,7 +554,7 @@ function Ka(c = !0) {
553
554
  const G = Ke.noConflict();
554
555
  G.setLevel("info");
555
556
  const Nt = 3e4;
556
- class Qa {
557
+ class ec {
557
558
  constructor(e = {}) {
558
559
  this.id = 0, this.url = (e == null ? void 0 : e.url) || null, this.orgId = (e == null ? void 0 : e.orgId) || null, this.botId = (e == null ? void 0 : e.botId) || null, this.convId = (e == null ? void 0 : e.convId) || null, this._options = e || {}, this._ws = null, this.started = !1, this.connected = !1, this.connecting = !1, this.suspendDetected = !1, this.onMessage = (e == null ? void 0 : e.onMessage) || null, this.onConnecting = (e == null ? void 0 : e.onConnecting) || null, this.queue = [], this.pause = (a) => new Promise((s) => setTimeout(s, a)), this.lastTickTs = 0, this.lastAckTs = 0, this.tickInterval = null, G.info(`WSC: Created, url: ${this.url}`);
559
560
  }
@@ -705,7 +706,7 @@ class Qa {
705
706
  function D(c) {
706
707
  return c != null && typeof c == "object" && c["@@functional/placeholder"] === !0;
707
708
  }
708
- function ze(c) {
709
+ function Pe(c) {
709
710
  return function e(a) {
710
711
  return arguments.length === 0 || D(a) ? e : c.apply(this, arguments);
711
712
  };
@@ -716,19 +717,19 @@ function qe(c) {
716
717
  case 0:
717
718
  return e;
718
719
  case 1:
719
- return D(a) ? e : ze(function(i) {
720
+ return D(a) ? e : Pe(function(i) {
720
721
  return c(a, i);
721
722
  });
722
723
  default:
723
- return D(a) && D(s) ? e : D(a) ? ze(function(i) {
724
+ return D(a) && D(s) ? e : D(a) ? Pe(function(i) {
724
725
  return c(i, s);
725
- }) : D(s) ? ze(function(i) {
726
+ }) : D(s) ? Pe(function(i) {
726
727
  return c(a, i);
727
728
  }) : c(a, s);
728
729
  }
729
730
  };
730
731
  }
731
- function ec(c) {
732
+ function tc(c) {
732
733
  return function e(a, s, i) {
733
734
  switch (arguments.length) {
734
735
  case 0:
@@ -742,7 +743,7 @@ function ec(c) {
742
743
  return c(d, s, f);
743
744
  }) : D(s) ? qe(function(d, f) {
744
745
  return c(a, d, f);
745
- }) : ze(function(d) {
746
+ }) : Pe(function(d) {
746
747
  return c(a, s, d);
747
748
  });
748
749
  default:
@@ -752,51 +753,51 @@ function ec(c) {
752
753
  return c(d, s, f);
753
754
  }) : D(s) && D(i) ? qe(function(d, f) {
754
755
  return c(a, d, f);
755
- }) : D(a) ? ze(function(d) {
756
+ }) : D(a) ? Pe(function(d) {
756
757
  return c(d, s, i);
757
- }) : D(s) ? ze(function(d) {
758
+ }) : D(s) ? Pe(function(d) {
758
759
  return c(a, d, i);
759
- }) : D(i) ? ze(function(d) {
760
+ }) : D(i) ? Pe(function(d) {
760
761
  return c(a, s, d);
761
762
  }) : c(a, s, i);
762
763
  }
763
764
  };
764
765
  }
765
- const tc = Number.isInteger || function(e) {
766
+ const ac = Number.isInteger || function(e) {
766
767
  return e << 0 === e;
767
768
  };
768
- function ac(c) {
769
+ function cc(c) {
769
770
  return Object.prototype.toString.call(c) === "[object String]";
770
771
  }
771
- function cc(c, e) {
772
+ function ic(c, e) {
772
773
  var a = c < 0 ? e.length + c : c;
773
- return ac(e) ? e.charAt(a) : e[a];
774
+ return cc(e) ? e.charAt(a) : e[a];
774
775
  }
775
- var ic = /* @__PURE__ */ qe(function(e, a) {
776
+ var nc = /* @__PURE__ */ qe(function(e, a) {
776
777
  return a == null || a !== a ? e : a;
777
778
  });
778
- function nc(c, e) {
779
+ function sc(c, e) {
779
780
  for (var a = e, s = 0; s < c.length; s += 1) {
780
781
  if (a == null)
781
782
  return;
782
783
  var i = c[s];
783
- tc(i) ? a = cc(i, a) : a = a[i];
784
+ ac(i) ? a = ic(i, a) : a = a[i];
784
785
  }
785
786
  return a;
786
787
  }
787
- var xt = /* @__PURE__ */ ec(function(e, a, s) {
788
- return ic(e, nc(a, s));
788
+ var wt = /* @__PURE__ */ tc(function(e, a, s) {
789
+ return nc(e, sc(a, s));
789
790
  });
790
- const sc = "fffbd0c40003a861a6f64deb05ce8fbd1dc1ee6979000bf3230f3195138b950cbe3649439256307747d31c26065d09cfae70d799f0a043c6a90008c0101188082314680d008619c9079b61dc806a921a220095277a60d4131e44143d53814e10f4d06ba6491eb478900a8d59016632a23e0fa358875c770146cc650c1c499dcb9b0965d7500106c321427219428febbdafb2b5d76979a75ae40018d025f96f71bad4b0257666051808e5b74c34bf2db9660bb0e24b2a35886616f617013a24104242304600910b1130dc7b4e81750bb1216e880432ac0d75b0a2a1834f45e8e9a279a9c6c22cc9a7e3ac01cc5335e8c0d97180c960bad7998ce9ac025a2f1a0c888e02c46508045a96a20a60c91980100828a917425f96ddc64bc2ea19146c50b00bde68319005d85d10e462314ae197f0b48c74bfe986ced9dac3a9bbfad7e8f7ac2a525253c6e36cad4dd7c20e2ec4842dba61cbf30f0f7d628635005a66e63ec63560f22a48c694034a695617e603c12c05077310c0923018053379a48d1e921e409b28546c46619d8fa6c9b019ea20762d318e34c6291699d98662a61861204fda2a7933d57c1d023391f8605262a1598449c1ca332e084cb25a3198ac94666361b99f05c67c1aba0151b18d456ec8e0b4c667924153ba632409114cc587c7867ca8c047dcd7a834bc8d2a033a141df48ab82a803bd1a8651a215e356c6161b062114cb841dd89589b05f0d10ad255c4d70d8ad245e4abcd6b33fca8d6af5cc3db8d9244511ab2206a56c885690ad12cc1ba16308528d539daa40b22baf35eb61a7044a988132e926b754d82ea8ca85199ad5c42c0d62d35eb8d7301d56ef5b26c451748198c2a22c319b24ab67a246b186c8af0d54354c0957c342d9a2a4d7b3245e585c4d7254e107501450bb46abbfa38b2331996d9bae08953352c48af43d5c7b08b6572a44e0b11775fd8cbb2b0b0343230c6c5add2ca5ac8d549765977ff78e59659ca49adde749c6789409753bcff43d1a8d46a532da5a5a5a5a5a5a5a6a6a6a6a6a6a6a6a6ab671c71c71c6ae4141414140a0a0a0a0c2b06e0b039c1829859998b165991a5d2aa598e0a714183727471921e5721a1037a9c2fb7a1b9c0dc99c6ab19b821219de39219b82a521908908987d2ab1aab194159219cb31211fffbd2c42383f4bda0d20ffba7c624b3dd01eee938b82f149f14b82951c14d290908c90d294c90a598b0948572ce584a434a54a52b4a42c3829592199219219a52921160908d295294b1c79b70dc9b72dc9b70dc15b71e6dc37058e3cdb8e34db9e3cadb82c37056dc95f1e7c6f1e58e3cadb8f2c4845721f96242f2c485e7214865721f962422c484721c845890cb121f9c872116242f2b908e4390bfcae432b908ae43f390e432c486721c85e5890cae432b90ce42908b121f9c8721962432c484721c865890ce4290bcae432b90bcae43390a432c485e58908e4290bcb121f95c86721c865890cae432b90cae42ff390e422b90cae422b90fcb121795c865721795c86721487e721c87e58908ae422b90bcb12195c845721796242f2c48658908ae43ff390e43fff390e422c4865890cb121ff9c872196243f2b90bcae42fff2c48458908b12116243f2b90ffcae43fff2c485e5890bfffcae422c485fe5721796243f2b90bfcae42ffff2b90ffcae432c48460a40a6618626a61ce3d466883d6645657458106350e2d6321a39532150c231a421532413d3399952b690e8430cc534d4ad0638ad993418742c24072f7385897cae5e348120397e5e348521397e5e2b734cd8364b06c160d93364d82c0ea6838ea63a0e863a8e9e581d4ca0283cd5d284b050795942650143e6e1c1b87058706e5c95b9370e4dcb92c382b706e1c15d22c522ba7e574cae9f9d2a458a474a995d32c52ff2ba4574cb148b14bfcb14cb148ae99629795d22c532c533a74cae995d2f3a74ce9533a74cb148e9d2f3a74ce9d22ba474e99d2a458a674a99d3a65748ae9f9d2a474a91629962995d23a748e9522c53f3a74bce9d3f2ba65748afa9f5ea57d4b1d3cafa963a163a7963a163a1f5ebfe57d3fcfa742bea7d7a15f42bea7d7a1f5e9e7d3af963a9f4ea57d4fa752c74f2c75f2c743ebd3fcafaf963a7ff963a79f4e9fe57d7ce9d22c532ba474a91d3a674a97962996297f9d2a658a458a658a458a4574cae916299d2a474a995d22c522c533a54bcae915d32c522c52f3a548ae99629795d3f30c6831b320f483c329501f8331a98f233a001f9342646273295483d326307f03331098c307e52ae3189883d3186475630e704da30e744db320f0627329501f831040411307e4fffbd2c42383f3fdacd40ff6b68668b3dc81eeed7841031044a54318984112a8c4e641e83f26208082260fc0822560fc183f041e183f00fc183f20fc983f20fc983f20fc95896e60bf863460bf86365805f8c17e0c68ac31b2b5f8f1bc68d7fc68d7f5fcaf1b35f97e35f97e2c2fc585fcb0bf9e36bf9617e2b5f8d7f5f8ad7f2c2fc6bfafe56bf9e34bf79617f3c6f1bf2b5fcb0bf9afcbf95afc585f8d7e5fcb0bf611fc419f8f08fe7833f1e0cfcf847f308fe7833f1f067e3c19f9067e308fe7c23f8c23f9067e40ff3f8067e20cfc047f00cfc611fc81fe3f207f9fc033f211fcc0ff1f903fc7e423f803fcfe423f903fcfe00ff3f8833f011fc847f211fc047f303fc7e211fc01fe3f211fc033f011fc7067e40ff3f908fe023f808fe00ff1f903fcfe019f803fc7e419f808fe019f9067e40ff1f9067e211fc01fe3f3c19f8e0cfcc23f9067e40ff3f8067e023f808fe60cfcc19f8c19f9847f211fc047f011fc033f1067e60cfcf833f25808830881d435e33e33263062346d46d31d427b31d41d4346d3c633201d5308827a308846d351212e32267a39ea7a34b92f3221d537552f32252e2b4b8dd5c80c88c84e7a4bcb0ea9ba9e315a5e697baa644cf473da5e58220c894bcb0449a5e449612ff2c110584bcb0447991044191244160892b4bfcc88224ac882b2a4d0a114ca8114c44114ac442c089e562279588856c458633e362f3e362362623e3e3f2be23e3e32b633e263f2b88fffff2c44f95c47f96227ce2224e2620b11071310713105889389882c44f95c41c44496220ae23cae20e2627cb1127111257105889f2c449c4c416220ae24e2224e2620ae24b1105713e588838988389892c44f9c44416224e2220ae20e2223cae27cae23ce2220e2620b1105711e5712571271111e57127131257127111271313fe713125712588938988388892c4479c4c41c44416224ae24e2220ae20e2620b11058882c44ffff95c4795c4ff95c415c416220ae20ae20b11271310571271313e58882c44f95c49c4c4ff95c416224e2627fce2224e2220e2220ae20b111e57107111071111fe5888ff389882c03a18838cc99ca16b996b8501ad09db99db86c161e34cb0c730c6641d4c664f7cc570e54c570570cb08734d2b4b08ac360cb5c284c86c574c57428fffbd2c41e03f239a2e40f7370c65fb39cc1eeed980c364364c360730c364edcc360364db2d936c734f9bcd3e6b60db0d82c734db3cd36cb60adb27068399d732588319d20e7068399d20de5850f9d75405850796140575c3535335252353c32c611e1291a9e11614cd4d4cf0d4cf0948e8684e8684b14074140574058a12c509d0d09d0d09d0509d0501d050796363fcaf64af67ffcb1b257b1fe58d8f2b74375742b742c3a9baba15ba161d0dd1d4add0b0e9e6eaea56ea56ea5874374752c5096280e8680b14057405743e57407414058a12ba12ba02c50f96280b141e58a12ba12c5096280add0dd1d0dd1d0dd5d3cb0ea6eaea6e8ea58752b7537574374742b74374752b752c3a95ba15ba9baba1ba3a161d0dd1d4b0ea58742c3a7ffff96367ffffffffffffffffffffffcb0e856ebe5874f2c3a961d4dd1d7fcadd4b0e9e6e8ea58752b752c3af961d4add3cb0e86e8ebfe6e8ea587537474f2c3a161d7cdd5d4dd1d0dd5d4add3cc388588c9e8220c4b91b4c989388c58898cc5b4740c2a48c8c58c38ccb8898cc9ec220cc84c80c4b84bcc224754d4491b4c62988c63588ce2b88d2e224d2e224b0449f8f3d1a5c9719104499124415a5e6971106973aa58750d2e220d2e220d898cf8d8cd8d8cd898cd8d88ad8cd898cd8988b1c7e586336363f2c711b1311b1319618cd8d8cb0c6586236262363632c319618ccb8b8cbcbcb05c565c582e32e2e32f2f32f2e32f2f32f2f32f2f2c1796220ae24ae20b113e71313fe71111e5888388892b882c449b1b115b11b1311b13116188d898fcb0c66c6c45862363632b632b63ff2c319b1b1796224ae24b111e711125711e5713e5713e58882b882c441c4c4f9c4c4ff9c4c4f9c44495c49c4c416224ae24e2224e2627fcae20b1105711e5711fe7111071111fe57125713e57106c6c46c6c45863f2c3195b115b19b131796188ad8bcd8988b0c45862363632c319b1b19b131f9618bcad8fcd898cad8bcb112571257125888f2c44ff95c495c4ff95c47f96220e2624b11258882c441c444ffff96224b112571257105711e588838989f2c44d3045045310b0a932632e232630623562062316226236620e32c1b198850229885919194a88598220e81fc431160623589e23588622b18cde2988de3788c63588fefffbd2c42083f3559ee80f774bc682b4dcc1eee9782388c6278cb0b1161623388e32b588ac62398d633188632c0c46318c66319c46710c66310c66b1ac66318c46310c46310c46710c6563118c431f98c63199c63118c631960e3f318862f2c0c7e6310c45818cb031960622bc678f1163196319e3c658c478b1163179e2c658c65788f1623c58cb188f1622bc678b115e33c788f1623c58caf195e32bc5e71221c5885710e24438914ae29c58a71621c48a588a5714b110e2c438910e245f38b13ce2442b8a71621c58a5889e5714ae295c42c442b8a5713cae29c48858885714b110e24538910af115e22bc658c478b17f95e33c588af1ff9e2c678b19e2c678f1163179e2c478b1ff95e3f2c62f3c78fcb18bcaf196317f95e22bc7e5788f163f2c632bc5fe58c678f195e22c62f3c78bfcaf1163196317f95e32c622c633c58caf11e3c4578caf1f95e32c633c78bfcf1622c632c633c588b188af19e3c5e58c658c678f11e3c678f17ff96319829829986109a99a6b1319ef03a19ef0cc99150cc195d8cc99a683a18730f598ca89e99a615d995d2819fbecc9d755d95c54698a626980d26559dc71520c68357471520c6cc33075d8ea63a0ea68345468320e63a0e875d20c683a0c63aa0fe5841cd98664b0831a0e8318ea3a95a0e563a160752c20e63a8e86838e858418b03a160753148523309353148c22b14cb02918a42918a629160522b14cc5314cfaf52bea7d7a163a963a1f4ebe7d7a95f53ebd4faf43ebd0afa795f53ebd4afa963a1f5e87d3a963a15f43e9d0afa79f4e858e858e858ea57d0afa963a9f4ea7d7a9f4ea7d3a9f4e857d0afaff9f4e9fe7d3af95f52be858e857d4faf53ebd0faf53ebd4afa1f5e857d4b1d0afa9f5ea7d3a7963a15f43e9d0faf52be87d3a163a163af95f52be858ea57d4faf5f2bea58ebe58e87d7a15f42c742bea58ebe57d7ffcfaf52be9e7d7af95f5ffff2c75ff2be857d7ffcb1d0faf52c742c742c753e9d4afa95f52bea57d3cb1d4afa95f52c742bea57d0afaff963a95f43e9d0afa7f95f53ebd7fcfa753ebd3cafa15f42c743ebd4afaf95f5f2c752be857d7fcb1d5508000160382b0e0d954f0d94654deb7acc397acce7d10dea4f0d4b2c4cb02c4d311a0ad3134c0aa34c4ef33b8ab3059193460b03fffbd2c41a01f0c5a2f0aeeb34c619359dc1dde6682c04b32403834f43832403932443930e03932403932413c3240392c070648072561c9870489a7a48161c1b972587258726e5c9b87265e51ca2c65cb9cb2e65fe1cb94565ce59634a94ad21a44a584869529a4485694ad216129a54865cb1972e72e51962c65cb1972c565cb05ccbcb32e5ccb162b2c56b79acb1acb1aeb9acb1aeb9acb1aeb15ac6bae56b15ac56b15ca72485894e590e490b1295ca5894ae52b90ae539252c49e724a5897ce494b121cb2f9cb21cb29cb21c9215ca5890e497ce597cae42c4a57215c85894ae42b97cf9e4f9e3cb1c15f1e57c796393e38ff2be0f9e7caf92be0f8e4af92be0b1cff96392be0f9e0b1c15f058e0b1c796382c71e7cf3e7c7257c95f258e4b1c95f1e58e0af92be4b1c1639f2be7ce493cb127f9c9215c9e5721c9215cbfe72ca5893fcb1279c921cb29cb2f9cb29cb21cb29cb295c85890ae42b90ae42b93cb12795c857298701c1609034f2413901eb3094683091733344d033e0d132acaa34c4ee30957434c1313244382b398d3c4f0ace730e13d34f53d37ac3937ac3830e4382c07261c870648a786ca27a580e4ce244e44e4ace4ce0e4ce240ce240b072723226727058382b90339392b382b382c1c99c1c9c89c960e0ce4e0ce4e0b07067273e6727258392b38ff2c1c19c1c960e4b070670705838f2c1c19c1c99c9c19c1c159c159c960e4ace3ce44e0ce4e3fcce0e0b07058382b38339382b3933839396439252c4872ca72ca72ca57295c872485890ae53964f3965f39242c4be58e4af92be0b1cf96383e783e383e382c727c707cf07c727c73e58e0b1cf9f1c15f058e4f9e0b1c16382c727c7257c95f07cf27c707c727cf257c9f3c95f258e3caf83e792c73e58e0b1cf96392be0af92c7057c9f1cff95f058e0b1c16382be4f8e3ffcaf82be4b1c795f057c16383e392be0af82be4af82c71e57c796393e392be4f9e7fcaf9f2be4b1c795f3fe7c7258e7caf93e392be0b1c79f3cf95f257cf95f1fe57c79639ffff2c70a0800079603ecd71612cb09de71381f66aac420687e4226650cdc6176680617668061769dc58268332932930fb211343e211355621032115563328328343f0fa30fb0fb33280fb321021032112102b43e32112112b329fffbd2c42b01f3f1acdeaf777286a1355cc1eeecf82c1f467d1f5e7084207081f456c895977e65db2265d32265db207081f4583e8cfb3efccfa3e8b07d960fa33ecfb3fbfa2bfb2bfa3fbfa3fafa3fafb3fafb3fafb2bfa3fbfb3fafb3fafa2c7d963efcafe8fefe8b1f5e58fb3fafbf2c5d1dddd9dd5d1dddd162ecaeecb1747777477574577458ba3bbbb3bbbb2c5dff963ebfcb1f657f5e57f457f5e57f5e58fbfff3fafbf2bfa2bfa3fafaf3fafbff2bfbffff2c7d963ecfefe8fefeffffcb177e577658bb2c5d7962e8eeeebfcb17458bb2c5d1dd5d962ecaeecaeecb176577458ba2bbb2c5dff95dd15dd95dd1dddd7f95dd162e8aee8b17658ba3babb3baba3babb3baba3baba2bbb2bba2bba2c5d9dd5d15dd1dddd162e8eeee8b177e7f5f7fe58fa2bfa2bfbff3fafaf2bfbfff2bfa2c7d9fd7d7963ecb1f47f5f658fb2c7d163ecafebfcfefe8afebfffcfefecb1f5e57f457f7e58faff3fbfaf30e326333624e333632e231d546d312e1d530a8233323210b36ac7a31ec7a2c4f46eaba86318c46f18c67719c47315c6631ac46f19c658754c89224dd4c84f204bcc894bcd2f4bcd2f224e7a4b8ad2f34b8893220882c11056441a5e44191297160882c112644113e711125712588938989389893898838889f38889f388882b8838989f2b882c447f9618cb0c46c4c658633626336262363622b632b633636236263362622c319b1b19b1b19b1b195b179b131f9b1311b1311b17196188ad8cd8f88b1c656c65862363622c3195b115b196188d8d88ad8fcd898cad8cb0c45862363622c3195c415c495c416227ffcb11258892b8838989389892c441c4c416224ae20ae23ffce2620d8d8cad88b0c656c456c658632c31f95b19618cad88b0c5e6c4c66c4c7e5863362632c319b1b1f95b11b1319618cd8d88b11058882b892c4416224e2220b113e5889ffff2c4479c44415c415c4ff96224e2620b11257125710713125712571057105713e58892b88f38988388892c441c4c4796224b111e58882b882c44f95c416227ce2624b1105711fe58882b882c44795c4ff96223cae20ae23ffcae26f331e433b76dc30b95e3a3df73449133dd72835791335782f30bd1236a87a37d8c730b8c630bc7a331c2e357df730b82f31ec7a30bc2f30b87b344daa3fffbd2c41e83f005a0ee0eeb3706ce341c42bdd0003187a31e8c730b82e2b44ccc60b8cc61e8c7a31cdaa1e8b03d960c731ecc731ec7a30bc2f2b1e8c2e1e8b03d1ae5c6bbd16171ae5e6bbd15ae35cb8d72e2b5e7e97161795ae35ebcd7af2b5c6b979af5c6b97161795ae2c2f35cbffcd7ae2b5c56b8b0bcad715af2c2f35eb8d7af35ebcd72f35cbcd7ae35ebcb0b8b0bcb0b8ad79ae5e585e56bcb0b8ad79ae5e56bfcad796179ae5c585e6bbdff9af5c6b971af5c6bd7962e2bb8eebceeb8aeff2bbcaef2bbcb1795de58b8eebceeb8efbcaeffff2bbceeb8efbcaeef2bbbcaee3bef3beeffff2bb8b171df7962f2c5c58bfcaeff3bee3baeff3baf2bbceebcb171df795dc775c58bbcb17962ef2c5c77de58b8aef3bae3bae2bbcaee3bae3baf3baf3baf3bee2c5e77dde58bcaefffff2bbffcaef2bbfcaeef2c5e577ff9df7962f2bbfcaeef2c5de577162ef2bbcb17fff95de577960360c731e34da20e50cb58e4cd688b08d2b0734e5d9e30c730360b03306576576658639a61ae76c639a76c6b40958561b2695a76c561b0639a5847db58458360adcd2c58666c9b07615846e6d8658364dcc730dcc730cd8730acd83364d8f3361cc2c1b256e6959b258360acd92c1b1fe66c9b06e69b066c1b258364c741d4c751d0ad0631d47431d074f2c0ea63a8ea63a8e8563a160d83360d92b360acd82c1b2566cf99b06c99b26cf99b06c99b06c98e83a1607431d10631d4742b1d7cc751d0c751d0c741d3cac752b1d0ac752b1d0ac752c20e63a0ebe63a0e8563a18ea3a98e83a158e8563a958e863a8ea581d4b03a958e863a8ea63a8ea65094058284aca0f2b284ca1287fcca1287caca1ff3280a13284a1f2b280ca0280ca0280b0501594058280aca02c1405650960a02b284ca0280ca0280b050160a1f3280a03280a03280a1ff3284a1f2c14265014258284aca1ff3284a1fffff2c1b3e58363fffffffffffffffcacd8ff2c1425650194050799425095942565079940509594258284aca12b283caca13284a0ff2b284b050160a1f2c1405650194250960a0f2b284aca12b283cca1287fcaca12b284b050da03028040204010140a02010080300640ae302500803053c24f30d7c2a930ca42cf31c4921a300f0001300c4005305cc04f303cc03e34620fffbd2c41c003485d91db9ff00062e346243bfd000a9035bccab50300ac600d80006071010c603180c6611a82666027812018002a546032072608a05e690660a6330a28160074dc46f0c033306302b302a06234f02603428582329635f2eb1698880854e0c110038c168038c094064c008008d454d7cc660a5cca5c1d4c4f03899c459a1b8ef3180e80e98018048b009ba542604818c60701ba620e09e60de09e0d024120006cca729e4ca5b2baf182ea7acba030220082203b14028160104972b0109332164c5a76aafeb228dc6dd359e5dba0a2ff2c00c182d01c182d03d180c00c980c801c4eebff1779ae3fb76efa7ba8ca8927c39707a7a27c79803803958039803803980380398030031583a983a04c1583a45e2f14a771593bcf4b7e24f32e789492ebff72f45ee5ebc61540c4603207e180afe17007f53b0c00e4c44c60c00c8c50fd0fffd050d050d1c65d6a2ffffa251aa27c567d0fffffa219580133ba3f75e3292edc1863a4ea46dd474fffffffffffffffffffffffffffffffd4f980d0090981280b6984e00481848a1621869a25d18f32518198f263d19bd283d1a7d2d1b1b0fcf639bcf8c85987b8ff61db16c151d0749fb9cd72df399c764769881e1d19834809d9862389858ce9c5ca99b38cc9a0c149986cd1bcf161d83ce1ea3a91bc8f1997c611a16ce1bcaf21c32d31ade9b19160f191c9a9a68b599fa7d1986450b14e60e03a6271126471166450aa62a03a60e03a60e8a464698867d9f867f99062a83660d0403a0e98300e98a029983e0d2439810069810029810069818068602a8ab8ab3a01500a912a95c5987095b948b016d5fdb3ff4b0ee54255006ed19788c17050c2d0b8c49128c320c41c18a6f1728b945ca4e29eeef1fe56c8a800980801980402d79dc7a4a01980002980804980c03980c02df30180530902530880542c301402309446311448311c4830982528014c03000c23098c05008c05022b592500e2b477b0ffcea5d66d967ffffffff94b20c5dcb0cc4989356a6d779ddeb2ad6b755f57765b2996dda596d3bf38d6869da96d9d53434ef4ba1a7fa3384aa5d6bf2ab19a6ea300c013730b805f33126021130cb4230301a424a304f4122302905f9309b01e5308bc0253115c16431c9c4aa319809b1348b010e360fddfffbd2c41b83e62974fe0ff1f1056daadc81ff69e01033cce9a13e9998033720c8e03095404e3043c257309e00bd30074315306a01b93964c434b07666b9b5a486915398b4c4670561abd5a6ab341a9c58670859b40ea6965b8aa08c26b43291e438b21c5630e828906a18255402a4302824c4020012f82a2415279830b466f22268084188a8850f8238c0276895daa096a1e4406a530a427eb58491f081545ea7a311caba0d9712c06c2245b452039921093ca2624399cb1b2c29eb96a1f6c6b339233293c2e2af1b85c542519395617227c748270778c241b5976196923c2e27c2ba5fc4c49b6b75f582ca7ea3735ffffe0ab665746b4266378e2dfd7fffffffffce36c31231de4bfd191ff117fb8c19504f0c09013dcc8583304ca622984cb0e2c3cd17e039c8a86738190f763626173e280ca4e36eeb34d7401280e67a692ccc6a3708d58face8f60fa0b0e9df6268c2ee3714d7e9284d281eb4c64d280d7ecbbcac398c654a60c39c654c650e70d285280c650650cbbc650b032a63283286532530632a1ce61cc32a561cc61ce32863281ce612012061221206072070607207058038f2b03930390903d094d26834fa4ad216349a44a7a741e9d06952f95a42b485694b090ad2ff9a548695214492c25f34893cd3a62aa434a93cad29a548584869529e8485694d2a434890d22534a94b090b094d2242c2534a90d3252b4a5690b090d2a52b4a691215a534890d224f372e7fcb0e0b0e7ffcadc161c7fff95b92b73fffe56e3cadc7e5dffff372e3ffcb0e7cb0e3ffcb0e7fffcadc161cf95b82c382c382b70587058726e5c95b9ff370e3cdcb8f2b7058725873dff2c38ef9b871fd3a21dfffff65f302a03bf3183c6d2327a41d139209453312084833623919f370206d535458e2633ec4e26388c9fe23a48b6a13da898f333712b75337150153ed089223371145331208dc430be454831cd84203042842030be442035b23231156d2c15065408a685216685088685216568515a14685a1665408856541888549950229a1622959715bd15bd95bd9973d961eccbcb8cbcbcea510b08858452ba8345453444434444345a9345452c2296114d1114ad14d1110d1514d1110ad10d1514b08a575258442c549a2541a2221a2a29a22296110d1114b08868888584434fffbd2c46c83f3bd56de0ff77085de2a1ac1fe6e4054534445344452c2215a21a22215a29a22279a2221a2229d4a296110ad10b08a68a8a5844f345442ba82c2296113cd1110b08a568a68a8be58442b45f345452c22f9a2229a2a2f9a2a296110d1114d1514d1514b0886888a58442b44f345442b442c229a2a296117fcb089e68a8a5844f2b442b453454434545345443a844345453454434444344a834445345452b443a94534444344452c221a2221a25416114d1510ad10d1514b08868889fe568be68888568868b5256886888a568a68889fbf9dbbf45c58018cc0620d8cc4e31388c3620d88c5630d8ccde23388e1e2878ce6e33d88d1e32788d3e24f88c660a18cdae32788c9e2358cd7625d8ce1e2358cef62e58cd0e2438cc6e2358cd762438cc6e33588c9e31b8cc3620d8cc162178cb00b1182c60b1182c40b11f8dc456e33f1388b1e3371b88ad8cf8b88f8f8caf88d8f88f8d88b0c65862363e32c719b13195f196388f8d8fcf8988b1c65863363632c3195f115b196188ad88d898bcd8d88d898cb0c458e32be32c3195f19b1b19b1b19618cd898cb0c47c4c456c66c6c65862f36362363632c3115b115b115f11b1b19b1b115b11b1319618cd8d8cd8d88ad8cd898cad8cd8d88d8d88a310b0c46c7c66c4c456c66c6c47c6c66c6c7e6c6c458632b63362622b633636336363363e2f363623626336363ffd15b1f9558cb0c47c4c66c6c458632c31ff9b1b17f95b11b1b17f9618fcb0c458622b632c319b131f9b1b115b115b17ffff9b13196188d8988d8d88ad8ffcad8bffcb0c7fffa363622b622b62fecf95ff2aaf2c084258217cce061080c9c9655cd3ae3270dd952720e33eed24e068381cc4203dc0d957381cce0781a4e33eb494f70aed24cf704eb8cf701080cf702cc8c6f45a0cc2b7217cc9c81bd0c58b0ad8c58a0adcb02109829a2101829815b188400a61d6ca69a9b5b9554c35314c35314d2b3eccfa3e8cfa840e103ecb07d99f47d19f67d962102b3eccfa3e8cfb3ecacfa33e8fa2c1f6582efccba2e8b05d960ba32e8ba2b2e8acba32ecbb2b2ecb05d9597665d17665d177e582ecb05d19745d15974582e8cbb2e8acbbf32208832252f32208932252f32208932248834b88832252e2c11064411064491264425e64411206bfffbd2c47903eab9a2d20ff6b3471eaa5801ff5a38ac804576115d84577062ee0c5d81ae97606ba5d8457581ae976115d01ae9740c5d40df4fb037d3ec22fa063ef08bec22fb063e818fb063e818fae06fb7d01bedf606fa7d845f406fb7df06533c194cfae11a6ffffc234d81d369947ffffffffffff06110c1f907e0c1f81044d4c44abce14c8534d8f25314c1f820f0f62f7cd8ce8395f0d2af6c24df37e970f2038d90c413a6a0e14fc808e9a763d4f204c80ce3642950ce821038ce801044c4114abcc40e1898c4101040c1f91040d89f1acf1a9898c7e5898d89c7e4ae0f0f1aa0f0e0f5044ae0f0e0f5044d0420f0c7e5040c7e07e4b0823e63f282056c4e5541134101f834111f831f91f82b1f934114102b1f834114112aa08941f898fc2089607e4ac7e0d0407e7cc7e1044b03f05682056823e68203f0581f831f81f92c20818fc8fc98fc208f98fc0fc1a080fc98fc8fc95a0879607e4d0407e4c7e1040c7e47e4b03f263f03f0563f263f23f0563f0563f063f082063f03f063f03f063f23f263f23f0581f831f81f92c0fc1607e4b03f068223f263f23f268203f3e63f03f0584102c20898fc0fc019f93f00c3f2e113f2113f3033f27e0227e4187e4227e4227e4187e00e089f908c11061f9061f806410033f27e2067e0fc819f83f1819f93f0067e4fc830fc830fc419040187e3033f27e40cfc1f8061f9c227e00cfc9f9061f8061f8091f9033f27e4187e40cfc1f9033f27e2113f0067e2084187e2113f2113f00c823830fc830fc7f7061f8844fcaffffdc9d9fffffd75f317f31b37f117f34b7b29398c65434b665534da7572c30c9a6dbab1a6d12f1b2acc61b2ad949bf832a198d32a1b2a6629d947fe9b2a0bf98bf25b192f30c99ce12f989092f192f12f1612d8cc68c6cacc68cc6c5fccc685f8b06366636634663496e66362fc6bf2fc6bfe346bfafc6bf2fc6bf2fc585f8d20978ae5f3485202c4be690a406904bc5690f961213979212c24272f240690242569096121348521348521397d203481203485202c24258480ad203485212b484ad203485202c4bc56909a429095cbe5897cd21480d21484d21487cd20978e5f484d21480d20484ad203485202b480ad212c242569015a40690a40690a42690a4058484ad20ff348520348fffbd2c48183f27178ce0f76b545f6b61a01ee57205212c24258480ad213485212b480237e065f8237f81dfafc077fbf4237ec197e832fc0cbf832fc11bf611bf032fc11bf832fe0cbf832fc077fbfc237e065fc237fc197e03bfdf8237e832fe11bf01dfeff065f8237f832fd03bfdf8237e846fe11bf832fe11bf846ff065fa077ebf81dfefe0cbf832fdc0eff7f065f8197fc197f065fc237e08dfe0cbf60cbffffc197e2c0bf18bf0bf9bf859418bfa5b9d9418d15d941a6da6d9a6d44a18bf8bf1598d1961ad0986cad01890a6d9b0c9ce992f3ab9596198e69619a5606c18bf18d961954cc6d2dcb096c62fe2fc696c63462fe2fe62fe96e62fc96e696c2fc66342fe5663466342fe61b039865861b0561b261b239a63981b2581cc31201202b1202b1202c09018908909589015890992f0901f35b0586c1b65b26d86c9b61b06d86c95b63cadb26d96c1d72ba6a1ae95a87cd40a13aea80eb8a12b501a854275d5095a84d42a12b6c9b61b056d82b6c161b06d96c15f33cdb2d836c364db0d92b6c9b65b056d8390484e4120390c80ae427209095c83fcb120390c80b120390484e4121f2b901c86425890162405721390480e41202b90f95c80ae407209015c80ae405890f962425720390484ae40720901c86405720390c860cbf846ff846fe11bf846ff832fc11bfc237fc197e846ff81dfefe11bf832ff832fdc237e03bfdfbc197ef846fe11bf832fffc237fff832ff81dfefdfffff065fff08dfa0cbf2af2c1611a561619ad086c1bc6256986c0e698e61db186c2d0991503a991528199ca96bf995d8cc183a95d98cc883959ca996b0ae18500ae18ae8ae18ae10d99ca05098ae0ae158e6186c06c996186c186c06c186c86c1586c98e686c186c86c986c1611d71406a1501a86b858501a82ba56a02b501a854258509d71405850161426a0509a8543e6d86c161b256d836c363cb0d8ff2c363cace9e5883f99d0ea583a959d0cea7433a1d4cea7533a1d0ad43e585095a84d40a12c280b0a02b5095a83cad41e56a12c280d42a1350280d42a0350283cb0a0350a80b0a0350280d40a02c284b0a0350a87cd42a02c284b0a12b3a19d0ea7073a99d0e8583a99d0ea6743af99d4e86753a99d0ea567533a1d3cce8752b3a160e86743a160e9e6743ac1fffbd0c49001aae194d80f72b58554b59a95eed5a08d808b600db0d9c22d906367831b1c22d8c22d8fc18d808b620c6cf063660c6cf036cb66116c01b65b2116c7fff08b67831b3ffffc18d8720624024262422406caa96c696efe06634fe0696e2fe584b6f32c269733b61cd32c30d831cc2c2375639c339c120339d4da2bb08ec2364dcd360e5e480e5f978f9c97cd2197cb0901f3a909f39ce15cbc6904be7cef386904be572f1cbc909cbc909cbe90961202c24258480d21480232106484192108c80192008c800e4320064840db1cc036c36418d981b65b2116c7845b006d86c831b20c6c045b0116c81b65b2116c01f31b00c6c0339a0c6ce0c90046401190e0720900464184642119001c86400c6c831b2116c831b00ce6045b006d96c01b65b2116c81b61b006d86c831b006d86c031b206d86c81b65b006d96c045b00c6cc0db0d881b65b006d96c01b61b20c6c845b006d86cc0db2d90636606d86c031b308b6022d8036c363f06487fc1921846400c90c192084643e0c907c1921ff064842321fc2320c1921c2320e0c9083241c1920e1190ff0648383241ffe1190552b188b0719f7f4a1eb57c15bc66b19c46e821474a4645719988ab69bc4b11ac4311dc4b11cc47198c4b198882219502296045338ce33589622b388d62188c6338cc6318cc63588b071195222995222195022160a832a04532a0452b110ac4432a0442c08862208a78b1f95e23c58fcf1633c78bcae2162215c42c442b8a588a588be71221c58a716295c538b14b110b114e2442b8be5714e2c538b10e24538b10ae21c48871227f9c58a7162162216221c5885888712216229af5de585e6b9715ae2c2e35cbcd72e2c2e2c2f3f4b8b0b8ad715ae2c2e2b5e6bd715c42b885710b114ae29c48a588a588a58887122ff95c42c442c45f2b89e5710e2442b8bc238e11c611c5e11c5f08e3f83310331ffff8471047160cc708e3c198c238c19881988238c198e0cc7833103318471e0cc508e3f8331c0f1e3e0cc611c7847103314198e0cc5066308e3e0cc41f2c1e6a5119a1af08bc29b0f2a7b986cca7b194d8c3c98dd06f719b1a90d9a4346c69a4366c619b1a47f1ef71b39b74ef71ef76f71a08e3598fce351a08a081bc6bc61f9a79a953cd4de33cd7cde31e34a79a8de37cdfffbd2c4d083a94daee40eea974694295845ff597a0d1c3634ad1c0e3ff630e3f91c0d1c11c0dba0d98cd9a9b0cd98d98dba0d98cd9cd9ccd9cd98b0dd3e566cfe66cc6ce586e9f36e9367362741136271f831f81f9f34101f82c20898fc8fc1a080fc1a088fc18fc8fc04638846380323884638c191c0231c4191c40e38c71064700647108c7003530a640d4c29903530a600d4c54d08a9803532a6418a600d4c54d03532a600d4c29981a98532075314cc22d980db3367831b3831b381b666cc0c6cc06d9db381b666cc06d9db3045b3845b381b666cc116ce0c6ce06d9db3c0e384708463804638e118e0118e0118e2071c63881c718e0118e3f08c70038e11c00e38c7108c7008b66036ccd9c0db3b67c18d9822d980db336608b6608b6708b67036ccd9818d9818d9c0db3b670636706366036ced9c0db3b6606366845b381b676cfc191c2071c238f08c71f846380323801c718e384638c191c3c82bb45762bd6a189200a0f3144ca433d6cc69c36b368403455f43b3455ab8137c0e4323674ca4235040d5636b2cd573290d4a32a9ee6553dc8df03144ca294533f88be230f8d3e330f8c7e333dc8a4333dcd9d332908a4332908a423144ca423144ca433290851231448513314494a231448f7233dcc5133290c5122c0a24587e3d95bf1960f8ccf8cf88b07c4583e32b3e22b3e333e23e333e37e333e23e333e33e32c1f199f19f1160f8ccf88f88cf8cf8ccf8cf8cb07c4567c6583e333e23e237e23e284e898328981d13a2611a240ca2611a2508d1281d12a260744a8981be27c6117c4117c606f8df101be27c60c7c407f89f181be37c606f8df101be37c6117c6117c5063e208be281be37c5063e3037c6f8a117c581be27c7831f181be27c5063e2ff81be37c5f831f1781be27c4117c6117c40c7c4117c406f8df1c18f880df13e2063e2063e208be308be2845f1c0df13e2063e2037c4f8b08be3037c4f8fc1944c2344ffe11a27ff06513e11a270aa27fff08d1303a2544bff06512f065128468980001f961a0f32f89be330f8cbe22b674cd4a3528ccf727c08d4a25288c923183cc9221838b0ce9194867b9997c67f118fc69f198fc63f19b07b071c914919b07c91963f88a1f1cdf88f8cef88f8f46d3baae7aacd386d39aae6a254867487486fffbd2c4f0002ff59cc10ffad486bcb35849ff59b3574846a24a26574866fc67c667c67c667c6fc6583e233e23e22b3e332f82f832f92f9360f60f32f92f92c17c7960be3ccbe183cb05f265f2c1e65f25f065f0c1c56c1c582f832f860e32f82f932f82f8035f0be40d7ce0f035f0be7062f8062f9062f808af981af95f2115f006f8df1c22f8822f880df1be3037c4f8818f8c0df13e208be2037c6f880df13e2037c4f8822f8c18f8c22f8c0df1be3037c4f8a117c6117c40c7c60c7c708be208be208be2063e3063e308be208be3063e38317c8457c40d7c2f808af808af808af9062f9035f0be422be018be00d7caf9062f98457c81af85f1035f0be422be206f8df1031f1845f1045f1831f1045f101be27c7831f1031f101be27c7037c4f8c29f1818f8e06f89f1831f101be27c7037c4f8822f8c0df1be3ffc1944e0ca25f065120651284689fc1944cde666d451e74c692cb86aed3354ea7b2cc5691998436ef2c2dbe749e0b946bc1af0868cdd2784d19c1de4b1aa9bad88cd958dd05853d0c4716ce4cd8c23fcdd6d2ec8cbb275b4cbb31728c3671ba0c3671ba0c3661ba0c36545ccc36445ccd1731ba0c6e90d98b03c619e6a79a98f183c616078b2c2335af2a0b96565d91c7fa38144701611c0d1c51c3cd1c51c4d1c11c4ae3fb9e568e1fe58471336636636e9366e959b3f99b31b3959b399b31b3959b399b31b30323840e384700647108c700647006470c231c4231c606d99b3c0db3b6608b67036ccd9c0db336606367036ccd9c18d9c0db3366036ccd9c22d9c19ba40db3367064710647008c708323840e38c7081c718e0071c23803238832388463881c718e20c8e00c8e308c7108c7106470038e31c00e38471038e11c00e38c71038e31c60c8e20c8e0071c23881c708e0118e0118e20c8e0118e108c700647108c70038e31c70647108c7108c7008c710647106471064710647108c710647181c708e30647008c70c231c00e3847006470038e31c3065cafc1972ff832e5ff846e5419e3613f1bffffe11f19ffc19e33c23e340cf2c13a66bc22f044e35599b1a90d1bf8cb549bad85d91af091aa938d5665d997666b549b1866c6ad5268ce233468cd233651785150bb22b172cd19b5e10cf343cd4ad6de33cd4f3533cd078c2aa78064efffbd2c4f003b1c9a8c00ffad4867d2b97c9ff5eba9a783a34f013c12a93a6513c0993a64e9993a49e09549d32bbb235cbbb32b5ca2c2e515ae595ae59a38c7f1a382381a38a381c7fa381a38a389611c4a238fcb08e2584702c47f1a38a381a382389a38a3895a389c7f47f79a38238960a64ca61530ca65534ca64a60d531534b053058298354d29932982992b29932982992b2992b4712c2389611c4d1c11c0ad1c0d1c51c0d1c11c4ad1c4d1c11c0d1c51c4b08e068e28e268e28e0568e0568e068e28e2584702c2389a3823895a389611c4d1c51c7cd1c11c4b08e3e568e0584712b4702b47034714712b5ca35cb5ca2b5cb2b5cb35ca5ca2b5ca2b5cb35ca5cb2b5cbff2b5ca2c2e59ae52e57f95ae5161728b0b9456b9656b94585cbf2b5ca2b5ca2b5ca2b5ca2b5cb2b5cb35ca5ca35cb5cb2b5cb2b5cbff35cb5cbff2aae56cb0b95fe56b95fecaba05d4123552674e3bad48a9d373031554e1127497febaf30f887e332f18e2831290966285e38c9662f1cc5622b8ccae51ce0cc394994ac60e30e385623158838d3158c90e3243c90e31588563312904a53090c2422b1290c3e21f88c7e20f8cc3e33f8cc3e32f88b0307958c1c617c8c1c56307187c41f19607e230f8c3e230f883e32b0f88b01219848625215848658090cb0121160243f3e3db92c71e586e0db96e0adb936e38e2c371e56dc1b72dc1b72dc79b70dc15f1a586e4b0dc95b7056a69a9aa69a9b5b9a9aa69a98a61a9aa61614c3ad94d3532b63adab735314d3532b636e5b836e1b8f2c3706dcb706dc37056dcf9b72dc15b70586e4adb92b6e0b0dc1b72dc9b72dc95b726dc370586e0adb92b6e0b0dc95b73e6dcb706dcb726dc373e6dcb70586e7cb0dc1b70dc9b72dc15b73e56dc1b72dc7961b82c37256dc79b70dc161b82b6e4adb8f2c370586e4adb92b6e4db96e4adb82b6e4adb82c370586e0b0dc95b726dcb70586e0db86e3cadb92c3726dcb726dcb726dc37056dc1b72dc961b936e5b9f2c3706dc37256dc7fffffff063e30bcc78d1e34c5cca4f0c5cb8d54de87b760cf3598c4e3555e08dd6c172cd6dd3cd4de8698c0db374868c4716cdcc5ca75b0c5cb1728d19a4668cd8c23fca1b1b323fd6a932ecd19a2c0b946bc1233462e5233a71fc8e271fe8e268e11fc68e2fffbd2c4f081f03160cc0ff6d7863fb5d7d5ff5a2a8e27e69e6be56f1a7e69e69e6f1af1a57e6bc2b78dff3471471347147034704703471470347147134704703470471347147134714712c2389a38c7f1611c0d1c51c4b11fc68e28e0584712c2389a382381ae52e51ae5ae51ae5ae59ae5ae5945cb9ae52e596172cd729728d729728b0b9456b95e157280772ae5846e5046e5c1972c19728237281972bc0ee5dcb832388463881c708e2118e0071c23801c708e0071c63801c708e2071c23801c718e0118e00c8e2071c23801c718e2071c23804638e11f1bc19e330af1bee0cf1bc23e3423e31a0cb940cb95c23728197281972b03b9772ab065cb08dcb065cb708dcb08dca581dcab940cb940772ae57d5fe0cf1908f8de0cf1a15e3411f1a15e35fd55423e3611f1b5419e317f5e11f19f08f8d0678c833c6423e33f0678d81f8df1b5f33a38e8f3e1d21d43b49168319d0eceb83d0ece2c92270d155ae00e1856b28c69d355ccf736748c513290cda0f8b20eb808b24a844e99ee65219a9462891b3a65211c59044e9b41e44e96115532275155d151d3a33a38e8e33a3ce8f35a08b3232cccb3228599ccb322ccca8b419bf1df119f11f199f13f11bf13f1143e2161f88b113a5589d389c89d2c44e162270a44e3cae270da75a70da71a74b0d3a6d38d3a6d3ad386d3ad3856d3be56d3856d386d3baae56d39e56d386d38d386d3ad3a5355c56d386d38d39e6d38d3a5869d369c69cfef95b4e161a77a56d39e5869d28d3af2b69c2bd56f369c69d2b69c2b69d2ab4e1b4e34e1469c1b4e34e95b4e79b4eb4e961a77cda71a70da71a730369c69d2b69c2c34e7961a70b0d3851a706d3ad3a56d3a56d386d38d3a5869df2b69c3d5669c28d3b2c34e961a77ffcada73cada70a34ef45869c2b69cf2b69c2c34e95b4efe8ada70da71a74b0d3bb2c34ef961a77ca8d385869c2c34eecb0d3857665ffe58b322c599fecb16645766658b32ffe73fcb166657665e7665666766766458b32f2bb32e313316f31e1f6ee56bfff9beaf3144a96237c0851329f118e4335288e4333dccd9d35288d9d22908cc38248ccf4e183cd4a32908d4a3a588d4a33dc8c5132908c513528cca42528cca433dc8cf72290cca425288ca43290cdf03290cd4a2290cc5133dc8c512fffbd2c4ff03f49152ba0fffc5c651b59801ff5a901448cf72290ccf733dccb07b999484a511948428998a242891948628916144ce90e908ad448d44d44cd44d448ad448a2894b0a27e585123513a432ba42d95a8916144fcd44d448a8a246a24a266a24a2452909e58513f849f1c22f8a117c406f8df1831f1031f101be37c607f89f1845f1831f181be37c6117c606f89f101be37c606f8df1031f101be37c508be2037c4f8e117c6117c508d1308d1203a274482344b0651306513065138468941944c2344c2344a0ca260744a8901d12a270651383289c0e89d12f83289e0ca258468941944c1944a0ca2508d138468904689b8468941944e11a278328901d13a260ca2583289e11a2781d12a24f83289832890468984689032898328942344c1944e11a2706513f83289c2344f06512a8234481944a0ca260ca258468941944b8328976e11a2584689feae11a244c414d45332e313030aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaf2aa8207219b3a45243318a27c791a946a519a4c849198c1c7a7997c65f119fc47f19486126d651aae67f1a7c6517e21587c4617c1244661c9246661c124666ab9aac66ab0d3a66ab35966a082822634e2820566ab19aaca0896069d2b355cc69c5040acd563355cd562c0d3a574845144a56a24748748656a2658a4337e23e233e33e22c1f1159f119f11f1959f199f13f11bf13f11d21289161448b14847486a246a26a27e51449e585132c28981d13a2611a2411a260744e89832890328901d13a2708d1303a2544d82344e0ca240744e8981d13a2411a25846890328981d12a260744a890468903289e0ca2611a240ca2611a270651283289784689c2344c2344c234482344c1944c0e89513f8328981d13a2783289c0e89d1206512ef0669d8334e78474ec0f4e69de0cd3a11d3807a774ee11d3abc19a77ea7c19a760cd3bb419a7019a73ffff8474e8474effffc19a77ff08e9db3ffffd6bf9913a8aa1f9eb1631445566a510a2472198a24777c28226d65359675c09138644e11387163570651a0f9c59044e1a2a88aa14455e67b9948667b93e066ce98a26644ec592644e913a6d0722aa51a0f142274644e22aa644e913868aa1138644e341c644e113a552274aa44e1a2a844fffbd2c4e581eb5da6c00ffad4867d3597d5fb5f98e18d3834e19aac34e18d3834e18d3a34e958d3a581a74ac89c2b2274aa8aa9913a44e15913bfe644e113a634e0d3a634e0d38634e1aade5634e798d3834e158d3a581a70ac69d2c0a2662890a2456289958a245628998a2628998a24289958a27fe65210a27e0744e89046890468942344c2344c1944825448234481944c2344e11a2503a2544c234480e8951206512832898328901d12a240ca240ca270651306513065136e11d38c11d3811d390669c08e9c03d39a7019a7207a774ec23a740f4ee9cc19a7423a7607a734e0474e8334ee11d3a0cd3811d3a07a774e419a740f4ee9d03d39a7611d3bc19a7019a7023a7207a734e01e9cd3908e9cfe0c22742244ef83089c7089139f06113bf088d39fc1834e42234ebc1834e60c1a77f060d39e111a77c1834e84469df6c2244e550000001fcb08e06636ca8663496e6fe26366634fe069b4c32673aeae673a9b6586192b1cc33b73b63411a5531f94112b410383d62731f86263626626331b31a34b731a317e17e34b64b732982992c2a69594c194c94c795a089a0831318fca081a088fc9625e3979212b484ad2134825ef2be70ad203979203485203481213481203485212c24256d93e6b64db2d92c364db2d836c364af9856d82c360f9ad92b6c79b65b06d9e61b61b26d96c15f30db2d93e6b64db0d82b6c161b0589079c8243e7219015c80ae40720901c82407219079c8240720909c864056d92b6c1b65b056d8f36c360db0d836cb64b0d82c360adb056d82b6c9b6798586c961b056d92b9095c84e43202b9016243ffe589095c84e4121f2c480e4121390c84ae4057212c484b120ff2b907f95c87cb121390c84ae42589095c84ae425720390c80ae43e58909c86407219016240589095c87ce4320390484b120f2bbfff962fe577ef2c5ffcb17ef2c5f8aefc58bf9dfafde58bf962fde58bf1dfefe77ebf15dfcaefc577ef2c5fcb97d859c2ab88e7fa3cb0599194842891be04a51998724911aaf47a799fc43f19a7c4ff11978c122992ce71415948456a5119fc61f19553e232f8cbe232488c393248cc393183c60e31a70d5631a70d563355c69c3355cd573144c5123144851333dc8512314485122844e4d1554550a11383227089d2b2270afffbd2c4ff83f1c956d46f779446f42a9881ff7690d448d44e908d449448d44d44cd44d44cd44d448cf8df88cf8cf8ccf8cf8ccf8cf8cacf8ccf89f8cb07c6583e232f82f9360f2f92b2f832f92f932f92f82c17c960be4cbe4be0acbe3cef9be0ef8be4ef8be0ef9be0ef8be0ef8be4b17c15df258be0b17c1df37c1df17c9fc7f11fc5f115fc457f19fc7f1163e23f8fe2f2c7c47f1fc457f1963e32bf8fcaef82c5f277c5f277cdf277cdf058be4b17c79df17c15df077cdf077cdf058be4ef9be3cef8be4aef9f3f8be22c7c5e57f115fc457f1963e3f2bf8cfe2f8cb1f1163e33f8fe3f3f8fe33f8fe32bf88b1f115fc457f1963e32bf88afe22c7c458f8cfe3f8cb1f1795fc5e58f8cb1f115fc67f17c7e7f1fc458f8cb1f1163e22c7c657f179fc7f115fc457f17963e32bf8cb1f19fc5f19fc7f179fc5f1963e22c7c658f88b1f195fc47f17c457f115fc67f17c658f8bfcafe32c7c7e57f195fc658f8d5f2a2944630705f26c472af66abd8c1a661c9872693205f069320c1c510881978e4b3192463071a4ca49199e9e7a71987017c18c1e17c19c62b198dc2b118dcab11d21a891d2152179d21d2195df1160f88cf8cf88df89f88b14867ee4a25fe56a246a26a25e6a25485e6a26a27e67c47c5e67c47c667c67c6567c5e583e32b3e3324324232422432b243324324232422432c12199211219921252992112116090cac908c90c908c908908c90c908c90c90cac90cc90c90cc90c908c90c90cc90c908b048664844840c5f2115f00c5f108af8035f2be2115f18457c6115f20690d210452101a4294a1148406909218312140d21a4308a4208a420624281a424861148406909210452101a4348508af9c22be206be57c0317c8457c8457c422be60c5f2115f20c5f1035f0be418be2115f20690d2181a424840c4840c4840c4840690921e11486114841148606909210452181a43484114860c4870348490c229080d21a4208a430624208a4308a428317c0457c422be40d7caf9062f9062f9035f2be40d7caf8f062f98317c8457c0457c6115f3035f0be018be422be3fffff08d12f2c3d10653614da6a7ba2e442a7a1a9eea7b9a3362e518b971aa9445cc6374b0f2564019957055c1437be63748dd2653694d863c68f1863c6adbc6b6f8f1a53cdfffbd2c4f103f43180ca0ffacdc623b25881ff59f847e6be687e68f1a57e6857e687e6af187e6be687e69e6a6f1af145478a3f3578c378d78c378c78d378cf352c3c61478d1bc63c6961e34ade30adba4dba0d9bcaadd2566cc583672b36633676e834704712b8fe38fe4702c2389611c4ad1c4d1c11c0ad1c0d1c51c0ad1c0d1c11c0d1c51c0d1c11c4d1c11c4d1c11c7cb08e3e584702c2389a382389611c4b06cc583672c1b319b39b399b31b3f959b399b31b3959b3960d9ccd9cd98b06ce66cc6ce66ce6ce118e2071c238c191c4191c7038e11c40e38c70038e11c4191c4191c40e38c70064710647006470038e11c0191c40e3847084638e0c8e0118e00c8e00c8e20c8e308c718323804638046388463881c708e20c8e2118e20c8e2071c238c191c0191c0191c0231c40e38470c0e38c7008c708323804638c0e3847108c7108c7006470606470c231c60cf1bf57ffffdffffff846e5e0cb94a00002f30be4c3831084420332746f434224bc73259824431839265263070b039c183701c6961c14d2938a4eb9158cdce0e30eb95588eb8ce3cd58ce3cd589588cbe648cd83cbe0d83f0e0e48a48cc90c90cc909c14c909c14d295290cbe248ccbe1838d83cbe0cbe183cd83cbe0cbe1838cbe4be0cbe4be3cacbe0b05f2569485648664844845694a64864846486487fe6dc3706dc3706dcb706dc37256dc9638f2c370586e4db86e3cf8f6e0f8e6e4f8f6e4db96e7cb0dc1b72dc161b82b6e3cdb86e0db86e3cadb836e1b82b6e0b0dc9b72dc961b936e1b836e1b82b6e4db86e4db86e4b0dc1b71c71a9aa61d6ea615a9856a69d6ca61a9aa695a9856a69a9aa6f95d6e56a61a98a69a98a69614d2c29a56a67962432b90fffcb121f962422c485e572196242f2b908e43908b12115c87e572115c865890bcb121f95c845721ff9c8521162432b90bce4290ce4390bcb12116242f2b90cb12196243f2b90fce42908ae432b90ce4290cb1211c85211c87211c8721f95c85fe5890ce4390cae432c485e572115c87fe572195c87e58908e42908e43908ae43ffdbf587ccf8af88c7054224d7aa4ba8d7e30f8ccfe21f88d57a248cc2f80be4ce281294b04b319c5097518e0a4b3197cfa79fa7e1c197c97c9fa7307997c17c197c61c9df1df119f11f19df15fffbd2c4f303b38556ce4ffba9d6c3a41945eff822f199f15f199f1bf199f19f19df15f1160f8cdf8cf88ef8cf88cf88f8cb07c467c4fc66c1e5f065f05f265f0c1c6c1c5f265f25f265f05f265f05f065f25f065f25f26c1e5f256c1fe582f832f860f31b838d31b91b931b91b931b81b82b1b931b81b92b1b831b938e2c0dc18dc1c695a5279921921992112116090fcd295290c908908b048464864865824332434a531b81b831b81b931b81b92b38f2c1c7160e34b0372563705838f2b1b831b81b831b91b82c0dc9606e4c90c90bcb04845824232432432b24332422432b2422b2422b24332432432b2422c1219921121f960908c908908b04846484485e64864845648658242f2c121959211592116090bcac90cc90c90cb048664844866484486564866486484564846484484671c3706ac6371e637071c6372370637237063723726372372637237063723706370372581b931b81b82b1b82b1b831b91b82b1b92b1b82c0dc959c7158dc98dc8dc98dc8dc79606e7ffffeef34bdd4378ce2398c633b8a623188e23d8a62338ae23578c737dd5f2c1c65771985e3d98f6d59abc17163c634bd2f32248939ed2e32232137512e3751d5375488f34bdd534bd2f32208939e92f32212f32248934bc892b4bcc88224d2f220ac882c11269711058882c4495c41c44495c41c4c415c415c4162a0ea514ad14ad14b0887508a68a8bfe75088584434545344a8345a82c221a2a21a2a29a2229a2a29a2221d4a29d4229a2a21a2a29a2a215a21d4221a2a29a22295a279a2229a2229a2a29a22216114ad14ad10ad14d1114d1513cd1110ad14b15268a8a56885689e5844345442b442b4534544345452c229a2a29a2a296114d1517cd1110ad13cd1114ad14ad14b08a68a88568a568be68a885688588938988f2b88f2b88f2b892b89f2c447fff95c496220ae24ae23cae20e2624ae27cb11056c5e5863363622c3115b115b19b1319b13115b19b1b11b13195b116188b0c5e5863f36263f2c3195b11b1317f96188b0c60c44ffff84513fe0c4404513e0c44fc188908a2708a27cc484e74d866254aec44c97d36cd860484dd5ce74b073a64bf12a69b424265841b261ac9585825e312039c325e894339d757312025f2b619312139c3120120325f4db31201213121fffbd2c4e403eff9ace40eeeb7c67f361b01ee56f01203120120312125e3121120325e25f325e4da2c12f192f1ce18909ce996106c160730b01b063981b063981b0580d9f2b909c8240721909624058901c8640721901b679a586c1b61b056d92c363cb0d92b6c795b63cb120390484b121f2c484b121f2b9095c84ae4058901c86405721ff2c484e4121f390484b1212c484b120f2b909624056d82c364db2d936c360db2d92c360db0d936c364db2d82b6c95b64b0d8f2c360db0d92b6c95f34b0d82c360b0d82c364db0d936cb64db0d8f36cb64db0d82b6c7961b2586c15b60b0d92c360db0d936cb64adb2586c15b60db2d82b6c79b65b056d92b6c7fff961b3e56d936cb64db2d92c364b0d82b6c161b3fe6d96c95b60adb211907846400c90c192006482072190c232106484232006483e0c90c1921c0e4120064802321c19218464308c841920f846401190c1920064861190846400c9060c908324384641c192106483f08c842321af3210329369d2693340190343f32830fa66d366d89d35569b2332843e355643f35569b2389d66c327a1d4346c27a33c746c2882d31910ba2b26937840fa321055630fb210343f32832103292b3292b3292b32830fb210321043e3210211321121030fa0fb3843282b3e8f28840cfa3eccfb3eccfa840b10819f47d99f67d99f70899f47d19f67d15c2267d9f7e7081f467d1f5e567d99f47d159f667d9f6583ecacfaff2c1f4583ecae1133ecfa2c1f6567d159f467d9f667d9f6583efcafefcafecafe8b1f458fb2c7d9fd7d15fdf95fd163e8b1f457f657f657f7e57f658fb2c7d963e8b1f458fa2bfb2bfa2bfa2bfa2bfaff2c7d95fd95fd7ff95fd163e8febe8afe8afebcafecfebebfffcfebebfcfefebcb1f458fa2c7d15fd15fd1fd7dff9fd7d163e8fefecb1f458fb2c7d15fd163ebcfebeffffcafecfefe8afecfebecafecb1f658fb2bfbff2bfb2c7d95fd9fdfdff9fd7d1fd7d1fd7d95fdffffff95fdff9fdfd963ecafecafe8febebcafebfffcb1f657f47f5f5e7f5f7fe57f67f5f47f5f5e57f7e58fbff2c7d15fd163ebfcb1f657f7fe58fb2bfa2c7dffff9fdfd95fd985e171611230b82f3a39f7357a8e30b91337c8cc31649334495e331d13324c583248cd30bc7a37d8c630b8c73248cd33301d31fffbd2c4eb83f475b2d80f7774c5b935dd81dd66d8609331e8c630bd1230bc7b30b87a31ec2e2b578c7a44cd130bcb063985c3d9602f30bc2e2c05c63d8f666305e61705e563d985c17985e179aef456bcd7ae2bf46b97961795ae35eb8b070ec1d33a70b070b070b073cb070ced9ff2b5c56bcd7ae2b5c585c6bd7ff9af5c56bcb0b8ad796179617f95af35eb8d72e2c2e2c2f35eb8d72f2b5de6bbd962e3bae2c5e577f9df79dd7162f3bee3bee2bbbffffcefb8b17f9df779dd7962f2c5e577ffff9dd795de57715de57715de58b8eeb8eebcefb8aee2bbcefbbcb177f95de58b8efbceebbfcb1795dfe77dde77dc5777f962f2bb8b17162f2c5de77de775fe58bcaee2c5e77dc775c77de57715de5771dd7962e2c5e58bcaefff2c5e58bffcb17795ddfe58bffcefbfcb17f9dd715dde57715dfffffe58bcb177ffffffff95de5777ff95de577962f2c5c57715dff31a71aca3861eef93355daca37c0a43335288f7337c094a12b3dc8c2f91838c92255e8eef81a70d4118610c2f83d38cf4e248cd26530e4a0a27285214d9d22908a86ab1a822a08160d5636b28d5631a75acb3355d41033558d572b1a70c69c1a74d4111a74b034ef98d3a34e9d21289f9d21a891d212899a892899a89a89f99f11f1962f88cf88f88acf88cf88f8cadf8bfcdf8cf88cf8cf88acf88df88f88acf8ccf8df8bccf8cf8cacf8ccf8cf8ccf8cf88acf8ccf8df88cf8cf8bccf88f8fccf8cf8ccf8cf8cacf88cf8cf8e117c414f8a06f8bf101be37c6117c4137c4117c6117c7063e3063e2063e2037c4f8c23f8823f8e117c406f8df1845f1845f101be27c4117c40c7c508be2063e3037c4f8c19f8822f8c0df1be20651203a2744a0744a89c194480e89d13065130651203a2544c1944eb81d13a260ca240744e89f853e3418f8818f8818f8c22f8823f8c0df13e381be27c606f89f160c7c6117c7037c4f8c0df1be2037c6f8c0df1be281be27c606f89f1831f181be27c40ca2611a240744e8983289046898468903289419448194480e89513832890328983289c0e895120651281d13a240744a890468983289c23448234480e89d13d0eaf5c19a76dea8474e8334e2bffef0669dfffffd5e6498b0751af860e372684a86587c8ccdd48c59074cb41b8c6e358ccc160d08070fffbd0c4fa03fa5daac20ffad4c5bcb45e01dd62d0d43164ad433164933165092b24cd09248c58164c93420c59164c1c160d09160ac923420923164583074cc2c03860e0b2562c79601d3070593070932b074c1d070ac5839614d4282b506a029840a61429cb0a585264489608990225644c8bd32040c8912b206408991225644b0f4c81032240c81032240ac816081608191205640b044afa7de796387de7963be7de95f4af858e7f96225703840e302c44b11f38c3cb1038c4e312b8f962070895c4b1d3e70b1c3e74fbd3ef4fbc3e74b1c3e74b1d3e70f9dff2c73caf9e58e79f79e7def95f7cafa58e95f0b1d2be16387ce95f7cafbe58e95f4b1d2be163a7de7f9f3857d2be963a57c2be95f0afa7ce15f4afa7ce1f7857cff2bef9f3be57dff3ef0b1d2c74afa58e963858e963858e963857c2be1f7a57cfff2be95f0b1c2be1639e57c2c70b1cf3ef4afa58e95f0afa58e9639e7ce163858e963a7de15f4b1cf312012035a04ac34ad1cd31cd3b635a05a0322b47131991992c09a982989a960398c650398c3612b0cb08edcc730730cd34418c1d4660c1d4664c48097cce70e70ce74484c480480c360360c734364c730364b039a65841b265841b2561b0580d92b0d93831d4acea7063a19d0ea707cc99d4ea63948958e0c703831c39bcc723931c244c703832994cb05232994cb052ff2c14cca6c3f2b29160ea56742b3a19d0ea6753a159d0acea56752c1d4cea7533a9d0cea74fff2b5015a80ad41e5850f9a8541ffe5850959d4b074f2c1d4ce8752b3a99d0e8570633a9d0ace8583a959d7cce874f2b3a99d4ebe56ea6e8ea56ebe56e86e8e86e8e86eaea6eae9e587537474375752b7537575374742b742b74f375752c3a1babaf9baba95ba961d0dd1d0add4add7cb0e856e858752b742c3afff9ba3a1ba3a79baba9ba3a161d4add0e8280b1427434258a02ba02ba1f2c501d050796280b14058a03a1a12c50796284ae80e8687fcae83cb14058a0f2ba1fff2c5095d016287cae87fcb1405741e74343fe74143e5741e74141fe58a1ffff2c5095d0f96283cb143fe574258a1f2c28206c48311e6abd8c1e65f197c667f137c67e36a8226d65a82263f197c661f11fc667b99ee662899ee64d41099aaea089b5966ab98fc63f11a7c63f118fc4fffbd2c4f003f3f1a2e20f7375467ab55881ff5a685f198d3834e18d3ad6618d3ad6518d3a6ab99aae34e959aae66aba820634e1aac57aac58d57369cd56cca34e4b0d3856d386d3ad39fc2c34e1b07b07997cb07197c3071c91307997c17c160be0b05f2565f26a26a26585122c28915a89f95a896bfcd44d44cc90890cac90cc90c90cd294908b04865648456484648448656486582423242242324224333e33e233e33e32b3e32c1f119f11f1160f8cacf88cf8cf88cf88f8cacf8cb07c667c67c467c67c6583e3037c4f8c18f8a06f89f1031f101be27c6117c7063e2845f1418f8a06f89f101be37c4117c60744a890328960ca2411a240744a89046898328981d12a240744e8904689c0e89d1284689708d1308d1283289e0ca27c0e89d12c2344f8328984689032897f81be27c40c7c406f89f1845f1845f17063e308be3063e3037c6f8c18f8822f8818f8822f8818f8f063e3831f101be37c60c7c406f8df1611d3bff8474eefffff7fc23a77fff42af314d42032684ee3268340355666c332966d3328556332832830fb43e2c21f1a1f9081908a1f1a771a019341a01a7705d99348c898c80c819341341a1015b98a68a698a615b9ac515b190887d187d07d987d108190819479595b995b8a698a68a61595b15aecad746bb5d95aecd76ba2b5d9ae976585d1ae974579035d2e8d74bb35daecd74bb344220d112f344220b088344a20b088344220e5e89344a20d12893e2e22c311f1b11f1311b13195b196388f8b88d8d8cad8cd8d8cd8988e2624e2620e2624e2220b113e5710711127131271113e58893898838988388883888938989f2b88ff388882b89389882b89388882b8938889389882c449c4c415dd7962ebceeeecb17477776775747757658bb2bba2c5d1dddd15dd962efcb1745777e577458ba2c5d9ddddf9dd5d95dd95dd162e8eeae8b176577458bafff2bba2bbb3bbbb2c5d9dd5d795dd1dd5d1dd5df95dd162e8eeaebfcb17458ba2bba2bba3babb3baba2bbb2bbb3babb2c5d15dd962e8b17658baf2c5d15dd7962efffceeeebcc3e21f88ccb92b88d23a48e8c85e162ca10bc31838f4ed9a4ca17c9924617c987c67f119fc43f1187c63f11613e231f8cbe2309087042b259cc7050908cfe21f8cac7e230f883e332f88be230f8cbfffbd2c4e803f01956de0f73748691b259c1fedab8e231f887e32c07c6503e3987c63f1187c41f1987c41f1187c61f19587c7e7f17c657f19fc5f179fc7f115fc458f8bcafe22bf8bfcb1f11c852195c865890cb1211c872116242390a43390a42f390e432b90fcae42390e42f390a43390e42390a42f2c4865890ce43908b0dc961b836e1b836e5b92c370586e4db96e0adb936e5b92c37256dc1b72dc9b70dc161b836e5b836e5b82b6e0b0dc1b72dc161b92c372586e0db86e7cb0dc95b7056dc961b92c3726dcb70586e7cb121962422b90cae422b90cae43390e43390a432b90cb121f9c8521f9c87219c8521f95c86721487e572116243390a42f2c4865721ff95c8458908e4390bfcae43390a43390a432b90cb1211c872116242390a432c485e72148658908e4390c1890e0c48508a4284521c1890a0c484114840c484069092181a4348508a4383121422908189082290a0c4850624308af808af8ffe0c5f1fff8457c0457c5500002f317f4b633b769735a12c23ffd655317f7f1331bb28365417f312125f325e619317f98c331a17e317e31b3b294b62c18d19611611a5616199db0e698bf8bf9a5b8bf1a5b25b998d98d18bf0bf998da5b18bf18d98bf25b198d98d98bf18d1a5b18d958bf95a5b9afcbf9afcbf79617f2b5fcf1a5f8d7f5f8d7e5fcb0bf95afe6bfafe56bf1afebf1631b2b480b0901625f2c24269024072fa40690242690a42690a40690a406902406904bc58483cd2097cad202b483cd20484ad203481212b480d20484ad21f397920f2b487cb0909a429015a4256901a42901cbc901a429095b9be66c1b066c9b2566c19b0e6960d82b364cd9360dcd360cd8360b06c159b058364cd9363cb06cc237ec197ee11bf60cbf046fde11bf60cbf846401190846400c9081c86420c90046420721900464007219081c86400c9003243039048607219060720900464306484192106480237e832ff065fe11bf40efd7e08dfc0eff7f08dfc197f81dfefc0cbf81dfafc11bf40efd7f065fb065fc197fffffabfffff065f90403cc4102950c62707e0d6dd07e4c83d1044ce8107e0cc6a2954c6271898cc6a1044c41120f4c6541950c7f00c68c411189cc62620f4cc6b20f0d2ddfc4d9505f8cc68c68ad044c7e2950e0f47e4e0f20f0b0c4fffbd2c4ec813099a4d64f76b556e6315a95ff71bac56c4e56c4e63f23f25682068223f263f28226c4c3f2581f8341141131f91f92c0fc16189cc7e1040ac7e0ac7e4c7e07e0c7e07e7cb0821e563f0563f062422426240240624224256240581202b12131201212c090960480c480480ac484c484978c480484ac480c484978c484487cc480484b02425825ff2b1212bbff9dfefe77fbf95dfcb17e3bfdffcefd7f2c5ffcaefc77ebf1dfafe58909c824258907f9c86425720390c80ae4058901c86425720390480ae4057212b90f95c84e4321f2b90962427209095c80e41202b901c86427209016240720909c864257202b909c82405721390480b1212c480b17e2c5fcefd7f2bbf95dfceff7e2bbf162fe577eff2c5fbcefd7f2c5fcaeffe58bf95dfffcefd7e2c5f8b17e2bbf9c8243e589096241e5890962427209016240720901c864057202b9016243fe589096242721909c8642589095c83ce41212b9015c80e41212c7e3fcaff3fffffffffffe57f9ffffffff2c7e55f314d6f4319169c334141731d5320308946c341734134170ba33211d5332112f2c0b198f18711897990984413d984493d9a0b85d98c80c818c81349a995b1a98a69a98a6962b633ea1133ecfa2c1f467d9f458537cd4d534aeb62b534c894b8c894b8d2e4b8b0441a5c44f9b1b11b1311b13115b11b1f11b1b11b1f19b1711a2d41a2a279d42295a21a2a296110ea510ea510d1510d8d8cb0c4586336263363632c311b1319b13115b11618cd898bcae20ae27ffcae23fce2223ce2224b111e71311e577658baff2c5d95dd962ecb17458ba2c5d95ddf962e8aee8b17458bb363622b63362632b63362632b63362622b632b622c311b1b11b1b11f1b115b11b1b195b179b13196188b0c66c6c67131058892c44795c495c41c4c495c49c44496224ae23fce2623cb11258882b892b89ff2b88fff2c441c4441c4c416224e2624b112571057107131271311ffe5712571258883888938989f2b892b89ff38889389892c449c4c4f96119a39a1cdee361e4a6d3914c8ff336348ff31534d6c2b563cc6191d5cc4db0978ca5507e4d09920f0c8022ae4cd6c1534c2980a60cdef1ba0c3660d98c3671ba4de31e28aaf187e68f1a6f1af1a54a6d33663672b6e936e836734714712b8ff38fffbd2c4e483ecd556e20f776ec706aad981ff75f8ff47038ff4712c47f1594c194caa6194c94c994c14c194caa6194c94c15a08958fc18fc0fc1a080fc9b132089a08a081a088fc158fc98fc8fc98fc8fc98fc0fcf98fc8fc9607e4c7e07e4b03f0563f2581f934101f831f91f92b41031f841031f91f82c0fc1607e4c7e5044c7e47e4ac7e0ac7e0d0407e4c7e47e4d0447e7cd0447e0c7e07e0ac7e0c7e07e0c7e47e4b03f2563f263f23f063f03f0581f9ff2c3f2587e0adf82b7e7cdf97e0b0fc1bf0fc1bf0fc9bf2fc795bf056fc961f837e1f937e1f9f2c53258a64e99a67ce99a64ae992c53274c53258a64e99a64e99a60b14c1d314c95d3274c53074c53074cd32574c95d3274cd3258d9bcb1b3963672bd9fcaf662c6cc7b36ce7b3ece57b3ff9ecdb316367f2c6cc57b3795ecc58d98b1b315ece57b315ecc57b395ecc58d9cb1b3963672c6cc58d98b1b31ecfb3ff95ece58d98af66ff3d9f663d9b662c6ce58d9bcb1b395ecc58d9caf66f2bd995f31a74d5738745265324902f836f8cfe233f8d3e33674ca43367494a23248c2f930be02f831f893e334f8c7e232488c392a0c1c661c124657ee67484a267485ee46a25ee47ee4a2457484748548656fc667c6fc456fc4587e23512a422c5211a89d211a892899a89a8919f1bf1943e2f99f19f1160f88acf88df8df8fcb07c66fc47c7e583e22c1f1f9a52121192125219219219a5225299219211921a52f9a521219a521211a52121997c97c960be4cbe5838cbe0be4acbe4acbe0cbe4be4acbe0cbe4be0b05f265f05f3e577c1df17c1df37c15df1e77cdf058be7cef9be4ef9be4ef9be4b17c962f92c5f2577c95df058be4ef8be4b17c1df17c79df37c962f83be6f83be2f82bbe4b17c795df0577c962f8f2c7c47f17c7e58f8bcb1f115fc7e58f8bcafe22c7c47f1fc7fe7f1fc657f1f963e33f8be33f8fe22bf8cafe32bf8ffcfe2f88afe22bf8bcfe3f88fe3f8cfe2f88afe32bf8bcb1f1163e32bf88b1f17963e2fff3f8fe32bf8cb1f11fc7f1963e3ff2c7c5e7f17c5fffffe7f1fc7fe7f17c657f1f963e3ff2bf8cb1f179a08f40992f5881a6d30c9b137401a08a089545f8b131a56ca8731afe2696ecaa73182fe68234aa63f10787078c4e74a83f0563f063f0c4e70798d674a8820fffbd2c4e783f1f556c80ffbadc667b3da41ee572078d43f06822820682082056c4fe682082063f23f0584112c0fc158fcf98bf0bf18bf8bf198d8bf960c68acc6cac5fffcd0447e4c7e07e3fcc7e5044b03f27f8fc163f057f93fc7e7cb1f92bfcff9fe3f27f9fc9fe7f257f82c7e4b1f83fc7e0aff3ffe58fc1fe3f2577f2c5f8eff7f2c5f8efd7e3bf5f8eff7f3bfdffcb17f2c5fceff7f3bf5fbcff1f82bfc1fe7f258fc1fe3f058fc9fe7f07f8fc79fe3f3e7f8fc15fe0b1f92c7e3ffcb17f3bf5fcefd7e3bfdfceff7eff3bfdfceff7ef2c5f8efd7f3bf5f8aefc58bf162fc77ebf95dfcaefc58bf60cfc047f207f8fc833f1067e211fcc0ff3f9c23f9067e611fc033f011fcc19f808fe60cfc033f108fe419f9c0ff1f9847f007f8fc847f011fcc19f803fcfe419f8c0ff3f9c19f8067e60cfc047f303fcfe703fc7e607f8fc423f808fe3847f00cfc033f211fc047f007f9fc847f381fe3f3833f00cfc833f3c23f9833f103fcfe40ff1f85f34b617e36544b7317e7f1378c69630d95a03b2898d331b7f02b39c325e619325e121375712131cd3b732c20d931cc697315c0a02c16b990d8ae198da5b98bf25b998db2a18bf18d9a43ce9a432f9a40901a412f9f39ce9f3b2f9f392f1a42901612034839d2c24269024072fcbc690242690a406d96c9b65b26d86c95b60db0d836c360db2d92c360f98d82be695b60b1cd36cb63cb0d936cb64b0d82b6c1a814056a1350283cebaa12b5015d73cad426a0509a814275cae1624057212c483fcb1212c483cb121fff2c483cd42a0350a80d415d350a80d42a0350570b0a0f3ae574ad4258509a85426a15015a84d42a0350574b0a02c364db2d836c364db0d936c360db0d82b6c1b61b06d96c961b3e6d96c1b65b06d86cf95b64db0d836c360b0d836cb64adb258e6961b1e586c95b64db2d92b6c15b64adb26d86c961b26d96c95b64b0d92b6c961b06d86c795b60b0d92b6c961b2586c9b65b1e589016241e5720390480b1202c484e4120390c83cb120390c84b120390c80e43212c480b1202c484e43212b909c864057212c484b1212c483ce4321000fe62a690046401957256d7c1a044401990048111a046401158532620814aa56208987383ab184bc3ab986343f81931a32a9863432a98c4e41e9907fffbd2c4ea03b2f156da0f7790863b335a4dff5618a2081882220898a9a14c9900655c985328111853214cf9c014019aa694c994c94c194c14c994c14c1aa62a6194c94c960a64c7e47e4ac7e3fcd0447e4b08225825e325e121312025f2b121325f25f2c090960978c4844860cfc847f211fc01fe3f011fc81fe7f20cfc01fe7f00cfc047f20cfc01fe7f00cfc833f20cfc847f103fc7e60cfc047f207219001c86420721900324108c800e432108c84192006480232103904840e4121833f011fc01fe7f103fc7e3e0cfc033f007f9fc047f011fc01fe7f007f8fc419f908fe308fe211fc047f00cfc847f207f9fc847f20cfcc0ff3f8067e7067e023f808fe40ff1f9067e211fc033f011fc833f3833f303fcfe3067e00ff3f908fe019f9833f20cfcc23f903fc7e019f808fe023f8e07f8fc40ff3f8833f1067e423f9847f207f8fcc19f9847f207f8fc033f211fc847f00cfc033f1a99d67fa933ccc957f313fea3d51f6a55f31a7069c3183d26534990c3934f8d3e236f88fe235f8a7e232f88fe331ce038c31588cb934a59673bc724235635633739738338f90f34a470437054a5324324237e3be32b7e333e2be337e27e32b3e333e23e333e33e233e37e22c2899a895211a89d21f0b0a2456484648648456484648694a648648456484582422c1211921a52159211592199219211592119211211fc5f17f95fc457f195fc5fe7f1fc658f88ef9be0b17c1df37c1df37c1df17c9df17c15df2577c15df277cdf277c5f277cdf3e577c962f93be2f9fff2bbe4ef9be4aef93be2f8ff2bbe0db96e0adb836e5b836e38e36e78d36e1b82b6e4db96e3cdb86e4f8f6e4db96e4db96e4db96e0adb836e1b92b6e0e4390cb12115c84721c84572179c87211c852195c84721486721c86721486572195c865890cb12179c87219c87219c872115c8477c5f0577c15df2577c95df077cdf0577c95df258be7cef8be4ef8be7ffcaef83be2f9f3be6f82bbe4b17c962f82c5f1e577c15c867214845890bfce4290fce43908e4390ce4390cb1219c85219c85219c872116242390a43390a42f2b90bfcb121ff95c87e721487e62898a2462891ee462890a26541f88c3e27f88c5121444f3c2144ccf4f0be4c2f93d3ccf72674cc5133dccd57a4990b061c985f217c9ff1fffbd2c4ee03f47d56cc0ffba9c6beb5d901ff59b0bf19df11f11bf1df19c9117c94922997c97c1c91b07645144c74874847ee6a25c3a4251335125133a4251335135132c5f19bf1bf19bf11f199f11f11bf19f199f19f195b07997c17c997c97c9b07307960be0cbe0be0cbe4be0b05f3e67c47c467c47c6567c667c47c4583e22b3e32b3e22b3e333e33e28457cc22be40d7caf98457c01af85f211c1e115f0b062f903c1ebe018be418be00d7c2f8062f9035f2be018be40d7c2f908af908af8062f9062f881af85f0115f006be57c8317c01af85f2115f2115f20783d7c0317c0457c0317c8457cc198380d7caf9035f0be606be17c40df13e3063e2037c6f8f08be2c0df13e3037c6f8a0c7c406f89f1031f16117c5037c4f8818f8c0e89d12c2344819448194482344a11a260ca2411a260744a894234482344e11a240744a89f06512c1944e117c606f8df1845f1845f140df13e3063e2f063e308be3063e3037c4f8f063e2063e3063e2063e308be2831f1031f142344aaf83289ff06512846897fffff08d130651354c414d45332e313030555555f2c113a6ce9be046f81a9467a1d687668aaa2a87e79a2a86d07341e6491924469329244513e39afc65f199484f8199ee6a5118a262899a94428999ee628918a262891be062891a94452118a2452199486a51191388aa1913844e9a2aa44e9913844e9a2aa44e1a2a844e9913a44e9511542b2270a1f14aef8cacf88a1f17cb0fc4585122b5123a43a43f2b513f35125132c28981d13a240744a8904e8981d12a25c0e89d1308d1203a2744c2344c1944819448194480e89d1275c2344b03a2744c0e89d1208d120651284689e0ca2703a2544c1944a0744e89c1944c1944e11a240ca2411a260ca260744e894194482344a0ca2708d120651208d1206513df03a2544e0ca260ca2613a2508d1203a2544982344fc23449ffc19a770669ce11d3b08e9c08e9c08e9c8474ef68334e230669cf8334ee11d3bedfe0cd39ff84b4e0474e3c19a737fc19a774fb7ffd1a8ac5ca3172d7853ebdc5cb2b5e0cd19b4668a2f083bc90bb3285d90ca6d29b0d1730d98e3545e10d7855e08c47023f8db3711c4a11fc32ec8bb23466cbb234668bb23172978328bc20ad7853466d19d32eccbb334674bb22c233450bb2fffbd2c4d583e9c98ec40ffad44632b35881ff5a9879a3345d915a336562e5128b9671fc8e068e28e068e08e068e31fc568e271fe8e25836733666e82c1b3959b3159b3159b39b749b3160d9cacd9ccd9cd9fcb06cc566cc566cc66cc6cffe566ce566cc566cc66ce6ce5836633666e93366367336736636e83662b36636e86e82c1b3960d98231c4231c4231c0191c4191c4231c0191c4191c0231c58191c20c8e2118e20c8e00c8e1038e11c0231c4231c4231c40e38471c191c6071c638846388463840e38c70038e31c00e38c70038e11c0231c40e3847108c71c0e3847181c718e00c8e2e0c8e2118e00c8e18323881c708e0118e211b940cb97f03b9572c2372af065ca81dcab97f832e5f03b9572c0ee5dca08dca03b9772c2372f81dcbb9411b940cb97fc1972e11b940cb94e11b940cb95ededde0cb956846e5fff09dcae12b960000001fcc2994b64d58f35b0cd6f1530d2d835b0d0220a60c31b2ca4c17e05f8c4b605fcb00bf18c303ab18eac30c98822208960c6b31040a55319544b630c6831b3195031b3200c29831534ab830a648022a0532581534c2990a60ac54c2c0532562a69602982c0a98614c05305640116031b305fc4b72b0c68b018d16031b305fc17ff2b7e3cadf92c3f0587e0df87e4df87e4f1b5fcb0bf1afcbf79617eff2c2fe6bfafc56bf95a42690a4072fa4272fa40690242690a42690242690240572f9a40901a409015a42690a40690a40690cbe690a4269024256901a40901a40909a42909a412f1a41ce9a42909a4090961202c5f8aefc77ebff9dfafde577ff3bf5f8efd7e2c5fbcefd7f2c5f8b17ef2bbf15df8efd7f3bf5fbcb17e2c5f8eff7f3bfdfcaefe77fbf162fc77fbf1dfefc58bf795dfcaefe77ebf1dfafe77fbf9dfefc58fc1fe7f057f93fcfe4b1f82c7e4aff1fe58fc95fe0aff258fcf9fe3f258fcff95fe0aff1e58fc95fe0b1f92bfc1fe3f257f83fc7e0ff1f8f2bfc9fe7f3e58fc9fe7f257f82c7e3cff3f92c7e4b1f83fcfe7cb1f8f2c7e0ff3f82bfc9fe7f257f9ffffcbf79dde6bf76bb87ef58ffffef3cf9bfdd65909587c663f127c65455e4d2641838c9224994c9221830c66c0ca4c0fa0ca4cae20e34c5632438cbc71290cbc638a4ad2642c05f0617c8c1c787124465f2c1fe7485485d3f72fffbd2c4ff83b74592d26ff796ce783199c1ff75a8a433f73512314c4212c15b9a1095b195b15b960be4cbe0be4cbe5838d838be4d838be0c6e4e30ce386e4d58ce38b071e563706370372582422c252960908c90d297cac90cc908908ac90cadb936e1b936e38c36e1b82c37056dc1b71c61b72dc9b70dc9b70dc162f9f2bbe4ef9be7caef92c5f3e577c15df058be0aef8390a422b908ae422b90cb12196242f2c4845890fce43908e4390ce4290ce43908db86e0db96e4db86e4b0dc9b72dc161b936e5b836e5b936e5b936e1b92c370586e0b0dc1b72dc95b7256dc1b70dc1b72dc9b72dc1b70dc95b7056dc9b70dcff9b72dcf9b70dc9b72dc15b70586e0b0dc1b70dc95b726dcb71e586e4b0dc7fffffffff95fc658f8fffffffcafe2ffffff390a43390e42f2b90ce43908b12195c86721c86721c85e5721796243f2c4845890cae422b908e4390ce4290cae422b908e4390cb1217fffff962f92c5f3fffffffffe58be7ffffffffcb17cd5f2c0a266f813e066289b3a462529c5265e39c50512651a4ca61c96096631294bc632f1cbc731294bc630e30ae532b8c90f3158c38f32438ae33158c1b82b0e34a8491985f04929924630798c1e3079978c71498948121184847141589486289948665210a2462898a26581448aca432c0a2462890a2456289958a27e58144cb1f17ff963e23f8fe3f2c7c5e6dc3726dcb726dc370586e4db86e4db96e4b1c79b70dc9b72dc1b72dc1b72dc9b70dc1b72dc9b72dcf9b72dcf9b72dc95b70586e0db96e0b121162432b908b12115c865890cae43fff2c486572195c85e6dcb706dcb706dcb726dc37256dc15b7256dc9b70dc161b92c372586e4adb8ff36e1b936e5b8ff390a422b908ae422b908ae432b908e4390ce42908e4290ffcb1211c8521962422c484721486721c86572196242ff2bbe3cb17c15df058be4aef82bbe4b17c95df258be0b17c9df17c79df37c95df277cdf258be3fcef8be3caef82bbe7ce4390ce42908ae42390e43ff2c48457211c8721962432c485e721c845890bce43908e42908ae43f2b90cae422b908ae43f390e432b90cb121e11a244c8532310ce157e3496d8d93103fcc48c61f831931cad5270ae8192a1276cb51950b27064a9958b034403a095cd245b3b7114c8a46353c2ce1fffbd2c4ea83f37d5cce0ff6d7c60934de41cd6691444353298d52a832342b64c8a324908d5644353aa8444a1cf46b3f9a6506a968b563fea8af41bb1a648798f1e63c898c266f07155e133b3428486c913c33670cf9a295866cf19e39485681a081a081a1e129c677e57e1a07cacd338ad120ecd23499f1de8cc44d0f8ce46e19e819c990a0fe52909c5101a089f871a3e54287b64d19551340e34117fed19e91222672049f133f1b24748b928d4a8f709b9371d2478a3a26e891e375d22fc75f375b28f33ce909bd76cecbc9301f81dc82ceab0a9713b93676594f58edb49da3bef3c2f3bb03b6b1cbdf772e8cf0b4730257481e26ecdc70de789b62ab46d344ae916a6e3981b8f916a586c6b29d8d916c6f3a6eb84df9bed5b98379ee61f52c72bd3d3dc87e821ca177e00791c393b87227f2cd69c7ddc7a067703cc3b0ee47dafcbe61fbad63ee01800661f807c0111c7079e00600181e7819600647aa47e30c10cc641634bbb8df69a30a24cd04093289c8cae19347bb8e0aea368b28d8ea232684cca8573291ccd40a33350ecc624a30995cd890738837cd083103010c969c366b18d326230e03d1b0c1a1c317908ca25031f8502c0b2c898684248150e4120d48b4e061269366e3a6e4269a868803069b4e9c149d4e930374461238afa008c638402091a80889ac8840afd213404097154d5215a622b3ded69d6804b9a641a640282a5500d598d64c98100a470c870a802590fcd274de84d350cb014ba7df57e00281aa52ce5e2c55733dceccb1da81986f825237da3552354c4d752de4b60161a862611a68063251aa618a71c381bcaa78ad160060880a19d761ac460168cb38280a22ba4826407294a76971400b370db81204d8111b8f344f102a8e2e36a8dae0369545055d5692f2ca619932e67782e235a17eb5aa3a58661da90d3b4ca588b5d4e50214d093204b8ac74401342cd035225f635d0f3639a0ba51c4e648a6f9554c0b385ced7393cb8cf34a6970a6b5ba5a6ed5a5a5d534bad56954bad5594cb6f5694cb795a354dda58cd3674b19b3a954bad56954bad5594cb7095592028b51774bdc5f541a2a0287884f4281658d330cc64c37028f90c0237c00d19e686807c2e76e46b7a60fc415882830e5341837c7077c6a1e61ac1664858156418b18fffbd2c4f28234520cec0e67178619bf8c199c3fa82898c416f157c0b2aa1a08eb2a42498c798ab00190bb440d8a34055cca2823337443517315c0a3e43008df023463a6680c44a04145d541a56555050f50c51751550e50d5165655505575344d90148c4b04b844f2580cbc28c30941d0128808c0c28a9890e38611942802e5abb7325d56e5d9a765618b8414088443052520e8c4002e3913005532a0c5b0af083a29c02e4d0e01ac3546c3805c20892c065e166015260121a3178ad6bb7265da54a5c10a804031921214708210972048e1862c885c42852520e8c4422dda0115e3427f6028360882dea6429528dc91a8ec94a92891e98050305180050a985124a81d488085970e60634c20061c54c4871c3084a5a82dfa5123ea732c0a8f2db5805575e0d11b0ae972bcbb522ad2a5c49513d288a9280bb96c32d04749fc894c24d10a7523635c282d52c08ee9955ca55d2fae14ec0c70e94c414d45332e3130305555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555";
791
- var oc = Object.defineProperty, H = (c, e, a, s) => {
791
+ const oc = "fffbd0c40003a861a6f64deb05ce8fbd1dc1ee6979000bf3230f3195138b950cbe3649439256307747d31c26065d09cfae70d799f0a043c6a90008c0101188082314680d008619c9079b61dc806a921a220095277a60d4131e44143d53814e10f4d06ba6491eb478900a8d59016632a23e0fa358875c770146cc650c1c499dcb9b0965d7500106c321427219428febbdafb2b5d76979a75ae40018d025f96f71bad4b0257666051808e5b74c34bf2db9660bb0e24b2a35886616f617013a24104242304600910b1130dc7b4e81750bb1216e880432ac0d75b0a2a1834f45e8e9a279a9c6c22cc9a7e3ac01cc5335e8c0d97180c960bad7998ce9ac025a2f1a0c888e02c46508045a96a20a60c91980100828a917425f96ddc64bc2ea19146c50b00bde68319005d85d10e462314ae197f0b48c74bfe986ced9dac3a9bbfad7e8f7ac2a525253c6e36cad4dd7c20e2ec4842dba61cbf30f0f7d628635005a66e63ec63560f22a48c694034a695617e603c12c05077310c0923018053379a48d1e921e409b28546c46619d8fa6c9b019ea20762d318e34c6291699d98662a61861204fda2a7933d57c1d023391f8605262a1598449c1ca332e084cb25a3198ac94666361b99f05c67c1aba0151b18d456ec8e0b4c667924153ba632409114cc587c7867ca8c047dcd7a834bc8d2a033a141df48ab82a803bd1a8651a215e356c6161b062114cb841dd89589b05f0d10ad255c4d70d8ad245e4abcd6b33fca8d6af5cc3db8d9244511ab2206a56c885690ad12cc1ba16308528d539daa40b22baf35eb61a7044a988132e926b754d82ea8ca85199ad5c42c0d62d35eb8d7301d56ef5b26c451748198c2a22c319b24ab67a246b186c8af0d54354c0957c342d9a2a4d7b3245e585c4d7254e107501450bb46abbfa38b2331996d9bae08953352c48af43d5c7b08b6572a44e0b11775fd8cbb2b0b0343230c6c5add2ca5ac8d549765977ff78e59659ca49adde749c6789409753bcff43d1a8d46a532da5a5a5a5a5a5a5a6a6a6a6a6a6a6a6a6ab671c71c71c6ae4141414140a0a0a0a0c2b06e0b039c1829859998b165991a5d2aa598e0a714183727471921e5721a1037a9c2fb7a1b9c0dc99c6ab19b821219de39219b82a521908908987d2ab1aab194159219cb31211fffbd2c42383f4bda0d20ffba7c624b3dd01eee938b82f149f14b82951c14d290908c90d294c90a598b0948572ce584a434a54a52b4a42c3829592199219219a52921160908d295294b1c79b70dc9b72dc9b70dc15b71e6dc37058e3cdb8e34db9e3cadb82c37056dc95f1e7c6f1e58e3cadb8f2c4845721f96242f2c485e7214865721f962422c484721c845890cb121f9c872116242f2b908e4390bfcae432b908ae43f390e432c486721c85e5890cae432b90ce42908b121f9c8721962432c484721c865890ce4290bcae432b90bcae43390a432c485e58908e4290bcb121f95c86721c865890cae432b90cae42ff390e422b90cae422b90fcb121795c865721795c86721487e721c87e58908ae422b90bcb12195c845721796242f2c48658908ae43ff390e43fff390e422c4865890cb121ff9c872196243f2b90bcae42fff2c48458908b12116243f2b90ffcae43fff2c485e5890bfffcae422c485fe5721796243f2b90bfcae42ffff2b90ffcae432c48460a40a6618626a61ce3d466883d6645657458106350e2d6321a39532150c231a421532413d3399952b690e8430cc534d4ad0638ad993418742c24072f7385897cae5e348120397e5e348521397e5e2b734cd8364b06c160d93364d82c0ea6838ea63a0e863a8e9e581d4ca0283cd5d284b050795942650143e6e1c1b87058706e5c95b9370e4dcb92c382b706e1c15d22c522ba7e574cae9f9d2a458a474a995d32c52ff2ba4574cb148b14bfcb14cb148ae99629795d22c532c533a74cae995d2f3a74ce9533a74cb148e9d2f3a74ce9d22ba474e99d2a458a674a99d3a65748ae9f9d2a474a91629962995d23a748e9522c53f3a74bce9d3f2ba65748afa9f5ea57d4b1d3cafa963a163a7963a163a1f5ebfe57d3fcfa742bea7d7a15f42bea7d7a1f5e9e7d3af963a9f4ea57d4fa752c74f2c75f2c743ebd3fcafaf963a7ff963a79f4e9fe57d7ce9d22c532ba474a91d3a674a97962996297f9d2a658a458a658a458a4574cae916299d2a474a995d22c522c533a54bcae915d32c522c52f3a548ae99629795d3f30c6831b320f483c329501f8331a98f233a001f9342646273295483d326307f03331098c307e52ae3189883d3186475630e704da30e744db320f0627329501f831040411307e4fffbd2c42383f3fdacd40ff6b68668b3dc81eeed7841031044a54318984112a8c4e641e83f26208082260fc0822560fc183f041e183f00fc183f20fc983f20fc983f20fc95896e60bf863460bf86365805f8c17e0c68ac31b2b5f8f1bc68d7fc68d7f5fcaf1b35f97e35f97e2c2fc585fcb0bf9e36bf9617e2b5f8d7f5f8ad7f2c2fc6bfafe56bf9e34bf79617f3c6f1bf2b5fcb0bf9afcbf95afc585f8d7e5fcb0bf611fc419f8f08fe7833f1e0cfcf847f308fe7833f1f067e3c19f9067e308fe7c23f8c23f9067e40ff3f8067e20cfc047f00cfc611fc81fe3f207f9fc033f211fcc0ff1f903fc7e423f803fcfe423f903fcfe00ff3f8833f011fc847f211fc047f303fc7e211fc01fe3f211fc033f011fc7067e40ff3f908fe023f808fe00ff1f903fcfe019f803fc7e419f808fe019f9067e40ff1f9067e211fc01fe3f3c19f8e0cfcc23f9067e40ff3f8067e023f808fe60cfcc19f8c19f9847f211fc047f011fc033f1067e60cfcf833f25808830881d435e33e33263062346d46d31d427b31d41d4346d3c633201d5308827a308846d351212e32267a39ea7a34b92f3221d537552f32252e2b4b8dd5c80c88c84e7a4bcb0ea9ba9e315a5e697baa644cf473da5e58220c894bcb0449a5e449612ff2c110584bcb0447991044191244160892b4bfcc88224ac882b2a4d0a114ca8114c44114ac442c089e562279588856c458633e362f3e362362623e3e3f2be23e3e32b633e263f2b88fffff2c44f95c47f96227ce2224e2620b11071310713105889389882c44f95c41c44496220ae23cae20e2627cb1127111257105889f2c449c4c416220ae24e2224e2620ae24b1105713e588838988389892c44f9c44416224e2220ae20e2223cae27cae23ce2220e2620b1105711e5712571271111e57127131257127111271313fe713125712588938988388892c4479c4c41c44416224ae24e2220ae20e2620b11058882c44ffff95c4795c4ff95c415c416220ae20ae20b11271310571271313e58882c44f95c49c4c4ff95c416224e2627fce2224e2220e2220ae20b111e57107111071111fe5888ff389882c03a18838cc99ca16b996b8501ad09db99db86c161e34cb0c730c6641d4c664f7cc570e54c570570cb08734d2b4b08ac360cb5c284c86c574c57428fffbd2c41e03f239a2e40f7370c65fb39cc1eeed980c364364c360730c364edcc360364db2d936c734f9bcd3e6b60db0d82c734db3cd36cb60adb27068399d732588319d20e7068399d20de5850f9d75405850796140575c3535335252353c32c611e1291a9e11614cd4d4cf0d4cf0948e8684e8684b14074140574058a12c509d0d09d0d09d0509d0501d050796363fcaf64af67ffcb1b257b1fe58d8f2b74375742b742c3a9baba15ba161d0dd1d4add0b0e9e6eaea56ea56ea5874374752c5096280e8680b14057405743e57407414058a12ba12ba02c50f96280b141e58a12ba12c5096280add0dd1d0dd1d0dd5d3cb0ea6eaea6e8ea58752b7537574374742b74374752b752c3a95ba15ba9baba1ba3a161d0dd1d4b0ea58742c3a7ffff96367ffffffffffffffffffffffcb0e856ebe5874f2c3a961d4dd1d7fcadd4b0e9e6e8ea58752b752c3af961d4add3cb0e86e8ebfe6e8ea587537474f2c3a161d7cdd5d4dd1d0dd5d4add3cc388588c9e8220c4b91b4c989388c58898cc5b4740c2a48c8c58c38ccb8898cc9ec220cc84c80c4b84bcc224754d4491b4c62988c63588ce2b88d2e224d2e224b0449f8f3d1a5c9719104499124415a5e6971106973aa58750d2e220d2e220d898cf8d8cd8d8cd898cd8d88ad8cd898cd8988b1c7e586336363f2c711b1311b1319618cd8d8cb0c6586236262363632c319618ccb8b8cbcbcb05c565c582e32e2e32f2f32f2e32f2f32f2f32f2f2c1796220ae24ae20b113e71313fe71111e5888388892b882c449b1b115b11b1311b13116188d898fcb0c66c6c45862363632b632b63ff2c319b1b1796224ae24b111e711125711e5713e5713e58882b882c441c4c4f9c4c4ff9c4c4f9c44495c49c4c416224ae24e2224e2627fcae20b1105711e5711fe7111071111fe57125713e57106c6c46c6c45863f2c3195b115b19b131796188ad8bcd8988b0c45862363632c319b1b19b131f9618bcad8fcd898cad8bcb112571257125888f2c44ff95c495c4ff95c47f96220e2624b11258882c441c444ffff96224b112571257105711e588838989f2c44d3045045310b0a932632e232630623562062316226236620e32c1b198850229885919194a88598220e81fc431160623589e23588622b18cde2988de3788c63588fefffbd2c42083f3559ee80f774bc682b4dcc1eee9782388c6278cb0b1161623388e32b588ac62398d633188632c0c46318c66319c46710c66310c66b1ac66318c46310c46310c46710c6563118c431f98c63199c63118c631960e3f318862f2c0c7e6310c45818cb031960622bc678f1163196319e3c658c478b1163179e2c658c65788f1623c58cb188f1622bc678b115e33c788f1623c58caf195e32bc5e71221c5885710e24438914ae29c58a71621c48a588a5714b110e2c438910e245f38b13ce2442b8a71621c58a5889e5714ae295c42c442b8a5713cae29c48858885714b110e24538910af115e22bc658c478b17f95e33c588af1ff9e2c678b19e2c678f1163179e2c478b1ff95e3f2c62f3c78fcb18bcaf196317f95e22bc7e5788f163f2c632bc5fe58c678f195e22c62f3c78bfcaf1163196317f95e32c622c633c58caf11e3c4578caf1f95e32c633c78bfcf1622c632c633c588b188af19e3c5e58c658c678f11e3c678f17ff96319829829986109a99a6b1319ef03a19ef0cc99150cc195d8cc99a683a18730f598ca89e99a615d995d2819fbecc9d755d95c54698a626980d26559dc71520c68357471520c6cc33075d8ea63a0ea68345468320e63a0e875d20c683a0c63aa0fe5841cd98664b0831a0e8318ea3a95a0e563a160752c20e63a8e86838e858418b03a160753148523309353148c22b14cb02918a42918a629160522b14cc5314cfaf52bea7d7a163a963a1f4ebe7d7a95f53ebd4faf43ebd0afa795f53ebd4afa963a1f5e87d3a963a15f43e9d0afa79f4e858e858e858ea57d0afa963a9f4ea7d7a9f4ea7d3a9f4e857d0afaff9f4e9fe7d3af95f52be858e857d4faf53ebd0faf53ebd4afa1f5e857d4b1d0afa9f5ea7d3a7963a15f43e9d0faf52be87d3a163a163af95f52be858ea57d4faf5f2bea58ebe58e87d7a15f42c742bea58ebe57d7ffcfaf52be9e7d7af95f5ffff2c75ff2be857d7ffcb1d0faf52c742c742c753e9d4afa95f52bea57d3cb1d4afa95f52c742bea57d0afaff963a95f43e9d0afa7f95f53ebd7fcfa753ebd3cafa15f42c743ebd4afaf95f5f2c752be857d7fcb1d5508000160382b0e0d954f0d94654deb7acc397acce7d10dea4f0d4b2c4cb02c4d311a0ad3134c0aa34c4ef33b8ab3059193460b03fffbd2c41a01f0c5a2f0aeeb34c619359dc1dde6682c04b32403834f43832403932443930e03932403932413c3240392c070648072561c9870489a7a48161c1b972587258726e5c9b87265e51ca2c65cb9cb2e65fe1cb94565ce59634a94ad21a44a584869529a4485694ad216129a54865cb1972e72e51962c65cb1972c565cb05ccbcb32e5ccb162b2c56b79acb1acb1aeb9acb1aeb9acb1aeb15ac6bae56b15ac56b15ca72485894e590e490b1295ca5894ae52b90ae539252c49e724a5897ce494b121cb2f9cb21cb29cb21c9215ca5890e497ce597cae42c4a57215c85894ae42b97cf9e4f9e3cb1c15f1e57c796393e38ff2be0f9e7caf92be0f8e4af92be0b1cff96392be0f9e0b1c15f058e0b1c796382c71e7cf3e7c7257c95f258e4b1c95f1e58e0af92be4b1c1639f2be7ce493cb127f9c9215c9e5721c9215cbfe72ca5893fcb1279c921cb29cb2f9cb29cb21cb29cb295c85890ae42b90ae42b93cb12795c857298701c1609034f2413901eb3094683091733344d033e0d132acaa34c4ee30957434c1313244382b398d3c4f0ace730e13d34f53d37ac3937ac3830e4382c07261c870648a786ca27a580e4ce244e44e4ace4ce0e4ce240ce240b072723226727058382b90339392b382b382c1c99c1c9c89c960e0ce4e0ce4e0b07067273e6727258392b38ff2c1c19c1c960e4b070670705838f2c1c19c1c99c9c19c1c159c159c960e4ace3ce44e0ce4e3fcce0e0b07058382b38339382b3933839396439252c4872ca72ca72ca57295c872485890ae53964f3965f39242c4be58e4af92be0b1cf96383e783e383e382c727c707cf07c727c73e58e0b1cf9f1c15f058e4f9e0b1c16382c727c7257c95f07cf27c707c727cf257c9f3c95f258e3caf83e792c73e58e0b1cf96392be0af92c7057c9f1cff95f058e0b1c16382be4f8e3ffcaf82be4b1c795f057c16383e392be0af82be4af82c71e57c796393e392be4f9e7fcaf9f2be4b1c795f3fe7c7258e7caf93e392be0b1c79f3cf95f257cf95f1fe57c79639ffff2c70a0800079603ecd71612cb09de71381f66aac420687e4226650cdc6176680617668061769dc58268332932930fb211343e211355621032115563328328343f0fa30fb0fb33280fb321021032112102b43e32112112b329fffbd2c42b01f3f1acdeaf777286a1355cc1eeecf82c1f467d1f5e7084207081f456c895977e65db2265d32265db207081f4583e8cfb3efccfa3e8b07d960fa33ecfb3fbfa2bfb2bfa3fbfa3fafa3fafb3fafb3fafb2bfa3fbfb3fafb3fafa2c7d963efcafe8fefe8b1f5e58fb3fafbf2c5d1dddd9dd5d1dddd162ecaeecb1747777477574577458ba3bbbb3bbbb2c5dff963ebfcb1f657f5e57f457f5e57f5e58fbfff3fafbf2bfa2bfa3fafaf3fafbff2bfbffff2c7d963ecfefe8fefeffffcb177e577658bb2c5d7962e8eeeebfcb17458bb2c5d1dd5d962ecaeecaeecb176577458ba2bbb2c5dff95dd15dd95dd1dddd7f95dd162e8aee8b17658ba3babb3baba3babb3baba3baba2bbb2bba2bba2c5d9dd5d15dd1dddd162e8eeee8b177e7f5f7fe58fa2bfa2bfbff3fafaf2bfbfff2bfa2c7d9fd7d7963ecb1f47f5f658fb2c7d163ecafebfcfefe8afebfffcfefecb1f5e57f457f7e58faff3fbfaf30e326333624e333632e231d546d312e1d530a8233323210b36ac7a31ec7a2c4f46eaba86318c46f18c67719c47315c6631ac46f19c658754c89224dd4c84f204bcc894bcd2f4bcd2f224e7a4b8ad2f34b8893220882c11056441a5e44191297160882c112644113e711125712588938989389893898838889f38889f388882b8838989f2b882c447f9618cb0c46c4c658633626336262363622b632b633636236263362622c319b1b19b1b19b1b195b179b131f9b1311b1311b17196188ad8cd8f88b1c656c65862363622c3195b115b196188d8d88ad8fcd898cad8cb0c45862363622c3195c415c495c416227ffcb11258892b8838989389892c441c4c416224ae20ae23ffce2620d8d8cad88b0c656c456c658632c31f95b19618cad88b0c5e6c4c66c4c7e5863362632c319b1b1f95b11b1319618cd8d88b11058882b892c4416224e2220b113e5889ffff2c4479c44415c415c4ff96224e2620b11257125710713125712571057105713e58892b88f38988388892c441c4c4796224b111e58882b882c44f95c416227ce2624b1105711fe58882b882c44795c4ff96223cae20ae23ffcae26f331e433b76dc30b95e3a3df73449133dd72835791335782f30bd1236a87a37d8c730b8c630bc7a331c2e357df730b82f31ec7a30bc2f30b87b344daa3fffbd2c41e83f005a0ee0eeb3706ce341c42bdd0003187a31e8c730b82e2b44ccc60b8cc61e8c7a31cdaa1e8b03d960c731ecc731ec7a30bc2f2b1e8c2e1e8b03d1ae5c6bbd16171ae5e6bbd15ae35cb8d72e2b5e7e97161795ae35ebcd7af2b5c6b979af5c6b97161795ae2c2f35cbffcd7ae2b5c56b8b0bcad715af2c2f35eb8d7af35ebcd72f35cbcd7ae35ebcb0b8b0bcb0b8ad79ae5e585e56bcb0b8ad79ae5e56bfcad796179ae5c585e6bbdff9af5c6b971af5c6bd7962e2bb8eebceeb8aeff2bbcaef2bbcb1795de58b8eebceeb8efbcaeffff2bbceeb8efbcaeef2bbbcaee3bef3beeffff2bb8b171df7962f2c5c58bfcaeff3bee3baeff3baf2bbceebcb171df795dc775c58bbcb17962ef2c5c77de58b8aef3bae3bae2bbcaee3bae3baf3baf3baf3bee2c5e77dde58bcaefffff2bbffcaef2bbfcaeef2c5e577ff9df7962f2bbfcaeef2c5de577162ef2bbcb17fff95de577960360c731e34da20e50cb58e4cd688b08d2b0734e5d9e30c730360b03306576576658639a61ae76c639a76c6b40958561b2695a76c561b0639a5847db58458360adcd2c58666c9b07615846e6d8658364dcc730dcc730cd8730acd83364d8f3361cc2c1b256e6959b258360acd92c1b1fe66c9b06e69b066c1b258364c741d4c751d0ad0631d47431d074f2c0ea63a8ea63a8e8563a160d83360d92b360acd82c1b2566cf99b06c99b26cf99b06c99b06c98e83a1607431d10631d4742b1d7cc751d0c751d0c741d3cac752b1d0ac752b1d0ac752c20e63a0ebe63a0e8563a18ea3a98e83a158e8563a958e863a8ea581d4b03a958e863a8ea63a8ea65094058284aca0f2b284ca1287fcca1287caca1ff3280a13284a1f2b280ca0280ca0280b0501594058280aca02c1405650960a02b284ca0280ca0280b050160a1f3280a03280a03280a1ff3284a1f2c14265014258284aca1ff3284a1fffff2c1b3e58363fffffffffffffffcacd8ff2c1425650194050799425095942565079940509594258284aca12b283caca13284a0ff2b284b050160a1f2c1405650194250960a0f2b284aca12b283cca1287fcaca12b284b050da03028040204010140a02010080300640ae302500803053c24f30d7c2a930ca42cf31c4921a300f0001300c4005305cc04f303cc03e34620fffbd2c41c003485d91db9ff00062e346243bfd000a9035bccab50300ac600d80006071010c603180c6611a82666027812018002a546032072608a05e690660a6330a28160074dc46f0c033306302b302a06234f02603428582329635f2eb1698880854e0c110038c168038c094064c008008d454d7cc660a5cca5c1d4c4f03899c459a1b8ef3180e80e98018048b009ba542604818c60701ba620e09e60de09e0d024120006cca729e4ca5b2baf182ea7acba030220082203b14028160104972b0109332164c5a76aafeb228dc6dd359e5dba0a2ff2c00c182d01c182d03d180c00c980c801c4eebff1779ae3fb76efa7ba8ca8927c39707a7a27c79803803958039803803980380398030031583a983a04c1583a45e2f14a771593bcf4b7e24f32e789492ebff72f45ee5ebc61540c4603207e180afe17007f53b0c00e4c44c60c00c8c50fd0fffd050d050d1c65d6a2ffffa251aa27c567d0fffffa219580133ba3f75e3292edc1863a4ea46dd474fffffffffffffffffffffffffffffffd4f980d0090981280b6984e00481848a1621869a25d18f32518198f263d19bd283d1a7d2d1b1b0fcf639bcf8c85987b8ff61db16c151d0749fb9cd72df399c764769881e1d19834809d9862389858ce9c5ca99b38cc9a0c149986cd1bcf161d83ce1ea3a91bc8f1997c611a16ce1bcaf21c32d31ade9b19160f191c9a9a68b599fa7d1986450b14e60e03a6271126471166450aa62a03a60e03a60e8a464698867d9f867f99062a83660d0403a0e98300e98a029983e0d2439810069810029810069818068602a8ab8ab3a01500a912a95c5987095b948b016d5fdb3ff4b0ee54255006ed19788c17050c2d0b8c49128c320c41c18a6f1728b945ca4e29eeef1fe56c8a800980801980402d79dc7a4a01980002980804980c03980c02df30180530902530880542c301402309446311448311c4830982528014c03000c23098c05008c05022b592500e2b477b0ffcea5d66d967ffffffff94b20c5dcb0cc4989356a6d779ddeb2ad6b755f57765b2996dda596d3bf38d6869da96d9d53434ef4ba1a7fa3384aa5d6bf2ab19a6ea300c013730b805f33126021130cb4230301a424a304f4122302905f9309b01e5308bc0253115c16431c9c4aa319809b1348b010e360fddfffbd2c41b83e62974fe0ff1f1056daadc81ff69e01033cce9a13e9998033720c8e03095404e3043c257309e00bd30074315306a01b93964c434b07666b9b5a486915398b4c4670561abd5a6ab341a9c58670859b40ea6965b8aa08c26b43291e438b21c5630e828906a18255402a4302824c4020012f82a2415279830b466f22268084188a8850f8238c0276895daa096a1e4406a530a427eb58491f081545ea7a311caba0d9712c06c2245b452039921093ca2624399cb1b2c29eb96a1f6c6b339233293c2e2af1b85c542519395617227c748270778c241b5976196923c2e27c2ba5fc4c49b6b75f582ca7ea3735ffffe0ab665746b4266378e2dfd7fffffffffce36c31231de4bfd191ff117fb8c19504f0c09013dcc8583304ca622984cb0e2c3cd17e039c8a86738190f763626173e280ca4e36eeb34d7401280e67a692ccc6a3708d58face8f60fa0b0e9df6268c2ee3714d7e9284d281eb4c64d280d7ecbbcac398c654a60c39c654c650e70d285280c650650cbbc650b032a63283286532530632a1ce61cc32a561cc61ce32863281ce612012061221206072070607207058038f2b03930390903d094d26834fa4ad216349a44a7a741e9d06952f95a42b485694b090ad2ff9a548695214492c25f34893cd3a62aa434a93cad29a548584869529e8485694d2a434890d22534a94b090b094d2242c2534a90d3252b4a5690b090d2a52b4a691215a534890d224f372e7fcb0e0b0e7ffcadc161c7fff95b92b73fffe56e3cadc7e5dffff372e3ffcb0e7cb0e3ffcb0e7fffcadc161cf95b82c382c382b70587058726e5c95b9ff370e3cdcb8f2b7058725873dff2c38ef9b871fd3a21dfffff65f302a03bf3183c6d2327a41d139209453312084833623919f370206d535458e2633ec4e26388c9fe23a48b6a13da898f333712b75337150153ed089223371145331208dc430be454831cd84203042842030be442035b23231156d2c15065408a685216685088685216568515a14685a1665408856541888549950229a1622959715bd15bd95bd9973d961eccbcb8cbcbcea510b08858452ba8345453444434444345a9345452c2296114d1114ad14d1110d1514d1110ad10d1514b08a575258442c549a2541a2221a2a29a22296110d1114b08868888584434fffbd2c46c83f3bd56de0ff77085de2a1ac1fe6e4054534445344452c2215a21a22215a29a22279a2221a2229d4a296110ad10b08a68a8a5844f345442ba82c2296113cd1110b08a568a68a8be58442b45f345452c22f9a2229a2a2f9a2a296110d1114d1514d1514b0886888a58442b44f345442b442c229a2a296117fcb089e68a8a5844f2b442b453454434545345443a844345453454434444344a834445345452b443a94534444344452c221a2221a25416114d1510ad10d1514b08868889fe568be68888568868b5256886888a568a68889fbf9dbbf45c58018cc0620d8cc4e31388c3620d88c5630d8ccde23388e1e2878ce6e33d88d1e32788d3e24f88c660a18cdae32788c9e2358cd7625d8ce1e2358cef62e58cd0e2438cc6e2358cd762438cc6e33588c9e31b8cc3620d8cc162178cb00b1182c60b1182c40b11f8dc456e33f1388b1e3371b88ad8cf8b88f8f8caf88d8f88f8d88b0c65862363e32c719b13195f196388f8d8fcf8988b1c65863363632c3195f115b196188ad88d898bcd8d88d898cb0c458e32be32c3195f19b1b19b1b19618cd898cb0c47c4c456c66c6c65862f36362363632c3115b115b115f11b1b19b1b115b11b1319618cd8d8cd8d88ad8cd898cad8cd8d88d8d88a310b0c46c7c66c4c456c66c6c47c6c66c6c7e6c6c458632b63362622b633636336363363e2f363623626336363ffd15b1f9558cb0c47c4c66c6c458632c31ff9b1b17f95b11b1b17f9618fcb0c458622b632c319b131f9b1b115b115b17ffff9b13196188d8988d8d88ad8ffcad8bffcb0c7fffa363622b622b62fecf95ff2aaf2c084258217cce061080c9c9655cd3ae3270dd952720e33eed24e068381cc4203dc0d957381cce0781a4e33eb494f70aed24cf704eb8cf701080cf702cc8c6f45a0cc2b7217cc9c81bd0c58b0ad8c58a0adcb02109829a2101829815b188400a61d6ca69a9b5b9554c35314c35314d2b3eccfa3e8cfa840e103ecb07d99f47d19f67d962102b3eccfa3e8cfb3ecacfa33e8fa2c1f6582efccba2e8b05d960ba32e8ba2b2e8acba32ecbb2b2ecb05d9597665d17665d177e582ecb05d19745d15974582e8cbb2e8acbbf32208832252f32208932252f32208932248834b88832252e2c11064411064491264425e64411206bfffbd2c47903eab9a2d20ff6b3471eaa5801ff5a38ac804576115d84577062ee0c5d81ae97606ba5d8457581ae976115d01ae9740c5d40df4fb037d3ec22fa063ef08bec22fb063e818fb063e818fae06fb7d01bedf606fa7d845f406fb7df06533c194cfae11a6ffffc234d81d369947ffffffffffff06110c1f907e0c1f81044d4c44abce14c8534d8f25314c1f820f0f62f7cd8ce8395f0d2af6c24df37e970f2038d90c413a6a0e14fc808e9a763d4f204c80ce3642950ce821038ce801044c4114abcc40e1898c4101040c1f91040d89f1acf1a9898c7e5898d89c7e4ae0f0f1aa0f0e0f5044ae0f0e0f5044d0420f0c7e5040c7e07e4b0823e63f282056c4e5541134101f834111f831f91f82b1f934114102b1f834114112aa08941f898fc2089607e4ac7e0d0407e7cc7e1044b03f05682056823e68203f0581f831f81f92c20818fc8fc98fc208f98fc0fc1a080fc98fc8fc95a0879607e4d0407e4c7e1040c7e47e4b03f263f03f0563f263f23f0563f0563f063f082063f03f063f03f063f23f263f23f0581f831f81f92c0fc1607e4b03f068223f263f23f268203f3e63f03f0584102c20898fc0fc019f93f00c3f2e113f2113f3033f27e0227e4187e4227e4227e4187e00e089f908c11061f9061f806410033f27e2067e0fc819f83f1819f93f0067e4fc830fc830fc419040187e3033f27e40cfc1f8061f9c227e00cfc9f9061f8061f8091f9033f27e4187e40cfc1f9033f27e2113f0067e2084187e2113f2113f00c823830fc830fc7f7061f8844fcaffffdc9d9fffffd75f317f31b37f117f34b7b29398c65434b665534da7572c30c9a6dbab1a6d12f1b2acc61b2ad949bf832a198d32a1b2a6629d947fe9b2a0bf98bf25b192f30c99ce12f989092f192f12f1612d8cc68c6cacc68cc6c5fccc685f8b06366636634663496e66362fc6bf2fc6bfe346bfafc6bf2fc6bf2fc585f8d20978ae5f3485202c4be690a406904bc5690f961213979212c24272f240690242569096121348521348521397d203481203485202c24258480ad203485212b484ad203485202c4bc56909a429095cbe5897cd21480d21484d21487cd20978e5f484d21480d20484ad203485202b480ad212c242569015a40690a40690a42690a4058484ad20ff348520348fffbd2c48183f27178ce0f76b545f6b61a01ee57205212c24258480ad213485212b480237e065f8237f81dfafc077fbf4237ec197e832fc0cbf832fc11bf611bf032fc11bf832fe0cbf832fc077fbfc237e065fc237fc197e03bfdf8237e832fe11bf01dfeff065f8237f832fd03bfdf8237e846fe11bf832fe11bf846ff065fa077ebf81dfefe0cbf832fdc0eff7f065f8197fc197f065fc237e08dfe0cbf60cbffffc197e2c0bf18bf0bf9bf859418bfa5b9d9418d15d941a6da6d9a6d44a18bf8bf1598d1961ad0986cad01890a6d9b0c9ce992f3ab9596198e69619a5606c18bf18d961954cc6d2dcb096c62fe2fc696c63462fe2fe62fe96e62fc96e696c2fc66342fe5663466342fe61b039865861b0561b261b239a63981b2581cc31201202b1202b1202c09018908909589015890992f0901f35b0586c1b65b26d86c9b61b06d86c95b63cadb26d96c1d72ba6a1ae95a87cd40a13aea80eb8a12b501a854275d5095a84d42a12b6c9b61b056d82b6c161b06d96c15f33cdb2d836c364db0d92b6c9b65b056d8390484e4120390c80ae427209095c83fcb120390c80b120390484e4121f2b901c86425890162405721390480e41202b90f95c80ae407209015c80ae405890f962425720390484ae40720901c86405720390c860cbf846ff846fe11bf846ff832fc11bfc237fc197e846ff81dfefe11bf832ff832fdc237e03bfdfbc197ef846fe11bf832fffc237fff832ff81dfefdfffff065fff08dfa0cbf2af2c1611a561619ad086c1bc6256986c0e698e61db186c2d0991503a991528199ca96bf995d8cc183a95d98cc883959ca996b0ae18500ae18ae8ae18ae10d99ca05098ae0ae158e6186c06c996186c186c06c186c86c1586c98e686c186c86c986c1611d71406a1501a86b858501a82ba56a02b501a854258509d71405850161426a0509a8543e6d86c161b256d836c363cb0d8ff2c363cace9e5883f99d0ea583a959d0cea7433a1d4cea7533a1d0ad43e585095a84d40a12c280b0a02b5095a83cad41e56a12c280d42a1350280d42a0350283cb0a0350a80b0a0350280d40a02c284b0a0350a87cd42a02c284b0a12b3a19d0ea7073a99d0e8583a99d0ea6743af99d4e86753a99d0ea567533a1d3cce8752b3a160e86743a160e9e6743ac1fffbd0c49001aae194d80f72b58554b59a95eed5a08d808b600db0d9c22d906367831b1c22d8c22d8fc18d808b620c6cf063660c6cf036cb66116c01b65b2116c7fff08b67831b3ffffc18d8720624024262422406caa96c696efe06634fe0696e2fe584b6f32c269733b61cd32c30d831cc2c2375639c339c120339d4da2bb08ec2364dcd360e5e480e5f978f9c97cd2197cb0901f3a909f39ce15cbc6904be7cef386904be572f1cbc909cbc909cbe90961202c24258480d21480232106484192108c80192008c800e4320064840db1cc036c36418d981b65b2116c7845b006d86c831b20c6c045b0116c81b65b2116c01f31b00c6c0339a0c6ce0c90046401190e0720900464184642119001c86400c6c831b2116c831b00ce6045b006d96c01b65b2116c81b61b006d86c831b006d86c031b206d86c81b65b006d96c045b00c6cc0db0d881b65b006d96c01b61b20c6c845b006d86cc0db2d90636606d86c031b308b6022d8036c363f06487fc1921846400c90c192084643e0c907c1921ff064842321fc2320c1921c2320e0c9083241c1920e1190ff0648383241ffe1190552b188b0719f7f4a1eb57c15bc66b19c46e821474a4645719988ab69bc4b11ac4311dc4b11cc47198c4b198882219502296045338ce33589622b388d62188c6338cc6318cc63588b071195222995222195022160a832a04532a0452b110ac4432a0442c08862208a78b1f95e23c58fcf1633c78bcae2162215c42c442b8a588a588be71221c58a716295c538b14b110b114e2442b8be5714e2c538b10e24538b10ae21c48871227f9c58a7162162216221c5885888712216229af5de585e6b9715ae2c2e35cbcd72e2c2e2c2f3f4b8b0b8ad715ae2c2e2b5e6bd715c42b885710b114ae29c48a588a588a58887122ff95c42c442c45f2b89e5710e2442b8bc238e11c611c5e11c5f08e3f83310331ffff8471047160cc708e3c198c238c19881988238c198e0cc7833103318471e0cc508e3f8331c0f1e3e0cc611c7847103314198e0cc5066308e3e0cc41f2c1e6a5119a1af08bc29b0f2a7b986cca7b194d8c3c98dd06f719b1a90d9a4346c69a4366c619b1a47f1ef71b39b74ef71ef76f71a08e3598fce351a08a081bc6bc61f9a79a953cd4de33cd7cde31e34a79a8de37cdfffbd2c4d083a94daee40eea974694295845ff597a0d1c3634ad1c0e3ff630e3f91c0d1c11c0dba0d98cd9a9b0cd98d98dba0d98cd9cd9ccd9cd98b0dd3e566cfe66cc6ce586e9f36e9367362741136271f831f81f9f34101f82c20898fc8fc1a080fc1a088fc18fc8fc04638846380323884638c191c0231c4191c40e38c71064700647108c7003530a640d4c29903530a600d4c54d08a9803532a6418a600d4c54d03532a600d4c29981a98532075314cc22d980db3367831b3831b381b666cc0c6cc06d9db381b666cc06d9db3045b3845b381b666cc116ce0c6ce06d9db3c0e384708463804638e118e0118e0118e2071c63881c718e0118e3f08c70038e11c00e38c7108c7008b66036ccd9c0db3b67c18d9822d980db336608b6608b6708b67036ccd9818d9818d9c0db3b670636706366036ced9c0db3b6606366845b381b676cfc191c2071c238f08c71f846380323801c718e384638c191c3c82bb45762bd6a189200a0f3144ca433d6cc69c36b368403455f43b3455ab8137c0e4323674ca4235040d5636b2cd573290d4a32a9ee6553dc8df03144ca294533f88be230f8d3e330f8c7e333dc8a4333dcd9d332908a4332908a423144ca423144ca433290851231448513314494a231448f7233dcc5133290c5122c0a24587e3d95bf1960f8ccf8cf88b07c4583e32b3e22b3e333e23e333e37e333e23e333e33e32c1f199f19f1160f8ccf88f88cf8cf8ccf8cf8cb07c4567c6583e333e23e237e23e284e898328981d13a2611a240ca2611a2508d1281d12a260744a8981be27c6117c4117c606f8df101be27c60c7c407f89f181be37c606f8df101be37c6117c6117c5063e208be281be37c5063e3037c6f8a117c581be27c7831f181be27c5063e2ff81be37c5f831f1781be27c4117c6117c40c7c4117c406f8df1c18f880df13e2063e2063e208be308be2845f1c0df13e2063e2037c4f8b08be3037c4f8fc1944c2344ffe11a27ff06513e11a270aa27fff08d1303a2544bff06512f065128468980001f961a0f32f89be330f8cbe22b674cd4a3528ccf727c08d4a25288c923183cc9221838b0ce9194867b9997c67f118fc69f198fc63f19b07b071c914919b07c91963f88a1f1cdf88f8cef88f8f46d3baae7aacd386d39aae6a254867487486fffbd2c4f0002ff59cc10ffad486bcb35849ff59b3574846a24a26574866fc67c667c67c667c6fc6583e233e23e22b3e332f82f832f92f9360f60f32f92f92c17c7960be3ccbe183cb05f265f2c1e65f25f065f0c1c56c1c582f832f860e32f82f932f82f8035f0be40d7ce0f035f0be7062f8062f9062f808af981af95f2115f006f8df1c22f8822f880df1be3037c4f8818f8c0df13e208be2037c6f880df13e2037c4f8822f8c18f8c22f8c0df1be3037c4f8a117c6117c40c7c60c7c708be208be208be2063e3063e308be208be3063e38317c8457c40d7c2f808af808af808af9062f9035f0be422be018be00d7caf9062f98457c81af85f1035f0be422be206f8df1031f1845f1045f1831f1045f101be27c7831f1031f101be27c7037c4f8c29f1818f8e06f89f1831f101be27c7037c4f8822f8c0df1be3ffc1944e0ca25f065120651284689fc1944cde666d451e74c692cb86aed3354ea7b2cc5691998436ef2c2dbe749e0b946bc1af0868cdd2784d19c1de4b1aa9bad88cd958dd05853d0c4716ce4cd8c23fcdd6d2ec8cbb275b4cbb31728c3671ba0c3671ba0c3661ba0c36545ccc36445ccd1731ba0c6e90d98b03c619e6a79a98f183c616078b2c2335af2a0b96565d91c7fa38144701611c0d1c51c3cd1c51c4d1c11c4ae3fb9e568e1fe58471336636636e9366e959b3f99b31b3959b399b31b3959b399b31b30323840e384700647108c700647006470c231c4231c606d99b3c0db3b6608b67036ccd9c0db336606367036ccd9c18d9c0db3366036ccd9c22d9c19ba40db3367064710647008c708323840e38c7081c718e0071c23803238832388463881c718e20c8e00c8e308c7108c7106470038e31c00e38471038e11c00e38c71038e31c60c8e20c8e0071c23881c708e0118e0118e20c8e0118e108c700647108c70038e31c70647108c7108c7008c710647106471064710647108c710647181c708e30647008c70c231c00e3847006470038e31c3065cafc1972ff832e5ff846e5419e3613f1bffffe11f19ffc19e33c23e340cf2c13a66bc22f044e35599b1a90d1bf8cb549bad85d91af091aa938d5665d997666b549b1866c6ad5268ce233468cd233651785150bb22b172cd19b5e10cf343cd4ad6de33cd4f3533cd078c2aa78064efffbd2c4f003b1c9a8c00ffad4867d2b97c9ff5eba9a783a34f013c12a93a6513c0993a64e9993a49e09549d32bbb235cbbb32b5ca2c2e515ae595ae59a38c7f1a382381a38a381c7fa381a38a389611c4a238fcb08e2584702c47f1a38a381a382389a38a3895a389c7f47f79a38238960a64ca61530ca65534ca64a60d531534b053058298354d29932982992b29932982992b2992b4712c2389611c4d1c11c0ad1c0d1c51c0d1c11c4ad1c4d1c11c0d1c51c4b08e068e28e268e28e0568e0568e068e28e2584702c2389a3823895a389611c4d1c51c7cd1c11c4b08e3e568e0584712b4702b47034714712b5ca35cb5ca2b5cb2b5cb35ca5ca2b5ca2b5cb35ca5cb2b5cbff2b5ca2c2e59ae52e57f95ae5161728b0b9456b9656b94585cbf2b5ca2b5ca2b5ca2b5ca2b5cb2b5cb35ca5ca35cb5cb2b5cb2b5cbff35cb5cbff2aae56cb0b95fe56b95fecaba05d4123552674e3bad48a9d373031554e1127497febaf30f887e332f18e2831290966285e38c9662f1cc5622b8ccae51ce0cc394994ac60e30e385623158838d3158c90e3243c90e31588563312904a53090c2422b1290c3e21f88c7e20f8cc3e33f8cc3e32f88b0307958c1c617c8c1c56307187c41f19607e230f8c3e230f883e32b0f88b01219848625215848658090cb0121160243f3e3db92c71e586e0db96e0adb936e38e2c371e56dc1b72dc1b72dc79b70dc15f1a586e4b0dc95b7056a69a9aa69a9b5b9a9aa69a98a61a9aa61614c3ad94d3532b63adab735314d3532b636e5b836e1b8f2c3706dcb706dc37056dcf9b72dc15b70586e4adb92b6e0b0dc1b72dc9b72dc95b726dc370586e0adb92b6e0b0dc95b73e6dcb706dcb726dc373e6dcb70586e7cb0dc1b70dc9b72dc15b73e56dc1b72dc7961b82c37256dc79b70dc161b82b6e4adb8f2c370586e4adb92b6e4db96e4adb82b6e4adb82c370586e0b0dc95b726dcb70586e0db86e3cadb92c3726dcb726dcb726dc37056dc1b72dc961b936e5b9f2c3706dc37256dc7fffffff063e30bcc78d1e34c5cca4f0c5cb8d54de87b760cf3598c4e3555e08dd6c172cd6dd3cd4de8698c0db374868c4716cdcc5ca75b0c5cb1728d19a4668cd8c23fca1b1b323fd6a932ecd19a2c0b946bc1233462e5233a71fc8e271fe8e268e11fc68e2fffbd2c4f081f03160cc0ff6d7863fb5d7d5ff5a2a8e27e69e6be56f1a7e69e69e6f1af1a57e6bc2b78dff3471471347147034704703471470347147134704703470471347147134714712c2389a38c7f1611c0d1c51c4b11fc68e28e0584712c2389a382381ae52e51ae5ae51ae5ae59ae5ae5945cb9ae52e596172cd729728d729728b0b9456b95e157280772ae5846e5046e5c1972c19728237281972bc0ee5dcb832388463881c708e2118e0071c23801c708e0071c63801c708e2071c23801c718e0118e00c8e2071c23801c718e2071c23804638e11f1bc19e330af1bee0cf1bc23e3423e31a0cb940cb95c23728197281972b03b9772ab065cb08dcb065cb708dcb08dca581dcab940cb940772ae57d5fe0cf1908f8de0cf1a15e3411f1a15e35fd55423e3611f1b5419e317f5e11f19f08f8d0678c833c6423e33f0678d81f8df1b5f33a38e8f3e1d21d43b49168319d0eceb83d0ece2c92270d155ae00e1856b28c69d355ccf736748c513290cda0f8b20eb808b24a844e99ee65219a9462891b3a65211c59044e9b41e44e96115532275155d151d3a33a38e8e33a3ce8f35a08b3232cccb3228599ccb322ccca8b419bf1df119f11f199f13f11bf13f1143e2161f88b113a5589d389c89d2c44e162270a44e3cae270da75a70da71a74b0d3a6d38d3a6d3ad386d3ad3856d3be56d3856d386d3baae56d39e56d386d38d386d3ad3a5355c56d386d38d39e6d38d3a5869d369c69cfef95b4e161a77a56d39e5869d28d3af2b69c2bd56f369c69d2b69c2b69d2ab4e1b4e34e1469c1b4e34e95b4e79b4eb4e961a77cda71a70da71a730369c69d2b69c2c34e7961a70b0d3851a706d3ad3a56d3a56d386d38d3a5869df2b69c3d5669c28d3b2c34e961a77ffcada73cada70a34ef45869c2b69cf2b69c2c34e95b4efe8ada70da71a74b0d3bb2c34ef961a77ca8d385869c2c34eecb0d3857665ffe58b322c599fecb16645766658b32ffe73fcb166657665e7665666766766458b32f2bb32e313316f31e1f6ee56bfff9beaf3144a96237c0851329f118e4335288e4333dccd9d35288d9d22908cc38248ccf4e183cd4a32908d4a3a588d4a33dc8c5132908c513528cca42528cca433dc8cf72290cca425288ca43290cdf03290cd4a2290cc5133dc8c512fffbd2c4ff03f49152ba0fffc5c651b59801ff5a901448cf72290ccf733dccb07b999484a511948428998a242891948628916144ce90e908ad448d44d44cd44d448ad448a2894b0a27e585123513a432ba42d95a8916144fcd44d448a8a246a24a266a24a2452909e58513f849f1c22f8a117c406f8df1831f1031f101be37c607f89f1845f1831f181be37c6117c606f89f101be37c606f8df1031f101be37c508be2037c4f8e117c6117c508d1308d1203a274482344b0651306513065138468941944c2344c2344a0ca260744a8901d12a270651383289c0e89d12f83289e0ca258468941944c1944a0ca2508d138468904689b8468941944e11a278328901d13a260ca2583289e11a2781d12a24f83289832890468984689032898328942344c1944e11a2706513f83289c2344f06512a8234481944a0ca260ca258468941944b8328976e11a2584689feae11a244c414d45332e313030aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaf2aa8207219b3a45243318a27c791a946a519a4c849198c1c7a7997c65f119fc47f19486126d651aae67f1a7c6517e21587c4617c1244661c9246661c124666ab9aac66ab0d3a66ab35966a082822634e2820566ab19aaca0896069d2b355cc69c5040acd563355cd562c0d3a574845144a56a24748748656a2658a4337e23e233e33e22c1f1159f119f11f1959f199f13f11bf13f11d21289161448b14847486a246a26a27e51449e585132c28981d13a2611a2411a260744e89832890328901d13a2708d1303a2544d82344e0ca240744e8981d13a2411a25846890328981d12a260744a890468903289e0ca2611a240ca2611a270651283289784689c2344c2344c234482344c1944c0e89513f8328981d13a2783289c0e89d1206512ef0669d8334e78474ec0f4e69de0cd3a11d3807a774ee11d3abc19a77ea7c19a760cd3bb419a7019a73ffff8474e8474effffc19a77ff08e9db3ffffd6bf9913a8aa1f9eb1631445566a510a2472198a24777c28226d65359675c09138644e11387163570651a0f9c59044e1a2a88aa14455e67b9948667b93e066ce98a26644ec592644e913a6d0722aa51a0f142274644e22aa644e913868aa1138644e341c644e113a552274aa44e1a2a844fffbd2c4e581eb5da6c00ffad4867d3597d5fb5f98e18d3834e19aac34e18d3834e18d3a34e958d3a581a74ac89c2b2274aa8aa9913a44e15913bfe644e113a634e0d3a634e0d38634e1aade5634e798d3834e158d3a581a70ac69d2c0a2662890a2456289958a245628998a2628998a24289958a27fe65210a27e0744e89046890468942344c2344c1944825448234481944c2344e11a2503a2544c234480e8951206512832898328901d12a240ca240ca270651306513065136e11d38c11d3811d390669c08e9c03d39a7019a7207a774ec23a740f4ee9cc19a7423a7607a734e0474e8334ee11d3a0cd3811d3a07a774e419a740f4ee9d03d39a7611d3bc19a7019a7023a7207a734e01e9cd3908e9cfe0c22742244ef83089c7089139f06113bf088d39fc1834e42234ebc1834e60c1a77f060d39e111a77c1834e84469df6c2244e550000001fcb08e06636ca8663496e6fe26366634fe069b4c32673aeae673a9b6586192b1cc33b73b63411a5531f94112b410383d62731f86263626626331b31a34b731a317e17e34b64b732982992c2a69594c194c94c795a089a0831318fca081a088fc9625e3979212b484ad2134825ef2be70ad203979203485203481213481203485212c24256d93e6b64db2d92c364db2d836c364af9856d82c360f9ad92b6c79b65b06d9e61b61b26d96c15f30db2d93e6b64db0d82b6c161b0589079c8243e7219015c80ae40720901c82407219079c8240720909c864056d92b6c1b65b056d8f36c360db0d836cb64b0d82c360adb056d82b6c9b6798586c961b056d92b9095c84e43202b9016243ffe589095c84e4121f2c480e4121390c84ae4057212c484b120ff2b907f95c87cb121390c84ae42589095c84ae425720390c80ae43e58909c86407219016240589095c87ce4320390484b120f2bbfff962fe577ef2c5ffcb17ef2c5f8aefc58bf9dfafde58bf962fde58bf1dfefe77ebf15dfcaefc577ef2c5fcb97d859c2ab88e7fa3cb0599194842891be04a51998724911aaf47a799fc43f19a7c4ff11978c122992ce71415948456a5119fc61f19553e232f8cbe232488c393248cc393183c60e31a70d5631a70d563355c69c3355cd573144c5123144851333dc8512314485122844e4d1554550a11383227089d2b2270afffbd2c4ff83f1c956d46f779446f42a9881ff7690d448d44e908d449448d44d44cd44d44cd44d448cf8df88cf8cf8ccf8cf8ccf8cf8cacf8ccf89f8cb07c6583e232f82f9360f2f92b2f832f92f932f92f82c17c960be4cbe4be0acbe3cef9be0ef8be4ef8be0ef9be0ef8be0ef8be4b17c15df258be0b17c1df37c1df17c9fc7f11fc5f115fc457f19fc7f1163e23f8fe2f2c7c47f1fc457f1963e32bf8fcaef82c5f277c5f277cdf277cdf058be4b17c79df17c15df077cdf077cdf058be4ef9be3cef8be4aef9f3f8be22c7c5e57f115fc457f1963e3f2bf8cfe2f8cb1f1163e33f8fe3f3f8fe33f8fe32bf88b1f115fc457f1963e32bf88afe22c7c458f8cfe3f8cb1f1795fc5e58f8cb1f115fc67f17c7e7f1fc458f8cb1f1163e22c7c657f179fc7f115fc457f17963e32bf8cb1f19fc5f19fc7f179fc5f1963e22c7c658f88b1f195fc47f17c457f115fc67f17c658f8bfcafe32c7c7e57f195fc658f8d5f2a2944630705f26c472af66abd8c1a661c9872693205f069320c1c510881978e4b3192463071a4ca49199e9e7a71987017c18c1e17c19c62b198dc2b118dcab11d21a891d2152179d21d2195df1160f88cf8cf88df89f88b14867ee4a25fe56a246a26a25e6a25485e6a26a27e67c47c5e67c47c667c67c6567c5e583e32b3e3324324232422432b243324324232422432c12199211219921252992112116090cac908c90c908c908908c90c908c90c90cac90cc90c90cc90c908c90c90cc90c908b048664844840c5f2115f00c5f108af8035f2be2115f18457c6115f20690d210452101a4294a1148406909218312140d21a4308a4208a420624281a424861148406909210452101a4348508af9c22be206be57c0317c8457c8457c422be60c5f2115f20c5f1035f0be418be2115f20690d2181a424840c4840c4840c4840690921e11486114841148606909210452181a43484114860c4870348490c229080d21a4208a430624208a4308a428317c0457c422be40d7caf9062f9062f9035f2be40d7caf8f062f98317c8457c0457c6115f3035f0be018be422be3fffff08d12f2c3d10653614da6a7ba2e442a7a1a9eea7b9a3362e518b971aa9445cc6374b0f2564019957055c1437be63748dd2653694d863c68f1863c6adbc6b6f8f1a53cdfffbd2c4f103f43180ca0ffacdc623b25881ff59f847e6be687e68f1a57e6857e687e6af187e6be687e69e6a6f1af145478a3f3578c378d78c378c78d378cf352c3c61478d1bc63c6961e34ade30adba4dba0d9bcaadd2566cc583672b36633676e834704712b8fe38fe4702c2389611c4ad1c4d1c11c0ad1c0d1c51c0ad1c0d1c11c0d1c51c0d1c11c4d1c11c4d1c11c7cb08e3e584702c2389a382389611c4b06cc583672c1b319b39b399b31b3f959b399b31b3959b3960d9ccd9cd98b06ce66cc6ce66ce6ce118e2071c238c191c4191c7038e11c40e38c70038e11c4191c4191c40e38c70064710647006470038e11c0191c40e3847084638e0c8e0118e00c8e00c8e20c8e308c718323804638046388463881c708e20c8e2118e20c8e2071c238c191c0191c0191c0231c40e38470c0e38c7008c708323804638c0e3847108c7108c7006470606470c231c60cf1bf57ffffdffffff846e5e0cb94a00002f30be4c3831084420332746f434224bc73259824431839265263070b039c183701c6961c14d2938a4eb9158cdce0e30eb95588eb8ce3cd58ce3cd589588cbe648cd83cbe0d83f0e0e48a48cc90c90cc909c14c909c14d295290cbe248ccbe1838d83cbe0cbe183cd83cbe0cbe1838cbe4be0cbe4be3cacbe0b05f2569485648664844845694a64864846486487fe6dc3706dc3706dcb706dc37256dc9638f2c370586e4db86e3cf8f6e0f8e6e4f8f6e4db96e7cb0dc1b72dc161b82b6e3cdb86e0db86e3cadb836e1b82b6e0b0dc9b72dc961b936e1b836e1b82b6e4db86e4db86e4b0dc1b71c71a9aa61d6ea615a9856a69d6ca61a9aa695a9856a69a9aa6f95d6e56a61a98a69a98a69614d2c29a56a67962432b90fffcb121f962422c485e572196242f2b908e43908b12115c87e572115c865890bcb121f95c845721ff9c8521162432b90bce4290ce4390bcb12116242f2b90cb12196243f2b90fce42908ae432b90ce4290cb1211c85211c87211c8721f95c85fe5890ce4390cae432c485e572115c87fe572195c87e58908e42908e43908ae43ffdbf587ccf8af88c7054224d7aa4ba8d7e30f8ccfe21f88d57a248cc2f80be4ce281294b04b319c5097518e0a4b3197cfa79fa7e1c197c97c9fa7307997c17c197c61c9df1df119f11f19df15fffbd2c4f303b38556ce4ffba9d6c3a41945eff822f199f15f199f1bf199f19f19df15f1160f8cdf8cf88ef8cf88cf88f8cb07c467c4fc66c1e5f065f05f265f0c1c6c1c5f265f25f265f05f265f05f065f25f065f25f26c1e5f256c1fe582f832f860f31b838d31b91b931b91b931b81b82b1b931b81b92b1b831b938e2c0dc18dc1c695a5279921921992112116090fcd295290c908908b048464864865824332434a531b81b831b81b931b81b92b38f2c1c7160e34b0372563705838f2b1b831b81b831b91b82c0dc9606e4c90c90bcb04845824232432432b24332422432b2422b2422b24332432432b2422c1219921121f960908c908908b04846484485e64864845648658242f2c121959211592116090bcac90cc90c90cb048664844866484486564866486484564846484484671c3706ac6371e637071c6372370637237063723726372372637237063723706370372581b931b81b82b1b82b1b831b91b82b1b92b1b82c0dc959c7158dc98dc8dc98dc8dc79606e7ffffeef34bdd4378ce2398c633b8a623188e23d8a62338ae23578c737dd5f2c1c65771985e3d98f6d59abc17163c634bd2f32248939ed2e32232137512e3751d5375488f34bdd534bd2f32208939e92f32212f32248934bc892b4bcc88224d2f220ac882c11269711058882c4495c41c44495c41c4c415c415c4162a0ea514ad14ad14b0887508a68a8bfe75088584434545344a8345a82c221a2a21a2a29a2229a2a29a2221d4a29d4229a2a21a2a29a2a215a21d4221a2a29a22295a279a2229a2229a2a29a22216114ad14ad10ad14d1114d1513cd1110ad14b15268a8a56885689e5844345442b442b4534544345452c229a2a29a2a296114d1517cd1110ad13cd1114ad14ad14b08a68a88568a568be68a885688588938988f2b88f2b88f2b892b89f2c447fff95c496220ae24ae23cae20e2624ae27cb11056c5e5863363622c3115b115b19b1319b13115b19b1b11b13195b116188b0c5e5863f36263f2c3195b11b1317f96188b0c60c44ffff84513fe0c4404513e0c44fc188908a2708a27cc484e74d866254aec44c97d36cd860484dd5ce74b073a64bf12a69b424265841b261ac9585825e312039c325e894339d757312025f2b619312139c3120120325f4db31201213121fffbd2c4e403eff9ace40eeeb7c67f361b01ee56f01203120120312125e3121120325e25f325e4da2c12f192f1ce18909ce996106c160730b01b063981b063981b0580d9f2b909c8240721909624058901c8640721901b679a586c1b61b056d92c363cb0d92b6c795b63cb120390484b121f2c484b121f2b9095c84ae4058901c86405721ff2c484e4121f390484b1212c484b120f2b909624056d82c364db2d936c360db2d92c360db0d936c364db2d82b6c95b64b0d8f2c360db0d92b6c95f34b0d82c360b0d82c364db0d936cb64db0d8f36cb64db0d82b6c7961b2586c15b60b0d92c360db0d936cb64adb2586c15b60db2d82b6c79b65b056d92b6c7fff961b3e56d936cb64db2d92c364b0d82b6c161b3fe6d96c95b60adb211907846400c90c192006482072190c232106484232006483e0c90c1921c0e4120064802321c19218464308c841920f846401190c1920064861190846400c9060c908324384641c192106483f08c842321af3210329369d2693340190343f32830fa66d366d89d35569b2332843e355643f35569b2389d66c327a1d4346c27a33c746c2882d31910ba2b26937840fa321055630fb210343f32832103292b3292b3292b32830fb210321043e3210211321121030fa0fb3843282b3e8f28840cfa3eccfb3eccfa840b10819f47d99f67d99f70899f47d19f67d15c2267d9f7e7081f467d1f5e567d99f47d159f667d9f6583ecacfaff2c1f4583ecae1133ecfa2c1f6567d159f467d9f667d9f6583efcafefcafecafe8b1f458fb2c7d9fd7d15fdf95fd163e8b1f457f657f657f7e57f658fb2c7d963e8b1f458fa2bfb2bfa2bfa2bfa2bfaff2c7d95fd95fd7ff95fd163e8febe8afe8afebcafecfebebfffcfebebfcfefebcb1f458fa2c7d15fd15fd1fd7dff9fd7d163e8fefecb1f458fb2c7d15fd163ebcfebeffffcafecfefe8afecfebecafecb1f658fb2bfbff2bfb2c7d95fd9fdfdff9fd7d1fd7d1fd7d95fdffffff95fdff9fdfd963ecafecafe8febebcafebfffcb1f657f47f5f5e7f5f7fe57f67f5f47f5f5e57f7e58fbff2c7d15fd163ebfcb1f657f7fe58fb2bfa2c7dffff9fdfd95fd985e171611230b82f3a39f7357a8e30b91337c8cc31649334495e331d13324c583248cd30bc7a37d8c630b8c73248cd33301d31fffbd2c4eb83f475b2d80f7774c5b935dd81dd66d8609331e8c630bd1230bc7b30b87a31ec2e2b578c7a44cd130bcb063985c3d9602f30bc2e2c05c63d8f666305e61705e563d985c17985e179aef456bcd7ae2bf46b97961795ae35eb8b070ec1d33a70b070b070b073cb070ced9ff2b5c56bcd7ae2b5c585c6bd7ff9af5c56bcb0b8ad796179617f95af35eb8d72e2c2e2c2f35eb8d72f2b5de6bbd962e3bae2c5e577f9df79dd7162f3bee3bee2bbbffffcefb8b17f9df779dd7962f2c5e577ffff9dd795de57715de57715de58b8eeb8eebcefb8aee2bbcefbbcb177f95de58b8efbceebbfcb1795dfe77dde77dc5777f962f2bb8b17162f2c5de77de775fe58bcaee2c5e77dc775c77de57715de5771dd7962e2c5e58bcaefff2c5e58bffcb17795ddfe58bffcefbfcb17f9dd715dde57715dfffffe58bcb177ffffffff95de5777ff95de577962f2c5c57715dff31a71aca3861eef93355daca37c0a43335288f7337c094a12b3dc8c2f91838c92255e8eef81a70d4118610c2f83d38cf4e248cd26530e4a0a27285214d9d22908a86ab1a822a08160d5636b28d5631a75acb3355d41033558d572b1a70c69c1a74d4111a74b034ef98d3a34e9d21289f9d21a891d212899a892899a89a89f99f11f1962f88cf88f88acf88cf88f8cadf8bfcdf8cf88cf8cf88acf88df88f88acf8ccf8df8bccf8cf8cacf8ccf8cf8ccf8cf88acf8ccf8df88cf8cf8bccf88f8fccf8cf8ccf8cf8cacf88cf8cf8e117c414f8a06f8bf101be37c6117c4137c4117c6117c7063e3063e2063e2037c4f8c23f8823f8e117c406f8df1845f1845f101be27c4117c40c7c508be2063e3037c4f8c19f8822f8c0df1be20651203a2744a0744a89c194480e89d13065130651203a2544c1944eb81d13a260ca240744e89f853e3418f8818f8818f8c22f8823f8c0df13e381be27c606f89f160c7c6117c7037c4f8c0df1be2037c6f8c0df1be281be27c606f89f1831f181be27c40ca2611a240744e8983289046898468903289419448194480e89513832890328983289c0e895120651281d13a240744a890468983289c23448234480e89d13d0eaf5c19a76dea8474e8334e2bffef0669dfffffd5e6498b0751af860e372684a86587c8ccdd48c59074cb41b8c6e358ccc160d08070fffbd0c4fa03fa5daac20ffad4c5bcb45e01dd62d0d43164ad433164933165092b24cd09248c58164c93420c59164c1c160d09160ac923420923164583074cc2c03860e0b2562c79601d3070593070932b074c1d070ac5839614d4282b506a029840a61429cb0a585264489608990225644c8bd32040c8912b206408991225644b0f4c81032240c81032240ac816081608191205640b044afa7de796387de7963be7de95f4af858e7f96225703840e302c44b11f38c3cb1038c4e312b8f962070895c4b1d3e70b1c3e74fbd3ef4fbc3e74b1c3e74b1d3e70f9dff2c73caf9e58e79f79e7def95f7cafa58e95f0b1d2be16387ce95f7cafbe58e95f4b1d2be163a7de7f9f3857d2be963a57c2be95f0afa7ce15f4afa7ce1f7857cff2bef9f3be57dff3ef0b1d2c74afa58e963858e963858e963857c2be1f7a57cfff2be95f0b1c2be1639e57c2c70b1cf3ef4afa58e95f0afa58e9639e7ce163858e963a7de15f4b1cf312012035a04ac34ad1cd31cd3b635a05a0322b47131991992c09a982989a960398c650398c3612b0cb08edcc730730cd34418c1d4660c1d4664c48097cce70e70ce74484c480480c360360c734364c730364b039a65841b265841b2561b0580d92b0d93831d4acea7063a19d0ea707cc99d4ea63948958e0c703831c39bcc723931c244c703832994cb05232994cb052ff2c14cca6c3f2b29160ea56742b3a19d0ea6753a159d0acea56752c1d4cea7533a9d0cea74fff2b5015a80ad41e5850f9a8541ffe5850959d4b074f2c1d4ce8752b3a99d0e8570633a9d0ace8583a959d7cce874f2b3a99d4ebe56ea6e8ea56ebe56e86e8e86e8e86eaea6eae9e587537474375752b7537575374742b742b74f375752c3a1babaf9baba95ba961d0dd1d0add4add7cb0e856e858752b742c3afff9ba3a1ba3a79baba9ba3a161d4add0e8280b1427434258a02ba02ba1f2c501d050796280b14058a03a1a12c50796284ae80e8687fcae83cb14058a0f2ba1fff2c5095d016287cae87fcb1405741e74343fe74143e5741e74141fe58a1ffff2c5095d0f96283cb143fe574258a1f2c28206c48311e6abd8c1e65f197c667f137c67e36a8226d65a82263f197c661f11fc667b99ee662899ee64d41099aaea089b5966ab98fc63f11a7c63f118fc4fffbd2c4f003f3f1a2e20f7375467ab55881ff5a685f198d3834e18d3ad6618d3ad6518d3a6ab99aae34e959aae66aba820634e1aac57aac58d57369cd56cca34e4b0d3856d386d3ad39fc2c34e1b07b07997cb07197c3071c91307997c17c160be0b05f2565f26a26a26585122c28915a89f95a896bfcd44d44cc90890cac90cc90c90cd294908b04865648456484648448656486582423242242324224333e33e233e33e32b3e32c1f119f11f1160f8cacf88cf8cf88cf88f8cacf8cb07c667c67c467c67c6583e3037c4f8c18f8a06f89f1031f101be27c6117c7063e2845f1418f8a06f89f101be37c4117c60744a890328960ca2411a240744a89046898328981d12a240744e8904689c0e89d1284689708d1308d1283289e0ca27c0e89d12c2344f8328984689032897f81be27c40c7c406f89f1845f1845f17063e308be3063e3037c6f8c18f8822f8818f8822f8818f8f063e3831f101be37c60c7c406f8df1611d3bff8474eefffff7fc23a77fff42af314d42032684ee3268340355666c332966d3328556332832830fb43e2c21f1a1f9081908a1f1a771a019341a01a7705d99348c898c80c819341341a1015b98a68a698a615b9ac515b190887d187d07d987d108190819479595b995b8a698a68a61595b15aecad746bb5d95aecd76ba2b5d9ae976585d1ae974579035d2e8d74bb35daecd74bb344220d112f344220b088344a20b088344220e5e89344a20d12893e2e22c311f1b11f1311b13195b196388f8b88d8d8cad8cd8d8cd8988e2624e2620e2624e2220b113e5710711127131271113e58893898838988388883888938989f2b88ff388882b89389882b89388882b8938889389882c449c4c415dd7962ebceeeecb17477776775747757658bb2bba2c5d1dddd15dd962efcb1745777e577458ba2c5d9ddddf9dd5d95dd95dd162e8eeae8b176577458bafff2bba2bbb3bbbb2c5d9dd5d795dd1dd5d1dd5df95dd162e8eeaebfcb17458ba2bba2bba3babb3baba2bbb2bbb3babb2c5d15dd962e8b17658baf2c5d15dd7962efffceeeebcc3e21f88ccb92b88d23a48e8c85e162ca10bc31838f4ed9a4ca17c9924617c987c67f119fc43f1187c63f11613e231f8cbe2309087042b259cc7050908cfe21f8cac7e230f883e332f88be230f8cbfffbd2c4e803f01956de0f73748691b259c1fedab8e231f887e32c07c6503e3987c63f1187c41f1987c41f1187c61f19587c7e7f17c657f19fc5f179fc7f115fc458f8bcafe22bf8bfcb1f11c852195c865890cb1211c872116242390a43390a42f390e432b90fcae42390e42f390a43390e42390a42f2c4865890ce43908b0dc961b836e1b836e5b92c370586e4db96e0adb936e5b92c37256dc1b72dc9b70dc161b836e5b836e5b82b6e0b0dc1b72dc161b92c372586e0db86e7cb0dc95b7056dc961b92c3726dcb70586e7cb121962422b90cae422b90cae43390e43390a432b90cb121f9c8521f9c87219c8521f95c86721487e572116243390a42f2c4865721ff95c8458908e4390bfcae43390a43390a432b90cb1211c872116242390a432c485e72148658908e4390c1890e0c48508a4284521c1890a0c484114840c484069092181a4348508a4383121422908189082290a0c4850624308af808af8ffe0c5f1fff8457c0457c5500002f317f4b633b769735a12c23ffd655317f7f1331bb28365417f312125f325e619317f98c331a17e317e31b3b294b62c18d19611611a5616199db0e698bf8bf9a5b8bf1a5b25b998d98d18bf0bf998da5b18bf18d98bf25b198d98d98bf18d1a5b18d958bf95a5b9afcbf9afcbf79617f2b5fcf1a5f8d7f5f8d7e5fcb0bf95afe6bfafe56bf1afebf1631b2b480b0901625f2c24269024072fa40690242690a42690a40690a406902406904bc58483cd2097cad202b483cd20484ad203481212b480d20484ad21f397920f2b487cb0909a429015a4256901a42901cbc901a429095b9be66c1b066c9b2566c19b0e6960d82b364cd9360dcd360cd8360b06c159b058364cd9363cb06cc237ec197ee11bf60cbf046fde11bf60cbf846401190846400c9081c86420c90046420721900464007219081c86400c9003243039048607219060720900464306484192106480237e832ff065fe11bf40efd7e08dfc0eff7f08dfc197f81dfefc0cbf81dfafc11bf40efd7f065fb065fc197fffffabfffff065f90403cc4102950c62707e0d6dd07e4c83d1044ce8107e0cc6a2954c6271898cc6a1044c41120f4c6541950c7f00c68c411189cc62620f4cc6b20f0d2ddfc4d9505f8cc68c68ad044c7e2950e0f47e4e0f20f0b0c4fffbd2c4ec813099a4d64f76b556e6315a95ff71bac56c4e56c4e63f23f25682068223f263f28226c4c3f2581f8341141131f91f92c0fc16189cc7e1040ac7e0ac7e4c7e07e0c7e07e7cb0821e563f0563f062422426240240624224256240581202b12131201212c090960480c480480ac484c484978c480484ac480c484978c484487cc480484b02425825ff2b1212bbff9dfefe77fbf95dfcb17e3bfdffcefd7f2c5ffcaefc77ebf1dfafe58909c824258907f9c86425720390c80ae4058901c86425720390480ae4057212b90f95c84e4321f2b90962427209095c80e41202b901c86427209016240720909c864257202b909c82405721390480b1212c480b17e2c5fcefd7f2bbf95dfceff7e2bbf162fe577eff2c5fbcefd7f2c5fcaeffe58bf95dfffcefd7e2c5f8b17e2bbf9c8243e589096241e5890962427209016240720901c864057202b9016243fe589096242721909c8642589095c83ce41212b9015c80e41212c7e3fcaff3fffffffffffe57f9ffffffff2c7e55f314d6f4319169c334141731d5320308946c341734134170ba33211d5332112f2c0b198f18711897990984413d984493d9a0b85d98c80c818c81349a995b1a98a69a98a6962b633ea1133ecfa2c1f467d9f458537cd4d534aeb62b534c894b8c894b8d2e4b8b0441a5c44f9b1b11b1311b13115b11b1f11b1b11b1f19b1711a2d41a2a279d42295a21a2a296110ea510ea510d1510d8d8cb0c4586336263363632c311b1319b13115b11618cd898bcae20ae27ffcae23fce2223ce2224b111e71311e577658baff2c5d95dd962ecb17458ba2c5d95ddf962e8aee8b17458bb363622b63362632b63362632b63362622b632b622c311b1b11b1b11f1b115b11b1b195b179b13196188b0c66c6c67131058892c44795c495c41c4c495c49c44496224ae23fce2623cb11258882b892b89ff2b88fff2c441c4441c4c416224e2624b112571057107131271311ffe5712571258883888938989f2b892b89ff38889389892c449c4c4f96119a39a1cdee361e4a6d3914c8ff336348ff31534d6c2b563cc6191d5cc4db0978ca5507e4d09920f0c8022ae4cd6c1534c2980a60cdef1ba0c3660d98c3671ba4de31e28aaf187e68f1a6f1af1a54a6d33663672b6e936e836734714712b8ff38fffbd2c4e483ecd556e20f776ec706aad981ff75f8ff47038ff4712c47f1594c194caa6194c94c994c14c194caa6194c94c15a08958fc18fc0fc1a080fc9b132089a08a081a088fc158fc98fc8fc98fc8fc98fc0fcf98fc8fc9607e4c7e07e4b03f0563f2581f934101f831f91f92b41031f841031f91f82c0fc1607e4c7e5044c7e47e4ac7e0ac7e0d0407e4c7e47e4d0447e7cd0447e0c7e07e0ac7e0c7e07e0c7e47e4b03f2563f263f23f063f03f0581f9ff2c3f2587e0adf82b7e7cdf97e0b0fc1bf0fc1bf0fc9bf2fc795bf056fc961f837e1f937e1f9f2c53258a64e99a67ce99a64ae992c53274c53258a64e99a64e99a60b14c1d314c95d3274c53074c53074cd32574c95d3274cd3258d9bcb1b3963672bd9fcaf662c6cc7b36ce7b3ece57b3ff9ecdb316367f2c6cc57b3795ecc58d98b1b315ece57b315ecc57b395ecc58d9cb1b3963672c6cc58d98b1b31ecfb3ff95ece58d98af66ff3d9f663d9b662c6ce58d9bcb1b395ecc58d9caf66f2bd995f31a74d5738745265324902f836f8cfe233f8d3e33674ca43367494a23248c2f930be02f831f893e334f8c7e232488c392a0c1c661c124657ee67484a267485ee46a25ee47ee4a2457484748548656fc667c6fc456fc4587e23512a422c5211a89d211a892899a89a8919f1bf1943e2f99f19f1160f88acf88df8df8fcb07c66fc47c7e583e22c1f1f9a52121192125219219219a5225299219211921a52f9a521219a521211a52121997c97c960be4cbe5838cbe0be4acbe4acbe0cbe4be4acbe0cbe4be0b05f265f05f3e577c1df17c1df37c15df1e77cdf058be7cef9be4ef9be4ef9be4b17c962f92c5f2577c95df058be4ef8be4b17c1df17c79df37c962f83be6f83be2f82bbe4b17c795df0577c962f8f2c7c47f17c7e58f8bcb1f115fc7e58f8bcafe22c7c47f1fc7fe7f1fc657f1f963e33f8be33f8fe22bf8cafe32bf8ffcfe2f88afe22bf8bcfe3f88fe3f8cfe2f88afe32bf8bcb1f1163e32bf88b1f17963e2fff3f8fe32bf8cb1f11fc7f1963e3ff2c7c5e7f17c5fffffe7f1fc7fe7f17c657f1f963e3ff2bf8cb1f179a08f40992f5881a6d30c9b137401a08a089545f8b131a56ca8731afe2696ecaa73182fe68234aa63f10787078c4e74a83f0563f063f0c4e70798d674a8820fffbd2c4e783f1f556c80ffbadc667b3da41ee572078d43f06822820682082056c4fe682082063f23f0584112c0fc158fcf98bf0bf18bf8bf198d8bf960c68acc6cac5fffcd0447e4c7e07e3fcc7e5044b03f27f8fc163f057f93fc7e7cb1f92bfcff9fe3f27f9fc9fe7f257f82c7e4b1f83fc7e0aff3ffe58fc1fe3f2577f2c5f8eff7f2c5f8efd7e3bf5f8eff7f3bfdffcb17f2c5fceff7f3bf5fbcff1f82bfc1fe7f258fc1fe3f058fc9fe7f07f8fc79fe3f3e7f8fc15fe0b1f92c7e3ffcb17f3bf5fcefd7e3bfdfceff7eff3bfdfceff7ef2c5f8efd7f3bf5f8aefc58bf162fc77ebf95dfcaefc58bf60cfc047f207f8fc833f1067e211fcc0ff3f9c23f9067e611fc033f011fcc19f808fe60cfc033f108fe419f9c0ff1f9847f007f8fc847f011fcc19f803fcfe419f8c0ff3f9c19f8067e60cfc047f303fcfe703fc7e607f8fc423f808fe3847f00cfc033f211fc047f007f9fc847f381fe3f3833f00cfc833f3c23f9833f103fcfe40ff1f85f34b617e36544b7317e7f1378c69630d95a03b2898d331b7f02b39c325e619325e121375712131cd3b732c20d931cc697315c0a02c16b990d8ae198da5b98bf25b998db2a18bf18d9a43ce9a432f9a40901a412f9f39ce9f3b2f9f392f1a42901612034839d2c24269024072fcbc690242690a406d96c9b65b26d86c95b60db0d836c360db2d92c360f98d82be695b60b1cd36cb63cb0d936cb64b0d82b6c1a814056a1350283cebaa12b5015d73cad426a0509a814275cae1624057212c483fcb1212c483cb121fff2c483cd42a0350a80d415d350a80d42a0350570b0a0f3ae574ad4258509a85426a15015a84d42a0350574b0a02c364db2d836c364db0d936c360db0d82b6c1b61b06d96c961b3e6d96c1b65b06d86cf95b64db0d836c360b0d836cb64adb258e6961b1e586c95b64db2d92b6c15b64adb26d86c961b26d96c95b64b0d92b6c961b06d86c795b60b0d92b6c961b2586c9b65b1e589016241e5720390480b1202c484e4120390c83cb120390c84b120390c80e43212c480b1202c484e43212b909c864057212c484b1212c483ce4321000fe62a690046401957256d7c1a044401990048111a046401158532620814aa56208987383ab184bc3ab986343f81931a32a9863432a98c4e41e9907fffbd2c4ea03b2f156da0f7790863b335a4dff5618a2081882220898a9a14c9900655c985328111853214cf9c014019aa694c994c94c194c14c994c14c1aa62a6194c94c960a64c7e47e4ac7e3fcd0447e4b08225825e325e121312025f2b121325f25f2c090960978c4844860cfc847f211fc01fe3f011fc81fe7f20cfc01fe7f00cfc047f20cfc01fe7f00cfc833f20cfc847f103fc7e60cfc047f207219001c86420721900324108c800e432108c84192006480232103904840e4121833f011fc01fe7f103fc7e3e0cfc033f007f9fc047f011fc01fe7f007f8fc419f908fe308fe211fc047f00cfc847f207f9fc847f20cfcc0ff3f8067e7067e023f808fe40ff1f9067e211fc033f011fc833f3833f303fcfe3067e00ff3f908fe019f9833f20cfcc23f903fc7e019f808fe023f8e07f8fc40ff3f8833f1067e423f9847f207f8fcc19f9847f207f8fc033f211fc847f00cfc033f1a99d67fa933ccc957f313fea3d51f6a55f31a7069c3183d26534990c3934f8d3e236f88fe235f8a7e232f88fe331ce038c31588cb934a59673bc724235635633739738338f90f34a470437054a5324324237e3be32b7e333e2be337e27e32b3e333e23e333e33e233e37e22c2899a895211a89d21f0b0a2456484648648456484648694a648648456484582422c1211921a52159211592199219211592119211211fc5f17f95fc457f195fc5fe7f1fc658f88ef9be0b17c1df37c1df37c1df17c9df17c15df2577c15df277cdf277c5f277cdf3e577c962f93be2f9fff2bbe4ef9be4aef93be2f8ff2bbe0db96e0adb836e5b836e38e36e78d36e1b82b6e4db96e3cdb86e4f8f6e4db96e4db96e4db96e0adb836e1b92b6e0e4390cb12115c84721c84572179c87211c852195c84721486721c86721486572195c865890cb12179c87219c87219c872115c8477c5f0577c15df2577c95df077cdf0577c95df258be7cef8be4ef8be7ffcaef83be2f9f3be6f82bbe4b17c962f82c5f1e577c15c867214845890bfce4290fce43908e4390ce4390cb1219c85219c85219c872116242390a43390a42f2b90bfcb121ff95c87e721487e62898a2462891ee462890a26541f88c3e27f88c5121444f3c2144ccf4f0be4c2f93d3ccf72674cc5133dccd57a4990b061c985f217c9ff1fffbd2c4ee03f47d56cc0ffba9c6beb5d901ff59b0bf19df11f11bf1df19c9117c94922997c97c1c91b07645144c74874847ee6a25c3a4251335125133a4251335135132c5f19bf1bf19bf11f199f11f11bf19f199f19f195b07997c17c997c97c9b07307960be0cbe0be0cbe4be0b05f3e67c47c467c47c6567c667c47c4583e22b3e32b3e22b3e333e33e28457cc22be40d7caf98457c01af85f211c1e115f0b062f903c1ebe018be418be00d7c2f8062f9035f2be018be40d7c2f908af908af8062f9062f881af85f0115f006be57c8317c01af85f2115f2115f20783d7c0317c0457c0317c8457cc198380d7caf9035f0be606be17c40df13e3063e2037c6f8f08be2c0df13e3037c6f8a0c7c406f89f1031f16117c5037c4f8818f8c0e89d12c2344819448194482344a11a260ca2411a260744a894234482344e11a240744a89f06512c1944e117c606f8df1845f1845f140df13e3063e2f063e308be3063e3037c4f8f063e2063e3063e2063e308be2831f1031f142344aaf83289ff06512846897fffff08d130651354c414d45332e313030555555f2c113a6ce9be046f81a9467a1d687668aaa2a87e79a2a86d07341e6491924469329244513e39afc65f199484f8199ee6a5118a262899a94428999ee628918a262891be062891a94452118a2452199486a51191388aa1913844e9a2aa44e9913844e9a2aa44e1a2a844e9913a44e9511542b2270a1f14aef8cacf88a1f17cb0fc4585122b5123a43a43f2b513f35125132c28981d13a240744a8904e8981d12a25c0e89d1308d1203a2744c2344c1944819448194480e89d1275c2344b03a2744c0e89d1208d120651284689e0ca2703a2544c1944a0744e89c1944c1944e11a240ca2411a260ca260744e894194482344a0ca2708d120651208d1206513df03a2544e0ca260ca2613a2508d1203a2544982344fc23449ffc19a770669ce11d3b08e9c08e9c08e9c8474ef68334e230669cf8334ee11d3bedfe0cd39ff84b4e0474e3c19a737fc19a774fb7ffd1a8ac5ca3172d7853ebdc5cb2b5e0cd19b4668a2f083bc90bb3285d90ca6d29b0d1730d98e3545e10d7855e08c47023f8db3711c4a11fc32ec8bb23466cbb234668bb23172978328bc20ad7853466d19d32eccbb334674bb22c233450bb2fffbd2c4d583e9c98ec40ffad44632b35881ff5a9879a3345d915a336562e5128b9671fc8e068e28e068e08e068e31fc568e271fe8e25836733666e82c1b3959b3159b3159b39b749b3160d9cacd9ccd9cd9fcb06cc566cc566cc66cc6cffe566ce566cc566cc66ce6ce5836633666e93366367336736636e83662b36636e86e82c1b3960d98231c4231c4231c0191c4191c4231c0191c4191c0231c58191c20c8e2118e20c8e00c8e1038e11c0231c4231c4231c40e38471c191c6071c638846388463840e38c70038e31c00e38c70038e11c0231c40e3847108c71c0e3847181c718e00c8e2e0c8e2118e00c8e18323881c708e0118e211b940cb97f03b9572c2372af065ca81dcab97f832e5f03b9572c0ee5dca08dca03b9772c2372f81dcbb9411b940cb97fc1972e11b940cb94e11b940cb95ededde0cb956846e5fff09dcae12b960000001fcc2994b64d58f35b0cd6f1530d2d835b0d0220a60c31b2ca4c17e05f8c4b605fcb00bf18c303ab18eac30c98822208960c6b31040a55319544b630c6831b3195031b3200c29831534ab830a648022a0532581534c2990a60ac54c2c0532562a69602982c0a98614c05305640116031b305fc4b72b0c68b018d16031b305fc17ff2b7e3cadf92c3f0587e0df87e4df87e4f1b5fcb0bf1afcbf79617eff2c2fe6bfafc56bf95a42690a4072fa4272fa40690242690a42690242690240572f9a40901a409015a42690a40690a40690cbe690a4269024256901a40901a40909a42909a412f1a41ce9a42909a4090961202c5f8aefc77ebff9dfafde577ff3bf5f8efd7e2c5fbcefd7f2c5f8b17ef2bbf15df8efd7f3bf5fbcb17e2c5f8eff7f3bfdfcaefe77fbf162fc77fbf1dfefc58bf795dfcaefe77ebf1dfafe77fbf9dfefc58fc1fe7f057f93fcfe4b1f82c7e4aff1fe58fc95fe0aff258fcf9fe3f258fcff95fe0aff1e58fc95fe0b1f92bfc1fe3f257f83fc7e0ff1f8f2bfc9fe7f3e58fc9fe7f257f82c7e3cff3f92c7e4b1f83fcfe7cb1f8f2c7e0ff3f82bfc9fe7f257f9ffffcbf79dde6bf76bb87ef58ffffef3cf9bfdd65909587c663f127c65455e4d2641838c9224994c9221830c66c0ca4c0fa0ca4cae20e34c5632438cbc71290cbc638a4ad2642c05f0617c8c1c787124465f2c1fe7485485d3f72fffbd2c4ff83b74592d26ff796ce783199c1ff75a8a433f73512314c4212c15b9a1095b195b15b960be4cbe0be4cbe5838d838be4d838be0c6e4e30ce386e4d58ce38b071e563706370372582422c252960908c90d297cac90cc908908ac90cadb936e1b936e38c36e1b82c37056dc1b71c61b72dc9b70dc9b70dc162f9f2bbe4ef9be7caef92c5f3e577c15df058be0aef8390a422b908ae422b90cb12196242f2c4845890fce43908e4390ce4290ce43908db86e0db96e4db86e4b0dc9b72dc161b936e5b836e5b936e5b936e1b92c370586e0b0dc1b72dc95b7256dc1b70dc1b72dc9b72dc1b70dc95b7056dc9b70dcff9b72dcf9b70dc9b72dc15b70586e0b0dc1b70dc95b726dcb71e586e4b0dc7fffffffff95fc658f8fffffffcafe2ffffff390a43390e42f2b90ce43908b12195c86721c86721c85e5721796243f2c4845890cae422b908e4390ce4290cae422b908e4390cb1217fffff962f92c5f3fffffffffe58be7ffffffffcb17cd5f2c0a266f813e066289b3a462529c5265e39c50512651a4ca61c96096631294bc632f1cbc731294bc630e30ae532b8c90f3158c38f32438ae33158c1b82b0e34a8491985f04929924630798c1e3079978c71498948121184847141589486289948665210a2462898a26581448aca432c0a2462890a2456289958a27e58144cb1f17ff963e23f8fe3f2c7c5e6dc3726dcb726dc370586e4db86e4db96e4b1c79b70dc9b72dc1b72dc1b72dc9b70dc1b72dc9b72dcf9b72dcf9b72dc95b70586e0db96e0b121162432b908b12115c865890cae43fff2c486572195c85e6dcb706dcb706dcb726dc37256dc15b7256dc9b70dc161b92c372586e4adb8ff36e1b936e5b8ff390a422b908ae422b908ae432b908e4390ce42908e4290ffcb1211c8521962422c484721486721c86572196242ff2bbe3cb17c15df058be4aef82bbe4b17c95df258be0b17c9df17c79df37c95df277cdf258be3fcef8be3caef82bbe7ce4390ce42908ae42390e43ff2c48457211c8721962432c485e721c845890bce43908e42908ae43f2b90cae422b908ae43f390e432b90cb121e11a244c8532310ce157e3496d8d93103fcc48c61f831931cad5270ae8192a1276cb51950b27064a9958b034403a095cd245b3b7114c8a46353c2ce1fffbd2c4ea83f37d5cce0ff6d7c60934de41cd6691444353298d52a832342b64c8a324908d5644353aa8444a1cf46b3f9a6506a968b563fea8af41bb1a648798f1e63c898c266f07155e133b3428486c913c33670cf9a295866cf19e39485681a081a081a1e129c677e57e1a07cacd338ad120ecd23499f1de8cc44d0f8ce46e19e819c990a0fe52909c5101a089f871a3e54287b64d19551340e34117fed19e91222672049f133f1b24748b928d4a8f709b9371d2478a3a26e891e375d22fc75f375b28f33ce909bd76cecbc9301f81dc82ceab0a9713b93676594f58edb49da3bef3c2f3bb03b6b1cbdf772e8cf0b4730257481e26ecdc70de789b62ab46d344ae916a6e3981b8f916a586c6b29d8d916c6f3a6eb84df9bed5b98379ee61f52c72bd3d3dc87e821ca177e00791c393b87227f2cd69c7ddc7a067703cc3b0ee47dafcbe61fbad63ee01800661f807c0111c7079e00600181e7819600647aa47e30c10cc641634bbb8df69a30a24cd04093289c8cae19347bb8e0aea368b28d8ea232684cca8573291ccd40a33350ecc624a30995cd890738837cd083103010c969c366b18d326230e03d1b0c1a1c317908ca25031f8502c0b2c898684248150e4120d48b4e061269366e3a6e4269a868803069b4e9c149d4e930374461238afa008c638402091a80889ac8840afd213404097154d5215a622b3ded69d6804b9a641a640282a5500d598d64c98100a470c870a802590fcd274de84d350cb014ba7df57e00281aa52ce5e2c55733dceccb1da81986f825237da3552354c4d752de4b60161a862611a68063251aa618a71c381bcaa78ad160060880a19d761ac460168cb38280a22ba4826407294a76971400b370db81204d8111b8f344f102a8e2e36a8dae0369545055d5692f2ca619932e67782e235a17eb5aa3a58661da90d3b4ca588b5d4e50214d093204b8ac74401342cd035225f635d0f3639a0ba51c4e648a6f9554c0b385ced7393cb8cf34a6970a6b5ba5a6ed5a5a5d534bad56954bad5594cb6f5694cb795a354dda58cd3674b19b3a954bad56954bad5594cb7095592028b51774bdc5f541a2a0287884f4281658d330cc64c37028f90c0237c00d19e686807c2e76e46b7a60fc415882830e5341837c7077c6a1e61ac1664858156418b18fffbd2c4f28234520cec0e67178619bf8c199c3fa82898c416f157c0b2aa1a08eb2a42498c798ab00190bb440d8a34055cca2823337443517315c0a3e43008df023463a6680c44a04145d541a56555050f50c51751550e50d5165655505575344d90148c4b04b844f2580cbc28c30941d0128808c0c28a9890e38611942802e5abb7325d56e5d9a765618b8414088443052520e8c4002e3913005532a0c5b0af083a29c02e4d0e01ac3546c3805c20892c065e166015260121a3178ad6bb7265da54a5c10a804031921214708210972048e1862c885c42852520e8c4422dda0115e3427f6028360882dea6429528dc91a8ec94a92891e98050305180050a985124a81d488085970e60634c20061c54c4871c3084a5a82dfa5123ea732c0a8f2db5805575e0d11b0ae972bcbb522ad2a5c49513d288a9280bb96c32d04749fc894c24d10a7523635c282d52c08ee9955ca55d2fae14ec0c70e94c414d45332e3130305555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555";
792
+ var rc = Object.defineProperty, O = (c, e, a, s) => {
792
793
  for (var i = void 0, d = c.length - 1, f; d >= 0; d--)
793
794
  (f = c[d]) && (i = f(e, a, i) || i);
794
- return i && oc(e, a, i), i;
795
+ return i && rc(e, a, i), i;
795
796
  };
796
797
  const I = Ke.noConflict();
797
798
  I.setLevel("info");
798
- const ne = "cb_";
799
- class z extends Ct {
799
+ const se = "cb_";
800
+ class P extends kt {
800
801
  constructor() {
801
802
  super(...arguments), this.actionIdCounter = 0, this.prefilledFormValues = {}, this.wsClient = null, this.replyMessage = null, this.streamingResponseInProgress = !1, this.streamingResponseLastText = null, this.streamingResponseBuffer = null, this.streamingResponseTagStartPos = 0, this.streamingResponseCurrentTag = null;
802
803
  }
@@ -881,7 +882,7 @@ class z extends Ct {
881
882
  return !this.prefilledFormValues || !(e in this.prefilledFormValues) ? null : this.prefilledFormValues[e];
882
883
  }
883
884
  initStartupForm() {
884
- const e = xt(null, ["startupForm"], this.botSettings);
885
+ const e = wt(null, ["startupForm"], this.botSettings);
885
886
  if (!e || !(e != null && e.name)) {
886
887
  I.info("Startup form not present");
887
888
  return;
@@ -889,25 +890,25 @@ class z extends Ct {
889
890
  this.initForm(e);
890
891
  }
891
892
  initForm(e = null) {
892
- const a = e, s = xt(null, ["name"], e);
893
+ const a = e, s = wt(null, ["name"], e);
893
894
  if (!a || !s)
894
895
  return;
895
- const i = xt(null, ["fields"], e);
896
+ const i = wt(null, ["fields"], e);
896
897
  if (!Array.isArray(i) || i.length <= 0) {
897
898
  I.info("form has no fields", e);
898
899
  return;
899
900
  }
900
- const d = `${ne}${this.setting.botId}.${this.conversationId}.form.${s}`, f = localStorage.getItem(d);
901
+ const d = `${se}${this.setting.botId}.${this.conversationId}.form.${s}`, f = localStorage.getItem(d);
901
902
  if (f) {
902
903
  let x = null;
903
904
  try {
904
905
  x = JSON.parse(f);
905
- } catch (_) {
906
- I.error(`Failed to parse stored form data: ${_.message}`), x = null;
906
+ } catch (S) {
907
+ I.error(`Failed to parse stored form data: ${S.message}`), x = null;
907
908
  }
908
909
  if (x) {
909
- this.sendFormData(s, x).catch((_) => {
910
- I.error(`Error when submitting form: ${_.message}`);
910
+ this.sendFormData(s, x).catch((S) => {
911
+ I.error(`Error when submitting form: ${S.message}`);
911
912
  });
912
913
  return;
913
914
  }
@@ -927,7 +928,7 @@ class z extends Ct {
927
928
  f[x] = parseInt(d.substr(x * 2, 2), 16);
928
929
  return f;
929
930
  };
930
- let a = new Blob([e(sc)], { type: "application/octet-stream" });
931
+ let a = new Blob([e(oc)], { type: "application/octet-stream" });
931
932
  const s = URL.createObjectURL(a);
932
933
  new Audio(s).play();
933
934
  }
@@ -940,7 +941,7 @@ class z extends Ct {
940
941
  if (this.wsClient)
941
942
  return this.wsClient;
942
943
  const a = `${this.setting.url.startsWith("localhost") ? "ws" : "wss"}://${this.setting.url}/api/bot/connect/${this.setting.orgId}/${this.setting.botId}/${this.conversationId}`;
943
- return I.info(`Initiating ws connection to ${a} ...`), this.wsClient = new Qa({
944
+ return I.info(`Initiating ws connection to ${a} ...`), this.wsClient = new ec({
944
945
  url: a,
945
946
  orgId: this.setting.orgId,
946
947
  botId: this.setting.botId,
@@ -1110,8 +1111,8 @@ class z extends Ct {
1110
1111
  new CustomEvent("c7o:bot:stateEvent", {
1111
1112
  detail: x
1112
1113
  })
1113
- ), this.sendActionCompleted(x).catch((_) => {
1114
- I.error(`Error: failed to send action completed: ${_.message}`);
1114
+ ), this.sendActionCompleted(x).catch((S) => {
1115
+ I.error(`Error: failed to send action completed: ${S.message}`);
1115
1116
  });
1116
1117
  }
1117
1118
  this.actions.splice(i, 1);
@@ -1178,7 +1179,7 @@ class z extends Ct {
1178
1179
  I.info("submitForm: No form is active - ignored");
1179
1180
  return;
1180
1181
  }
1181
- const a = `${ne}${this.setting.botId}.${this.conversationId}.form.${this.form.name}`;
1182
+ const a = `${se}${this.setting.botId}.${this.conversationId}.form.${this.form.name}`;
1182
1183
  await this.sendFormData(this.form.name, e), localStorage.setItem(a, JSON.stringify(e)), "name" in e && (this.feedbackName = e.name), "email" in e && (this.feedbackEmail = e.email), this.form = null;
1183
1184
  }
1184
1185
  async sendFormData(e, a) {
@@ -1233,40 +1234,40 @@ class z extends Ct {
1233
1234
  }), this.feedback = !1;
1234
1235
  }
1235
1236
  }
1236
- H([
1237
- le({ prefix: ne }),
1238
- P({ value: "en" })
1239
- ], z.prototype, "language");
1240
- H([
1241
- le({ prefix: ne }),
1242
- P({ value: "light" })
1243
- ], z.prototype, "theme");
1244
- H([
1245
- le({ prefix: ne }),
1246
- P({ type: Boolean, value: !1 })
1247
- ], z.prototype, "open");
1248
- H([
1249
- P({ type: Boolean, value: !1 })
1250
- ], z.prototype, "alwaysOpen");
1251
- H([
1252
- le({ prefix: ne }),
1253
- P({ value: "false" })
1254
- ], z.prototype, "connectWs");
1255
- H([
1256
- le({ prefix: ne }),
1257
- P({ value: Ve() })
1258
- ], z.prototype, "conversationId");
1259
- H([
1260
- le({ prefix: ne }),
1261
- P({ value: 0 })
1262
- ], z.prototype, "lastConversationUpdate");
1263
- H([
1264
- le({ prefix: ne }),
1265
- P({ type: Array, value: [] })
1266
- ], z.prototype, "messages");
1267
- H([
1268
- le({ prefix: ne }),
1269
- P({
1237
+ O([
1238
+ le({ prefix: se }),
1239
+ z({ value: "en" })
1240
+ ], P.prototype, "language");
1241
+ O([
1242
+ le({ prefix: se }),
1243
+ z({ value: "light" })
1244
+ ], P.prototype, "theme");
1245
+ O([
1246
+ le({ prefix: se }),
1247
+ z({ type: Boolean, value: !1 })
1248
+ ], P.prototype, "open");
1249
+ O([
1250
+ z({ type: Boolean, value: !1 })
1251
+ ], P.prototype, "alwaysOpen");
1252
+ O([
1253
+ le({ prefix: se }),
1254
+ z({ value: "false" })
1255
+ ], P.prototype, "connectWs");
1256
+ O([
1257
+ le({ prefix: se }),
1258
+ z({ value: Ve() })
1259
+ ], P.prototype, "conversationId");
1260
+ O([
1261
+ le({ prefix: se }),
1262
+ z({ value: 0 })
1263
+ ], P.prototype, "lastConversationUpdate");
1264
+ O([
1265
+ le({ prefix: se }),
1266
+ z({ type: Array, value: [] })
1267
+ ], P.prototype, "messages");
1268
+ O([
1269
+ le({ prefix: se }),
1270
+ z({
1270
1271
  type: Array,
1271
1272
  value: []
1272
1273
  /*
@@ -1308,35 +1309,35 @@ H([
1308
1309
  },
1309
1310
  ],*/
1310
1311
  })
1311
- ], z.prototype, "actions");
1312
- H([
1313
- P({ type: Object, value: null })
1314
- ], z.prototype, "form");
1315
- H([
1316
- P({ type: Boolean, value: !1 })
1317
- ], z.prototype, "botSettingsInitialized");
1318
- H([
1319
- P({ type: Number, value: 5 })
1320
- ], z.prototype, "botSettingsRetryTimeout");
1321
- H([
1322
- P({ type: Object, value: null })
1323
- ], z.prototype, "botSettings");
1324
- H([
1325
- P({ type: Boolean, value: !0 })
1326
- ], z.prototype, "disabled");
1327
- H([
1328
- P({ type: Boolean, value: !1 })
1329
- ], z.prototype, "connecting");
1330
- H([
1331
- le({ prefix: ne }),
1332
- P({ value: "true" })
1333
- ], z.prototype, "shouldEngage");
1334
- H([
1335
- P({ type: Boolean, value: !1 })
1336
- ], z.prototype, "engage");
1337
- H([
1338
- le({ prefix: ne }),
1339
- P({
1312
+ ], P.prototype, "actions");
1313
+ O([
1314
+ z({ type: Object, value: null })
1315
+ ], P.prototype, "form");
1316
+ O([
1317
+ z({ type: Boolean, value: !1 })
1318
+ ], P.prototype, "botSettingsInitialized");
1319
+ O([
1320
+ z({ type: Number, value: 5 })
1321
+ ], P.prototype, "botSettingsRetryTimeout");
1322
+ O([
1323
+ z({ type: Object, value: null })
1324
+ ], P.prototype, "botSettings");
1325
+ O([
1326
+ z({ type: Boolean, value: !0 })
1327
+ ], P.prototype, "disabled");
1328
+ O([
1329
+ z({ type: Boolean, value: !1 })
1330
+ ], P.prototype, "connecting");
1331
+ O([
1332
+ le({ prefix: se }),
1333
+ z({ value: "true" })
1334
+ ], P.prototype, "shouldEngage");
1335
+ O([
1336
+ z({ type: Boolean, value: !1 })
1337
+ ], P.prototype, "engage");
1338
+ O([
1339
+ le({ prefix: se }),
1340
+ z({
1340
1341
  type: Object,
1341
1342
  value: {
1342
1343
  orgId: null,
@@ -1347,37 +1348,43 @@ H([
1347
1348
  feedbackEnabled: !1
1348
1349
  }
1349
1350
  })
1350
- ], z.prototype, "setting");
1351
- H([
1352
- P({ type: Boolean, value: !1 })
1353
- ], z.prototype, "feedback");
1354
- H([
1355
- P({ type: Number, value: 5 })
1356
- ], z.prototype, "feedbackScore");
1357
- H([
1358
- P({ type: String, value: "" })
1359
- ], z.prototype, "feedbackUserMessage");
1360
- H([
1361
- P({ type: String, value: "" })
1362
- ], z.prototype, "feedbackAnswerMessageId");
1363
- H([
1364
- P({ type: String, value: "" })
1365
- ], z.prototype, "feedbackAnswer");
1366
- H([
1367
- P({ type: String, value: "" })
1368
- ], z.prototype, "feedbackAnswerUserName");
1369
- H([
1370
- P({ type: Array, value: [] })
1371
- ], z.prototype, "feedbackMessages");
1372
- H([
1373
- le({ prefix: ne }),
1374
- P({ type: String, value: "" })
1375
- ], z.prototype, "feedbackName");
1376
- H([
1377
- le({ prefix: ne }),
1378
- P({ type: String, value: "" })
1379
- ], z.prototype, "feedbackEmail");
1380
- const p = new z(), rc = Y`
1351
+ ], P.prototype, "setting");
1352
+ O([
1353
+ z({ type: String, value: "top-end" })
1354
+ ], P.prototype, "appearanceAnchorPopupPosition");
1355
+ O([
1356
+ z({ type: String, value: "right" })
1357
+ ], P.prototype, "appearanceUserMessageAvatarPosition");
1358
+ O([
1359
+ z({ type: Boolean, value: !1 })
1360
+ ], P.prototype, "feedback");
1361
+ O([
1362
+ z({ type: Number, value: 5 })
1363
+ ], P.prototype, "feedbackScore");
1364
+ O([
1365
+ z({ type: String, value: "" })
1366
+ ], P.prototype, "feedbackUserMessage");
1367
+ O([
1368
+ z({ type: String, value: "" })
1369
+ ], P.prototype, "feedbackAnswerMessageId");
1370
+ O([
1371
+ z({ type: String, value: "" })
1372
+ ], P.prototype, "feedbackAnswer");
1373
+ O([
1374
+ z({ type: String, value: "" })
1375
+ ], P.prototype, "feedbackAnswerUserName");
1376
+ O([
1377
+ z({ type: Array, value: [] })
1378
+ ], P.prototype, "feedbackMessages");
1379
+ O([
1380
+ le({ prefix: se }),
1381
+ z({ type: String, value: "" })
1382
+ ], P.prototype, "feedbackName");
1383
+ O([
1384
+ le({ prefix: se }),
1385
+ z({ type: String, value: "" })
1386
+ ], P.prototype, "feedbackEmail");
1387
+ const p = new P(), dc = Y`
1381
1388
  ${ge}
1382
1389
  :host {
1383
1390
  position: relative;
@@ -1411,8 +1418,9 @@ const p = new z(), rc = Y`
1411
1418
  padding: 10px;
1412
1419
  }
1413
1420
 
1414
- .title {
1415
- justify-items: center;
1421
+ .cb-header-title {
1422
+ flex: 1 1 auto;
1423
+ text-align: center;
1416
1424
  }
1417
1425
 
1418
1426
  .cb-setting-button {
@@ -1423,10 +1431,12 @@ const p = new z(), rc = Y`
1423
1431
  .cb-header-logo {
1424
1432
  color: var(--enegelai-bot-header-color, rgba(255, 255, 255, 1));
1425
1433
  line-height: 0;
1434
+ flex: 0 1 auto;
1426
1435
  }
1427
1436
 
1428
1437
  .cb-header-img {
1429
1438
  height: 40px;
1439
+ flex: 0 1 auto;
1430
1440
  }
1431
1441
 
1432
1442
  .cb-close-button {
@@ -1437,18 +1447,27 @@ const p = new z(), rc = Y`
1437
1447
  .cb-header-close {
1438
1448
  color: var(--enegelai-bot-header-close-color, var(--enegelai-bot-header-color, rgba(255, 255, 255, 1)));
1439
1449
  font-size: 0.8em;
1450
+ cursor: pointer;
1451
+ flex: 0 1 auto;
1452
+ }
1453
+
1454
+ .cb-header-close:hover {
1455
+ color: var(--enegelai-bot-header-close-hover-color, var(--enegelai-bot-header-close-color, rgba(255, 255, 255, 1)));
1440
1456
  }
1441
1457
 
1442
1458
  .cb-setting-button cb-icon {
1443
1459
  display: inline;
1444
1460
  }
1445
1461
  `;
1446
- var dc = Object.defineProperty, fc = (c, e, a, s) => {
1462
+ var fc = Object.defineProperty, lc = (c, e, a, s) => {
1447
1463
  for (var i = void 0, d = c.length - 1, f; d >= 0; d--)
1448
1464
  (f = c[d]) && (i = f(e, a, i) || i);
1449
- return i && dc(e, a, i), i;
1465
+ return i && fc(e, a, i), i;
1450
1466
  };
1451
- class Q extends pt {
1467
+ Ha("system", {
1468
+ resolver: (c) => ""
1469
+ });
1470
+ class ee extends ut {
1452
1471
  constructor() {
1453
1472
  super(...arguments), this.lang = "en";
1454
1473
  }
@@ -1463,17 +1482,16 @@ class Q extends pt {
1463
1482
  return this.dispatchEvent(s), s;
1464
1483
  }
1465
1484
  }
1466
- fc([
1485
+ lc([
1467
1486
  v({ type: String })
1468
- ], Q.prototype, "lang");
1469
- const ot = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M2.146 2.854a.5.5 0 1 1 .708-.708L8 7.293l5.146-5.147a.5.5 0 0 1 .708.708L8.707 8l5.147 5.146a.5.5 0 0 1-.708.708L8 8.707l-5.146 5.147a.5.5 0 0 1-.708-.708L7.293 8z"/></svg>';
1470
- var lc = Object.defineProperty, bc = Object.getOwnPropertyDescriptor, na = (c, e, a, s) => {
1471
- for (var i = s > 1 ? void 0 : s ? bc(e, a) : e, d = c.length - 1, f; d >= 0; d--)
1487
+ ], ee.prototype, "lang");
1488
+ var bc = Object.defineProperty, hc = Object.getOwnPropertyDescriptor, na = (c, e, a, s) => {
1489
+ for (var i = s > 1 ? void 0 : s ? hc(e, a) : e, d = c.length - 1, f; d >= 0; d--)
1472
1490
  (f = c[d]) && (i = (s ? f(e, a, i) : f(i)) || i);
1473
- return s && i && lc(e, a, i), i;
1491
+ return s && i && bc(e, a, i), i;
1474
1492
  };
1475
- const hc = '<svg viewBox="0 0 16 16" width="16px" height="16px"><path fill="currentColor" d="M2.146 2.854a.5.5 0 1 1 .708-.708L8 7.293l5.146-5.147a.5.5 0 0 1 .708.708L8.707 8l5.147 5.146a.5.5 0 0 1-.708.708L8 8.707l-5.146 5.147a.5.5 0 0 1-.708-.708L7.293 8z"></path></svg>';
1476
- let rt = class extends Q {
1493
+ const uc = '<svg viewBox="0 0 16 16" width="16px" height="16px"><path fill="currentColor" d="M2.146 2.854a.5.5 0 1 1 .708-.708L8 7.293l5.146-5.147a.5.5 0 0 1 .708.708L8.707 8l5.147 5.146a.5.5 0 0 1-.708.708L8 8.707l-5.146 5.147a.5.5 0 0 1-.708-.708L7.293 8z"></path></svg>';
1494
+ let ot = class extends ee {
1477
1495
  constructor() {
1478
1496
  super(...arguments), this.title = "ChatBot";
1479
1497
  }
@@ -1484,38 +1502,46 @@ let rt = class extends Q {
1484
1502
  */
1485
1503
  renderExp() {
1486
1504
  return g` <header class="cb-header" part="header">
1487
- ${re(
1505
+ ${ne(
1488
1506
  p.setting.logoUrl !== "",
1489
1507
  () => g`<img class="cb-header-logo" part="header-logo" src="${p.setting.logoUrl}" />`,
1490
- () => g`<div class="cb-header-logo" part="header-logo">${ae(p.setting.logoSvg)}</div>`
1508
+ () => g`<div class="cb-header-logo" part="header-logo">${Q(p.setting.logoSvg)}</div>`
1491
1509
  )}
1492
1510
  <div class="cb-header-title" part="header-title">${this.title}</div>
1493
- ${re(
1511
+ ${ne(
1494
1512
  p.alwaysOpen,
1495
1513
  () => g``,
1496
- () => g`<div class="cb-header-close" part="header-close">${ae(hc)}</div>`
1514
+ () => g`<div class="cb-header-close" part="header-close">${Q(uc)}</div>`
1497
1515
  )}
1498
1516
  </header>`;
1499
1517
  }
1500
1518
  render() {
1501
1519
  return g` <header class="cb-header" part="header">
1502
- ${re(
1520
+ ${ne(
1503
1521
  p.setting.logoUrl !== "",
1504
1522
  () => g`<img class="cb-header-img" part="header-logo" src="${p.setting.logoUrl}" />`,
1505
- () => g`<div class="cb-header-logo" part="header-logo">${ae(p.setting.logoSvg)}</div>`
1523
+ () => g`<div class="cb-header-logo" part="header-logo">${Q(p.setting.logoSvg)}</div>`
1506
1524
  )}
1507
- <span class="center title" part="header-title">${this.title}</span>
1508
- ${re(
1525
+ <div class="cb-header-title" part="header-title">${this.title}</div>
1526
+ ${ne(
1509
1527
  p.alwaysOpen,
1510
- () => g``,
1511
- () => g`<span class="right">
1512
- <sl-button @click=${this._clickCloseHandler} class="cb-close-button" variant="text" circle part="header-close">
1513
- <cb-icon class="cb-header-close" svg="${ot}"></cb-icon>
1514
- </sl-button>
1515
- </span>`
1528
+ () => g`<div></div>`,
1529
+ () => g`<div @click=${this._clickCloseHandler} class="cb-header-close" part="header-close">${Q(p.setting.closeSvg)}</div>`
1516
1530
  )}
1517
1531
  </header>`;
1518
1532
  }
1533
+ /*
1534
+ ${when(
1535
+ appState.alwaysOpen,
1536
+ () => html`<div></div>`,
1537
+ () =>
1538
+ html`<span class="right">
1539
+ <sl-button @click=${this._clickCloseHandler} class="cb-close-button" variant="text" circle part="header-close">
1540
+ <cb-icon class="cb-header-close" svg="${BiXLg}"></cb-icon>
1541
+ </sl-button>
1542
+ </span>`,
1543
+ )}
1544
+ * */
1519
1545
  _clickHandler() {
1520
1546
  this.emit("setting:show");
1521
1547
  }
@@ -1527,14 +1553,14 @@ let rt = class extends Q {
1527
1553
  });
1528
1554
  }
1529
1555
  };
1530
- rt.styles = rc;
1556
+ ot.styles = dc;
1531
1557
  na([
1532
1558
  v({ type: String, attribute: "title" })
1533
- ], rt.prototype, "title", 2);
1534
- rt = na([
1559
+ ], ot.prototype, "title", 2);
1560
+ ot = na([
1535
1561
  Z("cb-header")
1536
- ], rt);
1537
- const uc = Y`
1562
+ ], ot);
1563
+ const pc = Y`
1538
1564
  ${ge}
1539
1565
  .cb-footer {
1540
1566
  line-height: 60px;
@@ -1549,12 +1575,12 @@ const uc = Y`
1549
1575
  color: var(--primary-color);
1550
1576
  }
1551
1577
  `;
1552
- var pc = Object.defineProperty, gc = Object.getOwnPropertyDescriptor, mc = (c, e, a, s) => {
1553
- for (var i = s > 1 ? void 0 : s ? gc(e, a) : e, d = c.length - 1, f; d >= 0; d--)
1578
+ var gc = Object.defineProperty, mc = Object.getOwnPropertyDescriptor, yc = (c, e, a, s) => {
1579
+ for (var i = s > 1 ? void 0 : s ? mc(e, a) : e, d = c.length - 1, f; d >= 0; d--)
1554
1580
  (f = c[d]) && (i = (s ? f(e, a, i) : f(i)) || i);
1555
- return s && i && pc(e, a, i), i;
1581
+ return s && i && gc(e, a, i), i;
1556
1582
  };
1557
- let _t = class extends Q {
1583
+ let Ct = class extends ee {
1558
1584
  constructor() {
1559
1585
  super(...arguments), this.year = (/* @__PURE__ */ new Date()).getFullYear();
1560
1586
  }
@@ -1589,11 +1615,11 @@ let _t = class extends Q {
1589
1615
  `;
1590
1616
  }
1591
1617
  };
1592
- _t.styles = uc;
1593
- _t = mc([
1618
+ Ct.styles = pc;
1619
+ Ct = yc([
1594
1620
  Z("cb-footer")
1595
- ], _t);
1596
- const yc = Y`
1621
+ ], Ct);
1622
+ const vc = Y`
1597
1623
  ${ge}
1598
1624
 
1599
1625
  :host {
@@ -1796,19 +1822,19 @@ var sa = { exports: {} };
1796
1822
  return n && d(t.prototype, n), Object.defineProperty(t, "prototype", { writable: !1 }), t;
1797
1823
  }
1798
1824
  var x = Date.now();
1799
- function _() {
1825
+ function S() {
1800
1826
  var t = {}, n = !0, o = 0, r = arguments.length;
1801
1827
  Object.prototype.toString.call(arguments[0]) === "[object Boolean]" && (n = arguments[0], o++);
1802
1828
  for (var l = function(b) {
1803
- for (var u in b) Object.prototype.hasOwnProperty.call(b, u) && (n && Object.prototype.toString.call(b[u]) === "[object Object]" ? t[u] = _(!0, t[u], b[u]) : t[u] = b[u]);
1829
+ for (var u in b) Object.prototype.hasOwnProperty.call(b, u) && (n && Object.prototype.toString.call(b[u]) === "[object Object]" ? t[u] = S(!0, t[u], b[u]) : t[u] = b[u]);
1804
1830
  }; o < r; o++) {
1805
1831
  var h = arguments[o];
1806
1832
  l(h);
1807
1833
  }
1808
1834
  return t;
1809
1835
  }
1810
- function S(t, n) {
1811
- if ((B(t) || t === window || t === document) && (t = [t]), We(t) || Ce(t) || (t = [t]), zt(t) != 0) {
1836
+ function _(t, n) {
1837
+ if ((B(t) || t === window || t === document) && (t = [t]), We(t) || Ce(t) || (t = [t]), Pt(t) != 0) {
1812
1838
  if (We(t) && !Ce(t)) for (var o = t.length, r = 0; r < o && n.call(t[r], t[r], r, t) !== !1; r++) ;
1813
1839
  else if (Ce(t)) {
1814
1840
  for (var l in t) if (W(t, l) && n.call(t[l], t[l], l, t) === !1) break;
@@ -1817,39 +1843,39 @@ var sa = { exports: {} };
1817
1843
  }
1818
1844
  function J(t) {
1819
1845
  var n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null, o = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : null, r = t[x] = t[x] || [], l = { all: r, evt: null, found: null };
1820
- return n && o && zt(r) > 0 && S(r, function(h, b) {
1846
+ return n && o && Pt(r) > 0 && _(r, function(h, b) {
1821
1847
  if (h.eventName == n && h.fn.toString() == o.toString()) return l.found = !0, l.evt = b, !1;
1822
1848
  }), l;
1823
1849
  }
1824
1850
  function F(t) {
1825
1851
  var n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, o = n.onElement, r = n.withCallback, l = n.avoidDuplicate, h = l === void 0 || l, b = n.once, u = b !== void 0 && b, y = n.useCapture, m = y !== void 0 && y, w = arguments.length > 2 ? arguments[2] : void 0, k = o || [];
1826
- function M(E) {
1827
- L(r) && r.call(w, E, this), u && M.destroy();
1852
+ function $(E) {
1853
+ L(r) && r.call(w, E, this), u && $.destroy();
1828
1854
  }
1829
- return q(k) && (k = document.querySelectorAll(k)), M.destroy = function() {
1830
- S(k, function(E) {
1831
- var A = J(E, t, M);
1832
- A.found && A.all.splice(A.evt, 1), E.removeEventListener && E.removeEventListener(t, M, m);
1855
+ return q(k) && (k = document.querySelectorAll(k)), $.destroy = function() {
1856
+ _(k, function(E) {
1857
+ var A = J(E, t, $);
1858
+ A.found && A.all.splice(A.evt, 1), E.removeEventListener && E.removeEventListener(t, $, m);
1833
1859
  });
1834
- }, S(k, function(E) {
1835
- var A = J(E, t, M);
1836
- (E.addEventListener && h && !A.found || !h) && (E.addEventListener(t, M, m), A.all.push({ eventName: t, fn: M }));
1837
- }), M;
1860
+ }, _(k, function(E) {
1861
+ var A = J(E, t, $);
1862
+ (E.addEventListener && h && !A.found || !h) && (E.addEventListener(t, $, m), A.all.push({ eventName: t, fn: $ }));
1863
+ }), $;
1838
1864
  }
1839
1865
  function T(t, n) {
1840
- S(n.split(" "), function(o) {
1866
+ _(n.split(" "), function(o) {
1841
1867
  return t.classList.add(o);
1842
1868
  });
1843
1869
  }
1844
1870
  function N(t, n) {
1845
- S(n.split(" "), function(o) {
1871
+ _(n.split(" "), function(o) {
1846
1872
  return t.classList.remove(o);
1847
1873
  });
1848
1874
  }
1849
1875
  function K(t, n) {
1850
1876
  return t.classList.contains(n);
1851
1877
  }
1852
- function $(t, n) {
1878
+ function M(t, n) {
1853
1879
  for (; t !== document.body; ) {
1854
1880
  if (!(t = t.parentElement)) return !1;
1855
1881
  if (typeof t.matches == "function" ? t.matches(n) : t.msMatchesSelector(n)) return t;
@@ -1859,11 +1885,11 @@ var sa = { exports: {} };
1859
1885
  var n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "", o = arguments.length > 2 && arguments[2] !== void 0 && arguments[2];
1860
1886
  if (!t || n === "") return !1;
1861
1887
  if (n === "none") return L(o) && o(), !1;
1862
- var r = yt(), l = n.split(" ");
1863
- S(l, function(h) {
1888
+ var r = mt(), l = n.split(" ");
1889
+ _(l, function(h) {
1864
1890
  T(t, "g" + h);
1865
1891
  }), F(r, { onElement: t, avoidDuplicate: !1, once: !0, withCallback: function(h, b) {
1866
- S(l, function(u) {
1892
+ _(l, function(u) {
1867
1893
  N(b, "g" + u);
1868
1894
  }), L(o) && o();
1869
1895
  } });
@@ -1887,11 +1913,11 @@ var sa = { exports: {} };
1887
1913
  function ie() {
1888
1914
  return { width: window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth, height: window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight };
1889
1915
  }
1890
- function yt() {
1916
+ function mt() {
1891
1917
  var t, n = document.createElement("fakeelement"), o = { animation: "animationend", OAnimation: "oAnimationEnd", MozAnimation: "animationend", WebkitAnimation: "webkitAnimationEnd" };
1892
1918
  for (t in o) if (n.style[t] !== void 0) return o[t];
1893
1919
  }
1894
- function je(t, n, o, r) {
1920
+ function Oe(t, n, o, r) {
1895
1921
  if (t()) n();
1896
1922
  else {
1897
1923
  var l;
@@ -1902,7 +1928,7 @@ var sa = { exports: {} };
1902
1928
  }
1903
1929
  }
1904
1930
  function Qe(t, n, o) {
1905
- if (se(t)) console.error("Inject assets error");
1931
+ if (oe(t)) console.error("Inject assets error");
1906
1932
  else if (L(n) && (o = n, n = !1), q(n) && n in window) L(o) && o();
1907
1933
  else {
1908
1934
  var r;
@@ -1913,7 +1939,7 @@ var sa = { exports: {} };
1913
1939
  }
1914
1940
  if ((r = document.querySelectorAll('script[src="' + t + '"]')) && r.length > 0) {
1915
1941
  if (L(o)) {
1916
- if (q(n)) return je(function() {
1942
+ if (q(n)) return Oe(function() {
1917
1943
  return window[n] !== void 0;
1918
1944
  }, function() {
1919
1945
  o();
@@ -1924,7 +1950,7 @@ var sa = { exports: {} };
1924
1950
  var u = document.createElement("script");
1925
1951
  u.type = "text/javascript", u.src = t, u.onload = function() {
1926
1952
  if (L(o)) {
1927
- if (q(n)) return je(function() {
1953
+ if (q(n)) return Oe(function() {
1928
1954
  return window[n] !== void 0;
1929
1955
  }, function() {
1930
1956
  o();
@@ -1956,13 +1982,13 @@ var sa = { exports: {} };
1956
1982
  function Ce(t) {
1957
1983
  return s(t) === "object" && t != null && !L(t) && !Ie(t);
1958
1984
  }
1959
- function se(t) {
1985
+ function oe(t) {
1960
1986
  return t == null;
1961
1987
  }
1962
1988
  function W(t, n) {
1963
1989
  return t !== null && hasOwnProperty.call(t, n);
1964
1990
  }
1965
- function zt(t) {
1991
+ function Pt(t) {
1966
1992
  if (Ce(t)) {
1967
1993
  if (t.keys) return t.keys().length;
1968
1994
  var n = 0;
@@ -1974,13 +2000,13 @@ var sa = { exports: {} };
1974
2000
  function et(t) {
1975
2001
  return !isNaN(parseFloat(t)) && isFinite(t);
1976
2002
  }
1977
- function Ot() {
2003
+ function zt() {
1978
2004
  var t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : -1, n = document.querySelectorAll(".gbtn[data-taborder]:not(.disabled)");
1979
2005
  if (!n.length) return !1;
1980
2006
  if (n.length == 1) return n[0];
1981
2007
  typeof t == "string" && (t = parseInt(t));
1982
2008
  var o = [];
1983
- S(n, function(u) {
2009
+ _(n, function(u) {
1984
2010
  o.push(u.getAttribute("data-taborder"));
1985
2011
  });
1986
2012
  var r = Math.max.apply(Math, o.map(function(u) {
@@ -2006,10 +2032,10 @@ var sa = { exports: {} };
2006
2032
  var b = document.querySelectorAll(".gbtn[data-taborder]");
2007
2033
  if (!b || b.length <= 0) return;
2008
2034
  if (!l) {
2009
- var u = Ot();
2035
+ var u = zt();
2010
2036
  return void (u && (u.focus(), T(u, "focused")));
2011
2037
  }
2012
- var y = Ot(l.getAttribute("data-taborder"));
2038
+ var y = zt(l.getAttribute("data-taborder"));
2013
2039
  N(l, "focused"), y && (y.focus(), T(y, "focused"));
2014
2040
  }
2015
2041
  r == 39 && t.nextSlide(), r == 37 && t.prevSlide(), r == 27 && t.close();
@@ -2057,23 +2083,23 @@ var sa = { exports: {} };
2057
2083
  t.style.transform = "translate3d(" + n + "px, " + o + "px, 0)";
2058
2084
  } }, { key: "widowWidth", value: function() {
2059
2085
  return window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth;
2060
- } }]), jt = f(function t() {
2086
+ } }]), Ot = f(function t() {
2061
2087
  var n = this, o = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
2062
2088
  i(this, t);
2063
2089
  var r = o.dragEl, l = o.toleranceX, h = l === void 0 ? 40 : l, b = o.toleranceY, u = b === void 0 ? 65 : b, y = o.slide, m = y === void 0 ? null : y, w = o.instance, k = w === void 0 ? null : w;
2064
- this.el = r, this.active = !1, this.dragging = !1, this.currentX = null, this.currentY = null, this.initialX = null, this.initialY = null, this.xOffset = 0, this.yOffset = 0, this.direction = null, this.lastDirection = null, this.toleranceX = h, this.toleranceY = u, this.toleranceReached = !1, this.dragContainer = this.el, this.slide = m, this.instance = k, this.el.addEventListener("mousedown", function(M) {
2065
- return n.dragStart(M);
2066
- }, !1), this.el.addEventListener("mouseup", function(M) {
2067
- return n.dragEnd(M);
2068
- }, !1), this.el.addEventListener("mousemove", function(M) {
2069
- return n.drag(M);
2090
+ this.el = r, this.active = !1, this.dragging = !1, this.currentX = null, this.currentY = null, this.initialX = null, this.initialY = null, this.xOffset = 0, this.yOffset = 0, this.direction = null, this.lastDirection = null, this.toleranceX = h, this.toleranceY = u, this.toleranceReached = !1, this.dragContainer = this.el, this.slide = m, this.instance = k, this.el.addEventListener("mousedown", function($) {
2091
+ return n.dragStart($);
2092
+ }, !1), this.el.addEventListener("mouseup", function($) {
2093
+ return n.dragEnd($);
2094
+ }, !1), this.el.addEventListener("mousemove", function($) {
2095
+ return n.drag($);
2070
2096
  }, !1);
2071
2097
  }, [{ key: "dragStart", value: function(t) {
2072
2098
  if (this.slide.classList.contains("zoomed")) this.active = !1;
2073
2099
  else {
2074
2100
  t.type === "touchstart" ? (this.initialX = t.touches[0].clientX - this.xOffset, this.initialY = t.touches[0].clientY - this.yOffset) : (this.initialX = t.clientX - this.xOffset, this.initialY = t.clientY - this.yOffset);
2075
2101
  var n = t.target.nodeName.toLowerCase();
2076
- t.target.classList.contains("nodrag") || $(t.target, ".nodrag") || ["input", "select", "textarea", "button", "a"].indexOf(n) !== -1 ? this.active = !1 : (t.preventDefault(), (t.target === this.el || n !== "img" && $(t.target, ".gslide-inline")) && (this.active = !0, this.el.classList.add("dragging"), this.dragContainer = $(t.target, ".ginner-container")));
2102
+ t.target.classList.contains("nodrag") || M(t.target, ".nodrag") || ["input", "select", "textarea", "button", "a"].indexOf(n) !== -1 ? this.active = !1 : (t.preventDefault(), (t.target === this.el || n !== "img" && M(t.target, ".gslide-inline")) && (this.active = !0, this.el.classList.add("dragging"), this.dragContainer = M(t.target, ".ginner-container")));
2077
2103
  }
2078
2104
  } }, { key: "dragEnd", value: function(t) {
2079
2105
  var n = this;
@@ -2113,34 +2139,34 @@ var sa = { exports: {} };
2113
2139
  var l = t.querySelector(".gslide-media"), h = new Image(), b = "gSlideTitle_" + o, u = "gSlideDesc_" + o;
2114
2140
  h.addEventListener("load", function() {
2115
2141
  L(r) && r();
2116
- }, !1), h.src = n.href, n.sizes != "" && n.srcset != "" && (h.sizes = n.sizes, h.srcset = n.srcset), h.alt = "", se(n.alt) || n.alt === "" || (h.alt = n.alt), n.title !== "" && h.setAttribute("aria-labelledby", b), n.description !== "" && h.setAttribute("aria-describedby", u), n.hasOwnProperty("_hasCustomWidth") && n._hasCustomWidth && (h.style.width = n.width), n.hasOwnProperty("_hasCustomHeight") && n._hasCustomHeight && (h.style.height = n.height), l.insertBefore(h, l.firstChild);
2142
+ }, !1), h.src = n.href, n.sizes != "" && n.srcset != "" && (h.sizes = n.sizes, h.srcset = n.srcset), h.alt = "", oe(n.alt) || n.alt === "" || (h.alt = n.alt), n.title !== "" && h.setAttribute("aria-labelledby", b), n.description !== "" && h.setAttribute("aria-describedby", u), n.hasOwnProperty("_hasCustomWidth") && n._hasCustomWidth && (h.style.width = n.width), n.hasOwnProperty("_hasCustomHeight") && n._hasCustomHeight && (h.style.height = n.height), l.insertBefore(h, l.firstChild);
2117
2143
  }
2118
2144
  function xa(t, n, o, r) {
2119
2145
  var l = this, h = t.querySelector(".ginner-container"), b = "gvideo" + o, u = t.querySelector(".gslide-media"), y = this.getAllPlayers();
2120
2146
  T(h, "gvideo-container"), u.insertBefore(ce('<div class="gvideo-wrapper"></div>'), u.firstChild);
2121
2147
  var m = t.querySelector(".gvideo-wrapper");
2122
2148
  Qe(this.settings.plyr.css, "Plyr");
2123
- var w = n.href, k = n == null ? void 0 : n.videoProvider, M = !1;
2149
+ var w = n.href, k = n == null ? void 0 : n.videoProvider, $ = !1;
2124
2150
  u.style.maxWidth = n.width, Qe(this.settings.plyr.js, "Plyr", function() {
2125
2151
  if (!k && w.match(/vimeo\.com\/([0-9]*)/) && (k = "vimeo"), !k && (w.match(/(youtube\.com|youtube-nocookie\.com)\/watch\?v=([a-zA-Z0-9\-_]+)/) || w.match(/youtu\.be\/([a-zA-Z0-9\-_]+)/) || w.match(/(youtube\.com|youtube-nocookie\.com)\/embed\/([a-zA-Z0-9\-_]+)/) || w.match(/(youtube\.com|youtube-nocookie\.com)\/shorts\/([a-zA-Z0-9\-_]+)/)) && (k = "youtube"), k === "local" || !k) {
2126
2152
  k = "local";
2127
2153
  var E = '<video id="' + b + '" ';
2128
- E += 'style="background:#000; max-width: '.concat(n.width, ';" '), E += 'preload="metadata" ', E += 'x-webkit-airplay="allow" ', E += "playsinline ", E += "controls ", E += 'class="gvideo-local">', E += '<source src="'.concat(w, '">'), M = ce(E += "</video>");
2154
+ E += 'style="background:#000; max-width: '.concat(n.width, ';" '), E += 'preload="metadata" ', E += 'x-webkit-airplay="allow" ', E += "playsinline ", E += "controls ", E += 'class="gvideo-local">', E += '<source src="'.concat(w, '">'), $ = ce(E += "</video>");
2129
2155
  }
2130
- var A = M || ce('<div id="'.concat(b, '" data-plyr-provider="').concat(k, '" data-plyr-embed-id="').concat(w, '"></div>'));
2156
+ var A = $ || ce('<div id="'.concat(b, '" data-plyr-provider="').concat(k, '" data-plyr-embed-id="').concat(w, '"></div>'));
2131
2157
  T(m, "".concat(k, "-video gvideo")), m.appendChild(A), m.setAttribute("data-id", b), m.setAttribute("data-index", o);
2132
2158
  var U = W(l.settings.plyr, "config") ? l.settings.plyr.config : {}, de = new Plyr("#" + b, U);
2133
- de.on("ready", function(oe) {
2134
- y[b] = oe.detail.plyr, L(r) && r();
2135
- }), je(function() {
2159
+ de.on("ready", function(re) {
2160
+ y[b] = re.detail.plyr, L(r) && r();
2161
+ }), Oe(function() {
2136
2162
  return t.querySelector("iframe") && t.querySelector("iframe").dataset.ready == "true";
2137
2163
  }, function() {
2138
2164
  l.resize(t);
2139
- }), de.on("enterfullscreen", Pt), de.on("exitfullscreen", Pt);
2165
+ }), de.on("enterfullscreen", jt), de.on("exitfullscreen", jt);
2140
2166
  });
2141
2167
  }
2142
- function Pt(t) {
2143
- var n = $(t.target, ".gslide-media");
2168
+ function jt(t) {
2169
+ var n = M(t.target, ".gslide-media");
2144
2170
  t.type === "enterfullscreen" && T(n, "fullscreen"), t.type === "exitfullscreen" && N(n, "fullscreen");
2145
2171
  }
2146
2172
  function ka(t, n, o, r) {
@@ -2157,8 +2183,8 @@ var sa = { exports: {} };
2157
2183
  k.style.height = n.height, k.style.maxWidth = n.width, T(k, "ginlined-content"), l = k;
2158
2184
  }
2159
2185
  if (!l) return console.error("Unable to append inline slide content", n), !1;
2160
- b.style.height = n.height, b.style.width = n.width, b.appendChild(l), this.events["inlineclose" + u] = F("click", { onElement: b.querySelectorAll(".gtrigger-close"), withCallback: function(M) {
2161
- M.preventDefault(), h.close();
2186
+ b.style.height = n.height, b.style.width = n.width, b.appendChild(l), this.events["inlineclose" + u] = F("click", { onElement: b.querySelectorAll(".gtrigger-close"), withCallback: function($) {
2187
+ $.preventDefault(), h.close();
2162
2188
  } }), L(r) && r();
2163
2189
  }
2164
2190
  function Ca(t, n, o, r) {
@@ -2170,41 +2196,41 @@ var sa = { exports: {} };
2170
2196
  }({ url: n.href, callback: r });
2171
2197
  l.parentNode.style.maxWidth = n.width, l.parentNode.style.height = n.height, l.appendChild(h);
2172
2198
  }
2173
- var _a = f(function t() {
2199
+ var Sa = f(function t() {
2174
2200
  var n = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
2175
- i(this, t), this.defaults = { href: "", sizes: "", srcset: "", title: "", type: "", videoProvider: "", description: "", alt: "", descPosition: "bottom", effect: "", width: "", height: "", content: !1, zoomable: !0, draggable: !0 }, Ce(n) && (this.defaults = _(this.defaults, n));
2201
+ i(this, t), this.defaults = { href: "", sizes: "", srcset: "", title: "", type: "", videoProvider: "", description: "", alt: "", descPosition: "bottom", effect: "", width: "", height: "", content: !1, zoomable: !0, draggable: !0 }, Ce(n) && (this.defaults = S(this.defaults, n));
2176
2202
  }, [{ key: "sourceType", value: function(t) {
2177
2203
  var n = t;
2178
2204
  return (t = t.toLowerCase()).match(/\.(jpeg|jpg|jpe|gif|png|apn|webp|avif|svg)/) !== null ? "image" : t.match(/(youtube\.com|youtube-nocookie\.com)\/watch\?v=([a-zA-Z0-9\-_]+)/) || t.match(/youtu\.be\/([a-zA-Z0-9\-_]+)/) || t.match(/(youtube\.com|youtube-nocookie\.com)\/embed\/([a-zA-Z0-9\-_]+)/) || t.match(/(youtube\.com|youtube-nocookie\.com)\/shorts\/([a-zA-Z0-9\-_]+)/) || t.match(/vimeo\.com\/([0-9]*)/) || t.match(/\.(mp4|ogg|webm|mov)/) !== null ? "video" : t.match(/\.(mp3|wav|wma|aac|ogg)/) !== null ? "audio" : t.indexOf("#") > -1 && n.split("#").pop().trim() !== "" ? "inline" : t.indexOf("goajax=true") > -1 ? "ajax" : "external";
2179
2205
  } }, { key: "parseConfig", value: function(t, n) {
2180
- var o = this, r = _({ descPosition: n.descPosition }, this.defaults);
2206
+ var o = this, r = S({ descPosition: n.descPosition }, this.defaults);
2181
2207
  if (Ce(t) && !B(t)) {
2182
2208
  W(t, "type") || (W(t, "content") && t.content ? t.type = "inline" : W(t, "href") && (t.type = this.sourceType(t.href)));
2183
- var l = _(r, t);
2209
+ var l = S(r, t);
2184
2210
  return this.setSize(l, n), l;
2185
2211
  }
2186
2212
  var h = "", b = t.getAttribute("data-glightbox"), u = t.nodeName.toLowerCase();
2187
- if (u === "a" && (h = t.href), u === "img" && (h = t.src, r.alt = t.alt), r.href = h, S(r, function(E, A) {
2213
+ if (u === "a" && (h = t.href), u === "img" && (h = t.src, r.alt = t.alt), r.href = h, _(r, function(E, A) {
2188
2214
  W(n, A) && A !== "width" && (r[A] = n[A]);
2189
2215
  var U = t.dataset[A];
2190
- se(U) || (r[A] = o.sanitizeValue(U));
2191
- }), r.content && (r.type = "inline"), !r.type && h && (r.type = this.sourceType(h)), se(b)) {
2216
+ oe(U) || (r[A] = o.sanitizeValue(U));
2217
+ }), r.content && (r.type = "inline"), !r.type && h && (r.type = this.sourceType(h)), oe(b)) {
2192
2218
  if (!r.title && u == "a") {
2193
2219
  var y = t.title;
2194
- se(y) || y === "" || (r.title = y);
2220
+ oe(y) || y === "" || (r.title = y);
2195
2221
  }
2196
2222
  if (!r.title && u == "img") {
2197
2223
  var m = t.alt;
2198
- se(m) || m === "" || (r.title = m);
2224
+ oe(m) || m === "" || (r.title = m);
2199
2225
  }
2200
2226
  } else {
2201
2227
  var w = [];
2202
- S(r, function(E, A) {
2228
+ _(r, function(E, A) {
2203
2229
  w.push(";\\s?" + A);
2204
- }), w = w.join("\\s?:|"), b.trim() !== "" && S(r, function(E, A) {
2205
- var U = b, de = new RegExp("s?" + A + "s?:s?(.*?)(" + w + "s?:|$)"), oe = U.match(de);
2206
- if (oe && oe.length && oe[1]) {
2207
- var X = oe[1].trim().replace(/;\s*$/, "");
2230
+ }), w = w.join("\\s?:|"), b.trim() !== "" && _(r, function(E, A) {
2231
+ var U = b, de = new RegExp("s?" + A + "s?:s?(.*?)(" + w + "s?:|$)"), re = U.match(de);
2232
+ if (re && re.length && re[1]) {
2233
+ var X = re[1].trim().replace(/;\s*$/, "");
2208
2234
  r[A] = o.sanitizeValue(X);
2209
2235
  }
2210
2236
  });
@@ -2219,8 +2245,8 @@ var sa = { exports: {} };
2219
2245
  k && (r.description = k);
2220
2246
  }
2221
2247
  if (!r.description) {
2222
- var M = t.querySelector(".glightbox-desc");
2223
- M && (r.description = M.innerHTML);
2248
+ var $ = t.querySelector(".glightbox-desc");
2249
+ $ && (r.description = $.innerHTML);
2224
2250
  }
2225
2251
  return this.setSize(r, n, t), this.slideConfig = r, r;
2226
2252
  } }, { key: "setSize", value: function(t, n) {
@@ -2237,18 +2263,18 @@ var sa = { exports: {} };
2237
2263
  if (K(n, "loaded")) return !1;
2238
2264
  var r = this.instance.settings, l = this.slideConfig, h = ye();
2239
2265
  L(r.beforeSlideLoad) && r.beforeSlideLoad({ index: this.index, slide: n, player: !1 });
2240
- var b = l.type, u = l.descPosition, y = n.querySelector(".gslide-media"), m = n.querySelector(".gslide-title"), w = n.querySelector(".gslide-desc"), k = n.querySelector(".gdesc-inner"), M = o, E = "gSlideTitle_" + this.index, A = "gSlideDesc_" + this.index;
2241
- if (L(r.afterSlideLoad) && (M = function() {
2266
+ var b = l.type, u = l.descPosition, y = n.querySelector(".gslide-media"), m = n.querySelector(".gslide-title"), w = n.querySelector(".gslide-desc"), k = n.querySelector(".gdesc-inner"), $ = o, E = "gSlideTitle_" + this.index, A = "gSlideDesc_" + this.index;
2267
+ if (L(r.afterSlideLoad) && ($ = function() {
2242
2268
  L(o) && o(), r.afterSlideLoad({ index: t.index, slide: n, player: t.instance.getSlidePlayerInstance(t.index) });
2243
2269
  }), l.title == "" && l.description == "" ? k && k.parentNode.parentNode.removeChild(k.parentNode) : (m && l.title !== "" ? (m.id = E, m.innerHTML = l.title) : m.parentNode.removeChild(m), w && l.description !== "" ? (w.id = A, h && r.moreLength > 0 ? (l.smallDescription = this.slideShortDesc(l.description, r.moreLength, r.moreText), w.innerHTML = l.smallDescription, this.descriptionEvents(w, l)) : w.innerHTML = l.description) : w.parentNode.removeChild(w), T(y.parentNode, "desc-".concat(u)), T(k.parentNode, "description-".concat(u))), T(y, "gslide-".concat(b)), T(n, "loaded"), b !== "video") {
2244
- if (b !== "external") return b === "inline" ? (ka.apply(this.instance, [n, l, this.index, M]), void (l.draggable && new jt({ dragEl: n.querySelector(".gslide-inline"), toleranceX: r.dragToleranceX, toleranceY: r.dragToleranceY, slide: n, instance: this.instance }))) : void (b !== "image" ? L(M) && M() : wa(n, l, this.index, function() {
2270
+ if (b !== "external") return b === "inline" ? (ka.apply(this.instance, [n, l, this.index, $]), void (l.draggable && new Ot({ dragEl: n.querySelector(".gslide-inline"), toleranceX: r.dragToleranceX, toleranceY: r.dragToleranceY, slide: n, instance: this.instance }))) : void (b !== "image" ? L($) && $() : wa(n, l, this.index, function() {
2245
2271
  var U = n.querySelector("img");
2246
- l.draggable && new jt({ dragEl: U, toleranceX: r.dragToleranceX, toleranceY: r.dragToleranceY, slide: n, instance: t.instance }), l.zoomable && U.naturalWidth > U.offsetWidth && (T(U, "zoomable"), new va(U, n, function() {
2272
+ l.draggable && new Ot({ dragEl: U, toleranceX: r.dragToleranceX, toleranceY: r.dragToleranceY, slide: n, instance: t.instance }), l.zoomable && U.naturalWidth > U.offsetWidth && (T(U, "zoomable"), new va(U, n, function() {
2247
2273
  t.instance.resize();
2248
- })), L(M) && M();
2274
+ })), L($) && $();
2249
2275
  }));
2250
- Ca.apply(this, [n, l, this.index, M]);
2251
- } else xa.apply(this.instance, [n, l, this.index, M]);
2276
+ Ca.apply(this, [n, l, this.index, $]);
2277
+ } else xa.apply(this.instance, [n, l, this.index, $]);
2252
2278
  } }, { key: "slideShortDesc", value: function(t) {
2253
2279
  var n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 50, o = arguments.length > 2 && arguments[2] !== void 0 && arguments[2], r = document.createElement("div");
2254
2280
  r.innerHTML = t;
@@ -2261,10 +2287,10 @@ var sa = { exports: {} };
2261
2287
  if (!r) return !1;
2262
2288
  F("click", { onElement: r, withCallback: function(l, h) {
2263
2289
  l.preventDefault();
2264
- var b = document.body, u = $(h, ".gslide-desc");
2290
+ var b = document.body, u = M(h, ".gslide-desc");
2265
2291
  if (!u) return !1;
2266
2292
  u.innerHTML = n.description, T(b, "gdesc-open");
2267
- var y = F("click", { onElement: [b, $(u, ".gslide-description")], withCallback: function(m, w) {
2293
+ var y = F("click", { onElement: [b, M(u, ".gslide-description")], withCallback: function(m, w) {
2268
2294
  m.target.nodeName.toLowerCase() !== "a" && (N(b, "gdesc-open"), T(b, "gdesc-closed"), u.innerHTML = n.smallDescription, o.descriptionEvents(u, n), setTimeout(function() {
2269
2295
  N(b, "gdesc-closed");
2270
2296
  }, 400), y.destroy());
@@ -2274,13 +2300,13 @@ var sa = { exports: {} };
2274
2300
  return ce(this.instance.settings.slideHTML);
2275
2301
  } }, { key: "getConfig", value: function() {
2276
2302
  B(this.element) || this.element.hasOwnProperty("draggable") || (this.element.draggable = this.instance.settings.draggable);
2277
- var t = new _a(this.instance.settings.slideExtraAttributes);
2303
+ var t = new Sa(this.instance.settings.slideExtraAttributes);
2278
2304
  return this.slideConfig = t.parseConfig(this.element, this.instance.settings), this.slideConfig;
2279
2305
  } }]);
2280
2306
  function at(t) {
2281
2307
  return Math.sqrt(t.x * t.x + t.y * t.y);
2282
2308
  }
2283
- function Sa(t, n) {
2309
+ function _a(t, n) {
2284
2310
  var o = function(r, l) {
2285
2311
  var h = at(r) * at(l);
2286
2312
  if (h === 0) return 0;
@@ -2293,7 +2319,7 @@ var sa = { exports: {} };
2293
2319
  return r.x * l.y - l.x * r.y;
2294
2320
  }(t, n) > 0 && (o *= -1), 180 * o / Math.PI;
2295
2321
  }
2296
- var $a = f(function t(n) {
2322
+ var Ma = f(function t(n) {
2297
2323
  i(this, t), this.handlers = [], this.el = n;
2298
2324
  }, [{ key: "add", value: function(t) {
2299
2325
  this.handlers.push(t);
@@ -2306,15 +2332,15 @@ var sa = { exports: {} };
2306
2332
  typeof o == "function" && o.apply(this.el, arguments);
2307
2333
  }
2308
2334
  } }]);
2309
- function ee(t, n) {
2310
- var o = new $a(t);
2335
+ function te(t, n) {
2336
+ var o = new Ma(t);
2311
2337
  return o.add(n), o;
2312
2338
  }
2313
- var Ma = f(function t(n, o) {
2339
+ var $a = f(function t(n, o) {
2314
2340
  i(this, t), this.element = typeof n == "string" ? document.querySelector(n) : n, this.start = this.start.bind(this), this.move = this.move.bind(this), this.end = this.end.bind(this), this.cancel = this.cancel.bind(this), this.element.addEventListener("touchstart", this.start, !1), this.element.addEventListener("touchmove", this.move, !1), this.element.addEventListener("touchend", this.end, !1), this.element.addEventListener("touchcancel", this.cancel, !1), this.preV = { x: null, y: null }, this.pinchStartLen = null, this.zoom = 1, this.isDoubleTap = !1;
2315
2341
  var r = function() {
2316
2342
  };
2317
- this.rotate = ee(this.element, o.rotate || r), this.touchStart = ee(this.element, o.touchStart || r), this.multipointStart = ee(this.element, o.multipointStart || r), this.multipointEnd = ee(this.element, o.multipointEnd || r), this.pinch = ee(this.element, o.pinch || r), this.swipe = ee(this.element, o.swipe || r), this.tap = ee(this.element, o.tap || r), this.doubleTap = ee(this.element, o.doubleTap || r), this.longTap = ee(this.element, o.longTap || r), this.singleTap = ee(this.element, o.singleTap || r), this.pressMove = ee(this.element, o.pressMove || r), this.twoFingerPressMove = ee(this.element, o.twoFingerPressMove || r), this.touchMove = ee(this.element, o.touchMove || r), this.touchEnd = ee(this.element, o.touchEnd || r), this.touchCancel = ee(this.element, o.touchCancel || r), this.translateContainer = this.element, this._cancelAllHandler = this.cancelAll.bind(this), window.addEventListener("scroll", this._cancelAllHandler), this.delta = null, this.last = null, this.now = null, this.tapTimeout = null, this.singleTapTimeout = null, this.longTapTimeout = null, this.swipeTimeout = null, this.x1 = this.x2 = this.y1 = this.y2 = null, this.preTapPosition = { x: null, y: null };
2343
+ this.rotate = te(this.element, o.rotate || r), this.touchStart = te(this.element, o.touchStart || r), this.multipointStart = te(this.element, o.multipointStart || r), this.multipointEnd = te(this.element, o.multipointEnd || r), this.pinch = te(this.element, o.pinch || r), this.swipe = te(this.element, o.swipe || r), this.tap = te(this.element, o.tap || r), this.doubleTap = te(this.element, o.doubleTap || r), this.longTap = te(this.element, o.longTap || r), this.singleTap = te(this.element, o.singleTap || r), this.pressMove = te(this.element, o.pressMove || r), this.twoFingerPressMove = te(this.element, o.twoFingerPressMove || r), this.touchMove = te(this.element, o.touchMove || r), this.touchEnd = te(this.element, o.touchEnd || r), this.touchCancel = te(this.element, o.touchCancel || r), this.translateContainer = this.element, this._cancelAllHandler = this.cancelAll.bind(this), window.addEventListener("scroll", this._cancelAllHandler), this.delta = null, this.last = null, this.now = null, this.tapTimeout = null, this.singleTapTimeout = null, this.longTapTimeout = null, this.swipeTimeout = null, this.x1 = this.x2 = this.y1 = this.y2 = null, this.preTapPosition = { x: null, y: null };
2318
2344
  }, [{ key: "start", value: function(t) {
2319
2345
  if (t.touches) if (t.target && t.target.nodeName && ["a", "button", "input"].indexOf(t.target.nodeName.toLowerCase()) >= 0) console.log("ignore drag for this touched element", t.target.nodeName.toLowerCase());
2320
2346
  else {
@@ -2334,7 +2360,7 @@ var sa = { exports: {} };
2334
2360
  var n = this.preV, o = t.touches.length, r = t.touches[0].pageX, l = t.touches[0].pageY;
2335
2361
  if (this.isDoubleTap = !1, o > 1) {
2336
2362
  var h = t.touches[1].pageX, b = t.touches[1].pageY, u = { x: t.touches[1].pageX - r, y: t.touches[1].pageY - l };
2337
- n.x !== null && (this.pinchStartLen > 0 && (t.zoom = at(u) / this.pinchStartLen, this.pinch.dispatch(t, this.element)), t.angle = Sa(u, n), this.rotate.dispatch(t, this.element)), n.x = u.x, n.y = u.y, this.x2 !== null && this.sx2 !== null ? (t.deltaX = (r - this.x2 + h - this.sx2) / 2, t.deltaY = (l - this.y2 + b - this.sy2) / 2) : (t.deltaX = 0, t.deltaY = 0), this.twoFingerPressMove.dispatch(t, this.element), this.sx2 = h, this.sy2 = b;
2363
+ n.x !== null && (this.pinchStartLen > 0 && (t.zoom = at(u) / this.pinchStartLen, this.pinch.dispatch(t, this.element)), t.angle = _a(u, n), this.rotate.dispatch(t, this.element)), n.x = u.x, n.y = u.y, this.x2 !== null && this.sx2 !== null ? (t.deltaX = (r - this.x2 + h - this.sx2) / 2, t.deltaY = (l - this.y2 + b - this.sy2) / 2) : (t.deltaX = 0, t.deltaY = 0), this.twoFingerPressMove.dispatch(t, this.element), this.sx2 = h, this.sy2 = b;
2338
2364
  } else {
2339
2365
  if (this.x2 !== null) {
2340
2366
  t.deltaX = r - this.x2, t.deltaY = l - this.y2;
@@ -2374,38 +2400,38 @@ var sa = { exports: {} };
2374
2400
  } }, { key: "destroy", value: function() {
2375
2401
  return this.singleTapTimeout && clearTimeout(this.singleTapTimeout), this.tapTimeout && clearTimeout(this.tapTimeout), this.longTapTimeout && clearTimeout(this.longTapTimeout), this.swipeTimeout && clearTimeout(this.swipeTimeout), this.element.removeEventListener("touchstart", this.start), this.element.removeEventListener("touchmove", this.move), this.element.removeEventListener("touchend", this.end), this.element.removeEventListener("touchcancel", this.cancel), this.rotate.del(), this.touchStart.del(), this.multipointStart.del(), this.multipointEnd.del(), this.pinch.del(), this.swipe.del(), this.tap.del(), this.doubleTap.del(), this.longTap.del(), this.singleTap.del(), this.pressMove.del(), this.twoFingerPressMove.del(), this.touchMove.del(), this.touchEnd.del(), this.touchCancel.del(), this.preV = this.pinchStartLen = this.zoom = this.isDoubleTap = this.delta = this.last = this.now = this.tapTimeout = this.singleTapTimeout = this.longTapTimeout = this.swipeTimeout = this.x1 = this.x2 = this.y1 = this.y2 = this.preTapPosition = this.rotate = this.touchStart = this.multipointStart = this.multipointEnd = this.pinch = this.swipe = this.tap = this.doubleTap = this.longTap = this.singleTap = this.pressMove = this.touchMove = this.touchEnd = this.touchCancel = this.twoFingerPressMove = null, window.removeEventListener("scroll", this._cancelAllHandler), null;
2376
2402
  } }]);
2377
- function vt(t) {
2403
+ function yt(t) {
2378
2404
  var n = function() {
2379
2405
  var b, u = document.createElement("fakeelement"), y = { transition: "transitionend", OTransition: "oTransitionEnd", MozTransition: "transitionend", WebkitTransition: "webkitTransitionEnd" };
2380
2406
  for (b in y) if (u.style[b] !== void 0) return y[b];
2381
- }(), o = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth, r = K(t, "gslide-media") ? t : t.querySelector(".gslide-media"), l = $(r, ".ginner-container"), h = t.querySelector(".gslide-description");
2407
+ }(), o = window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth, r = K(t, "gslide-media") ? t : t.querySelector(".gslide-media"), l = M(r, ".ginner-container"), h = t.querySelector(".gslide-description");
2382
2408
  o > 769 && (r = l), T(r, "greset"), C(r, "translate3d(0, 0, 0)"), F(n, { onElement: r, once: !0, withCallback: function(b, u) {
2383
2409
  N(r, "greset");
2384
2410
  } }), r.style.opacity = "", h && (h.style.opacity = "");
2385
2411
  }
2386
2412
  function Ta(t) {
2387
2413
  if (t.events.hasOwnProperty("touch")) return !1;
2388
- var n, o, r, l = ie(), h = l.width, b = l.height, u = !1, y = null, m = null, w = null, k = !1, M = 1, E = 1, A = !1, U = !1, de = null, oe = null, X = null, _e = null, he = 0, Pe = 0, He = !1, Be = !1, ue = {}, Le = {}, Vt = 0, Dt = 0, Ia = document.getElementById("glightbox-slider"), ct = document.querySelector(".goverlay"), La = new Ma(Ia, { touchStart: function(O) {
2389
- if (u = !0, (K(O.targetTouches[0].target, "ginner-container") || $(O.targetTouches[0].target, ".gslide-desc") || O.targetTouches[0].target.nodeName.toLowerCase() == "a") && (u = !1), $(O.targetTouches[0].target, ".gslide-inline") && !K(O.targetTouches[0].target.parentNode, "gslide-inline") && (u = !1), u) {
2390
- if (Le = O.targetTouches[0], ue.pageX = O.targetTouches[0].pageX, ue.pageY = O.targetTouches[0].pageY, Vt = O.targetTouches[0].clientX, Dt = O.targetTouches[0].clientY, y = t.activeSlide, m = y.querySelector(".gslide-media"), r = y.querySelector(".gslide-inline"), w = null, K(m, "gslide-image") && (w = m.querySelector("img")), (window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth) > 769 && (m = y.querySelector(".ginner-container")), N(ct, "greset"), O.pageX > 20 && O.pageX < window.innerWidth - 20) return;
2391
- O.preventDefault();
2414
+ var n, o, r, l = ie(), h = l.width, b = l.height, u = !1, y = null, m = null, w = null, k = !1, $ = 1, E = 1, A = !1, U = !1, de = null, re = null, X = null, Se = null, he = 0, je = 0, He = !1, Be = !1, ue = {}, Le = {}, Vt = 0, Dt = 0, Ia = document.getElementById("glightbox-slider"), ct = document.querySelector(".goverlay"), La = new $a(Ia, { touchStart: function(H) {
2415
+ if (u = !0, (K(H.targetTouches[0].target, "ginner-container") || M(H.targetTouches[0].target, ".gslide-desc") || H.targetTouches[0].target.nodeName.toLowerCase() == "a") && (u = !1), M(H.targetTouches[0].target, ".gslide-inline") && !K(H.targetTouches[0].target.parentNode, "gslide-inline") && (u = !1), u) {
2416
+ if (Le = H.targetTouches[0], ue.pageX = H.targetTouches[0].pageX, ue.pageY = H.targetTouches[0].pageY, Vt = H.targetTouches[0].clientX, Dt = H.targetTouches[0].clientY, y = t.activeSlide, m = y.querySelector(".gslide-media"), r = y.querySelector(".gslide-inline"), w = null, K(m, "gslide-image") && (w = m.querySelector("img")), (window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth) > 769 && (m = y.querySelector(".ginner-container")), N(ct, "greset"), H.pageX > 20 && H.pageX < window.innerWidth - 20) return;
2417
+ H.preventDefault();
2392
2418
  }
2393
- }, touchMove: function(O) {
2394
- if (u && (Le = O.targetTouches[0], !A && !U)) {
2419
+ }, touchMove: function(H) {
2420
+ if (u && (Le = H.targetTouches[0], !A && !U)) {
2395
2421
  if (r && r.offsetHeight > b) {
2396
- var te = ue.pageX - Le.pageX;
2397
- if (Math.abs(te) <= 13) return !1;
2422
+ var ae = ue.pageX - Le.pageX;
2423
+ if (Math.abs(ae) <= 13) return !1;
2398
2424
  }
2399
2425
  k = !0;
2400
- var Se, it = O.targetTouches[0].clientX, qa = O.targetTouches[0].clientY, za = Vt - it, Oa = Dt - qa;
2401
- if (Math.abs(za) > Math.abs(Oa) ? (He = !1, Be = !0) : (Be = !1, He = !0), n = Le.pageX - ue.pageX, he = 100 * n / h, o = Le.pageY - ue.pageY, Pe = 100 * o / b, He && w && (Se = 1 - Math.abs(o) / b, ct.style.opacity = Se, t.settings.touchFollowAxis && (he = 0)), Be && (Se = 1 - Math.abs(n) / h, m.style.opacity = Se, t.settings.touchFollowAxis && (Pe = 0)), !w) return C(m, "translate3d(".concat(he, "%, 0, 0)"));
2402
- C(m, "translate3d(".concat(he, "%, ").concat(Pe, "%, 0)"));
2426
+ var _e, it = H.targetTouches[0].clientX, qa = H.targetTouches[0].clientY, Pa = Vt - it, za = Dt - qa;
2427
+ if (Math.abs(Pa) > Math.abs(za) ? (He = !1, Be = !0) : (Be = !1, He = !0), n = Le.pageX - ue.pageX, he = 100 * n / h, o = Le.pageY - ue.pageY, je = 100 * o / b, He && w && (_e = 1 - Math.abs(o) / b, ct.style.opacity = _e, t.settings.touchFollowAxis && (he = 0)), Be && (_e = 1 - Math.abs(n) / h, m.style.opacity = _e, t.settings.touchFollowAxis && (je = 0)), !w) return C(m, "translate3d(".concat(he, "%, 0, 0)"));
2428
+ C(m, "translate3d(".concat(he, "%, ").concat(je, "%, 0)"));
2403
2429
  }
2404
2430
  }, touchEnd: function() {
2405
2431
  if (u) {
2406
- if (k = !1, U || A) return X = de, void (_e = oe);
2407
- var O = Math.abs(parseInt(Pe)), te = Math.abs(parseInt(he));
2408
- if (!(O > 29 && w)) return O < 29 && te < 25 ? (T(ct, "greset"), ct.style.opacity = 1, vt(m)) : void 0;
2432
+ if (k = !1, U || A) return X = de, void (Se = re);
2433
+ var H = Math.abs(parseInt(je)), ae = Math.abs(parseInt(he));
2434
+ if (!(H > 29 && w)) return H < 29 && ae < 25 ? (T(ct, "greset"), ct.style.opacity = 1, yt(m)) : void 0;
2409
2435
  t.close();
2410
2436
  }
2411
2437
  }, multipointEnd: function() {
@@ -2413,29 +2439,29 @@ var sa = { exports: {} };
2413
2439
  A = !1;
2414
2440
  }, 50);
2415
2441
  }, multipointStart: function() {
2416
- A = !0, M = E || 1;
2417
- }, pinch: function(O) {
2442
+ A = !0, $ = E || 1;
2443
+ }, pinch: function(H) {
2418
2444
  if (!w || k) return !1;
2419
- A = !0, w.scaleX = w.scaleY = M * O.zoom;
2420
- var te = M * O.zoom;
2421
- if (U = !0, te <= 1) return U = !1, te = 1, _e = null, X = null, de = null, oe = null, void w.setAttribute("style", "");
2422
- te > 4.5 && (te = 4.5), w.style.transform = "scale3d(".concat(te, ", ").concat(te, ", 1)"), E = te;
2423
- }, pressMove: function(O) {
2445
+ A = !0, w.scaleX = w.scaleY = $ * H.zoom;
2446
+ var ae = $ * H.zoom;
2447
+ if (U = !0, ae <= 1) return U = !1, ae = 1, Se = null, X = null, de = null, re = null, void w.setAttribute("style", "");
2448
+ ae > 4.5 && (ae = 4.5), w.style.transform = "scale3d(".concat(ae, ", ").concat(ae, ", 1)"), E = ae;
2449
+ }, pressMove: function(H) {
2424
2450
  if (U && !A) {
2425
- var te = Le.pageX - ue.pageX, Se = Le.pageY - ue.pageY;
2426
- X && (te += X), _e && (Se += _e), de = te, oe = Se;
2427
- var it = "translate3d(".concat(te, "px, ").concat(Se, "px, 0)");
2451
+ var ae = Le.pageX - ue.pageX, _e = Le.pageY - ue.pageY;
2452
+ X && (ae += X), Se && (_e += Se), de = ae, re = _e;
2453
+ var it = "translate3d(".concat(ae, "px, ").concat(_e, "px, 0)");
2428
2454
  E && (it += " scale3d(".concat(E, ", ").concat(E, ", 1)")), C(w, it);
2429
2455
  }
2430
- }, swipe: function(O) {
2456
+ }, swipe: function(H) {
2431
2457
  if (!U) if (A) A = !1;
2432
2458
  else {
2433
- if (O.direction == "Left") {
2434
- if (t.index == t.elements.length - 1) return vt(m);
2459
+ if (H.direction == "Left") {
2460
+ if (t.index == t.elements.length - 1) return yt(m);
2435
2461
  t.nextSlide();
2436
2462
  }
2437
- if (O.direction == "Right") {
2438
- if (t.index == 0) return vt(m);
2463
+ if (H.direction == "Right") {
2464
+ if (t.index == 0) return yt(m);
2439
2465
  t.prevSlide();
2440
2466
  }
2441
2467
  }
@@ -2466,7 +2492,7 @@ var sa = { exports: {} };
2466
2492
  </div>
2467
2493
  </div>` }, Aa = f(function t() {
2468
2494
  var n = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
2469
- i(this, t), this.customOptions = n, this.settings = _(Ea, n), this.effectsClasses = this.getAnimationClasses(), this.videoPlayers = {}, this.apiEvents = [], this.fullElementsList = !1;
2495
+ i(this, t), this.customOptions = n, this.settings = S(Ea, n), this.effectsClasses = this.getAnimationClasses(), this.videoPlayers = {}, this.apiEvents = [], this.fullElementsList = !1;
2470
2496
  }, [{ key: "init", value: function() {
2471
2497
  var t = this, n = this.getSelector();
2472
2498
  n && (this.baseEvents = F("click", { onElement: n, withCallback: function(o, r) {
@@ -2479,7 +2505,7 @@ var sa = { exports: {} };
2479
2505
  var o = et(n) ? n : this.settings.startAt;
2480
2506
  if (B(t)) {
2481
2507
  var r = t.getAttribute("data-gallery");
2482
- r && (this.fullElementsList = this.elements, this.elements = this.getGalleryElements(this.elements, r)), se(o) && (o = this.getElementIndex(t)) < 0 && (o = 0);
2508
+ r && (this.fullElementsList = this.elements, this.elements = this.getGalleryElements(this.elements, r)), oe(o) && (o = this.getElementIndex(t)) < 0 && (o = 0);
2483
2509
  }
2484
2510
  et(o) || (o = 0), this.build(), V(this.overlay, this.settings.openEffect === "none" ? "none" : this.settings.cssEfects.fade.in);
2485
2511
  var l = document.body, h = window.innerWidth - document.documentElement.clientWidth;
@@ -2508,7 +2534,7 @@ var sa = { exports: {} };
2508
2534
  this.slideDescription = l.querySelector(".gslide-description"), this.slideDescriptionContained = this.slideDescription && K(this.slideDescription.parentNode, "gslide-media"), this.settings.preload && (this.preloadSlide(n + 1), this.preloadSlide(n - 1)), this.updateNavigationClasses(), this.activeSlide = l;
2509
2535
  } }, { key: "preloadSlide", value: function(t) {
2510
2536
  var n = this;
2511
- if (t < 0 || t > this.elements.length - 1 || se(this.elements[t])) return !1;
2537
+ if (t < 0 || t > this.elements.length - 1 || oe(this.elements[t])) return !1;
2512
2538
  var o = this.slidesContainer.querySelectorAll(".gslide")[t];
2513
2539
  if (K(o, "loaded")) return !1;
2514
2540
  var r = this.elements[t], l = r.type, h = { index: t, slide: o, slideNode: o, slideConfig: r.slideConfig, slideIndex: t, trigger: r.node, player: null };
@@ -2530,7 +2556,7 @@ var sa = { exports: {} };
2530
2556
  } }, { key: "insertSlide", value: function() {
2531
2557
  var t = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : -1;
2532
2558
  n < 0 && (n = this.elements.length);
2533
- var o = new tt(t, this, n), r = o.getConfig(), l = _({}, r), h = o.create(), b = this.elements.length - 1;
2559
+ var o = new tt(t, this, n), r = o.getConfig(), l = S({}, r), h = o.create(), b = this.elements.length - 1;
2534
2560
  l.index = n, l.node = !1, l.instance = o, l.slideConfig = r, this.elements.splice(n, 0, l);
2535
2561
  var u = null, y = null;
2536
2562
  if (this.slidesContainer) {
@@ -2548,7 +2574,7 @@ var sa = { exports: {} };
2548
2574
  var n = this.slidesContainer && this.slidesContainer.querySelectorAll(".gslide")[t];
2549
2575
  n && (this.getActiveSlideIndex() == t && (t == this.elements.length - 1 ? this.prevSlide() : this.nextSlide()), n.parentNode.removeChild(n)), this.elements.splice(t, 1), this.trigger("slide_removed", t), L(this.settings.slideRemoved) && this.settings.slideRemoved(t);
2550
2576
  } }, { key: "slideAnimateIn", value: function(t, n) {
2551
- var o = this, r = t.querySelector(".gslide-media"), l = t.querySelector(".gslide-description"), h = { index: this.prevActiveSlideIndex, slide: this.prevActiveSlide, slideNode: this.prevActiveSlide, slideIndex: this.prevActiveSlide, slideConfig: se(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].slideConfig, trigger: se(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].node, player: this.getSlidePlayerInstance(this.prevActiveSlideIndex) }, b = { index: this.index, slide: this.activeSlide, slideNode: this.activeSlide, slideConfig: this.elements[this.index].slideConfig, slideIndex: this.index, trigger: this.elements[this.index].node, player: this.getSlidePlayerInstance(this.index) };
2577
+ var o = this, r = t.querySelector(".gslide-media"), l = t.querySelector(".gslide-description"), h = { index: this.prevActiveSlideIndex, slide: this.prevActiveSlide, slideNode: this.prevActiveSlide, slideIndex: this.prevActiveSlide, slideConfig: oe(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].slideConfig, trigger: oe(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].node, player: this.getSlidePlayerInstance(this.prevActiveSlideIndex) }, b = { index: this.index, slide: this.activeSlide, slideNode: this.activeSlide, slideConfig: this.elements[this.index].slideConfig, slideIndex: this.index, trigger: this.elements[this.index].node, player: this.getSlidePlayerInstance(this.index) };
2552
2578
  if (r.offsetWidth > 0 && l && (Ae(l), l.style.display = ""), N(t, this.effectsClasses), n) V(t, this.settings.cssEfects[this.settings.openEffect].in, function() {
2553
2579
  o.settings.autoplayVideos && o.slidePlayerPlay(t), o.trigger("slide_changed", { prev: h, current: b }), L(o.settings.afterSlideChange) && o.settings.afterSlideChange.apply(o, [h, b]);
2554
2580
  });
@@ -2566,7 +2592,7 @@ var sa = { exports: {} };
2566
2592
  var t = this.prevActiveSlide;
2567
2593
  N(t, this.effectsClasses), T(t, "prev");
2568
2594
  var n = this.settings.slideEffect, o = n !== "none" ? this.settings.cssEfects[n].out : n;
2569
- this.slidePlayerPause(t), this.trigger("slide_before_change", { prev: { index: this.prevActiveSlideIndex, slide: this.prevActiveSlide, slideNode: this.prevActiveSlide, slideIndex: this.prevActiveSlideIndex, slideConfig: se(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].slideConfig, trigger: se(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].node, player: this.getSlidePlayerInstance(this.prevActiveSlideIndex) }, current: { index: this.index, slide: this.activeSlide, slideNode: this.activeSlide, slideIndex: this.index, slideConfig: this.elements[this.index].slideConfig, trigger: this.elements[this.index].node, player: this.getSlidePlayerInstance(this.index) } }), L(this.settings.beforeSlideChange) && this.settings.beforeSlideChange.apply(this, [{ index: this.prevActiveSlideIndex, slide: this.prevActiveSlide, player: this.getSlidePlayerInstance(this.prevActiveSlideIndex) }, { index: this.index, slide: this.activeSlide, player: this.getSlidePlayerInstance(this.index) }]), this.prevActiveSlideIndex > this.index && this.settings.slideEffect == "slide" && (o = this.settings.cssEfects.slideBack.out), V(t, o, function() {
2595
+ this.slidePlayerPause(t), this.trigger("slide_before_change", { prev: { index: this.prevActiveSlideIndex, slide: this.prevActiveSlide, slideNode: this.prevActiveSlide, slideIndex: this.prevActiveSlideIndex, slideConfig: oe(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].slideConfig, trigger: oe(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].node, player: this.getSlidePlayerInstance(this.prevActiveSlideIndex) }, current: { index: this.index, slide: this.activeSlide, slideNode: this.activeSlide, slideIndex: this.index, slideConfig: this.elements[this.index].slideConfig, trigger: this.elements[this.index].node, player: this.getSlidePlayerInstance(this.index) } }), L(this.settings.beforeSlideChange) && this.settings.beforeSlideChange.apply(this, [{ index: this.prevActiveSlideIndex, slide: this.prevActiveSlide, player: this.getSlidePlayerInstance(this.prevActiveSlideIndex) }, { index: this.index, slide: this.activeSlide, player: this.getSlidePlayerInstance(this.index) }]), this.prevActiveSlideIndex > this.index && this.settings.slideEffect == "slide" && (o = this.settings.cssEfects.slideBack.out), V(t, o, function() {
2570
2596
  var r = t.querySelector(".ginner-container"), l = t.querySelector(".gslide-media"), h = t.querySelector(".gslide-description");
2571
2597
  r.style.transform = "", l.style.transform = "", N(l, "greset"), l.style.opacity = "", h && (h.style.opacity = ""), N(t, "prev");
2572
2598
  });
@@ -2612,27 +2638,27 @@ var sa = { exports: {} };
2612
2638
  var n = this;
2613
2639
  this.settings.elements = !1;
2614
2640
  var o = [];
2615
- t && t.length && S(t, function(r, l) {
2616
- var h = new tt(r, n, l), b = h.getConfig(), u = _({}, b);
2641
+ t && t.length && _(t, function(r, l) {
2642
+ var h = new tt(r, n, l), b = h.getConfig(), u = S({}, b);
2617
2643
  u.slideConfig = b, u.instance = h, u.index = l, o.push(u);
2618
- }), this.elements = o, this.lightboxOpen && (this.slidesContainer.innerHTML = "", this.elements.length && (S(this.elements, function() {
2644
+ }), this.elements = o, this.lightboxOpen && (this.slidesContainer.innerHTML = "", this.elements.length && (_(this.elements, function() {
2619
2645
  var r = ce(n.settings.slideHTML);
2620
2646
  n.slidesContainer.appendChild(r);
2621
2647
  }), this.showSlide(0, !0)));
2622
2648
  } }, { key: "getElementIndex", value: function(t) {
2623
2649
  var n = !1;
2624
- return S(this.elements, function(o, r) {
2650
+ return _(this.elements, function(o, r) {
2625
2651
  if (W(o, "node") && o.node == t) return n = r, !0;
2626
2652
  }), n;
2627
2653
  } }, { key: "getElements", value: function() {
2628
2654
  var t = this, n = [];
2629
- this.elements = this.elements ? this.elements : [], !se(this.settings.elements) && Ie(this.settings.elements) && this.settings.elements.length && S(this.settings.elements, function(r, l) {
2630
- var h = new tt(r, t, l), b = h.getConfig(), u = _({}, b);
2655
+ this.elements = this.elements ? this.elements : [], !oe(this.settings.elements) && Ie(this.settings.elements) && this.settings.elements.length && _(this.settings.elements, function(r, l) {
2656
+ var h = new tt(r, t, l), b = h.getConfig(), u = S({}, b);
2631
2657
  u.node = !1, u.index = l, u.instance = h, u.slideConfig = b, n.push(u);
2632
2658
  });
2633
2659
  var o = !1;
2634
- return this.getSelector() && (o = document.querySelectorAll(this.getSelector())), o && S(o, function(r, l) {
2635
- var h = new tt(r, t, l), b = h.getConfig(), u = _({}, b);
2660
+ return this.getSelector() && (o = document.querySelectorAll(this.getSelector())), o && _(o, function(r, l) {
2661
+ var h = new tt(r, t, l), b = h.getConfig(), u = S({}, b);
2636
2662
  u.node = r, u.index = l, u.instance = h, u.slideConfig = b, u.gallery = r.getAttribute("data-gallery"), n.push(u);
2637
2663
  }), n;
2638
2664
  } }, { key: "getGalleryElements", value: function(t, n) {
@@ -2656,7 +2682,7 @@ var sa = { exports: {} };
2656
2682
  var t = this;
2657
2683
  if (this.built) return !1;
2658
2684
  var n = document.body.childNodes, o = [];
2659
- S(n, function(m) {
2685
+ _(n, function(m) {
2660
2686
  m.parentNode == document.body && m.nodeName.charAt(0) !== "#" && m.hasAttribute && !m.hasAttribute("aria-hidden") && (o.push(m), m.setAttribute("aria-hidden", "true"));
2661
2687
  });
2662
2688
  var r = W(this.settings.svg, "next") ? this.settings.svg.next : "", l = W(this.settings.svg, "prev") ? this.settings.svg.prev : "", h = W(this.settings.svg, "close") ? this.settings.svg.close : "", b = this.settings.lightboxHTML;
@@ -2671,8 +2697,8 @@ var sa = { exports: {} };
2671
2697
  } })), this.prevButton && (this.events.prev = F("click", { onElement: this.prevButton, withCallback: function(m, w) {
2672
2698
  m.preventDefault(), t.prevSlide();
2673
2699
  } })), this.settings.closeOnOutsideClick && (this.events.outClose = F("click", { onElement: u, withCallback: function(m, w) {
2674
- t.preventOutsideClick || K(document.body, "glightbox-mobile") || $(m.target, ".ginner-container") || $(m.target, ".gbtn") || K(m.target, "gnext") || K(m.target, "gprev") || t.close();
2675
- } })), S(this.elements, function(m, w) {
2700
+ t.preventOutsideClick || K(document.body, "glightbox-mobile") || M(m.target, ".ginner-container") || M(m.target, ".gbtn") || K(m.target, "gnext") || K(m.target, "gprev") || t.close();
2701
+ } })), _(this.elements, function(m, w) {
2676
2702
  t.slidesContainer.appendChild(m.instance.create()), m.slideNode = t.slidesContainer.querySelectorAll(".gslide")[w];
2677
2703
  }), Bt && T(document.body, "glightbox-touch"), this.events.resize = F("resize", { onElement: window, withCallback: function() {
2678
2704
  t.resize();
@@ -2686,8 +2712,8 @@ var sa = { exports: {} };
2686
2712
  if (l && (K(l, "description-bottom") || K(l, "description-top")) && !K(l, "gabsolute") && (u = !0), r) {
2687
2713
  if (h <= 768) r.querySelector("img");
2688
2714
  else if (u) {
2689
- var y, m = l.offsetHeight, w = r.querySelector("img"), k = this.elements[this.index].node, M = (y = k.getAttribute("data-height")) !== null && y !== void 0 ? y : "100vh";
2690
- w.setAttribute("style", "max-height: calc(".concat(M, " - ").concat(m, "px)")), l.setAttribute("style", "max-width: ".concat(w.offsetWidth, "px;"));
2715
+ var y, m = l.offsetHeight, w = r.querySelector("img"), k = this.elements[this.index].node, $ = (y = k.getAttribute("data-height")) !== null && y !== void 0 ? y : "100vh";
2716
+ w.setAttribute("style", "max-height: calc(".concat($, " - ").concat(m, "px)")), l.setAttribute("style", "max-width: ".concat(w.offsetWidth, "px;"));
2691
2717
  }
2692
2718
  }
2693
2719
  if (o) {
@@ -2696,9 +2722,9 @@ var sa = { exports: {} };
2696
2722
  var A = o.clientWidth, U = o.clientHeight, de = A / U;
2697
2723
  E = "".concat(A / de, ":").concat(U / de);
2698
2724
  }
2699
- var oe = E.split(":"), X = this.settings.videosWidth, _e = this.settings.videosWidth, he = (_e = et(X) || X.indexOf("px") !== -1 ? parseInt(X) : X.indexOf("vw") !== -1 ? h * parseInt(X) / 100 : X.indexOf("vh") !== -1 ? b * parseInt(X) / 100 : X.indexOf("%") !== -1 ? h * parseInt(X) / 100 : parseInt(o.clientWidth)) / (parseInt(oe[0]) / parseInt(oe[1]));
2700
- if (he = Math.floor(he), u && (b -= l.offsetHeight), _e > h || he > b || b < he && h > _e) {
2701
- var Pe = o.offsetWidth, He = o.offsetHeight, Be = b / He, ue = { width: Pe * Be, height: He * Be };
2725
+ var re = E.split(":"), X = this.settings.videosWidth, Se = this.settings.videosWidth, he = (Se = et(X) || X.indexOf("px") !== -1 ? parseInt(X) : X.indexOf("vw") !== -1 ? h * parseInt(X) / 100 : X.indexOf("vh") !== -1 ? b * parseInt(X) / 100 : X.indexOf("%") !== -1 ? h * parseInt(X) / 100 : parseInt(o.clientWidth)) / (parseInt(re[0]) / parseInt(re[1]));
2726
+ if (he = Math.floor(he), u && (b -= l.offsetHeight), Se > h || he > b || b < he && h > Se) {
2727
+ var je = o.offsetWidth, He = o.offsetHeight, Be = b / He, ue = { width: je * Be, height: He * Be };
2702
2728
  o.parentNode.setAttribute("style", "max-width: ".concat(ue.width, "px")), u && l.setAttribute("style", "max-width: ".concat(ue.width, "px;"));
2703
2729
  } else o.parentNode.style.maxWidth = "".concat(X), u && l.setAttribute("style", "max-width: ".concat(X, ";"));
2704
2730
  }
@@ -2722,7 +2748,7 @@ var sa = { exports: {} };
2722
2748
  return !1;
2723
2749
  }
2724
2750
  if (this.closing) return !1;
2725
- this.closing = !0, this.slidePlayerPause(this.activeSlide), this.fullElementsList && (this.elements = this.fullElementsList), this.bodyHiddenChildElms.length && S(this.bodyHiddenChildElms, function(o) {
2751
+ this.closing = !0, this.slidePlayerPause(this.activeSlide), this.fullElementsList && (this.elements = this.fullElementsList), this.bodyHiddenChildElms.length && _(this.bodyHiddenChildElms, function(o) {
2726
2752
  o.removeAttribute("aria-hidden");
2727
2753
  }), T(this.modal, "glightbox-closing"), V(this.overlay, this.settings.openEffect == "none" ? "none" : this.settings.cssEfects.fade.out), V(this.activeSlide, this.settings.cssEfects[this.settings.closeEffect].out, function() {
2728
2754
  if (t.activeSlide = null, t.prevActiveSlideIndex = null, t.prevActiveSlide = null, t.built = !1, t.events) {
@@ -2744,10 +2770,10 @@ var sa = { exports: {} };
2744
2770
  this.on(t, n, !0);
2745
2771
  } }, { key: "trigger", value: function(t) {
2746
2772
  var n = this, o = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null, r = [];
2747
- S(this.apiEvents, function(l, h) {
2773
+ _(this.apiEvents, function(l, h) {
2748
2774
  var b = l.evt, u = l.once, y = l.callback;
2749
2775
  b == t && (y(o), u && r.push(h));
2750
- }), r.length && S(r, function(l) {
2776
+ }), r.length && _(r, function(l) {
2751
2777
  return n.apiEvents.splice(l, 1);
2752
2778
  });
2753
2779
  } }, { key: "clearAllEvents", value: function() {
@@ -2761,14 +2787,14 @@ var sa = { exports: {} };
2761
2787
  };
2762
2788
  });
2763
2789
  })(sa);
2764
- var vc = sa.exports;
2765
- const wc = /* @__PURE__ */ aa(vc);
2766
- var xc = Object.defineProperty, kc = Object.getOwnPropertyDescriptor, Cc = (c, e, a, s) => {
2767
- for (var i = s > 1 ? void 0 : s ? kc(e, a) : e, d = c.length - 1, f; d >= 0; d--)
2790
+ var wc = sa.exports;
2791
+ const xc = /* @__PURE__ */ aa(wc);
2792
+ var kc = Object.defineProperty, Cc = Object.getOwnPropertyDescriptor, Sc = (c, e, a, s) => {
2793
+ for (var i = s > 1 ? void 0 : s ? Cc(e, a) : e, d = c.length - 1, f; d >= 0; d--)
2768
2794
  (f = c[d]) && (i = (s ? f(e, a, i) : f(i)) || i);
2769
- return s && i && xc(e, a, i), i;
2795
+ return s && i && kc(e, a, i), i;
2770
2796
  };
2771
- let St = class extends pt {
2797
+ let St = class extends ut {
2772
2798
  render() {
2773
2799
  return g` <div class="cb-thinking"><span></span><span></span><span></span></div>`;
2774
2800
  }
@@ -2811,15 +2837,15 @@ St.styles = Y`
2811
2837
  }
2812
2838
  }
2813
2839
  `;
2814
- St = Cc([
2840
+ St = Sc([
2815
2841
  Z("cb-thinking")
2816
2842
  ], St);
2817
- var _c = Object.defineProperty, Sc = Object.getOwnPropertyDescriptor, oa = (c, e, a, s) => {
2818
- for (var i = s > 1 ? void 0 : s ? Sc(e, a) : e, d = c.length - 1, f; d >= 0; d--)
2843
+ var _c = Object.defineProperty, Mc = Object.getOwnPropertyDescriptor, oa = (c, e, a, s) => {
2844
+ for (var i = s > 1 ? void 0 : s ? Mc(e, a) : e, d = c.length - 1, f; d >= 0; d--)
2819
2845
  (f = c[d]) && (i = (s ? f(e, a, i) : f(i)) || i);
2820
2846
  return s && i && _c(e, a, i), i;
2821
2847
  };
2822
- let dt = class extends Q {
2848
+ let rt = class extends ee {
2823
2849
  constructor() {
2824
2850
  super(...arguments), this.files = [];
2825
2851
  }
@@ -2835,7 +2861,7 @@ let dt = class extends Q {
2835
2861
  </div>`;
2836
2862
  }
2837
2863
  };
2838
- dt.styles = Y`
2864
+ rt.styles = Y`
2839
2865
  .cb-uploading {
2840
2866
  text-align: left;
2841
2867
  }
@@ -2855,10 +2881,10 @@ dt.styles = Y`
2855
2881
  `;
2856
2882
  oa([
2857
2883
  v({ type: Array })
2858
- ], dt.prototype, "files", 2);
2859
- dt = oa([
2884
+ ], rt.prototype, "files", 2);
2885
+ rt = oa([
2860
2886
  Z("cb-uploading")
2861
- ], dt);
2887
+ ], rt);
2862
2888
  const $c = Y`
2863
2889
  ${ge}
2864
2890
  :host {
@@ -2880,12 +2906,12 @@ const $c = Y`
2880
2906
  margin-right: 0.2em;
2881
2907
  }
2882
2908
  `;
2883
- var Mc = Object.defineProperty, Tc = Object.getOwnPropertyDescriptor, At = (c, e, a, s) => {
2884
- for (var i = s > 1 ? void 0 : s ? Tc(e, a) : e, d = c.length - 1, f; d >= 0; d--)
2909
+ var Tc = Object.defineProperty, Ec = Object.getOwnPropertyDescriptor, At = (c, e, a, s) => {
2910
+ for (var i = s > 1 ? void 0 : s ? Ec(e, a) : e, d = c.length - 1, f; d >= 0; d--)
2885
2911
  (f = c[d]) && (i = (s ? f(e, a, i) : f(i)) || i);
2886
- return s && i && Mc(e, a, i), i;
2912
+ return s && i && Tc(e, a, i), i;
2887
2913
  };
2888
- let Ze = class extends pt {
2914
+ let Ze = class extends ut {
2889
2915
  constructor() {
2890
2916
  super(...arguments), this.url = "", this.inverse = !1;
2891
2917
  }
@@ -2939,22 +2965,22 @@ At([
2939
2965
  Ze = At([
2940
2966
  Z("cb-external-link")
2941
2967
  ], Ze);
2942
- const Ec = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2h-2v-1h2a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.928 15.849v-3.337h1.136v-.662H0v.662h1.134v3.337zm4.689-3.999h-.894L4.9 13.289h-.035l-.832-1.439h-.932l1.228 1.983l-1.24 2.016h.862l.853-1.415h.035l.85 1.415h.907l-1.253-1.992zm1.93.662v3.337h-.794v-3.337H6.619v-.662h3.064v.662H8.546Z"/></svg>', Ac = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.6 11.85H0v3.999h.791v-1.342h.803q.43 0 .732-.173q.305-.175.463-.474a1.4 1.4 0 0 0 .161-.677q0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.38a.57.57 0 0 1-.238.241a.8.8 0 0 1-.375.082H.788V12.48h.66q.327 0 .512.181q.185.183.185.522m1.217-1.333v3.999h1.46q.602 0 .998-.237a1.45 1.45 0 0 0 .595-.689q.196-.45.196-1.084q0-.63-.196-1.075a1.43 1.43 0 0 0-.589-.68q-.396-.234-1.005-.234zm.791.645h.563q.371 0 .609.152a.9.9 0 0 1 .354.454q.118.302.118.753a2.3 2.3 0 0 1-.068.592a1.1 1.1 0 0 1-.196.422a.8.8 0 0 1-.334.252a1.3 1.3 0 0 1-.483.082h-.563zm3.743 1.763v1.591h-.79V11.85h2.548v.653H7.896v1.117h1.606v.638z"/></svg>', Ic = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2H9v-1h3a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM.706 13.189v2.66H0V11.85h.806l1.14 2.596h.026l1.14-2.596h.8v3.999h-.716v-2.66h-.038l-.946 2.159h-.516l-.952-2.16H.706Zm3.919 2.66V11.85h1.459q.609 0 1.005.234t.589.68q.195.445.196 1.075q0 .634-.196 1.084q-.197.451-.595.689q-.396.237-1 .237H4.626Zm1.353-3.354h-.562v2.707h.562q.279 0 .484-.082a.8.8 0 0 0 .334-.252a1.1 1.1 0 0 0 .196-.422q.067-.252.067-.592a2.1 2.1 0 0 0-.117-.753a.9.9 0 0 0-.354-.454q-.238-.152-.61-.152"/></svg>', Lc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM3.517 14.841a1.13 1.13 0 0 0 .401.823q.195.162.478.252q.284.091.665.091q.507 0 .859-.158q.354-.158.539-.44q.187-.284.187-.656q0-.336-.134-.56a1 1 0 0 0-.375-.357a2 2 0 0 0-.566-.21l-.621-.144a1 1 0 0 1-.404-.176a.37.37 0 0 1-.144-.299q0-.234.185-.384q.188-.152.512-.152q.214 0 .37.068a.6.6 0 0 1 .246.181a.56.56 0 0 1 .12.258h.75a1.1 1.1 0 0 0-.2-.566a1.2 1.2 0 0 0-.5-.41a1.8 1.8 0 0 0-.78-.152q-.439 0-.776.15q-.337.149-.527.421q-.19.273-.19.639q0 .302.122.524q.124.223.352.367q.228.143.539.213l.618.144q.31.073.463.193a.39.39 0 0 1 .152.326a.5.5 0 0 1-.085.29a.56.56 0 0 1-.255.193q-.167.07-.413.07q-.175 0-.32-.04a.8.8 0 0 1-.248-.115a.58.58 0 0 1-.255-.384zM.806 13.693q0-.373.102-.633a.87.87 0 0 1 .302-.399a.8.8 0 0 1 .475-.137q.225 0 .398.097a.7.7 0 0 1 .272.26a.85.85 0 0 1 .12.381h.765v-.072a1.33 1.33 0 0 0-.466-.964a1.4 1.4 0 0 0-.489-.272a1.8 1.8 0 0 0-.606-.097q-.534 0-.911.223q-.375.222-.572.632q-.195.41-.196.979v.498q0 .568.193.976q.197.407.572.626q.375.217.914.217q.439 0 .785-.164t.55-.454a1.27 1.27 0 0 0 .226-.674v-.076h-.764a.8.8 0 0 1-.118.363a.7.7 0 0 1-.272.25a.9.9 0 0 1-.401.087a.85.85 0 0 1-.478-.132a.83.83 0 0 1-.299-.392a1.7 1.7 0 0 1-.102-.627zm8.239 2.238h-.953l-1.338-3.999h.917l.896 3.138h.038l.888-3.138h.879z"/></svg>', qc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.6 11.85H0v3.999h.791v-1.342h.803q.43 0 .732-.173q.305-.175.463-.474a1.4 1.4 0 0 0 .161-.677q0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.38a.57.57 0 0 1-.238.241a.8.8 0 0 1-.375.082H.788V12.48h.66q.327 0 .512.181q.185.183.185.522m2.817-1.333h-1.6v3.999h.791v-1.342h.803q.43 0 .732-.173q.305-.175.463-.474q.162-.302.161-.677q0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.38a.57.57 0 0 1-.238.241a.8.8 0 0 1-.375.082H4.15V12.48h.66q.327 0 .512.181q.185.183.185.522m2.767-.67v3.336H7.48v-3.337H6.346v-.662h3.065v.662z"/></svg>', zc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zm-7.839 9.166v.522q0 .384-.117.641a.86.86 0 0 1-.322.387a.9.9 0 0 1-.469.126a.9.9 0 0 1-.471-.126a.87.87 0 0 1-.32-.386a1.55 1.55 0 0 1-.117-.642v-.522q0-.386.117-.641a.87.87 0 0 1 .32-.387a.87.87 0 0 1 .471-.129q.264 0 .469.13a.86.86 0 0 1 .322.386q.117.255.117.641m.803.519v-.513q0-.565-.205-.972a1.46 1.46 0 0 0-.589-.63q-.381-.22-.917-.22q-.533 0-.92.22a1.44 1.44 0 0 0-.589.627q-.204.406-.205.975v.513q0 .563.205.973q.205.406.59.627q.386.216.92.216q.535 0 .916-.216q.383-.22.59-.627q.204-.41.204-.973M0 11.926v4h1.459q.603 0 .999-.238a1.45 1.45 0 0 0 .595-.689q.196-.45.196-1.084q0-.63-.196-1.075a1.43 1.43 0 0 0-.59-.68q-.395-.234-1.004-.234zm.791.645h.563q.371 0 .609.152a.9.9 0 0 1 .354.454q.118.302.118.753a2.3 2.3 0 0 1-.068.592a1.1 1.1 0 0 1-.196.422a.8.8 0 0 1-.334.252a1.3 1.3 0 0 1-.483.082H.79V12.57Zm7.422.483a1.7 1.7 0 0 0-.103.633v.495q0 .369.103.627a.83.83 0 0 0 .298.393a.85.85 0 0 0 .478.131a.9.9 0 0 0 .401-.088a.7.7 0 0 0 .273-.248a.8.8 0 0 0 .117-.364h.765v.076a1.27 1.27 0 0 1-.226.674q-.205.29-.55.454a1.8 1.8 0 0 1-.786.164q-.54 0-.914-.216a1.4 1.4 0 0 1-.571-.627q-.194-.408-.194-.976v-.498q0-.568.197-.978q.195-.411.571-.633q.378-.223.911-.223q.328 0 .607.097q.28.093.489.272a1.33 1.33 0 0 1 .466.964v.073H9.78a.85.85 0 0 0-.12-.38a.7.7 0 0 0-.273-.261a.8.8 0 0 0-.398-.097a.8.8 0 0 0-.475.138a.87.87 0 0 0-.301.398"/></svg>', Oc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V11h-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zm-6.839 9.688v-.522a1.5 1.5 0 0 0-.117-.641a.86.86 0 0 0-.322-.387a.86.86 0 0 0-.469-.129a.87.87 0 0 0-.471.13a.87.87 0 0 0-.32.386a1.5 1.5 0 0 0-.117.641v.522q0 .384.117.641a.87.87 0 0 0 .32.387a.9.9 0 0 0 .471.126a.9.9 0 0 0 .469-.126a.86.86 0 0 0 .322-.386a1.55 1.55 0 0 0 .117-.642m.803-.516v.513q0 .563-.205.973a1.47 1.47 0 0 1-.589.627q-.381.216-.917.216a1.86 1.86 0 0 1-.92-.216a1.46 1.46 0 0 1-.589-.627a2.15 2.15 0 0 1-.205-.973v-.513q0-.569.205-.975q.205-.411.59-.627q.386-.22.92-.22q.535 0 .916.22q.383.219.59.63q.204.406.204.972M1 15.925v-3.999h1.459q.609 0 1.005.235q.396.233.589.68q.196.445.196 1.074q0 .634-.196 1.084q-.197.451-.595.689q-.396.237-.999.237zm1.354-3.354H1.79v2.707h.563q.277 0 .483-.082a.8.8 0 0 0 .334-.252q.132-.17.196-.422a2.3 2.3 0 0 0 .068-.592q0-.45-.118-.753a.9.9 0 0 0-.354-.454q-.237-.152-.61-.152Zm6.756 1.116q0-.373.103-.633a.87.87 0 0 1 .301-.398a.8.8 0 0 1 .475-.138q.225 0 .398.097a.7.7 0 0 1 .273.26a.85.85 0 0 1 .12.381h.765v-.073a1.33 1.33 0 0 0-.466-.964a1.4 1.4 0 0 0-.49-.272a1.8 1.8 0 0 0-.606-.097q-.534 0-.911.223q-.375.222-.571.633q-.197.41-.197.978v.498q0 .568.194.976q.195.406.571.627q.375.216.914.216q.44 0 .785-.164t.551-.454a1.27 1.27 0 0 0 .226-.674v-.076h-.765a.8.8 0 0 1-.117.364a.7.7 0 0 1-.273.248a.9.9 0 0 1-.401.088a.85.85 0 0 1-.478-.131a.83.83 0 0 1-.298-.393a1.7 1.7 0 0 1-.103-.627zm5.092-1.76h.894l-1.275 2.006l1.254 1.992h-.908l-.85-1.415h-.035l-.852 1.415h-.862l1.24-2.015l-1.228-1.984h.932l.832 1.439h.035z"/></svg>';
2943
- var jc = Object.defineProperty, Pc = Object.getOwnPropertyDescriptor, It = (c, e, a, s) => {
2944
- for (var i = s > 1 ? void 0 : s ? Pc(e, a) : e, d = c.length - 1, f; d >= 0; d--)
2968
+ const Ac = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2h-2v-1h2a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.928 15.849v-3.337h1.136v-.662H0v.662h1.134v3.337zm4.689-3.999h-.894L4.9 13.289h-.035l-.832-1.439h-.932l1.228 1.983l-1.24 2.016h.862l.853-1.415h.035l.85 1.415h.907l-1.253-1.992zm1.93.662v3.337h-.794v-3.337H6.619v-.662h3.064v.662H8.546Z"/></svg>', Ic = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.6 11.85H0v3.999h.791v-1.342h.803q.43 0 .732-.173q.305-.175.463-.474a1.4 1.4 0 0 0 .161-.677q0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.38a.57.57 0 0 1-.238.241a.8.8 0 0 1-.375.082H.788V12.48h.66q.327 0 .512.181q.185.183.185.522m1.217-1.333v3.999h1.46q.602 0 .998-.237a1.45 1.45 0 0 0 .595-.689q.196-.45.196-1.084q0-.63-.196-1.075a1.43 1.43 0 0 0-.589-.68q-.396-.234-1.005-.234zm.791.645h.563q.371 0 .609.152a.9.9 0 0 1 .354.454q.118.302.118.753a2.3 2.3 0 0 1-.068.592a1.1 1.1 0 0 1-.196.422a.8.8 0 0 1-.334.252a1.3 1.3 0 0 1-.483.082h-.563zm3.743 1.763v1.591h-.79V11.85h2.548v.653H7.896v1.117h1.606v.638z"/></svg>', Lc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2H9v-1h3a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM.706 13.189v2.66H0V11.85h.806l1.14 2.596h.026l1.14-2.596h.8v3.999h-.716v-2.66h-.038l-.946 2.159h-.516l-.952-2.16H.706Zm3.919 2.66V11.85h1.459q.609 0 1.005.234t.589.68q.195.445.196 1.075q0 .634-.196 1.084q-.197.451-.595.689q-.396.237-1 .237H4.626Zm1.353-3.354h-.562v2.707h.562q.279 0 .484-.082a.8.8 0 0 0 .334-.252a1.1 1.1 0 0 0 .196-.422q.067-.252.067-.592a2.1 2.1 0 0 0-.117-.753a.9.9 0 0 0-.354-.454q-.238-.152-.61-.152"/></svg>', qc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM3.517 14.841a1.13 1.13 0 0 0 .401.823q.195.162.478.252q.284.091.665.091q.507 0 .859-.158q.354-.158.539-.44q.187-.284.187-.656q0-.336-.134-.56a1 1 0 0 0-.375-.357a2 2 0 0 0-.566-.21l-.621-.144a1 1 0 0 1-.404-.176a.37.37 0 0 1-.144-.299q0-.234.185-.384q.188-.152.512-.152q.214 0 .37.068a.6.6 0 0 1 .246.181a.56.56 0 0 1 .12.258h.75a1.1 1.1 0 0 0-.2-.566a1.2 1.2 0 0 0-.5-.41a1.8 1.8 0 0 0-.78-.152q-.439 0-.776.15q-.337.149-.527.421q-.19.273-.19.639q0 .302.122.524q.124.223.352.367q.228.143.539.213l.618.144q.31.073.463.193a.39.39 0 0 1 .152.326a.5.5 0 0 1-.085.29a.56.56 0 0 1-.255.193q-.167.07-.413.07q-.175 0-.32-.04a.8.8 0 0 1-.248-.115a.58.58 0 0 1-.255-.384zM.806 13.693q0-.373.102-.633a.87.87 0 0 1 .302-.399a.8.8 0 0 1 .475-.137q.225 0 .398.097a.7.7 0 0 1 .272.26a.85.85 0 0 1 .12.381h.765v-.072a1.33 1.33 0 0 0-.466-.964a1.4 1.4 0 0 0-.489-.272a1.8 1.8 0 0 0-.606-.097q-.534 0-.911.223q-.375.222-.572.632q-.195.41-.196.979v.498q0 .568.193.976q.197.407.572.626q.375.217.914.217q.439 0 .785-.164t.55-.454a1.27 1.27 0 0 0 .226-.674v-.076h-.764a.8.8 0 0 1-.118.363a.7.7 0 0 1-.272.25a.9.9 0 0 1-.401.087a.85.85 0 0 1-.478-.132a.83.83 0 0 1-.299-.392a1.7 1.7 0 0 1-.102-.627zm8.239 2.238h-.953l-1.338-3.999h.917l.896 3.138h.038l.888-3.138h.879z"/></svg>', Pc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.6 11.85H0v3.999h.791v-1.342h.803q.43 0 .732-.173q.305-.175.463-.474a1.4 1.4 0 0 0 .161-.677q0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.38a.57.57 0 0 1-.238.241a.8.8 0 0 1-.375.082H.788V12.48h.66q.327 0 .512.181q.185.183.185.522m2.817-1.333h-1.6v3.999h.791v-1.342h.803q.43 0 .732-.173q.305-.175.463-.474q.162-.302.161-.677q0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.38a.57.57 0 0 1-.238.241a.8.8 0 0 1-.375.082H4.15V12.48h.66q.327 0 .512.181q.185.183.185.522m2.767-.67v3.336H7.48v-3.337H6.346v-.662h3.065v.662z"/></svg>', zc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zm-7.839 9.166v.522q0 .384-.117.641a.86.86 0 0 1-.322.387a.9.9 0 0 1-.469.126a.9.9 0 0 1-.471-.126a.87.87 0 0 1-.32-.386a1.55 1.55 0 0 1-.117-.642v-.522q0-.386.117-.641a.87.87 0 0 1 .32-.387a.87.87 0 0 1 .471-.129q.264 0 .469.13a.86.86 0 0 1 .322.386q.117.255.117.641m.803.519v-.513q0-.565-.205-.972a1.46 1.46 0 0 0-.589-.63q-.381-.22-.917-.22q-.533 0-.92.22a1.44 1.44 0 0 0-.589.627q-.204.406-.205.975v.513q0 .563.205.973q.205.406.59.627q.386.216.92.216q.535 0 .916-.216q.383-.22.59-.627q.204-.41.204-.973M0 11.926v4h1.459q.603 0 .999-.238a1.45 1.45 0 0 0 .595-.689q.196-.45.196-1.084q0-.63-.196-1.075a1.43 1.43 0 0 0-.59-.68q-.395-.234-1.004-.234zm.791.645h.563q.371 0 .609.152a.9.9 0 0 1 .354.454q.118.302.118.753a2.3 2.3 0 0 1-.068.592a1.1 1.1 0 0 1-.196.422a.8.8 0 0 1-.334.252a1.3 1.3 0 0 1-.483.082H.79V12.57Zm7.422.483a1.7 1.7 0 0 0-.103.633v.495q0 .369.103.627a.83.83 0 0 0 .298.393a.85.85 0 0 0 .478.131a.9.9 0 0 0 .401-.088a.7.7 0 0 0 .273-.248a.8.8 0 0 0 .117-.364h.765v.076a1.27 1.27 0 0 1-.226.674q-.205.29-.55.454a1.8 1.8 0 0 1-.786.164q-.54 0-.914-.216a1.4 1.4 0 0 1-.571-.627q-.194-.408-.194-.976v-.498q0-.568.197-.978q.195-.411.571-.633q.378-.223.911-.223q.328 0 .607.097q.28.093.489.272a1.33 1.33 0 0 1 .466.964v.073H9.78a.85.85 0 0 0-.12-.38a.7.7 0 0 0-.273-.261a.8.8 0 0 0-.398-.097a.8.8 0 0 0-.475.138a.87.87 0 0 0-.301.398"/></svg>', Oc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V11h-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zm-6.839 9.688v-.522a1.5 1.5 0 0 0-.117-.641a.86.86 0 0 0-.322-.387a.86.86 0 0 0-.469-.129a.87.87 0 0 0-.471.13a.87.87 0 0 0-.32.386a1.5 1.5 0 0 0-.117.641v.522q0 .384.117.641a.87.87 0 0 0 .32.387a.9.9 0 0 0 .471.126a.9.9 0 0 0 .469-.126a.86.86 0 0 0 .322-.386a1.55 1.55 0 0 0 .117-.642m.803-.516v.513q0 .563-.205.973a1.47 1.47 0 0 1-.589.627q-.381.216-.917.216a1.86 1.86 0 0 1-.92-.216a1.46 1.46 0 0 1-.589-.627a2.15 2.15 0 0 1-.205-.973v-.513q0-.569.205-.975q.205-.411.59-.627q.386-.22.92-.22q.535 0 .916.22q.383.219.59.63q.204.406.204.972M1 15.925v-3.999h1.459q.609 0 1.005.235q.396.233.589.68q.196.445.196 1.074q0 .634-.196 1.084q-.197.451-.595.689q-.396.237-.999.237zm1.354-3.354H1.79v2.707h.563q.277 0 .483-.082a.8.8 0 0 0 .334-.252q.132-.17.196-.422a2.3 2.3 0 0 0 .068-.592q0-.45-.118-.753a.9.9 0 0 0-.354-.454q-.237-.152-.61-.152Zm6.756 1.116q0-.373.103-.633a.87.87 0 0 1 .301-.398a.8.8 0 0 1 .475-.138q.225 0 .398.097a.7.7 0 0 1 .273.26a.85.85 0 0 1 .12.381h.765v-.073a1.33 1.33 0 0 0-.466-.964a1.4 1.4 0 0 0-.49-.272a1.8 1.8 0 0 0-.606-.097q-.534 0-.911.223q-.375.222-.571.633q-.197.41-.197.978v.498q0 .568.194.976q.195.406.571.627q.375.216.914.216q.44 0 .785-.164t.551-.454a1.27 1.27 0 0 0 .226-.674v-.076h-.765a.8.8 0 0 1-.117.364a.7.7 0 0 1-.273.248a.9.9 0 0 1-.401.088a.85.85 0 0 1-.478-.131a.83.83 0 0 1-.298-.393a1.7 1.7 0 0 1-.103-.627zm5.092-1.76h.894l-1.275 2.006l1.254 1.992h-.908l-.85-1.415h-.035l-.852 1.415h-.862l1.24-2.015l-1.228-1.984h.932l.832 1.439h.035z"/></svg>';
2969
+ var jc = Object.defineProperty, Hc = Object.getOwnPropertyDescriptor, It = (c, e, a, s) => {
2970
+ for (var i = s > 1 ? void 0 : s ? Hc(e, a) : e, d = c.length - 1, f; d >= 0; d--)
2945
2971
  (f = c[d]) && (i = (s ? f(e, a, i) : f(i)) || i);
2946
2972
  return s && i && jc(e, a, i), i;
2947
2973
  };
2948
2974
  const Ut = {
2949
- pdf: Ac,
2950
- txt: Ec,
2951
- md: Ic,
2952
- csv: Lc,
2953
- ppd: qc,
2975
+ pdf: Ic,
2976
+ txt: Ac,
2977
+ md: Lc,
2978
+ csv: qc,
2979
+ ppd: Pc,
2954
2980
  doc: zc,
2955
2981
  docx: Oc
2956
2982
  };
2957
- let Je = class extends Q {
2983
+ let Je = class extends ee {
2958
2984
  constructor() {
2959
2985
  super(...arguments), this.filename = "", this.url = "";
2960
2986
  }
@@ -2994,7 +3020,7 @@ It([
2994
3020
  Je = It([
2995
3021
  Z("cb-file")
2996
3022
  ], Je);
2997
- const Hc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M5.5 5.5A.5.5 0 0 1 6 6v6a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5m2.5 0a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5m3 .5a.5.5 0 0 0-1 0v6a.5.5 0 0 0 1 0z"/><path d="M14.5 3a1 1 0 0 1-1 1H13v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V4h-.5a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1H6a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1h3.5a1 1 0 0 1 1 1zM4.118 4L4 4.059V13a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V4.059L11.882 4zM2.5 3h11V2h-11z"/></g></svg>', Bc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M8 8a3 3 0 1 0 0-6a3 3 0 0 0 0 6m2-3a2 2 0 1 1-4 0a2 2 0 0 1 4 0m4 8c0 1-1 1-1 1H3s-1 0-1-1s1-4 6-4s6 3 6 4m-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10s-3.516.68-4.168 1.332c-.678.678-.83 1.418-.832 1.664z"/></svg>', ra = '<svg viewBox="0 0 24 24" width="1.2em" height="1.2em" ><path fill="currentColor" d="M5 9v12H1V9zm4 12a2 2 0 0 1-2-2V9c0-.55.22-1.05.59-1.41L14.17 1l1.06 1.06c.27.27.44.64.44 1.05l-.03.32L14.69 8H21a2 2 0 0 1 2 2v2c0 .26-.05.5-.14.73l-3.02 7.05C19.54 20.5 18.83 21 18 21zm0-2h9.03L21 12v-2h-8.79l1.13-5.32L9 9.03z"/></svg>', da = '<svg viewBox="0 0 24 24" width="1.2em" height="1.2em" ><path fill="currentColor" d="M19 15V3h4v12zM15 3a2 2 0 0 1 2 2v10c0 .55-.22 1.05-.59 1.41L9.83 23l-1.06-1.06c-.27-.27-.44-.64-.44-1.06l.03-.31l.95-4.57H3a2 2 0 0 1-2-2v-2c0-.26.05-.5.14-.73l3.02-7.05C4.46 3.5 5.17 3 6 3zm0 2H5.97L3 12v2h8.78l-1.13 5.32L15 14.97z"/></svg>', Rc = Y`
3023
+ const Bc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M5.5 5.5A.5.5 0 0 1 6 6v6a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5m2.5 0a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5m3 .5a.5.5 0 0 0-1 0v6a.5.5 0 0 0 1 0z"/><path d="M14.5 3a1 1 0 0 1-1 1H13v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V4h-.5a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1H6a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1h3.5a1 1 0 0 1 1 1zM4.118 4L4 4.059V13a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V4.059L11.882 4zM2.5 3h11V2h-11z"/></g></svg>', Rc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M8 8a3 3 0 1 0 0-6a3 3 0 0 0 0 6m2-3a2 2 0 1 1-4 0a2 2 0 0 1 4 0m4 8c0 1-1 1-1 1H3s-1 0-1-1s1-4 6-4s6 3 6 4m-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10s-3.516.68-4.168 1.332c-.678.678-.83 1.418-.832 1.664z"/></svg>', ra = '<svg viewBox="0 0 24 24" width="1.2em" height="1.2em" ><path fill="currentColor" d="M5 9v12H1V9zm4 12a2 2 0 0 1-2-2V9c0-.55.22-1.05.59-1.41L14.17 1l1.06 1.06c.27.27.44.64.44 1.05l-.03.32L14.69 8H21a2 2 0 0 1 2 2v2c0 .26-.05.5-.14.73l-3.02 7.05C19.54 20.5 18.83 21 18 21zm0-2h9.03L21 12v-2h-8.79l1.13-5.32L9 9.03z"/></svg>', da = '<svg viewBox="0 0 24 24" width="1.2em" height="1.2em" ><path fill="currentColor" d="M19 15V3h4v12zM15 3a2 2 0 0 1 2 2v10c0 .55-.22 1.05-.59 1.41L9.83 23l-1.06-1.06c-.27-.27-.44-.64-.44-1.06l.03-.31l.95-4.57H3a2 2 0 0 1-2-2v-2c0-.26.05-.5.14-.73l3.02-7.05C4.46 3.5 5.17 3 6 3zm0 2H5.97L3 12v2h8.78l-1.13 5.32L15 14.97z"/></svg>', Vc = Y`
2998
3024
  pre code.hljs {
2999
3025
  display: block;
3000
3026
  overflow-x: auto;
@@ -4209,13 +4235,14 @@ const Hc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="curr
4209
4235
  white-space: pre-wrap;
4210
4236
  color: var(--n-text-color);
4211
4237
  }
4212
- `, Vc = Y`
4238
+ `, Dc = Y`
4213
4239
  ${ge}
4214
- ${Rc}
4240
+ ${Vc}
4215
4241
 
4216
- .cb-message-row {
4242
+ .cb-message-row {
4217
4243
  width: 100%;
4218
4244
  }
4245
+
4219
4246
  .cb-message {
4220
4247
  display: flex;
4221
4248
  flex-direction: row;
@@ -4301,6 +4328,7 @@ const Hc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="curr
4301
4328
  }
4302
4329
 
4303
4330
  .user-message {
4331
+ max-width: 75%;
4304
4332
  //margin-right: 0px;
4305
4333
  //margin-left: auto;
4306
4334
  //color: rgb(255, 255, 255);
@@ -4312,18 +4340,15 @@ const Hc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="curr
4312
4340
  padding: 6px 12px;
4313
4341
  }
4314
4342
 
4315
- .user-message.cb-message__content {
4316
- max-width: 75%;
4317
- }
4318
-
4319
4343
  .user-message a {
4320
4344
  color: var(--enegelai-bot-message-user-a-color, rgb(85, 26, 139));
4321
4345
  }
4322
4346
 
4323
4347
  .assistant-message {
4348
+ margin-left: 4px;
4349
+ width: 85%;
4324
4350
  margin-right: auto;
4325
4351
  //margin-left: -12px;
4326
- margin-left: 0px;
4327
4352
  margin-top: 2px;
4328
4353
  //color: rgb(34, 34, 34);
4329
4354
  color: var(--enegelai-bot-message-bot-color, rgb(34, 34, 34));
@@ -4346,10 +4371,6 @@ const Hc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="curr
4346
4371
  padding: 4px 12px 6px 12px;
4347
4372
  }
4348
4373
 
4349
- .assistant-message.cb-message__content {
4350
- max-width: 85%;
4351
- }
4352
-
4353
4374
  .cb-bot-message-wrapper {
4354
4375
  padding: 4px 4px;
4355
4376
  //display: flex;
@@ -4423,33 +4444,33 @@ const Hc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="curr
4423
4444
  function Wt(c, e) {
4424
4445
  return `<pre class="code-block-wrapper"><div class="code-block-header"><span class="code-block-header__lang">${e}</span><span class="code-block-header__copy">Copy</span></div><code class="hljs code-block-body ${e}">${c}</code></pre>`;
4425
4446
  }
4426
- function Dc() {
4427
- const c = new Ha({
4447
+ function Fc() {
4448
+ const c = new Ba({
4428
4449
  html: !0,
4429
4450
  breaks: !0,
4430
4451
  linkify: !0,
4431
4452
  highlight(e, a) {
4432
- if (!!(a && wt.getLanguage(a))) {
4453
+ if (!!(a && vt.getLanguage(a))) {
4433
4454
  const i = a ?? "";
4434
- return Wt(wt.highlight(e, { language: i }).value, i);
4455
+ return Wt(vt.highlight(e, { language: i }).value, i);
4435
4456
  }
4436
- return Wt(wt.highlightAuto(e).value, "");
4457
+ return Wt(vt.highlightAuto(e).value, "");
4437
4458
  }
4438
4459
  });
4439
- return c.use(Ba, { attrs: { target: "_blank", rel: "noopener" } }), c;
4460
+ return c.use(Ra, { attrs: { target: "_blank", rel: "noopener" } }), c;
4440
4461
  }
4441
4462
  async function Yt(c) {
4442
- const a = Dc().render(c);
4443
- return g`${ae(a)}`;
4463
+ const a = Fc().render(c);
4464
+ return g`${Q(a)}`;
4444
4465
  }
4445
- var Fc = Object.defineProperty, Nc = Object.getOwnPropertyDescriptor, Fe = (c, e, a, s) => {
4446
- for (var i = s > 1 ? void 0 : s ? Nc(e, a) : e, d = c.length - 1, f; d >= 0; d--)
4466
+ var Nc = Object.defineProperty, Uc = Object.getOwnPropertyDescriptor, Fe = (c, e, a, s) => {
4467
+ for (var i = s > 1 ? void 0 : s ? Uc(e, a) : e, d = c.length - 1, f; d >= 0; d--)
4447
4468
  (f = c[d]) && (i = (s ? f(e, a, i) : f(i)) || i);
4448
- return s && i && Fc(e, a, i), i;
4469
+ return s && i && Nc(e, a, i), i;
4449
4470
  };
4450
- let $e = class extends Q {
4471
+ let Me = class extends ee {
4451
4472
  constructor() {
4452
- super(...arguments), this.store = new gt(this, p), this.type = "assistant", this.suppressFeedback = !1, this.lightbox = wc({
4473
+ super(...arguments), this.store = new pt(this, p), this.type = "assistant", this.suppressFeedback = !1, this.lightbox = xc({
4453
4474
  touchNavigation: !0,
4454
4475
  loop: !0,
4455
4476
  autoplayVideos: !0,
@@ -4515,7 +4536,7 @@ let $e = class extends Q {
4515
4536
  c.addEventListener("click", () => {
4516
4537
  var a, s;
4517
4538
  const e = (s = (a = c.parentElement) == null ? void 0 : a.nextElementSibling) == null ? void 0 : s.textContent;
4518
- e && Ja(e).then(() => {
4539
+ e && Ka(e).then(() => {
4519
4540
  c.textContent = "Success", setTimeout(() => {
4520
4541
  c.textContent = "Copy";
4521
4542
  }, 500);
@@ -4530,12 +4551,12 @@ let $e = class extends Q {
4530
4551
  });
4531
4552
  }
4532
4553
  render() {
4533
- return re(
4554
+ return ne(
4534
4555
  this.message.data || this.message.isThinking,
4535
4556
  () => g`
4536
4557
  <div class="cb-message-row" part="bot-message">
4537
4558
  <!-- message -->
4538
- ${re(
4559
+ ${ne(
4539
4560
  this._isBot,
4540
4561
  () => this.renderBotMessage(this.message),
4541
4562
  () => this.renderUserMessage(this.message)
@@ -4549,11 +4570,11 @@ let $e = class extends Q {
4549
4570
  return g`<div class="cb-message__buttons ${c}">
4550
4571
  <!-- delete button -->
4551
4572
  <sl-button class="cb-message__delete-button" name="trash" @click=${this._removeMessageHandler} circle variant="text" size="small">
4552
- <cb-icon svg="${Hc}" style="font-size: 1em !important;"></cb-icon>
4573
+ <cb-icon svg="${Bc}" style="font-size: 1em !important;"></cb-icon>
4553
4574
  </sl-button>
4554
4575
  </div>`;
4555
4576
  }
4556
- renderMessage(c) {
4577
+ renderMessage(c, e = "bot-message-content") {
4557
4578
  return g`
4558
4579
  <div
4559
4580
  class="cb-message__content
@@ -4561,6 +4582,7 @@ let $e = class extends Q {
4561
4582
  message-type-${c.type}
4562
4583
  ${c.isThinking ? "thinking" : ""}"
4563
4584
  style="display: flex"
4585
+ part="${e}"
4564
4586
  >
4565
4587
  ${this.renderMessageContent(c)}
4566
4588
  </div>
@@ -4572,7 +4594,7 @@ let $e = class extends Q {
4572
4594
  renderMessageContent(c) {
4573
4595
  var e;
4574
4596
  return c.isThinking ? g`<cb-thinking></cb-thinking>` : c.isUploading ? g`<cb-uploading .files="${c.data.files || []}"></cb-uploading>` : c.type === "text" ? g`<div class="cb-message-text">
4575
- ${re(
4597
+ ${ne(
4576
4598
  c.data.userName,
4577
4599
  () => g`<div style="font-size: 12px; color:#9ca3af">${c.data.userName}</div>`,
4578
4600
  () => null
@@ -4594,15 +4616,15 @@ let $e = class extends Q {
4594
4616
  var e;
4595
4617
  if (c.data.userName && c.data.userName !== "") {
4596
4618
  const a = ((e = c.data) == null ? void 0 : e.userAvatar) || "";
4597
- return a !== "" ? g` <img src="${a}" style="width: 24px;height: 24px;" /> ` : we`${ae(p.setting.agentIconSvg)}`;
4619
+ return a !== "" ? g` <img src="${a}" style="width: 24px;height: 24px;" /> ` : we`${Q(p.setting.agentIconSvg)}`;
4598
4620
  }
4599
- return c.author === "system" ? we`${ae(p.setting.systemIconSvg)}` : we`${ae(p.setting.botIconSvg)}`;
4621
+ return c.author === "system" ? we`${Q(p.setting.systemIconSvg)}` : we`${Q(p.setting.botIconSvg)}`;
4600
4622
  }
4601
4623
  renderBotMessage(c) {
4602
4624
  return g`
4603
4625
  <div class="cb-message cb-bot-message-wrapper" part="cb-message">
4604
4626
  <div class="avatar assistant-avatar xsmall" style="margin-top:4px;">${this.renderBotMessageAvatar(c)}</div>
4605
- <div style="margin-left: 4px;width: 100%">${this.renderMessage(c)}</div>
4627
+ ${this.renderMessage(c, "bot-message-content")}
4606
4628
  </div>
4607
4629
  ${this.renderBotMessageFeedback(c)}
4608
4630
  `;
@@ -4610,8 +4632,8 @@ let $e = class extends Q {
4610
4632
  renderBotMessageFeedback(c) {
4611
4633
  return this.suppressFeedback || !p.setting.feedbackEnabled ? null : g`
4612
4634
  <div class="cb-message-feedback-tools">
4613
- <div class="cb-message-feedback-icon cb-feedback-up" @click="${() => this.startFeedback(!0, c)}">${we`${ae(ra)}`}</div>
4614
- <div class="cb-message-feedback-icon cb-feedback-down" @click="${() => this.startFeedback(!1, c)}">${we`${ae(da)}`}</div>
4635
+ <div class="cb-message-feedback-icon cb-feedback-up" @click="${() => this.startFeedback(!0, c)}">${we`${Q(ra)}`}</div>
4636
+ <div class="cb-message-feedback-icon cb-feedback-down" @click="${() => this.startFeedback(!1, c)}">${we`${Q(da)}`}</div>
4615
4637
  </div>
4616
4638
  `;
4617
4639
  }
@@ -4622,41 +4644,51 @@ let $e = class extends Q {
4622
4644
  return g`
4623
4645
  <div class="cb-message" part="cb-message" style="display: flex; justify-content: end;align-items: start;">
4624
4646
  <!--<sl-avatar class="avatar user-avatar small" label="User">
4625
- <cb-icon slot="icon" svg="${Bc}" color="white"></cb-icon>
4647
+ <cb-icon slot="icon" svg="${Rc}" color="white"></cb-icon>
4648
+ //appState.appearanceUserMessageAvatarPosition
4626
4649
  </sl-avatar>-->
4627
- <div class="avatar user-avatar">${ae(p.setting.userIconSvg)}</div>
4628
- ${this.renderMessage(c)}
4650
+ ${ne(
4651
+ p.appearanceUserMessageAvatarPosition === "left",
4652
+ () => g`
4653
+ <div class="avatar user-avatar">${Q(p.setting.userIconSvg)}</div>
4654
+ ${this.renderMessage(c, "user-message-content")}
4655
+ `,
4656
+ () => g`
4657
+ ${this.renderMessage(c, "user-message-content")}
4658
+ <div class="avatar user-avatar">${Q(p.setting.userIconSvg)}</div>
4659
+ `
4660
+ )}
4629
4661
  </div>
4630
4662
  `;
4631
4663
  }
4632
4664
  };
4633
- $e.styles = Vc;
4665
+ Me.styles = Dc;
4634
4666
  Fe([
4635
4667
  v({ type: Object })
4636
- ], $e.prototype, "message", 2);
4668
+ ], Me.prototype, "message", 2);
4637
4669
  Fe([
4638
4670
  v({ type: String })
4639
- ], $e.prototype, "type", 2);
4671
+ ], Me.prototype, "type", 2);
4640
4672
  Fe([
4641
4673
  v({ type: Boolean })
4642
- ], $e.prototype, "suppressFeedback", 2);
4674
+ ], Me.prototype, "suppressFeedback", 2);
4643
4675
  Fe([
4644
4676
  Qt(".code-block-header__copy")
4645
- ], $e.prototype, "copyBtns", 2);
4677
+ ], Me.prototype, "copyBtns", 2);
4646
4678
  Fe([
4647
4679
  Qt("img")
4648
- ], $e.prototype, "glightboxImages", 2);
4649
- $e = Fe([
4680
+ ], Me.prototype, "glightboxImages", 2);
4681
+ Me = Fe([
4650
4682
  Z("cb-message")
4651
- ], $e);
4652
- var Uc = Object.defineProperty, Wc = Object.getOwnPropertyDescriptor, me = (c, e, a, s) => {
4653
- for (var i = s > 1 ? void 0 : s ? Wc(e, a) : e, d = c.length - 1, f; d >= 0; d--)
4683
+ ], Me);
4684
+ var Wc = Object.defineProperty, Yc = Object.getOwnPropertyDescriptor, me = (c, e, a, s) => {
4685
+ for (var i = s > 1 ? void 0 : s ? Yc(e, a) : e, d = c.length - 1, f; d >= 0; d--)
4654
4686
  (f = c[d]) && (i = (s ? f(e, a, i) : f(i)) || i);
4655
- return s && i && Uc(e, a, i), i;
4687
+ return s && i && Wc(e, a, i), i;
4656
4688
  };
4657
4689
  const ve = Ke.noConflict();
4658
4690
  ve.setLevel("info");
4659
- let fe = class extends Q {
4691
+ let fe = class extends ee {
4660
4692
  constructor() {
4661
4693
  super(...arguments), this.messages = [], this.actions = [], this.form = null, this.suppressFeedback = !1, this.calendlyInjected = !1, this.activeCalendlyAction = -1, this.hubspotMeetingInjected = !1, this.activeHubspotMeetingAction = -1;
4662
4694
  }
@@ -4673,7 +4705,7 @@ let fe = class extends Q {
4673
4705
  ${Ye(
4674
4706
  this.messages,
4675
4707
  (c) => c.id + JSON.stringify(c.data),
4676
- (c) => g`<cb-message .message="${c}" exportparts="bot-message" ?suppressFeedback=${this.suppressFeedback}></cb-message>`
4708
+ (c) => g`<cb-message .message="${c}" exportparts="bot-message, cb-message, bot-message-content, user-message-content" ?suppressFeedback=${this.suppressFeedback}></cb-message>`
4677
4709
  )}
4678
4710
  ${this.renderActions()} ${this.renderForm()}
4679
4711
  <div id="cb-message-list-bottom-anchor"></div>
@@ -4716,7 +4748,7 @@ let fe = class extends Q {
4716
4748
  return a || s[0], g`<div class="cb-form-field">
4717
4749
  <label class="cb-form-field-label"
4718
4750
  >${c.title}
4719
- ${re(
4751
+ ${ne(
4720
4752
  e,
4721
4753
  () => g`*`,
4722
4754
  () => g``
@@ -4924,7 +4956,7 @@ let fe = class extends Q {
4924
4956
  `;
4925
4957
  }
4926
4958
  };
4927
- fe.styles = yc;
4959
+ fe.styles = vc;
4928
4960
  me([
4929
4961
  v({ type: Array })
4930
4962
  ], fe.prototype, "messages", 2);
@@ -4955,7 +4987,7 @@ me([
4955
4987
  fe = me([
4956
4988
  Z("cb-message-list")
4957
4989
  ], fe);
4958
- const Yc = Y`
4990
+ const Xc = Y`
4959
4991
  ${ge}
4960
4992
 
4961
4993
  :host {
@@ -4964,8 +4996,6 @@ const Yc = Y`
4964
4996
  position: relative;
4965
4997
  padding: 6px 5px;
4966
4998
  box-sizing: border-box;
4967
- border-radius-bottom-left: 6px;
4968
- border-radius-bottom-right: 6px;
4969
4999
  }
4970
5000
 
4971
5001
  .cb-user-input-wrapper {
@@ -4998,13 +5028,13 @@ const Yc = Y`
4998
5028
  .cb-input-buttons {
4999
5029
  padding: 0 5px;
5000
5030
  }
5001
- `, Xc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M15.854.146a.5.5 0 0 1 .11.54l-5.819 14.547a.75.75 0 0 1-1.329.124l-3.178-4.995L.643 7.184a.75.75 0 0 1 .124-1.33L15.314.037a.5.5 0 0 1 .54.11ZM6.636 10.07l2.761 4.338L14.13 2.576zm6.787-8.201L1.591 6.602l4.339 2.76z"/></svg>', Gc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M4.5 3a2.5 2.5 0 0 1 5 0v9a1.5 1.5 0 0 1-3 0V5a.5.5 0 0 1 1 0v7a.5.5 0 0 0 1 0V3a1.5 1.5 0 1 0-3 0v9a2.5 2.5 0 0 0 5 0V5a.5.5 0 0 1 1 0v7a3.5 3.5 0 1 1-7 0z"/></svg>';
5002
- var Zc = Object.defineProperty, Jc = Object.getOwnPropertyDescriptor, ke = (c, e, a, s) => {
5003
- for (var i = s > 1 ? void 0 : s ? Jc(e, a) : e, d = c.length - 1, f; d >= 0; d--)
5031
+ `, Gc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M15.854.146a.5.5 0 0 1 .11.54l-5.819 14.547a.75.75 0 0 1-1.329.124l-3.178-4.995L.643 7.184a.75.75 0 0 1 .124-1.33L15.314.037a.5.5 0 0 1 .54.11ZM6.636 10.07l2.761 4.338L14.13 2.576zm6.787-8.201L1.591 6.602l4.339 2.76z"/></svg>', Zc = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M4.5 3a2.5 2.5 0 0 1 5 0v9a1.5 1.5 0 0 1-3 0V5a.5.5 0 0 1 1 0v7a.5.5 0 0 0 1 0V3a1.5 1.5 0 1 0-3 0v9a2.5 2.5 0 0 0 5 0V5a.5.5 0 0 1 1 0v7a3.5 3.5 0 1 1-7 0z"/></svg>';
5032
+ var Jc = Object.defineProperty, Kc = Object.getOwnPropertyDescriptor, ke = (c, e, a, s) => {
5033
+ for (var i = s > 1 ? void 0 : s ? Kc(e, a) : e, d = c.length - 1, f; d >= 0; d--)
5004
5034
  (f = c[d]) && (i = (s ? f(e, a, i) : f(i)) || i);
5005
- return s && i && Zc(e, a, i), i;
5035
+ return s && i && Jc(e, a, i), i;
5006
5036
  };
5007
- let be = class extends Q {
5037
+ let be = class extends ee {
5008
5038
  constructor() {
5009
5039
  super(...arguments), this.placeholder = "Type a message...", this.sendButtonLabel = "Send", this.enableFileUpload = !1, this.value = "", this.loading = !1, this.disabled = !1, this.currentKey = "";
5010
5040
  }
@@ -5040,7 +5070,7 @@ let be = class extends Q {
5040
5070
  });
5041
5071
  }
5042
5072
  async _sendFileHandler() {
5043
- const c = await Ka();
5073
+ const c = await Qa();
5044
5074
  this.emit("message:send:file", {
5045
5075
  detail: {
5046
5076
  files: c
@@ -5049,7 +5079,7 @@ let be = class extends Q {
5049
5079
  }
5050
5080
  render() {
5051
5081
  return g`
5052
- ${re(
5082
+ ${ne(
5053
5083
  this.loading,
5054
5084
  () => g`<sl-progress-bar style="--height: 2px;" indeterminate></sl-progress-bar>`,
5055
5085
  () => g``
@@ -5057,6 +5087,7 @@ let be = class extends Q {
5057
5087
  <div class="cb-user-input-wrapper" part="user-input-wrapper">
5058
5088
  <sl-textarea
5059
5089
  part="user-input"
5090
+ exportparts="textarea: user-input-textarea, base: user-input-base"
5060
5091
  @sl-input=${this._inputChangeHandler}
5061
5092
  placeholder=${this.placeholder}
5062
5093
  class="cb-user-input"
@@ -5071,11 +5102,11 @@ let be = class extends Q {
5071
5102
  ></sl-textarea>
5072
5103
 
5073
5104
  <span class="cb-input-buttons">
5074
- ${re(
5105
+ ${ne(
5075
5106
  this.enableFileUpload,
5076
5107
  () => g`
5077
5108
  <sl-button @click=${this._sendFileHandler} name="paperclip" label="Attachment" size="large" class="paperclip-button" variant="text" circle>
5078
- <cb-icon svg="${Gc}"></cb-icon>
5109
+ <cb-icon svg="${Zc}"></cb-icon>
5079
5110
  <!-- select file input -->
5080
5111
  <input type="file" id="file" name="file" class="file-input" />
5081
5112
  </sl-button>
@@ -5083,7 +5114,7 @@ let be = class extends Q {
5083
5114
  () => g``
5084
5115
  )}
5085
5116
  <sl-button @click=${this._sendHandler} name="send" label="Send" size="medium" class="send-button" variant="text" ?disabled=${this.value.length === 0} ?loading=${this.loading} circle>
5086
- <cb-icon svg="${Xc}"></cb-icon>
5117
+ <cb-icon svg="${Gc}"></cb-icon>
5087
5118
  </sl-button>
5088
5119
  </span>
5089
5120
  </div>
@@ -5093,7 +5124,7 @@ let be = class extends Q {
5093
5124
  c.key === "Enter" && !c.shiftKey && this._sendHandler();
5094
5125
  }
5095
5126
  };
5096
- be.styles = Yc;
5127
+ be.styles = Xc;
5097
5128
  ke([
5098
5129
  v({ type: String, attribute: "placeholder" })
5099
5130
  ], be.prototype, "placeholder", 2);
@@ -5121,7 +5152,7 @@ ke([
5121
5152
  be = ke([
5122
5153
  Z("cb-user-input")
5123
5154
  ], be);
5124
- const Kc = Y`
5155
+ const _t = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M2.146 2.854a.5.5 0 1 1 .708-.708L8 7.293l5.146-5.147a.5.5 0 0 1 .708.708L8.707 8l5.147 5.146a.5.5 0 0 1-.708.708L8 8.707l-5.146 5.147a.5.5 0 0 1-.708-.708L7.293 8z"/></svg>', Qc = Y`
5125
5156
  ${ge}
5126
5157
 
5127
5158
  sl-dialog::part(base) {
@@ -5156,12 +5187,12 @@ const Kc = Y`
5156
5187
  gap: 8px;
5157
5188
  }
5158
5189
  `;
5159
- var Qc = Object.defineProperty, ei = Object.getOwnPropertyDescriptor, mt = (c, e, a, s) => {
5160
- for (var i = s > 1 ? void 0 : s ? ei(e, a) : e, d = c.length - 1, f; d >= 0; d--)
5190
+ var ei = Object.defineProperty, ti = Object.getOwnPropertyDescriptor, gt = (c, e, a, s) => {
5191
+ for (var i = s > 1 ? void 0 : s ? ti(e, a) : e, d = c.length - 1, f; d >= 0; d--)
5161
5192
  (f = c[d]) && (i = (s ? f(e, a, i) : f(i)) || i);
5162
- return s && i && Qc(e, a, i), i;
5193
+ return s && i && ei(e, a, i), i;
5163
5194
  };
5164
- let De = class extends Q {
5195
+ let De = class extends ee {
5165
5196
  constructor() {
5166
5197
  super(...arguments), this.open = !1, this.label = "Dialog", this.zindex = 100;
5167
5198
  }
@@ -5192,7 +5223,7 @@ let De = class extends Q {
5192
5223
  <cb-icon
5193
5224
  color="default"
5194
5225
  style="font-size: 1em;"
5195
- svg="${ot}"
5226
+ svg="${_t}"
5196
5227
  ></cb-icon>
5197
5228
  </sl-button>
5198
5229
  </header>
@@ -5205,25 +5236,25 @@ let De = class extends Q {
5205
5236
  </sl-dialog>`;
5206
5237
  }
5207
5238
  };
5208
- De.styles = Kc;
5209
- mt([
5239
+ De.styles = Qc;
5240
+ gt([
5210
5241
  v({ type: Boolean })
5211
5242
  ], De.prototype, "open", 2);
5212
- mt([
5243
+ gt([
5213
5244
  v({ type: String, attribute: "label" })
5214
5245
  ], De.prototype, "label", 2);
5215
- mt([
5246
+ gt([
5216
5247
  v({ type: Number })
5217
5248
  ], De.prototype, "zindex", 2);
5218
- De = mt([
5249
+ De = gt([
5219
5250
  Z("cb-dialog")
5220
5251
  ], De);
5221
- var ti = Object.defineProperty, ai = Object.getOwnPropertyDescriptor, fa = (c, e, a, s) => {
5222
- for (var i = s > 1 ? void 0 : s ? ai(e, a) : e, d = c.length - 1, f; d >= 0; d--)
5252
+ var ai = Object.defineProperty, ci = Object.getOwnPropertyDescriptor, fa = (c, e, a, s) => {
5253
+ for (var i = s > 1 ? void 0 : s ? ci(e, a) : e, d = c.length - 1, f; d >= 0; d--)
5223
5254
  (f = c[d]) && (i = (s ? f(e, a, i) : f(i)) || i);
5224
- return s && i && ti(e, a, i), i;
5255
+ return s && i && ai(e, a, i), i;
5225
5256
  };
5226
- let ft = class extends Q {
5257
+ let dt = class extends ee {
5227
5258
  constructor() {
5228
5259
  super(...arguments), this.open = !1;
5229
5260
  }
@@ -5257,7 +5288,7 @@ let ft = class extends Q {
5257
5288
  this.emit("cancel");
5258
5289
  }
5259
5290
  };
5260
- ft.styles = Y`
5291
+ dt.styles = Y`
5261
5292
  .cb-clear-message-dialog {
5262
5293
  }
5263
5294
 
@@ -5267,11 +5298,11 @@ ft.styles = Y`
5267
5298
  `;
5268
5299
  fa([
5269
5300
  v({ type: Boolean })
5270
- ], ft.prototype, "open", 2);
5271
- ft = fa([
5301
+ ], dt.prototype, "open", 2);
5302
+ dt = fa([
5272
5303
  Z("cb-clear-message-dialog")
5273
- ], ft);
5274
- const ci = Y`
5304
+ ], dt);
5305
+ const ii = Y`
5275
5306
  :host {
5276
5307
  // width: 380px;
5277
5308
 
@@ -5331,12 +5362,12 @@ const ci = Y`
5331
5362
  grid-column-start: 2;
5332
5363
  }
5333
5364
  `;
5334
- var ii = Object.defineProperty, ni = Object.getOwnPropertyDescriptor, Ne = (c, e, a, s) => {
5335
- for (var i = s > 1 ? void 0 : s ? ni(e, a) : e, d = c.length - 1, f; d >= 0; d--)
5365
+ var ni = Object.defineProperty, si = Object.getOwnPropertyDescriptor, Ne = (c, e, a, s) => {
5366
+ for (var i = s > 1 ? void 0 : s ? si(e, a) : e, d = c.length - 1, f; d >= 0; d--)
5336
5367
  (f = c[d]) && (i = (s ? f(e, a, i) : f(i)) || i);
5337
- return s && i && ii(e, a, i), i;
5368
+ return s && i && ni(e, a, i), i;
5338
5369
  };
5339
- let Me = class extends Q {
5370
+ let $e = class extends ee {
5340
5371
  constructor() {
5341
5372
  super(...arguments), this.open = !1, this.clearMessageDialogOpen = !1, this.customRequest = !1;
5342
5373
  }
@@ -5369,7 +5400,7 @@ let Me = class extends Q {
5369
5400
  Enable it for your own backend.
5370
5401
  </sl-switch>
5371
5402
  </div> -->
5372
- ${re(
5403
+ ${ne(
5373
5404
  this.customRequest,
5374
5405
  () => null,
5375
5406
  () => this.renderInternalServices()
@@ -5456,26 +5487,26 @@ let Me = class extends Q {
5456
5487
  });
5457
5488
  }
5458
5489
  };
5459
- Me.styles = ci;
5490
+ $e.styles = ii;
5460
5491
  Ne([
5461
5492
  v({ type: Boolean })
5462
- ], Me.prototype, "open", 2);
5493
+ ], $e.prototype, "open", 2);
5463
5494
  Ne([
5464
5495
  v({ type: Object })
5465
- ], Me.prototype, "setting", 2);
5496
+ ], $e.prototype, "setting", 2);
5466
5497
  Ne([
5467
5498
  v({ type: Boolean })
5468
- ], Me.prototype, "clearMessageDialogOpen", 2);
5499
+ ], $e.prototype, "clearMessageDialogOpen", 2);
5469
5500
  Ne([
5470
5501
  xe("sl-dialog")
5471
- ], Me.prototype, "dialog", 2);
5502
+ ], $e.prototype, "dialog", 2);
5472
5503
  Ne([
5473
5504
  v({ type: Boolean })
5474
- ], Me.prototype, "customRequest", 2);
5475
- Me = Ne([
5505
+ ], $e.prototype, "customRequest", 2);
5506
+ $e = Ne([
5476
5507
  Z("cb-setting")
5477
- ], Me);
5478
- const si = Y`
5508
+ ], $e);
5509
+ const oi = Y`
5479
5510
  ${ge}
5480
5511
  :host {
5481
5512
  --primary-color: var(--sl-color-primary-600);
@@ -5576,15 +5607,15 @@ const si = Y`
5576
5607
  align-items: start;
5577
5608
  gap: 10px;
5578
5609
  }
5579
- `, oi = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M16 8c0 3.866-3.582 7-8 7a9 9 0 0 1-2.347-.306c-.584.296-1.925.864-4.181 1.234c-.2.032-.352-.176-.273-.362c.354-.836.674-1.95.77-2.966C.744 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7M5 8a1 1 0 1 0-2 0a1 1 0 0 0 2 0m4 0a1 1 0 1 0-2 0a1 1 0 0 0 2 0m3 1a1 1 0 1 0 0-2a1 1 0 0 0 0 2"/></svg>';
5580
- var ri = Object.defineProperty, di = Object.getOwnPropertyDescriptor, la = (c, e, a, s) => {
5581
- for (var i = s > 1 ? void 0 : s ? di(e, a) : e, d = c.length - 1, f; d >= 0; d--)
5610
+ `, ri = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M16 8c0 3.866-3.582 7-8 7a9 9 0 0 1-2.347-.306c-.584.296-1.925.864-4.181 1.234c-.2.032-.352-.176-.273-.362c.354-.836.674-1.95.77-2.966C.744 11.37 0 9.76 0 8c0-3.866 3.582-7 8-7s8 3.134 8 7M5 8a1 1 0 1 0-2 0a1 1 0 0 0 2 0m4 0a1 1 0 1 0-2 0a1 1 0 0 0 2 0m3 1a1 1 0 1 0 0-2a1 1 0 0 0 0 2"/></svg>';
5611
+ var di = Object.defineProperty, fi = Object.getOwnPropertyDescriptor, la = (c, e, a, s) => {
5612
+ for (var i = s > 1 ? void 0 : s ? fi(e, a) : e, d = c.length - 1, f; d >= 0; d--)
5582
5613
  (f = c[d]) && (i = (s ? f(e, a, i) : f(i)) || i);
5583
- return s && i && ri(e, a, i), i;
5614
+ return s && i && di(e, a, i), i;
5584
5615
  };
5585
- let lt = class extends Q {
5616
+ let ft = class extends ee {
5586
5617
  constructor() {
5587
- super(...arguments), this.store = new gt(this, p), this.open = !1;
5618
+ super(...arguments), this.store = new pt(this, p), this.open = !1;
5588
5619
  }
5589
5620
  // handler click
5590
5621
  _clickHandler() {
@@ -5607,31 +5638,26 @@ let lt = class extends Q {
5607
5638
  */
5608
5639
  getPopupPlacement() {
5609
5640
  let c = "top-end";
5610
- const e = document.querySelector("enegelai-bot");
5611
- if (e) {
5612
- let s = getComputedStyle(e).getPropertyValue("--enegelai-bot-anchor-popup-position").trim();
5613
- s && s != "" && (c = s);
5614
- }
5615
- return c;
5641
+ return c = p.appearanceAnchorPopupPosition, c;
5616
5642
  }
5617
5643
  render() {
5618
5644
  return g`
5619
5645
  <div class="cb-anchor ${this.open ? "open" : ""}" part="anchor" @click=${this._clickHandler.bind(this)}>
5620
5646
  <sl-popup placement="${this.getPopupPlacement()}" distance="16" ?active="${p.engage && !p.open}">
5621
5647
  <sl-button slot="anchor" label="Start" size="large" variant="primary" class="icon anchor-button" circle>
5622
- ${re(
5648
+ ${ne(
5623
5649
  this.open,
5624
- () => g`<cb-icon class="cb-anchor-icon" svg="${ot}"></cb-icon>`,
5625
- () => g`<cb-icon class="cb-anchor-icon" svg="${oi}"></cb-icon>`
5650
+ () => g`<cb-icon class="cb-anchor-icon" svg="${_t}"></cb-icon>`,
5651
+ () => g`<cb-icon class="cb-anchor-icon" svg="${ri}"></cb-icon>`
5626
5652
  )}
5627
5653
  </sl-button>
5628
5654
  <div class="cb-engage-popup">
5629
- <div class="cb-engage-popup-close" @click=${this._engageClickHandler.bind(this)}>${we`${ae(ot)}`}</div>
5655
+ <div class="cb-engage-popup-close" @click=${this._engageClickHandler.bind(this)}>${we`${Q(_t)}`}</div>
5630
5656
  <div class="cb-engage-popup-content">
5631
- ${re(
5657
+ ${ne(
5632
5658
  p.setting.logoUrl !== "",
5633
5659
  () => g`<img class="cb-engage-popup-img" src="${p.setting.logoUrl}" />`,
5634
- () => g`<div class="cb-engage-popup-logo">${we`${ae(p.setting.logoSvg)}`}</div>`
5660
+ () => g`<div class="cb-engage-popup-logo">${we`${Q(p.setting.logoSvg)}`}</div>`
5635
5661
  )}
5636
5662
  <!--<cb-icon class="cb-engage-popup-logo" svg="${p.setting.logoSvg}"></cb-icon>-->
5637
5663
  <div>${p.setting.engageMessage}</div>
@@ -5642,20 +5668,20 @@ let lt = class extends Q {
5642
5668
  `;
5643
5669
  }
5644
5670
  };
5645
- lt.styles = si;
5671
+ ft.styles = oi;
5646
5672
  la([
5647
5673
  v({ type: Boolean })
5648
- ], lt.prototype, "open", 2);
5649
- lt = la([
5674
+ ], ft.prototype, "open", 2);
5675
+ ft = la([
5650
5676
  Z("cb-anchor")
5651
- ], lt);
5652
- const fi = Y`
5677
+ ], ft);
5678
+ const li = Y`
5653
5679
  ${ge}
5654
- `, Xt = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1z"/><path d="M7.002 11a1 1 0 1 1 2 0a1 1 0 0 1-2 0M7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0z"/></g></svg>', li = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M7.938 2.016A.13.13 0 0 1 8.002 2a.13.13 0 0 1 .063.016a.15.15 0 0 1 .054.057l6.857 11.667c.036.06.035.124.002.183a.2.2 0 0 1-.054.06a.1.1 0 0 1-.066.017H1.146a.1.1 0 0 1-.066-.017a.2.2 0 0 1-.054-.06a.18.18 0 0 1 .002-.183L7.884 2.073a.15.15 0 0 1 .054-.057m1.044-.45a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767z"/><path d="M7.002 12a1 1 0 1 1 2 0a1 1 0 0 1-2 0M7.1 5.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0z"/></g></svg>', bi = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M2.5 8a5.5 5.5 0 0 1 8.25-4.764a.5.5 0 0 0 .5-.866A6.5 6.5 0 1 0 14.5 8a.5.5 0 0 0-1 0a5.5 5.5 0 1 1-11 0"/><path d="M15.354 3.354a.5.5 0 0 0-.708-.708L8 9.293L5.354 6.646a.5.5 0 1 0-.708.708l3 3a.5.5 0 0 0 .708 0z"/></g></svg>', hi = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16"/><path d="m8.93 6.588l-2.29.287l-.082.38l.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319c.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246c-.275 0-.375-.193-.304-.533zM9 4.5a1 1 0 1 1-2 0a1 1 0 0 1 2 0"/></g></svg>';
5655
- var ui = Object.defineProperty, pi = Object.getOwnPropertyDescriptor, ba = (c, e, a, s) => {
5656
- for (var i = s > 1 ? void 0 : s ? pi(e, a) : e, d = c.length - 1, f; d >= 0; d--)
5680
+ `, Xt = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1z"/><path d="M7.002 11a1 1 0 1 1 2 0a1 1 0 0 1-2 0M7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0z"/></g></svg>', bi = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M7.938 2.016A.13.13 0 0 1 8.002 2a.13.13 0 0 1 .063.016a.15.15 0 0 1 .054.057l6.857 11.667c.036.06.035.124.002.183a.2.2 0 0 1-.054.06a.1.1 0 0 1-.066.017H1.146a.1.1 0 0 1-.066-.017a.2.2 0 0 1-.054-.06a.18.18 0 0 1 .002-.183L7.884 2.073a.15.15 0 0 1 .054-.057m1.044-.45a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767z"/><path d="M7.002 12a1 1 0 1 1 2 0a1 1 0 0 1-2 0M7.1 5.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0z"/></g></svg>', hi = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M2.5 8a5.5 5.5 0 0 1 8.25-4.764a.5.5 0 0 0 .5-.866A6.5 6.5 0 1 0 14.5 8a.5.5 0 0 0-1 0a5.5 5.5 0 1 1-11 0"/><path d="M15.354 3.354a.5.5 0 0 0-.708-.708L8 9.293L5.354 6.646a.5.5 0 1 0-.708.708l3 3a.5.5 0 0 0 .708 0z"/></g></svg>', ui = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16"/><path d="m8.93 6.588l-2.29.287l-.082.38l.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319c.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246c-.275 0-.375-.193-.304-.533zM9 4.5a1 1 0 1 1-2 0a1 1 0 0 1 2 0"/></g></svg>';
5681
+ var pi = Object.defineProperty, gi = Object.getOwnPropertyDescriptor, ba = (c, e, a, s) => {
5682
+ for (var i = s > 1 ? void 0 : s ? gi(e, a) : e, d = c.length - 1, f; d >= 0; d--)
5657
5683
  (f = c[d]) && (i = (s ? f(e, a, i) : f(i)) || i);
5658
- return s && i && ui(e, a, i), i;
5684
+ return s && i && pi(e, a, i), i;
5659
5685
  };
5660
5686
  const Gt = {
5661
5687
  error: {
@@ -5668,18 +5694,18 @@ const Gt = {
5668
5694
  },
5669
5695
  warning: {
5670
5696
  variant: "warning",
5671
- icon: li
5697
+ icon: bi
5672
5698
  },
5673
5699
  success: {
5674
5700
  variant: "success",
5675
- icon: bi
5701
+ icon: hi
5676
5702
  },
5677
5703
  info: {
5678
5704
  variant: "primary",
5679
- icon: hi
5705
+ icon: ui
5680
5706
  }
5681
5707
  };
5682
- let bt = class extends Q {
5708
+ let lt = class extends ee {
5683
5709
  constructor() {
5684
5710
  super(...arguments), this.status = "info";
5685
5711
  }
@@ -5688,19 +5714,19 @@ let bt = class extends Q {
5688
5714
  return g`<cb-icon svg=${e} color="${c}"></cb-icon>`;
5689
5715
  }
5690
5716
  };
5691
- bt.styles = ia;
5717
+ lt.styles = ia;
5692
5718
  ba([
5693
5719
  v({ type: String })
5694
- ], bt.prototype, "status", 2);
5695
- bt = ba([
5720
+ ], lt.prototype, "status", 2);
5721
+ lt = ba([
5696
5722
  Z("cb-status-icon")
5697
- ], bt);
5698
- var gi = Object.defineProperty, mi = Object.getOwnPropertyDescriptor, yi = (c, e, a, s) => {
5699
- for (var i = s > 1 ? void 0 : s ? mi(e, a) : e, d = c.length - 1, f; d >= 0; d--)
5723
+ ], lt);
5724
+ var mi = Object.defineProperty, yi = Object.getOwnPropertyDescriptor, vi = (c, e, a, s) => {
5725
+ for (var i = s > 1 ? void 0 : s ? yi(e, a) : e, d = c.length - 1, f; d >= 0; d--)
5700
5726
  (f = c[d]) && (i = (s ? f(e, a, i) : f(i)) || i);
5701
- return s && i && gi(e, a, i), i;
5727
+ return s && i && mi(e, a, i), i;
5702
5728
  };
5703
- let $t = class extends Q {
5729
+ let Mt = class extends ee {
5704
5730
  render() {
5705
5731
  return g` <sl-alert variant="danger" open>
5706
5732
  <cb-status-icon status="error" slot="icon"></cb-status-icon>
@@ -5716,11 +5742,11 @@ let $t = class extends Q {
5716
5742
  this.emit("setting:show");
5717
5743
  }
5718
5744
  };
5719
- $t.styles = fi;
5720
- $t = yi([
5745
+ Mt.styles = li;
5746
+ Mt = vi([
5721
5747
  Z("cb-auth-alert")
5722
- ], $t);
5723
- const vi = Y`
5748
+ ], Mt);
5749
+ const wi = Y`
5724
5750
  sl-dialog::part(base) {
5725
5751
  z-index: 1000;
5726
5752
  }
@@ -5794,19 +5820,22 @@ const vi = Y`
5794
5820
  filter: alpha(opacity=80);
5795
5821
  }
5796
5822
  `;
5797
- var wi = Object.defineProperty, xi = Object.getOwnPropertyDescriptor, Ue = (c, e, a, s) => {
5798
- for (var i = s > 1 ? void 0 : s ? xi(e, a) : e, d = c.length - 1, f; d >= 0; d--)
5823
+ var xi = Object.defineProperty, ki = Object.getOwnPropertyDescriptor, Ue = (c, e, a, s) => {
5824
+ for (var i = s > 1 ? void 0 : s ? ki(e, a) : e, d = c.length - 1, f; d >= 0; d--)
5799
5825
  (f = c[d]) && (i = (s ? f(e, a, i) : f(i)) || i);
5800
- return s && i && wi(e, a, i), i;
5826
+ return s && i && xi(e, a, i), i;
5801
5827
  };
5802
- const Zt = Ke.noConflict();
5803
- let Te = class extends Q {
5828
+ const Zt = Ke.noConflict(), Ci = '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" class="bi bi-star-fill" viewBox="0 0 16 16"><path d="M3.612 15.443c-.386.198-.824-.149-.746-.592l.83-4.73L.173 6.765c-.329-.314-.158-.888.283-.95l4.898-.696L7.538.792c.197-.39.73-.39.927 0l2.184 4.327 4.898.696c.441.062.612.636.282.95l-3.522 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256z"/></svg>';
5829
+ let Te = class extends ee {
5804
5830
  constructor() {
5805
- super(...arguments), this.store = new gt(this, p), this.zindex = 100;
5831
+ super(...arguments), this.store = new pt(this, p), this.zindex = 100;
5806
5832
  }
5807
5833
  connectedCallback() {
5808
5834
  super.connectedCallback(), Zt.info("connectedCallback");
5809
5835
  }
5836
+ firstUpdated() {
5837
+ this._rating.getSymbol = () => Ci;
5838
+ }
5810
5839
  _stateEventHandler(c) {
5811
5840
  const e = c.detail, a = (e == null ? void 0 : e.type) || null;
5812
5841
  Zt.info(`FEEDBACK: stateEvent: ${a}`, e);
@@ -5830,7 +5859,7 @@ let Te = class extends Q {
5830
5859
  p.feedbackScore = 0;
5831
5860
  }}"
5832
5861
  >
5833
- ${we`${ae(da)}`}
5862
+ ${we`${Q(da)}`}
5834
5863
  </div>
5835
5864
  <sl-rating id="cb-feedback-rating-el" class="cb-feedback-rating" @sl-change="${this._ratingChangeHandler}" label="Rating" precision="1" .value=${p.feedbackScore}></sl-rating>
5836
5865
  <div
@@ -5839,7 +5868,7 @@ let Te = class extends Q {
5839
5868
  p.feedbackScore = 5;
5840
5869
  }}"
5841
5870
  >
5842
- ${we`${ae(ra)}`}
5871
+ ${we`${Q(ra)}`}
5843
5872
  </div>
5844
5873
  </div>
5845
5874
  <div style="display: flex">
@@ -5861,7 +5890,7 @@ let Te = class extends Q {
5861
5890
  this._comments.value = "", await p.submitFeedback(c, e, a);
5862
5891
  }
5863
5892
  };
5864
- Te.styles = vi;
5893
+ Te.styles = wi;
5865
5894
  Ue([
5866
5895
  v({ type: Number })
5867
5896
  ], Te.prototype, "zindex", 2);
@@ -5882,8 +5911,8 @@ Te = Ue([
5882
5911
  ], Te);
5883
5912
  class Jt extends Error {
5884
5913
  constructor(a, s, i) {
5885
- const d = a.status || a.status === 0 ? a.status : "", f = a.statusText || "", x = `${d} ${f}`.trim(), _ = x ? `status code ${x}` : "an unknown error";
5886
- super(`Request failed with ${_}: ${s.method} ${s.url}`);
5914
+ const d = a.status || a.status === 0 ? a.status : "", f = a.statusText || "", x = `${d} ${f}`.trim(), S = x ? `status code ${x}` : "an unknown error";
5915
+ super(`Request failed with ${S}: ${s.method} ${s.url}`);
5887
5916
  pe(this, "response");
5888
5917
  pe(this, "request");
5889
5918
  pe(this, "options");
@@ -5927,7 +5956,7 @@ const pa = (c = {}, e = {}) => ({
5927
5956
  Xe(i.hooks) && (s = pa(s, i.hooks), e.hooks = s), Xe(i.headers) && (a = ua(a, i.headers), e.headers = a);
5928
5957
  }
5929
5958
  return e;
5930
- }, ki = (() => {
5959
+ }, Si = (() => {
5931
5960
  let c = !1, e = !1;
5932
5961
  const a = typeof globalThis.ReadableStream == "function", s = typeof globalThis.Request == "function";
5933
5962
  if (a && s)
@@ -5946,13 +5975,13 @@ const pa = (c = {}, e = {}) => ({
5946
5975
  throw i;
5947
5976
  }
5948
5977
  return c && !e;
5949
- })(), Ci = typeof globalThis.AbortController == "function", _i = typeof globalThis.ReadableStream == "function", Si = typeof globalThis.FormData == "function", ga = ["get", "post", "put", "patch", "head", "delete"], $i = {
5978
+ })(), _i = typeof globalThis.AbortController == "function", Mi = typeof globalThis.ReadableStream == "function", $i = typeof globalThis.FormData == "function", ga = ["get", "post", "put", "patch", "head", "delete"], Ti = {
5950
5979
  json: "application/json",
5951
5980
  text: "text/*",
5952
5981
  formData: "multipart/form-data",
5953
5982
  arrayBuffer: "*/*",
5954
5983
  blob: "*/*"
5955
- }, kt = 2147483647, ma = Symbol("stop"), Mi = {
5984
+ }, xt = 2147483647, ma = Symbol("stop"), Ei = {
5956
5985
  json: !0,
5957
5986
  parseJson: !0,
5958
5987
  stringifyJson: !0,
@@ -5964,7 +5993,7 @@ const pa = (c = {}, e = {}) => ({
5964
5993
  throwHttpErrors: !0,
5965
5994
  onDownloadProgress: !0,
5966
5995
  fetch: !0
5967
- }, Ti = {
5996
+ }, Ai = {
5968
5997
  method: !0,
5969
5998
  headers: !0,
5970
5999
  body: !0,
@@ -5981,15 +6010,15 @@ const pa = (c = {}, e = {}) => ({
5981
6010
  dispatcher: !0,
5982
6011
  duplex: !0,
5983
6012
  priority: !0
5984
- }, Ei = (c) => ga.includes(c) ? c.toUpperCase() : c, Ai = ["get", "put", "head", "delete", "options", "trace"], Ii = [408, 413, 429, 500, 502, 503, 504], Li = [413, 429, 503], Kt = {
6013
+ }, Ii = (c) => ga.includes(c) ? c.toUpperCase() : c, Li = ["get", "put", "head", "delete", "options", "trace"], qi = [408, 413, 429, 500, 502, 503, 504], Pi = [413, 429, 503], Kt = {
5985
6014
  limit: 2,
5986
- methods: Ai,
5987
- statusCodes: Ii,
5988
- afterStatusCodes: Li,
6015
+ methods: Li,
6016
+ statusCodes: qi,
6017
+ afterStatusCodes: Pi,
5989
6018
  maxRetryAfter: Number.POSITIVE_INFINITY,
5990
6019
  backoffLimit: Number.POSITIVE_INFINITY,
5991
6020
  delay: (c) => 0.3 * 2 ** (c - 1) * 1e3
5992
- }, qi = (c = {}) => {
6021
+ }, zi = (c = {}) => {
5993
6022
  if (typeof c == "number")
5994
6023
  return {
5995
6024
  ...Kt,
@@ -6004,7 +6033,7 @@ const pa = (c = {}, e = {}) => ({
6004
6033
  ...c
6005
6034
  };
6006
6035
  };
6007
- async function zi(c, e, a, s) {
6036
+ async function Oi(c, e, a, s) {
6008
6037
  return new Promise((i, d) => {
6009
6038
  const f = setTimeout(() => {
6010
6039
  a && a.abort(), d(new ha(c));
@@ -6014,7 +6043,7 @@ async function zi(c, e, a, s) {
6014
6043
  });
6015
6044
  });
6016
6045
  }
6017
- async function Oi(c, { signal: e }) {
6046
+ async function ji(c, { signal: e }) {
6018
6047
  return new Promise((a, s) => {
6019
6048
  e && (e.throwIfAborted(), e.addEventListener("abort", i, { once: !0 }));
6020
6049
  function i() {
@@ -6025,13 +6054,13 @@ async function Oi(c, { signal: e }) {
6025
6054
  }, c);
6026
6055
  });
6027
6056
  }
6028
- const ji = (c, e) => {
6057
+ const Hi = (c, e) => {
6029
6058
  const a = {};
6030
6059
  for (const s in e)
6031
- !(s in Ti) && !(s in Mi) && !(s in c) && (a[s] = e[s]);
6060
+ !(s in Ai) && !(s in Ei) && !(s in c) && (a[s] = e[s]);
6032
6061
  return a;
6033
6062
  };
6034
- class ht {
6063
+ class bt {
6035
6064
  // eslint-disable-next-line complexity
6036
6065
  constructor(e, a = {}) {
6037
6066
  pe(this, "request");
@@ -6049,10 +6078,10 @@ class ht {
6049
6078
  beforeError: [],
6050
6079
  afterResponse: []
6051
6080
  }, a.hooks),
6052
- method: Ei(a.method ?? this._input.method),
6081
+ method: Ii(a.method ?? this._input.method),
6053
6082
  // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
6054
6083
  prefixUrl: String(a.prefixUrl || ""),
6055
- retry: qi(a.retry),
6084
+ retry: zi(a.retry),
6056
6085
  throwHttpErrors: a.throwHttpErrors !== !1,
6057
6086
  timeout: a.timeout ?? 1e4,
6058
6087
  fetch: a.fetch ?? globalThis.fetch.bind(globalThis)
@@ -6063,46 +6092,46 @@ class ht {
6063
6092
  throw new Error("`input` must not begin with a slash when using `prefixUrl`");
6064
6093
  this._options.prefixUrl.endsWith("/") || (this._options.prefixUrl += "/"), this._input = this._options.prefixUrl + this._input;
6065
6094
  }
6066
- if (Ci) {
6095
+ if (_i) {
6067
6096
  this.abortController = new globalThis.AbortController();
6068
6097
  const d = this._options.signal ?? this._input.signal;
6069
6098
  d == null || d.addEventListener("abort", () => {
6070
6099
  this.abortController.abort(d.reason);
6071
6100
  }), this._options.signal = this.abortController.signal;
6072
6101
  }
6073
- if (ki && (this._options.duplex = "half"), this._options.json !== void 0 && (this._options.body = ((i = (s = this._options).stringifyJson) == null ? void 0 : i.call(s, this._options.json)) ?? JSON.stringify(this._options.json), this._options.headers.set("content-type", this._options.headers.get("content-type") ?? "application/json")), this.request = new globalThis.Request(this._input, this._options), this._options.searchParams) {
6102
+ if (Si && (this._options.duplex = "half"), this._options.json !== void 0 && (this._options.body = ((i = (s = this._options).stringifyJson) == null ? void 0 : i.call(s, this._options.json)) ?? JSON.stringify(this._options.json), this._options.headers.set("content-type", this._options.headers.get("content-type") ?? "application/json")), this.request = new globalThis.Request(this._input, this._options), this._options.searchParams) {
6074
6103
  const f = "?" + (typeof this._options.searchParams == "string" ? this._options.searchParams.replace(/^\?/, "") : new URLSearchParams(this._options.searchParams).toString()), x = this.request.url.replace(/(?:\?.*?)?(?=#|$)/, f);
6075
- (Si && this._options.body instanceof globalThis.FormData || this._options.body instanceof URLSearchParams) && !(this._options.headers && this._options.headers["content-type"]) && this.request.headers.delete("content-type"), this.request = new globalThis.Request(new globalThis.Request(x, { ...this.request }), this._options);
6104
+ ($i && this._options.body instanceof globalThis.FormData || this._options.body instanceof URLSearchParams) && !(this._options.headers && this._options.headers["content-type"]) && this.request.headers.delete("content-type"), this.request = new globalThis.Request(new globalThis.Request(x, { ...this.request }), this._options);
6076
6105
  }
6077
6106
  }
6078
6107
  static create(e, a) {
6079
- const s = new ht(e, a), i = async () => {
6080
- if (typeof s._options.timeout == "number" && s._options.timeout > kt)
6081
- throw new RangeError(`The \`timeout\` option cannot be greater than ${kt}`);
6108
+ const s = new bt(e, a), i = async () => {
6109
+ if (typeof s._options.timeout == "number" && s._options.timeout > xt)
6110
+ throw new RangeError(`The \`timeout\` option cannot be greater than ${xt}`);
6082
6111
  await Promise.resolve();
6083
6112
  let x = await s._fetch();
6084
- for (const _ of s._options.hooks.afterResponse) {
6085
- const S = await _(s.request, s._options, s._decorateResponse(x.clone()));
6086
- S instanceof globalThis.Response && (x = S);
6113
+ for (const S of s._options.hooks.afterResponse) {
6114
+ const _ = await S(s.request, s._options, s._decorateResponse(x.clone()));
6115
+ _ instanceof globalThis.Response && (x = _);
6087
6116
  }
6088
6117
  if (s._decorateResponse(x), !x.ok && s._options.throwHttpErrors) {
6089
- let _ = new Jt(x, s.request, s._options);
6090
- for (const S of s._options.hooks.beforeError)
6091
- _ = await S(_);
6092
- throw _;
6118
+ let S = new Jt(x, s.request, s._options);
6119
+ for (const _ of s._options.hooks.beforeError)
6120
+ S = await _(S);
6121
+ throw S;
6093
6122
  }
6094
6123
  if (s._options.onDownloadProgress) {
6095
6124
  if (typeof s._options.onDownloadProgress != "function")
6096
6125
  throw new TypeError("The `onDownloadProgress` option must be a function");
6097
- if (!_i)
6126
+ if (!Mi)
6098
6127
  throw new Error("Streams are not supported in your environment. `ReadableStream` is missing.");
6099
6128
  return s._stream(x.clone(), s._options.onDownloadProgress);
6100
6129
  }
6101
6130
  return x;
6102
6131
  }, f = s._options.retry.methods.includes(s.request.method.toLowerCase()) ? s._retry(i) : i();
6103
- for (const [x, _] of Object.entries($i))
6132
+ for (const [x, S] of Object.entries(Ti))
6104
6133
  f[x] = async () => {
6105
- s.request.headers.set("accept", s.request.headers.get("accept") || _);
6134
+ s.request.headers.set("accept", s.request.headers.get("accept") || S);
6106
6135
  const J = (await f).clone();
6107
6136
  if (x === "json") {
6108
6137
  if (J.status === 204 || (await J.clone().arrayBuffer()).byteLength === 0)
@@ -6140,10 +6169,10 @@ class ht {
6140
6169
  try {
6141
6170
  return await e();
6142
6171
  } catch (a) {
6143
- const s = Math.min(this._calculateRetryDelay(a), kt);
6172
+ const s = Math.min(this._calculateRetryDelay(a), xt);
6144
6173
  if (this._retryCount < 1)
6145
6174
  throw a;
6146
- await Oi(s, { signal: this._options.signal });
6175
+ await ji(s, { signal: this._options.signal });
6147
6176
  for (const i of this._options.hooks.beforeRetry)
6148
6177
  if (await i({
6149
6178
  request: this.request,
@@ -6165,8 +6194,8 @@ class ht {
6165
6194
  if (i instanceof Response)
6166
6195
  return i;
6167
6196
  }
6168
- const e = ji(this.request, this._options), a = this.request;
6169
- return this.request = a.clone(), this._options.timeout === !1 ? this._options.fetch(a, e) : zi(a, e, this.abortController, this._options);
6197
+ const e = Hi(this.request, this._options), a = this.request;
6198
+ return this.request = a.clone(), this._options.timeout === !1 ? this._options.fetch(a, e) : Oi(a, e, this.abortController, this._options);
6170
6199
  }
6171
6200
  /* istanbul ignore next */
6172
6201
  _stream(e, a) {
@@ -6181,17 +6210,17 @@ class ht {
6181
6210
  const f = e.body.getReader();
6182
6211
  a && a({ percent: 0, transferredBytes: 0, totalBytes: s }, new Uint8Array());
6183
6212
  async function x() {
6184
- const { done: _, value: S } = await f.read();
6185
- if (_) {
6213
+ const { done: S, value: _ } = await f.read();
6214
+ if (S) {
6186
6215
  d.close();
6187
6216
  return;
6188
6217
  }
6189
6218
  if (a) {
6190
- i += S.byteLength;
6219
+ i += _.byteLength;
6191
6220
  const J = s === 0 ? 0 : i / s;
6192
- a({ percent: J, transferredBytes: i, totalBytes: s }, S);
6221
+ a({ percent: J, transferredBytes: i, totalBytes: s }, _);
6193
6222
  }
6194
- d.enqueue(S), await x();
6223
+ d.enqueue(_), await x();
6195
6224
  }
6196
6225
  await x();
6197
6226
  }
@@ -6203,12 +6232,12 @@ class ht {
6203
6232
  }
6204
6233
  }
6205
6234
  /*! MIT License © Sindre Sorhus */
6206
- const Mt = (c) => {
6207
- const e = (a, s) => ht.create(a, nt(c, s));
6235
+ const $t = (c) => {
6236
+ const e = (a, s) => bt.create(a, nt(c, s));
6208
6237
  for (const a of ga)
6209
- e[a] = (s, i) => ht.create(s, nt(c, i, { method: a }));
6210
- return e.create = (a) => Mt(nt(a)), e.extend = (a) => (typeof a == "function" && (a = a(c ?? {})), Mt(nt(c, a))), e.stop = ma, e;
6211
- }, Pi = Mt(), Hi = Pi.extend({
6238
+ e[a] = (s, i) => bt.create(s, nt(c, i, { method: a }));
6239
+ return e.create = (a) => $t(nt(a)), e.extend = (a) => (typeof a == "function" && (a = a(c ?? {})), $t(nt(c, a))), e.stop = ma, e;
6240
+ }, Bi = $t(), Ri = Bi.extend({
6212
6241
  hooks: {
6213
6242
  beforeRequest: [
6214
6243
  () => {
@@ -6216,17 +6245,17 @@ const Mt = (c) => {
6216
6245
  ]
6217
6246
  }
6218
6247
  });
6219
- async function Bi(c, e) {
6248
+ async function Vi(c, e) {
6220
6249
  const { onmessage: a, onclose: s, ...i } = e, d = async (f, x) => {
6221
- const { value: _, done: S } = await x.read();
6222
- S ? (f.close(), s == null || s()) : (a == null || a(_), f.enqueue(_), d(f, x));
6250
+ const { value: S, done: _ } = await x.read();
6251
+ _ ? (f.close(), s == null || s()) : (a == null || a(S), f.enqueue(S), d(f, x));
6223
6252
  };
6224
6253
  return i.body && typeof i.body == "object" && (i.body = JSON.stringify(i.body)), console.log("Fetching:", i), fetch(c, i).then((f) => {
6225
6254
  const x = f.body.getReader();
6226
6255
  return new ReadableStream({
6227
- start(S) {
6256
+ start(_) {
6228
6257
  d(
6229
- S,
6258
+ _,
6230
6259
  x
6231
6260
  );
6232
6261
  }
@@ -6237,11 +6266,11 @@ async function Bi(c, e) {
6237
6266
  }).text()
6238
6267
  );
6239
6268
  }
6240
- async function Ri(c, e) {
6269
+ async function Di(c, e) {
6241
6270
  const a = new FormData();
6242
6271
  for (let i = 0; i < e.length; i++)
6243
6272
  a.append("files", e[i]);
6244
- const s = await Hi.post(c, {
6273
+ const s = await Ri.post(c, {
6245
6274
  body: a
6246
6275
  });
6247
6276
  try {
@@ -6254,16 +6283,16 @@ async function Ri(c, e) {
6254
6283
  };
6255
6284
  }
6256
6285
  }
6257
- var Vi = Object.defineProperty, Di = Object.getOwnPropertyDescriptor, R = (c, e, a, s) => {
6258
- for (var i = s > 1 ? void 0 : s ? Di(e, a) : e, d = c.length - 1, f; d >= 0; d--)
6286
+ var Fi = Object.defineProperty, Ni = Object.getOwnPropertyDescriptor, R = (c, e, a, s) => {
6287
+ for (var i = s > 1 ? void 0 : s ? Ni(e, a) : e, d = c.length - 1, f; d >= 0; d--)
6259
6288
  (f = c[d]) && (i = (s ? f(e, a, i) : f(i)) || i);
6260
- return s && i && Vi(e, a, i), i;
6289
+ return s && i && Fi(e, a, i), i;
6261
6290
  };
6262
6291
  const Re = Ke.noConflict();
6263
6292
  Re.setLevel("info");
6264
- let j = class extends Q {
6293
+ let j = class extends ee {
6265
6294
  constructor() {
6266
- super(...arguments), this.store = new gt(this, p), this.displayLicense = !1, this.name = "ChatBot", this.orgId = "", this.botId = "", this.url = "ws://localhost:3070", this.logoUrl = "", this.logoSvg = `<svg width="34" height="34" viewBox="0 0 400 400" fill="none" xmlns="http://www.w3.org/2000/svg">
6295
+ super(...arguments), this.store = new pt(this, p), this.displayLicense = !1, this.name = "ChatBot", this.orgId = "", this.botId = "", this.url = "ws://localhost:3070", this.logoUrl = "", this.logoSvg = `<svg width="34" height="34" viewBox="0 0 400 400" fill="none" xmlns="http://www.w3.org/2000/svg">
6267
6296
  <g clip-path="url(#clip0_830_887)">
6268
6297
  <path d="M400 0H0V400H400V0Z" fill="#010617"/>
6269
6298
  <path d="M226.642 181.301C225.043 178.983 222.795 177.055 219.898 175.536C216.99 174.018 213.883 173.248 210.546 173.248C202.283 173.248 195.869 175.716 191.303 180.642C186.737 185.568 184.449 192.022 184.449 199.995C184.449 207.968 186.737 214.422 191.303 219.348C195.869 224.274 202.283 226.742 210.546 226.742C214.173 226.742 217.29 225.952 219.898 224.354C222.505 222.755 224.753 220.877 226.642 218.699L248.173 241.319C243.097 246.544 237.113 250.201 230.229 252.299C223.345 254.397 216.78 255.456 210.546 255.456C202.423 255.456 194.78 254.148 187.606 251.54C180.432 248.932 174.198 245.195 168.902 240.34C163.607 235.484 159.44 229.649 156.393 222.835C153.346 216.021 151.827 208.408 151.827 199.995C151.827 191.582 153.346 183.969 156.393 177.155C159.44 170.341 163.607 164.506 168.902 159.65C174.198 154.795 180.432 151.058 187.606 148.45C194.78 145.842 202.433 144.534 210.546 144.534C216.78 144.534 223.345 145.583 230.229 147.691C237.113 149.789 243.097 153.456 248.173 158.671L226.642 181.291V181.301Z" fill="white"/>
@@ -6273,7 +6302,7 @@ let j = class extends Q {
6273
6302
  <rect width="400" height="400" fill="white"/>
6274
6303
  </clipPath>
6275
6304
  </defs>
6276
- </svg>`, this.logoSvgGradient = `<svg width="28" height="28" viewBox="0 0 400 400" fill="none" xmlns="http://www.w3.org/2000/svg">
6305
+ </svg>`, this.closeSvg = '<svg viewBox="0 0 16 16" width="1.4em" height="1.4em"><path fill="currentColor" d="M2.146 2.854a.5.5 0 1 1 .708-.708L8 7.293l5.146-5.147a.5.5 0 0 1 .708.708L8.707 8l5.147 5.146a.5.5 0 0 1-.708.708L8 8.707l-5.146 5.147a.5.5 0 0 1-.708-.708L7.293 8z"></path></svg>', this.logoSvgGradient = `<svg width="28" height="28" viewBox="0 0 400 400" fill="none" xmlns="http://www.w3.org/2000/svg">
6277
6306
  <g clip-path="url(#clip0_830_884)">
6278
6307
  <path d="M400 0H0V400H400V0Z" fill="url(#paint0_linear_830_884)"/>
6279
6308
  <path d="M226.642 181.301C225.043 178.983 222.795 177.055 219.898 175.536C216.99 174.018 213.883 173.248 210.546 173.248C202.283 173.248 195.869 175.716 191.303 180.642C186.737 185.568 184.449 192.022 184.449 199.995C184.449 207.968 186.737 214.422 191.303 219.348C195.869 224.274 202.283 226.742 210.546 226.742C214.173 226.742 217.29 225.952 219.898 224.354C222.505 222.755 224.753 220.877 226.642 218.699L248.173 241.319C243.097 246.544 237.113 250.201 230.229 252.299C223.345 254.397 216.78 255.456 210.546 255.456C202.423 255.456 194.78 254.148 187.606 251.54C180.432 248.932 174.198 245.195 168.902 240.34C163.607 235.484 159.44 229.649 156.393 222.835C153.346 216.021 151.827 208.408 151.827 199.995C151.827 191.582 153.346 183.969 156.393 177.155C159.44 170.341 163.607 164.506 168.902 159.65C174.198 154.795 180.432 151.058 187.606 148.45C194.78 145.842 202.433 144.534 210.546 144.534C216.78 144.534 223.345 145.583 230.229 147.691C237.113 149.789 243.097 153.456 248.173 158.671L226.642 181.291V181.301Z"
@@ -6293,7 +6322,7 @@ let j = class extends Q {
6293
6322
  this._addMessageHandler(c);
6294
6323
  }, this.handleStateEvent = (c) => {
6295
6324
  this._stateEventHandler(c);
6296
- }, this.fetchStream = Bi;
6325
+ }, this.fetchStream = Vi;
6297
6326
  }
6298
6327
  /**
6299
6328
  * decodeStreamData
@@ -6326,9 +6355,14 @@ let j = class extends Q {
6326
6355
  }
6327
6356
  render() {
6328
6357
  return p.disabled && !this.alwaysOpen ? (Re.info("Bot is disabled until settings are loaded"), null) : g`
6329
- <div class="cb-wrapper" style="${p.open ? "display:flex" : "display:none"}">
6358
+ <div class="cb-wrapper" style="${p.open ? "display:flex" : "display:none"}" part="wrapper" exportparts="wrapper">
6330
6359
  <cb-header title="${this.name}" exportparts="header, header-logo, header-title, header-close"></cb-header>
6331
- <cb-message-list .messages=${p.messages} .actions=${p.actions} .form=${p.form} exportparts="bot-message-list, bot-message"></cb-message-list>
6360
+ <cb-message-list
6361
+ .messages=${p.messages}
6362
+ .actions=${p.actions}
6363
+ .form=${p.form}
6364
+ exportparts="bot-message-list, bot-message, cb-message, bot-message-content, user-message-content"
6365
+ ></cb-message-list>
6332
6366
  ${this.renderUserInput()} ${this.renderFeedbackDialog()}
6333
6367
  </div>
6334
6368
  <cb-anchor ?open=${p.open} exportparts="anchor"></cb-anchor>
@@ -6345,12 +6379,38 @@ let j = class extends Q {
6345
6379
  ?loading=${p.connecting}
6346
6380
  ?disabled=${p.connecting || p.form}
6347
6381
  ?enable-file-upload=${this.enableFileUpload}
6348
- exportparts="user-input, user-input-wrapper"
6382
+ exportparts="user-input, user-input-wrapper, user-input-base, user-input-textarea"
6349
6383
  ></cb-user-input>`;
6350
6384
  }
6351
6385
  connectedCallback() {
6352
- super.connectedCallback(), Re.info("connectedCallback"), addEventListener("c7o:bot:stateEvent", this.handleStateEvent), addEventListener("message:send", this.handleAddMessage), addEventListener("chatbot:toggle", this._chatbotToggleHandler), addEventListener("form:submit", this._formSubmitHandler);
6386
+ super.connectedCallback(), Re.info("connectedCallback"), this.initCssVariables(), addEventListener("c7o:bot:stateEvent", this.handleStateEvent), addEventListener("message:send", this.handleAddMessage), addEventListener("chatbot:toggle", this._chatbotToggleHandler), addEventListener("form:submit", this._formSubmitHandler);
6387
+ }
6388
+ extractCssVariable(c, e, a) {
6389
+ let s = c.getPropertyValue(e).trim();
6390
+ return s && s != "" ? s : a;
6391
+ }
6392
+ // Extract css variables that control the appearance of the chatbot
6393
+ initCssVariables() {
6394
+ let c = getComputedStyle(this);
6395
+ p.appearanceAnchorPopupPosition = this.extractCssVariable(c, "--enegelai-bot-anchor-popup-position", "top-end"), p.appearanceUserMessageAvatarPosition = this.extractCssVariable(c, "--enegelai-bot-user-message-avatar-position", "left");
6353
6396
  }
6397
+ /*
6398
+ private getPopupPlacement() {
6399
+ // Get the root element
6400
+ let pos: = 'top-end';
6401
+ const el = document.querySelector('enegelai-bot');
6402
+ if (el) {
6403
+ let style = getComputedStyle(el);
6404
+ let v = style.getPropertyValue('--enegelai-bot-anchor-popup-position').trim();
6405
+ if (v && v != '') {
6406
+ // @ts-ignore
6407
+ pos = v;
6408
+ }
6409
+ }
6410
+ return pos;
6411
+ }
6412
+
6413
+ */
6354
6414
  disconnectedCallback() {
6355
6415
  Re.info("disconnectedCallback"), super.disconnectedCallback(), window.removeEventListener("c7o:bot:stateEvent", this.handleStateEvent), window.removeEventListener("message:send", this.handleAddMessage), window.removeEventListener("chatbot:toggle", this._chatbotToggleHandler), window.removeEventListener("form:submit", this._formSubmitHandler);
6356
6416
  }
@@ -6366,7 +6426,7 @@ let j = class extends Q {
6366
6426
  _initSetting() {
6367
6427
  Re.info("_initSetting");
6368
6428
  const c = p.setting;
6369
- c.orgId = this.orgId, c.botId = this.botId, c.url = this.url, c.logoUrl = this.logoUrl, c.logoSvg = this.logoSvg, c.popupLogoSvg = this.popupLogoSvg, c.popupLogoUrl = this.popupLogoUrl, c.botIconSvg = this.botIconSvg, c.userIconSvg = this.userIconSvg, c.systemIconSvg = this.systemIconSvg, c.agentIconSvg = this.agentIconSvg, p.setSetting(c);
6429
+ c.orgId = this.orgId, c.botId = this.botId, c.url = this.url, c.logoUrl = this.logoUrl, c.logoSvg = this.logoSvg, c.closeSvg = this.closeSvg, c.popupLogoSvg = this.popupLogoSvg, c.popupLogoUrl = this.popupLogoUrl, c.botIconSvg = this.botIconSvg, c.userIconSvg = this.userIconSvg, c.systemIconSvg = this.systemIconSvg, c.agentIconSvg = this.agentIconSvg, p.setSetting(c);
6370
6430
  let e = {};
6371
6431
  try {
6372
6432
  e = JSON.parse(this.prefilledFormFields);
@@ -6474,7 +6534,7 @@ let j = class extends Q {
6474
6534
  }
6475
6535
  };
6476
6536
  if (p.addMessage(s), this.uploadFileUrl) {
6477
- const i = await Ri(this.uploadFileUrl, e.files);
6537
+ const i = await Di(this.uploadFileUrl, e.files);
6478
6538
  i.code === 0 && i.data && (s.isUploading = !1, s.data = {
6479
6539
  files: i.data
6480
6540
  }, p.updateMessage(s));
@@ -6499,7 +6559,7 @@ let j = class extends Q {
6499
6559
  (e = this._messageList) == null || e.scrollToBottom();
6500
6560
  }
6501
6561
  };
6502
- j.styles = Na;
6562
+ j.styles = Ua;
6503
6563
  R([
6504
6564
  v({ type: Boolean, attribute: "display-license" })
6505
6565
  ], j.prototype, "displayLicense", 2);
@@ -6521,6 +6581,9 @@ R([
6521
6581
  R([
6522
6582
  v({ type: String, attribute: "logo-svg" })
6523
6583
  ], j.prototype, "logoSvg", 2);
6584
+ R([
6585
+ v({ type: String, attribute: "close-svg" })
6586
+ ], j.prototype, "closeSvg", 2);
6524
6587
  R([
6525
6588
  v({ type: String, attribute: "popup-logo-svg" })
6526
6589
  ], j.prototype, "popupLogoSvg", 2);