PageSourceSearch

https://freundebgz.ch/clubdesk/v_5.0.22/shared/scripts/altcha_2_0_1/altcha.i18n.js

js freundebgz.ch collected 2026-10-06 17:44:19 UTC 144,311 bytes, 4,017 lines download raw bytes

vendor: 27,966 bytes, lines 1-1128
1var $n = Object.defineProperty;
2var Ia = (e) => {
3  throw TypeError(e);
4};
5var Sn = (e, t, r) => t in e ? $n(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r;
6var Ae = (e, t, r) => Sn(e, typeof t != "symbol" ? t + "" : t, r), Va = (e, t, r) => t.has(e) || Ia("Cannot " + r);
7var se = (e, t, r) => (Va(e, t, "read from private field"), r ? r.call(e) : t.get(e)), wr = (e, t, r) => t.has(e) ? Ia("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, r), Cr = (e, t, r, i) => (Va(e, t, "write to private field"), i ? i.call(e, r) : t.set(e, r), r);
8var Za = Array.isArray, Pn = Array.prototype.indexOf, zn = Array.from, Xt = Object.keys, St = Object.defineProperty, Qe = Object.getOwnPropertyDescriptor, Nn = Object.getOwnPropertyDescriptors, Dn = Object.prototype, qn = Array.prototype, Ga = Object.getPrototypeOf, Ra = Object.isExtensible;
9const bt = () => {
10};
11function Ya(e) {
12  for (var t = 0; t < e.length; t++)
13    e[t]();
14}
15function On(e, t, r = !1) {
16  return e === void 0 ? r ? (
17    /** @type {() => V} */
18    t()
19  ) : (
20    /** @type {V} */
21    t
22  ) : e;
23}
24const ke = 2, Wa = 4, nr = 8, zr = 16, Pe = 32, rt = 64, Qt = 128, he = 256, er = 512, fe = 1024, Se = 2048, at = 4096, mt = 8192, or = 16384, Hn = 32768, Nr = 65536, Fn = 1 << 19, Ka = 1 << 20, Tr = 1 << 21, jt = Symbol("$state"), Ja = Symbol("legacy props"), Mn = Symbol(""), Bn = typeof requestIdleCallback > "u" ? (e) => setTimeout(e, 1) : requestIdleCallback;
25let Pt = [], zt = [];
26function Xa() {
27  var e = Pt;
28  Pt = [], Ya(e);
29}
30function Qa() {
31  var e = zt;
32  zt = [], Ya(e);
33}
34function Dr(e) {
35  Pt.length === 0 && queueMicrotask(Xa), Pt.push(e);
36}
37function Un(e) {
38  zt.length === 0 && Bn(Qa), zt.push(e);
39}
40function Zn() {
41  Pt.length > 0 && Xa(), zt.length > 0 && Qa();
42}
43function ei(e) {
44  return e === this.v;
45}
46function ti(e, t) {
47  return e != e ? t == t : e !== t || e !== null && typeof e == "object" || typeof e == "function";
48}
49function qr(e) {
50  return !ti(e, this.v);
51}
52function Gn(e) {
53  throw new Error("https://svelte.dev/e/effect_in_teardown");
54}
55function Yn() {
56  throw new Error("https://svelte.dev/e/effect_in_unowned_derived");
57}
58function Wn(e) {
59  throw new Error("https://svelte.dev/e/effect_orphan");
60}
61function Kn() {
62  throw new Error("https://svelte.dev/e/effect_update_depth_exceeded");
63}
64function Jn() {
65  throw new Error("https://svelte.dev/e/hydration_failed");
66}
67function Xn(e) {
68  throw new Error("https://svelte.dev/e/props_invalid_value");
69}
70function Qn() {
71  throw new Error("https://svelte.dev/e/state_descriptors_fixed");
72}
73function eo() {
74  throw new Error("https://svelte.dev/e/state_prototype_fixed");
75}
76function to() {
77  throw new Error("https://svelte.dev/e/state_unsafe_mutation");
78}
79const ro = 1, ao = 4, io = 8, no = 16, oo = 1, lo = 2, Or = "[", ri = "[!", ai = "]", pt = {}, ue = Symbol(), so = "http://www.w3.org/1999/xhtml";
80function ii(e) {
81  throw new Error("https://svelte.dev/e/lifecycle_outside_component");
82}
83let ie = null;
84function ja(e) {
85  ie = e;
86}
87function ni(e, t = !1, r) {
88  var i = ie = {
89    p: ie,
90    c: null,
91    d: !1,
92    e: null,
93    m: !1,
94    s: e,
95    x: null,
96    l: null
97  };
98  Mr(() => {
99    i.d = !0;
100  });
101}
102function oi(e) {
103  const t = ie;
104  if (t !== null) {
105    e !== void 0 && (t.x = e);
106    const u = t.e;
107    if (u !== null) {
108      var r = $, i = j;
109      t.e = null;
110      try {
111        for (var o = 0; o < u.length; o++) {
112          var n = u[o];
113          Ue(n.effect), Ve(n.reaction), Br(n.fn);
114        }
115      } finally {
116        Ue(r), Ve(i);
117      }
118    }
119    ie = t.p, t.m = !0;
120  }
121  return e || /** @type {T} */
122  {};
123}
124function li() {
125  return !0;
126}
127function Fe(e) {
128  if (typeof e != "object" || e === null || jt in e)
129    return e;
130  const t = Ga(e);
131  if (t !== Dn && t !== qn)
132    return e;
133  var r = /* @__PURE__ */ new Map(), i = Za(e), o = /* @__PURE__ */ D(0), n = j, u = (s) => {
134    var c = j;
135    Ve(n);
136    var d = s();
137    return Ve(c), d;
138  };
139  return i && r.set("length", /* @__PURE__ */ D(
140    /** @type {any[]} */
141    e.length
142  )), new Proxy(
143    /** @type {any} */
144    e,
145    {
146      defineProperty(s, c, d) {
147        (!("value" in d) || d.configurable === !1 || d.enumerable === !1 || d.writable === !1) && Qn();
148        var p = r.get(c);
149        return p === void 0 ? (p = u(() => /* @__PURE__ */ D(d.value)), r.set(c, p)) : y(
150          p,
151          u(() => Fe(d.value))
152        ), !0;
153      },
154      deleteProperty(s, c) {
155        var d = r.get(c);
156        if (d === void 0)
157          c in s && (r.set(
158            c,
159            u(() => /* @__PURE__ */ D(ue))
160          ), Lr(o));
161        else {
162          if (i && typeof c == "string") {
163            var p = (
164              /** @type {Source<number>} */
165              r.get("length")
166            ), h = Number(c);
167            Number.isInteger(h) && h < p.v && y(p, h);
168          }
169          y(d, ue), Lr(o);
170        }
171        return !0;
172      },
173      get(s, c, d) {
174        var k;
175        if (c === jt)
176          return e;
177        var p = r.get(c), h = c in s;
178        if (p === void 0 && (!h || (k = Qe(s, c)) != null && k.writable) && (p = u(() => /* @__PURE__ */ D(Fe(h ? s[c] : ue))), r.set(c, p)), p !== void 0) {
179          var v = l(p);
180          return v === ue ? void 0 : v;
181        }
182        return Reflect.get(s, c, d);
183      },
184      getOwnPropertyDescriptor(s, c) {
185        var d = Reflect.getOwnPropertyDescriptor(s, c);
186        if (d && "value" in d) {
187          var p = r.get(c);
188          p && (d.value = l(p));
189        } else if (d === void 0) {
190          var h = r.get(c), v = h == null ? void 0 : h.v;
191          if (h !== void 0 && v !== ue)
192            return {
193              enumerable: !0,
194              configurable: !0,
195              value: v,
196              writable: !0
197            };
198        }
199        return d;
200      },
201      has(s, c) {
202        var v;
203        if (c === jt)
204          return !0;
205        var d = r.get(c), p = d !== void 0 && d.v !== ue || Reflect.has(s, c);
206        if (d !== void 0 || $ !== null && (!p || (v = Qe(s, c)) != null && v.writable)) {
207          d === void 0 && (d = u(() => /* @__PURE__ */ D(p ? Fe(s[c]) : ue)), r.set(c, d));
208          var h = l(d);
209          if (h === ue)
210            return !1;
211        }
212        return p;
213      },
214      set(s, c, d, p) {
215        var K;
216        var h = r.get(c), v = c in s;
217        if (i && c === "length")
218          for (var k = d; k < /** @type {Source<number>} */
219          h.v; k += 1) {
220            var V = r.get(k + "");
221            V !== void 0 ? y(V, ue) : k in s && (V = u(() => /* @__PURE__ */ D(ue)), r.set(k + "", V));
222          }
223        h === void 0 ? (!v || (K = Qe(s, c)) != null && K.writable) && (h = u(() => /* @__PURE__ */ D(void 0)), y(
224          h,
225          u(() => Fe(d))
226        ), r.set(c, h)) : (v = h.v !== ue, y(
227          h,
228          u(() => Fe(d))
229        ));
230        var _ = Reflect.getOwnPropertyDescriptor(s, c);
231        if (_ != null && _.set && _.set.call(p, d), !v) {
232          if (i && typeof c == "string") {
233            var q = (
234              /** @type {Source<number>} */
235              r.get("length")
236            ), ce = Number(c);
237            Number.isInteger(ce) && ce >= q.v && y(q, ce + 1);
238          }
239          Lr(o);
240        }
241        return !0;
242      },
243      ownKeys(s) {
244        l(o);
245        var c = Reflect.ownKeys(s).filter((h) => {
246          var v = r.get(h);
247          return v === void 0 || v.v !== ue;
248        });
249        for (var [d, p] of r)
250          p.v !== ue && !(d in s) && c.push(d);
251        return c;
252      },
253      setPrototypeOf() {
254        eo();
255      }
256    }
257  );
258}
259function Lr(e, t = 1) {
260  y(e, e.v + t);
261}
262// @__NO_SIDE_EFFECTS__
263function lr(e) {
264  var t = ke | Se, r = j !== null && (j.f & ke) !== 0 ? (
265    /** @type {Derived} */
266    j
267  ) : null;
268  return $ === null || r !== null && (r.f & he) !== 0 ? t |= he : $.f |= Ka, {
269    ctx: ie,
270    deps: null,
271    effects: null,
272    equals: ei,
273    f: t,
274    fn: e,
275    reactions: null,
276    rv: 0,
277    v: (
278      /** @type {V} */
279      null
280    ),
281    wv: 0,
282    parent: r ?? $
283  };
284}
285// @__NO_SIDE_EFFECTS__
286function It(e) {
287  const t = /* @__PURE__ */ lr(e);
288  return bi(t), t;
289}
290// @__NO_SIDE_EFFECTS__
291function uo(e) {
292  const t = /* @__PURE__ */ lr(e);
293  return t.equals = qr, t;
294}
295function si(e) {
296  var t = e.effects;
297  if (t !== null) {
298    e.effects = null;
299    for (var r = 0; r < t.length; r += 1)
300      Ze(
301        /** @type {Effect} */
302        t[r]
303      );
304  }
305}
306function fo(e) {
307  for (var t = e.parent; t !== null; ) {
308    if ((t.f & ke) === 0)
309      return (
310        /** @type {Effect} */
311        t
312      );
313    t = t.parent;
314  }
315  return null;
316}
317function ui(e) {
318  var t, r = $;
319  Ue(fo(e));
320  try {
321    si(e), t = Ai(e);
322  } finally {
323    Ue(r);
324  }
325  return t;
326}
327function fi(e) {
328  var t = ui(e), r = (Me || (e.f & he) !== 0) && e.deps !== null ? at : fe;
329  _e(e, r), e.equals(t) || (e.v = t, e.wv = mi());
330}
331const Nt = /* @__PURE__ */ new Map();
332function ci(e, t) {
333  var r = {
334    f: 0,
335    // TODO ideally we could skip this altogether, but it causes type errors
336    v: e,
337    reactions: null,
338    equals: ei,
339    rv: 0,
340    wv: 0
341  };
342  return r;
343}
344// @__NO_SIDE_EFFECTS__
345function D(e, t) {
346  const r = ci(e);
347  return bi(r), r;
348}
349// @__NO_SIDE_EFFECTS__
350function Hr(e, t = !1) {
351  const r = ci(e);
352  return t || (r.equals = qr), r;
353}
354function y(e, t, r = !1) {
355  j !== null && !Te && li() && (j.f & (ke | zr)) !== 0 && !(ne != null && ne.includes(e)) && to();
356  let i = r ? Fe(t) : t;
357  return co(e, i);
358}
359function co(e, t) {
360  if (!e.equals(t)) {
361    var r = e.v;
362    Dt ? Nt.set(e, t) : Nt.set(e, r), e.v = t, (e.f & ke) !== 0 && ((e.f & Se) !== 0 && ui(
363      /** @type {Derived} */
364      e
365    ), _e(e, (e.f & he) === 0 ? fe : at)), e.wv = mi(), di(e, Se), $ !== null && ($.f & fe) !== 0 && ($.f & (Pe | rt)) === 0 && (ve === null ? vo([e]) : ve.push(e));
366  }
367  return t;
368}
369function di(e, t) {
370  var r = e.reactions;
371  if (r !== null)
372    for (var i = r.length, o = 0; o < i; o++) {
373      var n = r[o], u = n.f;
374      (u & Se) === 0 && (_e(n, t), (u & (fe | he)) !== 0 && ((u & ke) !== 0 ? di(
375        /** @type {Derived} */
376        n,
377        at
378      ) : cr(
379        /** @type {Effect} */
380        n
381      )));
382    }
383}
384function sr(e) {
385  console.warn("https://svelte.dev/e/hydration_mismatch");
386}
387let N = !1;
388function vt(e) {
389  N = e;
390}
391let z;
392function Be(e) {
393  if (e === null)
394    throw sr(), pt;
395  return z = e;
396}
397function yt() {
398  return Be(
399    /** @type {TemplateNode} */
400    /* @__PURE__ */ Ge(z)
401  );
402}
403function Z(e) {
404  if (N) {
405    if (/* @__PURE__ */ Ge(z) !== null)
406      throw sr(), pt;
407    z = e;
408  }
409}
410function ho() {
411  for (var e = 0, t = z; ; ) {
412    if (t.nodeType === 8) {
413      var r = (
414        /** @type {Comment} */
415        t.data
416      );
417      if (r === ai) {
418        if (e === 0) return t;
419        e -= 1;
420      } else (r === Or || r === ri) && (e += 1);
421    }
422    var i = (
423      /** @type {TemplateNode} */
424      /* @__PURE__ */ Ge(t)
425    );
426    t.remove(), t = i;
427  }
428}
429var $a, hi, gi, vi;
430function Ir() {
431  if ($a === void 0) {
432    $a = window, hi = /Firefox/.test(navigator.userAgent);
433    var e = Element.prototype, t = Node.prototype, r = Text.prototype;
434    gi = Qe(t, "firstChild").get, vi = Qe(t, "nextSibling").get, Ra(e) && (e.__click = void 0, e.__className = void 0, e.__attributes = null, e.__style = void 0, e.__e = void 0), Ra(r) && (r.__t = void 0);
435  }
436}
437function ur(e = "") {
438  return document.createTextNode(e);
439}
440// @__NO_SIDE_EFFECTS__
441function pe(e) {
442  return gi.call(e);
443}
444// @__NO_SIDE_EFFECTS__
445function Ge(e) {
446  return vi.call(e);
447}
448function G(e, t) {
449  if (!N)
450    return /* @__PURE__ */ pe(e);
451  var r = (
452    /** @type {TemplateNode} */
453    /* @__PURE__ */ pe(z)
454  );
455  return r === null && (r = z.appendChild(ur())), Be(r), r;
456}
457function Vt(e, t) {
458  if (!N) {
459    var r = (
460      /** @type {DocumentFragment} */
461      /* @__PURE__ */ pe(
462        /** @type {Node} */
463        e
464      )
465    );
466    return r instanceof Comment && r.data === "" ? /* @__PURE__ */ Ge(r) : r;
467  }
468  return z;
469}
470function Y(e, t = 1, r = !1) {
471  let i = N ? z : e;
472  for (var o; t--; )
473    o = i, i = /** @type {TemplateNode} */
474    /* @__PURE__ */ Ge(i);
475  if (!N)
476    return i;
477  var n = i == null ? void 0 : i.nodeType;
478  if (r && n !== 3) {
479    var u = ur();
480    return i === null ? o == null || o.after(u) : i.before(u), Be(u), u;
481  }
482  return Be(i), /** @type {TemplateNode} */
483  i;
484}
485function go(e) {
486  e.textContent = "";
487}
488let Wt = !1, tr = !1, rr = null, et = !1, Dt = !1;
489function Sa(e) {
490  Dt = e;
491}
492let $t = [];
493let j = null, Te = !1;
494function Ve(e) {
495  j = e;
496}
497let $ = null;
498function Ue(e) {
499  $ = e;
500}
501let ne = null;
502function bi(e) {
503  j !== null && j.f & Tr && (ne === null ? ne = [e] : ne.push(e));
504}
505let ae = null, de = 0, ve = null;
506function vo(e) {
507  ve = e;
508}
509let pi = 1, ar = 0, Me = !1;
510function mi() {
511  return ++pi;
512}
513function qt(e) {
514  var h;
515  var t = e.f;
516  if ((t & Se) !== 0)
517    return !0;
518  if ((t & at) !== 0) {
519    var r = e.deps, i = (t & he) !== 0;
520    if (r !== null) {
521      var o, n, u = (t & er) !== 0, s = i && $ !== null && !Me, c = r.length;
522      if (u || s) {
523        var d = (
524          /** @type {Derived} */
525          e
526        ), p = d.parent;
527        for (o = 0; o < c; o++)
528          n = r[o], (u || !((h = n == null ? void 0 : n.reactions) != null && h.includes(d))) && (n.reactions ?? (n.reactions = [])).push(d);
529        u && (d.f ^= er), s && p !== null && (p.f & he) === 0 && (d.f ^= he);
530      }
531      for (o = 0; o < c; o++)
532        if (n = r[o], qt(
533          /** @type {Derived} */
534          n
535        ) && fi(
536          /** @type {Derived} */
537          n
538        ), n.wv > e.wv)
539          return !0;
540    }
541    (!i || $ !== null && !Me) && _e(e, fe);
542  }
543  return !1;
544}
545function bo(e, t) {
546  for (var r = t; r !== null; ) {
547    if ((r.f & Qt) !== 0)
548      try {
549        r.fn(e);
550        return;
551      } catch {
552        r.f ^= Qt;
553      }
554    r = r.parent;
555  }
556  throw Wt = !1, e;
557}
558function Pa(e) {
559  return (e.f & or) === 0 && (e.parent === null || (e.parent.f & Qt) === 0);
560}
561function fr(e, t, r, i) {
562  if (Wt) {
563    if (r === null && (Wt = !1), Pa(t))
564      throw e;
565    return;
566  }
567  if (r !== null && (Wt = !0), bo(e, t), Pa(t))
568    throw e;
569}
570function yi(e, t, r = !0) {
571  var i = e.reactions;
572  if (i !== null)
573    for (var o = 0; o < i.length; o++) {
574      var n = i[o];
575      ne != null && ne.includes(e) || ((n.f & ke) !== 0 ? yi(
576        /** @type {Derived} */
577        n,
578        t,
579        !1
580      ) : t === n && (r ? _e(n, Se) : (n.f & fe) !== 0 && _e(n, at), cr(
581        /** @type {Effect} */
582        n
583      )));
584    }
585}
586function Ai(e) {
587  var k;
588  var t = ae, r = de, i = ve, o = j, n = Me, u = ne, s = ie, c = Te, d = e.f;
589  ae = /** @type {null | Value[]} */
590  null, de = 0, ve = null, Me = (d & he) !== 0 && (Te || !et || j === null), j = (d & (Pe | rt)) === 0 ? e : null, ne = null, ja(e.ctx), Te = !1, ar++, e.f |= Tr;
591  try {
592    var p = (
593      /** @type {Function} */
594      (0, e.fn)()
595    ), h = e.deps;
596    if (ae !== null) {
597      var v;
598      if (ir(e, de), h !== null && de > 0)
599        for (h.length = de + ae.length, v = 0; v < ae.length; v++)
600          h[de + v] = ae[v];
601      else
602        e.deps = h = ae;
603      if (!Me)
604        for (v = de; v < h.length; v++)
605          ((k = h[v]).reactions ?? (k.reactions = [])).push(e);
606    } else h !== null && de < h.length && (ir(e, de), h.length = de);
607    if (li() && ve !== null && !Te && h !== null && (e.f & (ke | at | Se)) === 0)
608      for (v = 0; v < /** @type {Source[]} */
609      ve.length; v++)
610        yi(
611          ve[v],
612          /** @type {Effect} */
613          e
614        );
615    return o !== null && o !== e && (ar++, ve !== null && (i === null ? i = ve : i.push(.../** @type {Source[]} */
616    ve))), p;
617  } finally {
618    ae = t, de = r, ve = i, j = o, Me = n, ne = u, ja(s), Te = c, e.f ^= Tr;
619  }
620}
621function po(e, t) {
622  let r = t.reactions;
623  if (r !== null) {
624    var i = Pn.call(r, e);
625    if (i !== -1) {
626      var o = r.length - 1;
627      o === 0 ? r = t.reactions = null : (r[i] = r[o], r.pop());
628    }
629  }
630  r === null && (t.f & ke) !== 0 && // Destroying a child effect while updating a parent effect can cause a dependency to appear
631  // to be unused, when in fact it is used by the currently-updating parent. Checking `new_deps`
632  // allows us to skip the expensive work of disconnecting and immediately reconnecting it
633  (ae === null || !ae.includes(t)) && (_e(t, at), (t.f & (he | er)) === 0 && (t.f ^= er), si(
634    /** @type {Derived} **/
635    t
636  ), ir(
637    /** @type {Derived} **/
638    t,
639    0
640  ));
641}
642function ir(e, t) {
643  var r = e.deps;
644  if (r !== null)
645    for (var i = t; i < r.length; i++)
646      po(e, r[i]);
647}
648function Fr(e) {
649  var t = e.f;
650  if ((t & or) === 0) {
651    _e(e, fe);
652    var r = $, i = ie, o = et;
653    $ = e, et = !0;
654    try {
655      (t & zr) !== 0 ? Eo(e) : Ci(e), wi(e);
656      var n = Ai(e);
657      e.teardown = typeof n == "function" ? n : null, e.wv = pi;
658      var u = e.deps, s;
659    } catch (c) {
660      fr(c, e, r, i || e.ctx);
661    } finally {
662      et = o, $ = r;
663    }
664  }
665}
666function mo() {
667  try {
668    Kn();
669  } catch (e) {
670    if (rr !== null)
671      fr(e, rr, null);
672    else
673      throw e;
674  }
675}
676function ki() {
677  var e = et;
678  try {
679    var t = 0;
680    for (et = !0; $t.length > 0; ) {
681      t++ > 1e3 && mo();
682      var r = $t, i = r.length;
683      $t = [];
684      for (var o = 0; o < i; o++) {
685        var n = Ao(r[o]);
686        yo(n);
687      }
688      Nt.clear();
689    }
690  } finally {
691    tr = !1, et = e, rr = null;
692  }
693}
694function yo(e) {
695  var t = e.length;
696  if (t !== 0)
697    for (var r = 0; r < t; r++) {
698      var i = e[r];
699      if ((i.f & (or | mt)) === 0)
700        try {
701          qt(i) && (Fr(i), i.deps === null && i.first === null && i.nodes_start === null && (i.teardown === null ? Ei(i) : i.fn = null));
702        } catch (o) {
703          fr(o, i, null, i.ctx);
704        }
705    }
706}
707function cr(e) {
708  tr || (tr = !0, queueMicrotask(ki));
709  for (var t = rr = e; t.parent !== null; ) {
710    t = t.parent;
711    var r = t.f;
712    if ((r & (rt | Pe)) !== 0) {
713      if ((r & fe) === 0) return;
714      t.f ^= fe;
715    }
716  }
717  $t.push(t);
718}
719function Ao(e) {
720  for (var t = [], r = e; r !== null; ) {
721    var i = r.f, o = (i & (Pe | rt)) !== 0, n = o && (i & fe) !== 0;
722    if (!n && (i & mt) === 0) {
723      if ((i & Wa) !== 0)
724        t.push(r);
725      else if (o)
726        r.f ^= fe;
727      else
728        try {
729          qt(r) && Fr(r);
730        } catch (c) {
731          fr(c, r, null, r.ctx);
732        }
733      var u = r.first;
734      if (u !== null) {
735        r = u;
736        continue;
737      }
738    }
739    var s = r.parent;
740    for (r = r.next; r === null && s !== null; )
741      r = s.next, s = s.parent;
742  }
743  return t;
744}
745function E(e) {
746  for (var t; ; ) {
747    if (Zn(), $t.length === 0)
748      return (
749        /** @type {T} */
750        t
751      );
752    tr = !0, ki();
753  }
754}
755async function Er() {
756  await Promise.resolve(), E();
757}
758function l(e) {
759  var t = e.f, r = (t & ke) !== 0;
760  if (j !== null && !Te) {
761    if (!(ne != null && ne.includes(e))) {
762      var i = j.deps;
763      e.rv < ar && (e.rv = ar, ae === null && i !== null && i[de] === e ? de++ : ae === null ? ae = [e] : (!Me || !ae.includes(e)) && ae.push(e));
764    }
765  } else if (r && /** @type {Derived} */
766  e.deps === null && /** @type {Derived} */
767  e.effects === null) {
768    var o = (
769      /** @type {Derived} */
770      e
771    ), n = o.parent;
772    n !== null && (n.f & he) === 0 && (o.f ^= he);
773  }
774  return r && (o = /** @type {Derived} */
775  e, qt(o) && fi(o)), Dt && Nt.has(e) ? Nt.get(e) : e.v;
776}
777function tt(e) {
778  var t = Te;
779  try {
780    return Te = !0, e();
781  } finally {
782    Te = t;
783  }
784}
785const ko = -7169;
786function _e(e, t) {
787  e.f = e.f & ko | t;
788}
789function _o(e) {
790  $ === null && j === null && Wn(), j !== null && (j.f & he) !== 0 && $ === null && Yn(), Dt && Gn();
791}
792function wo(e, t) {
793  var r = t.last;
794  r === null ? t.last = t.first = e : (r.next = e, e.prev = r, t.last = e);
795}
796function it(e, t, r, i = !0) {
797  var o = $, n = {
798    ctx: ie,
799    deps: null,
800    nodes_start: null,
801    nodes_end: null,
802    f: e | Se,
803    first: null,
804    fn: t,
805    last: null,
806    next: null,
807    parent: o,
808    prev: null,
809    teardown: null,
810    transitions: null,
811    wv: 0
812  };
813  if (r)
814    try {
815      Fr(n), n.f |= Hn;
816    } catch (c) {
817      throw Ze(n), c;
818    }
819  else t !== null && cr(n);
820  var u = r && n.deps === null && n.first === null && n.nodes_start === null && n.teardown === null && (n.f & (Ka | Qt)) === 0;
821  if (!u && i && (o !== null && wo(n, o), j !== null && (j.f & ke) !== 0)) {
822    var s = (
823      /** @type {Derived} */
824      j
825    );
826    (s.effects ?? (s.effects = [])).push(n);
827  }
828  return n;
829}
830function Mr(e) {
831  const t = it(nr, null, !1);
832  return _e(t, fe), t.teardown = e, t;
833}
834function Vr(e) {
835  _o();
836  var t = $ !== null && ($.f & Pe) !== 0 && ie !== null && !ie.m;
837  if (t) {
838    var r = (
839      /** @type {ComponentContext} */
840      ie
841    );
842    (r.e ?? (r.e = [])).push({
843      fn: e,
844      effect: $,
845      reaction: j
846    });
847  } else {
848    var i = Br(e);
849    return i;
850  }
851}
852function Co(e) {
853  const t = it(rt, e, !0);
854  return () => {
855    Ze(t);
856  };
857}
858function Lo(e) {
859  const t = it(rt, e, !0);
860  return (r = {}) => new Promise((i) => {
861    r.outro ? jr(t, () => {
862      Ze(t), i(void 0);
863    }) : (Ze(t), i(void 0));
864  });
865}
866function Br(e) {
867  return it(Wa, e, !1);
868}
869function Ur(e) {
870  return it(nr, e, !0);
871}
872function xe(e, t = [], r = lr) {
873  const i = t.map(r);
874  return _i(() => e(...i.map(l)));
875}
876function _i(e, t = 0) {
877  return it(nr | zr | t, e, !0);
878}
879function Rr(e, t = !0) {
880  return it(nr | Pe, e, !0, t);
881}
882function wi(e) {
883  var t = e.teardown;
884  if (t !== null) {
885    const r = Dt, i = j;
886    Sa(!0), Ve(null);
887    try {
888      t.call(null);
889    } finally {
890      Sa(r), Ve(i);
891    }
892  }
893}
894function Ci(e, t = !1) {
895  var r = e.first;
896  for (e.first = e.last = null; r !== null; ) {
897    var i = r.next;
898    (r.f & rt) !== 0 ? r.parent = null : Ze(r, t), r = i;
899  }
900}
901function Eo(e) {
902  for (var t = e.first; t !== null; ) {
903    var r = t.next;
904    (t.f & Pe) === 0 && Ze(t), t = r;
905  }
906}
907function Ze(e, t = !0) {
908  var r = !1;
909  (t || (e.f & Fn) !== 0) && e.nodes_start !== null && (Li(
910    e.nodes_start,
911    /** @type {TemplateNode} */
912    e.nodes_end
913  ), r = !0), Ci(e, t && !r), ir(e, 0), _e(e, or);
914  var i = e.transitions;
915  if (i !== null)
916    for (const n of i)
917      n.stop();
918  wi(e);
919  var o = e.parent;
920  o !== null && o.first !== null && Ei(e), e.next = e.prev = e.teardown = e.ctx = e.deps = e.fn = e.nodes_start = e.nodes_end = null;
921}
922function Li(e, t) {
923  for (; e !== null; ) {
924    var r = e === t ? null : (
925      /** @type {TemplateNode} */
926      /* @__PURE__ */ Ge(e)
927    );
928    e.remove(), e = r;
929  }
930}
931function Ei(e) {
932  var t = e.parent, r = e.prev, i = e.next;
933  r !== null && (r.next = i), i !== null && (i.prev = r), t !== null && (t.first === e && (t.first = i), t.last === e && (t.last = r));
934}
935function jr(e, t) {
936  var r = [];
937  xi(e, r, !0), xo(r, () => {
938    Ze(e), t && t();
939  });
940}
941function xo(e, t) {
942  var r = e.length;
943  if (r > 0) {
944    var i = () => --r || t();
945    for (var o of e)
946      o.out(i);
947  } else
948    t();
949}
950function xi(e, t, r) {
951  if ((e.f & mt) === 0) {
952    if (e.f ^= mt, e.transitions !== null)
953      for (const u of e.transitions)
954        (u.is_global || r) && t.push(u);
955    for (var i = e.first; i !== null; ) {
956      var o = i.next, n = (i.f & Nr) !== 0 || (i.f & Pe) !== 0;
957      xi(i, t, n ? r : !1), i = o;
958    }
959  }
960}
961function za(e) {
962  Ti(e, !0);
963}
964function Ti(e, t) {
965  if ((e.f & mt) !== 0) {
966    e.f ^= mt, (e.f & fe) === 0 && (e.f ^= fe), qt(e) && (_e(e, Se), cr(e));
967    for (var r = e.first; r !== null; ) {
968      var i = r.next, o = (r.f & Nr) !== 0 || (r.f & Pe) !== 0;
969      Ti(r, o ? t : !1), r = i;
970    }
971    if (e.transitions !== null)
972      for (const n of e.transitions)
973        (n.is_global || t) && n.in();
974  }
975}
976const To = ["touchstart", "touchmove"];
977function Io(e) {
978  return To.includes(e);
979}
980function Vo(e, t) {
981  if (t) {
982    const r = document.body;
983    e.autofocus = !0, Dr(() => {
984      document.activeElement === r && e.focus();
985    });
986  }
987}
988let Na = !1;
989function Ii() {
990  Na || (Na = !0, document.addEventListener(
991    "reset",
992    (e) => {
993      Promise.resolve().then(() => {
994        var t;
995        if (!e.defaultPrevented)
996          for (
997            const r of
998            /**@type {HTMLFormElement} */
999            e.target.elements
1000          )
1001            (t = r.__on_r) == null || t.call(r);
1002      });
1003    },
1004    // In the capture phase to guarantee we get noticed of it (no possiblity of stopPropagation)
1005    { capture: !0 }
1006  ));
1007}
1008function Vi(e) {
1009  var t = j, r = $;
1010  Ve(null), Ue(null);
1011  try {
1012    return e();
1013  } finally {
1014    Ve(t), Ue(r);
1015  }
1016}
1017function Ro(e, t, r, i = r) {
1018  e.addEventListener(t, () => Vi(r));
1019  const o = e.__on_r;
1020  o ? e.__on_r = () => {
1021    o(), i(!0);
1022  } : e.__on_r = () => i(!0), Ii();
1023}
1024const Ri = /* @__PURE__ */ new Set(), $r = /* @__PURE__ */ new Set();
1025function jo(e, t, r, i = {}) {
1026  function o(n) {
1027    if (i.capture || Rt.call(t, n), !n.cancelBubble)
1028      return Vi(() => r == null ? void 0 : r.call(this, n));
1029  }
1030  return e.startsWith("pointer") || e.startsWith("touch") || e === "wheel" ? Dr(() => {
1031    t.addEventListener(e, o, i);
1032  }) : t.addEventListener(e, o, i), o;
1033}
1034function He(e, t, r, i, o) {
1035  var n = { capture: i, passive: o }, u = jo(e, t, r, n);
1036  (t === document.body || t === window || t === document) && Mr(() => {
1037    t.removeEventListener(e, u, n);
1038  });
1039}
1040function $o(e) {
1041  for (var t = 0; t < e.length; t++)
1042    Ri.add(e[t]);
1043  for (var r of $r)
1044    r(e);
1045}
1046function Rt(e) {
1047  var K;
1048  var t = this, r = (
1049    /** @type {Node} */
1050    t.ownerDocument
1051  ), i = e.type, o = ((K = e.composedPath) == null ? void 0 : K.call(e)) || [], n = (
1052    /** @type {null | Element} */
1053    o[0] || e.target
1054  ), u = 0, s = e.__root;
1055  if (s) {
1056    var c = o.indexOf(s);
1057    if (c !== -1 && (t === document || t === /** @type {any} */
1058    window)) {
1059      e.__root = t;
1060      return;
1061    }
1062    var d = o.indexOf(t);
1063    if (d === -1)
1064      return;
1065    c <= d && (u = c);
1066  }
1067  if (n = /** @type {Element} */
1068  o[u] || e.target, n !== t) {
1069    St(e, "currentTarget", {
1070      configurable: !0,
1071      get() {
1072        return n || r;
1073      }
1074    });
1075    var p = j, h = $;
1076    Ve(null), Ue(null);
1077    try {
1078      for (var v, k = []; n !== null; ) {
1079        var V = n.assignedSlot || n.parentNode || /** @type {any} */
1080        n.host || null;
1081        try {
1082          var _ = n["__" + i];
1083          if (_ != null && (!/** @type {any} */
1084          n.disabled || // DOM could've been updated already by the time this is reached, so we check this as well
1085          // -> the target could not have been disabled because it emits the event in the first place
1086          e.target === n))
1087            if (Za(_)) {
1088              var [q, ...ce] = _;
1089              q.apply(n, [e, ...ce]);
1090            } else
1091              _.call(n, e);
1092        } catch (ee) {
1093          v ? k.push(ee) : v = ee;
1094        }
1095        if (e.cancelBubble || V === t || V === null)
1096          break;
1097        n = V;
1098      }
1099      if (v) {
1100        for (let ee of k)
1101          queueMicrotask(() => {
1102            throw ee;
1103          });
1104        throw v;
1105      }
1106    } finally {
1107      e.__root = t, delete e.currentTarget, Ve(p), Ue(h);
1108    }
1109  }
1110}
1111function Zr(e) {
1112  var t = document.createElement("template");
1113  return t.innerHTML = e, t.content;
1114}
1115function Ie(e, t) {
1116  var r = (
1117    /** @type {Effect} */
1118    $
1119  );
1120  r.nodes_start === null && (r.nodes_start = e, r.nodes_end = t);
1121}
1122// @__NO_SIDE_EFFECTS__
1123function we(e, t) {
1124  var r = (t & oo) !== 0, i = (t & lo) !== 0, o, n = !e.startsWith("<!>");
1125  return () => {
1126    if (N)
1127      return Ie(z, null), z;
1128    o === void 0 && (o = Zr(n ? e : "<!>" + e), r || (o = /** @type {Node} */
vendor: 1,586 bytes, lines 1129-1200
1129    /* @__PURE__ */ pe(o)));
1130    var u = (
1131      /** @type {TemplateNode} */
1132      i || hi ? document.importNode(o, !0) : o.cloneNode(!0)
1133    );
1134    if (r) {
1135      var s = (
1136        /** @type {TemplateNode} */
1137        /* @__PURE__ */ pe(u)
1138      ), c = (
1139        /** @type {TemplateNode} */
1140        u.lastChild
1141      );
1142      Ie(s, c);
1143    } else
1144      Ie(u, u);
1145    return u;
1146  };
1147}
1148// @__NO_SIDE_EFFECTS__
1149function dr(e, t, r = "svg") {
1150  var i = !e.startsWith("<!>"), o = `<${r}>${i ? e : "<!>" + e}</${r}>`, n;
1151  return () => {
1152    if (N)
1153      return Ie(z, null), z;
1154    if (!n) {
1155      var u = (
1156        /** @type {DocumentFragment} */
1157        Zr(o)
1158      ), s = (
1159        /** @type {Element} */
1160        /* @__PURE__ */ pe(u)
1161      );
1162      n = /** @type {Element} */
1163      /* @__PURE__ */ pe(s);
1164    }
1165    var c = (
1166      /** @type {TemplateNode} */
1167      n.cloneNode(!0)
1168    );
1169    return Ie(c, c), c;
1170  };
1171}
1172function Zt() {
1173  if (N)
1174    return Ie(z, null), z;
1175  var e = document.createDocumentFragment(), t = document.createComment(""), r = ur();
1176  return e.append(t, r), Ie(t, r), e;
1177}
1178function O(e, t) {
1179  if (N) {
1180    $.nodes_end = z, yt();
1181    return;
1182  }
1183  e !== null && e.before(
1184    /** @type {Node} */
1185    t
1186  );
1187}
1188function So(e, t) {
1189  var r = t == null ? "" : typeof t == "object" ? t + "" : t;
1190  r !== (e.__t ?? (e.__t = e.nodeValue)) && (e.__t = r, e.nodeValue = r + "");
1191}
1192function ji(e, t) {
1193  return $i(e, t);
1194}
1195function Po(e, t) {
1196  Ir(), t.intro = t.intro ?? !1;
1197  const r = t.target, i = N, o = z;
1198  try {
1199    for (var n = (
1200      /** @type {TemplateNode} */
vendor: 3,533 bytes, lines 1201-1327
1201      /* @__PURE__ */ pe(r)
1202    ); n && (n.nodeType !== 8 || /** @type {Comment} */
1203    n.data !== Or); )
1204      n = /** @type {TemplateNode} */
1205      /* @__PURE__ */ Ge(n);
1206    if (!n)
1207      throw pt;
1208    vt(!0), Be(
1209      /** @type {Comment} */
1210      n
1211    ), yt();
1212    const u = $i(e, { ...t, anchor: n });
1213    if (z === null || z.nodeType !== 8 || /** @type {Comment} */
1214    z.data !== ai)
1215      throw sr(), pt;
1216    return vt(!1), /**  @type {Exports} */
1217    u;
1218  } catch (u) {
1219    if (u === pt)
1220      return t.recover === !1 && Jn(), Ir(), go(r), vt(!1), ji(e, t);
1221    throw u;
1222  } finally {
1223    vt(i), Be(o);
1224  }
1225}
1226const ht = /* @__PURE__ */ new Map();
1227function $i(e, { target: t, anchor: r, props: i = {}, events: o, context: n, intro: u = !0 }) {
1228  Ir();
1229  var s = /* @__PURE__ */ new Set(), c = (h) => {
1230    for (var v = 0; v < h.length; v++) {
1231      var k = h[v];
1232      if (!s.has(k)) {
1233        s.add(k);
1234        var V = Io(k);
1235        t.addEventListener(k, Rt, { passive: V });
1236        var _ = ht.get(k);
1237        _ === void 0 ? (document.addEventListener(k, Rt, { passive: V }), ht.set(k, 1)) : ht.set(k, _ + 1);
1238      }
1239    }
1240  };
1241  c(zn(Ri)), $r.add(c);
1242  var d = void 0, p = Lo(() => {
1243    var h = r ?? t.appendChild(ur());
1244    return Rr(() => {
1245      if (n) {
1246        ni({});
1247        var v = (
1248          /** @type {ComponentContext} */
1249          ie
1250        );
1251        v.c = n;
1252      }
1253      o && (i.$$events = o), N && Ie(
1254        /** @type {TemplateNode} */
1255        h,
1256        null
1257      ), d = e(h, i) || {}, N && ($.nodes_end = z), n && oi();
1258    }), () => {
1259      var V;
1260      for (var v of s) {
1261        t.removeEventListener(v, Rt);
1262        var k = (
1263          /** @type {number} */
1264          ht.get(v)
1265        );
1266        --k === 0 ? (document.removeEventListener(v, Rt), ht.delete(v)) : ht.set(v, k);
1267      }
1268      $r.delete(c), h !== r && ((V = h.parentNode) == null || V.removeChild(h));
1269    };
1270  });
1271  return Sr.set(d, p), d;
1272}
1273let Sr = /* @__PURE__ */ new WeakMap();
1274function zo(e, t) {
1275  const r = Sr.get(e);
1276  return r ? (Sr.delete(e), r(t)) : Promise.resolve();
1277}
1278function W(e, t, [r, i] = [0, 0]) {
1279  N && r === 0 && yt();
1280  var o = e, n = null, u = null, s = ue, c = r > 0 ? Nr : 0, d = !1;
1281  const p = (v, k = !0) => {
1282    d = !0, h(k, v);
1283  }, h = (v, k) => {
1284    if (s === (s = v)) return;
1285    let V = !1;
1286    if (N && i !== -1) {
1287      if (r === 0) {
1288        const q = (
1289          /** @type {Comment} */
1290          o.data
1291        );
1292        q === Or ? i = 0 : q === ri ? i = 1 / 0 : (i = parseInt(q.substring(1)), i !== i && (i = s ? 1 / 0 : -1));
1293      }
1294      const _ = i > r;
1295      !!s === _ && (o = ho(), Be(o), vt(!1), V = !0, i = -1);
1296    }
1297    s ? (n ? za(n) : k && (n = Rr(() => k(o))), u && jr(u, () => {
1298      u = null;
1299    })) : (u ? za(u) : k && (u = Rr(() => k(o, [r + 1, i]))), n && jr(n, () => {
1300      n = null;
1301    })), V && vt(!0);
1302  };
1303  _i(() => {
1304    d = !1, t(p), d || h(null, null);
1305  }, c), N && (o = z);
1306}
1307function Xe(e, t, r = !1, i = !1, o = !1) {
1308  var n = e, u = "";
1309  xe(() => {
1310    var s = (
1311      /** @type {Effect} */
1312      $
1313    );
1314    if (u === (u = t() ?? "")) {
1315      N && yt();
1316      return;
1317    }
1318    if (s.nodes_start !== null && (Li(
1319      s.nodes_start,
1320      /** @type {TemplateNode} */
1321      s.nodes_end
1322    ), s.nodes_start = s.nodes_end = null), u !== "") {
1323      if (N) {
1324        z.data;
1325        for (var c = yt(), d = c; c !== null && (c.nodeType !== 8 || /** @type {Comment} */
1326        c.data !== ""); )
1327          d = c, c = /** @type {TemplateNode} */
vendor: 5,686 bytes, lines 1328-1535
1328          /* @__PURE__ */ Ge(c);
1329        if (c === null)
1330          throw sr(), pt;
1331        Ie(z, d), n = Be(c);
1332        return;
1333      }
1334      var p = u + "";
1335      r ? p = `<svg>${p}</svg>` : i && (p = `<math>${p}</math>`);
1336      var h = Zr(p);
1337      if ((r || i) && (h = /** @type {Element} */
1338      /* @__PURE__ */ pe(h)), Ie(
1339        /** @type {TemplateNode} */
1340        /* @__PURE__ */ pe(h),
1341        /** @type {TemplateNode} */
1342        h.lastChild
1343      ), r || i)
1344        for (; /* @__PURE__ */ pe(h); )
1345          n.before(
1346            /** @type {Node} */
1347            /* @__PURE__ */ pe(h)
1348          );
1349      else
1350        n.before(h);
1351    }
1352  });
1353}
1354function No(e, t, r, i, o) {
1355  var s;
1356  N && yt();
1357  var n = (s = t.$$slots) == null ? void 0 : s[r], u = !1;
1358  n === !0 && (n = t.children, u = !0), n === void 0 || n(e, u ? () => i : i);
1359}
1360const Da = [...` 	
1361\r\f \v\uFEFF`];
1362function Do(e, t, r) {
1363  var i = "" + e;
1364  if (r) {
1365    for (var o in r)
1366      if (r[o])
1367        i = i ? i + " " + o : o;
1368      else if (i.length)
1369        for (var n = o.length, u = 0; (u = i.indexOf(o, u)) >= 0; ) {
1370          var s = u + n;
1371          (u === 0 || Da.includes(i[u - 1])) && (s === i.length || Da.includes(i[s])) ? i = (u === 0 ? "" : i.substring(0, u)) + i.substring(s + 1) : u = s;
1372        }
1373  }
1374  return i === "" ? null : i;
1375}
1376function qo(e, t, r, i, o, n) {
1377  var u = e.__className;
1378  if (N || u !== r || u === void 0) {
1379    var s = Do(r, i, n);
1380    (!N || s !== e.getAttribute("class")) && (s == null ? e.removeAttribute("class") : e.className = s), e.__className = r;
1381  } else if (n && o !== n)
1382    for (var c in n) {
1383      var d = !!n[c];
1384      (o == null || d !== !!o[c]) && e.classList.toggle(c, d);
1385    }
1386  return n;
1387}
1388const Oo = Symbol("is custom element"), Ho = Symbol("is html");
1389function qa(e) {
1390  if (N) {
1391    var t = !1, r = () => {
1392      if (!t) {
1393        if (t = !0, e.hasAttribute("value")) {
1394          var i = e.value;
1395          R(e, "value", null), e.value = i;
1396        }
1397        if (e.hasAttribute("checked")) {
1398          var o = e.checked;
1399          R(e, "checked", null), e.checked = o;
1400        }
1401      }
1402    };
1403    e.__on_r = r, Un(r), Ii();
1404  }
1405}
1406function Fo(e, t) {
1407  var r = Si(e);
1408  r.value === (r.value = // treat null and undefined the same for the initial value
1409  t ?? void 0) || // @ts-expect-error
1410  // `progress` elements always need their value set when it's `0`
1411  e.value === t && (t !== 0 || e.nodeName !== "PROGRESS") || (e.value = t ?? "");
1412}
1413function R(e, t, r, i) {
1414  var o = Si(e);
1415  N && (o[t] = e.getAttribute(t), t === "src" || t === "srcset" || t === "href" && e.nodeName === "LINK") || o[t] !== (o[t] = r) && (t === "loading" && (e[Mn] = r), r == null ? e.removeAttribute(t) : typeof r != "string" && Mo(e).includes(t) ? e[t] = r : e.setAttribute(t, r));
1416}
1417function Si(e) {
1418  return (
1419    /** @type {Record<string | symbol, unknown>} **/
1420    // @ts-expect-error
1421    e.__attributes ?? (e.__attributes = {
1422      [Oo]: e.nodeName.includes("-"),
1423      [Ho]: e.namespaceURI === so
1424    })
1425  );
1426}
1427var Oa = /* @__PURE__ */ new Map();
1428function Mo(e) {
1429  var t = Oa.get(e.nodeName);
1430  if (t) return t;
1431  Oa.set(e.nodeName, t = []);
1432  for (var r, i = e, o = Element.prototype; o !== i; ) {
1433    r = Nn(i);
1434    for (var n in r)
1435      r[n].set && t.push(n);
1436    i = Ga(i);
1437  }
1438  return t;
1439}
1440function Bo(e, t, r = t) {
1441  Ro(e, "change", (i) => {
1442    var o = i ? e.defaultChecked : e.checked;
1443    r(o);
1444  }), // If we are hydrating and the value has since changed,
1445  // then use the update value from the input instead.
1446  (N && e.defaultChecked !== e.checked || // If defaultChecked is set, then checked == defaultChecked
1447  tt(t) == null) && r(e.checked), Ur(() => {
1448    var i = t();
1449    e.checked = !!i;
1450  });
1451}
1452function Ha(e, t) {
1453  return e === t || (e == null ? void 0 : e[jt]) === t;
1454}
1455function Gt(e = {}, t, r, i) {
1456  return Br(() => {
1457    var o, n;
1458    return Ur(() => {
1459      o = n, n = [], tt(() => {
1460        e !== r(...n) && (t(e, ...n), o && Ha(r(...o), e) && t(null, ...o));
1461      });
1462    }), () => {
1463      Dr(() => {
1464        n && Ha(r(...n), e) && t(null, ...n);
1465      });
1466    };
1467  }), e;
1468}
1469let Yt = !1, Pr = Symbol();
1470function Uo(e, t, r) {
1471  const i = r[t] ?? (r[t] = {
1472    store: null,
1473    source: /* @__PURE__ */ Hr(void 0),
1474    unsubscribe: bt
1475  });
1476  if (i.store !== e && !(Pr in r))
1477    if (i.unsubscribe(), i.store = e ?? null, e == null)
1478      i.source.v = void 0, i.unsubscribe = bt;
1479    else {
1480      var o = !0;
1481      i.unsubscribe = Ni(e, (n) => {
1482        o ? i.source.v = n : y(i.source, n);
1483      }), o = !1;
1484    }
1485  return e && Pr in r ? Jt(e) : l(i.source);
1486}
1487function Zo() {
1488  const e = {};
1489  function t() {
1490    Mr(() => {
1491      for (var r in e)
1492        e[r].unsubscribe();
1493      St(e, Pr, {
1494        enumerable: !1,
1495        value: !0
1496      });
1497    });
1498  }
1499  return [e, t];
1500}
1501function Go(e) {
1502  var t = Yt;
1503  try {
1504    return Yt = !1, [e(), Yt];
1505  } finally {
1506    Yt = t;
1507  }
1508}
1509function Fa(e) {
1510  var t;
1511  return ((t = e.ctx) == null ? void 0 : t.d) ?? !1;
1512}
1513function x(e, t, r, i) {
1514  var nt;
1515  var o = (r & ro) !== 0, n = !0, u = (r & io) !== 0, s = (r & no) !== 0, c = !1, d;
1516  u ? [d, c] = Go(() => (
1517    /** @type {V} */
1518    e[t]
1519  )) : d = /** @type {V} */
1520  e[t];
1521  var p = jt in e || Ja in e, h = u && (((nt = Qe(e, t)) == null ? void 0 : nt.set) ?? (p && t in e && ((H) => e[t] = H))) || void 0, v = (
1522    /** @type {V} */
1523    i
1524  ), k = !0, V = !1, _ = () => (V = !0, k && (k = !1, s ? v = tt(
1525    /** @type {() => V} */
1526    i
1527  ) : v = /** @type {V} */
1528  i), v);
1529  d === void 0 && i !== void 0 && (h && n && Xn(), d = _(), h && h(d));
1530  var q;
1531  if (q = () => {
1532    var H = (
1533      /** @type {V} */
1534      e[t]
1535    );
vendor: 7,231 bytes, lines 1536-1766
1536    return H === void 0 ? _() : (k = !0, V = !1, H);
1537  }, (r & ao) === 0)
1538    return q;
1539  if (h) {
1540    var ce = e.$$legacy;
1541    return function(H, oe) {
1542      return arguments.length > 0 ? ((!oe || ce || c) && h(oe ? q() : H), H) : q();
1543    };
1544  }
1545  var K = !1, ee = /* @__PURE__ */ Hr(d), J = /* @__PURE__ */ lr(() => {
1546    var H = q(), oe = l(ee);
1547    return K ? (K = !1, oe) : ee.v = H;
1548  });
1549  return u && l(J), o || (J.equals = qr), function(H, oe) {
1550    if (arguments.length > 0) {
1551      const me = oe ? l(J) : u ? Fe(H) : H;
1552      if (!J.equals(me)) {
1553        if (K = !0, y(ee, me), V && v !== void 0 && (v = me), Fa(J))
1554          return H;
1555        tt(() => l(J));
1556      }
1557      return H;
1558    }
1559    return Fa(J) ? J.v : l(J);
1560  };
1561}
1562function Yo(e) {
1563  return new Wo(e);
1564}
1565var $e, be;
1566class Wo {
1567  /**
1568   * @param {ComponentConstructorOptions & {
1569   *  component: any;
1570   * }} options
1571   */
1572  constructor(t) {
1573    /** @type {any} */
1574    wr(this, $e);
1575    /** @type {Record<string, any>} */
1576    wr(this, be);
1577    var n;
1578    var r = /* @__PURE__ */ new Map(), i = (u, s) => {
1579      var c = /* @__PURE__ */ Hr(s);
1580      return r.set(u, c), c;
1581    };
1582    const o = new Proxy(
1583      { ...t.props || {}, $$events: {} },
1584      {
1585        get(u, s) {
1586          return l(r.get(s) ?? i(s, Reflect.get(u, s)));
1587        },
1588        has(u, s) {
1589          return s === Ja ? !0 : (l(r.get(s) ?? i(s, Reflect.get(u, s))), Reflect.has(u, s));
1590        },
1591        set(u, s, c) {
1592          return y(r.get(s) ?? i(s, c), c), Reflect.set(u, s, c);
1593        }
1594      }
1595    );
1596    Cr(this, be, (t.hydrate ? Po : ji)(t.component, {
1597      target: t.target,
1598      anchor: t.anchor,
1599      props: o,
1600      context: t.context,
1601      intro: t.intro ?? !1,
1602      recover: t.recover
1603    })), (!((n = t == null ? void 0 : t.props) != null && n.$$host) || t.sync === !1) && E(), Cr(this, $e, o.$$events);
1604    for (const u of Object.keys(se(this, be)))
1605      u === "$set" || u === "$destroy" || u === "$on" || St(this, u, {
1606        get() {
1607          return se(this, be)[u];
1608        },
1609        /** @param {any} value */
1610        set(s) {
1611          se(this, be)[u] = s;
1612        },
1613        enumerable: !0
1614      });
1615    se(this, be).$set = /** @param {Record<string, any>} next */
1616    (u) => {
1617      Object.assign(o, u);
1618    }, se(this, be).$destroy = () => {
1619      zo(se(this, be));
1620    };
1621  }
1622  /** @param {Record<string, any>} props */
1623  $set(t) {
1624    se(this, be).$set(t);
1625  }
1626  /**
1627   * @param {string} event
1628   * @param {(...args: any[]) => any} callback
1629   * @returns {any}
1630   */
1631  $on(t, r) {
1632    se(this, $e)[t] = se(this, $e)[t] || [];
1633    const i = (...o) => r.call(this, ...o);
1634    return se(this, $e)[t].push(i), () => {
1635      se(this, $e)[t] = se(this, $e)[t].filter(
1636        /** @param {any} fn */
1637        (o) => o !== i
1638      );
1639    };
1640  }
1641  $destroy() {
1642    se(this, be).$destroy();
1643  }
1644}
1645$e = new WeakMap(), be = new WeakMap();
1646let Pi;
1647typeof HTMLElement == "function" && (Pi = class extends HTMLElement {
1648  /**
1649   * @param {*} $$componentCtor
1650   * @param {*} $$slots
1651   * @param {*} use_shadow_dom
1652   */
1653  constructor(t, r, i) {
1654    super();
1655    /** The Svelte component constructor */
1656    Ae(this, "$$ctor");
1657    /** Slots */
1658    Ae(this, "$$s");
1659    /** @type {any} The Svelte component instance */
1660    Ae(this, "$$c");
1661    /** Whether or not the custom element is connected */
1662    Ae(this, "$$cn", !1);
1663    /** @type {Record<string, any>} Component props data */
1664    Ae(this, "$$d", {});
1665    /** `true` if currently in the process of reflecting component props back to attributes */
1666    Ae(this, "$$r", !1);
1667    /** @type {Record<string, CustomElementPropDefinition>} Props definition (name, reflected, type etc) */
1668    Ae(this, "$$p_d", {});
1669    /** @type {Record<string, EventListenerOrEventListenerObject[]>} Event listeners */
1670    Ae(this, "$$l", {});
1671    /** @type {Map<EventListenerOrEventListenerObject, Function>} Event listener unsubscribe functions */
1672    Ae(this, "$$l_u", /* @__PURE__ */ new Map());
1673    /** @type {any} The managed render effect for reflecting attributes */
1674    Ae(this, "$$me");
1675    this.$$ctor = t, this.$$s = r, i && this.attachShadow({ mode: "open" });
1676  }
1677  /**
1678   * @param {string} type
1679   * @param {EventListenerOrEventListenerObject} listener
1680   * @param {boolean | AddEventListenerOptions} [options]
1681   */
1682  addEventListener(t, r, i) {
1683    if (this.$$l[t] = this.$$l[t] || [], this.$$l[t].push(r), this.$$c) {
1684      const o = this.$$c.$on(t, r);
1685      this.$$l_u.set(r, o);
1686    }
1687    super.addEventListener(t, r, i);
1688  }
1689  /**
1690   * @param {string} type
1691   * @param {EventListenerOrEventListenerObject} listener
1692   * @param {boolean | AddEventListenerOptions} [options]
1693   */
1694  removeEventListener(t, r, i) {
1695    if (super.removeEventListener(t, r, i), this.$$c) {
1696      const o = this.$$l_u.get(r);
1697      o && (o(), this.$$l_u.delete(r));
1698    }
1699  }
1700  async connectedCallback() {
1701    if (this.$$cn = !0, !this.$$c) {
1702      let t = function(o) {
1703        return (n) => {
1704          const u = document.createElement("slot");
1705          o !== "default" && (u.name = o), O(n, u);
1706        };
1707      };
1708      if (await Promise.resolve(), !this.$$cn || this.$$c)
1709        return;
1710      const r = {}, i = Ko(this);
1711      for (const o of this.$$s)
1712        o in i && (o === "default" && !this.$$d.children ? (this.$$d.children = t(o), r.default = !0) : r[o] = t(o));
1713      for (const o of this.attributes) {
1714        const n = this.$$g_p(o.name);
1715        n in this.$$d || (this.$$d[n] = Kt(n, o.value, this.$$p_d, "toProp"));
1716      }
1717      for (const o in this.$$p_d)
1718        !(o in this.$$d) && this[o] !== void 0 && (this.$$d[o] = this[o], delete this[o]);
1719      this.$$c = Yo({
1720        component: this.$$ctor,
1721        target: this.shadowRoot || this,
1722        props: {
1723          ...this.$$d,
1724          $$slots: r,
1725          $$host: this
1726        }
1727      }), this.$$me = Co(() => {
1728        Ur(() => {
1729          var o;
1730          this.$$r = !0;
1731          for (const n of Xt(this.$$c)) {
1732            if (!((o = this.$$p_d[n]) != null && o.reflect)) continue;
1733            this.$$d[n] = this.$$c[n];
1734            const u = Kt(
1735              n,
1736              this.$$d[n],
1737              this.$$p_d,
1738              "toAttribute"
1739            );
1740            u == null ? this.removeAttribute(this.$$p_d[n].attribute || n) : this.setAttribute(this.$$p_d[n].attribute || n, u);
1741          }
1742          this.$$r = !1;
1743        });
1744      });
1745      for (const o in this.$$l)
1746        for (const n of this.$$l[o]) {
1747          const u = this.$$c.$on(o, n);
1748          this.$$l_u.set(n, u);
1749        }
1750      this.$$l = {};
1751    }
1752  }
1753  // We don't need this when working within Svelte code, but for compatibility of people using this outside of Svelte
1754  // and setting attributes through setAttribute etc, this is helpful
1755  /**
1756   * @param {string} attr
1757   * @param {string} _oldValue
1758   * @param {string} newValue
1759   */
1760  attributeChangedCallback(t, r, i) {
1761    var o;
1762    this.$$r || (t = this.$$g_p(t), this.$$d[t] = Kt(t, i, this.$$p_d, "toProp"), (o = this.$$c) == null || o.$set({ [t]: this.$$d[t] }));
1763  }
1764  disconnectedCallback() {
1765    this.$$cn = !1, Promise.resolve().then(() => {
1766      !this.$$cn && this.$$c && (this.$$c.$destroy(), this.$$me(
vendor: 6,918 bytes, lines 1766-1993
1766), this.$$c = void 0);
1767    });
1768  }
1769  /**
1770   * @param {string} attribute_name
1771   */
1772  $$g_p(t) {
1773    return Xt(this.$$p_d).find(
1774      (r) => this.$$p_d[r].attribute === t || !this.$$p_d[r].attribute && r.toLowerCase() === t
1775    ) || t;
1776  }
1777});
1778function Kt(e, t, r, i) {
1779  var n;
1780  const o = (n = r[e]) == null ? void 0 : n.type;
1781  if (t = o === "Boolean" && typeof t != "boolean" ? t != null : t, !i || !r[e])
1782    return t;
1783  if (i === "toAttribute")
1784    switch (o) {
1785      case "Object":
1786      case "Array":
1787        return t == null ? null : JSON.stringify(t);
1788      case "Boolean":
1789        return t ? "" : null;
1790      case "Number":
1791        return t ?? null;
1792      default:
1793        return t;
1794    }
1795  else
1796    switch (o) {
1797      case "Object":
1798      case "Array":
1799        return t && JSON.parse(t);
1800      case "Boolean":
1801        return t;
1802      // conversion already handled above
1803      case "Number":
1804        return t != null ? +t : t;
1805      default:
1806        return t;
1807    }
1808}
1809function Ko(e) {
1810  const t = {};
1811  return e.childNodes.forEach((r) => {
1812    t[
1813      /** @type {Element} node */
1814      r.slot || "default"
1815    ] = !0;
1816  }), t;
1817}
1818function Jo(e, t, r, i, o, n) {
1819  let u = class extends Pi {
1820    constructor() {
1821      super(e, r, o), this.$$p_d = t;
1822    }
1823    static get observedAttributes() {
1824      return Xt(t).map(
1825        (s) => (t[s].attribute || s).toLowerCase()
1826      );
1827    }
1828  };
1829  return Xt(t).forEach((s) => {
1830    St(u.prototype, s, {
1831      get() {
1832        return this.$$c && s in this.$$c ? this.$$c[s] : this.$$d[s];
1833      },
1834      set(c) {
1835        var h;
1836        c = Kt(s, c, t), this.$$d[s] = c;
1837        var d = this.$$c;
1838        if (d) {
1839          var p = (h = Qe(d, s)) == null ? void 0 : h.get;
1840          p ? d[s] = c : d.$set({ [s]: c });
1841        }
1842      }
1843    });
1844  }), i.forEach((s) => {
1845    St(u.prototype, s, {
1846      get() {
1847        var c;
1848        return (c = this.$$c) == null ? void 0 : c[s];
1849      }
1850    });
1851  }), e.element = /** @type {any} */
1852  u, u;
1853}
1854function zi(e) {
1855  ie === null && ii(), Vr(() => {
1856    const t = tt(e);
1857    if (typeof t == "function") return (
1858      /** @type {() => void} */
1859      t
1860    );
1861  });
1862}
1863function Xo(e) {
1864  ie === null && ii(), zi(() => () => tt(e));
1865}
1866function Ni(e, t, r) {
1867  if (e == null)
1868    return t(void 0), bt;
1869  const i = tt(
1870    () => e.subscribe(
1871      t,
1872      // @ts-expect-error
1873      r
1874    )
1875  );
1876  return i.unsubscribe ? () => i.unsubscribe() : i;
1877}
1878const gt = [];
1879function Qo(e, t = bt) {
1880  let r = null;
1881  const i = /* @__PURE__ */ new Set();
1882  function o(s) {
1883    if (ti(e, s) && (e = s, r)) {
1884      const c = !gt.length;
1885      for (const d of i)
1886        d[1](), gt.push(d, e);
1887      if (c) {
1888        for (let d = 0; d < gt.length; d += 2)
1889          gt[d][0](gt[d + 1]);
1890        gt.length = 0;
1891      }
1892    }
1893  }
1894  function n(s) {
1895    o(s(
1896      /** @type {T} */
1897      e
1898    ));
1899  }
1900  function u(s, c = bt) {
1901    const d = [s, c];
1902    return i.add(d), i.size === 1 && (r = t(o, n) || bt), s(
1903      /** @type {T} */
1904      e
1905    ), () => {
1906      i.delete(d), i.size === 0 && r && (r(), r = null);
1907    };
1908  }
1909  return { set: o, update: n, subscribe: u };
1910}
1911function Jt(e) {
1912  let t;
1913  return Ni(e, (r) => t = r)(), t;
1914}
1915globalThis.altchaPlugins = globalThis.altchaPlugins || [];
1916globalThis.altchaI18n = globalThis.altchaI18n || {
1917  get: (e) => Jt(globalThis.altchaI18n.store)[e],
1918  set: (e, t) => {
1919    Object.assign(Jt(globalThis.altchaI18n.store), {
1920      [e]: t
1921    }), globalThis.altchaI18n.store.set(Jt(globalThis.altchaI18n.store));
1922  },
1923  store: Qo({})
1924};
1925const el = {
1926  ariaLinkLabel: "Besoek Altcha.org",
1927  enterCode: "Voer kode in",
1928  enterCodeAria: "Voer die kode in wat jy hoor. Druk Spasie om die klank af te speel.",
1929  error: "Verifikasie het misluk. Probeer later weer.",
1930  expired: "Verifikasie het verval. Probeer weer.",
1931  footer: 'Beskerm deur <a href="https://altcha.org/" target="_blank" aria-label="Besoek Altcha.org">ALTCHA</a>',
1932  getAudioChallenge: "Kry 'n klankuitdaging",
1933  label: "Ek is nie 'n robot nie",
1934  loading: "Laai...",
1935  reload: "Laai weer",
1936  verify: "Verifieer",
1937  verificationRequired: "Verifikasie is vereis!",
1938  verified: "Geverifieer",
1939  verifying: "Verifieer...",
1940  waitAlert: "Verifieer... wag asseblief."
1941};
1942globalThis.altchaI18n.set("af", el);
1943const tl = {
1944  ariaLinkLabel: "زور Altcha.org",
1945  enterCode: "أدخل الرمز",
1946  enterCodeAria: "أدخل الرمز الذي تسمعه. اضغط على المسافة لتشغيل الصوت.",
1947  error: "فشل التحقق. حاول مرة أخرى لاحقاً.",
1948  expired: "انتهت صلاحية التحقق. حاول مرة أخرى.",
1949  verificationRequired: "مطلوب التحقق!",
1950  footer: 'محمي بواسطة <a href="https://altcha.org/" target="_blank" aria-label="زور Altcha.org">ALTCHA</a>',
1951  getAudioChallenge: "احصل على تحدي صوتي",
1952  label: "أنا لست روبوتاً",
1953  loading: "جارٍ التحميل...",
1954  reload: "إعادة تحميل",
1955  verify: "تحقق",
1956  verified: "تم التحقق",
1957  verifying: "جارٍ التحقق...",
1958  waitAlert: "جارٍ التحقق... يرجى الانتظار."
1959};
1960globalThis.altchaI18n.set("ar", tl);
1961const rl = {
1962  ariaLinkLabel: "Посетете Altcha.org",
1963  enterCode: "Въведете код",
1964  enterCodeAria: "Въведете кода, който чувате. Натиснете Space за възпроизвеждане на аудио.",
1965  error: "Проверката неуспешна. Моля, опитайте по-късно.",
1966  expired: "Времето за проверка изтече. Моля, опитайте отново.",
1967  verificationRequired: "Изисква се проверка!",
1968  footer: 'Защитено от <a href="https://altcha.org/" target="_blank" aria-label="Посетете Altcha.org">ALTCHA</a>',
1969  getAudioChallenge: "Аудио проверка",
1970  label: "Аз не съм робот",
1971  loading: "Зареждане...",
1972  reload: "Презареди",
1973  verify: "Провери",
1974  verified: "Проверено",
1975  verifying: "Проверява се...",
1976  waitAlert: "Проверката е в процес... моля изчакайте."
1977};
1978globalThis.altchaI18n.set("bg", rl);
1979const al = {
1980  ariaLinkLabel: "Posjetite Altcha.org",
1981  enterCode: "Unesite kod",
1982  enterCodeAria: "Unesite kod koji čujete. Pritisnite Space da biste pustili zvuk.",
1983  error: "Verifikacija nije uspjela. Pokušajte ponovo kasnije.",
1984  expired: "Verifikacija je istekla. Pokušajte ponovo.",
1985  footer: 'Zaštićeno od strane <a href="https://altcha.org/" target="_blank" aria-label="Posjetite Altcha.org">ALTCHA</a>',
1986  getAudioChallenge: "Dohvatite audio izazov",
1987  label: "Nisam robot",
1988  loading: "Učitavanje...",
1989  reload: "Ponovno učitaj",
1990  verify: "Verifikuj",
1991  verificationRequired: "Verifikacija je obavezna!",
1992  verified: "Verifikovano",
1993  verifying: "Verifikacija u toku...",
1994  waitAlert: "Verifikacija u toku... molimo vas da sačekate."
1995};
1996globalThis.altchaI18n.set("bs", al);
1997const il = {
1998  ariaLinkLabel: "Visita Altcha.org",
1999  enterCode: "Introdueix el codi",
2000  enterCodeAria: "Introdueix el codi que escoltes. Prem Espai per reproduir l’àudio.",
2001  error: "Verificació fallida. Torna-ho a provar més tard.",
2002  expired: "Verificació expirada. Torna-ho a provar.",
2003  footer: 'Protegit per <a href="https://altcha.org/" target="_blank" aria-label="Visita Altcha.org">ALTCHA</a>',
2004  getAudioChallenge: "Obtenir un desafiament d’àudio",
2005  label: "No sóc un robot",
2006  loading: "Carregant...",
2007  reload: "Torna a carregar",
2008  verify: "Verificar",
2009  verificationRequired: "Es requereix verificació!",
2010  verified: "Verificat",
2011  verifying: "Verificant...",
2012  waitAlert: "Verificant... si us plau, espera."
2013};
2014globalThis.altchaI18n.set("ca", il);
2015const nl = {
2016  ariaLinkLabel: "Navštivte Altcha.org",
2017  enterCode: "Zadejte kód",
2018  enterCodeAria: "Zadejte kód, který slyšíte. Stisknutím mezerníku přehrajete zvuk.",
2019  error: "Ověření selhalo. Zkuste to prosím později.",
2020  expired: "Ověření vypršelo. Zkuste to prosím znovu.",
2021  verificationRequired: "Vyžaduje se ověření!",
2022  footer: 'Chráněno pomocí <a href="https://altcha.org/" target="_blank" aria-label="Navštivte Altcha.org">ALTCHA</a>',
2023  getAudioChallenge: "Získat audio výzvu",
2024  label: "Nejsem robot",
2025  loading: "Načítání...",
2026  reload: "Znovu načíst",
2027  verify: "Ověřit",
2028  verified: "Ověřeno",
2029  verifying: "Ověřování...",
2030  waitAlert: "Probíhá ověření... prosím počkejte."
2031};
2032globalThis.altchaI18n.set("cs", nl);
2033const ol = {
2034  ariaLinkLabel: "Besøg Altcha.org",
2035  enterCode: "Indtast kode",
2036  enterCodeAria: "Indtast den kode, du hører. Tryk på mellemrumstasten for at afspille lyd.",
2037  error: "Verificering mislykkedes. Prøv venligst igen senere.",
2038  expired: "Verificering udløbet. Prøv venligst igen.",
2039  verificationRequired: "Verificering kræves!",
2040  footer: 'Beskyttet af <a href="https://altcha.org/" target="_blank" aria-label="Besøg Altcha.org">ALTCHA</a>',
2041  getAudioChallenge: "Hent lydudfordring",
2042  label: "Jeg er ikke en robot",
2043  loading: "Indlæser...",
2044  reload: "Genindlæs",
2045  verify: "Verificer",
2046  verified: "Verificeret",
2047  verifying: "Verificerer...",
2048  waitAlert: "Verificerer... vent venligst."
2049};
2050globalThis.altchaI18n.set("da", ol);
2051const ll = {
2052  ariaLinkLabel: "Besuche Altcha.org",
2053  enterCode: "Code eingeben",
2054  enterCodeAria: "Geben Sie den Code ein, den Sie hören. Drücken Sie die Leertaste, um die Audio abzuspielen.",
2055  error: "Überprüfung fehlgeschlagen. Bitte versuchen Sie es später erneut.",
2056  expired: "Überprüfung abgelaufen. Bitte versuchen Sie es erneut.",
2057  verificationRequired: "Überprüfung erforderlich!",
2058  footer: 'Geschützt durch <a href="https://altcha.org/" target="_blank" aria-label="Besuche Altcha.org">ALTCHA</a>',
2059  getAudioChallenge: "Audio-Herausforderung anfordern",
2060  label: "Ich bin kein Roboter",
2061  loading: "Lade...",
2062  reload: "Neu laden",
2063  verify: "Überprüfen",
2064  verified: "Überprüft",
2065  verifying: "Wird überprüft...",
2066  waitAlert: "Überprüfung läuft... bitte warten."
2067};
2068globalThis.altchaI18n.set("de", ll);
2069const sl = {
2070  ariaLinkLabel: "Επισκεφθείτε το Altcha.org",
2071  enterCode: "Εισαγάγετε κωδικό",
2072  enterCodeAria: "Εισαγάγετε τον κωδικό που ακούτε. Πατήστε Space για να παίξετε τον ήχο.",
2073  error: "Η επαλήθευση απέτυχε. Δοκιμάστε ξανά αργότερα.",
2074  expired: "Η επαλήθευση έληξε. Δοκιμάστε ξανά.",
2075  verificationRequired: "Απαιτείται έλεγχος!",
2076  footer: 'Προστατεύεται από το <a href="https://altcha.org/" target="_blank" aria-label="Επισκεφθείτε το Altcha.org">ALTCHA</a>',
2077  getAudioChallenge: "Λήψη ηχητικής δοκιμασίας",
2078  label: "Δεν είμαι ρομπότ",
2079  loading: "Φόρτωση...",
2080  reload: "Επαναφόρτωση",
2081  verify: "Επαλήθευση",
2082  verified: "Επαληθεύτηκε",
2083  verifying: "Γίνεται επαλήθευση...",
2084  waitAlert: "Γίνεται επαλήθευση... παρακαλώ περιμένετε."
2085};
2086globalThis.altchaI18n.set("el", sl);
2087const ul = {
2088  ariaLinkLabel: "Visitar Altcha.org",
2089  enterCode: "Introduce el código",
2090  enterCodeAria: "Introduce el código que escuchas. Pulsa Espacio para reproducir el audio.",
2091  error: "Falló la verificación. Por favor intente nuevamente más tarde.",
2092  expired: "Verificación expirada. Por favor intente nuevamente.",
2093  verificationRequired: "¡Verificación requerida!",
2094  footer: 'Protegido por <a href="https://altcha.org/" target="_blank" aria-label="Visitar Altcha.org">ALTCHA</a>',
2095  getAudioChallenge: "Obtener un desafío de audio",
2096  label: "No soy un robot",
2097  loading: "Cargando...",
2098  reload: "Recargar",
2099  verify: "Verificar",
2100  verified: "Verificado",
2101  verifying: "Verificando...",
2102  waitAlert: "Verificando... por favor espere."
2103};
2104globalThis.altchaI18n.set("es-es", ul);
2105const fl = {
2106  ariaLinkLabel: "Visitar Altcha.org",
2107  enterCode: "Ingresa el código",
2108  enterCodeAria: "Ingresa el código que escuchas. Presiona Espacio para reproducir el audio.",
2109  error: "Falló la verificación. Por favor vuelve a intentarlo más tarde.",
2110  expired: "La verificación expiró. Por favor inténtalo de nuevo.",
2111  verificationRequired: "¡Verificación requerida!",
2112  footer: 'Protegido por <a href="https://altcha.org/" target="_blank" aria-label="Visitar Altcha.org">ALTCHA</a>',
2113  getAudioChallenge: "Obtener un reto de audio",
2114  label: "No soy un robot",
2115  loading: "Cargando...",
2116  reload: "Volver a cargar",
2117  verify: "Verificar",
2118  verified: "Verificado",
2119  verifying: "Verificando...",
2120  waitAlert: "Verificando... por favor espera."
2121};
2122globalThis.altchaI18n.set("es-419", fl);
2123const cl = {
2124  ariaLinkLabel: "Külasta Altcha.org",
2125  enterCode: "Sisesta kood",
2126  enterCodeAria: "Sisestage kuuldu kood. Vajutage tühikut, et esitada heli.",
2127  error: "Kinnitamine ebaõnnestus. Proovi hiljem uuesti.",
2128  expired: "Kinnitamine aegus. Proovi uuesti.",
2129  verificationRequired: "Kontroll on vajalik!",
2130  footer: 'Kaitstud <a href="https://altcha.org/" target="_blank" aria-label="Külasta Altcha.org">ALTCHA</a> poolt',
2131  getAudioChallenge: "Hangi heliülesanne",
2132  label: "Ma ei ole robot",
2133  loading: "Laadimine...",
2134  reload: "Laadi uuesti",
2135  verify: "Kinnita",
2136  verified: "Kinnitatud",
2137  verifying: "Kinnitamine...",
2138  waitAlert: "Kinnitamine... palun oota."
2139};
2140globalThis.altchaI18n.set("et", cl);
2141const dl = {
2142  ariaLinkLabel: "Bisitatu Altcha.org",
2143  enterCode: "Sartu kodea",
2144  enterCodeAria: "Sartu entzun duzun kodea. Sakatu Espazioa audioa erreproduzitzeko.",
2145  error: "Egiaztatzeak huts egin du. Saiatu berriro geroago.",
2146  expired: "Egiaztatzea iraungi da. Saiatu berriro.",
2147  verificationRequired: "Egiaztatzea beharrezkoa da!",
2148  footer: '<a href="https://altcha.org/" target="_blank" aria-label="Bisitatu Altcha.org">ALTCHA</a>k babestuta',
2149  getAudioChallenge: "Jaso audio-erronka bat",
2150  label: "Ez naiz robot bat",
2151  loading: "Kargatzen...",
2152  reload: "Birkargatu",
2153  verify: "Egiaztatu",
2154  verified: "Egiaztatuta",
2155  verifying: "Egiaztatzen...",
2156  waitAlert: "Egiaztatzen... itxaron mesedez."
2157};
2158globalThis.altchaI18n.set("eu", dl);
2159const hl = {
2160  ariaLinkLabel: "Vieraile sivulla Altcha.org",
2161  enterCode: "Syötä koodi",
2162  enterCodeAria: "Kirjoita kuulemasi koodi. Paina välilyöntiä toistaaksesi äänen.",
2163  error: "Varmennus epäonnistui. Yritä myöhemmin uudelleen.",
2164  expired: "Varmennus vanhentui. Yritä uudelleen.",
2165  verificationRequired: "Vahvistus vaaditaan!",
2166  footer: 'Suojattu <a href="https://altcha.org/" target="_blank" aria-label="Vieraile sivulla Altcha.org">ALTCHA</a>:lla',
2167  getAudioChallenge: "Hae äänitehtävä",
2168  label: "En ole robotti",
2169  loading: "Ladataan...",
2170  reload: "Lataa uudelleen",
2171  verify: "Vahvista",
2172  verified: "Vahvistettu",
2173  verifying: "Vahvistetaan...",
2174  waitAlert: "Vahvistetaan... odota hetki."
2175};
2176globalThis.altchaI18n.set("fi", hl);
2177const gl = {
2178  ariaLinkLabel: "Visitez Altcha.org",
2179  enterCode: "Entrez le code",
2180  enterCodeAria: "Entrez le code que vous entendez. Appuyez sur la barre d'espace pour écouter l'audio.",
2181  error: "Échec de la vérification. Réessayez plus tard.",
2182  expired: "La vérification a expiré. Réessayez.",
2183  verificationRequired: "Vérification requise !",
2184  footer: 'Protégé par <a href="https://altcha.org/" target="_blank" aria-label="Visitez Altcha.org">ALTCHA</a>',
2185  getAudioChallenge: "Obtenir un défi audio",
2186  label: "Pas un robot",
2187  loading: "Chargement...",
2188  reload: "Recharger",
2189  verify: "Vérifier",
2190  verified: "Vérifié",
2191  verifying: "Vérification en cours...",
2192  waitAlert: "Vérification en cours... veuillez patienter."
2193};
2194globalThis.altchaI18n.set("fr-ca", gl);
2195const vl = {
2196  ariaLinkLabel: "Visitez Altcha.org",
2197  enterCode: "Entrez le code",
2198  enterCodeAria: "Entrez le code que vous entendez. Appuyez sur Espace pour écouter l'audio.",
2199  error: "Échec de la vérification. Essayez à nouveau plus tard.",
2200  expired: "La vérification a expiré. Essayez à nouveau.",
2201  verificationRequired: "Vérification requise !",
2202  footer: 'Protégé par <a href="https://altcha.org/" target="_blank" aria-label="Visitez Altcha.org">ALTCHA</a>',
2203  getAudioChallenge: "Obtenir un défi audio",
2204  label: "Pas un robot",
2205  loading: "Chargement...",
2206  reload: "Recharger",
2207  verify: "Vérifier",
2208  verified: "Vérifié",
2209  verifying: "Vérification en cours...",
2210  waitAlert: "Vérification en cours... veuillez patienter."
2211};
2212globalThis.altchaI18n.set("fr-fr", vl);
2213const bl = {
2214  ariaLinkLabel: "Tabhair cuairt ar Altcha.org",
2215  enterCode: "Iontráil cód",
2216  enterCodeAria: "Cuir isteach an cód a chloiseann tú. Brúigh Spás chun an fuaime a sheinm.",
2217  error: "Theip ar an bhfíorú. Bain triail eile as níos déanaí.",
2218  expired: "Tá an fíorú as feidhm. Bain triail eile as.",
2219  verificationRequired: "Fíorú riachtanach!",
2220  footer: 'Cosanta ag <a href="https://altcha.org/" target="_blank" aria-label="Tabhair cuairt ar Altcha.org">ALTCHA</a>',
2221  getAudioChallenge: "Faigh dúshlán fuaime",
2222  label: "Níl mé i mo róbat",
2223  loading: "Á luchtú...",
2224  reload: "Athluchtaigh",
2225  verify: "Fíoraigh",
2226  verified: "Fíoraithe",
2227  verifying: "Fíorú ar siúl...",
2228  waitAlert: "Fíorú ar siúl... fan go fóill."
2229};
2230globalThis.altchaI18n.set("ga", bl);
2231const pl = {
2232  ariaLinkLabel: "Posjetite Altcha.org",
2233  enterCode: "Unesite kod",
2234  enterCodeAria: "Unesite kod koji čujete. Pritisnite razmaknicu za reprodukciju zvuka.",
2235  error: "Provjera nije uspjela. Molimo pokušajte kasnije.",
2236  expired: "Provjera je istekla. Molimo pokušajte ponovo.",
2237  verificationRequired: "Potrebna je provjera!",
2238  footer: 'Zaštićeno od strane <a href="https://altcha.org/" target="_blank" aria-label="Posjetite Altcha.org">ALTCHA</a>',
2239  getAudioChallenge: "Audio provjera",
2240  label: "Ja nisam robot",
2241  loading: "Učitavanje...",
2242  reload: "Ponovno učitaj",
2243  verify: "Provjeri",
2244  verified: "Provjereno",
2245  verifying: "Provjeravanje...",
2246  waitAlert: "Provjera je u tijeku... molimo pričekajte."
2247};
2248globalThis.altchaI18n.set("hr", pl);
2249const ml = {
2250  ariaLinkLabel: "Látogass el az Altcha.org oldalra",
2251  enterCode: "Írja be a kódot",
2252  enterCodeAria: "Írja be a hallott kódot. Nyomja meg a Szóköz billentyűt a hang lejátszásához.",
2253  error: "A hitelesítés nem sikerült. Próbáld meg később újra.",
2254  expired: "A hitelesítés lejárt. Próbáld újra.",
2255  verificationRequired: "Ellenőrzés szükséges!",
2256  footer: 'Védve a következő által: <a href="https://altcha.org/" target="_blank" aria-label="Látogass el az Altcha.org oldalra">ALTCHA</a>',
2257  getAudioChallenge: "Hangalapú kihívás kérése",
2258  label: "Nem vagyok robot",
2259  loading: "Betöltés...",
2260  reload: "Újratöltés",
2261  verify: "Ellenőrzés",
2262  verified: "Ellenőrizve",
2263  verifying: "Ellenőrzés folyamatban...",
2264  waitAlert: "Ellenőrzés folyamatban... kérlek várj."
2265};
2266globalThis.altchaI18n.set("hu", ml);
2267const yl = {
2268  ariaLinkLabel: "Heimsækja Altcha.org",
2269  enterCode: "Sláðu inn kóða",
2270  enterCodeAria: "Sláðu inn kóðann sem þú heyrir. Ýttu á Space til að spila hljóðið.",
2271  error: "Staðfesting mistókst. Reyndu aftur síðar.",
2272  expired: "Staðfesting er útrunnin. Reyndu aftur.",
2273  footer: 'Verndað af <a href="https://altcha.org/" target="_blank" aria-label="Heimsækja Altcha.org">ALTCHA</a>',
2274  getAudioChallenge: "Fá hljóðáskorun",
2275  label: "Ég er ekki robot",
2276  loading: "Hleður...",
2277  reload: "Hleð aftur",
2278  verify: "Staðfesta",
2279  verificationRequired: "Staðfesting er nauðsynleg!",
2280  verified: "Staðfest",
2281  verifying: "Að staðfesta...",
2282  waitAlert: "Að staðfesta... vinsamlegast bíða."
2283};
2284globalThis.altchaI18n.set("is", yl);
2285const Al = {
2286  ariaLinkLabel: "Visita Altcha.org",
2287  enterCode: "Inserisci il codice",
2288  enterCodeAria: "Inserisci il codice che senti. Premi Spazio per riprodurre l'audio.",
2289  error: "Verifica fallita. Riprova più tardi.",
2290  expired: "Verifica scaduta. Riprova.",
2291  verificationRequired: "Verifica richiesta!",
2292  footer: 'Protetto da <a href="https://altcha.org/" target="_blank" aria-label="Visita Altcha.org">ALTCHA</a>',
2293  getAudioChallenge: "Ottieni una sfida audio",
2294  label: "Non sono un robot",
2295  loading: "Caricamento...",
2296  reload: "Ricarica",
2297  verify: "Verifica",
2298  verified: "Verificato",
2299  verifying: "Verifica in corso...",
2300  waitAlert: "Verifica in corso... attendere."
2301};
2302globalThis.altchaI18n.set("it", Al);
2303const kl = {
2304  ariaLinkLabel: "Apsilankykite Altcha.org",
2305  enterCode: "Įveskite kodą",
2306  enterCodeAria: "Įveskite girdimą kodą. Paspauskite tarpo klavišą, kad grotumėte garso įrašą.",
2307  error: "Patvirtinimas nepavyko. Bandykite vėliau.",
2308  expired: "Patvirtinimo laikas baigėsi. Bandykite dar kartą.",
2309  verificationRequired: "Reikalingas patvirtinimas!",
2310  footer: 'Apsaugota <a href="https://altcha.org/" target="_blank" aria-label="Apsilankykite Altcha.org">ALTCHA</a>',
2311  getAudioChallenge: "Gauti garso užduotį",
2312  label: "AÅ¡ nesu robotas",
2313  loading: "Įkeliama...",
2314  reload: "Įkelti iš naujo",
2315  verify: "Patvirtinti",
2316  verified: "Patvirtinta",
2317  verifying: "Tikrinama...",
2318  waitAlert: "Tikrinama... prašome palaukti."
2319};
2320globalThis.altchaI18n.set("lt", kl);
2321const _l = {
2322  ariaLinkLabel: "Apmeklējiet Altcha.org",
2323  enterCode: "Ievadiet kodu",
2324  enterCodeAria: "Ievadiet dzirdamo kodu. Nospiediet atstarpes taustiņu, lai atskaņotu audio.",
2325  error: "Verifikācija neizdevās. Mēģiniet vēlāk vēlreiz.",
2326  expired: "Verifikācijas laiks ir beidzies. Mēģiniet vēlreiz.",
2327  verificationRequired: "Nepieciešama verifikācija!",
2328  footer: 'Aizsargāts ar <a href="https://altcha.org/" target="_blank" aria-label="Apmeklējiet Altcha.org">ALTCHA</a>',
2329  getAudioChallenge: "Saņemt audio izaicinājumu",
2330  label: "Es neesmu robots",
2331  loading: "Notiek ielāde...",
2332  reload: "Pārlādēt",
2333  verify: "Verificēt",
2334  verified: "Verificēts",
2335  verifying: "Notiek verifikācija...",
2336  waitAlert: "Notiek verifikācija... lūdzu, uzgaidiet."
2337};
2338globalThis.altchaI18n.set("lv", _l);
2339const wl = {
2340  ariaLinkLabel: "Żur Altcha.org",
2341  enterCode: "Idħol il-kodiċi",
2342  enterCodeAria: "Idħol il-kodiċi li tisma'. Agħfas Spazju biex tindaqq l-awdjo.",
2343  error: "Il-verifika falliet. Erġa’ pprova aktar tard.",
2344  expired: "Il-verifika skadiet. Erġa’ pprova.",
2345  verificationRequired: "Verifika meħtieġa!",
2346  footer: 'Protett minn <a href="https://altcha.org/" target="_blank" aria-label="Żur Altcha.org">ALTCHA</a>',
2347  getAudioChallenge: "Ikseb sfida bl-awdjo",
2348  label: "M’inix robot",
2349  loading: "Qed jitgħabba...",
2350  reload: "Ittella’ mill-ġdid",
2351  verify: "Ivverifika",
2352  verified: "Ivverifikat",
2353  verifying: "Verifika għaddejja...",
2354  waitAlert: "Verifika għaddejja... stenna ftit."
2355};
2356globalThis.altchaI18n.set("mt", wl);
2357const Di = {
2358  ariaLinkLabel: "Besøk Altcha.org",
2359  enterCode: "Skriv inn kode",
2360  enterCodeAria: "Skriv inn koden du hører. Trykk på Space for å spille av lyden.",
2361  error: "Verifisering mislyktes. Prøv igjen senere.",
2362  expired: "Verifiseringen utløp. Prøv igjen.",
2363  footer: 'Beskyttet av <a href="https://altcha.org/" target="_blank" aria-label="Besøk Altcha.org">ALTCHA</a>',
2364  getAudioChallenge: "FÃ¥ en lydutfordring",
2365  label: "Jeg er ikke en robot",
2366  loading: "Laster...",
2367  reload: "Last på nytt",
2368  verify: "Verifiser",
2369  verificationRequired: "Verifisering kreves!",
2370  verified: "Verifisert",
2371  verifying: "Verifiserer...",
2372  waitAlert: "Verifiserer... vennligst vent."
2373};
2374globalThis.altchaI18n.set("nb", Di);
2375globalThis.altchaI18n.set("no", Di);
2376const Cl = {
2377  ariaLinkLabel: "Bezoek Altcha.org",
2378  enterCode: "Voer code in",
2379  enterCodeAria: "Voer de code in die je hoort. Druk op Spatie om de audio af te spelen.",
2380  error: "Verificatie mislukt. Probeer het later opnieuw.",
2381  expired: "Verificatie verlopen. Probeer het opnieuw.",
2382  verificationRequired: "Verificatie vereist!",
2383  footer: 'Beschermd door <a href="https://altcha.org/" target="_blank" aria-label="Bezoek Altcha.org">ALTCHA</a>',
2384  getAudioChallenge: "Audio-uitdaging ontvangen",
2385  label: "Ik ben geen robot",
2386  loading: "Laden...",
2387  reload: "Herladen",
2388  verify: "Verifiëren",
2389  verified: "Geverifieerd",
2390  verifying: "Bezig met verifiëren...",
2391  waitAlert: "Bezig met verifiëren... even geduld a.u.b."
2392};
2393globalThis.altchaI18n.set("nl", Cl);
2394const Ll = {
2395  ariaLinkLabel: "Odwiedź Altcha.org",
2396  enterCode: "Wprowadź kod",
2397  enterCodeAria: "Wpisz kod, który słyszysz. Naciśnij Spację, aby odtworzyć dźwięk.",
2398  error: "Weryfikacja nie powiodła się. Spróbuj ponownie później.",
2399  expired: "Weryfikacja wygasła. Spróbuj ponownie.",
2400  verificationRequired: "Wymagana weryfikacja!",
2401  footer: 'Chronione przez <a href="https://altcha.org/" target="_blank" aria-label="Odwiedź Altcha.org">ALTCHA</a>',
2402  getAudioChallenge: "Pobierz zadanie dźwiękowe",
2403  label: "Nie jestem robotem",
2404  loading: "Ładowanie...",
2405  reload: "Odśwież",
2406  verify: "Zweryfikuj",
2407  verified: "Zweryfikowano",
2408  verifying: "Weryfikacja...",
2409  waitAlert: "Trwa weryfikacja... proszę czekać."
2410};
2411globalThis.altchaI18n.set("pl", Ll);
2412const El = {
2413  ariaLinkLabel: "Visitar Altcha.org",
2414  enterCode: "Introduza o código",
2415  enterCodeAria: "Introduza o código que ouve. Prima Espaço para reproduzir o áudio.",
2416  error: "A verificação falhou. Por favor, tente novamente mais tarde.",
2417  expired: "Verificação expirada. Por favor, tente novamente.",
2418  verificationRequired: "Verificação necessária!",
2419  footer: 'Protegido por <a href="https://altcha.org/" target="_blank" aria-label="Visitar Altcha.org">ALTCHA</a>',
2420  getAudioChallenge: "Obter desafio de áudio",
2421  label: "Não sou um robô",
2422  loading: "A carregar...",
2423  reload: "Recarregar",
2424  verify: "Verificar",
2425  verified: "Verificado",
2426  verifying: "A verificar...",
2427  waitAlert: "A verificar... por favor aguarde."
2428};
2429globalThis.altchaI18n.set("pt-pt", El);
2430const xl = {
2431  ariaLinkLabel: "Visitar Altcha.org",
2432  enterCode: "Digite o código",
2433  enterCodeAria: "Digite o código que você ouve. Pressione Espaço para reproduzir o áudio.",
2434  error: "Falha na verificação. Por favor, tente novamente mais tarde.",
2435  expired: "Verificação expirada. Por favor, tente novamente.",
2436  verificationRequired: "Verificação necessária!",
2437  footer: 'Protegido por <a href="https://altcha.org/" target="_blank" aria-label="Visitar Altcha.org">ALTCHA</a>',
2438  getAudioChallenge: "Obter desafio de áudio",
2439  label: "Eu não sou um robô",
2440  loading: "Carregando...",
2441  reload: "Recarregar",
2442  verify: "Verificar",
2443  verified: "Verificado",
2444  verifying: "Verificando...",
2445  waitAlert: "Verificando... por favor aguarde."
2446};
2447globalThis.altchaI18n.set("pt-br", xl);
2448const Tl = {
2449  ariaLinkLabel: "Vizitează Altcha.org",
2450  enterCode: "Introduceți codul",
2451  enterCodeAria: "Introduceți codul pe care îl auziți. Apăsați Spațiu pentru a reda audio.",
2452  error: "Verificarea a eșuat. Încearcă din nou mai târziu.",
2453  expired: "Verificarea a expirat. Încearcă din nou.",
2454  verificationRequired: "Verificare necesară!",
2455  footer: 'Protejat de <a href="https://altcha.org/" target="_blank" aria-label="Vizitează Altcha.org">ALTCHA</a>',
2456  getAudioChallenge: "Obține o provocare audio",
2457  label: "Nu sunt un robot",
2458  loading: "Se încarcă...",
2459  reload: "Reîncarcă",
2460  verify: "Verifică",
2461  verified: "Verificat",
2462  verifying: "Se verifică...",
2463  waitAlert: "Se verifică... te rugăm să aștepți."
2464};
2465globalThis.altchaI18n.set("ro", Tl);
2466const Il = {
2467  ariaLinkLabel: "Перейти на Altcha.org",
2468  enterCode: "Введите код",
2469  enterCodeAria: "Введите код, который слышите. Нажмите пробел для воспроизведения аудио.",
2470  error: "Ошибка верификации. Попробуйте позже.",
2471  expired: "Срок действия верификации истек. Попробуйте снова.",
2472  verificationRequired: "Требуется проверка!",
2473  footer: 'Защищено <a href="https://altcha.org/" target="_blank" aria-label="Перейти на Altcha.org">ALTCHA</a>',
2474  getAudioChallenge: "Получить аудио задачу",
2475  label: "Я не робот",
2476  loading: "Загрузка...",
2477  reload: "Перезагрузить",
2478  verify: "Проверить",
2479  verified: "Проверено",
2480  verifying: "Идет проверка...",
2481  waitAlert: "Идет проверка... Пожалуйста, подождите."
2482};
2483globalThis.altchaI18n.set("ru", Il);
2484const Vl = {
2485  ariaLinkLabel: "Navštívte Altcha.org",
2486  enterCode: "Zadajte kód",
2487  enterCodeAria: "Zadajte kód, ktorý počujete. Stlačením medzerníka prehráte zvuk.",
2488  error: "Verifikácia zlyhala. Skúste to znova neskôr.",
2489  expired: "Verifikácia vypršala. Skúste to znova.",
2490  verificationRequired: "Vyžaduje sa overenie!",
2491  footer: 'Chránené <a href="https://altcha.org/" target="_blank" aria-label="Navštívte Altcha.org">ALTCHA</a>',
2492  getAudioChallenge: "Získať audio výzvu",
2493  label: "Nie som robot",
2494  loading: "Načítava sa...",
2495  reload: "Obnoviť",
2496  verify: "Verifikovať",
2497  verified: "Verifikované",
2498  verifying: "Prebieha verifikácia...",
2499  waitAlert: "Prebieha verifikácia... prosím čakajte."
2500};
2501globalThis.altchaI18n.set("sk", Vl);
2502const Rl = {
2503  ariaLinkLabel: "Obiščite Altcha.org",
2504  enterCode: "Vnesite kodo",
2505  enterCodeAria: "Vnesite kodo, ki jo slišite. Pritisnite preslednico za predvajanje zvoka.",
2506  error: "Preverjanje ni uspelo. Poskusite znova kasneje.",
2507  expired: "Preverjanje je poteklo. Poskusite znova.",
2508  verificationRequired: "Potrebna je preveritev!",
2509  footer: 'Zaščiteno z <a href="https://altcha.org/" target="_blank" aria-label="Obiščite Altcha.org">ALTCHA</a>',
2510  getAudioChallenge: "Pridobite zvočni izziv",
2511  label: "Nisem robot",
2512  loading: "Nalagam...",
2513  reload: "Ponovno naloži",
2514  verify: "Preveri",
2515  verified: "Preverjeno",
2516  verifying: "Preverjanje...",
2517  waitAlert: "Preverjanje... prosim počakajte."
2518};
2519globalThis.altchaI18n.set("sl", Rl);
2520const jl = {
2521  ariaLinkLabel: "Posetite Altcha.org",
2522  enterCode: "Unesite kod",
2523  enterCodeAria: "Unesite kod koji čujete. Pritisnite Space da biste pustili zvuk.",
2524  error: "Verifikacija nije uspela. Pokušajte ponovo kasnije.",
2525  expired: "Verifikacija je istekla. Pokušajte ponovo.",
2526  footer: 'Zaštićeno od strane <a href="https://altcha.org/" target="_blank" aria-label="Posetite Altcha.org">ALTCHA</a>',
2527  getAudioChallenge: "Dohvatite audio izazov",
2528  label: "Nisam robot",
2529  loading: "Učitavanje...",
2530  reload: "Ponovo učitaj",
2531  verify: "Verifikuj",
2532  verificationRequired: "Verifikacija je obavezna!",
2533  verified: "Verifikovano",
2534  verifying: "Verifikacija u toku...",
2535  waitAlert: "Verifikacija u toku... molimo vas da sačekate."
2536};
2537globalThis.altchaI18n.set("sr", jl);
2538const $l = {
2539  ariaLinkLabel: "Besök Altcha.org",
2540  enterCode: "Ange kod",
2541  enterCodeAria: "Ange koden du hör. Tryck på mellanslag för att spela upp ljudet.",
2542  error: "Verifiering misslyckades. Försök igen senare.",
2543  expired: "Verifieringen har gått ut. Försök igen.",
2544  verificationRequired: "Verifiering krävs!",
2545  footer: 'Skyddad av <a href="https://altcha.org/" target="_blank" aria-label="Besök Altcha.org">ALTCHA</a>',
2546  getAudioChallenge: "FÃ¥ ljudutmaning",
2547  label: "Jag är inte en robot",
2548  loading: "Laddar...",
2549  reload: "Ladda om",
2550  verify: "Verifiera",
2551  verified: "Verifierad",
2552  verifying: "Verifierar...",
2553  waitAlert: "Verifierar... vänligen vänta."
2554};
2555globalThis.altchaI18n.set("sv", $l);
2556const Sl = {
2557  ariaLinkLabel: "Altcha.org'yu ziyaret edin",
2558  enterCode: "Kodu girin",
2559  enterCodeAria: "Duyduğunuz kodu girin. Ses dosyasını oynatmak için Boşluk tuşuna basın.",
2560  error: "Doğrulama başarısız oldu. Lütfen daha sonra tekrar deneyin.",
2561  expired: "Doğrulama süresi doldu. Lütfen tekrar deneyin.",
2562  verificationRequired: "Doğrulama gerekli!",
2563  footer: `ALTCHA tarafından korunuyor <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org'yu ziyaret edin">ALTCHA</a>`,
2564  getAudioChallenge: "Sesli doğrulama al",
2565  label: "Ben robot değilim",
2566  loading: "Yükleniyor...",
2567  reload: "Yeniden yükle",
2568  verify: "Doğrula",
2569  verified: "Doğrulandı",
2570  verifying: "Doğrulama yapılıyor...",
2571  waitAlert: "Doğrulama yapılıyor... lütfen bekleyin."
2572};
2573globalThis.altchaI18n.set("tr", Sl);
2574const Pl = {
2575  ariaLinkLabel: "Відвідати Altcha.org",
2576  enterCode: "Введіть код",
2577  enterCodeAria: "Введіть код, який ви чуєте. Натисніть пробіл, щоб відтворити аудіо.",
2578  error: "Перевірка не вдалася. Спробуйте пізніше.",
2579  expired: "Перевірка прострочена. Спробуйте знову.",
2580  verificationRequired: "Потрібна перевірка!",
2581  footer: 'Захищено <a href="https://altcha.org/" target="_blank" aria-label="Відвідати Altcha.org">ALTCHA</a>',
2582  getAudioChallenge: "Отримати аудіо-челлендж",
2583  label: "Я не робот",
2584  loading: "Завантаження...",
2585  reload: "Перезавантажити",
2586  verify: "Перевірити",
2587  verified: "Перевірено",
2588  verifying: "Перевіряється...",
2589  waitAlert: "Перевірка... будь ласка, зачекайте."
2590};
2591globalThis.altchaI18n.set("uk", Pl);
2592const zl = {
2593  ariaLinkLabel: "Altcha.org পরিদর্শন করুন",
2594  enterCode: "কোড লিখুন",
2595  enterCodeAria: "আপনি যে কোড শুনতে পান তা লিখুন। অডিও প্লে করতে স্পেস বাটন টিপুন।",
2596  error: "যাচাইকরণ ব্যর্থ হয়েছে। পরে আবার চেষ্টা করুন।",
2597  expired: "যাচাইকরণ সময়সীমা শেষ হয়েছে। আবার চেষ্টা করুন।",
2598  verificationRequired: "যাচাই প্রয়োজন!",
2599  footer: 'দ্বারা সুরক্ষিত <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org পরিদর্শন করুন">ALTCHA</a>',
2600  getAudioChallenge: "অডিও চ্যালেঞ্জ নিন",
2601  label: "আমি রোবট নই",
2602  loading: "লোড হচ্ছে...",
2603  reload: "পুনরায় লোড করুন",
2604  verify: "যাচাই করুন",
2605  verified: "যাচাই করা হয়েছে",
2606  verifying: "যাচাই করা হচ্ছে...",
2607  waitAlert: "যাচাই করা হচ্ছে... দয়া করে অপেক্ষা করুন।"
2608};
2609globalThis.altchaI18n.set("bn", zl);
2610const Nl = {
2611  ariaLinkLabel: "בקר באתר Altcha.org",
2612  enterCode: "הזן קוד",
2613  enterCodeAria: "הזן את הקוד שאתה שומע. לחץ על רווח להפעלת השמע.",
2614  error: "האימות נכשל. נסה שוב מאוחר יותר.",
2615  expired: "תוקף האימות פג. נסה שוב.",
2616  verificationRequired: "נדרש אימות!",
2617  footer: 'מוגן על ידי <a href="https://altcha.org/" target="_blank" aria-label="בקר באתר Altcha.org">ALTCHA</a>',
2618  getAudioChallenge: "קבל אתגר שמע",
2619  label: "אני לא רובוט",
2620  loading: "טוען...",
2621  reload: "טען מחדש",
2622  verify: "אמת",
2623  verified: "אומת",
2624  verifying: "מאמת...",
2625  waitAlert: "מבצע אימות... אנא המתן."
2626};
2627globalThis.altchaI18n.set("he", Nl);
2628const Dl = {
2629  ariaLinkLabel: "Altcha.org पर जाएं",
2630  enterCode: "कोड दर्ज करेंं",
2631  enterCodeAria: "आप जो कोड सुनते हैं उसे दर्ज करें। ऑडियो चलाने के लिए स्पेस दबाएं।",
2632  error: "सत्यापन विफल। कृपया बाद में फिर से प्रयास करें।",
2633  expired: "सत्यापन समाप्त हो गया है। कृपया पु
2633नः प्रयास करें।",
2634  verificationRequired: "सत्यापन आवश्यक है!",
2635  footer: 'द्वारा संरक्षित <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org पर जाएं">ALTCHA</a>',
2636  getAudioChallenge: "ऑडियो चुनौती प्राप्त करें",
2637  label: "मैं रोबोट नहीं हूँ",
2638  loading: "लोड हो रहा है...",
2639  reload: "पुनः लोड करें",
2640  verify: "सत्यापित करें",
2641  verified: "सत्यापित",
2642  verifying: "सत्यापित कर रहे हैं...",
2643  waitAlert: "सत्यापित किया जा रहा है... कृपया प्रतीक्षा करें।"
2644};
2645globalThis.altchaI18n.set("hi", Dl);
2646const ql = {
2647  ariaLinkLabel: "Kunjungi Altcha.org",
2648  enterCode: "Masukkan kode",
2649  enterCodeAria: "Masukkan kode yang Anda dengar. Tekan Spasi untuk memutar audio.",
2650  error: "Verifikasi gagal. Coba lagi nanti.",
2651  expired: "Verifikasi telah kedaluwarsa. Coba lagi.",
2652  verificationRequired: "Verifikasi diperlukan!",
2653  footer: 'Dilindungi oleh <a href="https://altcha.org/" target="_blank" aria-label="Kunjungi Altcha.org">ALTCHA</a>',
2654  getAudioChallenge: "Dapatkan tantangan audio",
2655  label: "Saya bukan robot",
2656  loading: "Memuat...",
2657  reload: "Muat ulang",
2658  verify: "Verifikasi",
2659  verified: "Terverifikasi",
2660  verifying: "Memverifikasi...",
2661  waitAlert: "Memverifikasi... harap tunggu."
2662};
2663globalThis.altchaI18n.set("id", ql);
2664const Ol = {
2665  ariaLinkLabel: "Altcha.orgを訪問",
2666  enterCode: "コードを入力",
2667  enterCodeAria: "聞こえるコードを入力してください。スペースキーを押して音声を再生します。",
2668  error: "認証に失敗しました。後でもう一度試してください。",
2669  expired: "認証が期限切れです。再試行してください。",
2670  verificationRequired: "認証が必要です!",
2671  footer: '保護されています <a href="https://altcha.org/" target="_blank" aria-label="Altcha.orgを訪問">ALTCHA</a>',
2672  getAudioChallenge: "音声チャレンジを取得",
2673  label: "ロボットじゃない",
2674  loading: "読み込み中...",
2675  reload: "再読み込み",
2676  verify: "確認",
2677  verified: "確認済み",
2678  verifying: "確認中...",
2679  waitAlert: "確認中...少々お待ちください。"
2680};
2681globalThis.altchaI18n.set("ja", Ol);
2682const Hl = {
2683  ariaLinkLabel: "Altcha.org 방문하기",
2684  enterCode: "코드 입력",
2685  enterCodeAria: "들리는 코드를 입력하세요. 스페이스 바를 눌러 오디오를 재생합니다.",
2686  error: "인증 실패. 나중에 다시 시도해주세요.",
2687  expired: "인증이 만료되었습니다. 다시 시도해주세요.",
2688  verificationRequired: "인증이 필요합니다!",
2689  footer: 'ALTCHA에서 보호됨 <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org 방문하기">ALTCHA</a>',
2690  getAudioChallenge: "오디오 챌린지 받기",
2691  label: "저는 로봇이 아닙니다",
2692  loading: "로딩 중...",
2693  reload: "새로 고침",
2694  verify: "확인",
2695  verified: "확인됨",
2696  verifying: "확인 중...",
2697  waitAlert: "확인 중... 잠시만 기다려주세요."
2698};
2699globalThis.altchaI18n.set("ko", Hl);
2700const Fl = {
2701  ariaLinkLabel: "Altcha.org भेट द्या",
2702  enterCode: "कोड टाकाा",
2703  enterCodeAria: "तुम्ही ऐकत असलेला कोड टाका. ऑडिओ प्ले करण्यासाठी स्पेस दाबा.",
2704  error: "पुष्टीकरण अयशस्वी झाले. कृपया नंतर पुन्हा प्रयत्न करा.",
2705  expired: "पुष्टीकरण कालबाह्य झाले आहे. कृपया पुन्हा प्रयत्न करा.",
2706  verificationRequired: "पडताळणी आवश्यक आहे!",
2707  footer: 'द्वारे संरक्षित <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org भेट द्या">ALTCHA</a>',
2708  getAudioChallenge: "ऑडिओ चॅलेंज मिळवा",
2709  label: "मी रोबोट नाही",
2710  loading: "लोड होत आहे...",
2711  reload: "पुन्हा लोड करा",
2712  verify: "पुष्टीकरण करा",
2713  verified: "पुष्टीकरण झाले",
2714  verifying: "पुष्टीकरण करत आहे...",
2715  waitAlert: "पुष्टीकरण करत आहे... कृपया थोडा वेळ थांबा."
2716};
2717globalThis.altchaI18n.set("mr", Fl);
2718const Ml = {
2719  ariaLinkLabel: "Altcha.org ஐ பார்வையிடவும்",
2720  enterCode: "குறியீட்டை உள்ளிடவும்",
2721  enterCodeAria: "நீங்கள் கேட்கும் கà¯
2721à®±à®¿à®¯à¯€à®Ÿà¯à®Ÿà¯ˆ உள்ளிடவும். ஆடியோவை இயக்க Space ஐ அழுத்தவும்.",
2722  error: "சரிபார்ப்பு தோல்வி. பிறகு மீண்டும் முயற்சிக்கவும்.",
2723  expired: "சரிபார்ப்பு காலாவதியானது. மீண்டும் முயற்சிக்கவும்.",
2724  verificationRequired: "சரிபார்ப்பு தேவை!",
2725  footer: 'மூலமாக பாதுகாக்கப்பட்டவை <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org ஐ பார்வையிடவும்">ALTCHA</a>',
2726  getAudioChallenge: "ஒலி சவாலை பெறவும்",
2727  label: "நான் ரோபோடான அல்ல",
2728  loading: "செயலாக்கம்...",
2729  reload: "மீண்டும் புதுப்பிக்கவும்",
2730  verify: "சரிபார்க்கவும்",
2731  verified: "சரிபார்க்கப்பட்டது",
2732  verifying: "சரிபார்க்கப்படுகிறது...",
2733  waitAlert: "சரிபார்க்கப்படுகிறது... தயவுசெய்து காத்திருக்கவும்."
2734};
2735globalThis.altchaI18n.set("ta", Ml);
2736const Bl = {
2737  ariaLinkLabel: "Altcha.org సందర్శించండి",
2738  enterCode: "కోడ్‌ని నమోదు చేయండి",
2739  enterCodeAria: "మీరు విన్న కోడ్‌ని నమోదు చేయండి. ఆడియో ప్లే చేయడానికి స్పేస్‌ను నొక్కండి.",
2740  error: "చెకింగ్ విఫలమైంది. దయచేసి మరల ప్రయత్నించండి.",
2741  expired: "చెకింగ్ కాలం ముగిసింది. దయచేసి మరల ప్రయత్నించండి.",
2742  verificationRequired: "ధృవీకరణ అవసరం!",
2743  footer: 'ఈ సైట్ రక్షించబడింది <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org సందర్శించండి">ALTCHA</a>',
2744  getAudioChallenge: "ఆడియో ఛాలెంజ్ పొందండి",
2745  label: "నేను రోబోట్ కాదు",
2746  loading: "లోడ్ అవుతోంది...",
2747  reload: "మళ్ళీ లోడ్ చేయండి",
2748  verify: "ధ్రువీకరించు",
2749  verified: "ధ్రువీకరించబడింది",
2750  verifying: "ధ్రువీకరణ జరుగుతుంది...",
2751  waitAlert: "ధ్రువీకరణ జరుగుతుంది... దయచేసి వేచి ఉండండి."
2752};
2753globalThis.altchaI18n.set("te", Bl);
2754const Ul = {
2755  ariaLinkLabel: "เยี่ยมชม Altcha.org",
2756  enterCode: "ป้อนรหัส",
2757  enterCodeAria: "ป้อนรหัสที่คุณได้ยิน กด Space เพื่อเล่นเสียง",
2758  error: "การตรวจสอบล้มเหลว กรุณาลองอีกครั้งภายหลัง",
2759  expired: "การตรวจสอบหมดอายุ กรุณาลองใหม่",
2760  verificationRequired: "จำเป็นต้องตรวจสอบ!",
2761  footer: 'ป้องกันโดย <a href="https://altcha.org/" target="_blank" aria-label="เยี่ยมชม Altcha.org">ALTCHA</a>',
2762  getAudioChallenge: "รับการท้าทายเสียง",
2763  label: "ฉันไม่ใช่บอท",
2764  loading: "กำลังโหลด...",
2765  reload: "โหลดใหม่",
2766  verify: "ตรวจสอบ",
2767  verified: "ตรวจสอบแล้ว",
2768  verifying: "กำลังตรวจสอบ...",
2769  waitAlert: "กำลังตรวจสอบ... กรุณารอ"
2770};
2771globalThis.altchaI18n.set("th", Ul);
2772const Zl = {
2773  ariaLinkLabel: "Altcha.org پر جائیں",
2774  enterCode: "کوڈ درج کریں",
2775  enterCodeAria: "جو کوڈ آپ سنتے ہیں وہ درج کریں۔ آڈیو چلانے کے لیے اسپیس دبائی
2775ں۔",
2776  error: "توثیق ناکام ہو گئی۔ براہ کرم بعد میں دوبارہ کوشش کریں۔",
2777  expired: "توثیق کی مدت ختم ہو گئی ہے۔ براہ کرم دوبارہ کوشش کریں۔",
2778  verificationRequired: "تصدیق ضروری ہے!",
2779  footer: 'کے ذریعے محفوظ <a href="https://altcha.org/" target="_blank" aria-label="Altcha.org پر جائیں">ALTCHA</a>',
2780  getAudioChallenge: "آڈیو چیلنج حاصل کریں",
2781  label: "میں روبوٹ نہیں ہوں",
2782  loading: "لوڈ ہو رہا ہے...",
2783  reload: "دوبارہ لوڈ کریں",
2784  verify: "توثیق کریں",
2785  verified: "توثیق شدہ",
2786  verifying: "توثیق ہو رہی ہے...",
2787  waitAlert: "توثیق ہو رہی ہے... براہ کرم انتظار کریں۔"
2788};
2789globalThis.altchaI18n.set("ur", Zl);
2790const Gl = {
2791  ariaLinkLabel: "Truy cập Altcha.org",
2792  enterCode: "Nhập mã",
2793  enterCodeAria: "Nhập mã bạn nghe được. Nhấn Phím cách để phát âm thanh.",
2794  error: "Xác minh thất bại. Vui lòng thử lại sau.",
2795  expired: "Xác minh đã hết hạn. Vui lòng thử lại.",
2796  verificationRequired: "Yêu cầu xác minh!",
2797  footer: 'Được bảo vệ bởi <a href="https://altcha.org/" target="_blank" aria-label="Truy cập Altcha.org">ALTCHA</a>',
2798  getAudioChallenge: "Nhận thử thách âm thanh",
2799  label: "Tôi không phải là robot",
2800  loading: "Đang tải...",
2801  reload: "Tải lại",
2802  verify: "Xác minh",
2803  verified: "Đã xác minh",
2804  verifying: "Đang xác minh...",
2805  waitAlert: "Đang xác minh... vui lòng chờ."
2806};
2807globalThis.altchaI18n.set("vi", Gl);
2808const Yl = {
2809  ariaLinkLabel: "访问 Altcha.org",
2810  enterCode: "输入代码",
2811  enterCodeAria: "输入您听到的代码。按空格键播放音频。",
2812  error: "验证失败。稍后再试。",
2813  expired: "验证已过期。请重试。",
2814  verificationRequired: "需要验证!",
2815  footer: '由 <a href="https://altcha.org/" target="_blank" aria-label="访问 Altcha.org">ALTCHA</a> 保护',
2816  getAudioChallenge: "获取音频挑战",
2817  label: "我不是机器人",
2818  loading: "加载中...",
2819  reload: "重新加载",
2820  verify: "验证",
2821  verified: "已验证",
2822  verifying: "正在验证...",
2823  waitAlert: "正在验证... 请稍等。"
2824};
2825globalThis.altchaI18n.set("zh-cn", Yl);
2826const Wl = {
2827  ariaLinkLabel: "訪問 Altcha.org",
2828  enterCode: "輸入代碼",
2829  enterCodeAria: "輸入您聽到的代碼。按空格鍵播放音頻。",
2830  error: "驗證失敗。稍後再試。",
2831  expired: "驗證已過期。請重試。",
2832  verificationRequired: "需要驗證!",
2833  footer: '由 <a href="https://altcha.org/" target="_blank" aria-label="訪問 Altcha.org">ALTCHA</a> 保護',
2834  getAudioChallenge: "獲取音頻挑戰",
2835  label: "我不是機器人",
2836  loading: "載入中...",
2837  reload: "重新載入",
2838  verify: "驗證",
2839  verified: "已驗證",
2840  verifying: "正在驗證...",
2841  waitAlert: "正在驗證... 請稍等。"
2842};
2843globalThis.altchaI18n.set("zh-tw", Wl);
2844const qi = `(function(){"use strict";const d=new TextEncoder;function p(e){return[...new Uint8Array(e)].map(t=>t.toString(16).padStart(2,"0")).join("")}async function b(e,t,r){if(typeof crypto>"u"||!("subtle"in crypto)||!("digest"in crypto.subtle))throw new Error("Web Crypto is not available. Secure context is required (https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts).");return p(await crypto.subtle.digest(r.toUpperCase(),d.encode(e+t)))}function w(e,t,r="SHA-256",n=1e6,s=0){const o=new AbortController,a=Date.now();return{promise:(async()=>{for(let c=s;c<=n;c+=1){if(o.signal.aborted)return null;if(await b(t,c,r)===e)return{number:c,took:Date.now()-a}}return null})(),controller:o}}function h(e){const t=atob(e),r=new Uint8Array(t.length);for(let n=0;n<t.length;n++)r[n]=t.charCodeAt(n);return r}function g(e,t=12){const r=new Uint8Array(t);for(let n=0;n<t;n++)r[n]=e%256,e=Math.floor(e/256);return r}async function m(e,t="",r=1e6,n=0){const s="AES-GCM",o=new AbortController,a=Date.now(),l=async()=>{for(let u=n;u<=r;u+=1){if(o.signal.aborted||!c||!y)return null;
2844try{const f=await crypto.subtle.decrypt({name:s,iv:g(u)},c,y);if(f)return{clearText:new TextDecoder().decode(f),took:Date.now()-a}}catch{}}return null};let c=null,y=null;try{y=h(e);const u=await crypto.subtle.digest("SHA-256",d.encode(t));c=await crypto.subtle.importKey("raw",u,s,!1,["decrypt"])}catch{return{promise:Promise.reject(),controller:o}}return{promise:l(),controller:o}}let i;onmessage=async e=>{const{type:t,payload:r,start:n,max:s}=e.data;let o=null;if(t==="abort")i==null||i.abort(),i=void 0;else if(t==="work"){if("obfuscated"in r){const{key:a,obfuscated:l}=r||{};o=await m(l,a,s,n)}else{const{algorithm:a,challenge:l,salt:c}=r||{};o=w(l,c,a,s,n)}i=o.controller,o.promise.then(a=>{self.postMessage(a&&{...a,worker:!0})})}}})();
2845`, Ma = typeof self < "u" && self.Blob && new Blob([qi], { type: "text/javascript;charset=utf-8" });
2846function Kl(e) {
2847  let t;
2848  try {
2849    if (t = Ma && (self.URL || self.webkitURL).createObjectURL(Ma), !t) throw "";
2850    const r = new Worker(t, {
2851      name: e == null ? void 0 : e.name
2852    });
2853    return r.addEventListener("error", () => {
2854      (self.URL || self.webkitURL).revokeObjectURL(t);
2855    }), r;
2856  } catch {
2857    return new Worker(
2858      "data:text/javascript;charset=utf-8," + encodeURIComponent(qi),
2859      {
2860        name: e == null ? void 0 : e.name
2861      }
2862    );
2863  } finally {
2864    t && (self.URL || self.webkitURL).revokeObjectURL(t);
2865  }
2866}
2867const Jl = "5";
2868var Ua;
2869typeof window < "u" && ((Ua = window.__svelte ?? (window.__svelte = {})).v ?? (Ua.v = /* @__PURE__ */ new Set())).add(Jl);
2870const Oi = new TextEncoder();
2871function Xl(e) {
2872  return [...new Uint8Array(e)].map((t) => t.toString(16).padStart(2, "0")).join("");
2873}
2874async function Ql(e, t = "SHA-256", r = 1e5) {
2875  const i = Date.now().toString(16);
2876  e || (e = Math.round(Math.random() * r));
2877  const o = await Hi(i, e, t);
2878  return {
2879    algorithm: t,
2880    challenge: o,
2881    salt: i,
2882    signature: ""
2883  };
2884}
2885async function Hi(e, t, r) {
2886  if (typeof crypto > "u" || !("subtle" in crypto) || !("digest" in crypto.subtle))
2887    throw new Error("Web Crypto is not available. Secure context is required (https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts).");
2888  return Xl(
2889    await crypto.subtle.digest(
2890      r.toUpperCase(),
2891      Oi.encode(e + t)
2892    )
2893  );
2894}
2895function es(e, t, r = "SHA-256", i = 1e6, o = 0) {
2896  const n = new AbortController(), u = Date.now();
2897  return {
2898    promise: (async () => {
2899      for (let c = o; c <= i; c += 1) {
2900        if (n.signal.aborted)
2901          return null;
2902        if (await Hi(t, c, r) === e)
2903          return {
2904            number: c,
2905            took: Date.now() - u
2906          };
2907      }
2908      return null;
2909    })(),
2910    controller: n
2911  };
2912}
2913function Ba() {
2914  try {
2915    return Intl.DateTimeFormat().resolvedOptions().timeZone;
2916  } catch {
2917  }
2918}
2919function ts(e) {
2920  const t = atob(e), r = new Uint8Array(t.length);
2921  for (let i = 0; i < t.length; i++)
2922    r[i] = t.charCodeAt(i);
2923  return r;
2924}
2925function rs(e, t = 12) {
2926  const r = new Uint8Array(t);
2927  for (let i = 0; i < t; i++)
2928    r[i] = e % 256, e = Math.floor(e / 256);
2929  return r;
2930}
2931async function as(e, t = "", r = 1e6, i = 0) {
2932  const o = "AES-GCM", n = new AbortController(), u = Date.now(), s = async () => {
2933    for (let p = i; p <= r; p += 1) {
2934      if (n.signal.aborted || !c || !d)
2935        return null;
2936      try {
2937        const h = await crypto.subtle.decrypt(
2938          {
2939            name: o,
2940            iv: rs(p)
2941          },
2942          c,
2943          d
2944        );
2945        if (h)
2946          return {
2947            clearText: new TextDecoder().decode(h),
2948            took: Date.now() - u
2949          };
2950      } catch {
2951      }
2952    }
2953    return null;
2954  };
2955  let c = null, d = null;
2956  try {
2957    d = ts(e);
2958    const p = await crypto.subtle.digest(
2959      "SHA-256",
2960      Oi.encode(t)
2961    );
2962    c = await crypto.subtle.importKey(
2963      "raw",
2964      p,
2965      o,
2966      !1,
2967      ["decrypt"]
2968    );
2969  } catch {
2970    return {
2971      promise: Promise.reject(),
2972      controller: n
2973    };
2974  }
2975  return {
2976    promise: s(),
2977    controller: n
2978  };
2979}
2980var w = /* @__PURE__ */ ((e) => (e.CODE = "code", e.ERROR = "error", e.VERIFIED = "verified", e.VERIFYING = "verifying", e.UNVERIFIED = "unverified", e.EXPIRED = "expired", e))(w || {}), Q = /* @__PURE__ */ ((e) => (e.ERROR = "error", e.LOADING = "loading", e.PLAYING = "playing", e.PAUSED = "paused", e.READY = "ready", e))(Q || {});
2981const is = {
2982  ariaLinkLabel: "Visit Altcha.org",
2983  enterCode: "Enter code",
2984  enterCodeAria: "Enter code you hear. Press Space to play audio.",
2985  error: "Verification failed. Try again later.",
2986  expired: "Verification expired. Try again.",
2987  footer: 'Protected by <a href="https://altcha.org/" target="_blank" aria-label="Visit Altcha.org">ALTCHA</a>',
2988  getAudioChallenge: "Get an audio challenge",
2989  label: "I'm not a robot",
2990  loading: "Loading...",
2991  reload: "Reload",
2992  verify: "Verify",
2993  verificationRequired: "Verification required!",
2994  verified: "Verified",
2995  verifying: "Verifying...",
2996  waitAlert: "Verifying... please wait."
2997};
2998globalThis.altchaI18n.set("en", is);
2999const xr = (e, t) => {
3000  let r = /* @__PURE__ */ uo(() => On(t == null ? void 0 : t(), 24));
3001  var i = ss();
3002  xe(() => {
vendor: 16,384 bytes, lines 3003-3266
3003    R(i, "width", l(r)), R(i, "height", l(r));
3004  }), O(e, i);
3005};
3006function ns(e, t) {
3007  e.code === "Space" && (e.preventDefault(), e.stopImmediatePropagation(), t());
3008}
3009function os(e, t) {
3010  e.preventDefault(), t();
3011}
3012function ls(e, t, r, i, o, n, u, s) {
3013  var c;
3014  [
3015    w.UNVERIFIED,
3016    w.ERROR,
3017    w.EXPIRED,
3018    w.CODE
3019  ].includes(l(t)) ? r() !== !1 && ((c = l(i)) == null ? void 0 : c.reportValidity()) === !1 ? y(o, !1) : n() ? u() : s() : y(o, !0);
3020}
3021var ss = /* @__PURE__ */ dr('<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" class="altcha-spinner"><path d="M12,1A11,11,0,1,0,23,12,11,11,0,0,0,12,1Zm0,19a8,8,0,1,1,8-8A8,8,0,0,1,12,20Z" fill="currentColor" opacity=".25"></path><path d="M12,4a8,8,0,0,1,7.89,6.7A1.53,1.53,0,0,0,21.38,12h0a1.5,1.5,0,0,0,1.48-1.75,11,11,0,0,0-21.72,0A1.5,1.5,0,0,0,2.62,12h0a1.53,1.53,0,0,0,1.49-1.3A8,8,0,0,1,12,4Z" fill="currentColor"></path></svg>'), us = /* @__PURE__ */ we('<input type="hidden">'), fs = /* @__PURE__ */ we('<div><a target="_blank" class="altcha-logo" aria-hidden="true"><svg width="22" height="22" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2.33955 16.4279C5.88954 20.6586 12.1971 21.2105 16.4279 17.6604C18.4699 15.947 19.6548 13.5911 19.9352 11.1365L17.9886 10.4279C17.8738 12.5624 16.909 14.6459 15.1423 16.1284C11.7577 18.9684 6.71167 18.5269 3.87164 15.1423C1.03163 11.7577 1.4731 6.71166 4.8577 3.87164C8.24231 1.03162 13.2883 1.4731 16.1284 4.8577C16.9767 5.86872 17.5322 7.02798 17.804 8.2324L19.9522 9.01429C19.7622 7.07737 19.0059 5.17558 17.6604 3.57212C14.1104 -0.658624 7.80283 -1.21043 3.57212 2.33956C-0.658625 5.88958 -1.21046 12.1971 2.33955 16.4279Z" fill="currentColor"></path><path d="M3.57212 2.33956C1.65755 3.94607 0.496389 6.11731 0.12782 8.40523L2.04639 9.13961C2.26047 7.15832 3.21057 5.25375 4.8577 3.87164C8.24231 1.03162 13.2883 1.4731 16.1284 4.8577L13.8302 6.78606L19.9633 9.13364C19.7929 7.15555 19.0335 5.20847 17.6604 3.57212C14.1104 -0.658624 7.80283 -1.21043 3.57212 2.33956Z" fill="currentColor"></path><path d="M7 10H5C5 12.7614 7.23858 15 10 15C12.7614 15 15 12.7614 15 10H13C13 11.6569 11.6569 13 10 13C8.3431 13 7 11.6569 7 10Z" fill="currentColor"></path></svg></a></div>'), cs = /* @__PURE__ */ dr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M12.8659 3.00017L22.3922 19.5002C22.6684 19.9785 22.5045 20.5901 22.0262 20.8662C21.8742 20.954 21.7017 21.0002 21.5262 21.0002H2.47363C1.92135 21.0002 1.47363 20.5525 1.47363 20.0002C1.47363 19.8246 1.51984 19.6522 1.60761 19.5002L11.1339 3.00017C11.41 2.52187 12.0216 2.358 12.4999 2.63414C12.6519 2.72191 12.7782 2.84815 12.8659 3.00017ZM10.9999 16.0002V18.0002H12.9999V16.0002H10.9999ZM10.9999 9.00017V14.0002H12.9999V9.00017H10.9999Z"></path></svg>'), ds = /* @__PURE__ */ dr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M15 7C15 6.44772 15.4477 6 16 6C16.5523 6 17 6.44772 17 7V17C17 17.5523 16.5523 18 16 18C15.4477 18 15 17.5523 15 17V7ZM7 7C7 6.44772 7.44772 6 8 6C8.55228 6 9 6.44772 9 7V17C9 17.5523 8.55228 18 8 18C7.44772 18 7 17.5523 7 17V7Z"></path></svg>'), hs = /* @__PURE__ */ dr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M4 12H7C8.10457 12 9 12.8954 9 14V19C9 20.1046 8.10457 21 7 21H4C2.89543 21 2 20.1046 2 19V12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12V19C22 20.1046 21.1046 21 20 21H17C15.8954 21 15 20.1046 15 19V14C15 12.8954 15.8954 12 17 12H20C20 7.58172 16.4183 4 12 4C7.58172 4 4 7.58172 4 12Z"></path></svg>'), gs = /* @__PURE__ */ we('<button type="button" class="altcha-code-challenge-audio"><!></button>'), vs = /* @__PURE__ */ we("<audio hidden autoplay><source></audio>"), bs = /* @__PURE__ */ we('<div class="altcha-code-challenge" role="dialog"><div class="altcha-code-challenge-arrow"></div> <form data-code-challenge-form="1"><img class="altcha-code-challenge-image" alt=""> <input type="text" autocomplete="off" name="code" class="altcha-code-challenge-input" required> <div class="altcha-code-challenge-buttons"><div class="altcha-code-challenge-buttons-left"><!> <button type="button" class="altcha-code-challenge-reload"><svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2V4C16.4183 4 20 7.58172 20 12C20 16.4183 16.4183 20 12 20C7.58172 20 4 16.4183 4 12C4 9.25022 5.38734 6.82447 7.50024 5.38451L7.5 8H9.5V2L3.5 2V4L5.99918 3.99989C3.57075 5.82434 2 8.72873 2 12Z"></path></svg></button></div> <button type="submit" class="altcha-code-challenge-verify"><!> </button></div> <!></form></div>'), ps = /* @__PURE__ */ we("<div><!></div>"), ms = /* @__PURE__ */ we("<div><!></div>"), ys = /* @__PURE__ */ we('<div class="altcha-error"><svg width="14" height="14" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" aria-hidden="true"><path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12"></path></svg> <!></div>'), As = /* @__PURE__ */ we('<div class="altcha-footer"><div><!></div></div>'), ks = /* @__PURE__ */ we('<div class="altcha-anchor-arrow"></div>'), _s = /* @__PURE__ */ we('<!> <div class="altcha"><div class="altcha-main"><div><!> <input type="checkbox"></div> <label class="altcha-label"><!></label> <!> <!> <!></div> <!> <!> <!></div>', 1);
3022function ws(e, t) {
3023  var xa, Ta;
3024  ni(t, !0);
3025  const [r, i] = Zo(), o = () => Uo(Mi, "$altchaI18nStore", r);
3026  let n = x(t, "auto", 7, void 0), u = x(t, "blockspam", 7, void 0), s = x(t, "challengeurl", 7, void 0), c = x(t, "challengejson", 7, void 0), d = x(t, "credentials", 7, void 0), p = x(t, "customfetch", 7, void 0), h = x(t, "debug", 7, !1), v = x(t, "delay", 7, 0), k = x(t, "disableautofocus", 7, !1), V = x(t, "expire", 7, void 0), _ = x(t, "floating", 7, void 0), q = x(t, "floatinganchor", 7, void 0), ce = x(t, "floatingoffset", 7, void 0), K = x(t, "floatingpersist", 7, !1), ee = x(t, "hidefooter", 7, !1), J = x(t, "hidelogo", 7, !1), nt = x(t, "id", 7, void 0), H = x(t, "language", 7, void 0), oe = x(t, "name", 7, "altcha"), me = x(t, "maxnumber", 7, 1e6), At = x(t, "mockerror", 7, !1), ze = x(t, "obfuscated", 7, void 0), Ot = x(t, "plugins", 7, void 0), kt = x(t, "refetchonexpire", 7, !0), Ye = x(t, "sentinel", 7, void 0), Ce = x(t, "spamfilter", 7, !1), ot = x(t, "strings", 7, void 0), ge = x(t, "test", 7, !1), te = x(t, "verifyurl", 7, void 0), lt = x(t, "workers", 23, () => Math.min(16, navigator.hardwareConcurrency || 8)), _t = x(t, "workerurl", 7, void 0);
3027  const { altchaI18n: Fi } = globalThis, Mi = Fi.store, Gr = ["SHA-256", "SHA-384", "SHA-512"], Bi = "https://altcha.org/", Ne = (a, f) => {
3028    t.$$host.dispatchEvent(new CustomEvent(a, { detail: f }));
3029  }, Yr = (Ta = (xa = document.documentElement.lang) == null ? void 0 : xa.split("-")) == null ? void 0 : Ta[0], hr = /* @__PURE__ */ It(() => {
3030    var a;
3031    return s() && new URL(s(), location.origin).host.endsWith(".altcha.org") && !!((a = s()) != null && a.includes("apiKey=ckey_"));
3032  }), gr = /* @__PURE__ */ It(() => c() ? ua(c()) : void 0), Ui = /* @__PURE__ */ It(() => ot() ? ua(ot()) : {}), P = /* @__PURE__ */ It(() => ({
3033    ...Xr(o()),
3034    ...l(Ui)
3035  })), Wr = /* @__PURE__ */ It(() => `${nt() || oe()}_checkbox_${Math.round(Math.random() * 1e8)}`);
3036  let wt = /* @__PURE__ */ D(!1), M = /* @__PURE__ */ D(null), T = /* @__PURE__ */ D(Fe(w.UNVERIFIED)), re = /* @__PURE__ */ D(void 0), Ct = /* @__PURE__ */ D(null), De = /* @__PURE__ */ D(null), vr = /* @__PURE__ */ D(null), st = /* @__PURE__ */ D(null), S = /* @__PURE__ */ D(null), We = /* @__PURE__ */ D(null), Le = null, B = /* @__PURE__ */ D(null), Ke = /* @__PURE__ */ D(!1), qe = [], br = /* @__PURE__ */ D(!1), Re = /* @__PURE__ */ D(null);
3037  Vr(() => {
3038    nn(l(We));
3039  }), Vr(() => {
3040    on(l(T));
3041  }), Xo(() => {
3042    Zi(), l(S) && (l(S).removeEventListener("submit", ia), l(S).removeEventListener("reset", na), l(S).removeEventListener("focusin", aa), y(S, null)), Le && (clearTimeout(Le), Le = null), document.removeEventListener("click", ta), document.removeEventListener("scroll", ra), window.removeEventListener("resize", sa);
3043  }), zi(() => {
3044    var a;
3045    I("mounted", "2.0.0"), I("workers", lt()), Ki(), I("plugins", qe.length ? qe.map((f) => f.constructor.pluginName).join(", ") : "none"), ge() && I("using test mode"), V() && pr(V()), n() !== void 0 && I("auto", n()), _() !== void 0 && ca(_()), y(S, (a = l(re)) == null ? void 0 : a.closest("form"), !0), l(S) && (l(S).addEventListener("submit", ia, { capture: !0 }), l(S).addEventListener("reset", na), (n() === "onfocus" || K() === "focus") && l(S).addEventListener("focusin", aa)), n() === "onload" && (ze() ? Lt() : je()), l(hr) && (ee() || J()) && I("Attributes hidefooter and hidelogo ignored because usage with free API Keys requires attribution."), requestAnimationFrame(() => {
3046      Ne("load");
3047    });
3048  });
3049  function Ht(a, f) {
3050    return btoa(JSON.stringify({
3051      algorithm: a.algorithm,
3052      challenge: a.challenge,
3053      number: f.number,
3054      salt: a.salt,
3055      signature: a.signature,
3056      test: ge() ? !0 : void 0,
3057      took: f.took
3058    }));
3059  }
3060  function Zi() {
3061    for (const a of qe)
3062      a.destroy();
3063  }
3064  function Kr() {
3065    s() && kt() && l(T) === w.VERIFIED ? je() : ut(w.EXPIRED, l(P).expired);
3066  }
3067  async function Gi() {
3068    var a;
3069    if (At())
3070      throw I("mocking error"), new Error("Mocked error.");
3071    if (l(gr))
3072      return I("using provided json data"), l(gr);
3073    if (ge())
3074      return I("generating test challenge", { test: ge() }), Ql(typeof ge() != "boolean" ? +ge() : void 0);
3075    {
3076      if (!s() && l(S)) {
3077        const L = l(S).getAttribute("action");
3078        L != null && L.includes("/form/") && s(L + "/altcha");
3079      }
3080      if (!s())
3081        throw new Error("Attribute challengeurl not set.");
3082      I("fetching challenge from", s());
3083      const f = {
3084        credentials: typeof d() == "boolean" ? "include" : d(),
3085        headers: Ce() !== !1 ? { "x-altcha-spam-filter": "1" } : {}
3086      }, g = await Jr()(s(), f);
3087      if (!g || !(g instanceof Response))
3088        throw new Error("Custom fetch function did not return a response.");
3089      if (g.status !== 200)
3090        throw new Error(`Server responded with ${g.status}.`);
3091      const m = g.headers.get("X-Altcha-Config"), b = await g.json(), C = new URLSearchParams((a = b.salt.split("?")) == null ? void 0 : a[1]), A = C.get("expires") || C.get("expire");
3092      if (A) {
3093        const L = new Date(+A * 1e3), F = isNaN(L.getTime()) ? 0 : L.getTime() - Date.now();
3094        F > 0 && pr(F);
3095      }
3096      if (m)
3097        try {
3098          const L = JSON.parse(m);
3099          L && typeof L == "object" && L.verifyurl && !L.verifyurl.startsWith("fn:") && (L.verifyurl = ea(L.verifyurl));
3100        } catch (L) {
3101          I("unable to configure from X-Altcha-Config", L);
3102        }
3103      return b;
3104    }
3105  }
3106  function Yi(a) {
3107    var g, m;
3108    const f = (g = l(S)) == null ? void 0 : g.querySelector(typeof a == "string" ? `input[name="${a}"]` : 'input[type="email"]:not([data-no-spamfilter])');
3109    return ((m = f == null ? void 0 : f.value) == null ? void 0 : m.slice(f.value.indexOf("@"))) || void 0;
3110  }
3111  function Jr() {
3112    let a = fetch;
3113    if (p())
3114      if (I("using customfetch"), typeof p() == "string") {
3115        if (a = globalThis[p()] || null, !a)
3116          throw new Error(`Custom fetch function not found: ${p()}`);
3117      } else
3118        a = p();
3119    return a;
3120  }
3121  function Xr(a, f = [
3122    H() || "",
3123    document.documentElement.lang || "",
3124    ...navigator.languages
3125  ]) {
3126    const g = Object.keys(a).map((b) => b.toLowerCase()), m = f.reduce(
3127      (b, C) => (C = C.toLowerCase(), b || (a[C] ? C : null) || g.find((A) => C.split("-")[0] === A.split("-")[0]) || null),
3128      null
3129    );
3130    return a[m || "en"];
3131  }
3132  function Wi() {
3133    return Ce() === "ipAddress" ? {
3134      blockedCountries: void 0,
3135      classifier: void 0,
3136      disableRules: void 0,
3137      email: !1,
3138      expectedCountries: void 0,
3139      expectedLanguages: void 0,
3140      fields: !1,
3141      ipAddress: void 0,
3142      text: void 0,
3143      timeZone: void 0
3144    } : typeof Ce() == "object" ? Ce() : {
3145      blockedCountries: void 0,
3146      classifier: void 0,
3147      disableRules: void 0,
3148      email: void 0,
3149      expectedCountries: void 0,
3150      expectedLanguages: void 0,
3151      fields: void 0,
3152      ipAddress: void 0,
3153      text: void 0,
3154      timeZone: void 0
3155    };
3156  }
3157  function Qr(a) {
3158    var g;
3159    return [
3160      ...((g = l(S)) == null ? void 0 : g.querySelectorAll(a != null && a.length ? a.map((m) => `input[name="${m}"]`).join(", ") : 'input[type="text"]:not([data-no-spamfilter]), textarea:not([data-no-spamfilter])')) || []
3161    ].reduce(
3162      (m, b) => {
3163        const C = b.name, A = b.value;
3164        return C && A && (m[C] = /\n/.test(A) ? A.replace(new RegExp("(?<!\\r)\\n", "g"), `\r
3165`) : A), m;
3166      },
3167      {}
3168    );
3169  }
3170  function ea(a, f) {
3171    const g = new URL(s() || location.origin), m = new URL(a, g);
3172    if (m.search || (m.search = g.search), f)
3173      for (const b in f)
3174        f[b] !== void 0 && f[b] !== null && m.searchParams.set(b, f[b]);
3175    return m.toString();
3176  }
3177  function Ki() {
3178    const a = Ot() !== void 0 ? Ot().split(",") : void 0;
3179    for (const f of globalThis.altchaPlugins)
3180      (!a || a.includes(f.pluginName)) && qe.push(new f({
3181        el: l(re),
3182        clarify: Lt,
3183        dispatch: Ne,
3184        getConfiguration: ga,
3185        getFloatingAnchor: va,
3186        getState: ba,
3187        log: I,
3188        reset: ut,
3189        solve: ha,
3190        setState: Ee,
3191        setFloatingAnchor: ma,
3192        verify: je
3193      }));
3194  }
3195  function I(...a) {
3196    (h() || a.some((f) => f instanceof Error)) && console[a[0] instanceof Error ? "error" : "log"]("ALTCHA", `[name=${oe()}]`, ...a);
3197  }
3198  function Ji() {
3199    y(B, Q.PAUSED, !0);
3200  }
3201  function Xi(a) {
3202    y(B, Q.ERROR, !0);
3203  }
3204  function Qi() {
3205    y(B, Q.READY, !0);
3206  }
3207  function en() {
3208    y(B, Q.LOADING, !0);
3209  }
3210  function tn() {
3211    y(B, Q.PLAYING, !0);
3212  }
3213  function rn() {
3214    y(B, Q.PAUSED, !0);
3215  }
3216  function an(a) {
3217    var f;
3218    if (a.preventDefault(), a.stopPropagation(), l(M)) {
3219      const g = new FormData(a.target), m = String(g.get("code"));
3220      if ((f = te()) != null && f.startsWith("fn:")) {
3221        const b = te().replace(/^fn:/, "");
3222        if (I(`calling ${b} function instead of verifyurl`), !(b in globalThis))
3223          throw new Error(`Global function "${b}" is undefined.`);
3224        return globalThis[b]({
3225          challenge: l(M).challenge,
3226          code: m,
3227          solution: l(M).solution
3228        });
3229      }
3230      y(Ke, !0), fa(Ht(l(M).challenge, l(M).solution), m).then(({ reason: b, verified: C }) => {
3231        C ? (y(M, null), Ee(w.VERIFIED), I("verified"), Er().then(() => {
3232          var A;
3233          (A = l(vr)) == null || A.focus(), Ne("verified", { payload: l(Re) });
3234        })) : (ut(), y(We, b || "Verification failed", !0));
3235      }).catch((b) => {
3236        y(M, null), Ee(w.ERROR, b), I("sentinel verification failed:", b);
3237      }).finally(() => {
3238        y(Ke, !1);
3239      });
3240    }
3241  }
3242  function ta(a) {
3243    var g;
3244    const f = a.target;
3245    _() && f && !l(re).contains(f) && (l(T) === w.VERIFIED && K() === !1 || l(T) === w.VERIFIED && K() === "focus" && !((g = l(S)) != null && g.matches(":focus-within")) || n() === "off" && l(T) === w.UNVERIFIED) && pa();
3246  }
3247  function ra() {
3248    _() && l(T) !== w.UNVERIFIED && Et();
3249  }
3250  function nn(a) {
3251    for (const f of qe)
3252      typeof f.onErrorChange == "function" && f.onErrorChange(l(We));
3253  }
3254  function aa(a) {
3255    l(T) === w.UNVERIFIED ? je() : _() && K() === "focus" && l(T) === w.VERIFIED && mr();
3256  }
3257  function ia(a) {
3258    const f = a.target, g = a.submitter;
3259    f != null && f.hasAttribute("data-code-challenge-form") || (l(S) && n() === "onsubmit" ? l(T) === w.UNVERIFIED ? (a.preventDefault(), a.stopPropagation(), je().then(() => {
3260      sn(g);
3261    })) : l(T) !== w.VERIFIED && (a.preventDefault(), a.stopPropagation(), l(T) === w.VERIFYING && oa()) : l(S) && _() && n() === "off" && l(T) === w.UNVERIFIED && (a.preventDefault(), a.stopPropagation(), mr()));
3262  }
3263  function na() {
3264    ut();
3265  }
3266  functi
3266on oa() {
3267    l(T) === w.VERIFYING && l(P).waitAlert && alert(l(P).waitAlert);
3268  }
3269  function la() {
3270    l(De) ? l(De).paused ? (l(De).currentTime = 0, l(De).play()) : l(De).pause() : (y(br, !0), requestAnimationFrame(() => {
3271      var a;
3272      (a = l(De)) == null || a.play();
3273    }));
3274  }
3275  function on(a) {
3276    for (const f of qe)
3277      typeof f.onStateChange == "function" && f.onStateChange(l(T));
3278    _() && l(T) !== w.UNVERIFIED && requestAnimationFrame(() => {
3279      Et();
3280    }), y(wt, l(T) === w.VERIFIED);
3281  }
3282  function sa() {
3283    _() && Et();
3284  }
3285  function ua(a) {
3286    return JSON.parse(a);
3287  }
3288  async function ln(a) {
3289    if (!te())
3290      throw new Error("Attribute verifyurl not set.");
3291    I("requesting server verification from", te());
3292    const f = { payload: a };
3293    if (Ce() !== !1) {
3294      const {
3295        blockedCountries: b,
3296        classifier: C,
3297        disableRules: A,
3298        email: L,
3299        expectedLanguages: F,
3300        expectedCountries: X,
3301        fields: le,
3302        ipAddress: Oe,
3303        text: Ar,
3304        timeZone: Bt
3305      } = Wi();
3306      f.blockedCountries = b, f.classifier = C, f.disableRules = A, f.email = L === !1 ? void 0 : Yi(L), f.expectedCountries = X, f.expectedLanguages = F || (Yr ? [Yr] : void 0), f.fields = le === !1 ? void 0 : Qr(le), f.ipAddress = Oe === !1 ? void 0 : Oe || "auto", f.text = Ar, f.timeZone = Bt === !1 ? void 0 : Bt || Ba();
3307    }
3308    const g = await Jr()(te(), {
3309      body: JSON.stringify(f),
3310      headers: { "content-type": "application/json" },
3311      method: "POST"
3312    });
3313    if (!g || !(g instanceof Response))
3314      throw new Error("Custom fetch function did not return a response.");
3315    if (g.status !== 200)
3316      throw new Error(`Server responded with ${g.status}.`);
3317    const m = await g.json();
3318    if (m != null && m.payload && y(Re, m.payload, !0), Ne("serververification", m), u() && m.classification === "BAD")
3319      throw new Error("SpamFilter returned negative classification.");
3320  }
3321  async function fa(a, f) {
3322    if (!te())
3323      throw new Error("Attribute verifyurl not set.");
3324    I("requesting sentinel verification from", te());
3325    const g = { code: f, payload: a };
3326    Ye() && (g.fields = Ye().fields ? Qr() : void 0, g.timeZone = Ye().timeZone ? Ba() : void 0);
3327    const m = await fetch(te(), {
3328      body: JSON.stringify(g),
3329      headers: { "content-type": "application/json" },
3330      method: "POST"
3331    });
3332    if (!m || !(m instanceof Response))
3333      throw new Error("Fetch function did not return a response.");
3334    if (m.status !== 200)
3335      throw new Error(`Server responded with ${m.status}.`);
3336    const b = await m.json();
3337    return b != null && b.payload && y(Re, b.payload, !0), Ne("sentinelverification", b), b;
3338  }
3339  function sn(a) {
3340    var f;
3341    l(S) && "requestSubmit" in l(S) ? l(S).requestSubmit(a) : (f = l(S)) != null && f.reportValidity() && (a ? a.click() : l(S).submit());
3342  }
3343  function pr(a) {
3344    I("expire", a), Le && (clearTimeout(Le), Le = null), a < 1 ? Kr() : Le = setTimeout(Kr, a);
3345  }
3346  function ca(a) {
3347    I("floating", a), _() !== a && (l(re).style.left = "", l(re).style.top = ""), _(a === !0 || a === "" ? "auto" : a === !1 || a === "false" ? void 0 : _()), _() ? (n() || n("onsubmit"), document.addEventListener("scroll", ra), document.addEventListener("click", ta), window.addEventListener("resize", sa)) : n() === "onsubmit" && n(void 0);
3348  }
3349  function da(a) {
3350    if (!a.algorithm)
3351      throw new Error("Invalid challenge. Property algorithm is missing.");
3352    if (a.signature === void 0)
3353      throw new Error("Invalid challenge. Property signature is missing.");
3354    if (!Gr.includes(a.algorithm.toUpperCase()))
3355      throw new Error(`Unknown algorithm value. Allowed values: ${Gr.join(", ")}`);
3356    if (!a.challenge || a.challenge.length < 40)
3357      throw new Error("Challenge is too short. Min. 40 chars.");
3358    if (!a.salt || a.salt.length < 10)
3359      throw new Error("Salt is too short. Min. 10 chars.");
3360  }
3361  async function ha(a) {
3362    let f = null;
3363    if ("Worker" in window) {
3364      try {
3365        f = await un(a, a.maxNumber || a.maxnumber || me());
3366      } catch (g) {
3367        I(g);
3368      }
3369      if ((f == null ? void 0 : f.number) !== void 0 || "obfuscated" in a)
3370        return { data: a, solution: f };
3371    }
3372    if ("obfuscated" in a) {
3373      const g = await as(a.obfuscated, a.key, a.maxNumber || a.maxnumber);
3374      return { data: a, solution: await g.promise };
3375    }
3376    return {
3377      data: a,
3378      solution: await es(a.challenge, a.salt, a.algorithm, a.maxNumber || a.maxnumber || me()).promise
3379    };
3380  }
3381  async function un(a, f = typeof ge() == "number" ? ge() : a.maxNumber || a.maxnumber || me(), g = Math.
3381ceil(lt())) {
3382    const m = [];
3383    g = Math.min(16, f, Math.max(1, g));
3384    for (let A = 0; A < g; A++)
3385      m.push(altchaCreateWorker(_t()));
3386    const b = Math.ceil(f / g), C = await Promise.all(m.map((A, L) => {
3387      const F = L * b;
3388      return new Promise((X) => {
3389        A.addEventListener("message", (le) => {
3390          if (le.data)
3391            for (const Oe of m)
3392              Oe !== A && Oe.postMessage({ type: "abort" });
3393          X(le.data);
3394        }), A.postMessage({
3395          payload: a,
3396          max: F + b,
3397          start: F,
3398          type: "work"
3399        });
3400      });
3401    }));
3402    for (const A of m)
3403      A.terminate();
3404    return C.find((A) => !!A) || null;
3405  }
3406  async function Lt() {
3407    if (!ze()) {
3408      Ee(w.ERROR);
3409      return;
3410    }
3411    const a = qe.find((f) => f.constructor.pluginName === "obfuscation");
3412    if (!a || !("clarify" in a)) {
3413      Ee(w.ERROR), I("Plugin `obfuscation` not found. Import `altcha/plugins/obfuscation` to load it.");
3414      return;
3415    }
3416    if ("clarify" in a && typeof a.clarify == "function")
3417      return a.clarify();
3418  }
3419  function fn(a) {
3420    a.obfuscated !== void 0 && ze(a.obfuscated), a.auto !== void 0 && (n(a.auto), n() === "onload" && (ze() ? Lt() : je())), a.blockspam !== void 0 && u(!!a.blockspam), a.customfetch !== void 0 && p(a.customfetch), a.floatinganchor !== void 0 && q(a.floatinganchor), a.delay !== void 0 && v(a.delay), a.floatingoffset !== void 0 && ce(a.floatingoffset), a.floating !== void 0 && ca(a.floating), a.expire !== void 0 && (pr(a.expire), V(a.expire)), a.challenge && (c(typeof a.challenge == "string" ? a.challenge : JSON.stringify(a.challenge)), da(l(gr))), a.challengeurl !== void 0 && s(a.challengeurl), a.debug !== void 0 && h(!!a.debug), a.hidefooter !== void 0 && ee(!!a.hidefooter), a.hidelogo !== void 0 && J(!!a.hidelogo), a.language !== void 0 && ot(Xr(o(), [a.language])), a.maxnumber !== void 0 && me(+a.maxnumber), a.mockerror !== void 0 && At(!!a.mockerror), a.name !== void 0 && oe(a.name), a.refetchonexpire !== void 0 && kt(!!a.refetchonexpire), a.sentinel !== void 0 && typeof a.sentinel == "object" && Ye(a.sentinel), a.spamfilter !== void 0 && Ce(typeof a.spamfilter == "object" ? a.spamfilter : !!a.spamfilter), a.strings && ot(typeof a.strings == "string" ? a.strings : JSON.stringify(a.strings)), a.test !== void 0 && ge(typeof a.test == "number" ? a.test : !!a.test), a.verifyurl !== void 0 && te(a.verifyurl), a.workers !== void 0 && lt(+a.workers), a.workerurl !== void 0 && _t(a.workerurl);
3421  }
3422  function ga() {
3423    return {
3424      auto: n(),
3425      blockspam: u(),
3426      challengeurl: s(),
3427      debug: h(),
3428      delay: v(),
3429      expire: V(),
3430      floating: _(),
3431      floatinganchor: q(),
3432      floatingoffset: ce(),
3433      hidefooter: ee(),
3434      hidelogo: J(),
3435      name: oe(),
3436      maxnumber: me(),
3437      mockerror: At(),
3438      obfuscated: ze(),
3439      refetchonexpire: kt(),
3440      spamfilter: Ce(),
3441      strings: l(P),
3442      test: ge(),
3443      verifyurl: te(),
3444      workers: lt(),
3445      workerurl: _t()
3446    };
3447  }
3448  function va() {
3449    return l(st);
3450  }
3451  function cn(a) {
3452    return qe.find((f) => f.constructor.pluginName === a);
3453  }
3454  function ba() {
3455    return l(T);
3456  }
3457  function pa() {
3458    l(re).style.display = "none";
3459  }
3460  function Et(a = 20) {
3461    var f;
3462    if (l(re))
3463      if (l(st) || y(st, (q() ? document.querySelector(q()) : (f = l(S)) == null ? void 0 : f.querySelector('input[type="submit"], button[type="submit"], button:not([type="button"]):not([type="reset"])')) || l(S), !0), l(st)) {
3464        const g = parseInt(ce(), 10) || 12, m = l(st).getBoundingClientRect(), b = l(re).getBoundingClientRect(), C = document.documentElement.clientHeight, A = document.documentElement.clientWidth, L = _() === "auto" ? m.bottom + b.height + g + a > C : _() === "top", F = Math.max(a, Math.min(A - a - b.width, m.left + m.width / 2 - b.width / 2));
3465        if (L ? l(re).style.top = `${m.top - (b.height + g)}px` : l(re).style.top = `${m.bottom + g}px`, l(re).style.left = `${F}px`, l(re).setAttribute("data-floating", L ? "top" : "bottom"), l(Ct)) {
3466          const X = l(Ct).getBoundingClientRect();
3467          l(Ct).style.left = m.left - F + m.width / 2 - X.width / 2 + "px";
3468        }
3469      } else
3470        I("unable to find floating anchor element");
3471  }
3472  function ut(a = w.UNVERIFIED, f = null) {
3473    Le && (clearTimeout(Le), Le = null), y(wt, !1), y(Re, null), y(M, null), y(br, !1), y(B, null), Ee(a, f);
3474  }
3475  function ma(a) {
3476    y(st, a, !0);
3477  }
3478  function Ee(a, f = null) {
3479    y(T, a, !0), y(We, f, !0), Ne("statechange", {
3480      payload: l(Re),
3481      state: l(T)
3482    });
3483  }
3484  function mr() {
3485    l(re).style.display = "block", _() && Et();
3486  }
3487  async function je() {
3488    return ut(w.VERIFYING), await new Promise((a) => setTimeout(a, v() || 0)), Gi().then((a) => (da(a), I("challenge", a), ha(a))).then(({ data: a, solution: f }) => {
3489      var g;
3490      if (I("solution", f), !f || a && "challenge" in a && !("clearText" in f))
3491        if ((f == null ? void 0 : f.number) !== void 0 && "challenge" in a)
3492          if (te() && "codeChallenge" in a)
3493            ((g = document.activeElement) == null ? void 0 : g.tagName) === "INPUT" && k() === !1 && document.activeElement.blur(), y(M, { challenge: a, solution: f }, !0);
3494          else {
3495            if (te() && Ye() !== void 0)
3496              return fa(Ht(a, f));
3497            if (te())
3498              return ln(Ht(a, f));
vendor: 9,195 bytes, lines 3499-3856
3499            y(Re, Ht(a, f), !0), I("payload", l(Re));
3500          }
3501        else
3502          throw I("Unable to find a solution. Ensure that the 'maxnumber' attribute is greater than the randomly generated number."), new Error("Unexpected result returned.");
3503    }).then(() => {
3504      l(M) ? (Ee(w.CODE), Er().then(() => {
3505        Ne("code", { codeChallenge: l(M) });
3506      })) : (Ee(w.VERIFIED), I("verified"), Er().then(() => {
3507        Ne("verified", { payload: l(Re) });
3508      }));
3509    }).catch((a) => {
3510      I(a), Ee(w.ERROR, a.message);
3511    });
3512  }
3513  var ya = _s(), Aa = Vt(ya);
3514  No(Aa, t, "default", {});
3515  var xt = Y(Aa, 2), yr = G(xt), Ft = G(yr);
3516  let ka;
3517  var _a = G(Ft);
3518  {
3519    var dn = (a) => {
3520      xr(a);
3521    };
3522    W(_a, (a) => {
3523      l(T) === w.VERIFYING && a(dn);
3524    });
3525  }
3526  var Je = Y(_a, 2);
3527  qa(Je), Je.__change = [
3528    ls,
3529    T,
3530    Ce,
3531    S,
3532    wt,
3533    ze,
3534    Lt,
3535    je
3536  ], Gt(Je, (a) => y(vr, a), () => l(vr)), Z(Ft);
3537  var Mt = Y(Ft, 2), hn = G(Mt);
3538  {
3539    var gn = (a) => {
3540      var f = Zt(), g = Vt(f);
3541      Xe(g, () => l(P).verified), O(a, f);
3542    }, vn = (a, f) => {
3543      {
3544        var g = (b) => {
3545          var C = Zt(), A = Vt(C);
3546          Xe(A, () => l(P).verifying), O(b, C);
3547        }, m = (b, C) => {
3548          {
3549            var A = (F) => {
3550              var X = Zt(), le = Vt(X);
3551              Xe(le, () => l(P).verificationRequired), O(F, X);
3552            }, L = (F) => {
3553              var X = Zt(), le = Vt(X);
3554              Xe(le, () => l(P).label), O(F, X);
3555            };
3556            W(
3557              b,
3558              (F) => {
3559                l(T) === w.CODE ? F(A) : F(L, !1);
3560              },
3561              C
3562            );
3563          }
3564        };
3565        W(
3566          a,
3567          (b) => {
3568            l(T) === w.VERIFYING ? b(g) : b(m, !1);
3569          },
3570          f
3571        );
3572      }
3573    };
3574    W(hn, (a) => {
3575      l(T) === w.VERIFIED ? a(gn) : a(vn, !1);
3576    });
3577  }
3578  Z(Mt);
3579  var wa = Y(Mt, 2);
3580  {
3581    var bn = (a) => {
3582      var f = us();
3583      qa(f), xe(() => {
3584        R(f, "name", oe()), Fo(f, l(Re));
3585      }), O(a, f);
3586    };
3587    W(wa, (a) => {
3588      l(T) === w.VERIFIED && a(bn);
3589    });
3590  }
3591  var Ca = Y(wa, 2);
3592  {
3593    var pn = (a) => {
3594      var f = fs(), g = G(f);
3595      R(g, "href", Bi), Z(f), xe(() => R(g, "aria-label", l(P).ariaLinkLabel)), O(a, f);
3596    };
3597    W(Ca, (a) => {
3598      (J() !== !0 || l(hr)) && a(pn);
3599    });
3600  }
3601  var mn = Y(Ca, 2);
3602  {
3603    var yn = (a) => {
3604      var f = bs(), g = Y(G(f), 2), m = G(g), b = Y(m, 2);
3605      Vo(b, !k()), b.__keydown = [
3606        ns,
3607        la
3608      ];
3609      var C = Y(b, 2), A = G(C), L = G(A);
3610      {
3611        var F = (ye) => {
3612          var U = gs();
3613          U.__click = la;
3614          var Ut = G(U);
3615          {
3616            var Tt = (ft) => {
3617              xr(ft, () => 20);
3618            }, xn = (ft, Tn) => {
3619              {
3620                var In = (ct) => {
3621                  var kr = cs();
3622                  O(ct, kr);
3623                }, Vn = (ct, kr) => {
3624                  {
3625                    var Rn = (dt) => {
3626                      var _r = ds();
3627                      O(dt, _r);
3628                    }, jn = (dt) => {
3629                      var _r = hs();
3630                      O(dt, _r);
3631                    };
3632                    W(
3633                      ct,
3634                      (dt) => {
3635                        l(B) === Q.PLAYING ? dt(Rn) : dt(jn, !1);
3636                      },
3637                      kr
3638                    );
3639                  }
3640                };
3641                W(
3642                  ft,
3643                  (ct) => {
3644                    l(B) === Q.ERROR ? ct(In) : ct(Vn, !1);
3645                  },
3646                  Tn
3647                );
3648              }
3649            };
3650            W(Ut, (ft) => {
3651              l(B) === Q.LOADING ? ft(Tt) : ft(xn, !1);
3652            });
3653          }
3654          Z(U), xe(() => {
3655            R(U, "title", l(P).getAudioChallenge), U.disabled = l(B) === Q.LOADING || l(B) === Q.ERROR || l(Ke), R(U, "aria-label", l(B) === Q.LOADING ? l(P).loading : l(P).getAudioChallenge);
3656          }), O(ye, U);
3657        };
3658        W(L, (ye) => {
3659          l(M).challenge.codeChallenge.audio && ye(F);
3660        });
3661      }
3662      var X = Y(L, 2);
3663      X.__click = [os, je], Z(A);
3664      var le = Y(A, 2), Oe = G(le);
3665      {
3666        var Ar = (ye) => {
3667          xr(ye, () => 16);
3668        };
3669        W(Oe, (ye) => {
3670          l(Ke) && ye(Ar);
3671        });
3672      }
3673      var Bt = Y(Oe);
3674      Z(le), Z(C);
3675      var Ln = Y(C, 2);
3676      {
3677        var En = (ye) => {
3678          var U = vs(), Ut = G(U);
3679          Z(U), Gt(U, (Tt) => y(De, Tt), () => l(De)), xe((Tt) => R(Ut, "src", Tt), [
3680            () => ea(l(M).challenge.codeChallenge.audio, { language: H() })
3681          ]), He("loadstart", U, en), He("canplay", U, Qi), He("pause", U, rn), He("playing", U, tn), He("ended", U, Ji), He("error", Ut, Xi), O(ye, U);
3682        };
3683        W(Ln, (ye) => {
3684          l(M).challenge.codeChallenge.audio && l(br) && ye(En);
3685        });
3686      }
3687      Z(g), Z(f), xe(() => {
3688        R(f, "aria-label", l(P).verificationRequired), R(m, "src", l(M).challenge.codeChallenge.image), R(b, "minlength", l(M).challenge.codeChallenge.length || 1), R(b, "maxlength", l(M).challenge.codeChallenge.length), R(b, "placeholder", l(P).enterCode), R(b, "aria-label", l(B) === Q.LOADING ? l(P).loading : l(B) === Q.PLAYING ? "" : l(P).enterCodeAria), R(b, "aria-live", l(B) ? "assertive" : "polite"), R(b, "aria-busy", l(B) === Q.LOADING), b.disabled = l(Ke), R(X, "aria-label", l(P).reload), R(X, "title", l(P).reload), X.disabled = l(Ke), le.disabled = l(Ke), R(le, "aria-label", l(P).verify), So(Bt, ` ${l(P).verify ?? ""}`);
3689      }), He("submit", g, an, !0), O(a, f);
3690    };
3691    W(mn, (a) => {
3692      var f;
3693      (f = l(M)) != null && f.challenge.codeChallenge && a(yn);
3694    });
3695  }
3696  Z(yr);
3697  var La = Y(yr, 2);
3698  {
3699    var An = (a) => {
3700      var f = ys(), g = Y(G(f), 2);
3701      {
3702        var m = (C) => {
3703          var A = ps(), L = G(A);
3704          Xe(L, () => l(P).expired), Z(A), xe(() => R(A, "title", l(We))), O(C, A);
3705        }, b = (C) => {
3706          var A = ms(), L = G(A);
3707          Xe(L, () => l(P).error), Z(A), xe(() => R(A, "title", l(We))), O(C, A);
3708        };
3709        W(g, (C) => {
3710          l(T) === w.EXPIRED ? C(m) : C(b, !1);
3711        });
3712      }
3713      Z(f), O(a, f);
3714    };
3715    W(La, (a) => {
3716      (l(We) || l(T) === w.EXPIRED) && a(An);
3717    });
3718  }
3719  var Ea = Y(La, 2);
3720  {
3721    var kn = (a) => {
3722      var f = As(), g = G(f), m = G(g);
3723      Xe(m, () => l(P).footer), Z(g), Z(f), O(a, f);
3724    };
3725    W(Ea, (a) => {
3726      l(P).footer && (ee() !== !0 || l(hr)) && a(kn);
3727    });
3728  }
3729  var _n = Y(Ea, 2);
3730  {
3731    var wn = (a) => {
3732      var f = ks();
3733      Gt(f, (g) => y(Ct, g), () => l(Ct)), O(a, f);
3734    };
3735    W(_n, (a) => {
3736      _() && a(wn);
3737    });
3738  }
3739  Z(xt), Gt(xt, (a) => y(re, a), () => l(re)), xe(
3740    (a) => {
3741      R(xt, "data-state", l(T)), R(xt, "data-floating", _()), ka = qo(Ft, 1, "altcha-checkbox", null, ka, a), R(Je, "id", l(Wr)), Je.required = n() !== "onsubmit" && (!_() || n() !== "off"), R(Mt, "for", l(Wr));
3742    },
3743    [
3744      () => ({
3745        "altcha-checkbox-verifying": l(T) === w.VERIFYING
3746      })
3747    ]
3748  ), He("invalid", Je, oa), Bo(Je, () => l(wt), (a) => y(wt, a)), O(e, ya);
3749  var Cn = oi({
3750    clarify: Lt,
3751    configure: fn,
3752    getConfiguration: ga,
3753    getFloatingAnchor: va,
3754    getPlugin: cn,
3755    getState: ba,
3756    hide: pa,
3757    repositionFloating: Et,
3758    reset: ut,
3759    setFloatingAnchor: ma,
3760    setState: Ee,
3761    show: mr,
3762    verify: je,
3763    get auto() {
3764      return n();
3765    },
3766    set auto(a = void 0) {
3767      n(a), E();
3768    },
3769    get blockspam() {
3770      return u();
3771    },
3772    set blockspam(a = void 0) {
3773      u(a), E();
3774    },
3775    get challengeurl() {
3776      return s();
3777    },
3778    set challengeurl(a = void 0) {
3779      s(a), E();
3780    },
3781    get challengejson() {
3782      return c();
3783    },
3784    set challengejson(a = void 0) {
3785      c(a), E();
3786    },
3787    get credentials() {
3788      return d();
3789    },
3790    set credentials(a = void 0) {
3791      d(a), E();
3792    },
3793    get customfetch() {
3794      return p();
3795    },
3796    set customfetch(a = void 0) {
3797      p(a), E();
3798    },
3799    get debug() {
3800      return h();
3801    },
3802    set debug(a = !1) {
3803      h(a), E();
3804    },
3805    get delay() {
3806      return v();
3807    },
3808    set delay(a = 0) {
3809      v(a), E();
3810    },
3811    get disableautofocus() {
3812      return k();
3813    },
3814    set disableautofocus(a = !1) {
3815      k(a), E();
3816    },
3817    get expire() {
3818      return V();
3819    },
3820    set expire(a = void 0) {
3821      V(a), E();
3822    },
3823    get floating() {
3824      return _();
3825    },
3826    set floating(a = void 0) {
3827      _(a), E();
3828    },
3829    get floatinganchor() {
3830      return q();
3831    },
3832    set floatinganchor(a = void 0) {
3833      q(a), E();
3834    },
3835    get floatingoffset() {
3836      return ce();
3837    },
3838    set floatingoffset(a = void 0) {
3839      ce(a), E();
3840    },
3841    get floatingpersist() {
3842      return K();
3843    },
3844    set floatingpersist(a = !1) {
3845      K(a), E();
3846    },
3847    get hidefooter() {
3848      return ee();
3849    },
3850    set hidefooter(a = !1) {
3851      ee(a), E();
3852    },
3853    get hidelogo() {
3854      return J();
3855    },
3856    set hidelogo(a = !1) {
3857      J(a), E();
3858    },
3859    get id() {
3860      return nt();
3861    },
3862    set id(a = void 0) {
3863      nt(a), E();
3864    },
3865    get language() {
3866      return H();
3867    },
3868    set language(a = void 0) {
3869      H(a), E();
3870    },
3871    get name() {
3872      return oe();
3873    },
3874    set name(a = "altcha") {
3875      oe(a), E();
3876    },
3877    get maxnumber() {
3878      return me();
3879    },
3880    set maxnumber(a = 1e6) {
3881      me(a), E();
3882    },
3883    get mockerror() {
3884      return At();
3885    },
3886    set mockerror(a = !1) {
3887      At(a), E();
3888    },
3889    get obfuscated() {
3890      return ze();
3891    },
3892    set obfuscated(a = void 0) {
3893      ze(a), E();
3894    },
3895    get plugins() {
3896      return Ot();
3897    },
3898    set plugins(a = void 0) {
3899      Ot(a), E();
3900    },
3901    get refetchonexpire() {
3902      return kt();
3903    },
3904    set refetchonexpire(a = !0) {
3905      kt(a), E();
3906    },
3907    get sentinel() {
3908      return Ye();
3909    },
3910    set sentinel(a = void 0) {
3911      Ye(a), E();
3912    },
3913    get spamfilter() {
3914      return Ce();
3915    },
3916    set spamfilter(a = !1) {
3917      Ce(a), E();
3918    },
3919    get strings() {
3920      return ot();
3921    },
3922    set strings(a = void 0) {
3923      ot(a), E();
3924    },
3925    get test() {
3926      return ge();
3927    },
3928    set test(a = !1) {
3929      ge(a), E();
3930    },
3931    get verifyurl() {
3932      return te();
3933    },
3934    set verifyurl(a = void 0) {
3935      te(a), E();
3936    },
3937    get workers() {
3938      return lt();
3939    },
3940    set workers(a = Math.min(16, navigator.hardwareConcurrency || 8)) {
3941      lt(a), E();
3942    },
3943    get workerurl() {
3944      return _t();
3945    },
3946    set workerurl(a = void 0) {
3947      _t(a), E();
3948    }
3949  });
3950  return i(), Cn;
3951}
3952$o(["change", "keydown", "click"]);
3953customElements.define("altcha-widget", Jo(
3954  ws,
3955  {
3956    blockspam: { type: "Boolean" },
3957    debug: { type: "Boolean" },
3958    delay: { type: "Number" },
3959    disableautofocus: { type: "Boolean" },
3960    expire: { type: "Number" },
3961    floatingoffset: { type: "Number" },
3962    hidefooter: { type: "Boolean" },
3963    hidelogo: { type: "Boolean" },
3964    maxnumber: { type: "Number" },
3965    mockerror: { type: "Boolean" },
3966    refetchonexpire: { type: "Boolean" },
3967    test: { type: "Boolean" },
3968    workers: { type: "Number" },
3969    auto: {},
3970    challengeurl: {},
3971    challengejson: {},
3972    credentials: {},
3973    customfetch: {},
3974    floating: {},
3975    floatinganchor: {},
3976    floatingpersist: {},
3977    id: {},
3978    language: {},
3979    name: {},
3980    obfuscated: {},
3981    plugins: {},
3982    sentinel: {},
3983    spamfilter: {},
3984    strings: {},
3985    verifyurl: {},
3986    workerurl: {}
3987  },
3988  ["default"],
3989  [
3990    "clarify",
3991    "configure",
3992    "getConfiguration",
3993    "getFloatingAnchor",
3994    "getPlugin",
3995    "getState",
3996    "hide",
3997    "repositionFloating",
3998    "reset",
3999    "setFloatingAnchor",
4000    "setState",
4001    "show",
4002    "verify"
4003  ],
4004  !1
4005));
4006const Cs = '@keyframes altcha-spinner{to{transform:rotate(360deg)}}.altcha{background:var(--altcha-color-base, transparent);border:var(--altcha-border-width, 1px) solid var(--altcha-color-border, #a0a0a0);border-radius:var(--altcha-border-radius, 3px);color:var(--altcha-color-text, currentColor);display:flex;flex-direction:column;max-width:var(--altcha-max-width, 260px);position:relative}.altcha:focus-within{border-color:var(--altcha-color-border-focus, currentColor)}.altcha[data-floating]{background:var(--altcha-color-base, white);display:none;filter:drop-shadow(3px 3px 6px rgba(0,0,0,.2));left:-100%;position:fixed;top:-100%;width:var(--altcha-max-width, 260px);z-index:999999}.altcha[data-floating=top] .altcha-anchor-arrow{border-bottom-color:transparent;border-top-color:var(--altcha-color-border, #a0a0a0);bottom:-12px;top:auto}.altcha[data-floating=bottom]:focus-within::after{border-bottom-color:var(--altcha-color-border-focus, currentColor)}.altcha[data-floating=top]:focus-within::after{border-top-color:var(--altcha-color-border-focus, currentColor)}.altcha[data-floating]:not([data-state=unverified]){display:block}.altcha-anchor-arrow{border:6px solid transparent;border-bottom-color:var(--altcha-color-border, #a0a0a0);content:"";height:0;left:12px;position:absolute;top:-12px;width:0}.altcha-main{align-items:center;display:flex;gap:.4rem;padding:.7rem;position:relative}.altcha-code-challenge{background:var(--altcha-color-base, white);border:1px solid var(--altcha-color-border-focus, currentColor);border-radius:var(--altcha-border-radius, 3px);filter:drop-shadow(3px 3px 6px rgba(0,0,0,.2));padding:.5rem;position:absolute;top:2.5rem;z-index:9999999}.altcha-code-challenge>form{display:flex;flex-direction:column;gap:.5rem}.altcha-code-challenge-input{border:1px solid currentColor;border-radius:3px;box-sizing:border-box;outline:0;font-size:16px;padding:.35rem;width:220px}.altcha-code-challenge-input:focus{outline:2px solid color-mix(in srgb,var(--altcha-color-active, #1D1DC9) 20%,transparent)}.altcha-code-challenge-input:disabled{opacity:.7}.altcha-code-challenge-image{background-color:#fff;border:1px solid currentColor;border-radius:3px;box-sizing:border-box;object-fit:contain;height:50px;width:220px}.altcha-code-challenge-audio,.altcha-code-challenge-reload{background:color-mix(in srgb,var(--altcha-color-text, currentColor) 10%,transparent);border:0;border-radius:3px;color:var(--altcha-color-text, currentColor);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:.35rem}.altcha-code-challenge-audio:disabled,.altcha-code-challenge-reload:disabled,.altcha-code-challenge-verify:disabled{opacity:.7;pointer-events:none}.altcha-code-challenge-audio>*,.altcha-code-challenge-reload>*{height:20px;width:20px}.altcha-code-challenge-buttons{display:flex;justify-content:space-between}.altcha-code-challenge-buttons-left{display:flex;gap:.25rem}.altcha-code-challenge-verify{align-items:center;background:var(--altcha-color-active, #1D1DC9);border:0;border-radius:3px;color:#fff;cursor:pointer;display:flex;gap:.5rem;font-size:100%;padding:.35rem 1rem}.altcha-code-challenge-arrow{border:6px solid transparent;border-bottom-color:var(--altcha-color-border, currentColor);content:"";height:0;left:.15rem;position:absolute;top:-12px;width:0}.altcha[data-floating=top] .altcha-code-challenge{top:-150px}.altcha[data-floating=top] .altcha-code-challenge-arrow{border-bottom-color:transparent;border-top-color:var(--altcha-color-border, currentColor);bottom:-12px;top:auto}.altcha-label{cursor:pointer;flex-grow:1}.altcha-logo{color:currentColor!important;opacity:.7}.altcha-footer:hover,.altcha-logo:hover{opacity:1}.altcha-error{color:var(--altcha-color-error-text, #f23939);display:flex;font-size:.85rem;gap:.3rem;padding:0 .7rem .7rem}.altcha-footer{align-items:center;background-color:var(--altcha-color-footer-bg, transparent);display:flex;font-size:.75rem;opacity:.7;justify-content:end;padding:.2rem .7rem}.altcha-footer a{color:currentColor}.altcha-checkbox{display:flex;align-items:center;justify-content:center;height:24px;position:relative;width:24px}.altcha-checkbox .altcha-spinner{bottom:0;left:0;position:absolute;right:0;top:0}.altcha-checkbox input{width:18px;height:18px;margin:0}.altcha-checkbox-verifying input{appearance:none;opacity:0;pointer-events:none}.altcha-spinner{animation:altcha-spinner .75s infinite linear;transform-origin:center}';
4007function Ls(e, t = "__altcha-css") {
4008  if (!document.getElementById(t)) {
4009    const r = document.createElement("style");
4010    r.id = t, r.textContent = e, document.head.appendChild(r);
4011  }
4012}
4013globalThis.altchaCreateWorker = (e) => e ? new Worker(new URL(e)) : new Kl();
4014Ls(Cs);
4015export {
4016  ws as Altcha
4017};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.