@enegelai/bot-widget 1.3.0 → 1.4.0

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,7 +1,7 @@
1
- var sc = Object.defineProperty;
2
- var ic = (c, e, a) => e in c ? sc(c, e, { enumerable: !0, configurable: !0, writable: !0, value: a }) : c[e] = a;
3
- var I = (c, e, a) => (ic(c, typeof e != "symbol" ? e + "" : e, a), a);
4
- import { css as x, LitElement as ge, html as r, svg as re } from "lit";
1
+ var nc = Object.defineProperty;
2
+ var ic = (c, e, a) => e in c ? nc(c, e, { enumerable: !0, configurable: !0, writable: !0, value: a }) : c[e] = a;
3
+ var A = (c, e, a) => (ic(c, typeof e != "symbol" ? e + "" : e, a), a);
4
+ import { css as x, LitElement as ge, html as d, svg as de } from "lit";
5
5
  import { property as b, customElement as _, queryAll as lc, query as ee, eventOptions as Ue } from "lit/decorators.js";
6
6
  import { unsafeHTML as U } from "lit-html/directives/unsafe-html.js";
7
7
  import "@shoelace-style/shoelace/dist/themes/light.css";
@@ -42,20 +42,20 @@ const ue = class ue extends Event {
42
42
  super(ue.eventName, {
43
43
  cancelable: !1
44
44
  });
45
- I(this, "key");
46
- I(this, "state");
47
- I(this, "value");
45
+ A(this, "key");
46
+ A(this, "state");
47
+ A(this, "value");
48
48
  this.key = a, this.value = t, this.state = f;
49
49
  }
50
50
  };
51
- I(ue, "eventName", "lit-state-changed");
51
+ A(ue, "eventName", "lit-state-changed");
52
52
  let Z = ue;
53
53
  const uc = (c, e) => e !== c && (e === e || c === c);
54
54
  class fe extends EventTarget {
55
55
  constructor() {
56
56
  super();
57
57
  // hold a reference to hooks
58
- I(this, "hookMap", /* @__PURE__ */ new Map());
58
+ A(this, "hookMap", /* @__PURE__ */ new Map());
59
59
  this.constructor.finalize(), this.propertyMap && [...this.propertyMap].forEach(([a, t]) => {
60
60
  if (t.initialValue !== void 0) {
61
61
  const f = Ze(t.initialValue);
@@ -89,9 +89,9 @@ class fe extends EventTarget {
89
89
  get() {
90
90
  return this[t];
91
91
  },
92
- set(d) {
93
- const n = this[a];
94
- this[t] = d, o(d, n) === !0 && this.dispatchStateEvent(a, d, this);
92
+ set(r) {
93
+ const s = this[a];
94
+ this[t] = r, o(r, s) === !0 && this.dispatchStateEvent(a, r, this);
95
95
  },
96
96
  configurable: !0,
97
97
  enumerable: !0
@@ -116,8 +116,8 @@ class fe extends EventTarget {
116
116
  */
117
117
  subscribe(a, t, f) {
118
118
  t && !Array.isArray(t) && (t = [t]);
119
- const o = (d) => {
120
- (!t || t.includes(d.key)) && a(d.key, d.value, this);
119
+ const o = (r) => {
120
+ (!t || t.includes(r.key)) && a(r.key, r.value, this);
121
121
  };
122
122
  return this.addEventListener(Z.eventName, o, f), () => this.removeEventListener(Z.eventName, o);
123
123
  }
@@ -126,12 +126,12 @@ class fe extends EventTarget {
126
126
  }
127
127
  }
128
128
  // a map holding decorators definition.
129
- I(fe, "propertyMap"), I(fe, "properties"), I(fe, "finalized", !1);
129
+ A(fe, "propertyMap"), A(fe, "properties"), A(fe, "finalized", !1);
130
130
  class Ne {
131
131
  constructor(e, a, t) {
132
- I(this, "host");
133
- I(this, "state");
134
- I(this, "callback");
132
+ A(this, "host");
133
+ A(this, "state");
134
+ A(this, "callback");
135
135
  this.host = e, this.state = a, this.host.addController(this), this.callback = t || (() => this.host.requestUpdate());
136
136
  }
137
137
  hostConnected() {
@@ -149,10 +149,10 @@ class Ne {
149
149
  const We = ({ finisher: c, descriptor: e }) => (a, t) => {
150
150
  var f;
151
151
  if (t === void 0) {
152
- const o = (f = a.originalKey) !== null && f !== void 0 ? f : a.key, d = e != null ? { kind: "method", placement: "prototype", key: o, descriptor: e(a.key) } : { ...a, key: o };
153
- return c != null && (d.finisher = function(n) {
154
- c(n, o);
155
- }), d;
152
+ const o = (f = a.originalKey) !== null && f !== void 0 ? f : a.key, r = e != null ? { kind: "method", placement: "prototype", key: o, descriptor: e(a.key) } : { ...a, key: o };
153
+ return c != null && (r.finisher = function(s) {
154
+ c(s, o);
155
+ }), r;
156
156
  }
157
157
  {
158
158
  const o = a.constructor;
@@ -189,15 +189,15 @@ function V(c) {
189
189
  const t = Object.getOwnPropertyDescriptor(e.prototype, a);
190
190
  if (!t)
191
191
  throw new Error("@local-storage decorator need to be called after @property");
192
- const f = `${(c == null ? void 0 : c.prefix) || ""}_${(c == null ? void 0 : c.key) || String(a)}`, o = e.propertyMap.get(a), d = o == null ? void 0 : o.type;
192
+ const f = `${(c == null ? void 0 : c.prefix) || ""}_${(c == null ? void 0 : c.key) || String(a)}`, o = e.propertyMap.get(a), r = o == null ? void 0 : o.type;
193
193
  if (o) {
194
194
  const C = o.initialValue;
195
- o.initialValue = () => gc(localStorage.getItem(f), d) ?? Ze(C), e.propertyMap.set(a, { ...o, ...c });
195
+ o.initialValue = () => gc(localStorage.getItem(f), r) ?? Ze(C), e.propertyMap.set(a, { ...o, ...c });
196
196
  }
197
- const n = t == null ? void 0 : t.set, k = {
197
+ const s = t == null ? void 0 : t.set, k = {
198
198
  ...t,
199
199
  set: function(C) {
200
- C !== void 0 && localStorage.setItem(f, d === Object || d === Array ? JSON.stringify(C) : C), n && n.call(this, C);
200
+ C !== void 0 && localStorage.setItem(f, r === Object || r === Array ? JSON.stringify(C) : C), s && s.call(this, C);
201
201
  }
202
202
  };
203
203
  Object.defineProperty(e.prototype, a, k);
@@ -208,7 +208,7 @@ var yc = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : t
208
208
  function vc(c) {
209
209
  return c && c.__esModule && Object.prototype.hasOwnProperty.call(c, "default") ? c.default : c;
210
210
  }
211
- var Je = { exports: {} };
211
+ var Ke = { exports: {} };
212
212
  (function(c) {
213
213
  (function(e, a) {
214
214
  c.exports ? c.exports = a() : e.log = a();
@@ -221,8 +221,8 @@ var Je = { exports: {} };
221
221
  "warn",
222
222
  "error"
223
223
  ];
224
- function o(p, m) {
225
- var w = p[m];
224
+ function o(p, y) {
225
+ var w = p[y];
226
226
  if (typeof w.bind == "function")
227
227
  return w.bind(p);
228
228
  try {
@@ -233,57 +233,57 @@ var Je = { exports: {} };
233
233
  };
234
234
  }
235
235
  }
236
- function d() {
236
+ function r() {
237
237
  console.log && (console.log.apply ? console.log.apply(console, arguments) : Function.prototype.apply.apply(console.log, [console, arguments])), console.trace && console.trace();
238
238
  }
239
- function n(p) {
240
- return p === "debug" && (p = "log"), typeof console === a ? !1 : p === "trace" && t ? d : console[p] !== void 0 ? o(console, p) : console.log !== void 0 ? o(console, "log") : e;
239
+ function s(p) {
240
+ return p === "debug" && (p = "log"), typeof console === a ? !1 : p === "trace" && t ? r : console[p] !== void 0 ? o(console, p) : console.log !== void 0 ? o(console, "log") : e;
241
241
  }
242
- function g(p, m) {
242
+ function m(p, y) {
243
243
  for (var w = 0; w < f.length; w++) {
244
244
  var l = f[w];
245
- this[l] = w < p ? e : this.methodFactory(l, p, m);
245
+ this[l] = w < p ? e : this.methodFactory(l, p, y);
246
246
  }
247
247
  this.log = this.debug;
248
248
  }
249
- function k(p, m, w) {
249
+ function k(p, y, w) {
250
250
  return function() {
251
- typeof console !== a && (g.call(this, m, w), this[p].apply(this, arguments));
251
+ typeof console !== a && (m.call(this, y, w), this[p].apply(this, arguments));
252
252
  };
253
253
  }
254
- function C(p, m, w) {
255
- return n(p) || k.apply(this, arguments);
254
+ function C(p, y, w) {
255
+ return s(p) || k.apply(this, arguments);
256
256
  }
257
- function we(p, m, w) {
258
- var l = this, Pe;
259
- m = m ?? "WARN";
260
- var L = "loglevel";
261
- typeof p == "string" ? L += ":" + p : typeof p == "symbol" && (L = void 0);
262
- function rc(i) {
257
+ function we(p, y, w) {
258
+ var l = this, He;
259
+ y = y ?? "WARN";
260
+ var P = "loglevel";
261
+ typeof p == "string" ? P += ":" + p : typeof p == "symbol" && (P = void 0);
262
+ function dc(i) {
263
263
  var F = (f[i] || "silent").toUpperCase();
264
- if (!(typeof window === a || !L)) {
264
+ if (!(typeof window === a || !P)) {
265
265
  try {
266
- window.localStorage[L] = F;
266
+ window.localStorage[P] = F;
267
267
  return;
268
268
  } catch {
269
269
  }
270
270
  try {
271
- window.document.cookie = encodeURIComponent(L) + "=" + F + ";";
271
+ window.document.cookie = encodeURIComponent(P) + "=" + F + ";";
272
272
  } catch {
273
273
  }
274
274
  }
275
275
  }
276
276
  function Ee() {
277
277
  var i;
278
- if (!(typeof window === a || !L)) {
278
+ if (!(typeof window === a || !P)) {
279
279
  try {
280
- i = window.localStorage[L];
280
+ i = window.localStorage[P];
281
281
  } catch {
282
282
  }
283
283
  if (typeof i === a)
284
284
  try {
285
285
  var F = window.document.cookie, ce = F.indexOf(
286
- encodeURIComponent(L) + "="
286
+ encodeURIComponent(P) + "="
287
287
  );
288
288
  ce !== -1 && (i = /^([^;]+)/.exec(F.slice(ce))[1]);
289
289
  } catch {
@@ -292,14 +292,14 @@ var Je = { exports: {} };
292
292
  }
293
293
  }
294
294
  function bc() {
295
- if (!(typeof window === a || !L)) {
295
+ if (!(typeof window === a || !P)) {
296
296
  try {
297
- window.localStorage.removeItem(L);
297
+ window.localStorage.removeItem(P);
298
298
  return;
299
299
  } catch {
300
300
  }
301
301
  try {
302
- window.document.cookie = encodeURIComponent(L) + "=; expires=Thu, 01 Jan 1970 00:00:00 UTC";
302
+ window.document.cookie = encodeURIComponent(P) + "=; expires=Thu, 01 Jan 1970 00:00:00 UTC";
303
303
  } catch {
304
304
  }
305
305
  }
@@ -312,45 +312,45 @@ var Je = { exports: {} };
312
312
  ERROR: 4,
313
313
  SILENT: 5
314
314
  }, l.methodFactory = w || C, l.getLevel = function() {
315
- return Pe;
315
+ return He;
316
316
  }, l.setLevel = function(i, F) {
317
317
  if (typeof i == "string" && l.levels[i.toUpperCase()] !== void 0 && (i = l.levels[i.toUpperCase()]), typeof i == "number" && i >= 0 && i <= l.levels.SILENT) {
318
- if (Pe = i, F !== !1 && rc(i), g.call(l, i, p), typeof console === a && i < l.levels.SILENT)
318
+ if (He = i, F !== !1 && dc(i), m.call(l, i, p), typeof console === a && i < l.levels.SILENT)
319
319
  return "No console available for logging";
320
320
  } else
321
321
  throw "log.setLevel() called with invalid level: " + i;
322
322
  }, l.setDefaultLevel = function(i) {
323
- m = i, Ee() || l.setLevel(i, !1);
323
+ y = i, Ee() || l.setLevel(i, !1);
324
324
  }, l.resetLevel = function() {
325
- l.setLevel(m, !1), bc();
325
+ l.setLevel(y, !1), bc();
326
326
  }, l.enableAll = function(i) {
327
327
  l.setLevel(l.levels.TRACE, i);
328
328
  }, l.disableAll = function(i) {
329
329
  l.setLevel(l.levels.SILENT, i);
330
330
  };
331
331
  var ke = Ee();
332
- ke == null && (ke = m), l.setLevel(ke, !1);
332
+ ke == null && (ke = y), l.setLevel(ke, !1);
333
333
  }
334
334
  var O = new we(), xe = {};
335
- O.getLogger = function(m) {
336
- if (typeof m != "symbol" && typeof m != "string" || m === "")
335
+ O.getLogger = function(y) {
336
+ if (typeof y != "symbol" && typeof y != "string" || y === "")
337
337
  throw new TypeError("You must supply a name when creating a logger.");
338
- var w = xe[m];
339
- return w || (w = xe[m] = new we(
340
- m,
338
+ var w = xe[y];
339
+ return w || (w = xe[y] = new we(
340
+ y,
341
341
  O.getLevel(),
342
342
  O.methodFactory
343
343
  )), w;
344
344
  };
345
- var dc = typeof window !== a ? window.log : void 0;
345
+ var rc = typeof window !== a ? window.log : void 0;
346
346
  return O.noConflict = function() {
347
- return typeof window !== a && window.log === O && (window.log = dc), O;
347
+ return typeof window !== a && window.log === O && (window.log = rc), O;
348
348
  }, O.getLoggers = function() {
349
349
  return xe;
350
350
  }, O.default = O, O;
351
351
  });
352
- })(Je);
353
- var wc = Je.exports;
352
+ })(Ke);
353
+ var wc = Ke.exports;
354
354
  const me = /* @__PURE__ */ vc(wc), xc = x`
355
355
  :host {
356
356
  }
@@ -418,7 +418,7 @@ const me = /* @__PURE__ */ vc(wc), xc = x`
418
418
  border-radius: 0;
419
419
  }
420
420
  }
421
- `, T = x`
421
+ `, R = x`
422
422
  :host {
423
423
  --primary-color: var(--sl-color-primary-600);
424
424
  }
@@ -485,8 +485,8 @@ const me = /* @__PURE__ */ vc(wc), xc = x`
485
485
  .text-button:hover {
486
486
  text-decoration: underline;
487
487
  }
488
- `, Ke = x`
489
- ${T}
488
+ `, Je = x`
489
+ ${R}
490
490
 
491
491
  :host {
492
492
  display: inline-flex;
@@ -508,9 +508,9 @@ const me = /* @__PURE__ */ vc(wc), xc = x`
508
508
  color: white;
509
509
  }
510
510
  `;
511
- var kc = Object.defineProperty, _c = Object.getOwnPropertyDescriptor, Ie = (c, e, a, t) => {
512
- for (var f = t > 1 ? void 0 : t ? _c(e, a) : e, o = c.length - 1, d; o >= 0; o--)
513
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
511
+ var kc = Object.defineProperty, _c = Object.getOwnPropertyDescriptor, Ae = (c, e, a, t) => {
512
+ for (var f = t > 1 ? void 0 : t ? _c(e, a) : e, o = c.length - 1, r; o >= 0; o--)
513
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
514
514
  return t && f && kc(e, a, f), f;
515
515
  };
516
516
  let G = class extends ge {
@@ -518,28 +518,28 @@ let G = class extends ge {
518
518
  super(...arguments), this.color = "primary", this.svg = "";
519
519
  }
520
520
  render() {
521
- return r`<span class="cb-icon" part="base">${U(this.svg)}</span>`;
521
+ return d`<span class="cb-icon" part="base">${U(this.svg)}</span>`;
522
522
  }
523
523
  };
524
- G.styles = Ke;
525
- Ie([
524
+ G.styles = Je;
525
+ Ae([
526
526
  b({ type: String })
527
527
  ], G.prototype, "color", 2);
528
- Ie([
528
+ Ae([
529
529
  b({ type: String })
530
530
  ], G.prototype, "svg", 2);
531
- G = Ie([
531
+ G = Ae([
532
532
  _("cb-icon")
533
533
  ], G);
534
534
  let $c = (c) => crypto.getRandomValues(new Uint8Array(c)), Cc = (c, e, a) => {
535
535
  let t = (2 << Math.log(c.length - 1) / Math.LN2) - 1, f = -~(1.6 * t * e / c.length);
536
536
  return (o = e) => {
537
- let d = "";
537
+ let r = "";
538
538
  for (; ; ) {
539
- let n = a(f), g = f;
540
- for (; g--; )
541
- if (d += c[n[g] & t] || "", d.length === o)
542
- return d;
539
+ let s = a(f), m = f;
540
+ for (; m--; )
541
+ if (r += c[s[m] & t] || "", r.length === o)
542
+ return r;
543
543
  }
544
544
  };
545
545
  }, jc = (c, e = 21) => Cc(c, e, $c);
@@ -558,7 +558,7 @@ function Mc(c) {
558
558
  }
559
559
  });
560
560
  }
561
- function Ac(c = !0) {
561
+ function Ic(c = !0) {
562
562
  return new Promise((e) => {
563
563
  const a = document.createElement("input");
564
564
  a.type = "file", c && (a.multiple = !0), a.style.display = "none", a.addEventListener("change", () => {
@@ -569,7 +569,7 @@ function Ac(c = !0) {
569
569
  }
570
570
  const $ = me.noConflict();
571
571
  $.setLevel("info");
572
- class Ic {
572
+ class Ac {
573
573
  constructor(e = {}) {
574
574
  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.onMessage = (e == null ? void 0 : e.onMessage) || null, this.queue = [], this.pause = (a) => new Promise((t) => setTimeout(t, a)), $.info(`WSC: Created, url: ${this.url}`);
575
575
  }
@@ -587,14 +587,14 @@ class Ic {
587
587
  let o = (f == null ? void 0 : f.data) || null;
588
588
  if (!o)
589
589
  return;
590
- let d = null;
590
+ let r = null;
591
591
  try {
592
- d = JSON.parse(o);
592
+ r = JSON.parse(o);
593
593
  } catch {
594
594
  $.error(`Failed to parse message: ${o}`);
595
595
  return;
596
596
  }
597
- (d == null ? void 0 : d.type) === "connected" && ($.info(`WS[${this.id}] Connected`), clearTimeout(t), this.connected = !0, this.sendQueuedMessages()), this.handleWscMessage(d);
597
+ (r == null ? void 0 : r.type) === "connected" && ($.info(`WS[${this.id}] Connected`), clearTimeout(t), this.connected = !0, this.sendQueuedMessages()), this.handleWscMessage(r);
598
598
  }, this._ws.onerror = (f) => {
599
599
  $.error("WSC: Socket error"), clearTimeout(t), this.connected = !1, this._ws = null;
600
600
  }, this._ws.onclose = (f) => {
@@ -685,7 +685,7 @@ function q(c) {
685
685
  return arguments.length === 0 || h(a) ? e : c.apply(this, arguments);
686
686
  };
687
687
  }
688
- function P(c) {
688
+ function H(c) {
689
689
  return function e(a, t) {
690
690
  switch (arguments.length) {
691
691
  case 0:
@@ -709,24 +709,24 @@ function Oc(c) {
709
709
  case 0:
710
710
  return e;
711
711
  case 1:
712
- return h(a) ? e : P(function(o, d) {
713
- return c(a, o, d);
712
+ return h(a) ? e : H(function(o, r) {
713
+ return c(a, o, r);
714
714
  });
715
715
  case 2:
716
- return h(a) && h(t) ? e : h(a) ? P(function(o, d) {
717
- return c(o, t, d);
718
- }) : h(t) ? P(function(o, d) {
719
- return c(a, o, d);
716
+ return h(a) && h(t) ? e : h(a) ? H(function(o, r) {
717
+ return c(o, t, r);
718
+ }) : h(t) ? H(function(o, r) {
719
+ return c(a, o, r);
720
720
  }) : q(function(o) {
721
721
  return c(a, t, o);
722
722
  });
723
723
  default:
724
- return h(a) && h(t) && h(f) ? e : h(a) && h(t) ? P(function(o, d) {
725
- return c(o, d, f);
726
- }) : h(a) && h(f) ? P(function(o, d) {
727
- return c(o, t, d);
728
- }) : h(t) && h(f) ? P(function(o, d) {
729
- return c(a, o, d);
724
+ return h(a) && h(t) && h(f) ? e : h(a) && h(t) ? H(function(o, r) {
725
+ return c(o, r, f);
726
+ }) : h(a) && h(f) ? H(function(o, r) {
727
+ return c(o, t, r);
728
+ }) : h(t) && h(f) ? H(function(o, r) {
729
+ return c(a, o, r);
730
730
  }) : h(a) ? q(function(o) {
731
731
  return c(o, t, f);
732
732
  }) : h(t) ? q(function(o) {
@@ -737,56 +737,56 @@ function Oc(c) {
737
737
  }
738
738
  };
739
739
  }
740
- const Lc = Number.isInteger || function(e) {
740
+ const Pc = Number.isInteger || function(e) {
741
741
  return e << 0 === e;
742
742
  };
743
- function Hc(c) {
743
+ function Lc(c) {
744
744
  return Object.prototype.toString.call(c) === "[object String]";
745
745
  }
746
- var Pc = /* @__PURE__ */ P(function(e, a) {
746
+ var Hc = /* @__PURE__ */ H(function(e, a) {
747
747
  var t = e < 0 ? a.length + e : e;
748
- return Hc(a) ? a.charAt(t) : a[t];
748
+ return Lc(a) ? a.charAt(t) : a[t];
749
749
  });
750
- const Ec = Pc;
751
- var zc = /* @__PURE__ */ P(function(e, a) {
750
+ const Ec = Hc;
751
+ var zc = /* @__PURE__ */ H(function(e, a) {
752
752
  return a == null || a !== a ? e : a;
753
753
  });
754
- const Tc = zc;
755
- var Bc = /* @__PURE__ */ P(function(e, a) {
754
+ const Rc = zc;
755
+ var Tc = /* @__PURE__ */ H(function(e, a) {
756
756
  return e.map(function(t) {
757
- for (var f = a, o = 0, d; o < t.length; ) {
757
+ for (var f = a, o = 0, r; o < t.length; ) {
758
758
  if (f == null)
759
759
  return;
760
- d = t[o], f = Lc(d) ? Ec(d, f) : f[d], o += 1;
760
+ r = t[o], f = Pc(r) ? Ec(r, f) : f[r], o += 1;
761
761
  }
762
762
  return f;
763
763
  });
764
764
  });
765
- const Rc = Bc;
766
- var Vc = /* @__PURE__ */ P(function(e, a) {
767
- return Rc([e], a)[0];
765
+ const Bc = Tc;
766
+ var Vc = /* @__PURE__ */ H(function(e, a) {
767
+ return Bc([e], a)[0];
768
768
  });
769
769
  const Dc = Vc;
770
770
  var Fc = /* @__PURE__ */ Oc(function(e, a, t) {
771
- return Tc(e, Dc(a, t));
771
+ return Rc(e, Dc(a, t));
772
772
  });
773
773
  const _e = Fc, qc = "fffbd0c40003a861a6f64deb05ce8fbd1dc1ee6979000bf3230f3195138b950cbe3649439256307747d31c26065d09cfae70d799f0a043c6a90008c0101188082314680d008619c9079b61dc806a921a220095277a60d4131e44143d53814e10f4d06ba6491eb478900a8d59016632a23e0fa358875c770146cc650c1c499dcb9b0965d7500106c321427219428febbdafb2b5d76979a75ae40018d025f96f71bad4b0257666051808e5b74c34bf2db9660bb0e24b2a35886616f617013a24104242304600910b1130dc7b4e81750bb1216e880432ac0d75b0a2a1834f45e8e9a279a9c6c22cc9a7e3ac01cc5335e8c0d97180c960bad7998ce9ac025a2f1a0c888e02c46508045a96a20a60c91980100828a917425f96ddc64bc2ea19146c50b00bde68319005d85d10e462314ae197f0b48c74bfe986ced9dac3a9bbfad7e8f7ac2a525253c6e36cad4dd7c20e2ec4842dba61cbf30f0f7d628635005a66e63ec63560f22a48c694034a695617e603c12c05077310c0923018053379a48d1e921e409b28546c46619d8fa6c9b019ea20762d318e34c6291699d98662a61861204fda2a7933d57c1d023391f8605262a1598449c1ca332e084cb25a3198ac94666361b99f05c67c1aba0151b18d456ec8e0b4c667924153ba632409114cc587c7867ca8c047dcd7a834bc8d2a033a141df48ab82a803bd1a8651a215e356c6161b062114cb841dd89589b05f0d10ad255c4d70d8ad245e4abcd6b33fca8d6af5cc3db8d9244511ab2206a56c885690ad12cc1ba16308528d539daa40b22baf35eb61a7044a988132e926b754d82ea8ca85199ad5c42c0d62d35eb8d7301d56ef5b26c451748198c2a22c319b24ab67a246b186c8af0d54354c0957c342d9a2a4d7b3245e585c4d7254e107501450bb46abbfa38b2331996d9bae08953352c48af43d5c7b08b6572a44e0b11775fd8cbb2b0b0343230c6c5add2ca5ac8d549765977ff78e59659ca49adde749c6789409753bcff43d1a8d46a532da5a5a5a5a5a5a5a6a6a6a6a6a6a6a6a6ab671c71c71c6ae4141414140a0a0a0a0c2b06e0b039c1829859998b165991a5d2aa598e0a714183727471921e5721a1037a9c2fb7a1b9c0dc99c6ab19b821219de39219b82a521908908987d2ab1aab194159219cb31211fffbd2c42383f4bda0d20ffba7c624b3dd01eee938b82f149f14b82951c14d290908c90d294c90a598b0948572ce584a434a54a52b4a42c3829592199219219a52921160908d295294b1c79b70dc9b72dc9b70dc15b71e6dc37058e3cdb8e34db9e3cadb82c37056dc95f1e7c6f1e58e3cadb8f2c4845721f96242f2c485e7214865721f962422c484721c845890cb121f9c872116242f2b908e4390bfcae432b908ae43f390e432c486721c85e5890cae432b90ce42908b121f9c8721962432c484721c865890ce4290bcae432b90bcae43390a432c485e58908e4290bcb121f95c86721c865890cae432b90cae42ff390e422b90cae422b90fcb121795c865721795c86721487e721c87e58908ae422b90bcb12195c845721796242f2c48658908ae43ff390e43fff390e422c4865890cb121ff9c872196243f2b90bcae42fff2c48458908b12116243f2b90ffcae43fff2c485e5890bfffcae422c485fe5721796243f2b90bfcae42ffff2b90ffcae432c48460a40a6618626a61ce3d466883d6645657458106350e2d6321a39532150c231a421532413d3399952b690e8430cc534d4ad0638ad993418742c24072f7385897cae5e348120397e5e348521397e5e2b734cd8364b06c160d93364d82c0ea6838ea63a0e863a8e9e581d4ca0283cd5d284b050795942650143e6e1c1b87058706e5c95b9370e4dcb92c382b706e1c15d22c522ba7e574cae9f9d2a458a474a995d32c52ff2ba4574cb148b14bfcb14cb148ae99629795d22c532c533a74cae995d2f3a74ce9533a74cb148e9d2f3a74ce9d22ba474e99d2a458a674a99d3a65748ae9f9d2a474a91629962995d23a748e9522c53f3a74bce9d3f2ba65748afa9f5ea57d4b1d3cafa963a163a7963a163a1f5ebfe57d3fcfa742bea7d7a15f42bea7d7a1f5e9e7d3af963a9f4ea57d4fa752c74f2c75f2c743ebd3fcafaf963a7ff963a79f4e9fe57d7ce9d22c532ba474a91d3a674a97962996297f9d2a658a458a658a458a4574cae916299d2a474a995d22c522c533a54bcae915d32c522c52f3a548ae99629795d3f30c6831b320f483c329501f8331a98f233a001f9342646273295483d326307f03331098c307e52ae3189883d3186475630e704da30e744db320f0627329501f831040411307e4fffbd2c42383f3fdacd40ff6b68668b3dc81eeed7841031044a54318984112a8c4e641e83f26208082260fc0822560fc183f041e183f00fc183f20fc983f20fc983f20fc95896e60bf863460bf86365805f8c17e0c68ac31b2b5f8f1bc68d7fc68d7f5fcaf1b35f97e35f97e2c2fc585fcb0bf9e36bf9617e2b5f8d7f5f8ad7f2c2fc6bfafe56bf9e34bf79617f3c6f1bf2b5fcb0bf9afcbf95afc585f8d7e5fcb0bf611fc419f8f08fe7833f1e0cfcf847f308fe7833f1f067e3c19f9067e308fe7c23f8c23f9067e40ff3f8067e20cfc047f00cfc611fc81fe3f207f9fc033f211fcc0ff1f903fc7e423f803fcfe423f903fcfe00ff3f8833f011fc847f211fc047f303fc7e211fc01fe3f211fc033f011fc7067e40ff3f908fe023f808fe00ff1f903fcfe019f803fc7e419f808fe019f9067e40ff1f9067e211fc01fe3f3c19f8e0cfcc23f9067e40ff3f8067e023f808fe60cfcc19f8c19f9847f211fc047f011fc033f1067e60cfcf833f25808830881d435e33e33263062346d46d31d427b31d41d4346d3c633201d5308827a308846d351212e32267a39ea7a34b92f3221d537552f32252e2b4b8dd5c80c88c84e7a4bcb0ea9ba9e315a5e697baa644cf473da5e58220c894bcb0449a5e449612ff2c110584bcb0447991044191244160892b4bfcc88224ac882b2a4d0a114ca8114c44114ac442c089e562279588856c458633e362f3e362362623e3e3f2be23e3e32b633e263f2b88fffff2c44f95c47f96227ce2224e2620b11071310713105889389882c44f95c41c44496220ae23cae20e2627cb1127111257105889f2c449c4c416220ae24e2224e2620ae24b1105713e588838988389892c44f9c44416224e2220ae20e2223cae27cae23ce2220e2620b1105711e5712571271111e57127131257127111271313fe713125712588938988388892c4479c4c41c44416224ae24e2220ae20e2620b11058882c44ffff95c4795c4ff95c415c416220ae20ae20b11271310571271313e58882c44f95c49c4c4ff95c416224e2627fce2224e2220e2220ae20b111e57107111071111fe5888ff389882c03a18838cc99ca16b996b8501ad09db99db86c161e34cb0c730c6641d4c664f7cc570e54c570570cb08734d2b4b08ac360cb5c284c86c574c57428fffbd2c41e03f239a2e40f7370c65fb39cc1eeed980c364364c360730c364edcc360364db2d936c734f9bcd3e6b60db0d82c734db3cd36cb60adb27068399d732588319d20e7068399d20de5850f9d75405850796140575c3535335252353c32c611e1291a9e11614cd4d4cf0d4cf0948e8684e8684b14074140574058a12c509d0d09d0d09d0509d0501d050796363fcaf64af67ffcb1b257b1fe58d8f2b74375742b742c3a9baba15ba161d0dd1d4add0b0e9e6eaea56ea56ea5874374752c5096280e8680b14057405743e57407414058a12ba12ba02c50f96280b141e58a12ba12c5096280add0dd1d0dd1d0dd5d3cb0ea6eaea6e8ea58752b7537574374742b74374752b752c3a95ba15ba9baba1ba3a161d0dd1d4b0ea58742c3a7ffff96367ffffffffffffffffffffffcb0e856ebe5874f2c3a961d4dd1d7fcadd4b0e9e6e8ea58752b752c3af961d4add3cb0e86e8ebfe6e8ea587537474f2c3a161d7cdd5d4dd1d0dd5d4add3cc388588c9e8220c4b91b4c989388c58898cc5b4740c2a48c8c58c38ccb8898cc9ec220cc84c80c4b84bcc224754d4491b4c62988c63588ce2b88d2e224d2e224b0449f8f3d1a5c9719104499124415a5e6971106973aa58750d2e220d2e220d898cf8d8cd8d8cd898cd8d88ad8cd898cd8988b1c7e586336363f2c711b1311b1319618cd8d8cb0c6586236262363632c319618ccb8b8cbcbcb05c565c582e32e2e32f2f32f2e32f2f32f2f32f2f2c1796220ae24ae20b113e71313fe71111e5888388892b882c449b1b115b11b1311b13116188d898fcb0c66c6c45862363632b632b63ff2c319b1b1796224ae24b111e711125711e5713e5713e58882b882c441c4c4f9c4c4ff9c4c4f9c44495c49c4c416224ae24e2224e2627fcae20b1105711e5711fe7111071111fe57125713e57106c6c46c6c45863f2c3195b115b19b131796188ad8bcd8988b0c45862363632c319b1b19b131f9618bcad8fcd898cad8bcb112571257125888f2c44ff95c495c4ff95c47f96220e2624b11258882c441c444ffff96224b112571257105711e588838989f2c44d3045045310b0a932632e232630623562062316226236620e32c1b198850229885919194a88598220e81fc431160623589e23588622b18cde2988de3788c63588fefffbd2c42083f3559ee80f774bc682b4dcc1eee9782388c6278cb0b1161623388e32b588ac62398d633188632c0c46318c66319c46710c66310c66b1ac66318c46310c46310c46710c6563118c431f98c63199c63118c631960e3f318862f2c0c7e6310c45818cb031960622bc678f1163196319e3c658c478b1163179e2c658c65788f1623c58cb188f1622bc678b115e33c788f1623c58caf195e32bc5e71221c5885710e24438914ae29c58a71621c48a588a5714b110e2c438910e245f38b13ce2442b8a71621c58a5889e5714ae295c42c442b8a5713cae29c48858885714b110e24538910af115e22bc658c478b17f95e33c588af1ff9e2c678b19e2c678f1163179e2c478b1ff95e3f2c62f3c78fcb18bcaf196317f95e22bc7e5788f163f2c632bc5fe58c678f195e22c62f3c78bfcaf1163196317f95e32c622c633c58caf11e3c4578caf1f95e32c633c78bfcf1622c632c633c588b188af19e3c5e58c658c678f11e3c678f17ff96319829829986109a99a6b1319ef03a19ef0cc99150cc195d8cc99a683a18730f598ca89e99a615d995d2819fbecc9d755d95c54698a626980d26559dc71520c68357471520c6cc33075d8ea63a0ea68345468320e63a0e875d20c683a0c63aa0fe5841cd98664b0831a0e8318ea3a95a0e563a160752c20e63a8e86838e858418b03a160753148523309353148c22b14cb02918a42918a629160522b14cc5314cfaf52bea7d7a163a963a1f4ebe7d7a95f53ebd4faf43ebd0afa795f53ebd4afa963a1f5e87d3a963a15f43e9d0afa79f4e858e858e858ea57d0afa963a9f4ea7d7a9f4ea7d3a9f4e857d0afaff9f4e9fe7d3af95f52be858e857d4faf53ebd0faf53ebd4afa1f5e857d4b1d0afa9f5ea7d3a7963a15f43e9d0faf52be87d3a163a163af95f52be858ea57d4faf5f2bea58ebe58e87d7a15f42c742bea58ebe57d7ffcfaf52be9e7d7af95f5ffff2c75ff2be857d7ffcb1d0faf52c742c742c753e9d4afa95f52bea57d3cb1d4afa95f52c742bea57d0afaff963a95f43e9d0afa7f95f53ebd7fcfa753ebd3cafa15f42c743ebd4afaf95f5f2c752be857d7fcb1d5508000160382b0e0d954f0d94654deb7acc397acce7d10dea4f0d4b2c4cb02c4d311a0ad3134c0aa34c4ef33b8ab3059193460b03fffbd2c41a01f0c5a2f0aeeb34c619359dc1dde6682c04b32403834f43832403932443930e03932403932413c3240392c070648072561c9870489a7a48161c1b972587258726e5c9b87265e51ca2c65cb9cb2e65fe1cb94565ce59634a94ad21a44a584869529a4485694ad216129a54865cb1972e72e51962c65cb1972c565cb05ccbcb32e5ccb162b2c56b79acb1acb1aeb9acb1aeb9acb1aeb15ac6bae56b15ac56b15ca72485894e590e490b1295ca5894ae52b90ae539252c49e724a5897ce494b121cb2f9cb21cb29cb21c9215ca5890e497ce597cae42c4a57215c85894ae42b97cf9e4f9e3cb1c15f1e57c796393e38ff2be0f9e7caf92be0f8e4af92be0b1cff96392be0f9e0b1c15f058e0b1c796382c71e7cf3e7c7257c95f258e4b1c95f1e58e0af92be4b1c1639f2be7ce493cb127f9c9215c9e5721c9215cbfe72ca5893fcb1279c921cb29cb2f9cb29cb21cb29cb295c85890ae42b90ae42b93cb12795c857298701c1609034f2413901eb3094683091733344d033e0d132acaa34c4ee30957434c1313244382b398d3c4f0ace730e13d34f53d37ac3937ac3830e4382c07261c870648a786ca27a580e4ce244e44e4ace4ce0e4ce240ce240b072723226727058382b90339392b382b382c1c99c1c9c89c960e0ce4e0ce4e0b07067273e6727258392b38ff2c1c19c1c960e4b070670705838f2c1c19c1c99c9c19c1c159c159c960e4ace3ce44e0ce4e3fcce0e0b07058382b38339382b3933839396439252c4872ca72ca72ca57295c872485890ae53964f3965f39242c4be58e4af92be0b1cf96383e783e383e382c727c707cf07c727c73e58e0b1cf9f1c15f058e4f9e0b1c16382c727c7257c95f07cf27c707c727cf257c9f3c95f258e3caf83e792c73e58e0b1cf96392be0af92c7057c9f1cff95f058e0b1c16382be4f8e3ffcaf82be4b1c795f057c16383e392be0af82be4af82c71e57c796393e392be4f9e7fcaf9f2be4b1c795f3fe7c7258e7caf93e392be0b1c79f3cf95f257cf95f1fe57c79639ffff2c70a0800079603ecd71612cb09de71381f66aac420687e4226650cdc6176680617668061769dc58268332932930fb211343e211355621032115563328328343f0fa30fb0fb33280fb321021032112102b43e32112112b329fffbd2c42b01f3f1acdeaf777286a1355cc1eeecf82c1f467d1f5e7084207081f456c895977e65db2265d32265db207081f4583e8cfb3efccfa3e8b07d960fa33ecfb3fbfa2bfb2bfa3fbfa3fafa3fafb3fafb3fafb2bfa3fbfb3fafb3fafa2c7d963efcafe8fefe8b1f5e58fb3fafbf2c5d1dddd9dd5d1dddd162ecaeecb1747777477574577458ba3bbbb3bbbb2c5dff963ebfcb1f657f5e57f457f5e57f5e58fbfff3fafbf2bfa2bfa3fafaf3fafbff2bfbffff2c7d963ecfefe8fefeffffcb177e577658bb2c5d7962e8eeeebfcb17458bb2c5d1dd5d962ecaeecaeecb176577458ba2bbb2c5dff95dd15dd95dd1dddd7f95dd162e8aee8b17658ba3babb3baba3babb3baba3baba2bbb2bba2bba2c5d9dd5d15dd1dddd162e8eeee8b177e7f5f7fe58fa2bfa2bfbff3fafaf2bfbfff2bfa2c7d9fd7d7963ecb1f47f5f658fb2c7d163ecafebfcfefe8afebfffcfefecb1f5e57f457f7e58faff3fbfaf30e326333624e333632e231d546d312e1d530a8233323210b36ac7a31ec7a2c4f46eaba86318c46f18c67719c47315c6631ac46f19c658754c89224dd4c84f204bcc894bcd2f4bcd2f224e7a4b8ad2f34b8893220882c11056441a5e44191297160882c112644113e711125712588938989389893898838889f38889f388882b8838989f2b882c447f9618cb0c46c4c658633626336262363622b632b633636236263362622c319b1b19b1b19b1b195b179b131f9b1311b1311b17196188ad8cd8f88b1c656c65862363622c3195b115b196188d8d88ad8fcd898cad8cb0c45862363622c3195c415c495c416227ffcb11258892b8838989389892c441c4c416224ae20ae23ffce2620d8d8cad88b0c656c456c658632c31f95b19618cad88b0c5e6c4c66c4c7e5863362632c319b1b1f95b11b1319618cd8d88b11058882b892c4416224e2220b113e5889ffff2c4479c44415c415c4ff96224e2620b11257125710713125712571057105713e58892b88f38988388892c441c4c4796224b111e58882b882c44f95c416227ce2624b1105711fe58882b882c44795c4ff96223cae20ae23ffcae26f331e433b76dc30b95e3a3df73449133dd72835791335782f30bd1236a87a37d8c730b8c630bc7a331c2e357df730b82f31ec7a30bc2f30b87b344daa3fffbd2c41e83f005a0ee0eeb3706ce341c42bdd0003187a31e8c730b82e2b44ccc60b8cc61e8c7a31cdaa1e8b03d960c731ecc731ec7a30bc2f2b1e8c2e1e8b03d1ae5c6bbd16171ae5e6bbd15ae35cb8d72e2b5e7e97161795ae35ebcd7af2b5c6b979af5c6b97161795ae2c2f35cbffcd7ae2b5c56b8b0bcad715af2c2f35eb8d7af35ebcd72f35cbcd7ae35ebcb0b8b0bcb0b8ad79ae5e585e56bcb0b8ad79ae5e56bfcad796179ae5c585e6bbdff9af5c6b971af5c6bd7962e2bb8eebceeb8aeff2bbcaef2bbcb1795de58b8eebceeb8efbcaeffff2bbceeb8efbcaeef2bbbcaee3bef3beeffff2bb8b171df7962f2c5c58bfcaeff3bee3baeff3baf2bbceebcb171df795dc775c58bbcb17962ef2c5c77de58b8aef3bae3bae2bbcaee3bae3baf3baf3baf3bee2c5e77dde58bcaefffff2bbffcaef2bbfcaeef2c5e577ff9df7962f2bbfcaeef2c5de577162ef2bbcb17fff95de577960360c731e34da20e50cb58e4cd688b08d2b0734e5d9e30c730360b03306576576658639a61ae76c639a76c6b40958561b2695a76c561b0639a5847db58458360adcd2c58666c9b07615846e6d8658364dcc730dcc730cd8730acd83364d8f3361cc2c1b256e6959b258360acd92c1b1fe66c9b06e69b066c1b258364c741d4c751d0ad0631d47431d074f2c0ea63a8ea63a8e8563a160d83360d92b360acd82c1b2566cf99b06c99b26cf99b06c99b06c98e83a1607431d10631d4742b1d7cc751d0c751d0c741d3cac752b1d0ac752b1d0ac752c20e63a0ebe63a0e8563a18ea3a98e83a158e8563a958e863a8ea581d4b03a958e863a8ea63a8ea65094058284aca0f2b284ca1287fcca1287caca1ff3280a13284a1f2b280ca0280ca0280b0501594058280aca02c1405650960a02b284ca0280ca0280b050160a1f3280a03280a03280a1ff3284a1f2c14265014258284aca1ff3284a1fffff2c1b3e58363fffffffffffffffcacd8ff2c1425650194050799425095942565079940509594258284aca12b283caca13284a0ff2b284b050160a1f2c1405650194250960a0f2b284aca12b283cca1287fcaca12b284b050da03028040204010140a02010080300640ae302500803053c24f30d7c2a930ca42cf31c4921a300f0001300c4005305cc04f303cc03e34620fffbd2c41c003485d91db9ff00062e346243bfd000a9035bccab50300ac600d80006071010c603180c6611a82666027812018002a546032072608a05e690660a6330a28160074dc46f0c033306302b302a06234f02603428582329635f2eb1698880854e0c110038c168038c094064c008008d454d7cc660a5cca5c1d4c4f03899c459a1b8ef3180e80e98018048b009ba542604818c60701ba620e09e60de09e0d024120006cca729e4ca5b2baf182ea7acba030220082203b14028160104972b0109332164c5a76aafeb228dc6dd359e5dba0a2ff2c00c182d01c182d03d180c00c980c801c4eebff1779ae3fb76efa7ba8ca8927c39707a7a27c79803803958039803803980380398030031583a983a04c1583a45e2f14a771593bcf4b7e24f32e789492ebff72f45ee5ebc61540c4603207e180afe17007f53b0c00e4c44c60c00c8c50fd0fffd050d050d1c65d6a2ffffa251aa27c567d0fffffa219580133ba3f75e3292edc1863a4ea46dd474fffffffffffffffffffffffffffffffd4f980d0090981280b6984e00481848a1621869a25d18f32518198f263d19bd283d1a7d2d1b1b0fcf639bcf8c85987b8ff61db16c151d0749fb9cd72df399c764769881e1d19834809d9862389858ce9c5ca99b38cc9a0c149986cd1bcf161d83ce1ea3a91bc8f1997c611a16ce1bcaf21c32d31ade9b19160f191c9a9a68b599fa7d1986450b14e60e03a6271126471166450aa62a03a60e03a60e8a464698867d9f867f99062a83660d0403a0e98300e98a029983e0d2439810069810029810069818068602a8ab8ab3a01500a912a95c5987095b948b016d5fdb3ff4b0ee54255006ed19788c17050c2d0b8c49128c320c41c18a6f1728b945ca4e29eeef1fe56c8a800980801980402d79dc7a4a01980002980804980c03980c02df30180530902530880542c301402309446311448311c4830982528014c03000c23098c05008c05022b592500e2b477b0ffcea5d66d967ffffffff94b20c5dcb0cc4989356a6d779ddeb2ad6b755f57765b2996dda596d3bf38d6869da96d9d53434ef4ba1a7fa3384aa5d6bf2ab19a6ea300c013730b805f33126021130cb4230301a424a304f4122302905f9309b01e5308bc0253115c16431c9c4aa319809b1348b010e360fddfffbd2c41b83e62974fe0ff1f1056daadc81ff69e01033cce9a13e9998033720c8e03095404e3043c257309e00bd30074315306a01b93964c434b07666b9b5a486915398b4c4670561abd5a6ab341a9c58670859b40ea6965b8aa08c26b43291e438b21c5630e828906a18255402a4302824c4020012f82a2415279830b466f22268084188a8850f8238c0276895daa096a1e4406a530a427eb58491f081545ea7a311caba0d9712c06c2245b452039921093ca2624399cb1b2c29eb96a1f6c6b339233293c2e2af1b85c542519395617227c748270778c241b5976196923c2e27c2ba5fc4c49b6b75f582ca7ea3735ffffe0ab665746b4266378e2dfd7fffffffffce36c31231de4bfd191ff117fb8c19504f0c09013dcc8583304ca622984cb0e2c3cd17e039c8a86738190f763626173e280ca4e36eeb34d7401280e67a692ccc6a3708d58face8f60fa0b0e9df6268c2ee3714d7e9284d281eb4c64d280d7ecbbcac398c654a60c39c654c650e70d285280c650650cbbc650b032a63283286532530632a1ce61cc32a561cc61ce32863281ce612012061221206072070607207058038f2b03930390903d094d26834fa4ad216349a44a7a741e9d06952f95a42b485694b090ad2ff9a548695214492c25f34893cd3a62aa434a93cad29a548584869529e8485694d2a434890d22534a94b090b094d2242c2534a90d3252b4a5690b090d2a52b4a691215a534890d224f372e7fcb0e0b0e7ffcadc161c7fff95b92b73fffe56e3cadc7e5dffff372e3ffcb0e7cb0e3ffcb0e7fffcadc161cf95b82c382c382b70587058726e5c95b9ff370e3cdcb8f2b7058725873dff2c38ef9b871fd3a21dfffff65f302a03bf3183c6d2327a41d139209453312084833623919f370206d535458e2633ec4e26388c9fe23a48b6a13da898f333712b75337150153ed089223371145331208dc430be454831cd84203042842030be442035b23231156d2c15065408a685216685088685216568515a14685a1665408856541888549950229a1622959715bd15bd95bd9973d961eccbcb8cbcbcea510b08858452ba8345453444434444345a9345452c2296114d1114ad14d1110d1514d1110ad10d1514b08a575258442c549a2541a2221a2a29a22296110d1114b08868888584434fffbd2c46c83f3bd56de0ff77085de2a1ac1fe6e4054534445344452c2215a21a22215a29a22279a2221a2229d4a296110ad10b08a68a8a5844f345442ba82c2296113cd1110b08a568a68a8be58442b45f345452c22f9a2229a2a2f9a2a296110d1114d1514d1514b0886888a58442b44f345442b442c229a2a296117fcb089e68a8a5844f2b442b453454434545345443a844345453454434444344a834445345452b443a94534444344452c221a2221a25416114d1510ad10d1514b08868889fe568be68888568868b5256886888a568a68889fbf9dbbf45c58018cc0620d8cc4e31388c3620d88c5630d8ccde23388e1e2878ce6e33d88d1e32788d3e24f88c660a18cdae32788c9e2358cd7625d8ce1e2358cef62e58cd0e2438cc6e2358cd762438cc6e33588c9e31b8cc3620d8cc162178cb00b1182c60b1182c40b11f8dc456e33f1388b1e3371b88ad8cf8b88f8f8caf88d8f88f8d88b0c65862363e32c719b13195f196388f8d8fcf8988b1c65863363632c3195f115b196188ad88d898bcd8d88d898cb0c458e32be32c3195f19b1b19b1b19618cd898cb0c47c4c456c66c6c65862f36362363632c3115b115b115f11b1b19b1b115b11b1319618cd8d8cd8d88ad8cd898cad8cd8d88d8d88a310b0c46c7c66c4c456c66c6c47c6c66c6c7e6c6c458632b63362622b633636336363363e2f363623626336363ffd15b1f9558cb0c47c4c66c6c458632c31ff9b1b17f95b11b1b17f9618fcb0c458622b632c319b131f9b1b115b115b17ffff9b13196188d8988d8d88ad8ffcad8bffcb0c7fffa363622b622b62fecf95ff2aaf2c084258217cce061080c9c9655cd3ae3270dd952720e33eed24e068381cc4203dc0d957381cce0781a4e33eb494f70aed24cf704eb8cf701080cf702cc8c6f45a0cc2b7217cc9c81bd0c58b0ad8c58a0adcb02109829a2101829815b188400a61d6ca69a9b5b9554c35314c35314d2b3eccfa3e8cfa840e103ecb07d99f47d19f67d962102b3eccfa3e8cfb3ecacfa33e8fa2c1f6582efccba2e8b05d960ba32e8ba2b2e8acba32ecbb2b2ecb05d9597665d17665d177e582ecb05d19745d15974582e8cbb2e8acbbf32208832252f32208932252f32208932248834b88832252e2c11064411064491264425e64411206bfffbd2c47903eab9a2d20ff6b3471eaa5801ff5a38ac804576115d84577062ee0c5d81ae97606ba5d8457581ae976115d01ae9740c5d40df4fb037d3ec22fa063ef08bec22fb063e818fb063e818fae06fb7d01bedf606fa7d845f406fb7df06533c194cfae11a6ffffc234d81d369947ffffffffffff06110c1f907e0c1f81044d4c44abce14c8534d8f25314c1f820f0f62f7cd8ce8395f0d2af6c24df37e970f2038d90c413a6a0e14fc808e9a763d4f204c80ce3642950ce821038ce801044c4114abcc40e1898c4101040c1f91040d89f1acf1a9898c7e5898d89c7e4ae0f0f1aa0f0e0f5044ae0f0e0f5044d0420f0c7e5040c7e07e4b0823e63f282056c4e5541134101f834111f831f91f82b1f934114102b1f834114112aa08941f898fc2089607e4ac7e0d0407e7cc7e1044b03f05682056823e68203f0581f831f81f92c20818fc8fc98fc208f98fc0fc1a080fc98fc8fc95a0879607e4d0407e4c7e1040c7e47e4b03f263f03f0563f263f23f0563f0563f063f082063f03f063f03f063f23f263f23f0581f831f81f92c0fc1607e4b03f068223f263f23f268203f3e63f03f0584102c20898fc0fc019f93f00c3f2e113f2113f3033f27e0227e4187e4227e4227e4187e00e089f908c11061f9061f806410033f27e2067e0fc819f83f1819f93f0067e4fc830fc830fc419040187e3033f27e40cfc1f8061f9c227e00cfc9f9061f8061f8091f9033f27e4187e40cfc1f9033f27e2113f0067e2084187e2113f2113f00c823830fc830fc7f7061f8844fcaffffdc9d9fffffd75f317f31b37f117f34b7b29398c65434b665534da7572c30c9a6dbab1a6d12f1b2acc61b2ad949bf832a198d32a1b2a6629d947fe9b2a0bf98bf25b192f30c99ce12f989092f192f12f1612d8cc68c6cacc68cc6c5fccc685f8b06366636634663496e66362fc6bf2fc6bfe346bfafc6bf2fc6bf2fc585f8d20978ae5f3485202c4be690a406904bc5690f961213979212c24272f240690242569096121348521348521397d203481203485202c24258480ad203485212b484ad203485202c4bc56909a429095cbe5897cd21480d21484d21487cd20978e5f484d21480d20484ad203485202b480ad212c242569015a40690a40690a42690a4058484ad20ff348520348fffbd2c48183f27178ce0f76b545f6b61a01ee57205212c24258480ad213485212b480237e065f8237f81dfafc077fbf4237ec197e832fc0cbf832fc11bf611bf032fc11bf832fe0cbf832fc077fbfc237e065fc237fc197e03bfdf8237e832fe11bf01dfeff065f8237f832fd03bfdf8237e846fe11bf832fe11bf846ff065fa077ebf81dfefe0cbf832fdc0eff7f065f8197fc197f065fc237e08dfe0cbf60cbffffc197e2c0bf18bf0bf9bf859418bfa5b9d9418d15d941a6da6d9a6d44a18bf8bf1598d1961ad0986cad01890a6d9b0c9ce992f3ab9596198e69619a5606c18bf18d961954cc6d2dcb096c62fe2fc696c63462fe2fe62fe96e62fc96e696c2fc66342fe5663466342fe61b039865861b0561b261b239a63981b2581cc31201202b1202b1202c09018908909589015890992f0901f35b0586c1b65b26d86c9b61b06d86c95b63cadb26d96c1d72ba6a1ae95a87cd40a13aea80eb8a12b501a854275d5095a84d42a12b6c9b61b056d82b6c161b06d96c15f33cdb2d836c364db0d92b6c9b65b056d8390484e4120390c80ae427209095c83fcb120390c80b120390484e4121f2b901c86425890162405721390480e41202b90f95c80ae407209015c80ae405890f962425720390484ae40720901c86405720390c860cbf846ff846fe11bf846ff832fc11bfc237fc197e846ff81dfefe11bf832ff832fdc237e03bfdfbc197ef846fe11bf832fffc237fff832ff81dfefdfffff065fff08dfa0cbf2af2c1611a561619ad086c1bc6256986c0e698e61db186c2d0991503a991528199ca96bf995d8cc183a95d98cc883959ca996b0ae18500ae18ae8ae18ae10d99ca05098ae0ae158e6186c06c996186c186c06c186c86c1586c98e686c186c86c986c1611d71406a1501a86b858501a82ba56a02b501a854258509d71405850161426a0509a8543e6d86c161b256d836c363cb0d8ff2c363cace9e5883f99d0ea583a959d0cea7433a1d4cea7533a1d0ad43e585095a84d40a12c280b0a02b5095a83cad41e56a12c280d42a1350280d42a0350283cb0a0350a80b0a0350280d40a02c284b0a0350a87cd42a02c284b0a12b3a19d0ea7073a99d0e8583a99d0ea6743af99d4e86753a99d0ea567533a1d3cce8752b3a160e86743a160e9e6743ac1fffbd0c49001aae194d80f72b58554b59a95eed5a08d808b600db0d9c22d906367831b1c22d8c22d8fc18d808b620c6cf063660c6cf036cb66116c01b65b2116c7fff08b67831b3ffffc18d8720624024262422406caa96c696efe06634fe0696e2fe584b6f32c269733b61cd32c30d831cc2c2375639c339c120339d4da2bb08ec2364dcd360e5e480e5f978f9c97cd2197cb0901f3a909f39ce15cbc6904be7cef386904be572f1cbc909cbc909cbe90961202c24258480d21480232106484192108c80192008c800e4320064840db1cc036c36418d981b65b2116c7845b006d86c831b20c6c045b0116c81b65b2116c01f31b00c6c0339a0c6ce0c90046401190e0720900464184642119001c86400c6c831b2116c831b00ce6045b006d96c01b65b2116c81b61b006d86c831b006d86c031b206d86c81b65b006d96c045b00c6cc0db0d881b65b006d96c01b61b20c6c845b006d86cc0db2d90636606d86c031b308b6022d8036c363f06487fc1921846400c90c192084643e0c907c1921ff064842321fc2320c1921c2320e0c9083241c1920e1190ff0648383241ffe1190552b188b0719f7f4a1eb57c15bc66b19c46e821474a4645719988ab69bc4b11ac4311dc4b11cc47198c4b198882219502296045338ce33589622b388d62188c6338cc6318cc63588b071195222995222195022160a832a04532a0452b110ac4432a0442c08862208a78b1f95e23c58fcf1633c78bcae2162215c42c442b8a588a588be71221c58a716295c538b14b110b114e2442b8be5714e2c538b10e24538b10ae21c48871227f9c58a7162162216221c5885888712216229af5de585e6b9715ae2c2e35cbcd72e2c2e2c2f3f4b8b0b8ad715ae2c2e2b5e6bd715c42b885710b114ae29c48a588a588a58887122ff95c42c442c45f2b89e5710e2442b8bc238e11c611c5e11c5f08e3f83310331ffff8471047160cc708e3c198c238c19881988238c198e0cc7833103318471e0cc508e3f8331c0f1e3e0cc611c7847103314198e0cc5066308e3e0cc41f2c1e6a5119a1af08bc29b0f2a7b986cca7b194d8c3c98dd06f719b1a90d9a4346c69a4366c619b1a47f1ef71b39b74ef71ef76f71a08e3598fce351a08a081bc6bc61f9a79a953cd4de33cd7cde31e34a79a8de37cdfffbd2c4d083a94daee40eea974694295845ff597a0d1c3634ad1c0e3ff630e3f91c0d1c11c0dba0d98cd9a9b0cd98d98dba0d98cd9cd9ccd9cd98b0dd3e566cfe66cc6ce586e9f36e9367362741136271f831f81f9f34101f82c20898fc8fc1a080fc1a088fc18fc8fc04638846380323884638c191c0231c4191c40e38c71064700647108c7003530a640d4c29903530a600d4c54d08a9803532a6418a600d4c54d03532a600d4c29981a98532075314cc22d980db3367831b3831b381b666cc0c6cc06d9db381b666cc06d9db3045b3845b381b666cc116ce0c6ce06d9db3c0e384708463804638e118e0118e0118e2071c63881c718e0118e3f08c70038e11c00e38c7108c7008b66036ccd9c0db3b67c18d9822d980db336608b6608b6708b67036ccd9818d9818d9c0db3b670636706366036ced9c0db3b6606366845b381b676cfc191c2071c238f08c71f846380323801c718e384638c191c3c82bb45762bd6a189200a0f3144ca433d6cc69c36b368403455f43b3455ab8137c0e4323674ca4235040d5636b2cd573290d4a32a9ee6553dc8df03144ca294533f88be230f8d3e330f8c7e333dc8a4333dcd9d332908a4332908a423144ca423144ca433290851231448513314494a231448f7233dcc5133290c5122c0a24587e3d95bf1960f8ccf8cf88b07c4583e32b3e22b3e333e23e333e37e333e23e333e33e32c1f199f19f1160f8ccf88f88cf8cf8ccf8cf8cb07c4567c6583e333e23e237e23e284e898328981d13a2611a240ca2611a2508d1281d12a260744a8981be27c6117c4117c606f8df101be27c60c7c407f89f181be37c606f8df101be37c6117c6117c5063e208be281be37c5063e3037c6f8a117c581be27c7831f181be27c5063e2ff81be37c5f831f1781be27c4117c6117c40c7c4117c406f8df1c18f880df13e2063e2063e208be308be2845f1c0df13e2063e2037c4f8b08be3037c4f8fc1944c2344ffe11a27ff06513e11a270aa27fff08d1303a2544bff06512f065128468980001f961a0f32f89be330f8cbe22b674cd4a3528ccf727c08d4a25288c923183cc9221838b0ce9194867b9997c67f118fc69f198fc63f19b07b071c914919b07c91963f88a1f1cdf88f8cef88f8f46d3baae7aacd386d39aae6a254867487486fffbd2c4f0002ff59cc10ffad486bcb35849ff59b3574846a24a26574866fc67c667c67c667c6fc6583e233e23e22b3e332f82f832f92f9360f60f32f92f92c17c7960be3ccbe183cb05f265f2c1e65f25f065f0c1c56c1c582f832f860e32f82f932f82f8035f0be40d7ce0f035f0be7062f8062f9062f808af981af95f2115f006f8df1c22f8822f880df1be3037c4f8818f8c0df13e208be2037c6f880df13e2037c4f8822f8c18f8c22f8c0df1be3037c4f8a117c6117c40c7c60c7c708be208be208be2063e3063e308be208be3063e38317c8457c40d7c2f808af808af808af9062f9035f0be422be018be00d7caf9062f98457c81af85f1035f0be422be206f8df1031f1845f1045f1831f1045f101be27c7831f1031f101be27c7037c4f8c29f1818f8e06f89f1831f101be27c7037c4f8822f8c0df1be3ffc1944e0ca25f065120651284689fc1944cde666d451e74c692cb86aed3354ea7b2cc5691998436ef2c2dbe749e0b946bc1af0868cdd2784d19c1de4b1aa9bad88cd958dd05853d0c4716ce4cd8c23fcdd6d2ec8cbb275b4cbb31728c3671ba0c3671ba0c3661ba0c36545ccc36445ccd1731ba0c6e90d98b03c619e6a79a98f183c616078b2c2335af2a0b96565d91c7fa38144701611c0d1c51c3cd1c51c4d1c11c4ae3fb9e568e1fe58471336636636e9366e959b3f99b31b3959b399b31b3959b399b31b30323840e384700647108c700647006470c231c4231c606d99b3c0db3b6608b67036ccd9c0db336606367036ccd9c18d9c0db3366036ccd9c22d9c19ba40db3367064710647008c708323840e38c7081c718e0071c23803238832388463881c718e20c8e00c8e308c7108c7106470038e31c00e38471038e11c00e38c71038e31c60c8e20c8e0071c23881c708e0118e0118e20c8e0118e108c700647108c70038e31c70647108c7108c7008c710647106471064710647108c710647181c708e30647008c70c231c00e3847006470038e31c3065cafc1972ff832e5ff846e5419e3613f1bffffe11f19ffc19e33c23e340cf2c13a66bc22f044e35599b1a90d1bf8cb549bad85d91af091aa938d5665d997666b549b1866c6ad5268ce233468cd233651785150bb22b172cd19b5e10cf343cd4ad6de33cd4f3533cd078c2aa78064efffbd2c4f003b1c9a8c00ffad4867d2b97c9ff5eba9a783a34f013c12a93a6513c0993a64e9993a49e09549d32bbb235cbbb32b5ca2c2e515ae595ae59a38c7f1a382381a38a381c7fa381a38a389611c4a238fcb08e2584702c47f1a38a381a382389a38a3895a389c7f47f79a38238960a64ca61530ca65534ca64a60d531534b053058298354d29932982992b29932982992b2992b4712c2389611c4d1c11c0ad1c0d1c51c0d1c11c4ad1c4d1c11c0d1c51c4b08e068e28e268e28e0568e0568e068e28e2584702c2389a3823895a389611c4d1c51c7cd1c11c4b08e3e568e0584712b4702b47034714712b5ca35cb5ca2b5cb2b5cb35ca5ca2b5ca2b5cb35ca5cb2b5cbff2b5ca2c2e59ae52e57f95ae5161728b0b9456b9656b94585cbf2b5ca2b5ca2b5ca2b5ca2b5cb2b5cb35ca5ca35cb5cb2b5cb2b5cbff35cb5cbff2aae56cb0b95fe56b95fecaba05d4123552674e3bad48a9d373031554e1127497febaf30f887e332f18e2831290966285e38c9662f1cc5622b8ccae51ce0cc394994ac60e30e385623158838d3158c90e3243c90e31588563312904a53090c2422b1290c3e21f88c7e20f8cc3e33f8cc3e32f88b0307958c1c617c8c1c56307187c41f19607e230f8c3e230f883e32b0f88b01219848625215848658090cb0121160243f3e3db92c71e586e0db96e0adb936e38e2c371e56dc1b72dc1b72dc79b70dc15f1a586e4b0dc95b7056a69a9aa69a9b5b9a9aa69a98a61a9aa61614c3ad94d3532b63adab735314d3532b636e5b836e1b8f2c3706dcb706dc37056dcf9b72dc15b70586e4adb92b6e0b0dc1b72dc9b72dc95b726dc370586e0adb92b6e0b0dc95b73e6dcb706dcb726dc373e6dcb70586e7cb0dc1b70dc9b72dc15b73e56dc1b72dc7961b82c37256dc79b70dc161b82b6e4adb8f2c370586e4adb92b6e4db96e4adb82b6e4adb82c370586e0b0dc95b726dcb70586e0db86e3cadb92c3726dcb726dcb726dc37056dc1b72dc961b936e5b9f2c3706dc37256dc7fffffff063e30bcc78d1e34c5cca4f0c5cb8d54de87b760cf3598c4e3555e08dd6c172cd6dd3cd4de8698c0db374868c4716cdcc5ca75b0c5cb1728d19a4668cd8c23fca1b1b323fd6a932ecd19a2c0b946bc1233462e5233a71fc8e271fe8e268e11fc68e2fffbd2c4f081f03160cc0ff6d7863fb5d7d5ff5a2a8e27e69e6be56f1a7e69e69e6f1af1a57e6bc2b78dff3471471347147034704703471470347147134704703470471347147134714712c2389a38c7f1611c0d1c51c4b11fc68e28e0584712c2389a382381ae52e51ae5ae51ae5ae59ae5ae5945cb9ae52e596172cd729728d729728b0b9456b95e157280772ae5846e5046e5c1972c19728237281972bc0ee5dcb832388463881c708e2118e0071c23801c708e0071c63801c708e2071c23801c718e0118e00c8e2071c23801c718e2071c23804638e11f1bc19e330af1bee0cf1bc23e3423e31a0cb940cb95c23728197281972b03b9772ab065cb08dcb065cb708dcb08dca581dcab940cb940772ae57d5fe0cf1908f8de0cf1a15e3411f1a15e35fd55423e3611f1b5419e317f5e11f19f08f8d0678c833c6423e33f0678d81f8df1b5f33a38e8f3e1d21d43b49168319d0eceb83d0ece2c92270d155ae00e1856b28c69d355ccf736748c513290cda0f8b20eb808b24a844e99ee65219a9462891b3a65211c59044e9b41e44e96115532275155d151d3a33a38e8e33a3ce8f35a08b3232cccb3228599ccb322ccca8b419bf1df119f11f199f13f11bf13f1143e2161f88b113a5589d389c89d2c44e162270a44e3cae270da75a70da71a74b0d3a6d38d3a6d3ad386d3ad3856d3be56d3856d386d3baae56d39e56d386d38d386d3ad3a5355c56d386d38d39e6d38d3a5869d369c69cfef95b4e161a77a56d39e5869d28d3af2b69c2bd56f369c69d2b69c2b69d2ab4e1b4e34e1469c1b4e34e95b4e79b4eb4e961a77cda71a70da71a730369c69d2b69c2c34e7961a70b0d3851a706d3ad3a56d3a56d386d38d3a5869df2b69c3d5669c28d3b2c34e961a77ffcada73cada70a34ef45869c2b69cf2b69c2c34e95b4efe8ada70da71a74b0d3bb2c34ef961a77ca8d385869c2c34eecb0d3857665ffe58b322c599fecb16645766658b32ffe73fcb166657665e7665666766766458b32f2bb32e313316f31e1f6ee56bfff9beaf3144a96237c0851329f118e4335288e4333dccd9d35288d9d22908cc38248ccf4e183cd4a32908d4a3a588d4a33dc8c5132908c513528cca42528cca433dc8cf72290cca425288ca43290cdf03290cd4a2290cc5133dc8c512fffbd2c4ff03f49152ba0fffc5c651b59801ff5a901448cf72290ccf733dccb07b999484a511948428998a242891948628916144ce90e908ad448d44d44cd44d448ad448a2894b0a27e585123513a432ba42d95a8916144fcd44d448a8a246a24a266a24a2452909e58513f849f1c22f8a117c406f8df1831f1031f101be37c607f89f1845f1831f181be37c6117c606f89f101be37c606f8df1031f101be37c508be2037c4f8e117c6117c508d1308d1203a274482344b0651306513065138468941944c2344c2344a0ca260744a8901d12a270651383289c0e89d12f83289e0ca258468941944c1944a0ca2508d138468904689b8468941944e11a278328901d13a260ca2583289e11a2781d12a24f83289832890468984689032898328942344c1944e11a2706513f83289c2344f06512a8234481944a0ca260ca258468941944b8328976e11a2584689feae11a244c414d45332e313030aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaf2aa8207219b3a45243318a27c791a946a519a4c849198c1c7a7997c65f119fc47f19486126d651aae67f1a7c6517e21587c4617c1244661c9246661c124666ab9aac66ab0d3a66ab35966a082822634e2820566ab19aaca0896069d2b355cc69c5040acd563355cd562c0d3a574845144a56a24748748656a2658a4337e23e233e33e22c1f1159f119f11f1959f199f13f11bf13f11d21289161448b14847486a246a26a27e51449e585132c28981d13a2611a2411a260744e89832890328901d13a2708d1303a2544d82344e0ca240744e8981d13a2411a25846890328981d12a260744a890468903289e0ca2611a240ca2611a270651283289784689c2344c2344c234482344c1944c0e89513f8328981d13a2783289c0e89d1206512ef0669d8334e78474ec0f4e69de0cd3a11d3807a774ee11d3abc19a77ea7c19a760cd3bb419a7019a73ffff8474e8474effffc19a77ff08e9db3ffffd6bf9913a8aa1f9eb1631445566a510a2472198a24777c28226d65359675c09138644e11387163570651a0f9c59044e1a2a88aa14455e67b9948667b93e066ce98a26644ec592644e913a6d0722aa51a0f142274644e22aa644e913868aa1138644e341c644e113a552274aa44e1a2a844fffbd2c4e581eb5da6c00ffad4867d3597d5fb5f98e18d3834e19aac34e18d3834e18d3a34e958d3a581a74ac89c2b2274aa8aa9913a44e15913bfe644e113a634e0d3a634e0d38634e1aade5634e798d3834e158d3a581a70ac69d2c0a2662890a2456289958a245628998a2628998a24289958a27fe65210a27e0744e89046890468942344c2344c1944825448234481944c2344e11a2503a2544c234480e8951206512832898328901d12a240ca240ca270651306513065136e11d38c11d3811d390669c08e9c03d39a7019a7207a774ec23a740f4ee9cc19a7423a7607a734e0474e8334ee11d3a0cd3811d3a07a774e419a740f4ee9d03d39a7611d3bc19a7019a7023a7207a734e01e9cd3908e9cfe0c22742244ef83089c7089139f06113bf088d39fc1834e42234ebc1834e60c1a77f060d39e111a77c1834e84469df6c2244e550000001fcb08e06636ca8663496e6fe26366634fe069b4c32673aeae673a9b6586192b1cc33b73b63411a5531f94112b410383d62731f86263626626331b31a34b731a317e17e34b64b732982992c2a69594c194c94c795a089a0831318fca081a088fc9625e3979212b484ad2134825ef2be70ad203979203485203481213481203485212c24256d93e6b64db2d92c364db2d836c364af9856d82c360f9ad92b6c79b65b06d9e61b61b26d96c15f30db2d93e6b64db0d82b6c161b0589079c8243e7219015c80ae40720901c82407219079c8240720909c864056d92b6c1b65b056d8f36c360db0d836cb64b0d82c360adb056d82b6c9b6798586c961b056d92b9095c84e43202b9016243ffe589095c84e4121f2c480e4121390c84ae4057212c484b120ff2b907f95c87cb121390c84ae42589095c84ae425720390c80ae43e58909c86407219016240589095c87ce4320390484b120f2bbfff962fe577ef2c5ffcb17ef2c5f8aefc58bf9dfafde58bf962fde58bf1dfefe77ebf15dfcaefc577ef2c5fcb97d859c2ab88e7fa3cb0599194842891be04a51998724911aaf47a799fc43f19a7c4ff11978c122992ce71415948456a5119fc61f19553e232f8cbe232488c393248cc393183c60e31a70d5631a70d563355c69c3355cd573144c5123144851333dc8512314485122844e4d1554550a11383227089d2b2270afffbd2c4ff83f1c956d46f779446f42a9881ff7690d448d44e908d449448d44d44cd44d44cd44d448cf8df88cf8cf8ccf8cf8ccf8cf8cacf8ccf89f8cb07c6583e232f82f9360f2f92b2f832f92f932f92f82c17c960be4cbe4be0acbe3cef9be0ef8be4ef8be0ef9be0ef8be0ef8be4b17c15df258be0b17c1df37c1df17c9fc7f11fc5f115fc457f19fc7f1163e23f8fe2f2c7c47f1fc457f1963e32bf8fcaef82c5f277c5f277cdf277cdf058be4b17c79df17c15df077cdf077cdf058be4ef9be3cef8be4aef9f3f8be22c7c5e57f115fc457f1963e3f2bf8cfe2f8cb1f1163e33f8fe3f3f8fe33f8fe32bf88b1f115fc457f1963e32bf88afe22c7c458f8cfe3f8cb1f1795fc5e58f8cb1f115fc67f17c7e7f1fc458f8cb1f1163e22c7c657f179fc7f115fc457f17963e32bf8cb1f19fc5f19fc7f179fc5f1963e22c7c658f88b1f195fc47f17c457f115fc67f17c658f8bfcafe32c7c7e57f195fc658f8d5f2a2944630705f26c472af66abd8c1a661c9872693205f069320c1c510881978e4b3192463071a4ca49199e9e7a71987017c18c1e17c19c62b198dc2b118dcab11d21a891d2152179d21d2195df1160f88cf8cf88df89f88b14867ee4a25fe56a246a26a25e6a25485e6a26a27e67c47c5e67c47c667c67c6567c5e583e32b3e3324324232422432b243324324232422432c12199211219921252992112116090cac908c90c908c908908c90c908c90c90cac90cc90c90cc90c908c90c90cc90c908b048664844840c5f2115f00c5f108af8035f2be2115f18457c6115f20690d210452101a4294a1148406909218312140d21a4308a4208a420624281a424861148406909210452101a4348508af9c22be206be57c0317c8457c8457c422be60c5f2115f20c5f1035f0be418be2115f20690d2181a424840c4840c4840c4840690921e11486114841148606909210452181a43484114860c4870348490c229080d21a4208a430624208a4308a428317c0457c422be40d7caf9062f9062f9035f2be40d7caf8f062f98317c8457c0457c6115f3035f0be018be422be3fffff08d12f2c3d10653614da6a7ba2e442a7a1a9eea7b9a3362e518b971aa9445cc6374b0f2564019957055c1437be63748dd2653694d863c68f1863c6adbc6b6f8f1a53cdfffbd2c4f103f43180ca0ffacdc623b25881ff59f847e6be687e68f1a57e6857e687e6af187e6be687e69e6a6f1af145478a3f3578c378d78c378c78d378cf352c3c61478d1bc63c6961e34ade30adba4dba0d9bcaadd2566cc583672b36633676e834704712b8fe38fe4702c2389611c4ad1c4d1c11c0ad1c0d1c51c0ad1c0d1c11c0d1c51c0d1c11c4d1c11c4d1c11c7cb08e3e584702c2389a382389611c4b06cc583672c1b319b39b399b31b3f959b399b31b3959b3960d9ccd9cd98b06ce66cc6ce66ce6ce118e2071c238c191c4191c7038e11c40e38c70038e11c4191c4191c40e38c70064710647006470038e11c0191c40e3847084638e0c8e0118e00c8e00c8e20c8e308c718323804638046388463881c708e20c8e2118e20c8e2071c238c191c0191c0191c0231c40e38470c0e38c7008c708323804638c0e3847108c7108c7006470606470c231c60cf1bf57ffffdffffff846e5e0cb94a00002f30be4c3831084420332746f434224bc73259824431839265263070b039c183701c6961c14d2938a4eb9158cdce0e30eb95588eb8ce3cd58ce3cd589588cbe648cd83cbe0d83f0e0e48a48cc90c90cc909c14c909c14d295290cbe248ccbe1838d83cbe0cbe183cd83cbe0cbe1838cbe4be0cbe4be3cacbe0b05f2569485648664844845694a64864846486487fe6dc3706dc3706dcb706dc37256dc9638f2c370586e4db86e3cf8f6e0f8e6e4f8f6e4db96e7cb0dc1b72dc161b82b6e3cdb86e0db86e3cadb836e1b82b6e0b0dc9b72dc961b936e1b836e1b82b6e4db86e4db86e4b0dc1b71c71a9aa61d6ea615a9856a69d6ca61a9aa695a9856a69a9aa6f95d6e56a61a98a69a98a69614d2c29a56a67962432b90fffcb121f962422c485e572196242f2b908e43908b12115c87e572115c865890bcb121f95c845721ff9c8521162432b90bce4290ce4390bcb12116242f2b90cb12196243f2b90fce42908ae432b90ce4290cb1211c85211c87211c8721f95c85fe5890ce4390cae432c485e572115c87fe572195c87e58908e42908e43908ae43ffdbf587ccf8af88c7054224d7aa4ba8d7e30f8ccfe21f88d57a248cc2f80be4ce281294b04b319c5097518e0a4b3197cfa79fa7e1c197c97c9fa7307997c17c197c61c9df1df119f11f19df15fffbd2c4f303b38556ce4ffba9d6c3a41945eff822f199f15f199f1bf199f19f19df15f1160f8cdf8cf88ef8cf88cf88f8cb07c467c4fc66c1e5f065f05f265f0c1c6c1c5f265f25f265f05f265f05f065f25f065f25f26c1e5f256c1fe582f832f860f31b838d31b91b931b91b931b81b82b1b931b81b92b1b831b938e2c0dc18dc1c695a5279921921992112116090fcd295290c908908b048464864865824332434a531b81b831b81b931b81b92b38f2c1c7160e34b0372563705838f2b1b831b81b831b91b82c0dc9606e4c90c90bcb04845824232432432b24332422432b2422b2422b24332432432b2422c1219921121f960908c908908b04846484485e64864845648658242f2c121959211592116090bcac90cc90c90cb048664844866484486564866486484564846484484671c3706ac6371e637071c6372370637237063723726372372637237063723706370372581b931b81b82b1b82b1b831b91b82b1b92b1b82c0dc959c7158dc98dc8dc98dc8dc79606e7ffffeef34bdd4378ce2398c633b8a623188e23d8a62338ae23578c737dd5f2c1c65771985e3d98f6d59abc17163c634bd2f32248939ed2e32232137512e3751d5375488f34bdd534bd2f32208939e92f32212f32248934bc892b4bcc88224d2f220ac882c11269711058882c4495c41c44495c41c4c415c415c4162a0ea514ad14ad14b0887508a68a8bfe75088584434545344a8345a82c221a2a21a2a29a2229a2a29a2221d4a29d4229a2a21a2a29a2a215a21d4221a2a29a22295a279a2229a2229a2a29a22216114ad14ad10ad14d1114d1513cd1110ad14b15268a8a56885689e5844345442b442b4534544345452c229a2a29a2a296114d1517cd1110ad13cd1114ad14ad14b08a68a88568a568be68a885688588938988f2b88f2b88f2b892b89f2c447fff95c496220ae24ae23cae20e2624ae27cb11056c5e5863363622c3115b115b19b1319b13115b19b1b11b13195b116188b0c5e5863f36263f2c3195b11b1317f96188b0c60c44ffff84513fe0c4404513e0c44fc188908a2708a27cc484e74d866254aec44c97d36cd860484dd5ce74b073a64bf12a69b424265841b261ac9585825e312039c325e894339d757312025f2b619312139c3120120325f4db31201213121fffbd2c4e403eff9ace40eeeb7c67f361b01ee56f01203120120312125e3121120325e25f325e4da2c12f192f1ce18909ce996106c160730b01b063981b063981b0580d9f2b909c8240721909624058901c8640721901b679a586c1b61b056d92c363cb0d92b6c795b63cb120390484b121f2c484b121f2b9095c84ae4058901c86405721ff2c484e4121f390484b1212c484b120f2b909624056d82c364db2d936c360db2d92c360db0d936c364db2d82b6c95b64b0d8f2c360db0d92b6c95f34b0d82c360b0d82c364db0d936cb64db0d8f36cb64db0d82b6c7961b2586c15b60b0d92c360db0d936cb64adb2586c15b60db2d82b6c79b65b056d92b6c7fff961b3e56d936cb64db2d92c364b0d82b6c161b3fe6d96c95b60adb211907846400c90c192006482072190c232106484232006483e0c90c1921c0e4120064802321c19218464308c841920f846401190c1920064861190846400c9060c908324384641c192106483f08c842321af3210329369d2693340190343f32830fa66d366d89d35569b2332843e355643f35569b2389d66c327a1d4346c27a33c746c2882d31910ba2b26937840fa321055630fb210343f32832103292b3292b3292b32830fb210321043e3210211321121030fa0fb3843282b3e8f28840cfa3eccfb3eccfa840b10819f47d99f67d99f70899f47d19f67d15c2267d9f7e7081f467d1f5e567d99f47d159f667d9f6583ecacfaff2c1f4583ecae1133ecfa2c1f6567d159f467d9f667d9f6583efcafefcafecafe8b1f458fb2c7d9fd7d15fdf95fd163e8b1f457f657f657f7e57f658fb2c7d963e8b1f458fa2bfb2bfa2bfa2bfa2bfaff2c7d95fd95fd7ff95fd163e8febe8afe8afebcafecfebebfffcfebebfcfefebcb1f458fa2c7d15fd15fd1fd7dff9fd7d163e8fefecb1f458fb2c7d15fd163ebcfebeffffcafecfefe8afecfebecafecb1f658fb2bfbff2bfb2c7d95fd9fdfdff9fd7d1fd7d1fd7d95fdffffff95fdff9fdfd963ecafecafe8febebcafebfffcb1f657f47f5f5e7f5f7fe57f67f5f47f5f5e57f7e58fbff2c7d15fd163ebfcb1f657f7fe58fb2bfa2c7dffff9fdfd95fd985e171611230b82f3a39f7357a8e30b91337c8cc31649334495e331d13324c583248cd30bc7a37d8c630b8c73248cd33301d31fffbd2c4eb83f475b2d80f7774c5b935dd81dd66d8609331e8c630bd1230bc7b30b87a31ec2e2b578c7a44cd130bcb063985c3d9602f30bc2e2c05c63d8f666305e61705e563d985c17985e179aef456bcd7ae2bf46b97961795ae35eb8b070ec1d33a70b070b070b073cb070ced9ff2b5c56bcd7ae2b5c585c6bd7ff9af5c56bcb0b8ad796179617f95af35eb8d72e2c2e2c2f35eb8d72f2b5de6bbd962e3bae2c5e577f9df79dd7162f3bee3bee2bbbffffcefb8b17f9df779dd7962f2c5e577ffff9dd795de57715de57715de58b8eeb8eebcefb8aee2bbcefbbcb177f95de58b8efbceebbfcb1795dfe77dde77dc5777f962f2bb8b17162f2c5de77de775fe58bcaee2c5e77dc775c77de57715de5771dd7962e2c5e58bcaefff2c5e58bffcb17795ddfe58bffcefbfcb17f9dd715dde57715dfffffe58bcb177ffffffff95de5777ff95de577962f2c5c57715dff31a71aca3861eef93355daca37c0a43335288f7337c094a12b3dc8c2f91838c92255e8eef81a70d4118610c2f83d38cf4e248cd26530e4a0a27285214d9d22908a86ab1a822a08160d5636b28d5631a75acb3355d41033558d572b1a70c69c1a74d4111a74b034ef98d3a34e9d21289f9d21a891d212899a892899a89a89f99f11f1962f88cf88f88acf88cf88f8cadf8bfcdf8cf88cf8cf88acf88df88f88acf8ccf8df8bccf8cf8cacf8ccf8cf8ccf8cf88acf8ccf8df88cf8cf8bccf88f8fccf8cf8ccf8cf8cacf88cf8cf8e117c414f8a06f8bf101be37c6117c4137c4117c6117c7063e3063e2063e2037c4f8c23f8823f8e117c406f8df1845f1845f101be27c4117c40c7c508be2063e3037c4f8c19f8822f8c0df1be20651203a2744a0744a89c194480e89d13065130651203a2544c1944eb81d13a260ca240744e89f853e3418f8818f8818f8c22f8823f8c0df13e381be27c606f89f160c7c6117c7037c4f8c0df1be2037c6f8c0df1be281be27c606f89f1831f181be27c40ca2611a240744e8983289046898468903289419448194480e89513832890328983289c0e895120651281d13a240744a890468983289c23448234480e89d13d0eaf5c19a76dea8474e8334e2bffef0669dfffffd5e6498b0751af860e372684a86587c8ccdd48c59074cb41b8c6e358ccc160d08070fffbd0c4fa03fa5daac20ffad4c5bcb45e01dd62d0d43164ad433164933165092b24cd09248c58164c93420c59164c1c160d09160ac923420923164583074cc2c03860e0b2562c79601d3070593070932b074c1d070ac5839614d4282b506a029840a61429cb0a585264489608990225644c8bd32040c8912b206408991225644b0f4c81032240c81032240ac816081608191205640b044afa7de796387de7963be7de95f4af858e7f96225703840e302c44b11f38c3cb1038c4e312b8f962070895c4b1d3e70b1c3e74fbd3ef4fbc3e74b1c3e74b1d3e70f9dff2c73caf9e58e79f79e7def95f7cafa58e95f0b1d2be16387ce95f7cafbe58e95f4b1d2be163a7de7f9f3857d2be963a57c2be95f0afa7ce15f4afa7ce1f7857cff2bef9f3be57dff3ef0b1d2c74afa58e963858e963858e963857c2be1f7a57cfff2be95f0b1c2be1639e57c2c70b1cf3ef4afa58e95f0afa58e9639e7ce163858e963a7de15f4b1cf312012035a04ac34ad1cd31cd3b635a05a0322b47131991992c09a982989a960398c650398c3612b0cb08edcc730730cd34418c1d4660c1d4664c48097cce70e70ce74484c480480c360360c734364c730364b039a65841b265841b2561b0580d92b0d93831d4acea7063a19d0ea707cc99d4ea63948958e0c703831c39bcc723931c244c703832994cb05232994cb052ff2c14cca6c3f2b29160ea56742b3a19d0ea6753a159d0acea56752c1d4cea7533a9d0cea74fff2b5015a80ad41e5850f9a8541ffe5850959d4b074f2c1d4ce8752b3a99d0e8570633a9d0ace8583a959d7cce874f2b3a99d4ebe56ea6e8ea56ebe56e86e8e86e8e86eaea6eae9e587537474375752b7537575374742b742b74f375752c3a1babaf9baba95ba961d0dd1d0add4add7cb0e856e858752b742c3afff9ba3a1ba3a79baba9ba3a161d4add0e8280b1427434258a02ba02ba1f2c501d050796280b14058a03a1a12c50796284ae80e8687fcae83cb14058a0f2ba1fff2c5095d016287cae87fcb1405741e74343fe74143e5741e74141fe58a1ffff2c5095d0f96283cb143fe574258a1f2c28206c48311e6abd8c1e65f197c667f137c67e36a8226d65a82263f197c661f11fc667b99ee662899ee64d41099aaea089b5966ab98fc63f11a7c63f118fc4fffbd2c4f003f3f1a2e20f7375467ab55881ff5a685f198d3834e18d3ad6618d3ad6518d3a6ab99aae34e959aae66aba820634e1aac57aac58d57369cd56cca34e4b0d3856d386d3ad39fc2c34e1b07b07997cb07197c3071c91307997c17c160be0b05f2565f26a26a26585122c28915a89f95a896bfcd44d44cc90890cac90cc90c90cd294908b04865648456484648448656486582423242242324224333e33e233e33e32b3e32c1f119f11f1160f8cacf88cf8cf88cf88f8cacf8cb07c667c67c467c67c6583e3037c4f8c18f8a06f89f1031f101be27c6117c7063e2845f1418f8a06f89f101be37c4117c60744a890328960ca2411a240744a89046898328981d12a240744e8904689c0e89d1284689708d1308d1283289e0ca27c0e89d12c2344f8328984689032897f81be27c40c7c406f89f1845f1845f17063e308be3063e3037c6f8c18f8822f8818f8822f8818f8f063e3831f101be37c60c7c406f8df1611d3bff8474eefffff7fc23a77fff42af314d42032684ee3268340355666c332966d3328556332832830fb43e2c21f1a1f9081908a1f1a771a019341a01a7705d99348c898c80c819341341a1015b98a68a698a615b9ac515b190887d187d07d987d108190819479595b995b8a698a68a61595b15aecad746bb5d95aecd76ba2b5d9ae976585d1ae974579035d2e8d74bb35daecd74bb344220d112f344220b088344a20b088344220e5e89344a20d12893e2e22c311f1b11f1311b13195b196388f8b88d8d8cad8cd8d8cd8988e2624e2620e2624e2220b113e5710711127131271113e58893898838988388883888938989f2b88ff388882b89389882b89388882b8938889389882c449c4c415dd7962ebceeeecb17477776775747757658bb2bba2c5d1dddd15dd962efcb1745777e577458ba2c5d9ddddf9dd5d95dd95dd162e8eeae8b176577458bafff2bba2bbb3bbbb2c5d9dd5d795dd1dd5d1dd5df95dd162e8eeaebfcb17458ba2bba2bba3babb3baba2bbb2bbb3babb2c5d15dd962e8b17658baf2c5d15dd7962efffceeeebcc3e21f88ccb92b88d23a48e8c85e162ca10bc31838f4ed9a4ca17c9924617c987c67f119fc43f1187c63f11613e231f8cbe2309087042b259cc7050908cfe21f8cac7e230f883e332f88be230f8cbfffbd2c4e803f01956de0f73748691b259c1fedab8e231f887e32c07c6503e3987c63f1187c41f1987c41f1187c61f19587c7e7f17c657f19fc5f179fc7f115fc458f8bcafe22bf8bfcb1f11c852195c865890cb1211c872116242390a43390a42f390e432b90fcae42390e42f390a43390e42390a42f2c4865890ce43908b0dc961b836e1b836e5b92c370586e4db96e0adb936e5b92c37256dc1b72dc9b70dc161b836e5b836e5b82b6e0b0dc1b72dc161b92c372586e0db86e7cb0dc95b7056dc961b92c3726dcb70586e7cb121962422b90cae422b90cae43390e43390a432b90cb121f9c8521f9c87219c8521f95c86721487e572116243390a42f2c4865721ff95c8458908e4390bfcae43390a43390a432b90cb1211c872116242390a432c485e72148658908e4390c1890e0c48508a4284521c1890a0c484114840c484069092181a4348508a4383121422908189082290a0c4850624308af808af8ffe0c5f1fff8457c0457c5500002f317f4b633b769735a12c23ffd655317f7f1331bb28365417f312125f325e619317f98c331a17e317e31b3b294b62c18d19611611a5616199db0e698bf8bf9a5b8bf1a5b25b998d98d18bf0bf998da5b18bf18d98bf25b198d98d98bf18d1a5b18d958bf95a5b9afcbf9afcbf79617f2b5fcf1a5f8d7f5f8d7e5fcb0bf95afe6bfafe56bf1afebf1631b2b480b0901625f2c24269024072fa40690242690a42690a40690a406902406904bc58483cd2097cad202b483cd20484ad203481212b480d20484ad21f397920f2b487cb0909a429015a4256901a42901cbc901a429095b9be66c1b066c9b2566c19b0e6960d82b364cd9360dcd360cd8360b06c159b058364cd9363cb06cc237ec197ee11bf60cbf046fde11bf60cbf846401190846400c9081c86420c90046420721900464007219081c86400c9003243039048607219060720900464306484192106480237e832ff065fe11bf40efd7e08dfc0eff7f08dfc197f81dfefc0cbf81dfafc11bf40efd7f065fb065fc197fffffabfffff065f90403cc4102950c62707e0d6dd07e4c83d1044ce8107e0cc6a2954c6271898cc6a1044c41120f4c6541950c7f00c68c411189cc62620f4cc6b20f0d2ddfc4d9505f8cc68c68ad044c7e2950e0f47e4e0f20f0b0c4fffbd2c4ec813099a4d64f76b556e6315a95ff71bac56c4e56c4e63f23f25682068223f263f28226c4c3f2581f8341141131f91f92c0fc16189cc7e1040ac7e0ac7e4c7e07e0c7e07e7cb0821e563f0563f062422426240240624224256240581202b12131201212c090960480c480480ac484c484978c480484ac480c484978c484487cc480484b02425825ff2b1212bbff9dfefe77fbf95dfcb17e3bfdffcefd7f2c5ffcaefc77ebf1dfafe58909c824258907f9c86425720390c80ae4058901c86425720390480ae4057212b90f95c84e4321f2b90962427209095c80e41202b901c86427209016240720909c864257202b909c82405721390480b1212c480b17e2c5fcefd7f2bbf95dfceff7e2bbf162fe577eff2c5fbcefd7f2c5fcaeffe58bf95dfffcefd7e2c5f8b17e2bbf9c8243e589096241e5890962427209016240720901c864057202b9016243fe589096242721909c8642589095c83ce41212b9015c80e41212c7e3fcaff3fffffffffffe57f9ffffffff2c7e55f314d6f4319169c334141731d5320308946c341734134170ba33211d5332112f2c0b198f18711897990984413d984493d9a0b85d98c80c818c81349a995b1a98a69a98a6962b633ea1133ecfa2c1f467d9f458537cd4d534aeb62b534c894b8c894b8d2e4b8b0441a5c44f9b1b11b1311b13115b11b1f11b1b11b1f19b1711a2d41a2a279d42295a21a2a296110ea510ea510d1510d8d8cb0c4586336263363632c311b1319b13115b11618cd898bcae20ae27ffcae23fce2223ce2224b111e71311e577658baff2c5d95dd962ecb17458ba2c5d95ddf962e8aee8b17458bb363622b63362632b63362632b63362622b632b622c311b1b11b1b11f1b115b11b1b195b179b13196188b0c66c6c67131058892c44795c495c41c4c495c49c44496224ae23fce2623cb11258882b892b89ff2b88fff2c441c4441c4c416224e2624b112571057107131271311ffe5712571258883888938989f2b892b89ff38889389892c449c4c4f96119a39a1cdee361e4a6d3914c8ff336348ff31534d6c2b563cc6191d5cc4db0978ca5507e4d09920f0c8022ae4cd6c1534c2980a60cdef1ba0c3660d98c3671ba4de31e28aaf187e68f1a6f1af1a54a6d33663672b6e936e836734714712b8ff38fffbd2c4e483ecd556e20f776ec706aad981ff75f8ff47038ff4712c47f1594c194caa6194c94c994c14c194caa6194c94c15a08958fc18fc0fc1a080fc9b132089a08a081a088fc158fc98fc8fc98fc8fc98fc0fcf98fc8fc9607e4c7e07e4b03f0563f2581f934101f831f91f92b41031f841031f91f82c0fc1607e4c7e5044c7e47e4ac7e0ac7e0d0407e4c7e47e4d0447e7cd0447e0c7e07e0ac7e0c7e07e0c7e47e4b03f2563f263f23f063f03f0581f9ff2c3f2587e0adf82b7e7cdf97e0b0fc1bf0fc1bf0fc9bf2fc795bf056fc961f837e1f937e1f9f2c53258a64e99a67ce99a64ae992c53274c53258a64e99a64e99a60b14c1d314c95d3274c53074c53074cd32574c95d3274cd3258d9bcb1b3963672bd9fcaf662c6cc7b36ce7b3ece57b3ff9ecdb316367f2c6cc57b3795ecc58d98b1b315ece57b315ecc57b395ecc58d9cb1b3963672c6cc58d98b1b31ecfb3ff95ece58d98af66ff3d9f663d9b662c6ce58d9bcb1b395ecc58d9caf66f2bd995f31a74d5738745265324902f836f8cfe233f8d3e33674ca43367494a23248c2f930be02f831f893e334f8c7e232488c392a0c1c661c124657ee67484a267485ee46a25ee47ee4a2457484748548656fc667c6fc456fc4587e23512a422c5211a89d211a892899a89a8919f1bf1943e2f99f19f1160f88acf88df8df8fcb07c66fc47c7e583e22c1f1f9a52121192125219219219a5225299219211921a52f9a521219a521211a52121997c97c960be4cbe5838cbe0be4acbe4acbe0cbe4be4acbe0cbe4be0b05f265f05f3e577c1df17c1df37c15df1e77cdf058be7cef9be4ef9be4ef9be4b17c962f92c5f2577c95df058be4ef8be4b17c1df17c79df37c962f83be6f83be2f82bbe4b17c795df0577c962f8f2c7c47f17c7e58f8bcb1f115fc7e58f8bcafe22c7c47f1fc7fe7f1fc657f1f963e33f8be33f8fe22bf8cafe32bf8ffcfe2f88afe22bf8bcfe3f88fe3f8cfe2f88afe32bf8bcb1f1163e32bf88b1f17963e2fff3f8fe32bf8cb1f11fc7f1963e3ff2c7c5e7f17c5fffffe7f1fc7fe7f17c657f1f963e3ff2bf8cb1f179a08f40992f5881a6d30c9b137401a08a089545f8b131a56ca8731afe2696ecaa73182fe68234aa63f10787078c4e74a83f0563f063f0c4e70798d674a8820fffbd2c4e783f1f556c80ffbadc667b3da41ee572078d43f06822820682082056c4fe682082063f23f0584112c0fc158fcf98bf0bf18bf8bf198d8bf960c68acc6cac5fffcd0447e4c7e07e3fcc7e5044b03f27f8fc163f057f93fc7e7cb1f92bfcff9fe3f27f9fc9fe7f257f82c7e4b1f83fc7e0aff3ffe58fc1fe3f2577f2c5f8eff7f2c5f8efd7e3bf5f8eff7f3bfdffcb17f2c5fceff7f3bf5fbcff1f82bfc1fe7f258fc1fe3f058fc9fe7f07f8fc79fe3f3e7f8fc15fe0b1f92c7e3ffcb17f3bf5fcefd7e3bfdfceff7eff3bfdfceff7ef2c5f8efd7f3bf5f8aefc58bf162fc77ebf95dfcaefc58bf60cfc047f207f8fc833f1067e211fcc0ff3f9c23f9067e611fc033f011fcc19f808fe60cfc033f108fe419f9c0ff1f9847f007f8fc847f011fcc19f803fcfe419f8c0ff3f9c19f8067e60cfc047f303fcfe703fc7e607f8fc423f808fe3847f00cfc033f211fc047f007f9fc847f381fe3f3833f00cfc833f3c23f9833f103fcfe40ff1f85f34b617e36544b7317e7f1378c69630d95a03b2898d331b7f02b39c325e619325e121375712131cd3b732c20d931cc697315c0a02c16b990d8ae198da5b98bf25b998db2a18bf18d9a43ce9a432f9a40901a412f9f39ce9f3b2f9f392f1a42901612034839d2c24269024072fcbc690242690a406d96c9b65b26d86c95b60db0d836c360db2d92c360f98d82be695b60b1cd36cb63cb0d936cb64b0d82b6c1a814056a1350283cebaa12b5015d73cad426a0509a814275cae1624057212c483fcb1212c483cb121fff2c483cd42a0350a80d415d350a80d42a0350570b0a0f3ae574ad4258509a85426a15015a84d42a0350574b0a02c364db2d836c364db0d936c360db0d82b6c1b61b06d96c961b3e6d96c1b65b06d86cf95b64db0d836c360b0d836cb64adb258e6961b1e586c95b64db2d92b6c15b64adb26d86c961b26d96c95b64b0d92b6c961b06d86c795b60b0d92b6c961b2586c9b65b1e589016241e5720390480b1202c484e4120390c83cb120390c84b120390c80e43212c480b1202c484e43212b909c864057212c484b1212c483ce4321000fe62a690046401957256d7c1a044401990048111a046401158532620814aa56208987383ab184bc3ab986343f81931a32a9863432a98c4e41e9907fffbd2c4ea03b2f156da0f7790863b335a4dff5618a2081882220898a9a14c9900655c985328111853214cf9c014019aa694c994c94c194c14c994c14c1aa62a6194c94c960a64c7e47e4ac7e3fcd0447e4b08225825e325e121312025f2b121325f25f2c090960978c4844860cfc847f211fc01fe3f011fc81fe7f20cfc01fe7f00cfc047f20cfc01fe7f00cfc833f20cfc847f103fc7e60cfc047f207219001c86420721900324108c800e432108c84192006480232103904840e4121833f011fc01fe7f103fc7e3e0cfc033f007f9fc047f011fc01fe7f007f8fc419f908fe308fe211fc047f00cfc847f207f9fc847f20cfcc0ff3f8067e7067e023f808fe40ff1f9067e211fc033f011fc833f3833f303fcfe3067e00ff3f908fe019f9833f20cfcc23f903fc7e019f808fe023f8e07f8fc40ff3f8833f1067e423f9847f207f8fcc19f9847f207f8fc033f211fc847f00cfc033f1a99d67fa933ccc957f313fea3d51f6a55f31a7069c3183d26534990c3934f8d3e236f88fe235f8a7e232f88fe331ce038c31588cb934a59673bc724235635633739738338f90f34a470437054a5324324237e3be32b7e333e2be337e27e32b3e333e23e333e33e233e37e22c2899a895211a89d21f0b0a2456484648648456484648694a648648456484582422c1211921a52159211592199219211592119211211fc5f17f95fc457f195fc5fe7f1fc658f88ef9be0b17c1df37c1df37c1df17c9df17c15df2577c15df277cdf277c5f277cdf3e577c962f93be2f9fff2bbe4ef9be4aef93be2f8ff2bbe0db96e0adb836e5b836e38e36e78d36e1b82b6e4db96e3cdb86e4f8f6e4db96e4db96e4db96e0adb836e1b92b6e0e4390cb12115c84721c84572179c87211c852195c84721486721c86721486572195c865890cb12179c87219c87219c872115c8477c5f0577c15df2577c95df077cdf0577c95df258be7cef8be4ef8be7ffcaef83be2f9f3be6f82bbe4b17c962f82c5f1e577c15c867214845890bfce4290fce43908e4390ce4390cb1219c85219c85219c872116242390a43390a42f2b90bfcb121ff95c87e721487e62898a2462891ee462890a26541f88c3e27f88c5121444f3c2144ccf4f0be4c2f93d3ccf72674cc5133dccd57a4990b061c985f217c9ff1fffbd2c4ee03f47d56cc0ffba9c6beb5d901ff59b0bf19df11f11bf1df19c9117c94922997c97c1c91b07645144c74874847ee6a25c3a4251335125133a4251335135132c5f19bf1bf19bf11f199f11f11bf19f199f19f195b07997c17c997c97c9b07307960be0cbe0be0cbe4be0b05f3e67c47c467c47c6567c667c47c4583e22b3e32b3e22b3e333e33e28457cc22be40d7caf98457c01af85f211c1e115f0b062f903c1ebe018be418be00d7c2f8062f9035f2be018be40d7c2f908af908af8062f9062f881af85f0115f006be57c8317c01af85f2115f2115f20783d7c0317c0457c0317c8457cc198380d7caf9035f0be606be17c40df13e3063e2037c6f8f08be2c0df13e3037c6f8a0c7c406f89f1031f16117c5037c4f8818f8c0e89d12c2344819448194482344a11a260ca2411a260744a894234482344e11a240744a89f06512c1944e117c606f8df1845f1845f140df13e3063e2f063e308be3063e3037c4f8f063e2063e3063e2063e308be2831f1031f142344aaf83289ff06512846897fffff08d130651354c414d45332e313030555555f2c113a6ce9be046f81a9467a1d687668aaa2a87e79a2a86d07341e6491924469329244513e39afc65f199484f8199ee6a5118a262899a94428999ee628918a262891be062891a94452118a2452199486a51191388aa1913844e9a2aa44e9913844e9a2aa44e1a2a844e9913a44e9511542b2270a1f14aef8cacf88a1f17cb0fc4585122b5123a43a43f2b513f35125132c28981d13a240744a8904e8981d12a25c0e89d1308d1203a2744c2344c1944819448194480e89d1275c2344b03a2744c0e89d1208d120651284689e0ca2703a2544c1944a0744e89c1944c1944e11a240ca2411a260ca260744e894194482344a0ca2708d120651208d1206513df03a2544e0ca260ca2613a2508d1203a2544982344fc23449ffc19a770669ce11d3b08e9c08e9c08e9c8474ef68334e230669cf8334ee11d3bedfe0cd39ff84b4e0474e3c19a737fc19a774fb7ffd1a8ac5ca3172d7853ebdc5cb2b5e0cd19b4668a2f083bc90bb3285d90ca6d29b0d1730d98e3545e10d7855e08c47023f8db3711c4a11fc32ec8bb23466cbb234668bb23172978328bc20ad7853466d19d32eccbb334674bb22c233450bb2fffbd2c4d583e9c98ec40ffad44632b35881ff5a9879a3345d915a336562e5128b9671fc8e068e28e068e08e068e31fc568e271fe8e25836733666e82c1b3959b3159b3159b39b749b3160d9cacd9ccd9cd9fcb06cc566cc566cc66cc6cffe566ce566cc566cc66ce6ce5836633666e93366367336736636e83662b36636e86e82c1b3960d98231c4231c4231c0191c4191c4231c0191c4191c0231c58191c20c8e2118e20c8e00c8e1038e11c0231c4231c4231c40e38471c191c6071c638846388463840e38c70038e31c00e38c70038e11c0231c40e3847108c71c0e3847181c718e00c8e2e0c8e2118e00c8e18323881c708e0118e211b940cb97f03b9572c2372af065ca81dcab97f832e5f03b9572c0ee5dca08dca03b9772c2372f81dcbb9411b940cb97fc1972e11b940cb94e11b940cb95ededde0cb956846e5fff09dcae12b960000001fcc2994b64d58f35b0cd6f1530d2d835b0d0220a60c31b2ca4c17e05f8c4b605fcb00bf18c303ab18eac30c98822208960c6b31040a55319544b630c6831b3195031b3200c29831534ab830a648022a0532581534c2990a60ac54c2c0532562a69602982c0a98614c05305640116031b305fc4b72b0c68b018d16031b305fc17ff2b7e3cadf92c3f0587e0df87e4df87e4f1b5fcb0bf1afcbf79617eff2c2fe6bfafc56bf95a42690a4072fa4272fa40690242690a42690242690240572f9a40901a409015a42690a40690a40690cbe690a4269024256901a40901a40909a42909a412f1a41ce9a42909a4090961202c5f8aefc77ebff9dfafde577ff3bf5f8efd7e2c5fbcefd7f2c5f8b17ef2bbf15df8efd7f3bf5fbcb17e2c5f8eff7f3bfdfcaefe77fbf162fc77fbf1dfefc58bf795dfcaefe77ebf1dfafe77fbf9dfefc58fc1fe7f057f93fcfe4b1f82c7e4aff1fe58fc95fe0aff258fcf9fe3f258fcff95fe0aff1e58fc95fe0b1f92bfc1fe3f257f83fc7e0ff1f8f2bfc9fe7f3e58fc9fe7f257f82c7e3cff3f92c7e4b1f83fcfe7cb1f8f2c7e0ff3f82bfc9fe7f257f9ffffcbf79dde6bf76bb87ef58ffffef3cf9bfdd65909587c663f127c65455e4d2641838c9224994c9221830c66c0ca4c0fa0ca4cae20e34c5632438cbc71290cbc638a4ad2642c05f0617c8c1c787124465f2c1fe7485485d3f72fffbd2c4ff83b74592d26ff796ce783199c1ff75a8a433f73512314c4212c15b9a1095b195b15b960be4cbe0be4cbe5838d838be4d838be0c6e4e30ce386e4d58ce38b071e563706370372582422c252960908c90d297cac90cc908908ac90cadb936e1b936e38c36e1b82c37056dc1b71c61b72dc9b70dc9b70dc162f9f2bbe4ef9be7caef92c5f3e577c15df058be0aef8390a422b908ae422b90cb12196242f2c4845890fce43908e4390ce4290ce43908db86e0db96e4db86e4b0dc9b72dc161b936e5b836e5b936e5b936e1b92c370586e0b0dc1b72dc95b7256dc1b70dc1b72dc9b72dc1b70dc95b7056dc9b70dcff9b72dcf9b70dc9b72dc15b70586e0b0dc1b70dc95b726dcb71e586e4b0dc7fffffffff95fc658f8fffffffcafe2ffffff390a43390e42f2b90ce43908b12195c86721c86721c85e5721796243f2c4845890cae422b908e4390ce4290cae422b908e4390cb1217fffff962f92c5f3fffffffffe58be7ffffffffcb17cd5f2c0a266f813e066289b3a462529c5265e39c50512651a4ca61c96096631294bc632f1cbc731294bc630e30ae532b8c90f3158c38f32438ae33158c1b82b0e34a8491985f04929924630798c1e3079978c71498948121184847141589486289948665210a2462898a26581448aca432c0a2462890a2456289958a27e58144cb1f17ff963e23f8fe3f2c7c5e6dc3726dcb726dc370586e4db86e4db96e4b1c79b70dc9b72dc1b72dc1b72dc9b70dc1b72dc9b72dcf9b72dcf9b72dc95b70586e0db96e0b121162432b908b12115c865890cae43fff2c486572195c85e6dcb706dcb706dcb726dc37256dc15b7256dc9b70dc161b92c372586e4adb8ff36e1b936e5b8ff390a422b908ae422b908ae432b908e4390ce42908e4290ffcb1211c8521962422c484721486721c86572196242ff2bbe3cb17c15df058be4aef82bbe4b17c95df258be0b17c9df17c79df37c95df277cdf258be3fcef8be3caef82bbe7ce4390ce42908ae42390e43ff2c48457211c8721962432c485e721c845890bce43908e42908ae43f2b90cae422b908ae43f390e432b90cb121e11a244c8532310ce157e3496d8d93103fcc48c61f831931cad5270ae8192a1276cb51950b27064a9958b034403a095cd245b3b7114c8a46353c2ce1fffbd2c4ea83f37d5cce0ff6d7c60934de41cd6691444353298d52a832342b64c8a324908d5644353aa8444a1cf46b3f9a6506a968b563fea8af41bb1a648798f1e63c898c266f07155e133b3428486c913c33670cf9a295866cf19e39485681a081a081a1e129c677e57e1a07cacd338ad120ecd23499f1de8cc44d0f8ce46e19e819c990a0fe52909c5101a089f871a3e54287b64d19551340e34117fed19e91222672049f133f1b24748b928d4a8f709b9371d2478a3a26e891e375d22fc75f375b28f33ce909bd76cecbc9301f81dc82ceab0a9713b93676594f58edb49da3bef3c2f3bb03b6b1cbdf772e8cf0b4730257481e26ecdc70de789b62ab46d344ae916a6e3981b8f916a586c6b29d8d916c6f3a6eb84df9bed5b98379ee61f52c72bd3d3dc87e821ca177e00791c393b87227f2cd69c7ddc7a067703cc3b0ee47dafcbe61fbad63ee01800661f807c0111c7079e00600181e7819600647aa47e30c10cc641634bbb8df69a30a24cd04093289c8cae19347bb8e0aea368b28d8ea232684cca8573291ccd40a33350ecc624a30995cd890738837cd083103010c969c366b18d326230e03d1b0c1a1c317908ca25031f8502c0b2c898684248150e4120d48b4e061269366e3a6e4269a868803069b4e9c149d4e930374461238afa008c638402091a80889ac8840afd213404097154d5215a622b3ded69d6804b9a641a640282a5500d598d64c98100a470c870a802590fcd274de84d350cb014ba7df57e00281aa52ce5e2c55733dceccb1da81986f825237da3552354c4d752de4b60161a862611a68063251aa618a71c381bcaa78ad160060880a19d761ac460168cb38280a22ba4826407294a76971400b370db81204d8111b8f344f102a8e2e36a8dae0369545055d5692f2ca619932e67782e235a17eb5aa3a58661da90d3b4ca588b5d4e50214d093204b8ac74401342cd035225f635d0f3639a0ba51c4e648a6f9554c0b385ced7393cb8cf34a6970a6b5ba5a6ed5a5a5d534bad56954bad5594cb6f5694cb795a354dda58cd3674b19b3a954bad56954bad5594cb7095592028b51774bdc5f541a2a0287884f4281658d330cc64c37028f90c0237c00d19e686807c2e76e46b7a60fc415882830e5341837c7077c6a1e61ac1664858156418b18fffbd2c4f28234520cec0e67178619bf8c199c3fa82898c416f157c0b2aa1a08eb2a42498c798ab00190bb440d8a34055cca2823337443517315c0a3e43008df023463a6680c44a04145d541a56555050f50c51751550e50d5165655505575344d90148c4b04b844f2580cbc28c30941d0128808c0c28a9890e38611942802e5abb7325d56e5d9a765618b8414088443052520e8c4002e3913005532a0c5b0af083a29c02e4d0e01ac3546c3805c20892c065e166015260121a3178ad6bb7265da54a5c10a804031921214708210972048e1862c885c42852520e8c4422dda0115e3427f6028360882dea6429528dc91a8ec94a92891e98050305180050a985124a81d488085970e60634c20061c54c4871c3084a5a82dfa5123ea732c0a8f2db5805575e0d11b0ae972bcbb522ad2a5c49513d288a9280bb96c32d04749fc894c24d10a7523635c282d52c08ee9955ca55d2fae14ec0c70e94c414d45332e3130305555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555";
774
- var Uc = Object.defineProperty, Zc = Object.getOwnPropertyDescriptor, A = (c, e, a, t) => {
775
- for (var f = t > 1 ? void 0 : t ? Zc(e, a) : e, o = c.length - 1, d; o >= 0; o--)
776
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
774
+ var Uc = Object.defineProperty, Zc = Object.getOwnPropertyDescriptor, I = (c, e, a, t) => {
775
+ for (var f = t > 1 ? void 0 : t ? Zc(e, a) : e, o = c.length - 1, r; o >= 0; o--)
776
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
777
777
  return t && f && Uc(e, a, f), f;
778
778
  };
779
- const y = me.noConflict();
780
- y.setLevel("info");
779
+ const u = me.noConflict();
780
+ u.setLevel("info");
781
781
  const E = "cb_";
782
782
  class j extends fe {
783
783
  constructor() {
784
- super(...arguments), this.actionIdCounter = 0, this.wsClient = null, this.replyMessage = null;
784
+ super(...arguments), this.actionIdCounter = 0, this.wsClient = null, this.replyMessage = null, this.streamingResponseInProgress = !1, this.streamingResponseBuffer = null, this.streamingResponseTagStartPos = 0;
785
785
  }
786
786
  // this is called at startup
787
787
  setSetting(e) {
788
- y.info("appState: Startup: setSetting", e), this.setting = e, this.initBot().catch((a) => {
789
- y.info(`Exception during bot initialization: ${a.message}`);
788
+ u.info("appState: Startup: setSetting", e), this.setting = e, this.initBot().catch((a) => {
789
+ u.info(`Exception during bot initialization: ${a.message}`);
790
790
  });
791
791
  }
792
792
  // set language
@@ -800,7 +800,7 @@ class j extends fe {
800
800
  async initBot() {
801
801
  if (!this.botSettingsInitialized) {
802
802
  const a = `${this.setting.url.startsWith("localhost") ? "http" : "https"}://${this.setting.url}/api/bot/settings/${this.setting.orgId}/${this.setting.botId}`;
803
- y.info(`Getting bot settings at ${a} ...`);
803
+ u.info(`Getting bot settings at ${a} ...`);
804
804
  let t = null, f = null;
805
805
  try {
806
806
  t = await fetch(a, {
@@ -808,20 +808,20 @@ class j extends fe {
808
808
  "Access-Control-Allow-Origin": "null",
809
809
  "X-Enegel-Signature": this.setting.botId
810
810
  }
811
- }), !t.ok || t.status !== 200 ? y.error(`Failed to get bot ${this.setting.botId} settings: ${t.status} ${t.statusText}`) : f = await t.json();
811
+ }), !t.ok || t.status !== 200 ? u.error(`Failed to get bot ${this.setting.botId} settings: ${t.status} ${t.statusText}`) : f = await t.json();
812
812
  } catch (o) {
813
- y.error(`Failed to get bot ${this.setting.botId} settings: ${o.message}`), f = null;
813
+ u.error(`Failed to get bot ${this.setting.botId} settings: ${o.message}`), f = null;
814
814
  }
815
815
  if (this.botSettingsInitialized = !0, this.botSettings = f, !f) {
816
- y.error("No bot settings available - bot disabled"), this.disabled = !0;
816
+ u.error("No bot settings available - bot disabled"), this.disabled = !0;
817
817
  return;
818
818
  }
819
- y.info("Got bot settings - bot is enabled", f), this.disabled = !1, this.setting.welcomeMessage = (f == null ? void 0 : f.welcomeMessage) || "How can I help ?", this.setting.engageMessage = (f == null ? void 0 : f.engageMessage) || "How can I help ?", this.setting.engageTimeout = (f == null ? void 0 : f.engageTimeout) || 5, this.initConversation(), setTimeout(() => {
819
+ u.info("Got bot settings - bot is enabled", f), this.disabled = !1, this.setting.welcomeMessage = (f == null ? void 0 : f.welcomeMessage) || "How can I help ?", this.setting.engageMessage = (f == null ? void 0 : f.engageMessage) || "How can I help ?", this.setting.engageTimeout = (f == null ? void 0 : f.engageTimeout) || 5, this.setting.splitMessagesAtBreak = "splitMessagesAtBreak" in f ? f.splitMessagesAtBreak : !1, this.initConversation(), setTimeout(() => {
820
820
  this.showEngagePopup();
821
821
  }, this.setting.engageTimeout * 1e3);
822
822
  }
823
- this.connectWs === "true" && (y.info("appState: connectWs is true"), this.getWsClient().catch((e) => {
824
- y.error(`Exception during ws client startup: ${e.message}`);
823
+ this.connectWs === "true" && (u.info("appState: connectWs is true"), this.getWsClient().catch((e) => {
824
+ u.error(`Exception during ws client startup: ${e.message}`);
825
825
  }));
826
826
  }
827
827
  initConversation() {
@@ -844,25 +844,25 @@ class j extends fe {
844
844
  initStartupForm() {
845
845
  const e = _e(null, ["startupForm"], this.botSettings), a = _e(null, ["startupForm", "name"], this.botSettings);
846
846
  if (!e || !a) {
847
- y.info("Startup form not present");
847
+ u.info("Startup form not present");
848
848
  return;
849
849
  }
850
850
  const t = _e(null, ["startupForm", "fields"], this.botSettings);
851
851
  if (!Array.isArray(t) || t.length <= 0) {
852
- y.info("Startup form has no fields");
852
+ u.info("Startup form has no fields");
853
853
  return;
854
854
  }
855
855
  const f = `${E}${this.setting.botId}.${this.conversationId}.form.${a}`, o = localStorage.getItem(f);
856
856
  if (o) {
857
- let d = null;
857
+ let r = null;
858
858
  try {
859
- d = JSON.parse(o);
860
- } catch (n) {
861
- y.error(`Failed to parse stored form data: ${n.message}`), d = null;
859
+ r = JSON.parse(o);
860
+ } catch (s) {
861
+ u.error(`Failed to parse stored form data: ${s.message}`), r = null;
862
862
  }
863
- if (d) {
864
- this.sendFormData(a, d).catch((n) => {
865
- y.error(`Error when submitting form: ${n.message}`);
863
+ if (r) {
864
+ this.sendFormData(a, r).catch((s) => {
865
+ u.error(`Error when submitting form: ${s.message}`);
866
866
  });
867
867
  return;
868
868
  }
@@ -872,12 +872,12 @@ class j extends fe {
872
872
  showEngagePopup() {
873
873
  if (this.open)
874
874
  return;
875
- y.info("Engaging User !"), this.engage = !0;
875
+ u.info("Engaging User !"), this.engage = !0;
876
876
  const e = (o) => {
877
- const d = new Uint8Array(o.length / 2);
878
- for (let n = 0; n < d.length; n++)
879
- d[n] = parseInt(o.substr(n * 2, 2), 16);
880
- return d;
877
+ const r = new Uint8Array(o.length / 2);
878
+ for (let s = 0; s < r.length; s++)
879
+ r[s] = parseInt(o.substr(s * 2, 2), 16);
880
+ return r;
881
881
  };
882
882
  let a = new Blob([e(qc)], { type: "application/octet-stream" });
883
883
  const t = URL.createObjectURL(a);
@@ -890,7 +890,7 @@ class j extends fe {
890
890
  if (this.wsClient)
891
891
  return this.wsClient;
892
892
  const a = `${this.setting.url.startsWith("localhost") ? "ws" : "wss"}://${this.setting.url}/api/bot/connect/${this.setting.orgId}/${this.setting.botId}/${this.conversationId}`;
893
- return y.info(`Initiating ws connection to ${a} ...`), this.wsClient = new Ic({
893
+ return u.info(`Initiating ws connection to ${a} ...`), this.wsClient = new Ac({
894
894
  url: a,
895
895
  orgId: this.setting.orgId,
896
896
  botId: this.setting.botId,
@@ -903,7 +903,7 @@ class j extends fe {
903
903
  switch (this.lastConversationUpdate = Date.now(), e == null ? void 0 : e.type) {
904
904
  case "message": {
905
905
  if (this.replyMessage)
906
- this.replyMessage.data.text = e.text, this.updateMessage(this.replyMessage, ""), this.replyMessage = null;
906
+ this.streamingResponseInProgress ? (this.finishStreamingResponse(e.text), this.streamingResponseInProgress = !1) : (this.replyMessage.data.text = e.text, this.updateMessage(this.replyMessage, "")), this.replyMessage = null;
907
907
  else {
908
908
  const a = {
909
909
  type: "text",
@@ -919,7 +919,7 @@ class j extends fe {
919
919
  break;
920
920
  }
921
921
  case "message-chunk": {
922
- this.replyMessage && (this.replyMessage = this.updateMessage(this.replyMessage, e.text));
922
+ this.processStreamingResponse(e.text);
923
923
  break;
924
924
  }
925
925
  case "typing": {
@@ -939,6 +939,42 @@ class j extends fe {
939
939
  }
940
940
  }
941
941
  }
942
+ processStreamingResponse(e) {
943
+ this.streamingResponseInProgress = !0;
944
+ let a = e;
945
+ if (this.replyMessage) {
946
+ if (e.indexOf("<") !== -1) {
947
+ this.streamingResponseBuffer = e, this.streamingResponseTagStartPos = e.indexOf("<");
948
+ return;
949
+ }
950
+ if (this.streamingResponseBuffer) {
951
+ if (this.streamingResponseBuffer += e, this.streamingResponseBuffer.length < this.streamingResponseTagStartPos + 4)
952
+ return;
953
+ const t = this.streamingResponseBuffer.indexOf("<br>");
954
+ if (t !== -1) {
955
+ if (this.setting.splitMessagesAtBreak) {
956
+ const f = this.streamingResponseBuffer.substring(0, t).trim(), o = this.streamingResponseBuffer.substring(t + 4).trim();
957
+ u.info(`BREAK: Splitting the message: ${this.streamingResponseBuffer} >>> prev: ${f} next: ${o}`), this.replyMessage = this.updateMessage(this.replyMessage, f), this.replyMessage = { author: "assistant", type: "text", isThinking: !1, data: { text: "" } }, this.addMessage(this.replyMessage), a = o;
958
+ } else
959
+ a = this.streamingResponseBuffer;
960
+ this.streamingResponseBuffer = null, this.streamingResponseTagStartPos = 0;
961
+ }
962
+ }
963
+ this.replyMessage = this.updateMessage(this.replyMessage, a);
964
+ }
965
+ }
966
+ finishStreamingResponse(e) {
967
+ if (!this.replyMessage || !this.streamingResponseInProgress)
968
+ return;
969
+ this.streamingResponseInProgress = !1;
970
+ const a = e.lastIndexOf("<br>");
971
+ if (!this.setting.splitMessagesAtBreak || a === -1) {
972
+ this.replyMessage.data.text = e, this.updateMessage(this.replyMessage, "");
973
+ return;
974
+ }
975
+ const t = e.substring(a + 4);
976
+ this.replyMessage.data.text = t, this.updateMessage(this.replyMessage, "");
977
+ }
942
978
  addActions(e) {
943
979
  if (Array.isArray(e) && e.length > 0) {
944
980
  const a = e.map((t) => Object.assign(t, { internalId: this.actionIdCounter++ }));
@@ -954,10 +990,10 @@ class j extends fe {
954
990
  }
955
991
  }
956
992
  async sendMessage(e) {
957
- e = this.formatMessage(e), y.info("Send Message:", e), this.messages = this.messages.concat([e]), this.lastConversationUpdate = Date.now();
993
+ e = this.formatMessage(e), u.info("Send Message:", e), this.messages = this.messages.concat([e]), this.lastConversationUpdate = Date.now();
958
994
  const a = await this.getWsClient();
959
995
  if (!a) {
960
- y.error("Error - failed to obtain ws client"), this.replyMessage = null;
996
+ u.error("Error - failed to obtain ws client"), this.replyMessage = null;
961
997
  return;
962
998
  }
963
999
  a.sendMessage({
@@ -1000,7 +1036,7 @@ class j extends fe {
1000
1036
  // Submit current form data
1001
1037
  async submitForm(e) {
1002
1038
  if (!this.form) {
1003
- y.info("submitForm: No form is active - ignored");
1039
+ u.info("submitForm: No form is active - ignored");
1004
1040
  return;
1005
1041
  }
1006
1042
  const a = `${E}${this.setting.botId}.${this.conversationId}.form.${this.form.name}`;
@@ -1009,7 +1045,7 @@ class j extends fe {
1009
1045
  async sendFormData(e, a) {
1010
1046
  const t = await this.getWsClient();
1011
1047
  if (!t) {
1012
- y.error("Error - failed to obtain ws client");
1048
+ u.error("Error - failed to obtain ws client");
1013
1049
  return;
1014
1050
  }
1015
1051
  t.sendMessage({
@@ -1019,35 +1055,35 @@ class j extends fe {
1019
1055
  });
1020
1056
  }
1021
1057
  }
1022
- A([
1058
+ I([
1023
1059
  V({ prefix: E }),
1024
1060
  M({ value: "en" })
1025
1061
  ], j.prototype, "language", 2);
1026
- A([
1062
+ I([
1027
1063
  V({ prefix: E }),
1028
1064
  M({ value: "light" })
1029
1065
  ], j.prototype, "theme", 2);
1030
- A([
1066
+ I([
1031
1067
  V({ prefix: E }),
1032
1068
  M({ type: Boolean, value: !1 })
1033
1069
  ], j.prototype, "open", 2);
1034
- A([
1070
+ I([
1035
1071
  V({ prefix: E }),
1036
1072
  M({ value: "false" })
1037
1073
  ], j.prototype, "connectWs", 2);
1038
- A([
1074
+ I([
1039
1075
  V({ prefix: E }),
1040
1076
  M({ value: Ce() })
1041
1077
  ], j.prototype, "conversationId", 2);
1042
- A([
1078
+ I([
1043
1079
  V({ prefix: E }),
1044
1080
  M({ value: 0 })
1045
1081
  ], j.prototype, "lastConversationUpdate", 2);
1046
- A([
1082
+ I([
1047
1083
  V({ prefix: E }),
1048
1084
  M({ type: Array, value: [] })
1049
1085
  ], j.prototype, "messages", 2);
1050
- A([
1086
+ I([
1051
1087
  M({
1052
1088
  type: Array,
1053
1089
  value: []
@@ -1091,22 +1127,22 @@ A([
1091
1127
  ],*/
1092
1128
  })
1093
1129
  ], j.prototype, "actions", 2);
1094
- A([
1130
+ I([
1095
1131
  M({ type: Object, value: null })
1096
1132
  ], j.prototype, "form", 2);
1097
- A([
1133
+ I([
1098
1134
  M({ type: Boolean, value: !1 })
1099
1135
  ], j.prototype, "botSettingsInitialized", 2);
1100
- A([
1136
+ I([
1101
1137
  M({ type: Object, value: null })
1102
1138
  ], j.prototype, "botSettings", 2);
1103
- A([
1139
+ I([
1104
1140
  M({ type: Boolean, value: !0 })
1105
1141
  ], j.prototype, "disabled", 2);
1106
- A([
1142
+ I([
1107
1143
  M({ type: Boolean, value: !1 })
1108
1144
  ], j.prototype, "engage", 2);
1109
- A([
1145
+ I([
1110
1146
  V({ prefix: E }),
1111
1147
  M({
1112
1148
  type: Object,
@@ -1114,12 +1150,13 @@ A([
1114
1150
  orgId: null,
1115
1151
  botId: null,
1116
1152
  url: null,
1117
- welcomeMessage: null
1153
+ welcomeMessage: null,
1154
+ splitMessagesAtBreak: !1
1118
1155
  }
1119
1156
  })
1120
1157
  ], j.prototype, "setting", 2);
1121
- const s = new j(), Nc = x`
1122
- ${T}
1158
+ const n = new j(), Nc = x`
1159
+ ${R}
1123
1160
  :host {
1124
1161
  position: relative;
1125
1162
  font-weight: bold;
@@ -1172,9 +1209,9 @@ const s = new j(), Nc = x`
1172
1209
  display: inline;
1173
1210
  }
1174
1211
  `;
1175
- var Wc = Object.defineProperty, Jc = Object.getOwnPropertyDescriptor, Kc = (c, e, a, t) => {
1176
- for (var f = t > 1 ? void 0 : t ? Jc(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1177
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
1212
+ var Wc = Object.defineProperty, Kc = Object.getOwnPropertyDescriptor, Jc = (c, e, a, t) => {
1213
+ for (var f = t > 1 ? void 0 : t ? Kc(e, a) : e, o = c.length - 1, r; o >= 0; o--)
1214
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
1178
1215
  return t && f && Wc(e, a, f), f;
1179
1216
  };
1180
1217
  class S extends ge {
@@ -1192,16 +1229,16 @@ class S extends ge {
1192
1229
  return this.dispatchEvent(t), t;
1193
1230
  }
1194
1231
  }
1195
- Kc([
1232
+ Jc([
1196
1233
  b({ type: String })
1197
1234
  ], S.prototype, "lang", 2);
1198
1235
  const be = '<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 8L2.146 2.854Z"/></svg>';
1199
1236
  var Yc = Object.defineProperty, Gc = Object.getOwnPropertyDescriptor, Ye = (c, e, a, t) => {
1200
- for (var f = t > 1 ? void 0 : t ? Gc(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1201
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
1237
+ for (var f = t > 1 ? void 0 : t ? Gc(e, a) : e, o = c.length - 1, r; o >= 0; o--)
1238
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
1202
1239
  return t && f && Yc(e, a, f), f;
1203
1240
  };
1204
- let ne = class extends S {
1241
+ let se = class extends S {
1205
1242
  constructor() {
1206
1243
  super(...arguments), this.title = "ChatBot";
1207
1244
  }
@@ -1211,10 +1248,10 @@ let ne = class extends S {
1211
1248
  }
1212
1249
  */
1213
1250
  render() {
1214
- return r` <header class="cb-header" part="header">
1251
+ return d` <header class="cb-header" part="header">
1215
1252
  <span class="left">
1216
1253
  <sl-button class="cb-setting-button" variant="text" circle>
1217
- <cb-icon class="cb-header-logo" svg="${s.setting.logoSvg}"></cb-icon>
1254
+ <cb-icon class="cb-header-logo" svg="${n.setting.logoSvg}"></cb-icon>
1218
1255
  </sl-button>
1219
1256
  </span>
1220
1257
  <span class="center title">${this.title}</span>
@@ -1236,15 +1273,15 @@ let ne = class extends S {
1236
1273
  });
1237
1274
  }
1238
1275
  };
1239
- ne.styles = Nc;
1276
+ se.styles = Nc;
1240
1277
  Ye([
1241
1278
  b({ type: String, attribute: "title" })
1242
- ], ne.prototype, "title", 2);
1243
- ne = Ye([
1279
+ ], se.prototype, "title", 2);
1280
+ se = Ye([
1244
1281
  _("cb-header")
1245
- ], ne);
1282
+ ], se);
1246
1283
  const Xc = x`
1247
- ${T}
1284
+ ${R}
1248
1285
  .cb-footer {
1249
1286
  line-height: 60px;
1250
1287
  font-size: 16px;
@@ -1259,8 +1296,8 @@ const Xc = x`
1259
1296
  }
1260
1297
  `;
1261
1298
  var Qc = Object.defineProperty, ea = Object.getOwnPropertyDescriptor, ca = (c, e, a, t) => {
1262
- for (var f = t > 1 ? void 0 : t ? ea(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1263
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
1299
+ for (var f = t > 1 ? void 0 : t ? ea(e, a) : e, o = c.length - 1, r; o >= 0; o--)
1300
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
1264
1301
  return t && f && Qc(e, a, f), f;
1265
1302
  };
1266
1303
  let je = class extends S {
@@ -1268,7 +1305,7 @@ let je = class extends S {
1268
1305
  super(...arguments), this.year = (/* @__PURE__ */ new Date()).getFullYear();
1269
1306
  }
1270
1307
  render() {
1271
- return r`
1308
+ return d`
1272
1309
  <div class="cb-footer" part="footer">
1273
1310
  yugasun@${this.year}
1274
1311
  <a
@@ -1303,7 +1340,7 @@ je = ca([
1303
1340
  _("cb-footer")
1304
1341
  ], je);
1305
1342
  const aa = x`
1306
- ${T}
1343
+ ${R}
1307
1344
 
1308
1345
  :host {
1309
1346
  width: 100%;
@@ -1430,13 +1467,13 @@ const aa = x`
1430
1467
  }
1431
1468
  `;
1432
1469
  var ta = Object.defineProperty, fa = Object.getOwnPropertyDescriptor, oa = (c, e, a, t) => {
1433
- for (var f = t > 1 ? void 0 : t ? fa(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1434
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
1470
+ for (var f = t > 1 ? void 0 : t ? fa(e, a) : e, o = c.length - 1, r; o >= 0; o--)
1471
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
1435
1472
  return t && f && ta(e, a, f), f;
1436
1473
  };
1437
1474
  let Se = class extends ge {
1438
1475
  render() {
1439
- return r` <div class="cb-thinking" style="color: rgb(34, 34, 34);"><span></span><span></span><span></span></div>`;
1476
+ return d` <div class="cb-thinking" style="color: rgb(34, 34, 34);"><span></span><span></span><span></span></div>`;
1440
1477
  }
1441
1478
  };
1442
1479
  Se.styles = x`
@@ -1480,28 +1517,28 @@ Se.styles = x`
1480
1517
  Se = oa([
1481
1518
  _("cb-thinking")
1482
1519
  ], Se);
1483
- var da = Object.defineProperty, ra = Object.getOwnPropertyDescriptor, Ge = (c, e, a, t) => {
1484
- for (var f = t > 1 ? void 0 : t ? ra(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1485
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
1486
- return t && f && da(e, a, f), f;
1520
+ var ra = Object.defineProperty, da = Object.getOwnPropertyDescriptor, Ge = (c, e, a, t) => {
1521
+ for (var f = t > 1 ? void 0 : t ? da(e, a) : e, o = c.length - 1, r; o >= 0; o--)
1522
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
1523
+ return t && f && ra(e, a, f), f;
1487
1524
  };
1488
- let se = class extends S {
1525
+ let ne = class extends S {
1489
1526
  constructor() {
1490
1527
  super(...arguments), this.files = [];
1491
1528
  }
1492
1529
  render() {
1493
- return r` <div class="cb-uploading">
1530
+ return d` <div class="cb-uploading">
1494
1531
  <div class="cb-uploading__title">
1495
1532
  <sl-spinner class="cb-spinner"></sl-spinner>
1496
1533
  <span>Uploading...</span>
1497
1534
  </div>
1498
1535
  <div class="cb-uploading__filelist">
1499
- ${this.files.map((c) => r`${c.name}<br />`)}
1536
+ ${this.files.map((c) => d`${c.name}<br />`)}
1500
1537
  </div>
1501
1538
  </div>`;
1502
1539
  }
1503
1540
  };
1504
- se.styles = x`
1541
+ ne.styles = x`
1505
1542
  .cb-uploading {
1506
1543
  text-align: left;
1507
1544
  }
@@ -1521,12 +1558,12 @@ se.styles = x`
1521
1558
  `;
1522
1559
  Ge([
1523
1560
  b({ type: Array })
1524
- ], se.prototype, "files", 2);
1525
- se = Ge([
1561
+ ], ne.prototype, "files", 2);
1562
+ ne = Ge([
1526
1563
  _("cb-uploading")
1527
- ], se);
1564
+ ], ne);
1528
1565
  const ba = x`
1529
- ${T}
1566
+ ${R}
1530
1567
  :host {
1531
1568
  }
1532
1569
 
@@ -1546,17 +1583,17 @@ const ba = x`
1546
1583
  margin-right: 0.2em;
1547
1584
  }
1548
1585
  `;
1549
- var na = Object.defineProperty, sa = Object.getOwnPropertyDescriptor, Oe = (c, e, a, t) => {
1550
- for (var f = t > 1 ? void 0 : t ? sa(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1551
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
1552
- return t && f && na(e, a, f), f;
1586
+ var sa = Object.defineProperty, na = Object.getOwnPropertyDescriptor, Oe = (c, e, a, t) => {
1587
+ for (var f = t > 1 ? void 0 : t ? na(e, a) : e, o = c.length - 1, r; o >= 0; o--)
1588
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
1589
+ return t && f && sa(e, a, f), f;
1553
1590
  };
1554
1591
  let X = class extends ge {
1555
1592
  constructor() {
1556
1593
  super(...arguments), this.url = "", this.inverse = !1;
1557
1594
  }
1558
1595
  render() {
1559
- return r`
1596
+ return d`
1560
1597
  <a
1561
1598
  class="
1562
1599
  cb-external-link link__item
@@ -1606,12 +1643,12 @@ X = Oe([
1606
1643
  _("cb-external-link")
1607
1644
  ], X);
1608
1645
  const ia = '<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.5L14 4.5ZM1.928 15.849v-3.337h1.136v-.662H0v.662h1.134v3.337h.794Zm4.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.992l1.274-2.007Zm1.93.662v3.337h-.794v-3.337H6.619v-.662h3.064v.662H8.546Z"/></svg>', la = '<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.5L14 4.5ZM1.6 11.85H0v3.999h.791v-1.342h.803c.287 0 .531-.057.732-.173c.203-.117.358-.275.463-.474a1.42 1.42 0 0 0 .161-.677c0-.25-.053-.476-.158-.677a1.176 1.176 0 0 0-.46-.477c-.2-.12-.443-.179-.732-.179Zm.545 1.333a.795.795 0 0 1-.085.38a.574.574 0 0 1-.238.241a.794.794 0 0 1-.375.082H.788V12.48h.66c.218 0 .389.06.512.181c.123.122.185.296.185.522Zm1.217-1.333v3.999h1.46c.401 0 .734-.08.998-.237a1.45 1.45 0 0 0 .595-.689c.13-.3.196-.662.196-1.084c0-.42-.065-.778-.196-1.075a1.426 1.426 0 0 0-.589-.68c-.264-.156-.599-.234-1.005-.234H3.362Zm.791.645h.563c.248 0 .45.05.609.152a.89.89 0 0 1 .354.454c.079.201.118.452.118.753a2.3 2.3 0 0 1-.068.592a1.14 1.14 0 0 1-.196.422a.8.8 0 0 1-.334.252a1.298 1.298 0 0 1-.483.082h-.563v-2.707Zm3.743 1.763v1.591h-.79V11.85h2.548v.653H7.896v1.117h1.606v.638H7.896Z"/></svg>', pa = '<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.5L14 4.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.459c.406 0 .741.078 1.005.234c.263.157.46.383.589.68c.13.297.196.655.196 1.075c0 .422-.066.784-.196 1.084c-.131.301-.33.53-.595.689c-.264.158-.597.237-1 .237H4.626Zm1.353-3.354h-.562v2.707h.562c.186 0 .347-.028.484-.082a.8.8 0 0 0 .334-.252a1.14 1.14 0 0 0 .196-.422c.045-.168.067-.365.067-.592a2.1 2.1 0 0 0-.117-.753a.89.89 0 0 0-.354-.454c-.159-.102-.362-.152-.61-.152Z"/></svg>', ha = '<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.5L14 4.5ZM3.517 14.841a1.13 1.13 0 0 0 .401.823c.13.108.289.192.478.252c.19.061.411.091.665.091c.338 0 .624-.053.859-.158c.236-.105.416-.252.539-.44c.125-.189.187-.408.187-.656c0-.224-.045-.41-.134-.56a1.001 1.001 0 0 0-.375-.357a2.027 2.027 0 0 0-.566-.21l-.621-.144a.97.97 0 0 1-.404-.176a.37.37 0 0 1-.144-.299c0-.156.062-.284.185-.384c.125-.101.296-.152.512-.152c.143 0 .266.023.37.068a.624.624 0 0 1 .246.181a.56.56 0 0 1 .12.258h.75a1.092 1.092 0 0 0-.2-.566a1.21 1.21 0 0 0-.5-.41a1.813 1.813 0 0 0-.78-.152c-.293 0-.551.05-.776.15c-.225.099-.4.24-.527.421c-.127.182-.19.395-.19.639c0 .201.04.376.122.524c.082.149.2.27.352.367c.152.095.332.167.539.213l.618.144c.207.049.361.113.463.193a.387.387 0 0 1 .152.326a.505.505 0 0 1-.085.29a.559.559 0 0 1-.255.193c-.111.047-.249.07-.413.07c-.117 0-.223-.013-.32-.04a.838.838 0 0 1-.248-.115a.578.578 0 0 1-.255-.384h-.765ZM.806 13.693c0-.248.034-.46.102-.633a.868.868 0 0 1 .302-.399a.814.814 0 0 1 .475-.137c.15 0 .283.032.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.441 1.441 0 0 0-.489-.272a1.838 1.838 0 0 0-.606-.097c-.356 0-.66.074-.911.223c-.25.148-.44.359-.572.632c-.13.274-.196.6-.196.979v.498c0 .379.064.704.193.976c.131.271.322.48.572.626c.25.145.554.217.914.217c.293 0 .554-.055.785-.164c.23-.11.414-.26.55-.454a1.27 1.27 0 0 0 .226-.674v-.076h-.764a.799.799 0 0 1-.118.363a.7.7 0 0 1-.272.25a.874.874 0 0 1-.401.087a.845.845 0 0 1-.478-.132a.833.833 0 0 1-.299-.392a1.699 1.699 0 0 1-.102-.627v-.495Zm8.239 2.238h-.953l-1.338-3.999h.917l.896 3.138h.038l.888-3.138h.879l-1.327 4Z"/></svg>', ua = '<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.5L14 4.5ZM1.6 11.85H0v3.999h.791v-1.342h.803c.287 0 .531-.057.732-.173c.203-.117.358-.275.463-.474a1.42 1.42 0 0 0 .161-.677c0-.25-.053-.476-.158-.677a1.176 1.176 0 0 0-.46-.477c-.2-.12-.443-.179-.732-.179Zm.545 1.333a.795.795 0 0 1-.085.38a.574.574 0 0 1-.238.241a.794.794 0 0 1-.375.082H.788V12.48h.66c.218 0 .389.06.512.181c.123.122.185.296.185.522Zm2.817-1.333h-1.6v3.999h.791v-1.342h.803c.287 0 .531-.057.732-.173c.203-.117.358-.275.463-.474c.108-.201.161-.427.161-.677c0-.25-.052-.476-.158-.677a1.176 1.176 0 0 0-.46-.477c-.2-.12-.443-.179-.732-.179Zm.545 1.333a.795.795 0 0 1-.085.38a.574.574 0 0 1-.238.241a.793.793 0 0 1-.375.082H4.15V12.48h.66c.218 0 .389.06.512.181c.123.122.185.296.185.522Zm2.767-.67v3.336H7.48v-3.337H6.346v-.662h3.065v.662H8.274Z"/></svg>', ga = '<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.5L14 4.5Zm-7.839 9.166v.522c0 .256-.039.47-.117.641a.861.861 0 0 1-.322.387a.877.877 0 0 1-.469.126a.883.883 0 0 1-.471-.126a.868.868 0 0 1-.32-.386a1.55 1.55 0 0 1-.117-.642v-.522c0-.257.04-.471.117-.641a.868.868 0 0 1 .32-.387a.868.868 0 0 1 .471-.129c.176 0 .332.043.469.13a.861.861 0 0 1 .322.386c.078.17.117.384.117.641Zm.803.519v-.513c0-.377-.068-.7-.205-.972a1.46 1.46 0 0 0-.589-.63c-.254-.147-.56-.22-.917-.22c-.355 0-.662.073-.92.22a1.441 1.441 0 0 0-.589.627c-.136.271-.205.596-.205.975v.513c0 .375.069.7.205.973c.137.271.333.48.59.627c.257.144.564.216.92.216c.357 0 .662-.072.916-.216c.256-.147.452-.356.59-.627c.136-.274.204-.598.204-.973ZM0 11.926v4h1.459c.402 0 .735-.08.999-.238a1.45 1.45 0 0 0 .595-.689c.13-.3.196-.662.196-1.084c0-.42-.065-.778-.196-1.075a1.426 1.426 0 0 0-.59-.68c-.263-.156-.598-.234-1.004-.234H0Zm.791.645h.563c.248 0 .45.05.609.152a.89.89 0 0 1 .354.454c.079.201.118.452.118.753a2.3 2.3 0 0 1-.068.592a1.141 1.141 0 0 1-.196.422a.8.8 0 0 1-.334.252a1.298 1.298 0 0 1-.483.082H.79V12.57Zm7.422.483a1.732 1.732 0 0 0-.103.633v.495c0 .246.034.455.103.627a.834.834 0 0 0 .298.393a.845.845 0 0 0 .478.131a.868.868 0 0 0 .401-.088a.699.699 0 0 0 .273-.248a.8.8 0 0 0 .117-.364h.765v.076a1.268 1.268 0 0 1-.226.674c-.137.194-.32.345-.55.454a1.81 1.81 0 0 1-.786.164c-.36 0-.664-.072-.914-.216a1.424 1.424 0 0 1-.571-.627c-.13-.272-.194-.597-.194-.976v-.498c0-.379.066-.705.197-.978c.13-.274.321-.485.571-.633c.252-.149.556-.223.911-.223c.219 0 .421.032.607.097c.187.062.35.153.489.272a1.326 1.326 0 0 1 .466.964v.073H9.78a.85.85 0 0 0-.12-.38a.7.7 0 0 0-.273-.261a.802.802 0 0 0-.398-.097a.814.814 0 0 0-.475.138a.868.868 0 0 0-.301.398Z"/></svg>', ma = '<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.5L14 4.5Zm-6.839 9.688v-.522a1.54 1.54 0 0 0-.117-.641a.861.861 0 0 0-.322-.387a.862.862 0 0 0-.469-.129a.868.868 0 0 0-.471.13a.868.868 0 0 0-.32.386a1.54 1.54 0 0 0-.117.641v.522c0 .256.04.47.117.641a.868.868 0 0 0 .32.387a.883.883 0 0 0 .471.126a.877.877 0 0 0 .469-.126a.861.861 0 0 0 .322-.386a1.55 1.55 0 0 0 .117-.642Zm.803-.516v.513c0 .375-.068.7-.205.973a1.47 1.47 0 0 1-.589.627c-.254.144-.56.216-.917.216a1.86 1.86 0 0 1-.92-.216a1.463 1.463 0 0 1-.589-.627a2.151 2.151 0 0 1-.205-.973v-.513c0-.379.069-.704.205-.975c.137-.274.333-.483.59-.627c.257-.147.564-.22.92-.22c.357 0 .662.073.916.22c.256.146.452.356.59.63c.136.271.204.595.204.972ZM1 15.925v-3.999h1.459c.406 0 .741.078 1.005.235c.264.156.46.382.589.68c.13.296.196.655.196 1.074c0 .422-.065.784-.196 1.084c-.131.301-.33.53-.595.689c-.264.158-.597.237-.999.237H1Zm1.354-3.354H1.79v2.707h.563c.185 0 .346-.028.483-.082a.8.8 0 0 0 .334-.252c.088-.114.153-.254.196-.422a2.3 2.3 0 0 0 .068-.592c0-.3-.04-.552-.118-.753a.89.89 0 0 0-.354-.454c-.158-.102-.361-.152-.61-.152Zm6.756 1.116c0-.248.034-.46.103-.633a.868.868 0 0 1 .301-.398a.814.814 0 0 1 .475-.138c.15 0 .283.032.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.44 1.44 0 0 0-.49-.272a1.836 1.836 0 0 0-.606-.097c-.355 0-.66.074-.911.223c-.25.148-.44.359-.571.633c-.131.273-.197.6-.197.978v.498c0 .379.065.704.194.976c.13.271.321.48.571.627c.25.144.555.216.914.216c.293 0 .555-.054.785-.164c.23-.11.414-.26.551-.454a1.27 1.27 0 0 0 .226-.674v-.076h-.765a.8.8 0 0 1-.117.364a.699.699 0 0 1-.273.248a.874.874 0 0 1-.401.088a.845.845 0 0 1-.478-.131a.834.834 0 0 1-.298-.393a1.7 1.7 0 0 1-.103-.627v-.495Zm5.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.035l.823-1.439Z"/></svg>';
1609
- var ya = Object.defineProperty, va = Object.getOwnPropertyDescriptor, Le = (c, e, a, t) => {
1610
- for (var f = t > 1 ? void 0 : t ? va(e, a) : e, o = c.length - 1, d; o >= 0; o--)
1611
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
1646
+ var ya = Object.defineProperty, va = Object.getOwnPropertyDescriptor, Pe = (c, e, a, t) => {
1647
+ for (var f = t > 1 ? void 0 : t ? va(e, a) : e, o = c.length - 1, r; o >= 0; o--)
1648
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
1612
1649
  return t && f && ya(e, a, f), f;
1613
1650
  };
1614
- const Te = {
1651
+ const Re = {
1615
1652
  pdf: la,
1616
1653
  txt: ia,
1617
1654
  md: pa,
@@ -1632,7 +1669,7 @@ let Q = class extends S {
1632
1669
  return e ? e.toLowerCase() : c;
1633
1670
  }
1634
1671
  render() {
1635
- return r`
1672
+ return d`
1636
1673
  <cb-external-link url="${this.url}" inverse>
1637
1674
  <div class="cb-file">
1638
1675
  ${this.renderFileIcon()}
@@ -1642,22 +1679,22 @@ let Q = class extends S {
1642
1679
  `;
1643
1680
  }
1644
1681
  renderFileIcon() {
1645
- return r`
1682
+ return d`
1646
1683
  <cb-icon
1647
1684
  class="cb-file-icon"
1648
- svg="${Te[this.type] || Te.txt}"
1685
+ svg="${Re[this.type] || Re.txt}"
1649
1686
  ></cb-icon>
1650
1687
  `;
1651
1688
  }
1652
1689
  };
1653
1690
  Q.styles = ba;
1654
- Le([
1691
+ Pe([
1655
1692
  b({ type: String })
1656
1693
  ], Q.prototype, "filename", 2);
1657
- Le([
1694
+ Pe([
1658
1695
  b({ type: String })
1659
1696
  ], Q.prototype, "url", 2);
1660
- Q = Le([
1697
+ Q = Pe([
1661
1698
  _("cb-file")
1662
1699
  ], Q);
1663
1700
  const wa = '<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-.5Zm2.5 0a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5Zm3 .5a.5.5 0 0 0-1 0v6a.5.5 0 0 0 1 0V6Z"/><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 1v1ZM4.118 4L4 4.059V13a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V4.059L11.882 4H4.118ZM2.5 3h11V2h-11v1Z"/></g></svg>', xa = '<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 6Zm2-3a2 2 0 1 1-4 0a2 2 0 0 1 4 0Zm4 8c0 1-1 1-1 1H3s-1 0-1-1s1-4 6-4s6 3 6 4Zm-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10c-2.29 0-3.516.68-4.168 1.332c-.678.678-.83 1.418-.832 1.664h10Z"/></svg>', ka = x`
@@ -2826,7 +2863,7 @@ const wa = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="curr
2826
2863
  background-color: #282c34;
2827
2864
  }
2828
2865
  `, _a = x`
2829
- ${T}
2866
+ ${R}
2830
2867
  ${ka}
2831
2868
 
2832
2869
  .cb-message-row {
@@ -2986,20 +3023,22 @@ const wa = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="curr
2986
3023
  `;
2987
3024
  function $a() {
2988
3025
  const c = new pc({
3026
+ html: !0,
3027
+ breaks: !0,
2989
3028
  linkify: !0
2990
3029
  });
2991
3030
  return c.use(hc, { attrs: { target: "_blank", rel: "noopener" } }), c;
2992
3031
  }
2993
- async function Be(c) {
2994
- const e = $a();
2995
- return r`${U(e.render(c))}`;
3032
+ async function Te(c) {
3033
+ const a = $a().render(c);
3034
+ return d`${U(a)}`;
2996
3035
  }
2997
3036
  var Ca = Object.defineProperty, ja = Object.getOwnPropertyDescriptor, ye = (c, e, a, t) => {
2998
- for (var f = t > 1 ? void 0 : t ? ja(e, a) : e, o = c.length - 1, d; o >= 0; o--)
2999
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
3037
+ for (var f = t > 1 ? void 0 : t ? ja(e, a) : e, o = c.length - 1, r; o >= 0; o--)
3038
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
3000
3039
  return t && f && Ca(e, a, f), f;
3001
3040
  };
3002
- let J = class extends S {
3041
+ let K = class extends S {
3003
3042
  constructor() {
3004
3043
  super(...arguments), this.type = "assistant";
3005
3044
  }
@@ -3045,7 +3084,7 @@ let J = class extends S {
3045
3084
  render() {
3046
3085
  return W(
3047
3086
  this.message.data || this.message.isThinking,
3048
- () => r`
3087
+ () => d`
3049
3088
  <div class="cb-message-row" part="cb-message-row">
3050
3089
  <!-- message -->
3051
3090
  ${W(
@@ -3059,7 +3098,7 @@ let J = class extends S {
3059
3098
  );
3060
3099
  }
3061
3100
  renderButtons(c = "left") {
3062
- return r`<div class="cb-message__buttons ${c}">
3101
+ return d`<div class="cb-message__buttons ${c}">
3063
3102
  <!-- delete button -->
3064
3103
  <sl-button class="cb-message__delete-button" name="trash" @click=${this._removeMessageHandler} circle variant="text" size="small">
3065
3104
  <cb-icon svg="${wa}" style="font-size: 1em !important;"></cb-icon>
@@ -3067,7 +3106,7 @@ let J = class extends S {
3067
3106
  </div>`;
3068
3107
  }
3069
3108
  renderMessage(c) {
3070
- return r`
3109
+ return d`
3071
3110
  <div
3072
3111
  class="cb-message__content
3073
3112
  ${c.author}-message
@@ -3080,38 +3119,38 @@ let J = class extends S {
3080
3119
  `;
3081
3120
  }
3082
3121
  async _getMessageText(c) {
3083
- return Be(c.data.text);
3122
+ return Te(c.data.text);
3084
3123
  }
3085
3124
  renderMessageContent(c) {
3086
3125
  var e;
3087
- return c.isThinking ? r`<cb-thinking></cb-thinking>` : c.isUploading ? r`<cb-uploading .files="${c.data.files || []}"></cb-uploading>` : c.type === "text" ? r`<div class="cb-message-text">
3126
+ return c.isThinking ? d`<cb-thinking></cb-thinking>` : c.isUploading ? d`<cb-uploading .files="${c.data.files || []}"></cb-uploading>` : c.type === "text" ? d`<div class="cb-message-text">
3088
3127
  ${W(
3089
3128
  c.data.userName,
3090
- () => r`<div style="font-size: 12px; color:#9ca3af">${c.data.userName}</div>`,
3129
+ () => d`<div style="font-size: 12px; color:#9ca3af">${c.data.userName}</div>`,
3091
3130
  () => null
3092
3131
  )}
3093
3132
  ${ze(
3094
- this._getMessageText(c).then((a) => r`${a}`)
3133
+ this._getMessageText(c).then((a) => d`${a}`)
3095
3134
  )}
3096
- </div>` : c.type === "file" ? r`${te(
3135
+ </div>` : c.type === "file" ? d`${te(
3097
3136
  c.data.files || [],
3098
3137
  (a) => a.id,
3099
- (a) => r`<cb-file filename="${a.name}" url="${a.url}"></cb-file>`
3100
- )}` : r`<div class="cb-message-text">
3138
+ (a) => d`<cb-file filename="${a.name}" url="${a.url}"></cb-file>`
3139
+ )}` : d`<div class="cb-message-text">
3101
3140
  ${ze(
3102
- Be(((e = c.data.text) == null ? void 0 : e.toString()) || "").then((a) => r`${a}`)
3141
+ Te(((e = c.data.text) == null ? void 0 : e.toString()) || "").then((a) => d`${a}`)
3103
3142
  )}
3104
3143
  </div>`;
3105
3144
  }
3106
3145
  renderBotMessageAvatar(c) {
3107
3146
  if (c.data.userName && c.data.userName !== "") {
3108
3147
  const e = c.data.userAvatar || "";
3109
- return r` <img src="${e}" style="width: 24px;height: 24px;" /> `;
3148
+ return d` <img src="${e}" style="width: 24px;height: 24px;" /> `;
3110
3149
  }
3111
- return c.author === "system" ? re`${U(s.setting.systemIconSvg)}` : re`${U(s.setting.botIconSvg)}`;
3150
+ return c.author === "system" ? de`${U(n.setting.systemIconSvg)}` : de`${U(n.setting.botIconSvg)}`;
3112
3151
  }
3113
3152
  renderBotMessage(c) {
3114
- return r`
3153
+ return d`
3115
3154
  <div class="cb-message cb-bot-message-wrapper" part="cb-message">
3116
3155
  <div class="avatar assistant-avatar xsmall" style="margin-top:4px;">${this.renderBotMessageAvatar(c)}</div>
3117
3156
  <div style="margin-left: 4px;width: 100%">${this.renderMessage(c)}</div>
@@ -3119,33 +3158,33 @@ let J = class extends S {
3119
3158
  `;
3120
3159
  }
3121
3160
  renderUserMessage(c) {
3122
- return r`
3161
+ return d`
3123
3162
  <div class="cb-message" part="cb-message" style="display: flex; justify-content: end;align-items: start;">
3124
3163
  <!--<sl-avatar class="avatar user-avatar small" label="User">
3125
3164
  <cb-icon slot="icon" svg="${xa}" color="white"></cb-icon>
3126
3165
  </sl-avatar>-->
3127
- <div class="avatar user-avatar">${U(s.setting.userIconSvg)}</div>
3166
+ <div class="avatar user-avatar">${U(n.setting.userIconSvg)}</div>
3128
3167
  ${this.renderMessage(c)}
3129
3168
  </div>
3130
3169
  `;
3131
3170
  }
3132
3171
  };
3133
- J.styles = _a;
3172
+ K.styles = _a;
3134
3173
  ye([
3135
3174
  b({ type: Object })
3136
- ], J.prototype, "message", 2);
3175
+ ], K.prototype, "message", 2);
3137
3176
  ye([
3138
3177
  b({ type: String })
3139
- ], J.prototype, "type", 2);
3178
+ ], K.prototype, "type", 2);
3140
3179
  ye([
3141
3180
  lc(".code-block-header__copy")
3142
- ], J.prototype, "copyBtns", 2);
3143
- J = ye([
3181
+ ], K.prototype, "copyBtns", 2);
3182
+ K = ye([
3144
3183
  _("cb-message")
3145
- ], J);
3184
+ ], K);
3146
3185
  var Sa = Object.defineProperty, Ma = Object.getOwnPropertyDescriptor, D = (c, e, a, t) => {
3147
- for (var f = t > 1 ? void 0 : t ? Ma(e, a) : e, o = c.length - 1, d; o >= 0; o--)
3148
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
3186
+ for (var f = t > 1 ? void 0 : t ? Ma(e, a) : e, o = c.length - 1, r; o >= 0; o--)
3187
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
3149
3188
  return t && f && Sa(e, a, f), f;
3150
3189
  };
3151
3190
  const N = me.noConflict();
@@ -3155,12 +3194,12 @@ let z = class extends S {
3155
3194
  super(...arguments), this.messages = [], this.actions = [], this.form = null, this.calendlyInjected = !1, this.activeCalendlyAction = -1;
3156
3195
  }
3157
3196
  render() {
3158
- return r`
3197
+ return d`
3159
3198
  <div class="cb-message-list" part="cb-message-list">
3160
3199
  ${te(
3161
3200
  this.messages,
3162
3201
  (c) => c.id + JSON.stringify(c.data),
3163
- (c) => r`<cb-message .message="${c}"></cb-message>`
3202
+ (c) => d`<cb-message .message="${c}"></cb-message>`
3164
3203
  )}
3165
3204
  ${this.renderActions()} ${this.renderForm()}
3166
3205
  <div id="cb-message-list-bottom-anchor"></div>
@@ -3168,7 +3207,7 @@ let z = class extends S {
3168
3207
  `;
3169
3208
  }
3170
3209
  renderForm() {
3171
- return this.form ? r` <form class="cb-input-form" part="form" @submit="${this.handleFormSubmit.bind(this)}">
3210
+ return this.form ? d` <form class="cb-input-form" part="form" @submit="${this.handleFormSubmit.bind(this)}">
3172
3211
  <div class="cb-input-form-title">${this.form.title}</div>
3173
3212
  ${te(
3174
3213
  this.form.fields,
@@ -3176,9 +3215,9 @@ let z = class extends S {
3176
3215
  (c) => {
3177
3216
  switch (c.type) {
3178
3217
  case "string":
3179
- return r`<sl-input class="cb-input-form-input" id="${"cb-form-field" + c.name}" name="${c.name}" label="${c.title}" required></sl-input>`;
3218
+ return d`<sl-input class="cb-input-form-input" id="${"cb-form-field" + c.name}" name="${c.name}" label="${c.title}" required></sl-input>`;
3180
3219
  case "email":
3181
- return r`<sl-input class="cb-input-form-input" id="${"cb-form-field" + c.name}" name="${c.name}" type="email" label="${c.title}" required></sl-input>`;
3220
+ return d`<sl-input class="cb-input-form-input" id="${"cb-form-field" + c.name}" name="${c.name}" type="email" label="${c.title}" required></sl-input>`;
3182
3221
  }
3183
3222
  }
3184
3223
  )}
@@ -3199,7 +3238,7 @@ let z = class extends S {
3199
3238
  return;
3200
3239
  }
3201
3240
  }
3202
- s.submitForm(e).then(() => {
3241
+ n.submitForm(e).then(() => {
3203
3242
  N.info("Form submitted", e), this.emit("form:submit", {
3204
3243
  detail: {
3205
3244
  formData: e
@@ -3221,7 +3260,7 @@ let z = class extends S {
3221
3260
  <br /><br />
3222
3261
  */
3223
3262
  renderActions() {
3224
- return !Array.isArray(this.actions) || this.actions.length <= 0 ? null : r`
3263
+ return !Array.isArray(this.actions) || this.actions.length <= 0 ? null : d`
3225
3264
  <div class="cb-actions-list">
3226
3265
  ${te(
3227
3266
  this.actions,
@@ -3247,7 +3286,7 @@ let z = class extends S {
3247
3286
  switch (N.info("Got Calendly Event:", c.data), c.data.event) {
3248
3287
  case "calendly.event_scheduled": {
3249
3288
  const e = this.activeCalendlyAction;
3250
- e >= 0 && (s.removeAction(e), s.addSystemMessage("Your meeting has been scheduled!"), this.activeCalendlyAction = -1);
3289
+ e >= 0 && (n.removeAction(e), n.addSystemMessage("Your meeting has been scheduled!"), this.activeCalendlyAction = -1);
3251
3290
  }
3252
3291
  }
3253
3292
  }
@@ -3266,7 +3305,7 @@ let z = class extends S {
3266
3305
  t.origin === "https://calendly.com" && t.data.event && t.data.event.indexOf("calendly.") !== -1 && this.handleCalendlyEvent(t);
3267
3306
  }), this.calendlyInjected = !0;
3268
3307
  }
3269
- return r`
3308
+ return d`
3270
3309
  <div class="cb-actions-list">
3271
3310
  <div class="cb-action ripple" @click="${this.invokeCalendlyAction.bind(this, c)}">
3272
3311
  <div class="cb-action-icon">
@@ -3283,7 +3322,7 @@ let z = class extends S {
3283
3322
  `;
3284
3323
  }
3285
3324
  renderLinkAction(c) {
3286
- return r`
3325
+ return d`
3287
3326
  <div class="cb-actions-list">
3288
3327
  <div class="cb-action ripple" @click="${this.invokeLinkAction.bind(this, c)}">
3289
3328
  <div class="cb-action-icon">
@@ -3322,8 +3361,8 @@ D([
3322
3361
  z = D([
3323
3362
  _("cb-message-list")
3324
3363
  ], z);
3325
- const Aa = x`
3326
- ${T}
3364
+ const Ia = x`
3365
+ ${R}
3327
3366
 
3328
3367
  :host {
3329
3368
  width: 100%;
@@ -3365,13 +3404,13 @@ const Aa = x`
3365
3404
  .cb-input-buttons {
3366
3405
  padding: 0 5px;
3367
3406
  }
3368
- `, Ia = '<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.576L6.636 10.07Zm6.787-8.201L1.591 6.602l4.339 2.76l7.494-7.493Z"/></svg>', Oa = '<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 0V3z"/></svg>';
3369
- var La = Object.defineProperty, Ha = Object.getOwnPropertyDescriptor, B = (c, e, a, t) => {
3370
- for (var f = t > 1 ? void 0 : t ? Ha(e, a) : e, o = c.length - 1, d; o >= 0; o--)
3371
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
3372
- return t && f && La(e, a, f), f;
3407
+ `, Aa = '<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.576L6.636 10.07Zm6.787-8.201L1.591 6.602l4.339 2.76l7.494-7.493Z"/></svg>', Oa = '<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 0V3z"/></svg>';
3408
+ var Pa = Object.defineProperty, La = Object.getOwnPropertyDescriptor, T = (c, e, a, t) => {
3409
+ for (var f = t > 1 ? void 0 : t ? La(e, a) : e, o = c.length - 1, r; o >= 0; o--)
3410
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
3411
+ return t && f && Pa(e, a, f), f;
3373
3412
  };
3374
- let H = class extends S {
3413
+ let L = class extends S {
3375
3414
  constructor() {
3376
3415
  super(...arguments), this.placeholder = "Type a message...", this.sendButtonLabel = "Send", this.enableFileUpload = !1, this.value = "", this.loading = !1, this.disabled = !1, this.currentKey = "";
3377
3416
  }
@@ -3402,7 +3441,7 @@ let H = class extends S {
3402
3441
  });
3403
3442
  }
3404
3443
  async _sendFileHandler() {
3405
- const c = await Ac();
3444
+ const c = await Ic();
3406
3445
  this.emit("message:send:file", {
3407
3446
  detail: {
3408
3447
  files: c
@@ -3410,7 +3449,7 @@ let H = class extends S {
3410
3449
  });
3411
3450
  }
3412
3451
  render() {
3413
- return r`
3452
+ return d`
3414
3453
  <div class="cb-user-input-wrapper" part="user-input-wrapper">
3415
3454
  <sl-textarea
3416
3455
  @sl-input=${this._inputChangeHandler}
@@ -3429,17 +3468,17 @@ let H = class extends S {
3429
3468
  <span class="cb-input-buttons">
3430
3469
  ${W(
3431
3470
  this.enableFileUpload,
3432
- () => r`
3471
+ () => d`
3433
3472
  <sl-button @click=${this._sendFileHandler} name="paperclip" label="Attachment" size="large" class="paperclip-button" variant="text" circle>
3434
3473
  <cb-icon svg="${Oa}"></cb-icon>
3435
3474
  <!-- select file input -->
3436
3475
  <input type="file" id="file" name="file" class="file-input" />
3437
3476
  </sl-button>
3438
3477
  `,
3439
- () => r``
3478
+ () => d``
3440
3479
  )}
3441
3480
  <sl-button @click=${this._sendHandler} name="send" label="Send" size="small" class="send-button" variant="text" ?disabled=${this.value.length === 0} ?loading=${this.loading} circle>
3442
- <cb-icon svg="${Ia}"></cb-icon>
3481
+ <cb-icon svg="${Aa}"></cb-icon>
3443
3482
  </sl-button>
3444
3483
  </span>
3445
3484
  </div>
@@ -3449,36 +3488,36 @@ let H = class extends S {
3449
3488
  c.key === "Enter" && !c.shiftKey && this._sendHandler();
3450
3489
  }
3451
3490
  };
3452
- H.styles = Aa;
3453
- B([
3491
+ L.styles = Ia;
3492
+ T([
3454
3493
  b({ type: String, attribute: "placeholder" })
3455
- ], H.prototype, "placeholder", 2);
3456
- B([
3494
+ ], L.prototype, "placeholder", 2);
3495
+ T([
3457
3496
  b({ type: String, attribute: "send-button-label" })
3458
- ], H.prototype, "sendButtonLabel", 2);
3459
- B([
3497
+ ], L.prototype, "sendButtonLabel", 2);
3498
+ T([
3460
3499
  b({ type: Boolean, attribute: "enable-file-upload" })
3461
- ], H.prototype, "enableFileUpload", 2);
3462
- B([
3500
+ ], L.prototype, "enableFileUpload", 2);
3501
+ T([
3463
3502
  b({ type: String })
3464
- ], H.prototype, "value", 2);
3465
- B([
3503
+ ], L.prototype, "value", 2);
3504
+ T([
3466
3505
  b({ type: Boolean })
3467
- ], H.prototype, "loading", 2);
3468
- B([
3506
+ ], L.prototype, "loading", 2);
3507
+ T([
3469
3508
  b({ type: Boolean })
3470
- ], H.prototype, "disabled", 2);
3471
- B([
3509
+ ], L.prototype, "disabled", 2);
3510
+ T([
3472
3511
  b({ type: String })
3473
- ], H.prototype, "currentKey", 2);
3474
- B([
3512
+ ], L.prototype, "currentKey", 2);
3513
+ T([
3475
3514
  ee("sl-textarea")
3476
- ], H.prototype, "inputElement", 2);
3477
- H = B([
3515
+ ], L.prototype, "inputElement", 2);
3516
+ L = T([
3478
3517
  _("cb-user-input")
3479
- ], H);
3480
- const Pa = x`
3481
- ${T}
3518
+ ], L);
3519
+ const Ha = x`
3520
+ ${R}
3482
3521
 
3483
3522
  sl-dialog::part(base) {
3484
3523
  z-index: 1000;
@@ -3513,11 +3552,11 @@ const Pa = x`
3513
3552
  }
3514
3553
  `;
3515
3554
  var Ea = Object.defineProperty, za = Object.getOwnPropertyDescriptor, ve = (c, e, a, t) => {
3516
- for (var f = t > 1 ? void 0 : t ? za(e, a) : e, o = c.length - 1, d; o >= 0; o--)
3517
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
3555
+ for (var f = t > 1 ? void 0 : t ? za(e, a) : e, o = c.length - 1, r; o >= 0; o--)
3556
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
3518
3557
  return t && f && Ea(e, a, f), f;
3519
3558
  };
3520
- let K = class extends S {
3559
+ let J = class extends S {
3521
3560
  constructor() {
3522
3561
  super(...arguments), this.open = !1, this.label = "Dialog", this.zindex = 100;
3523
3562
  }
@@ -3525,7 +3564,7 @@ let K = class extends S {
3525
3564
  this.emit("cancel");
3526
3565
  }
3527
3566
  render() {
3528
- return r` <sl-dialog
3567
+ return d` <sl-dialog
3529
3568
  label="Setting"
3530
3569
  class="cb-dialog"
3531
3570
  style="sl-dialog::part(base) { z-index: ${this.zindex}; }"
@@ -3535,7 +3574,7 @@ let K = class extends S {
3535
3574
  >
3536
3575
  <header class="cb-header">
3537
3576
  <div class="cb-header__left">
3538
- ${this.label ? r`<span class="title">${this.label}</span>` : ""}
3577
+ ${this.label ? d`<span class="title">${this.label}</span>` : ""}
3539
3578
  </div>
3540
3579
  <sl-button
3541
3580
  @click=${this._settingCancelHandler}
@@ -3561,30 +3600,30 @@ let K = class extends S {
3561
3600
  </sl-dialog>`;
3562
3601
  }
3563
3602
  };
3564
- K.styles = Pa;
3603
+ J.styles = Ha;
3565
3604
  ve([
3566
3605
  b({ type: Boolean })
3567
- ], K.prototype, "open", 2);
3606
+ ], J.prototype, "open", 2);
3568
3607
  ve([
3569
3608
  b({ type: String, attribute: "label" })
3570
- ], K.prototype, "label", 2);
3609
+ ], J.prototype, "label", 2);
3571
3610
  ve([
3572
3611
  b({ type: Number })
3573
- ], K.prototype, "zindex", 2);
3574
- K = ve([
3612
+ ], J.prototype, "zindex", 2);
3613
+ J = ve([
3575
3614
  _("cb-dialog")
3576
- ], K);
3577
- var Ta = Object.defineProperty, Ba = Object.getOwnPropertyDescriptor, Xe = (c, e, a, t) => {
3578
- for (var f = t > 1 ? void 0 : t ? Ba(e, a) : e, o = c.length - 1, d; o >= 0; o--)
3579
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
3580
- return t && f && Ta(e, a, f), f;
3615
+ ], J);
3616
+ var Ra = Object.defineProperty, Ta = Object.getOwnPropertyDescriptor, Xe = (c, e, a, t) => {
3617
+ for (var f = t > 1 ? void 0 : t ? Ta(e, a) : e, o = c.length - 1, r; o >= 0; o--)
3618
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
3619
+ return t && f && Ra(e, a, f), f;
3581
3620
  };
3582
3621
  let ie = class extends S {
3583
3622
  constructor() {
3584
3623
  super(...arguments), this.open = !1;
3585
3624
  }
3586
3625
  render() {
3587
- return r` <cb-dialog
3626
+ return d` <cb-dialog
3588
3627
  label="Confirm"
3589
3628
  class="cb-clear-message-dialog"
3590
3629
  ?open=${this.open}
@@ -3627,7 +3666,7 @@ Xe([
3627
3666
  ie = Xe([
3628
3667
  _("cb-clear-message-dialog")
3629
3668
  ], ie);
3630
- const Ra = x`
3669
+ const Ba = x`
3631
3670
  :host {
3632
3671
  // width: 380px;
3633
3672
 
@@ -3688,16 +3727,16 @@ const Ra = x`
3688
3727
  }
3689
3728
  `;
3690
3729
  var Va = Object.defineProperty, Da = Object.getOwnPropertyDescriptor, Y = (c, e, a, t) => {
3691
- for (var f = t > 1 ? void 0 : t ? Da(e, a) : e, o = c.length - 1, d; o >= 0; o--)
3692
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
3730
+ for (var f = t > 1 ? void 0 : t ? Da(e, a) : e, o = c.length - 1, r; o >= 0; o--)
3731
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
3693
3732
  return t && f && Va(e, a, f), f;
3694
3733
  };
3695
- let R = class extends S {
3734
+ let B = class extends S {
3696
3735
  constructor() {
3697
3736
  super(...arguments), this.open = !1, this.clearMessageDialogOpen = !1, this.customRequest = !1;
3698
3737
  }
3699
3738
  render() {
3700
- return this.customRequest = this.setting.customRequest, r`
3739
+ return this.customRequest = this.setting.customRequest, d`
3701
3740
  <cb-dialog
3702
3741
  label="Setting"
3703
3742
  class="cb-dialog"
@@ -3790,7 +3829,7 @@ let R = class extends S {
3790
3829
  `;
3791
3830
  }
3792
3831
  renderInternalServices() {
3793
- return r`
3832
+ return d`
3794
3833
  <div class="form-item">
3795
3834
  <label class="label">Service</label>
3796
3835
  <sl-radio-group name="openai" value="openai" size="small">
@@ -3855,27 +3894,27 @@ let R = class extends S {
3855
3894
  });
3856
3895
  }
3857
3896
  };
3858
- R.styles = Ra;
3897
+ B.styles = Ba;
3859
3898
  Y([
3860
3899
  b({ type: Boolean })
3861
- ], R.prototype, "open", 2);
3900
+ ], B.prototype, "open", 2);
3862
3901
  Y([
3863
3902
  b({ type: Object })
3864
- ], R.prototype, "setting", 2);
3903
+ ], B.prototype, "setting", 2);
3865
3904
  Y([
3866
3905
  b({ type: Boolean })
3867
- ], R.prototype, "clearMessageDialogOpen", 2);
3906
+ ], B.prototype, "clearMessageDialogOpen", 2);
3868
3907
  Y([
3869
3908
  ee("sl-dialog")
3870
- ], R.prototype, "dialog", 2);
3909
+ ], B.prototype, "dialog", 2);
3871
3910
  Y([
3872
3911
  b({ type: Boolean })
3873
- ], R.prototype, "customRequest", 2);
3874
- R = Y([
3912
+ ], B.prototype, "customRequest", 2);
3913
+ B = Y([
3875
3914
  _("cb-setting")
3876
- ], R);
3915
+ ], B);
3877
3916
  const Fa = x`
3878
- ${T}
3917
+ ${R}
3879
3918
  :host {
3880
3919
  --primary-color: var(--sl-color-primary-600);
3881
3920
 
@@ -3967,13 +4006,13 @@ const Fa = x`
3967
4006
  }
3968
4007
  `, qa = '<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.06 9.06 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 7zM5 8a1 1 0 1 0-2 0a1 1 0 0 0 2 0zm4 0a1 1 0 1 0-2 0a1 1 0 0 0 2 0zm3 1a1 1 0 1 0 0-2a1 1 0 0 0 0 2z"/></svg>';
3969
4008
  var Ua = Object.defineProperty, Za = Object.getOwnPropertyDescriptor, Qe = (c, e, a, t) => {
3970
- for (var f = t > 1 ? void 0 : t ? Za(e, a) : e, o = c.length - 1, d; o >= 0; o--)
3971
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
4009
+ for (var f = t > 1 ? void 0 : t ? Za(e, a) : e, o = c.length - 1, r; o >= 0; o--)
4010
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
3972
4011
  return t && f && Ua(e, a, f), f;
3973
4012
  };
3974
4013
  let le = class extends S {
3975
4014
  constructor() {
3976
- super(...arguments), this.store = new Ne(this, s), this.open = !1;
4015
+ super(...arguments), this.store = new Ne(this, n), this.open = !1;
3977
4016
  }
3978
4017
  // handler click
3979
4018
  _clickHandler() {
@@ -3985,25 +4024,25 @@ let le = class extends S {
3985
4024
  }), this.open = c;
3986
4025
  }
3987
4026
  _engageClickHandler(c) {
3988
- console.log("engage close clicked!"), s.engage = !1, c.stopPropagation();
4027
+ console.log("engage close clicked!"), n.engage = !1, c.stopPropagation();
3989
4028
  }
3990
4029
  render() {
3991
- return r`
4030
+ return d`
3992
4031
  <div class="cb-anchor ${this.open ? "open" : ""}" part="cb-anchor" @click=${this._clickHandler.bind(this)}>
3993
- <sl-popup placement="top-end" distance="16" ?active="${s.engage && !s.open}">
4032
+ <sl-popup placement="top-end" distance="16" ?active="${n.engage && !n.open}">
3994
4033
  <sl-button slot="anchor" label="Start" size="large" variant="primary" class="icon anchor-button" circle>
3995
4034
  ${W(
3996
4035
  this.open,
3997
- () => r`<cb-icon color="white" svg="${be}"></cb-icon>`,
3998
- () => r`<cb-icon color="white" svg="${qa}"></cb-icon>`
4036
+ () => d`<cb-icon color="white" svg="${be}"></cb-icon>`,
4037
+ () => d`<cb-icon color="white" svg="${qa}"></cb-icon>`
3999
4038
  )}
4000
4039
  </sl-button>
4001
4040
  <div class="cb-engage-popup">
4002
- <div class="cb-engage-popup-close" @click=${this._engageClickHandler.bind(this)}>${re`${U(be)}`}</div>
4041
+ <div class="cb-engage-popup-close" @click=${this._engageClickHandler.bind(this)}>${de`${U(be)}`}</div>
4003
4042
  <div class="cb-engage-popup-content">
4004
- <div class="cb-engage-popup-logo">${re`${U(s.setting.logoSvg)}`}</div>
4005
- <!--<cb-icon class="cb-engage-popup-logo" svg="${s.setting.logoSvg}"></cb-icon>-->
4006
- <div>${s.setting.engageMessage}</div>
4043
+ <div class="cb-engage-popup-logo">${de`${U(n.setting.logoSvg)}`}</div>
4044
+ <!--<cb-icon class="cb-engage-popup-logo" svg="${n.setting.logoSvg}"></cb-icon>-->
4045
+ <div>${n.setting.engageMessage}</div>
4007
4046
  </div>
4008
4047
  </div>
4009
4048
  </sl-popup>
@@ -4019,21 +4058,21 @@ le = Qe([
4019
4058
  _("cb-anchor")
4020
4059
  ], le);
4021
4060
  const Na = x`
4022
- ${T}
4023
- `, Re = '<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-.353L4.54.146zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z"/><path d="M7.002 11a1 1 0 1 1 2 0a1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z"/></g></svg>', Wa = '<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.146.146 0 0 1 .054.057l6.857 11.667c.036.06.035.124.002.183a.163.163 0 0 1-.054.06a.116.116 0 0 1-.066.017H1.146a.115.115 0 0 1-.066-.017a.163.163 0 0 1-.054-.06a.176.176 0 0 1 .002-.183L7.884 2.073a.147.147 0 0 1 .054-.057zm1.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.767L8.982 1.566z"/><path d="M7.002 12a1 1 0 1 1 2 0a1 1 0 0 1-2 0zM7.1 5.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995z"/></g></svg>', Ja = '<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 0z"/><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 0l7-7z"/></g></svg>', Ka = '<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 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z"/><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-.533L8.93 6.588zM9 4.5a1 1 0 1 1-2 0a1 1 0 0 1 2 0z"/></g></svg>';
4061
+ ${R}
4062
+ `, Be = '<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-.353L4.54.146zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1H5.1z"/><path d="M7.002 11a1 1 0 1 1 2 0a1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z"/></g></svg>', Wa = '<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.146.146 0 0 1 .054.057l6.857 11.667c.036.06.035.124.002.183a.163.163 0 0 1-.054.06a.116.116 0 0 1-.066.017H1.146a.115.115 0 0 1-.066-.017a.163.163 0 0 1-.054-.06a.176.176 0 0 1 .002-.183L7.884 2.073a.147.147 0 0 1 .054-.057zm1.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.767L8.982 1.566z"/><path d="M7.002 12a1 1 0 1 1 2 0a1 1 0 0 1-2 0zM7.1 5.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995z"/></g></svg>', Ka = '<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 0z"/><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 0l7-7z"/></g></svg>', Ja = '<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 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z"/><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-.533L8.93 6.588zM9 4.5a1 1 0 1 1-2 0a1 1 0 0 1 2 0z"/></g></svg>';
4024
4063
  var Ya = Object.defineProperty, Ga = Object.getOwnPropertyDescriptor, ec = (c, e, a, t) => {
4025
- for (var f = t > 1 ? void 0 : t ? Ga(e, a) : e, o = c.length - 1, d; o >= 0; o--)
4026
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
4064
+ for (var f = t > 1 ? void 0 : t ? Ga(e, a) : e, o = c.length - 1, r; o >= 0; o--)
4065
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
4027
4066
  return t && f && Ya(e, a, f), f;
4028
4067
  };
4029
4068
  const Ve = {
4030
4069
  error: {
4031
4070
  variant: "danger",
4032
- icon: Re
4071
+ icon: Be
4033
4072
  },
4034
4073
  danger: {
4035
4074
  variant: "danger",
4036
- icon: Re
4075
+ icon: Be
4037
4076
  },
4038
4077
  warning: {
4039
4078
  variant: "warning",
@@ -4041,11 +4080,11 @@ const Ve = {
4041
4080
  },
4042
4081
  success: {
4043
4082
  variant: "success",
4044
- icon: Ja
4083
+ icon: Ka
4045
4084
  },
4046
4085
  info: {
4047
4086
  variant: "primary",
4048
- icon: Ka
4087
+ icon: Ja
4049
4088
  }
4050
4089
  };
4051
4090
  let pe = class extends S {
@@ -4054,10 +4093,10 @@ let pe = class extends S {
4054
4093
  }
4055
4094
  render() {
4056
4095
  const { variant: c, icon: e } = Ve[this.status] || Ve.info;
4057
- return r`<cb-icon svg=${e} color="${c}"></cb-icon>`;
4096
+ return d`<cb-icon svg=${e} color="${c}"></cb-icon>`;
4058
4097
  }
4059
4098
  };
4060
- pe.styles = Ke;
4099
+ pe.styles = Je;
4061
4100
  ec([
4062
4101
  b({ type: String })
4063
4102
  ], pe.prototype, "status", 2);
@@ -4065,13 +4104,13 @@ pe = ec([
4065
4104
  _("cb-status-icon")
4066
4105
  ], pe);
4067
4106
  var Xa = Object.defineProperty, Qa = Object.getOwnPropertyDescriptor, e1 = (c, e, a, t) => {
4068
- for (var f = t > 1 ? void 0 : t ? Qa(e, a) : e, o = c.length - 1, d; o >= 0; o--)
4069
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
4107
+ for (var f = t > 1 ? void 0 : t ? Qa(e, a) : e, o = c.length - 1, r; o >= 0; o--)
4108
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
4070
4109
  return t && f && Xa(e, a, f), f;
4071
4110
  };
4072
4111
  let Me = class extends S {
4073
4112
  render() {
4074
- return r` <sl-alert variant="danger" open>
4113
+ return d` <sl-alert variant="danger" open>
4075
4114
  <cb-status-icon status="error" slot="icon"></cb-status-icon>
4076
4115
  Please config openai api key in the settings.
4077
4116
  <span
@@ -4091,8 +4130,8 @@ Me = e1([
4091
4130
  ], Me);
4092
4131
  class De extends Error {
4093
4132
  constructor(e, a, t) {
4094
- const f = e.status || e.status === 0 ? e.status : "", o = e.statusText || "", d = `${f} ${o}`.trim(), n = d ? `status code ${d}` : "an unknown error";
4095
- super(`Request failed with ${n}`), Object.defineProperty(this, "response", {
4133
+ const f = e.status || e.status === 0 ? e.status : "", o = e.statusText || "", r = `${f} ${o}`.trim(), s = r ? `status code ${r}` : "an unknown error";
4134
+ super(`Request failed with ${s}`), Object.defineProperty(this, "response", {
4096
4135
  enumerable: !0,
4097
4136
  configurable: !0,
4098
4137
  writable: !0,
@@ -4124,20 +4163,20 @@ const oe = (c) => c !== null && typeof c == "object", ae = (...c) => {
4124
4163
  for (const e of c)
4125
4164
  if ((!oe(e) || Array.isArray(e)) && typeof e < "u")
4126
4165
  throw new TypeError("The `options` argument must be an object");
4127
- return He({}, ...c);
4166
+ return Le({}, ...c);
4128
4167
  }, ac = (c = {}, e = {}) => {
4129
4168
  const a = new globalThis.Headers(c), t = e instanceof globalThis.Headers, f = new globalThis.Headers(e);
4130
- for (const [o, d] of f.entries())
4131
- t && d === "undefined" || d === void 0 ? a.delete(o) : a.set(o, d);
4169
+ for (const [o, r] of f.entries())
4170
+ t && r === "undefined" || r === void 0 ? a.delete(o) : a.set(o, r);
4132
4171
  return a;
4133
- }, He = (...c) => {
4172
+ }, Le = (...c) => {
4134
4173
  let e = {}, a = {};
4135
4174
  for (const t of c)
4136
4175
  if (Array.isArray(t))
4137
4176
  Array.isArray(e) || (e = []), e = [...e, ...t];
4138
4177
  else if (oe(t)) {
4139
4178
  for (let [f, o] of Object.entries(t))
4140
- oe(o) && f in e && (o = He(e[f], o)), e = { ...e, [f]: o };
4179
+ oe(o) && f in e && (o = Le(e[f], o)), e = { ...e, [f]: o };
4141
4180
  oe(t.headers) && (a = ac(a, t.headers), e.headers = a);
4142
4181
  }
4143
4182
  return e;
@@ -4158,14 +4197,14 @@ const oe = (c) => c !== null && typeof c == "object", ae = (...c) => {
4158
4197
  formData: "multipart/form-data",
4159
4198
  arrayBuffer: "*/*",
4160
4199
  blob: "*/*"
4161
- }, $e = 2147483647, fc = Symbol("stop"), d1 = (c) => tc.includes(c) ? c.toUpperCase() : c, r1 = ["get", "put", "head", "delete", "options", "trace"], b1 = [408, 413, 429, 500, 502, 503, 504], oc = [413, 429, 503], Fe = {
4200
+ }, $e = 2147483647, fc = Symbol("stop"), r1 = (c) => tc.includes(c) ? c.toUpperCase() : c, d1 = ["get", "put", "head", "delete", "options", "trace"], b1 = [408, 413, 429, 500, 502, 503, 504], oc = [413, 429, 503], Fe = {
4162
4201
  limit: 2,
4163
- methods: r1,
4202
+ methods: d1,
4164
4203
  statusCodes: b1,
4165
4204
  afterStatusCodes: oc,
4166
4205
  maxRetryAfter: Number.POSITIVE_INFINITY,
4167
4206
  backoffLimit: Number.POSITIVE_INFINITY
4168
- }, n1 = (c = {}) => {
4207
+ }, s1 = (c = {}) => {
4169
4208
  if (typeof c == "number")
4170
4209
  return {
4171
4210
  ...Fe,
@@ -4181,7 +4220,7 @@ const oe = (c) => c !== null && typeof c == "object", ae = (...c) => {
4181
4220
  afterStatusCodes: oc
4182
4221
  };
4183
4222
  };
4184
- async function s1(c, e, a) {
4223
+ async function n1(c, e, a) {
4185
4224
  return new Promise((t, f) => {
4186
4225
  const o = setTimeout(() => {
4187
4226
  e && e.abort(), f(new cc(c));
@@ -4222,39 +4261,39 @@ class he {
4222
4261
  if (t._options.timeout > $e)
4223
4262
  throw new RangeError(`The \`timeout\` option cannot be greater than ${$e}`);
4224
4263
  await Promise.resolve();
4225
- let n = await t._fetch();
4226
- for (const g of t._options.hooks.afterResponse) {
4227
- const k = await g(t.request, t._options, t._decorateResponse(n.clone()));
4228
- k instanceof globalThis.Response && (n = k);
4264
+ let s = await t._fetch();
4265
+ for (const m of t._options.hooks.afterResponse) {
4266
+ const k = await m(t.request, t._options, t._decorateResponse(s.clone()));
4267
+ k instanceof globalThis.Response && (s = k);
4229
4268
  }
4230
- if (t._decorateResponse(n), !n.ok && t._options.throwHttpErrors) {
4231
- let g = new De(n, t.request, t._options);
4269
+ if (t._decorateResponse(s), !s.ok && t._options.throwHttpErrors) {
4270
+ let m = new De(s, t.request, t._options);
4232
4271
  for (const k of t._options.hooks.beforeError)
4233
- g = await k(g);
4234
- throw g;
4272
+ m = await k(m);
4273
+ throw m;
4235
4274
  }
4236
4275
  if (t._options.onDownloadProgress) {
4237
4276
  if (typeof t._options.onDownloadProgress != "function")
4238
4277
  throw new TypeError("The `onDownloadProgress` option must be a function");
4239
4278
  if (!t1)
4240
4279
  throw new Error("Streams are not supported in your environment. `ReadableStream` is missing.");
4241
- return t._stream(n.clone(), t._options.onDownloadProgress);
4280
+ return t._stream(s.clone(), t._options.onDownloadProgress);
4242
4281
  }
4243
- return n;
4244
- }, d = t._options.retry.methods.includes(t.request.method.toLowerCase()) ? t._retry(f) : f();
4245
- for (const [n, g] of Object.entries(o1))
4246
- d[n] = async () => {
4247
- t.request.headers.set("accept", t.request.headers.get("accept") || g);
4248
- const C = (await d).clone();
4249
- if (n === "json") {
4282
+ return s;
4283
+ }, r = t._options.retry.methods.includes(t.request.method.toLowerCase()) ? t._retry(f) : f();
4284
+ for (const [s, m] of Object.entries(o1))
4285
+ r[s] = async () => {
4286
+ t.request.headers.set("accept", t.request.headers.get("accept") || m);
4287
+ const C = (await r).clone();
4288
+ if (s === "json") {
4250
4289
  if (C.status === 204 || (await C.clone().arrayBuffer()).byteLength === 0)
4251
4290
  return "";
4252
4291
  if (a.parseJson)
4253
4292
  return a.parseJson(await C.text());
4254
4293
  }
4255
- return C[n]();
4294
+ return C[s]();
4256
4295
  };
4257
- return d;
4296
+ return r;
4258
4297
  }
4259
4298
  // eslint-disable-next-line complexity
4260
4299
  constructor(e, a = {}) {
@@ -4288,16 +4327,16 @@ class he {
4288
4327
  credentials: this._input.credentials || "same-origin",
4289
4328
  ...a,
4290
4329
  headers: ac(this._input.headers, a.headers),
4291
- hooks: He({
4330
+ hooks: Le({
4292
4331
  beforeRequest: [],
4293
4332
  beforeRetry: [],
4294
4333
  beforeError: [],
4295
4334
  afterResponse: []
4296
4335
  }, a.hooks),
4297
- method: d1(a.method ?? this._input.method),
4336
+ method: r1(a.method ?? this._input.method),
4298
4337
  // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
4299
4338
  prefixUrl: String(a.prefixUrl || ""),
4300
- retry: n1(a.retry),
4339
+ retry: s1(a.retry),
4301
4340
  throwHttpErrors: a.throwHttpErrors !== !1,
4302
4341
  timeout: typeof a.timeout > "u" ? 1e4 : a.timeout,
4303
4342
  fetch: a.fetch ?? globalThis.fetch.bind(globalThis)
@@ -4374,7 +4413,7 @@ class he {
4374
4413
  if (a instanceof Response)
4375
4414
  return a;
4376
4415
  }
4377
- return this._options.timeout === !1 ? this._options.fetch(this.request.clone()) : s1(this.request.clone(), this.abortController, this._options);
4416
+ return this._options.timeout === !1 ? this._options.fetch(this.request.clone()) : n1(this.request.clone(), this.abortController, this._options);
4378
4417
  }
4379
4418
  /* istanbul ignore next */
4380
4419
  _stream(e, a) {
@@ -4386,11 +4425,11 @@ class he {
4386
4425
  headers: e.headers
4387
4426
  })) : new globalThis.Response(new globalThis.ReadableStream({
4388
4427
  async start(o) {
4389
- const d = e.body.getReader();
4428
+ const r = e.body.getReader();
4390
4429
  a && a({ percent: 0, transferredBytes: 0, totalBytes: t }, new Uint8Array());
4391
- async function n() {
4392
- const { done: g, value: k } = await d.read();
4393
- if (g) {
4430
+ async function s() {
4431
+ const { done: m, value: k } = await r.read();
4432
+ if (m) {
4394
4433
  o.close();
4395
4434
  return;
4396
4435
  }
@@ -4399,9 +4438,9 @@ class he {
4399
4438
  const C = t === 0 ? 0 : f / t;
4400
4439
  a({ percent: C, transferredBytes: f, totalBytes: t }, k);
4401
4440
  }
4402
- o.enqueue(k), await n();
4441
+ o.enqueue(k), await s();
4403
4442
  }
4404
- await n();
4443
+ await s();
4405
4444
  }
4406
4445
  }), {
4407
4446
  status: e.status,
@@ -4411,12 +4450,12 @@ class he {
4411
4450
  }
4412
4451
  }
4413
4452
  /*! MIT License © Sindre Sorhus */
4414
- const Ae = (c) => {
4453
+ const Ie = (c) => {
4415
4454
  const e = (a, t) => he.create(a, ae(c, t));
4416
4455
  for (const a of tc)
4417
4456
  e[a] = (t, f) => he.create(t, ae(c, f, { method: a }));
4418
- return e.create = (a) => Ae(ae(a)), e.extend = (a) => Ae(ae(c, a)), e.stop = fc, e;
4419
- }, p1 = Ae(), h1 = p1, u1 = h1.extend({
4457
+ return e.create = (a) => Ie(ae(a)), e.extend = (a) => Ie(ae(c, a)), e.stop = fc, e;
4458
+ }, p1 = Ie(), h1 = p1, u1 = h1.extend({
4420
4459
  hooks: {
4421
4460
  beforeRequest: [
4422
4461
  () => {
@@ -4425,22 +4464,22 @@ const Ae = (c) => {
4425
4464
  }
4426
4465
  });
4427
4466
  async function g1(c, e) {
4428
- const { onmessage: a, onclose: t, ...f } = e, o = async (d, n) => {
4429
- const { value: g, done: k } = await n.read();
4430
- k ? (d.close(), t == null || t()) : (a == null || a(g), d.enqueue(g), o(d, n));
4467
+ const { onmessage: a, onclose: t, ...f } = e, o = async (r, s) => {
4468
+ const { value: m, done: k } = await s.read();
4469
+ k ? (r.close(), t == null || t()) : (a == null || a(m), r.enqueue(m), o(r, s));
4431
4470
  };
4432
- return f.body && typeof f.body == "object" && (f.body = JSON.stringify(f.body)), console.log("Fetching:", f), fetch(c, f).then((d) => {
4433
- const n = d.body.getReader();
4471
+ return f.body && typeof f.body == "object" && (f.body = JSON.stringify(f.body)), console.log("Fetching:", f), fetch(c, f).then((r) => {
4472
+ const s = r.body.getReader();
4434
4473
  return new ReadableStream({
4435
4474
  start(k) {
4436
4475
  o(
4437
4476
  k,
4438
- n
4477
+ s
4439
4478
  );
4440
4479
  }
4441
4480
  });
4442
4481
  }).then(
4443
- (d) => new Response(d, {
4482
+ (r) => new Response(r, {
4444
4483
  headers: { "Content-Type": "text/html" }
4445
4484
  }).text()
4446
4485
  );
@@ -4463,15 +4502,15 @@ async function m1(c, e) {
4463
4502
  }
4464
4503
  }
4465
4504
  var y1 = Object.defineProperty, v1 = Object.getOwnPropertyDescriptor, v = (c, e, a, t) => {
4466
- for (var f = t > 1 ? void 0 : t ? v1(e, a) : e, o = c.length - 1, d; o >= 0; o--)
4467
- (d = c[o]) && (f = (t ? d(e, a, f) : d(f)) || f);
4505
+ for (var f = t > 1 ? void 0 : t ? v1(e, a) : e, o = c.length - 1, r; o >= 0; o--)
4506
+ (r = c[o]) && (f = (t ? r(e, a, f) : r(f)) || f);
4468
4507
  return t && f && y1(e, a, f), f;
4469
4508
  };
4470
- const de = me.noConflict();
4471
- de.setLevel("info");
4472
- let u = class extends S {
4509
+ const re = me.noConflict();
4510
+ re.setLevel("info");
4511
+ let g = class extends S {
4473
4512
  constructor() {
4474
- super(...arguments), this.store = new Ne(this, s), this.displayLicense = !1, this.name = "ChatBot", this.orgId = "", this.botId = "", this.url = "ws://localhost:3070", this.logoSvg = ` <svg width="24" height="24" viewBox="0 0 40 40">
4513
+ super(...arguments), this.store = new Ne(this, n), this.displayLicense = !1, this.name = "ChatBot", this.orgId = "", this.botId = "", this.url = "ws://localhost:3070", this.logoSvg = ` <svg width="24" height="24" viewBox="0 0 40 40">
4475
4514
  <path
4476
4515
  d="M34.728 0.275L2.245 15.267c-3.748 1.749 -2.498 7.246 1.499 7.246h13.743v13.743c0 3.998 5.497 5.248 7.246 1.499l14.992 -32.483c1.249 -2.999 -1.999 -6.248 -4.998 -4.998z"
4477
4516
  fill="#E24D42"
@@ -4493,7 +4532,7 @@ let u = class extends S {
4493
4532
  isThinking: !0,
4494
4533
  data: {}
4495
4534
  };
4496
- return s.addMessage(c), c;
4535
+ return n.addMessage(c), c;
4497
4536
  }
4498
4537
  addTestMessage() {
4499
4538
  const c = {
@@ -4504,31 +4543,31 @@ let u = class extends S {
4504
4543
  text: "Long text.The element may not be scrolled completely to the top or bottom depending on the layout of other elements.The element may not be scrolled completely to the top or bottom depending on the layout of other elements."
4505
4544
  }
4506
4545
  };
4507
- return s.addMessage(c), c;
4546
+ return n.addMessage(c), c;
4508
4547
  }
4509
4548
  render() {
4510
- return s.disabled ? (de.error("Bot is disabled"), null) : r`
4511
- <div class="cb-wrapper" style="${s.open ? "display:flex" : "display:none"}">
4549
+ return n.disabled ? (re.error("Bot is disabled"), null) : d`
4550
+ <div class="cb-wrapper" style="${n.open ? "display:flex" : "display:none"}">
4512
4551
  <cb-header title="${this.name}" exportparts="header"></cb-header>
4513
- <cb-message-list .messages=${s.messages} .actions=${s.actions} .form=${s.form} exportparts="form"></cb-message-list>
4552
+ <cb-message-list .messages=${n.messages} .actions=${n.actions} .form=${n.form} exportparts="form"></cb-message-list>
4514
4553
  ${this.renderUserInput()}
4515
4554
  </div>
4516
- <cb-anchor ?open=${s.open}></cb-anchor>
4555
+ <cb-anchor ?open=${n.open}></cb-anchor>
4517
4556
  `;
4518
4557
  }
4519
4558
  renderUserInput() {
4520
- return s.form ? null : r`<cb-user-input ?loading=${this.loading} ?disabled=${this.loading || s.form} ?enable-file-upload=${this.enableFileUpload}></cb-user-input>`;
4559
+ return n.form ? null : d`<cb-user-input ?loading=${this.loading} ?disabled=${this.loading || n.form} ?enable-file-upload=${this.enableFileUpload}></cb-user-input>`;
4521
4560
  }
4522
4561
  connectedCallback() {
4523
- super.connectedCallback(), de.info("connectedCallback"), addEventListener("setting:show", () => {
4562
+ super.connectedCallback(), re.info("connectedCallback"), addEventListener("setting:show", () => {
4524
4563
  this.showSetting = !0;
4525
4564
  }), addEventListener("message:send", this._addMessageHandler.bind(this)), addEventListener("message:remove", this._deleteMessageHandler.bind(this)), addEventListener("setting:confirm", this._settingConfirmHandler.bind(this)), addEventListener("setting:hide", () => {
4526
4565
  this.showSetting = !1;
4527
4566
  }), addEventListener("chatbot:toggle", (c) => {
4528
4567
  const e = c.detail;
4529
- s.open = e.open, s.engage = !1;
4568
+ n.open = e.open, n.engage = !1;
4530
4569
  }), addEventListener("message:clear", () => {
4531
- s.clearMessages();
4570
+ n.clearMessages();
4532
4571
  }), addEventListener("message:send:file", this._sendFileHandler.bind(this)), addEventListener("setting:show", () => {
4533
4572
  this.showSetting = !0;
4534
4573
  }), addEventListener("form:submit", this._formSubmitHandler.bind(this));
@@ -4537,20 +4576,20 @@ let u = class extends S {
4537
4576
  // Use to initialize
4538
4577
  // This is also called when state changes - ??? - i.e. when message added to the array
4539
4578
  updated(c) {
4540
- super.updated(c), c.size > 0 && (de.info("updated,_changedProperties:", c), this._initSetting()), setTimeout(() => {
4579
+ super.updated(c), c.size > 0 && (re.info("updated,_changedProperties:", c), this._initSetting()), setTimeout(() => {
4541
4580
  this._scrollToBottom();
4542
4581
  }, 0);
4543
4582
  }
4544
4583
  // initialize setting
4545
4584
  _initSetting() {
4546
- const c = s.setting;
4547
- c.orgId = this.orgId, c.botId = this.botId, c.url = this.url, c.logoSvg = this.logoSvg, c.botIconSvg = this.botIconSvg, c.userIconSvg = this.userIconSvg, c.systemIconSvg = this.systemIconSvg, s.setSetting(c);
4585
+ const c = n.setting;
4586
+ c.orgId = this.orgId, c.botId = this.botId, c.url = this.url, c.logoSvg = this.logoSvg, c.botIconSvg = this.botIconSvg, c.userIconSvg = this.userIconSvg, c.systemIconSvg = this.systemIconSvg, n.setSetting(c);
4548
4587
  }
4549
4588
  setLoading(c) {
4550
4589
  this.loading = c;
4551
4590
  }
4552
4591
  clearConversation() {
4553
- s.clearConversation();
4592
+ n.clearConversation();
4554
4593
  }
4555
4594
  // check auth
4556
4595
  _checkAuth() {
@@ -4626,11 +4665,11 @@ let u = class extends S {
4626
4665
  */
4627
4666
  _addMessageHandler(c) {
4628
4667
  const e = c.detail;
4629
- s.sendMessage(e);
4668
+ n.sendMessage(e);
4630
4669
  }
4631
4670
  _deleteMessageHandler(c) {
4632
4671
  const e = c.detail;
4633
- s.removeMessage(e.id);
4672
+ n.removeMessage(e.id);
4634
4673
  }
4635
4674
  async _sendFileHandler(c) {
4636
4675
  const e = c.detail, t = {
@@ -4647,11 +4686,11 @@ let u = class extends S {
4647
4686
  }))
4648
4687
  }
4649
4688
  };
4650
- if (s.addMessage(t), this.uploadFileUrl) {
4689
+ if (n.addMessage(t), this.uploadFileUrl) {
4651
4690
  const f = await m1(this.uploadFileUrl, e.files);
4652
4691
  f.code === 0 && f.data && (t.isUploading = !1, t.data = {
4653
4692
  files: f.data
4654
- }, s.updateMessage(t));
4693
+ }, n.updateMessage(t));
4655
4694
  }
4656
4695
  this.emit("chatbot:file:send", {
4657
4696
  detail: {
@@ -4663,7 +4702,7 @@ let u = class extends S {
4663
4702
  // setting confirm handler
4664
4703
  _settingConfirmHandler(c) {
4665
4704
  const e = c.detail;
4666
- s.setSetting(e.setting), this.showSetting = !1, this._checkAuth();
4705
+ n.setSetting(e.setting), this.showSetting = !1, this._checkAuth();
4667
4706
  }
4668
4707
  async _formSubmitHandler(c) {
4669
4708
  }
@@ -4673,64 +4712,64 @@ let u = class extends S {
4673
4712
  (e = this._messageList) == null || e.scrollToBottom();
4674
4713
  }
4675
4714
  };
4676
- u.styles = xc;
4715
+ g.styles = xc;
4677
4716
  v([
4678
4717
  b({ type: Boolean, attribute: "display-license" })
4679
- ], u.prototype, "displayLicense", 2);
4718
+ ], g.prototype, "displayLicense", 2);
4680
4719
  v([
4681
4720
  b({ type: String, attribute: "name" })
4682
- ], u.prototype, "name", 2);
4721
+ ], g.prototype, "name", 2);
4683
4722
  v([
4684
4723
  b({ type: String, attribute: "org-id" })
4685
- ], u.prototype, "orgId", 2);
4724
+ ], g.prototype, "orgId", 2);
4686
4725
  v([
4687
4726
  b({ type: String, attribute: "bot-id" })
4688
- ], u.prototype, "botId", 2);
4727
+ ], g.prototype, "botId", 2);
4689
4728
  v([
4690
4729
  b({ type: String, attribute: "url" })
4691
- ], u.prototype, "url", 2);
4730
+ ], g.prototype, "url", 2);
4692
4731
  v([
4693
4732
  b({ type: String, attribute: "logo-svg" })
4694
- ], u.prototype, "logoSvg", 2);
4733
+ ], g.prototype, "logoSvg", 2);
4695
4734
  v([
4696
4735
  b({ type: String, attribute: "bot-icon-svg" })
4697
- ], u.prototype, "botIconSvg", 2);
4736
+ ], g.prototype, "botIconSvg", 2);
4698
4737
  v([
4699
4738
  b({ type: String, attribute: "user-icon-svg" })
4700
- ], u.prototype, "userIconSvg", 2);
4739
+ ], g.prototype, "userIconSvg", 2);
4701
4740
  v([
4702
4741
  b({ type: String, attribute: "system-icon-svg" })
4703
- ], u.prototype, "systemIconSvg", 2);
4742
+ ], g.prototype, "systemIconSvg", 2);
4704
4743
  v([
4705
4744
  b({ type: Boolean, attribute: "stream" })
4706
- ], u.prototype, "stream", 2);
4745
+ ], g.prototype, "stream", 2);
4707
4746
  v([
4708
4747
  b({ type: Boolean, attribute: "custom-request" })
4709
- ], u.prototype, "customRequest", 2);
4748
+ ], g.prototype, "customRequest", 2);
4710
4749
  v([
4711
4750
  b({ type: Boolean, attribute: "enable-file-upload" })
4712
- ], u.prototype, "enableFileUpload", 2);
4751
+ ], g.prototype, "enableFileUpload", 2);
4713
4752
  v([
4714
4753
  b({ type: String, attribute: "upload-file-url" })
4715
- ], u.prototype, "uploadFileUrl", 2);
4754
+ ], g.prototype, "uploadFileUrl", 2);
4716
4755
  v([
4717
4756
  b({ type: Boolean, attribute: "open" })
4718
- ], u.prototype, "open", 2);
4757
+ ], g.prototype, "open", 2);
4719
4758
  v([
4720
4759
  b({ type: Boolean })
4721
- ], u.prototype, "loading", 2);
4760
+ ], g.prototype, "loading", 2);
4722
4761
  v([
4723
4762
  b({ type: Boolean })
4724
- ], u.prototype, "showSetting", 2);
4763
+ ], g.prototype, "showSetting", 2);
4725
4764
  v([
4726
4765
  b({ type: Boolean })
4727
- ], u.prototype, "showAuthAlert", 2);
4766
+ ], g.prototype, "showAuthAlert", 2);
4728
4767
  v([
4729
4768
  ee("cb-message-list")
4730
- ], u.prototype, "_messageList", 2);
4731
- u = v([
4769
+ ], g.prototype, "_messageList", 2);
4770
+ g = v([
4732
4771
  _("enegelai-bot")
4733
- ], u);
4772
+ ], g);
4734
4773
  export {
4735
- u as default
4774
+ g as default
4736
4775
  };