@enegelai/bot-widget 1.18.1 → 1.18.2
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/enegelaibot.umd.js +201 -196
- package/dist/index.es.js +349 -331
- package/package.json +1 -1
package/dist/index.es.js
CHANGED
|
@@ -22,29 +22,29 @@ import "@shoelace-style/shoelace/dist/components/alert/alert.js";
|
|
|
22
22
|
import "@shoelace-style/shoelace/dist/components/progress-bar/progress-bar.js";
|
|
23
23
|
import "@shoelace-style/shoelace/dist/components/badge/badge.js";
|
|
24
24
|
import { repeat as et } from "lit/directives/repeat.js";
|
|
25
|
-
import { until as
|
|
25
|
+
import { until as bt } from "lit-html/directives/until.js";
|
|
26
26
|
import Di from "markdown-it";
|
|
27
27
|
import Fi from "markdown-it-link-attributes";
|
|
28
|
-
import
|
|
28
|
+
import Gt from "highlight.js";
|
|
29
29
|
import "@shoelace-style/shoelace/dist/components/popup/popup.js";
|
|
30
30
|
import "@shoelace-style/shoelace/dist/components/rating/rating.js";
|
|
31
|
-
import { createRef as ji, ref as
|
|
31
|
+
import { createRef as ji, ref as Tt } from "lit/directives/ref.js";
|
|
32
32
|
function Na(a) {
|
|
33
33
|
return typeof a == "function" ? a() : a;
|
|
34
34
|
}
|
|
35
|
-
const
|
|
35
|
+
const Ut = class Ut extends Event {
|
|
36
36
|
/**
|
|
37
37
|
* @param {string} key of the state that has changed
|
|
38
38
|
* @param {unknown} value for the changed key
|
|
39
39
|
*/
|
|
40
40
|
constructor(e, t, i) {
|
|
41
|
-
super(
|
|
41
|
+
super(Ut.eventName, {
|
|
42
42
|
cancelable: !1
|
|
43
43
|
}), this.key = e, this.value = t, this.state = i;
|
|
44
44
|
}
|
|
45
45
|
};
|
|
46
|
-
|
|
47
|
-
let at =
|
|
46
|
+
Ut.eventName = "lit-state-changed";
|
|
47
|
+
let at = Ut;
|
|
48
48
|
const Hi = (a, e) => e !== a && (e === e || a === a), ua = class ua extends EventTarget {
|
|
49
49
|
static initPropertyMap() {
|
|
50
50
|
this.propertyMap || (this.propertyMap = /* @__PURE__ */ new Map());
|
|
@@ -120,7 +120,7 @@ const Hi = (a, e) => e !== a && (e === e || a === a), ua = class ua extends Even
|
|
|
120
120
|
}
|
|
121
121
|
};
|
|
122
122
|
ua.finalized = !1;
|
|
123
|
-
let
|
|
123
|
+
let Jt = ua;
|
|
124
124
|
class it {
|
|
125
125
|
constructor(e, t, i) {
|
|
126
126
|
this.host = e, this.state = t, this.callback = i || (() => this.host.requestUpdate()), this.host.addController(this);
|
|
@@ -181,7 +181,7 @@ function ce(a) {
|
|
|
181
181
|
function Wa(a) {
|
|
182
182
|
return a && a.__esModule && Object.prototype.hasOwnProperty.call(a, "default") ? a.default : a;
|
|
183
183
|
}
|
|
184
|
-
var
|
|
184
|
+
var Rt = { exports: {} }, Ni = Rt.exports, _a;
|
|
185
185
|
function Wi() {
|
|
186
186
|
return _a || (_a = 1, (function(a) {
|
|
187
187
|
(function(e, t) {
|
|
@@ -232,8 +232,8 @@ function Wi() {
|
|
|
232
232
|
function P(M, L) {
|
|
233
233
|
var C = this, Z, N, X, te = "loglevel";
|
|
234
234
|
typeof M == "string" ? te += ":" + M : typeof M == "symbol" && (te = void 0);
|
|
235
|
-
function He(
|
|
236
|
-
var U = (s[
|
|
235
|
+
function He(V) {
|
|
236
|
+
var U = (s[V] || "silent").toUpperCase();
|
|
237
237
|
if (!(typeof window === t || !te)) {
|
|
238
238
|
try {
|
|
239
239
|
window.localStorage[te] = U;
|
|
@@ -247,21 +247,21 @@ function Wi() {
|
|
|
247
247
|
}
|
|
248
248
|
}
|
|
249
249
|
function ae() {
|
|
250
|
-
var
|
|
250
|
+
var V;
|
|
251
251
|
if (!(typeof window === t || !te)) {
|
|
252
252
|
try {
|
|
253
|
-
|
|
253
|
+
V = window.localStorage[te];
|
|
254
254
|
} catch {
|
|
255
255
|
}
|
|
256
|
-
if (typeof
|
|
256
|
+
if (typeof V === t)
|
|
257
257
|
try {
|
|
258
258
|
var U = window.document.cookie, $e = encodeURIComponent(te), Pe = U.indexOf($e + "=");
|
|
259
|
-
Pe !== -1 && (
|
|
259
|
+
Pe !== -1 && (V = /^([^;]+)/.exec(
|
|
260
260
|
U.slice(Pe + $e.length + 1)
|
|
261
261
|
)[1]);
|
|
262
262
|
} catch {
|
|
263
263
|
}
|
|
264
|
-
return C.levels[
|
|
264
|
+
return C.levels[V] === void 0 && (V = void 0), V;
|
|
265
265
|
}
|
|
266
266
|
}
|
|
267
267
|
function he() {
|
|
@@ -276,11 +276,11 @@ function Wi() {
|
|
|
276
276
|
}
|
|
277
277
|
}
|
|
278
278
|
}
|
|
279
|
-
function ge(
|
|
280
|
-
var U =
|
|
279
|
+
function ge(V) {
|
|
280
|
+
var U = V;
|
|
281
281
|
if (typeof U == "string" && C.levels[U.toUpperCase()] !== void 0 && (U = C.levels[U.toUpperCase()]), typeof U == "number" && U >= 0 && U <= C.levels.SILENT)
|
|
282
282
|
return U;
|
|
283
|
-
throw new TypeError("log.setLevel() called with invalid level: " +
|
|
283
|
+
throw new TypeError("log.setLevel() called with invalid level: " + V);
|
|
284
284
|
}
|
|
285
285
|
C.name = M, C.levels = {
|
|
286
286
|
TRACE: 0,
|
|
@@ -291,25 +291,25 @@ function Wi() {
|
|
|
291
291
|
SILENT: 5
|
|
292
292
|
}, C.methodFactory = L || _, C.getLevel = function() {
|
|
293
293
|
return X ?? N ?? Z;
|
|
294
|
-
}, C.setLevel = function(
|
|
295
|
-
return X = ge(
|
|
296
|
-
}, C.setDefaultLevel = function(
|
|
297
|
-
N = ge(
|
|
294
|
+
}, C.setLevel = function(V, U) {
|
|
295
|
+
return X = ge(V), U !== !1 && He(X), k.call(C);
|
|
296
|
+
}, C.setDefaultLevel = function(V) {
|
|
297
|
+
N = ge(V), ae() || C.setLevel(V, !1);
|
|
298
298
|
}, C.resetLevel = function() {
|
|
299
299
|
X = null, he(), k.call(C);
|
|
300
|
-
}, C.enableAll = function(
|
|
301
|
-
C.setLevel(C.levels.TRACE,
|
|
302
|
-
}, C.disableAll = function(
|
|
303
|
-
C.setLevel(C.levels.SILENT,
|
|
300
|
+
}, C.enableAll = function(V) {
|
|
301
|
+
C.setLevel(C.levels.TRACE, V);
|
|
302
|
+
}, C.disableAll = function(V) {
|
|
303
|
+
C.setLevel(C.levels.SILENT, V);
|
|
304
304
|
}, C.rebuild = function() {
|
|
305
305
|
if (o !== C && (Z = ge(o.getLevel())), k.call(C), o === C)
|
|
306
|
-
for (var
|
|
307
|
-
r[
|
|
306
|
+
for (var V in r)
|
|
307
|
+
r[V].rebuild();
|
|
308
308
|
}, Z = ge(
|
|
309
309
|
o ? o.getLevel() : "WARN"
|
|
310
310
|
);
|
|
311
|
-
var
|
|
312
|
-
|
|
311
|
+
var H = ae();
|
|
312
|
+
H != null && (X = ge(H)), k.call(C);
|
|
313
313
|
}
|
|
314
314
|
o = new P(), o.getLogger = function(L) {
|
|
315
315
|
if (typeof L != "symbol" && typeof L != "string" || L === "")
|
|
@@ -327,7 +327,7 @@ function Wi() {
|
|
|
327
327
|
return r;
|
|
328
328
|
}, o.default = o, o;
|
|
329
329
|
});
|
|
330
|
-
})(
|
|
330
|
+
})(Rt)), Rt.exports;
|
|
331
331
|
}
|
|
332
332
|
var Gi = Wi();
|
|
333
333
|
const Ke = /* @__PURE__ */ Wa(Gi), Xi = K`
|
|
@@ -366,8 +366,7 @@ const Ke = /* @__PURE__ */ Wa(Gi), Xi = K`
|
|
|
366
366
|
font-weight: 400;
|
|
367
367
|
line-height: 20px;
|
|
368
368
|
|
|
369
|
-
z-index:
|
|
370
|
-
|
|
369
|
+
z-index: 100000;
|
|
371
370
|
//animation: fadeIn 0.1s ease-in-out;
|
|
372
371
|
}
|
|
373
372
|
|
|
@@ -668,7 +667,7 @@ var Yi = Object.defineProperty, Ki = Object.getOwnPropertyDescriptor, ra = (a, e
|
|
|
668
667
|
(o = a[r]) && (s = (i ? o(e, t, s) : o(s)) || s);
|
|
669
668
|
return i && s && Yi(e, t, s), s;
|
|
670
669
|
};
|
|
671
|
-
let
|
|
670
|
+
let pt = class extends Fe {
|
|
672
671
|
constructor() {
|
|
673
672
|
super(...arguments), this.color = "primary", this.svg = "";
|
|
674
673
|
}
|
|
@@ -676,16 +675,16 @@ let bt = class extends Fe {
|
|
|
676
675
|
return b`<span class="cb-icon" part="base">${G(this.svg)}</span>`;
|
|
677
676
|
}
|
|
678
677
|
};
|
|
679
|
-
|
|
678
|
+
pt.styles = Ga;
|
|
680
679
|
ra([
|
|
681
680
|
x({ type: String })
|
|
682
|
-
],
|
|
681
|
+
], pt.prototype, "color", 2);
|
|
683
682
|
ra([
|
|
684
683
|
x({ type: String })
|
|
685
|
-
],
|
|
686
|
-
|
|
684
|
+
], pt.prototype, "svg", 2);
|
|
685
|
+
pt = ra([
|
|
687
686
|
J("cb-icon")
|
|
688
|
-
],
|
|
687
|
+
], pt);
|
|
689
688
|
let Ji = (a) => crypto.getRandomValues(new Uint8Array(a)), Zi = (a, e, t) => {
|
|
690
689
|
let i = (2 << Math.log2(a.length - 1)) - 1, s = -~(1.6 * i * e / a.length);
|
|
691
690
|
return (r = e) => {
|
|
@@ -721,7 +720,7 @@ function Xa(a = !0, e = null) {
|
|
|
721
720
|
}), i.click();
|
|
722
721
|
});
|
|
723
722
|
}
|
|
724
|
-
function
|
|
723
|
+
function xt(a) {
|
|
725
724
|
if (!a || typeof a != "string")
|
|
726
725
|
return "";
|
|
727
726
|
const e = "__AMP__TOKEN__";
|
|
@@ -1058,7 +1057,7 @@ for (let a = 1; a <= 8; a++)
|
|
|
1058
1057
|
const t = Ca[e];
|
|
1059
1058
|
We.push(t / Math.pow(2, 8 - a)), oa.push(ss[e] + a);
|
|
1060
1059
|
}
|
|
1061
|
-
const
|
|
1060
|
+
const Ot = [32, 2e3], Aa = We.filter((a, e) => We[e] > Ot[0] && We[e] < Ot[1]), ns = oa.filter((a, e) => We[e] > Ot[0] && We[e] < Ot[1]);
|
|
1062
1061
|
class lt {
|
|
1063
1062
|
/**
|
|
1064
1063
|
* Retrieves frequency domain data from an AnalyserNode adjusted to a decibel range
|
|
@@ -2712,8 +2711,8 @@ class vs {
|
|
|
2712
2711
|
const $e = _[U], Pe = P[ae + U];
|
|
2713
2712
|
he += $e * Pe, ge += Pe * Pe;
|
|
2714
2713
|
}
|
|
2715
|
-
const
|
|
2716
|
-
if (
|
|
2714
|
+
const H = E * (Math.sqrt(ge) + 1e-12), V = H > 0 ? he / H : 0;
|
|
2715
|
+
if (V > He && (He = V), He > Math.min(0.98, this.threshold + 0.25)) break;
|
|
2717
2716
|
}
|
|
2718
2717
|
if (He >= this.threshold) {
|
|
2719
2718
|
if (this._holdRemain = Math.max(this._holdRemain, Math.round(this.holdMs * this.sr / 1e3)), this.mode === "drop") return null;
|
|
@@ -2956,7 +2955,7 @@ class xs {
|
|
|
2956
2955
|
}
|
|
2957
2956
|
const Ne = Ke.noConflict();
|
|
2958
2957
|
Ne.setLevel("info");
|
|
2959
|
-
class
|
|
2958
|
+
class gt extends is {
|
|
2960
2959
|
constructor(e = {}) {
|
|
2961
2960
|
super({ name: "WebAudioProcessorV2" }), this.options = e, this.muted = !1, this.audioRecorder = new ot({
|
|
2962
2961
|
targetSampleRate: 24e3,
|
|
@@ -3080,7 +3079,7 @@ class pt extends is {
|
|
|
3080
3079
|
t = this.ducker.applyInt16(t);
|
|
3081
3080
|
const i = this.useAdaptiveSuppressor ? this.mixMinusSmooth.filterMicFrame(t) : this.mixMinus.filterMicFrame(t) || new Int16Array(0);
|
|
3082
3081
|
if (i.length === 0) return;
|
|
3083
|
-
const s =
|
|
3082
|
+
const s = gt.arrayBufferToBase64(i);
|
|
3084
3083
|
Ne.info(`Audio: mono ${e.mono.byteLength} bytes, base64 ${s.length} bytes`), this.emit("audio", { audio: s });
|
|
3085
3084
|
}
|
|
3086
3085
|
}));
|
|
@@ -3099,7 +3098,7 @@ class pt extends is {
|
|
|
3099
3098
|
if (!this.started) return;
|
|
3100
3099
|
let i = 1e3;
|
|
3101
3100
|
this._didPlayOnce || (i = 3e3, this._didPlayOnce = !0), console.log(`${Date.now()}: WebAudioProcessorV2: TTSStart - applying ducking/shielding`), this.ducker.duckActive || (this.firstTurnGate.arm(i), this.ducker.onTTSStart());
|
|
3102
|
-
const s =
|
|
3101
|
+
const s = gt.base64ToArrayBuffer(e), r = new Int16Array(s);
|
|
3103
3102
|
this.useAdaptiveSuppressor ? this.mixMinusSmooth.pushPlaybackPCM(r) : this.mixMinus.pushPlaybackPCM(r), this.audioPlayer.add16BitPCM(s, t);
|
|
3104
3103
|
}
|
|
3105
3104
|
handleOnPlaybackEnded() {
|
|
@@ -3173,20 +3172,20 @@ class pt extends is {
|
|
|
3173
3172
|
return i.set(e, 0), i.set(t, e.length), i;
|
|
3174
3173
|
}
|
|
3175
3174
|
}
|
|
3176
|
-
globalThis.WebAudioProcessorV2 =
|
|
3175
|
+
globalThis.WebAudioProcessorV2 = gt;
|
|
3177
3176
|
var ks = Object.defineProperty, _s = Object.getOwnPropertyDescriptor, st = (a, e, t, i) => {
|
|
3178
3177
|
for (var s = i > 1 ? void 0 : i ? _s(e, t) : e, r = a.length - 1, o; r >= 0; r--)
|
|
3179
3178
|
(o = a[r]) && (s = (i ? o(e, t, s) : o(s)) || s);
|
|
3180
3179
|
return i && s && ks(e, t, s), s;
|
|
3181
3180
|
};
|
|
3182
|
-
const
|
|
3181
|
+
const It = "cb-toast-outlet", Ea = "cb-toast-outlet-style";
|
|
3183
3182
|
function Ss() {
|
|
3184
|
-
let a = document.getElementById(
|
|
3185
|
-
if (a || (a = document.createElement("div"), a.id =
|
|
3183
|
+
let a = document.getElementById(It);
|
|
3184
|
+
if (a || (a = document.createElement("div"), a.id = It, document.body.appendChild(a)), !document.getElementById(Ea)) {
|
|
3186
3185
|
const e = document.createElement("style");
|
|
3187
3186
|
e.id = Ea, e.textContent = `
|
|
3188
3187
|
/* Global outlet that holds all toasts */
|
|
3189
|
-
#${
|
|
3188
|
+
#${It} {
|
|
3190
3189
|
position: fixed;
|
|
3191
3190
|
right: 40px;
|
|
3192
3191
|
bottom: 55px;
|
|
@@ -3198,7 +3197,7 @@ function Ss() {
|
|
|
3198
3197
|
pointer-events: none; /* clicks pass through except on toast itself */
|
|
3199
3198
|
}
|
|
3200
3199
|
@media (max-width: 600px) {
|
|
3201
|
-
#${
|
|
3200
|
+
#${It} {
|
|
3202
3201
|
left: 8px;
|
|
3203
3202
|
right: 8px;
|
|
3204
3203
|
align-items: stretch; /* stretch toasts to full width on mobile */
|
|
@@ -3467,7 +3466,7 @@ function Is(a, e) {
|
|
|
3467
3466
|
}
|
|
3468
3467
|
return t;
|
|
3469
3468
|
}
|
|
3470
|
-
var
|
|
3469
|
+
var Xt = /* @__PURE__ */ Cs(function(e, t, i) {
|
|
3471
3470
|
return Ts(e, Is(t, i));
|
|
3472
3471
|
});
|
|
3473
3472
|
const Es = "fffbd0c40003a861a6f64deb05ce8fbd1dc1ee6979000bf3230f3195138b950cbe3649439256307747d31c26065d09cfae70d799f0a043c6a90008c0101188082314680d008619c9079b61dc806a921a220095277a60d4131e44143d53814e10f4d06ba6491eb478900a8d59016632a23e0fa358875c770146cc650c1c499dcb9b0965d7500106c321427219428febbdafb2b5d76979a75ae40018d025f96f71bad4b0257666051808e5b74c34bf2db9660bb0e24b2a35886616f617013a24104242304600910b1130dc7b4e81750bb1216e880432ac0d75b0a2a1834f45e8e9a279a9c6c22cc9a7e3ac01cc5335e8c0d97180c960bad7998ce9ac025a2f1a0c888e02c46508045a96a20a60c91980100828a917425f96ddc64bc2ea19146c50b00bde68319005d85d10e462314ae197f0b48c74bfe986ced9dac3a9bbfad7e8f7ac2a525253c6e36cad4dd7c20e2ec4842dba61cbf30f0f7d628635005a66e63ec63560f22a48c694034a695617e603c12c05077310c0923018053379a48d1e921e409b28546c46619d8fa6c9b019ea20762d318e34c6291699d98662a61861204fda2a7933d57c1d023391f8605262a1598449c1ca332e084cb25a3198ac94666361b99f05c67c1aba0151b18d456ec8e0b4c667924153ba632409114cc587c7867ca8c047dcd7a834bc8d2a033a141df48ab82a803bd1a8651a215e356c6161b062114cb841dd89589b05f0d10ad255c4d70d8ad245e4abcd6b33fca8d6af5cc3db8d9244511ab2206a56c885690ad12cc1ba16308528d539daa40b22baf35eb61a7044a988132e926b754d82ea8ca85199ad5c42c0d62d35eb8d7301d56ef5b26c451748198c2a22c319b24ab67a246b186c8af0d54354c0957c342d9a2a4d7b3245e585c4d7254e107501450bb46abbfa38b2331996d9bae08953352c48af43d5c7b08b6572a44e0b11775fd8cbb2b0b0343230c6c5add2ca5ac8d549765977ff78e59659ca49adde749c6789409753bcff43d1a8d46a532da5a5a5a5a5a5a5a6a6a6a6a6a6a6a6a6ab671c71c71c6ae4141414140a0a0a0a0c2b06e0b039c1829859998b165991a5d2aa598e0a714183727471921e5721a1037a9c2fb7a1b9c0dc99c6ab19b821219de39219b82a521908908987d2ab1aab194159219cb31211fffbd2c42383f4bda0d20ffba7c624b3dd01eee938b82f149f14b82951c14d290908c90d294c90a598b0948572ce584a434a54a52b4a42c3829592199219219a52921160908d295294b1c79b70dc9b72dc9b70dc15b71e6dc37058e3cdb8e34db9e3cadb82c37056dc95f1e7c6f1e58e3cadb8f2c4845721f96242f2c485e7214865721f962422c484721c845890cb121f9c872116242f2b908e4390bfcae432b908ae43f390e432c486721c85e5890cae432b90ce42908b121f9c8721962432c484721c865890ce4290bcae432b90bcae43390a432c485e58908e4290bcb121f95c86721c865890cae432b90cae42ff390e422b90cae422b90fcb121795c865721795c86721487e721c87e58908ae422b90bcb12195c845721796242f2c48658908ae43ff390e43fff390e422c4865890cb121ff9c872196243f2b90bcae42fff2c48458908b12116243f2b90ffcae43fff2c485e5890bfffcae422c485fe5721796243f2b90bfcae42ffff2b90ffcae432c48460a40a6618626a61ce3d466883d6645657458106350e2d6321a39532150c231a421532413d3399952b690e8430cc534d4ad0638ad993418742c24072f7385897cae5e348120397e5e348521397e5e2b734cd8364b06c160d93364d82c0ea6838ea63a0e863a8e9e581d4ca0283cd5d284b050795942650143e6e1c1b87058706e5c95b9370e4dcb92c382b706e1c15d22c522ba7e574cae9f9d2a458a474a995d32c52ff2ba4574cb148b14bfcb14cb148ae99629795d22c532c533a74cae995d2f3a74ce9533a74cb148e9d2f3a74ce9d22ba474e99d2a458a674a99d3a65748ae9f9d2a474a91629962995d23a748e9522c53f3a74bce9d3f2ba65748afa9f5ea57d4b1d3cafa963a163a7963a163a1f5ebfe57d3fcfa742bea7d7a15f42bea7d7a1f5e9e7d3af963a9f4ea57d4fa752c74f2c75f2c743ebd3fcafaf963a7ff963a79f4e9fe57d7ce9d22c532ba474a91d3a674a97962996297f9d2a658a458a658a458a4574cae916299d2a474a995d22c522c533a54bcae915d32c522c52f3a548ae99629795d3f30c6831b320f483c329501f8331a98f233a001f9342646273295483d326307f03331098c307e52ae3189883d3186475630e704da30e744db320f0627329501f831040411307e4fffbd2c42383f3fdacd40ff6b68668b3dc81eeed7841031044a54318984112a8c4e641e83f26208082260fc0822560fc183f041e183f00fc183f20fc983f20fc983f20fc95896e60bf863460bf86365805f8c17e0c68ac31b2b5f8f1bc68d7fc68d7f5fcaf1b35f97e35f97e2c2fc585fcb0bf9e36bf9617e2b5f8d7f5f8ad7f2c2fc6bfafe56bf9e34bf79617f3c6f1bf2b5fcb0bf9afcbf95afc585f8d7e5fcb0bf611fc419f8f08fe7833f1e0cfcf847f308fe7833f1f067e3c19f9067e308fe7c23f8c23f9067e40ff3f8067e20cfc047f00cfc611fc81fe3f207f9fc033f211fcc0ff1f903fc7e423f803fcfe423f903fcfe00ff3f8833f011fc847f211fc047f303fc7e211fc01fe3f211fc033f011fc7067e40ff3f908fe023f808fe00ff1f903fcfe019f803fc7e419f808fe019f9067e40ff1f9067e211fc01fe3f3c19f8e0cfcc23f9067e40ff3f8067e023f808fe60cfcc19f8c19f9847f211fc047f011fc033f1067e60cfcf833f25808830881d435e33e33263062346d46d31d427b31d41d4346d3c633201d5308827a308846d351212e32267a39ea7a34b92f3221d537552f32252e2b4b8dd5c80c88c84e7a4bcb0ea9ba9e315a5e697baa644cf473da5e58220c894bcb0449a5e449612ff2c110584bcb0447991044191244160892b4bfcc88224ac882b2a4d0a114ca8114c44114ac442c089e562279588856c458633e362f3e362362623e3e3f2be23e3e32b633e263f2b88fffff2c44f95c47f96227ce2224e2620b11071310713105889389882c44f95c41c44496220ae23cae20e2627cb1127111257105889f2c449c4c416220ae24e2224e2620ae24b1105713e588838988389892c44f9c44416224e2220ae20e2223cae27cae23ce2220e2620b1105711e5712571271111e57127131257127111271313fe713125712588938988388892c4479c4c41c44416224ae24e2220ae20e2620b11058882c44ffff95c4795c4ff95c415c416220ae20ae20b11271310571271313e58882c44f95c49c4c4ff95c416224e2627fce2224e2220e2220ae20b111e57107111071111fe5888ff389882c03a18838cc99ca16b996b8501ad09db99db86c161e34cb0c730c6641d4c664f7cc570e54c570570cb08734d2b4b08ac360cb5c284c86c574c57428fffbd2c41e03f239a2e40f7370c65fb39cc1eeed980c364364c360730c364edcc360364db2d936c734f9bcd3e6b60db0d82c734db3cd36cb60adb27068399d732588319d20e7068399d20de5850f9d75405850796140575c3535335252353c32c611e1291a9e11614cd4d4cf0d4cf0948e8684e8684b14074140574058a12c509d0d09d0d09d0509d0501d050796363fcaf64af67ffcb1b257b1fe58d8f2b74375742b742c3a9baba15ba161d0dd1d4add0b0e9e6eaea56ea56ea5874374752c5096280e8680b14057405743e57407414058a12ba12ba02c50f96280b141e58a12ba12c5096280add0dd1d0dd1d0dd5d3cb0ea6eaea6e8ea58752b7537574374742b74374752b752c3a95ba15ba9baba1ba3a161d0dd1d4b0ea58742c3a7ffff96367ffffffffffffffffffffffcb0e856ebe5874f2c3a961d4dd1d7fcadd4b0e9e6e8ea58752b752c3af961d4add3cb0e86e8ebfe6e8ea587537474f2c3a161d7cdd5d4dd1d0dd5d4add3cc388588c9e8220c4b91b4c989388c58898cc5b4740c2a48c8c58c38ccb8898cc9ec220cc84c80c4b84bcc224754d4491b4c62988c63588ce2b88d2e224d2e224b0449f8f3d1a5c9719104499124415a5e6971106973aa58750d2e220d2e220d898cf8d8cd8d8cd898cd8d88ad8cd898cd8988b1c7e586336363f2c711b1311b1319618cd8d8cb0c6586236262363632c319618ccb8b8cbcbcb05c565c582e32e2e32f2f32f2e32f2f32f2f32f2f2c1796220ae24ae20b113e71313fe71111e5888388892b882c449b1b115b11b1311b13116188d898fcb0c66c6c45862363632b632b63ff2c319b1b1796224ae24b111e711125711e5713e5713e58882b882c441c4c4f9c4c4ff9c4c4f9c44495c49c4c416224ae24e2224e2627fcae20b1105711e5711fe7111071111fe57125713e57106c6c46c6c45863f2c3195b115b19b131796188ad8bcd8988b0c45862363632c319b1b19b131f9618bcad8fcd898cad8bcb112571257125888f2c44ff95c495c4ff95c47f96220e2624b11258882c441c444ffff96224b112571257105711e588838989f2c44d3045045310b0a932632e232630623562062316226236620e32c1b198850229885919194a88598220e81fc431160623589e23588622b18cde2988de3788c63588fefffbd2c42083f3559ee80f774bc682b4dcc1eee9782388c6278cb0b1161623388e32b588ac62398d633188632c0c46318c66319c46710c66310c66b1ac66318c46310c46310c46710c6563118c431f98c63199c63118c631960e3f318862f2c0c7e6310c45818cb031960622bc678f1163196319e3c658c478b1163179e2c658c65788f1623c58cb188f1622bc678b115e33c788f1623c58caf195e32bc5e71221c5885710e24438914ae29c58a71621c48a588a5714b110e2c438910e245f38b13ce2442b8a71621c58a5889e5714ae295c42c442b8a5713cae29c48858885714b110e24538910af115e22bc658c478b17f95e33c588af1ff9e2c678b19e2c678f1163179e2c478b1ff95e3f2c62f3c78fcb18bcaf196317f95e22bc7e5788f163f2c632bc5fe58c678f195e22c62f3c78bfcaf1163196317f95e32c622c633c58caf11e3c4578caf1f95e32c633c78bfcf1622c632c633c588b188af19e3c5e58c658c678f11e3c678f17ff96319829829986109a99a6b1319ef03a19ef0cc99150cc195d8cc99a683a18730f598ca89e99a615d995d2819fbecc9d755d95c54698a626980d26559dc71520c68357471520c6cc33075d8ea63a0ea68345468320e63a0e875d20c683a0c63aa0fe5841cd98664b0831a0e8318ea3a95a0e563a160752c20e63a8e86838e858418b03a160753148523309353148c22b14cb02918a42918a629160522b14cc5314cfaf52bea7d7a163a963a1f4ebe7d7a95f53ebd4faf43ebd0afa795f53ebd4afa963a1f5e87d3a963a15f43e9d0afa79f4e858e858e858ea57d0afa963a9f4ea7d7a9f4ea7d3a9f4e857d0afaff9f4e9fe7d3af95f52be858e857d4faf53ebd0faf53ebd4afa1f5e857d4b1d0afa9f5ea7d3a7963a15f43e9d0faf52be87d3a163a163af95f52be858ea57d4faf5f2bea58ebe58e87d7a15f42c742bea58ebe57d7ffcfaf52be9e7d7af95f5ffff2c75ff2be857d7ffcb1d0faf52c742c742c753e9d4afa95f52bea57d3cb1d4afa95f52c742bea57d0afaff963a95f43e9d0afa7f95f53ebd7fcfa753ebd3cafa15f42c743ebd4afaf95f5f2c752be857d7fcb1d5508000160382b0e0d954f0d94654deb7acc397acce7d10dea4f0d4b2c4cb02c4d311a0ad3134c0aa34c4ef33b8ab3059193460b03fffbd2c41a01f0c5a2f0aeeb34c619359dc1dde6682c04b32403834f43832403932443930e03932403932413c3240392c070648072561c9870489a7a48161c1b972587258726e5c9b87265e51ca2c65cb9cb2e65fe1cb94565ce59634a94ad21a44a584869529a4485694ad216129a54865cb1972e72e51962c65cb1972c565cb05ccbcb32e5ccb162b2c56b79acb1acb1aeb9acb1aeb9acb1aeb15ac6bae56b15ac56b15ca72485894e590e490b1295ca5894ae52b90ae539252c49e724a5897ce494b121cb2f9cb21cb29cb21c9215ca5890e497ce597cae42c4a57215c85894ae42b97cf9e4f9e3cb1c15f1e57c796393e38ff2be0f9e7caf92be0f8e4af92be0b1cff96392be0f9e0b1c15f058e0b1c796382c71e7cf3e7c7257c95f258e4b1c95f1e58e0af92be4b1c1639f2be7ce493cb127f9c9215c9e5721c9215cbfe72ca5893fcb1279c921cb29cb2f9cb29cb21cb29cb295c85890ae42b90ae42b93cb12795c857298701c1609034f2413901eb3094683091733344d033e0d132acaa34c4ee30957434c1313244382b398d3c4f0ace730e13d34f53d37ac3937ac3830e4382c07261c870648a786ca27a580e4ce244e44e4ace4ce0e4ce240ce240b072723226727058382b90339392b382b382c1c99c1c9c89c960e0ce4e0ce4e0b07067273e6727258392b38ff2c1c19c1c960e4b070670705838f2c1c19c1c99c9c19c1c159c159c960e4ace3ce44e0ce4e3fcce0e0b07058382b38339382b3933839396439252c4872ca72ca72ca57295c872485890ae53964f3965f39242c4be58e4af92be0b1cf96383e783e383e382c727c707cf07c727c73e58e0b1cf9f1c15f058e4f9e0b1c16382c727c7257c95f07cf27c707c727cf257c9f3c95f258e3caf83e792c73e58e0b1cf96392be0af92c7057c9f1cff95f058e0b1c16382be4f8e3ffcaf82be4b1c795f057c16383e392be0af82be4af82c71e57c796393e392be4f9e7fcaf9f2be4b1c795f3fe7c7258e7caf93e392be0b1c79f3cf95f257cf95f1fe57c79639ffff2c70a0800079603ecd71612cb09de71381f66aac420687e4226650cdc6176680617668061769dc58268332932930fb211343e211355621032115563328328343f0fa30fb0fb33280fb321021032112102b43e32112112b329fffbd2c42b01f3f1acdeaf777286a1355cc1eeecf82c1f467d1f5e7084207081f456c895977e65db2265d32265db207081f4583e8cfb3efccfa3e8b07d960fa33ecfb3fbfa2bfb2bfa3fbfa3fafa3fafb3fafb3fafb2bfa3fbfb3fafb3fafa2c7d963efcafe8fefe8b1f5e58fb3fafbf2c5d1dddd9dd5d1dddd162ecaeecb1747777477574577458ba3bbbb3bbbb2c5dff963ebfcb1f657f5e57f457f5e57f5e58fbfff3fafbf2bfa2bfa3fafaf3fafbff2bfbffff2c7d963ecfefe8fefeffffcb177e577658bb2c5d7962e8eeeebfcb17458bb2c5d1dd5d962ecaeecaeecb176577458ba2bbb2c5dff95dd15dd95dd1dddd7f95dd162e8aee8b17658ba3babb3baba3babb3baba3baba2bbb2bba2bba2c5d9dd5d15dd1dddd162e8eeee8b177e7f5f7fe58fa2bfa2bfbff3fafaf2bfbfff2bfa2c7d9fd7d7963ecb1f47f5f658fb2c7d163ecafebfcfefe8afebfffcfefecb1f5e57f457f7e58faff3fbfaf30e326333624e333632e231d546d312e1d530a8233323210b36ac7a31ec7a2c4f46eaba86318c46f18c67719c47315c6631ac46f19c658754c89224dd4c84f204bcc894bcd2f4bcd2f224e7a4b8ad2f34b8893220882c11056441a5e44191297160882c112644113e711125712588938989389893898838889f38889f388882b8838989f2b882c447f9618cb0c46c4c658633626336262363622b632b633636236263362622c319b1b19b1b19b1b195b179b131f9b1311b1311b17196188ad8cd8f88b1c656c65862363622c3195b115b196188d8d88ad8fcd898cad8cb0c45862363622c3195c415c495c416227ffcb11258892b8838989389892c441c4c416224ae20ae23ffce2620d8d8cad88b0c656c456c658632c31f95b19618cad88b0c5e6c4c66c4c7e5863362632c319b1b1f95b11b1319618cd8d88b11058882b892c4416224e2220b113e5889ffff2c4479c44415c415c4ff96224e2620b11257125710713125712571057105713e58892b88f38988388892c441c4c4796224b111e58882b882c44f95c416227ce2624b1105711fe58882b882c44795c4ff96223cae20ae23ffcae26f331e433b76dc30b95e3a3df73449133dd72835791335782f30bd1236a87a37d8c730b8c630bc7a331c2e357df730b82f31ec7a30bc2f30b87b344daa3fffbd2c41e83f005a0ee0eeb3706ce341c42bdd0003187a31e8c730b82e2b44ccc60b8cc61e8c7a31cdaa1e8b03d960c731ecc731ec7a30bc2f2b1e8c2e1e8b03d1ae5c6bbd16171ae5e6bbd15ae35cb8d72e2b5e7e97161795ae35ebcd7af2b5c6b979af5c6b97161795ae2c2f35cbffcd7ae2b5c56b8b0bcad715af2c2f35eb8d7af35ebcd72f35cbcd7ae35ebcb0b8b0bcb0b8ad79ae5e585e56bcb0b8ad79ae5e56bfcad796179ae5c585e6bbdff9af5c6b971af5c6bd7962e2bb8eebceeb8aeff2bbcaef2bbcb1795de58b8eebceeb8efbcaeffff2bbceeb8efbcaeef2bbbcaee3bef3beeffff2bb8b171df7962f2c5c58bfcaeff3bee3baeff3baf2bbceebcb171df795dc775c58bbcb17962ef2c5c77de58b8aef3bae3bae2bbcaee3bae3baf3baf3baf3bee2c5e77dde58bcaefffff2bbffcaef2bbfcaeef2c5e577ff9df7962f2bbfcaeef2c5de577162ef2bbcb17fff95de577960360c731e34da20e50cb58e4cd688b08d2b0734e5d9e30c730360b03306576576658639a61ae76c639a76c6b40958561b2695a76c561b0639a5847db58458360adcd2c58666c9b07615846e6d8658364dcc730dcc730cd8730acd83364d8f3361cc2c1b256e6959b258360acd92c1b1fe66c9b06e69b066c1b258364c741d4c751d0ad0631d47431d074f2c0ea63a8ea63a8e8563a160d83360d92b360acd82c1b2566cf99b06c99b26cf99b06c99b06c98e83a1607431d10631d4742b1d7cc751d0c751d0c741d3cac752b1d0ac752b1d0ac752c20e63a0ebe63a0e8563a18ea3a98e83a158e8563a958e863a8ea581d4b03a958e863a8ea63a8ea65094058284aca0f2b284ca1287fcca1287caca1ff3280a13284a1f2b280ca0280ca0280b0501594058280aca02c1405650960a02b284ca0280ca0280b050160a1f3280a03280a03280a1ff3284a1f2c14265014258284aca1ff3284a1fffff2c1b3e58363fffffffffffffffcacd8ff2c1425650194050799425095942565079940509594258284aca12b283caca13284a0ff2b284b050160a1f2c1405650194250960a0f2b284aca12b283cca1287fcaca12b284b050da03028040204010140a02010080300640ae302500803053c24f30d7c2a930ca42cf31c4921a300f0001300c4005305cc04f303cc03e34620fffbd2c41c003485d91db9ff00062e346243bfd000a9035bccab50300ac600d80006071010c603180c6611a82666027812018002a546032072608a05e690660a6330a28160074dc46f0c033306302b302a06234f02603428582329635f2eb1698880854e0c110038c168038c094064c008008d454d7cc660a5cca5c1d4c4f03899c459a1b8ef3180e80e98018048b009ba542604818c60701ba620e09e60de09e0d024120006cca729e4ca5b2baf182ea7acba030220082203b14028160104972b0109332164c5a76aafeb228dc6dd359e5dba0a2ff2c00c182d01c182d03d180c00c980c801c4eebff1779ae3fb76efa7ba8ca8927c39707a7a27c79803803958039803803980380398030031583a983a04c1583a45e2f14a771593bcf4b7e24f32e789492ebff72f45ee5ebc61540c4603207e180afe17007f53b0c00e4c44c60c00c8c50fd0fffd050d050d1c65d6a2ffffa251aa27c567d0fffffa219580133ba3f75e3292edc1863a4ea46dd474fffffffffffffffffffffffffffffffd4f980d0090981280b6984e00481848a1621869a25d18f32518198f263d19bd283d1a7d2d1b1b0fcf639bcf8c85987b8ff61db16c151d0749fb9cd72df399c764769881e1d19834809d9862389858ce9c5ca99b38cc9a0c149986cd1bcf161d83ce1ea3a91bc8f1997c611a16ce1bcaf21c32d31ade9b19160f191c9a9a68b599fa7d1986450b14e60e03a6271126471166450aa62a03a60e03a60e8a464698867d9f867f99062a83660d0403a0e98300e98a029983e0d2439810069810029810069818068602a8ab8ab3a01500a912a95c5987095b948b016d5fdb3ff4b0ee54255006ed19788c17050c2d0b8c49128c320c41c18a6f1728b945ca4e29eeef1fe56c8a800980801980402d79dc7a4a01980002980804980c03980c02df30180530902530880542c301402309446311448311c4830982528014c03000c23098c05008c05022b592500e2b477b0ffcea5d66d967ffffffff94b20c5dcb0cc4989356a6d779ddeb2ad6b755f57765b2996dda596d3bf38d6869da96d9d53434ef4ba1a7fa3384aa5d6bf2ab19a6ea300c013730b805f33126021130cb4230301a424a304f4122302905f9309b01e5308bc0253115c16431c9c4aa319809b1348b010e360fddfffbd2c41b83e62974fe0ff1f1056daadc81ff69e01033cce9a13e9998033720c8e03095404e3043c257309e00bd30074315306a01b93964c434b07666b9b5a486915398b4c4670561abd5a6ab341a9c58670859b40ea6965b8aa08c26b43291e438b21c5630e828906a18255402a4302824c4020012f82a2415279830b466f22268084188a8850f8238c0276895daa096a1e4406a530a427eb58491f081545ea7a311caba0d9712c06c2245b452039921093ca2624399cb1b2c29eb96a1f6c6b339233293c2e2af1b85c542519395617227c748270778c241b5976196923c2e27c2ba5fc4c49b6b75f582ca7ea3735ffffe0ab665746b4266378e2dfd7fffffffffce36c31231de4bfd191ff117fb8c19504f0c09013dcc8583304ca622984cb0e2c3cd17e039c8a86738190f763626173e280ca4e36eeb34d7401280e67a692ccc6a3708d58face8f60fa0b0e9df6268c2ee3714d7e9284d281eb4c64d280d7ecbbcac398c654a60c39c654c650e70d285280c650650cbbc650b032a63283286532530632a1ce61cc32a561cc61ce32863281ce612012061221206072070607207058038f2b03930390903d094d26834fa4ad216349a44a7a741e9d06952f95a42b485694b090ad2ff9a548695214492c25f34893cd3a62aa434a93cad29a548584869529e8485694d2a434890d22534a94b090b094d2242c2534a90d3252b4a5690b090d2a52b4a691215a534890d224f372e7fcb0e0b0e7ffcadc161c7fff95b92b73fffe56e3cadc7e5dffff372e3ffcb0e7cb0e3ffcb0e7fffcadc161cf95b82c382c382b70587058726e5c95b9ff370e3cdcb8f2b7058725873dff2c38ef9b871fd3a21dfffff65f302a03bf3183c6d2327a41d139209453312084833623919f370206d535458e2633ec4e26388c9fe23a48b6a13da898f333712b75337150153ed089223371145331208dc430be454831cd84203042842030be442035b23231156d2c15065408a685216685088685216568515a14685a1665408856541888549950229a1622959715bd15bd95bd9973d961eccbcb8cbcbcea510b08858452ba8345453444434444345a9345452c2296114d1114ad14d1110d1514d1110ad10d1514b08a575258442c549a2541a2221a2a29a22296110d1114b08868888584434fffbd2c46c83f3bd56de0ff77085de2a1ac1fe6e4054534445344452c2215a21a22215a29a22279a2221a2229d4a296110ad10b08a68a8a5844f345442ba82c2296113cd1110b08a568a68a8be58442b45f345452c22f9a2229a2a2f9a2a296110d1114d1514d1514b0886888a58442b44f345442b442c229a2a296117fcb089e68a8a5844f2b442b453454434545345443a844345453454434444344a834445345452b443a94534444344452c221a2221a25416114d1510ad10d1514b08868889fe568be68888568868b5256886888a568a68889fbf9dbbf45c58018cc0620d8cc4e31388c3620d88c5630d8ccde23388e1e2878ce6e33d88d1e32788d3e24f88c660a18cdae32788c9e2358cd7625d8ce1e2358cef62e58cd0e2438cc6e2358cd762438cc6e33588c9e31b8cc3620d8cc162178cb00b1182c60b1182c40b11f8dc456e33f1388b1e3371b88ad8cf8b88f8f8caf88d8f88f8d88b0c65862363e32c719b13195f196388f8d8fcf8988b1c65863363632c3195f115b196188ad88d898bcd8d88d898cb0c458e32be32c3195f19b1b19b1b19618cd898cb0c47c4c456c66c6c65862f36362363632c3115b115b115f11b1b19b1b115b11b1319618cd8d8cd8d88ad8cd898cad8cd8d88d8d88a310b0c46c7c66c4c456c66c6c47c6c66c6c7e6c6c458632b63362622b633636336363363e2f363623626336363ffd15b1f9558cb0c47c4c66c6c458632c31ff9b1b17f95b11b1b17f9618fcb0c458622b632c319b131f9b1b115b115b17ffff9b13196188d8988d8d88ad8ffcad8bffcb0c7fffa363622b622b62fecf95ff2aaf2c084258217cce061080c9c9655cd3ae3270dd952720e33eed24e068381cc4203dc0d957381cce0781a4e33eb494f70aed24cf704eb8cf701080cf702cc8c6f45a0cc2b7217cc9c81bd0c58b0ad8c58a0adcb02109829a2101829815b188400a61d6ca69a9b5b9554c35314c35314d2b3eccfa3e8cfa840e103ecb07d99f47d19f67d962102b3eccfa3e8cfb3ecacfa33e8fa2c1f6582efccba2e8b05d960ba32e8ba2b2e8acba32ecbb2b2ecb05d9597665d17665d177e582ecb05d19745d15974582e8cbb2e8acbbf32208832252f32208932252f32208932248834b88832252e2c11064411064491264425e64411206bfffbd2c47903eab9a2d20ff6b3471eaa5801ff5a38ac804576115d84577062ee0c5d81ae97606ba5d8457581ae976115d01ae9740c5d40df4fb037d3ec22fa063ef08bec22fb063e818fb063e818fae06fb7d01bedf606fa7d845f406fb7df06533c194cfae11a6ffffc234d81d369947ffffffffffff06110c1f907e0c1f81044d4c44abce14c8534d8f25314c1f820f0f62f7cd8ce8395f0d2af6c24df37e970f2038d90c413a6a0e14fc808e9a763d4f204c80ce3642950ce821038ce801044c4114abcc40e1898c4101040c1f91040d89f1acf1a9898c7e5898d89c7e4ae0f0f1aa0f0e0f5044ae0f0e0f5044d0420f0c7e5040c7e07e4b0823e63f282056c4e5541134101f834111f831f91f82b1f934114102b1f834114112aa08941f898fc2089607e4ac7e0d0407e7cc7e1044b03f05682056823e68203f0581f831f81f92c20818fc8fc98fc208f98fc0fc1a080fc98fc8fc95a0879607e4d0407e4c7e1040c7e47e4b03f263f03f0563f263f23f0563f0563f063f082063f03f063f03f063f23f263f23f0581f831f81f92c0fc1607e4b03f068223f263f23f268203f3e63f03f0584102c20898fc0fc019f93f00c3f2e113f2113f3033f27e0227e4187e4227e4227e4187e00e089f908c11061f9061f806410033f27e2067e0fc819f83f1819f93f0067e4fc830fc830fc419040187e3033f27e40cfc1f8061f9c227e00cfc9f9061f8061f8091f9033f27e4187e40cfc1f9033f27e2113f0067e2084187e2113f2113f00c823830fc830fc7f7061f8844fcaffffdc9d9fffffd75f317f31b37f117f34b7b29398c65434b665534da7572c30c9a6dbab1a6d12f1b2acc61b2ad949bf832a198d32a1b2a6629d947fe9b2a0bf98bf25b192f30c99ce12f989092f192f12f1612d8cc68c6cacc68cc6c5fccc685f8b06366636634663496e66362fc6bf2fc6bfe346bfafc6bf2fc6bf2fc585f8d20978ae5f3485202c4be690a406904bc5690f961213979212c24272f240690242569096121348521348521397d203481203485202c24258480ad203485212b484ad203485202c4bc56909a429095cbe5897cd21480d21484d21487cd20978e5f484d21480d20484ad203485202b480ad212c242569015a40690a40690a42690a4058484ad20ff348520348fffbd2c48183f27178ce0f76b545f6b61a01ee57205212c24258480ad213485212b480237e065f8237f81dfafc077fbf4237ec197e832fc0cbf832fc11bf611bf032fc11bf832fe0cbf832fc077fbfc237e065fc237fc197e03bfdf8237e832fe11bf01dfeff065f8237f832fd03bfdf8237e846fe11bf832fe11bf846ff065fa077ebf81dfefe0cbf832fdc0eff7f065f8197fc197f065fc237e08dfe0cbf60cbffffc197e2c0bf18bf0bf9bf859418bfa5b9d9418d15d941a6da6d9a6d44a18bf8bf1598d1961ad0986cad01890a6d9b0c9ce992f3ab9596198e69619a5606c18bf18d961954cc6d2dcb096c62fe2fc696c63462fe2fe62fe96e62fc96e696c2fc66342fe5663466342fe61b039865861b0561b261b239a63981b2581cc31201202b1202b1202c09018908909589015890992f0901f35b0586c1b65b26d86c9b61b06d86c95b63cadb26d96c1d72ba6a1ae95a87cd40a13aea80eb8a12b501a854275d5095a84d42a12b6c9b61b056d82b6c161b06d96c15f33cdb2d836c364db0d92b6c9b65b056d8390484e4120390c80ae427209095c83fcb120390c80b120390484e4121f2b901c86425890162405721390480e41202b90f95c80ae407209015c80ae405890f962425720390484ae40720901c86405720390c860cbf846ff846fe11bf846ff832fc11bfc237fc197e846ff81dfefe11bf832ff832fdc237e03bfdfbc197ef846fe11bf832fffc237fff832ff81dfefdfffff065fff08dfa0cbf2af2c1611a561619ad086c1bc6256986c0e698e61db186c2d0991503a991528199ca96bf995d8cc183a95d98cc883959ca996b0ae18500ae18ae8ae18ae10d99ca05098ae0ae158e6186c06c996186c186c06c186c86c1586c98e686c186c86c986c1611d71406a1501a86b858501a82ba56a02b501a854258509d71405850161426a0509a8543e6d86c161b256d836c363cb0d8ff2c363cace9e5883f99d0ea583a959d0cea7433a1d4cea7533a1d0ad43e585095a84d40a12c280b0a02b5095a83cad41e56a12c280d42a1350280d42a0350283cb0a0350a80b0a0350280d40a02c284b0a0350a87cd42a02c284b0a12b3a19d0ea7073a99d0e8583a99d0ea6743af99d4e86753a99d0ea567533a1d3cce8752b3a160e86743a160e9e6743ac1fffbd0c49001aae194d80f72b58554b59a95eed5a08d808b600db0d9c22d906367831b1c22d8c22d8fc18d808b620c6cf063660c6cf036cb66116c01b65b2116c7fff08b67831b3ffffc18d8720624024262422406caa96c696efe06634fe0696e2fe584b6f32c269733b61cd32c30d831cc2c2375639c339c120339d4da2bb08ec2364dcd360e5e480e5f978f9c97cd2197cb0901f3a909f39ce15cbc6904be7cef386904be572f1cbc909cbc909cbe90961202c24258480d21480232106484192108c80192008c800e4320064840db1cc036c36418d981b65b2116c7845b006d86c831b20c6c045b0116c81b65b2116c01f31b00c6c0339a0c6ce0c90046401190e0720900464184642119001c86400c6c831b2116c831b00ce6045b006d96c01b65b2116c81b61b006d86c831b006d86c031b206d86c81b65b006d96c045b00c6cc0db0d881b65b006d96c01b61b20c6c845b006d86cc0db2d90636606d86c031b308b6022d8036c363f06487fc1921846400c90c192084643e0c907c1921ff064842321fc2320c1921c2320e0c9083241c1920e1190ff0648383241ffe1190552b188b0719f7f4a1eb57c15bc66b19c46e821474a4645719988ab69bc4b11ac4311dc4b11cc47198c4b198882219502296045338ce33589622b388d62188c6338cc6318cc63588b071195222995222195022160a832a04532a0452b110ac4432a0442c08862208a78b1f95e23c58fcf1633c78bcae2162215c42c442b8a588a588be71221c58a716295c538b14b110b114e2442b8be5714e2c538b10e24538b10ae21c48871227f9c58a7162162216221c5885888712216229af5de585e6b9715ae2c2e35cbcd72e2c2e2c2f3f4b8b0b8ad715ae2c2e2b5e6bd715c42b885710b114ae29c48a588a588a58887122ff95c42c442c45f2b89e5710e2442b8bc238e11c611c5e11c5f08e3f83310331ffff8471047160cc708e3c198c238c19881988238c198e0cc7833103318471e0cc508e3f8331c0f1e3e0cc611c7847103314198e0cc5066308e3e0cc41f2c1e6a5119a1af08bc29b0f2a7b986cca7b194d8c3c98dd06f719b1a90d9a4346c69a4366c619b1a47f1ef71b39b74ef71ef76f71a08e3598fce351a08a081bc6bc61f9a79a953cd4de33cd7cde31e34a79a8de37cdfffbd2c4d083a94daee40eea974694295845ff597a0d1c3634ad1c0e3ff630e3f91c0d1c11c0dba0d98cd9a9b0cd98d98dba0d98cd9cd9ccd9cd98b0dd3e566cfe66cc6ce586e9f36e9367362741136271f831f81f9f34101f82c20898fc8fc1a080fc1a088fc18fc8fc04638846380323884638c191c0231c4191c40e38c71064700647108c7003530a640d4c29903530a600d4c54d08a9803532a6418a600d4c54d03532a600d4c29981a98532075314cc22d980db3367831b3831b381b666cc0c6cc06d9db381b666cc06d9db3045b3845b381b666cc116ce0c6ce06d9db3c0e384708463804638e118e0118e0118e2071c63881c718e0118e3f08c70038e11c00e38c7108c7008b66036ccd9c0db3b67c18d9822d980db336608b6608b6708b67036ccd9818d9818d9c0db3b670636706366036ced9c0db3b6606366845b381b676cfc191c2071c238f08c71f846380323801c718e384638c191c3c82bb45762bd6a189200a0f3144ca433d6cc69c36b368403455f43b3455ab8137c0e4323674ca4235040d5636b2cd573290d4a32a9ee6553dc8df03144ca294533f88be230f8d3e330f8c7e333dc8a4333dcd9d332908a4332908a423144ca423144ca433290851231448513314494a231448f7233dcc5133290c5122c0a24587e3d95bf1960f8ccf8cf88b07c4583e32b3e22b3e333e23e333e37e333e23e333e33e32c1f199f19f1160f8ccf88f88cf8cf8ccf8cf8cb07c4567c6583e333e23e237e23e284e898328981d13a2611a240ca2611a2508d1281d12a260744a8981be27c6117c4117c606f8df101be27c60c7c407f89f181be37c606f8df101be37c6117c6117c5063e208be281be37c5063e3037c6f8a117c581be27c7831f181be27c5063e2ff81be37c5f831f1781be27c4117c6117c40c7c4117c406f8df1c18f880df13e2063e2063e208be308be2845f1c0df13e2063e2037c4f8b08be3037c4f8fc1944c2344ffe11a27ff06513e11a270aa27fff08d1303a2544bff06512f065128468980001f961a0f32f89be330f8cbe22b674cd4a3528ccf727c08d4a25288c923183cc9221838b0ce9194867b9997c67f118fc69f198fc63f19b07b071c914919b07c91963f88a1f1cdf88f8cef88f8f46d3baae7aacd386d39aae6a254867487486fffbd2c4f0002ff59cc10ffad486bcb35849ff59b3574846a24a26574866fc67c667c67c667c6fc6583e233e23e22b3e332f82f832f92f9360f60f32f92f92c17c7960be3ccbe183cb05f265f2c1e65f25f065f0c1c56c1c582f832f860e32f82f932f82f8035f0be40d7ce0f035f0be7062f8062f9062f808af981af95f2115f006f8df1c22f8822f880df1be3037c4f8818f8c0df13e208be2037c6f880df13e2037c4f8822f8c18f8c22f8c0df1be3037c4f8a117c6117c40c7c60c7c708be208be208be2063e3063e308be208be3063e38317c8457c40d7c2f808af808af808af9062f9035f0be422be018be00d7caf9062f98457c81af85f1035f0be422be206f8df1031f1845f1045f1831f1045f101be27c7831f1031f101be27c7037c4f8c29f1818f8e06f89f1831f101be27c7037c4f8822f8c0df1be3ffc1944e0ca25f065120651284689fc1944cde666d451e74c692cb86aed3354ea7b2cc5691998436ef2c2dbe749e0b946bc1af0868cdd2784d19c1de4b1aa9bad88cd958dd05853d0c4716ce4cd8c23fcdd6d2ec8cbb275b4cbb31728c3671ba0c3671ba0c3661ba0c36545ccc36445ccd1731ba0c6e90d98b03c619e6a79a98f183c616078b2c2335af2a0b96565d91c7fa38144701611c0d1c51c3cd1c51c4d1c11c4ae3fb9e568e1fe58471336636636e9366e959b3f99b31b3959b399b31b3959b399b31b30323840e384700647108c700647006470c231c4231c606d99b3c0db3b6608b67036ccd9c0db336606367036ccd9c18d9c0db3366036ccd9c22d9c19ba40db3367064710647008c708323840e38c7081c718e0071c23803238832388463881c718e20c8e00c8e308c7108c7106470038e31c00e38471038e11c00e38c71038e31c60c8e20c8e0071c23881c708e0118e0118e20c8e0118e108c700647108c70038e31c70647108c7108c7008c710647106471064710647108c710647181c708e30647008c70c231c00e3847006470038e31c3065cafc1972ff832e5ff846e5419e3613f1bffffe11f19ffc19e33c23e340cf2c13a66bc22f044e35599b1a90d1bf8cb549bad85d91af091aa938d5665d997666b549b1866c6ad5268ce233468cd233651785150bb22b172cd19b5e10cf343cd4ad6de33cd4f3533cd078c2aa78064efffbd2c4f003b1c9a8c00ffad4867d2b97c9ff5eba9a783a34f013c12a93a6513c0993a64e9993a49e09549d32bbb235cbbb32b5ca2c2e515ae595ae59a38c7f1a382381a38a381c7fa381a38a389611c4a238fcb08e2584702c47f1a38a381a382389a38a3895a389c7f47f79a38238960a64ca61530ca65534ca64a60d531534b053058298354d29932982992b29932982992b2992b4712c2389611c4d1c11c0ad1c0d1c51c0d1c11c4ad1c4d1c11c0d1c51c4b08e068e28e268e28e0568e0568e068e28e2584702c2389a3823895a389611c4d1c51c7cd1c11c4b08e3e568e0584712b4702b47034714712b5ca35cb5ca2b5cb2b5cb35ca5ca2b5ca2b5cb35ca5cb2b5cbff2b5ca2c2e59ae52e57f95ae5161728b0b9456b9656b94585cbf2b5ca2b5ca2b5ca2b5ca2b5cb2b5cb35ca5ca35cb5cb2b5cb2b5cbff35cb5cbff2aae56cb0b95fe56b95fecaba05d4123552674e3bad48a9d373031554e1127497febaf30f887e332f18e2831290966285e38c9662f1cc5622b8ccae51ce0cc394994ac60e30e385623158838d3158c90e3243c90e31588563312904a53090c2422b1290c3e21f88c7e20f8cc3e33f8cc3e32f88b0307958c1c617c8c1c56307187c41f19607e230f8c3e230f883e32b0f88b01219848625215848658090cb0121160243f3e3db92c71e586e0db96e0adb936e38e2c371e56dc1b72dc1b72dc79b70dc15f1a586e4b0dc95b7056a69a9aa69a9b5b9a9aa69a98a61a9aa61614c3ad94d3532b63adab735314d3532b636e5b836e1b8f2c3706dcb706dc37056dcf9b72dc15b70586e4adb92b6e0b0dc1b72dc9b72dc95b726dc370586e0adb92b6e0b0dc95b73e6dcb706dcb726dc373e6dcb70586e7cb0dc1b70dc9b72dc15b73e56dc1b72dc7961b82c37256dc79b70dc161b82b6e4adb8f2c370586e4adb92b6e4db96e4adb82b6e4adb82c370586e0b0dc95b726dcb70586e0db86e3cadb92c3726dcb726dcb726dc37056dc1b72dc961b936e5b9f2c3706dc37256dc7fffffff063e30bcc78d1e34c5cca4f0c5cb8d54de87b760cf3598c4e3555e08dd6c172cd6dd3cd4de8698c0db374868c4716cdcc5ca75b0c5cb1728d19a4668cd8c23fca1b1b323fd6a932ecd19a2c0b946bc1233462e5233a71fc8e271fe8e268e11fc68e2fffbd2c4f081f03160cc0ff6d7863fb5d7d5ff5a2a8e27e69e6be56f1a7e69e69e6f1af1a57e6bc2b78dff3471471347147034704703471470347147134704703470471347147134714712c2389a38c7f1611c0d1c51c4b11fc68e28e0584712c2389a382381ae52e51ae5ae51ae5ae59ae5ae5945cb9ae52e596172cd729728d729728b0b9456b95e157280772ae5846e5046e5c1972c19728237281972bc0ee5dcb832388463881c708e2118e0071c23801c708e0071c63801c708e2071c23801c718e0118e00c8e2071c23801c718e2071c23804638e11f1bc19e330af1bee0cf1bc23e3423e31a0cb940cb95c23728197281972b03b9772ab065cb08dcb065cb708dcb08dca581dcab940cb940772ae57d5fe0cf1908f8de0cf1a15e3411f1a15e35fd55423e3611f1b5419e317f5e11f19f08f8d0678c833c6423e33f0678d81f8df1b5f33a38e8f3e1d21d43b49168319d0eceb83d0ece2c92270d155ae00e1856b28c69d355ccf736748c513290cda0f8b20eb808b24a844e99ee65219a9462891b3a65211c59044e9b41e44e96115532275155d151d3a33a38e8e33a3ce8f35a08b3232cccb3228599ccb322ccca8b419bf1df119f11f199f13f11bf13f1143e2161f88b113a5589d389c89d2c44e162270a44e3cae270da75a70da71a74b0d3a6d38d3a6d3ad386d3ad3856d3be56d3856d386d3baae56d39e56d386d38d386d3ad3a5355c56d386d38d39e6d38d3a5869d369c69cfef95b4e161a77a56d39e5869d28d3af2b69c2bd56f369c69d2b69c2b69d2ab4e1b4e34e1469c1b4e34e95b4e79b4eb4e961a77cda71a70da71a730369c69d2b69c2c34e7961a70b0d3851a706d3ad3a56d3a56d386d38d3a5869df2b69c3d5669c28d3b2c34e961a77ffcada73cada70a34ef45869c2b69cf2b69c2c34e95b4efe8ada70da71a74b0d3bb2c34ef961a77ca8d385869c2c34eecb0d3857665ffe58b322c599fecb16645766658b32ffe73fcb166657665e7665666766766458b32f2bb32e313316f31e1f6ee56bfff9beaf3144a96237c0851329f118e4335288e4333dccd9d35288d9d22908cc38248ccf4e183cd4a32908d4a3a588d4a33dc8c5132908c513528cca42528cca433dc8cf72290cca425288ca43290cdf03290cd4a2290cc5133dc8c512fffbd2c4ff03f49152ba0fffc5c651b59801ff5a901448cf72290ccf733dccb07b999484a511948428998a242891948628916144ce90e908ad448d44d44cd44d448ad448a2894b0a27e585123513a432ba42d95a8916144fcd44d448a8a246a24a266a24a2452909e58513f849f1c22f8a117c406f8df1831f1031f101be37c607f89f1845f1831f181be37c6117c606f89f101be37c606f8df1031f101be37c508be2037c4f8e117c6117c508d1308d1203a274482344b0651306513065138468941944c2344c2344a0ca260744a8901d12a270651383289c0e89d12f83289e0ca258468941944c1944a0ca2508d138468904689b8468941944e11a278328901d13a260ca2583289e11a2781d12a24f83289832890468984689032898328942344c1944e11a2706513f83289c2344f06512a8234481944a0ca260ca258468941944b8328976e11a2584689feae11a244c414d45332e313030aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaf2aa8207219b3a45243318a27c791a946a519a4c849198c1c7a7997c65f119fc47f19486126d651aae67f1a7c6517e21587c4617c1244661c9246661c124666ab9aac66ab0d3a66ab35966a082822634e2820566ab19aaca0896069d2b355cc69c5040acd563355cd562c0d3a574845144a56a24748748656a2658a4337e23e233e33e22c1f1159f119f11f1959f199f13f11bf13f11d21289161448b14847486a246a26a27e51449e585132c28981d13a2611a2411a260744e89832890328901d13a2708d1303a2544d82344e0ca240744e8981d13a2411a25846890328981d12a260744a890468903289e0ca2611a240ca2611a270651283289784689c2344c2344c234482344c1944c0e89513f8328981d13a2783289c0e89d1206512ef0669d8334e78474ec0f4e69de0cd3a11d3807a774ee11d3abc19a77ea7c19a760cd3bb419a7019a73ffff8474e8474effffc19a77ff08e9db3ffffd6bf9913a8aa1f9eb1631445566a510a2472198a24777c28226d65359675c09138644e11387163570651a0f9c59044e1a2a88aa14455e67b9948667b93e066ce98a26644ec592644e913a6d0722aa51a0f142274644e22aa644e913868aa1138644e341c644e113a552274aa44e1a2a844fffbd2c4e581eb5da6c00ffad4867d3597d5fb5f98e18d3834e19aac34e18d3834e18d3a34e958d3a581a74ac89c2b2274aa8aa9913a44e15913bfe644e113a634e0d3a634e0d38634e1aade5634e798d3834e158d3a581a70ac69d2c0a2662890a2456289958a245628998a2628998a24289958a27fe65210a27e0744e89046890468942344c2344c1944825448234481944c2344e11a2503a2544c234480e8951206512832898328901d12a240ca240ca270651306513065136e11d38c11d3811d390669c08e9c03d39a7019a7207a774ec23a740f4ee9cc19a7423a7607a734e0474e8334ee11d3a0cd3811d3a07a774e419a740f4ee9d03d39a7611d3bc19a7019a7023a7207a734e01e9cd3908e9cfe0c22742244ef83089c7089139f06113bf088d39fc1834e42234ebc1834e60c1a77f060d39e111a77c1834e84469df6c2244e550000001fcb08e06636ca8663496e6fe26366634fe069b4c32673aeae673a9b6586192b1cc33b73b63411a5531f94112b410383d62731f86263626626331b31a34b731a317e17e34b64b732982992c2a69594c194c94c795a089a0831318fca081a088fc9625e3979212b484ad2134825ef2be70ad203979203485203481213481203485212c24256d93e6b64db2d92c364db2d836c364af9856d82c360f9ad92b6c79b65b06d9e61b61b26d96c15f30db2d93e6b64db0d82b6c161b0589079c8243e7219015c80ae40720901c82407219079c8240720909c864056d92b6c1b65b056d8f36c360db0d836cb64b0d82c360adb056d82b6c9b6798586c961b056d92b9095c84e43202b9016243ffe589095c84e4121f2c480e4121390c84ae4057212c484b120ff2b907f95c87cb121390c84ae42589095c84ae425720390c80ae43e58909c86407219016240589095c87ce4320390484b120f2bbfff962fe577ef2c5ffcb17ef2c5f8aefc58bf9dfafde58bf962fde58bf1dfefe77ebf15dfcaefc577ef2c5fcb97d859c2ab88e7fa3cb0599194842891be04a51998724911aaf47a799fc43f19a7c4ff11978c122992ce71415948456a5119fc61f19553e232f8cbe232488c393248cc393183c60e31a70d5631a70d563355c69c3355cd573144c5123144851333dc8512314485122844e4d1554550a11383227089d2b2270afffbd2c4ff83f1c956d46f779446f42a9881ff7690d448d44e908d449448d44d44cd44d44cd44d448cf8df88cf8cf8ccf8cf8ccf8cf8cacf8ccf89f8cb07c6583e232f82f9360f2f92b2f832f92f932f92f82c17c960be4cbe4be0acbe3cef9be0ef8be4ef8be0ef9be0ef8be0ef8be4b17c15df258be0b17c1df37c1df17c9fc7f11fc5f115fc457f19fc7f1163e23f8fe2f2c7c47f1fc457f1963e32bf8fcaef82c5f277c5f277cdf277cdf058be4b17c79df17c15df077cdf077cdf058be4ef9be3cef8be4aef9f3f8be22c7c5e57f115fc457f1963e3f2bf8cfe2f8cb1f1163e33f8fe3f3f8fe33f8fe32bf88b1f115fc457f1963e32bf88afe22c7c458f8cfe3f8cb1f1795fc5e58f8cb1f115fc67f17c7e7f1fc458f8cb1f1163e22c7c657f179fc7f115fc457f17963e32bf8cb1f19fc5f19fc7f179fc5f1963e22c7c658f88b1f195fc47f17c457f115fc67f17c658f8bfcafe32c7c7e57f195fc658f8d5f2a2944630705f26c472af66abd8c1a661c9872693205f069320c1c510881978e4b3192463071a4ca49199e9e7a71987017c18c1e17c19c62b198dc2b118dcab11d21a891d2152179d21d2195df1160f88cf8cf88df89f88b14867ee4a25fe56a246a26a25e6a25485e6a26a27e67c47c5e67c47c667c67c6567c5e583e32b3e3324324232422432b243324324232422432c12199211219921252992112116090cac908c90c908c908908c90c908c90c90cac90cc90c90cc90c908c90c90cc90c908b048664844840c5f2115f00c5f108af8035f2be2115f18457c6115f20690d210452101a4294a1148406909218312140d21a4308a4208a420624281a424861148406909210452101a4348508af9c22be206be57c0317c8457c8457c422be60c5f2115f20c5f1035f0be418be2115f20690d2181a424840c4840c4840c4840690921e11486114841148606909210452181a43484114860c4870348490c229080d21a4208a430624208a4308a428317c0457c422be40d7caf9062f9062f9035f2be40d7caf8f062f98317c8457c0457c6115f3035f0be018be422be3fffff08d12f2c3d10653614da6a7ba2e442a7a1a9eea7b9a3362e518b971aa9445cc6374b0f2564019957055c1437be63748dd2653694d863c68f1863c6adbc6b6f8f1a53cdfffbd2c4f103f43180ca0ffacdc623b25881ff59f847e6be687e68f1a57e6857e687e6af187e6be687e69e6a6f1af145478a3f3578c378d78c378c78d378cf352c3c61478d1bc63c6961e34ade30adba4dba0d9bcaadd2566cc583672b36633676e834704712b8fe38fe4702c2389611c4ad1c4d1c11c0ad1c0d1c51c0ad1c0d1c11c0d1c51c0d1c11c4d1c11c4d1c11c7cb08e3e584702c2389a382389611c4b06cc583672c1b319b39b399b31b3f959b399b31b3959b3960d9ccd9cd98b06ce66cc6ce66ce6ce118e2071c238c191c4191c7038e11c40e38c70038e11c4191c4191c40e38c70064710647006470038e11c0191c40e3847084638e0c8e0118e00c8e00c8e20c8e308c718323804638046388463881c708e20c8e2118e20c8e2071c238c191c0191c0191c0231c40e38470c0e38c7008c708323804638c0e3847108c7108c7006470606470c231c60cf1bf57ffffdffffff846e5e0cb94a00002f30be4c3831084420332746f434224bc73259824431839265263070b039c183701c6961c14d2938a4eb9158cdce0e30eb95588eb8ce3cd58ce3cd589588cbe648cd83cbe0d83f0e0e48a48cc90c90cc909c14c909c14d295290cbe248ccbe1838d83cbe0cbe183cd83cbe0cbe1838cbe4be0cbe4be3cacbe0b05f2569485648664844845694a64864846486487fe6dc3706dc3706dcb706dc37256dc9638f2c370586e4db86e3cf8f6e0f8e6e4f8f6e4db96e7cb0dc1b72dc161b82b6e3cdb86e0db86e3cadb836e1b82b6e0b0dc9b72dc961b936e1b836e1b82b6e4db86e4db86e4b0dc1b71c71a9aa61d6ea615a9856a69d6ca61a9aa695a9856a69a9aa6f95d6e56a61a98a69a98a69614d2c29a56a67962432b90fffcb121f962422c485e572196242f2b908e43908b12115c87e572115c865890bcb121f95c845721ff9c8521162432b90bce4290ce4390bcb12116242f2b90cb12196243f2b90fce42908ae432b90ce4290cb1211c85211c87211c8721f95c85fe5890ce4390cae432c485e572115c87fe572195c87e58908e42908e43908ae43ffdbf587ccf8af88c7054224d7aa4ba8d7e30f8ccfe21f88d57a248cc2f80be4ce281294b04b319c5097518e0a4b3197cfa79fa7e1c197c97c9fa7307997c17c197c61c9df1df119f11f19df15fffbd2c4f303b38556ce4ffba9d6c3a41945eff822f199f15f199f1bf199f19f19df15f1160f8cdf8cf88ef8cf88cf88f8cb07c467c4fc66c1e5f065f05f265f0c1c6c1c5f265f25f265f05f265f05f065f25f065f25f26c1e5f256c1fe582f832f860f31b838d31b91b931b91b931b81b82b1b931b81b92b1b831b938e2c0dc18dc1c695a5279921921992112116090fcd295290c908908b048464864865824332434a531b81b831b81b931b81b92b38f2c1c7160e34b0372563705838f2b1b831b81b831b91b82c0dc9606e4c90c90bcb04845824232432432b24332422432b2422b2422b24332432432b2422c1219921121f960908c908908b04846484485e64864845648658242f2c121959211592116090bcac90cc90c90cb048664844866484486564866486484564846484484671c3706ac6371e637071c6372370637237063723726372372637237063723706370372581b931b81b82b1b82b1b831b91b82b1b92b1b82c0dc959c7158dc98dc8dc98dc8dc79606e7ffffeef34bdd4378ce2398c633b8a623188e23d8a62338ae23578c737dd5f2c1c65771985e3d98f6d59abc17163c634bd2f32248939ed2e32232137512e3751d5375488f34bdd534bd2f32208939e92f32212f32248934bc892b4bcc88224d2f220ac882c11269711058882c4495c41c44495c41c4c415c415c4162a0ea514ad14ad14b0887508a68a8bfe75088584434545344a8345a82c221a2a21a2a29a2229a2a29a2221d4a29d4229a2a21a2a29a2a215a21d4221a2a29a22295a279a2229a2229a2a29a22216114ad14ad10ad14d1114d1513cd1110ad14b15268a8a56885689e5844345442b442b4534544345452c229a2a29a2a296114d1517cd1110ad13cd1114ad14ad14b08a68a88568a568be68a885688588938988f2b88f2b88f2b892b89f2c447fff95c496220ae24ae23cae20e2624ae27cb11056c5e5863363622c3115b115b19b1319b13115b19b1b11b13195b116188b0c5e5863f36263f2c3195b11b1317f96188b0c60c44ffff84513fe0c4404513e0c44fc188908a2708a27cc484e74d866254aec44c97d36cd860484dd5ce74b073a64bf12a69b424265841b261ac9585825e312039c325e894339d757312025f2b619312139c3120120325f4db31201213121fffbd2c4e403eff9ace40eeeb7c67f361b01ee56f01203120120312125e3121120325e25f325e4da2c12f192f1ce18909ce996106c160730b01b063981b063981b0580d9f2b909c8240721909624058901c8640721901b679a586c1b61b056d92c363cb0d92b6c795b63cb120390484b121f2c484b121f2b9095c84ae4058901c86405721ff2c484e4121f390484b1212c484b120f2b909624056d82c364db2d936c360db2d92c360db0d936c364db2d82b6c95b64b0d8f2c360db0d92b6c95f34b0d82c360b0d82c364db0d936cb64db0d8f36cb64db0d82b6c7961b2586c15b60b0d92c360db0d936cb64adb2586c15b60db2d82b6c79b65b056d92b6c7fff961b3e56d936cb64db2d92c364b0d82b6c161b3fe6d96c95b60adb211907846400c90c192006482072190c232106484232006483e0c90c1921c0e4120064802321c19218464308c841920f846401190c1920064861190846400c9060c908324384641c192106483f08c842321af3210329369d2693340190343f32830fa66d366d89d35569b2332843e355643f35569b2389d66c327a1d4346c27a33c746c2882d31910ba2b26937840fa321055630fb210343f32832103292b3292b3292b32830fb210321043e3210211321121030fa0fb3843282b3e8f28840cfa3eccfb3eccfa840b10819f47d99f67d99f70899f47d19f67d15c2267d9f7e7081f467d1f5e567d99f47d159f667d9f6583ecacfaff2c1f4583ecae1133ecfa2c1f6567d159f467d9f667d9f6583efcafefcafecafe8b1f458fb2c7d9fd7d15fdf95fd163e8b1f457f657f657f7e57f658fb2c7d963e8b1f458fa2bfb2bfa2bfa2bfa2bfaff2c7d95fd95fd7ff95fd163e8febe8afe8afebcafecfebebfffcfebebfcfefebcb1f458fa2c7d15fd15fd1fd7dff9fd7d163e8fefecb1f458fb2c7d15fd163ebcfebeffffcafecfefe8afecfebecafecb1f658fb2bfbff2bfb2c7d95fd9fdfdff9fd7d1fd7d1fd7d95fdffffff95fdff9fdfd963ecafecafe8febebcafebfffcb1f657f47f5f5e7f5f7fe57f67f5f47f5f5e57f7e58fbff2c7d15fd163ebfcb1f657f7fe58fb2bfa2c7dffff9fdfd95fd985e171611230b82f3a39f7357a8e30b91337c8cc31649334495e331d13324c583248cd30bc7a37d8c630b8c73248cd33301d31fffbd2c4eb83f475b2d80f7774c5b935dd81dd66d8609331e8c630bd1230bc7b30b87a31ec2e2b578c7a44cd130bcb063985c3d9602f30bc2e2c05c63d8f666305e61705e563d985c17985e179aef456bcd7ae2bf46b97961795ae35eb8b070ec1d33a70b070b070b073cb070ced9ff2b5c56bcd7ae2b5c585c6bd7ff9af5c56bcb0b8ad796179617f95af35eb8d72e2c2e2c2f35eb8d72f2b5de6bbd962e3bae2c5e577f9df79dd7162f3bee3bee2bbbffffcefb8b17f9df779dd7962f2c5e577ffff9dd795de57715de57715de58b8eeb8eebcefb8aee2bbcefbbcb177f95de58b8efbceebbfcb1795dfe77dde77dc5777f962f2bb8b17162f2c5de77de775fe58bcaee2c5e77dc775c77de57715de5771dd7962e2c5e58bcaefff2c5e58bffcb17795ddfe58bffcefbfcb17f9dd715dde57715dfffffe58bcb177ffffffff95de5777ff95de577962f2c5c57715dff31a71aca3861eef93355daca37c0a43335288f7337c094a12b3dc8c2f91838c92255e8eef81a70d4118610c2f83d38cf4e248cd26530e4a0a27285214d9d22908a86ab1a822a08160d5636b28d5631a75acb3355d41033558d572b1a70c69c1a74d4111a74b034ef98d3a34e9d21289f9d21a891d212899a892899a89a89f99f11f1962f88cf88f88acf88cf88f8cadf8bfcdf8cf88cf8cf88acf88df88f88acf8ccf8df8bccf8cf8cacf8ccf8cf8ccf8cf88acf8ccf8df88cf8cf8bccf88f8fccf8cf8ccf8cf8cacf88cf8cf8e117c414f8a06f8bf101be37c6117c4137c4117c6117c7063e3063e2063e2037c4f8c23f8823f8e117c406f8df1845f1845f101be27c4117c40c7c508be2063e3037c4f8c19f8822f8c0df1be20651203a2744a0744a89c194480e89d13065130651203a2544c1944eb81d13a260ca240744e89f853e3418f8818f8818f8c22f8823f8c0df13e381be27c606f89f160c7c6117c7037c4f8c0df1be2037c6f8c0df1be281be27c606f89f1831f181be27c40ca2611a240744e8983289046898468903289419448194480e89513832890328983289c0e895120651281d13a240744a890468983289c23448234480e89d13d0eaf5c19a76dea8474e8334e2bffef0669dfffffd5e6498b0751af860e372684a86587c8ccdd48c59074cb41b8c6e358ccc160d08070fffbd0c4fa03fa5daac20ffad4c5bcb45e01dd62d0d43164ad433164933165092b24cd09248c58164c93420c59164c1c160d09160ac923420923164583074cc2c03860e0b2562c79601d3070593070932b074c1d070ac5839614d4282b506a029840a61429cb0a585264489608990225644c8bd32040c8912b206408991225644b0f4c81032240c81032240ac816081608191205640b044afa7de796387de7963be7de95f4af858e7f96225703840e302c44b11f38c3cb1038c4e312b8f962070895c4b1d3e70b1c3e74fbd3ef4fbc3e74b1c3e74b1d3e70f9dff2c73caf9e58e79f79e7def95f7cafa58e95f0b1d2be16387ce95f7cafbe58e95f4b1d2be163a7de7f9f3857d2be963a57c2be95f0afa7ce15f4afa7ce1f7857cff2bef9f3be57dff3ef0b1d2c74afa58e963858e963858e963857c2be1f7a57cfff2be95f0b1c2be1639e57c2c70b1cf3ef4afa58e95f0afa58e9639e7ce163858e963a7de15f4b1cf312012035a04ac34ad1cd31cd3b635a05a0322b47131991992c09a982989a960398c650398c3612b0cb08edcc730730cd34418c1d4660c1d4664c48097cce70e70ce74484c480480c360360c734364c730364b039a65841b265841b2561b0580d92b0d93831d4acea7063a19d0ea707cc99d4ea63948958e0c703831c39bcc723931c244c703832994cb05232994cb052ff2c14cca6c3f2b29160ea56742b3a19d0ea6753a159d0acea56752c1d4cea7533a9d0cea74fff2b5015a80ad41e5850f9a8541ffe5850959d4b074f2c1d4ce8752b3a99d0e8570633a9d0ace8583a959d7cce874f2b3a99d4ebe56ea6e8ea56ebe56e86e8e86e8e86eaea6eae9e587537474375752b7537575374742b742b74f375752c3a1babaf9baba95ba961d0dd1d0add4add7cb0e856e858752b742c3afff9ba3a1ba3a79baba9ba3a161d4add0e8280b1427434258a02ba02ba1f2c501d050796280b14058a03a1a12c50796284ae80e8687fcae83cb14058a0f2ba1fff2c5095d016287cae87fcb1405741e74343fe74143e5741e74141fe58a1ffff2c5095d0f96283cb143fe574258a1f2c28206c48311e6abd8c1e65f197c667f137c67e36a8226d65a82263f197c661f11fc667b99ee662899ee64d41099aaea089b5966ab98fc63f11a7c63f118fc4fffbd2c4f003f3f1a2e20f7375467ab55881ff5a685f198d3834e18d3ad6618d3ad6518d3a6ab99aae34e959aae66aba820634e1aac57aac58d57369cd56cca34e4b0d3856d386d3ad39fc2c34e1b07b07997cb07197c3071c91307997c17c160be0b05f2565f26a26a26585122c28915a89f95a896bfcd44d44cc90890cac90cc90c90cd294908b04865648456484648448656486582423242242324224333e33e233e33e32b3e32c1f119f11f1160f8cacf88cf8cf88cf88f8cacf8cb07c667c67c467c67c6583e3037c4f8c18f8a06f89f1031f101be27c6117c7063e2845f1418f8a06f89f101be37c4117c60744a890328960ca2411a240744a89046898328981d12a240744e8904689c0e89d1284689708d1308d1283289e0ca27c0e89d12c2344f8328984689032897f81be27c40c7c406f89f1845f1845f17063e308be3063e3037c6f8c18f8822f8818f8822f8818f8f063e3831f101be37c60c7c406f8df1611d3bff8474eefffff7fc23a77fff42af314d42032684ee3268340355666c332966d3328556332832830fb43e2c21f1a1f9081908a1f1a771a019341a01a7705d99348c898c80c819341341a1015b98a68a698a615b9ac515b190887d187d07d987d108190819479595b995b8a698a68a61595b15aecad746bb5d95aecd76ba2b5d9ae976585d1ae974579035d2e8d74bb35daecd74bb344220d112f344220b088344a20b088344220e5e89344a20d12893e2e22c311f1b11f1311b13195b196388f8b88d8d8cad8cd8d8cd8988e2624e2620e2624e2220b113e5710711127131271113e58893898838988388883888938989f2b88ff388882b89389882b89388882b8938889389882c449c4c415dd7962ebceeeecb17477776775747757658bb2bba2c5d1dddd15dd962efcb1745777e577458ba2c5d9ddddf9dd5d95dd95dd162e8eeae8b176577458bafff2bba2bbb3bbbb2c5d9dd5d795dd1dd5d1dd5df95dd162e8eeaebfcb17458ba2bba2bba3babb3baba2bbb2bbb3babb2c5d15dd962e8b17658baf2c5d15dd7962efffceeeebcc3e21f88ccb92b88d23a48e8c85e162ca10bc31838f4ed9a4ca17c9924617c987c67f119fc43f1187c63f11613e231f8cbe2309087042b259cc7050908cfe21f8cac7e230f883e332f88be230f8cbfffbd2c4e803f01956de0f73748691b259c1fedab8e231f887e32c07c6503e3987c63f1187c41f1987c41f1187c61f19587c7e7f17c657f19fc5f179fc7f115fc458f8bcafe22bf8bfcb1f11c852195c865890cb1211c872116242390a43390a42f390e432b90fcae42390e42f390a43390e42390a42f2c4865890ce43908b0dc961b836e1b836e5b92c370586e4db96e0adb936e5b92c37256dc1b72dc9b70dc161b836e5b836e5b82b6e0b0dc1b72dc161b92c372586e0db86e7cb0dc95b7056dc961b92c3726dcb70586e7cb121962422b90cae422b90cae43390e43390a432b90cb121f9c8521f9c87219c8521f95c86721487e572116243390a42f2c4865721ff95c8458908e4390bfcae43390a43390a432b90cb1211c872116242390a432c485e72148658908e4390c1890e0c48508a4284521c1890a0c484114840c484069092181a4348508a4383121422908189082290a0c4850624308af808af8ffe0c5f1fff8457c0457c5500002f317f4b633b769735a12c23ffd655317f7f1331bb28365417f312125f325e619317f98c331a17e317e31b3b294b62c18d19611611a5616199db0e698bf8bf9a5b8bf1a5b25b998d98d18bf0bf998da5b18bf18d98bf25b198d98d98bf18d1a5b18d958bf95a5b9afcbf9afcbf79617f2b5fcf1a5f8d7f5f8d7e5fcb0bf95afe6bfafe56bf1afebf1631b2b480b0901625f2c24269024072fa40690242690a42690a40690a406902406904bc58483cd2097cad202b483cd20484ad203481212b480d20484ad21f397920f2b487cb0909a429015a4256901a42901cbc901a429095b9be66c1b066c9b2566c19b0e6960d82b364cd9360dcd360cd8360b06c159b058364cd9363cb06cc237ec197ee11bf60cbf046fde11bf60cbf846401190846400c9081c86420c90046420721900464007219081c86400c9003243039048607219060720900464306484192106480237e832ff065fe11bf40efd7e08dfc0eff7f08dfc197f81dfefc0cbf81dfafc11bf40efd7f065fb065fc197fffffabfffff065f90403cc4102950c62707e0d6dd07e4c83d1044ce8107e0cc6a2954c6271898cc6a1044c41120f4c6541950c7f00c68c411189cc62620f4cc6b20f0d2ddfc4d9505f8cc68c68ad044c7e2950e0f47e4e0f20f0b0c4fffbd2c4ec813099a4d64f76b556e6315a95ff71bac56c4e56c4e63f23f25682068223f263f28226c4c3f2581f8341141131f91f92c0fc16189cc7e1040ac7e0ac7e4c7e07e0c7e07e7cb0821e563f0563f062422426240240624224256240581202b12131201212c090960480c480480ac484c484978c480484ac480c484978c484487cc480484b02425825ff2b1212bbff9dfefe77fbf95dfcb17e3bfdffcefd7f2c5ffcaefc77ebf1dfafe58909c824258907f9c86425720390c80ae4058901c86425720390480ae4057212b90f95c84e4321f2b90962427209095c80e41202b901c86427209016240720909c864257202b909c82405721390480b1212c480b17e2c5fcefd7f2bbf95dfceff7e2bbf162fe577eff2c5fbcefd7f2c5fcaeffe58bf95dfffcefd7e2c5f8b17e2bbf9c8243e589096241e5890962427209016240720901c864057202b9016243fe589096242721909c8642589095c83ce41212b9015c80e41212c7e3fcaff3fffffffffffe57f9ffffffff2c7e55f314d6f4319169c334141731d5320308946c341734134170ba33211d5332112f2c0b198f18711897990984413d984493d9a0b85d98c80c818c81349a995b1a98a69a98a6962b633ea1133ecfa2c1f467d9f458537cd4d534aeb62b534c894b8c894b8d2e4b8b0441a5c44f9b1b11b1311b13115b11b1f11b1b11b1f19b1711a2d41a2a279d42295a21a2a296110ea510ea510d1510d8d8cb0c4586336263363632c311b1319b13115b11618cd898bcae20ae27ffcae23fce2223ce2224b111e71311e577658baff2c5d95dd962ecb17458ba2c5d95ddf962e8aee8b17458bb363622b63362632b63362632b63362622b632b622c311b1b11b1b11f1b115b11b1b195b179b13196188b0c66c6c67131058892c44795c495c41c4c495c49c44496224ae23fce2623cb11258882b892b89ff2b88fff2c441c4441c4c416224e2624b112571057107131271311ffe5712571258883888938989f2b892b89ff38889389892c449c4c4f96119a39a1cdee361e4a6d3914c8ff336348ff31534d6c2b563cc6191d5cc4db0978ca5507e4d09920f0c8022ae4cd6c1534c2980a60cdef1ba0c3660d98c3671ba4de31e28aaf187e68f1a6f1af1a54a6d33663672b6e936e836734714712b8ff38fffbd2c4e483ecd556e20f776ec706aad981ff75f8ff47038ff4712c47f1594c194caa6194c94c994c14c194caa6194c94c15a08958fc18fc0fc1a080fc9b132089a08a081a088fc158fc98fc8fc98fc8fc98fc0fcf98fc8fc9607e4c7e07e4b03f0563f2581f934101f831f91f92b41031f841031f91f82c0fc1607e4c7e5044c7e47e4ac7e0ac7e0d0407e4c7e47e4d0447e7cd0447e0c7e07e0ac7e0c7e07e0c7e47e4b03f2563f263f23f063f03f0581f9ff2c3f2587e0adf82b7e7cdf97e0b0fc1bf0fc1bf0fc9bf2fc795bf056fc961f837e1f937e1f9f2c53258a64e99a67ce99a64ae992c53274c53258a64e99a64e99a60b14c1d314c95d3274c53074c53074cd32574c95d3274cd3258d9bcb1b3963672bd9fcaf662c6cc7b36ce7b3ece57b3ff9ecdb316367f2c6cc57b3795ecc58d98b1b315ece57b315ecc57b395ecc58d9cb1b3963672c6cc58d98b1b31ecfb3ff95ece58d98af66ff3d9f663d9b662c6ce58d9bcb1b395ecc58d9caf66f2bd995f31a74d5738745265324902f836f8cfe233f8d3e33674ca43367494a23248c2f930be02f831f893e334f8c7e232488c392a0c1c661c124657ee67484a267485ee46a25ee47ee4a2457484748548656fc667c6fc456fc4587e23512a422c5211a89d211a892899a89a8919f1bf1943e2f99f19f1160f88acf88df8df8fcb07c66fc47c7e583e22c1f1f9a52121192125219219219a5225299219211921a52f9a521219a521211a52121997c97c960be4cbe5838cbe0be4acbe4acbe0cbe4be4acbe0cbe4be0b05f265f05f3e577c1df17c1df37c15df1e77cdf058be7cef9be4ef9be4ef9be4b17c962f92c5f2577c95df058be4ef8be4b17c1df17c79df37c962f83be6f83be2f82bbe4b17c795df0577c962f8f2c7c47f17c7e58f8bcb1f115fc7e58f8bcafe22c7c47f1fc7fe7f1fc657f1f963e33f8be33f8fe22bf8cafe32bf8ffcfe2f88afe22bf8bcfe3f88fe3f8cfe2f88afe32bf8bcb1f1163e32bf88b1f17963e2fff3f8fe32bf8cb1f11fc7f1963e3ff2c7c5e7f17c5fffffe7f1fc7fe7f17c657f1f963e3ff2bf8cb1f179a08f40992f5881a6d30c9b137401a08a089545f8b131a56ca8731afe2696ecaa73182fe68234aa63f10787078c4e74a83f0563f063f0c4e70798d674a8820fffbd2c4e783f1f556c80ffbadc667b3da41ee572078d43f06822820682082056c4fe682082063f23f0584112c0fc158fcf98bf0bf18bf8bf198d8bf960c68acc6cac5fffcd0447e4c7e07e3fcc7e5044b03f27f8fc163f057f93fc7e7cb1f92bfcff9fe3f27f9fc9fe7f257f82c7e4b1f83fc7e0aff3ffe58fc1fe3f2577f2c5f8eff7f2c5f8efd7e3bf5f8eff7f3bfdffcb17f2c5fceff7f3bf5fbcff1f82bfc1fe7f258fc1fe3f058fc9fe7f07f8fc79fe3f3e7f8fc15fe0b1f92c7e3ffcb17f3bf5fcefd7e3bfdfceff7eff3bfdfceff7ef2c5f8efd7f3bf5f8aefc58bf162fc77ebf95dfcaefc58bf60cfc047f207f8fc833f1067e211fcc0ff3f9c23f9067e611fc033f011fcc19f808fe60cfc033f108fe419f9c0ff1f9847f007f8fc847f011fcc19f803fcfe419f8c0ff3f9c19f8067e60cfc047f303fcfe703fc7e607f8fc423f808fe3847f00cfc033f211fc047f007f9fc847f381fe3f3833f00cfc833f3c23f9833f103fcfe40ff1f85f34b617e36544b7317e7f1378c69630d95a03b2898d331b7f02b39c325e619325e121375712131cd3b732c20d931cc697315c0a02c16b990d8ae198da5b98bf25b998db2a18bf18d9a43ce9a432f9a40901a412f9f39ce9f3b2f9f392f1a42901612034839d2c24269024072fcbc690242690a406d96c9b65b26d86c95b60db0d836c360db2d92c360f98d82be695b60b1cd36cb63cb0d936cb64b0d82b6c1a814056a1350283cebaa12b5015d73cad426a0509a814275cae1624057212c483fcb1212c483cb121fff2c483cd42a0350a80d415d350a80d42a0350570b0a0f3ae574ad4258509a85426a15015a84d42a0350574b0a02c364db2d836c364db0d936c360db0d82b6c1b61b06d96c961b3e6d96c1b65b06d86cf95b64db0d836c360b0d836cb64adb258e6961b1e586c95b64db2d92b6c15b64adb26d86c961b26d96c95b64b0d92b6c961b06d86c795b60b0d92b6c961b2586c9b65b1e589016241e5720390480b1202c484e4120390c83cb120390c84b120390c80e43212c480b1202c484e43212b909c864057212c484b1212c483ce4321000fe62a690046401957256d7c1a044401990048111a046401158532620814aa56208987383ab184bc3ab986343f81931a32a9863432a98c4e41e9907fffbd2c4ea03b2f156da0f7790863b335a4dff5618a2081882220898a9a14c9900655c985328111853214cf9c014019aa694c994c94c194c14c994c14c1aa62a6194c94c960a64c7e47e4ac7e3fcd0447e4b08225825e325e121312025f2b121325f25f2c090960978c4844860cfc847f211fc01fe3f011fc81fe7f20cfc01fe7f00cfc047f20cfc01fe7f00cfc833f20cfc847f103fc7e60cfc047f207219001c86420721900324108c800e432108c84192006480232103904840e4121833f011fc01fe7f103fc7e3e0cfc033f007f9fc047f011fc01fe7f007f8fc419f908fe308fe211fc047f00cfc847f207f9fc847f20cfcc0ff3f8067e7067e023f808fe40ff1f9067e211fc033f011fc833f3833f303fcfe3067e00ff3f908fe019f9833f20cfcc23f903fc7e019f808fe023f8e07f8fc40ff3f8833f1067e423f9847f207f8fcc19f9847f207f8fc033f211fc847f00cfc033f1a99d67fa933ccc957f313fea3d51f6a55f31a7069c3183d26534990c3934f8d3e236f88fe235f8a7e232f88fe331ce038c31588cb934a59673bc724235635633739738338f90f34a470437054a5324324237e3be32b7e333e2be337e27e32b3e333e23e333e33e233e37e22c2899a895211a89d21f0b0a2456484648648456484648694a648648456484582422c1211921a52159211592199219211592119211211fc5f17f95fc457f195fc5fe7f1fc658f88ef9be0b17c1df37c1df37c1df17c9df17c15df2577c15df277cdf277c5f277cdf3e577c962f93be2f9fff2bbe4ef9be4aef93be2f8ff2bbe0db96e0adb836e5b836e38e36e78d36e1b82b6e4db96e3cdb86e4f8f6e4db96e4db96e4db96e0adb836e1b92b6e0e4390cb12115c84721c84572179c87211c852195c84721486721c86721486572195c865890cb12179c87219c87219c872115c8477c5f0577c15df2577c95df077cdf0577c95df258be7cef8be4ef8be7ffcaef83be2f9f3be6f82bbe4b17c962f82c5f1e577c15c867214845890bfce4290fce43908e4390ce4390cb1219c85219c85219c872116242390a43390a42f2b90bfcb121ff95c87e721487e62898a2462891ee462890a26541f88c3e27f88c5121444f3c2144ccf4f0be4c2f93d3ccf72674cc5133dccd57a4990b061c985f217c9ff1fffbd2c4ee03f47d56cc0ffba9c6beb5d901ff59b0bf19df11f11bf1df19c9117c94922997c97c1c91b07645144c74874847ee6a25c3a4251335125133a4251335135132c5f19bf1bf19bf11f199f11f11bf19f199f19f195b07997c17c997c97c9b07307960be0cbe0be0cbe4be0b05f3e67c47c467c47c6567c667c47c4583e22b3e32b3e22b3e333e33e28457cc22be40d7caf98457c01af85f211c1e115f0b062f903c1ebe018be418be00d7c2f8062f9035f2be018be40d7c2f908af908af8062f9062f881af85f0115f006be57c8317c01af85f2115f2115f20783d7c0317c0457c0317c8457cc198380d7caf9035f0be606be17c40df13e3063e2037c6f8f08be2c0df13e3037c6f8a0c7c406f89f1031f16117c5037c4f8818f8c0e89d12c2344819448194482344a11a260ca2411a260744a894234482344e11a240744a89f06512c1944e117c606f8df1845f1845f140df13e3063e2f063e308be3063e3037c4f8f063e2063e3063e2063e308be2831f1031f142344aaf83289ff06512846897fffff08d130651354c414d45332e313030555555f2c113a6ce9be046f81a9467a1d687668aaa2a87e79a2a86d07341e6491924469329244513e39afc65f199484f8199ee6a5118a262899a94428999ee628918a262891be062891a94452118a2452199486a51191388aa1913844e9a2aa44e9913844e9a2aa44e1a2a844e9913a44e9511542b2270a1f14aef8cacf88a1f17cb0fc4585122b5123a43a43f2b513f35125132c28981d13a240744a8904e8981d12a25c0e89d1308d1203a2744c2344c1944819448194480e89d1275c2344b03a2744c0e89d1208d120651284689e0ca2703a2544c1944a0744e89c1944c1944e11a240ca2411a260ca260744e894194482344a0ca2708d120651208d1206513df03a2544e0ca260ca2613a2508d1203a2544982344fc23449ffc19a770669ce11d3b08e9c08e9c08e9c8474ef68334e230669cf8334ee11d3bedfe0cd39ff84b4e0474e3c19a737fc19a774fb7ffd1a8ac5ca3172d7853ebdc5cb2b5e0cd19b4668a2f083bc90bb3285d90ca6d29b0d1730d98e3545e10d7855e08c47023f8db3711c4a11fc32ec8bb23466cbb234668bb23172978328bc20ad7853466d19d32eccbb334674bb22c233450bb2fffbd2c4d583e9c98ec40ffad44632b35881ff5a9879a3345d915a336562e5128b9671fc8e068e28e068e08e068e31fc568e271fe8e25836733666e82c1b3959b3159b3159b39b749b3160d9cacd9ccd9cd9fcb06cc566cc566cc66cc6cffe566ce566cc566cc66ce6ce5836633666e93366367336736636e83662b36636e86e82c1b3960d98231c4231c4231c0191c4191c4231c0191c4191c0231c58191c20c8e2118e20c8e00c8e1038e11c0231c4231c4231c40e38471c191c6071c638846388463840e38c70038e31c00e38c70038e11c0231c40e3847108c71c0e3847181c718e00c8e2e0c8e2118e00c8e18323881c708e0118e211b940cb97f03b9572c2372af065ca81dcab97f832e5f03b9572c0ee5dca08dca03b9772c2372f81dcbb9411b940cb97fc1972e11b940cb94e11b940cb95ededde0cb956846e5fff09dcae12b960000001fcc2994b64d58f35b0cd6f1530d2d835b0d0220a60c31b2ca4c17e05f8c4b605fcb00bf18c303ab18eac30c98822208960c6b31040a55319544b630c6831b3195031b3200c29831534ab830a648022a0532581534c2990a60ac54c2c0532562a69602982c0a98614c05305640116031b305fc4b72b0c68b018d16031b305fc17ff2b7e3cadf92c3f0587e0df87e4df87e4f1b5fcb0bf1afcbf79617eff2c2fe6bfafc56bf95a42690a4072fa4272fa40690242690a42690242690240572f9a40901a409015a42690a40690a40690cbe690a4269024256901a40901a40909a42909a412f1a41ce9a42909a4090961202c5f8aefc77ebff9dfafde577ff3bf5f8efd7e2c5fbcefd7f2c5f8b17ef2bbf15df8efd7f3bf5fbcb17e2c5f8eff7f3bfdfcaefe77fbf162fc77fbf1dfefc58bf795dfcaefe77ebf1dfafe77fbf9dfefc58fc1fe7f057f93fcfe4b1f82c7e4aff1fe58fc95fe0aff258fcf9fe3f258fcff95fe0aff1e58fc95fe0b1f92bfc1fe3f257f83fc7e0ff1f8f2bfc9fe7f3e58fc9fe7f257f82c7e3cff3f92c7e4b1f83fcfe7cb1f8f2c7e0ff3f82bfc9fe7f257f9ffffcbf79dde6bf76bb87ef58ffffef3cf9bfdd65909587c663f127c65455e4d2641838c9224994c9221830c66c0ca4c0fa0ca4cae20e34c5632438cbc71290cbc638a4ad2642c05f0617c8c1c787124465f2c1fe7485485d3f72fffbd2c4ff83b74592d26ff796ce783199c1ff75a8a433f73512314c4212c15b9a1095b195b15b960be4cbe0be4cbe5838d838be4d838be0c6e4e30ce386e4d58ce38b071e563706370372582422c252960908c90d297cac90cc908908ac90cadb936e1b936e38c36e1b82c37056dc1b71c61b72dc9b70dc9b70dc162f9f2bbe4ef9be7caef92c5f3e577c15df058be0aef8390a422b908ae422b90cb12196242f2c4845890fce43908e4390ce4290ce43908db86e0db96e4db86e4b0dc9b72dc161b936e5b836e5b936e5b936e1b92c370586e0b0dc1b72dc95b7256dc1b70dc1b72dc9b72dc1b70dc95b7056dc9b70dcff9b72dcf9b70dc9b72dc15b70586e0b0dc1b70dc95b726dcb71e586e4b0dc7fffffffff95fc658f8fffffffcafe2ffffff390a43390e42f2b90ce43908b12195c86721c86721c85e5721796243f2c4845890cae422b908e4390ce4290cae422b908e4390cb1217fffff962f92c5f3fffffffffe58be7ffffffffcb17cd5f2c0a266f813e066289b3a462529c5265e39c50512651a4ca61c96096631294bc632f1cbc731294bc630e30ae532b8c90f3158c38f32438ae33158c1b82b0e34a8491985f04929924630798c1e3079978c71498948121184847141589486289948665210a2462898a26581448aca432c0a2462890a2456289958a27e58144cb1f17ff963e23f8fe3f2c7c5e6dc3726dcb726dc370586e4db86e4db96e4b1c79b70dc9b72dc1b72dc1b72dc9b70dc1b72dc9b72dcf9b72dcf9b72dc95b70586e0db96e0b121162432b908b12115c865890cae43fff2c486572195c85e6dcb706dcb706dcb726dc37256dc15b7256dc9b70dc161b92c372586e4adb8ff36e1b936e5b8ff390a422b908ae422b908ae432b908e4390ce42908e4290ffcb1211c8521962422c484721486721c86572196242ff2bbe3cb17c15df058be4aef82bbe4b17c95df258be0b17c9df17c79df37c95df277cdf258be3fcef8be3caef82bbe7ce4390ce42908ae42390e43ff2c48457211c8721962432c485e721c845890bce43908e42908ae43f2b90cae422b908ae43f390e432b90cb121e11a244c8532310ce157e3496d8d93103fcc48c61f831931cad5270ae8192a1276cb51950b27064a9958b034403a095cd245b3b7114c8a46353c2ce1fffbd2c4ea83f37d5cce0ff6d7c60934de41cd6691444353298d52a832342b64c8a324908d5644353aa8444a1cf46b3f9a6506a968b563fea8af41bb1a648798f1e63c898c266f07155e133b3428486c913c33670cf9a295866cf19e39485681a081a081a1e129c677e57e1a07cacd338ad120ecd23499f1de8cc44d0f8ce46e19e819c990a0fe52909c5101a089f871a3e54287b64d19551340e34117fed19e91222672049f133f1b24748b928d4a8f709b9371d2478a3a26e891e375d22fc75f375b28f33ce909bd76cecbc9301f81dc82ceab0a9713b93676594f58edb49da3bef3c2f3bb03b6b1cbdf772e8cf0b4730257481e26ecdc70de789b62ab46d344ae916a6e3981b8f916a586c6b29d8d916c6f3a6eb84df9bed5b98379ee61f52c72bd3d3dc87e821ca177e00791c393b87227f2cd69c7ddc7a067703cc3b0ee47dafcbe61fbad63ee01800661f807c0111c7079e00600181e7819600647aa47e30c10cc641634bbb8df69a30a24cd04093289c8cae19347bb8e0aea368b28d8ea232684cca8573291ccd40a33350ecc624a30995cd890738837cd083103010c969c366b18d326230e03d1b0c1a1c317908ca25031f8502c0b2c898684248150e4120d48b4e061269366e3a6e4269a868803069b4e9c149d4e930374461238afa008c638402091a80889ac8840afd213404097154d5215a622b3ded69d6804b9a641a640282a5500d598d64c98100a470c870a802590fcd274de84d350cb014ba7df57e00281aa52ce5e2c55733dceccb1da81986f825237da3552354c4d752de4b60161a862611a68063251aa618a71c381bcaa78ad160060880a19d761ac460168cb38280a22ba4826407294a76971400b370db81204d8111b8f344f102a8e2e36a8dae0369545055d5692f2ca619932e67782e235a17eb5aa3a58661da90d3b4ca588b5d4e50214d093204b8ac74401342cd035225f635d0f3639a0ba51c4e648a6f9554c0b385ced7393cb8cf34a6970a6b5ba5a6ed5a5a5d534bad56954bad5594cb6f5694cb795a354dda58cd3674b19b3a954bad56954bad5594cb7095592028b51774bdc5f541a2a0287884f4281658d330cc64c37028f90c0237c00d19e686807c2e76e46b7a60fc415882830e5341837c7077c6a1e61ac1664858156418b18fffbd2c4f28234520cec0e67178619bf8c199c3fa82898c416f157c0b2aa1a08eb2a42498c798ab00190bb440d8a34055cca2823337443517315c0a3e43008df023463a6680c44a04145d541a56555050f50c51751550e50d5165655505575344d90148c4b04b844f2580cbc28c30941d0128808c0c28a9890e38611942802e5abb7325d56e5d9a765618b8414088443052520e8c4002e3913005532a0c5b0af083a29c02e4d0e01ac3546c3805c20892c065e166015260121a3178ad6bb7265da54a5c10a804031921214708210972048e1862c885c42852520e8c4422dda0115e3427f6028360882dea6429528dc91a8ec94a92891e98050305180050a985124a81d488085970e60634c20061c54c4871c3084a5a82dfa5123ea732c0a8f2db5805575e0d11b0ae972bcbb522ad2a5c49513d288a9280bb96c32d04749fc894c24d10a7523635c282d52c08ee9955ca55d2fae14ec0c70e94c414d45332e3130305555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555";
|
|
@@ -3479,7 +3478,7 @@ var $s = Object.defineProperty, O = (a, e, t, i) => {
|
|
|
3479
3478
|
const T = Ke.noConflict();
|
|
3480
3479
|
T.setLevel("info");
|
|
3481
3480
|
const ie = "cb_", Ps = (a) => new Promise((e) => setTimeout(e, a));
|
|
3482
|
-
class R extends
|
|
3481
|
+
class R extends Jt {
|
|
3483
3482
|
constructor() {
|
|
3484
3483
|
super(), this.actionIdCounter = 0, this.currentLoadContext = {}, this.prefilledFormValues = {}, this.wsClient = null, this.checkConnectionPromise = null, this.webAudioProcessor = null, this.webAudioTrackId = null, this.webAudioCurrentMark = null, this.replyMessage = null, this.streamingResponseInProgress = !1, this.streamingResponseLastText = null, this.streamingResponseBuffer = null, this.streamingResponseTagStartPos = 0, this.streamingResponseCurrentTag = null, this.tabsBroadcastChannel = new BroadcastChannel("c7o-bot-tabs"), this.tabId = "c7o-bot-tab-" + (self.crypto?.randomUUID?.() || Math.random().toString(36).slice(2)), this.tabsBroadcastChannel.addEventListener("message", this.handleBroadcastMessage.bind(this)), console.log(`c7o: AppState: created, tabId=${this.tabId}`);
|
|
3485
3484
|
}
|
|
@@ -3616,7 +3615,7 @@ class R extends Kt {
|
|
|
3616
3615
|
// [sv2] 11/05/25 This will send request to start audio media to server
|
|
3617
3616
|
// we will start actual audio capture only after we receive mediaStarted confirmation from server
|
|
3618
3617
|
async startAudio() {
|
|
3619
|
-
this.mediaStartAudioRequested || (this.webAudioProcessor || (this.webAudioProcessor = new
|
|
3618
|
+
this.mediaStartAudioRequested || (this.webAudioProcessor || (this.webAudioProcessor = new gt(), this.webAudioProcessor.on("audio", this.onAudioChunkCaptured.bind(this)), this.webAudioProcessor.on("playbackEnded", this.onPlaybackEnded.bind(this)), this.webAudioProcessor.on("terminate", this.onWebAudioTerminate.bind(this))), await this.sendEvent({
|
|
3620
3619
|
id: fe(),
|
|
3621
3620
|
type: "mediaStart",
|
|
3622
3621
|
mediaType: "audio",
|
|
@@ -3746,7 +3745,11 @@ class R extends Kt {
|
|
|
3746
3745
|
this.initForm(this.form);
|
|
3747
3746
|
return;
|
|
3748
3747
|
}
|
|
3749
|
-
|
|
3748
|
+
if (this.setting.suppressStartupForm) {
|
|
3749
|
+
T.info("Startup form not suppressed by widget settings.");
|
|
3750
|
+
return;
|
|
3751
|
+
}
|
|
3752
|
+
const e = Xt(null, ["startupForm"], this.botSettings);
|
|
3750
3753
|
if (!e || !e?.name) {
|
|
3751
3754
|
T.info("Startup form not present");
|
|
3752
3755
|
return;
|
|
@@ -3754,10 +3757,10 @@ class R extends Kt {
|
|
|
3754
3757
|
this.initForm(e);
|
|
3755
3758
|
}
|
|
3756
3759
|
initForm(e = null) {
|
|
3757
|
-
const t = e, i =
|
|
3760
|
+
const t = e, i = Xt(null, ["name"], e);
|
|
3758
3761
|
if (!t || !i)
|
|
3759
3762
|
return;
|
|
3760
|
-
const s =
|
|
3763
|
+
const s = Xt(null, ["fields"], e);
|
|
3761
3764
|
if (!Array.isArray(s) || s.length <= 0) {
|
|
3762
3765
|
T.info("form has no fields", e);
|
|
3763
3766
|
return;
|
|
@@ -4467,6 +4470,7 @@ O([
|
|
|
4467
4470
|
url: null,
|
|
4468
4471
|
version: "current",
|
|
4469
4472
|
testMode: !1,
|
|
4473
|
+
suppressStartupForm: !1,
|
|
4470
4474
|
welcomeMessage: null,
|
|
4471
4475
|
disclaimerMessage: null,
|
|
4472
4476
|
enableShowFullDisclaimerMessage: !1,
|
|
@@ -4667,7 +4671,7 @@ var Os = Object.defineProperty, Bs = Object.getOwnPropertyDescriptor, Ja = (a, e
|
|
|
4667
4671
|
return i && s && Os(e, t, s), s;
|
|
4668
4672
|
};
|
|
4669
4673
|
const qs = '<svg viewBox="0 0 16 16" width="16px" height="16px"><path fill="currentColor" d="M2.146 2.854a.5.5 0 1 1 .708-.708L8 7.293l5.146-5.147a.5.5 0 0 1 .708.708L8.707 8l5.147 5.146a.5.5 0 0 1-.708.708L8 8.707l-5.146 5.147a.5.5 0 0 1-.708-.708L7.293 8z"></path></svg>';
|
|
4670
|
-
let
|
|
4674
|
+
let Bt = class extends re {
|
|
4671
4675
|
constructor() {
|
|
4672
4676
|
super(...arguments), this.title = "ChatBot";
|
|
4673
4677
|
}
|
|
@@ -4683,7 +4687,7 @@ let Ot = class extends re {
|
|
|
4683
4687
|
() => b`<img class="cb-header-logo" part="header-logo" src="${u.setting.logoUrl}" />`,
|
|
4684
4688
|
() => b`<div class="cb-header-logo" part="header-logo">${G(u.setting.logoSvg)}</div>`
|
|
4685
4689
|
)}
|
|
4686
|
-
<div class="cb-header-title" part="header-title">${
|
|
4690
|
+
<div class="cb-header-title" part="header-title">${xt(this.title)}</div>
|
|
4687
4691
|
${W(
|
|
4688
4692
|
u.alwaysOpen,
|
|
4689
4693
|
() => b``,
|
|
@@ -4729,13 +4733,13 @@ let Ot = class extends re {
|
|
|
4729
4733
|
});
|
|
4730
4734
|
}
|
|
4731
4735
|
};
|
|
4732
|
-
|
|
4736
|
+
Bt.styles = Ls;
|
|
4733
4737
|
Ja([
|
|
4734
4738
|
x({ type: String, attribute: "title" })
|
|
4735
|
-
],
|
|
4736
|
-
|
|
4739
|
+
], Bt.prototype, "title", 2);
|
|
4740
|
+
Bt = Ja([
|
|
4737
4741
|
J("cb-header")
|
|
4738
|
-
],
|
|
4742
|
+
], Bt);
|
|
4739
4743
|
const Ds = K`
|
|
4740
4744
|
${ke}
|
|
4741
4745
|
.cb-footer {
|
|
@@ -4756,7 +4760,7 @@ var Fs = Object.getOwnPropertyDescriptor, js = (a, e, t, i) => {
|
|
|
4756
4760
|
(o = a[r]) && (s = o(s) || s);
|
|
4757
4761
|
return s;
|
|
4758
4762
|
};
|
|
4759
|
-
let
|
|
4763
|
+
let Zt = class extends re {
|
|
4760
4764
|
constructor() {
|
|
4761
4765
|
super(...arguments), this.year = (/* @__PURE__ */ new Date()).getFullYear();
|
|
4762
4766
|
}
|
|
@@ -4791,10 +4795,10 @@ let Jt = class extends re {
|
|
|
4791
4795
|
`;
|
|
4792
4796
|
}
|
|
4793
4797
|
};
|
|
4794
|
-
|
|
4795
|
-
|
|
4798
|
+
Zt.styles = Ds;
|
|
4799
|
+
Zt = js([
|
|
4796
4800
|
J("cb-footer")
|
|
4797
|
-
],
|
|
4801
|
+
], Zt);
|
|
4798
4802
|
const Hs = K`
|
|
4799
4803
|
${ke}
|
|
4800
4804
|
|
|
@@ -5246,7 +5250,7 @@ var Vs = Object.defineProperty, Us = Object.getOwnPropertyDescriptor, je = (a, e
|
|
|
5246
5250
|
(o = a[r]) && (s = (i ? o(e, t, s) : o(s)) || s);
|
|
5247
5251
|
return i && s && Vs(e, t, s), s;
|
|
5248
5252
|
};
|
|
5249
|
-
let
|
|
5253
|
+
let mt = class extends Fe {
|
|
5250
5254
|
constructor() {
|
|
5251
5255
|
super(...arguments), this.options = [], this.minWidth = 180;
|
|
5252
5256
|
}
|
|
@@ -5278,7 +5282,7 @@ let gt = class extends Fe {
|
|
|
5278
5282
|
this.dispatchEvent(new CustomEvent("select", { detail: { option: e }, bubbles: !0, composed: !0 }));
|
|
5279
5283
|
}
|
|
5280
5284
|
};
|
|
5281
|
-
|
|
5285
|
+
mt.styles = K`
|
|
5282
5286
|
:host {
|
|
5283
5287
|
position: fixed; /* overlay */
|
|
5284
5288
|
left: 0;
|
|
@@ -5333,13 +5337,13 @@ gt.styles = K`
|
|
|
5333
5337
|
`;
|
|
5334
5338
|
je([
|
|
5335
5339
|
x({ type: Array })
|
|
5336
|
-
],
|
|
5340
|
+
], mt.prototype, "options", 2);
|
|
5337
5341
|
je([
|
|
5338
5342
|
x({ type: Number })
|
|
5339
|
-
],
|
|
5340
|
-
|
|
5343
|
+
], mt.prototype, "minWidth", 2);
|
|
5344
|
+
mt = je([
|
|
5341
5345
|
J("cb-split-menu")
|
|
5342
|
-
],
|
|
5346
|
+
], mt);
|
|
5343
5347
|
let Ge = class extends Fe {
|
|
5344
5348
|
constructor() {
|
|
5345
5349
|
super(...arguments), this.variant = "primary", this.label = "Select", this.options = [], this.size = "", this._menuEl = null, this._toggle = async (a) => {
|
|
@@ -5444,12 +5448,12 @@ je([
|
|
|
5444
5448
|
Ge = je([
|
|
5445
5449
|
J("cb-split-button")
|
|
5446
5450
|
], Ge);
|
|
5447
|
-
var Ns = Object.defineProperty, Ws = Object.getOwnPropertyDescriptor,
|
|
5451
|
+
var Ns = Object.defineProperty, Ws = Object.getOwnPropertyDescriptor, kt = (a, e, t, i) => {
|
|
5448
5452
|
for (var s = i > 1 ? void 0 : i ? Ws(e, t) : e, r = a.length - 1, o; r >= 0; r--)
|
|
5449
5453
|
(o = a[r]) && (s = (i ? o(e, t, s) : o(s)) || s);
|
|
5450
5454
|
return i && s && Ns(e, t, s), s;
|
|
5451
5455
|
};
|
|
5452
|
-
const
|
|
5456
|
+
const Et = Ke.noConflict(), $a = "M3.612 15.443c-.386.198-.824-.149-.746-.592l.83-4.73L.173 6.765c-.329-.314-.158-.888.283-.95l4.898-.696L7.538.792c.197-.39.73-.39.927 0l2.184 4.327 4.898.696c.441.062.612.636.282.95l-3.522 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256z", Gs = K`
|
|
5453
5457
|
:host { display: block; width: 100%; color: var(--cb-fg, #111827); }
|
|
5454
5458
|
|
|
5455
5459
|
/* CARD */
|
|
@@ -5757,7 +5761,7 @@ let Me = class extends Fe {
|
|
|
5757
5761
|
}
|
|
5758
5762
|
// @ts-ignore
|
|
5759
5763
|
async addToCartAndSetAttributes({ variantId: a, quantity: e, attributes: t }) {
|
|
5760
|
-
|
|
5764
|
+
Et.info(`c7o: Adding to Shopify cart, variantId=${a}, quantity=${e}, attributes=`, t);
|
|
5761
5765
|
const i = window.Shopify?.routes?.root || "/", s = this.findCartSectionIdsInDOM(), r = {
|
|
5762
5766
|
items: [{ id: Number(a), quantity: e }]
|
|
5763
5767
|
};
|
|
@@ -5769,7 +5773,7 @@ let Me = class extends Fe {
|
|
|
5769
5773
|
body: JSON.stringify(r)
|
|
5770
5774
|
});
|
|
5771
5775
|
if (!o.ok) {
|
|
5772
|
-
|
|
5776
|
+
Et.error("c7o: cart/add.js failed"), Ka({
|
|
5773
5777
|
message: "Unable to add item to cart.",
|
|
5774
5778
|
variant: "danger",
|
|
5775
5779
|
duration: 2800,
|
|
@@ -5777,24 +5781,24 @@ let Me = class extends Fe {
|
|
|
5777
5781
|
});
|
|
5778
5782
|
return;
|
|
5779
5783
|
}
|
|
5780
|
-
await o.json(),
|
|
5784
|
+
await o.json(), Et.info("c7o: cart/add.js - cart updated"), Et.info("c7o: reloading window after cart update"), window.location.reload();
|
|
5781
5785
|
}
|
|
5782
5786
|
};
|
|
5783
5787
|
Me.styles = [Gs, Za, Qa];
|
|
5784
5788
|
Me.DRAG_THRESHOLD_PX = 10;
|
|
5785
|
-
|
|
5789
|
+
kt([
|
|
5786
5790
|
x({ type: Object })
|
|
5787
5791
|
], Me.prototype, "block", 2);
|
|
5788
|
-
|
|
5792
|
+
kt([
|
|
5789
5793
|
xe(".horizontal-carousel")
|
|
5790
5794
|
], Me.prototype, "_hCarousel", 2);
|
|
5791
|
-
|
|
5795
|
+
kt([
|
|
5792
5796
|
Va()
|
|
5793
5797
|
], Me.prototype, "_canPrev", 2);
|
|
5794
|
-
|
|
5798
|
+
kt([
|
|
5795
5799
|
Va()
|
|
5796
5800
|
], Me.prototype, "_canNext", 2);
|
|
5797
|
-
Me =
|
|
5801
|
+
Me = kt([
|
|
5798
5802
|
J("cb-block")
|
|
5799
5803
|
], Me);
|
|
5800
5804
|
var Xs = Object.defineProperty, Ys = Object.getOwnPropertyDescriptor, ei = (a, e, t, i) => {
|
|
@@ -5802,7 +5806,7 @@ var Xs = Object.defineProperty, Ys = Object.getOwnPropertyDescriptor, ei = (a, e
|
|
|
5802
5806
|
(o = a[r]) && (s = (i ? o(e, t, s) : o(s)) || s);
|
|
5803
5807
|
return i && s && Xs(e, t, s), s;
|
|
5804
5808
|
};
|
|
5805
|
-
let
|
|
5809
|
+
let qt = class extends Fe {
|
|
5806
5810
|
constructor() {
|
|
5807
5811
|
super(...arguments), this.blocks = [];
|
|
5808
5812
|
}
|
|
@@ -5814,7 +5818,7 @@ let Bt = class extends Fe {
|
|
|
5814
5818
|
`;
|
|
5815
5819
|
}
|
|
5816
5820
|
};
|
|
5817
|
-
|
|
5821
|
+
qt.styles = K`
|
|
5818
5822
|
:host {
|
|
5819
5823
|
display: block;
|
|
5820
5824
|
}
|
|
@@ -5827,11 +5831,11 @@ Bt.styles = K`
|
|
|
5827
5831
|
`;
|
|
5828
5832
|
ei([
|
|
5829
5833
|
x({ type: Array })
|
|
5830
|
-
],
|
|
5831
|
-
|
|
5834
|
+
], qt.prototype, "blocks", 2);
|
|
5835
|
+
qt = ei([
|
|
5832
5836
|
J("cb-blocks")
|
|
5833
|
-
],
|
|
5834
|
-
var
|
|
5837
|
+
], qt);
|
|
5838
|
+
var zt = { exports: {} }, Ks = zt.exports, Pa;
|
|
5835
5839
|
function Js() {
|
|
5836
5840
|
return Pa || (Pa = 1, (function(a, e) {
|
|
5837
5841
|
(function(t, i) {
|
|
@@ -5898,16 +5902,16 @@ function Js() {
|
|
|
5898
5902
|
function w(n) {
|
|
5899
5903
|
var c = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, l = c.onElement, d = c.withCallback, h = c.avoidDuplicate, m = h === void 0 || h, g = c.once, y = g !== void 0 && g, A = c.useCapture, S = A !== void 0 && A, I = arguments.length > 2 ? arguments[2] : void 0, $ = l || [];
|
|
5900
5904
|
function B(q) {
|
|
5901
|
-
|
|
5905
|
+
H(d) && d.call(I, q, this), y && B.destroy();
|
|
5902
5906
|
}
|
|
5903
|
-
return
|
|
5907
|
+
return V($) && ($ = document.querySelectorAll($)), B.destroy = function() {
|
|
5904
5908
|
v($, (function(q) {
|
|
5905
|
-
var
|
|
5906
|
-
|
|
5909
|
+
var F = k(q, n, B);
|
|
5910
|
+
F.found && F.all.splice(F.evt, 1), q.removeEventListener && q.removeEventListener(n, B, S);
|
|
5907
5911
|
}));
|
|
5908
5912
|
}, v($, (function(q) {
|
|
5909
|
-
var
|
|
5910
|
-
(q.addEventListener && m && !
|
|
5913
|
+
var F = k(q, n, B);
|
|
5914
|
+
(q.addEventListener && m && !F.found || !m) && (q.addEventListener(n, B, S), F.all.push({ eventName: n, fn: B }));
|
|
5911
5915
|
})), B;
|
|
5912
5916
|
}
|
|
5913
5917
|
function _(n, c) {
|
|
@@ -5932,14 +5936,14 @@ function Js() {
|
|
|
5932
5936
|
function L(n) {
|
|
5933
5937
|
var c = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "", l = arguments.length > 2 && arguments[2] !== void 0 && arguments[2];
|
|
5934
5938
|
if (!n || c === "") return !1;
|
|
5935
|
-
if (c === "none") return
|
|
5939
|
+
if (c === "none") return H(l) && l(), !1;
|
|
5936
5940
|
var d = He(), h = c.split(" ");
|
|
5937
5941
|
v(h, (function(m) {
|
|
5938
5942
|
_(n, "g" + m);
|
|
5939
5943
|
})), w(d, { onElement: n, avoidDuplicate: !1, once: !0, withCallback: function(m, g) {
|
|
5940
5944
|
v(h, (function(y) {
|
|
5941
5945
|
P(g, "g" + y);
|
|
5942
|
-
})),
|
|
5946
|
+
})), H(l) && l();
|
|
5943
5947
|
} });
|
|
5944
5948
|
}
|
|
5945
5949
|
function C(n) {
|
|
@@ -5977,17 +5981,17 @@ function Js() {
|
|
|
5977
5981
|
}
|
|
5978
5982
|
function he(n, c, l) {
|
|
5979
5983
|
if (ue(n)) console.error("Inject assets error");
|
|
5980
|
-
else if (
|
|
5984
|
+
else if (H(c) && (l = c, c = !1), V(c) && c in window) H(l) && l();
|
|
5981
5985
|
else {
|
|
5982
5986
|
var d;
|
|
5983
5987
|
if (n.indexOf(".css") !== -1) {
|
|
5984
|
-
if ((d = document.querySelectorAll('link[href="' + n + '"]')) && d.length > 0) return void (
|
|
5988
|
+
if ((d = document.querySelectorAll('link[href="' + n + '"]')) && d.length > 0) return void (H(l) && l());
|
|
5985
5989
|
var h = document.getElementsByTagName("head")[0], m = h.querySelectorAll('link[rel="stylesheet"]'), g = document.createElement("link");
|
|
5986
|
-
return g.rel = "stylesheet", g.type = "text/css", g.href = n, g.media = "all", m ? h.insertBefore(g, m[0]) : h.appendChild(g), void (
|
|
5990
|
+
return g.rel = "stylesheet", g.type = "text/css", g.href = n, g.media = "all", m ? h.insertBefore(g, m[0]) : h.appendChild(g), void (H(l) && l());
|
|
5987
5991
|
}
|
|
5988
5992
|
if ((d = document.querySelectorAll('script[src="' + n + '"]')) && d.length > 0) {
|
|
5989
|
-
if (
|
|
5990
|
-
if (
|
|
5993
|
+
if (H(l)) {
|
|
5994
|
+
if (V(c)) return ae((function() {
|
|
5991
5995
|
return window[c] !== void 0;
|
|
5992
5996
|
}), (function() {
|
|
5993
5997
|
l();
|
|
@@ -5997,8 +6001,8 @@ function Js() {
|
|
|
5997
6001
|
} else {
|
|
5998
6002
|
var y = document.createElement("script");
|
|
5999
6003
|
y.type = "text/javascript", y.src = n, y.onload = function() {
|
|
6000
|
-
if (
|
|
6001
|
-
if (
|
|
6004
|
+
if (H(l)) {
|
|
6005
|
+
if (V(c)) return ae((function() {
|
|
6002
6006
|
return window[c] !== void 0;
|
|
6003
6007
|
}), (function() {
|
|
6004
6008
|
l();
|
|
@@ -6012,10 +6016,10 @@ function Js() {
|
|
|
6012
6016
|
function ge() {
|
|
6013
6017
|
return "navigator" in window && window.navigator.userAgent.match(/(iPad)|(iPhone)|(iPod)|(Android)|(PlayBook)|(BB10)|(BlackBerry)|(Opera Mini)|(IEMobile)|(webOS)|(MeeGo)/i);
|
|
6014
6018
|
}
|
|
6015
|
-
function
|
|
6019
|
+
function H(n) {
|
|
6016
6020
|
return typeof n == "function";
|
|
6017
6021
|
}
|
|
6018
|
-
function
|
|
6022
|
+
function V(n) {
|
|
6019
6023
|
return typeof n == "string";
|
|
6020
6024
|
}
|
|
6021
6025
|
function U(n) {
|
|
@@ -6028,7 +6032,7 @@ function Js() {
|
|
|
6028
6032
|
return n && n.length && isFinite(n.length);
|
|
6029
6033
|
}
|
|
6030
6034
|
function Ve(n) {
|
|
6031
|
-
return o(n) === "object" && n != null && !
|
|
6035
|
+
return o(n) === "object" && n != null && !H(n) && !$e(n);
|
|
6032
6036
|
}
|
|
6033
6037
|
function ue(n) {
|
|
6034
6038
|
return n == null;
|
|
@@ -6045,7 +6049,7 @@ function Js() {
|
|
|
6045
6049
|
}
|
|
6046
6050
|
return n.length;
|
|
6047
6051
|
}
|
|
6048
|
-
function
|
|
6052
|
+
function _t(n) {
|
|
6049
6053
|
return !isNaN(parseFloat(n)) && isFinite(n);
|
|
6050
6054
|
}
|
|
6051
6055
|
function pa() {
|
|
@@ -6186,7 +6190,7 @@ function Js() {
|
|
|
6186
6190
|
function ki(n, c, l, d) {
|
|
6187
6191
|
var h = n.querySelector(".gslide-media"), m = new Image(), g = "gSlideTitle_" + l, y = "gSlideDesc_" + l;
|
|
6188
6192
|
m.addEventListener("load", (function() {
|
|
6189
|
-
|
|
6193
|
+
H(d) && d();
|
|
6190
6194
|
}), !1), m.src = c.href, c.sizes != "" && c.srcset != "" && (m.sizes = c.sizes, m.srcset = c.srcset), m.alt = "", ue(c.alt) || c.alt === "" || (m.alt = c.alt), c.title !== "" && m.setAttribute("aria-labelledby", g), c.description !== "" && m.setAttribute("aria-describedby", y), c.hasOwnProperty("_hasCustomWidth") && c._hasCustomWidth && (m.style.width = c.width), c.hasOwnProperty("_hasCustomHeight") && c._hasCustomHeight && (m.style.height = c.height), h.insertBefore(m, h.firstChild);
|
|
6191
6195
|
}
|
|
6192
6196
|
function _i(n, c, l, d) {
|
|
@@ -6201,11 +6205,11 @@ function Js() {
|
|
|
6201
6205
|
var q = '<video id="' + g + '" ';
|
|
6202
6206
|
q += 'style="background:#000; max-width: '.concat(c.width, ';" '), q += 'preload="metadata" ', q += 'x-webkit-airplay="allow" ', q += "playsinline ", q += "controls ", q += 'class="gvideo-local">', q += '<source src="'.concat(I, '">'), B = X(q += "</video>");
|
|
6203
6207
|
}
|
|
6204
|
-
var
|
|
6205
|
-
_(S, "".concat($, "-video gvideo")), S.appendChild(
|
|
6208
|
+
var F = B || X('<div id="'.concat(g, '" data-plyr-provider="').concat($, '" data-plyr-embed-id="').concat(I, '"></div>'));
|
|
6209
|
+
_(S, "".concat($, "-video gvideo")), S.appendChild(F), S.setAttribute("data-id", g), S.setAttribute("data-index", l);
|
|
6206
6210
|
var ee = se(h.settings.plyr, "config") ? h.settings.plyr.config : {}, me = new Plyr("#" + g, ee);
|
|
6207
6211
|
me.on("ready", (function(be) {
|
|
6208
|
-
A[g] = be.detail.plyr,
|
|
6212
|
+
A[g] = be.detail.plyr, H(d) && d();
|
|
6209
6213
|
})), ae((function() {
|
|
6210
6214
|
return n.querySelector("iframe") && n.querySelector("iframe").dataset.ready == "true";
|
|
6211
6215
|
}), (function() {
|
|
@@ -6219,7 +6223,7 @@ function Js() {
|
|
|
6219
6223
|
}
|
|
6220
6224
|
function Si(n, c, l, d) {
|
|
6221
6225
|
var h, m = this, g = n.querySelector(".gslide-media"), y = !(!se(c, "href") || !c.href) && c.href.split("#").pop().trim(), A = !(!se(c, "content") || !c.content) && c.content;
|
|
6222
|
-
if (A && (
|
|
6226
|
+
if (A && (V(A) && (h = X('<div class="ginlined-content">'.concat(A, "</div>"))), U(A))) {
|
|
6223
6227
|
A.style.display == "none" && (A.style.display = "block");
|
|
6224
6228
|
var S = document.createElement("div");
|
|
6225
6229
|
S.className = "ginlined-content", S.appendChild(A), h = S;
|
|
@@ -6233,13 +6237,13 @@ function Js() {
|
|
|
6233
6237
|
if (!h) return console.error("Unable to append inline slide content", c), !1;
|
|
6234
6238
|
g.style.height = c.height, g.style.width = c.width, g.appendChild(h), this.events["inlineclose" + y] = w("click", { onElement: g.querySelectorAll(".gtrigger-close"), withCallback: function(B) {
|
|
6235
6239
|
B.preventDefault(), m.close();
|
|
6236
|
-
} }),
|
|
6240
|
+
} }), H(d) && d();
|
|
6237
6241
|
}
|
|
6238
6242
|
function Ci(n, c, l, d) {
|
|
6239
6243
|
var h = n.querySelector(".gslide-media"), m = (function(g) {
|
|
6240
6244
|
var y = g.url, A = g.allow, S = g.callback, I = g.appendTo, $ = document.createElement("iframe");
|
|
6241
6245
|
return $.className = "vimeo-video gvideo", $.src = y, $.style.width = "100%", $.style.height = "100%", A && $.setAttribute("allow", A), $.onload = function() {
|
|
6242
|
-
$.onload = null, _($, "node-ready"),
|
|
6246
|
+
$.onload = null, _($, "node-ready"), H(S) && S();
|
|
6243
6247
|
}, I && I.appendChild($), $;
|
|
6244
6248
|
})({ url: c.href, callback: d });
|
|
6245
6249
|
h.parentNode.style.maxWidth = c.width, h.parentNode.style.height = c.height, h.appendChild(m);
|
|
@@ -6258,10 +6262,10 @@ function Js() {
|
|
|
6258
6262
|
return this.setSize(h, c), h;
|
|
6259
6263
|
}
|
|
6260
6264
|
var m = "", g = n.getAttribute("data-glightbox"), y = n.nodeName.toLowerCase();
|
|
6261
|
-
if (y === "a" && (m = n.href), y === "img" && (m = n.src, d.alt = n.alt), d.href = m, v(d, (function(q,
|
|
6262
|
-
se(c,
|
|
6263
|
-
var ee = n.dataset[
|
|
6264
|
-
ue(ee) || (d[
|
|
6265
|
+
if (y === "a" && (m = n.href), y === "img" && (m = n.src, d.alt = n.alt), d.href = m, v(d, (function(q, F) {
|
|
6266
|
+
se(c, F) && F !== "width" && (d[F] = c[F]);
|
|
6267
|
+
var ee = n.dataset[F];
|
|
6268
|
+
ue(ee) || (d[F] = l.sanitizeValue(ee));
|
|
6265
6269
|
})), d.content && (d.type = "inline"), !d.type && m && (d.type = this.sourceType(m)), ue(g)) {
|
|
6266
6270
|
if (!d.title && y == "a") {
|
|
6267
6271
|
var A = n.title;
|
|
@@ -6273,13 +6277,13 @@ function Js() {
|
|
|
6273
6277
|
}
|
|
6274
6278
|
} else {
|
|
6275
6279
|
var I = [];
|
|
6276
|
-
v(d, (function(q,
|
|
6277
|
-
I.push(";\\s?" +
|
|
6278
|
-
})), I = I.join("\\s?:|"), g.trim() !== "" && v(d, (function(q,
|
|
6279
|
-
var ee = g, me = new RegExp("s?" +
|
|
6280
|
+
v(d, (function(q, F) {
|
|
6281
|
+
I.push(";\\s?" + F);
|
|
6282
|
+
})), I = I.join("\\s?:|"), g.trim() !== "" && v(d, (function(q, F) {
|
|
6283
|
+
var ee = g, me = new RegExp("s?" + F + "s?:s?(.*?)(" + I + "s?:|$)"), be = ee.match(me);
|
|
6280
6284
|
if (be && be.length && be[1]) {
|
|
6281
6285
|
var Le = be[1].trim().replace(/;\s*$/, "");
|
|
6282
|
-
d[
|
|
6286
|
+
d[F] = l.sanitizeValue(Le);
|
|
6283
6287
|
}
|
|
6284
6288
|
}));
|
|
6285
6289
|
}
|
|
@@ -6301,25 +6305,25 @@ function Js() {
|
|
|
6301
6305
|
var l = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : null, d = n.type == "video" ? this.checkSize(c.videosWidth) : this.checkSize(c.width), h = this.checkSize(c.height);
|
|
6302
6306
|
return n.width = se(n, "width") && n.width !== "" ? this.checkSize(n.width) : d, n.height = se(n, "height") && n.height !== "" ? this.checkSize(n.height) : h, l && n.type == "image" && (n._hasCustomWidth = !!l.dataset.width, n._hasCustomHeight = !!l.dataset.height), n;
|
|
6303
6307
|
} }, { key: "checkSize", value: function(n) {
|
|
6304
|
-
return
|
|
6308
|
+
return _t(n) ? "".concat(n, "px") : n;
|
|
6305
6309
|
} }, { key: "sanitizeValue", value: function(n) {
|
|
6306
6310
|
return n !== "true" && n !== "false" ? n : n === "true";
|
|
6307
|
-
} }]),
|
|
6311
|
+
} }]), St = s((function n(c, l, d) {
|
|
6308
6312
|
t(this, n), this.element = c, this.instance = l, this.index = d;
|
|
6309
6313
|
}), [{ key: "setContent", value: function() {
|
|
6310
6314
|
var n = this, c = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null, l = arguments.length > 1 && arguments[1] !== void 0 && arguments[1];
|
|
6311
6315
|
if (E(c, "loaded")) return !1;
|
|
6312
6316
|
var d = this.instance.settings, h = this.slideConfig, m = ge();
|
|
6313
|
-
|
|
6314
|
-
var g = h.type, y = h.descPosition, A = c.querySelector(".gslide-media"), S = c.querySelector(".gslide-title"), I = c.querySelector(".gslide-desc"), $ = c.querySelector(".gdesc-inner"), B = l, q = "gSlideTitle_" + this.index,
|
|
6315
|
-
if (
|
|
6316
|
-
|
|
6317
|
-
}), h.title == "" && h.description == "" ? $ && $.parentNode.parentNode.removeChild($.parentNode) : (S && h.title !== "" ? (S.id = q, S.innerHTML = h.title) : S.parentNode.removeChild(S), I && h.description !== "" ? (I.id =
|
|
6318
|
-
if (g !== "external") return g === "inline" ? (Si.apply(this.instance, [c, h, this.index, B]), void (h.draggable && new ga({ dragEl: c.querySelector(".gslide-inline"), toleranceX: d.dragToleranceX, toleranceY: d.dragToleranceY, slide: c, instance: this.instance }))) : void (g !== "image" ?
|
|
6317
|
+
H(d.beforeSlideLoad) && d.beforeSlideLoad({ index: this.index, slide: c, player: !1 });
|
|
6318
|
+
var g = h.type, y = h.descPosition, A = c.querySelector(".gslide-media"), S = c.querySelector(".gslide-title"), I = c.querySelector(".gslide-desc"), $ = c.querySelector(".gdesc-inner"), B = l, q = "gSlideTitle_" + this.index, F = "gSlideDesc_" + this.index;
|
|
6319
|
+
if (H(d.afterSlideLoad) && (B = function() {
|
|
6320
|
+
H(l) && l(), d.afterSlideLoad({ index: n.index, slide: c, player: n.instance.getSlidePlayerInstance(n.index) });
|
|
6321
|
+
}), h.title == "" && h.description == "" ? $ && $.parentNode.parentNode.removeChild($.parentNode) : (S && h.title !== "" ? (S.id = q, S.innerHTML = h.title) : S.parentNode.removeChild(S), I && h.description !== "" ? (I.id = F, m && d.moreLength > 0 ? (h.smallDescription = this.slideShortDesc(h.description, d.moreLength, d.moreText), I.innerHTML = h.smallDescription, this.descriptionEvents(I, h)) : I.innerHTML = h.description) : I.parentNode.removeChild(I), _(A.parentNode, "desc-".concat(y)), _($.parentNode, "description-".concat(y))), _(A, "gslide-".concat(g)), _(c, "loaded"), g !== "video") {
|
|
6322
|
+
if (g !== "external") return g === "inline" ? (Si.apply(this.instance, [c, h, this.index, B]), void (h.draggable && new ga({ dragEl: c.querySelector(".gslide-inline"), toleranceX: d.dragToleranceX, toleranceY: d.dragToleranceY, slide: c, instance: this.instance }))) : void (g !== "image" ? H(B) && B() : ki(c, h, this.index, (function() {
|
|
6319
6323
|
var ee = c.querySelector("img");
|
|
6320
6324
|
h.draggable && new ga({ dragEl: ee, toleranceX: d.dragToleranceX, toleranceY: d.dragToleranceY, slide: c, instance: n.instance }), h.zoomable && ee.naturalWidth > ee.offsetWidth && (_(ee, "zoomable"), new xi(ee, c, (function() {
|
|
6321
6325
|
n.instance.resize();
|
|
6322
|
-
}))),
|
|
6326
|
+
}))), H(B) && B();
|
|
6323
6327
|
})));
|
|
6324
6328
|
Ci.apply(this, [c, h, this.index, B]);
|
|
6325
6329
|
} else _i.apply(this.instance, [c, h, this.index, B]);
|
|
@@ -6351,12 +6355,12 @@ function Js() {
|
|
|
6351
6355
|
var n = new Ai(this.instance.settings.slideExtraAttributes);
|
|
6352
6356
|
return this.slideConfig = n.parseConfig(this.element, this.instance.settings), this.slideConfig;
|
|
6353
6357
|
} }]);
|
|
6354
|
-
function
|
|
6358
|
+
function Ct(n) {
|
|
6355
6359
|
return Math.sqrt(n.x * n.x + n.y * n.y);
|
|
6356
6360
|
}
|
|
6357
6361
|
function Mi(n, c) {
|
|
6358
6362
|
var l = (function(d, h) {
|
|
6359
|
-
var m =
|
|
6363
|
+
var m = Ct(d) * Ct(h);
|
|
6360
6364
|
if (m === 0) return 0;
|
|
6361
6365
|
var g = (function(y, A) {
|
|
6362
6366
|
return y.x * A.x + y.y * A.y;
|
|
@@ -6397,7 +6401,7 @@ function Js() {
|
|
|
6397
6401
|
if (n.touches.length > 1) {
|
|
6398
6402
|
this._cancelLongTap(), this._cancelSingleTap();
|
|
6399
6403
|
var l = { x: n.touches[1].pageX - this.x1, y: n.touches[1].pageY - this.y1 };
|
|
6400
|
-
c.x = l.x, c.y = l.y, this.pinchStartLen =
|
|
6404
|
+
c.x = l.x, c.y = l.y, this.pinchStartLen = Ct(c), this.multipointStart.dispatch(n, this.element);
|
|
6401
6405
|
}
|
|
6402
6406
|
this._preventTap = !1, this.longTapTimeout = setTimeout((function() {
|
|
6403
6407
|
this.longTap.dispatch(n, this.element), this._preventTap = !0;
|
|
@@ -6408,7 +6412,7 @@ function Js() {
|
|
|
6408
6412
|
var c = this.preV, l = n.touches.length, d = n.touches[0].pageX, h = n.touches[0].pageY;
|
|
6409
6413
|
if (this.isDoubleTap = !1, l > 1) {
|
|
6410
6414
|
var m = n.touches[1].pageX, g = n.touches[1].pageY, y = { x: n.touches[1].pageX - d, y: n.touches[1].pageY - h };
|
|
6411
|
-
c.x !== null && (this.pinchStartLen > 0 && (n.zoom =
|
|
6415
|
+
c.x !== null && (this.pinchStartLen > 0 && (n.zoom = Ct(y) / this.pinchStartLen, this.pinch.dispatch(n, this.element)), n.angle = Mi(y, c), this.rotate.dispatch(n, this.element)), c.x = y.x, c.y = y.y, this.x2 !== null && this.sx2 !== null ? (n.deltaX = (d - this.x2 + m - this.sx2) / 2, n.deltaY = (h - this.y2 + g - this.sy2) / 2) : (n.deltaX = 0, n.deltaY = 0), this.twoFingerPressMove.dispatch(n, this.element), this.sx2 = m, this.sy2 = g;
|
|
6412
6416
|
} else {
|
|
6413
6417
|
if (this.x2 !== null) {
|
|
6414
6418
|
n.deltaX = d - this.x2, n.deltaY = h - this.y2;
|
|
@@ -6448,7 +6452,7 @@ function Js() {
|
|
|
6448
6452
|
} }, { key: "destroy", value: function() {
|
|
6449
6453
|
return this.singleTapTimeout && clearTimeout(this.singleTapTimeout), this.tapTimeout && clearTimeout(this.tapTimeout), this.longTapTimeout && clearTimeout(this.longTapTimeout), this.swipeTimeout && clearTimeout(this.swipeTimeout), this.element.removeEventListener("touchstart", this.start), this.element.removeEventListener("touchmove", this.move), this.element.removeEventListener("touchend", this.end), this.element.removeEventListener("touchcancel", this.cancel), this.rotate.del(), this.touchStart.del(), this.multipointStart.del(), this.multipointEnd.del(), this.pinch.del(), this.swipe.del(), this.tap.del(), this.doubleTap.del(), this.longTap.del(), this.singleTap.del(), this.pressMove.del(), this.twoFingerPressMove.del(), this.touchMove.del(), this.touchEnd.del(), this.touchCancel.del(), this.preV = this.pinchStartLen = this.zoom = this.isDoubleTap = this.delta = this.last = this.now = this.tapTimeout = this.singleTapTimeout = this.longTapTimeout = this.swipeTimeout = this.x1 = this.x2 = this.y1 = this.y2 = this.preTapPosition = this.rotate = this.touchStart = this.multipointStart = this.multipointEnd = this.pinch = this.swipe = this.tap = this.doubleTap = this.longTap = this.singleTap = this.pressMove = this.touchMove = this.touchEnd = this.touchCancel = this.twoFingerPressMove = null, window.removeEventListener("scroll", this._cancelAllHandler), null;
|
|
6450
6454
|
} }]);
|
|
6451
|
-
function
|
|
6455
|
+
function Wt(n) {
|
|
6452
6456
|
var c = (function() {
|
|
6453
6457
|
var g, y = document.createElement("fakeelement"), A = { transition: "transitionend", OTransition: "oTransitionEnd", MozTransition: "transitionend", WebkitTransition: "webkitTransitionEnd" };
|
|
6454
6458
|
for (g in A) if (y.style[g] !== void 0) return A[g];
|
|
@@ -6459,57 +6463,57 @@ function Js() {
|
|
|
6459
6463
|
}
|
|
6460
6464
|
function Ei(n) {
|
|
6461
6465
|
if (n.events.hasOwnProperty("touch")) return !1;
|
|
6462
|
-
var c, l, d, h = te(), m = h.width, g = h.height, y = !1, A = null, S = null, I = null, $ = !1, B = 1, q = 1,
|
|
6466
|
+
var c, l, d, h = te(), m = h.width, g = h.height, y = !1, A = null, S = null, I = null, $ = !1, B = 1, q = 1, F = !1, ee = !1, me = null, be = null, Le = null, oe = null, Re = 0, ze = 0, ht = !1, rt = !1, _e = {}, Se = {}, xa = 0, ka = 0, Li = document.getElementById("glightbox-slider"), At = document.querySelector(".goverlay"), Ri = new Ii(Li, { touchStart: function(Y) {
|
|
6463
6467
|
if (y = !0, (E(Y.targetTouches[0].target, "ginner-container") || M(Y.targetTouches[0].target, ".gslide-desc") || Y.targetTouches[0].target.nodeName.toLowerCase() == "a") && (y = !1), M(Y.targetTouches[0].target, ".gslide-inline") && !E(Y.targetTouches[0].target.parentNode, "gslide-inline") && (y = !1), y) {
|
|
6464
|
-
if (Se = Y.targetTouches[0], _e.pageX = Y.targetTouches[0].pageX, _e.pageY = Y.targetTouches[0].pageY, xa = Y.targetTouches[0].clientX, ka = Y.targetTouches[0].clientY, A = n.activeSlide, S = A.querySelector(".gslide-media"), d = A.querySelector(".gslide-inline"), I = null, E(S, "gslide-image") && (I = S.querySelector("img")), (window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth) > 769 && (S = A.querySelector(".ginner-container")), P(
|
|
6468
|
+
if (Se = Y.targetTouches[0], _e.pageX = Y.targetTouches[0].pageX, _e.pageY = Y.targetTouches[0].pageY, xa = Y.targetTouches[0].clientX, ka = Y.targetTouches[0].clientY, A = n.activeSlide, S = A.querySelector(".gslide-media"), d = A.querySelector(".gslide-inline"), I = null, E(S, "gslide-image") && (I = S.querySelector("img")), (window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth) > 769 && (S = A.querySelector(".ginner-container")), P(At, "greset"), Y.pageX > 20 && Y.pageX < window.innerWidth - 20) return;
|
|
6465
6469
|
Y.preventDefault();
|
|
6466
6470
|
}
|
|
6467
6471
|
}, touchMove: function(Y) {
|
|
6468
|
-
if (y && (Se = Y.targetTouches[0], !
|
|
6472
|
+
if (y && (Se = Y.targetTouches[0], !F && !ee)) {
|
|
6469
6473
|
if (d && d.offsetHeight > g) {
|
|
6470
6474
|
var de = _e.pageX - Se.pageX;
|
|
6471
6475
|
if (Math.abs(de) <= 13) return !1;
|
|
6472
6476
|
}
|
|
6473
6477
|
$ = !0;
|
|
6474
|
-
var Ue,
|
|
6475
|
-
if (Math.abs(Oi) > Math.abs(Bi) ? (ht = !1, rt = !0) : (rt = !1, ht = !0), c = Se.pageX - _e.pageX, Re = 100 * c / m, l = Se.pageY - _e.pageY, ze = 100 * l / g, ht && I && (Ue = 1 - Math.abs(l) / g,
|
|
6478
|
+
var Ue, Mt = Y.targetTouches[0].clientX, zi = Y.targetTouches[0].clientY, Oi = xa - Mt, Bi = ka - zi;
|
|
6479
|
+
if (Math.abs(Oi) > Math.abs(Bi) ? (ht = !1, rt = !0) : (rt = !1, ht = !0), c = Se.pageX - _e.pageX, Re = 100 * c / m, l = Se.pageY - _e.pageY, ze = 100 * l / g, ht && I && (Ue = 1 - Math.abs(l) / g, At.style.opacity = Ue, n.settings.touchFollowAxis && (Re = 0)), rt && (Ue = 1 - Math.abs(c) / m, S.style.opacity = Ue, n.settings.touchFollowAxis && (ze = 0)), !I) return C(S, "translate3d(".concat(Re, "%, 0, 0)"));
|
|
6476
6480
|
C(S, "translate3d(".concat(Re, "%, ").concat(ze, "%, 0)"));
|
|
6477
6481
|
}
|
|
6478
6482
|
}, touchEnd: function() {
|
|
6479
6483
|
if (y) {
|
|
6480
|
-
if ($ = !1, ee ||
|
|
6484
|
+
if ($ = !1, ee || F) return Le = me, void (oe = be);
|
|
6481
6485
|
var Y = Math.abs(parseInt(ze)), de = Math.abs(parseInt(Re));
|
|
6482
|
-
if (!(Y > 29 && I)) return Y < 29 && de < 25 ? (_(
|
|
6486
|
+
if (!(Y > 29 && I)) return Y < 29 && de < 25 ? (_(At, "greset"), At.style.opacity = 1, Wt(S)) : void 0;
|
|
6483
6487
|
n.close();
|
|
6484
6488
|
}
|
|
6485
6489
|
}, multipointEnd: function() {
|
|
6486
6490
|
setTimeout((function() {
|
|
6487
|
-
|
|
6491
|
+
F = !1;
|
|
6488
6492
|
}), 50);
|
|
6489
6493
|
}, multipointStart: function() {
|
|
6490
|
-
|
|
6494
|
+
F = !0, B = q || 1;
|
|
6491
6495
|
}, pinch: function(Y) {
|
|
6492
6496
|
if (!I || $) return !1;
|
|
6493
|
-
|
|
6497
|
+
F = !0, I.scaleX = I.scaleY = B * Y.zoom;
|
|
6494
6498
|
var de = B * Y.zoom;
|
|
6495
6499
|
if (ee = !0, de <= 1) return ee = !1, de = 1, oe = null, Le = null, me = null, be = null, void I.setAttribute("style", "");
|
|
6496
6500
|
de > 4.5 && (de = 4.5), I.style.transform = "scale3d(".concat(de, ", ").concat(de, ", 1)"), q = de;
|
|
6497
6501
|
}, pressMove: function(Y) {
|
|
6498
|
-
if (ee && !
|
|
6502
|
+
if (ee && !F) {
|
|
6499
6503
|
var de = Se.pageX - _e.pageX, Ue = Se.pageY - _e.pageY;
|
|
6500
6504
|
Le && (de += Le), oe && (Ue += oe), me = de, be = Ue;
|
|
6501
|
-
var
|
|
6502
|
-
q && (
|
|
6505
|
+
var Mt = "translate3d(".concat(de, "px, ").concat(Ue, "px, 0)");
|
|
6506
|
+
q && (Mt += " scale3d(".concat(q, ", ").concat(q, ", 1)")), C(I, Mt);
|
|
6503
6507
|
}
|
|
6504
6508
|
}, swipe: function(Y) {
|
|
6505
|
-
if (!ee) if (
|
|
6509
|
+
if (!ee) if (F) F = !1;
|
|
6506
6510
|
else {
|
|
6507
6511
|
if (Y.direction == "Left") {
|
|
6508
|
-
if (n.index == n.elements.length - 1) return
|
|
6512
|
+
if (n.index == n.elements.length - 1) return Wt(S);
|
|
6509
6513
|
n.nextSlide();
|
|
6510
6514
|
}
|
|
6511
6515
|
if (Y.direction == "Right") {
|
|
6512
|
-
if (n.index == 0) return
|
|
6516
|
+
if (n.index == 0) return Wt(S);
|
|
6513
6517
|
n.prevSlide();
|
|
6514
6518
|
}
|
|
6515
6519
|
}
|
|
@@ -6550,18 +6554,18 @@ function Js() {
|
|
|
6550
6554
|
var n = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : null, c = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
|
|
6551
6555
|
if (this.elements.length === 0) return !1;
|
|
6552
6556
|
this.activeSlide = null, this.prevActiveSlideIndex = null, this.prevActiveSlide = null;
|
|
6553
|
-
var l =
|
|
6557
|
+
var l = _t(c) ? c : this.settings.startAt;
|
|
6554
6558
|
if (U(n)) {
|
|
6555
6559
|
var d = n.getAttribute("data-gallery");
|
|
6556
6560
|
d && (this.fullElementsList = this.elements, this.elements = this.getGalleryElements(this.elements, d)), ue(l) && (l = this.getElementIndex(n)) < 0 && (l = 0);
|
|
6557
6561
|
}
|
|
6558
|
-
|
|
6562
|
+
_t(l) || (l = 0), this.build(), L(this.overlay, this.settings.openEffect === "none" ? "none" : this.settings.cssEfects.fade.in);
|
|
6559
6563
|
var h = document.body, m = window.innerWidth - document.documentElement.clientWidth;
|
|
6560
6564
|
if (m > 0) {
|
|
6561
6565
|
var g = document.createElement("style");
|
|
6562
6566
|
g.type = "text/css", g.className = "gcss-styles", g.innerText = ".gscrollbar-fixer {margin-right: ".concat(m, "px}"), document.head.appendChild(g), _(h, "gscrollbar-fixer");
|
|
6563
6567
|
}
|
|
6564
|
-
_(h, "glightbox-open"), _(wa, "glightbox-open"), ya && (_(document.body, "glightbox-mobile"), this.settings.slideEffect = "slide"), this.showSlide(l, !0), this.elements.length === 1 ? (_(this.prevButton, "glightbox-button-hidden"), _(this.nextButton, "glightbox-button-hidden")) : (P(this.prevButton, "glightbox-button-hidden"), P(this.nextButton, "glightbox-button-hidden")), this.lightboxOpen = !0, this.trigger("open"),
|
|
6568
|
+
_(h, "glightbox-open"), _(wa, "glightbox-open"), ya && (_(document.body, "glightbox-mobile"), this.settings.slideEffect = "slide"), this.showSlide(l, !0), this.elements.length === 1 ? (_(this.prevButton, "glightbox-button-hidden"), _(this.nextButton, "glightbox-button-hidden")) : (P(this.prevButton, "glightbox-button-hidden"), P(this.nextButton, "glightbox-button-hidden")), this.lightboxOpen = !0, this.trigger("open"), H(this.settings.onOpen) && this.settings.onOpen(), va && this.settings.touchNavigation && Ei(this), this.settings.keyboardNavigation && wi(this);
|
|
6565
6569
|
} }, { key: "openAt", value: function() {
|
|
6566
6570
|
var n = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0;
|
|
6567
6571
|
this.open(null, n);
|
|
@@ -6604,7 +6608,7 @@ function Js() {
|
|
|
6604
6608
|
} }, { key: "insertSlide", value: function() {
|
|
6605
6609
|
var n = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {}, c = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : -1;
|
|
6606
6610
|
c < 0 && (c = this.elements.length);
|
|
6607
|
-
var l = new
|
|
6611
|
+
var l = new St(n, this, c), d = l.getConfig(), h = p({}, d), m = l.create(), g = this.elements.length - 1;
|
|
6608
6612
|
h.index = c, h.node = !1, h.instance = l, h.slideConfig = d, this.elements.splice(c, 0, h);
|
|
6609
6613
|
var y = null, A = null;
|
|
6610
6614
|
if (this.slidesContainer) {
|
|
@@ -6615,21 +6619,21 @@ function Js() {
|
|
|
6615
6619
|
}
|
|
6616
6620
|
(this.settings.preload && this.index == 0 && c == 0 || this.index - 1 == c || this.index + 1 == c) && this.preloadSlide(c), this.index === 0 && c === 0 && (this.index = 1), this.updateNavigationClasses(), y = this.slidesContainer.querySelectorAll(".gslide")[c], A = this.getSlidePlayerInstance(c), h.slideNode = y;
|
|
6617
6621
|
}
|
|
6618
|
-
this.trigger("slide_inserted", { index: c, slide: y, slideNode: y, slideConfig: d, slideIndex: c, trigger: null, player: A }),
|
|
6622
|
+
this.trigger("slide_inserted", { index: c, slide: y, slideNode: y, slideConfig: d, slideIndex: c, trigger: null, player: A }), H(this.settings.slideInserted) && this.settings.slideInserted({ index: c, slide: y, player: A });
|
|
6619
6623
|
} }, { key: "removeSlide", value: function() {
|
|
6620
6624
|
var n = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : -1;
|
|
6621
6625
|
if (n < 0 || n > this.elements.length - 1) return !1;
|
|
6622
6626
|
var c = this.slidesContainer && this.slidesContainer.querySelectorAll(".gslide")[n];
|
|
6623
|
-
c && (this.getActiveSlideIndex() == n && (n == this.elements.length - 1 ? this.prevSlide() : this.nextSlide()), c.parentNode.removeChild(c)), this.elements.splice(n, 1), this.trigger("slide_removed", n),
|
|
6627
|
+
c && (this.getActiveSlideIndex() == n && (n == this.elements.length - 1 ? this.prevSlide() : this.nextSlide()), c.parentNode.removeChild(c)), this.elements.splice(n, 1), this.trigger("slide_removed", n), H(this.settings.slideRemoved) && this.settings.slideRemoved(n);
|
|
6624
6628
|
} }, { key: "slideAnimateIn", value: function(n, c) {
|
|
6625
6629
|
var l = this, d = n.querySelector(".gslide-media"), h = n.querySelector(".gslide-description"), m = { index: this.prevActiveSlideIndex, slide: this.prevActiveSlide, slideNode: this.prevActiveSlide, slideIndex: this.prevActiveSlide, slideConfig: ue(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].slideConfig, trigger: ue(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].node, player: this.getSlidePlayerInstance(this.prevActiveSlideIndex) }, g = { index: this.index, slide: this.activeSlide, slideNode: this.activeSlide, slideConfig: this.elements[this.index].slideConfig, slideIndex: this.index, trigger: this.elements[this.index].node, player: this.getSlidePlayerInstance(this.index) };
|
|
6626
6630
|
if (d.offsetWidth > 0 && h && (N(h), h.style.display = ""), P(n, this.effectsClasses), c) L(n, this.settings.cssEfects[this.settings.openEffect].in, (function() {
|
|
6627
|
-
l.settings.autoplayVideos && l.slidePlayerPlay(n), l.trigger("slide_changed", { prev: m, current: g }),
|
|
6631
|
+
l.settings.autoplayVideos && l.slidePlayerPlay(n), l.trigger("slide_changed", { prev: m, current: g }), H(l.settings.afterSlideChange) && l.settings.afterSlideChange.apply(l, [m, g]);
|
|
6628
6632
|
}));
|
|
6629
6633
|
else {
|
|
6630
6634
|
var y = this.settings.slideEffect, A = y !== "none" ? this.settings.cssEfects[y].in : y;
|
|
6631
6635
|
this.prevActiveSlideIndex > this.index && this.settings.slideEffect == "slide" && (A = this.settings.cssEfects.slideBack.in), L(n, A, (function() {
|
|
6632
|
-
l.settings.autoplayVideos && l.slidePlayerPlay(n), l.trigger("slide_changed", { prev: m, current: g }),
|
|
6636
|
+
l.settings.autoplayVideos && l.slidePlayerPlay(n), l.trigger("slide_changed", { prev: m, current: g }), H(l.settings.afterSlideChange) && l.settings.afterSlideChange.apply(l, [m, g]);
|
|
6633
6637
|
}));
|
|
6634
6638
|
}
|
|
6635
6639
|
setTimeout((function() {
|
|
@@ -6640,7 +6644,7 @@ function Js() {
|
|
|
6640
6644
|
var n = this.prevActiveSlide;
|
|
6641
6645
|
P(n, this.effectsClasses), _(n, "prev");
|
|
6642
6646
|
var c = this.settings.slideEffect, l = c !== "none" ? this.settings.cssEfects[c].out : c;
|
|
6643
|
-
this.slidePlayerPause(n), this.trigger("slide_before_change", { prev: { index: this.prevActiveSlideIndex, slide: this.prevActiveSlide, slideNode: this.prevActiveSlide, slideIndex: this.prevActiveSlideIndex, slideConfig: ue(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].slideConfig, trigger: ue(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].node, player: this.getSlidePlayerInstance(this.prevActiveSlideIndex) }, current: { index: this.index, slide: this.activeSlide, slideNode: this.activeSlide, slideIndex: this.index, slideConfig: this.elements[this.index].slideConfig, trigger: this.elements[this.index].node, player: this.getSlidePlayerInstance(this.index) } }),
|
|
6647
|
+
this.slidePlayerPause(n), this.trigger("slide_before_change", { prev: { index: this.prevActiveSlideIndex, slide: this.prevActiveSlide, slideNode: this.prevActiveSlide, slideIndex: this.prevActiveSlideIndex, slideConfig: ue(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].slideConfig, trigger: ue(this.prevActiveSlideIndex) ? null : this.elements[this.prevActiveSlideIndex].node, player: this.getSlidePlayerInstance(this.prevActiveSlideIndex) }, current: { index: this.index, slide: this.activeSlide, slideNode: this.activeSlide, slideIndex: this.index, slideConfig: this.elements[this.index].slideConfig, trigger: this.elements[this.index].node, player: this.getSlidePlayerInstance(this.index) } }), H(this.settings.beforeSlideChange) && this.settings.beforeSlideChange.apply(this, [{ index: this.prevActiveSlideIndex, slide: this.prevActiveSlide, player: this.getSlidePlayerInstance(this.prevActiveSlideIndex) }, { index: this.index, slide: this.activeSlide, player: this.getSlidePlayerInstance(this.index) }]), this.prevActiveSlideIndex > this.index && this.settings.slideEffect == "slide" && (l = this.settings.cssEfects.slideBack.out), L(n, l, (function() {
|
|
6644
6648
|
var d = n.querySelector(".ginner-container"), h = n.querySelector(".gslide-media"), m = n.querySelector(".gslide-description");
|
|
6645
6649
|
d.style.transform = "", h.style.transform = "", P(h, "greset"), h.style.opacity = "", m && (m.style.opacity = ""), P(n, "prev");
|
|
6646
6650
|
}));
|
|
@@ -6687,7 +6691,7 @@ function Js() {
|
|
|
6687
6691
|
this.settings.elements = !1;
|
|
6688
6692
|
var l = [];
|
|
6689
6693
|
n && n.length && v(n, (function(d, h) {
|
|
6690
|
-
var m = new
|
|
6694
|
+
var m = new St(d, c, h), g = m.getConfig(), y = p({}, g);
|
|
6691
6695
|
y.slideConfig = g, y.instance = m, y.index = h, l.push(y);
|
|
6692
6696
|
})), this.elements = l, this.lightboxOpen && (this.slidesContainer.innerHTML = "", this.elements.length && (v(this.elements, (function() {
|
|
6693
6697
|
var d = X(c.settings.slideHTML);
|
|
@@ -6701,12 +6705,12 @@ function Js() {
|
|
|
6701
6705
|
} }, { key: "getElements", value: function() {
|
|
6702
6706
|
var n = this, c = [];
|
|
6703
6707
|
this.elements = this.elements ? this.elements : [], !ue(this.settings.elements) && $e(this.settings.elements) && this.settings.elements.length && v(this.settings.elements, (function(d, h) {
|
|
6704
|
-
var m = new
|
|
6708
|
+
var m = new St(d, n, h), g = m.getConfig(), y = p({}, g);
|
|
6705
6709
|
y.node = !1, y.index = h, y.instance = m, y.slideConfig = g, c.push(y);
|
|
6706
6710
|
}));
|
|
6707
6711
|
var l = !1;
|
|
6708
6712
|
return this.getSelector() && (l = document.querySelectorAll(this.getSelector())), l && v(l, (function(d, h) {
|
|
6709
|
-
var m = new
|
|
6713
|
+
var m = new St(d, n, h), g = m.getConfig(), y = p({}, g);
|
|
6710
6714
|
y.node = d, y.index = h, y.instance = m, y.slideConfig = g, y.gallery = d.getAttribute("data-gallery"), c.push(y);
|
|
6711
6715
|
})), c;
|
|
6712
6716
|
} }, { key: "getGalleryElements", value: function(n, c) {
|
|
@@ -6765,12 +6769,12 @@ function Js() {
|
|
|
6765
6769
|
}
|
|
6766
6770
|
}
|
|
6767
6771
|
if (l) {
|
|
6768
|
-
var
|
|
6769
|
-
if (!
|
|
6772
|
+
var F = se(this.settings.plyr.config, "ratio") ? this.settings.plyr.config.ratio : "";
|
|
6773
|
+
if (!F) {
|
|
6770
6774
|
var ee = l.clientWidth, me = l.clientHeight, be = ee / me;
|
|
6771
|
-
|
|
6775
|
+
F = "".concat(ee / be, ":").concat(me / be);
|
|
6772
6776
|
}
|
|
6773
|
-
var Le =
|
|
6777
|
+
var Le = F.split(":"), oe = this.settings.videosWidth, Re = this.settings.videosWidth, ze = (Re = _t(oe) || oe.indexOf("px") !== -1 ? parseInt(oe) : oe.indexOf("vw") !== -1 ? m * parseInt(oe) / 100 : oe.indexOf("vh") !== -1 ? g * parseInt(oe) / 100 : oe.indexOf("%") !== -1 ? m * parseInt(oe) / 100 : parseInt(l.clientWidth)) / (parseInt(Le[0]) / parseInt(Le[1]));
|
|
6774
6778
|
if (ze = Math.floor(ze), y && (g -= h.offsetHeight), Re > m || ze > g || g < ze && m > Re) {
|
|
6775
6779
|
var ht = l.offsetWidth, rt = l.offsetHeight, _e = g / rt, Se = { width: ht * _e, height: rt * _e };
|
|
6776
6780
|
l.parentNode.setAttribute("style", "max-width: ".concat(Se.width, "px")), y && h.setAttribute("style", "max-width: ".concat(Se.width, "px;"));
|
|
@@ -6804,7 +6808,7 @@ function Js() {
|
|
|
6804
6808
|
n.events = null;
|
|
6805
6809
|
}
|
|
6806
6810
|
var d = document.body;
|
|
6807
|
-
P(wa, "glightbox-open"), P(d, "glightbox-open touching gdesc-open glightbox-touch glightbox-mobile gscrollbar-fixer"), n.modal.parentNode.removeChild(n.modal), n.trigger("close"),
|
|
6811
|
+
P(wa, "glightbox-open"), P(d, "glightbox-open touching gdesc-open glightbox-touch glightbox-mobile gscrollbar-fixer"), n.modal.parentNode.removeChild(n.modal), n.trigger("close"), H(n.settings.onClose) && n.settings.onClose();
|
|
6808
6812
|
var h = document.querySelector(".gcss-styles");
|
|
6809
6813
|
h && h.parentNode.removeChild(h), n.lightboxOpen = !1, n.closing = null;
|
|
6810
6814
|
}));
|
|
@@ -6812,7 +6816,7 @@ function Js() {
|
|
|
6812
6816
|
this.close(), this.clearAllEvents(), this.baseEvents && this.baseEvents.destroy();
|
|
6813
6817
|
} }, { key: "on", value: function(n, c) {
|
|
6814
6818
|
var l = arguments.length > 2 && arguments[2] !== void 0 && arguments[2];
|
|
6815
|
-
if (!n || !
|
|
6819
|
+
if (!n || !H(c)) throw new TypeError("Event name and callback must be defined");
|
|
6816
6820
|
this.apiEvents.push({ evt: n, once: l, callback: c });
|
|
6817
6821
|
} }, { key: "once", value: function(n, c) {
|
|
6818
6822
|
this.on(n, c, !0);
|
|
@@ -6834,7 +6838,7 @@ function Js() {
|
|
|
6834
6838
|
return c.init(), c;
|
|
6835
6839
|
};
|
|
6836
6840
|
}));
|
|
6837
|
-
})(
|
|
6841
|
+
})(zt)), zt.exports;
|
|
6838
6842
|
}
|
|
6839
6843
|
var Zs = Js();
|
|
6840
6844
|
const Qs = /* @__PURE__ */ Wa(Zs);
|
|
@@ -6843,12 +6847,12 @@ var en = Object.getOwnPropertyDescriptor, tn = (a, e, t, i) => {
|
|
|
6843
6847
|
(o = a[r]) && (s = o(s) || s);
|
|
6844
6848
|
return s;
|
|
6845
6849
|
};
|
|
6846
|
-
let
|
|
6850
|
+
let Qt = class extends Fe {
|
|
6847
6851
|
render() {
|
|
6848
6852
|
return b` <div class="cb-thinking"><span></span><span></span><span></span></div>`;
|
|
6849
6853
|
}
|
|
6850
6854
|
};
|
|
6851
|
-
|
|
6855
|
+
Qt.styles = K`
|
|
6852
6856
|
.cb-thinking {
|
|
6853
6857
|
text-align: center;
|
|
6854
6858
|
}
|
|
@@ -6886,15 +6890,15 @@ Zt.styles = K`
|
|
|
6886
6890
|
}
|
|
6887
6891
|
}
|
|
6888
6892
|
`;
|
|
6889
|
-
|
|
6893
|
+
Qt = tn([
|
|
6890
6894
|
J("cb-thinking")
|
|
6891
|
-
],
|
|
6895
|
+
], Qt);
|
|
6892
6896
|
var an = Object.defineProperty, sn = Object.getOwnPropertyDescriptor, ti = (a, e, t, i) => {
|
|
6893
6897
|
for (var s = i > 1 ? void 0 : i ? sn(e, t) : e, r = a.length - 1, o; r >= 0; r--)
|
|
6894
6898
|
(o = a[r]) && (s = (i ? o(e, t, s) : o(s)) || s);
|
|
6895
6899
|
return i && s && an(e, t, s), s;
|
|
6896
6900
|
};
|
|
6897
|
-
let
|
|
6901
|
+
let Dt = class extends re {
|
|
6898
6902
|
constructor() {
|
|
6899
6903
|
super(...arguments), this.files = [];
|
|
6900
6904
|
}
|
|
@@ -6910,7 +6914,7 @@ let qt = class extends re {
|
|
|
6910
6914
|
</div>`;
|
|
6911
6915
|
}
|
|
6912
6916
|
};
|
|
6913
|
-
|
|
6917
|
+
Dt.styles = K`
|
|
6914
6918
|
.cb-uploading {
|
|
6915
6919
|
text-align: left;
|
|
6916
6920
|
}
|
|
@@ -6930,10 +6934,10 @@ qt.styles = K`
|
|
|
6930
6934
|
`;
|
|
6931
6935
|
ti([
|
|
6932
6936
|
x({ type: Array })
|
|
6933
|
-
],
|
|
6934
|
-
|
|
6937
|
+
], Dt.prototype, "files", 2);
|
|
6938
|
+
Dt = ti([
|
|
6935
6939
|
J("cb-uploading")
|
|
6936
|
-
],
|
|
6940
|
+
], Dt);
|
|
6937
6941
|
const nn = K`
|
|
6938
6942
|
${ke}
|
|
6939
6943
|
:host {
|
|
@@ -6960,7 +6964,7 @@ var rn = Object.defineProperty, on = Object.getOwnPropertyDescriptor, ca = (a, e
|
|
|
6960
6964
|
(o = a[r]) && (s = (i ? o(e, t, s) : o(s)) || s);
|
|
6961
6965
|
return i && s && rn(e, t, s), s;
|
|
6962
6966
|
};
|
|
6963
|
-
let
|
|
6967
|
+
let yt = class extends Fe {
|
|
6964
6968
|
constructor() {
|
|
6965
6969
|
super(...arguments), this.url = "", this.inverse = !1;
|
|
6966
6970
|
}
|
|
@@ -6980,7 +6984,7 @@ let mt = class extends Fe {
|
|
|
6980
6984
|
`;
|
|
6981
6985
|
}
|
|
6982
6986
|
};
|
|
6983
|
-
|
|
6987
|
+
yt.styles = K`
|
|
6984
6988
|
:host {
|
|
6985
6989
|
--primary-color: var(--sl-color-primary-600);
|
|
6986
6990
|
}
|
|
@@ -7007,13 +7011,13 @@ mt.styles = K`
|
|
|
7007
7011
|
`;
|
|
7008
7012
|
ca([
|
|
7009
7013
|
x({ type: String })
|
|
7010
|
-
],
|
|
7014
|
+
], yt.prototype, "url", 2);
|
|
7011
7015
|
ca([
|
|
7012
7016
|
x({ type: Boolean })
|
|
7013
|
-
],
|
|
7014
|
-
|
|
7017
|
+
], yt.prototype, "inverse", 2);
|
|
7018
|
+
yt = ca([
|
|
7015
7019
|
J("cb-external-link")
|
|
7016
|
-
],
|
|
7020
|
+
], yt);
|
|
7017
7021
|
const cn = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2h-2v-1h2a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.928 15.849v-3.337h1.136v-.662H0v.662h1.134v3.337zm4.689-3.999h-.894L4.9 13.289h-.035l-.832-1.439h-.932l1.228 1.983l-1.24 2.016h.862l.853-1.415h.035l.85 1.415h.907l-1.253-1.992zm1.93.662v3.337h-.794v-3.337H6.619v-.662h3.064v.662H8.546Z"/></svg>', ln = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.6 11.85H0v3.999h.791v-1.342h.803q.43 0 .732-.173q.305-.175.463-.474a1.4 1.4 0 0 0 .161-.677q0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.38a.57.57 0 0 1-.238.241a.8.8 0 0 1-.375.082H.788V12.48h.66q.327 0 .512.181q.185.183.185.522m1.217-1.333v3.999h1.46q.602 0 .998-.237a1.45 1.45 0 0 0 .595-.689q.196-.45.196-1.084q0-.63-.196-1.075a1.43 1.43 0 0 0-.589-.68q-.396-.234-1.005-.234zm.791.645h.563q.371 0 .609.152a.9.9 0 0 1 .354.454q.118.302.118.753a2.3 2.3 0 0 1-.068.592a1.1 1.1 0 0 1-.196.422a.8.8 0 0 1-.334.252a1.3 1.3 0 0 1-.483.082h-.563zm3.743 1.763v1.591h-.79V11.85h2.548v.653H7.896v1.117h1.606v.638z"/></svg>', dn = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2H9v-1h3a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM.706 13.189v2.66H0V11.85h.806l1.14 2.596h.026l1.14-2.596h.8v3.999h-.716v-2.66h-.038l-.946 2.159h-.516l-.952-2.16H.706Zm3.919 2.66V11.85h1.459q.609 0 1.005.234t.589.68q.195.445.196 1.075q0 .634-.196 1.084q-.197.451-.595.689q-.396.237-1 .237H4.626Zm1.353-3.354h-.562v2.707h.562q.279 0 .484-.082a.8.8 0 0 0 .334-.252a1.1 1.1 0 0 0 .196-.422q.067-.252.067-.592a2.1 2.1 0 0 0-.117-.753a.9.9 0 0 0-.354-.454q-.238-.152-.61-.152"/></svg>', fn = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM3.517 14.841a1.13 1.13 0 0 0 .401.823q.195.162.478.252q.284.091.665.091q.507 0 .859-.158q.354-.158.539-.44q.187-.284.187-.656q0-.336-.134-.56a1 1 0 0 0-.375-.357a2 2 0 0 0-.566-.21l-.621-.144a1 1 0 0 1-.404-.176a.37.37 0 0 1-.144-.299q0-.234.185-.384q.188-.152.512-.152q.214 0 .37.068a.6.6 0 0 1 .246.181a.56.56 0 0 1 .12.258h.75a1.1 1.1 0 0 0-.2-.566a1.2 1.2 0 0 0-.5-.41a1.8 1.8 0 0 0-.78-.152q-.439 0-.776.15q-.337.149-.527.421q-.19.273-.19.639q0 .302.122.524q.124.223.352.367q.228.143.539.213l.618.144q.31.073.463.193a.39.39 0 0 1 .152.326a.5.5 0 0 1-.085.29a.56.56 0 0 1-.255.193q-.167.07-.413.07q-.175 0-.32-.04a.8.8 0 0 1-.248-.115a.58.58 0 0 1-.255-.384zM.806 13.693q0-.373.102-.633a.87.87 0 0 1 .302-.399a.8.8 0 0 1 .475-.137q.225 0 .398.097a.7.7 0 0 1 .272.26a.85.85 0 0 1 .12.381h.765v-.072a1.33 1.33 0 0 0-.466-.964a1.4 1.4 0 0 0-.489-.272a1.8 1.8 0 0 0-.606-.097q-.534 0-.911.223q-.375.222-.572.632q-.195.41-.196.979v.498q0 .568.193.976q.197.407.572.626q.375.217.914.217q.439 0 .785-.164t.55-.454a1.27 1.27 0 0 0 .226-.674v-.076h-.764a.8.8 0 0 1-.118.363a.7.7 0 0 1-.272.25a.9.9 0 0 1-.401.087a.85.85 0 0 1-.478-.132a.83.83 0 0 1-.299-.392a1.7 1.7 0 0 1-.102-.627zm8.239 2.238h-.953l-1.338-3.999h.917l.896 3.138h.038l.888-3.138h.879z"/></svg>', hn = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2h-1v-1h1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zM1.6 11.85H0v3.999h.791v-1.342h.803q.43 0 .732-.173q.305-.175.463-.474a1.4 1.4 0 0 0 .161-.677q0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.38a.57.57 0 0 1-.238.241a.8.8 0 0 1-.375.082H.788V12.48h.66q.327 0 .512.181q.185.183.185.522m2.817-1.333h-1.6v3.999h.791v-1.342h.803q.43 0 .732-.173q.305-.175.463-.474q.162-.302.161-.677q0-.375-.158-.677a1.2 1.2 0 0 0-.46-.477q-.3-.18-.732-.179m.545 1.333a.8.8 0 0 1-.085.38a.57.57 0 0 1-.238.241a.8.8 0 0 1-.375.082H4.15V12.48h.66q.327 0 .512.181q.185.183.185.522m2.767-.67v3.336H7.48v-3.337H6.346v-.662h3.065v.662z"/></svg>', un = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V14a2 2 0 0 1-2 2v-1a1 1 0 0 0 1-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zm-7.839 9.166v.522q0 .384-.117.641a.86.86 0 0 1-.322.387a.9.9 0 0 1-.469.126a.9.9 0 0 1-.471-.126a.87.87 0 0 1-.32-.386a1.55 1.55 0 0 1-.117-.642v-.522q0-.386.117-.641a.87.87 0 0 1 .32-.387a.87.87 0 0 1 .471-.129q.264 0 .469.13a.86.86 0 0 1 .322.386q.117.255.117.641m.803.519v-.513q0-.565-.205-.972a1.46 1.46 0 0 0-.589-.63q-.381-.22-.917-.22q-.533 0-.92.22a1.44 1.44 0 0 0-.589.627q-.204.406-.205.975v.513q0 .563.205.973q.205.406.59.627q.386.216.92.216q.535 0 .916-.216q.383-.22.59-.627q.204-.41.204-.973M0 11.926v4h1.459q.603 0 .999-.238a1.45 1.45 0 0 0 .595-.689q.196-.45.196-1.084q0-.63-.196-1.075a1.43 1.43 0 0 0-.59-.68q-.395-.234-1.004-.234zm.791.645h.563q.371 0 .609.152a.9.9 0 0 1 .354.454q.118.302.118.753a2.3 2.3 0 0 1-.068.592a1.1 1.1 0 0 1-.196.422a.8.8 0 0 1-.334.252a1.3 1.3 0 0 1-.483.082H.79V12.57Zm7.422.483a1.7 1.7 0 0 0-.103.633v.495q0 .369.103.627a.83.83 0 0 0 .298.393a.85.85 0 0 0 .478.131a.9.9 0 0 0 .401-.088a.7.7 0 0 0 .273-.248a.8.8 0 0 0 .117-.364h.765v.076a1.27 1.27 0 0 1-.226.674q-.205.29-.55.454a1.8 1.8 0 0 1-.786.164q-.54 0-.914-.216a1.4 1.4 0 0 1-.571-.627q-.194-.408-.194-.976v-.498q0-.568.197-.978q.195-.411.571-.633q.378-.223.911-.223q.328 0 .607.097q.28.093.489.272a1.33 1.33 0 0 1 .466.964v.073H9.78a.85.85 0 0 0-.12-.38a.7.7 0 0 0-.273-.261a.8.8 0 0 0-.398-.097a.8.8 0 0 0-.475.138a.87.87 0 0 0-.301.398"/></svg>', bn = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" fill-rule="evenodd" d="M14 4.5V11h-1V4.5h-2A1.5 1.5 0 0 1 9.5 3V1H4a1 1 0 0 0-1 1v9H2V2a2 2 0 0 1 2-2h5.5zm-6.839 9.688v-.522a1.5 1.5 0 0 0-.117-.641a.86.86 0 0 0-.322-.387a.86.86 0 0 0-.469-.129a.87.87 0 0 0-.471.13a.87.87 0 0 0-.32.386a1.5 1.5 0 0 0-.117.641v.522q0 .384.117.641a.87.87 0 0 0 .32.387a.9.9 0 0 0 .471.126a.9.9 0 0 0 .469-.126a.86.86 0 0 0 .322-.386a1.55 1.55 0 0 0 .117-.642m.803-.516v.513q0 .563-.205.973a1.47 1.47 0 0 1-.589.627q-.381.216-.917.216a1.86 1.86 0 0 1-.92-.216a1.46 1.46 0 0 1-.589-.627a2.15 2.15 0 0 1-.205-.973v-.513q0-.569.205-.975q.205-.411.59-.627q.386-.22.92-.22q.535 0 .916.22q.383.219.59.63q.204.406.204.972M1 15.925v-3.999h1.459q.609 0 1.005.235q.396.233.589.68q.196.445.196 1.074q0 .634-.196 1.084q-.197.451-.595.689q-.396.237-.999.237zm1.354-3.354H1.79v2.707h.563q.277 0 .483-.082a.8.8 0 0 0 .334-.252q.132-.17.196-.422a2.3 2.3 0 0 0 .068-.592q0-.45-.118-.753a.9.9 0 0 0-.354-.454q-.237-.152-.61-.152Zm6.756 1.116q0-.373.103-.633a.87.87 0 0 1 .301-.398a.8.8 0 0 1 .475-.138q.225 0 .398.097a.7.7 0 0 1 .273.26a.85.85 0 0 1 .12.381h.765v-.073a1.33 1.33 0 0 0-.466-.964a1.4 1.4 0 0 0-.49-.272a1.8 1.8 0 0 0-.606-.097q-.534 0-.911.223q-.375.222-.571.633q-.197.41-.197.978v.498q0 .568.194.976q.195.406.571.627q.375.216.914.216q.44 0 .785-.164t.551-.454a1.27 1.27 0 0 0 .226-.674v-.076h-.765a.8.8 0 0 1-.117.364a.7.7 0 0 1-.273.248a.9.9 0 0 1-.401.088a.85.85 0 0 1-.478-.131a.83.83 0 0 1-.298-.393a1.7 1.7 0 0 1-.103-.627zm5.092-1.76h.894l-1.275 2.006l1.254 1.992h-.908l-.85-1.415h-.035l-.852 1.415h-.862l1.24-2.015l-1.228-1.984h.932l.832 1.439h.035z"/></svg>';
|
|
7018
7022
|
var pn = Object.defineProperty, gn = Object.getOwnPropertyDescriptor, la = (a, e, t, i) => {
|
|
7019
7023
|
for (var s = i > 1 ? void 0 : i ? gn(e, t) : e, r = a.length - 1, o; r >= 0; r--)
|
|
@@ -7029,7 +7033,7 @@ const La = {
|
|
|
7029
7033
|
doc: un,
|
|
7030
7034
|
docx: bn
|
|
7031
7035
|
};
|
|
7032
|
-
let
|
|
7036
|
+
let vt = class extends re {
|
|
7033
7037
|
constructor() {
|
|
7034
7038
|
super(...arguments), this.filename = "", this.url = "";
|
|
7035
7039
|
}
|
|
@@ -7058,16 +7062,16 @@ let yt = class extends re {
|
|
|
7058
7062
|
`;
|
|
7059
7063
|
}
|
|
7060
7064
|
};
|
|
7061
|
-
|
|
7065
|
+
vt.styles = nn;
|
|
7062
7066
|
la([
|
|
7063
7067
|
x({ type: String })
|
|
7064
|
-
],
|
|
7068
|
+
], vt.prototype, "filename", 2);
|
|
7065
7069
|
la([
|
|
7066
7070
|
x({ type: String })
|
|
7067
|
-
],
|
|
7068
|
-
|
|
7071
|
+
], vt.prototype, "url", 2);
|
|
7072
|
+
vt = la([
|
|
7069
7073
|
J("cb-file")
|
|
7070
|
-
],
|
|
7074
|
+
], vt);
|
|
7071
7075
|
const mn = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M5.5 5.5A.5.5 0 0 1 6 6v6a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5m2.5 0a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5m3 .5a.5.5 0 0 0-1 0v6a.5.5 0 0 0 1 0z"/><path d="M14.5 3a1 1 0 0 1-1 1H13v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V4h-.5a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1H6a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1h3.5a1 1 0 0 1 1 1zM4.118 4L4 4.059V13a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V4.059L11.882 4zM2.5 3h11V2h-11z"/></g></svg>', Ra = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="currentColor" d="M8 8a3 3 0 1 0 0-6a3 3 0 0 0 0 6m2-3a2 2 0 1 1-4 0a2 2 0 0 1 4 0m4 8c0 1-1 1-1 1H3s-1 0-1-1s1-4 6-4s6 3 6 4m-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10s-3.516.68-4.168 1.332c-.678.678-.83 1.418-.832 1.664z"/></svg>', ai = '<svg viewBox="0 0 24 24" width="1.2em" height="1.2em" ><path fill="currentColor" d="M5 9v12H1V9zm4 12a2 2 0 0 1-2-2V9c0-.55.22-1.05.59-1.41L14.17 1l1.06 1.06c.27.27.44.64.44 1.05l-.03.32L14.69 8H21a2 2 0 0 1 2 2v2c0 .26-.05.5-.14.73l-3.02 7.05C19.54 20.5 18.83 21 18 21zm0-2h9.03L21 12v-2h-8.79l1.13-5.32L9 9.03z"/></svg>', ii = '<svg viewBox="0 0 24 24" width="1.2em" height="1.2em" ><path fill="currentColor" d="M19 15V3h4v12zM15 3a2 2 0 0 1 2 2v10c0 .55-.22 1.05-.59 1.41L9.83 23l-1.06-1.06c-.27-.27-.44-.64-.44-1.06l.03-.31l.95-4.57H3a2 2 0 0 1-2-2v-2c0-.26.05-.5.14-.73l3.02-7.05C4.46 3.5 5.17 3 6 3zm0 2H5.97L3 12v2h8.78l-1.13 5.32L15 14.97z"/></svg>', yn = K`
|
|
7072
7076
|
pre code.hljs {
|
|
7073
7077
|
display: block;
|
|
@@ -8535,16 +8539,16 @@ function wn() {
|
|
|
8535
8539
|
breaks: !0,
|
|
8536
8540
|
linkify: !0,
|
|
8537
8541
|
highlight(e, t) {
|
|
8538
|
-
if (!!(t &&
|
|
8542
|
+
if (!!(t && Gt.getLanguage(t))) {
|
|
8539
8543
|
const s = t ?? "";
|
|
8540
|
-
return za(
|
|
8544
|
+
return za(Gt.highlight(e, { language: s }).value, s);
|
|
8541
8545
|
}
|
|
8542
|
-
return za(
|
|
8546
|
+
return za(Gt.highlightAuto(e).value, "");
|
|
8543
8547
|
}
|
|
8544
8548
|
});
|
|
8545
8549
|
return a.use(Fi, { attrs: { target: "_blank", rel: "noopener" } }), a;
|
|
8546
8550
|
}
|
|
8547
|
-
async function
|
|
8551
|
+
async function Ft(a) {
|
|
8548
8552
|
const t = wn().render(a);
|
|
8549
8553
|
return b`${G(t)}`;
|
|
8550
8554
|
}
|
|
@@ -8676,7 +8680,7 @@ let De = class extends re {
|
|
|
8676
8680
|
part="info-message-content"
|
|
8677
8681
|
>
|
|
8678
8682
|
<div class="cb-message-text">
|
|
8679
|
-
${
|
|
8683
|
+
${bt(
|
|
8680
8684
|
this._getMessageText(a).then((e) => b`${e}`)
|
|
8681
8685
|
)}
|
|
8682
8686
|
</div>
|
|
@@ -8703,7 +8707,7 @@ let De = class extends re {
|
|
|
8703
8707
|
`;
|
|
8704
8708
|
}
|
|
8705
8709
|
async _getMessageText(a) {
|
|
8706
|
-
return
|
|
8710
|
+
return Ft(xt(a.data.text));
|
|
8707
8711
|
}
|
|
8708
8712
|
renderMessageContent(a) {
|
|
8709
8713
|
return a.isThinking ? b`<cb-thinking></cb-thinking>` : a.isUploading ? b`<cb-uploading .files="${a.data.files || []}"></cb-uploading>` : a.type === "text" ? b`<div class="cb-message-text">
|
|
@@ -8712,7 +8716,7 @@ let De = class extends re {
|
|
|
8712
8716
|
() => b`<div class="assistant-message-user-name">${a.data.userName}</div>`,
|
|
8713
8717
|
() => null
|
|
8714
8718
|
)}
|
|
8715
|
-
${
|
|
8719
|
+
${bt(
|
|
8716
8720
|
this._getMessageText(a).then((e) => b`${e}`)
|
|
8717
8721
|
)}
|
|
8718
8722
|
</div>` : a.type === "file" ? b`${et(
|
|
@@ -8724,8 +8728,8 @@ let De = class extends re {
|
|
|
8724
8728
|
(e) => e.name,
|
|
8725
8729
|
(e) => b`<div>${e.name}</div>`
|
|
8726
8730
|
)}` : b`<div class="cb-message-text">
|
|
8727
|
-
${
|
|
8728
|
-
|
|
8731
|
+
${bt(
|
|
8732
|
+
Ft(a.data.text?.toString() || "").then((e) => b`${e}`)
|
|
8729
8733
|
)}
|
|
8730
8734
|
</div>`;
|
|
8731
8735
|
}
|
|
@@ -8885,8 +8889,8 @@ let ye = class extends re {
|
|
|
8885
8889
|
return !u.setting.disclaimerMessage || !u.isConversationStart() ? null : b`
|
|
8886
8890
|
<details class="cb-disclaimer-wrapper" part="disclaimer-wrapper" ?open=${u.setting.enableShowFullDisclaimerMessage}>
|
|
8887
8891
|
<summary class="cb-disclaimer-message" part="disclaimer-message">
|
|
8888
|
-
${
|
|
8889
|
-
|
|
8892
|
+
${bt(
|
|
8893
|
+
Ft(u.setting.disclaimerMessage).then((a) => b`${a}`)
|
|
8890
8894
|
)}
|
|
8891
8895
|
</summary>
|
|
8892
8896
|
</details>
|
|
@@ -9688,7 +9692,7 @@ const oi = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><path fill="c
|
|
|
9688
9692
|
gap: 8px;
|
|
9689
9693
|
}
|
|
9690
9694
|
`;
|
|
9691
|
-
var Rn = Object.defineProperty, zn = Object.getOwnPropertyDescriptor,
|
|
9695
|
+
var Rn = Object.defineProperty, zn = Object.getOwnPropertyDescriptor, Nt = (a, e, t, i) => {
|
|
9692
9696
|
for (var s = i > 1 ? void 0 : i ? zn(e, t) : e, r = a.length - 1, o; r >= 0; r--)
|
|
9693
9697
|
(o = a[r]) && (s = (i ? o(e, t, s) : o(s)) || s);
|
|
9694
9698
|
return i && s && Rn(e, t, s), s;
|
|
@@ -9738,16 +9742,16 @@ let ct = class extends re {
|
|
|
9738
9742
|
}
|
|
9739
9743
|
};
|
|
9740
9744
|
ct.styles = Ln;
|
|
9741
|
-
|
|
9745
|
+
Nt([
|
|
9742
9746
|
x({ type: Boolean })
|
|
9743
9747
|
], ct.prototype, "open", 2);
|
|
9744
|
-
|
|
9748
|
+
Nt([
|
|
9745
9749
|
x({ type: String, attribute: "label" })
|
|
9746
9750
|
], ct.prototype, "label", 2);
|
|
9747
|
-
|
|
9751
|
+
Nt([
|
|
9748
9752
|
x({ type: Number })
|
|
9749
9753
|
], ct.prototype, "zindex", 2);
|
|
9750
|
-
ct =
|
|
9754
|
+
ct = Nt([
|
|
9751
9755
|
J("cb-dialog")
|
|
9752
9756
|
], ct);
|
|
9753
9757
|
var On = Object.defineProperty, Bn = Object.getOwnPropertyDescriptor, ci = (a, e, t, i) => {
|
|
@@ -9755,7 +9759,7 @@ var On = Object.defineProperty, Bn = Object.getOwnPropertyDescriptor, ci = (a, e
|
|
|
9755
9759
|
(o = a[r]) && (s = (i ? o(e, t, s) : o(s)) || s);
|
|
9756
9760
|
return i && s && On(e, t, s), s;
|
|
9757
9761
|
};
|
|
9758
|
-
let
|
|
9762
|
+
let jt = class extends re {
|
|
9759
9763
|
constructor() {
|
|
9760
9764
|
super(...arguments), this.open = !1;
|
|
9761
9765
|
}
|
|
@@ -9789,7 +9793,7 @@ let Dt = class extends re {
|
|
|
9789
9793
|
this.emit("cancel");
|
|
9790
9794
|
}
|
|
9791
9795
|
};
|
|
9792
|
-
|
|
9796
|
+
jt.styles = K`
|
|
9793
9797
|
.cb-clear-message-dialog {
|
|
9794
9798
|
}
|
|
9795
9799
|
|
|
@@ -9799,10 +9803,10 @@ Dt.styles = K`
|
|
|
9799
9803
|
`;
|
|
9800
9804
|
ci([
|
|
9801
9805
|
x({ type: Boolean })
|
|
9802
|
-
],
|
|
9803
|
-
|
|
9806
|
+
], jt.prototype, "open", 2);
|
|
9807
|
+
jt = ci([
|
|
9804
9808
|
J("cb-clear-message-dialog")
|
|
9805
|
-
],
|
|
9809
|
+
], jt);
|
|
9806
9810
|
const qn = K`
|
|
9807
9811
|
:host {
|
|
9808
9812
|
// width: 380px;
|
|
@@ -10116,6 +10120,10 @@ const jn = K`
|
|
|
10116
10120
|
gap: 10px;
|
|
10117
10121
|
}
|
|
10118
10122
|
|
|
10123
|
+
.cb-engage-popup-text p:first-of-type {
|
|
10124
|
+
margin-block-start: 0
|
|
10125
|
+
}
|
|
10126
|
+
|
|
10119
10127
|
.cb-anchor-badge {
|
|
10120
10128
|
margin: 4px 4px 0px 0px;
|
|
10121
10129
|
}
|
|
@@ -10125,7 +10133,7 @@ var Hn = Object.defineProperty, Vn = Object.getOwnPropertyDescriptor, li = (a, e
|
|
|
10125
10133
|
(o = a[r]) && (s = (i ? o(e, t, s) : o(s)) || s);
|
|
10126
10134
|
return i && s && Hn(e, t, s), s;
|
|
10127
10135
|
};
|
|
10128
|
-
let
|
|
10136
|
+
let Ht = class extends re {
|
|
10129
10137
|
constructor() {
|
|
10130
10138
|
super(...arguments), this.store = new it(this, u), this.open = !1;
|
|
10131
10139
|
}
|
|
@@ -10159,6 +10167,9 @@ let Ft = class extends re {
|
|
|
10159
10167
|
renderPopupLogo() {
|
|
10160
10168
|
return u.setting.popupLogoUrl !== "" ? b`<img class="cb-engage-popup-img" src="${u.setting.popupLogoUrl}" />` : u.setting.popupLogoSvg !== "" ? b`<div class="cb-engage-popup-logo">${pe`${G(u.setting.popupLogoSvg)}`}</div>` : u.setting.logoUrl !== "" ? b`<img class="cb-engage-popup-img" src="${u.setting.logoUrl}" />` : u.setting.logoSvg !== "" ? b`<div class="cb-engage-popup-logo">${pe`${G(u.setting.logoSvg)}`}</div>` : null;
|
|
10161
10169
|
}
|
|
10170
|
+
async _getEngageMessageHtml(a) {
|
|
10171
|
+
return Ft(xt(a));
|
|
10172
|
+
}
|
|
10162
10173
|
render() {
|
|
10163
10174
|
return b`
|
|
10164
10175
|
<div class="cb-anchor ${this.open ? "open" : ""}" part="anchor" @click=${this._clickHandler.bind(this)}>
|
|
@@ -10179,7 +10190,11 @@ let Ft = class extends re {
|
|
|
10179
10190
|
<div class="cb-engage-popup-close" @click=${this._engageClickHandler.bind(this)}>${pe`${G(oi)}`}</div>
|
|
10180
10191
|
<div class="cb-engage-popup-content">
|
|
10181
10192
|
${this.renderPopupLogo()}
|
|
10182
|
-
<div
|
|
10193
|
+
<div class="cb-engage-popup-text">
|
|
10194
|
+
${bt(
|
|
10195
|
+
this._getEngageMessageHtml(u.setting.engageMessage).then((a) => b`${a}`)
|
|
10196
|
+
)}
|
|
10197
|
+
</div>
|
|
10183
10198
|
</div>
|
|
10184
10199
|
</div>
|
|
10185
10200
|
</sl-popup>
|
|
@@ -10187,13 +10202,13 @@ let Ft = class extends re {
|
|
|
10187
10202
|
`;
|
|
10188
10203
|
}
|
|
10189
10204
|
};
|
|
10190
|
-
|
|
10205
|
+
Ht.styles = jn;
|
|
10191
10206
|
li([
|
|
10192
10207
|
x({ type: Boolean })
|
|
10193
|
-
],
|
|
10194
|
-
|
|
10208
|
+
], Ht.prototype, "open", 2);
|
|
10209
|
+
Ht = li([
|
|
10195
10210
|
J("cb-anchor")
|
|
10196
|
-
],
|
|
10211
|
+
], Ht);
|
|
10197
10212
|
const Un = K`
|
|
10198
10213
|
${ke}
|
|
10199
10214
|
`, Ba = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M4.54.146A.5.5 0 0 1 4.893 0h6.214a.5.5 0 0 1 .353.146l4.394 4.394a.5.5 0 0 1 .146.353v6.214a.5.5 0 0 1-.146.353l-4.394 4.394a.5.5 0 0 1-.353.146H4.893a.5.5 0 0 1-.353-.146L.146 11.46A.5.5 0 0 1 0 11.107V4.893a.5.5 0 0 1 .146-.353zM5.1 1L1 5.1v5.8L5.1 15h5.8l4.1-4.1V5.1L10.9 1z"/><path d="M7.002 11a1 1 0 1 1 2 0a1 1 0 0 1-2 0M7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0z"/></g></svg>', Nn = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M7.938 2.016A.13.13 0 0 1 8.002 2a.13.13 0 0 1 .063.016a.15.15 0 0 1 .054.057l6.857 11.667c.036.06.035.124.002.183a.2.2 0 0 1-.054.06a.1.1 0 0 1-.066.017H1.146a.1.1 0 0 1-.066-.017a.2.2 0 0 1-.054-.06a.18.18 0 0 1 .002-.183L7.884 2.073a.15.15 0 0 1 .054-.057m1.044-.45a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767z"/><path d="M7.002 12a1 1 0 1 1 2 0a1 1 0 0 1-2 0M7.1 5.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0z"/></g></svg>', Wn = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M2.5 8a5.5 5.5 0 0 1 8.25-4.764a.5.5 0 0 0 .5-.866A6.5 6.5 0 1 0 14.5 8a.5.5 0 0 0-1 0a5.5 5.5 0 1 1-11 0"/><path d="M15.354 3.354a.5.5 0 0 0-.708-.708L8 9.293L5.354 6.646a.5.5 0 1 0-.708.708l3 3a.5.5 0 0 0 .708 0z"/></g></svg>', Gn = '<svg viewBox="0 0 16 16" width="1.2em" height="1.2em" ><g fill="currentColor"><path d="M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14m0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16"/><path d="m8.93 6.588l-2.29.287l-.082.38l.45.083c.294.07.352.176.288.469l-.738 3.468c-.194.897.105 1.319.808 1.319c.545 0 1.178-.252 1.465-.598l.088-.416c-.2.176-.492.246-.686.246c-.275 0-.375-.193-.304-.533zM9 4.5a1 1 0 1 1-2 0a1 1 0 0 1 2 0"/></g></svg>';
|
|
@@ -10224,7 +10239,7 @@ const qa = {
|
|
|
10224
10239
|
icon: Gn
|
|
10225
10240
|
}
|
|
10226
10241
|
};
|
|
10227
|
-
let
|
|
10242
|
+
let Vt = class extends re {
|
|
10228
10243
|
constructor() {
|
|
10229
10244
|
super(...arguments), this.status = "info";
|
|
10230
10245
|
}
|
|
@@ -10233,13 +10248,13 @@ let jt = class extends re {
|
|
|
10233
10248
|
return b`<cb-icon svg=${e} color="${a}"></cb-icon>`;
|
|
10234
10249
|
}
|
|
10235
10250
|
};
|
|
10236
|
-
|
|
10251
|
+
Vt.styles = Ga;
|
|
10237
10252
|
di([
|
|
10238
10253
|
x({ type: String })
|
|
10239
|
-
],
|
|
10240
|
-
|
|
10254
|
+
], Vt.prototype, "status", 2);
|
|
10255
|
+
Vt = di([
|
|
10241
10256
|
J("cb-status-icon")
|
|
10242
|
-
],
|
|
10257
|
+
], Vt);
|
|
10243
10258
|
var Kn = Object.getOwnPropertyDescriptor, Jn = (a, e, t, i) => {
|
|
10244
10259
|
for (var s = i > 1 ? void 0 : i ? Kn(e, t) : e, r = a.length - 1, o; r >= 0; r--)
|
|
10245
10260
|
(o = a[r]) && (s = o(s) || s);
|
|
@@ -10414,7 +10429,7 @@ let Ye = class extends re {
|
|
|
10414
10429
|
u.feedbackScore = this._rating.value;
|
|
10415
10430
|
}
|
|
10416
10431
|
async _submitHandler() {
|
|
10417
|
-
const a = this._name?.value || "", e = this._email?.value || "", t =
|
|
10432
|
+
const a = this._name?.value || "", e = this._email?.value || "", t = xt(this._comments?.value || "");
|
|
10418
10433
|
this._comments.value = "", await u.submitFeedback(a, e, t);
|
|
10419
10434
|
}
|
|
10420
10435
|
};
|
|
@@ -10830,7 +10845,7 @@ class fi extends HTMLElement {
|
|
|
10830
10845
|
class sr extends fi {
|
|
10831
10846
|
constructor() {
|
|
10832
10847
|
super(), this._ribbons = [], this._lastTime = 0, this._ribbons.push(
|
|
10833
|
-
new
|
|
10848
|
+
new $t(
|
|
10834
10849
|
12,
|
|
10835
10850
|
{ r: 255, g: 126, b: 103 },
|
|
10836
10851
|
// #FF7E67
|
|
@@ -10838,7 +10853,7 @@ class sr extends fi {
|
|
|
10838
10853
|
// #63c1d0
|
|
10839
10854
|
{ springStrength: 20, damping: 0.7, scale: 0.8, phase: 0 }
|
|
10840
10855
|
),
|
|
10841
|
-
new
|
|
10856
|
+
new $t(
|
|
10842
10857
|
12,
|
|
10843
10858
|
{ r: 255, g: 201, b: 71 },
|
|
10844
10859
|
// #FFC947
|
|
@@ -10846,7 +10861,7 @@ class sr extends fi {
|
|
|
10846
10861
|
// #ecff6b
|
|
10847
10862
|
{ springStrength: 7, damping: 0.5, scale: 0.7, phase: -0.3 }
|
|
10848
10863
|
),
|
|
10849
|
-
new
|
|
10864
|
+
new $t(
|
|
10850
10865
|
12,
|
|
10851
10866
|
{ r: 255, g: 154, b: 140 },
|
|
10852
10867
|
// #FF9A8C
|
|
@@ -10854,7 +10869,7 @@ class sr extends fi {
|
|
|
10854
10869
|
// #a5e8ad
|
|
10855
10870
|
{ springStrength: 7, damping: 0.3, scale: 0.5, phase: 0.3 }
|
|
10856
10871
|
),
|
|
10857
|
-
new
|
|
10872
|
+
new $t(
|
|
10858
10873
|
12,
|
|
10859
10874
|
{ r: 255, g: 107, b: 107 },
|
|
10860
10875
|
// #FF6B6B
|
|
@@ -10872,7 +10887,7 @@ class sr extends fi {
|
|
|
10872
10887
|
}
|
|
10873
10888
|
}
|
|
10874
10889
|
customElements.get("volume-visualizer-liquid") || customElements.define("volume-visualizer-liquid", sr);
|
|
10875
|
-
class
|
|
10890
|
+
class $t {
|
|
10876
10891
|
constructor(e, t, i, s) {
|
|
10877
10892
|
this.inputColorRGB = t, this.outputColorRGB = i, this.currentColorRGB = { ...i }, this.options = s, this.segments = e, this.renderPoints = Array(e).fill(0), this.targetPoints = Array(e).fill(0), this.velocity = Array(e).fill(0), this.springStrength = s.springStrength || 10, this.damping = s.damping || 0.5, this.phase = s.phase || 0, this.scale = s.scale || 1, this.thinkingPhase = 0;
|
|
10878
10893
|
}
|
|
@@ -11040,19 +11055,19 @@ let ta = class extends re {
|
|
|
11040
11055
|
switch (u.setting.botAdvancedSettings?.audioVisualizerName || "bars") {
|
|
11041
11056
|
case "default":
|
|
11042
11057
|
return b`
|
|
11043
|
-
<volume-visualizer ${
|
|
11058
|
+
<volume-visualizer ${Tt(this.volumeVisualizerRef)}></volume-visualizer>
|
|
11044
11059
|
`;
|
|
11045
11060
|
case "liquid":
|
|
11046
11061
|
return b`
|
|
11047
|
-
<volume-visualizer-liquid ${
|
|
11062
|
+
<volume-visualizer-liquid ${Tt(this.volumeVisualizerRef)}></volume-visualizer-liquid>
|
|
11048
11063
|
`;
|
|
11049
11064
|
case "bars":
|
|
11050
11065
|
return b`
|
|
11051
|
-
<volume-visualizer-bars ${
|
|
11066
|
+
<volume-visualizer-bars ${Tt(this.volumeVisualizerRef)}></volume-visualizer-bars>
|
|
11052
11067
|
`;
|
|
11053
11068
|
default:
|
|
11054
11069
|
return b`
|
|
11055
|
-
<volume-visualizer ${
|
|
11070
|
+
<volume-visualizer ${Tt(this.volumeVisualizerRef)}></volume-visualizer>
|
|
11056
11071
|
`;
|
|
11057
11072
|
}
|
|
11058
11073
|
}
|
|
@@ -11112,7 +11127,7 @@ class hi extends Error {
|
|
|
11112
11127
|
super(t), this.value = e;
|
|
11113
11128
|
}
|
|
11114
11129
|
}
|
|
11115
|
-
class
|
|
11130
|
+
class Yt extends Error {
|
|
11116
11131
|
name = "ForceRetryError";
|
|
11117
11132
|
customDelay;
|
|
11118
11133
|
code;
|
|
@@ -11150,7 +11165,7 @@ const ja = (() => {
|
|
|
11150
11165
|
// Supported in modern Fetch implementations (for example, browsers and recent Node.js/undici).
|
|
11151
11166
|
// We still feature-check at runtime before exposing the shortcut.
|
|
11152
11167
|
bytes: "*/*"
|
|
11153
|
-
},
|
|
11168
|
+
}, Kt = 2147483647, ur = new TextEncoder().encode("------WebKitFormBoundaryaxpyiPgbbPti10Rw").length, pi = Symbol("stop");
|
|
11154
11169
|
class gi {
|
|
11155
11170
|
options;
|
|
11156
11171
|
constructor(e) {
|
|
@@ -11255,7 +11270,7 @@ const br = (a) => new gi(a), pr = {
|
|
|
11255
11270
|
duplex: "half",
|
|
11256
11271
|
body: mi(a.body, i, e)
|
|
11257
11272
|
});
|
|
11258
|
-
}, Qe = (a) => a !== null && typeof a == "object",
|
|
11273
|
+
}, Qe = (a) => a !== null && typeof a == "object", Pt = (...a) => {
|
|
11259
11274
|
for (const e of a)
|
|
11260
11275
|
if ((!Qe(e) || Array.isArray(e)) && e !== void 0)
|
|
11261
11276
|
throw new TypeError("The `options` argument must be an object");
|
|
@@ -11266,14 +11281,14 @@ const br = (a) => new gi(a), pr = {
|
|
|
11266
11281
|
i && o === "undefined" || o === void 0 ? t.delete(r) : t.set(r, o);
|
|
11267
11282
|
return t;
|
|
11268
11283
|
};
|
|
11269
|
-
function
|
|
11284
|
+
function Lt(a, e, t) {
|
|
11270
11285
|
return Object.hasOwn(e, t) && e[t] === void 0 ? [] : ha(a[t] ?? [], e[t] ?? []);
|
|
11271
11286
|
}
|
|
11272
11287
|
const vi = (a = {}, e = {}) => ({
|
|
11273
|
-
beforeRequest:
|
|
11274
|
-
beforeRetry:
|
|
11275
|
-
afterResponse:
|
|
11276
|
-
beforeError:
|
|
11288
|
+
beforeRequest: Lt(a, e, "beforeRequest"),
|
|
11289
|
+
beforeRetry: Lt(a, e, "beforeRetry"),
|
|
11290
|
+
afterResponse: Lt(a, e, "afterResponse"),
|
|
11291
|
+
beforeError: Lt(a, e, "beforeError")
|
|
11277
11292
|
}), xr = (a, e) => {
|
|
11278
11293
|
const t = new URLSearchParams();
|
|
11279
11294
|
for (const i of [a, e])
|
|
@@ -11390,11 +11405,11 @@ function $r(a) {
|
|
|
11390
11405
|
function Pr(a) {
|
|
11391
11406
|
return a instanceof ia || a?.name === ia.name;
|
|
11392
11407
|
}
|
|
11393
|
-
class
|
|
11408
|
+
class wt {
|
|
11394
11409
|
static create(e, t) {
|
|
11395
|
-
const i = new
|
|
11396
|
-
if (typeof i.#e.timeout == "number" && i.#e.timeout >
|
|
11397
|
-
throw new RangeError(`The \`timeout\` option cannot be greater than ${
|
|
11410
|
+
const i = new wt(e, t), s = async () => {
|
|
11411
|
+
if (typeof i.#e.timeout == "number" && i.#e.timeout > Kt)
|
|
11412
|
+
throw new RangeError(`The \`timeout\` option cannot be greater than ${Kt}`);
|
|
11398
11413
|
await Promise.resolve();
|
|
11399
11414
|
let o = await i.#p();
|
|
11400
11415
|
for (const f of i.#e.hooks.afterResponse) {
|
|
@@ -11403,7 +11418,7 @@ class vt {
|
|
|
11403
11418
|
throw await Promise.all([
|
|
11404
11419
|
p.body?.cancel(),
|
|
11405
11420
|
o.body?.cancel()
|
|
11406
|
-
]), new
|
|
11421
|
+
]), new Yt(v.options);
|
|
11407
11422
|
}
|
|
11408
11423
|
if (i.#d(o), !o.ok && (typeof i.#e.throwHttpErrors == "function" ? i.#e.throwHttpErrors(o.status) : i.#e.throwHttpErrors)) {
|
|
11409
11424
|
let f = new aa(o, i.request, i.#o());
|
|
@@ -11479,7 +11494,7 @@ class vt {
|
|
|
11479
11494
|
lr && ui && (this.#s = this.#e.signal ?? this.#t.signal, this.#i = new globalThis.AbortController(), this.#e.signal = this.#s ? AbortSignal.any([this.#s, this.#i.signal]) : this.#i.signal), ja && (this.#e.duplex = "half"), this.#e.json !== void 0 && (this.#e.body = this.#e.stringifyJson?.(this.#e.json) ?? JSON.stringify(this.#e.json), this.#e.headers.set("content-type", this.#e.headers.get("content-type") ?? "application/json"));
|
|
11480
11495
|
const i = t.headers && new globalThis.Headers(t.headers).has("content-type");
|
|
11481
11496
|
if (this.#t instanceof globalThis.Request && (fr && this.#e.body instanceof globalThis.FormData || this.#e.body instanceof URLSearchParams) && !i && this.#e.headers.delete("content-type"), this.request = new globalThis.Request(this.#t, this.#e), Er(this.#e.searchParams)) {
|
|
11482
|
-
const r = "?" + (typeof this.#e.searchParams == "string" ? this.#e.searchParams.replace(/^\?/, "") : new URLSearchParams(
|
|
11497
|
+
const r = "?" + (typeof this.#e.searchParams == "string" ? this.#e.searchParams.replace(/^\?/, "") : new URLSearchParams(wt.#u(this.#e.searchParams)).toString()), o = this.request.url.replace(/(?:\?.*?)?(?=#|$)/, r);
|
|
11483
11498
|
this.request = new globalThis.Request(o, this.#e);
|
|
11484
11499
|
}
|
|
11485
11500
|
if (this.#e.onUploadProgress) {
|
|
@@ -11499,7 +11514,7 @@ class vt {
|
|
|
11499
11514
|
if (this.#a++, this.#a > this.#e.retry.limit)
|
|
11500
11515
|
throw e;
|
|
11501
11516
|
const t = e instanceof Error ? e : new hi(e);
|
|
11502
|
-
if (t instanceof
|
|
11517
|
+
if (t instanceof Yt)
|
|
11503
11518
|
return t.customDelay ?? this.#c();
|
|
11504
11519
|
if (!this.#e.retry.methods.includes(this.request.method.toLowerCase()))
|
|
11505
11520
|
throw e;
|
|
@@ -11534,10 +11549,10 @@ class vt {
|
|
|
11534
11549
|
try {
|
|
11535
11550
|
return await e();
|
|
11536
11551
|
} catch (t) {
|
|
11537
|
-
const i = Math.min(await this.#b(t),
|
|
11552
|
+
const i = Math.min(await this.#b(t), Kt);
|
|
11538
11553
|
if (this.#a < 1)
|
|
11539
11554
|
throw t;
|
|
11540
|
-
if (await Tr(i, this.#s ? { signal: this.#s } : {}), t instanceof
|
|
11555
|
+
if (await Tr(i, this.#s ? { signal: this.#s } : {}), t instanceof Yt && t.customRequest) {
|
|
11541
11556
|
const s = this.#e.signal ? new globalThis.Request(t.customRequest, { signal: this.#e.signal }) : new globalThis.Request(t.customRequest);
|
|
11542
11557
|
this.#l(s);
|
|
11543
11558
|
}
|
|
@@ -11589,10 +11604,10 @@ class vt {
|
|
|
11589
11604
|
}
|
|
11590
11605
|
}
|
|
11591
11606
|
const sa = (a) => {
|
|
11592
|
-
const e = (t, i) =>
|
|
11607
|
+
const e = (t, i) => wt.create(t, Pt(a, i));
|
|
11593
11608
|
for (const t of bi)
|
|
11594
|
-
e[t] = (i, s) =>
|
|
11595
|
-
return e.create = (t) => sa(
|
|
11609
|
+
e[t] = (i, s) => wt.create(i, Pt(a, s, { method: t }));
|
|
11610
|
+
return e.create = (t) => sa(Pt(t)), e.extend = (t) => (typeof t == "function" && (t = t(a ?? {})), sa(Pt(a, t))), e.stop = pi, e.retry = br, e;
|
|
11596
11611
|
}, Lr = sa();
|
|
11597
11612
|
Lr.extend({
|
|
11598
11613
|
hooks: {
|
|
@@ -11623,7 +11638,7 @@ async function Rr(a, e) {
|
|
|
11623
11638
|
}).text()
|
|
11624
11639
|
);
|
|
11625
11640
|
}
|
|
11626
|
-
var zr = Object.defineProperty, Or = Object.getOwnPropertyDescriptor,
|
|
11641
|
+
var zr = Object.defineProperty, Or = Object.getOwnPropertyDescriptor, j = (a, e, t, i) => {
|
|
11627
11642
|
for (var s = i > 1 ? void 0 : i ? Or(e, t) : e, r = a.length - 1, o; r >= 0; r--)
|
|
11628
11643
|
(o = a[r]) && (s = (i ? o(e, t, s) : o(s)) || s);
|
|
11629
11644
|
return i && s && zr(e, t, s), s;
|
|
@@ -11634,9 +11649,9 @@ function Br() {
|
|
|
11634
11649
|
const a = navigator.userAgent, e = /iPhone|iPad|iPod/.test(a), t = /AppleWebKit/.test(a), i = /Safari/.test(a) && !/CriOS|FxiOS|EdgiOS|OPiOS/.test(a);
|
|
11635
11650
|
return e && t && !i;
|
|
11636
11651
|
}
|
|
11637
|
-
let
|
|
11652
|
+
let D = class extends re {
|
|
11638
11653
|
constructor() {
|
|
11639
|
-
super(...arguments), this.store = new it(this, u), this.displayLicense = !1, this.name = "ChatBot", this.orgId = "", this.botId = "", this.version = "current", this.testMode = "false", this.url = "ws://localhost:3070", this.logoUrl = "", this.logoSvg = `<svg width="24" height="24" viewBox="0 0 203 200" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
11654
|
+
super(...arguments), this.store = new it(this, u), this.displayLicense = !1, this.name = "ChatBot", this.orgId = "", this.botId = "", this.version = "current", this.testMode = "false", this.suppressStartupForm = "false", this.url = "ws://localhost:3070", this.logoUrl = "", this.logoSvg = `<svg width="24" height="24" viewBox="0 0 203 200" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
11640
11655
|
<path d="M100.438 0C155.665 0 200.438 44.7723 200.438 100C200.438 155.228 155.665 200 100.438 200C45.2098 200 0.4375 155.228 0.4375 100C0.4375 44.7723 45.2098 0 100.438 0ZM130.093 60.6063C120.409 60.6063 115.205 61.458 109.344 65.0325C100.122 70.6592 95.629 80.1958 94.2273 93.877C94.1468 94.5544 93.8048 97.2571 93.4091 100.349C93.3152 101.06 93.2281 101.771 93.1409 102.455C92.7318 105.573 92.3093 108.739 92.0142 110.408C90.8808 117.041 89.2914 123.761 83.8927 126.759C83.6915 126.873 83.4702 126.967 83.2556 127.067C78.6013 129.093 72.2905 128.898 72.2905 128.898C72.2905 128.898 69.1988 128.885 69.1787 128.885C69.172 128.885 69.1921 128.885 69.1921 128.898L68.1057 143.632C87.7824 143.666 93.0537 139.213 93.0537 139.213C102.275 133.586 106.768 124.049 108.17 110.368C108.251 109.677 108.593 106.894 109.002 103.735C109.096 103.004 109.196 102.273 109.283 101.576C109.679 98.5246 110.095 95.4798 110.383 93.8435C111.517 87.2108 113.106 80.4842 118.505 77.4931C118.706 77.3791 118.921 77.2852 119.135 77.1846C123.756 75.1727 130.107 75.3471 130.107 75.3471C132.494 75.3269 133.219 75.4007 133.286 75.4074L134.292 60.6264C132.783 60.6264 130.107 60.6264 130.107 60.6264L130.093 60.6063Z" fill="#010101" style="fill:#010101;fill:color(display-p3 0.0039 0.0039 0.0039);fill-opacity:1;"/>
|
|
11641
11656
|
</svg>`, this.closeSvg = '<svg viewBox="0 0 16 16" width="1.4em" height="1.4em"><path fill="currentColor" d="M2.146 2.854a.5.5 0 1 1 .708-.708L8 7.293l5.146-5.147a.5.5 0 0 1 .708.708L8.707 8l5.147 5.146a.5.5 0 0 1-.708.708L8 8.707l-5.146 5.147a.5.5 0 0 1-.708-.708L7.293 8z"></path></svg>', this.logoSvgGradient = `<svg width="28" height="28" viewBox="0 0 400 400" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
11642
11657
|
<g clip-path="url(#clip0_830_884)">
|
|
@@ -11807,7 +11822,7 @@ let F = class extends re {
|
|
|
11807
11822
|
_initSetting() {
|
|
11808
11823
|
Be.info("_initSetting");
|
|
11809
11824
|
const a = u.setting;
|
|
11810
|
-
a.orgId = this.orgId, a.botId = this.botId, a.url = this.url, a.version = this.version || "current", a.testMode = this.testMode === "true", a.logoUrl = this.logoUrl, a.logoSvg = this.logoSvg, a.closeSvg = this.closeSvg, a.popupLogoSvg = this.popupLogoSvg, a.popupLogoUrl = this.popupLogoUrl, a.botIconSvg = this.botIconSvg, a.userIconSvg = this.userIconSvg, a.systemIconSvg = this.systemIconSvg, a.agentIconSvg = this.agentIconSvg, a.infoIconSvg = this.infoIconSvg, a.anchorOpenSvg = this.anchorOpenSvg, a.anchorCloseSvg = this.anchorCloseSvg, a.sendIconSvg = this.sendIconSvg, a.attachIconSvg = this.attachIconSvg, u.setSetting(a);
|
|
11825
|
+
a.orgId = this.orgId, a.botId = this.botId, a.url = this.url, a.version = this.version || "current", a.testMode = this.testMode === "true", a.suppressStartupForm = this.suppressStartupForm === "true", a.logoUrl = this.logoUrl, a.logoSvg = this.logoSvg, a.closeSvg = this.closeSvg, a.popupLogoSvg = this.popupLogoSvg, a.popupLogoUrl = this.popupLogoUrl, a.botIconSvg = this.botIconSvg, a.userIconSvg = this.userIconSvg, a.systemIconSvg = this.systemIconSvg, a.agentIconSvg = this.agentIconSvg, a.infoIconSvg = this.infoIconSvg, a.anchorOpenSvg = this.anchorOpenSvg, a.anchorCloseSvg = this.anchorCloseSvg, a.sendIconSvg = this.sendIconSvg, a.attachIconSvg = this.attachIconSvg, u.setSetting(a);
|
|
11811
11826
|
let e = {};
|
|
11812
11827
|
try {
|
|
11813
11828
|
e = JSON.parse(this.prefilledFormFields);
|
|
@@ -11923,7 +11938,7 @@ let F = class extends re {
|
|
|
11923
11938
|
console.log("_processSendMessage: input text is empty, ignored", a);
|
|
11924
11939
|
return;
|
|
11925
11940
|
}
|
|
11926
|
-
a.data.text =
|
|
11941
|
+
a.data.text = xt(a.data.text.trim()), u.isConversationStart() && (console.log("Start of conversation detected, emitting c7o:bot:conversationStart", a), a.conversationId = u.conversationId, this.emitExt("c7o:bot:conversationStart", {
|
|
11927
11942
|
detail: a
|
|
11928
11943
|
})), u.sendMessage(a), setTimeout(() => {
|
|
11929
11944
|
this._scrollToBottom();
|
|
@@ -11969,106 +11984,109 @@ let F = class extends re {
|
|
|
11969
11984
|
this._messageList?.scrollToBottom();
|
|
11970
11985
|
}
|
|
11971
11986
|
};
|
|
11972
|
-
|
|
11973
|
-
|
|
11987
|
+
D.styles = [Xi, Za];
|
|
11988
|
+
j([
|
|
11974
11989
|
x({ type: Boolean, attribute: "display-license" })
|
|
11975
|
-
],
|
|
11976
|
-
|
|
11990
|
+
], D.prototype, "displayLicense", 2);
|
|
11991
|
+
j([
|
|
11977
11992
|
x({ type: String, attribute: "name" })
|
|
11978
|
-
],
|
|
11979
|
-
|
|
11993
|
+
], D.prototype, "name", 2);
|
|
11994
|
+
j([
|
|
11980
11995
|
x({ type: String, attribute: "org-id" })
|
|
11981
|
-
],
|
|
11982
|
-
|
|
11996
|
+
], D.prototype, "orgId", 2);
|
|
11997
|
+
j([
|
|
11983
11998
|
x({ type: String, attribute: "bot-id" })
|
|
11984
|
-
],
|
|
11985
|
-
|
|
11999
|
+
], D.prototype, "botId", 2);
|
|
12000
|
+
j([
|
|
11986
12001
|
x({ type: String, attribute: "version" })
|
|
11987
|
-
],
|
|
11988
|
-
|
|
12002
|
+
], D.prototype, "version", 2);
|
|
12003
|
+
j([
|
|
11989
12004
|
x({ type: String, attribute: "test-mode" })
|
|
11990
|
-
],
|
|
11991
|
-
|
|
12005
|
+
], D.prototype, "testMode", 2);
|
|
12006
|
+
j([
|
|
12007
|
+
x({ type: String, attribute: "suppress-startup-form" })
|
|
12008
|
+
], D.prototype, "suppressStartupForm", 2);
|
|
12009
|
+
j([
|
|
11992
12010
|
x({ type: String, attribute: "url" })
|
|
11993
|
-
],
|
|
11994
|
-
|
|
12011
|
+
], D.prototype, "url", 2);
|
|
12012
|
+
j([
|
|
11995
12013
|
x({ type: String, attribute: "logo-url" })
|
|
11996
|
-
],
|
|
11997
|
-
|
|
12014
|
+
], D.prototype, "logoUrl", 2);
|
|
12015
|
+
j([
|
|
11998
12016
|
x({ type: String, attribute: "logo-svg" })
|
|
11999
|
-
],
|
|
12000
|
-
|
|
12017
|
+
], D.prototype, "logoSvg", 2);
|
|
12018
|
+
j([
|
|
12001
12019
|
x({ type: String, attribute: "close-svg" })
|
|
12002
|
-
],
|
|
12003
|
-
|
|
12020
|
+
], D.prototype, "closeSvg", 2);
|
|
12021
|
+
j([
|
|
12004
12022
|
x({ type: String, attribute: "popup-logo-svg" })
|
|
12005
|
-
],
|
|
12006
|
-
|
|
12023
|
+
], D.prototype, "popupLogoSvg", 2);
|
|
12024
|
+
j([
|
|
12007
12025
|
x({ type: String, attribute: "popup-logo-url" })
|
|
12008
|
-
],
|
|
12009
|
-
|
|
12026
|
+
], D.prototype, "popupLogoUrl", 2);
|
|
12027
|
+
j([
|
|
12010
12028
|
x({ type: String, attribute: "bot-icon-svg" })
|
|
12011
|
-
],
|
|
12012
|
-
|
|
12029
|
+
], D.prototype, "botIconSvg", 2);
|
|
12030
|
+
j([
|
|
12013
12031
|
x({ type: String, attribute: "user-icon-svg" })
|
|
12014
|
-
],
|
|
12015
|
-
|
|
12032
|
+
], D.prototype, "userIconSvg", 2);
|
|
12033
|
+
j([
|
|
12016
12034
|
x({ type: String, attribute: "system-icon-svg" })
|
|
12017
|
-
],
|
|
12018
|
-
|
|
12035
|
+
], D.prototype, "systemIconSvg", 2);
|
|
12036
|
+
j([
|
|
12019
12037
|
x({ type: String, attribute: "agent-icon-svg" })
|
|
12020
|
-
],
|
|
12021
|
-
|
|
12038
|
+
], D.prototype, "agentIconSvg", 2);
|
|
12039
|
+
j([
|
|
12022
12040
|
x({ type: String, attribute: "info-icon-svg" })
|
|
12023
|
-
],
|
|
12024
|
-
|
|
12041
|
+
], D.prototype, "infoIconSvg", 2);
|
|
12042
|
+
j([
|
|
12025
12043
|
x({ type: String, attribute: "anchor-open-svg" })
|
|
12026
|
-
],
|
|
12027
|
-
|
|
12044
|
+
], D.prototype, "anchorOpenSvg", 2);
|
|
12045
|
+
j([
|
|
12028
12046
|
x({ type: String, attribute: "anchor-close-svg" })
|
|
12029
|
-
],
|
|
12030
|
-
|
|
12047
|
+
], D.prototype, "anchorCloseSvg", 2);
|
|
12048
|
+
j([
|
|
12031
12049
|
x({ type: String, attribute: "send-icon-svg" })
|
|
12032
|
-
],
|
|
12033
|
-
|
|
12050
|
+
], D.prototype, "sendIconSvg", 2);
|
|
12051
|
+
j([
|
|
12034
12052
|
x({ type: String, attribute: "attach-icon-svg" })
|
|
12035
|
-
],
|
|
12036
|
-
|
|
12053
|
+
], D.prototype, "attachIconSvg", 2);
|
|
12054
|
+
j([
|
|
12037
12055
|
x({ type: Boolean, attribute: "stream" })
|
|
12038
|
-
],
|
|
12039
|
-
|
|
12056
|
+
], D.prototype, "stream", 2);
|
|
12057
|
+
j([
|
|
12040
12058
|
x({ type: Boolean, attribute: "custom-request" })
|
|
12041
|
-
],
|
|
12042
|
-
|
|
12059
|
+
], D.prototype, "customRequest", 2);
|
|
12060
|
+
j([
|
|
12043
12061
|
x({ type: Boolean, attribute: "enable-file-upload" })
|
|
12044
|
-
],
|
|
12045
|
-
|
|
12062
|
+
], D.prototype, "enableFileUpload", 2);
|
|
12063
|
+
j([
|
|
12046
12064
|
x({ type: String, attribute: "upload-file-url" })
|
|
12047
|
-
],
|
|
12048
|
-
|
|
12065
|
+
], D.prototype, "uploadFileUrl", 2);
|
|
12066
|
+
j([
|
|
12049
12067
|
x({ type: Boolean, attribute: "open" })
|
|
12050
|
-
],
|
|
12051
|
-
|
|
12068
|
+
], D.prototype, "open", 2);
|
|
12069
|
+
j([
|
|
12052
12070
|
x({ type: Boolean, attribute: "always-open" })
|
|
12053
|
-
],
|
|
12054
|
-
|
|
12071
|
+
], D.prototype, "alwaysOpen", 2);
|
|
12072
|
+
j([
|
|
12055
12073
|
x({ type: String, attribute: "prefilled-form-fields" })
|
|
12056
|
-
],
|
|
12057
|
-
|
|
12074
|
+
], D.prototype, "prefilledFormFields", 2);
|
|
12075
|
+
j([
|
|
12058
12076
|
x({ type: Boolean })
|
|
12059
|
-
],
|
|
12060
|
-
|
|
12077
|
+
], D.prototype, "loading", 2);
|
|
12078
|
+
j([
|
|
12061
12079
|
x({ type: Boolean })
|
|
12062
|
-
],
|
|
12063
|
-
|
|
12080
|
+
], D.prototype, "showSetting", 2);
|
|
12081
|
+
j([
|
|
12064
12082
|
x({ type: Boolean })
|
|
12065
|
-
],
|
|
12066
|
-
|
|
12083
|
+
], D.prototype, "showAuthAlert", 2);
|
|
12084
|
+
j([
|
|
12067
12085
|
xe("cb-message-list")
|
|
12068
|
-
],
|
|
12069
|
-
|
|
12086
|
+
], D.prototype, "_messageList", 2);
|
|
12087
|
+
D = j([
|
|
12070
12088
|
J("enegelai-bot")
|
|
12071
|
-
],
|
|
12089
|
+
], D);
|
|
12072
12090
|
export {
|
|
12073
|
-
|
|
12091
|
+
D as default
|
|
12074
12092
|
};
|