function rE(e, t) {
    const n = Object.create(null),
        r = e.split(",");
    for (let A = 0; A < r.length; A++) n[r[A]] = !0;
    return t ? A => !!n[A.toLowerCase()] : A => !!n[A]
}
const AE = () => {},
    Jh = Object.assign,
    iE = Object.prototype.hasOwnProperty,
    Dc = (e, t) => iE.call(e, t),
    jA = Array.isArray,
    Ru = e => R7(e) === "[object Map]",
    qh = e => typeof e == "function",
    sE = e => typeof e == "string",
    Zh = e => typeof e == "symbol",
    o0 = e => e !== null && typeof e == "object",
    aE = Object.prototype.toString,
    R7 = e => aE.call(e),
    oE = e => R7(e).slice(8, -1),
    e6 = e => sE(e) && e !== "NaN" && e[0] !== "-" && "" + parseInt(e, 10) === e,
    t6 = (e, t) => !Object.is(e, t),
    lE = (e, t, n) => {
        Object.defineProperty(e, t, {
            configurable: !0,
            enumerable: !1,
            value: n
        })
    };
let br;
class n6 {
    constructor(t = !1) {
        this.detached = t, this._active = !0, this.effects = [], this.cleanups = [], this.parent = br, !t && br && (this.index = (br.scopes || (br.scopes = [])).push(this) - 1)
    }
    get active() {
        return this._active
    }
    run(t) {
        if (this._active) {
            const n = br;
            try {
                return br = this, t()
            } finally {
                br = n
            }
        }
    }
    on() {
        br = this
    }
    off() {
        br = this.parent
    }
    stop(t) {
        if (this._active) {
            let n, r;
            for (n = 0, r = this.effects.length; n < r; n++) this.effects[n].stop();
            for (n = 0, r = this.cleanups.length; n < r; n++) this.cleanups[n]();
            if (this.scopes)
                for (n = 0, r = this.scopes.length; n < r; n++) this.scopes[n].stop(!0);
            if (!this.detached && this.parent && !t) {
                const A = this.parent.scopes.pop();
                A && A !== this && (this.parent.scopes[this.index] = A, A.index = this.index)
            }
            this.parent = void 0, this._active = !1
        }
    }
}

function Pc(e) {
    return new n6(e)
}

function N7(e, t = br) {
    t && t.active && t.effects.push(e)
}

function l0() {
    return br
}

function r6(e) {
    br && br.cleanups.push(e)
}
const A6 = e => {
        const t = new Set(e);
        return t.w = 0, t.n = 0, t
    },
    $7 = e => (e.w & ts) > 0,
    K7 = e => (e.n & ts) > 0,
    uE = ({
        deps: e
    }) => {
        if (e.length)
            for (let t = 0; t < e.length; t++) e[t].w |= ts
    },
    cE = e => {
        const {
            deps: t
        } = e;
        if (t.length) {
            let n = 0;
            for (let r = 0; r < t.length; r++) {
                const A = t[r];
                $7(A) && !K7(A) ? A.delete(e) : t[n++] = A, A.w &= ~ts, A.n &= ~ts
            }
            t.length = n
        }
    },
    tc = new WeakMap;
let ll = 0,
    ts = 1;
const l2 = 30;
let eA;
const Ks = Symbol(""),
    u2 = Symbol("");
class u0 {
    constructor(t, n = null, r) {
        this.fn = t, this.scheduler = n, this.active = !0, this.deps = [], this.parent = void 0, N7(this, r)
    }
    run() {
        if (!this.active) return this.fn();
        let t = eA,
            n = Xi;
        for (; t;) {
            if (t === this) return;
            t = t.parent
        }
        try {
            return this.parent = eA, eA = this, Xi = !0, ts = 1 << ++ll, ll <= l2 ? uE(this) : j5(this), this.fn()
        } finally {
            ll <= l2 && cE(this), ts = 1 << --ll, eA = this.parent, Xi = n, this.parent = void 0, this.deferStop && this.stop()
        }
    }
    stop() {
        eA === this ? this.deferStop = !0 : this.active && (j5(this), this.onStop && this.onStop(), this.active = !1)
    }
}

function j5(e) {
    const {
        deps: t
    } = e;
    if (t.length) {
        for (let n = 0; n < t.length; n++) t[n].delete(e);
        t.length = 0
    }
}

function fE(e, t) {
    e.effect && (e = e.effect.fn);
    const n = new u0(e);
    t && (Jh(n, t), t.scope && N7(n, t.scope)), (!t || !t.lazy) && n.run();
    const r = n.run.bind(n);
    return r.effect = n, r
}

function dE(e) {
    e.effect.stop()
}
let Xi = !0;
const V7 = [];

function wo() {
    V7.push(Xi), Xi = !1
}

function yo() {
    const e = V7.pop();
    Xi = e === void 0 ? !0 : e
}

function mr(e, t, n) {
    if (Xi && eA) {
        let r = tc.get(e);
        r || tc.set(e, r = new Map);
        let A = r.get(n);
        A || r.set(n, A = A6()), G7(A)
    }
}

function G7(e, t) {
    let n = !1;
    ll <= l2 ? K7(e) || (e.n |= ts, n = !$7(e)) : n = !e.has(eA), n && (e.add(eA), eA.deps.push(e))
}

function ri(e, t, n, r, A, i) {
    const s = tc.get(e);
    if (!s) return;
    let a = [];
    if (t === "clear") a = [...s.values()];
    else if (n === "length" && jA(e)) {
        const o = Number(r);
        s.forEach((l, u) => {
            (u === "length" || u >= o) && a.push(l)
        })
    } else switch (n !== void 0 && a.push(s.get(n)), t) {
        case "add":
            jA(e) ? e6(n) && a.push(s.get("length")) : (a.push(s.get(Ks)), Ru(e) && a.push(s.get(u2)));
            break;
        case "delete":
            jA(e) || (a.push(s.get(Ks)), Ru(e) && a.push(s.get(u2)));
            break;
        case "set":
            Ru(e) && a.push(s.get(Ks));
            break
    }
    if (a.length === 1) a[0] && c2(a[0]);
    else {
        const o = [];
        for (const l of a) l && o.push(...l);
        c2(A6(o))
    }
}

function c2(e, t) {
    const n = jA(e) ? e : [...e];
    for (const r of n) r.computed && Y5(r);
    for (const r of n) r.computed || Y5(r)
}

function Y5(e, t) {
    (e !== eA || e.allowRecurse) && (e.scheduler ? e.scheduler() : e.run())
}

function hE(e, t) {
    var n;
    return (n = tc.get(e)) == null ? void 0 : n.get(t)
}
const pE = rE("__proto__,__v_isRef,__isVue"),
    z7 = new Set(Object.getOwnPropertyNames(Symbol).filter(e => e !== "arguments" && e !== "caller").map(e => Symbol[e]).filter(Zh)),
    gE = Oc(),
    vE = Oc(!1, !0),
    mE = Oc(!0),
    BE = Oc(!0, !0),
    X5 = wE();

function wE() {
    const e = {};
    return ["includes", "indexOf", "lastIndexOf"].forEach(t => {
        e[t] = function(...n) {
            const r = Et(this);
            for (let i = 0, s = this.length; i < s; i++) mr(r, "get", i + "");
            const A = r[t](...n);
            return A === -1 || A === !1 ? r[t](...n.map(Et)) : A
        }
    }), ["push", "pop", "shift", "unshift", "splice"].forEach(t => {
        e[t] = function(...n) {
            wo();
            const r = Et(this)[t].apply(this, n);
            return yo(), r
        }
    }), e
}

function yE(e) {
    const t = Et(this);
    return mr(t, "has", e), t.hasOwnProperty(e)
}

function Oc(e = !1, t = !1) {
    return function(r, A, i) {
        if (A === "__v_isReactive") return !e;
        if (A === "__v_isReadonly") return e;
        if (A === "__v_isShallow") return t;
        if (A === "__v_raw" && i === (e ? t ? Z7 : q7 : t ? J7 : X7).get(r)) return r;
        const s = jA(r);
        if (!e) {
            if (s && Dc(X5, A)) return Reflect.get(X5, A, i);
            if (A === "hasOwnProperty") return yE
        }
        const a = Reflect.get(r, A, i);
        return (Zh(A) ? z7.has(A) : pE(A)) || (e || mr(r, "get", A), t) ? a : Rt(a) ? s && e6(A) ? a : a.value : o0(a) ? e ? Co(a) : Nt(a) : a
    }
}
const CE = W7(),
    xE = W7(!0);

function W7(e = !1) {
    return function(n, r, A, i) {
        let s = n[r];
        if (Js(s) && Rt(s) && !Rt(A)) return !1;
        if (!e && (!Rl(A) && !Js(A) && (s = Et(s), A = Et(A)), !jA(n) && Rt(s) && !Rt(A))) return s.value = A, !0;
        const a = jA(n) && e6(r) ? Number(r) < n.length : Dc(n, r),
            o = Reflect.set(n, r, A, i);
        return n === Et(i) && (a ? t6(A, s) && ri(n, "set", r, A) : ri(n, "add", r, A)), o
    }
}

function EE(e, t) {
    const n = Dc(e, t);
    e[t];
    const r = Reflect.deleteProperty(e, t);
    return r && n && ri(e, "delete", t, void 0), r
}

function bE(e, t) {
    const n = Reflect.has(e, t);
    return (!Zh(t) || !z7.has(t)) && mr(e, "has", t), n
}

function FE(e) {
    return mr(e, "iterate", jA(e) ? "length" : Ks), Reflect.ownKeys(e)
}
const j7 = {
        get: gE,
        set: CE,
        deleteProperty: EE,
        has: bE,
        ownKeys: FE
    },
    Y7 = {
        get: mE,
        set(e, t) {
            return !0
        },
        deleteProperty(e, t) {
            return !0
        }
    },
    _E = Jh({}, j7, {
        get: vE,
        set: xE
    }),
    SE = Jh({}, Y7, {
        get: BE
    }),
    i6 = e => e,
    Lc = e => Reflect.getPrototypeOf(e);

function N0(e, t, n = !1, r = !1) {
    e = e.__v_raw;
    const A = Et(e),
        i = Et(t);
    n || (t !== i && mr(A, "get", t), mr(A, "get", i));
    const {
        has: s
    } = Lc(A), a = r ? i6 : n ? a6 : Nl;
    if (s.call(A, t)) return a(e.get(t));
    if (s.call(A, i)) return a(e.get(i));
    e !== A && e.get(t)
}

function $0(e, t = !1) {
    const n = this.__v_raw,
        r = Et(n),
        A = Et(e);
    return t || (e !== A && mr(r, "has", e), mr(r, "has", A)), e === A ? n.has(e) : n.has(e) || n.has(A)
}

function K0(e, t = !1) {
    return e = e.__v_raw, !t && mr(Et(e), "iterate", Ks), Reflect.get(e, "size", e)
}

function J5(e) {
    e = Et(e);
    const t = Et(this);
    return Lc(t).has.call(t, e) || (t.add(e), ri(t, "add", e, e)), this
}

function q5(e, t) {
    t = Et(t);
    const n = Et(this),
        {
            has: r,
            get: A
        } = Lc(n);
    let i = r.call(n, e);
    i || (e = Et(e), i = r.call(n, e));
    const s = A.call(n, e);
    return n.set(e, t), i ? t6(t, s) && ri(n, "set", e, t) : ri(n, "add", e, t), this
}

function Z5(e) {
    const t = Et(this),
        {
            has: n,
            get: r
        } = Lc(t);
    let A = n.call(t, e);
    A || (e = Et(e), A = n.call(t, e)), r && r.call(t, e);
    const i = t.delete(e);
    return A && ri(t, "delete", e, void 0), i
}

function eg() {
    const e = Et(this),
        t = e.size !== 0,
        n = e.clear();
    return t && ri(e, "clear", void 0, void 0), n
}

function V0(e, t) {
    return function(r, A) {
        const i = this,
            s = i.__v_raw,
            a = Et(s),
            o = t ? i6 : e ? a6 : Nl;
        return !e && mr(a, "iterate", Ks), s.forEach((l, u) => r.call(A, o(l), o(u), i))
    }
}

function G0(e, t, n) {
    return function(...r) {
        const A = this.__v_raw,
            i = Et(A),
            s = Ru(i),
            a = e === "entries" || e === Symbol.iterator && s,
            o = e === "keys" && s,
            l = A[e](...r),
            u = n ? i6 : t ? a6 : Nl;
        return !t && mr(i, "iterate", o ? u2 : Ks), {
            next() {
                const {
                    value: f,
                    done: d
                } = l.next();
                return d ? {
                    value: f,
                    done: d
                } : {
                    value: a ? [u(f[0]), u(f[1])] : u(f),
                    done: d
                }
            },
            [Symbol.iterator]() {
                return this
            }
        }
    }
}

function bi(e) {
    return function(...t) {
        return e === "delete" ? !1 : this
    }
}

function QE() {
    const e = {
            get(i) {
                return N0(this, i)
            },
            get size() {
                return K0(this)
            },
            has: $0,
            add: J5,
            set: q5,
            delete: Z5,
            clear: eg,
            forEach: V0(!1, !1)
        },
        t = {
            get(i) {
                return N0(this, i, !1, !0)
            },
            get size() {
                return K0(this)
            },
            has: $0,
            add: J5,
            set: q5,
            delete: Z5,
            clear: eg,
            forEach: V0(!1, !0)
        },
        n = {
            get(i) {
                return N0(this, i, !0)
            },
            get size() {
                return K0(this, !0)
            },
            has(i) {
                return $0.call(this, i, !0)
            },
            add: bi("add"),
            set: bi("set"),
            delete: bi("delete"),
            clear: bi("clear"),
            forEach: V0(!0, !1)
        },
        r = {
            get(i) {
                return N0(this, i, !0, !0)
            },
            get size() {
                return K0(this, !0)
            },
            has(i) {
                return $0.call(this, i, !0)
            },
            add: bi("add"),
            set: bi("set"),
            delete: bi("delete"),
            clear: bi("clear"),
            forEach: V0(!0, !0)
        };
    return ["keys", "values", "entries", Symbol.iterator].forEach(i => {
        e[i] = G0(i, !1, !1), n[i] = G0(i, !0, !1), t[i] = G0(i, !1, !0), r[i] = G0(i, !0, !0)
    }), [e, n, t, r]
}
const [UE, TE, IE, DE] = QE();

function kc(e, t) {
    const n = t ? e ? DE : IE : e ? TE : UE;
    return (r, A, i) => A === "__v_isReactive" ? !e : A === "__v_isReadonly" ? e : A === "__v_raw" ? r : Reflect.get(Dc(n, A) && A in r ? n : r, A, i)
}
const PE = {
        get: kc(!1, !1)
    },
    OE = {
        get: kc(!1, !0)
    },
    LE = {
        get: kc(!0, !1)
    },
    kE = {
        get: kc(!0, !0)
    },
    X7 = new WeakMap,
    J7 = new WeakMap,
    q7 = new WeakMap,
    Z7 = new WeakMap;

function HE(e) {
    switch (e) {
        case "Object":
        case "Array":
            return 1;
        case "Map":
        case "Set":
        case "WeakMap":
        case "WeakSet":
            return 2;
        default:
            return 0
    }
}

function ME(e) {
    return e.__v_skip || !Object.isExtensible(e) ? 0 : HE(oE(e))
}

function Nt(e) {
    return Js(e) ? e : Hc(e, !1, j7, PE, X7)
}

function e8(e) {
    return Hc(e, !1, _E, OE, J7)
}

function Co(e) {
    return Hc(e, !0, Y7, LE, q7)
}

function RE(e) {
    return Hc(e, !0, SE, kE, Z7)
}

function Hc(e, t, n, r, A) {
    if (!o0(e) || e.__v_raw && !(t && e.__v_isReactive)) return e;
    const i = A.get(e);
    if (i) return i;
    const s = ME(e);
    if (s === 0) return e;
    const a = new Proxy(e, s === 2 ? r : n);
    return A.set(e, a), a
}

function YA(e) {
    return Js(e) ? YA(e.__v_raw) : !!(e && e.__v_isReactive)
}

function Js(e) {
    return !!(e && e.__v_isReadonly)
}

function Rl(e) {
    return !!(e && e.__v_isShallow)
}

function s6(e) {
    return YA(e) || Js(e)
}

function Et(e) {
    const t = e && e.__v_raw;
    return t ? Et(t) : e
}

function c0(e) {
    return lE(e, "__v_skip", !0), e
}
const Nl = e => o0(e) ? Nt(e) : e,
    a6 = e => o0(e) ? Co(e) : e;

function o6(e) {
    Xi && eA && (e = Et(e), G7(e.dep || (e.dep = A6())))
}

function Mc(e, t) {
    e = Et(e);
    const n = e.dep;
    n && c2(n)
}

function Rt(e) {
    return !!(e && e.__v_isRef === !0)
}

function Ue(e) {
    return t8(e, !1)
}

function Rc(e) {
    return t8(e, !0)
}

function t8(e, t) {
    return Rt(e) ? e : new NE(e, t)
}
class NE {
    constructor(t, n) {
        this.__v_isShallow = n, this.dep = void 0, this.__v_isRef = !0, this._rawValue = n ? t : Et(t), this._value = n ? t : Nl(t)
    }
    get value() {
        return o6(this), this._value
    }
    set value(t) {
        const n = this.__v_isShallow || Rl(t) || Js(t);
        t = n ? t : Et(t), t6(t, this._rawValue) && (this._rawValue = t, this._value = n ? t : Nl(t), Mc(this))
    }
}

function $E(e) {
    Mc(e)
}

function gr(e) {
    return Rt(e) ? e.value : e
}

function KE(e) {
    return qh(e) ? e() : gr(e)
}
const VE = {
    get: (e, t, n) => gr(Reflect.get(e, t, n)),
    set: (e, t, n, r) => {
        const A = e[t];
        return Rt(A) && !Rt(n) ? (A.value = n, !0) : Reflect.set(e, t, n, r)
    }
};

function l6(e) {
    return YA(e) ? e : new Proxy(e, VE)
}
class GE {
    constructor(t) {
        this.dep = void 0, this.__v_isRef = !0;
        const {
            get: n,
            set: r
        } = t(() => o6(this), () => Mc(this));
        this._get = n, this._set = r
    }
    get value() {
        return this._get()
    }
    set value(t) {
        this._set(t)
    }
}

function u6(e) {
    return new GE(e)
}

function c6(e) {
    const t = jA(e) ? new Array(e.length) : {};
    for (const n in e) t[n] = r8(e, n);
    return t
}
class zE {
    constructor(t, n, r) {
        this._object = t, this._key = n, this._defaultValue = r, this.__v_isRef = !0
    }
    get value() {
        const t = this._object[this._key];
        return t === void 0 ? this._defaultValue : t
    }
    set value(t) {
        this._object[this._key] = t
    }
    get dep() {
        return hE(Et(this._object), this._key)
    }
}
class WE {
    constructor(t) {
        this._getter = t, this.__v_isRef = !0, this.__v_isReadonly = !0
    }
    get value() {
        return this._getter()
    }
}

function n8(e, t, n) {
    return Rt(e) ? e : qh(e) ? new WE(e) : o0(e) && arguments.length > 1 ? r8(e, t, n) : Ue(e)
}

function r8(e, t, n) {
    const r = e[t];
    return Rt(r) ? r : new zE(e, t, n)
}
class jE {
    constructor(t, n, r, A) {
        this._setter = n, this.dep = void 0, this.__v_isRef = !0, this.__v_isReadonly = !1, this._dirty = !0, this.effect = new u0(t, () => {
            this._dirty || (this._dirty = !0, Mc(this))
        }), this.effect.computed = this, this.effect.active = this._cacheable = !A, this.__v_isReadonly = r
    }
    get value() {
        const t = Et(this);
        return o6(t), (t._dirty || !t._cacheable) && (t._dirty = !1, t._value = t.effect.run()), t._value
    }
    set value(t) {
        this._setter(t)
    }
}

function YE(e, t, n = !1) {
    let r, A;
    const i = qh(e);
    return i ? (r = e, A = AE) : (r = e.get, A = e.set), new jE(r, A, i || !A, n)
}

function A8(e, t) {
    const n = Object.create(null),
        r = e.split(",");
    for (let A = 0; A < r.length; A++) n[r[A]] = !0;
    return t ? A => !!n[A.toLowerCase()] : A => !!n[A]
}
const Wt = {},
    za = [],
    xA = () => {},
    XE = () => !1,
    JE = /^on[^a-z]/,
    Nc = e => JE.test(e),
    i8 = e => e.startsWith("onUpdate:"),
    On = Object.assign,
    f6 = (e, t) => {
        const n = e.indexOf(t);
        n > -1 && e.splice(n, 1)
    },
    qE = Object.prototype.hasOwnProperty,
    Lt = (e, t) => qE.call(e, t),
    mt = Array.isArray,
    s8 = e => $c(e) === "[object Map]",
    a8 = e => $c(e) === "[object Set]",
    ZE = e => $c(e) === "[object RegExp]",
    vt = e => typeof e == "function",
    Fn = e => typeof e == "string",
    hn = e => e !== null && typeof e == "object",
    d6 = e => hn(e) && vt(e.then) && vt(e.catch),
    o8 = Object.prototype.toString,
    $c = e => o8.call(e),
    l8 = e => $c(e) === "[object Object]",
    Bl = A8(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),
    Kc = e => {
        const t = Object.create(null);
        return n => t[n] || (t[n] = e(n))
    },
    eb = /-(\w)/g,
    sA = Kc(e => e.replace(eb, (t, n) => n ? n.toUpperCase() : "")),
    tb = /\B([A-Z])/g,
    Vc = Kc(e => e.replace(tb, "-$1").toLowerCase()),
    Gc = Kc(e => e.charAt(0).toUpperCase() + e.slice(1)),
    wl = Kc(e => e ? `on${Gc(e)}` : ""),
    f2 = (e, t) => !Object.is(e, t),
    yl = (e, t) => {
        for (let n = 0; n < e.length; n++) e[n](t)
    },
    d2 = (e, t, n) => {
        Object.defineProperty(e, t, {
            configurable: !0,
            enumerable: !1,
            value: n
        })
    },
    nb = e => {
        const t = parseFloat(e);
        return isNaN(t) ? e : t
    },
    rb = e => {
        const t = Fn(e) ? Number(e) : NaN;
        return isNaN(t) ? e : t
    };
let tg;
const h2 = () => tg || (tg = typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : typeof window < "u" ? window : typeof global < "u" ? global : {}),
    Ab = "Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console",
    ib = A8(Ab);

function f0(e) {
    if (mt(e)) {
        const t = {};
        for (let n = 0; n < e.length; n++) {
            const r = e[n],
                A = Fn(r) ? lb(r) : f0(r);
            if (A)
                for (const i in A) t[i] = A[i]
        }
        return t
    } else {
        if (Fn(e)) return e;
        if (hn(e)) return e
    }
}
const sb = /;(?![^(]*\))/g,
    ab = /:([^]+)/,
    ob = /\/\*[^]*?\*\//g;

function lb(e) {
    const t = {};
    return e.replace(ob, "").split(sb).forEach(n => {
        if (n) {
            const r = n.split(ab);
            r.length > 1 && (t[r[0].trim()] = r[1].trim())
        }
    }), t
}

function d0(e) {
    let t = "";
    if (Fn(e)) t = e;
    else if (mt(e))
        for (let n = 0; n < e.length; n++) {
            const r = d0(e[n]);
            r && (t += r + " ")
        } else if (hn(e))
            for (const n in e) e[n] && (t += n + " ");
    return t.trim()
}

function ub(e) {
    if (!e) return null;
    let {
        class: t,
        style: n
    } = e;
    return t && !Fn(t) && (e.class = d0(t)), n && (e.style = f0(n)), e
}
const cb = e => Fn(e) ? e : e == null ? "" : mt(e) || hn(e) && (e.toString === o8 || !vt(e.toString)) ? JSON.stringify(e, u8, 2) : String(e),
    u8 = (e, t) => t && t.__v_isRef ? u8(e, t.value) : s8(t) ? {
        [`Map(${t.size})`]: [...t.entries()].reduce((n, [r, A]) => (n[`${r} =>`] = A, n), {})
    } : a8(t) ? {
        [`Set(${t.size})`]: [...t.values()]
    } : hn(t) && !mt(t) && !l8(t) ? String(t) : t;

function fb(e, ...t) {}

function db(e, t) {}

function XA(e, t, n, r) {
    let A;
    try {
        A = r ? e(...r) : e()
    } catch (i) {
        ia(i, t, n)
    }
    return A
}

function Qr(e, t, n, r) {
    if (vt(e)) {
        const i = XA(e, t, n, r);
        return i && d6(i) && i.catch(s => {
            ia(s, t, n)
        }), i
    }
    const A = [];
    for (let i = 0; i < e.length; i++) A.push(Qr(e[i], t, n, r));
    return A
}

function ia(e, t, n, r = !0) {
    const A = t ? t.vnode : null;
    if (t) {
        let i = t.parent;
        const s = t.proxy,
            a = n;
        for (; i;) {
            const l = i.ec;
            if (l) {
                for (let u = 0; u < l.length; u++)
                    if (l[u](e, s, a) === !1) return
            }
            i = i.parent
        }
        const o = t.appContext.config.errorHandler;
        if (o) {
            XA(o, null, 10, [e, s, a]);
            return
        }
    }
    hb(e, n, A, r)
}

function hb(e, t, n, r = !0) {
    console.error(e)
}
let $l = !1,
    p2 = !1;
const Xn = [];
let wA = 0;
const Wa = [];
let GA = null,
    Ps = 0;
const c8 = Promise.resolve();
let h6 = null;

function yt(e) {
    const t = h6 || c8;
    return e ? t.then(this ? e.bind(this) : e) : t
}

function pb(e) {
    let t = wA + 1,
        n = Xn.length;
    for (; t < n;) {
        const r = t + n >>> 1;
        Kl(Xn[r]) < e ? t = r + 1 : n = r
    }
    return t
}

function zc(e) {
    (!Xn.length || !Xn.includes(e, $l && e.allowRecurse ? wA + 1 : wA)) && (e.id == null ? Xn.push(e) : Xn.splice(pb(e.id), 0, e), f8())
}

function f8() {
    !$l && !p2 && (p2 = !0, h6 = c8.then(d8))
}

function gb(e) {
    const t = Xn.indexOf(e);
    t > wA && Xn.splice(t, 1)
}

function p6(e) {
    mt(e) ? Wa.push(...e) : (!GA || !GA.includes(e, e.allowRecurse ? Ps + 1 : Ps)) && Wa.push(e), f8()
}

function ng(e, t = $l ? wA + 1 : 0) {
    for (; t < Xn.length; t++) {
        const n = Xn[t];
        n && n.pre && (Xn.splice(t, 1), t--, n())
    }
}

function nc(e) {
    if (Wa.length) {
        const t = [...new Set(Wa)];
        if (Wa.length = 0, GA) {
            GA.push(...t);
            return
        }
        for (GA = t, GA.sort((n, r) => Kl(n) - Kl(r)), Ps = 0; Ps < GA.length; Ps++) GA[Ps]();
        GA = null, Ps = 0
    }
}
const Kl = e => e.id == null ? 1 / 0 : e.id,
    vb = (e, t) => {
        const n = Kl(e) - Kl(t);
        if (n === 0) {
            if (e.pre && !t.pre) return -1;
            if (t.pre && !e.pre) return 1
        }
        return n
    };

function d8(e) {
    p2 = !1, $l = !0, Xn.sort(vb);
    const t = xA;
    try {
        for (wA = 0; wA < Xn.length; wA++) {
            const n = Xn[wA];
            n && n.active !== !1 && XA(n, null, 14)
        }
    } finally {
        wA = 0, Xn.length = 0, nc(), $l = !1, h6 = null, (Xn.length || Wa.length) && d8()
    }
}
let ka, z0 = [];

function h8(e, t) {
    var n, r;
    ka = e, ka ? (ka.enabled = !0, z0.forEach(({
        event: A,
        args: i
    }) => ka.emit(A, ...i)), z0 = []) : typeof window < "u" && window.HTMLElement && !((r = (n = window.navigator) == null ? void 0 : n.userAgent) != null && r.includes("jsdom")) ? ((t.__VUE_DEVTOOLS_HOOK_REPLAY__ = t.__VUE_DEVTOOLS_HOOK_REPLAY__ || []).push(i => {
        h8(i, t)
    }), setTimeout(() => {
        ka || (t.__VUE_DEVTOOLS_HOOK_REPLAY__ = null, z0 = [])
    }, 3e3)) : z0 = []
}

function mb(e, t, ...n) {
    if (e.isUnmounted) return;
    const r = e.vnode.props || Wt;
    let A = n;
    const i = t.startsWith("update:"),
        s = i && t.slice(7);
    if (s && s in r) {
        const u = `${s==="modelValue"?"model":s}Modifiers`,
            {
                number: f,
                trim: d
            } = r[u] || Wt;
        d && (A = n.map(p => Fn(p) ? p.trim() : p)), f && (A = n.map(nb))
    }
    let a, o = r[a = wl(t)] || r[a = wl(sA(t))];
    !o && i && (o = r[a = wl(Vc(t))]), o && Qr(o, e, 6, A);
    const l = r[a + "Once"];
    if (l) {
        if (!e.emitted) e.emitted = {};
        else if (e.emitted[a]) return;
        e.emitted[a] = !0, Qr(l, e, 6, A)
    }
}

function p8(e, t, n = !1) {
    const r = t.emitsCache,
        A = r.get(e);
    if (A !== void 0) return A;
    const i = e.emits;
    let s = {},
        a = !1;
    if (!vt(e)) {
        const o = l => {
            const u = p8(l, t, !0);
            u && (a = !0, On(s, u))
        };
        !n && t.mixins.length && t.mixins.forEach(o), e.extends && o(e.extends), e.mixins && e.mixins.forEach(o)
    }
    return !i && !a ? (hn(e) && r.set(e, null), null) : (mt(i) ? i.forEach(o => s[o] = null) : On(s, i), hn(e) && r.set(e, s), s)
}

function Wc(e, t) {
    return !e || !Nc(t) ? !1 : (t = t.slice(2).replace(/Once$/, ""), Lt(e, t[0].toLowerCase() + t.slice(1)) || Lt(e, Vc(t)) || Lt(e, t))
}
let In = null,
    jc = null;

function Vl(e) {
    const t = In;
    return In = e, jc = e && e.type.__scopeId || null, t
}

function Bb(e) {
    jc = e
}

function wb() {
    jc = null
}
const yb = e => g6;

function g6(e, t = In, n) {
    if (!t || e._n) return e;
    const r = (...A) => {
        r._d && C2(-1);
        const i = Vl(t);
        let s;
        try {
            s = e(...A)
        } finally {
            Vl(i), r._d && C2(1)
        }
        return s
    };
    return r._n = !0, r._c = !0, r._d = !0, r
}

function Nu(e) {
    const {
        type: t,
        vnode: n,
        proxy: r,
        withProxy: A,
        props: i,
        propsOptions: [s],
        slots: a,
        attrs: o,
        emit: l,
        render: u,
        renderCache: f,
        data: d,
        setupState: p,
        ctx: m,
        inheritAttrs: g
    } = e;
    let y, w;
    const B = Vl(e);
    try {
        if (n.shapeFlag & 4) {
            const C = A || r;
            y = Sr(u.call(C, C, f, i, p, d, m)), w = o
        } else {
            const C = t;
            y = Sr(C.length > 1 ? C(i, {
                attrs: o,
                slots: a,
                emit: l
            }) : C(i, null)), w = t.props ? o : xb(o)
        }
    } catch (C) {
        El.length = 0, ia(C, e, 1), y = Z(Jn)
    }
    let x = y;
    if (w && g !== !1) {
        const C = Object.keys(w),
            {
                shapeFlag: b
            } = x;
        C.length && b & 7 && (s && C.some(i8) && (w = Eb(w, s)), x = EA(x, w))
    }
    return n.dirs && (x = EA(x), x.dirs = x.dirs ? x.dirs.concat(n.dirs) : n.dirs), n.transition && (x.transition = n.transition), y = x, Vl(B), y
}

function Cb(e) {
    let t;
    for (let n = 0; n < e.length; n++) {
        const r = e[n];
        if (Ai(r)) {
            if (r.type !== Jn || r.children === "v-if") {
                if (t) return;
                t = r
            }
        } else return
    }
    return t
}
const xb = e => {
        let t;
        for (const n in e)(n === "class" || n === "style" || Nc(n)) && ((t || (t = {}))[n] = e[n]);
        return t
    },
    Eb = (e, t) => {
        const n = {};
        for (const r in e)(!i8(r) || !(r.slice(9) in t)) && (n[r] = e[r]);
        return n
    };

function bb(e, t, n) {
    const {
        props: r,
        children: A,
        component: i
    } = e, {
        props: s,
        children: a,
        patchFlag: o
    } = t, l = i.emitsOptions;
    if (t.dirs || t.transition) return !0;
    if (n && o >= 0) {
        if (o & 1024) return !0;
        if (o & 16) return r ? rg(r, s, l) : !!s;
        if (o & 8) {
            const u = t.dynamicProps;
            for (let f = 0; f < u.length; f++) {
                const d = u[f];
                if (s[d] !== r[d] && !Wc(l, d)) return !0
            }
        }
    } else return (A || a) && (!a || !a.$stable) ? !0 : r === s ? !1 : r ? s ? rg(r, s, l) : !0 : !!s;
    return !1
}

function rg(e, t, n) {
    const r = Object.keys(t);
    if (r.length !== Object.keys(e).length) return !0;
    for (let A = 0; A < r.length; A++) {
        const i = r[A];
        if (t[i] !== e[i] && !Wc(n, i)) return !0
    }
    return !1
}

function v6({
    vnode: e,
    parent: t
}, n) {
    for (; t && t.subTree === e;)(e = t.vnode).el = n, t = t.parent
}
const g8 = e => e.__isSuspense,
    Fb = {
        name: "Suspense",
        __isSuspense: !0,
        process(e, t, n, r, A, i, s, a, o, l) {
            e == null ? Sb(t, n, r, A, i, s, a, o, l) : Qb(e, t, n, r, A, s, a, o, l)
        },
        hydrate: Ub,
        create: m6,
        normalize: Tb
    },
    _b = Fb;

function Gl(e, t) {
    const n = e.props && e.props[t];
    vt(n) && n()
}

function Sb(e, t, n, r, A, i, s, a, o) {
    const {
        p: l,
        o: {
            createElement: u
        }
    } = o, f = u("div"), d = e.suspense = m6(e, A, r, t, f, n, i, s, a, o);
    l(null, d.pendingBranch = e.ssContent, f, null, r, d, i, s), d.deps > 0 ? (Gl(e, "onPending"), Gl(e, "onFallback"), l(null, e.ssFallback, t, n, r, null, i, s), ja(d, e.ssFallback)) : d.resolve(!1, !0)
}

function Qb(e, t, n, r, A, i, s, a, {
    p: o,
    um: l,
    o: {
        createElement: u
    }
}) {
    const f = t.suspense = e.suspense;
    f.vnode = t, t.el = e.el;
    const d = t.ssContent,
        p = t.ssFallback,
        {
            activeBranch: m,
            pendingBranch: g,
            isInFallback: y,
            isHydrating: w
        } = f;
    if (g) f.pendingBranch = d, tA(d, g) ? (o(g, d, f.hiddenContainer, null, A, f, i, s, a), f.deps <= 0 ? f.resolve() : y && (o(m, p, n, r, A, null, i, s, a), ja(f, p))) : (f.pendingId++, w ? (f.isHydrating = !1, f.activeBranch = g) : l(g, A, f), f.deps = 0, f.effects.length = 0, f.hiddenContainer = u("div"), y ? (o(null, d, f.hiddenContainer, null, A, f, i, s, a), f.deps <= 0 ? f.resolve() : (o(m, p, n, r, A, null, i, s, a), ja(f, p))) : m && tA(d, m) ? (o(m, d, n, r, A, f, i, s, a), f.resolve(!0)) : (o(null, d, f.hiddenContainer, null, A, f, i, s, a), f.deps <= 0 && f.resolve()));
    else if (m && tA(d, m)) o(m, d, n, r, A, f, i, s, a), ja(f, d);
    else if (Gl(t, "onPending"), f.pendingBranch = d, f.pendingId++, o(null, d, f.hiddenContainer, null, A, f, i, s, a), f.deps <= 0) f.resolve();
    else {
        const {
            timeout: B,
            pendingId: x
        } = f;
        B > 0 ? setTimeout(() => {
            f.pendingId === x && f.fallback(p)
        }, B) : B === 0 && f.fallback(p)
    }
}

function m6(e, t, n, r, A, i, s, a, o, l, u = !1) {
    const {
        p: f,
        m: d,
        um: p,
        n: m,
        o: {
            parentNode: g,
            remove: y
        }
    } = l;
    let w;
    const B = Ib(e);
    B && t != null && t.pendingBranch && (w = t.pendingId, t.deps++);
    const x = e.props ? rb(e.props.timeout) : void 0,
        C = {
            vnode: e,
            parent: t,
            parentComponent: n,
            isSVG: s,
            container: r,
            hiddenContainer: A,
            anchor: i,
            deps: 0,
            pendingId: 0,
            timeout: typeof x == "number" ? x : -1,
            activeBranch: null,
            pendingBranch: null,
            isInFallback: !0,
            isHydrating: u,
            isUnmounted: !1,
            effects: [],
            resolve(b = !1, F = !1) {
                const {
                    vnode: T,
                    activeBranch: I,
                    pendingBranch: D,
                    pendingId: U,
                    effects: Q,
                    parentComponent: O,
                    container: N
                } = C;
                if (C.isHydrating) C.isHydrating = !1;
                else if (!b) {
                    const V = I && D.transition && D.transition.mode === "out-in";
                    V && (I.transition.afterLeave = () => {
                        U === C.pendingId && d(D, N, ae, 0)
                    });
                    let {
                        anchor: ae
                    } = C;
                    I && (ae = m(I), p(I, O, C, !0)), V || d(D, N, ae, 0)
                }
                ja(C, D), C.pendingBranch = null, C.isInFallback = !1;
                let J = C.parent,
                    j = !1;
                for (; J;) {
                    if (J.pendingBranch) {
                        J.effects.push(...Q), j = !0;
                        break
                    }
                    J = J.parent
                }
                j || p6(Q), C.effects = [], B && t && t.pendingBranch && w === t.pendingId && (t.deps--, t.deps === 0 && !F && t.resolve()), Gl(T, "onResolve")
            },
            fallback(b) {
                if (!C.pendingBranch) return;
                const {
                    vnode: F,
                    activeBranch: T,
                    parentComponent: I,
                    container: D,
                    isSVG: U
                } = C;
                Gl(F, "onFallback");
                const Q = m(T),
                    O = () => {
                        C.isInFallback && (f(null, b, D, Q, I, null, U, a, o), ja(C, b))
                    },
                    N = b.transition && b.transition.mode === "out-in";
                N && (T.transition.afterLeave = O), C.isInFallback = !0, p(T, I, null, !0), N || O()
            },
            move(b, F, T) {
                C.activeBranch && d(C.activeBranch, b, F, T), C.container = b
            },
            next() {
                return C.activeBranch && m(C.activeBranch)
            },
            registerDep(b, F) {
                const T = !!C.pendingBranch;
                T && C.deps++;
                const I = b.vnode.el;
                b.asyncDep.catch(D => {
                    ia(D, b, 0)
                }).then(D => {
                    if (b.isUnmounted || C.isUnmounted || C.pendingId !== b.suspenseId) return;
                    b.asyncResolved = !0;
                    const {
                        vnode: U
                    } = b;
                    x2(b, D, !1), I && (U.el = I);
                    const Q = !I && b.subTree.el;
                    F(b, U, g(I || b.subTree.el), I ? null : m(b.subTree), C, s, o), Q && y(Q), v6(b, U.el), T && --C.deps === 0 && C.resolve()
                })
            },
            unmount(b, F) {
                C.isUnmounted = !0, C.activeBranch && p(C.activeBranch, n, b, F), C.pendingBranch && p(C.pendingBranch, n, b, F)
            }
        };
    return C
}

function Ub(e, t, n, r, A, i, s, a, o) {
    const l = t.suspense = m6(t, r, n, e.parentNode, document.createElement("div"), null, A, i, s, a, !0),
        u = o(e, l.pendingBranch = t.ssContent, n, l, i, s);
    return l.deps === 0 && l.resolve(!1, !0), u
}

function Tb(e) {
    const {
        shapeFlag: t,
        children: n
    } = e, r = t & 32;
    e.ssContent = Ag(r ? n.default : n), e.ssFallback = r ? Ag(n.fallback) : Z(Jn)
}

function Ag(e) {
    let t;
    if (vt(e)) {
        const n = Zs && e._c;
        n && (e._d = !1, Zc()), e = e(), n && (e._d = !0, t = pr, V8())
    }
    return mt(e) && (e = Cb(e)), e = Sr(e), t && !e.dynamicChildren && (e.dynamicChildren = t.filter(n => n !== e)), e
}

function v8(e, t) {
    t && t.pendingBranch ? mt(e) ? t.effects.push(...e) : t.effects.push(e) : p6(e)
}

function ja(e, t) {
    e.activeBranch = t;
    const {
        vnode: n,
        parentComponent: r
    } = e, A = n.el = t.el;
    r && r.subTree === n && (r.vnode.el = A, v6(r, A))
}

function Ib(e) {
    var t;
    return ((t = e.props) == null ? void 0 : t.suspensible) != null && e.props.suspensible !== !1
}

function Yc(e, t) {
    return h0(e, null, t)
}

function m8(e, t) {
    return h0(e, null, {
        flush: "post"
    })
}

function Db(e, t) {
    return h0(e, null, {
        flush: "sync"
    })
}
const W0 = {};

function je(e, t, n) {
    return h0(e, t, n)
}

function h0(e, t, {
    immediate: n,
    deep: r,
    flush: A,
    onTrack: i,
    onTrigger: s
} = Wt) {
    var a;
    const o = l0() === ((a = cn) == null ? void 0 : a.scope) ? cn : null;
    let l, u = !1,
        f = !1;
    if (Rt(e) ? (l = () => e.value, u = Rl(e)) : YA(e) ? (l = () => e, r = !0) : mt(e) ? (f = !0, u = e.some(C => YA(C) || Rl(C)), l = () => e.map(C => {
            if (Rt(C)) return C.value;
            if (YA(C)) return Hs(C);
            if (vt(C)) return XA(C, o, 2)
        })) : vt(e) ? t ? l = () => XA(e, o, 2) : l = () => {
            if (!(o && o.isUnmounted)) return d && d(), Qr(e, o, 3, [p])
        } : l = xA, t && r) {
        const C = l;
        l = () => Hs(C())
    }
    let d, p = C => {
            d = B.onStop = () => {
                XA(C, o, 4)
            }
        },
        m;
    if (eo)
        if (p = xA, t ? n && Qr(t, o, 3, [l(), f ? [] : void 0, p]) : l(), A === "sync") {
            const C = e3();
            m = C.__watcherHandles || (C.__watcherHandles = [])
        } else return xA;
    let g = f ? new Array(e.length).fill(W0) : W0;
    const y = () => {
        if (B.active)
            if (t) {
                const C = B.run();
                (r || u || (f ? C.some((b, F) => f2(b, g[F])) : f2(C, g))) && (d && d(), Qr(t, o, 3, [C, g === W0 ? void 0 : f && g[0] === W0 ? [] : g, p]), g = C)
            } else B.run()
    };
    y.allowRecurse = !!t;
    let w;
    A === "sync" ? w = y : A === "post" ? w = () => Rn(y, o && o.suspense) : (y.pre = !0, o && (y.id = o.uid), w = () => zc(y));
    const B = new u0(l, w);
    t ? n ? y() : g = B.run() : A === "post" ? Rn(B.run.bind(B), o && o.suspense) : B.run();
    const x = () => {
        B.stop(), o && o.scope && f6(o.scope.effects, B)
    };
    return m && m.push(x), x
}

function Pb(e, t, n) {
    const r = this.proxy,
        A = Fn(e) ? e.includes(".") ? B8(r, e) : () => r[e] : e.bind(r, r);
    let i;
    vt(t) ? i = t : (i = t.handler, n = t);
    const s = cn;
    As(this);
    const a = h0(A, i.bind(r), n);
    return s ? As(s) : Ji(), a
}

function B8(e, t) {
    const n = t.split(".");
    return () => {
        let r = e;
        for (let A = 0; A < n.length && r; A++) r = r[n[A]];
        return r
    }
}

function Hs(e, t) {
    if (!hn(e) || e.__v_skip || (t = t || new Set, t.has(e))) return e;
    if (t.add(e), Rt(e)) Hs(e.value, t);
    else if (mt(e))
        for (let n = 0; n < e.length; n++) Hs(e[n], t);
    else if (a8(e) || s8(e)) e.forEach(n => {
        Hs(n, t)
    });
    else if (l8(e))
        for (const n in e) Hs(e[n], t);
    return e
}

function ns(e, t) {
    const n = In;
    if (n === null) return e;
    const r = nf(n) || n.proxy,
        A = e.dirs || (e.dirs = []);
    for (let i = 0; i < t.length; i++) {
        let [s, a, o, l = Wt] = t[i];
        s && (vt(s) && (s = {
            mounted: s,
            updated: s
        }), s.deep && Hs(a), A.push({
            dir: s,
            instance: r,
            value: a,
            oldValue: void 0,
            arg: o,
            modifiers: l
        }))
    }
    return e
}

function mA(e, t, n, r) {
    const A = e.dirs,
        i = t && t.dirs;
    for (let s = 0; s < A.length; s++) {
        const a = A[s];
        i && (a.oldValue = i[s].value);
        let o = a.dir[r];
        o && (wo(), Qr(o, n, 8, [e.el, a, e, t]), yo())
    }
}

function B6() {
    const e = {
        isMounted: !1,
        isLeaving: !1,
        isUnmounting: !1,
        leavingVNodes: new Map
    };
    return qt(() => {
        e.isMounted = !0
    }), Tr(() => {
        e.isUnmounting = !0
    }), e
}
const kr = [Function, Array],
    w6 = {
        mode: String,
        appear: Boolean,
        persisted: Boolean,
        onBeforeEnter: kr,
        onEnter: kr,
        onAfterEnter: kr,
        onEnterCancelled: kr,
        onBeforeLeave: kr,
        onLeave: kr,
        onAfterLeave: kr,
        onLeaveCancelled: kr,
        onBeforeAppear: kr,
        onAppear: kr,
        onAfterAppear: kr,
        onAppearCancelled: kr
    },
    Ob = {
        name: "BaseTransition",
        props: w6,
        setup(e, {
            slots: t
        }) {
            const n = zt(),
                r = B6();
            let A;
            return () => {
                const i = t.default && Xc(t.default(), !0);
                if (!i || !i.length) return;
                let s = i[0];
                if (i.length > 1) {
                    for (const g of i)
                        if (g.type !== Jn) {
                            s = g;
                            break
                        }
                }
                const a = Et(e),
                    {
                        mode: o
                    } = a;
                if (r.isLeaving) return f1(s);
                const l = ig(s);
                if (!l) return f1(s);
                const u = Za(l, a, r, n);
                qs(l, u);
                const f = n.subTree,
                    d = f && ig(f);
                let p = !1;
                const {
                    getTransitionKey: m
                } = l.type;
                if (m) {
                    const g = m();
                    A === void 0 ? A = g : g !== A && (A = g, p = !0)
                }
                if (d && d.type !== Jn && (!tA(l, d) || p)) {
                    const g = Za(d, a, r, n);
                    if (qs(d, g), o === "out-in") return r.isLeaving = !0, g.afterLeave = () => {
                        r.isLeaving = !1, n.update.active !== !1 && n.update()
                    }, f1(s);
                    o === "in-out" && l.type !== Jn && (g.delayLeave = (y, w, B) => {
                        const x = y8(r, d);
                        x[String(d.key)] = d, y._leaveCb = () => {
                            w(), y._leaveCb = void 0, delete u.delayedLeave
                        }, u.delayedLeave = B
                    })
                }
                return s
            }
        }
    },
    w8 = Ob;

function y8(e, t) {
    const {
        leavingVNodes: n
    } = e;
    let r = n.get(t.type);
    return r || (r = Object.create(null), n.set(t.type, r)), r
}

function Za(e, t, n, r) {
    const {
        appear: A,
        mode: i,
        persisted: s = !1,
        onBeforeEnter: a,
        onEnter: o,
        onAfterEnter: l,
        onEnterCancelled: u,
        onBeforeLeave: f,
        onLeave: d,
        onAfterLeave: p,
        onLeaveCancelled: m,
        onBeforeAppear: g,
        onAppear: y,
        onAfterAppear: w,
        onAppearCancelled: B
    } = t, x = String(e.key), C = y8(n, e), b = (I, D) => {
        I && Qr(I, r, 9, D)
    }, F = (I, D) => {
        const U = D[1];
        b(I, D), mt(I) ? I.every(Q => Q.length <= 1) && U() : I.length <= 1 && U()
    }, T = {
        mode: i,
        persisted: s,
        beforeEnter(I) {
            let D = a;
            if (!n.isMounted)
                if (A) D = g || a;
                else return;
            I._leaveCb && I._leaveCb(!0);
            const U = C[x];
            U && tA(e, U) && U.el._leaveCb && U.el._leaveCb(), b(D, [I])
        },
        enter(I) {
            let D = o,
                U = l,
                Q = u;
            if (!n.isMounted)
                if (A) D = y || o, U = w || l, Q = B || u;
                else return;
            let O = !1;
            const N = I._enterCb = J => {
                O || (O = !0, J ? b(Q, [I]) : b(U, [I]), T.delayedLeave && T.delayedLeave(), I._enterCb = void 0)
            };
            D ? F(D, [I, N]) : N()
        },
        leave(I, D) {
            const U = String(e.key);
            if (I._enterCb && I._enterCb(!0), n.isUnmounting) return D();
            b(f, [I]);
            let Q = !1;
            const O = I._leaveCb = N => {
                Q || (Q = !0, D(), N ? b(m, [I]) : b(p, [I]), I._leaveCb = void 0, C[U] === e && delete C[U])
            };
            C[U] = e, d ? F(d, [I, O]) : O()
        },
        clone(I) {
            return Za(I, t, n, r)
        }
    };
    return T
}

function f1(e) {
    if (p0(e)) return e = EA(e), e.children = null, e
}

function ig(e) {
    return p0(e) ? e.children ? e.children[0] : void 0 : e
}

function qs(e, t) {
    e.shapeFlag & 6 && e.component ? qs(e.component.subTree, t) : e.shapeFlag & 128 ? (e.ssContent.transition = t.clone(e.ssContent), e.ssFallback.transition = t.clone(e.ssFallback)) : e.transition = t
}

function Xc(e, t = !1, n) {
    let r = [],
        A = 0;
    for (let i = 0; i < e.length; i++) {
        let s = e[i];
        const a = n == null ? s.key : String(n) + String(s.key != null ? s.key : i);
        s.type === rn ? (s.patchFlag & 128 && A++, r = r.concat(Xc(s.children, t, a))) : (t || s.type !== Jn) && r.push(a != null ? EA(s, {
            key: a
        }) : s)
    }
    if (A > 1)
        for (let i = 0; i < r.length; i++) r[i].patchFlag = -2;
    return r
}

function tt(e, t) {
    return vt(e) ? (() => On({
        name: e.name
    }, t, {
        setup: e
    }))() : e
}
const Vs = e => !!e.type.__asyncLoader;

function Lb(e) {
    vt(e) && (e = {
        loader: e
    });
    const {
        loader: t,
        loadingComponent: n,
        errorComponent: r,
        delay: A = 200,
        timeout: i,
        suspensible: s = !0,
        onError: a
    } = e;
    let o = null,
        l, u = 0;
    const f = () => (u++, o = null, d()),
        d = () => {
            let p;
            return o || (p = o = t().catch(m => {
                if (m = m instanceof Error ? m : new Error(String(m)), a) return new Promise((g, y) => {
                    a(m, () => g(f()), () => y(m), u + 1)
                });
                throw m
            }).then(m => p !== o && o ? o : (m && (m.__esModule || m[Symbol.toStringTag] === "Module") && (m = m.default), l = m, m)))
        };
    return tt({
        name: "AsyncComponentWrapper",
        __asyncLoader: d,
        get __asyncResolved() {
            return l
        },
        setup() {
            const p = cn;
            if (l) return () => d1(l, p);
            const m = B => {
                o = null, ia(B, p, 13, !r)
            };
            if (s && p.suspense || eo) return d().then(B => () => d1(B, p)).catch(B => (m(B), () => r ? Z(r, {
                error: B
            }) : null));
            const g = Ue(!1),
                y = Ue(),
                w = Ue(!!A);
            return A && setTimeout(() => {
                w.value = !1
            }, A), i != null && setTimeout(() => {
                if (!g.value && !y.value) {
                    const B = new Error(`Async component timed out after ${i}ms.`);
                    m(B), y.value = B
                }
            }, i), d().then(() => {
                g.value = !0, p.parent && p0(p.parent.vnode) && zc(p.parent.update)
            }).catch(B => {
                m(B), y.value = B
            }), () => {
                if (g.value && l) return d1(l, p);
                if (y.value && r) return Z(r, {
                    error: y.value
                });
                if (n && !w.value) return Z(n)
            }
        }
    })
}

function d1(e, t) {
    const {
        ref: n,
        props: r,
        children: A,
        ce: i
    } = t.vnode, s = Z(e, r, A);
    return s.ref = n, s.ce = i, delete t.vnode.ce, s
}
const p0 = e => e.type.__isKeepAlive,
    kb = {
        name: "KeepAlive",
        __isKeepAlive: !0,
        props: {
            include: [String, RegExp, Array],
            exclude: [String, RegExp, Array],
            max: [String, Number]
        },
        setup(e, {
            slots: t
        }) {
            const n = zt(),
                r = n.ctx;
            if (!r.renderer) return () => {
                const B = t.default && t.default();
                return B && B.length === 1 ? B[0] : B
            };
            const A = new Map,
                i = new Set;
            let s = null;
            const a = n.suspense,
                {
                    renderer: {
                        p: o,
                        m: l,
                        um: u,
                        o: {
                            createElement: f
                        }
                    }
                } = r,
                d = f("div");
            r.activate = (B, x, C, b, F) => {
                const T = B.component;
                l(B, x, C, 0, a), o(T.vnode, B, x, C, T, a, b, B.slotScopeIds, F), Rn(() => {
                    T.isDeactivated = !1, T.a && yl(T.a);
                    const I = B.props && B.props.onVnodeMounted;
                    I && fr(I, T.parent, B)
                }, a)
            }, r.deactivate = B => {
                const x = B.component;
                l(B, d, null, 1, a), Rn(() => {
                    x.da && yl(x.da);
                    const C = B.props && B.props.onVnodeUnmounted;
                    C && fr(C, x.parent, B), x.isDeactivated = !0
                }, a)
            };

            function p(B) {
                h1(B), u(B, n, a, !0)
            }

            function m(B) {
                A.forEach((x, C) => {
                    const b = b2(x.type);
                    b && (!B || !B(b)) && g(C)
                })
            }

            function g(B) {
                const x = A.get(B);
                !s || !tA(x, s) ? p(x) : s && h1(s), A.delete(B), i.delete(B)
            }
            je(() => [e.include, e.exclude], ([B, x]) => {
                B && m(C => ul(B, C)), x && m(C => !ul(x, C))
            }, {
                flush: "post",
                deep: !0
            });
            let y = null;
            const w = () => {
                y != null && A.set(y, p1(n.subTree))
            };
            return qt(w), sa(w), Tr(() => {
                A.forEach(B => {
                    const {
                        subTree: x,
                        suspense: C
                    } = n, b = p1(x);
                    if (B.type === b.type && B.key === b.key) {
                        h1(b);
                        const F = b.component.da;
                        F && Rn(F, C);
                        return
                    }
                    p(B)
                })
            }), () => {
                if (y = null, !t.default) return null;
                const B = t.default(),
                    x = B[0];
                if (B.length > 1) return s = null, B;
                if (!Ai(x) || !(x.shapeFlag & 4) && !(x.shapeFlag & 128)) return s = null, x;
                let C = p1(x);
                const b = C.type,
                    F = b2(Vs(C) ? C.type.__asyncResolved || {} : b),
                    {
                        include: T,
                        exclude: I,
                        max: D
                    } = e;
                if (T && (!F || !ul(T, F)) || I && F && ul(I, F)) return s = C, x;
                const U = C.key == null ? b : C.key,
                    Q = A.get(U);
                return C.el && (C = EA(C), x.shapeFlag & 128 && (x.ssContent = C)), y = U, Q ? (C.el = Q.el, C.component = Q.component, C.transition && qs(C, C.transition), C.shapeFlag |= 512, i.delete(U), i.add(U)) : (i.add(U), D && i.size > parseInt(D, 10) && g(i.values().next().value)), C.shapeFlag |= 256, s = C, g8(x.type) ? x : C
            }
        }
    },
    Hb = kb;

function ul(e, t) {
    return mt(e) ? e.some(n => ul(n, t)) : Fn(e) ? e.split(",").includes(t) : ZE(e) ? e.test(t) : !1
}

function fs(e, t) {
    C8(e, "a", t)
}

function ui(e, t) {
    C8(e, "da", t)
}

function C8(e, t, n = cn) {
    const r = e.__wdc || (e.__wdc = () => {
        let A = n;
        for (; A;) {
            if (A.isDeactivated) return;
            A = A.parent
        }
        return e()
    });
    if (Jc(t, r, n), n) {
        let A = n.parent;
        for (; A && A.parent;) p0(A.parent.vnode) && Mb(r, t, n, A), A = A.parent
    }
}

function Mb(e, t, n, r) {
    const A = Jc(t, e, r, !0);
    fi(() => {
        f6(r[t], A)
    }, n)
}

function h1(e) {
    e.shapeFlag &= -257, e.shapeFlag &= -513
}

function p1(e) {
    return e.shapeFlag & 128 ? e.ssContent : e
}

function Jc(e, t, n = cn, r = !1) {
    if (n) {
        const A = n[e] || (n[e] = []),
            i = t.__weh || (t.__weh = (...s) => {
                if (n.isUnmounted) return;
                wo(), As(n);
                const a = Qr(t, n, e, s);
                return Ji(), yo(), a
            });
        return r ? A.unshift(i) : A.push(i), i
    }
}
const ci = e => (t, n = cn) => (!eo || e === "sp") && Jc(e, (...r) => t(...r), n),
    y6 = ci("bm"),
    qt = ci("m"),
    qc = ci("bu"),
    sa = ci("u"),
    Tr = ci("bum"),
    fi = ci("um"),
    x8 = ci("sp"),
    E8 = ci("rtg"),
    b8 = ci("rtc");

function F8(e, t = cn) {
    Jc("ec", e, t)
}
const C6 = "components",
    Rb = "directives";

function Nb(e, t) {
    return x6(C6, e, !0, t) || e
}
const _8 = Symbol.for("v-ndc");

function $b(e) {
    return Fn(e) ? x6(C6, e, !1) || e : e || _8
}

function S8(e) {
    return x6(Rb, e)
}

function x6(e, t, n = !0, r = !1) {
    const A = In || cn;
    if (A) {
        const i = A.type;
        if (e === C6) {
            const a = b2(i, !1);
            if (a && (a === t || a === sA(t) || a === Gc(sA(t)))) return i
        }
        const s = sg(A[e] || i[e], t) || sg(A.appContext[e], t);
        return !s && r ? i : s
    }
}

function sg(e, t) {
    return e && (e[t] || e[sA(t)] || e[Gc(sA(t))])
}

function Kb(e, t, n, r) {
    let A;
    const i = n && n[r];
    if (mt(e) || Fn(e)) {
        A = new Array(e.length);
        for (let s = 0, a = e.length; s < a; s++) A[s] = t(e[s], s, void 0, i && i[s])
    } else if (typeof e == "number") {
        A = new Array(e);
        for (let s = 0; s < e; s++) A[s] = t(s + 1, s, void 0, i && i[s])
    } else if (hn(e))
        if (e[Symbol.iterator]) A = Array.from(e, (s, a) => t(s, a, void 0, i && i[a]));
        else {
            const s = Object.keys(e);
            A = new Array(s.length);
            for (let a = 0, o = s.length; a < o; a++) {
                const l = s[a];
                A[a] = t(e[l], l, a, i && i[a])
            }
        }
    else A = [];
    return n && (n[r] = A), A
}

function Vb(e, t) {
    for (let n = 0; n < t.length; n++) {
        const r = t[n];
        if (mt(r))
            for (let A = 0; A < r.length; A++) e[r[A].name] = r[A].fn;
        else r && (e[r.name] = r.key ? (...A) => {
            const i = r.fn(...A);
            return i && (i.key = r.key), i
        } : r.fn)
    }
    return e
}

function Gb(e, t, n = {}, r, A) {
    if (In.isCE || In.parent && Vs(In.parent) && In.parent.isCE) return t !== "default" && (n.name = t), Z("slot", n, r && r());
    let i = e[t];
    i && i._c && (i._d = !1), Zc();
    const s = i && Q8(i(n)),
        a = _6(rn, {
            key: n.key || s && s.key || `_${t}`
        }, s || (r ? r() : []), s && e._ === 1 ? 64 : -2);
    return !A && a.scopeId && (a.slotScopeIds = [a.scopeId + "-s"]), i && i._c && (i._d = !0), a
}

function Q8(e) {
    return e.some(t => Ai(t) ? !(t.type === Jn || t.type === rn && !Q8(t.children)) : !0) ? e : null
}

function zb(e, t) {
    const n = {};
    for (const r in e) n[t && /[A-Z]/.test(r) ? `on:${r}` : wl(r)] = e[r];
    return n
}
const g2 = e => e ? Y8(e) ? nf(e) || e.proxy : g2(e.parent) : null,
    Cl = On(Object.create(null), {
        $: e => e,
        $el: e => e.vnode.el,
        $data: e => e.data,
        $props: e => e.props,
        $attrs: e => e.attrs,
        $slots: e => e.slots,
        $refs: e => e.refs,
        $parent: e => g2(e.parent),
        $root: e => g2(e.root),
        $emit: e => e.emit,
        $options: e => E6(e),
        $forceUpdate: e => e.f || (e.f = () => zc(e.update)),
        $nextTick: e => e.n || (e.n = yt.bind(e.proxy)),
        $watch: e => Pb.bind(e)
    }),
    g1 = (e, t) => e !== Wt && !e.__isScriptSetup && Lt(e, t),
    v2 = {
        get({
            _: e
        }, t) {
            const {
                ctx: n,
                setupState: r,
                data: A,
                props: i,
                accessCache: s,
                type: a,
                appContext: o
            } = e;
            let l;
            if (t[0] !== "$") {
                const p = s[t];
                if (p !== void 0) switch (p) {
                    case 1:
                        return r[t];
                    case 2:
                        return A[t];
                    case 4:
                        return n[t];
                    case 3:
                        return i[t]
                } else {
                    if (g1(r, t)) return s[t] = 1, r[t];
                    if (A !== Wt && Lt(A, t)) return s[t] = 2, A[t];
                    if ((l = e.propsOptions[0]) && Lt(l, t)) return s[t] = 3, i[t];
                    if (n !== Wt && Lt(n, t)) return s[t] = 4, n[t];
                    m2 && (s[t] = 0)
                }
            }
            const u = Cl[t];
            let f, d;
            if (u) return t === "$attrs" && mr(e, "get", t), u(e);
            if ((f = a.__cssModules) && (f = f[t])) return f;
            if (n !== Wt && Lt(n, t)) return s[t] = 4, n[t];
            if (d = o.config.globalProperties, Lt(d, t)) return d[t]
        },
        set({
            _: e
        }, t, n) {
            const {
                data: r,
                setupState: A,
                ctx: i
            } = e;
            return g1(A, t) ? (A[t] = n, !0) : r !== Wt && Lt(r, t) ? (r[t] = n, !0) : Lt(e.props, t) || t[0] === "$" && t.slice(1) in e ? !1 : (i[t] = n, !0)
        },
        has({
            _: {
                data: e,
                setupState: t,
                accessCache: n,
                ctx: r,
                appContext: A,
                propsOptions: i
            }
        }, s) {
            let a;
            return !!n[s] || e !== Wt && Lt(e, s) || g1(t, s) || (a = i[0]) && Lt(a, s) || Lt(r, s) || Lt(Cl, s) || Lt(A.config.globalProperties, s)
        },
        defineProperty(e, t, n) {
            return n.get != null ? e._.accessCache[t] = 0 : Lt(n, "value") && this.set(e, t, n.value, null), Reflect.defineProperty(e, t, n)
        }
    },
    Wb = On({}, v2, {
        get(e, t) {
            if (t !== Symbol.unscopables) return v2.get(e, t, e)
        },
        has(e, t) {
            return t[0] !== "_" && !ib(t)
        }
    });

function jb() {
    return null
}

function Yb() {
    return null
}

function Xb(e) {}

function Jb(e) {}

function qb() {
    return null
}

function Zb() {}

function eF(e, t) {
    return null
}

function tF() {
    return U8().slots
}

function nF() {
    return U8().attrs
}

function rF(e, t, n) {
    const r = zt();
    if (n && n.local) {
        const A = Ue(e[t]);
        return je(() => e[t], i => A.value = i), je(A, i => {
            i !== e[t] && r.emit(`update:${t}`, i)
        }), A
    } else return {
        __v_isRef: !0,
        get value() {
            return e[t]
        },
        set value(A) {
            r.emit(`update:${t}`, A)
        }
    }
}

function U8() {
    const e = zt();
    return e.setupContext || (e.setupContext = q8(e))
}

function zl(e) {
    return mt(e) ? e.reduce((t, n) => (t[n] = null, t), {}) : e
}

function AF(e, t) {
    const n = zl(e);
    for (const r in t) {
        if (r.startsWith("__skip")) continue;
        let A = n[r];
        A ? mt(A) || vt(A) ? A = n[r] = {
            type: A,
            default: t[r]
        } : A.default = t[r] : A === null && (A = n[r] = {
            default: t[r]
        }), A && t[`__skip_${r}`] && (A.skipFactory = !0)
    }
    return n
}

function iF(e, t) {
    return !e || !t ? e || t : mt(e) && mt(t) ? e.concat(t) : On({}, zl(e), zl(t))
}

function sF(e, t) {
    const n = {};
    for (const r in e) t.includes(r) || Object.defineProperty(n, r, {
        enumerable: !0,
        get: () => e[r]
    });
    return n
}

function aF(e) {
    const t = zt();
    let n = e();
    return Ji(), d6(n) && (n = n.catch(r => {
        throw As(t), r
    })), [n, () => As(t)]
}
let m2 = !0;

function oF(e) {
    const t = E6(e),
        n = e.proxy,
        r = e.ctx;
    m2 = !1, t.beforeCreate && ag(t.beforeCreate, e, "bc");
    const {
        data: A,
        computed: i,
        methods: s,
        watch: a,
        provide: o,
        inject: l,
        created: u,
        beforeMount: f,
        mounted: d,
        beforeUpdate: p,
        updated: m,
        activated: g,
        deactivated: y,
        beforeDestroy: w,
        beforeUnmount: B,
        destroyed: x,
        unmounted: C,
        render: b,
        renderTracked: F,
        renderTriggered: T,
        errorCaptured: I,
        serverPrefetch: D,
        expose: U,
        inheritAttrs: Q,
        components: O,
        directives: N,
        filters: J
    } = t;
    if (l && lF(l, r, null), s)
        for (const ae in s) {
            const Y = s[ae];
            vt(Y) && (r[ae] = Y.bind(n))
        }
    if (A) {
        const ae = A.call(n, n);
        hn(ae) && (e.data = Nt(ae))
    }
    if (m2 = !0, i)
        for (const ae in i) {
            const Y = i[ae],
                ue = vt(Y) ? Y.bind(n, n) : vt(Y.get) ? Y.get.bind(n, n) : xA,
                ye = !vt(Y) && vt(Y.set) ? Y.set.bind(n) : xA,
                ee = Oe({
                    get: ue,
                    set: ye
                });
            Object.defineProperty(r, ae, {
                enumerable: !0,
                configurable: !0,
                get: () => ee.value,
                set: ce => ee.value = ce
            })
        }
    if (a)
        for (const ae in a) T8(a[ae], r, n, ae);
    if (o) {
        const ae = vt(o) ? o.call(n) : o;
        Reflect.ownKeys(ae).forEach(Y => {
            AA(Y, ae[Y])
        })
    }
    u && ag(u, e, "c");

    function V(ae, Y) {
        mt(Y) ? Y.forEach(ue => ae(ue.bind(n))) : Y && ae(Y.bind(n))
    }
    if (V(y6, f), V(qt, d), V(qc, p), V(sa, m), V(fs, g), V(ui, y), V(F8, I), V(b8, F), V(E8, T), V(Tr, B), V(fi, C), V(x8, D), mt(U))
        if (U.length) {
            const ae = e.exposed || (e.exposed = {});
            U.forEach(Y => {
                Object.defineProperty(ae, Y, {
                    get: () => n[Y],
                    set: ue => n[Y] = ue
                })
            })
        } else e.exposed || (e.exposed = {});
    b && e.render === xA && (e.render = b), Q != null && (e.inheritAttrs = Q), O && (e.components = O), N && (e.directives = N)
}

function lF(e, t, n = xA) {
    mt(e) && (e = B2(e));
    for (const r in e) {
        const A = e[r];
        let i;
        hn(A) ? "default" in A ? i = fn(A.from || r, A.default, !0) : i = fn(A.from || r) : i = fn(A), Rt(i) ? Object.defineProperty(t, r, {
            enumerable: !0,
            configurable: !0,
            get: () => i.value,
            set: s => i.value = s
        }) : t[r] = i
    }
}

function ag(e, t, n) {
    Qr(mt(e) ? e.map(r => r.bind(t.proxy)) : e.bind(t.proxy), t, n)
}

function T8(e, t, n, r) {
    const A = r.includes(".") ? B8(n, r) : () => n[r];
    if (Fn(e)) {
        const i = t[e];
        vt(i) && je(A, i)
    } else if (vt(e)) je(A, e.bind(n));
    else if (hn(e))
        if (mt(e)) e.forEach(i => T8(i, t, n, r));
        else {
            const i = vt(e.handler) ? e.handler.bind(n) : t[e.handler];
            vt(i) && je(A, i, e)
        }
}

function E6(e) {
    const t = e.type,
        {
            mixins: n,
            extends: r
        } = t,
        {
            mixins: A,
            optionsCache: i,
            config: {
                optionMergeStrategies: s
            }
        } = e.appContext,
        a = i.get(t);
    let o;
    return a ? o = a : !A.length && !n && !r ? o = t : (o = {}, A.length && A.forEach(l => rc(o, l, s, !0)), rc(o, t, s)), hn(t) && i.set(t, o), o
}

function rc(e, t, n, r = !1) {
    const {
        mixins: A,
        extends: i
    } = t;
    i && rc(e, i, n, !0), A && A.forEach(s => rc(e, s, n, !0));
    for (const s in t)
        if (!(r && s === "expose")) {
            const a = uF[s] || n && n[s];
            e[s] = a ? a(e[s], t[s]) : t[s]
        }
    return e
}
const uF = {
    data: og,
    props: lg,
    emits: lg,
    methods: cl,
    computed: cl,
    beforeCreate: Zn,
    created: Zn,
    beforeMount: Zn,
    mounted: Zn,
    beforeUpdate: Zn,
    updated: Zn,
    beforeDestroy: Zn,
    beforeUnmount: Zn,
    destroyed: Zn,
    unmounted: Zn,
    activated: Zn,
    deactivated: Zn,
    errorCaptured: Zn,
    serverPrefetch: Zn,
    components: cl,
    directives: cl,
    watch: fF,
    provide: og,
    inject: cF
};

function og(e, t) {
    return t ? e ? function() {
        return On(vt(e) ? e.call(this, this) : e, vt(t) ? t.call(this, this) : t)
    } : t : e
}

function cF(e, t) {
    return cl(B2(e), B2(t))
}

function B2(e) {
    if (mt(e)) {
        const t = {};
        for (let n = 0; n < e.length; n++) t[e[n]] = e[n];
        return t
    }
    return e
}

function Zn(e, t) {
    return e ? [...new Set([].concat(e, t))] : t
}

function cl(e, t) {
    return e ? On(Object.create(null), e, t) : t
}

function lg(e, t) {
    return e ? mt(e) && mt(t) ? [...new Set([...e, ...t])] : On(Object.create(null), zl(e), zl(t ? ? {})) : t
}

function fF(e, t) {
    if (!e) return t;
    if (!t) return e;
    const n = On(Object.create(null), e);
    for (const r in t) n[r] = Zn(e[r], t[r]);
    return n
}

function I8() {
    return {
        app: null,
        config: {
            isNativeTag: XE,
            performance: !1,
            globalProperties: {},
            optionMergeStrategies: {},
            errorHandler: void 0,
            warnHandler: void 0,
            compilerOptions: {}
        },
        mixins: [],
        components: {},
        directives: {},
        provides: Object.create(null),
        optionsCache: new WeakMap,
        propsCache: new WeakMap,
        emitsCache: new WeakMap
    }
}
let dF = 0;

function hF(e, t) {
    return function(r, A = null) {
        vt(r) || (r = On({}, r)), A != null && !hn(A) && (A = null);
        const i = I8(),
            s = new Set;
        let a = !1;
        const o = i.app = {
            _uid: dF++,
            _component: r,
            _props: A,
            _container: null,
            _context: i,
            _instance: null,
            version: n3,
            get config() {
                return i.config
            },
            set config(l) {},
            use(l, ...u) {
                return s.has(l) || (l && vt(l.install) ? (s.add(l), l.install(o, ...u)) : vt(l) && (s.add(l), l(o, ...u))), o
            },
            mixin(l) {
                return i.mixins.includes(l) || i.mixins.push(l), o
            },
            component(l, u) {
                return u ? (i.components[l] = u, o) : i.components[l]
            },
            directive(l, u) {
                return u ? (i.directives[l] = u, o) : i.directives[l]
            },
            mount(l, u, f) {
                if (!a) {
                    const d = Z(r, A);
                    return d.appContext = i, u && t ? t(d, l) : e(d, l, f), a = !0, o._container = l, l.__vue_app__ = o, nf(d.component) || d.component.proxy
                }
            },
            unmount() {
                a && (e(null, o._container), delete o._container.__vue_app__)
            },
            provide(l, u) {
                return i.provides[l] = u, o
            },
            runWithContext(l) {
                Wl = o;
                try {
                    return l()
                } finally {
                    Wl = null
                }
            }
        };
        return o
    }
}
let Wl = null;

function AA(e, t) {
    if (cn) {
        let n = cn.provides;
        const r = cn.parent && cn.parent.provides;
        r === n && (n = cn.provides = Object.create(r)), n[e] = t
    }
}

function fn(e, t, n = !1) {
    const r = cn || In;
    if (r || Wl) {
        const A = r ? r.parent == null ? r.vnode.appContext && r.vnode.appContext.provides : r.parent.provides : Wl._context.provides;
        if (A && e in A) return A[e];
        if (arguments.length > 1) return n && vt(t) ? t.call(r && r.proxy) : t
    }
}

function D8() {
    return !!(cn || In || Wl)
}

function pF(e, t, n, r = !1) {
    const A = {},
        i = {};
    d2(i, ef, 1), e.propsDefaults = Object.create(null), P8(e, t, A, i);
    for (const s in e.propsOptions[0]) s in A || (A[s] = void 0);
    n ? e.props = r ? A : e8(A) : e.type.props ? e.props = A : e.props = i, e.attrs = i
}

function gF(e, t, n, r) {
    const {
        props: A,
        attrs: i,
        vnode: {
            patchFlag: s
        }
    } = e, a = Et(A), [o] = e.propsOptions;
    let l = !1;
    if ((r || s > 0) && !(s & 16)) {
        if (s & 8) {
            const u = e.vnode.dynamicProps;
            for (let f = 0; f < u.length; f++) {
                let d = u[f];
                if (Wc(e.emitsOptions, d)) continue;
                const p = t[d];
                if (o)
                    if (Lt(i, d)) p !== i[d] && (i[d] = p, l = !0);
                    else {
                        const m = sA(d);
                        A[m] = w2(o, a, m, p, e, !1)
                    }
                else p !== i[d] && (i[d] = p, l = !0)
            }
        }
    } else {
        P8(e, t, A, i) && (l = !0);
        let u;
        for (const f in a)(!t || !Lt(t, f) && ((u = Vc(f)) === f || !Lt(t, u))) && (o ? n && (n[f] !== void 0 || n[u] !== void 0) && (A[f] = w2(o, a, f, void 0, e, !0)) : delete A[f]);
        if (i !== a)
            for (const f in i)(!t || !Lt(t, f)) && (delete i[f], l = !0)
    }
    l && ri(e, "set", "$attrs")
}

function P8(e, t, n, r) {
    const [A, i] = e.propsOptions;
    let s = !1,
        a;
    if (t)
        for (let o in t) {
            if (Bl(o)) continue;
            const l = t[o];
            let u;
            A && Lt(A, u = sA(o)) ? !i || !i.includes(u) ? n[u] = l : (a || (a = {}))[u] = l : Wc(e.emitsOptions, o) || (!(o in r) || l !== r[o]) && (r[o] = l, s = !0)
        }
    if (i) {
        const o = Et(n),
            l = a || Wt;
        for (let u = 0; u < i.length; u++) {
            const f = i[u];
            n[f] = w2(A, o, f, l[f], e, !Lt(l, f))
        }
    }
    return s
}

function w2(e, t, n, r, A, i) {
    const s = e[n];
    if (s != null) {
        const a = Lt(s, "default");
        if (a && r === void 0) {
            const o = s.default;
            if (s.type !== Function && !s.skipFactory && vt(o)) {
                const {
                    propsDefaults: l
                } = A;
                n in l ? r = l[n] : (As(A), r = l[n] = o.call(null, t), Ji())
            } else r = o
        }
        s[0] && (i && !a ? r = !1 : s[1] && (r === "" || r === Vc(n)) && (r = !0))
    }
    return r
}

function O8(e, t, n = !1) {
    const r = t.propsCache,
        A = r.get(e);
    if (A) return A;
    const i = e.props,
        s = {},
        a = [];
    let o = !1;
    if (!vt(e)) {
        const u = f => {
            o = !0;
            const [d, p] = O8(f, t, !0);
            On(s, d), p && a.push(...p)
        };
        !n && t.mixins.length && t.mixins.forEach(u), e.extends && u(e.extends), e.mixins && e.mixins.forEach(u)
    }
    if (!i && !o) return hn(e) && r.set(e, za), za;
    if (mt(i))
        for (let u = 0; u < i.length; u++) {
            const f = sA(i[u]);
            ug(f) && (s[f] = Wt)
        } else if (i)
            for (const u in i) {
                const f = sA(u);
                if (ug(f)) {
                    const d = i[u],
                        p = s[f] = mt(d) || vt(d) ? {
                            type: d
                        } : On({}, d);
                    if (p) {
                        const m = dg(Boolean, p.type),
                            g = dg(String, p.type);
                        p[0] = m > -1, p[1] = g < 0 || m < g, (m > -1 || Lt(p, "default")) && a.push(f)
                    }
                }
            }
    const l = [s, a];
    return hn(e) && r.set(e, l), l
}

function ug(e) {
    return e[0] !== "$"
}

function cg(e) {
    const t = e && e.toString().match(/^\s*(function|class) (\w+)/);
    return t ? t[2] : e === null ? "null" : ""
}

function fg(e, t) {
    return cg(e) === cg(t)
}

function dg(e, t) {
    return mt(t) ? t.findIndex(n => fg(n, e)) : vt(t) && fg(t, e) ? 0 : -1
}
const L8 = e => e[0] === "_" || e === "$stable",
    b6 = e => mt(e) ? e.map(Sr) : [Sr(e)],
    vF = (e, t, n) => {
        if (t._n) return t;
        const r = g6((...A) => b6(t(...A)), n);
        return r._c = !1, r
    },
    k8 = (e, t, n) => {
        const r = e._ctx;
        for (const A in e) {
            if (L8(A)) continue;
            const i = e[A];
            if (vt(i)) t[A] = vF(A, i, r);
            else if (i != null) {
                const s = b6(i);
                t[A] = () => s
            }
        }
    },
    H8 = (e, t) => {
        const n = b6(t);
        e.slots.default = () => n
    },
    mF = (e, t) => {
        if (e.vnode.shapeFlag & 32) {
            const n = t._;
            n ? (e.slots = Et(t), d2(t, "_", n)) : k8(t, e.slots = {})
        } else e.slots = {}, t && H8(e, t);
        d2(e.slots, ef, 1)
    },
    BF = (e, t, n) => {
        const {
            vnode: r,
            slots: A
        } = e;
        let i = !0,
            s = Wt;
        if (r.shapeFlag & 32) {
            const a = t._;
            a ? n && a === 1 ? i = !1 : (On(A, t), !n && a === 1 && delete A._) : (i = !t.$stable, k8(t, A)), s = t
        } else t && (H8(e, t), s = {
            default: 1
        });
        if (i)
            for (const a in A) !L8(a) && !(a in s) && delete A[a]
    };

function Ac(e, t, n, r, A = !1) {
    if (mt(e)) {
        e.forEach((d, p) => Ac(d, t && (mt(t) ? t[p] : t), n, r, A));
        return
    }
    if (Vs(r) && !A) return;
    const i = r.shapeFlag & 4 ? nf(r.component) || r.component.proxy : r.el,
        s = A ? null : i,
        {
            i: a,
            r: o
        } = e,
        l = t && t.r,
        u = a.refs === Wt ? a.refs = {} : a.refs,
        f = a.setupState;
    if (l != null && l !== o && (Fn(l) ? (u[l] = null, Lt(f, l) && (f[l] = null)) : Rt(l) && (l.value = null)), vt(o)) XA(o, a, 12, [s, u]);
    else {
        const d = Fn(o),
            p = Rt(o);
        if (d || p) {
            const m = () => {
                if (e.f) {
                    const g = d ? Lt(f, o) ? f[o] : u[o] : o.value;
                    A ? mt(g) && f6(g, i) : mt(g) ? g.includes(i) || g.push(i) : d ? (u[o] = [i], Lt(f, o) && (f[o] = u[o])) : (o.value = [i], e.k && (u[e.k] = o.value))
                } else d ? (u[o] = s, Lt(f, o) && (f[o] = s)) : p && (o.value = s, e.k && (u[e.k] = s))
            };
            s ? (m.id = -1, Rn(m, n)) : m()
        }
    }
}
let Fi = !1;
const j0 = e => /svg/.test(e.namespaceURI) && e.tagName !== "foreignObject",
    Y0 = e => e.nodeType === 8;

function wF(e) {
    const {
        mt: t,
        p: n,
        o: {
            patchProp: r,
            createText: A,
            nextSibling: i,
            parentNode: s,
            remove: a,
            insert: o,
            createComment: l
        }
    } = e, u = (w, B) => {
        if (!B.hasChildNodes()) {
            n(null, w, B), nc(), B._vnode = w;
            return
        }
        Fi = !1, f(B.firstChild, w, null, null, null), nc(), B._vnode = w, Fi && console.error("Hydration completed but contains mismatches.")
    }, f = (w, B, x, C, b, F = !1) => {
        const T = Y0(w) && w.data === "[",
            I = () => g(w, B, x, C, b, T),
            {
                type: D,
                ref: U,
                shapeFlag: Q,
                patchFlag: O
            } = B;
        let N = w.nodeType;
        B.el = w, O === -2 && (F = !1, B.dynamicChildren = null);
        let J = null;
        switch (D) {
            case rs:
                N !== 3 ? B.children === "" ? (o(B.el = A(""), s(w), w), J = w) : J = I() : (w.data !== B.children && (Fi = !0, w.data = B.children), J = i(w));
                break;
            case Jn:
                N !== 8 || T ? J = I() : J = i(w);
                break;
            case Gs:
                if (T && (w = i(w), N = w.nodeType), N === 1 || N === 3) {
                    J = w;
                    const j = !B.children.length;
                    for (let V = 0; V < B.staticCount; V++) j && (B.children += J.nodeType === 1 ? J.outerHTML : J.data), V === B.staticCount - 1 && (B.anchor = J), J = i(J);
                    return T ? i(J) : J
                } else I();
                break;
            case rn:
                T ? J = m(w, B, x, C, b, F) : J = I();
                break;
            default:
                if (Q & 1) N !== 1 || B.type.toLowerCase() !== w.tagName.toLowerCase() ? J = I() : J = d(w, B, x, C, b, F);
                else if (Q & 6) {
                    B.slotScopeIds = b;
                    const j = s(w);
                    if (t(B, j, null, x, C, j0(j), F), J = T ? y(w) : i(w), J && Y0(J) && J.data === "teleport end" && (J = i(J)), Vs(B)) {
                        let V;
                        T ? (V = Z(rn), V.anchor = J ? J.previousSibling : j.lastChild) : V = w.nodeType === 3 ? tf("") : Z("div"), V.el = w, B.component.subTree = V
                    }
                } else Q & 64 ? N !== 8 ? J = I() : J = B.type.hydrate(w, B, x, C, b, F, e, p) : Q & 128 && (J = B.type.hydrate(w, B, x, C, j0(s(w)), b, F, e, f))
        }
        return U != null && Ac(U, null, C, B), J
    }, d = (w, B, x, C, b, F) => {
        F = F || !!B.dynamicChildren;
        const {
            type: T,
            props: I,
            patchFlag: D,
            shapeFlag: U,
            dirs: Q
        } = B, O = T === "input" && Q || T === "option";
        if (O || D !== -1) {
            if (Q && mA(B, null, x, "created"), I)
                if (O || !F || D & 48)
                    for (const J in I)(O && J.endsWith("value") || Nc(J) && !Bl(J)) && r(w, J, null, I[J], !1, void 0, x);
                else I.onClick && r(w, "onClick", null, I.onClick, !1, void 0, x);
            let N;
            if ((N = I && I.onVnodeBeforeMount) && fr(N, x, B), Q && mA(B, null, x, "beforeMount"), ((N = I && I.onVnodeMounted) || Q) && v8(() => {
                    N && fr(N, x, B), Q && mA(B, null, x, "mounted")
                }, C), U & 16 && !(I && (I.innerHTML || I.textContent))) {
                let J = p(w.firstChild, B, w, x, C, b, F);
                for (; J;) {
                    Fi = !0;
                    const j = J;
                    J = J.nextSibling, a(j)
                }
            } else U & 8 && w.textContent !== B.children && (Fi = !0, w.textContent = B.children)
        }
        return w.nextSibling
    }, p = (w, B, x, C, b, F, T) => {
        T = T || !!B.dynamicChildren;
        const I = B.children,
            D = I.length;
        for (let U = 0; U < D; U++) {
            const Q = T ? I[U] : I[U] = Sr(I[U]);
            if (w) w = f(w, Q, C, b, F, T);
            else {
                if (Q.type === rs && !Q.children) continue;
                Fi = !0, n(null, Q, x, null, C, b, j0(x), F)
            }
        }
        return w
    }, m = (w, B, x, C, b, F) => {
        const {
            slotScopeIds: T
        } = B;
        T && (b = b ? b.concat(T) : T);
        const I = s(w),
            D = p(i(w), B, I, x, C, b, F);
        return D && Y0(D) && D.data === "]" ? i(B.anchor = D) : (Fi = !0, o(B.anchor = l("]"), I, D), D)
    }, g = (w, B, x, C, b, F) => {
        if (Fi = !0, B.el = null, F) {
            const D = y(w);
            for (;;) {
                const U = i(w);
                if (U && U !== D) a(U);
                else break
            }
        }
        const T = i(w),
            I = s(w);
        return a(w), n(null, B, I, T, x, C, j0(I), b), T
    }, y = w => {
        let B = 0;
        for (; w;)
            if (w = i(w), w && Y0(w) && (w.data === "[" && B++, w.data === "]")) {
                if (B === 0) return i(w);
                B--
            }
        return w
    };
    return [u, f]
}
const Rn = v8;

function M8(e) {
    return N8(e)
}

function R8(e) {
    return N8(e, wF)
}

function N8(e, t) {
    const n = h2();
    n.__VUE__ = !0;
    const {
        insert: r,
        remove: A,
        patchProp: i,
        createElement: s,
        createText: a,
        createComment: o,
        setText: l,
        setElementText: u,
        parentNode: f,
        nextSibling: d,
        setScopeId: p = xA,
        insertStaticContent: m
    } = e, g = (W, P, M, te = null, Be = null, Ie = null, Le = !1, He = null, Ne = !!P.dynamicChildren) => {
        if (W === P) return;
        W && !tA(W, P) && (te = ie(W), ce(W, Be, Ie, !0), W = null), P.patchFlag === -2 && (Ne = !1, P.dynamicChildren = null);
        const {
            type: Pe,
            ref: we,
            shapeFlag: he
        } = P;
        switch (Pe) {
            case rs:
                y(W, P, M, te);
                break;
            case Jn:
                w(W, P, M, te);
                break;
            case Gs:
                W == null && B(P, M, te, Le);
                break;
            case rn:
                O(W, P, M, te, Be, Ie, Le, He, Ne);
                break;
            default:
                he & 1 ? b(W, P, M, te, Be, Ie, Le, He, Ne) : he & 6 ? N(W, P, M, te, Be, Ie, Le, He, Ne) : (he & 64 || he & 128) && Pe.process(W, P, M, te, Be, Ie, Le, He, Ne, De)
        }
        we != null && Be && Ac(we, W && W.ref, Ie, P || W, !P)
    }, y = (W, P, M, te) => {
        if (W == null) r(P.el = a(P.children), M, te);
        else {
            const Be = P.el = W.el;
            P.children !== W.children && l(Be, P.children)
        }
    }, w = (W, P, M, te) => {
        W == null ? r(P.el = o(P.children || ""), M, te) : P.el = W.el
    }, B = (W, P, M, te) => {
        [W.el, W.anchor] = m(W.children, P, M, te, W.el, W.anchor)
    }, x = ({
        el: W,
        anchor: P
    }, M, te) => {
        let Be;
        for (; W && W !== P;) Be = d(W), r(W, M, te), W = Be;
        r(P, M, te)
    }, C = ({
        el: W,
        anchor: P
    }) => {
        let M;
        for (; W && W !== P;) M = d(W), A(W), W = M;
        A(P)
    }, b = (W, P, M, te, Be, Ie, Le, He, Ne) => {
        Le = Le || P.type === "svg", W == null ? F(P, M, te, Be, Ie, Le, He, Ne) : D(W, P, Be, Ie, Le, He, Ne)
    }, F = (W, P, M, te, Be, Ie, Le, He) => {
        let Ne, Pe;
        const {
            type: we,
            props: he,
            shapeFlag: Ke,
            transition: Je,
            dirs: ot
        } = W;
        if (Ne = W.el = s(W.type, Ie, he && he.is, he), Ke & 8 ? u(Ne, W.children) : Ke & 16 && I(W.children, Ne, null, te, Be, Ie && we !== "foreignObject", Le, He), ot && mA(W, null, te, "created"), T(Ne, W, W.scopeId, Le, te), he) {
            for (const Bt in he) Bt !== "value" && !Bl(Bt) && i(Ne, Bt, null, he[Bt], Ie, W.children, te, Be, Fe);
            "value" in he && i(Ne, "value", null, he.value), (Pe = he.onVnodeBeforeMount) && fr(Pe, te, W)
        }
        ot && mA(W, null, te, "beforeMount");
        const gt = (!Be || Be && !Be.pendingBranch) && Je && !Je.persisted;
        gt && Je.beforeEnter(Ne), r(Ne, P, M), ((Pe = he && he.onVnodeMounted) || gt || ot) && Rn(() => {
            Pe && fr(Pe, te, W), gt && Je.enter(Ne), ot && mA(W, null, te, "mounted")
        }, Be)
    }, T = (W, P, M, te, Be) => {
        if (M && p(W, M), te)
            for (let Ie = 0; Ie < te.length; Ie++) p(W, te[Ie]);
        if (Be) {
            let Ie = Be.subTree;
            if (P === Ie) {
                const Le = Be.vnode;
                T(W, Le, Le.scopeId, Le.slotScopeIds, Be.parent)
            }
        }
    }, I = (W, P, M, te, Be, Ie, Le, He, Ne = 0) => {
        for (let Pe = Ne; Pe < W.length; Pe++) {
            const we = W[Pe] = He ? ki(W[Pe]) : Sr(W[Pe]);
            g(null, we, P, M, te, Be, Ie, Le, He)
        }
    }, D = (W, P, M, te, Be, Ie, Le) => {
        const He = P.el = W.el;
        let {
            patchFlag: Ne,
            dynamicChildren: Pe,
            dirs: we
        } = P;
        Ne |= W.patchFlag & 16;
        const he = W.props || Wt,
            Ke = P.props || Wt;
        let Je;
        M && Fs(M, !1), (Je = Ke.onVnodeBeforeUpdate) && fr(Je, M, P, W), we && mA(P, W, M, "beforeUpdate"), M && Fs(M, !0);
        const ot = Be && P.type !== "foreignObject";
        if (Pe ? U(W.dynamicChildren, Pe, He, M, te, ot, Ie) : Le || Y(W, P, He, null, M, te, ot, Ie, !1), Ne > 0) {
            if (Ne & 16) Q(He, P, he, Ke, M, te, Be);
            else if (Ne & 2 && he.class !== Ke.class && i(He, "class", null, Ke.class, Be), Ne & 4 && i(He, "style", he.style, Ke.style, Be), Ne & 8) {
                const gt = P.dynamicProps;
                for (let Bt = 0; Bt < gt.length; Bt++) {
                    const kt = gt[Bt],
                        Hn = he[kt],
                        Yt = Ke[kt];
                    (Yt !== Hn || kt === "value") && i(He, kt, Hn, Yt, Be, W.children, M, te, Fe)
                }
            }
            Ne & 1 && W.children !== P.children && u(He, P.children)
        } else !Le && Pe == null && Q(He, P, he, Ke, M, te, Be);
        ((Je = Ke.onVnodeUpdated) || we) && Rn(() => {
            Je && fr(Je, M, P, W), we && mA(P, W, M, "updated")
        }, te)
    }, U = (W, P, M, te, Be, Ie, Le) => {
        for (let He = 0; He < P.length; He++) {
            const Ne = W[He],
                Pe = P[He],
                we = Ne.el && (Ne.type === rn || !tA(Ne, Pe) || Ne.shapeFlag & 70) ? f(Ne.el) : M;
            g(Ne, Pe, we, null, te, Be, Ie, Le, !0)
        }
    }, Q = (W, P, M, te, Be, Ie, Le) => {
        if (M !== te) {
            if (M !== Wt)
                for (const He in M) !Bl(He) && !(He in te) && i(W, He, M[He], null, Le, P.children, Be, Ie, Fe);
            for (const He in te) {
                if (Bl(He)) continue;
                const Ne = te[He],
                    Pe = M[He];
                Ne !== Pe && He !== "value" && i(W, He, Pe, Ne, Le, P.children, Be, Ie, Fe)
            }
            "value" in te && i(W, "value", M.value, te.value)
        }
    }, O = (W, P, M, te, Be, Ie, Le, He, Ne) => {
        const Pe = P.el = W ? W.el : a(""),
            we = P.anchor = W ? W.anchor : a("");
        let {
            patchFlag: he,
            dynamicChildren: Ke,
            slotScopeIds: Je
        } = P;
        Je && (He = He ? He.concat(Je) : Je), W == null ? (r(Pe, M, te), r(we, M, te), I(P.children, M, we, Be, Ie, Le, He, Ne)) : he > 0 && he & 64 && Ke && W.dynamicChildren ? (U(W.dynamicChildren, Ke, M, Be, Ie, Le, He), (P.key != null || Be && P === Be.subTree) && F6(W, P, !0)) : Y(W, P, M, we, Be, Ie, Le, He, Ne)
    }, N = (W, P, M, te, Be, Ie, Le, He, Ne) => {
        P.slotScopeIds = He, W == null ? P.shapeFlag & 512 ? Be.ctx.activate(P, M, te, Le, Ne) : J(P, M, te, Be, Ie, Le, Ne) : j(W, P, Ne)
    }, J = (W, P, M, te, Be, Ie, Le) => {
        const He = W.component = j8(W, te, Be);
        if (p0(W) && (He.ctx.renderer = De), X8(He), He.asyncDep) {
            if (Be && Be.registerDep(He, V), !W.el) {
                const Ne = He.subTree = Z(Jn);
                w(null, Ne, P, M)
            }
            return
        }
        V(He, W, P, M, Be, Ie, Le)
    }, j = (W, P, M) => {
        const te = P.component = W.component;
        if (bb(W, P, M))
            if (te.asyncDep && !te.asyncResolved) {
                ae(te, P, M);
                return
            } else te.next = P, gb(te.update), te.update();
        else P.el = W.el, te.vnode = P
    }, V = (W, P, M, te, Be, Ie, Le) => {
        const He = () => {
                if (W.isMounted) {
                    let {
                        next: we,
                        bu: he,
                        u: Ke,
                        parent: Je,
                        vnode: ot
                    } = W, gt = we, Bt;
                    Fs(W, !1), we ? (we.el = ot.el, ae(W, we, Le)) : we = ot, he && yl(he), (Bt = we.props && we.props.onVnodeBeforeUpdate) && fr(Bt, Je, we, ot), Fs(W, !0);
                    const kt = Nu(W),
                        Hn = W.subTree;
                    W.subTree = kt, g(Hn, kt, f(Hn.el), ie(Hn), W, Be, Ie), we.el = kt.el, gt === null && v6(W, kt.el), Ke && Rn(Ke, Be), (Bt = we.props && we.props.onVnodeUpdated) && Rn(() => fr(Bt, Je, we, ot), Be)
                } else {
                    let we;
                    const {
                        el: he,
                        props: Ke
                    } = P, {
                        bm: Je,
                        m: ot,
                        parent: gt
                    } = W, Bt = Vs(P);
                    if (Fs(W, !1), Je && yl(Je), !Bt && (we = Ke && Ke.onVnodeBeforeMount) && fr(we, gt, P), Fs(W, !0), he && Te) {
                        const kt = () => {
                            W.subTree = Nu(W), Te(he, W.subTree, W, Be, null)
                        };
                        Bt ? P.type.__asyncLoader().then(() => !W.isUnmounted && kt()) : kt()
                    } else {
                        const kt = W.subTree = Nu(W);
                        g(null, kt, M, te, W, Be, Ie), P.el = kt.el
                    }
                    if (ot && Rn(ot, Be), !Bt && (we = Ke && Ke.onVnodeMounted)) {
                        const kt = P;
                        Rn(() => fr(we, gt, kt), Be)
                    }(P.shapeFlag & 256 || gt && Vs(gt.vnode) && gt.vnode.shapeFlag & 256) && W.a && Rn(W.a, Be), W.isMounted = !0, P = M = te = null
                }
            },
            Ne = W.effect = new u0(He, () => zc(Pe), W.scope),
            Pe = W.update = () => Ne.run();
        Pe.id = W.uid, Fs(W, !0), Pe()
    }, ae = (W, P, M) => {
        P.component = W;
        const te = W.vnode.props;
        W.vnode = P, W.next = null, gF(W, P.props, te, M), BF(W, P.children, M), wo(), ng(), yo()
    }, Y = (W, P, M, te, Be, Ie, Le, He, Ne = !1) => {
        const Pe = W && W.children,
            we = W ? W.shapeFlag : 0,
            he = P.children,
            {
                patchFlag: Ke,
                shapeFlag: Je
            } = P;
        if (Ke > 0) {
            if (Ke & 128) {
                ye(Pe, he, M, te, Be, Ie, Le, He, Ne);
                return
            } else if (Ke & 256) {
                ue(Pe, he, M, te, Be, Ie, Le, He, Ne);
                return
            }
        }
        Je & 8 ? (we & 16 && Fe(Pe, Be, Ie), he !== Pe && u(M, he)) : we & 16 ? Je & 16 ? ye(Pe, he, M, te, Be, Ie, Le, He, Ne) : Fe(Pe, Be, Ie, !0) : (we & 8 && u(M, ""), Je & 16 && I(he, M, te, Be, Ie, Le, He, Ne))
    }, ue = (W, P, M, te, Be, Ie, Le, He, Ne) => {
        W = W || za, P = P || za;
        const Pe = W.length,
            we = P.length,
            he = Math.min(Pe, we);
        let Ke;
        for (Ke = 0; Ke < he; Ke++) {
            const Je = P[Ke] = Ne ? ki(P[Ke]) : Sr(P[Ke]);
            g(W[Ke], Je, M, null, Be, Ie, Le, He, Ne)
        }
        Pe > we ? Fe(W, Be, Ie, !0, !1, he) : I(P, M, te, Be, Ie, Le, He, Ne, he)
    }, ye = (W, P, M, te, Be, Ie, Le, He, Ne) => {
        let Pe = 0;
        const we = P.length;
        let he = W.length - 1,
            Ke = we - 1;
        for (; Pe <= he && Pe <= Ke;) {
            const Je = W[Pe],
                ot = P[Pe] = Ne ? ki(P[Pe]) : Sr(P[Pe]);
            if (tA(Je, ot)) g(Je, ot, M, null, Be, Ie, Le, He, Ne);
            else break;
            Pe++
        }
        for (; Pe <= he && Pe <= Ke;) {
            const Je = W[he],
                ot = P[Ke] = Ne ? ki(P[Ke]) : Sr(P[Ke]);
            if (tA(Je, ot)) g(Je, ot, M, null, Be, Ie, Le, He, Ne);
            else break;
            he--, Ke--
        }
        if (Pe > he) {
            if (Pe <= Ke) {
                const Je = Ke + 1,
                    ot = Je < we ? P[Je].el : te;
                for (; Pe <= Ke;) g(null, P[Pe] = Ne ? ki(P[Pe]) : Sr(P[Pe]), M, ot, Be, Ie, Le, He, Ne), Pe++
            }
        } else if (Pe > Ke)
            for (; Pe <= he;) ce(W[Pe], Be, Ie, !0), Pe++;
        else {
            const Je = Pe,
                ot = Pe,
                gt = new Map;
            for (Pe = ot; Pe <= Ke; Pe++) {
                const _n = P[Pe] = Ne ? ki(P[Pe]) : Sr(P[Pe]);
                _n.key != null && gt.set(_n.key, Pe)
            }
            let Bt, kt = 0;
            const Hn = Ke - ot + 1;
            let Yt = !1,
                zn = 0;
            const uA = new Array(Hn);
            for (Pe = 0; Pe < Hn; Pe++) uA[Pe] = 0;
            for (Pe = Je; Pe <= he; Pe++) {
                const _n = W[Pe];
                if (kt >= Hn) {
                    ce(_n, Be, Ie, !0);
                    continue
                }
                let sr;
                if (_n.key != null) sr = gt.get(_n.key);
                else
                    for (Bt = ot; Bt <= Ke; Bt++)
                        if (uA[Bt - ot] === 0 && tA(_n, P[Bt])) {
                            sr = Bt;
                            break
                        }
                sr === void 0 ? ce(_n, Be, Ie, !0) : (uA[sr - ot] = Pe + 1, sr >= zn ? zn = sr : Yt = !0, g(_n, P[sr], M, null, Be, Ie, Le, He, Ne), kt++)
            }
            const hi = Yt ? yF(uA) : za;
            for (Bt = hi.length - 1, Pe = Hn - 1; Pe >= 0; Pe--) {
                const _n = ot + Pe,
                    sr = P[_n],
                    ws = _n + 1 < we ? P[_n + 1].el : te;
                uA[Pe] === 0 ? g(null, sr, M, ws, Be, Ie, Le, He, Ne) : Yt && (Bt < 0 || Pe !== hi[Bt] ? ee(sr, M, ws, 2) : Bt--)
            }
        }
    }, ee = (W, P, M, te, Be = null) => {
        const {
            el: Ie,
            type: Le,
            transition: He,
            children: Ne,
            shapeFlag: Pe
        } = W;
        if (Pe & 6) {
            ee(W.component.subTree, P, M, te);
            return
        }
        if (Pe & 128) {
            W.suspense.move(P, M, te);
            return
        }
        if (Pe & 64) {
            Le.move(W, P, M, De);
            return
        }
        if (Le === rn) {
            r(Ie, P, M);
            for (let he = 0; he < Ne.length; he++) ee(Ne[he], P, M, te);
            r(W.anchor, P, M);
            return
        }
        if (Le === Gs) {
            x(W, P, M);
            return
        }
        if (te !== 2 && Pe & 1 && He)
            if (te === 0) He.beforeEnter(Ie), r(Ie, P, M), Rn(() => He.enter(Ie), Be);
            else {
                const {
                    leave: he,
                    delayLeave: Ke,
                    afterLeave: Je
                } = He, ot = () => r(Ie, P, M), gt = () => {
                    he(Ie, () => {
                        ot(), Je && Je()
                    })
                };
                Ke ? Ke(Ie, ot, gt) : gt()
            }
        else r(Ie, P, M)
    }, ce = (W, P, M, te = !1, Be = !1) => {
        const {
            type: Ie,
            props: Le,
            ref: He,
            children: Ne,
            dynamicChildren: Pe,
            shapeFlag: we,
            patchFlag: he,
            dirs: Ke
        } = W;
        if (He != null && Ac(He, null, M, W, !0), we & 256) {
            P.ctx.deactivate(W);
            return
        }
        const Je = we & 1 && Ke,
            ot = !Vs(W);
        let gt;
        if (ot && (gt = Le && Le.onVnodeBeforeUnmount) && fr(gt, P, W), we & 6) se(W.component, M, te);
        else {
            if (we & 128) {
                W.suspense.unmount(M, te);
                return
            }
            Je && mA(W, null, P, "beforeUnmount"), we & 64 ? W.type.remove(W, P, M, Be, De, te) : Pe && (Ie !== rn || he > 0 && he & 64) ? Fe(Pe, P, M, !1, !0) : (Ie === rn && he & 384 || !Be && we & 16) && Fe(Ne, P, M), te && ve(W)
        }(ot && (gt = Le && Le.onVnodeUnmounted) || Je) && Rn(() => {
            gt && fr(gt, P, W), Je && mA(W, null, P, "unmounted")
        }, M)
    }, ve = W => {
        const {
            type: P,
            el: M,
            anchor: te,
            transition: Be
        } = W;
        if (P === rn) {
            xe(M, te);
            return
        }
        if (P === Gs) {
            C(W);
            return
        }
        const Ie = () => {
            A(M), Be && !Be.persisted && Be.afterLeave && Be.afterLeave()
        };
        if (W.shapeFlag & 1 && Be && !Be.persisted) {
            const {
                leave: Le,
                delayLeave: He
            } = Be, Ne = () => Le(M, Ie);
            He ? He(W.el, Ie, Ne) : Ne()
        } else Ie()
    }, xe = (W, P) => {
        let M;
        for (; W !== P;) M = d(W), A(W), W = M;
        A(P)
    }, se = (W, P, M) => {
        const {
            bum: te,
            scope: Be,
            update: Ie,
            subTree: Le,
            um: He
        } = W;
        te && yl(te), Be.stop(), Ie && (Ie.active = !1, ce(Le, W, P, M)), He && Rn(He, P), Rn(() => {
            W.isUnmounted = !0
        }, P), P && P.pendingBranch && !P.isUnmounted && W.asyncDep && !W.asyncResolved && W.suspenseId === P.pendingId && (P.deps--, P.deps === 0 && P.resolve())
    }, Fe = (W, P, M, te = !1, Be = !1, Ie = 0) => {
        for (let Le = Ie; Le < W.length; Le++) ce(W[Le], P, M, te, Be)
    }, ie = W => W.shapeFlag & 6 ? ie(W.component.subTree) : W.shapeFlag & 128 ? W.suspense.next() : d(W.anchor || W.el), _e = (W, P, M) => {
        W == null ? P._vnode && ce(P._vnode, null, null, !0) : g(P._vnode || null, W, P, null, null, null, M), ng(), nc(), P._vnode = W
    }, De = {
        p: g,
        um: ce,
        m: ee,
        r: ve,
        mt: J,
        mc: I,
        pc: Y,
        pbc: U,
        n: ie,
        o: e
    };
    let $e, Te;
    return t && ([$e, Te] = t(De)), {
        render: _e,
        hydrate: $e,
        createApp: hF(_e, $e)
    }
}

function Fs({
    effect: e,
    update: t
}, n) {
    e.allowRecurse = t.allowRecurse = n
}

function F6(e, t, n = !1) {
    const r = e.children,
        A = t.children;
    if (mt(r) && mt(A))
        for (let i = 0; i < r.length; i++) {
            const s = r[i];
            let a = A[i];
            a.shapeFlag & 1 && !a.dynamicChildren && ((a.patchFlag <= 0 || a.patchFlag === 32) && (a = A[i] = ki(A[i]), a.el = s.el), n || F6(s, a)), a.type === rs && (a.el = s.el)
        }
}

function yF(e) {
    const t = e.slice(),
        n = [0];
    let r, A, i, s, a;
    const o = e.length;
    for (r = 0; r < o; r++) {
        const l = e[r];
        if (l !== 0) {
            if (A = n[n.length - 1], e[A] < l) {
                t[r] = A, n.push(r);
                continue
            }
            for (i = 0, s = n.length - 1; i < s;) a = i + s >> 1, e[n[a]] < l ? i = a + 1 : s = a;
            l < e[n[i]] && (i > 0 && (t[r] = n[i - 1]), n[i] = r)
        }
    }
    for (i = n.length, s = n[i - 1]; i-- > 0;) n[i] = s, s = t[s];
    return n
}
const CF = e => e.__isTeleport,
    xl = e => e && (e.disabled || e.disabled === ""),
    hg = e => typeof SVGElement < "u" && e instanceof SVGElement,
    y2 = (e, t) => {
        const n = e && e.to;
        return Fn(n) ? t ? t(n) : null : n
    },
    xF = {
        __isTeleport: !0,
        process(e, t, n, r, A, i, s, a, o, l) {
            const {
                mc: u,
                pc: f,
                pbc: d,
                o: {
                    insert: p,
                    querySelector: m,
                    createText: g,
                    createComment: y
                }
            } = l, w = xl(t.props);
            let {
                shapeFlag: B,
                children: x,
                dynamicChildren: C
            } = t;
            if (e == null) {
                const b = t.el = g(""),
                    F = t.anchor = g("");
                p(b, n, r), p(F, n, r);
                const T = t.target = y2(t.props, m),
                    I = t.targetAnchor = g("");
                T && (p(I, T), s = s || hg(T));
                const D = (U, Q) => {
                    B & 16 && u(x, U, Q, A, i, s, a, o)
                };
                w ? D(n, F) : T && D(T, I)
            } else {
                t.el = e.el;
                const b = t.anchor = e.anchor,
                    F = t.target = e.target,
                    T = t.targetAnchor = e.targetAnchor,
                    I = xl(e.props),
                    D = I ? n : F,
                    U = I ? b : T;
                if (s = s || hg(F), C ? (d(e.dynamicChildren, C, D, A, i, s, a), F6(e, t, !0)) : o || f(e, t, D, U, A, i, s, a, !1), w) I || X0(t, n, b, l, 1);
                else if ((t.props && t.props.to) !== (e.props && e.props.to)) {
                    const Q = t.target = y2(t.props, m);
                    Q && X0(t, Q, null, l, 0)
                } else I && X0(t, F, T, l, 1)
            }
            K8(t)
        },
        remove(e, t, n, r, {
            um: A,
            o: {
                remove: i
            }
        }, s) {
            const {
                shapeFlag: a,
                children: o,
                anchor: l,
                targetAnchor: u,
                target: f,
                props: d
            } = e;
            if (f && i(u), (s || !xl(d)) && (i(l), a & 16))
                for (let p = 0; p < o.length; p++) {
                    const m = o[p];
                    A(m, t, n, !0, !!m.dynamicChildren)
                }
        },
        move: X0,
        hydrate: EF
    };

function X0(e, t, n, {
    o: {
        insert: r
    },
    m: A
}, i = 2) {
    i === 0 && r(e.targetAnchor, t, n);
    const {
        el: s,
        anchor: a,
        shapeFlag: o,
        children: l,
        props: u
    } = e, f = i === 2;
    if (f && r(s, t, n), (!f || xl(u)) && o & 16)
        for (let d = 0; d < l.length; d++) A(l[d], t, n, 2);
    f && r(a, t, n)
}

function EF(e, t, n, r, A, i, {
    o: {
        nextSibling: s,
        parentNode: a,
        querySelector: o
    }
}, l) {
    const u = t.target = y2(t.props, o);
    if (u) {
        const f = u._lpa || u.firstChild;
        if (t.shapeFlag & 16)
            if (xl(t.props)) t.anchor = l(s(e), t, a(e), n, r, A, i), t.targetAnchor = f;
            else {
                t.anchor = s(e);
                let d = f;
                for (; d;)
                    if (d = s(d), d && d.nodeType === 8 && d.data === "teleport anchor") {
                        t.targetAnchor = d, u._lpa = t.targetAnchor && s(t.targetAnchor);
                        break
                    }
                l(f, t, u, n, r, A, i)
            }
        K8(t)
    }
    return t.anchor && s(t.anchor)
}
const $8 = xF;

function K8(e) {
    const t = e.ctx;
    if (t && t.ut) {
        let n = e.children[0].el;
        for (; n !== e.targetAnchor;) n.nodeType === 1 && n.setAttribute("data-v-owner", t.uid), n = n.nextSibling;
        t.ut()
    }
}
const rn = Symbol.for("v-fgt"),
    rs = Symbol.for("v-txt"),
    Jn = Symbol.for("v-cmt"),
    Gs = Symbol.for("v-stc"),
    El = [];
let pr = null;

function Zc(e = !1) {
    El.push(pr = e ? null : [])
}

function V8() {
    El.pop(), pr = El[El.length - 1] || null
}
let Zs = 1;

function C2(e) {
    Zs += e
}

function G8(e) {
    return e.dynamicChildren = Zs > 0 ? pr || za : null, V8(), Zs > 0 && pr && pr.push(e), e
}

function bF(e, t, n, r, A, i) {
    return G8(S6(e, t, n, r, A, i, !0))
}

function _6(e, t, n, r, A) {
    return G8(Z(e, t, n, r, A, !0))
}

function Ai(e) {
    return e ? e.__v_isVNode === !0 : !1
}

function tA(e, t) {
    return e.type === t.type && e.key === t.key
}

function FF(e) {}
const ef = "__vInternal",
    z8 = ({
        key: e
    }) => e ? ? null,
    $u = ({
        ref: e,
        ref_key: t,
        ref_for: n
    }) => (typeof e == "number" && (e = "" + e), e != null ? Fn(e) || Rt(e) || vt(e) ? {
        i: In,
        r: e,
        k: t,
        f: !!n
    } : e : null);

function S6(e, t = null, n = null, r = 0, A = null, i = e === rn ? 0 : 1, s = !1, a = !1) {
    const o = {
        __v_isVNode: !0,
        __v_skip: !0,
        type: e,
        props: t,
        key: t && z8(t),
        ref: t && $u(t),
        scopeId: jc,
        slotScopeIds: null,
        children: n,
        component: null,
        suspense: null,
        ssContent: null,
        ssFallback: null,
        dirs: null,
        transition: null,
        el: null,
        anchor: null,
        target: null,
        targetAnchor: null,
        staticCount: 0,
        shapeFlag: i,
        patchFlag: r,
        dynamicProps: A,
        dynamicChildren: null,
        appContext: null,
        ctx: In
    };
    return a ? (Q6(o, n), i & 128 && e.normalize(o)) : n && (o.shapeFlag |= Fn(n) ? 8 : 16), Zs > 0 && !s && pr && (o.patchFlag > 0 || i & 6) && o.patchFlag !== 32 && pr.push(o), o
}
const Z = _F;

function _F(e, t = null, n = null, r = 0, A = null, i = !1) {
    if ((!e || e === _8) && (e = Jn), Ai(e)) {
        const a = EA(e, t, !0);
        return n && Q6(a, n), Zs > 0 && !i && pr && (a.shapeFlag & 6 ? pr[pr.indexOf(e)] = a : pr.push(a)), a.patchFlag |= -2, a
    }
    if (LF(e) && (e = e.__vccOpts), t) {
        t = W8(t);
        let {
            class: a,
            style: o
        } = t;
        a && !Fn(a) && (t.class = d0(a)), hn(o) && (s6(o) && !mt(o) && (o = On({}, o)), t.style = f0(o))
    }
    const s = Fn(e) ? 1 : g8(e) ? 128 : CF(e) ? 64 : hn(e) ? 4 : vt(e) ? 2 : 0;
    return S6(e, t, n, r, A, s, i, !0)
}

function W8(e) {
    return e ? s6(e) || ef in e ? On({}, e) : e : null
}

function EA(e, t, n = !1) {
    const {
        props: r,
        ref: A,
        patchFlag: i,
        children: s
    } = e, a = t ? $t(r || {}, t) : r;
    return {
        __v_isVNode: !0,
        __v_skip: !0,
        type: e.type,
        props: a,
        key: a && z8(a),
        ref: t && t.ref ? n && A ? mt(A) ? A.concat($u(t)) : [A, $u(t)] : $u(t) : A,
        scopeId: e.scopeId,
        slotScopeIds: e.slotScopeIds,
        children: s,
        target: e.target,
        targetAnchor: e.targetAnchor,
        staticCount: e.staticCount,
        shapeFlag: e.shapeFlag,
        patchFlag: t && e.type !== rn ? i === -1 ? 16 : i | 16 : i,
        dynamicProps: e.dynamicProps,
        dynamicChildren: e.dynamicChildren,
        appContext: e.appContext,
        dirs: e.dirs,
        transition: e.transition,
        component: e.component,
        suspense: e.suspense,
        ssContent: e.ssContent && EA(e.ssContent),
        ssFallback: e.ssFallback && EA(e.ssFallback),
        el: e.el,
        anchor: e.anchor,
        ctx: e.ctx,
        ce: e.ce
    }
}

function tf(e = " ", t = 0) {
    return Z(rs, null, e, t)
}

function SF(e, t) {
    const n = Z(Gs, null, e);
    return n.staticCount = t, n
}

function QF(e = "", t = !1) {
    return t ? (Zc(), _6(Jn, null, e)) : Z(Jn, null, e)
}

function Sr(e) {
    return e == null || typeof e == "boolean" ? Z(Jn) : mt(e) ? Z(rn, null, e.slice()) : typeof e == "object" ? ki(e) : Z(rs, null, String(e))
}

function ki(e) {
    return e.el === null && e.patchFlag !== -1 || e.memo ? e : EA(e)
}

function Q6(e, t) {
    let n = 0;
    const {
        shapeFlag: r
    } = e;
    if (t == null) t = null;
    else if (mt(t)) n = 16;
    else if (typeof t == "object")
        if (r & 65) {
            const A = t.default;
            A && (A._c && (A._d = !1), Q6(e, A()), A._c && (A._d = !0));
            return
        } else {
            n = 32;
            const A = t._;
            !A && !(ef in t) ? t._ctx = In : A === 3 && In && (In.slots._ === 1 ? t._ = 1 : (t._ = 2, e.patchFlag |= 1024))
        }
    else vt(t) ? (t = {
        default: t,
        _ctx: In
    }, n = 32) : (t = String(t), r & 64 ? (n = 16, t = [tf(t)]) : n = 8);
    e.children = t, e.shapeFlag |= n
}

function $t(...e) {
    const t = {};
    for (let n = 0; n < e.length; n++) {
        const r = e[n];
        for (const A in r)
            if (A === "class") t.class !== r.class && (t.class = d0([t.class, r.class]));
            else if (A === "style") t.style = f0([t.style, r.style]);
        else if (Nc(A)) {
            const i = t[A],
                s = r[A];
            s && i !== s && !(mt(i) && i.includes(s)) && (t[A] = i ? [].concat(i, s) : s)
        } else A !== "" && (t[A] = r[A])
    }
    return t
}

function fr(e, t, n, r = null) {
    Qr(e, t, 7, [n, r])
}
const UF = I8();
let TF = 0;

function j8(e, t, n) {
    const r = e.type,
        A = (t ? t.appContext : e.appContext) || UF,
        i = {
            uid: TF++,
            vnode: e,
            type: r,
            parent: t,
            appContext: A,
            root: null,
            next: null,
            subTree: null,
            effect: null,
            update: null,
            scope: new n6(!0),
            render: null,
            proxy: null,
            exposed: null,
            exposeProxy: null,
            withProxy: null,
            provides: t ? t.provides : Object.create(A.provides),
            accessCache: null,
            renderCache: [],
            components: null,
            directives: null,
            propsOptions: O8(r, A),
            emitsOptions: p8(r, A),
            emit: null,
            emitted: null,
            propsDefaults: Wt,
            inheritAttrs: r.inheritAttrs,
            ctx: Wt,
            data: Wt,
            props: Wt,
            attrs: Wt,
            slots: Wt,
            refs: Wt,
            setupState: Wt,
            setupContext: null,
            attrsProxy: null,
            slotsProxy: null,
            suspense: n,
            suspenseId: n ? n.pendingId : 0,
            asyncDep: null,
            asyncResolved: !1,
            isMounted: !1,
            isUnmounted: !1,
            isDeactivated: !1,
            bc: null,
            c: null,
            bm: null,
            m: null,
            bu: null,
            u: null,
            um: null,
            bum: null,
            da: null,
            a: null,
            rtg: null,
            rtc: null,
            ec: null,
            sp: null
        };
    return i.ctx = {
        _: i
    }, i.root = t ? t.root : i, i.emit = mb.bind(null, i), e.ce && e.ce(i), i
}
let cn = null;
const zt = () => cn || In;
let U6, wa, pg = "__VUE_INSTANCE_SETTERS__";
(wa = h2()[pg]) || (wa = h2()[pg] = []), wa.push(e => cn = e), U6 = e => {
    wa.length > 1 ? wa.forEach(t => t(e)) : wa[0](e)
};
const As = e => {
        U6(e), e.scope.on()
    },
    Ji = () => {
        cn && cn.scope.off(), U6(null)
    };

function Y8(e) {
    return e.vnode.shapeFlag & 4
}
let eo = !1;

function X8(e, t = !1) {
    eo = t;
    const {
        props: n,
        children: r
    } = e.vnode, A = Y8(e);
    pF(e, n, A, t), mF(e, r);
    const i = A ? IF(e, t) : void 0;
    return eo = !1, i
}

function IF(e, t) {
    const n = e.type;
    e.accessCache = Object.create(null), e.proxy = c0(new Proxy(e.ctx, v2));
    const {
        setup: r
    } = n;
    if (r) {
        const A = e.setupContext = r.length > 1 ? q8(e) : null;
        As(e), wo();
        const i = XA(r, e, 0, [e.props, A]);
        if (yo(), Ji(), d6(i)) {
            if (i.then(Ji, Ji), t) return i.then(s => {
                x2(e, s, t)
            }).catch(s => {
                ia(s, e, 0)
            });
            e.asyncDep = i
        } else x2(e, i, t)
    } else J8(e, t)
}

function x2(e, t, n) {
    vt(t) ? e.type.__ssrInlineRender ? e.ssrRender = t : e.render = t : hn(t) && (e.setupState = l6(t)), J8(e, n)
}
let ic, E2;

function DF(e) {
    ic = e, E2 = t => {
        t.render._rc && (t.withProxy = new Proxy(t.ctx, Wb))
    }
}
const PF = () => !ic;

function J8(e, t, n) {
    const r = e.type;
    if (!e.render) {
        if (!t && ic && !r.render) {
            const A = r.template || E6(e).template;
            if (A) {
                const {
                    isCustomElement: i,
                    compilerOptions: s
                } = e.appContext.config, {
                    delimiters: a,
                    compilerOptions: o
                } = r, l = On(On({
                    isCustomElement: i,
                    delimiters: a
                }, s), o);
                r.render = ic(A, l)
            }
        }
        e.render = r.render || xA, E2 && E2(e)
    }
    As(e), wo(), oF(e), yo(), Ji()
}

function OF(e) {
    return e.attrsProxy || (e.attrsProxy = new Proxy(e.attrs, {
        get(t, n) {
            return mr(e, "get", "$attrs"), t[n]
        }
    }))
}

function q8(e) {
    const t = n => {
        e.exposed = n || {}
    };
    return {
        get attrs() {
            return OF(e)
        },
        slots: e.slots,
        emit: e.emit,
        expose: t
    }
}

function nf(e) {
    if (e.exposed) return e.exposeProxy || (e.exposeProxy = new Proxy(l6(c0(e.exposed)), {
        get(t, n) {
            if (n in t) return t[n];
            if (n in Cl) return Cl[n](e)
        },
        has(t, n) {
            return n in t || n in Cl
        }
    }))
}

function b2(e, t = !0) {
    return vt(e) ? e.displayName || e.name : e.name || t && e.__name
}

function LF(e) {
    return vt(e) && "__vccOpts" in e
}
const Oe = (e, t) => YE(e, t, eo);

function Tn(e, t, n) {
    const r = arguments.length;
    return r === 2 ? hn(t) && !mt(t) ? Ai(t) ? Z(e, null, [t]) : Z(e, t) : Z(e, null, t) : (r > 3 ? n = Array.prototype.slice.call(arguments, 2) : r === 3 && Ai(n) && (n = [n]), Z(e, t, n))
}
const Z8 = Symbol.for("v-scx"),
    e3 = () => fn(Z8);

function kF() {}

function HF(e, t, n, r) {
    const A = n[r];
    if (A && t3(A, e)) return A;
    const i = t();
    return i.memo = e.slice(), n[r] = i
}

function t3(e, t) {
    const n = e.memo;
    if (n.length != t.length) return !1;
    for (let r = 0; r < n.length; r++)
        if (f2(n[r], t[r])) return !1;
    return Zs > 0 && pr && pr.push(e), !0
}
const n3 = "3.3.4",
    MF = {
        createComponentInstance: j8,
        setupComponent: X8,
        renderComponentRoot: Nu,
        setCurrentRenderingInstance: Vl,
        isVNode: Ai,
        normalizeVNode: Sr
    },
    RF = MF,
    NF = null,
    $F = null;

function KF(e, t) {
    const n = Object.create(null),
        r = e.split(",");
    for (let A = 0; A < r.length; A++) n[r[A]] = !0;
    return t ? A => !!n[A.toLowerCase()] : A => !!n[A]
}
const v1 = {},
    VF = /^on[^a-z]/,
    GF = e => VF.test(e),
    zF = e => e.startsWith("onUpdate:"),
    g0 = Object.assign,
    Br = Array.isArray,
    v0 = e => A3(e) === "[object Set]",
    gg = e => A3(e) === "[object Date]",
    r3 = e => typeof e == "function",
    jl = e => typeof e == "string",
    vg = e => typeof e == "symbol",
    F2 = e => e !== null && typeof e == "object",
    WF = Object.prototype.toString,
    A3 = e => WF.call(e),
    T6 = e => {
        const t = Object.create(null);
        return n => t[n] || (t[n] = e(n))
    },
    jF = /-(\w)/g,
    m1 = T6(e => e.replace(jF, (t, n) => n ? n.toUpperCase() : "")),
    YF = /\B([A-Z])/g,
    Ri = T6(e => e.replace(YF, "-$1").toLowerCase()),
    XF = T6(e => e.charAt(0).toUpperCase() + e.slice(1)),
    JF = (e, t) => {
        for (let n = 0; n < e.length; n++) e[n](t)
    },
    _2 = e => {
        const t = parseFloat(e);
        return isNaN(t) ? e : t
    },
    S2 = e => {
        const t = jl(e) ? Number(e) : NaN;
        return isNaN(t) ? e : t
    },
    qF = "itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",
    ZF = KF(qF);

function i3(e) {
    return !!e || e === ""
}

function e_(e, t) {
    if (e.length !== t.length) return !1;
    let n = !0;
    for (let r = 0; n && r < e.length; r++) n = is(e[r], t[r]);
    return n
}

function is(e, t) {
    if (e === t) return !0;
    let n = gg(e),
        r = gg(t);
    if (n || r) return n && r ? e.getTime() === t.getTime() : !1;
    if (n = vg(e), r = vg(t), n || r) return e === t;
    if (n = Br(e), r = Br(t), n || r) return n && r ? e_(e, t) : !1;
    if (n = F2(e), r = F2(t), n || r) {
        if (!n || !r) return !1;
        const A = Object.keys(e).length,
            i = Object.keys(t).length;
        if (A !== i) return !1;
        for (const s in e) {
            const a = e.hasOwnProperty(s),
                o = t.hasOwnProperty(s);
            if (a && !o || !a && o || !is(e[s], t[s])) return !1
        }
    }
    return String(e) === String(t)
}

function rf(e, t) {
    return e.findIndex(n => is(n, t))
}
const t_ = "http://www.w3.org/2000/svg",
    Os = typeof document < "u" ? document : null,
    mg = Os && Os.createElement("template"),
    n_ = {
        insert: (e, t, n) => {
            t.insertBefore(e, n || null)
        },
        remove: e => {
            const t = e.parentNode;
            t && t.removeChild(e)
        },
        createElement: (e, t, n, r) => {
            const A = t ? Os.createElementNS(t_, e) : Os.createElement(e, n ? {
                is: n
            } : void 0);
            return e === "select" && r && r.multiple != null && A.setAttribute("multiple", r.multiple), A
        },
        createText: e => Os.createTextNode(e),
        createComment: e => Os.createComment(e),
        setText: (e, t) => {
            e.nodeValue = t
        },
        setElementText: (e, t) => {
            e.textContent = t
        },
        parentNode: e => e.parentNode,
        nextSibling: e => e.nextSibling,
        querySelector: e => Os.querySelector(e),
        setScopeId(e, t) {
            e.setAttribute(t, "")
        },
        insertStaticContent(e, t, n, r, A, i) {
            const s = n ? n.previousSibling : t.lastChild;
            if (A && (A === i || A.nextSibling))
                for (; t.insertBefore(A.cloneNode(!0), n), !(A === i || !(A = A.nextSibling)););
            else {
                mg.innerHTML = r ? `<svg>${e}</svg>` : e;
                const a = mg.content;
                if (r) {
                    const o = a.firstChild;
                    for (; o.firstChild;) a.appendChild(o.firstChild);
                    a.removeChild(o)
                }
                t.insertBefore(a, n)
            }
            return [s ? s.nextSibling : t.firstChild, n ? n.previousSibling : t.lastChild]
        }
    };

function r_(e, t, n) {
    const r = e._vtc;
    r && (t = (t ? [t, ...r] : [...r]).join(" ")), t == null ? e.removeAttribute("class") : n ? e.setAttribute("class", t) : e.className = t
}

function A_(e, t, n) {
    const r = e.style,
        A = jl(n);
    if (n && !A) {
        if (t && !jl(t))
            for (const i in t) n[i] == null && Q2(r, i, "");
        for (const i in n) Q2(r, i, n[i])
    } else {
        const i = r.display;
        A ? t !== n && (r.cssText = n) : t && e.removeAttribute("style"), "_vod" in e && (r.display = i)
    }
}
const Bg = /\s*!important$/;

function Q2(e, t, n) {
    if (Br(n)) n.forEach(r => Q2(e, t, r));
    else if (n == null && (n = ""), t.startsWith("--")) e.setProperty(t, n);
    else {
        const r = i_(e, t);
        Bg.test(n) ? e.setProperty(Ri(r), n.replace(Bg, ""), "important") : e[r] = n
    }
}
const wg = ["Webkit", "Moz", "ms"],
    B1 = {};

function i_(e, t) {
    const n = B1[t];
    if (n) return n;
    let r = sA(t);
    if (r !== "filter" && r in e) return B1[t] = r;
    r = XF(r);
    for (let A = 0; A < wg.length; A++) {
        const i = wg[A] + r;
        if (i in e) return B1[t] = i
    }
    return t
}
const yg = "http://www.w3.org/1999/xlink";

function s_(e, t, n, r, A) {
    if (r && t.startsWith("xlink:")) n == null ? e.removeAttributeNS(yg, t.slice(6, t.length)) : e.setAttributeNS(yg, t, n);
    else {
        const i = ZF(t);
        n == null || i && !i3(n) ? e.removeAttribute(t) : e.setAttribute(t, i ? "" : n)
    }
}

function a_(e, t, n, r, A, i, s) {
    if (t === "innerHTML" || t === "textContent") {
        r && s(r, A, i), e[t] = n ? ? "";
        return
    }
    const a = e.tagName;
    if (t === "value" && a !== "PROGRESS" && !a.includes("-")) {
        e._value = n;
        const l = a === "OPTION" ? e.getAttribute("value") : e.value,
            u = n ? ? "";
        l !== u && (e.value = u), n == null && e.removeAttribute(t);
        return
    }
    let o = !1;
    if (n === "" || n == null) {
        const l = typeof e[t];
        l === "boolean" ? n = i3(n) : n == null && l === "string" ? (n = "", o = !0) : l === "number" && (n = 0, o = !0)
    }
    try {
        e[t] = n
    } catch {}
    o && e.removeAttribute(t)
}

function zA(e, t, n, r) {
    e.addEventListener(t, n, r)
}

function o_(e, t, n, r) {
    e.removeEventListener(t, n, r)
}

function l_(e, t, n, r, A = null) {
    const i = e._vei || (e._vei = {}),
        s = i[t];
    if (r && s) s.value = r;
    else {
        const [a, o] = u_(t);
        if (r) {
            const l = i[t] = d_(r, A);
            zA(e, a, l, o)
        } else s && (o_(e, a, s, o), i[t] = void 0)
    }
}
const Cg = /(?:Once|Passive|Capture)$/;

function u_(e) {
    let t;
    if (Cg.test(e)) {
        t = {};
        let r;
        for (; r = e.match(Cg);) e = e.slice(0, e.length - r[0].length), t[r[0].toLowerCase()] = !0
    }
    return [e[2] === ":" ? e.slice(3) : Ri(e.slice(2)), t]
}
let w1 = 0;
const c_ = Promise.resolve(),
    f_ = () => w1 || (c_.then(() => w1 = 0), w1 = Date.now());

function d_(e, t) {
    const n = r => {
        if (!r._vts) r._vts = Date.now();
        else if (r._vts <= n.attached) return;
        Qr(h_(r, n.value), t, 5, [r])
    };
    return n.value = e, n.attached = f_(), n
}

function h_(e, t) {
    if (Br(t)) {
        const n = e.stopImmediatePropagation;
        return e.stopImmediatePropagation = () => {
            n.call(e), e._stopped = !0
        }, t.map(r => A => !A._stopped && r && r(A))
    } else return t
}
const xg = /^on[a-z]/,
    p_ = (e, t, n, r, A = !1, i, s, a, o) => {
        t === "class" ? r_(e, r, A) : t === "style" ? A_(e, n, r) : GF(t) ? zF(t) || l_(e, t, n, r, s) : (t[0] === "." ? (t = t.slice(1), !0) : t[0] === "^" ? (t = t.slice(1), !1) : g_(e, t, r, A)) ? a_(e, t, r, i, s, a, o) : (t === "true-value" ? e._trueValue = r : t === "false-value" && (e._falseValue = r), s_(e, t, r, A))
    };

function g_(e, t, n, r) {
    return r ? !!(t === "innerHTML" || t === "textContent" || t in e && xg.test(t) && r3(n)) : t === "spellcheck" || t === "draggable" || t === "translate" || t === "form" || t === "list" && e.tagName === "INPUT" || t === "type" && e.tagName === "TEXTAREA" || xg.test(t) && jl(n) ? !1 : t in e
}

function s3(e, t) {
    const n = tt(e);
    class r extends Af {
        constructor(i) {
            super(n, i, t)
        }
    }
    return r.def = n, r
}
const v_ = e => s3(e, C3),
    m_ = typeof HTMLElement < "u" ? HTMLElement : class {};
class Af extends m_ {
    constructor(t, n = {}, r) {
        super(), this._def = t, this._props = n, this._instance = null, this._connected = !1, this._resolved = !1, this._numberProps = null, this.shadowRoot && r ? r(this._createVNode(), this.shadowRoot) : (this.attachShadow({
            mode: "open"
        }), this._def.__asyncLoader || this._resolveProps(this._def))
    }
    connectedCallback() {
        this._connected = !0, this._instance || (this._resolved ? this._update() : this._resolveDef())
    }
    disconnectedCallback() {
        this._connected = !1, yt(() => {
            this._connected || (I2(null, this.shadowRoot), this._instance = null)
        })
    }
    _resolveDef() {
        this._resolved = !0;
        for (let r = 0; r < this.attributes.length; r++) this._setAttr(this.attributes[r].name);
        new MutationObserver(r => {
            for (const A of r) this._setAttr(A.attributeName)
        }).observe(this, {
            attributes: !0
        });
        const t = (r, A = !1) => {
                const {
                    props: i,
                    styles: s
                } = r;
                let a;
                if (i && !Br(i))
                    for (const o in i) {
                        const l = i[o];
                        (l === Number || l && l.type === Number) && (o in this._props && (this._props[o] = S2(this._props[o])), (a || (a = Object.create(null)))[m1(o)] = !0)
                    }
                this._numberProps = a, A && this._resolveProps(r), this._applyStyles(s), this._update()
            },
            n = this._def.__asyncLoader;
        n ? n().then(r => t(r, !0)) : t(this._def)
    }
    _resolveProps(t) {
        const {
            props: n
        } = t, r = Br(n) ? n : Object.keys(n || {});
        for (const A of Object.keys(this)) A[0] !== "_" && r.includes(A) && this._setProp(A, this[A], !0, !1);
        for (const A of r.map(m1)) Object.defineProperty(this, A, {
            get() {
                return this._getProp(A)
            },
            set(i) {
                this._setProp(A, i)
            }
        })
    }
    _setAttr(t) {
        let n = this.getAttribute(t);
        const r = m1(t);
        this._numberProps && this._numberProps[r] && (n = S2(n)), this._setProp(r, n, !1)
    }
    _getProp(t) {
        return this._props[t]
    }
    _setProp(t, n, r = !0, A = !0) {
        n !== this._props[t] && (this._props[t] = n, A && this._instance && this._update(), r && (n === !0 ? this.setAttribute(Ri(t), "") : typeof n == "string" || typeof n == "number" ? this.setAttribute(Ri(t), n + "") : n || this.removeAttribute(Ri(t))))
    }
    _update() {
        I2(this._createVNode(), this.shadowRoot)
    }
    _createVNode() {
        const t = Z(this._def, g0({}, this._props));
        return this._instance || (t.ce = n => {
            this._instance = n, n.isCE = !0;
            const r = (i, s) => {
                this.dispatchEvent(new CustomEvent(i, {
                    detail: s
                }))
            };
            n.emit = (i, ...s) => {
                r(i, s), Ri(i) !== i && r(Ri(i), s)
            };
            let A = this;
            for (; A = A && (A.parentNode || A.host);)
                if (A instanceof Af) {
                    n.parent = A._instance, n.provides = A._instance.provides;
                    break
                }
        }), t
    }
    _applyStyles(t) {
        t && t.forEach(n => {
            const r = document.createElement("style");
            r.textContent = n, this.shadowRoot.appendChild(r)
        })
    }
}

function B_(e = "$style") {
    {
        const t = zt();
        if (!t) return v1;
        const n = t.type.__cssModules;
        if (!n) return v1;
        const r = n[e];
        return r || v1
    }
}

function w_(e) {
    const t = zt();
    if (!t) return;
    const n = t.ut = (A = e(t.proxy)) => {
            Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(i => T2(i, A))
        },
        r = () => {
            const A = e(t.proxy);
            U2(t.subTree, A), n(A)
        };
    m8(r), qt(() => {
        const A = new MutationObserver(r);
        A.observe(t.subTree.el.parentNode, {
            childList: !0
        }), fi(() => A.disconnect())
    })
}

function U2(e, t) {
    if (e.shapeFlag & 128) {
        const n = e.suspense;
        e = n.activeBranch, n.pendingBranch && !n.isHydrating && n.effects.push(() => {
            U2(n.activeBranch, t)
        })
    }
    for (; e.component;) e = e.component.subTree;
    if (e.shapeFlag & 1 && e.el) T2(e.el, t);
    else if (e.type === rn) e.children.forEach(n => U2(n, t));
    else if (e.type === Gs) {
        let {
            el: n,
            anchor: r
        } = e;
        for (; n && (T2(n, t), n !== r);) n = n.nextSibling
    }
}

function T2(e, t) {
    if (e.nodeType === 1) {
        const n = e.style;
        for (const r in t) n.setProperty(`--${r}`, t[r])
    }
}
const _i = "transition",
    zo = "animation",
    m0 = (e, {
        slots: t
    }) => Tn(w8, o3(e), t);
m0.displayName = "Transition";
const a3 = {
        name: String,
        type: String,
        css: {
            type: Boolean,
            default: !0
        },
        duration: [String, Number, Object],
        enterFromClass: String,
        enterActiveClass: String,
        enterToClass: String,
        appearFromClass: String,
        appearActiveClass: String,
        appearToClass: String,
        leaveFromClass: String,
        leaveActiveClass: String,
        leaveToClass: String
    },
    y_ = m0.props = g0({}, w6, a3),
    _s = (e, t = []) => {
        Br(e) ? e.forEach(n => n(...t)) : e && e(...t)
    },
    Eg = e => e ? Br(e) ? e.some(t => t.length > 1) : e.length > 1 : !1;

function o3(e) {
    const t = {};
    for (const O in e) O in a3 || (t[O] = e[O]);
    if (e.css === !1) return t;
    const {
        name: n = "v",
        type: r,
        duration: A,
        enterFromClass: i = `${n}-enter-from`,
        enterActiveClass: s = `${n}-enter-active`,
        enterToClass: a = `${n}-enter-to`,
        appearFromClass: o = i,
        appearActiveClass: l = s,
        appearToClass: u = a,
        leaveFromClass: f = `${n}-leave-from`,
        leaveActiveClass: d = `${n}-leave-active`,
        leaveToClass: p = `${n}-leave-to`
    } = e, m = C_(A), g = m && m[0], y = m && m[1], {
        onBeforeEnter: w,
        onEnter: B,
        onEnterCancelled: x,
        onLeave: C,
        onLeaveCancelled: b,
        onBeforeAppear: F = w,
        onAppear: T = B,
        onAppearCancelled: I = x
    } = t, D = (O, N, J) => {
        Di(O, N ? u : a), Di(O, N ? l : s), J && J()
    }, U = (O, N) => {
        O._isLeaving = !1, Di(O, f), Di(O, p), Di(O, d), N && N()
    }, Q = O => (N, J) => {
        const j = O ? T : B,
            V = () => D(N, O, J);
        _s(j, [N, V]), bg(() => {
            Di(N, O ? o : i), KA(N, O ? u : a), Eg(j) || Fg(N, r, g, V)
        })
    };
    return g0(t, {
        onBeforeEnter(O) {
            _s(w, [O]), KA(O, i), KA(O, s)
        },
        onBeforeAppear(O) {
            _s(F, [O]), KA(O, o), KA(O, l)
        },
        onEnter: Q(!1),
        onAppear: Q(!0),
        onLeave(O, N) {
            O._isLeaving = !0;
            const J = () => U(O, N);
            KA(O, f), u3(), KA(O, d), bg(() => {
                O._isLeaving && (Di(O, f), KA(O, p), Eg(C) || Fg(O, r, y, J))
            }), _s(C, [O, J])
        },
        onEnterCancelled(O) {
            D(O, !1), _s(x, [O])
        },
        onAppearCancelled(O) {
            D(O, !0), _s(I, [O])
        },
        onLeaveCancelled(O) {
            U(O), _s(b, [O])
        }
    })
}

function C_(e) {
    if (e == null) return null;
    if (F2(e)) return [y1(e.enter), y1(e.leave)]; {
        const t = y1(e);
        return [t, t]
    }
}

function y1(e) {
    return S2(e)
}

function KA(e, t) {
    t.split(/\s+/).forEach(n => n && e.classList.add(n)), (e._vtc || (e._vtc = new Set)).add(t)
}

function Di(e, t) {
    t.split(/\s+/).forEach(r => r && e.classList.remove(r));
    const {
        _vtc: n
    } = e;
    n && (n.delete(t), n.size || (e._vtc = void 0))
}

function bg(e) {
    requestAnimationFrame(() => {
        requestAnimationFrame(e)
    })
}
let x_ = 0;

function Fg(e, t, n, r) {
    const A = e._endId = ++x_,
        i = () => {
            A === e._endId && r()
        };
    if (n) return setTimeout(i, n);
    const {
        type: s,
        timeout: a,
        propCount: o
    } = l3(e, t);
    if (!s) return r();
    const l = s + "end";
    let u = 0;
    const f = () => {
            e.removeEventListener(l, d), i()
        },
        d = p => {
            p.target === e && ++u >= o && f()
        };
    setTimeout(() => {
        u < o && f()
    }, a + 1), e.addEventListener(l, d)
}

function l3(e, t) {
    const n = window.getComputedStyle(e),
        r = m => (n[m] || "").split(", "),
        A = r(`${_i}Delay`),
        i = r(`${_i}Duration`),
        s = _g(A, i),
        a = r(`${zo}Delay`),
        o = r(`${zo}Duration`),
        l = _g(a, o);
    let u = null,
        f = 0,
        d = 0;
    t === _i ? s > 0 && (u = _i, f = s, d = i.length) : t === zo ? l > 0 && (u = zo, f = l, d = o.length) : (f = Math.max(s, l), u = f > 0 ? s > l ? _i : zo : null, d = u ? u === _i ? i.length : o.length : 0);
    const p = u === _i && /\b(transform|all)(,|$)/.test(r(`${_i}Property`).toString());
    return {
        type: u,
        timeout: f,
        propCount: d,
        hasTransform: p
    }
}

function _g(e, t) {
    for (; e.length < t.length;) e = e.concat(e);
    return Math.max(...t.map((n, r) => Sg(n) + Sg(e[r])))
}

function Sg(e) {
    return Number(e.slice(0, -1).replace(",", ".")) * 1e3
}

function u3() {
    return document.body.offsetHeight
}
const c3 = new WeakMap,
    f3 = new WeakMap,
    d3 = {
        name: "TransitionGroup",
        props: g0({}, y_, {
            tag: String,
            moveClass: String
        }),
        setup(e, {
            slots: t
        }) {
            const n = zt(),
                r = B6();
            let A, i;
            return sa(() => {
                if (!A.length) return;
                const s = e.moveClass || `${e.name||"v"}-move`;
                if (!Q_(A[0].el, n.vnode.el, s)) return;
                A.forEach(F_), A.forEach(__);
                const a = A.filter(S_);
                u3(), a.forEach(o => {
                    const l = o.el,
                        u = l.style;
                    KA(l, s), u.transform = u.webkitTransform = u.transitionDuration = "";
                    const f = l._moveCb = d => {
                        d && d.target !== l || (!d || /transform$/.test(d.propertyName)) && (l.removeEventListener("transitionend", f), l._moveCb = null, Di(l, s))
                    };
                    l.addEventListener("transitionend", f)
                })
            }), () => {
                const s = Et(e),
                    a = o3(s);
                let o = s.tag || rn;
                A = i, i = t.default ? Xc(t.default()) : [];
                for (let l = 0; l < i.length; l++) {
                    const u = i[l];
                    u.key != null && qs(u, Za(u, a, r, n))
                }
                if (A)
                    for (let l = 0; l < A.length; l++) {
                        const u = A[l];
                        qs(u, Za(u, a, r, n)), c3.set(u, u.el.getBoundingClientRect())
                    }
                return Z(o, null, i)
            }
        }
    },
    E_ = e => delete e.mode;
d3.props;
const b_ = d3;

function F_(e) {
    const t = e.el;
    t._moveCb && t._moveCb(), t._enterCb && t._enterCb()
}

function __(e) {
    f3.set(e, e.el.getBoundingClientRect())
}

function S_(e) {
    const t = c3.get(e),
        n = f3.get(e),
        r = t.left - n.left,
        A = t.top - n.top;
    if (r || A) {
        const i = e.el.style;
        return i.transform = i.webkitTransform = `translate(${r}px,${A}px)`, i.transitionDuration = "0s", e
    }
}

function Q_(e, t, n) {
    const r = e.cloneNode();
    e._vtc && e._vtc.forEach(s => {
        s.split(/\s+/).forEach(a => a && r.classList.remove(a))
    }), n.split(/\s+/).forEach(s => s && r.classList.add(s)), r.style.display = "none";
    const A = t.nodeType === 1 ? t : t.parentNode;
    A.appendChild(r);
    const {
        hasTransform: i
    } = l3(r);
    return A.removeChild(r), i
}
const ss = e => {
    const t = e.props["onUpdate:modelValue"] || !1;
    return Br(t) ? n => JF(t, n) : t
};

function U_(e) {
    e.target.composing = !0
}

function Qg(e) {
    const t = e.target;
    t.composing && (t.composing = !1, t.dispatchEvent(new Event("input")))
}
const sc = {
        created(e, {
            modifiers: {
                lazy: t,
                trim: n,
                number: r
            }
        }, A) {
            e._assign = ss(A);
            const i = r || A.props && A.props.type === "number";
            zA(e, t ? "change" : "input", s => {
                if (s.target.composing) return;
                let a = e.value;
                n && (a = a.trim()), i && (a = _2(a)), e._assign(a)
            }), n && zA(e, "change", () => {
                e.value = e.value.trim()
            }), t || (zA(e, "compositionstart", U_), zA(e, "compositionend", Qg), zA(e, "change", Qg))
        },
        mounted(e, {
            value: t
        }) {
            e.value = t ? ? ""
        },
        beforeUpdate(e, {
            value: t,
            modifiers: {
                lazy: n,
                trim: r,
                number: A
            }
        }, i) {
            if (e._assign = ss(i), e.composing || document.activeElement === e && e.type !== "range" && (n || r && e.value.trim() === t || (A || e.type === "number") && _2(e.value) === t)) return;
            const s = t ? ? "";
            e.value !== s && (e.value = s)
        }
    },
    I6 = {
        deep: !0,
        created(e, t, n) {
            e._assign = ss(n), zA(e, "change", () => {
                const r = e._modelValue,
                    A = to(e),
                    i = e.checked,
                    s = e._assign;
                if (Br(r)) {
                    const a = rf(r, A),
                        o = a !== -1;
                    if (i && !o) s(r.concat(A));
                    else if (!i && o) {
                        const l = [...r];
                        l.splice(a, 1), s(l)
                    }
                } else if (v0(r)) {
                    const a = new Set(r);
                    i ? a.add(A) : a.delete(A), s(a)
                } else s(p3(e, i))
            })
        },
        mounted: Ug,
        beforeUpdate(e, t, n) {
            e._assign = ss(n), Ug(e, t, n)
        }
    };

function Ug(e, {
    value: t,
    oldValue: n
}, r) {
    e._modelValue = t, Br(t) ? e.checked = rf(t, r.props.value) > -1 : v0(t) ? e.checked = t.has(r.props.value) : t !== n && (e.checked = is(t, p3(e, !0)))
}
const D6 = {
        created(e, {
            value: t
        }, n) {
            e.checked = is(t, n.props.value), e._assign = ss(n), zA(e, "change", () => {
                e._assign(to(e))
            })
        },
        beforeUpdate(e, {
            value: t,
            oldValue: n
        }, r) {
            e._assign = ss(r), t !== n && (e.checked = is(t, r.props.value))
        }
    },
    h3 = {
        deep: !0,
        created(e, {
            value: t,
            modifiers: {
                number: n
            }
        }, r) {
            const A = v0(t);
            zA(e, "change", () => {
                const i = Array.prototype.filter.call(e.options, s => s.selected).map(s => n ? _2(to(s)) : to(s));
                e._assign(e.multiple ? A ? new Set(i) : i : i[0])
            }), e._assign = ss(r)
        },
        mounted(e, {
            value: t
        }) {
            Tg(e, t)
        },
        beforeUpdate(e, t, n) {
            e._assign = ss(n)
        },
        updated(e, {
            value: t
        }) {
            Tg(e, t)
        }
    };

function Tg(e, t) {
    const n = e.multiple;
    if (!(n && !Br(t) && !v0(t))) {
        for (let r = 0, A = e.options.length; r < A; r++) {
            const i = e.options[r],
                s = to(i);
            if (n) Br(t) ? i.selected = rf(t, s) > -1 : i.selected = t.has(s);
            else if (is(to(i), t)) {
                e.selectedIndex !== r && (e.selectedIndex = r);
                return
            }
        }!n && e.selectedIndex !== -1 && (e.selectedIndex = -1)
    }
}

function to(e) {
    return "_value" in e ? e._value : e.value
}

function p3(e, t) {
    const n = t ? "_trueValue" : "_falseValue";
    return n in e ? e[n] : t
}
const g3 = {
    created(e, t, n) {
        J0(e, t, n, null, "created")
    },
    mounted(e, t, n) {
        J0(e, t, n, null, "mounted")
    },
    beforeUpdate(e, t, n, r) {
        J0(e, t, n, r, "beforeUpdate")
    },
    updated(e, t, n, r) {
        J0(e, t, n, r, "updated")
    }
};

function v3(e, t) {
    switch (e) {
        case "SELECT":
            return h3;
        case "TEXTAREA":
            return sc;
        default:
            switch (t) {
                case "checkbox":
                    return I6;
                case "radio":
                    return D6;
                default:
                    return sc
            }
    }
}

function J0(e, t, n, r, A) {
    const s = v3(e.tagName, n.props && n.props.type)[A];
    s && s(e, t, n, r)
}

function T_() {
    sc.getSSRProps = ({
        value: e
    }) => ({
        value: e
    }), D6.getSSRProps = ({
        value: e
    }, t) => {
        if (t.props && is(t.props.value, e)) return {
            checked: !0
        }
    }, I6.getSSRProps = ({
        value: e
    }, t) => {
        if (Br(e)) {
            if (t.props && rf(e, t.props.value) > -1) return {
                checked: !0
            }
        } else if (v0(e)) {
            if (t.props && e.has(t.props.value)) return {
                checked: !0
            }
        } else if (e) return {
            checked: !0
        }
    }, g3.getSSRProps = (e, t) => {
        if (typeof t.type != "string") return;
        const n = v3(t.type.toUpperCase(), t.props && t.props.type);
        if (n.getSSRProps) return n.getSSRProps(e, t)
    }
}
const I_ = ["ctrl", "shift", "alt", "meta"],
    D_ = {
        stop: e => e.stopPropagation(),
        prevent: e => e.preventDefault(),
        self: e => e.target !== e.currentTarget,
        ctrl: e => !e.ctrlKey,
        shift: e => !e.shiftKey,
        alt: e => !e.altKey,
        meta: e => !e.metaKey,
        left: e => "button" in e && e.button !== 0,
        middle: e => "button" in e && e.button !== 1,
        right: e => "button" in e && e.button !== 2,
        exact: (e, t) => I_.some(n => e[`${n}Key`] && !t.includes(n))
    },
    P_ = (e, t) => (n, ...r) => {
        for (let A = 0; A < t.length; A++) {
            const i = D_[t[A]];
            if (i && i(n, t)) return
        }
        return e(n, ...r)
    },
    O_ = {
        esc: "escape",
        space: " ",
        up: "arrow-up",
        left: "arrow-left",
        right: "arrow-right",
        down: "arrow-down",
        delete: "backspace"
    },
    m3 = (e, t) => n => {
        if (!("key" in n)) return;
        const r = Ri(n.key);
        if (t.some(A => A === r || O_[A] === r)) return e(n)
    },
    as = {
        beforeMount(e, {
            value: t
        }, {
            transition: n
        }) {
            e._vod = e.style.display === "none" ? "" : e.style.display, n && t ? n.beforeEnter(e) : Wo(e, t)
        },
        mounted(e, {
            value: t
        }, {
            transition: n
        }) {
            n && t && n.enter(e)
        },
        updated(e, {
            value: t,
            oldValue: n
        }, {
            transition: r
        }) {
            !t != !n && (r ? t ? (r.beforeEnter(e), Wo(e, !0), r.enter(e)) : r.leave(e, () => {
                Wo(e, !1)
            }) : Wo(e, t))
        },
        beforeUnmount(e, {
            value: t
        }) {
            Wo(e, t)
        }
    };

function Wo(e, t) {
    e.style.display = t ? e._vod : "none"
}

function L_() {
    as.getSSRProps = ({
        value: e
    }) => {
        if (!e) return {
            style: {
                display: "none"
            }
        }
    }
}
const B3 = g0({
    patchProp: p_
}, n_);
let bl, Ig = !1;

function w3() {
    return bl || (bl = M8(B3))
}

function y3() {
    return bl = Ig ? bl : R8(B3), Ig = !0, bl
}
const I2 = (...e) => {
        w3().render(...e)
    },
    C3 = (...e) => {
        y3().hydrate(...e)
    },
    x3 = (...e) => {
        const t = w3().createApp(...e),
            {
                mount: n
            } = t;
        return t.mount = r => {
            const A = E3(r);
            if (!A) return;
            const i = t._component;
            !r3(i) && !i.render && !i.template && (i.template = A.innerHTML), A.innerHTML = "";
            const s = n(A, !1, A instanceof SVGElement);
            return A instanceof Element && (A.removeAttribute("v-cloak"), A.setAttribute("data-v-app", "")), s
        }, t
    },
    k_ = (...e) => {
        const t = y3().createApp(...e),
            {
                mount: n
            } = t;
        return t.mount = r => {
            const A = E3(r);
            if (A) return n(A, !0, A instanceof SVGElement)
        }, t
    };

function E3(e) {
    return jl(e) ? document.querySelector(e) : e
}
let Dg = !1;
const H_ = () => {
        Dg || (Dg = !0, T_(), L_())
    },
    M_ = () => {},
    R_ = Object.freeze(Object.defineProperty({
        __proto__: null,
        BaseTransition: w8,
        BaseTransitionPropsValidators: w6,
        Comment: Jn,
        EffectScope: n6,
        Fragment: rn,
        KeepAlive: Hb,
        ReactiveEffect: u0,
        Static: Gs,
        Suspense: _b,
        Teleport: $8,
        Text: rs,
        Transition: m0,
        TransitionGroup: b_,
        VueElement: Af,
        assertNumber: db,
        callWithAsyncErrorHandling: Qr,
        callWithErrorHandling: XA,
        camelize: sA,
        capitalize: Gc,
        cloneVNode: EA,
        compatUtils: $F,
        compile: M_,
        computed: Oe,
        createApp: x3,
        createBlock: _6,
        createCommentVNode: QF,
        createElementBlock: bF,
        createElementVNode: S6,
        createHydrationRenderer: R8,
        createPropsRestProxy: sF,
        createRenderer: M8,
        createSSRApp: k_,
        createSlots: Vb,
        createStaticVNode: SF,
        createTextVNode: tf,
        createVNode: Z,
        customRef: u6,
        defineAsyncComponent: Lb,
        defineComponent: tt,
        defineCustomElement: s3,
        defineEmits: Yb,
        defineExpose: Xb,
        defineModel: Zb,
        defineOptions: Jb,
        defineProps: jb,
        defineSSRCustomElement: v_,
        defineSlots: qb,
        get devtools() {
            return ka
        },
        effect: fE,
        effectScope: Pc,
        getCurrentInstance: zt,
        getCurrentScope: l0,
        getTransitionRawChildren: Xc,
        guardReactiveProps: W8,
        h: Tn,
        handleError: ia,
        hasInjectionContext: D8,
        hydrate: C3,
        initCustomFormatter: kF,
        initDirectivesForSSR: H_,
        inject: fn,
        isMemoSame: t3,
        isProxy: s6,
        isReactive: YA,
        isReadonly: Js,
        isRef: Rt,
        isRuntimeOnly: PF,
        isShallow: Rl,
        isVNode: Ai,
        markRaw: c0,
        mergeDefaults: AF,
        mergeModels: iF,
        mergeProps: $t,
        nextTick: yt,
        normalizeClass: d0,
        normalizeProps: ub,
        normalizeStyle: f0,
        onActivated: fs,
        onBeforeMount: y6,
        onBeforeUnmount: Tr,
        onBeforeUpdate: qc,
        onDeactivated: ui,
        onErrorCaptured: F8,
        onMounted: qt,
        onRenderTracked: b8,
        onRenderTriggered: E8,
        onScopeDispose: r6,
        onServerPrefetch: x8,
        onUnmounted: fi,
        onUpdated: sa,
        openBlock: Zc,
        popScopeId: wb,
        provide: AA,
        proxyRefs: l6,
        pushScopeId: Bb,
        queuePostFlushCb: p6,
        reactive: Nt,
        readonly: Co,
        ref: Ue,
        registerRuntimeCompiler: DF,
        render: I2,
        renderList: Kb,
        renderSlot: Gb,
        resolveComponent: Nb,
        resolveDirective: S8,
        resolveDynamicComponent: $b,
        resolveFilter: NF,
        resolveTransitionHooks: Za,
        setBlockTracking: C2,
        setDevtoolsHook: h8,
        setTransitionHooks: qs,
        shallowReactive: e8,
        shallowReadonly: RE,
        shallowRef: Rc,
        ssrContextKey: Z8,
        ssrUtils: RF,
        stop: dE,
        toDisplayString: cb,
        toHandlerKey: wl,
        toHandlers: zb,
        toRaw: Et,
        toRef: n8,
        toRefs: c6,
        toValue: KE,
        transformVNodeArgs: FF,
        triggerRef: $E,
        unref: gr,
        useAttrs: nF,
        useCssModule: B_,
        useCssVars: w_,
        useModel: rF,
        useSSRContext: e3,
        useSlots: tF,
        useTransitionState: B6,
        vModelCheckbox: I6,
        vModelDynamic: g3,
        vModelRadio: D6,
        vModelSelect: h3,
        vModelText: sc,
        vShow: as,
        version: n3,
        warn: fb,
        watch: je,
        watchEffect: Yc,
        watchPostEffect: m8,
        watchSyncEffect: Db,
        withAsyncContext: aF,
        withCtx: g6,
        withDefaults: eF,
        withDirectives: ns,
        withKeys: m3,
        withMemo: HF,
        withModifiers: P_,
        withScopeId: yb
    }, Symbol.toStringTag, {
        value: "Module"
    }));
var N_ = !1;
/*!
 * pinia v2.1.7
 * (c) 2023 Eduardo San Martin Morote
 * @license MIT
 */
let b3;
const sf = e => b3 = e,
    F3 = Symbol();

function D2(e) {
    return e && typeof e == "object" && Object.prototype.toString.call(e) === "[object Object]" && typeof e.toJSON != "function"
}
var Fl;
(function(e) {
    e.direct = "direct", e.patchObject = "patch object", e.patchFunction = "patch function"
})(Fl || (Fl = {}));

function $te() {
    const e = Pc(!0),
        t = e.run(() => Ue({}));
    let n = [],
        r = [];
    const A = c0({
        install(i) {
            sf(A), A._a = i, i.provide(F3, A), i.config.globalProperties.$pinia = A, r.forEach(s => n.push(s)), r = []
        },
        use(i) {
            return !this._a && !N_ ? r.push(i) : n.push(i), this
        },
        _p: n,
        _a: null,
        _e: e,
        _s: new Map,
        state: t
    });
    return A
}
const _3 = () => {};

function Pg(e, t, n, r = _3) {
    e.push(t);
    const A = () => {
        const i = e.indexOf(t);
        i > -1 && (e.splice(i, 1), r())
    };
    return !n && l0() && r6(A), A
}

function ya(e, ...t) {
    e.slice().forEach(n => {
        n(...t)
    })
}
const $_ = e => e();

function P2(e, t) {
    e instanceof Map && t instanceof Map && t.forEach((n, r) => e.set(r, n)), e instanceof Set && t instanceof Set && t.forEach(e.add, e);
    for (const n in t) {
        if (!t.hasOwnProperty(n)) continue;
        const r = t[n],
            A = e[n];
        D2(A) && D2(r) && e.hasOwnProperty(n) && !Rt(r) && !YA(r) ? e[n] = P2(A, r) : e[n] = r
    }
    return e
}
const K_ = Symbol();

function V_(e) {
    return !D2(e) || !e.hasOwnProperty(K_)
}
const {
    assign: Pi
} = Object;

function G_(e) {
    return !!(Rt(e) && e.effect)
}

function z_(e, t, n, r) {
    const {
        state: A,
        actions: i,
        getters: s
    } = t, a = n.state.value[e];
    let o;

    function l() {
        a || (n.state.value[e] = A ? A() : {});
        const u = c6(n.state.value[e]);
        return Pi(u, i, Object.keys(s || {}).reduce((f, d) => (f[d] = c0(Oe(() => {
            sf(n);
            const p = n._s.get(e);
            return s[d].call(p, p)
        })), f), {}))
    }
    return o = S3(e, l, t, n, r, !0), o
}

function S3(e, t, n = {}, r, A, i) {
    let s;
    const a = Pi({
            actions: {}
        }, n),
        o = {
            deep: !0
        };
    let l, u, f = [],
        d = [],
        p;
    const m = r.state.value[e];
    !i && !m && (r.state.value[e] = {}), Ue({});
    let g;

    function y(I) {
        let D;
        l = u = !1, typeof I == "function" ? (I(r.state.value[e]), D = {
            type: Fl.patchFunction,
            storeId: e,
            events: p
        }) : (P2(r.state.value[e], I), D = {
            type: Fl.patchObject,
            payload: I,
            storeId: e,
            events: p
        });
        const U = g = Symbol();
        yt().then(() => {
            g === U && (l = !0)
        }), u = !0, ya(f, D, r.state.value[e])
    }
    const w = i ? function() {
        const {
            state: D
        } = n, U = D ? D() : {};
        this.$patch(Q => {
            Pi(Q, U)
        })
    } : _3;

    function B() {
        s.stop(), f = [], d = [], r._s.delete(e)
    }

    function x(I, D) {
        return function() {
            sf(r);
            const U = Array.from(arguments),
                Q = [],
                O = [];

            function N(V) {
                Q.push(V)
            }

            function J(V) {
                O.push(V)
            }
            ya(d, {
                args: U,
                name: I,
                store: b,
                after: N,
                onError: J
            });
            let j;
            try {
                j = D.apply(this && this.$id === e ? this : b, U)
            } catch (V) {
                throw ya(O, V), V
            }
            return j instanceof Promise ? j.then(V => (ya(Q, V), V)).catch(V => (ya(O, V), Promise.reject(V))) : (ya(Q, j), j)
        }
    }
    const C = {
            _p: r,
            $id: e,
            $onAction: Pg.bind(null, d),
            $patch: y,
            $reset: w,
            $subscribe(I, D = {}) {
                const U = Pg(f, I, D.detached, () => Q()),
                    Q = s.run(() => je(() => r.state.value[e], O => {
                        (D.flush === "sync" ? u : l) && I({
                            storeId: e,
                            type: Fl.direct,
                            events: p
                        }, O)
                    }, Pi({}, o, D)));
                return U
            },
            $dispose: B
        },
        b = Nt(C);
    r._s.set(e, b);
    const T = (r._a && r._a.runWithContext || $_)(() => r._e.run(() => (s = Pc()).run(t)));
    for (const I in T) {
        const D = T[I];
        if (Rt(D) && !G_(D) || YA(D)) i || (m && V_(D) && (Rt(D) ? D.value = m[I] : P2(D, m[I])), r.state.value[e][I] = D);
        else if (typeof D == "function") {
            const U = x(I, D);
            T[I] = U, a.actions[I] = D
        }
    }
    return Pi(b, T), Pi(Et(b), T), Object.defineProperty(b, "$state", {
        get: () => r.state.value[e],
        set: I => {
            y(D => {
                Pi(D, I)
            })
        }
    }), r._p.forEach(I => {
        Pi(b, s.run(() => I({
            store: b,
            app: r._a,
            pinia: r,
            options: a
        })))
    }), m && i && n.hydrate && n.hydrate(b.$state, m), l = !0, u = !0, b
}

function Kte(e, t, n) {
    let r, A;
    const i = typeof t == "function";
    typeof e == "string" ? (r = e, A = i ? n : t) : (A = e, r = e.id);

    function s(a, o) {
        const l = D8();
        return a = a || (l ? fn(F3, null) : null), a && sf(a), a = b3, a._s.has(r) || (i ? S3(r, t, A, a) : z_(r, A, a)), a._s.get(r)
    }
    return s.$id = r, s
}(function(e, t) {
    var n = e.document,
        r = n.documentElement,
        A = n.querySelector('meta[name="viewport"]'),
        i = n.querySelector('meta[name="flexible"]'),
        s = 0,
        a = 0,
        o, l = t.flexible || (t.flexible = {});
    if (A) {
        console.warn("");
        var u = A.getAttribute("content").match(/initial\-scale=([\d\.]+)/);
        u && (a = parseFloat(u[1]), s = parseInt(1 / a))
    } else if (i) {
        var f = i.getAttribute("content");
        if (f) {
            var d = f.match(/initial\-dpr=([\d\.]+)/),
                p = f.match(/maximum\-dpr=([\d\.]+)/);
            d && (s = parseFloat(d[1]), a = parseFloat((1 / s).toFixed(2))), p && (s = parseFloat(p[1]), a = parseFloat((1 / s).toFixed(2)))
        }
    }
    if (!s && !a) {
        e.navigator.appVersion.match(/android/gi);
        var m = e.navigator.appVersion.match(/iphone/gi),
            g = e.devicePixelRatio;
        m ? g >= 3 && (!s || s >= 3) ? s = 3 : g >= 2 && (!s || s >= 2) ? s = 2 : s = 1 : s = 1, a = 1 / s
    }
    if (r.setAttribute("data-dpr", s), !A)
        if (A = n.createElement("meta"), A.setAttribute("name", "viewport"), A.setAttribute("content", "initial-scale=" + a + ", maximum-scale=" + a + ", minimum-scale=" + a + ", user-scalable=no"), r.firstElementChild) r.firstElementChild.appendChild(A);
        else {
            var y = n.createElement("div");
            y.appendChild(A), n.write(y.innerHTML)
        }
    function w() {
        var B = r.getBoundingClientRect().width;
        B / s > 540 && (B = 540 * s);
        var x = B / 10;
        r.style.fontSize = x + "px", l.rem = e.rem = x
    }
    e.addEventListener("resize", function() {
        clearTimeout(o), o = setTimeout(w, 300)
    }, !1), e.addEventListener("pageshow", function(B) {
        B.persisted && (clearTimeout(o), o = setTimeout(w, 300))
    }, !1), n.readyState === "complete" ? n.body.style.fontSize = 12 * s + "px" : n.addEventListener("DOMContentLoaded", function(B) {
        n.body.style.fontSize = 12 * s + "px"
    }, !1), w(), l.dpr = e.dpr = s, l.refreshRem = w, l.rem2px = function(B) {
        var x = parseFloat(B) * this.rem;
        return typeof B == "string" && B.match(/rem$/) && (x += "px"), x
    }, l.px2rem = function(B) {
        var x = parseFloat(B) / this.rem;
        return typeof B == "string" && B.match(/px$/) && (x += "rem"), x
    }
})(window, window.lib || (window.lib = {}));

function W_(e) {
    return typeof e == "object" && e !== null
}

function Og(e, t) {
    return e = W_(e) ? e : Object.create(null), new Proxy(e, {
        get(n, r, A) {
            return r === "key" ? Reflect.get(n, r, A) : Reflect.get(n, r, A) || Reflect.get(t, r, A)
        }
    })
}

function j_(e, t) {
    return t.reduce((n, r) => n == null ? void 0 : n[r], e)
}

function Y_(e, t, n) {
    return t.slice(0, -1).reduce((r, A) => /^(__proto__)$/.test(A) ? {} : r[A] = r[A] || {}, e)[t[t.length - 1]] = n, e
}

function X_(e, t) {
    return t.reduce((n, r) => {
        const A = r.split(".");
        return Y_(n, A, j_(e, A))
    }, {})
}

function J_(e, t) {
    return n => {
        var r;
        try {
            const {
                storage: A = localStorage,
                beforeRestore: i = void 0,
                afterRestore: s = void 0,
                serializer: a = {
                    serialize: JSON.stringify,
                    deserialize: JSON.parse
                },
                key: o = t.$id,
                paths: l = null,
                debug: u = !1
            } = n;
            return {
                storage: A,
                beforeRestore: i,
                afterRestore: s,
                serializer: a,
                key: ((r = e.key) != null ? r : f => f)(typeof o == "string" ? o : o(t.$id)),
                paths: l,
                debug: u
            }
        } catch (A) {
            return n.debug && console.error("[pinia-plugin-persistedstate]", A), null
        }
    }
}

function Lg(e, {
    storage: t,
    serializer: n,
    key: r,
    debug: A
}) {
    try {
        const i = t == null ? void 0 : t.getItem(r);
        i && e.$patch(n == null ? void 0 : n.deserialize(i))
    } catch (i) {
        A && console.error("[pinia-plugin-persistedstate]", i)
    }
}

function kg(e, {
    storage: t,
    serializer: n,
    key: r,
    paths: A,
    debug: i
}) {
    try {
        const s = Array.isArray(A) ? X_(e, A) : e;
        t.setItem(r, n.serialize(s))
    } catch (s) {
        i && console.error("[pinia-plugin-persistedstate]", s)
    }
}

function q_(e = {}) {
    return t => {
        const {
            auto: n = !1
        } = e, {
            options: {
                persist: r = n
            },
            store: A,
            pinia: i
        } = t;
        if (!r) return;
        if (!(A.$id in i.state.value)) {
            const a = i._s.get(A.$id.replace("__hot:", ""));
            a && Promise.resolve().then(() => a.$persist());
            return
        }
        const s = (Array.isArray(r) ? r.map(a => Og(a, e)) : [Og(r, e)]).map(J_(e, A)).filter(Boolean);
        A.$persist = () => {
            s.forEach(a => {
                kg(A.$state, a)
            })
        }, A.$hydrate = ({
            runHooks: a = !0
        } = {}) => {
            s.forEach(o => {
                const {
                    beforeRestore: l,
                    afterRestore: u
                } = o;
                a && (l == null || l(t)), Lg(A, o), a && (u == null || u(t))
            })
        }, s.forEach(a => {
            const {
                beforeRestore: o,
                afterRestore: l
            } = a;
            o == null || o(t), Lg(A, a), l == null || l(t), A.$subscribe((u, f) => {
                kg(f, a)
            }, {
                detached: !0
            })
        })
    }
}
var Vte = q_(),
    ht = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};

function xo(e) {
    return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e
}

function P6(e) {
    if (e.__esModule) return e;
    var t = e.default;
    if (typeof t == "function") {
        var n = function r() {
            return this instanceof r ? Reflect.construct(t, arguments, this.constructor) : t.apply(this, arguments)
        };
        n.prototype = t.prototype
    } else n = {};
    return Object.defineProperty(n, "__esModule", {
        value: !0
    }), Object.keys(e).forEach(function(r) {
        var A = Object.getOwnPropertyDescriptor(e, r);
        Object.defineProperty(n, r, A.get ? A : {
            enumerable: !0,
            get: function() {
                return e[r]
            }
        })
    }), n
}
const jt = P6(R_);
var Q3 = {
        exports: {}
    },
    O6 = Object.defineProperty,
    Z_ = Object.getOwnPropertyDescriptor,
    eS = Object.getOwnPropertyNames,
    tS = Object.prototype.hasOwnProperty,
    nS = (e, t) => {
        for (var n in t) O6(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    rS = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of eS(t)) !tS.call(e, A) && A !== n && O6(e, A, {
                get: () => t[A],
                enumerable: !(r = Z_(t, A)) || r.enumerable
            });
        return e
    },
    AS = e => rS(O6({}, "__esModule", {
        value: !0
    }), e),
    U3 = {};
nS(U3, {
    extend: () => sS,
    get: () => dS,
    inBrowser: () => T3,
    isDate: () => lS,
    isDef: () => aS,
    isFunction: () => O2,
    isIOS: () => fS,
    isMobile: () => uS,
    isNumeric: () => cS,
    isObject: () => L6,
    isPromise: () => oS,
    isSameValue: () => pS,
    noop: () => iS,
    pick: () => hS,
    toArray: () => gS
});
var ds = AS(U3);

function iS() {}
const sS = Object.assign,
    T3 = typeof window < "u",
    L6 = e => e !== null && typeof e == "object",
    aS = e => e != null,
    O2 = e => typeof e == "function",
    oS = e => L6(e) && O2(e.then) && O2(e.catch),
    lS = e => Object.prototype.toString.call(e) === "[object Date]" && !Number.isNaN(e.getTime());

function uS(e) {
    return e = e.replace(/[^-|\d]/g, ""), /^((\+86)|(86))?(1)\d{10}$/.test(e) || /^0[0-9-]{10,13}$/.test(e)
}
const cS = e => typeof e == "number" || /^\d+(\.\d+)?$/.test(e),
    fS = () => T3 ? /ios|iphone|ipad|ipod/.test(navigator.userAgent.toLowerCase()) : !1;

function dS(e, t) {
    const n = t.split(".");
    let r = e;
    return n.forEach(A => {
        var i;
        r = L6(r) && (i = r[A]) != null ? i : ""
    }), r
}

function hS(e, t, n) {
    return t.reduce((r, A) => ((!n || e[A] !== void 0) && (r[A] = e[A]), r), {})
}
const pS = (e, t) => JSON.stringify(e) === JSON.stringify(t),
    gS = e => Array.isArray(e) ? e : [e];
var k6 = Object.defineProperty,
    vS = Object.getOwnPropertyDescriptor,
    mS = Object.getOwnPropertyNames,
    BS = Object.prototype.hasOwnProperty,
    wS = (e, t) => {
        for (var n in t) k6(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    yS = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of mS(t)) !BS.call(e, A) && A !== n && k6(e, A, {
                get: () => t[A],
                enumerable: !(r = vS(t, A)) || r.enumerable
            });
        return e
    },
    CS = e => yS(k6({}, "__esModule", {
        value: !0
    }), e),
    I3 = {};
wS(I3, {
    makeArrayProp: () => _S,
    makeNumberProp: () => SS,
    makeNumericProp: () => QS,
    makeRequiredProp: () => FS,
    makeStringProp: () => US,
    numericProp: () => D3,
    truthProp: () => bS,
    unknownProp: () => ES
});
var xS = CS(I3);
const ES = null,
    D3 = [Number, String],
    bS = {
        type: Boolean,
        default: !0
    },
    FS = e => ({
        type: e,
        required: !0
    }),
    _S = () => ({
        type: Array,
        default: () => []
    }),
    SS = e => ({
        type: Number,
        default: e
    }),
    QS = e => ({
        type: D3,
        default: e
    }),
    US = e => ({
        type: String,
        default: e
    });
var bA = typeof window < "u",
    TS = !0;

function Ar(e) {
    return bA ? requestAnimationFrame(e) : -1
}

function B0(e) {
    bA && cancelAnimationFrame(e)
}

function Ms(e) {
    Ar(() => Ar(e))
}
var IS = e => e === window,
    Hg = (e, t) => ({
        top: 0,
        left: 0,
        right: e,
        bottom: t,
        width: e,
        height: t
    }),
    Dn = e => {
        const t = gr(e);
        if (IS(t)) {
            const n = t.innerWidth,
                r = t.innerHeight;
            return Hg(n, r)
        }
        return t != null && t.getBoundingClientRect ? t.getBoundingClientRect() : Hg(0, 0)
    };

function P3(e = !1) {
    const t = Ue(e);
    return [t, (r = !t.value) => {
        t.value = r
    }]
}

function Ir(e) {
    const t = fn(e, null);
    if (t) {
        const n = zt(),
            {
                link: r,
                unlink: A,
                internalChildren: i
            } = t;
        r(n), fi(() => A(n));
        const s = Oe(() => i.indexOf(n));
        return {
            parent: t,
            index: s
        }
    }
    return {
        parent: null,
        index: Ue(-1)
    }
}

function O3(e) {
    const t = [],
        n = r => {
            Array.isArray(r) && r.forEach(A => {
                var i;
                Ai(A) && (t.push(A), (i = A.component) != null && i.subTree && (t.push(A.component.subTree), n(A.component.subTree.children)), A.children && n(A.children))
            })
        };
    return n(e), t
}
var Mg = (e, t) => {
    const n = e.indexOf(t);
    return n === -1 ? e.findIndex(r => t.key !== void 0 && t.key !== null && r.type === t.type && r.key === t.key) : n
};

function L3(e, t, n) {
    const r = O3(e.subTree.children);
    n.sort((i, s) => Mg(r, i.vnode) - Mg(r, s.vnode));
    const A = n.map(i => i.proxy);
    t.sort((i, s) => {
        const a = A.indexOf(i),
            o = A.indexOf(s);
        return a - o
    })
}

function FA(e) {
    const t = Nt([]),
        n = Nt([]),
        r = zt();
    return {
        children: t,
        linkChildren: i => {
            AA(e, Object.assign({
                link: o => {
                    o.proxy && (n.push(o), t.push(o.proxy), L3(r, t, n))
                },
                unlink: o => {
                    const l = n.indexOf(o);
                    t.splice(l, 1), n.splice(l, 1)
                },
                children: t,
                internalChildren: n
            }, i))
        }
    }
}
var L2 = 1e3,
    k2 = 60 * L2,
    H2 = 60 * k2,
    Rg = 24 * H2;

function DS(e) {
    const t = Math.floor(e / Rg),
        n = Math.floor(e % Rg / H2),
        r = Math.floor(e % H2 / k2),
        A = Math.floor(e % k2 / L2),
        i = Math.floor(e % L2);
    return {
        total: e,
        days: t,
        hours: n,
        minutes: r,
        seconds: A,
        milliseconds: i
    }
}

function PS(e, t) {
    return Math.floor(e / 1e3) === Math.floor(t / 1e3)
}

function k3(e) {
    let t, n, r, A;
    const i = Ue(e.time),
        s = Oe(() => DS(i.value)),
        a = () => {
            r = !1, B0(t)
        },
        o = () => Math.max(n - Date.now(), 0),
        l = g => {
            var y, w;
            i.value = g, (y = e.onChange) == null || y.call(e, s.value), g === 0 && (a(), (w = e.onFinish) == null || w.call(e))
        },
        u = () => {
            t = Ar(() => {
                r && (l(o()), i.value > 0 && u())
            })
        },
        f = () => {
            t = Ar(() => {
                if (r) {
                    const g = o();
                    (!PS(g, i.value) || g === 0) && l(g), i.value > 0 && f()
                }
            })
        },
        d = () => {
            bA && (e.millisecond ? u() : f())
        },
        p = () => {
            r || (n = Date.now() + i.value, r = !0, d())
        },
        m = (g = e.time) => {
            a(), i.value = g
        };
    return Tr(a), fs(() => {
        A && (r = !0, A = !1, d())
    }), ui(() => {
        r && (a(), A = !0)
    }), {
        start: p,
        pause: a,
        reset: m,
        current: s
    }
}

function Eo(e) {
    let t;
    qt(() => {
        e(), yt(() => {
            t = !0
        })
    }), fs(() => {
        t && e()
    })
}

function wr(e, t, n = {}) {
    if (!bA) return;
    const {
        target: r = window,
        passive: A = !1,
        capture: i = !1
    } = n;
    let s = !1,
        a;
    const o = f => {
            if (s) return;
            const d = gr(f);
            d && !a && (d.addEventListener(e, t, {
                capture: i,
                passive: A
            }), a = !0)
        },
        l = f => {
            if (s) return;
            const d = gr(f);
            d && a && (d.removeEventListener(e, t, i), a = !1)
        };
    fi(() => l(r)), ui(() => l(r)), Eo(() => o(r));
    let u;
    return Rt(r) && (u = je(r, (f, d) => {
        l(d), o(f)
    })), () => {
        u == null || u(), l(r), s = !0
    }
}

function H3(e, t, n = {}) {
    if (!bA) return;
    const {
        eventName: r = "click"
    } = n;
    wr(r, i => {
        (Array.isArray(e) ? e : [e]).every(o => {
            const l = gr(o);
            return l && !l.contains(i.target)
        }) && t(i)
    }, {
        target: document
    })
}
var q0, C1;

function M3() {
    if (!q0 && (q0 = Ue(0), C1 = Ue(0), bA)) {
        const e = () => {
            q0.value = window.innerWidth, C1.value = window.innerHeight
        };
        e(), window.addEventListener("resize", e, {
            passive: !0
        }), window.addEventListener("orientationchange", e, {
            passive: !0
        })
    }
    return {
        width: q0,
        height: C1
    }
}
var OS = /scroll|auto|overlay/i,
    R3 = bA ? window : void 0;

function LS(e) {
    return e.tagName !== "HTML" && e.tagName !== "BODY" && e.nodeType === 1
}

function H6(e, t = R3) {
    let n = e;
    for (; n && n !== t && LS(n);) {
        const {
            overflowY: r
        } = window.getComputedStyle(n);
        if (OS.test(r)) return n;
        n = n.parentNode
    }
    return t
}

function w0(e, t = R3) {
    const n = Ue();
    return qt(() => {
        e.value && (n.value = H6(e.value, t))
    }), n
}
var Z0;

function N3() {
    if (!Z0 && (Z0 = Ue("visible"), bA)) {
        const e = () => {
            Z0.value = document.hidden ? "hidden" : "visible"
        };
        e(), window.addEventListener("visibilitychange", e)
    }
    return Z0
}
var M6 = Symbol("van-field");

function bo(e) {
    const t = fn(M6, null);
    t && !t.customValue.value && (t.customValue.value = e, je(e, () => {
        t.resetValidation(), t.validateWithTrigger("onChange")
    }))
}

function kS(e, t) {
    if (bA) {
        const {
            interval: n = 0,
            isLoop: r = !1
        } = t || {};
        let A, i = !1,
            s;
        const a = () => {
                i = !0, cancelAnimationFrame(s)
            },
            o = l => {
                if (!i) {
                    if (A === void 0) A = l;
                    else if (l - A > n && (e(l), A = l, !r)) {
                        a();
                        return
                    }
                    s = requestAnimationFrame(o)
                }
            };
        return s = requestAnimationFrame(o), a
    }
    return () => {}
}
const HS = Object.freeze(Object.defineProperty({
        __proto__: null,
        CUSTOM_FIELD_INJECTION_KEY: M6,
        cancelRaf: B0,
        doubleRaf: Ms,
        flattenVNodes: O3,
        getScrollParent: H6,
        inBrowser: bA,
        onMountedOrActivated: Eo,
        raf: Ar,
        sortChildren: L3,
        supportsPassive: TS,
        useChildren: FA,
        useClickAway: H3,
        useCountDown: k3,
        useCustomFieldValue: bo,
        useEventListener: wr,
        usePageVisibility: N3,
        useParent: Ir,
        useRaf: kS,
        useRect: Dn,
        useScrollParent: w0,
        useToggle: P3,
        useWindowSize: M3
    }, Symbol.toStringTag, {
        value: "Module"
    })),
    af = P6(HS);
var R6 = Object.defineProperty,
    MS = Object.getOwnPropertyDescriptor,
    RS = Object.getOwnPropertyNames,
    NS = Object.prototype.hasOwnProperty,
    $S = (e, t) => {
        for (var n in t) R6(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    KS = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of RS(t)) !NS.call(e, A) && A !== n && R6(e, A, {
                get: () => t[A],
                enumerable: !(r = MS(t, A)) || r.enumerable
            });
        return e
    },
    VS = e => KS(R6({}, "__esModule", {
        value: !0
    }), e),
    $3 = {};
$S($3, {
    getContainingBlock: () => tQ,
    getElementTop: () => WS,
    getRootScrollTop: () => N6,
    getScrollTop: () => G3,
    isHidden: () => JS,
    preventDefault: () => XS,
    resetScroll: () => YS,
    setRootScrollTop: () => z3,
    setScrollTop: () => M2,
    stopPropagation: () => W3,
    windowHeight: () => ZS,
    windowWidth: () => qS
});
var K3 = VS($3),
    V3 = af,
    GS = jt,
    zS = ds;

function G3(e) {
    const t = "scrollTop" in e ? e.scrollTop : e.pageYOffset;
    return Math.max(t, 0)
}

function M2(e, t) {
    "scrollTop" in e ? e.scrollTop = t : e.scrollTo(e.scrollX, t)
}

function N6() {
    return window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0
}

function z3(e) {
    M2(window, e), M2(document.body, e)
}

function WS(e, t) {
    if (e === window) return 0;
    const n = t ? G3(t) : N6();
    return (0, V3.useRect)(e).top + n
}
const jS = (0, zS.isIOS)();

function YS() {
    jS && z3(N6())
}
const W3 = e => e.stopPropagation();

function XS(e, t) {
    (typeof e.cancelable != "boolean" || e.cancelable) && e.preventDefault(), t && W3(e)
}

function JS(e) {
    const t = (0, GS.unref)(e);
    if (!t) return !1;
    const n = window.getComputedStyle(t),
        r = n.display === "none",
        A = t.offsetParent === null && n.position !== "fixed";
    return r || A
}
const {
    width: qS,
    height: ZS
} = (0, V3.useWindowSize)();

function eQ(e) {
    const t = window.getComputedStyle(e);
    return t.transform !== "none" || t.perspective !== "none" || ["transform", "perspective", "filter"].some(n => (t.willChange || "").includes(n))
}

function tQ(e) {
    let t = e.parentElement;
    for (; t;) {
        if (t && t.tagName !== "HTML" && t.tagName !== "BODY" && eQ(t)) return t;
        t = t.parentElement
    }
    return null
}
var $6 = Object.defineProperty,
    nQ = Object.getOwnPropertyDescriptor,
    rQ = Object.getOwnPropertyNames,
    AQ = Object.prototype.hasOwnProperty,
    iQ = (e, t) => {
        for (var n in t) $6(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    sQ = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of rQ(t)) !AQ.call(e, A) && A !== n && $6(e, A, {
                get: () => t[A],
                enumerable: !(r = nQ(t, A)) || r.enumerable
            });
        return e
    },
    aQ = e => sQ($6({}, "__esModule", {
        value: !0
    }), e),
    j3 = {};
iQ(j3, {
    addNumber: () => CQ,
    addUnit: () => Ku,
    camelize: () => vQ,
    clamp: () => wQ,
    formatNumber: () => yQ,
    getSizeStyle: () => lQ,
    getZIndexStyle: () => uQ,
    kebabCase: () => mQ,
    padZero: () => BQ,
    unitToPx: () => pQ
});
var K6 = aQ(j3),
    oQ = ds,
    Y3 = K3,
    R2 = ds;

function Ku(e) {
    if ((0, R2.isDef)(e)) return (0, R2.isNumeric)(e) ? `${e}px` : String(e)
}

function lQ(e) {
    if ((0, R2.isDef)(e)) {
        if (Array.isArray(e)) return {
            width: Ku(e[0]),
            height: Ku(e[1])
        };
        const t = Ku(e);
        return {
            width: t,
            height: t
        }
    }
}

function uQ(e) {
    const t = {};
    return e !== void 0 && (t.zIndex = +e), t
}
let x1;

function cQ() {
    if (!x1) {
        const e = document.documentElement,
            t = e.style.fontSize || window.getComputedStyle(e).fontSize;
        x1 = parseFloat(t)
    }
    return x1
}

function fQ(e) {
    return e = e.replace(/rem/g, ""), +e * cQ()
}

function dQ(e) {
    return e = e.replace(/vw/g, ""), +e * Y3.windowWidth.value / 100
}

function hQ(e) {
    return e = e.replace(/vh/g, ""), +e * Y3.windowHeight.value / 100
}

function pQ(e) {
    if (typeof e == "number") return e;
    if (oQ.inBrowser) {
        if (e.includes("rem")) return fQ(e);
        if (e.includes("vw")) return dQ(e);
        if (e.includes("vh")) return hQ(e)
    }
    return parseFloat(e)
}
const gQ = /-(\w)/g,
    vQ = e => e.replace(gQ, (t, n) => n.toUpperCase()),
    mQ = e => e.replace(/([A-Z])/g, "-$1").toLowerCase().replace(/^-/, "");

function BQ(e, t = 2) {
    let n = e + "";
    for (; n.length < t;) n = "0" + n;
    return n
}
const wQ = (e, t, n) => Math.min(Math.max(e, t), n);

function Ng(e, t, n) {
    const r = e.indexOf(t);
    return r === -1 ? e : t === "-" && r !== 0 ? e.slice(0, r) : e.slice(0, r + 1) + e.slice(r).replace(n, "")
}

function yQ(e, t = !0, n = !0) {
    t ? e = Ng(e, ".", /\./g) : e = e.split(".")[0], n ? e = Ng(e, "-", /-/g) : e = e.replace(/-/, "");
    const r = t ? /[^-0-9.]/g : /[^-0-9]/g;
    return e.replace(r, "")
}

function CQ(e, t) {
    return Math.round((e + t) * 1e10) / 1e10
}
var V6 = Object.defineProperty,
    xQ = Object.getOwnPropertyDescriptor,
    EQ = Object.getOwnPropertyNames,
    bQ = Object.prototype.hasOwnProperty,
    FQ = (e, t) => {
        for (var n in t) V6(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    _Q = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of EQ(t)) !bQ.call(e, A) && A !== n && V6(e, A, {
                get: () => t[A],
                enumerable: !(r = xQ(t, A)) || r.enumerable
            });
        return e
    },
    SQ = e => _Q(V6({}, "__esModule", {
        value: !0
    }), e),
    X3 = {};
FQ(X3, {
    deepAssign: () => J3
});
var QQ = SQ(X3),
    $g = ds;
const {
    hasOwnProperty: UQ
} = Object.prototype;

function TQ(e, t, n) {
    const r = t[n];
    (0, $g.isDef)(r) && (!UQ.call(e, n) || !(0, $g.isObject)(r) ? e[n] = r : e[n] = J3(Object(e[n]), r))
}

function J3(e, t) {
    return Object.keys(t).forEach(n => {
        TQ(e, t, n)
    }), e
}
var G6 = Object.defineProperty,
    IQ = Object.getOwnPropertyDescriptor,
    DQ = Object.getOwnPropertyNames,
    PQ = Object.prototype.hasOwnProperty,
    OQ = (e, t) => {
        for (var n in t) G6(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    LQ = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of DQ(t)) !PQ.call(e, A) && A !== n && G6(e, A, {
                get: () => t[A],
                enumerable: !(r = IQ(t, A)) || r.enumerable
            });
        return e
    },
    kQ = e => LQ(G6({}, "__esModule", {
        value: !0
    }), e),
    q3 = {};
OQ(q3, {
    default: () => MQ
});
var HQ = kQ(q3),
    MQ = {
        name: "姓名",
        tel: "电话",
        save: "保存",
        clear: "清空",
        cancel: "取消",
        confirm: "确认",
        delete: "删除",
        loading: "加载中...",
        noCoupon: "暂无优惠券",
        nameEmpty: "请填写姓名",
        addContact: "添加联系人",
        telInvalid: "请填写正确的电话",
        vanCalendar: {
            end: "结束",
            start: "开始",
            title: "日期选择",
            weekdays: ["日", "一", "二", "三", "四", "五", "六"],
            monthTitle: (e, t) => `${e}年${t}月`,
            rangePrompt: e => `最多选择 ${e} 天`
        },
        vanCascader: {
            select: "请选择"
        },
        vanPagination: {
            prev: "上一页",
            next: "下一页"
        },
        vanPullRefresh: {
            pulling: "下拉即可刷新...",
            loosing: "释放即可刷新..."
        },
        vanSubmitBar: {
            label: "合计:"
        },
        vanCoupon: {
            unlimited: "无门槛",
            discount: e => `${e}折`,
            condition: e => `满${e}元可用`
        },
        vanCouponCell: {
            title: "优惠券",
            count: e => `${e}张可用`
        },
        vanCouponList: {
            exchange: "兑换",
            close: "不使用",
            enable: "可用",
            disabled: "不可用",
            placeholder: "输入优惠码"
        },
        vanAddressEdit: {
            area: "地区",
            areaEmpty: "请选择地区",
            addressEmpty: "请填写详细地址",
            addressDetail: "详细地址",
            defaultAddress: "设为默认收货地址"
        },
        vanAddressList: {
            add: "新增地址"
        }
    },
    RQ = Object.create,
    of = Object.defineProperty,
    NQ = Object.getOwnPropertyDescriptor,
    $Q = Object.getOwnPropertyNames,
    KQ = Object.getPrototypeOf,
    VQ = Object.prototype.hasOwnProperty,
    GQ = (e, t) => {
        for (var n in t) of (e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    Z3 = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of $Q(t)) !VQ.call(e, A) && A !== n && of (e, A, {
                get: () => t[A],
                enumerable: !(r = NQ(t, A)) || r.enumerable
            });
        return e
    },
    zQ = (e, t, n) => (n = e != null ? RQ(KQ(e)) : {}, Z3(t || !e || !e.__esModule ? of (n, "default", {
        value: e,
        enumerable: !0
    }) : n, e)),
    WQ = e => Z3( of ({}, "__esModule", {
        value: !0
    }), e),
    eB = {};
GQ(eB, {
    Locale: () => nB,
    default: () => qQ,
    useCurrentLang: () => JQ
});
var jQ = WQ(eB),
    tB = jt,
    YQ = QQ,
    XQ = zQ(HQ);
const N2 = (0, tB.ref)("zh-CN"),
    Kg = (0, tB.reactive)({
        "zh-CN": XQ.default
    }),
    nB = {
        messages() {
            return Kg[N2.value]
        },
        use(e, t) {
            N2.value = e, this.add({
                [e]: t
            })
        },
        add(e = {}) {
            (0, YQ.deepAssign)(Kg, e)
        }
    },
    JQ = () => N2;
var qQ = nB,
    ZQ = Object.create,
    lf = Object.defineProperty,
    eU = Object.getOwnPropertyDescriptor,
    tU = Object.getOwnPropertyNames,
    nU = Object.getPrototypeOf,
    rU = Object.prototype.hasOwnProperty,
    AU = (e, t) => {
        for (var n in t) lf(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    rB = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of tU(t)) !rU.call(e, A) && A !== n && lf(e, A, {
                get: () => t[A],
                enumerable: !(r = eU(t, A)) || r.enumerable
            });
        return e
    },
    iU = (e, t, n) => (n = e != null ? ZQ(nU(e)) : {}, rB(t || !e || !e.__esModule ? lf(n, "default", {
        value: e,
        enumerable: !0
    }) : n, e)),
    sU = e => rB(lf({}, "__esModule", {
        value: !0
    }), e),
    AB = {};
AU(AB, {
    createBEM: () => sB,
    createNamespace: () => uU,
    createTranslate: () => iB
});
var aU = sU(AB),
    E1 = ds,
    oU = K6,
    lU = iU(jQ);

function iB(e) {
    const t = (0, oU.camelize)(e) + ".";
    return (n, ...r) => {
        const A = lU.default.messages(),
            i = (0, E1.get)(A, t + n) || (0, E1.get)(A, n);
        return (0, E1.isFunction)(i) ? i(...r) : i
    }
}

function $2(e, t) {
    return t ? typeof t == "string" ? ` ${e}--${t}` : Array.isArray(t) ? t.reduce((n, r) => n + $2(e, r), "") : Object.keys(t).reduce((n, r) => n + (t[r] ? $2(e, r) : ""), "") : ""
}

function sB(e) {
    return (t, n) => (t && typeof t != "string" && (n = t, t = ""), t = t ? `${e}__${t}` : e, `${t}${$2(t,n)}`)
}

function uU(e) {
    const t = `van-${e}`;
    return [t, sB(t), iB(t)]
}
var z6 = Object.defineProperty,
    cU = Object.getOwnPropertyDescriptor,
    fU = Object.getOwnPropertyNames,
    dU = Object.prototype.hasOwnProperty,
    hU = (e, t) => {
        for (var n in t) z6(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    pU = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of fU(t)) !dU.call(e, A) && A !== n && z6(e, A, {
                get: () => t[A],
                enumerable: !(r = cU(t, A)) || r.enumerable
            });
        return e
    },
    gU = e => pU(z6({}, "__esModule", {
        value: !0
    }), e),
    aB = {};
hU(aB, {
    BORDER: () => hs,
    BORDER_BOTTOM: () => yU,
    BORDER_LEFT: () => BU,
    BORDER_RIGHT: () => wU,
    BORDER_SURROUND: () => CU,
    BORDER_TOP: () => mU,
    BORDER_TOP_BOTTOM: () => xU,
    BORDER_UNSET_TOP_BOTTOM: () => EU,
    FORM_KEY: () => FU,
    HAPTICS_FEEDBACK: () => bU,
    LONG_PRESS_START_TIME: () => _U,
    TAP_OFFSET: () => SU
});
var vU = gU(aB);
const hs = "van-hairline",
    mU = `${hs}--top`,
    BU = `${hs}--left`,
    wU = `${hs}--right`,
    yU = `${hs}--bottom`,
    CU = `${hs}--surround`,
    xU = `${hs}--top-bottom`,
    EU = `${hs}-unset--top-bottom`,
    bU = "van-haptics-feedback",
    FU = Symbol("van-form"),
    _U = 500,
    SU = 5;
var W6 = Object.defineProperty,
    QU = Object.getOwnPropertyDescriptor,
    UU = Object.getOwnPropertyNames,
    TU = Object.prototype.hasOwnProperty,
    IU = (e, t) => {
        for (var n in t) W6(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    DU = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of UU(t)) !TU.call(e, A) && A !== n && W6(e, A, {
                get: () => t[A],
                enumerable: !(r = QU(t, A)) || r.enumerable
            });
        return e
    },
    PU = e => DU(W6({}, "__esModule", {
        value: !0
    }), e),
    oB = {};
IU(oB, {
    callInterceptor: () => LU
});
var OU = PU(oB),
    Vg = ds;

function LU(e, {
    args: t = [],
    done: n,
    canceled: r,
    error: A
}) {
    if (e) {
        const i = e.apply(null, t);
        (0, Vg.isPromise)(i) ? i.then(s => {
            s ? n() : r && r()
        }).catch(A || Vg.noop): i ? n() : r && r()
    } else n()
}
var j6 = Object.defineProperty,
    kU = Object.getOwnPropertyDescriptor,
    HU = Object.getOwnPropertyNames,
    MU = Object.prototype.hasOwnProperty,
    RU = (e, t) => {
        for (var n in t) j6(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    NU = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of HU(t)) !MU.call(e, A) && A !== n && j6(e, A, {
                get: () => t[A],
                enumerable: !(r = kU(t, A)) || r.enumerable
            });
        return e
    },
    $U = e => NU(j6({}, "__esModule", {
        value: !0
    }), e),
    lB = {};
RU(lB, {
    withInstall: () => GU
});
var KU = $U(lB),
    VU = K6;

function GU(e) {
    return e.install = t => {
        const {
            name: n
        } = e;
        n && (t.component(n, e), t.component((0, VU.camelize)(`-${n}`), e))
    }, e
}
var Y6 = Object.defineProperty,
    zU = Object.getOwnPropertyDescriptor,
    WU = Object.getOwnPropertyNames,
    jU = Object.prototype.hasOwnProperty,
    YU = (e, t) => {
        for (var n in t) Y6(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    XU = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of WU(t)) !jU.call(e, A) && A !== n && Y6(e, A, {
                get: () => t[A],
                enumerable: !(r = zU(t, A)) || r.enumerable
            });
        return e
    },
    JU = e => XU(Y6({}, "__esModule", {
        value: !0
    }), e),
    uB = {};
YU(uB, {
    closest: () => ZU
});
var qU = JU(uB);

function ZU(e, t) {
    return e.reduce((n, r) => Math.abs(n - t) < Math.abs(r - t) ? n : r)
}(function(e) {
    var t = Object.defineProperty,
        n = Object.getOwnPropertyDescriptor,
        r = Object.getOwnPropertyNames,
        A = Object.prototype.hasOwnProperty,
        i = (l, u, f, d) => {
            if (u && typeof u == "object" || typeof u == "function")
                for (let p of r(u)) !A.call(l, p) && p !== f && t(l, p, {
                    get: () => u[p],
                    enumerable: !(d = n(u, p)) || d.enumerable
                });
            return l
        },
        s = (l, u, f) => (i(l, u, "default"), f && i(f, u, "default")),
        a = l => i(t({}, "__esModule", {
            value: !0
        }), l),
        o = {};
    e.exports = a(o), s(o, ds, e.exports), s(o, xS, e.exports), s(o, K3, e.exports), s(o, aU, e.exports), s(o, K6, e.exports), s(o, vU, e.exports), s(o, OU, e.exports), s(o, KU, e.exports), s(o, qU, e.exports)
})(Q3);
var Gn = Q3.exports,
    X6 = Object.defineProperty,
    eT = Object.getOwnPropertyDescriptor,
    tT = Object.getOwnPropertyNames,
    nT = Object.prototype.hasOwnProperty,
    rT = (e, t) => {
        for (var n in t) X6(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    AT = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of tT(t)) !nT.call(e, A) && A !== n && X6(e, A, {
                get: () => t[A],
                enumerable: !(r = eT(t, A)) || r.enumerable
            });
        return e
    },
    iT = e => AT(X6({}, "__esModule", {
        value: !0
    }), e),
    cB = {};
rT(cB, {
    useExpose: () => oT
});
var fB = iT(cB),
    sT = jt,
    aT = Gn;

function oT(e) {
    const t = (0, sT.getCurrentInstance)();
    t && (0, aT.extend)(t.proxy, e)
}
var J6 = Object.defineProperty,
    lT = Object.getOwnPropertyDescriptor,
    uT = Object.getOwnPropertyNames,
    cT = Object.prototype.hasOwnProperty,
    fT = (e, t) => {
        for (var n in t) J6(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    dT = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of uT(t)) !cT.call(e, A) && A !== n && J6(e, A, {
                get: () => t[A],
                enumerable: !(r = lT(t, A)) || r.enumerable
            });
        return e
    },
    hT = e => dT(J6({}, "__esModule", {
        value: !0
    }), e),
    dB = {};
fT(dB, {
    mountComponent: () => BT,
    usePopupState: () => mT
});
var pT = hT(dB),
    hB = jt,
    gT = ds,
    vT = fB;

function mT() {
    const e = (0, hB.reactive)({
            show: !1
        }),
        t = A => {
            e.show = A
        },
        n = A => {
            (0, gT.extend)(e, A, {
                transitionAppear: !0
            }), t(!0)
        },
        r = () => t(!1);
    return (0, vT.useExpose)({
        open: n,
        close: r,
        toggle: t
    }), {
        open: n,
        close: r,
        state: e,
        toggle: t
    }
}

function BT(e) {
    const t = (0, hB.createApp)(e),
        n = document.createElement("div");
    return document.body.appendChild(n), {
        instance: t.mount(n),
        unmount() {
            t.unmount(), document.body.removeChild(n)
        }
    }
}
var q6 = Object.defineProperty,
    wT = Object.getOwnPropertyDescriptor,
    yT = Object.getOwnPropertyNames,
    CT = Object.prototype.hasOwnProperty,
    xT = (e, t) => {
        for (var n in t) q6(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    ET = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of yT(t)) !CT.call(e, A) && A !== n && q6(e, A, {
                get: () => t[A],
                enumerable: !(r = wT(t, A)) || r.enumerable
            });
        return e
    },
    bT = e => ET(q6({}, "__esModule", {
        value: !0
    }), e),
    pB = {};
xT(pB, {
    lockClick: () => _T
});
var FT = bT(pB);
let jo = 0;

function _T(e) {
    e ? (jo || document.body.classList.add("van-toast--unclickable"), jo++) : jo && (jo--, jo || document.body.classList.remove("van-toast--unclickable"))
}
var Z6 = Object.defineProperty,
    ST = Object.getOwnPropertyDescriptor,
    QT = Object.getOwnPropertyNames,
    UT = Object.prototype.hasOwnProperty,
    TT = (e, t) => {
        for (var n in t) Z6(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    IT = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of QT(t)) !UT.call(e, A) && A !== n && Z6(e, A, {
                get: () => t[A],
                enumerable: !(r = ST(t, A)) || r.enumerable
            });
        return e
    },
    DT = e => IT(Z6({}, "__esModule", {
        value: !0
    }), e),
    gB = {};
TT(gB, {
    badgeProps: () => mB,
    default: () => OT
});
var vB = DT(gB),
    Gg = jt,
    zg = jt,
    nr = Gn;
const [PT, Wg] = (0, nr.createNamespace)("badge"), mB = {
    dot: Boolean,
    max: nr.numericProp,
    tag: (0, nr.makeStringProp)("div"),
    color: String,
    offset: Array,
    content: nr.numericProp,
    showZero: nr.truthProp,
    position: (0, nr.makeStringProp)("top-right")
};
var OT = (0, zg.defineComponent)({
        name: PT,
        props: mB,
        setup(e, {
            slots: t
        }) {
            const n = () => {
                    if (t.content) return !0;
                    const {
                        content: a,
                        showZero: o
                    } = e;
                    return (0, nr.isDef)(a) && a !== "" && (o || a !== 0 && a !== "0")
                },
                r = () => {
                    const {
                        dot: a,
                        max: o,
                        content: l
                    } = e;
                    if (!a && n()) return t.content ? t.content() : (0, nr.isDef)(o) && (0, nr.isNumeric)(l) && +l > +o ? `${o}+` : l
                },
                A = a => a.startsWith("-") ? a.replace("-", "") : `-${a}`,
                i = (0, zg.computed)(() => {
                    const a = {
                        background: e.color
                    };
                    if (e.offset) {
                        const [o, l] = e.offset, {
                            position: u
                        } = e, [f, d] = u.split("-");
                        t.default ? (typeof l == "number" ? a[f] = (0, nr.addUnit)(f === "top" ? l : -l) : a[f] = f === "top" ? (0, nr.addUnit)(l) : A(l), typeof o == "number" ? a[d] = (0, nr.addUnit)(d === "left" ? o : -o) : a[d] = d === "left" ? (0, nr.addUnit)(o) : A(o)) : (a.marginTop = (0, nr.addUnit)(l), a.marginLeft = (0, nr.addUnit)(o))
                    }
                    return a
                }),
                s = () => {
                    if (n() || e.dot) return (0, Gg.createVNode)("div", {
                        class: Wg([e.position, {
                            dot: e.dot,
                            fixed: !!t.default
                        }]),
                        style: i.value
                    }, [r()])
                };
            return () => {
                if (t.default) {
                    const {
                        tag: a
                    } = e;
                    return (0, Gg.createVNode)(a, {
                        class: Wg("wrapper")
                    }, {
                        default: () => [t.default(), s()]
                    })
                }
                return s()
            }
        }
    }),
    LT = Object.create,
    uf = Object.defineProperty,
    kT = Object.getOwnPropertyDescriptor,
    HT = Object.getOwnPropertyNames,
    MT = Object.getPrototypeOf,
    RT = Object.prototype.hasOwnProperty,
    NT = (e, t) => {
        for (var n in t) uf(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    BB = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of HT(t)) !RT.call(e, A) && A !== n && uf(e, A, {
                get: () => t[A],
                enumerable: !(r = kT(t, A)) || r.enumerable
            });
        return e
    },
    $T = (e, t, n) => (n = e != null ? LT(MT(e)) : {}, BB(t || !e || !e.__esModule ? uf(n, "default", {
        value: e,
        enumerable: !0
    }) : n, e)),
    KT = e => BB(uf({}, "__esModule", {
        value: !0
    }), e),
    wB = {};
NT(wB, {
    Badge: () => yB,
    badgeProps: () => WT.badgeProps,
    default: () => jT
});
var VT = KT(wB),
    GT = Gn,
    zT = $T(vB),
    WT = vB;
const yB = (0, GT.withInstall)(zT.default);
var jT = yB,
    ep = Object.defineProperty,
    YT = Object.getOwnPropertyDescriptor,
    XT = Object.getOwnPropertyNames,
    JT = Object.prototype.hasOwnProperty,
    qT = (e, t) => {
        for (var n in t) ep(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    ZT = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of XT(t)) !JT.call(e, A) && A !== n && ep(e, A, {
                get: () => t[A],
                enumerable: !(r = YT(t, A)) || r.enumerable
            });
        return e
    },
    eI = e => ZT(ep({}, "__esModule", {
        value: !0
    }), e),
    CB = {};
qT(CB, {
    setGlobalZIndex: () => nI,
    useGlobalZIndex: () => tI
});
var xB = eI(CB);
let EB = 2e3;
const tI = () => ++EB,
    nI = e => {
        EB = e
    };
var tp = Object.defineProperty,
    rI = Object.getOwnPropertyDescriptor,
    AI = Object.getOwnPropertyNames,
    iI = Object.prototype.hasOwnProperty,
    sI = (e, t) => {
        for (var n in t) tp(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    aI = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of AI(t)) !iI.call(e, A) && A !== n && tp(e, A, {
                get: () => t[A],
                enumerable: !(r = rI(t, A)) || r.enumerable
            });
        return e
    },
    oI = e => aI(tp({}, "__esModule", {
        value: !0
    }), e),
    bB = {};
sI(bB, {
    CONFIG_PROVIDER_KEY: () => _B,
    configProviderProps: () => SB,
    default: () => pI
});
var lI = oI(bB),
    uI = jt,
    hA = jt,
    zs = Gn,
    cI = xB;
const [FB, fI] = (0, zs.createNamespace)("config-provider"), _B = Symbol(FB), SB = {
    tag: (0, zs.makeStringProp)("div"),
    theme: (0, zs.makeStringProp)("light"),
    zIndex: Number,
    themeVars: Object,
    themeVarsDark: Object,
    themeVarsLight: Object,
    themeVarsScope: (0, zs.makeStringProp)("local"),
    iconPrefix: String
};

function dI(e) {
    return e.replace(/([a-zA-Z])(\d)/g, "$1-$2")
}

function hI(e) {
    const t = {};
    return Object.keys(e).forEach(n => {
        const r = dI((0, zs.kebabCase)(n));
        t[`--van-${r}`] = e[n]
    }), t
}

function eu(e = {}, t = {}) {
    Object.keys(e).forEach(n => {
        e[n] !== t[n] && document.documentElement.style.setProperty(n, e[n])
    }), Object.keys(t).forEach(n => {
        e[n] || document.documentElement.style.removeProperty(n)
    })
}
var pI = (0, hA.defineComponent)({
        name: FB,
        props: SB,
        setup(e, {
            slots: t
        }) {
            const n = (0, hA.computed)(() => hI((0, zs.extend)({}, e.themeVars, e.theme === "dark" ? e.themeVarsDark : e.themeVarsLight)));
            if (zs.inBrowser) {
                const r = () => {
                        document.documentElement.classList.add(`van-theme-${e.theme}`)
                    },
                    A = (i = e.theme) => {
                        document.documentElement.classList.remove(`van-theme-${i}`)
                    };
                (0, hA.watch)(() => e.theme, (i, s) => {
                    s && A(s), r()
                }, {
                    immediate: !0
                }), (0, hA.onActivated)(r), (0, hA.onDeactivated)(A), (0, hA.onBeforeUnmount)(A), (0, hA.watch)(n, (i, s) => {
                    e.themeVarsScope === "global" && eu(i, s)
                }), (0, hA.watch)(() => e.themeVarsScope, (i, s) => {
                    s === "global" && eu({}, n.value), i === "global" && eu(n.value, {})
                }), e.themeVarsScope === "global" && eu(n.value, {})
            }
            return (0, hA.provide)(_B, e), (0, hA.watchEffect)(() => {
                e.zIndex !== void 0 && (0, cI.setGlobalZIndex)(e.zIndex)
            }), () => (0, uI.createVNode)(e.tag, {
                class: fI(),
                style: e.themeVarsScope === "local" ? n.value : void 0
            }, {
                default: () => {
                    var r;
                    return [(r = t.default) == null ? void 0 : r.call(t)]
                }
            })
        }
    }),
    np = Object.defineProperty,
    gI = Object.getOwnPropertyDescriptor,
    vI = Object.getOwnPropertyNames,
    mI = Object.prototype.hasOwnProperty,
    BI = (e, t) => {
        for (var n in t) np(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    wI = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of vI(t)) !mI.call(e, A) && A !== n && np(e, A, {
                get: () => t[A],
                enumerable: !(r = gI(t, A)) || r.enumerable
            });
        return e
    },
    yI = e => wI(np({}, "__esModule", {
        value: !0
    }), e),
    QB = {};
BI(QB, {
    default: () => FI,
    iconProps: () => TB
});
var UB = yI(QB),
    b1 = jt,
    F1 = jt,
    _l = Gn,
    CI = VT,
    xI = lI;
const [EI, jg] = (0, _l.createNamespace)("icon"), bI = e => e == null ? void 0 : e.includes("/"), TB = {
    dot: Boolean,
    tag: (0, _l.makeStringProp)("i"),
    name: String,
    size: _l.numericProp,
    badge: _l.numericProp,
    color: String,
    badgeProps: Object,
    classPrefix: String
};
var FI = (0, F1.defineComponent)({
        name: EI,
        props: TB,
        setup(e, {
            slots: t
        }) {
            const n = (0, F1.inject)(xI.CONFIG_PROVIDER_KEY, null),
                r = (0, F1.computed)(() => e.classPrefix || (n == null ? void 0 : n.iconPrefix) || jg());
            return () => {
                const {
                    tag: A,
                    dot: i,
                    name: s,
                    size: a,
                    badge: o,
                    color: l
                } = e, u = bI(s);
                return (0, b1.createVNode)(CI.Badge, (0, b1.mergeProps)({
                    dot: i,
                    tag: A,
                    class: [r.value, u ? "" : `${r.value}-${s}`],
                    style: {
                        color: l,
                        fontSize: (0, _l.addUnit)(a)
                    },
                    content: o
                }, e.badgeProps), {
                    default: () => {
                        var f;
                        return [(f = t.default) == null ? void 0 : f.call(t), u && (0, b1.createVNode)("img", {
                            class: jg("image"),
                            src: s
                        }, null)]
                    }
                })
            }
        }
    }),
    _I = Object.create,
    cf = Object.defineProperty,
    SI = Object.getOwnPropertyDescriptor,
    QI = Object.getOwnPropertyNames,
    UI = Object.getPrototypeOf,
    TI = Object.prototype.hasOwnProperty,
    II = (e, t) => {
        for (var n in t) cf(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    IB = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of QI(t)) !TI.call(e, A) && A !== n && cf(e, A, {
                get: () => t[A],
                enumerable: !(r = SI(t, A)) || r.enumerable
            });
        return e
    },
    DI = (e, t, n) => (n = e != null ? _I(UI(e)) : {}, IB(t || !e || !e.__esModule ? cf(n, "default", {
        value: e,
        enumerable: !0
    }) : n, e)),
    PI = e => IB(cf({}, "__esModule", {
        value: !0
    }), e),
    DB = {};
II(DB, {
    Icon: () => OB,
    default: () => HI,
    iconProps: () => kI.iconProps
});
var PB = PI(DB),
    OI = Gn,
    LI = DI(UB),
    kI = UB;
const OB = (0, OI.withInstall)(LI.default);
var HI = OB,
    rp = Object.defineProperty,
    MI = Object.getOwnPropertyDescriptor,
    RI = Object.getOwnPropertyNames,
    NI = Object.prototype.hasOwnProperty,
    $I = (e, t) => {
        for (var n in t) rp(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    KI = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of RI(t)) !NI.call(e, A) && A !== n && rp(e, A, {
                get: () => t[A],
                enumerable: !(r = MI(t, A)) || r.enumerable
            });
        return e
    },
    VI = e => KI(rp({}, "__esModule", {
        value: !0
    }), e),
    LB = {};
$I(LB, {
    popupSharedPropKeys: () => zI,
    popupSharedProps: () => kB
});
var GI = VI(LB),
    Ss = Gn;
const kB = {
        show: Boolean,
        zIndex: Ss.numericProp,
        overlay: Ss.truthProp,
        duration: Ss.numericProp,
        teleport: [String, Object],
        lockScroll: Ss.truthProp,
        lazyRender: Ss.truthProp,
        beforeClose: Function,
        overlayStyle: Object,
        overlayClass: Ss.unknownProp,
        transitionAppear: Boolean,
        closeOnClickOverlay: Ss.truthProp
    },
    zI = Object.keys(kB);
var Ap = Object.defineProperty,
    WI = Object.getOwnPropertyDescriptor,
    jI = Object.getOwnPropertyNames,
    YI = Object.prototype.hasOwnProperty,
    XI = (e, t) => {
        for (var n in t) Ap(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    JI = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of jI(t)) !YI.call(e, A) && A !== n && Ap(e, A, {
                get: () => t[A],
                enumerable: !(r = WI(t, A)) || r.enumerable
            });
        return e
    },
    qI = e => JI(Ap({}, "__esModule", {
        value: !0
    }), e),
    HB = {};
XI(HB, {
    useTouch: () => tD
});
var ZI = qI(HB),
    Si = jt,
    Yg = Gn;

function eD(e, t) {
    return e > t ? "horizontal" : t > e ? "vertical" : ""
}

function tD() {
    const e = (0, Si.ref)(0),
        t = (0, Si.ref)(0),
        n = (0, Si.ref)(0),
        r = (0, Si.ref)(0),
        A = (0, Si.ref)(0),
        i = (0, Si.ref)(0),
        s = (0, Si.ref)(""),
        a = (0, Si.ref)(!0),
        o = () => s.value === "vertical",
        l = () => s.value === "horizontal",
        u = () => {
            n.value = 0, r.value = 0, A.value = 0, i.value = 0, s.value = "", a.value = !0
        };
    return {
        move: p => {
            const m = p.touches[0];
            n.value = (m.clientX < 0 ? 0 : m.clientX) - e.value, r.value = m.clientY - t.value, A.value = Math.abs(n.value), i.value = Math.abs(r.value);
            const g = 10;
            (!s.value || A.value < g && i.value < g) && (s.value = eD(A.value, i.value)), a.value && (A.value > Yg.TAP_OFFSET || i.value > Yg.TAP_OFFSET) && (a.value = !1)
        },
        start: p => {
            u(), e.value = p.touches[0].clientX, t.value = p.touches[0].clientY
        },
        reset: u,
        startX: e,
        startY: t,
        deltaX: n,
        deltaY: r,
        offsetX: A,
        offsetY: i,
        direction: s,
        isVertical: o,
        isHorizontal: l,
        isTap: a
    }
}
var ip = Object.defineProperty,
    nD = Object.getOwnPropertyDescriptor,
    rD = Object.getOwnPropertyNames,
    AD = Object.prototype.hasOwnProperty,
    iD = (e, t) => {
        for (var n in t) ip(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    sD = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of rD(t)) !AD.call(e, A) && A !== n && ip(e, A, {
                get: () => t[A],
                enumerable: !(r = nD(t, A)) || r.enumerable
            });
        return e
    },
    aD = e => sD(ip({}, "__esModule", {
        value: !0
    }), e),
    MB = {};
iD(MB, {
    useLockScroll: () => cD
});
var oD = aD(MB),
    _1 = jt,
    Xg = af,
    lD = ZI,
    uD = Gn;
let Yo = 0;
const Jg = "van-overflow-hidden";

function cD(e, t) {
    const n = (0, lD.useTouch)(),
        r = "01",
        A = "10",
        i = u => {
            n.move(u);
            const f = n.deltaY.value > 0 ? A : r,
                d = (0, Xg.getScrollParent)(u.target, e.value),
                {
                    scrollHeight: p,
                    offsetHeight: m,
                    scrollTop: g
                } = d;
            let y = "11";
            g === 0 ? y = m >= p ? "00" : "01" : g + m >= p && (y = "10"), y !== "11" && n.isVertical() && !(parseInt(y, 2) & parseInt(f, 2)) && (0, uD.preventDefault)(u, !0)
        },
        s = () => {
            document.addEventListener("touchstart", n.start), document.addEventListener("touchmove", i, {
                passive: !1
            }), Yo || document.body.classList.add(Jg), Yo++
        },
        a = () => {
            Yo && (document.removeEventListener("touchstart", n.start), document.removeEventListener("touchmove", i), Yo--, Yo || document.body.classList.remove(Jg))
        },
        o = () => t() && s(),
        l = () => t() && a();
    (0, Xg.onMountedOrActivated)(o), (0, _1.onDeactivated)(l), (0, _1.onBeforeUnmount)(l), (0, _1.watch)(t, u => {
        u ? s() : a()
    })
}
var sp = Object.defineProperty,
    fD = Object.getOwnPropertyDescriptor,
    dD = Object.getOwnPropertyNames,
    hD = Object.prototype.hasOwnProperty,
    pD = (e, t) => {
        for (var n in t) sp(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    gD = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of dD(t)) !hD.call(e, A) && A !== n && sp(e, A, {
                get: () => t[A],
                enumerable: !(r = fD(t, A)) || r.enumerable
            });
        return e
    },
    vD = e => gD(sp({}, "__esModule", {
        value: !0
    }), e),
    RB = {};
pD(RB, {
    useLazyRender: () => mD
});
var NB = vD(RB),
    qg = jt;

function mD(e) {
    const t = (0, qg.ref)(!1);
    return (0, qg.watch)(e, n => {
        n && (t.value = n)
    }, {
        immediate: !0
    }), n => () => t.value ? n() : null
}
var ap = Object.defineProperty,
    BD = Object.getOwnPropertyDescriptor,
    wD = Object.getOwnPropertyNames,
    yD = Object.prototype.hasOwnProperty,
    CD = (e, t) => {
        for (var n in t) ap(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    xD = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of wD(t)) !yD.call(e, A) && A !== n && ap(e, A, {
                get: () => t[A],
                enumerable: !(r = BD(t, A)) || r.enumerable
            });
        return e
    },
    ED = e => xD(ap({}, "__esModule", {
        value: !0
    }), e),
    $B = {};
CD($B, {
    POPUP_TOGGLE_KEY: () => KB,
    onPopupReopen: () => FD
});
var bD = ED($B),
    Zg = jt;
const KB = Symbol();

function FD(e) {
    const t = (0, Zg.inject)(KB, null);
    t && (0, Zg.watch)(t, n => {
        n && e()
    })
}
var op = Object.defineProperty,
    _D = Object.getOwnPropertyDescriptor,
    SD = Object.getOwnPropertyNames,
    QD = Object.prototype.hasOwnProperty,
    UD = (e, t) => {
        for (var n in t) op(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    TD = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of SD(t)) !QD.call(e, A) && A !== n && op(e, A, {
                get: () => t[A],
                enumerable: !(r = _D(t, A)) || r.enumerable
            });
        return e
    },
    ID = e => TD(op({}, "__esModule", {
        value: !0
    }), e),
    VB = {};
UD(VB, {
    useScopeId: () => OD
});
var DD = ID(VB),
    PD = jt;
const OD = () => {
    var e;
    const {
        scopeId: t
    } = ((e = (0, PD.getCurrentInstance)()) == null ? void 0 : e.vnode) || {};
    return t ? {
        [t]: ""
    } : null
};
var lp = Object.defineProperty,
    LD = Object.getOwnPropertyDescriptor,
    kD = Object.getOwnPropertyNames,
    HD = Object.prototype.hasOwnProperty,
    MD = (e, t) => {
        for (var n in t) lp(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    RD = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of kD(t)) !HD.call(e, A) && A !== n && lp(e, A, {
                get: () => t[A],
                enumerable: !(r = LD(t, A)) || r.enumerable
            });
        return e
    },
    ND = e => RD(lp({}, "__esModule", {
        value: !0
    }), e),
    GB = {};
MD(GB, {
    default: () => zD,
    overlayProps: () => WB
});
var zB = ND(GB),
    tu = jt,
    S1 = jt,
    yA = Gn,
    $D = af,
    KD = NB;
const [VD, GD] = (0, yA.createNamespace)("overlay"), WB = {
    show: Boolean,
    zIndex: yA.numericProp,
    duration: yA.numericProp,
    className: yA.unknownProp,
    lockScroll: yA.truthProp,
    lazyRender: yA.truthProp,
    customStyle: Object
};
var zD = (0, S1.defineComponent)({
        name: VD,
        props: WB,
        setup(e, {
            slots: t
        }) {
            const n = (0, S1.ref)(),
                r = (0, KD.useLazyRender)(() => e.show || !e.lazyRender),
                A = s => {
                    e.lockScroll && (0, yA.preventDefault)(s, !0)
                },
                i = r(() => {
                    var s;
                    const a = (0, yA.extend)((0, yA.getZIndexStyle)(e.zIndex), e.customStyle);
                    return (0, yA.isDef)(e.duration) && (a.animationDuration = `${e.duration}s`), (0, tu.withDirectives)((0, tu.createVNode)("div", {
                        ref: n,
                        style: a,
                        class: [GD(), e.className]
                    }, [(s = t.default) == null ? void 0 : s.call(t)]), [
                        [tu.vShow, e.show]
                    ])
                });
            return (0, $D.useEventListener)("touchmove", A, {
                target: n
            }), () => (0, tu.createVNode)(S1.Transition, {
                name: "van-fade",
                appear: !0
            }, {
                default: i
            })
        }
    }),
    WD = Object.create,
    ff = Object.defineProperty,
    jD = Object.getOwnPropertyDescriptor,
    YD = Object.getOwnPropertyNames,
    XD = Object.getPrototypeOf,
    JD = Object.prototype.hasOwnProperty,
    qD = (e, t) => {
        for (var n in t) ff(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    jB = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of YD(t)) !JD.call(e, A) && A !== n && ff(e, A, {
                get: () => t[A],
                enumerable: !(r = jD(t, A)) || r.enumerable
            });
        return e
    },
    ZD = (e, t, n) => (n = e != null ? WD(XD(e)) : {}, jB(t || !e || !e.__esModule ? ff(n, "default", {
        value: e,
        enumerable: !0
    }) : n, e)),
    eP = e => jB(ff({}, "__esModule", {
        value: !0
    }), e),
    YB = {};
qD(YB, {
    Overlay: () => XB,
    default: () => iP,
    overlayProps: () => AP.overlayProps
});
var tP = eP(YB),
    nP = Gn,
    rP = ZD(zB),
    AP = zB;
const XB = (0, nP.withInstall)(rP.default);
var iP = XB,
    up = Object.defineProperty,
    sP = Object.getOwnPropertyDescriptor,
    aP = Object.getOwnPropertyNames,
    oP = Object.prototype.hasOwnProperty,
    lP = (e, t) => {
        for (var n in t) up(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    uP = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of aP(t)) !oP.call(e, A) && A !== n && up(e, A, {
                get: () => t[A],
                enumerable: !(r = sP(t, A)) || r.enumerable
            });
        return e
    },
    cP = e => uP(up({}, "__esModule", {
        value: !0
    }), e),
    JB = {};
lP(JB, {
    default: () => CP,
    popupProps: () => ZB
});
var qB = cP(JB),
    Jr = jt,
    Hr = jt,
    fP = GI,
    Ni = Gn,
    dP = af,
    hP = fB,
    pP = oD,
    gP = NB,
    vP = bD,
    mP = xB,
    e4 = DD,
    BP = PB,
    wP = tP;
const ZB = (0, Ni.extend)({}, fP.popupSharedProps, {
        round: Boolean,
        position: (0, Ni.makeStringProp)("center"),
        closeIcon: (0, Ni.makeStringProp)("cross"),
        closeable: Boolean,
        transition: String,
        iconPrefix: String,
        closeOnPopstate: Boolean,
        closeIconPosition: (0, Ni.makeStringProp)("top-right"),
        safeAreaInsetTop: Boolean,
        safeAreaInsetBottom: Boolean
    }),
    [yP, t4] = (0, Ni.createNamespace)("popup");
var CP = (0, Hr.defineComponent)({
        name: yP,
        inheritAttrs: !1,
        props: ZB,
        emits: ["open", "close", "opened", "closed", "keydown", "update:show", "clickOverlay", "clickCloseIcon"],
        setup(e, {
            emit: t,
            attrs: n,
            slots: r
        }) {
            let A, i;
            const s = (0, Hr.ref)(),
                a = (0, Hr.ref)(),
                o = (0, gP.useLazyRender)(() => e.show || !e.lazyRender),
                l = (0, Hr.computed)(() => {
                    const F = {
                        zIndex: s.value
                    };
                    if ((0, Ni.isDef)(e.duration)) {
                        const T = e.position === "center" ? "animationDuration" : "transitionDuration";
                        F[T] = `${e.duration}s`
                    }
                    return F
                }),
                u = () => {
                    A || (A = !0, s.value = e.zIndex !== void 0 ? +e.zIndex : (0, mP.useGlobalZIndex)(), t("open"))
                },
                f = () => {
                    A && (0, Ni.callInterceptor)(e.beforeClose, {
                        done() {
                            A = !1, t("close"), t("update:show", !1)
                        }
                    })
                },
                d = F => {
                    t("clickOverlay", F), e.closeOnClickOverlay && f()
                },
                p = () => {
                    if (e.overlay) return (0, Jr.createVNode)(wP.Overlay, (0, Jr.mergeProps)({
                        show: e.show,
                        class: e.overlayClass,
                        zIndex: s.value,
                        duration: e.duration,
                        customStyle: e.overlayStyle,
                        role: e.closeOnClickOverlay ? "button" : void 0,
                        tabindex: e.closeOnClickOverlay ? 0 : void 0
                    }, (0, e4.useScopeId)(), {
                        onClick: d
                    }), {
                        default: r["overlay-content"]
                    })
                },
                m = F => {
                    t("clickCloseIcon", F), f()
                },
                g = () => {
                    if (e.closeable) return (0, Jr.createVNode)(BP.Icon, {
                        role: "button",
                        tabindex: 0,
                        name: e.closeIcon,
                        class: [t4("close-icon", e.closeIconPosition), Ni.HAPTICS_FEEDBACK],
                        classPrefix: e.iconPrefix,
                        onClick: m
                    }, null)
                };
            let y;
            const w = () => {
                    y && clearTimeout(y), y = setTimeout(() => {
                        t("opened")
                    })
                },
                B = () => t("closed"),
                x = F => t("keydown", F),
                C = o(() => {
                    var F;
                    const {
                        round: T,
                        position: I,
                        safeAreaInsetTop: D,
                        safeAreaInsetBottom: U
                    } = e;
                    return (0, Jr.withDirectives)((0, Jr.createVNode)("div", (0, Jr.mergeProps)({
                        ref: a,
                        style: l.value,
                        role: "dialog",
                        tabindex: 0,
                        class: [t4({
                            round: T,
                            [I]: I
                        }), {
                            "van-safe-area-top": D,
                            "van-safe-area-bottom": U
                        }],
                        onKeydown: x
                    }, n, (0, e4.useScopeId)()), [(F = r.default) == null ? void 0 : F.call(r), g()]), [
                        [Jr.vShow, e.show]
                    ])
                }),
                b = () => {
                    const {
                        position: F,
                        transition: T,
                        transitionAppear: I
                    } = e, D = F === "center" ? "van-fade" : `van-popup-slide-${F}`;
                    return (0, Jr.createVNode)(Hr.Transition, {
                        name: T || D,
                        appear: I,
                        onAfterEnter: w,
                        onAfterLeave: B
                    }, {
                        default: C
                    })
                };
            return (0, Hr.watch)(() => e.show, F => {
                F && !A && (u(), n.tabindex === 0 && (0, Hr.nextTick)(() => {
                    var T;
                    (T = a.value) == null || T.focus()
                })), !F && A && (A = !1, t("close"))
            }), (0, hP.useExpose)({
                popupRef: a
            }), (0, pP.useLockScroll)(a, () => e.show && e.lockScroll), (0, dP.useEventListener)("popstate", () => {
                e.closeOnPopstate && (f(), i = !1)
            }), (0, Hr.onMounted)(() => {
                e.show && u()
            }), (0, Hr.onActivated)(() => {
                i && (t("update:show", !0), i = !1)
            }), (0, Hr.onDeactivated)(() => {
                e.show && e.teleport && (f(), i = !0)
            }), (0, Hr.provide)(vP.POPUP_TOGGLE_KEY, () => e.show), () => e.teleport ? (0, Jr.createVNode)(Hr.Teleport, {
                to: e.teleport
            }, {
                default: () => [p(), b()]
            }) : (0, Jr.createVNode)(Jr.Fragment, null, [p(), b()])
        }
    }),
    xP = Object.create,
    df = Object.defineProperty,
    EP = Object.getOwnPropertyDescriptor,
    bP = Object.getOwnPropertyNames,
    FP = Object.getPrototypeOf,
    _P = Object.prototype.hasOwnProperty,
    SP = (e, t) => {
        for (var n in t) df(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    e9 = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of bP(t)) !_P.call(e, A) && A !== n && df(e, A, {
                get: () => t[A],
                enumerable: !(r = EP(t, A)) || r.enumerable
            });
        return e
    },
    QP = (e, t, n) => (n = e != null ? xP(FP(e)) : {}, e9(t || !e || !e.__esModule ? df(n, "default", {
        value: e,
        enumerable: !0
    }) : n, e)),
    UP = e => e9(df({}, "__esModule", {
        value: !0
    }), e),
    t9 = {};
SP(t9, {
    Popup: () => n9,
    default: () => OP,
    popupProps: () => PP.popupProps
});
var TP = UP(t9),
    IP = Gn,
    DP = QP(qB),
    PP = qB;
const n9 = (0, IP.withInstall)(DP.default);
var OP = n9,
    cp = Object.defineProperty,
    LP = Object.getOwnPropertyDescriptor,
    kP = Object.getOwnPropertyNames,
    HP = Object.prototype.hasOwnProperty,
    MP = (e, t) => {
        for (var n in t) cp(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    RP = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of kP(t)) !HP.call(e, A) && A !== n && cp(e, A, {
                get: () => t[A],
                enumerable: !(r = LP(t, A)) || r.enumerable
            });
        return e
    },
    NP = e => RP(cp({}, "__esModule", {
        value: !0
    }), e),
    r9 = {};
MP(r9, {
    default: () => GP,
    loadingProps: () => i9
});
var A9 = NP(r9),
    Ya = jt,
    n4 = jt,
    Ws = Gn;
const [$P, Sl] = (0, Ws.createNamespace)("loading"), KP = Array(12).fill(null).map((e, t) => (0, Ya.createVNode)("i", {
    class: Sl("line", String(t + 1))
}, null)), VP = (0, Ya.createVNode)("svg", {
    class: Sl("circular"),
    viewBox: "25 25 50 50"
}, [(0, Ya.createVNode)("circle", {
    cx: "50",
    cy: "50",
    r: "20",
    fill: "none"
}, null)]), i9 = {
    size: Ws.numericProp,
    type: (0, Ws.makeStringProp)("circular"),
    color: String,
    vertical: Boolean,
    textSize: Ws.numericProp,
    textColor: String
};
var GP = (0, n4.defineComponent)({
        name: $P,
        props: i9,
        setup(e, {
            slots: t
        }) {
            const n = (0, n4.computed)(() => (0, Ws.extend)({
                    color: e.color
                }, (0, Ws.getSizeStyle)(e.size))),
                r = () => {
                    const i = e.type === "spinner" ? KP : VP;
                    return (0, Ya.createVNode)("span", {
                        class: Sl("spinner", e.type),
                        style: n.value
                    }, [t.icon ? t.icon() : i])
                },
                A = () => {
                    var i;
                    if (t.default) return (0, Ya.createVNode)("span", {
                        class: Sl("text"),
                        style: {
                            fontSize: (0, Ws.addUnit)(e.textSize),
                            color: (i = e.textColor) != null ? i : e.color
                        }
                    }, [t.default()])
                };
            return () => {
                const {
                    type: i,
                    vertical: s
                } = e;
                return (0, Ya.createVNode)("div", {
                    class: Sl([i, {
                        vertical: s
                    }]),
                    "aria-live": "polite",
                    "aria-busy": !0
                }, [r(), A()])
            }
        }
    }),
    zP = Object.create,
    hf = Object.defineProperty,
    WP = Object.getOwnPropertyDescriptor,
    jP = Object.getOwnPropertyNames,
    YP = Object.getPrototypeOf,
    XP = Object.prototype.hasOwnProperty,
    JP = (e, t) => {
        for (var n in t) hf(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    s9 = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of jP(t)) !XP.call(e, A) && A !== n && hf(e, A, {
                get: () => t[A],
                enumerable: !(r = WP(t, A)) || r.enumerable
            });
        return e
    },
    qP = (e, t, n) => (n = e != null ? zP(YP(e)) : {}, s9(t || !e || !e.__esModule ? hf(n, "default", {
        value: e,
        enumerable: !0
    }) : n, e)),
    ZP = e => s9(hf({}, "__esModule", {
        value: !0
    }), e),
    a9 = {};
JP(a9, {
    Loading: () => o9,
    default: () => AO,
    loadingProps: () => rO.loadingProps
});
var eO = ZP(a9),
    tO = Gn,
    nO = qP(A9),
    rO = A9;
const o9 = (0, tO.withInstall)(nO.default);
var AO = o9,
    fp = Object.defineProperty,
    iO = Object.getOwnPropertyDescriptor,
    sO = Object.getOwnPropertyNames,
    aO = Object.prototype.hasOwnProperty,
    oO = (e, t) => {
        for (var n in t) fp(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    lO = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of sO(t)) !aO.call(e, A) && A !== n && fp(e, A, {
                get: () => t[A],
                enumerable: !(r = iO(t, A)) || r.enumerable
            });
        return e
    },
    uO = e => lO(fp({}, "__esModule", {
        value: !0
    }), e),
    l9 = {};
oO(l9, {
    default: () => mO,
    toastProps: () => u9
});
var cO = uO(l9),
    Qs = jt,
    Xo = jt,
    Nr = Gn,
    fO = FT,
    dO = PB,
    hO = TP,
    pO = eO;
const [gO, Ca] = (0, Nr.createNamespace)("toast"), vO = ["show", "overlay", "teleport", "transition", "overlayClass", "overlayStyle", "closeOnClickOverlay", "zIndex"], u9 = {
    icon: String,
    show: Boolean,
    type: (0, Nr.makeStringProp)("text"),
    overlay: Boolean,
    message: Nr.numericProp,
    iconSize: Nr.numericProp,
    duration: (0, Nr.makeNumberProp)(2e3),
    position: (0, Nr.makeStringProp)("middle"),
    teleport: [String, Object],
    wordBreak: String,
    className: Nr.unknownProp,
    iconPrefix: String,
    transition: (0, Nr.makeStringProp)("van-fade"),
    loadingType: String,
    forbidClick: Boolean,
    overlayClass: Nr.unknownProp,
    overlayStyle: Object,
    closeOnClick: Boolean,
    closeOnClickOverlay: Boolean,
    zIndex: Nr.numericProp
};
var mO = (0, Xo.defineComponent)({
        name: gO,
        props: u9,
        emits: ["update:show"],
        setup(e, {
            emit: t,
            slots: n
        }) {
            let r, A = !1;
            const i = () => {
                    const f = e.show && e.forbidClick;
                    A !== f && (A = f, (0, fO.lockClick)(A))
                },
                s = f => t("update:show", f),
                a = () => {
                    e.closeOnClick && s(!1)
                },
                o = () => clearTimeout(r),
                l = () => {
                    const {
                        icon: f,
                        type: d,
                        iconSize: p,
                        iconPrefix: m,
                        loadingType: g
                    } = e;
                    if (f || d === "success" || d === "fail") return (0, Qs.createVNode)(dO.Icon, {
                        name: f || d,
                        size: p,
                        class: Ca("icon"),
                        classPrefix: m
                    }, null);
                    if (d === "loading") return (0, Qs.createVNode)(pO.Loading, {
                        class: Ca("loading"),
                        size: p,
                        type: g
                    }, null)
                },
                u = () => {
                    const {
                        type: f,
                        message: d
                    } = e;
                    if (n.message) return (0, Qs.createVNode)("div", {
                        class: Ca("text")
                    }, [n.message()]);
                    if ((0, Nr.isDef)(d) && d !== "") return f === "html" ? (0, Qs.createVNode)("div", {
                        key: 0,
                        class: Ca("text"),
                        innerHTML: String(d)
                    }, null) : (0, Qs.createVNode)("div", {
                        class: Ca("text")
                    }, [d])
                };
            return (0, Xo.watch)(() => [e.show, e.forbidClick], i), (0, Xo.watch)(() => [e.show, e.type, e.message, e.duration], () => {
                o(), e.show && e.duration > 0 && (r = setTimeout(() => {
                    s(!1)
                }, e.duration))
            }), (0, Xo.onMounted)(i), (0, Xo.onUnmounted)(i), () => (0, Qs.createVNode)(hO.Popup, (0, Qs.mergeProps)({
                class: [Ca([e.position, e.wordBreak === "normal" ? "break-normal" : e.wordBreak, {
                    [e.type]: !e.icon
                }]), e.className],
                lockScroll: !1,
                onClick: a,
                onClosed: o,
                "onUpdate:show": s
            }, (0, Nr.pick)(e, vO)), {
                default: () => [l(), u()]
            })
        }
    }),
    BO = Object.create,
    pf = Object.defineProperty,
    wO = Object.getOwnPropertyDescriptor,
    yO = Object.getOwnPropertyNames,
    CO = Object.getPrototypeOf,
    xO = Object.prototype.hasOwnProperty,
    EO = (e, t) => {
        for (var n in t) pf(e, n, {
            get: t[n],
            enumerable: !0
        })
    },
    c9 = (e, t, n, r) => {
        if (t && typeof t == "object" || typeof t == "function")
            for (let A of yO(t)) !xO.call(e, A) && A !== n && pf(e, A, {
                get: () => t[A],
                enumerable: !(r = wO(t, A)) || r.enumerable
            });
        return e
    },
    bO = (e, t, n) => (n = e != null ? BO(CO(e)) : {}, c9(t || !e || !e.__esModule ? pf(n, "default", {
        value: e,
        enumerable: !0
    }) : n, e)),
    FO = e => c9(pf({}, "__esModule", {
        value: !0
    }), e),
    f9 = {};
EO(f9, {
    allowMultipleToast: () => LO,
    closeToast: () => DO,
    resetToastDefaultOptions: () => OO,
    setToastDefaultOptions: () => PO,
    showFailToast: () => IO,
    showLoadingToast: () => UO,
    showSuccessToast: () => TO,
    showToast: () => p9
});
var Gte = FO(f9),
    r4 = jt,
    Q1 = jt,
    ea = Gn,
    A4 = pT,
    _O = bO(cO);
const d9 = {
    icon: "",
    type: "text",
    message: "",
    className: "",
    overlay: !1,
    onClose: void 0,
    onOpened: void 0,
    duration: 2e3,
    teleport: "body",
    iconSize: void 0,
    iconPrefix: void 0,
    position: "middle",
    transition: "van-fade",
    forbidClick: !1,
    loadingType: void 0,
    overlayClass: "",
    overlayStyle: void 0,
    closeOnClick: !1,
    closeOnClickOverlay: !1
};
let nA = [],
    gf = !1,
    ac = (0, ea.extend)({}, d9);
const oc = new Map;

function h9(e) {
    return (0, ea.isObject)(e) ? e : {
        message: e
    }
}

function SO() {
    const {
        instance: e,
        unmount: t
    } = (0, A4.mountComponent)({
        setup() {
            const n = (0, Q1.ref)(""),
                {
                    open: r,
                    state: A,
                    close: i,
                    toggle: s
                } = (0, A4.usePopupState)(),
                a = () => {
                    gf && (nA = nA.filter(l => l !== e), t())
                },
                o = () => {
                    const l = {
                        onClosed: a,
                        "onUpdate:show": s
                    };
                    return (0, r4.createVNode)(_O.default, (0, r4.mergeProps)(A, l), null)
                };
            return (0, Q1.watch)(n, l => {
                A.message = l
            }), (0, Q1.getCurrentInstance)().render = o, {
                open: r,
                close: i,
                message: n
            }
        }
    });
    return e
}

function QO() {
    if (!nA.length || gf) {
        const e = SO();
        nA.push(e)
    }
    return nA[nA.length - 1]
}

function p9(e = {}) {
    if (!ea.inBrowser) return {};
    const t = QO(),
        n = h9(e);
    return t.open((0, ea.extend)({}, ac, oc.get(n.type || ac.type), n)), t
}
const dp = e => t => p9((0, ea.extend)({
        type: e
    }, h9(t))),
    UO = dp("loading"),
    TO = dp("success"),
    IO = dp("fail"),
    DO = e => {
        var t;
        nA.length && (e ? (nA.forEach(n => {
            n.close()
        }), nA = []) : gf ? (t = nA.shift()) == null || t.close() : nA[0].close())
    };

function PO(e, t) {
    typeof e == "string" ? oc.set(e, t) : (0, ea.extend)(ac, e)
}
const OO = e => {
        typeof e == "string" ? oc.delete(e) : (ac = (0, ea.extend)({}, d9), oc.clear())
    },
    LO = (e = !0) => {
        gf = e
    };
var g9 = {
    exports: {}
};

function kO(e) {
    throw new Error('Could not dynamically require "' + e + '". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')
}
var U1 = {
    exports: {}
};
const HO = {},
    MO = Object.freeze(Object.defineProperty({
        __proto__: null,
        default: HO
    }, Symbol.toStringTag, {
        value: "Module"
    })),
    RO = P6(MO);
var i4;

function Ft() {
    return i4 || (i4 = 1, function(e, t) {
        (function(n, r) {
            e.exports = r()
        })(ht, function() {
            var n = n || function(r, A) {
                var i;
                if (typeof window < "u" && window.crypto && (i = window.crypto), typeof self < "u" && self.crypto && (i = self.crypto), typeof globalThis < "u" && globalThis.crypto && (i = globalThis.crypto), !i && typeof window < "u" && window.msCrypto && (i = window.msCrypto), !i && typeof ht < "u" && ht.crypto && (i = ht.crypto), !i && typeof kO == "function") try {
                    i = RO
                } catch {}
                var s = function() {
                        if (i) {
                            if (typeof i.getRandomValues == "function") try {
                                return i.getRandomValues(new Uint32Array(1))[0]
                            } catch {}
                            if (typeof i.randomBytes == "function") try {
                                return i.randomBytes(4).readInt32LE()
                            } catch {}
                        }
                        throw new Error("Native crypto module could not be used to get secure random number.")
                    },
                    a = Object.create || function() {
                        function B() {}
                        return function(x) {
                            var C;
                            return B.prototype = x, C = new B, B.prototype = null, C
                        }
                    }(),
                    o = {},
                    l = o.lib = {},
                    u = l.Base = function() {
                        return {
                            extend: function(B) {
                                var x = a(this);
                                return B && x.mixIn(B), (!x.hasOwnProperty("init") || this.init === x.init) && (x.init = function() {
                                    x.$super.init.apply(this, arguments)
                                }), x.init.prototype = x, x.$super = this, x
                            },
                            create: function() {
                                var B = this.extend();
                                return B.init.apply(B, arguments), B
                            },
                            init: function() {},
                            mixIn: function(B) {
                                for (var x in B) B.hasOwnProperty(x) && (this[x] = B[x]);
                                B.hasOwnProperty("toString") && (this.toString = B.toString)
                            },
                            clone: function() {
                                return this.init.prototype.extend(this)
                            }
                        }
                    }(),
                    f = l.WordArray = u.extend({
                        init: function(B, x) {
                            B = this.words = B || [], x != A ? this.sigBytes = x : this.sigBytes = B.length * 4
                        },
                        toString: function(B) {
                            return (B || p).stringify(this)
                        },
                        concat: function(B) {
                            var x = this.words,
                                C = B.words,
                                b = this.sigBytes,
                                F = B.sigBytes;
                            if (this.clamp(), b % 4)
                                for (var T = 0; T < F; T++) {
                                    var I = C[T >>> 2] >>> 24 - T % 4 * 8 & 255;
                                    x[b + T >>> 2] |= I << 24 - (b + T) % 4 * 8
                                } else
                                    for (var D = 0; D < F; D += 4) x[b + D >>> 2] = C[D >>> 2];
                            return this.sigBytes += F, this
                        },
                        clamp: function() {
                            var B = this.words,
                                x = this.sigBytes;
                            B[x >>> 2] &= 4294967295 << 32 - x % 4 * 8, B.length = r.ceil(x / 4)
                        },
                        clone: function() {
                            var B = u.clone.call(this);
                            return B.words = this.words.slice(0), B
                        },
                        random: function(B) {
                            for (var x = [], C = 0; C < B; C += 4) x.push(s());
                            return new f.init(x, B)
                        }
                    }),
                    d = o.enc = {},
                    p = d.Hex = {
                        stringify: function(B) {
                            for (var x = B.words, C = B.sigBytes, b = [], F = 0; F < C; F++) {
                                var T = x[F >>> 2] >>> 24 - F % 4 * 8 & 255;
                                b.push((T >>> 4).toString(16)), b.push((T & 15).toString(16))
                            }
                            return b.join("")
                        },
                        parse: function(B) {
                            for (var x = B.length, C = [], b = 0; b < x; b += 2) C[b >>> 3] |= parseInt(B.substr(b, 2), 16) << 24 - b % 8 * 4;
                            return new f.init(C, x / 2)
                        }
                    },
                    m = d.Latin1 = {
                        stringify: function(B) {
                            for (var x = B.words, C = B.sigBytes, b = [], F = 0; F < C; F++) {
                                var T = x[F >>> 2] >>> 24 - F % 4 * 8 & 255;
                                b.push(String.fromCharCode(T))
                            }
                            return b.join("")
                        },
                        parse: function(B) {
                            for (var x = B.length, C = [], b = 0; b < x; b++) C[b >>> 2] |= (B.charCodeAt(b) & 255) << 24 - b % 4 * 8;
                            return new f.init(C, x)
                        }
                    },
                    g = d.Utf8 = {
                        stringify: function(B) {
                            try {
                                return decodeURIComponent(escape(m.stringify(B)))
                            } catch {
                                throw new Error("Malformed UTF-8 data")
                            }
                        },
                        parse: function(B) {
                            return m.parse(unescape(encodeURIComponent(B)))
                        }
                    },
                    y = l.BufferedBlockAlgorithm = u.extend({
                        reset: function() {
                            this._data = new f.init, this._nDataBytes = 0
                        },
                        _append: function(B) {
                            typeof B == "string" && (B = g.parse(B)), this._data.concat(B), this._nDataBytes += B.sigBytes
                        },
                        _process: function(B) {
                            var x, C = this._data,
                                b = C.words,
                                F = C.sigBytes,
                                T = this.blockSize,
                                I = T * 4,
                                D = F / I;
                            B ? D = r.ceil(D) : D = r.max((D | 0) - this._minBufferSize, 0);
                            var U = D * T,
                                Q = r.min(U * 4, F);
                            if (U) {
                                for (var O = 0; O < U; O += T) this._doProcessBlock(b, O);
                                x = b.splice(0, U), C.sigBytes -= Q
                            }
                            return new f.init(x, Q)
                        },
                        clone: function() {
                            var B = u.clone.call(this);
                            return B._data = this._data.clone(), B
                        },
                        _minBufferSize: 0
                    });
                l.Hasher = y.extend({
                    cfg: u.extend(),
                    init: function(B) {
                        this.cfg = this.cfg.extend(B), this.reset()
                    },
                    reset: function() {
                        y.reset.call(this), this._doReset()
                    },
                    update: function(B) {
                        return this._append(B), this._process(), this
                    },
                    finalize: function(B) {
                        B && this._append(B);
                        var x = this._doFinalize();
                        return x
                    },
                    blockSize: 16,
                    _createHelper: function(B) {
                        return function(x, C) {
                            return new B.init(C).finalize(x)
                        }
                    },
                    _createHmacHelper: function(B) {
                        return function(x, C) {
                            return new w.HMAC.init(B, C).finalize(x)
                        }
                    }
                });
                var w = o.algo = {};
                return o
            }(Math);
            return n
        })
    }(U1)), U1.exports
}
var T1 = {
        exports: {}
    },
    s4;

function vf() {
    return s4 || (s4 = 1, function(e, t) {
        (function(n, r) {
            e.exports = r(Ft())
        })(ht, function(n) {
            return function(r) {
                var A = n,
                    i = A.lib,
                    s = i.Base,
                    a = i.WordArray,
                    o = A.x64 = {};
                o.Word = s.extend({
                    init: function(l, u) {
                        this.high = l, this.low = u
                    }
                }), o.WordArray = s.extend({
                    init: function(l, u) {
                        l = this.words = l || [], u != r ? this.sigBytes = u : this.sigBytes = l.length * 8
                    },
                    toX32: function() {
                        for (var l = this.words, u = l.length, f = [], d = 0; d < u; d++) {
                            var p = l[d];
                            f.push(p.high), f.push(p.low)
                        }
                        return a.create(f, this.sigBytes)
                    },
                    clone: function() {
                        for (var l = s.clone.call(this), u = l.words = this.words.slice(0), f = u.length, d = 0; d < f; d++) u[d] = u[d].clone();
                        return l
                    }
                })
            }(), n
        })
    }(T1)), T1.exports
}
var I1 = {
        exports: {}
    },
    a4;

function NO() {
    return a4 || (a4 = 1, function(e, t) {
        (function(n, r) {
            e.exports = r(Ft())
        })(ht, function(n) {
            return function() {
                if (typeof ArrayBuffer == "function") {
                    var r = n,
                        A = r.lib,
                        i = A.WordArray,
                        s = i.init,
                        a = i.init = function(o) {
                            if (o instanceof ArrayBuffer && (o = new Uint8Array(o)), (o instanceof Int8Array || typeof Uint8ClampedArray < "u" && o instanceof Uint8ClampedArray || o instanceof Int16Array || o instanceof Uint16Array || o instanceof Int32Array || o instanceof Uint32Array || o instanceof Float32Array || o instanceof Float64Array) && (o = new Uint8Array(o.buffer, o.byteOffset, o.byteLength)), o instanceof Uint8Array) {
                                for (var l = o.byteLength, u = [], f = 0; f < l; f++) u[f >>> 2] |= o[f] << 24 - f % 4 * 8;
                                s.call(this, u, l)
                            } else s.apply(this, arguments)
                        };
                    a.prototype = i
                }
            }(), n.lib.WordArray
        })
    }(I1)), I1.exports
}
var D1 = {
        exports: {}
    },
    o4;

function $O() {
    return o4 || (o4 = 1, function(e, t) {
        (function(n, r) {
            e.exports = r(Ft())
        })(ht, function(n) {
            return function() {
                var r = n,
                    A = r.lib,
                    i = A.WordArray,
                    s = r.enc;
                s.Utf16 = s.Utf16BE = {
                    stringify: function(o) {
                        for (var l = o.words, u = o.sigBytes, f = [], d = 0; d < u; d += 2) {
                            var p = l[d >>> 2] >>> 16 - d % 4 * 8 & 65535;
                            f.push(String.fromCharCode(p))
                        }
                        return f.join("")
                    },
                    parse: function(o) {
                        for (var l = o.length, u = [], f = 0; f < l; f++) u[f >>> 1] |= o.charCodeAt(f) << 16 - f % 2 * 16;
                        return i.create(u, l * 2)
                    }
                }, s.Utf16LE = {
                    stringify: function(o) {
                        for (var l = o.words, u = o.sigBytes, f = [], d = 0; d < u; d += 2) {
                            var p = a(l[d >>> 2] >>> 16 - d % 4 * 8 & 65535);
                            f.push(String.fromCharCode(p))
                        }
                        return f.join("")
                    },
                    parse: function(o) {
                        for (var l = o.length, u = [], f = 0; f < l; f++) u[f >>> 1] |= a(o.charCodeAt(f) << 16 - f % 2 * 16);
                        return i.create(u, l * 2)
                    }
                };

                function a(o) {
                    return o << 8 & 4278255360 | o >>> 8 & 16711935
                }
            }(), n.enc.Utf16
        })
    }(D1)), D1.exports
}
var P1 = {
        exports: {}
    },
    l4;

function aa() {
    return l4 || (l4 = 1, function(e, t) {
        (function(n, r) {
            e.exports = r(Ft())
        })(ht, function(n) {
            return function() {
                var r = n,
                    A = r.lib,
                    i = A.WordArray,
                    s = r.enc;
                s.Base64 = {
                    stringify: function(o) {
                        var l = o.words,
                            u = o.sigBytes,
                            f = this._map;
                        o.clamp();
                        for (var d = [], p = 0; p < u; p += 3)
                            for (var m = l[p >>> 2] >>> 24 - p % 4 * 8 & 255, g = l[p + 1 >>> 2] >>> 24 - (p + 1) % 4 * 8 & 255, y = l[p + 2 >>> 2] >>> 24 - (p + 2) % 4 * 8 & 255, w = m << 16 | g << 8 | y, B = 0; B < 4 && p + B * .75 < u; B++) d.push(f.charAt(w >>> 6 * (3 - B) & 63));
                        var x = f.charAt(64);
                        if (x)
                            for (; d.length % 4;) d.push(x);
                        return d.join("")
                    },
                    parse: function(o) {
                        var l = o.length,
                            u = this._map,
                            f = this._reverseMap;
                        if (!f) {
                            f = this._reverseMap = [];
                            for (var d = 0; d < u.length; d++) f[u.charCodeAt(d)] = d
                        }
                        var p = u.charAt(64);
                        if (p) {
                            var m = o.indexOf(p);
                            m !== -1 && (l = m)
                        }
                        return a(o, l, f)
                    },
                    _map: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="
                };

                function a(o, l, u) {
                    for (var f = [], d = 0, p = 0; p < l; p++)
                        if (p % 4) {
                            var m = u[o.charCodeAt(p - 1)] << p % 4 * 2,
                                g = u[o.charCodeAt(p)] >>> 6 - p % 4 * 2,
                                y = m | g;
                            f[d >>> 2] |= y << 24 - d % 4 * 8, d++
                        }
                    return i.create(f, d)
                }
            }(), n.enc.Base64
        })
    }(P1)), P1.exports
}
var O1 = {
        exports: {}
    },
    u4;

function KO() {
    return u4 || (u4 = 1, function(e, t) {
        (function(n, r) {
            e.exports = r(Ft())
        })(ht, function(n) {
            return function() {
                var r = n,
                    A = r.lib,
                    i = A.WordArray,
                    s = r.enc;
                s.Base64url = {
                    stringify: function(o, l) {
                        l === void 0 && (l = !0);
                        var u = o.words,
                            f = o.sigBytes,
                            d = l ? this._safe_map : this._map;
                        o.clamp();
                        for (var p = [], m = 0; m < f; m += 3)
                            for (var g = u[m >>> 2] >>> 24 - m % 4 * 8 & 255, y = u[m + 1 >>> 2] >>> 24 - (m + 1) % 4 * 8 & 255, w = u[m + 2 >>> 2] >>> 24 - (m + 2) % 4 * 8 & 255, B = g << 16 | y << 8 | w, x = 0; x < 4 && m + x * .75 < f; x++) p.push(d.charAt(B >>> 6 * (3 - x) & 63));
                        var C = d.charAt(64);
                        if (C)
                            for (; p.length % 4;) p.push(C);
                        return p.join("")
                    },
                    parse: function(o, l) {
                        l === void 0 && (l = !0);
                        var u = o.length,
                            f = l ? this._safe_map : this._map,
                            d = this._reverseMap;
                        if (!d) {
                            d = this._reverseMap = [];
                            for (var p = 0; p < f.length; p++) d[f.charCodeAt(p)] = p
                        }
                        var m = f.charAt(64);
                        if (m) {
                            var g = o.indexOf(m);
                            g !== -1 && (u = g)
                        }
                        return a(o, u, d)
                    },
                    _map: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",
                    _safe_map: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"
                };

                function a(o, l, u) {
                    for (var f = [], d = 0, p = 0; p < l; p++)
                        if (p % 4) {
                            var m = u[o.charCodeAt(p - 1)] << p % 4 * 2,
                                g = u[o.charCodeAt(p)] >>> 6 - p % 4 * 2,
                                y = m | g;
                            f[d >>> 2] |= y << 24 - d % 4 * 8, d++
                        }
                    return i.create(f, d)
                }
            }(), n.enc.Base64url
        })
    }(O1)), O1.exports
}
var L1 = {
        exports: {}
    },
    c4;

function oa() {
    return c4 || (c4 = 1, function(e, t) {
        (function(n, r) {
            e.exports = r(Ft())
        })(ht, function(n) {
            return function(r) {
                var A = n,
                    i = A.lib,
                    s = i.WordArray,
                    a = i.Hasher,
                    o = A.algo,
                    l = [];
                (function() {
                    for (var g = 0; g < 64; g++) l[g] = r.abs(r.sin(g + 1)) * 4294967296 | 0
                })();
                var u = o.MD5 = a.extend({
                    _doReset: function() {
                        this._hash = new s.init([1732584193, 4023233417, 2562383102, 271733878])
                    },
                    _doProcessBlock: function(g, y) {
                        for (var w = 0; w < 16; w++) {
                            var B = y + w,
                                x = g[B];
                            g[B] = (x << 8 | x >>> 24) & 16711935 | (x << 24 | x >>> 8) & 4278255360
                        }
                        var C = this._hash.words,
                            b = g[y + 0],
                            F = g[y + 1],
                            T = g[y + 2],
                            I = g[y + 3],
                            D = g[y + 4],
                            U = g[y + 5],
                            Q = g[y + 6],
                            O = g[y + 7],
                            N = g[y + 8],
                            J = g[y + 9],
                            j = g[y + 10],
                            V = g[y + 11],
                            ae = g[y + 12],
                            Y = g[y + 13],
                            ue = g[y + 14],
                            ye = g[y + 15],
                            ee = C[0],
                            ce = C[1],
                            ve = C[2],
                            xe = C[3];
                        ee = f(ee, ce, ve, xe, b, 7, l[0]), xe = f(xe, ee, ce, ve, F, 12, l[1]), ve = f(ve, xe, ee, ce, T, 17, l[2]), ce = f(ce, ve, xe, ee, I, 22, l[3]), ee = f(ee, ce, ve, xe, D, 7, l[4]), xe = f(xe, ee, ce, ve, U, 12, l[5]), ve = f(ve, xe, ee, ce, Q, 17, l[6]), ce = f(ce, ve, xe, ee, O, 22, l[7]), ee = f(ee, ce, ve, xe, N, 7, l[8]), xe = f(xe, ee, ce, ve, J, 12, l[9]), ve = f(ve, xe, ee, ce, j, 17, l[10]), ce = f(ce, ve, xe, ee, V, 22, l[11]), ee = f(ee, ce, ve, xe, ae, 7, l[12]), xe = f(xe, ee, ce, ve, Y, 12, l[13]), ve = f(ve, xe, ee, ce, ue, 17, l[14]), ce = f(ce, ve, xe, ee, ye, 22, l[15]), ee = d(ee, ce, ve, xe, F, 5, l[16]), xe = d(xe, ee, ce, ve, Q, 9, l[17]), ve = d(ve, xe, ee, ce, V, 14, l[18]), ce = d(ce, ve, xe, ee, b, 20, l[19]), ee = d(ee, ce, ve, xe, U, 5, l[20]), xe = d(xe, ee, ce, ve, j, 9, l[21]), ve = d(ve, xe, ee, ce, ye, 14, l[22]), ce = d(ce, ve, xe, ee, D, 20, l[23]), ee = d(ee, ce, ve, xe, J, 5, l[24]), xe = d(xe, ee, ce, ve, ue, 9, l[25]), ve = d(ve, xe, ee, ce, I, 14, l[26]), ce = d(ce, ve, xe, ee, N, 20, l[27]), ee = d(ee, ce, ve, xe, Y, 5, l[28]), xe = d(xe, ee, ce, ve, T, 9, l[29]), ve = d(ve, xe, ee, ce, O, 14, l[30]), ce = d(ce, ve, xe, ee, ae, 20, l[31]), ee = p(ee, ce, ve, xe, U, 4, l[32]), xe = p(xe, ee, ce, ve, N, 11, l[33]), ve = p(ve, xe, ee, ce, V, 16, l[34]), ce = p(ce, ve, xe, ee, ue, 23, l[35]), ee = p(ee, ce, ve, xe, F, 4, l[36]), xe = p(xe, ee, ce, ve, D, 11, l[37]), ve = p(ve, xe, ee, ce, O, 16, l[38]), ce = p(ce, ve, xe, ee, j, 23, l[39]), ee = p(ee, ce, ve, xe, Y, 4, l[40]), xe = p(xe, ee, ce, ve, b, 11, l[41]), ve = p(ve, xe, ee, ce, I, 16, l[42]), ce = p(ce, ve, xe, ee, Q, 23, l[43]), ee = p(ee, ce, ve, xe, J, 4, l[44]), xe = p(xe, ee, ce, ve, ae, 11, l[45]), ve = p(ve, xe, ee, ce, ye, 16, l[46]), ce = p(ce, ve, xe, ee, T, 23, l[47]), ee = m(ee, ce, ve, xe, b, 6, l[48]), xe = m(xe, ee, ce, ve, O, 10, l[49]), ve = m(ve, xe, ee, ce, ue, 15, l[50]), ce = m(ce, ve, xe, ee, U, 21, l[51]), ee = m(ee, ce, ve, xe, ae, 6, l[52]), xe = m(xe, ee, ce, ve, I, 10, l[53]), ve = m(ve, xe, ee, ce, j, 15, l[54]), ce = m(ce, ve, xe, ee, F, 21, l[55]), ee = m(ee, ce, ve, xe, N, 6, l[56]), xe = m(xe, ee, ce, ve, ye, 10, l[57]), ve = m(ve, xe, ee, ce, Q, 15, l[58]), ce = m(ce, ve, xe, ee, Y, 21, l[59]), ee = m(ee, ce, ve, xe, D, 6, l[60]), xe = m(xe, ee, ce, ve, V, 10, l[61]), ve = m(ve, xe, ee, ce, T, 15, l[62]), ce = m(ce, ve, xe, ee, J, 21, l[63]), C[0] = C[0] + ee | 0, C[1] = C[1] + ce | 0, C[2] = C[2] + ve | 0, C[3] = C[3] + xe | 0
                    },
                    _doFinalize: function() {
                        var g = this._data,
                            y = g.words,
                            w = this._nDataBytes * 8,
                            B = g.sigBytes * 8;
                        y[B >>> 5] |= 128 << 24 - B % 32;
                        var x = r.floor(w / 4294967296),
                            C = w;
                        y[(B + 64 >>> 9 << 4) + 15] = (x << 8 | x >>> 24) & 16711935 | (x << 24 | x >>> 8) & 4278255360, y[(B + 64 >>> 9 << 4) + 14] = (C << 8 | C >>> 24) & 16711935 | (C << 24 | C >>> 8) & 4278255360, g.sigBytes = (y.length + 1) * 4, this._process();
                        for (var b = this._hash, F = b.words, T = 0; T < 4; T++) {
                            var I = F[T];
                            F[T] = (I << 8 | I >>> 24) & 16711935 | (I << 24 | I >>> 8) & 4278255360
                        }
                        return b
                    },
                    clone: function() {
                        var g = a.clone.call(this);
                        return g._hash = this._hash.clone(), g
                    }
                });

                function f(g, y, w, B, x, C, b) {
                    var F = g + (y & w | ~y & B) + x + b;
                    return (F << C | F >>> 32 - C) + y
                }

                function d(g, y, w, B, x, C, b) {
                    var F = g + (y & B | w & ~B) + x + b;
                    return (F << C | F >>> 32 - C) + y
                }

                function p(g, y, w, B, x, C, b) {
                    var F = g + (y ^ w ^ B) + x + b;
                    return (F << C | F >>> 32 - C) + y
                }

                function m(g, y, w, B, x, C, b) {
                    var F = g + (w ^ (y | ~B)) + x + b;
                    return (F << C | F >>> 32 - C) + y
                }
                A.MD5 = a._createHelper(u), A.HmacMD5 = a._createHmacHelper(u)
            }(Math), n.MD5
        })
    }(L1)), L1.exports
}
var k1 = {
        exports: {}
    },
    f4;

function v9() {
    return f4 || (f4 = 1, function(e, t) {
        (function(n, r) {
            e.exports = r(Ft())
        })(ht, function(n) {
            return function() {
                var r = n,
                    A = r.lib,
                    i = A.WordArray,
                    s = A.Hasher,
                    a = r.algo,
                    o = [],
                    l = a.SHA1 = s.extend({
                        _doReset: function() {
                            this._hash = new i.init([1732584193, 4023233417, 2562383102, 271733878, 3285377520])
                        },
                        _doProcessBlock: function(u, f) {
                            for (var d = this._hash.words, p = d[0], m = d[1], g = d[2], y = d[3], w = d[4], B = 0; B < 80; B++) {
                                if (B < 16) o[B] = u[f + B] | 0;
                                else {
                                    var x = o[B - 3] ^ o[B - 8] ^ o[B - 14] ^ o[B - 16];
                                    o[B] = x << 1 | x >>> 31
                                }
                                var C = (p << 5 | p >>> 27) + w + o[B];
                                B < 20 ? C += (m & g | ~m & y) + 1518500249 : B < 40 ? C += (m ^ g ^ y) + 1859775393 : B < 60 ? C += (m & g | m & y | g & y) - 1894007588 : C += (m ^ g ^ y) - 899497514, w = y, y = g, g = m << 30 | m >>> 2, m = p, p = C
                            }
                            d[0] = d[0] + p | 0, d[1] = d[1] + m | 0, d[2] = d[2] + g | 0, d[3] = d[3] + y | 0, d[4] = d[4] + w | 0
                        },
                        _doFinalize: function() {
                            var u = this._data,
                                f = u.words,
                                d = this._nDataBytes * 8,
                                p = u.sigBytes * 8;
                            return f[p >>> 5] |= 128 << 24 - p % 32, f[(p + 64 >>> 9 << 4) + 14] = Math.floor(d / 4294967296), f[(p + 64 >>> 9 << 4) + 15] = d, u.sigBytes = f.length * 4, this._process(), this._hash
                        },
                        clone: function() {
                            var u = s.clone.call(this);
                            return u._hash = this._hash.clone(), u
                        }
                    });
                r.SHA1 = s._createHelper(l), r.HmacSHA1 = s._createHmacHelper(l)
            }(), n.SHA1
        })
    }(k1)), k1.exports
}
var H1 = {
        exports: {}
    },
    d4;

function hp() {
    return d4 || (d4 = 1, function(e, t) {
        (function(n, r) {
            e.exports = r(Ft())
        })(ht, function(n) {
            return function(r) {
                var A = n,
                    i = A.lib,
                    s = i.WordArray,
                    a = i.Hasher,
                    o = A.algo,
                    l = [],
                    u = [];
                (function() {
                    function p(w) {
                        for (var B = r.sqrt(w), x = 2; x <= B; x++)
                            if (!(w % x)) return !1;
                        return !0
                    }

                    function m(w) {
                        return (w - (w | 0)) * 4294967296 | 0
                    }
                    for (var g = 2, y = 0; y < 64;) p(g) && (y < 8 && (l[y] = m(r.pow(g, 1 / 2))), u[y] = m(r.pow(g, 1 / 3)), y++), g++
                })();
                var f = [],
                    d = o.SHA256 = a.extend({
                        _doReset: function() {
                            this._hash = new s.init(l.slice(0))
                        },
                        _doProcessBlock: function(p, m) {
                            for (var g = this._hash.words, y = g[0], w = g[1], B = g[2], x = g[3], C = g[4], b = g[5], F = g[6], T = g[7], I = 0; I < 64; I++) {
                                if (I < 16) f[I] = p[m + I] | 0;
                                else {
                                    var D = f[I - 15],
                                        U = (D << 25 | D >>> 7) ^ (D << 14 | D >>> 18) ^ D >>> 3,
                                        Q = f[I - 2],
                                        O = (Q << 15 | Q >>> 17) ^ (Q << 13 | Q >>> 19) ^ Q >>> 10;
                                    f[I] = U + f[I - 7] + O + f[I - 16]
                                }
                                var N = C & b ^ ~C & F,
                                    J = y & w ^ y & B ^ w & B,
                                    j = (y << 30 | y >>> 2) ^ (y << 19 | y >>> 13) ^ (y << 10 | y >>> 22),
                                    V = (C << 26 | C >>> 6) ^ (C << 21 | C >>> 11) ^ (C << 7 | C >>> 25),
                                    ae = T + V + N + u[I] + f[I],
                                    Y = j + J;
                                T = F, F = b, b = C, C = x + ae | 0, x = B, B = w, w = y, y = ae + Y | 0
                            }
                            g[0] = g[0] + y | 0, g[1] = g[1] + w | 0, g[2] = g[2] + B | 0, g[3] = g[3] + x | 0, g[4] = g[4] + C | 0, g[5] = g[5] + b | 0, g[6] = g[6] + F | 0, g[7] = g[7] + T | 0
                        },
                        _doFinalize: function() {
                            var p = this._data,
                                m = p.words,
                                g = this._nDataBytes * 8,
                                y = p.sigBytes * 8;
                            return m[y >>> 5] |= 128 << 24 - y % 32, m[(y + 64 >>> 9 << 4) + 14] = r.floor(g / 4294967296), m[(y + 64 >>> 9 << 4) + 15] = g, p.sigBytes = m.length * 4, this._process(), this._hash
                        },
                        clone: function() {
                            var p = a.clone.call(this);
                            return p._hash = this._hash.clone(), p
                        }
                    });
                A.SHA256 = a._createHelper(d), A.HmacSHA256 = a._createHmacHelper(d)
            }(Math), n.SHA256
        })
    }(H1)), H1.exports
}
var M1 = {
        exports: {}
    },
    h4;

function VO() {
    return h4 || (h4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), hp())
        })(ht, function(n) {
            return function() {
                var r = n,
                    A = r.lib,
                    i = A.WordArray,
                    s = r.algo,
                    a = s.SHA256,
                    o = s.SHA224 = a.extend({
                        _doReset: function() {
                            this._hash = new i.init([3238371032, 914150663, 812702999, 4144912697, 4290775857, 1750603025, 1694076839, 3204075428])
                        },
                        _doFinalize: function() {
                            var l = a._doFinalize.call(this);
                            return l.sigBytes -= 4, l
                        }
                    });
                r.SHA224 = a._createHelper(o), r.HmacSHA224 = a._createHmacHelper(o)
            }(), n.SHA224
        })
    }(M1)), M1.exports
}
var R1 = {
        exports: {}
    },
    p4;

function m9() {
    return p4 || (p4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), vf())
        })(ht, function(n) {
            return function() {
                var r = n,
                    A = r.lib,
                    i = A.Hasher,
                    s = r.x64,
                    a = s.Word,
                    o = s.WordArray,
                    l = r.algo;

                function u() {
                    return a.create.apply(a, arguments)
                }
                var f = [u(1116352408, 3609767458), u(1899447441, 602891725), u(3049323471, 3964484399), u(3921009573, 2173295548), u(961987163, 4081628472), u(1508970993, 3053834265), u(2453635748, 2937671579), u(2870763221, 3664609560), u(3624381080, 2734883394), u(310598401, 1164996542), u(607225278, 1323610764), u(1426881987, 3590304994), u(1925078388, 4068182383), u(2162078206, 991336113), u(2614888103, 633803317), u(3248222580, 3479774868), u(3835390401, 2666613458), u(4022224774, 944711139), u(264347078, 2341262773), u(604807628, 2007800933), u(770255983, 1495990901), u(1249150122, 1856431235), u(1555081692, 3175218132), u(1996064986, 2198950837), u(2554220882, 3999719339), u(2821834349, 766784016), u(2952996808, 2566594879), u(3210313671, 3203337956), u(3336571891, 1034457026), u(3584528711, 2466948901), u(113926993, 3758326383), u(338241895, 168717936), u(666307205, 1188179964), u(773529912, 1546045734), u(1294757372, 1522805485), u(1396182291, 2643833823), u(1695183700, 2343527390), u(1986661051, 1014477480), u(2177026350, 1206759142), u(2456956037, 344077627), u(2730485921, 1290863460), u(2820302411, 3158454273), u(3259730800, 3505952657), u(3345764771, 106217008), u(3516065817, 3606008344), u(3600352804, 1432725776), u(4094571909, 1467031594), u(275423344, 851169720), u(430227734, 3100823752), u(506948616, 1363258195), u(659060556, 3750685593), u(883997877, 3785050280), u(958139571, 3318307427), u(1322822218, 3812723403), u(1537002063, 2003034995), u(1747873779, 3602036899), u(1955562222, 1575990012), u(2024104815, 1125592928), u(2227730452, 2716904306), u(2361852424, 442776044), u(2428436474, 593698344), u(2756734187, 3733110249), u(3204031479, 2999351573), u(3329325298, 3815920427), u(3391569614, 3928383900), u(3515267271, 566280711), u(3940187606, 3454069534), u(4118630271, 4000239992), u(116418474, 1914138554), u(174292421, 2731055270), u(289380356, 3203993006), u(460393269, 320620315), u(685471733, 587496836), u(852142971, 1086792851), u(1017036298, 365543100), u(1126000580, 2618297676), u(1288033470, 3409855158), u(1501505948, 4234509866), u(1607167915, 987167468), u(1816402316, 1246189591)],
                    d = [];
                (function() {
                    for (var m = 0; m < 80; m++) d[m] = u()
                })();
                var p = l.SHA512 = i.extend({
                    _doReset: function() {
                        this._hash = new o.init([new a.init(1779033703, 4089235720), new a.init(3144134277, 2227873595), new a.init(1013904242, 4271175723), new a.init(2773480762, 1595750129), new a.init(1359893119, 2917565137), new a.init(2600822924, 725511199), new a.init(528734635, 4215389547), new a.init(1541459225, 327033209)])
                    },
                    _doProcessBlock: function(m, g) {
                        for (var y = this._hash.words, w = y[0], B = y[1], x = y[2], C = y[3], b = y[4], F = y[5], T = y[6], I = y[7], D = w.high, U = w.low, Q = B.high, O = B.low, N = x.high, J = x.low, j = C.high, V = C.low, ae = b.high, Y = b.low, ue = F.high, ye = F.low, ee = T.high, ce = T.low, ve = I.high, xe = I.low, se = D, Fe = U, ie = Q, _e = O, De = N, $e = J, Te = j, W = V, P = ae, M = Y, te = ue, Be = ye, Ie = ee, Le = ce, He = ve, Ne = xe, Pe = 0; Pe < 80; Pe++) {
                            var we, he, Ke = d[Pe];
                            if (Pe < 16) he = Ke.high = m[g + Pe * 2] | 0, we = Ke.low = m[g + Pe * 2 + 1] | 0;
                            else {
                                var Je = d[Pe - 15],
                                    ot = Je.high,
                                    gt = Je.low,
                                    Bt = (ot >>> 1 | gt << 31) ^ (ot >>> 8 | gt << 24) ^ ot >>> 7,
                                    kt = (gt >>> 1 | ot << 31) ^ (gt >>> 8 | ot << 24) ^ (gt >>> 7 | ot << 25),
                                    Hn = d[Pe - 2],
                                    Yt = Hn.high,
                                    zn = Hn.low,
                                    uA = (Yt >>> 19 | zn << 13) ^ (Yt << 3 | zn >>> 29) ^ Yt >>> 6,
                                    hi = (zn >>> 19 | Yt << 13) ^ (zn << 3 | Yt >>> 29) ^ (zn >>> 6 | Yt << 26),
                                    _n = d[Pe - 7],
                                    sr = _n.high,
                                    ws = _n.low,
                                    Do = d[Pe - 16],
                                    ua = Do.high,
                                    ys = Do.low;
                                we = kt + ws, he = Bt + sr + (we >>> 0 < kt >>> 0 ? 1 : 0), we = we + hi, he = he + uA + (we >>> 0 < hi >>> 0 ? 1 : 0), we = we + ys, he = he + ua + (we >>> 0 < ys >>> 0 ? 1 : 0), Ke.high = he, Ke.low = we
                            }
                            var ca = P & te ^ ~P & Ie,
                                I0 = M & Be ^ ~M & Le,
                                qf = se & ie ^ se & De ^ ie & De,
                                Zf = Fe & _e ^ Fe & $e ^ _e & $e,
                                e1 = (se >>> 28 | Fe << 4) ^ (se << 30 | Fe >>> 2) ^ (se << 25 | Fe >>> 7),
                                Ge = (Fe >>> 28 | se << 4) ^ (Fe << 30 | se >>> 2) ^ (Fe << 25 | se >>> 7),
                                gn = (P >>> 14 | M << 18) ^ (P >>> 18 | M << 14) ^ (P << 23 | M >>> 9),
                                TA = (M >>> 14 | P << 18) ^ (M >>> 18 | P << 14) ^ (M << 23 | P >>> 9),
                                Pr = f[Pe],
                                Sn = Pr.high,
                                fa = Pr.low,
                                on = Ne + TA,
                                yr = He + gn + (on >>> 0 < Ne >>> 0 ? 1 : 0),
                                on = on + I0,
                                yr = yr + ca + (on >>> 0 < I0 >>> 0 ? 1 : 0),
                                on = on + fa,
                                yr = yr + Sn + (on >>> 0 < fa >>> 0 ? 1 : 0),
                                on = on + we,
                                yr = yr + he + (on >>> 0 < we >>> 0 ? 1 : 0),
                                vn = Ge + Zf,
                                da = e1 + qf + (vn >>> 0 < Ge >>> 0 ? 1 : 0);
                            He = Ie, Ne = Le, Ie = te, Le = Be, te = P, Be = M, M = W + on | 0, P = Te + yr + (M >>> 0 < W >>> 0 ? 1 : 0) | 0, Te = De, W = $e, De = ie, $e = _e, ie = se, _e = Fe, Fe = on + vn | 0, se = yr + da + (Fe >>> 0 < on >>> 0 ? 1 : 0) | 0
                        }
                        U = w.low = U + Fe, w.high = D + se + (U >>> 0 < Fe >>> 0 ? 1 : 0), O = B.low = O + _e, B.high = Q + ie + (O >>> 0 < _e >>> 0 ? 1 : 0), J = x.low = J + $e, x.high = N + De + (J >>> 0 < $e >>> 0 ? 1 : 0), V = C.low = V + W, C.high = j + Te + (V >>> 0 < W >>> 0 ? 1 : 0), Y = b.low = Y + M, b.high = ae + P + (Y >>> 0 < M >>> 0 ? 1 : 0), ye = F.low = ye + Be, F.high = ue + te + (ye >>> 0 < Be >>> 0 ? 1 : 0), ce = T.low = ce + Le, T.high = ee + Ie + (ce >>> 0 < Le >>> 0 ? 1 : 0), xe = I.low = xe + Ne, I.high = ve + He + (xe >>> 0 < Ne >>> 0 ? 1 : 0)
                    },
                    _doFinalize: function() {
                        var m = this._data,
                            g = m.words,
                            y = this._nDataBytes * 8,
                            w = m.sigBytes * 8;
                        g[w >>> 5] |= 128 << 24 - w % 32, g[(w + 128 >>> 10 << 5) + 30] = Math.floor(y / 4294967296), g[(w + 128 >>> 10 << 5) + 31] = y, m.sigBytes = g.length * 4, this._process();
                        var B = this._hash.toX32();
                        return B
                    },
                    clone: function() {
                        var m = i.clone.call(this);
                        return m._hash = this._hash.clone(), m
                    },
                    blockSize: 1024 / 32
                });
                r.SHA512 = i._createHelper(p), r.HmacSHA512 = i._createHmacHelper(p)
            }(), n.SHA512
        })
    }(R1)), R1.exports
}
var N1 = {
        exports: {}
    },
    g4;

function GO() {
    return g4 || (g4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), vf(), m9())
        })(ht, function(n) {
            return function() {
                var r = n,
                    A = r.x64,
                    i = A.Word,
                    s = A.WordArray,
                    a = r.algo,
                    o = a.SHA512,
                    l = a.SHA384 = o.extend({
                        _doReset: function() {
                            this._hash = new s.init([new i.init(3418070365, 3238371032), new i.init(1654270250, 914150663), new i.init(2438529370, 812702999), new i.init(355462360, 4144912697), new i.init(1731405415, 4290775857), new i.init(2394180231, 1750603025), new i.init(3675008525, 1694076839), new i.init(1203062813, 3204075428)])
                        },
                        _doFinalize: function() {
                            var u = o._doFinalize.call(this);
                            return u.sigBytes -= 16, u
                        }
                    });
                r.SHA384 = o._createHelper(l), r.HmacSHA384 = o._createHmacHelper(l)
            }(), n.SHA384
        })
    }(N1)), N1.exports
}
var $1 = {
        exports: {}
    },
    v4;

function zO() {
    return v4 || (v4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), vf())
        })(ht, function(n) {
            return function(r) {
                var A = n,
                    i = A.lib,
                    s = i.WordArray,
                    a = i.Hasher,
                    o = A.x64,
                    l = o.Word,
                    u = A.algo,
                    f = [],
                    d = [],
                    p = [];
                (function() {
                    for (var y = 1, w = 0, B = 0; B < 24; B++) {
                        f[y + 5 * w] = (B + 1) * (B + 2) / 2 % 64;
                        var x = w % 5,
                            C = (2 * y + 3 * w) % 5;
                        y = x, w = C
                    }
                    for (var y = 0; y < 5; y++)
                        for (var w = 0; w < 5; w++) d[y + 5 * w] = w + (2 * y + 3 * w) % 5 * 5;
                    for (var b = 1, F = 0; F < 24; F++) {
                        for (var T = 0, I = 0, D = 0; D < 7; D++) {
                            if (b & 1) {
                                var U = (1 << D) - 1;
                                U < 32 ? I ^= 1 << U : T ^= 1 << U - 32
                            }
                            b & 128 ? b = b << 1 ^ 113 : b <<= 1
                        }
                        p[F] = l.create(T, I)
                    }
                })();
                var m = [];
                (function() {
                    for (var y = 0; y < 25; y++) m[y] = l.create()
                })();
                var g = u.SHA3 = a.extend({
                    cfg: a.cfg.extend({
                        outputLength: 512
                    }),
                    _doReset: function() {
                        for (var y = this._state = [], w = 0; w < 25; w++) y[w] = new l.init;
                        this.blockSize = (1600 - 2 * this.cfg.outputLength) / 32
                    },
                    _doProcessBlock: function(y, w) {
                        for (var B = this._state, x = this.blockSize / 2, C = 0; C < x; C++) {
                            var b = y[w + 2 * C],
                                F = y[w + 2 * C + 1];
                            b = (b << 8 | b >>> 24) & 16711935 | (b << 24 | b >>> 8) & 4278255360, F = (F << 8 | F >>> 24) & 16711935 | (F << 24 | F >>> 8) & 4278255360;
                            var T = B[C];
                            T.high ^= F, T.low ^= b
                        }
                        for (var I = 0; I < 24; I++) {
                            for (var D = 0; D < 5; D++) {
                                for (var U = 0, Q = 0, O = 0; O < 5; O++) {
                                    var T = B[D + 5 * O];
                                    U ^= T.high, Q ^= T.low
                                }
                                var N = m[D];
                                N.high = U, N.low = Q
                            }
                            for (var D = 0; D < 5; D++)
                                for (var J = m[(D + 4) % 5], j = m[(D + 1) % 5], V = j.high, ae = j.low, U = J.high ^ (V << 1 | ae >>> 31), Q = J.low ^ (ae << 1 | V >>> 31), O = 0; O < 5; O++) {
                                    var T = B[D + 5 * O];
                                    T.high ^= U, T.low ^= Q
                                }
                            for (var Y = 1; Y < 25; Y++) {
                                var U, Q, T = B[Y],
                                    ue = T.high,
                                    ye = T.low,
                                    ee = f[Y];
                                ee < 32 ? (U = ue << ee | ye >>> 32 - ee, Q = ye << ee | ue >>> 32 - ee) : (U = ye << ee - 32 | ue >>> 64 - ee, Q = ue << ee - 32 | ye >>> 64 - ee);
                                var ce = m[d[Y]];
                                ce.high = U, ce.low = Q
                            }
                            var ve = m[0],
                                xe = B[0];
                            ve.high = xe.high, ve.low = xe.low;
                            for (var D = 0; D < 5; D++)
                                for (var O = 0; O < 5; O++) {
                                    var Y = D + 5 * O,
                                        T = B[Y],
                                        se = m[Y],
                                        Fe = m[(D + 1) % 5 + 5 * O],
                                        ie = m[(D + 2) % 5 + 5 * O];
                                    T.high = se.high ^ ~Fe.high & ie.high, T.low = se.low ^ ~Fe.low & ie.low
                                }
                            var T = B[0],
                                _e = p[I];
                            T.high ^= _e.high, T.low ^= _e.low
                        }
                    },
                    _doFinalize: function() {
                        var y = this._data,
                            w = y.words;
                        this._nDataBytes * 8;
                        var B = y.sigBytes * 8,
                            x = this.blockSize * 32;
                        w[B >>> 5] |= 1 << 24 - B % 32, w[(r.ceil((B + 1) / x) * x >>> 5) - 1] |= 128, y.sigBytes = w.length * 4, this._process();
                        for (var C = this._state, b = this.cfg.outputLength / 8, F = b / 8, T = [], I = 0; I < F; I++) {
                            var D = C[I],
                                U = D.high,
                                Q = D.low;
                            U = (U << 8 | U >>> 24) & 16711935 | (U << 24 | U >>> 8) & 4278255360, Q = (Q << 8 | Q >>> 24) & 16711935 | (Q << 24 | Q >>> 8) & 4278255360, T.push(Q), T.push(U)
                        }
                        return new s.init(T, b)
                    },
                    clone: function() {
                        for (var y = a.clone.call(this), w = y._state = this._state.slice(0), B = 0; B < 25; B++) w[B] = w[B].clone();
                        return y
                    }
                });
                A.SHA3 = a._createHelper(g), A.HmacSHA3 = a._createHmacHelper(g)
            }(Math), n.SHA3
        })
    }($1)), $1.exports
}
var K1 = {
        exports: {}
    },
    m4;

function WO() {
    return m4 || (m4 = 1, function(e, t) {
        (function(n, r) {
            e.exports = r(Ft())
        })(ht, function(n) {
            /** @preserve
            			(c) 2012 by Cédric Mesnil. All rights reserved.

            			Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

            			    - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
            			    - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

            			THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
            			*/
            return function(r) {
                var A = n,
                    i = A.lib,
                    s = i.WordArray,
                    a = i.Hasher,
                    o = A.algo,
                    l = s.create([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 7, 4, 13, 1, 10, 6, 15, 3, 12, 0, 9, 5, 2, 14, 11, 8, 3, 10, 14, 4, 9, 15, 8, 1, 2, 7, 0, 6, 13, 11, 5, 12, 1, 9, 11, 10, 0, 8, 12, 4, 13, 3, 7, 15, 14, 5, 6, 2, 4, 0, 5, 9, 7, 12, 2, 10, 14, 1, 3, 8, 11, 6, 15, 13]),
                    u = s.create([5, 14, 7, 0, 9, 2, 11, 4, 13, 6, 15, 8, 1, 10, 3, 12, 6, 11, 3, 7, 0, 13, 5, 10, 14, 15, 8, 12, 4, 9, 1, 2, 15, 5, 1, 3, 7, 14, 6, 9, 11, 8, 12, 2, 10, 0, 4, 13, 8, 6, 4, 1, 3, 11, 15, 0, 5, 12, 2, 13, 9, 7, 10, 14, 12, 15, 10, 4, 1, 5, 8, 7, 6, 2, 13, 14, 0, 3, 9, 11]),
                    f = s.create([11, 14, 15, 12, 5, 8, 7, 9, 11, 13, 14, 15, 6, 7, 9, 8, 7, 6, 8, 13, 11, 9, 7, 15, 7, 12, 15, 9, 11, 7, 13, 12, 11, 13, 6, 7, 14, 9, 13, 15, 14, 8, 13, 6, 5, 12, 7, 5, 11, 12, 14, 15, 14, 15, 9, 8, 9, 14, 5, 6, 8, 6, 5, 12, 9, 15, 5, 11, 6, 8, 13, 12, 5, 12, 13, 14, 11, 8, 5, 6]),
                    d = s.create([8, 9, 9, 11, 13, 15, 15, 5, 7, 7, 8, 11, 14, 14, 12, 6, 9, 13, 15, 7, 12, 8, 9, 11, 7, 7, 12, 7, 6, 15, 13, 11, 9, 7, 15, 11, 8, 6, 6, 14, 12, 13, 5, 14, 13, 13, 7, 5, 15, 5, 8, 11, 14, 14, 6, 14, 6, 9, 12, 9, 12, 5, 15, 8, 8, 5, 12, 9, 12, 5, 14, 6, 8, 13, 6, 5, 15, 13, 11, 11]),
                    p = s.create([0, 1518500249, 1859775393, 2400959708, 2840853838]),
                    m = s.create([1352829926, 1548603684, 1836072691, 2053994217, 0]),
                    g = o.RIPEMD160 = a.extend({
                        _doReset: function() {
                            this._hash = s.create([1732584193, 4023233417, 2562383102, 271733878, 3285377520])
                        },
                        _doProcessBlock: function(F, T) {
                            for (var I = 0; I < 16; I++) {
                                var D = T + I,
                                    U = F[D];
                                F[D] = (U << 8 | U >>> 24) & 16711935 | (U << 24 | U >>> 8) & 4278255360
                            }
                            var Q = this._hash.words,
                                O = p.words,
                                N = m.words,
                                J = l.words,
                                j = u.words,
                                V = f.words,
                                ae = d.words,
                                Y, ue, ye, ee, ce, ve, xe, se, Fe, ie;
                            ve = Y = Q[0], xe = ue = Q[1], se = ye = Q[2], Fe = ee = Q[3], ie = ce = Q[4];
                            for (var _e, I = 0; I < 80; I += 1) _e = Y + F[T + J[I]] | 0, I < 16 ? _e += y(ue, ye, ee) + O[0] : I < 32 ? _e += w(ue, ye, ee) + O[1] : I < 48 ? _e += B(ue, ye, ee) + O[2] : I < 64 ? _e += x(ue, ye, ee) + O[3] : _e += C(ue, ye, ee) + O[4], _e = _e | 0, _e = b(_e, V[I]), _e = _e + ce | 0, Y = ce, ce = ee, ee = b(ye, 10), ye = ue, ue = _e, _e = ve + F[T + j[I]] | 0, I < 16 ? _e += C(xe, se, Fe) + N[0] : I < 32 ? _e += x(xe, se, Fe) + N[1] : I < 48 ? _e += B(xe, se, Fe) + N[2] : I < 64 ? _e += w(xe, se, Fe) + N[3] : _e += y(xe, se, Fe) + N[4], _e = _e | 0, _e = b(_e, ae[I]), _e = _e + ie | 0, ve = ie, ie = Fe, Fe = b(se, 10), se = xe, xe = _e;
                            _e = Q[1] + ye + Fe | 0, Q[1] = Q[2] + ee + ie | 0, Q[2] = Q[3] + ce + ve | 0, Q[3] = Q[4] + Y + xe | 0, Q[4] = Q[0] + ue + se | 0, Q[0] = _e
                        },
                        _doFinalize: function() {
                            var F = this._data,
                                T = F.words,
                                I = this._nDataBytes * 8,
                                D = F.sigBytes * 8;
                            T[D >>> 5] |= 128 << 24 - D % 32, T[(D + 64 >>> 9 << 4) + 14] = (I << 8 | I >>> 24) & 16711935 | (I << 24 | I >>> 8) & 4278255360, F.sigBytes = (T.length + 1) * 4, this._process();
                            for (var U = this._hash, Q = U.words, O = 0; O < 5; O++) {
                                var N = Q[O];
                                Q[O] = (N << 8 | N >>> 24) & 16711935 | (N << 24 | N >>> 8) & 4278255360
                            }
                            return U
                        },
                        clone: function() {
                            var F = a.clone.call(this);
                            return F._hash = this._hash.clone(), F
                        }
                    });

                function y(F, T, I) {
                    return F ^ T ^ I
                }

                function w(F, T, I) {
                    return F & T | ~F & I
                }

                function B(F, T, I) {
                    return (F | ~T) ^ I
                }

                function x(F, T, I) {
                    return F & I | T & ~I
                }

                function C(F, T, I) {
                    return F ^ (T | ~I)
                }

                function b(F, T) {
                    return F << T | F >>> 32 - T
                }
                A.RIPEMD160 = a._createHelper(g), A.HmacRIPEMD160 = a._createHmacHelper(g)
            }(), n.RIPEMD160
        })
    }(K1)), K1.exports
}
var V1 = {
        exports: {}
    },
    B4;

function pp() {
    return B4 || (B4 = 1, function(e, t) {
        (function(n, r) {
            e.exports = r(Ft())
        })(ht, function(n) {
            (function() {
                var r = n,
                    A = r.lib,
                    i = A.Base,
                    s = r.enc,
                    a = s.Utf8,
                    o = r.algo;
                o.HMAC = i.extend({
                    init: function(l, u) {
                        l = this._hasher = new l.init, typeof u == "string" && (u = a.parse(u));
                        var f = l.blockSize,
                            d = f * 4;
                        u.sigBytes > d && (u = l.finalize(u)), u.clamp();
                        for (var p = this._oKey = u.clone(), m = this._iKey = u.clone(), g = p.words, y = m.words, w = 0; w < f; w++) g[w] ^= 1549556828, y[w] ^= 909522486;
                        p.sigBytes = m.sigBytes = d, this.reset()
                    },
                    reset: function() {
                        var l = this._hasher;
                        l.reset(), l.update(this._iKey)
                    },
                    update: function(l) {
                        return this._hasher.update(l), this
                    },
                    finalize: function(l) {
                        var u = this._hasher,
                            f = u.finalize(l);
                        u.reset();
                        var d = u.finalize(this._oKey.clone().concat(f));
                        return d
                    }
                })
            })()
        })
    }(V1)), V1.exports
}
var G1 = {
        exports: {}
    },
    w4;

function jO() {
    return w4 || (w4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), hp(), pp())
        })(ht, function(n) {
            return function() {
                var r = n,
                    A = r.lib,
                    i = A.Base,
                    s = A.WordArray,
                    a = r.algo,
                    o = a.SHA256,
                    l = a.HMAC,
                    u = a.PBKDF2 = i.extend({
                        cfg: i.extend({
                            keySize: 128 / 32,
                            hasher: o,
                            iterations: 25e4
                        }),
                        init: function(f) {
                            this.cfg = this.cfg.extend(f)
                        },
                        compute: function(f, d) {
                            for (var p = this.cfg, m = l.create(p.hasher, f), g = s.create(), y = s.create([1]), w = g.words, B = y.words, x = p.keySize, C = p.iterations; w.length < x;) {
                                var b = m.update(d).finalize(y);
                                m.reset();
                                for (var F = b.words, T = F.length, I = b, D = 1; D < C; D++) {
                                    I = m.finalize(I), m.reset();
                                    for (var U = I.words, Q = 0; Q < T; Q++) F[Q] ^= U[Q]
                                }
                                g.concat(b), B[0]++
                            }
                            return g.sigBytes = x * 4, g
                        }
                    });
                r.PBKDF2 = function(f, d, p) {
                    return u.create(p).compute(f, d)
                }
            }(), n.PBKDF2
        })
    }(G1)), G1.exports
}
var z1 = {
        exports: {}
    },
    y4;

function ps() {
    return y4 || (y4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), v9(), pp())
        })(ht, function(n) {
            return function() {
                var r = n,
                    A = r.lib,
                    i = A.Base,
                    s = A.WordArray,
                    a = r.algo,
                    o = a.MD5,
                    l = a.EvpKDF = i.extend({
                        cfg: i.extend({
                            keySize: 128 / 32,
                            hasher: o,
                            iterations: 1
                        }),
                        init: function(u) {
                            this.cfg = this.cfg.extend(u)
                        },
                        compute: function(u, f) {
                            for (var d, p = this.cfg, m = p.hasher.create(), g = s.create(), y = g.words, w = p.keySize, B = p.iterations; y.length < w;) {
                                d && m.update(d), d = m.update(u).finalize(f), m.reset();
                                for (var x = 1; x < B; x++) d = m.finalize(d), m.reset();
                                g.concat(d)
                            }
                            return g.sigBytes = w * 4, g
                        }
                    });
                r.EvpKDF = function(u, f, d) {
                    return l.create(d).compute(u, f)
                }
            }(), n.EvpKDF
        })
    }(z1)), z1.exports
}
var W1 = {
        exports: {}
    },
    C4;

function Ln() {
    return C4 || (C4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), ps())
        })(ht, function(n) {
            n.lib.Cipher || function(r) {
                var A = n,
                    i = A.lib,
                    s = i.Base,
                    a = i.WordArray,
                    o = i.BufferedBlockAlgorithm,
                    l = A.enc;
                l.Utf8;
                var u = l.Base64,
                    f = A.algo,
                    d = f.EvpKDF,
                    p = i.Cipher = o.extend({
                        cfg: s.extend(),
                        createEncryptor: function(U, Q) {
                            return this.create(this._ENC_XFORM_MODE, U, Q)
                        },
                        createDecryptor: function(U, Q) {
                            return this.create(this._DEC_XFORM_MODE, U, Q)
                        },
                        init: function(U, Q, O) {
                            this.cfg = this.cfg.extend(O), this._xformMode = U, this._key = Q, this.reset()
                        },
                        reset: function() {
                            o.reset.call(this), this._doReset()
                        },
                        process: function(U) {
                            return this._append(U), this._process()
                        },
                        finalize: function(U) {
                            U && this._append(U);
                            var Q = this._doFinalize();
                            return Q
                        },
                        keySize: 128 / 32,
                        ivSize: 128 / 32,
                        _ENC_XFORM_MODE: 1,
                        _DEC_XFORM_MODE: 2,
                        _createHelper: function() {
                            function U(Q) {
                                return typeof Q == "string" ? D : F
                            }
                            return function(Q) {
                                return {
                                    encrypt: function(O, N, J) {
                                        return U(N).encrypt(Q, O, N, J)
                                    },
                                    decrypt: function(O, N, J) {
                                        return U(N).decrypt(Q, O, N, J)
                                    }
                                }
                            }
                        }()
                    });
                i.StreamCipher = p.extend({
                    _doFinalize: function() {
                        var U = this._process(!0);
                        return U
                    },
                    blockSize: 1
                });
                var m = A.mode = {},
                    g = i.BlockCipherMode = s.extend({
                        createEncryptor: function(U, Q) {
                            return this.Encryptor.create(U, Q)
                        },
                        createDecryptor: function(U, Q) {
                            return this.Decryptor.create(U, Q)
                        },
                        init: function(U, Q) {
                            this._cipher = U, this._iv = Q
                        }
                    }),
                    y = m.CBC = function() {
                        var U = g.extend();
                        U.Encryptor = U.extend({
                            processBlock: function(O, N) {
                                var J = this._cipher,
                                    j = J.blockSize;
                                Q.call(this, O, N, j), J.encryptBlock(O, N), this._prevBlock = O.slice(N, N + j)
                            }
                        }), U.Decryptor = U.extend({
                            processBlock: function(O, N) {
                                var J = this._cipher,
                                    j = J.blockSize,
                                    V = O.slice(N, N + j);
                                J.decryptBlock(O, N), Q.call(this, O, N, j), this._prevBlock = V
                            }
                        });

                        function Q(O, N, J) {
                            var j, V = this._iv;
                            V ? (j = V, this._iv = r) : j = this._prevBlock;
                            for (var ae = 0; ae < J; ae++) O[N + ae] ^= j[ae]
                        }
                        return U
                    }(),
                    w = A.pad = {},
                    B = w.Pkcs7 = {
                        pad: function(U, Q) {
                            for (var O = Q * 4, N = O - U.sigBytes % O, J = N << 24 | N << 16 | N << 8 | N, j = [], V = 0; V < N; V += 4) j.push(J);
                            var ae = a.create(j, N);
                            U.concat(ae)
                        },
                        unpad: function(U) {
                            var Q = U.words[U.sigBytes - 1 >>> 2] & 255;
                            U.sigBytes -= Q
                        }
                    };
                i.BlockCipher = p.extend({
                    cfg: p.cfg.extend({
                        mode: y,
                        padding: B
                    }),
                    reset: function() {
                        var U;
                        p.reset.call(this);
                        var Q = this.cfg,
                            O = Q.iv,
                            N = Q.mode;
                        this._xformMode == this._ENC_XFORM_MODE ? U = N.createEncryptor : (U = N.createDecryptor, this._minBufferSize = 1), this._mode && this._mode.__creator == U ? this._mode.init(this, O && O.words) : (this._mode = U.call(N, this, O && O.words), this._mode.__creator = U)
                    },
                    _doProcessBlock: function(U, Q) {
                        this._mode.processBlock(U, Q)
                    },
                    _doFinalize: function() {
                        var U, Q = this.cfg.padding;
                        return this._xformMode == this._ENC_XFORM_MODE ? (Q.pad(this._data, this.blockSize), U = this._process(!0)) : (U = this._process(!0), Q.unpad(U)), U
                    },
                    blockSize: 128 / 32
                });
                var x = i.CipherParams = s.extend({
                        init: function(U) {
                            this.mixIn(U)
                        },
                        toString: function(U) {
                            return (U || this.formatter).stringify(this)
                        }
                    }),
                    C = A.format = {},
                    b = C.OpenSSL = {
                        stringify: function(U) {
                            var Q, O = U.ciphertext,
                                N = U.salt;
                            return N ? Q = a.create([1398893684, 1701076831]).concat(N).concat(O) : Q = O, Q.toString(u)
                        },
                        parse: function(U) {
                            var Q, O = u.parse(U),
                                N = O.words;
                            return N[0] == 1398893684 && N[1] == 1701076831 && (Q = a.create(N.slice(2, 4)), N.splice(0, 4), O.sigBytes -= 16), x.create({
                                ciphertext: O,
                                salt: Q
                            })
                        }
                    },
                    F = i.SerializableCipher = s.extend({
                        cfg: s.extend({
                            format: b
                        }),
                        encrypt: function(U, Q, O, N) {
                            N = this.cfg.extend(N);
                            var J = U.createEncryptor(O, N),
                                j = J.finalize(Q),
                                V = J.cfg;
                            return x.create({
                                ciphertext: j,
                                key: O,
                                iv: V.iv,
                                algorithm: U,
                                mode: V.mode,
                                padding: V.padding,
                                blockSize: U.blockSize,
                                formatter: N.format
                            })
                        },
                        decrypt: function(U, Q, O, N) {
                            N = this.cfg.extend(N), Q = this._parse(Q, N.format);
                            var J = U.createDecryptor(O, N).finalize(Q.ciphertext);
                            return J
                        },
                        _parse: function(U, Q) {
                            return typeof U == "string" ? Q.parse(U, this) : U
                        }
                    }),
                    T = A.kdf = {},
                    I = T.OpenSSL = {
                        execute: function(U, Q, O, N, J) {
                            if (N || (N = a.random(64 / 8)), J) var j = d.create({
                                keySize: Q + O,
                                hasher: J
                            }).compute(U, N);
                            else var j = d.create({
                                keySize: Q + O
                            }).compute(U, N);
                            var V = a.create(j.words.slice(Q), O * 4);
                            return j.sigBytes = Q * 4, x.create({
                                key: j,
                                iv: V,
                                salt: N
                            })
                        }
                    },
                    D = i.PasswordBasedCipher = F.extend({
                        cfg: F.cfg.extend({
                            kdf: I
                        }),
                        encrypt: function(U, Q, O, N) {
                            N = this.cfg.extend(N);
                            var J = N.kdf.execute(O, U.keySize, U.ivSize, N.salt, N.hasher);
                            N.iv = J.iv;
                            var j = F.encrypt.call(this, U, Q, J.key, N);
                            return j.mixIn(J), j
                        },
                        decrypt: function(U, Q, O, N) {
                            N = this.cfg.extend(N), Q = this._parse(Q, N.format);
                            var J = N.kdf.execute(O, U.keySize, U.ivSize, Q.salt, N.hasher);
                            N.iv = J.iv;
                            var j = F.decrypt.call(this, U, Q, J.key, N);
                            return j
                        }
                    })
            }()
        })
    }(W1)), W1.exports
}
var j1 = {
        exports: {}
    },
    x4;

function YO() {
    return x4 || (x4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), Ln())
        })(ht, function(n) {
            return n.mode.CFB = function() {
                var r = n.lib.BlockCipherMode.extend();
                r.Encryptor = r.extend({
                    processBlock: function(i, s) {
                        var a = this._cipher,
                            o = a.blockSize;
                        A.call(this, i, s, o, a), this._prevBlock = i.slice(s, s + o)
                    }
                }), r.Decryptor = r.extend({
                    processBlock: function(i, s) {
                        var a = this._cipher,
                            o = a.blockSize,
                            l = i.slice(s, s + o);
                        A.call(this, i, s, o, a), this._prevBlock = l
                    }
                });

                function A(i, s, a, o) {
                    var l, u = this._iv;
                    u ? (l = u.slice(0), this._iv = void 0) : l = this._prevBlock, o.encryptBlock(l, 0);
                    for (var f = 0; f < a; f++) i[s + f] ^= l[f]
                }
                return r
            }(), n.mode.CFB
        })
    }(j1)), j1.exports
}
var Y1 = {
        exports: {}
    },
    E4;

function XO() {
    return E4 || (E4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), Ln())
        })(ht, function(n) {
            return n.mode.CTR = function() {
                var r = n.lib.BlockCipherMode.extend(),
                    A = r.Encryptor = r.extend({
                        processBlock: function(i, s) {
                            var a = this._cipher,
                                o = a.blockSize,
                                l = this._iv,
                                u = this._counter;
                            l && (u = this._counter = l.slice(0), this._iv = void 0);
                            var f = u.slice(0);
                            a.encryptBlock(f, 0), u[o - 1] = u[o - 1] + 1 | 0;
                            for (var d = 0; d < o; d++) i[s + d] ^= f[d]
                        }
                    });
                return r.Decryptor = A, r
            }(), n.mode.CTR
        })
    }(Y1)), Y1.exports
}
var X1 = {
        exports: {}
    },
    b4;

function JO() {
    return b4 || (b4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), Ln())
        })(ht, function(n) {
            /** @preserve
             * Counter block mode compatible with  Dr Brian Gladman fileenc.c
             * derived from CryptoJS.mode.CTR
             * Jan Hruby jhruby.web@gmail.com
             */
            return n.mode.CTRGladman = function() {
                var r = n.lib.BlockCipherMode.extend();

                function A(a) {
                    if ((a >> 24 & 255) === 255) {
                        var o = a >> 16 & 255,
                            l = a >> 8 & 255,
                            u = a & 255;
                        o === 255 ? (o = 0, l === 255 ? (l = 0, u === 255 ? u = 0 : ++u) : ++l) : ++o, a = 0, a += o << 16, a += l << 8, a += u
                    } else a += 1 << 24;
                    return a
                }

                function i(a) {
                    return (a[0] = A(a[0])) === 0 && (a[1] = A(a[1])), a
                }
                var s = r.Encryptor = r.extend({
                    processBlock: function(a, o) {
                        var l = this._cipher,
                            u = l.blockSize,
                            f = this._iv,
                            d = this._counter;
                        f && (d = this._counter = f.slice(0), this._iv = void 0), i(d);
                        var p = d.slice(0);
                        l.encryptBlock(p, 0);
                        for (var m = 0; m < u; m++) a[o + m] ^= p[m]
                    }
                });
                return r.Decryptor = s, r
            }(), n.mode.CTRGladman
        })
    }(X1)), X1.exports
}
var J1 = {
        exports: {}
    },
    F4;

function qO() {
    return F4 || (F4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), Ln())
        })(ht, function(n) {
            return n.mode.OFB = function() {
                var r = n.lib.BlockCipherMode.extend(),
                    A = r.Encryptor = r.extend({
                        processBlock: function(i, s) {
                            var a = this._cipher,
                                o = a.blockSize,
                                l = this._iv,
                                u = this._keystream;
                            l && (u = this._keystream = l.slice(0), this._iv = void 0), a.encryptBlock(u, 0);
                            for (var f = 0; f < o; f++) i[s + f] ^= u[f]
                        }
                    });
                return r.Decryptor = A, r
            }(), n.mode.OFB
        })
    }(J1)), J1.exports
}
var q1 = {
        exports: {}
    },
    _4;

function ZO() {
    return _4 || (_4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), Ln())
        })(ht, function(n) {
            return n.mode.ECB = function() {
                var r = n.lib.BlockCipherMode.extend();
                return r.Encryptor = r.extend({
                    processBlock: function(A, i) {
                        this._cipher.encryptBlock(A, i)
                    }
                }), r.Decryptor = r.extend({
                    processBlock: function(A, i) {
                        this._cipher.decryptBlock(A, i)
                    }
                }), r
            }(), n.mode.ECB
        })
    }(q1)), q1.exports
}
var Z1 = {
        exports: {}
    },
    S4;

function eL() {
    return S4 || (S4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), Ln())
        })(ht, function(n) {
            return n.pad.AnsiX923 = {
                pad: function(r, A) {
                    var i = r.sigBytes,
                        s = A * 4,
                        a = s - i % s,
                        o = i + a - 1;
                    r.clamp(), r.words[o >>> 2] |= a << 24 - o % 4 * 8, r.sigBytes += a
                },
                unpad: function(r) {
                    var A = r.words[r.sigBytes - 1 >>> 2] & 255;
                    r.sigBytes -= A
                }
            }, n.pad.Ansix923
        })
    }(Z1)), Z1.exports
}
var ed = {
        exports: {}
    },
    Q4;

function tL() {
    return Q4 || (Q4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), Ln())
        })(ht, function(n) {
            return n.pad.Iso10126 = {
                pad: function(r, A) {
                    var i = A * 4,
                        s = i - r.sigBytes % i;
                    r.concat(n.lib.WordArray.random(s - 1)).concat(n.lib.WordArray.create([s << 24], 1))
                },
                unpad: function(r) {
                    var A = r.words[r.sigBytes - 1 >>> 2] & 255;
                    r.sigBytes -= A
                }
            }, n.pad.Iso10126
        })
    }(ed)), ed.exports
}
var td = {
        exports: {}
    },
    U4;

function nL() {
    return U4 || (U4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), Ln())
        })(ht, function(n) {
            return n.pad.Iso97971 = {
                pad: function(r, A) {
                    r.concat(n.lib.WordArray.create([2147483648], 1)), n.pad.ZeroPadding.pad(r, A)
                },
                unpad: function(r) {
                    n.pad.ZeroPadding.unpad(r), r.sigBytes--
                }
            }, n.pad.Iso97971
        })
    }(td)), td.exports
}
var nd = {
        exports: {}
    },
    T4;

function rL() {
    return T4 || (T4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), Ln())
        })(ht, function(n) {
            return n.pad.ZeroPadding = {
                pad: function(r, A) {
                    var i = A * 4;
                    r.clamp(), r.sigBytes += i - (r.sigBytes % i || i)
                },
                unpad: function(r) {
                    for (var A = r.words, i = r.sigBytes - 1, i = r.sigBytes - 1; i >= 0; i--)
                        if (A[i >>> 2] >>> 24 - i % 4 * 8 & 255) {
                            r.sigBytes = i + 1;
                            break
                        }
                }
            }, n.pad.ZeroPadding
        })
    }(nd)), nd.exports
}
var rd = {
        exports: {}
    },
    I4;

function AL() {
    return I4 || (I4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), Ln())
        })(ht, function(n) {
            return n.pad.NoPadding = {
                pad: function() {},
                unpad: function() {}
            }, n.pad.NoPadding
        })
    }(rd)), rd.exports
}
var Ad = {
        exports: {}
    },
    D4;

function iL() {
    return D4 || (D4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), Ln())
        })(ht, function(n) {
            return function(r) {
                var A = n,
                    i = A.lib,
                    s = i.CipherParams,
                    a = A.enc,
                    o = a.Hex,
                    l = A.format;
                l.Hex = {
                    stringify: function(u) {
                        return u.ciphertext.toString(o)
                    },
                    parse: function(u) {
                        var f = o.parse(u);
                        return s.create({
                            ciphertext: f
                        })
                    }
                }
            }(), n.format.Hex
        })
    }(Ad)), Ad.exports
}
var id = {
        exports: {}
    },
    P4;

function sL() {
    return P4 || (P4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), aa(), oa(), ps(), Ln())
        })(ht, function(n) {
            return function() {
                var r = n,
                    A = r.lib,
                    i = A.BlockCipher,
                    s = r.algo,
                    a = [],
                    o = [],
                    l = [],
                    u = [],
                    f = [],
                    d = [],
                    p = [],
                    m = [],
                    g = [],
                    y = [];
                (function() {
                    for (var x = [], C = 0; C < 256; C++) C < 128 ? x[C] = C << 1 : x[C] = C << 1 ^ 283;
                    for (var b = 0, F = 0, C = 0; C < 256; C++) {
                        var T = F ^ F << 1 ^ F << 2 ^ F << 3 ^ F << 4;
                        T = T >>> 8 ^ T & 255 ^ 99, a[b] = T, o[T] = b;
                        var I = x[b],
                            D = x[I],
                            U = x[D],
                            Q = x[T] * 257 ^ T * 16843008;
                        l[b] = Q << 24 | Q >>> 8, u[b] = Q << 16 | Q >>> 16, f[b] = Q << 8 | Q >>> 24, d[b] = Q;
                        var Q = U * 16843009 ^ D * 65537 ^ I * 257 ^ b * 16843008;
                        p[T] = Q << 24 | Q >>> 8, m[T] = Q << 16 | Q >>> 16, g[T] = Q << 8 | Q >>> 24, y[T] = Q, b ? (b = I ^ x[x[x[U ^ I]]], F ^= x[x[F]]) : b = F = 1
                    }
                })();
                var w = [0, 1, 2, 4, 8, 16, 32, 64, 128, 27, 54],
                    B = s.AES = i.extend({
                        _doReset: function() {
                            var x;
                            if (!(this._nRounds && this._keyPriorReset === this._key)) {
                                for (var C = this._keyPriorReset = this._key, b = C.words, F = C.sigBytes / 4, T = this._nRounds = F + 6, I = (T + 1) * 4, D = this._keySchedule = [], U = 0; U < I; U++) U < F ? D[U] = b[U] : (x = D[U - 1], U % F ? F > 6 && U % F == 4 && (x = a[x >>> 24] << 24 | a[x >>> 16 & 255] << 16 | a[x >>> 8 & 255] << 8 | a[x & 255]) : (x = x << 8 | x >>> 24, x = a[x >>> 24] << 24 | a[x >>> 16 & 255] << 16 | a[x >>> 8 & 255] << 8 | a[x & 255], x ^= w[U / F | 0] << 24), D[U] = D[U - F] ^ x);
                                for (var Q = this._invKeySchedule = [], O = 0; O < I; O++) {
                                    var U = I - O;
                                    if (O % 4) var x = D[U];
                                    else var x = D[U - 4];
                                    O < 4 || U <= 4 ? Q[O] = x : Q[O] = p[a[x >>> 24]] ^ m[a[x >>> 16 & 255]] ^ g[a[x >>> 8 & 255]] ^ y[a[x & 255]]
                                }
                            }
                        },
                        encryptBlock: function(x, C) {
                            this._doCryptBlock(x, C, this._keySchedule, l, u, f, d, a)
                        },
                        decryptBlock: function(x, C) {
                            var b = x[C + 1];
                            x[C + 1] = x[C + 3], x[C + 3] = b, this._doCryptBlock(x, C, this._invKeySchedule, p, m, g, y, o);
                            var b = x[C + 1];
                            x[C + 1] = x[C + 3], x[C + 3] = b
                        },
                        _doCryptBlock: function(x, C, b, F, T, I, D, U) {
                            for (var Q = this._nRounds, O = x[C] ^ b[0], N = x[C + 1] ^ b[1], J = x[C + 2] ^ b[2], j = x[C + 3] ^ b[3], V = 4, ae = 1; ae < Q; ae++) {
                                var Y = F[O >>> 24] ^ T[N >>> 16 & 255] ^ I[J >>> 8 & 255] ^ D[j & 255] ^ b[V++],
                                    ue = F[N >>> 24] ^ T[J >>> 16 & 255] ^ I[j >>> 8 & 255] ^ D[O & 255] ^ b[V++],
                                    ye = F[J >>> 24] ^ T[j >>> 16 & 255] ^ I[O >>> 8 & 255] ^ D[N & 255] ^ b[V++],
                                    ee = F[j >>> 24] ^ T[O >>> 16 & 255] ^ I[N >>> 8 & 255] ^ D[J & 255] ^ b[V++];
                                O = Y, N = ue, J = ye, j = ee
                            }
                            var Y = (U[O >>> 24] << 24 | U[N >>> 16 & 255] << 16 | U[J >>> 8 & 255] << 8 | U[j & 255]) ^ b[V++],
                                ue = (U[N >>> 24] << 24 | U[J >>> 16 & 255] << 16 | U[j >>> 8 & 255] << 8 | U[O & 255]) ^ b[V++],
                                ye = (U[J >>> 24] << 24 | U[j >>> 16 & 255] << 16 | U[O >>> 8 & 255] << 8 | U[N & 255]) ^ b[V++],
                                ee = (U[j >>> 24] << 24 | U[O >>> 16 & 255] << 16 | U[N >>> 8 & 255] << 8 | U[J & 255]) ^ b[V++];
                            x[C] = Y, x[C + 1] = ue, x[C + 2] = ye, x[C + 3] = ee
                        },
                        keySize: 256 / 32
                    });
                r.AES = i._createHelper(B)
            }(), n.AES
        })
    }(id)), id.exports
}
var sd = {
        exports: {}
    },
    O4;

function aL() {
    return O4 || (O4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), aa(), oa(), ps(), Ln())
        })(ht, function(n) {
            return function() {
                var r = n,
                    A = r.lib,
                    i = A.WordArray,
                    s = A.BlockCipher,
                    a = r.algo,
                    o = [57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36, 63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4],
                    l = [14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10, 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2, 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48, 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32],
                    u = [1, 2, 4, 6, 8, 10, 12, 14, 15, 17, 19, 21, 23, 25, 27, 28],
                    f = [{
                        0: 8421888,
                        268435456: 32768,
                        536870912: 8421378,
                        805306368: 2,
                        1073741824: 512,
                        1342177280: 8421890,
                        1610612736: 8389122,
                        1879048192: 8388608,
                        2147483648: 514,
                        2415919104: 8389120,
                        2684354560: 33280,
                        2952790016: 8421376,
                        3221225472: 32770,
                        3489660928: 8388610,
                        3758096384: 0,
                        4026531840: 33282,
                        134217728: 0,
                        402653184: 8421890,
                        671088640: 33282,
                        939524096: 32768,
                        1207959552: 8421888,
                        1476395008: 512,
                        1744830464: 8421378,
                        2013265920: 2,
                        2281701376: 8389120,
                        2550136832: 33280,
                        2818572288: 8421376,
                        3087007744: 8389122,
                        3355443200: 8388610,
                        3623878656: 32770,
                        3892314112: 514,
                        4160749568: 8388608,
                        1: 32768,
                        268435457: 2,
                        536870913: 8421888,
                        805306369: 8388608,
                        1073741825: 8421378,
                        1342177281: 33280,
                        1610612737: 512,
                        1879048193: 8389122,
                        2147483649: 8421890,
                        2415919105: 8421376,
                        2684354561: 8388610,
                        2952790017: 33282,
                        3221225473: 514,
                        3489660929: 8389120,
                        3758096385: 32770,
                        4026531841: 0,
                        134217729: 8421890,
                        402653185: 8421376,
                        671088641: 8388608,
                        939524097: 512,
                        1207959553: 32768,
                        1476395009: 8388610,
                        1744830465: 2,
                        2013265921: 33282,
                        2281701377: 32770,
                        2550136833: 8389122,
                        2818572289: 514,
                        3087007745: 8421888,
                        3355443201: 8389120,
                        3623878657: 0,
                        3892314113: 33280,
                        4160749569: 8421378
                    }, {
                        0: 1074282512,
                        16777216: 16384,
                        33554432: 524288,
                        50331648: 1074266128,
                        67108864: 1073741840,
                        83886080: 1074282496,
                        100663296: 1073758208,
                        117440512: 16,
                        134217728: 540672,
                        150994944: 1073758224,
                        167772160: 1073741824,
                        184549376: 540688,
                        201326592: 524304,
                        218103808: 0,
                        234881024: 16400,
                        251658240: 1074266112,
                        8388608: 1073758208,
                        25165824: 540688,
                        41943040: 16,
                        58720256: 1073758224,
                        75497472: 1074282512,
                        92274688: 1073741824,
                        109051904: 524288,
                        125829120: 1074266128,
                        142606336: 524304,
                        159383552: 0,
                        176160768: 16384,
                        192937984: 1074266112,
                        209715200: 1073741840,
                        226492416: 540672,
                        243269632: 1074282496,
                        260046848: 16400,
                        268435456: 0,
                        285212672: 1074266128,
                        301989888: 1073758224,
                        318767104: 1074282496,
                        335544320: 1074266112,
                        352321536: 16,
                        369098752: 540688,
                        385875968: 16384,
                        402653184: 16400,
                        419430400: 524288,
                        436207616: 524304,
                        452984832: 1073741840,
                        469762048: 540672,
                        486539264: 1073758208,
                        503316480: 1073741824,
                        520093696: 1074282512,
                        276824064: 540688,
                        293601280: 524288,
                        310378496: 1074266112,
                        327155712: 16384,
                        343932928: 1073758208,
                        360710144: 1074282512,
                        377487360: 16,
                        394264576: 1073741824,
                        411041792: 1074282496,
                        427819008: 1073741840,
                        444596224: 1073758224,
                        461373440: 524304,
                        478150656: 0,
                        494927872: 16400,
                        511705088: 1074266128,
                        528482304: 540672
                    }, {
                        0: 260,
                        1048576: 0,
                        2097152: 67109120,
                        3145728: 65796,
                        4194304: 65540,
                        5242880: 67108868,
                        6291456: 67174660,
                        7340032: 67174400,
                        8388608: 67108864,
                        9437184: 67174656,
                        10485760: 65792,
                        11534336: 67174404,
                        12582912: 67109124,
                        13631488: 65536,
                        14680064: 4,
                        15728640: 256,
                        524288: 67174656,
                        1572864: 67174404,
                        2621440: 0,
                        3670016: 67109120,
                        4718592: 67108868,
                        5767168: 65536,
                        6815744: 65540,
                        7864320: 260,
                        8912896: 4,
                        9961472: 256,
                        11010048: 67174400,
                        12058624: 65796,
                        13107200: 65792,
                        14155776: 67109124,
                        15204352: 67174660,
                        16252928: 67108864,
                        16777216: 67174656,
                        17825792: 65540,
                        18874368: 65536,
                        19922944: 67109120,
                        20971520: 256,
                        22020096: 67174660,
                        23068672: 67108868,
                        24117248: 0,
                        25165824: 67109124,
                        26214400: 67108864,
                        27262976: 4,
                        28311552: 65792,
                        29360128: 67174400,
                        30408704: 260,
                        31457280: 65796,
                        32505856: 67174404,
                        17301504: 67108864,
                        18350080: 260,
                        19398656: 67174656,
                        20447232: 0,
                        21495808: 65540,
                        22544384: 67109120,
                        23592960: 256,
                        24641536: 67174404,
                        25690112: 65536,
                        26738688: 67174660,
                        27787264: 65796,
                        28835840: 67108868,
                        29884416: 67109124,
                        30932992: 67174400,
                        31981568: 4,
                        33030144: 65792
                    }, {
                        0: 2151682048,
                        65536: 2147487808,
                        131072: 4198464,
                        196608: 2151677952,
                        262144: 0,
                        327680: 4198400,
                        393216: 2147483712,
                        458752: 4194368,
                        524288: 2147483648,
                        589824: 4194304,
                        655360: 64,
                        720896: 2147487744,
                        786432: 2151678016,
                        851968: 4160,
                        917504: 4096,
                        983040: 2151682112,
                        32768: 2147487808,
                        98304: 64,
                        163840: 2151678016,
                        229376: 2147487744,
                        294912: 4198400,
                        360448: 2151682112,
                        425984: 0,
                        491520: 2151677952,
                        557056: 4096,
                        622592: 2151682048,
                        688128: 4194304,
                        753664: 4160,
                        819200: 2147483648,
                        884736: 4194368,
                        950272: 4198464,
                        1015808: 2147483712,
                        1048576: 4194368,
                        1114112: 4198400,
                        1179648: 2147483712,
                        1245184: 0,
                        1310720: 4160,
                        1376256: 2151678016,
                        1441792: 2151682048,
                        1507328: 2147487808,
                        1572864: 2151682112,
                        1638400: 2147483648,
                        1703936: 2151677952,
                        1769472: 4198464,
                        1835008: 2147487744,
                        1900544: 4194304,
                        1966080: 64,
                        2031616: 4096,
                        1081344: 2151677952,
                        1146880: 2151682112,
                        1212416: 0,
                        1277952: 4198400,
                        1343488: 4194368,
                        1409024: 2147483648,
                        1474560: 2147487808,
                        1540096: 64,
                        1605632: 2147483712,
                        1671168: 4096,
                        1736704: 2147487744,
                        1802240: 2151678016,
                        1867776: 4160,
                        1933312: 2151682048,
                        1998848: 4194304,
                        2064384: 4198464
                    }, {
                        0: 128,
                        4096: 17039360,
                        8192: 262144,
                        12288: 536870912,
                        16384: 537133184,
                        20480: 16777344,
                        24576: 553648256,
                        28672: 262272,
                        32768: 16777216,
                        36864: 537133056,
                        40960: 536871040,
                        45056: 553910400,
                        49152: 553910272,
                        53248: 0,
                        57344: 17039488,
                        61440: 553648128,
                        2048: 17039488,
                        6144: 553648256,
                        10240: 128,
                        14336: 17039360,
                        18432: 262144,
                        22528: 537133184,
                        26624: 553910272,
                        30720: 536870912,
                        34816: 537133056,
                        38912: 0,
                        43008: 553910400,
                        47104: 16777344,
                        51200: 536871040,
                        55296: 553648128,
                        59392: 16777216,
                        63488: 262272,
                        65536: 262144,
                        69632: 128,
                        73728: 536870912,
                        77824: 553648256,
                        81920: 16777344,
                        86016: 553910272,
                        90112: 537133184,
                        94208: 16777216,
                        98304: 553910400,
                        102400: 553648128,
                        106496: 17039360,
                        110592: 537133056,
                        114688: 262272,
                        118784: 536871040,
                        122880: 0,
                        126976: 17039488,
                        67584: 553648256,
                        71680: 16777216,
                        75776: 17039360,
                        79872: 537133184,
                        83968: 536870912,
                        88064: 17039488,
                        92160: 128,
                        96256: 553910272,
                        100352: 262272,
                        104448: 553910400,
                        108544: 0,
                        112640: 553648128,
                        116736: 16777344,
                        120832: 262144,
                        124928: 537133056,
                        129024: 536871040
                    }, {
                        0: 268435464,
                        256: 8192,
                        512: 270532608,
                        768: 270540808,
                        1024: 268443648,
                        1280: 2097152,
                        1536: 2097160,
                        1792: 268435456,
                        2048: 0,
                        2304: 268443656,
                        2560: 2105344,
                        2816: 8,
                        3072: 270532616,
                        3328: 2105352,
                        3584: 8200,
                        3840: 270540800,
                        128: 270532608,
                        384: 270540808,
                        640: 8,
                        896: 2097152,
                        1152: 2105352,
                        1408: 268435464,
                        1664: 268443648,
                        1920: 8200,
                        2176: 2097160,
                        2432: 8192,
                        2688: 268443656,
                        2944: 270532616,
                        3200: 0,
                        3456: 270540800,
                        3712: 2105344,
                        3968: 268435456,
                        4096: 268443648,
                        4352: 270532616,
                        4608: 270540808,
                        4864: 8200,
                        5120: 2097152,
                        5376: 268435456,
                        5632: 268435464,
                        5888: 2105344,
                        6144: 2105352,
                        6400: 0,
                        6656: 8,
                        6912: 270532608,
                        7168: 8192,
                        7424: 268443656,
                        7680: 270540800,
                        7936: 2097160,
                        4224: 8,
                        4480: 2105344,
                        4736: 2097152,
                        4992: 268435464,
                        5248: 268443648,
                        5504: 8200,
                        5760: 270540808,
                        6016: 270532608,
                        6272: 270540800,
                        6528: 270532616,
                        6784: 8192,
                        7040: 2105352,
                        7296: 2097160,
                        7552: 0,
                        7808: 268435456,
                        8064: 268443656
                    }, {
                        0: 1048576,
                        16: 33555457,
                        32: 1024,
                        48: 1049601,
                        64: 34604033,
                        80: 0,
                        96: 1,
                        112: 34603009,
                        128: 33555456,
                        144: 1048577,
                        160: 33554433,
                        176: 34604032,
                        192: 34603008,
                        208: 1025,
                        224: 1049600,
                        240: 33554432,
                        8: 34603009,
                        24: 0,
                        40: 33555457,
                        56: 34604032,
                        72: 1048576,
                        88: 33554433,
                        104: 33554432,
                        120: 1025,
                        136: 1049601,
                        152: 33555456,
                        168: 34603008,
                        184: 1048577,
                        200: 1024,
                        216: 34604033,
                        232: 1,
                        248: 1049600,
                        256: 33554432,
                        272: 1048576,
                        288: 33555457,
                        304: 34603009,
                        320: 1048577,
                        336: 33555456,
                        352: 34604032,
                        368: 1049601,
                        384: 1025,
                        400: 34604033,
                        416: 1049600,
                        432: 1,
                        448: 0,
                        464: 34603008,
                        480: 33554433,
                        496: 1024,
                        264: 1049600,
                        280: 33555457,
                        296: 34603009,
                        312: 1,
                        328: 33554432,
                        344: 1048576,
                        360: 1025,
                        376: 34604032,
                        392: 33554433,
                        408: 34603008,
                        424: 0,
                        440: 34604033,
                        456: 1049601,
                        472: 1024,
                        488: 33555456,
                        504: 1048577
                    }, {
                        0: 134219808,
                        1: 131072,
                        2: 134217728,
                        3: 32,
                        4: 131104,
                        5: 134350880,
                        6: 134350848,
                        7: 2048,
                        8: 134348800,
                        9: 134219776,
                        10: 133120,
                        11: 134348832,
                        12: 2080,
                        13: 0,
                        14: 134217760,
                        15: 133152,
                        2147483648: 2048,
                        2147483649: 134350880,
                        2147483650: 134219808,
                        2147483651: 134217728,
                        2147483652: 134348800,
                        2147483653: 133120,
                        2147483654: 133152,
                        2147483655: 32,
                        2147483656: 134217760,
                        2147483657: 2080,
                        2147483658: 131104,
                        2147483659: 134350848,
                        2147483660: 0,
                        2147483661: 134348832,
                        2147483662: 134219776,
                        2147483663: 131072,
                        16: 133152,
                        17: 134350848,
                        18: 32,
                        19: 2048,
                        20: 134219776,
                        21: 134217760,
                        22: 134348832,
                        23: 131072,
                        24: 0,
                        25: 131104,
                        26: 134348800,
                        27: 134219808,
                        28: 134350880,
                        29: 133120,
                        30: 2080,
                        31: 134217728,
                        2147483664: 131072,
                        2147483665: 2048,
                        2147483666: 134348832,
                        2147483667: 133152,
                        2147483668: 32,
                        2147483669: 134348800,
                        2147483670: 134217728,
                        2147483671: 134219808,
                        2147483672: 134350880,
                        2147483673: 134217760,
                        2147483674: 134219776,
                        2147483675: 0,
                        2147483676: 133120,
                        2147483677: 2080,
                        2147483678: 131104,
                        2147483679: 134350848
                    }],
                    d = [4160749569, 528482304, 33030144, 2064384, 129024, 8064, 504, 2147483679],
                    p = a.DES = s.extend({
                        _doReset: function() {
                            for (var w = this._key, B = w.words, x = [], C = 0; C < 56; C++) {
                                var b = o[C] - 1;
                                x[C] = B[b >>> 5] >>> 31 - b % 32 & 1
                            }
                            for (var F = this._subKeys = [], T = 0; T < 16; T++) {
                                for (var I = F[T] = [], D = u[T], C = 0; C < 24; C++) I[C / 6 | 0] |= x[(l[C] - 1 + D) % 28] << 31 - C % 6, I[4 + (C / 6 | 0)] |= x[28 + (l[C + 24] - 1 + D) % 28] << 31 - C % 6;
                                I[0] = I[0] << 1 | I[0] >>> 31;
                                for (var C = 1; C < 7; C++) I[C] = I[C] >>> (C - 1) * 4 + 3;
                                I[7] = I[7] << 5 | I[7] >>> 27
                            }
                            for (var U = this._invSubKeys = [], C = 0; C < 16; C++) U[C] = F[15 - C]
                        },
                        encryptBlock: function(w, B) {
                            this._doCryptBlock(w, B, this._subKeys)
                        },
                        decryptBlock: function(w, B) {
                            this._doCryptBlock(w, B, this._invSubKeys)
                        },
                        _doCryptBlock: function(w, B, x) {
                            this._lBlock = w[B], this._rBlock = w[B + 1], m.call(this, 4, 252645135), m.call(this, 16, 65535), g.call(this, 2, 858993459), g.call(this, 8, 16711935), m.call(this, 1, 1431655765);
                            for (var C = 0; C < 16; C++) {
                                for (var b = x[C], F = this._lBlock, T = this._rBlock, I = 0, D = 0; D < 8; D++) I |= f[D][((T ^ b[D]) & d[D]) >>> 0];
                                this._lBlock = T, this._rBlock = F ^ I
                            }
                            var U = this._lBlock;
                            this._lBlock = this._rBlock, this._rBlock = U, m.call(this, 1, 1431655765), g.call(this, 8, 16711935), g.call(this, 2, 858993459), m.call(this, 16, 65535), m.call(this, 4, 252645135), w[B] = this._lBlock, w[B + 1] = this._rBlock
                        },
                        keySize: 64 / 32,
                        ivSize: 64 / 32,
                        blockSize: 64 / 32
                    });

                function m(w, B) {
                    var x = (this._lBlock >>> w ^ this._rBlock) & B;
                    this._rBlock ^= x, this._lBlock ^= x << w
                }

                function g(w, B) {
                    var x = (this._rBlock >>> w ^ this._lBlock) & B;
                    this._lBlock ^= x, this._rBlock ^= x << w
                }
                r.DES = s._createHelper(p);
                var y = a.TripleDES = s.extend({
                    _doReset: function() {
                        var w = this._key,
                            B = w.words;
                        if (B.length !== 2 && B.length !== 4 && B.length < 6) throw new Error("Invalid key length - 3DES requires the key length to be 64, 128, 192 or >192.");
                        var x = B.slice(0, 2),
                            C = B.length < 4 ? B.slice(0, 2) : B.slice(2, 4),
                            b = B.length < 6 ? B.slice(0, 2) : B.slice(4, 6);
                        this._des1 = p.createEncryptor(i.create(x)), this._des2 = p.createEncryptor(i.create(C)), this._des3 = p.createEncryptor(i.create(b))
                    },
                    encryptBlock: function(w, B) {
                        this._des1.encryptBlock(w, B), this._des2.decryptBlock(w, B), this._des3.encryptBlock(w, B)
                    },
                    decryptBlock: function(w, B) {
                        this._des3.decryptBlock(w, B), this._des2.encryptBlock(w, B), this._des1.decryptBlock(w, B)
                    },
                    keySize: 192 / 32,
                    ivSize: 64 / 32,
                    blockSize: 64 / 32
                });
                r.TripleDES = s._createHelper(y)
            }(), n.TripleDES
        })
    }(sd)), sd.exports
}
var ad = {
        exports: {}
    },
    L4;

function oL() {
    return L4 || (L4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), aa(), oa(), ps(), Ln())
        })(ht, function(n) {
            return function() {
                var r = n,
                    A = r.lib,
                    i = A.StreamCipher,
                    s = r.algo,
                    a = s.RC4 = i.extend({
                        _doReset: function() {
                            for (var u = this._key, f = u.words, d = u.sigBytes, p = this._S = [], m = 0; m < 256; m++) p[m] = m;
                            for (var m = 0, g = 0; m < 256; m++) {
                                var y = m % d,
                                    w = f[y >>> 2] >>> 24 - y % 4 * 8 & 255;
                                g = (g + p[m] + w) % 256;
                                var B = p[m];
                                p[m] = p[g], p[g] = B
                            }
                            this._i = this._j = 0
                        },
                        _doProcessBlock: function(u, f) {
                            u[f] ^= o.call(this)
                        },
                        keySize: 256 / 32,
                        ivSize: 0
                    });

                function o() {
                    for (var u = this._S, f = this._i, d = this._j, p = 0, m = 0; m < 4; m++) {
                        f = (f + 1) % 256, d = (d + u[f]) % 256;
                        var g = u[f];
                        u[f] = u[d], u[d] = g, p |= u[(u[f] + u[d]) % 256] << 24 - m * 8
                    }
                    return this._i = f, this._j = d, p
                }
                r.RC4 = i._createHelper(a);
                var l = s.RC4Drop = a.extend({
                    cfg: a.cfg.extend({
                        drop: 192
                    }),
                    _doReset: function() {
                        a._doReset.call(this);
                        for (var u = this.cfg.drop; u > 0; u--) o.call(this)
                    }
                });
                r.RC4Drop = i._createHelper(l)
            }(), n.RC4
        })
    }(ad)), ad.exports
}
var od = {
        exports: {}
    },
    k4;

function lL() {
    return k4 || (k4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), aa(), oa(), ps(), Ln())
        })(ht, function(n) {
            return function() {
                var r = n,
                    A = r.lib,
                    i = A.StreamCipher,
                    s = r.algo,
                    a = [],
                    o = [],
                    l = [],
                    u = s.Rabbit = i.extend({
                        _doReset: function() {
                            for (var d = this._key.words, p = this.cfg.iv, m = 0; m < 4; m++) d[m] = (d[m] << 8 | d[m] >>> 24) & 16711935 | (d[m] << 24 | d[m] >>> 8) & 4278255360;
                            var g = this._X = [d[0], d[3] << 16 | d[2] >>> 16, d[1], d[0] << 16 | d[3] >>> 16, d[2], d[1] << 16 | d[0] >>> 16, d[3], d[2] << 16 | d[1] >>> 16],
                                y = this._C = [d[2] << 16 | d[2] >>> 16, d[0] & 4294901760 | d[1] & 65535, d[3] << 16 | d[3] >>> 16, d[1] & 4294901760 | d[2] & 65535, d[0] << 16 | d[0] >>> 16, d[2] & 4294901760 | d[3] & 65535, d[1] << 16 | d[1] >>> 16, d[3] & 4294901760 | d[0] & 65535];
                            this._b = 0;
                            for (var m = 0; m < 4; m++) f.call(this);
                            for (var m = 0; m < 8; m++) y[m] ^= g[m + 4 & 7];
                            if (p) {
                                var w = p.words,
                                    B = w[0],
                                    x = w[1],
                                    C = (B << 8 | B >>> 24) & 16711935 | (B << 24 | B >>> 8) & 4278255360,
                                    b = (x << 8 | x >>> 24) & 16711935 | (x << 24 | x >>> 8) & 4278255360,
                                    F = C >>> 16 | b & 4294901760,
                                    T = b << 16 | C & 65535;
                                y[0] ^= C, y[1] ^= F, y[2] ^= b, y[3] ^= T, y[4] ^= C, y[5] ^= F, y[6] ^= b, y[7] ^= T;
                                for (var m = 0; m < 4; m++) f.call(this)
                            }
                        },
                        _doProcessBlock: function(d, p) {
                            var m = this._X;
                            f.call(this), a[0] = m[0] ^ m[5] >>> 16 ^ m[3] << 16, a[1] = m[2] ^ m[7] >>> 16 ^ m[5] << 16, a[2] = m[4] ^ m[1] >>> 16 ^ m[7] << 16, a[3] = m[6] ^ m[3] >>> 16 ^ m[1] << 16;
                            for (var g = 0; g < 4; g++) a[g] = (a[g] << 8 | a[g] >>> 24) & 16711935 | (a[g] << 24 | a[g] >>> 8) & 4278255360, d[p + g] ^= a[g]
                        },
                        blockSize: 128 / 32,
                        ivSize: 64 / 32
                    });

                function f() {
                    for (var d = this._X, p = this._C, m = 0; m < 8; m++) o[m] = p[m];
                    p[0] = p[0] + 1295307597 + this._b | 0, p[1] = p[1] + 3545052371 + (p[0] >>> 0 < o[0] >>> 0 ? 1 : 0) | 0, p[2] = p[2] + 886263092 + (p[1] >>> 0 < o[1] >>> 0 ? 1 : 0) | 0, p[3] = p[3] + 1295307597 + (p[2] >>> 0 < o[2] >>> 0 ? 1 : 0) | 0, p[4] = p[4] + 3545052371 + (p[3] >>> 0 < o[3] >>> 0 ? 1 : 0) | 0, p[5] = p[5] + 886263092 + (p[4] >>> 0 < o[4] >>> 0 ? 1 : 0) | 0, p[6] = p[6] + 1295307597 + (p[5] >>> 0 < o[5] >>> 0 ? 1 : 0) | 0, p[7] = p[7] + 3545052371 + (p[6] >>> 0 < o[6] >>> 0 ? 1 : 0) | 0, this._b = p[7] >>> 0 < o[7] >>> 0 ? 1 : 0;
                    for (var m = 0; m < 8; m++) {
                        var g = d[m] + p[m],
                            y = g & 65535,
                            w = g >>> 16,
                            B = ((y * y >>> 17) + y * w >>> 15) + w * w,
                            x = ((g & 4294901760) * g | 0) + ((g & 65535) * g | 0);
                        l[m] = B ^ x
                    }
                    d[0] = l[0] + (l[7] << 16 | l[7] >>> 16) + (l[6] << 16 | l[6] >>> 16) | 0, d[1] = l[1] + (l[0] << 8 | l[0] >>> 24) + l[7] | 0, d[2] = l[2] + (l[1] << 16 | l[1] >>> 16) + (l[0] << 16 | l[0] >>> 16) | 0, d[3] = l[3] + (l[2] << 8 | l[2] >>> 24) + l[1] | 0, d[4] = l[4] + (l[3] << 16 | l[3] >>> 16) + (l[2] << 16 | l[2] >>> 16) | 0, d[5] = l[5] + (l[4] << 8 | l[4] >>> 24) + l[3] | 0, d[6] = l[6] + (l[5] << 16 | l[5] >>> 16) + (l[4] << 16 | l[4] >>> 16) | 0, d[7] = l[7] + (l[6] << 8 | l[6] >>> 24) + l[5] | 0
                }
                r.Rabbit = i._createHelper(u)
            }(), n.Rabbit
        })
    }(od)), od.exports
}
var ld = {
        exports: {}
    },
    H4;

function uL() {
    return H4 || (H4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), aa(), oa(), ps(), Ln())
        })(ht, function(n) {
            return function() {
                var r = n,
                    A = r.lib,
                    i = A.StreamCipher,
                    s = r.algo,
                    a = [],
                    o = [],
                    l = [],
                    u = s.RabbitLegacy = i.extend({
                        _doReset: function() {
                            var d = this._key.words,
                                p = this.cfg.iv,
                                m = this._X = [d[0], d[3] << 16 | d[2] >>> 16, d[1], d[0] << 16 | d[3] >>> 16, d[2], d[1] << 16 | d[0] >>> 16, d[3], d[2] << 16 | d[1] >>> 16],
                                g = this._C = [d[2] << 16 | d[2] >>> 16, d[0] & 4294901760 | d[1] & 65535, d[3] << 16 | d[3] >>> 16, d[1] & 4294901760 | d[2] & 65535, d[0] << 16 | d[0] >>> 16, d[2] & 4294901760 | d[3] & 65535, d[1] << 16 | d[1] >>> 16, d[3] & 4294901760 | d[0] & 65535];
                            this._b = 0;
                            for (var y = 0; y < 4; y++) f.call(this);
                            for (var y = 0; y < 8; y++) g[y] ^= m[y + 4 & 7];
                            if (p) {
                                var w = p.words,
                                    B = w[0],
                                    x = w[1],
                                    C = (B << 8 | B >>> 24) & 16711935 | (B << 24 | B >>> 8) & 4278255360,
                                    b = (x << 8 | x >>> 24) & 16711935 | (x << 24 | x >>> 8) & 4278255360,
                                    F = C >>> 16 | b & 4294901760,
                                    T = b << 16 | C & 65535;
                                g[0] ^= C, g[1] ^= F, g[2] ^= b, g[3] ^= T, g[4] ^= C, g[5] ^= F, g[6] ^= b, g[7] ^= T;
                                for (var y = 0; y < 4; y++) f.call(this)
                            }
                        },
                        _doProcessBlock: function(d, p) {
                            var m = this._X;
                            f.call(this), a[0] = m[0] ^ m[5] >>> 16 ^ m[3] << 16, a[1] = m[2] ^ m[7] >>> 16 ^ m[5] << 16, a[2] = m[4] ^ m[1] >>> 16 ^ m[7] << 16, a[3] = m[6] ^ m[3] >>> 16 ^ m[1] << 16;
                            for (var g = 0; g < 4; g++) a[g] = (a[g] << 8 | a[g] >>> 24) & 16711935 | (a[g] << 24 | a[g] >>> 8) & 4278255360, d[p + g] ^= a[g]
                        },
                        blockSize: 128 / 32,
                        ivSize: 64 / 32
                    });

                function f() {
                    for (var d = this._X, p = this._C, m = 0; m < 8; m++) o[m] = p[m];
                    p[0] = p[0] + 1295307597 + this._b | 0, p[1] = p[1] + 3545052371 + (p[0] >>> 0 < o[0] >>> 0 ? 1 : 0) | 0, p[2] = p[2] + 886263092 + (p[1] >>> 0 < o[1] >>> 0 ? 1 : 0) | 0, p[3] = p[3] + 1295307597 + (p[2] >>> 0 < o[2] >>> 0 ? 1 : 0) | 0, p[4] = p[4] + 3545052371 + (p[3] >>> 0 < o[3] >>> 0 ? 1 : 0) | 0, p[5] = p[5] + 886263092 + (p[4] >>> 0 < o[4] >>> 0 ? 1 : 0) | 0, p[6] = p[6] + 1295307597 + (p[5] >>> 0 < o[5] >>> 0 ? 1 : 0) | 0, p[7] = p[7] + 3545052371 + (p[6] >>> 0 < o[6] >>> 0 ? 1 : 0) | 0, this._b = p[7] >>> 0 < o[7] >>> 0 ? 1 : 0;
                    for (var m = 0; m < 8; m++) {
                        var g = d[m] + p[m],
                            y = g & 65535,
                            w = g >>> 16,
                            B = ((y * y >>> 17) + y * w >>> 15) + w * w,
                            x = ((g & 4294901760) * g | 0) + ((g & 65535) * g | 0);
                        l[m] = B ^ x
                    }
                    d[0] = l[0] + (l[7] << 16 | l[7] >>> 16) + (l[6] << 16 | l[6] >>> 16) | 0, d[1] = l[1] + (l[0] << 8 | l[0] >>> 24) + l[7] | 0, d[2] = l[2] + (l[1] << 16 | l[1] >>> 16) + (l[0] << 16 | l[0] >>> 16) | 0, d[3] = l[3] + (l[2] << 8 | l[2] >>> 24) + l[1] | 0, d[4] = l[4] + (l[3] << 16 | l[3] >>> 16) + (l[2] << 16 | l[2] >>> 16) | 0, d[5] = l[5] + (l[4] << 8 | l[4] >>> 24) + l[3] | 0, d[6] = l[6] + (l[5] << 16 | l[5] >>> 16) + (l[4] << 16 | l[4] >>> 16) | 0, d[7] = l[7] + (l[6] << 8 | l[6] >>> 24) + l[5] | 0
                }
                r.RabbitLegacy = i._createHelper(u)
            }(), n.RabbitLegacy
        })
    }(ld)), ld.exports
}
var ud = {
        exports: {}
    },
    M4;

function cL() {
    return M4 || (M4 = 1, function(e, t) {
        (function(n, r, A) {
            e.exports = r(Ft(), aa(), oa(), ps(), Ln())
        })(ht, function(n) {
            return function() {
                var r = n,
                    A = r.lib,
                    i = A.BlockCipher,
                    s = r.algo;
                const a = 16,
                    o = [608135816, 2242054355, 320440878, 57701188, 2752067618, 698298832, 137296536, 3964562569, 1160258022, 953160567, 3193202383, 887688300, 3232508343, 3380367581, 1065670069, 3041331479, 2450970073, 2306472731],
                    l = [
                        [3509652390, 2564797868, 805139163, 3491422135, 3101798381, 1780907670, 3128725573, 4046225305, 614570311, 3012652279, 134345442, 2240740374, 1667834072, 1901547113, 2757295779, 4103290238, 227898511, 1921955416, 1904987480, 2182433518, 2069144605, 3260701109, 2620446009, 720527379, 3318853667, 677414384, 3393288472, 3101374703, 2390351024, 1614419982, 1822297739, 2954791486, 3608508353, 3174124327, 2024746970, 1432378464, 3864339955, 2857741204, 1464375394, 1676153920, 1439316330, 715854006, 3033291828, 289532110, 2706671279, 2087905683, 3018724369, 1668267050, 732546397, 1947742710, 3462151702, 2609353502, 2950085171, 1814351708, 2050118529, 680887927, 999245976, 1800124847, 3300911131, 1713906067, 1641548236, 4213287313, 1216130144, 1575780402, 4018429277, 3917837745, 3693486850, 3949271944, 596196993, 3549867205, 258830323, 2213823033, 772490370, 2760122372, 1774776394, 2652871518, 566650946, 4142492826, 1728879713, 2882767088, 1783734482, 3629395816, 2517608232, 2874225571, 1861159788, 326777828, 3124490320, 2130389656, 2716951837, 967770486, 1724537150, 2185432712, 2364442137, 1164943284, 2105845187, 998989502, 3765401048, 2244026483, 1075463327, 1455516326, 1322494562, 910128902, 469688178, 1117454909, 936433444, 3490320968, 3675253459, 1240580251, 122909385, 2157517691, 634681816, 4142456567, 3825094682, 3061402683, 2540495037, 79693498, 3249098678, 1084186820, 1583128258, 426386531, 1761308591, 1047286709, 322548459, 995290223, 1845252383, 2603652396, 3431023940, 2942221577, 3202600964, 3727903485, 1712269319, 422464435, 3234572375, 1170764815, 3523960633, 3117677531, 1434042557, 442511882, 3600875718, 1076654713, 1738483198, 4213154764, 2393238008, 3677496056, 1014306527, 4251020053, 793779912, 2902807211, 842905082, 4246964064, 1395751752, 1040244610, 2656851899, 3396308128, 445077038, 3742853595, 3577915638, 679411651, 2892444358, 2354009459, 1767581616, 3150600392, 3791627101, 3102740896, 284835224, 4246832056, 1258075500, 768725851, 2589189241, 3069724005, 3532540348, 1274779536, 3789419226, 2764799539, 1660621633, 3471099624, 4011903706, 913787905, 3497959166, 737222580, 2514213453, 2928710040, 3937242737, 1804850592, 3499020752, 2949064160, 2386320175, 2390070455, 2415321851, 4061277028, 2290661394, 2416832540, 1336762016, 1754252060, 3520065937, 3014181293, 791618072, 3188594551, 3933548030, 2332172193, 3852520463, 3043980520, 413987798, 3465142937, 3030929376, 4245938359, 2093235073, 3534596313, 375366246, 2157278981, 2479649556, 555357303, 3870105701, 2008414854, 3344188149, 4221384143, 3956125452, 2067696032, 3594591187, 2921233993, 2428461, 544322398, 577241275, 1471733935, 610547355, 4027169054, 1432588573, 1507829418, 2025931657, 3646575487, 545086370, 48609733, 2200306550, 1653985193, 298326376, 1316178497, 3007786442, 2064951626, 458293330, 2589141269, 3591329599, 3164325604, 727753846, 2179363840, 146436021, 1461446943, 4069977195, 705550613, 3059967265, 3887724982, 4281599278, 3313849956, 1404054877, 2845806497, 146425753, 1854211946],
                        [1266315497, 3048417604, 3681880366, 3289982499, 290971e4, 1235738493, 2632868024, 2414719590, 3970600049, 1771706367, 1449415276, 3266420449, 422970021, 1963543593, 2690192192, 3826793022, 1062508698, 1531092325, 1804592342, 2583117782, 2714934279, 4024971509, 1294809318, 4028980673, 1289560198, 2221992742, 1669523910, 35572830, 157838143, 1052438473, 1016535060, 1802137761, 1753167236, 1386275462, 3080475397, 2857371447, 1040679964, 2145300060, 2390574316, 1461121720, 2956646967, 4031777805, 4028374788, 33600511, 2920084762, 1018524850, 629373528, 3691585981, 3515945977, 2091462646, 2486323059, 586499841, 988145025, 935516892, 3367335476, 2599673255, 2839830854, 265290510, 3972581182, 2759138881, 3795373465, 1005194799, 847297441, 406762289, 1314163512, 1332590856, 1866599683, 4127851711, 750260880, 613907577, 1450815602, 3165620655, 3734664991, 3650291728, 3012275730, 3704569646, 1427272223, 778793252, 1343938022, 2676280711, 2052605720, 1946737175, 3164576444, 3914038668, 3967478842, 3682934266, 1661551462, 3294938066, 4011595847, 840292616, 3712170807, 616741398, 312560963, 711312465, 1351876610, 322626781, 1910503582, 271666773, 2175563734, 1594956187, 70604529, 3617834859, 1007753275, 1495573769, 4069517037, 2549218298, 2663038764, 504708206, 2263041392, 3941167025, 2249088522, 1514023603, 1998579484, 1312622330, 694541497, 2582060303, 2151582166, 1382467621, 776784248, 2618340202, 3323268794, 2497899128, 2784771155, 503983604, 4076293799, 907881277, 423175695, 432175456, 1378068232, 4145222326, 3954048622, 3938656102, 3820766613, 2793130115, 2977904593, 26017576, 3274890735, 3194772133, 1700274565, 1756076034, 4006520079, 3677328699, 720338349, 1533947780, 354530856, 688349552, 3973924725, 1637815568, 332179504, 3949051286, 53804574, 2852348879, 3044236432, 1282449977, 3583942155, 3416972820, 4006381244, 1617046695, 2628476075, 3002303598, 1686838959, 431878346, 2686675385, 1700445008, 1080580658, 1009431731, 832498133, 3223435511, 2605976345, 2271191193, 2516031870, 1648197032, 4164389018, 2548247927, 300782431, 375919233, 238389289, 3353747414, 2531188641, 2019080857, 1475708069, 455242339, 2609103871, 448939670, 3451063019, 1395535956, 2413381860, 1841049896, 1491858159, 885456874, 4264095073, 4001119347, 1565136089, 3898914787, 1108368660, 540939232, 1173283510, 2745871338, 3681308437, 4207628240, 3343053890, 4016749493, 1699691293, 1103962373, 3625875870, 2256883143, 3830138730, 1031889488, 3479347698, 1535977030, 4236805024, 3251091107, 2132092099, 1774941330, 1199868427, 1452454533, 157007616, 2904115357, 342012276, 595725824, 1480756522, 206960106, 497939518, 591360097, 863170706, 2375253569, 3596610801, 1814182875, 2094937945, 3421402208, 1082520231, 3463918190, 2785509508, 435703966, 3908032597, 1641649973, 2842273706, 3305899714, 1510255612, 2148256476, 2655287854, 3276092548, 4258621189, 236887753, 3681803219, 274041037, 1734335097, 3815195456, 3317970021, 1899903192, 1026095262, 4050517792, 356393447, 2410691914, 3873677099, 3682840055],
                        [3913112168, 2491498743, 4132185628, 2489919796, 1091903735, 1979897079, 3170134830, 3567386728, 3557303409, 857797738, 1136121015, 1342202287, 507115054, 2535736646, 337727348, 3213592640, 1301675037, 2528481711, 1895095763, 1721773893, 3216771564, 62756741, 2142006736, 835421444, 2531993523, 1442658625, 3659876326, 2882144922, 676362277, 1392781812, 170690266, 3921047035, 1759253602, 3611846912, 1745797284, 664899054, 1329594018, 3901205900, 3045908486, 2062866102, 2865634940, 3543621612, 3464012697, 1080764994, 553557557, 3656615353, 3996768171, 991055499, 499776247, 1265440854, 648242737, 3940784050, 980351604, 3713745714, 1749149687, 3396870395, 4211799374, 3640570775, 1161844396, 3125318951, 1431517754, 545492359, 4268468663, 3499529547, 1437099964, 2702547544, 3433638243, 2581715763, 2787789398, 1060185593, 1593081372, 2418618748, 4260947970, 69676912, 2159744348, 86519011, 2512459080, 3838209314, 1220612927, 3339683548, 133810670, 1090789135, 1078426020, 1569222167, 845107691, 3583754449, 4072456591, 1091646820, 628848692, 1613405280, 3757631651, 526609435, 236106946, 48312990, 2942717905, 3402727701, 1797494240, 859738849, 992217954, 4005476642, 2243076622, 3870952857, 3732016268, 765654824, 3490871365, 2511836413, 1685915746, 3888969200, 1414112111, 2273134842, 3281911079, 4080962846, 172450625, 2569994100, 980381355, 4109958455, 2819808352, 2716589560, 2568741196, 3681446669, 3329971472, 1835478071, 660984891, 3704678404, 4045999559, 3422617507, 3040415634, 1762651403, 1719377915, 3470491036, 2693910283, 3642056355, 3138596744, 1364962596, 2073328063, 1983633131, 926494387, 3423689081, 2150032023, 4096667949, 1749200295, 3328846651, 309677260, 2016342300, 1779581495, 3079819751, 111262694, 1274766160, 443224088, 298511866, 1025883608, 3806446537, 1145181785, 168956806, 3641502830, 3584813610, 1689216846, 3666258015, 3200248200, 1692713982, 2646376535, 4042768518, 1618508792, 1610833997, 3523052358, 4130873264, 2001055236, 3610705100, 2202168115, 4028541809, 2961195399, 1006657119, 2006996926, 3186142756, 1430667929, 3210227297, 1314452623, 4074634658, 4101304120, 2273951170, 1399257539, 3367210612, 3027628629, 1190975929, 2062231137, 2333990788, 2221543033, 2438960610, 1181637006, 548689776, 2362791313, 3372408396, 3104550113, 3145860560, 296247880, 1970579870, 3078560182, 3769228297, 1714227617, 3291629107, 3898220290, 166772364, 1251581989, 493813264, 448347421, 195405023, 2709975567, 677966185, 3703036547, 1463355134, 2715995803, 1338867538, 1343315457, 2802222074, 2684532164, 233230375, 2599980071, 2000651841, 3277868038, 1638401717, 4028070440, 3237316320, 6314154, 819756386, 300326615, 590932579, 1405279636, 3267499572, 3150704214, 2428286686, 3959192993, 3461946742, 1862657033, 1266418056, 963775037, 2089974820, 2263052895, 1917689273, 448879540, 3550394620, 3981727096, 150775221, 3627908307, 1303187396, 508620638, 2975983352, 2726630617, 1817252668, 1876281319, 1457606340, 908771278, 3720792119, 3617206836, 2455994898, 1729034894, 1080033504],
                        [976866871, 3556439503, 2881648439, 1522871579, 1555064734, 1336096578, 3548522304, 2579274686, 3574697629, 3205460757, 3593280638, 3338716283, 3079412587, 564236357, 2993598910, 1781952180, 1464380207, 3163844217, 3332601554, 1699332808, 1393555694, 1183702653, 3581086237, 1288719814, 691649499, 2847557200, 2895455976, 3193889540, 2717570544, 1781354906, 1676643554, 2592534050, 3230253752, 1126444790, 2770207658, 2633158820, 2210423226, 2615765581, 2414155088, 3127139286, 673620729, 2805611233, 1269405062, 4015350505, 3341807571, 4149409754, 1057255273, 2012875353, 2162469141, 2276492801, 2601117357, 993977747, 3918593370, 2654263191, 753973209, 36408145, 2530585658, 25011837, 3520020182, 2088578344, 530523599, 2918365339, 1524020338, 1518925132, 3760827505, 3759777254, 1202760957, 3985898139, 3906192525, 674977740, 4174734889, 2031300136, 2019492241, 3983892565, 4153806404, 3822280332, 352677332, 2297720250, 60907813, 90501309, 3286998549, 1016092578, 2535922412, 2839152426, 457141659, 509813237, 4120667899, 652014361, 1966332200, 2975202805, 55981186, 2327461051, 676427537, 3255491064, 2882294119, 3433927263, 1307055953, 942726286, 933058658, 2468411793, 3933900994, 4215176142, 1361170020, 2001714738, 2830558078, 3274259782, 1222529897, 1679025792, 2729314320, 3714953764, 1770335741, 151462246, 3013232138, 1682292957, 1483529935, 471910574, 1539241949, 458788160, 3436315007, 1807016891, 3718408830, 978976581, 1043663428, 3165965781, 1927990952, 4200891579, 2372276910, 3208408903, 3533431907, 1412390302, 2931980059, 4132332400, 1947078029, 3881505623, 4168226417, 2941484381, 1077988104, 1320477388, 886195818, 18198404, 3786409e3, 2509781533, 112762804, 3463356488, 1866414978, 891333506, 18488651, 661792760, 1628790961, 3885187036, 3141171499, 876946877, 2693282273, 1372485963, 791857591, 2686433993, 3759982718, 3167212022, 3472953795, 2716379847, 445679433, 3561995674, 3504004811, 3574258232, 54117162, 3331405415, 2381918588, 3769707343, 4154350007, 1140177722, 4074052095, 668550556, 3214352940, 367459370, 261225585, 2610173221, 4209349473, 3468074219, 3265815641, 314222801, 3066103646, 3808782860, 282218597, 3406013506, 3773591054, 379116347, 1285071038, 846784868, 2669647154, 3771962079, 3550491691, 2305946142, 453669953, 1268987020, 3317592352, 3279303384, 3744833421, 2610507566, 3859509063, 266596637, 3847019092, 517658769, 3462560207, 3443424879, 370717030, 4247526661, 2224018117, 4143653529, 4112773975, 2788324899, 2477274417, 1456262402, 2901442914, 1517677493, 1846949527, 2295493580, 3734397586, 2176403920, 1280348187, 1908823572, 3871786941, 846861322, 1172426758, 3287448474, 3383383037, 1655181056, 3139813346, 901632758, 1897031941, 2986607138, 3066810236, 3447102507, 1393639104, 373351379, 950779232, 625454576, 3124240540, 4148612726, 2007998917, 544563296, 2244738638, 2330496472, 2058025392, 1291430526, 424198748, 50039436, 29584100, 3605783033, 2429876329, 2791104160, 1057563949, 3255363231, 3075367218, 3463963227, 1469046755, 985887462]
                    ];
                var u = {
                    pbox: [],
                    sbox: []
                };

                function f(y, w) {
                    let B = w >> 24 & 255,
                        x = w >> 16 & 255,
                        C = w >> 8 & 255,
                        b = w & 255,
                        F = y.sbox[0][B] + y.sbox[1][x];
                    return F = F ^ y.sbox[2][C], F = F + y.sbox[3][b], F
                }

                function d(y, w, B) {
                    let x = w,
                        C = B,
                        b;
                    for (let F = 0; F < a; ++F) x = x ^ y.pbox[F], C = f(y, x) ^ C, b = x, x = C, C = b;
                    return b = x, x = C, C = b, C = C ^ y.pbox[a], x = x ^ y.pbox[a + 1], {
                        left: x,
                        right: C
                    }
                }

                function p(y, w, B) {
                    let x = w,
                        C = B,
                        b;
                    for (let F = a + 1; F > 1; --F) x = x ^ y.pbox[F], C = f(y, x) ^ C, b = x, x = C, C = b;
                    return b = x, x = C, C = b, C = C ^ y.pbox[1], x = x ^ y.pbox[0], {
                        left: x,
                        right: C
                    }
                }

                function m(y, w, B) {
                    for (let T = 0; T < 4; T++) {
                        y.sbox[T] = [];
                        for (let I = 0; I < 256; I++) y.sbox[T][I] = l[T][I]
                    }
                    let x = 0;
                    for (let T = 0; T < a + 2; T++) y.pbox[T] = o[T] ^ w[x], x++, x >= B && (x = 0);
                    let C = 0,
                        b = 0,
                        F = 0;
                    for (let T = 0; T < a + 2; T += 2) F = d(y, C, b), C = F.left, b = F.right, y.pbox[T] = C, y.pbox[T + 1] = b;
                    for (let T = 0; T < 4; T++)
                        for (let I = 0; I < 256; I += 2) F = d(y, C, b), C = F.left, b = F.right, y.sbox[T][I] = C, y.sbox[T][I + 1] = b;
                    return !0
                }
                var g = s.Blowfish = i.extend({
                    _doReset: function() {
                        if (this._keyPriorReset !== this._key) {
                            var y = this._keyPriorReset = this._key,
                                w = y.words,
                                B = y.sigBytes / 4;
                            m(u, w, B)
                        }
                    },
                    encryptBlock: function(y, w) {
                        var B = d(u, y[w], y[w + 1]);
                        y[w] = B.left, y[w + 1] = B.right
                    },
                    decryptBlock: function(y, w) {
                        var B = p(u, y[w], y[w + 1]);
                        y[w] = B.left, y[w + 1] = B.right
                    },
                    blockSize: 64 / 32,
                    keySize: 128 / 32,
                    ivSize: 64 / 32
                });
                r.Blowfish = i._createHelper(g)
            }(), n.Blowfish
        })
    }(ud)), ud.exports
}(function(e, t) {
    (function(n, r, A) {
        e.exports = r(Ft(), vf(), NO(), $O(), aa(), KO(), oa(), v9(), hp(), VO(), m9(), GO(), zO(), WO(), pp(), jO(), ps(), Ln(), YO(), XO(), JO(), qO(), ZO(), eL(), tL(), nL(), rL(), AL(), iL(), sL(), aL(), oL(), lL(), uL(), cL())
    })(ht, function(n) {
        return n
    })
})(g9);
var zte = g9.exports,
    B9 = {
        exports: {}
    };
(function(e, t) {
    (function(n, r) {
        e.exports = r()
    })(ht, function() {
        var n = 1e3,
            r = 6e4,
            A = 36e5,
            i = "millisecond",
            s = "second",
            a = "minute",
            o = "hour",
            l = "day",
            u = "week",
            f = "month",
            d = "quarter",
            p = "year",
            m = "date",
            g = "Invalid Date",
            y = /^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,
            w = /\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,
            B = {
                name: "en",
                weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),
                months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"),
                ordinal: function(J) {
                    var j = ["th", "st", "nd", "rd"],
                        V = J % 100;
                    return "[" + J + (j[(V - 20) % 10] || j[V] || j[0]) + "]"
                }
            },
            x = function(J, j, V) {
                var ae = String(J);
                return !ae || ae.length >= j ? J : "" + Array(j + 1 - ae.length).join(V) + J
            },
            C = {
                s: x,
                z: function(J) {
                    var j = -J.utcOffset(),
                        V = Math.abs(j),
                        ae = Math.floor(V / 60),
                        Y = V % 60;
                    return (j <= 0 ? "+" : "-") + x(ae, 2, "0") + ":" + x(Y, 2, "0")
                },
                m: function J(j, V) {
                    if (j.date() < V.date()) return -J(V, j);
                    var ae = 12 * (V.year() - j.year()) + (V.month() - j.month()),
                        Y = j.clone().add(ae, f),
                        ue = V - Y < 0,
                        ye = j.clone().add(ae + (ue ? -1 : 1), f);
                    return +(-(ae + (V - Y) / (ue ? Y - ye : ye - Y)) || 0)
                },
                a: function(J) {
                    return J < 0 ? Math.ceil(J) || 0 : Math.floor(J)
                },
                p: function(J) {
                    return {
                        M: f,
                        y: p,
                        w: u,
                        d: l,
                        D: m,
                        h: o,
                        m: a,
                        s,
                        ms: i,
                        Q: d
                    }[J] || String(J || "").toLowerCase().replace(/s$/, "")
                },
                u: function(J) {
                    return J === void 0
                }
            },
            b = "en",
            F = {};
        F[b] = B;
        var T = "$isDayjsObject",
            I = function(J) {
                return J instanceof O || !(!J || !J[T])
            },
            D = function J(j, V, ae) {
                var Y;
                if (!j) return b;
                if (typeof j == "string") {
                    var ue = j.toLowerCase();
                    F[ue] && (Y = ue), V && (F[ue] = V, Y = ue);
                    var ye = j.split("-");
                    if (!Y && ye.length > 1) return J(ye[0])
                } else {
                    var ee = j.name;
                    F[ee] = j, Y = ee
                }
                return !ae && Y && (b = Y), Y || !ae && b
            },
            U = function(J, j) {
                if (I(J)) return J.clone();
                var V = typeof j == "object" ? j : {};
                return V.date = J, V.args = arguments, new O(V)
            },
            Q = C;
        Q.l = D, Q.i = I, Q.w = function(J, j) {
            return U(J, {
                locale: j.$L,
                utc: j.$u,
                x: j.$x,
                $offset: j.$offset
            })
        };
        var O = function() {
                function J(V) {
                    this.$L = D(V.locale, null, !0), this.parse(V), this.$x = this.$x || V.x || {}, this[T] = !0
                }
                var j = J.prototype;
                return j.parse = function(V) {
                    this.$d = function(ae) {
                        var Y = ae.date,
                            ue = ae.utc;
                        if (Y === null) return new Date(NaN);
                        if (Q.u(Y)) return new Date;
                        if (Y instanceof Date) return new Date(Y);
                        if (typeof Y == "string" && !/Z$/i.test(Y)) {
                            var ye = Y.match(y);
                            if (ye) {
                                var ee = ye[2] - 1 || 0,
                                    ce = (ye[7] || "0").substring(0, 3);
                                return ue ? new Date(Date.UTC(ye[1], ee, ye[3] || 1, ye[4] || 0, ye[5] || 0, ye[6] || 0, ce)) : new Date(ye[1], ee, ye[3] || 1, ye[4] || 0, ye[5] || 0, ye[6] || 0, ce)
                            }
                        }
                        return new Date(Y)
                    }(V), this.init()
                }, j.init = function() {
                    var V = this.$d;
                    this.$y = V.getFullYear(), this.$M = V.getMonth(), this.$D = V.getDate(), this.$W = V.getDay(), this.$H = V.getHours(), this.$m = V.getMinutes(), this.$s = V.getSeconds(), this.$ms = V.getMilliseconds()
                }, j.$utils = function() {
                    return Q
                }, j.isValid = function() {
                    return this.$d.toString() !== g
                }, j.isSame = function(V, ae) {
                    var Y = U(V);
                    return this.startOf(ae) <= Y && Y <= this.endOf(ae)
                }, j.isAfter = function(V, ae) {
                    return U(V) < this.startOf(ae)
                }, j.isBefore = function(V, ae) {
                    return this.endOf(ae) < U(V)
                }, j.$g = function(V, ae, Y) {
                    return Q.u(V) ? this[ae] : this.set(Y, V)
                }, j.unix = function() {
                    return Math.floor(this.valueOf() / 1e3)
                }, j.valueOf = function() {
                    return this.$d.getTime()
                }, j.startOf = function(V, ae) {
                    var Y = this,
                        ue = !!Q.u(ae) || ae,
                        ye = Q.p(V),
                        ee = function(De, $e) {
                            var Te = Q.w(Y.$u ? Date.UTC(Y.$y, $e, De) : new Date(Y.$y, $e, De), Y);
                            return ue ? Te : Te.endOf(l)
                        },
                        ce = function(De, $e) {
                            return Q.w(Y.toDate()[De].apply(Y.toDate("s"), (ue ? [0, 0, 0, 0] : [23, 59, 59, 999]).slice($e)), Y)
                        },
                        ve = this.$W,
                        xe = this.$M,
                        se = this.$D,
                        Fe = "set" + (this.$u ? "UTC" : "");
                    switch (ye) {
                        case p:
                            return ue ? ee(1, 0) : ee(31, 11);
                        case f:
                            return ue ? ee(1, xe) : ee(0, xe + 1);
                        case u:
                            var ie = this.$locale().weekStart || 0,
                                _e = (ve < ie ? ve + 7 : ve) - ie;
                            return ee(ue ? se - _e : se + (6 - _e), xe);
                        case l:
                        case m:
                            return ce(Fe + "Hours", 0);
                        case o:
                            return ce(Fe + "Minutes", 1);
                        case a:
                            return ce(Fe + "Seconds", 2);
                        case s:
                            return ce(Fe + "Milliseconds", 3);
                        default:
                            return this.clone()
                    }
                }, j.endOf = function(V) {
                    return this.startOf(V, !1)
                }, j.$set = function(V, ae) {
                    var Y, ue = Q.p(V),
                        ye = "set" + (this.$u ? "UTC" : ""),
                        ee = (Y = {}, Y[l] = ye + "Date", Y[m] = ye + "Date", Y[f] = ye + "Month", Y[p] = ye + "FullYear", Y[o] = ye + "Hours", Y[a] = ye + "Minutes", Y[s] = ye + "Seconds", Y[i] = ye + "Milliseconds", Y)[ue],
                        ce = ue === l ? this.$D + (ae - this.$W) : ae;
                    if (ue === f || ue === p) {
                        var ve = this.clone().set(m, 1);
                        ve.$d[ee](ce), ve.init(), this.$d = ve.set(m, Math.min(this.$D, ve.daysInMonth())).$d
                    } else ee && this.$d[ee](ce);
                    return this.init(), this
                }, j.set = function(V, ae) {
                    return this.clone().$set(V, ae)
                }, j.get = function(V) {
                    return this[Q.p(V)]()
                }, j.add = function(V, ae) {
                    var Y, ue = this;
                    V = Number(V);
                    var ye = Q.p(ae),
                        ee = function(xe) {
                            var se = U(ue);
                            return Q.w(se.date(se.date() + Math.round(xe * V)), ue)
                        };
                    if (ye === f) return this.set(f, this.$M + V);
                    if (ye === p) return this.set(p, this.$y + V);
                    if (ye === l) return ee(1);
                    if (ye === u) return ee(7);
                    var ce = (Y = {}, Y[a] = r, Y[o] = A, Y[s] = n, Y)[ye] || 1,
                        ve = this.$d.getTime() + V * ce;
                    return Q.w(ve, this)
                }, j.subtract = function(V, ae) {
                    return this.add(-1 * V, ae)
                }, j.format = function(V) {
                    var ae = this,
                        Y = this.$locale();
                    if (!this.isValid()) return Y.invalidDate || g;
                    var ue = V || "YYYY-MM-DDTHH:mm:ssZ",
                        ye = Q.z(this),
                        ee = this.$H,
                        ce = this.$m,
                        ve = this.$M,
                        xe = Y.weekdays,
                        se = Y.months,
                        Fe = Y.meridiem,
                        ie = function($e, Te, W, P) {
                            return $e && ($e[Te] || $e(ae, ue)) || W[Te].slice(0, P)
                        },
                        _e = function($e) {
                            return Q.s(ee % 12 || 12, $e, "0")
                        },
                        De = Fe || function($e, Te, W) {
                            var P = $e < 12 ? "AM" : "PM";
                            return W ? P.toLowerCase() : P
                        };
                    return ue.replace(w, function($e, Te) {
                        return Te || function(W) {
                            switch (W) {
                                case "YY":
                                    return String(ae.$y).slice(-2);
                                case "YYYY":
                                    return Q.s(ae.$y, 4, "0");
                                case "M":
                                    return ve + 1;
                                case "MM":
                                    return Q.s(ve + 1, 2, "0");
                                case "MMM":
                                    return ie(Y.monthsShort, ve, se, 3);
                                case "MMMM":
                                    return ie(se, ve);
                                case "D":
                                    return ae.$D;
                                case "DD":
                                    return Q.s(ae.$D, 2, "0");
                                case "d":
                                    return String(ae.$W);
                                case "dd":
                                    return ie(Y.weekdaysMin, ae.$W, xe, 2);
                                case "ddd":
                                    return ie(Y.weekdaysShort, ae.$W, xe, 3);
                                case "dddd":
                                    return xe[ae.$W];
                                case "H":
                                    return String(ee);
                                case "HH":
                                    return Q.s(ee, 2, "0");
                                case "h":
                                    return _e(1);
                                case "hh":
                                    return _e(2);
                                case "a":
                                    return De(ee, ce, !0);
                                case "A":
                                    return De(ee, ce, !1);
                                case "m":
                                    return String(ce);
                                case "mm":
                                    return Q.s(ce, 2, "0");
                                case "s":
                                    return String(ae.$s);
                                case "ss":
                                    return Q.s(ae.$s, 2, "0");
                                case "SSS":
                                    return Q.s(ae.$ms, 3, "0");
                                case "Z":
                                    return ye
                            }
                            return null
                        }($e) || ye.replace(":", "")
                    })
                }, j.utcOffset = function() {
                    return 15 * -Math.round(this.$d.getTimezoneOffset() / 15)
                }, j.diff = function(V, ae, Y) {
                    var ue, ye = this,
                        ee = Q.p(ae),
                        ce = U(V),
                        ve = (ce.utcOffset() - this.utcOffset()) * r,
                        xe = this - ce,
                        se = function() {
                            return Q.m(ye, ce)
                        };
                    switch (ee) {
                        case p:
                            ue = se() / 12;
                            break;
                        case f:
                            ue = se();
                            break;
                        case d:
                            ue = se() / 3;
                            break;
                        case u:
                            ue = (xe - ve) / 6048e5;
                            break;
                        case l:
                            ue = (xe - ve) / 864e5;
                            break;
                        case o:
                            ue = xe / A;
                            break;
                        case a:
                            ue = xe / r;
                            break;
                        case s:
                            ue = xe / n;
                            break;
                        default:
                            ue = xe
                    }
                    return Y ? ue : Q.a(ue)
                }, j.daysInMonth = function() {
                    return this.endOf(f).$D
                }, j.$locale = function() {
                    return F[this.$L]
                }, j.locale = function(V, ae) {
                    if (!V) return this.$L;
                    var Y = this.clone(),
                        ue = D(V, ae, !0);
                    return ue && (Y.$L = ue), Y
                }, j.clone = function() {
                    return Q.w(this.$d, this)
                }, j.toDate = function() {
                    return new Date(this.valueOf())
                }, j.toJSON = function() {
                    return this.isValid() ? this.toISOString() : null
                }, j.toISOString = function() {
                    return this.$d.toISOString()
                }, j.toString = function() {
                    return this.$d.toUTCString()
                }, J
            }(),
            N = O.prototype;
        return U.prototype = N, [
            ["$ms", i],
            ["$s", s],
            ["$m", a],
            ["$H", o],
            ["$W", l],
            ["$M", f],
            ["$y", p],
            ["$D", m]
        ].forEach(function(J) {
            N[J[1]] = function(j) {
                return this.$g(j, J[0], J[1])
            }
        }), U.extend = function(J, j) {
            return J.$i || (J(j, O, U), J.$i = !0), U
        }, U.locale = D, U.isDayjs = I, U.unix = function(J) {
            return U(1e3 * J)
        }, U.en = F[b], U.Ls = F, U.p = {}, U
    })
})(B9);
var gp = B9.exports;
const Wte = xo(gp);

function K2() {}
const wt = Object.assign,
    ii = typeof window < "u",
    ta = e => e !== null && typeof e == "object",
    Jt = e => e != null,
    no = e => typeof e == "function",
    vp = e => ta(e) && no(e.then) && no(e.catch),
    Yl = e => Object.prototype.toString.call(e) === "[object Date]" && !Number.isNaN(e.getTime()),
    w9 = e => typeof e == "number" || /^\d+(\.\d+)?$/.test(e),
    fL = () => ii ? /ios|iphone|ipad|ipod/.test(navigator.userAgent.toLowerCase()) : !1;

function R4(e, t) {
    const n = t.split(".");
    let r = e;
    return n.forEach(A => {
        var i;
        r = ta(r) && (i = r[A]) != null ? i : ""
    }), r
}

function Zt(e, t, n) {
    return t.reduce((r, A) => ((!n || e[A] !== void 0) && (r[A] = e[A]), r), {})
}
const qi = (e, t) => JSON.stringify(e) === JSON.stringify(t),
    lc = e => Array.isArray(e) ? e : [e],
    xn = null,
    nt = [Number, String],
    et = {
        type: Boolean,
        default: !0
    },
    $n = e => ({
        type: e,
        required: !0
    }),
    si = () => ({
        type: Array,
        default: () => []
    }),
    mp = e => ({
        type: Number,
        default: e
    }),
    xt = e => ({
        type: nt,
        default: e
    }),
    ft = e => ({
        type: String,
        default: e
    });

function y0(e) {
    const t = "scrollTop" in e ? e.scrollTop : e.pageYOffset;
    return Math.max(t, 0)
}

function uc(e, t) {
    "scrollTop" in e ? e.scrollTop = t : e.scrollTo(e.scrollX, t)
}

function Bp() {
    return window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0
}

function wp(e) {
    uc(window, e), uc(document.body, e)
}

function N4(e, t) {
    if (e === window) return 0;
    const n = t ? y0(t) : Bp();
    return Dn(e).top + n
}
const dL = fL();

function hL() {
    dL && wp(Bp())
}
const y9 = e => e.stopPropagation();

function vr(e, t) {
    (typeof e.cancelable != "boolean" || e.cancelable) && e.preventDefault(), t && y9(e)
}

function ro(e) {
    const t = gr(e);
    if (!t) return !1;
    const n = window.getComputedStyle(t),
        r = n.display === "none",
        A = t.offsetParent === null && n.position !== "fixed";
    return r || A
}
const {
    width: Fo,
    height: C0
} = M3();

function It(e) {
    if (Jt(e)) return w9(e) ? `${e}px` : String(e)
}

function _o(e) {
    if (Jt(e)) {
        if (Array.isArray(e)) return {
            width: It(e[0]),
            height: It(e[1])
        };
        const t = It(e);
        return {
            width: t,
            height: t
        }
    }
}

function C9(e) {
    const t = {};
    return e !== void 0 && (t.zIndex = +e), t
}
let cd;

function pL() {
    if (!cd) {
        const e = document.documentElement,
            t = e.style.fontSize || window.getComputedStyle(e).fontSize;
        cd = parseFloat(t)
    }
    return cd
}

function gL(e) {
    return e = e.replace(/rem/g, ""), +e * pL()
}

function vL(e) {
    return e = e.replace(/vw/g, ""), +e * Fo.value / 100
}

function mL(e) {
    return e = e.replace(/vh/g, ""), +e * C0.value / 100
}

function yp(e) {
    if (typeof e == "number") return e;
    if (ii) {
        if (e.includes("rem")) return gL(e);
        if (e.includes("vw")) return vL(e);
        if (e.includes("vh")) return mL(e)
    }
    return parseFloat(e)
}
const BL = /-(\w)/g,
    x9 = e => e.replace(BL, (t, n) => n.toUpperCase());

function Ls(e, t = 2) {
    let n = e + "";
    for (; n.length < t;) n = "0" + n;
    return n
}
const rr = (e, t, n) => Math.min(Math.max(e, t), n);

function $4(e, t, n) {
    const r = e.indexOf(t);
    return r === -1 ? e : t === "-" && r !== 0 ? e.slice(0, r) : e.slice(0, r + 1) + e.slice(r).replace(n, "")
}

function wL(e, t = !0, n = !0) {
    t ? e = $4(e, ".", /\./g) : e = e.split(".")[0], n ? e = $4(e, "-", /-/g) : e = e.replace(/-/, "");
    const r = t ? /[^-0-9.]/g : /[^-0-9]/g;
    return e.replace(r, "")
}

function yL(e, t) {
    return Math.round((e + t) * 1e10) / 1e10
}
const {
    hasOwnProperty: CL
} = Object.prototype;

function xL(e, t, n) {
    const r = t[n];
    Jt(r) && (!CL.call(e, n) || !ta(r) ? e[n] = r : e[n] = E9(Object(e[n]), r))
}

function E9(e, t) {
    return Object.keys(t).forEach(n => {
        xL(e, t, n)
    }), e
}
var EL = {
    name: "姓名",
    tel: "电话",
    save: "保存",
    clear: "清空",
    cancel: "取消",
    confirm: "确认",
    delete: "删除",
    loading: "加载中...",
    noCoupon: "暂无优惠券",
    nameEmpty: "请填写姓名",
    addContact: "添加联系人",
    telInvalid: "请填写正确的电话",
    vanCalendar: {
        end: "结束",
        start: "开始",
        title: "日期选择",
        weekdays: ["日", "一", "二", "三", "四", "五", "六"],
        monthTitle: (e, t) => `${e}年${t}月`,
        rangePrompt: e => `最多选择 ${e} 天`
    },
    vanCascader: {
        select: "请选择"
    },
    vanPagination: {
        prev: "上一页",
        next: "下一页"
    },
    vanPullRefresh: {
        pulling: "下拉即可刷新...",
        loosing: "释放即可刷新..."
    },
    vanSubmitBar: {
        label: "合计:"
    },
    vanCoupon: {
        unlimited: "无门槛",
        discount: e => `${e}折`,
        condition: e => `满${e}元可用`
    },
    vanCouponCell: {
        title: "优惠券",
        count: e => `${e}张可用`
    },
    vanCouponList: {
        exchange: "兑换",
        close: "不使用",
        enable: "可用",
        disabled: "不可用",
        placeholder: "输入优惠码"
    },
    vanAddressEdit: {
        area: "地区",
        areaEmpty: "请选择地区",
        addressEmpty: "请填写详细地址",
        addressDetail: "详细地址",
        defaultAddress: "设为默认收货地址"
    },
    vanAddressList: {
        add: "新增地址"
    }
};
const K4 = Ue("zh-CN"),
    V4 = Nt({
        "zh-CN": EL
    }),
    bL = {
        messages() {
            return V4[K4.value]
        },
        use(e, t) {
            K4.value = e, this.add({
                [e]: t
            })
        },
        add(e = {}) {
            E9(V4, e)
        }
    };
var FL = bL;

function _L(e) {
    const t = x9(e) + ".";
    return (n, ...r) => {
        const A = FL.messages(),
            i = R4(A, t + n) || R4(A, n);
        return no(i) ? i(...r) : i
    }
}

function V2(e, t) {
    return t ? typeof t == "string" ? ` ${e}--${t}` : Array.isArray(t) ? t.reduce((n, r) => n + V2(e, r), "") : Object.keys(t).reduce((n, r) => n + (t[r] ? V2(e, r) : ""), "") : ""
}

function SL(e) {
    return (t, n) => (t && typeof t != "string" && (n = t, t = ""), t = t ? `${e}__${t}` : e, `${t}${V2(t,n)}`)
}

function st(e) {
    const t = `van-${e}`;
    return [t, SL(t), _L(t)]
}
const gs = "van-hairline",
    b9 = `${gs}--top`,
    QL = `${gs}--left`,
    UL = `${gs}--right`,
    TL = `${gs}--bottom`,
    IL = `${gs}--surround`,
    F9 = `${gs}--top-bottom`,
    DL = `${gs}-unset--top-bottom`,
    Xl = "van-haptics-feedback",
    PL = Symbol("van-form"),
    OL = 500,
    G4 = 5;

function x0(e, {
    args: t = [],
    done: n,
    canceled: r,
    error: A
}) {
    if (e) {
        const i = e.apply(null, t);
        vp(i) ? i.then(s => {
            s ? n() : r && r()
        }).catch(A || K2) : i ? n() : r && r()
    } else n()
}

function dt(e) {
    return e.install = t => {
        const {
            name: n
        } = e;
        n && (t.component(n, e), t.component(x9(`-${n}`), e))
    }, e
}
const _9 = Symbol();

function Cp(e) {
    const t = fn(_9, null);
    t && je(t, n => {
        n && e()
    })
}
const S9 = (e, t) => {
    const n = Ue(),
        r = () => {
            n.value = Dn(e).height
        };
    return qt(() => {
        if (yt(r), t)
            for (let A = 1; A <= 3; A++) setTimeout(r, 100 * A)
    }), Cp(() => yt(r)), je([Fo, C0], r), n
};

function LL(e, t) {
    const n = S9(e, !0);
    return r => Z("div", {
        class: t("placeholder"),
        style: {
            height: n.value ? `${n.value}px` : void 0
        }
    }, [r()])
}
const [Q9, z4] = st("action-bar"), U9 = Symbol(Q9), kL = {
    placeholder: Boolean,
    safeAreaInsetBottom: et
};
var HL = tt({
    name: Q9,
    props: kL,
    setup(e, {
        slots: t
    }) {
        const n = Ue(),
            r = LL(n, z4),
            {
                linkChildren: A
            } = FA(U9);
        A();
        const i = () => {
            var s;
            return Z("div", {
                ref: n,
                class: [z4(), {
                    "van-safe-area-bottom": e.safeAreaInsetBottom
                }]
            }, [(s = t.default) == null ? void 0 : s.call(t)])
        };
        return () => e.placeholder ? r(i) : i()
    }
});
const ML = dt(HL);

function an(e) {
    const t = zt();
    t && wt(t.proxy, e)
}
const So = {
    to: [String, Object],
    url: String,
    replace: Boolean
};

function T9({
    to: e,
    url: t,
    replace: n,
    $router: r
}) {
    e && r ? r[n ? "replace" : "push"](e) : t && (n ? location.replace(t) : location.href = t)
}

function E0() {
    const e = zt().proxy;
    return () => T9(e)
}
const [RL, W4] = st("badge"), NL = {
    dot: Boolean,
    max: nt,
    tag: ft("div"),
    color: String,
    offset: Array,
    content: nt,
    showZero: et,
    position: ft("top-right")
};
var $L = tt({
    name: RL,
    props: NL,
    setup(e, {
        slots: t
    }) {
        const n = () => {
                if (t.content) return !0;
                const {
                    content: a,
                    showZero: o
                } = e;
                return Jt(a) && a !== "" && (o || a !== 0 && a !== "0")
            },
            r = () => {
                const {
                    dot: a,
                    max: o,
                    content: l
                } = e;
                if (!a && n()) return t.content ? t.content() : Jt(o) && w9(l) && +l > +o ? `${o}+` : l
            },
            A = a => a.startsWith("-") ? a.replace("-", "") : `-${a}`,
            i = Oe(() => {
                const a = {
                    background: e.color
                };
                if (e.offset) {
                    const [o, l] = e.offset, {
                        position: u
                    } = e, [f, d] = u.split("-");
                    t.default ? (typeof l == "number" ? a[f] = It(f === "top" ? l : -l) : a[f] = f === "top" ? It(l) : A(l), typeof o == "number" ? a[d] = It(d === "left" ? o : -o) : a[d] = d === "left" ? It(o) : A(o)) : (a.marginTop = It(l), a.marginLeft = It(o))
                }
                return a
            }),
            s = () => {
                if (n() || e.dot) return Z("div", {
                    class: W4([e.position, {
                        dot: e.dot,
                        fixed: !!t.default
                    }]),
                    style: i.value
                }, [r()])
            };
        return () => {
            if (t.default) {
                const {
                    tag: a
                } = e;
                return Z(a, {
                    class: W4("wrapper")
                }, {
                    default: () => [t.default(), s()]
                })
            }
            return s()
        }
    }
});
const mf = dt($L);
let KL = 2e3;
const VL = () => ++KL,
    [GL, jte] = st("config-provider"),
    zL = Symbol(GL),
    [WL, j4] = st("icon"),
    jL = e => e == null ? void 0 : e.includes("/"),
    YL = {
        dot: Boolean,
        tag: ft("i"),
        name: String,
        size: nt,
        badge: nt,
        color: String,
        badgeProps: Object,
        classPrefix: String
    };
var XL = tt({
    name: WL,
    props: YL,
    setup(e, {
        slots: t
    }) {
        const n = fn(zL, null),
            r = Oe(() => e.classPrefix || (n == null ? void 0 : n.iconPrefix) || j4());
        return () => {
            const {
                tag: A,
                dot: i,
                name: s,
                size: a,
                badge: o,
                color: l
            } = e, u = jL(s);
            return Z(mf, $t({
                dot: i,
                tag: A,
                class: [r.value, u ? "" : `${r.value}-${s}`],
                style: {
                    color: l,
                    fontSize: It(a)
                },
                content: o
            }, e.badgeProps), {
                default: () => {
                    var f;
                    return [(f = t.default) == null ? void 0 : f.call(t), u && Z("img", {
                        class: j4("image"),
                        src: s
                    }, null)]
                }
            })
        }
    }
});
const En = dt(XL),
    [JL, Ql] = st("loading"),
    qL = Array(12).fill(null).map((e, t) => Z("i", {
        class: Ql("line", String(t + 1))
    }, null)),
    ZL = Z("svg", {
        class: Ql("circular"),
        viewBox: "25 25 50 50"
    }, [Z("circle", {
        cx: "50",
        cy: "50",
        r: "20",
        fill: "none"
    }, null)]),
    ek = {
        size: nt,
        type: ft("circular"),
        color: String,
        vertical: Boolean,
        textSize: nt,
        textColor: String
    };
var tk = tt({
    name: JL,
    props: ek,
    setup(e, {
        slots: t
    }) {
        const n = Oe(() => wt({
                color: e.color
            }, _o(e.size))),
            r = () => {
                const i = e.type === "spinner" ? qL : ZL;
                return Z("span", {
                    class: Ql("spinner", e.type),
                    style: n.value
                }, [t.icon ? t.icon() : i])
            },
            A = () => {
                var i;
                if (t.default) return Z("span", {
                    class: Ql("text"),
                    style: {
                        fontSize: It(e.textSize),
                        color: (i = e.textColor) != null ? i : e.color
                    }
                }, [t.default()])
            };
        return () => {
            const {
                type: i,
                vertical: s
            } = e;
            return Z("div", {
                class: Ql([i, {
                    vertical: s
                }]),
                "aria-live": "polite",
                "aria-busy": !0
            }, [r(), A()])
        }
    }
});
const di = dt(tk),
    [nk, xa] = st("button"),
    rk = wt({}, So, {
        tag: ft("button"),
        text: String,
        icon: String,
        type: ft("default"),
        size: ft("normal"),
        color: String,
        block: Boolean,
        plain: Boolean,
        round: Boolean,
        square: Boolean,
        loading: Boolean,
        hairline: Boolean,
        disabled: Boolean,
        iconPrefix: String,
        nativeType: ft("button"),
        loadingSize: nt,
        loadingText: String,
        loadingType: String,
        iconPosition: ft("left")
    });
var Ak = tt({
    name: nk,
    props: rk,
    emits: ["click"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = E0(),
            A = () => n.loading ? n.loading() : Z(di, {
                size: e.loadingSize,
                type: e.loadingType,
                class: xa("loading")
            }, null),
            i = () => {
                if (e.loading) return A();
                if (n.icon) return Z("div", {
                    class: xa("icon")
                }, [n.icon()]);
                if (e.icon) return Z(En, {
                    name: e.icon,
                    class: xa("icon"),
                    classPrefix: e.iconPrefix
                }, null)
            },
            s = () => {
                let l;
                if (e.loading ? l = e.loadingText : l = n.default ? n.default() : e.text, l) return Z("span", {
                    class: xa("text")
                }, [l])
            },
            a = () => {
                const {
                    color: l,
                    plain: u
                } = e;
                if (l) {
                    const f = {
                        color: u ? l : "white"
                    };
                    return u || (f.background = l), l.includes("gradient") ? f.border = 0 : f.borderColor = l, f
                }
            },
            o = l => {
                e.loading ? vr(l) : e.disabled || (t("click", l), r())
            };
        return () => {
            const {
                tag: l,
                type: u,
                size: f,
                block: d,
                round: p,
                plain: m,
                square: g,
                loading: y,
                disabled: w,
                hairline: B,
                nativeType: x,
                iconPosition: C
            } = e, b = [xa([u, f, {
                plain: m,
                block: d,
                round: p,
                square: g,
                loading: y,
                disabled: w,
                hairline: B
            }]), {
                [IL]: B
            }];
            return Z(l, {
                type: x,
                class: b,
                style: a(),
                disabled: w,
                onClick: o
            }, {
                default: () => [Z("div", {
                    class: xa("content")
                }, [C === "left" && i(), s(), C === "right" && i()])]
            })
        }
    }
});
const cc = dt(Ak),
    [ik, sk] = st("action-bar-button"),
    ak = wt({}, So, {
        type: String,
        text: String,
        icon: String,
        color: String,
        loading: Boolean,
        disabled: Boolean
    });
var ok = tt({
    name: ik,
    props: ak,
    setup(e, {
        slots: t
    }) {
        const n = E0(),
            {
                parent: r,
                index: A
            } = Ir(U9),
            i = Oe(() => {
                if (r) {
                    const a = r.children[A.value - 1];
                    return !(a && "isButton" in a)
                }
            }),
            s = Oe(() => {
                if (r) {
                    const a = r.children[A.value + 1];
                    return !(a && "isButton" in a)
                }
            });
        return an({
            isButton: !0
        }), () => {
            const {
                type: a,
                icon: o,
                text: l,
                color: u,
                loading: f,
                disabled: d
            } = e;
            return Z(cc, {
                class: sk([a, {
                    last: s.value,
                    first: i.value
                }]),
                size: "large",
                type: a,
                icon: o,
                color: u,
                loading: f,
                disabled: d,
                onClick: n
            }, {
                default: () => [t.default ? t.default() : l]
            })
        }
    }
});
const Y4 = dt(ok),
    Bf = {
        show: Boolean,
        zIndex: nt,
        overlay: et,
        duration: nt,
        teleport: [String, Object],
        lockScroll: et,
        lazyRender: et,
        beforeClose: Function,
        overlayStyle: Object,
        overlayClass: xn,
        transitionAppear: Boolean,
        closeOnClickOverlay: et
    },
    I9 = Object.keys(Bf);

function lk(e, t) {
    return e > t ? "horizontal" : t > e ? "vertical" : ""
}

function Qo() {
    const e = Ue(0),
        t = Ue(0),
        n = Ue(0),
        r = Ue(0),
        A = Ue(0),
        i = Ue(0),
        s = Ue(""),
        a = Ue(!0),
        o = () => s.value === "vertical",
        l = () => s.value === "horizontal",
        u = () => {
            n.value = 0, r.value = 0, A.value = 0, i.value = 0, s.value = "", a.value = !0
        };
    return {
        move: p => {
            const m = p.touches[0];
            n.value = (m.clientX < 0 ? 0 : m.clientX) - e.value, r.value = m.clientY - t.value, A.value = Math.abs(n.value), i.value = Math.abs(r.value);
            const g = 10;
            (!s.value || A.value < g && i.value < g) && (s.value = lk(A.value, i.value)), a.value && (A.value > G4 || i.value > G4) && (a.value = !1)
        },
        start: p => {
            u(), e.value = p.touches[0].clientX, t.value = p.touches[0].clientY
        },
        reset: u,
        startX: e,
        startY: t,
        deltaX: n,
        deltaY: r,
        offsetX: A,
        offsetY: i,
        direction: s,
        isVertical: o,
        isHorizontal: l,
        isTap: a
    }
}
let Jo = 0;
const X4 = "van-overflow-hidden";

function uk(e, t) {
    const n = Qo(),
        r = "01",
        A = "10",
        i = u => {
            n.move(u);
            const f = n.deltaY.value > 0 ? A : r,
                d = H6(u.target, e.value),
                {
                    scrollHeight: p,
                    offsetHeight: m,
                    scrollTop: g
                } = d;
            let y = "11";
            g === 0 ? y = m >= p ? "00" : "01" : g + m >= p && (y = "10"), y !== "11" && n.isVertical() && !(parseInt(y, 2) & parseInt(f, 2)) && vr(u, !0)
        },
        s = () => {
            document.addEventListener("touchstart", n.start), document.addEventListener("touchmove", i, {
                passive: !1
            }), Jo || document.body.classList.add(X4), Jo++
        },
        a = () => {
            Jo && (document.removeEventListener("touchstart", n.start), document.removeEventListener("touchmove", i), Jo--, Jo || document.body.classList.remove(X4))
        },
        o = () => t() && s(),
        l = () => t() && a();
    Eo(o), ui(l), Tr(l), je(t, u => {
        u ? s() : a()
    })
}

function xp(e) {
    const t = Ue(!1);
    return je(e, n => {
        n && (t.value = n)
    }, {
        immediate: !0
    }), n => () => t.value ? n() : null
}
const G2 = () => {
        var e;
        const {
            scopeId: t
        } = ((e = zt()) == null ? void 0 : e.vnode) || {};
        return t ? {
            [t]: ""
        } : null
    },
    [ck, fk] = st("overlay"),
    dk = {
        show: Boolean,
        zIndex: nt,
        duration: nt,
        className: xn,
        lockScroll: et,
        lazyRender: et,
        customStyle: Object
    };
var hk = tt({
    name: ck,
    props: dk,
    setup(e, {
        slots: t
    }) {
        const n = Ue(),
            r = xp(() => e.show || !e.lazyRender),
            A = s => {
                e.lockScroll && vr(s, !0)
            },
            i = r(() => {
                var s;
                const a = wt(C9(e.zIndex), e.customStyle);
                return Jt(e.duration) && (a.animationDuration = `${e.duration}s`), ns(Z("div", {
                    ref: n,
                    style: a,
                    class: [fk(), e.className]
                }, [(s = t.default) == null ? void 0 : s.call(t)]), [
                    [as, e.show]
                ])
            });
        return wr("touchmove", A, {
            target: n
        }), () => Z(m0, {
            name: "van-fade",
            appear: !0
        }, {
            default: i
        })
    }
});
const pk = dt(hk),
    gk = wt({}, Bf, {
        round: Boolean,
        position: ft("center"),
        closeIcon: ft("cross"),
        closeable: Boolean,
        transition: String,
        iconPrefix: String,
        closeOnPopstate: Boolean,
        closeIconPosition: ft("top-right"),
        safeAreaInsetTop: Boolean,
        safeAreaInsetBottom: Boolean
    }),
    [vk, J4] = st("popup");
var mk = tt({
    name: vk,
    inheritAttrs: !1,
    props: gk,
    emits: ["open", "close", "opened", "closed", "keydown", "update:show", "clickOverlay", "clickCloseIcon"],
    setup(e, {
        emit: t,
        attrs: n,
        slots: r
    }) {
        let A, i;
        const s = Ue(),
            a = Ue(),
            o = xp(() => e.show || !e.lazyRender),
            l = Oe(() => {
                const F = {
                    zIndex: s.value
                };
                if (Jt(e.duration)) {
                    const T = e.position === "center" ? "animationDuration" : "transitionDuration";
                    F[T] = `${e.duration}s`
                }
                return F
            }),
            u = () => {
                A || (A = !0, s.value = e.zIndex !== void 0 ? +e.zIndex : VL(), t("open"))
            },
            f = () => {
                A && x0(e.beforeClose, {
                    done() {
                        A = !1, t("close"), t("update:show", !1)
                    }
                })
            },
            d = F => {
                t("clickOverlay", F), e.closeOnClickOverlay && f()
            },
            p = () => {
                if (e.overlay) return Z(pk, $t({
                    show: e.show,
                    class: e.overlayClass,
                    zIndex: s.value,
                    duration: e.duration,
                    customStyle: e.overlayStyle,
                    role: e.closeOnClickOverlay ? "button" : void 0,
                    tabindex: e.closeOnClickOverlay ? 0 : void 0
                }, G2(), {
                    onClick: d
                }), {
                    default: r["overlay-content"]
                })
            },
            m = F => {
                t("clickCloseIcon", F), f()
            },
            g = () => {
                if (e.closeable) return Z(En, {
                    role: "button",
                    tabindex: 0,
                    name: e.closeIcon,
                    class: [J4("close-icon", e.closeIconPosition), Xl],
                    classPrefix: e.iconPrefix,
                    onClick: m
                }, null)
            };
        let y;
        const w = () => {
                y && clearTimeout(y), y = setTimeout(() => {
                    t("opened")
                })
            },
            B = () => t("closed"),
            x = F => t("keydown", F),
            C = o(() => {
                var F;
                const {
                    round: T,
                    position: I,
                    safeAreaInsetTop: D,
                    safeAreaInsetBottom: U
                } = e;
                return ns(Z("div", $t({
                    ref: a,
                    style: l.value,
                    role: "dialog",
                    tabindex: 0,
                    class: [J4({
                        round: T,
                        [I]: I
                    }), {
                        "van-safe-area-top": D,
                        "van-safe-area-bottom": U
                    }],
                    onKeydown: x
                }, n, G2()), [(F = r.default) == null ? void 0 : F.call(r), g()]), [
                    [as, e.show]
                ])
            }),
            b = () => {
                const {
                    position: F,
                    transition: T,
                    transitionAppear: I
                } = e, D = F === "center" ? "van-fade" : `van-popup-slide-${F}`;
                return Z(m0, {
                    name: T || D,
                    appear: I,
                    onAfterEnter: w,
                    onAfterLeave: B
                }, {
                    default: C
                })
            };
        return je(() => e.show, F => {
            F && !A && (u(), n.tabindex === 0 && yt(() => {
                var T;
                (T = a.value) == null || T.focus()
            })), !F && A && (A = !1, t("close"))
        }), an({
            popupRef: a
        }), uk(a, () => e.show && e.lockScroll), wr("popstate", () => {
            e.closeOnPopstate && (f(), i = !1)
        }), qt(() => {
            e.show && u()
        }), fs(() => {
            i && (t("update:show", !0), i = !1)
        }), ui(() => {
            e.show && e.teleport && (f(), i = !0)
        }), AA(_9, () => e.show), () => e.teleport ? Z($8, {
            to: e.teleport
        }, {
            default: () => [p(), b()]
        }) : Z(rn, null, [p(), b()])
    }
});
const Uo = dt(mk),
    [Bk, Mr] = st("action-sheet"),
    wk = wt({}, Bf, {
        title: String,
        round: et,
        actions: si(),
        closeIcon: ft("cross"),
        closeable: et,
        cancelText: String,
        description: String,
        closeOnPopstate: et,
        closeOnClickAction: Boolean,
        safeAreaInsetBottom: et
    }),
    yk = [...I9, "round", "closeOnPopstate", "safeAreaInsetBottom"];
var Ck = tt({
    name: Bk,
    props: wk,
    emits: ["select", "cancel", "update:show"],
    setup(e, {
        slots: t,
        emit: n
    }) {
        const r = f => n("update:show", f),
            A = () => {
                r(!1), n("cancel")
            },
            i = () => {
                if (e.title) return Z("div", {
                    class: Mr("header")
                }, [e.title, e.closeable && Z(En, {
                    name: e.closeIcon,
                    class: [Mr("close"), Xl],
                    onClick: A
                }, null)])
            },
            s = () => {
                if (t.cancel || e.cancelText) return [Z("div", {
                    class: Mr("gap")
                }, null), Z("button", {
                    type: "button",
                    class: Mr("cancel"),
                    onClick: A
                }, [t.cancel ? t.cancel() : e.cancelText])]
            },
            a = f => {
                if (f.icon) return Z(En, {
                    class: Mr("item-icon"),
                    name: f.icon
                }, null)
            },
            o = (f, d) => f.loading ? Z(di, {
                class: Mr("loading-icon")
            }, null) : t.action ? t.action({
                action: f,
                index: d
            }) : [Z("span", {
                class: Mr("name")
            }, [f.name]), f.subname && Z("div", {
                class: Mr("subname")
            }, [f.subname])],
            l = (f, d) => {
                const {
                    color: p,
                    loading: m,
                    callback: g,
                    disabled: y,
                    className: w
                } = f, B = () => {
                    y || m || (g && g(f), e.closeOnClickAction && r(!1), yt(() => n("select", f, d)))
                };
                return Z("button", {
                    type: "button",
                    style: {
                        color: p
                    },
                    class: [Mr("item", {
                        loading: m,
                        disabled: y
                    }), w],
                    onClick: B
                }, [a(f), o(f, d)])
            },
            u = () => {
                if (e.description || t.description) {
                    const f = t.description ? t.description() : e.description;
                    return Z("div", {
                        class: Mr("description")
                    }, [f])
                }
            };
        return () => Z(Uo, $t({
            class: Mr(),
            position: "bottom",
            "onUpdate:show": r
        }, Zt(e, yk)), {
            default: () => {
                var f;
                return [i(), u(), Z("div", {
                    class: Mr("content")
                }, [e.actions.map(l), (f = t.default) == null ? void 0 : f.call(t)]), s()]
            }
        })
    }
});
const Yte = dt(Ck),
    [xk, WA, q4] = st("picker"),
    D9 = e => e.find(t => !t.disabled) || e[0];

function Ek(e, t) {
    const n = e[0];
    if (n) {
        if (Array.isArray(n)) return "multiple";
        if (t.children in n) return "cascade"
    }
    return "default"
}

function Vu(e, t) {
    t = rr(t, 0, e.length);
    for (let n = t; n < e.length; n++)
        if (!e[n].disabled) return n;
    for (let n = t - 1; n >= 0; n--)
        if (!e[n].disabled) return n;
    return 0
}
const Z4 = (e, t, n) => t !== void 0 && !!e.find(r => r[n.value] === t);

function z2(e, t, n) {
    const r = e.findIndex(i => i[n.value] === t),
        A = Vu(e, r);
    return e[A]
}

function bk(e, t, n) {
    const r = [];
    let A = {
            [t.children]: e
        },
        i = 0;
    for (; A && A[t.children];) {
        const s = A[t.children],
            a = n.value[i];
        if (A = Jt(a) ? z2(s, a, t) : void 0, !A && s.length) {
            const o = D9(s)[t.value];
            A = z2(s, o, t)
        }
        i++, r.push(s)
    }
    return r
}

function Fk(e) {
    const {
        transform: t
    } = window.getComputedStyle(e), n = t.slice(7, t.length - 1).split(", ")[5];
    return Number(n)
}

function _k(e) {
    return wt({
        text: "text",
        value: "value",
        children: "children"
    }, e)
}
const ev = 200,
    tv = 300,
    Sk = 15,
    [P9, fd] = st("picker-column"),
    O9 = Symbol(P9);
var Qk = tt({
    name: P9,
    props: {
        value: nt,
        fields: $n(Object),
        options: si(),
        readonly: Boolean,
        allowHtml: Boolean,
        optionHeight: $n(Number),
        swipeDuration: $n(nt),
        visibleOptionNum: $n(nt)
    },
    emits: ["change", "clickOption", "scrollInto"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        let r, A, i, s, a;
        const o = Ue(),
            l = Ue(),
            u = Ue(0),
            f = Ue(0),
            d = Qo(),
            p = () => e.options.length,
            m = () => e.optionHeight * (+e.visibleOptionNum - 1) / 2,
            g = U => {
                let Q = Vu(e.options, U);
                const O = -Q * e.optionHeight,
                    N = () => {
                        Q > p() - 1 && (Q = Vu(e.options, U));
                        const J = e.options[Q][e.fields.value];
                        J !== e.value && t("change", J)
                    };
                r && O !== u.value ? a = N : N(), u.value = O
            },
            y = () => e.readonly || !e.options.length,
            w = U => {
                r || y() || (a = null, f.value = ev, g(U), t("clickOption", e.options[U]))
            },
            B = U => rr(Math.round(-U / e.optionHeight), 0, p() - 1),
            x = Oe(() => B(u.value)),
            C = (U, Q) => {
                const O = Math.abs(U / Q);
                U = u.value + O / .003 * (U < 0 ? -1 : 1);
                const N = B(U);
                f.value = +e.swipeDuration, g(N)
            },
            b = () => {
                r = !1, f.value = 0, a && (a(), a = null)
            },
            F = U => {
                if (!y()) {
                    if (d.start(U), r) {
                        const Q = Fk(l.value);
                        u.value = Math.min(0, Q - m())
                    }
                    f.value = 0, A = u.value, i = Date.now(), s = A, a = null
                }
            },
            T = U => {
                if (y()) return;
                d.move(U), d.isVertical() && (r = !0, vr(U, !0));
                const Q = rr(A + d.deltaY.value, -(p() * e.optionHeight), e.optionHeight),
                    O = B(Q);
                O !== x.value && t("scrollInto", e.options[O]), u.value = Q;
                const N = Date.now();
                N - i > tv && (i = N, s = Q)
            },
            I = () => {
                if (y()) return;
                const U = u.value - s,
                    Q = Date.now() - i;
                if (Q < tv && Math.abs(U) > Sk) {
                    C(U, Q);
                    return
                }
                const N = B(u.value);
                f.value = ev, g(N), setTimeout(() => {
                    r = !1
                }, 0)
            },
            D = () => {
                const U = {
                    height: `${e.optionHeight}px`
                };
                return e.options.map((Q, O) => {
                    const N = Q[e.fields.text],
                        {
                            disabled: J
                        } = Q,
                        j = Q[e.fields.value],
                        V = {
                            role: "button",
                            style: U,
                            tabindex: J ? -1 : 0,
                            class: [fd("item", {
                                disabled: J,
                                selected: j === e.value
                            }), Q.className],
                            onClick: () => w(O)
                        },
                        ae = {
                            class: "van-ellipsis",
                            [e.allowHtml ? "innerHTML" : "textContent"]: N
                        };
                    return Z("li", V, [n.option ? n.option(Q, O) : Z("div", ae, null)])
                })
            };
        return Ir(O9), an({
            stopMomentum: b
        }), Yc(() => {
            const U = r ? Math.floor(-u.value / e.optionHeight) : e.options.findIndex(N => N[e.fields.value] === e.value),
                Q = Vu(e.options, U),
                O = -Q * e.optionHeight;
            r && Q < U && b(), u.value = O
        }), wr("touchmove", T, {
            target: o
        }), () => Z("div", {
            ref: o,
            class: fd(),
            onTouchstartPassive: F,
            onTouchend: I,
            onTouchcancel: I
        }, [Z("ul", {
            ref: l,
            style: {
                transform: `translate3d(0, ${u.value+m()}px, 0)`,
                transitionDuration: `${f.value}ms`,
                transitionProperty: f.value ? "all" : "none"
            },
            class: fd("wrapper"),
            onTransitionend: b
        }, [D()])])
    }
});
const [Uk] = st("picker-toolbar"), wf = {
    title: String,
    cancelButtonText: String,
    confirmButtonText: String
}, Tk = ["cancel", "confirm", "title", "toolbar"], Ik = Object.keys(wf);
var Dk = tt({
    name: Uk,
    props: wf,
    emits: ["confirm", "cancel"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = () => {
                if (n.title) return n.title();
                if (e.title) return Z("div", {
                    class: [WA("title"), "van-ellipsis"]
                }, [e.title])
            },
            A = () => t("cancel"),
            i = () => t("confirm"),
            s = () => {
                var o;
                const l = (o = e.cancelButtonText) != null ? o : q4("cancel");
                if (!(!n.cancel && !l)) return Z("button", {
                    type: "button",
                    class: [WA("cancel"), Xl],
                    onClick: A
                }, [n.cancel ? n.cancel() : l])
            },
            a = () => {
                var o;
                const l = (o = e.confirmButtonText) != null ? o : q4("confirm");
                if (!(!n.confirm && !l)) return Z("button", {
                    type: "button",
                    class: [WA("confirm"), Xl],
                    onClick: i
                }, [n.confirm ? n.confirm() : l])
            };
        return () => Z("div", {
            class: WA("toolbar")
        }, [n.toolbar ? n.toolbar() : [s(), r(), a()]])
    }
});
const Pk = (e, t) => {
    const n = Ue(e());
    return je(e, r => {
        r !== n.value && (n.value = r)
    }), je(n, r => {
        r !== e() && t(r)
    }), n
};
/**
 * @vue/shared v3.4.21
 * (c) 2018-present Yuxi (Evan) You and Vue contributors
 * @license MIT
 **/
const L9 = Array.isArray,
    Jl = e => typeof e == "string",
    k9 = e => e !== null && typeof e == "object",
    Ok = e => {
        const t = Object.create(null);
        return n => t[n] || (t[n] = e(n))
    },
    Lk = /\B([A-Z])/g,
    kk = Ok(e => e.replace(Lk, "-$1").toLowerCase());

function H9(e) {
    if (L9(e)) {
        const t = {};
        for (let n = 0; n < e.length; n++) {
            const r = e[n],
                A = Jl(r) ? Nk(r) : H9(r);
            if (A)
                for (const i in A) t[i] = A[i]
        }
        return t
    } else if (Jl(e) || k9(e)) return e
}
const Hk = /;(?![^(]*\))/g,
    Mk = /:([^]+)/,
    Rk = /\/\*[^]*?\*\//g;

function Nk(e) {
    const t = {};
    return e.replace(Rk, "").split(Hk).forEach(n => {
        if (n) {
            const r = n.split(Mk);
            r.length > 1 && (t[r[0].trim()] = r[1].trim())
        }
    }), t
}

function $k(e) {
    let t = "";
    if (!e || Jl(e)) return t;
    for (const n in e) {
        const r = e[n],
            A = n.startsWith("--") ? n : kk(n);
        (Jl(r) || typeof r == "number") && (t += `${A}:${r};`)
    }
    return t
}

function M9(e) {
    let t = "";
    if (Jl(e)) t = e;
    else if (L9(e))
        for (let n = 0; n < e.length; n++) {
            const r = M9(e[n]);
            r && (t += r + " ")
        } else if (k9(e))
            for (const n in e) e[n] && (t += n + " ");
    return t.trim()
}

function Kk(e, t, n) {
    let r, A = 0;
    const i = e.scrollLeft,
        s = n === 0 ? 1 : Math.round(n * 1e3 / 16);

    function a() {
        B0(r)
    }

    function o() {
        e.scrollLeft += (t - i) / s, ++A < s && (r = Ar(o))
    }
    return o(), a
}

function Vk(e, t, n, r) {
    let A, i = y0(e);
    const s = i < t,
        a = n === 0 ? 1 : Math.round(n * 1e3 / 16),
        o = (t - i) / a;

    function l() {
        B0(A)
    }

    function u() {
        i += o, (s && i > t || !s && i < t) && (i = t), uc(e, i), s && i < t || !s && i > t ? A = Ar(u) : r && (A = Ar(r))
    }
    return u(), l
}
let Gk = 0;

function Ep() {
    const e = zt(),
        {
            name: t = "unknown"
        } = (e == null ? void 0 : e.type) || {};
    return `${t}-${++Gk}`
}

function R9() {
    const e = Ue([]),
        t = [];
    return qc(() => {
        e.value = []
    }), [e, r => (t[r] || (t[r] = A => {
        e.value[r] = A
    }), t[r])]
}

function N9(e, t) {
    if (!ii || !window.IntersectionObserver) return;
    const n = new IntersectionObserver(i => {
            t(i[0].intersectionRatio > 0)
        }, {
            root: document.body
        }),
        r = () => {
            e.value && n.observe(e.value)
        },
        A = () => {
            e.value && n.unobserve(e.value)
        };
    ui(A), Tr(A), Eo(r)
}
const [zk, Wk] = st("sticky"), jk = {
    zIndex: nt,
    position: ft("top"),
    container: Object,
    offsetTop: xt(0),
    offsetBottom: xt(0)
};
var Yk = tt({
    name: zk,
    props: jk,
    emits: ["scroll", "change"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = Ue(),
            A = w0(r),
            i = Nt({
                fixed: !1,
                width: 0,
                height: 0,
                transform: 0
            }),
            s = Ue(!1),
            a = Oe(() => yp(e.position === "top" ? e.offsetTop : e.offsetBottom)),
            o = Oe(() => {
                if (s.value) return;
                const {
                    fixed: d,
                    height: p,
                    width: m
                } = i;
                if (d) return {
                    width: `${m}px`,
                    height: `${p}px`
                }
            }),
            l = Oe(() => {
                if (!i.fixed || s.value) return;
                const d = wt(C9(e.zIndex), {
                    width: `${i.width}px`,
                    height: `${i.height}px`,
                    [e.position]: `${a.value}px`
                });
                return i.transform && (d.transform = `translate3d(0, ${i.transform}px, 0)`), d
            }),
            u = d => t("scroll", {
                scrollTop: d,
                isFixed: i.fixed
            }),
            f = () => {
                if (!r.value || ro(r)) return;
                const {
                    container: d,
                    position: p
                } = e, m = Dn(r), g = y0(window);
                if (i.width = m.width, i.height = m.height, p === "top")
                    if (d) {
                        const y = Dn(d),
                            w = y.bottom - a.value - i.height;
                        i.fixed = a.value > m.top && y.bottom > 0, i.transform = w < 0 ? w : 0
                    } else i.fixed = a.value > m.top;
                else {
                    const {
                        clientHeight: y
                    } = document.documentElement;
                    if (d) {
                        const w = Dn(d),
                            B = y - w.top - a.value - i.height;
                        i.fixed = y - a.value < m.bottom && y > w.top, i.transform = B < 0 ? -B : 0
                    } else i.fixed = y - a.value < m.bottom
                }
                u(g)
            };
        return je(() => i.fixed, d => t("change", d)), wr("scroll", f, {
            target: A,
            passive: !0
        }), N9(r, f), je([Fo, C0], () => {
            !r.value || ro(r) || !i.fixed || (s.value = !0, yt(() => {
                const d = Dn(r);
                i.width = d.width, i.height = d.height, s.value = !1
            }))
        }), () => {
            var d;
            return Z("div", {
                ref: r,
                style: o.value
            }, [Z("div", {
                class: Wk({
                    fixed: i.fixed && !s.value
                }),
                style: l.value
            }, [(d = n.default) == null ? void 0 : d.call(n)])])
        }
    }
});
const Xk = dt(Yk),
    [$9, nu] = st("swipe"),
    Jk = {
        loop: et,
        width: nt,
        height: nt,
        vertical: Boolean,
        autoplay: xt(0),
        duration: xt(500),
        touchable: et,
        lazyRender: Boolean,
        initialSwipe: xt(0),
        indicatorColor: String,
        showIndicators: et,
        stopPropagation: et
    },
    K9 = Symbol($9);
var qk = tt({
    name: $9,
    props: Jk,
    emits: ["change", "dragStart", "dragEnd"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = Ue(),
            A = Ue(),
            i = Nt({
                rect: null,
                width: 0,
                height: 0,
                offset: 0,
                active: 0,
                swiping: !1
            });
        let s = !1;
        const a = Qo(),
            {
                children: o,
                linkChildren: l
            } = FA(K9),
            u = Oe(() => o.length),
            f = Oe(() => i[e.vertical ? "height" : "width"]),
            d = Oe(() => e.vertical ? a.deltaY.value : a.deltaX.value),
            p = Oe(() => i.rect ? (e.vertical ? i.rect.height : i.rect.width) - f.value * u.value : 0),
            m = Oe(() => f.value ? Math.ceil(Math.abs(p.value) / f.value) : u.value),
            g = Oe(() => u.value * f.value),
            y = Oe(() => (i.active + u.value) % u.value),
            w = Oe(() => {
                const ee = e.vertical ? "vertical" : "horizontal";
                return a.direction.value === ee
            }),
            B = Oe(() => {
                const ee = {
                    transitionDuration: `${i.swiping?0:e.duration}ms`,
                    transform: `translate${e.vertical?"Y":"X"}(${+i.offset.toFixed(2)}px)`
                };
                if (f.value) {
                    const ce = e.vertical ? "height" : "width",
                        ve = e.vertical ? "width" : "height";
                    ee[ce] = `${g.value}px`, ee[ve] = e[ve] ? `${e[ve]}px` : ""
                }
                return ee
            }),
            x = ee => {
                const {
                    active: ce
                } = i;
                return ee ? e.loop ? rr(ce + ee, -1, u.value) : rr(ce + ee, 0, m.value) : ce
            },
            C = (ee, ce = 0) => {
                let ve = ee * f.value;
                e.loop || (ve = Math.min(ve, -p.value));
                let xe = ce - ve;
                return e.loop || (xe = rr(xe, p.value, 0)), xe
            },
            b = ({
                pace: ee = 0,
                offset: ce = 0,
                emitChange: ve
            }) => {
                if (u.value <= 1) return;
                const {
                    active: xe
                } = i, se = x(ee), Fe = C(se, ce);
                if (e.loop) {
                    if (o[0] && Fe !== p.value) {
                        const ie = Fe < p.value;
                        o[0].setOffset(ie ? g.value : 0)
                    }
                    if (o[u.value - 1] && Fe !== 0) {
                        const ie = Fe > 0;
                        o[u.value - 1].setOffset(ie ? -g.value : 0)
                    }
                }
                i.active = se, i.offset = Fe, ve && se !== xe && t("change", y.value)
            },
            F = () => {
                i.swiping = !0, i.active <= -1 ? b({
                    pace: u.value
                }) : i.active >= u.value && b({
                    pace: -u.value
                })
            },
            T = () => {
                F(), a.reset(), Ms(() => {
                    i.swiping = !1, b({
                        pace: -1,
                        emitChange: !0
                    })
                })
            },
            I = () => {
                F(), a.reset(), Ms(() => {
                    i.swiping = !1, b({
                        pace: 1,
                        emitChange: !0
                    })
                })
            };
        let D;
        const U = () => clearTimeout(D),
            Q = () => {
                U(), +e.autoplay > 0 && u.value > 1 && (D = setTimeout(() => {
                    I(), Q()
                }, +e.autoplay))
            },
            O = (ee = +e.initialSwipe) => {
                if (!r.value) return;
                const ce = () => {
                    var ve, xe;
                    if (!ro(r)) {
                        const se = {
                            width: r.value.offsetWidth,
                            height: r.value.offsetHeight
                        };
                        i.rect = se, i.width = +((ve = e.width) != null ? ve : se.width), i.height = +((xe = e.height) != null ? xe : se.height)
                    }
                    u.value && (ee = Math.min(u.value - 1, ee), ee === -1 && (ee = u.value - 1)), i.active = ee, i.swiping = !0, i.offset = C(ee), o.forEach(se => {
                        se.setOffset(0)
                    }), Q()
                };
                ro(r) ? yt().then(ce) : ce()
            },
            N = () => O(i.active);
        let J;
        const j = ee => {
                !e.touchable || ee.touches.length > 1 || (a.start(ee), s = !1, J = Date.now(), U(), F())
            },
            V = ee => {
                e.touchable && i.swiping && (a.move(ee), w.value && (!e.loop && (i.active === 0 && d.value > 0 || i.active === u.value - 1 && d.value < 0) || (vr(ee, e.stopPropagation), b({
                    offset: d.value
                }), s || (t("dragStart", {
                    index: y.value
                }), s = !0))))
            },
            ae = () => {
                if (!e.touchable || !i.swiping) return;
                const ee = Date.now() - J,
                    ce = d.value / ee;
                if ((Math.abs(ce) > .25 || Math.abs(d.value) > f.value / 2) && w.value) {
                    const xe = e.vertical ? a.offsetY.value : a.offsetX.value;
                    let se = 0;
                    e.loop ? se = xe > 0 ? d.value > 0 ? -1 : 1 : 0 : se = -Math[d.value > 0 ? "ceil" : "floor"](d.value / f.value), b({
                        pace: se,
                        emitChange: !0
                    })
                } else d.value && b({
                    pace: 0
                });
                s = !1, i.swiping = !1, t("dragEnd", {
                    index: y.value
                }), Q()
            },
            Y = (ee, ce = {}) => {
                F(), a.reset(), Ms(() => {
                    let ve;
                    e.loop && ee === u.value ? ve = i.active === 0 ? 0 : ee : ve = ee % u.value, ce.immediate ? Ms(() => {
                        i.swiping = !1
                    }) : i.swiping = !1, b({
                        pace: ve - i.active,
                        emitChange: !0
                    })
                })
            },
            ue = (ee, ce) => {
                const ve = ce === y.value,
                    xe = ve ? {
                        backgroundColor: e.indicatorColor
                    } : void 0;
                return Z("i", {
                    style: xe,
                    class: nu("indicator", {
                        active: ve
                    })
                }, null)
            },
            ye = () => {
                if (n.indicator) return n.indicator({
                    active: y.value,
                    total: u.value
                });
                if (e.showIndicators && u.value > 1) return Z("div", {
                    class: nu("indicators", {
                        vertical: e.vertical
                    })
                }, [Array(u.value).fill("").map(ue)])
            };
        return an({
            prev: T,
            next: I,
            state: i,
            resize: N,
            swipeTo: Y
        }), l({
            size: f,
            props: e,
            count: u,
            activeIndicator: y
        }), je(() => e.initialSwipe, ee => O(+ee)), je(u, () => O(i.active)), je(() => e.autoplay, Q), je([Fo, C0, () => e.width, () => e.height], N), je(N3(), ee => {
            ee === "visible" ? Q() : U()
        }), qt(O), fs(() => O(i.active)), Cp(() => O(i.active)), ui(U), Tr(U), wr("touchmove", V, {
            target: A
        }), () => {
            var ee;
            return Z("div", {
                ref: r,
                class: nu()
            }, [Z("div", {
                ref: A,
                style: B.value,
                class: nu("track", {
                    vertical: e.vertical
                }),
                onTouchstartPassive: j,
                onTouchend: ae,
                onTouchcancel: ae
            }, [(ee = n.default) == null ? void 0 : ee.call(n)]), ye()])
        }
    }
});
const V9 = dt(qk),
    [Zk, nv] = st("tabs");
var eH = tt({
    name: Zk,
    props: {
        count: $n(Number),
        inited: Boolean,
        animated: Boolean,
        duration: $n(nt),
        swipeable: Boolean,
        lazyRender: Boolean,
        currentIndex: $n(Number)
    },
    emits: ["change"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = Ue(),
            A = a => t("change", a),
            i = () => {
                var a;
                const o = (a = n.default) == null ? void 0 : a.call(n);
                return e.animated || e.swipeable ? Z(V9, {
                    ref: r,
                    loop: !1,
                    class: nv("track"),
                    duration: +e.duration * 1e3,
                    touchable: e.swipeable,
                    lazyRender: e.lazyRender,
                    showIndicators: !1,
                    onChange: A
                }, {
                    default: () => [o]
                }) : o
            },
            s = a => {
                const o = r.value;
                o && o.state.active !== a && o.swipeTo(a, {
                    immediate: !e.inited
                })
            };
        return je(() => e.currentIndex, s), qt(() => {
            s(e.currentIndex)
        }), an({
            swipeRef: r
        }), () => Z("div", {
            class: nv("content", {
                animated: e.animated || e.swipeable
            })
        }, [i()])
    }
});
const [G9, ru] = st("tabs"), tH = {
    type: ft("line"),
    color: String,
    border: Boolean,
    sticky: Boolean,
    shrink: Boolean,
    active: xt(0),
    duration: xt(.3),
    animated: Boolean,
    ellipsis: et,
    swipeable: Boolean,
    scrollspy: Boolean,
    offsetTop: xt(0),
    background: String,
    lazyRender: et,
    showHeader: et,
    lineWidth: nt,
    lineHeight: nt,
    beforeChange: Function,
    swipeThreshold: xt(5),
    titleActiveColor: String,
    titleInactiveColor: String
}, z9 = Symbol(G9);
var nH = tt({
    name: G9,
    props: tH,
    emits: ["change", "scroll", "rendered", "clickTab", "update:active"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        let r, A, i, s, a;
        const o = Ue(),
            l = Ue(),
            u = Ue(),
            f = Ue(),
            d = Ep(),
            p = w0(o),
            [m, g] = R9(),
            {
                children: y,
                linkChildren: w
            } = FA(z9),
            B = Nt({
                inited: !1,
                position: "",
                lineStyle: {},
                currentIndex: -1
            }),
            x = Oe(() => y.length > +e.swipeThreshold || !e.ellipsis || e.shrink),
            C = Oe(() => ({
                borderColor: e.color,
                background: e.background
            })),
            b = (se, Fe) => {
                var ie;
                return (ie = se.name) != null ? ie : Fe
            },
            F = Oe(() => {
                const se = y[B.currentIndex];
                if (se) return b(se, B.currentIndex)
            }),
            T = Oe(() => yp(e.offsetTop)),
            I = Oe(() => e.sticky ? T.value + r : 0),
            D = se => {
                const Fe = l.value,
                    ie = m.value;
                if (!x.value || !Fe || !ie || !ie[B.currentIndex]) return;
                const _e = ie[B.currentIndex].$el,
                    De = _e.offsetLeft - (Fe.offsetWidth - _e.offsetWidth) / 2;
                s && s(), s = Kk(Fe, De, se ? 0 : +e.duration)
            },
            U = () => {
                const se = B.inited;
                yt(() => {
                    const Fe = m.value;
                    if (!Fe || !Fe[B.currentIndex] || e.type !== "line" || ro(o.value)) return;
                    const ie = Fe[B.currentIndex].$el,
                        {
                            lineWidth: _e,
                            lineHeight: De
                        } = e,
                        $e = ie.offsetLeft + ie.offsetWidth / 2,
                        Te = {
                            width: It(_e),
                            backgroundColor: e.color,
                            transform: `translateX(${$e}px) translateX(-50%)`
                        };
                    if (se && (Te.transitionDuration = `${e.duration}s`), Jt(De)) {
                        const W = It(De);
                        Te.height = W, Te.borderRadius = W
                    }
                    B.lineStyle = Te
                })
            },
            Q = se => {
                const Fe = se < B.currentIndex ? -1 : 1;
                for (; se >= 0 && se < y.length;) {
                    if (!y[se].disabled) return se;
                    se += Fe
                }
            },
            O = (se, Fe) => {
                const ie = Q(se);
                if (!Jt(ie)) return;
                const _e = y[ie],
                    De = b(_e, ie),
                    $e = B.currentIndex !== null;
                B.currentIndex !== ie && (B.currentIndex = ie, Fe || D(), U()), De !== e.active && (t("update:active", De), $e && t("change", De, _e.title)), i && !e.scrollspy && wp(Math.ceil(N4(o.value) - T.value))
            },
            N = (se, Fe) => {
                const ie = y.find((De, $e) => b(De, $e) === se),
                    _e = ie ? y.indexOf(ie) : 0;
                O(_e, Fe)
            },
            J = (se = !1) => {
                if (e.scrollspy) {
                    const Fe = y[B.currentIndex].$el;
                    if (Fe && p.value) {
                        const ie = N4(Fe, p.value) - I.value;
                        A = !0, a && a(), a = Vk(p.value, ie, se ? 0 : +e.duration, () => {
                            A = !1
                        })
                    }
                }
            },
            j = (se, Fe, ie) => {
                const {
                    title: _e,
                    disabled: De
                } = y[Fe], $e = b(y[Fe], Fe);
                De || (x0(e.beforeChange, {
                    args: [$e],
                    done: () => {
                        O(Fe), J()
                    }
                }), T9(se)), t("clickTab", {
                    name: $e,
                    title: _e,
                    event: ie,
                    disabled: De
                })
            },
            V = se => {
                i = se.isFixed, t("scroll", se)
            },
            ae = se => {
                yt(() => {
                    N(se), J(!0)
                })
            },
            Y = () => {
                for (let se = 0; se < y.length; se++) {
                    const {
                        top: Fe
                    } = Dn(y[se].$el);
                    if (Fe > I.value) return se === 0 ? 0 : se - 1
                }
                return y.length - 1
            },
            ue = () => {
                if (e.scrollspy && !A) {
                    const se = Y();
                    O(se)
                }
            },
            ye = () => {
                if (e.type === "line" && y.length) return Z("div", {
                    class: ru("line"),
                    style: B.lineStyle
                }, null)
            },
            ee = () => {
                var se, Fe, ie;
                const {
                    type: _e,
                    border: De,
                    sticky: $e
                } = e, Te = [Z("div", {
                    ref: $e ? void 0 : u,
                    class: [ru("wrap"), {
                        [F9]: _e === "line" && De
                    }]
                }, [Z("div", {
                    ref: l,
                    role: "tablist",
                    class: ru("nav", [_e, {
                        shrink: e.shrink,
                        complete: x.value
                    }]),
                    style: C.value,
                    "aria-orientation": "horizontal"
                }, [(se = n["nav-left"]) == null ? void 0 : se.call(n), y.map(W => W.renderTitle(j)), ye(), (Fe = n["nav-right"]) == null ? void 0 : Fe.call(n)])]), (ie = n["nav-bottom"]) == null ? void 0 : ie.call(n)];
                return $e ? Z("div", {
                    ref: u
                }, [Te]) : Te
            },
            ce = () => {
                U(), yt(() => {
                    var se, Fe;
                    D(!0), (Fe = (se = f.value) == null ? void 0 : se.swipeRef.value) == null || Fe.resize()
                })
            };
        je(() => [e.color, e.duration, e.lineWidth, e.lineHeight], U), je(Fo, ce), je(() => e.active, se => {
            se !== F.value && N(se)
        }), je(() => y.length, () => {
            B.inited && (N(e.active), U(), yt(() => {
                D(!0)
            }))
        });
        const ve = () => {
                N(e.active, !0), yt(() => {
                    B.inited = !0, u.value && (r = Dn(u.value).height), D(!0)
                })
            },
            xe = (se, Fe) => t("rendered", se, Fe);
        return an({
            resize: ce,
            scrollTo: ae
        }), fs(U), Cp(U), Eo(ve), N9(o, U), wr("scroll", ue, {
            target: p,
            passive: !0
        }), w({
            id: d,
            props: e,
            setLine: U,
            scrollable: x,
            onRendered: xe,
            currentName: F,
            setTitleRefs: g,
            scrollIntoView: D
        }), () => Z("div", {
            ref: o,
            class: ru([e.type])
        }, [e.showHeader ? e.sticky ? Z(Xk, {
            container: o.value,
            offsetTop: T.value,
            onScroll: V
        }, {
            default: () => [ee()]
        }) : ee() : null, Z(eH, {
            ref: f,
            count: y.length,
            inited: B.inited,
            animated: e.animated,
            duration: e.duration,
            swipeable: e.swipeable,
            lazyRender: e.lazyRender,
            currentIndex: B.currentIndex,
            onChange: O
        }, {
            default: () => {
                var se;
                return [(se = n.default) == null ? void 0 : se.call(n)]
            }
        })])
    }
});
const W9 = Symbol(),
    rH = () => fn(W9, null),
    [AH, rv] = st("tab"),
    iH = tt({
        name: AH,
        props: {
            id: String,
            dot: Boolean,
            type: String,
            color: String,
            title: String,
            badge: nt,
            shrink: Boolean,
            isActive: Boolean,
            disabled: Boolean,
            controls: String,
            scrollable: Boolean,
            activeColor: String,
            inactiveColor: String,
            showZeroBadge: et
        },
        setup(e, {
            slots: t
        }) {
            const n = Oe(() => {
                    const A = {},
                        {
                            type: i,
                            color: s,
                            disabled: a,
                            isActive: o,
                            activeColor: l,
                            inactiveColor: u
                        } = e;
                    s && i === "card" && (A.borderColor = s, a || (o ? A.backgroundColor = s : A.color = s));
                    const d = o ? l : u;
                    return d && (A.color = d), A
                }),
                r = () => {
                    const A = Z("span", {
                        class: rv("text", {
                            ellipsis: !e.scrollable
                        })
                    }, [t.title ? t.title() : e.title]);
                    return e.dot || Jt(e.badge) && e.badge !== "" ? Z(mf, {
                        dot: e.dot,
                        content: e.badge,
                        showZero: e.showZeroBadge
                    }, {
                        default: () => [A]
                    }) : A
                };
            return () => Z("div", {
                id: e.id,
                role: "tab",
                class: [rv([e.type, {
                    grow: e.scrollable && !e.shrink,
                    shrink: e.shrink,
                    active: e.isActive,
                    disabled: e.disabled
                }])],
                style: n.value,
                tabindex: e.disabled ? void 0 : e.isActive ? 0 : -1,
                "aria-selected": e.isActive,
                "aria-disabled": e.disabled || void 0,
                "aria-controls": e.controls
            }, [r()])
        }
    }),
    [sH, aH] = st("swipe-item");
var oH = tt({
    name: sH,
    setup(e, {
        slots: t
    }) {
        let n;
        const r = Nt({
                offset: 0,
                inited: !1,
                mounted: !1
            }),
            {
                parent: A,
                index: i
            } = Ir(K9);
        if (!A) return;
        const s = Oe(() => {
                const l = {},
                    {
                        vertical: u
                    } = A.props;
                return A.size.value && (l[u ? "height" : "width"] = `${A.size.value}px`), r.offset && (l.transform = `translate${u?"Y":"X"}(${r.offset}px)`), l
            }),
            a = Oe(() => {
                const {
                    loop: l,
                    lazyRender: u
                } = A.props;
                if (!u || n) return !0;
                if (!r.mounted) return !1;
                const f = A.activeIndicator.value,
                    d = A.count.value - 1,
                    p = f === 0 && l ? d : f - 1,
                    m = f === d && l ? 0 : f + 1;
                return n = i.value === f || i.value === p || i.value === m, n
            }),
            o = l => {
                r.offset = l
            };
        return qt(() => {
            yt(() => {
                r.mounted = !0
            })
        }), an({
            setOffset: o
        }), () => {
            var l;
            return Z("div", {
                class: aH(),
                style: s.value
            }, [a.value ? (l = t.default) == null ? void 0 : l.call(t) : null])
        }
    }
});
const j9 = dt(oH),
    [lH, dd] = st("tab"),
    uH = wt({}, So, {
        dot: Boolean,
        name: nt,
        badge: nt,
        title: String,
        disabled: Boolean,
        titleClass: xn,
        titleStyle: [String, Object],
        showZeroBadge: et
    });
var cH = tt({
    name: lH,
    props: uH,
    setup(e, {
        slots: t
    }) {
        const n = Ep(),
            r = Ue(!1),
            A = zt(),
            {
                parent: i,
                index: s
            } = Ir(z9);
        if (!i) return;
        const a = () => {
                var m;
                return (m = e.name) != null ? m : s.value
            },
            o = () => {
                r.value = !0, i.props.lazyRender && yt(() => {
                    i.onRendered(a(), e.title)
                })
            },
            l = Oe(() => {
                const m = a() === i.currentName.value;
                return m && !r.value && o(), m
            }),
            u = Ue(""),
            f = Ue("");
        Yc(() => {
            const {
                titleClass: m,
                titleStyle: g
            } = e;
            u.value = m ? M9(m) : "", f.value = g && typeof g != "string" ? $k(H9(g)) : g
        });
        const d = m => Z(iH, $t({
                key: n,
                id: `${i.id}-${s.value}`,
                ref: i.setTitleRefs(s.value),
                style: f.value,
                class: u.value,
                isActive: l.value,
                controls: n,
                scrollable: i.scrollable.value,
                activeColor: i.props.titleActiveColor,
                inactiveColor: i.props.titleInactiveColor,
                onClick: g => m(A.proxy, s.value, g)
            }, Zt(i.props, ["type", "color", "shrink"]), Zt(e, ["dot", "badge", "title", "disabled", "showZeroBadge"])), {
                title: t.title
            }),
            p = Ue(!l.value);
        return je(l, m => {
            m ? p.value = !1 : Ms(() => {
                p.value = !0
            })
        }), je(() => e.title, () => {
            i.setLine(), i.scrollIntoView()
        }), AA(W9, l), an({
            id: n,
            renderTitle: d
        }), () => {
            var m;
            const g = `${i.id}-${s.value}`,
                {
                    animated: y,
                    swipeable: w,
                    scrollspy: B,
                    lazyRender: x
                } = i.props;
            if (!t.default && !y) return;
            const C = B || l.value;
            if (y || w) return Z(j9, {
                id: n,
                role: "tabpanel",
                class: dd("panel-wrapper", {
                    inactive: p.value
                }),
                tabindex: l.value ? 0 : -1,
                "aria-hidden": !l.value,
                "aria-labelledby": g
            }, {
                default: () => {
                    var T;
                    return [Z("div", {
                        class: dd("panel")
                    }, [(T = t.default) == null ? void 0 : T.call(t)])]
                }
            });
            const F = r.value || B || !x ? (m = t.default) == null ? void 0 : m.call(t) : null;
            return ns(Z("div", {
                id: n,
                role: "tabpanel",
                class: dd("panel"),
                tabindex: C ? 0 : -1,
                "aria-labelledby": g
            }, [F]), [
                [as, C]
            ])
        }
    }
});
const Xte = dt(cH),
    Jte = dt(nH),
    [fH, qte] = st("picker-group"),
    dH = Symbol(fH);
wt({
    tabs: si(),
    activeTab: xt(0),
    nextStepText: String
}, wf);
const bp = wt({
        loading: Boolean,
        readonly: Boolean,
        allowHtml: Boolean,
        optionHeight: xt(44),
        showToolbar: et,
        swipeDuration: xt(1e3),
        visibleOptionNum: xt(6)
    }, wf),
    hH = wt({}, bp, {
        columns: si(),
        modelValue: si(),
        toolbarPosition: ft("top"),
        columnsFieldNames: Object
    });
var pH = tt({
    name: xk,
    props: hH,
    emits: ["confirm", "cancel", "change", "scrollInto", "clickOption", "update:modelValue"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = Ue(),
            A = Ue(e.modelValue.slice(0)),
            {
                parent: i
            } = Ir(dH),
            {
                children: s,
                linkChildren: a
            } = FA(O9);
        a();
        const o = Oe(() => _k(e.columnsFieldNames)),
            l = Oe(() => yp(e.optionHeight)),
            u = Oe(() => Ek(e.columns, o.value)),
            f = Oe(() => {
                const {
                    columns: Q
                } = e;
                switch (u.value) {
                    case "multiple":
                        return Q;
                    case "cascade":
                        return bk(Q, o.value, A);
                    default:
                        return [Q]
                }
            }),
            d = Oe(() => f.value.some(Q => Q.length)),
            p = Oe(() => f.value.map((Q, O) => z2(Q, A.value[O], o.value))),
            m = Oe(() => f.value.map((Q, O) => Q.findIndex(N => N[o.value.value] === A.value[O]))),
            g = (Q, O) => {
                if (A.value[Q] !== O) {
                    const N = A.value.slice(0);
                    N[Q] = O, A.value = N
                }
            },
            y = () => ({
                selectedValues: A.value.slice(0),
                selectedOptions: p.value,
                selectedIndexes: m.value
            }),
            w = (Q, O) => {
                g(O, Q), u.value === "cascade" && A.value.forEach((N, J) => {
                    const j = f.value[J];
                    Z4(j, N, o.value) || g(J, j.length ? j[0][o.value.value] : void 0)
                }), yt(() => {
                    t("change", wt({
                        columnIndex: O
                    }, y()))
                })
            },
            B = (Q, O) => {
                const N = {
                    columnIndex: O,
                    currentOption: Q
                };
                t("clickOption", wt(y(), N)), t("scrollInto", N)
            },
            x = () => {
                s.forEach(O => O.stopMomentum());
                const Q = y();
                return yt(() => {
                    t("confirm", Q)
                }), Q
            },
            C = () => t("cancel", y()),
            b = () => f.value.map((Q, O) => Z(Qk, {
                value: A.value[O],
                fields: o.value,
                options: Q,
                readonly: e.readonly,
                allowHtml: e.allowHtml,
                optionHeight: l.value,
                swipeDuration: e.swipeDuration,
                visibleOptionNum: e.visibleOptionNum,
                onChange: N => w(N, O),
                onClickOption: N => B(N, O),
                onScrollInto: N => {
                    t("scrollInto", {
                        currentOption: N,
                        columnIndex: O
                    })
                }
            }, {
                option: n.option
            })),
            F = Q => {
                if (d.value) {
                    const O = {
                            height: `${l.value}px`
                        },
                        N = {
                            backgroundSize: `100% ${(Q-l.value)/2}px`
                        };
                    return [Z("div", {
                        class: WA("mask"),
                        style: N
                    }, null), Z("div", {
                        class: [DL, WA("frame")],
                        style: O
                    }, null)]
                }
            },
            T = () => {
                const Q = l.value * +e.visibleOptionNum,
                    O = {
                        height: `${Q}px`
                    };
                return Z("div", {
                    ref: r,
                    class: WA("columns"),
                    style: O
                }, [b(), F(Q)])
            },
            I = () => {
                if (e.showToolbar && !i) return Z(Dk, $t(Zt(e, Ik), {
                    onConfirm: x,
                    onCancel: C
                }), Zt(n, Tk))
            };
        je(f, Q => {
            Q.forEach((O, N) => {
                O.length && !Z4(O, A.value[N], o.value) && g(N, D9(O)[o.value.value])
            })
        }, {
            immediate: !0
        });
        let D;
        return je(() => e.modelValue, Q => {
            !qi(Q, A.value) && !qi(Q, D) && (A.value = Q.slice(0), D = Q.slice(0))
        }, {
            deep: !0
        }), je(A, Q => {
            qi(Q, e.modelValue) || (D = Q.slice(0), t("update:modelValue", D))
        }, {
            immediate: !0
        }), wr("touchmove", vr, {
            target: r
        }), an({
            confirm: x,
            getSelectedOptions: () => p.value
        }), () => {
            var Q, O;
            return Z("div", {
                class: WA()
            }, [e.toolbarPosition === "top" ? I() : null, e.loading ? Z(di, {
                class: WA("loading")
            }, null) : null, (Q = n["columns-top"]) == null ? void 0 : Q.call(n), T(), (O = n["columns-bottom"]) == null ? void 0 : O.call(n), e.toolbarPosition === "bottom" ? I() : null])
        }
    }
});
const gH = dt(pH),
    [vH, Ea] = st("cell"),
    yf = {
        tag: ft("div"),
        icon: String,
        size: String,
        title: nt,
        value: nt,
        label: nt,
        center: Boolean,
        isLink: Boolean,
        border: et,
        iconPrefix: String,
        valueClass: xn,
        labelClass: xn,
        titleClass: xn,
        titleStyle: null,
        arrowDirection: String,
        required: {
            type: [Boolean, String],
            default: null
        },
        clickable: {
            type: Boolean,
            default: null
        }
    },
    mH = wt({}, yf, So);
var BH = tt({
    name: vH,
    props: mH,
    setup(e, {
        slots: t
    }) {
        const n = E0(),
            r = () => {
                if (t.label || Jt(e.label)) return Z("div", {
                    class: [Ea("label"), e.labelClass]
                }, [t.label ? t.label() : e.label])
            },
            A = () => {
                var o;
                if (t.title || Jt(e.title)) {
                    const l = (o = t.title) == null ? void 0 : o.call(t);
                    return Array.isArray(l) && l.length === 0 ? void 0 : Z("div", {
                        class: [Ea("title"), e.titleClass],
                        style: e.titleStyle
                    }, [l || Z("span", null, [e.title]), r()])
                }
            },
            i = () => {
                const o = t.value || t.default;
                if (o || Jt(e.value)) return Z("div", {
                    class: [Ea("value"), e.valueClass]
                }, [o ? o() : Z("span", null, [e.value])])
            },
            s = () => {
                if (t.icon) return t.icon();
                if (e.icon) return Z(En, {
                    name: e.icon,
                    class: Ea("left-icon"),
                    classPrefix: e.iconPrefix
                }, null)
            },
            a = () => {
                if (t["right-icon"]) return t["right-icon"]();
                if (e.isLink) {
                    const o = e.arrowDirection && e.arrowDirection !== "right" ? `arrow-${e.arrowDirection}` : "arrow";
                    return Z(En, {
                        name: o,
                        class: Ea("right-icon")
                    }, null)
                }
            };
        return () => {
            var o;
            const {
                tag: l,
                size: u,
                center: f,
                border: d,
                isLink: p,
                required: m
            } = e, g = (o = e.clickable) != null ? o : p, y = {
                center: f,
                required: !!m,
                clickable: g,
                borderless: !d
            };
            return u && (y[u] = !!u), Z(l, {
                class: Ea(y),
                role: g ? "button" : void 0,
                tabindex: g ? 0 : void 0,
                onClick: n
            }, {
                default: () => {
                    var w;
                    return [s(), A(), i(), a(), (w = t.extra) == null ? void 0 : w.call(t)]
                }
            })
        }
    }
});
const Y9 = dt(BH);

function X9(e) {
    return Array.isArray(e) ? !e.length : e === 0 ? !1 : !e
}

function wH(e, t) {
    if (X9(e)) {
        if (t.required) return !1;
        if (t.validateEmpty === !1) return !0
    }
    return !(t.pattern && !t.pattern.test(String(e)))
}

function yH(e, t) {
    return new Promise(n => {
        const r = t.validator(e, t);
        if (vp(r)) {
            r.then(n);
            return
        }
        n(r)
    })
}

function Av(e, t) {
    const {
        message: n
    } = t;
    return no(n) ? n(e, t) : n || ""
}

function CH({
    target: e
}) {
    e.composing = !0
}

function iv({
    target: e
}) {
    e.composing && (e.composing = !1, e.dispatchEvent(new Event("input")))
}

function xH(e, t) {
    const n = Bp();
    e.style.height = "auto";
    let r = e.scrollHeight;
    if (ta(t)) {
        const {
            maxHeight: A,
            minHeight: i
        } = t;
        A !== void 0 && (r = Math.min(r, A)), i !== void 0 && (r = Math.max(r, i))
    }
    r && (e.style.height = `${r}px`, wp(n))
}

function EH(e) {
    return e === "number" ? {
        type: "text",
        inputmode: "decimal"
    } : e === "digit" ? {
        type: "tel",
        inputmode: "numeric"
    } : {
        type: e
    }
}

function HA(e) {
    return [...e].length
}

function hd(e, t) {
    return [...e].slice(0, t).join("")
}
const [bH, Rr] = st("field"), FH = {
    id: String,
    name: String,
    leftIcon: String,
    rightIcon: String,
    autofocus: Boolean,
    clearable: Boolean,
    maxlength: nt,
    formatter: Function,
    clearIcon: ft("clear"),
    modelValue: xt(""),
    inputAlign: String,
    placeholder: String,
    autocomplete: String,
    autocapitalize: String,
    autocorrect: String,
    errorMessage: String,
    enterkeyhint: String,
    clearTrigger: ft("focus"),
    formatTrigger: ft("onChange"),
    spellcheck: {
        type: Boolean,
        default: null
    },
    error: {
        type: Boolean,
        default: null
    },
    disabled: {
        type: Boolean,
        default: null
    },
    readonly: {
        type: Boolean,
        default: null
    }
}, _H = wt({}, yf, FH, {
    rows: nt,
    type: ft("text"),
    rules: Array,
    autosize: [Boolean, Object],
    labelWidth: nt,
    labelClass: xn,
    labelAlign: String,
    showWordLimit: Boolean,
    errorMessageAlign: String,
    colon: {
        type: Boolean,
        default: null
    }
});
var SH = tt({
    name: bH,
    props: _H,
    emits: ["blur", "focus", "clear", "keypress", "clickInput", "endValidate", "startValidate", "clickLeftIcon", "clickRightIcon", "update:modelValue"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = Ep(),
            A = Nt({
                status: "unvalidated",
                focused: !1,
                validateMessage: ""
            }),
            i = Ue(),
            s = Ue(),
            a = Ue(),
            {
                parent: o
            } = Ir(PL),
            l = () => {
                var ie;
                return String((ie = e.modelValue) != null ? ie : "")
            },
            u = ie => {
                if (Jt(e[ie])) return e[ie];
                if (o && Jt(o.props[ie])) return o.props[ie]
            },
            f = Oe(() => {
                const ie = u("readonly");
                if (e.clearable && !ie) {
                    const _e = l() !== "",
                        De = e.clearTrigger === "always" || e.clearTrigger === "focus" && A.focused;
                    return _e && De
                }
                return !1
            }),
            d = Oe(() => a.value && n.input ? a.value() : e.modelValue),
            p = Oe(() => {
                var ie;
                const _e = u("required");
                return _e === "auto" ? (ie = e.rules) == null ? void 0 : ie.some(De => De.required) : _e
            }),
            m = ie => ie.reduce((_e, De) => _e.then(() => {
                if (A.status === "failed") return;
                let {
                    value: $e
                } = d;
                if (De.formatter && ($e = De.formatter($e, De)), !wH($e, De)) {
                    A.status = "failed", A.validateMessage = Av($e, De);
                    return
                }
                if (De.validator) return X9($e) && De.validateEmpty === !1 ? void 0 : yH($e, De).then(Te => {
                    Te && typeof Te == "string" ? (A.status = "failed", A.validateMessage = Te) : Te === !1 && (A.status = "failed", A.validateMessage = Av($e, De))
                })
            }), Promise.resolve()),
            g = () => {
                A.status = "unvalidated", A.validateMessage = ""
            },
            y = () => t("endValidate", {
                status: A.status,
                message: A.validateMessage
            }),
            w = (ie = e.rules) => new Promise(_e => {
                g(), ie ? (t("startValidate"), m(ie).then(() => {
                    A.status === "failed" ? (_e({
                        name: e.name,
                        message: A.validateMessage
                    }), y()) : (A.status = "passed", _e(), y())
                })) : _e()
            }),
            B = ie => {
                if (o && e.rules) {
                    const {
                        validateTrigger: _e
                    } = o.props, De = lc(_e).includes(ie), $e = e.rules.filter(Te => Te.trigger ? lc(Te.trigger).includes(ie) : De);
                    $e.length && w($e)
                }
            },
            x = ie => {
                var _e;
                const {
                    maxlength: De
                } = e;
                if (Jt(De) && HA(ie) > +De) {
                    const $e = l();
                    if ($e && HA($e) === +De) return $e;
                    const Te = (_e = i.value) == null ? void 0 : _e.selectionEnd;
                    if (A.focused && Te) {
                        const W = [...ie],
                            P = W.length - +De;
                        return W.splice(Te - P, P), W.join("")
                    }
                    return hd(ie, +De)
                }
                return ie
            },
            C = (ie, _e = "onChange") => {
                const De = ie;
                ie = x(ie);
                const $e = HA(De) - HA(ie);
                if (e.type === "number" || e.type === "digit") {
                    const W = e.type === "number";
                    ie = wL(ie, W, W)
                }
                let Te = 0;
                if (e.formatter && _e === e.formatTrigger) {
                    const {
                        formatter: W,
                        maxlength: P
                    } = e;
                    if (ie = W(ie), Jt(P) && HA(ie) > +P && (ie = hd(ie, +P)), i.value && A.focused) {
                        const {
                            selectionEnd: M
                        } = i.value, te = hd(De, M);
                        Te = HA(W(te)) - HA(te)
                    }
                }
                if (i.value && i.value.value !== ie)
                    if (A.focused) {
                        let {
                            selectionStart: W,
                            selectionEnd: P
                        } = i.value;
                        if (i.value.value = ie, Jt(W) && Jt(P)) {
                            const M = HA(ie);
                            $e ? (W -= $e, P -= $e) : Te && (W += Te, P += Te), i.value.setSelectionRange(Math.min(W, M), Math.min(P, M))
                        }
                    } else i.value.value = ie;
                ie !== e.modelValue && t("update:modelValue", ie)
            },
            b = ie => {
                ie.target.composing || C(ie.target.value)
            },
            F = () => {
                var ie;
                return (ie = i.value) == null ? void 0 : ie.blur()
            },
            T = () => {
                var ie;
                return (ie = i.value) == null ? void 0 : ie.focus()
            },
            I = () => {
                const ie = i.value;
                e.type === "textarea" && e.autosize && ie && xH(ie, e.autosize)
            },
            D = ie => {
                A.focused = !0, t("focus", ie), yt(I), u("readonly") && F()
            },
            U = ie => {
                A.focused = !1, C(l(), "onBlur"), t("blur", ie), !u("readonly") && (B("onBlur"), yt(I), hL())
            },
            Q = ie => t("clickInput", ie),
            O = ie => t("clickLeftIcon", ie),
            N = ie => t("clickRightIcon", ie),
            J = ie => {
                vr(ie), t("update:modelValue", ""), t("clear", ie)
            },
            j = Oe(() => {
                if (typeof e.error == "boolean") return e.error;
                if (o && o.props.showError && A.status === "failed") return !0
            }),
            V = Oe(() => {
                const ie = u("labelWidth"),
                    _e = u("labelAlign");
                if (ie && _e !== "top") return {
                    width: It(ie)
                }
            }),
            ae = ie => {
                ie.keyCode === 13 && (!(o && o.props.submitOnEnter) && e.type !== "textarea" && vr(ie), e.type === "search" && F()), t("keypress", ie)
            },
            Y = () => e.id || `${r}-input`,
            ue = () => A.status,
            ye = () => {
                const ie = Rr("control", [u("inputAlign"), {
                    error: j.value,
                    custom: !!n.input,
                    "min-height": e.type === "textarea" && !e.autosize
                }]);
                if (n.input) return Z("div", {
                    class: ie,
                    onClick: Q
                }, [n.input()]);
                const _e = {
                    id: Y(),
                    ref: i,
                    name: e.name,
                    rows: e.rows !== void 0 ? +e.rows : void 0,
                    class: ie,
                    disabled: u("disabled"),
                    readonly: u("readonly"),
                    autofocus: e.autofocus,
                    placeholder: e.placeholder,
                    autocomplete: e.autocomplete,
                    autocapitalize: e.autocapitalize,
                    autocorrect: e.autocorrect,
                    enterkeyhint: e.enterkeyhint,
                    spellcheck: e.spellcheck,
                    "aria-labelledby": e.label ? `${r}-label` : void 0,
                    onBlur: U,
                    onFocus: D,
                    onInput: b,
                    onClick: Q,
                    onChange: iv,
                    onKeypress: ae,
                    onCompositionend: iv,
                    onCompositionstart: CH
                };
                return e.type === "textarea" ? Z("textarea", _e, null) : Z("input", $t(EH(e.type), _e), null)
            },
            ee = () => {
                const ie = n["left-icon"];
                if (e.leftIcon || ie) return Z("div", {
                    class: Rr("left-icon"),
                    onClick: O
                }, [ie ? ie() : Z(En, {
                    name: e.leftIcon,
                    classPrefix: e.iconPrefix
                }, null)])
            },
            ce = () => {
                const ie = n["right-icon"];
                if (e.rightIcon || ie) return Z("div", {
                    class: Rr("right-icon"),
                    onClick: N
                }, [ie ? ie() : Z(En, {
                    name: e.rightIcon,
                    classPrefix: e.iconPrefix
                }, null)])
            },
            ve = () => {
                if (e.showWordLimit && e.maxlength) {
                    const ie = HA(l());
                    return Z("div", {
                        class: Rr("word-limit")
                    }, [Z("span", {
                        class: Rr("word-num")
                    }, [ie]), tf("/"), e.maxlength])
                }
            },
            xe = () => {
                if (o && o.props.showErrorMessage === !1) return;
                const ie = e.errorMessage || A.validateMessage;
                if (ie) {
                    const _e = n["error-message"],
                        De = u("errorMessageAlign");
                    return Z("div", {
                        class: Rr("error-message", De)
                    }, [_e ? _e({
                        message: ie
                    }) : ie])
                }
            },
            se = () => {
                const ie = u("labelWidth"),
                    _e = u("labelAlign"),
                    De = u("colon") ? ":" : "";
                if (n.label) return [n.label(), De];
                if (e.label) return Z("label", {
                    id: `${r}-label`,
                    for: n.input ? void 0 : Y(),
                    onClick: $e => {
                        vr($e), T()
                    },
                    style: _e === "top" && ie ? {
                        width: It(ie)
                    } : void 0
                }, [e.label + De])
            },
            Fe = () => [Z("div", {
                class: Rr("body")
            }, [ye(), f.value && Z(En, {
                ref: s,
                name: e.clearIcon,
                class: Rr("clear")
            }, null), ce(), n.button && Z("div", {
                class: Rr("button")
            }, [n.button()])]), ve(), xe()];
        return an({
            blur: F,
            focus: T,
            validate: w,
            formValue: d,
            resetValidation: g,
            getValidationStatus: ue
        }), AA(M6, {
            customValue: a,
            resetValidation: g,
            validateWithTrigger: B
        }), je(() => e.modelValue, () => {
            C(l()), g(), B("onChange"), yt(I)
        }), qt(() => {
            C(l(), e.formatTrigger), yt(I)
        }), wr("touchstart", J, {
            target: Oe(() => {
                var ie;
                return (ie = s.value) == null ? void 0 : ie.$el
            })
        }), () => {
            const ie = u("disabled"),
                _e = u("labelAlign"),
                De = ee(),
                $e = () => {
                    const Te = se();
                    return _e === "top" ? [De, Te].filter(Boolean) : Te || []
                };
            return Z(Y9, {
                size: e.size,
                class: Rr({
                    error: j.value,
                    disabled: ie,
                    [`label-${_e}`]: _e
                }),
                center: e.center,
                border: e.border,
                isLink: e.isLink,
                clickable: e.clickable,
                titleStyle: V.value,
                valueClass: Rr("value"),
                titleClass: [Rr("label", [_e, {
                    required: p.value
                }]), e.labelClass],
                arrowDirection: e.arrowDirection
            }, {
                icon: De && _e !== "top" ? () => De : null,
                title: $e,
                value: Fe,
                extra: n.extra
            })
        }
    }
});
const Zte = dt(SH);
let qo = 0;

function QH(e) {
    e ? (qo || document.body.classList.add("van-toast--unclickable"), qo++) : qo && (qo--, qo || document.body.classList.remove("van-toast--unclickable"))
}
const [UH, ba] = st("toast"), TH = ["show", "overlay", "teleport", "transition", "overlayClass", "overlayStyle", "closeOnClickOverlay", "zIndex"], IH = {
    icon: String,
    show: Boolean,
    type: ft("text"),
    overlay: Boolean,
    message: nt,
    iconSize: nt,
    duration: mp(2e3),
    position: ft("middle"),
    teleport: [String, Object],
    wordBreak: String,
    className: xn,
    iconPrefix: String,
    transition: ft("van-fade"),
    loadingType: String,
    forbidClick: Boolean,
    overlayClass: xn,
    overlayStyle: Object,
    closeOnClick: Boolean,
    closeOnClickOverlay: Boolean,
    zIndex: nt
};
var J9 = tt({
    name: UH,
    props: IH,
    emits: ["update:show"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        let r, A = !1;
        const i = () => {
                const f = e.show && e.forbidClick;
                A !== f && (A = f, QH(A))
            },
            s = f => t("update:show", f),
            a = () => {
                e.closeOnClick && s(!1)
            },
            o = () => clearTimeout(r),
            l = () => {
                const {
                    icon: f,
                    type: d,
                    iconSize: p,
                    iconPrefix: m,
                    loadingType: g
                } = e;
                if (f || d === "success" || d === "fail") return Z(En, {
                    name: f || d,
                    size: p,
                    class: ba("icon"),
                    classPrefix: m
                }, null);
                if (d === "loading") return Z(di, {
                    class: ba("loading"),
                    size: p,
                    type: g
                }, null)
            },
            u = () => {
                const {
                    type: f,
                    message: d
                } = e;
                if (n.message) return Z("div", {
                    class: ba("text")
                }, [n.message()]);
                if (Jt(d) && d !== "") return f === "html" ? Z("div", {
                    key: 0,
                    class: ba("text"),
                    innerHTML: String(d)
                }, null) : Z("div", {
                    class: ba("text")
                }, [d])
            };
        return je(() => [e.show, e.forbidClick], i), je(() => [e.show, e.type, e.message, e.duration], () => {
            o(), e.show && e.duration > 0 && (r = setTimeout(() => {
                s(!1)
            }, e.duration))
        }), qt(i), fi(i), () => Z(Uo, $t({
            class: [ba([e.position, e.wordBreak === "normal" ? "break-normal" : e.wordBreak, {
                [e.type]: !e.icon
            }]), e.className],
            lockScroll: !1,
            onClick: a,
            onClosed: o,
            "onUpdate:show": s
        }, Zt(e, TH)), {
            default: () => [l(), u()]
        })
    }
});

function Fp() {
    const e = Nt({
            show: !1
        }),
        t = A => {
            e.show = A
        },
        n = A => {
            wt(e, A, {
                transitionAppear: !0
            }), t(!0)
        },
        r = () => t(!1);
    return an({
        open: n,
        close: r,
        toggle: t
    }), {
        open: n,
        close: r,
        state: e,
        toggle: t
    }
}

function _p(e) {
    const t = x3(e),
        n = document.createElement("div");
    return document.body.appendChild(n), {
        instance: t.mount(n),
        unmount() {
            t.unmount(), document.body.removeChild(n)
        }
    }
}
const DH = {
    icon: "",
    type: "text",
    message: "",
    className: "",
    overlay: !1,
    onClose: void 0,
    onOpened: void 0,
    duration: 2e3,
    teleport: "body",
    iconSize: void 0,
    iconPrefix: void 0,
    position: "middle",
    transition: "van-fade",
    forbidClick: !1,
    loadingType: void 0,
    overlayClass: "",
    overlayStyle: void 0,
    closeOnClick: !1,
    closeOnClickOverlay: !1
};
let $i = [],
    PH = !1,
    sv = wt({}, DH);
const OH = new Map;

function q9(e) {
    return ta(e) ? e : {
        message: e
    }
}

function LH() {
    const {
        instance: e,
        unmount: t
    } = _p({
        setup() {
            const n = Ue(""),
                {
                    open: r,
                    state: A,
                    close: i,
                    toggle: s
                } = Fp(),
                a = () => {},
                o = () => Z(J9, $t(A, {
                    onClosed: a,
                    "onUpdate:show": s
                }), null);
            return je(n, l => {
                A.message = l
            }), zt().render = o, {
                open: r,
                close: i,
                message: n
            }
        }
    });
    return e
}

function kH() {
    if (!$i.length || PH) {
        const e = LH();
        $i.push(e)
    }
    return $i[$i.length - 1]
}

function W2(e = {}) {
    if (!ii) return {};
    const t = kH(),
        n = q9(e);
    return t.open(wt({}, sv, OH.get(n.type || sv.type), n)), t
}
const Sp = e => t => W2(wt({
        type: e
    }, q9(t))),
    ene = Sp("loading"),
    tne = Sp("success"),
    nne = Sp("fail"),
    rne = e => {
        $i.length && (e ? ($i.forEach(t => {
            t.close()
        }), $i = []) : $i[0].close())
    },
    Ane = dt(J9),
    [HH, pd] = st("switch"),
    MH = {
        size: nt,
        loading: Boolean,
        disabled: Boolean,
        modelValue: xn,
        activeColor: String,
        inactiveColor: String,
        activeValue: {
            type: xn,
            default: !0
        },
        inactiveValue: {
            type: xn,
            default: !1
        }
    };
var RH = tt({
    name: HH,
    props: MH,
    emits: ["change", "update:modelValue"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = () => e.modelValue === e.activeValue,
            A = () => {
                if (!e.disabled && !e.loading) {
                    const s = r() ? e.inactiveValue : e.activeValue;
                    t("update:modelValue", s), t("change", s)
                }
            },
            i = () => {
                if (e.loading) {
                    const s = r() ? e.activeColor : e.inactiveColor;
                    return Z(di, {
                        class: pd("loading"),
                        color: s
                    }, null)
                }
                if (n.node) return n.node()
            };
        return bo(() => e.modelValue), () => {
            var s;
            const {
                size: a,
                loading: o,
                disabled: l,
                activeColor: u,
                inactiveColor: f
            } = e, d = r(), p = {
                fontSize: It(a),
                backgroundColor: d ? u : f
            };
            return Z("div", {
                role: "switch",
                class: pd({
                    on: d,
                    loading: o,
                    disabled: l
                }),
                style: p,
                tabindex: l ? void 0 : 0,
                "aria-checked": d,
                onClick: A
            }, [Z("div", {
                class: pd("node")
            }, [i()]), (s = n.background) == null ? void 0 : s.call(n)])
        }
    }
});
const ine = dt(RH),
    [Z9, NH] = st("radio-group"),
    $H = {
        shape: String,
        disabled: Boolean,
        iconSize: nt,
        direction: String,
        modelValue: xn,
        checkedColor: String
    },
    ew = Symbol(Z9);
var KH = tt({
    name: Z9,
    props: $H,
    emits: ["change", "update:modelValue"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const {
            linkChildren: r
        } = FA(ew), A = i => t("update:modelValue", i);
        return je(() => e.modelValue, i => t("change", i)), r({
            props: e,
            updateValue: A
        }), bo(() => e.modelValue), () => {
            var i;
            return Z("div", {
                class: NH([e.direction]),
                role: "radiogroup"
            }, [(i = n.default) == null ? void 0 : i.call(n)])
        }
    }
});
const sne = dt(KH),
    Qp = {
        name: xn,
        disabled: Boolean,
        iconSize: nt,
        modelValue: xn,
        checkedColor: String,
        labelPosition: String,
        labelDisabled: Boolean
    };
var tw = tt({
    props: wt({}, Qp, {
        bem: $n(Function),
        role: String,
        shape: String,
        parent: Object,
        checked: Boolean,
        bindGroup: et,
        indeterminate: {
            type: Boolean,
            default: null
        }
    }),
    emits: ["click", "toggle"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = Ue(),
            A = d => {
                if (e.parent && e.bindGroup) return e.parent.props[d]
            },
            i = Oe(() => {
                if (e.parent && e.bindGroup) {
                    const d = A("disabled") || e.disabled;
                    if (e.role === "checkbox") {
                        const p = A("modelValue").length,
                            m = A("max"),
                            g = m && p >= +m;
                        return d || g && !e.checked
                    }
                    return d
                }
                return e.disabled
            }),
            s = Oe(() => A("direction")),
            a = Oe(() => {
                const d = e.checkedColor || A("checkedColor");
                if (d && e.checked && !i.value) return {
                    borderColor: d,
                    backgroundColor: d
                }
            }),
            o = Oe(() => e.shape || A("shape") || "round"),
            l = d => {
                const {
                    target: p
                } = d, m = r.value, g = m === p || (m == null ? void 0 : m.contains(p));
                !i.value && (g || !e.labelDisabled) && t("toggle"), t("click", d)
            },
            u = () => {
                var d, p;
                const {
                    bem: m,
                    checked: g,
                    indeterminate: y
                } = e, w = e.iconSize || A("iconSize");
                return Z("div", {
                    ref: r,
                    class: m("icon", [o.value, {
                        disabled: i.value,
                        checked: g,
                        indeterminate: y
                    }]),
                    style: o.value !== "dot" ? {
                        fontSize: It(w)
                    } : {
                        width: It(w),
                        height: It(w),
                        borderColor: (d = a.value) == null ? void 0 : d.borderColor
                    }
                }, [n.icon ? n.icon({
                    checked: g,
                    disabled: i.value
                }) : o.value !== "dot" ? Z(En, {
                    name: y ? "minus" : "success",
                    style: a.value
                }, null) : Z("div", {
                    class: m("icon--dot__icon"),
                    style: {
                        backgroundColor: (p = a.value) == null ? void 0 : p.backgroundColor
                    }
                }, null)])
            },
            f = () => {
                const {
                    checked: d
                } = e;
                if (n.default) return Z("span", {
                    class: e.bem("label", [e.labelPosition, {
                        disabled: i.value
                    }])
                }, [n.default({
                    checked: d,
                    disabled: i.value
                })])
            };
        return () => {
            const d = e.labelPosition === "left" ? [f(), u()] : [u(), f()];
            return Z("div", {
                role: e.role,
                class: e.bem([{
                    disabled: i.value,
                    "label-disabled": e.labelDisabled
                }, s.value]),
                tabindex: i.value ? void 0 : 0,
                "aria-checked": e.checked,
                onClick: l
            }, [d])
        }
    }
});
const VH = wt({}, Qp, {
        shape: String
    }),
    [GH, zH] = st("radio");
var WH = tt({
    name: GH,
    props: VH,
    emits: ["update:modelValue"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const {
            parent: r
        } = Ir(ew), A = () => (r ? r.props.modelValue : e.modelValue) === e.name, i = () => {
            r ? r.updateValue(e.name) : t("update:modelValue", e.name)
        };
        return () => Z(tw, $t({
            bem: zH,
            role: "radio",
            parent: r,
            checked: A(),
            onToggle: i
        }, e), Zt(n, ["default", "icon"]))
    }
});
const ane = dt(WH),
    [jH, yn, JA] = st("calendar"),
    YH = e => JA("monthTitle", e.getFullYear(), e.getMonth() + 1);

function j2(e, t) {
    const n = e.getFullYear(),
        r = t.getFullYear();
    if (n === r) {
        const A = e.getMonth(),
            i = t.getMonth();
        return A === i ? 0 : A > i ? 1 : -1
    }
    return n > r ? 1 : -1
}

function Fr(e, t) {
    const n = j2(e, t);
    if (n === 0) {
        const r = e.getDate(),
            A = t.getDate();
        return r === A ? 0 : r > A ? 1 : -1
    }
    return n
}
const fc = e => new Date(e),
    av = e => Array.isArray(e) ? e.map(fc) : fc(e);

function Up(e, t) {
    const n = fc(e);
    return n.setDate(n.getDate() + t), n
}
const Y2 = e => Up(e, -1),
    nw = e => Up(e, 1),
    X2 = () => {
        const e = new Date;
        return e.setHours(0, 0, 0, 0), e
    };

function XH(e) {
    const t = e[0].getTime();
    return (e[1].getTime() - t) / (1e3 * 60 * 60 * 24) + 1
}
const JH = wt({}, bp, {
        modelValue: si(),
        filter: Function,
        formatter: {
            type: Function,
            default: (e, t) => t
        }
    }),
    qH = Object.keys(bp);

function ZH(e, t) {
    if (e < 0) return [];
    const n = Array(e);
    let r = -1;
    for (; ++r < e;) n[r] = t(r);
    return n
}
const rw = (e, t) => 32 - new Date(e, t - 1, 32).getDate(),
    gd = (e, t, n, r, A, i) => {
        const s = ZH(t - e + 1, a => {
            const o = Ls(e + a);
            return r(n, {
                text: o,
                value: o
            })
        });
        return A ? A(n, s, i) : s
    },
    eM = (e, t) => e.map((n, r) => {
        const A = t[r];
        if (A.length) {
            const i = +A[0].value,
                s = +A[A.length - 1].value;
            return Ls(rr(+n, i, s))
        }
        return n
    }),
    [tM] = st("calendar-day");
var nM = tt({
    name: tM,
    props: {
        item: $n(Object),
        color: String,
        index: Number,
        offset: mp(0),
        rowHeight: String
    },
    emits: ["click", "clickDisabledDate"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = Oe(() => {
                var o;
                const {
                    item: l,
                    index: u,
                    color: f,
                    offset: d,
                    rowHeight: p
                } = e, m = {
                    height: p
                };
                if (l.type === "placeholder") return m.width = "100%", m;
                if (u === 0 && (m.marginLeft = `${100*d/7}%`), f) switch (l.type) {
                    case "end":
                    case "start":
                    case "start-end":
                    case "multiple-middle":
                    case "multiple-selected":
                        m.background = f;
                        break;
                    case "middle":
                        m.color = f;
                        break
                }
                return d + (((o = l.date) == null ? void 0 : o.getDate()) || 1) > 28 && (m.marginBottom = 0), m
            }),
            A = () => {
                e.item.type !== "disabled" ? t("click", e.item) : t("clickDisabledDate", e.item)
            },
            i = () => {
                const {
                    topInfo: o
                } = e.item;
                if (o || n["top-info"]) return Z("div", {
                    class: yn("top-info")
                }, [n["top-info"] ? n["top-info"](e.item) : o])
            },
            s = () => {
                const {
                    bottomInfo: o
                } = e.item;
                if (o || n["bottom-info"]) return Z("div", {
                    class: yn("bottom-info")
                }, [n["bottom-info"] ? n["bottom-info"](e.item) : o])
            },
            a = () => {
                const {
                    item: o,
                    color: l,
                    rowHeight: u
                } = e, {
                    type: f,
                    text: d
                } = o, p = [i(), d, s()];
                return f === "selected" ? Z("div", {
                    class: yn("selected-day"),
                    style: {
                        width: u,
                        height: u,
                        background: l
                    }
                }, [p]) : p
            };
        return () => {
            const {
                type: o,
                className: l
            } = e.item;
            return o === "placeholder" ? Z("div", {
                class: yn("day"),
                style: r.value
            }, null) : Z("div", {
                role: "gridcell",
                style: r.value,
                class: [yn("day", o), l],
                tabindex: o === "disabled" ? void 0 : -1,
                onClick: A
            }, [a()])
        }
    }
});
const [rM] = st("calendar-month"), AM = {
    date: $n(Date),
    type: String,
    color: String,
    minDate: $n(Date),
    maxDate: $n(Date),
    showMark: Boolean,
    rowHeight: nt,
    formatter: Function,
    lazyRender: Boolean,
    currentDate: [Date, Array],
    allowSameDay: Boolean,
    showSubtitle: Boolean,
    showMonthTitle: Boolean,
    firstDayOfWeek: Number
};
var iM = tt({
    name: rM,
    props: AM,
    emits: ["click", "clickDisabledDate"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const [r, A] = P3(), i = Ue(), s = Ue(), a = S9(s), o = Oe(() => YH(e.date)), l = Oe(() => It(e.rowHeight)), u = Oe(() => {
            const U = e.date.getDay();
            return e.firstDayOfWeek ? (U + 7 - e.firstDayOfWeek) % 7 : U
        }), f = Oe(() => rw(e.date.getFullYear(), e.date.getMonth() + 1)), d = Oe(() => r.value || !e.lazyRender), p = () => o.value, m = U => {
            const Q = O => e.currentDate.some(N => Fr(N, O) === 0);
            if (Q(U)) {
                const O = Y2(U),
                    N = nw(U),
                    J = Q(O),
                    j = Q(N);
                return J && j ? "multiple-middle" : J ? "end" : j ? "start" : "multiple-selected"
            }
            return ""
        }, g = U => {
            const [Q, O] = e.currentDate;
            if (!Q) return "";
            const N = Fr(U, Q);
            if (!O) return N === 0 ? "start" : "";
            const J = Fr(U, O);
            return e.allowSameDay && N === 0 && J === 0 ? "start-end" : N === 0 ? "start" : J === 0 ? "end" : N > 0 && J < 0 ? "middle" : ""
        }, y = U => {
            const {
                type: Q,
                minDate: O,
                maxDate: N,
                currentDate: J
            } = e;
            if (Fr(U, O) < 0 || Fr(U, N) > 0) return "disabled";
            if (J === null) return "";
            if (Array.isArray(J)) {
                if (Q === "multiple") return m(U);
                if (Q === "range") return g(U)
            } else if (Q === "single") return Fr(U, J) === 0 ? "selected" : "";
            return ""
        }, w = U => {
            if (e.type === "range") {
                if (U === "start" || U === "end") return JA(U);
                if (U === "start-end") return `${JA("start")}/${JA("end")}`
            }
        }, B = () => {
            if (e.showMonthTitle) return Z("div", {
                class: yn("month-title")
            }, [n["month-title"] ? n["month-title"]({
                date: e.date,
                text: o.value
            }) : o.value])
        }, x = () => {
            if (e.showMark && d.value) return Z("div", {
                class: yn("month-mark")
            }, [e.date.getMonth() + 1])
        }, C = Oe(() => {
            const U = Math.ceil((f.value + u.value) / 7);
            return Array(U).fill({
                type: "placeholder"
            })
        }), b = Oe(() => {
            const U = [],
                Q = e.date.getFullYear(),
                O = e.date.getMonth();
            for (let N = 1; N <= f.value; N++) {
                const J = new Date(Q, O, N),
                    j = y(J);
                let V = {
                    date: J,
                    type: j,
                    text: N,
                    bottomInfo: w(j)
                };
                e.formatter && (V = e.formatter(V)), U.push(V)
            }
            return U
        }), F = Oe(() => b.value.filter(U => U.type === "disabled")), T = (U, Q) => {
            if (i.value) {
                const O = Dn(i.value),
                    N = C.value.length,
                    j = (Math.ceil((Q.getDate() + u.value) / 7) - 1) * O.height / N;
                uc(U, O.top + j + U.scrollTop - Dn(U).top)
            }
        }, I = (U, Q) => Z(nM, {
            item: U,
            index: Q,
            color: e.color,
            offset: u.value,
            rowHeight: l.value,
            onClick: O => t("click", O),
            onClickDisabledDate: O => t("clickDisabledDate", O)
        }, Zt(n, ["top-info", "bottom-info"])), D = () => Z("div", {
            ref: i,
            role: "grid",
            class: yn("days")
        }, [x(), (d.value ? b : C).value.map(I)]);
        return an({
            getTitle: p,
            getHeight: () => a.value,
            setVisible: A,
            scrollToDate: T,
            disabledDays: F
        }), () => Z("div", {
            class: yn("month"),
            ref: s
        }, [B(), D()])
    }
});
const [sM] = st("calendar-header");
var aM = tt({
    name: sM,
    props: {
        date: Date,
        title: String,
        subtitle: String,
        showTitle: Boolean,
        showSubtitle: Boolean,
        firstDayOfWeek: Number
    },
    emits: ["clickSubtitle"],
    setup(e, {
        slots: t,
        emit: n
    }) {
        const r = () => {
                if (e.showTitle) {
                    const a = e.title || JA("title"),
                        o = t.title ? t.title() : a;
                    return Z("div", {
                        class: yn("header-title")
                    }, [o])
                }
            },
            A = a => n("clickSubtitle", a),
            i = () => {
                if (e.showSubtitle) {
                    const a = t.subtitle ? t.subtitle({
                        date: e.date,
                        text: e.subtitle
                    }) : e.subtitle;
                    return Z("div", {
                        class: yn("header-subtitle"),
                        onClick: A
                    }, [a])
                }
            },
            s = () => {
                const {
                    firstDayOfWeek: a
                } = e, o = JA("weekdays"), l = [...o.slice(a, 7), ...o.slice(0, a)];
                return Z("div", {
                    class: yn("weekdays")
                }, [l.map(u => Z("span", {
                    class: yn("weekday")
                }, [u]))])
            };
        return () => Z("div", {
            class: yn("header")
        }, [r(), i(), s()])
    }
});
const oM = {
    show: Boolean,
    type: ft("single"),
    title: String,
    color: String,
    round: et,
    readonly: Boolean,
    poppable: et,
    maxRange: xt(null),
    position: ft("bottom"),
    teleport: [String, Object],
    showMark: et,
    showTitle: et,
    formatter: Function,
    rowHeight: nt,
    confirmText: String,
    rangePrompt: String,
    lazyRender: et,
    showConfirm: et,
    defaultDate: [Date, Array],
    allowSameDay: Boolean,
    showSubtitle: et,
    closeOnPopstate: et,
    showRangePrompt: et,
    confirmDisabledText: String,
    closeOnClickOverlay: et,
    safeAreaInsetTop: Boolean,
    safeAreaInsetBottom: et,
    minDate: {
        type: Date,
        validator: Yl,
        default: X2
    },
    maxDate: {
        type: Date,
        validator: Yl,
        default: () => {
            const e = X2();
            return new Date(e.getFullYear(), e.getMonth() + 6, e.getDate())
        }
    },
    firstDayOfWeek: {
        type: nt,
        default: 0,
        validator: e => e >= 0 && e <= 6
    }
};
var lM = tt({
    name: jH,
    props: oM,
    emits: ["select", "confirm", "unselect", "monthShow", "overRange", "update:show", "clickSubtitle", "clickDisabledDate"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = (j, V = e.minDate, ae = e.maxDate) => Fr(j, V) === -1 ? V : Fr(j, ae) === 1 ? ae : j,
            A = (j = e.defaultDate) => {
                const {
                    type: V,
                    minDate: ae,
                    maxDate: Y,
                    allowSameDay: ue
                } = e;
                if (j === null) return j;
                const ye = X2();
                if (V === "range") {
                    Array.isArray(j) || (j = []);
                    const ee = r(j[0] || ye, ae, ue ? Y : Y2(Y)),
                        ce = r(j[1] || ye, ue ? ae : nw(ae));
                    return [ee, ce]
                }
                return V === "multiple" ? Array.isArray(j) ? j.map(ee => r(ee)) : [r(ye)] : ((!j || Array.isArray(j)) && (j = ye), r(j))
            };
        let i;
        const s = Ue(),
            a = Ue({
                textFn: () => "",
                date: void 0
            }),
            o = Ue(A()),
            [l, u] = R9(),
            f = Oe(() => e.firstDayOfWeek ? +e.firstDayOfWeek % 7 : 0),
            d = Oe(() => {
                const j = [],
                    V = new Date(e.minDate);
                V.setDate(1);
                do j.push(new Date(V)), V.setMonth(V.getMonth() + 1); while (j2(V, e.maxDate) !== 1);
                return j
            }),
            p = Oe(() => {
                if (o.value) {
                    if (e.type === "range") return !o.value[0] || !o.value[1];
                    if (e.type === "multiple") return !o.value.length
                }
                return !o.value
            }),
            m = () => o.value,
            g = () => {
                const j = y0(s.value),
                    V = j + i,
                    ae = d.value.map((ce, ve) => l.value[ve].getHeight()),
                    Y = ae.reduce((ce, ve) => ce + ve, 0);
                if (V > Y && j > 0) return;
                let ue = 0,
                    ye;
                const ee = [-1, -1];
                for (let ce = 0; ce < d.value.length; ce++) {
                    const ve = l.value[ce];
                    ue <= V && ue + ae[ce] >= j && (ee[1] = ce, ye || (ye = ve, ee[0] = ce), l.value[ce].showed || (l.value[ce].showed = !0, t("monthShow", {
                        date: ve.date,
                        title: ve.getTitle()
                    }))), ue += ae[ce]
                }
                d.value.forEach((ce, ve) => {
                    const xe = ve >= ee[0] - 1 && ve <= ee[1] + 1;
                    l.value[ve].setVisible(xe)
                }), ye && (a.value = {
                    textFn: ye.getTitle,
                    date: ye.date
                })
            },
            y = j => {
                Ar(() => {
                    d.value.some((V, ae) => j2(V, j) === 0 ? (s.value && l.value[ae].scrollToDate(s.value, j), !0) : !1), g()
                })
            },
            w = () => {
                if (!(e.poppable && !e.show))
                    if (o.value) {
                        const j = e.type === "single" ? o.value : o.value[0];
                        Yl(j) && y(j)
                    } else Ar(g)
            },
            B = () => {
                e.poppable && !e.show || (Ar(() => {
                    i = Math.floor(Dn(s).height)
                }), w())
            },
            x = (j = A()) => {
                o.value = j, w()
            },
            C = j => {
                const {
                    maxRange: V,
                    rangePrompt: ae,
                    showRangePrompt: Y
                } = e;
                return V && XH(j) > +V ? (Y && W2(ae || JA("rangePrompt", V)), t("overRange"), !1) : !0
            },
            b = () => {
                var j;
                return t("confirm", (j = o.value) != null ? j : av(o.value))
            },
            F = (j, V) => {
                const ae = Y => {
                    o.value = Y, t("select", av(Y))
                };
                if (V && e.type === "range" && !C(j)) {
                    ae([j[0], Up(j[0], +e.maxRange - 1)]);
                    return
                }
                ae(j), V && !e.showConfirm && b()
            },
            T = (j, V, ae) => {
                var Y;
                return (Y = j.find(ue => Fr(V, ue.date) === -1 && Fr(ue.date, ae) === -1)) == null ? void 0 : Y.date
            },
            I = Oe(() => l.value.reduce((j, V) => {
                var ae, Y;
                return j.push(...(Y = (ae = V.disabledDays) == null ? void 0 : ae.value) != null ? Y : []), j
            }, [])),
            D = j => {
                if (e.readonly || !j.date) return;
                const {
                    date: V
                } = j, {
                    type: ae
                } = e;
                if (ae === "range") {
                    if (!o.value) {
                        F([V]);
                        return
                    }
                    const [Y, ue] = o.value;
                    if (Y && !ue) {
                        const ye = Fr(V, Y);
                        if (ye === 1) {
                            const ee = T(I.value, Y, V);
                            if (ee) {
                                const ce = Y2(ee);
                                Fr(Y, ce) === -1 ? F([Y, ce]) : F([V])
                            } else F([Y, V], !0)
                        } else ye === -1 ? F([V]) : e.allowSameDay && F([V, V], !0)
                    } else F([V])
                } else if (ae === "multiple") {
                    if (!o.value) {
                        F([V]);
                        return
                    }
                    const Y = o.value,
                        ue = Y.findIndex(ye => Fr(ye, V) === 0);
                    if (ue !== -1) {
                        const [ye] = Y.splice(ue, 1);
                        t("unselect", fc(ye))
                    } else e.maxRange && Y.length >= +e.maxRange ? W2(e.rangePrompt || JA("rangePrompt", e.maxRange)) : F([...Y, V])
                } else F(V, !0)
            },
            U = j => t("update:show", j),
            Q = (j, V) => {
                const ae = V !== 0 || !e.showSubtitle;
                return Z(iM, $t({
                    ref: u(V),
                    date: j,
                    currentDate: o.value,
                    showMonthTitle: ae,
                    firstDayOfWeek: f.value
                }, Zt(e, ["type", "color", "minDate", "maxDate", "showMark", "formatter", "rowHeight", "lazyRender", "showSubtitle", "allowSameDay"]), {
                    onClick: D,
                    onClickDisabledDate: Y => t("clickDisabledDate", Y)
                }), Zt(n, ["top-info", "bottom-info", "month-title"]))
            },
            O = () => {
                if (n.footer) return n.footer();
                if (e.showConfirm) {
                    const j = n["confirm-text"],
                        V = p.value,
                        ae = V ? e.confirmDisabledText : e.confirmText;
                    return Z(cc, {
                        round: !0,
                        block: !0,
                        type: "primary",
                        color: e.color,
                        class: yn("confirm"),
                        disabled: V,
                        nativeType: "button",
                        onClick: b
                    }, {
                        default: () => [j ? j({
                            disabled: V
                        }) : ae || JA("confirm")]
                    })
                }
            },
            N = () => Z("div", {
                class: [yn("footer"), {
                    "van-safe-area-bottom": e.safeAreaInsetBottom
                }]
            }, [O()]),
            J = () => {
                const j = a.value.textFn();
                return Z("div", {
                    class: yn()
                }, [Z(aM, {
                    date: a.value.date,
                    title: e.title,
                    subtitle: j,
                    showTitle: e.showTitle,
                    showSubtitle: e.showSubtitle,
                    firstDayOfWeek: f.value,
                    onClickSubtitle: V => t("clickSubtitle", V)
                }, Zt(n, ["title", "subtitle"])), Z("div", {
                    ref: s,
                    class: yn("body"),
                    onScroll: g
                }, [d.value.map(Q)]), N()])
            };
        return je(() => e.show, B), je(() => [e.type, e.minDate, e.maxDate], () => x(A(o.value))), je(() => e.defaultDate, (j = null) => {
            o.value = j, w()
        }), an({
            reset: x,
            scrollToDate: y,
            getSelectedDate: m
        }), Eo(B), () => e.poppable ? Z(Uo, {
            show: e.show,
            class: yn("popup"),
            round: e.round,
            position: e.position,
            closeable: e.showTitle || e.showSubtitle,
            teleport: e.teleport,
            closeOnPopstate: e.closeOnPopstate,
            safeAreaInsetTop: e.safeAreaInsetTop,
            closeOnClickOverlay: e.closeOnClickOverlay,
            "onUpdate:show": U
        }, {
            default: J
        }) : J()
    }
});
const one = dt(lM),
    [uM, Fa] = st("image"),
    cM = {
        src: String,
        alt: String,
        fit: String,
        position: String,
        round: Boolean,
        block: Boolean,
        width: nt,
        height: nt,
        radius: nt,
        lazyLoad: Boolean,
        iconSize: nt,
        showError: et,
        errorIcon: ft("photo-fail"),
        iconPrefix: String,
        showLoading: et,
        loadingIcon: ft("photo"),
        crossorigin: String,
        referrerpolicy: String
    };
var fM = tt({
    name: uM,
    props: cM,
    emits: ["load", "error"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = Ue(!1),
            A = Ue(!0),
            i = Ue(),
            {
                $Lazyload: s
            } = zt().proxy,
            a = Oe(() => {
                const y = {
                    width: It(e.width),
                    height: It(e.height)
                };
                return Jt(e.radius) && (y.overflow = "hidden", y.borderRadius = It(e.radius)), y
            });
        je(() => e.src, () => {
            r.value = !1, A.value = !0
        });
        const o = y => {
                A.value && (A.value = !1, t("load", y))
            },
            l = () => {
                const y = new Event("load");
                Object.defineProperty(y, "target", {
                    value: i.value,
                    enumerable: !0
                }), o(y)
            },
            u = y => {
                r.value = !0, A.value = !1, t("error", y)
            },
            f = (y, w, B) => B ? B() : Z(En, {
                name: y,
                size: e.iconSize,
                class: w,
                classPrefix: e.iconPrefix
            }, null),
            d = () => {
                if (A.value && e.showLoading) return Z("div", {
                    class: Fa("loading")
                }, [f(e.loadingIcon, Fa("loading-icon"), n.loading)]);
                if (r.value && e.showError) return Z("div", {
                    class: Fa("error")
                }, [f(e.errorIcon, Fa("error-icon"), n.error)])
            },
            p = () => {
                if (r.value || !e.src) return;
                const y = {
                    alt: e.alt,
                    class: Fa("img"),
                    style: {
                        objectFit: e.fit,
                        objectPosition: e.position
                    },
                    crossorigin: e.crossorigin,
                    referrerpolicy: e.referrerpolicy
                };
                return e.lazyLoad ? ns(Z("img", $t({
                    ref: i
                }, y), null), [
                    [S8("lazy"), e.src]
                ]) : Z("img", $t({
                    ref: i,
                    src: e.src,
                    onLoad: o,
                    onError: u
                }, y), null)
            },
            m = ({
                el: y
            }) => {
                const w = () => {
                    y === i.value && A.value && l()
                };
                i.value ? w() : yt(w)
            },
            g = ({
                el: y
            }) => {
                y === i.value && !r.value && u()
            };
        return s && ii && (s.$on("loaded", m), s.$on("error", g), Tr(() => {
            s.$off("loaded", m), s.$off("error", g)
        })), qt(() => {
            yt(() => {
                var y;
                (y = i.value) != null && y.complete && !e.lazyLoad && l()
            })
        }), () => {
            var y;
            return Z("div", {
                class: Fa({
                    round: e.round,
                    block: e.block
                }),
                style: a.value
            }, [p(), d(), (y = n.default) == null ? void 0 : y.call(n)])
        }
    }
});
const Aw = dt(fM),
    [dM, lne] = st("checkbox-group"),
    hM = Symbol(dM),
    [pM, gM] = st("checkbox"),
    vM = wt({}, Qp, {
        shape: String,
        bindGroup: et,
        indeterminate: {
            type: Boolean,
            default: null
        }
    });
var mM = tt({
    name: pM,
    props: vM,
    emits: ["change", "update:modelValue"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const {
            parent: r
        } = Ir(hM), A = a => {
            const {
                name: o
            } = e, {
                max: l,
                modelValue: u
            } = r.props, f = u.slice();
            if (a) !(l && f.length >= +l) && !f.includes(o) && (f.push(o), e.bindGroup && r.updateValue(f));
            else {
                const d = f.indexOf(o);
                d !== -1 && (f.splice(d, 1), e.bindGroup && r.updateValue(f))
            }
        }, i = Oe(() => r && e.bindGroup ? r.props.modelValue.indexOf(e.name) !== -1 : !!e.modelValue), s = (a = !i.value) => {
            r && e.bindGroup ? A(a) : t("update:modelValue", a), e.indeterminate !== null && t("change", a)
        };
        return je(() => e.modelValue, a => {
            e.indeterminate === null && t("change", a)
        }), an({
            toggle: s,
            props: e,
            checked: i
        }), bo(() => e.modelValue), () => Z(tw, $t({
            bem: gM,
            role: "checkbox",
            parent: r,
            checked: i.value,
            onToggle: s
        }, e), Zt(n, ["default", "icon"]))
    }
});
const une = dt(mM),
    [BM, Au] = st("circle");
let wM = 0;
const ov = e => Math.min(Math.max(+e, 0), 100);

function yM(e, t) {
    const n = e ? 1 : 0;
    return `M ${t/2} ${t/2} m 0, -500 a 500, 500 0 1, ${n} 0, 1000 a 500, 500 0 1, ${n} 0, -1000`
}
const CM = {
    text: String,
    size: nt,
    fill: ft("none"),
    rate: xt(100),
    speed: xt(0),
    color: [String, Object],
    clockwise: et,
    layerColor: String,
    currentRate: mp(0),
    strokeWidth: xt(40),
    strokeLinecap: String,
    startPosition: ft("top")
};
var xM = tt({
    name: BM,
    props: CM,
    emits: ["update:currentRate"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = `van-circle-${wM++}`,
            A = Oe(() => +e.strokeWidth + 1e3),
            i = Oe(() => yM(e.clockwise, A.value)),
            s = Oe(() => {
                const d = {
                    top: 0,
                    right: 90,
                    bottom: 180,
                    left: 270
                }[e.startPosition];
                if (d) return {
                    transform: `rotate(${d}deg)`
                }
            });
        je(() => e.rate, f => {
            let d;
            const p = Date.now(),
                m = e.currentRate,
                g = ov(f),
                y = Math.abs((m - g) * 1e3 / +e.speed),
                w = () => {
                    const B = Date.now(),
                        C = Math.min((B - p) / y, 1) * (g - m) + m;
                    t("update:currentRate", ov(parseFloat(C.toFixed(1)))), (g > m ? C < g : C > g) && (d = Ar(w))
                };
            e.speed ? (d && B0(d), d = Ar(w)) : t("update:currentRate", g)
        }, {
            immediate: !0
        });
        const a = () => {
                const {
                    strokeWidth: d,
                    currentRate: p,
                    strokeLinecap: m
                } = e, g = 3140 * p / 100, y = ta(e.color) ? `url(#${r})` : e.color, w = {
                    stroke: y,
                    strokeWidth: `${+d+1}px`,
                    strokeLinecap: m,
                    strokeDasharray: `${g}px 3140px`
                };
                return Z("path", {
                    d: i.value,
                    style: w,
                    class: Au("hover"),
                    stroke: y
                }, null)
            },
            o = () => {
                const f = {
                    fill: e.fill,
                    stroke: e.layerColor,
                    strokeWidth: `${e.strokeWidth}px`
                };
                return Z("path", {
                    class: Au("layer"),
                    style: f,
                    d: i.value
                }, null)
            },
            l = () => {
                const {
                    color: f
                } = e;
                if (!ta(f)) return;
                const d = Object.keys(f).sort((p, m) => parseFloat(p) - parseFloat(m)).map((p, m) => Z("stop", {
                    key: m,
                    offset: p,
                    "stop-color": f[p]
                }, null));
                return Z("defs", null, [Z("linearGradient", {
                    id: r,
                    x1: "100%",
                    y1: "0%",
                    x2: "0%",
                    y2: "0%"
                }, [d])])
            },
            u = () => {
                if (n.default) return n.default();
                if (e.text) return Z("div", {
                    class: Au("text")
                }, [e.text])
            };
        return () => Z("div", {
            class: Au(),
            style: _o(e.size)
        }, [Z("svg", {
            viewBox: `0 0 ${A.value} ${A.value}`,
            style: s.value
        }, [l(), o(), a()]), u()])
    }
});
const cne = dt(xM),
    [iw, EM] = st("row"),
    sw = Symbol(iw),
    bM = {
        tag: ft("div"),
        wrap: et,
        align: String,
        gutter: {
            type: [String, Number, Array],
            default: 0
        },
        justify: String
    };
var FM = tt({
    name: iw,
    props: bM,
    setup(e, {
        slots: t
    }) {
        const {
            children: n,
            linkChildren: r
        } = FA(sw), A = Oe(() => {
            const a = [
                []
            ];
            let o = 0;
            return n.forEach((l, u) => {
                o += Number(l.span), o > 24 ? (a.push([u]), o -= 24) : a[a.length - 1].push(u)
            }), a
        }), i = Oe(() => {
            let a = 0;
            Array.isArray(e.gutter) ? a = Number(e.gutter[0]) || 0 : a = Number(e.gutter);
            const o = [];
            return a && A.value.forEach(l => {
                const u = a * (l.length - 1) / l.length;
                l.forEach((f, d) => {
                    if (d === 0) o.push({
                        right: u
                    });
                    else {
                        const p = a - o[f - 1].right,
                            m = u - p;
                        o.push({
                            left: p,
                            right: m
                        })
                    }
                })
            }), o
        }), s = Oe(() => {
            const {
                gutter: a
            } = e, o = [];
            if (Array.isArray(a) && a.length > 1) {
                const l = Number(a[1]) || 0;
                if (l <= 0) return o;
                A.value.forEach((u, f) => {
                    f !== A.value.length - 1 && u.forEach(() => {
                        o.push({
                            bottom: l
                        })
                    })
                })
            }
            return o
        });
        return r({
            spaces: i,
            verticalSpaces: s
        }), () => {
            const {
                tag: a,
                wrap: o,
                align: l,
                justify: u
            } = e;
            return Z(a, {
                class: EM({
                    [`align-${l}`]: l,
                    [`justify-${u}`]: u,
                    nowrap: !o
                })
            }, {
                default: () => {
                    var f;
                    return [(f = t.default) == null ? void 0 : f.call(t)]
                }
            })
        }
    }
});
const [_M, SM] = st("col"), QM = {
    tag: ft("div"),
    span: xt(0),
    offset: nt
};
var UM = tt({
    name: _M,
    props: QM,
    setup(e, {
        slots: t
    }) {
        const {
            parent: n,
            index: r
        } = Ir(sw), A = Oe(() => {
            if (!n) return;
            const {
                spaces: i,
                verticalSpaces: s
            } = n;
            let a = {};
            if (i && i.value && i.value[r.value]) {
                const {
                    left: l,
                    right: u
                } = i.value[r.value];
                a = {
                    paddingLeft: l ? `${l}px` : null,
                    paddingRight: u ? `${u}px` : null
                }
            }
            const {
                bottom: o
            } = s.value[r.value] || {};
            return wt(a, {
                marginBottom: o ? `${o}px` : null
            })
        });
        return () => {
            const {
                tag: i,
                span: s,
                offset: a
            } = e;
            return Z(i, {
                style: A.value,
                class: SM({
                    [s]: s,
                    [`offset-${a}`]: a
                })
            }, {
                default: () => {
                    var o;
                    return [(o = t.default) == null ? void 0 : o.call(t)]
                }
            })
        }
    }
});
const fne = dt(UM),
    [aw, TM] = st("collapse"),
    ow = Symbol(aw),
    IM = {
        border: et,
        accordion: Boolean,
        modelValue: {
            type: [String, Number, Array],
            default: ""
        }
    };
var DM = tt({
    name: aw,
    props: IM,
    emits: ["change", "update:modelValue"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const {
            linkChildren: r,
            children: A
        } = FA(ow), i = l => {
            t("change", l), t("update:modelValue", l)
        }, s = (l, u) => {
            const {
                accordion: f,
                modelValue: d
            } = e;
            i(f ? l === d ? "" : l : u ? d.concat(l) : d.filter(p => p !== l))
        }, a = (l = {}) => {
            if (e.accordion) return;
            typeof l == "boolean" && (l = {
                expanded: l
            });
            const {
                expanded: u,
                skipDisabled: f
            } = l, p = A.filter(m => m.disabled && f ? m.expanded.value : u ? ? !m.expanded.value).map(m => m.itemName.value);
            i(p)
        }, o = l => {
            const {
                accordion: u,
                modelValue: f
            } = e;
            return u ? f === l : f.includes(l)
        };
        return an({
            toggleAll: a
        }), r({
            toggle: s,
            isExpanded: o
        }), () => {
            var l;
            return Z("div", {
                class: [TM(), {
                    [F9]: e.border
                }]
            }, [(l = n.default) == null ? void 0 : l.call(n)])
        }
    }
});
const dne = dt(DM),
    [PM, iu] = st("collapse-item"),
    OM = ["icon", "title", "value", "label", "right-icon"],
    LM = wt({}, yf, {
        name: nt,
        isLink: et,
        disabled: Boolean,
        readonly: Boolean,
        lazyRender: et
    });
var kM = tt({
    name: PM,
    props: LM,
    setup(e, {
        slots: t
    }) {
        const n = Ue(),
            r = Ue(),
            {
                parent: A,
                index: i
            } = Ir(ow);
        if (!A) return;
        const s = Oe(() => {
                var g;
                return (g = e.name) != null ? g : i.value
            }),
            a = Oe(() => A.isExpanded(s.value)),
            o = Ue(a.value),
            l = xp(() => o.value || !e.lazyRender),
            u = () => {
                a.value ? n.value && (n.value.style.height = "") : o.value = !1
            };
        je(a, (g, y) => {
            if (y === null) return;
            g && (o.value = !0), (g ? yt : Ar)(() => {
                if (!r.value || !n.value) return;
                const {
                    offsetHeight: B
                } = r.value;
                if (B) {
                    const x = `${B}px`;
                    n.value.style.height = g ? "0" : x, Ms(() => {
                        n.value && (n.value.style.height = g ? x : "0")
                    })
                } else u()
            })
        });
        const f = (g = !a.value) => {
                A.toggle(s.value, g)
            },
            d = () => {
                !e.disabled && !e.readonly && f()
            },
            p = () => {
                const {
                    border: g,
                    disabled: y,
                    readonly: w
                } = e, B = Zt(e, Object.keys(yf));
                return w && (B.isLink = !1), (y || w) && (B.clickable = !1), Z(Y9, $t({
                    role: "button",
                    class: iu("title", {
                        disabled: y,
                        expanded: a.value,
                        borderless: !g
                    }),
                    "aria-expanded": String(a.value),
                    onClick: d
                }, B), Zt(t, OM))
            },
            m = l(() => {
                var g;
                return ns(Z("div", {
                    ref: n,
                    class: iu("wrapper"),
                    onTransitionend: u
                }, [Z("div", {
                    ref: r,
                    class: iu("content")
                }, [(g = t.default) == null ? void 0 : g.call(t)])]), [
                    [as, o.value]
                ])
            });
        return an({
            toggle: f,
            expanded: a,
            itemName: s
        }), () => Z("div", {
            class: [iu({
                border: i.value && e.border
            })]
        }, [p(), m()])
    }
});
const hne = dt(kM);

function HM(e, t) {
    const {
        days: n
    } = t;
    let {
        hours: r,
        minutes: A,
        seconds: i,
        milliseconds: s
    } = t;
    if (e.includes("DD") ? e = e.replace("DD", Ls(n)) : r += n * 24, e.includes("HH") ? e = e.replace("HH", Ls(r)) : A += r * 60, e.includes("mm") ? e = e.replace("mm", Ls(A)) : i += A * 60, e.includes("ss") ? e = e.replace("ss", Ls(i)) : s += i * 1e3, e.includes("S")) {
        const a = Ls(s, 3);
        e.includes("SSS") ? e = e.replace("SSS", a) : e.includes("SS") ? e = e.replace("SS", a.slice(0, 2)) : e = e.replace("S", a.charAt(0))
    }
    return e
}
const [MM, RM] = st("count-down"), NM = {
    time: xt(0),
    format: ft("HH:mm:ss"),
    autoStart: et,
    millisecond: Boolean
};
var $M = tt({
    name: MM,
    props: NM,
    emits: ["change", "finish"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const {
            start: r,
            pause: A,
            reset: i,
            current: s
        } = k3({
            time: +e.time,
            millisecond: e.millisecond,
            onChange: l => t("change", l),
            onFinish: () => t("finish")
        }), a = Oe(() => HM(e.format, s.value)), o = () => {
            i(+e.time), e.autoStart && r()
        };
        return je(() => e.time, o, {
            immediate: !0
        }), an({
            start: r,
            pause: A,
            reset: o
        }), () => Z("div", {
            role: "timer",
            class: RM()
        }, [n.default ? n.default(s.value) : a.value])
    }
});
const pne = dt($M),
    lv = new Date().getFullYear(),
    [KM] = st("date-picker"),
    VM = wt({}, JH, {
        columnsType: {
            type: Array,
            default: () => ["year", "month", "day"]
        },
        minDate: {
            type: Date,
            default: () => new Date(lv - 10, 0, 1),
            validator: Yl
        },
        maxDate: {
            type: Date,
            default: () => new Date(lv + 10, 11, 31),
            validator: Yl
        }
    });
var GM = tt({
    name: KM,
    props: VM,
    emits: ["confirm", "cancel", "change", "update:modelValue"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = Ue(e.modelValue),
            A = Ue(!1),
            i = () => {
                const w = e.minDate.getFullYear(),
                    B = e.maxDate.getFullYear();
                return gd(w, B, "year", e.formatter, e.filter)
            },
            s = w => w === e.minDate.getFullYear(),
            a = w => w === e.maxDate.getFullYear(),
            o = w => w === e.minDate.getMonth() + 1,
            l = w => w === e.maxDate.getMonth() + 1,
            u = w => {
                const {
                    minDate: B,
                    columnsType: x
                } = e, C = x.indexOf(w), b = A.value ? e.modelValue[C] : r.value[C];
                if (b) return +b;
                switch (w) {
                    case "year":
                        return B.getFullYear();
                    case "month":
                        return B.getMonth() + 1;
                    case "day":
                        return B.getDate()
                }
            },
            f = () => {
                const w = u("year"),
                    B = s(w) ? e.minDate.getMonth() + 1 : 1,
                    x = a(w) ? e.maxDate.getMonth() + 1 : 12;
                return gd(B, x, "month", e.formatter, e.filter)
            },
            d = () => {
                const w = u("year"),
                    B = u("month"),
                    x = s(w) && o(B) ? e.minDate.getDate() : 1,
                    C = a(w) && l(B) ? e.maxDate.getDate() : rw(w, B);
                return gd(x, C, "day", e.formatter, e.filter)
            },
            p = Oe(() => e.columnsType.map(w => {
                switch (w) {
                    case "year":
                        return i();
                    case "month":
                        return f();
                    case "day":
                        return d();
                    default:
                        return []
                }
            }));
        je(r, w => {
            qi(w, e.modelValue) || t("update:modelValue", w)
        }), je(() => e.modelValue, (w, B) => {
            A.value = qi(B, r.value), w = eM(w, p.value), qi(w, r.value) || (r.value = w), A.value = !1
        }, {
            immediate: !0
        });
        const m = (...w) => t("change", ...w),
            g = (...w) => t("cancel", ...w),
            y = (...w) => t("confirm", ...w);
        return () => Z(gH, $t({
            modelValue: r.value,
            "onUpdate:modelValue": w => r.value = w,
            columns: p.value,
            onChange: m,
            onCancel: g,
            onConfirm: y
        }, Zt(e, qH)), n)
    }
});
const gne = dt(GM),
    [zM, qr, su] = st("dialog"),
    WM = wt({}, Bf, {
        title: String,
        theme: String,
        width: nt,
        message: [String, Function],
        callback: Function,
        allowHtml: Boolean,
        className: xn,
        transition: ft("van-dialog-bounce"),
        messageAlign: String,
        closeOnPopstate: et,
        showCancelButton: Boolean,
        cancelButtonText: String,
        cancelButtonColor: String,
        cancelButtonDisabled: Boolean,
        confirmButtonText: String,
        confirmButtonColor: String,
        confirmButtonDisabled: Boolean,
        showConfirmButton: et,
        closeOnClickOverlay: Boolean
    }),
    jM = [...I9, "transition", "closeOnPopstate"];
var lw = tt({
    name: zM,
    props: WM,
    emits: ["confirm", "cancel", "keydown", "update:show"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = Ue(),
            A = Nt({
                confirm: !1,
                cancel: !1
            }),
            i = w => t("update:show", w),
            s = w => {
                var B;
                i(!1), (B = e.callback) == null || B.call(e, w)
            },
            a = w => () => {
                e.show && (t(w), e.beforeClose ? (A[w] = !0, x0(e.beforeClose, {
                    args: [w],
                    done() {
                        s(w), A[w] = !1
                    },
                    canceled() {
                        A[w] = !1
                    }
                })) : s(w))
            },
            o = a("cancel"),
            l = a("confirm"),
            u = m3(w => {
                var B, x;
                if (w.target !== ((x = (B = r.value) == null ? void 0 : B.popupRef) == null ? void 0 : x.value)) return;
                ({
                    Enter: e.showConfirmButton ? l : K2,
                    Escape: e.showCancelButton ? o : K2
                })[w.key](), t("keydown", w)
            }, ["enter", "esc"]),
            f = () => {
                const w = n.title ? n.title() : e.title;
                if (w) return Z("div", {
                    class: qr("header", {
                        isolated: !e.message && !n.default
                    })
                }, [w])
            },
            d = w => {
                const {
                    message: B,
                    allowHtml: x,
                    messageAlign: C
                } = e, b = qr("message", {
                    "has-title": w,
                    [C]: C
                }), F = no(B) ? B() : B;
                return x && typeof F == "string" ? Z("div", {
                    class: b,
                    innerHTML: F
                }, null) : Z("div", {
                    class: b
                }, [F])
            },
            p = () => {
                if (n.default) return Z("div", {
                    class: qr("content")
                }, [n.default()]);
                const {
                    title: w,
                    message: B,
                    allowHtml: x
                } = e;
                if (B) {
                    const C = !!(w || n.title);
                    return Z("div", {
                        key: x ? 1 : 0,
                        class: qr("content", {
                            isolated: !C
                        })
                    }, [d(C)])
                }
            },
            m = () => Z("div", {
                class: [b9, qr("footer")]
            }, [e.showCancelButton && Z(cc, {
                size: "large",
                text: e.cancelButtonText || su("cancel"),
                class: qr("cancel"),
                style: {
                    color: e.cancelButtonColor
                },
                loading: A.cancel,
                disabled: e.cancelButtonDisabled,
                onClick: o
            }, null), e.showConfirmButton && Z(cc, {
                size: "large",
                text: e.confirmButtonText || su("confirm"),
                class: [qr("confirm"), {
                    [QL]: e.showCancelButton
                }],
                style: {
                    color: e.confirmButtonColor
                },
                loading: A.confirm,
                disabled: e.confirmButtonDisabled,
                onClick: l
            }, null)]),
            g = () => Z(ML, {
                class: qr("footer")
            }, {
                default: () => [e.showCancelButton && Z(Y4, {
                    type: "warning",
                    text: e.cancelButtonText || su("cancel"),
                    class: qr("cancel"),
                    color: e.cancelButtonColor,
                    loading: A.cancel,
                    disabled: e.cancelButtonDisabled,
                    onClick: o
                }, null), e.showConfirmButton && Z(Y4, {
                    type: "danger",
                    text: e.confirmButtonText || su("confirm"),
                    class: qr("confirm"),
                    color: e.confirmButtonColor,
                    loading: A.confirm,
                    disabled: e.confirmButtonDisabled,
                    onClick: l
                }, null)]
            }),
            y = () => n.footer ? n.footer() : e.theme === "round-button" ? g() : m();
        return () => {
            const {
                width: w,
                title: B,
                theme: x,
                message: C,
                className: b
            } = e;
            return Z(Uo, $t({
                ref: r,
                role: "dialog",
                class: [qr([x]), b],
                style: {
                    width: It(w)
                },
                tabindex: 0,
                "aria-labelledby": B || C,
                onKeydown: u,
                "onUpdate:show": i
            }, Zt(e, jM)), {
                default: () => [f(), p(), y()]
            })
        }
    }
});
let J2;
const YM = {
    title: "",
    width: "",
    theme: null,
    message: "",
    overlay: !0,
    callback: null,
    teleport: "body",
    className: "",
    allowHtml: !1,
    lockScroll: !0,
    transition: void 0,
    beforeClose: null,
    overlayClass: "",
    overlayStyle: void 0,
    messageAlign: "",
    cancelButtonText: "",
    cancelButtonColor: null,
    cancelButtonDisabled: !1,
    confirmButtonText: "",
    confirmButtonColor: null,
    confirmButtonDisabled: !1,
    showConfirmButton: !0,
    showCancelButton: !1,
    closeOnPopstate: !0,
    closeOnClickOverlay: !1
};
let XM = wt({}, YM);

function JM() {
    ({
        instance: J2
    } = _p({
        setup() {
            const {
                state: t,
                toggle: n
            } = Fp();
            return () => Z(lw, $t(t, {
                "onUpdate:show": n
            }), null)
        }
    }))
}

function qM(e) {
    return ii ? new Promise((t, n) => {
        J2 || JM(), J2.open(wt({}, XM, e, {
            callback: r => {
                (r === "confirm" ? t : n)(r)
            }
        }))
    }) : Promise.resolve(void 0)
}
const vne = e => qM(wt({
        showCancelButton: !0
    }, e)),
    mne = dt(lw),
    [ZM, eR] = st("divider"),
    tR = {
        dashed: Boolean,
        hairline: et,
        vertical: Boolean,
        contentPosition: ft("center")
    };
var nR = tt({
    name: ZM,
    props: tR,
    setup(e, {
        slots: t
    }) {
        return () => {
            var n;
            return Z("div", {
                role: "separator",
                class: eR({
                    dashed: e.dashed,
                    hairline: e.hairline,
                    vertical: e.vertical,
                    [`content-${e.contentPosition}`]: !!t.default && !e.vertical
                })
            }, [!e.vertical && ((n = t.default) == null ? void 0 : n.call(t))])
        }
    }
});
const Bne = dt(nR),
    [uw, rR] = st("grid"),
    AR = {
        square: Boolean,
        center: et,
        border: et,
        gutter: nt,
        reverse: Boolean,
        iconSize: nt,
        direction: String,
        clickable: Boolean,
        columnNum: xt(4)
    },
    cw = Symbol(uw);
var iR = tt({
    name: uw,
    props: AR,
    setup(e, {
        slots: t
    }) {
        const {
            linkChildren: n
        } = FA(cw);
        return n({
            props: e
        }), () => {
            var r;
            return Z("div", {
                style: {
                    paddingLeft: It(e.gutter)
                },
                class: [rR(), {
                    [b9]: e.border && !e.gutter
                }]
            }, [(r = t.default) == null ? void 0 : r.call(t)])
        }
    }
});
const wne = dt(iR),
    [sR, au] = st("grid-item"),
    aR = wt({}, So, {
        dot: Boolean,
        text: String,
        icon: String,
        badge: nt,
        iconColor: String,
        iconPrefix: String,
        badgeProps: Object
    });
var oR = tt({
    name: sR,
    props: aR,
    setup(e, {
        slots: t
    }) {
        const {
            parent: n,
            index: r
        } = Ir(cw), A = E0();
        if (!n) return;
        const i = Oe(() => {
                const {
                    square: u,
                    gutter: f,
                    columnNum: d
                } = n.props, p = `${100/+d}%`, m = {
                    flexBasis: p
                };
                if (u) m.paddingTop = p;
                else if (f) {
                    const g = It(f);
                    m.paddingRight = g, r.value >= +d && (m.marginTop = g)
                }
                return m
            }),
            s = Oe(() => {
                const {
                    square: u,
                    gutter: f
                } = n.props;
                if (u && f) {
                    const d = It(f);
                    return {
                        right: d,
                        bottom: d,
                        height: "auto"
                    }
                }
            }),
            a = () => {
                if (t.icon) return Z(mf, $t({
                    dot: e.dot,
                    content: e.badge
                }, e.badgeProps), {
                    default: t.icon
                });
                if (e.icon) return Z(En, {
                    dot: e.dot,
                    name: e.icon,
                    size: n.props.iconSize,
                    badge: e.badge,
                    class: au("icon"),
                    color: e.iconColor,
                    badgeProps: e.badgeProps,
                    classPrefix: e.iconPrefix
                }, null)
            },
            o = () => {
                if (t.text) return t.text();
                if (e.text) return Z("span", {
                    class: au("text")
                }, [e.text])
            },
            l = () => t.default ? t.default() : [a(), o()];
        return () => {
            const {
                center: u,
                border: f,
                square: d,
                gutter: p,
                reverse: m,
                direction: g,
                clickable: y
            } = n.props, w = [au("content", [g, {
                center: u,
                square: d,
                reverse: m,
                clickable: y,
                surround: f && p
            }]), {
                [gs]: f
            }];
            return Z("div", {
                class: [au({
                    square: d
                })],
                style: i.value
            }, [Z("div", {
                role: y ? "button" : void 0,
                class: w,
                style: s.value,
                tabindex: y ? 0 : void 0,
                onClick: A
            }, [l()])])
        }
    }
});
const yne = dt(oR),
    uv = e => Math.sqrt((e[0].clientX - e[1].clientX) ** 2 + (e[0].clientY - e[1].clientY) ** 2),
    lR = e => ({
        x: (e[0].clientX + e[1].clientX) / 2,
        y: (e[0].clientY + e[1].clientY) / 2
    }),
    vd = st("image-preview")[1],
    cv = 2.6,
    uR = {
        src: String,
        show: Boolean,
        active: Number,
        minZoom: $n(nt),
        maxZoom: $n(nt),
        rootWidth: $n(Number),
        rootHeight: $n(Number),
        disableZoom: Boolean,
        doubleScale: Boolean,
        closeOnClickImage: Boolean,
        closeOnClickOverlay: Boolean,
        vertical: Boolean
    };
var cR = tt({
    props: uR,
    emits: ["scale", "close", "longPress"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = Nt({
                scale: 1,
                moveX: 0,
                moveY: 0,
                moving: !1,
                zooming: !1,
                initializing: !1,
                imageRatio: 0
            }),
            A = Qo(),
            i = Ue(),
            s = Ue(),
            a = Ue(!1),
            o = Ue(!1);
        let l = 0;
        const u = Oe(() => {
                const {
                    scale: V,
                    moveX: ae,
                    moveY: Y,
                    moving: ue,
                    zooming: ye,
                    initializing: ee
                } = r, ce = {
                    transitionDuration: ye || ue || ee ? "0s" : ".3s"
                };
                return (V !== 1 || o.value) && (ce.transform = `matrix(${V}, 0, 0, ${V}, ${ae}, ${Y})`), ce
            }),
            f = Oe(() => {
                if (r.imageRatio) {
                    const {
                        rootWidth: V,
                        rootHeight: ae
                    } = e, Y = a.value ? ae / r.imageRatio : V;
                    return Math.max(0, (r.scale * Y - V) / 2)
                }
                return 0
            }),
            d = Oe(() => {
                if (r.imageRatio) {
                    const {
                        rootWidth: V,
                        rootHeight: ae
                    } = e, Y = a.value ? ae : V * r.imageRatio;
                    return Math.max(0, (r.scale * Y - ae) / 2)
                }
                return 0
            }),
            p = (V, ae) => {
                var Y;
                if (V = rr(V, +e.minZoom, +e.maxZoom + 1), V !== r.scale) {
                    const ue = V / r.scale;
                    if (r.scale = V, ae) {
                        const ye = Dn((Y = i.value) == null ? void 0 : Y.$el),
                            ee = {
                                x: ye.width * .5,
                                y: ye.height * .5
                            },
                            ce = r.moveX - (ae.x - ye.left - ee.x) * (ue - 1),
                            ve = r.moveY - (ae.y - ye.top - ee.y) * (ue - 1);
                        r.moveX = rr(ce, -f.value, f.value), r.moveY = rr(ve, -d.value, d.value)
                    } else r.moveX = 0, r.moveY = o.value ? l : 0;
                    t("scale", {
                        scale: V,
                        index: e.active
                    })
                }
            },
            m = () => {
                p(1)
            },
            g = () => {
                const V = r.scale > 1 ? 1 : 2;
                p(V, V === 2 || o.value ? {
                    x: A.startX.value,
                    y: A.startY.value
                } : void 0)
            };
        let y, w, B, x, C, b, F, T, I = !1;
        const D = V => {
                const {
                    touches: ae
                } = V;
                if (y = ae.length, y === 2 && e.disableZoom) return;
                const {
                    offsetX: Y
                } = A;
                A.start(V), w = r.moveX, B = r.moveY, T = Date.now(), I = !1, r.moving = y === 1 && (r.scale !== 1 || o.value), r.zooming = y === 2 && !Y.value, r.zooming && (x = r.scale, C = uv(ae))
            },
            U = V => {
                const {
                    touches: ae
                } = V;
                if (A.move(V), r.moving) {
                    const {
                        deltaX: Y,
                        deltaY: ue
                    } = A, ye = Y.value + w, ee = ue.value + B;
                    if ((e.vertical ? A.isVertical() && Math.abs(ee) > d.value : A.isHorizontal() && Math.abs(ye) > f.value) && !I) {
                        r.moving = !1;
                        return
                    }
                    I = !0, vr(V, !0), r.moveX = rr(ye, -f.value, f.value), r.moveY = rr(ee, -d.value, d.value)
                }
                if (r.zooming && (vr(V, !0), ae.length === 2)) {
                    const Y = uv(ae),
                        ue = x * Y / C;
                    b = lR(ae), p(ue, b)
                }
            },
            Q = V => {
                var ae;
                const Y = (ae = s.value) == null ? void 0 : ae.$el,
                    ue = Y.firstElementChild,
                    ye = V.target === Y,
                    ee = ue == null ? void 0 : ue.contains(V.target);
                !e.closeOnClickImage && ee || !e.closeOnClickOverlay && ye || t("close")
            },
            O = V => {
                if (y > 1) return;
                const ae = Date.now() - T,
                    Y = 250;
                A.isTap.value && (ae < Y ? e.doubleScale ? F ? (clearTimeout(F), F = null, g()) : F = setTimeout(() => {
                    Q(V), F = null
                }, Y) : Q(V) : ae > OL && t("longPress"))
            },
            N = V => {
                let ae = !1;
                if ((r.moving || r.zooming) && (ae = !0, r.moving && w === r.moveX && B === r.moveY && (ae = !1), !V.touches.length)) {
                    r.zooming && (r.moveX = rr(r.moveX, -f.value, f.value), r.moveY = rr(r.moveY, -d.value, d.value), r.zooming = !1), r.moving = !1, w = 0, B = 0, x = 1, r.scale < 1 && m();
                    const Y = +e.maxZoom;
                    r.scale > Y && p(Y, b)
                }
                vr(V, ae), O(V), A.reset()
            },
            J = () => {
                const {
                    rootWidth: V,
                    rootHeight: ae
                } = e, Y = ae / V, {
                    imageRatio: ue
                } = r;
                a.value = r.imageRatio > Y && ue < cv, o.value = r.imageRatio > Y && ue >= cv, o.value && (l = (ue * V - ae) / 2, r.moveY = l, r.initializing = !0, Ar(() => {
                    r.initializing = !1
                })), m()
            },
            j = V => {
                const {
                    naturalWidth: ae,
                    naturalHeight: Y
                } = V.target;
                r.imageRatio = Y / ae, J()
            };
        return je(() => e.active, m), je(() => e.show, V => {
            V || m()
        }), je(() => [e.rootWidth, e.rootHeight], J), wr("touchmove", U, {
            target: Oe(() => {
                var V;
                return (V = s.value) == null ? void 0 : V.$el
            })
        }), an({
            resetScale: m
        }), () => {
            const V = {
                loading: () => Z(di, {
                    type: "spinner"
                }, null)
            };
            return Z(j9, {
                ref: s,
                class: vd("swipe-item"),
                onTouchstartPassive: D,
                onTouchend: N,
                onTouchcancel: N
            }, {
                default: () => [n.image ? Z("div", {
                    class: vd("image-wrap")
                }, [n.image({
                    src: e.src
                })]) : Z(Aw, {
                    ref: i,
                    src: e.src,
                    fit: "contain",
                    class: vd("image", {
                        vertical: a.value
                    }),
                    style: u.value,
                    onLoad: j
                }, V)]
            })
        }
    }
});
const [fR, _a] = st("image-preview"), dR = ["show", "teleport", "transition", "overlayStyle", "closeOnPopstate"], hR = {
    show: Boolean,
    loop: et,
    images: si(),
    minZoom: xt(1 / 3),
    maxZoom: xt(3),
    overlay: et,
    vertical: Boolean,
    closeable: Boolean,
    showIndex: et,
    className: xn,
    closeIcon: ft("clear"),
    transition: String,
    beforeClose: Function,
    doubleScale: et,
    overlayClass: xn,
    overlayStyle: Object,
    swipeDuration: xt(300),
    startPosition: xt(0),
    showIndicators: Boolean,
    closeOnPopstate: et,
    closeOnClickImage: et,
    closeOnClickOverlay: et,
    closeIconPosition: ft("top-right"),
    teleport: [String, Object]
};
var fw = tt({
    name: fR,
    props: hR,
    emits: ["scale", "close", "closed", "change", "longPress", "update:show"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = Ue(),
            A = Ue(),
            i = Nt({
                active: 0,
                rootWidth: 0,
                rootHeight: 0,
                disableZoom: !1
            }),
            s = () => {
                if (r.value) {
                    const x = Dn(r.value.$el);
                    i.rootWidth = x.width, i.rootHeight = x.height, r.value.resize()
                }
            },
            a = x => t("scale", x),
            o = x => t("update:show", x),
            l = () => {
                x0(e.beforeClose, {
                    args: [i.active],
                    done: () => o(!1)
                })
            },
            u = x => {
                x !== i.active && (i.active = x, t("change", x))
            },
            f = () => {
                if (e.showIndex) return Z("div", {
                    class: _a("index")
                }, [n.index ? n.index({
                    index: i.active
                }) : `${i.active+1} / ${e.images.length}`])
            },
            d = () => {
                if (n.cover) return Z("div", {
                    class: _a("cover")
                }, [n.cover()])
            },
            p = () => {
                i.disableZoom = !0
            },
            m = () => {
                i.disableZoom = !1
            },
            g = () => Z(V9, {
                ref: r,
                lazyRender: !0,
                loop: e.loop,
                class: _a("swipe"),
                vertical: e.vertical,
                duration: e.swipeDuration,
                initialSwipe: e.startPosition,
                showIndicators: e.showIndicators,
                indicatorColor: "white",
                onChange: u,
                onDragEnd: m,
                onDragStart: p
            }, {
                default: () => [e.images.map((x, C) => Z(cR, {
                    ref: b => {
                        C === i.active && (A.value = b)
                    },
                    src: x,
                    show: e.show,
                    active: i.active,
                    maxZoom: e.maxZoom,
                    minZoom: e.minZoom,
                    rootWidth: i.rootWidth,
                    rootHeight: i.rootHeight,
                    disableZoom: i.disableZoom,
                    doubleScale: e.doubleScale,
                    closeOnClickImage: e.closeOnClickImage,
                    closeOnClickOverlay: e.closeOnClickOverlay,
                    vertical: e.vertical,
                    onScale: a,
                    onClose: l,
                    onLongPress: () => t("longPress", {
                        index: C
                    })
                }, {
                    image: n.image
                }))]
            }),
            y = () => {
                if (e.closeable) return Z(En, {
                    role: "button",
                    name: e.closeIcon,
                    class: [_a("close-icon", e.closeIconPosition), Xl],
                    onClick: l
                }, null)
            },
            w = () => t("closed"),
            B = (x, C) => {
                var b;
                return (b = r.value) == null ? void 0 : b.swipeTo(x, C)
            };
        return an({
            resetScale: () => {
                var x;
                (x = A.value) == null || x.resetScale()
            },
            swipeTo: B
        }), qt(s), je([Fo, C0], s), je(() => e.startPosition, x => u(+x)), je(() => e.show, x => {
            const {
                images: C,
                startPosition: b
            } = e;
            x ? (u(+b), yt(() => {
                s(), B(+b, {
                    immediate: !0
                })
            })) : t("close", {
                index: i.active,
                url: C[i.active]
            })
        }), () => Z(Uo, $t({
            class: [_a(), e.className],
            overlayClass: [_a("overlay"), e.overlayClass],
            onClosed: w,
            "onUpdate:show": o
        }, Zt(e, dR)), {
            default: () => [y(), g(), f(), d()]
        })
    }
});
let Gu;
const pR = {
    loop: !0,
    images: [],
    maxZoom: 3,
    minZoom: 1 / 3,
    onScale: void 0,
    onClose: void 0,
    onChange: void 0,
    vertical: !1,
    teleport: "body",
    className: "",
    showIndex: !0,
    closeable: !1,
    closeIcon: "clear",
    transition: void 0,
    beforeClose: void 0,
    doubleScale: !0,
    overlayStyle: void 0,
    overlayClass: void 0,
    startPosition: 0,
    swipeDuration: 300,
    showIndicators: !1,
    closeOnPopstate: !0,
    closeOnClickOverlay: !0,
    closeIconPosition: "top-right"
};

function gR() {
    ({
        instance: Gu
    } = _p({
        setup() {
            const {
                state: e,
                toggle: t
            } = Fp(), n = () => {
                e.images = []
            };
            return () => Z(fw, $t(e, {
                onClosed: n,
                "onUpdate:show": t
            }), null)
        }
    }))
}
const vR = (e, t = 0) => {
    if (ii) return Gu || gR(), e = Array.isArray(e) ? {
        images: e,
        startPosition: t
    } : e, Gu.open(wt({}, pR, e)), Gu
};
dt(fw);
const [mR, Sa, BR] = st("list"), wR = {
    error: Boolean,
    offset: xt(300),
    loading: Boolean,
    disabled: Boolean,
    finished: Boolean,
    scroller: Object,
    errorText: String,
    direction: ft("down"),
    loadingText: String,
    finishedText: String,
    immediateCheck: et
};
var yR = tt({
    name: mR,
    props: wR,
    emits: ["load", "update:error", "update:loading"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = Ue(e.loading),
            A = Ue(),
            i = Ue(),
            s = rH(),
            a = w0(A),
            o = Oe(() => e.scroller || a.value),
            l = () => {
                yt(() => {
                    if (r.value || e.finished || e.disabled || e.error || (s == null ? void 0 : s.value) === !1) return;
                    const {
                        direction: m
                    } = e, g = +e.offset, y = Dn(o);
                    if (!y.height || ro(A)) return;
                    let w = !1;
                    const B = Dn(i);
                    m === "up" ? w = y.top - B.top <= g : w = B.bottom - y.bottom <= g, w && (r.value = !0, t("update:loading", !0), t("load"))
                })
            },
            u = () => {
                if (e.finished) {
                    const m = n.finished ? n.finished() : e.finishedText;
                    if (m) return Z("div", {
                        class: Sa("finished-text")
                    }, [m])
                }
            },
            f = () => {
                t("update:error", !1), l()
            },
            d = () => {
                if (e.error) {
                    const m = n.error ? n.error() : e.errorText;
                    if (m) return Z("div", {
                        role: "button",
                        class: Sa("error-text"),
                        tabindex: 0,
                        onClick: f
                    }, [m])
                }
            },
            p = () => {
                if (r.value && !e.finished && !e.disabled) return Z("div", {
                    class: Sa("loading")
                }, [n.loading ? n.loading() : Z(di, {
                    class: Sa("loading-icon")
                }, {
                    default: () => [e.loadingText || BR("loading")]
                })])
            };
        return je(() => [e.loading, e.finished, e.error], l), s && je(s, m => {
            m && l()
        }), sa(() => {
            r.value = e.loading
        }), qt(() => {
            e.immediateCheck && l()
        }), an({
            check: l
        }), wr("scroll", l, {
            target: o,
            passive: !0
        }), () => {
            var m;
            const g = (m = n.default) == null ? void 0 : m.call(n),
                y = Z("div", {
                    ref: i,
                    class: Sa("placeholder")
                }, null);
            return Z("div", {
                ref: A,
                role: "feed",
                class: Sa(),
                "aria-busy": r.value
            }, [e.direction === "down" ? g : y, p(), u(), d(), e.direction === "up" ? g : y])
        }
    }
});
const Cne = dt(yR);

function oA(e) {
    if (e == null) return window;
    if (e.toString() !== "[object Window]") {
        var t = e.ownerDocument;
        return t && t.defaultView || window
    }
    return e
}

function Tp(e) {
    var t = oA(e).Element;
    return e instanceof t || e instanceof Element
}

function iA(e) {
    var t = oA(e).HTMLElement;
    return e instanceof t || e instanceof HTMLElement
}

function dw(e) {
    if (typeof ShadowRoot > "u") return !1;
    var t = oA(e).ShadowRoot;
    return e instanceof t || e instanceof ShadowRoot
}
var Ao = Math.round;

function q2() {
    var e = navigator.userAgentData;
    return e != null && e.brands ? e.brands.map(function(t) {
        return t.brand + "/" + t.version
    }).join(" ") : navigator.userAgent
}

function CR() {
    return !/^((?!chrome|android).)*safari/i.test(q2())
}

function dc(e, t, n) {
    t === void 0 && (t = !1), n === void 0 && (n = !1);
    var r = e.getBoundingClientRect(),
        A = 1,
        i = 1;
    t && iA(e) && (A = e.offsetWidth > 0 && Ao(r.width) / e.offsetWidth || 1, i = e.offsetHeight > 0 && Ao(r.height) / e.offsetHeight || 1);
    var s = Tp(e) ? oA(e) : window,
        a = s.visualViewport,
        o = !CR() && n,
        l = (r.left + (o && a ? a.offsetLeft : 0)) / A,
        u = (r.top + (o && a ? a.offsetTop : 0)) / i,
        f = r.width / A,
        d = r.height / i;
    return {
        width: f,
        height: d,
        top: u,
        right: l + f,
        bottom: u + d,
        left: l,
        x: l,
        y: u
    }
}

function hw(e) {
    var t = oA(e),
        n = t.pageXOffset,
        r = t.pageYOffset;
    return {
        scrollLeft: n,
        scrollTop: r
    }
}

function xR(e) {
    return {
        scrollLeft: e.scrollLeft,
        scrollTop: e.scrollTop
    }
}

function ER(e) {
    return e === oA(e) || !iA(e) ? hw(e) : xR(e)
}

function ai(e) {
    return e ? (e.nodeName || "").toLowerCase() : null
}

function Cf(e) {
    return ((Tp(e) ? e.ownerDocument : e.document) || window.document).documentElement
}

function bR(e) {
    return dc(Cf(e)).left + hw(e).scrollLeft
}

function oi(e) {
    return oA(e).getComputedStyle(e)
}

function Ip(e) {
    var t = oi(e),
        n = t.overflow,
        r = t.overflowX,
        A = t.overflowY;
    return /auto|scroll|overlay|hidden/.test(n + A + r)
}

function FR(e) {
    var t = e.getBoundingClientRect(),
        n = Ao(t.width) / e.offsetWidth || 1,
        r = Ao(t.height) / e.offsetHeight || 1;
    return n !== 1 || r !== 1
}

function _R(e, t, n) {
    n === void 0 && (n = !1);
    var r = iA(t),
        A = iA(t) && FR(t),
        i = Cf(t),
        s = dc(e, A, n),
        a = {
            scrollLeft: 0,
            scrollTop: 0
        },
        o = {
            x: 0,
            y: 0
        };
    return (r || !r && !n) && ((ai(t) !== "body" || Ip(i)) && (a = ER(t)), iA(t) ? (o = dc(t, !0), o.x += t.clientLeft, o.y += t.clientTop) : i && (o.x = bR(i))), {
        x: s.left + a.scrollLeft - o.x,
        y: s.top + a.scrollTop - o.y,
        width: s.width,
        height: s.height
    }
}

function SR(e) {
    var t = dc(e),
        n = e.offsetWidth,
        r = e.offsetHeight;
    return Math.abs(t.width - n) <= 1 && (n = t.width), Math.abs(t.height - r) <= 1 && (r = t.height), {
        x: e.offsetLeft,
        y: e.offsetTop,
        width: n,
        height: r
    }
}

function Dp(e) {
    return ai(e) === "html" ? e : e.assignedSlot || e.parentNode || (dw(e) ? e.host : null) || Cf(e)
}

function pw(e) {
    return ["html", "body", "#document"].indexOf(ai(e)) >= 0 ? e.ownerDocument.body : iA(e) && Ip(e) ? e : pw(Dp(e))
}

function zu(e, t) {
    var n;
    t === void 0 && (t = []);
    var r = pw(e),
        A = r === ((n = e.ownerDocument) == null ? void 0 : n.body),
        i = oA(r),
        s = A ? [i].concat(i.visualViewport || [], Ip(r) ? r : []) : r,
        a = t.concat(s);
    return A ? a : a.concat(zu(Dp(s)))
}

function QR(e) {
    return ["table", "td", "th"].indexOf(ai(e)) >= 0
}

function fv(e) {
    return !iA(e) || oi(e).position === "fixed" ? null : e.offsetParent
}

function UR(e) {
    var t = /firefox/i.test(q2()),
        n = /Trident/i.test(q2());
    if (n && iA(e)) {
        var r = oi(e);
        if (r.position === "fixed") return null
    }
    var A = Dp(e);
    for (dw(A) && (A = A.host); iA(A) && ["html", "body"].indexOf(ai(A)) < 0;) {
        var i = oi(A);
        if (i.transform !== "none" || i.perspective !== "none" || i.contain === "paint" || ["transform", "perspective"].indexOf(i.willChange) !== -1 || t && i.willChange === "filter" || t && i.filter && i.filter !== "none") return A;
        A = A.parentNode
    }
    return null
}

function gw(e) {
    for (var t = oA(e), n = fv(e); n && QR(n) && oi(n).position === "static";) n = fv(n);
    return n && (ai(n) === "html" || ai(n) === "body" && oi(n).position === "static") ? t : n || UR(e) || t
}
var Xa = "top",
    hc = "bottom",
    ql = "right",
    js = "left",
    vw = "auto",
    TR = [Xa, hc, ql, js],
    mw = "start",
    pc = "end",
    IR = [].concat(TR, [vw]).reduce(function(e, t) {
        return e.concat([t, t + "-" + mw, t + "-" + pc])
    }, []),
    DR = "beforeRead",
    PR = "read",
    OR = "afterRead",
    LR = "beforeMain",
    kR = "main",
    HR = "afterMain",
    MR = "beforeWrite",
    RR = "write",
    NR = "afterWrite",
    Z2 = [DR, PR, OR, LR, kR, HR, MR, RR, NR];

function $R(e) {
    var t = new Map,
        n = new Set,
        r = [];
    e.forEach(function(i) {
        t.set(i.name, i)
    });

    function A(i) {
        n.add(i.name);
        var s = [].concat(i.requires || [], i.requiresIfExists || []);
        s.forEach(function(a) {
            if (!n.has(a)) {
                var o = t.get(a);
                o && A(o)
            }
        }), r.push(i)
    }
    return e.forEach(function(i) {
        n.has(i.name) || A(i)
    }), r
}

function KR(e) {
    var t = $R(e);
    return Z2.reduce(function(n, r) {
        return n.concat(t.filter(function(A) {
            return A.phase === r
        }))
    }, [])
}

function VR(e) {
    var t;
    return function() {
        return t || (t = new Promise(function(n) {
            Promise.resolve().then(function() {
                t = void 0, n(e())
            })
        })), t
    }
}

function Qi(e) {
    for (var t = arguments.length, n = new Array(t > 1 ? t - 1 : 0), r = 1; r < t; r++) n[r - 1] = arguments[r];
    return [].concat(n).reduce(function(A, i) {
        return A.replace(/%s/, i)
    }, e)
}
var Us = 'Popper: modifier "%s" provided an invalid %s property, expected %s but got %s',
    GR = 'Popper: modifier "%s" requires "%s", but "%s" modifier is not available',
    dv = ["name", "enabled", "phase", "fn", "effect", "requires", "options"];

function zR(e) {
    e.forEach(function(t) {
        [].concat(Object.keys(t), dv).filter(function(n, r, A) {
            return A.indexOf(n) === r
        }).forEach(function(n) {
            switch (n) {
                case "name":
                    typeof t.name != "string" && console.error(Qi(Us, String(t.name), '"name"', '"string"', '"' + String(t.name) + '"'));
                    break;
                case "enabled":
                    typeof t.enabled != "boolean" && console.error(Qi(Us, t.name, '"enabled"', '"boolean"', '"' + String(t.enabled) + '"'));
                    break;
                case "phase":
                    Z2.indexOf(t.phase) < 0 && console.error(Qi(Us, t.name, '"phase"', "either " + Z2.join(", "), '"' + String(t.phase) + '"'));
                    break;
                case "fn":
                    typeof t.fn != "function" && console.error(Qi(Us, t.name, '"fn"', '"function"', '"' + String(t.fn) + '"'));
                    break;
                case "effect":
                    t.effect != null && typeof t.effect != "function" && console.error(Qi(Us, t.name, '"effect"', '"function"', '"' + String(t.fn) + '"'));
                    break;
                case "requires":
                    t.requires != null && !Array.isArray(t.requires) && console.error(Qi(Us, t.name, '"requires"', '"array"', '"' + String(t.requires) + '"'));
                    break;
                case "requiresIfExists":
                    Array.isArray(t.requiresIfExists) || console.error(Qi(Us, t.name, '"requiresIfExists"', '"array"', '"' + String(t.requiresIfExists) + '"'));
                    break;
                case "options":
                case "data":
                    break;
                default:
                    console.error('PopperJS: an invalid property has been provided to the "' + t.name + '" modifier, valid properties are ' + dv.map(function(r) {
                        return '"' + r + '"'
                    }).join(", ") + '; but "' + n + '" was provided.')
            }
            t.requires && t.requires.forEach(function(r) {
                e.find(function(A) {
                    return A.name === r
                }) == null && console.error(Qi(GR, String(t.name), r, r))
            })
        })
    })
}

function WR(e, t) {
    var n = new Set;
    return e.filter(function(r) {
        var A = t(r);
        if (!n.has(A)) return n.add(A), !0
    })
}

function xf(e) {
    return e.split("-")[0]
}

function jR(e) {
    var t = e.reduce(function(n, r) {
        var A = n[r.name];
        return n[r.name] = A ? Object.assign({}, A, r, {
            options: Object.assign({}, A.options, r.options),
            data: Object.assign({}, A.data, r.data)
        }) : r, n
    }, {});
    return Object.keys(t).map(function(n) {
        return t[n]
    })
}

function Bw(e) {
    return e.split("-")[1]
}

function YR(e) {
    return ["top", "bottom"].indexOf(e) >= 0 ? "x" : "y"
}

function XR(e) {
    var t = e.reference,
        n = e.element,
        r = e.placement,
        A = r ? xf(r) : null,
        i = r ? Bw(r) : null,
        s = t.x + t.width / 2 - n.width / 2,
        a = t.y + t.height / 2 - n.height / 2,
        o;
    switch (A) {
        case Xa:
            o = {
                x: s,
                y: t.y - n.height
            };
            break;
        case hc:
            o = {
                x: s,
                y: t.y + t.height
            };
            break;
        case ql:
            o = {
                x: t.x + t.width,
                y: a
            };
            break;
        case js:
            o = {
                x: t.x - n.width,
                y: a
            };
            break;
        default:
            o = {
                x: t.x,
                y: t.y
            }
    }
    var l = A ? YR(A) : null;
    if (l != null) {
        var u = l === "y" ? "height" : "width";
        switch (i) {
            case mw:
                o[l] = o[l] - (t[u] / 2 - n[u] / 2);
                break;
            case pc:
                o[l] = o[l] + (t[u] / 2 - n[u] / 2);
                break
        }
    }
    return o
}
var hv = "Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.",
    JR = "Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.",
    pv = {
        placement: "bottom",
        modifiers: [],
        strategy: "absolute"
    };

function gv() {
    for (var e = arguments.length, t = new Array(e), n = 0; n < e; n++) t[n] = arguments[n];
    return !t.some(function(r) {
        return !(r && typeof r.getBoundingClientRect == "function")
    })
}

function qR(e) {
    e === void 0 && (e = {});
    var t = e,
        n = t.defaultModifiers,
        r = n === void 0 ? [] : n,
        A = t.defaultOptions,
        i = A === void 0 ? pv : A;
    return function(a, o, l) {
        l === void 0 && (l = i);
        var u = {
                placement: "bottom",
                orderedModifiers: [],
                options: Object.assign({}, pv, i),
                modifiersData: {},
                elements: {
                    reference: a,
                    popper: o
                },
                attributes: {},
                styles: {}
            },
            f = [],
            d = !1,
            p = {
                state: u,
                setOptions: function(w) {
                    var B = typeof w == "function" ? w(u.options) : w;
                    g(), u.options = Object.assign({}, i, u.options, B), u.scrollParents = {
                        reference: Tp(a) ? zu(a) : a.contextElement ? zu(a.contextElement) : [],
                        popper: zu(o)
                    };
                    var x = KR(jR([].concat(r, u.options.modifiers)));
                    u.orderedModifiers = x.filter(function(Q) {
                        return Q.enabled
                    }); {
                        var C = WR([].concat(x, u.options.modifiers), function(Q) {
                            var O = Q.name;
                            return O
                        });
                        if (zR(C), xf(u.options.placement) === vw) {
                            var b = u.orderedModifiers.find(function(Q) {
                                var O = Q.name;
                                return O === "flip"
                            });
                            b || console.error(['Popper: "auto" placements require the "flip" modifier be', "present and enabled to work."].join(" "))
                        }
                        var F = oi(o),
                            T = F.marginTop,
                            I = F.marginRight,
                            D = F.marginBottom,
                            U = F.marginLeft;
                        [T, I, D, U].some(function(Q) {
                            return parseFloat(Q)
                        }) && console.warn(['Popper: CSS "margin" styles cannot be used to apply padding', "between the popper and its reference element or boundary.", "To replicate margin, use the `offset` modifier, as well as", "the `padding` option in the `preventOverflow` and `flip`", "modifiers."].join(" "))
                    }
                    return m(), p.update()
                },
                forceUpdate: function() {
                    if (!d) {
                        var w = u.elements,
                            B = w.reference,
                            x = w.popper;
                        if (!gv(B, x)) {
                            console.error(hv);
                            return
                        }
                        u.rects = {
                            reference: _R(B, gw(x), u.options.strategy === "fixed"),
                            popper: SR(x)
                        }, u.reset = !1, u.placement = u.options.placement, u.orderedModifiers.forEach(function(Q) {
                            return u.modifiersData[Q.name] = Object.assign({}, Q.data)
                        });
                        for (var C = 0, b = 0; b < u.orderedModifiers.length; b++) {
                            if (C += 1, C > 100) {
                                console.error(JR);
                                break
                            }
                            if (u.reset === !0) {
                                u.reset = !1, b = -1;
                                continue
                            }
                            var F = u.orderedModifiers[b],
                                T = F.fn,
                                I = F.options,
                                D = I === void 0 ? {} : I,
                                U = F.name;
                            typeof T == "function" && (u = T({
                                state: u,
                                options: D,
                                name: U,
                                instance: p
                            }) || u)
                        }
                    }
                },
                update: VR(function() {
                    return new Promise(function(y) {
                        p.forceUpdate(), y(u)
                    })
                }),
                destroy: function() {
                    g(), d = !0
                }
            };
        if (!gv(a, o)) return console.error(hv), p;
        p.setOptions(l).then(function(y) {
            !d && l.onFirstUpdate && l.onFirstUpdate(y)
        });

        function m() {
            u.orderedModifiers.forEach(function(y) {
                var w = y.name,
                    B = y.options,
                    x = B === void 0 ? {} : B,
                    C = y.effect;
                if (typeof C == "function") {
                    var b = C({
                            state: u,
                            name: w,
                            instance: p,
                            options: x
                        }),
                        F = function() {};
                    f.push(b || F)
                }
            })
        }

        function g() {
            f.forEach(function(y) {
                return y()
            }), f = []
        }
        return p
    }
}
var ou = {
    passive: !0
};

function ZR(e) {
    var t = e.state,
        n = e.instance,
        r = e.options,
        A = r.scroll,
        i = A === void 0 ? !0 : A,
        s = r.resize,
        a = s === void 0 ? !0 : s,
        o = oA(t.elements.popper),
        l = [].concat(t.scrollParents.reference, t.scrollParents.popper);
    return i && l.forEach(function(u) {
            u.addEventListener("scroll", n.update, ou)
        }), a && o.addEventListener("resize", n.update, ou),
        function() {
            i && l.forEach(function(u) {
                u.removeEventListener("scroll", n.update, ou)
            }), a && o.removeEventListener("resize", n.update, ou)
        }
}
var eN = {
    name: "eventListeners",
    enabled: !0,
    phase: "write",
    fn: function() {},
    effect: ZR,
    data: {}
};

function tN(e) {
    var t = e.state,
        n = e.name;
    t.modifiersData[n] = XR({
        reference: t.rects.reference,
        element: t.rects.popper,
        strategy: "absolute",
        placement: t.placement
    })
}
var nN = {
        name: "popperOffsets",
        enabled: !0,
        phase: "read",
        fn: tN,
        data: {}
    },
    rN = {
        top: "auto",
        right: "auto",
        bottom: "auto",
        left: "auto"
    };

function AN(e) {
    var t = e.x,
        n = e.y,
        r = window,
        A = r.devicePixelRatio || 1;
    return {
        x: Ao(t * A) / A || 0,
        y: Ao(n * A) / A || 0
    }
}

function vv(e) {
    var t, n = e.popper,
        r = e.popperRect,
        A = e.placement,
        i = e.variation,
        s = e.offsets,
        a = e.position,
        o = e.gpuAcceleration,
        l = e.adaptive,
        u = e.roundOffsets,
        f = e.isFixed,
        d = s.x,
        p = d === void 0 ? 0 : d,
        m = s.y,
        g = m === void 0 ? 0 : m,
        y = typeof u == "function" ? u({
            x: p,
            y: g
        }) : {
            x: p,
            y: g
        };
    p = y.x, g = y.y;
    var w = s.hasOwnProperty("x"),
        B = s.hasOwnProperty("y"),
        x = js,
        C = Xa,
        b = window;
    if (l) {
        var F = gw(n),
            T = "clientHeight",
            I = "clientWidth";
        if (F === oA(n) && (F = Cf(n), oi(F).position !== "static" && a === "absolute" && (T = "scrollHeight", I = "scrollWidth")), F = F, A === Xa || (A === js || A === ql) && i === pc) {
            C = hc;
            var D = f && F === b && b.visualViewport ? b.visualViewport.height : F[T];
            g -= D - r.height, g *= o ? 1 : -1
        }
        if (A === js || (A === Xa || A === hc) && i === pc) {
            x = ql;
            var U = f && F === b && b.visualViewport ? b.visualViewport.width : F[I];
            p -= U - r.width, p *= o ? 1 : -1
        }
    }
    var Q = Object.assign({
            position: a
        }, l && rN),
        O = u === !0 ? AN({
            x: p,
            y: g
        }) : {
            x: p,
            y: g
        };
    if (p = O.x, g = O.y, o) {
        var N;
        return Object.assign({}, Q, (N = {}, N[C] = B ? "0" : "", N[x] = w ? "0" : "", N.transform = (b.devicePixelRatio || 1) <= 1 ? "translate(" + p + "px, " + g + "px)" : "translate3d(" + p + "px, " + g + "px, 0)", N))
    }
    return Object.assign({}, Q, (t = {}, t[C] = B ? g + "px" : "", t[x] = w ? p + "px" : "", t.transform = "", t))
}

function iN(e) {
    var t = e.state,
        n = e.options,
        r = n.gpuAcceleration,
        A = r === void 0 ? !0 : r,
        i = n.adaptive,
        s = i === void 0 ? !0 : i,
        a = n.roundOffsets,
        o = a === void 0 ? !0 : a; {
        var l = oi(t.elements.popper).transitionProperty || "";
        s && ["transform", "top", "right", "bottom", "left"].some(function(f) {
            return l.indexOf(f) >= 0
        }) && console.warn(["Popper: Detected CSS transitions on at least one of the following", 'CSS properties: "transform", "top", "right", "bottom", "left".', `

`, 'Disable the "computeStyles" modifier\'s `adaptive` option to allow', "for smooth transitions, or remove these properties from the CSS", "transition declaration on the popper element if only transitioning", "opacity or background-color for example.", `

`, "We recommend using the popper element as a wrapper around an inner", "element that can have any CSS property transitioned for animations."].join(" "))
    }
    var u = {
        placement: xf(t.placement),
        variation: Bw(t.placement),
        popper: t.elements.popper,
        popperRect: t.rects.popper,
        gpuAcceleration: A,
        isFixed: t.options.strategy === "fixed"
    };
    t.modifiersData.popperOffsets != null && (t.styles.popper = Object.assign({}, t.styles.popper, vv(Object.assign({}, u, {
        offsets: t.modifiersData.popperOffsets,
        position: t.options.strategy,
        adaptive: s,
        roundOffsets: o
    })))), t.modifiersData.arrow != null && (t.styles.arrow = Object.assign({}, t.styles.arrow, vv(Object.assign({}, u, {
        offsets: t.modifiersData.arrow,
        position: "absolute",
        adaptive: !1,
        roundOffsets: o
    })))), t.attributes.popper = Object.assign({}, t.attributes.popper, {
        "data-popper-placement": t.placement
    })
}
var sN = {
    name: "computeStyles",
    enabled: !0,
    phase: "beforeWrite",
    fn: iN,
    data: {}
};

function aN(e) {
    var t = e.state;
    Object.keys(t.elements).forEach(function(n) {
        var r = t.styles[n] || {},
            A = t.attributes[n] || {},
            i = t.elements[n];
        !iA(i) || !ai(i) || (Object.assign(i.style, r), Object.keys(A).forEach(function(s) {
            var a = A[s];
            a === !1 ? i.removeAttribute(s) : i.setAttribute(s, a === !0 ? "" : a)
        }))
    })
}

function oN(e) {
    var t = e.state,
        n = {
            popper: {
                position: t.options.strategy,
                left: "0",
                top: "0",
                margin: "0"
            },
            arrow: {
                position: "absolute"
            },
            reference: {}
        };
    return Object.assign(t.elements.popper.style, n.popper), t.styles = n, t.elements.arrow && Object.assign(t.elements.arrow.style, n.arrow),
        function() {
            Object.keys(t.elements).forEach(function(r) {
                var A = t.elements[r],
                    i = t.attributes[r] || {},
                    s = Object.keys(t.styles.hasOwnProperty(r) ? t.styles[r] : n[r]),
                    a = s.reduce(function(o, l) {
                        return o[l] = "", o
                    }, {});
                !iA(A) || !ai(A) || (Object.assign(A.style, a), Object.keys(i).forEach(function(o) {
                    A.removeAttribute(o)
                }))
            })
        }
}
var lN = {
        name: "applyStyles",
        enabled: !0,
        phase: "write",
        fn: aN,
        effect: oN,
        requires: ["computeStyles"]
    },
    uN = [eN, nN, sN, lN],
    cN = qR({
        defaultModifiers: uN
    });

function fN(e, t, n) {
    var r = xf(e),
        A = [js, Xa].indexOf(r) >= 0 ? -1 : 1,
        i = typeof n == "function" ? n(Object.assign({}, t, {
            placement: e
        })) : n,
        s = i[0],
        a = i[1];
    return s = s || 0, a = (a || 0) * A, [js, ql].indexOf(r) >= 0 ? {
        x: a,
        y: s
    } : {
        x: s,
        y: a
    }
}

function dN(e) {
    var t = e.state,
        n = e.options,
        r = e.name,
        A = n.offset,
        i = A === void 0 ? [0, 0] : A,
        s = IR.reduce(function(u, f) {
            return u[f] = fN(f, t.rects, i), u
        }, {}),
        a = s[t.placement],
        o = a.x,
        l = a.y;
    t.modifiersData.popperOffsets != null && (t.modifiersData.popperOffsets.x += o, t.modifiersData.popperOffsets.y += l), t.modifiersData[r] = s
}
var hN = {
    name: "offset",
    enabled: !0,
    phase: "main",
    requires: ["popperOffsets"],
    fn: dN
};
const [pN, Ts] = st("popover"), gN = ["overlay", "duration", "teleport", "overlayStyle", "overlayClass", "closeOnClickOverlay"], vN = {
    show: Boolean,
    theme: ft("light"),
    overlay: Boolean,
    actions: si(),
    actionsDirection: ft("vertical"),
    trigger: ft("click"),
    duration: nt,
    showArrow: et,
    placement: ft("bottom"),
    iconPrefix: String,
    overlayClass: xn,
    overlayStyle: Object,
    closeOnClickAction: et,
    closeOnClickOverlay: et,
    closeOnClickOutside: et,
    offset: {
        type: Array,
        default: () => [0, 8]
    },
    teleport: {
        type: [String, Object],
        default: "body"
    }
};
var mN = tt({
    name: pN,
    props: vN,
    emits: ["select", "touchstart", "update:show"],
    setup(e, {
        emit: t,
        slots: n,
        attrs: r
    }) {
        let A;
        const i = Ue(),
            s = Ue(),
            a = Ue(),
            o = Pk(() => e.show, B => t("update:show", B)),
            l = () => ({
                placement: e.placement,
                modifiers: [{
                    name: "computeStyles",
                    options: {
                        adaptive: !1,
                        gpuAcceleration: !1
                    }
                }, wt({}, hN, {
                    options: {
                        offset: e.offset
                    }
                })]
            }),
            u = () => s.value && a.value ? cN(s.value, a.value.popupRef.value, l()) : null,
            f = () => {
                yt(() => {
                    o.value && (A ? A.setOptions(l()) : (A = u(), ii && (window.addEventListener("animationend", f), window.addEventListener("transitionend", f))))
                })
            },
            d = B => {
                o.value = B
            },
            p = () => {
                e.trigger === "click" && (o.value = !o.value)
            },
            m = (B, x) => {
                B.disabled || (t("select", B, x), e.closeOnClickAction && (o.value = !1))
            },
            g = () => {
                o.value && e.closeOnClickOutside && (!e.overlay || e.closeOnClickOverlay) && (o.value = !1)
            },
            y = (B, x) => n.action ? n.action({
                action: B,
                index: x
            }) : [B.icon && Z(En, {
                name: B.icon,
                classPrefix: e.iconPrefix,
                class: Ts("action-icon")
            }, null), Z("div", {
                class: [Ts("action-text"), {
                    [TL]: e.actionsDirection === "vertical"
                }]
            }, [B.text])],
            w = (B, x) => {
                const {
                    icon: C,
                    color: b,
                    disabled: F,
                    className: T
                } = B;
                return Z("div", {
                    role: "menuitem",
                    class: [Ts("action", {
                        disabled: F,
                        "with-icon": C
                    }), {
                        [UL]: e.actionsDirection === "horizontal"
                    }, T],
                    style: {
                        color: b
                    },
                    tabindex: F ? void 0 : 0,
                    "aria-disabled": F || void 0,
                    onClick: () => m(B, x)
                }, [y(B, x)])
            };
        return qt(() => {
            f(), Yc(() => {
                var B;
                i.value = (B = a.value) == null ? void 0 : B.popupRef.value
            })
        }), Tr(() => {
            A && (ii && (window.removeEventListener("animationend", f), window.removeEventListener("transitionend", f)), A.destroy(), A = null)
        }), je(() => [o.value, e.offset, e.placement], f), H3([s, i], g, {
            eventName: "touchstart"
        }), () => {
            var B;
            return Z(rn, null, [Z("span", {
                ref: s,
                class: Ts("wrapper"),
                onClick: p
            }, [(B = n.reference) == null ? void 0 : B.call(n)]), Z(Uo, $t({
                ref: a,
                show: o.value,
                class: Ts([e.theme]),
                position: "",
                transition: "van-popover-zoom",
                lockScroll: !1,
                "onUpdate:show": d
            }, r, G2(), Zt(e, gN)), {
                default: () => [e.showArrow && Z("div", {
                    class: Ts("arrow")
                }, null), Z("div", {
                    role: "menu",
                    class: Ts("content", e.actionsDirection)
                }, [n.default ? n.default() : e.actions.map(w)])]
            })])
        }
    }
});
const xne = dt(mN),
    [BN, md] = st("progress"),
    wN = {
        color: String,
        inactive: Boolean,
        pivotText: String,
        textColor: String,
        showPivot: et,
        pivotColor: String,
        trackColor: String,
        strokeWidth: nt,
        percentage: {
            type: nt,
            default: 0,
            validator: e => +e >= 0 && +e <= 100
        }
    };
var yN = tt({
    name: BN,
    props: wN,
    setup(e) {
        const t = Oe(() => e.inactive ? void 0 : e.color),
            n = () => {
                const {
                    textColor: r,
                    pivotText: A,
                    pivotColor: i,
                    percentage: s
                } = e, a = A ? ? `${s}%`;
                if (e.showPivot && a) {
                    const o = {
                        color: r,
                        left: `${+s}%`,
                        transform: `translate(-${+s}%,-50%)`,
                        background: i || t.value
                    };
                    return Z("span", {
                        style: o,
                        class: md("pivot", {
                            inactive: e.inactive
                        })
                    }, [a])
                }
            };
        return () => {
            const {
                trackColor: r,
                percentage: A,
                strokeWidth: i
            } = e, s = {
                background: r,
                height: It(i)
            }, a = {
                width: `${A}%`,
                background: t.value
            };
            return Z("div", {
                class: md(),
                style: s
            }, [Z("span", {
                class: md("portion", {
                    inactive: e.inactive
                }),
                style: a
            }, null), n()])
        }
    }
});
const Ene = dt(yN),
    [CN, Zo, xN] = st("pull-refresh"),
    ww = 50,
    EN = ["pulling", "loosing", "success"],
    bN = {
        disabled: Boolean,
        modelValue: Boolean,
        headHeight: xt(ww),
        successText: String,
        pullingText: String,
        loosingText: String,
        loadingText: String,
        pullDistance: nt,
        successDuration: xt(500),
        animationDuration: xt(300)
    };
var FN = tt({
    name: CN,
    props: bN,
    emits: ["change", "refresh", "update:modelValue"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        let r;
        const A = Ue(),
            i = Ue(),
            s = w0(A),
            a = Nt({
                status: "normal",
                distance: 0,
                duration: 0
            }),
            o = Qo(),
            l = () => {
                if (e.headHeight !== ww) return {
                    height: `${e.headHeight}px`
                }
            },
            u = () => a.status !== "loading" && a.status !== "success" && !e.disabled,
            f = C => {
                const b = +(e.pullDistance || e.headHeight);
                return C > b && (C < b * 2 ? C = b + (C - b) / 2 : C = b * 1.5 + (C - b * 2) / 4), Math.round(C)
            },
            d = (C, b) => {
                const F = +(e.pullDistance || e.headHeight);
                a.distance = C, b ? a.status = "loading" : C === 0 ? a.status = "normal" : C < F ? a.status = "pulling" : a.status = "loosing", t("change", {
                    status: a.status,
                    distance: C
                })
            },
            p = () => {
                const {
                    status: C
                } = a;
                return C === "normal" ? "" : e[`${C}Text`] || xN(C)
            },
            m = () => {
                const {
                    status: C,
                    distance: b
                } = a;
                if (n[C]) return n[C]({
                    distance: b
                });
                const F = [];
                return EN.includes(C) && F.push(Z("div", {
                    class: Zo("text")
                }, [p()])), C === "loading" && F.push(Z(di, {
                    class: Zo("loading")
                }, {
                    default: p
                })), F
            },
            g = () => {
                a.status = "success", setTimeout(() => {
                    d(0)
                }, +e.successDuration)
            },
            y = C => {
                r = y0(s.value) === 0, r && (a.duration = 0, o.start(C))
            },
            w = C => {
                u() && y(C)
            },
            B = C => {
                if (u()) {
                    r || y(C);
                    const {
                        deltaY: b
                    } = o;
                    o.move(C), r && b.value >= 0 && o.isVertical() && (vr(C), d(f(b.value)))
                }
            },
            x = () => {
                r && o.deltaY.value && u() && (a.duration = +e.animationDuration, a.status === "loosing" ? (d(+e.headHeight, !0), t("update:modelValue", !0), yt(() => t("refresh"))) : d(0))
            };
        return je(() => e.modelValue, C => {
            a.duration = +e.animationDuration, C ? d(+e.headHeight, !0) : n.success || e.successText ? g() : d(0, !1)
        }), wr("touchmove", B, {
            target: i
        }), () => {
            var C;
            const b = {
                transitionDuration: `${a.duration}ms`,
                transform: a.distance ? `translate3d(0,${a.distance}px, 0)` : ""
            };
            return Z("div", {
                ref: A,
                class: Zo()
            }, [Z("div", {
                ref: i,
                class: Zo("track"),
                style: b,
                onTouchstartPassive: w,
                onTouchend: x,
                onTouchcancel: x
            }, [Z("div", {
                class: Zo("head"),
                style: l()
            }, [m()]), (C = n.default) == null ? void 0 : C.call(n)])])
        }
    }
});
const bne = dt(FN),
    Fne = dt(FM),
    [yw, _N] = st("sidebar"),
    Cw = Symbol(yw),
    SN = {
        modelValue: xt(0)
    };
var QN = tt({
    name: yw,
    props: SN,
    emits: ["change", "update:modelValue"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const {
            linkChildren: r
        } = FA(Cw), A = () => +e.modelValue;
        return r({
            getActive: A,
            setActive: s => {
                s !== A() && (t("update:modelValue", s), t("change", s))
            }
        }), () => {
            var s;
            return Z("div", {
                role: "tablist",
                class: _N()
            }, [(s = n.default) == null ? void 0 : s.call(n)])
        }
    }
});
const _ne = dt(QN),
    [UN, mv] = st("sidebar-item"),
    TN = wt({}, So, {
        dot: Boolean,
        title: String,
        badge: nt,
        disabled: Boolean,
        badgeProps: Object
    });
var IN = tt({
    name: UN,
    props: TN,
    emits: ["click"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = E0(),
            {
                parent: A,
                index: i
            } = Ir(Cw);
        if (!A) return;
        const s = () => {
            e.disabled || (t("click", i.value), A.setActive(i.value), r())
        };
        return () => {
            const {
                dot: a,
                badge: o,
                title: l,
                disabled: u
            } = e, f = i.value === A.getActive();
            return Z("div", {
                role: "tab",
                class: mv({
                    select: f,
                    disabled: u
                }),
                tabindex: u ? void 0 : 0,
                "aria-selected": f,
                onClick: s
            }, [Z(mf, $t({
                dot: a,
                class: mv("text"),
                content: o
            }, e.badgeProps), {
                default: () => [n.title ? n.title() : l]
            })])
        }
    }
});
const Sne = dt(IN),
    [DN, PN] = st("skeleton-title"),
    ON = {
        round: Boolean,
        titleWidth: nt
    };
var LN = tt({
    name: DN,
    props: ON,
    setup(e) {
        return () => Z("h3", {
            class: PN([{
                round: e.round
            }]),
            style: {
                width: It(e.titleWidth)
            }
        }, null)
    }
});
const kN = dt(LN);
var HN = kN;
const [MN, RN] = st("skeleton-avatar"), NN = {
    avatarSize: nt,
    avatarShape: ft("round")
};
var $N = tt({
    name: MN,
    props: NN,
    setup(e) {
        return () => Z("div", {
            class: RN([e.avatarShape]),
            style: _o(e.avatarSize)
        }, null)
    }
});
const KN = dt($N);
var VN = KN;
const Pp = "100%",
    GN = {
        round: Boolean,
        rowWidth: {
            type: nt,
            default: Pp
        }
    },
    [zN, WN] = st("skeleton-paragraph");
var jN = tt({
    name: zN,
    props: GN,
    setup(e) {
        return () => Z("div", {
            class: WN([{
                round: e.round
            }]),
            style: {
                width: e.rowWidth
            }
        }, null)
    }
});
const YN = dt(jN);
var XN = YN;
const [JN, Bv] = st("skeleton"), qN = "60%", ZN = {
    row: xt(0),
    round: Boolean,
    title: Boolean,
    titleWidth: nt,
    avatar: Boolean,
    avatarSize: nt,
    avatarShape: ft("round"),
    loading: et,
    animate: et,
    rowWidth: {
        type: [Number, String, Array],
        default: Pp
    }
};
var e$ = tt({
    name: JN,
    inheritAttrs: !1,
    props: ZN,
    setup(e, {
        slots: t,
        attrs: n
    }) {
        const r = () => {
                if (e.avatar) return Z(VN, {
                    avatarShape: e.avatarShape,
                    avatarSize: e.avatarSize
                }, null)
            },
            A = () => {
                if (e.title) return Z(HN, {
                    round: e.round,
                    titleWidth: e.titleWidth
                }, null)
            },
            i = o => {
                const {
                    rowWidth: l
                } = e;
                return l === Pp && o === +e.row - 1 ? qN : Array.isArray(l) ? l[o] : l
            },
            s = () => Array(+e.row).fill("").map((o, l) => Z(XN, {
                key: l,
                round: e.round,
                rowWidth: It(i(l))
            }, null)),
            a = () => t.template ? t.template() : Z(rn, null, [r(), Z("div", {
                class: Bv("content")
            }, [A(), s()])]);
        return () => {
            var o;
            return e.loading ? Z("div", $t({
                class: Bv({
                    animate: e.animate,
                    round: e.round
                })
            }, n), [a()]) : (o = t.default) == null ? void 0 : o.call(t)
        }
    }
});
const Qne = dt(e$),
    [t$, el] = st("slider"),
    n$ = {
        min: xt(0),
        max: xt(100),
        step: xt(1),
        range: Boolean,
        reverse: Boolean,
        disabled: Boolean,
        readonly: Boolean,
        vertical: Boolean,
        barHeight: nt,
        buttonSize: nt,
        activeColor: String,
        inactiveColor: String,
        modelValue: {
            type: [Number, Array],
            default: 0
        }
    };
var r$ = tt({
    name: t$,
    props: n$,
    emits: ["change", "dragEnd", "dragStart", "update:modelValue"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        let r, A, i;
        const s = Ue(),
            a = [Ue(), Ue()],
            o = Ue(),
            l = Qo(),
            u = Oe(() => Number(e.max) - Number(e.min)),
            f = Oe(() => {
                const Q = e.vertical ? "width" : "height";
                return {
                    background: e.inactiveColor,
                    [Q]: It(e.barHeight)
                }
            }),
            d = Q => e.range && Array.isArray(Q),
            p = () => {
                const {
                    modelValue: Q,
                    min: O
                } = e;
                return d(Q) ? `${(Q[1]-Q[0])*100/u.value}%` : `${(Q-Number(O))*100/u.value}%`
            },
            m = () => {
                const {
                    modelValue: Q,
                    min: O
                } = e;
                return d(Q) ? `${(Q[0]-Number(O))*100/u.value}%` : "0%"
            },
            g = Oe(() => {
                const O = {
                    [e.vertical ? "height" : "width"]: p(),
                    background: e.activeColor
                };
                o.value && (O.transition = "none");
                const N = () => e.vertical ? e.reverse ? "bottom" : "top" : e.reverse ? "right" : "left";
                return O[N()] = m(), O
            }),
            y = Q => {
                const O = +e.min,
                    N = +e.max,
                    J = +e.step;
                Q = rr(Q, O, N);
                const j = Math.round((Q - O) / J) * J;
                return yL(O, j)
            },
            w = () => {
                const Q = e.modelValue;
                d(Q) ? i = Q.map(y) : i = y(Q)
            },
            B = Q => {
                var O, N;
                const J = (O = Q[0]) != null ? O : Number(e.min),
                    j = (N = Q[1]) != null ? N : Number(e.max);
                return J > j ? [j, J] : [J, j]
            },
            x = (Q, O) => {
                d(Q) ? Q = B(Q).map(y) : Q = y(Q), qi(Q, e.modelValue) || t("update:modelValue", Q), O && !qi(Q, i) && t("change", Q)
            },
            C = Q => {
                if (Q.stopPropagation(), e.disabled || e.readonly) return;
                w();
                const {
                    min: O,
                    reverse: N,
                    vertical: J,
                    modelValue: j
                } = e, V = Dn(s), ae = () => J ? N ? V.bottom - Q.clientY : Q.clientY - V.top : N ? V.right - Q.clientX : Q.clientX - V.left, Y = J ? V.height : V.width, ue = Number(O) + ae() / Y * u.value;
                if (d(j)) {
                    const [ye, ee] = j, ce = (ye + ee) / 2;
                    ue <= ce ? x([ue, ee], !0) : x([ye, ue], !0)
                } else x(ue, !0)
            },
            b = Q => {
                e.disabled || e.readonly || (l.start(Q), A = e.modelValue, w(), o.value = "start")
            },
            F = Q => {
                if (e.disabled || e.readonly) return;
                o.value === "start" && t("dragStart", Q), vr(Q, !0), l.move(Q), o.value = "dragging";
                const O = Dn(s),
                    N = e.vertical ? l.deltaY.value : l.deltaX.value,
                    J = e.vertical ? O.height : O.width;
                let j = N / J * u.value;
                if (e.reverse && (j = -j), d(i)) {
                    const V = e.reverse ? 1 - r : r;
                    A[V] = i[V] + j
                } else A = i + j;
                x(A)
            },
            T = Q => {
                e.disabled || e.readonly || (o.value === "dragging" && (x(A, !0), t("dragEnd", Q)), o.value = "")
            },
            I = Q => typeof Q == "number" ? el("button-wrapper", ["left", "right"][Q]) : el("button-wrapper", e.reverse ? "left" : "right"),
            D = (Q, O) => {
                const N = o.value === "dragging";
                if (typeof O == "number") {
                    const J = n[O === 0 ? "left-button" : "right-button"];
                    let j;
                    if (N && Array.isArray(A) && (j = A[0] > A[1] ? r ^ 1 : r), J) return J({
                        value: Q,
                        dragging: N,
                        dragIndex: j
                    })
                }
                return n.button ? n.button({
                    value: Q,
                    dragging: N
                }) : Z("div", {
                    class: el("button"),
                    style: _o(e.buttonSize)
                }, null)
            },
            U = Q => {
                const O = typeof Q == "number" ? e.modelValue[Q] : e.modelValue;
                return Z("div", {
                    ref: a[Q ? ? 0],
                    role: "slider",
                    class: I(Q),
                    tabindex: e.disabled ? void 0 : 0,
                    "aria-valuemin": e.min,
                    "aria-valuenow": O,
                    "aria-valuemax": e.max,
                    "aria-disabled": e.disabled || void 0,
                    "aria-readonly": e.readonly || void 0,
                    "aria-orientation": e.vertical ? "vertical" : "horizontal",
                    onTouchstartPassive: N => {
                        typeof Q == "number" && (r = Q), b(N)
                    },
                    onTouchend: T,
                    onTouchcancel: T,
                    onClick: y9
                }, [D(O, Q)])
            };
        return x(e.modelValue), bo(() => e.modelValue), a.forEach(Q => {
            wr("touchmove", F, {
                target: Q
            })
        }), () => Z("div", {
            ref: s,
            style: f.value,
            class: el({
                vertical: e.vertical,
                disabled: e.disabled
            }),
            onClick: C
        }, [Z("div", {
            class: el("bar"),
            style: g.value
        }, [e.range ? [U(0), U(1)] : U()])])
    }
});
const Une = dt(r$),
    [A$, Bn, i$] = st("uploader");

function wv(e, t) {
    return new Promise(n => {
        if (t === "file") {
            n();
            return
        }
        const r = new FileReader;
        r.onload = A => {
            n(A.target.result)
        }, t === "dataUrl" ? r.readAsDataURL(e) : t === "text" && r.readAsText(e)
    })
}

function xw(e, t) {
    return lc(e).some(n => n.file ? no(t) ? t(n.file) : n.file.size > +t : !1)
}

function s$(e, t) {
    const n = [],
        r = [];
    return e.forEach(A => {
        xw(A, t) ? r.push(A) : n.push(A)
    }), {
        valid: n,
        invalid: r
    }
}
const a$ = /\.(jpeg|jpg|gif|png|svg|webp|jfif|bmp|dpg|avif)/i,
    o$ = e => a$.test(e);

function Ew(e) {
    return e.isImage ? !0 : e.file && e.file.type ? e.file.type.indexOf("image") === 0 : e.url ? o$(e.url) : typeof e.content == "string" ? e.content.indexOf("data:image") === 0 : !1
}
var l$ = tt({
    props: {
        name: nt,
        item: $n(Object),
        index: Number,
        imageFit: String,
        lazyLoad: Boolean,
        deletable: Boolean,
        reupload: Boolean,
        previewSize: [Number, String, Array],
        beforeDelete: Function
    },
    emits: ["delete", "preview", "reupload"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = () => {
                const {
                    status: u,
                    message: f
                } = e.item;
                if (u === "uploading" || u === "failed") {
                    const d = u === "failed" ? Z(En, {
                            name: "close",
                            class: Bn("mask-icon")
                        }, null) : Z(di, {
                            class: Bn("loading")
                        }, null),
                        p = Jt(f) && f !== "";
                    return Z("div", {
                        class: Bn("mask")
                    }, [d, p && Z("div", {
                        class: Bn("mask-message")
                    }, [f])])
                }
            },
            A = u => {
                const {
                    name: f,
                    item: d,
                    index: p,
                    beforeDelete: m
                } = e;
                u.stopPropagation(), x0(m, {
                    args: [d, {
                        name: f,
                        index: p
                    }],
                    done: () => t("delete")
                })
            },
            i = () => t("preview"),
            s = () => t("reupload"),
            a = () => {
                if (e.deletable && e.item.status !== "uploading") {
                    const u = n["preview-delete"];
                    return Z("div", {
                        role: "button",
                        class: Bn("preview-delete", {
                            shadow: !u
                        }),
                        tabindex: 0,
                        "aria-label": i$("delete"),
                        onClick: A
                    }, [u ? u() : Z(En, {
                        name: "cross",
                        class: Bn("preview-delete-icon")
                    }, null)])
                }
            },
            o = () => {
                if (n["preview-cover"]) {
                    const {
                        index: u,
                        item: f
                    } = e;
                    return Z("div", {
                        class: Bn("preview-cover")
                    }, [n["preview-cover"](wt({
                        index: u
                    }, f))])
                }
            },
            l = () => {
                const {
                    item: u,
                    lazyLoad: f,
                    imageFit: d,
                    previewSize: p,
                    reupload: m
                } = e;
                return Ew(u) ? Z(Aw, {
                    fit: d,
                    src: u.objectUrl || u.content || u.url,
                    class: Bn("preview-image"),
                    width: Array.isArray(p) ? p[0] : p,
                    height: Array.isArray(p) ? p[1] : p,
                    lazyLoad: f,
                    onClick: m ? s : i
                }, {
                    default: o
                }) : Z("div", {
                    class: Bn("file"),
                    style: _o(e.previewSize)
                }, [Z(En, {
                    class: Bn("file-icon"),
                    name: "description"
                }, null), Z("div", {
                    class: [Bn("file-name"), "van-ellipsis"]
                }, [u.file ? u.file.name : u.url]), o()])
            };
        return () => Z("div", {
            class: Bn("preview")
        }, [l(), r(), a()])
    }
});
const u$ = {
    name: xt(""),
    accept: ft("image/*"),
    capture: String,
    multiple: Boolean,
    disabled: Boolean,
    readonly: Boolean,
    lazyLoad: Boolean,
    maxCount: xt(1 / 0),
    imageFit: ft("cover"),
    resultType: ft("dataUrl"),
    uploadIcon: ft("photograph"),
    uploadText: String,
    deletable: et,
    reupload: Boolean,
    afterRead: Function,
    showUpload: et,
    modelValue: si(),
    beforeRead: Function,
    beforeDelete: Function,
    previewSize: [Number, String, Array],
    previewImage: et,
    previewOptions: Object,
    previewFullImage: et,
    maxSize: {
        type: [Number, String, Function],
        default: 1 / 0
    }
};
var c$ = tt({
    name: A$,
    props: u$,
    emits: ["delete", "oversize", "clickUpload", "closePreview", "clickPreview", "clickReupload", "update:modelValue"],
    setup(e, {
        emit: t,
        slots: n
    }) {
        const r = Ue(),
            A = [],
            i = Ue(-1),
            s = Ue(!1),
            a = (I = e.modelValue.length) => ({
                name: e.name,
                index: I
            }),
            o = () => {
                r.value && (r.value.value = "")
            },
            l = I => {
                if (o(), xw(I, e.maxSize))
                    if (Array.isArray(I)) {
                        const D = s$(I, e.maxSize);
                        if (I = D.valid, t("oversize", D.invalid, a()), !I.length) return
                    } else {
                        t("oversize", I, a());
                        return
                    }
                if (I = Nt(I), i.value > -1) {
                    const D = [...e.modelValue];
                    D.splice(i.value, 1, I), t("update:modelValue", D), i.value = -1
                } else t("update:modelValue", [...e.modelValue, ...lc(I)]);
                e.afterRead && e.afterRead(I, a())
            },
            u = I => {
                const {
                    maxCount: D,
                    modelValue: U,
                    resultType: Q
                } = e;
                if (Array.isArray(I)) {
                    const O = +D - U.length;
                    I.length > O && (I = I.slice(0, O)), Promise.all(I.map(N => wv(N, Q))).then(N => {
                        const J = I.map((j, V) => {
                            const ae = {
                                file: j,
                                status: "",
                                message: "",
                                objectUrl: URL.createObjectURL(j)
                            };
                            return N[V] && (ae.content = N[V]), ae
                        });
                        l(J)
                    })
                } else wv(I, Q).then(O => {
                    const N = {
                        file: I,
                        status: "",
                        message: "",
                        objectUrl: URL.createObjectURL(I)
                    };
                    O && (N.content = O), l(N)
                })
            },
            f = I => {
                const {
                    files: D
                } = I.target;
                if (e.disabled || !D || !D.length) return;
                const U = D.length === 1 ? D[0] : [].slice.call(D);
                if (e.beforeRead) {
                    const Q = e.beforeRead(U, a());
                    if (!Q) {
                        o();
                        return
                    }
                    if (vp(Q)) {
                        Q.then(O => {
                            u(O || U)
                        }).catch(o);
                        return
                    }
                }
                u(U)
            };
        let d;
        const p = () => t("closePreview"),
            m = I => {
                if (e.previewFullImage) {
                    const D = e.modelValue.filter(Ew),
                        U = D.map(Q => (Q.objectUrl && !Q.url && Q.status !== "failed" && (Q.url = Q.objectUrl, A.push(Q.url)), Q.url)).filter(Boolean);
                    d = vR(wt({
                        images: U,
                        startPosition: D.indexOf(I),
                        onClose: p
                    }, e.previewOptions))
                }
            },
            g = () => {
                d && d.close()
            },
            y = (I, D) => {
                const U = e.modelValue.slice(0);
                U.splice(D, 1), t("update:modelValue", U), t("delete", I, a(D))
            },
            w = I => {
                s.value = !0, i.value = I, yt(() => T())
            },
            B = () => {
                s.value || (i.value = -1), s.value = !1
            },
            x = (I, D) => {
                const U = ["imageFit", "deletable", "reupload", "previewSize", "beforeDelete"],
                    Q = wt(Zt(e, U), Zt(I, U, !0));
                return Z(l$, $t({
                    item: I,
                    index: D,
                    onClick: () => t(e.reupload ? "clickReupload" : "clickPreview", I, a(D)),
                    onDelete: () => y(I, D),
                    onPreview: () => m(I),
                    onReupload: () => w(D)
                }, Zt(e, ["name", "lazyLoad"]), Q), Zt(n, ["preview-cover", "preview-delete"]))
            },
            C = () => {
                if (e.previewImage) return e.modelValue.map(x)
            },
            b = I => t("clickUpload", I),
            F = () => {
                if (e.modelValue.length >= +e.maxCount && !e.reupload) return;
                const I = e.modelValue.length >= +e.maxCount && e.reupload,
                    D = e.readonly ? null : Z("input", {
                        ref: r,
                        type: "file",
                        class: Bn("input"),
                        accept: e.accept,
                        capture: e.capture,
                        multiple: e.multiple && i.value === -1,
                        disabled: e.disabled,
                        onChange: f,
                        onClick: B
                    }, null);
                return n.default ? ns(Z("div", {
                    class: Bn("input-wrapper"),
                    onClick: b
                }, [n.default(), D]), [
                    [as, !I]
                ]) : ns(Z("div", {
                    class: Bn("upload", {
                        readonly: e.readonly
                    }),
                    style: _o(e.previewSize),
                    onClick: b
                }, [Z(En, {
                    name: e.uploadIcon,
                    class: Bn("upload-icon")
                }, null), e.uploadText && Z("span", {
                    class: Bn("upload-text")
                }, [e.uploadText]), D]), [
                    [as, e.showUpload && !I]
                ])
            },
            T = () => {
                r.value && !e.disabled && r.value.click()
            };
        return Tr(() => {
            A.forEach(I => URL.revokeObjectURL(I))
        }), an({
            chooseFile: T,
            closeImagePreview: g
        }), bo(() => e.modelValue), () => Z("div", {
            class: Bn()
        }, [Z("div", {
            class: Bn("wrapper", {
                disabled: e.disabled
            })
        }, [C(), F()])])
    }
});
const Tne = dt(c$);
/*!
 * shared v9.2.2
 * (c) 2022 kazuya kawaguchi
 * Released under the MIT License.
 */
const eh = typeof window < "u",
    f$ = typeof Symbol == "function" && typeof Symbol.toStringTag == "symbol",
    vs = e => f$ ? Symbol(e) : e,
    d$ = (e, t, n) => h$({
        l: e,
        k: t,
        s: n
    }),
    h$ = e => JSON.stringify(e).replace(/\u2028/g, "\\u2028").replace(/\u2029/g, "\\u2029").replace(/\u0027/g, "\\u0027"),
    Cn = e => typeof e == "number" && isFinite(e),
    p$ = e => Lp(e) === "[object Date]",
    os = e => Lp(e) === "[object RegExp]",
    Ef = e => pt(e) && Object.keys(e).length === 0;

function g$(e, t) {
    typeof console < "u" && (console.warn("[intlify] " + e), t && console.warn(t.stack))
}
const Pn = Object.assign;
let yv;
const Ul = () => yv || (yv = typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : typeof window < "u" ? window : typeof global < "u" ? global : {});

function Cv(e) {
    return e.replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&apos;")
}
const v$ = Object.prototype.hasOwnProperty;

function Op(e, t) {
    return v$.call(e, t)
}
const Vt = Array.isArray,
    An = e => typeof e == "function",
    We = e => typeof e == "string",
    bt = e => typeof e == "boolean",
    Gt = e => e !== null && typeof e == "object",
    bw = Object.prototype.toString,
    Lp = e => bw.call(e),
    pt = e => Lp(e) === "[object Object]",
    m$ = e => e == null ? "" : Vt(e) || pt(e) && e.toString === bw ? JSON.stringify(e, null, 2) : String(e);
/*!
 * message-compiler v9.2.2
 * (c) 2022 kazuya kawaguchi
 * Released under the MIT License.
 */
const Tt = {
    EXPECTED_TOKEN: 1,
    INVALID_TOKEN_IN_PLACEHOLDER: 2,
    UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER: 3,
    UNKNOWN_ESCAPE_SEQUENCE: 4,
    INVALID_UNICODE_ESCAPE_SEQUENCE: 5,
    UNBALANCED_CLOSING_BRACE: 6,
    UNTERMINATED_CLOSING_BRACE: 7,
    EMPTY_PLACEHOLDER: 8,
    NOT_ALLOW_NEST_PLACEHOLDER: 9,
    INVALID_LINKED_FORMAT: 10,
    MUST_HAVE_MESSAGES_IN_PLURAL: 11,
    UNEXPECTED_EMPTY_LINKED_MODIFIER: 12,
    UNEXPECTED_EMPTY_LINKED_KEY: 13,
    UNEXPECTED_LEXICAL_ANALYSIS: 14,
    __EXTEND_POINT__: 15
};

function bf(e, t, n = {}) {
    const {
        domain: r,
        messages: A,
        args: i
    } = n, s = e, a = new SyntaxError(String(s));
    return a.code = e, t && (a.location = t), a.domain = r, a
}

function B$(e) {
    throw e
}

function w$(e, t, n) {
    return {
        line: e,
        column: t,
        offset: n
    }
}

function th(e, t, n) {
    const r = {
        start: e,
        end: t
    };
    return n != null && (r.source = n), r
}
const MA = " ",
    y$ = "\r",
    er = `
`,
    C$ = String.fromCharCode(8232),
    x$ = String.fromCharCode(8233);

function E$(e) {
    const t = e;
    let n = 0,
        r = 1,
        A = 1,
        i = 0;
    const s = T => t[T] === y$ && t[T + 1] === er,
        a = T => t[T] === er,
        o = T => t[T] === x$,
        l = T => t[T] === C$,
        u = T => s(T) || a(T) || o(T) || l(T),
        f = () => n,
        d = () => r,
        p = () => A,
        m = () => i,
        g = T => s(T) || o(T) || l(T) ? er : t[T],
        y = () => g(n),
        w = () => g(n + i);

    function B() {
        return i = 0, u(n) && (r++, A = 0), s(n) && n++, n++, A++, t[n]
    }

    function x() {
        return s(n + i) && i++, i++, t[n + i]
    }

    function C() {
        n = 0, r = 1, A = 1, i = 0
    }

    function b(T = 0) {
        i = T
    }

    function F() {
        const T = n + i;
        for (; T !== n;) B();
        i = 0
    }
    return {
        index: f,
        line: d,
        column: p,
        peekOffset: m,
        charAt: g,
        currentChar: y,
        currentPeek: w,
        next: B,
        peek: x,
        reset: C,
        resetPeek: b,
        skipToPeek: F
    }
}
const Ui = void 0,
    xv = "'",
    b$ = "tokenizer";

function F$(e, t = {}) {
    const n = t.location !== !1,
        r = E$(e),
        A = () => r.index(),
        i = () => w$(r.line(), r.column(), r.index()),
        s = i(),
        a = A(),
        o = {
            currentType: 14,
            offset: a,
            startLoc: s,
            endLoc: s,
            lastType: 14,
            lastOffset: a,
            lastStartLoc: s,
            lastEndLoc: s,
            braceNest: 0,
            inLinked: !1,
            text: ""
        },
        l = () => o,
        {
            onError: u
        } = t;

    function f(P, M, te, ...Be) {
        const Ie = l();
        if (M.column += te, M.offset += te, u) {
            const Le = th(Ie.startLoc, M),
                He = bf(P, Le, {
                    domain: b$,
                    args: Be
                });
            u(He)
        }
    }

    function d(P, M, te) {
        P.endLoc = i(), P.currentType = M;
        const Be = {
            type: M
        };
        return n && (Be.loc = th(P.startLoc, P.endLoc)), te != null && (Be.value = te), Be
    }
    const p = P => d(P, 14);

    function m(P, M) {
        return P.currentChar() === M ? (P.next(), M) : (f(Tt.EXPECTED_TOKEN, i(), 0, M), "")
    }

    function g(P) {
        let M = "";
        for (; P.currentPeek() === MA || P.currentPeek() === er;) M += P.currentPeek(), P.peek();
        return M
    }

    function y(P) {
        const M = g(P);
        return P.skipToPeek(), M
    }

    function w(P) {
        if (P === Ui) return !1;
        const M = P.charCodeAt(0);
        return M >= 97 && M <= 122 || M >= 65 && M <= 90 || M === 95
    }

    function B(P) {
        if (P === Ui) return !1;
        const M = P.charCodeAt(0);
        return M >= 48 && M <= 57
    }

    function x(P, M) {
        const {
            currentType: te
        } = M;
        if (te !== 2) return !1;
        g(P);
        const Be = w(P.currentPeek());
        return P.resetPeek(), Be
    }

    function C(P, M) {
        const {
            currentType: te
        } = M;
        if (te !== 2) return !1;
        g(P);
        const Be = P.currentPeek() === "-" ? P.peek() : P.currentPeek(),
            Ie = B(Be);
        return P.resetPeek(), Ie
    }

    function b(P, M) {
        const {
            currentType: te
        } = M;
        if (te !== 2) return !1;
        g(P);
        const Be = P.currentPeek() === xv;
        return P.resetPeek(), Be
    }

    function F(P, M) {
        const {
            currentType: te
        } = M;
        if (te !== 8) return !1;
        g(P);
        const Be = P.currentPeek() === ".";
        return P.resetPeek(), Be
    }

    function T(P, M) {
        const {
            currentType: te
        } = M;
        if (te !== 9) return !1;
        g(P);
        const Be = w(P.currentPeek());
        return P.resetPeek(), Be
    }

    function I(P, M) {
        const {
            currentType: te
        } = M;
        if (!(te === 8 || te === 12)) return !1;
        g(P);
        const Be = P.currentPeek() === ":";
        return P.resetPeek(), Be
    }

    function D(P, M) {
        const {
            currentType: te
        } = M;
        if (te !== 10) return !1;
        const Be = () => {
                const Le = P.currentPeek();
                return Le === "{" ? w(P.peek()) : Le === "@" || Le === "%" || Le === "|" || Le === ":" || Le === "." || Le === MA || !Le ? !1 : Le === er ? (P.peek(), Be()) : w(Le)
            },
            Ie = Be();
        return P.resetPeek(), Ie
    }

    function U(P) {
        g(P);
        const M = P.currentPeek() === "|";
        return P.resetPeek(), M
    }

    function Q(P) {
        const M = g(P),
            te = P.currentPeek() === "%" && P.peek() === "{";
        return P.resetPeek(), {
            isModulo: te,
            hasSpace: M.length > 0
        }
    }

    function O(P, M = !0) {
        const te = (Ie = !1, Le = "", He = !1) => {
                const Ne = P.currentPeek();
                return Ne === "{" ? Le === "%" ? !1 : Ie : Ne === "@" || !Ne ? Le === "%" ? !0 : Ie : Ne === "%" ? (P.peek(), te(Ie, "%", !0)) : Ne === "|" ? Le === "%" || He ? !0 : !(Le === MA || Le === er) : Ne === MA ? (P.peek(), te(!0, MA, He)) : Ne === er ? (P.peek(), te(!0, er, He)) : !0
            },
            Be = te();
        return M && P.resetPeek(), Be
    }

    function N(P, M) {
        const te = P.currentChar();
        return te === Ui ? Ui : M(te) ? (P.next(), te) : null
    }

    function J(P) {
        return N(P, te => {
            const Be = te.charCodeAt(0);
            return Be >= 97 && Be <= 122 || Be >= 65 && Be <= 90 || Be >= 48 && Be <= 57 || Be === 95 || Be === 36
        })
    }

    function j(P) {
        return N(P, te => {
            const Be = te.charCodeAt(0);
            return Be >= 48 && Be <= 57
        })
    }

    function V(P) {
        return N(P, te => {
            const Be = te.charCodeAt(0);
            return Be >= 48 && Be <= 57 || Be >= 65 && Be <= 70 || Be >= 97 && Be <= 102
        })
    }

    function ae(P) {
        let M = "",
            te = "";
        for (; M = j(P);) te += M;
        return te
    }

    function Y(P) {
        y(P);
        const M = P.currentChar();
        return M !== "%" && f(Tt.EXPECTED_TOKEN, i(), 0, M), P.next(), "%"
    }

    function ue(P) {
        let M = "";
        for (;;) {
            const te = P.currentChar();
            if (te === "{" || te === "}" || te === "@" || te === "|" || !te) break;
            if (te === "%")
                if (O(P)) M += te, P.next();
                else break;
            else if (te === MA || te === er)
                if (O(P)) M += te, P.next();
                else {
                    if (U(P)) break;
                    M += te, P.next()
                }
            else M += te, P.next()
        }
        return M
    }

    function ye(P) {
        y(P);
        let M = "",
            te = "";
        for (; M = J(P);) te += M;
        return P.currentChar() === Ui && f(Tt.UNTERMINATED_CLOSING_BRACE, i(), 0), te
    }

    function ee(P) {
        y(P);
        let M = "";
        return P.currentChar() === "-" ? (P.next(), M += `-${ae(P)}`) : M += ae(P), P.currentChar() === Ui && f(Tt.UNTERMINATED_CLOSING_BRACE, i(), 0), M
    }

    function ce(P) {
        y(P), m(P, "'");
        let M = "",
            te = "";
        const Be = Le => Le !== xv && Le !== er;
        for (; M = N(P, Be);) M === "\\" ? te += ve(P) : te += M;
        const Ie = P.currentChar();
        return Ie === er || Ie === Ui ? (f(Tt.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER, i(), 0), Ie === er && (P.next(), m(P, "'")), te) : (m(P, "'"), te)
    }

    function ve(P) {
        const M = P.currentChar();
        switch (M) {
            case "\\":
            case "'":
                return P.next(), `\\${M}`;
            case "u":
                return xe(P, M, 4);
            case "U":
                return xe(P, M, 6);
            default:
                return f(Tt.UNKNOWN_ESCAPE_SEQUENCE, i(), 0, M), ""
        }
    }

    function xe(P, M, te) {
        m(P, M);
        let Be = "";
        for (let Ie = 0; Ie < te; Ie++) {
            const Le = V(P);
            if (!Le) {
                f(Tt.INVALID_UNICODE_ESCAPE_SEQUENCE, i(), 0, `\\${M}${Be}${P.currentChar()}`);
                break
            }
            Be += Le
        }
        return `\\${M}${Be}`
    }

    function se(P) {
        y(P);
        let M = "",
            te = "";
        const Be = Ie => Ie !== "{" && Ie !== "}" && Ie !== MA && Ie !== er;
        for (; M = N(P, Be);) te += M;
        return te
    }

    function Fe(P) {
        let M = "",
            te = "";
        for (; M = J(P);) te += M;
        return te
    }

    function ie(P) {
        const M = (te = !1, Be) => {
            const Ie = P.currentChar();
            return Ie === "{" || Ie === "%" || Ie === "@" || Ie === "|" || !Ie || Ie === MA ? Be : Ie === er ? (Be += Ie, P.next(), M(te, Be)) : (Be += Ie, P.next(), M(!0, Be))
        };
        return M(!1, "")
    }

    function _e(P) {
        y(P);
        const M = m(P, "|");
        return y(P), M
    }

    function De(P, M) {
        let te = null;
        switch (P.currentChar()) {
            case "{":
                return M.braceNest >= 1 && f(Tt.NOT_ALLOW_NEST_PLACEHOLDER, i(), 0), P.next(), te = d(M, 2, "{"), y(P), M.braceNest++, te;
            case "}":
                return M.braceNest > 0 && M.currentType === 2 && f(Tt.EMPTY_PLACEHOLDER, i(), 0), P.next(), te = d(M, 3, "}"), M.braceNest--, M.braceNest > 0 && y(P), M.inLinked && M.braceNest === 0 && (M.inLinked = !1), te;
            case "@":
                return M.braceNest > 0 && f(Tt.UNTERMINATED_CLOSING_BRACE, i(), 0), te = $e(P, M) || p(M), M.braceNest = 0, te;
            default:
                let Ie = !0,
                    Le = !0,
                    He = !0;
                if (U(P)) return M.braceNest > 0 && f(Tt.UNTERMINATED_CLOSING_BRACE, i(), 0), te = d(M, 1, _e(P)), M.braceNest = 0, M.inLinked = !1, te;
                if (M.braceNest > 0 && (M.currentType === 5 || M.currentType === 6 || M.currentType === 7)) return f(Tt.UNTERMINATED_CLOSING_BRACE, i(), 0), M.braceNest = 0, Te(P, M);
                if (Ie = x(P, M)) return te = d(M, 5, ye(P)), y(P), te;
                if (Le = C(P, M)) return te = d(M, 6, ee(P)), y(P), te;
                if (He = b(P, M)) return te = d(M, 7, ce(P)), y(P), te;
                if (!Ie && !Le && !He) return te = d(M, 13, se(P)), f(Tt.INVALID_TOKEN_IN_PLACEHOLDER, i(), 0, te.value), y(P), te;
                break
        }
        return te
    }

    function $e(P, M) {
        const {
            currentType: te
        } = M;
        let Be = null;
        const Ie = P.currentChar();
        switch ((te === 8 || te === 9 || te === 12 || te === 10) && (Ie === er || Ie === MA) && f(Tt.INVALID_LINKED_FORMAT, i(), 0), Ie) {
            case "@":
                return P.next(), Be = d(M, 8, "@"), M.inLinked = !0, Be;
            case ".":
                return y(P), P.next(), d(M, 9, ".");
            case ":":
                return y(P), P.next(), d(M, 10, ":");
            default:
                return U(P) ? (Be = d(M, 1, _e(P)), M.braceNest = 0, M.inLinked = !1, Be) : F(P, M) || I(P, M) ? (y(P), $e(P, M)) : T(P, M) ? (y(P), d(M, 12, Fe(P))) : D(P, M) ? (y(P), Ie === "{" ? De(P, M) || Be : d(M, 11, ie(P))) : (te === 8 && f(Tt.INVALID_LINKED_FORMAT, i(), 0), M.braceNest = 0, M.inLinked = !1, Te(P, M))
        }
    }

    function Te(P, M) {
        let te = {
            type: 14
        };
        if (M.braceNest > 0) return De(P, M) || p(M);
        if (M.inLinked) return $e(P, M) || p(M);
        switch (P.currentChar()) {
            case "{":
                return De(P, M) || p(M);
            case "}":
                return f(Tt.UNBALANCED_CLOSING_BRACE, i(), 0), P.next(), d(M, 3, "}");
            case "@":
                return $e(P, M) || p(M);
            default:
                if (U(P)) return te = d(M, 1, _e(P)), M.braceNest = 0, M.inLinked = !1, te;
                const {
                    isModulo: Ie,
                    hasSpace: Le
                } = Q(P);
                if (Ie) return Le ? d(M, 0, ue(P)) : d(M, 4, Y(P));
                if (O(P)) return d(M, 0, ue(P));
                break
        }
        return te
    }

    function W() {
        const {
            currentType: P,
            offset: M,
            startLoc: te,
            endLoc: Be
        } = o;
        return o.lastType = P, o.lastOffset = M, o.lastStartLoc = te, o.lastEndLoc = Be, o.offset = A(), o.startLoc = i(), r.currentChar() === Ui ? d(o, 14) : Te(r, o)
    }
    return {
        nextToken: W,
        currentOffset: A,
        currentPosition: i,
        context: l
    }
}
const _$ = "parser",
    S$ = /(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;

function Q$(e, t, n) {
    switch (e) {
        case "\\\\":
            return "\\";
        case "\\'":
            return "'";
        default:
            {
                const r = parseInt(t || n, 16);
                return r <= 55295 || r >= 57344 ? String.fromCodePoint(r) : "�"
            }
    }
}

function U$(e = {}) {
    const t = e.location !== !1,
        {
            onError: n
        } = e;

    function r(w, B, x, C, ...b) {
        const F = w.currentPosition();
        if (F.offset += C, F.column += C, n) {
            const T = th(x, F),
                I = bf(B, T, {
                    domain: _$,
                    args: b
                });
            n(I)
        }
    }

    function A(w, B, x) {
        const C = {
            type: w,
            start: B,
            end: B
        };
        return t && (C.loc = {
            start: x,
            end: x
        }), C
    }

    function i(w, B, x, C) {
        w.end = B, C && (w.type = C), t && w.loc && (w.loc.end = x)
    }

    function s(w, B) {
        const x = w.context(),
            C = A(3, x.offset, x.startLoc);
        return C.value = B, i(C, w.currentOffset(), w.currentPosition()), C
    }

    function a(w, B) {
        const x = w.context(),
            {
                lastOffset: C,
                lastStartLoc: b
            } = x,
            F = A(5, C, b);
        return F.index = parseInt(B, 10), w.nextToken(), i(F, w.currentOffset(), w.currentPosition()), F
    }

    function o(w, B) {
        const x = w.context(),
            {
                lastOffset: C,
                lastStartLoc: b
            } = x,
            F = A(4, C, b);
        return F.key = B, w.nextToken(), i(F, w.currentOffset(), w.currentPosition()), F
    }

    function l(w, B) {
        const x = w.context(),
            {
                lastOffset: C,
                lastStartLoc: b
            } = x,
            F = A(9, C, b);
        return F.value = B.replace(S$, Q$), w.nextToken(), i(F, w.currentOffset(), w.currentPosition()), F
    }

    function u(w) {
        const B = w.nextToken(),
            x = w.context(),
            {
                lastOffset: C,
                lastStartLoc: b
            } = x,
            F = A(8, C, b);
        return B.type !== 12 ? (r(w, Tt.UNEXPECTED_EMPTY_LINKED_MODIFIER, x.lastStartLoc, 0), F.value = "", i(F, C, b), {
            nextConsumeToken: B,
            node: F
        }) : (B.value == null && r(w, Tt.UNEXPECTED_LEXICAL_ANALYSIS, x.lastStartLoc, 0, pA(B)), F.value = B.value || "", i(F, w.currentOffset(), w.currentPosition()), {
            node: F
        })
    }

    function f(w, B) {
        const x = w.context(),
            C = A(7, x.offset, x.startLoc);
        return C.value = B, i(C, w.currentOffset(), w.currentPosition()), C
    }

    function d(w) {
        const B = w.context(),
            x = A(6, B.offset, B.startLoc);
        let C = w.nextToken();
        if (C.type === 9) {
            const b = u(w);
            x.modifier = b.node, C = b.nextConsumeToken || w.nextToken()
        }
        switch (C.type !== 10 && r(w, Tt.UNEXPECTED_LEXICAL_ANALYSIS, B.lastStartLoc, 0, pA(C)), C = w.nextToken(), C.type === 2 && (C = w.nextToken()), C.type) {
            case 11:
                C.value == null && r(w, Tt.UNEXPECTED_LEXICAL_ANALYSIS, B.lastStartLoc, 0, pA(C)), x.key = f(w, C.value || "");
                break;
            case 5:
                C.value == null && r(w, Tt.UNEXPECTED_LEXICAL_ANALYSIS, B.lastStartLoc, 0, pA(C)), x.key = o(w, C.value || "");
                break;
            case 6:
                C.value == null && r(w, Tt.UNEXPECTED_LEXICAL_ANALYSIS, B.lastStartLoc, 0, pA(C)), x.key = a(w, C.value || "");
                break;
            case 7:
                C.value == null && r(w, Tt.UNEXPECTED_LEXICAL_ANALYSIS, B.lastStartLoc, 0, pA(C)), x.key = l(w, C.value || "");
                break;
            default:
                r(w, Tt.UNEXPECTED_EMPTY_LINKED_KEY, B.lastStartLoc, 0);
                const b = w.context(),
                    F = A(7, b.offset, b.startLoc);
                return F.value = "", i(F, b.offset, b.startLoc), x.key = F, i(x, b.offset, b.startLoc), {
                    nextConsumeToken: C,
                    node: x
                }
        }
        return i(x, w.currentOffset(), w.currentPosition()), {
            node: x
        }
    }

    function p(w) {
        const B = w.context(),
            x = B.currentType === 1 ? w.currentOffset() : B.offset,
            C = B.currentType === 1 ? B.endLoc : B.startLoc,
            b = A(2, x, C);
        b.items = [];
        let F = null;
        do {
            const D = F || w.nextToken();
            switch (F = null, D.type) {
                case 0:
                    D.value == null && r(w, Tt.UNEXPECTED_LEXICAL_ANALYSIS, B.lastStartLoc, 0, pA(D)), b.items.push(s(w, D.value || ""));
                    break;
                case 6:
                    D.value == null && r(w, Tt.UNEXPECTED_LEXICAL_ANALYSIS, B.lastStartLoc, 0, pA(D)), b.items.push(a(w, D.value || ""));
                    break;
                case 5:
                    D.value == null && r(w, Tt.UNEXPECTED_LEXICAL_ANALYSIS, B.lastStartLoc, 0, pA(D)), b.items.push(o(w, D.value || ""));
                    break;
                case 7:
                    D.value == null && r(w, Tt.UNEXPECTED_LEXICAL_ANALYSIS, B.lastStartLoc, 0, pA(D)), b.items.push(l(w, D.value || ""));
                    break;
                case 8:
                    const U = d(w);
                    b.items.push(U.node), F = U.nextConsumeToken || null;
                    break
            }
        } while (B.currentType !== 14 && B.currentType !== 1);
        const T = B.currentType === 1 ? B.lastOffset : w.currentOffset(),
            I = B.currentType === 1 ? B.lastEndLoc : w.currentPosition();
        return i(b, T, I), b
    }

    function m(w, B, x, C) {
        const b = w.context();
        let F = C.items.length === 0;
        const T = A(1, B, x);
        T.cases = [], T.cases.push(C);
        do {
            const I = p(w);
            F || (F = I.items.length === 0), T.cases.push(I)
        } while (b.currentType !== 14);
        return F && r(w, Tt.MUST_HAVE_MESSAGES_IN_PLURAL, x, 0), i(T, w.currentOffset(), w.currentPosition()), T
    }

    function g(w) {
        const B = w.context(),
            {
                offset: x,
                startLoc: C
            } = B,
            b = p(w);
        return B.currentType === 14 ? b : m(w, x, C, b)
    }

    function y(w) {
        const B = F$(w, Pn({}, e)),
            x = B.context(),
            C = A(0, x.offset, x.startLoc);
        return t && C.loc && (C.loc.source = w), C.body = g(B), x.currentType !== 14 && r(B, Tt.UNEXPECTED_LEXICAL_ANALYSIS, x.lastStartLoc, 0, w[x.offset] || ""), i(C, B.currentOffset(), B.currentPosition()), C
    }
    return {
        parse: y
    }
}

function pA(e) {
    if (e.type === 14) return "EOF";
    const t = (e.value || "").replace(/\r?\n/gu, "\\n");
    return t.length > 10 ? t.slice(0, 9) + "…" : t
}

function T$(e, t = {}) {
    const n = {
        ast: e,
        helpers: new Set
    };
    return {
        context: () => n,
        helper: i => (n.helpers.add(i), i)
    }
}

function Ev(e, t) {
    for (let n = 0; n < e.length; n++) kp(e[n], t)
}

function kp(e, t) {
    switch (e.type) {
        case 1:
            Ev(e.cases, t), t.helper("plural");
            break;
        case 2:
            Ev(e.items, t);
            break;
        case 6:
            kp(e.key, t), t.helper("linked"), t.helper("type");
            break;
        case 5:
            t.helper("interpolate"), t.helper("list");
            break;
        case 4:
            t.helper("interpolate"), t.helper("named");
            break
    }
}

function I$(e, t = {}) {
    const n = T$(e);
    n.helper("normalize"), e.body && kp(e.body, n);
    const r = n.context();
    e.helpers = Array.from(r.helpers)
}

function D$(e, t) {
    const {
        sourceMap: n,
        filename: r,
        breakLineCode: A,
        needIndent: i
    } = t, s = {
        source: e.loc.source,
        filename: r,
        code: "",
        column: 1,
        line: 1,
        offset: 0,
        map: void 0,
        breakLineCode: A,
        needIndent: i,
        indentLevel: 0
    }, a = () => s;

    function o(g, y) {
        s.code += g
    }

    function l(g, y = !0) {
        const w = y ? A : "";
        o(i ? w + "  ".repeat(g) : w)
    }

    function u(g = !0) {
        const y = ++s.indentLevel;
        g && l(y)
    }

    function f(g = !0) {
        const y = --s.indentLevel;
        g && l(y)
    }

    function d() {
        l(s.indentLevel)
    }
    return {
        context: a,
        push: o,
        indent: u,
        deindent: f,
        newline: d,
        helper: g => `_${g}`,
        needIndent: () => s.needIndent
    }
}

function P$(e, t) {
    const {
        helper: n
    } = e;
    e.push(`${n("linked")}(`), io(e, t.key), t.modifier ? (e.push(", "), io(e, t.modifier), e.push(", _type")) : e.push(", undefined, _type"), e.push(")")
}

function O$(e, t) {
    const {
        helper: n,
        needIndent: r
    } = e;
    e.push(`${n("normalize")}([`), e.indent(r());
    const A = t.items.length;
    for (let i = 0; i < A && (io(e, t.items[i]), i !== A - 1); i++) e.push(", ");
    e.deindent(r()), e.push("])")
}

function L$(e, t) {
    const {
        helper: n,
        needIndent: r
    } = e;
    if (t.cases.length > 1) {
        e.push(`${n("plural")}([`), e.indent(r());
        const A = t.cases.length;
        for (let i = 0; i < A && (io(e, t.cases[i]), i !== A - 1); i++) e.push(", ");
        e.deindent(r()), e.push("])")
    }
}

function k$(e, t) {
    t.body ? io(e, t.body) : e.push("null")
}

function io(e, t) {
    const {
        helper: n
    } = e;
    switch (t.type) {
        case 0:
            k$(e, t);
            break;
        case 1:
            L$(e, t);
            break;
        case 2:
            O$(e, t);
            break;
        case 6:
            P$(e, t);
            break;
        case 8:
            e.push(JSON.stringify(t.value), t);
            break;
        case 7:
            e.push(JSON.stringify(t.value), t);
            break;
        case 5:
            e.push(`${n("interpolate")}(${n("list")}(${t.index}))`, t);
            break;
        case 4:
            e.push(`${n("interpolate")}(${n("named")}(${JSON.stringify(t.key)}))`, t);
            break;
        case 9:
            e.push(JSON.stringify(t.value), t);
            break;
        case 3:
            e.push(JSON.stringify(t.value), t);
            break
    }
}
const H$ = (e, t = {}) => {
    const n = We(t.mode) ? t.mode : "normal",
        r = We(t.filename) ? t.filename : "message.intl",
        A = !!t.sourceMap,
        i = t.breakLineCode != null ? t.breakLineCode : n === "arrow" ? ";" : `
`,
        s = t.needIndent ? t.needIndent : n !== "arrow",
        a = e.helpers || [],
        o = D$(e, {
            mode: n,
            filename: r,
            sourceMap: A,
            breakLineCode: i,
            needIndent: s
        });
    o.push(n === "normal" ? "function __msg__ (ctx) {" : "(ctx) => {"), o.indent(s), a.length > 0 && (o.push(`const { ${a.map(f=>`${f}: _${f}`).join(", ")} } = ctx`), o.newline()), o.push("return "), io(o, e), o.deindent(s), o.push("}");
    const {
        code: l,
        map: u
    } = o.context();
    return {
        ast: e,
        code: l,
        map: u ? u.toJSON() : void 0
    }
};

function M$(e, t = {}) {
    const n = Pn({}, t),
        A = U$(n).parse(e);
    return I$(A, n), H$(A, n)
}
/*!
 * devtools-if v9.2.2
 * (c) 2022 kazuya kawaguchi
 * Released under the MIT License.
 */
const Fw = {
    I18nInit: "i18n:init",
    FunctionTranslate: "function:translate"
};
/*!
 * core-base v9.2.2
 * (c) 2022 kazuya kawaguchi
 * Released under the MIT License.
 */
const ms = [];
ms[0] = {
    w: [0],
    i: [3, 0],
    "[": [4],
    o: [7]
};
ms[1] = {
    w: [1],
    ".": [2],
    "[": [4],
    o: [7]
};
ms[2] = {
    w: [2],
    i: [3, 0],
    0: [3, 0]
};
ms[3] = {
    i: [3, 0],
    0: [3, 0],
    w: [1, 1],
    ".": [2, 1],
    "[": [4, 1],
    o: [7, 1]
};
ms[4] = {
    "'": [5, 0],
    '"': [6, 0],
    "[": [4, 2],
    "]": [1, 3],
    o: 8,
    l: [4, 0]
};
ms[5] = {
    "'": [4, 0],
    o: 8,
    l: [5, 0]
};
ms[6] = {
    '"': [4, 0],
    o: 8,
    l: [6, 0]
};
const R$ = /^\s?(?:true|false|-?[\d.]+|'[^']*'|"[^"]*")\s?$/;

function N$(e) {
    return R$.test(e)
}

function $$(e) {
    const t = e.charCodeAt(0),
        n = e.charCodeAt(e.length - 1);
    return t === n && (t === 34 || t === 39) ? e.slice(1, -1) : e
}

function K$(e) {
    if (e == null) return "o";
    switch (e.charCodeAt(0)) {
        case 91:
        case 93:
        case 46:
        case 34:
        case 39:
            return e;
        case 95:
        case 36:
        case 45:
            return "i";
        case 9:
        case 10:
        case 13:
        case 160:
        case 65279:
        case 8232:
        case 8233:
            return "w"
    }
    return "i"
}

function V$(e) {
    const t = e.trim();
    return e.charAt(0) === "0" && isNaN(parseInt(e)) ? !1 : N$(t) ? $$(t) : "*" + t
}

function G$(e) {
    const t = [];
    let n = -1,
        r = 0,
        A = 0,
        i, s, a, o, l, u, f;
    const d = [];
    d[0] = () => {
        s === void 0 ? s = a : s += a
    }, d[1] = () => {
        s !== void 0 && (t.push(s), s = void 0)
    }, d[2] = () => {
        d[0](), A++
    }, d[3] = () => {
        if (A > 0) A--, r = 4, d[0]();
        else {
            if (A = 0, s === void 0 || (s = V$(s), s === !1)) return !1;
            d[1]()
        }
    };

    function p() {
        const m = e[n + 1];
        if (r === 5 && m === "'" || r === 6 && m === '"') return n++, a = "\\" + m, d[0](), !0
    }
    for (; r !== null;)
        if (n++, i = e[n], !(i === "\\" && p())) {
            if (o = K$(i), f = ms[r], l = f[o] || f.l || 8, l === 8 || (r = l[0], l[1] !== void 0 && (u = d[l[1]], u && (a = i, u() === !1)))) return;
            if (r === 7) return t
        }
}
const bv = new Map;

function z$(e, t) {
    return Gt(e) ? e[t] : null
}

function W$(e, t) {
    if (!Gt(e)) return null;
    let n = bv.get(t);
    if (n || (n = G$(t), n && bv.set(t, n)), !n) return null;
    const r = n.length;
    let A = e,
        i = 0;
    for (; i < r;) {
        const s = A[n[i]];
        if (s === void 0) return null;
        A = s, i++
    }
    return A
}
const j$ = e => e,
    Y$ = e => "",
    X$ = "text",
    J$ = e => e.length === 0 ? "" : e.join(""),
    q$ = m$;

function Fv(e, t) {
    return e = Math.abs(e), t === 2 ? e ? e > 1 ? 1 : 0 : 1 : e ? Math.min(e, 2) : 0
}

function Z$(e) {
    const t = Cn(e.pluralIndex) ? e.pluralIndex : -1;
    return e.named && (Cn(e.named.count) || Cn(e.named.n)) ? Cn(e.named.count) ? e.named.count : Cn(e.named.n) ? e.named.n : t : t
}

function eK(e, t) {
    t.count || (t.count = e), t.n || (t.n = e)
}

function tK(e = {}) {
    const t = e.locale,
        n = Z$(e),
        r = Gt(e.pluralRules) && We(t) && An(e.pluralRules[t]) ? e.pluralRules[t] : Fv,
        A = Gt(e.pluralRules) && We(t) && An(e.pluralRules[t]) ? Fv : void 0,
        i = w => w[r(n, w.length, A)],
        s = e.list || [],
        a = w => s[w],
        o = e.named || {};
    Cn(e.pluralIndex) && eK(n, o);
    const l = w => o[w];

    function u(w) {
        const B = An(e.messages) ? e.messages(w) : Gt(e.messages) ? e.messages[w] : !1;
        return B || (e.parent ? e.parent.message(w) : Y$)
    }
    const f = w => e.modifiers ? e.modifiers[w] : j$,
        d = pt(e.processor) && An(e.processor.normalize) ? e.processor.normalize : J$,
        p = pt(e.processor) && An(e.processor.interpolate) ? e.processor.interpolate : q$,
        m = pt(e.processor) && We(e.processor.type) ? e.processor.type : X$,
        y = {
            list: a,
            named: l,
            plural: i,
            linked: (w, ...B) => {
                const [x, C] = B;
                let b = "text",
                    F = "";
                B.length === 1 ? Gt(x) ? (F = x.modifier || F, b = x.type || b) : We(x) && (F = x || F) : B.length === 2 && (We(x) && (F = x || F), We(C) && (b = C || b));
                let T = u(w)(y);
                return b === "vnode" && Vt(T) && F && (T = T[0]), F ? f(F)(T, b) : T
            },
            message: u,
            type: m,
            interpolate: p,
            normalize: d
        };
    return y
}
let Zl = null;

function nK(e) {
    Zl = e
}

function rK(e, t, n) {
    Zl && Zl.emit(Fw.I18nInit, {
        timestamp: Date.now(),
        i18n: e,
        version: t,
        meta: n
    })
}
const AK = iK(Fw.FunctionTranslate);

function iK(e) {
    return t => Zl && Zl.emit(e, t)
}

function sK(e, t, n) {
    return [...new Set([n, ...Vt(t) ? t : Gt(t) ? Object.keys(t) : We(t) ? [t] : [n]])]
}

function _w(e, t, n) {
    const r = We(n) ? n : b0,
        A = e;
    A.__localeChainCache || (A.__localeChainCache = new Map);
    let i = A.__localeChainCache.get(r);
    if (!i) {
        i = [];
        let s = [n];
        for (; Vt(s);) s = _v(i, s, t);
        const a = Vt(t) || !pt(t) ? t : t.default ? t.default : null;
        s = We(a) ? [a] : a, Vt(s) && _v(i, s, !1), A.__localeChainCache.set(r, i)
    }
    return i
}

function _v(e, t, n) {
    let r = !0;
    for (let A = 0; A < t.length && bt(r); A++) {
        const i = t[A];
        We(i) && (r = aK(e, t[A], n))
    }
    return r
}

function aK(e, t, n) {
    let r;
    const A = t.split("-");
    do {
        const i = A.join("-");
        r = oK(e, i, n), A.splice(-1, 1)
    } while (A.length && r === !0);
    return r
}

function oK(e, t, n) {
    let r = !1;
    if (!e.includes(t) && (r = !0, t)) {
        r = t[t.length - 1] !== "!";
        const A = t.replace(/!/g, "");
        e.push(A), (Vt(n) || pt(n)) && n[A] && (r = n[A])
    }
    return r
}
const lK = "9.2.2",
    Ff = -1,
    b0 = "en-US",
    Sv = "",
    Qv = e => `${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;

function uK() {
    return {
        upper: (e, t) => t === "text" && We(e) ? e.toUpperCase() : t === "vnode" && Gt(e) && "__v_isVNode" in e ? e.children.toUpperCase() : e,
        lower: (e, t) => t === "text" && We(e) ? e.toLowerCase() : t === "vnode" && Gt(e) && "__v_isVNode" in e ? e.children.toLowerCase() : e,
        capitalize: (e, t) => t === "text" && We(e) ? Qv(e) : t === "vnode" && Gt(e) && "__v_isVNode" in e ? Qv(e.children) : e
    }
}
let Sw;

function cK(e) {
    Sw = e
}
let Qw;

function fK(e) {
    Qw = e
}
let Uw;

function dK(e) {
    Uw = e
}
let Tw = null;
const Uv = e => {
        Tw = e
    },
    hK = () => Tw;
let Iw = null;
const Tv = e => {
        Iw = e
    },
    pK = () => Iw;
let Iv = 0;

function gK(e = {}) {
    const t = We(e.version) ? e.version : lK,
        n = We(e.locale) ? e.locale : b0,
        r = Vt(e.fallbackLocale) || pt(e.fallbackLocale) || We(e.fallbackLocale) || e.fallbackLocale === !1 ? e.fallbackLocale : n,
        A = pt(e.messages) ? e.messages : {
            [n]: {}
        },
        i = pt(e.datetimeFormats) ? e.datetimeFormats : {
            [n]: {}
        },
        s = pt(e.numberFormats) ? e.numberFormats : {
            [n]: {}
        },
        a = Pn({}, e.modifiers || {}, uK()),
        o = e.pluralRules || {},
        l = An(e.missing) ? e.missing : null,
        u = bt(e.missingWarn) || os(e.missingWarn) ? e.missingWarn : !0,
        f = bt(e.fallbackWarn) || os(e.fallbackWarn) ? e.fallbackWarn : !0,
        d = !!e.fallbackFormat,
        p = !!e.unresolving,
        m = An(e.postTranslation) ? e.postTranslation : null,
        g = pt(e.processor) ? e.processor : null,
        y = bt(e.warnHtmlMessage) ? e.warnHtmlMessage : !0,
        w = !!e.escapeParameter,
        B = An(e.messageCompiler) ? e.messageCompiler : Sw,
        x = An(e.messageResolver) ? e.messageResolver : Qw || z$,
        C = An(e.localeFallbacker) ? e.localeFallbacker : Uw || sK,
        b = Gt(e.fallbackContext) ? e.fallbackContext : void 0,
        F = An(e.onWarn) ? e.onWarn : g$,
        T = e,
        I = Gt(T.__datetimeFormatters) ? T.__datetimeFormatters : new Map,
        D = Gt(T.__numberFormatters) ? T.__numberFormatters : new Map,
        U = Gt(T.__meta) ? T.__meta : {};
    Iv++;
    const Q = {
        version: t,
        cid: Iv,
        locale: n,
        fallbackLocale: r,
        messages: A,
        modifiers: a,
        pluralRules: o,
        missing: l,
        missingWarn: u,
        fallbackWarn: f,
        fallbackFormat: d,
        unresolving: p,
        postTranslation: m,
        processor: g,
        warnHtmlMessage: y,
        escapeParameter: w,
        messageCompiler: B,
        messageResolver: x,
        localeFallbacker: C,
        fallbackContext: b,
        onWarn: F,
        __meta: U
    };
    return Q.datetimeFormats = i, Q.numberFormats = s, Q.__datetimeFormatters = I, Q.__numberFormatters = D, __INTLIFY_PROD_DEVTOOLS__ && rK(Q, t, U), Q
}

function Hp(e, t, n, r, A) {
    const {
        missing: i,
        onWarn: s
    } = e;
    if (i !== null) {
        const a = i(e, n, t, A);
        return We(a) ? a : t
    } else return t
}

function tl(e, t, n) {
    const r = e;
    r.__localeChainCache = new Map, e.localeFallbacker(e, n, t)
}
const vK = e => e;
let Dv = Object.create(null);

function mK(e, t = {}) {
    {
        const r = (t.onCacheKey || vK)(e),
            A = Dv[r];
        if (A) return A;
        let i = !1;
        const s = t.onError || B$;
        t.onError = l => {
            i = !0, s(l)
        };
        const {
            code: a
        } = M$(e, t), o = new Function(`return ${a}`)();
        return i ? o : Dv[r] = o
    }
}
let Dw = Tt.__EXTEND_POINT__;
const Bd = () => ++Dw,
    Na = {
        INVALID_ARGUMENT: Dw,
        INVALID_DATE_ARGUMENT: Bd(),
        INVALID_ISO_DATE_ARGUMENT: Bd(),
        __EXTEND_POINT__: Bd()
    };

function $a(e) {
    return bf(e, null, void 0)
}
const Pv = () => "",
    BA = e => An(e);

function Ov(e, ...t) {
    const {
        fallbackFormat: n,
        postTranslation: r,
        unresolving: A,
        messageCompiler: i,
        fallbackLocale: s,
        messages: a
    } = e, [o, l] = nh(...t), u = bt(l.missingWarn) ? l.missingWarn : e.missingWarn, f = bt(l.fallbackWarn) ? l.fallbackWarn : e.fallbackWarn, d = bt(l.escapeParameter) ? l.escapeParameter : e.escapeParameter, p = !!l.resolvedMessage, m = We(l.default) || bt(l.default) ? bt(l.default) ? i ? o : () => o : l.default : n ? i ? o : () => o : "", g = n || m !== "", y = We(l.locale) ? l.locale : e.locale;
    d && BK(l);
    let [w, B, x] = p ? [o, y, a[y] || {}] : Pw(e, o, y, s, f, u), C = w, b = o;
    if (!p && !(We(C) || BA(C)) && g && (C = m, b = C), !p && (!(We(C) || BA(C)) || !We(B))) return A ? Ff : o;
    let F = !1;
    const T = () => {
            F = !0
        },
        I = BA(C) ? C : Ow(e, o, B, C, b, T);
    if (F) return C;
    const D = CK(e, B, x, l),
        U = tK(D),
        Q = wK(e, I, U),
        O = r ? r(Q, o) : Q;
    if (__INTLIFY_PROD_DEVTOOLS__) {
        const N = {
            timestamp: Date.now(),
            key: We(o) ? o : BA(C) ? C.key : "",
            locale: B || (BA(C) ? C.locale : ""),
            format: We(C) ? C : BA(C) ? C.source : "",
            message: O
        };
        N.meta = Pn({}, e.__meta, hK() || {}), AK(N)
    }
    return O
}

function BK(e) {
    Vt(e.list) ? e.list = e.list.map(t => We(t) ? Cv(t) : t) : Gt(e.named) && Object.keys(e.named).forEach(t => {
        We(e.named[t]) && (e.named[t] = Cv(e.named[t]))
    })
}

function Pw(e, t, n, r, A, i) {
    const {
        messages: s,
        onWarn: a,
        messageResolver: o,
        localeFallbacker: l
    } = e, u = l(e, r, n);
    let f = {},
        d, p = null;
    const m = "translate";
    for (let g = 0; g < u.length && (d = u[g], f = s[d] || {}, (p = o(f, t)) === null && (p = f[t]), !(We(p) || An(p))); g++) {
        const y = Hp(e, t, d, i, m);
        y !== t && (p = y)
    }
    return [p, d, f]
}

function Ow(e, t, n, r, A, i) {
    const {
        messageCompiler: s,
        warnHtmlMessage: a
    } = e;
    if (BA(r)) {
        const l = r;
        return l.locale = l.locale || n, l.key = l.key || t, l
    }
    if (s == null) {
        const l = () => r;
        return l.locale = n, l.key = t, l
    }
    const o = s(r, yK(e, n, A, r, a, i));
    return o.locale = n, o.key = t, o.source = r, o
}

function wK(e, t, n) {
    return t(n)
}

function nh(...e) {
    const [t, n, r] = e, A = {};
    if (!We(t) && !Cn(t) && !BA(t)) throw $a(Na.INVALID_ARGUMENT);
    const i = Cn(t) ? String(t) : (BA(t), t);
    return Cn(n) ? A.plural = n : We(n) ? A.default = n : pt(n) && !Ef(n) ? A.named = n : Vt(n) && (A.list = n), Cn(r) ? A.plural = r : We(r) ? A.default = r : pt(r) && Pn(A, r), [i, A]
}

function yK(e, t, n, r, A, i) {
    return {
        warnHtmlMessage: A,
        onError: s => {
            throw i && i(s), s
        },
        onCacheKey: s => d$(t, n, s)
    }
}

function CK(e, t, n, r) {
    const {
        modifiers: A,
        pluralRules: i,
        messageResolver: s,
        fallbackLocale: a,
        fallbackWarn: o,
        missingWarn: l,
        fallbackContext: u
    } = e, d = {
        locale: t,
        modifiers: A,
        pluralRules: i,
        messages: p => {
            let m = s(n, p);
            if (m == null && u) {
                const [, , g] = Pw(u, p, t, a, o, l);
                m = s(g, p)
            }
            if (We(m)) {
                let g = !1;
                const w = Ow(e, p, t, m, p, () => {
                    g = !0
                });
                return g ? Pv : w
            } else return BA(m) ? m : Pv
        }
    };
    return e.processor && (d.processor = e.processor), r.list && (d.list = r.list), r.named && (d.named = r.named), Cn(r.plural) && (d.pluralIndex = r.plural), d
}

function Lv(e, ...t) {
    const {
        datetimeFormats: n,
        unresolving: r,
        fallbackLocale: A,
        onWarn: i,
        localeFallbacker: s
    } = e, {
        __datetimeFormatters: a
    } = e, [o, l, u, f] = rh(...t), d = bt(u.missingWarn) ? u.missingWarn : e.missingWarn;
    bt(u.fallbackWarn) ? u.fallbackWarn : e.fallbackWarn;
    const p = !!u.part,
        m = We(u.locale) ? u.locale : e.locale,
        g = s(e, A, m);
    if (!We(o) || o === "") return new Intl.DateTimeFormat(m, f).format(l);
    let y = {},
        w, B = null;
    const x = "datetime format";
    for (let F = 0; F < g.length && (w = g[F], y = n[w] || {}, B = y[o], !pt(B)); F++) Hp(e, o, w, d, x);
    if (!pt(B) || !We(w)) return r ? Ff : o;
    let C = `${w}__${o}`;
    Ef(f) || (C = `${C}__${JSON.stringify(f)}`);
    let b = a.get(C);
    return b || (b = new Intl.DateTimeFormat(w, Pn({}, B, f)), a.set(C, b)), p ? b.formatToParts(l) : b.format(l)
}
const Lw = ["localeMatcher", "weekday", "era", "year", "month", "day", "hour", "minute", "second", "timeZoneName", "formatMatcher", "hour12", "timeZone", "dateStyle", "timeStyle", "calendar", "dayPeriod", "numberingSystem", "hourCycle", "fractionalSecondDigits"];

function rh(...e) {
    const [t, n, r, A] = e, i = {};
    let s = {},
        a;
    if (We(t)) {
        const o = t.match(/(\d{4}-\d{2}-\d{2})(T|\s)?(.*)/);
        if (!o) throw $a(Na.INVALID_ISO_DATE_ARGUMENT);
        const l = o[3] ? o[3].trim().startsWith("T") ? `${o[1].trim()}${o[3].trim()}` : `${o[1].trim()}T${o[3].trim()}` : o[1].trim();
        a = new Date(l);
        try {
            a.toISOString()
        } catch {
            throw $a(Na.INVALID_ISO_DATE_ARGUMENT)
        }
    } else if (p$(t)) {
        if (isNaN(t.getTime())) throw $a(Na.INVALID_DATE_ARGUMENT);
        a = t
    } else if (Cn(t)) a = t;
    else throw $a(Na.INVALID_ARGUMENT);
    return We(n) ? i.key = n : pt(n) && Object.keys(n).forEach(o => {
        Lw.includes(o) ? s[o] = n[o] : i[o] = n[o]
    }), We(r) ? i.locale = r : pt(r) && (s = r), pt(A) && (s = A), [i.key || "", a, i, s]
}

function kv(e, t, n) {
    const r = e;
    for (const A in n) {
        const i = `${t}__${A}`;
        r.__datetimeFormatters.has(i) && r.__datetimeFormatters.delete(i)
    }
}

function Hv(e, ...t) {
    const {
        numberFormats: n,
        unresolving: r,
        fallbackLocale: A,
        onWarn: i,
        localeFallbacker: s
    } = e, {
        __numberFormatters: a
    } = e, [o, l, u, f] = Ah(...t), d = bt(u.missingWarn) ? u.missingWarn : e.missingWarn;
    bt(u.fallbackWarn) ? u.fallbackWarn : e.fallbackWarn;
    const p = !!u.part,
        m = We(u.locale) ? u.locale : e.locale,
        g = s(e, A, m);
    if (!We(o) || o === "") return new Intl.NumberFormat(m, f).format(l);
    let y = {},
        w, B = null;
    const x = "number format";
    for (let F = 0; F < g.length && (w = g[F], y = n[w] || {}, B = y[o], !pt(B)); F++) Hp(e, o, w, d, x);
    if (!pt(B) || !We(w)) return r ? Ff : o;
    let C = `${w}__${o}`;
    Ef(f) || (C = `${C}__${JSON.stringify(f)}`);
    let b = a.get(C);
    return b || (b = new Intl.NumberFormat(w, Pn({}, B, f)), a.set(C, b)), p ? b.formatToParts(l) : b.format(l)
}
const kw = ["localeMatcher", "style", "currency", "currencyDisplay", "currencySign", "useGrouping", "minimumIntegerDigits", "minimumFractionDigits", "maximumFractionDigits", "minimumSignificantDigits", "maximumSignificantDigits", "compactDisplay", "notation", "signDisplay", "unit", "unitDisplay", "roundingMode", "roundingPriority", "roundingIncrement", "trailingZeroDisplay"];

function Ah(...e) {
    const [t, n, r, A] = e, i = {};
    let s = {};
    if (!Cn(t)) throw $a(Na.INVALID_ARGUMENT);
    const a = t;
    return We(n) ? i.key = n : pt(n) && Object.keys(n).forEach(o => {
        kw.includes(o) ? s[o] = n[o] : i[o] = n[o]
    }), We(r) ? i.locale = r : pt(r) && (s = r), pt(A) && (s = A), [i.key || "", a, i, s]
}

function Mv(e, t, n) {
    const r = e;
    for (const A in n) {
        const i = `${t}__${A}`;
        r.__numberFormatters.has(i) && r.__numberFormatters.delete(i)
    }
}
typeof __INTLIFY_PROD_DEVTOOLS__ != "boolean" && (Ul().__INTLIFY_PROD_DEVTOOLS__ = !1);
/*!
 * vue-i18n v9.2.2
 * (c) 2022 kazuya kawaguchi
 * Released under the MIT License.
 */
const xK = "9.2.2";

function EK() {
    typeof __VUE_I18N_FULL_INSTALL__ != "boolean" && (Ul().__VUE_I18N_FULL_INSTALL__ = !0), typeof __VUE_I18N_LEGACY_API__ != "boolean" && (Ul().__VUE_I18N_LEGACY_API__ = !0), typeof __INTLIFY_PROD_DEVTOOLS__ != "boolean" && (Ul().__INTLIFY_PROD_DEVTOOLS__ = !1)
}
let Hw = Tt.__EXTEND_POINT__;
const cr = () => ++Hw,
    dn = {
        UNEXPECTED_RETURN_TYPE: Hw,
        INVALID_ARGUMENT: cr(),
        MUST_BE_CALL_SETUP_TOP: cr(),
        NOT_INSLALLED: cr(),
        NOT_AVAILABLE_IN_LEGACY_MODE: cr(),
        REQUIRED_VALUE: cr(),
        INVALID_VALUE: cr(),
        CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN: cr(),
        NOT_INSLALLED_WITH_PROVIDE: cr(),
        UNEXPECTED_ERROR: cr(),
        NOT_COMPATIBLE_LEGACY_VUE_I18N: cr(),
        BRIDGE_SUPPORT_VUE_2_ONLY: cr(),
        MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION: cr(),
        NOT_AVAILABLE_COMPOSITION_IN_LEGACY: cr(),
        __EXTEND_POINT__: cr()
    };

function bn(e, ...t) {
    return bf(e, null, void 0)
}
const ih = vs("__transrateVNode"),
    sh = vs("__datetimeParts"),
    ah = vs("__numberParts"),
    Mw = vs("__setPluralRules");
vs("__intlifyMeta");
const Rw = vs("__injectWithOption");

function oh(e) {
    if (!Gt(e)) return e;
    for (const t in e)
        if (Op(e, t))
            if (!t.includes(".")) Gt(e[t]) && oh(e[t]);
            else {
                const n = t.split("."),
                    r = n.length - 1;
                let A = e;
                for (let i = 0; i < r; i++) n[i] in A || (A[n[i]] = {}), A = A[n[i]];
                A[n[r]] = e[t], delete e[t], Gt(A[n[r]]) && oh(A[n[r]])
            }
    return e
}

function _f(e, t) {
    const {
        messages: n,
        __i18n: r,
        messageResolver: A,
        flatJson: i
    } = t, s = pt(n) ? n : Vt(r) ? {} : {
        [e]: {}
    };
    if (Vt(r) && r.forEach(a => {
            if ("locale" in a && "resource" in a) {
                const {
                    locale: o,
                    resource: l
                } = a;
                o ? (s[o] = s[o] || {}, Tl(l, s[o])) : Tl(l, s)
            } else We(a) && Tl(JSON.parse(a), s)
        }), A == null && i)
        for (const a in s) Op(s, a) && oh(s[a]);
    return s
}
const lu = e => !Gt(e) || Vt(e);

function Tl(e, t) {
    if (lu(e) || lu(t)) throw bn(dn.INVALID_VALUE);
    for (const n in e) Op(e, n) && (lu(e[n]) || lu(t[n]) ? t[n] = e[n] : Tl(e[n], t[n]))
}

function Nw(e) {
    return e.type
}

function $w(e, t, n) {
    let r = Gt(t.messages) ? t.messages : {};
    "__i18nGlobal" in n && (r = _f(e.locale.value, {
        messages: r,
        __i18n: n.__i18nGlobal
    }));
    const A = Object.keys(r);
    A.length && A.forEach(i => {
        e.mergeLocaleMessage(i, r[i])
    }); {
        if (Gt(t.datetimeFormats)) {
            const i = Object.keys(t.datetimeFormats);
            i.length && i.forEach(s => {
                e.mergeDateTimeFormat(s, t.datetimeFormats[s])
            })
        }
        if (Gt(t.numberFormats)) {
            const i = Object.keys(t.numberFormats);
            i.length && i.forEach(s => {
                e.mergeNumberFormat(s, t.numberFormats[s])
            })
        }
    }
}

function Rv(e) {
    return Z(rs, null, e, 0)
}
const Nv = "__INTLIFY_META__";
let $v = 0;

function Kv(e) {
    return (t, n, r, A) => e(n, r, zt() || void 0, A)
}
const bK = () => {
    const e = zt();
    let t = null;
    return e && (t = Nw(e)[Nv]) ? {
        [Nv]: t
    } : null
};

function Mp(e = {}, t) {
    const {
        __root: n
    } = e, r = n === void 0;
    let A = bt(e.inheritLocale) ? e.inheritLocale : !0;
    const i = Ue(n && A ? n.locale.value : We(e.locale) ? e.locale : b0),
        s = Ue(n && A ? n.fallbackLocale.value : We(e.fallbackLocale) || Vt(e.fallbackLocale) || pt(e.fallbackLocale) || e.fallbackLocale === !1 ? e.fallbackLocale : i.value),
        a = Ue(_f(i.value, e)),
        o = Ue(pt(e.datetimeFormats) ? e.datetimeFormats : {
            [i.value]: {}
        }),
        l = Ue(pt(e.numberFormats) ? e.numberFormats : {
            [i.value]: {}
        });
    let u = n ? n.missingWarn : bt(e.missingWarn) || os(e.missingWarn) ? e.missingWarn : !0,
        f = n ? n.fallbackWarn : bt(e.fallbackWarn) || os(e.fallbackWarn) ? e.fallbackWarn : !0,
        d = n ? n.fallbackRoot : bt(e.fallbackRoot) ? e.fallbackRoot : !0,
        p = !!e.fallbackFormat,
        m = An(e.missing) ? e.missing : null,
        g = An(e.missing) ? Kv(e.missing) : null,
        y = An(e.postTranslation) ? e.postTranslation : null,
        w = n ? n.warnHtmlMessage : bt(e.warnHtmlMessage) ? e.warnHtmlMessage : !0,
        B = !!e.escapeParameter;
    const x = n ? n.modifiers : pt(e.modifiers) ? e.modifiers : {};
    let C = e.pluralRules || n && n.pluralRules,
        b;
    b = (() => {
        r && Tv(null);
        const we = {
            version: xK,
            locale: i.value,
            fallbackLocale: s.value,
            messages: a.value,
            modifiers: x,
            pluralRules: C,
            missing: g === null ? void 0 : g,
            missingWarn: u,
            fallbackWarn: f,
            fallbackFormat: p,
            unresolving: !0,
            postTranslation: y === null ? void 0 : y,
            warnHtmlMessage: w,
            escapeParameter: B,
            messageResolver: e.messageResolver,
            __meta: {
                framework: "vue"
            }
        };
        we.datetimeFormats = o.value, we.numberFormats = l.value, we.__datetimeFormatters = pt(b) ? b.__datetimeFormatters : void 0, we.__numberFormatters = pt(b) ? b.__numberFormatters : void 0;
        const he = gK(we);
        return r && Tv(he), he
    })(), tl(b, i.value, s.value);

    function T() {
        return [i.value, s.value, a.value, o.value, l.value]
    }
    const I = Oe({
            get: () => i.value,
            set: we => {
                i.value = we, b.locale = i.value
            }
        }),
        D = Oe({
            get: () => s.value,
            set: we => {
                s.value = we, b.fallbackLocale = s.value, tl(b, i.value, we)
            }
        }),
        U = Oe(() => a.value),
        Q = Oe(() => o.value),
        O = Oe(() => l.value);

    function N() {
        return An(y) ? y : null
    }

    function J(we) {
        y = we, b.postTranslation = we
    }

    function j() {
        return m
    }

    function V(we) {
        we !== null && (g = Kv(we)), m = we, b.missing = g
    }
    const ae = (we, he, Ke, Je, ot, gt) => {
        T();
        let Bt;
        if (__INTLIFY_PROD_DEVTOOLS__) try {
            Uv(bK()), r || (b.fallbackContext = n ? pK() : void 0), Bt = we(b)
        } finally {
            Uv(null), r || (b.fallbackContext = void 0)
        } else Bt = we(b);
        if (Cn(Bt) && Bt === Ff) {
            const [kt, Hn] = he();
            return n && d ? Je(n) : ot(kt)
        } else {
            if (gt(Bt)) return Bt;
            throw bn(dn.UNEXPECTED_RETURN_TYPE)
        }
    };

    function Y(...we) {
        return ae(he => Reflect.apply(Ov, null, [he, ...we]), () => nh(...we), "translate", he => Reflect.apply(he.t, he, [...we]), he => he, he => We(he))
    }

    function ue(...we) {
        const [he, Ke, Je] = we;
        if (Je && !Gt(Je)) throw bn(dn.INVALID_ARGUMENT);
        return Y(he, Ke, Pn({
            resolvedMessage: !0
        }, Je || {}))
    }

    function ye(...we) {
        return ae(he => Reflect.apply(Lv, null, [he, ...we]), () => rh(...we), "datetime format", he => Reflect.apply(he.d, he, [...we]), () => Sv, he => We(he))
    }

    function ee(...we) {
        return ae(he => Reflect.apply(Hv, null, [he, ...we]), () => Ah(...we), "number format", he => Reflect.apply(he.n, he, [...we]), () => Sv, he => We(he))
    }

    function ce(we) {
        return we.map(he => We(he) || Cn(he) || bt(he) ? Rv(String(he)) : he)
    }
    const xe = {
        normalize: ce,
        interpolate: we => we,
        type: "vnode"
    };

    function se(...we) {
        return ae(he => {
            let Ke;
            const Je = he;
            try {
                Je.processor = xe, Ke = Reflect.apply(Ov, null, [Je, ...we])
            } finally {
                Je.processor = null
            }
            return Ke
        }, () => nh(...we), "translate", he => he[ih](...we), he => [Rv(he)], he => Vt(he))
    }

    function Fe(...we) {
        return ae(he => Reflect.apply(Hv, null, [he, ...we]), () => Ah(...we), "number format", he => he[ah](...we), () => [], he => We(he) || Vt(he))
    }

    function ie(...we) {
        return ae(he => Reflect.apply(Lv, null, [he, ...we]), () => rh(...we), "datetime format", he => he[sh](...we), () => [], he => We(he) || Vt(he))
    }

    function _e(we) {
        C = we, b.pluralRules = C
    }

    function De(we, he) {
        const Ke = We(he) ? he : i.value,
            Je = W(Ke);
        return b.messageResolver(Je, we) !== null
    }

    function $e(we) {
        let he = null;
        const Ke = _w(b, s.value, i.value);
        for (let Je = 0; Je < Ke.length; Je++) {
            const ot = a.value[Ke[Je]] || {},
                gt = b.messageResolver(ot, we);
            if (gt != null) {
                he = gt;
                break
            }
        }
        return he
    }

    function Te(we) {
        const he = $e(we);
        return he ? ? (n ? n.tm(we) || {} : {})
    }

    function W(we) {
        return a.value[we] || {}
    }

    function P(we, he) {
        a.value[we] = he, b.messages = a.value
    }

    function M(we, he) {
        a.value[we] = a.value[we] || {}, Tl(he, a.value[we]), b.messages = a.value
    }

    function te(we) {
        return o.value[we] || {}
    }

    function Be(we, he) {
        o.value[we] = he, b.datetimeFormats = o.value, kv(b, we, he)
    }

    function Ie(we, he) {
        o.value[we] = Pn(o.value[we] || {}, he), b.datetimeFormats = o.value, kv(b, we, he)
    }

    function Le(we) {
        return l.value[we] || {}
    }

    function He(we, he) {
        l.value[we] = he, b.numberFormats = l.value, Mv(b, we, he)
    }

    function Ne(we, he) {
        l.value[we] = Pn(l.value[we] || {}, he), b.numberFormats = l.value, Mv(b, we, he)
    }
    $v++, n && eh && (je(n.locale, we => {
        A && (i.value = we, b.locale = we, tl(b, i.value, s.value))
    }), je(n.fallbackLocale, we => {
        A && (s.value = we, b.fallbackLocale = we, tl(b, i.value, s.value))
    }));
    const Pe = {
        id: $v,
        locale: I,
        fallbackLocale: D,
        get inheritLocale() {
            return A
        },
        set inheritLocale(we) {
            A = we, we && n && (i.value = n.locale.value, s.value = n.fallbackLocale.value, tl(b, i.value, s.value))
        },
        get availableLocales() {
            return Object.keys(a.value).sort()
        },
        messages: U,
        get modifiers() {
            return x
        },
        get pluralRules() {
            return C || {}
        },
        get isGlobal() {
            return r
        },
        get missingWarn() {
            return u
        },
        set missingWarn(we) {
            u = we, b.missingWarn = u
        },
        get fallbackWarn() {
            return f
        },
        set fallbackWarn(we) {
            f = we, b.fallbackWarn = f
        },
        get fallbackRoot() {
            return d
        },
        set fallbackRoot(we) {
            d = we
        },
        get fallbackFormat() {
            return p
        },
        set fallbackFormat(we) {
            p = we, b.fallbackFormat = p
        },
        get warnHtmlMessage() {
            return w
        },
        set warnHtmlMessage(we) {
            w = we, b.warnHtmlMessage = we
        },
        get escapeParameter() {
            return B
        },
        set escapeParameter(we) {
            B = we, b.escapeParameter = we
        },
        t: Y,
        getLocaleMessage: W,
        setLocaleMessage: P,
        mergeLocaleMessage: M,
        getPostTranslationHandler: N,
        setPostTranslationHandler: J,
        getMissingHandler: j,
        setMissingHandler: V,
        [Mw]: _e
    };
    return Pe.datetimeFormats = Q, Pe.numberFormats = O, Pe.rt = ue, Pe.te = De, Pe.tm = Te, Pe.d = ye, Pe.n = ee, Pe.getDateTimeFormat = te, Pe.setDateTimeFormat = Be, Pe.mergeDateTimeFormat = Ie, Pe.getNumberFormat = Le, Pe.setNumberFormat = He, Pe.mergeNumberFormat = Ne, Pe[Rw] = e.__injectWithOption, Pe[ih] = se, Pe[sh] = ie, Pe[ah] = Fe, Pe
}

function FK(e) {
    const t = We(e.locale) ? e.locale : b0,
        n = We(e.fallbackLocale) || Vt(e.fallbackLocale) || pt(e.fallbackLocale) || e.fallbackLocale === !1 ? e.fallbackLocale : t,
        r = An(e.missing) ? e.missing : void 0,
        A = bt(e.silentTranslationWarn) || os(e.silentTranslationWarn) ? !e.silentTranslationWarn : !0,
        i = bt(e.silentFallbackWarn) || os(e.silentFallbackWarn) ? !e.silentFallbackWarn : !0,
        s = bt(e.fallbackRoot) ? e.fallbackRoot : !0,
        a = !!e.formatFallbackMessages,
        o = pt(e.modifiers) ? e.modifiers : {},
        l = e.pluralizationRules,
        u = An(e.postTranslation) ? e.postTranslation : void 0,
        f = We(e.warnHtmlInMessage) ? e.warnHtmlInMessage !== "off" : !0,
        d = !!e.escapeParameterHtml,
        p = bt(e.sync) ? e.sync : !0;
    let m = e.messages;
    if (pt(e.sharedMessages)) {
        const b = e.sharedMessages;
        m = Object.keys(b).reduce((T, I) => {
            const D = T[I] || (T[I] = {});
            return Pn(D, b[I]), T
        }, m || {})
    }
    const {
        __i18n: g,
        __root: y,
        __injectWithOption: w
    } = e, B = e.datetimeFormats, x = e.numberFormats, C = e.flatJson;
    return {
        locale: t,
        fallbackLocale: n,
        messages: m,
        flatJson: C,
        datetimeFormats: B,
        numberFormats: x,
        missing: r,
        missingWarn: A,
        fallbackWarn: i,
        fallbackRoot: s,
        fallbackFormat: a,
        modifiers: o,
        pluralRules: l,
        postTranslation: u,
        warnHtmlMessage: f,
        escapeParameter: d,
        messageResolver: e.messageResolver,
        inheritLocale: p,
        __i18n: g,
        __root: y,
        __injectWithOption: w
    }
}

function lh(e = {}, t) {
    {
        const n = Mp(FK(e)),
            r = {
                id: n.id,
                get locale() {
                    return n.locale.value
                },
                set locale(A) {
                    n.locale.value = A
                },
                get fallbackLocale() {
                    return n.fallbackLocale.value
                },
                set fallbackLocale(A) {
                    n.fallbackLocale.value = A
                },
                get messages() {
                    return n.messages.value
                },
                get datetimeFormats() {
                    return n.datetimeFormats.value
                },
                get numberFormats() {
                    return n.numberFormats.value
                },
                get availableLocales() {
                    return n.availableLocales
                },
                get formatter() {
                    return {
                        interpolate() {
                            return []
                        }
                    }
                },
                set formatter(A) {},
                get missing() {
                    return n.getMissingHandler()
                },
                set missing(A) {
                    n.setMissingHandler(A)
                },
                get silentTranslationWarn() {
                    return bt(n.missingWarn) ? !n.missingWarn : n.missingWarn
                },
                set silentTranslationWarn(A) {
                    n.missingWarn = bt(A) ? !A : A
                },
                get silentFallbackWarn() {
                    return bt(n.fallbackWarn) ? !n.fallbackWarn : n.fallbackWarn
                },
                set silentFallbackWarn(A) {
                    n.fallbackWarn = bt(A) ? !A : A
                },
                get modifiers() {
                    return n.modifiers
                },
                get formatFallbackMessages() {
                    return n.fallbackFormat
                },
                set formatFallbackMessages(A) {
                    n.fallbackFormat = A
                },
                get postTranslation() {
                    return n.getPostTranslationHandler()
                },
                set postTranslation(A) {
                    n.setPostTranslationHandler(A)
                },
                get sync() {
                    return n.inheritLocale
                },
                set sync(A) {
                    n.inheritLocale = A
                },
                get warnHtmlInMessage() {
                    return n.warnHtmlMessage ? "warn" : "off"
                },
                set warnHtmlInMessage(A) {
                    n.warnHtmlMessage = A !== "off"
                },
                get escapeParameterHtml() {
                    return n.escapeParameter
                },
                set escapeParameterHtml(A) {
                    n.escapeParameter = A
                },
                get preserveDirectiveContent() {
                    return !0
                },
                set preserveDirectiveContent(A) {},
                get pluralizationRules() {
                    return n.pluralRules || {}
                },
                __composer: n,
                t(...A) {
                    const [i, s, a] = A, o = {};
                    let l = null,
                        u = null;
                    if (!We(i)) throw bn(dn.INVALID_ARGUMENT);
                    const f = i;
                    return We(s) ? o.locale = s : Vt(s) ? l = s : pt(s) && (u = s), Vt(a) ? l = a : pt(a) && (u = a), Reflect.apply(n.t, n, [f, l || u || {}, o])
                },
                rt(...A) {
                    return Reflect.apply(n.rt, n, [...A])
                },
                tc(...A) {
                    const [i, s, a] = A, o = {
                        plural: 1
                    };
                    let l = null,
                        u = null;
                    if (!We(i)) throw bn(dn.INVALID_ARGUMENT);
                    const f = i;
                    return We(s) ? o.locale = s : Cn(s) ? o.plural = s : Vt(s) ? l = s : pt(s) && (u = s), We(a) ? o.locale = a : Vt(a) ? l = a : pt(a) && (u = a), Reflect.apply(n.t, n, [f, l || u || {}, o])
                },
                te(A, i) {
                    return n.te(A, i)
                },
                tm(A) {
                    return n.tm(A)
                },
                getLocaleMessage(A) {
                    return n.getLocaleMessage(A)
                },
                setLocaleMessage(A, i) {
                    n.setLocaleMessage(A, i)
                },
                mergeLocaleMessage(A, i) {
                    n.mergeLocaleMessage(A, i)
                },
                d(...A) {
                    return Reflect.apply(n.d, n, [...A])
                },
                getDateTimeFormat(A) {
                    return n.getDateTimeFormat(A)
                },
                setDateTimeFormat(A, i) {
                    n.setDateTimeFormat(A, i)
                },
                mergeDateTimeFormat(A, i) {
                    n.mergeDateTimeFormat(A, i)
                },
                n(...A) {
                    return Reflect.apply(n.n, n, [...A])
                },
                getNumberFormat(A) {
                    return n.getNumberFormat(A)
                },
                setNumberFormat(A, i) {
                    n.setNumberFormat(A, i)
                },
                mergeNumberFormat(A, i) {
                    n.mergeNumberFormat(A, i)
                },
                getChoiceIndex(A, i) {
                    return -1
                },
                __onComponentInstanceCreated(A) {
                    const {
                        componentInstanceCreatedListener: i
                    } = e;
                    i && i(A, r)
                }
            };
        return r
    }
}
const Rp = {
    tag: {
        type: [String, Object]
    },
    locale: {
        type: String
    },
    scope: {
        type: String,
        validator: e => e === "parent" || e === "global",
        default: "parent"
    },
    i18n: {
        type: Object
    }
};

function _K({
    slots: e
}, t) {
    return t.length === 1 && t[0] === "default" ? (e.default ? e.default() : []).reduce((r, A) => r = [...r, ...Vt(A.children) ? A.children : [A]], []) : t.reduce((n, r) => {
        const A = e[r];
        return A && (n[r] = A()), n
    }, {})
}

function Kw(e) {
    return rn
}
const Vv = {
    name: "i18n-t",
    props: Pn({
        keypath: {
            type: String,
            required: !0
        },
        plural: {
            type: [Number, String],
            validator: e => Cn(e) || !isNaN(e)
        }
    }, Rp),
    setup(e, t) {
        const {
            slots: n,
            attrs: r
        } = t, A = e.i18n || Np({
            useScope: e.scope,
            __useComponent: !0
        });
        return () => {
            const i = Object.keys(n).filter(f => f !== "_"),
                s = {};
            e.locale && (s.locale = e.locale), e.plural !== void 0 && (s.plural = We(e.plural) ? +e.plural : e.plural);
            const a = _K(t, i),
                o = A[ih](e.keypath, a, s),
                l = Pn({}, r),
                u = We(e.tag) || Gt(e.tag) ? e.tag : Kw();
            return Tn(u, l, o)
        }
    }
};

function SK(e) {
    return Vt(e) && !We(e[0])
}

function Vw(e, t, n, r) {
    const {
        slots: A,
        attrs: i
    } = t;
    return () => {
        const s = {
            part: !0
        };
        let a = {};
        e.locale && (s.locale = e.locale), We(e.format) ? s.key = e.format : Gt(e.format) && (We(e.format.key) && (s.key = e.format.key), a = Object.keys(e.format).reduce((d, p) => n.includes(p) ? Pn({}, d, {
            [p]: e.format[p]
        }) : d, {}));
        const o = r(e.value, s, a);
        let l = [s.key];
        Vt(o) ? l = o.map((d, p) => {
            const m = A[d.type],
                g = m ? m({
                    [d.type]: d.value,
                    index: p,
                    parts: o
                }) : [d.value];
            return SK(g) && (g[0].key = `${d.type}-${p}`), g
        }) : We(o) && (l = [o]);
        const u = Pn({}, i),
            f = We(e.tag) || Gt(e.tag) ? e.tag : Kw();
        return Tn(f, u, l)
    }
}
const Gv = {
        name: "i18n-n",
        props: Pn({
            value: {
                type: Number,
                required: !0
            },
            format: {
                type: [String, Object]
            }
        }, Rp),
        setup(e, t) {
            const n = e.i18n || Np({
                useScope: "parent",
                __useComponent: !0
            });
            return Vw(e, t, kw, (...r) => n[ah](...r))
        }
    },
    zv = {
        name: "i18n-d",
        props: Pn({
            value: {
                type: [Number, Date],
                required: !0
            },
            format: {
                type: [String, Object]
            }
        }, Rp),
        setup(e, t) {
            const n = e.i18n || Np({
                useScope: "parent",
                __useComponent: !0
            });
            return Vw(e, t, Lw, (...r) => n[sh](...r))
        }
    };

function QK(e, t) {
    const n = e;
    if (e.mode === "composition") return n.__getInstance(t) || e.global; {
        const r = n.__getInstance(t);
        return r != null ? r.__composer : e.global.__composer
    }
}

function UK(e) {
    const t = s => {
        const {
            instance: a,
            modifiers: o,
            value: l
        } = s;
        if (!a || !a.$) throw bn(dn.UNEXPECTED_ERROR);
        const u = QK(e, a.$),
            f = Wv(l);
        return [Reflect.apply(u.t, u, [...jv(f)]), u]
    };
    return {
        created: (s, a) => {
            const [o, l] = t(a);
            eh && e.global === l && (s.__i18nWatcher = je(l.locale, () => {
                a.instance && a.instance.$forceUpdate()
            })), s.__composer = l, s.textContent = o
        },
        unmounted: s => {
            eh && s.__i18nWatcher && (s.__i18nWatcher(), s.__i18nWatcher = void 0, delete s.__i18nWatcher), s.__composer && (s.__composer = void 0, delete s.__composer)
        },
        beforeUpdate: (s, {
            value: a
        }) => {
            if (s.__composer) {
                const o = s.__composer,
                    l = Wv(a);
                s.textContent = Reflect.apply(o.t, o, [...jv(l)])
            }
        },
        getSSRProps: s => {
            const [a] = t(s);
            return {
                textContent: a
            }
        }
    }
}

function Wv(e) {
    if (We(e)) return {
        path: e
    };
    if (pt(e)) {
        if (!("path" in e)) throw bn(dn.REQUIRED_VALUE, "path");
        return e
    } else throw bn(dn.INVALID_VALUE)
}

function jv(e) {
    const {
        path: t,
        locale: n,
        args: r,
        choice: A,
        plural: i
    } = e, s = {}, a = r || {};
    return We(n) && (s.locale = n), Cn(A) && (s.plural = A), Cn(i) && (s.plural = i), [t, a, s]
}

function TK(e, t, ...n) {
    const r = pt(n[0]) ? n[0] : {},
        A = !!r.useI18nComponentName;
    (bt(r.globalInstall) ? r.globalInstall : !0) && (e.component(A ? "i18n" : Vv.name, Vv), e.component(Gv.name, Gv), e.component(zv.name, zv)), e.directive("t", UK(t))
}

function IK(e, t, n) {
    return {
        beforeCreate() {
            const r = zt();
            if (!r) throw bn(dn.UNEXPECTED_ERROR);
            const A = this.$options;
            if (A.i18n) {
                const i = A.i18n;
                A.__i18n && (i.__i18n = A.__i18n), i.__root = t, this === this.$root ? this.$i18n = Yv(e, i) : (i.__injectWithOption = !0, this.$i18n = lh(i))
            } else A.__i18n ? this === this.$root ? this.$i18n = Yv(e, A) : this.$i18n = lh({
                __i18n: A.__i18n,
                __injectWithOption: !0,
                __root: t
            }) : this.$i18n = e;
            A.__i18nGlobal && $w(t, A, A), e.__onComponentInstanceCreated(this.$i18n), n.__setInstance(r, this.$i18n), this.$t = (...i) => this.$i18n.t(...i), this.$rt = (...i) => this.$i18n.rt(...i), this.$tc = (...i) => this.$i18n.tc(...i), this.$te = (i, s) => this.$i18n.te(i, s), this.$d = (...i) => this.$i18n.d(...i), this.$n = (...i) => this.$i18n.n(...i), this.$tm = i => this.$i18n.tm(i)
        },
        mounted() {},
        unmounted() {
            const r = zt();
            if (!r) throw bn(dn.UNEXPECTED_ERROR);
            delete this.$t, delete this.$rt, delete this.$tc, delete this.$te, delete this.$d, delete this.$n, delete this.$tm, n.__deleteInstance(r), delete this.$i18n
        }
    }
}

function Yv(e, t) {
    e.locale = t.locale || e.locale, e.fallbackLocale = t.fallbackLocale || e.fallbackLocale, e.missing = t.missing || e.missing, e.silentTranslationWarn = t.silentTranslationWarn || e.silentFallbackWarn, e.silentFallbackWarn = t.silentFallbackWarn || e.silentFallbackWarn, e.formatFallbackMessages = t.formatFallbackMessages || e.formatFallbackMessages, e.postTranslation = t.postTranslation || e.postTranslation, e.warnHtmlInMessage = t.warnHtmlInMessage || e.warnHtmlInMessage, e.escapeParameterHtml = t.escapeParameterHtml || e.escapeParameterHtml, e.sync = t.sync || e.sync, e.__composer[Mw](t.pluralizationRules || e.pluralizationRules);
    const n = _f(e.locale, {
        messages: t.messages,
        __i18n: t.__i18n
    });
    return Object.keys(n).forEach(r => e.mergeLocaleMessage(r, n[r])), t.datetimeFormats && Object.keys(t.datetimeFormats).forEach(r => e.mergeDateTimeFormat(r, t.datetimeFormats[r])), t.numberFormats && Object.keys(t.numberFormats).forEach(r => e.mergeNumberFormat(r, t.numberFormats[r])), e
}
const DK = vs("global-vue-i18n");

function Ine(e = {}, t) {
    const n = __VUE_I18N_LEGACY_API__ && bt(e.legacy) ? e.legacy : __VUE_I18N_LEGACY_API__,
        r = bt(e.globalInjection) ? e.globalInjection : !0,
        A = __VUE_I18N_LEGACY_API__ && n ? !!e.allowComposition : !0,
        i = new Map,
        [s, a] = PK(e, n),
        o = vs("");

    function l(d) {
        return i.get(d) || null
    }

    function u(d, p) {
        i.set(d, p)
    }

    function f(d) {
        i.delete(d)
    } {
        const d = {
            get mode() {
                return __VUE_I18N_LEGACY_API__ && n ? "legacy" : "composition"
            },
            get allowComposition() {
                return A
            },
            async install(p, ...m) {
                p.__VUE_I18N_SYMBOL__ = o, p.provide(p.__VUE_I18N_SYMBOL__, d), !n && r && KK(p, d.global), __VUE_I18N_FULL_INSTALL__ && TK(p, d, ...m), __VUE_I18N_LEGACY_API__ && n && p.mixin(IK(a, a.__composer, d));
                const g = p.unmount;
                p.unmount = () => {
                    d.dispose(), g()
                }
            },
            get global() {
                return a
            },
            dispose() {
                s.stop()
            },
            __instances: i,
            __getInstance: l,
            __setInstance: u,
            __deleteInstance: f
        };
        return d
    }
}

function Np(e = {}) {
    const t = zt();
    if (t == null) throw bn(dn.MUST_BE_CALL_SETUP_TOP);
    if (!t.isCE && t.appContext.app != null && !t.appContext.app.__VUE_I18N_SYMBOL__) throw bn(dn.NOT_INSLALLED);
    const n = OK(t),
        r = kK(n),
        A = Nw(t),
        i = LK(e, A);
    if (__VUE_I18N_LEGACY_API__ && n.mode === "legacy" && !e.__useComponent) {
        if (!n.allowComposition) throw bn(dn.NOT_AVAILABLE_IN_LEGACY_MODE);
        return RK(t, i, r, e)
    }
    if (i === "global") return $w(r, e, A), r;
    if (i === "parent") {
        let o = HK(n, t, e.__useComponent);
        return o == null && (o = r), o
    }
    const s = n;
    let a = s.__getInstance(t);
    if (a == null) {
        const o = Pn({}, e);
        "__i18n" in A && (o.__i18n = A.__i18n), r && (o.__root = r), a = Mp(o), MK(s, t), s.__setInstance(t, a)
    }
    return a
}

function PK(e, t, n) {
    const r = Pc(); {
        const A = __VUE_I18N_LEGACY_API__ && t ? r.run(() => lh(e)) : r.run(() => Mp(e));
        if (A == null) throw bn(dn.UNEXPECTED_ERROR);
        return [r, A]
    }
}

function OK(e) {
    {
        const t = fn(e.isCE ? DK : e.appContext.app.__VUE_I18N_SYMBOL__);
        if (!t) throw bn(e.isCE ? dn.NOT_INSLALLED_WITH_PROVIDE : dn.UNEXPECTED_ERROR);
        return t
    }
}

function LK(e, t) {
    return Ef(e) ? "__i18n" in t ? "local" : "global" : e.useScope ? e.useScope : "local"
}

function kK(e) {
    return e.mode === "composition" ? e.global : e.global.__composer
}

function HK(e, t, n = !1) {
    let r = null;
    const A = t.root;
    let i = t.parent;
    for (; i != null;) {
        const s = e;
        if (e.mode === "composition") r = s.__getInstance(i);
        else if (__VUE_I18N_LEGACY_API__) {
            const a = s.__getInstance(i);
            a != null && (r = a.__composer, n && r && !r[Rw] && (r = null))
        }
        if (r != null || A === i) break;
        i = i.parent
    }
    return r
}

function MK(e, t, n) {
    qt(() => {}, t), fi(() => {
        e.__deleteInstance(t)
    }, t)
}

function RK(e, t, n, r = {}) {
    const A = t === "local",
        i = Rc(null);
    if (A && e.proxy && !(e.proxy.$options.i18n || e.proxy.$options.__i18n)) throw bn(dn.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);
    const s = bt(r.inheritLocale) ? r.inheritLocale : !0,
        a = Ue(A && s ? n.locale.value : We(r.locale) ? r.locale : b0),
        o = Ue(A && s ? n.fallbackLocale.value : We(r.fallbackLocale) || Vt(r.fallbackLocale) || pt(r.fallbackLocale) || r.fallbackLocale === !1 ? r.fallbackLocale : a.value),
        l = Ue(_f(a.value, r)),
        u = Ue(pt(r.datetimeFormats) ? r.datetimeFormats : {
            [a.value]: {}
        }),
        f = Ue(pt(r.numberFormats) ? r.numberFormats : {
            [a.value]: {}
        }),
        d = A ? n.missingWarn : bt(r.missingWarn) || os(r.missingWarn) ? r.missingWarn : !0,
        p = A ? n.fallbackWarn : bt(r.fallbackWarn) || os(r.fallbackWarn) ? r.fallbackWarn : !0,
        m = A ? n.fallbackRoot : bt(r.fallbackRoot) ? r.fallbackRoot : !0,
        g = !!r.fallbackFormat,
        y = An(r.missing) ? r.missing : null,
        w = An(r.postTranslation) ? r.postTranslation : null,
        B = A ? n.warnHtmlMessage : bt(r.warnHtmlMessage) ? r.warnHtmlMessage : !0,
        x = !!r.escapeParameter,
        C = A ? n.modifiers : pt(r.modifiers) ? r.modifiers : {},
        b = r.pluralRules || A && n.pluralRules;

    function F() {
        return [a.value, o.value, l.value, u.value, f.value]
    }
    const T = Oe({
            get: () => i.value ? i.value.locale.value : a.value,
            set: M => {
                i.value && (i.value.locale.value = M), a.value = M
            }
        }),
        I = Oe({
            get: () => i.value ? i.value.fallbackLocale.value : o.value,
            set: M => {
                i.value && (i.value.fallbackLocale.value = M), o.value = M
            }
        }),
        D = Oe(() => i.value ? i.value.messages.value : l.value),
        U = Oe(() => u.value),
        Q = Oe(() => f.value);

    function O() {
        return i.value ? i.value.getPostTranslationHandler() : w
    }

    function N(M) {
        i.value && i.value.setPostTranslationHandler(M)
    }

    function J() {
        return i.value ? i.value.getMissingHandler() : y
    }

    function j(M) {
        i.value && i.value.setMissingHandler(M)
    }

    function V(M) {
        return F(), M()
    }

    function ae(...M) {
        return i.value ? V(() => Reflect.apply(i.value.t, null, [...M])) : V(() => "")
    }

    function Y(...M) {
        return i.value ? Reflect.apply(i.value.rt, null, [...M]) : ""
    }

    function ue(...M) {
        return i.value ? V(() => Reflect.apply(i.value.d, null, [...M])) : V(() => "")
    }

    function ye(...M) {
        return i.value ? V(() => Reflect.apply(i.value.n, null, [...M])) : V(() => "")
    }

    function ee(M) {
        return i.value ? i.value.tm(M) : {}
    }

    function ce(M, te) {
        return i.value ? i.value.te(M, te) : !1
    }

    function ve(M) {
        return i.value ? i.value.getLocaleMessage(M) : {}
    }

    function xe(M, te) {
        i.value && (i.value.setLocaleMessage(M, te), l.value[M] = te)
    }

    function se(M, te) {
        i.value && i.value.mergeLocaleMessage(M, te)
    }

    function Fe(M) {
        return i.value ? i.value.getDateTimeFormat(M) : {}
    }

    function ie(M, te) {
        i.value && (i.value.setDateTimeFormat(M, te), u.value[M] = te)
    }

    function _e(M, te) {
        i.value && i.value.mergeDateTimeFormat(M, te)
    }

    function De(M) {
        return i.value ? i.value.getNumberFormat(M) : {}
    }

    function $e(M, te) {
        i.value && (i.value.setNumberFormat(M, te), f.value[M] = te)
    }

    function Te(M, te) {
        i.value && i.value.mergeNumberFormat(M, te)
    }
    const W = {
        get id() {
            return i.value ? i.value.id : -1
        },
        locale: T,
        fallbackLocale: I,
        messages: D,
        datetimeFormats: U,
        numberFormats: Q,
        get inheritLocale() {
            return i.value ? i.value.inheritLocale : s
        },
        set inheritLocale(M) {
            i.value && (i.value.inheritLocale = M)
        },
        get availableLocales() {
            return i.value ? i.value.availableLocales : Object.keys(l.value)
        },
        get modifiers() {
            return i.value ? i.value.modifiers : C
        },
        get pluralRules() {
            return i.value ? i.value.pluralRules : b
        },
        get isGlobal() {
            return i.value ? i.value.isGlobal : !1
        },
        get missingWarn() {
            return i.value ? i.value.missingWarn : d
        },
        set missingWarn(M) {
            i.value && (i.value.missingWarn = M)
        },
        get fallbackWarn() {
            return i.value ? i.value.fallbackWarn : p
        },
        set fallbackWarn(M) {
            i.value && (i.value.missingWarn = M)
        },
        get fallbackRoot() {
            return i.value ? i.value.fallbackRoot : m
        },
        set fallbackRoot(M) {
            i.value && (i.value.fallbackRoot = M)
        },
        get fallbackFormat() {
            return i.value ? i.value.fallbackFormat : g
        },
        set fallbackFormat(M) {
            i.value && (i.value.fallbackFormat = M)
        },
        get warnHtmlMessage() {
            return i.value ? i.value.warnHtmlMessage : B
        },
        set warnHtmlMessage(M) {
            i.value && (i.value.warnHtmlMessage = M)
        },
        get escapeParameter() {
            return i.value ? i.value.escapeParameter : x
        },
        set escapeParameter(M) {
            i.value && (i.value.escapeParameter = M)
        },
        t: ae,
        getPostTranslationHandler: O,
        setPostTranslationHandler: N,
        getMissingHandler: J,
        setMissingHandler: j,
        rt: Y,
        d: ue,
        n: ye,
        tm: ee,
        te: ce,
        getLocaleMessage: ve,
        setLocaleMessage: xe,
        mergeLocaleMessage: se,
        getDateTimeFormat: Fe,
        setDateTimeFormat: ie,
        mergeDateTimeFormat: _e,
        getNumberFormat: De,
        setNumberFormat: $e,
        mergeNumberFormat: Te
    };

    function P(M) {
        M.locale.value = a.value, M.fallbackLocale.value = o.value, Object.keys(l.value).forEach(te => {
            M.mergeLocaleMessage(te, l.value[te])
        }), Object.keys(u.value).forEach(te => {
            M.mergeDateTimeFormat(te, u.value[te])
        }), Object.keys(f.value).forEach(te => {
            M.mergeNumberFormat(te, f.value[te])
        }), M.escapeParameter = x, M.fallbackFormat = g, M.fallbackRoot = m, M.fallbackWarn = p, M.missingWarn = d, M.warnHtmlMessage = B
    }
    return y6(() => {
        if (e.proxy == null || e.proxy.$i18n == null) throw bn(dn.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);
        const M = i.value = e.proxy.$i18n.__composer;
        t === "global" ? (a.value = M.locale.value, o.value = M.fallbackLocale.value, l.value = M.messages.value, u.value = M.datetimeFormats.value, f.value = M.numberFormats.value) : A && P(M)
    }), W
}
const NK = ["locale", "fallbackLocale", "availableLocales"],
    $K = ["t", "rt", "d", "n", "tm"];

function KK(e, t) {
    const n = Object.create(null);
    NK.forEach(r => {
        const A = Object.getOwnPropertyDescriptor(t, r);
        if (!A) throw bn(dn.UNEXPECTED_ERROR);
        const i = Rt(A.value) ? {
            get() {
                return A.value.value
            },
            set(s) {
                A.value.value = s
            }
        } : {
            get() {
                return A.get && A.get()
            }
        };
        Object.defineProperty(n, r, i)
    }), e.config.globalProperties.$i18n = n, $K.forEach(r => {
        const A = Object.getOwnPropertyDescriptor(t, r);
        if (!A || !A.value) throw bn(dn.UNEXPECTED_ERROR);
        Object.defineProperty(e.config.globalProperties, `$${r}`, A)
    })
}
cK(mK);
fK(W$);
dK(_w);
EK();
if (__INTLIFY_PROD_DEVTOOLS__) {
    const e = Ul();
    e.__INTLIFY__ = !0, nK(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)
}
var Dne = {
        name: "Name",
        tel: "Phone",
        save: "Save",
        clear: "Clear",
        cancel: "Cancel",
        confirm: "Confirm",
        delete: "Delete",
        loading: "Loading...",
        noCoupon: "No coupons",
        nameEmpty: "Please fill in the name",
        addContact: "Add contact",
        telInvalid: "Malformed phone number",
        vanCalendar: {
            end: "End",
            start: "Start",
            title: "Calendar",
            weekdays: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
            monthTitle: (e, t) => `${e}/${t}`,
            rangePrompt: e => `Choose no more than ${e} days`
        },
        vanCascader: {
            select: "Select"
        },
        vanPagination: {
            prev: "Previous",
            next: "Next"
        },
        vanPullRefresh: {
            pulling: "Pull to refresh...",
            loosing: "Loose to refresh..."
        },
        vanSubmitBar: {
            label: "Total:"
        },
        vanCoupon: {
            unlimited: "Unlimited",
            discount: e => `${e*10}% off`,
            condition: e => `At least ${e}`
        },
        vanCouponCell: {
            title: "Coupon",
            count: e => `You have ${e} coupons`
        },
        vanCouponList: {
            exchange: "Exchange",
            close: "Close",
            enable: "Available",
            disabled: "Unavailable",
            placeholder: "Coupon code"
        },
        vanAddressEdit: {
            area: "Area",
            areaEmpty: "Please select a receiving area",
            addressEmpty: "Address can not be empty",
            addressDetail: "Address",
            defaultAddress: "Set as the default address"
        },
        vanAddressList: {
            add: "Add new address"
        }
    },
    Pne = {
        name: "Имя",
        tel: "Телефон",
        save: "Сохранить",
        clear: "Прозрачный",
        cancel: "Отмена",
        confirm: "Подтвердить",
        delete: "Удалить",
        loading: "Загрузка...",
        noCoupon: "Нет купонов",
        nameEmpty: "Пожалуйста укажите имя",
        addContact: "Создать контакт",
        telInvalid: "Некорректный номер телефона",
        vanCalendar: {
            end: "Конец",
            start: "Начало",
            title: "Календарь",
            weekdays: ["ВС", "ПН", "ВТ", "СР", "ЧТ", "ПТ", "СБ"],
            monthTitle: (e, t) => `${e}/${t}`,
            rangePrompt: e => `Укажите более ${e} дней`
        },
        vanCascader: {
            select: "Выбрать"
        },
        vanPagination: {
            prev: "Назад",
            next: "Вперед"
        },
        vanPullRefresh: {
            pulling: "Потяните для обновления...",
            loosing: "Отпустите для обновления..."
        },
        vanSubmitBar: {
            label: "Всего:"
        },
        vanCoupon: {
            unlimited: "Безлимитный",
            discount: e => `${e*10}% скидка`,
            condition: e => `Как минимум ${e}`
        },
        vanCouponCell: {
            title: "Купон",
            count: e => `У вас есть ${e} купонов`
        },
        vanCouponList: {
            exchange: "Обмен",
            close: "Закрыть",
            enable: "Доступно",
            disabled: "Недоступно",
            placeholder: "Код купона"
        },
        vanAddressEdit: {
            area: "Область",
            areaEmpty: "Укажите зону доставки",
            addressEmpty: "Адрес не может быть пустым",
            addressDetail: "Адрес",
            defaultAddress: "Сделать адресом по умолчанию"
        },
        vanAddressList: {
            add: "Новый адрес"
        }
    },
    One = {
        name: "tên",
        tel: "Điện thoại",
        save: "Cứu",
        clear: "Thông thoáng",
        cancel: "Hủy bỏ",
        confirm: "Xác nhận",
        delete: "Xóa",
        loading: "Đang tải ...",
        noCoupon: "Không có phiếu giảm giá",
        nameEmpty: "Vui lòng điền vào tên",
        addContact: "Thêm liên hệ",
        telInvalid: "Số điện thoại không đúng định dạng",
        vanCalendar: {
            end: "Kết thúc",
            start: "Bắt ​​đầu",
            title: "Lịch",
            weekdays: ["chủ nhật", "thứ hai", "thứ ba", "Thứ Tư", "Thứ năm", "Thứ sáu", "thứ bảy"],
            monthTitle: (e, t) => `${e}/${t}`,
            rangePrompt: e => `Chọn không quá ${e} ngày`
        },
        vanCascader: {
            select: "Chọn"
        },
        vanPagination: {
            prev: "Trước đó",
            next: "Tiếp theo"
        },
        vanPullRefresh: {
            pulling: "Kéo để làm mới ...",
            loosing: "Loose để làm mới ..."
        },
        vanSubmitBar: {
            label: "Tổng:"
        },
        vanCoupon: {
            unlimited: "Không giới hạn",
            discount: e => `Chiết khấu ${e*10}%`,
            condition: e => `Ít nhất ${e}`
        },
        vanCouponCell: {
            title: "Phiếu giảm giá",
            count: e => `Bạn có ${e} phiếu giảm giá`
        },
        vanCouponList: {
            exchange: "Trao đổi",
            close: "Đóng",
            enable: "Có sẵn",
            disabled: "Không khả dụng",
            placeholder: "Mã phiếu thưởng"
        },
        vanAddressEdit: {
            area: "Khu vực",
            areaEmpty: "Vui lòng chọn khu vực nhận hàng",
            addressEmpty: "Địa chỉ không được để trống",
            addressDetail: "Địa chỉ",
            defaultAddress: "Đặt làm địa chỉ mặc định"
        },
        vanAddressList: {
            add: "Thêm địa chỉ mới"
        }
    },
    Lne = {
        name: "Nama",
        tel: "Telepon",
        save: "Simpan",
        clear: "Jernih",
        cancel: "Batal",
        confirm: "Konfirmasi",
        delete: "Hapus",
        loading: "Memuat...",
        noCoupon: "Tidak ada kupon",
        nameEmpty: "Silakan isi nama",
        addContact: "Tambahkan kontak",
        telInvalid: "Nomor telepon salah format",
        vanCalendar: {
            end: "Akhir",
            start: "Mulai",
            title: "Kalender",
            weekdays: ["minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu"],
            monthTitle: (e, t) => `${e}/${t}`,
            rangePrompt: e => `Pilih tidak lebih dari ${e} hari`
        },
        vanCascader: {
            select: "Pilih"
        },
        vanPagination: {
            prev: "Sebelumnya",
            next: "Selanjutnya"
        },
        vanPullRefresh: {
            pulling: "Tarik untuk menyegarkan...",
            loosing: "Loose untuk menyegarkan..."
        },
        vanSubmitBar: {
            label: "Jumlah:"
        },
        vanCoupon: {
            unlimited: "Tidak terbatas",
            discount: e => `${e*10}% off`,
            condition: e => `Setidaknya ${e}`
        },
        vanCouponCell: {
            title: "Kupon",
            count: e => `Anda memiliki kupon ${e}`
        },
        vanCouponList: {
            exchange: "Pertukaran",
            close: "Tutup",
            enable: "Tersedia",
            disabled: "Tidak tersedia",
            placeholder: "Kode kupon"
        },
        vanAddressEdit: {
            area: "Daerah",
            areaEmpty: "Silakan pilih area penerima",
            addressEmpty: "Alamat tidak boleh kosong",
            addressDetail: "Alamat",
            defaultAddress: "Tetapkan sebagai alamat default"
        },
        vanAddressList: {
            add: "Tambahkan alamat baru"
        }
    },
    kne = {
        name: "नाम",
        tel: "फ़ोन",
        save: "सहेजें",
        clear: "साफ़",
        cancel: "रद्द करें",
        confirm: "पुष्टि करना",
        delete: "हटाएं",
        loading: "लोड हो रहा है...",
        noCoupon: "कोई कूपन नहीं",
        nameEmpty: "कृपया नाम भरें",
        addContact: "संपर्क जोड़ें",
        telInvalid: "विकृत फ़ोन नंबर",
        vanCalendar: {
            end: "समाप्त",
            start: "शुरू",
            title: "पंचांग",
            weekdays: ["रविवार", "सोमवार", "मंगलवार", "बुधवार", "गुरूवार", "शुक्रवार", "शनिवार"],
            monthTitle: (e, t) => `${e}/${t}`,
            rangePrompt: e => `${e} दिन से अधिक नहीं चुनें`
        },
        vanCascader: {
            select: "चुनते हैं"
        },
        vanPagination: {
            prev: "पहले का",
            next: "अगला"
        },
        vanPullRefresh: {
            pulling: "रीफ़्रेश करने के लिए खींचें...",
            loosing: "ताज़ा करने के लिए ढीला..."
        },
        vanSubmitBar: {
            label: "कुल:"
        },
        vanCoupon: {
            unlimited: "असीमित",
            discount: e => `${e*10}% छूट`,
            condition: e => `कम से कम ${e}`
        },
        vanCouponCell: {
            title: "कूपन",
            count: e => `आपके पास ${e} कूपन हैं`
        },
        vanCouponList: {
            exchange: "अदला बदली",
            close: "बंद करे",
            enable: "उपलब्ध",
            disabled: "अनुपलब्ध",
            placeholder: "कूपन कोड"
        },
        vanAddressEdit: {
            area: "क्षेत्र",
            areaEmpty: "कृपया एक क्षेत्र चुनें",
            addressEmpty: "पता खाली नहीं हो सकता",
            addressDetail: "पता",
            defaultAddress: "डिफ़ॉल्ट पते के रूप में सेट करें"
        },
        vanAddressList: {
            add: "नया पता जोड़ें"
        }
    },
    Hne = {
        name: "ชื่อ",
        tel: "โทรศัพท์",
        save: "บันทึก",
        clear: "ชัดเจน",
        cancel: "ยกเลิก",
        confirm: "ยืนยัน",
        delete: "ลบ",
        loading: "กำลังโหลด...",
        noCoupon: "ไม่มีคูปอง",
        nameEmpty: "กรุณากรอกชื่อของคุณ",
        addContact: "เพิ่มผู้ติดต่อ",
        telInvalid: "กรุณากรอกหมายเลขโทรศัพท์ที่ถูกต้อง",
        vanCalendar: {
            end: "จบ",
            start: "เริ่ม",
            title: "การเลือกวันที่",
            weekdays: ["อา", "จ", "อ", "พ", "พฤ", "ศ", "ส"],
            monthTitle: (e, t) => `${e}ปี${t}เดือน`,
            rangePrompt: e => `จำนวนวันที่เลือกต้องไม่เกิน ${e} วัน`
        },
        vanCascader: {
            select: "โปรดเลือก"
        },
        vanPagination: {
            prev: "หน้าที่แล้ว",
            next: "หน้าต่อไป"
        },
        vanPullRefresh: {
            pulling: "ดึงลงเพื่อรีเฟรช...",
            loosing: "ปล่อยเพื่อรีเฟรช..."
        },
        vanSubmitBar: {
            label: "รวม:"
        },
        vanCoupon: {
            unlimited: "ไม่ จำกัด",
            discount: e => `ลด${e}`,
            condition: e => `มีจำหน่ายในราคา ${e} กว่าหยวน`
        },
        vanCouponCell: {
            title: "คูปอง",
            count: e => `มีรูปภาพ ${e} รูป`
        },
        vanCouponList: {
            exchange: "แลกเปลี่ยน",
            close: "ไม่ได้ใช้",
            enable: "พร้อมใช้งาน",
            disabled: "ไม่พร้อมใช้งาน",
            placeholder: "กรุณากรอกรหัสคูปอง"
        },
        vanAddressEdit: {
            area: "พื้นที่",
            areaEmpty: "โปรดเลือกภูมิภาค",
            addressEmpty: "กรุณากรอกที่อยู่โดยละเอียด",
            addressDetail: "ที่อยู่",
            defaultAddress: "ตั้งเป็นที่อยู่จัดส่งเริ่มต้น"
        },
        vanAddressList: {
            add: "เพิ่มที่อยู่"
        }
    },
    Mne = {
        name: "Nome",
        tel: "Fone",
        save: "Salvar",
        clear: "Claro",
        cancel: "Cancelar",
        confirm: "Confirmar",
        delete: "Excluir",
        loading: "Carregando...",
        noCoupon: "Nenhum cupom",
        nameEmpty: "Por favor, preencha o nome",
        addContact: "Adicionar novo contato",
        telInvalid: "Telefone em formato inválido",
        vanCalendar: {
            end: "Fim",
            start: "Início",
            title: "Calendário",
            weekdays: ["Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "Sáb"],
            monthTitle: (e, t) => `${t}/${e}`,
            rangePrompt: e => `Escolha no máximo ${e} dias`
        },
        vanCascader: {
            select: "Selecione"
        },
        vanPagination: {
            prev: "Anterior",
            next: "Próximo"
        },
        vanPullRefresh: {
            pulling: "Puxe para atualizar...",
            loosing: "Solte para atualizar..."
        },
        vanSubmitBar: {
            label: "Total:"
        },
        vanCoupon: {
            unlimited: "Ilimitado",
            discount: e => `${e*10}% de desconto`,
            condition: e => `Pelo menos ${e}`
        },
        vanCouponCell: {
            title: "Cupom",
            count: e => `Você possui ${e} cupom(ns)`
        },
        vanCouponList: {
            exchange: "Usar",
            close: "Fechar",
            enable: "Disponível",
            disabled: "Indisponível",
            placeholder: "Código do cupom"
        },
        vanAddressEdit: {
            area: "Área",
            areaEmpty: "Por favor, selecione uma área de recebimento",
            addressEmpty: "Endereço não pode ser vazio",
            addressDetail: "Endereço",
            defaultAddress: "Usar como endereço padrão"
        },
        vanAddressList: {
            add: "Adicionar novo endereço"
        }
    },
    Rne = {
        name: "নাম",
        tel: "ফোন",
        save: "সংরক্ষণ করুন",
        clear: "পরিষ্কার",
        cancel: "বাতিল",
        confirm: "নিশ্চিত করুন",
        delete: "মুছুন",
        loading: "লোড হচ্ছে...",
        noCoupon: "কোন কুপন নেই",
        nameEmpty: "অনুগ্রহ করে নামটি পূরণ করুন",
        addContact: "যোগাযোগ যোগ করুন",
        telInvalid: "বিকৃত ফোন নম্বর",
        vanCalendar: {
            end: "শেষ",
            start: "শুরু",
            title: "ক্যালেন্ডার",
            weekdays: ["রবিবার", "সোমবার", "মঙ্গলবার", "বুধবার", "বৃহস্পতিবার", "শুক্রবার", "শনিবার"],
            monthTitle: (e, t) => `${e}/${t}`,
            rangePrompt: e => `${e} দিনের বেশি নির্বাচন করবেন না`
        },
        vanCascader: {
            select: "নির্বাচন"
        },
        vanPagination: {
            prev: "পূর্ববর্তী",
            next: "পরবর্তী"
        },
        vanPullRefresh: {
            pulling: "রিফ্রেশ করতে টানুন...",
            loosing: "রিফ্রেশ করতে আলগা..."
        },
        vanSubmitBar: {
            label: "মোট:"
        },
        vanCoupon: {
            unlimited: "আনলিমিটেড",
            discount: e => `${e*10}% ছাড়`,
            condition: e => `অন্তত ${e}`
        },
        vanCouponCell: {
            title: "কুপন",
            count: e => `আপনার ${e} কুপন আছে`
        },
        vanCouponList: {
            exchange: "বিনিময়",
            close: "বন্ধ",
            enable: "উপলভ্য",
            disabled: "অনুপলব্ধ",
            placeholder: "কুপন কোড"
        },
        vanAddressEdit: {
            area: "এরিয়া",
            areaEmpty: "অনুগ্রহ করে একটি রিসিভিং এলাকা নির্বাচন করুন",
            addressEmpty: "ঠিকানা খালি হতে পারে না",
            addressDetail: "ঠিকানা",
            defaultAddress: "ডিফল্ট ঠিকানা হিসাবে সেট করুন"
        },
        vanAddressList: {
            add: "নতুন ঠিকানা যোগ করুন"
        }
    },
    Nne = {
        name: "الاسم",
        tel: "الهاتف",
        save: "حفظ",
        clear: "مسح",
        cancel: "إلغاء",
        confirm: "تأكيد",
        delete: "حذف",
        loading: "جار التحميل...",
        noCoupon: "لا يوجد كوبونات",
        nameEmpty: "يرجى ملء الاسم",
        addContact: "إضافة جهة اتصال",
        telInvalid: "رقم الهاتف غير صحيح",
        vanCalendar: {
            end: "نهاية",
            start: "بداية",
            title: "التقويم",
            weekdays: ["الأحد", "الاثنين", "الثلاثاء", "الأربعاء", "الخميس", "الجمعة", "السبت"],
            monthTitle: (e, t) => `${e}/${t}`,
            rangePrompt: e => `اختر لا يزيد عن ${e} أيام`
        },
        vanCascader: {
            select: "اختر"
        },
        vanPagination: {
            prev: "السابق",
            next: "التالي"
        },
        vanPullRefresh: {
            pulling: "اسحب للتحديث...",
            loosing: "أفلت للتحديث..."
        },
        vanSubmitBar: {
            label: "المجموع:"
        },
        vanCoupon: {
            unlimited: "غير محدود",
            discount: e => `${e*10}% خصم`,
            condition: e => `على الأقل ${e}`
        },
        vanCouponCell: {
            title: "كوبون",
            count: e => `لديك ${e} كوبونات`
        },
        vanCouponList: {
            exchange: "استبدال",
            close: "إغلاق",
            enable: "متاح",
            disabled: "غير متاح",
            placeholder: "كود الكوبون"
        },
        vanAddressEdit: {
            area: "المنطقة",
            areaEmpty: "يرجى اختيار منطقة استقبال",
            addressEmpty: "العنوان لا يمكن أن يكون فارغًا",
            addressDetail: "العنوان",
            defaultAddress: "تعيين كعنوان افتراضي"
        },
        vanAddressList: {
            add: "إضافة عنوان جديد"
        }
    },
    Gw = {
        exports: {}
    };
(function(e, t) {
    (function(n, r) {
        e.exports = r()
    })(ht, function() {
        return function(n, r, A) {
            n = n || {};
            var i = r.prototype,
                s = {
                    future: "in %s",
                    past: "%s ago",
                    s: "a few seconds",
                    m: "a minute",
                    mm: "%d minutes",
                    h: "an hour",
                    hh: "%d hours",
                    d: "a day",
                    dd: "%d days",
                    M: "a month",
                    MM: "%d months",
                    y: "a year",
                    yy: "%d years"
                };

            function a(l, u, f, d) {
                return i.fromToBase(l, u, f, d)
            }
            A.en.relativeTime = s, i.fromToBase = function(l, u, f, d, p) {
                for (var m, g, y, w = f.$locale().relativeTime || s, B = n.thresholds || [{
                        l: "s",
                        r: 44,
                        d: "second"
                    }, {
                        l: "m",
                        r: 89
                    }, {
                        l: "mm",
                        r: 44,
                        d: "minute"
                    }, {
                        l: "h",
                        r: 89
                    }, {
                        l: "hh",
                        r: 21,
                        d: "hour"
                    }, {
                        l: "d",
                        r: 35
                    }, {
                        l: "dd",
                        r: 25,
                        d: "day"
                    }, {
                        l: "M",
                        r: 45
                    }, {
                        l: "MM",
                        r: 10,
                        d: "month"
                    }, {
                        l: "y",
                        r: 17
                    }, {
                        l: "yy",
                        d: "year"
                    }], x = B.length, C = 0; C < x; C += 1) {
                    var b = B[C];
                    b.d && (m = d ? A(l).diff(f, b.d, !0) : f.diff(l, b.d, !0));
                    var F = (n.rounding || Math.round)(Math.abs(m));
                    if (y = m > 0, F <= b.r || !b.r) {
                        F <= 1 && C > 0 && (b = B[C - 1]);
                        var T = w[b.l];
                        p && (F = p("" + F)), g = typeof T == "string" ? T.replace("%d", F) : T(F, u, b.l, y);
                        break
                    }
                }
                if (u) return g;
                var I = y ? w.future : w.past;
                return typeof I == "function" ? I(g) : I.replace("%s", g)
            }, i.to = function(l, u) {
                return a(l, u, this, !0)
            }, i.from = function(l, u) {
                return a(l, u, this)
            };
            var o = function(l) {
                return l.$u ? A.utc() : A()
            };
            i.toNow = function(l) {
                return this.to(o(this), l)
            }, i.fromNow = function(l) {
                return this.from(o(this), l)
            }
        }
    })
})(Gw);
var VK = Gw.exports;
const $ne = xo(VK);
var GK = {
    exports: {}
};
(function(e, t) {
    (function(n, r) {
        e.exports = r(gp)
    })(ht, function(n) {
        function r(s) {
            return s && typeof s == "object" && "default" in s ? s : {
                default: s
            }
        }
        var A = r(n),
            i = {
                name: "zh-cn",
                weekdays: "星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),
                weekdaysShort: "周日_周一_周二_周三_周四_周五_周六".split("_"),
                weekdaysMin: "日_一_二_三_四_五_六".split("_"),
                months: "一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),
                monthsShort: "1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),
                ordinal: function(s, a) {
                    return a === "W" ? s + "周" : s + "日"
                },
                weekStart: 1,
                yearStart: 4,
                formats: {
                    LT: "HH:mm",
                    LTS: "HH:mm:ss",
                    L: "YYYY/MM/DD",
                    LL: "YYYY年M月D日",
                    LLL: "YYYY年M月D日Ah点mm分",
                    LLLL: "YYYY年M月D日ddddAh点mm分",
                    l: "YYYY/M/D",
                    ll: "YYYY年M月D日",
                    lll: "YYYY年M月D日 HH:mm",
                    llll: "YYYY年M月D日dddd HH:mm"
                },
                relativeTime: {
                    future: "%s内",
                    past: "%s前",
                    s: "几秒",
                    m: "1 分钟",
                    mm: "%d 分钟",
                    h: "1 小时",
                    hh: "%d 小时",
                    d: "1 天",
                    dd: "%d 天",
                    M: "1 个月",
                    MM: "%d 个月",
                    y: "1 年",
                    yy: "%d 年"
                },
                meridiem: function(s, a) {
                    var o = 100 * s + a;
                    return o < 600 ? "凌晨" : o < 900 ? "早上" : o < 1100 ? "上午" : o < 1300 ? "中午" : o < 1800 ? "下午" : "晚上"
                }
            };
        return A.default.locale(i, null, !0), i
    })
})(GK);
var zK = {
    exports: {}
};
(function(e, t) {
    (function(n, r) {
        e.exports = r(gp)
    })(ht, function(n) {
        function r(s) {
            return s && typeof s == "object" && "default" in s ? s : {
                default: s
            }
        }
        var A = r(n),
            i = {
                name: "zh-tw",
                weekdays: "星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),
                weekdaysShort: "週日_週一_週二_週三_週四_週五_週六".split("_"),
                weekdaysMin: "日_一_二_三_四_五_六".split("_"),
                months: "一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),
                monthsShort: "1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),
                ordinal: function(s, a) {
                    return a === "W" ? s + "週" : s + "日"
                },
                formats: {
                    LT: "HH:mm",
                    LTS: "HH:mm:ss",
                    L: "YYYY/MM/DD",
                    LL: "YYYY年M月D日",
                    LLL: "YYYY年M月D日 HH:mm",
                    LLLL: "YYYY年M月D日dddd HH:mm",
                    l: "YYYY/M/D",
                    ll: "YYYY年M月D日",
                    lll: "YYYY年M月D日 HH:mm",
                    llll: "YYYY年M月D日dddd HH:mm"
                },
                relativeTime: {
                    future: "%s內",
                    past: "%s前",
                    s: "幾秒",
                    m: "1 分鐘",
                    mm: "%d 分鐘",
                    h: "1 小時",
                    hh: "%d 小時",
                    d: "1 天",
                    dd: "%d 天",
                    M: "1 個月",
                    MM: "%d 個月",
                    y: "1 年",
                    yy: "%d 年"
                },
                meridiem: function(s, a) {
                    var o = 100 * s + a;
                    return o < 600 ? "凌晨" : o < 900 ? "早上" : o < 1100 ? "上午" : o < 1300 ? "中午" : o < 1800 ? "下午" : "晚上"
                }
            };
        return A.default.locale(i, null, !0), i
    })
})(zK);
var WK = {
    exports: {}
};
(function(e, t) {
    (function(n, r) {
        e.exports = r()
    })(ht, function() {
        return {
            name: "en",
            weekdays: "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),
            months: "January_February_March_April_May_June_July_August_September_October_November_December".split("_"),
            ordinal: function(n) {
                var r = ["th", "st", "nd", "rd"],
                    A = n % 100;
                return "[" + n + (r[(A - 20) % 10] || r[A] || r[0]) + "]"
            }
        }
    })
})(WK);
/*!
 * vue-router v4.1.6
 * (c) 2022 Eduardo San Martin Morote
 * @license MIT
 */
const Ha = typeof window < "u";

function jK(e) {
    return e.__esModule || e[Symbol.toStringTag] === "Module"
}
const Ot = Object.assign;

function wd(e, t) {
    const n = {};
    for (const r in t) {
        const A = t[r];
        n[r] = aA(A) ? A.map(e) : e(A)
    }
    return n
}
const Il = () => {},
    aA = Array.isArray,
    YK = /\/$/,
    XK = e => e.replace(YK, "");

function yd(e, t, n = "/") {
    let r, A = {},
        i = "",
        s = "";
    const a = t.indexOf("#");
    let o = t.indexOf("?");
    return a < o && a >= 0 && (o = -1), o > -1 && (r = t.slice(0, o), i = t.slice(o + 1, a > -1 ? a : t.length), A = e(i)), a > -1 && (r = r || t.slice(0, a), s = t.slice(a, t.length)), r = eV(r ? ? t, n), {
        fullPath: r + (i && "?") + i + s,
        path: r,
        query: A,
        hash: s
    }
}

function JK(e, t) {
    const n = t.query ? e(t.query) : "";
    return t.path + (n && "?") + n + (t.hash || "")
}

function Xv(e, t) {
    return !t || !e.toLowerCase().startsWith(t.toLowerCase()) ? e : e.slice(t.length) || "/"
}

function qK(e, t, n) {
    const r = t.matched.length - 1,
        A = n.matched.length - 1;
    return r > -1 && r === A && so(t.matched[r], n.matched[A]) && zw(t.params, n.params) && e(t.query) === e(n.query) && t.hash === n.hash
}

function so(e, t) {
    return (e.aliasOf || e) === (t.aliasOf || t)
}

function zw(e, t) {
    if (Object.keys(e).length !== Object.keys(t).length) return !1;
    for (const n in e)
        if (!ZK(e[n], t[n])) return !1;
    return !0
}

function ZK(e, t) {
    return aA(e) ? Jv(e, t) : aA(t) ? Jv(t, e) : e === t
}

function Jv(e, t) {
    return aA(t) ? e.length === t.length && e.every((n, r) => n === t[r]) : e.length === 1 && e[0] === t
}

function eV(e, t) {
    if (e.startsWith("/")) return e;
    if (!e) return t;
    const n = t.split("/"),
        r = e.split("/");
    let A = n.length - 1,
        i, s;
    for (i = 0; i < r.length; i++)
        if (s = r[i], s !== ".")
            if (s === "..") A > 1 && A--;
            else break;
    return n.slice(0, A).join("/") + "/" + r.slice(i - (i === r.length ? 1 : 0)).join("/")
}
var e0;
(function(e) {
    e.pop = "pop", e.push = "push"
})(e0 || (e0 = {}));
var Dl;
(function(e) {
    e.back = "back", e.forward = "forward", e.unknown = ""
})(Dl || (Dl = {}));

function tV(e) {
    if (!e)
        if (Ha) {
            const t = document.querySelector("base");
            e = t && t.getAttribute("href") || "/", e = e.replace(/^\w+:\/\/[^\/]+/, "")
        } else e = "/";
    return e[0] !== "/" && e[0] !== "#" && (e = "/" + e), XK(e)
}
const nV = /^[^#]+#/;

function rV(e, t) {
    return e.replace(nV, "#") + t
}

function AV(e, t) {
    const n = document.documentElement.getBoundingClientRect(),
        r = e.getBoundingClientRect();
    return {
        behavior: t.behavior,
        left: r.left - n.left - (t.left || 0),
        top: r.top - n.top - (t.top || 0)
    }
}
const Sf = () => ({
    left: window.pageXOffset,
    top: window.pageYOffset
});

function iV(e) {
    let t;
    if ("el" in e) {
        const n = e.el,
            r = typeof n == "string" && n.startsWith("#"),
            A = typeof n == "string" ? r ? document.getElementById(n.slice(1)) : document.querySelector(n) : n;
        if (!A) return;
        t = AV(A, e)
    } else t = e;
    "scrollBehavior" in document.documentElement.style ? window.scrollTo(t) : window.scrollTo(t.left != null ? t.left : window.pageXOffset, t.top != null ? t.top : window.pageYOffset)
}

function qv(e, t) {
    return (history.state ? history.state.position - t : -1) + e
}
const uh = new Map;

function sV(e, t) {
    uh.set(e, t)
}

function aV(e) {
    const t = uh.get(e);
    return uh.delete(e), t
}
let oV = () => location.protocol + "//" + location.host;

function Ww(e, t) {
    const {
        pathname: n,
        search: r,
        hash: A
    } = t, i = e.indexOf("#");
    if (i > -1) {
        let a = A.includes(e.slice(i)) ? e.slice(i).length : 1,
            o = A.slice(a);
        return o[0] !== "/" && (o = "/" + o), Xv(o, "")
    }
    return Xv(n, e) + r + A
}

function lV(e, t, n, r) {
    let A = [],
        i = [],
        s = null;
    const a = ({
        state: d
    }) => {
        const p = Ww(e, location),
            m = n.value,
            g = t.value;
        let y = 0;
        if (d) {
            if (n.value = p, t.value = d, s && s === m) {
                s = null;
                return
            }
            y = g ? d.position - g.position : 0
        } else r(p);
        A.forEach(w => {
            w(n.value, m, {
                delta: y,
                type: e0.pop,
                direction: y ? y > 0 ? Dl.forward : Dl.back : Dl.unknown
            })
        })
    };

    function o() {
        s = n.value
    }

    function l(d) {
        A.push(d);
        const p = () => {
            const m = A.indexOf(d);
            m > -1 && A.splice(m, 1)
        };
        return i.push(p), p
    }

    function u() {
        const {
            history: d
        } = window;
        d.state && d.replaceState(Ot({}, d.state, {
            scroll: Sf()
        }), "")
    }

    function f() {
        for (const d of i) d();
        i = [], window.removeEventListener("popstate", a), window.removeEventListener("beforeunload", u)
    }
    return window.addEventListener("popstate", a), window.addEventListener("beforeunload", u), {
        pauseListeners: o,
        listen: l,
        destroy: f
    }
}

function Zv(e, t, n, r = !1, A = !1) {
    return {
        back: e,
        current: t,
        forward: n,
        replaced: r,
        position: window.history.length,
        scroll: A ? Sf() : null
    }
}

function uV(e) {
    const {
        history: t,
        location: n
    } = window, r = {
        value: Ww(e, n)
    }, A = {
        value: t.state
    };
    A.value || i(r.value, {
        back: null,
        current: r.value,
        forward: null,
        position: t.length - 1,
        replaced: !0,
        scroll: null
    }, !0);

    function i(o, l, u) {
        const f = e.indexOf("#"),
            d = f > -1 ? (n.host && document.querySelector("base") ? e : e.slice(f)) + o : oV() + e + o;
        try {
            t[u ? "replaceState" : "pushState"](l, "", d), A.value = l
        } catch (p) {
            console.error(p), n[u ? "replace" : "assign"](d)
        }
    }

    function s(o, l) {
        const u = Ot({}, t.state, Zv(A.value.back, o, A.value.forward, !0), l, {
            position: A.value.position
        });
        i(o, u, !0), r.value = o
    }

    function a(o, l) {
        const u = Ot({}, A.value, t.state, {
            forward: o,
            scroll: Sf()
        });
        i(u.current, u, !0);
        const f = Ot({}, Zv(r.value, o, null), {
            position: u.position + 1
        }, l);
        i(o, f, !1), r.value = o
    }
    return {
        location: r,
        state: A,
        push: a,
        replace: s
    }
}

function cV(e) {
    e = tV(e);
    const t = uV(e),
        n = lV(e, t.state, t.location, t.replace);

    function r(i, s = !0) {
        s || n.pauseListeners(), history.go(i)
    }
    const A = Ot({
        location: "",
        base: e,
        go: r,
        createHref: rV.bind(null, e)
    }, t, n);
    return Object.defineProperty(A, "location", {
        enumerable: !0,
        get: () => t.location.value
    }), Object.defineProperty(A, "state", {
        enumerable: !0,
        get: () => t.state.value
    }), A
}

function Kne(e) {
    return e = location.host ? e || location.pathname + location.search : "", e.includes("#") || (e += "#"), cV(e)
}

function fV(e) {
    return typeof e == "string" || e && typeof e == "object"
}

function jw(e) {
    return typeof e == "string" || typeof e == "symbol"
}
const Ti = {
        path: "/",
        name: void 0,
        params: {},
        query: {},
        hash: "",
        fullPath: "/",
        matched: [],
        meta: {},
        redirectedFrom: void 0
    },
    Yw = Symbol("");
var em;
(function(e) {
    e[e.aborted = 4] = "aborted", e[e.cancelled = 8] = "cancelled", e[e.duplicated = 16] = "duplicated"
})(em || (em = {}));

function ao(e, t) {
    return Ot(new Error, {
        type: e,
        [Yw]: !0
    }, t)
}

function RA(e, t) {
    return e instanceof Error && Yw in e && (t == null || !!(e.type & t))
}
const tm = "[^/]+?",
    dV = {
        sensitive: !1,
        strict: !1,
        start: !0,
        end: !0
    },
    hV = /[.+*?^${}()[\]/\\]/g;

function pV(e, t) {
    const n = Ot({}, dV, t),
        r = [];
    let A = n.start ? "^" : "";
    const i = [];
    for (const l of e) {
        const u = l.length ? [] : [90];
        n.strict && !l.length && (A += "/");
        for (let f = 0; f < l.length; f++) {
            const d = l[f];
            let p = 40 + (n.sensitive ? .25 : 0);
            if (d.type === 0) f || (A += "/"), A += d.value.replace(hV, "\\$&"), p += 40;
            else if (d.type === 1) {
                const {
                    value: m,
                    repeatable: g,
                    optional: y,
                    regexp: w
                } = d;
                i.push({
                    name: m,
                    repeatable: g,
                    optional: y
                });
                const B = w || tm;
                if (B !== tm) {
                    p += 10;
                    try {
                        new RegExp(`(${B})`)
                    } catch (C) {
                        throw new Error(`Invalid custom RegExp for param "${m}" (${B}): ` + C.message)
                    }
                }
                let x = g ? `((?:${B})(?:/(?:${B}))*)` : `(${B})`;
                f || (x = y && l.length < 2 ? `(?:/${x})` : "/" + x), y && (x += "?"), A += x, p += 20, y && (p += -8), g && (p += -20), B === ".*" && (p += -50)
            }
            u.push(p)
        }
        r.push(u)
    }
    if (n.strict && n.end) {
        const l = r.length - 1;
        r[l][r[l].length - 1] += .7000000000000001
    }
    n.strict || (A += "/?"), n.end ? A += "$" : n.strict && (A += "(?:/|$)");
    const s = new RegExp(A, n.sensitive ? "" : "i");

    function a(l) {
        const u = l.match(s),
            f = {};
        if (!u) return null;
        for (let d = 1; d < u.length; d++) {
            const p = u[d] || "",
                m = i[d - 1];
            f[m.name] = p && m.repeatable ? p.split("/") : p
        }
        return f
    }

    function o(l) {
        let u = "",
            f = !1;
        for (const d of e) {
            (!f || !u.endsWith("/")) && (u += "/"), f = !1;
            for (const p of d)
                if (p.type === 0) u += p.value;
                else if (p.type === 1) {
                const {
                    value: m,
                    repeatable: g,
                    optional: y
                } = p, w = m in l ? l[m] : "";
                if (aA(w) && !g) throw new Error(`Provided param "${m}" is an array but it is not repeatable (* or + modifiers)`);
                const B = aA(w) ? w.join("/") : w;
                if (!B)
                    if (y) d.length < 2 && (u.endsWith("/") ? u = u.slice(0, -1) : f = !0);
                    else throw new Error(`Missing required param "${m}"`);
                u += B
            }
        }
        return u || "/"
    }
    return {
        re: s,
        score: r,
        keys: i,
        parse: a,
        stringify: o
    }
}

function gV(e, t) {
    let n = 0;
    for (; n < e.length && n < t.length;) {
        const r = t[n] - e[n];
        if (r) return r;
        n++
    }
    return e.length < t.length ? e.length === 1 && e[0] === 40 + 40 ? -1 : 1 : e.length > t.length ? t.length === 1 && t[0] === 40 + 40 ? 1 : -1 : 0
}

function vV(e, t) {
    let n = 0;
    const r = e.score,
        A = t.score;
    for (; n < r.length && n < A.length;) {
        const i = gV(r[n], A[n]);
        if (i) return i;
        n++
    }
    if (Math.abs(A.length - r.length) === 1) {
        if (nm(r)) return 1;
        if (nm(A)) return -1
    }
    return A.length - r.length
}

function nm(e) {
    const t = e[e.length - 1];
    return e.length > 0 && t[t.length - 1] < 0
}
const mV = {
        type: 0,
        value: ""
    },
    BV = /[a-zA-Z0-9_]/;

function wV(e) {
    if (!e) return [
        []
    ];
    if (e === "/") return [
        [mV]
    ];
    if (!e.startsWith("/")) throw new Error(`Invalid path "${e}"`);

    function t(p) {
        throw new Error(`ERR (${n})/"${l}": ${p}`)
    }
    let n = 0,
        r = n;
    const A = [];
    let i;

    function s() {
        i && A.push(i), i = []
    }
    let a = 0,
        o, l = "",
        u = "";

    function f() {
        l && (n === 0 ? i.push({
            type: 0,
            value: l
        }) : n === 1 || n === 2 || n === 3 ? (i.length > 1 && (o === "*" || o === "+") && t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`), i.push({
            type: 1,
            value: l,
            regexp: u,
            repeatable: o === "*" || o === "+",
            optional: o === "*" || o === "?"
        })) : t("Invalid state to consume buffer"), l = "")
    }

    function d() {
        l += o
    }
    for (; a < e.length;) {
        if (o = e[a++], o === "\\" && n !== 2) {
            r = n, n = 4;
            continue
        }
        switch (n) {
            case 0:
                o === "/" ? (l && f(), s()) : o === ":" ? (f(), n = 1) : d();
                break;
            case 4:
                d(), n = r;
                break;
            case 1:
                o === "(" ? n = 2 : BV.test(o) ? d() : (f(), n = 0, o !== "*" && o !== "?" && o !== "+" && a--);
                break;
            case 2:
                o === ")" ? u[u.length - 1] == "\\" ? u = u.slice(0, -1) + o : n = 3 : u += o;
                break;
            case 3:
                f(), n = 0, o !== "*" && o !== "?" && o !== "+" && a--, u = "";
                break;
            default:
                t("Unknown state");
                break
        }
    }
    return n === 2 && t(`Unfinished custom RegExp for param "${l}"`), f(), s(), A
}

function yV(e, t, n) {
    const r = pV(wV(e.path), n),
        A = Ot(r, {
            record: e,
            parent: t,
            children: [],
            alias: []
        });
    return t && !A.record.aliasOf == !t.record.aliasOf && t.children.push(A), A
}

function CV(e, t) {
    const n = [],
        r = new Map;
    t = im({
        strict: !1,
        end: !0,
        sensitive: !1
    }, t);

    function A(u) {
        return r.get(u)
    }

    function i(u, f, d) {
        const p = !d,
            m = xV(u);
        m.aliasOf = d && d.record;
        const g = im(t, u),
            y = [m];
        if ("alias" in u) {
            const x = typeof u.alias == "string" ? [u.alias] : u.alias;
            for (const C of x) y.push(Ot({}, m, {
                components: d ? d.record.components : m.components,
                path: C,
                aliasOf: d ? d.record : m
            }))
        }
        let w, B;
        for (const x of y) {
            const {
                path: C
            } = x;
            if (f && C[0] !== "/") {
                const b = f.record.path,
                    F = b[b.length - 1] === "/" ? "" : "/";
                x.path = f.record.path + (C && F + C)
            }
            if (w = yV(x, f, g), d ? d.alias.push(w) : (B = B || w, B !== w && B.alias.push(w), p && u.name && !Am(w) && s(u.name)), m.children) {
                const b = m.children;
                for (let F = 0; F < b.length; F++) i(b[F], w, d && d.children[F])
            }
            d = d || w, (w.record.components && Object.keys(w.record.components).length || w.record.name || w.record.redirect) && o(w)
        }
        return B ? () => {
            s(B)
        } : Il
    }

    function s(u) {
        if (jw(u)) {
            const f = r.get(u);
            f && (r.delete(u), n.splice(n.indexOf(f), 1), f.children.forEach(s), f.alias.forEach(s))
        } else {
            const f = n.indexOf(u);
            f > -1 && (n.splice(f, 1), u.record.name && r.delete(u.record.name), u.children.forEach(s), u.alias.forEach(s))
        }
    }

    function a() {
        return n
    }

    function o(u) {
        let f = 0;
        for (; f < n.length && vV(u, n[f]) >= 0 && (u.record.path !== n[f].record.path || !Xw(u, n[f]));) f++;
        n.splice(f, 0, u), u.record.name && !Am(u) && r.set(u.record.name, u)
    }

    function l(u, f) {
        let d, p = {},
            m, g;
        if ("name" in u && u.name) {
            if (d = r.get(u.name), !d) throw ao(1, {
                location: u
            });
            g = d.record.name, p = Ot(rm(f.params, d.keys.filter(B => !B.optional).map(B => B.name)), u.params && rm(u.params, d.keys.map(B => B.name))), m = d.stringify(p)
        } else if ("path" in u) m = u.path, d = n.find(B => B.re.test(m)), d && (p = d.parse(m), g = d.record.name);
        else {
            if (d = f.name ? r.get(f.name) : n.find(B => B.re.test(f.path)), !d) throw ao(1, {
                location: u,
                currentLocation: f
            });
            g = d.record.name, p = Ot({}, f.params, u.params), m = d.stringify(p)
        }
        const y = [];
        let w = d;
        for (; w;) y.unshift(w.record), w = w.parent;
        return {
            name: g,
            path: m,
            params: p,
            matched: y,
            meta: bV(y)
        }
    }
    return e.forEach(u => i(u)), {
        addRoute: i,
        resolve: l,
        removeRoute: s,
        getRoutes: a,
        getRecordMatcher: A
    }
}

function rm(e, t) {
    const n = {};
    for (const r of t) r in e && (n[r] = e[r]);
    return n
}

function xV(e) {
    return {
        path: e.path,
        redirect: e.redirect,
        name: e.name,
        meta: e.meta || {},
        aliasOf: void 0,
        beforeEnter: e.beforeEnter,
        props: EV(e),
        children: e.children || [],
        instances: {},
        leaveGuards: new Set,
        updateGuards: new Set,
        enterCallbacks: {},
        components: "components" in e ? e.components || null : e.component && {
            default: e.component
        }
    }
}

function EV(e) {
    const t = {},
        n = e.props || !1;
    if ("component" in e) t.default = n;
    else
        for (const r in e.components) t[r] = typeof n == "boolean" ? n : n[r];
    return t
}

function Am(e) {
    for (; e;) {
        if (e.record.aliasOf) return !0;
        e = e.parent
    }
    return !1
}

function bV(e) {
    return e.reduce((t, n) => Ot(t, n.meta), {})
}

function im(e, t) {
    const n = {};
    for (const r in e) n[r] = r in t ? t[r] : e[r];
    return n
}

function Xw(e, t) {
    return t.children.some(n => n === e || Xw(e, n))
}
const Jw = /#/g,
    FV = /&/g,
    _V = /\//g,
    SV = /=/g,
    QV = /\?/g,
    qw = /\+/g,
    UV = /%5B/g,
    TV = /%5D/g,
    Zw = /%5E/g,
    IV = /%60/g,
    ey = /%7B/g,
    DV = /%7C/g,
    ty = /%7D/g,
    PV = /%20/g;

function $p(e) {
    return encodeURI("" + e).replace(DV, "|").replace(UV, "[").replace(TV, "]")
}

function OV(e) {
    return $p(e).replace(ey, "{").replace(ty, "}").replace(Zw, "^")
}

function ch(e) {
    return $p(e).replace(qw, "%2B").replace(PV, "+").replace(Jw, "%23").replace(FV, "%26").replace(IV, "`").replace(ey, "{").replace(ty, "}").replace(Zw, "^")
}

function LV(e) {
    return ch(e).replace(SV, "%3D")
}

function kV(e) {
    return $p(e).replace(Jw, "%23").replace(QV, "%3F")
}

function HV(e) {
    return e == null ? "" : kV(e).replace(_V, "%2F")
}

function gc(e) {
    try {
        return decodeURIComponent("" + e)
    } catch {}
    return "" + e
}

function MV(e) {
    const t = {};
    if (e === "" || e === "?") return t;
    const r = (e[0] === "?" ? e.slice(1) : e).split("&");
    for (let A = 0; A < r.length; ++A) {
        const i = r[A].replace(qw, " "),
            s = i.indexOf("="),
            a = gc(s < 0 ? i : i.slice(0, s)),
            o = s < 0 ? null : gc(i.slice(s + 1));
        if (a in t) {
            let l = t[a];
            aA(l) || (l = t[a] = [l]), l.push(o)
        } else t[a] = o
    }
    return t
}

function sm(e) {
    let t = "";
    for (let n in e) {
        const r = e[n];
        if (n = LV(n), r == null) {
            r !== void 0 && (t += (t.length ? "&" : "") + n);
            continue
        }(aA(r) ? r.map(i => i && ch(i)) : [r && ch(r)]).forEach(i => {
            i !== void 0 && (t += (t.length ? "&" : "") + n, i != null && (t += "=" + i))
        })
    }
    return t
}

function RV(e) {
    const t = {};
    for (const n in e) {
        const r = e[n];
        r !== void 0 && (t[n] = aA(r) ? r.map(A => A == null ? null : "" + A) : r == null ? r : "" + r)
    }
    return t
}
const ny = Symbol(""),
    am = Symbol(""),
    Qf = Symbol(""),
    Kp = Symbol(""),
    fh = Symbol("");

function nl() {
    let e = [];

    function t(r) {
        return e.push(r), () => {
            const A = e.indexOf(r);
            A > -1 && e.splice(A, 1)
        }
    }

    function n() {
        e = []
    }
    return {
        add: t,
        list: () => e,
        reset: n
    }
}

function NV(e, t, n) {
    const r = () => {
        e[t].delete(n)
    };
    fi(r), ui(r), fs(() => {
        e[t].add(n)
    }), e[t].add(n)
}

function Vne(e) {
    const t = fn(ny, {}).value;
    t && NV(t, "leaveGuards", e)
}

function Hi(e, t, n, r, A) {
    const i = r && (r.enterCallbacks[A] = r.enterCallbacks[A] || []);
    return () => new Promise((s, a) => {
        const o = f => {
                f === !1 ? a(ao(4, {
                    from: n,
                    to: t
                })) : f instanceof Error ? a(f) : fV(f) ? a(ao(2, {
                    from: t,
                    to: f
                })) : (i && r.enterCallbacks[A] === i && typeof f == "function" && i.push(f), s())
            },
            l = e.call(r && r.instances[A], t, n, o);
        let u = Promise.resolve(l);
        e.length < 3 && (u = u.then(o)), u.catch(f => a(f))
    })
}

function Cd(e, t, n, r) {
    const A = [];
    for (const i of e)
        for (const s in i.components) {
            let a = i.components[s];
            if (!(t !== "beforeRouteEnter" && !i.instances[s]))
                if ($V(a)) {
                    const l = (a.__vccOpts || a)[t];
                    l && A.push(Hi(l, n, r, i, s))
                } else {
                    let o = a();
                    A.push(() => o.then(l => {
                        if (!l) return Promise.reject(new Error(`Couldn't resolve component "${s}" at "${i.path}"`));
                        const u = jK(l) ? l.default : l;
                        i.components[s] = u;
                        const d = (u.__vccOpts || u)[t];
                        return d && Hi(d, n, r, i, s)()
                    }))
                }
        }
    return A
}

function $V(e) {
    return typeof e == "object" || "displayName" in e || "props" in e || "__vccOpts" in e
}

function om(e) {
    const t = fn(Qf),
        n = fn(Kp),
        r = Oe(() => t.resolve(gr(e.to))),
        A = Oe(() => {
            const {
                matched: o
            } = r.value, {
                length: l
            } = o, u = o[l - 1], f = n.matched;
            if (!u || !f.length) return -1;
            const d = f.findIndex(so.bind(null, u));
            if (d > -1) return d;
            const p = lm(o[l - 2]);
            return l > 1 && lm(u) === p && f[f.length - 1].path !== p ? f.findIndex(so.bind(null, o[l - 2])) : d
        }),
        i = Oe(() => A.value > -1 && zV(n.params, r.value.params)),
        s = Oe(() => A.value > -1 && A.value === n.matched.length - 1 && zw(n.params, r.value.params));

    function a(o = {}) {
        return GV(o) ? t[gr(e.replace) ? "replace" : "push"](gr(e.to)).catch(Il) : Promise.resolve()
    }
    return {
        route: r,
        href: Oe(() => r.value.href),
        isActive: i,
        isExactActive: s,
        navigate: a
    }
}
const KV = tt({
        name: "RouterLink",
        compatConfig: {
            MODE: 3
        },
        props: {
            to: {
                type: [String, Object],
                required: !0
            },
            replace: Boolean,
            activeClass: String,
            exactActiveClass: String,
            custom: Boolean,
            ariaCurrentValue: {
                type: String,
                default: "page"
            }
        },
        useLink: om,
        setup(e, {
            slots: t
        }) {
            const n = Nt(om(e)),
                {
                    options: r
                } = fn(Qf),
                A = Oe(() => ({
                    [um(e.activeClass, r.linkActiveClass, "router-link-active")]: n.isActive,
                    [um(e.exactActiveClass, r.linkExactActiveClass, "router-link-exact-active")]: n.isExactActive
                }));
            return () => {
                const i = t.default && t.default(n);
                return e.custom ? i : Tn("a", {
                    "aria-current": n.isExactActive ? e.ariaCurrentValue : null,
                    href: n.href,
                    onClick: n.navigate,
                    class: A.value
                }, i)
            }
        }
    }),
    VV = KV;

function GV(e) {
    if (!(e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) && !e.defaultPrevented && !(e.button !== void 0 && e.button !== 0)) {
        if (e.currentTarget && e.currentTarget.getAttribute) {
            const t = e.currentTarget.getAttribute("target");
            if (/\b_blank\b/i.test(t)) return
        }
        return e.preventDefault && e.preventDefault(), !0
    }
}

function zV(e, t) {
    for (const n in t) {
        const r = t[n],
            A = e[n];
        if (typeof r == "string") {
            if (r !== A) return !1
        } else if (!aA(A) || A.length !== r.length || r.some((i, s) => i !== A[s])) return !1
    }
    return !0
}

function lm(e) {
    return e ? e.aliasOf ? e.aliasOf.path : e.path : ""
}
const um = (e, t, n) => e ? ? t ? ? n,
    WV = tt({
        name: "RouterView",
        inheritAttrs: !1,
        props: {
            name: {
                type: String,
                default: "default"
            },
            route: Object
        },
        compatConfig: {
            MODE: 3
        },
        setup(e, {
            attrs: t,
            slots: n
        }) {
            const r = fn(fh),
                A = Oe(() => e.route || r.value),
                i = fn(am, 0),
                s = Oe(() => {
                    let l = gr(i);
                    const {
                        matched: u
                    } = A.value;
                    let f;
                    for (;
                        (f = u[l]) && !f.components;) l++;
                    return l
                }),
                a = Oe(() => A.value.matched[s.value]);
            AA(am, Oe(() => s.value + 1)), AA(ny, a), AA(fh, A);
            const o = Ue();
            return je(() => [o.value, a.value, e.name], ([l, u, f], [d, p, m]) => {
                u && (u.instances[f] = l, p && p !== u && l && l === d && (u.leaveGuards.size || (u.leaveGuards = p.leaveGuards), u.updateGuards.size || (u.updateGuards = p.updateGuards))), l && u && (!p || !so(u, p) || !d) && (u.enterCallbacks[f] || []).forEach(g => g(l))
            }, {
                flush: "post"
            }), () => {
                const l = A.value,
                    u = e.name,
                    f = a.value,
                    d = f && f.components[u];
                if (!d) return cm(n.default, {
                    Component: d,
                    route: l
                });
                const p = f.props[u],
                    m = p ? p === !0 ? l.params : typeof p == "function" ? p(l) : p : null,
                    y = Tn(d, Ot({}, m, t, {
                        onVnodeUnmounted: w => {
                            w.component.isUnmounted && (f.instances[u] = null)
                        },
                        ref: o
                    }));
                return cm(n.default, {
                    Component: y,
                    route: l
                }) || y
            }
        }
    });

function cm(e, t) {
    if (!e) return null;
    const n = e(t);
    return n.length === 1 ? n[0] : n
}
const jV = WV;

function Gne(e) {
    const t = CV(e.routes, e),
        n = e.parseQuery || MV,
        r = e.stringifyQuery || sm,
        A = e.history,
        i = nl(),
        s = nl(),
        a = nl(),
        o = Rc(Ti);
    let l = Ti;
    Ha && e.scrollBehavior && "scrollRestoration" in history && (history.scrollRestoration = "manual");
    const u = wd.bind(null, se => "" + se),
        f = wd.bind(null, HV),
        d = wd.bind(null, gc);

    function p(se, Fe) {
        let ie, _e;
        return jw(se) ? (ie = t.getRecordMatcher(se), _e = Fe) : _e = se, t.addRoute(_e, ie)
    }

    function m(se) {
        const Fe = t.getRecordMatcher(se);
        Fe && t.removeRoute(Fe)
    }

    function g() {
        return t.getRoutes().map(se => se.record)
    }

    function y(se) {
        return !!t.getRecordMatcher(se)
    }

    function w(se, Fe) {
        if (Fe = Ot({}, Fe || o.value), typeof se == "string") {
            const W = yd(n, se, Fe.path),
                P = t.resolve({
                    path: W.path
                }, Fe),
                M = A.createHref(W.fullPath);
            return Ot(W, P, {
                params: d(P.params),
                hash: gc(W.hash),
                redirectedFrom: void 0,
                href: M
            })
        }
        let ie;
        if ("path" in se) ie = Ot({}, se, {
            path: yd(n, se.path, Fe.path).path
        });
        else {
            const W = Ot({}, se.params);
            for (const P in W) W[P] == null && delete W[P];
            ie = Ot({}, se, {
                params: f(se.params)
            }), Fe.params = f(Fe.params)
        }
        const _e = t.resolve(ie, Fe),
            De = se.hash || "";
        _e.params = u(d(_e.params));
        const $e = JK(r, Ot({}, se, {
                hash: OV(De),
                path: _e.path
            })),
            Te = A.createHref($e);
        return Ot({
            fullPath: $e,
            hash: De,
            query: r === sm ? RV(se.query) : se.query || {}
        }, _e, {
            redirectedFrom: void 0,
            href: Te
        })
    }

    function B(se) {
        return typeof se == "string" ? yd(n, se, o.value.path) : Ot({}, se)
    }

    function x(se, Fe) {
        if (l !== se) return ao(8, {
            from: Fe,
            to: se
        })
    }

    function C(se) {
        return T(se)
    }

    function b(se) {
        return C(Ot(B(se), {
            replace: !0
        }))
    }

    function F(se) {
        const Fe = se.matched[se.matched.length - 1];
        if (Fe && Fe.redirect) {
            const {
                redirect: ie
            } = Fe;
            let _e = typeof ie == "function" ? ie(se) : ie;
            return typeof _e == "string" && (_e = _e.includes("?") || _e.includes("#") ? _e = B(_e) : {
                path: _e
            }, _e.params = {}), Ot({
                query: se.query,
                hash: se.hash,
                params: "path" in _e ? {} : se.params
            }, _e)
        }
    }

    function T(se, Fe) {
        const ie = l = w(se),
            _e = o.value,
            De = se.state,
            $e = se.force,
            Te = se.replace === !0,
            W = F(ie);
        if (W) return T(Ot(B(W), {
            state: typeof W == "object" ? Ot({}, De, W.state) : De,
            force: $e,
            replace: Te
        }), Fe || ie);
        const P = ie;
        P.redirectedFrom = Fe;
        let M;
        return !$e && qK(r, _e, ie) && (M = ao(16, {
            to: P,
            from: _e
        }), ye(_e, _e, !0, !1)), (M ? Promise.resolve(M) : D(P, _e)).catch(te => RA(te) ? RA(te, 2) ? te : ue(te) : ae(te, P, _e)).then(te => {
            if (te) {
                if (RA(te, 2)) return T(Ot({
                    replace: Te
                }, B(te.to), {
                    state: typeof te.to == "object" ? Ot({}, De, te.to.state) : De,
                    force: $e
                }), Fe || P)
            } else te = Q(P, _e, !0, Te, De);
            return U(P, _e, te), te
        })
    }

    function I(se, Fe) {
        const ie = x(se, Fe);
        return ie ? Promise.reject(ie) : Promise.resolve()
    }

    function D(se, Fe) {
        let ie;
        const [_e, De, $e] = YV(se, Fe);
        ie = Cd(_e.reverse(), "beforeRouteLeave", se, Fe);
        for (const W of _e) W.leaveGuards.forEach(P => {
            ie.push(Hi(P, se, Fe))
        });
        const Te = I.bind(null, se, Fe);
        return ie.push(Te), Qa(ie).then(() => {
            ie = [];
            for (const W of i.list()) ie.push(Hi(W, se, Fe));
            return ie.push(Te), Qa(ie)
        }).then(() => {
            ie = Cd(De, "beforeRouteUpdate", se, Fe);
            for (const W of De) W.updateGuards.forEach(P => {
                ie.push(Hi(P, se, Fe))
            });
            return ie.push(Te), Qa(ie)
        }).then(() => {
            ie = [];
            for (const W of se.matched)
                if (W.beforeEnter && !Fe.matched.includes(W))
                    if (aA(W.beforeEnter))
                        for (const P of W.beforeEnter) ie.push(Hi(P, se, Fe));
                    else ie.push(Hi(W.beforeEnter, se, Fe));
            return ie.push(Te), Qa(ie)
        }).then(() => (se.matched.forEach(W => W.enterCallbacks = {}), ie = Cd($e, "beforeRouteEnter", se, Fe), ie.push(Te), Qa(ie))).then(() => {
            ie = [];
            for (const W of s.list()) ie.push(Hi(W, se, Fe));
            return ie.push(Te), Qa(ie)
        }).catch(W => RA(W, 8) ? W : Promise.reject(W))
    }

    function U(se, Fe, ie) {
        for (const _e of a.list()) _e(se, Fe, ie)
    }

    function Q(se, Fe, ie, _e, De) {
        const $e = x(se, Fe);
        if ($e) return $e;
        const Te = Fe === Ti,
            W = Ha ? history.state : {};
        ie && (_e || Te ? A.replace(se.fullPath, Ot({
            scroll: Te && W && W.scroll
        }, De)) : A.push(se.fullPath, De)), o.value = se, ye(se, Fe, ie, Te), ue()
    }
    let O;

    function N() {
        O || (O = A.listen((se, Fe, ie) => {
            if (!xe.listening) return;
            const _e = w(se),
                De = F(_e);
            if (De) {
                T(Ot(De, {
                    replace: !0
                }), _e).catch(Il);
                return
            }
            l = _e;
            const $e = o.value;
            Ha && sV(qv($e.fullPath, ie.delta), Sf()), D(_e, $e).catch(Te => RA(Te, 12) ? Te : RA(Te, 2) ? (T(Te.to, _e).then(W => {
                RA(W, 20) && !ie.delta && ie.type === e0.pop && A.go(-1, !1)
            }).catch(Il), Promise.reject()) : (ie.delta && A.go(-ie.delta, !1), ae(Te, _e, $e))).then(Te => {
                Te = Te || Q(_e, $e, !1), Te && (ie.delta && !RA(Te, 8) ? A.go(-ie.delta, !1) : ie.type === e0.pop && RA(Te, 20) && A.go(-1, !1)), U(_e, $e, Te)
            }).catch(Il)
        }))
    }
    let J = nl(),
        j = nl(),
        V;

    function ae(se, Fe, ie) {
        ue(se);
        const _e = j.list();
        return _e.length ? _e.forEach(De => De(se, Fe, ie)) : console.error(se), Promise.reject(se)
    }

    function Y() {
        return V && o.value !== Ti ? Promise.resolve() : new Promise((se, Fe) => {
            J.add([se, Fe])
        })
    }

    function ue(se) {
        return V || (V = !se, N(), J.list().forEach(([Fe, ie]) => se ? ie(se) : Fe()), J.reset()), se
    }

    function ye(se, Fe, ie, _e) {
        const {
            scrollBehavior: De
        } = e;
        if (!Ha || !De) return Promise.resolve();
        const $e = !ie && aV(qv(se.fullPath, 0)) || (_e || !ie) && history.state && history.state.scroll || null;
        return yt().then(() => De(se, Fe, $e)).then(Te => Te && iV(Te)).catch(Te => ae(Te, se, Fe))
    }
    const ee = se => A.go(se);
    let ce;
    const ve = new Set,
        xe = {
            currentRoute: o,
            listening: !0,
            addRoute: p,
            removeRoute: m,
            hasRoute: y,
            getRoutes: g,
            resolve: w,
            options: e,
            push: C,
            replace: b,
            go: ee,
            back: () => ee(-1),
            forward: () => ee(1),
            beforeEach: i.add,
            beforeResolve: s.add,
            afterEach: a.add,
            onError: j.add,
            isReady: Y,
            install(se) {
                const Fe = this;
                se.component("RouterLink", VV), se.component("RouterView", jV), se.config.globalProperties.$router = Fe, Object.defineProperty(se.config.globalProperties, "$route", {
                    enumerable: !0,
                    get: () => gr(o)
                }), Ha && !ce && o.value === Ti && (ce = !0, C(A.location).catch(De => {}));
                const ie = {};
                for (const De in Ti) ie[De] = Oe(() => o.value[De]);
                se.provide(Qf, Fe), se.provide(Kp, Nt(ie)), se.provide(fh, o);
                const _e = se.unmount;
                ve.add(se), se.unmount = function() {
                    ve.delete(se), ve.size < 1 && (l = Ti, O && O(), O = null, o.value = Ti, ce = !1, V = !1), _e()
                }
            }
        };
    return xe
}

function Qa(e) {
    return e.reduce((t, n) => t.then(() => n()), Promise.resolve())
}

function YV(e, t) {
    const n = [],
        r = [],
        A = [],
        i = Math.max(t.matched.length, e.matched.length);
    for (let s = 0; s < i; s++) {
        const a = t.matched[s];
        a && (e.matched.find(l => so(l, a)) ? r.push(a) : n.push(a));
        const o = e.matched[s];
        o && (t.matched.find(l => so(l, o)) || A.push(o))
    }
    return [n, r, A]
}

function zne() {
    return fn(Qf)
}

function Wne() {
    return fn(Kp)
}

function ry(e, t) {
    return function() {
        return e.apply(t, arguments)
    }
}
const {
    toString: XV
} = Object.prototype, {
    getPrototypeOf: Vp
} = Object, Uf = (e => t => {
    const n = XV.call(t);
    return e[n] || (e[n] = n.slice(8, -1).toLowerCase())
})(Object.create(null)), _A = e => (e = e.toLowerCase(), t => Uf(t) === e), Tf = e => t => typeof t === e, {
    isArray: To
} = Array, t0 = Tf("undefined");

function JV(e) {
    return e !== null && !t0(e) && e.constructor !== null && !t0(e.constructor) && zr(e.constructor.isBuffer) && e.constructor.isBuffer(e)
}
const Ay = _A("ArrayBuffer");

function qV(e) {
    let t;
    return typeof ArrayBuffer < "u" && ArrayBuffer.isView ? t = ArrayBuffer.isView(e) : t = e && e.buffer && Ay(e.buffer), t
}
const ZV = Tf("string"),
    zr = Tf("function"),
    iy = Tf("number"),
    If = e => e !== null && typeof e == "object",
    eG = e => e === !0 || e === !1,
    Wu = e => {
        if (Uf(e) !== "object") return !1;
        const t = Vp(e);
        return (t === null || t === Object.prototype || Object.getPrototypeOf(t) === null) && !(Symbol.toStringTag in e) && !(Symbol.iterator in e)
    },
    tG = _A("Date"),
    nG = _A("File"),
    rG = _A("Blob"),
    AG = _A("FileList"),
    iG = e => If(e) && zr(e.pipe),
    sG = e => {
        let t;
        return e && (typeof FormData == "function" && e instanceof FormData || zr(e.append) && ((t = Uf(e)) === "formdata" || t === "object" && zr(e.toString) && e.toString() === "[object FormData]"))
    },
    aG = _A("URLSearchParams"),
    oG = e => e.trim ? e.trim() : e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, "");

function F0(e, t, {
    allOwnKeys: n = !1
} = {}) {
    if (e === null || typeof e > "u") return;
    let r, A;
    if (typeof e != "object" && (e = [e]), To(e))
        for (r = 0, A = e.length; r < A; r++) t.call(null, e[r], r, e);
    else {
        const i = n ? Object.getOwnPropertyNames(e) : Object.keys(e),
            s = i.length;
        let a;
        for (r = 0; r < s; r++) a = i[r], t.call(null, e[a], a, e)
    }
}

function sy(e, t) {
    t = t.toLowerCase();
    const n = Object.keys(e);
    let r = n.length,
        A;
    for (; r-- > 0;)
        if (A = n[r], t === A.toLowerCase()) return A;
    return null
}
const ay = (() => typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : typeof window < "u" ? window : global)(),
    oy = e => !t0(e) && e !== ay;

function dh() {
    const {
        caseless: e
    } = oy(this) && this || {}, t = {}, n = (r, A) => {
        const i = e && sy(t, A) || A;
        Wu(t[i]) && Wu(r) ? t[i] = dh(t[i], r) : Wu(r) ? t[i] = dh({}, r) : To(r) ? t[i] = r.slice() : t[i] = r
    };
    for (let r = 0, A = arguments.length; r < A; r++) arguments[r] && F0(arguments[r], n);
    return t
}
const lG = (e, t, n, {
        allOwnKeys: r
    } = {}) => (F0(t, (A, i) => {
        n && zr(A) ? e[i] = ry(A, n) : e[i] = A
    }, {
        allOwnKeys: r
    }), e),
    uG = e => (e.charCodeAt(0) === 65279 && (e = e.slice(1)), e),
    cG = (e, t, n, r) => {
        e.prototype = Object.create(t.prototype, r), e.prototype.constructor = e, Object.defineProperty(e, "super", {
            value: t.prototype
        }), n && Object.assign(e.prototype, n)
    },
    fG = (e, t, n, r) => {
        let A, i, s;
        const a = {};
        if (t = t || {}, e == null) return t;
        do {
            for (A = Object.getOwnPropertyNames(e), i = A.length; i-- > 0;) s = A[i], (!r || r(s, e, t)) && !a[s] && (t[s] = e[s], a[s] = !0);
            e = n !== !1 && Vp(e)
        } while (e && (!n || n(e, t)) && e !== Object.prototype);
        return t
    },
    dG = (e, t, n) => {
        e = String(e), (n === void 0 || n > e.length) && (n = e.length), n -= t.length;
        const r = e.indexOf(t, n);
        return r !== -1 && r === n
    },
    hG = e => {
        if (!e) return null;
        if (To(e)) return e;
        let t = e.length;
        if (!iy(t)) return null;
        const n = new Array(t);
        for (; t-- > 0;) n[t] = e[t];
        return n
    },
    pG = (e => t => e && t instanceof e)(typeof Uint8Array < "u" && Vp(Uint8Array)),
    gG = (e, t) => {
        const r = (e && e[Symbol.iterator]).call(e);
        let A;
        for (;
            (A = r.next()) && !A.done;) {
            const i = A.value;
            t.call(e, i[0], i[1])
        }
    },
    vG = (e, t) => {
        let n;
        const r = [];
        for (;
            (n = e.exec(t)) !== null;) r.push(n);
        return r
    },
    mG = _A("HTMLFormElement"),
    BG = e => e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g, function(n, r, A) {
        return r.toUpperCase() + A
    }),
    fm = (({
        hasOwnProperty: e
    }) => (t, n) => e.call(t, n))(Object.prototype),
    wG = _A("RegExp"),
    ly = (e, t) => {
        const n = Object.getOwnPropertyDescriptors(e),
            r = {};
        F0(n, (A, i) => {
            let s;
            (s = t(A, i, e)) !== !1 && (r[i] = s || A)
        }), Object.defineProperties(e, r)
    },
    yG = e => {
        ly(e, (t, n) => {
            if (zr(e) && ["arguments", "caller", "callee"].indexOf(n) !== -1) return !1;
            const r = e[n];
            if (zr(r)) {
                if (t.enumerable = !1, "writable" in t) {
                    t.writable = !1;
                    return
                }
                t.set || (t.set = () => {
                    throw Error("Can not rewrite read-only method '" + n + "'")
                })
            }
        })
    },
    CG = (e, t) => {
        const n = {},
            r = A => {
                A.forEach(i => {
                    n[i] = !0
                })
            };
        return To(e) ? r(e) : r(String(e).split(t)), n
    },
    xG = () => {},
    EG = (e, t) => (e = +e, Number.isFinite(e) ? e : t),
    xd = "abcdefghijklmnopqrstuvwxyz",
    dm = "0123456789",
    uy = {
        DIGIT: dm,
        ALPHA: xd,
        ALPHA_DIGIT: xd + xd.toUpperCase() + dm
    },
    bG = (e = 16, t = uy.ALPHA_DIGIT) => {
        let n = "";
        const {
            length: r
        } = t;
        for (; e--;) n += t[Math.random() * r | 0];
        return n
    };

function FG(e) {
    return !!(e && zr(e.append) && e[Symbol.toStringTag] === "FormData" && e[Symbol.iterator])
}
const _G = e => {
        const t = new Array(10),
            n = (r, A) => {
                if (If(r)) {
                    if (t.indexOf(r) >= 0) return;
                    if (!("toJSON" in r)) {
                        t[A] = r;
                        const i = To(r) ? [] : {};
                        return F0(r, (s, a) => {
                            const o = n(s, A + 1);
                            !t0(o) && (i[a] = o)
                        }), t[A] = void 0, i
                    }
                }
                return r
            };
        return n(e, 0)
    },
    SG = _A("AsyncFunction"),
    QG = e => e && (If(e) || zr(e)) && zr(e.then) && zr(e.catch),
    ke = {
        isArray: To,
        isArrayBuffer: Ay,
        isBuffer: JV,
        isFormData: sG,
        isArrayBufferView: qV,
        isString: ZV,
        isNumber: iy,
        isBoolean: eG,
        isObject: If,
        isPlainObject: Wu,
        isUndefined: t0,
        isDate: tG,
        isFile: nG,
        isBlob: rG,
        isRegExp: wG,
        isFunction: zr,
        isStream: iG,
        isURLSearchParams: aG,
        isTypedArray: pG,
        isFileList: AG,
        forEach: F0,
        merge: dh,
        extend: lG,
        trim: oG,
        stripBOM: uG,
        inherits: cG,
        toFlatObject: fG,
        kindOf: Uf,
        kindOfTest: _A,
        endsWith: dG,
        toArray: hG,
        forEachEntry: gG,
        matchAll: vG,
        isHTMLForm: mG,
        hasOwnProperty: fm,
        hasOwnProp: fm,
        reduceDescriptors: ly,
        freezeMethods: yG,
        toObjectSet: CG,
        toCamelCase: BG,
        noop: xG,
        toFiniteNumber: EG,
        findKey: sy,
        global: ay,
        isContextDefined: oy,
        ALPHABET: uy,
        generateString: bG,
        isSpecCompliantForm: FG,
        toJSONObject: _G,
        isAsyncFn: SG,
        isThenable: QG
    };

function St(e, t, n, r, A) {
    Error.call(this), Error.captureStackTrace ? Error.captureStackTrace(this, this.constructor) : this.stack = new Error().stack, this.message = e, this.name = "AxiosError", t && (this.code = t), n && (this.config = n), r && (this.request = r), A && (this.response = A)
}
ke.inherits(St, Error, {
    toJSON: function() {
        return {
            message: this.message,
            name: this.name,
            description: this.description,
            number: this.number,
            fileName: this.fileName,
            lineNumber: this.lineNumber,
            columnNumber: this.columnNumber,
            stack: this.stack,
            config: ke.toJSONObject(this.config),
            code: this.code,
            status: this.response && this.response.status ? this.response.status : null
        }
    }
});
const cy = St.prototype,
    fy = {};
["ERR_BAD_OPTION_VALUE", "ERR_BAD_OPTION", "ECONNABORTED", "ETIMEDOUT", "ERR_NETWORK", "ERR_FR_TOO_MANY_REDIRECTS", "ERR_DEPRECATED", "ERR_BAD_RESPONSE", "ERR_BAD_REQUEST", "ERR_CANCELED", "ERR_NOT_SUPPORT", "ERR_INVALID_URL"].forEach(e => {
    fy[e] = {
        value: e
    }
});
Object.defineProperties(St, fy);
Object.defineProperty(cy, "isAxiosError", {
    value: !0
});
St.from = (e, t, n, r, A, i) => {
    const s = Object.create(cy);
    return ke.toFlatObject(e, s, function(o) {
        return o !== Error.prototype
    }, a => a !== "isAxiosError"), St.call(s, e.message, t, n, r, A), s.cause = e, s.name = e.name, i && Object.assign(s, i), s
};
const UG = null;

function hh(e) {
    return ke.isPlainObject(e) || ke.isArray(e)
}

function dy(e) {
    return ke.endsWith(e, "[]") ? e.slice(0, -2) : e
}

function hm(e, t, n) {
    return e ? e.concat(t).map(function(A, i) {
        return A = dy(A), !n && i ? "[" + A + "]" : A
    }).join(n ? "." : "") : t
}

function TG(e) {
    return ke.isArray(e) && !e.some(hh)
}
const IG = ke.toFlatObject(ke, {}, null, function(t) {
    return /^is[A-Z]/.test(t)
});

function Df(e, t, n) {
    if (!ke.isObject(e)) throw new TypeError("target must be an object");
    t = t || new FormData, n = ke.toFlatObject(n, {
        metaTokens: !0,
        dots: !1,
        indexes: !1
    }, !1, function(g, y) {
        return !ke.isUndefined(y[g])
    });
    const r = n.metaTokens,
        A = n.visitor || u,
        i = n.dots,
        s = n.indexes,
        o = (n.Blob || typeof Blob < "u" && Blob) && ke.isSpecCompliantForm(t);
    if (!ke.isFunction(A)) throw new TypeError("visitor must be a function");

    function l(m) {
        if (m === null) return "";
        if (ke.isDate(m)) return m.toISOString();
        if (!o && ke.isBlob(m)) throw new St("Blob is not supported. Use a Buffer instead.");
        return ke.isArrayBuffer(m) || ke.isTypedArray(m) ? o && typeof Blob == "function" ? new Blob([m]) : Buffer.from(m) : m
    }

    function u(m, g, y) {
        let w = m;
        if (m && !y && typeof m == "object") {
            if (ke.endsWith(g, "{}")) g = r ? g : g.slice(0, -2), m = JSON.stringify(m);
            else if (ke.isArray(m) && TG(m) || (ke.isFileList(m) || ke.endsWith(g, "[]")) && (w = ke.toArray(m))) return g = dy(g), w.forEach(function(x, C) {
                !(ke.isUndefined(x) || x === null) && t.append(s === !0 ? hm([g], C, i) : s === null ? g : g + "[]", l(x))
            }), !1
        }
        return hh(m) ? !0 : (t.append(hm(y, g, i), l(m)), !1)
    }
    const f = [],
        d = Object.assign(IG, {
            defaultVisitor: u,
            convertValue: l,
            isVisitable: hh
        });

    function p(m, g) {
        if (!ke.isUndefined(m)) {
            if (f.indexOf(m) !== -1) throw Error("Circular reference detected in " + g.join("."));
            f.push(m), ke.forEach(m, function(w, B) {
                (!(ke.isUndefined(w) || w === null) && A.call(t, w, ke.isString(B) ? B.trim() : B, g, d)) === !0 && p(w, g ? g.concat(B) : [B])
            }), f.pop()
        }
    }
    if (!ke.isObject(e)) throw new TypeError("data must be an object");
    return p(e), t
}

function pm(e) {
    const t = {
        "!": "%21",
        "'": "%27",
        "(": "%28",
        ")": "%29",
        "~": "%7E",
        "%20": "+",
        "%00": "\0"
    };
    return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g, function(r) {
        return t[r]
    })
}

function Gp(e, t) {
    this._pairs = [], e && Df(e, this, t)
}
const hy = Gp.prototype;
hy.append = function(t, n) {
    this._pairs.push([t, n])
};
hy.toString = function(t) {
    const n = t ? function(r) {
        return t.call(this, r, pm)
    } : pm;
    return this._pairs.map(function(A) {
        return n(A[0]) + "=" + n(A[1])
    }, "").join("&")
};

function DG(e) {
    return encodeURIComponent(e).replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%20/g, "+").replace(/%5B/gi, "[").replace(/%5D/gi, "]")
}

function py(e, t, n) {
    if (!t) return e;
    const r = n && n.encode || DG,
        A = n && n.serialize;
    let i;
    if (A ? i = A(t, n) : i = ke.isURLSearchParams(t) ? t.toString() : new Gp(t, n).toString(r), i) {
        const s = e.indexOf("#");
        s !== -1 && (e = e.slice(0, s)), e += (e.indexOf("?") === -1 ? "?" : "&") + i
    }
    return e
}
class PG {
    constructor() {
        this.handlers = []
    }
    use(t, n, r) {
        return this.handlers.push({
            fulfilled: t,
            rejected: n,
            synchronous: r ? r.synchronous : !1,
            runWhen: r ? r.runWhen : null
        }), this.handlers.length - 1
    }
    eject(t) {
        this.handlers[t] && (this.handlers[t] = null)
    }
    clear() {
        this.handlers && (this.handlers = [])
    }
    forEach(t) {
        ke.forEach(this.handlers, function(r) {
            r !== null && t(r)
        })
    }
}
const gm = PG,
    gy = {
        silentJSONParsing: !0,
        forcedJSONParsing: !0,
        clarifyTimeoutError: !1
    },
    OG = typeof URLSearchParams < "u" ? URLSearchParams : Gp,
    LG = typeof FormData < "u" ? FormData : null,
    kG = typeof Blob < "u" ? Blob : null,
    HG = {
        isBrowser: !0,
        classes: {
            URLSearchParams: OG,
            FormData: LG,
            Blob: kG
        },
        protocols: ["http", "https", "file", "blob", "url", "data"]
    },
    vy = typeof window < "u" && typeof document < "u",
    MG = (e => vy && ["ReactNative", "NativeScript", "NS"].indexOf(e) < 0)(typeof navigator < "u" && navigator.product),
    RG = (() => typeof WorkerGlobalScope < "u" && self instanceof WorkerGlobalScope && typeof self.importScripts == "function")(),
    NG = Object.freeze(Object.defineProperty({
        __proto__: null,
        hasBrowserEnv: vy,
        hasStandardBrowserEnv: MG,
        hasStandardBrowserWebWorkerEnv: RG
    }, Symbol.toStringTag, {
        value: "Module"
    })),
    CA = { ...NG,
        ...HG
    };

function $G(e, t) {
    return Df(e, new CA.classes.URLSearchParams, Object.assign({
        visitor: function(n, r, A, i) {
            return CA.isNode && ke.isBuffer(n) ? (this.append(r, n.toString("base64")), !1) : i.defaultVisitor.apply(this, arguments)
        }
    }, t))
}

function KG(e) {
    return ke.matchAll(/\w+|\[(\w*)]/g, e).map(t => t[0] === "[]" ? "" : t[1] || t[0])
}

function VG(e) {
    const t = {},
        n = Object.keys(e);
    let r;
    const A = n.length;
    let i;
    for (r = 0; r < A; r++) i = n[r], t[i] = e[i];
    return t
}

function my(e) {
    function t(n, r, A, i) {
        let s = n[i++];
        if (s === "__proto__") return !0;
        const a = Number.isFinite(+s),
            o = i >= n.length;
        return s = !s && ke.isArray(A) ? A.length : s, o ? (ke.hasOwnProp(A, s) ? A[s] = [A[s], r] : A[s] = r, !a) : ((!A[s] || !ke.isObject(A[s])) && (A[s] = []), t(n, r, A[s], i) && ke.isArray(A[s]) && (A[s] = VG(A[s])), !a)
    }
    if (ke.isFormData(e) && ke.isFunction(e.entries)) {
        const n = {};
        return ke.forEachEntry(e, (r, A) => {
            t(KG(r), A, n, 0)
        }), n
    }
    return null
}

function GG(e, t, n) {
    if (ke.isString(e)) try {
        return (t || JSON.parse)(e), ke.trim(e)
    } catch (r) {
        if (r.name !== "SyntaxError") throw r
    }
    return (n || JSON.stringify)(e)
}
const zp = {
    transitional: gy,
    adapter: ["xhr", "http"],
    transformRequest: [function(t, n) {
        const r = n.getContentType() || "",
            A = r.indexOf("application/json") > -1,
            i = ke.isObject(t);
        if (i && ke.isHTMLForm(t) && (t = new FormData(t)), ke.isFormData(t)) return A ? JSON.stringify(my(t)) : t;
        if (ke.isArrayBuffer(t) || ke.isBuffer(t) || ke.isStream(t) || ke.isFile(t) || ke.isBlob(t)) return t;
        if (ke.isArrayBufferView(t)) return t.buffer;
        if (ke.isURLSearchParams(t)) return n.setContentType("application/x-www-form-urlencoded;charset=utf-8", !1), t.toString();
        let a;
        if (i) {
            if (r.indexOf("application/x-www-form-urlencoded") > -1) return $G(t, this.formSerializer).toString();
            if ((a = ke.isFileList(t)) || r.indexOf("multipart/form-data") > -1) {
                const o = this.env && this.env.FormData;
                return Df(a ? {
                    "files[]": t
                } : t, o && new o, this.formSerializer)
            }
        }
        return i || A ? (n.setContentType("application/json", !1), GG(t)) : t
    }],
    transformResponse: [function(t) {
        const n = this.transitional || zp.transitional,
            r = n && n.forcedJSONParsing,
            A = this.responseType === "json";
        if (t && ke.isString(t) && (r && !this.responseType || A)) {
            const s = !(n && n.silentJSONParsing) && A;
            try {
                return JSON.parse(t)
            } catch (a) {
                if (s) throw a.name === "SyntaxError" ? St.from(a, St.ERR_BAD_RESPONSE, this, null, this.response) : a
            }
        }
        return t
    }],
    timeout: 0,
    xsrfCookieName: "XSRF-TOKEN",
    xsrfHeaderName: "X-XSRF-TOKEN",
    maxContentLength: -1,
    maxBodyLength: -1,
    env: {
        FormData: CA.classes.FormData,
        Blob: CA.classes.Blob
    },
    validateStatus: function(t) {
        return t >= 200 && t < 300
    },
    headers: {
        common: {
            Accept: "application/json, text/plain, */*",
            "Content-Type": void 0
        }
    }
};
ke.forEach(["delete", "get", "head", "post", "put", "patch"], e => {
    zp.headers[e] = {}
});
const Wp = zp,
    zG = ke.toObjectSet(["age", "authorization", "content-length", "content-type", "etag", "expires", "from", "host", "if-modified-since", "if-unmodified-since", "last-modified", "location", "max-forwards", "proxy-authorization", "referer", "retry-after", "user-agent"]),
    WG = e => {
        const t = {};
        let n, r, A;
        return e && e.split(`
`).forEach(function(s) {
            A = s.indexOf(":"), n = s.substring(0, A).trim().toLowerCase(), r = s.substring(A + 1).trim(), !(!n || t[n] && zG[n]) && (n === "set-cookie" ? t[n] ? t[n].push(r) : t[n] = [r] : t[n] = t[n] ? t[n] + ", " + r : r)
        }), t
    },
    vm = Symbol("internals");

function rl(e) {
    return e && String(e).trim().toLowerCase()
}

function ju(e) {
    return e === !1 || e == null ? e : ke.isArray(e) ? e.map(ju) : String(e)
}

function jG(e) {
    const t = Object.create(null),
        n = /([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;
    let r;
    for (; r = n.exec(e);) t[r[1]] = r[2];
    return t
}
const YG = e => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());

function Ed(e, t, n, r, A) {
    if (ke.isFunction(r)) return r.call(this, t, n);
    if (A && (t = n), !!ke.isString(t)) {
        if (ke.isString(r)) return t.indexOf(r) !== -1;
        if (ke.isRegExp(r)) return r.test(t)
    }
}

function XG(e) {
    return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g, (t, n, r) => n.toUpperCase() + r)
}

function JG(e, t) {
    const n = ke.toCamelCase(" " + t);
    ["get", "set", "has"].forEach(r => {
        Object.defineProperty(e, r + n, {
            value: function(A, i, s) {
                return this[r].call(this, t, A, i, s)
            },
            configurable: !0
        })
    })
}
class Pf {
    constructor(t) {
        t && this.set(t)
    }
    set(t, n, r) {
        const A = this;

        function i(a, o, l) {
            const u = rl(o);
            if (!u) throw new Error("header name must be a non-empty string");
            const f = ke.findKey(A, u);
            (!f || A[f] === void 0 || l === !0 || l === void 0 && A[f] !== !1) && (A[f || o] = ju(a))
        }
        const s = (a, o) => ke.forEach(a, (l, u) => i(l, u, o));
        return ke.isPlainObject(t) || t instanceof this.constructor ? s(t, n) : ke.isString(t) && (t = t.trim()) && !YG(t) ? s(WG(t), n) : t != null && i(n, t, r), this
    }
    get(t, n) {
        if (t = rl(t), t) {
            const r = ke.findKey(this, t);
            if (r) {
                const A = this[r];
                if (!n) return A;
                if (n === !0) return jG(A);
                if (ke.isFunction(n)) return n.call(this, A, r);
                if (ke.isRegExp(n)) return n.exec(A);
                throw new TypeError("parser must be boolean|regexp|function")
            }
        }
    }
    has(t, n) {
        if (t = rl(t), t) {
            const r = ke.findKey(this, t);
            return !!(r && this[r] !== void 0 && (!n || Ed(this, this[r], r, n)))
        }
        return !1
    }
    delete(t, n) {
        const r = this;
        let A = !1;

        function i(s) {
            if (s = rl(s), s) {
                const a = ke.findKey(r, s);
                a && (!n || Ed(r, r[a], a, n)) && (delete r[a], A = !0)
            }
        }
        return ke.isArray(t) ? t.forEach(i) : i(t), A
    }
    clear(t) {
        const n = Object.keys(this);
        let r = n.length,
            A = !1;
        for (; r--;) {
            const i = n[r];
            (!t || Ed(this, this[i], i, t, !0)) && (delete this[i], A = !0)
        }
        return A
    }
    normalize(t) {
        const n = this,
            r = {};
        return ke.forEach(this, (A, i) => {
            const s = ke.findKey(r, i);
            if (s) {
                n[s] = ju(A), delete n[i];
                return
            }
            const a = t ? XG(i) : String(i).trim();
            a !== i && delete n[i], n[a] = ju(A), r[a] = !0
        }), this
    }
    concat(...t) {
        return this.constructor.concat(this, ...t)
    }
    toJSON(t) {
        const n = Object.create(null);
        return ke.forEach(this, (r, A) => {
            r != null && r !== !1 && (n[A] = t && ke.isArray(r) ? r.join(", ") : r)
        }), n
    }[Symbol.iterator]() {
        return Object.entries(this.toJSON())[Symbol.iterator]()
    }
    toString() {
        return Object.entries(this.toJSON()).map(([t, n]) => t + ": " + n).join(`
`)
    }
    get[Symbol.toStringTag]() {
        return "AxiosHeaders"
    }
    static from(t) {
        return t instanceof this ? t : new this(t)
    }
    static concat(t, ...n) {
        const r = new this(t);
        return n.forEach(A => r.set(A)), r
    }
    static accessor(t) {
        const r = (this[vm] = this[vm] = {
                accessors: {}
            }).accessors,
            A = this.prototype;

        function i(s) {
            const a = rl(s);
            r[a] || (JG(A, s), r[a] = !0)
        }
        return ke.isArray(t) ? t.forEach(i) : i(t), this
    }
}
Pf.accessor(["Content-Type", "Content-Length", "Accept", "Accept-Encoding", "User-Agent", "Authorization"]);
ke.reduceDescriptors(Pf.prototype, ({
    value: e
}, t) => {
    let n = t[0].toUpperCase() + t.slice(1);
    return {
        get: () => e,
        set(r) {
            this[n] = r
        }
    }
});
ke.freezeMethods(Pf);
const qA = Pf;

function bd(e, t) {
    const n = this || Wp,
        r = t || n,
        A = qA.from(r.headers);
    let i = r.data;
    return ke.forEach(e, function(a) {
        i = a.call(n, i, A.normalize(), t ? t.status : void 0)
    }), A.normalize(), i
}

function By(e) {
    return !!(e && e.__CANCEL__)
}

function _0(e, t, n) {
    St.call(this, e ? ? "canceled", St.ERR_CANCELED, t, n), this.name = "CanceledError"
}
ke.inherits(_0, St, {
    __CANCEL__: !0
});

function qG(e, t, n) {
    const r = n.config.validateStatus;
    !n.status || !r || r(n.status) ? e(n) : t(new St("Request failed with status code " + n.status, [St.ERR_BAD_REQUEST, St.ERR_BAD_RESPONSE][Math.floor(n.status / 100) - 4], n.config, n.request, n))
}
const ZG = CA.hasStandardBrowserEnv ? {
    write(e, t, n, r, A, i) {
        const s = [e + "=" + encodeURIComponent(t)];
        ke.isNumber(n) && s.push("expires=" + new Date(n).toGMTString()), ke.isString(r) && s.push("path=" + r), ke.isString(A) && s.push("domain=" + A), i === !0 && s.push("secure"), document.cookie = s.join("; ")
    },
    read(e) {
        const t = document.cookie.match(new RegExp("(^|;\\s*)(" + e + ")=([^;]*)"));
        return t ? decodeURIComponent(t[3]) : null
    },
    remove(e) {
        this.write(e, "", Date.now() - 864e5)
    }
} : {
    write() {},
    read() {
        return null
    },
    remove() {}
};

function ez(e) {
    return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)
}

function tz(e, t) {
    return t ? e.replace(/\/?\/$/, "") + "/" + t.replace(/^\/+/, "") : e
}

function wy(e, t) {
    return e && !ez(t) ? tz(e, t) : t
}
const nz = CA.hasStandardBrowserEnv ? function() {
    const t = /(msie|trident)/i.test(navigator.userAgent),
        n = document.createElement("a");
    let r;

    function A(i) {
        let s = i;
        return t && (n.setAttribute("href", s), s = n.href), n.setAttribute("href", s), {
            href: n.href,
            protocol: n.protocol ? n.protocol.replace(/:$/, "") : "",
            host: n.host,
            search: n.search ? n.search.replace(/^\?/, "") : "",
            hash: n.hash ? n.hash.replace(/^#/, "") : "",
            hostname: n.hostname,
            port: n.port,
            pathname: n.pathname.charAt(0) === "/" ? n.pathname : "/" + n.pathname
        }
    }
    return r = A(window.location.href),
        function(s) {
            const a = ke.isString(s) ? A(s) : s;
            return a.protocol === r.protocol && a.host === r.host
        }
}() : function() {
    return function() {
        return !0
    }
}();

function rz(e) {
    const t = /^([-+\w]{1,25})(:?\/\/|:)/.exec(e);
    return t && t[1] || ""
}

function Az(e, t) {
    e = e || 10;
    const n = new Array(e),
        r = new Array(e);
    let A = 0,
        i = 0,
        s;
    return t = t !== void 0 ? t : 1e3,
        function(o) {
            const l = Date.now(),
                u = r[i];
            s || (s = l), n[A] = o, r[A] = l;
            let f = i,
                d = 0;
            for (; f !== A;) d += n[f++], f = f % e;
            if (A = (A + 1) % e, A === i && (i = (i + 1) % e), l - s < t) return;
            const p = u && l - u;
            return p ? Math.round(d * 1e3 / p) : void 0
        }
}

function mm(e, t) {
    let n = 0;
    const r = Az(50, 250);
    return A => {
        const i = A.loaded,
            s = A.lengthComputable ? A.total : void 0,
            a = i - n,
            o = r(a),
            l = i <= s;
        n = i;
        const u = {
            loaded: i,
            total: s,
            progress: s ? i / s : void 0,
            bytes: a,
            rate: o || void 0,
            estimated: o && s && l ? (s - i) / o : void 0,
            event: A
        };
        u[t ? "download" : "upload"] = !0, e(u)
    }
}
const iz = typeof XMLHttpRequest < "u",
    sz = iz && function(e) {
        return new Promise(function(n, r) {
            let A = e.data;
            const i = qA.from(e.headers).normalize();
            let {
                responseType: s,
                withXSRFToken: a
            } = e, o;

            function l() {
                e.cancelToken && e.cancelToken.unsubscribe(o), e.signal && e.signal.removeEventListener("abort", o)
            }
            let u;
            if (ke.isFormData(A)) {
                if (CA.hasStandardBrowserEnv || CA.hasStandardBrowserWebWorkerEnv) i.setContentType(!1);
                else if ((u = i.getContentType()) !== !1) {
                    const [g, ...y] = u ? u.split(";").map(w => w.trim()).filter(Boolean) : [];
                    i.setContentType([g || "multipart/form-data", ...y].join("; "))
                }
            }
            let f = new XMLHttpRequest;
            if (e.auth) {
                const g = e.auth.username || "",
                    y = e.auth.password ? unescape(encodeURIComponent(e.auth.password)) : "";
                i.set("Authorization", "Basic " + btoa(g + ":" + y))
            }
            const d = wy(e.baseURL, e.url);
            f.open(e.method.toUpperCase(), py(d, e.params, e.paramsSerializer), !0), f.timeout = e.timeout;

            function p() {
                if (!f) return;
                const g = qA.from("getAllResponseHeaders" in f && f.getAllResponseHeaders()),
                    w = {
                        data: !s || s === "text" || s === "json" ? f.responseText : f.response,
                        status: f.status,
                        statusText: f.statusText,
                        headers: g,
                        config: e,
                        request: f
                    };
                qG(function(x) {
                    n(x), l()
                }, function(x) {
                    r(x), l()
                }, w), f = null
            }
            if ("onloadend" in f ? f.onloadend = p : f.onreadystatechange = function() {
                    !f || f.readyState !== 4 || f.status === 0 && !(f.responseURL && f.responseURL.indexOf("file:") === 0) || setTimeout(p)
                }, f.onabort = function() {
                    f && (r(new St("Request aborted", St.ECONNABORTED, e, f)), f = null)
                }, f.onerror = function() {
                    r(new St("Network Error", St.ERR_NETWORK, e, f)), f = null
                }, f.ontimeout = function() {
                    let y = e.timeout ? "timeout of " + e.timeout + "ms exceeded" : "timeout exceeded";
                    const w = e.transitional || gy;
                    e.timeoutErrorMessage && (y = e.timeoutErrorMessage), r(new St(y, w.clarifyTimeoutError ? St.ETIMEDOUT : St.ECONNABORTED, e, f)), f = null
                }, CA.hasStandardBrowserEnv && (a && ke.isFunction(a) && (a = a(e)), a || a !== !1 && nz(d))) {
                const g = e.xsrfHeaderName && e.xsrfCookieName && ZG.read(e.xsrfCookieName);
                g && i.set(e.xsrfHeaderName, g)
            }
            A === void 0 && i.setContentType(null), "setRequestHeader" in f && ke.forEach(i.toJSON(), function(y, w) {
                f.setRequestHeader(w, y)
            }), ke.isUndefined(e.withCredentials) || (f.withCredentials = !!e.withCredentials), s && s !== "json" && (f.responseType = e.responseType), typeof e.onDownloadProgress == "function" && f.addEventListener("progress", mm(e.onDownloadProgress, !0)), typeof e.onUploadProgress == "function" && f.upload && f.upload.addEventListener("progress", mm(e.onUploadProgress)), (e.cancelToken || e.signal) && (o = g => {
                f && (r(!g || g.type ? new _0(null, e, f) : g), f.abort(), f = null)
            }, e.cancelToken && e.cancelToken.subscribe(o), e.signal && (e.signal.aborted ? o() : e.signal.addEventListener("abort", o)));
            const m = rz(d);
            if (m && CA.protocols.indexOf(m) === -1) {
                r(new St("Unsupported protocol " + m + ":", St.ERR_BAD_REQUEST, e));
                return
            }
            f.send(A || null)
        })
    },
    ph = {
        http: UG,
        xhr: sz
    };
ke.forEach(ph, (e, t) => {
    if (e) {
        try {
            Object.defineProperty(e, "name", {
                value: t
            })
        } catch {}
        Object.defineProperty(e, "adapterName", {
            value: t
        })
    }
});
const Bm = e => `- ${e}`,
    az = e => ke.isFunction(e) || e === null || e === !1,
    yy = {
        getAdapter: e => {
            e = ke.isArray(e) ? e : [e];
            const {
                length: t
            } = e;
            let n, r;
            const A = {};
            for (let i = 0; i < t; i++) {
                n = e[i];
                let s;
                if (r = n, !az(n) && (r = ph[(s = String(n)).toLowerCase()], r === void 0)) throw new St(`Unknown adapter '${s}'`);
                if (r) break;
                A[s || "#" + i] = r
            }
            if (!r) {
                const i = Object.entries(A).map(([a, o]) => `adapter ${a} ` + (o === !1 ? "is not supported by the environment" : "is not available in the build"));
                let s = t ? i.length > 1 ? `since :
` + i.map(Bm).join(`
`) : " " + Bm(i[0]) : "as no adapter specified";
                throw new St("There is no suitable adapter to dispatch the request " + s, "ERR_NOT_SUPPORT")
            }
            return r
        },
        adapters: ph
    };

function Fd(e) {
    if (e.cancelToken && e.cancelToken.throwIfRequested(), e.signal && e.signal.aborted) throw new _0(null, e)
}

function wm(e) {
    return Fd(e), e.headers = qA.from(e.headers), e.data = bd.call(e, e.transformRequest), ["post", "put", "patch"].indexOf(e.method) !== -1 && e.headers.setContentType("application/x-www-form-urlencoded", !1), yy.getAdapter(e.adapter || Wp.adapter)(e).then(function(r) {
        return Fd(e), r.data = bd.call(e, e.transformResponse, r), r.headers = qA.from(r.headers), r
    }, function(r) {
        return By(r) || (Fd(e), r && r.response && (r.response.data = bd.call(e, e.transformResponse, r.response), r.response.headers = qA.from(r.response.headers))), Promise.reject(r)
    })
}
const ym = e => e instanceof qA ? { ...e
} : e;

function oo(e, t) {
    t = t || {};
    const n = {};

    function r(l, u, f) {
        return ke.isPlainObject(l) && ke.isPlainObject(u) ? ke.merge.call({
            caseless: f
        }, l, u) : ke.isPlainObject(u) ? ke.merge({}, u) : ke.isArray(u) ? u.slice() : u
    }

    function A(l, u, f) {
        if (ke.isUndefined(u)) {
            if (!ke.isUndefined(l)) return r(void 0, l, f)
        } else return r(l, u, f)
    }

    function i(l, u) {
        if (!ke.isUndefined(u)) return r(void 0, u)
    }

    function s(l, u) {
        if (ke.isUndefined(u)) {
            if (!ke.isUndefined(l)) return r(void 0, l)
        } else return r(void 0, u)
    }

    function a(l, u, f) {
        if (f in t) return r(l, u);
        if (f in e) return r(void 0, l)
    }
    const o = {
        url: i,
        method: i,
        data: i,
        baseURL: s,
        transformRequest: s,
        transformResponse: s,
        paramsSerializer: s,
        timeout: s,
        timeoutMessage: s,
        withCredentials: s,
        withXSRFToken: s,
        adapter: s,
        responseType: s,
        xsrfCookieName: s,
        xsrfHeaderName: s,
        onUploadProgress: s,
        onDownloadProgress: s,
        decompress: s,
        maxContentLength: s,
        maxBodyLength: s,
        beforeRedirect: s,
        transport: s,
        httpAgent: s,
        httpsAgent: s,
        cancelToken: s,
        socketPath: s,
        responseEncoding: s,
        validateStatus: a,
        headers: (l, u) => A(ym(l), ym(u), !0)
    };
    return ke.forEach(Object.keys(Object.assign({}, e, t)), function(u) {
        const f = o[u] || A,
            d = f(e[u], t[u], u);
        ke.isUndefined(d) && f !== a || (n[u] = d)
    }), n
}
const Cy = "1.6.8",
    jp = {};
["object", "boolean", "number", "function", "string", "symbol"].forEach((e, t) => {
    jp[e] = function(r) {
        return typeof r === e || "a" + (t < 1 ? "n " : " ") + e
    }
});
const Cm = {};
jp.transitional = function(t, n, r) {
    function A(i, s) {
        return "[Axios v" + Cy + "] Transitional option '" + i + "'" + s + (r ? ". " + r : "")
    }
    return (i, s, a) => {
        if (t === !1) throw new St(A(s, " has been removed" + (n ? " in " + n : "")), St.ERR_DEPRECATED);
        return n && !Cm[s] && (Cm[s] = !0, console.warn(A(s, " has been deprecated since v" + n + " and will be removed in the near future"))), t ? t(i, s, a) : !0
    }
};

function oz(e, t, n) {
    if (typeof e != "object") throw new St("options must be an object", St.ERR_BAD_OPTION_VALUE);
    const r = Object.keys(e);
    let A = r.length;
    for (; A-- > 0;) {
        const i = r[A],
            s = t[i];
        if (s) {
            const a = e[i],
                o = a === void 0 || s(a, i, e);
            if (o !== !0) throw new St("option " + i + " must be " + o, St.ERR_BAD_OPTION_VALUE);
            continue
        }
        if (n !== !0) throw new St("Unknown option " + i, St.ERR_BAD_OPTION)
    }
}
const gh = {
        assertOptions: oz,
        validators: jp
    },
    Ii = gh.validators;
class vc {
    constructor(t) {
        this.defaults = t, this.interceptors = {
            request: new gm,
            response: new gm
        }
    }
    async request(t, n) {
        try {
            return await this._request(t, n)
        } catch (r) {
            if (r instanceof Error) {
                let A;
                Error.captureStackTrace ? Error.captureStackTrace(A = {}) : A = new Error;
                const i = A.stack ? A.stack.replace(/^.+\n/, "") : "";
                r.stack ? i && !String(r.stack).endsWith(i.replace(/^.+\n.+\n/, "")) && (r.stack += `
` + i) : r.stack = i
            }
            throw r
        }
    }
    _request(t, n) {
        typeof t == "string" ? (n = n || {}, n.url = t) : n = t || {}, n = oo(this.defaults, n);
        const {
            transitional: r,
            paramsSerializer: A,
            headers: i
        } = n;
        r !== void 0 && gh.assertOptions(r, {
            silentJSONParsing: Ii.transitional(Ii.boolean),
            forcedJSONParsing: Ii.transitional(Ii.boolean),
            clarifyTimeoutError: Ii.transitional(Ii.boolean)
        }, !1), A != null && (ke.isFunction(A) ? n.paramsSerializer = {
            serialize: A
        } : gh.assertOptions(A, {
            encode: Ii.function,
            serialize: Ii.function
        }, !0)), n.method = (n.method || this.defaults.method || "get").toLowerCase();
        let s = i && ke.merge(i.common, i[n.method]);
        i && ke.forEach(["delete", "get", "head", "post", "put", "patch", "common"], m => {
            delete i[m]
        }), n.headers = qA.concat(s, i);
        const a = [];
        let o = !0;
        this.interceptors.request.forEach(function(g) {
            typeof g.runWhen == "function" && g.runWhen(n) === !1 || (o = o && g.synchronous, a.unshift(g.fulfilled, g.rejected))
        });
        const l = [];
        this.interceptors.response.forEach(function(g) {
            l.push(g.fulfilled, g.rejected)
        });
        let u, f = 0,
            d;
        if (!o) {
            const m = [wm.bind(this), void 0];
            for (m.unshift.apply(m, a), m.push.apply(m, l), d = m.length, u = Promise.resolve(n); f < d;) u = u.then(m[f++], m[f++]);
            return u
        }
        d = a.length;
        let p = n;
        for (f = 0; f < d;) {
            const m = a[f++],
                g = a[f++];
            try {
                p = m(p)
            } catch (y) {
                g.call(this, y);
                break
            }
        }
        try {
            u = wm.call(this, p)
        } catch (m) {
            return Promise.reject(m)
        }
        for (f = 0, d = l.length; f < d;) u = u.then(l[f++], l[f++]);
        return u
    }
    getUri(t) {
        t = oo(this.defaults, t);
        const n = wy(t.baseURL, t.url);
        return py(n, t.params, t.paramsSerializer)
    }
}
ke.forEach(["delete", "get", "head", "options"], function(t) {
    vc.prototype[t] = function(n, r) {
        return this.request(oo(r || {}, {
            method: t,
            url: n,
            data: (r || {}).data
        }))
    }
});
ke.forEach(["post", "put", "patch"], function(t) {
    function n(r) {
        return function(i, s, a) {
            return this.request(oo(a || {}, {
                method: t,
                headers: r ? {
                    "Content-Type": "multipart/form-data"
                } : {},
                url: i,
                data: s
            }))
        }
    }
    vc.prototype[t] = n(), vc.prototype[t + "Form"] = n(!0)
});
const Yu = vc;
class Yp {
    constructor(t) {
        if (typeof t != "function") throw new TypeError("executor must be a function.");
        let n;
        this.promise = new Promise(function(i) {
            n = i
        });
        const r = this;
        this.promise.then(A => {
            if (!r._listeners) return;
            let i = r._listeners.length;
            for (; i-- > 0;) r._listeners[i](A);
            r._listeners = null
        }), this.promise.then = A => {
            let i;
            const s = new Promise(a => {
                r.subscribe(a), i = a
            }).then(A);
            return s.cancel = function() {
                r.unsubscribe(i)
            }, s
        }, t(function(i, s, a) {
            r.reason || (r.reason = new _0(i, s, a), n(r.reason))
        })
    }
    throwIfRequested() {
        if (this.reason) throw this.reason
    }
    subscribe(t) {
        if (this.reason) {
            t(this.reason);
            return
        }
        this._listeners ? this._listeners.push(t) : this._listeners = [t]
    }
    unsubscribe(t) {
        if (!this._listeners) return;
        const n = this._listeners.indexOf(t);
        n !== -1 && this._listeners.splice(n, 1)
    }
    static source() {
        let t;
        return {
            token: new Yp(function(A) {
                t = A
            }),
            cancel: t
        }
    }
}
const lz = Yp;

function uz(e) {
    return function(n) {
        return e.apply(null, n)
    }
}

function cz(e) {
    return ke.isObject(e) && e.isAxiosError === !0
}
const vh = {
    Continue: 100,
    SwitchingProtocols: 101,
    Processing: 102,
    EarlyHints: 103,
    Ok: 200,
    Created: 201,
    Accepted: 202,
    NonAuthoritativeInformation: 203,
    NoContent: 204,
    ResetContent: 205,
    PartialContent: 206,
    MultiStatus: 207,
    AlreadyReported: 208,
    ImUsed: 226,
    MultipleChoices: 300,
    MovedPermanently: 301,
    Found: 302,
    SeeOther: 303,
    NotModified: 304,
    UseProxy: 305,
    Unused: 306,
    TemporaryRedirect: 307,
    PermanentRedirect: 308,
    BadRequest: 400,
    Unauthorized: 401,
    PaymentRequired: 402,
    Forbidden: 403,
    NotFound: 404,
    MethodNotAllowed: 405,
    NotAcceptable: 406,
    ProxyAuthenticationRequired: 407,
    RequestTimeout: 408,
    Conflict: 409,
    Gone: 410,
    LengthRequired: 411,
    PreconditionFailed: 412,
    PayloadTooLarge: 413,
    UriTooLong: 414,
    UnsupportedMediaType: 415,
    RangeNotSatisfiable: 416,
    ExpectationFailed: 417,
    ImATeapot: 418,
    MisdirectedRequest: 421,
    UnprocessableEntity: 422,
    Locked: 423,
    FailedDependency: 424,
    TooEarly: 425,
    UpgradeRequired: 426,
    PreconditionRequired: 428,
    TooManyRequests: 429,
    RequestHeaderFieldsTooLarge: 431,
    UnavailableForLegalReasons: 451,
    InternalServerError: 500,
    NotImplemented: 501,
    BadGateway: 502,
    ServiceUnavailable: 503,
    GatewayTimeout: 504,
    HttpVersionNotSupported: 505,
    VariantAlsoNegotiates: 506,
    InsufficientStorage: 507,
    LoopDetected: 508,
    NotExtended: 510,
    NetworkAuthenticationRequired: 511
};
Object.entries(vh).forEach(([e, t]) => {
    vh[t] = e
});
const fz = vh;

function xy(e) {
    const t = new Yu(e),
        n = ry(Yu.prototype.request, t);
    return ke.extend(n, Yu.prototype, t, {
        allOwnKeys: !0
    }), ke.extend(n, t, null, {
        allOwnKeys: !0
    }), n.create = function(A) {
        return xy(oo(e, A))
    }, n
}
const pn = xy(Wp);
pn.Axios = Yu;
pn.CanceledError = _0;
pn.CancelToken = lz;
pn.isCancel = By;
pn.VERSION = Cy;
pn.toFormData = Df;
pn.AxiosError = St;
pn.Cancel = pn.CanceledError;
pn.all = function(t) {
    return Promise.all(t)
};
pn.spread = uz;
pn.isAxiosError = cz;
pn.mergeConfig = oo;
pn.AxiosHeaders = qA;
pn.formToJSON = e => my(ke.isHTMLForm(e) ? new FormData(e) : e);
pn.getAdapter = yy.getAdapter;
pn.HttpStatusCode = fz;
pn.default = pn;
const jne = pn;
var Ey = {
    exports: {}
};
(function(e) {
    (function(t) {
        for (var n = [null, 0, {}], r = 10, A = 44032, i = 4352, s = 4449, a = 4519, o = 19, l = 21, u = 28, f = l * u, d = o * f, p = function(Y, ue) {
                this.codepoint = Y, this.feature = ue
            }, m = {}, g = [], y = 0; y <= 255; ++y) g[y] = 0;

        function w(Y, ue, ye) {
            var ee = m[ue];
            return ee || (ee = Y(ue, ye), ee.feature && ++g[ue >> 8 & 255] > r && (m[ue] = ee)), ee
        }

        function B(Y, ue, ye) {
            var ee = ue & 65280,
                ce = p.udata[ee] || {},
                ve = ce[ue];
            return ve ? new p(ue, ve) : new p(ue, n)
        }

        function x(Y, ue, ye) {
            return ye ? Y(ue, ye) : new p(ue, null)
        }

        function C(Y, ue, ye) {
            var ee;
            if (ue < i || i + o <= ue && ue < A || A + d < ue) return Y(ue, ye);
            if (i <= ue && ue < i + o) {
                var ce = {},
                    ve = (ue - i) * l;
                for (ee = 0; ee < l; ++ee) ce[s + ee] = A + u * (ee + ve);
                return new p(ue, [, , ce])
            }
            var xe = ue - A,
                se = xe % u,
                Fe = [];
            if (se !== 0) Fe[0] = [A + xe - se, a + se];
            else
                for (Fe[0] = [i + Math.floor(xe / f), s + Math.floor(xe % f / u)], Fe[2] = {}, ee = 1; ee < u; ++ee) Fe[2][a + ee] = ue + ee;
            return new p(ue, Fe)
        }

        function b(Y, ue, ye) {
            return ue < 60 || 13311 < ue && ue < 42607 ? new p(ue, n) : Y(ue, ye)
        }
        var F = [b, w, x, C, B];
        p.fromCharCode = F.reduceRight(function(Y, ue) {
            return function(ye, ee) {
                return ue(Y, ye, ee)
            }
        }, null), p.isHighSurrogate = function(Y) {
            return Y >= 55296 && Y <= 56319
        }, p.isLowSurrogate = function(Y) {
            return Y >= 56320 && Y <= 57343
        }, p.prototype.prepFeature = function() {
            this.feature || (this.feature = p.fromCharCode(this.codepoint, !0).feature)
        }, p.prototype.toString = function() {
            if (this.codepoint < 65536) return String.fromCharCode(this.codepoint);
            var Y = this.codepoint - 65536;
            return String.fromCharCode(Math.floor(Y / 1024) + 55296, Y % 1024 + 56320)
        }, p.prototype.getDecomp = function() {
            return this.prepFeature(), this.feature[0] || null
        }, p.prototype.isCompatibility = function() {
            return this.prepFeature(), !!this.feature[1] && this.feature[1] & 256
        }, p.prototype.isExclude = function() {
            return this.prepFeature(), !!this.feature[1] && this.feature[1] & 512
        }, p.prototype.getCanonicalClass = function() {
            return this.prepFeature(), this.feature[1] ? this.feature[1] & 255 : 0
        }, p.prototype.getComposite = function(Y) {
            if (this.prepFeature(), !this.feature[2]) return null;
            var ue = this.feature[2][Y.codepoint];
            return ue ? p.fromCharCode(ue) : null
        };
        var T = function(Y) {
            this.str = Y, this.cursor = 0
        };
        T.prototype.next = function() {
            if (this.str && this.cursor < this.str.length) {
                var Y = this.str.charCodeAt(this.cursor++),
                    ue;
                return p.isHighSurrogate(Y) && this.cursor < this.str.length && p.isLowSurrogate(ue = this.str.charCodeAt(this.cursor)) && (Y = (Y - 55296) * 1024 + (ue - 56320) + 65536, ++this.cursor), p.fromCharCode(Y)
            } else return this.str = null, null
        };
        var I = function(Y, ue) {
            this.it = Y, this.canonical = ue, this.resBuf = []
        };
        I.prototype.next = function() {
            function Y(ye, ee) {
                var ce = ee.getDecomp();
                if (ce && !(ye && ee.isCompatibility())) {
                    for (var ve = [], xe = 0; xe < ce.length; ++xe) {
                        var se = Y(ye, p.fromCharCode(ce[xe]));
                        ve = ve.concat(se)
                    }
                    return ve
                } else return [ee]
            }
            if (this.resBuf.length === 0) {
                var ue = this.it.next();
                if (!ue) return null;
                this.resBuf = Y(this.canonical, ue)
            }
            return this.resBuf.shift()
        };
        var D = function(Y) {
            this.it = Y, this.resBuf = []
        };
        D.prototype.next = function() {
            var Y;
            if (this.resBuf.length === 0)
                do {
                    var ue = this.it.next();
                    if (!ue) break;
                    Y = ue.getCanonicalClass();
                    var ye = this.resBuf.length;
                    if (Y !== 0)
                        for (; ye > 0; --ye) {
                            var ee = this.resBuf[ye - 1],
                                ce = ee.getCanonicalClass();
                            if (ce <= Y) break
                        }
                    this.resBuf.splice(ye, 0, ue)
                } while (Y !== 0);
            return this.resBuf.shift()
        };
        var U = function(Y) {
            this.it = Y, this.procBuf = [], this.resBuf = [], this.lastClass = null
        };
        U.prototype.next = function() {
            for (; this.resBuf.length === 0;) {
                var Y = this.it.next();
                if (!Y) {
                    this.resBuf = this.procBuf, this.procBuf = [];
                    break
                }
                if (this.procBuf.length === 0) this.lastClass = Y.getCanonicalClass(), this.procBuf.push(Y);
                else {
                    var ue = this.procBuf[0],
                        ye = ue.getComposite(Y),
                        ee = Y.getCanonicalClass();
                    ye && (this.lastClass < ee || this.lastClass === 0) ? this.procBuf[0] = ye : (ee === 0 && (this.resBuf = this.procBuf, this.procBuf = []), this.lastClass = ee, this.procBuf.push(Y))
                }
            }
            return this.resBuf.shift()
        };
        var Q = function(Y, ue) {
                switch (Y) {
                    case "NFD":
                        return new D(new I(new T(ue), !0));
                    case "NFKD":
                        return new D(new I(new T(ue), !1));
                    case "NFC":
                        return new U(new D(new I(new T(ue), !0)));
                    case "NFKC":
                        return new U(new D(new I(new T(ue), !1)))
                }
                throw Y + " is invalid"
            },
            O = function(Y, ue) {
                for (var ye = Q(Y, ue), ee = "", ce; ce = ye.next();) ee += ce.toString();
                return ee
            };

        function N(Y) {
            return O("NFD", Y)
        }

        function J(Y) {
            return O("NFKD", Y)
        }

        function j(Y) {
            return O("NFC", Y)
        }

        function V(Y) {
            return O("NFKC", Y)
        }
        p.udata = {
            0: {
                60: [, , {
                    824: 8814
                }],
                61: [, , {
                    824: 8800
                }],
                62: [, , {
                    824: 8815
                }],
                65: [, , {
                    768: 192,
                    769: 193,
                    770: 194,
                    771: 195,
                    772: 256,
                    774: 258,
                    775: 550,
                    776: 196,
                    777: 7842,
                    778: 197,
                    780: 461,
                    783: 512,
                    785: 514,
                    803: 7840,
                    805: 7680,
                    808: 260
                }],
                66: [, , {
                    775: 7682,
                    803: 7684,
                    817: 7686
                }],
                67: [, , {
                    769: 262,
                    770: 264,
                    775: 266,
                    780: 268,
                    807: 199
                }],
                68: [, , {
                    775: 7690,
                    780: 270,
                    803: 7692,
                    807: 7696,
                    813: 7698,
                    817: 7694
                }],
                69: [, , {
                    768: 200,
                    769: 201,
                    770: 202,
                    771: 7868,
                    772: 274,
                    774: 276,
                    775: 278,
                    776: 203,
                    777: 7866,
                    780: 282,
                    783: 516,
                    785: 518,
                    803: 7864,
                    807: 552,
                    808: 280,
                    813: 7704,
                    816: 7706
                }],
                70: [, , {
                    775: 7710
                }],
                71: [, , {
                    769: 500,
                    770: 284,
                    772: 7712,
                    774: 286,
                    775: 288,
                    780: 486,
                    807: 290
                }],
                72: [, , {
                    770: 292,
                    775: 7714,
                    776: 7718,
                    780: 542,
                    803: 7716,
                    807: 7720,
                    814: 7722
                }],
                73: [, , {
                    768: 204,
                    769: 205,
                    770: 206,
                    771: 296,
                    772: 298,
                    774: 300,
                    775: 304,
                    776: 207,
                    777: 7880,
                    780: 463,
                    783: 520,
                    785: 522,
                    803: 7882,
                    808: 302,
                    816: 7724
                }],
                74: [, , {
                    770: 308
                }],
                75: [, , {
                    769: 7728,
                    780: 488,
                    803: 7730,
                    807: 310,
                    817: 7732
                }],
                76: [, , {
                    769: 313,
                    780: 317,
                    803: 7734,
                    807: 315,
                    813: 7740,
                    817: 7738
                }],
                77: [, , {
                    769: 7742,
                    775: 7744,
                    803: 7746
                }],
                78: [, , {
                    768: 504,
                    769: 323,
                    771: 209,
                    775: 7748,
                    780: 327,
                    803: 7750,
                    807: 325,
                    813: 7754,
                    817: 7752
                }],
                79: [, , {
                    768: 210,
                    769: 211,
                    770: 212,
                    771: 213,
                    772: 332,
                    774: 334,
                    775: 558,
                    776: 214,
                    777: 7886,
                    779: 336,
                    780: 465,
                    783: 524,
                    785: 526,
                    795: 416,
                    803: 7884,
                    808: 490
                }],
                80: [, , {
                    769: 7764,
                    775: 7766
                }],
                82: [, , {
                    769: 340,
                    775: 7768,
                    780: 344,
                    783: 528,
                    785: 530,
                    803: 7770,
                    807: 342,
                    817: 7774
                }],
                83: [, , {
                    769: 346,
                    770: 348,
                    775: 7776,
                    780: 352,
                    803: 7778,
                    806: 536,
                    807: 350
                }],
                84: [, , {
                    775: 7786,
                    780: 356,
                    803: 7788,
                    806: 538,
                    807: 354,
                    813: 7792,
                    817: 7790
                }],
                85: [, , {
                    768: 217,
                    769: 218,
                    770: 219,
                    771: 360,
                    772: 362,
                    774: 364,
                    776: 220,
                    777: 7910,
                    778: 366,
                    779: 368,
                    780: 467,
                    783: 532,
                    785: 534,
                    795: 431,
                    803: 7908,
                    804: 7794,
                    808: 370,
                    813: 7798,
                    816: 7796
                }],
                86: [, , {
                    771: 7804,
                    803: 7806
                }],
                87: [, , {
                    768: 7808,
                    769: 7810,
                    770: 372,
                    775: 7814,
                    776: 7812,
                    803: 7816
                }],
                88: [, , {
                    775: 7818,
                    776: 7820
                }],
                89: [, , {
                    768: 7922,
                    769: 221,
                    770: 374,
                    771: 7928,
                    772: 562,
                    775: 7822,
                    776: 376,
                    777: 7926,
                    803: 7924
                }],
                90: [, , {
                    769: 377,
                    770: 7824,
                    775: 379,
                    780: 381,
                    803: 7826,
                    817: 7828
                }],
                97: [, , {
                    768: 224,
                    769: 225,
                    770: 226,
                    771: 227,
                    772: 257,
                    774: 259,
                    775: 551,
                    776: 228,
                    777: 7843,
                    778: 229,
                    780: 462,
                    783: 513,
                    785: 515,
                    803: 7841,
                    805: 7681,
                    808: 261
                }],
                98: [, , {
                    775: 7683,
                    803: 7685,
                    817: 7687
                }],
                99: [, , {
                    769: 263,
                    770: 265,
                    775: 267,
                    780: 269,
                    807: 231
                }],
                100: [, , {
                    775: 7691,
                    780: 271,
                    803: 7693,
                    807: 7697,
                    813: 7699,
                    817: 7695
                }],
                101: [, , {
                    768: 232,
                    769: 233,
                    770: 234,
                    771: 7869,
                    772: 275,
                    774: 277,
                    775: 279,
                    776: 235,
                    777: 7867,
                    780: 283,
                    783: 517,
                    785: 519,
                    803: 7865,
                    807: 553,
                    808: 281,
                    813: 7705,
                    816: 7707
                }],
                102: [, , {
                    775: 7711
                }],
                103: [, , {
                    769: 501,
                    770: 285,
                    772: 7713,
                    774: 287,
                    775: 289,
                    780: 487,
                    807: 291
                }],
                104: [, , {
                    770: 293,
                    775: 7715,
                    776: 7719,
                    780: 543,
                    803: 7717,
                    807: 7721,
                    814: 7723,
                    817: 7830
                }],
                105: [, , {
                    768: 236,
                    769: 237,
                    770: 238,
                    771: 297,
                    772: 299,
                    774: 301,
                    776: 239,
                    777: 7881,
                    780: 464,
                    783: 521,
                    785: 523,
                    803: 7883,
                    808: 303,
                    816: 7725
                }],
                106: [, , {
                    770: 309,
                    780: 496
                }],
                107: [, , {
                    769: 7729,
                    780: 489,
                    803: 7731,
                    807: 311,
                    817: 7733
                }],
                108: [, , {
                    769: 314,
                    780: 318,
                    803: 7735,
                    807: 316,
                    813: 7741,
                    817: 7739
                }],
                109: [, , {
                    769: 7743,
                    775: 7745,
                    803: 7747
                }],
                110: [, , {
                    768: 505,
                    769: 324,
                    771: 241,
                    775: 7749,
                    780: 328,
                    803: 7751,
                    807: 326,
                    813: 7755,
                    817: 7753
                }],
                111: [, , {
                    768: 242,
                    769: 243,
                    770: 244,
                    771: 245,
                    772: 333,
                    774: 335,
                    775: 559,
                    776: 246,
                    777: 7887,
                    779: 337,
                    780: 466,
                    783: 525,
                    785: 527,
                    795: 417,
                    803: 7885,
                    808: 491
                }],
                112: [, , {
                    769: 7765,
                    775: 7767
                }],
                114: [, , {
                    769: 341,
                    775: 7769,
                    780: 345,
                    783: 529,
                    785: 531,
                    803: 7771,
                    807: 343,
                    817: 7775
                }],
                115: [, , {
                    769: 347,
                    770: 349,
                    775: 7777,
                    780: 353,
                    803: 7779,
                    806: 537,
                    807: 351
                }],
                116: [, , {
                    775: 7787,
                    776: 7831,
                    780: 357,
                    803: 7789,
                    806: 539,
                    807: 355,
                    813: 7793,
                    817: 7791
                }],
                117: [, , {
                    768: 249,
                    769: 250,
                    770: 251,
                    771: 361,
                    772: 363,
                    774: 365,
                    776: 252,
                    777: 7911,
                    778: 367,
                    779: 369,
                    780: 468,
                    783: 533,
                    785: 535,
                    795: 432,
                    803: 7909,
                    804: 7795,
                    808: 371,
                    813: 7799,
                    816: 7797
                }],
                118: [, , {
                    771: 7805,
                    803: 7807
                }],
                119: [, , {
                    768: 7809,
                    769: 7811,
                    770: 373,
                    775: 7815,
                    776: 7813,
                    778: 7832,
                    803: 7817
                }],
                120: [, , {
                    775: 7819,
                    776: 7821
                }],
                121: [, , {
                    768: 7923,
                    769: 253,
                    770: 375,
                    771: 7929,
                    772: 563,
                    775: 7823,
                    776: 255,
                    777: 7927,
                    778: 7833,
                    803: 7925
                }],
                122: [, , {
                    769: 378,
                    770: 7825,
                    775: 380,
                    780: 382,
                    803: 7827,
                    817: 7829
                }],
                160: [
                    [32], 256
                ],
                168: [
                    [32, 776], 256, {
                        768: 8173,
                        769: 901,
                        834: 8129
                    }
                ],
                170: [
                    [97], 256
                ],
                175: [
                    [32, 772], 256
                ],
                178: [
                    [50], 256
                ],
                179: [
                    [51], 256
                ],
                180: [
                    [32, 769], 256
                ],
                181: [
                    [956], 256
                ],
                184: [
                    [32, 807], 256
                ],
                185: [
                    [49], 256
                ],
                186: [
                    [111], 256
                ],
                188: [
                    [49, 8260, 52], 256
                ],
                189: [
                    [49, 8260, 50], 256
                ],
                190: [
                    [51, 8260, 52], 256
                ],
                192: [
                    [65, 768]
                ],
                193: [
                    [65, 769]
                ],
                194: [
                    [65, 770], , {
                        768: 7846,
                        769: 7844,
                        771: 7850,
                        777: 7848
                    }
                ],
                195: [
                    [65, 771]
                ],
                196: [
                    [65, 776], , {
                        772: 478
                    }
                ],
                197: [
                    [65, 778], , {
                        769: 506
                    }
                ],
                198: [, , {
                    769: 508,
                    772: 482
                }],
                199: [
                    [67, 807], , {
                        769: 7688
                    }
                ],
                200: [
                    [69, 768]
                ],
                201: [
                    [69, 769]
                ],
                202: [
                    [69, 770], , {
                        768: 7872,
                        769: 7870,
                        771: 7876,
                        777: 7874
                    }
                ],
                203: [
                    [69, 776]
                ],
                204: [
                    [73, 768]
                ],
                205: [
                    [73, 769]
                ],
                206: [
                    [73, 770]
                ],
                207: [
                    [73, 776], , {
                        769: 7726
                    }
                ],
                209: [
                    [78, 771]
                ],
                210: [
                    [79, 768]
                ],
                211: [
                    [79, 769]
                ],
                212: [
                    [79, 770], , {
                        768: 7890,
                        769: 7888,
                        771: 7894,
                        777: 7892
                    }
                ],
                213: [
                    [79, 771], , {
                        769: 7756,
                        772: 556,
                        776: 7758
                    }
                ],
                214: [
                    [79, 776], , {
                        772: 554
                    }
                ],
                216: [, , {
                    769: 510
                }],
                217: [
                    [85, 768]
                ],
                218: [
                    [85, 769]
                ],
                219: [
                    [85, 770]
                ],
                220: [
                    [85, 776], , {
                        768: 475,
                        769: 471,
                        772: 469,
                        780: 473
                    }
                ],
                221: [
                    [89, 769]
                ],
                224: [
                    [97, 768]
                ],
                225: [
                    [97, 769]
                ],
                226: [
                    [97, 770], , {
                        768: 7847,
                        769: 7845,
                        771: 7851,
                        777: 7849
                    }
                ],
                227: [
                    [97, 771]
                ],
                228: [
                    [97, 776], , {
                        772: 479
                    }
                ],
                229: [
                    [97, 778], , {
                        769: 507
                    }
                ],
                230: [, , {
                    769: 509,
                    772: 483
                }],
                231: [
                    [99, 807], , {
                        769: 7689
                    }
                ],
                232: [
                    [101, 768]
                ],
                233: [
                    [101, 769]
                ],
                234: [
                    [101, 770], , {
                        768: 7873,
                        769: 7871,
                        771: 7877,
                        777: 7875
                    }
                ],
                235: [
                    [101, 776]
                ],
                236: [
                    [105, 768]
                ],
                237: [
                    [105, 769]
                ],
                238: [
                    [105, 770]
                ],
                239: [
                    [105, 776], , {
                        769: 7727
                    }
                ],
                241: [
                    [110, 771]
                ],
                242: [
                    [111, 768]
                ],
                243: [
                    [111, 769]
                ],
                244: [
                    [111, 770], , {
                        768: 7891,
                        769: 7889,
                        771: 7895,
                        777: 7893
                    }
                ],
                245: [
                    [111, 771], , {
                        769: 7757,
                        772: 557,
                        776: 7759
                    }
                ],
                246: [
                    [111, 776], , {
                        772: 555
                    }
                ],
                248: [, , {
                    769: 511
                }],
                249: [
                    [117, 768]
                ],
                250: [
                    [117, 769]
                ],
                251: [
                    [117, 770]
                ],
                252: [
                    [117, 776], , {
                        768: 476,
                        769: 472,
                        772: 470,
                        780: 474
                    }
                ],
                253: [
                    [121, 769]
                ],
                255: [
                    [121, 776]
                ]
            },
            256: {
                256: [
                    [65, 772]
                ],
                257: [
                    [97, 772]
                ],
                258: [
                    [65, 774], , {
                        768: 7856,
                        769: 7854,
                        771: 7860,
                        777: 7858
                    }
                ],
                259: [
                    [97, 774], , {
                        768: 7857,
                        769: 7855,
                        771: 7861,
                        777: 7859
                    }
                ],
                260: [
                    [65, 808]
                ],
                261: [
                    [97, 808]
                ],
                262: [
                    [67, 769]
                ],
                263: [
                    [99, 769]
                ],
                264: [
                    [67, 770]
                ],
                265: [
                    [99, 770]
                ],
                266: [
                    [67, 775]
                ],
                267: [
                    [99, 775]
                ],
                268: [
                    [67, 780]
                ],
                269: [
                    [99, 780]
                ],
                270: [
                    [68, 780]
                ],
                271: [
                    [100, 780]
                ],
                274: [
                    [69, 772], , {
                        768: 7700,
                        769: 7702
                    }
                ],
                275: [
                    [101, 772], , {
                        768: 7701,
                        769: 7703
                    }
                ],
                276: [
                    [69, 774]
                ],
                277: [
                    [101, 774]
                ],
                278: [
                    [69, 775]
                ],
                279: [
                    [101, 775]
                ],
                280: [
                    [69, 808]
                ],
                281: [
                    [101, 808]
                ],
                282: [
                    [69, 780]
                ],
                283: [
                    [101, 780]
                ],
                284: [
                    [71, 770]
                ],
                285: [
                    [103, 770]
                ],
                286: [
                    [71, 774]
                ],
                287: [
                    [103, 774]
                ],
                288: [
                    [71, 775]
                ],
                289: [
                    [103, 775]
                ],
                290: [
                    [71, 807]
                ],
                291: [
                    [103, 807]
                ],
                292: [
                    [72, 770]
                ],
                293: [
                    [104, 770]
                ],
                296: [
                    [73, 771]
                ],
                297: [
                    [105, 771]
                ],
                298: [
                    [73, 772]
                ],
                299: [
                    [105, 772]
                ],
                300: [
                    [73, 774]
                ],
                301: [
                    [105, 774]
                ],
                302: [
                    [73, 808]
                ],
                303: [
                    [105, 808]
                ],
                304: [
                    [73, 775]
                ],
                306: [
                    [73, 74], 256
                ],
                307: [
                    [105, 106], 256
                ],
                308: [
                    [74, 770]
                ],
                309: [
                    [106, 770]
                ],
                310: [
                    [75, 807]
                ],
                311: [
                    [107, 807]
                ],
                313: [
                    [76, 769]
                ],
                314: [
                    [108, 769]
                ],
                315: [
                    [76, 807]
                ],
                316: [
                    [108, 807]
                ],
                317: [
                    [76, 780]
                ],
                318: [
                    [108, 780]
                ],
                319: [
                    [76, 183], 256
                ],
                320: [
                    [108, 183], 256
                ],
                323: [
                    [78, 769]
                ],
                324: [
                    [110, 769]
                ],
                325: [
                    [78, 807]
                ],
                326: [
                    [110, 807]
                ],
                327: [
                    [78, 780]
                ],
                328: [
                    [110, 780]
                ],
                329: [
                    [700, 110], 256
                ],
                332: [
                    [79, 772], , {
                        768: 7760,
                        769: 7762
                    }
                ],
                333: [
                    [111, 772], , {
                        768: 7761,
                        769: 7763
                    }
                ],
                334: [
                    [79, 774]
                ],
                335: [
                    [111, 774]
                ],
                336: [
                    [79, 779]
                ],
                337: [
                    [111, 779]
                ],
                340: [
                    [82, 769]
                ],
                341: [
                    [114, 769]
                ],
                342: [
                    [82, 807]
                ],
                343: [
                    [114, 807]
                ],
                344: [
                    [82, 780]
                ],
                345: [
                    [114, 780]
                ],
                346: [
                    [83, 769], , {
                        775: 7780
                    }
                ],
                347: [
                    [115, 769], , {
                        775: 7781
                    }
                ],
                348: [
                    [83, 770]
                ],
                349: [
                    [115, 770]
                ],
                350: [
                    [83, 807]
                ],
                351: [
                    [115, 807]
                ],
                352: [
                    [83, 780], , {
                        775: 7782
                    }
                ],
                353: [
                    [115, 780], , {
                        775: 7783
                    }
                ],
                354: [
                    [84, 807]
                ],
                355: [
                    [116, 807]
                ],
                356: [
                    [84, 780]
                ],
                357: [
                    [116, 780]
                ],
                360: [
                    [85, 771], , {
                        769: 7800
                    }
                ],
                361: [
                    [117, 771], , {
                        769: 7801
                    }
                ],
                362: [
                    [85, 772], , {
                        776: 7802
                    }
                ],
                363: [
                    [117, 772], , {
                        776: 7803
                    }
                ],
                364: [
                    [85, 774]
                ],
                365: [
                    [117, 774]
                ],
                366: [
                    [85, 778]
                ],
                367: [
                    [117, 778]
                ],
                368: [
                    [85, 779]
                ],
                369: [
                    [117, 779]
                ],
                370: [
                    [85, 808]
                ],
                371: [
                    [117, 808]
                ],
                372: [
                    [87, 770]
                ],
                373: [
                    [119, 770]
                ],
                374: [
                    [89, 770]
                ],
                375: [
                    [121, 770]
                ],
                376: [
                    [89, 776]
                ],
                377: [
                    [90, 769]
                ],
                378: [
                    [122, 769]
                ],
                379: [
                    [90, 775]
                ],
                380: [
                    [122, 775]
                ],
                381: [
                    [90, 780]
                ],
                382: [
                    [122, 780]
                ],
                383: [
                    [115], 256, {
                        775: 7835
                    }
                ],
                416: [
                    [79, 795], , {
                        768: 7900,
                        769: 7898,
                        771: 7904,
                        777: 7902,
                        803: 7906
                    }
                ],
                417: [
                    [111, 795], , {
                        768: 7901,
                        769: 7899,
                        771: 7905,
                        777: 7903,
                        803: 7907
                    }
                ],
                431: [
                    [85, 795], , {
                        768: 7914,
                        769: 7912,
                        771: 7918,
                        777: 7916,
                        803: 7920
                    }
                ],
                432: [
                    [117, 795], , {
                        768: 7915,
                        769: 7913,
                        771: 7919,
                        777: 7917,
                        803: 7921
                    }
                ],
                439: [, , {
                    780: 494
                }],
                452: [
                    [68, 381], 256
                ],
                453: [
                    [68, 382], 256
                ],
                454: [
                    [100, 382], 256
                ],
                455: [
                    [76, 74], 256
                ],
                456: [
                    [76, 106], 256
                ],
                457: [
                    [108, 106], 256
                ],
                458: [
                    [78, 74], 256
                ],
                459: [
                    [78, 106], 256
                ],
                460: [
                    [110, 106], 256
                ],
                461: [
                    [65, 780]
                ],
                462: [
                    [97, 780]
                ],
                463: [
                    [73, 780]
                ],
                464: [
                    [105, 780]
                ],
                465: [
                    [79, 780]
                ],
                466: [
                    [111, 780]
                ],
                467: [
                    [85, 780]
                ],
                468: [
                    [117, 780]
                ],
                469: [
                    [220, 772]
                ],
                470: [
                    [252, 772]
                ],
                471: [
                    [220, 769]
                ],
                472: [
                    [252, 769]
                ],
                473: [
                    [220, 780]
                ],
                474: [
                    [252, 780]
                ],
                475: [
                    [220, 768]
                ],
                476: [
                    [252, 768]
                ],
                478: [
                    [196, 772]
                ],
                479: [
                    [228, 772]
                ],
                480: [
                    [550, 772]
                ],
                481: [
                    [551, 772]
                ],
                482: [
                    [198, 772]
                ],
                483: [
                    [230, 772]
                ],
                486: [
                    [71, 780]
                ],
                487: [
                    [103, 780]
                ],
                488: [
                    [75, 780]
                ],
                489: [
                    [107, 780]
                ],
                490: [
                    [79, 808], , {
                        772: 492
                    }
                ],
                491: [
                    [111, 808], , {
                        772: 493
                    }
                ],
                492: [
                    [490, 772]
                ],
                493: [
                    [491, 772]
                ],
                494: [
                    [439, 780]
                ],
                495: [
                    [658, 780]
                ],
                496: [
                    [106, 780]
                ],
                497: [
                    [68, 90], 256
                ],
                498: [
                    [68, 122], 256
                ],
                499: [
                    [100, 122], 256
                ],
                500: [
                    [71, 769]
                ],
                501: [
                    [103, 769]
                ],
                504: [
                    [78, 768]
                ],
                505: [
                    [110, 768]
                ],
                506: [
                    [197, 769]
                ],
                507: [
                    [229, 769]
                ],
                508: [
                    [198, 769]
                ],
                509: [
                    [230, 769]
                ],
                510: [
                    [216, 769]
                ],
                511: [
                    [248, 769]
                ],
                66045: [, 220]
            },
            512: {
                512: [
                    [65, 783]
                ],
                513: [
                    [97, 783]
                ],
                514: [
                    [65, 785]
                ],
                515: [
                    [97, 785]
                ],
                516: [
                    [69, 783]
                ],
                517: [
                    [101, 783]
                ],
                518: [
                    [69, 785]
                ],
                519: [
                    [101, 785]
                ],
                520: [
                    [73, 783]
                ],
                521: [
                    [105, 783]
                ],
                522: [
                    [73, 785]
                ],
                523: [
                    [105, 785]
                ],
                524: [
                    [79, 783]
                ],
                525: [
                    [111, 783]
                ],
                526: [
                    [79, 785]
                ],
                527: [
                    [111, 785]
                ],
                528: [
                    [82, 783]
                ],
                529: [
                    [114, 783]
                ],
                530: [
                    [82, 785]
                ],
                531: [
                    [114, 785]
                ],
                532: [
                    [85, 783]
                ],
                533: [
                    [117, 783]
                ],
                534: [
                    [85, 785]
                ],
                535: [
                    [117, 785]
                ],
                536: [
                    [83, 806]
                ],
                537: [
                    [115, 806]
                ],
                538: [
                    [84, 806]
                ],
                539: [
                    [116, 806]
                ],
                542: [
                    [72, 780]
                ],
                543: [
                    [104, 780]
                ],
                550: [
                    [65, 775], , {
                        772: 480
                    }
                ],
                551: [
                    [97, 775], , {
                        772: 481
                    }
                ],
                552: [
                    [69, 807], , {
                        774: 7708
                    }
                ],
                553: [
                    [101, 807], , {
                        774: 7709
                    }
                ],
                554: [
                    [214, 772]
                ],
                555: [
                    [246, 772]
                ],
                556: [
                    [213, 772]
                ],
                557: [
                    [245, 772]
                ],
                558: [
                    [79, 775], , {
                        772: 560
                    }
                ],
                559: [
                    [111, 775], , {
                        772: 561
                    }
                ],
                560: [
                    [558, 772]
                ],
                561: [
                    [559, 772]
                ],
                562: [
                    [89, 772]
                ],
                563: [
                    [121, 772]
                ],
                658: [, , {
                    780: 495
                }],
                688: [
                    [104], 256
                ],
                689: [
                    [614], 256
                ],
                690: [
                    [106], 256
                ],
                691: [
                    [114], 256
                ],
                692: [
                    [633], 256
                ],
                693: [
                    [635], 256
                ],
                694: [
                    [641], 256
                ],
                695: [
                    [119], 256
                ],
                696: [
                    [121], 256
                ],
                728: [
                    [32, 774], 256
                ],
                729: [
                    [32, 775], 256
                ],
                730: [
                    [32, 778], 256
                ],
                731: [
                    [32, 808], 256
                ],
                732: [
                    [32, 771], 256
                ],
                733: [
                    [32, 779], 256
                ],
                736: [
                    [611], 256
                ],
                737: [
                    [108], 256
                ],
                738: [
                    [115], 256
                ],
                739: [
                    [120], 256
                ],
                740: [
                    [661], 256
                ],
                66272: [, 220]
            },
            768: {
                768: [, 230],
                769: [, 230],
                770: [, 230],
                771: [, 230],
                772: [, 230],
                773: [, 230],
                774: [, 230],
                775: [, 230],
                776: [, 230, {
                    769: 836
                }],
                777: [, 230],
                778: [, 230],
                779: [, 230],
                780: [, 230],
                781: [, 230],
                782: [, 230],
                783: [, 230],
                784: [, 230],
                785: [, 230],
                786: [, 230],
                787: [, 230],
                788: [, 230],
                789: [, 232],
                790: [, 220],
                791: [, 220],
                792: [, 220],
                793: [, 220],
                794: [, 232],
                795: [, 216],
                796: [, 220],
                797: [, 220],
                798: [, 220],
                799: [, 220],
                800: [, 220],
                801: [, 202],
                802: [, 202],
                803: [, 220],
                804: [, 220],
                805: [, 220],
                806: [, 220],
                807: [, 202],
                808: [, 202],
                809: [, 220],
                810: [, 220],
                811: [, 220],
                812: [, 220],
                813: [, 220],
                814: [, 220],
                815: [, 220],
                816: [, 220],
                817: [, 220],
                818: [, 220],
                819: [, 220],
                820: [, 1],
                821: [, 1],
                822: [, 1],
                823: [, 1],
                824: [, 1],
                825: [, 220],
                826: [, 220],
                827: [, 220],
                828: [, 220],
                829: [, 230],
                830: [, 230],
                831: [, 230],
                832: [
                    [768], 230
                ],
                833: [
                    [769], 230
                ],
                834: [, 230],
                835: [
                    [787], 230
                ],
                836: [
                    [776, 769], 230
                ],
                837: [, 240],
                838: [, 230],
                839: [, 220],
                840: [, 220],
                841: [, 220],
                842: [, 230],
                843: [, 230],
                844: [, 230],
                845: [, 220],
                846: [, 220],
                848: [, 230],
                849: [, 230],
                850: [, 230],
                851: [, 220],
                852: [, 220],
                853: [, 220],
                854: [, 220],
                855: [, 230],
                856: [, 232],
                857: [, 220],
                858: [, 220],
                859: [, 230],
                860: [, 233],
                861: [, 234],
                862: [, 234],
                863: [, 233],
                864: [, 234],
                865: [, 234],
                866: [, 233],
                867: [, 230],
                868: [, 230],
                869: [, 230],
                870: [, 230],
                871: [, 230],
                872: [, 230],
                873: [, 230],
                874: [, 230],
                875: [, 230],
                876: [, 230],
                877: [, 230],
                878: [, 230],
                879: [, 230],
                884: [
                    [697]
                ],
                890: [
                    [32, 837], 256
                ],
                894: [
                    [59]
                ],
                900: [
                    [32, 769], 256
                ],
                901: [
                    [168, 769]
                ],
                902: [
                    [913, 769]
                ],
                903: [
                    [183]
                ],
                904: [
                    [917, 769]
                ],
                905: [
                    [919, 769]
                ],
                906: [
                    [921, 769]
                ],
                908: [
                    [927, 769]
                ],
                910: [
                    [933, 769]
                ],
                911: [
                    [937, 769]
                ],
                912: [
                    [970, 769]
                ],
                913: [, , {
                    768: 8122,
                    769: 902,
                    772: 8121,
                    774: 8120,
                    787: 7944,
                    788: 7945,
                    837: 8124
                }],
                917: [, , {
                    768: 8136,
                    769: 904,
                    787: 7960,
                    788: 7961
                }],
                919: [, , {
                    768: 8138,
                    769: 905,
                    787: 7976,
                    788: 7977,
                    837: 8140
                }],
                921: [, , {
                    768: 8154,
                    769: 906,
                    772: 8153,
                    774: 8152,
                    776: 938,
                    787: 7992,
                    788: 7993
                }],
                927: [, , {
                    768: 8184,
                    769: 908,
                    787: 8008,
                    788: 8009
                }],
                929: [, , {
                    788: 8172
                }],
                933: [, , {
                    768: 8170,
                    769: 910,
                    772: 8169,
                    774: 8168,
                    776: 939,
                    788: 8025
                }],
                937: [, , {
                    768: 8186,
                    769: 911,
                    787: 8040,
                    788: 8041,
                    837: 8188
                }],
                938: [
                    [921, 776]
                ],
                939: [
                    [933, 776]
                ],
                940: [
                    [945, 769], , {
                        837: 8116
                    }
                ],
                941: [
                    [949, 769]
                ],
                942: [
                    [951, 769], , {
                        837: 8132
                    }
                ],
                943: [
                    [953, 769]
                ],
                944: [
                    [971, 769]
                ],
                945: [, , {
                    768: 8048,
                    769: 940,
                    772: 8113,
                    774: 8112,
                    787: 7936,
                    788: 7937,
                    834: 8118,
                    837: 8115
                }],
                949: [, , {
                    768: 8050,
                    769: 941,
                    787: 7952,
                    788: 7953
                }],
                951: [, , {
                    768: 8052,
                    769: 942,
                    787: 7968,
                    788: 7969,
                    834: 8134,
                    837: 8131
                }],
                953: [, , {
                    768: 8054,
                    769: 943,
                    772: 8145,
                    774: 8144,
                    776: 970,
                    787: 7984,
                    788: 7985,
                    834: 8150
                }],
                959: [, , {
                    768: 8056,
                    769: 972,
                    787: 8e3,
                    788: 8001
                }],
                961: [, , {
                    787: 8164,
                    788: 8165
                }],
                965: [, , {
                    768: 8058,
                    769: 973,
                    772: 8161,
                    774: 8160,
                    776: 971,
                    787: 8016,
                    788: 8017,
                    834: 8166
                }],
                969: [, , {
                    768: 8060,
                    769: 974,
                    787: 8032,
                    788: 8033,
                    834: 8182,
                    837: 8179
                }],
                970: [
                    [953, 776], , {
                        768: 8146,
                        769: 912,
                        834: 8151
                    }
                ],
                971: [
                    [965, 776], , {
                        768: 8162,
                        769: 944,
                        834: 8167
                    }
                ],
                972: [
                    [959, 769]
                ],
                973: [
                    [965, 769]
                ],
                974: [
                    [969, 769], , {
                        837: 8180
                    }
                ],
                976: [
                    [946], 256
                ],
                977: [
                    [952], 256
                ],
                978: [
                    [933], 256, {
                        769: 979,
                        776: 980
                    }
                ],
                979: [
                    [978, 769]
                ],
                980: [
                    [978, 776]
                ],
                981: [
                    [966], 256
                ],
                982: [
                    [960], 256
                ],
                1008: [
                    [954], 256
                ],
                1009: [
                    [961], 256
                ],
                1010: [
                    [962], 256
                ],
                1012: [
                    [920], 256
                ],
                1013: [
                    [949], 256
                ],
                1017: [
                    [931], 256
                ],
                66422: [, 230],
                66423: [, 230],
                66424: [, 230],
                66425: [, 230],
                66426: [, 230]
            },
            1024: {
                1024: [
                    [1045, 768]
                ],
                1025: [
                    [1045, 776]
                ],
                1027: [
                    [1043, 769]
                ],
                1030: [, , {
                    776: 1031
                }],
                1031: [
                    [1030, 776]
                ],
                1036: [
                    [1050, 769]
                ],
                1037: [
                    [1048, 768]
                ],
                1038: [
                    [1059, 774]
                ],
                1040: [, , {
                    774: 1232,
                    776: 1234
                }],
                1043: [, , {
                    769: 1027
                }],
                1045: [, , {
                    768: 1024,
                    774: 1238,
                    776: 1025
                }],
                1046: [, , {
                    774: 1217,
                    776: 1244
                }],
                1047: [, , {
                    776: 1246
                }],
                1048: [, , {
                    768: 1037,
                    772: 1250,
                    774: 1049,
                    776: 1252
                }],
                1049: [
                    [1048, 774]
                ],
                1050: [, , {
                    769: 1036
                }],
                1054: [, , {
                    776: 1254
                }],
                1059: [, , {
                    772: 1262,
                    774: 1038,
                    776: 1264,
                    779: 1266
                }],
                1063: [, , {
                    776: 1268
                }],
                1067: [, , {
                    776: 1272
                }],
                1069: [, , {
                    776: 1260
                }],
                1072: [, , {
                    774: 1233,
                    776: 1235
                }],
                1075: [, , {
                    769: 1107
                }],
                1077: [, , {
                    768: 1104,
                    774: 1239,
                    776: 1105
                }],
                1078: [, , {
                    774: 1218,
                    776: 1245
                }],
                1079: [, , {
                    776: 1247
                }],
                1080: [, , {
                    768: 1117,
                    772: 1251,
                    774: 1081,
                    776: 1253
                }],
                1081: [
                    [1080, 774]
                ],
                1082: [, , {
                    769: 1116
                }],
                1086: [, , {
                    776: 1255
                }],
                1091: [, , {
                    772: 1263,
                    774: 1118,
                    776: 1265,
                    779: 1267
                }],
                1095: [, , {
                    776: 1269
                }],
                1099: [, , {
                    776: 1273
                }],
                1101: [, , {
                    776: 1261
                }],
                1104: [
                    [1077, 768]
                ],
                1105: [
                    [1077, 776]
                ],
                1107: [
                    [1075, 769]
                ],
                1110: [, , {
                    776: 1111
                }],
                1111: [
                    [1110, 776]
                ],
                1116: [
                    [1082, 769]
                ],
                1117: [
                    [1080, 768]
                ],
                1118: [
                    [1091, 774]
                ],
                1140: [, , {
                    783: 1142
                }],
                1141: [, , {
                    783: 1143
                }],
                1142: [
                    [1140, 783]
                ],
                1143: [
                    [1141, 783]
                ],
                1155: [, 230],
                1156: [, 230],
                1157: [, 230],
                1158: [, 230],
                1159: [, 230],
                1217: [
                    [1046, 774]
                ],
                1218: [
                    [1078, 774]
                ],
                1232: [
                    [1040, 774]
                ],
                1233: [
                    [1072, 774]
                ],
                1234: [
                    [1040, 776]
                ],
                1235: [
                    [1072, 776]
                ],
                1238: [
                    [1045, 774]
                ],
                1239: [
                    [1077, 774]
                ],
                1240: [, , {
                    776: 1242
                }],
                1241: [, , {
                    776: 1243
                }],
                1242: [
                    [1240, 776]
                ],
                1243: [
                    [1241, 776]
                ],
                1244: [
                    [1046, 776]
                ],
                1245: [
                    [1078, 776]
                ],
                1246: [
                    [1047, 776]
                ],
                1247: [
                    [1079, 776]
                ],
                1250: [
                    [1048, 772]
                ],
                1251: [
                    [1080, 772]
                ],
                1252: [
                    [1048, 776]
                ],
                1253: [
                    [1080, 776]
                ],
                1254: [
                    [1054, 776]
                ],
                1255: [
                    [1086, 776]
                ],
                1256: [, , {
                    776: 1258
                }],
                1257: [, , {
                    776: 1259
                }],
                1258: [
                    [1256, 776]
                ],
                1259: [
                    [1257, 776]
                ],
                1260: [
                    [1069, 776]
                ],
                1261: [
                    [1101, 776]
                ],
                1262: [
                    [1059, 772]
                ],
                1263: [
                    [1091, 772]
                ],
                1264: [
                    [1059, 776]
                ],
                1265: [
                    [1091, 776]
                ],
                1266: [
                    [1059, 779]
                ],
                1267: [
                    [1091, 779]
                ],
                1268: [
                    [1063, 776]
                ],
                1269: [
                    [1095, 776]
                ],
                1272: [
                    [1067, 776]
                ],
                1273: [
                    [1099, 776]
                ]
            },
            1280: {
                1415: [
                    [1381, 1410], 256
                ],
                1425: [, 220],
                1426: [, 230],
                1427: [, 230],
                1428: [, 230],
                1429: [, 230],
                1430: [, 220],
                1431: [, 230],
                1432: [, 230],
                1433: [, 230],
                1434: [, 222],
                1435: [, 220],
                1436: [, 230],
                1437: [, 230],
                1438: [, 230],
                1439: [, 230],
                1440: [, 230],
                1441: [, 230],
                1442: [, 220],
                1443: [, 220],
                1444: [, 220],
                1445: [, 220],
                1446: [, 220],
                1447: [, 220],
                1448: [, 230],
                1449: [, 230],
                1450: [, 220],
                1451: [, 230],
                1452: [, 230],
                1453: [, 222],
                1454: [, 228],
                1455: [, 230],
                1456: [, 10],
                1457: [, 11],
                1458: [, 12],
                1459: [, 13],
                1460: [, 14],
                1461: [, 15],
                1462: [, 16],
                1463: [, 17],
                1464: [, 18],
                1465: [, 19],
                1466: [, 19],
                1467: [, 20],
                1468: [, 21],
                1469: [, 22],
                1471: [, 23],
                1473: [, 24],
                1474: [, 25],
                1476: [, 230],
                1477: [, 220],
                1479: [, 18]
            },
            1536: {
                1552: [, 230],
                1553: [, 230],
                1554: [, 230],
                1555: [, 230],
                1556: [, 230],
                1557: [, 230],
                1558: [, 230],
                1559: [, 230],
                1560: [, 30],
                1561: [, 31],
                1562: [, 32],
                1570: [
                    [1575, 1619]
                ],
                1571: [
                    [1575, 1620]
                ],
                1572: [
                    [1608, 1620]
                ],
                1573: [
                    [1575, 1621]
                ],
                1574: [
                    [1610, 1620]
                ],
                1575: [, , {
                    1619: 1570,
                    1620: 1571,
                    1621: 1573
                }],
                1608: [, , {
                    1620: 1572
                }],
                1610: [, , {
                    1620: 1574
                }],
                1611: [, 27],
                1612: [, 28],
                1613: [, 29],
                1614: [, 30],
                1615: [, 31],
                1616: [, 32],
                1617: [, 33],
                1618: [, 34],
                1619: [, 230],
                1620: [, 230],
                1621: [, 220],
                1622: [, 220],
                1623: [, 230],
                1624: [, 230],
                1625: [, 230],
                1626: [, 230],
                1627: [, 230],
                1628: [, 220],
                1629: [, 230],
                1630: [, 230],
                1631: [, 220],
                1648: [, 35],
                1653: [
                    [1575, 1652], 256
                ],
                1654: [
                    [1608, 1652], 256
                ],
                1655: [
                    [1735, 1652], 256
                ],
                1656: [
                    [1610, 1652], 256
                ],
                1728: [
                    [1749, 1620]
                ],
                1729: [, , {
                    1620: 1730
                }],
                1730: [
                    [1729, 1620]
                ],
                1746: [, , {
                    1620: 1747
                }],
                1747: [
                    [1746, 1620]
                ],
                1749: [, , {
                    1620: 1728
                }],
                1750: [, 230],
                1751: [, 230],
                1752: [, 230],
                1753: [, 230],
                1754: [, 230],
                1755: [, 230],
                1756: [, 230],
                1759: [, 230],
                1760: [, 230],
                1761: [, 230],
                1762: [, 230],
                1763: [, 220],
                1764: [, 230],
                1767: [, 230],
                1768: [, 230],
                1770: [, 220],
                1771: [, 230],
                1772: [, 230],
                1773: [, 220]
            },
            1792: {
                1809: [, 36],
                1840: [, 230],
                1841: [, 220],
                1842: [, 230],
                1843: [, 230],
                1844: [, 220],
                1845: [, 230],
                1846: [, 230],
                1847: [, 220],
                1848: [, 220],
                1849: [, 220],
                1850: [, 230],
                1851: [, 220],
                1852: [, 220],
                1853: [, 230],
                1854: [, 220],
                1855: [, 230],
                1856: [, 230],
                1857: [, 230],
                1858: [, 220],
                1859: [, 230],
                1860: [, 220],
                1861: [, 230],
                1862: [, 220],
                1863: [, 230],
                1864: [, 220],
                1865: [, 230],
                1866: [, 230],
                2027: [, 230],
                2028: [, 230],
                2029: [, 230],
                2030: [, 230],
                2031: [, 230],
                2032: [, 230],
                2033: [, 230],
                2034: [, 220],
                2035: [, 230]
            },
            2048: {
                2070: [, 230],
                2071: [, 230],
                2072: [, 230],
                2073: [, 230],
                2075: [, 230],
                2076: [, 230],
                2077: [, 230],
                2078: [, 230],
                2079: [, 230],
                2080: [, 230],
                2081: [, 230],
                2082: [, 230],
                2083: [, 230],
                2085: [, 230],
                2086: [, 230],
                2087: [, 230],
                2089: [, 230],
                2090: [, 230],
                2091: [, 230],
                2092: [, 230],
                2093: [, 230],
                2137: [, 220],
                2138: [, 220],
                2139: [, 220],
                2276: [, 230],
                2277: [, 230],
                2278: [, 220],
                2279: [, 230],
                2280: [, 230],
                2281: [, 220],
                2282: [, 230],
                2283: [, 230],
                2284: [, 230],
                2285: [, 220],
                2286: [, 220],
                2287: [, 220],
                2288: [, 27],
                2289: [, 28],
                2290: [, 29],
                2291: [, 230],
                2292: [, 230],
                2293: [, 230],
                2294: [, 220],
                2295: [, 230],
                2296: [, 230],
                2297: [, 220],
                2298: [, 220],
                2299: [, 230],
                2300: [, 230],
                2301: [, 230],
                2302: [, 230],
                2303: [, 230]
            },
            2304: {
                2344: [, , {
                    2364: 2345
                }],
                2345: [
                    [2344, 2364]
                ],
                2352: [, , {
                    2364: 2353
                }],
                2353: [
                    [2352, 2364]
                ],
                2355: [, , {
                    2364: 2356
                }],
                2356: [
                    [2355, 2364]
                ],
                2364: [, 7],
                2381: [, 9],
                2385: [, 230],
                2386: [, 220],
                2387: [, 230],
                2388: [, 230],
                2392: [
                    [2325, 2364], 512
                ],
                2393: [
                    [2326, 2364], 512
                ],
                2394: [
                    [2327, 2364], 512
                ],
                2395: [
                    [2332, 2364], 512
                ],
                2396: [
                    [2337, 2364], 512
                ],
                2397: [
                    [2338, 2364], 512
                ],
                2398: [
                    [2347, 2364], 512
                ],
                2399: [
                    [2351, 2364], 512
                ],
                2492: [, 7],
                2503: [, , {
                    2494: 2507,
                    2519: 2508
                }],
                2507: [
                    [2503, 2494]
                ],
                2508: [
                    [2503, 2519]
                ],
                2509: [, 9],
                2524: [
                    [2465, 2492], 512
                ],
                2525: [
                    [2466, 2492], 512
                ],
                2527: [
                    [2479, 2492], 512
                ]
            },
            2560: {
                2611: [
                    [2610, 2620], 512
                ],
                2614: [
                    [2616, 2620], 512
                ],
                2620: [, 7],
                2637: [, 9],
                2649: [
                    [2582, 2620], 512
                ],
                2650: [
                    [2583, 2620], 512
                ],
                2651: [
                    [2588, 2620], 512
                ],
                2654: [
                    [2603, 2620], 512
                ],
                2748: [, 7],
                2765: [, 9],
                68109: [, 220],
                68111: [, 230],
                68152: [, 230],
                68153: [, 1],
                68154: [, 220],
                68159: [, 9],
                68325: [, 230],
                68326: [, 220]
            },
            2816: {
                2876: [, 7],
                2887: [, , {
                    2878: 2891,
                    2902: 2888,
                    2903: 2892
                }],
                2888: [
                    [2887, 2902]
                ],
                2891: [
                    [2887, 2878]
                ],
                2892: [
                    [2887, 2903]
                ],
                2893: [, 9],
                2908: [
                    [2849, 2876], 512
                ],
                2909: [
                    [2850, 2876], 512
                ],
                2962: [, , {
                    3031: 2964
                }],
                2964: [
                    [2962, 3031]
                ],
                3014: [, , {
                    3006: 3018,
                    3031: 3020
                }],
                3015: [, , {
                    3006: 3019
                }],
                3018: [
                    [3014, 3006]
                ],
                3019: [
                    [3015, 3006]
                ],
                3020: [
                    [3014, 3031]
                ],
                3021: [, 9]
            },
            3072: {
                3142: [, , {
                    3158: 3144
                }],
                3144: [
                    [3142, 3158]
                ],
                3149: [, 9],
                3157: [, 84],
                3158: [, 91],
                3260: [, 7],
                3263: [, , {
                    3285: 3264
                }],
                3264: [
                    [3263, 3285]
                ],
                3270: [, , {
                    3266: 3274,
                    3285: 3271,
                    3286: 3272
                }],
                3271: [
                    [3270, 3285]
                ],
                3272: [
                    [3270, 3286]
                ],
                3274: [
                    [3270, 3266], , {
                        3285: 3275
                    }
                ],
                3275: [
                    [3274, 3285]
                ],
                3277: [, 9]
            },
            3328: {
                3398: [, , {
                    3390: 3402,
                    3415: 3404
                }],
                3399: [, , {
                    3390: 3403
                }],
                3402: [
                    [3398, 3390]
                ],
                3403: [
                    [3399, 3390]
                ],
                3404: [
                    [3398, 3415]
                ],
                3405: [, 9],
                3530: [, 9],
                3545: [, , {
                    3530: 3546,
                    3535: 3548,
                    3551: 3550
                }],
                3546: [
                    [3545, 3530]
                ],
                3548: [
                    [3545, 3535], , {
                        3530: 3549
                    }
                ],
                3549: [
                    [3548, 3530]
                ],
                3550: [
                    [3545, 3551]
                ]
            },
            3584: {
                3635: [
                    [3661, 3634], 256
                ],
                3640: [, 103],
                3641: [, 103],
                3642: [, 9],
                3656: [, 107],
                3657: [, 107],
                3658: [, 107],
                3659: [, 107],
                3763: [
                    [3789, 3762], 256
                ],
                3768: [, 118],
                3769: [, 118],
                3784: [, 122],
                3785: [, 122],
                3786: [, 122],
                3787: [, 122],
                3804: [
                    [3755, 3737], 256
                ],
                3805: [
                    [3755, 3745], 256
                ]
            },
            3840: {
                3852: [
                    [3851], 256
                ],
                3864: [, 220],
                3865: [, 220],
                3893: [, 220],
                3895: [, 220],
                3897: [, 216],
                3907: [
                    [3906, 4023], 512
                ],
                3917: [
                    [3916, 4023], 512
                ],
                3922: [
                    [3921, 4023], 512
                ],
                3927: [
                    [3926, 4023], 512
                ],
                3932: [
                    [3931, 4023], 512
                ],
                3945: [
                    [3904, 4021], 512
                ],
                3953: [, 129],
                3954: [, 130],
                3955: [
                    [3953, 3954], 512
                ],
                3956: [, 132],
                3957: [
                    [3953, 3956], 512
                ],
                3958: [
                    [4018, 3968], 512
                ],
                3959: [
                    [4018, 3969], 256
                ],
                3960: [
                    [4019, 3968], 512
                ],
                3961: [
                    [4019, 3969], 256
                ],
                3962: [, 130],
                3963: [, 130],
                3964: [, 130],
                3965: [, 130],
                3968: [, 130],
                3969: [
                    [3953, 3968], 512
                ],
                3970: [, 230],
                3971: [, 230],
                3972: [, 9],
                3974: [, 230],
                3975: [, 230],
                3987: [
                    [3986, 4023], 512
                ],
                3997: [
                    [3996, 4023], 512
                ],
                4002: [
                    [4001, 4023], 512
                ],
                4007: [
                    [4006, 4023], 512
                ],
                4012: [
                    [4011, 4023], 512
                ],
                4025: [
                    [3984, 4021], 512
                ],
                4038: [, 220]
            },
            4096: {
                4133: [, , {
                    4142: 4134
                }],
                4134: [
                    [4133, 4142]
                ],
                4151: [, 7],
                4153: [, 9],
                4154: [, 9],
                4237: [, 220],
                4348: [
                    [4316], 256
                ],
                69702: [, 9],
                69759: [, 9],
                69785: [, , {
                    69818: 69786
                }],
                69786: [
                    [69785, 69818]
                ],
                69787: [, , {
                    69818: 69788
                }],
                69788: [
                    [69787, 69818]
                ],
                69797: [, , {
                    69818: 69803
                }],
                69803: [
                    [69797, 69818]
                ],
                69817: [, 9],
                69818: [, 7]
            },
            4352: {
                69888: [, 230],
                69889: [, 230],
                69890: [, 230],
                69934: [
                    [69937, 69927]
                ],
                69935: [
                    [69938, 69927]
                ],
                69937: [, , {
                    69927: 69934
                }],
                69938: [, , {
                    69927: 69935
                }],
                69939: [, 9],
                69940: [, 9],
                70003: [, 7],
                70080: [, 9]
            },
            4608: {
                70197: [, 9],
                70198: [, 7],
                70377: [, 7],
                70378: [, 9]
            },
            4864: {
                4957: [, 230],
                4958: [, 230],
                4959: [, 230],
                70460: [, 7],
                70471: [, , {
                    70462: 70475,
                    70487: 70476
                }],
                70475: [
                    [70471, 70462]
                ],
                70476: [
                    [70471, 70487]
                ],
                70477: [, 9],
                70502: [, 230],
                70503: [, 230],
                70504: [, 230],
                70505: [, 230],
                70506: [, 230],
                70507: [, 230],
                70508: [, 230],
                70512: [, 230],
                70513: [, 230],
                70514: [, 230],
                70515: [, 230],
                70516: [, 230]
            },
            5120: {
                70841: [, , {
                    70832: 70844,
                    70842: 70843,
                    70845: 70846
                }],
                70843: [
                    [70841, 70842]
                ],
                70844: [
                    [70841, 70832]
                ],
                70846: [
                    [70841, 70845]
                ],
                70850: [, 9],
                70851: [, 7]
            },
            5376: {
                71096: [, , {
                    71087: 71098
                }],
                71097: [, , {
                    71087: 71099
                }],
                71098: [
                    [71096, 71087]
                ],
                71099: [
                    [71097, 71087]
                ],
                71103: [, 9],
                71104: [, 7]
            },
            5632: {
                71231: [, 9],
                71350: [, 9],
                71351: [, 7]
            },
            5888: {
                5908: [, 9],
                5940: [, 9],
                6098: [, 9],
                6109: [, 230]
            },
            6144: {
                6313: [, 228]
            },
            6400: {
                6457: [, 222],
                6458: [, 230],
                6459: [, 220]
            },
            6656: {
                6679: [, 230],
                6680: [, 220],
                6752: [, 9],
                6773: [, 230],
                6774: [, 230],
                6775: [, 230],
                6776: [, 230],
                6777: [, 230],
                6778: [, 230],
                6779: [, 230],
                6780: [, 230],
                6783: [, 220],
                6832: [, 230],
                6833: [, 230],
                6834: [, 230],
                6835: [, 230],
                6836: [, 230],
                6837: [, 220],
                6838: [, 220],
                6839: [, 220],
                6840: [, 220],
                6841: [, 220],
                6842: [, 220],
                6843: [, 230],
                6844: [, 230],
                6845: [, 220]
            },
            6912: {
                6917: [, , {
                    6965: 6918
                }],
                6918: [
                    [6917, 6965]
                ],
                6919: [, , {
                    6965: 6920
                }],
                6920: [
                    [6919, 6965]
                ],
                6921: [, , {
                    6965: 6922
                }],
                6922: [
                    [6921, 6965]
                ],
                6923: [, , {
                    6965: 6924
                }],
                6924: [
                    [6923, 6965]
                ],
                6925: [, , {
                    6965: 6926
                }],
                6926: [
                    [6925, 6965]
                ],
                6929: [, , {
                    6965: 6930
                }],
                6930: [
                    [6929, 6965]
                ],
                6964: [, 7],
                6970: [, , {
                    6965: 6971
                }],
                6971: [
                    [6970, 6965]
                ],
                6972: [, , {
                    6965: 6973
                }],
                6973: [
                    [6972, 6965]
                ],
                6974: [, , {
                    6965: 6976
                }],
                6975: [, , {
                    6965: 6977
                }],
                6976: [
                    [6974, 6965]
                ],
                6977: [
                    [6975, 6965]
                ],
                6978: [, , {
                    6965: 6979
                }],
                6979: [
                    [6978, 6965]
                ],
                6980: [, 9],
                7019: [, 230],
                7020: [, 220],
                7021: [, 230],
                7022: [, 230],
                7023: [, 230],
                7024: [, 230],
                7025: [, 230],
                7026: [, 230],
                7027: [, 230],
                7082: [, 9],
                7083: [, 9],
                7142: [, 7],
                7154: [, 9],
                7155: [, 9]
            },
            7168: {
                7223: [, 7],
                7376: [, 230],
                7377: [, 230],
                7378: [, 230],
                7380: [, 1],
                7381: [, 220],
                7382: [, 220],
                7383: [, 220],
                7384: [, 220],
                7385: [, 220],
                7386: [, 230],
                7387: [, 230],
                7388: [, 220],
                7389: [, 220],
                7390: [, 220],
                7391: [, 220],
                7392: [, 230],
                7394: [, 1],
                7395: [, 1],
                7396: [, 1],
                7397: [, 1],
                7398: [, 1],
                7399: [, 1],
                7400: [, 1],
                7405: [, 220],
                7412: [, 230],
                7416: [, 230],
                7417: [, 230]
            },
            7424: {
                7468: [
                    [65], 256
                ],
                7469: [
                    [198], 256
                ],
                7470: [
                    [66], 256
                ],
                7472: [
                    [68], 256
                ],
                7473: [
                    [69], 256
                ],
                7474: [
                    [398], 256
                ],
                7475: [
                    [71], 256
                ],
                7476: [
                    [72], 256
                ],
                7477: [
                    [73], 256
                ],
                7478: [
                    [74], 256
                ],
                7479: [
                    [75], 256
                ],
                7480: [
                    [76], 256
                ],
                7481: [
                    [77], 256
                ],
                7482: [
                    [78], 256
                ],
                7484: [
                    [79], 256
                ],
                7485: [
                    [546], 256
                ],
                7486: [
                    [80], 256
                ],
                7487: [
                    [82], 256
                ],
                7488: [
                    [84], 256
                ],
                7489: [
                    [85], 256
                ],
                7490: [
                    [87], 256
                ],
                7491: [
                    [97], 256
                ],
                7492: [
                    [592], 256
                ],
                7493: [
                    [593], 256
                ],
                7494: [
                    [7426], 256
                ],
                7495: [
                    [98], 256
                ],
                7496: [
                    [100], 256
                ],
                7497: [
                    [101], 256
                ],
                7498: [
                    [601], 256
                ],
                7499: [
                    [603], 256
                ],
                7500: [
                    [604], 256
                ],
                7501: [
                    [103], 256
                ],
                7503: [
                    [107], 256
                ],
                7504: [
                    [109], 256
                ],
                7505: [
                    [331], 256
                ],
                7506: [
                    [111], 256
                ],
                7507: [
                    [596], 256
                ],
                7508: [
                    [7446], 256
                ],
                7509: [
                    [7447], 256
                ],
                7510: [
                    [112], 256
                ],
                7511: [
                    [116], 256
                ],
                7512: [
                    [117], 256
                ],
                7513: [
                    [7453], 256
                ],
                7514: [
                    [623], 256
                ],
                7515: [
                    [118], 256
                ],
                7516: [
                    [7461], 256
                ],
                7517: [
                    [946], 256
                ],
                7518: [
                    [947], 256
                ],
                7519: [
                    [948], 256
                ],
                7520: [
                    [966], 256
                ],
                7521: [
                    [967], 256
                ],
                7522: [
                    [105], 256
                ],
                7523: [
                    [114], 256
                ],
                7524: [
                    [117], 256
                ],
                7525: [
                    [118], 256
                ],
                7526: [
                    [946], 256
                ],
                7527: [
                    [947], 256
                ],
                7528: [
                    [961], 256
                ],
                7529: [
                    [966], 256
                ],
                7530: [
                    [967], 256
                ],
                7544: [
                    [1085], 256
                ],
                7579: [
                    [594], 256
                ],
                7580: [
                    [99], 256
                ],
                7581: [
                    [597], 256
                ],
                7582: [
                    [240], 256
                ],
                7583: [
                    [604], 256
                ],
                7584: [
                    [102], 256
                ],
                7585: [
                    [607], 256
                ],
                7586: [
                    [609], 256
                ],
                7587: [
                    [613], 256
                ],
                7588: [
                    [616], 256
                ],
                7589: [
                    [617], 256
                ],
                7590: [
                    [618], 256
                ],
                7591: [
                    [7547], 256
                ],
                7592: [
                    [669], 256
                ],
                7593: [
                    [621], 256
                ],
                7594: [
                    [7557], 256
                ],
                7595: [
                    [671], 256
                ],
                7596: [
                    [625], 256
                ],
                7597: [
                    [624], 256
                ],
                7598: [
                    [626], 256
                ],
                7599: [
                    [627], 256
                ],
                7600: [
                    [628], 256
                ],
                7601: [
                    [629], 256
                ],
                7602: [
                    [632], 256
                ],
                7603: [
                    [642], 256
                ],
                7604: [
                    [643], 256
                ],
                7605: [
                    [427], 256
                ],
                7606: [
                    [649], 256
                ],
                7607: [
                    [650], 256
                ],
                7608: [
                    [7452], 256
                ],
                7609: [
                    [651], 256
                ],
                7610: [
                    [652], 256
                ],
                7611: [
                    [122], 256
                ],
                7612: [
                    [656], 256
                ],
                7613: [
                    [657], 256
                ],
                7614: [
                    [658], 256
                ],
                7615: [
                    [952], 256
                ],
                7616: [, 230],
                7617: [, 230],
                7618: [, 220],
                7619: [, 230],
                7620: [, 230],
                7621: [, 230],
                7622: [, 230],
                7623: [, 230],
                7624: [, 230],
                7625: [, 230],
                7626: [, 220],
                7627: [, 230],
                7628: [, 230],
                7629: [, 234],
                7630: [, 214],
                7631: [, 220],
                7632: [, 202],
                7633: [, 230],
                7634: [, 230],
                7635: [, 230],
                7636: [, 230],
                7637: [, 230],
                7638: [, 230],
                7639: [, 230],
                7640: [, 230],
                7641: [, 230],
                7642: [, 230],
                7643: [, 230],
                7644: [, 230],
                7645: [, 230],
                7646: [, 230],
                7647: [, 230],
                7648: [, 230],
                7649: [, 230],
                7650: [, 230],
                7651: [, 230],
                7652: [, 230],
                7653: [, 230],
                7654: [, 230],
                7655: [, 230],
                7656: [, 230],
                7657: [, 230],
                7658: [, 230],
                7659: [, 230],
                7660: [, 230],
                7661: [, 230],
                7662: [, 230],
                7663: [, 230],
                7664: [, 230],
                7665: [, 230],
                7666: [, 230],
                7667: [, 230],
                7668: [, 230],
                7669: [, 230],
                7676: [, 233],
                7677: [, 220],
                7678: [, 230],
                7679: [, 220]
            },
            7680: {
                7680: [
                    [65, 805]
                ],
                7681: [
                    [97, 805]
                ],
                7682: [
                    [66, 775]
                ],
                7683: [
                    [98, 775]
                ],
                7684: [
                    [66, 803]
                ],
                7685: [
                    [98, 803]
                ],
                7686: [
                    [66, 817]
                ],
                7687: [
                    [98, 817]
                ],
                7688: [
                    [199, 769]
                ],
                7689: [
                    [231, 769]
                ],
                7690: [
                    [68, 775]
                ],
                7691: [
                    [100, 775]
                ],
                7692: [
                    [68, 803]
                ],
                7693: [
                    [100, 803]
                ],
                7694: [
                    [68, 817]
                ],
                7695: [
                    [100, 817]
                ],
                7696: [
                    [68, 807]
                ],
                7697: [
                    [100, 807]
                ],
                7698: [
                    [68, 813]
                ],
                7699: [
                    [100, 813]
                ],
                7700: [
                    [274, 768]
                ],
                7701: [
                    [275, 768]
                ],
                7702: [
                    [274, 769]
                ],
                7703: [
                    [275, 769]
                ],
                7704: [
                    [69, 813]
                ],
                7705: [
                    [101, 813]
                ],
                7706: [
                    [69, 816]
                ],
                7707: [
                    [101, 816]
                ],
                7708: [
                    [552, 774]
                ],
                7709: [
                    [553, 774]
                ],
                7710: [
                    [70, 775]
                ],
                7711: [
                    [102, 775]
                ],
                7712: [
                    [71, 772]
                ],
                7713: [
                    [103, 772]
                ],
                7714: [
                    [72, 775]
                ],
                7715: [
                    [104, 775]
                ],
                7716: [
                    [72, 803]
                ],
                7717: [
                    [104, 803]
                ],
                7718: [
                    [72, 776]
                ],
                7719: [
                    [104, 776]
                ],
                7720: [
                    [72, 807]
                ],
                7721: [
                    [104, 807]
                ],
                7722: [
                    [72, 814]
                ],
                7723: [
                    [104, 814]
                ],
                7724: [
                    [73, 816]
                ],
                7725: [
                    [105, 816]
                ],
                7726: [
                    [207, 769]
                ],
                7727: [
                    [239, 769]
                ],
                7728: [
                    [75, 769]
                ],
                7729: [
                    [107, 769]
                ],
                7730: [
                    [75, 803]
                ],
                7731: [
                    [107, 803]
                ],
                7732: [
                    [75, 817]
                ],
                7733: [
                    [107, 817]
                ],
                7734: [
                    [76, 803], , {
                        772: 7736
                    }
                ],
                7735: [
                    [108, 803], , {
                        772: 7737
                    }
                ],
                7736: [
                    [7734, 772]
                ],
                7737: [
                    [7735, 772]
                ],
                7738: [
                    [76, 817]
                ],
                7739: [
                    [108, 817]
                ],
                7740: [
                    [76, 813]
                ],
                7741: [
                    [108, 813]
                ],
                7742: [
                    [77, 769]
                ],
                7743: [
                    [109, 769]
                ],
                7744: [
                    [77, 775]
                ],
                7745: [
                    [109, 775]
                ],
                7746: [
                    [77, 803]
                ],
                7747: [
                    [109, 803]
                ],
                7748: [
                    [78, 775]
                ],
                7749: [
                    [110, 775]
                ],
                7750: [
                    [78, 803]
                ],
                7751: [
                    [110, 803]
                ],
                7752: [
                    [78, 817]
                ],
                7753: [
                    [110, 817]
                ],
                7754: [
                    [78, 813]
                ],
                7755: [
                    [110, 813]
                ],
                7756: [
                    [213, 769]
                ],
                7757: [
                    [245, 769]
                ],
                7758: [
                    [213, 776]
                ],
                7759: [
                    [245, 776]
                ],
                7760: [
                    [332, 768]
                ],
                7761: [
                    [333, 768]
                ],
                7762: [
                    [332, 769]
                ],
                7763: [
                    [333, 769]
                ],
                7764: [
                    [80, 769]
                ],
                7765: [
                    [112, 769]
                ],
                7766: [
                    [80, 775]
                ],
                7767: [
                    [112, 775]
                ],
                7768: [
                    [82, 775]
                ],
                7769: [
                    [114, 775]
                ],
                7770: [
                    [82, 803], , {
                        772: 7772
                    }
                ],
                7771: [
                    [114, 803], , {
                        772: 7773
                    }
                ],
                7772: [
                    [7770, 772]
                ],
                7773: [
                    [7771, 772]
                ],
                7774: [
                    [82, 817]
                ],
                7775: [
                    [114, 817]
                ],
                7776: [
                    [83, 775]
                ],
                7777: [
                    [115, 775]
                ],
                7778: [
                    [83, 803], , {
                        775: 7784
                    }
                ],
                7779: [
                    [115, 803], , {
                        775: 7785
                    }
                ],
                7780: [
                    [346, 775]
                ],
                7781: [
                    [347, 775]
                ],
                7782: [
                    [352, 775]
                ],
                7783: [
                    [353, 775]
                ],
                7784: [
                    [7778, 775]
                ],
                7785: [
                    [7779, 775]
                ],
                7786: [
                    [84, 775]
                ],
                7787: [
                    [116, 775]
                ],
                7788: [
                    [84, 803]
                ],
                7789: [
                    [116, 803]
                ],
                7790: [
                    [84, 817]
                ],
                7791: [
                    [116, 817]
                ],
                7792: [
                    [84, 813]
                ],
                7793: [
                    [116, 813]
                ],
                7794: [
                    [85, 804]
                ],
                7795: [
                    [117, 804]
                ],
                7796: [
                    [85, 816]
                ],
                7797: [
                    [117, 816]
                ],
                7798: [
                    [85, 813]
                ],
                7799: [
                    [117, 813]
                ],
                7800: [
                    [360, 769]
                ],
                7801: [
                    [361, 769]
                ],
                7802: [
                    [362, 776]
                ],
                7803: [
                    [363, 776]
                ],
                7804: [
                    [86, 771]
                ],
                7805: [
                    [118, 771]
                ],
                7806: [
                    [86, 803]
                ],
                7807: [
                    [118, 803]
                ],
                7808: [
                    [87, 768]
                ],
                7809: [
                    [119, 768]
                ],
                7810: [
                    [87, 769]
                ],
                7811: [
                    [119, 769]
                ],
                7812: [
                    [87, 776]
                ],
                7813: [
                    [119, 776]
                ],
                7814: [
                    [87, 775]
                ],
                7815: [
                    [119, 775]
                ],
                7816: [
                    [87, 803]
                ],
                7817: [
                    [119, 803]
                ],
                7818: [
                    [88, 775]
                ],
                7819: [
                    [120, 775]
                ],
                7820: [
                    [88, 776]
                ],
                7821: [
                    [120, 776]
                ],
                7822: [
                    [89, 775]
                ],
                7823: [
                    [121, 775]
                ],
                7824: [
                    [90, 770]
                ],
                7825: [
                    [122, 770]
                ],
                7826: [
                    [90, 803]
                ],
                7827: [
                    [122, 803]
                ],
                7828: [
                    [90, 817]
                ],
                7829: [
                    [122, 817]
                ],
                7830: [
                    [104, 817]
                ],
                7831: [
                    [116, 776]
                ],
                7832: [
                    [119, 778]
                ],
                7833: [
                    [121, 778]
                ],
                7834: [
                    [97, 702], 256
                ],
                7835: [
                    [383, 775]
                ],
                7840: [
                    [65, 803], , {
                        770: 7852,
                        774: 7862
                    }
                ],
                7841: [
                    [97, 803], , {
                        770: 7853,
                        774: 7863
                    }
                ],
                7842: [
                    [65, 777]
                ],
                7843: [
                    [97, 777]
                ],
                7844: [
                    [194, 769]
                ],
                7845: [
                    [226, 769]
                ],
                7846: [
                    [194, 768]
                ],
                7847: [
                    [226, 768]
                ],
                7848: [
                    [194, 777]
                ],
                7849: [
                    [226, 777]
                ],
                7850: [
                    [194, 771]
                ],
                7851: [
                    [226, 771]
                ],
                7852: [
                    [7840, 770]
                ],
                7853: [
                    [7841, 770]
                ],
                7854: [
                    [258, 769]
                ],
                7855: [
                    [259, 769]
                ],
                7856: [
                    [258, 768]
                ],
                7857: [
                    [259, 768]
                ],
                7858: [
                    [258, 777]
                ],
                7859: [
                    [259, 777]
                ],
                7860: [
                    [258, 771]
                ],
                7861: [
                    [259, 771]
                ],
                7862: [
                    [7840, 774]
                ],
                7863: [
                    [7841, 774]
                ],
                7864: [
                    [69, 803], , {
                        770: 7878
                    }
                ],
                7865: [
                    [101, 803], , {
                        770: 7879
                    }
                ],
                7866: [
                    [69, 777]
                ],
                7867: [
                    [101, 777]
                ],
                7868: [
                    [69, 771]
                ],
                7869: [
                    [101, 771]
                ],
                7870: [
                    [202, 769]
                ],
                7871: [
                    [234, 769]
                ],
                7872: [
                    [202, 768]
                ],
                7873: [
                    [234, 768]
                ],
                7874: [
                    [202, 777]
                ],
                7875: [
                    [234, 777]
                ],
                7876: [
                    [202, 771]
                ],
                7877: [
                    [234, 771]
                ],
                7878: [
                    [7864, 770]
                ],
                7879: [
                    [7865, 770]
                ],
                7880: [
                    [73, 777]
                ],
                7881: [
                    [105, 777]
                ],
                7882: [
                    [73, 803]
                ],
                7883: [
                    [105, 803]
                ],
                7884: [
                    [79, 803], , {
                        770: 7896
                    }
                ],
                7885: [
                    [111, 803], , {
                        770: 7897
                    }
                ],
                7886: [
                    [79, 777]
                ],
                7887: [
                    [111, 777]
                ],
                7888: [
                    [212, 769]
                ],
                7889: [
                    [244, 769]
                ],
                7890: [
                    [212, 768]
                ],
                7891: [
                    [244, 768]
                ],
                7892: [
                    [212, 777]
                ],
                7893: [
                    [244, 777]
                ],
                7894: [
                    [212, 771]
                ],
                7895: [
                    [244, 771]
                ],
                7896: [
                    [7884, 770]
                ],
                7897: [
                    [7885, 770]
                ],
                7898: [
                    [416, 769]
                ],
                7899: [
                    [417, 769]
                ],
                7900: [
                    [416, 768]
                ],
                7901: [
                    [417, 768]
                ],
                7902: [
                    [416, 777]
                ],
                7903: [
                    [417, 777]
                ],
                7904: [
                    [416, 771]
                ],
                7905: [
                    [417, 771]
                ],
                7906: [
                    [416, 803]
                ],
                7907: [
                    [417, 803]
                ],
                7908: [
                    [85, 803]
                ],
                7909: [
                    [117, 803]
                ],
                7910: [
                    [85, 777]
                ],
                7911: [
                    [117, 777]
                ],
                7912: [
                    [431, 769]
                ],
                7913: [
                    [432, 769]
                ],
                7914: [
                    [431, 768]
                ],
                7915: [
                    [432, 768]
                ],
                7916: [
                    [431, 777]
                ],
                7917: [
                    [432, 777]
                ],
                7918: [
                    [431, 771]
                ],
                7919: [
                    [432, 771]
                ],
                7920: [
                    [431, 803]
                ],
                7921: [
                    [432, 803]
                ],
                7922: [
                    [89, 768]
                ],
                7923: [
                    [121, 768]
                ],
                7924: [
                    [89, 803]
                ],
                7925: [
                    [121, 803]
                ],
                7926: [
                    [89, 777]
                ],
                7927: [
                    [121, 777]
                ],
                7928: [
                    [89, 771]
                ],
                7929: [
                    [121, 771]
                ]
            },
            7936: {
                7936: [
                    [945, 787], , {
                        768: 7938,
                        769: 7940,
                        834: 7942,
                        837: 8064
                    }
                ],
                7937: [
                    [945, 788], , {
                        768: 7939,
                        769: 7941,
                        834: 7943,
                        837: 8065
                    }
                ],
                7938: [
                    [7936, 768], , {
                        837: 8066
                    }
                ],
                7939: [
                    [7937, 768], , {
                        837: 8067
                    }
                ],
                7940: [
                    [7936, 769], , {
                        837: 8068
                    }
                ],
                7941: [
                    [7937, 769], , {
                        837: 8069
                    }
                ],
                7942: [
                    [7936, 834], , {
                        837: 8070
                    }
                ],
                7943: [
                    [7937, 834], , {
                        837: 8071
                    }
                ],
                7944: [
                    [913, 787], , {
                        768: 7946,
                        769: 7948,
                        834: 7950,
                        837: 8072
                    }
                ],
                7945: [
                    [913, 788], , {
                        768: 7947,
                        769: 7949,
                        834: 7951,
                        837: 8073
                    }
                ],
                7946: [
                    [7944, 768], , {
                        837: 8074
                    }
                ],
                7947: [
                    [7945, 768], , {
                        837: 8075
                    }
                ],
                7948: [
                    [7944, 769], , {
                        837: 8076
                    }
                ],
                7949: [
                    [7945, 769], , {
                        837: 8077
                    }
                ],
                7950: [
                    [7944, 834], , {
                        837: 8078
                    }
                ],
                7951: [
                    [7945, 834], , {
                        837: 8079
                    }
                ],
                7952: [
                    [949, 787], , {
                        768: 7954,
                        769: 7956
                    }
                ],
                7953: [
                    [949, 788], , {
                        768: 7955,
                        769: 7957
                    }
                ],
                7954: [
                    [7952, 768]
                ],
                7955: [
                    [7953, 768]
                ],
                7956: [
                    [7952, 769]
                ],
                7957: [
                    [7953, 769]
                ],
                7960: [
                    [917, 787], , {
                        768: 7962,
                        769: 7964
                    }
                ],
                7961: [
                    [917, 788], , {
                        768: 7963,
                        769: 7965
                    }
                ],
                7962: [
                    [7960, 768]
                ],
                7963: [
                    [7961, 768]
                ],
                7964: [
                    [7960, 769]
                ],
                7965: [
                    [7961, 769]
                ],
                7968: [
                    [951, 787], , {
                        768: 7970,
                        769: 7972,
                        834: 7974,
                        837: 8080
                    }
                ],
                7969: [
                    [951, 788], , {
                        768: 7971,
                        769: 7973,
                        834: 7975,
                        837: 8081
                    }
                ],
                7970: [
                    [7968, 768], , {
                        837: 8082
                    }
                ],
                7971: [
                    [7969, 768], , {
                        837: 8083
                    }
                ],
                7972: [
                    [7968, 769], , {
                        837: 8084
                    }
                ],
                7973: [
                    [7969, 769], , {
                        837: 8085
                    }
                ],
                7974: [
                    [7968, 834], , {
                        837: 8086
                    }
                ],
                7975: [
                    [7969, 834], , {
                        837: 8087
                    }
                ],
                7976: [
                    [919, 787], , {
                        768: 7978,
                        769: 7980,
                        834: 7982,
                        837: 8088
                    }
                ],
                7977: [
                    [919, 788], , {
                        768: 7979,
                        769: 7981,
                        834: 7983,
                        837: 8089
                    }
                ],
                7978: [
                    [7976, 768], , {
                        837: 8090
                    }
                ],
                7979: [
                    [7977, 768], , {
                        837: 8091
                    }
                ],
                7980: [
                    [7976, 769], , {
                        837: 8092
                    }
                ],
                7981: [
                    [7977, 769], , {
                        837: 8093
                    }
                ],
                7982: [
                    [7976, 834], , {
                        837: 8094
                    }
                ],
                7983: [
                    [7977, 834], , {
                        837: 8095
                    }
                ],
                7984: [
                    [953, 787], , {
                        768: 7986,
                        769: 7988,
                        834: 7990
                    }
                ],
                7985: [
                    [953, 788], , {
                        768: 7987,
                        769: 7989,
                        834: 7991
                    }
                ],
                7986: [
                    [7984, 768]
                ],
                7987: [
                    [7985, 768]
                ],
                7988: [
                    [7984, 769]
                ],
                7989: [
                    [7985, 769]
                ],
                7990: [
                    [7984, 834]
                ],
                7991: [
                    [7985, 834]
                ],
                7992: [
                    [921, 787], , {
                        768: 7994,
                        769: 7996,
                        834: 7998
                    }
                ],
                7993: [
                    [921, 788], , {
                        768: 7995,
                        769: 7997,
                        834: 7999
                    }
                ],
                7994: [
                    [7992, 768]
                ],
                7995: [
                    [7993, 768]
                ],
                7996: [
                    [7992, 769]
                ],
                7997: [
                    [7993, 769]
                ],
                7998: [
                    [7992, 834]
                ],
                7999: [
                    [7993, 834]
                ],
                8e3: [
                    [959, 787], , {
                        768: 8002,
                        769: 8004
                    }
                ],
                8001: [
                    [959, 788], , {
                        768: 8003,
                        769: 8005
                    }
                ],
                8002: [
                    [8e3, 768]
                ],
                8003: [
                    [8001, 768]
                ],
                8004: [
                    [8e3, 769]
                ],
                8005: [
                    [8001, 769]
                ],
                8008: [
                    [927, 787], , {
                        768: 8010,
                        769: 8012
                    }
                ],
                8009: [
                    [927, 788], , {
                        768: 8011,
                        769: 8013
                    }
                ],
                8010: [
                    [8008, 768]
                ],
                8011: [
                    [8009, 768]
                ],
                8012: [
                    [8008, 769]
                ],
                8013: [
                    [8009, 769]
                ],
                8016: [
                    [965, 787], , {
                        768: 8018,
                        769: 8020,
                        834: 8022
                    }
                ],
                8017: [
                    [965, 788], , {
                        768: 8019,
                        769: 8021,
                        834: 8023
                    }
                ],
                8018: [
                    [8016, 768]
                ],
                8019: [
                    [8017, 768]
                ],
                8020: [
                    [8016, 769]
                ],
                8021: [
                    [8017, 769]
                ],
                8022: [
                    [8016, 834]
                ],
                8023: [
                    [8017, 834]
                ],
                8025: [
                    [933, 788], , {
                        768: 8027,
                        769: 8029,
                        834: 8031
                    }
                ],
                8027: [
                    [8025, 768]
                ],
                8029: [
                    [8025, 769]
                ],
                8031: [
                    [8025, 834]
                ],
                8032: [
                    [969, 787], , {
                        768: 8034,
                        769: 8036,
                        834: 8038,
                        837: 8096
                    }
                ],
                8033: [
                    [969, 788], , {
                        768: 8035,
                        769: 8037,
                        834: 8039,
                        837: 8097
                    }
                ],
                8034: [
                    [8032, 768], , {
                        837: 8098
                    }
                ],
                8035: [
                    [8033, 768], , {
                        837: 8099
                    }
                ],
                8036: [
                    [8032, 769], , {
                        837: 8100
                    }
                ],
                8037: [
                    [8033, 769], , {
                        837: 8101
                    }
                ],
                8038: [
                    [8032, 834], , {
                        837: 8102
                    }
                ],
                8039: [
                    [8033, 834], , {
                        837: 8103
                    }
                ],
                8040: [
                    [937, 787], , {
                        768: 8042,
                        769: 8044,
                        834: 8046,
                        837: 8104
                    }
                ],
                8041: [
                    [937, 788], , {
                        768: 8043,
                        769: 8045,
                        834: 8047,
                        837: 8105
                    }
                ],
                8042: [
                    [8040, 768], , {
                        837: 8106
                    }
                ],
                8043: [
                    [8041, 768], , {
                        837: 8107
                    }
                ],
                8044: [
                    [8040, 769], , {
                        837: 8108
                    }
                ],
                8045: [
                    [8041, 769], , {
                        837: 8109
                    }
                ],
                8046: [
                    [8040, 834], , {
                        837: 8110
                    }
                ],
                8047: [
                    [8041, 834], , {
                        837: 8111
                    }
                ],
                8048: [
                    [945, 768], , {
                        837: 8114
                    }
                ],
                8049: [
                    [940]
                ],
                8050: [
                    [949, 768]
                ],
                8051: [
                    [941]
                ],
                8052: [
                    [951, 768], , {
                        837: 8130
                    }
                ],
                8053: [
                    [942]
                ],
                8054: [
                    [953, 768]
                ],
                8055: [
                    [943]
                ],
                8056: [
                    [959, 768]
                ],
                8057: [
                    [972]
                ],
                8058: [
                    [965, 768]
                ],
                8059: [
                    [973]
                ],
                8060: [
                    [969, 768], , {
                        837: 8178
                    }
                ],
                8061: [
                    [974]
                ],
                8064: [
                    [7936, 837]
                ],
                8065: [
                    [7937, 837]
                ],
                8066: [
                    [7938, 837]
                ],
                8067: [
                    [7939, 837]
                ],
                8068: [
                    [7940, 837]
                ],
                8069: [
                    [7941, 837]
                ],
                8070: [
                    [7942, 837]
                ],
                8071: [
                    [7943, 837]
                ],
                8072: [
                    [7944, 837]
                ],
                8073: [
                    [7945, 837]
                ],
                8074: [
                    [7946, 837]
                ],
                8075: [
                    [7947, 837]
                ],
                8076: [
                    [7948, 837]
                ],
                8077: [
                    [7949, 837]
                ],
                8078: [
                    [7950, 837]
                ],
                8079: [
                    [7951, 837]
                ],
                8080: [
                    [7968, 837]
                ],
                8081: [
                    [7969, 837]
                ],
                8082: [
                    [7970, 837]
                ],
                8083: [
                    [7971, 837]
                ],
                8084: [
                    [7972, 837]
                ],
                8085: [
                    [7973, 837]
                ],
                8086: [
                    [7974, 837]
                ],
                8087: [
                    [7975, 837]
                ],
                8088: [
                    [7976, 837]
                ],
                8089: [
                    [7977, 837]
                ],
                8090: [
                    [7978, 837]
                ],
                8091: [
                    [7979, 837]
                ],
                8092: [
                    [7980, 837]
                ],
                8093: [
                    [7981, 837]
                ],
                8094: [
                    [7982, 837]
                ],
                8095: [
                    [7983, 837]
                ],
                8096: [
                    [8032, 837]
                ],
                8097: [
                    [8033, 837]
                ],
                8098: [
                    [8034, 837]
                ],
                8099: [
                    [8035, 837]
                ],
                8100: [
                    [8036, 837]
                ],
                8101: [
                    [8037, 837]
                ],
                8102: [
                    [8038, 837]
                ],
                8103: [
                    [8039, 837]
                ],
                8104: [
                    [8040, 837]
                ],
                8105: [
                    [8041, 837]
                ],
                8106: [
                    [8042, 837]
                ],
                8107: [
                    [8043, 837]
                ],
                8108: [
                    [8044, 837]
                ],
                8109: [
                    [8045, 837]
                ],
                8110: [
                    [8046, 837]
                ],
                8111: [
                    [8047, 837]
                ],
                8112: [
                    [945, 774]
                ],
                8113: [
                    [945, 772]
                ],
                8114: [
                    [8048, 837]
                ],
                8115: [
                    [945, 837]
                ],
                8116: [
                    [940, 837]
                ],
                8118: [
                    [945, 834], , {
                        837: 8119
                    }
                ],
                8119: [
                    [8118, 837]
                ],
                8120: [
                    [913, 774]
                ],
                8121: [
                    [913, 772]
                ],
                8122: [
                    [913, 768]
                ],
                8123: [
                    [902]
                ],
                8124: [
                    [913, 837]
                ],
                8125: [
                    [32, 787], 256
                ],
                8126: [
                    [953]
                ],
                8127: [
                    [32, 787], 256, {
                        768: 8141,
                        769: 8142,
                        834: 8143
                    }
                ],
                8128: [
                    [32, 834], 256
                ],
                8129: [
                    [168, 834]
                ],
                8130: [
                    [8052, 837]
                ],
                8131: [
                    [951, 837]
                ],
                8132: [
                    [942, 837]
                ],
                8134: [
                    [951, 834], , {
                        837: 8135
                    }
                ],
                8135: [
                    [8134, 837]
                ],
                8136: [
                    [917, 768]
                ],
                8137: [
                    [904]
                ],
                8138: [
                    [919, 768]
                ],
                8139: [
                    [905]
                ],
                8140: [
                    [919, 837]
                ],
                8141: [
                    [8127, 768]
                ],
                8142: [
                    [8127, 769]
                ],
                8143: [
                    [8127, 834]
                ],
                8144: [
                    [953, 774]
                ],
                8145: [
                    [953, 772]
                ],
                8146: [
                    [970, 768]
                ],
                8147: [
                    [912]
                ],
                8150: [
                    [953, 834]
                ],
                8151: [
                    [970, 834]
                ],
                8152: [
                    [921, 774]
                ],
                8153: [
                    [921, 772]
                ],
                8154: [
                    [921, 768]
                ],
                8155: [
                    [906]
                ],
                8157: [
                    [8190, 768]
                ],
                8158: [
                    [8190, 769]
                ],
                8159: [
                    [8190, 834]
                ],
                8160: [
                    [965, 774]
                ],
                8161: [
                    [965, 772]
                ],
                8162: [
                    [971, 768]
                ],
                8163: [
                    [944]
                ],
                8164: [
                    [961, 787]
                ],
                8165: [
                    [961, 788]
                ],
                8166: [
                    [965, 834]
                ],
                8167: [
                    [971, 834]
                ],
                8168: [
                    [933, 774]
                ],
                8169: [
                    [933, 772]
                ],
                8170: [
                    [933, 768]
                ],
                8171: [
                    [910]
                ],
                8172: [
                    [929, 788]
                ],
                8173: [
                    [168, 768]
                ],
                8174: [
                    [901]
                ],
                8175: [
                    [96]
                ],
                8178: [
                    [8060, 837]
                ],
                8179: [
                    [969, 837]
                ],
                8180: [
                    [974, 837]
                ],
                8182: [
                    [969, 834], , {
                        837: 8183
                    }
                ],
                8183: [
                    [8182, 837]
                ],
                8184: [
                    [927, 768]
                ],
                8185: [
                    [908]
                ],
                8186: [
                    [937, 768]
                ],
                8187: [
                    [911]
                ],
                8188: [
                    [937, 837]
                ],
                8189: [
                    [180]
                ],
                8190: [
                    [32, 788], 256, {
                        768: 8157,
                        769: 8158,
                        834: 8159
                    }
                ]
            },
            8192: {
                8192: [
                    [8194]
                ],
                8193: [
                    [8195]
                ],
                8194: [
                    [32], 256
                ],
                8195: [
                    [32], 256
                ],
                8196: [
                    [32], 256
                ],
                8197: [
                    [32], 256
                ],
                8198: [
                    [32], 256
                ],
                8199: [
                    [32], 256
                ],
                8200: [
                    [32], 256
                ],
                8201: [
                    [32], 256
                ],
                8202: [
                    [32], 256
                ],
                8209: [
                    [8208], 256
                ],
                8215: [
                    [32, 819], 256
                ],
                8228: [
                    [46], 256
                ],
                8229: [
                    [46, 46], 256
                ],
                8230: [
                    [46, 46, 46], 256
                ],
                8239: [
                    [32], 256
                ],
                8243: [
                    [8242, 8242], 256
                ],
                8244: [
                    [8242, 8242, 8242], 256
                ],
                8246: [
                    [8245, 8245], 256
                ],
                8247: [
                    [8245, 8245, 8245], 256
                ],
                8252: [
                    [33, 33], 256
                ],
                8254: [
                    [32, 773], 256
                ],
                8263: [
                    [63, 63], 256
                ],
                8264: [
                    [63, 33], 256
                ],
                8265: [
                    [33, 63], 256
                ],
                8279: [
                    [8242, 8242, 8242, 8242], 256
                ],
                8287: [
                    [32], 256
                ],
                8304: [
                    [48], 256
                ],
                8305: [
                    [105], 256
                ],
                8308: [
                    [52], 256
                ],
                8309: [
                    [53], 256
                ],
                8310: [
                    [54], 256
                ],
                8311: [
                    [55], 256
                ],
                8312: [
                    [56], 256
                ],
                8313: [
                    [57], 256
                ],
                8314: [
                    [43], 256
                ],
                8315: [
                    [8722], 256
                ],
                8316: [
                    [61], 256
                ],
                8317: [
                    [40], 256
                ],
                8318: [
                    [41], 256
                ],
                8319: [
                    [110], 256
                ],
                8320: [
                    [48], 256
                ],
                8321: [
                    [49], 256
                ],
                8322: [
                    [50], 256
                ],
                8323: [
                    [51], 256
                ],
                8324: [
                    [52], 256
                ],
                8325: [
                    [53], 256
                ],
                8326: [
                    [54], 256
                ],
                8327: [
                    [55], 256
                ],
                8328: [
                    [56], 256
                ],
                8329: [
                    [57], 256
                ],
                8330: [
                    [43], 256
                ],
                8331: [
                    [8722], 256
                ],
                8332: [
                    [61], 256
                ],
                8333: [
                    [40], 256
                ],
                8334: [
                    [41], 256
                ],
                8336: [
                    [97], 256
                ],
                8337: [
                    [101], 256
                ],
                8338: [
                    [111], 256
                ],
                8339: [
                    [120], 256
                ],
                8340: [
                    [601], 256
                ],
                8341: [
                    [104], 256
                ],
                8342: [
                    [107], 256
                ],
                8343: [
                    [108], 256
                ],
                8344: [
                    [109], 256
                ],
                8345: [
                    [110], 256
                ],
                8346: [
                    [112], 256
                ],
                8347: [
                    [115], 256
                ],
                8348: [
                    [116], 256
                ],
                8360: [
                    [82, 115], 256
                ],
                8400: [, 230],
                8401: [, 230],
                8402: [, 1],
                8403: [, 1],
                8404: [, 230],
                8405: [, 230],
                8406: [, 230],
                8407: [, 230],
                8408: [, 1],
                8409: [, 1],
                8410: [, 1],
                8411: [, 230],
                8412: [, 230],
                8417: [, 230],
                8421: [, 1],
                8422: [, 1],
                8423: [, 230],
                8424: [, 220],
                8425: [, 230],
                8426: [, 1],
                8427: [, 1],
                8428: [, 220],
                8429: [, 220],
                8430: [, 220],
                8431: [, 220],
                8432: [, 230]
            },
            8448: {
                8448: [
                    [97, 47, 99], 256
                ],
                8449: [
                    [97, 47, 115], 256
                ],
                8450: [
                    [67], 256
                ],
                8451: [
                    [176, 67], 256
                ],
                8453: [
                    [99, 47, 111], 256
                ],
                8454: [
                    [99, 47, 117], 256
                ],
                8455: [
                    [400], 256
                ],
                8457: [
                    [176, 70], 256
                ],
                8458: [
                    [103], 256
                ],
                8459: [
                    [72], 256
                ],
                8460: [
                    [72], 256
                ],
                8461: [
                    [72], 256
                ],
                8462: [
                    [104], 256
                ],
                8463: [
                    [295], 256
                ],
                8464: [
                    [73], 256
                ],
                8465: [
                    [73], 256
                ],
                8466: [
                    [76], 256
                ],
                8467: [
                    [108], 256
                ],
                8469: [
                    [78], 256
                ],
                8470: [
                    [78, 111], 256
                ],
                8473: [
                    [80], 256
                ],
                8474: [
                    [81], 256
                ],
                8475: [
                    [82], 256
                ],
                8476: [
                    [82], 256
                ],
                8477: [
                    [82], 256
                ],
                8480: [
                    [83, 77], 256
                ],
                8481: [
                    [84, 69, 76], 256
                ],
                8482: [
                    [84, 77], 256
                ],
                8484: [
                    [90], 256
                ],
                8486: [
                    [937]
                ],
                8488: [
                    [90], 256
                ],
                8490: [
                    [75]
                ],
                8491: [
                    [197]
                ],
                8492: [
                    [66], 256
                ],
                8493: [
                    [67], 256
                ],
                8495: [
                    [101], 256
                ],
                8496: [
                    [69], 256
                ],
                8497: [
                    [70], 256
                ],
                8499: [
                    [77], 256
                ],
                8500: [
                    [111], 256
                ],
                8501: [
                    [1488], 256
                ],
                8502: [
                    [1489], 256
                ],
                8503: [
                    [1490], 256
                ],
                8504: [
                    [1491], 256
                ],
                8505: [
                    [105], 256
                ],
                8507: [
                    [70, 65, 88], 256
                ],
                8508: [
                    [960], 256
                ],
                8509: [
                    [947], 256
                ],
                8510: [
                    [915], 256
                ],
                8511: [
                    [928], 256
                ],
                8512: [
                    [8721], 256
                ],
                8517: [
                    [68], 256
                ],
                8518: [
                    [100], 256
                ],
                8519: [
                    [101], 256
                ],
                8520: [
                    [105], 256
                ],
                8521: [
                    [106], 256
                ],
                8528: [
                    [49, 8260, 55], 256
                ],
                8529: [
                    [49, 8260, 57], 256
                ],
                8530: [
                    [49, 8260, 49, 48], 256
                ],
                8531: [
                    [49, 8260, 51], 256
                ],
                8532: [
                    [50, 8260, 51], 256
                ],
                8533: [
                    [49, 8260, 53], 256
                ],
                8534: [
                    [50, 8260, 53], 256
                ],
                8535: [
                    [51, 8260, 53], 256
                ],
                8536: [
                    [52, 8260, 53], 256
                ],
                8537: [
                    [49, 8260, 54], 256
                ],
                8538: [
                    [53, 8260, 54], 256
                ],
                8539: [
                    [49, 8260, 56], 256
                ],
                8540: [
                    [51, 8260, 56], 256
                ],
                8541: [
                    [53, 8260, 56], 256
                ],
                8542: [
                    [55, 8260, 56], 256
                ],
                8543: [
                    [49, 8260], 256
                ],
                8544: [
                    [73], 256
                ],
                8545: [
                    [73, 73], 256
                ],
                8546: [
                    [73, 73, 73], 256
                ],
                8547: [
                    [73, 86], 256
                ],
                8548: [
                    [86], 256
                ],
                8549: [
                    [86, 73], 256
                ],
                8550: [
                    [86, 73, 73], 256
                ],
                8551: [
                    [86, 73, 73, 73], 256
                ],
                8552: [
                    [73, 88], 256
                ],
                8553: [
                    [88], 256
                ],
                8554: [
                    [88, 73], 256
                ],
                8555: [
                    [88, 73, 73], 256
                ],
                8556: [
                    [76], 256
                ],
                8557: [
                    [67], 256
                ],
                8558: [
                    [68], 256
                ],
                8559: [
                    [77], 256
                ],
                8560: [
                    [105], 256
                ],
                8561: [
                    [105, 105], 256
                ],
                8562: [
                    [105, 105, 105], 256
                ],
                8563: [
                    [105, 118], 256
                ],
                8564: [
                    [118], 256
                ],
                8565: [
                    [118, 105], 256
                ],
                8566: [
                    [118, 105, 105], 256
                ],
                8567: [
                    [118, 105, 105, 105], 256
                ],
                8568: [
                    [105, 120], 256
                ],
                8569: [
                    [120], 256
                ],
                8570: [
                    [120, 105], 256
                ],
                8571: [
                    [120, 105, 105], 256
                ],
                8572: [
                    [108], 256
                ],
                8573: [
                    [99], 256
                ],
                8574: [
                    [100], 256
                ],
                8575: [
                    [109], 256
                ],
                8585: [
                    [48, 8260, 51], 256
                ],
                8592: [, , {
                    824: 8602
                }],
                8594: [, , {
                    824: 8603
                }],
                8596: [, , {
                    824: 8622
                }],
                8602: [
                    [8592, 824]
                ],
                8603: [
                    [8594, 824]
                ],
                8622: [
                    [8596, 824]
                ],
                8653: [
                    [8656, 824]
                ],
                8654: [
                    [8660, 824]
                ],
                8655: [
                    [8658, 824]
                ],
                8656: [, , {
                    824: 8653
                }],
                8658: [, , {
                    824: 8655
                }],
                8660: [, , {
                    824: 8654
                }]
            },
            8704: {
                8707: [, , {
                    824: 8708
                }],
                8708: [
                    [8707, 824]
                ],
                8712: [, , {
                    824: 8713
                }],
                8713: [
                    [8712, 824]
                ],
                8715: [, , {
                    824: 8716
                }],
                8716: [
                    [8715, 824]
                ],
                8739: [, , {
                    824: 8740
                }],
                8740: [
                    [8739, 824]
                ],
                8741: [, , {
                    824: 8742
                }],
                8742: [
                    [8741, 824]
                ],
                8748: [
                    [8747, 8747], 256
                ],
                8749: [
                    [8747, 8747, 8747], 256
                ],
                8751: [
                    [8750, 8750], 256
                ],
                8752: [
                    [8750, 8750, 8750], 256
                ],
                8764: [, , {
                    824: 8769
                }],
                8769: [
                    [8764, 824]
                ],
                8771: [, , {
                    824: 8772
                }],
                8772: [
                    [8771, 824]
                ],
                8773: [, , {
                    824: 8775
                }],
                8775: [
                    [8773, 824]
                ],
                8776: [, , {
                    824: 8777
                }],
                8777: [
                    [8776, 824]
                ],
                8781: [, , {
                    824: 8813
                }],
                8800: [
                    [61, 824]
                ],
                8801: [, , {
                    824: 8802
                }],
                8802: [
                    [8801, 824]
                ],
                8804: [, , {
                    824: 8816
                }],
                8805: [, , {
                    824: 8817
                }],
                8813: [
                    [8781, 824]
                ],
                8814: [
                    [60, 824]
                ],
                8815: [
                    [62, 824]
                ],
                8816: [
                    [8804, 824]
                ],
                8817: [
                    [8805, 824]
                ],
                8818: [, , {
                    824: 8820
                }],
                8819: [, , {
                    824: 8821
                }],
                8820: [
                    [8818, 824]
                ],
                8821: [
                    [8819, 824]
                ],
                8822: [, , {
                    824: 8824
                }],
                8823: [, , {
                    824: 8825
                }],
                8824: [
                    [8822, 824]
                ],
                8825: [
                    [8823, 824]
                ],
                8826: [, , {
                    824: 8832
                }],
                8827: [, , {
                    824: 8833
                }],
                8828: [, , {
                    824: 8928
                }],
                8829: [, , {
                    824: 8929
                }],
                8832: [
                    [8826, 824]
                ],
                8833: [
                    [8827, 824]
                ],
                8834: [, , {
                    824: 8836
                }],
                8835: [, , {
                    824: 8837
                }],
                8836: [
                    [8834, 824]
                ],
                8837: [
                    [8835, 824]
                ],
                8838: [, , {
                    824: 8840
                }],
                8839: [, , {
                    824: 8841
                }],
                8840: [
                    [8838, 824]
                ],
                8841: [
                    [8839, 824]
                ],
                8849: [, , {
                    824: 8930
                }],
                8850: [, , {
                    824: 8931
                }],
                8866: [, , {
                    824: 8876
                }],
                8872: [, , {
                    824: 8877
                }],
                8873: [, , {
                    824: 8878
                }],
                8875: [, , {
                    824: 8879
                }],
                8876: [
                    [8866, 824]
                ],
                8877: [
                    [8872, 824]
                ],
                8878: [
                    [8873, 824]
                ],
                8879: [
                    [8875, 824]
                ],
                8882: [, , {
                    824: 8938
                }],
                8883: [, , {
                    824: 8939
                }],
                8884: [, , {
                    824: 8940
                }],
                8885: [, , {
                    824: 8941
                }],
                8928: [
                    [8828, 824]
                ],
                8929: [
                    [8829, 824]
                ],
                8930: [
                    [8849, 824]
                ],
                8931: [
                    [8850, 824]
                ],
                8938: [
                    [8882, 824]
                ],
                8939: [
                    [8883, 824]
                ],
                8940: [
                    [8884, 824]
                ],
                8941: [
                    [8885, 824]
                ]
            },
            8960: {
                9001: [
                    [12296]
                ],
                9002: [
                    [12297]
                ]
            },
            9216: {
                9312: [
                    [49], 256
                ],
                9313: [
                    [50], 256
                ],
                9314: [
                    [51], 256
                ],
                9315: [
                    [52], 256
                ],
                9316: [
                    [53], 256
                ],
                9317: [
                    [54], 256
                ],
                9318: [
                    [55], 256
                ],
                9319: [
                    [56], 256
                ],
                9320: [
                    [57], 256
                ],
                9321: [
                    [49, 48], 256
                ],
                9322: [
                    [49, 49], 256
                ],
                9323: [
                    [49, 50], 256
                ],
                9324: [
                    [49, 51], 256
                ],
                9325: [
                    [49, 52], 256
                ],
                9326: [
                    [49, 53], 256
                ],
                9327: [
                    [49, 54], 256
                ],
                9328: [
                    [49, 55], 256
                ],
                9329: [
                    [49, 56], 256
                ],
                9330: [
                    [49, 57], 256
                ],
                9331: [
                    [50, 48], 256
                ],
                9332: [
                    [40, 49, 41], 256
                ],
                9333: [
                    [40, 50, 41], 256
                ],
                9334: [
                    [40, 51, 41], 256
                ],
                9335: [
                    [40, 52, 41], 256
                ],
                9336: [
                    [40, 53, 41], 256
                ],
                9337: [
                    [40, 54, 41], 256
                ],
                9338: [
                    [40, 55, 41], 256
                ],
                9339: [
                    [40, 56, 41], 256
                ],
                9340: [
                    [40, 57, 41], 256
                ],
                9341: [
                    [40, 49, 48, 41], 256
                ],
                9342: [
                    [40, 49, 49, 41], 256
                ],
                9343: [
                    [40, 49, 50, 41], 256
                ],
                9344: [
                    [40, 49, 51, 41], 256
                ],
                9345: [
                    [40, 49, 52, 41], 256
                ],
                9346: [
                    [40, 49, 53, 41], 256
                ],
                9347: [
                    [40, 49, 54, 41], 256
                ],
                9348: [
                    [40, 49, 55, 41], 256
                ],
                9349: [
                    [40, 49, 56, 41], 256
                ],
                9350: [
                    [40, 49, 57, 41], 256
                ],
                9351: [
                    [40, 50, 48, 41], 256
                ],
                9352: [
                    [49, 46], 256
                ],
                9353: [
                    [50, 46], 256
                ],
                9354: [
                    [51, 46], 256
                ],
                9355: [
                    [52, 46], 256
                ],
                9356: [
                    [53, 46], 256
                ],
                9357: [
                    [54, 46], 256
                ],
                9358: [
                    [55, 46], 256
                ],
                9359: [
                    [56, 46], 256
                ],
                9360: [
                    [57, 46], 256
                ],
                9361: [
                    [49, 48, 46], 256
                ],
                9362: [
                    [49, 49, 46], 256
                ],
                9363: [
                    [49, 50, 46], 256
                ],
                9364: [
                    [49, 51, 46], 256
                ],
                9365: [
                    [49, 52, 46], 256
                ],
                9366: [
                    [49, 53, 46], 256
                ],
                9367: [
                    [49, 54, 46], 256
                ],
                9368: [
                    [49, 55, 46], 256
                ],
                9369: [
                    [49, 56, 46], 256
                ],
                9370: [
                    [49, 57, 46], 256
                ],
                9371: [
                    [50, 48, 46], 256
                ],
                9372: [
                    [40, 97, 41], 256
                ],
                9373: [
                    [40, 98, 41], 256
                ],
                9374: [
                    [40, 99, 41], 256
                ],
                9375: [
                    [40, 100, 41], 256
                ],
                9376: [
                    [40, 101, 41], 256
                ],
                9377: [
                    [40, 102, 41], 256
                ],
                9378: [
                    [40, 103, 41], 256
                ],
                9379: [
                    [40, 104, 41], 256
                ],
                9380: [
                    [40, 105, 41], 256
                ],
                9381: [
                    [40, 106, 41], 256
                ],
                9382: [
                    [40, 107, 41], 256
                ],
                9383: [
                    [40, 108, 41], 256
                ],
                9384: [
                    [40, 109, 41], 256
                ],
                9385: [
                    [40, 110, 41], 256
                ],
                9386: [
                    [40, 111, 41], 256
                ],
                9387: [
                    [40, 112, 41], 256
                ],
                9388: [
                    [40, 113, 41], 256
                ],
                9389: [
                    [40, 114, 41], 256
                ],
                9390: [
                    [40, 115, 41], 256
                ],
                9391: [
                    [40, 116, 41], 256
                ],
                9392: [
                    [40, 117, 41], 256
                ],
                9393: [
                    [40, 118, 41], 256
                ],
                9394: [
                    [40, 119, 41], 256
                ],
                9395: [
                    [40, 120, 41], 256
                ],
                9396: [
                    [40, 121, 41], 256
                ],
                9397: [
                    [40, 122, 41], 256
                ],
                9398: [
                    [65], 256
                ],
                9399: [
                    [66], 256
                ],
                9400: [
                    [67], 256
                ],
                9401: [
                    [68], 256
                ],
                9402: [
                    [69], 256
                ],
                9403: [
                    [70], 256
                ],
                9404: [
                    [71], 256
                ],
                9405: [
                    [72], 256
                ],
                9406: [
                    [73], 256
                ],
                9407: [
                    [74], 256
                ],
                9408: [
                    [75], 256
                ],
                9409: [
                    [76], 256
                ],
                9410: [
                    [77], 256
                ],
                9411: [
                    [78], 256
                ],
                9412: [
                    [79], 256
                ],
                9413: [
                    [80], 256
                ],
                9414: [
                    [81], 256
                ],
                9415: [
                    [82], 256
                ],
                9416: [
                    [83], 256
                ],
                9417: [
                    [84], 256
                ],
                9418: [
                    [85], 256
                ],
                9419: [
                    [86], 256
                ],
                9420: [
                    [87], 256
                ],
                9421: [
                    [88], 256
                ],
                9422: [
                    [89], 256
                ],
                9423: [
                    [90], 256
                ],
                9424: [
                    [97], 256
                ],
                9425: [
                    [98], 256
                ],
                9426: [
                    [99], 256
                ],
                9427: [
                    [100], 256
                ],
                9428: [
                    [101], 256
                ],
                9429: [
                    [102], 256
                ],
                9430: [
                    [103], 256
                ],
                9431: [
                    [104], 256
                ],
                9432: [
                    [105], 256
                ],
                9433: [
                    [106], 256
                ],
                9434: [
                    [107], 256
                ],
                9435: [
                    [108], 256
                ],
                9436: [
                    [109], 256
                ],
                9437: [
                    [110], 256
                ],
                9438: [
                    [111], 256
                ],
                9439: [
                    [112], 256
                ],
                9440: [
                    [113], 256
                ],
                9441: [
                    [114], 256
                ],
                9442: [
                    [115], 256
                ],
                9443: [
                    [116], 256
                ],
                9444: [
                    [117], 256
                ],
                9445: [
                    [118], 256
                ],
                9446: [
                    [119], 256
                ],
                9447: [
                    [120], 256
                ],
                9448: [
                    [121], 256
                ],
                9449: [
                    [122], 256
                ],
                9450: [
                    [48], 256
                ]
            },
            10752: {
                10764: [
                    [8747, 8747, 8747, 8747], 256
                ],
                10868: [
                    [58, 58, 61], 256
                ],
                10869: [
                    [61, 61], 256
                ],
                10870: [
                    [61, 61, 61], 256
                ],
                10972: [
                    [10973, 824], 512
                ]
            },
            11264: {
                11388: [
                    [106], 256
                ],
                11389: [
                    [86], 256
                ],
                11503: [, 230],
                11504: [, 230],
                11505: [, 230]
            },
            11520: {
                11631: [
                    [11617], 256
                ],
                11647: [, 9],
                11744: [, 230],
                11745: [, 230],
                11746: [, 230],
                11747: [, 230],
                11748: [, 230],
                11749: [, 230],
                11750: [, 230],
                11751: [, 230],
                11752: [, 230],
                11753: [, 230],
                11754: [, 230],
                11755: [, 230],
                11756: [, 230],
                11757: [, 230],
                11758: [, 230],
                11759: [, 230],
                11760: [, 230],
                11761: [, 230],
                11762: [, 230],
                11763: [, 230],
                11764: [, 230],
                11765: [, 230],
                11766: [, 230],
                11767: [, 230],
                11768: [, 230],
                11769: [, 230],
                11770: [, 230],
                11771: [, 230],
                11772: [, 230],
                11773: [, 230],
                11774: [, 230],
                11775: [, 230]
            },
            11776: {
                11935: [
                    [27597], 256
                ],
                12019: [
                    [40863], 256
                ]
            },
            12032: {
                12032: [
                    [19968], 256
                ],
                12033: [
                    [20008], 256
                ],
                12034: [
                    [20022], 256
                ],
                12035: [
                    [20031], 256
                ],
                12036: [
                    [20057], 256
                ],
                12037: [
                    [20101], 256
                ],
                12038: [
                    [20108], 256
                ],
                12039: [
                    [20128], 256
                ],
                12040: [
                    [20154], 256
                ],
                12041: [
                    [20799], 256
                ],
                12042: [
                    [20837], 256
                ],
                12043: [
                    [20843], 256
                ],
                12044: [
                    [20866], 256
                ],
                12045: [
                    [20886], 256
                ],
                12046: [
                    [20907], 256
                ],
                12047: [
                    [20960], 256
                ],
                12048: [
                    [20981], 256
                ],
                12049: [
                    [20992], 256
                ],
                12050: [
                    [21147], 256
                ],
                12051: [
                    [21241], 256
                ],
                12052: [
                    [21269], 256
                ],
                12053: [
                    [21274], 256
                ],
                12054: [
                    [21304], 256
                ],
                12055: [
                    [21313], 256
                ],
                12056: [
                    [21340], 256
                ],
                12057: [
                    [21353], 256
                ],
                12058: [
                    [21378], 256
                ],
                12059: [
                    [21430], 256
                ],
                12060: [
                    [21448], 256
                ],
                12061: [
                    [21475], 256
                ],
                12062: [
                    [22231], 256
                ],
                12063: [
                    [22303], 256
                ],
                12064: [
                    [22763], 256
                ],
                12065: [
                    [22786], 256
                ],
                12066: [
                    [22794], 256
                ],
                12067: [
                    [22805], 256
                ],
                12068: [
                    [22823], 256
                ],
                12069: [
                    [22899], 256
                ],
                12070: [
                    [23376], 256
                ],
                12071: [
                    [23424], 256
                ],
                12072: [
                    [23544], 256
                ],
                12073: [
                    [23567], 256
                ],
                12074: [
                    [23586], 256
                ],
                12075: [
                    [23608], 256
                ],
                12076: [
                    [23662], 256
                ],
                12077: [
                    [23665], 256
                ],
                12078: [
                    [24027], 256
                ],
                12079: [
                    [24037], 256
                ],
                12080: [
                    [24049], 256
                ],
                12081: [
                    [24062], 256
                ],
                12082: [
                    [24178], 256
                ],
                12083: [
                    [24186], 256
                ],
                12084: [
                    [24191], 256
                ],
                12085: [
                    [24308], 256
                ],
                12086: [
                    [24318], 256
                ],
                12087: [
                    [24331], 256
                ],
                12088: [
                    [24339], 256
                ],
                12089: [
                    [24400], 256
                ],
                12090: [
                    [24417], 256
                ],
                12091: [
                    [24435], 256
                ],
                12092: [
                    [24515], 256
                ],
                12093: [
                    [25096], 256
                ],
                12094: [
                    [25142], 256
                ],
                12095: [
                    [25163], 256
                ],
                12096: [
                    [25903], 256
                ],
                12097: [
                    [25908], 256
                ],
                12098: [
                    [25991], 256
                ],
                12099: [
                    [26007], 256
                ],
                12100: [
                    [26020], 256
                ],
                12101: [
                    [26041], 256
                ],
                12102: [
                    [26080], 256
                ],
                12103: [
                    [26085], 256
                ],
                12104: [
                    [26352], 256
                ],
                12105: [
                    [26376], 256
                ],
                12106: [
                    [26408], 256
                ],
                12107: [
                    [27424], 256
                ],
                12108: [
                    [27490], 256
                ],
                12109: [
                    [27513], 256
                ],
                12110: [
                    [27571], 256
                ],
                12111: [
                    [27595], 256
                ],
                12112: [
                    [27604], 256
                ],
                12113: [
                    [27611], 256
                ],
                12114: [
                    [27663], 256
                ],
                12115: [
                    [27668], 256
                ],
                12116: [
                    [27700], 256
                ],
                12117: [
                    [28779], 256
                ],
                12118: [
                    [29226], 256
                ],
                12119: [
                    [29238], 256
                ],
                12120: [
                    [29243], 256
                ],
                12121: [
                    [29247], 256
                ],
                12122: [
                    [29255], 256
                ],
                12123: [
                    [29273], 256
                ],
                12124: [
                    [29275], 256
                ],
                12125: [
                    [29356], 256
                ],
                12126: [
                    [29572], 256
                ],
                12127: [
                    [29577], 256
                ],
                12128: [
                    [29916], 256
                ],
                12129: [
                    [29926], 256
                ],
                12130: [
                    [29976], 256
                ],
                12131: [
                    [29983], 256
                ],
                12132: [
                    [29992], 256
                ],
                12133: [
                    [3e4], 256
                ],
                12134: [
                    [30091], 256
                ],
                12135: [
                    [30098], 256
                ],
                12136: [
                    [30326], 256
                ],
                12137: [
                    [30333], 256
                ],
                12138: [
                    [30382], 256
                ],
                12139: [
                    [30399], 256
                ],
                12140: [
                    [30446], 256
                ],
                12141: [
                    [30683], 256
                ],
                12142: [
                    [30690], 256
                ],
                12143: [
                    [30707], 256
                ],
                12144: [
                    [31034], 256
                ],
                12145: [
                    [31160], 256
                ],
                12146: [
                    [31166], 256
                ],
                12147: [
                    [31348], 256
                ],
                12148: [
                    [31435], 256
                ],
                12149: [
                    [31481], 256
                ],
                12150: [
                    [31859], 256
                ],
                12151: [
                    [31992], 256
                ],
                12152: [
                    [32566], 256
                ],
                12153: [
                    [32593], 256
                ],
                12154: [
                    [32650], 256
                ],
                12155: [
                    [32701], 256
                ],
                12156: [
                    [32769], 256
                ],
                12157: [
                    [32780], 256
                ],
                12158: [
                    [32786], 256
                ],
                12159: [
                    [32819], 256
                ],
                12160: [
                    [32895], 256
                ],
                12161: [
                    [32905], 256
                ],
                12162: [
                    [33251], 256
                ],
                12163: [
                    [33258], 256
                ],
                12164: [
                    [33267], 256
                ],
                12165: [
                    [33276], 256
                ],
                12166: [
                    [33292], 256
                ],
                12167: [
                    [33307], 256
                ],
                12168: [
                    [33311], 256
                ],
                12169: [
                    [33390], 256
                ],
                12170: [
                    [33394], 256
                ],
                12171: [
                    [33400], 256
                ],
                12172: [
                    [34381], 256
                ],
                12173: [
                    [34411], 256
                ],
                12174: [
                    [34880], 256
                ],
                12175: [
                    [34892], 256
                ],
                12176: [
                    [34915], 256
                ],
                12177: [
                    [35198], 256
                ],
                12178: [
                    [35211], 256
                ],
                12179: [
                    [35282], 256
                ],
                12180: [
                    [35328], 256
                ],
                12181: [
                    [35895], 256
                ],
                12182: [
                    [35910], 256
                ],
                12183: [
                    [35925], 256
                ],
                12184: [
                    [35960], 256
                ],
                12185: [
                    [35997], 256
                ],
                12186: [
                    [36196], 256
                ],
                12187: [
                    [36208], 256
                ],
                12188: [
                    [36275], 256
                ],
                12189: [
                    [36523], 256
                ],
                12190: [
                    [36554], 256
                ],
                12191: [
                    [36763], 256
                ],
                12192: [
                    [36784], 256
                ],
                12193: [
                    [36789], 256
                ],
                12194: [
                    [37009], 256
                ],
                12195: [
                    [37193], 256
                ],
                12196: [
                    [37318], 256
                ],
                12197: [
                    [37324], 256
                ],
                12198: [
                    [37329], 256
                ],
                12199: [
                    [38263], 256
                ],
                12200: [
                    [38272], 256
                ],
                12201: [
                    [38428], 256
                ],
                12202: [
                    [38582], 256
                ],
                12203: [
                    [38585], 256
                ],
                12204: [
                    [38632], 256
                ],
                12205: [
                    [38737], 256
                ],
                12206: [
                    [38750], 256
                ],
                12207: [
                    [38754], 256
                ],
                12208: [
                    [38761], 256
                ],
                12209: [
                    [38859], 256
                ],
                12210: [
                    [38893], 256
                ],
                12211: [
                    [38899], 256
                ],
                12212: [
                    [38913], 256
                ],
                12213: [
                    [39080], 256
                ],
                12214: [
                    [39131], 256
                ],
                12215: [
                    [39135], 256
                ],
                12216: [
                    [39318], 256
                ],
                12217: [
                    [39321], 256
                ],
                12218: [
                    [39340], 256
                ],
                12219: [
                    [39592], 256
                ],
                12220: [
                    [39640], 256
                ],
                12221: [
                    [39647], 256
                ],
                12222: [
                    [39717], 256
                ],
                12223: [
                    [39727], 256
                ],
                12224: [
                    [39730], 256
                ],
                12225: [
                    [39740], 256
                ],
                12226: [
                    [39770], 256
                ],
                12227: [
                    [40165], 256
                ],
                12228: [
                    [40565], 256
                ],
                12229: [
                    [40575], 256
                ],
                12230: [
                    [40613], 256
                ],
                12231: [
                    [40635], 256
                ],
                12232: [
                    [40643], 256
                ],
                12233: [
                    [40653], 256
                ],
                12234: [
                    [40657], 256
                ],
                12235: [
                    [40697], 256
                ],
                12236: [
                    [40701], 256
                ],
                12237: [
                    [40718], 256
                ],
                12238: [
                    [40723], 256
                ],
                12239: [
                    [40736], 256
                ],
                12240: [
                    [40763], 256
                ],
                12241: [
                    [40778], 256
                ],
                12242: [
                    [40786], 256
                ],
                12243: [
                    [40845], 256
                ],
                12244: [
                    [40860], 256
                ],
                12245: [
                    [40864], 256
                ]
            },
            12288: {
                12288: [
                    [32], 256
                ],
                12330: [, 218],
                12331: [, 228],
                12332: [, 232],
                12333: [, 222],
                12334: [, 224],
                12335: [, 224],
                12342: [
                    [12306], 256
                ],
                12344: [
                    [21313], 256
                ],
                12345: [
                    [21316], 256
                ],
                12346: [
                    [21317], 256
                ],
                12358: [, , {
                    12441: 12436
                }],
                12363: [, , {
                    12441: 12364
                }],
                12364: [
                    [12363, 12441]
                ],
                12365: [, , {
                    12441: 12366
                }],
                12366: [
                    [12365, 12441]
                ],
                12367: [, , {
                    12441: 12368
                }],
                12368: [
                    [12367, 12441]
                ],
                12369: [, , {
                    12441: 12370
                }],
                12370: [
                    [12369, 12441]
                ],
                12371: [, , {
                    12441: 12372
                }],
                12372: [
                    [12371, 12441]
                ],
                12373: [, , {
                    12441: 12374
                }],
                12374: [
                    [12373, 12441]
                ],
                12375: [, , {
                    12441: 12376
                }],
                12376: [
                    [12375, 12441]
                ],
                12377: [, , {
                    12441: 12378
                }],
                12378: [
                    [12377, 12441]
                ],
                12379: [, , {
                    12441: 12380
                }],
                12380: [
                    [12379, 12441]
                ],
                12381: [, , {
                    12441: 12382
                }],
                12382: [
                    [12381, 12441]
                ],
                12383: [, , {
                    12441: 12384
                }],
                12384: [
                    [12383, 12441]
                ],
                12385: [, , {
                    12441: 12386
                }],
                12386: [
                    [12385, 12441]
                ],
                12388: [, , {
                    12441: 12389
                }],
                12389: [
                    [12388, 12441]
                ],
                12390: [, , {
                    12441: 12391
                }],
                12391: [
                    [12390, 12441]
                ],
                12392: [, , {
                    12441: 12393
                }],
                12393: [
                    [12392, 12441]
                ],
                12399: [, , {
                    12441: 12400,
                    12442: 12401
                }],
                12400: [
                    [12399, 12441]
                ],
                12401: [
                    [12399, 12442]
                ],
                12402: [, , {
                    12441: 12403,
                    12442: 12404
                }],
                12403: [
                    [12402, 12441]
                ],
                12404: [
                    [12402, 12442]
                ],
                12405: [, , {
                    12441: 12406,
                    12442: 12407
                }],
                12406: [
                    [12405, 12441]
                ],
                12407: [
                    [12405, 12442]
                ],
                12408: [, , {
                    12441: 12409,
                    12442: 12410
                }],
                12409: [
                    [12408, 12441]
                ],
                12410: [
                    [12408, 12442]
                ],
                12411: [, , {
                    12441: 12412,
                    12442: 12413
                }],
                12412: [
                    [12411, 12441]
                ],
                12413: [
                    [12411, 12442]
                ],
                12436: [
                    [12358, 12441]
                ],
                12441: [, 8],
                12442: [, 8],
                12443: [
                    [32, 12441], 256
                ],
                12444: [
                    [32, 12442], 256
                ],
                12445: [, , {
                    12441: 12446
                }],
                12446: [
                    [12445, 12441]
                ],
                12447: [
                    [12424, 12426], 256
                ],
                12454: [, , {
                    12441: 12532
                }],
                12459: [, , {
                    12441: 12460
                }],
                12460: [
                    [12459, 12441]
                ],
                12461: [, , {
                    12441: 12462
                }],
                12462: [
                    [12461, 12441]
                ],
                12463: [, , {
                    12441: 12464
                }],
                12464: [
                    [12463, 12441]
                ],
                12465: [, , {
                    12441: 12466
                }],
                12466: [
                    [12465, 12441]
                ],
                12467: [, , {
                    12441: 12468
                }],
                12468: [
                    [12467, 12441]
                ],
                12469: [, , {
                    12441: 12470
                }],
                12470: [
                    [12469, 12441]
                ],
                12471: [, , {
                    12441: 12472
                }],
                12472: [
                    [12471, 12441]
                ],
                12473: [, , {
                    12441: 12474
                }],
                12474: [
                    [12473, 12441]
                ],
                12475: [, , {
                    12441: 12476
                }],
                12476: [
                    [12475, 12441]
                ],
                12477: [, , {
                    12441: 12478
                }],
                12478: [
                    [12477, 12441]
                ],
                12479: [, , {
                    12441: 12480
                }],
                12480: [
                    [12479, 12441]
                ],
                12481: [, , {
                    12441: 12482
                }],
                12482: [
                    [12481, 12441]
                ],
                12484: [, , {
                    12441: 12485
                }],
                12485: [
                    [12484, 12441]
                ],
                12486: [, , {
                    12441: 12487
                }],
                12487: [
                    [12486, 12441]
                ],
                12488: [, , {
                    12441: 12489
                }],
                12489: [
                    [12488, 12441]
                ],
                12495: [, , {
                    12441: 12496,
                    12442: 12497
                }],
                12496: [
                    [12495, 12441]
                ],
                12497: [
                    [12495, 12442]
                ],
                12498: [, , {
                    12441: 12499,
                    12442: 12500
                }],
                12499: [
                    [12498, 12441]
                ],
                12500: [
                    [12498, 12442]
                ],
                12501: [, , {
                    12441: 12502,
                    12442: 12503
                }],
                12502: [
                    [12501, 12441]
                ],
                12503: [
                    [12501, 12442]
                ],
                12504: [, , {
                    12441: 12505,
                    12442: 12506
                }],
                12505: [
                    [12504, 12441]
                ],
                12506: [
                    [12504, 12442]
                ],
                12507: [, , {
                    12441: 12508,
                    12442: 12509
                }],
                12508: [
                    [12507, 12441]
                ],
                12509: [
                    [12507, 12442]
                ],
                12527: [, , {
                    12441: 12535
                }],
                12528: [, , {
                    12441: 12536
                }],
                12529: [, , {
                    12441: 12537
                }],
                12530: [, , {
                    12441: 12538
                }],
                12532: [
                    [12454, 12441]
                ],
                12535: [
                    [12527, 12441]
                ],
                12536: [
                    [12528, 12441]
                ],
                12537: [
                    [12529, 12441]
                ],
                12538: [
                    [12530, 12441]
                ],
                12541: [, , {
                    12441: 12542
                }],
                12542: [
                    [12541, 12441]
                ],
                12543: [
                    [12467, 12488], 256
                ]
            },
            12544: {
                12593: [
                    [4352], 256
                ],
                12594: [
                    [4353], 256
                ],
                12595: [
                    [4522], 256
                ],
                12596: [
                    [4354], 256
                ],
                12597: [
                    [4524], 256
                ],
                12598: [
                    [4525], 256
                ],
                12599: [
                    [4355], 256
                ],
                12600: [
                    [4356], 256
                ],
                12601: [
                    [4357], 256
                ],
                12602: [
                    [4528], 256
                ],
                12603: [
                    [4529], 256
                ],
                12604: [
                    [4530], 256
                ],
                12605: [
                    [4531], 256
                ],
                12606: [
                    [4532], 256
                ],
                12607: [
                    [4533], 256
                ],
                12608: [
                    [4378], 256
                ],
                12609: [
                    [4358], 256
                ],
                12610: [
                    [4359], 256
                ],
                12611: [
                    [4360], 256
                ],
                12612: [
                    [4385], 256
                ],
                12613: [
                    [4361], 256
                ],
                12614: [
                    [4362], 256
                ],
                12615: [
                    [4363], 256
                ],
                12616: [
                    [4364], 256
                ],
                12617: [
                    [4365], 256
                ],
                12618: [
                    [4366], 256
                ],
                12619: [
                    [4367], 256
                ],
                12620: [
                    [4368], 256
                ],
                12621: [
                    [4369], 256
                ],
                12622: [
                    [4370], 256
                ],
                12623: [
                    [4449], 256
                ],
                12624: [
                    [4450], 256
                ],
                12625: [
                    [4451], 256
                ],
                12626: [
                    [4452], 256
                ],
                12627: [
                    [4453], 256
                ],
                12628: [
                    [4454], 256
                ],
                12629: [
                    [4455], 256
                ],
                12630: [
                    [4456], 256
                ],
                12631: [
                    [4457], 256
                ],
                12632: [
                    [4458], 256
                ],
                12633: [
                    [4459], 256
                ],
                12634: [
                    [4460], 256
                ],
                12635: [
                    [4461], 256
                ],
                12636: [
                    [4462], 256
                ],
                12637: [
                    [4463], 256
                ],
                12638: [
                    [4464], 256
                ],
                12639: [
                    [4465], 256
                ],
                12640: [
                    [4466], 256
                ],
                12641: [
                    [4467], 256
                ],
                12642: [
                    [4468], 256
                ],
                12643: [
                    [4469], 256
                ],
                12644: [
                    [4448], 256
                ],
                12645: [
                    [4372], 256
                ],
                12646: [
                    [4373], 256
                ],
                12647: [
                    [4551], 256
                ],
                12648: [
                    [4552], 256
                ],
                12649: [
                    [4556], 256
                ],
                12650: [
                    [4558], 256
                ],
                12651: [
                    [4563], 256
                ],
                12652: [
                    [4567], 256
                ],
                12653: [
                    [4569], 256
                ],
                12654: [
                    [4380], 256
                ],
                12655: [
                    [4573], 256
                ],
                12656: [
                    [4575], 256
                ],
                12657: [
                    [4381], 256
                ],
                12658: [
                    [4382], 256
                ],
                12659: [
                    [4384], 256
                ],
                12660: [
                    [4386], 256
                ],
                12661: [
                    [4387], 256
                ],
                12662: [
                    [4391], 256
                ],
                12663: [
                    [4393], 256
                ],
                12664: [
                    [4395], 256
                ],
                12665: [
                    [4396], 256
                ],
                12666: [
                    [4397], 256
                ],
                12667: [
                    [4398], 256
                ],
                12668: [
                    [4399], 256
                ],
                12669: [
                    [4402], 256
                ],
                12670: [
                    [4406], 256
                ],
                12671: [
                    [4416], 256
                ],
                12672: [
                    [4423], 256
                ],
                12673: [
                    [4428], 256
                ],
                12674: [
                    [4593], 256
                ],
                12675: [
                    [4594], 256
                ],
                12676: [
                    [4439], 256
                ],
                12677: [
                    [4440], 256
                ],
                12678: [
                    [4441], 256
                ],
                12679: [
                    [4484], 256
                ],
                12680: [
                    [4485], 256
                ],
                12681: [
                    [4488], 256
                ],
                12682: [
                    [4497], 256
                ],
                12683: [
                    [4498], 256
                ],
                12684: [
                    [4500], 256
                ],
                12685: [
                    [4510], 256
                ],
                12686: [
                    [4513], 256
                ],
                12690: [
                    [19968], 256
                ],
                12691: [
                    [20108], 256
                ],
                12692: [
                    [19977], 256
                ],
                12693: [
                    [22235], 256
                ],
                12694: [
                    [19978], 256
                ],
                12695: [
                    [20013], 256
                ],
                12696: [
                    [19979], 256
                ],
                12697: [
                    [30002], 256
                ],
                12698: [
                    [20057], 256
                ],
                12699: [
                    [19993], 256
                ],
                12700: [
                    [19969], 256
                ],
                12701: [
                    [22825], 256
                ],
                12702: [
                    [22320], 256
                ],
                12703: [
                    [20154], 256
                ]
            },
            12800: {
                12800: [
                    [40, 4352, 41], 256
                ],
                12801: [
                    [40, 4354, 41], 256
                ],
                12802: [
                    [40, 4355, 41], 256
                ],
                12803: [
                    [40, 4357, 41], 256
                ],
                12804: [
                    [40, 4358, 41], 256
                ],
                12805: [
                    [40, 4359, 41], 256
                ],
                12806: [
                    [40, 4361, 41], 256
                ],
                12807: [
                    [40, 4363, 41], 256
                ],
                12808: [
                    [40, 4364, 41], 256
                ],
                12809: [
                    [40, 4366, 41], 256
                ],
                12810: [
                    [40, 4367, 41], 256
                ],
                12811: [
                    [40, 4368, 41], 256
                ],
                12812: [
                    [40, 4369, 41], 256
                ],
                12813: [
                    [40, 4370, 41], 256
                ],
                12814: [
                    [40, 4352, 4449, 41], 256
                ],
                12815: [
                    [40, 4354, 4449, 41], 256
                ],
                12816: [
                    [40, 4355, 4449, 41], 256
                ],
                12817: [
                    [40, 4357, 4449, 41], 256
                ],
                12818: [
                    [40, 4358, 4449, 41], 256
                ],
                12819: [
                    [40, 4359, 4449, 41], 256
                ],
                12820: [
                    [40, 4361, 4449, 41], 256
                ],
                12821: [
                    [40, 4363, 4449, 41], 256
                ],
                12822: [
                    [40, 4364, 4449, 41], 256
                ],
                12823: [
                    [40, 4366, 4449, 41], 256
                ],
                12824: [
                    [40, 4367, 4449, 41], 256
                ],
                12825: [
                    [40, 4368, 4449, 41], 256
                ],
                12826: [
                    [40, 4369, 4449, 41], 256
                ],
                12827: [
                    [40, 4370, 4449, 41], 256
                ],
                12828: [
                    [40, 4364, 4462, 41], 256
                ],
                12829: [
                    [40, 4363, 4457, 4364, 4453, 4523, 41], 256
                ],
                12830: [
                    [40, 4363, 4457, 4370, 4462, 41], 256
                ],
                12832: [
                    [40, 19968, 41], 256
                ],
                12833: [
                    [40, 20108, 41], 256
                ],
                12834: [
                    [40, 19977, 41], 256
                ],
                12835: [
                    [40, 22235, 41], 256
                ],
                12836: [
                    [40, 20116, 41], 256
                ],
                12837: [
                    [40, 20845, 41], 256
                ],
                12838: [
                    [40, 19971, 41], 256
                ],
                12839: [
                    [40, 20843, 41], 256
                ],
                12840: [
                    [40, 20061, 41], 256
                ],
                12841: [
                    [40, 21313, 41], 256
                ],
                12842: [
                    [40, 26376, 41], 256
                ],
                12843: [
                    [40, 28779, 41], 256
                ],
                12844: [
                    [40, 27700, 41], 256
                ],
                12845: [
                    [40, 26408, 41], 256
                ],
                12846: [
                    [40, 37329, 41], 256
                ],
                12847: [
                    [40, 22303, 41], 256
                ],
                12848: [
                    [40, 26085, 41], 256
                ],
                12849: [
                    [40, 26666, 41], 256
                ],
                12850: [
                    [40, 26377, 41], 256
                ],
                12851: [
                    [40, 31038, 41], 256
                ],
                12852: [
                    [40, 21517, 41], 256
                ],
                12853: [
                    [40, 29305, 41], 256
                ],
                12854: [
                    [40, 36001, 41], 256
                ],
                12855: [
                    [40, 31069, 41], 256
                ],
                12856: [
                    [40, 21172, 41], 256
                ],
                12857: [
                    [40, 20195, 41], 256
                ],
                12858: [
                    [40, 21628, 41], 256
                ],
                12859: [
                    [40, 23398, 41], 256
                ],
                12860: [
                    [40, 30435, 41], 256
                ],
                12861: [
                    [40, 20225, 41], 256
                ],
                12862: [
                    [40, 36039, 41], 256
                ],
                12863: [
                    [40, 21332, 41], 256
                ],
                12864: [
                    [40, 31085, 41], 256
                ],
                12865: [
                    [40, 20241, 41], 256
                ],
                12866: [
                    [40, 33258, 41], 256
                ],
                12867: [
                    [40, 33267, 41], 256
                ],
                12868: [
                    [21839], 256
                ],
                12869: [
                    [24188], 256
                ],
                12870: [
                    [25991], 256
                ],
                12871: [
                    [31631], 256
                ],
                12880: [
                    [80, 84, 69], 256
                ],
                12881: [
                    [50, 49], 256
                ],
                12882: [
                    [50, 50], 256
                ],
                12883: [
                    [50, 51], 256
                ],
                12884: [
                    [50, 52], 256
                ],
                12885: [
                    [50, 53], 256
                ],
                12886: [
                    [50, 54], 256
                ],
                12887: [
                    [50, 55], 256
                ],
                12888: [
                    [50, 56], 256
                ],
                12889: [
                    [50, 57], 256
                ],
                12890: [
                    [51, 48], 256
                ],
                12891: [
                    [51, 49], 256
                ],
                12892: [
                    [51, 50], 256
                ],
                12893: [
                    [51, 51], 256
                ],
                12894: [
                    [51, 52], 256
                ],
                12895: [
                    [51, 53], 256
                ],
                12896: [
                    [4352], 256
                ],
                12897: [
                    [4354], 256
                ],
                12898: [
                    [4355], 256
                ],
                12899: [
                    [4357], 256
                ],
                12900: [
                    [4358], 256
                ],
                12901: [
                    [4359], 256
                ],
                12902: [
                    [4361], 256
                ],
                12903: [
                    [4363], 256
                ],
                12904: [
                    [4364], 256
                ],
                12905: [
                    [4366], 256
                ],
                12906: [
                    [4367], 256
                ],
                12907: [
                    [4368], 256
                ],
                12908: [
                    [4369], 256
                ],
                12909: [
                    [4370], 256
                ],
                12910: [
                    [4352, 4449], 256
                ],
                12911: [
                    [4354, 4449], 256
                ],
                12912: [
                    [4355, 4449], 256
                ],
                12913: [
                    [4357, 4449], 256
                ],
                12914: [
                    [4358, 4449], 256
                ],
                12915: [
                    [4359, 4449], 256
                ],
                12916: [
                    [4361, 4449], 256
                ],
                12917: [
                    [4363, 4449], 256
                ],
                12918: [
                    [4364, 4449], 256
                ],
                12919: [
                    [4366, 4449], 256
                ],
                12920: [
                    [4367, 4449], 256
                ],
                12921: [
                    [4368, 4449], 256
                ],
                12922: [
                    [4369, 4449], 256
                ],
                12923: [
                    [4370, 4449], 256
                ],
                12924: [
                    [4366, 4449, 4535, 4352, 4457], 256
                ],
                12925: [
                    [4364, 4462, 4363, 4468], 256
                ],
                12926: [
                    [4363, 4462], 256
                ],
                12928: [
                    [19968], 256
                ],
                12929: [
                    [20108], 256
                ],
                12930: [
                    [19977], 256
                ],
                12931: [
                    [22235], 256
                ],
                12932: [
                    [20116], 256
                ],
                12933: [
                    [20845], 256
                ],
                12934: [
                    [19971], 256
                ],
                12935: [
                    [20843], 256
                ],
                12936: [
                    [20061], 256
                ],
                12937: [
                    [21313], 256
                ],
                12938: [
                    [26376], 256
                ],
                12939: [
                    [28779], 256
                ],
                12940: [
                    [27700], 256
                ],
                12941: [
                    [26408], 256
                ],
                12942: [
                    [37329], 256
                ],
                12943: [
                    [22303], 256
                ],
                12944: [
                    [26085], 256
                ],
                12945: [
                    [26666], 256
                ],
                12946: [
                    [26377], 256
                ],
                12947: [
                    [31038], 256
                ],
                12948: [
                    [21517], 256
                ],
                12949: [
                    [29305], 256
                ],
                12950: [
                    [36001], 256
                ],
                12951: [
                    [31069], 256
                ],
                12952: [
                    [21172], 256
                ],
                12953: [
                    [31192], 256
                ],
                12954: [
                    [30007], 256
                ],
                12955: [
                    [22899], 256
                ],
                12956: [
                    [36969], 256
                ],
                12957: [
                    [20778], 256
                ],
                12958: [
                    [21360], 256
                ],
                12959: [
                    [27880], 256
                ],
                12960: [
                    [38917], 256
                ],
                12961: [
                    [20241], 256
                ],
                12962: [
                    [20889], 256
                ],
                12963: [
                    [27491], 256
                ],
                12964: [
                    [19978], 256
                ],
                12965: [
                    [20013], 256
                ],
                12966: [
                    [19979], 256
                ],
                12967: [
                    [24038], 256
                ],
                12968: [
                    [21491], 256
                ],
                12969: [
                    [21307], 256
                ],
                12970: [
                    [23447], 256
                ],
                12971: [
                    [23398], 256
                ],
                12972: [
                    [30435], 256
                ],
                12973: [
                    [20225], 256
                ],
                12974: [
                    [36039], 256
                ],
                12975: [
                    [21332], 256
                ],
                12976: [
                    [22812], 256
                ],
                12977: [
                    [51, 54], 256
                ],
                12978: [
                    [51, 55], 256
                ],
                12979: [
                    [51, 56], 256
                ],
                12980: [
                    [51, 57], 256
                ],
                12981: [
                    [52, 48], 256
                ],
                12982: [
                    [52, 49], 256
                ],
                12983: [
                    [52, 50], 256
                ],
                12984: [
                    [52, 51], 256
                ],
                12985: [
                    [52, 52], 256
                ],
                12986: [
                    [52, 53], 256
                ],
                12987: [
                    [52, 54], 256
                ],
                12988: [
                    [52, 55], 256
                ],
                12989: [
                    [52, 56], 256
                ],
                12990: [
                    [52, 57], 256
                ],
                12991: [
                    [53, 48], 256
                ],
                12992: [
                    [49, 26376], 256
                ],
                12993: [
                    [50, 26376], 256
                ],
                12994: [
                    [51, 26376], 256
                ],
                12995: [
                    [52, 26376], 256
                ],
                12996: [
                    [53, 26376], 256
                ],
                12997: [
                    [54, 26376], 256
                ],
                12998: [
                    [55, 26376], 256
                ],
                12999: [
                    [56, 26376], 256
                ],
                13e3: [
                    [57, 26376], 256
                ],
                13001: [
                    [49, 48, 26376], 256
                ],
                13002: [
                    [49, 49, 26376], 256
                ],
                13003: [
                    [49, 50, 26376], 256
                ],
                13004: [
                    [72, 103], 256
                ],
                13005: [
                    [101, 114, 103], 256
                ],
                13006: [
                    [101, 86], 256
                ],
                13007: [
                    [76, 84, 68], 256
                ],
                13008: [
                    [12450], 256
                ],
                13009: [
                    [12452], 256
                ],
                13010: [
                    [12454], 256
                ],
                13011: [
                    [12456], 256
                ],
                13012: [
                    [12458], 256
                ],
                13013: [
                    [12459], 256
                ],
                13014: [
                    [12461], 256
                ],
                13015: [
                    [12463], 256
                ],
                13016: [
                    [12465], 256
                ],
                13017: [
                    [12467], 256
                ],
                13018: [
                    [12469], 256
                ],
                13019: [
                    [12471], 256
                ],
                13020: [
                    [12473], 256
                ],
                13021: [
                    [12475], 256
                ],
                13022: [
                    [12477], 256
                ],
                13023: [
                    [12479], 256
                ],
                13024: [
                    [12481], 256
                ],
                13025: [
                    [12484], 256
                ],
                13026: [
                    [12486], 256
                ],
                13027: [
                    [12488], 256
                ],
                13028: [
                    [12490], 256
                ],
                13029: [
                    [12491], 256
                ],
                13030: [
                    [12492], 256
                ],
                13031: [
                    [12493], 256
                ],
                13032: [
                    [12494], 256
                ],
                13033: [
                    [12495], 256
                ],
                13034: [
                    [12498], 256
                ],
                13035: [
                    [12501], 256
                ],
                13036: [
                    [12504], 256
                ],
                13037: [
                    [12507], 256
                ],
                13038: [
                    [12510], 256
                ],
                13039: [
                    [12511], 256
                ],
                13040: [
                    [12512], 256
                ],
                13041: [
                    [12513], 256
                ],
                13042: [
                    [12514], 256
                ],
                13043: [
                    [12516], 256
                ],
                13044: [
                    [12518], 256
                ],
                13045: [
                    [12520], 256
                ],
                13046: [
                    [12521], 256
                ],
                13047: [
                    [12522], 256
                ],
                13048: [
                    [12523], 256
                ],
                13049: [
                    [12524], 256
                ],
                13050: [
                    [12525], 256
                ],
                13051: [
                    [12527], 256
                ],
                13052: [
                    [12528], 256
                ],
                13053: [
                    [12529], 256
                ],
                13054: [
                    [12530], 256
                ]
            },
            13056: {
                13056: [
                    [12450, 12497, 12540, 12488], 256
                ],
                13057: [
                    [12450, 12523, 12501, 12449], 256
                ],
                13058: [
                    [12450, 12531, 12506, 12450], 256
                ],
                13059: [
                    [12450, 12540, 12523], 256
                ],
                13060: [
                    [12452, 12491, 12531, 12464], 256
                ],
                13061: [
                    [12452, 12531, 12481], 256
                ],
                13062: [
                    [12454, 12457, 12531], 256
                ],
                13063: [
                    [12456, 12473, 12463, 12540, 12489], 256
                ],
                13064: [
                    [12456, 12540, 12459, 12540], 256
                ],
                13065: [
                    [12458, 12531, 12473], 256
                ],
                13066: [
                    [12458, 12540, 12512], 256
                ],
                13067: [
                    [12459, 12452, 12522], 256
                ],
                13068: [
                    [12459, 12521, 12483, 12488], 256
                ],
                13069: [
                    [12459, 12525, 12522, 12540], 256
                ],
                13070: [
                    [12460, 12525, 12531], 256
                ],
                13071: [
                    [12460, 12531, 12510], 256
                ],
                13072: [
                    [12462, 12460], 256
                ],
                13073: [
                    [12462, 12491, 12540], 256
                ],
                13074: [
                    [12461, 12517, 12522, 12540], 256
                ],
                13075: [
                    [12462, 12523, 12480, 12540], 256
                ],
                13076: [
                    [12461, 12525], 256
                ],
                13077: [
                    [12461, 12525, 12464, 12521, 12512], 256
                ],
                13078: [
                    [12461, 12525, 12513, 12540, 12488, 12523], 256
                ],
                13079: [
                    [12461, 12525, 12527, 12483, 12488], 256
                ],
                13080: [
                    [12464, 12521, 12512], 256
                ],
                13081: [
                    [12464, 12521, 12512, 12488, 12531], 256
                ],
                13082: [
                    [12463, 12523, 12476, 12452, 12525], 256
                ],
                13083: [
                    [12463, 12525, 12540, 12493], 256
                ],
                13084: [
                    [12465, 12540, 12473], 256
                ],
                13085: [
                    [12467, 12523, 12490], 256
                ],
                13086: [
                    [12467, 12540, 12509], 256
                ],
                13087: [
                    [12469, 12452, 12463, 12523], 256
                ],
                13088: [
                    [12469, 12531, 12481, 12540, 12512], 256
                ],
                13089: [
                    [12471, 12522, 12531, 12464], 256
                ],
                13090: [
                    [12475, 12531, 12481], 256
                ],
                13091: [
                    [12475, 12531, 12488], 256
                ],
                13092: [
                    [12480, 12540, 12473], 256
                ],
                13093: [
                    [12487, 12471], 256
                ],
                13094: [
                    [12489, 12523], 256
                ],
                13095: [
                    [12488, 12531], 256
                ],
                13096: [
                    [12490, 12494], 256
                ],
                13097: [
                    [12494, 12483, 12488], 256
                ],
                13098: [
                    [12495, 12452, 12484], 256
                ],
                13099: [
                    [12497, 12540, 12475, 12531, 12488], 256
                ],
                13100: [
                    [12497, 12540, 12484], 256
                ],
                13101: [
                    [12496, 12540, 12524, 12523], 256
                ],
                13102: [
                    [12500, 12450, 12473, 12488, 12523], 256
                ],
                13103: [
                    [12500, 12463, 12523], 256
                ],
                13104: [
                    [12500, 12467], 256
                ],
                13105: [
                    [12499, 12523], 256
                ],
                13106: [
                    [12501, 12449, 12521, 12483, 12489], 256
                ],
                13107: [
                    [12501, 12451, 12540, 12488], 256
                ],
                13108: [
                    [12502, 12483, 12471, 12455, 12523], 256
                ],
                13109: [
                    [12501, 12521, 12531], 256
                ],
                13110: [
                    [12504, 12463, 12479, 12540, 12523], 256
                ],
                13111: [
                    [12506, 12477], 256
                ],
                13112: [
                    [12506, 12491, 12498], 256
                ],
                13113: [
                    [12504, 12523, 12484], 256
                ],
                13114: [
                    [12506, 12531, 12473], 256
                ],
                13115: [
                    [12506, 12540, 12472], 256
                ],
                13116: [
                    [12505, 12540, 12479], 256
                ],
                13117: [
                    [12509, 12452, 12531, 12488], 256
                ],
                13118: [
                    [12508, 12523, 12488], 256
                ],
                13119: [
                    [12507, 12531], 256
                ],
                13120: [
                    [12509, 12531, 12489], 256
                ],
                13121: [
                    [12507, 12540, 12523], 256
                ],
                13122: [
                    [12507, 12540, 12531], 256
                ],
                13123: [
                    [12510, 12452, 12463, 12525], 256
                ],
                13124: [
                    [12510, 12452, 12523], 256
                ],
                13125: [
                    [12510, 12483, 12495], 256
                ],
                13126: [
                    [12510, 12523, 12463], 256
                ],
                13127: [
                    [12510, 12531, 12471, 12519, 12531], 256
                ],
                13128: [
                    [12511, 12463, 12525, 12531], 256
                ],
                13129: [
                    [12511, 12522], 256
                ],
                13130: [
                    [12511, 12522, 12496, 12540, 12523], 256
                ],
                13131: [
                    [12513, 12460], 256
                ],
                13132: [
                    [12513, 12460, 12488, 12531], 256
                ],
                13133: [
                    [12513, 12540, 12488, 12523], 256
                ],
                13134: [
                    [12516, 12540, 12489], 256
                ],
                13135: [
                    [12516, 12540, 12523], 256
                ],
                13136: [
                    [12518, 12450, 12531], 256
                ],
                13137: [
                    [12522, 12483, 12488, 12523], 256
                ],
                13138: [
                    [12522, 12521], 256
                ],
                13139: [
                    [12523, 12500, 12540], 256
                ],
                13140: [
                    [12523, 12540, 12502, 12523], 256
                ],
                13141: [
                    [12524, 12512], 256
                ],
                13142: [
                    [12524, 12531, 12488, 12466, 12531], 256
                ],
                13143: [
                    [12527, 12483, 12488], 256
                ],
                13144: [
                    [48, 28857], 256
                ],
                13145: [
                    [49, 28857], 256
                ],
                13146: [
                    [50, 28857], 256
                ],
                13147: [
                    [51, 28857], 256
                ],
                13148: [
                    [52, 28857], 256
                ],
                13149: [
                    [53, 28857], 256
                ],
                13150: [
                    [54, 28857], 256
                ],
                13151: [
                    [55, 28857], 256
                ],
                13152: [
                    [56, 28857], 256
                ],
                13153: [
                    [57, 28857], 256
                ],
                13154: [
                    [49, 48, 28857], 256
                ],
                13155: [
                    [49, 49, 28857], 256
                ],
                13156: [
                    [49, 50, 28857], 256
                ],
                13157: [
                    [49, 51, 28857], 256
                ],
                13158: [
                    [49, 52, 28857], 256
                ],
                13159: [
                    [49, 53, 28857], 256
                ],
                13160: [
                    [49, 54, 28857], 256
                ],
                13161: [
                    [49, 55, 28857], 256
                ],
                13162: [
                    [49, 56, 28857], 256
                ],
                13163: [
                    [49, 57, 28857], 256
                ],
                13164: [
                    [50, 48, 28857], 256
                ],
                13165: [
                    [50, 49, 28857], 256
                ],
                13166: [
                    [50, 50, 28857], 256
                ],
                13167: [
                    [50, 51, 28857], 256
                ],
                13168: [
                    [50, 52, 28857], 256
                ],
                13169: [
                    [104, 80, 97], 256
                ],
                13170: [
                    [100, 97], 256
                ],
                13171: [
                    [65, 85], 256
                ],
                13172: [
                    [98, 97, 114], 256
                ],
                13173: [
                    [111, 86], 256
                ],
                13174: [
                    [112, 99], 256
                ],
                13175: [
                    [100, 109], 256
                ],
                13176: [
                    [100, 109, 178], 256
                ],
                13177: [
                    [100, 109, 179], 256
                ],
                13178: [
                    [73, 85], 256
                ],
                13179: [
                    [24179, 25104], 256
                ],
                13180: [
                    [26157, 21644], 256
                ],
                13181: [
                    [22823, 27491], 256
                ],
                13182: [
                    [26126, 27835], 256
                ],
                13183: [
                    [26666, 24335, 20250, 31038], 256
                ],
                13184: [
                    [112, 65], 256
                ],
                13185: [
                    [110, 65], 256
                ],
                13186: [
                    [956, 65], 256
                ],
                13187: [
                    [109, 65], 256
                ],
                13188: [
                    [107, 65], 256
                ],
                13189: [
                    [75, 66], 256
                ],
                13190: [
                    [77, 66], 256
                ],
                13191: [
                    [71, 66], 256
                ],
                13192: [
                    [99, 97, 108], 256
                ],
                13193: [
                    [107, 99, 97, 108], 256
                ],
                13194: [
                    [112, 70], 256
                ],
                13195: [
                    [110, 70], 256
                ],
                13196: [
                    [956, 70], 256
                ],
                13197: [
                    [956, 103], 256
                ],
                13198: [
                    [109, 103], 256
                ],
                13199: [
                    [107, 103], 256
                ],
                13200: [
                    [72, 122], 256
                ],
                13201: [
                    [107, 72, 122], 256
                ],
                13202: [
                    [77, 72, 122], 256
                ],
                13203: [
                    [71, 72, 122], 256
                ],
                13204: [
                    [84, 72, 122], 256
                ],
                13205: [
                    [956, 8467], 256
                ],
                13206: [
                    [109, 8467], 256
                ],
                13207: [
                    [100, 8467], 256
                ],
                13208: [
                    [107, 8467], 256
                ],
                13209: [
                    [102, 109], 256
                ],
                13210: [
                    [110, 109], 256
                ],
                13211: [
                    [956, 109], 256
                ],
                13212: [
                    [109, 109], 256
                ],
                13213: [
                    [99, 109], 256
                ],
                13214: [
                    [107, 109], 256
                ],
                13215: [
                    [109, 109, 178], 256
                ],
                13216: [
                    [99, 109, 178], 256
                ],
                13217: [
                    [109, 178], 256
                ],
                13218: [
                    [107, 109, 178], 256
                ],
                13219: [
                    [109, 109, 179], 256
                ],
                13220: [
                    [99, 109, 179], 256
                ],
                13221: [
                    [109, 179], 256
                ],
                13222: [
                    [107, 109, 179], 256
                ],
                13223: [
                    [109, 8725, 115], 256
                ],
                13224: [
                    [109, 8725, 115, 178], 256
                ],
                13225: [
                    [80, 97], 256
                ],
                13226: [
                    [107, 80, 97], 256
                ],
                13227: [
                    [77, 80, 97], 256
                ],
                13228: [
                    [71, 80, 97], 256
                ],
                13229: [
                    [114, 97, 100], 256
                ],
                13230: [
                    [114, 97, 100, 8725, 115], 256
                ],
                13231: [
                    [114, 97, 100, 8725, 115, 178], 256
                ],
                13232: [
                    [112, 115], 256
                ],
                13233: [
                    [110, 115], 256
                ],
                13234: [
                    [956, 115], 256
                ],
                13235: [
                    [109, 115], 256
                ],
                13236: [
                    [112, 86], 256
                ],
                13237: [
                    [110, 86], 256
                ],
                13238: [
                    [956, 86], 256
                ],
                13239: [
                    [109, 86], 256
                ],
                13240: [
                    [107, 86], 256
                ],
                13241: [
                    [77, 86], 256
                ],
                13242: [
                    [112, 87], 256
                ],
                13243: [
                    [110, 87], 256
                ],
                13244: [
                    [956, 87], 256
                ],
                13245: [
                    [109, 87], 256
                ],
                13246: [
                    [107, 87], 256
                ],
                13247: [
                    [77, 87], 256
                ],
                13248: [
                    [107, 937], 256
                ],
                13249: [
                    [77, 937], 256
                ],
                13250: [
                    [97, 46, 109, 46], 256
                ],
                13251: [
                    [66, 113], 256
                ],
                13252: [
                    [99, 99], 256
                ],
                13253: [
                    [99, 100], 256
                ],
                13254: [
                    [67, 8725, 107, 103], 256
                ],
                13255: [
                    [67, 111, 46], 256
                ],
                13256: [
                    [100, 66], 256
                ],
                13257: [
                    [71, 121], 256
                ],
                13258: [
                    [104, 97], 256
                ],
                13259: [
                    [72, 80], 256
                ],
                13260: [
                    [105, 110], 256
                ],
                13261: [
                    [75, 75], 256
                ],
                13262: [
                    [75, 77], 256
                ],
                13263: [
                    [107, 116], 256
                ],
                13264: [
                    [108, 109], 256
                ],
                13265: [
                    [108, 110], 256
                ],
                13266: [
                    [108, 111, 103], 256
                ],
                13267: [
                    [108, 120], 256
                ],
                13268: [
                    [109, 98], 256
                ],
                13269: [
                    [109, 105, 108], 256
                ],
                13270: [
                    [109, 111, 108], 256
                ],
                13271: [
                    [80, 72], 256
                ],
                13272: [
                    [112, 46, 109, 46], 256
                ],
                13273: [
                    [80, 80, 77], 256
                ],
                13274: [
                    [80, 82], 256
                ],
                13275: [
                    [115, 114], 256
                ],
                13276: [
                    [83, 118], 256
                ],
                13277: [
                    [87, 98], 256
                ],
                13278: [
                    [86, 8725, 109], 256
                ],
                13279: [
                    [65, 8725, 109], 256
                ],
                13280: [
                    [49, 26085], 256
                ],
                13281: [
                    [50, 26085], 256
                ],
                13282: [
                    [51, 26085], 256
                ],
                13283: [
                    [52, 26085], 256
                ],
                13284: [
                    [53, 26085], 256
                ],
                13285: [
                    [54, 26085], 256
                ],
                13286: [
                    [55, 26085], 256
                ],
                13287: [
                    [56, 26085], 256
                ],
                13288: [
                    [57, 26085], 256
                ],
                13289: [
                    [49, 48, 26085], 256
                ],
                13290: [
                    [49, 49, 26085], 256
                ],
                13291: [
                    [49, 50, 26085], 256
                ],
                13292: [
                    [49, 51, 26085], 256
                ],
                13293: [
                    [49, 52, 26085], 256
                ],
                13294: [
                    [49, 53, 26085], 256
                ],
                13295: [
                    [49, 54, 26085], 256
                ],
                13296: [
                    [49, 55, 26085], 256
                ],
                13297: [
                    [49, 56, 26085], 256
                ],
                13298: [
                    [49, 57, 26085], 256
                ],
                13299: [
                    [50, 48, 26085], 256
                ],
                13300: [
                    [50, 49, 26085], 256
                ],
                13301: [
                    [50, 50, 26085], 256
                ],
                13302: [
                    [50, 51, 26085], 256
                ],
                13303: [
                    [50, 52, 26085], 256
                ],
                13304: [
                    [50, 53, 26085], 256
                ],
                13305: [
                    [50, 54, 26085], 256
                ],
                13306: [
                    [50, 55, 26085], 256
                ],
                13307: [
                    [50, 56, 26085], 256
                ],
                13308: [
                    [50, 57, 26085], 256
                ],
                13309: [
                    [51, 48, 26085], 256
                ],
                13310: [
                    [51, 49, 26085], 256
                ],
                13311: [
                    [103, 97, 108], 256
                ]
            },
            27136: {
                92912: [, 1],
                92913: [, 1],
                92914: [, 1],
                92915: [, 1],
                92916: [, 1]
            },
            27392: {
                92976: [, 230],
                92977: [, 230],
                92978: [, 230],
                92979: [, 230],
                92980: [, 230],
                92981: [, 230],
                92982: [, 230]
            },
            42496: {
                42607: [, 230],
                42612: [, 230],
                42613: [, 230],
                42614: [, 230],
                42615: [, 230],
                42616: [, 230],
                42617: [, 230],
                42618: [, 230],
                42619: [, 230],
                42620: [, 230],
                42621: [, 230],
                42652: [
                    [1098], 256
                ],
                42653: [
                    [1100], 256
                ],
                42655: [, 230],
                42736: [, 230],
                42737: [, 230]
            },
            42752: {
                42864: [
                    [42863], 256
                ],
                43e3: [
                    [294], 256
                ],
                43001: [
                    [339], 256
                ]
            },
            43008: {
                43014: [, 9],
                43204: [, 9],
                43232: [, 230],
                43233: [, 230],
                43234: [, 230],
                43235: [, 230],
                43236: [, 230],
                43237: [, 230],
                43238: [, 230],
                43239: [, 230],
                43240: [, 230],
                43241: [, 230],
                43242: [, 230],
                43243: [, 230],
                43244: [, 230],
                43245: [, 230],
                43246: [, 230],
                43247: [, 230],
                43248: [, 230],
                43249: [, 230]
            },
            43264: {
                43307: [, 220],
                43308: [, 220],
                43309: [, 220],
                43347: [, 9],
                43443: [, 7],
                43456: [, 9]
            },
            43520: {
                43696: [, 230],
                43698: [, 230],
                43699: [, 230],
                43700: [, 220],
                43703: [, 230],
                43704: [, 230],
                43710: [, 230],
                43711: [, 230],
                43713: [, 230],
                43766: [, 9]
            },
            43776: {
                43868: [
                    [42791], 256
                ],
                43869: [
                    [43831], 256
                ],
                43870: [
                    [619], 256
                ],
                43871: [
                    [43858], 256
                ],
                44013: [, 9]
            },
            48128: {
                113822: [, 1]
            },
            53504: {
                119134: [
                    [119127, 119141], 512
                ],
                119135: [
                    [119128, 119141], 512
                ],
                119136: [
                    [119135, 119150], 512
                ],
                119137: [
                    [119135, 119151], 512
                ],
                119138: [
                    [119135, 119152], 512
                ],
                119139: [
                    [119135, 119153], 512
                ],
                119140: [
                    [119135, 119154], 512
                ],
                119141: [, 216],
                119142: [, 216],
                119143: [, 1],
                119144: [, 1],
                119145: [, 1],
                119149: [, 226],
                119150: [, 216],
                119151: [, 216],
                119152: [, 216],
                119153: [, 216],
                119154: [, 216],
                119163: [, 220],
                119164: [, 220],
                119165: [, 220],
                119166: [, 220],
                119167: [, 220],
                119168: [, 220],
                119169: [, 220],
                119170: [, 220],
                119173: [, 230],
                119174: [, 230],
                119175: [, 230],
                119176: [, 230],
                119177: [, 230],
                119178: [, 220],
                119179: [, 220],
                119210: [, 230],
                119211: [, 230],
                119212: [, 230],
                119213: [, 230],
                119227: [
                    [119225, 119141], 512
                ],
                119228: [
                    [119226, 119141], 512
                ],
                119229: [
                    [119227, 119150], 512
                ],
                119230: [
                    [119228, 119150], 512
                ],
                119231: [
                    [119227, 119151], 512
                ],
                119232: [
                    [119228, 119151], 512
                ]
            },
            53760: {
                119362: [, 230],
                119363: [, 230],
                119364: [, 230]
            },
            54272: {
                119808: [
                    [65], 256
                ],
                119809: [
                    [66], 256
                ],
                119810: [
                    [67], 256
                ],
                119811: [
                    [68], 256
                ],
                119812: [
                    [69], 256
                ],
                119813: [
                    [70], 256
                ],
                119814: [
                    [71], 256
                ],
                119815: [
                    [72], 256
                ],
                119816: [
                    [73], 256
                ],
                119817: [
                    [74], 256
                ],
                119818: [
                    [75], 256
                ],
                119819: [
                    [76], 256
                ],
                119820: [
                    [77], 256
                ],
                119821: [
                    [78], 256
                ],
                119822: [
                    [79], 256
                ],
                119823: [
                    [80], 256
                ],
                119824: [
                    [81], 256
                ],
                119825: [
                    [82], 256
                ],
                119826: [
                    [83], 256
                ],
                119827: [
                    [84], 256
                ],
                119828: [
                    [85], 256
                ],
                119829: [
                    [86], 256
                ],
                119830: [
                    [87], 256
                ],
                119831: [
                    [88], 256
                ],
                119832: [
                    [89], 256
                ],
                119833: [
                    [90], 256
                ],
                119834: [
                    [97], 256
                ],
                119835: [
                    [98], 256
                ],
                119836: [
                    [99], 256
                ],
                119837: [
                    [100], 256
                ],
                119838: [
                    [101], 256
                ],
                119839: [
                    [102], 256
                ],
                119840: [
                    [103], 256
                ],
                119841: [
                    [104], 256
                ],
                119842: [
                    [105], 256
                ],
                119843: [
                    [106], 256
                ],
                119844: [
                    [107], 256
                ],
                119845: [
                    [108], 256
                ],
                119846: [
                    [109], 256
                ],
                119847: [
                    [110], 256
                ],
                119848: [
                    [111], 256
                ],
                119849: [
                    [112], 256
                ],
                119850: [
                    [113], 256
                ],
                119851: [
                    [114], 256
                ],
                119852: [
                    [115], 256
                ],
                119853: [
                    [116], 256
                ],
                119854: [
                    [117], 256
                ],
                119855: [
                    [118], 256
                ],
                119856: [
                    [119], 256
                ],
                119857: [
                    [120], 256
                ],
                119858: [
                    [121], 256
                ],
                119859: [
                    [122], 256
                ],
                119860: [
                    [65], 256
                ],
                119861: [
                    [66], 256
                ],
                119862: [
                    [67], 256
                ],
                119863: [
                    [68], 256
                ],
                119864: [
                    [69], 256
                ],
                119865: [
                    [70], 256
                ],
                119866: [
                    [71], 256
                ],
                119867: [
                    [72], 256
                ],
                119868: [
                    [73], 256
                ],
                119869: [
                    [74], 256
                ],
                119870: [
                    [75], 256
                ],
                119871: [
                    [76], 256
                ],
                119872: [
                    [77], 256
                ],
                119873: [
                    [78], 256
                ],
                119874: [
                    [79], 256
                ],
                119875: [
                    [80], 256
                ],
                119876: [
                    [81], 256
                ],
                119877: [
                    [82], 256
                ],
                119878: [
                    [83], 256
                ],
                119879: [
                    [84], 256
                ],
                119880: [
                    [85], 256
                ],
                119881: [
                    [86], 256
                ],
                119882: [
                    [87], 256
                ],
                119883: [
                    [88], 256
                ],
                119884: [
                    [89], 256
                ],
                119885: [
                    [90], 256
                ],
                119886: [
                    [97], 256
                ],
                119887: [
                    [98], 256
                ],
                119888: [
                    [99], 256
                ],
                119889: [
                    [100], 256
                ],
                119890: [
                    [101], 256
                ],
                119891: [
                    [102], 256
                ],
                119892: [
                    [103], 256
                ],
                119894: [
                    [105], 256
                ],
                119895: [
                    [106], 256
                ],
                119896: [
                    [107], 256
                ],
                119897: [
                    [108], 256
                ],
                119898: [
                    [109], 256
                ],
                119899: [
                    [110], 256
                ],
                119900: [
                    [111], 256
                ],
                119901: [
                    [112], 256
                ],
                119902: [
                    [113], 256
                ],
                119903: [
                    [114], 256
                ],
                119904: [
                    [115], 256
                ],
                119905: [
                    [116], 256
                ],
                119906: [
                    [117], 256
                ],
                119907: [
                    [118], 256
                ],
                119908: [
                    [119], 256
                ],
                119909: [
                    [120], 256
                ],
                119910: [
                    [121], 256
                ],
                119911: [
                    [122], 256
                ],
                119912: [
                    [65], 256
                ],
                119913: [
                    [66], 256
                ],
                119914: [
                    [67], 256
                ],
                119915: [
                    [68], 256
                ],
                119916: [
                    [69], 256
                ],
                119917: [
                    [70], 256
                ],
                119918: [
                    [71], 256
                ],
                119919: [
                    [72], 256
                ],
                119920: [
                    [73], 256
                ],
                119921: [
                    [74], 256
                ],
                119922: [
                    [75], 256
                ],
                119923: [
                    [76], 256
                ],
                119924: [
                    [77], 256
                ],
                119925: [
                    [78], 256
                ],
                119926: [
                    [79], 256
                ],
                119927: [
                    [80], 256
                ],
                119928: [
                    [81], 256
                ],
                119929: [
                    [82], 256
                ],
                119930: [
                    [83], 256
                ],
                119931: [
                    [84], 256
                ],
                119932: [
                    [85], 256
                ],
                119933: [
                    [86], 256
                ],
                119934: [
                    [87], 256
                ],
                119935: [
                    [88], 256
                ],
                119936: [
                    [89], 256
                ],
                119937: [
                    [90], 256
                ],
                119938: [
                    [97], 256
                ],
                119939: [
                    [98], 256
                ],
                119940: [
                    [99], 256
                ],
                119941: [
                    [100], 256
                ],
                119942: [
                    [101], 256
                ],
                119943: [
                    [102], 256
                ],
                119944: [
                    [103], 256
                ],
                119945: [
                    [104], 256
                ],
                119946: [
                    [105], 256
                ],
                119947: [
                    [106], 256
                ],
                119948: [
                    [107], 256
                ],
                119949: [
                    [108], 256
                ],
                119950: [
                    [109], 256
                ],
                119951: [
                    [110], 256
                ],
                119952: [
                    [111], 256
                ],
                119953: [
                    [112], 256
                ],
                119954: [
                    [113], 256
                ],
                119955: [
                    [114], 256
                ],
                119956: [
                    [115], 256
                ],
                119957: [
                    [116], 256
                ],
                119958: [
                    [117], 256
                ],
                119959: [
                    [118], 256
                ],
                119960: [
                    [119], 256
                ],
                119961: [
                    [120], 256
                ],
                119962: [
                    [121], 256
                ],
                119963: [
                    [122], 256
                ],
                119964: [
                    [65], 256
                ],
                119966: [
                    [67], 256
                ],
                119967: [
                    [68], 256
                ],
                119970: [
                    [71], 256
                ],
                119973: [
                    [74], 256
                ],
                119974: [
                    [75], 256
                ],
                119977: [
                    [78], 256
                ],
                119978: [
                    [79], 256
                ],
                119979: [
                    [80], 256
                ],
                119980: [
                    [81], 256
                ],
                119982: [
                    [83], 256
                ],
                119983: [
                    [84], 256
                ],
                119984: [
                    [85], 256
                ],
                119985: [
                    [86], 256
                ],
                119986: [
                    [87], 256
                ],
                119987: [
                    [88], 256
                ],
                119988: [
                    [89], 256
                ],
                119989: [
                    [90], 256
                ],
                119990: [
                    [97], 256
                ],
                119991: [
                    [98], 256
                ],
                119992: [
                    [99], 256
                ],
                119993: [
                    [100], 256
                ],
                119995: [
                    [102], 256
                ],
                119997: [
                    [104], 256
                ],
                119998: [
                    [105], 256
                ],
                119999: [
                    [106], 256
                ],
                12e4: [
                    [107], 256
                ],
                120001: [
                    [108], 256
                ],
                120002: [
                    [109], 256
                ],
                120003: [
                    [110], 256
                ],
                120005: [
                    [112], 256
                ],
                120006: [
                    [113], 256
                ],
                120007: [
                    [114], 256
                ],
                120008: [
                    [115], 256
                ],
                120009: [
                    [116], 256
                ],
                120010: [
                    [117], 256
                ],
                120011: [
                    [118], 256
                ],
                120012: [
                    [119], 256
                ],
                120013: [
                    [120], 256
                ],
                120014: [
                    [121], 256
                ],
                120015: [
                    [122], 256
                ],
                120016: [
                    [65], 256
                ],
                120017: [
                    [66], 256
                ],
                120018: [
                    [67], 256
                ],
                120019: [
                    [68], 256
                ],
                120020: [
                    [69], 256
                ],
                120021: [
                    [70], 256
                ],
                120022: [
                    [71], 256
                ],
                120023: [
                    [72], 256
                ],
                120024: [
                    [73], 256
                ],
                120025: [
                    [74], 256
                ],
                120026: [
                    [75], 256
                ],
                120027: [
                    [76], 256
                ],
                120028: [
                    [77], 256
                ],
                120029: [
                    [78], 256
                ],
                120030: [
                    [79], 256
                ],
                120031: [
                    [80], 256
                ],
                120032: [
                    [81], 256
                ],
                120033: [
                    [82], 256
                ],
                120034: [
                    [83], 256
                ],
                120035: [
                    [84], 256
                ],
                120036: [
                    [85], 256
                ],
                120037: [
                    [86], 256
                ],
                120038: [
                    [87], 256
                ],
                120039: [
                    [88], 256
                ],
                120040: [
                    [89], 256
                ],
                120041: [
                    [90], 256
                ],
                120042: [
                    [97], 256
                ],
                120043: [
                    [98], 256
                ],
                120044: [
                    [99], 256
                ],
                120045: [
                    [100], 256
                ],
                120046: [
                    [101], 256
                ],
                120047: [
                    [102], 256
                ],
                120048: [
                    [103], 256
                ],
                120049: [
                    [104], 256
                ],
                120050: [
                    [105], 256
                ],
                120051: [
                    [106], 256
                ],
                120052: [
                    [107], 256
                ],
                120053: [
                    [108], 256
                ],
                120054: [
                    [109], 256
                ],
                120055: [
                    [110], 256
                ],
                120056: [
                    [111], 256
                ],
                120057: [
                    [112], 256
                ],
                120058: [
                    [113], 256
                ],
                120059: [
                    [114], 256
                ],
                120060: [
                    [115], 256
                ],
                120061: [
                    [116], 256
                ],
                120062: [
                    [117], 256
                ],
                120063: [
                    [118], 256
                ]
            },
            54528: {
                120064: [
                    [119], 256
                ],
                120065: [
                    [120], 256
                ],
                120066: [
                    [121], 256
                ],
                120067: [
                    [122], 256
                ],
                120068: [
                    [65], 256
                ],
                120069: [
                    [66], 256
                ],
                120071: [
                    [68], 256
                ],
                120072: [
                    [69], 256
                ],
                120073: [
                    [70], 256
                ],
                120074: [
                    [71], 256
                ],
                120077: [
                    [74], 256
                ],
                120078: [
                    [75], 256
                ],
                120079: [
                    [76], 256
                ],
                120080: [
                    [77], 256
                ],
                120081: [
                    [78], 256
                ],
                120082: [
                    [79], 256
                ],
                120083: [
                    [80], 256
                ],
                120084: [
                    [81], 256
                ],
                120086: [
                    [83], 256
                ],
                120087: [
                    [84], 256
                ],
                120088: [
                    [85], 256
                ],
                120089: [
                    [86], 256
                ],
                120090: [
                    [87], 256
                ],
                120091: [
                    [88], 256
                ],
                120092: [
                    [89], 256
                ],
                120094: [
                    [97], 256
                ],
                120095: [
                    [98], 256
                ],
                120096: [
                    [99], 256
                ],
                120097: [
                    [100], 256
                ],
                120098: [
                    [101], 256
                ],
                120099: [
                    [102], 256
                ],
                120100: [
                    [103], 256
                ],
                120101: [
                    [104], 256
                ],
                120102: [
                    [105], 256
                ],
                120103: [
                    [106], 256
                ],
                120104: [
                    [107], 256
                ],
                120105: [
                    [108], 256
                ],
                120106: [
                    [109], 256
                ],
                120107: [
                    [110], 256
                ],
                120108: [
                    [111], 256
                ],
                120109: [
                    [112], 256
                ],
                120110: [
                    [113], 256
                ],
                120111: [
                    [114], 256
                ],
                120112: [
                    [115], 256
                ],
                120113: [
                    [116], 256
                ],
                120114: [
                    [117], 256
                ],
                120115: [
                    [118], 256
                ],
                120116: [
                    [119], 256
                ],
                120117: [
                    [120], 256
                ],
                120118: [
                    [121], 256
                ],
                120119: [
                    [122], 256
                ],
                120120: [
                    [65], 256
                ],
                120121: [
                    [66], 256
                ],
                120123: [
                    [68], 256
                ],
                120124: [
                    [69], 256
                ],
                120125: [
                    [70], 256
                ],
                120126: [
                    [71], 256
                ],
                120128: [
                    [73], 256
                ],
                120129: [
                    [74], 256
                ],
                120130: [
                    [75], 256
                ],
                120131: [
                    [76], 256
                ],
                120132: [
                    [77], 256
                ],
                120134: [
                    [79], 256
                ],
                120138: [
                    [83], 256
                ],
                120139: [
                    [84], 256
                ],
                120140: [
                    [85], 256
                ],
                120141: [
                    [86], 256
                ],
                120142: [
                    [87], 256
                ],
                120143: [
                    [88], 256
                ],
                120144: [
                    [89], 256
                ],
                120146: [
                    [97], 256
                ],
                120147: [
                    [98], 256
                ],
                120148: [
                    [99], 256
                ],
                120149: [
                    [100], 256
                ],
                120150: [
                    [101], 256
                ],
                120151: [
                    [102], 256
                ],
                120152: [
                    [103], 256
                ],
                120153: [
                    [104], 256
                ],
                120154: [
                    [105], 256
                ],
                120155: [
                    [106], 256
                ],
                120156: [
                    [107], 256
                ],
                120157: [
                    [108], 256
                ],
                120158: [
                    [109], 256
                ],
                120159: [
                    [110], 256
                ],
                120160: [
                    [111], 256
                ],
                120161: [
                    [112], 256
                ],
                120162: [
                    [113], 256
                ],
                120163: [
                    [114], 256
                ],
                120164: [
                    [115], 256
                ],
                120165: [
                    [116], 256
                ],
                120166: [
                    [117], 256
                ],
                120167: [
                    [118], 256
                ],
                120168: [
                    [119], 256
                ],
                120169: [
                    [120], 256
                ],
                120170: [
                    [121], 256
                ],
                120171: [
                    [122], 256
                ],
                120172: [
                    [65], 256
                ],
                120173: [
                    [66], 256
                ],
                120174: [
                    [67], 256
                ],
                120175: [
                    [68], 256
                ],
                120176: [
                    [69], 256
                ],
                120177: [
                    [70], 256
                ],
                120178: [
                    [71], 256
                ],
                120179: [
                    [72], 256
                ],
                120180: [
                    [73], 256
                ],
                120181: [
                    [74], 256
                ],
                120182: [
                    [75], 256
                ],
                120183: [
                    [76], 256
                ],
                120184: [
                    [77], 256
                ],
                120185: [
                    [78], 256
                ],
                120186: [
                    [79], 256
                ],
                120187: [
                    [80], 256
                ],
                120188: [
                    [81], 256
                ],
                120189: [
                    [82], 256
                ],
                120190: [
                    [83], 256
                ],
                120191: [
                    [84], 256
                ],
                120192: [
                    [85], 256
                ],
                120193: [
                    [86], 256
                ],
                120194: [
                    [87], 256
                ],
                120195: [
                    [88], 256
                ],
                120196: [
                    [89], 256
                ],
                120197: [
                    [90], 256
                ],
                120198: [
                    [97], 256
                ],
                120199: [
                    [98], 256
                ],
                120200: [
                    [99], 256
                ],
                120201: [
                    [100], 256
                ],
                120202: [
                    [101], 256
                ],
                120203: [
                    [102], 256
                ],
                120204: [
                    [103], 256
                ],
                120205: [
                    [104], 256
                ],
                120206: [
                    [105], 256
                ],
                120207: [
                    [106], 256
                ],
                120208: [
                    [107], 256
                ],
                120209: [
                    [108], 256
                ],
                120210: [
                    [109], 256
                ],
                120211: [
                    [110], 256
                ],
                120212: [
                    [111], 256
                ],
                120213: [
                    [112], 256
                ],
                120214: [
                    [113], 256
                ],
                120215: [
                    [114], 256
                ],
                120216: [
                    [115], 256
                ],
                120217: [
                    [116], 256
                ],
                120218: [
                    [117], 256
                ],
                120219: [
                    [118], 256
                ],
                120220: [
                    [119], 256
                ],
                120221: [
                    [120], 256
                ],
                120222: [
                    [121], 256
                ],
                120223: [
                    [122], 256
                ],
                120224: [
                    [65], 256
                ],
                120225: [
                    [66], 256
                ],
                120226: [
                    [67], 256
                ],
                120227: [
                    [68], 256
                ],
                120228: [
                    [69], 256
                ],
                120229: [
                    [70], 256
                ],
                120230: [
                    [71], 256
                ],
                120231: [
                    [72], 256
                ],
                120232: [
                    [73], 256
                ],
                120233: [
                    [74], 256
                ],
                120234: [
                    [75], 256
                ],
                120235: [
                    [76], 256
                ],
                120236: [
                    [77], 256
                ],
                120237: [
                    [78], 256
                ],
                120238: [
                    [79], 256
                ],
                120239: [
                    [80], 256
                ],
                120240: [
                    [81], 256
                ],
                120241: [
                    [82], 256
                ],
                120242: [
                    [83], 256
                ],
                120243: [
                    [84], 256
                ],
                120244: [
                    [85], 256
                ],
                120245: [
                    [86], 256
                ],
                120246: [
                    [87], 256
                ],
                120247: [
                    [88], 256
                ],
                120248: [
                    [89], 256
                ],
                120249: [
                    [90], 256
                ],
                120250: [
                    [97], 256
                ],
                120251: [
                    [98], 256
                ],
                120252: [
                    [99], 256
                ],
                120253: [
                    [100], 256
                ],
                120254: [
                    [101], 256
                ],
                120255: [
                    [102], 256
                ],
                120256: [
                    [103], 256
                ],
                120257: [
                    [104], 256
                ],
                120258: [
                    [105], 256
                ],
                120259: [
                    [106], 256
                ],
                120260: [
                    [107], 256
                ],
                120261: [
                    [108], 256
                ],
                120262: [
                    [109], 256
                ],
                120263: [
                    [110], 256
                ],
                120264: [
                    [111], 256
                ],
                120265: [
                    [112], 256
                ],
                120266: [
                    [113], 256
                ],
                120267: [
                    [114], 256
                ],
                120268: [
                    [115], 256
                ],
                120269: [
                    [116], 256
                ],
                120270: [
                    [117], 256
                ],
                120271: [
                    [118], 256
                ],
                120272: [
                    [119], 256
                ],
                120273: [
                    [120], 256
                ],
                120274: [
                    [121], 256
                ],
                120275: [
                    [122], 256
                ],
                120276: [
                    [65], 256
                ],
                120277: [
                    [66], 256
                ],
                120278: [
                    [67], 256
                ],
                120279: [
                    [68], 256
                ],
                120280: [
                    [69], 256
                ],
                120281: [
                    [70], 256
                ],
                120282: [
                    [71], 256
                ],
                120283: [
                    [72], 256
                ],
                120284: [
                    [73], 256
                ],
                120285: [
                    [74], 256
                ],
                120286: [
                    [75], 256
                ],
                120287: [
                    [76], 256
                ],
                120288: [
                    [77], 256
                ],
                120289: [
                    [78], 256
                ],
                120290: [
                    [79], 256
                ],
                120291: [
                    [80], 256
                ],
                120292: [
                    [81], 256
                ],
                120293: [
                    [82], 256
                ],
                120294: [
                    [83], 256
                ],
                120295: [
                    [84], 256
                ],
                120296: [
                    [85], 256
                ],
                120297: [
                    [86], 256
                ],
                120298: [
                    [87], 256
                ],
                120299: [
                    [88], 256
                ],
                120300: [
                    [89], 256
                ],
                120301: [
                    [90], 256
                ],
                120302: [
                    [97], 256
                ],
                120303: [
                    [98], 256
                ],
                120304: [
                    [99], 256
                ],
                120305: [
                    [100], 256
                ],
                120306: [
                    [101], 256
                ],
                120307: [
                    [102], 256
                ],
                120308: [
                    [103], 256
                ],
                120309: [
                    [104], 256
                ],
                120310: [
                    [105], 256
                ],
                120311: [
                    [106], 256
                ],
                120312: [
                    [107], 256
                ],
                120313: [
                    [108], 256
                ],
                120314: [
                    [109], 256
                ],
                120315: [
                    [110], 256
                ],
                120316: [
                    [111], 256
                ],
                120317: [
                    [112], 256
                ],
                120318: [
                    [113], 256
                ],
                120319: [
                    [114], 256
                ]
            },
            54784: {
                120320: [
                    [115], 256
                ],
                120321: [
                    [116], 256
                ],
                120322: [
                    [117], 256
                ],
                120323: [
                    [118], 256
                ],
                120324: [
                    [119], 256
                ],
                120325: [
                    [120], 256
                ],
                120326: [
                    [121], 256
                ],
                120327: [
                    [122], 256
                ],
                120328: [
                    [65], 256
                ],
                120329: [
                    [66], 256
                ],
                120330: [
                    [67], 256
                ],
                120331: [
                    [68], 256
                ],
                120332: [
                    [69], 256
                ],
                120333: [
                    [70], 256
                ],
                120334: [
                    [71], 256
                ],
                120335: [
                    [72], 256
                ],
                120336: [
                    [73], 256
                ],
                120337: [
                    [74], 256
                ],
                120338: [
                    [75], 256
                ],
                120339: [
                    [76], 256
                ],
                120340: [
                    [77], 256
                ],
                120341: [
                    [78], 256
                ],
                120342: [
                    [79], 256
                ],
                120343: [
                    [80], 256
                ],
                120344: [
                    [81], 256
                ],
                120345: [
                    [82], 256
                ],
                120346: [
                    [83], 256
                ],
                120347: [
                    [84], 256
                ],
                120348: [
                    [85], 256
                ],
                120349: [
                    [86], 256
                ],
                120350: [
                    [87], 256
                ],
                120351: [
                    [88], 256
                ],
                120352: [
                    [89], 256
                ],
                120353: [
                    [90], 256
                ],
                120354: [
                    [97], 256
                ],
                120355: [
                    [98], 256
                ],
                120356: [
                    [99], 256
                ],
                120357: [
                    [100], 256
                ],
                120358: [
                    [101], 256
                ],
                120359: [
                    [102], 256
                ],
                120360: [
                    [103], 256
                ],
                120361: [
                    [104], 256
                ],
                120362: [
                    [105], 256
                ],
                120363: [
                    [106], 256
                ],
                120364: [
                    [107], 256
                ],
                120365: [
                    [108], 256
                ],
                120366: [
                    [109], 256
                ],
                120367: [
                    [110], 256
                ],
                120368: [
                    [111], 256
                ],
                120369: [
                    [112], 256
                ],
                120370: [
                    [113], 256
                ],
                120371: [
                    [114], 256
                ],
                120372: [
                    [115], 256
                ],
                120373: [
                    [116], 256
                ],
                120374: [
                    [117], 256
                ],
                120375: [
                    [118], 256
                ],
                120376: [
                    [119], 256
                ],
                120377: [
                    [120], 256
                ],
                120378: [
                    [121], 256
                ],
                120379: [
                    [122], 256
                ],
                120380: [
                    [65], 256
                ],
                120381: [
                    [66], 256
                ],
                120382: [
                    [67], 256
                ],
                120383: [
                    [68], 256
                ],
                120384: [
                    [69], 256
                ],
                120385: [
                    [70], 256
                ],
                120386: [
                    [71], 256
                ],
                120387: [
                    [72], 256
                ],
                120388: [
                    [73], 256
                ],
                120389: [
                    [74], 256
                ],
                120390: [
                    [75], 256
                ],
                120391: [
                    [76], 256
                ],
                120392: [
                    [77], 256
                ],
                120393: [
                    [78], 256
                ],
                120394: [
                    [79], 256
                ],
                120395: [
                    [80], 256
                ],
                120396: [
                    [81], 256
                ],
                120397: [
                    [82], 256
                ],
                120398: [
                    [83], 256
                ],
                120399: [
                    [84], 256
                ],
                120400: [
                    [85], 256
                ],
                120401: [
                    [86], 256
                ],
                120402: [
                    [87], 256
                ],
                120403: [
                    [88], 256
                ],
                120404: [
                    [89], 256
                ],
                120405: [
                    [90], 256
                ],
                120406: [
                    [97], 256
                ],
                120407: [
                    [98], 256
                ],
                120408: [
                    [99], 256
                ],
                120409: [
                    [100], 256
                ],
                120410: [
                    [101], 256
                ],
                120411: [
                    [102], 256
                ],
                120412: [
                    [103], 256
                ],
                120413: [
                    [104], 256
                ],
                120414: [
                    [105], 256
                ],
                120415: [
                    [106], 256
                ],
                120416: [
                    [107], 256
                ],
                120417: [
                    [108], 256
                ],
                120418: [
                    [109], 256
                ],
                120419: [
                    [110], 256
                ],
                120420: [
                    [111], 256
                ],
                120421: [
                    [112], 256
                ],
                120422: [
                    [113], 256
                ],
                120423: [
                    [114], 256
                ],
                120424: [
                    [115], 256
                ],
                120425: [
                    [116], 256
                ],
                120426: [
                    [117], 256
                ],
                120427: [
                    [118], 256
                ],
                120428: [
                    [119], 256
                ],
                120429: [
                    [120], 256
                ],
                120430: [
                    [121], 256
                ],
                120431: [
                    [122], 256
                ],
                120432: [
                    [65], 256
                ],
                120433: [
                    [66], 256
                ],
                120434: [
                    [67], 256
                ],
                120435: [
                    [68], 256
                ],
                120436: [
                    [69], 256
                ],
                120437: [
                    [70], 256
                ],
                120438: [
                    [71], 256
                ],
                120439: [
                    [72], 256
                ],
                120440: [
                    [73], 256
                ],
                120441: [
                    [74], 256
                ],
                120442: [
                    [75], 256
                ],
                120443: [
                    [76], 256
                ],
                120444: [
                    [77], 256
                ],
                120445: [
                    [78], 256
                ],
                120446: [
                    [79], 256
                ],
                120447: [
                    [80], 256
                ],
                120448: [
                    [81], 256
                ],
                120449: [
                    [82], 256
                ],
                120450: [
                    [83], 256
                ],
                120451: [
                    [84], 256
                ],
                120452: [
                    [85], 256
                ],
                120453: [
                    [86], 256
                ],
                120454: [
                    [87], 256
                ],
                120455: [
                    [88], 256
                ],
                120456: [
                    [89], 256
                ],
                120457: [
                    [90], 256
                ],
                120458: [
                    [97], 256
                ],
                120459: [
                    [98], 256
                ],
                120460: [
                    [99], 256
                ],
                120461: [
                    [100], 256
                ],
                120462: [
                    [101], 256
                ],
                120463: [
                    [102], 256
                ],
                120464: [
                    [103], 256
                ],
                120465: [
                    [104], 256
                ],
                120466: [
                    [105], 256
                ],
                120467: [
                    [106], 256
                ],
                120468: [
                    [107], 256
                ],
                120469: [
                    [108], 256
                ],
                120470: [
                    [109], 256
                ],
                120471: [
                    [110], 256
                ],
                120472: [
                    [111], 256
                ],
                120473: [
                    [112], 256
                ],
                120474: [
                    [113], 256
                ],
                120475: [
                    [114], 256
                ],
                120476: [
                    [115], 256
                ],
                120477: [
                    [116], 256
                ],
                120478: [
                    [117], 256
                ],
                120479: [
                    [118], 256
                ],
                120480: [
                    [119], 256
                ],
                120481: [
                    [120], 256
                ],
                120482: [
                    [121], 256
                ],
                120483: [
                    [122], 256
                ],
                120484: [
                    [305], 256
                ],
                120485: [
                    [567], 256
                ],
                120488: [
                    [913], 256
                ],
                120489: [
                    [914], 256
                ],
                120490: [
                    [915], 256
                ],
                120491: [
                    [916], 256
                ],
                120492: [
                    [917], 256
                ],
                120493: [
                    [918], 256
                ],
                120494: [
                    [919], 256
                ],
                120495: [
                    [920], 256
                ],
                120496: [
                    [921], 256
                ],
                120497: [
                    [922], 256
                ],
                120498: [
                    [923], 256
                ],
                120499: [
                    [924], 256
                ],
                120500: [
                    [925], 256
                ],
                120501: [
                    [926], 256
                ],
                120502: [
                    [927], 256
                ],
                120503: [
                    [928], 256
                ],
                120504: [
                    [929], 256
                ],
                120505: [
                    [1012], 256
                ],
                120506: [
                    [931], 256
                ],
                120507: [
                    [932], 256
                ],
                120508: [
                    [933], 256
                ],
                120509: [
                    [934], 256
                ],
                120510: [
                    [935], 256
                ],
                120511: [
                    [936], 256
                ],
                120512: [
                    [937], 256
                ],
                120513: [
                    [8711], 256
                ],
                120514: [
                    [945], 256
                ],
                120515: [
                    [946], 256
                ],
                120516: [
                    [947], 256
                ],
                120517: [
                    [948], 256
                ],
                120518: [
                    [949], 256
                ],
                120519: [
                    [950], 256
                ],
                120520: [
                    [951], 256
                ],
                120521: [
                    [952], 256
                ],
                120522: [
                    [953], 256
                ],
                120523: [
                    [954], 256
                ],
                120524: [
                    [955], 256
                ],
                120525: [
                    [956], 256
                ],
                120526: [
                    [957], 256
                ],
                120527: [
                    [958], 256
                ],
                120528: [
                    [959], 256
                ],
                120529: [
                    [960], 256
                ],
                120530: [
                    [961], 256
                ],
                120531: [
                    [962], 256
                ],
                120532: [
                    [963], 256
                ],
                120533: [
                    [964], 256
                ],
                120534: [
                    [965], 256
                ],
                120535: [
                    [966], 256
                ],
                120536: [
                    [967], 256
                ],
                120537: [
                    [968], 256
                ],
                120538: [
                    [969], 256
                ],
                120539: [
                    [8706], 256
                ],
                120540: [
                    [1013], 256
                ],
                120541: [
                    [977], 256
                ],
                120542: [
                    [1008], 256
                ],
                120543: [
                    [981], 256
                ],
                120544: [
                    [1009], 256
                ],
                120545: [
                    [982], 256
                ],
                120546: [
                    [913], 256
                ],
                120547: [
                    [914], 256
                ],
                120548: [
                    [915], 256
                ],
                120549: [
                    [916], 256
                ],
                120550: [
                    [917], 256
                ],
                120551: [
                    [918], 256
                ],
                120552: [
                    [919], 256
                ],
                120553: [
                    [920], 256
                ],
                120554: [
                    [921], 256
                ],
                120555: [
                    [922], 256
                ],
                120556: [
                    [923], 256
                ],
                120557: [
                    [924], 256
                ],
                120558: [
                    [925], 256
                ],
                120559: [
                    [926], 256
                ],
                120560: [
                    [927], 256
                ],
                120561: [
                    [928], 256
                ],
                120562: [
                    [929], 256
                ],
                120563: [
                    [1012], 256
                ],
                120564: [
                    [931], 256
                ],
                120565: [
                    [932], 256
                ],
                120566: [
                    [933], 256
                ],
                120567: [
                    [934], 256
                ],
                120568: [
                    [935], 256
                ],
                120569: [
                    [936], 256
                ],
                120570: [
                    [937], 256
                ],
                120571: [
                    [8711], 256
                ],
                120572: [
                    [945], 256
                ],
                120573: [
                    [946], 256
                ],
                120574: [
                    [947], 256
                ],
                120575: [
                    [948], 256
                ]
            },
            55040: {
                120576: [
                    [949], 256
                ],
                120577: [
                    [950], 256
                ],
                120578: [
                    [951], 256
                ],
                120579: [
                    [952], 256
                ],
                120580: [
                    [953], 256
                ],
                120581: [
                    [954], 256
                ],
                120582: [
                    [955], 256
                ],
                120583: [
                    [956], 256
                ],
                120584: [
                    [957], 256
                ],
                120585: [
                    [958], 256
                ],
                120586: [
                    [959], 256
                ],
                120587: [
                    [960], 256
                ],
                120588: [
                    [961], 256
                ],
                120589: [
                    [962], 256
                ],
                120590: [
                    [963], 256
                ],
                120591: [
                    [964], 256
                ],
                120592: [
                    [965], 256
                ],
                120593: [
                    [966], 256
                ],
                120594: [
                    [967], 256
                ],
                120595: [
                    [968], 256
                ],
                120596: [
                    [969], 256
                ],
                120597: [
                    [8706], 256
                ],
                120598: [
                    [1013], 256
                ],
                120599: [
                    [977], 256
                ],
                120600: [
                    [1008], 256
                ],
                120601: [
                    [981], 256
                ],
                120602: [
                    [1009], 256
                ],
                120603: [
                    [982], 256
                ],
                120604: [
                    [913], 256
                ],
                120605: [
                    [914], 256
                ],
                120606: [
                    [915], 256
                ],
                120607: [
                    [916], 256
                ],
                120608: [
                    [917], 256
                ],
                120609: [
                    [918], 256
                ],
                120610: [
                    [919], 256
                ],
                120611: [
                    [920], 256
                ],
                120612: [
                    [921], 256
                ],
                120613: [
                    [922], 256
                ],
                120614: [
                    [923], 256
                ],
                120615: [
                    [924], 256
                ],
                120616: [
                    [925], 256
                ],
                120617: [
                    [926], 256
                ],
                120618: [
                    [927], 256
                ],
                120619: [
                    [928], 256
                ],
                120620: [
                    [929], 256
                ],
                120621: [
                    [1012], 256
                ],
                120622: [
                    [931], 256
                ],
                120623: [
                    [932], 256
                ],
                120624: [
                    [933], 256
                ],
                120625: [
                    [934], 256
                ],
                120626: [
                    [935], 256
                ],
                120627: [
                    [936], 256
                ],
                120628: [
                    [937], 256
                ],
                120629: [
                    [8711], 256
                ],
                120630: [
                    [945], 256
                ],
                120631: [
                    [946], 256
                ],
                120632: [
                    [947], 256
                ],
                120633: [
                    [948], 256
                ],
                120634: [
                    [949], 256
                ],
                120635: [
                    [950], 256
                ],
                120636: [
                    [951], 256
                ],
                120637: [
                    [952], 256
                ],
                120638: [
                    [953], 256
                ],
                120639: [
                    [954], 256
                ],
                120640: [
                    [955], 256
                ],
                120641: [
                    [956], 256
                ],
                120642: [
                    [957], 256
                ],
                120643: [
                    [958], 256
                ],
                120644: [
                    [959], 256
                ],
                120645: [
                    [960], 256
                ],
                120646: [
                    [961], 256
                ],
                120647: [
                    [962], 256
                ],
                120648: [
                    [963], 256
                ],
                120649: [
                    [964], 256
                ],
                120650: [
                    [965], 256
                ],
                120651: [
                    [966], 256
                ],
                120652: [
                    [967], 256
                ],
                120653: [
                    [968], 256
                ],
                120654: [
                    [969], 256
                ],
                120655: [
                    [8706], 256
                ],
                120656: [
                    [1013], 256
                ],
                120657: [
                    [977], 256
                ],
                120658: [
                    [1008], 256
                ],
                120659: [
                    [981], 256
                ],
                120660: [
                    [1009], 256
                ],
                120661: [
                    [982], 256
                ],
                120662: [
                    [913], 256
                ],
                120663: [
                    [914], 256
                ],
                120664: [
                    [915], 256
                ],
                120665: [
                    [916], 256
                ],
                120666: [
                    [917], 256
                ],
                120667: [
                    [918], 256
                ],
                120668: [
                    [919], 256
                ],
                120669: [
                    [920], 256
                ],
                120670: [
                    [921], 256
                ],
                120671: [
                    [922], 256
                ],
                120672: [
                    [923], 256
                ],
                120673: [
                    [924], 256
                ],
                120674: [
                    [925], 256
                ],
                120675: [
                    [926], 256
                ],
                120676: [
                    [927], 256
                ],
                120677: [
                    [928], 256
                ],
                120678: [
                    [929], 256
                ],
                120679: [
                    [1012], 256
                ],
                120680: [
                    [931], 256
                ],
                120681: [
                    [932], 256
                ],
                120682: [
                    [933], 256
                ],
                120683: [
                    [934], 256
                ],
                120684: [
                    [935], 256
                ],
                120685: [
                    [936], 256
                ],
                120686: [
                    [937], 256
                ],
                120687: [
                    [8711], 256
                ],
                120688: [
                    [945], 256
                ],
                120689: [
                    [946], 256
                ],
                120690: [
                    [947], 256
                ],
                120691: [
                    [948], 256
                ],
                120692: [
                    [949], 256
                ],
                120693: [
                    [950], 256
                ],
                120694: [
                    [951], 256
                ],
                120695: [
                    [952], 256
                ],
                120696: [
                    [953], 256
                ],
                120697: [
                    [954], 256
                ],
                120698: [
                    [955], 256
                ],
                120699: [
                    [956], 256
                ],
                120700: [
                    [957], 256
                ],
                120701: [
                    [958], 256
                ],
                120702: [
                    [959], 256
                ],
                120703: [
                    [960], 256
                ],
                120704: [
                    [961], 256
                ],
                120705: [
                    [962], 256
                ],
                120706: [
                    [963], 256
                ],
                120707: [
                    [964], 256
                ],
                120708: [
                    [965], 256
                ],
                120709: [
                    [966], 256
                ],
                120710: [
                    [967], 256
                ],
                120711: [
                    [968], 256
                ],
                120712: [
                    [969], 256
                ],
                120713: [
                    [8706], 256
                ],
                120714: [
                    [1013], 256
                ],
                120715: [
                    [977], 256
                ],
                120716: [
                    [1008], 256
                ],
                120717: [
                    [981], 256
                ],
                120718: [
                    [1009], 256
                ],
                120719: [
                    [982], 256
                ],
                120720: [
                    [913], 256
                ],
                120721: [
                    [914], 256
                ],
                120722: [
                    [915], 256
                ],
                120723: [
                    [916], 256
                ],
                120724: [
                    [917], 256
                ],
                120725: [
                    [918], 256
                ],
                120726: [
                    [919], 256
                ],
                120727: [
                    [920], 256
                ],
                120728: [
                    [921], 256
                ],
                120729: [
                    [922], 256
                ],
                120730: [
                    [923], 256
                ],
                120731: [
                    [924], 256
                ],
                120732: [
                    [925], 256
                ],
                120733: [
                    [926], 256
                ],
                120734: [
                    [927], 256
                ],
                120735: [
                    [928], 256
                ],
                120736: [
                    [929], 256
                ],
                120737: [
                    [1012], 256
                ],
                120738: [
                    [931], 256
                ],
                120739: [
                    [932], 256
                ],
                120740: [
                    [933], 256
                ],
                120741: [
                    [934], 256
                ],
                120742: [
                    [935], 256
                ],
                120743: [
                    [936], 256
                ],
                120744: [
                    [937], 256
                ],
                120745: [
                    [8711], 256
                ],
                120746: [
                    [945], 256
                ],
                120747: [
                    [946], 256
                ],
                120748: [
                    [947], 256
                ],
                120749: [
                    [948], 256
                ],
                120750: [
                    [949], 256
                ],
                120751: [
                    [950], 256
                ],
                120752: [
                    [951], 256
                ],
                120753: [
                    [952], 256
                ],
                120754: [
                    [953], 256
                ],
                120755: [
                    [954], 256
                ],
                120756: [
                    [955], 256
                ],
                120757: [
                    [956], 256
                ],
                120758: [
                    [957], 256
                ],
                120759: [
                    [958], 256
                ],
                120760: [
                    [959], 256
                ],
                120761: [
                    [960], 256
                ],
                120762: [
                    [961], 256
                ],
                120763: [
                    [962], 256
                ],
                120764: [
                    [963], 256
                ],
                120765: [
                    [964], 256
                ],
                120766: [
                    [965], 256
                ],
                120767: [
                    [966], 256
                ],
                120768: [
                    [967], 256
                ],
                120769: [
                    [968], 256
                ],
                120770: [
                    [969], 256
                ],
                120771: [
                    [8706], 256
                ],
                120772: [
                    [1013], 256
                ],
                120773: [
                    [977], 256
                ],
                120774: [
                    [1008], 256
                ],
                120775: [
                    [981], 256
                ],
                120776: [
                    [1009], 256
                ],
                120777: [
                    [982], 256
                ],
                120778: [
                    [988], 256
                ],
                120779: [
                    [989], 256
                ],
                120782: [
                    [48], 256
                ],
                120783: [
                    [49], 256
                ],
                120784: [
                    [50], 256
                ],
                120785: [
                    [51], 256
                ],
                120786: [
                    [52], 256
                ],
                120787: [
                    [53], 256
                ],
                120788: [
                    [54], 256
                ],
                120789: [
                    [55], 256
                ],
                120790: [
                    [56], 256
                ],
                120791: [
                    [57], 256
                ],
                120792: [
                    [48], 256
                ],
                120793: [
                    [49], 256
                ],
                120794: [
                    [50], 256
                ],
                120795: [
                    [51], 256
                ],
                120796: [
                    [52], 256
                ],
                120797: [
                    [53], 256
                ],
                120798: [
                    [54], 256
                ],
                120799: [
                    [55], 256
                ],
                120800: [
                    [56], 256
                ],
                120801: [
                    [57], 256
                ],
                120802: [
                    [48], 256
                ],
                120803: [
                    [49], 256
                ],
                120804: [
                    [50], 256
                ],
                120805: [
                    [51], 256
                ],
                120806: [
                    [52], 256
                ],
                120807: [
                    [53], 256
                ],
                120808: [
                    [54], 256
                ],
                120809: [
                    [55], 256
                ],
                120810: [
                    [56], 256
                ],
                120811: [
                    [57], 256
                ],
                120812: [
                    [48], 256
                ],
                120813: [
                    [49], 256
                ],
                120814: [
                    [50], 256
                ],
                120815: [
                    [51], 256
                ],
                120816: [
                    [52], 256
                ],
                120817: [
                    [53], 256
                ],
                120818: [
                    [54], 256
                ],
                120819: [
                    [55], 256
                ],
                120820: [
                    [56], 256
                ],
                120821: [
                    [57], 256
                ],
                120822: [
                    [48], 256
                ],
                120823: [
                    [49], 256
                ],
                120824: [
                    [50], 256
                ],
                120825: [
                    [51], 256
                ],
                120826: [
                    [52], 256
                ],
                120827: [
                    [53], 256
                ],
                120828: [
                    [54], 256
                ],
                120829: [
                    [55], 256
                ],
                120830: [
                    [56], 256
                ],
                120831: [
                    [57], 256
                ]
            },
            59392: {
                125136: [, 220],
                125137: [, 220],
                125138: [, 220],
                125139: [, 220],
                125140: [, 220],
                125141: [, 220],
                125142: [, 220]
            },
            60928: {
                126464: [
                    [1575], 256
                ],
                126465: [
                    [1576], 256
                ],
                126466: [
                    [1580], 256
                ],
                126467: [
                    [1583], 256
                ],
                126469: [
                    [1608], 256
                ],
                126470: [
                    [1586], 256
                ],
                126471: [
                    [1581], 256
                ],
                126472: [
                    [1591], 256
                ],
                126473: [
                    [1610], 256
                ],
                126474: [
                    [1603], 256
                ],
                126475: [
                    [1604], 256
                ],
                126476: [
                    [1605], 256
                ],
                126477: [
                    [1606], 256
                ],
                126478: [
                    [1587], 256
                ],
                126479: [
                    [1593], 256
                ],
                126480: [
                    [1601], 256
                ],
                126481: [
                    [1589], 256
                ],
                126482: [
                    [1602], 256
                ],
                126483: [
                    [1585], 256
                ],
                126484: [
                    [1588], 256
                ],
                126485: [
                    [1578], 256
                ],
                126486: [
                    [1579], 256
                ],
                126487: [
                    [1582], 256
                ],
                126488: [
                    [1584], 256
                ],
                126489: [
                    [1590], 256
                ],
                126490: [
                    [1592], 256
                ],
                126491: [
                    [1594], 256
                ],
                126492: [
                    [1646], 256
                ],
                126493: [
                    [1722], 256
                ],
                126494: [
                    [1697], 256
                ],
                126495: [
                    [1647], 256
                ],
                126497: [
                    [1576], 256
                ],
                126498: [
                    [1580], 256
                ],
                126500: [
                    [1607], 256
                ],
                126503: [
                    [1581], 256
                ],
                126505: [
                    [1610], 256
                ],
                126506: [
                    [1603], 256
                ],
                126507: [
                    [1604], 256
                ],
                126508: [
                    [1605], 256
                ],
                126509: [
                    [1606], 256
                ],
                126510: [
                    [1587], 256
                ],
                126511: [
                    [1593], 256
                ],
                126512: [
                    [1601], 256
                ],
                126513: [
                    [1589], 256
                ],
                126514: [
                    [1602], 256
                ],
                126516: [
                    [1588], 256
                ],
                126517: [
                    [1578], 256
                ],
                126518: [
                    [1579], 256
                ],
                126519: [
                    [1582], 256
                ],
                126521: [
                    [1590], 256
                ],
                126523: [
                    [1594], 256
                ],
                126530: [
                    [1580], 256
                ],
                126535: [
                    [1581], 256
                ],
                126537: [
                    [1610], 256
                ],
                126539: [
                    [1604], 256
                ],
                126541: [
                    [1606], 256
                ],
                126542: [
                    [1587], 256
                ],
                126543: [
                    [1593], 256
                ],
                126545: [
                    [1589], 256
                ],
                126546: [
                    [1602], 256
                ],
                126548: [
                    [1588], 256
                ],
                126551: [
                    [1582], 256
                ],
                126553: [
                    [1590], 256
                ],
                126555: [
                    [1594], 256
                ],
                126557: [
                    [1722], 256
                ],
                126559: [
                    [1647], 256
                ],
                126561: [
                    [1576], 256
                ],
                126562: [
                    [1580], 256
                ],
                126564: [
                    [1607], 256
                ],
                126567: [
                    [1581], 256
                ],
                126568: [
                    [1591], 256
                ],
                126569: [
                    [1610], 256
                ],
                126570: [
                    [1603], 256
                ],
                126572: [
                    [1605], 256
                ],
                126573: [
                    [1606], 256
                ],
                126574: [
                    [1587], 256
                ],
                126575: [
                    [1593], 256
                ],
                126576: [
                    [1601], 256
                ],
                126577: [
                    [1589], 256
                ],
                126578: [
                    [1602], 256
                ],
                126580: [
                    [1588], 256
                ],
                126581: [
                    [1578], 256
                ],
                126582: [
                    [1579], 256
                ],
                126583: [
                    [1582], 256
                ],
                126585: [
                    [1590], 256
                ],
                126586: [
                    [1592], 256
                ],
                126587: [
                    [1594], 256
                ],
                126588: [
                    [1646], 256
                ],
                126590: [
                    [1697], 256
                ],
                126592: [
                    [1575], 256
                ],
                126593: [
                    [1576], 256
                ],
                126594: [
                    [1580], 256
                ],
                126595: [
                    [1583], 256
                ],
                126596: [
                    [1607], 256
                ],
                126597: [
                    [1608], 256
                ],
                126598: [
                    [1586], 256
                ],
                126599: [
                    [1581], 256
                ],
                126600: [
                    [1591], 256
                ],
                126601: [
                    [1610], 256
                ],
                126603: [
                    [1604], 256
                ],
                126604: [
                    [1605], 256
                ],
                126605: [
                    [1606], 256
                ],
                126606: [
                    [1587], 256
                ],
                126607: [
                    [1593], 256
                ],
                126608: [
                    [1601], 256
                ],
                126609: [
                    [1589], 256
                ],
                126610: [
                    [1602], 256
                ],
                126611: [
                    [1585], 256
                ],
                126612: [
                    [1588], 256
                ],
                126613: [
                    [1578], 256
                ],
                126614: [
                    [1579], 256
                ],
                126615: [
                    [1582], 256
                ],
                126616: [
                    [1584], 256
                ],
                126617: [
                    [1590], 256
                ],
                126618: [
                    [1592], 256
                ],
                126619: [
                    [1594], 256
                ],
                126625: [
                    [1576], 256
                ],
                126626: [
                    [1580], 256
                ],
                126627: [
                    [1583], 256
                ],
                126629: [
                    [1608], 256
                ],
                126630: [
                    [1586], 256
                ],
                126631: [
                    [1581], 256
                ],
                126632: [
                    [1591], 256
                ],
                126633: [
                    [1610], 256
                ],
                126635: [
                    [1604], 256
                ],
                126636: [
                    [1605], 256
                ],
                126637: [
                    [1606], 256
                ],
                126638: [
                    [1587], 256
                ],
                126639: [
                    [1593], 256
                ],
                126640: [
                    [1601], 256
                ],
                126641: [
                    [1589], 256
                ],
                126642: [
                    [1602], 256
                ],
                126643: [
                    [1585], 256
                ],
                126644: [
                    [1588], 256
                ],
                126645: [
                    [1578], 256
                ],
                126646: [
                    [1579], 256
                ],
                126647: [
                    [1582], 256
                ],
                126648: [
                    [1584], 256
                ],
                126649: [
                    [1590], 256
                ],
                126650: [
                    [1592], 256
                ],
                126651: [
                    [1594], 256
                ]
            },
            61696: {
                127232: [
                    [48, 46], 256
                ],
                127233: [
                    [48, 44], 256
                ],
                127234: [
                    [49, 44], 256
                ],
                127235: [
                    [50, 44], 256
                ],
                127236: [
                    [51, 44], 256
                ],
                127237: [
                    [52, 44], 256
                ],
                127238: [
                    [53, 44], 256
                ],
                127239: [
                    [54, 44], 256
                ],
                127240: [
                    [55, 44], 256
                ],
                127241: [
                    [56, 44], 256
                ],
                127242: [
                    [57, 44], 256
                ],
                127248: [
                    [40, 65, 41], 256
                ],
                127249: [
                    [40, 66, 41], 256
                ],
                127250: [
                    [40, 67, 41], 256
                ],
                127251: [
                    [40, 68, 41], 256
                ],
                127252: [
                    [40, 69, 41], 256
                ],
                127253: [
                    [40, 70, 41], 256
                ],
                127254: [
                    [40, 71, 41], 256
                ],
                127255: [
                    [40, 72, 41], 256
                ],
                127256: [
                    [40, 73, 41], 256
                ],
                127257: [
                    [40, 74, 41], 256
                ],
                127258: [
                    [40, 75, 41], 256
                ],
                127259: [
                    [40, 76, 41], 256
                ],
                127260: [
                    [40, 77, 41], 256
                ],
                127261: [
                    [40, 78, 41], 256
                ],
                127262: [
                    [40, 79, 41], 256
                ],
                127263: [
                    [40, 80, 41], 256
                ],
                127264: [
                    [40, 81, 41], 256
                ],
                127265: [
                    [40, 82, 41], 256
                ],
                127266: [
                    [40, 83, 41], 256
                ],
                127267: [
                    [40, 84, 41], 256
                ],
                127268: [
                    [40, 85, 41], 256
                ],
                127269: [
                    [40, 86, 41], 256
                ],
                127270: [
                    [40, 87, 41], 256
                ],
                127271: [
                    [40, 88, 41], 256
                ],
                127272: [
                    [40, 89, 41], 256
                ],
                127273: [
                    [40, 90, 41], 256
                ],
                127274: [
                    [12308, 83, 12309], 256
                ],
                127275: [
                    [67], 256
                ],
                127276: [
                    [82], 256
                ],
                127277: [
                    [67, 68], 256
                ],
                127278: [
                    [87, 90], 256
                ],
                127280: [
                    [65], 256
                ],
                127281: [
                    [66], 256
                ],
                127282: [
                    [67], 256
                ],
                127283: [
                    [68], 256
                ],
                127284: [
                    [69], 256
                ],
                127285: [
                    [70], 256
                ],
                127286: [
                    [71], 256
                ],
                127287: [
                    [72], 256
                ],
                127288: [
                    [73], 256
                ],
                127289: [
                    [74], 256
                ],
                127290: [
                    [75], 256
                ],
                127291: [
                    [76], 256
                ],
                127292: [
                    [77], 256
                ],
                127293: [
                    [78], 256
                ],
                127294: [
                    [79], 256
                ],
                127295: [
                    [80], 256
                ],
                127296: [
                    [81], 256
                ],
                127297: [
                    [82], 256
                ],
                127298: [
                    [83], 256
                ],
                127299: [
                    [84], 256
                ],
                127300: [
                    [85], 256
                ],
                127301: [
                    [86], 256
                ],
                127302: [
                    [87], 256
                ],
                127303: [
                    [88], 256
                ],
                127304: [
                    [89], 256
                ],
                127305: [
                    [90], 256
                ],
                127306: [
                    [72, 86], 256
                ],
                127307: [
                    [77, 86], 256
                ],
                127308: [
                    [83, 68], 256
                ],
                127309: [
                    [83, 83], 256
                ],
                127310: [
                    [80, 80, 86], 256
                ],
                127311: [
                    [87, 67], 256
                ],
                127338: [
                    [77, 67], 256
                ],
                127339: [
                    [77, 68], 256
                ],
                127376: [
                    [68, 74], 256
                ]
            },
            61952: {
                127488: [
                    [12411, 12363], 256
                ],
                127489: [
                    [12467, 12467], 256
                ],
                127490: [
                    [12469], 256
                ],
                127504: [
                    [25163], 256
                ],
                127505: [
                    [23383], 256
                ],
                127506: [
                    [21452], 256
                ],
                127507: [
                    [12487], 256
                ],
                127508: [
                    [20108], 256
                ],
                127509: [
                    [22810], 256
                ],
                127510: [
                    [35299], 256
                ],
                127511: [
                    [22825], 256
                ],
                127512: [
                    [20132], 256
                ],
                127513: [
                    [26144], 256
                ],
                127514: [
                    [28961], 256
                ],
                127515: [
                    [26009], 256
                ],
                127516: [
                    [21069], 256
                ],
                127517: [
                    [24460], 256
                ],
                127518: [
                    [20877], 256
                ],
                127519: [
                    [26032], 256
                ],
                127520: [
                    [21021], 256
                ],
                127521: [
                    [32066], 256
                ],
                127522: [
                    [29983], 256
                ],
                127523: [
                    [36009], 256
                ],
                127524: [
                    [22768], 256
                ],
                127525: [
                    [21561], 256
                ],
                127526: [
                    [28436], 256
                ],
                127527: [
                    [25237], 256
                ],
                127528: [
                    [25429], 256
                ],
                127529: [
                    [19968], 256
                ],
                127530: [
                    [19977], 256
                ],
                127531: [
                    [36938], 256
                ],
                127532: [
                    [24038], 256
                ],
                127533: [
                    [20013], 256
                ],
                127534: [
                    [21491], 256
                ],
                127535: [
                    [25351], 256
                ],
                127536: [
                    [36208], 256
                ],
                127537: [
                    [25171], 256
                ],
                127538: [
                    [31105], 256
                ],
                127539: [
                    [31354], 256
                ],
                127540: [
                    [21512], 256
                ],
                127541: [
                    [28288], 256
                ],
                127542: [
                    [26377], 256
                ],
                127543: [
                    [26376], 256
                ],
                127544: [
                    [30003], 256
                ],
                127545: [
                    [21106], 256
                ],
                127546: [
                    [21942], 256
                ],
                127552: [
                    [12308, 26412, 12309], 256
                ],
                127553: [
                    [12308, 19977, 12309], 256
                ],
                127554: [
                    [12308, 20108, 12309], 256
                ],
                127555: [
                    [12308, 23433, 12309], 256
                ],
                127556: [
                    [12308, 28857, 12309], 256
                ],
                127557: [
                    [12308, 25171, 12309], 256
                ],
                127558: [
                    [12308, 30423, 12309], 256
                ],
                127559: [
                    [12308, 21213, 12309], 256
                ],
                127560: [
                    [12308, 25943, 12309], 256
                ],
                127568: [
                    [24471], 256
                ],
                127569: [
                    [21487], 256
                ]
            },
            63488: {
                194560: [
                    [20029]
                ],
                194561: [
                    [20024]
                ],
                194562: [
                    [20033]
                ],
                194563: [
                    [131362]
                ],
                194564: [
                    [20320]
                ],
                194565: [
                    [20398]
                ],
                194566: [
                    [20411]
                ],
                194567: [
                    [20482]
                ],
                194568: [
                    [20602]
                ],
                194569: [
                    [20633]
                ],
                194570: [
                    [20711]
                ],
                194571: [
                    [20687]
                ],
                194572: [
                    [13470]
                ],
                194573: [
                    [132666]
                ],
                194574: [
                    [20813]
                ],
                194575: [
                    [20820]
                ],
                194576: [
                    [20836]
                ],
                194577: [
                    [20855]
                ],
                194578: [
                    [132380]
                ],
                194579: [
                    [13497]
                ],
                194580: [
                    [20839]
                ],
                194581: [
                    [20877]
                ],
                194582: [
                    [132427]
                ],
                194583: [
                    [20887]
                ],
                194584: [
                    [20900]
                ],
                194585: [
                    [20172]
                ],
                194586: [
                    [20908]
                ],
                194587: [
                    [20917]
                ],
                194588: [
                    [168415]
                ],
                194589: [
                    [20981]
                ],
                194590: [
                    [20995]
                ],
                194591: [
                    [13535]
                ],
                194592: [
                    [21051]
                ],
                194593: [
                    [21062]
                ],
                194594: [
                    [21106]
                ],
                194595: [
                    [21111]
                ],
                194596: [
                    [13589]
                ],
                194597: [
                    [21191]
                ],
                194598: [
                    [21193]
                ],
                194599: [
                    [21220]
                ],
                194600: [
                    [21242]
                ],
                194601: [
                    [21253]
                ],
                194602: [
                    [21254]
                ],
                194603: [
                    [21271]
                ],
                194604: [
                    [21321]
                ],
                194605: [
                    [21329]
                ],
                194606: [
                    [21338]
                ],
                194607: [
                    [21363]
                ],
                194608: [
                    [21373]
                ],
                194609: [
                    [21375]
                ],
                194610: [
                    [21375]
                ],
                194611: [
                    [21375]
                ],
                194612: [
                    [133676]
                ],
                194613: [
                    [28784]
                ],
                194614: [
                    [21450]
                ],
                194615: [
                    [21471]
                ],
                194616: [
                    [133987]
                ],
                194617: [
                    [21483]
                ],
                194618: [
                    [21489]
                ],
                194619: [
                    [21510]
                ],
                194620: [
                    [21662]
                ],
                194621: [
                    [21560]
                ],
                194622: [
                    [21576]
                ],
                194623: [
                    [21608]
                ],
                194624: [
                    [21666]
                ],
                194625: [
                    [21750]
                ],
                194626: [
                    [21776]
                ],
                194627: [
                    [21843]
                ],
                194628: [
                    [21859]
                ],
                194629: [
                    [21892]
                ],
                194630: [
                    [21892]
                ],
                194631: [
                    [21913]
                ],
                194632: [
                    [21931]
                ],
                194633: [
                    [21939]
                ],
                194634: [
                    [21954]
                ],
                194635: [
                    [22294]
                ],
                194636: [
                    [22022]
                ],
                194637: [
                    [22295]
                ],
                194638: [
                    [22097]
                ],
                194639: [
                    [22132]
                ],
                194640: [
                    [20999]
                ],
                194641: [
                    [22766]
                ],
                194642: [
                    [22478]
                ],
                194643: [
                    [22516]
                ],
                194644: [
                    [22541]
                ],
                194645: [
                    [22411]
                ],
                194646: [
                    [22578]
                ],
                194647: [
                    [22577]
                ],
                194648: [
                    [22700]
                ],
                194649: [
                    [136420]
                ],
                194650: [
                    [22770]
                ],
                194651: [
                    [22775]
                ],
                194652: [
                    [22790]
                ],
                194653: [
                    [22810]
                ],
                194654: [
                    [22818]
                ],
                194655: [
                    [22882]
                ],
                194656: [
                    [136872]
                ],
                194657: [
                    [136938]
                ],
                194658: [
                    [23020]
                ],
                194659: [
                    [23067]
                ],
                194660: [
                    [23079]
                ],
                194661: [
                    [23e3]
                ],
                194662: [
                    [23142]
                ],
                194663: [
                    [14062]
                ],
                194664: [
                    [14076]
                ],
                194665: [
                    [23304]
                ],
                194666: [
                    [23358]
                ],
                194667: [
                    [23358]
                ],
                194668: [
                    [137672]
                ],
                194669: [
                    [23491]
                ],
                194670: [
                    [23512]
                ],
                194671: [
                    [23527]
                ],
                194672: [
                    [23539]
                ],
                194673: [
                    [138008]
                ],
                194674: [
                    [23551]
                ],
                194675: [
                    [23558]
                ],
                194676: [
                    [24403]
                ],
                194677: [
                    [23586]
                ],
                194678: [
                    [14209]
                ],
                194679: [
                    [23648]
                ],
                194680: [
                    [23662]
                ],
                194681: [
                    [23744]
                ],
                194682: [
                    [23693]
                ],
                194683: [
                    [138724]
                ],
                194684: [
                    [23875]
                ],
                194685: [
                    [138726]
                ],
                194686: [
                    [23918]
                ],
                194687: [
                    [23915]
                ],
                194688: [
                    [23932]
                ],
                194689: [
                    [24033]
                ],
                194690: [
                    [24034]
                ],
                194691: [
                    [14383]
                ],
                194692: [
                    [24061]
                ],
                194693: [
                    [24104]
                ],
                194694: [
                    [24125]
                ],
                194695: [
                    [24169]
                ],
                194696: [
                    [14434]
                ],
                194697: [
                    [139651]
                ],
                194698: [
                    [14460]
                ],
                194699: [
                    [24240]
                ],
                194700: [
                    [24243]
                ],
                194701: [
                    [24246]
                ],
                194702: [
                    [24266]
                ],
                194703: [
                    [172946]
                ],
                194704: [
                    [24318]
                ],
                194705: [
                    [140081]
                ],
                194706: [
                    [140081]
                ],
                194707: [
                    [33281]
                ],
                194708: [
                    [24354]
                ],
                194709: [
                    [24354]
                ],
                194710: [
                    [14535]
                ],
                194711: [
                    [144056]
                ],
                194712: [
                    [156122]
                ],
                194713: [
                    [24418]
                ],
                194714: [
                    [24427]
                ],
                194715: [
                    [14563]
                ],
                194716: [
                    [24474]
                ],
                194717: [
                    [24525]
                ],
                194718: [
                    [24535]
                ],
                194719: [
                    [24569]
                ],
                194720: [
                    [24705]
                ],
                194721: [
                    [14650]
                ],
                194722: [
                    [14620]
                ],
                194723: [
                    [24724]
                ],
                194724: [
                    [141012]
                ],
                194725: [
                    [24775]
                ],
                194726: [
                    [24904]
                ],
                194727: [
                    [24908]
                ],
                194728: [
                    [24910]
                ],
                194729: [
                    [24908]
                ],
                194730: [
                    [24954]
                ],
                194731: [
                    [24974]
                ],
                194732: [
                    [25010]
                ],
                194733: [
                    [24996]
                ],
                194734: [
                    [25007]
                ],
                194735: [
                    [25054]
                ],
                194736: [
                    [25074]
                ],
                194737: [
                    [25078]
                ],
                194738: [
                    [25104]
                ],
                194739: [
                    [25115]
                ],
                194740: [
                    [25181]
                ],
                194741: [
                    [25265]
                ],
                194742: [
                    [25300]
                ],
                194743: [
                    [25424]
                ],
                194744: [
                    [142092]
                ],
                194745: [
                    [25405]
                ],
                194746: [
                    [25340]
                ],
                194747: [
                    [25448]
                ],
                194748: [
                    [25475]
                ],
                194749: [
                    [25572]
                ],
                194750: [
                    [142321]
                ],
                194751: [
                    [25634]
                ],
                194752: [
                    [25541]
                ],
                194753: [
                    [25513]
                ],
                194754: [
                    [14894]
                ],
                194755: [
                    [25705]
                ],
                194756: [
                    [25726]
                ],
                194757: [
                    [25757]
                ],
                194758: [
                    [25719]
                ],
                194759: [
                    [14956]
                ],
                194760: [
                    [25935]
                ],
                194761: [
                    [25964]
                ],
                194762: [
                    [143370]
                ],
                194763: [
                    [26083]
                ],
                194764: [
                    [26360]
                ],
                194765: [
                    [26185]
                ],
                194766: [
                    [15129]
                ],
                194767: [
                    [26257]
                ],
                194768: [
                    [15112]
                ],
                194769: [
                    [15076]
                ],
                194770: [
                    [20882]
                ],
                194771: [
                    [20885]
                ],
                194772: [
                    [26368]
                ],
                194773: [
                    [26268]
                ],
                194774: [
                    [32941]
                ],
                194775: [
                    [17369]
                ],
                194776: [
                    [26391]
                ],
                194777: [
                    [26395]
                ],
                194778: [
                    [26401]
                ],
                194779: [
                    [26462]
                ],
                194780: [
                    [26451]
                ],
                194781: [
                    [144323]
                ],
                194782: [
                    [15177]
                ],
                194783: [
                    [26618]
                ],
                194784: [
                    [26501]
                ],
                194785: [
                    [26706]
                ],
                194786: [
                    [26757]
                ],
                194787: [
                    [144493]
                ],
                194788: [
                    [26766]
                ],
                194789: [
                    [26655]
                ],
                194790: [
                    [26900]
                ],
                194791: [
                    [15261]
                ],
                194792: [
                    [26946]
                ],
                194793: [
                    [27043]
                ],
                194794: [
                    [27114]
                ],
                194795: [
                    [27304]
                ],
                194796: [
                    [145059]
                ],
                194797: [
                    [27355]
                ],
                194798: [
                    [15384]
                ],
                194799: [
                    [27425]
                ],
                194800: [
                    [145575]
                ],
                194801: [
                    [27476]
                ],
                194802: [
                    [15438]
                ],
                194803: [
                    [27506]
                ],
                194804: [
                    [27551]
                ],
                194805: [
                    [27578]
                ],
                194806: [
                    [27579]
                ],
                194807: [
                    [146061]
                ],
                194808: [
                    [138507]
                ],
                194809: [
                    [146170]
                ],
                194810: [
                    [27726]
                ],
                194811: [
                    [146620]
                ],
                194812: [
                    [27839]
                ],
                194813: [
                    [27853]
                ],
                194814: [
                    [27751]
                ],
                194815: [
                    [27926]
                ]
            },
            63744: {
                63744: [
                    [35912]
                ],
                63745: [
                    [26356]
                ],
                63746: [
                    [36554]
                ],
                63747: [
                    [36040]
                ],
                63748: [
                    [28369]
                ],
                63749: [
                    [20018]
                ],
                63750: [
                    [21477]
                ],
                63751: [
                    [40860]
                ],
                63752: [
                    [40860]
                ],
                63753: [
                    [22865]
                ],
                63754: [
                    [37329]
                ],
                63755: [
                    [21895]
                ],
                63756: [
                    [22856]
                ],
                63757: [
                    [25078]
                ],
                63758: [
                    [30313]
                ],
                63759: [
                    [32645]
                ],
                63760: [
                    [34367]
                ],
                63761: [
                    [34746]
                ],
                63762: [
                    [35064]
                ],
                63763: [
                    [37007]
                ],
                63764: [
                    [27138]
                ],
                63765: [
                    [27931]
                ],
                63766: [
                    [28889]
                ],
                63767: [
                    [29662]
                ],
                63768: [
                    [33853]
                ],
                63769: [
                    [37226]
                ],
                63770: [
                    [39409]
                ],
                63771: [
                    [20098]
                ],
                63772: [
                    [21365]
                ],
                63773: [
                    [27396]
                ],
                63774: [
                    [29211]
                ],
                63775: [
                    [34349]
                ],
                63776: [
                    [40478]
                ],
                63777: [
                    [23888]
                ],
                63778: [
                    [28651]
                ],
                63779: [
                    [34253]
                ],
                63780: [
                    [35172]
                ],
                63781: [
                    [25289]
                ],
                63782: [
                    [33240]
                ],
                63783: [
                    [34847]
                ],
                63784: [
                    [24266]
                ],
                63785: [
                    [26391]
                ],
                63786: [
                    [28010]
                ],
                63787: [
                    [29436]
                ],
                63788: [
                    [37070]
                ],
                63789: [
                    [20358]
                ],
                63790: [
                    [20919]
                ],
                63791: [
                    [21214]
                ],
                63792: [
                    [25796]
                ],
                63793: [
                    [27347]
                ],
                63794: [
                    [29200]
                ],
                63795: [
                    [30439]
                ],
                63796: [
                    [32769]
                ],
                63797: [
                    [34310]
                ],
                63798: [
                    [34396]
                ],
                63799: [
                    [36335]
                ],
                63800: [
                    [38706]
                ],
                63801: [
                    [39791]
                ],
                63802: [
                    [40442]
                ],
                63803: [
                    [30860]
                ],
                63804: [
                    [31103]
                ],
                63805: [
                    [32160]
                ],
                63806: [
                    [33737]
                ],
                63807: [
                    [37636]
                ],
                63808: [
                    [40575]
                ],
                63809: [
                    [35542]
                ],
                63810: [
                    [22751]
                ],
                63811: [
                    [24324]
                ],
                63812: [
                    [31840]
                ],
                63813: [
                    [32894]
                ],
                63814: [
                    [29282]
                ],
                63815: [
                    [30922]
                ],
                63816: [
                    [36034]
                ],
                63817: [
                    [38647]
                ],
                63818: [
                    [22744]
                ],
                63819: [
                    [23650]
                ],
                63820: [
                    [27155]
                ],
                63821: [
                    [28122]
                ],
                63822: [
                    [28431]
                ],
                63823: [
                    [32047]
                ],
                63824: [
                    [32311]
                ],
                63825: [
                    [38475]
                ],
                63826: [
                    [21202]
                ],
                63827: [
                    [32907]
                ],
                63828: [
                    [20956]
                ],
                63829: [
                    [20940]
                ],
                63830: [
                    [31260]
                ],
                63831: [
                    [32190]
                ],
                63832: [
                    [33777]
                ],
                63833: [
                    [38517]
                ],
                63834: [
                    [35712]
                ],
                63835: [
                    [25295]
                ],
                63836: [
                    [27138]
                ],
                63837: [
                    [35582]
                ],
                63838: [
                    [20025]
                ],
                63839: [
                    [23527]
                ],
                63840: [
                    [24594]
                ],
                63841: [
                    [29575]
                ],
                63842: [
                    [30064]
                ],
                63843: [
                    [21271]
                ],
                63844: [
                    [30971]
                ],
                63845: [
                    [20415]
                ],
                63846: [
                    [24489]
                ],
                63847: [
                    [19981]
                ],
                63848: [
                    [27852]
                ],
                63849: [
                    [25976]
                ],
                63850: [
                    [32034]
                ],
                63851: [
                    [21443]
                ],
                63852: [
                    [22622]
                ],
                63853: [
                    [30465]
                ],
                63854: [
                    [33865]
                ],
                63855: [
                    [35498]
                ],
                63856: [
                    [27578]
                ],
                63857: [
                    [36784]
                ],
                63858: [
                    [27784]
                ],
                63859: [
                    [25342]
                ],
                63860: [
                    [33509]
                ],
                63861: [
                    [25504]
                ],
                63862: [
                    [30053]
                ],
                63863: [
                    [20142]
                ],
                63864: [
                    [20841]
                ],
                63865: [
                    [20937]
                ],
                63866: [
                    [26753]
                ],
                63867: [
                    [31975]
                ],
                63868: [
                    [33391]
                ],
                63869: [
                    [35538]
                ],
                63870: [
                    [37327]
                ],
                63871: [
                    [21237]
                ],
                63872: [
                    [21570]
                ],
                63873: [
                    [22899]
                ],
                63874: [
                    [24300]
                ],
                63875: [
                    [26053]
                ],
                63876: [
                    [28670]
                ],
                63877: [
                    [31018]
                ],
                63878: [
                    [38317]
                ],
                63879: [
                    [39530]
                ],
                63880: [
                    [40599]
                ],
                63881: [
                    [40654]
                ],
                63882: [
                    [21147]
                ],
                63883: [
                    [26310]
                ],
                63884: [
                    [27511]
                ],
                63885: [
                    [36706]
                ],
                63886: [
                    [24180]
                ],
                63887: [
                    [24976]
                ],
                63888: [
                    [25088]
                ],
                63889: [
                    [25754]
                ],
                63890: [
                    [28451]
                ],
                63891: [
                    [29001]
                ],
                63892: [
                    [29833]
                ],
                63893: [
                    [31178]
                ],
                63894: [
                    [32244]
                ],
                63895: [
                    [32879]
                ],
                63896: [
                    [36646]
                ],
                63897: [
                    [34030]
                ],
                63898: [
                    [36899]
                ],
                63899: [
                    [37706]
                ],
                63900: [
                    [21015]
                ],
                63901: [
                    [21155]
                ],
                63902: [
                    [21693]
                ],
                63903: [
                    [28872]
                ],
                63904: [
                    [35010]
                ],
                63905: [
                    [35498]
                ],
                63906: [
                    [24265]
                ],
                63907: [
                    [24565]
                ],
                63908: [
                    [25467]
                ],
                63909: [
                    [27566]
                ],
                63910: [
                    [31806]
                ],
                63911: [
                    [29557]
                ],
                63912: [
                    [20196]
                ],
                63913: [
                    [22265]
                ],
                63914: [
                    [23527]
                ],
                63915: [
                    [23994]
                ],
                63916: [
                    [24604]
                ],
                63917: [
                    [29618]
                ],
                63918: [
                    [29801]
                ],
                63919: [
                    [32666]
                ],
                63920: [
                    [32838]
                ],
                63921: [
                    [37428]
                ],
                63922: [
                    [38646]
                ],
                63923: [
                    [38728]
                ],
                63924: [
                    [38936]
                ],
                63925: [
                    [20363]
                ],
                63926: [
                    [31150]
                ],
                63927: [
                    [37300]
                ],
                63928: [
                    [38584]
                ],
                63929: [
                    [24801]
                ],
                63930: [
                    [20102]
                ],
                63931: [
                    [20698]
                ],
                63932: [
                    [23534]
                ],
                63933: [
                    [23615]
                ],
                63934: [
                    [26009]
                ],
                63935: [
                    [27138]
                ],
                63936: [
                    [29134]
                ],
                63937: [
                    [30274]
                ],
                63938: [
                    [34044]
                ],
                63939: [
                    [36988]
                ],
                63940: [
                    [40845]
                ],
                63941: [
                    [26248]
                ],
                63942: [
                    [38446]
                ],
                63943: [
                    [21129]
                ],
                63944: [
                    [26491]
                ],
                63945: [
                    [26611]
                ],
                63946: [
                    [27969]
                ],
                63947: [
                    [28316]
                ],
                63948: [
                    [29705]
                ],
                63949: [
                    [30041]
                ],
                63950: [
                    [30827]
                ],
                63951: [
                    [32016]
                ],
                63952: [
                    [39006]
                ],
                63953: [
                    [20845]
                ],
                63954: [
                    [25134]
                ],
                63955: [
                    [38520]
                ],
                63956: [
                    [20523]
                ],
                63957: [
                    [23833]
                ],
                63958: [
                    [28138]
                ],
                63959: [
                    [36650]
                ],
                63960: [
                    [24459]
                ],
                63961: [
                    [24900]
                ],
                63962: [
                    [26647]
                ],
                63963: [
                    [29575]
                ],
                63964: [
                    [38534]
                ],
                63965: [
                    [21033]
                ],
                63966: [
                    [21519]
                ],
                63967: [
                    [23653]
                ],
                63968: [
                    [26131]
                ],
                63969: [
                    [26446]
                ],
                63970: [
                    [26792]
                ],
                63971: [
                    [27877]
                ],
                63972: [
                    [29702]
                ],
                63973: [
                    [30178]
                ],
                63974: [
                    [32633]
                ],
                63975: [
                    [35023]
                ],
                63976: [
                    [35041]
                ],
                63977: [
                    [37324]
                ],
                63978: [
                    [38626]
                ],
                63979: [
                    [21311]
                ],
                63980: [
                    [28346]
                ],
                63981: [
                    [21533]
                ],
                63982: [
                    [29136]
                ],
                63983: [
                    [29848]
                ],
                63984: [
                    [34298]
                ],
                63985: [
                    [38563]
                ],
                63986: [
                    [40023]
                ],
                63987: [
                    [40607]
                ],
                63988: [
                    [26519]
                ],
                63989: [
                    [28107]
                ],
                63990: [
                    [33256]
                ],
                63991: [
                    [31435]
                ],
                63992: [
                    [31520]
                ],
                63993: [
                    [31890]
                ],
                63994: [
                    [29376]
                ],
                63995: [
                    [28825]
                ],
                63996: [
                    [35672]
                ],
                63997: [
                    [20160]
                ],
                63998: [
                    [33590]
                ],
                63999: [
                    [21050]
                ],
                194816: [
                    [27966]
                ],
                194817: [
                    [28023]
                ],
                194818: [
                    [27969]
                ],
                194819: [
                    [28009]
                ],
                194820: [
                    [28024]
                ],
                194821: [
                    [28037]
                ],
                194822: [
                    [146718]
                ],
                194823: [
                    [27956]
                ],
                194824: [
                    [28207]
                ],
                194825: [
                    [28270]
                ],
                194826: [
                    [15667]
                ],
                194827: [
                    [28363]
                ],
                194828: [
                    [28359]
                ],
                194829: [
                    [147153]
                ],
                194830: [
                    [28153]
                ],
                194831: [
                    [28526]
                ],
                194832: [
                    [147294]
                ],
                194833: [
                    [147342]
                ],
                194834: [
                    [28614]
                ],
                194835: [
                    [28729]
                ],
                194836: [
                    [28702]
                ],
                194837: [
                    [28699]
                ],
                194838: [
                    [15766]
                ],
                194839: [
                    [28746]
                ],
                194840: [
                    [28797]
                ],
                194841: [
                    [28791]
                ],
                194842: [
                    [28845]
                ],
                194843: [
                    [132389]
                ],
                194844: [
                    [28997]
                ],
                194845: [
                    [148067]
                ],
                194846: [
                    [29084]
                ],
                194847: [
                    [148395]
                ],
                194848: [
                    [29224]
                ],
                194849: [
                    [29237]
                ],
                194850: [
                    [29264]
                ],
                194851: [
                    [149e3]
                ],
                194852: [
                    [29312]
                ],
                194853: [
                    [29333]
                ],
                194854: [
                    [149301]
                ],
                194855: [
                    [149524]
                ],
                194856: [
                    [29562]
                ],
                194857: [
                    [29579]
                ],
                194858: [
                    [16044]
                ],
                194859: [
                    [29605]
                ],
                194860: [
                    [16056]
                ],
                194861: [
                    [16056]
                ],
                194862: [
                    [29767]
                ],
                194863: [
                    [29788]
                ],
                194864: [
                    [29809]
                ],
                194865: [
                    [29829]
                ],
                194866: [
                    [29898]
                ],
                194867: [
                    [16155]
                ],
                194868: [
                    [29988]
                ],
                194869: [
                    [150582]
                ],
                194870: [
                    [30014]
                ],
                194871: [
                    [150674]
                ],
                194872: [
                    [30064]
                ],
                194873: [
                    [139679]
                ],
                194874: [
                    [30224]
                ],
                194875: [
                    [151457]
                ],
                194876: [
                    [151480]
                ],
                194877: [
                    [151620]
                ],
                194878: [
                    [16380]
                ],
                194879: [
                    [16392]
                ],
                194880: [
                    [30452]
                ],
                194881: [
                    [151795]
                ],
                194882: [
                    [151794]
                ],
                194883: [
                    [151833]
                ],
                194884: [
                    [151859]
                ],
                194885: [
                    [30494]
                ],
                194886: [
                    [30495]
                ],
                194887: [
                    [30495]
                ],
                194888: [
                    [30538]
                ],
                194889: [
                    [16441]
                ],
                194890: [
                    [30603]
                ],
                194891: [
                    [16454]
                ],
                194892: [
                    [16534]
                ],
                194893: [
                    [152605]
                ],
                194894: [
                    [30798]
                ],
                194895: [
                    [30860]
                ],
                194896: [
                    [30924]
                ],
                194897: [
                    [16611]
                ],
                194898: [
                    [153126]
                ],
                194899: [
                    [31062]
                ],
                194900: [
                    [153242]
                ],
                194901: [
                    [153285]
                ],
                194902: [
                    [31119]
                ],
                194903: [
                    [31211]
                ],
                194904: [
                    [16687]
                ],
                194905: [
                    [31296]
                ],
                194906: [
                    [31306]
                ],
                194907: [
                    [31311]
                ],
                194908: [
                    [153980]
                ],
                194909: [
                    [154279]
                ],
                194910: [
                    [154279]
                ],
                194911: [
                    [31470]
                ],
                194912: [
                    [16898]
                ],
                194913: [
                    [154539]
                ],
                194914: [
                    [31686]
                ],
                194915: [
                    [31689]
                ],
                194916: [
                    [16935]
                ],
                194917: [
                    [154752]
                ],
                194918: [
                    [31954]
                ],
                194919: [
                    [17056]
                ],
                194920: [
                    [31976]
                ],
                194921: [
                    [31971]
                ],
                194922: [
                    [32e3]
                ],
                194923: [
                    [155526]
                ],
                194924: [
                    [32099]
                ],
                194925: [
                    [17153]
                ],
                194926: [
                    [32199]
                ],
                194927: [
                    [32258]
                ],
                194928: [
                    [32325]
                ],
                194929: [
                    [17204]
                ],
                194930: [
                    [156200]
                ],
                194931: [
                    [156231]
                ],
                194932: [
                    [17241]
                ],
                194933: [
                    [156377]
                ],
                194934: [
                    [32634]
                ],
                194935: [
                    [156478]
                ],
                194936: [
                    [32661]
                ],
                194937: [
                    [32762]
                ],
                194938: [
                    [32773]
                ],
                194939: [
                    [156890]
                ],
                194940: [
                    [156963]
                ],
                194941: [
                    [32864]
                ],
                194942: [
                    [157096]
                ],
                194943: [
                    [32880]
                ],
                194944: [
                    [144223]
                ],
                194945: [
                    [17365]
                ],
                194946: [
                    [32946]
                ],
                194947: [
                    [33027]
                ],
                194948: [
                    [17419]
                ],
                194949: [
                    [33086]
                ],
                194950: [
                    [23221]
                ],
                194951: [
                    [157607]
                ],
                194952: [
                    [157621]
                ],
                194953: [
                    [144275]
                ],
                194954: [
                    [144284]
                ],
                194955: [
                    [33281]
                ],
                194956: [
                    [33284]
                ],
                194957: [
                    [36766]
                ],
                194958: [
                    [17515]
                ],
                194959: [
                    [33425]
                ],
                194960: [
                    [33419]
                ],
                194961: [
                    [33437]
                ],
                194962: [
                    [21171]
                ],
                194963: [
                    [33457]
                ],
                194964: [
                    [33459]
                ],
                194965: [
                    [33469]
                ],
                194966: [
                    [33510]
                ],
                194967: [
                    [158524]
                ],
                194968: [
                    [33509]
                ],
                194969: [
                    [33565]
                ],
                194970: [
                    [33635]
                ],
                194971: [
                    [33709]
                ],
                194972: [
                    [33571]
                ],
                194973: [
                    [33725]
                ],
                194974: [
                    [33767]
                ],
                194975: [
                    [33879]
                ],
                194976: [
                    [33619]
                ],
                194977: [
                    [33738]
                ],
                194978: [
                    [33740]
                ],
                194979: [
                    [33756]
                ],
                194980: [
                    [158774]
                ],
                194981: [
                    [159083]
                ],
                194982: [
                    [158933]
                ],
                194983: [
                    [17707]
                ],
                194984: [
                    [34033]
                ],
                194985: [
                    [34035]
                ],
                194986: [
                    [34070]
                ],
                194987: [
                    [160714]
                ],
                194988: [
                    [34148]
                ],
                194989: [
                    [159532]
                ],
                194990: [
                    [17757]
                ],
                194991: [
                    [17761]
                ],
                194992: [
                    [159665]
                ],
                194993: [
                    [159954]
                ],
                194994: [
                    [17771]
                ],
                194995: [
                    [34384]
                ],
                194996: [
                    [34396]
                ],
                194997: [
                    [34407]
                ],
                194998: [
                    [34409]
                ],
                194999: [
                    [34473]
                ],
                195e3: [
                    [34440]
                ],
                195001: [
                    [34574]
                ],
                195002: [
                    [34530]
                ],
                195003: [
                    [34681]
                ],
                195004: [
                    [34600]
                ],
                195005: [
                    [34667]
                ],
                195006: [
                    [34694]
                ],
                195007: [
                    [17879]
                ],
                195008: [
                    [34785]
                ],
                195009: [
                    [34817]
                ],
                195010: [
                    [17913]
                ],
                195011: [
                    [34912]
                ],
                195012: [
                    [34915]
                ],
                195013: [
                    [161383]
                ],
                195014: [
                    [35031]
                ],
                195015: [
                    [35038]
                ],
                195016: [
                    [17973]
                ],
                195017: [
                    [35066]
                ],
                195018: [
                    [13499]
                ],
                195019: [
                    [161966]
                ],
                195020: [
                    [162150]
                ],
                195021: [
                    [18110]
                ],
                195022: [
                    [18119]
                ],
                195023: [
                    [35488]
                ],
                195024: [
                    [35565]
                ],
                195025: [
                    [35722]
                ],
                195026: [
                    [35925]
                ],
                195027: [
                    [162984]
                ],
                195028: [
                    [36011]
                ],
                195029: [
                    [36033]
                ],
                195030: [
                    [36123]
                ],
                195031: [
                    [36215]
                ],
                195032: [
                    [163631]
                ],
                195033: [
                    [133124]
                ],
                195034: [
                    [36299]
                ],
                195035: [
                    [36284]
                ],
                195036: [
                    [36336]
                ],
                195037: [
                    [133342]
                ],
                195038: [
                    [36564]
                ],
                195039: [
                    [36664]
                ],
                195040: [
                    [165330]
                ],
                195041: [
                    [165357]
                ],
                195042: [
                    [37012]
                ],
                195043: [
                    [37105]
                ],
                195044: [
                    [37137]
                ],
                195045: [
                    [165678]
                ],
                195046: [
                    [37147]
                ],
                195047: [
                    [37432]
                ],
                195048: [
                    [37591]
                ],
                195049: [
                    [37592]
                ],
                195050: [
                    [37500]
                ],
                195051: [
                    [37881]
                ],
                195052: [
                    [37909]
                ],
                195053: [
                    [166906]
                ],
                195054: [
                    [38283]
                ],
                195055: [
                    [18837]
                ],
                195056: [
                    [38327]
                ],
                195057: [
                    [167287]
                ],
                195058: [
                    [18918]
                ],
                195059: [
                    [38595]
                ],
                195060: [
                    [23986]
                ],
                195061: [
                    [38691]
                ],
                195062: [
                    [168261]
                ],
                195063: [
                    [168474]
                ],
                195064: [
                    [19054]
                ],
                195065: [
                    [19062]
                ],
                195066: [
                    [38880]
                ],
                195067: [
                    [168970]
                ],
                195068: [
                    [19122]
                ],
                195069: [
                    [169110]
                ],
                195070: [
                    [38923]
                ],
                195071: [
                    [38923]
                ]
            },
            64e3: {
                64e3: [
                    [20999]
                ],
                64001: [
                    [24230]
                ],
                64002: [
                    [25299]
                ],
                64003: [
                    [31958]
                ],
                64004: [
                    [23429]
                ],
                64005: [
                    [27934]
                ],
                64006: [
                    [26292]
                ],
                64007: [
                    [36667]
                ],
                64008: [
                    [34892]
                ],
                64009: [
                    [38477]
                ],
                64010: [
                    [35211]
                ],
                64011: [
                    [24275]
                ],
                64012: [
                    [20800]
                ],
                64013: [
                    [21952]
                ],
                64016: [
                    [22618]
                ],
                64018: [
                    [26228]
                ],
                64021: [
                    [20958]
                ],
                64022: [
                    [29482]
                ],
                64023: [
                    [30410]
                ],
                64024: [
                    [31036]
                ],
                64025: [
                    [31070]
                ],
                64026: [
                    [31077]
                ],
                64027: [
                    [31119]
                ],
                64028: [
                    [38742]
                ],
                64029: [
                    [31934]
                ],
                64030: [
                    [32701]
                ],
                64032: [
                    [34322]
                ],
                64034: [
                    [35576]
                ],
                64037: [
                    [36920]
                ],
                64038: [
                    [37117]
                ],
                64042: [
                    [39151]
                ],
                64043: [
                    [39164]
                ],
                64044: [
                    [39208]
                ],
                64045: [
                    [40372]
                ],
                64046: [
                    [37086]
                ],
                64047: [
                    [38583]
                ],
                64048: [
                    [20398]
                ],
                64049: [
                    [20711]
                ],
                64050: [
                    [20813]
                ],
                64051: [
                    [21193]
                ],
                64052: [
                    [21220]
                ],
                64053: [
                    [21329]
                ],
                64054: [
                    [21917]
                ],
                64055: [
                    [22022]
                ],
                64056: [
                    [22120]
                ],
                64057: [
                    [22592]
                ],
                64058: [
                    [22696]
                ],
                64059: [
                    [23652]
                ],
                64060: [
                    [23662]
                ],
                64061: [
                    [24724]
                ],
                64062: [
                    [24936]
                ],
                64063: [
                    [24974]
                ],
                64064: [
                    [25074]
                ],
                64065: [
                    [25935]
                ],
                64066: [
                    [26082]
                ],
                64067: [
                    [26257]
                ],
                64068: [
                    [26757]
                ],
                64069: [
                    [28023]
                ],
                64070: [
                    [28186]
                ],
                64071: [
                    [28450]
                ],
                64072: [
                    [29038]
                ],
                64073: [
                    [29227]
                ],
                64074: [
                    [29730]
                ],
                64075: [
                    [30865]
                ],
                64076: [
                    [31038]
                ],
                64077: [
                    [31049]
                ],
                64078: [
                    [31048]
                ],
                64079: [
                    [31056]
                ],
                64080: [
                    [31062]
                ],
                64081: [
                    [31069]
                ],
                64082: [
                    [31117]
                ],
                64083: [
                    [31118]
                ],
                64084: [
                    [31296]
                ],
                64085: [
                    [31361]
                ],
                64086: [
                    [31680]
                ],
                64087: [
                    [32244]
                ],
                64088: [
                    [32265]
                ],
                64089: [
                    [32321]
                ],
                64090: [
                    [32626]
                ],
                64091: [
                    [32773]
                ],
                64092: [
                    [33261]
                ],
                64093: [
                    [33401]
                ],
                64094: [
                    [33401]
                ],
                64095: [
                    [33879]
                ],
                64096: [
                    [35088]
                ],
                64097: [
                    [35222]
                ],
                64098: [
                    [35585]
                ],
                64099: [
                    [35641]
                ],
                64100: [
                    [36051]
                ],
                64101: [
                    [36104]
                ],
                64102: [
                    [36790]
                ],
                64103: [
                    [36920]
                ],
                64104: [
                    [38627]
                ],
                64105: [
                    [38911]
                ],
                64106: [
                    [38971]
                ],
                64107: [
                    [24693]
                ],
                64108: [
                    [148206]
                ],
                64109: [
                    [33304]
                ],
                64112: [
                    [20006]
                ],
                64113: [
                    [20917]
                ],
                64114: [
                    [20840]
                ],
                64115: [
                    [20352]
                ],
                64116: [
                    [20805]
                ],
                64117: [
                    [20864]
                ],
                64118: [
                    [21191]
                ],
                64119: [
                    [21242]
                ],
                64120: [
                    [21917]
                ],
                64121: [
                    [21845]
                ],
                64122: [
                    [21913]
                ],
                64123: [
                    [21986]
                ],
                64124: [
                    [22618]
                ],
                64125: [
                    [22707]
                ],
                64126: [
                    [22852]
                ],
                64127: [
                    [22868]
                ],
                64128: [
                    [23138]
                ],
                64129: [
                    [23336]
                ],
                64130: [
                    [24274]
                ],
                64131: [
                    [24281]
                ],
                64132: [
                    [24425]
                ],
                64133: [
                    [24493]
                ],
                64134: [
                    [24792]
                ],
                64135: [
                    [24910]
                ],
                64136: [
                    [24840]
                ],
                64137: [
                    [24974]
                ],
                64138: [
                    [24928]
                ],
                64139: [
                    [25074]
                ],
                64140: [
                    [25140]
                ],
                64141: [
                    [25540]
                ],
                64142: [
                    [25628]
                ],
                64143: [
                    [25682]
                ],
                64144: [
                    [25942]
                ],
                64145: [
                    [26228]
                ],
                64146: [
                    [26391]
                ],
                64147: [
                    [26395]
                ],
                64148: [
                    [26454]
                ],
                64149: [
                    [27513]
                ],
                64150: [
                    [27578]
                ],
                64151: [
                    [27969]
                ],
                64152: [
                    [28379]
                ],
                64153: [
                    [28363]
                ],
                64154: [
                    [28450]
                ],
                64155: [
                    [28702]
                ],
                64156: [
                    [29038]
                ],
                64157: [
                    [30631]
                ],
                64158: [
                    [29237]
                ],
                64159: [
                    [29359]
                ],
                64160: [
                    [29482]
                ],
                64161: [
                    [29809]
                ],
                64162: [
                    [29958]
                ],
                64163: [
                    [30011]
                ],
                64164: [
                    [30237]
                ],
                64165: [
                    [30239]
                ],
                64166: [
                    [30410]
                ],
                64167: [
                    [30427]
                ],
                64168: [
                    [30452]
                ],
                64169: [
                    [30538]
                ],
                64170: [
                    [30528]
                ],
                64171: [
                    [30924]
                ],
                64172: [
                    [31409]
                ],
                64173: [
                    [31680]
                ],
                64174: [
                    [31867]
                ],
                64175: [
                    [32091]
                ],
                64176: [
                    [32244]
                ],
                64177: [
                    [32574]
                ],
                64178: [
                    [32773]
                ],
                64179: [
                    [33618]
                ],
                64180: [
                    [33775]
                ],
                64181: [
                    [34681]
                ],
                64182: [
                    [35137]
                ],
                64183: [
                    [35206]
                ],
                64184: [
                    [35222]
                ],
                64185: [
                    [35519]
                ],
                64186: [
                    [35576]
                ],
                64187: [
                    [35531]
                ],
                64188: [
                    [35585]
                ],
                64189: [
                    [35582]
                ],
                64190: [
                    [35565]
                ],
                64191: [
                    [35641]
                ],
                64192: [
                    [35722]
                ],
                64193: [
                    [36104]
                ],
                64194: [
                    [36664]
                ],
                64195: [
                    [36978]
                ],
                64196: [
                    [37273]
                ],
                64197: [
                    [37494]
                ],
                64198: [
                    [38524]
                ],
                64199: [
                    [38627]
                ],
                64200: [
                    [38742]
                ],
                64201: [
                    [38875]
                ],
                64202: [
                    [38911]
                ],
                64203: [
                    [38923]
                ],
                64204: [
                    [38971]
                ],
                64205: [
                    [39698]
                ],
                64206: [
                    [40860]
                ],
                64207: [
                    [141386]
                ],
                64208: [
                    [141380]
                ],
                64209: [
                    [144341]
                ],
                64210: [
                    [15261]
                ],
                64211: [
                    [16408]
                ],
                64212: [
                    [16441]
                ],
                64213: [
                    [152137]
                ],
                64214: [
                    [154832]
                ],
                64215: [
                    [163539]
                ],
                64216: [
                    [40771]
                ],
                64217: [
                    [40846]
                ],
                195072: [
                    [38953]
                ],
                195073: [
                    [169398]
                ],
                195074: [
                    [39138]
                ],
                195075: [
                    [19251]
                ],
                195076: [
                    [39209]
                ],
                195077: [
                    [39335]
                ],
                195078: [
                    [39362]
                ],
                195079: [
                    [39422]
                ],
                195080: [
                    [19406]
                ],
                195081: [
                    [170800]
                ],
                195082: [
                    [39698]
                ],
                195083: [
                    [4e4]
                ],
                195084: [
                    [40189]
                ],
                195085: [
                    [19662]
                ],
                195086: [
                    [19693]
                ],
                195087: [
                    [40295]
                ],
                195088: [
                    [172238]
                ],
                195089: [
                    [19704]
                ],
                195090: [
                    [172293]
                ],
                195091: [
                    [172558]
                ],
                195092: [
                    [172689]
                ],
                195093: [
                    [40635]
                ],
                195094: [
                    [19798]
                ],
                195095: [
                    [40697]
                ],
                195096: [
                    [40702]
                ],
                195097: [
                    [40709]
                ],
                195098: [
                    [40719]
                ],
                195099: [
                    [40726]
                ],
                195100: [
                    [40763]
                ],
                195101: [
                    [173568]
                ]
            },
            64256: {
                64256: [
                    [102, 102], 256
                ],
                64257: [
                    [102, 105], 256
                ],
                64258: [
                    [102, 108], 256
                ],
                64259: [
                    [102, 102, 105], 256
                ],
                64260: [
                    [102, 102, 108], 256
                ],
                64261: [
                    [383, 116], 256
                ],
                64262: [
                    [115, 116], 256
                ],
                64275: [
                    [1396, 1398], 256
                ],
                64276: [
                    [1396, 1381], 256
                ],
                64277: [
                    [1396, 1387], 256
                ],
                64278: [
                    [1406, 1398], 256
                ],
                64279: [
                    [1396, 1389], 256
                ],
                64285: [
                    [1497, 1460], 512
                ],
                64286: [, 26],
                64287: [
                    [1522, 1463], 512
                ],
                64288: [
                    [1506], 256
                ],
                64289: [
                    [1488], 256
                ],
                64290: [
                    [1491], 256
                ],
                64291: [
                    [1492], 256
                ],
                64292: [
                    [1499], 256
                ],
                64293: [
                    [1500], 256
                ],
                64294: [
                    [1501], 256
                ],
                64295: [
                    [1512], 256
                ],
                64296: [
                    [1514], 256
                ],
                64297: [
                    [43], 256
                ],
                64298: [
                    [1513, 1473], 512
                ],
                64299: [
                    [1513, 1474], 512
                ],
                64300: [
                    [64329, 1473], 512
                ],
                64301: [
                    [64329, 1474], 512
                ],
                64302: [
                    [1488, 1463], 512
                ],
                64303: [
                    [1488, 1464], 512
                ],
                64304: [
                    [1488, 1468], 512
                ],
                64305: [
                    [1489, 1468], 512
                ],
                64306: [
                    [1490, 1468], 512
                ],
                64307: [
                    [1491, 1468], 512
                ],
                64308: [
                    [1492, 1468], 512
                ],
                64309: [
                    [1493, 1468], 512
                ],
                64310: [
                    [1494, 1468], 512
                ],
                64312: [
                    [1496, 1468], 512
                ],
                64313: [
                    [1497, 1468], 512
                ],
                64314: [
                    [1498, 1468], 512
                ],
                64315: [
                    [1499, 1468], 512
                ],
                64316: [
                    [1500, 1468], 512
                ],
                64318: [
                    [1502, 1468], 512
                ],
                64320: [
                    [1504, 1468], 512
                ],
                64321: [
                    [1505, 1468], 512
                ],
                64323: [
                    [1507, 1468], 512
                ],
                64324: [
                    [1508, 1468], 512
                ],
                64326: [
                    [1510, 1468], 512
                ],
                64327: [
                    [1511, 1468], 512
                ],
                64328: [
                    [1512, 1468], 512
                ],
                64329: [
                    [1513, 1468], 512
                ],
                64330: [
                    [1514, 1468], 512
                ],
                64331: [
                    [1493, 1465], 512
                ],
                64332: [
                    [1489, 1471], 512
                ],
                64333: [
                    [1499, 1471], 512
                ],
                64334: [
                    [1508, 1471], 512
                ],
                64335: [
                    [1488, 1500], 256
                ],
                64336: [
                    [1649], 256
                ],
                64337: [
                    [1649], 256
                ],
                64338: [
                    [1659], 256
                ],
                64339: [
                    [1659], 256
                ],
                64340: [
                    [1659], 256
                ],
                64341: [
                    [1659], 256
                ],
                64342: [
                    [1662], 256
                ],
                64343: [
                    [1662], 256
                ],
                64344: [
                    [1662], 256
                ],
                64345: [
                    [1662], 256
                ],
                64346: [
                    [1664], 256
                ],
                64347: [
                    [1664], 256
                ],
                64348: [
                    [1664], 256
                ],
                64349: [
                    [1664], 256
                ],
                64350: [
                    [1658], 256
                ],
                64351: [
                    [1658], 256
                ],
                64352: [
                    [1658], 256
                ],
                64353: [
                    [1658], 256
                ],
                64354: [
                    [1663], 256
                ],
                64355: [
                    [1663], 256
                ],
                64356: [
                    [1663], 256
                ],
                64357: [
                    [1663], 256
                ],
                64358: [
                    [1657], 256
                ],
                64359: [
                    [1657], 256
                ],
                64360: [
                    [1657], 256
                ],
                64361: [
                    [1657], 256
                ],
                64362: [
                    [1700], 256
                ],
                64363: [
                    [1700], 256
                ],
                64364: [
                    [1700], 256
                ],
                64365: [
                    [1700], 256
                ],
                64366: [
                    [1702], 256
                ],
                64367: [
                    [1702], 256
                ],
                64368: [
                    [1702], 256
                ],
                64369: [
                    [1702], 256
                ],
                64370: [
                    [1668], 256
                ],
                64371: [
                    [1668], 256
                ],
                64372: [
                    [1668], 256
                ],
                64373: [
                    [1668], 256
                ],
                64374: [
                    [1667], 256
                ],
                64375: [
                    [1667], 256
                ],
                64376: [
                    [1667], 256
                ],
                64377: [
                    [1667], 256
                ],
                64378: [
                    [1670], 256
                ],
                64379: [
                    [1670], 256
                ],
                64380: [
                    [1670], 256
                ],
                64381: [
                    [1670], 256
                ],
                64382: [
                    [1671], 256
                ],
                64383: [
                    [1671], 256
                ],
                64384: [
                    [1671], 256
                ],
                64385: [
                    [1671], 256
                ],
                64386: [
                    [1677], 256
                ],
                64387: [
                    [1677], 256
                ],
                64388: [
                    [1676], 256
                ],
                64389: [
                    [1676], 256
                ],
                64390: [
                    [1678], 256
                ],
                64391: [
                    [1678], 256
                ],
                64392: [
                    [1672], 256
                ],
                64393: [
                    [1672], 256
                ],
                64394: [
                    [1688], 256
                ],
                64395: [
                    [1688], 256
                ],
                64396: [
                    [1681], 256
                ],
                64397: [
                    [1681], 256
                ],
                64398: [
                    [1705], 256
                ],
                64399: [
                    [1705], 256
                ],
                64400: [
                    [1705], 256
                ],
                64401: [
                    [1705], 256
                ],
                64402: [
                    [1711], 256
                ],
                64403: [
                    [1711], 256
                ],
                64404: [
                    [1711], 256
                ],
                64405: [
                    [1711], 256
                ],
                64406: [
                    [1715], 256
                ],
                64407: [
                    [1715], 256
                ],
                64408: [
                    [1715], 256
                ],
                64409: [
                    [1715], 256
                ],
                64410: [
                    [1713], 256
                ],
                64411: [
                    [1713], 256
                ],
                64412: [
                    [1713], 256
                ],
                64413: [
                    [1713], 256
                ],
                64414: [
                    [1722], 256
                ],
                64415: [
                    [1722], 256
                ],
                64416: [
                    [1723], 256
                ],
                64417: [
                    [1723], 256
                ],
                64418: [
                    [1723], 256
                ],
                64419: [
                    [1723], 256
                ],
                64420: [
                    [1728], 256
                ],
                64421: [
                    [1728], 256
                ],
                64422: [
                    [1729], 256
                ],
                64423: [
                    [1729], 256
                ],
                64424: [
                    [1729], 256
                ],
                64425: [
                    [1729], 256
                ],
                64426: [
                    [1726], 256
                ],
                64427: [
                    [1726], 256
                ],
                64428: [
                    [1726], 256
                ],
                64429: [
                    [1726], 256
                ],
                64430: [
                    [1746], 256
                ],
                64431: [
                    [1746], 256
                ],
                64432: [
                    [1747], 256
                ],
                64433: [
                    [1747], 256
                ],
                64467: [
                    [1709], 256
                ],
                64468: [
                    [1709], 256
                ],
                64469: [
                    [1709], 256
                ],
                64470: [
                    [1709], 256
                ],
                64471: [
                    [1735], 256
                ],
                64472: [
                    [1735], 256
                ],
                64473: [
                    [1734], 256
                ],
                64474: [
                    [1734], 256
                ],
                64475: [
                    [1736], 256
                ],
                64476: [
                    [1736], 256
                ],
                64477: [
                    [1655], 256
                ],
                64478: [
                    [1739], 256
                ],
                64479: [
                    [1739], 256
                ],
                64480: [
                    [1733], 256
                ],
                64481: [
                    [1733], 256
                ],
                64482: [
                    [1737], 256
                ],
                64483: [
                    [1737], 256
                ],
                64484: [
                    [1744], 256
                ],
                64485: [
                    [1744], 256
                ],
                64486: [
                    [1744], 256
                ],
                64487: [
                    [1744], 256
                ],
                64488: [
                    [1609], 256
                ],
                64489: [
                    [1609], 256
                ],
                64490: [
                    [1574, 1575], 256
                ],
                64491: [
                    [1574, 1575], 256
                ],
                64492: [
                    [1574, 1749], 256
                ],
                64493: [
                    [1574, 1749], 256
                ],
                64494: [
                    [1574, 1608], 256
                ],
                64495: [
                    [1574, 1608], 256
                ],
                64496: [
                    [1574, 1735], 256
                ],
                64497: [
                    [1574, 1735], 256
                ],
                64498: [
                    [1574, 1734], 256
                ],
                64499: [
                    [1574, 1734], 256
                ],
                64500: [
                    [1574, 1736], 256
                ],
                64501: [
                    [1574, 1736], 256
                ],
                64502: [
                    [1574, 1744], 256
                ],
                64503: [
                    [1574, 1744], 256
                ],
                64504: [
                    [1574, 1744], 256
                ],
                64505: [
                    [1574, 1609], 256
                ],
                64506: [
                    [1574, 1609], 256
                ],
                64507: [
                    [1574, 1609], 256
                ],
                64508: [
                    [1740], 256
                ],
                64509: [
                    [1740], 256
                ],
                64510: [
                    [1740], 256
                ],
                64511: [
                    [1740], 256
                ]
            },
            64512: {
                64512: [
                    [1574, 1580], 256
                ],
                64513: [
                    [1574, 1581], 256
                ],
                64514: [
                    [1574, 1605], 256
                ],
                64515: [
                    [1574, 1609], 256
                ],
                64516: [
                    [1574, 1610], 256
                ],
                64517: [
                    [1576, 1580], 256
                ],
                64518: [
                    [1576, 1581], 256
                ],
                64519: [
                    [1576, 1582], 256
                ],
                64520: [
                    [1576, 1605], 256
                ],
                64521: [
                    [1576, 1609], 256
                ],
                64522: [
                    [1576, 1610], 256
                ],
                64523: [
                    [1578, 1580], 256
                ],
                64524: [
                    [1578, 1581], 256
                ],
                64525: [
                    [1578, 1582], 256
                ],
                64526: [
                    [1578, 1605], 256
                ],
                64527: [
                    [1578, 1609], 256
                ],
                64528: [
                    [1578, 1610], 256
                ],
                64529: [
                    [1579, 1580], 256
                ],
                64530: [
                    [1579, 1605], 256
                ],
                64531: [
                    [1579, 1609], 256
                ],
                64532: [
                    [1579, 1610], 256
                ],
                64533: [
                    [1580, 1581], 256
                ],
                64534: [
                    [1580, 1605], 256
                ],
                64535: [
                    [1581, 1580], 256
                ],
                64536: [
                    [1581, 1605], 256
                ],
                64537: [
                    [1582, 1580], 256
                ],
                64538: [
                    [1582, 1581], 256
                ],
                64539: [
                    [1582, 1605], 256
                ],
                64540: [
                    [1587, 1580], 256
                ],
                64541: [
                    [1587, 1581], 256
                ],
                64542: [
                    [1587, 1582], 256
                ],
                64543: [
                    [1587, 1605], 256
                ],
                64544: [
                    [1589, 1581], 256
                ],
                64545: [
                    [1589, 1605], 256
                ],
                64546: [
                    [1590, 1580], 256
                ],
                64547: [
                    [1590, 1581], 256
                ],
                64548: [
                    [1590, 1582], 256
                ],
                64549: [
                    [1590, 1605], 256
                ],
                64550: [
                    [1591, 1581], 256
                ],
                64551: [
                    [1591, 1605], 256
                ],
                64552: [
                    [1592, 1605], 256
                ],
                64553: [
                    [1593, 1580], 256
                ],
                64554: [
                    [1593, 1605], 256
                ],
                64555: [
                    [1594, 1580], 256
                ],
                64556: [
                    [1594, 1605], 256
                ],
                64557: [
                    [1601, 1580], 256
                ],
                64558: [
                    [1601, 1581], 256
                ],
                64559: [
                    [1601, 1582], 256
                ],
                64560: [
                    [1601, 1605], 256
                ],
                64561: [
                    [1601, 1609], 256
                ],
                64562: [
                    [1601, 1610], 256
                ],
                64563: [
                    [1602, 1581], 256
                ],
                64564: [
                    [1602, 1605], 256
                ],
                64565: [
                    [1602, 1609], 256
                ],
                64566: [
                    [1602, 1610], 256
                ],
                64567: [
                    [1603, 1575], 256
                ],
                64568: [
                    [1603, 1580], 256
                ],
                64569: [
                    [1603, 1581], 256
                ],
                64570: [
                    [1603, 1582], 256
                ],
                64571: [
                    [1603, 1604], 256
                ],
                64572: [
                    [1603, 1605], 256
                ],
                64573: [
                    [1603, 1609], 256
                ],
                64574: [
                    [1603, 1610], 256
                ],
                64575: [
                    [1604, 1580], 256
                ],
                64576: [
                    [1604, 1581], 256
                ],
                64577: [
                    [1604, 1582], 256
                ],
                64578: [
                    [1604, 1605], 256
                ],
                64579: [
                    [1604, 1609], 256
                ],
                64580: [
                    [1604, 1610], 256
                ],
                64581: [
                    [1605, 1580], 256
                ],
                64582: [
                    [1605, 1581], 256
                ],
                64583: [
                    [1605, 1582], 256
                ],
                64584: [
                    [1605, 1605], 256
                ],
                64585: [
                    [1605, 1609], 256
                ],
                64586: [
                    [1605, 1610], 256
                ],
                64587: [
                    [1606, 1580], 256
                ],
                64588: [
                    [1606, 1581], 256
                ],
                64589: [
                    [1606, 1582], 256
                ],
                64590: [
                    [1606, 1605], 256
                ],
                64591: [
                    [1606, 1609], 256
                ],
                64592: [
                    [1606, 1610], 256
                ],
                64593: [
                    [1607, 1580], 256
                ],
                64594: [
                    [1607, 1605], 256
                ],
                64595: [
                    [1607, 1609], 256
                ],
                64596: [
                    [1607, 1610], 256
                ],
                64597: [
                    [1610, 1580], 256
                ],
                64598: [
                    [1610, 1581], 256
                ],
                64599: [
                    [1610, 1582], 256
                ],
                64600: [
                    [1610, 1605], 256
                ],
                64601: [
                    [1610, 1609], 256
                ],
                64602: [
                    [1610, 1610], 256
                ],
                64603: [
                    [1584, 1648], 256
                ],
                64604: [
                    [1585, 1648], 256
                ],
                64605: [
                    [1609, 1648], 256
                ],
                64606: [
                    [32, 1612, 1617], 256
                ],
                64607: [
                    [32, 1613, 1617], 256
                ],
                64608: [
                    [32, 1614, 1617], 256
                ],
                64609: [
                    [32, 1615, 1617], 256
                ],
                64610: [
                    [32, 1616, 1617], 256
                ],
                64611: [
                    [32, 1617, 1648], 256
                ],
                64612: [
                    [1574, 1585], 256
                ],
                64613: [
                    [1574, 1586], 256
                ],
                64614: [
                    [1574, 1605], 256
                ],
                64615: [
                    [1574, 1606], 256
                ],
                64616: [
                    [1574, 1609], 256
                ],
                64617: [
                    [1574, 1610], 256
                ],
                64618: [
                    [1576, 1585], 256
                ],
                64619: [
                    [1576, 1586], 256
                ],
                64620: [
                    [1576, 1605], 256
                ],
                64621: [
                    [1576, 1606], 256
                ],
                64622: [
                    [1576, 1609], 256
                ],
                64623: [
                    [1576, 1610], 256
                ],
                64624: [
                    [1578, 1585], 256
                ],
                64625: [
                    [1578, 1586], 256
                ],
                64626: [
                    [1578, 1605], 256
                ],
                64627: [
                    [1578, 1606], 256
                ],
                64628: [
                    [1578, 1609], 256
                ],
                64629: [
                    [1578, 1610], 256
                ],
                64630: [
                    [1579, 1585], 256
                ],
                64631: [
                    [1579, 1586], 256
                ],
                64632: [
                    [1579, 1605], 256
                ],
                64633: [
                    [1579, 1606], 256
                ],
                64634: [
                    [1579, 1609], 256
                ],
                64635: [
                    [1579, 1610], 256
                ],
                64636: [
                    [1601, 1609], 256
                ],
                64637: [
                    [1601, 1610], 256
                ],
                64638: [
                    [1602, 1609], 256
                ],
                64639: [
                    [1602, 1610], 256
                ],
                64640: [
                    [1603, 1575], 256
                ],
                64641: [
                    [1603, 1604], 256
                ],
                64642: [
                    [1603, 1605], 256
                ],
                64643: [
                    [1603, 1609], 256
                ],
                64644: [
                    [1603, 1610], 256
                ],
                64645: [
                    [1604, 1605], 256
                ],
                64646: [
                    [1604, 1609], 256
                ],
                64647: [
                    [1604, 1610], 256
                ],
                64648: [
                    [1605, 1575], 256
                ],
                64649: [
                    [1605, 1605], 256
                ],
                64650: [
                    [1606, 1585], 256
                ],
                64651: [
                    [1606, 1586], 256
                ],
                64652: [
                    [1606, 1605], 256
                ],
                64653: [
                    [1606, 1606], 256
                ],
                64654: [
                    [1606, 1609], 256
                ],
                64655: [
                    [1606, 1610], 256
                ],
                64656: [
                    [1609, 1648], 256
                ],
                64657: [
                    [1610, 1585], 256
                ],
                64658: [
                    [1610, 1586], 256
                ],
                64659: [
                    [1610, 1605], 256
                ],
                64660: [
                    [1610, 1606], 256
                ],
                64661: [
                    [1610, 1609], 256
                ],
                64662: [
                    [1610, 1610], 256
                ],
                64663: [
                    [1574, 1580], 256
                ],
                64664: [
                    [1574, 1581], 256
                ],
                64665: [
                    [1574, 1582], 256
                ],
                64666: [
                    [1574, 1605], 256
                ],
                64667: [
                    [1574, 1607], 256
                ],
                64668: [
                    [1576, 1580], 256
                ],
                64669: [
                    [1576, 1581], 256
                ],
                64670: [
                    [1576, 1582], 256
                ],
                64671: [
                    [1576, 1605], 256
                ],
                64672: [
                    [1576, 1607], 256
                ],
                64673: [
                    [1578, 1580], 256
                ],
                64674: [
                    [1578, 1581], 256
                ],
                64675: [
                    [1578, 1582], 256
                ],
                64676: [
                    [1578, 1605], 256
                ],
                64677: [
                    [1578, 1607], 256
                ],
                64678: [
                    [1579, 1605], 256
                ],
                64679: [
                    [1580, 1581], 256
                ],
                64680: [
                    [1580, 1605], 256
                ],
                64681: [
                    [1581, 1580], 256
                ],
                64682: [
                    [1581, 1605], 256
                ],
                64683: [
                    [1582, 1580], 256
                ],
                64684: [
                    [1582, 1605], 256
                ],
                64685: [
                    [1587, 1580], 256
                ],
                64686: [
                    [1587, 1581], 256
                ],
                64687: [
                    [1587, 1582], 256
                ],
                64688: [
                    [1587, 1605], 256
                ],
                64689: [
                    [1589, 1581], 256
                ],
                64690: [
                    [1589, 1582], 256
                ],
                64691: [
                    [1589, 1605], 256
                ],
                64692: [
                    [1590, 1580], 256
                ],
                64693: [
                    [1590, 1581], 256
                ],
                64694: [
                    [1590, 1582], 256
                ],
                64695: [
                    [1590, 1605], 256
                ],
                64696: [
                    [1591, 1581], 256
                ],
                64697: [
                    [1592, 1605], 256
                ],
                64698: [
                    [1593, 1580], 256
                ],
                64699: [
                    [1593, 1605], 256
                ],
                64700: [
                    [1594, 1580], 256
                ],
                64701: [
                    [1594, 1605], 256
                ],
                64702: [
                    [1601, 1580], 256
                ],
                64703: [
                    [1601, 1581], 256
                ],
                64704: [
                    [1601, 1582], 256
                ],
                64705: [
                    [1601, 1605], 256
                ],
                64706: [
                    [1602, 1581], 256
                ],
                64707: [
                    [1602, 1605], 256
                ],
                64708: [
                    [1603, 1580], 256
                ],
                64709: [
                    [1603, 1581], 256
                ],
                64710: [
                    [1603, 1582], 256
                ],
                64711: [
                    [1603, 1604], 256
                ],
                64712: [
                    [1603, 1605], 256
                ],
                64713: [
                    [1604, 1580], 256
                ],
                64714: [
                    [1604, 1581], 256
                ],
                64715: [
                    [1604, 1582], 256
                ],
                64716: [
                    [1604, 1605], 256
                ],
                64717: [
                    [1604, 1607], 256
                ],
                64718: [
                    [1605, 1580], 256
                ],
                64719: [
                    [1605, 1581], 256
                ],
                64720: [
                    [1605, 1582], 256
                ],
                64721: [
                    [1605, 1605], 256
                ],
                64722: [
                    [1606, 1580], 256
                ],
                64723: [
                    [1606, 1581], 256
                ],
                64724: [
                    [1606, 1582], 256
                ],
                64725: [
                    [1606, 1605], 256
                ],
                64726: [
                    [1606, 1607], 256
                ],
                64727: [
                    [1607, 1580], 256
                ],
                64728: [
                    [1607, 1605], 256
                ],
                64729: [
                    [1607, 1648], 256
                ],
                64730: [
                    [1610, 1580], 256
                ],
                64731: [
                    [1610, 1581], 256
                ],
                64732: [
                    [1610, 1582], 256
                ],
                64733: [
                    [1610, 1605], 256
                ],
                64734: [
                    [1610, 1607], 256
                ],
                64735: [
                    [1574, 1605], 256
                ],
                64736: [
                    [1574, 1607], 256
                ],
                64737: [
                    [1576, 1605], 256
                ],
                64738: [
                    [1576, 1607], 256
                ],
                64739: [
                    [1578, 1605], 256
                ],
                64740: [
                    [1578, 1607], 256
                ],
                64741: [
                    [1579, 1605], 256
                ],
                64742: [
                    [1579, 1607], 256
                ],
                64743: [
                    [1587, 1605], 256
                ],
                64744: [
                    [1587, 1607], 256
                ],
                64745: [
                    [1588, 1605], 256
                ],
                64746: [
                    [1588, 1607], 256
                ],
                64747: [
                    [1603, 1604], 256
                ],
                64748: [
                    [1603, 1605], 256
                ],
                64749: [
                    [1604, 1605], 256
                ],
                64750: [
                    [1606, 1605], 256
                ],
                64751: [
                    [1606, 1607], 256
                ],
                64752: [
                    [1610, 1605], 256
                ],
                64753: [
                    [1610, 1607], 256
                ],
                64754: [
                    [1600, 1614, 1617], 256
                ],
                64755: [
                    [1600, 1615, 1617], 256
                ],
                64756: [
                    [1600, 1616, 1617], 256
                ],
                64757: [
                    [1591, 1609], 256
                ],
                64758: [
                    [1591, 1610], 256
                ],
                64759: [
                    [1593, 1609], 256
                ],
                64760: [
                    [1593, 1610], 256
                ],
                64761: [
                    [1594, 1609], 256
                ],
                64762: [
                    [1594, 1610], 256
                ],
                64763: [
                    [1587, 1609], 256
                ],
                64764: [
                    [1587, 1610], 256
                ],
                64765: [
                    [1588, 1609], 256
                ],
                64766: [
                    [1588, 1610], 256
                ],
                64767: [
                    [1581, 1609], 256
                ]
            },
            64768: {
                64768: [
                    [1581, 1610], 256
                ],
                64769: [
                    [1580, 1609], 256
                ],
                64770: [
                    [1580, 1610], 256
                ],
                64771: [
                    [1582, 1609], 256
                ],
                64772: [
                    [1582, 1610], 256
                ],
                64773: [
                    [1589, 1609], 256
                ],
                64774: [
                    [1589, 1610], 256
                ],
                64775: [
                    [1590, 1609], 256
                ],
                64776: [
                    [1590, 1610], 256
                ],
                64777: [
                    [1588, 1580], 256
                ],
                64778: [
                    [1588, 1581], 256
                ],
                64779: [
                    [1588, 1582], 256
                ],
                64780: [
                    [1588, 1605], 256
                ],
                64781: [
                    [1588, 1585], 256
                ],
                64782: [
                    [1587, 1585], 256
                ],
                64783: [
                    [1589, 1585], 256
                ],
                64784: [
                    [1590, 1585], 256
                ],
                64785: [
                    [1591, 1609], 256
                ],
                64786: [
                    [1591, 1610], 256
                ],
                64787: [
                    [1593, 1609], 256
                ],
                64788: [
                    [1593, 1610], 256
                ],
                64789: [
                    [1594, 1609], 256
                ],
                64790: [
                    [1594, 1610], 256
                ],
                64791: [
                    [1587, 1609], 256
                ],
                64792: [
                    [1587, 1610], 256
                ],
                64793: [
                    [1588, 1609], 256
                ],
                64794: [
                    [1588, 1610], 256
                ],
                64795: [
                    [1581, 1609], 256
                ],
                64796: [
                    [1581, 1610], 256
                ],
                64797: [
                    [1580, 1609], 256
                ],
                64798: [
                    [1580, 1610], 256
                ],
                64799: [
                    [1582, 1609], 256
                ],
                64800: [
                    [1582, 1610], 256
                ],
                64801: [
                    [1589, 1609], 256
                ],
                64802: [
                    [1589, 1610], 256
                ],
                64803: [
                    [1590, 1609], 256
                ],
                64804: [
                    [1590, 1610], 256
                ],
                64805: [
                    [1588, 1580], 256
                ],
                64806: [
                    [1588, 1581], 256
                ],
                64807: [
                    [1588, 1582], 256
                ],
                64808: [
                    [1588, 1605], 256
                ],
                64809: [
                    [1588, 1585], 256
                ],
                64810: [
                    [1587, 1585], 256
                ],
                64811: [
                    [1589, 1585], 256
                ],
                64812: [
                    [1590, 1585], 256
                ],
                64813: [
                    [1588, 1580], 256
                ],
                64814: [
                    [1588, 1581], 256
                ],
                64815: [
                    [1588, 1582], 256
                ],
                64816: [
                    [1588, 1605], 256
                ],
                64817: [
                    [1587, 1607], 256
                ],
                64818: [
                    [1588, 1607], 256
                ],
                64819: [
                    [1591, 1605], 256
                ],
                64820: [
                    [1587, 1580], 256
                ],
                64821: [
                    [1587, 1581], 256
                ],
                64822: [
                    [1587, 1582], 256
                ],
                64823: [
                    [1588, 1580], 256
                ],
                64824: [
                    [1588, 1581], 256
                ],
                64825: [
                    [1588, 1582], 256
                ],
                64826: [
                    [1591, 1605], 256
                ],
                64827: [
                    [1592, 1605], 256
                ],
                64828: [
                    [1575, 1611], 256
                ],
                64829: [
                    [1575, 1611], 256
                ],
                64848: [
                    [1578, 1580, 1605], 256
                ],
                64849: [
                    [1578, 1581, 1580], 256
                ],
                64850: [
                    [1578, 1581, 1580], 256
                ],
                64851: [
                    [1578, 1581, 1605], 256
                ],
                64852: [
                    [1578, 1582, 1605], 256
                ],
                64853: [
                    [1578, 1605, 1580], 256
                ],
                64854: [
                    [1578, 1605, 1581], 256
                ],
                64855: [
                    [1578, 1605, 1582], 256
                ],
                64856: [
                    [1580, 1605, 1581], 256
                ],
                64857: [
                    [1580, 1605, 1581], 256
                ],
                64858: [
                    [1581, 1605, 1610], 256
                ],
                64859: [
                    [1581, 1605, 1609], 256
                ],
                64860: [
                    [1587, 1581, 1580], 256
                ],
                64861: [
                    [1587, 1580, 1581], 256
                ],
                64862: [
                    [1587, 1580, 1609], 256
                ],
                64863: [
                    [1587, 1605, 1581], 256
                ],
                64864: [
                    [1587, 1605, 1581], 256
                ],
                64865: [
                    [1587, 1605, 1580], 256
                ],
                64866: [
                    [1587, 1605, 1605], 256
                ],
                64867: [
                    [1587, 1605, 1605], 256
                ],
                64868: [
                    [1589, 1581, 1581], 256
                ],
                64869: [
                    [1589, 1581, 1581], 256
                ],
                64870: [
                    [1589, 1605, 1605], 256
                ],
                64871: [
                    [1588, 1581, 1605], 256
                ],
                64872: [
                    [1588, 1581, 1605], 256
                ],
                64873: [
                    [1588, 1580, 1610], 256
                ],
                64874: [
                    [1588, 1605, 1582], 256
                ],
                64875: [
                    [1588, 1605, 1582], 256
                ],
                64876: [
                    [1588, 1605, 1605], 256
                ],
                64877: [
                    [1588, 1605, 1605], 256
                ],
                64878: [
                    [1590, 1581, 1609], 256
                ],
                64879: [
                    [1590, 1582, 1605], 256
                ],
                64880: [
                    [1590, 1582, 1605], 256
                ],
                64881: [
                    [1591, 1605, 1581], 256
                ],
                64882: [
                    [1591, 1605, 1581], 256
                ],
                64883: [
                    [1591, 1605, 1605], 256
                ],
                64884: [
                    [1591, 1605, 1610], 256
                ],
                64885: [
                    [1593, 1580, 1605], 256
                ],
                64886: [
                    [1593, 1605, 1605], 256
                ],
                64887: [
                    [1593, 1605, 1605], 256
                ],
                64888: [
                    [1593, 1605, 1609], 256
                ],
                64889: [
                    [1594, 1605, 1605], 256
                ],
                64890: [
                    [1594, 1605, 1610], 256
                ],
                64891: [
                    [1594, 1605, 1609], 256
                ],
                64892: [
                    [1601, 1582, 1605], 256
                ],
                64893: [
                    [1601, 1582, 1605], 256
                ],
                64894: [
                    [1602, 1605, 1581], 256
                ],
                64895: [
                    [1602, 1605, 1605], 256
                ],
                64896: [
                    [1604, 1581, 1605], 256
                ],
                64897: [
                    [1604, 1581, 1610], 256
                ],
                64898: [
                    [1604, 1581, 1609], 256
                ],
                64899: [
                    [1604, 1580, 1580], 256
                ],
                64900: [
                    [1604, 1580, 1580], 256
                ],
                64901: [
                    [1604, 1582, 1605], 256
                ],
                64902: [
                    [1604, 1582, 1605], 256
                ],
                64903: [
                    [1604, 1605, 1581], 256
                ],
                64904: [
                    [1604, 1605, 1581], 256
                ],
                64905: [
                    [1605, 1581, 1580], 256
                ],
                64906: [
                    [1605, 1581, 1605], 256
                ],
                64907: [
                    [1605, 1581, 1610], 256
                ],
                64908: [
                    [1605, 1580, 1581], 256
                ],
                64909: [
                    [1605, 1580, 1605], 256
                ],
                64910: [
                    [1605, 1582, 1580], 256
                ],
                64911: [
                    [1605, 1582, 1605], 256
                ],
                64914: [
                    [1605, 1580, 1582], 256
                ],
                64915: [
                    [1607, 1605, 1580], 256
                ],
                64916: [
                    [1607, 1605, 1605], 256
                ],
                64917: [
                    [1606, 1581, 1605], 256
                ],
                64918: [
                    [1606, 1581, 1609], 256
                ],
                64919: [
                    [1606, 1580, 1605], 256
                ],
                64920: [
                    [1606, 1580, 1605], 256
                ],
                64921: [
                    [1606, 1580, 1609], 256
                ],
                64922: [
                    [1606, 1605, 1610], 256
                ],
                64923: [
                    [1606, 1605, 1609], 256
                ],
                64924: [
                    [1610, 1605, 1605], 256
                ],
                64925: [
                    [1610, 1605, 1605], 256
                ],
                64926: [
                    [1576, 1582, 1610], 256
                ],
                64927: [
                    [1578, 1580, 1610], 256
                ],
                64928: [
                    [1578, 1580, 1609], 256
                ],
                64929: [
                    [1578, 1582, 1610], 256
                ],
                64930: [
                    [1578, 1582, 1609], 256
                ],
                64931: [
                    [1578, 1605, 1610], 256
                ],
                64932: [
                    [1578, 1605, 1609], 256
                ],
                64933: [
                    [1580, 1605, 1610], 256
                ],
                64934: [
                    [1580, 1581, 1609], 256
                ],
                64935: [
                    [1580, 1605, 1609], 256
                ],
                64936: [
                    [1587, 1582, 1609], 256
                ],
                64937: [
                    [1589, 1581, 1610], 256
                ],
                64938: [
                    [1588, 1581, 1610], 256
                ],
                64939: [
                    [1590, 1581, 1610], 256
                ],
                64940: [
                    [1604, 1580, 1610], 256
                ],
                64941: [
                    [1604, 1605, 1610], 256
                ],
                64942: [
                    [1610, 1581, 1610], 256
                ],
                64943: [
                    [1610, 1580, 1610], 256
                ],
                64944: [
                    [1610, 1605, 1610], 256
                ],
                64945: [
                    [1605, 1605, 1610], 256
                ],
                64946: [
                    [1602, 1605, 1610], 256
                ],
                64947: [
                    [1606, 1581, 1610], 256
                ],
                64948: [
                    [1602, 1605, 1581], 256
                ],
                64949: [
                    [1604, 1581, 1605], 256
                ],
                64950: [
                    [1593, 1605, 1610], 256
                ],
                64951: [
                    [1603, 1605, 1610], 256
                ],
                64952: [
                    [1606, 1580, 1581], 256
                ],
                64953: [
                    [1605, 1582, 1610], 256
                ],
                64954: [
                    [1604, 1580, 1605], 256
                ],
                64955: [
                    [1603, 1605, 1605], 256
                ],
                64956: [
                    [1604, 1580, 1605], 256
                ],
                64957: [
                    [1606, 1580, 1581], 256
                ],
                64958: [
                    [1580, 1581, 1610], 256
                ],
                64959: [
                    [1581, 1580, 1610], 256
                ],
                64960: [
                    [1605, 1580, 1610], 256
                ],
                64961: [
                    [1601, 1605, 1610], 256
                ],
                64962: [
                    [1576, 1581, 1610], 256
                ],
                64963: [
                    [1603, 1605, 1605], 256
                ],
                64964: [
                    [1593, 1580, 1605], 256
                ],
                64965: [
                    [1589, 1605, 1605], 256
                ],
                64966: [
                    [1587, 1582, 1610], 256
                ],
                64967: [
                    [1606, 1580, 1610], 256
                ],
                65008: [
                    [1589, 1604, 1746], 256
                ],
                65009: [
                    [1602, 1604, 1746], 256
                ],
                65010: [
                    [1575, 1604, 1604, 1607], 256
                ],
                65011: [
                    [1575, 1603, 1576, 1585], 256
                ],
                65012: [
                    [1605, 1581, 1605, 1583], 256
                ],
                65013: [
                    [1589, 1604, 1593, 1605], 256
                ],
                65014: [
                    [1585, 1587, 1608, 1604], 256
                ],
                65015: [
                    [1593, 1604, 1610, 1607], 256
                ],
                65016: [
                    [1608, 1587, 1604, 1605], 256
                ],
                65017: [
                    [1589, 1604, 1609], 256
                ],
                65018: [
                    [1589, 1604, 1609, 32, 1575, 1604, 1604, 1607, 32, 1593, 1604, 1610, 1607, 32, 1608, 1587, 1604, 1605], 256
                ],
                65019: [
                    [1580, 1604, 32, 1580, 1604, 1575, 1604, 1607], 256
                ],
                65020: [
                    [1585, 1740, 1575, 1604], 256
                ]
            },
            65024: {
                65040: [
                    [44], 256
                ],
                65041: [
                    [12289], 256
                ],
                65042: [
                    [12290], 256
                ],
                65043: [
                    [58], 256
                ],
                65044: [
                    [59], 256
                ],
                65045: [
                    [33], 256
                ],
                65046: [
                    [63], 256
                ],
                65047: [
                    [12310], 256
                ],
                65048: [
                    [12311], 256
                ],
                65049: [
                    [8230], 256
                ],
                65056: [, 230],
                65057: [, 230],
                65058: [, 230],
                65059: [, 230],
                65060: [, 230],
                65061: [, 230],
                65062: [, 230],
                65063: [, 220],
                65064: [, 220],
                65065: [, 220],
                65066: [, 220],
                65067: [, 220],
                65068: [, 220],
                65069: [, 220],
                65072: [
                    [8229], 256
                ],
                65073: [
                    [8212], 256
                ],
                65074: [
                    [8211], 256
                ],
                65075: [
                    [95], 256
                ],
                65076: [
                    [95], 256
                ],
                65077: [
                    [40], 256
                ],
                65078: [
                    [41], 256
                ],
                65079: [
                    [123], 256
                ],
                65080: [
                    [125], 256
                ],
                65081: [
                    [12308], 256
                ],
                65082: [
                    [12309], 256
                ],
                65083: [
                    [12304], 256
                ],
                65084: [
                    [12305], 256
                ],
                65085: [
                    [12298], 256
                ],
                65086: [
                    [12299], 256
                ],
                65087: [
                    [12296], 256
                ],
                65088: [
                    [12297], 256
                ],
                65089: [
                    [12300], 256
                ],
                65090: [
                    [12301], 256
                ],
                65091: [
                    [12302], 256
                ],
                65092: [
                    [12303], 256
                ],
                65095: [
                    [91], 256
                ],
                65096: [
                    [93], 256
                ],
                65097: [
                    [8254], 256
                ],
                65098: [
                    [8254], 256
                ],
                65099: [
                    [8254], 256
                ],
                65100: [
                    [8254], 256
                ],
                65101: [
                    [95], 256
                ],
                65102: [
                    [95], 256
                ],
                65103: [
                    [95], 256
                ],
                65104: [
                    [44], 256
                ],
                65105: [
                    [12289], 256
                ],
                65106: [
                    [46], 256
                ],
                65108: [
                    [59], 256
                ],
                65109: [
                    [58], 256
                ],
                65110: [
                    [63], 256
                ],
                65111: [
                    [33], 256
                ],
                65112: [
                    [8212], 256
                ],
                65113: [
                    [40], 256
                ],
                65114: [
                    [41], 256
                ],
                65115: [
                    [123], 256
                ],
                65116: [
                    [125], 256
                ],
                65117: [
                    [12308], 256
                ],
                65118: [
                    [12309], 256
                ],
                65119: [
                    [35], 256
                ],
                65120: [
                    [38], 256
                ],
                65121: [
                    [42], 256
                ],
                65122: [
                    [43], 256
                ],
                65123: [
                    [45], 256
                ],
                65124: [
                    [60], 256
                ],
                65125: [
                    [62], 256
                ],
                65126: [
                    [61], 256
                ],
                65128: [
                    [92], 256
                ],
                65129: [
                    [36], 256
                ],
                65130: [
                    [37], 256
                ],
                65131: [
                    [64], 256
                ],
                65136: [
                    [32, 1611], 256
                ],
                65137: [
                    [1600, 1611], 256
                ],
                65138: [
                    [32, 1612], 256
                ],
                65140: [
                    [32, 1613], 256
                ],
                65142: [
                    [32, 1614], 256
                ],
                65143: [
                    [1600, 1614], 256
                ],
                65144: [
                    [32, 1615], 256
                ],
                65145: [
                    [1600, 1615], 256
                ],
                65146: [
                    [32, 1616], 256
                ],
                65147: [
                    [1600, 1616], 256
                ],
                65148: [
                    [32, 1617], 256
                ],
                65149: [
                    [1600, 1617], 256
                ],
                65150: [
                    [32, 1618], 256
                ],
                65151: [
                    [1600, 1618], 256
                ],
                65152: [
                    [1569], 256
                ],
                65153: [
                    [1570], 256
                ],
                65154: [
                    [1570], 256
                ],
                65155: [
                    [1571], 256
                ],
                65156: [
                    [1571], 256
                ],
                65157: [
                    [1572], 256
                ],
                65158: [
                    [1572], 256
                ],
                65159: [
                    [1573], 256
                ],
                65160: [
                    [1573], 256
                ],
                65161: [
                    [1574], 256
                ],
                65162: [
                    [1574], 256
                ],
                65163: [
                    [1574], 256
                ],
                65164: [
                    [1574], 256
                ],
                65165: [
                    [1575], 256
                ],
                65166: [
                    [1575], 256
                ],
                65167: [
                    [1576], 256
                ],
                65168: [
                    [1576], 256
                ],
                65169: [
                    [1576], 256
                ],
                65170: [
                    [1576], 256
                ],
                65171: [
                    [1577], 256
                ],
                65172: [
                    [1577], 256
                ],
                65173: [
                    [1578], 256
                ],
                65174: [
                    [1578], 256
                ],
                65175: [
                    [1578], 256
                ],
                65176: [
                    [1578], 256
                ],
                65177: [
                    [1579], 256
                ],
                65178: [
                    [1579], 256
                ],
                65179: [
                    [1579], 256
                ],
                65180: [
                    [1579], 256
                ],
                65181: [
                    [1580], 256
                ],
                65182: [
                    [1580], 256
                ],
                65183: [
                    [1580], 256
                ],
                65184: [
                    [1580], 256
                ],
                65185: [
                    [1581], 256
                ],
                65186: [
                    [1581], 256
                ],
                65187: [
                    [1581], 256
                ],
                65188: [
                    [1581], 256
                ],
                65189: [
                    [1582], 256
                ],
                65190: [
                    [1582], 256
                ],
                65191: [
                    [1582], 256
                ],
                65192: [
                    [1582], 256
                ],
                65193: [
                    [1583], 256
                ],
                65194: [
                    [1583], 256
                ],
                65195: [
                    [1584], 256
                ],
                65196: [
                    [1584], 256
                ],
                65197: [
                    [1585], 256
                ],
                65198: [
                    [1585], 256
                ],
                65199: [
                    [1586], 256
                ],
                65200: [
                    [1586], 256
                ],
                65201: [
                    [1587], 256
                ],
                65202: [
                    [1587], 256
                ],
                65203: [
                    [1587], 256
                ],
                65204: [
                    [1587], 256
                ],
                65205: [
                    [1588], 256
                ],
                65206: [
                    [1588], 256
                ],
                65207: [
                    [1588], 256
                ],
                65208: [
                    [1588], 256
                ],
                65209: [
                    [1589], 256
                ],
                65210: [
                    [1589], 256
                ],
                65211: [
                    [1589], 256
                ],
                65212: [
                    [1589], 256
                ],
                65213: [
                    [1590], 256
                ],
                65214: [
                    [1590], 256
                ],
                65215: [
                    [1590], 256
                ],
                65216: [
                    [1590], 256
                ],
                65217: [
                    [1591], 256
                ],
                65218: [
                    [1591], 256
                ],
                65219: [
                    [1591], 256
                ],
                65220: [
                    [1591], 256
                ],
                65221: [
                    [1592], 256
                ],
                65222: [
                    [1592], 256
                ],
                65223: [
                    [1592], 256
                ],
                65224: [
                    [1592], 256
                ],
                65225: [
                    [1593], 256
                ],
                65226: [
                    [1593], 256
                ],
                65227: [
                    [1593], 256
                ],
                65228: [
                    [1593], 256
                ],
                65229: [
                    [1594], 256
                ],
                65230: [
                    [1594], 256
                ],
                65231: [
                    [1594], 256
                ],
                65232: [
                    [1594], 256
                ],
                65233: [
                    [1601], 256
                ],
                65234: [
                    [1601], 256
                ],
                65235: [
                    [1601], 256
                ],
                65236: [
                    [1601], 256
                ],
                65237: [
                    [1602], 256
                ],
                65238: [
                    [1602], 256
                ],
                65239: [
                    [1602], 256
                ],
                65240: [
                    [1602], 256
                ],
                65241: [
                    [1603], 256
                ],
                65242: [
                    [1603], 256
                ],
                65243: [
                    [1603], 256
                ],
                65244: [
                    [1603], 256
                ],
                65245: [
                    [1604], 256
                ],
                65246: [
                    [1604], 256
                ],
                65247: [
                    [1604], 256
                ],
                65248: [
                    [1604], 256
                ],
                65249: [
                    [1605], 256
                ],
                65250: [
                    [1605], 256
                ],
                65251: [
                    [1605], 256
                ],
                65252: [
                    [1605], 256
                ],
                65253: [
                    [1606], 256
                ],
                65254: [
                    [1606], 256
                ],
                65255: [
                    [1606], 256
                ],
                65256: [
                    [1606], 256
                ],
                65257: [
                    [1607], 256
                ],
                65258: [
                    [1607], 256
                ],
                65259: [
                    [1607], 256
                ],
                65260: [
                    [1607], 256
                ],
                65261: [
                    [1608], 256
                ],
                65262: [
                    [1608], 256
                ],
                65263: [
                    [1609], 256
                ],
                65264: [
                    [1609], 256
                ],
                65265: [
                    [1610], 256
                ],
                65266: [
                    [1610], 256
                ],
                65267: [
                    [1610], 256
                ],
                65268: [
                    [1610], 256
                ],
                65269: [
                    [1604, 1570], 256
                ],
                65270: [
                    [1604, 1570], 256
                ],
                65271: [
                    [1604, 1571], 256
                ],
                65272: [
                    [1604, 1571], 256
                ],
                65273: [
                    [1604, 1573], 256
                ],
                65274: [
                    [1604, 1573], 256
                ],
                65275: [
                    [1604, 1575], 256
                ],
                65276: [
                    [1604, 1575], 256
                ]
            },
            65280: {
                65281: [
                    [33], 256
                ],
                65282: [
                    [34], 256
                ],
                65283: [
                    [35], 256
                ],
                65284: [
                    [36], 256
                ],
                65285: [
                    [37], 256
                ],
                65286: [
                    [38], 256
                ],
                65287: [
                    [39], 256
                ],
                65288: [
                    [40], 256
                ],
                65289: [
                    [41], 256
                ],
                65290: [
                    [42], 256
                ],
                65291: [
                    [43], 256
                ],
                65292: [
                    [44], 256
                ],
                65293: [
                    [45], 256
                ],
                65294: [
                    [46], 256
                ],
                65295: [
                    [47], 256
                ],
                65296: [
                    [48], 256
                ],
                65297: [
                    [49], 256
                ],
                65298: [
                    [50], 256
                ],
                65299: [
                    [51], 256
                ],
                65300: [
                    [52], 256
                ],
                65301: [
                    [53], 256
                ],
                65302: [
                    [54], 256
                ],
                65303: [
                    [55], 256
                ],
                65304: [
                    [56], 256
                ],
                65305: [
                    [57], 256
                ],
                65306: [
                    [58], 256
                ],
                65307: [
                    [59], 256
                ],
                65308: [
                    [60], 256
                ],
                65309: [
                    [61], 256
                ],
                65310: [
                    [62], 256
                ],
                65311: [
                    [63], 256
                ],
                65312: [
                    [64], 256
                ],
                65313: [
                    [65], 256
                ],
                65314: [
                    [66], 256
                ],
                65315: [
                    [67], 256
                ],
                65316: [
                    [68], 256
                ],
                65317: [
                    [69], 256
                ],
                65318: [
                    [70], 256
                ],
                65319: [
                    [71], 256
                ],
                65320: [
                    [72], 256
                ],
                65321: [
                    [73], 256
                ],
                65322: [
                    [74], 256
                ],
                65323: [
                    [75], 256
                ],
                65324: [
                    [76], 256
                ],
                65325: [
                    [77], 256
                ],
                65326: [
                    [78], 256
                ],
                65327: [
                    [79], 256
                ],
                65328: [
                    [80], 256
                ],
                65329: [
                    [81], 256
                ],
                65330: [
                    [82], 256
                ],
                65331: [
                    [83], 256
                ],
                65332: [
                    [84], 256
                ],
                65333: [
                    [85], 256
                ],
                65334: [
                    [86], 256
                ],
                65335: [
                    [87], 256
                ],
                65336: [
                    [88], 256
                ],
                65337: [
                    [89], 256
                ],
                65338: [
                    [90], 256
                ],
                65339: [
                    [91], 256
                ],
                65340: [
                    [92], 256
                ],
                65341: [
                    [93], 256
                ],
                65342: [
                    [94], 256
                ],
                65343: [
                    [95], 256
                ],
                65344: [
                    [96], 256
                ],
                65345: [
                    [97], 256
                ],
                65346: [
                    [98], 256
                ],
                65347: [
                    [99], 256
                ],
                65348: [
                    [100], 256
                ],
                65349: [
                    [101], 256
                ],
                65350: [
                    [102], 256
                ],
                65351: [
                    [103], 256
                ],
                65352: [
                    [104], 256
                ],
                65353: [
                    [105], 256
                ],
                65354: [
                    [106], 256
                ],
                65355: [
                    [107], 256
                ],
                65356: [
                    [108], 256
                ],
                65357: [
                    [109], 256
                ],
                65358: [
                    [110], 256
                ],
                65359: [
                    [111], 256
                ],
                65360: [
                    [112], 256
                ],
                65361: [
                    [113], 256
                ],
                65362: [
                    [114], 256
                ],
                65363: [
                    [115], 256
                ],
                65364: [
                    [116], 256
                ],
                65365: [
                    [117], 256
                ],
                65366: [
                    [118], 256
                ],
                65367: [
                    [119], 256
                ],
                65368: [
                    [120], 256
                ],
                65369: [
                    [121], 256
                ],
                65370: [
                    [122], 256
                ],
                65371: [
                    [123], 256
                ],
                65372: [
                    [124], 256
                ],
                65373: [
                    [125], 256
                ],
                65374: [
                    [126], 256
                ],
                65375: [
                    [10629], 256
                ],
                65376: [
                    [10630], 256
                ],
                65377: [
                    [12290], 256
                ],
                65378: [
                    [12300], 256
                ],
                65379: [
                    [12301], 256
                ],
                65380: [
                    [12289], 256
                ],
                65381: [
                    [12539], 256
                ],
                65382: [
                    [12530], 256
                ],
                65383: [
                    [12449], 256
                ],
                65384: [
                    [12451], 256
                ],
                65385: [
                    [12453], 256
                ],
                65386: [
                    [12455], 256
                ],
                65387: [
                    [12457], 256
                ],
                65388: [
                    [12515], 256
                ],
                65389: [
                    [12517], 256
                ],
                65390: [
                    [12519], 256
                ],
                65391: [
                    [12483], 256
                ],
                65392: [
                    [12540], 256
                ],
                65393: [
                    [12450], 256
                ],
                65394: [
                    [12452], 256
                ],
                65395: [
                    [12454], 256
                ],
                65396: [
                    [12456], 256
                ],
                65397: [
                    [12458], 256
                ],
                65398: [
                    [12459], 256
                ],
                65399: [
                    [12461], 256
                ],
                65400: [
                    [12463], 256
                ],
                65401: [
                    [12465], 256
                ],
                65402: [
                    [12467], 256
                ],
                65403: [
                    [12469], 256
                ],
                65404: [
                    [12471], 256
                ],
                65405: [
                    [12473], 256
                ],
                65406: [
                    [12475], 256
                ],
                65407: [
                    [12477], 256
                ],
                65408: [
                    [12479], 256
                ],
                65409: [
                    [12481], 256
                ],
                65410: [
                    [12484], 256
                ],
                65411: [
                    [12486], 256
                ],
                65412: [
                    [12488], 256
                ],
                65413: [
                    [12490], 256
                ],
                65414: [
                    [12491], 256
                ],
                65415: [
                    [12492], 256
                ],
                65416: [
                    [12493], 256
                ],
                65417: [
                    [12494], 256
                ],
                65418: [
                    [12495], 256
                ],
                65419: [
                    [12498], 256
                ],
                65420: [
                    [12501], 256
                ],
                65421: [
                    [12504], 256
                ],
                65422: [
                    [12507], 256
                ],
                65423: [
                    [12510], 256
                ],
                65424: [
                    [12511], 256
                ],
                65425: [
                    [12512], 256
                ],
                65426: [
                    [12513], 256
                ],
                65427: [
                    [12514], 256
                ],
                65428: [
                    [12516], 256
                ],
                65429: [
                    [12518], 256
                ],
                65430: [
                    [12520], 256
                ],
                65431: [
                    [12521], 256
                ],
                65432: [
                    [12522], 256
                ],
                65433: [
                    [12523], 256
                ],
                65434: [
                    [12524], 256
                ],
                65435: [
                    [12525], 256
                ],
                65436: [
                    [12527], 256
                ],
                65437: [
                    [12531], 256
                ],
                65438: [
                    [12441], 256
                ],
                65439: [
                    [12442], 256
                ],
                65440: [
                    [12644], 256
                ],
                65441: [
                    [12593], 256
                ],
                65442: [
                    [12594], 256
                ],
                65443: [
                    [12595], 256
                ],
                65444: [
                    [12596], 256
                ],
                65445: [
                    [12597], 256
                ],
                65446: [
                    [12598], 256
                ],
                65447: [
                    [12599], 256
                ],
                65448: [
                    [12600], 256
                ],
                65449: [
                    [12601], 256
                ],
                65450: [
                    [12602], 256
                ],
                65451: [
                    [12603], 256
                ],
                65452: [
                    [12604], 256
                ],
                65453: [
                    [12605], 256
                ],
                65454: [
                    [12606], 256
                ],
                65455: [
                    [12607], 256
                ],
                65456: [
                    [12608], 256
                ],
                65457: [
                    [12609], 256
                ],
                65458: [
                    [12610], 256
                ],
                65459: [
                    [12611], 256
                ],
                65460: [
                    [12612], 256
                ],
                65461: [
                    [12613], 256
                ],
                65462: [
                    [12614], 256
                ],
                65463: [
                    [12615], 256
                ],
                65464: [
                    [12616], 256
                ],
                65465: [
                    [12617], 256
                ],
                65466: [
                    [12618], 256
                ],
                65467: [
                    [12619], 256
                ],
                65468: [
                    [12620], 256
                ],
                65469: [
                    [12621], 256
                ],
                65470: [
                    [12622], 256
                ],
                65474: [
                    [12623], 256
                ],
                65475: [
                    [12624], 256
                ],
                65476: [
                    [12625], 256
                ],
                65477: [
                    [12626], 256
                ],
                65478: [
                    [12627], 256
                ],
                65479: [
                    [12628], 256
                ],
                65482: [
                    [12629], 256
                ],
                65483: [
                    [12630], 256
                ],
                65484: [
                    [12631], 256
                ],
                65485: [
                    [12632], 256
                ],
                65486: [
                    [12633], 256
                ],
                65487: [
                    [12634], 256
                ],
                65490: [
                    [12635], 256
                ],
                65491: [
                    [12636], 256
                ],
                65492: [
                    [12637], 256
                ],
                65493: [
                    [12638], 256
                ],
                65494: [
                    [12639], 256
                ],
                65495: [
                    [12640], 256
                ],
                65498: [
                    [12641], 256
                ],
                65499: [
                    [12642], 256
                ],
                65500: [
                    [12643], 256
                ],
                65504: [
                    [162], 256
                ],
                65505: [
                    [163], 256
                ],
                65506: [
                    [172], 256
                ],
                65507: [
                    [175], 256
                ],
                65508: [
                    [166], 256
                ],
                65509: [
                    [165], 256
                ],
                65510: [
                    [8361], 256
                ],
                65512: [
                    [9474], 256
                ],
                65513: [
                    [8592], 256
                ],
                65514: [
                    [8593], 256
                ],
                65515: [
                    [8594], 256
                ],
                65516: [
                    [8595], 256
                ],
                65517: [
                    [9632], 256
                ],
                65518: [
                    [9675], 256
                ]
            }
        };
        var ae = {
            nfc: j,
            nfd: N,
            nfkc: V,
            nfkd: J
        };
        e.exports = ae, ae.shimApplied = !1, String.prototype.normalize || (Object.defineProperty(String.prototype, "normalize", {
            enumerable: !1,
            configurable: !0,
            writable: !0,
            value: function() {
                var ue = "" + this,
                    ye = arguments[0] === void 0 ? "NFC" : arguments[0];
                if (this === null || this === void 0) throw new TypeError("Cannot call method on " + Object.prototype.toString.call(this));
                if (ye === "NFC") return ae.nfc(ue);
                if (ye === "NFD") return ae.nfd(ue);
                if (ye === "NFKC") return ae.nfkc(ue);
                if (ye === "NFKD") return ae.nfkd(ue);
                throw new RangeError("Invalid normalization form: " + ye)
            }
        }), ae.shimApplied = !0)
    })()
})(Ey);
var dz = Ey.exports;
const Yne = xo(dz);

function na(e) {
    return l0() ? (r6(e), !0) : !1
}

function _t(e) {
    return typeof e == "function" ? e() : gr(e)
}
const ls = typeof window < "u" && typeof document < "u";
typeof WorkerGlobalScope < "u" && globalThis instanceof WorkerGlobalScope;
const hz = e => typeof e < "u",
    pz = e => e != null,
    gz = Object.prototype.toString,
    vz = e => gz.call(e) === "[object Object]",
    ir = () => {},
    mh = mz();

function mz() {
    var e, t;
    return ls && ((e = window == null ? void 0 : window.navigator) == null ? void 0 : e.userAgent) && (/iP(ad|hone|od)/.test(window.navigator.userAgent) || ((t = window == null ? void 0 : window.navigator) == null ? void 0 : t.maxTouchPoints) > 2 && /iPad|Macintosh/.test(window == null ? void 0 : window.navigator.userAgent))
}

function Xp(e, t) {
    function n(...r) {
        return new Promise((A, i) => {
            Promise.resolve(e(() => t.apply(this, r), {
                fn: t,
                thisArg: this,
                args: r
            })).then(A).catch(i)
        })
    }
    return n
}
const by = e => e();

function Fy(e, t = {}) {
    let n, r, A = ir;
    const i = a => {
        clearTimeout(a), A(), A = ir
    };
    return a => {
        const o = _t(e),
            l = _t(t.maxWait);
        return n && i(n), o <= 0 || l !== void 0 && l <= 0 ? (r && (i(r), r = null), Promise.resolve(a())) : new Promise((u, f) => {
            A = t.rejectOnCancel ? f : u, l && !r && (r = setTimeout(() => {
                n && i(n), r = null, u(a())
            }, l)), n = setTimeout(() => {
                r && i(r), r = null, u(a())
            }, o)
        })
    }
}

function Bz(...e) {
    let t = 0,
        n, r = !0,
        A = ir,
        i, s, a, o, l;
    !Rt(e[0]) && typeof e[0] == "object" ? {
        delay: s,
        trailing: a = !0,
        leading: o = !0,
        rejectOnCancel: l = !1
    } = e[0] : [s, a = !0, o = !0, l = !1] = e;
    const u = () => {
        n && (clearTimeout(n), n = void 0, A(), A = ir)
    };
    return d => {
        const p = _t(s),
            m = Date.now() - t,
            g = () => i = d();
        return u(), p <= 0 ? (t = Date.now(), g()) : (m > p && (o || !r) ? (t = Date.now(), g()) : a && (i = new Promise((y, w) => {
            A = l ? w : y, n = setTimeout(() => {
                t = Date.now(), r = !0, y(g()), u()
            }, Math.max(0, p - m))
        })), !o && !n && (n = setTimeout(() => r = !0, p)), r = !1, i)
    }
}

function wz(e = by) {
    const t = Ue(!0);

    function n() {
        t.value = !1
    }

    function r() {
        t.value = !0
    }
    const A = (...i) => {
        t.value && e(...i)
    };
    return {
        isActive: Co(t),
        pause: n,
        resume: r,
        eventFilter: A
    }
}

function yz(e) {
    let t;

    function n() {
        return t || (t = e()), t
    }
    return n.reset = async () => {
        const r = t;
        t = void 0, r && await r
    }, n
}

function Cz(e) {
    return e || zt()
}

function xz(...e) {
    if (e.length !== 1) return n8(...e);
    const t = e[0];
    return typeof t == "function" ? Co(u6(() => ({
        get: t,
        set: ir
    }))) : Ue(t)
}

function Ez(e, t = 200, n = {}) {
    return Xp(Fy(t, n), e)
}

function bz(e, t = 200, n = !1, r = !0, A = !1) {
    return Xp(Bz(t, n, r, A), e)
}

function _y(e, t, n = {}) {
    const {
        eventFilter: r = by,
        ...A
    } = n;
    return je(e, Xp(r, t), A)
}

function Sy(e, t, n = {}) {
    const {
        eventFilter: r,
        ...A
    } = n, {
        eventFilter: i,
        pause: s,
        resume: a,
        isActive: o
    } = wz(r);
    return {
        stop: _y(e, t, { ...A,
            eventFilter: i
        }),
        pause: s,
        resume: a,
        isActive: o
    }
}

function Fz(e, t = {}) {
    if (!Rt(e)) return c6(e);
    const n = Array.isArray(e.value) ? Array.from({
        length: e.value.length
    }) : {};
    for (const r in e.value) n[r] = u6(() => ({
        get() {
            return e.value[r]
        },
        set(A) {
            var i;
            if ((i = _t(t.replaceRef)) != null ? i : !0)
                if (Array.isArray(e.value)) {
                    const a = [...e.value];
                    a[r] = A, e.value = a
                } else {
                    const a = { ...e.value,
                        [r]: A
                    };
                    Object.setPrototypeOf(a, Object.getPrototypeOf(e.value)), e.value = a
                }
            else e.value[r] = A
        }
    }));
    return n
}

function Jp(e, t = !0, n) {
    Cz() ? qt(e, n) : t ? e() : yt(e)
}

function Xne(e, t) {
    return Oe(() => _t(e).map(n => _t(n)).filter(t))
}

function Jne(e, t = 1e3, n = {}) {
    const {
        immediate: r = !0,
        immediateCallback: A = !1
    } = n;
    let i = null;
    const s = Ue(!1);

    function a() {
        i && (clearInterval(i), i = null)
    }

    function o() {
        s.value = !1, a()
    }

    function l() {
        const u = _t(t);
        u <= 0 || (s.value = !0, A && e(), a(), i = setInterval(e, u))
    }
    if (r && ls && l(), Rt(t) || typeof t == "function") {
        const u = je(t, () => {
            s.value && ls && l()
        });
        na(u)
    }
    return na(o), {
        isActive: s,
        pause: o,
        resume: l
    }
}

function _z(e, t, n = {}) {
    const {
        immediate: r = !0
    } = n, A = Ue(!1);
    let i = null;

    function s() {
        i && (clearTimeout(i), i = null)
    }

    function a() {
        A.value = !1, s()
    }

    function o(...l) {
        s(), A.value = !0, i = setTimeout(() => {
            A.value = !1, i = null, e(...l)
        }, _t(t))
    }
    return r && (A.value = !0, ls && o()), na(a), {
        isPending: Co(A),
        start: o,
        stop: a
    }
}

function qne(e, t, n = {}) {
    const {
        debounce: r = 0,
        maxWait: A = void 0,
        ...i
    } = n;
    return _y(e, t, { ...i,
        eventFilter: Fy(r, {
            maxWait: A
        })
    })
}

function rA(e) {
    var t;
    const n = _t(e);
    return (t = n == null ? void 0 : n.$el) != null ? t : n
}
const Wr = ls ? window : void 0,
    Sz = ls ? window.document : void 0,
    Qy = ls ? window.navigator : void 0;

function sn(...e) {
    let t, n, r, A;
    if (typeof e[0] == "string" || Array.isArray(e[0]) ? ([n, r, A] = e, t = Wr) : [t, n, r, A] = e, !t) return ir;
    Array.isArray(n) || (n = [n]), Array.isArray(r) || (r = [r]);
    const i = [],
        s = () => {
            i.forEach(u => u()), i.length = 0
        },
        a = (u, f, d, p) => (u.addEventListener(f, d, p), () => u.removeEventListener(f, d, p)),
        o = je(() => [rA(t), _t(A)], ([u, f]) => {
            if (s(), !u) return;
            const d = vz(f) ? { ...f
            } : f;
            i.push(...n.flatMap(p => r.map(m => a(u, p, m, d))))
        }, {
            immediate: !0,
            flush: "post"
        }),
        l = () => {
            o(), s()
        };
    return na(l), l
}
let xm = !1;

function Zne(e, t, n = {}) {
    const {
        window: r = Wr,
        ignore: A = [],
        capture: i = !0,
        detectIframe: s = !1
    } = n;
    if (!r) return ir;
    mh && !xm && (xm = !0, Array.from(r.document.body.children).forEach(d => d.addEventListener("click", ir)), r.document.documentElement.addEventListener("click", ir));
    let a = !0;
    const o = d => A.some(p => {
            if (typeof p == "string") return Array.from(r.document.querySelectorAll(p)).some(m => m === d.target || d.composedPath().includes(m)); {
                const m = rA(p);
                return m && (d.target === m || d.composedPath().includes(m))
            }
        }),
        u = [sn(r, "click", d => {
            const p = rA(e);
            if (!(!p || p === d.target || d.composedPath().includes(p))) {
                if (d.detail === 0 && (a = !o(d)), !a) {
                    a = !0;
                    return
                }
                t(d)
            }
        }, {
            passive: !0,
            capture: i
        }), sn(r, "pointerdown", d => {
            const p = rA(e);
            a = !o(d) && !!(p && !d.composedPath().includes(p))
        }, {
            passive: !0
        }), s && sn(r, "blur", d => {
            setTimeout(() => {
                var p;
                const m = rA(e);
                ((p = r.document.activeElement) == null ? void 0 : p.tagName) === "IFRAME" && !(m != null && m.contains(r.document.activeElement)) && t(d)
            }, 0)
        })].filter(Boolean);
    return () => u.forEach(d => d())
}

function Qz() {
    const e = Ue(!1),
        t = zt();
    return t && qt(() => {
        e.value = !0
    }, t), e
}

function Of(e) {
    const t = Qz();
    return Oe(() => (t.value, !!e()))
}

function ere(e, t) {
    const {
        interrupt: n = !0,
        onError: r = ir,
        onFinished: A = ir,
        signal: i
    } = t || {}, s = {
        aborted: "aborted",
        fulfilled: "fulfilled",
        pending: "pending",
        rejected: "rejected"
    }, a = Array.from(Array.from({
        length: e.length
    }), () => ({
        state: s.pending,
        data: null
    })), o = Nt(a), l = Ue(-1);
    if (!e || e.length === 0) return A(), {
        activeIndex: l,
        result: o
    };

    function u(f, d) {
        l.value++, o[l.value].data = d, o[l.value].state = f
    }
    return e.reduce((f, d) => f.then(p => {
        var m;
        if (i != null && i.aborted) {
            u(s.aborted, new Error("aborted"));
            return
        }
        if (((m = o[l.value]) == null ? void 0 : m.state) === s.rejected && n) {
            A();
            return
        }
        const g = d(p).then(y => (u(s.fulfilled, y), l.value === e.length - 1 && A(), y));
        return i ? Promise.race([g, Uz(i)]) : g
    }).catch(p => i != null && i.aborted ? (u(s.aborted, p), p) : (u(s.rejected, p), r(), p)), Promise.resolve()), {
        activeIndex: l,
        result: o
    }
}

function Uz(e) {
    return new Promise((t, n) => {
        const r = new Error("aborted");
        e.aborted ? n(r) : e.addEventListener("abort", () => n(r), {
            once: !0
        })
    })
}

function Em(e, t = {}) {
    const {
        controls: n = !1,
        navigator: r = Qy
    } = t, A = Of(() => r && "permissions" in r);
    let i;
    const s = typeof e == "string" ? {
            name: e
        } : e,
        a = Ue(),
        o = () => {
            i && (a.value = i.state)
        },
        l = yz(async () => {
            if (A.value) {
                if (!i) try {
                    i = await r.permissions.query(s), sn(i, "change", o), o()
                } catch {
                    a.value = "prompt"
                }
                return i
            }
        });
    return l(), n ? {
        state: a,
        isSupported: A,
        query: l
    } : a
}

function tre(e = {}) {
    const {
        navigator: t = Qy,
        read: n = !1,
        source: r,
        copiedDuring: A = 1500,
        legacy: i = !1
    } = e, s = Of(() => t && "clipboard" in t), a = Em("clipboard-read"), o = Em("clipboard-write"), l = Oe(() => s.value || i), u = Ue(""), f = Ue(!1), d = _z(() => f.value = !1, A);

    function p() {
        s.value && w(a.value) ? t.clipboard.readText().then(B => {
            u.value = B
        }) : u.value = y()
    }
    l.value && n && sn(["copy", "cut"], p);
    async function m(B = _t(r)) {
        l.value && B != null && (s.value && w(o.value) ? await t.clipboard.writeText(B) : g(B), u.value = B, f.value = !0, d.start())
    }

    function g(B) {
        const x = document.createElement("textarea");
        x.value = B ? ? "", x.style.position = "absolute", x.style.opacity = "0", document.body.appendChild(x), x.select(), document.execCommand("copy"), x.remove()
    }

    function y() {
        var B, x, C;
        return (C = (x = (B = document == null ? void 0 : document.getSelection) == null ? void 0 : B.call(document)) == null ? void 0 : x.toString()) != null ? C : ""
    }

    function w(B) {
        return B === "granted" || B === "prompt"
    }
    return {
        isSupported: l,
        text: u,
        copied: f,
        copy: m
    }
}

function Tz(e) {
    return JSON.parse(JSON.stringify(e))
}
const uu = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {},
    cu = "__vueuse_ssr_handlers__",
    Iz = Dz();

function Dz() {
    return cu in uu || (uu[cu] = uu[cu] || {}), uu[cu]
}

function Pz(e, t) {
    return Iz[e] || t
}

function Oz(e) {
    return e == null ? "any" : e instanceof Set ? "set" : e instanceof Map ? "map" : e instanceof Date ? "date" : typeof e == "boolean" ? "boolean" : typeof e == "string" ? "string" : typeof e == "object" ? "object" : Number.isNaN(e) ? "any" : "number"
}
const Lz = {
        boolean: {
            read: e => e === "true",
            write: e => String(e)
        },
        object: {
            read: e => JSON.parse(e),
            write: e => JSON.stringify(e)
        },
        number: {
            read: e => Number.parseFloat(e),
            write: e => String(e)
        },
        any: {
            read: e => e,
            write: e => String(e)
        },
        string: {
            read: e => e,
            write: e => String(e)
        },
        map: {
            read: e => new Map(JSON.parse(e)),
            write: e => JSON.stringify(Array.from(e.entries()))
        },
        set: {
            read: e => new Set(JSON.parse(e)),
            write: e => JSON.stringify(Array.from(e))
        },
        date: {
            read: e => new Date(e),
            write: e => e.toISOString()
        }
    },
    bm = "vueuse-storage";

function Uy(e, t, n, r = {}) {
    var A;
    const {
        flush: i = "pre",
        deep: s = !0,
        listenToStorageChanges: a = !0,
        writeDefaults: o = !0,
        mergeDefaults: l = !1,
        shallow: u,
        window: f = Wr,
        eventFilter: d,
        onError: p = U => {
            console.error(U)
        },
        initOnMounted: m
    } = r, g = (u ? Rc : Ue)(typeof t == "function" ? t() : t);
    if (!n) try {
        n = Pz("getDefaultStorage", () => {
            var U;
            return (U = Wr) == null ? void 0 : U.localStorage
        })()
    } catch (U) {
        p(U)
    }
    if (!n) return g;
    const y = _t(t),
        w = Oz(y),
        B = (A = r.serializer) != null ? A : Lz[w],
        {
            pause: x,
            resume: C
        } = Sy(g, () => F(g.value), {
            flush: i,
            deep: s,
            eventFilter: d
        });
    f && a && Jp(() => {
        sn(f, "storage", I), sn(f, bm, D), m && I()
    }), m || I();

    function b(U, Q) {
        f && f.dispatchEvent(new CustomEvent(bm, {
            detail: {
                key: e,
                oldValue: U,
                newValue: Q,
                storageArea: n
            }
        }))
    }

    function F(U) {
        try {
            const Q = n.getItem(e);
            if (U == null) b(Q, null), n.removeItem(e);
            else {
                const O = B.write(U);
                Q !== O && (n.setItem(e, O), b(Q, O))
            }
        } catch (Q) {
            p(Q)
        }
    }

    function T(U) {
        const Q = U ? U.newValue : n.getItem(e);
        if (Q == null) return o && y != null && n.setItem(e, B.write(y)), y;
        if (!U && l) {
            const O = B.read(Q);
            return typeof l == "function" ? l(O, y) : w === "object" && !Array.isArray(O) ? { ...y,
                ...O
            } : O
        } else return typeof Q != "string" ? Q : B.read(Q)
    }

    function I(U) {
        if (!(U && U.storageArea !== n)) {
            if (U && U.key == null) {
                g.value = y;
                return
            }
            if (!(U && U.key !== e)) {
                x();
                try {
                    (U == null ? void 0 : U.newValue) !== B.write(g.value) && (g.value = T(U))
                } catch (Q) {
                    p(Q)
                } finally {
                    U ? yt(C) : C()
                }
            }
        }
    }

    function D(U) {
        I(U.detail)
    }
    return g
}

function kz(e, t, n = {}) {
    const {
        window: r = Wr,
        ...A
    } = n;
    let i;
    const s = Of(() => r && "MutationObserver" in r),
        a = () => {
            i && (i.disconnect(), i = void 0)
        },
        o = Oe(() => {
            const d = _t(e),
                p = (Array.isArray(d) ? d : [d]).map(rA).filter(pz);
            return new Set(p)
        }),
        l = je(() => o.value, d => {
            a(), s.value && r && d.size && (i = new MutationObserver(t), d.forEach(p => i.observe(p, A)))
        }, {
            immediate: !0,
            flush: "post"
        }),
        u = () => i == null ? void 0 : i.takeRecords(),
        f = () => {
            a(), l()
        };
    return na(f), {
        isSupported: s,
        stop: f,
        takeRecords: u
    }
}

function nre(e = {}) {
    const {
        document: t = Sz
    } = e;
    if (!t) return Ue("visible");
    const n = Ue(t.visibilityState);
    return sn(t, "visibilitychange", () => {
        n.value = t.visibilityState
    }), n
}

function rre(e, t = {}) {
    var n, r;
    const {
        pointerTypes: A,
        preventDefault: i,
        stopPropagation: s,
        exact: a,
        onMove: o,
        onEnd: l,
        onStart: u,
        initialValue: f,
        axis: d = "both",
        draggingElement: p = Wr,
        containerElement: m,
        handle: g = e
    } = t, y = Ue((n = _t(f)) != null ? n : {
        x: 0,
        y: 0
    }), w = Ue(), B = T => A ? A.includes(T.pointerType) : !0, x = T => {
        _t(i) && T.preventDefault(), _t(s) && T.stopPropagation()
    }, C = T => {
        var I;
        if (_t(t.disabled) || !B(T) || _t(a) && T.target !== _t(e)) return;
        const D = _t(m),
            U = (I = D == null ? void 0 : D.getBoundingClientRect) == null ? void 0 : I.call(D),
            Q = _t(e).getBoundingClientRect(),
            O = {
                x: T.clientX - (D ? Q.left - U.left + D.scrollLeft : Q.left),
                y: T.clientY - (D ? Q.top - U.top + D.scrollTop : Q.top)
            };
        (u == null ? void 0 : u(O, T)) !== !1 && (w.value = O, x(T))
    }, b = T => {
        if (_t(t.disabled) || !B(T) || !w.value) return;
        const I = _t(m),
            D = _t(e).getBoundingClientRect();
        let {
            x: U,
            y: Q
        } = y.value;
        (d === "x" || d === "both") && (U = T.clientX - w.value.x, I && (U = Math.min(Math.max(0, U), I.scrollWidth - D.width))), (d === "y" || d === "both") && (Q = T.clientY - w.value.y, I && (Q = Math.min(Math.max(0, Q), I.scrollHeight - D.height))), y.value = {
            x: U,
            y: Q
        }, o == null || o(y.value, T), x(T)
    }, F = T => {
        _t(t.disabled) || !B(T) || w.value && (w.value = void 0, l == null || l(y.value, T), x(T))
    };
    if (ls) {
        const T = {
            capture: (r = t.capture) != null ? r : !0
        };
        sn(g, "pointerdown", C, T), sn(p, "pointermove", b, T), sn(p, "pointerup", F, T)
    }
    return { ...Fz(y),
        position: y,
        isDragging: Oe(() => !!w.value),
        style: Oe(() => `left:${y.value.x}px;top:${y.value.y}px;`)
    }
}

function Hz(e, t, n = {}) {
    const {
        window: r = Wr,
        ...A
    } = n;
    let i;
    const s = Of(() => r && "ResizeObserver" in r),
        a = () => {
            i && (i.disconnect(), i = void 0)
        },
        o = Oe(() => Array.isArray(e) ? e.map(f => rA(f)) : [rA(e)]),
        l = je(o, f => {
            if (a(), s.value && r) {
                i = new ResizeObserver(t);
                for (const d of f) d && i.observe(d, A)
            }
        }, {
            immediate: !0,
            flush: "post"
        }),
        u = () => {
            a(), l()
        };
    return na(u), {
        isSupported: s,
        stop: u
    }
}

function Are(e, t = {}) {
    const {
        reset: n = !0,
        windowResize: r = !0,
        windowScroll: A = !0,
        immediate: i = !0
    } = t, s = Ue(0), a = Ue(0), o = Ue(0), l = Ue(0), u = Ue(0), f = Ue(0), d = Ue(0), p = Ue(0);

    function m() {
        const g = rA(e);
        if (!g) {
            n && (s.value = 0, a.value = 0, o.value = 0, l.value = 0, u.value = 0, f.value = 0, d.value = 0, p.value = 0);
            return
        }
        const y = g.getBoundingClientRect();
        s.value = y.height, a.value = y.bottom, o.value = y.left, l.value = y.right, u.value = y.top, f.value = y.width, d.value = y.x, p.value = y.y
    }
    return Hz(e, m), je(() => rA(e), g => !g && m()), kz(e, m, {
        attributeFilter: ["style", "class"]
    }), A && sn("scroll", m, {
        capture: !0,
        passive: !0
    }), r && sn("resize", m, {
        passive: !0
    }), Jp(() => {
        i && m()
    }), {
        height: s,
        bottom: a,
        left: o,
        right: l,
        top: u,
        width: f,
        x: d,
        y: p,
        update: m
    }
}
const Al = new Map;

function ire(e) {
    const t = l0();

    function n(a) {
        var o;
        const l = Al.get(e) || new Set;
        l.add(a), Al.set(e, l);
        const u = () => A(a);
        return (o = t == null ? void 0 : t.cleanups) == null || o.push(u), u
    }

    function r(a) {
        function o(...l) {
            A(o), a(...l)
        }
        return n(o)
    }

    function A(a) {
        const o = Al.get(e);
        o && (o.delete(a), o.size || i())
    }

    function i() {
        Al.delete(e)
    }

    function s(a, o) {
        var l;
        (l = Al.get(e)) == null || l.forEach(u => u(a, o))
    }
    return {
        on: n,
        once: r,
        off: A,
        emit: s,
        reset: i
    }
}
const Fm = 1;

function sre(e, t = {}) {
    const {
        throttle: n = 0,
        idle: r = 200,
        onStop: A = ir,
        onScroll: i = ir,
        offset: s = {
            left: 0,
            right: 0,
            top: 0,
            bottom: 0
        },
        eventListenerOptions: a = {
            capture: !1,
            passive: !0
        },
        behavior: o = "auto",
        window: l = Wr,
        onError: u = T => {
            console.error(T)
        }
    } = t, f = Ue(0), d = Ue(0), p = Oe({
        get() {
            return f.value
        },
        set(T) {
            g(T, void 0)
        }
    }), m = Oe({
        get() {
            return d.value
        },
        set(T) {
            g(void 0, T)
        }
    });

    function g(T, I) {
        var D, U, Q;
        if (!l) return;
        const O = _t(e);
        O && ((Q = O instanceof Document ? l.document.body : O) == null || Q.scrollTo({
            top: (D = _t(I)) != null ? D : m.value,
            left: (U = _t(T)) != null ? U : p.value,
            behavior: _t(o)
        }))
    }
    const y = Ue(!1),
        w = Nt({
            left: !0,
            right: !1,
            top: !0,
            bottom: !1
        }),
        B = Nt({
            left: !1,
            right: !1,
            top: !1,
            bottom: !1
        }),
        x = T => {
            y.value && (y.value = !1, B.left = !1, B.right = !1, B.top = !1, B.bottom = !1, A(T))
        },
        C = Ez(x, n + r),
        b = T => {
            var I;
            if (!l) return;
            const D = ((I = T == null ? void 0 : T.document) == null ? void 0 : I.documentElement) || (T == null ? void 0 : T.documentElement) || rA(T),
                {
                    display: U,
                    flexDirection: Q
                } = getComputedStyle(D),
                O = D.scrollLeft;
            B.left = O < f.value, B.right = O > f.value;
            const N = Math.abs(O) <= (s.left || 0),
                J = Math.abs(O) + D.clientWidth >= D.scrollWidth - (s.right || 0) - Fm;
            U === "flex" && Q === "row-reverse" ? (w.left = J, w.right = N) : (w.left = N, w.right = J), f.value = O;
            let j = D.scrollTop;
            T === l.document && !j && (j = l.document.body.scrollTop), B.top = j < d.value, B.bottom = j > d.value;
            const V = Math.abs(j) <= (s.top || 0),
                ae = Math.abs(j) + D.clientHeight >= D.scrollHeight - (s.bottom || 0) - Fm;
            U === "flex" && Q === "column-reverse" ? (w.top = ae, w.bottom = V) : (w.top = V, w.bottom = ae), d.value = j
        },
        F = T => {
            var I;
            if (!l) return;
            const D = (I = T.target.documentElement) != null ? I : T.target;
            b(D), y.value = !0, C(T), i(T)
        };
    return sn(e, "scroll", n ? bz(F, n, !0, !1) : F, a), Jp(() => {
        try {
            const T = _t(e);
            if (!T) return;
            b(T)
        } catch (T) {
            u(T)
        }
    }), sn(e, "scrollend", x, a), {
        x: p,
        y: m,
        isScrolling: y,
        arrivedState: w,
        directions: B,
        measure() {
            const T = _t(e);
            l && T && b(T)
        }
    }
}

function _d(e) {
    return typeof Window < "u" && e instanceof Window ? e.document.documentElement : typeof Document < "u" && e instanceof Document ? e.documentElement : e
}

function are(e, t, n = {}) {
    const {
        window: r = Wr
    } = n;
    return Uy(e, t, r == null ? void 0 : r.localStorage, n)
}

function Ty(e) {
    const t = window.getComputedStyle(e);
    if (t.overflowX === "scroll" || t.overflowY === "scroll" || t.overflowX === "auto" && e.clientWidth < e.scrollWidth || t.overflowY === "auto" && e.clientHeight < e.scrollHeight) return !0; {
        const n = e.parentNode;
        return !n || n.tagName === "BODY" ? !1 : Ty(n)
    }
}

function Mz(e) {
    const t = e || window.event,
        n = t.target;
    return Ty(n) ? !1 : t.touches.length > 1 ? !0 : (t.preventDefault && t.preventDefault(), !1)
}
const fu = new WeakMap;

function ore(e, t = !1) {
    const n = Ue(t);
    let r = null;
    je(xz(e), s => {
        const a = _d(_t(s));
        if (a) {
            const o = a;
            fu.get(o) || fu.set(o, o.style.overflow), n.value && (o.style.overflow = "hidden")
        }
    }, {
        immediate: !0
    });
    const A = () => {
            const s = _d(_t(e));
            !s || n.value || (mh && (r = sn(s, "touchmove", a => {
                Mz(a)
            }, {
                passive: !1
            })), s.style.overflow = "hidden", n.value = !0)
        },
        i = () => {
            var s;
            const a = _d(_t(e));
            !a || !n.value || (mh && (r == null || r()), a.style.overflow = (s = fu.get(a)) != null ? s : "", fu.delete(a), n.value = !1)
        };
    return na(i), Oe({
        get() {
            return n.value
        },
        set(s) {
            s ? A() : i()
        }
    })
}

function lre(e, t, n = {}) {
    const {
        window: r = Wr
    } = n;
    return Uy(e, t, r == null ? void 0 : r.sessionStorage, n)
}

function ure(e, t = {}) {
    const {
        threshold: n = 50,
        onSwipe: r,
        onSwipeEnd: A,
        onSwipeStart: i,
        passive: s = !0,
        window: a = Wr
    } = t, o = Nt({
        x: 0,
        y: 0
    }), l = Nt({
        x: 0,
        y: 0
    }), u = Oe(() => o.x - l.x), f = Oe(() => o.y - l.y), {
        max: d,
        abs: p
    } = Math, m = Oe(() => d(p(u.value), p(f.value)) >= n), g = Ue(!1), y = Oe(() => m.value ? p(u.value) > p(f.value) ? u.value > 0 ? "left" : "right" : f.value > 0 ? "up" : "down" : "none"), w = D => [D.touches[0].clientX, D.touches[0].clientY], B = (D, U) => {
        o.x = D, o.y = U
    }, x = (D, U) => {
        l.x = D, l.y = U
    };
    let C;
    const b = Rz(a == null ? void 0 : a.document);
    s ? C = b ? {
        passive: !0
    } : {
        capture: !1
    } : C = b ? {
        passive: !1,
        capture: !0
    } : {
        capture: !0
    };
    const F = D => {
            g.value && (A == null || A(D, y.value)), g.value = !1
        },
        T = [sn(e, "touchstart", D => {
            if (D.touches.length !== 1) return;
            C.capture && !C.passive && D.preventDefault();
            const [U, Q] = w(D);
            B(U, Q), x(U, Q), i == null || i(D)
        }, C), sn(e, "touchmove", D => {
            if (D.touches.length !== 1) return;
            const [U, Q] = w(D);
            x(U, Q), !g.value && m.value && (g.value = !0), g.value && (r == null || r(D))
        }, C), sn(e, ["touchend", "touchcancel"], F, C)];
    return {
        isPassiveEventSupported: b,
        isSwiping: g,
        direction: y,
        coordsStart: o,
        coordsEnd: l,
        lengthX: u,
        lengthY: f,
        stop: () => T.forEach(D => D())
    }
}

function Rz(e) {
    if (!e) return !1;
    let t = !1;
    const n = {
        get passive() {
            return t = !0, !1
        }
    };
    return e.addEventListener("x", ir, n), e.removeEventListener("x", ir), t
}

function cre(e = "history", t = {}) {
    const {
        initialValue: n = {},
        removeNullishValues: r = !0,
        removeFalsyValues: A = !1,
        write: i = !0,
        window: s = Wr
    } = t;
    if (!s) return Nt(n);
    const a = Nt({});

    function o() {
        if (e === "history") return s.location.search || "";
        if (e === "hash") {
            const w = s.location.hash || "",
                B = w.indexOf("?");
            return B > 0 ? w.slice(B) : ""
        } else return (s.location.hash || "").replace(/^#/, "")
    }

    function l(w) {
        const B = w.toString();
        if (e === "history") return `${B?`?${B}`:""}${s.location.hash||""}`;
        if (e === "hash-params") return `${s.location.search||""}${B?`#${B}`:""}`;
        const x = s.location.hash || "#",
            C = x.indexOf("?");
        return C > 0 ? `${x.slice(0,C)}${B?`?${B}`:""}` : `${x}${B?`?${B}`:""}`
    }

    function u() {
        return new URLSearchParams(o())
    }

    function f(w) {
        const B = new Set(Object.keys(a));
        for (const x of w.keys()) {
            const C = w.getAll(x);
            a[x] = C.length > 1 ? C : w.get(x) || "", B.delete(x)
        }
        Array.from(B).forEach(x => delete a[x])
    }
    const {
        pause: d,
        resume: p
    } = Sy(a, () => {
        const w = new URLSearchParams("");
        Object.keys(a).forEach(B => {
            const x = a[B];
            Array.isArray(x) ? x.forEach(C => w.append(B, C)) : r && x == null || A && !x ? w.delete(B) : w.set(B, x)
        }), m(w)
    }, {
        deep: !0
    });

    function m(w, B) {
        d(), B && f(w), s.history.replaceState(s.history.state, s.document.title, s.location.pathname + l(w)), p()
    }

    function g() {
        i && m(u(), !0)
    }
    sn(s, "popstate", g, !1), e !== "history" && sn(s, "hashchange", g, !1);
    const y = u();
    return y.keys().next().value ? f(y) : Object.assign(a, n), a
}

function Nz(e, t, n, r = {}) {
    var A, i, s;
    const {
        clone: a = !1,
        passive: o = !1,
        eventName: l,
        deep: u = !1,
        defaultValue: f,
        shouldEmit: d
    } = r, p = zt(), m = n || (p == null ? void 0 : p.emit) || ((A = p == null ? void 0 : p.$emit) == null ? void 0 : A.bind(p)) || ((s = (i = p == null ? void 0 : p.proxy) == null ? void 0 : i.$emit) == null ? void 0 : s.bind(p == null ? void 0 : p.proxy));
    let g = l;
    t || (t = "modelValue"), g = g || `update:${t.toString()}`;
    const y = x => a ? typeof a == "function" ? a(x) : Tz(x) : x,
        w = () => hz(e[t]) ? y(e[t]) : f,
        B = x => {
            d ? d(x) && m(g, x) : m(g, x)
        };
    if (o) {
        const x = w(),
            C = Ue(x);
        let b = !1;
        return je(() => e[t], F => {
            b || (b = !0, C.value = y(F), yt(() => b = !1))
        }), je(C, F => {
            !b && (F !== e[t] || u) && B(F)
        }, {
            deep: u
        }), C
    } else return Oe({
        get() {
            return w()
        },
        set(x) {
            B(x)
        }
    })
}

function fre(e, t, n = {}) {
    const r = {};
    for (const A in e) r[A] = Nz(e, A, t, n);
    return r
}
var Bh = {
    exports: {}
};
(function(e, t) {
    typeof navigator < "u" && function(n, r) {
        e.exports = r()
    }(ht, function() {
        var n = "http://www.w3.org/2000/svg",
            r = "",
            A = !1,
            i = -999999,
            s = function(h) {
                A = !!h
            },
            a = function() {
                return A
            },
            o = function(h) {
                r = h
            },
            l = function() {
                return r
            };

        function u(c) {
            return document.createElement(c)
        }

        function f(c, h) {
            var v, E = c.length,
                S;
            for (v = 0; v < E; v += 1) {
                S = c[v].prototype;
                for (var _ in S) Object.prototype.hasOwnProperty.call(S, _) && (h.prototype[_] = S[_])
            }
        }

        function d(c) {
            function h() {}
            return h.prototype = c, h
        }
        var p = function() {
                function c(h) {
                    this.audios = [], this.audioFactory = h, this._volume = 1, this._isMuted = !1
                }
                return c.prototype = {
                        addAudio: function(v) {
                            this.audios.push(v)
                        },
                        pause: function() {
                            var v, E = this.audios.length;
                            for (v = 0; v < E; v += 1) this.audios[v].pause()
                        },
                        resume: function() {
                            var v, E = this.audios.length;
                            for (v = 0; v < E; v += 1) this.audios[v].resume()
                        },
                        setRate: function(v) {
                            var E, S = this.audios.length;
                            for (E = 0; E < S; E += 1) this.audios[E].setRate(v)
                        },
                        createAudio: function(v) {
                            return this.audioFactory ? this.audioFactory(v) : window.Howl ? new window.Howl({
                                src: [v]
                            }) : {
                                isPlaying: !1,
                                play: function() {
                                    this.isPlaying = !0
                                },
                                seek: function() {
                                    this.isPlaying = !1
                                },
                                playing: function() {},
                                rate: function() {},
                                setVolume: function() {}
                            }
                        },
                        setAudioFactory: function(v) {
                            this.audioFactory = v
                        },
                        setVolume: function(v) {
                            this._volume = v, this._updateVolume()
                        },
                        mute: function() {
                            this._isMuted = !0, this._updateVolume()
                        },
                        unmute: function() {
                            this._isMuted = !1, this._updateVolume()
                        },
                        getVolume: function() {
                            return this._volume
                        },
                        _updateVolume: function() {
                            var v, E = this.audios.length;
                            for (v = 0; v < E; v += 1) this.audios[v].volume(this._volume * (this._isMuted ? 0 : 1))
                        }
                    },
                    function() {
                        return new c
                    }
            }(),
            m = function() {
                function c(v, E) {
                    var S = 0,
                        _ = [],
                        k;
                    switch (v) {
                        case "int16":
                        case "uint8c":
                            k = 1;
                            break;
                        default:
                            k = 1.1;
                            break
                    }
                    for (S = 0; S < E; S += 1) _.push(k);
                    return _
                }

                function h(v, E) {
                    return v === "float32" ? new Float32Array(E) : v === "int16" ? new Int16Array(E) : v === "uint8c" ? new Uint8ClampedArray(E) : c(v, E)
                }
                return typeof Uint8ClampedArray == "function" && typeof Float32Array == "function" ? h : c
            }();

        function g(c) {
            return Array.apply(null, {
                length: c
            })
        }
        var y = !0,
            w = null,
            B = "",
            x = /^((?!chrome|android).)*safari/i.test(navigator.userAgent),
            C = Math.pow,
            b = Math.sqrt,
            F = Math.floor,
            T = Math.min,
            I = 150,
            D = Math.PI / 180,
            U = .5519;

        function Q(c, h, v, E) {
            this.type = c, this.currentTime = h, this.totalTime = v, this.direction = E < 0 ? -1 : 1
        }

        function O(c, h) {
            this.type = c, this.direction = h < 0 ? -1 : 1
        }

        function N(c, h, v, E) {
            this.type = c, this.currentLoop = v, this.totalLoops = h, this.direction = E < 0 ? -1 : 1
        }

        function J(c, h, v) {
            this.type = c, this.firstFrame = h, this.totalFrames = v
        }

        function j(c, h) {
            this.type = c, this.target = h
        }

        function V(c, h) {
            this.type = "renderFrameError", this.nativeError = c, this.currentTime = h
        }

        function ae(c) {
            this.type = "configError", this.nativeError = c
        }
        var Y = function() {
            var c = 0;
            return function() {
                return c += 1, B + "__lottie_element_" + c
            }
        }();

        function ue(c, h, v) {
            var E, S, _, k, z, H, ne, oe;
            switch (k = Math.floor(c * 6), z = c * 6 - k, H = v * (1 - h), ne = v * (1 - z * h), oe = v * (1 - (1 - z) * h), k % 6) {
                case 0:
                    E = v, S = oe, _ = H;
                    break;
                case 1:
                    E = ne, S = v, _ = H;
                    break;
                case 2:
                    E = H, S = v, _ = oe;
                    break;
                case 3:
                    E = H, S = ne, _ = v;
                    break;
                case 4:
                    E = oe, S = H, _ = v;
                    break;
                case 5:
                    E = v, S = H, _ = ne;
                    break
            }
            return [E, S, _]
        }

        function ye(c, h, v) {
            var E = Math.max(c, h, v),
                S = Math.min(c, h, v),
                _ = E - S,
                k, z = E === 0 ? 0 : _ / E,
                H = E / 255;
            switch (E) {
                case S:
                    k = 0;
                    break;
                case c:
                    k = h - v + _ * (h < v ? 6 : 0), k /= 6 * _;
                    break;
                case h:
                    k = v - c + _ * 2, k /= 6 * _;
                    break;
                case v:
                    k = c - h + _ * 4, k /= 6 * _;
                    break
            }
            return [k, z, H]
        }

        function ee(c, h) {
            var v = ye(c[0] * 255, c[1] * 255, c[2] * 255);
            return v[1] += h, v[1] > 1 ? v[1] = 1 : v[1] <= 0 && (v[1] = 0), ue(v[0], v[1], v[2])
        }

        function ce(c, h) {
            var v = ye(c[0] * 255, c[1] * 255, c[2] * 255);
            return v[2] += h, v[2] > 1 ? v[2] = 1 : v[2] < 0 && (v[2] = 0), ue(v[0], v[1], v[2])
        }

        function ve(c, h) {
            var v = ye(c[0] * 255, c[1] * 255, c[2] * 255);
            return v[0] += h / 360, v[0] > 1 ? v[0] -= 1 : v[0] < 0 && (v[0] += 1), ue(v[0], v[1], v[2])
        }(function() {
            var c = [],
                h, v;
            for (h = 0; h < 256; h += 1) v = h.toString(16), c[h] = v.length === 1 ? "0" + v : v;
            return function(E, S, _) {
                return E < 0 && (E = 0), S < 0 && (S = 0), _ < 0 && (_ = 0), "#" + c[E] + c[S] + c[_]
            }
        })();
        var xe = function(h) {
                y = !!h
            },
            se = function() {
                return y
            },
            Fe = function(h) {
                w = h
            },
            ie = function() {
                return w
            },
            _e = function(h) {
                I = h
            },
            De = function() {
                return I
            },
            $e = function(h) {
                B = h
            };

        function Te(c) {
            return document.createElementNS(n, c)
        }

        function W(c) {
            "@babel/helpers - typeof";
            return typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? W = function(v) {
                return typeof v
            } : W = function(v) {
                return v && typeof Symbol == "function" && v.constructor === Symbol && v !== Symbol.prototype ? "symbol" : typeof v
            }, W(c)
        }
        var P = function() {
                var c = 1,
                    h = [],
                    v, E, S = {
                        onmessage: function() {},
                        postMessage: function(le) {
                            v({
                                data: le
                            })
                        }
                    },
                    _ = {
                        postMessage: function(le) {
                            S.onmessage({
                                data: le
                            })
                        }
                    };

                function k(K) {
                    if (window.Worker && window.Blob && a()) {
                        var le = new Blob(["var _workerSelf = self; self.onmessage = ", K.toString()], {
                                type: "text/javascript"
                            }),
                            pe = URL.createObjectURL(le);
                        return new Worker(pe)
                    }
                    return v = K, S
                }

                function z() {
                    E || (E = k(function(le) {
                        function pe() {
                            function Ce(Me, X) {
                                var de, L, R = Me.length,
                                    Se, me, Xe, at;
                                for (L = 0; L < R; L += 1)
                                    if (de = Me[L], "ks" in de && !de.completed) {
                                        if (de.completed = !0, de.hasMask) {
                                            var ut = de.masksProperties;
                                            for (me = ut.length, Se = 0; Se < me; Se += 1)
                                                if (ut[Se].pt.k.i) re(ut[Se].pt.k);
                                                else
                                                    for (at = ut[Se].pt.k.length, Xe = 0; Xe < at; Xe += 1) ut[Se].pt.k[Xe].s && re(ut[Se].pt.k[Xe].s[0]), ut[Se].pt.k[Xe].e && re(ut[Se].pt.k[Xe].e[0])
                                        }
                                        de.ty === 0 ? (de.layers = $(de.refId, X), Ce(de.layers, X)) : de.ty === 4 ? G(de.shapes) : de.ty === 5 && ct(de)
                                    }
                            }

                            function Ae(Me, X) {
                                if (Me) {
                                    var de = 0,
                                        L = Me.length;
                                    for (de = 0; de < L; de += 1) Me[de].t === 1 && (Me[de].data.layers = $(Me[de].data.refId, X), Ce(Me[de].data.layers, X))
                                }
                            }

                            function q(Me, X) {
                                for (var de = 0, L = X.length; de < L;) {
                                    if (X[de].id === Me) return X[de];
                                    de += 1
                                }
                                return null
                            }

                            function $(Me, X) {
                                var de = q(Me, X);
                                return de ? de.layers.__used ? JSON.parse(JSON.stringify(de.layers)) : (de.layers.__used = !0, de.layers) : null
                            }

                            function G(Me) {
                                var X, de = Me.length,
                                    L, R;
                                for (X = de - 1; X >= 0; X -= 1)
                                    if (Me[X].ty === "sh")
                                        if (Me[X].ks.k.i) re(Me[X].ks.k);
                                        else
                                            for (R = Me[X].ks.k.length, L = 0; L < R; L += 1) Me[X].ks.k[L].s && re(Me[X].ks.k[L].s[0]), Me[X].ks.k[L].e && re(Me[X].ks.k[L].e[0]);
                                else Me[X].ty === "gr" && G(Me[X].it)
                            }

                            function re(Me) {
                                var X, de = Me.i.length;
                                for (X = 0; X < de; X += 1) Me.i[X][0] += Me.v[X][0], Me.i[X][1] += Me.v[X][1], Me.o[X][0] += Me.v[X][0], Me.o[X][1] += Me.v[X][1]
                            }

                            function ge(Me, X) {
                                var de = X ? X.split(".") : [100, 100, 100];
                                return Me[0] > de[0] ? !0 : de[0] > Me[0] ? !1 : Me[1] > de[1] ? !0 : de[1] > Me[1] ? !1 : Me[2] > de[2] ? !0 : de[2] > Me[2] ? !1 : null
                            }
                            var Ee = function() {
                                    var Me = [4, 4, 14];

                                    function X(L) {
                                        var R = L.t.d;
                                        L.t.d = {
                                            k: [{
                                                s: R,
                                                t: 0
                                            }]
                                        }
                                    }

                                    function de(L) {
                                        var R, Se = L.length;
                                        for (R = 0; R < Se; R += 1) L[R].ty === 5 && X(L[R])
                                    }
                                    return function(L) {
                                        if (ge(Me, L.v) && (de(L.layers), L.assets)) {
                                            var R, Se = L.assets.length;
                                            for (R = 0; R < Se; R += 1) L.assets[R].layers && de(L.assets[R].layers)
                                        }
                                    }
                                }(),
                                Qe = function() {
                                    var Me = [4, 7, 99];
                                    return function(X) {
                                        if (X.chars && !ge(Me, X.v)) {
                                            var de, L = X.chars.length;
                                            for (de = 0; de < L; de += 1) {
                                                var R = X.chars[de];
                                                R.data && R.data.shapes && (G(R.data.shapes), R.data.ip = 0, R.data.op = 99999, R.data.st = 0, R.data.sr = 1, R.data.ks = {
                                                    p: {
                                                        k: [0, 0],
                                                        a: 0
                                                    },
                                                    s: {
                                                        k: [100, 100],
                                                        a: 0
                                                    },
                                                    a: {
                                                        k: [0, 0],
                                                        a: 0
                                                    },
                                                    r: {
                                                        k: 0,
                                                        a: 0
                                                    },
                                                    o: {
                                                        k: 100,
                                                        a: 0
                                                    }
                                                }, X.chars[de].t || (R.data.shapes.push({
                                                    ty: "no"
                                                }), R.data.shapes[0].it.push({
                                                    p: {
                                                        k: [0, 0],
                                                        a: 0
                                                    },
                                                    s: {
                                                        k: [100, 100],
                                                        a: 0
                                                    },
                                                    a: {
                                                        k: [0, 0],
                                                        a: 0
                                                    },
                                                    r: {
                                                        k: 0,
                                                        a: 0
                                                    },
                                                    o: {
                                                        k: 100,
                                                        a: 0
                                                    },
                                                    sk: {
                                                        k: 0,
                                                        a: 0
                                                    },
                                                    sa: {
                                                        k: 0,
                                                        a: 0
                                                    },
                                                    ty: "tr"
                                                })))
                                            }
                                        }
                                    }
                                }(),
                                Re = function() {
                                    var Me = [5, 7, 15];

                                    function X(L) {
                                        var R = L.t.p;
                                        typeof R.a == "number" && (R.a = {
                                            a: 0,
                                            k: R.a
                                        }), typeof R.p == "number" && (R.p = {
                                            a: 0,
                                            k: R.p
                                        }), typeof R.r == "number" && (R.r = {
                                            a: 0,
                                            k: R.r
                                        })
                                    }

                                    function de(L) {
                                        var R, Se = L.length;
                                        for (R = 0; R < Se; R += 1) L[R].ty === 5 && X(L[R])
                                    }
                                    return function(L) {
                                        if (ge(Me, L.v) && (de(L.layers), L.assets)) {
                                            var R, Se = L.assets.length;
                                            for (R = 0; R < Se; R += 1) L.assets[R].layers && de(L.assets[R].layers)
                                        }
                                    }
                                }(),
                                lt = function() {
                                    var Me = [4, 1, 9];

                                    function X(L) {
                                        var R, Se = L.length,
                                            me, Xe;
                                        for (R = 0; R < Se; R += 1)
                                            if (L[R].ty === "gr") X(L[R].it);
                                            else if (L[R].ty === "fl" || L[R].ty === "st")
                                            if (L[R].c.k && L[R].c.k[0].i)
                                                for (Xe = L[R].c.k.length, me = 0; me < Xe; me += 1) L[R].c.k[me].s && (L[R].c.k[me].s[0] /= 255, L[R].c.k[me].s[1] /= 255, L[R].c.k[me].s[2] /= 255, L[R].c.k[me].s[3] /= 255), L[R].c.k[me].e && (L[R].c.k[me].e[0] /= 255, L[R].c.k[me].e[1] /= 255, L[R].c.k[me].e[2] /= 255, L[R].c.k[me].e[3] /= 255);
                                            else L[R].c.k[0] /= 255, L[R].c.k[1] /= 255, L[R].c.k[2] /= 255, L[R].c.k[3] /= 255
                                    }

                                    function de(L) {
                                        var R, Se = L.length;
                                        for (R = 0; R < Se; R += 1) L[R].ty === 4 && X(L[R].shapes)
                                    }
                                    return function(L) {
                                        if (ge(Me, L.v) && (de(L.layers), L.assets)) {
                                            var R, Se = L.assets.length;
                                            for (R = 0; R < Se; R += 1) L.assets[R].layers && de(L.assets[R].layers)
                                        }
                                    }
                                }(),
                                it = function() {
                                    var Me = [4, 4, 18];

                                    function X(L) {
                                        var R, Se = L.length,
                                            me, Xe;
                                        for (R = Se - 1; R >= 0; R -= 1)
                                            if (L[R].ty === "sh")
                                                if (L[R].ks.k.i) L[R].ks.k.c = L[R].closed;
                                                else
                                                    for (Xe = L[R].ks.k.length, me = 0; me < Xe; me += 1) L[R].ks.k[me].s && (L[R].ks.k[me].s[0].c = L[R].closed), L[R].ks.k[me].e && (L[R].ks.k[me].e[0].c = L[R].closed);
                                        else L[R].ty === "gr" && X(L[R].it)
                                    }

                                    function de(L) {
                                        var R, Se, me = L.length,
                                            Xe, at, ut, Qt;
                                        for (Se = 0; Se < me; Se += 1) {
                                            if (R = L[Se], R.hasMask) {
                                                var Ut = R.masksProperties;
                                                for (at = Ut.length, Xe = 0; Xe < at; Xe += 1)
                                                    if (Ut[Xe].pt.k.i) Ut[Xe].pt.k.c = Ut[Xe].cl;
                                                    else
                                                        for (Qt = Ut[Xe].pt.k.length, ut = 0; ut < Qt; ut += 1) Ut[Xe].pt.k[ut].s && (Ut[Xe].pt.k[ut].s[0].c = Ut[Xe].cl), Ut[Xe].pt.k[ut].e && (Ut[Xe].pt.k[ut].e[0].c = Ut[Xe].cl)
                                            }
                                            R.ty === 4 && X(R.shapes)
                                        }
                                    }
                                    return function(L) {
                                        if (ge(Me, L.v) && (de(L.layers), L.assets)) {
                                            var R, Se = L.assets.length;
                                            for (R = 0; R < Se; R += 1) L.assets[R].layers && de(L.assets[R].layers)
                                        }
                                    }
                                }();

                            function Ve(Me) {
                                Me.__complete || (lt(Me), Ee(Me), Qe(Me), Re(Me), it(Me), Ce(Me.layers, Me.assets), Ae(Me.chars, Me.assets), Me.__complete = !0)
                            }

                            function ct(Me) {
                                Me.t.a.length === 0 && "m" in Me.t.p
                            }
                            var rt = {};
                            return rt.completeData = Ve, rt.checkColors = lt, rt.checkChars = Qe, rt.checkPathProperties = Re, rt.checkShapes = it, rt.completeLayers = Ce, rt
                        }
                        if (_.dataManager || (_.dataManager = pe()), _.assetLoader || (_.assetLoader = function() {
                                function Ce(q) {
                                    var $ = q.getResponseHeader("content-type");
                                    return $ && q.responseType === "json" && $.indexOf("json") !== -1 || q.response && W(q.response) === "object" ? q.response : q.response && typeof q.response == "string" ? JSON.parse(q.response) : q.responseText ? JSON.parse(q.responseText) : null
                                }

                                function Ae(q, $, G, re) {
                                    var ge, Ee = new XMLHttpRequest;
                                    try {
                                        Ee.responseType = "json"
                                    } catch {}
                                    Ee.onreadystatechange = function() {
                                        if (Ee.readyState === 4)
                                            if (Ee.status === 200) ge = Ce(Ee), G(ge);
                                            else try {
                                                ge = Ce(Ee), G(ge)
                                            } catch (Qe) {
                                                re && re(Qe)
                                            }
                                    };
                                    try {
                                        Ee.open(["G", "E", "T"].join(""), q, !0)
                                    } catch {
                                        Ee.open(["G", "E", "T"].join(""), $ + "/" + q, !0)
                                    }
                                    Ee.send()
                                }
                                return {
                                    load: Ae
                                }
                            }()), le.data.type === "loadAnimation") _.assetLoader.load(le.data.path, le.data.fullPath, function(Ce) {
                            _.dataManager.completeData(Ce), _.postMessage({
                                id: le.data.id,
                                payload: Ce,
                                status: "success"
                            })
                        }, function() {
                            _.postMessage({
                                id: le.data.id,
                                status: "error"
                            })
                        });
                        else if (le.data.type === "complete") {
                            var fe = le.data.animation;
                            _.dataManager.completeData(fe), _.postMessage({
                                id: le.data.id,
                                payload: fe,
                                status: "success"
                            })
                        } else le.data.type === "loadData" && _.assetLoader.load(le.data.path, le.data.fullPath, function(Ce) {
                            _.postMessage({
                                id: le.data.id,
                                payload: Ce,
                                status: "success"
                            })
                        }, function() {
                            _.postMessage({
                                id: le.data.id,
                                status: "error"
                            })
                        })
                    }), E.onmessage = function(K) {
                        var le = K.data,
                            pe = le.id,
                            fe = h[pe];
                        h[pe] = null, le.status === "success" ? fe.onComplete(le.payload) : fe.onError && fe.onError()
                    })
                }

                function H(K, le) {
                    c += 1;
                    var pe = "processId_" + c;
                    return h[pe] = {
                        onComplete: K,
                        onError: le
                    }, pe
                }

                function ne(K, le, pe) {
                    z();
                    var fe = H(le, pe);
                    E.postMessage({
                        type: "loadAnimation",
                        path: K,
                        fullPath: window.location.origin + window.location.pathname,
                        id: fe
                    })
                }

                function oe(K, le, pe) {
                    z();
                    var fe = H(le, pe);
                    E.postMessage({
                        type: "loadData",
                        path: K,
                        fullPath: window.location.origin + window.location.pathname,
                        id: fe
                    })
                }

                function be(K, le, pe) {
                    z();
                    var fe = H(le, pe);
                    E.postMessage({
                        type: "complete",
                        animation: K,
                        id: fe
                    })
                }
                return {
                    loadAnimation: ne,
                    loadData: oe,
                    completeAnimation: be
                }
            }(),
            M = function() {
                var c = function() {
                    var Ae = u("canvas");
                    Ae.width = 1, Ae.height = 1;
                    var q = Ae.getContext("2d");
                    return q.fillStyle = "rgba(0,0,0,0)", q.fillRect(0, 0, 1, 1), Ae
                }();

                function h() {
                    this.loadedAssets += 1, this.loadedAssets === this.totalImages && this.loadedFootagesCount === this.totalFootages && this.imagesLoadedCb && this.imagesLoadedCb(null)
                }

                function v() {
                    this.loadedFootagesCount += 1, this.loadedAssets === this.totalImages && this.loadedFootagesCount === this.totalFootages && this.imagesLoadedCb && this.imagesLoadedCb(null)
                }

                function E(Ae, q, $) {
                    var G = "";
                    if (Ae.e) G = Ae.p;
                    else if (q) {
                        var re = Ae.p;
                        re.indexOf("images/") !== -1 && (re = re.split("/")[1]), G = q + re
                    } else G = $, G += Ae.u ? Ae.u : "", G += Ae.p;
                    return G
                }

                function S(Ae) {
                    var q = 0,
                        $ = setInterval((function() {
                            var G = Ae.getBBox();
                            (G.width || q > 500) && (this._imageLoaded(), clearInterval($)), q += 1
                        }).bind(this), 50)
                }

                function _(Ae) {
                    var q = E(Ae, this.assetsPath, this.path),
                        $ = Te("image");
                    x ? this.testImageLoaded($) : $.addEventListener("load", this._imageLoaded, !1), $.addEventListener("error", (function() {
                        G.img = c, this._imageLoaded()
                    }).bind(this), !1), $.setAttributeNS("http://www.w3.org/1999/xlink", "href", q), this._elementHelper.append ? this._elementHelper.append($) : this._elementHelper.appendChild($);
                    var G = {
                        img: $,
                        assetData: Ae
                    };
                    return G
                }

                function k(Ae) {
                    var q = E(Ae, this.assetsPath, this.path),
                        $ = u("img");
                    $.crossOrigin = "anonymous", $.addEventListener("load", this._imageLoaded, !1), $.addEventListener("error", (function() {
                        G.img = c, this._imageLoaded()
                    }).bind(this), !1), $.src = q;
                    var G = {
                        img: $,
                        assetData: Ae
                    };
                    return G
                }

                function z(Ae) {
                    var q = {
                            assetData: Ae
                        },
                        $ = E(Ae, this.assetsPath, this.path);
                    return P.loadData($, (function(G) {
                        q.img = G, this._footageLoaded()
                    }).bind(this), (function() {
                        q.img = {}, this._footageLoaded()
                    }).bind(this)), q
                }

                function H(Ae, q) {
                    this.imagesLoadedCb = q;
                    var $, G = Ae.length;
                    for ($ = 0; $ < G; $ += 1) Ae[$].layers || (!Ae[$].t || Ae[$].t === "seq" ? (this.totalImages += 1, this.images.push(this._createImageData(Ae[$]))) : Ae[$].t === 3 && (this.totalFootages += 1, this.images.push(this.createFootageData(Ae[$]))))
                }

                function ne(Ae) {
                    this.path = Ae || ""
                }

                function oe(Ae) {
                    this.assetsPath = Ae || ""
                }

                function be(Ae) {
                    for (var q = 0, $ = this.images.length; q < $;) {
                        if (this.images[q].assetData === Ae) return this.images[q].img;
                        q += 1
                    }
                    return null
                }

                function K() {
                    this.imagesLoadedCb = null, this.images.length = 0
                }

                function le() {
                    return this.totalImages === this.loadedAssets
                }

                function pe() {
                    return this.totalFootages === this.loadedFootagesCount
                }

                function fe(Ae, q) {
                    Ae === "svg" ? (this._elementHelper = q, this._createImageData = this.createImageData.bind(this)) : this._createImageData = this.createImgData.bind(this)
                }

                function Ce() {
                    this._imageLoaded = h.bind(this), this._footageLoaded = v.bind(this), this.testImageLoaded = S.bind(this), this.createFootageData = z.bind(this), this.assetsPath = "", this.path = "", this.totalImages = 0, this.totalFootages = 0, this.loadedAssets = 0, this.loadedFootagesCount = 0, this.imagesLoadedCb = null, this.images = []
                }
                return Ce.prototype = {
                    loadAssets: H,
                    setAssetsPath: oe,
                    setPath: ne,
                    loadedImages: le,
                    loadedFootages: pe,
                    destroy: K,
                    getAsset: be,
                    createImgData: k,
                    createImageData: _,
                    imageLoaded: h,
                    footageLoaded: v,
                    setCacheType: fe
                }, Ce
            }();

        function te() {}
        te.prototype = {
            triggerEvent: function(h, v) {
                if (this._cbs[h])
                    for (var E = this._cbs[h], S = 0; S < E.length; S += 1) E[S](v)
            },
            addEventListener: function(h, v) {
                return this._cbs[h] || (this._cbs[h] = []), this._cbs[h].push(v), (function() {
                    this.removeEventListener(h, v)
                }).bind(this)
            },
            removeEventListener: function(h, v) {
                if (!v) this._cbs[h] = null;
                else if (this._cbs[h]) {
                    for (var E = 0, S = this._cbs[h].length; E < S;) this._cbs[h][E] === v && (this._cbs[h].splice(E, 1), E -= 1, S -= 1), E += 1;
                    this._cbs[h].length || (this._cbs[h] = null)
                }
            }
        };
        var Be = function() {
                function c(h) {
                    for (var v = h.split(`\r
`), E = {}, S, _ = 0, k = 0; k < v.length; k += 1) S = v[k].split(":"), S.length === 2 && (E[S[0]] = S[1].trim(), _ += 1);
                    if (_ === 0) throw new Error;
                    return E
                }
                return function(h) {
                    for (var v = [], E = 0; E < h.length; E += 1) {
                        var S = h[E],
                            _ = {
                                time: S.tm,
                                duration: S.dr
                            };
                        try {
                            _.payload = JSON.parse(h[E].cm)
                        } catch {
                            try {
                                _.payload = c(h[E].cm)
                            } catch {
                                _.payload = {
                                    name: h[E].cm
                                }
                            }
                        }
                        v.push(_)
                    }
                    return v
                }
            }(),
            Ie = function() {
                function c(h) {
                    this.compositions.push(h)
                }
                return function() {
                    function h(v) {
                        for (var E = 0, S = this.compositions.length; E < S;) {
                            if (this.compositions[E].data && this.compositions[E].data.nm === v) return this.compositions[E].prepareFrame && this.compositions[E].data.xt && this.compositions[E].prepareFrame(this.currentFrame), this.compositions[E].compInterface;
                            E += 1
                        }
                        return null
                    }
                    return h.compositions = [], h.currentFrame = 0, h.registerComposition = c, h
                }
            }(),
            Le = {},
            He = function(h, v) {
                Le[h] = v
            };

        function Ne(c) {
            return Le[c]
        }

        function Pe() {
            if (Le.canvas) return "canvas";
            for (var c in Le)
                if (Le[c]) return c;
            return ""
        }

        function we(c) {
            "@babel/helpers - typeof";
            return typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? we = function(v) {
                return typeof v
            } : we = function(v) {
                return v && typeof Symbol == "function" && v.constructor === Symbol && v !== Symbol.prototype ? "symbol" : typeof v
            }, we(c)
        }
        var he = function() {
            this._cbs = [], this.name = "", this.path = "", this.isLoaded = !1, this.currentFrame = 0, this.currentRawFrame = 0, this.firstFrame = 0, this.totalFrames = 0, this.frameRate = 0, this.frameMult = 0, this.playSpeed = 1, this.playDirection = 1, this.playCount = 0, this.animationData = {}, this.assets = [], this.isPaused = !0, this.autoplay = !1, this.loop = !0, this.renderer = null, this.animationID = Y(), this.assetsPath = "", this.timeCompleted = 0, this.segmentPos = 0, this.isSubframeEnabled = se(), this.segments = [], this._idle = !0, this._completedLoop = !1, this.projectInterface = Ie(), this.imagePreloader = new M, this.audioController = p(), this.markers = [], this.configAnimation = this.configAnimation.bind(this), this.onSetupError = this.onSetupError.bind(this), this.onSegmentComplete = this.onSegmentComplete.bind(this), this.drawnFrameEvent = new Q("drawnFrame", 0, 0, 0), this.expressionsPlugin = ie()
        };
        f([te], he), he.prototype.setParams = function(c) {
            (c.wrapper || c.container) && (this.wrapper = c.wrapper || c.container);
            var h = "svg";
            c.animType ? h = c.animType : c.renderer && (h = c.renderer);
            var v = Ne(h);
            this.renderer = new v(this, c.rendererSettings), this.imagePreloader.setCacheType(h, this.renderer.globalData.defs), this.renderer.setProjectInterface(this.projectInterface), this.animType = h, c.loop === "" || c.loop === null || c.loop === void 0 || c.loop === !0 ? this.loop = !0 : c.loop === !1 ? this.loop = !1 : this.loop = parseInt(c.loop, 10), this.autoplay = "autoplay" in c ? c.autoplay : !0, this.name = c.name ? c.name : "", this.autoloadSegments = Object.prototype.hasOwnProperty.call(c, "autoloadSegments") ? c.autoloadSegments : !0, this.assetsPath = c.assetsPath, this.initialSegment = c.initialSegment, c.audioFactory && this.audioController.setAudioFactory(c.audioFactory), c.animationData ? this.setupAnimation(c.animationData) : c.path && (c.path.lastIndexOf("\\") !== -1 ? this.path = c.path.substr(0, c.path.lastIndexOf("\\") + 1) : this.path = c.path.substr(0, c.path.lastIndexOf("/") + 1), this.fileName = c.path.substr(c.path.lastIndexOf("/") + 1), this.fileName = this.fileName.substr(0, this.fileName.lastIndexOf(".json")), P.loadAnimation(c.path, this.configAnimation, this.onSetupError))
        }, he.prototype.onSetupError = function() {
            this.trigger("data_failed")
        }, he.prototype.setupAnimation = function(c) {
            P.completeAnimation(c, this.configAnimation)
        }, he.prototype.setData = function(c, h) {
            h && we(h) !== "object" && (h = JSON.parse(h));
            var v = {
                    wrapper: c,
                    animationData: h
                },
                E = c.attributes;
            v.path = E.getNamedItem("data-animation-path") ? E.getNamedItem("data-animation-path").value : E.getNamedItem("data-bm-path") ? E.getNamedItem("data-bm-path").value : E.getNamedItem("bm-path") ? E.getNamedItem("bm-path").value : "", v.animType = E.getNamedItem("data-anim-type") ? E.getNamedItem("data-anim-type").value : E.getNamedItem("data-bm-type") ? E.getNamedItem("data-bm-type").value : E.getNamedItem("bm-type") ? E.getNamedItem("bm-type").value : E.getNamedItem("data-bm-renderer") ? E.getNamedItem("data-bm-renderer").value : E.getNamedItem("bm-renderer") ? E.getNamedItem("bm-renderer").value : Pe() || "canvas";
            var S = E.getNamedItem("data-anim-loop") ? E.getNamedItem("data-anim-loop").value : E.getNamedItem("data-bm-loop") ? E.getNamedItem("data-bm-loop").value : E.getNamedItem("bm-loop") ? E.getNamedItem("bm-loop").value : "";
            S === "false" ? v.loop = !1 : S === "true" ? v.loop = !0 : S !== "" && (v.loop = parseInt(S, 10));
            var _ = E.getNamedItem("data-anim-autoplay") ? E.getNamedItem("data-anim-autoplay").value : E.getNamedItem("data-bm-autoplay") ? E.getNamedItem("data-bm-autoplay").value : E.getNamedItem("bm-autoplay") ? E.getNamedItem("bm-autoplay").value : !0;
            v.autoplay = _ !== "false", v.name = E.getNamedItem("data-name") ? E.getNamedItem("data-name").value : E.getNamedItem("data-bm-name") ? E.getNamedItem("data-bm-name").value : E.getNamedItem("bm-name") ? E.getNamedItem("bm-name").value : "";
            var k = E.getNamedItem("data-anim-prerender") ? E.getNamedItem("data-anim-prerender").value : E.getNamedItem("data-bm-prerender") ? E.getNamedItem("data-bm-prerender").value : E.getNamedItem("bm-prerender") ? E.getNamedItem("bm-prerender").value : "";
            k === "false" && (v.prerender = !1), v.path ? this.setParams(v) : this.trigger("destroy")
        }, he.prototype.includeLayers = function(c) {
            c.op > this.animationData.op && (this.animationData.op = c.op, this.totalFrames = Math.floor(c.op - this.animationData.ip));
            var h = this.animationData.layers,
                v, E = h.length,
                S = c.layers,
                _, k = S.length;
            for (_ = 0; _ < k; _ += 1)
                for (v = 0; v < E;) {
                    if (h[v].id === S[_].id) {
                        h[v] = S[_];
                        break
                    }
                    v += 1
                }
            if ((c.chars || c.fonts) && (this.renderer.globalData.fontManager.addChars(c.chars), this.renderer.globalData.fontManager.addFonts(c.fonts, this.renderer.globalData.defs)), c.assets)
                for (E = c.assets.length, v = 0; v < E; v += 1) this.animationData.assets.push(c.assets[v]);
            this.animationData.__complete = !1, P.completeAnimation(this.animationData, this.onSegmentComplete)
        }, he.prototype.onSegmentComplete = function(c) {
            this.animationData = c;
            var h = ie();
            h && h.initExpressions(this), this.loadNextSegment()
        }, he.prototype.loadNextSegment = function() {
            var c = this.animationData.segments;
            if (!c || c.length === 0 || !this.autoloadSegments) {
                this.trigger("data_ready"), this.timeCompleted = this.totalFrames;
                return
            }
            var h = c.shift();
            this.timeCompleted = h.time * this.frameRate;
            var v = this.path + this.fileName + "_" + this.segmentPos + ".json";
            this.segmentPos += 1, P.loadData(v, this.includeLayers.bind(this), (function() {
                this.trigger("data_failed")
            }).bind(this))
        }, he.prototype.loadSegments = function() {
            var c = this.animationData.segments;
            c || (this.timeCompleted = this.totalFrames), this.loadNextSegment()
        }, he.prototype.imagesLoaded = function() {
            this.trigger("loaded_images"), this.checkLoaded()
        }, he.prototype.preloadImages = function() {
            this.imagePreloader.setAssetsPath(this.assetsPath), this.imagePreloader.setPath(this.path), this.imagePreloader.loadAssets(this.animationData.assets, this.imagesLoaded.bind(this))
        }, he.prototype.configAnimation = function(c) {
            if (this.renderer) try {
                this.animationData = c, this.initialSegment ? (this.totalFrames = Math.floor(this.initialSegment[1] - this.initialSegment[0]), this.firstFrame = Math.round(this.initialSegment[0])) : (this.totalFrames = Math.floor(this.animationData.op - this.animationData.ip), this.firstFrame = Math.round(this.animationData.ip)), this.renderer.configAnimation(c), c.assets || (c.assets = []), this.assets = this.animationData.assets, this.frameRate = this.animationData.fr, this.frameMult = this.animationData.fr / 1e3, this.renderer.searchExtraCompositions(c.assets), this.markers = Be(c.markers || []), this.trigger("config_ready"), this.preloadImages(), this.loadSegments(), this.updaFrameModifier(), this.waitForFontsLoaded(), this.isPaused && this.audioController.pause()
            } catch (h) {
                this.triggerConfigError(h)
            }
        }, he.prototype.waitForFontsLoaded = function() {
            this.renderer && (this.renderer.globalData.fontManager.isLoaded ? this.checkLoaded() : setTimeout(this.waitForFontsLoaded.bind(this), 20))
        }, he.prototype.checkLoaded = function() {
            if (!this.isLoaded && this.renderer.globalData.fontManager.isLoaded && (this.imagePreloader.loadedImages() || this.renderer.rendererType !== "canvas") && this.imagePreloader.loadedFootages()) {
                this.isLoaded = !0;
                var c = ie();
                c && c.initExpressions(this), this.renderer.initItems(), setTimeout((function() {
                    this.trigger("DOMLoaded")
                }).bind(this), 0), this.gotoFrame(), this.autoplay && this.play()
            }
        }, he.prototype.resize = function(c, h) {
            var v = typeof c == "number" ? c : void 0,
                E = typeof h == "number" ? h : void 0;
            this.renderer.updateContainerSize(v, E)
        }, he.prototype.setSubframe = function(c) {
            this.isSubframeEnabled = !!c
        }, he.prototype.gotoFrame = function() {
            this.currentFrame = this.isSubframeEnabled ? this.currentRawFrame : ~~this.currentRawFrame, this.timeCompleted !== this.totalFrames && this.currentFrame > this.timeCompleted && (this.currentFrame = this.timeCompleted), this.trigger("enterFrame"), this.renderFrame(), this.trigger("drawnFrame")
        }, he.prototype.renderFrame = function() {
            if (!(this.isLoaded === !1 || !this.renderer)) try {
                this.expressionsPlugin && this.expressionsPlugin.resetFrame(), this.renderer.renderFrame(this.currentFrame + this.firstFrame)
            } catch (c) {
                this.triggerRenderFrameError(c)
            }
        }, he.prototype.play = function(c) {
            c && this.name !== c || this.isPaused === !0 && (this.isPaused = !1, this.trigger("_play"), this.audioController.resume(), this._idle && (this._idle = !1, this.trigger("_active")))
        }, he.prototype.pause = function(c) {
            c && this.name !== c || this.isPaused === !1 && (this.isPaused = !0, this.trigger("_pause"), this._idle = !0, this.trigger("_idle"), this.audioController.pause())
        }, he.prototype.togglePause = function(c) {
            c && this.name !== c || (this.isPaused === !0 ? this.play() : this.pause())
        }, he.prototype.stop = function(c) {
            c && this.name !== c || (this.pause(), this.playCount = 0, this._completedLoop = !1, this.setCurrentRawFrameValue(0))
        }, he.prototype.getMarkerData = function(c) {
            for (var h, v = 0; v < this.markers.length; v += 1)
                if (h = this.markers[v], h.payload && h.payload.name === c) return h;
            return null
        }, he.prototype.goToAndStop = function(c, h, v) {
            if (!(v && this.name !== v)) {
                var E = Number(c);
                if (isNaN(E)) {
                    var S = this.getMarkerData(c);
                    S && this.goToAndStop(S.time, !0)
                } else h ? this.setCurrentRawFrameValue(c) : this.setCurrentRawFrameValue(c * this.frameModifier);
                this.pause()
            }
        }, he.prototype.goToAndPlay = function(c, h, v) {
            if (!(v && this.name !== v)) {
                var E = Number(c);
                if (isNaN(E)) {
                    var S = this.getMarkerData(c);
                    S && (S.duration ? this.playSegments([S.time, S.time + S.duration], !0) : this.goToAndStop(S.time, !0))
                } else this.goToAndStop(E, h, v);
                this.play()
            }
        }, he.prototype.advanceTime = function(c) {
            if (!(this.isPaused === !0 || this.isLoaded === !1)) {
                var h = this.currentRawFrame + c * this.frameModifier,
                    v = !1;
                h >= this.totalFrames - 1 && this.frameModifier > 0 ? !this.loop || this.playCount === this.loop ? this.checkSegments(h > this.totalFrames ? h % this.totalFrames : 0) || (v = !0, h = this.totalFrames - 1) : h >= this.totalFrames ? (this.playCount += 1, this.checkSegments(h % this.totalFrames) || (this.setCurrentRawFrameValue(h % this.totalFrames), this._completedLoop = !0, this.trigger("loopComplete"))) : this.setCurrentRawFrameValue(h) : h < 0 ? this.checkSegments(h % this.totalFrames) || (this.loop && !(this.playCount-- <= 0 && this.loop !== !0) ? (this.setCurrentRawFrameValue(this.totalFrames + h % this.totalFrames), this._completedLoop ? this.trigger("loopComplete") : this._completedLoop = !0) : (v = !0, h = 0)) : this.setCurrentRawFrameValue(h), v && (this.setCurrentRawFrameValue(h), this.pause(), this.trigger("complete"))
            }
        }, he.prototype.adjustSegment = function(c, h) {
            this.playCount = 0, c[1] < c[0] ? (this.frameModifier > 0 && (this.playSpeed < 0 ? this.setSpeed(-this.playSpeed) : this.setDirection(-1)), this.totalFrames = c[0] - c[1], this.timeCompleted = this.totalFrames, this.firstFrame = c[1], this.setCurrentRawFrameValue(this.totalFrames - .001 - h)) : c[1] > c[0] && (this.frameModifier < 0 && (this.playSpeed < 0 ? this.setSpeed(-this.playSpeed) : this.setDirection(1)), this.totalFrames = c[1] - c[0], this.timeCompleted = this.totalFrames, this.firstFrame = c[0], this.setCurrentRawFrameValue(.001 + h)), this.trigger("segmentStart")
        }, he.prototype.setSegment = function(c, h) {
            var v = -1;
            this.isPaused && (this.currentRawFrame + this.firstFrame < c ? v = c : this.currentRawFrame + this.firstFrame > h && (v = h - c)), this.firstFrame = c, this.totalFrames = h - c, this.timeCompleted = this.totalFrames, v !== -1 && this.goToAndStop(v, !0)
        }, he.prototype.playSegments = function(c, h) {
            if (h && (this.segments.length = 0), we(c[0]) === "object") {
                var v, E = c.length;
                for (v = 0; v < E; v += 1) this.segments.push(c[v])
            } else this.segments.push(c);
            this.segments.length && h && this.adjustSegment(this.segments.shift(), 0), this.isPaused && this.play()
        }, he.prototype.resetSegments = function(c) {
            this.segments.length = 0, this.segments.push([this.animationData.ip, this.animationData.op]), c && this.checkSegments(0)
        }, he.prototype.checkSegments = function(c) {
            return this.segments.length ? (this.adjustSegment(this.segments.shift(), c), !0) : !1
        }, he.prototype.destroy = function(c) {
            c && this.name !== c || !this.renderer || (this.renderer.destroy(), this.imagePreloader.destroy(), this.trigger("destroy"), this._cbs = null, this.onEnterFrame = null, this.onLoopComplete = null, this.onComplete = null, this.onSegmentStart = null, this.onDestroy = null, this.renderer = null, this.expressionsPlugin = null, this.imagePreloader = null, this.projectInterface = null)
        }, he.prototype.setCurrentRawFrameValue = function(c) {
            this.currentRawFrame = c, this.gotoFrame()
        }, he.prototype.setSpeed = function(c) {
            this.playSpeed = c, this.updaFrameModifier()
        }, he.prototype.setDirection = function(c) {
            this.playDirection = c < 0 ? -1 : 1, this.updaFrameModifier()
        }, he.prototype.setLoop = function(c) {
            this.loop = c
        }, he.prototype.setVolume = function(c, h) {
            h && this.name !== h || this.audioController.setVolume(c)
        }, he.prototype.getVolume = function() {
            return this.audioController.getVolume()
        }, he.prototype.mute = function(c) {
            c && this.name !== c || this.audioController.mute()
        }, he.prototype.unmute = function(c) {
            c && this.name !== c || this.audioController.unmute()
        }, he.prototype.updaFrameModifier = function() {
            this.frameModifier = this.frameMult * this.playSpeed * this.playDirection, this.audioController.setRate(this.playSpeed * this.playDirection)
        }, he.prototype.getPath = function() {
            return this.path
        }, he.prototype.getAssetsPath = function(c) {
            var h = "";
            if (c.e) h = c.p;
            else if (this.assetsPath) {
                var v = c.p;
                v.indexOf("images/") !== -1 && (v = v.split("/")[1]), h = this.assetsPath + v
            } else h = this.path, h += c.u ? c.u : "", h += c.p;
            return h
        }, he.prototype.getAssetData = function(c) {
            for (var h = 0, v = this.assets.length; h < v;) {
                if (c === this.assets[h].id) return this.assets[h];
                h += 1
            }
            return null
        }, he.prototype.hide = function() {
            this.renderer.hide()
        }, he.prototype.show = function() {
            this.renderer.show()
        }, he.prototype.getDuration = function(c) {
            return c ? this.totalFrames : this.totalFrames / this.frameRate
        }, he.prototype.updateDocumentData = function(c, h, v) {
            try {
                var E = this.renderer.getElementByPath(c);
                E.updateDocumentData(h, v)
            } catch {}
        }, he.prototype.trigger = function(c) {
            if (this._cbs && this._cbs[c]) switch (c) {
                case "enterFrame":
                    this.triggerEvent(c, new Q(c, this.currentFrame, this.totalFrames, this.frameModifier));
                    break;
                case "drawnFrame":
                    this.drawnFrameEvent.currentTime = this.currentFrame, this.drawnFrameEvent.totalTime = this.totalFrames, this.drawnFrameEvent.direction = this.frameModifier, this.triggerEvent(c, this.drawnFrameEvent);
                    break;
                case "loopComplete":
                    this.triggerEvent(c, new N(c, this.loop, this.playCount, this.frameMult));
                    break;
                case "complete":
                    this.triggerEvent(c, new O(c, this.frameMult));
                    break;
                case "segmentStart":
                    this.triggerEvent(c, new J(c, this.firstFrame, this.totalFrames));
                    break;
                case "destroy":
                    this.triggerEvent(c, new j(c, this));
                    break;
                default:
                    this.triggerEvent(c)
            }
            c === "enterFrame" && this.onEnterFrame && this.onEnterFrame.call(this, new Q(c, this.currentFrame, this.totalFrames, this.frameMult)), c === "loopComplete" && this.onLoopComplete && this.onLoopComplete.call(this, new N(c, this.loop, this.playCount, this.frameMult)), c === "complete" && this.onComplete && this.onComplete.call(this, new O(c, this.frameMult)), c === "segmentStart" && this.onSegmentStart && this.onSegmentStart.call(this, new J(c, this.firstFrame, this.totalFrames)), c === "destroy" && this.onDestroy && this.onDestroy.call(this, new j(c, this))
        }, he.prototype.triggerRenderFrameError = function(c) {
            var h = new V(c, this.currentFrame);
            this.triggerEvent("error", h), this.onError && this.onError.call(this, h)
        }, he.prototype.triggerConfigError = function(c) {
            var h = new ae(c, this.currentFrame);
            this.triggerEvent("error", h), this.onError && this.onError.call(this, h)
        };
        var Ke = function() {
                var c = {},
                    h = [],
                    v = 0,
                    E = 0,
                    S = 0,
                    _ = !0,
                    k = !1;

                function z(X) {
                    for (var de = 0, L = X.target; de < E;) h[de].animation === L && (h.splice(de, 1), de -= 1, E -= 1, L.isPaused || be()), de += 1
                }

                function H(X, de) {
                    if (!X) return null;
                    for (var L = 0; L < E;) {
                        if (h[L].elem === X && h[L].elem !== null) return h[L].animation;
                        L += 1
                    }
                    var R = new he;
                    return K(R, X), R.setData(X, de), R
                }

                function ne() {
                    var X, de = h.length,
                        L = [];
                    for (X = 0; X < de; X += 1) L.push(h[X].animation);
                    return L
                }

                function oe() {
                    S += 1, lt()
                }

                function be() {
                    S -= 1
                }

                function K(X, de) {
                    X.addEventListener("destroy", z), X.addEventListener("_active", oe), X.addEventListener("_idle", be), h.push({
                        elem: de,
                        animation: X
                    }), E += 1
                }

                function le(X) {
                    var de = new he;
                    return K(de, null), de.setParams(X), de
                }

                function pe(X, de) {
                    var L;
                    for (L = 0; L < E; L += 1) h[L].animation.setSpeed(X, de)
                }

                function fe(X, de) {
                    var L;
                    for (L = 0; L < E; L += 1) h[L].animation.setDirection(X, de)
                }

                function Ce(X) {
                    var de;
                    for (de = 0; de < E; de += 1) h[de].animation.play(X)
                }

                function Ae(X) {
                    var de = X - v,
                        L;
                    for (L = 0; L < E; L += 1) h[L].animation.advanceTime(de);
                    v = X, S && !k ? window.requestAnimationFrame(Ae) : _ = !0
                }

                function q(X) {
                    v = X, window.requestAnimationFrame(Ae)
                }

                function $(X) {
                    var de;
                    for (de = 0; de < E; de += 1) h[de].animation.pause(X)
                }

                function G(X, de, L) {
                    var R;
                    for (R = 0; R < E; R += 1) h[R].animation.goToAndStop(X, de, L)
                }

                function re(X) {
                    var de;
                    for (de = 0; de < E; de += 1) h[de].animation.stop(X)
                }

                function ge(X) {
                    var de;
                    for (de = 0; de < E; de += 1) h[de].animation.togglePause(X)
                }

                function Ee(X) {
                    var de;
                    for (de = E - 1; de >= 0; de -= 1) h[de].animation.destroy(X)
                }

                function Qe(X, de, L) {
                    var R = [].concat([].slice.call(document.getElementsByClassName("lottie")), [].slice.call(document.getElementsByClassName("bodymovin"))),
                        Se, me = R.length;
                    for (Se = 0; Se < me; Se += 1) L && R[Se].setAttribute("data-bm-type", L), H(R[Se], X);
                    if (de && me === 0) {
                        L || (L = "svg");
                        var Xe = document.getElementsByTagName("body")[0];
                        Xe.innerText = "";
                        var at = u("div");
                        at.style.width = "100%", at.style.height = "100%", at.setAttribute("data-bm-type", L), Xe.appendChild(at), H(at, X)
                    }
                }

                function Re() {
                    var X;
                    for (X = 0; X < E; X += 1) h[X].animation.resize()
                }

                function lt() {
                    !k && S && _ && (window.requestAnimationFrame(q), _ = !1)
                }

                function it() {
                    k = !0
                }

                function Ve() {
                    k = !1, lt()
                }

                function ct(X, de) {
                    var L;
                    for (L = 0; L < E; L += 1) h[L].animation.setVolume(X, de)
                }

                function rt(X) {
                    var de;
                    for (de = 0; de < E; de += 1) h[de].animation.mute(X)
                }

                function Me(X) {
                    var de;
                    for (de = 0; de < E; de += 1) h[de].animation.unmute(X)
                }
                return c.registerAnimation = H, c.loadAnimation = le, c.setSpeed = pe, c.setDirection = fe, c.play = Ce, c.pause = $, c.stop = re, c.togglePause = ge, c.searchAnimations = Qe, c.resize = Re, c.goToAndStop = G, c.destroy = Ee, c.freeze = it, c.unfreeze = Ve, c.setVolume = ct, c.mute = rt, c.unmute = Me, c.getRegisteredAnimations = ne, c
            }(),
            Je = function() {
                var c = {};
                c.getBezierEasing = v;
                var h = {};

                function v(q, $, G, re, ge) {
                    var Ee = ge || ("bez_" + q + "_" + $ + "_" + G + "_" + re).replace(/\./g, "p");
                    if (h[Ee]) return h[Ee];
                    var Qe = new Ae([q, $, G, re]);
                    return h[Ee] = Qe, Qe
                }
                var E = 4,
                    S = .001,
                    _ = 1e-7,
                    k = 10,
                    z = 11,
                    H = 1 / (z - 1),
                    ne = typeof Float32Array == "function";

                function oe(q, $) {
                    return 1 - 3 * $ + 3 * q
                }

                function be(q, $) {
                    return 3 * $ - 6 * q
                }

                function K(q) {
                    return 3 * q
                }

                function le(q, $, G) {
                    return ((oe($, G) * q + be($, G)) * q + K($)) * q
                }

                function pe(q, $, G) {
                    return 3 * oe($, G) * q * q + 2 * be($, G) * q + K($)
                }

                function fe(q, $, G, re, ge) {
                    var Ee, Qe, Re = 0;
                    do Qe = $ + (G - $) / 2, Ee = le(Qe, re, ge) - q, Ee > 0 ? G = Qe : $ = Qe; while (Math.abs(Ee) > _ && ++Re < k);
                    return Qe
                }

                function Ce(q, $, G, re) {
                    for (var ge = 0; ge < E; ++ge) {
                        var Ee = pe($, G, re);
                        if (Ee === 0) return $;
                        var Qe = le($, G, re) - q;
                        $ -= Qe / Ee
                    }
                    return $
                }

                function Ae(q) {
                    this._p = q, this._mSampleValues = ne ? new Float32Array(z) : new Array(z), this._precomputed = !1, this.get = this.get.bind(this)
                }
                return Ae.prototype = {
                    get: function($) {
                        var G = this._p[0],
                            re = this._p[1],
                            ge = this._p[2],
                            Ee = this._p[3];
                        return this._precomputed || this._precompute(), G === re && ge === Ee ? $ : $ === 0 ? 0 : $ === 1 ? 1 : le(this._getTForX($), re, Ee)
                    },
                    _precompute: function() {
                        var $ = this._p[0],
                            G = this._p[1],
                            re = this._p[2],
                            ge = this._p[3];
                        this._precomputed = !0, ($ !== G || re !== ge) && this._calcSampleValues()
                    },
                    _calcSampleValues: function() {
                        for (var $ = this._p[0], G = this._p[2], re = 0; re < z; ++re) this._mSampleValues[re] = le(re * H, $, G)
                    },
                    _getTForX: function($) {
                        for (var G = this._p[0], re = this._p[2], ge = this._mSampleValues, Ee = 0, Qe = 1, Re = z - 1; Qe !== Re && ge[Qe] <= $; ++Qe) Ee += H;
                        --Qe;
                        var lt = ($ - ge[Qe]) / (ge[Qe + 1] - ge[Qe]),
                            it = Ee + lt * H,
                            Ve = pe(it, G, re);
                        return Ve >= S ? Ce($, it, G, re) : Ve === 0 ? it : fe($, Ee, Ee + H, G, re)
                    }
                }, c
            }(),
            ot = function() {
                function c(h) {
                    return h.concat(g(h.length))
                }
                return {
                    double: c
                }
            }(),
            gt = function() {
                return function(c, h, v) {
                    var E = 0,
                        S = c,
                        _ = g(S),
                        k = {
                            newElement: z,
                            release: H
                        };

                    function z() {
                        var ne;
                        return E ? (E -= 1, ne = _[E]) : ne = h(), ne
                    }

                    function H(ne) {
                        E === S && (_ = ot.double(_), S *= 2), v && v(ne), _[E] = ne, E += 1
                    }
                    return k
                }
            }(),
            Bt = function() {
                function c() {
                    return {
                        addedLength: 0,
                        percents: m("float32", De()),
                        lengths: m("float32", De())
                    }
                }
                return gt(8, c)
            }(),
            kt = function() {
                function c() {
                    return {
                        lengths: [],
                        totalLength: 0
                    }
                }

                function h(v) {
                    var E, S = v.lengths.length;
                    for (E = 0; E < S; E += 1) Bt.release(v.lengths[E]);
                    v.lengths.length = 0
                }
                return gt(8, c, h)
            }();

        function Hn() {
            var c = Math;

            function h(K, le, pe, fe, Ce, Ae) {
                var q = K * fe + le * Ce + pe * Ae - Ce * fe - Ae * K - pe * le;
                return q > -.001 && q < .001
            }

            function v(K, le, pe, fe, Ce, Ae, q, $, G) {
                if (pe === 0 && Ae === 0 && G === 0) return h(K, le, fe, Ce, q, $);
                var re = c.sqrt(c.pow(fe - K, 2) + c.pow(Ce - le, 2) + c.pow(Ae - pe, 2)),
                    ge = c.sqrt(c.pow(q - K, 2) + c.pow($ - le, 2) + c.pow(G - pe, 2)),
                    Ee = c.sqrt(c.pow(q - fe, 2) + c.pow($ - Ce, 2) + c.pow(G - Ae, 2)),
                    Qe;
                return re > ge ? re > Ee ? Qe = re - ge - Ee : Qe = Ee - ge - re : Ee > ge ? Qe = Ee - ge - re : Qe = ge - re - Ee, Qe > -1e-4 && Qe < 1e-4
            }
            var E = function() {
                return function(K, le, pe, fe) {
                    var Ce = De(),
                        Ae, q, $, G, re, ge = 0,
                        Ee, Qe = [],
                        Re = [],
                        lt = Bt.newElement();
                    for ($ = pe.length, Ae = 0; Ae < Ce; Ae += 1) {
                        for (re = Ae / (Ce - 1), Ee = 0, q = 0; q < $; q += 1) G = C(1 - re, 3) * K[q] + 3 * C(1 - re, 2) * re * pe[q] + 3 * (1 - re) * C(re, 2) * fe[q] + C(re, 3) * le[q], Qe[q] = G, Re[q] !== null && (Ee += C(Qe[q] - Re[q], 2)), Re[q] = Qe[q];
                        Ee && (Ee = b(Ee), ge += Ee), lt.percents[Ae] = re, lt.lengths[Ae] = ge
                    }
                    return lt.addedLength = ge, lt
                }
            }();

            function S(K) {
                var le = kt.newElement(),
                    pe = K.c,
                    fe = K.v,
                    Ce = K.o,
                    Ae = K.i,
                    q, $ = K._length,
                    G = le.lengths,
                    re = 0;
                for (q = 0; q < $ - 1; q += 1) G[q] = E(fe[q], fe[q + 1], Ce[q], Ae[q + 1]), re += G[q].addedLength;
                return pe && $ && (G[q] = E(fe[q], fe[0], Ce[q], Ae[0]), re += G[q].addedLength), le.totalLength = re, le
            }

            function _(K) {
                this.segmentLength = 0, this.points = new Array(K)
            }

            function k(K, le) {
                this.partialLength = K, this.point = le
            }
            var z = function() {
                var K = {};
                return function(le, pe, fe, Ce) {
                    var Ae = (le[0] + "_" + le[1] + "_" + pe[0] + "_" + pe[1] + "_" + fe[0] + "_" + fe[1] + "_" + Ce[0] + "_" + Ce[1]).replace(/\./g, "p");
                    if (!K[Ae]) {
                        var q = De(),
                            $, G, re, ge, Ee, Qe = 0,
                            Re, lt, it = null;
                        le.length === 2 && (le[0] !== pe[0] || le[1] !== pe[1]) && h(le[0], le[1], pe[0], pe[1], le[0] + fe[0], le[1] + fe[1]) && h(le[0], le[1], pe[0], pe[1], pe[0] + Ce[0], pe[1] + Ce[1]) && (q = 2);
                        var Ve = new _(q);
                        for (re = fe.length, $ = 0; $ < q; $ += 1) {
                            for (lt = g(re), Ee = $ / (q - 1), Re = 0, G = 0; G < re; G += 1) ge = C(1 - Ee, 3) * le[G] + 3 * C(1 - Ee, 2) * Ee * (le[G] + fe[G]) + 3 * (1 - Ee) * C(Ee, 2) * (pe[G] + Ce[G]) + C(Ee, 3) * pe[G], lt[G] = ge, it !== null && (Re += C(lt[G] - it[G], 2));
                            Re = b(Re), Qe += Re, Ve.points[$] = new k(Re, lt), it = lt
                        }
                        Ve.segmentLength = Qe, K[Ae] = Ve
                    }
                    return K[Ae]
                }
            }();

            function H(K, le) {
                var pe = le.percents,
                    fe = le.lengths,
                    Ce = pe.length,
                    Ae = F((Ce - 1) * K),
                    q = K * le.addedLength,
                    $ = 0;
                if (Ae === Ce - 1 || Ae === 0 || q === fe[Ae]) return pe[Ae];
                for (var G = fe[Ae] > q ? -1 : 1, re = !0; re;)
                    if (fe[Ae] <= q && fe[Ae + 1] > q ? ($ = (q - fe[Ae]) / (fe[Ae + 1] - fe[Ae]), re = !1) : Ae += G, Ae < 0 || Ae >= Ce - 1) {
                        if (Ae === Ce - 1) return pe[Ae];
                        re = !1
                    }
                return pe[Ae] + (pe[Ae + 1] - pe[Ae]) * $
            }

            function ne(K, le, pe, fe, Ce, Ae) {
                var q = H(Ce, Ae),
                    $ = 1 - q,
                    G = c.round(($ * $ * $ * K[0] + (q * $ * $ + $ * q * $ + $ * $ * q) * pe[0] + (q * q * $ + $ * q * q + q * $ * q) * fe[0] + q * q * q * le[0]) * 1e3) / 1e3,
                    re = c.round(($ * $ * $ * K[1] + (q * $ * $ + $ * q * $ + $ * $ * q) * pe[1] + (q * q * $ + $ * q * q + q * $ * q) * fe[1] + q * q * q * le[1]) * 1e3) / 1e3;
                return [G, re]
            }
            var oe = m("float32", 8);

            function be(K, le, pe, fe, Ce, Ae, q) {
                Ce < 0 ? Ce = 0 : Ce > 1 && (Ce = 1);
                var $ = H(Ce, q);
                Ae = Ae > 1 ? 1 : Ae;
                var G = H(Ae, q),
                    re, ge = K.length,
                    Ee = 1 - $,
                    Qe = 1 - G,
                    Re = Ee * Ee * Ee,
                    lt = $ * Ee * Ee * 3,
                    it = $ * $ * Ee * 3,
                    Ve = $ * $ * $,
                    ct = Ee * Ee * Qe,
                    rt = $ * Ee * Qe + Ee * $ * Qe + Ee * Ee * G,
                    Me = $ * $ * Qe + Ee * $ * G + $ * Ee * G,
                    X = $ * $ * G,
                    de = Ee * Qe * Qe,
                    L = $ * Qe * Qe + Ee * G * Qe + Ee * Qe * G,
                    R = $ * G * Qe + Ee * G * G + $ * Qe * G,
                    Se = $ * G * G,
                    me = Qe * Qe * Qe,
                    Xe = G * Qe * Qe + Qe * G * Qe + Qe * Qe * G,
                    at = G * G * Qe + Qe * G * G + G * Qe * G,
                    ut = G * G * G;
                for (re = 0; re < ge; re += 1) oe[re * 4] = c.round((Re * K[re] + lt * pe[re] + it * fe[re] + Ve * le[re]) * 1e3) / 1e3, oe[re * 4 + 1] = c.round((ct * K[re] + rt * pe[re] + Me * fe[re] + X * le[re]) * 1e3) / 1e3, oe[re * 4 + 2] = c.round((de * K[re] + L * pe[re] + R * fe[re] + Se * le[re]) * 1e3) / 1e3, oe[re * 4 + 3] = c.round((me * K[re] + Xe * pe[re] + at * fe[re] + ut * le[re]) * 1e3) / 1e3;
                return oe
            }
            return {
                getSegmentsLength: S,
                getNewSegment: be,
                getPointInSegment: ne,
                buildBezierData: z,
                pointOnLine2D: h,
                pointOnLine3D: v
            }
        }
        var Yt = Hn(),
            zn = i,
            uA = Math.abs;

        function hi(c, h) {
            var v = this.offsetTime,
                E;
            this.propType === "multidimensional" && (E = m("float32", this.pv.length));
            for (var S = h.lastIndex, _ = S, k = this.keyframes.length - 1, z = !0, H, ne, oe; z;) {
                if (H = this.keyframes[_], ne = this.keyframes[_ + 1], _ === k - 1 && c >= ne.t - v) {
                    H.h && (H = ne), S = 0;
                    break
                }
                if (ne.t - v > c) {
                    S = _;
                    break
                }
                _ < k - 1 ? _ += 1 : (S = 0, z = !1)
            }
            oe = this.keyframesMetadata[_] || {};
            var be, K, le, pe, fe, Ce, Ae = ne.t - v,
                q = H.t - v,
                $;
            if (H.to) {
                oe.bezierData || (oe.bezierData = Yt.buildBezierData(H.s, ne.s || H.e, H.to, H.ti));
                var G = oe.bezierData;
                if (c >= Ae || c < q) {
                    var re = c >= Ae ? G.points.length - 1 : 0;
                    for (K = G.points[re].point.length, be = 0; be < K; be += 1) E[be] = G.points[re].point[be]
                } else {
                    oe.__fnct ? Ce = oe.__fnct : (Ce = Je.getBezierEasing(H.o.x, H.o.y, H.i.x, H.i.y, H.n).get, oe.__fnct = Ce), le = Ce((c - q) / (Ae - q));
                    var ge = G.segmentLength * le,
                        Ee, Qe = h.lastFrame < c && h._lastKeyframeIndex === _ ? h._lastAddedLength : 0;
                    for (fe = h.lastFrame < c && h._lastKeyframeIndex === _ ? h._lastPoint : 0, z = !0, pe = G.points.length; z;) {
                        if (Qe += G.points[fe].partialLength, ge === 0 || le === 0 || fe === G.points.length - 1) {
                            for (K = G.points[fe].point.length, be = 0; be < K; be += 1) E[be] = G.points[fe].point[be];
                            break
                        } else if (ge >= Qe && ge < Qe + G.points[fe + 1].partialLength) {
                            for (Ee = (ge - Qe) / G.points[fe + 1].partialLength, K = G.points[fe].point.length, be = 0; be < K; be += 1) E[be] = G.points[fe].point[be] + (G.points[fe + 1].point[be] - G.points[fe].point[be]) * Ee;
                            break
                        }
                        fe < pe - 1 ? fe += 1 : z = !1
                    }
                    h._lastPoint = fe, h._lastAddedLength = Qe - G.points[fe].partialLength, h._lastKeyframeIndex = _
                }
            } else {
                var Re, lt, it, Ve, ct;
                if (k = H.s.length, $ = ne.s || H.e, this.sh && H.h !== 1)
                    if (c >= Ae) E[0] = $[0], E[1] = $[1], E[2] = $[2];
                    else if (c <= q) E[0] = H.s[0], E[1] = H.s[1], E[2] = H.s[2];
                else {
                    var rt = ws(H.s),
                        Me = ws($),
                        X = (c - q) / (Ae - q);
                    sr(E, _n(rt, Me, X))
                } else
                    for (_ = 0; _ < k; _ += 1) H.h !== 1 && (c >= Ae ? le = 1 : c < q ? le = 0 : (H.o.x.constructor === Array ? (oe.__fnct || (oe.__fnct = []), oe.__fnct[_] ? Ce = oe.__fnct[_] : (Re = H.o.x[_] === void 0 ? H.o.x[0] : H.o.x[_], lt = H.o.y[_] === void 0 ? H.o.y[0] : H.o.y[_], it = H.i.x[_] === void 0 ? H.i.x[0] : H.i.x[_], Ve = H.i.y[_] === void 0 ? H.i.y[0] : H.i.y[_], Ce = Je.getBezierEasing(Re, lt, it, Ve).get, oe.__fnct[_] = Ce)) : oe.__fnct ? Ce = oe.__fnct : (Re = H.o.x, lt = H.o.y, it = H.i.x, Ve = H.i.y, Ce = Je.getBezierEasing(Re, lt, it, Ve).get, H.keyframeMetadata = Ce), le = Ce((c - q) / (Ae - q)))), $ = ne.s || H.e, ct = H.h === 1 ? H.s[_] : H.s[_] + ($[_] - H.s[_]) * le, this.propType === "multidimensional" ? E[_] = ct : E = ct
            }
            return h.lastIndex = S, E
        }

        function _n(c, h, v) {
            var E = [],
                S = c[0],
                _ = c[1],
                k = c[2],
                z = c[3],
                H = h[0],
                ne = h[1],
                oe = h[2],
                be = h[3],
                K, le, pe, fe, Ce;
            return le = S * H + _ * ne + k * oe + z * be, le < 0 && (le = -le, H = -H, ne = -ne, oe = -oe, be = -be), 1 - le > 1e-6 ? (K = Math.acos(le), pe = Math.sin(K), fe = Math.sin((1 - v) * K) / pe, Ce = Math.sin(v * K) / pe) : (fe = 1 - v, Ce = v), E[0] = fe * S + Ce * H, E[1] = fe * _ + Ce * ne, E[2] = fe * k + Ce * oe, E[3] = fe * z + Ce * be, E
        }

        function sr(c, h) {
            var v = h[0],
                E = h[1],
                S = h[2],
                _ = h[3],
                k = Math.atan2(2 * E * _ - 2 * v * S, 1 - 2 * E * E - 2 * S * S),
                z = Math.asin(2 * v * E + 2 * S * _),
                H = Math.atan2(2 * v * _ - 2 * E * S, 1 - 2 * v * v - 2 * S * S);
            c[0] = k / D, c[1] = z / D, c[2] = H / D
        }

        function ws(c) {
            var h = c[0] * D,
                v = c[1] * D,
                E = c[2] * D,
                S = Math.cos(h / 2),
                _ = Math.cos(v / 2),
                k = Math.cos(E / 2),
                z = Math.sin(h / 2),
                H = Math.sin(v / 2),
                ne = Math.sin(E / 2),
                oe = S * _ * k - z * H * ne,
                be = z * H * k + S * _ * ne,
                K = z * _ * k + S * H * ne,
                le = S * H * k - z * _ * ne;
            return [be, K, le, oe]
        }

        function Do() {
            var c = this.comp.renderedFrame - this.offsetTime,
                h = this.keyframes[0].t - this.offsetTime,
                v = this.keyframes[this.keyframes.length - 1].t - this.offsetTime;
            if (!(c === this._caching.lastFrame || this._caching.lastFrame !== zn && (this._caching.lastFrame >= v && c >= v || this._caching.lastFrame < h && c < h))) {
                this._caching.lastFrame >= c && (this._caching._lastKeyframeIndex = -1, this._caching.lastIndex = 0);
                var E = this.interpolateValue(c, this._caching);
                this.pv = E
            }
            return this._caching.lastFrame = c, this.pv
        }

        function ua(c) {
            var h;
            if (this.propType === "unidimensional") h = c * this.mult, uA(this.v - h) > 1e-5 && (this.v = h, this._mdf = !0);
            else
                for (var v = 0, E = this.v.length; v < E;) h = c[v] * this.mult, uA(this.v[v] - h) > 1e-5 && (this.v[v] = h, this._mdf = !0), v += 1
        }

        function ys() {
            if (!(this.elem.globalData.frameId === this.frameId || !this.effectsSequence.length)) {
                if (this.lock) {
                    this.setVValue(this.pv);
                    return
                }
                this.lock = !0, this._mdf = this._isFirstFrame;
                var c, h = this.effectsSequence.length,
                    v = this.kf ? this.pv : this.data.k;
                for (c = 0; c < h; c += 1) v = this.effectsSequence[c](v);
                this.setVValue(v), this._isFirstFrame = !1, this.lock = !1, this.frameId = this.elem.globalData.frameId
            }
        }

        function ca(c) {
            this.effectsSequence.push(c), this.container.addDynamicProperty(this)
        }

        function I0(c, h, v, E) {
            this.propType = "unidimensional", this.mult = v || 1, this.data = h, this.v = v ? h.k * v : h.k, this.pv = h.k, this._mdf = !1, this.elem = c, this.container = E, this.comp = c.comp, this.k = !1, this.kf = !1, this.vel = 0, this.effectsSequence = [], this._isFirstFrame = !0, this.getValue = ys, this.setVValue = ua, this.addEffect = ca
        }

        function qf(c, h, v, E) {
            this.propType = "multidimensional", this.mult = v || 1, this.data = h, this._mdf = !1, this.elem = c, this.container = E, this.comp = c.comp, this.k = !1, this.kf = !1, this.frameId = -1;
            var S, _ = h.k.length;
            for (this.v = m("float32", _), this.pv = m("float32", _), this.vel = m("float32", _), S = 0; S < _; S += 1) this.v[S] = h.k[S] * this.mult, this.pv[S] = h.k[S];
            this._isFirstFrame = !0, this.effectsSequence = [], this.getValue = ys, this.setVValue = ua, this.addEffect = ca
        }

        function Zf(c, h, v, E) {
            this.propType = "unidimensional", this.keyframes = h.k, this.keyframesMetadata = [], this.offsetTime = c.data.st, this.frameId = -1, this._caching = {
                lastFrame: zn,
                lastIndex: 0,
                value: 0,
                _lastKeyframeIndex: -1
            }, this.k = !0, this.kf = !0, this.data = h, this.mult = v || 1, this.elem = c, this.container = E, this.comp = c.comp, this.v = zn, this.pv = zn, this._isFirstFrame = !0, this.getValue = ys, this.setVValue = ua, this.interpolateValue = hi, this.effectsSequence = [Do.bind(this)], this.addEffect = ca
        }

        function e1(c, h, v, E) {
            this.propType = "multidimensional";
            var S, _ = h.k.length,
                k, z, H, ne;
            for (S = 0; S < _ - 1; S += 1) h.k[S].to && h.k[S].s && h.k[S + 1] && h.k[S + 1].s && (k = h.k[S].s, z = h.k[S + 1].s, H = h.k[S].to, ne = h.k[S].ti, (k.length === 2 && !(k[0] === z[0] && k[1] === z[1]) && Yt.pointOnLine2D(k[0], k[1], z[0], z[1], k[0] + H[0], k[1] + H[1]) && Yt.pointOnLine2D(k[0], k[1], z[0], z[1], z[0] + ne[0], z[1] + ne[1]) || k.length === 3 && !(k[0] === z[0] && k[1] === z[1] && k[2] === z[2]) && Yt.pointOnLine3D(k[0], k[1], k[2], z[0], z[1], z[2], k[0] + H[0], k[1] + H[1], k[2] + H[2]) && Yt.pointOnLine3D(k[0], k[1], k[2], z[0], z[1], z[2], z[0] + ne[0], z[1] + ne[1], z[2] + ne[2])) && (h.k[S].to = null, h.k[S].ti = null), k[0] === z[0] && k[1] === z[1] && H[0] === 0 && H[1] === 0 && ne[0] === 0 && ne[1] === 0 && (k.length === 2 || k[2] === z[2] && H[2] === 0 && ne[2] === 0) && (h.k[S].to = null, h.k[S].ti = null));
            this.effectsSequence = [Do.bind(this)], this.data = h, this.keyframes = h.k, this.keyframesMetadata = [], this.offsetTime = c.data.st, this.k = !0, this.kf = !0, this._isFirstFrame = !0, this.mult = v || 1, this.elem = c, this.container = E, this.comp = c.comp, this.getValue = ys, this.setVValue = ua, this.interpolateValue = hi, this.frameId = -1;
            var oe = h.k[0].s.length;
            for (this.v = m("float32", oe), this.pv = m("float32", oe), S = 0; S < oe; S += 1) this.v[S] = zn, this.pv[S] = zn;
            this._caching = {
                lastFrame: zn,
                lastIndex: 0,
                value: m("float32", oe)
            }, this.addEffect = ca
        }
        var Ge = function() {
            function c(v, E, S, _, k) {
                E.sid && (E = v.globalData.slotManager.getProp(E));
                var z;
                if (!E.k.length) z = new I0(v, E, _, k);
                else if (typeof E.k[0] == "number") z = new qf(v, E, _, k);
                else switch (S) {
                    case 0:
                        z = new Zf(v, E, _, k);
                        break;
                    case 1:
                        z = new e1(v, E, _, k);
                        break
                }
                return z.effectsSequence.length && k.addDynamicProperty(z), z
            }
            var h = {
                getProp: c
            };
            return h
        }();

        function gn() {}
        gn.prototype = {
            addDynamicProperty: function(h) {
                this.dynamicProperties.indexOf(h) === -1 && (this.dynamicProperties.push(h), this.container.addDynamicProperty(this), this._isAnimated = !0)
            },
            iterateDynamicProperties: function() {
                this._mdf = !1;
                var h, v = this.dynamicProperties.length;
                for (h = 0; h < v; h += 1) this.dynamicProperties[h].getValue(), this.dynamicProperties[h]._mdf && (this._mdf = !0)
            },
            initDynamicPropertyContainer: function(h) {
                this.container = h, this.dynamicProperties = [], this._mdf = !1, this._isAnimated = !1
            }
        };
        var TA = function() {
            function c() {
                return m("float32", 2)
            }
            return gt(8, c)
        }();

        function Pr() {
            this.c = !1, this._length = 0, this._maxLength = 8, this.v = g(this._maxLength), this.o = g(this._maxLength), this.i = g(this._maxLength)
        }
        Pr.prototype.setPathData = function(c, h) {
            this.c = c, this.setLength(h);
            for (var v = 0; v < h;) this.v[v] = TA.newElement(), this.o[v] = TA.newElement(), this.i[v] = TA.newElement(), v += 1
        }, Pr.prototype.setLength = function(c) {
            for (; this._maxLength < c;) this.doubleArrayLength();
            this._length = c
        }, Pr.prototype.doubleArrayLength = function() {
            this.v = this.v.concat(g(this._maxLength)), this.i = this.i.concat(g(this._maxLength)), this.o = this.o.concat(g(this._maxLength)), this._maxLength *= 2
        }, Pr.prototype.setXYAt = function(c, h, v, E, S) {
            var _;
            switch (this._length = Math.max(this._length, E + 1), this._length >= this._maxLength && this.doubleArrayLength(), v) {
                case "v":
                    _ = this.v;
                    break;
                case "i":
                    _ = this.i;
                    break;
                case "o":
                    _ = this.o;
                    break;
                default:
                    _ = [];
                    break
            }(!_[E] || _[E] && !S) && (_[E] = TA.newElement()), _[E][0] = c, _[E][1] = h
        }, Pr.prototype.setTripleAt = function(c, h, v, E, S, _, k, z) {
            this.setXYAt(c, h, "v", k, z), this.setXYAt(v, E, "o", k, z), this.setXYAt(S, _, "i", k, z)
        }, Pr.prototype.reverse = function() {
            var c = new Pr;
            c.setPathData(this.c, this._length);
            var h = this.v,
                v = this.o,
                E = this.i,
                S = 0;
            this.c && (c.setTripleAt(h[0][0], h[0][1], E[0][0], E[0][1], v[0][0], v[0][1], 0, !1), S = 1);
            var _ = this._length - 1,
                k = this._length,
                z;
            for (z = S; z < k; z += 1) c.setTripleAt(h[_][0], h[_][1], E[_][0], E[_][1], v[_][0], v[_][1], z, !1), _ -= 1;
            return c
        }, Pr.prototype.length = function() {
            return this._length
        };
        var Sn = function() {
            function c() {
                return new Pr
            }

            function h(S) {
                var _ = S._length,
                    k;
                for (k = 0; k < _; k += 1) TA.release(S.v[k]), TA.release(S.i[k]), TA.release(S.o[k]), S.v[k] = null, S.i[k] = null, S.o[k] = null;
                S._length = 0, S.c = !1
            }

            function v(S) {
                var _ = E.newElement(),
                    k, z = S._length === void 0 ? S.v.length : S._length;
                for (_.setLength(z), _.c = S.c, k = 0; k < z; k += 1) _.setTripleAt(S.v[k][0], S.v[k][1], S.o[k][0], S.o[k][1], S.i[k][0], S.i[k][1], k);
                return _
            }
            var E = gt(4, c, h);
            return E.clone = v, E
        }();

        function fa() {
            this._length = 0, this._maxLength = 4, this.shapes = g(this._maxLength)
        }
        fa.prototype.addShape = function(c) {
            this._length === this._maxLength && (this.shapes = this.shapes.concat(g(this._maxLength)), this._maxLength *= 2), this.shapes[this._length] = c, this._length += 1
        }, fa.prototype.releaseShapes = function() {
            var c;
            for (c = 0; c < this._length; c += 1) Sn.release(this.shapes[c]);
            this._length = 0
        };
        var on = function() {
                var c = {
                        newShapeCollection: S,
                        release: _
                    },
                    h = 0,
                    v = 4,
                    E = g(v);

                function S() {
                    var k;
                    return h ? (h -= 1, k = E[h]) : k = new fa, k
                }

                function _(k) {
                    var z, H = k._length;
                    for (z = 0; z < H; z += 1) Sn.release(k.shapes[z]);
                    k._length = 0, h === v && (E = ot.double(E), v *= 2), E[h] = k, h += 1
                }
                return c
            }(),
            yr = function() {
                var c = -999999;

                function h(Ae, q, $) {
                    var G = $.lastIndex,
                        re, ge, Ee, Qe, Re, lt, it, Ve, ct, rt = this.keyframes;
                    if (Ae < rt[0].t - this.offsetTime) re = rt[0].s[0], Ee = !0, G = 0;
                    else if (Ae >= rt[rt.length - 1].t - this.offsetTime) re = rt[rt.length - 1].s ? rt[rt.length - 1].s[0] : rt[rt.length - 2].e[0], Ee = !0;
                    else {
                        for (var Me = G, X = rt.length - 1, de = !0, L, R, Se; de && (L = rt[Me], R = rt[Me + 1], !(R.t - this.offsetTime > Ae));) Me < X - 1 ? Me += 1 : de = !1;
                        if (Se = this.keyframesMetadata[Me] || {}, Ee = L.h === 1, G = Me, !Ee) {
                            if (Ae >= R.t - this.offsetTime) Ve = 1;
                            else if (Ae < L.t - this.offsetTime) Ve = 0;
                            else {
                                var me;
                                Se.__fnct ? me = Se.__fnct : (me = Je.getBezierEasing(L.o.x, L.o.y, L.i.x, L.i.y).get, Se.__fnct = me), Ve = me((Ae - (L.t - this.offsetTime)) / (R.t - this.offsetTime - (L.t - this.offsetTime)))
                            }
                            ge = R.s ? R.s[0] : L.e[0]
                        }
                        re = L.s[0]
                    }
                    for (lt = q._length, it = re.i[0].length, $.lastIndex = G, Qe = 0; Qe < lt; Qe += 1)
                        for (Re = 0; Re < it; Re += 1) ct = Ee ? re.i[Qe][Re] : re.i[Qe][Re] + (ge.i[Qe][Re] - re.i[Qe][Re]) * Ve, q.i[Qe][Re] = ct, ct = Ee ? re.o[Qe][Re] : re.o[Qe][Re] + (ge.o[Qe][Re] - re.o[Qe][Re]) * Ve, q.o[Qe][Re] = ct, ct = Ee ? re.v[Qe][Re] : re.v[Qe][Re] + (ge.v[Qe][Re] - re.v[Qe][Re]) * Ve, q.v[Qe][Re] = ct
                }

                function v() {
                    var Ae = this.comp.renderedFrame - this.offsetTime,
                        q = this.keyframes[0].t - this.offsetTime,
                        $ = this.keyframes[this.keyframes.length - 1].t - this.offsetTime,
                        G = this._caching.lastFrame;
                    return G !== c && (G < q && Ae < q || G > $ && Ae > $) || (this._caching.lastIndex = G < Ae ? this._caching.lastIndex : 0, this.interpolateShape(Ae, this.pv, this._caching)), this._caching.lastFrame = Ae, this.pv
                }

                function E() {
                    this.paths = this.localShapeCollection
                }

                function S(Ae, q) {
                    if (Ae._length !== q._length || Ae.c !== q.c) return !1;
                    var $, G = Ae._length;
                    for ($ = 0; $ < G; $ += 1)
                        if (Ae.v[$][0] !== q.v[$][0] || Ae.v[$][1] !== q.v[$][1] || Ae.o[$][0] !== q.o[$][0] || Ae.o[$][1] !== q.o[$][1] || Ae.i[$][0] !== q.i[$][0] || Ae.i[$][1] !== q.i[$][1]) return !1;
                    return !0
                }

                function _(Ae) {
                    S(this.v, Ae) || (this.v = Sn.clone(Ae), this.localShapeCollection.releaseShapes(), this.localShapeCollection.addShape(this.v), this._mdf = !0, this.paths = this.localShapeCollection)
                }

                function k() {
                    if (this.elem.globalData.frameId !== this.frameId) {
                        if (!this.effectsSequence.length) {
                            this._mdf = !1;
                            return
                        }
                        if (this.lock) {
                            this.setVValue(this.pv);
                            return
                        }
                        this.lock = !0, this._mdf = !1;
                        var Ae;
                        this.kf ? Ae = this.pv : this.data.ks ? Ae = this.data.ks.k : Ae = this.data.pt.k;
                        var q, $ = this.effectsSequence.length;
                        for (q = 0; q < $; q += 1) Ae = this.effectsSequence[q](Ae);
                        this.setVValue(Ae), this.lock = !1, this.frameId = this.elem.globalData.frameId
                    }
                }

                function z(Ae, q, $) {
                    this.propType = "shape", this.comp = Ae.comp, this.container = Ae, this.elem = Ae, this.data = q, this.k = !1, this.kf = !1, this._mdf = !1;
                    var G = $ === 3 ? q.pt.k : q.ks.k;
                    this.v = Sn.clone(G), this.pv = Sn.clone(this.v), this.localShapeCollection = on.newShapeCollection(), this.paths = this.localShapeCollection, this.paths.addShape(this.v), this.reset = E, this.effectsSequence = []
                }

                function H(Ae) {
                    this.effectsSequence.push(Ae), this.container.addDynamicProperty(this)
                }
                z.prototype.interpolateShape = h, z.prototype.getValue = k, z.prototype.setVValue = _, z.prototype.addEffect = H;

                function ne(Ae, q, $) {
                    this.propType = "shape", this.comp = Ae.comp, this.elem = Ae, this.container = Ae, this.offsetTime = Ae.data.st, this.keyframes = $ === 3 ? q.pt.k : q.ks.k, this.keyframesMetadata = [], this.k = !0, this.kf = !0;
                    var G = this.keyframes[0].s[0].i.length;
                    this.v = Sn.newElement(), this.v.setPathData(this.keyframes[0].s[0].c, G), this.pv = Sn.clone(this.v), this.localShapeCollection = on.newShapeCollection(), this.paths = this.localShapeCollection, this.paths.addShape(this.v), this.lastFrame = c, this.reset = E, this._caching = {
                        lastFrame: c,
                        lastIndex: 0
                    }, this.effectsSequence = [v.bind(this)]
                }
                ne.prototype.getValue = k, ne.prototype.interpolateShape = h, ne.prototype.setVValue = _, ne.prototype.addEffect = H;
                var oe = function() {
                        var Ae = U;

                        function q($, G) {
                            this.v = Sn.newElement(), this.v.setPathData(!0, 4), this.localShapeCollection = on.newShapeCollection(), this.paths = this.localShapeCollection, this.localShapeCollection.addShape(this.v), this.d = G.d, this.elem = $, this.comp = $.comp, this.frameId = -1, this.initDynamicPropertyContainer($), this.p = Ge.getProp($, G.p, 1, 0, this), this.s = Ge.getProp($, G.s, 1, 0, this), this.dynamicProperties.length ? this.k = !0 : (this.k = !1, this.convertEllToPath())
                        }
                        return q.prototype = {
                            reset: E,
                            getValue: function() {
                                this.elem.globalData.frameId !== this.frameId && (this.frameId = this.elem.globalData.frameId, this.iterateDynamicProperties(), this._mdf && this.convertEllToPath())
                            },
                            convertEllToPath: function() {
                                var G = this.p.v[0],
                                    re = this.p.v[1],
                                    ge = this.s.v[0] / 2,
                                    Ee = this.s.v[1] / 2,
                                    Qe = this.d !== 3,
                                    Re = this.v;
                                Re.v[0][0] = G, Re.v[0][1] = re - Ee, Re.v[1][0] = Qe ? G + ge : G - ge, Re.v[1][1] = re, Re.v[2][0] = G, Re.v[2][1] = re + Ee, Re.v[3][0] = Qe ? G - ge : G + ge, Re.v[3][1] = re, Re.i[0][0] = Qe ? G - ge * Ae : G + ge * Ae, Re.i[0][1] = re - Ee, Re.i[1][0] = Qe ? G + ge : G - ge, Re.i[1][1] = re - Ee * Ae, Re.i[2][0] = Qe ? G + ge * Ae : G - ge * Ae, Re.i[2][1] = re + Ee, Re.i[3][0] = Qe ? G - ge : G + ge, Re.i[3][1] = re + Ee * Ae, Re.o[0][0] = Qe ? G + ge * Ae : G - ge * Ae, Re.o[0][1] = re - Ee, Re.o[1][0] = Qe ? G + ge : G - ge, Re.o[1][1] = re + Ee * Ae, Re.o[2][0] = Qe ? G - ge * Ae : G + ge * Ae, Re.o[2][1] = re + Ee, Re.o[3][0] = Qe ? G - ge : G + ge, Re.o[3][1] = re - Ee * Ae
                            }
                        }, f([gn], q), q
                    }(),
                    be = function() {
                        function Ae(q, $) {
                            this.v = Sn.newElement(), this.v.setPathData(!0, 0), this.elem = q, this.comp = q.comp, this.data = $, this.frameId = -1, this.d = $.d, this.initDynamicPropertyContainer(q), $.sy === 1 ? (this.ir = Ge.getProp(q, $.ir, 0, 0, this), this.is = Ge.getProp(q, $.is, 0, .01, this), this.convertToPath = this.convertStarToPath) : this.convertToPath = this.convertPolygonToPath, this.pt = Ge.getProp(q, $.pt, 0, 0, this), this.p = Ge.getProp(q, $.p, 1, 0, this), this.r = Ge.getProp(q, $.r, 0, D, this), this.or = Ge.getProp(q, $.or, 0, 0, this), this.os = Ge.getProp(q, $.os, 0, .01, this), this.localShapeCollection = on.newShapeCollection(), this.localShapeCollection.addShape(this.v), this.paths = this.localShapeCollection, this.dynamicProperties.length ? this.k = !0 : (this.k = !1, this.convertToPath())
                        }
                        return Ae.prototype = {
                            reset: E,
                            getValue: function() {
                                this.elem.globalData.frameId !== this.frameId && (this.frameId = this.elem.globalData.frameId, this.iterateDynamicProperties(), this._mdf && this.convertToPath())
                            },
                            convertStarToPath: function() {
                                var $ = Math.floor(this.pt.v) * 2,
                                    G = Math.PI * 2 / $,
                                    re = !0,
                                    ge = this.or.v,
                                    Ee = this.ir.v,
                                    Qe = this.os.v,
                                    Re = this.is.v,
                                    lt = 2 * Math.PI * ge / ($ * 2),
                                    it = 2 * Math.PI * Ee / ($ * 2),
                                    Ve, ct, rt, Me, X = -Math.PI / 2;
                                X += this.r.v;
                                var de = this.data.d === 3 ? -1 : 1;
                                for (this.v._length = 0, Ve = 0; Ve < $; Ve += 1) {
                                    ct = re ? ge : Ee, rt = re ? Qe : Re, Me = re ? lt : it;
                                    var L = ct * Math.cos(X),
                                        R = ct * Math.sin(X),
                                        Se = L === 0 && R === 0 ? 0 : R / Math.sqrt(L * L + R * R),
                                        me = L === 0 && R === 0 ? 0 : -L / Math.sqrt(L * L + R * R);
                                    L += +this.p.v[0], R += +this.p.v[1], this.v.setTripleAt(L, R, L - Se * Me * rt * de, R - me * Me * rt * de, L + Se * Me * rt * de, R + me * Me * rt * de, Ve, !0), re = !re, X += G * de
                                }
                            },
                            convertPolygonToPath: function() {
                                var $ = Math.floor(this.pt.v),
                                    G = Math.PI * 2 / $,
                                    re = this.or.v,
                                    ge = this.os.v,
                                    Ee = 2 * Math.PI * re / ($ * 4),
                                    Qe, Re = -Math.PI * .5,
                                    lt = this.data.d === 3 ? -1 : 1;
                                for (Re += this.r.v, this.v._length = 0, Qe = 0; Qe < $; Qe += 1) {
                                    var it = re * Math.cos(Re),
                                        Ve = re * Math.sin(Re),
                                        ct = it === 0 && Ve === 0 ? 0 : Ve / Math.sqrt(it * it + Ve * Ve),
                                        rt = it === 0 && Ve === 0 ? 0 : -it / Math.sqrt(it * it + Ve * Ve);
                                    it += +this.p.v[0], Ve += +this.p.v[1], this.v.setTripleAt(it, Ve, it - ct * Ee * ge * lt, Ve - rt * Ee * ge * lt, it + ct * Ee * ge * lt, Ve + rt * Ee * ge * lt, Qe, !0), Re += G * lt
                                }
                                this.paths.length = 0, this.paths[0] = this.v
                            }
                        }, f([gn], Ae), Ae
                    }(),
                    K = function() {
                        function Ae(q, $) {
                            this.v = Sn.newElement(), this.v.c = !0, this.localShapeCollection = on.newShapeCollection(), this.localShapeCollection.addShape(this.v), this.paths = this.localShapeCollection, this.elem = q, this.comp = q.comp, this.frameId = -1, this.d = $.d, this.initDynamicPropertyContainer(q), this.p = Ge.getProp(q, $.p, 1, 0, this), this.s = Ge.getProp(q, $.s, 1, 0, this), this.r = Ge.getProp(q, $.r, 0, 0, this), this.dynamicProperties.length ? this.k = !0 : (this.k = !1, this.convertRectToPath())
                        }
                        return Ae.prototype = {
                            convertRectToPath: function() {
                                var $ = this.p.v[0],
                                    G = this.p.v[1],
                                    re = this.s.v[0] / 2,
                                    ge = this.s.v[1] / 2,
                                    Ee = T(re, ge, this.r.v),
                                    Qe = Ee * (1 - U);
                                this.v._length = 0, this.d === 2 || this.d === 1 ? (this.v.setTripleAt($ + re, G - ge + Ee, $ + re, G - ge + Ee, $ + re, G - ge + Qe, 0, !0), this.v.setTripleAt($ + re, G + ge - Ee, $ + re, G + ge - Qe, $ + re, G + ge - Ee, 1, !0), Ee !== 0 ? (this.v.setTripleAt($ + re - Ee, G + ge, $ + re - Ee, G + ge, $ + re - Qe, G + ge, 2, !0), this.v.setTripleAt($ - re + Ee, G + ge, $ - re + Qe, G + ge, $ - re + Ee, G + ge, 3, !0), this.v.setTripleAt($ - re, G + ge - Ee, $ - re, G + ge - Ee, $ - re, G + ge - Qe, 4, !0), this.v.setTripleAt($ - re, G - ge + Ee, $ - re, G - ge + Qe, $ - re, G - ge + Ee, 5, !0), this.v.setTripleAt($ - re + Ee, G - ge, $ - re + Ee, G - ge, $ - re + Qe, G - ge, 6, !0), this.v.setTripleAt($ + re - Ee, G - ge, $ + re - Qe, G - ge, $ + re - Ee, G - ge, 7, !0)) : (this.v.setTripleAt($ - re, G + ge, $ - re + Qe, G + ge, $ - re, G + ge, 2), this.v.setTripleAt($ - re, G - ge, $ - re, G - ge + Qe, $ - re, G - ge, 3))) : (this.v.setTripleAt($ + re, G - ge + Ee, $ + re, G - ge + Qe, $ + re, G - ge + Ee, 0, !0), Ee !== 0 ? (this.v.setTripleAt($ + re - Ee, G - ge, $ + re - Ee, G - ge, $ + re - Qe, G - ge, 1, !0), this.v.setTripleAt($ - re + Ee, G - ge, $ - re + Qe, G - ge, $ - re + Ee, G - ge, 2, !0), this.v.setTripleAt($ - re, G - ge + Ee, $ - re, G - ge + Ee, $ - re, G - ge + Qe, 3, !0), this.v.setTripleAt($ - re, G + ge - Ee, $ - re, G + ge - Qe, $ - re, G + ge - Ee, 4, !0), this.v.setTripleAt($ - re + Ee, G + ge, $ - re + Ee, G + ge, $ - re + Qe, G + ge, 5, !0), this.v.setTripleAt($ + re - Ee, G + ge, $ + re - Qe, G + ge, $ + re - Ee, G + ge, 6, !0), this.v.setTripleAt($ + re, G + ge - Ee, $ + re, G + ge - Ee, $ + re, G + ge - Qe, 7, !0)) : (this.v.setTripleAt($ - re, G - ge, $ - re + Qe, G - ge, $ - re, G - ge, 1, !0), this.v.setTripleAt($ - re, G + ge, $ - re, G + ge - Qe, $ - re, G + ge, 2, !0), this.v.setTripleAt($ + re, G + ge, $ + re - Qe, G + ge, $ + re, G + ge, 3, !0)))
                            },
                            getValue: function() {
                                this.elem.globalData.frameId !== this.frameId && (this.frameId = this.elem.globalData.frameId, this.iterateDynamicProperties(), this._mdf && this.convertRectToPath())
                            },
                            reset: E
                        }, f([gn], Ae), Ae
                    }();

                function le(Ae, q, $) {
                    var G;
                    if ($ === 3 || $ === 4) {
                        var re = $ === 3 ? q.pt : q.ks,
                            ge = re.k;
                        ge.length ? G = new ne(Ae, q, $) : G = new z(Ae, q, $)
                    } else $ === 5 ? G = new K(Ae, q) : $ === 6 ? G = new oe(Ae, q) : $ === 7 && (G = new be(Ae, q));
                    return G.k && Ae.addDynamicProperty(G), G
                }

                function pe() {
                    return z
                }

                function fe() {
                    return ne
                }
                var Ce = {};
                return Ce.getShapeProp = le, Ce.getConstructorFunction = pe, Ce.getKeyframedConstructorFunction = fe, Ce
            }();
        /*!
         Transformation Matrix v2.0
         (c) Epistemex 2014-2015
         www.epistemex.com
         By Ken Fyrstenberg
         Contributions by leeoniya.
         License: MIT, header required.
         */
        var vn = function() {
            var c = Math.cos,
                h = Math.sin,
                v = Math.tan,
                E = Math.round;

            function S() {
                return this.props[0] = 1, this.props[1] = 0, this.props[2] = 0, this.props[3] = 0, this.props[4] = 0, this.props[5] = 1, this.props[6] = 0, this.props[7] = 0, this.props[8] = 0, this.props[9] = 0, this.props[10] = 1, this.props[11] = 0, this.props[12] = 0, this.props[13] = 0, this.props[14] = 0, this.props[15] = 1, this
            }

            function _(L) {
                if (L === 0) return this;
                var R = c(L),
                    Se = h(L);
                return this._t(R, -Se, 0, 0, Se, R, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)
            }

            function k(L) {
                if (L === 0) return this;
                var R = c(L),
                    Se = h(L);
                return this._t(1, 0, 0, 0, 0, R, -Se, 0, 0, Se, R, 0, 0, 0, 0, 1)
            }

            function z(L) {
                if (L === 0) return this;
                var R = c(L),
                    Se = h(L);
                return this._t(R, 0, Se, 0, 0, 1, 0, 0, -Se, 0, R, 0, 0, 0, 0, 1)
            }

            function H(L) {
                if (L === 0) return this;
                var R = c(L),
                    Se = h(L);
                return this._t(R, -Se, 0, 0, Se, R, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)
            }

            function ne(L, R) {
                return this._t(1, R, L, 1, 0, 0)
            }

            function oe(L, R) {
                return this.shear(v(L), v(R))
            }

            function be(L, R) {
                var Se = c(R),
                    me = h(R);
                return this._t(Se, me, 0, 0, -me, Se, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)._t(1, 0, 0, 0, v(L), 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)._t(Se, -me, 0, 0, me, Se, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)
            }

            function K(L, R, Se) {
                return !Se && Se !== 0 && (Se = 1), L === 1 && R === 1 && Se === 1 ? this : this._t(L, 0, 0, 0, 0, R, 0, 0, 0, 0, Se, 0, 0, 0, 0, 1)
            }

            function le(L, R, Se, me, Xe, at, ut, Qt, Ut, mn, or, fA, lr, Mn, Cr, Ht) {
                return this.props[0] = L, this.props[1] = R, this.props[2] = Se, this.props[3] = me, this.props[4] = Xe, this.props[5] = at, this.props[6] = ut, this.props[7] = Qt, this.props[8] = Ut, this.props[9] = mn, this.props[10] = or, this.props[11] = fA, this.props[12] = lr, this.props[13] = Mn, this.props[14] = Cr, this.props[15] = Ht, this
            }

            function pe(L, R, Se) {
                return Se = Se || 0, L !== 0 || R !== 0 || Se !== 0 ? this._t(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, L, R, Se, 1) : this
            }

            function fe(L, R, Se, me, Xe, at, ut, Qt, Ut, mn, or, fA, lr, Mn, Cr, Ht) {
                var At = this.props;
                if (L === 1 && R === 0 && Se === 0 && me === 0 && Xe === 0 && at === 1 && ut === 0 && Qt === 0 && Ut === 0 && mn === 0 && or === 1 && fA === 0) return At[12] = At[12] * L + At[15] * lr, At[13] = At[13] * at + At[15] * Mn, At[14] = At[14] * or + At[15] * Cr, At[15] *= Ht, this._identityCalculated = !1, this;
                var PA = At[0],
                    yi = At[1],
                    OA = At[2],
                    dA = At[3],
                    LA = At[4],
                    kA = At[5],
                    ur = At[6],
                    Ci = At[7],
                    xi = At[8],
                    Yr = At[9],
                    Ei = At[10],
                    Xr = At[11],
                    bs = At[12],
                    H0 = At[13],
                    M0 = At[14],
                    R0 = At[15];
                return At[0] = PA * L + yi * Xe + OA * Ut + dA * lr, At[1] = PA * R + yi * at + OA * mn + dA * Mn, At[2] = PA * Se + yi * ut + OA * or + dA * Cr, At[3] = PA * me + yi * Qt + OA * fA + dA * Ht, At[4] = LA * L + kA * Xe + ur * Ut + Ci * lr, At[5] = LA * R + kA * at + ur * mn + Ci * Mn, At[6] = LA * Se + kA * ut + ur * or + Ci * Cr, At[7] = LA * me + kA * Qt + ur * fA + Ci * Ht, At[8] = xi * L + Yr * Xe + Ei * Ut + Xr * lr, At[9] = xi * R + Yr * at + Ei * mn + Xr * Mn, At[10] = xi * Se + Yr * ut + Ei * or + Xr * Cr, At[11] = xi * me + Yr * Qt + Ei * fA + Xr * Ht, At[12] = bs * L + H0 * Xe + M0 * Ut + R0 * lr, At[13] = bs * R + H0 * at + M0 * mn + R0 * Mn, At[14] = bs * Se + H0 * ut + M0 * or + R0 * Cr, At[15] = bs * me + H0 * Qt + M0 * fA + R0 * Ht, this._identityCalculated = !1, this
            }

            function Ce(L) {
                var R = L.props;
                return this.transform(R[0], R[1], R[2], R[3], R[4], R[5], R[6], R[7], R[8], R[9], R[10], R[11], R[12], R[13], R[14], R[15])
            }

            function Ae() {
                return this._identityCalculated || (this._identity = !(this.props[0] !== 1 || this.props[1] !== 0 || this.props[2] !== 0 || this.props[3] !== 0 || this.props[4] !== 0 || this.props[5] !== 1 || this.props[6] !== 0 || this.props[7] !== 0 || this.props[8] !== 0 || this.props[9] !== 0 || this.props[10] !== 1 || this.props[11] !== 0 || this.props[12] !== 0 || this.props[13] !== 0 || this.props[14] !== 0 || this.props[15] !== 1), this._identityCalculated = !0), this._identity
            }

            function q(L) {
                for (var R = 0; R < 16;) {
                    if (L.props[R] !== this.props[R]) return !1;
                    R += 1
                }
                return !0
            }

            function $(L) {
                var R;
                for (R = 0; R < 16; R += 1) L.props[R] = this.props[R];
                return L
            }

            function G(L) {
                var R;
                for (R = 0; R < 16; R += 1) this.props[R] = L[R]
            }

            function re(L, R, Se) {
                return {
                    x: L * this.props[0] + R * this.props[4] + Se * this.props[8] + this.props[12],
                    y: L * this.props[1] + R * this.props[5] + Se * this.props[9] + this.props[13],
                    z: L * this.props[2] + R * this.props[6] + Se * this.props[10] + this.props[14]
                }
            }

            function ge(L, R, Se) {
                return L * this.props[0] + R * this.props[4] + Se * this.props[8] + this.props[12]
            }

            function Ee(L, R, Se) {
                return L * this.props[1] + R * this.props[5] + Se * this.props[9] + this.props[13]
            }

            function Qe(L, R, Se) {
                return L * this.props[2] + R * this.props[6] + Se * this.props[10] + this.props[14]
            }

            function Re() {
                var L = this.props[0] * this.props[5] - this.props[1] * this.props[4],
                    R = this.props[5] / L,
                    Se = -this.props[1] / L,
                    me = -this.props[4] / L,
                    Xe = this.props[0] / L,
                    at = (this.props[4] * this.props[13] - this.props[5] * this.props[12]) / L,
                    ut = -(this.props[0] * this.props[13] - this.props[1] * this.props[12]) / L,
                    Qt = new vn;
                return Qt.props[0] = R, Qt.props[1] = Se, Qt.props[4] = me, Qt.props[5] = Xe, Qt.props[12] = at, Qt.props[13] = ut, Qt
            }

            function lt(L) {
                var R = this.getInverseMatrix();
                return R.applyToPointArray(L[0], L[1], L[2] || 0)
            }

            function it(L) {
                var R, Se = L.length,
                    me = [];
                for (R = 0; R < Se; R += 1) me[R] = lt(L[R]);
                return me
            }

            function Ve(L, R, Se) {
                var me = m("float32", 6);
                if (this.isIdentity()) me[0] = L[0], me[1] = L[1], me[2] = R[0], me[3] = R[1], me[4] = Se[0], me[5] = Se[1];
                else {
                    var Xe = this.props[0],
                        at = this.props[1],
                        ut = this.props[4],
                        Qt = this.props[5],
                        Ut = this.props[12],
                        mn = this.props[13];
                    me[0] = L[0] * Xe + L[1] * ut + Ut, me[1] = L[0] * at + L[1] * Qt + mn, me[2] = R[0] * Xe + R[1] * ut + Ut, me[3] = R[0] * at + R[1] * Qt + mn, me[4] = Se[0] * Xe + Se[1] * ut + Ut, me[5] = Se[0] * at + Se[1] * Qt + mn
                }
                return me
            }

            function ct(L, R, Se) {
                var me;
                return this.isIdentity() ? me = [L, R, Se] : me = [L * this.props[0] + R * this.props[4] + Se * this.props[8] + this.props[12], L * this.props[1] + R * this.props[5] + Se * this.props[9] + this.props[13], L * this.props[2] + R * this.props[6] + Se * this.props[10] + this.props[14]], me
            }

            function rt(L, R) {
                if (this.isIdentity()) return L + "," + R;
                var Se = this.props;
                return Math.round((L * Se[0] + R * Se[4] + Se[12]) * 100) / 100 + "," + Math.round((L * Se[1] + R * Se[5] + Se[13]) * 100) / 100
            }

            function Me() {
                for (var L = 0, R = this.props, Se = "matrix3d(", me = 1e4; L < 16;) Se += E(R[L] * me) / me, Se += L === 15 ? ")" : ",", L += 1;
                return Se
            }

            function X(L) {
                var R = 1e4;
                return L < 1e-6 && L > 0 || L > -1e-6 && L < 0 ? E(L * R) / R : L
            }

            function de() {
                var L = this.props,
                    R = X(L[0]),
                    Se = X(L[1]),
                    me = X(L[4]),
                    Xe = X(L[5]),
                    at = X(L[12]),
                    ut = X(L[13]);
                return "matrix(" + R + "," + Se + "," + me + "," + Xe + "," + at + "," + ut + ")"
            }
            return function() {
                this.reset = S, this.rotate = _, this.rotateX = k, this.rotateY = z, this.rotateZ = H, this.skew = oe, this.skewFromAxis = be, this.shear = ne, this.scale = K, this.setTransform = le, this.translate = pe, this.transform = fe, this.multiply = Ce, this.applyToPoint = re, this.applyToX = ge, this.applyToY = Ee, this.applyToZ = Qe, this.applyToPointArray = ct, this.applyToTriplePoints = Ve, this.applyToPointStringified = rt, this.toCSS = Me, this.to2dCSS = de, this.clone = $, this.cloneFromProps = G, this.equals = q, this.inversePoints = it, this.inversePoint = lt, this.getInverseMatrix = Re, this._t = this.transform, this.isIdentity = Ae, this._identity = !0, this._identityCalculated = !1, this.props = m("float32", 16), this.reset()
            }
        }();

        function da(c) {
            "@babel/helpers - typeof";
            return typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? da = function(v) {
                return typeof v
            } : da = function(v) {
                return v && typeof Symbol == "function" && v.constructor === Symbol && v !== Symbol.prototype ? "symbol" : typeof v
            }, da(c)
        }
        var Pt = {};

        function Cx(c) {
            o(c)
        }

        function m5() {
            Ke.searchAnimations()
        }

        function xx(c) {
            xe(c)
        }

        function Ex(c) {
            $e(c)
        }

        function bx(c) {
            return Ke.loadAnimation(c)
        }

        function Fx(c) {
            if (typeof c == "string") switch (c) {
                case "high":
                    _e(200);
                    break;
                default:
                case "medium":
                    _e(50);
                    break;
                case "low":
                    _e(10);
                    break
            } else !isNaN(c) && c > 1 && _e(c)
        }

        function _x() {
            return typeof navigator < "u"
        }

        function Sx(c, h) {
            c === "expressions" && Fe(h)
        }

        function Qx(c) {
            switch (c) {
                case "propertyFactory":
                    return Ge;
                case "shapePropertyFactory":
                    return yr;
                case "matrix":
                    return vn;
                default:
                    return null
            }
        }
        Pt.play = Ke.play, Pt.pause = Ke.pause, Pt.setLocationHref = Cx, Pt.togglePause = Ke.togglePause, Pt.setSpeed = Ke.setSpeed, Pt.setDirection = Ke.setDirection, Pt.stop = Ke.stop, Pt.searchAnimations = m5, Pt.registerAnimation = Ke.registerAnimation, Pt.loadAnimation = bx, Pt.setSubframeRendering = xx, Pt.resize = Ke.resize, Pt.goToAndStop = Ke.goToAndStop, Pt.destroy = Ke.destroy, Pt.setQuality = Fx, Pt.inBrowser = _x, Pt.installPlugin = Sx, Pt.freeze = Ke.freeze, Pt.unfreeze = Ke.unfreeze, Pt.setVolume = Ke.setVolume, Pt.mute = Ke.mute, Pt.unmute = Ke.unmute, Pt.getRegisteredAnimations = Ke.getRegisteredAnimations, Pt.useWebWorker = s, Pt.setIDPrefix = Ex, Pt.__getFactory = Qx, Pt.version = "5.12.2";

        function Ux() {
            document.readyState === "complete" && (clearInterval(Dx), m5())
        }

        function Tx(c) {
            for (var h = B5.split("&"), v = 0; v < h.length; v += 1) {
                var E = h[v].split("=");
                if (decodeURIComponent(E[0]) == c) return decodeURIComponent(E[1])
            }
            return null
        }
        var B5 = ""; {
            var w5 = document.getElementsByTagName("script"),
                Ix = w5.length - 1,
                y5 = w5[Ix] || {
                    src: ""
                };
            B5 = y5.src ? y5.src.replace(/^[^\?]+\??/, "") : "", Tx("renderer")
        }
        var Dx = setInterval(Ux, 100);
        try {
            da(t) !== "object" && (window.bodymovin = Pt)
        } catch {}
        var pi = function() {
            var c = {},
                h = {};
            c.registerModifier = v, c.getModifier = E;

            function v(S, _) {
                h[S] || (h[S] = _)
            }

            function E(S, _, k) {
                return new h[S](_, k)
            }
            return c
        }();

        function Or() {}
        Or.prototype.initModifierProperties = function() {}, Or.prototype.addShapeToModifier = function() {}, Or.prototype.addShape = function(c) {
            if (!this.closed) {
                c.sh.container.addDynamicProperty(c.sh);
                var h = {
                    shape: c.sh,
                    data: c,
                    localShapeCollection: on.newShapeCollection()
                };
                this.shapes.push(h), this.addShapeToModifier(h), this._isAnimated && c.setAsAnimated()
            }
        }, Or.prototype.init = function(c, h) {
            this.shapes = [], this.elem = c, this.initDynamicPropertyContainer(c), this.initModifierProperties(c, h), this.frameId = i, this.closed = !1, this.k = !1, this.dynamicProperties.length ? this.k = !0 : this.getValue(!0)
        }, Or.prototype.processKeys = function() {
            this.elem.globalData.frameId !== this.frameId && (this.frameId = this.elem.globalData.frameId, this.iterateDynamicProperties())
        }, f([gn], Or);

        function jr() {}
        f([Or], jr), jr.prototype.initModifierProperties = function(c, h) {
            this.s = Ge.getProp(c, h.s, 0, .01, this), this.e = Ge.getProp(c, h.e, 0, .01, this), this.o = Ge.getProp(c, h.o, 0, 0, this), this.sValue = 0, this.eValue = 0, this.getValue = this.processKeys, this.m = h.m, this._isAnimated = !!this.s.effectsSequence.length || !!this.e.effectsSequence.length || !!this.o.effectsSequence.length
        }, jr.prototype.addShapeToModifier = function(c) {
            c.pathsData = []
        }, jr.prototype.calculateShapeEdges = function(c, h, v, E, S) {
            var _ = [];
            h <= 1 ? _.push({
                s: c,
                e: h
            }) : c >= 1 ? _.push({
                s: c - 1,
                e: h - 1
            }) : (_.push({
                s: c,
                e: 1
            }), _.push({
                s: 0,
                e: h - 1
            }));
            var k = [],
                z, H = _.length,
                ne;
            for (z = 0; z < H; z += 1)
                if (ne = _[z], !(ne.e * S < E || ne.s * S > E + v)) {
                    var oe, be;
                    ne.s * S <= E ? oe = 0 : oe = (ne.s * S - E) / v, ne.e * S >= E + v ? be = 1 : be = (ne.e * S - E) / v, k.push([oe, be])
                }
            return k.length || k.push([0, 0]), k
        }, jr.prototype.releasePathsData = function(c) {
            var h, v = c.length;
            for (h = 0; h < v; h += 1) kt.release(c[h]);
            return c.length = 0, c
        }, jr.prototype.processShapes = function(c) {
            var h, v;
            if (this._mdf || c) {
                var E = this.o.v % 360 / 360;
                if (E < 0 && (E += 1), this.s.v > 1 ? h = 1 + E : this.s.v < 0 ? h = 0 + E : h = this.s.v + E, this.e.v > 1 ? v = 1 + E : this.e.v < 0 ? v = 0 + E : v = this.e.v + E, h > v) {
                    var S = h;
                    h = v, v = S
                }
                h = Math.round(h * 1e4) * 1e-4, v = Math.round(v * 1e4) * 1e-4, this.sValue = h, this.eValue = v
            } else h = this.sValue, v = this.eValue;
            var _, k, z = this.shapes.length,
                H, ne, oe, be, K, le = 0;
            if (v === h)
                for (k = 0; k < z; k += 1) this.shapes[k].localShapeCollection.releaseShapes(), this.shapes[k].shape._mdf = !0, this.shapes[k].shape.paths = this.shapes[k].localShapeCollection, this._mdf && (this.shapes[k].pathsData.length = 0);
            else if (v === 1 && h === 0 || v === 0 && h === 1) {
                if (this._mdf)
                    for (k = 0; k < z; k += 1) this.shapes[k].pathsData.length = 0, this.shapes[k].shape._mdf = !0
            } else {
                var pe = [],
                    fe, Ce;
                for (k = 0; k < z; k += 1)
                    if (fe = this.shapes[k], !fe.shape._mdf && !this._mdf && !c && this.m !== 2) fe.shape.paths = fe.localShapeCollection;
                    else {
                        if (_ = fe.shape.paths, ne = _._length, K = 0, !fe.shape._mdf && fe.pathsData.length) K = fe.totalShapeLength;
                        else {
                            for (oe = this.releasePathsData(fe.pathsData), H = 0; H < ne; H += 1) be = Yt.getSegmentsLength(_.shapes[H]), oe.push(be), K += be.totalLength;
                            fe.totalShapeLength = K, fe.pathsData = oe
                        }
                        le += K, fe.shape._mdf = !0
                    }
                var Ae = h,
                    q = v,
                    $ = 0,
                    G;
                for (k = z - 1; k >= 0; k -= 1)
                    if (fe = this.shapes[k], fe.shape._mdf) {
                        for (Ce = fe.localShapeCollection, Ce.releaseShapes(), this.m === 2 && z > 1 ? (G = this.calculateShapeEdges(h, v, fe.totalShapeLength, $, le), $ += fe.totalShapeLength) : G = [
                                [Ae, q]
                            ], ne = G.length, H = 0; H < ne; H += 1) {
                            Ae = G[H][0], q = G[H][1], pe.length = 0, q <= 1 ? pe.push({
                                s: fe.totalShapeLength * Ae,
                                e: fe.totalShapeLength * q
                            }) : Ae >= 1 ? pe.push({
                                s: fe.totalShapeLength * (Ae - 1),
                                e: fe.totalShapeLength * (q - 1)
                            }) : (pe.push({
                                s: fe.totalShapeLength * Ae,
                                e: fe.totalShapeLength
                            }), pe.push({
                                s: 0,
                                e: fe.totalShapeLength * (q - 1)
                            }));
                            var re = this.addShapes(fe, pe[0]);
                            if (pe[0].s !== pe[0].e) {
                                if (pe.length > 1) {
                                    var ge = fe.shape.paths.shapes[fe.shape.paths._length - 1];
                                    if (ge.c) {
                                        var Ee = re.pop();
                                        this.addPaths(re, Ce), re = this.addShapes(fe, pe[1], Ee)
                                    } else this.addPaths(re, Ce), re = this.addShapes(fe, pe[1])
                                }
                                this.addPaths(re, Ce)
                            }
                        }
                        fe.shape.paths = Ce
                    }
            }
        }, jr.prototype.addPaths = function(c, h) {
            var v, E = c.length;
            for (v = 0; v < E; v += 1) h.addShape(c[v])
        }, jr.prototype.addSegment = function(c, h, v, E, S, _, k) {
            S.setXYAt(h[0], h[1], "o", _), S.setXYAt(v[0], v[1], "i", _ + 1), k && S.setXYAt(c[0], c[1], "v", _), S.setXYAt(E[0], E[1], "v", _ + 1)
        }, jr.prototype.addSegmentFromArray = function(c, h, v, E) {
            h.setXYAt(c[1], c[5], "o", v), h.setXYAt(c[2], c[6], "i", v + 1), E && h.setXYAt(c[0], c[4], "v", v), h.setXYAt(c[3], c[7], "v", v + 1)
        }, jr.prototype.addShapes = function(c, h, v) {
            var E = c.pathsData,
                S = c.shape.paths.shapes,
                _, k = c.shape.paths._length,
                z, H, ne = 0,
                oe, be, K, le, pe = [],
                fe, Ce = !0;
            for (v ? (be = v._length, fe = v._length) : (v = Sn.newElement(), be = 0, fe = 0), pe.push(v), _ = 0; _ < k; _ += 1) {
                for (K = E[_].lengths, v.c = S[_].c, H = S[_].c ? K.length : K.length + 1, z = 1; z < H; z += 1)
                    if (oe = K[z - 1], ne + oe.addedLength < h.s) ne += oe.addedLength, v.c = !1;
                    else if (ne > h.e) {
                    v.c = !1;
                    break
                } else h.s <= ne && h.e >= ne + oe.addedLength ? (this.addSegment(S[_].v[z - 1], S[_].o[z - 1], S[_].i[z], S[_].v[z], v, be, Ce), Ce = !1) : (le = Yt.getNewSegment(S[_].v[z - 1], S[_].v[z], S[_].o[z - 1], S[_].i[z], (h.s - ne) / oe.addedLength, (h.e - ne) / oe.addedLength, K[z - 1]), this.addSegmentFromArray(le, v, be, Ce), Ce = !1, v.c = !1), ne += oe.addedLength, be += 1;
                if (S[_].c && K.length) {
                    if (oe = K[z - 1], ne <= h.e) {
                        var Ae = K[z - 1].addedLength;
                        h.s <= ne && h.e >= ne + Ae ? (this.addSegment(S[_].v[z - 1], S[_].o[z - 1], S[_].i[0], S[_].v[0], v, be, Ce), Ce = !1) : (le = Yt.getNewSegment(S[_].v[z - 1], S[_].v[0], S[_].o[z - 1], S[_].i[0], (h.s - ne) / Ae, (h.e - ne) / Ae, K[z - 1]), this.addSegmentFromArray(le, v, be, Ce), Ce = !1, v.c = !1)
                    } else v.c = !1;
                    ne += oe.addedLength, be += 1
                }
                if (v._length && (v.setXYAt(v.v[fe][0], v.v[fe][1], "i", fe), v.setXYAt(v.v[v._length - 1][0], v.v[v._length - 1][1], "o", v._length - 1)), ne > h.e) break;
                _ < k - 1 && (v = Sn.newElement(), Ce = !0, pe.push(v), be = 0)
            }
            return pe
        };

        function Po() {}
        f([Or], Po), Po.prototype.initModifierProperties = function(c, h) {
            this.getValue = this.processKeys, this.amount = Ge.getProp(c, h.a, 0, null, this), this._isAnimated = !!this.amount.effectsSequence.length
        }, Po.prototype.processPath = function(c, h) {
            var v = h / 100,
                E = [0, 0],
                S = c._length,
                _ = 0;
            for (_ = 0; _ < S; _ += 1) E[0] += c.v[_][0], E[1] += c.v[_][1];
            E[0] /= S, E[1] /= S;
            var k = Sn.newElement();
            k.c = c.c;
            var z, H, ne, oe, be, K;
            for (_ = 0; _ < S; _ += 1) z = c.v[_][0] + (E[0] - c.v[_][0]) * v, H = c.v[_][1] + (E[1] - c.v[_][1]) * v, ne = c.o[_][0] + (E[0] - c.o[_][0]) * -v, oe = c.o[_][1] + (E[1] - c.o[_][1]) * -v, be = c.i[_][0] + (E[0] - c.i[_][0]) * -v, K = c.i[_][1] + (E[1] - c.i[_][1]) * -v, k.setTripleAt(z, H, ne, oe, be, K, _);
            return k
        }, Po.prototype.processShapes = function(c) {
            var h, v, E = this.shapes.length,
                S, _, k = this.amount.v;
            if (k !== 0) {
                var z, H;
                for (v = 0; v < E; v += 1) {
                    if (z = this.shapes[v], H = z.localShapeCollection, !(!z.shape._mdf && !this._mdf && !c))
                        for (H.releaseShapes(), z.shape._mdf = !0, h = z.shape.paths.shapes, _ = z.shape.paths._length, S = 0; S < _; S += 1) H.addShape(this.processPath(h[S], k));
                    z.shape.paths = z.localShapeCollection
                }
            }
            this.dynamicProperties.length || (this._mdf = !1)
        };
        var t1 = function() {
            var c = [0, 0];

            function h(H) {
                var ne = this._mdf;
                this.iterateDynamicProperties(), this._mdf = this._mdf || ne, this.a && H.translate(-this.a.v[0], -this.a.v[1], this.a.v[2]), this.s && H.scale(this.s.v[0], this.s.v[1], this.s.v[2]), this.sk && H.skewFromAxis(-this.sk.v, this.sa.v), this.r ? H.rotate(-this.r.v) : H.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2]).rotateY(this.or.v[1]).rotateX(this.or.v[0]), this.data.p.s ? this.data.p.z ? H.translate(this.px.v, this.py.v, -this.pz.v) : H.translate(this.px.v, this.py.v, 0) : H.translate(this.p.v[0], this.p.v[1], -this.p.v[2])
            }

            function v(H) {
                if (this.elem.globalData.frameId !== this.frameId) {
                    if (this._isDirty && (this.precalculateMatrix(), this._isDirty = !1), this.iterateDynamicProperties(), this._mdf || H) {
                        var ne;
                        if (this.v.cloneFromProps(this.pre.props), this.appliedTransformations < 1 && this.v.translate(-this.a.v[0], -this.a.v[1], this.a.v[2]), this.appliedTransformations < 2 && this.v.scale(this.s.v[0], this.s.v[1], this.s.v[2]), this.sk && this.appliedTransformations < 3 && this.v.skewFromAxis(-this.sk.v, this.sa.v), this.r && this.appliedTransformations < 4 ? this.v.rotate(-this.r.v) : !this.r && this.appliedTransformations < 4 && this.v.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2]).rotateY(this.or.v[1]).rotateX(this.or.v[0]), this.autoOriented) {
                            var oe, be;
                            if (ne = this.elem.globalData.frameRate, this.p && this.p.keyframes && this.p.getValueAtTime) this.p._caching.lastFrame + this.p.offsetTime <= this.p.keyframes[0].t ? (oe = this.p.getValueAtTime((this.p.keyframes[0].t + .01) / ne, 0), be = this.p.getValueAtTime(this.p.keyframes[0].t / ne, 0)) : this.p._caching.lastFrame + this.p.offsetTime >= this.p.keyframes[this.p.keyframes.length - 1].t ? (oe = this.p.getValueAtTime(this.p.keyframes[this.p.keyframes.length - 1].t / ne, 0), be = this.p.getValueAtTime((this.p.keyframes[this.p.keyframes.length - 1].t - .05) / ne, 0)) : (oe = this.p.pv, be = this.p.getValueAtTime((this.p._caching.lastFrame + this.p.offsetTime - .01) / ne, this.p.offsetTime));
                            else if (this.px && this.px.keyframes && this.py.keyframes && this.px.getValueAtTime && this.py.getValueAtTime) {
                                oe = [], be = [];
                                var K = this.px,
                                    le = this.py;
                                K._caching.lastFrame + K.offsetTime <= K.keyframes[0].t ? (oe[0] = K.getValueAtTime((K.keyframes[0].t + .01) / ne, 0), oe[1] = le.getValueAtTime((le.keyframes[0].t + .01) / ne, 0), be[0] = K.getValueAtTime(K.keyframes[0].t / ne, 0), be[1] = le.getValueAtTime(le.keyframes[0].t / ne, 0)) : K._caching.lastFrame + K.offsetTime >= K.keyframes[K.keyframes.length - 1].t ? (oe[0] = K.getValueAtTime(K.keyframes[K.keyframes.length - 1].t / ne, 0), oe[1] = le.getValueAtTime(le.keyframes[le.keyframes.length - 1].t / ne, 0), be[0] = K.getValueAtTime((K.keyframes[K.keyframes.length - 1].t - .01) / ne, 0), be[1] = le.getValueAtTime((le.keyframes[le.keyframes.length - 1].t - .01) / ne, 0)) : (oe = [K.pv, le.pv], be[0] = K.getValueAtTime((K._caching.lastFrame + K.offsetTime - .01) / ne, K.offsetTime), be[1] = le.getValueAtTime((le._caching.lastFrame + le.offsetTime - .01) / ne, le.offsetTime))
                            } else be = c, oe = be;
                            this.v.rotate(-Math.atan2(oe[1] - be[1], oe[0] - be[0]))
                        }
                        this.data.p && this.data.p.s ? this.data.p.z ? this.v.translate(this.px.v, this.py.v, -this.pz.v) : this.v.translate(this.px.v, this.py.v, 0) : this.v.translate(this.p.v[0], this.p.v[1], -this.p.v[2])
                    }
                    this.frameId = this.elem.globalData.frameId
                }
            }

            function E() {
                if (this.appliedTransformations = 0, this.pre.reset(), !this.a.effectsSequence.length) this.pre.translate(-this.a.v[0], -this.a.v[1], this.a.v[2]), this.appliedTransformations = 1;
                else return;
                if (!this.s.effectsSequence.length) this.pre.scale(this.s.v[0], this.s.v[1], this.s.v[2]), this.appliedTransformations = 2;
                else return;
                if (this.sk)
                    if (!this.sk.effectsSequence.length && !this.sa.effectsSequence.length) this.pre.skewFromAxis(-this.sk.v, this.sa.v), this.appliedTransformations = 3;
                    else return;
                this.r ? this.r.effectsSequence.length || (this.pre.rotate(-this.r.v), this.appliedTransformations = 4) : !this.rz.effectsSequence.length && !this.ry.effectsSequence.length && !this.rx.effectsSequence.length && !this.or.effectsSequence.length && (this.pre.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2]).rotateY(this.or.v[1]).rotateX(this.or.v[0]), this.appliedTransformations = 4)
            }

            function S() {}

            function _(H) {
                this._addDynamicProperty(H), this.elem.addDynamicProperty(H), this._isDirty = !0
            }

            function k(H, ne, oe) {
                if (this.elem = H, this.frameId = -1, this.propType = "transform", this.data = ne, this.v = new vn, this.pre = new vn, this.appliedTransformations = 0, this.initDynamicPropertyContainer(oe || H), ne.p && ne.p.s ? (this.px = Ge.getProp(H, ne.p.x, 0, 0, this), this.py = Ge.getProp(H, ne.p.y, 0, 0, this), ne.p.z && (this.pz = Ge.getProp(H, ne.p.z, 0, 0, this))) : this.p = Ge.getProp(H, ne.p || {
                        k: [0, 0, 0]
                    }, 1, 0, this), ne.rx) {
                    if (this.rx = Ge.getProp(H, ne.rx, 0, D, this), this.ry = Ge.getProp(H, ne.ry, 0, D, this), this.rz = Ge.getProp(H, ne.rz, 0, D, this), ne.or.k[0].ti) {
                        var be, K = ne.or.k.length;
                        for (be = 0; be < K; be += 1) ne.or.k[be].to = null, ne.or.k[be].ti = null
                    }
                    this.or = Ge.getProp(H, ne.or, 1, D, this), this.or.sh = !0
                } else this.r = Ge.getProp(H, ne.r || {
                    k: 0
                }, 0, D, this);
                ne.sk && (this.sk = Ge.getProp(H, ne.sk, 0, D, this), this.sa = Ge.getProp(H, ne.sa, 0, D, this)), this.a = Ge.getProp(H, ne.a || {
                    k: [0, 0, 0]
                }, 1, 0, this), this.s = Ge.getProp(H, ne.s || {
                    k: [100, 100, 100]
                }, 1, .01, this), ne.o ? this.o = Ge.getProp(H, ne.o, 0, .01, H) : this.o = {
                    _mdf: !1,
                    v: 1
                }, this._isDirty = !0, this.dynamicProperties.length || this.getValue(!0)
            }
            k.prototype = {
                applyToMatrix: h,
                getValue: v,
                precalculateMatrix: E,
                autoOrient: S
            }, f([gn], k), k.prototype.addDynamicProperty = _, k.prototype._addDynamicProperty = gn.prototype.addDynamicProperty;

            function z(H, ne, oe) {
                return new k(H, ne, oe)
            }
            return {
                getTransformProperty: z
            }
        }();

        function cA() {}
        f([Or], cA), cA.prototype.initModifierProperties = function(c, h) {
            this.getValue = this.processKeys, this.c = Ge.getProp(c, h.c, 0, null, this), this.o = Ge.getProp(c, h.o, 0, null, this), this.tr = t1.getTransformProperty(c, h.tr, this), this.so = Ge.getProp(c, h.tr.so, 0, .01, this), this.eo = Ge.getProp(c, h.tr.eo, 0, .01, this), this.data = h, this.dynamicProperties.length || this.getValue(!0), this._isAnimated = !!this.dynamicProperties.length, this.pMatrix = new vn, this.rMatrix = new vn, this.sMatrix = new vn, this.tMatrix = new vn, this.matrix = new vn
        }, cA.prototype.applyTransforms = function(c, h, v, E, S, _) {
            var k = _ ? -1 : 1,
                z = E.s.v[0] + (1 - E.s.v[0]) * (1 - S),
                H = E.s.v[1] + (1 - E.s.v[1]) * (1 - S);
            c.translate(E.p.v[0] * k * S, E.p.v[1] * k * S, E.p.v[2]), h.translate(-E.a.v[0], -E.a.v[1], E.a.v[2]), h.rotate(-E.r.v * k * S), h.translate(E.a.v[0], E.a.v[1], E.a.v[2]), v.translate(-E.a.v[0], -E.a.v[1], E.a.v[2]), v.scale(_ ? 1 / z : z, _ ? 1 / H : H), v.translate(E.a.v[0], E.a.v[1], E.a.v[2])
        }, cA.prototype.init = function(c, h, v, E) {
            for (this.elem = c, this.arr = h, this.pos = v, this.elemsData = E, this._currentCopies = 0, this._elements = [], this._groups = [], this.frameId = -1, this.initDynamicPropertyContainer(c), this.initModifierProperties(c, h[v]); v > 0;) v -= 1, this._elements.unshift(h[v]);
            this.dynamicProperties.length ? this.k = !0 : this.getValue(!0)
        }, cA.prototype.resetElements = function(c) {
            var h, v = c.length;
            for (h = 0; h < v; h += 1) c[h]._processed = !1, c[h].ty === "gr" && this.resetElements(c[h].it)
        }, cA.prototype.cloneElements = function(c) {
            var h = JSON.parse(JSON.stringify(c));
            return this.resetElements(h), h
        }, cA.prototype.changeGroupRender = function(c, h) {
            var v, E = c.length;
            for (v = 0; v < E; v += 1) c[v]._render = h, c[v].ty === "gr" && this.changeGroupRender(c[v].it, h)
        }, cA.prototype.processShapes = function(c) {
            var h, v, E, S, _, k = !1;
            if (this._mdf || c) {
                var z = Math.ceil(this.c.v);
                if (this._groups.length < z) {
                    for (; this._groups.length < z;) {
                        var H = {
                            it: this.cloneElements(this._elements),
                            ty: "gr"
                        };
                        H.it.push({
                            a: {
                                a: 0,
                                ix: 1,
                                k: [0, 0]
                            },
                            nm: "Transform",
                            o: {
                                a: 0,
                                ix: 7,
                                k: 100
                            },
                            p: {
                                a: 0,
                                ix: 2,
                                k: [0, 0]
                            },
                            r: {
                                a: 1,
                                ix: 6,
                                k: [{
                                    s: 0,
                                    e: 0,
                                    t: 0
                                }, {
                                    s: 0,
                                    e: 0,
                                    t: 1
                                }]
                            },
                            s: {
                                a: 0,
                                ix: 3,
                                k: [100, 100]
                            },
                            sa: {
                                a: 0,
                                ix: 5,
                                k: 0
                            },
                            sk: {
                                a: 0,
                                ix: 4,
                                k: 0
                            },
                            ty: "tr"
                        }), this.arr.splice(0, 0, H), this._groups.splice(0, 0, H), this._currentCopies += 1
                    }
                    this.elem.reloadShapes(), k = !0
                }
                _ = 0;
                var ne;
                for (E = 0; E <= this._groups.length - 1; E += 1) {
                    if (ne = _ < z, this._groups[E]._render = ne, this.changeGroupRender(this._groups[E].it, ne), !ne) {
                        var oe = this.elemsData[E].it,
                            be = oe[oe.length - 1];
                        be.transform.op.v !== 0 ? (be.transform.op._mdf = !0, be.transform.op.v = 0) : be.transform.op._mdf = !1
                    }
                    _ += 1
                }
                this._currentCopies = z;
                var K = this.o.v,
                    le = K % 1,
                    pe = K > 0 ? Math.floor(K) : Math.ceil(K),
                    fe = this.pMatrix.props,
                    Ce = this.rMatrix.props,
                    Ae = this.sMatrix.props;
                this.pMatrix.reset(), this.rMatrix.reset(), this.sMatrix.reset(), this.tMatrix.reset(), this.matrix.reset();
                var q = 0;
                if (K > 0) {
                    for (; q < pe;) this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, 1, !1), q += 1;
                    le && (this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, le, !1), q += le)
                } else if (K < 0) {
                    for (; q > pe;) this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, 1, !0), q -= 1;
                    le && (this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, -le, !0), q -= le)
                }
                E = this.data.m === 1 ? 0 : this._currentCopies - 1, S = this.data.m === 1 ? 1 : -1, _ = this._currentCopies;
                for (var $, G; _;) {
                    if (h = this.elemsData[E].it, v = h[h.length - 1].transform.mProps.v.props, G = v.length, h[h.length - 1].transform.mProps._mdf = !0, h[h.length - 1].transform.op._mdf = !0, h[h.length - 1].transform.op.v = this._currentCopies === 1 ? this.so.v : this.so.v + (this.eo.v - this.so.v) * (E / (this._currentCopies - 1)), q !== 0) {
                        for ((E !== 0 && S === 1 || E !== this._currentCopies - 1 && S === -1) && this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, 1, !1), this.matrix.transform(Ce[0], Ce[1], Ce[2], Ce[3], Ce[4], Ce[5], Ce[6], Ce[7], Ce[8], Ce[9], Ce[10], Ce[11], Ce[12], Ce[13], Ce[14], Ce[15]), this.matrix.transform(Ae[0], Ae[1], Ae[2], Ae[3], Ae[4], Ae[5], Ae[6], Ae[7], Ae[8], Ae[9], Ae[10], Ae[11], Ae[12], Ae[13], Ae[14], Ae[15]), this.matrix.transform(fe[0], fe[1], fe[2], fe[3], fe[4], fe[5], fe[6], fe[7], fe[8], fe[9], fe[10], fe[11], fe[12], fe[13], fe[14], fe[15]), $ = 0; $ < G; $ += 1) v[$] = this.matrix.props[$];
                        this.matrix.reset()
                    } else
                        for (this.matrix.reset(), $ = 0; $ < G; $ += 1) v[$] = this.matrix.props[$];
                    q += 1, _ -= 1, E += S
                }
            } else
                for (_ = this._currentCopies, E = 0, S = 1; _;) h = this.elemsData[E].it, v = h[h.length - 1].transform.mProps.v.props, h[h.length - 1].transform.mProps._mdf = !1, h[h.length - 1].transform.op._mdf = !1, _ -= 1, E += S;
            return k
        }, cA.prototype.addShape = function() {};

        function Oo() {}
        f([Or], Oo), Oo.prototype.initModifierProperties = function(c, h) {
            this.getValue = this.processKeys, this.rd = Ge.getProp(c, h.r, 0, null, this), this._isAnimated = !!this.rd.effectsSequence.length
        }, Oo.prototype.processPath = function(c, h) {
            var v = Sn.newElement();
            v.c = c.c;
            var E, S = c._length,
                _, k, z, H, ne, oe, be = 0,
                K, le, pe, fe, Ce, Ae;
            for (E = 0; E < S; E += 1) _ = c.v[E], z = c.o[E], k = c.i[E], _[0] === z[0] && _[1] === z[1] && _[0] === k[0] && _[1] === k[1] ? (E === 0 || E === S - 1) && !c.c ? (v.setTripleAt(_[0], _[1], z[0], z[1], k[0], k[1], be), be += 1) : (E === 0 ? H = c.v[S - 1] : H = c.v[E - 1], ne = Math.sqrt(Math.pow(_[0] - H[0], 2) + Math.pow(_[1] - H[1], 2)), oe = ne ? Math.min(ne / 2, h) / ne : 0, Ce = _[0] + (H[0] - _[0]) * oe, K = Ce, Ae = _[1] - (_[1] - H[1]) * oe, le = Ae, pe = K - (K - _[0]) * U, fe = le - (le - _[1]) * U, v.setTripleAt(K, le, pe, fe, Ce, Ae, be), be += 1, E === S - 1 ? H = c.v[0] : H = c.v[E + 1], ne = Math.sqrt(Math.pow(_[0] - H[0], 2) + Math.pow(_[1] - H[1], 2)), oe = ne ? Math.min(ne / 2, h) / ne : 0, pe = _[0] + (H[0] - _[0]) * oe, K = pe, fe = _[1] + (H[1] - _[1]) * oe, le = fe, Ce = K - (K - _[0]) * U, Ae = le - (le - _[1]) * U, v.setTripleAt(K, le, pe, fe, Ce, Ae, be), be += 1) : (v.setTripleAt(c.v[E][0], c.v[E][1], c.o[E][0], c.o[E][1], c.i[E][0], c.i[E][1], be), be += 1);
            return v
        }, Oo.prototype.processShapes = function(c) {
            var h, v, E = this.shapes.length,
                S, _, k = this.rd.v;
            if (k !== 0) {
                var z, H;
                for (v = 0; v < E; v += 1) {
                    if (z = this.shapes[v], H = z.localShapeCollection, !(!z.shape._mdf && !this._mdf && !c))
                        for (H.releaseShapes(), z.shape._mdf = !0, h = z.shape.paths.shapes, _ = z.shape.paths._length, S = 0; S < _; S += 1) H.addShape(this.processPath(h[S], k));
                    z.shape.paths = z.localShapeCollection
                }
            }
            this.dynamicProperties.length || (this._mdf = !1)
        };

        function D0(c, h) {
            return Math.abs(c - h) * 1e5 <= Math.min(Math.abs(c), Math.abs(h))
        }

        function n1(c) {
            return Math.abs(c) <= 1e-5
        }

        function C5(c, h, v) {
            return c * (1 - v) + h * v
        }

        function gi(c, h, v) {
            return [C5(c[0], h[0], v), C5(c[1], h[1], v)]
        }

        function Px(c, h, v) {
            if (c === 0) return [];
            var E = h * h - 4 * c * v;
            if (E < 0) return [];
            var S = -h / (2 * c);
            if (E === 0) return [S];
            var _ = Math.sqrt(E) / (2 * c);
            return [S - _, S + _]
        }

        function x5(c, h, v, E) {
            return [-c + 3 * h - 3 * v + E, 3 * c - 6 * h + 3 * v, -3 * c + 3 * h, c]
        }

        function E5(c) {
            return new en(c, c, c, c, !1)
        }

        function en(c, h, v, E, S) {
            S && pa(c, h) && (h = gi(c, E, 1 / 3)), S && pa(v, E) && (v = gi(c, E, 2 / 3));
            var _ = x5(c[0], h[0], v[0], E[0]),
                k = x5(c[1], h[1], v[1], E[1]);
            this.a = [_[0], k[0]], this.b = [_[1], k[1]], this.c = [_[2], k[2]], this.d = [_[3], k[3]], this.points = [c, h, v, E]
        }
        en.prototype.point = function(c) {
            return [((this.a[0] * c + this.b[0]) * c + this.c[0]) * c + this.d[0], ((this.a[1] * c + this.b[1]) * c + this.c[1]) * c + this.d[1]]
        }, en.prototype.derivative = function(c) {
            return [(3 * c * this.a[0] + 2 * this.b[0]) * c + this.c[0], (3 * c * this.a[1] + 2 * this.b[1]) * c + this.c[1]]
        }, en.prototype.tangentAngle = function(c) {
            var h = this.derivative(c);
            return Math.atan2(h[1], h[0])
        }, en.prototype.normalAngle = function(c) {
            var h = this.derivative(c);
            return Math.atan2(h[0], h[1])
        }, en.prototype.inflectionPoints = function() {
            var c = this.a[1] * this.b[0] - this.a[0] * this.b[1];
            if (n1(c)) return [];
            var h = -.5 * (this.a[1] * this.c[0] - this.a[0] * this.c[1]) / c,
                v = h * h - 1 / 3 * (this.b[1] * this.c[0] - this.b[0] * this.c[1]) / c;
            if (v < 0) return [];
            var E = Math.sqrt(v);
            return n1(E) ? E > 0 && E < 1 ? [h] : [] : [h - E, h + E].filter(function(S) {
                return S > 0 && S < 1
            })
        }, en.prototype.split = function(c) {
            if (c <= 0) return [E5(this.points[0]), this];
            if (c >= 1) return [this, E5(this.points[this.points.length - 1])];
            var h = gi(this.points[0], this.points[1], c),
                v = gi(this.points[1], this.points[2], c),
                E = gi(this.points[2], this.points[3], c),
                S = gi(h, v, c),
                _ = gi(v, E, c),
                k = gi(S, _, c);
            return [new en(this.points[0], h, S, k, !0), new en(k, _, E, this.points[3], !0)]
        };

        function b5(c, h) {
            var v = c.points[0][h],
                E = c.points[c.points.length - 1][h];
            if (v > E) {
                var S = E;
                E = v, v = S
            }
            for (var _ = Px(3 * c.a[h], 2 * c.b[h], c.c[h]), k = 0; k < _.length; k += 1)
                if (_[k] > 0 && _[k] < 1) {
                    var z = c.point(_[k])[h];
                    z < v ? v = z : z > E && (E = z)
                }
            return {
                min: v,
                max: E
            }
        }
        en.prototype.bounds = function() {
            return {
                x: b5(this, 0),
                y: b5(this, 1)
            }
        }, en.prototype.boundingBox = function() {
            var c = this.bounds();
            return {
                left: c.x.min,
                right: c.x.max,
                top: c.y.min,
                bottom: c.y.max,
                width: c.x.max - c.x.min,
                height: c.y.max - c.y.min,
                cx: (c.x.max + c.x.min) / 2,
                cy: (c.y.max + c.y.min) / 2
            }
        };

        function P0(c, h, v) {
            var E = c.boundingBox();
            return {
                cx: E.cx,
                cy: E.cy,
                width: E.width,
                height: E.height,
                bez: c,
                t: (h + v) / 2,
                t1: h,
                t2: v
            }
        }

        function F5(c) {
            var h = c.bez.split(.5);
            return [P0(h[0], c.t1, c.t), P0(h[1], c.t, c.t2)]
        }

        function Ox(c, h) {
            return Math.abs(c.cx - h.cx) * 2 < c.width + h.width && Math.abs(c.cy - h.cy) * 2 < c.height + h.height
        }

        function Lo(c, h, v, E, S, _) {
            if (Ox(c, h)) {
                if (v >= _ || c.width <= E && c.height <= E && h.width <= E && h.height <= E) {
                    S.push([c.t, h.t]);
                    return
                }
                var k = F5(c),
                    z = F5(h);
                Lo(k[0], z[0], v + 1, E, S, _), Lo(k[0], z[1], v + 1, E, S, _), Lo(k[1], z[0], v + 1, E, S, _), Lo(k[1], z[1], v + 1, E, S, _)
            }
        }
        en.prototype.intersections = function(c, h, v) {
            h === void 0 && (h = 2), v === void 0 && (v = 7);
            var E = [];
            return Lo(P0(this, 0, 1), P0(c, 0, 1), 0, h, E, v), E
        }, en.shapeSegment = function(c, h) {
            var v = (h + 1) % c.length();
            return new en(c.v[h], c.o[h], c.i[v], c.v[v], !0)
        }, en.shapeSegmentInverted = function(c, h) {
            var v = (h + 1) % c.length();
            return new en(c.v[v], c.i[v], c.o[h], c.v[h], !0)
        };

        function r1(c, h) {
            return [c[1] * h[2] - c[2] * h[1], c[2] * h[0] - c[0] * h[2], c[0] * h[1] - c[1] * h[0]]
        }

        function O0(c, h, v, E) {
            var S = [c[0], c[1], 1],
                _ = [h[0], h[1], 1],
                k = [v[0], v[1], 1],
                z = [E[0], E[1], 1],
                H = r1(r1(S, _), r1(k, z));
            return n1(H[2]) ? null : [H[0] / H[2], H[1] / H[2]]
        }

        function ha(c, h, v) {
            return [c[0] + Math.cos(h) * v, c[1] - Math.sin(h) * v]
        }

        function A1(c, h) {
            return Math.hypot(c[0] - h[0], c[1] - h[1])
        }

        function pa(c, h) {
            return D0(c[0], h[0]) && D0(c[1], h[1])
        }

        function ko() {}
        f([Or], ko), ko.prototype.initModifierProperties = function(c, h) {
            this.getValue = this.processKeys, this.amplitude = Ge.getProp(c, h.s, 0, null, this), this.frequency = Ge.getProp(c, h.r, 0, null, this), this.pointsType = Ge.getProp(c, h.pt, 0, null, this), this._isAnimated = this.amplitude.effectsSequence.length !== 0 || this.frequency.effectsSequence.length !== 0 || this.pointsType.effectsSequence.length !== 0
        };

        function _5(c, h, v, E, S, _, k) {
            var z = v - Math.PI / 2,
                H = v + Math.PI / 2,
                ne = h[0] + Math.cos(v) * E * S,
                oe = h[1] - Math.sin(v) * E * S;
            c.setTripleAt(ne, oe, ne + Math.cos(z) * _, oe - Math.sin(z) * _, ne + Math.cos(H) * k, oe - Math.sin(H) * k, c.length())
        }

        function Lx(c, h) {
            var v = [h[0] - c[0], h[1] - c[1]],
                E = -Math.PI * .5,
                S = [Math.cos(E) * v[0] - Math.sin(E) * v[1], Math.sin(E) * v[0] + Math.cos(E) * v[1]];
            return S
        }

        function kx(c, h) {
            var v = h === 0 ? c.length() - 1 : h - 1,
                E = (h + 1) % c.length(),
                S = c.v[v],
                _ = c.v[E],
                k = Lx(S, _);
            return Math.atan2(0, 1) - Math.atan2(k[1], k[0])
        }

        function S5(c, h, v, E, S, _, k) {
            var z = kx(h, v),
                H = h.v[v % h._length],
                ne = h.v[v === 0 ? h._length - 1 : v - 1],
                oe = h.v[(v + 1) % h._length],
                be = _ === 2 ? Math.sqrt(Math.pow(H[0] - ne[0], 2) + Math.pow(H[1] - ne[1], 2)) : 0,
                K = _ === 2 ? Math.sqrt(Math.pow(H[0] - oe[0], 2) + Math.pow(H[1] - oe[1], 2)) : 0;
            _5(c, h.v[v % h._length], z, k, E, K / ((S + 1) * 2), be / ((S + 1) * 2))
        }

        function Hx(c, h, v, E, S, _) {
            for (var k = 0; k < E; k += 1) {
                var z = (k + 1) / (E + 1),
                    H = S === 2 ? Math.sqrt(Math.pow(h.points[3][0] - h.points[0][0], 2) + Math.pow(h.points[3][1] - h.points[0][1], 2)) : 0,
                    ne = h.normalAngle(z),
                    oe = h.point(z);
                _5(c, oe, ne, _, v, H / ((E + 1) * 2), H / ((E + 1) * 2)), _ = -_
            }
            return _
        }
        ko.prototype.processPath = function(c, h, v, E) {
            var S = c._length,
                _ = Sn.newElement();
            if (_.c = c.c, c.c || (S -= 1), S === 0) return _;
            var k = -1,
                z = en.shapeSegment(c, 0);
            S5(_, c, 0, h, v, E, k);
            for (var H = 0; H < S; H += 1) k = Hx(_, z, h, v, E, -k), H === S - 1 && !c.c ? z = null : z = en.shapeSegment(c, (H + 1) % S), S5(_, c, H + 1, h, v, E, k);
            return _
        }, ko.prototype.processShapes = function(c) {
            var h, v, E = this.shapes.length,
                S, _, k = this.amplitude.v,
                z = Math.max(0, Math.round(this.frequency.v)),
                H = this.pointsType.v;
            if (k !== 0) {
                var ne, oe;
                for (v = 0; v < E; v += 1) {
                    if (ne = this.shapes[v], oe = ne.localShapeCollection, !(!ne.shape._mdf && !this._mdf && !c))
                        for (oe.releaseShapes(), ne.shape._mdf = !0, h = ne.shape.paths.shapes, _ = ne.shape.paths._length, S = 0; S < _; S += 1) oe.addShape(this.processPath(h[S], k, z, H));
                    ne.shape.paths = ne.localShapeCollection
                }
            }
            this.dynamicProperties.length || (this._mdf = !1)
        };

        function i1(c, h, v) {
            var E = Math.atan2(h[0] - c[0], h[1] - c[1]);
            return [ha(c, E, v), ha(h, E, v)]
        }

        function ga(c, h) {
            var v, E, S, _, k, z, H;
            H = i1(c.points[0], c.points[1], h), v = H[0], E = H[1], H = i1(c.points[1], c.points[2], h), S = H[0], _ = H[1], H = i1(c.points[2], c.points[3], h), k = H[0], z = H[1];
            var ne = O0(v, E, S, _);
            ne === null && (ne = E);
            var oe = O0(k, z, S, _);
            return oe === null && (oe = k), new en(v, ne, oe, z)
        }

        function Q5(c, h, v, E, S) {
            var _ = h.points[3],
                k = v.points[0];
            if (E === 3 || pa(_, k)) return _;
            if (E === 2) {
                var z = -h.tangentAngle(1),
                    H = -v.tangentAngle(0) + Math.PI,
                    ne = O0(_, ha(_, z + Math.PI / 2, 100), k, ha(k, z + Math.PI / 2, 100)),
                    oe = ne ? A1(ne, _) : A1(_, k) / 2,
                    be = ha(_, z, 2 * oe * U);
                return c.setXYAt(be[0], be[1], "o", c.length() - 1), be = ha(k, H, 2 * oe * U), c.setTripleAt(k[0], k[1], k[0], k[1], be[0], be[1], c.length()), k
            }
            var K = pa(_, h.points[2]) ? h.points[0] : h.points[2],
                le = pa(k, v.points[1]) ? v.points[3] : v.points[1],
                pe = O0(K, _, k, le);
            return pe && A1(pe, _) < S ? (c.setTripleAt(pe[0], pe[1], pe[0], pe[1], pe[0], pe[1], c.length()), pe) : _
        }

        function U5(c, h) {
            var v = c.intersections(h);
            return v.length && D0(v[0][0], 1) && v.shift(), v.length ? v[0] : null
        }

        function T5(c, h) {
            var v = c.slice(),
                E = h.slice(),
                S = U5(c[c.length - 1], h[0]);
            return S && (v[c.length - 1] = c[c.length - 1].split(S[0])[0], E[0] = h[0].split(S[1])[1]), c.length > 1 && h.length > 1 && (S = U5(c[0], h[h.length - 1]), S) ? [
                [c[0].split(S[0])[0]],
                [h[h.length - 1].split(S[1])[1]]
            ] : [v, E]
        }

        function Mx(c) {
            for (var h, v = 1; v < c.length; v += 1) h = T5(c[v - 1], c[v]), c[v - 1] = h[0], c[v] = h[1];
            return c.length > 1 && (h = T5(c[c.length - 1], c[0]), c[c.length - 1] = h[0], c[0] = h[1]), c
        }

        function I5(c, h) {
            var v = c.inflectionPoints(),
                E, S, _, k;
            if (v.length === 0) return [ga(c, h)];
            if (v.length === 1 || D0(v[1], 1)) return _ = c.split(v[0]), E = _[0], S = _[1], [ga(E, h), ga(S, h)];
            _ = c.split(v[0]), E = _[0];
            var z = (v[1] - v[0]) / (1 - v[0]);
            return _ = _[1].split(z), k = _[0], S = _[1], [ga(E, h), ga(k, h), ga(S, h)]
        }

        function Ho() {}
        f([Or], Ho), Ho.prototype.initModifierProperties = function(c, h) {
            this.getValue = this.processKeys, this.amount = Ge.getProp(c, h.a, 0, null, this), this.miterLimit = Ge.getProp(c, h.ml, 0, null, this), this.lineJoin = h.lj, this._isAnimated = this.amount.effectsSequence.length !== 0
        }, Ho.prototype.processPath = function(c, h, v, E) {
            var S = Sn.newElement();
            S.c = c.c;
            var _ = c.length();
            c.c || (_ -= 1);
            var k, z, H, ne = [];
            for (k = 0; k < _; k += 1) H = en.shapeSegment(c, k), ne.push(I5(H, h));
            if (!c.c)
                for (k = _ - 1; k >= 0; k -= 1) H = en.shapeSegmentInverted(c, k), ne.push(I5(H, h));
            ne = Mx(ne);
            var oe = null,
                be = null;
            for (k = 0; k < ne.length; k += 1) {
                var K = ne[k];
                for (be && (oe = Q5(S, be, K[0], v, E)), be = K[K.length - 1], z = 0; z < K.length; z += 1) H = K[z], oe && pa(H.points[0], oe) ? S.setXYAt(H.points[1][0], H.points[1][1], "o", S.length() - 1) : S.setTripleAt(H.points[0][0], H.points[0][1], H.points[1][0], H.points[1][1], H.points[0][0], H.points[0][1], S.length()), S.setTripleAt(H.points[3][0], H.points[3][1], H.points[3][0], H.points[3][1], H.points[2][0], H.points[2][1], S.length()), oe = H.points[3]
            }
            return ne.length && Q5(S, be, ne[0][0], v, E), S
        }, Ho.prototype.processShapes = function(c) {
            var h, v, E = this.shapes.length,
                S, _, k = this.amount.v,
                z = this.miterLimit.v,
                H = this.lineJoin;
            if (k !== 0) {
                var ne, oe;
                for (v = 0; v < E; v += 1) {
                    if (ne = this.shapes[v], oe = ne.localShapeCollection, !(!ne.shape._mdf && !this._mdf && !c))
                        for (oe.releaseShapes(), ne.shape._mdf = !0, h = ne.shape.paths.shapes, _ = ne.shape.paths._length, S = 0; S < _; S += 1) oe.addShape(this.processPath(h[S], k, H, z));
                    ne.shape.paths = ne.localShapeCollection
                }
            }
            this.dynamicProperties.length || (this._mdf = !1)
        };

        function D5(c) {
            for (var h = c.fStyle ? c.fStyle.split(" ") : [], v = "normal", E = "normal", S = h.length, _, k = 0; k < S; k += 1) switch (_ = h[k].toLowerCase(), _) {
                case "italic":
                    E = "italic";
                    break;
                case "bold":
                    v = "700";
                    break;
                case "black":
                    v = "900";
                    break;
                case "medium":
                    v = "500";
                    break;
                case "regular":
                case "normal":
                    v = "400";
                    break;
                case "light":
                case "thin":
                    v = "200";
                    break
            }
            return {
                style: E,
                weight: c.fWeight || v
            }
        }
        var Cs = function() {
            var c = 5e3,
                h = {
                    w: 0,
                    size: 0,
                    shapes: [],
                    data: {
                        shapes: []
                    }
                },
                v = [];
            v = v.concat([2304, 2305, 2306, 2307, 2362, 2363, 2364, 2364, 2366, 2367, 2368, 2369, 2370, 2371, 2372, 2373, 2374, 2375, 2376, 2377, 2378, 2379, 2380, 2381, 2382, 2383, 2387, 2388, 2389, 2390, 2391, 2402, 2403]);
            var E = 127988,
                S = 917631,
                _ = 917601,
                k = 917626,
                z = 65039,
                H = 8205,
                ne = 127462,
                oe = 127487,
                be = ["d83cdffb", "d83cdffc", "d83cdffd", "d83cdffe", "d83cdfff"];

            function K(X) {
                var de = X.split(","),
                    L, R = de.length,
                    Se = [];
                for (L = 0; L < R; L += 1) de[L] !== "sans-serif" && de[L] !== "monospace" && Se.push(de[L]);
                return Se.join(",")
            }

            function le(X, de) {
                var L = u("span");
                L.setAttribute("aria-hidden", !0), L.style.fontFamily = de;
                var R = u("span");
                R.innerText = "giItT1WQy@!-/#", L.style.position = "absolute", L.style.left = "-10000px", L.style.top = "-10000px", L.style.fontSize = "300px", L.style.fontVariant = "normal", L.style.fontStyle = "normal", L.style.fontWeight = "normal", L.style.letterSpacing = "0", L.appendChild(R), document.body.appendChild(L);
                var Se = R.offsetWidth;
                return R.style.fontFamily = K(X) + ", " + de, {
                    node: R,
                    w: Se,
                    parent: L
                }
            }

            function pe() {
                var X, de = this.fonts.length,
                    L, R, Se = de;
                for (X = 0; X < de; X += 1) this.fonts[X].loaded ? Se -= 1 : this.fonts[X].fOrigin === "n" || this.fonts[X].origin === 0 ? this.fonts[X].loaded = !0 : (L = this.fonts[X].monoCase.node, R = this.fonts[X].monoCase.w, L.offsetWidth !== R ? (Se -= 1, this.fonts[X].loaded = !0) : (L = this.fonts[X].sansCase.node, R = this.fonts[X].sansCase.w, L.offsetWidth !== R && (Se -= 1, this.fonts[X].loaded = !0)), this.fonts[X].loaded && (this.fonts[X].sansCase.parent.parentNode.removeChild(this.fonts[X].sansCase.parent), this.fonts[X].monoCase.parent.parentNode.removeChild(this.fonts[X].monoCase.parent)));
                Se !== 0 && Date.now() - this.initTime < c ? setTimeout(this.checkLoadedFontsBinded, 20) : setTimeout(this.setIsLoadedBinded, 10)
            }

            function fe(X, de) {
                var L = document.body && de ? "svg" : "canvas",
                    R, Se = D5(X);
                if (L === "svg") {
                    var me = Te("text");
                    me.style.fontSize = "100px", me.setAttribute("font-family", X.fFamily), me.setAttribute("font-style", Se.style), me.setAttribute("font-weight", Se.weight), me.textContent = "1", X.fClass ? (me.style.fontFamily = "inherit", me.setAttribute("class", X.fClass)) : me.style.fontFamily = X.fFamily, de.appendChild(me), R = me
                } else {
                    var Xe = new OffscreenCanvas(500, 500).getContext("2d");
                    Xe.font = Se.style + " " + Se.weight + " 100px " + X.fFamily, R = Xe
                }

                function at(ut) {
                    return L === "svg" ? (R.textContent = ut, R.getComputedTextLength()) : R.measureText(ut).width
                }
                return {
                    measureText: at
                }
            }

            function Ce(X, de) {
                if (!X) {
                    this.isLoaded = !0;
                    return
                }
                if (this.chars) {
                    this.isLoaded = !0, this.fonts = X.list;
                    return
                }
                if (!document.body) {
                    this.isLoaded = !0, X.list.forEach(function(or) {
                        or.helper = fe(or), or.cache = {}
                    }), this.fonts = X.list;
                    return
                }
                var L = X.list,
                    R, Se = L.length,
                    me = Se;
                for (R = 0; R < Se; R += 1) {
                    var Xe = !0,
                        at, ut;
                    if (L[R].loaded = !1, L[R].monoCase = le(L[R].fFamily, "monospace"), L[R].sansCase = le(L[R].fFamily, "sans-serif"), !L[R].fPath) L[R].loaded = !0, me -= 1;
                    else if (L[R].fOrigin === "p" || L[R].origin === 3) {
                        if (at = document.querySelectorAll('style[f-forigin="p"][f-family="' + L[R].fFamily + '"], style[f-origin="3"][f-family="' + L[R].fFamily + '"]'), at.length > 0 && (Xe = !1), Xe) {
                            var Qt = u("style");
                            Qt.setAttribute("f-forigin", L[R].fOrigin), Qt.setAttribute("f-origin", L[R].origin), Qt.setAttribute("f-family", L[R].fFamily), Qt.type = "text/css", Qt.innerText = "@font-face {font-family: " + L[R].fFamily + "; font-style: normal; src: url('" + L[R].fPath + "');}", de.appendChild(Qt)
                        }
                    } else if (L[R].fOrigin === "g" || L[R].origin === 1) {
                        for (at = document.querySelectorAll('link[f-forigin="g"], link[f-origin="1"]'), ut = 0; ut < at.length; ut += 1) at[ut].href.indexOf(L[R].fPath) !== -1 && (Xe = !1);
                        if (Xe) {
                            var Ut = u("link");
                            Ut.setAttribute("f-forigin", L[R].fOrigin), Ut.setAttribute("f-origin", L[R].origin), Ut.type = "text/css", Ut.rel = "stylesheet", Ut.href = L[R].fPath, document.body.appendChild(Ut)
                        }
                    } else if (L[R].fOrigin === "t" || L[R].origin === 2) {
                        for (at = document.querySelectorAll('script[f-forigin="t"], script[f-origin="2"]'), ut = 0; ut < at.length; ut += 1) L[R].fPath === at[ut].src && (Xe = !1);
                        if (Xe) {
                            var mn = u("link");
                            mn.setAttribute("f-forigin", L[R].fOrigin), mn.setAttribute("f-origin", L[R].origin), mn.setAttribute("rel", "stylesheet"), mn.setAttribute("href", L[R].fPath), de.appendChild(mn)
                        }
                    }
                    L[R].helper = fe(L[R], de), L[R].cache = {}, this.fonts.push(L[R])
                }
                me === 0 ? this.isLoaded = !0 : setTimeout(this.checkLoadedFonts.bind(this), 100)
            }

            function Ae(X) {
                if (X) {
                    this.chars || (this.chars = []);
                    var de, L = X.length,
                        R, Se = this.chars.length,
                        me;
                    for (de = 0; de < L; de += 1) {
                        for (R = 0, me = !1; R < Se;) this.chars[R].style === X[de].style && this.chars[R].fFamily === X[de].fFamily && this.chars[R].ch === X[de].ch && (me = !0), R += 1;
                        me || (this.chars.push(X[de]), Se += 1)
                    }
                }
            }

            function q(X, de, L) {
                for (var R = 0, Se = this.chars.length; R < Se;) {
                    if (this.chars[R].ch === X && this.chars[R].style === de && this.chars[R].fFamily === L) return this.chars[R];
                    R += 1
                }
                return (typeof X == "string" && X.charCodeAt(0) !== 13 || !X) && console && console.warn && !this._warned && (this._warned = !0, console.warn("Missing character from exported characters list: ", X, de, L)), h
            }

            function $(X, de, L) {
                var R = this.getFontByName(de),
                    Se = X;
                if (!R.cache[Se]) {
                    var me = R.helper;
                    if (X === " ") {
                        var Xe = me.measureText("|" + X + "|"),
                            at = me.measureText("||");
                        R.cache[Se] = (Xe - at) / 100
                    } else R.cache[Se] = me.measureText(X) / 100
                }
                return R.cache[Se] * L
            }

            function G(X) {
                for (var de = 0, L = this.fonts.length; de < L;) {
                    if (this.fonts[de].fName === X) return this.fonts[de];
                    de += 1
                }
                return this.fonts[0]
            }

            function re(X) {
                var de = 0,
                    L = X.charCodeAt(0);
                if (L >= 55296 && L <= 56319) {
                    var R = X.charCodeAt(1);
                    R >= 56320 && R <= 57343 && (de = (L - 55296) * 1024 + R - 56320 + 65536)
                }
                return de
            }

            function ge(X, de) {
                var L = X.toString(16) + de.toString(16);
                return be.indexOf(L) !== -1
            }

            function Ee(X) {
                return X === H
            }

            function Qe(X) {
                return X === z
            }

            function Re(X) {
                var de = re(X);
                return de >= ne && de <= oe
            }

            function lt(X) {
                return Re(X.substr(0, 2)) && Re(X.substr(2, 2))
            }

            function it(X) {
                return v.indexOf(X) !== -1
            }

            function Ve(X, de) {
                var L = re(X.substr(de, 2));
                if (L !== E) return !1;
                var R = 0;
                for (de += 2; R < 5;) {
                    if (L = re(X.substr(de, 2)), L < _ || L > k) return !1;
                    R += 1, de += 2
                }
                return re(X.substr(de, 2)) === S
            }

            function ct() {
                this.isLoaded = !0
            }
            var rt = function() {
                this.fonts = [], this.chars = null, this.typekitLoaded = 0, this.isLoaded = !1, this._warned = !1, this.initTime = Date.now(), this.setIsLoadedBinded = this.setIsLoaded.bind(this), this.checkLoadedFontsBinded = this.checkLoadedFonts.bind(this)
            };
            rt.isModifier = ge, rt.isZeroWidthJoiner = Ee, rt.isFlagEmoji = lt, rt.isRegionalCode = Re, rt.isCombinedCharacter = it, rt.isRegionalFlag = Ve, rt.isVariationSelector = Qe, rt.BLACK_FLAG_CODE_POINT = E;
            var Me = {
                addChars: Ae,
                addFonts: Ce,
                getCharData: q,
                getFontByName: G,
                measureText: $,
                checkLoadedFonts: pe,
                setIsLoaded: ct
            };
            return rt.prototype = Me, rt
        }();

        function P5(c) {
            this.animationData = c
        }
        P5.prototype.getProp = function(c) {
            return this.animationData.slots && this.animationData.slots[c.sid] ? Object.assign(c, this.animationData.slots[c.sid].p) : c
        };

        function Rx(c) {
            return new P5(c)
        }

        function L0() {}
        L0.prototype = {
            initRenderable: function() {
                this.isInRange = !1, this.hidden = !1, this.isTransparent = !1, this.renderableComponents = []
            },
            addRenderableComponent: function(h) {
                this.renderableComponents.indexOf(h) === -1 && this.renderableComponents.push(h)
            },
            removeRenderableComponent: function(h) {
                this.renderableComponents.indexOf(h) !== -1 && this.renderableComponents.splice(this.renderableComponents.indexOf(h), 1)
            },
            prepareRenderableFrame: function(h) {
                this.checkLayerLimits(h)
            },
            checkTransparency: function() {
                this.finalTransform.mProp.o.v <= 0 ? !this.isTransparent && this.globalData.renderConfig.hideOnTransparent && (this.isTransparent = !0, this.hide()) : this.isTransparent && (this.isTransparent = !1, this.show())
            },
            checkLayerLimits: function(h) {
                this.data.ip - this.data.st <= h && this.data.op - this.data.st > h ? this.isInRange !== !0 && (this.globalData._mdf = !0, this._mdf = !0, this.isInRange = !0, this.show()) : this.isInRange !== !1 && (this.globalData._mdf = !0, this.isInRange = !1, this.hide())
            },
            renderRenderable: function() {
                var h, v = this.renderableComponents.length;
                for (h = 0; h < v; h += 1) this.renderableComponents[h].renderFrame(this._isFirstFrame)
            },
            sourceRectAtTime: function() {
                return {
                    top: 0,
                    left: 0,
                    width: 100,
                    height: 100
                }
            },
            getLayerSize: function() {
                return this.data.ty === 5 ? {
                    w: this.data.textData.width,
                    h: this.data.textData.height
                } : {
                    w: this.data.width,
                    h: this.data.height
                }
            }
        };
        var s1 = function() {
            var c = {
                0: "source-over",
                1: "multiply",
                2: "screen",
                3: "overlay",
                4: "darken",
                5: "lighten",
                6: "color-dodge",
                7: "color-burn",
                8: "hard-light",
                9: "soft-light",
                10: "difference",
                11: "exclusion",
                12: "hue",
                13: "saturation",
                14: "color",
                15: "luminosity"
            };
            return function(h) {
                return c[h] || ""
            }
        }();

        function Nx(c, h, v) {
            this.p = Ge.getProp(h, c.v, 0, 0, v)
        }

        function $x(c, h, v) {
            this.p = Ge.getProp(h, c.v, 0, 0, v)
        }

        function Kx(c, h, v) {
            this.p = Ge.getProp(h, c.v, 1, 0, v)
        }

        function Vx(c, h, v) {
            this.p = Ge.getProp(h, c.v, 1, 0, v)
        }

        function Gx(c, h, v) {
            this.p = Ge.getProp(h, c.v, 0, 0, v)
        }

        function zx(c, h, v) {
            this.p = Ge.getProp(h, c.v, 0, 0, v)
        }

        function Wx(c, h, v) {
            this.p = Ge.getProp(h, c.v, 0, 0, v)
        }

        function jx() {
            this.p = {}
        }

        function O5(c, h) {
            var v = c.ef || [];
            this.effectElements = [];
            var E, S = v.length,
                _;
            for (E = 0; E < S; E += 1) _ = new Mo(v[E], h), this.effectElements.push(_)
        }

        function Mo(c, h) {
            this.init(c, h)
        }
        f([gn], Mo), Mo.prototype.getValue = Mo.prototype.iterateDynamicProperties, Mo.prototype.init = function(c, h) {
            this.data = c, this.effectElements = [], this.initDynamicPropertyContainer(h);
            var v, E = this.data.ef.length,
                S, _ = this.data.ef;
            for (v = 0; v < E; v += 1) {
                switch (S = null, _[v].ty) {
                    case 0:
                        S = new Nx(_[v], h, this);
                        break;
                    case 1:
                        S = new $x(_[v], h, this);
                        break;
                    case 2:
                        S = new Kx(_[v], h, this);
                        break;
                    case 3:
                        S = new Vx(_[v], h, this);
                        break;
                    case 4:
                    case 7:
                        S = new Wx(_[v], h, this);
                        break;
                    case 10:
                        S = new Gx(_[v], h, this);
                        break;
                    case 11:
                        S = new zx(_[v], h, this);
                        break;
                    case 5:
                        S = new O5(_[v], h);
                        break;
                    default:
                        S = new jx(_[v]);
                        break
                }
                S && this.effectElements.push(S)
            }
        };

        function vi() {}
        vi.prototype = {
            checkMasks: function() {
                if (!this.data.hasMask) return !1;
                for (var h = 0, v = this.data.masksProperties.length; h < v;) {
                    if (this.data.masksProperties[h].mode !== "n" && this.data.masksProperties[h].cl !== !1) return !0;
                    h += 1
                }
                return !1
            },
            initExpressions: function() {},
            setBlendMode: function() {
                var h = s1(this.data.bm),
                    v = this.baseElement || this.layerElement;
                v.style["mix-blend-mode"] = h
            },
            initBaseData: function(h, v, E) {
                this.globalData = v, this.comp = E, this.data = h, this.layerId = Y(), this.data.sr || (this.data.sr = 1), this.effectsManager = new O5(this.data, this, this.dynamicProperties)
            },
            getType: function() {
                return this.type
            },
            sourceRectAtTime: function() {}
        };

        function mi() {}
        mi.prototype = {
            initFrame: function() {
                this._isFirstFrame = !1, this.dynamicProperties = [], this._mdf = !1
            },
            prepareProperties: function(h, v) {
                var E, S = this.dynamicProperties.length;
                for (E = 0; E < S; E += 1)(v || this._isParent && this.dynamicProperties[E].propType === "transform") && (this.dynamicProperties[E].getValue(), this.dynamicProperties[E]._mdf && (this.globalData._mdf = !0, this._mdf = !0))
            },
            addDynamicProperty: function(h) {
                this.dynamicProperties.indexOf(h) === -1 && this.dynamicProperties.push(h)
            }
        };

        function Bi(c, h, v) {
            this.initFrame(), this.initRenderable(), this.assetData = h.getAssetData(c.refId), this.footageData = h.imageLoader.getAsset(this.assetData), this.initBaseData(c, h, v)
        }
        Bi.prototype.prepareFrame = function() {}, f([L0, vi, mi], Bi), Bi.prototype.getBaseElement = function() {
            return null
        }, Bi.prototype.renderFrame = function() {}, Bi.prototype.destroy = function() {}, Bi.prototype.initExpressions = function() {}, Bi.prototype.getFootageData = function() {
            return this.footageData
        };

        function ar(c, h, v) {
            this.initFrame(), this.initRenderable(), this.assetData = h.getAssetData(c.refId), this.initBaseData(c, h, v), this._isPlaying = !1, this._canPlay = !1;
            var E = this.globalData.getAssetsPath(this.assetData);
            this.audio = this.globalData.audioController.createAudio(E), this._currentTime = 0, this.globalData.audioController.addAudio(this), this._volumeMultiplier = 1, this._volume = 1, this._previousVolume = null, this.tm = c.tm ? Ge.getProp(this, c.tm, 0, h.frameRate, this) : {
                _placeholder: !0
            }, this.lv = Ge.getProp(this, c.au && c.au.lv ? c.au.lv : {
                k: [100]
            }, 1, .01, this)
        }
        ar.prototype.prepareFrame = function(c) {
            if (this.prepareRenderableFrame(c, !0), this.prepareProperties(c, !0), this.tm._placeholder) this._currentTime = c / this.data.sr;
            else {
                var h = this.tm.v;
                this._currentTime = h
            }
            this._volume = this.lv.v[0];
            var v = this._volume * this._volumeMultiplier;
            this._previousVolume !== v && (this._previousVolume = v, this.audio.volume(v))
        }, f([L0, vi, mi], ar), ar.prototype.renderFrame = function() {
            this.isInRange && this._canPlay && (this._isPlaying ? (!this.audio.playing() || Math.abs(this._currentTime / this.globalData.frameRate - this.audio.seek()) > .1) && this.audio.seek(this._currentTime / this.globalData.frameRate) : (this.audio.play(), this.audio.seek(this._currentTime / this.globalData.frameRate), this._isPlaying = !0))
        }, ar.prototype.show = function() {}, ar.prototype.hide = function() {
            this.audio.pause(), this._isPlaying = !1
        }, ar.prototype.pause = function() {
            this.audio.pause(), this._isPlaying = !1, this._canPlay = !1
        }, ar.prototype.resume = function() {
            this._canPlay = !0
        }, ar.prototype.setRate = function(c) {
            this.audio.rate(c)
        }, ar.prototype.volume = function(c) {
            this._volumeMultiplier = c, this._previousVolume = c * this._volume, this.audio.volume(this._previousVolume)
        }, ar.prototype.getBaseElement = function() {
            return null
        }, ar.prototype.destroy = function() {}, ar.prototype.sourceRectAtTime = function() {}, ar.prototype.initExpressions = function() {};

        function Wn() {}
        Wn.prototype.checkLayers = function(c) {
            var h, v = this.layers.length,
                E;
            for (this.completeLayers = !0, h = v - 1; h >= 0; h -= 1) this.elements[h] || (E = this.layers[h], E.ip - E.st <= c - this.layers[h].st && E.op - E.st > c - this.layers[h].st && this.buildItem(h)), this.completeLayers = this.elements[h] ? this.completeLayers : !1;
            this.checkPendingElements()
        }, Wn.prototype.createItem = function(c) {
            switch (c.ty) {
                case 2:
                    return this.createImage(c);
                case 0:
                    return this.createComp(c);
                case 1:
                    return this.createSolid(c);
                case 3:
                    return this.createNull(c);
                case 4:
                    return this.createShape(c);
                case 5:
                    return this.createText(c);
                case 6:
                    return this.createAudio(c);
                case 13:
                    return this.createCamera(c);
                case 15:
                    return this.createFootage(c);
                default:
                    return this.createNull(c)
            }
        }, Wn.prototype.createCamera = function() {
            throw new Error("You're using a 3d camera. Try the html renderer.")
        }, Wn.prototype.createAudio = function(c) {
            return new ar(c, this.globalData, this)
        }, Wn.prototype.createFootage = function(c) {
            return new Bi(c, this.globalData, this)
        }, Wn.prototype.buildAllItems = function() {
            var c, h = this.layers.length;
            for (c = 0; c < h; c += 1) this.buildItem(c);
            this.checkPendingElements()
        }, Wn.prototype.includeLayers = function(c) {
            this.completeLayers = !1;
            var h, v = c.length,
                E, S = this.layers.length;
            for (h = 0; h < v; h += 1)
                for (E = 0; E < S;) {
                    if (this.layers[E].id === c[h].id) {
                        this.layers[E] = c[h];
                        break
                    }
                    E += 1
                }
        }, Wn.prototype.setProjectInterface = function(c) {
            this.globalData.projectInterface = c
        }, Wn.prototype.initItems = function() {
            this.globalData.progressiveLoad || this.buildAllItems()
        }, Wn.prototype.buildElementParenting = function(c, h, v) {
            for (var E = this.elements, S = this.layers, _ = 0, k = S.length; _ < k;) S[_].ind == h && (!E[_] || E[_] === !0 ? (this.buildItem(_), this.addPendingElement(c)) : (v.push(E[_]), E[_].setAsParent(), S[_].parent !== void 0 ? this.buildElementParenting(c, S[_].parent, v) : c.setHierarchy(v))), _ += 1
        }, Wn.prototype.addPendingElement = function(c) {
            this.pendingElements.push(c)
        }, Wn.prototype.searchExtraCompositions = function(c) {
            var h, v = c.length;
            for (h = 0; h < v; h += 1)
                if (c[h].xt) {
                    var E = this.createComp(c[h]);
                    E.initExpressions(), this.globalData.projectInterface.registerComposition(E)
                }
        }, Wn.prototype.getElementById = function(c) {
            var h, v = this.elements.length;
            for (h = 0; h < v; h += 1)
                if (this.elements[h].data.ind === c) return this.elements[h];
            return null
        }, Wn.prototype.getElementByPath = function(c) {
            var h = c.shift(),
                v;
            if (typeof h == "number") v = this.elements[h];
            else {
                var E, S = this.elements.length;
                for (E = 0; E < S; E += 1)
                    if (this.elements[E].data.nm === h) {
                        v = this.elements[E];
                        break
                    }
            }
            return c.length === 0 ? v : v.getElementByPath(c)
        }, Wn.prototype.setupGlobalData = function(c, h) {
            this.globalData.fontManager = new Cs, this.globalData.slotManager = Rx(c), this.globalData.fontManager.addChars(c.chars), this.globalData.fontManager.addFonts(c.fonts, h), this.globalData.getAssetData = this.animationItem.getAssetData.bind(this.animationItem), this.globalData.getAssetsPath = this.animationItem.getAssetsPath.bind(this.animationItem), this.globalData.imageLoader = this.animationItem.imagePreloader, this.globalData.audioController = this.animationItem.audioController, this.globalData.frameId = 0, this.globalData.frameRate = c.fr, this.globalData.nm = c.nm, this.globalData.compSize = {
                w: c.w,
                h: c.h
            }
        };
        var Yx = {
            TRANSFORM_EFFECT: "transformEFfect"
        };

        function va() {}
        va.prototype = {
            initTransform: function() {
                var h = new vn;
                this.finalTransform = {
                    mProp: this.data.ks ? t1.getTransformProperty(this, this.data.ks, this) : {
                        o: 0
                    },
                    _matMdf: !1,
                    _localMatMdf: !1,
                    _opMdf: !1,
                    mat: h,
                    localMat: h,
                    localOpacity: 1
                }, this.data.ao && (this.finalTransform.mProp.autoOriented = !0), this.data.ty
            },
            renderTransform: function() {
                if (this.finalTransform._opMdf = this.finalTransform.mProp.o._mdf || this._isFirstFrame, this.finalTransform._matMdf = this.finalTransform.mProp._mdf || this._isFirstFrame, this.hierarchy) {
                    var h, v = this.finalTransform.mat,
                        E = 0,
                        S = this.hierarchy.length;
                    if (!this.finalTransform._matMdf)
                        for (; E < S;) {
                            if (this.hierarchy[E].finalTransform.mProp._mdf) {
                                this.finalTransform._matMdf = !0;
                                break
                            }
                            E += 1
                        }
                    if (this.finalTransform._matMdf)
                        for (h = this.finalTransform.mProp.v.props, v.cloneFromProps(h), E = 0; E < S; E += 1) v.multiply(this.hierarchy[E].finalTransform.mProp.v)
                }
                this.finalTransform._matMdf && (this.finalTransform._localMatMdf = this.finalTransform._matMdf), this.finalTransform._opMdf && (this.finalTransform.localOpacity = this.finalTransform.mProp.o.v)
            },
            renderLocalTransform: function() {
                if (this.localTransforms) {
                    var h = 0,
                        v = this.localTransforms.length;
                    if (this.finalTransform._localMatMdf = this.finalTransform._matMdf, !this.finalTransform._localMatMdf || !this.finalTransform._opMdf)
                        for (; h < v;) this.localTransforms[h]._mdf && (this.finalTransform._localMatMdf = !0), this.localTransforms[h]._opMdf && !this.finalTransform._opMdf && (this.finalTransform.localOpacity = this.finalTransform.mProp.o.v, this.finalTransform._opMdf = !0), h += 1;
                    if (this.finalTransform._localMatMdf) {
                        var E = this.finalTransform.localMat;
                        for (this.localTransforms[0].matrix.clone(E), h = 1; h < v; h += 1) {
                            var S = this.localTransforms[h].matrix;
                            E.multiply(S)
                        }
                        E.multiply(this.finalTransform.mat)
                    }
                    if (this.finalTransform._opMdf) {
                        var _ = this.finalTransform.localOpacity;
                        for (h = 0; h < v; h += 1) _ *= this.localTransforms[h].opacity * .01;
                        this.finalTransform.localOpacity = _
                    }
                }
            },
            searchEffectTransforms: function() {
                if (this.renderableEffectsManager) {
                    var h = this.renderableEffectsManager.getEffects(Yx.TRANSFORM_EFFECT);
                    if (h.length) {
                        this.localTransforms = [], this.finalTransform.localMat = new vn;
                        var v = 0,
                            E = h.length;
                        for (v = 0; v < E; v += 1) this.localTransforms.push(h[v])
                    }
                }
            },
            globalToLocal: function(h) {
                var v = [];
                v.push(this.finalTransform);
                for (var E = !0, S = this.comp; E;) S.finalTransform ? (S.data.hasMask && v.splice(0, 0, S.finalTransform), S = S.comp) : E = !1;
                var _, k = v.length,
                    z;
                for (_ = 0; _ < k; _ += 1) z = v[_].mat.applyToPointArray(0, 0, 0), h = [h[0] - z[0], h[1] - z[1], 0];
                return h
            },
            mHelper: new vn
        };

        function xs(c, h, v) {
            this.data = c, this.element = h, this.globalData = v, this.storedData = [], this.masksProperties = this.data.masksProperties || [], this.maskElement = null;
            var E = this.globalData.defs,
                S, _ = this.masksProperties ? this.masksProperties.length : 0;
            this.viewData = g(_), this.solidPath = "";
            var k, z = this.masksProperties,
                H = 0,
                ne = [],
                oe, be, K = Y(),
                le, pe, fe, Ce, Ae = "clipPath",
                q = "clip-path";
            for (S = 0; S < _; S += 1)
                if ((z[S].mode !== "a" && z[S].mode !== "n" || z[S].inv || z[S].o.k !== 100 || z[S].o.x) && (Ae = "mask", q = "mask"), (z[S].mode === "s" || z[S].mode === "i") && H === 0 ? (le = Te("rect"), le.setAttribute("fill", "#ffffff"), le.setAttribute("width", this.element.comp.data.w || 0), le.setAttribute("height", this.element.comp.data.h || 0), ne.push(le)) : le = null, k = Te("path"), z[S].mode === "n") this.viewData[S] = {
                    op: Ge.getProp(this.element, z[S].o, 0, .01, this.element),
                    prop: yr.getShapeProp(this.element, z[S], 3),
                    elem: k,
                    lastPath: ""
                }, E.appendChild(k);
                else {
                    H += 1, k.setAttribute("fill", z[S].mode === "s" ? "#000000" : "#ffffff"), k.setAttribute("clip-rule", "nonzero");
                    var $;
                    if (z[S].x.k !== 0 ? (Ae = "mask", q = "mask", Ce = Ge.getProp(this.element, z[S].x, 0, null, this.element), $ = Y(), pe = Te("filter"), pe.setAttribute("id", $), fe = Te("feMorphology"), fe.setAttribute("operator", "erode"), fe.setAttribute("in", "SourceGraphic"), fe.setAttribute("radius", "0"), pe.appendChild(fe), E.appendChild(pe), k.setAttribute("stroke", z[S].mode === "s" ? "#000000" : "#ffffff")) : (fe = null, Ce = null), this.storedData[S] = {
                            elem: k,
                            x: Ce,
                            expan: fe,
                            lastPath: "",
                            lastOperator: "",
                            filterId: $,
                            lastRadius: 0
                        }, z[S].mode === "i") {
                        be = ne.length;
                        var G = Te("g");
                        for (oe = 0; oe < be; oe += 1) G.appendChild(ne[oe]);
                        var re = Te("mask");
                        re.setAttribute("mask-type", "alpha"), re.setAttribute("id", K + "_" + H), re.appendChild(k), E.appendChild(re), G.setAttribute("mask", "url(" + l() + "#" + K + "_" + H + ")"), ne.length = 0, ne.push(G)
                    } else ne.push(k);
                    z[S].inv && !this.solidPath && (this.solidPath = this.createLayerSolidPath()), this.viewData[S] = {
                        elem: k,
                        lastPath: "",
                        op: Ge.getProp(this.element, z[S].o, 0, .01, this.element),
                        prop: yr.getShapeProp(this.element, z[S], 3),
                        invRect: le
                    }, this.viewData[S].prop.k || this.drawPath(z[S], this.viewData[S].prop.v, this.viewData[S])
                }
            for (this.maskElement = Te(Ae), _ = ne.length, S = 0; S < _; S += 1) this.maskElement.appendChild(ne[S]);
            H > 0 && (this.maskElement.setAttribute("id", K), this.element.maskedElement.setAttribute(q, "url(" + l() + "#" + K + ")"), E.appendChild(this.maskElement)), this.viewData.length && this.element.addRenderableComponent(this)
        }
        xs.prototype.getMaskProperty = function(c) {
            return this.viewData[c].prop
        }, xs.prototype.renderFrame = function(c) {
            var h = this.element.finalTransform.mat,
                v, E = this.masksProperties.length;
            for (v = 0; v < E; v += 1)
                if ((this.viewData[v].prop._mdf || c) && this.drawPath(this.masksProperties[v], this.viewData[v].prop.v, this.viewData[v]), (this.viewData[v].op._mdf || c) && this.viewData[v].elem.setAttribute("fill-opacity", this.viewData[v].op.v), this.masksProperties[v].mode !== "n" && (this.viewData[v].invRect && (this.element.finalTransform.mProp._mdf || c) && this.viewData[v].invRect.setAttribute("transform", h.getInverseMatrix().to2dCSS()), this.storedData[v].x && (this.storedData[v].x._mdf || c))) {
                    var S = this.storedData[v].expan;
                    this.storedData[v].x.v < 0 ? (this.storedData[v].lastOperator !== "erode" && (this.storedData[v].lastOperator = "erode", this.storedData[v].elem.setAttribute("filter", "url(" + l() + "#" + this.storedData[v].filterId + ")")), S.setAttribute("radius", -this.storedData[v].x.v)) : (this.storedData[v].lastOperator !== "dilate" && (this.storedData[v].lastOperator = "dilate", this.storedData[v].elem.setAttribute("filter", null)), this.storedData[v].elem.setAttribute("stroke-width", this.storedData[v].x.v * 2))
                }
        }, xs.prototype.getMaskelement = function() {
            return this.maskElement
        }, xs.prototype.createLayerSolidPath = function() {
            var c = "M0,0 ";
            return c += " h" + this.globalData.compSize.w, c += " v" + this.globalData.compSize.h, c += " h-" + this.globalData.compSize.w, c += " v-" + this.globalData.compSize.h + " ", c
        }, xs.prototype.drawPath = function(c, h, v) {
            var E = " M" + h.v[0][0] + "," + h.v[0][1],
                S, _;
            for (_ = h._length, S = 1; S < _; S += 1) E += " C" + h.o[S - 1][0] + "," + h.o[S - 1][1] + " " + h.i[S][0] + "," + h.i[S][1] + " " + h.v[S][0] + "," + h.v[S][1];
            if (h.c && _ > 1 && (E += " C" + h.o[S - 1][0] + "," + h.o[S - 1][1] + " " + h.i[0][0] + "," + h.i[0][1] + " " + h.v[0][0] + "," + h.v[0][1]), v.lastPath !== E) {
                var k = "";
                v.elem && (h.c && (k = c.inv ? this.solidPath + E : E), v.elem.setAttribute("d", k)), v.lastPath = E
            }
        }, xs.prototype.destroy = function() {
            this.element = null, this.globalData = null, this.maskElement = null, this.data = null, this.masksProperties = null
        };
        var Ro = function() {
                var c = {};
                c.createFilter = h, c.createAlphaToLuminanceFilter = v;

                function h(E, S) {
                    var _ = Te("filter");
                    return _.setAttribute("id", E), S !== !0 && (_.setAttribute("filterUnits", "objectBoundingBox"), _.setAttribute("x", "0%"), _.setAttribute("y", "0%"), _.setAttribute("width", "100%"), _.setAttribute("height", "100%")), _
                }

                function v() {
                    var E = Te("feColorMatrix");
                    return E.setAttribute("type", "matrix"), E.setAttribute("color-interpolation-filters", "sRGB"), E.setAttribute("values", "0 0 0 1 0  0 0 0 1 0  0 0 0 1 0  0 0 0 1 1"), E
                }
                return c
            }(),
            L5 = function() {
                var c = {
                    maskType: !0,
                    svgLumaHidden: !0,
                    offscreenCanvas: typeof OffscreenCanvas < "u"
                };
                return (/MSIE 10/i.test(navigator.userAgent) || /MSIE 9/i.test(navigator.userAgent) || /rv:11.0/i.test(navigator.userAgent) || /Edge\/\d./i.test(navigator.userAgent)) && (c.maskType = !1), /firefox/i.test(navigator.userAgent) && (c.svgLumaHidden = !1), c
            }(),
            a1 = {},
            k5 = "filter_result_";

        function o1(c) {
            var h, v = "SourceGraphic",
                E = c.data.ef ? c.data.ef.length : 0,
                S = Y(),
                _ = Ro.createFilter(S, !0),
                k = 0;
            this.filters = [];
            var z;
            for (h = 0; h < E; h += 1) {
                z = null;
                var H = c.data.ef[h].ty;
                if (a1[H]) {
                    var ne = a1[H].effect;
                    z = new ne(_, c.effectsManager.effectElements[h], c, k5 + k, v), v = k5 + k, a1[H].countsAsEffect && (k += 1)
                }
                z && this.filters.push(z)
            }
            k && (c.globalData.defs.appendChild(_), c.layerElement.setAttribute("filter", "url(" + l() + "#" + S + ")")), this.filters.length && c.addRenderableComponent(this)
        }
        o1.prototype.renderFrame = function(c) {
            var h, v = this.filters.length;
            for (h = 0; h < v; h += 1) this.filters[h].renderFrame(c)
        }, o1.prototype.getEffects = function(c) {
            var h, v = this.filters.length,
                E = [];
            for (h = 0; h < v; h += 1) this.filters[h].type === c && E.push(this.filters[h]);
            return E
        };

        function No() {}
        No.prototype = {
            initRendererElement: function() {
                this.layerElement = Te("g")
            },
            createContainerElements: function() {
                this.matteElement = Te("g"), this.transformedElement = this.layerElement, this.maskedElement = this.layerElement, this._sizeChanged = !1;
                var h = null;
                if (this.data.td) {
                    this.matteMasks = {};
                    var v = Te("g");
                    v.setAttribute("id", this.layerId), v.appendChild(this.layerElement), h = v, this.globalData.defs.appendChild(v)
                } else this.data.tt ? (this.matteElement.appendChild(this.layerElement), h = this.matteElement, this.baseElement = this.matteElement) : this.baseElement = this.layerElement;
                if (this.data.ln && this.layerElement.setAttribute("id", this.data.ln), this.data.cl && this.layerElement.setAttribute("class", this.data.cl), this.data.ty === 0 && !this.data.hd) {
                    var E = Te("clipPath"),
                        S = Te("path");
                    S.setAttribute("d", "M0,0 L" + this.data.w + ",0 L" + this.data.w + "," + this.data.h + " L0," + this.data.h + "z");
                    var _ = Y();
                    if (E.setAttribute("id", _), E.appendChild(S), this.globalData.defs.appendChild(E), this.checkMasks()) {
                        var k = Te("g");
                        k.setAttribute("clip-path", "url(" + l() + "#" + _ + ")"), k.appendChild(this.layerElement), this.transformedElement = k, h ? h.appendChild(this.transformedElement) : this.baseElement = this.transformedElement
                    } else this.layerElement.setAttribute("clip-path", "url(" + l() + "#" + _ + ")")
                }
                this.data.bm !== 0 && this.setBlendMode()
            },
            renderElement: function() {
                this.finalTransform._localMatMdf && this.transformedElement.setAttribute("transform", this.finalTransform.localMat.to2dCSS()), this.finalTransform._opMdf && this.transformedElement.setAttribute("opacity", this.finalTransform.localOpacity)
            },
            destroyBaseElement: function() {
                this.layerElement = null, this.matteElement = null, this.maskManager.destroy()
            },
            getBaseElement: function() {
                return this.data.hd ? null : this.baseElement
            },
            createRenderableComponents: function() {
                this.maskManager = new xs(this.data, this, this.globalData), this.renderableEffectsManager = new o1(this), this.searchEffectTransforms()
            },
            getMatte: function(h) {
                if (this.matteMasks || (this.matteMasks = {}), !this.matteMasks[h]) {
                    var v = this.layerId + "_" + h,
                        E, S, _, k;
                    if (h === 1 || h === 3) {
                        var z = Te("mask");
                        z.setAttribute("id", v), z.setAttribute("mask-type", h === 3 ? "luminance" : "alpha"), _ = Te("use"), _.setAttributeNS("http://www.w3.org/1999/xlink", "href", "#" + this.layerId), z.appendChild(_), this.globalData.defs.appendChild(z), !L5.maskType && h === 1 && (z.setAttribute("mask-type", "luminance"), E = Y(), S = Ro.createFilter(E), this.globalData.defs.appendChild(S), S.appendChild(Ro.createAlphaToLuminanceFilter()), k = Te("g"), k.appendChild(_), z.appendChild(k), k.setAttribute("filter", "url(" + l() + "#" + E + ")"))
                    } else if (h === 2) {
                        var H = Te("mask");
                        H.setAttribute("id", v), H.setAttribute("mask-type", "alpha");
                        var ne = Te("g");
                        H.appendChild(ne), E = Y(), S = Ro.createFilter(E);
                        var oe = Te("feComponentTransfer");
                        oe.setAttribute("in", "SourceGraphic"), S.appendChild(oe);
                        var be = Te("feFuncA");
                        be.setAttribute("type", "table"), be.setAttribute("tableValues", "1.0 0.0"), oe.appendChild(be), this.globalData.defs.appendChild(S);
                        var K = Te("rect");
                        K.setAttribute("width", this.comp.data.w), K.setAttribute("height", this.comp.data.h), K.setAttribute("x", "0"), K.setAttribute("y", "0"), K.setAttribute("fill", "#ffffff"), K.setAttribute("opacity", "0"), ne.setAttribute("filter", "url(" + l() + "#" + E + ")"), ne.appendChild(K), _ = Te("use"), _.setAttributeNS("http://www.w3.org/1999/xlink", "href", "#" + this.layerId), ne.appendChild(_), L5.maskType || (H.setAttribute("mask-type", "luminance"), S.appendChild(Ro.createAlphaToLuminanceFilter()), k = Te("g"), ne.appendChild(K), k.appendChild(this.layerElement), ne.appendChild(k)), this.globalData.defs.appendChild(H)
                    }
                    this.matteMasks[h] = v
                }
                return this.matteMasks[h]
            },
            setMatte: function(h) {
                this.matteElement && this.matteElement.setAttribute("mask", "url(" + l() + "#" + h + ")")
            }
        };

        function ma() {}
        ma.prototype = {
            initHierarchy: function() {
                this.hierarchy = [], this._isParent = !1, this.checkParenting()
            },
            setHierarchy: function(h) {
                this.hierarchy = h
            },
            setAsParent: function() {
                this._isParent = !0
            },
            checkParenting: function() {
                this.data.parent !== void 0 && this.comp.buildElementParenting(this, this.data.parent, [])
            }
        };

        function $o() {}(function() {
            var c = {
                initElement: function(v, E, S) {
                    this.initFrame(), this.initBaseData(v, E, S), this.initTransform(v, E, S), this.initHierarchy(), this.initRenderable(), this.initRendererElement(), this.createContainerElements(), this.createRenderableComponents(), this.createContent(), this.hide()
                },
                hide: function() {
                    if (!this.hidden && (!this.isInRange || this.isTransparent)) {
                        var v = this.baseElement || this.layerElement;
                        v.style.display = "none", this.hidden = !0
                    }
                },
                show: function() {
                    if (this.isInRange && !this.isTransparent) {
                        if (!this.data.hd) {
                            var v = this.baseElement || this.layerElement;
                            v.style.display = "block"
                        }
                        this.hidden = !1, this._isFirstFrame = !0
                    }
                },
                renderFrame: function() {
                    this.data.hd || this.hidden || (this.renderTransform(), this.renderRenderable(), this.renderLocalTransform(), this.renderElement(), this.renderInnerContent(), this._isFirstFrame && (this._isFirstFrame = !1))
                },
                renderInnerContent: function() {},
                prepareFrame: function(v) {
                    this._mdf = !1, this.prepareRenderableFrame(v), this.prepareProperties(v, this.isInRange), this.checkTransparency()
                },
                destroy: function() {
                    this.innerElem = null, this.destroyBaseElement()
                }
            };
            f([L0, d(c)], $o)
        })();

        function Ko(c, h, v) {
            this.assetData = h.getAssetData(c.refId), this.assetData && this.assetData.sid && (this.assetData = h.slotManager.getProp(this.assetData)), this.initElement(c, h, v), this.sourceRect = {
                top: 0,
                left: 0,
                width: this.assetData.w,
                height: this.assetData.h
            }
        }
        f([vi, va, No, ma, mi, $o], Ko), Ko.prototype.createContent = function() {
            var c = this.globalData.getAssetsPath(this.assetData);
            this.innerElem = Te("image"), this.innerElem.setAttribute("width", this.assetData.w + "px"), this.innerElem.setAttribute("height", this.assetData.h + "px"), this.innerElem.setAttribute("preserveAspectRatio", this.assetData.pr || this.globalData.renderConfig.imagePreserveAspectRatio), this.innerElem.setAttributeNS("http://www.w3.org/1999/xlink", "href", c), this.layerElement.appendChild(this.innerElem)
        }, Ko.prototype.sourceRectAtTime = function() {
            return this.sourceRect
        };

        function Xx(c, h) {
            this.elem = c, this.pos = h
        }

        function H5() {}
        H5.prototype = {
            addShapeToModifiers: function(h) {
                var v, E = this.shapeModifiers.length;
                for (v = 0; v < E; v += 1) this.shapeModifiers[v].addShape(h)
            },
            isShapeInAnimatedModifiers: function(h) {
                for (var v = 0, E = this.shapeModifiers.length; v < E;)
                    if (this.shapeModifiers[v].isAnimatedWithShape(h)) return !0;
                return !1
            },
            renderModifiers: function() {
                if (this.shapeModifiers.length) {
                    var h, v = this.shapes.length;
                    for (h = 0; h < v; h += 1) this.shapes[h].sh.reset();
                    v = this.shapeModifiers.length;
                    var E;
                    for (h = v - 1; h >= 0 && (E = this.shapeModifiers[h].processShapes(this._isFirstFrame), !E); h -= 1);
                }
            },
            searchProcessedElement: function(h) {
                for (var v = this.processedElements, E = 0, S = v.length; E < S;) {
                    if (v[E].elem === h) return v[E].pos;
                    E += 1
                }
                return 0
            },
            addProcessedElement: function(h, v) {
                for (var E = this.processedElements, S = E.length; S;)
                    if (S -= 1, E[S].elem === h) {
                        E[S].pos = v;
                        return
                    }
                E.push(new Xx(h, v))
            },
            prepareFrame: function(h) {
                this.prepareRenderableFrame(h), this.prepareProperties(h, this.isInRange)
            }
        };
        var M5 = {
                1: "butt",
                2: "round",
                3: "square"
            },
            R5 = {
                1: "miter",
                2: "round",
                3: "bevel"
            };

        function N5(c, h, v) {
            this.caches = [], this.styles = [], this.transformers = c, this.lStr = "", this.sh = v, this.lvl = h, this._isAnimated = !!v.k;
            for (var E = 0, S = c.length; E < S;) {
                if (c[E].mProps.dynamicProperties.length) {
                    this._isAnimated = !0;
                    break
                }
                E += 1
            }
        }
        N5.prototype.setAsAnimated = function() {
            this._isAnimated = !0
        };

        function $5(c, h) {
            this.data = c, this.type = c.ty, this.d = "", this.lvl = h, this._mdf = !1, this.closed = c.hd === !0, this.pElem = Te("path"), this.msElem = null
        }
        $5.prototype.reset = function() {
            this.d = "", this._mdf = !1
        };

        function k0(c, h, v, E) {
            this.elem = c, this.frameId = -1, this.dataProps = g(h.length), this.renderer = v, this.k = !1, this.dashStr = "", this.dashArray = m("float32", h.length ? h.length - 1 : 0), this.dashoffset = m("float32", 1), this.initDynamicPropertyContainer(E);
            var S, _ = h.length || 0,
                k;
            for (S = 0; S < _; S += 1) k = Ge.getProp(c, h[S].v, 0, 0, this), this.k = k.k || this.k, this.dataProps[S] = {
                n: h[S].n,
                p: k
            };
            this.k || this.getValue(!0), this._isAnimated = this.k
        }
        k0.prototype.getValue = function(c) {
            if (!(this.elem.globalData.frameId === this.frameId && !c) && (this.frameId = this.elem.globalData.frameId, this.iterateDynamicProperties(), this._mdf = this._mdf || c, this._mdf)) {
                var h = 0,
                    v = this.dataProps.length;
                for (this.renderer === "svg" && (this.dashStr = ""), h = 0; h < v; h += 1) this.dataProps[h].n !== "o" ? this.renderer === "svg" ? this.dashStr += " " + this.dataProps[h].p.v : this.dashArray[h] = this.dataProps[h].p.v : this.dashoffset[0] = this.dataProps[h].p.v
            }
        }, f([gn], k0);

        function K5(c, h, v) {
            this.initDynamicPropertyContainer(c), this.getValue = this.iterateDynamicProperties, this.o = Ge.getProp(c, h.o, 0, .01, this), this.w = Ge.getProp(c, h.w, 0, null, this), this.d = new k0(c, h.d || {}, "svg", this), this.c = Ge.getProp(c, h.c, 1, 255, this), this.style = v, this._isAnimated = !!this._isAnimated
        }
        f([gn], K5);

        function V5(c, h, v) {
            this.initDynamicPropertyContainer(c), this.getValue = this.iterateDynamicProperties, this.o = Ge.getProp(c, h.o, 0, .01, this), this.c = Ge.getProp(c, h.c, 1, 255, this), this.style = v
        }
        f([gn], V5);

        function G5(c, h, v) {
            this.initDynamicPropertyContainer(c), this.getValue = this.iterateDynamicProperties, this.style = v
        }
        f([gn], G5);

        function Vo(c, h, v) {
            this.data = h, this.c = m("uint8c", h.p * 4);
            var E = h.k.k[0].s ? h.k.k[0].s.length - h.p * 4 : h.k.k.length - h.p * 4;
            this.o = m("float32", E), this._cmdf = !1, this._omdf = !1, this._collapsable = this.checkCollapsable(), this._hasOpacity = E, this.initDynamicPropertyContainer(v), this.prop = Ge.getProp(c, h.k, 1, null, this), this.k = this.prop.k, this.getValue(!0)
        }
        Vo.prototype.comparePoints = function(c, h) {
            for (var v = 0, E = this.o.length / 2, S; v < E;) {
                if (S = Math.abs(c[v * 4] - c[h * 4 + v * 2]), S > .01) return !1;
                v += 1
            }
            return !0
        }, Vo.prototype.checkCollapsable = function() {
            if (this.o.length / 2 !== this.c.length / 4) return !1;
            if (this.data.k.k[0].s)
                for (var c = 0, h = this.data.k.k.length; c < h;) {
                    if (!this.comparePoints(this.data.k.k[c].s, this.data.p)) return !1;
                    c += 1
                } else if (!this.comparePoints(this.data.k.k, this.data.p)) return !1;
            return !0
        }, Vo.prototype.getValue = function(c) {
            if (this.prop.getValue(), this._mdf = !1, this._cmdf = !1, this._omdf = !1, this.prop._mdf || c) {
                var h, v = this.data.p * 4,
                    E, S;
                for (h = 0; h < v; h += 1) E = h % 4 === 0 ? 100 : 255, S = Math.round(this.prop.v[h] * E), this.c[h] !== S && (this.c[h] = S, this._cmdf = !c);
                if (this.o.length)
                    for (v = this.prop.v.length, h = this.data.p * 4; h < v; h += 1) E = h % 2 === 0 ? 100 : 1, S = h % 2 === 0 ? Math.round(this.prop.v[h] * 100) : this.prop.v[h], this.o[h - this.data.p * 4] !== S && (this.o[h - this.data.p * 4] = S, this._omdf = !c);
                this._mdf = !c
            }
        }, f([gn], Vo);

        function Ba(c, h, v) {
            this.initDynamicPropertyContainer(c), this.getValue = this.iterateDynamicProperties, this.initGradientData(c, h, v)
        }
        Ba.prototype.initGradientData = function(c, h, v) {
            this.o = Ge.getProp(c, h.o, 0, .01, this), this.s = Ge.getProp(c, h.s, 1, null, this), this.e = Ge.getProp(c, h.e, 1, null, this), this.h = Ge.getProp(c, h.h || {
                k: 0
            }, 0, .01, this), this.a = Ge.getProp(c, h.a || {
                k: 0
            }, 0, D, this), this.g = new Vo(c, h.g, this), this.style = v, this.stops = [], this.setGradientData(v.pElem, h), this.setGradientOpacity(h, v), this._isAnimated = !!this._isAnimated
        }, Ba.prototype.setGradientData = function(c, h) {
            var v = Y(),
                E = Te(h.t === 1 ? "linearGradient" : "radialGradient");
            E.setAttribute("id", v), E.setAttribute("spreadMethod", "pad"), E.setAttribute("gradientUnits", "userSpaceOnUse");
            var S = [],
                _, k, z;
            for (z = h.g.p * 4, k = 0; k < z; k += 4) _ = Te("stop"), E.appendChild(_), S.push(_);
            c.setAttribute(h.ty === "gf" ? "fill" : "stroke", "url(" + l() + "#" + v + ")"), this.gf = E, this.cst = S
        }, Ba.prototype.setGradientOpacity = function(c, h) {
            if (this.g._hasOpacity && !this.g._collapsable) {
                var v, E, S, _ = Te("mask"),
                    k = Te("path");
                _.appendChild(k);
                var z = Y(),
                    H = Y();
                _.setAttribute("id", H);
                var ne = Te(c.t === 1 ? "linearGradient" : "radialGradient");
                ne.setAttribute("id", z), ne.setAttribute("spreadMethod", "pad"), ne.setAttribute("gradientUnits", "userSpaceOnUse"), S = c.g.k.k[0].s ? c.g.k.k[0].s.length : c.g.k.k.length;
                var oe = this.stops;
                for (E = c.g.p * 4; E < S; E += 2) v = Te("stop"), v.setAttribute("stop-color", "rgb(255,255,255)"), ne.appendChild(v), oe.push(v);
                k.setAttribute(c.ty === "gf" ? "fill" : "stroke", "url(" + l() + "#" + z + ")"), c.ty === "gs" && (k.setAttribute("stroke-linecap", M5[c.lc || 2]), k.setAttribute("stroke-linejoin", R5[c.lj || 2]), c.lj === 1 && k.setAttribute("stroke-miterlimit", c.ml)), this.of = ne, this.ms = _, this.ost = oe, this.maskId = H, h.msElem = k
            }
        }, f([gn], Ba);

        function z5(c, h, v) {
            this.initDynamicPropertyContainer(c), this.getValue = this.iterateDynamicProperties, this.w = Ge.getProp(c, h.w, 0, null, this), this.d = new k0(c, h.d || {}, "svg", this), this.initGradientData(c, h, v), this._isAnimated = !!this._isAnimated
        }
        f([Ba, gn], z5);

        function Jx() {
            this.it = [], this.prevViewData = [], this.gr = Te("g")
        }

        function qx(c, h, v) {
            this.transform = {
                mProps: c,
                op: h,
                container: v
            }, this.elements = [], this._isAnimated = this.transform.mProps.dynamicProperties.length || this.transform.op.effectsSequence.length
        }
        var W5 = function(h, v, E, S) {
                if (v === 0) return "";
                var _ = h.o,
                    k = h.i,
                    z = h.v,
                    H, ne = " M" + S.applyToPointStringified(z[0][0], z[0][1]);
                for (H = 1; H < v; H += 1) ne += " C" + S.applyToPointStringified(_[H - 1][0], _[H - 1][1]) + " " + S.applyToPointStringified(k[H][0], k[H][1]) + " " + S.applyToPointStringified(z[H][0], z[H][1]);
                return E && v && (ne += " C" + S.applyToPointStringified(_[H - 1][0], _[H - 1][1]) + " " + S.applyToPointStringified(k[0][0], k[0][1]) + " " + S.applyToPointStringified(z[0][0], z[0][1]), ne += "z"), ne
            },
            Zx = function() {
                var c = new vn,
                    h = new vn,
                    v = {
                        createRenderFunction: E
                    };

                function E(be) {
                    switch (be.ty) {
                        case "fl":
                            return z;
                        case "gf":
                            return ne;
                        case "gs":
                            return H;
                        case "st":
                            return oe;
                        case "sh":
                        case "el":
                        case "rc":
                        case "sr":
                            return k;
                        case "tr":
                            return S;
                        case "no":
                            return _;
                        default:
                            return null
                    }
                }

                function S(be, K, le) {
                    (le || K.transform.op._mdf) && K.transform.container.setAttribute("opacity", K.transform.op.v), (le || K.transform.mProps._mdf) && K.transform.container.setAttribute("transform", K.transform.mProps.v.to2dCSS())
                }

                function _() {}

                function k(be, K, le) {
                    var pe, fe, Ce, Ae, q, $, G = K.styles.length,
                        re = K.lvl,
                        ge, Ee, Qe, Re;
                    for ($ = 0; $ < G; $ += 1) {
                        if (Ae = K.sh._mdf || le, K.styles[$].lvl < re) {
                            for (Ee = h.reset(), Qe = re - K.styles[$].lvl, Re = K.transformers.length - 1; !Ae && Qe > 0;) Ae = K.transformers[Re].mProps._mdf || Ae, Qe -= 1, Re -= 1;
                            if (Ae)
                                for (Qe = re - K.styles[$].lvl, Re = K.transformers.length - 1; Qe > 0;) Ee.multiply(K.transformers[Re].mProps.v), Qe -= 1, Re -= 1
                        } else Ee = c;
                        if (ge = K.sh.paths, fe = ge._length, Ae) {
                            for (Ce = "", pe = 0; pe < fe; pe += 1) q = ge.shapes[pe], q && q._length && (Ce += W5(q, q._length, q.c, Ee));
                            K.caches[$] = Ce
                        } else Ce = K.caches[$];
                        K.styles[$].d += be.hd === !0 ? "" : Ce, K.styles[$]._mdf = Ae || K.styles[$]._mdf
                    }
                }

                function z(be, K, le) {
                    var pe = K.style;
                    (K.c._mdf || le) && pe.pElem.setAttribute("fill", "rgb(" + F(K.c.v[0]) + "," + F(K.c.v[1]) + "," + F(K.c.v[2]) + ")"), (K.o._mdf || le) && pe.pElem.setAttribute("fill-opacity", K.o.v)
                }

                function H(be, K, le) {
                    ne(be, K, le), oe(be, K, le)
                }

                function ne(be, K, le) {
                    var pe = K.gf,
                        fe = K.g._hasOpacity,
                        Ce = K.s.v,
                        Ae = K.e.v;
                    if (K.o._mdf || le) {
                        var q = be.ty === "gf" ? "fill-opacity" : "stroke-opacity";
                        K.style.pElem.setAttribute(q, K.o.v)
                    }
                    if (K.s._mdf || le) {
                        var $ = be.t === 1 ? "x1" : "cx",
                            G = $ === "x1" ? "y1" : "cy";
                        pe.setAttribute($, Ce[0]), pe.setAttribute(G, Ce[1]), fe && !K.g._collapsable && (K.of.setAttribute($, Ce[0]), K.of.setAttribute(G, Ce[1]))
                    }
                    var re, ge, Ee, Qe;
                    if (K.g._cmdf || le) {
                        re = K.cst;
                        var Re = K.g.c;
                        for (Ee = re.length, ge = 0; ge < Ee; ge += 1) Qe = re[ge], Qe.setAttribute("offset", Re[ge * 4] + "%"), Qe.setAttribute("stop-color", "rgb(" + Re[ge * 4 + 1] + "," + Re[ge * 4 + 2] + "," + Re[ge * 4 + 3] + ")")
                    }
                    if (fe && (K.g._omdf || le)) {
                        var lt = K.g.o;
                        for (K.g._collapsable ? re = K.cst : re = K.ost, Ee = re.length, ge = 0; ge < Ee; ge += 1) Qe = re[ge], K.g._collapsable || Qe.setAttribute("offset", lt[ge * 2] + "%"), Qe.setAttribute("stop-opacity", lt[ge * 2 + 1])
                    }
                    if (be.t === 1)(K.e._mdf || le) && (pe.setAttribute("x2", Ae[0]), pe.setAttribute("y2", Ae[1]), fe && !K.g._collapsable && (K.of.setAttribute("x2", Ae[0]), K.of.setAttribute("y2", Ae[1])));
                    else {
                        var it;
                        if ((K.s._mdf || K.e._mdf || le) && (it = Math.sqrt(Math.pow(Ce[0] - Ae[0], 2) + Math.pow(Ce[1] - Ae[1], 2)), pe.setAttribute("r", it), fe && !K.g._collapsable && K.of.setAttribute("r", it)), K.e._mdf || K.h._mdf || K.a._mdf || le) {
                            it || (it = Math.sqrt(Math.pow(Ce[0] - Ae[0], 2) + Math.pow(Ce[1] - Ae[1], 2)));
                            var Ve = Math.atan2(Ae[1] - Ce[1], Ae[0] - Ce[0]),
                                ct = K.h.v;
                            ct >= 1 ? ct = .99 : ct <= -1 && (ct = -.99);
                            var rt = it * ct,
                                Me = Math.cos(Ve + K.a.v) * rt + Ce[0],
                                X = Math.sin(Ve + K.a.v) * rt + Ce[1];
                            pe.setAttribute("fx", Me), pe.setAttribute("fy", X), fe && !K.g._collapsable && (K.of.setAttribute("fx", Me), K.of.setAttribute("fy", X))
                        }
                    }
                }

                function oe(be, K, le) {
                    var pe = K.style,
                        fe = K.d;
                    fe && (fe._mdf || le) && fe.dashStr && (pe.pElem.setAttribute("stroke-dasharray", fe.dashStr), pe.pElem.setAttribute("stroke-dashoffset", fe.dashoffset[0])), K.c && (K.c._mdf || le) && pe.pElem.setAttribute("stroke", "rgb(" + F(K.c.v[0]) + "," + F(K.c.v[1]) + "," + F(K.c.v[2]) + ")"), (K.o._mdf || le) && pe.pElem.setAttribute("stroke-opacity", K.o.v), (K.w._mdf || le) && (pe.pElem.setAttribute("stroke-width", K.w.v), pe.msElem && pe.msElem.setAttribute("stroke-width", K.w.v))
                }
                return v
            }();

        function ln(c, h, v) {
            this.shapes = [], this.shapesData = c.shapes, this.stylesList = [], this.shapeModifiers = [], this.itemsData = [], this.processedElements = [], this.animatedContents = [], this.initElement(c, h, v), this.prevViewData = []
        }
        f([vi, va, No, H5, ma, mi, $o], ln), ln.prototype.initSecondaryElement = function() {}, ln.prototype.identityMatrix = new vn, ln.prototype.buildExpressionInterface = function() {}, ln.prototype.createContent = function() {
            this.searchShapes(this.shapesData, this.itemsData, this.prevViewData, this.layerElement, 0, [], !0), this.filterUniqueShapes()
        }, ln.prototype.filterUniqueShapes = function() {
            var c, h = this.shapes.length,
                v, E, S = this.stylesList.length,
                _, k = [],
                z = !1;
            for (E = 0; E < S; E += 1) {
                for (_ = this.stylesList[E], z = !1, k.length = 0, c = 0; c < h; c += 1) v = this.shapes[c], v.styles.indexOf(_) !== -1 && (k.push(v), z = v._isAnimated || z);
                k.length > 1 && z && this.setShapesAsAnimated(k)
            }
        }, ln.prototype.setShapesAsAnimated = function(c) {
            var h, v = c.length;
            for (h = 0; h < v; h += 1) c[h].setAsAnimated()
        }, ln.prototype.createStyleElement = function(c, h) {
            var v, E = new $5(c, h),
                S = E.pElem;
            if (c.ty === "st") v = new K5(this, c, E);
            else if (c.ty === "fl") v = new V5(this, c, E);
            else if (c.ty === "gf" || c.ty === "gs") {
                var _ = c.ty === "gf" ? Ba : z5;
                v = new _(this, c, E), this.globalData.defs.appendChild(v.gf), v.maskId && (this.globalData.defs.appendChild(v.ms), this.globalData.defs.appendChild(v.of), S.setAttribute("mask", "url(" + l() + "#" + v.maskId + ")"))
            } else c.ty === "no" && (v = new G5(this, c, E));
            return (c.ty === "st" || c.ty === "gs") && (S.setAttribute("stroke-linecap", M5[c.lc || 2]), S.setAttribute("stroke-linejoin", R5[c.lj || 2]), S.setAttribute("fill-opacity", "0"), c.lj === 1 && S.setAttribute("stroke-miterlimit", c.ml)), c.r === 2 && S.setAttribute("fill-rule", "evenodd"), c.ln && S.setAttribute("id", c.ln), c.cl && S.setAttribute("class", c.cl), c.bm && (S.style["mix-blend-mode"] = s1(c.bm)), this.stylesList.push(E), this.addToAnimatedContents(c, v), v
        }, ln.prototype.createGroupElement = function(c) {
            var h = new Jx;
            return c.ln && h.gr.setAttribute("id", c.ln), c.cl && h.gr.setAttribute("class", c.cl), c.bm && (h.gr.style["mix-blend-mode"] = s1(c.bm)), h
        }, ln.prototype.createTransformElement = function(c, h) {
            var v = t1.getTransformProperty(this, c, this),
                E = new qx(v, v.o, h);
            return this.addToAnimatedContents(c, E), E
        }, ln.prototype.createShapeElement = function(c, h, v) {
            var E = 4;
            c.ty === "rc" ? E = 5 : c.ty === "el" ? E = 6 : c.ty === "sr" && (E = 7);
            var S = yr.getShapeProp(this, c, E, this),
                _ = new N5(h, v, S);
            return this.shapes.push(_), this.addShapeToModifiers(_), this.addToAnimatedContents(c, _), _
        }, ln.prototype.addToAnimatedContents = function(c, h) {
            for (var v = 0, E = this.animatedContents.length; v < E;) {
                if (this.animatedContents[v].element === h) return;
                v += 1
            }
            this.animatedContents.push({
                fn: Zx.createRenderFunction(c),
                element: h,
                data: c
            })
        }, ln.prototype.setElementStyles = function(c) {
            var h = c.styles,
                v, E = this.stylesList.length;
            for (v = 0; v < E; v += 1) this.stylesList[v].closed || h.push(this.stylesList[v])
        }, ln.prototype.reloadShapes = function() {
            this._isFirstFrame = !0;
            var c, h = this.itemsData.length;
            for (c = 0; c < h; c += 1) this.prevViewData[c] = this.itemsData[c];
            for (this.searchShapes(this.shapesData, this.itemsData, this.prevViewData, this.layerElement, 0, [], !0), this.filterUniqueShapes(), h = this.dynamicProperties.length, c = 0; c < h; c += 1) this.dynamicProperties[c].getValue();
            this.renderModifiers()
        }, ln.prototype.searchShapes = function(c, h, v, E, S, _, k) {
            var z = [].concat(_),
                H, ne = c.length - 1,
                oe, be, K = [],
                le = [],
                pe, fe, Ce;
            for (H = ne; H >= 0; H -= 1) {
                if (Ce = this.searchProcessedElement(c[H]), Ce ? h[H] = v[Ce - 1] : c[H]._render = k, c[H].ty === "fl" || c[H].ty === "st" || c[H].ty === "gf" || c[H].ty === "gs" || c[H].ty === "no") Ce ? h[H].style.closed = !1 : h[H] = this.createStyleElement(c[H], S), c[H]._render && h[H].style.pElem.parentNode !== E && E.appendChild(h[H].style.pElem), K.push(h[H].style);
                else if (c[H].ty === "gr") {
                    if (!Ce) h[H] = this.createGroupElement(c[H]);
                    else
                        for (be = h[H].it.length, oe = 0; oe < be; oe += 1) h[H].prevViewData[oe] = h[H].it[oe];
                    this.searchShapes(c[H].it, h[H].it, h[H].prevViewData, h[H].gr, S + 1, z, k), c[H]._render && h[H].gr.parentNode !== E && E.appendChild(h[H].gr)
                } else c[H].ty === "tr" ? (Ce || (h[H] = this.createTransformElement(c[H], E)), pe = h[H].transform, z.push(pe)) : c[H].ty === "sh" || c[H].ty === "rc" || c[H].ty === "el" || c[H].ty === "sr" ? (Ce || (h[H] = this.createShapeElement(c[H], z, S)), this.setElementStyles(h[H])) : c[H].ty === "tm" || c[H].ty === "rd" || c[H].ty === "ms" || c[H].ty === "pb" || c[H].ty === "zz" || c[H].ty === "op" ? (Ce ? (fe = h[H], fe.closed = !1) : (fe = pi.getModifier(c[H].ty), fe.init(this, c[H]), h[H] = fe, this.shapeModifiers.push(fe)), le.push(fe)) : c[H].ty === "rp" && (Ce ? (fe = h[H], fe.closed = !0) : (fe = pi.getModifier(c[H].ty), h[H] = fe, fe.init(this, c, H, h), this.shapeModifiers.push(fe), k = !1), le.push(fe));
                this.addProcessedElement(c[H], H + 1)
            }
            for (ne = K.length, H = 0; H < ne; H += 1) K[H].closed = !0;
            for (ne = le.length, H = 0; H < ne; H += 1) le[H].closed = !0
        }, ln.prototype.renderInnerContent = function() {
            this.renderModifiers();
            var c, h = this.stylesList.length;
            for (c = 0; c < h; c += 1) this.stylesList[c].reset();
            for (this.renderShape(), c = 0; c < h; c += 1)(this.stylesList[c]._mdf || this._isFirstFrame) && (this.stylesList[c].msElem && (this.stylesList[c].msElem.setAttribute("d", this.stylesList[c].d), this.stylesList[c].d = "M0 0" + this.stylesList[c].d), this.stylesList[c].pElem.setAttribute("d", this.stylesList[c].d || "M0 0"))
        }, ln.prototype.renderShape = function() {
            var c, h = this.animatedContents.length,
                v;
            for (c = 0; c < h; c += 1) v = this.animatedContents[c], (this._isFirstFrame || v.element._isAnimated) && v.data !== !0 && v.fn(v.data, v.element, this._isFirstFrame)
        }, ln.prototype.destroy = function() {
            this.destroyBaseElement(), this.shapesData = null, this.itemsData = null
        };

        function l1(c, h, v, E, S, _) {
            this.o = c, this.sw = h, this.sc = v, this.fc = E, this.m = S, this.p = _, this._mdf = {
                o: !0,
                sw: !!h,
                sc: !!v,
                fc: !!E,
                m: !0,
                p: !0
            }
        }
        l1.prototype.update = function(c, h, v, E, S, _) {
            this._mdf.o = !1, this._mdf.sw = !1, this._mdf.sc = !1, this._mdf.fc = !1, this._mdf.m = !1, this._mdf.p = !1;
            var k = !1;
            return this.o !== c && (this.o = c, this._mdf.o = !0, k = !0), this.sw !== h && (this.sw = h, this._mdf.sw = !0, k = !0), this.sc !== v && (this.sc = v, this._mdf.sc = !0, k = !0), this.fc !== E && (this.fc = E, this._mdf.fc = !0, k = !0), this.m !== S && (this.m = S, this._mdf.m = !0, k = !0), _.length && (this.p[0] !== _[0] || this.p[1] !== _[1] || this.p[4] !== _[4] || this.p[5] !== _[5] || this.p[12] !== _[12] || this.p[13] !== _[13]) && (this.p = _, this._mdf.p = !0, k = !0), k
        };

        function qn(c, h) {
            this._frameId = i, this.pv = "", this.v = "", this.kf = !1, this._isFirstFrame = !0, this._mdf = !1, h.d && h.d.sid && (h.d = c.globalData.slotManager.getProp(h.d)), this.data = h, this.elem = c, this.comp = this.elem.comp, this.keysIndex = 0, this.canResize = !1, this.minimumFontSize = 1, this.effectsSequence = [], this.currentData = {
                ascent: 0,
                boxWidth: this.defaultBoxWidth,
                f: "",
                fStyle: "",
                fWeight: "",
                fc: "",
                j: "",
                justifyOffset: "",
                l: [],
                lh: 0,
                lineWidths: [],
                ls: "",
                of: "",
                s: "",
                sc: "",
                sw: 0,
                t: 0,
                tr: 0,
                sz: 0,
                ps: null,
                fillColorAnim: !1,
                strokeColorAnim: !1,
                strokeWidthAnim: !1,
                yOffset: 0,
                finalSize: 0,
                finalText: [],
                finalLineHeight: 0,
                __complete: !1
            }, this.copyData(this.currentData, this.data.d.k[0].s), this.searchProperty() || this.completeTextData(this.currentData)
        }
        qn.prototype.defaultBoxWidth = [0, 0], qn.prototype.copyData = function(c, h) {
            for (var v in h) Object.prototype.hasOwnProperty.call(h, v) && (c[v] = h[v]);
            return c
        }, qn.prototype.setCurrentData = function(c) {
            c.__complete || this.completeTextData(c), this.currentData = c, this.currentData.boxWidth = this.currentData.boxWidth || this.defaultBoxWidth, this._mdf = !0
        }, qn.prototype.searchProperty = function() {
            return this.searchKeyframes()
        }, qn.prototype.searchKeyframes = function() {
            return this.kf = this.data.d.k.length > 1, this.kf && this.addEffect(this.getKeyframeValue.bind(this)), this.kf
        }, qn.prototype.addEffect = function(c) {
            this.effectsSequence.push(c), this.elem.addDynamicProperty(this)
        }, qn.prototype.getValue = function(c) {
            if (!((this.elem.globalData.frameId === this.frameId || !this.effectsSequence.length) && !c)) {
                this.currentData.t = this.data.d.k[this.keysIndex].s.t;
                var h = this.currentData,
                    v = this.keysIndex;
                if (this.lock) {
                    this.setCurrentData(this.currentData);
                    return
                }
                this.lock = !0, this._mdf = !1;
                var E, S = this.effectsSequence.length,
                    _ = c || this.data.d.k[this.keysIndex].s;
                for (E = 0; E < S; E += 1) v !== this.keysIndex ? _ = this.effectsSequence[E](_, _.t) : _ = this.effectsSequence[E](this.currentData, _.t);
                h !== _ && this.setCurrentData(_), this.v = this.currentData, this.pv = this.v, this.lock = !1, this.frameId = this.elem.globalData.frameId
            }
        }, qn.prototype.getKeyframeValue = function() {
            for (var c = this.data.d.k, h = this.elem.comp.renderedFrame, v = 0, E = c.length; v <= E - 1 && !(v === E - 1 || c[v + 1].t > h);) v += 1;
            return this.keysIndex !== v && (this.keysIndex = v), this.data.d.k[this.keysIndex].s
        }, qn.prototype.buildFinalText = function(c) {
            for (var h = [], v = 0, E = c.length, S, _, k = !1, z = !1, H = ""; v < E;) k = z, z = !1, S = c.charCodeAt(v), H = c.charAt(v), Cs.isCombinedCharacter(S) ? k = !0 : S >= 55296 && S <= 56319 ? Cs.isRegionalFlag(c, v) ? H = c.substr(v, 14) : (_ = c.charCodeAt(v + 1), _ >= 56320 && _ <= 57343 && (Cs.isModifier(S, _) ? (H = c.substr(v, 2), k = !0) : Cs.isFlagEmoji(c.substr(v, 4)) ? H = c.substr(v, 4) : H = c.substr(v, 2))) : S > 56319 ? (_ = c.charCodeAt(v + 1), Cs.isVariationSelector(S) && (k = !0)) : Cs.isZeroWidthJoiner(S) && (k = !0, z = !0), k ? (h[h.length - 1] += H, k = !1) : h.push(H), v += H.length;
            return h
        }, qn.prototype.completeTextData = function(c) {
            c.__complete = !0;
            var h = this.elem.globalData.fontManager,
                v = this.data,
                E = [],
                S, _, k, z = 0,
                H, ne = v.m.g,
                oe = 0,
                be = 0,
                K = 0,
                le = [],
                pe = 0,
                fe = 0,
                Ce, Ae, q = h.getFontByName(c.f),
                $, G = 0,
                re = D5(q);
            c.fWeight = re.weight, c.fStyle = re.style, c.finalSize = c.s, c.finalText = this.buildFinalText(c.t), _ = c.finalText.length, c.finalLineHeight = c.lh;
            var ge = c.tr / 1e3 * c.finalSize,
                Ee;
            if (c.sz)
                for (var Qe = !0, Re = c.sz[0], lt = c.sz[1], it, Ve; Qe;) {
                    Ve = this.buildFinalText(c.t), it = 0, pe = 0, _ = Ve.length, ge = c.tr / 1e3 * c.finalSize;
                    var ct = -1;
                    for (S = 0; S < _; S += 1) Ee = Ve[S].charCodeAt(0), k = !1, Ve[S] === " " ? ct = S : (Ee === 13 || Ee === 3) && (pe = 0, k = !0, it += c.finalLineHeight || c.finalSize * 1.2), h.chars ? ($ = h.getCharData(Ve[S], q.fStyle, q.fFamily), G = k ? 0 : $.w * c.finalSize / 100) : G = h.measureText(Ve[S], c.f, c.finalSize), pe + G > Re && Ve[S] !== " " ? (ct === -1 ? _ += 1 : S = ct, it += c.finalLineHeight || c.finalSize * 1.2, Ve.splice(S, ct === S ? 1 : 0, "\r"), ct = -1, pe = 0) : (pe += G, pe += ge);
                    it += q.ascent * c.finalSize / 100, this.canResize && c.finalSize > this.minimumFontSize && lt < it ? (c.finalSize -= 1, c.finalLineHeight = c.finalSize * c.lh / c.s) : (c.finalText = Ve, _ = c.finalText.length, Qe = !1)
                }
            pe = -ge, G = 0;
            var rt = 0,
                Me;
            for (S = 0; S < _; S += 1)
                if (k = !1, Me = c.finalText[S], Ee = Me.charCodeAt(0), Ee === 13 || Ee === 3 ? (rt = 0, le.push(pe), fe = pe > fe ? pe : fe, pe = -2 * ge, H = "", k = !0, K += 1) : H = Me, h.chars ? ($ = h.getCharData(Me, q.fStyle, h.getFontByName(c.f).fFamily), G = k ? 0 : $.w * c.finalSize / 100) : G = h.measureText(H, c.f, c.finalSize), Me === " " ? rt += G + ge : (pe += G + ge + rt, rt = 0), E.push({
                        l: G,
                        an: G,
                        add: oe,
                        n: k,
                        anIndexes: [],
                        val: H,
                        line: K,
                        animatorJustifyOffset: 0
                    }), ne == 2) {
                    if (oe += G, H === "" || H === " " || S === _ - 1) {
                        for ((H === "" || H === " ") && (oe -= G); be <= S;) E[be].an = oe, E[be].ind = z, E[be].extra = G, be += 1;
                        z += 1, oe = 0
                    }
                } else if (ne == 3) {
                if (oe += G, H === "" || S === _ - 1) {
                    for (H === "" && (oe -= G); be <= S;) E[be].an = oe, E[be].ind = z, E[be].extra = G, be += 1;
                    oe = 0, z += 1
                }
            } else E[z].ind = z, E[z].extra = 0, z += 1;
            if (c.l = E, fe = pe > fe ? pe : fe, le.push(pe), c.sz) c.boxWidth = c.sz[0], c.justifyOffset = 0;
            else switch (c.boxWidth = fe, c.j) {
                case 1:
                    c.justifyOffset = -c.boxWidth;
                    break;
                case 2:
                    c.justifyOffset = -c.boxWidth / 2;
                    break;
                default:
                    c.justifyOffset = 0
            }
            c.lineWidths = le;
            var X = v.a,
                de, L;
            Ae = X.length;
            var R, Se, me = [];
            for (Ce = 0; Ce < Ae; Ce += 1) {
                for (de = X[Ce], de.a.sc && (c.strokeColorAnim = !0), de.a.sw && (c.strokeWidthAnim = !0), (de.a.fc || de.a.fh || de.a.fs || de.a.fb) && (c.fillColorAnim = !0), Se = 0, R = de.s.b, S = 0; S < _; S += 1) L = E[S], L.anIndexes[Ce] = Se, (R == 1 && L.val !== "" || R == 2 && L.val !== "" && L.val !== " " || R == 3 && (L.n || L.val == " " || S == _ - 1) || R == 4 && (L.n || S == _ - 1)) && (de.s.rn === 1 && me.push(Se), Se += 1);
                v.a[Ce].s.totalChars = Se;
                var Xe = -1,
                    at;
                if (de.s.rn === 1)
                    for (S = 0; S < _; S += 1) L = E[S], Xe != L.anIndexes[Ce] && (Xe = L.anIndexes[Ce], at = me.splice(Math.floor(Math.random() * me.length), 1)[0]), L.anIndexes[Ce] = at
            }
            c.yOffset = c.finalLineHeight || c.finalSize * 1.2, c.ls = c.ls || 0, c.ascent = q.ascent * c.finalSize / 100
        }, qn.prototype.updateDocumentData = function(c, h) {
            h = h === void 0 ? this.keysIndex : h;
            var v = this.copyData({}, this.data.d.k[h].s);
            v = this.copyData(v, c), this.data.d.k[h].s = v, this.recalculate(h), this.setCurrentData(v), this.elem.addDynamicProperty(this)
        }, qn.prototype.recalculate = function(c) {
            var h = this.data.d.k[c].s;
            h.__complete = !1, this.keysIndex = 0, this._isFirstFrame = !0, this.getValue(h)
        }, qn.prototype.canResizeFont = function(c) {
            this.canResize = c, this.recalculate(this.keysIndex), this.elem.addDynamicProperty(this)
        }, qn.prototype.setMinimumFontSize = function(c) {
            this.minimumFontSize = Math.floor(c) || 1, this.recalculate(this.keysIndex), this.elem.addDynamicProperty(this)
        };
        var eE = function() {
            var c = Math.max,
                h = Math.min,
                v = Math.floor;

            function E(_, k) {
                this._currentTextLength = -1, this.k = !1, this.data = k, this.elem = _, this.comp = _.comp, this.finalS = 0, this.finalE = 0, this.initDynamicPropertyContainer(_), this.s = Ge.getProp(_, k.s || {
                    k: 0
                }, 0, 0, this), "e" in k ? this.e = Ge.getProp(_, k.e, 0, 0, this) : this.e = {
                    v: 100
                }, this.o = Ge.getProp(_, k.o || {
                    k: 0
                }, 0, 0, this), this.xe = Ge.getProp(_, k.xe || {
                    k: 0
                }, 0, 0, this), this.ne = Ge.getProp(_, k.ne || {
                    k: 0
                }, 0, 0, this), this.sm = Ge.getProp(_, k.sm || {
                    k: 100
                }, 0, 0, this), this.a = Ge.getProp(_, k.a, 0, .01, this), this.dynamicProperties.length || this.getValue()
            }
            E.prototype = {
                getMult: function(k) {
                    this._currentTextLength !== this.elem.textProperty.currentData.l.length && this.getValue();
                    var z = 0,
                        H = 0,
                        ne = 1,
                        oe = 1;
                    this.ne.v > 0 ? z = this.ne.v / 100 : H = -this.ne.v / 100, this.xe.v > 0 ? ne = 1 - this.xe.v / 100 : oe = 1 + this.xe.v / 100;
                    var be = Je.getBezierEasing(z, H, ne, oe).get,
                        K = 0,
                        le = this.finalS,
                        pe = this.finalE,
                        fe = this.data.sh;
                    if (fe === 2) pe === le ? K = k >= pe ? 1 : 0 : K = c(0, h(.5 / (pe - le) + (k - le) / (pe - le), 1)), K = be(K);
                    else if (fe === 3) pe === le ? K = k >= pe ? 0 : 1 : K = 1 - c(0, h(.5 / (pe - le) + (k - le) / (pe - le), 1)), K = be(K);
                    else if (fe === 4) pe === le ? K = 0 : (K = c(0, h(.5 / (pe - le) + (k - le) / (pe - le), 1)), K < .5 ? K *= 2 : K = 1 - 2 * (K - .5)), K = be(K);
                    else if (fe === 5) {
                        if (pe === le) K = 0;
                        else {
                            var Ce = pe - le;
                            k = h(c(0, k + .5 - le), pe - le);
                            var Ae = -Ce / 2 + k,
                                q = Ce / 2;
                            K = Math.sqrt(1 - Ae * Ae / (q * q))
                        }
                        K = be(K)
                    } else fe === 6 ? (pe === le ? K = 0 : (k = h(c(0, k + .5 - le), pe - le), K = (1 + Math.cos(Math.PI + Math.PI * 2 * k / (pe - le))) / 2), K = be(K)) : (k >= v(le) && (k - le < 0 ? K = c(0, h(h(pe, 1) - (le - k), 1)) : K = c(0, h(pe - k, 1))), K = be(K));
                    if (this.sm.v !== 100) {
                        var $ = this.sm.v * .01;
                        $ === 0 && ($ = 1e-8);
                        var G = .5 - $ * .5;
                        K < G ? K = 0 : (K = (K - G) / $, K > 1 && (K = 1))
                    }
                    return K * this.a.v
                },
                getValue: function(k) {
                    this.iterateDynamicProperties(), this._mdf = k || this._mdf, this._currentTextLength = this.elem.textProperty.currentData.l.length || 0, k && this.data.r === 2 && (this.e.v = this._currentTextLength);
                    var z = this.data.r === 2 ? 1 : 100 / this.data.totalChars,
                        H = this.o.v / z,
                        ne = this.s.v / z + H,
                        oe = this.e.v / z + H;
                    if (ne > oe) {
                        var be = ne;
                        ne = oe, oe = be
                    }
                    this.finalS = ne, this.finalE = oe
                }
            }, f([gn], E);

            function S(_, k, z) {
                return new E(_, k)
            }
            return {
                getTextSelectorProp: S
            }
        }();

        function tE(c, h, v) {
            var E = {
                    propType: !1
                },
                S = Ge.getProp,
                _ = h.a;
            this.a = {
                r: _.r ? S(c, _.r, 0, D, v) : E,
                rx: _.rx ? S(c, _.rx, 0, D, v) : E,
                ry: _.ry ? S(c, _.ry, 0, D, v) : E,
                sk: _.sk ? S(c, _.sk, 0, D, v) : E,
                sa: _.sa ? S(c, _.sa, 0, D, v) : E,
                s: _.s ? S(c, _.s, 1, .01, v) : E,
                a: _.a ? S(c, _.a, 1, 0, v) : E,
                o: _.o ? S(c, _.o, 0, .01, v) : E,
                p: _.p ? S(c, _.p, 1, 0, v) : E,
                sw: _.sw ? S(c, _.sw, 0, 0, v) : E,
                sc: _.sc ? S(c, _.sc, 1, 0, v) : E,
                fc: _.fc ? S(c, _.fc, 1, 0, v) : E,
                fh: _.fh ? S(c, _.fh, 0, 0, v) : E,
                fs: _.fs ? S(c, _.fs, 0, .01, v) : E,
                fb: _.fb ? S(c, _.fb, 0, .01, v) : E,
                t: _.t ? S(c, _.t, 0, 0, v) : E
            }, this.s = eE.getTextSelectorProp(c, h.s, v), this.s.t = h.s.t
        }

        function Es(c, h, v) {
            this._isFirstFrame = !0, this._hasMaskedPath = !1, this._frameId = -1, this._textData = c, this._renderType = h, this._elem = v, this._animatorsData = g(this._textData.a.length), this._pathData = {}, this._moreOptions = {
                alignment: {}
            }, this.renderedLetters = [], this.lettersChangedFlag = !1, this.initDynamicPropertyContainer(v)
        }
        Es.prototype.searchProperties = function() {
            var c, h = this._textData.a.length,
                v, E = Ge.getProp;
            for (c = 0; c < h; c += 1) v = this._textData.a[c], this._animatorsData[c] = new tE(this._elem, v, this);
            this._textData.p && "m" in this._textData.p ? (this._pathData = {
                a: E(this._elem, this._textData.p.a, 0, 0, this),
                f: E(this._elem, this._textData.p.f, 0, 0, this),
                l: E(this._elem, this._textData.p.l, 0, 0, this),
                r: E(this._elem, this._textData.p.r, 0, 0, this),
                p: E(this._elem, this._textData.p.p, 0, 0, this),
                m: this._elem.maskManager.getMaskProperty(this._textData.p.m)
            }, this._hasMaskedPath = !0) : this._hasMaskedPath = !1, this._moreOptions.alignment = E(this._elem, this._textData.m.a, 1, 0, this)
        }, Es.prototype.getMeasures = function(c, h) {
            if (this.lettersChangedFlag = h, !(!this._mdf && !this._isFirstFrame && !h && (!this._hasMaskedPath || !this._pathData.m._mdf))) {
                this._isFirstFrame = !1;
                var v = this._moreOptions.alignment.v,
                    E = this._animatorsData,
                    S = this._textData,
                    _ = this.mHelper,
                    k = this._renderType,
                    z = this.renderedLetters.length,
                    H, ne, oe, be, K = c.l,
                    le, pe, fe, Ce, Ae, q, $, G, re, ge, Ee, Qe, Re, lt, it;
                if (this._hasMaskedPath) {
                    if (it = this._pathData.m, !this._pathData.n || this._pathData._mdf) {
                        var Ve = it.v;
                        this._pathData.r.v && (Ve = Ve.reverse()), le = {
                            tLength: 0,
                            segments: []
                        }, be = Ve._length - 1;
                        var ct;
                        for (Qe = 0, oe = 0; oe < be; oe += 1) ct = Yt.buildBezierData(Ve.v[oe], Ve.v[oe + 1], [Ve.o[oe][0] - Ve.v[oe][0], Ve.o[oe][1] - Ve.v[oe][1]], [Ve.i[oe + 1][0] - Ve.v[oe + 1][0], Ve.i[oe + 1][1] - Ve.v[oe + 1][1]]), le.tLength += ct.segmentLength, le.segments.push(ct), Qe += ct.segmentLength;
                        oe = be, it.v.c && (ct = Yt.buildBezierData(Ve.v[oe], Ve.v[0], [Ve.o[oe][0] - Ve.v[oe][0], Ve.o[oe][1] - Ve.v[oe][1]], [Ve.i[0][0] - Ve.v[0][0], Ve.i[0][1] - Ve.v[0][1]]), le.tLength += ct.segmentLength, le.segments.push(ct), Qe += ct.segmentLength), this._pathData.pi = le
                    }
                    if (le = this._pathData.pi, pe = this._pathData.f.v, $ = 0, q = 1, Ce = 0, Ae = !0, ge = le.segments, pe < 0 && it.v.c)
                        for (le.tLength < Math.abs(pe) && (pe = -Math.abs(pe) % le.tLength), $ = ge.length - 1, re = ge[$].points, q = re.length - 1; pe < 0;) pe += re[q].partialLength, q -= 1, q < 0 && ($ -= 1, re = ge[$].points, q = re.length - 1);
                    re = ge[$].points, G = re[q - 1], fe = re[q], Ee = fe.partialLength
                }
                be = K.length, H = 0, ne = 0;
                var rt = c.finalSize * 1.2 * .714,
                    Me = !0,
                    X, de, L, R, Se;
                R = E.length;
                var me, Xe = -1,
                    at, ut, Qt, Ut = pe,
                    mn = $,
                    or = q,
                    fA = -1,
                    lr, Mn, Cr, Ht, At, PA, yi, OA, dA = "",
                    LA = this.defaultPropsArray,
                    kA;
                if (c.j === 2 || c.j === 1) {
                    var ur = 0,
                        Ci = 0,
                        xi = c.j === 2 ? -.5 : -1,
                        Yr = 0,
                        Ei = !0;
                    for (oe = 0; oe < be; oe += 1)
                        if (K[oe].n) {
                            for (ur && (ur += Ci); Yr < oe;) K[Yr].animatorJustifyOffset = ur, Yr += 1;
                            ur = 0, Ei = !0
                        } else {
                            for (L = 0; L < R; L += 1) X = E[L].a, X.t.propType && (Ei && c.j === 2 && (Ci += X.t.v * xi), de = E[L].s, me = de.getMult(K[oe].anIndexes[L], S.a[L].s.totalChars), me.length ? ur += X.t.v * me[0] * xi : ur += X.t.v * me * xi);
                            Ei = !1
                        }
                    for (ur && (ur += Ci); Yr < oe;) K[Yr].animatorJustifyOffset = ur, Yr += 1
                }
                for (oe = 0; oe < be; oe += 1) {
                    if (_.reset(), lr = 1, K[oe].n) H = 0, ne += c.yOffset, ne += Me ? 1 : 0, pe = Ut, Me = !1, this._hasMaskedPath && ($ = mn, q = or, re = ge[$].points, G = re[q - 1], fe = re[q], Ee = fe.partialLength, Ce = 0), dA = "", OA = "", PA = "", kA = "", LA = this.defaultPropsArray;
                    else {
                        if (this._hasMaskedPath) {
                            if (fA !== K[oe].line) {
                                switch (c.j) {
                                    case 1:
                                        pe += Qe - c.lineWidths[K[oe].line];
                                        break;
                                    case 2:
                                        pe += (Qe - c.lineWidths[K[oe].line]) / 2;
                                        break
                                }
                                fA = K[oe].line
                            }
                            Xe !== K[oe].ind && (K[Xe] && (pe += K[Xe].extra), pe += K[oe].an / 2, Xe = K[oe].ind), pe += v[0] * K[oe].an * .005;
                            var Xr = 0;
                            for (L = 0; L < R; L += 1) X = E[L].a, X.p.propType && (de = E[L].s, me = de.getMult(K[oe].anIndexes[L], S.a[L].s.totalChars), me.length ? Xr += X.p.v[0] * me[0] : Xr += X.p.v[0] * me), X.a.propType && (de = E[L].s, me = de.getMult(K[oe].anIndexes[L], S.a[L].s.totalChars), me.length ? Xr += X.a.v[0] * me[0] : Xr += X.a.v[0] * me);
                            for (Ae = !0, this._pathData.a.v && (pe = K[0].an * .5 + (Qe - this._pathData.f.v - K[0].an * .5 - K[K.length - 1].an * .5) * Xe / (be - 1), pe += this._pathData.f.v); Ae;) Ce + Ee >= pe + Xr || !re ? (Re = (pe + Xr - Ce) / fe.partialLength, ut = G.point[0] + (fe.point[0] - G.point[0]) * Re, Qt = G.point[1] + (fe.point[1] - G.point[1]) * Re, _.translate(-v[0] * K[oe].an * .005, -(v[1] * rt) * .01), Ae = !1) : re && (Ce += fe.partialLength, q += 1, q >= re.length && (q = 0, $ += 1, ge[$] ? re = ge[$].points : it.v.c ? (q = 0, $ = 0, re = ge[$].points) : (Ce -= fe.partialLength, re = null)), re && (G = fe, fe = re[q], Ee = fe.partialLength));
                            at = K[oe].an / 2 - K[oe].add, _.translate(-at, 0, 0)
                        } else at = K[oe].an / 2 - K[oe].add, _.translate(-at, 0, 0), _.translate(-v[0] * K[oe].an * .005, -v[1] * rt * .01, 0);
                        for (L = 0; L < R; L += 1) X = E[L].a, X.t.propType && (de = E[L].s, me = de.getMult(K[oe].anIndexes[L], S.a[L].s.totalChars), (H !== 0 || c.j !== 0) && (this._hasMaskedPath ? me.length ? pe += X.t.v * me[0] : pe += X.t.v * me : me.length ? H += X.t.v * me[0] : H += X.t.v * me));
                        for (c.strokeWidthAnim && (Cr = c.sw || 0), c.strokeColorAnim && (c.sc ? Mn = [c.sc[0], c.sc[1], c.sc[2]] : Mn = [0, 0, 0]), c.fillColorAnim && c.fc && (Ht = [c.fc[0], c.fc[1], c.fc[2]]), L = 0; L < R; L += 1) X = E[L].a, X.a.propType && (de = E[L].s, me = de.getMult(K[oe].anIndexes[L], S.a[L].s.totalChars), me.length ? _.translate(-X.a.v[0] * me[0], -X.a.v[1] * me[1], X.a.v[2] * me[2]) : _.translate(-X.a.v[0] * me, -X.a.v[1] * me, X.a.v[2] * me));
                        for (L = 0; L < R; L += 1) X = E[L].a, X.s.propType && (de = E[L].s, me = de.getMult(K[oe].anIndexes[L], S.a[L].s.totalChars), me.length ? _.scale(1 + (X.s.v[0] - 1) * me[0], 1 + (X.s.v[1] - 1) * me[1], 1) : _.scale(1 + (X.s.v[0] - 1) * me, 1 + (X.s.v[1] - 1) * me, 1));
                        for (L = 0; L < R; L += 1) {
                            if (X = E[L].a, de = E[L].s, me = de.getMult(K[oe].anIndexes[L], S.a[L].s.totalChars), X.sk.propType && (me.length ? _.skewFromAxis(-X.sk.v * me[0], X.sa.v * me[1]) : _.skewFromAxis(-X.sk.v * me, X.sa.v * me)), X.r.propType && (me.length ? _.rotateZ(-X.r.v * me[2]) : _.rotateZ(-X.r.v * me)), X.ry.propType && (me.length ? _.rotateY(X.ry.v * me[1]) : _.rotateY(X.ry.v * me)), X.rx.propType && (me.length ? _.rotateX(X.rx.v * me[0]) : _.rotateX(X.rx.v * me)), X.o.propType && (me.length ? lr += (X.o.v * me[0] - lr) * me[0] : lr += (X.o.v * me - lr) * me), c.strokeWidthAnim && X.sw.propType && (me.length ? Cr += X.sw.v * me[0] : Cr += X.sw.v * me), c.strokeColorAnim && X.sc.propType)
                                for (At = 0; At < 3; At += 1) me.length ? Mn[At] += (X.sc.v[At] - Mn[At]) * me[0] : Mn[At] += (X.sc.v[At] - Mn[At]) * me;
                            if (c.fillColorAnim && c.fc) {
                                if (X.fc.propType)
                                    for (At = 0; At < 3; At += 1) me.length ? Ht[At] += (X.fc.v[At] - Ht[At]) * me[0] : Ht[At] += (X.fc.v[At] - Ht[At]) * me;
                                X.fh.propType && (me.length ? Ht = ve(Ht, X.fh.v * me[0]) : Ht = ve(Ht, X.fh.v * me)), X.fs.propType && (me.length ? Ht = ee(Ht, X.fs.v * me[0]) : Ht = ee(Ht, X.fs.v * me)), X.fb.propType && (me.length ? Ht = ce(Ht, X.fb.v * me[0]) : Ht = ce(Ht, X.fb.v * me))
                            }
                        }
                        for (L = 0; L < R; L += 1) X = E[L].a, X.p.propType && (de = E[L].s, me = de.getMult(K[oe].anIndexes[L], S.a[L].s.totalChars), this._hasMaskedPath ? me.length ? _.translate(0, X.p.v[1] * me[0], -X.p.v[2] * me[1]) : _.translate(0, X.p.v[1] * me, -X.p.v[2] * me) : me.length ? _.translate(X.p.v[0] * me[0], X.p.v[1] * me[1], -X.p.v[2] * me[2]) : _.translate(X.p.v[0] * me, X.p.v[1] * me, -X.p.v[2] * me));
                        if (c.strokeWidthAnim && (PA = Cr < 0 ? 0 : Cr), c.strokeColorAnim && (yi = "rgb(" + Math.round(Mn[0] * 255) + "," + Math.round(Mn[1] * 255) + "," + Math.round(Mn[2] * 255) + ")"), c.fillColorAnim && c.fc && (OA = "rgb(" + Math.round(Ht[0] * 255) + "," + Math.round(Ht[1] * 255) + "," + Math.round(Ht[2] * 255) + ")"), this._hasMaskedPath) {
                            if (_.translate(0, -c.ls), _.translate(0, v[1] * rt * .01 + ne, 0), this._pathData.p.v) {
                                lt = (fe.point[1] - G.point[1]) / (fe.point[0] - G.point[0]);
                                var bs = Math.atan(lt) * 180 / Math.PI;
                                fe.point[0] < G.point[0] && (bs += 180), _.rotate(-bs * Math.PI / 180)
                            }
                            _.translate(ut, Qt, 0), pe -= v[0] * K[oe].an * .005, K[oe + 1] && Xe !== K[oe + 1].ind && (pe += K[oe].an / 2, pe += c.tr * .001 * c.finalSize)
                        } else {
                            switch (_.translate(H, ne, 0), c.ps && _.translate(c.ps[0], c.ps[1] + c.ascent, 0), c.j) {
                                case 1:
                                    _.translate(K[oe].animatorJustifyOffset + c.justifyOffset + (c.boxWidth - c.lineWidths[K[oe].line]), 0, 0);
                                    break;
                                case 2:
                                    _.translate(K[oe].animatorJustifyOffset + c.justifyOffset + (c.boxWidth - c.lineWidths[K[oe].line]) / 2, 0, 0);
                                    break
                            }
                            _.translate(0, -c.ls), _.translate(at, 0, 0), _.translate(v[0] * K[oe].an * .005, v[1] * rt * .01, 0), H += K[oe].l + c.tr * .001 * c.finalSize
                        }
                        k === "html" ? dA = _.toCSS() : k === "svg" ? dA = _.to2dCSS() : LA = [_.props[0], _.props[1], _.props[2], _.props[3], _.props[4], _.props[5], _.props[6], _.props[7], _.props[8], _.props[9], _.props[10], _.props[11], _.props[12], _.props[13], _.props[14], _.props[15]], kA = lr
                    }
                    z <= oe ? (Se = new l1(kA, PA, yi, OA, dA, LA), this.renderedLetters.push(Se), z += 1, this.lettersChangedFlag = !0) : (Se = this.renderedLetters[oe], this.lettersChangedFlag = Se.update(kA, PA, yi, OA, dA, LA) || this.lettersChangedFlag)
                }
            }
        }, Es.prototype.getValue = function() {
            this._elem.globalData.frameId !== this._frameId && (this._frameId = this._elem.globalData.frameId, this.iterateDynamicProperties())
        }, Es.prototype.mHelper = new vn, Es.prototype.defaultPropsArray = [], f([gn], Es);

        function Lr() {}
        Lr.prototype.initElement = function(c, h, v) {
            this.lettersChangedFlag = !0, this.initFrame(), this.initBaseData(c, h, v), this.textProperty = new qn(this, c.t, this.dynamicProperties), this.textAnimator = new Es(c.t, this.renderType, this), this.initTransform(c, h, v), this.initHierarchy(), this.initRenderable(), this.initRendererElement(), this.createContainerElements(), this.createRenderableComponents(), this.createContent(), this.hide(), this.textAnimator.searchProperties(this.dynamicProperties)
        }, Lr.prototype.prepareFrame = function(c) {
            this._mdf = !1, this.prepareRenderableFrame(c), this.prepareProperties(c, this.isInRange)
        }, Lr.prototype.createPathShape = function(c, h) {
            var v, E = h.length,
                S, _ = "";
            for (v = 0; v < E; v += 1) h[v].ty === "sh" && (S = h[v].ks.k, _ += W5(S, S.i.length, !0, c));
            return _
        }, Lr.prototype.updateDocumentData = function(c, h) {
            this.textProperty.updateDocumentData(c, h)
        }, Lr.prototype.canResizeFont = function(c) {
            this.textProperty.canResizeFont(c)
        }, Lr.prototype.setMinimumFontSize = function(c) {
            this.textProperty.setMinimumFontSize(c)
        }, Lr.prototype.applyTextPropertiesToMatrix = function(c, h, v, E, S) {
            switch (c.ps && h.translate(c.ps[0], c.ps[1] + c.ascent, 0), h.translate(0, -c.ls, 0), c.j) {
                case 1:
                    h.translate(c.justifyOffset + (c.boxWidth - c.lineWidths[v]), 0, 0);
                    break;
                case 2:
                    h.translate(c.justifyOffset + (c.boxWidth - c.lineWidths[v]) / 2, 0, 0);
                    break
            }
            h.translate(E, S, 0)
        }, Lr.prototype.buildColor = function(c) {
            return "rgb(" + Math.round(c[0] * 255) + "," + Math.round(c[1] * 255) + "," + Math.round(c[2] * 255) + ")"
        }, Lr.prototype.emptyProp = new l1, Lr.prototype.destroy = function() {}, Lr.prototype.validateText = function() {
            (this.textProperty._mdf || this.textProperty._isFirstFrame) && (this.buildNewText(), this.textProperty._isFirstFrame = !1, this.textProperty._mdf = !1)
        };
        var nE = {
            shapes: []
        };

        function IA(c, h, v) {
            this.textSpans = [], this.renderType = "svg", this.initElement(c, h, v)
        }
        f([vi, va, No, ma, mi, $o, Lr], IA), IA.prototype.createContent = function() {
            this.data.singleShape && !this.globalData.fontManager.chars && (this.textContainer = Te("text"))
        }, IA.prototype.buildTextContents = function(c) {
            for (var h = 0, v = c.length, E = [], S = ""; h < v;) c[h] === String.fromCharCode(13) || c[h] === String.fromCharCode(3) ? (E.push(S), S = "") : S += c[h], h += 1;
            return E.push(S), E
        }, IA.prototype.buildShapeData = function(c, h) {
            if (c.shapes && c.shapes.length) {
                var v = c.shapes[0];
                if (v.it) {
                    var E = v.it[v.it.length - 1];
                    E.s && (E.s.k[0] = h, E.s.k[1] = h)
                }
            }
            return c
        }, IA.prototype.buildNewText = function() {
            this.addDynamicProperty(this);
            var c, h, v = this.textProperty.currentData;
            this.renderedLetters = g(v ? v.l.length : 0), v.fc ? this.layerElement.setAttribute("fill", this.buildColor(v.fc)) : this.layerElement.setAttribute("fill", "rgba(0,0,0,0)"), v.sc && (this.layerElement.setAttribute("stroke", this.buildColor(v.sc)), this.layerElement.setAttribute("stroke-width", v.sw)), this.layerElement.setAttribute("font-size", v.finalSize);
            var E = this.globalData.fontManager.getFontByName(v.f);
            if (E.fClass) this.layerElement.setAttribute("class", E.fClass);
            else {
                this.layerElement.setAttribute("font-family", E.fFamily);
                var S = v.fWeight,
                    _ = v.fStyle;
                this.layerElement.setAttribute("font-style", _), this.layerElement.setAttribute("font-weight", S)
            }
            this.layerElement.setAttribute("aria-label", v.t);
            var k = v.l || [],
                z = !!this.globalData.fontManager.chars;
            h = k.length;
            var H, ne = this.mHelper,
                oe = "",
                be = this.data.singleShape,
                K = 0,
                le = 0,
                pe = !0,
                fe = v.tr * .001 * v.finalSize;
            if (be && !z && !v.sz) {
                var Ce = this.textContainer,
                    Ae = "start";
                switch (v.j) {
                    case 1:
                        Ae = "end";
                        break;
                    case 2:
                        Ae = "middle";
                        break;
                    default:
                        Ae = "start";
                        break
                }
                Ce.setAttribute("text-anchor", Ae), Ce.setAttribute("letter-spacing", fe);
                var q = this.buildTextContents(v.finalText);
                for (h = q.length, le = v.ps ? v.ps[1] + v.ascent : 0, c = 0; c < h; c += 1) H = this.textSpans[c].span || Te("tspan"), H.textContent = q[c], H.setAttribute("x", 0), H.setAttribute("y", le), H.style.display = "inherit", Ce.appendChild(H), this.textSpans[c] || (this.textSpans[c] = {
                    span: null,
                    glyph: null
                }), this.textSpans[c].span = H, le += v.finalLineHeight;
                this.layerElement.appendChild(Ce)
            } else {
                var $ = this.textSpans.length,
                    G;
                for (c = 0; c < h; c += 1) {
                    if (this.textSpans[c] || (this.textSpans[c] = {
                            span: null,
                            childSpan: null,
                            glyph: null
                        }), !z || !be || c === 0) {
                        if (H = $ > c ? this.textSpans[c].span : Te(z ? "g" : "text"), $ <= c) {
                            if (H.setAttribute("stroke-linecap", "butt"), H.setAttribute("stroke-linejoin", "round"), H.setAttribute("stroke-miterlimit", "4"), this.textSpans[c].span = H, z) {
                                var re = Te("g");
                                H.appendChild(re), this.textSpans[c].childSpan = re
                            }
                            this.textSpans[c].span = H, this.layerElement.appendChild(H)
                        }
                        H.style.display = "inherit"
                    }
                    if (ne.reset(), be && (k[c].n && (K = -fe, le += v.yOffset, le += pe ? 1 : 0, pe = !1), this.applyTextPropertiesToMatrix(v, ne, k[c].line, K, le), K += k[c].l || 0, K += fe), z) {
                        G = this.globalData.fontManager.getCharData(v.finalText[c], E.fStyle, this.globalData.fontManager.getFontByName(v.f).fFamily);
                        var ge;
                        if (G.t === 1) ge = new Go(G.data, this.globalData, this);
                        else {
                            var Ee = nE;
                            G.data && G.data.shapes && (Ee = this.buildShapeData(G.data, v.finalSize)), ge = new ln(Ee, this.globalData, this)
                        }
                        if (this.textSpans[c].glyph) {
                            var Qe = this.textSpans[c].glyph;
                            this.textSpans[c].childSpan.removeChild(Qe.layerElement), Qe.destroy()
                        }
                        this.textSpans[c].glyph = ge, ge._debug = !0, ge.prepareFrame(0), ge.renderFrame(), this.textSpans[c].childSpan.appendChild(ge.layerElement), G.t === 1 && this.textSpans[c].childSpan.setAttribute("transform", "scale(" + v.finalSize / 100 + "," + v.finalSize / 100 + ")")
                    } else be && H.setAttribute("transform", "translate(" + ne.props[12] + "," + ne.props[13] + ")"), H.textContent = k[c].val, H.setAttributeNS("http://www.w3.org/XML/1998/namespace", "xml:space", "preserve")
                }
                be && H && H.setAttribute("d", oe)
            }
            for (; c < this.textSpans.length;) this.textSpans[c].span.style.display = "none", c += 1;
            this._sizeChanged = !0
        }, IA.prototype.sourceRectAtTime = function() {
            if (this.prepareFrame(this.comp.renderedFrame - this.data.st), this.renderInnerContent(), this._sizeChanged) {
                this._sizeChanged = !1;
                var c = this.layerElement.getBBox();
                this.bbox = {
                    top: c.y,
                    left: c.x,
                    width: c.width,
                    height: c.height
                }
            }
            return this.bbox
        }, IA.prototype.getValue = function() {
            var c, h = this.textSpans.length,
                v;
            for (this.renderedFrame = this.comp.renderedFrame, c = 0; c < h; c += 1) v = this.textSpans[c].glyph, v && (v.prepareFrame(this.comp.renderedFrame - this.data.st), v._mdf && (this._mdf = !0))
        }, IA.prototype.renderInnerContent = function() {
            if (this.validateText(), (!this.data.singleShape || this._mdf) && (this.textAnimator.getMeasures(this.textProperty.currentData, this.lettersChangedFlag), this.lettersChangedFlag || this.textAnimator.lettersChangedFlag)) {
                this._sizeChanged = !0;
                var c, h, v = this.textAnimator.renderedLetters,
                    E = this.textProperty.currentData.l;
                h = E.length;
                var S, _, k;
                for (c = 0; c < h; c += 1) E[c].n || (S = v[c], _ = this.textSpans[c].span, k = this.textSpans[c].glyph, k && k.renderFrame(), S._mdf.m && _.setAttribute("transform", S.m), S._mdf.o && _.setAttribute("opacity", S.o), S._mdf.sw && _.setAttribute("stroke-width", S.sw), S._mdf.sc && _.setAttribute("stroke", S.sc), S._mdf.fc && _.setAttribute("fill", S.fc))
            }
        };

        function u1(c, h, v) {
            this.initElement(c, h, v)
        }
        f([Ko], u1), u1.prototype.createContent = function() {
            var c = Te("rect");
            c.setAttribute("width", this.data.sw), c.setAttribute("height", this.data.sh), c.setAttribute("fill", this.data.sc), this.layerElement.appendChild(c)
        };

        function wi(c, h, v) {
            this.initFrame(), this.initBaseData(c, h, v), this.initFrame(), this.initTransform(c, h, v), this.initHierarchy()
        }
        wi.prototype.prepareFrame = function(c) {
            this.prepareProperties(c, !0)
        }, wi.prototype.renderFrame = function() {}, wi.prototype.getBaseElement = function() {
            return null
        }, wi.prototype.destroy = function() {}, wi.prototype.sourceRectAtTime = function() {}, wi.prototype.hide = function() {}, f([vi, va, ma, mi], wi);

        function Qn() {}
        f([Wn], Qn), Qn.prototype.createNull = function(c) {
            return new wi(c, this.globalData, this)
        }, Qn.prototype.createShape = function(c) {
            return new ln(c, this.globalData, this)
        }, Qn.prototype.createText = function(c) {
            return new IA(c, this.globalData, this)
        }, Qn.prototype.createImage = function(c) {
            return new Ko(c, this.globalData, this)
        }, Qn.prototype.createSolid = function(c) {
            return new u1(c, this.globalData, this)
        }, Qn.prototype.configAnimation = function(c) {
            this.svgElement.setAttribute("xmlns", "http://www.w3.org/2000/svg"), this.svgElement.setAttribute("xmlns:xlink", "http://www.w3.org/1999/xlink"), this.renderConfig.viewBoxSize ? this.svgElement.setAttribute("viewBox", this.renderConfig.viewBoxSize) : this.svgElement.setAttribute("viewBox", "0 0 " + c.w + " " + c.h), this.renderConfig.viewBoxOnly || (this.svgElement.setAttribute("width", c.w), this.svgElement.setAttribute("height", c.h), this.svgElement.style.width = "100%", this.svgElement.style.height = "100%", this.svgElement.style.transform = "translate3d(0,0,0)", this.svgElement.style.contentVisibility = this.renderConfig.contentVisibility), this.renderConfig.width && this.svgElement.setAttribute("width", this.renderConfig.width), this.renderConfig.height && this.svgElement.setAttribute("height", this.renderConfig.height), this.renderConfig.className && this.svgElement.setAttribute("class", this.renderConfig.className), this.renderConfig.id && this.svgElement.setAttribute("id", this.renderConfig.id), this.renderConfig.focusable !== void 0 && this.svgElement.setAttribute("focusable", this.renderConfig.focusable), this.svgElement.setAttribute("preserveAspectRatio", this.renderConfig.preserveAspectRatio), this.animationItem.wrapper.appendChild(this.svgElement);
            var h = this.globalData.defs;
            this.setupGlobalData(c, h), this.globalData.progressiveLoad = this.renderConfig.progressiveLoad, this.data = c;
            var v = Te("clipPath"),
                E = Te("rect");
            E.setAttribute("width", c.w), E.setAttribute("height", c.h), E.setAttribute("x", 0), E.setAttribute("y", 0);
            var S = Y();
            v.setAttribute("id", S), v.appendChild(E), this.layerElement.setAttribute("clip-path", "url(" + l() + "#" + S + ")"), h.appendChild(v), this.layers = c.layers, this.elements = g(c.layers.length)
        }, Qn.prototype.destroy = function() {
            this.animationItem.wrapper && (this.animationItem.wrapper.innerText = ""), this.layerElement = null, this.globalData.defs = null;
            var c, h = this.layers ? this.layers.length : 0;
            for (c = 0; c < h; c += 1) this.elements[c] && this.elements[c].destroy && this.elements[c].destroy();
            this.elements.length = 0, this.destroyed = !0, this.animationItem = null
        }, Qn.prototype.updateContainerSize = function() {}, Qn.prototype.findIndexByInd = function(c) {
            var h = 0,
                v = this.layers.length;
            for (h = 0; h < v; h += 1)
                if (this.layers[h].ind === c) return h;
            return -1
        }, Qn.prototype.buildItem = function(c) {
            var h = this.elements;
            if (!(h[c] || this.layers[c].ty === 99)) {
                h[c] = !0;
                var v = this.createItem(this.layers[c]);
                if (h[c] = v, ie() && (this.layers[c].ty === 0 && this.globalData.projectInterface.registerComposition(v), v.initExpressions()), this.appendElementInPos(v, c), this.layers[c].tt) {
                    var E = "tp" in this.layers[c] ? this.findIndexByInd(this.layers[c].tp) : c - 1;
                    if (E === -1) return;
                    if (!this.elements[E] || this.elements[E] === !0) this.buildItem(E), this.addPendingElement(v);
                    else {
                        var S = h[E],
                            _ = S.getMatte(this.layers[c].tt);
                        v.setMatte(_)
                    }
                }
            }
        }, Qn.prototype.checkPendingElements = function() {
            for (; this.pendingElements.length;) {
                var c = this.pendingElements.pop();
                if (c.checkParenting(), c.data.tt)
                    for (var h = 0, v = this.elements.length; h < v;) {
                        if (this.elements[h] === c) {
                            var E = "tp" in c.data ? this.findIndexByInd(c.data.tp) : h - 1,
                                S = this.elements[E],
                                _ = S.getMatte(this.layers[h].tt);
                            c.setMatte(_);
                            break
                        }
                        h += 1
                    }
            }
        }, Qn.prototype.renderFrame = function(c) {
            if (!(this.renderedFrame === c || this.destroyed)) {
                c === null ? c = this.renderedFrame : this.renderedFrame = c, this.globalData.frameNum = c, this.globalData.frameId += 1, this.globalData.projectInterface.currentFrame = c, this.globalData._mdf = !1;
                var h, v = this.layers.length;
                for (this.completeLayers || this.checkLayers(c), h = v - 1; h >= 0; h -= 1)(this.completeLayers || this.elements[h]) && this.elements[h].prepareFrame(c - this.layers[h].st);
                if (this.globalData._mdf)
                    for (h = 0; h < v; h += 1)(this.completeLayers || this.elements[h]) && this.elements[h].renderFrame()
            }
        }, Qn.prototype.appendElementInPos = function(c, h) {
            var v = c.getBaseElement();
            if (v) {
                for (var E = 0, S; E < h;) this.elements[E] && this.elements[E] !== !0 && this.elements[E].getBaseElement() && (S = this.elements[E].getBaseElement()), E += 1;
                S ? this.layerElement.insertBefore(v, S) : this.layerElement.appendChild(v)
            }
        }, Qn.prototype.hide = function() {
            this.layerElement.style.display = "none"
        }, Qn.prototype.show = function() {
            this.layerElement.style.display = "block"
        };

        function DA() {}
        f([vi, va, ma, mi, $o], DA), DA.prototype.initElement = function(c, h, v) {
            this.initFrame(), this.initBaseData(c, h, v), this.initTransform(c, h, v), this.initRenderable(), this.initHierarchy(), this.initRendererElement(), this.createContainerElements(), this.createRenderableComponents(), (this.data.xt || !h.progressiveLoad) && this.buildAllItems(), this.hide()
        }, DA.prototype.prepareFrame = function(c) {
            if (this._mdf = !1, this.prepareRenderableFrame(c), this.prepareProperties(c, this.isInRange), !(!this.isInRange && !this.data.xt)) {
                if (this.tm._placeholder) this.renderedFrame = c / this.data.sr;
                else {
                    var h = this.tm.v;
                    h === this.data.op && (h = this.data.op - 1), this.renderedFrame = h
                }
                var v, E = this.elements.length;
                for (this.completeLayers || this.checkLayers(this.renderedFrame), v = E - 1; v >= 0; v -= 1)(this.completeLayers || this.elements[v]) && (this.elements[v].prepareFrame(this.renderedFrame - this.layers[v].st), this.elements[v]._mdf && (this._mdf = !0))
            }
        }, DA.prototype.renderInnerContent = function() {
            var c, h = this.layers.length;
            for (c = 0; c < h; c += 1)(this.completeLayers || this.elements[c]) && this.elements[c].renderFrame()
        }, DA.prototype.setElements = function(c) {
            this.elements = c
        }, DA.prototype.getElements = function() {
            return this.elements
        }, DA.prototype.destroyElements = function() {
            var c, h = this.layers.length;
            for (c = 0; c < h; c += 1) this.elements[c] && this.elements[c].destroy()
        }, DA.prototype.destroy = function() {
            this.destroyElements(), this.destroyBaseElement()
        };

        function Go(c, h, v) {
            this.layers = c.layers, this.supports3d = !0, this.completeLayers = !1, this.pendingElements = [], this.elements = this.layers ? g(this.layers.length) : [], this.initElement(c, h, v), this.tm = c.tm ? Ge.getProp(this, c.tm, 0, h.frameRate, this) : {
                _placeholder: !0
            }
        }
        f([Qn, DA, No], Go), Go.prototype.createComp = function(c) {
            return new Go(c, this.globalData, this)
        };

        function c1(c, h) {
            this.animationItem = c, this.layers = null, this.renderedFrame = -1, this.svgElement = Te("svg");
            var v = "";
            if (h && h.title) {
                var E = Te("title"),
                    S = Y();
                E.setAttribute("id", S), E.textContent = h.title, this.svgElement.appendChild(E), v += S
            }
            if (h && h.description) {
                var _ = Te("desc"),
                    k = Y();
                _.setAttribute("id", k), _.textContent = h.description, this.svgElement.appendChild(_), v += " " + k
            }
            v && this.svgElement.setAttribute("aria-labelledby", v);
            var z = Te("defs");
            this.svgElement.appendChild(z);
            var H = Te("g");
            this.svgElement.appendChild(H), this.layerElement = H, this.renderConfig = {
                preserveAspectRatio: h && h.preserveAspectRatio || "xMidYMid meet",
                imagePreserveAspectRatio: h && h.imagePreserveAspectRatio || "xMidYMid slice",
                contentVisibility: h && h.contentVisibility || "visible",
                progressiveLoad: h && h.progressiveLoad || !1,
                hideOnTransparent: !(h && h.hideOnTransparent === !1),
                viewBoxOnly: h && h.viewBoxOnly || !1,
                viewBoxSize: h && h.viewBoxSize || !1,
                className: h && h.className || "",
                id: h && h.id || "",
                focusable: h && h.focusable,
                filterSize: {
                    width: h && h.filterSize && h.filterSize.width || "100%",
                    height: h && h.filterSize && h.filterSize.height || "100%",
                    x: h && h.filterSize && h.filterSize.x || "0%",
                    y: h && h.filterSize && h.filterSize.y || "0%"
                },
                width: h && h.width,
                height: h && h.height,
                runExpressions: !h || h.runExpressions === void 0 || h.runExpressions
            }, this.globalData = {
                _mdf: !1,
                frameNum: -1,
                defs: z,
                renderConfig: this.renderConfig
            }, this.elements = [], this.pendingElements = [], this.destroyed = !1, this.rendererType = "svg"
        }
        return f([Qn], c1), c1.prototype.createComp = function(c) {
            return new Go(c, this.globalData, this)
        }, He("svg", c1), pi.registerModifier("tm", jr), pi.registerModifier("pb", Po), pi.registerModifier("rp", cA), pi.registerModifier("rd", Oo), pi.registerModifier("zz", ko), pi.registerModifier("op", Ho), Pt
    })
})(Bh, Bh.exports);
var $z = Bh.exports;
const dre = xo($z);

function _m(e) {
    return e !== null && typeof e == "object" && "constructor" in e && e.constructor === Object
}

function qp(e = {}, t = {}) {
    Object.keys(t).forEach(n => {
        typeof e[n] > "u" ? e[n] = t[n] : _m(t[n]) && _m(e[n]) && Object.keys(t[n]).length > 0 && qp(e[n], t[n])
    })
}
const Iy = {
    body: {},
    addEventListener() {},
    removeEventListener() {},
    activeElement: {
        blur() {},
        nodeName: ""
    },
    querySelector() {
        return null
    },
    querySelectorAll() {
        return []
    },
    getElementById() {
        return null
    },
    createEvent() {
        return {
            initEvent() {}
        }
    },
    createElement() {
        return {
            children: [],
            childNodes: [],
            style: {},
            setAttribute() {},
            getElementsByTagName() {
                return []
            }
        }
    },
    createElementNS() {
        return {}
    },
    importNode() {
        return null
    },
    location: {
        hash: "",
        host: "",
        hostname: "",
        href: "",
        origin: "",
        pathname: "",
        protocol: "",
        search: ""
    }
};

function Vn() {
    const e = typeof document < "u" ? document : {};
    return qp(e, Iy), e
}
const Kz = {
    document: Iy,
    navigator: {
        userAgent: ""
    },
    location: {
        hash: "",
        host: "",
        hostname: "",
        href: "",
        origin: "",
        pathname: "",
        protocol: "",
        search: ""
    },
    history: {
        replaceState() {},
        pushState() {},
        go() {},
        back() {}
    },
    CustomEvent: function() {
        return this
    },
    addEventListener() {},
    removeEventListener() {},
    getComputedStyle() {
        return {
            getPropertyValue() {
                return ""
            }
        }
    },
    Image() {},
    Date() {},
    screen: {},
    setTimeout() {},
    clearTimeout() {},
    matchMedia() {
        return {}
    },
    requestAnimationFrame(e) {
        return typeof setTimeout > "u" ? (e(), null) : setTimeout(e, 0)
    },
    cancelAnimationFrame(e) {
        typeof setTimeout > "u" || clearTimeout(e)
    }
};

function kn() {
    const e = typeof window < "u" ? window : {};
    return qp(e, Kz), e
}

function Vz(e) {
    const t = e.__proto__;
    Object.defineProperty(e, "__proto__", {
        get() {
            return t
        },
        set(n) {
            t.__proto__ = n
        }
    })
}
class Ki extends Array {
    constructor(t) {
        typeof t == "number" ? super(t) : (super(...t || []), Vz(this))
    }
}

function S0(e = []) {
    const t = [];
    return e.forEach(n => {
        Array.isArray(n) ? t.push(...S0(n)) : t.push(n)
    }), t
}

function Dy(e, t) {
    return Array.prototype.filter.call(e, t)
}

function Gz(e) {
    const t = [];
    for (let n = 0; n < e.length; n += 1) t.indexOf(e[n]) === -1 && t.push(e[n]);
    return t
}

function zz(e, t) {
    if (typeof e != "string") return [e];
    const n = [],
        r = t.querySelectorAll(e);
    for (let A = 0; A < r.length; A += 1) n.push(r[A]);
    return n
}

function Ze(e, t) {
    const n = kn(),
        r = Vn();
    let A = [];
    if (!t && e instanceof Ki) return e;
    if (!e) return new Ki(A);
    if (typeof e == "string") {
        const i = e.trim();
        if (i.indexOf("<") >= 0 && i.indexOf(">") >= 0) {
            let s = "div";
            i.indexOf("<li") === 0 && (s = "ul"), i.indexOf("<tr") === 0 && (s = "tbody"), (i.indexOf("<td") === 0 || i.indexOf("<th") === 0) && (s = "tr"), i.indexOf("<tbody") === 0 && (s = "table"), i.indexOf("<option") === 0 && (s = "select");
            const a = r.createElement(s);
            a.innerHTML = i;
            for (let o = 0; o < a.childNodes.length; o += 1) A.push(a.childNodes[o])
        } else A = zz(e.trim(), t || r)
    } else if (e.nodeType || e === n || e === r) A.push(e);
    else if (Array.isArray(e)) {
        if (e instanceof Ki) return e;
        A = e
    }
    return new Ki(Gz(A))
}
Ze.fn = Ki.prototype;

function Wz(...e) {
    const t = S0(e.map(n => n.split(" ")));
    return this.forEach(n => {
        n.classList.add(...t)
    }), this
}

function jz(...e) {
    const t = S0(e.map(n => n.split(" ")));
    return this.forEach(n => {
        n.classList.remove(...t)
    }), this
}

function Yz(...e) {
    const t = S0(e.map(n => n.split(" ")));
    this.forEach(n => {
        t.forEach(r => {
            n.classList.toggle(r)
        })
    })
}

function Xz(...e) {
    const t = S0(e.map(n => n.split(" ")));
    return Dy(this, n => t.filter(r => n.classList.contains(r)).length > 0).length > 0
}

function Jz(e, t) {
    if (arguments.length === 1 && typeof e == "string") return this[0] ? this[0].getAttribute(e) : void 0;
    for (let n = 0; n < this.length; n += 1)
        if (arguments.length === 2) this[n].setAttribute(e, t);
        else
            for (const r in e) this[n][r] = e[r], this[n].setAttribute(r, e[r]);
    return this
}

function qz(e) {
    for (let t = 0; t < this.length; t += 1) this[t].removeAttribute(e);
    return this
}

function Zz(e) {
    for (let t = 0; t < this.length; t += 1) this[t].style.transform = e;
    return this
}

function eW(e) {
    for (let t = 0; t < this.length; t += 1) this[t].style.transitionDuration = typeof e != "string" ? `${e}ms` : e;
    return this
}

function tW(...e) {
    let [t, n, r, A] = e;
    typeof e[1] == "function" && ([t, r, A] = e, n = void 0), A || (A = !1);

    function i(l) {
        const u = l.target;
        if (!u) return;
        const f = l.target.dom7EventData || [];
        if (f.indexOf(l) < 0 && f.unshift(l), Ze(u).is(n)) r.apply(u, f);
        else {
            const d = Ze(u).parents();
            for (let p = 0; p < d.length; p += 1) Ze(d[p]).is(n) && r.apply(d[p], f)
        }
    }

    function s(l) {
        const u = l && l.target ? l.target.dom7EventData || [] : [];
        u.indexOf(l) < 0 && u.unshift(l), r.apply(this, u)
    }
    const a = t.split(" ");
    let o;
    for (let l = 0; l < this.length; l += 1) {
        const u = this[l];
        if (n)
            for (o = 0; o < a.length; o += 1) {
                const f = a[o];
                u.dom7LiveListeners || (u.dom7LiveListeners = {}), u.dom7LiveListeners[f] || (u.dom7LiveListeners[f] = []), u.dom7LiveListeners[f].push({
                    listener: r,
                    proxyListener: i
                }), u.addEventListener(f, i, A)
            } else
                for (o = 0; o < a.length; o += 1) {
                    const f = a[o];
                    u.dom7Listeners || (u.dom7Listeners = {}), u.dom7Listeners[f] || (u.dom7Listeners[f] = []), u.dom7Listeners[f].push({
                        listener: r,
                        proxyListener: s
                    }), u.addEventListener(f, s, A)
                }
    }
    return this
}

function nW(...e) {
    let [t, n, r, A] = e;
    typeof e[1] == "function" && ([t, r, A] = e, n = void 0), A || (A = !1);
    const i = t.split(" ");
    for (let s = 0; s < i.length; s += 1) {
        const a = i[s];
        for (let o = 0; o < this.length; o += 1) {
            const l = this[o];
            let u;
            if (!n && l.dom7Listeners ? u = l.dom7Listeners[a] : n && l.dom7LiveListeners && (u = l.dom7LiveListeners[a]), u && u.length)
                for (let f = u.length - 1; f >= 0; f -= 1) {
                    const d = u[f];
                    r && d.listener === r || r && d.listener && d.listener.dom7proxy && d.listener.dom7proxy === r ? (l.removeEventListener(a, d.proxyListener, A), u.splice(f, 1)) : r || (l.removeEventListener(a, d.proxyListener, A), u.splice(f, 1))
                }
        }
    }
    return this
}

function rW(...e) {
    const t = kn(),
        n = e[0].split(" "),
        r = e[1];
    for (let A = 0; A < n.length; A += 1) {
        const i = n[A];
        for (let s = 0; s < this.length; s += 1) {
            const a = this[s];
            if (t.CustomEvent) {
                const o = new t.CustomEvent(i, {
                    detail: r,
                    bubbles: !0,
                    cancelable: !0
                });
                a.dom7EventData = e.filter((l, u) => u > 0), a.dispatchEvent(o), a.dom7EventData = [], delete a.dom7EventData
            }
        }
    }
    return this
}

function AW(e) {
    const t = this;

    function n(r) {
        r.target === this && (e.call(this, r), t.off("transitionend", n))
    }
    return e && t.on("transitionend", n), this
}

function iW(e) {
    if (this.length > 0) {
        if (e) {
            const t = this.styles();
            return this[0].offsetWidth + parseFloat(t.getPropertyValue("margin-right")) + parseFloat(t.getPropertyValue("margin-left"))
        }
        return this[0].offsetWidth
    }
    return null
}

function sW(e) {
    if (this.length > 0) {
        if (e) {
            const t = this.styles();
            return this[0].offsetHeight + parseFloat(t.getPropertyValue("margin-top")) + parseFloat(t.getPropertyValue("margin-bottom"))
        }
        return this[0].offsetHeight
    }
    return null
}

function aW() {
    if (this.length > 0) {
        const e = kn(),
            t = Vn(),
            n = this[0],
            r = n.getBoundingClientRect(),
            A = t.body,
            i = n.clientTop || A.clientTop || 0,
            s = n.clientLeft || A.clientLeft || 0,
            a = n === e ? e.scrollY : n.scrollTop,
            o = n === e ? e.scrollX : n.scrollLeft;
        return {
            top: r.top + a - i,
            left: r.left + o - s
        }
    }
    return null
}

function oW() {
    const e = kn();
    return this[0] ? e.getComputedStyle(this[0], null) : {}
}

function lW(e, t) {
    const n = kn();
    let r;
    if (arguments.length === 1)
        if (typeof e == "string") {
            if (this[0]) return n.getComputedStyle(this[0], null).getPropertyValue(e)
        } else {
            for (r = 0; r < this.length; r += 1)
                for (const A in e) this[r].style[A] = e[A];
            return this
        }
    if (arguments.length === 2 && typeof e == "string") {
        for (r = 0; r < this.length; r += 1) this[r].style[e] = t;
        return this
    }
    return this
}

function uW(e) {
    return e ? (this.forEach((t, n) => {
        e.apply(t, [t, n])
    }), this) : this
}

function cW(e) {
    const t = Dy(this, e);
    return Ze(t)
}

function fW(e) {
    if (typeof e > "u") return this[0] ? this[0].innerHTML : null;
    for (let t = 0; t < this.length; t += 1) this[t].innerHTML = e;
    return this
}

function dW(e) {
    if (typeof e > "u") return this[0] ? this[0].textContent.trim() : null;
    for (let t = 0; t < this.length; t += 1) this[t].textContent = e;
    return this
}

function hW(e) {
    const t = kn(),
        n = Vn(),
        r = this[0];
    let A, i;
    if (!r || typeof e > "u") return !1;
    if (typeof e == "string") {
        if (r.matches) return r.matches(e);
        if (r.webkitMatchesSelector) return r.webkitMatchesSelector(e);
        if (r.msMatchesSelector) return r.msMatchesSelector(e);
        for (A = Ze(e), i = 0; i < A.length; i += 1)
            if (A[i] === r) return !0;
        return !1
    }
    if (e === n) return r === n;
    if (e === t) return r === t;
    if (e.nodeType || e instanceof Ki) {
        for (A = e.nodeType ? [e] : e, i = 0; i < A.length; i += 1)
            if (A[i] === r) return !0;
        return !1
    }
    return !1
}

function pW() {
    let e = this[0],
        t;
    if (e) {
        for (t = 0;
            (e = e.previousSibling) !== null;) e.nodeType === 1 && (t += 1);
        return t
    }
}

function gW(e) {
    if (typeof e > "u") return this;
    const t = this.length;
    if (e > t - 1) return Ze([]);
    if (e < 0) {
        const n = t + e;
        return n < 0 ? Ze([]) : Ze([this[n]])
    }
    return Ze([this[e]])
}

function vW(...e) {
    let t;
    const n = Vn();
    for (let r = 0; r < e.length; r += 1) {
        t = e[r];
        for (let A = 0; A < this.length; A += 1)
            if (typeof t == "string") {
                const i = n.createElement("div");
                for (i.innerHTML = t; i.firstChild;) this[A].appendChild(i.firstChild)
            } else if (t instanceof Ki)
            for (let i = 0; i < t.length; i += 1) this[A].appendChild(t[i]);
        else this[A].appendChild(t)
    }
    return this
}

function mW(e) {
    const t = Vn();
    let n, r;
    for (n = 0; n < this.length; n += 1)
        if (typeof e == "string") {
            const A = t.createElement("div");
            for (A.innerHTML = e, r = A.childNodes.length - 1; r >= 0; r -= 1) this[n].insertBefore(A.childNodes[r], this[n].childNodes[0])
        } else if (e instanceof Ki)
        for (r = 0; r < e.length; r += 1) this[n].insertBefore(e[r], this[n].childNodes[0]);
    else this[n].insertBefore(e, this[n].childNodes[0]);
    return this
}

function BW(e) {
    return this.length > 0 ? e ? this[0].nextElementSibling && Ze(this[0].nextElementSibling).is(e) ? Ze([this[0].nextElementSibling]) : Ze([]) : this[0].nextElementSibling ? Ze([this[0].nextElementSibling]) : Ze([]) : Ze([])
}

function wW(e) {
    const t = [];
    let n = this[0];
    if (!n) return Ze([]);
    for (; n.nextElementSibling;) {
        const r = n.nextElementSibling;
        e ? Ze(r).is(e) && t.push(r) : t.push(r), n = r
    }
    return Ze(t)
}

function yW(e) {
    if (this.length > 0) {
        const t = this[0];
        return e ? t.previousElementSibling && Ze(t.previousElementSibling).is(e) ? Ze([t.previousElementSibling]) : Ze([]) : t.previousElementSibling ? Ze([t.previousElementSibling]) : Ze([])
    }
    return Ze([])
}

function CW(e) {
    const t = [];
    let n = this[0];
    if (!n) return Ze([]);
    for (; n.previousElementSibling;) {
        const r = n.previousElementSibling;
        e ? Ze(r).is(e) && t.push(r) : t.push(r), n = r
    }
    return Ze(t)
}

function xW(e) {
    const t = [];
    for (let n = 0; n < this.length; n += 1) this[n].parentNode !== null && (e ? Ze(this[n].parentNode).is(e) && t.push(this[n].parentNode) : t.push(this[n].parentNode));
    return Ze(t)
}

function EW(e) {
    const t = [];
    for (let n = 0; n < this.length; n += 1) {
        let r = this[n].parentNode;
        for (; r;) e ? Ze(r).is(e) && t.push(r) : t.push(r), r = r.parentNode
    }
    return Ze(t)
}

function bW(e) {
    let t = this;
    return typeof e > "u" ? Ze([]) : (t.is(e) || (t = t.parents(e).eq(0)), t)
}

function FW(e) {
    const t = [];
    for (let n = 0; n < this.length; n += 1) {
        const r = this[n].querySelectorAll(e);
        for (let A = 0; A < r.length; A += 1) t.push(r[A])
    }
    return Ze(t)
}

function _W(e) {
    const t = [];
    for (let n = 0; n < this.length; n += 1) {
        const r = this[n].children;
        for (let A = 0; A < r.length; A += 1)(!e || Ze(r[A]).is(e)) && t.push(r[A])
    }
    return Ze(t)
}

function SW() {
    for (let e = 0; e < this.length; e += 1) this[e].parentNode && this[e].parentNode.removeChild(this[e]);
    return this
}
const Sm = {
    addClass: Wz,
    removeClass: jz,
    hasClass: Xz,
    toggleClass: Yz,
    attr: Jz,
    removeAttr: qz,
    transform: Zz,
    transition: eW,
    on: tW,
    off: nW,
    trigger: rW,
    transitionEnd: AW,
    outerWidth: iW,
    outerHeight: sW,
    styles: oW,
    offset: aW,
    css: lW,
    each: uW,
    html: fW,
    text: dW,
    is: hW,
    index: pW,
    eq: gW,
    append: vW,
    prepend: mW,
    next: BW,
    nextAll: wW,
    prev: yW,
    prevAll: CW,
    parent: xW,
    parents: EW,
    closest: bW,
    find: FW,
    children: _W,
    filter: cW,
    remove: SW
};
Object.keys(Sm).forEach(e => {
    Object.defineProperty(Ze.fn, e, {
        value: Sm[e],
        writable: !0
    })
});

function QW(e) {
    const t = e;
    Object.keys(t).forEach(n => {
        try {
            t[n] = null
        } catch {}
        try {
            delete t[n]
        } catch {}
    })
}

function mc(e, t = 0) {
    return setTimeout(e, t)
}

function n0() {
    return Date.now()
}

function UW(e) {
    const t = kn();
    let n;
    return t.getComputedStyle && (n = t.getComputedStyle(e, null)), !n && e.currentStyle && (n = e.currentStyle), n || (n = e.style), n
}

function TW(e, t = "x") {
    const n = kn();
    let r, A, i;
    const s = UW(e);
    return n.WebKitCSSMatrix ? (A = s.transform || s.webkitTransform, A.split(",").length > 6 && (A = A.split(", ").map(a => a.replace(",", ".")).join(", ")), i = new n.WebKitCSSMatrix(A === "none" ? "" : A)) : (i = s.MozTransform || s.OTransform || s.MsTransform || s.msTransform || s.transform || s.getPropertyValue("transform").replace("translate(", "matrix(1, 0, 0, 1,"), r = i.toString().split(",")), t === "x" && (n.WebKitCSSMatrix ? A = i.m41 : r.length === 16 ? A = parseFloat(r[12]) : A = parseFloat(r[4])), t === "y" && (n.WebKitCSSMatrix ? A = i.m42 : r.length === 16 ? A = parseFloat(r[13]) : A = parseFloat(r[5])), A || 0
}

function du(e) {
    return typeof e == "object" && e !== null && e.constructor && Object.prototype.toString.call(e).slice(8, -1) === "Object"
}

function IW(e) {
    return typeof window < "u" && typeof window.HTMLElement < "u" ? e instanceof HTMLElement : e && (e.nodeType === 1 || e.nodeType === 11)
}

function _r(...e) {
    const t = Object(e[0]),
        n = ["__proto__", "constructor", "prototype"];
    for (let r = 1; r < e.length; r += 1) {
        const A = e[r];
        if (A != null && !IW(A)) {
            const i = Object.keys(Object(A)).filter(s => n.indexOf(s) < 0);
            for (let s = 0, a = i.length; s < a; s += 1) {
                const o = i[s],
                    l = Object.getOwnPropertyDescriptor(A, o);
                l !== void 0 && l.enumerable && (du(t[o]) && du(A[o]) ? A[o].__swiper__ ? t[o] = A[o] : _r(t[o], A[o]) : !du(t[o]) && du(A[o]) ? (t[o] = {}, A[o].__swiper__ ? t[o] = A[o] : _r(t[o], A[o])) : t[o] = A[o])
            }
        }
    }
    return t
}

function hu(e, t, n) {
    e.style.setProperty(t, n)
}

function Py({
    swiper: e,
    targetPosition: t,
    side: n
}) {
    const r = kn(),
        A = -e.translate;
    let i = null,
        s;
    const a = e.params.speed;
    e.wrapperEl.style.scrollSnapType = "none", r.cancelAnimationFrame(e.cssModeFrameID);
    const o = t > A ? "next" : "prev",
        l = (f, d) => o === "next" && f >= d || o === "prev" && f <= d,
        u = () => {
            s = new Date().getTime(), i === null && (i = s);
            const f = Math.max(Math.min((s - i) / a, 1), 0),
                d = .5 - Math.cos(f * Math.PI) / 2;
            let p = A + d * (t - A);
            if (l(p, t) && (p = t), e.wrapperEl.scrollTo({
                    [n]: p
                }), l(p, t)) {
                e.wrapperEl.style.overflow = "hidden", e.wrapperEl.style.scrollSnapType = "", setTimeout(() => {
                    e.wrapperEl.style.overflow = "", e.wrapperEl.scrollTo({
                        [n]: p
                    })
                }), r.cancelAnimationFrame(e.cssModeFrameID);
                return
            }
            e.cssModeFrameID = r.requestAnimationFrame(u)
        };
    u()
}
let Sd;

function DW() {
    const e = kn(),
        t = Vn();
    return {
        smoothScroll: t.documentElement && "scrollBehavior" in t.documentElement.style,
        touch: !!("ontouchstart" in e || e.DocumentTouch && t instanceof e.DocumentTouch),
        passiveListener: function() {
            let r = !1;
            try {
                const A = Object.defineProperty({}, "passive", {
                    get() {
                        r = !0
                    }
                });
                e.addEventListener("testPassiveListener", null, A)
            } catch {}
            return r
        }(),
        gestures: function() {
            return "ongesturestart" in e
        }()
    }
}

function Oy() {
    return Sd || (Sd = DW()), Sd
}
let Qd;

function PW({
    userAgent: e
} = {}) {
    const t = Oy(),
        n = kn(),
        r = n.navigator.platform,
        A = e || n.navigator.userAgent,
        i = {
            ios: !1,
            android: !1
        },
        s = n.screen.width,
        a = n.screen.height,
        o = A.match(/(Android);?[\s\/]+([\d.]+)?/);
    let l = A.match(/(iPad).*OS\s([\d_]+)/);
    const u = A.match(/(iPod)(.*OS\s([\d_]+))?/),
        f = !l && A.match(/(iPhone\sOS|iOS)\s([\d_]+)/),
        d = r === "Win32";
    let p = r === "MacIntel";
    const m = ["1024x1366", "1366x1024", "834x1194", "1194x834", "834x1112", "1112x834", "768x1024", "1024x768", "820x1180", "1180x820", "810x1080", "1080x810"];
    return !l && p && t.touch && m.indexOf(`${s}x${a}`) >= 0 && (l = A.match(/(Version)\/([\d.]+)/), l || (l = [0, 1, "13_0_0"]), p = !1), o && !d && (i.os = "android", i.android = !0), (l || f || u) && (i.os = "ios", i.ios = !0), i
}

function OW(e = {}) {
    return Qd || (Qd = PW(e)), Qd
}
let Ud;

function LW() {
    const e = kn();

    function t() {
        const n = e.navigator.userAgent.toLowerCase();
        return n.indexOf("safari") >= 0 && n.indexOf("chrome") < 0 && n.indexOf("android") < 0
    }
    return {
        isSafari: t(),
        isWebView: /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(e.navigator.userAgent)
    }
}

function kW() {
    return Ud || (Ud = LW()), Ud
}

function HW({
    swiper: e,
    on: t,
    emit: n
}) {
    const r = kn();
    let A = null,
        i = null;
    const s = () => {
            !e || e.destroyed || !e.initialized || (n("beforeResize"), n("resize"))
        },
        a = () => {
            !e || e.destroyed || !e.initialized || (A = new ResizeObserver(u => {
                i = r.requestAnimationFrame(() => {
                    const {
                        width: f,
                        height: d
                    } = e;
                    let p = f,
                        m = d;
                    u.forEach(({
                        contentBoxSize: g,
                        contentRect: y,
                        target: w
                    }) => {
                        w && w !== e.el || (p = y ? y.width : (g[0] || g).inlineSize, m = y ? y.height : (g[0] || g).blockSize)
                    }), (p !== f || m !== d) && s()
                })
            }), A.observe(e.el))
        },
        o = () => {
            i && r.cancelAnimationFrame(i), A && A.unobserve && e.el && (A.unobserve(e.el), A = null)
        },
        l = () => {
            !e || e.destroyed || !e.initialized || n("orientationchange")
        };
    t("init", () => {
        if (e.params.resizeObserver && typeof r.ResizeObserver < "u") {
            a();
            return
        }
        r.addEventListener("resize", s), r.addEventListener("orientationchange", l)
    }), t("destroy", () => {
        o(), r.removeEventListener("resize", s), r.removeEventListener("orientationchange", l)
    })
}

function MW({
    swiper: e,
    extendParams: t,
    on: n,
    emit: r
}) {
    const A = [],
        i = kn(),
        s = (l, u = {}) => {
            const f = i.MutationObserver || i.WebkitMutationObserver,
                d = new f(p => {
                    if (p.length === 1) {
                        r("observerUpdate", p[0]);
                        return
                    }
                    const m = function() {
                        r("observerUpdate", p[0])
                    };
                    i.requestAnimationFrame ? i.requestAnimationFrame(m) : i.setTimeout(m, 0)
                });
            d.observe(l, {
                attributes: typeof u.attributes > "u" ? !0 : u.attributes,
                childList: typeof u.childList > "u" ? !0 : u.childList,
                characterData: typeof u.characterData > "u" ? !0 : u.characterData
            }), A.push(d)
        },
        a = () => {
            if (e.params.observer) {
                if (e.params.observeParents) {
                    const l = e.$el.parents();
                    for (let u = 0; u < l.length; u += 1) s(l[u])
                }
                s(e.$el[0], {
                    childList: e.params.observeSlideChildren
                }), s(e.$wrapperEl[0], {
                    attributes: !1
                })
            }
        },
        o = () => {
            A.forEach(l => {
                l.disconnect()
            }), A.splice(0, A.length)
        };
    t({
        observer: !1,
        observeParents: !1,
        observeSlideChildren: !1
    }), n("init", a), n("destroy", o)
}
const RW = {
    on(e, t, n) {
        const r = this;
        if (!r.eventsListeners || r.destroyed || typeof t != "function") return r;
        const A = n ? "unshift" : "push";
        return e.split(" ").forEach(i => {
            r.eventsListeners[i] || (r.eventsListeners[i] = []), r.eventsListeners[i][A](t)
        }), r
    },
    once(e, t, n) {
        const r = this;
        if (!r.eventsListeners || r.destroyed || typeof t != "function") return r;

        function A(...i) {
            r.off(e, A), A.__emitterProxy && delete A.__emitterProxy, t.apply(r, i)
        }
        return A.__emitterProxy = t, r.on(e, A, n)
    },
    onAny(e, t) {
        const n = this;
        if (!n.eventsListeners || n.destroyed || typeof e != "function") return n;
        const r = t ? "unshift" : "push";
        return n.eventsAnyListeners.indexOf(e) < 0 && n.eventsAnyListeners[r](e), n
    },
    offAny(e) {
        const t = this;
        if (!t.eventsListeners || t.destroyed || !t.eventsAnyListeners) return t;
        const n = t.eventsAnyListeners.indexOf(e);
        return n >= 0 && t.eventsAnyListeners.splice(n, 1), t
    },
    off(e, t) {
        const n = this;
        return !n.eventsListeners || n.destroyed || !n.eventsListeners || e.split(" ").forEach(r => {
            typeof t > "u" ? n.eventsListeners[r] = [] : n.eventsListeners[r] && n.eventsListeners[r].forEach((A, i) => {
                (A === t || A.__emitterProxy && A.__emitterProxy === t) && n.eventsListeners[r].splice(i, 1)
            })
        }), n
    },
    emit(...e) {
        const t = this;
        if (!t.eventsListeners || t.destroyed || !t.eventsListeners) return t;
        let n, r, A;
        return typeof e[0] == "string" || Array.isArray(e[0]) ? (n = e[0], r = e.slice(1, e.length), A = t) : (n = e[0].events, r = e[0].data, A = e[0].context || t), r.unshift(A), (Array.isArray(n) ? n : n.split(" ")).forEach(s => {
            t.eventsAnyListeners && t.eventsAnyListeners.length && t.eventsAnyListeners.forEach(a => {
                a.apply(A, [s, ...r])
            }), t.eventsListeners && t.eventsListeners[s] && t.eventsListeners[s].forEach(a => {
                a.apply(A, r)
            })
        }), t
    }
};

function NW() {
    const e = this;
    let t, n;
    const r = e.$el;
    typeof e.params.width < "u" && e.params.width !== null ? t = e.params.width : t = r[0].clientWidth, typeof e.params.height < "u" && e.params.height !== null ? n = e.params.height : n = r[0].clientHeight, !(t === 0 && e.isHorizontal() || n === 0 && e.isVertical()) && (t = t - parseInt(r.css("padding-left") || 0, 10) - parseInt(r.css("padding-right") || 0, 10), n = n - parseInt(r.css("padding-top") || 0, 10) - parseInt(r.css("padding-bottom") || 0, 10), Number.isNaN(t) && (t = 0), Number.isNaN(n) && (n = 0), Object.assign(e, {
        width: t,
        height: n,
        size: e.isHorizontal() ? t : n
    }))
}

function $W() {
    const e = this;

    function t(U) {
        return e.isHorizontal() ? U : {
            width: "height",
            "margin-top": "margin-left",
            "margin-bottom ": "margin-right",
            "margin-left": "margin-top",
            "margin-right": "margin-bottom",
            "padding-left": "padding-top",
            "padding-right": "padding-bottom",
            marginRight: "marginBottom"
        }[U]
    }

    function n(U, Q) {
        return parseFloat(U.getPropertyValue(t(Q)) || 0)
    }
    const r = e.params,
        {
            $wrapperEl: A,
            size: i,
            rtlTranslate: s,
            wrongRTL: a
        } = e,
        o = e.virtual && r.virtual.enabled,
        l = o ? e.virtual.slides.length : e.slides.length,
        u = A.children(`.${e.params.slideClass}`),
        f = o ? e.virtual.slides.length : u.length;
    let d = [];
    const p = [],
        m = [];
    let g = r.slidesOffsetBefore;
    typeof g == "function" && (g = r.slidesOffsetBefore.call(e));
    let y = r.slidesOffsetAfter;
    typeof y == "function" && (y = r.slidesOffsetAfter.call(e));
    const w = e.snapGrid.length,
        B = e.slidesGrid.length;
    let x = r.spaceBetween,
        C = -g,
        b = 0,
        F = 0;
    if (typeof i > "u") return;
    typeof x == "string" && x.indexOf("%") >= 0 && (x = parseFloat(x.replace("%", "")) / 100 * i), e.virtualSize = -x, s ? u.css({
        marginLeft: "",
        marginBottom: "",
        marginTop: ""
    }) : u.css({
        marginRight: "",
        marginBottom: "",
        marginTop: ""
    }), r.centeredSlides && r.cssMode && (hu(e.wrapperEl, "--swiper-centered-offset-before", ""), hu(e.wrapperEl, "--swiper-centered-offset-after", ""));
    const T = r.grid && r.grid.rows > 1 && e.grid;
    T && e.grid.initSlides(f);
    let I;
    const D = r.slidesPerView === "auto" && r.breakpoints && Object.keys(r.breakpoints).filter(U => typeof r.breakpoints[U].slidesPerView < "u").length > 0;
    for (let U = 0; U < f; U += 1) {
        I = 0;
        const Q = u.eq(U);
        if (T && e.grid.updateSlide(U, Q, f, t), Q.css("display") !== "none") {
            if (r.slidesPerView === "auto") {
                D && (u[U].style[t("width")] = "");
                const O = getComputedStyle(Q[0]),
                    N = Q[0].style.transform,
                    J = Q[0].style.webkitTransform;
                if (N && (Q[0].style.transform = "none"), J && (Q[0].style.webkitTransform = "none"), r.roundLengths) I = e.isHorizontal() ? Q.outerWidth(!0) : Q.outerHeight(!0);
                else {
                    const j = n(O, "width"),
                        V = n(O, "padding-left"),
                        ae = n(O, "padding-right"),
                        Y = n(O, "margin-left"),
                        ue = n(O, "margin-right"),
                        ye = O.getPropertyValue("box-sizing");
                    if (ye && ye === "border-box") I = j + Y + ue;
                    else {
                        const {
                            clientWidth: ee,
                            offsetWidth: ce
                        } = Q[0];
                        I = j + V + ae + Y + ue + (ce - ee)
                    }
                }
                N && (Q[0].style.transform = N), J && (Q[0].style.webkitTransform = J), r.roundLengths && (I = Math.floor(I))
            } else I = (i - (r.slidesPerView - 1) * x) / r.slidesPerView, r.roundLengths && (I = Math.floor(I)), u[U] && (u[U].style[t("width")] = `${I}px`);
            u[U] && (u[U].swiperSlideSize = I), m.push(I), r.centeredSlides ? (C = C + I / 2 + b / 2 + x, b === 0 && U !== 0 && (C = C - i / 2 - x), U === 0 && (C = C - i / 2 - x), Math.abs(C) < 1 / 1e3 && (C = 0), r.roundLengths && (C = Math.floor(C)), F % r.slidesPerGroup === 0 && d.push(C), p.push(C)) : (r.roundLengths && (C = Math.floor(C)), (F - Math.min(e.params.slidesPerGroupSkip, F)) % e.params.slidesPerGroup === 0 && d.push(C), p.push(C), C = C + I + x), e.virtualSize += I + x, b = I, F += 1
        }
    }
    if (e.virtualSize = Math.max(e.virtualSize, i) + y, s && a && (r.effect === "slide" || r.effect === "coverflow") && A.css({
            width: `${e.virtualSize+r.spaceBetween}px`
        }), r.setWrapperSize && A.css({
            [t("width")]: `${e.virtualSize+r.spaceBetween}px`
        }), T && e.grid.updateWrapperSize(I, d, t), !r.centeredSlides) {
        const U = [];
        for (let Q = 0; Q < d.length; Q += 1) {
            let O = d[Q];
            r.roundLengths && (O = Math.floor(O)), d[Q] <= e.virtualSize - i && U.push(O)
        }
        d = U, Math.floor(e.virtualSize - i) - Math.floor(d[d.length - 1]) > 1 && d.push(e.virtualSize - i)
    }
    if (d.length === 0 && (d = [0]), r.spaceBetween !== 0) {
        const U = e.isHorizontal() && s ? "marginLeft" : t("marginRight");
        u.filter((Q, O) => r.cssMode ? O !== u.length - 1 : !0).css({
            [U]: `${x}px`
        })
    }
    if (r.centeredSlides && r.centeredSlidesBounds) {
        let U = 0;
        m.forEach(O => {
            U += O + (r.spaceBetween ? r.spaceBetween : 0)
        }), U -= r.spaceBetween;
        const Q = U - i;
        d = d.map(O => O < 0 ? -g : O > Q ? Q + y : O)
    }
    if (r.centerInsufficientSlides) {
        let U = 0;
        if (m.forEach(Q => {
                U += Q + (r.spaceBetween ? r.spaceBetween : 0)
            }), U -= r.spaceBetween, U < i) {
            const Q = (i - U) / 2;
            d.forEach((O, N) => {
                d[N] = O - Q
            }), p.forEach((O, N) => {
                p[N] = O + Q
            })
        }
    }
    if (Object.assign(e, {
            slides: u,
            snapGrid: d,
            slidesGrid: p,
            slidesSizesGrid: m
        }), r.centeredSlides && r.cssMode && !r.centeredSlidesBounds) {
        hu(e.wrapperEl, "--swiper-centered-offset-before", `${-d[0]}px`), hu(e.wrapperEl, "--swiper-centered-offset-after", `${e.size/2-m[m.length-1]/2}px`);
        const U = -e.snapGrid[0],
            Q = -e.slidesGrid[0];
        e.snapGrid = e.snapGrid.map(O => O + U), e.slidesGrid = e.slidesGrid.map(O => O + Q)
    }
    if (f !== l && e.emit("slidesLengthChange"), d.length !== w && (e.params.watchOverflow && e.checkOverflow(), e.emit("snapGridLengthChange")), p.length !== B && e.emit("slidesGridLengthChange"), r.watchSlidesProgress && e.updateSlidesOffset(), !o && !r.cssMode && (r.effect === "slide" || r.effect === "fade")) {
        const U = `${r.containerModifierClass}backface-hidden`,
            Q = e.$el.hasClass(U);
        f <= r.maxBackfaceHiddenSlides ? Q || e.$el.addClass(U) : Q && e.$el.removeClass(U)
    }
}

function KW(e) {
    const t = this,
        n = [],
        r = t.virtual && t.params.virtual.enabled;
    let A = 0,
        i;
    typeof e == "number" ? t.setTransition(e) : e === !0 && t.setTransition(t.params.speed);
    const s = a => r ? t.slides.filter(o => parseInt(o.getAttribute("data-swiper-slide-index"), 10) === a)[0] : t.slides.eq(a)[0];
    if (t.params.slidesPerView !== "auto" && t.params.slidesPerView > 1)
        if (t.params.centeredSlides)(t.visibleSlides || Ze([])).each(a => {
            n.push(a)
        });
        else
            for (i = 0; i < Math.ceil(t.params.slidesPerView); i += 1) {
                const a = t.activeIndex + i;
                if (a > t.slides.length && !r) break;
                n.push(s(a))
            } else n.push(s(t.activeIndex));
    for (i = 0; i < n.length; i += 1)
        if (typeof n[i] < "u") {
            const a = n[i].offsetHeight;
            A = a > A ? a : A
        }(A || A === 0) && t.$wrapperEl.css("height", `${A}px`)
}

function VW() {
    const e = this,
        t = e.slides;
    for (let n = 0; n < t.length; n += 1) t[n].swiperSlideOffset = e.isHorizontal() ? t[n].offsetLeft : t[n].offsetTop
}

function GW(e = this && this.translate || 0) {
    const t = this,
        n = t.params,
        {
            slides: r,
            rtlTranslate: A,
            snapGrid: i
        } = t;
    if (r.length === 0) return;
    typeof r[0].swiperSlideOffset > "u" && t.updateSlidesOffset();
    let s = -e;
    A && (s = e), r.removeClass(n.slideVisibleClass), t.visibleSlidesIndexes = [], t.visibleSlides = [];
    for (let a = 0; a < r.length; a += 1) {
        const o = r[a];
        let l = o.swiperSlideOffset;
        n.cssMode && n.centeredSlides && (l -= r[0].swiperSlideOffset);
        const u = (s + (n.centeredSlides ? t.minTranslate() : 0) - l) / (o.swiperSlideSize + n.spaceBetween),
            f = (s - i[0] + (n.centeredSlides ? t.minTranslate() : 0) - l) / (o.swiperSlideSize + n.spaceBetween),
            d = -(s - l),
            p = d + t.slidesSizesGrid[a];
        (d >= 0 && d < t.size - 1 || p > 1 && p <= t.size || d <= 0 && p >= t.size) && (t.visibleSlides.push(o), t.visibleSlidesIndexes.push(a), r.eq(a).addClass(n.slideVisibleClass)), o.progress = A ? -u : u, o.originalProgress = A ? -f : f
    }
    t.visibleSlides = Ze(t.visibleSlides)
}

function zW(e) {
    const t = this;
    if (typeof e > "u") {
        const l = t.rtlTranslate ? -1 : 1;
        e = t && t.translate && t.translate * l || 0
    }
    const n = t.params,
        r = t.maxTranslate() - t.minTranslate();
    let {
        progress: A,
        isBeginning: i,
        isEnd: s
    } = t;
    const a = i,
        o = s;
    r === 0 ? (A = 0, i = !0, s = !0) : (A = (e - t.minTranslate()) / r, i = A <= 0, s = A >= 1), Object.assign(t, {
        progress: A,
        isBeginning: i,
        isEnd: s
    }), (n.watchSlidesProgress || n.centeredSlides && n.autoHeight) && t.updateSlidesProgress(e), i && !a && t.emit("reachBeginning toEdge"), s && !o && t.emit("reachEnd toEdge"), (a && !i || o && !s) && t.emit("fromEdge"), t.emit("progress", A)
}

function WW() {
    const e = this,
        {
            slides: t,
            params: n,
            $wrapperEl: r,
            activeIndex: A,
            realIndex: i
        } = e,
        s = e.virtual && n.virtual.enabled;
    t.removeClass(`${n.slideActiveClass} ${n.slideNextClass} ${n.slidePrevClass} ${n.slideDuplicateActiveClass} ${n.slideDuplicateNextClass} ${n.slideDuplicatePrevClass}`);
    let a;
    s ? a = e.$wrapperEl.find(`.${n.slideClass}[data-swiper-slide-index="${A}"]`) : a = t.eq(A), a.addClass(n.slideActiveClass), n.loop && (a.hasClass(n.slideDuplicateClass) ? r.children(`.${n.slideClass}:not(.${n.slideDuplicateClass})[data-swiper-slide-index="${i}"]`).addClass(n.slideDuplicateActiveClass) : r.children(`.${n.slideClass}.${n.slideDuplicateClass}[data-swiper-slide-index="${i}"]`).addClass(n.slideDuplicateActiveClass));
    let o = a.nextAll(`.${n.slideClass}`).eq(0).addClass(n.slideNextClass);
    n.loop && o.length === 0 && (o = t.eq(0), o.addClass(n.slideNextClass));
    let l = a.prevAll(`.${n.slideClass}`).eq(0).addClass(n.slidePrevClass);
    n.loop && l.length === 0 && (l = t.eq(-1), l.addClass(n.slidePrevClass)), n.loop && (o.hasClass(n.slideDuplicateClass) ? r.children(`.${n.slideClass}:not(.${n.slideDuplicateClass})[data-swiper-slide-index="${o.attr("data-swiper-slide-index")}"]`).addClass(n.slideDuplicateNextClass) : r.children(`.${n.slideClass}.${n.slideDuplicateClass}[data-swiper-slide-index="${o.attr("data-swiper-slide-index")}"]`).addClass(n.slideDuplicateNextClass), l.hasClass(n.slideDuplicateClass) ? r.children(`.${n.slideClass}:not(.${n.slideDuplicateClass})[data-swiper-slide-index="${l.attr("data-swiper-slide-index")}"]`).addClass(n.slideDuplicatePrevClass) : r.children(`.${n.slideClass}.${n.slideDuplicateClass}[data-swiper-slide-index="${l.attr("data-swiper-slide-index")}"]`).addClass(n.slideDuplicatePrevClass)), e.emitSlidesClasses()
}

function jW(e) {
    const t = this,
        n = t.rtlTranslate ? t.translate : -t.translate,
        {
            slidesGrid: r,
            snapGrid: A,
            params: i,
            activeIndex: s,
            realIndex: a,
            snapIndex: o
        } = t;
    let l = e,
        u;
    if (typeof l > "u") {
        for (let d = 0; d < r.length; d += 1) typeof r[d + 1] < "u" ? n >= r[d] && n < r[d + 1] - (r[d + 1] - r[d]) / 2 ? l = d : n >= r[d] && n < r[d + 1] && (l = d + 1) : n >= r[d] && (l = d);
        i.normalizeSlideIndex && (l < 0 || typeof l > "u") && (l = 0)
    }
    if (A.indexOf(n) >= 0) u = A.indexOf(n);
    else {
        const d = Math.min(i.slidesPerGroupSkip, l);
        u = d + Math.floor((l - d) / i.slidesPerGroup)
    }
    if (u >= A.length && (u = A.length - 1), l === s) {
        u !== o && (t.snapIndex = u, t.emit("snapIndexChange"));
        return
    }
    const f = parseInt(t.slides.eq(l).attr("data-swiper-slide-index") || l, 10);
    Object.assign(t, {
        snapIndex: u,
        realIndex: f,
        previousIndex: s,
        activeIndex: l
    }), t.emit("activeIndexChange"), t.emit("snapIndexChange"), a !== f && t.emit("realIndexChange"), (t.initialized || t.params.runCallbacksOnInit) && t.emit("slideChange")
}

function YW(e) {
    const t = this,
        n = t.params,
        r = Ze(e).closest(`.${n.slideClass}`)[0];
    let A = !1,
        i;
    if (r) {
        for (let s = 0; s < t.slides.length; s += 1)
            if (t.slides[s] === r) {
                A = !0, i = s;
                break
            }
    }
    if (r && A) t.clickedSlide = r, t.virtual && t.params.virtual.enabled ? t.clickedIndex = parseInt(Ze(r).attr("data-swiper-slide-index"), 10) : t.clickedIndex = i;
    else {
        t.clickedSlide = void 0, t.clickedIndex = void 0;
        return
    }
    n.slideToClickedSlide && t.clickedIndex !== void 0 && t.clickedIndex !== t.activeIndex && t.slideToClickedSlide()
}
const XW = {
    updateSize: NW,
    updateSlides: $W,
    updateAutoHeight: KW,
    updateSlidesOffset: VW,
    updateSlidesProgress: GW,
    updateProgress: zW,
    updateSlidesClasses: WW,
    updateActiveIndex: jW,
    updateClickedSlide: YW
};

function JW(e = this.isHorizontal() ? "x" : "y") {
    const t = this,
        {
            params: n,
            rtlTranslate: r,
            translate: A,
            $wrapperEl: i
        } = t;
    if (n.virtualTranslate) return r ? -A : A;
    if (n.cssMode) return A;
    let s = TW(i[0], e);
    return r && (s = -s), s || 0
}

function qW(e, t) {
    const n = this,
        {
            rtlTranslate: r,
            params: A,
            $wrapperEl: i,
            wrapperEl: s,
            progress: a
        } = n;
    let o = 0,
        l = 0;
    const u = 0;
    n.isHorizontal() ? o = r ? -e : e : l = e, A.roundLengths && (o = Math.floor(o), l = Math.floor(l)), A.cssMode ? s[n.isHorizontal() ? "scrollLeft" : "scrollTop"] = n.isHorizontal() ? -o : -l : A.virtualTranslate || i.transform(`translate3d(${o}px, ${l}px, ${u}px)`), n.previousTranslate = n.translate, n.translate = n.isHorizontal() ? o : l;
    let f;
    const d = n.maxTranslate() - n.minTranslate();
    d === 0 ? f = 0 : f = (e - n.minTranslate()) / d, f !== a && n.updateProgress(e), n.emit("setTranslate", n.translate, t)
}

function ZW() {
    return -this.snapGrid[0]
}

function ej() {
    return -this.snapGrid[this.snapGrid.length - 1]
}

function tj(e = 0, t = this.params.speed, n = !0, r = !0, A) {
    const i = this,
        {
            params: s,
            wrapperEl: a
        } = i;
    if (i.animating && s.preventInteractionOnTransition) return !1;
    const o = i.minTranslate(),
        l = i.maxTranslate();
    let u;
    if (r && e > o ? u = o : r && e < l ? u = l : u = e, i.updateProgress(u), s.cssMode) {
        const f = i.isHorizontal();
        if (t === 0) a[f ? "scrollLeft" : "scrollTop"] = -u;
        else {
            if (!i.support.smoothScroll) return Py({
                swiper: i,
                targetPosition: -u,
                side: f ? "left" : "top"
            }), !0;
            a.scrollTo({
                [f ? "left" : "top"]: -u,
                behavior: "smooth"
            })
        }
        return !0
    }
    return t === 0 ? (i.setTransition(0), i.setTranslate(u), n && (i.emit("beforeTransitionStart", t, A), i.emit("transitionEnd"))) : (i.setTransition(t), i.setTranslate(u), n && (i.emit("beforeTransitionStart", t, A), i.emit("transitionStart")), i.animating || (i.animating = !0, i.onTranslateToWrapperTransitionEnd || (i.onTranslateToWrapperTransitionEnd = function(d) {
        !i || i.destroyed || d.target === this && (i.$wrapperEl[0].removeEventListener("transitionend", i.onTranslateToWrapperTransitionEnd), i.$wrapperEl[0].removeEventListener("webkitTransitionEnd", i.onTranslateToWrapperTransitionEnd), i.onTranslateToWrapperTransitionEnd = null, delete i.onTranslateToWrapperTransitionEnd, n && i.emit("transitionEnd"))
    }), i.$wrapperEl[0].addEventListener("transitionend", i.onTranslateToWrapperTransitionEnd), i.$wrapperEl[0].addEventListener("webkitTransitionEnd", i.onTranslateToWrapperTransitionEnd))), !0
}
const nj = {
    getTranslate: JW,
    setTranslate: qW,
    minTranslate: ZW,
    maxTranslate: ej,
    translateTo: tj
};

function rj(e, t) {
    const n = this;
    n.params.cssMode || n.$wrapperEl.transition(e), n.emit("setTransition", e, t)
}

function Ly({
    swiper: e,
    runCallbacks: t,
    direction: n,
    step: r
}) {
    const {
        activeIndex: A,
        previousIndex: i
    } = e;
    let s = n;
    if (s || (A > i ? s = "next" : A < i ? s = "prev" : s = "reset"), e.emit(`transition${r}`), t && A !== i) {
        if (s === "reset") {
            e.emit(`slideResetTransition${r}`);
            return
        }
        e.emit(`slideChangeTransition${r}`), s === "next" ? e.emit(`slideNextTransition${r}`) : e.emit(`slidePrevTransition${r}`)
    }
}

function Aj(e = !0, t) {
    const n = this,
        {
            params: r
        } = n;
    r.cssMode || (r.autoHeight && n.updateAutoHeight(), Ly({
        swiper: n,
        runCallbacks: e,
        direction: t,
        step: "Start"
    }))
}

function ij(e = !0, t) {
    const n = this,
        {
            params: r
        } = n;
    n.animating = !1, !r.cssMode && (n.setTransition(0), Ly({
        swiper: n,
        runCallbacks: e,
        direction: t,
        step: "End"
    }))
}
const sj = {
    setTransition: rj,
    transitionStart: Aj,
    transitionEnd: ij
};

function aj(e = 0, t = this.params.speed, n = !0, r, A) {
    if (typeof e != "number" && typeof e != "string") throw new Error(`The 'index' argument cannot have type other than 'number' or 'string'. [${typeof e}] given.`);
    if (typeof e == "string") {
        const x = parseInt(e, 10);
        if (!isFinite(x)) throw new Error(`The passed-in 'index' (string) couldn't be converted to 'number'. [${e}] given.`);
        e = x
    }
    const i = this;
    let s = e;
    s < 0 && (s = 0);
    const {
        params: a,
        snapGrid: o,
        slidesGrid: l,
        previousIndex: u,
        activeIndex: f,
        rtlTranslate: d,
        wrapperEl: p,
        enabled: m
    } = i;
    if (i.animating && a.preventInteractionOnTransition || !m && !r && !A) return !1;
    const g = Math.min(i.params.slidesPerGroupSkip, s);
    let y = g + Math.floor((s - g) / i.params.slidesPerGroup);
    y >= o.length && (y = o.length - 1);
    const w = -o[y];
    if (a.normalizeSlideIndex)
        for (let x = 0; x < l.length; x += 1) {
            const C = -Math.floor(w * 100),
                b = Math.floor(l[x] * 100),
                F = Math.floor(l[x + 1] * 100);
            typeof l[x + 1] < "u" ? C >= b && C < F - (F - b) / 2 ? s = x : C >= b && C < F && (s = x + 1) : C >= b && (s = x)
        }
    if (i.initialized && s !== f && (!i.allowSlideNext && w < i.translate && w < i.minTranslate() || !i.allowSlidePrev && w > i.translate && w > i.maxTranslate() && (f || 0) !== s)) return !1;
    s !== (u || 0) && n && i.emit("beforeSlideChangeStart"), i.updateProgress(w);
    let B;
    if (s > f ? B = "next" : s < f ? B = "prev" : B = "reset", d && -w === i.translate || !d && w === i.translate) return i.updateActiveIndex(s), a.autoHeight && i.updateAutoHeight(), i.updateSlidesClasses(), a.effect !== "slide" && i.setTranslate(w), B !== "reset" && (i.transitionStart(n, B), i.transitionEnd(n, B)), !1;
    if (a.cssMode) {
        const x = i.isHorizontal(),
            C = d ? w : -w;
        if (t === 0) {
            const b = i.virtual && i.params.virtual.enabled;
            b && (i.wrapperEl.style.scrollSnapType = "none", i._immediateVirtual = !0), p[x ? "scrollLeft" : "scrollTop"] = C, b && requestAnimationFrame(() => {
                i.wrapperEl.style.scrollSnapType = "", i._swiperImmediateVirtual = !1
            })
        } else {
            if (!i.support.smoothScroll) return Py({
                swiper: i,
                targetPosition: C,
                side: x ? "left" : "top"
            }), !0;
            p.scrollTo({
                [x ? "left" : "top"]: C,
                behavior: "smooth"
            })
        }
        return !0
    }
    return i.setTransition(t), i.setTranslate(w), i.updateActiveIndex(s), i.updateSlidesClasses(), i.emit("beforeTransitionStart", t, r), i.transitionStart(n, B), t === 0 ? i.transitionEnd(n, B) : i.animating || (i.animating = !0, i.onSlideToWrapperTransitionEnd || (i.onSlideToWrapperTransitionEnd = function(C) {
        !i || i.destroyed || C.target === this && (i.$wrapperEl[0].removeEventListener("transitionend", i.onSlideToWrapperTransitionEnd), i.$wrapperEl[0].removeEventListener("webkitTransitionEnd", i.onSlideToWrapperTransitionEnd), i.onSlideToWrapperTransitionEnd = null, delete i.onSlideToWrapperTransitionEnd, i.transitionEnd(n, B))
    }), i.$wrapperEl[0].addEventListener("transitionend", i.onSlideToWrapperTransitionEnd), i.$wrapperEl[0].addEventListener("webkitTransitionEnd", i.onSlideToWrapperTransitionEnd)), !0
}

function oj(e = 0, t = this.params.speed, n = !0, r) {
    if (typeof e == "string") {
        const s = parseInt(e, 10);
        if (!isFinite(s)) throw new Error(`The passed-in 'index' (string) couldn't be converted to 'number'. [${e}] given.`);
        e = s
    }
    const A = this;
    let i = e;
    return A.params.loop && (i += A.loopedSlides), A.slideTo(i, t, n, r)
}

function lj(e = this.params.speed, t = !0, n) {
    const r = this,
        {
            animating: A,
            enabled: i,
            params: s
        } = r;
    if (!i) return r;
    let a = s.slidesPerGroup;
    s.slidesPerView === "auto" && s.slidesPerGroup === 1 && s.slidesPerGroupAuto && (a = Math.max(r.slidesPerViewDynamic("current", !0), 1));
    const o = r.activeIndex < s.slidesPerGroupSkip ? 1 : a;
    if (s.loop) {
        if (A && s.loopPreventsSlide) return !1;
        r.loopFix(), r._clientLeft = r.$wrapperEl[0].clientLeft
    }
    return s.rewind && r.isEnd ? r.slideTo(0, e, t, n) : r.slideTo(r.activeIndex + o, e, t, n)
}

function uj(e = this.params.speed, t = !0, n) {
    const r = this,
        {
            params: A,
            animating: i,
            snapGrid: s,
            slidesGrid: a,
            rtlTranslate: o,
            enabled: l
        } = r;
    if (!l) return r;
    if (A.loop) {
        if (i && A.loopPreventsSlide) return !1;
        r.loopFix(), r._clientLeft = r.$wrapperEl[0].clientLeft
    }
    const u = o ? r.translate : -r.translate;

    function f(y) {
        return y < 0 ? -Math.floor(Math.abs(y)) : Math.floor(y)
    }
    const d = f(u),
        p = s.map(y => f(y));
    let m = s[p.indexOf(d) - 1];
    if (typeof m > "u" && A.cssMode) {
        let y;
        s.forEach((w, B) => {
            d >= w && (y = B)
        }), typeof y < "u" && (m = s[y > 0 ? y - 1 : y])
    }
    let g = 0;
    if (typeof m < "u" && (g = a.indexOf(m), g < 0 && (g = r.activeIndex - 1), A.slidesPerView === "auto" && A.slidesPerGroup === 1 && A.slidesPerGroupAuto && (g = g - r.slidesPerViewDynamic("previous", !0) + 1, g = Math.max(g, 0))), A.rewind && r.isBeginning) {
        const y = r.params.virtual && r.params.virtual.enabled && r.virtual ? r.virtual.slides.length - 1 : r.slides.length - 1;
        return r.slideTo(y, e, t, n)
    }
    return r.slideTo(g, e, t, n)
}

function cj(e = this.params.speed, t = !0, n) {
    const r = this;
    return r.slideTo(r.activeIndex, e, t, n)
}

function fj(e = this.params.speed, t = !0, n, r = .5) {
    const A = this;
    let i = A.activeIndex;
    const s = Math.min(A.params.slidesPerGroupSkip, i),
        a = s + Math.floor((i - s) / A.params.slidesPerGroup),
        o = A.rtlTranslate ? A.translate : -A.translate;
    if (o >= A.snapGrid[a]) {
        const l = A.snapGrid[a],
            u = A.snapGrid[a + 1];
        o - l > (u - l) * r && (i += A.params.slidesPerGroup)
    } else {
        const l = A.snapGrid[a - 1],
            u = A.snapGrid[a];
        o - l <= (u - l) * r && (i -= A.params.slidesPerGroup)
    }
    return i = Math.max(i, 0), i = Math.min(i, A.slidesGrid.length - 1), A.slideTo(i, e, t, n)
}

function dj() {
    const e = this,
        {
            params: t,
            $wrapperEl: n
        } = e,
        r = t.slidesPerView === "auto" ? e.slidesPerViewDynamic() : t.slidesPerView;
    let A = e.clickedIndex,
        i;
    if (t.loop) {
        if (e.animating) return;
        i = parseInt(Ze(e.clickedSlide).attr("data-swiper-slide-index"), 10), t.centeredSlides ? A < e.loopedSlides - r / 2 || A > e.slides.length - e.loopedSlides + r / 2 ? (e.loopFix(), A = n.children(`.${t.slideClass}[data-swiper-slide-index="${i}"]:not(.${t.slideDuplicateClass})`).eq(0).index(), mc(() => {
            e.slideTo(A)
        })) : e.slideTo(A) : A > e.slides.length - r ? (e.loopFix(), A = n.children(`.${t.slideClass}[data-swiper-slide-index="${i}"]:not(.${t.slideDuplicateClass})`).eq(0).index(), mc(() => {
            e.slideTo(A)
        })) : e.slideTo(A)
    } else e.slideTo(A)
}
const hj = {
    slideTo: aj,
    slideToLoop: oj,
    slideNext: lj,
    slidePrev: uj,
    slideReset: cj,
    slideToClosest: fj,
    slideToClickedSlide: dj
};

function pj() {
    const e = this,
        t = Vn(),
        {
            params: n,
            $wrapperEl: r
        } = e,
        A = r.children().length > 0 ? Ze(r.children()[0].parentNode) : r;
    A.children(`.${n.slideClass}.${n.slideDuplicateClass}`).remove();
    let i = A.children(`.${n.slideClass}`);
    if (n.loopFillGroupWithBlank) {
        const o = n.slidesPerGroup - i.length % n.slidesPerGroup;
        if (o !== n.slidesPerGroup) {
            for (let l = 0; l < o; l += 1) {
                const u = Ze(t.createElement("div")).addClass(`${n.slideClass} ${n.slideBlankClass}`);
                A.append(u)
            }
            i = A.children(`.${n.slideClass}`)
        }
    }
    n.slidesPerView === "auto" && !n.loopedSlides && (n.loopedSlides = i.length), e.loopedSlides = Math.ceil(parseFloat(n.loopedSlides || n.slidesPerView, 10)), e.loopedSlides += n.loopAdditionalSlides, e.loopedSlides > i.length && e.params.loopedSlidesLimit && (e.loopedSlides = i.length);
    const s = [],
        a = [];
    i.each((o, l) => {
        Ze(o).attr("data-swiper-slide-index", l)
    });
    for (let o = 0; o < e.loopedSlides; o += 1) {
        const l = o - Math.floor(o / i.length) * i.length;
        a.push(i.eq(l)[0]), s.unshift(i.eq(i.length - l - 1)[0])
    }
    for (let o = 0; o < a.length; o += 1) A.append(Ze(a[o].cloneNode(!0)).addClass(n.slideDuplicateClass));
    for (let o = s.length - 1; o >= 0; o -= 1) A.prepend(Ze(s[o].cloneNode(!0)).addClass(n.slideDuplicateClass))
}

function gj() {
    const e = this;
    e.emit("beforeLoopFix");
    const {
        activeIndex: t,
        slides: n,
        loopedSlides: r,
        allowSlidePrev: A,
        allowSlideNext: i,
        snapGrid: s,
        rtlTranslate: a
    } = e;
    let o;
    e.allowSlidePrev = !0, e.allowSlideNext = !0;
    const u = -s[t] - e.getTranslate();
    t < r ? (o = n.length - r * 3 + t, o += r, e.slideTo(o, 0, !1, !0) && u !== 0 && e.setTranslate((a ? -e.translate : e.translate) - u)) : t >= n.length - r && (o = -n.length + t + r, o += r, e.slideTo(o, 0, !1, !0) && u !== 0 && e.setTranslate((a ? -e.translate : e.translate) - u)), e.allowSlidePrev = A, e.allowSlideNext = i, e.emit("loopFix")
}

function vj() {
    const e = this,
        {
            $wrapperEl: t,
            params: n,
            slides: r
        } = e;
    t.children(`.${n.slideClass}.${n.slideDuplicateClass},.${n.slideClass}.${n.slideBlankClass}`).remove(), r.removeAttr("data-swiper-slide-index")
}
const mj = {
    loopCreate: pj,
    loopFix: gj,
    loopDestroy: vj
};

function Bj(e) {
    const t = this;
    if (t.support.touch || !t.params.simulateTouch || t.params.watchOverflow && t.isLocked || t.params.cssMode) return;
    const n = t.params.touchEventsTarget === "container" ? t.el : t.wrapperEl;
    n.style.cursor = "move", n.style.cursor = e ? "grabbing" : "grab"
}

function wj() {
    const e = this;
    e.support.touch || e.params.watchOverflow && e.isLocked || e.params.cssMode || (e[e.params.touchEventsTarget === "container" ? "el" : "wrapperEl"].style.cursor = "")
}
const yj = {
    setGrabCursor: Bj,
    unsetGrabCursor: wj
};

function Cj(e, t = this) {
    function n(r) {
        if (!r || r === Vn() || r === kn()) return null;
        r.assignedSlot && (r = r.assignedSlot);
        const A = r.closest(e);
        return !A && !r.getRootNode ? null : A || n(r.getRootNode().host)
    }
    return n(t)
}

function xj(e) {
    const t = this,
        n = Vn(),
        r = kn(),
        A = t.touchEventsData,
        {
            params: i,
            touches: s,
            enabled: a
        } = t;
    if (!a || t.animating && i.preventInteractionOnTransition) return;
    !t.animating && i.cssMode && i.loop && t.loopFix();
    let o = e;
    o.originalEvent && (o = o.originalEvent);
    let l = Ze(o.target);
    if (i.touchEventsTarget === "wrapper" && !l.closest(t.wrapperEl).length || (A.isTouchEvent = o.type === "touchstart", !A.isTouchEvent && "which" in o && o.which === 3) || !A.isTouchEvent && "button" in o && o.button > 0 || A.isTouched && A.isMoved) return;
    const u = !!i.noSwipingClass && i.noSwipingClass !== "",
        f = e.composedPath ? e.composedPath() : e.path;
    u && o.target && o.target.shadowRoot && f && (l = Ze(f[0]));
    const d = i.noSwipingSelector ? i.noSwipingSelector : `.${i.noSwipingClass}`,
        p = !!(o.target && o.target.shadowRoot);
    if (i.noSwiping && (p ? Cj(d, l[0]) : l.closest(d)[0])) {
        t.allowClick = !0;
        return
    }
    if (i.swipeHandler && !l.closest(i.swipeHandler)[0]) return;
    s.currentX = o.type === "touchstart" ? o.targetTouches[0].pageX : o.pageX, s.currentY = o.type === "touchstart" ? o.targetTouches[0].pageY : o.pageY;
    const m = s.currentX,
        g = s.currentY,
        y = i.edgeSwipeDetection || i.iOSEdgeSwipeDetection,
        w = i.edgeSwipeThreshold || i.iOSEdgeSwipeThreshold;
    if (y && (m <= w || m >= r.innerWidth - w))
        if (y === "prevent") e.preventDefault();
        else return;
    if (Object.assign(A, {
            isTouched: !0,
            isMoved: !1,
            allowTouchCallbacks: !0,
            isScrolling: void 0,
            startMoving: void 0
        }), s.startX = m, s.startY = g, A.touchStartTime = n0(), t.allowClick = !0, t.updateSize(), t.swipeDirection = void 0, i.threshold > 0 && (A.allowThresholdMove = !1), o.type !== "touchstart") {
        let B = !0;
        l.is(A.focusableElements) && (B = !1, l[0].nodeName === "SELECT" && (A.isTouched = !1)), n.activeElement && Ze(n.activeElement).is(A.focusableElements) && n.activeElement !== l[0] && n.activeElement.blur();
        const x = B && t.allowTouchMove && i.touchStartPreventDefault;
        (i.touchStartForcePreventDefault || x) && !l[0].isContentEditable && o.preventDefault()
    }
    t.params.freeMode && t.params.freeMode.enabled && t.freeMode && t.animating && !i.cssMode && t.freeMode.onTouchStart(), t.emit("touchStart", o)
}

function Ej(e) {
    const t = Vn(),
        n = this,
        r = n.touchEventsData,
        {
            params: A,
            touches: i,
            rtlTranslate: s,
            enabled: a
        } = n;
    if (!a) return;
    let o = e;
    if (o.originalEvent && (o = o.originalEvent), !r.isTouched) {
        r.startMoving && r.isScrolling && n.emit("touchMoveOpposite", o);
        return
    }
    if (r.isTouchEvent && o.type !== "touchmove") return;
    const l = o.type === "touchmove" && o.targetTouches && (o.targetTouches[0] || o.changedTouches[0]),
        u = o.type === "touchmove" ? l.pageX : o.pageX,
        f = o.type === "touchmove" ? l.pageY : o.pageY;
    if (o.preventedByNestedSwiper) {
        i.startX = u, i.startY = f;
        return
    }
    if (!n.allowTouchMove) {
        Ze(o.target).is(r.focusableElements) || (n.allowClick = !1), r.isTouched && (Object.assign(i, {
            startX: u,
            startY: f,
            currentX: u,
            currentY: f
        }), r.touchStartTime = n0());
        return
    }
    if (r.isTouchEvent && A.touchReleaseOnEdges && !A.loop) {
        if (n.isVertical()) {
            if (f < i.startY && n.translate <= n.maxTranslate() || f > i.startY && n.translate >= n.minTranslate()) {
                r.isTouched = !1, r.isMoved = !1;
                return
            }
        } else if (u < i.startX && n.translate <= n.maxTranslate() || u > i.startX && n.translate >= n.minTranslate()) return
    }
    if (r.isTouchEvent && t.activeElement && o.target === t.activeElement && Ze(o.target).is(r.focusableElements)) {
        r.isMoved = !0, n.allowClick = !1;
        return
    }
    if (r.allowTouchCallbacks && n.emit("touchMove", o), o.targetTouches && o.targetTouches.length > 1) return;
    i.currentX = u, i.currentY = f;
    const d = i.currentX - i.startX,
        p = i.currentY - i.startY;
    if (n.params.threshold && Math.sqrt(d ** 2 + p ** 2) < n.params.threshold) return;
    if (typeof r.isScrolling > "u") {
        let w;
        n.isHorizontal() && i.currentY === i.startY || n.isVertical() && i.currentX === i.startX ? r.isScrolling = !1 : d * d + p * p >= 25 && (w = Math.atan2(Math.abs(p), Math.abs(d)) * 180 / Math.PI, r.isScrolling = n.isHorizontal() ? w > A.touchAngle : 90 - w > A.touchAngle)
    }
    if (r.isScrolling && n.emit("touchMoveOpposite", o), typeof r.startMoving > "u" && (i.currentX !== i.startX || i.currentY !== i.startY) && (r.startMoving = !0), r.isScrolling) {
        r.isTouched = !1;
        return
    }
    if (!r.startMoving) return;
    n.allowClick = !1, !A.cssMode && o.cancelable && o.preventDefault(), A.touchMoveStopPropagation && !A.nested && o.stopPropagation(), r.isMoved || (A.loop && !A.cssMode && n.loopFix(), r.startTranslate = n.getTranslate(), n.setTransition(0), n.animating && n.$wrapperEl.trigger("webkitTransitionEnd transitionend"), r.allowMomentumBounce = !1, A.grabCursor && (n.allowSlideNext === !0 || n.allowSlidePrev === !0) && n.setGrabCursor(!0), n.emit("sliderFirstMove", o)), n.emit("sliderMove", o), r.isMoved = !0;
    let m = n.isHorizontal() ? d : p;
    i.diff = m, m *= A.touchRatio, s && (m = -m), n.swipeDirection = m > 0 ? "prev" : "next", r.currentTranslate = m + r.startTranslate;
    let g = !0,
        y = A.resistanceRatio;
    if (A.touchReleaseOnEdges && (y = 0), m > 0 && r.currentTranslate > n.minTranslate() ? (g = !1, A.resistance && (r.currentTranslate = n.minTranslate() - 1 + (-n.minTranslate() + r.startTranslate + m) ** y)) : m < 0 && r.currentTranslate < n.maxTranslate() && (g = !1, A.resistance && (r.currentTranslate = n.maxTranslate() + 1 - (n.maxTranslate() - r.startTranslate - m) ** y)), g && (o.preventedByNestedSwiper = !0), !n.allowSlideNext && n.swipeDirection === "next" && r.currentTranslate < r.startTranslate && (r.currentTranslate = r.startTranslate), !n.allowSlidePrev && n.swipeDirection === "prev" && r.currentTranslate > r.startTranslate && (r.currentTranslate = r.startTranslate), !n.allowSlidePrev && !n.allowSlideNext && (r.currentTranslate = r.startTranslate), A.threshold > 0)
        if (Math.abs(m) > A.threshold || r.allowThresholdMove) {
            if (!r.allowThresholdMove) {
                r.allowThresholdMove = !0, i.startX = i.currentX, i.startY = i.currentY, r.currentTranslate = r.startTranslate, i.diff = n.isHorizontal() ? i.currentX - i.startX : i.currentY - i.startY;
                return
            }
        } else {
            r.currentTranslate = r.startTranslate;
            return
        }!A.followFinger || A.cssMode || ((A.freeMode && A.freeMode.enabled && n.freeMode || A.watchSlidesProgress) && (n.updateActiveIndex(), n.updateSlidesClasses()), n.params.freeMode && A.freeMode.enabled && n.freeMode && n.freeMode.onTouchMove(), n.updateProgress(r.currentTranslate), n.setTranslate(r.currentTranslate))
}

function bj(e) {
    const t = this,
        n = t.touchEventsData,
        {
            params: r,
            touches: A,
            rtlTranslate: i,
            slidesGrid: s,
            enabled: a
        } = t;
    if (!a) return;
    let o = e;
    if (o.originalEvent && (o = o.originalEvent), n.allowTouchCallbacks && t.emit("touchEnd", o), n.allowTouchCallbacks = !1, !n.isTouched) {
        n.isMoved && r.grabCursor && t.setGrabCursor(!1), n.isMoved = !1, n.startMoving = !1;
        return
    }
    r.grabCursor && n.isMoved && n.isTouched && (t.allowSlideNext === !0 || t.allowSlidePrev === !0) && t.setGrabCursor(!1);
    const l = n0(),
        u = l - n.touchStartTime;
    if (t.allowClick) {
        const B = o.path || o.composedPath && o.composedPath();
        t.updateClickedSlide(B && B[0] || o.target), t.emit("tap click", o), u < 300 && l - n.lastClickTime < 300 && t.emit("doubleTap doubleClick", o)
    }
    if (n.lastClickTime = n0(), mc(() => {
            t.destroyed || (t.allowClick = !0)
        }), !n.isTouched || !n.isMoved || !t.swipeDirection || A.diff === 0 || n.currentTranslate === n.startTranslate) {
        n.isTouched = !1, n.isMoved = !1, n.startMoving = !1;
        return
    }
    n.isTouched = !1, n.isMoved = !1, n.startMoving = !1;
    let f;
    if (r.followFinger ? f = i ? t.translate : -t.translate : f = -n.currentTranslate, r.cssMode) return;
    if (t.params.freeMode && r.freeMode.enabled) {
        t.freeMode.onTouchEnd({
            currentPos: f
        });
        return
    }
    let d = 0,
        p = t.slidesSizesGrid[0];
    for (let B = 0; B < s.length; B += B < r.slidesPerGroupSkip ? 1 : r.slidesPerGroup) {
        const x = B < r.slidesPerGroupSkip - 1 ? 1 : r.slidesPerGroup;
        typeof s[B + x] < "u" ? f >= s[B] && f < s[B + x] && (d = B, p = s[B + x] - s[B]) : f >= s[B] && (d = B, p = s[s.length - 1] - s[s.length - 2])
    }
    let m = null,
        g = null;
    r.rewind && (t.isBeginning ? g = t.params.virtual && t.params.virtual.enabled && t.virtual ? t.virtual.slides.length - 1 : t.slides.length - 1 : t.isEnd && (m = 0));
    const y = (f - s[d]) / p,
        w = d < r.slidesPerGroupSkip - 1 ? 1 : r.slidesPerGroup;
    if (u > r.longSwipesMs) {
        if (!r.longSwipes) {
            t.slideTo(t.activeIndex);
            return
        }
        t.swipeDirection === "next" && (y >= r.longSwipesRatio ? t.slideTo(r.rewind && t.isEnd ? m : d + w) : t.slideTo(d)), t.swipeDirection === "prev" && (y > 1 - r.longSwipesRatio ? t.slideTo(d + w) : g !== null && y < 0 && Math.abs(y) > r.longSwipesRatio ? t.slideTo(g) : t.slideTo(d))
    } else {
        if (!r.shortSwipes) {
            t.slideTo(t.activeIndex);
            return
        }
        t.navigation && (o.target === t.navigation.nextEl || o.target === t.navigation.prevEl) ? o.target === t.navigation.nextEl ? t.slideTo(d + w) : t.slideTo(d) : (t.swipeDirection === "next" && t.slideTo(m !== null ? m : d + w), t.swipeDirection === "prev" && t.slideTo(g !== null ? g : d))
    }
}

function Qm() {
    const e = this,
        {
            params: t,
            el: n
        } = e;
    if (n && n.offsetWidth === 0) return;
    t.breakpoints && e.setBreakpoint();
    const {
        allowSlideNext: r,
        allowSlidePrev: A,
        snapGrid: i
    } = e;
    e.allowSlideNext = !0, e.allowSlidePrev = !0, e.updateSize(), e.updateSlides(), e.updateSlidesClasses(), (t.slidesPerView === "auto" || t.slidesPerView > 1) && e.isEnd && !e.isBeginning && !e.params.centeredSlides ? e.slideTo(e.slides.length - 1, 0, !1, !0) : e.slideTo(e.activeIndex, 0, !1, !0), e.autoplay && e.autoplay.running && e.autoplay.paused && e.autoplay.run(), e.allowSlidePrev = A, e.allowSlideNext = r, e.params.watchOverflow && i !== e.snapGrid && e.checkOverflow()
}

function Fj(e) {
    const t = this;
    t.enabled && (t.allowClick || (t.params.preventClicks && e.preventDefault(), t.params.preventClicksPropagation && t.animating && (e.stopPropagation(), e.stopImmediatePropagation())))
}

function _j() {
    const e = this,
        {
            wrapperEl: t,
            rtlTranslate: n,
            enabled: r
        } = e;
    if (!r) return;
    e.previousTranslate = e.translate, e.isHorizontal() ? e.translate = -t.scrollLeft : e.translate = -t.scrollTop, e.translate === 0 && (e.translate = 0), e.updateActiveIndex(), e.updateSlidesClasses();
    let A;
    const i = e.maxTranslate() - e.minTranslate();
    i === 0 ? A = 0 : A = (e.translate - e.minTranslate()) / i, A !== e.progress && e.updateProgress(n ? -e.translate : e.translate), e.emit("setTranslate", e.translate, !1)
}
let Um = !1;

function Sj() {}
const ky = (e, t) => {
    const n = Vn(),
        {
            params: r,
            touchEvents: A,
            el: i,
            wrapperEl: s,
            device: a,
            support: o
        } = e,
        l = !!r.nested,
        u = t === "on" ? "addEventListener" : "removeEventListener",
        f = t;
    if (!o.touch) i[u](A.start, e.onTouchStart, !1), n[u](A.move, e.onTouchMove, l), n[u](A.end, e.onTouchEnd, !1);
    else {
        const d = A.start === "touchstart" && o.passiveListener && r.passiveListeners ? {
            passive: !0,
            capture: !1
        } : !1;
        i[u](A.start, e.onTouchStart, d), i[u](A.move, e.onTouchMove, o.passiveListener ? {
            passive: !1,
            capture: l
        } : l), i[u](A.end, e.onTouchEnd, d), A.cancel && i[u](A.cancel, e.onTouchEnd, d)
    }(r.preventClicks || r.preventClicksPropagation) && i[u]("click", e.onClick, !0), r.cssMode && s[u]("scroll", e.onScroll), r.updateOnWindowResize ? e[f](a.ios || a.android ? "resize orientationchange observerUpdate" : "resize observerUpdate", Qm, !0) : e[f]("observerUpdate", Qm, !0)
};

function Qj() {
    const e = this,
        t = Vn(),
        {
            params: n,
            support: r
        } = e;
    e.onTouchStart = xj.bind(e), e.onTouchMove = Ej.bind(e), e.onTouchEnd = bj.bind(e), n.cssMode && (e.onScroll = _j.bind(e)), e.onClick = Fj.bind(e), r.touch && !Um && (t.addEventListener("touchstart", Sj), Um = !0), ky(e, "on")
}

function Uj() {
    ky(this, "off")
}
const Tj = {
        attachEvents: Qj,
        detachEvents: Uj
    },
    Tm = (e, t) => e.grid && t.grid && t.grid.rows > 1;

function Ij() {
    const e = this,
        {
            activeIndex: t,
            initialized: n,
            loopedSlides: r = 0,
            params: A,
            $el: i
        } = e,
        s = A.breakpoints;
    if (!s || s && Object.keys(s).length === 0) return;
    const a = e.getBreakpoint(s, e.params.breakpointsBase, e.el);
    if (!a || e.currentBreakpoint === a) return;
    const l = (a in s ? s[a] : void 0) || e.originalParams,
        u = Tm(e, A),
        f = Tm(e, l),
        d = A.enabled;
    u && !f ? (i.removeClass(`${A.containerModifierClass}grid ${A.containerModifierClass}grid-column`), e.emitContainerClasses()) : !u && f && (i.addClass(`${A.containerModifierClass}grid`), (l.grid.fill && l.grid.fill === "column" || !l.grid.fill && A.grid.fill === "column") && i.addClass(`${A.containerModifierClass}grid-column`), e.emitContainerClasses()), ["navigation", "pagination", "scrollbar"].forEach(y => {
        const w = A[y] && A[y].enabled,
            B = l[y] && l[y].enabled;
        w && !B && e[y].disable(), !w && B && e[y].enable()
    });
    const p = l.direction && l.direction !== A.direction,
        m = A.loop && (l.slidesPerView !== A.slidesPerView || p);
    p && n && e.changeDirection(), _r(e.params, l);
    const g = e.params.enabled;
    Object.assign(e, {
        allowTouchMove: e.params.allowTouchMove,
        allowSlideNext: e.params.allowSlideNext,
        allowSlidePrev: e.params.allowSlidePrev
    }), d && !g ? e.disable() : !d && g && e.enable(), e.currentBreakpoint = a, e.emit("_beforeBreakpoint", l), m && n && (e.loopDestroy(), e.loopCreate(), e.updateSlides(), e.slideTo(t - r + e.loopedSlides, 0, !1)), e.emit("breakpoint", l)
}

function Dj(e, t = "window", n) {
    if (!e || t === "container" && !n) return;
    let r = !1;
    const A = kn(),
        i = t === "window" ? A.innerHeight : n.clientHeight,
        s = Object.keys(e).map(a => {
            if (typeof a == "string" && a.indexOf("@") === 0) {
                const o = parseFloat(a.substr(1));
                return {
                    value: i * o,
                    point: a
                }
            }
            return {
                value: a,
                point: a
            }
        });
    s.sort((a, o) => parseInt(a.value, 10) - parseInt(o.value, 10));
    for (let a = 0; a < s.length; a += 1) {
        const {
            point: o,
            value: l
        } = s[a];
        t === "window" ? A.matchMedia(`(min-width: ${l}px)`).matches && (r = o) : l <= n.clientWidth && (r = o)
    }
    return r || "max"
}
const Pj = {
    setBreakpoint: Ij,
    getBreakpoint: Dj
};

function Oj(e, t) {
    const n = [];
    return e.forEach(r => {
        typeof r == "object" ? Object.keys(r).forEach(A => {
            r[A] && n.push(t + A)
        }) : typeof r == "string" && n.push(t + r)
    }), n
}

function Lj() {
    const e = this,
        {
            classNames: t,
            params: n,
            rtl: r,
            $el: A,
            device: i,
            support: s
        } = e,
        a = Oj(["initialized", n.direction, {
            "pointer-events": !s.touch
        }, {
            "free-mode": e.params.freeMode && n.freeMode.enabled
        }, {
            autoheight: n.autoHeight
        }, {
            rtl: r
        }, {
            grid: n.grid && n.grid.rows > 1
        }, {
            "grid-column": n.grid && n.grid.rows > 1 && n.grid.fill === "column"
        }, {
            android: i.android
        }, {
            ios: i.ios
        }, {
            "css-mode": n.cssMode
        }, {
            centered: n.cssMode && n.centeredSlides
        }, {
            "watch-progress": n.watchSlidesProgress
        }], n.containerModifierClass);
    t.push(...a), A.addClass([...t].join(" ")), e.emitContainerClasses()
}

function kj() {
    const e = this,
        {
            $el: t,
            classNames: n
        } = e;
    t.removeClass(n.join(" ")), e.emitContainerClasses()
}
const Hj = {
    addClasses: Lj,
    removeClasses: kj
};

function Mj(e, t, n, r, A, i) {
    const s = kn();
    let a;

    function o() {
        i && i()
    }!Ze(e).parent("picture")[0] && (!e.complete || !A) && t ? (a = new s.Image, a.onload = o, a.onerror = o, r && (a.sizes = r), n && (a.srcset = n), t && (a.src = t)) : o()
}

function Rj() {
    const e = this;
    e.imagesToLoad = e.$el.find("img");

    function t() {
        typeof e > "u" || e === null || !e || e.destroyed || (e.imagesLoaded !== void 0 && (e.imagesLoaded += 1), e.imagesLoaded === e.imagesToLoad.length && (e.params.updateOnImagesReady && e.update(), e.emit("imagesReady")))
    }
    for (let n = 0; n < e.imagesToLoad.length; n += 1) {
        const r = e.imagesToLoad[n];
        e.loadImage(r, r.currentSrc || r.getAttribute("src"), r.srcset || r.getAttribute("srcset"), r.sizes || r.getAttribute("sizes"), !0, t)
    }
}
const Nj = {
    loadImage: Mj,
    preloadImages: Rj
};

function $j() {
    const e = this,
        {
            isLocked: t,
            params: n
        } = e,
        {
            slidesOffsetBefore: r
        } = n;
    if (r) {
        const A = e.slides.length - 1,
            i = e.slidesGrid[A] + e.slidesSizesGrid[A] + r * 2;
        e.isLocked = e.size > i
    } else e.isLocked = e.snapGrid.length === 1;
    n.allowSlideNext === !0 && (e.allowSlideNext = !e.isLocked), n.allowSlidePrev === !0 && (e.allowSlidePrev = !e.isLocked), t && t !== e.isLocked && (e.isEnd = !1), t !== e.isLocked && e.emit(e.isLocked ? "lock" : "unlock")
}
const Kj = {
        checkOverflow: $j
    },
    Im = {
        init: !0,
        direction: "horizontal",
        touchEventsTarget: "wrapper",
        initialSlide: 0,
        speed: 300,
        cssMode: !1,
        updateOnWindowResize: !0,
        resizeObserver: !0,
        nested: !1,
        createElements: !1,
        enabled: !0,
        focusableElements: "input, select, option, textarea, button, video, label",
        width: null,
        height: null,
        preventInteractionOnTransition: !1,
        userAgent: null,
        url: null,
        edgeSwipeDetection: !1,
        edgeSwipeThreshold: 20,
        autoHeight: !1,
        setWrapperSize: !1,
        virtualTranslate: !1,
        effect: "slide",
        breakpoints: void 0,
        breakpointsBase: "window",
        spaceBetween: 0,
        slidesPerView: 1,
        slidesPerGroup: 1,
        slidesPerGroupSkip: 0,
        slidesPerGroupAuto: !1,
        centeredSlides: !1,
        centeredSlidesBounds: !1,
        slidesOffsetBefore: 0,
        slidesOffsetAfter: 0,
        normalizeSlideIndex: !0,
        centerInsufficientSlides: !1,
        watchOverflow: !0,
        roundLengths: !1,
        touchRatio: 1,
        touchAngle: 45,
        simulateTouch: !0,
        shortSwipes: !0,
        longSwipes: !0,
        longSwipesRatio: .5,
        longSwipesMs: 300,
        followFinger: !0,
        allowTouchMove: !0,
        threshold: 0,
        touchMoveStopPropagation: !1,
        touchStartPreventDefault: !0,
        touchStartForcePreventDefault: !1,
        touchReleaseOnEdges: !1,
        uniqueNavElements: !0,
        resistance: !0,
        resistanceRatio: .85,
        watchSlidesProgress: !1,
        grabCursor: !1,
        preventClicks: !0,
        preventClicksPropagation: !0,
        slideToClickedSlide: !1,
        preloadImages: !0,
        updateOnImagesReady: !0,
        loop: !1,
        loopAdditionalSlides: 0,
        loopedSlides: null,
        loopedSlidesLimit: !0,
        loopFillGroupWithBlank: !1,
        loopPreventsSlide: !0,
        rewind: !1,
        allowSlidePrev: !0,
        allowSlideNext: !0,
        swipeHandler: null,
        noSwiping: !0,
        noSwipingClass: "swiper-no-swiping",
        noSwipingSelector: null,
        passiveListeners: !0,
        maxBackfaceHiddenSlides: 10,
        containerModifierClass: "swiper-",
        slideClass: "swiper-slide",
        slideBlankClass: "swiper-slide-invisible-blank",
        slideActiveClass: "swiper-slide-active",
        slideDuplicateActiveClass: "swiper-slide-duplicate-active",
        slideVisibleClass: "swiper-slide-visible",
        slideDuplicateClass: "swiper-slide-duplicate",
        slideNextClass: "swiper-slide-next",
        slideDuplicateNextClass: "swiper-slide-duplicate-next",
        slidePrevClass: "swiper-slide-prev",
        slideDuplicatePrevClass: "swiper-slide-duplicate-prev",
        wrapperClass: "swiper-wrapper",
        runCallbacksOnInit: !0,
        _emitClasses: !1
    };

function Vj(e, t) {
    return function(r = {}) {
        const A = Object.keys(r)[0],
            i = r[A];
        if (typeof i != "object" || i === null) {
            _r(t, r);
            return
        }
        if (["navigation", "pagination", "scrollbar"].indexOf(A) >= 0 && e[A] === !0 && (e[A] = {
                auto: !0
            }), !(A in e && "enabled" in i)) {
            _r(t, r);
            return
        }
        e[A] === !0 && (e[A] = {
            enabled: !0
        }), typeof e[A] == "object" && !("enabled" in e[A]) && (e[A].enabled = !0), e[A] || (e[A] = {
            enabled: !1
        }), _r(t, r)
    }
}
const Td = {
        eventsEmitter: RW,
        update: XW,
        translate: nj,
        transition: sj,
        slide: hj,
        loop: mj,
        grabCursor: yj,
        events: Tj,
        breakpoints: Pj,
        checkOverflow: Kj,
        classes: Hj,
        images: Nj
    },
    Id = {};
let lo = class VA {
    constructor(...t) {
        let n, r;
        if (t.length === 1 && t[0].constructor && Object.prototype.toString.call(t[0]).slice(8, -1) === "Object" ? r = t[0] : [n, r] = t, r || (r = {}), r = _r({}, r), n && !r.el && (r.el = n), r.el && Ze(r.el).length > 1) {
            const a = [];
            return Ze(r.el).each(o => {
                const l = _r({}, r, {
                    el: o
                });
                a.push(new VA(l))
            }), a
        }
        const A = this;
        A.__swiper__ = !0, A.support = Oy(), A.device = OW({
            userAgent: r.userAgent
        }), A.browser = kW(), A.eventsListeners = {}, A.eventsAnyListeners = [], A.modules = [...A.__modules__], r.modules && Array.isArray(r.modules) && A.modules.push(...r.modules);
        const i = {};
        A.modules.forEach(a => {
            a({
                swiper: A,
                extendParams: Vj(r, i),
                on: A.on.bind(A),
                once: A.once.bind(A),
                off: A.off.bind(A),
                emit: A.emit.bind(A)
            })
        });
        const s = _r({}, Im, i);
        return A.params = _r({}, s, Id, r), A.originalParams = _r({}, A.params), A.passedParams = _r({}, r), A.params && A.params.on && Object.keys(A.params.on).forEach(a => {
            A.on(a, A.params.on[a])
        }), A.params && A.params.onAny && A.onAny(A.params.onAny), A.$ = Ze, Object.assign(A, {
            enabled: A.params.enabled,
            el: n,
            classNames: [],
            slides: Ze(),
            slidesGrid: [],
            snapGrid: [],
            slidesSizesGrid: [],
            isHorizontal() {
                return A.params.direction === "horizontal"
            },
            isVertical() {
                return A.params.direction === "vertical"
            },
            activeIndex: 0,
            realIndex: 0,
            isBeginning: !0,
            isEnd: !1,
            translate: 0,
            previousTranslate: 0,
            progress: 0,
            velocity: 0,
            animating: !1,
            allowSlideNext: A.params.allowSlideNext,
            allowSlidePrev: A.params.allowSlidePrev,
            touchEvents: function() {
                const o = ["touchstart", "touchmove", "touchend", "touchcancel"],
                    l = ["pointerdown", "pointermove", "pointerup"];
                return A.touchEventsTouch = {
                    start: o[0],
                    move: o[1],
                    end: o[2],
                    cancel: o[3]
                }, A.touchEventsDesktop = {
                    start: l[0],
                    move: l[1],
                    end: l[2]
                }, A.support.touch || !A.params.simulateTouch ? A.touchEventsTouch : A.touchEventsDesktop
            }(),
            touchEventsData: {
                isTouched: void 0,
                isMoved: void 0,
                allowTouchCallbacks: void 0,
                touchStartTime: void 0,
                isScrolling: void 0,
                currentTranslate: void 0,
                startTranslate: void 0,
                allowThresholdMove: void 0,
                focusableElements: A.params.focusableElements,
                lastClickTime: n0(),
                clickTimeout: void 0,
                velocities: [],
                allowMomentumBounce: void 0,
                isTouchEvent: void 0,
                startMoving: void 0
            },
            allowClick: !0,
            allowTouchMove: A.params.allowTouchMove,
            touches: {
                startX: 0,
                startY: 0,
                currentX: 0,
                currentY: 0,
                diff: 0
            },
            imagesToLoad: [],
            imagesLoaded: 0
        }), A.emit("_swiper"), A.params.init && A.init(), A
    }
    enable() {
        const t = this;
        t.enabled || (t.enabled = !0, t.params.grabCursor && t.setGrabCursor(), t.emit("enable"))
    }
    disable() {
        const t = this;
        t.enabled && (t.enabled = !1, t.params.grabCursor && t.unsetGrabCursor(), t.emit("disable"))
    }
    setProgress(t, n) {
        const r = this;
        t = Math.min(Math.max(t, 0), 1);
        const A = r.minTranslate(),
            s = (r.maxTranslate() - A) * t + A;
        r.translateTo(s, typeof n > "u" ? 0 : n), r.updateActiveIndex(), r.updateSlidesClasses()
    }
    emitContainerClasses() {
        const t = this;
        if (!t.params._emitClasses || !t.el) return;
        const n = t.el.className.split(" ").filter(r => r.indexOf("swiper") === 0 || r.indexOf(t.params.containerModifierClass) === 0);
        t.emit("_containerClasses", n.join(" "))
    }
    getSlideClasses(t) {
        const n = this;
        return n.destroyed ? "" : t.className.split(" ").filter(r => r.indexOf("swiper-slide") === 0 || r.indexOf(n.params.slideClass) === 0).join(" ")
    }
    emitSlidesClasses() {
        const t = this;
        if (!t.params._emitClasses || !t.el) return;
        const n = [];
        t.slides.each(r => {
            const A = t.getSlideClasses(r);
            n.push({
                slideEl: r,
                classNames: A
            }), t.emit("_slideClass", r, A)
        }), t.emit("_slideClasses", n)
    }
    slidesPerViewDynamic(t = "current", n = !1) {
        const r = this,
            {
                params: A,
                slides: i,
                slidesGrid: s,
                slidesSizesGrid: a,
                size: o,
                activeIndex: l
            } = r;
        let u = 1;
        if (A.centeredSlides) {
            let f = i[l].swiperSlideSize,
                d;
            for (let p = l + 1; p < i.length; p += 1) i[p] && !d && (f += i[p].swiperSlideSize, u += 1, f > o && (d = !0));
            for (let p = l - 1; p >= 0; p -= 1) i[p] && !d && (f += i[p].swiperSlideSize, u += 1, f > o && (d = !0))
        } else if (t === "current")
            for (let f = l + 1; f < i.length; f += 1)(n ? s[f] + a[f] - s[l] < o : s[f] - s[l] < o) && (u += 1);
        else
            for (let f = l - 1; f >= 0; f -= 1) s[l] - s[f] < o && (u += 1);
        return u
    }
    update() {
        const t = this;
        if (!t || t.destroyed) return;
        const {
            snapGrid: n,
            params: r
        } = t;
        r.breakpoints && t.setBreakpoint(), t.updateSize(), t.updateSlides(), t.updateProgress(), t.updateSlidesClasses();

        function A() {
            const s = t.rtlTranslate ? t.translate * -1 : t.translate,
                a = Math.min(Math.max(s, t.maxTranslate()), t.minTranslate());
            t.setTranslate(a), t.updateActiveIndex(), t.updateSlidesClasses()
        }
        let i;
        t.params.freeMode && t.params.freeMode.enabled ? (A(), t.params.autoHeight && t.updateAutoHeight()) : ((t.params.slidesPerView === "auto" || t.params.slidesPerView > 1) && t.isEnd && !t.params.centeredSlides ? i = t.slideTo(t.slides.length - 1, 0, !1, !0) : i = t.slideTo(t.activeIndex, 0, !1, !0), i || A()), r.watchOverflow && n !== t.snapGrid && t.checkOverflow(), t.emit("update")
    }
    changeDirection(t, n = !0) {
        const r = this,
            A = r.params.direction;
        return t || (t = A === "horizontal" ? "vertical" : "horizontal"), t === A || t !== "horizontal" && t !== "vertical" || (r.$el.removeClass(`${r.params.containerModifierClass}${A}`).addClass(`${r.params.containerModifierClass}${t}`), r.emitContainerClasses(), r.params.direction = t, r.slides.each(i => {
            t === "vertical" ? i.style.width = "" : i.style.height = ""
        }), r.emit("changeDirection"), n && r.update()), r
    }
    changeLanguageDirection(t) {
        const n = this;
        n.rtl && t === "rtl" || !n.rtl && t === "ltr" || (n.rtl = t === "rtl", n.rtlTranslate = n.params.direction === "horizontal" && n.rtl, n.rtl ? (n.$el.addClass(`${n.params.containerModifierClass}rtl`), n.el.dir = "rtl") : (n.$el.removeClass(`${n.params.containerModifierClass}rtl`), n.el.dir = "ltr"), n.update())
    }
    mount(t) {
        const n = this;
        if (n.mounted) return !0;
        const r = Ze(t || n.params.el);
        if (t = r[0], !t) return !1;
        t.swiper = n;
        const A = () => `.${(n.params.wrapperClass||"").trim().split(" ").join(".")}`;
        let s = (() => {
            if (t && t.shadowRoot && t.shadowRoot.querySelector) {
                const a = Ze(t.shadowRoot.querySelector(A()));
                return a.children = o => r.children(o), a
            }
            return r.children ? r.children(A()) : Ze(r).children(A())
        })();
        if (s.length === 0 && n.params.createElements) {
            const o = Vn().createElement("div");
            s = Ze(o), o.className = n.params.wrapperClass, r.append(o), r.children(`.${n.params.slideClass}`).each(l => {
                s.append(l)
            })
        }
        return Object.assign(n, {
            $el: r,
            el: t,
            $wrapperEl: s,
            wrapperEl: s[0],
            mounted: !0,
            rtl: t.dir.toLowerCase() === "rtl" || r.css("direction") === "rtl",
            rtlTranslate: n.params.direction === "horizontal" && (t.dir.toLowerCase() === "rtl" || r.css("direction") === "rtl"),
            wrongRTL: s.css("display") === "-webkit-box"
        }), !0
    }
    init(t) {
        const n = this;
        return n.initialized || n.mount(t) === !1 || (n.emit("beforeInit"), n.params.breakpoints && n.setBreakpoint(), n.addClasses(), n.params.loop && n.loopCreate(), n.updateSize(), n.updateSlides(), n.params.watchOverflow && n.checkOverflow(), n.params.grabCursor && n.enabled && n.setGrabCursor(), n.params.preloadImages && n.preloadImages(), n.params.loop ? n.slideTo(n.params.initialSlide + n.loopedSlides, 0, n.params.runCallbacksOnInit, !1, !0) : n.slideTo(n.params.initialSlide, 0, n.params.runCallbacksOnInit, !1, !0), n.attachEvents(), n.initialized = !0, n.emit("init"), n.emit("afterInit")), n
    }
    destroy(t = !0, n = !0) {
        const r = this,
            {
                params: A,
                $el: i,
                $wrapperEl: s,
                slides: a
            } = r;
        return typeof r.params > "u" || r.destroyed || (r.emit("beforeDestroy"), r.initialized = !1, r.detachEvents(), A.loop && r.loopDestroy(), n && (r.removeClasses(), i.removeAttr("style"), s.removeAttr("style"), a && a.length && a.removeClass([A.slideVisibleClass, A.slideActiveClass, A.slideNextClass, A.slidePrevClass].join(" ")).removeAttr("style").removeAttr("data-swiper-slide-index")), r.emit("destroy"), Object.keys(r.eventsListeners).forEach(o => {
            r.off(o)
        }), t !== !1 && (r.$el[0].swiper = null, QW(r)), r.destroyed = !0), null
    }
    static extendDefaults(t) {
        _r(Id, t)
    }
    static get extendedDefaults() {
        return Id
    }
    static get defaults() {
        return Im
    }
    static installModule(t) {
        VA.prototype.__modules__ || (VA.prototype.__modules__ = []);
        const n = VA.prototype.__modules__;
        typeof t == "function" && n.indexOf(t) < 0 && n.push(t)
    }
    static use(t) {
        return Array.isArray(t) ? (t.forEach(n => VA.installModule(n)), VA) : (VA.installModule(t), VA)
    }
};
Object.keys(Td).forEach(e => {
    Object.keys(Td[e]).forEach(t => {
        lo.prototype[t] = Td[e][t]
    })
});
lo.use([HW, MW]);

function Hy(e, t, n, r) {
    const A = Vn();
    return e.params.createElements && Object.keys(r).forEach(i => {
        if (!n[i] && n.auto === !0) {
            let s = e.$el.children(`.${r[i]}`)[0];
            s || (s = A.createElement("div"), s.className = r[i], e.$el.append(s)), n[i] = s, t[i] = s
        }
    }), n
}

function hre({
    swiper: e,
    extendParams: t,
    on: n,
    emit: r
}) {
    t({
        navigation: {
            nextEl: null,
            prevEl: null,
            hideOnClick: !1,
            disabledClass: "swiper-button-disabled",
            hiddenClass: "swiper-button-hidden",
            lockClass: "swiper-button-lock",
            navigationDisabledClass: "swiper-navigation-disabled"
        }
    }), e.navigation = {
        nextEl: null,
        $nextEl: null,
        prevEl: null,
        $prevEl: null
    };

    function A(p) {
        let m;
        return p && (m = Ze(p), e.params.uniqueNavElements && typeof p == "string" && m.length > 1 && e.$el.find(p).length === 1 && (m = e.$el.find(p))), m
    }

    function i(p, m) {
        const g = e.params.navigation;
        p && p.length > 0 && (p[m ? "addClass" : "removeClass"](g.disabledClass), p[0] && p[0].tagName === "BUTTON" && (p[0].disabled = m), e.params.watchOverflow && e.enabled && p[e.isLocked ? "addClass" : "removeClass"](g.lockClass))
    }

    function s() {
        if (e.params.loop) return;
        const {
            $nextEl: p,
            $prevEl: m
        } = e.navigation;
        i(m, e.isBeginning && !e.params.rewind), i(p, e.isEnd && !e.params.rewind)
    }

    function a(p) {
        p.preventDefault(), !(e.isBeginning && !e.params.loop && !e.params.rewind) && (e.slidePrev(), r("navigationPrev"))
    }

    function o(p) {
        p.preventDefault(), !(e.isEnd && !e.params.loop && !e.params.rewind) && (e.slideNext(), r("navigationNext"))
    }

    function l() {
        const p = e.params.navigation;
        if (e.params.navigation = Hy(e, e.originalParams.navigation, e.params.navigation, {
                nextEl: "swiper-button-next",
                prevEl: "swiper-button-prev"
            }), !(p.nextEl || p.prevEl)) return;
        const m = A(p.nextEl),
            g = A(p.prevEl);
        m && m.length > 0 && m.on("click", o), g && g.length > 0 && g.on("click", a), Object.assign(e.navigation, {
            $nextEl: m,
            nextEl: m && m[0],
            $prevEl: g,
            prevEl: g && g[0]
        }), e.enabled || (m && m.addClass(p.lockClass), g && g.addClass(p.lockClass))
    }

    function u() {
        const {
            $nextEl: p,
            $prevEl: m
        } = e.navigation;
        p && p.length && (p.off("click", o), p.removeClass(e.params.navigation.disabledClass)), m && m.length && (m.off("click", a), m.removeClass(e.params.navigation.disabledClass))
    }
    n("init", () => {
        e.params.navigation.enabled === !1 ? d() : (l(), s())
    }), n("toEdge fromEdge lock unlock", () => {
        s()
    }), n("destroy", () => {
        u()
    }), n("enable disable", () => {
        const {
            $nextEl: p,
            $prevEl: m
        } = e.navigation;
        p && p[e.enabled ? "removeClass" : "addClass"](e.params.navigation.lockClass), m && m[e.enabled ? "removeClass" : "addClass"](e.params.navigation.lockClass)
    }), n("click", (p, m) => {
        const {
            $nextEl: g,
            $prevEl: y
        } = e.navigation, w = m.target;
        if (e.params.navigation.hideOnClick && !Ze(w).is(y) && !Ze(w).is(g)) {
            if (e.pagination && e.params.pagination && e.params.pagination.clickable && (e.pagination.el === w || e.pagination.el.contains(w))) return;
            let B;
            g ? B = g.hasClass(e.params.navigation.hiddenClass) : y && (B = y.hasClass(e.params.navigation.hiddenClass)), r(B === !0 ? "navigationShow" : "navigationHide"), g && g.toggleClass(e.params.navigation.hiddenClass), y && y.toggleClass(e.params.navigation.hiddenClass)
        }
    });
    const f = () => {
            e.$el.removeClass(e.params.navigation.navigationDisabledClass), l(), s()
        },
        d = () => {
            e.$el.addClass(e.params.navigation.navigationDisabledClass), u()
        };
    Object.assign(e.navigation, {
        enable: f,
        disable: d,
        update: s,
        init: l,
        destroy: u
    })
}

function Ua(e = "") {
    return `.${e.trim().replace(/([\.:!\/])/g,"\\$1").replace(/ /g,".")}`
}

function pre({
    swiper: e,
    extendParams: t,
    on: n,
    emit: r
}) {
    const A = "swiper-pagination";
    t({
        pagination: {
            el: null,
            bulletElement: "span",
            clickable: !1,
            hideOnClick: !1,
            renderBullet: null,
            renderProgressbar: null,
            renderFraction: null,
            renderCustom: null,
            progressbarOpposite: !1,
            type: "bullets",
            dynamicBullets: !1,
            dynamicMainBullets: 1,
            formatFractionCurrent: g => g,
            formatFractionTotal: g => g,
            bulletClass: `${A}-bullet`,
            bulletActiveClass: `${A}-bullet-active`,
            modifierClass: `${A}-`,
            currentClass: `${A}-current`,
            totalClass: `${A}-total`,
            hiddenClass: `${A}-hidden`,
            progressbarFillClass: `${A}-progressbar-fill`,
            progressbarOppositeClass: `${A}-progressbar-opposite`,
            clickableClass: `${A}-clickable`,
            lockClass: `${A}-lock`,
            horizontalClass: `${A}-horizontal`,
            verticalClass: `${A}-vertical`,
            paginationDisabledClass: `${A}-disabled`
        }
    }), e.pagination = {
        el: null,
        $el: null,
        bullets: []
    };
    let i, s = 0;

    function a() {
        return !e.params.pagination.el || !e.pagination.el || !e.pagination.$el || e.pagination.$el.length === 0
    }

    function o(g, y) {
        const {
            bulletActiveClass: w
        } = e.params.pagination;
        g[y]().addClass(`${w}-${y}`)[y]().addClass(`${w}-${y}-${y}`)
    }

    function l() {
        const g = e.rtl,
            y = e.params.pagination;
        if (a()) return;
        const w = e.virtual && e.params.virtual.enabled ? e.virtual.slides.length : e.slides.length,
            B = e.pagination.$el;
        let x;
        const C = e.params.loop ? Math.ceil((w - e.loopedSlides * 2) / e.params.slidesPerGroup) : e.snapGrid.length;
        if (e.params.loop ? (x = Math.ceil((e.activeIndex - e.loopedSlides) / e.params.slidesPerGroup), x > w - 1 - e.loopedSlides * 2 && (x -= w - e.loopedSlides * 2), x > C - 1 && (x -= C), x < 0 && e.params.paginationType !== "bullets" && (x = C + x)) : typeof e.snapIndex < "u" ? x = e.snapIndex : x = e.activeIndex || 0, y.type === "bullets" && e.pagination.bullets && e.pagination.bullets.length > 0) {
            const b = e.pagination.bullets;
            let F, T, I;
            if (y.dynamicBullets && (i = b.eq(0)[e.isHorizontal() ? "outerWidth" : "outerHeight"](!0), B.css(e.isHorizontal() ? "width" : "height", `${i*(y.dynamicMainBullets+4)}px`), y.dynamicMainBullets > 1 && e.previousIndex !== void 0 && (s += x - (e.previousIndex - e.loopedSlides || 0), s > y.dynamicMainBullets - 1 ? s = y.dynamicMainBullets - 1 : s < 0 && (s = 0)), F = Math.max(x - s, 0), T = F + (Math.min(b.length, y.dynamicMainBullets) - 1), I = (T + F) / 2), b.removeClass(["", "-next", "-next-next", "-prev", "-prev-prev", "-main"].map(D => `${y.bulletActiveClass}${D}`).join(" ")), B.length > 1) b.each(D => {
                const U = Ze(D),
                    Q = U.index();
                Q === x && U.addClass(y.bulletActiveClass), y.dynamicBullets && (Q >= F && Q <= T && U.addClass(`${y.bulletActiveClass}-main`), Q === F && o(U, "prev"), Q === T && o(U, "next"))
            });
            else {
                const D = b.eq(x),
                    U = D.index();
                if (D.addClass(y.bulletActiveClass), y.dynamicBullets) {
                    const Q = b.eq(F),
                        O = b.eq(T);
                    for (let N = F; N <= T; N += 1) b.eq(N).addClass(`${y.bulletActiveClass}-main`);
                    if (e.params.loop)
                        if (U >= b.length) {
                            for (let N = y.dynamicMainBullets; N >= 0; N -= 1) b.eq(b.length - N).addClass(`${y.bulletActiveClass}-main`);
                            b.eq(b.length - y.dynamicMainBullets - 1).addClass(`${y.bulletActiveClass}-prev`)
                        } else o(Q, "prev"), o(O, "next");
                    else o(Q, "prev"), o(O, "next")
                }
            }
            if (y.dynamicBullets) {
                const D = Math.min(b.length, y.dynamicMainBullets + 4),
                    U = (i * D - i) / 2 - I * i,
                    Q = g ? "right" : "left";
                b.css(e.isHorizontal() ? Q : "top", `${U}px`)
            }
        }
        if (y.type === "fraction" && (B.find(Ua(y.currentClass)).text(y.formatFractionCurrent(x + 1)), B.find(Ua(y.totalClass)).text(y.formatFractionTotal(C))), y.type === "progressbar") {
            let b;
            y.progressbarOpposite ? b = e.isHorizontal() ? "vertical" : "horizontal" : b = e.isHorizontal() ? "horizontal" : "vertical";
            const F = (x + 1) / C;
            let T = 1,
                I = 1;
            b === "horizontal" ? T = F : I = F, B.find(Ua(y.progressbarFillClass)).transform(`translate3d(0,0,0) scaleX(${T}) scaleY(${I})`).transition(e.params.speed)
        }
        y.type === "custom" && y.renderCustom ? (B.html(y.renderCustom(e, x + 1, C)), r("paginationRender", B[0])) : r("paginationUpdate", B[0]), e.params.watchOverflow && e.enabled && B[e.isLocked ? "addClass" : "removeClass"](y.lockClass)
    }

    function u() {
        const g = e.params.pagination;
        if (a()) return;
        const y = e.virtual && e.params.virtual.enabled ? e.virtual.slides.length : e.slides.length,
            w = e.pagination.$el;
        let B = "";
        if (g.type === "bullets") {
            let x = e.params.loop ? Math.ceil((y - e.loopedSlides * 2) / e.params.slidesPerGroup) : e.snapGrid.length;
            e.params.freeMode && e.params.freeMode.enabled && !e.params.loop && x > y && (x = y);
            for (let C = 0; C < x; C += 1) g.renderBullet ? B += g.renderBullet.call(e, C, g.bulletClass) : B += `<${g.bulletElement} class="${g.bulletClass}"></${g.bulletElement}>`;
            w.html(B), e.pagination.bullets = w.find(Ua(g.bulletClass))
        }
        g.type === "fraction" && (g.renderFraction ? B = g.renderFraction.call(e, g.currentClass, g.totalClass) : B = `<span class="${g.currentClass}"></span> / <span class="${g.totalClass}"></span>`, w.html(B)), g.type === "progressbar" && (g.renderProgressbar ? B = g.renderProgressbar.call(e, g.progressbarFillClass) : B = `<span class="${g.progressbarFillClass}"></span>`, w.html(B)), g.type !== "custom" && r("paginationRender", e.pagination.$el[0])
    }

    function f() {
        e.params.pagination = Hy(e, e.originalParams.pagination, e.params.pagination, {
            el: "swiper-pagination"
        });
        const g = e.params.pagination;
        if (!g.el) return;
        let y = Ze(g.el);
        y.length !== 0 && (e.params.uniqueNavElements && typeof g.el == "string" && y.length > 1 && (y = e.$el.find(g.el), y.length > 1 && (y = y.filter(w => Ze(w).parents(".swiper")[0] === e.el))), g.type === "bullets" && g.clickable && y.addClass(g.clickableClass), y.addClass(g.modifierClass + g.type), y.addClass(e.isHorizontal() ? g.horizontalClass : g.verticalClass), g.type === "bullets" && g.dynamicBullets && (y.addClass(`${g.modifierClass}${g.type}-dynamic`), s = 0, g.dynamicMainBullets < 1 && (g.dynamicMainBullets = 1)), g.type === "progressbar" && g.progressbarOpposite && y.addClass(g.progressbarOppositeClass), g.clickable && y.on("click", Ua(g.bulletClass), function(B) {
            B.preventDefault();
            let x = Ze(this).index() * e.params.slidesPerGroup;
            e.params.loop && (x += e.loopedSlides), e.slideTo(x)
        }), Object.assign(e.pagination, {
            $el: y,
            el: y[0]
        }), e.enabled || y.addClass(g.lockClass))
    }

    function d() {
        const g = e.params.pagination;
        if (a()) return;
        const y = e.pagination.$el;
        y.removeClass(g.hiddenClass), y.removeClass(g.modifierClass + g.type), y.removeClass(e.isHorizontal() ? g.horizontalClass : g.verticalClass), e.pagination.bullets && e.pagination.bullets.removeClass && e.pagination.bullets.removeClass(g.bulletActiveClass), g.clickable && y.off("click", Ua(g.bulletClass))
    }
    n("init", () => {
        e.params.pagination.enabled === !1 ? m() : (f(), u(), l())
    }), n("activeIndexChange", () => {
        (e.params.loop || typeof e.snapIndex > "u") && l()
    }), n("snapIndexChange", () => {
        e.params.loop || l()
    }), n("slidesLengthChange", () => {
        e.params.loop && (u(), l())
    }), n("snapGridLengthChange", () => {
        e.params.loop || (u(), l())
    }), n("destroy", () => {
        d()
    }), n("enable disable", () => {
        const {
            $el: g
        } = e.pagination;
        g && g[e.enabled ? "removeClass" : "addClass"](e.params.pagination.lockClass)
    }), n("lock unlock", () => {
        l()
    }), n("click", (g, y) => {
        const w = y.target,
            {
                $el: B
            } = e.pagination;
        if (e.params.pagination.el && e.params.pagination.hideOnClick && B && B.length > 0 && !Ze(w).hasClass(e.params.pagination.bulletClass)) {
            if (e.navigation && (e.navigation.nextEl && w === e.navigation.nextEl || e.navigation.prevEl && w === e.navigation.prevEl)) return;
            const x = B.hasClass(e.params.pagination.hiddenClass);
            r(x === !0 ? "paginationShow" : "paginationHide"), B.toggleClass(e.params.pagination.hiddenClass)
        }
    });
    const p = () => {
            e.$el.removeClass(e.params.pagination.paginationDisabledClass), e.pagination.$el && e.pagination.$el.removeClass(e.params.pagination.paginationDisabledClass), f(), u(), l()
        },
        m = () => {
            e.$el.addClass(e.params.pagination.paginationDisabledClass), e.pagination.$el && e.pagination.$el.addClass(e.params.pagination.paginationDisabledClass), d()
        };
    Object.assign(e.pagination, {
        enable: p,
        disable: m,
        render: u,
        update: l,
        init: f,
        destroy: d
    })
}

function gre({
    swiper: e,
    extendParams: t,
    on: n,
    emit: r
}) {
    let A;
    e.autoplay = {
        running: !1,
        paused: !1
    }, t({
        autoplay: {
            enabled: !1,
            delay: 3e3,
            waitForTransition: !0,
            disableOnInteraction: !0,
            stopOnLastSlide: !1,
            reverseDirection: !1,
            pauseOnMouseEnter: !1
        }
    });

    function i() {
        if (!e.size) {
            e.autoplay.running = !1, e.autoplay.paused = !1;
            return
        }
        const g = e.slides.eq(e.activeIndex);
        let y = e.params.autoplay.delay;
        g.attr("data-swiper-autoplay") && (y = g.attr("data-swiper-autoplay") || e.params.autoplay.delay), clearTimeout(A), A = mc(() => {
            let w;
            e.params.autoplay.reverseDirection ? e.params.loop ? (e.loopFix(), w = e.slidePrev(e.params.speed, !0, !0), r("autoplay")) : e.isBeginning ? e.params.autoplay.stopOnLastSlide ? a() : (w = e.slideTo(e.slides.length - 1, e.params.speed, !0, !0), r("autoplay")) : (w = e.slidePrev(e.params.speed, !0, !0), r("autoplay")) : e.params.loop ? (e.loopFix(), w = e.slideNext(e.params.speed, !0, !0), r("autoplay")) : e.isEnd ? e.params.autoplay.stopOnLastSlide ? a() : (w = e.slideTo(0, e.params.speed, !0, !0), r("autoplay")) : (w = e.slideNext(e.params.speed, !0, !0), r("autoplay")), (e.params.cssMode && e.autoplay.running || w === !1) && i()
        }, y)
    }

    function s() {
        return typeof A < "u" || e.autoplay.running ? !1 : (e.autoplay.running = !0, r("autoplayStart"), i(), !0)
    }

    function a() {
        return !e.autoplay.running || typeof A > "u" ? !1 : (A && (clearTimeout(A), A = void 0), e.autoplay.running = !1, r("autoplayStop"), !0)
    }

    function o(g) {
        e.autoplay.running && (e.autoplay.paused || (A && clearTimeout(A), e.autoplay.paused = !0, g === 0 || !e.params.autoplay.waitForTransition ? (e.autoplay.paused = !1, i()) : ["transitionend", "webkitTransitionEnd"].forEach(y => {
            e.$wrapperEl[0].addEventListener(y, u)
        })))
    }

    function l() {
        const g = Vn();
        g.visibilityState === "hidden" && e.autoplay.running && o(), g.visibilityState === "visible" && e.autoplay.paused && (i(), e.autoplay.paused = !1)
    }

    function u(g) {
        !e || e.destroyed || !e.$wrapperEl || g.target === e.$wrapperEl[0] && (["transitionend", "webkitTransitionEnd"].forEach(y => {
            e.$wrapperEl[0].removeEventListener(y, u)
        }), e.autoplay.paused = !1, e.autoplay.running ? i() : a())
    }

    function f() {
        e.params.autoplay.disableOnInteraction ? a() : (r("autoplayPause"), o()), ["transitionend", "webkitTransitionEnd"].forEach(g => {
            e.$wrapperEl[0].removeEventListener(g, u)
        })
    }

    function d() {
        e.params.autoplay.disableOnInteraction || (e.autoplay.paused = !1, r("autoplayResume"), i())
    }

    function p() {
        e.params.autoplay.pauseOnMouseEnter && (e.$el.on("mouseenter", f), e.$el.on("mouseleave", d))
    }

    function m() {
        e.$el.off("mouseenter", f), e.$el.off("mouseleave", d)
    }
    n("init", () => {
        e.params.autoplay.enabled && (s(), Vn().addEventListener("visibilitychange", l), p())
    }), n("beforeTransitionStart", (g, y, w) => {
        e.autoplay.running && (w || !e.params.autoplay.disableOnInteraction ? e.autoplay.pause(y) : a())
    }), n("sliderFirstMove", () => {
        e.autoplay.running && (e.params.autoplay.disableOnInteraction ? a() : o())
    }), n("touchEnd", () => {
        e.params.cssMode && e.autoplay.paused && !e.params.autoplay.disableOnInteraction && i()
    }), n("destroy", () => {
        m(), e.autoplay.running && a(), Vn().removeEventListener("visibilitychange", l)
    }), Object.assign(e.autoplay, {
        pause: o,
        run: i,
        start: s,
        stop: a
    })
}

function ra(e) {
    return typeof e == "object" && e !== null && e.constructor && Object.prototype.toString.call(e).slice(8, -1) === "Object"
}

function Vi(e, t) {
    const n = ["__proto__", "constructor", "prototype"];
    Object.keys(t).filter(r => n.indexOf(r) < 0).forEach(r => {
        typeof e[r] > "u" ? e[r] = t[r] : ra(t[r]) && ra(e[r]) && Object.keys(t[r]).length > 0 ? t[r].__swiper__ ? e[r] = t[r] : Vi(e[r], t[r]) : e[r] = t[r]
    })
}

function My(e = {}) {
    return e.navigation && typeof e.navigation.nextEl > "u" && typeof e.navigation.prevEl > "u"
}

function Ry(e = {}) {
    return e.pagination && typeof e.pagination.el > "u"
}

function Ny(e = {}) {
    return e.scrollbar && typeof e.scrollbar.el > "u"
}

function $y(e = "") {
    const t = e.split(" ").map(r => r.trim()).filter(r => !!r),
        n = [];
    return t.forEach(r => {
        n.indexOf(r) < 0 && n.push(r)
    }), n.join(" ")
}
const Ky = ["modules", "init", "_direction", "touchEventsTarget", "initialSlide", "_speed", "cssMode", "updateOnWindowResize", "resizeObserver", "nested", "focusableElements", "_enabled", "_width", "_height", "preventInteractionOnTransition", "userAgent", "url", "_edgeSwipeDetection", "_edgeSwipeThreshold", "_freeMode", "_autoHeight", "setWrapperSize", "virtualTranslate", "_effect", "breakpoints", "_spaceBetween", "_slidesPerView", "maxBackfaceHiddenSlides", "_grid", "_slidesPerGroup", "_slidesPerGroupSkip", "_slidesPerGroupAuto", "_centeredSlides", "_centeredSlidesBounds", "_slidesOffsetBefore", "_slidesOffsetAfter", "normalizeSlideIndex", "_centerInsufficientSlides", "_watchOverflow", "roundLengths", "touchRatio", "touchAngle", "simulateTouch", "_shortSwipes", "_longSwipes", "longSwipesRatio", "longSwipesMs", "_followFinger", "allowTouchMove", "_threshold", "touchMoveStopPropagation", "touchStartPreventDefault", "touchStartForcePreventDefault", "touchReleaseOnEdges", "uniqueNavElements", "_resistance", "_resistanceRatio", "_watchSlidesProgress", "_grabCursor", "preventClicks", "preventClicksPropagation", "_slideToClickedSlide", "_preloadImages", "updateOnImagesReady", "_loop", "_loopAdditionalSlides", "_loopedSlides", "_loopedSlidesLimit", "_loopFillGroupWithBlank", "loopPreventsSlide", "_rewind", "_allowSlidePrev", "_allowSlideNext", "_swipeHandler", "_noSwiping", "noSwipingClass", "noSwipingSelector", "passiveListeners", "containerModifierClass", "slideClass", "slideBlankClass", "slideActiveClass", "slideDuplicateActiveClass", "slideVisibleClass", "slideDuplicateClass", "slideNextClass", "slideDuplicateNextClass", "slidePrevClass", "slideDuplicatePrevClass", "wrapperClass", "runCallbacksOnInit", "observer", "observeParents", "observeSlideChildren", "a11y", "_autoplay", "_controller", "coverflowEffect", "cubeEffect", "fadeEffect", "flipEffect", "creativeEffect", "cardsEffect", "hashNavigation", "history", "keyboard", "lazy", "mousewheel", "_navigation", "_pagination", "parallax", "_scrollbar", "_thumbs", "virtual", "zoom"];

function Dm(e = {}, t = !0) {
    const n = {
            on: {}
        },
        r = {},
        A = {};
    Vi(n, lo.defaults), Vi(n, lo.extendedDefaults), n._emitClasses = !0, n.init = !1;
    const i = {},
        s = Ky.map(o => o.replace(/_/, "")),
        a = Object.assign({}, e);
    return Object.keys(a).forEach(o => {
        typeof e[o] > "u" || (s.indexOf(o) >= 0 ? ra(e[o]) ? (n[o] = {}, A[o] = {}, Vi(n[o], e[o]), Vi(A[o], e[o])) : (n[o] = e[o], A[o] = e[o]) : o.search(/on[A-Z]/) === 0 && typeof e[o] == "function" ? t ? r[`${o[2].toLowerCase()}${o.substr(3)}`] = e[o] : n.on[`${o[2].toLowerCase()}${o.substr(3)}`] = e[o] : i[o] = e[o])
    }), ["navigation", "pagination", "scrollbar"].forEach(o => {
        n[o] === !0 && (n[o] = {}), n[o] === !1 && delete n[o]
    }), {
        params: n,
        passedParams: A,
        rest: i,
        events: r
    }
}

function Gj({
    el: e,
    nextEl: t,
    prevEl: n,
    paginationEl: r,
    scrollbarEl: A,
    swiper: i
}, s) {
    My(s) && t && n && (i.params.navigation.nextEl = t, i.originalParams.navigation.nextEl = t, i.params.navigation.prevEl = n, i.originalParams.navigation.prevEl = n), Ry(s) && r && (i.params.pagination.el = r, i.originalParams.pagination.el = r), Ny(s) && A && (i.params.scrollbar.el = A, i.originalParams.scrollbar.el = A), i.init(e)
}
const Vy = (e, t) => {
    let n = t.slidesPerView;
    if (t.breakpoints) {
        const A = lo.prototype.getBreakpoint(t.breakpoints),
            i = A in t.breakpoints ? t.breakpoints[A] : void 0;
        i && i.slidesPerView && (n = i.slidesPerView)
    }
    let r = Math.ceil(parseFloat(t.loopedSlides || n, 10));
    return r += t.loopAdditionalSlides, r > e.length && t.loopedSlidesLimit && (r = e.length), r
};

function zj(e, t, n) {
    const r = t.map((o, l) => (o.props || (o.props = {}), o.props.swiperRef = e, o.props["data-swiper-slide-index"] = l, o));

    function A(o, l, u) {
        return o.props || (o.props = {}), Tn(o.type, { ...o.props,
            key: `${o.key}-duplicate-${l}-${u}`,
            class: `${o.props.className||""} ${n.slideDuplicateClass} ${o.props.class||""}`
        }, o.children)
    }
    if (n.loopFillGroupWithBlank) {
        const o = n.slidesPerGroup - r.length % n.slidesPerGroup;
        if (o !== n.slidesPerGroup)
            for (let l = 0; l < o; l += 1) {
                const u = Tn("div", {
                    class: `${n.slideClass} ${n.slideBlankClass}`
                });
                r.push(u)
            }
    }
    n.slidesPerView === "auto" && !n.loopedSlides && (n.loopedSlides = r.length);
    const i = Vy(r, n),
        s = [],
        a = [];
    for (let o = 0; o < i; o += 1) {
        const l = o - Math.floor(o / r.length) * r.length;
        a.push(A(r[l], o, "append")), s.unshift(A(r[r.length - l - 1], o, "prepend"))
    }
    return e.value && (e.value.loopedSlides = i), [...s, ...r, ...a]
}

function Wj(e, t, n, r, A) {
    const i = [];
    if (!t) return i;
    const s = o => {
        i.indexOf(o) < 0 && i.push(o)
    };
    if (n && r) {
        const o = r.map(A),
            l = n.map(A);
        o.join("") !== l.join("") && s("children"), r.length !== n.length && s("children")
    }
    return Ky.filter(o => o[0] === "_").map(o => o.replace(/_/, "")).forEach(o => {
        if (o in e && o in t)
            if (ra(e[o]) && ra(t[o])) {
                const l = Object.keys(e[o]),
                    u = Object.keys(t[o]);
                l.length !== u.length ? s(o) : (l.forEach(f => {
                    e[o][f] !== t[o][f] && s(o)
                }), u.forEach(f => {
                    e[o][f] !== t[o][f] && s(o)
                }))
            } else e[o] !== t[o] && s(o)
    }), i
}

function Dd(e, t, n) {
    e === void 0 && (e = {});
    const r = [],
        A = {
            "container-start": [],
            "container-end": [],
            "wrapper-start": [],
            "wrapper-end": []
        },
        i = (s, a) => {
            Array.isArray(s) && s.forEach(o => {
                const l = typeof o.type == "symbol";
                a === "default" && (a = "container-end"), l && o.children ? i(o.children, "default") : o.type && (o.type.name === "SwiperSlide" || o.type.name === "AsyncComponentWrapper") ? r.push(o) : A[a] && A[a].push(o)
            })
        };
    return Object.keys(e).forEach(s => {
        if (typeof e[s] != "function") return;
        const a = e[s]();
        i(a, s)
    }), n.value = t.value, t.value = r, {
        slides: r,
        slots: A
    }
}

function jj({
    swiper: e,
    slides: t,
    passedParams: n,
    changedParams: r,
    nextEl: A,
    prevEl: i,
    scrollbarEl: s,
    paginationEl: a
}) {
    const o = r.filter(b => b !== "children" && b !== "direction"),
        {
            params: l,
            pagination: u,
            navigation: f,
            scrollbar: d,
            virtual: p,
            thumbs: m
        } = e;
    let g, y, w, B, x;
    r.includes("thumbs") && n.thumbs && n.thumbs.swiper && l.thumbs && !l.thumbs.swiper && (g = !0), r.includes("controller") && n.controller && n.controller.control && l.controller && !l.controller.control && (y = !0), r.includes("pagination") && n.pagination && (n.pagination.el || a) && (l.pagination || l.pagination === !1) && u && !u.el && (w = !0), r.includes("scrollbar") && n.scrollbar && (n.scrollbar.el || s) && (l.scrollbar || l.scrollbar === !1) && d && !d.el && (B = !0), r.includes("navigation") && n.navigation && (n.navigation.prevEl || i) && (n.navigation.nextEl || A) && (l.navigation || l.navigation === !1) && f && !f.prevEl && !f.nextEl && (x = !0);
    const C = b => {
        e[b] && (e[b].destroy(), b === "navigation" ? (l[b].prevEl = void 0, l[b].nextEl = void 0, e[b].prevEl = void 0, e[b].nextEl = void 0) : (l[b].el = void 0, e[b].el = void 0))
    };
    o.forEach(b => {
        if (ra(l[b]) && ra(n[b])) Vi(l[b], n[b]);
        else {
            const F = n[b];
            (F === !0 || F === !1) && (b === "navigation" || b === "pagination" || b === "scrollbar") ? F === !1 && C(b): l[b] = n[b]
        }
    }), o.includes("controller") && !y && e.controller && e.controller.control && l.controller && l.controller.control && (e.controller.control = l.controller.control), r.includes("children") && t && p && l.virtual.enabled ? (p.slides = t, p.update(!0)) : r.includes("children") && e.lazy && e.params.lazy.enabled && e.lazy.load(), g && m.init() && m.update(!0), y && (e.controller.control = l.controller.control), w && (a && (l.pagination.el = a), u.init(), u.render(), u.update()), B && (s && (l.scrollbar.el = s), d.init(), d.updateSize(), d.setTranslate()), x && (A && (l.navigation.nextEl = A), i && (l.navigation.prevEl = i), f.init(), f.update()), r.includes("allowSlideNext") && (e.allowSlideNext = n.allowSlideNext), r.includes("allowSlidePrev") && (e.allowSlidePrev = n.allowSlidePrev), r.includes("direction") && e.changeDirection(n.direction, !1), e.update()
}

function Yj(e, t, n) {
    if (!n) return null;
    const r = e.value.isHorizontal() ? {
        [e.value.rtlTranslate ? "right" : "left"]: `${n.offset}px`
    } : {
        top: `${n.offset}px`
    };
    return t.filter((A, i) => i >= n.from && i <= n.to).map(A => (A.props || (A.props = {}), A.props.style || (A.props.style = {}), A.props.swiperRef = e, A.props.style = r, Tn(A.type, { ...A.props
    }, A.children)))
}
const Xj = e => {
        !e || e.destroyed || !e.params.virtual || e.params.virtual && !e.params.virtual.enabled || (e.updateSlides(), e.updateProgress(), e.updateSlidesClasses(), e.lazy && e.params.lazy.enabled && e.lazy.load(), e.parallax && e.params.parallax && e.params.parallax.enabled && e.parallax.setTranslate())
    },
    vre = {
        name: "Swiper",
        props: {
            tag: {
                type: String,
                default: "div"
            },
            wrapperTag: {
                type: String,
                default: "div"
            },
            modules: {
                type: Array,
                default: void 0
            },
            init: {
                type: Boolean,
                default: void 0
            },
            direction: {
                type: String,
                default: void 0
            },
            touchEventsTarget: {
                type: String,
                default: void 0
            },
            initialSlide: {
                type: Number,
                default: void 0
            },
            speed: {
                type: Number,
                default: void 0
            },
            cssMode: {
                type: Boolean,
                default: void 0
            },
            updateOnWindowResize: {
                type: Boolean,
                default: void 0
            },
            resizeObserver: {
                type: Boolean,
                default: void 0
            },
            nested: {
                type: Boolean,
                default: void 0
            },
            focusableElements: {
                type: String,
                default: void 0
            },
            width: {
                type: Number,
                default: void 0
            },
            height: {
                type: Number,
                default: void 0
            },
            preventInteractionOnTransition: {
                type: Boolean,
                default: void 0
            },
            userAgent: {
                type: String,
                default: void 0
            },
            url: {
                type: String,
                default: void 0
            },
            edgeSwipeDetection: {
                type: [Boolean, String],
                default: void 0
            },
            edgeSwipeThreshold: {
                type: Number,
                default: void 0
            },
            autoHeight: {
                type: Boolean,
                default: void 0
            },
            setWrapperSize: {
                type: Boolean,
                default: void 0
            },
            virtualTranslate: {
                type: Boolean,
                default: void 0
            },
            effect: {
                type: String,
                default: void 0
            },
            breakpoints: {
                type: Object,
                default: void 0
            },
            spaceBetween: {
                type: Number,
                default: void 0
            },
            slidesPerView: {
                type: [Number, String],
                default: void 0
            },
            maxBackfaceHiddenSlides: {
                type: Number,
                default: void 0
            },
            slidesPerGroup: {
                type: Number,
                default: void 0
            },
            slidesPerGroupSkip: {
                type: Number,
                default: void 0
            },
            slidesPerGroupAuto: {
                type: Boolean,
                default: void 0
            },
            centeredSlides: {
                type: Boolean,
                default: void 0
            },
            centeredSlidesBounds: {
                type: Boolean,
                default: void 0
            },
            slidesOffsetBefore: {
                type: Number,
                default: void 0
            },
            slidesOffsetAfter: {
                type: Number,
                default: void 0
            },
            normalizeSlideIndex: {
                type: Boolean,
                default: void 0
            },
            centerInsufficientSlides: {
                type: Boolean,
                default: void 0
            },
            watchOverflow: {
                type: Boolean,
                default: void 0
            },
            roundLengths: {
                type: Boolean,
                default: void 0
            },
            touchRatio: {
                type: Number,
                default: void 0
            },
            touchAngle: {
                type: Number,
                default: void 0
            },
            simulateTouch: {
                type: Boolean,
                default: void 0
            },
            shortSwipes: {
                type: Boolean,
                default: void 0
            },
            longSwipes: {
                type: Boolean,
                default: void 0
            },
            longSwipesRatio: {
                type: Number,
                default: void 0
            },
            longSwipesMs: {
                type: Number,
                default: void 0
            },
            followFinger: {
                type: Boolean,
                default: void 0
            },
            allowTouchMove: {
                type: Boolean,
                default: void 0
            },
            threshold: {
                type: Number,
                default: void 0
            },
            touchMoveStopPropagation: {
                type: Boolean,
                default: void 0
            },
            touchStartPreventDefault: {
                type: Boolean,
                default: void 0
            },
            touchStartForcePreventDefault: {
                type: Boolean,
                default: void 0
            },
            touchReleaseOnEdges: {
                type: Boolean,
                default: void 0
            },
            uniqueNavElements: {
                type: Boolean,
                default: void 0
            },
            resistance: {
                type: Boolean,
                default: void 0
            },
            resistanceRatio: {
                type: Number,
                default: void 0
            },
            watchSlidesProgress: {
                type: Boolean,
                default: void 0
            },
            grabCursor: {
                type: Boolean,
                default: void 0
            },
            preventClicks: {
                type: Boolean,
                default: void 0
            },
            preventClicksPropagation: {
                type: Boolean,
                default: void 0
            },
            slideToClickedSlide: {
                type: Boolean,
                default: void 0
            },
            preloadImages: {
                type: Boolean,
                default: void 0
            },
            updateOnImagesReady: {
                type: Boolean,
                default: void 0
            },
            loop: {
                type: Boolean,
                default: void 0
            },
            loopAdditionalSlides: {
                type: Number,
                default: void 0
            },
            loopedSlides: {
                type: Number,
                default: void 0
            },
            loopedSlidesLimit: {
                type: Boolean,
                default: !0
            },
            loopFillGroupWithBlank: {
                type: Boolean,
                default: void 0
            },
            loopPreventsSlide: {
                type: Boolean,
                default: void 0
            },
            rewind: {
                type: Boolean,
                default: void 0
            },
            allowSlidePrev: {
                type: Boolean,
                default: void 0
            },
            allowSlideNext: {
                type: Boolean,
                default: void 0
            },
            swipeHandler: {
                type: Boolean,
                default: void 0
            },
            noSwiping: {
                type: Boolean,
                default: void 0
            },
            noSwipingClass: {
                type: String,
                default: void 0
            },
            noSwipingSelector: {
                type: String,
                default: void 0
            },
            passiveListeners: {
                type: Boolean,
                default: void 0
            },
            containerModifierClass: {
                type: String,
                default: void 0
            },
            slideClass: {
                type: String,
                default: void 0
            },
            slideBlankClass: {
                type: String,
                default: void 0
            },
            slideActiveClass: {
                type: String,
                default: void 0
            },
            slideDuplicateActiveClass: {
                type: String,
                default: void 0
            },
            slideVisibleClass: {
                type: String,
                default: void 0
            },
            slideDuplicateClass: {
                type: String,
                default: void 0
            },
            slideNextClass: {
                type: String,
                default: void 0
            },
            slideDuplicateNextClass: {
                type: String,
                default: void 0
            },
            slidePrevClass: {
                type: String,
                default: void 0
            },
            slideDuplicatePrevClass: {
                type: String,
                default: void 0
            },
            wrapperClass: {
                type: String,
                default: void 0
            },
            runCallbacksOnInit: {
                type: Boolean,
                default: void 0
            },
            observer: {
                type: Boolean,
                default: void 0
            },
            observeParents: {
                type: Boolean,
                default: void 0
            },
            observeSlideChildren: {
                type: Boolean,
                default: void 0
            },
            a11y: {
                type: [Boolean, Object],
                default: void 0
            },
            autoplay: {
                type: [Boolean, Object],
                default: void 0
            },
            controller: {
                type: Object,
                default: void 0
            },
            coverflowEffect: {
                type: Object,
                default: void 0
            },
            cubeEffect: {
                type: Object,
                default: void 0
            },
            fadeEffect: {
                type: Object,
                default: void 0
            },
            flipEffect: {
                type: Object,
                default: void 0
            },
            creativeEffect: {
                type: Object,
                default: void 0
            },
            cardsEffect: {
                type: Object,
                default: void 0
            },
            hashNavigation: {
                type: [Boolean, Object],
                default: void 0
            },
            history: {
                type: [Boolean, Object],
                default: void 0
            },
            keyboard: {
                type: [Boolean, Object],
                default: void 0
            },
            lazy: {
                type: [Boolean, Object],
                default: void 0
            },
            mousewheel: {
                type: [Boolean, Object],
                default: void 0
            },
            navigation: {
                type: [Boolean, Object],
                default: void 0
            },
            pagination: {
                type: [Boolean, Object],
                default: void 0
            },
            parallax: {
                type: [Boolean, Object],
                default: void 0
            },
            scrollbar: {
                type: [Boolean, Object],
                default: void 0
            },
            thumbs: {
                type: Object,
                default: void 0
            },
            virtual: {
                type: [Boolean, Object],
                default: void 0
            },
            zoom: {
                type: [Boolean, Object],
                default: void 0
            },
            grid: {
                type: [Object],
                default: void 0
            },
            freeMode: {
                type: [Boolean, Object],
                default: void 0
            },
            enabled: {
                type: Boolean,
                default: void 0
            }
        },
        emits: ["_beforeBreakpoint", "_containerClasses", "_slideClass", "_slideClasses", "_swiper", "_freeModeNoMomentumRelease", "activeIndexChange", "afterInit", "autoplay", "autoplayStart", "autoplayStop", "autoplayPause", "autoplayResume", "beforeDestroy", "beforeInit", "beforeLoopFix", "beforeResize", "beforeSlideChangeStart", "beforeTransitionStart", "breakpoint", "changeDirection", "click", "disable", "doubleTap", "doubleClick", "destroy", "enable", "fromEdge", "hashChange", "hashSet", "imagesReady", "init", "keyPress", "lazyImageLoad", "lazyImageReady", "lock", "loopFix", "momentumBounce", "navigationHide", "navigationShow", "navigationPrev", "navigationNext", "observerUpdate", "orientationchange", "paginationHide", "paginationRender", "paginationShow", "paginationUpdate", "progress", "reachBeginning", "reachEnd", "realIndexChange", "resize", "scroll", "scrollbarDragEnd", "scrollbarDragMove", "scrollbarDragStart", "setTransition", "setTranslate", "slideChange", "slideChangeTransitionEnd", "slideChangeTransitionStart", "slideNextTransitionEnd", "slideNextTransitionStart", "slidePrevTransitionEnd", "slidePrevTransitionStart", "slideResetTransitionStart", "slideResetTransitionEnd", "sliderMove", "sliderFirstMove", "slidesLengthChange", "slidesGridLengthChange", "snapGridLengthChange", "snapIndexChange", "swiper", "tap", "toEdge", "touchEnd", "touchMove", "touchMoveOpposite", "touchStart", "transitionEnd", "transitionStart", "unlock", "update", "virtualUpdate", "zoomChange"],
        setup(e, t) {
            let {
                slots: n,
                emit: r
            } = t;
            const {
                tag: A,
                wrapperTag: i
            } = e, s = Ue("swiper"), a = Ue(null), o = Ue(!1), l = Ue(!1), u = Ue(null), f = Ue(null), d = Ue(null), p = {
                value: []
            }, m = {
                value: []
            }, g = Ue(null), y = Ue(null), w = Ue(null), B = Ue(null), {
                params: x,
                passedParams: C
            } = Dm(e, !1);
            Dd(n, p, m), d.value = C, m.value = p.value;
            const b = () => {
                Dd(n, p, m), o.value = !0
            };
            if (x.onAny = function(T) {
                    for (var I = arguments.length, D = new Array(I > 1 ? I - 1 : 0), U = 1; U < I; U++) D[U - 1] = arguments[U];
                    r(T, ...D)
                }, Object.assign(x.on, {
                    _beforeBreakpoint: b,
                    _containerClasses(T, I) {
                        s.value = I
                    }
                }), f.value = new lo(x), f.value.loopCreate = () => {}, f.value.loopDestroy = () => {}, x.loop && (f.value.loopedSlides = Vy(p.value, x)), f.value.virtual && f.value.params.virtual.enabled) {
                f.value.virtual.slides = p.value;
                const T = {
                    cache: !1,
                    slides: p.value,
                    renderExternal: I => {
                        a.value = I
                    },
                    renderExternalUpdate: !1
                };
                Vi(f.value.params.virtual, T), Vi(f.value.originalParams.virtual, T)
            }
            sa(() => {
                !l.value && f.value && (f.value.emitSlidesClasses(), l.value = !0);
                const {
                    passedParams: T
                } = Dm(e, !1), I = Wj(T, d.value, p.value, m.value, D => D.props && D.props.key);
                d.value = T, (I.length || o.value) && f.value && !f.value.destroyed && jj({
                    swiper: f.value,
                    slides: p.value,
                    passedParams: T,
                    changedParams: I,
                    nextEl: g.value,
                    prevEl: y.value,
                    scrollbarEl: B.value,
                    paginationEl: w.value
                }), o.value = !1
            }), AA("swiper", f), je(a, () => {
                yt(() => {
                    Xj(f.value)
                })
            }), qt(() => {
                u.value && (Gj({
                    el: u.value,
                    nextEl: g.value,
                    prevEl: y.value,
                    paginationEl: w.value,
                    scrollbarEl: B.value,
                    swiper: f.value
                }, x), r("swiper", f.value))
            }), Tr(() => {
                f.value && !f.value.destroyed && f.value.destroy(!0, !1)
            });

            function F(T) {
                return x.virtual ? Yj(f, T, a.value) : !x.loop || f.value && f.value.destroyed ? (T.forEach(I => {
                    I.props || (I.props = {}), I.props.swiperRef = f
                }), T) : zj(f, T, x)
            }
            return () => {
                const {
                    slides: T,
                    slots: I
                } = Dd(n, p, m);
                return Tn(A, {
                    ref: u,
                    class: $y(s.value)
                }, [I["container-start"], Tn(i, {
                    class: "swiper-wrapper"
                }, [I["wrapper-start"], F(T), I["wrapper-end"]]), My(e) && [Tn("div", {
                    ref: y,
                    class: "swiper-button-prev"
                }), Tn("div", {
                    ref: g,
                    class: "swiper-button-next"
                })], Ny(e) && Tn("div", {
                    ref: B,
                    class: "swiper-scrollbar"
                }), Ry(e) && Tn("div", {
                    ref: w,
                    class: "swiper-pagination"
                }), I["container-end"]])
            }
        }
    },
    mre = {
        name: "SwiperSlide",
        props: {
            tag: {
                type: String,
                default: "div"
            },
            swiperRef: {
                type: Object,
                required: !1
            },
            zoom: {
                type: Boolean,
                default: void 0
            },
            virtualIndex: {
                type: [String, Number],
                default: void 0
            }
        },
        setup(e, t) {
            let {
                slots: n
            } = t, r = !1;
            const {
                swiperRef: A
            } = e, i = Ue(null), s = Ue("swiper-slide");

            function a(l, u, f) {
                u === i.value && (s.value = f)
            }
            qt(() => {
                !A || !A.value || (A.value.on("_slideClass", a), r = !0)
            }), qc(() => {
                r || !A || !A.value || (A.value.on("_slideClass", a), r = !0)
            }), sa(() => {
                !i.value || !A || !A.value || A.value.destroyed && s.value !== "swiper-slide" && (s.value = "swiper-slide")
            }), Tr(() => {
                !A || !A.value || A.value.off("_slideClass", a)
            });
            const o = Oe(() => ({
                isActive: s.value.indexOf("swiper-slide-active") >= 0 || s.value.indexOf("swiper-slide-duplicate-active") >= 0,
                isVisible: s.value.indexOf("swiper-slide-visible") >= 0,
                isDuplicate: s.value.indexOf("swiper-slide-duplicate") >= 0,
                isPrev: s.value.indexOf("swiper-slide-prev") >= 0 || s.value.indexOf("swiper-slide-duplicate-prev") >= 0,
                isNext: s.value.indexOf("swiper-slide-next") >= 0 || s.value.indexOf("swiper-slide-duplicate-next") >= 0
            }));
            return AA("swiperSlide", o), () => Tn(e.tag, {
                class: $y(`${s.value}`),
                ref: i,
                "data-swiper-slide-index": e.virtualIndex
            }, e.zoom ? Tn("div", {
                class: "swiper-zoom-container",
                "data-swiper-zoom": typeof e.zoom == "number" ? e.zoom : void 0
            }, n.default && n.default(o.value)) : n.default && n.default(o.value))
        }
    };
var ze = {
    pullStartY: null,
    pullMoveY: null,
    handlers: [],
    styleEl: null,
    events: null,
    dist: 0,
    state: "pending",
    timeout: null,
    distResisted: 0,
    supportsPassive: !1,
    supportsPointerEvents: typeof window < "u" && !!window.PointerEvent
};
try {
    window.addEventListener("test", null, {
        get passive() {
            ze.supportsPassive = !0
        }
    })
} catch {}

function Jj(e) {
    if (!e.ptrElement) {
        var t = document.createElement("div");
        e.mainElement !== document.body ? e.mainElement.parentNode.insertBefore(t, e.mainElement) : document.body.insertBefore(t, document.body.firstChild), t.classList.add(e.classPrefix + "ptr"), t.innerHTML = e.getMarkup().replace(/__PREFIX__/g, e.classPrefix), e.ptrElement = t, typeof e.onInit == "function" && e.onInit(e), ze.styleEl || (ze.styleEl = document.createElement("style"), ze.styleEl.setAttribute("id", "pull-to-refresh-js-style"), document.head.appendChild(ze.styleEl)), ze.styleEl.textContent = e.getStyles().replace(/__PREFIX__/g, e.classPrefix).replace(/\s+/g, " ")
    }
    return e
}

function qj(e) {
    e.ptrElement && (e.ptrElement.classList.remove(e.classPrefix + "refresh"), e.ptrElement.style[e.cssProp] = "0px", setTimeout(function() {
        e.ptrElement && e.ptrElement.parentNode && (e.ptrElement.parentNode.removeChild(e.ptrElement), e.ptrElement = null), ze.state = "pending"
    }, e.refreshTimeout))
}

function Zj(e) {
    var t = e.ptrElement.querySelector("." + e.classPrefix + "icon"),
        n = e.ptrElement.querySelector("." + e.classPrefix + "text");
    t && (ze.state === "refreshing" ? t.innerHTML = e.iconRefreshing : t.innerHTML = e.iconArrow), n && (ze.state === "releasing" && (n.innerHTML = e.instructionsReleaseToRefresh), (ze.state === "pulling" || ze.state === "pending") && (n.innerHTML = e.instructionsPullToRefresh), ze.state === "refreshing" && (n.innerHTML = e.instructionsRefreshing))
}
var Er = {
        setupDOM: Jj,
        onReset: qj,
        update: Zj
    },
    Pm, Pd = function(t) {
        return ze.pointerEventsEnabled && ze.supportsPointerEvents ? t.screenY : t.touches[0].screenY
    },
    Gy = function() {
        var e;

        function t(s) {
            var a = ze.handlers.filter(function(o) {
                return o.contains(s.target)
            })[0];
            ze.enable = !!a, a && ze.state === "pending" && (e = Er.setupDOM(a), a.shouldPullToRefresh() && (ze.pullStartY = Pd(s)), clearTimeout(ze.timeout), Er.update(a))
        }

        function n(s) {
            if (e && e.ptrElement && ze.enable) {
                if (ze.pullStartY ? ze.pullMoveY = Pd(s) : e.shouldPullToRefresh() && (ze.pullStartY = Pd(s)), ze.state === "refreshing") {
                    s.cancelable && e.shouldPullToRefresh() && ze.pullStartY < ze.pullMoveY && s.preventDefault();
                    return
                }
                ze.state === "pending" && (e.ptrElement.classList.add(e.classPrefix + "pull"), ze.state = "pulling", Er.update(e)), ze.pullStartY && ze.pullMoveY && (ze.dist = ze.pullMoveY - ze.pullStartY), ze.distExtra = ze.dist - e.distIgnore, ze.distExtra > 0 && (s.cancelable && s.preventDefault(), e.ptrElement.style[e.cssProp] = ze.distResisted + "px", ze.distResisted = e.resistanceFunction(ze.distExtra / e.distThreshold) * Math.min(e.distMax, ze.distExtra), ze.state === "pulling" && ze.distResisted > e.distThreshold && (e.ptrElement.classList.add(e.classPrefix + "release"), ze.state = "releasing", Er.update(e)), ze.state === "releasing" && ze.distResisted < e.distThreshold && (e.ptrElement.classList.remove(e.classPrefix + "release"), ze.state = "pulling", Er.update(e)))
            }
        }

        function r() {
            if (e && e.ptrElement && ze.enable) {
                if (clearTimeout(Pm), Pm = setTimeout(function() {
                        e && e.ptrElement && ze.state === "pending" && Er.onReset(e)
                    }, 500), ze.state === "releasing" && ze.distResisted > e.distThreshold) ze.state = "refreshing", e.ptrElement.style[e.cssProp] = e.distReload + "px", e.ptrElement.classList.add(e.classPrefix + "refresh"), ze.timeout = setTimeout(function() {
                    var s = e.onRefresh(function() {
                        return Er.onReset(e)
                    });
                    s && typeof s.then == "function" && s.then(function() {
                        return Er.onReset(e)
                    }), !s && !e.onRefresh.length && Er.onReset(e)
                }, e.refreshTimeout);
                else {
                    if (ze.state === "refreshing") return;
                    e.ptrElement.style[e.cssProp] = "0px", ze.state = "pending"
                }
                Er.update(e), e.ptrElement.classList.remove(e.classPrefix + "release"), e.ptrElement.classList.remove(e.classPrefix + "pull"), ze.pullStartY = ze.pullMoveY = null, ze.dist = ze.distResisted = 0
            }
        }

        function A() {
            e && e.mainElement.classList.toggle(e.classPrefix + "top", e.shouldPullToRefresh())
        }
        var i = ze.supportsPassive ? {
            passive: ze.passive || !1
        } : void 0;
        return ze.pointerEventsEnabled && ze.supportsPointerEvents ? (window.addEventListener("pointerup", r), window.addEventListener("pointerdown", t), window.addEventListener("pointermove", n, i)) : (window.addEventListener("touchend", r), window.addEventListener("touchstart", t), window.addEventListener("touchmove", n, i)), window.addEventListener("scroll", A), {
            onTouchEnd: r,
            onTouchStart: t,
            onTouchMove: n,
            onScroll: A,
            destroy: function() {
                ze.pointerEventsEnabled && ze.supportsPointerEvents ? (window.removeEventListener("pointerdown", t), window.removeEventListener("pointerup", r), window.removeEventListener("pointermove", n, i)) : (window.removeEventListener("touchstart", t), window.removeEventListener("touchend", r), window.removeEventListener("touchmove", n, i)), window.removeEventListener("scroll", A)
            }
        }
    },
    eY = `
<div class="__PREFIX__box">
  <div class="__PREFIX__content">
    <div class="__PREFIX__icon"></div>
    <div class="__PREFIX__text"></div>
  </div>
</div>
`,
    tY = `
.__PREFIX__ptr {
  box-shadow: inset 0 -3px 5px rgba(0, 0, 0, 0.12);
  pointer-events: none;
  font-size: 0.85em;
  font-weight: bold;
  top: 0;
  height: 0;
  transition: height 0.3s, min-height 0.3s;
  text-align: center;
  width: 100%;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  align-content: stretch;
}

.__PREFIX__box {
  padding: 10px;
  flex-basis: 100%;
}

.__PREFIX__pull {
  transition: none;
}

.__PREFIX__text {
  margin-top: .33em;
  color: rgba(0, 0, 0, 0.3);
}

.__PREFIX__icon {
  color: rgba(0, 0, 0, 0.3);
  transition: transform .3s;
}

/*
When at the top of the page, disable vertical overscroll so passive touch
listeners can take over.
*/
.__PREFIX__top {
  touch-action: pan-x pan-down pinch-zoom;
}

.__PREFIX__release .__PREFIX__icon {
  transform: rotate(180deg);
}
`,
    Od = {
        distThreshold: 60,
        distMax: 80,
        distReload: 50,
        distIgnore: 0,
        mainElement: "body",
        triggerElement: "body",
        ptrElement: ".ptr",
        classPrefix: "ptr--",
        cssProp: "min-height",
        iconArrow: "&#8675;",
        iconRefreshing: "&hellip;",
        instructionsPullToRefresh: "Pull down to refresh",
        instructionsReleaseToRefresh: "Release to refresh",
        instructionsRefreshing: "Refreshing",
        refreshTimeout: 500,
        getMarkup: function() {
            return eY
        },
        getStyles: function() {
            return tY
        },
        onInit: function() {},
        onRefresh: function() {
            return location.reload()
        },
        resistanceFunction: function(e) {
            return Math.min(1, e / 2.5)
        },
        shouldPullToRefresh: function() {
            return !window.scrollY
        }
    },
    nY = ["mainElement", "ptrElement", "triggerElement"],
    Om = function(e) {
        var t = {};
        return Object.keys(Od).forEach(function(n) {
            t[n] = e[n] || Od[n]
        }), t.refreshTimeout = typeof e.refreshTimeout == "number" ? e.refreshTimeout : Od.refreshTimeout, nY.forEach(function(n) {
            typeof t[n] == "string" && (t[n] = document.querySelector(t[n]))
        }), ze.events || (ze.events = Gy()), t.contains = function(n) {
            return t.triggerElement.contains(n)
        }, t.destroy = function() {
            clearTimeout(ze.timeout);
            var n = ze.handlers.indexOf(t);
            ze.handlers.splice(n, 1)
        }, t
    },
    rY = {
        setPassiveMode: function(t) {
            ze.passive = t
        },
        setPointerEventsMode: function(t) {
            ze.pointerEventsEnabled = t
        },
        destroyAll: function() {
            ze.events && (ze.events.destroy(), ze.events = null), ze.handlers.forEach(function(t) {
                t.destroy()
            })
        },
        init: function(t) {
            t === void 0 && (t = {});
            var n = Om(t);
            return ze.handlers.push(n), n
        },
        _: {
            setupHandler: Om,
            setupEvents: Gy,
            setupDOM: Er.setupDOM,
            onReset: Er.onReset,
            update: Er.update
        }
    };
const Bre = rY;
var zy = !1;
/*! *****************************************************************************
Copyright (c) Microsoft Corporation.

Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.

THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */
var hr = function() {
    return hr = Object.assign || function(e) {
        for (var t, n = 1, r = arguments.length; n < r; n++)
            for (var A in t = arguments[n]) Object.prototype.hasOwnProperty.call(t, A) && (e[A] = t[A]);
        return e
    }, hr.apply(this, arguments)
};
/*! *****************************************************************************
Copyright (c) Microsoft Corporation.

Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.

THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */
var wh = function(e, t) {
    return wh = Object.setPrototypeOf || {
        __proto__: []
    }
    instanceof Array && function(n, r) {
        n.__proto__ = r
    } || function(n, r) {
        for (var A in r) Object.prototype.hasOwnProperty.call(r, A) && (n[A] = r[A])
    }, wh(e, t)
};

function Zp(e, t) {
    if (typeof t != "function" && t !== null) throw new TypeError("Class extends value " + String(t) + " is not a constructor or null");

    function n() {
        this.constructor = e
    }
    wh(e, t), e.prototype = t === null ? Object.create(t) : (n.prototype = t.prototype, new n)
}
var ZA = function() {
    return ZA = Object.assign || function(e) {
        for (var t, n = 1, r = arguments.length; n < r; n++)
            for (var A in t = arguments[n]) Object.prototype.hasOwnProperty.call(t, A) && (e[A] = t[A]);
        return e
    }, ZA.apply(this, arguments)
};

function ei(e, t, n, r) {
    return new(n || (n = Promise))(function(A, i) {
        function s(l) {
            try {
                o(r.next(l))
            } catch (u) {
                i(u)
            }
        }

        function a(l) {
            try {
                o(r.throw(l))
            } catch (u) {
                i(u)
            }
        }

        function o(l) {
            var u;
            l.done ? A(l.value) : (u = l.value, u instanceof n ? u : new n(function(f) {
                f(u)
            })).then(s, a)
        }
        o((r = r.apply(e, t || [])).next())
    })
}

function ti(e, t) {
    var n, r, A, i, s = {
        label: 0,
        sent: function() {
            if (1 & A[0]) throw A[1];
            return A[1]
        },
        trys: [],
        ops: []
    };
    return i = {
        next: a(0),
        throw: a(1),
        return: a(2)
    }, typeof Symbol == "function" && (i[Symbol.iterator] = function() {
        return this
    }), i;

    function a(o) {
        return function(l) {
            return function(u) {
                if (n) throw new TypeError("Generator is already executing.");
                for (; s;) try {
                    if (n = 1, r && (A = 2 & u[0] ? r.return : u[0] ? r.throw || ((A = r.return) && A.call(r), 0) : r.next) && !(A = A.call(r, u[1])).done) return A;
                    switch (r = 0, A && (u = [2 & u[0], A.value]), u[0]) {
                        case 0:
                        case 1:
                            A = u;
                            break;
                        case 4:
                            return s.label++, {
                                value: u[1],
                                done: !1
                            };
                        case 5:
                            s.label++, r = u[1], u = [0];
                            continue;
                        case 7:
                            u = s.ops.pop(), s.trys.pop();
                            continue;
                        default:
                            if (!((A = (A = s.trys).length > 0 && A[A.length - 1]) || u[0] !== 6 && u[0] !== 2)) {
                                s = 0;
                                continue
                            }
                            if (u[0] === 3 && (!A || u[1] > A[0] && u[1] < A[3])) {
                                s.label = u[1];
                                break
                            }
                            if (u[0] === 6 && s.label < A[1]) {
                                s.label = A[1], A = u;
                                break
                            }
                            if (A && s.label < A[2]) {
                                s.label = A[2], s.ops.push(u);
                                break
                            }
                            A[2] && s.ops.pop(), s.trys.pop();
                            continue
                    }
                    u = t.call(e, s)
                } catch (f) {
                    u = [6, f], r = 0
                } finally {
                    n = A = 0
                }
                if (5 & u[0]) throw u[1];
                return {
                    value: u[0] ? u[1] : void 0,
                    done: !0
                }
            }([o, l])
        }
    }
}

function Ka(e, t) {
    for (var n = 0, r = t.length, A = e.length; n < r; n++, A++) e[A] = t[n];
    return e
}
Array.prototype.includes || Object.defineProperty(Array.prototype, "includes", {
    value: function(e, t) {
        if (this == null) throw new TypeError('"this" is null or not defined');
        var n = Object(this),
            r = n.length >>> 0;
        if (r === 0) return !1;
        for (var A, i, s = 0 | t, a = Math.max(s >= 0 ? s : r - Math.abs(s), 0); a < r;) {
            if ((A = n[a]) === (i = e) || typeof A == "number" && typeof i == "number" && isNaN(A) && isNaN(i)) return !0;
            a++
        }
        return !1
    }
}), String.prototype.includes || (String.prototype.includes = function(e, t) {
    return typeof t != "number" && (t = 0), !(t + e.length > this.length) && this.indexOf(e, t) !== -1
}), Array.prototype.find || Object.defineProperty(Array.prototype, "find", {
    value: function(e) {
        if (this == null) throw new TypeError('"this" is null or not defined');
        var t = Object(this),
            n = t.length >>> 0;
        if (typeof e != "function") throw new TypeError("predicate must be a function");
        for (var r = arguments[1], A = 0; A < n;) {
            var i = t[A];
            if (e.call(r, i, A, t)) return i;
            A++
        }
    }
});
var r0 = function(e) {
        for (var t = [], n = 1; n < arguments.length; n++) t[n - 1] = arguments[n];
        return t.some(function(r) {
            return Object.prototype.toString.call(e).slice(8, -1).toLowerCase() === r
        })
    },
    uo = function(e, t) {
        return Object.prototype.hasOwnProperty.call(e, t)
    },
    e5 = function(e) {
        return [].filter.call(e, function(t) {
            return t !== `
`
        }).join("")
    },
    Gi = function(e) {
        if (typeof e != "string" || (e = e.toLocaleLowerCase().trim()) === "transparent") return !1;
        var t;
        return !(/^rgba/.test(e) && ((t = /([^\s,]+)\)$/.exec(e)) === null ? 0 : typeof t == "object" ? NaN : typeof t == "number" ? t : typeof t == "string" ? t[t.length - 1] === "%" ? Number(t.slice(0, -1)) / 100 : Number(t) : NaN) === 0)
    },
    Wy = function(e, t) {
        var n, r = ((n = e.padding) === null || n === void 0 ? void 0 : n.split(" ").map(function(u) {
                return t(u)
            })) || [0],
            A = 0,
            i = 0,
            s = 0,
            a = 0;
        switch (r.length) {
            case 1:
                A = i = s = a = r[0];
                break;
            case 2:
                A = i = r[0], s = a = r[1];
                break;
            case 3:
                A = r[0], s = a = r[1], i = r[2];
                break;
            default:
                A = r[0], i = r[1], s = r[2], a = r[3]
        }
        var o = {
            paddingTop: A,
            paddingBottom: i,
            paddingLeft: s,
            paddingRight: a
        };
        for (var l in o) o[l] = uo(e, l) && r0(e[l], "string", "number") ? t(e[l]) : o[l];
        return [A, i, s, a]
    },
    jy = function(e) {
        var t = [],
            n = e.map(function(A) {
                return Number(A)
            }).reduce(function(A, i) {
                if (i > 0) {
                    var s = A + i;
                    return t.push(s), s
                }
                return t.push(NaN), A
            }, 0),
            r = Math.random() * n;
        return t.findIndex(function(A) {
            return r <= A
        })
    },
    t5 = function(e, t, n, r) {
        r === void 0 && (r = 1 / 0), r <= 0 && (r = 1 / 0);
        for (var A = "", i = [], s = e.measureText("...").width, a = 0; a < t.length; a++) {
            A += t[a];
            var o = e.measureText(A).width,
                l = n(i);
            if (r === i.length + 1 && (o += s), l < 0) return i;
            if (o > l && (i.push(A.slice(0, -1)), A = t[a]), r === i.length) return i[i.length - 1] += "...", i
        }
        return A && i.push(A), i.length || i.push(t), i
    },
    Rs = function() {
        function e() {
            this.subs = []
        }
        return e.prototype.addSub = function(t) {
            this.subs.includes(t) || this.subs.push(t)
        }, e.prototype.notify = function() {
            this.subs.forEach(function(t) {
                t.update()
            })
        }, e
    }(),
    AY = "__proto__" in {};

function Lm(e, t, n, r) {
    Object.defineProperty(e, t, {
        value: n,
        enumerable: !!r,
        writable: !0,
        configurable: !0
    })
}
var Yy = Array.prototype,
    Xu = Object.create(Yy);
["push", "pop", "shift", "unshift", "sort", "splice", "reverse"].forEach(function(e) {
    Xu[e] = function() {
        for (var t = [], n = 0; n < arguments.length; n++) t[n] = arguments[n];
        var r = Yy[e].apply(this, t),
            A = this.__luckyOb__;
        return ["push", "unshift", "splice"].includes(e) && A.walk(this), A.dep.notify(), r
    }
});
var iY = function() {
    function e(t) {
        this.dep = new Rs, Lm(t, "__luckyOb__", this), Array.isArray(t) && (AY ? t.__proto__ = Xu : Object.getOwnPropertyNames(Xu).forEach(function(n) {
            Lm(t, n, Xu[n])
        })), this.walk(t)
    }
    return e.prototype.walk = function(t) {
        Object.keys(t).forEach(function(n) {
            Xy(t, n, t[n])
        })
    }, e
}();

function km(e) {
    if (e && typeof e == "object") return "__luckyOb__" in e ? e.__luckyOb__ : new iY(e)
}

function Xy(e, t, n) {
    var r = new Rs,
        A = Object.getOwnPropertyDescriptor(e, t);
    if (!A || A.configurable !== !1) {
        var i = A && A.get,
            s = A && A.set;
        i && !s || arguments.length !== 2 || (n = e[t]);
        var a = km(n);
        Object.defineProperty(e, t, {
            get: function() {
                var o = i ? i.call(e) : n;
                return Rs.target && (r.addSub(Rs.target), a && a.dep.addSub(Rs.target)), o
            },
            set: function(o) {
                o !== n && (n = o, i && !s || (s ? s.call(e, o) : n = o, a = km(o), r.notify()))
            }
        })
    }
}
var sY = 0,
    aY = function() {
        function e(t, n, r, A) {
            A === void 0 && (A = {}), this.id = sY++, this.$lucky = t, this.expr = n, this.deep = !!A.deep, this.getter = typeof n == "function" ? n : function(i) {
                i += ".";
                for (var s = [], a = "", o = 0; o < i.length; o++) {
                    var l = i[o];
                    if (/\[|\./.test(l)) s.push(a), a = "";
                    else {
                        if (/\W/.test(l)) continue;
                        a += l
                    }
                }
                return function(u) {
                    return s.reduce(function(f, d) {
                        return f[d]
                    }, u)
                }
            }(n), this.cb = r, this.value = this.get()
        }
        return e.prototype.get = function() {
            Rs.target = this;
            var t = this.getter.call(this.$lucky, this.$lucky);
            return this.deep && function(n) {
                var r = function(A) {
                    r0(A, "array", "object") && Object.keys(A).forEach(function(i) {
                        var s = A[i];
                        r(s)
                    })
                };
                r(n)
            }(t), Rs.target = null, t
        }, e.prototype.update = function() {
            var t = this.get(),
                n = this.value;
            this.value = t, this.cb.call(this.$lucky, t, n)
        }, e
    }(),
    n5 = function() {
        function e(t, n) {
            var r = this;
            this.version = "1.7.21", this.htmlFontSize = 16, this.rAF = function() {}, this.boxWidth = 0, this.boxHeight = 0, typeof t == "string" ? t = {
                el: t
            } : t.nodeType === 1 && (t = {
                el: "",
                divElement: t
            }), t = t, this.config = t, this.data = n, t.flag || (t.flag = "WEB"), t.el && (t.divElement = document.querySelector(t.el)), t.divElement && (t.canvasElement = document.createElement("canvas"), t.divElement.appendChild(t.canvasElement)), t.canvasElement && (t.ctx = t.canvasElement.getContext("2d"), t.canvasElement.setAttribute("package", "lucky-canvas@1.7.21"), t.canvasElement.addEventListener("click", function(A) {
                return r.handleClick(A)
            })), this.ctx = t.ctx, this.initWindowFunction(), this.config.ctx || console.error("无法获取到 CanvasContext2D"), window && typeof window.addEventListener == "function" && window.addEventListener("resize", function(A, i) {
                i === void 0 && (i = 300);
                var s = null;
                return function() {
                    for (var a = this, o = [], l = 0; l < arguments.length; l++) o[l] = arguments[l];
                    s || (s = setTimeout(function() {
                        A.apply(a, o), clearTimeout(s), s = null
                    }, i))
                }
            }(function() {
                return r.resize()
            }, 300)), window && typeof window.MutationObserver == "function" && new window.MutationObserver(function() {
                r.resize()
            }).observe(document.documentElement, {
                attributes: !0
            })
        }
        return e.prototype.resize = function() {
            var t, n;
            (n = (t = this.config).beforeResize) === null || n === void 0 || n.call(t), this.setHTMLFontSize(), this.setDpr(), this.resetWidthAndHeight(), this.zoomCanvas()
        }, e.prototype.initLucky = function() {
            if (this.resize(), !this.boxWidth || !this.boxHeight) return console.error("无法获取到宽度或高度")
        }, e.prototype.handleClick = function(t) {}, e.prototype.setHTMLFontSize = function() {
            window && (this.htmlFontSize = +window.getComputedStyle(document.documentElement).fontSize.slice(0, -2))
        }, e.prototype.clearCanvas = function() {
            var t = [this.boxWidth, this.boxHeight],
                n = t[0],
                r = t[1];
            this.ctx.clearRect(-n, -r, 2 * n, 2 * r)
        }, e.prototype.setDpr = function() {
            var t = this.config;
            t.dpr || (window ? window.dpr = t.dpr = window.devicePixelRatio || 1 : t.dpr || console.error(t, "未传入 dpr 可能会导致绘制异常"))
        }, e.prototype.resetWidthAndHeight = function() {
            var t = this.config,
                n = this.data,
                r = 0,
                A = 0;
            t.divElement && (r = t.divElement.offsetWidth, A = t.divElement.offsetHeight), this.boxWidth = this.getLength(n.width || t.width) || r, this.boxHeight = this.getLength(n.height || t.height) || A, t.divElement && (t.divElement.style.overflow = "hidden", t.divElement.style.width = this.boxWidth + "px", t.divElement.style.height = this.boxHeight + "px")
        }, e.prototype.zoomCanvas = function() {
            var t = this.config,
                n = this.ctx,
                r = t.canvasElement,
                A = t.dpr,
                i = [this.boxWidth * A, this.boxHeight * A],
                s = i[0],
                a = i[1];
            r && (r.width = s, r.height = a, r.style.width = s + "px", r.style.height = a + "px", r.style["transform-origin"] = "left top", r.style.transform = "scale(" + 1 / A + ")", n.scale(A, A))
        }, e.prototype.initWindowFunction = function() {
            var t = this.config;
            if (window) return this.rAF = window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || function(r) {
                window.setTimeout(r, 1e3 / 60)
            }, t.setTimeout = window.setTimeout, t.setInterval = window.setInterval, t.clearTimeout = window.clearTimeout, void(t.clearInterval = window.clearInterval);
            if (t.rAF) this.rAF = t.rAF;
            else if (t.setTimeout) {
                var n = t.setTimeout;
                this.rAF = function(r) {
                    return n(r, 16.7)
                }
            } else this.rAF = function(r) {
                return setTimeout(r, 16.7)
            }
        }, e.prototype.loadImg = function(t, n, r) {
            var A = this;
            return r === void 0 && (r = "$resolve"), new Promise(function(i, s) {
                if (t || s("=> '" + n.src + "' 不能为空或不合法"), A.config.flag !== "WEB") return n[r] = i, void(n.$reject = s);
                var a = new Image;
                a.onload = function() {
                    return i(a)
                }, a.onerror = function() {
                    return s("=> '" + n.src + "' 图片加载失败")
                }, a.src = t
            })
        }, e.prototype.drawImage = function(t, n) {
            for (var r, A = [], i = 2; i < arguments.length; i++) A[i - 2] = arguments[i];
            var s = this.config,
                a = s.flag,
                o = s.dpr;
            if (["WEB", "MP-WX"].includes(a)) r = n;
            else {
                if (!["UNI-H5", "UNI-MP", "TARO-H5", "TARO-MP"].includes(a)) return console.error("意料之外的 flag, 该平台尚未兼容!");
                r = n.path
            }
            if (!r.canvas) return A.length === 8 && (A = A.map(function(f, d) {
                return d < 4 ? f * o : f
            })), t.drawImage.apply(t, Ka([r], A));
            var l = r.canvas.getContext("2d");
            A = A.map(function(f) {
                return f * o
            });
            var u = l.getImageData.apply(l, A.slice(0, 4));
            t.putImageData.apply(t, Ka([u], A.slice(4, 6)))
        }, e.prototype.computedWidthAndHeight = function(t, n, r, A) {
            if (!n.width && !n.height) return [t.width, t.height];
            if (n.width && !n.height) {
                var i = this.getLength(n.width, r);
                return [i, t.height * (i / t.width)]
            }
            if (!n.width && n.height) {
                var s = this.getLength(n.height, A);
                return [t.width * (s / t.height), s]
            }
            return [this.getLength(n.width, r), this.getLength(n.height, A)]
        }, e.prototype.changeUnits = function(t, n) {
            var r = this;
            n === void 0 && (n = 1);
            var A = this.config;
            return Number(t.replace(/^([-]*[0-9.]*)([a-z%]*)$/, function(i, s, a) {
                var o = {
                    "%": function(u) {
                        return u * (n / 100)
                    },
                    px: function(u) {
                        return 1 * u
                    },
                    rem: function(u) {
                        return u * r.htmlFontSize
                    },
                    vw: function(u) {
                        return u / 100 * window.innerWidth
                    }
                }[a];
                if (o) return o(s);
                var l = A.handleCssUnit || A.unitFunc;
                return l ? l(s, a) : s
            }))
        }, e.prototype.getLength = function(t, n) {
            return r0(t, "number") ? t : r0(t, "string") ? this.changeUnits(t, n) : 0
        }, e.prototype.getOffsetX = function(t, n) {
            return n === void 0 && (n = 0), (n - t) / 2
        }, e.prototype.getOffscreenCanvas = function(t, n) {
            if (!uo(this, "_offscreenCanvas") && (window && window.document && this.config.flag === "WEB" ? this._offscreenCanvas = document.createElement("canvas") : this._offscreenCanvas = this.config.offscreenCanvas, !this._offscreenCanvas)) return console.error("离屏 Canvas 无法渲染!");
            var r = this.config.dpr,
                A = this._offscreenCanvas;
            A.width = (t || 300) * r, A.height = (n || 150) * r;
            var i = A.getContext("2d");
            return i.clearRect(0, 0, t, n), i.scale(r, r), i.dpr = r, {
                _offscreenCanvas: A,
                _ctx: i
            }
        }, e.prototype.$set = function(t, n, r) {
            t && typeof t == "object" && Xy(t, n, r)
        }, e.prototype.$computed = function(t, n, r) {
            var A = this;
            Object.defineProperty(t, n, {
                get: function() {
                    return r.call(A)
                }
            })
        }, e.prototype.$watch = function(t, n, r) {
            r === void 0 && (r = {}), typeof n == "object" && (n = (r = n).handler);
            var A = new aY(this, t, n, r);
            return r.immediate && n.call(this, A.value),
                function() {}
        }, e.version = "1.7.21", e
    }(),
    Is = function(e) {
        return Math.PI / 180 * e
    },
    Bc = function(e) {
        for (var t = [], n = 1; n < arguments.length; n++) t[n - 1] = arguments[n];
        var r = t[0],
            A = t[1],
            i = t[2],
            s = t[3],
            a = t[4],
            o = Math.min(i, s),
            l = Math.PI;
        a > o / 2 && (a = o / 2), e.beginPath(), e.moveTo(r + a, A), e.lineTo(r + a, A), e.lineTo(r + i - a, A), e.arc(r + i - a, A + a, a, -l / 2, 0), e.lineTo(r + i, A + s - a), e.arc(r + i - a, A + s - a, a, 0, l / 2), e.lineTo(r + a, A + s), e.arc(r + a, A + s - a, a, l / 2, l), e.lineTo(r, A + a), e.arc(r + a, A + a, a, l, -l / 2), e.closePath()
    },
    r5 = function(e, t, n, r) {
        return e >= r && (e = r), n * (e /= r) * e + t
    },
    co = function(e, t, n, r) {
        return e >= r && (e = r), -n * (e /= r) * (e - 2) + t
    },
    oY = function(e) {
        function t(n, r) {
            var A, i = e.call(this, n, {
                width: r.width,
                height: r.height
            }) || this;
            return i.blocks = [], i.prizes = [], i.buttons = [], i.defaultConfig = {}, i.defaultStyle = {}, i._defaultConfig = {}, i._defaultStyle = {}, i.Radius = 0, i.prizeRadius = 0, i.prizeDeg = 0, i.prizeAng = 0, i.rotateDeg = 0, i.maxBtnRadius = 0, i.startTime = 0, i.endTime = 0, i.stopDeg = 0, i.endDeg = 0, i.FPS = 16.6, i.step = 0, i.ImageCache = new Map, i.initData(r), i.initWatch(), i.initComputed(), (A = n.beforeCreate) === null || A === void 0 || A.call(i), i.init(), i
        }
        return Zp(t, e), t.prototype.resize = function() {
            var n, r;
            e.prototype.resize.call(this), this.Radius = Math.min(this.boxWidth, this.boxHeight) / 2, this.ctx.translate(this.Radius, this.Radius), this.draw(), (r = (n = this.config).afterResize) === null || r === void 0 || r.call(n)
        }, t.prototype.initLucky = function() {
            this.Radius = 0, this.prizeRadius = 0, this.prizeDeg = 0, this.prizeAng = 0, this.rotateDeg = 0, this.maxBtnRadius = 0, this.startTime = 0, this.endTime = 0, this.stopDeg = 0, this.endDeg = 0, this.FPS = 16.6, this.prizeFlag = -1, this.step = 0, e.prototype.initLucky.call(this)
        }, t.prototype.initData = function(n) {
            this.$set(this, "width", n.width || "300px"), this.$set(this, "height", n.height || "300px"), this.$set(this, "blocks", n.blocks || []), this.$set(this, "prizes", n.prizes || []), this.$set(this, "buttons", n.buttons || []), this.$set(this, "defaultConfig", n.defaultConfig || {}), this.$set(this, "defaultStyle", n.defaultStyle || {}), this.$set(this, "startCallback", n.start), this.$set(this, "endCallback", n.end)
        }, t.prototype.initComputed = function() {
            var n = this;
            this.$computed(this, "_defaultConfig", function() {
                return ZA({
                    gutter: "0px",
                    offsetDegree: 0,
                    speed: 20,
                    speedFunction: "quad",
                    accelerationTime: 2500,
                    decelerationTime: 2500,
                    stopRange: 0
                }, n.defaultConfig)
            }), this.$computed(this, "_defaultStyle", function() {
                return ZA({
                    fontSize: "18px",
                    fontColor: "#000",
                    fontStyle: "sans-serif",
                    fontWeight: "400",
                    background: "rgba(0,0,0,0)",
                    wordWrap: !0,
                    lengthLimit: "90%"
                }, n.defaultStyle)
            })
        }, t.prototype.initWatch = function() {
            var n = this;
            this.$watch("width", function(r) {
                n.data.width = r, n.resize()
            }), this.$watch("height", function(r) {
                n.data.height = r, n.resize()
            }), this.$watch("blocks", function(r) {
                n.initImageCache()
            }, {
                deep: !0
            }), this.$watch("prizes", function(r) {
                n.initImageCache()
            }, {
                deep: !0
            }), this.$watch("buttons", function(r) {
                n.initImageCache()
            }, {
                deep: !0
            }), this.$watch("defaultConfig", function() {
                return n.draw()
            }, {
                deep: !0
            }), this.$watch("defaultStyle", function() {
                return n.draw()
            }, {
                deep: !0
            }), this.$watch("startCallback", function() {
                return n.init()
            }), this.$watch("endCallback", function() {
                return n.init()
            })
        }, t.prototype.init = function() {
            var n, r;
            return ei(this, void 0, void 0, function() {
                var A;
                return ti(this, function(i) {
                    switch (i.label) {
                        case 0:
                            return this.initLucky(), A = this.config, (n = A.beforeInit) === null || n === void 0 || n.call(this), this.draw(), this.draw(), [4, this.initImageCache()];
                        case 1:
                            return i.sent(), (r = A.afterInit) === null || r === void 0 || r.call(this), [2]
                    }
                })
            })
        }, t.prototype.initImageCache = function() {
            var n = this;
            return new Promise(function(r) {
                var A = {
                    blocks: n.blocks.map(function(i) {
                        return i.imgs
                    }),
                    prizes: n.prizes.map(function(i) {
                        return i.imgs
                    }),
                    buttons: n.buttons.map(function(i) {
                        return i.imgs
                    })
                };
                Object.keys(A).forEach(function(i) {
                    var s = A[i],
                        a = [];
                    s && s.forEach(function(o, l) {
                        o && o.forEach(function(u, f) {
                            a.push(n.loadAndCacheImg(i, l, f))
                        })
                    }), Promise.all(a).then(function() {
                        n.draw(), r()
                    })
                })
            })
        }, t.prototype.handleClick = function(n) {
            var r, A = this.ctx;
            A.beginPath(), A.arc(0, 0, this.maxBtnRadius, 0, 2 * Math.PI, !1), A.isPointInPath(n.offsetX, n.offsetY) && this.step === 0 && ((r = this.startCallback) === null || r === void 0 || r.call(this, n))
        }, t.prototype.loadAndCacheImg = function(n, r, A) {
            return ei(this, void 0, void 0, function() {
                var i = this;
                return ti(this, function(s) {
                    return [2, new Promise(function(a, o) {
                        var l = i[n][r];
                        if (l && l.imgs) {
                            var u = l.imgs[A];
                            u && i.loadImg(u.src, u).then(function(f) {
                                return ei(i, void 0, void 0, function() {
                                    return ti(this, function(d) {
                                        switch (d.label) {
                                            case 0:
                                                return typeof u.formatter != "function" ? [3, 2] : [4, Promise.resolve(u.formatter.call(this, f))];
                                            case 1:
                                                f = d.sent(), d.label = 2;
                                            case 2:
                                                return this.ImageCache.set(u.src, f), a(), [2]
                                        }
                                    })
                                })
                            }).catch(function(f) {
                                console.error(n + "[" + r + "].imgs[" + A + "] " + f), o()
                            })
                        }
                    })]
                })
            })
        }, t.prototype.drawBlock = function(n, r, A) {
            var i = this,
                s = this.ctx;
            Gi(r.background) && (s.beginPath(), s.fillStyle = r.background, s.arc(0, 0, n, 0, 2 * Math.PI, !1), s.fill()), r.imgs && r.imgs.forEach(function(a, o) {
                var l = i.ImageCache.get(a.src);
                if (l) {
                    var u = i.computedWidthAndHeight(l, a, 2 * n, 2 * n),
                        f = u[0],
                        d = u[1],
                        p = [i.getOffsetX(f) + i.getLength(a.left, 2 * n), i.getLength(a.top, 2 * n) - n],
                        m = p[0],
                        g = p[1];
                    s.save(), a.rotate && s.rotate(Is(i.rotateDeg)), i.drawImage(s, l, m, g, f, d), s.restore()
                }
            })
        }, t.prototype.draw = function() {
            var n, r, A = this,
                i = this,
                s = i.config,
                a = i.ctx,
                o = i._defaultConfig,
                l = i._defaultStyle;
            (n = s.beforeDraw) === null || n === void 0 || n.call(this, a), a.clearRect(-this.Radius, -this.Radius, 2 * this.Radius, 2 * this.Radius), this.prizeRadius = this.blocks.reduce(function(m, g, y) {
                return A.drawBlock(m, g, y), m - A.getLength(g.padding && g.padding.split(" ")[0])
            }, this.Radius), this.prizeDeg = 360 / this.prizes.length, this.prizeAng = Is(this.prizeDeg);
            var u = this.prizeRadius * Math.sin(this.prizeAng / 2) * 2,
                f = Is(this.rotateDeg - 90 + this.prizeDeg / 2 + o.offsetDegree),
                d = function(m, g) {
                    return A.getOffsetX(a.measureText(g).width) + A.getLength(m.left, u)
                },
                p = function(m, g, y) {
                    var w = m.lineHeight || l.lineHeight || m.fontSize || l.fontSize;
                    return A.getLength(m.top, g) + (y + 1) * A.getLength(w)
                };
            a.save(), this.prizes.forEach(function(m, g) {
                var y = f + g * A.prizeAng,
                    w = A.prizeRadius - A.maxBtnRadius,
                    B = m.background || l.background;
                Gi(B) && (a.fillStyle = B, function(b, F, T, I, D, U) {
                    b.beginPath();
                    var Q, O, N = Is(90 / Math.PI / T * U),
                        J = I + N,
                        j = D - N;
                    b.arc(0, 0, T, J, j, !1), b.lineTo.apply(b, (Q = (I + D) / 2, O = U / 2 / Math.abs(Math.sin((I - D) / 2)), [+(Math.cos(Q) * O).toFixed(8), +(Math.sin(Q) * O).toFixed(8)])), b.closePath()
                }(a, A.maxBtnRadius, A.prizeRadius, y - A.prizeAng / 2, y + A.prizeAng / 2, A.getLength(o.gutter)), a.fill());
                var x = Math.cos(y) * A.prizeRadius,
                    C = Math.sin(y) * A.prizeRadius;
                a.translate(x, C), a.rotate(y + Is(90)), m.imgs && m.imgs.forEach(function(b, F) {
                    var T = A.ImageCache.get(b.src);
                    if (T) {
                        var I = A.computedWidthAndHeight(T, b, A.prizeAng * A.prizeRadius, w),
                            D = I[0],
                            U = I[1],
                            Q = [A.getOffsetX(D) + A.getLength(b.left, u), A.getLength(b.top, w)],
                            O = Q[0],
                            N = Q[1];
                        A.drawImage(a, T, O, N, D, U)
                    }
                }), m.fonts && m.fonts.forEach(function(b) {
                    var F = b.fontColor || l.fontColor,
                        T = b.fontWeight || l.fontWeight,
                        I = A.getLength(b.fontSize || l.fontSize),
                        D = b.fontStyle || l.fontStyle,
                        U = uo(b, "wordWrap") ? b.wordWrap : l.wordWrap,
                        Q = b.lengthLimit || l.lengthLimit,
                        O = b.lineClamp || l.lineClamp;
                    a.fillStyle = F, a.font = T + " " + (I >> 0) + "px " + D;
                    var N = String(b.text);
                    (U ? t5(a, e5(N), function(J) {
                        var j = (A.prizeRadius - p(b, w, J.length)) * Math.tan(A.prizeAng / 2) * 2 - A.getLength(o.gutter);
                        return A.getLength(Q, j)
                    }, O) : N.split(`
`)).filter(function(J) {
                        return !!J
                    }).forEach(function(J, j) {
                        a.fillText(J, d(b, J), p(b, w, j))
                    })
                }), a.rotate(Is(360) - y - Is(90)), a.translate(-x, -C)
            }), a.restore(), this.buttons.forEach(function(m, g) {
                var y = A.getLength(m.radius, A.prizeRadius);
                A.maxBtnRadius = Math.max(A.maxBtnRadius, y), Gi(m.background) && (a.beginPath(), a.fillStyle = m.background, a.arc(0, 0, y, 0, 2 * Math.PI, !1), a.fill()), m.pointer && Gi(m.background) && (a.beginPath(), a.fillStyle = m.background, a.moveTo(-y, 0), a.lineTo(y, 0), a.lineTo(0, 2 * -y), a.closePath(), a.fill()), m.imgs && m.imgs.forEach(function(w, B) {
                    var x = A.ImageCache.get(w.src);
                    if (x) {
                        var C = A.computedWidthAndHeight(x, w, 2 * y, 2 * y),
                            b = C[0],
                            F = C[1],
                            T = [A.getOffsetX(b) + A.getLength(w.left, y), A.getLength(w.top, y)],
                            I = T[0],
                            D = T[1];
                        A.drawImage(a, x, I, D, b, F)
                    }
                }), m.fonts && m.fonts.forEach(function(w) {
                    var B = w.fontColor || l.fontColor,
                        x = w.fontWeight || l.fontWeight,
                        C = A.getLength(w.fontSize || l.fontSize),
                        b = w.fontStyle || l.fontStyle;
                    a.fillStyle = B, a.font = x + " " + (C >> 0) + "px " + b, String(w.text).split(`
`).forEach(function(F, T) {
                        a.fillText(F, d(w, F), p(w, y, T))
                    })
                })
            }), (r = s.afterDraw) === null || r === void 0 || r.call(this, a)
        }, t.prototype.carveOnGunwaleOfAMovingBoat = function() {
            var n = this,
                r = n._defaultConfig,
                A = n.prizeFlag,
                i = n.prizeDeg,
                s = n.rotateDeg;
            this.endTime = Date.now();
            for (var a = this.stopDeg = s, o = r.speed, l = (Math.random() * i - i / 2) * this.getLength(r.stopRange), u = 0, f = 0, d = 0; ++u;) {
                var p = 360 * u - A * i - s - r.offsetDegree + l - i / 2,
                    m = co(this.FPS, a, p, r.decelerationTime) - a;
                if (m > o) {
                    this.endDeg = o - f > m - o ? p : d;
                    break
                }
                d = p, f = m
            }
        }, t.prototype.play = function() {
            var n, r;
            this.step === 0 && (this.startTime = Date.now(), this.prizeFlag = void 0, this.step = 1, (r = (n = this.config).afterStart) === null || r === void 0 || r.call(n), this.run())
        }, t.prototype.stop = function(n) {
            if (this.step !== 0 && this.step !== 3) {
                if (!n && n !== 0) {
                    var r = this.prizes.map(function(A) {
                        return A.range
                    });
                    n = jy(r)
                }
                n < 0 ? (this.step = 0, this.prizeFlag = -1) : (this.step = 2, this.prizeFlag = n % this.prizes.length)
            }
        }, t.prototype.run = function(n) {
            var r;
            n === void 0 && (n = 0);
            var A = this,
                i = A.rAF,
                s = A.step,
                a = A.prizeFlag,
                o = A._defaultConfig,
                l = o.accelerationTime,
                u = o.decelerationTime,
                f = o.speed;
            if (s !== 0) {
                if (a !== -1) {
                    s !== 3 || this.endDeg || this.carveOnGunwaleOfAMovingBoat();
                    var d = Date.now() - this.startTime,
                        p = Date.now() - this.endTime,
                        m = this.rotateDeg;
                    if (s === 1 || d < l) {
                        this.FPS = d / n;
                        var g = r5(d, 0, f, l);
                        g === f && (this.step = 2), m += g % 360
                    } else s === 2 ? (m += f % 360, a !== void 0 && a >= 0 && (this.step = 3, this.stopDeg = 0, this.endDeg = 0)) : s === 3 ? (m = co(p, this.stopDeg, this.endDeg, u), p >= u && (this.step = 0)) : this.stop(-1);
                    this.rotateDeg = m, this.draw(), i(this.run.bind(this, n + 1))
                }
            } else(r = this.endCallback) === null || r === void 0 || r.call(this, this.prizes.find(function(y, w) {
                return w === a
            }) || {})
        }, t.prototype.conversionAxis = function(n, r) {
            var A = this.config;
            return [n / A.dpr - this.Radius, r / A.dpr - this.Radius]
        }, t
    }(n5),
    lY = function(e) {
        function t(n, r) {
            var A, i = e.call(this, n, {
                width: r.width,
                height: r.height
            }) || this;
            return i.rows = 3, i.cols = 3, i.blocks = [], i.prizes = [], i.buttons = [], i.defaultConfig = {}, i.defaultStyle = {}, i.activeStyle = {}, i._defaultConfig = {}, i._defaultStyle = {}, i._activeStyle = {}, i.cellWidth = 0, i.cellHeight = 0, i.startTime = 0, i.endTime = 0, i.currIndex = 0, i.stopIndex = 0, i.endIndex = 0, i.demo = !1, i.timer = 0, i.FPS = 16.6, i.step = 0, i.prizeFlag = -1, i.cells = [], i.ImageCache = new Map, i.initData(r), i.initWatch(), i.initComputed(), (A = n.beforeCreate) === null || A === void 0 || A.call(i), i.init(), i
        }
        return Zp(t, e), t.prototype.resize = function() {
            var n, r;
            e.prototype.resize.call(this), this.draw(), (r = (n = this.config).afterResize) === null || r === void 0 || r.call(n)
        }, t.prototype.initLucky = function() {
            this.cellWidth = 0, this.cellHeight = 0, this.startTime = 0, this.endTime = 0, this.currIndex = 0, this.stopIndex = 0, this.endIndex = 0, this.demo = !1, this.timer = 0, this.FPS = 16.6, this.prizeFlag = -1, this.step = 0, e.prototype.initLucky.call(this)
        }, t.prototype.initData = function(n) {
            this.$set(this, "width", n.width || "300px"), this.$set(this, "height", n.height || "300px"), this.$set(this, "rows", Number(n.rows) || 3), this.$set(this, "cols", Number(n.cols) || 3), this.$set(this, "blocks", n.blocks || []), this.$set(this, "prizes", n.prizes || []), this.$set(this, "buttons", n.buttons || []), this.$set(this, "button", n.button), this.$set(this, "defaultConfig", n.defaultConfig || {}), this.$set(this, "defaultStyle", n.defaultStyle || {}), this.$set(this, "activeStyle", n.activeStyle || {}), this.$set(this, "startCallback", n.start), this.$set(this, "endCallback", n.end)
        }, t.prototype.initComputed = function() {
            var n = this;
            this.$computed(this, "_defaultConfig", function() {
                var r = ZA({
                    gutter: 5,
                    speed: 20,
                    accelerationTime: 2500,
                    decelerationTime: 2500
                }, n.defaultConfig);
                return r.gutter = n.getLength(r.gutter), r.speed = r.speed / 40, r
            }), this.$computed(this, "_defaultStyle", function() {
                return ZA({
                    borderRadius: 20,
                    fontColor: "#000",
                    fontSize: "18px",
                    fontStyle: "sans-serif",
                    fontWeight: "400",
                    background: "rgba(0,0,0,0)",
                    shadow: "",
                    wordWrap: !0,
                    lengthLimit: "90%"
                }, n.defaultStyle)
            }), this.$computed(this, "_activeStyle", function() {
                return ZA({
                    background: "#ffce98",
                    shadow: ""
                }, n.activeStyle)
            })
        }, t.prototype.initWatch = function() {
            var n = this;
            this.$watch("width", function(r) {
                n.data.width = r, n.resize()
            }), this.$watch("height", function(r) {
                n.data.height = r, n.resize()
            }), this.$watch("blocks", function(r) {
                n.initImageCache()
            }, {
                deep: !0
            }), this.$watch("prizes", function(r) {
                n.initImageCache()
            }, {
                deep: !0
            }), this.$watch("buttons", function(r) {
                n.initImageCache()
            }, {
                deep: !0
            }), this.$watch("rows", function() {
                return n.init()
            }), this.$watch("cols", function() {
                return n.init()
            }), this.$watch("defaultConfig", function() {
                return n.draw()
            }, {
                deep: !0
            }), this.$watch("defaultStyle", function() {
                return n.draw()
            }, {
                deep: !0
            }), this.$watch("activeStyle", function() {
                return n.draw()
            }, {
                deep: !0
            }), this.$watch("startCallback", function() {
                return n.init()
            }), this.$watch("endCallback", function() {
                return n.init()
            })
        }, t.prototype.init = function() {
            var n, r;
            return ei(this, void 0, void 0, function() {
                var A;
                return ti(this, function(i) {
                    switch (i.label) {
                        case 0:
                            return this.initLucky(), A = this.config, (n = A.beforeInit) === null || n === void 0 || n.call(this), this.draw(), [4, this.initImageCache()];
                        case 1:
                            return i.sent(), (r = A.afterInit) === null || r === void 0 || r.call(this), [2]
                    }
                })
            })
        }, t.prototype.initImageCache = function() {
            var n = this;
            return new Promise(function(r) {
                var A = n.buttons.map(function(s) {
                    return s.imgs
                });
                n.button && A.push(n.button.imgs);
                var i = {
                    blocks: n.blocks.map(function(s) {
                        return s.imgs
                    }),
                    prizes: n.prizes.map(function(s) {
                        return s.imgs
                    }),
                    buttons: A
                };
                Object.keys(i).forEach(function(s) {
                    var a = i[s],
                        o = [];
                    a && a.forEach(function(l, u) {
                        l && l.forEach(function(f, d) {
                            o.push(n.loadAndCacheImg(s, u, d))
                        })
                    }), Promise.all(o).then(function() {
                        n.draw(), r()
                    })
                })
            })
        }, t.prototype.handleClick = function(n) {
            var r = this,
                A = this.ctx;
            Ka(Ka([], this.buttons), [this.button]).forEach(function(i) {
                var s;
                if (i) {
                    var a = r.getGeometricProperty([i.x, i.y, i.col || 1, i.row || 1]),
                        o = a[0],
                        l = a[1],
                        u = a[2],
                        f = a[3];
                    A.beginPath(), A.rect(o, l, u, f), A.isPointInPath(n.offsetX, n.offsetY) && r.step === 0 && (typeof i.callback == "function" && i.callback.call(r, i), (s = r.startCallback) === null || s === void 0 || s.call(r, n, i))
                }
            })
        }, t.prototype.loadAndCacheImg = function(n, r, A) {
            return ei(this, void 0, void 0, function() {
                var i = this;
                return ti(this, function(s) {
                    return [2, new Promise(function(a, o) {
                        var l = i[n][r];
                        if (n === "buttons" && !i.buttons.length && i.button && (l = i.button), l && l.imgs) {
                            var u = l.imgs[A];
                            if (u) {
                                var f = [i.loadImg(u.src, u), u.activeSrc && i.loadImg(u.activeSrc, u, "$activeResolve")];
                                Promise.all(f).then(function(d) {
                                    var p = d[0],
                                        m = d[1];
                                    return ei(i, void 0, void 0, function() {
                                        var g;
                                        return ti(this, function(y) {
                                            switch (y.label) {
                                                case 0:
                                                    return typeof(g = u.formatter) != "function" ? [3, 3] : [4, Promise.resolve(g.call(this, p))];
                                                case 1:
                                                    return p = y.sent(), m ? [4, Promise.resolve(g.call(this, m))] : [3, 3];
                                                case 2:
                                                    m = y.sent(), y.label = 3;
                                                case 3:
                                                    return this.ImageCache.set(u.src, p), m && this.ImageCache.set(u.activeSrc, m), a(), [2]
                                            }
                                        })
                                    })
                                }).catch(function(d) {
                                    console.error(n + "[" + r + "].imgs[" + A + "] " + d), o()
                                })
                            }
                        }
                    })]
                })
            })
        }, t.prototype.draw = function() {
            var n, r, A = this,
                i = this,
                s = i.config,
                a = i.ctx,
                o = i._defaultConfig,
                l = i._defaultStyle,
                u = i._activeStyle;
            (n = s.beforeDraw) === null || n === void 0 || n.call(this, a), a.clearRect(0, 0, this.boxWidth, this.boxHeight), this.cells = Ka(Ka([], this.prizes), this.buttons), this.button && this.cells.push(this.button), this.cells.forEach(function(f) {
                f.col = f.col || 1, f.row = f.row || 1
            }), this.prizeArea = this.blocks.reduce(function(f, d, p) {
                var m = f.x,
                    g = f.y,
                    y = f.w,
                    w = f.h,
                    B = Wy(d, A.getLength.bind(A)),
                    x = B[0],
                    C = B[1],
                    b = B[2],
                    F = B[3],
                    T = d.borderRadius ? A.getLength(d.borderRadius) : 0,
                    I = d.background;
                return Gi(I) && (a.fillStyle = A.handleBackground(m, g, y, w, I), Bc(a, m, g, y, w, T), a.fill()), d.imgs && d.imgs.forEach(function(D, U) {
                    var Q = A.ImageCache.get(D.src);
                    if (Q) {
                        var O = A.computedWidthAndHeight(Q, D, y, w),
                            N = O[0],
                            J = O[1],
                            j = [A.getOffsetX(N, y) + A.getLength(D.left, y), A.getLength(D.top, w)],
                            V = j[0],
                            ae = j[1];
                        A.drawImage(a, Q, m + V, g + ae, N, J)
                    }
                }), {
                    x: m + b,
                    y: g + x,
                    w: y - b - F,
                    h: w - x - C
                }
            }, {
                x: 0,
                y: 0,
                w: this.boxWidth,
                h: this.boxHeight
            }), this.cellWidth = (this.prizeArea.w - o.gutter * (this.cols - 1)) / this.cols, this.cellHeight = (this.prizeArea.h - o.gutter * (this.rows - 1)) / this.rows, this.cells.forEach(function(f, d) {
                var p = A.getGeometricProperty([f.x, f.y, f.col, f.row]),
                    m = p[0],
                    g = p[1],
                    y = p[2],
                    w = p[3],
                    B = !1;
                (A.prizeFlag === void 0 || A.prizeFlag > -1) && (B = d === A.currIndex % A.prizes.length >> 0);
                var x = B ? u.background : f.background || l.background;
                if (Gi(x)) {
                    var C = (B ? u.shadow : f.shadow || l.shadow).replace(/px/g, "").split(",")[0].split(" ").map(function(F, T) {
                        return T < 3 ? Number(F) : F
                    });
                    C.length === 4 && (a.shadowColor = C[3], a.shadowOffsetX = C[0] * s.dpr, a.shadowOffsetY = C[1] * s.dpr, a.shadowBlur = C[2], C[0] > 0 ? y -= C[0] : (y += C[0], m -= C[0]), C[1] > 0 ? w -= C[1] : (w += C[1], g -= C[1])), a.fillStyle = A.handleBackground(m, g, y, w, x);
                    var b = A.getLength(f.borderRadius ? f.borderRadius : l.borderRadius);
                    Bc(a, m, g, y, w, b), a.fill(), a.shadowColor = "rgba(0, 0, 0, 0)", a.shadowOffsetX = 0, a.shadowOffsetY = 0, a.shadowBlur = 0
                }
                d >= A.prizes.length && (d -= A.prizes.length), f.imgs && f.imgs.forEach(function(F, T) {
                    var I = A.ImageCache.get(F.src),
                        D = A.ImageCache.get(F.activeSrc);
                    if (I) {
                        var U = B && D || I;
                        if (U) {
                            var Q = A.computedWidthAndHeight(U, F, y, w),
                                O = Q[0],
                                N = Q[1],
                                J = [m + A.getOffsetX(O, y) + A.getLength(F.left, y), g + A.getLength(F.top, w)],
                                j = J[0],
                                V = J[1];
                            A.drawImage(a, U, j, V, O, N)
                        }
                    }
                }), f.fonts && f.fonts.forEach(function(F) {
                    var T = B && u.fontStyle ? u.fontStyle : F.fontStyle || l.fontStyle,
                        I = B && u.fontWeight ? u.fontWeight : F.fontWeight || l.fontWeight,
                        D = B && u.fontSize ? A.getLength(u.fontSize) : A.getLength(F.fontSize || l.fontSize),
                        U = B && u.lineHeight ? u.lineHeight : F.lineHeight || l.lineHeight || F.fontSize || l.fontSize,
                        Q = uo(F, "wordWrap") ? F.wordWrap : l.wordWrap,
                        O = F.lengthLimit || l.lengthLimit,
                        N = F.lineClamp || l.lineClamp;
                    a.font = I + " " + (D >> 0) + "px " + T, a.fillStyle = B && u.fontColor ? u.fontColor : F.fontColor || l.fontColor;
                    var J = [],
                        j = String(F.text);
                    if (Q) {
                        var V = A.getLength(O, y);
                        J = t5(a, e5(j), function() {
                            return V
                        }, N)
                    } else J = j.split(`
`);
                    J.forEach(function(ae, Y) {
                        a.fillText(ae, m + A.getOffsetX(a.measureText(ae).width, y) + A.getLength(F.left, y), g + A.getLength(F.top, w) + (Y + 1) * A.getLength(U))
                    })
                })
            }), (r = s.afterDraw) === null || r === void 0 || r.call(this, a)
        }, t.prototype.handleBackground = function(n, r, A, i, s) {
            var a = this.ctx;
            return s.includes("linear-gradient") && (s = function(o, l, u, f, d, p) {
                var m = /linear-gradient\((.+)\)/.exec(p)[1].split(",").map(function(x) {
                        return x.trim()
                    }),
                    g = m.shift(),
                    y = [0, 0, 0, 0];
                if (g.includes("deg")) {
                    var w = function(x) {
                        return Math.tan(x / 180 * Math.PI)
                    };
                    (g = g.slice(0, -3) % 360) >= 0 && g < 45 ? y = [l, u + d, l + f, u + d - f * w(g - 0)] : g >= 45 && g < 90 ? y = [l, u + d, l + f - d * w(g - 45), u] : g >= 90 && g < 135 ? y = [l + f, u + d, l + f - d * w(g - 90), u] : g >= 135 && g < 180 ? y = [l + f, u + d, l, u + f * w(g - 135)] : g >= 180 && g < 225 ? y = [l + f, u, l, u + f * w(g - 180)] : g >= 225 && g < 270 ? y = [l + f, u, l + d * w(g - 225), u + d] : g >= 270 && g < 315 ? y = [l, u, l + d * w(g - 270), u + d] : g >= 315 && g < 360 && (y = [l, u, l + f, u + d - f * w(g - 315)])
                } else g.includes("top") ? y = [l, u + d, l, u] : g.includes("bottom") ? y = [l, u, l, u + d] : g.includes("left") ? y = [l + f, u, l, u] : g.includes("right") && (y = [l, u, l + f, u]);
                var B = o.createLinearGradient.apply(o, y.map(function(x) {
                    return x >> 0
                }));
                return m.reduce(function(x, C, b) {
                    var F = C.split(" ");
                    return F.length === 1 ? x.addColorStop(b, F[0]) : F.length === 2 && x.addColorStop.apply(x, F), x
                }, B)
            }(a, n, r, A, i, s)), s
        }, t.prototype.carveOnGunwaleOfAMovingBoat = function() {
            var n = this,
                r = n._defaultConfig,
                A = n.prizeFlag,
                i = n.currIndex;
            this.endTime = Date.now();
            for (var s = this.stopIndex = i, a = r.speed, o = 0, l = 0, u = 0; ++o;) {
                var f = this.prizes.length * o + A - s,
                    d = co(this.FPS, s, f, r.decelerationTime) - s;
                if (d > a) {
                    this.endIndex = a - l > d - a ? f : u;
                    break
                }
                u = f, l = d
            }
        }, t.prototype.play = function() {
            var n, r;
            this.step === 0 && (this.startTime = Date.now(), this.prizeFlag = void 0, this.step = 1, (r = (n = this.config).afterStart) === null || r === void 0 || r.call(n), this.run())
        }, t.prototype.stop = function(n) {
            if (this.step !== 0 && this.step !== 3) {
                if (!n && n !== 0) {
                    var r = this.prizes.map(function(A) {
                        return A.range
                    });
                    n = jy(r)
                }
                n < 0 ? (this.step = 0, this.prizeFlag = -1) : (this.step = 2, this.prizeFlag = n % this.prizes.length)
            }
        }, t.prototype.run = function(n) {
            var r;
            n === void 0 && (n = 0);
            var A = this,
                i = A.rAF,
                s = A.step,
                a = A.prizes,
                o = A.prizeFlag,
                l = A._defaultConfig,
                u = l.accelerationTime,
                f = l.decelerationTime,
                d = l.speed;
            if (s !== 0) {
                if (o !== -1) {
                    s !== 3 || this.endIndex || this.carveOnGunwaleOfAMovingBoat();
                    var p = Date.now() - this.startTime,
                        m = Date.now() - this.endTime,
                        g = this.currIndex;
                    if (s === 1 || p < u) {
                        this.FPS = p / n;
                        var y = r5(p, .1, d - .1, u);
                        y === d && (this.step = 2), g += y % a.length
                    } else s === 2 ? (g += d % a.length, o !== void 0 && o >= 0 && (this.step = 3, this.stopIndex = 0, this.endIndex = 0)) : s === 3 ? (g = co(m, this.stopIndex, this.endIndex, f), m >= f && (this.step = 0)) : this.stop(-1);
                    this.currIndex = g, this.draw(), i(this.run.bind(this, n + 1))
                }
            } else(r = this.endCallback) === null || r === void 0 || r.call(this, this.prizes.find(function(w, B) {
                return B === o
            }) || {})
        }, t.prototype.getGeometricProperty = function(n) {
            var r = n[0],
                A = n[1],
                i = n[2],
                s = i === void 0 ? 1 : i,
                a = n[3],
                o = a === void 0 ? 1 : a,
                l = this.cellWidth,
                u = this.cellHeight,
                f = this._defaultConfig.gutter,
                d = [this.prizeArea.x + (l + f) * r, this.prizeArea.y + (u + f) * A];
            return s && o && d.push(l * s + f * (s - 1), u * o + f * (o - 1)), d
        }, t.prototype.conversionAxis = function(n, r) {
            var A = this.config;
            return [n / A.dpr, r / A.dpr]
        }, t
    }(n5),
    uY = function(e) {
        function t(n, r) {
            var A, i = e.call(this, n, {
                width: r.width,
                height: r.height
            }) || this;
            return i.blocks = [], i.prizes = [], i.slots = [], i.defaultConfig = {}, i._defaultConfig = {}, i.defaultStyle = {}, i._defaultStyle = {}, i.endCallback = function() {}, i.cellWidth = 0, i.cellHeight = 0, i.cellAndSpacing = 0, i.widthAndSpacing = 0, i.heightAndSpacing = 0, i.FPS = 16.6, i.scroll = [], i.stopScroll = [], i.endScroll = [], i.startTime = 0, i.endTime = 0, i.step = 0, i.prizeFlag = void 0, i.ImageCache = new Map, i.initData(r), i.initWatch(), i.initComputed(), (A = n.beforeCreate) === null || A === void 0 || A.call(i), i.init(), i
        }
        return Zp(t, e), t.prototype.resize = function() {
            var n, r;
            e.prototype.resize.call(this), this.draw(), (r = (n = this.config).afterResize) === null || r === void 0 || r.call(n)
        }, t.prototype.initLucky = function() {
            this.cellWidth = 0, this.cellHeight = 0, this.cellAndSpacing = 0, this.widthAndSpacing = 0, this.heightAndSpacing = 0, this.FPS = 16.6, this.scroll = [], this.stopScroll = [], this.endScroll = [], this.startTime = 0, this.endTime = 0, this.prizeFlag = void 0, this.step = 0, e.prototype.initLucky.call(this)
        }, t.prototype.initData = function(n) {
            this.$set(this, "width", n.width || "300px"), this.$set(this, "height", n.height || "300px"), this.$set(this, "blocks", n.blocks || []), this.$set(this, "prizes", n.prizes || []), this.$set(this, "slots", n.slots || []), this.$set(this, "defaultConfig", n.defaultConfig || {}), this.$set(this, "defaultStyle", n.defaultStyle || {}), this.$set(this, "endCallback", n.end)
        }, t.prototype.initComputed = function() {
            var n = this;
            this.$computed(this, "_defaultConfig", function() {
                var r = ZA({
                    mode: "vertical",
                    rowSpacing: 0,
                    colSpacing: 5,
                    speed: 20,
                    direction: 1,
                    accelerationTime: 2500,
                    decelerationTime: 2500
                }, n.defaultConfig);
                return r.rowSpacing = n.getLength(r.rowSpacing), r.colSpacing = n.getLength(r.colSpacing), r
            }), this.$computed(this, "_defaultStyle", function() {
                return ZA({
                    borderRadius: 0,
                    fontColor: "#000",
                    fontSize: "18px",
                    fontStyle: "sans-serif",
                    fontWeight: "400",
                    background: "rgba(0,0,0,0)",
                    wordWrap: !0,
                    lengthLimit: "90%"
                }, n.defaultStyle)
            })
        }, t.prototype.initWatch = function() {
            var n = this;
            this.$watch("width", function(r) {
                n.data.width = r, n.resize()
            }), this.$watch("height", function(r) {
                n.data.height = r, n.resize()
            }), this.$watch("blocks", function(r) {
                n.initImageCache()
            }, {
                deep: !0
            }), this.$watch("prizes", function(r) {
                n.initImageCache()
            }, {
                deep: !0
            }), this.$watch("slots", function(r) {
                n.drawOffscreenCanvas(), n.draw()
            }, {
                deep: !0
            }), this.$watch("defaultConfig", function() {
                return n.draw()
            }, {
                deep: !0
            }), this.$watch("defaultStyle", function() {
                return n.draw()
            }, {
                deep: !0
            }), this.$watch("endCallback", function() {
                return n.init()
            })
        }, t.prototype.init = function() {
            var n, r;
            return ei(this, void 0, void 0, function() {
                var A;
                return ti(this, function(i) {
                    switch (i.label) {
                        case 0:
                            return this.initLucky(), A = this.config, (n = A.beforeInit) === null || n === void 0 || n.call(this), this.drawOffscreenCanvas(), this.draw(), [4, this.initImageCache()];
                        case 1:
                            return i.sent(), (r = A.afterInit) === null || r === void 0 || r.call(this), [2]
                    }
                })
            })
        }, t.prototype.initImageCache = function() {
            var n = this;
            return new Promise(function(r) {
                var A = {
                    blocks: n.blocks.map(function(i) {
                        return i.imgs
                    }),
                    prizes: n.prizes.map(function(i) {
                        return i.imgs
                    })
                };
                Object.keys(A).forEach(function(i) {
                    var s = A[i],
                        a = [];
                    s && s.forEach(function(o, l) {
                        o && o.forEach(function(u, f) {
                            a.push(n.loadAndCacheImg(i, l, f))
                        })
                    }), Promise.all(a).then(function() {
                        n.drawOffscreenCanvas(), n.draw(), r()
                    })
                })
            })
        }, t.prototype.loadAndCacheImg = function(n, r, A) {
            return ei(this, void 0, void 0, function() {
                var i = this;
                return ti(this, function(s) {
                    return [2, new Promise(function(a, o) {
                        var l = i[n][r];
                        if (l && l.imgs) {
                            var u = l.imgs[A];
                            u && i.loadImg(u.src, u).then(function(f) {
                                return ei(i, void 0, void 0, function() {
                                    return ti(this, function(d) {
                                        switch (d.label) {
                                            case 0:
                                                return typeof u.formatter != "function" ? [3, 2] : [4, Promise.resolve(u.formatter.call(this, f))];
                                            case 1:
                                                f = d.sent(), d.label = 2;
                                            case 2:
                                                return this.ImageCache.set(u.src, f), a(), [2]
                                        }
                                    })
                                })
                            }).catch(function(f) {
                                console.error(n + "[" + r + "].imgs[" + A + "] " + f), o()
                            })
                        }
                    })]
                })
            })
        }, t.prototype.drawOffscreenCanvas = function() {
            var n = this,
                r = this._defaultConfig,
                A = this._defaultStyle,
                i = this.drawBlocks(),
                s = i.w,
                a = i.h,
                o = this.prizes.length,
                l = this.displacementWidthOrHeight(),
                u = l.cellWidth,
                f = l.cellHeight,
                d = l.widthAndSpacing,
                p = l.heightAndSpacing,
                m = new Array(o).fill(void 0).map(function(C, b) {
                    return b
                }),
                g = 0,
                y = 0;
            this.slots.forEach(function(C, b) {
                n.scroll[b] === void 0 && (n.scroll[b] = 0), C.order = C.order || m;
                var F = C.order.length;
                g = Math.max(g, s + d * F), y = Math.max(y, a + p * F)
            });
            var w = this.getOffscreenCanvas(g, y),
                B = w._offscreenCanvas,
                x = w._ctx;
            this._offscreenCanvas = B, this.slots.forEach(function(C, b) {
                var F = u * b,
                    T = f * b,
                    I = 0,
                    D = function(ue, ye) {
                        for (var ee = {}, ce = [], ve = 0; ve < ue.length; ve++) ee[ve] = ue[ve];
                        for (ve = 0; ve < ye.length; ve++) {
                            var xe = ee[ye[ve]];
                            xe && (ce[ve] = xe)
                        }
                        return ce
                    }(n.prizes, C.order);
                if (D.length) {
                    D.forEach(function(ue, ye) {
                        if (ue) {
                            C.order[ye];
                            var ee = d * ye + r.colSpacing / 2,
                                ce = p * ye + r.rowSpacing / 2,
                                ve = n.displacement([F, ce, p], [ee, T, d]),
                                xe = ve[0],
                                se = ve[1],
                                Fe = ve[2];
                            I += Fe;
                            var ie = ue.background || A.background;
                            if (Gi(ie)) {
                                var _e = n.getLength(uo(ue, "borderRadius") ? ue.borderRadius : A.borderRadius);
                                Bc(x, xe, se, u, u, _e), x.fillStyle = ie, x.fill()
                            }
                            ue.imgs && ue.imgs.forEach(function(De, $e) {
                                var Te = n.ImageCache.get(De.src);
                                if (Te) {
                                    var W = n.computedWidthAndHeight(Te, De, u, f),
                                        P = W[0],
                                        M = W[1],
                                        te = [xe + n.getOffsetX(P, u) + n.getLength(De.left, u), se + n.getLength(De.top, f)],
                                        Be = te[0],
                                        Ie = te[1];
                                    n.drawImage(x, Te, Be, Ie, P, M)
                                }
                            }), ue.fonts && ue.fonts.forEach(function(De) {
                                var $e = De.fontStyle || A.fontStyle,
                                    Te = De.fontWeight || A.fontWeight,
                                    W = n.getLength(De.fontSize || A.fontSize),
                                    P = De.lineHeight || A.lineHeight || De.fontSize || A.fontSize,
                                    M = uo(De, "wordWrap") ? De.wordWrap : A.wordWrap,
                                    te = De.lengthLimit || A.lengthLimit,
                                    Be = De.lineClamp || A.lineClamp;
                                x.font = Te + " " + (W >> 0) + "px " + $e, x.fillStyle = De.fontColor || A.fontColor;
                                var Ie = [],
                                    Le = String(De.text);
                                if (M) {
                                    var He = n.getLength(te, u);
                                    Ie = t5(x, e5(Le), function() {
                                        return He
                                    }, Be)
                                } else Ie = Le.split(`
`);
                                Ie.forEach(function(Ne, Pe) {
                                    x.fillText(Ne, xe + n.getOffsetX(x.measureText(Ne).width, u) + n.getLength(De.left, u), se + n.getLength(De.top, f) + (Pe + 1) * n.getLength(P))
                                })
                            })
                        }
                    });
                    for (var U = n.displacement([F, 0, u, I], [0, T, I, f]), Q = U[0], O = U[1], N = U[2], J = U[3], j = I; j < y + I;) {
                        var V = n.displacement([Q, j], [j, O]),
                            ae = V[0],
                            Y = V[1];
                        n.drawImage(x, B, Q, O, N, J, ae, Y, N, J), j += I
                    }
                }
            })
        }, t.prototype.drawBlocks = function() {
            var n = this,
                r = this;
            r.config;
            var A = r.ctx;
            r._defaultConfig;
            var i = r._defaultStyle;
            return this.prizeArea = this.blocks.reduce(function(s, a, o) {
                var l = s.x,
                    u = s.y,
                    f = s.w,
                    d = s.h,
                    p = Wy(a, n.getLength.bind(n)),
                    m = p[0],
                    g = p[1],
                    y = p[2],
                    w = p[3],
                    B = a.borderRadius ? n.getLength(a.borderRadius) : 0,
                    x = a.background || i.background;
                return Gi(x) && (Bc(A, l, u, f, d, B), A.fillStyle = x, A.fill()), a.imgs && a.imgs.forEach(function(C, b) {
                    var F = n.ImageCache.get(C.src);
                    if (F) {
                        var T = n.computedWidthAndHeight(F, C, f, d),
                            I = T[0],
                            D = T[1],
                            U = [n.getOffsetX(I, f) + n.getLength(C.left, f), n.getLength(C.top, d)],
                            Q = U[0],
                            O = U[1];
                        n.drawImage(A, F, l + Q, u + O, I, D)
                    }
                }), {
                    x: l + y,
                    y: u + m,
                    w: f - y - w,
                    h: d - m - g
                }
            }, {
                x: 0,
                y: 0,
                w: this.boxWidth,
                h: this.boxHeight
            })
        }, t.prototype.draw = function() {
            var n, r = this,
                A = this,
                i = A.config,
                s = A.ctx;
            A._defaultConfig, A._defaultStyle, (n = i.beforeDraw) === null || n === void 0 || n.call(this, s), s.clearRect(0, 0, this.boxWidth, this.boxHeight);
            var a = this.drawBlocks(),
                o = a.x,
                l = a.y,
                u = a.w,
                f = a.h;
            if (this._offscreenCanvas) {
                var d = this,
                    p = d.cellWidth,
                    m = d.cellHeight,
                    g = d.cellAndSpacing,
                    y = d.widthAndSpacing,
                    w = d.heightAndSpacing;
                this.slots.forEach(function(B, x) {
                    var C = g * B.order.length,
                        b = r.displacement(-(f - w) / 2, -(u - y) / 2),
                        F = r.scroll[x] + b;
                    F < 0 && (F = F % C + C), F > C && (F %= C);
                    var T = r.displacement([p * x, F, p, f], [F, m * x, u, m]),
                        I = T[0],
                        D = T[1],
                        U = T[2],
                        Q = T[3],
                        O = r.displacement([o + y * x, l, p, f], [o, l + w * x, u, m]),
                        N = O[0],
                        J = O[1],
                        j = O[2],
                        V = O[3];
                    r.drawImage(s, r._offscreenCanvas, I, D, U, Q, N, J, j, V)
                })
            }
        }, t.prototype.carveOnGunwaleOfAMovingBoat = function() {
            var n = this,
                r = this,
                A = r._defaultConfig,
                i = r.prizeFlag,
                s = r.cellAndSpacing;
            this.endTime = Date.now(), this.slots.forEach(function(a, o) {
                var l = a.order;
                if (l.length)
                    for (var u = a.speed || A.speed, f = a.direction || A.direction, d = l.findIndex(function(B) {
                            return B === i[o]
                        }), p = s * l.length, m = n.stopScroll[o] = n.scroll[o], g = 0; ++g;) {
                        var y = s * d + p * g * f - m,
                            w = co(n.FPS, m, y, A.decelerationTime) - m;
                        if (Math.abs(w) > u) {
                            n.endScroll[o] = y;
                            break
                        }
                    }
            })
        }, t.prototype.play = function() {
            var n, r;
            this.step === 0 && (this.startTime = Date.now(), this.prizeFlag = void 0, this.step = 1, (r = (n = this.config).afterStart) === null || r === void 0 || r.call(n), this.run())
        }, t.prototype.stop = function(n) {
            var r;
            if (this.step !== 0 && this.step !== 3) {
                if (typeof n == "number") this.prizeFlag = new Array(this.slots.length).fill(n);
                else {
                    if (!r0(n, "array")) return this.stop(-1), console.error("stop() 无法识别的参数类型 " + typeof n);
                    if (n.length !== this.slots.length) return this.stop(-1), console.error("stop([" + n + "]) 参数长度的不正确");
                    this.prizeFlag = n
                }!((r = this.prizeFlag) === null || r === void 0) && r.includes(-1) ? (this.prizeFlag = [], this.step = 0) : this.step = 2
            }
        }, t.prototype.run = function(n) {
            var r, A, i = this;
            n === void 0 && (n = 0);
            var s = this,
                a = s.rAF,
                o = s.step,
                l = s.prizeFlag,
                u = s._defaultConfig,
                f = s.cellAndSpacing,
                d = s.slots,
                p = u.accelerationTime,
                m = u.decelerationTime;
            if (this.step !== 0 || (l == null ? void 0 : l.length) !== d.length) {
                if (l === void 0 || l.length) {
                    this.step !== 3 || this.endScroll.length || this.carveOnGunwaleOfAMovingBoat();
                    var g = Date.now() - this.startTime,
                        y = Date.now() - this.endTime;
                    d.forEach(function(b, F) {
                        var T = b.order;
                        if (T && T.length) {
                            var I = f * T.length,
                                D = Math.abs(b.speed || u.speed),
                                U = b.direction || u.direction,
                                Q = 0,
                                O = i.scroll[F];
                            if (o === 1 || g < p) {
                                i.FPS = g / n;
                                var N = r5(g, 0, D, p);
                                N === D && (i.step = 2), Q = (O + N * U) % I
                            } else if (o === 2) Q = (O + D * U) % I, (l == null ? void 0 : l.length) === d.length && (i.step = 3, i.stopScroll = [], i.endScroll = []);
                            else if (o === 3 && y) {
                                var J = i.stopScroll[F],
                                    j = i.endScroll[F];
                                Q = co(y, J, j, m), y >= m && (i.step = 0)
                            }
                            i.scroll[F] = Q
                        }
                    }), this.draw(), a(this.run.bind(this, n + 1))
                }
            } else {
                for (var w = l[0], B = 0; B < d.length; B++) {
                    var x = d[B],
                        C = l[B];
                    if (!(!((r = x.order) === null || r === void 0) && r.includes(C)) || w !== C) {
                        w = -1;
                        break
                    }
                }(A = this.endCallback) === null || A === void 0 || A.call(this, this.prizes.find(function(b, F) {
                    return F === w
                }) || void 0)
            }
        }, t.prototype.displacement = function(n, r) {
            return this._defaultConfig.mode === "horizontal" ? r : n
        }, t.prototype.displacementWidthOrHeight = function() {
            var n = this._defaultConfig.mode,
                r = this.slots.length,
                A = this._defaultConfig,
                i = A.colSpacing,
                s = A.rowSpacing,
                a = this.prizeArea || this.drawBlocks();
            a.x, a.y;
            var o, l, u = a.w,
                f = a.h,
                d = 0,
                p = 0;
            return n === "horizontal" ? (p = this.cellHeight = (f - s * (r - 1)) / r, d = this.cellWidth = p) : (d = this.cellWidth = (u - i * (r - 1)) / r, p = this.cellHeight = d), o = this.widthAndSpacing = this.cellWidth + i, l = this.heightAndSpacing = this.cellHeight + s, this.cellAndSpacing = n === "horizontal" ? o : l, {
                cellWidth: d,
                cellHeight: p,
                widthAndSpacing: o,
                heightAndSpacing: l
            }
        }, t
    }(n5),
    A5 = function(e, t, n) {
        t === void 0 && (t = {});
        var r = t.props,
            A = t.domProps,
            i = t.on,
            s = function(l, u) {
                var f = {};
                for (var d in l) Object.prototype.hasOwnProperty.call(l, d) && u.indexOf(d) < 0 && (f[d] = l[d]);
                if (l != null && typeof Object.getOwnPropertySymbols == "function") {
                    var p = 0;
                    for (d = Object.getOwnPropertySymbols(l); p < d.length; p++) u.indexOf(d[p]) < 0 && Object.prototype.propertyIsEnumerable.call(l, d[p]) && (f[d[p]] = l[d[p]])
                }
                return f
            }(t, ["props", "domProps", "on"]),
            a = function(l) {
                return l ? Object.entries(l).reduce(function(u, f) {
                    var d, p = f[0],
                        m = f[1];
                    return p = "on" + (p = p.charAt(0).toUpperCase() + p.slice(1)), hr(hr({}, u), ((d = {})[p] = m, d))
                }, {}) : null
            }(i),
            o = hr(hr(hr(hr({}, s), r), A), a);
        return Tn(e, o, n)
    },
    i5 = "@lucky-canvas/vue",
    cY = tt({
        name: "LuckyWheel",
        props: {
            width: {
                type: [String, Number]
            },
            height: {
                type: [String, Number]
            },
            blocks: {
                type: Array,
                default: function() {
                    return []
                }
            },
            prizes: {
                type: Array,
                default: function() {
                    return []
                }
            },
            buttons: {
                type: Array,
                default: function() {
                    return []
                }
            },
            defaultStyle: {
                type: Object,
                default: function() {
                    return {}
                }
            },
            defaultConfig: {
                type: Object,
                default: function() {
                    return {}
                }
            }
        },
        emits: ["start", "end", "success", "error", "finally"],
        watch: {
            blocks: function(e, t) {
                this.lucky && (this.lucky.blocks = e)
            },
            prizes: function(e, t) {
                this.lucky && (this.lucky.prizes = e)
            },
            buttons: function(e, t) {
                this.lucky && (this.lucky.buttons = e)
            }
        },
        data: function() {
            return {
                lucky: null
            }
        },
        mounted: function() {
            this.$refs.myLucky && this.$refs.myLucky.setAttribute("package", i5 + "@0.1.11");
            try {
                this.initLucky(), this.$emit("success")
            } catch (e) {
                this.$emit("error", e)
            } finally {
                this.$emit("finally")
            }
        },
        methods: {
            initLucky: function() {
                var e = this;
                this.lucky = new oY({
                    flag: "WEB",
                    width: String(this.width),
                    height: String(this.height),
                    divElement: this.$refs.myLucky,
                    rAF: window.requestAnimationFrame,
                    setTimeout: window.setTimeout,
                    setInterval: window.setInterval,
                    clearTimeout: window.clearTimeout,
                    clearInterval: window.clearInterval
                }, hr(hr({}, this.$props), {
                    start: function(t) {
                        e.$emit("start", t)
                    },
                    end: function(t) {
                        e.$emit("end", t)
                    }
                }))
            },
            init: function() {
                this.lucky && this.lucky.init()
            },
            play: function() {
                var e;
                (e = this.lucky) === null || e === void 0 || e.play()
            },
            stop: function(e) {
                var t;
                (t = this.lucky) === null || t === void 0 || t.stop(e)
            }
        },
        render: function() {
            return A5("div", {
                ref: "myLucky"
            })
        }
    }),
    fY = tt({
        name: "LuckyGrid",
        props: {
            width: {
                type: [String, Number]
            },
            height: {
                type: [String, Number]
            },
            cols: {
                type: [String, Number],
                default: 3
            },
            rows: {
                type: [String, Number],
                default: 3
            },
            blocks: {
                type: Array,
                default: function() {
                    return []
                }
            },
            prizes: {
                type: Array,
                default: function() {
                    return []
                }
            },
            buttons: {
                type: Array,
                default: function() {
                    return []
                }
            },
            button: {
                type: Object
            },
            defaultStyle: {
                type: Object,
                default: function() {
                    return {}
                }
            },
            activeStyle: {
                type: Object,
                default: function() {
                    return {}
                }
            },
            defaultConfig: {
                type: Object,
                default: function() {
                    return {}
                }
            }
        },
        emits: ["start", "end", "success", "error", "finally"],
        watch: {
            cols: function(e, t) {
                this.lucky && (this.lucky.cols = e)
            },
            rows: function(e, t) {
                this.lucky && (this.lucky.rows = e)
            },
            blocks: function(e, t) {
                this.lucky && (this.lucky.blocks = e)
            },
            prizes: function(e, t) {
                this.lucky && (this.lucky.prizes = e)
            },
            buttons: function(e, t) {
                this.lucky && (this.lucky.buttons = e)
            },
            button: function(e, t) {
                this.lucky && (this.lucky.button = e)
            }
        },
        data: function() {
            return {
                lucky: null
            }
        },
        mounted: function() {
            this.$refs.myLucky && this.$refs.myLucky.setAttribute("package", i5 + "@0.1.11");
            try {
                this.initLucky(), this.$emit("success")
            } catch (e) {
                this.$emit("error", e)
            } finally {
                this.$emit("finally")
            }
        },
        methods: {
            initLucky: function() {
                var e = this;
                this.lucky = new lY({
                    flag: "WEB",
                    width: String(this.width),
                    height: String(this.height),
                    divElement: this.$refs.myLucky,
                    rAF: window.requestAnimationFrame,
                    setTimeout: window.setTimeout,
                    setInterval: window.setInterval,
                    clearTimeout: window.clearTimeout,
                    clearInterval: window.clearInterval
                }, hr(hr({}, this.$props), {
                    start: function(t, n) {
                        e.$emit("start", t, n)
                    },
                    end: function(t) {
                        e.$emit("end", t)
                    }
                }))
            },
            init: function() {
                this.lucky && this.lucky.init()
            },
            play: function() {
                var e;
                (e = this.lucky) === null || e === void 0 || e.play()
            },
            stop: function(e) {
                var t;
                (t = this.lucky) === null || t === void 0 || t.stop(e)
            }
        },
        render: function() {
            return A5("div", {
                ref: "myLucky"
            })
        }
    }),
    dY = tt({
        name: "SlotMachine",
        props: {
            width: {
                type: [String, Number]
            },
            height: {
                type: [String, Number]
            },
            blocks: {
                type: Array,
                default: function() {
                    return []
                }
            },
            prizes: {
                type: Array,
                default: function() {
                    return []
                }
            },
            slots: {
                type: Array,
                default: function() {
                    return []
                }
            },
            defaultStyle: {
                type: Object,
                default: function() {
                    return {}
                }
            },
            defaultConfig: {
                type: Object,
                default: function() {
                    return {}
                }
            }
        },
        watch: {
            blocks: function(e, t) {
                this.lucky && (this.lucky.blocks = e)
            },
            slots: function(e, t) {
                this.lucky && (this.lucky.slots = e)
            },
            prizes: function(e, t) {
                this.lucky && (this.lucky.prizes = e)
            }
        },
        data: function() {
            return {
                lucky: null
            }
        },
        mounted: function() {
            this.$refs.myLucky && this.$refs.myLucky.setAttribute("package", i5 + "@0.1.11");
            try {
                this.initLucky(), this.$emit("success")
            } catch (e) {
                this.$emit("error", e)
            } finally {
                this.$emit("finally")
            }
        },
        methods: {
            initLucky: function() {
                var e = this;
                this.lucky = new uY({
                    flag: "WEB",
                    width: String(this.width),
                    height: String(this.height),
                    divElement: this.$refs.myLucky,
                    rAF: window.requestAnimationFrame,
                    setTimeout: window.setTimeout,
                    setInterval: window.setInterval,
                    clearTimeout: window.clearTimeout,
                    clearInterval: window.clearInterval
                }, hr(hr({}, this.$props), {
                    start: function(t) {
                        e.$emit("start", t)
                    },
                    end: function(t) {
                        e.$emit("end", t)
                    }
                }))
            },
            init: function() {
                this.lucky && this.lucky.init()
            },
            play: function() {
                var e;
                (e = this.lucky) === null || e === void 0 || e.play()
            },
            stop: function(e) {
                var t;
                (t = this.lucky) === null || t === void 0 || t.stop(e)
            }
        },
        render: function() {
            return A5("div", {
                ref: "myLucky"
            })
        }
    }),
    hY = function(e) {
        e.component("LuckyWheel", cY), e.component("LuckyGrid", fY), e.component("SlotMachine", dY)
    };
typeof window < "u" && window.Vue && zy && hY(window.Vue);
var Lf = {},
    pY = function() {
        return typeof Promise == "function" && Promise.prototype && Promise.prototype.then
    },
    Jy = {},
    Dr = {};
let s5;
const gY = [0, 26, 44, 70, 100, 134, 172, 196, 242, 292, 346, 404, 466, 532, 581, 655, 733, 815, 901, 991, 1085, 1156, 1258, 1364, 1474, 1588, 1706, 1828, 1921, 2051, 2185, 2323, 2465, 2611, 2761, 2876, 3034, 3196, 3362, 3532, 3706];
Dr.getSymbolSize = function(t) {
    if (!t) throw new Error('"version" cannot be null or undefined');
    if (t < 1 || t > 40) throw new Error('"version" should be in range from 1 to 40');
    return t * 4 + 17
};
Dr.getSymbolTotalCodewords = function(t) {
    return gY[t]
};
Dr.getBCHDigit = function(e) {
    let t = 0;
    for (; e !== 0;) t++, e >>>= 1;
    return t
};
Dr.setToSJISFunction = function(t) {
    if (typeof t != "function") throw new Error('"toSJISFunc" is not a valid function.');
    s5 = t
};
Dr.isKanjiModeEnabled = function() {
    return typeof s5 < "u"
};
Dr.toSJIS = function(t) {
    return s5(t)
};
var kf = {};
(function(e) {
    e.L = {
        bit: 1
    }, e.M = {
        bit: 0
    }, e.Q = {
        bit: 3
    }, e.H = {
        bit: 2
    };

    function t(n) {
        if (typeof n != "string") throw new Error("Param is not a string");
        switch (n.toLowerCase()) {
            case "l":
            case "low":
                return e.L;
            case "m":
            case "medium":
                return e.M;
            case "q":
            case "quartile":
                return e.Q;
            case "h":
            case "high":
                return e.H;
            default:
                throw new Error("Unknown EC Level: " + n)
        }
    }
    e.isValid = function(r) {
        return r && typeof r.bit < "u" && r.bit >= 0 && r.bit < 4
    }, e.from = function(r, A) {
        if (e.isValid(r)) return r;
        try {
            return t(r)
        } catch {
            return A
        }
    }
})(kf);

function qy() {
    this.buffer = [], this.length = 0
}
qy.prototype = {
    get: function(e) {
        const t = Math.floor(e / 8);
        return (this.buffer[t] >>> 7 - e % 8 & 1) === 1
    },
    put: function(e, t) {
        for (let n = 0; n < t; n++) this.putBit((e >>> t - n - 1 & 1) === 1)
    },
    getLengthInBits: function() {
        return this.length
    },
    putBit: function(e) {
        const t = Math.floor(this.length / 8);
        this.buffer.length <= t && this.buffer.push(0), e && (this.buffer[t] |= 128 >>> this.length % 8), this.length++
    }
};
var vY = qy;

function Q0(e) {
    if (!e || e < 1) throw new Error("BitMatrix size must be defined and greater than 0");
    this.size = e, this.data = new Uint8Array(e * e), this.reservedBit = new Uint8Array(e * e)
}
Q0.prototype.set = function(e, t, n, r) {
    const A = e * this.size + t;
    this.data[A] = n, r && (this.reservedBit[A] = !0)
};
Q0.prototype.get = function(e, t) {
    return this.data[e * this.size + t]
};
Q0.prototype.xor = function(e, t, n) {
    this.data[e * this.size + t] ^= n
};
Q0.prototype.isReserved = function(e, t) {
    return this.reservedBit[e * this.size + t]
};
var mY = Q0,
    Zy = {};
(function(e) {
    const t = Dr.getSymbolSize;
    e.getRowColCoords = function(r) {
        if (r === 1) return [];
        const A = Math.floor(r / 7) + 2,
            i = t(r),
            s = i === 145 ? 26 : Math.ceil((i - 13) / (2 * A - 2)) * 2,
            a = [i - 7];
        for (let o = 1; o < A - 1; o++) a[o] = a[o - 1] - s;
        return a.push(6), a.reverse()
    }, e.getPositions = function(r) {
        const A = [],
            i = e.getRowColCoords(r),
            s = i.length;
        for (let a = 0; a < s; a++)
            for (let o = 0; o < s; o++) a === 0 && o === 0 || a === 0 && o === s - 1 || a === s - 1 && o === 0 || A.push([i[a], i[o]]);
        return A
    }
})(Zy);
var eC = {};
const BY = Dr.getSymbolSize,
    Hm = 7;
eC.getPositions = function(t) {
    const n = BY(t);
    return [
        [0, 0],
        [n - Hm, 0],
        [0, n - Hm]
    ]
};
var tC = {};
(function(e) {
    e.Patterns = {
        PATTERN000: 0,
        PATTERN001: 1,
        PATTERN010: 2,
        PATTERN011: 3,
        PATTERN100: 4,
        PATTERN101: 5,
        PATTERN110: 6,
        PATTERN111: 7
    };
    const t = {
        N1: 3,
        N2: 3,
        N3: 40,
        N4: 10
    };
    e.isValid = function(A) {
        return A != null && A !== "" && !isNaN(A) && A >= 0 && A <= 7
    }, e.from = function(A) {
        return e.isValid(A) ? parseInt(A, 10) : void 0
    }, e.getPenaltyN1 = function(A) {
        const i = A.size;
        let s = 0,
            a = 0,
            o = 0,
            l = null,
            u = null;
        for (let f = 0; f < i; f++) {
            a = o = 0, l = u = null;
            for (let d = 0; d < i; d++) {
                let p = A.get(f, d);
                p === l ? a++ : (a >= 5 && (s += t.N1 + (a - 5)), l = p, a = 1), p = A.get(d, f), p === u ? o++ : (o >= 5 && (s += t.N1 + (o - 5)), u = p, o = 1)
            }
            a >= 5 && (s += t.N1 + (a - 5)), o >= 5 && (s += t.N1 + (o - 5))
        }
        return s
    }, e.getPenaltyN2 = function(A) {
        const i = A.size;
        let s = 0;
        for (let a = 0; a < i - 1; a++)
            for (let o = 0; o < i - 1; o++) {
                const l = A.get(a, o) + A.get(a, o + 1) + A.get(a + 1, o) + A.get(a + 1, o + 1);
                (l === 4 || l === 0) && s++
            }
        return s * t.N2
    }, e.getPenaltyN3 = function(A) {
        const i = A.size;
        let s = 0,
            a = 0,
            o = 0;
        for (let l = 0; l < i; l++) {
            a = o = 0;
            for (let u = 0; u < i; u++) a = a << 1 & 2047 | A.get(l, u), u >= 10 && (a === 1488 || a === 93) && s++, o = o << 1 & 2047 | A.get(u, l), u >= 10 && (o === 1488 || o === 93) && s++
        }
        return s * t.N3
    }, e.getPenaltyN4 = function(A) {
        let i = 0;
        const s = A.data.length;
        for (let o = 0; o < s; o++) i += A.data[o];
        return Math.abs(Math.ceil(i * 100 / s / 5) - 10) * t.N4
    };

    function n(r, A, i) {
        switch (r) {
            case e.Patterns.PATTERN000:
                return (A + i) % 2 === 0;
            case e.Patterns.PATTERN001:
                return A % 2 === 0;
            case e.Patterns.PATTERN010:
                return i % 3 === 0;
            case e.Patterns.PATTERN011:
                return (A + i) % 3 === 0;
            case e.Patterns.PATTERN100:
                return (Math.floor(A / 2) + Math.floor(i / 3)) % 2 === 0;
            case e.Patterns.PATTERN101:
                return A * i % 2 + A * i % 3 === 0;
            case e.Patterns.PATTERN110:
                return (A * i % 2 + A * i % 3) % 2 === 0;
            case e.Patterns.PATTERN111:
                return (A * i % 3 + (A + i) % 2) % 2 === 0;
            default:
                throw new Error("bad maskPattern:" + r)
        }
    }
    e.applyMask = function(A, i) {
        const s = i.size;
        for (let a = 0; a < s; a++)
            for (let o = 0; o < s; o++) i.isReserved(o, a) || i.xor(o, a, n(A, o, a))
    }, e.getBestMask = function(A, i) {
        const s = Object.keys(e.Patterns).length;
        let a = 0,
            o = 1 / 0;
        for (let l = 0; l < s; l++) {
            i(l), e.applyMask(l, A);
            const u = e.getPenaltyN1(A) + e.getPenaltyN2(A) + e.getPenaltyN3(A) + e.getPenaltyN4(A);
            e.applyMask(l, A), u < o && (o = u, a = l)
        }
        return a
    }
})(tC);
var Hf = {};
const zi = kf,
    pu = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 2, 2, 4, 1, 2, 4, 4, 2, 4, 4, 4, 2, 4, 6, 5, 2, 4, 6, 6, 2, 5, 8, 8, 4, 5, 8, 8, 4, 5, 8, 11, 4, 8, 10, 11, 4, 9, 12, 16, 4, 9, 16, 16, 6, 10, 12, 18, 6, 10, 17, 16, 6, 11, 16, 19, 6, 13, 18, 21, 7, 14, 21, 25, 8, 16, 20, 25, 8, 17, 23, 25, 9, 17, 23, 34, 9, 18, 25, 30, 10, 20, 27, 32, 12, 21, 29, 35, 12, 23, 34, 37, 12, 25, 34, 40, 13, 26, 35, 42, 14, 28, 38, 45, 15, 29, 40, 48, 16, 31, 43, 51, 17, 33, 45, 54, 18, 35, 48, 57, 19, 37, 51, 60, 19, 38, 53, 63, 20, 40, 56, 66, 21, 43, 59, 70, 22, 45, 62, 74, 24, 47, 65, 77, 25, 49, 68, 81],
    gu = [7, 10, 13, 17, 10, 16, 22, 28, 15, 26, 36, 44, 20, 36, 52, 64, 26, 48, 72, 88, 36, 64, 96, 112, 40, 72, 108, 130, 48, 88, 132, 156, 60, 110, 160, 192, 72, 130, 192, 224, 80, 150, 224, 264, 96, 176, 260, 308, 104, 198, 288, 352, 120, 216, 320, 384, 132, 240, 360, 432, 144, 280, 408, 480, 168, 308, 448, 532, 180, 338, 504, 588, 196, 364, 546, 650, 224, 416, 600, 700, 224, 442, 644, 750, 252, 476, 690, 816, 270, 504, 750, 900, 300, 560, 810, 960, 312, 588, 870, 1050, 336, 644, 952, 1110, 360, 700, 1020, 1200, 390, 728, 1050, 1260, 420, 784, 1140, 1350, 450, 812, 1200, 1440, 480, 868, 1290, 1530, 510, 924, 1350, 1620, 540, 980, 1440, 1710, 570, 1036, 1530, 1800, 570, 1064, 1590, 1890, 600, 1120, 1680, 1980, 630, 1204, 1770, 2100, 660, 1260, 1860, 2220, 720, 1316, 1950, 2310, 750, 1372, 2040, 2430];
Hf.getBlocksCount = function(t, n) {
    switch (n) {
        case zi.L:
            return pu[(t - 1) * 4 + 0];
        case zi.M:
            return pu[(t - 1) * 4 + 1];
        case zi.Q:
            return pu[(t - 1) * 4 + 2];
        case zi.H:
            return pu[(t - 1) * 4 + 3];
        default:
            return
    }
};
Hf.getTotalCodewordsCount = function(t, n) {
    switch (n) {
        case zi.L:
            return gu[(t - 1) * 4 + 0];
        case zi.M:
            return gu[(t - 1) * 4 + 1];
        case zi.Q:
            return gu[(t - 1) * 4 + 2];
        case zi.H:
            return gu[(t - 1) * 4 + 3];
        default:
            return
    }
};
var nC = {},
    Mf = {};
const Pl = new Uint8Array(512),
    wc = new Uint8Array(256);
(function() {
    let t = 1;
    for (let n = 0; n < 255; n++) Pl[n] = t, wc[t] = n, t <<= 1, t & 256 && (t ^= 285);
    for (let n = 255; n < 512; n++) Pl[n] = Pl[n - 255]
})();
Mf.log = function(t) {
    if (t < 1) throw new Error("log(" + t + ")");
    return wc[t]
};
Mf.exp = function(t) {
    return Pl[t]
};
Mf.mul = function(t, n) {
    return t === 0 || n === 0 ? 0 : Pl[wc[t] + wc[n]]
};
(function(e) {
    const t = Mf;
    e.mul = function(r, A) {
        const i = new Uint8Array(r.length + A.length - 1);
        for (let s = 0; s < r.length; s++)
            for (let a = 0; a < A.length; a++) i[s + a] ^= t.mul(r[s], A[a]);
        return i
    }, e.mod = function(r, A) {
        let i = new Uint8Array(r);
        for (; i.length - A.length >= 0;) {
            const s = i[0];
            for (let o = 0; o < A.length; o++) i[o] ^= t.mul(A[o], s);
            let a = 0;
            for (; a < i.length && i[a] === 0;) a++;
            i = i.slice(a)
        }
        return i
    }, e.generateECPolynomial = function(r) {
        let A = new Uint8Array([1]);
        for (let i = 0; i < r; i++) A = e.mul(A, new Uint8Array([1, t.exp(i)]));
        return A
    }
})(nC);
const rC = nC;

function a5(e) {
    this.genPoly = void 0, this.degree = e, this.degree && this.initialize(this.degree)
}
a5.prototype.initialize = function(t) {
    this.degree = t, this.genPoly = rC.generateECPolynomial(this.degree)
};
a5.prototype.encode = function(t) {
    if (!this.genPoly) throw new Error("Encoder not initialized");
    const n = new Uint8Array(t.length + this.degree);
    n.set(t);
    const r = rC.mod(n, this.genPoly),
        A = this.degree - r.length;
    if (A > 0) {
        const i = new Uint8Array(this.degree);
        return i.set(r, A), i
    }
    return r
};
var wY = a5,
    AC = {},
    Bs = {},
    o5 = {};
o5.isValid = function(t) {
    return !isNaN(t) && t >= 1 && t <= 40
};
var SA = {};
const iC = "[0-9]+",
    yY = "[A-Z $%*+\\-./:]+";
let A0 = "(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";
A0 = A0.replace(/u/g, "\\u");
const CY = "(?:(?![A-Z0-9 $%*+\\-./:]|" + A0 + `)(?:.|[\r
]))+`;
SA.KANJI = new RegExp(A0, "g");
SA.BYTE_KANJI = new RegExp("[^A-Z0-9 $%*+\\-./:]+", "g");
SA.BYTE = new RegExp(CY, "g");
SA.NUMERIC = new RegExp(iC, "g");
SA.ALPHANUMERIC = new RegExp(yY, "g");
const xY = new RegExp("^" + A0 + "$"),
    EY = new RegExp("^" + iC + "$"),
    bY = new RegExp("^[A-Z0-9 $%*+\\-./:]+$");
SA.testKanji = function(t) {
    return xY.test(t)
};
SA.testNumeric = function(t) {
    return EY.test(t)
};
SA.testAlphanumeric = function(t) {
    return bY.test(t)
};
(function(e) {
    const t = o5,
        n = SA;
    e.NUMERIC = {
        id: "Numeric",
        bit: 1,
        ccBits: [10, 12, 14]
    }, e.ALPHANUMERIC = {
        id: "Alphanumeric",
        bit: 2,
        ccBits: [9, 11, 13]
    }, e.BYTE = {
        id: "Byte",
        bit: 4,
        ccBits: [8, 16, 16]
    }, e.KANJI = {
        id: "Kanji",
        bit: 8,
        ccBits: [8, 10, 12]
    }, e.MIXED = {
        bit: -1
    }, e.getCharCountIndicator = function(i, s) {
        if (!i.ccBits) throw new Error("Invalid mode: " + i);
        if (!t.isValid(s)) throw new Error("Invalid version: " + s);
        return s >= 1 && s < 10 ? i.ccBits[0] : s < 27 ? i.ccBits[1] : i.ccBits[2]
    }, e.getBestModeForData = function(i) {
        return n.testNumeric(i) ? e.NUMERIC : n.testAlphanumeric(i) ? e.ALPHANUMERIC : n.testKanji(i) ? e.KANJI : e.BYTE
    }, e.toString = function(i) {
        if (i && i.id) return i.id;
        throw new Error("Invalid mode")
    }, e.isValid = function(i) {
        return i && i.bit && i.ccBits
    };

    function r(A) {
        if (typeof A != "string") throw new Error("Param is not a string");
        switch (A.toLowerCase()) {
            case "numeric":
                return e.NUMERIC;
            case "alphanumeric":
                return e.ALPHANUMERIC;
            case "kanji":
                return e.KANJI;
            case "byte":
                return e.BYTE;
            default:
                throw new Error("Unknown mode: " + A)
        }
    }
    e.from = function(i, s) {
        if (e.isValid(i)) return i;
        try {
            return r(i)
        } catch {
            return s
        }
    }
})(Bs);
(function(e) {
    const t = Dr,
        n = Hf,
        r = kf,
        A = Bs,
        i = o5,
        s = 7973,
        a = t.getBCHDigit(s);

    function o(d, p, m) {
        for (let g = 1; g <= 40; g++)
            if (p <= e.getCapacity(g, m, d)) return g
    }

    function l(d, p) {
        return A.getCharCountIndicator(d, p) + 4
    }

    function u(d, p) {
        let m = 0;
        return d.forEach(function(g) {
            const y = l(g.mode, p);
            m += y + g.getBitsLength()
        }), m
    }

    function f(d, p) {
        for (let m = 1; m <= 40; m++)
            if (u(d, m) <= e.getCapacity(m, p, A.MIXED)) return m
    }
    e.from = function(p, m) {
        return i.isValid(p) ? parseInt(p, 10) : m
    }, e.getCapacity = function(p, m, g) {
        if (!i.isValid(p)) throw new Error("Invalid QR Code version");
        typeof g > "u" && (g = A.BYTE);
        const y = t.getSymbolTotalCodewords(p),
            w = n.getTotalCodewordsCount(p, m),
            B = (y - w) * 8;
        if (g === A.MIXED) return B;
        const x = B - l(g, p);
        switch (g) {
            case A.NUMERIC:
                return Math.floor(x / 10 * 3);
            case A.ALPHANUMERIC:
                return Math.floor(x / 11 * 2);
            case A.KANJI:
                return Math.floor(x / 13);
            case A.BYTE:
            default:
                return Math.floor(x / 8)
        }
    }, e.getBestVersionForData = function(p, m) {
        let g;
        const y = r.from(m, r.M);
        if (Array.isArray(p)) {
            if (p.length > 1) return f(p, y);
            if (p.length === 0) return 1;
            g = p[0]
        } else g = p;
        return o(g.mode, g.getLength(), y)
    }, e.getEncodedBits = function(p) {
        if (!i.isValid(p) || p < 7) throw new Error("Invalid QR Code version");
        let m = p << 12;
        for (; t.getBCHDigit(m) - a >= 0;) m ^= s << t.getBCHDigit(m) - a;
        return p << 12 | m
    }
})(AC);
var sC = {};
const yh = Dr,
    aC = 1335,
    FY = 21522,
    Mm = yh.getBCHDigit(aC);
sC.getEncodedBits = function(t, n) {
    const r = t.bit << 3 | n;
    let A = r << 10;
    for (; yh.getBCHDigit(A) - Mm >= 0;) A ^= aC << yh.getBCHDigit(A) - Mm;
    return (r << 10 | A) ^ FY
};
var oC = {};
const _Y = Bs;

function fo(e) {
    this.mode = _Y.NUMERIC, this.data = e.toString()
}
fo.getBitsLength = function(t) {
    return 10 * Math.floor(t / 3) + (t % 3 ? t % 3 * 3 + 1 : 0)
};
fo.prototype.getLength = function() {
    return this.data.length
};
fo.prototype.getBitsLength = function() {
    return fo.getBitsLength(this.data.length)
};
fo.prototype.write = function(t) {
    let n, r, A;
    for (n = 0; n + 3 <= this.data.length; n += 3) r = this.data.substr(n, 3), A = parseInt(r, 10), t.put(A, 10);
    const i = this.data.length - n;
    i > 0 && (r = this.data.substr(n), A = parseInt(r, 10), t.put(A, i * 3 + 1))
};
var SY = fo;
const QY = Bs,
    Ld = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", " ", "$", "%", "*", "+", "-", ".", "/", ":"];

function ho(e) {
    this.mode = QY.ALPHANUMERIC, this.data = e
}
ho.getBitsLength = function(t) {
    return 11 * Math.floor(t / 2) + 6 * (t % 2)
};
ho.prototype.getLength = function() {
    return this.data.length
};
ho.prototype.getBitsLength = function() {
    return ho.getBitsLength(this.data.length)
};
ho.prototype.write = function(t) {
    let n;
    for (n = 0; n + 2 <= this.data.length; n += 2) {
        let r = Ld.indexOf(this.data[n]) * 45;
        r += Ld.indexOf(this.data[n + 1]), t.put(r, 11)
    }
    this.data.length % 2 && t.put(Ld.indexOf(this.data[n]), 6)
};
var UY = ho,
    TY = function(t) {
        for (var n = [], r = t.length, A = 0; A < r; A++) {
            var i = t.charCodeAt(A);
            if (i >= 55296 && i <= 56319 && r > A + 1) {
                var s = t.charCodeAt(A + 1);
                s >= 56320 && s <= 57343 && (i = (i - 55296) * 1024 + s - 56320 + 65536, A += 1)
            }
            if (i < 128) {
                n.push(i);
                continue
            }
            if (i < 2048) {
                n.push(i >> 6 | 192), n.push(i & 63 | 128);
                continue
            }
            if (i < 55296 || i >= 57344 && i < 65536) {
                n.push(i >> 12 | 224), n.push(i >> 6 & 63 | 128), n.push(i & 63 | 128);
                continue
            }
            if (i >= 65536 && i <= 1114111) {
                n.push(i >> 18 | 240), n.push(i >> 12 & 63 | 128), n.push(i >> 6 & 63 | 128), n.push(i & 63 | 128);
                continue
            }
            n.push(239, 191, 189)
        }
        return new Uint8Array(n).buffer
    };
const IY = TY,
    DY = Bs;

function po(e) {
    this.mode = DY.BYTE, typeof e == "string" && (e = IY(e)), this.data = new Uint8Array(e)
}
po.getBitsLength = function(t) {
    return t * 8
};
po.prototype.getLength = function() {
    return this.data.length
};
po.prototype.getBitsLength = function() {
    return po.getBitsLength(this.data.length)
};
po.prototype.write = function(e) {
    for (let t = 0, n = this.data.length; t < n; t++) e.put(this.data[t], 8)
};
var PY = po;
const OY = Bs,
    LY = Dr;

function go(e) {
    this.mode = OY.KANJI, this.data = e
}
go.getBitsLength = function(t) {
    return t * 13
};
go.prototype.getLength = function() {
    return this.data.length
};
go.prototype.getBitsLength = function() {
    return go.getBitsLength(this.data.length)
};
go.prototype.write = function(e) {
    let t;
    for (t = 0; t < this.data.length; t++) {
        let n = LY.toSJIS(this.data[t]);
        if (n >= 33088 && n <= 40956) n -= 33088;
        else if (n >= 57408 && n <= 60351) n -= 49472;
        else throw new Error("Invalid SJIS character: " + this.data[t] + `
Make sure your charset is UTF-8`);
        n = (n >>> 8 & 255) * 192 + (n & 255), e.put(n, 13)
    }
};
var kY = go,
    lC = {
        exports: {}
    };
(function(e) {
    var t = {
        single_source_shortest_paths: function(n, r, A) {
            var i = {},
                s = {};
            s[r] = 0;
            var a = t.PriorityQueue.make();
            a.push(r, 0);
            for (var o, l, u, f, d, p, m, g, y; !a.empty();) {
                o = a.pop(), l = o.value, f = o.cost, d = n[l] || {};
                for (u in d) d.hasOwnProperty(u) && (p = d[u], m = f + p, g = s[u], y = typeof s[u] > "u", (y || g > m) && (s[u] = m, a.push(u, m), i[u] = l))
            }
            if (typeof A < "u" && typeof s[A] > "u") {
                var w = ["Could not find a path from ", r, " to ", A, "."].join("");
                throw new Error(w)
            }
            return i
        },
        extract_shortest_path_from_predecessor_list: function(n, r) {
            for (var A = [], i = r; i;) A.push(i), n[i], i = n[i];
            return A.reverse(), A
        },
        find_path: function(n, r, A) {
            var i = t.single_source_shortest_paths(n, r, A);
            return t.extract_shortest_path_from_predecessor_list(i, A)
        },
        PriorityQueue: {
            make: function(n) {
                var r = t.PriorityQueue,
                    A = {},
                    i;
                n = n || {};
                for (i in r) r.hasOwnProperty(i) && (A[i] = r[i]);
                return A.queue = [], A.sorter = n.sorter || r.default_sorter, A
            },
            default_sorter: function(n, r) {
                return n.cost - r.cost
            },
            push: function(n, r) {
                var A = {
                    value: n,
                    cost: r
                };
                this.queue.push(A), this.queue.sort(this.sorter)
            },
            pop: function() {
                return this.queue.shift()
            },
            empty: function() {
                return this.queue.length === 0
            }
        }
    };
    e.exports = t
})(lC);
var HY = lC.exports;
(function(e) {
    const t = Bs,
        n = SY,
        r = UY,
        A = PY,
        i = kY,
        s = SA,
        a = Dr,
        o = HY;

    function l(w) {
        return unescape(encodeURIComponent(w)).length
    }

    function u(w, B, x) {
        const C = [];
        let b;
        for (;
            (b = w.exec(x)) !== null;) C.push({
            data: b[0],
            index: b.index,
            mode: B,
            length: b[0].length
        });
        return C
    }

    function f(w) {
        const B = u(s.NUMERIC, t.NUMERIC, w),
            x = u(s.ALPHANUMERIC, t.ALPHANUMERIC, w);
        let C, b;
        return a.isKanjiModeEnabled() ? (C = u(s.BYTE, t.BYTE, w), b = u(s.KANJI, t.KANJI, w)) : (C = u(s.BYTE_KANJI, t.BYTE, w), b = []), B.concat(x, C, b).sort(function(T, I) {
            return T.index - I.index
        }).map(function(T) {
            return {
                data: T.data,
                mode: T.mode,
                length: T.length
            }
        })
    }

    function d(w, B) {
        switch (B) {
            case t.NUMERIC:
                return n.getBitsLength(w);
            case t.ALPHANUMERIC:
                return r.getBitsLength(w);
            case t.KANJI:
                return i.getBitsLength(w);
            case t.BYTE:
                return A.getBitsLength(w)
        }
    }

    function p(w) {
        return w.reduce(function(B, x) {
            const C = B.length - 1 >= 0 ? B[B.length - 1] : null;
            return C && C.mode === x.mode ? (B[B.length - 1].data += x.data, B) : (B.push(x), B)
        }, [])
    }

    function m(w) {
        const B = [];
        for (let x = 0; x < w.length; x++) {
            const C = w[x];
            switch (C.mode) {
                case t.NUMERIC:
                    B.push([C, {
                        data: C.data,
                        mode: t.ALPHANUMERIC,
                        length: C.length
                    }, {
                        data: C.data,
                        mode: t.BYTE,
                        length: C.length
                    }]);
                    break;
                case t.ALPHANUMERIC:
                    B.push([C, {
                        data: C.data,
                        mode: t.BYTE,
                        length: C.length
                    }]);
                    break;
                case t.KANJI:
                    B.push([C, {
                        data: C.data,
                        mode: t.BYTE,
                        length: l(C.data)
                    }]);
                    break;
                case t.BYTE:
                    B.push([{
                        data: C.data,
                        mode: t.BYTE,
                        length: l(C.data)
                    }])
            }
        }
        return B
    }

    function g(w, B) {
        const x = {},
            C = {
                start: {}
            };
        let b = ["start"];
        for (let F = 0; F < w.length; F++) {
            const T = w[F],
                I = [];
            for (let D = 0; D < T.length; D++) {
                const U = T[D],
                    Q = "" + F + D;
                I.push(Q), x[Q] = {
                    node: U,
                    lastCount: 0
                }, C[Q] = {};
                for (let O = 0; O < b.length; O++) {
                    const N = b[O];
                    x[N] && x[N].node.mode === U.mode ? (C[N][Q] = d(x[N].lastCount + U.length, U.mode) - d(x[N].lastCount, U.mode), x[N].lastCount += U.length) : (x[N] && (x[N].lastCount = U.length), C[N][Q] = d(U.length, U.mode) + 4 + t.getCharCountIndicator(U.mode, B))
                }
            }
            b = I
        }
        for (let F = 0; F < b.length; F++) C[b[F]].end = 0;
        return {
            map: C,
            table: x
        }
    }

    function y(w, B) {
        let x;
        const C = t.getBestModeForData(w);
        if (x = t.from(B, C), x !== t.BYTE && x.bit < C.bit) throw new Error('"' + w + '" cannot be encoded with mode ' + t.toString(x) + `.
 Suggested mode is: ` + t.toString(C));
        switch (x === t.KANJI && !a.isKanjiModeEnabled() && (x = t.BYTE), x) {
            case t.NUMERIC:
                return new n(w);
            case t.ALPHANUMERIC:
                return new r(w);
            case t.KANJI:
                return new i(w);
            case t.BYTE:
                return new A(w)
        }
    }
    e.fromArray = function(B) {
        return B.reduce(function(x, C) {
            return typeof C == "string" ? x.push(y(C, null)) : C.data && x.push(y(C.data, C.mode)), x
        }, [])
    }, e.fromString = function(B, x) {
        const C = f(B, a.isKanjiModeEnabled()),
            b = m(C),
            F = g(b, x),
            T = o.find_path(F.map, "start", "end"),
            I = [];
        for (let D = 1; D < T.length - 1; D++) I.push(F.table[T[D]].node);
        return e.fromArray(p(I))
    }, e.rawSplit = function(B) {
        return e.fromArray(f(B, a.isKanjiModeEnabled()))
    }
})(oC);
const Rf = Dr,
    kd = kf,
    MY = vY,
    RY = mY,
    NY = Zy,
    $Y = eC,
    Ch = tC,
    xh = Hf,
    KY = wY,
    yc = AC,
    VY = sC,
    GY = Bs,
    Hd = oC;

function zY(e, t) {
    const n = e.size,
        r = $Y.getPositions(t);
    for (let A = 0; A < r.length; A++) {
        const i = r[A][0],
            s = r[A][1];
        for (let a = -1; a <= 7; a++)
            if (!(i + a <= -1 || n <= i + a))
                for (let o = -1; o <= 7; o++) s + o <= -1 || n <= s + o || (a >= 0 && a <= 6 && (o === 0 || o === 6) || o >= 0 && o <= 6 && (a === 0 || a === 6) || a >= 2 && a <= 4 && o >= 2 && o <= 4 ? e.set(i + a, s + o, !0, !0) : e.set(i + a, s + o, !1, !0))
    }
}

function WY(e) {
    const t = e.size;
    for (let n = 8; n < t - 8; n++) {
        const r = n % 2 === 0;
        e.set(n, 6, r, !0), e.set(6, n, r, !0)
    }
}

function jY(e, t) {
    const n = NY.getPositions(t);
    for (let r = 0; r < n.length; r++) {
        const A = n[r][0],
            i = n[r][1];
        for (let s = -2; s <= 2; s++)
            for (let a = -2; a <= 2; a++) s === -2 || s === 2 || a === -2 || a === 2 || s === 0 && a === 0 ? e.set(A + s, i + a, !0, !0) : e.set(A + s, i + a, !1, !0)
    }
}

function YY(e, t) {
    const n = e.size,
        r = yc.getEncodedBits(t);
    let A, i, s;
    for (let a = 0; a < 18; a++) A = Math.floor(a / 3), i = a % 3 + n - 8 - 3, s = (r >> a & 1) === 1, e.set(A, i, s, !0), e.set(i, A, s, !0)
}

function Md(e, t, n) {
    const r = e.size,
        A = VY.getEncodedBits(t, n);
    let i, s;
    for (i = 0; i < 15; i++) s = (A >> i & 1) === 1, i < 6 ? e.set(i, 8, s, !0) : i < 8 ? e.set(i + 1, 8, s, !0) : e.set(r - 15 + i, 8, s, !0), i < 8 ? e.set(8, r - i - 1, s, !0) : i < 9 ? e.set(8, 15 - i - 1 + 1, s, !0) : e.set(8, 15 - i - 1, s, !0);
    e.set(r - 8, 8, 1, !0)
}

function XY(e, t) {
    const n = e.size;
    let r = -1,
        A = n - 1,
        i = 7,
        s = 0;
    for (let a = n - 1; a > 0; a -= 2)
        for (a === 6 && a--;;) {
            for (let o = 0; o < 2; o++)
                if (!e.isReserved(A, a - o)) {
                    let l = !1;
                    s < t.length && (l = (t[s] >>> i & 1) === 1), e.set(A, a - o, l), i--, i === -1 && (s++, i = 7)
                }
            if (A += r, A < 0 || n <= A) {
                A -= r, r = -r;
                break
            }
        }
}

function JY(e, t, n) {
    const r = new MY;
    n.forEach(function(o) {
        r.put(o.mode.bit, 4), r.put(o.getLength(), GY.getCharCountIndicator(o.mode, e)), o.write(r)
    });
    const A = Rf.getSymbolTotalCodewords(e),
        i = xh.getTotalCodewordsCount(e, t),
        s = (A - i) * 8;
    for (r.getLengthInBits() + 4 <= s && r.put(0, 4); r.getLengthInBits() % 8 !== 0;) r.putBit(0);
    const a = (s - r.getLengthInBits()) / 8;
    for (let o = 0; o < a; o++) r.put(o % 2 ? 17 : 236, 8);
    return qY(r, e, t)
}

function qY(e, t, n) {
    const r = Rf.getSymbolTotalCodewords(t),
        A = xh.getTotalCodewordsCount(t, n),
        i = r - A,
        s = xh.getBlocksCount(t, n),
        a = r % s,
        o = s - a,
        l = Math.floor(r / s),
        u = Math.floor(i / s),
        f = u + 1,
        d = l - u,
        p = new KY(d);
    let m = 0;
    const g = new Array(s),
        y = new Array(s);
    let w = 0;
    const B = new Uint8Array(e.buffer);
    for (let T = 0; T < s; T++) {
        const I = T < o ? u : f;
        g[T] = B.slice(m, m + I), y[T] = p.encode(g[T]), m += I, w = Math.max(w, I)
    }
    const x = new Uint8Array(r);
    let C = 0,
        b, F;
    for (b = 0; b < w; b++)
        for (F = 0; F < s; F++) b < g[F].length && (x[C++] = g[F][b]);
    for (b = 0; b < d; b++)
        for (F = 0; F < s; F++) x[C++] = y[F][b];
    return x
}

function ZY(e, t, n, r) {
    let A;
    if (Array.isArray(e)) A = Hd.fromArray(e);
    else if (typeof e == "string") {
        let l = t;
        if (!l) {
            const u = Hd.rawSplit(e);
            l = yc.getBestVersionForData(u, n)
        }
        A = Hd.fromString(e, l || 40)
    } else throw new Error("Invalid data");
    const i = yc.getBestVersionForData(A, n);
    if (!i) throw new Error("The amount of data is too big to be stored in a QR Code");
    if (!t) t = i;
    else if (t < i) throw new Error(`
The chosen QR Code version cannot contain this amount of data.
Minimum version required to store current data is: ` + i + `.
`);
    const s = JY(t, n, A),
        a = Rf.getSymbolSize(t),
        o = new RY(a);
    return zY(o, t), WY(o), jY(o, t), Md(o, n, 0), t >= 7 && YY(o, t), XY(o, s), isNaN(r) && (r = Ch.getBestMask(o, Md.bind(null, o, n))), Ch.applyMask(r, o), Md(o, n, r), {
        modules: o,
        version: t,
        errorCorrectionLevel: n,
        maskPattern: r,
        segments: A
    }
}
Jy.create = function(t, n) {
    if (typeof t > "u" || t === "") throw new Error("No input text");
    let r = kd.M,
        A, i;
    return typeof n < "u" && (r = kd.from(n.errorCorrectionLevel, kd.M), A = yc.from(n.version), i = Ch.from(n.maskPattern), n.toSJISFunc && Rf.setToSJISFunction(n.toSJISFunc)), ZY(t, A, r, i)
};
var uC = {},
    l5 = {};
(function(e) {
    function t(n) {
        if (typeof n == "number" && (n = n.toString()), typeof n != "string") throw new Error("Color should be defined as hex string");
        let r = n.slice().replace("#", "").split("");
        if (r.length < 3 || r.length === 5 || r.length > 8) throw new Error("Invalid hex color: " + n);
        (r.length === 3 || r.length === 4) && (r = Array.prototype.concat.apply([], r.map(function(i) {
            return [i, i]
        }))), r.length === 6 && r.push("F", "F");
        const A = parseInt(r.join(""), 16);
        return {
            r: A >> 24 & 255,
            g: A >> 16 & 255,
            b: A >> 8 & 255,
            a: A & 255,
            hex: "#" + r.slice(0, 6).join("")
        }
    }
    e.getOptions = function(r) {
        r || (r = {}), r.color || (r.color = {});
        const A = typeof r.margin > "u" || r.margin === null || r.margin < 0 ? 4 : r.margin,
            i = r.width && r.width >= 21 ? r.width : void 0,
            s = r.scale || 4;
        return {
            width: i,
            scale: i ? 4 : s,
            margin: A,
            color: {
                dark: t(r.color.dark || "#000000ff"),
                light: t(r.color.light || "#ffffffff")
            },
            type: r.type,
            rendererOpts: r.rendererOpts || {}
        }
    }, e.getScale = function(r, A) {
        return A.width && A.width >= r + A.margin * 2 ? A.width / (r + A.margin * 2) : A.scale
    }, e.getImageWidth = function(r, A) {
        const i = e.getScale(r, A);
        return Math.floor((r + A.margin * 2) * i)
    }, e.qrToImageData = function(r, A, i) {
        const s = A.modules.size,
            a = A.modules.data,
            o = e.getScale(s, i),
            l = Math.floor((s + i.margin * 2) * o),
            u = i.margin * o,
            f = [i.color.light, i.color.dark];
        for (let d = 0; d < l; d++)
            for (let p = 0; p < l; p++) {
                let m = (d * l + p) * 4,
                    g = i.color.light;
                if (d >= u && p >= u && d < l - u && p < l - u) {
                    const y = Math.floor((d - u) / o),
                        w = Math.floor((p - u) / o);
                    g = f[a[y * s + w] ? 1 : 0]
                }
                r[m++] = g.r, r[m++] = g.g, r[m++] = g.b, r[m] = g.a
            }
    }
})(l5);
(function(e) {
    const t = l5;

    function n(A, i, s) {
        A.clearRect(0, 0, i.width, i.height), i.style || (i.style = {}), i.height = s, i.width = s, i.style.height = s + "px", i.style.width = s + "px"
    }

    function r() {
        try {
            return document.createElement("canvas")
        } catch {
            throw new Error("You need to specify a canvas element")
        }
    }
    e.render = function(i, s, a) {
        let o = a,
            l = s;
        typeof o > "u" && (!s || !s.getContext) && (o = s, s = void 0), s || (l = r()), o = t.getOptions(o);
        const u = t.getImageWidth(i.modules.size, o),
            f = l.getContext("2d"),
            d = f.createImageData(u, u);
        return t.qrToImageData(d.data, i, o), n(f, l, u), f.putImageData(d, 0, 0), l
    }, e.renderToDataURL = function(i, s, a) {
        let o = a;
        typeof o > "u" && (!s || !s.getContext) && (o = s, s = void 0), o || (o = {});
        const l = e.render(i, s, o),
            u = o.type || "image/png",
            f = o.rendererOpts || {};
        return l.toDataURL(u, f.quality)
    }
})(uC);
var cC = {};
const eX = l5;

function Rm(e, t) {
    const n = e.a / 255,
        r = t + '="' + e.hex + '"';
    return n < 1 ? r + " " + t + '-opacity="' + n.toFixed(2).slice(1) + '"' : r
}

function Rd(e, t, n) {
    let r = e + t;
    return typeof n < "u" && (r += " " + n), r
}

function tX(e, t, n) {
    let r = "",
        A = 0,
        i = !1,
        s = 0;
    for (let a = 0; a < e.length; a++) {
        const o = Math.floor(a % t),
            l = Math.floor(a / t);
        !o && !i && (i = !0), e[a] ? (s++, a > 0 && o > 0 && e[a - 1] || (r += i ? Rd("M", o + n, .5 + l + n) : Rd("m", A, 0), A = 0, i = !1), o + 1 < t && e[a + 1] || (r += Rd("h", s), s = 0)) : A++
    }
    return r
}
cC.render = function(t, n, r) {
    const A = eX.getOptions(n),
        i = t.modules.size,
        s = t.modules.data,
        a = i + A.margin * 2,
        o = A.color.light.a ? "<path " + Rm(A.color.light, "fill") + ' d="M0 0h' + a + "v" + a + 'H0z"/>' : "",
        l = "<path " + Rm(A.color.dark, "stroke") + ' d="' + tX(s, i, A.margin) + '"/>',
        u = 'viewBox="0 0 ' + a + " " + a + '"',
        d = '<svg xmlns="http://www.w3.org/2000/svg" ' + (A.width ? 'width="' + A.width + '" height="' + A.width + '" ' : "") + u + ' shape-rendering="crispEdges">' + o + l + `</svg>
`;
    return typeof r == "function" && r(null, d), d
};
const nX = pY,
    Eh = Jy,
    fC = uC,
    rX = cC;

function u5(e, t, n, r, A) {
    const i = [].slice.call(arguments, 1),
        s = i.length,
        a = typeof i[s - 1] == "function";
    if (!a && !nX()) throw new Error("Callback required as last argument");
    if (a) {
        if (s < 2) throw new Error("Too few arguments provided");
        s === 2 ? (A = n, n = t, t = r = void 0) : s === 3 && (t.getContext && typeof A > "u" ? (A = r, r = void 0) : (A = r, r = n, n = t, t = void 0))
    } else {
        if (s < 1) throw new Error("Too few arguments provided");
        return s === 1 ? (n = t, t = r = void 0) : s === 2 && !t.getContext && (r = n, n = t, t = void 0), new Promise(function(o, l) {
            try {
                const u = Eh.create(n, r);
                o(e(u, t, r))
            } catch (u) {
                l(u)
            }
        })
    }
    try {
        const o = Eh.create(n, r);
        A(null, e(o, t, r))
    } catch (o) {
        A(o)
    }
}
Lf.create = Eh.create;
Lf.toCanvas = u5.bind(null, fC.render);
Lf.toDataURL = u5.bind(null, fC.renderToDataURL);
Lf.toString = u5.bind(null, function(e, t, n) {
    return rX.render(e, n)
});
/*!
 * html2canvas 1.4.1 <https://html2canvas.hertzen.com>
 * Copyright (c) 2022 Niklas von Hertzen <https://hertzen.com>
 * Released under MIT License
 */
/*! *****************************************************************************
Copyright (c) Microsoft Corporation.

Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.

THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */
var bh = function(e, t) {
    return bh = Object.setPrototypeOf || {
        __proto__: []
    }
    instanceof Array && function(n, r) {
        n.__proto__ = r
    } || function(n, r) {
        for (var A in r) Object.prototype.hasOwnProperty.call(r, A) && (n[A] = r[A])
    }, bh(e, t)
};

function lA(e, t) {
    if (typeof t != "function" && t !== null) throw new TypeError("Class extends value " + String(t) + " is not a constructor or null");
    bh(e, t);

    function n() {
        this.constructor = e
    }
    e.prototype = t === null ? Object.create(t) : (n.prototype = t.prototype, new n)
}
var Fh = function() {
    return Fh = Object.assign || function(t) {
        for (var n, r = 1, A = arguments.length; r < A; r++) {
            n = arguments[r];
            for (var i in n) Object.prototype.hasOwnProperty.call(n, i) && (t[i] = n[i])
        }
        return t
    }, Fh.apply(this, arguments)
};

function tr(e, t, n, r) {
    function A(i) {
        return i instanceof n ? i : new n(function(s) {
            s(i)
        })
    }
    return new(n || (n = Promise))(function(i, s) {
        function a(u) {
            try {
                l(r.next(u))
            } catch (f) {
                s(f)
            }
        }

        function o(u) {
            try {
                l(r.throw(u))
            } catch (f) {
                s(f)
            }
        }

        function l(u) {
            u.done ? i(u.value) : A(u.value).then(a, o)
        }
        l((r = r.apply(e, t || [])).next())
    })
}

function jn(e, t) {
    var n = {
            label: 0,
            sent: function() {
                if (i[0] & 1) throw i[1];
                return i[1]
            },
            trys: [],
            ops: []
        },
        r, A, i, s;
    return s = {
        next: a(0),
        throw: a(1),
        return: a(2)
    }, typeof Symbol == "function" && (s[Symbol.iterator] = function() {
        return this
    }), s;

    function a(l) {
        return function(u) {
            return o([l, u])
        }
    }

    function o(l) {
        if (r) throw new TypeError("Generator is already executing.");
        for (; n;) try {
            if (r = 1, A && (i = l[0] & 2 ? A.return : l[0] ? A.throw || ((i = A.return) && i.call(A), 0) : A.next) && !(i = i.call(A, l[1])).done) return i;
            switch (A = 0, i && (l = [l[0] & 2, i.value]), l[0]) {
                case 0:
                case 1:
                    i = l;
                    break;
                case 4:
                    return n.label++, {
                        value: l[1],
                        done: !1
                    };
                case 5:
                    n.label++, A = l[1], l = [0];
                    continue;
                case 7:
                    l = n.ops.pop(), n.trys.pop();
                    continue;
                default:
                    if (i = n.trys, !(i = i.length > 0 && i[i.length - 1]) && (l[0] === 6 || l[0] === 2)) {
                        n = 0;
                        continue
                    }
                    if (l[0] === 3 && (!i || l[1] > i[0] && l[1] < i[3])) {
                        n.label = l[1];
                        break
                    }
                    if (l[0] === 6 && n.label < i[1]) {
                        n.label = i[1], i = l;
                        break
                    }
                    if (i && n.label < i[2]) {
                        n.label = i[2], n.ops.push(l);
                        break
                    }
                    i[2] && n.ops.pop(), n.trys.pop();
                    continue
            }
            l = t.call(e, n)
        } catch (u) {
            l = [6, u], A = 0
        } finally {
            r = i = 0
        }
        if (l[0] & 5) throw l[1];
        return {
            value: l[0] ? l[1] : void 0,
            done: !0
        }
    }
}

function vu(e, t, n) {
    if (n || arguments.length === 2)
        for (var r = 0, A = t.length, i; r < A; r++)(i || !(r in t)) && (i || (i = Array.prototype.slice.call(t, 0, r)), i[r] = t[r]);
    return e.concat(i || t)
}
var li = function() {
        function e(t, n, r, A) {
            this.left = t, this.top = n, this.width = r, this.height = A
        }
        return e.prototype.add = function(t, n, r, A) {
            return new e(this.left + t, this.top + n, this.width + r, this.height + A)
        }, e.fromClientRect = function(t, n) {
            return new e(n.left + t.windowBounds.left, n.top + t.windowBounds.top, n.width, n.height)
        }, e.fromDOMRectList = function(t, n) {
            var r = Array.from(n).find(function(A) {
                return A.width !== 0
            });
            return r ? new e(r.left + t.windowBounds.left, r.top + t.windowBounds.top, r.width, r.height) : e.EMPTY
        }, e.EMPTY = new e(0, 0, 0, 0), e
    }(),
    Nf = function(e, t) {
        return li.fromClientRect(e, t.getBoundingClientRect())
    },
    AX = function(e) {
        var t = e.body,
            n = e.documentElement;
        if (!t || !n) throw new Error("Unable to get document size");
        var r = Math.max(Math.max(t.scrollWidth, n.scrollWidth), Math.max(t.offsetWidth, n.offsetWidth), Math.max(t.clientWidth, n.clientWidth)),
            A = Math.max(Math.max(t.scrollHeight, n.scrollHeight), Math.max(t.offsetHeight, n.offsetHeight), Math.max(t.clientHeight, n.clientHeight));
        return new li(0, 0, r, A)
    },
    $f = function(e) {
        for (var t = [], n = 0, r = e.length; n < r;) {
            var A = e.charCodeAt(n++);
            if (A >= 55296 && A <= 56319 && n < r) {
                var i = e.charCodeAt(n++);
                (i & 64512) === 56320 ? t.push(((A & 1023) << 10) + (i & 1023) + 65536) : (t.push(A), n--)
            } else t.push(A)
        }
        return t
    },
    nn = function() {
        for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t];
        if (String.fromCodePoint) return String.fromCodePoint.apply(String, e);
        var n = e.length;
        if (!n) return "";
        for (var r = [], A = -1, i = ""; ++A < n;) {
            var s = e[A];
            s <= 65535 ? r.push(s) : (s -= 65536, r.push((s >> 10) + 55296, s % 1024 + 56320)), (A + 1 === n || r.length > 16384) && (i += String.fromCharCode.apply(String, r), r.length = 0)
        }
        return i
    },
    Nm = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",
    iX = typeof Uint8Array > "u" ? [] : new Uint8Array(256);
for (var mu = 0; mu < Nm.length; mu++) iX[Nm.charCodeAt(mu)] = mu;
var $m = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",
    fl = typeof Uint8Array > "u" ? [] : new Uint8Array(256);
for (var Bu = 0; Bu < $m.length; Bu++) fl[$m.charCodeAt(Bu)] = Bu;
var sX = function(e) {
        var t = e.length * .75,
            n = e.length,
            r, A = 0,
            i, s, a, o;
        e[e.length - 1] === "=" && (t--, e[e.length - 2] === "=" && t--);
        var l = typeof ArrayBuffer < "u" && typeof Uint8Array < "u" && typeof Uint8Array.prototype.slice < "u" ? new ArrayBuffer(t) : new Array(t),
            u = Array.isArray(l) ? l : new Uint8Array(l);
        for (r = 0; r < n; r += 4) i = fl[e.charCodeAt(r)], s = fl[e.charCodeAt(r + 1)], a = fl[e.charCodeAt(r + 2)], o = fl[e.charCodeAt(r + 3)], u[A++] = i << 2 | s >> 4, u[A++] = (s & 15) << 4 | a >> 2, u[A++] = (a & 3) << 6 | o & 63;
        return l
    },
    aX = function(e) {
        for (var t = e.length, n = [], r = 0; r < t; r += 2) n.push(e[r + 1] << 8 | e[r]);
        return n
    },
    oX = function(e) {
        for (var t = e.length, n = [], r = 0; r < t; r += 4) n.push(e[r + 3] << 24 | e[r + 2] << 16 | e[r + 1] << 8 | e[r]);
        return n
    },
    Ys = 5,
    c5 = 6 + 5,
    Nd = 2,
    lX = c5 - Ys,
    dC = 65536 >> Ys,
    uX = 1 << Ys,
    $d = uX - 1,
    cX = 1024 >> Ys,
    fX = dC + cX,
    dX = fX,
    hX = 32,
    pX = dX + hX,
    gX = 65536 >> c5,
    vX = 1 << lX,
    mX = vX - 1,
    Km = function(e, t, n) {
        return e.slice ? e.slice(t, n) : new Uint16Array(Array.prototype.slice.call(e, t, n))
    },
    BX = function(e, t, n) {
        return e.slice ? e.slice(t, n) : new Uint32Array(Array.prototype.slice.call(e, t, n))
    },
    wX = function(e, t) {
        var n = sX(e),
            r = Array.isArray(n) ? oX(n) : new Uint32Array(n),
            A = Array.isArray(n) ? aX(n) : new Uint16Array(n),
            i = 24,
            s = Km(A, i / 2, r[4] / 2),
            a = r[5] === 2 ? Km(A, (i + r[4]) / 2) : BX(r, Math.ceil((i + r[4]) / 4));
        return new yX(r[0], r[1], r[2], r[3], s, a)
    },
    yX = function() {
        function e(t, n, r, A, i, s) {
            this.initialValue = t, this.errorValue = n, this.highStart = r, this.highValueIndex = A, this.index = i, this.data = s
        }
        return e.prototype.get = function(t) {
            var n;
            if (t >= 0) {
                if (t < 55296 || t > 56319 && t <= 65535) return n = this.index[t >> Ys], n = (n << Nd) + (t & $d), this.data[n];
                if (t <= 65535) return n = this.index[dC + (t - 55296 >> Ys)], n = (n << Nd) + (t & $d), this.data[n];
                if (t < this.highStart) return n = pX - gX + (t >> c5), n = this.index[n], n += t >> Ys & mX, n = this.index[n], n = (n << Nd) + (t & $d), this.data[n];
                if (t <= 1114111) return this.data[this.highValueIndex]
            }
            return this.errorValue
        }, e
    }(),
    Vm = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",
    CX = typeof Uint8Array > "u" ? [] : new Uint8Array(256);
for (var wu = 0; wu < Vm.length; wu++) CX[Vm.charCodeAt(wu)] = wu;
var xX = " ",
    Gm = 50,
    EX = 1,
    hC = 2,
    pC = 3,
    bX = 4,
    FX = 5,
    zm = 7,
    gC = 8,
    Wm = 9,
    Wi = 10,
    _h = 11,
    jm = 12,
    Sh = 13,
    _X = 14,
    dl = 15,
    Qh = 16,
    yu = 17,
    il = 18,
    SX = 19,
    Ym = 20,
    Uh = 21,
    sl = 22,
    Kd = 23,
    Ta = 24,
    xr = 25,
    hl = 26,
    pl = 27,
    Ia = 28,
    QX = 29,
    ks = 30,
    UX = 31,
    Cu = 32,
    xu = 33,
    Th = 34,
    Ih = 35,
    Dh = 36,
    i0 = 37,
    Ph = 38,
    Ju = 39,
    qu = 40,
    Vd = 41,
    vC = 42,
    TX = 43,
    IX = [9001, 65288],
    mC = "!",
    Ct = "×",
    Eu = "÷",
    Oh = wX(xX),
    NA = [ks, Dh],
    Lh = [EX, hC, pC, FX],
    BC = [Wi, gC],
    Xm = [pl, hl],
    DX = Lh.concat(BC),
    Jm = [Ph, Ju, qu, Th, Ih],
    PX = [dl, Sh],
    OX = function(e, t) {
        t === void 0 && (t = "strict");
        var n = [],
            r = [],
            A = [];
        return e.forEach(function(i, s) {
            var a = Oh.get(i);
            if (a > Gm ? (A.push(!0), a -= Gm) : A.push(!1), ["normal", "auto", "loose"].indexOf(t) !== -1 && [8208, 8211, 12316, 12448].indexOf(i) !== -1) return r.push(s), n.push(Qh);
            if (a === bX || a === _h) {
                if (s === 0) return r.push(s), n.push(ks);
                var o = n[s - 1];
                return DX.indexOf(o) === -1 ? (r.push(r[s - 1]), n.push(o)) : (r.push(s), n.push(ks))
            }
            if (r.push(s), a === UX) return n.push(t === "strict" ? Uh : i0);
            if (a === vC || a === QX) return n.push(ks);
            if (a === TX) return i >= 131072 && i <= 196605 || i >= 196608 && i <= 262141 ? n.push(i0) : n.push(ks);
            n.push(a)
        }), [r, n, A]
    },
    Gd = function(e, t, n, r) {
        var A = r[n];
        if (Array.isArray(e) ? e.indexOf(A) !== -1 : e === A)
            for (var i = n; i <= r.length;) {
                i++;
                var s = r[i];
                if (s === t) return !0;
                if (s !== Wi) break
            }
        if (A === Wi)
            for (var i = n; i > 0;) {
                i--;
                var a = r[i];
                if (Array.isArray(e) ? e.indexOf(a) !== -1 : e === a)
                    for (var o = n; o <= r.length;) {
                        o++;
                        var s = r[o];
                        if (s === t) return !0;
                        if (s !== Wi) break
                    }
                if (a !== Wi) break
            }
        return !1
    },
    qm = function(e, t) {
        for (var n = e; n >= 0;) {
            var r = t[n];
            if (r === Wi) n--;
            else return r
        }
        return 0
    },
    LX = function(e, t, n, r, A) {
        if (n[r] === 0) return Ct;
        var i = r - 1;
        if (Array.isArray(A) && A[i] === !0) return Ct;
        var s = i - 1,
            a = i + 1,
            o = t[i],
            l = s >= 0 ? t[s] : 0,
            u = t[a];
        if (o === hC && u === pC) return Ct;
        if (Lh.indexOf(o) !== -1) return mC;
        if (Lh.indexOf(u) !== -1 || BC.indexOf(u) !== -1) return Ct;
        if (qm(i, t) === gC) return Eu;
        if (Oh.get(e[i]) === _h || (o === Cu || o === xu) && Oh.get(e[a]) === _h || o === zm || u === zm || o === Wm || [Wi, Sh, dl].indexOf(o) === -1 && u === Wm || [yu, il, SX, Ta, Ia].indexOf(u) !== -1 || qm(i, t) === sl || Gd(Kd, sl, i, t) || Gd([yu, il], Uh, i, t) || Gd(jm, jm, i, t)) return Ct;
        if (o === Wi) return Eu;
        if (o === Kd || u === Kd) return Ct;
        if (u === Qh || o === Qh) return Eu;
        if ([Sh, dl, Uh].indexOf(u) !== -1 || o === _X || l === Dh && PX.indexOf(o) !== -1 || o === Ia && u === Dh || u === Ym || NA.indexOf(u) !== -1 && o === xr || NA.indexOf(o) !== -1 && u === xr || o === pl && [i0, Cu, xu].indexOf(u) !== -1 || [i0, Cu, xu].indexOf(o) !== -1 && u === hl || NA.indexOf(o) !== -1 && Xm.indexOf(u) !== -1 || Xm.indexOf(o) !== -1 && NA.indexOf(u) !== -1 || [pl, hl].indexOf(o) !== -1 && (u === xr || [sl, dl].indexOf(u) !== -1 && t[a + 1] === xr) || [sl, dl].indexOf(o) !== -1 && u === xr || o === xr && [xr, Ia, Ta].indexOf(u) !== -1) return Ct;
        if ([xr, Ia, Ta, yu, il].indexOf(u) !== -1)
            for (var f = i; f >= 0;) {
                var d = t[f];
                if (d === xr) return Ct;
                if ([Ia, Ta].indexOf(d) !== -1) f--;
                else break
            }
        if ([pl, hl].indexOf(u) !== -1)
            for (var f = [yu, il].indexOf(o) !== -1 ? s : i; f >= 0;) {
                var d = t[f];
                if (d === xr) return Ct;
                if ([Ia, Ta].indexOf(d) !== -1) f--;
                else break
            }
        if (Ph === o && [Ph, Ju, Th, Ih].indexOf(u) !== -1 || [Ju, Th].indexOf(o) !== -1 && [Ju, qu].indexOf(u) !== -1 || [qu, Ih].indexOf(o) !== -1 && u === qu || Jm.indexOf(o) !== -1 && [Ym, hl].indexOf(u) !== -1 || Jm.indexOf(u) !== -1 && o === pl || NA.indexOf(o) !== -1 && NA.indexOf(u) !== -1 || o === Ta && NA.indexOf(u) !== -1 || NA.concat(xr).indexOf(o) !== -1 && u === sl && IX.indexOf(e[a]) === -1 || NA.concat(xr).indexOf(u) !== -1 && o === il) return Ct;
        if (o === Vd && u === Vd) {
            for (var p = n[i], m = 1; p > 0 && (p--, t[p] === Vd);) m++;
            if (m % 2 !== 0) return Ct
        }
        return o === Cu && u === xu ? Ct : Eu
    },
    kX = function(e, t) {
        t || (t = {
            lineBreak: "normal",
            wordBreak: "normal"
        });
        var n = OX(e, t.lineBreak),
            r = n[0],
            A = n[1],
            i = n[2];
        (t.wordBreak === "break-all" || t.wordBreak === "break-word") && (A = A.map(function(a) {
            return [xr, ks, vC].indexOf(a) !== -1 ? i0 : a
        }));
        var s = t.wordBreak === "keep-all" ? i.map(function(a, o) {
            return a && e[o] >= 19968 && e[o] <= 40959
        }) : void 0;
        return [r, A, s]
    },
    HX = function() {
        function e(t, n, r, A) {
            this.codePoints = t, this.required = n === mC, this.start = r, this.end = A
        }
        return e.prototype.slice = function() {
            return nn.apply(void 0, this.codePoints.slice(this.start, this.end))
        }, e
    }(),
    MX = function(e, t) {
        var n = $f(e),
            r = kX(n, t),
            A = r[0],
            i = r[1],
            s = r[2],
            a = n.length,
            o = 0,
            l = 0;
        return {
            next: function() {
                if (l >= a) return {
                    done: !0,
                    value: null
                };
                for (var u = Ct; l < a && (u = LX(n, i, A, ++l, s)) === Ct;);
                if (u !== Ct || l === a) {
                    var f = new HX(n, u, o, l);
                    return o = l, {
                        value: f,
                        done: !1
                    }
                }
                return {
                    done: !0,
                    value: null
                }
            }
        }
    },
    RX = 1,
    NX = 2,
    U0 = 4,
    Zm = 8,
    Cc = 10,
    e7 = 47,
    Ol = 92,
    $X = 9,
    KX = 32,
    bu = 34,
    al = 61,
    VX = 35,
    GX = 36,
    zX = 37,
    Fu = 39,
    _u = 40,
    ol = 41,
    WX = 95,
    dr = 45,
    jX = 33,
    YX = 60,
    XX = 62,
    JX = 64,
    qX = 91,
    ZX = 93,
    eJ = 61,
    tJ = 123,
    Su = 63,
    nJ = 125,
    t7 = 124,
    rJ = 126,
    AJ = 128,
    n7 = 65533,
    zd = 42,
    Ns = 43,
    iJ = 44,
    sJ = 58,
    aJ = 59,
    s0 = 46,
    oJ = 0,
    lJ = 8,
    uJ = 11,
    cJ = 14,
    fJ = 31,
    dJ = 127,
    gA = -1,
    wC = 48,
    yC = 97,
    CC = 101,
    hJ = 102,
    pJ = 117,
    gJ = 122,
    xC = 65,
    EC = 69,
    bC = 70,
    vJ = 85,
    mJ = 90,
    Yn = function(e) {
        return e >= wC && e <= 57
    },
    BJ = function(e) {
        return e >= 55296 && e <= 57343
    },
    Da = function(e) {
        return Yn(e) || e >= xC && e <= bC || e >= yC && e <= hJ
    },
    wJ = function(e) {
        return e >= yC && e <= gJ
    },
    yJ = function(e) {
        return e >= xC && e <= mJ
    },
    CJ = function(e) {
        return wJ(e) || yJ(e)
    },
    xJ = function(e) {
        return e >= AJ
    },
    Qu = function(e) {
        return e === Cc || e === $X || e === KX
    },
    xc = function(e) {
        return CJ(e) || xJ(e) || e === WX
    },
    r7 = function(e) {
        return xc(e) || Yn(e) || e === dr
    },
    EJ = function(e) {
        return e >= oJ && e <= lJ || e === uJ || e >= cJ && e <= fJ || e === dJ
    },
    Mi = function(e, t) {
        return e !== Ol ? !1 : t !== Cc
    },
    Uu = function(e, t, n) {
        return e === dr ? xc(t) || Mi(t, n) : xc(e) ? !0 : !!(e === Ol && Mi(e, t))
    },
    Wd = function(e, t, n) {
        return e === Ns || e === dr ? Yn(t) ? !0 : t === s0 && Yn(n) : Yn(e === s0 ? t : e)
    },
    bJ = function(e) {
        var t = 0,
            n = 1;
        (e[t] === Ns || e[t] === dr) && (e[t] === dr && (n = -1), t++);
        for (var r = []; Yn(e[t]);) r.push(e[t++]);
        var A = r.length ? parseInt(nn.apply(void 0, r), 10) : 0;
        e[t] === s0 && t++;
        for (var i = []; Yn(e[t]);) i.push(e[t++]);
        var s = i.length,
            a = s ? parseInt(nn.apply(void 0, i), 10) : 0;
        (e[t] === EC || e[t] === CC) && t++;
        var o = 1;
        (e[t] === Ns || e[t] === dr) && (e[t] === dr && (o = -1), t++);
        for (var l = []; Yn(e[t]);) l.push(e[t++]);
        var u = l.length ? parseInt(nn.apply(void 0, l), 10) : 0;
        return n * (A + a * Math.pow(10, -s)) * Math.pow(10, o * u)
    },
    FJ = {
        type: 2
    },
    _J = {
        type: 3
    },
    SJ = {
        type: 4
    },
    QJ = {
        type: 13
    },
    UJ = {
        type: 8
    },
    TJ = {
        type: 21
    },
    IJ = {
        type: 9
    },
    DJ = {
        type: 10
    },
    PJ = {
        type: 11
    },
    OJ = {
        type: 12
    },
    LJ = {
        type: 14
    },
    Tu = {
        type: 23
    },
    kJ = {
        type: 1
    },
    HJ = {
        type: 25
    },
    MJ = {
        type: 24
    },
    RJ = {
        type: 26
    },
    NJ = {
        type: 27
    },
    $J = {
        type: 28
    },
    KJ = {
        type: 29
    },
    VJ = {
        type: 31
    },
    kh = {
        type: 32
    },
    FC = function() {
        function e() {
            this._value = []
        }
        return e.prototype.write = function(t) {
            this._value = this._value.concat($f(t))
        }, e.prototype.read = function() {
            for (var t = [], n = this.consumeToken(); n !== kh;) t.push(n), n = this.consumeToken();
            return t
        }, e.prototype.consumeToken = function() {
            var t = this.consumeCodePoint();
            switch (t) {
                case bu:
                    return this.consumeStringToken(bu);
                case VX:
                    var n = this.peekCodePoint(0),
                        r = this.peekCodePoint(1),
                        A = this.peekCodePoint(2);
                    if (r7(n) || Mi(r, A)) {
                        var i = Uu(n, r, A) ? NX : RX,
                            s = this.consumeName();
                        return {
                            type: 5,
                            value: s,
                            flags: i
                        }
                    }
                    break;
                case GX:
                    if (this.peekCodePoint(0) === al) return this.consumeCodePoint(), QJ;
                    break;
                case Fu:
                    return this.consumeStringToken(Fu);
                case _u:
                    return FJ;
                case ol:
                    return _J;
                case zd:
                    if (this.peekCodePoint(0) === al) return this.consumeCodePoint(), LJ;
                    break;
                case Ns:
                    if (Wd(t, this.peekCodePoint(0), this.peekCodePoint(1))) return this.reconsumeCodePoint(t), this.consumeNumericToken();
                    break;
                case iJ:
                    return SJ;
                case dr:
                    var a = t,
                        o = this.peekCodePoint(0),
                        l = this.peekCodePoint(1);
                    if (Wd(a, o, l)) return this.reconsumeCodePoint(t), this.consumeNumericToken();
                    if (Uu(a, o, l)) return this.reconsumeCodePoint(t), this.consumeIdentLikeToken();
                    if (o === dr && l === XX) return this.consumeCodePoint(), this.consumeCodePoint(), MJ;
                    break;
                case s0:
                    if (Wd(t, this.peekCodePoint(0), this.peekCodePoint(1))) return this.reconsumeCodePoint(t), this.consumeNumericToken();
                    break;
                case e7:
                    if (this.peekCodePoint(0) === zd)
                        for (this.consumeCodePoint();;) {
                            var u = this.consumeCodePoint();
                            if (u === zd && (u = this.consumeCodePoint(), u === e7)) return this.consumeToken();
                            if (u === gA) return this.consumeToken()
                        }
                    break;
                case sJ:
                    return RJ;
                case aJ:
                    return NJ;
                case YX:
                    if (this.peekCodePoint(0) === jX && this.peekCodePoint(1) === dr && this.peekCodePoint(2) === dr) return this.consumeCodePoint(), this.consumeCodePoint(), HJ;
                    break;
                case JX:
                    var f = this.peekCodePoint(0),
                        d = this.peekCodePoint(1),
                        p = this.peekCodePoint(2);
                    if (Uu(f, d, p)) {
                        var s = this.consumeName();
                        return {
                            type: 7,
                            value: s
                        }
                    }
                    break;
                case qX:
                    return $J;
                case Ol:
                    if (Mi(t, this.peekCodePoint(0))) return this.reconsumeCodePoint(t), this.consumeIdentLikeToken();
                    break;
                case ZX:
                    return KJ;
                case eJ:
                    if (this.peekCodePoint(0) === al) return this.consumeCodePoint(), UJ;
                    break;
                case tJ:
                    return PJ;
                case nJ:
                    return OJ;
                case pJ:
                case vJ:
                    var m = this.peekCodePoint(0),
                        g = this.peekCodePoint(1);
                    return m === Ns && (Da(g) || g === Su) && (this.consumeCodePoint(), this.consumeUnicodeRangeToken()), this.reconsumeCodePoint(t), this.consumeIdentLikeToken();
                case t7:
                    if (this.peekCodePoint(0) === al) return this.consumeCodePoint(), IJ;
                    if (this.peekCodePoint(0) === t7) return this.consumeCodePoint(), TJ;
                    break;
                case rJ:
                    if (this.peekCodePoint(0) === al) return this.consumeCodePoint(), DJ;
                    break;
                case gA:
                    return kh
            }
            return Qu(t) ? (this.consumeWhiteSpace(), VJ) : Yn(t) ? (this.reconsumeCodePoint(t), this.consumeNumericToken()) : xc(t) ? (this.reconsumeCodePoint(t), this.consumeIdentLikeToken()) : {
                type: 6,
                value: nn(t)
            }
        }, e.prototype.consumeCodePoint = function() {
            var t = this._value.shift();
            return typeof t > "u" ? -1 : t
        }, e.prototype.reconsumeCodePoint = function(t) {
            this._value.unshift(t)
        }, e.prototype.peekCodePoint = function(t) {
            return t >= this._value.length ? -1 : this._value[t]
        }, e.prototype.consumeUnicodeRangeToken = function() {
            for (var t = [], n = this.consumeCodePoint(); Da(n) && t.length < 6;) t.push(n), n = this.consumeCodePoint();
            for (var r = !1; n === Su && t.length < 6;) t.push(n), n = this.consumeCodePoint(), r = !0;
            if (r) {
                var A = parseInt(nn.apply(void 0, t.map(function(o) {
                        return o === Su ? wC : o
                    })), 16),
                    i = parseInt(nn.apply(void 0, t.map(function(o) {
                        return o === Su ? bC : o
                    })), 16);
                return {
                    type: 30,
                    start: A,
                    end: i
                }
            }
            var s = parseInt(nn.apply(void 0, t), 16);
            if (this.peekCodePoint(0) === dr && Da(this.peekCodePoint(1))) {
                this.consumeCodePoint(), n = this.consumeCodePoint();
                for (var a = []; Da(n) && a.length < 6;) a.push(n), n = this.consumeCodePoint();
                var i = parseInt(nn.apply(void 0, a), 16);
                return {
                    type: 30,
                    start: s,
                    end: i
                }
            } else return {
                type: 30,
                start: s,
                end: s
            }
        }, e.prototype.consumeIdentLikeToken = function() {
            var t = this.consumeName();
            return t.toLowerCase() === "url" && this.peekCodePoint(0) === _u ? (this.consumeCodePoint(), this.consumeUrlToken()) : this.peekCodePoint(0) === _u ? (this.consumeCodePoint(), {
                type: 19,
                value: t
            }) : {
                type: 20,
                value: t
            }
        }, e.prototype.consumeUrlToken = function() {
            var t = [];
            if (this.consumeWhiteSpace(), this.peekCodePoint(0) === gA) return {
                type: 22,
                value: ""
            };
            var n = this.peekCodePoint(0);
            if (n === Fu || n === bu) {
                var r = this.consumeStringToken(this.consumeCodePoint());
                return r.type === 0 && (this.consumeWhiteSpace(), this.peekCodePoint(0) === gA || this.peekCodePoint(0) === ol) ? (this.consumeCodePoint(), {
                    type: 22,
                    value: r.value
                }) : (this.consumeBadUrlRemnants(), Tu)
            }
            for (;;) {
                var A = this.consumeCodePoint();
                if (A === gA || A === ol) return {
                    type: 22,
                    value: nn.apply(void 0, t)
                };
                if (Qu(A)) return this.consumeWhiteSpace(), this.peekCodePoint(0) === gA || this.peekCodePoint(0) === ol ? (this.consumeCodePoint(), {
                    type: 22,
                    value: nn.apply(void 0, t)
                }) : (this.consumeBadUrlRemnants(), Tu);
                if (A === bu || A === Fu || A === _u || EJ(A)) return this.consumeBadUrlRemnants(), Tu;
                if (A === Ol)
                    if (Mi(A, this.peekCodePoint(0))) t.push(this.consumeEscapedCodePoint());
                    else return this.consumeBadUrlRemnants(), Tu;
                else t.push(A)
            }
        }, e.prototype.consumeWhiteSpace = function() {
            for (; Qu(this.peekCodePoint(0));) this.consumeCodePoint()
        }, e.prototype.consumeBadUrlRemnants = function() {
            for (;;) {
                var t = this.consumeCodePoint();
                if (t === ol || t === gA) return;
                Mi(t, this.peekCodePoint(0)) && this.consumeEscapedCodePoint()
            }
        }, e.prototype.consumeStringSlice = function(t) {
            for (var n = 5e4, r = ""; t > 0;) {
                var A = Math.min(n, t);
                r += nn.apply(void 0, this._value.splice(0, A)), t -= A
            }
            return this._value.shift(), r
        }, e.prototype.consumeStringToken = function(t) {
            var n = "",
                r = 0;
            do {
                var A = this._value[r];
                if (A === gA || A === void 0 || A === t) return n += this.consumeStringSlice(r), {
                    type: 0,
                    value: n
                };
                if (A === Cc) return this._value.splice(0, r), kJ;
                if (A === Ol) {
                    var i = this._value[r + 1];
                    i !== gA && i !== void 0 && (i === Cc ? (n += this.consumeStringSlice(r), r = -1, this._value.shift()) : Mi(A, i) && (n += this.consumeStringSlice(r), n += nn(this.consumeEscapedCodePoint()), r = -1))
                }
                r++
            } while (!0)
        }, e.prototype.consumeNumber = function() {
            var t = [],
                n = U0,
                r = this.peekCodePoint(0);
            for ((r === Ns || r === dr) && t.push(this.consumeCodePoint()); Yn(this.peekCodePoint(0));) t.push(this.consumeCodePoint());
            r = this.peekCodePoint(0);
            var A = this.peekCodePoint(1);
            if (r === s0 && Yn(A))
                for (t.push(this.consumeCodePoint(), this.consumeCodePoint()), n = Zm; Yn(this.peekCodePoint(0));) t.push(this.consumeCodePoint());
            r = this.peekCodePoint(0), A = this.peekCodePoint(1);
            var i = this.peekCodePoint(2);
            if ((r === EC || r === CC) && ((A === Ns || A === dr) && Yn(i) || Yn(A)))
                for (t.push(this.consumeCodePoint(), this.consumeCodePoint()), n = Zm; Yn(this.peekCodePoint(0));) t.push(this.consumeCodePoint());
            return [bJ(t), n]
        }, e.prototype.consumeNumericToken = function() {
            var t = this.consumeNumber(),
                n = t[0],
                r = t[1],
                A = this.peekCodePoint(0),
                i = this.peekCodePoint(1),
                s = this.peekCodePoint(2);
            if (Uu(A, i, s)) {
                var a = this.consumeName();
                return {
                    type: 15,
                    number: n,
                    flags: r,
                    unit: a
                }
            }
            return A === zX ? (this.consumeCodePoint(), {
                type: 16,
                number: n,
                flags: r
            }) : {
                type: 17,
                number: n,
                flags: r
            }
        }, e.prototype.consumeEscapedCodePoint = function() {
            var t = this.consumeCodePoint();
            if (Da(t)) {
                for (var n = nn(t); Da(this.peekCodePoint(0)) && n.length < 6;) n += nn(this.consumeCodePoint());
                Qu(this.peekCodePoint(0)) && this.consumeCodePoint();
                var r = parseInt(n, 16);
                return r === 0 || BJ(r) || r > 1114111 ? n7 : r
            }
            return t === gA ? n7 : t
        }, e.prototype.consumeName = function() {
            for (var t = "";;) {
                var n = this.consumeCodePoint();
                if (r7(n)) t += nn(n);
                else if (Mi(n, this.peekCodePoint(0))) t += nn(this.consumeEscapedCodePoint());
                else return this.reconsumeCodePoint(n), t
            }
        }, e
    }(),
    _C = function() {
        function e(t) {
            this._tokens = t
        }
        return e.create = function(t) {
            var n = new FC;
            return n.write(t), new e(n.read())
        }, e.parseValue = function(t) {
            return e.create(t).parseComponentValue()
        }, e.parseValues = function(t) {
            return e.create(t).parseComponentValues()
        }, e.prototype.parseComponentValue = function() {
            for (var t = this.consumeToken(); t.type === 31;) t = this.consumeToken();
            if (t.type === 32) throw new SyntaxError("Error parsing CSS component value, unexpected EOF");
            this.reconsumeToken(t);
            var n = this.consumeComponentValue();
            do t = this.consumeToken(); while (t.type === 31);
            if (t.type === 32) return n;
            throw new SyntaxError("Error parsing CSS component value, multiple values found when expecting only one")
        }, e.prototype.parseComponentValues = function() {
            for (var t = [];;) {
                var n = this.consumeComponentValue();
                if (n.type === 32) return t;
                t.push(n), t.push()
            }
        }, e.prototype.consumeComponentValue = function() {
            var t = this.consumeToken();
            switch (t.type) {
                case 11:
                case 28:
                case 2:
                    return this.consumeSimpleBlock(t.type);
                case 19:
                    return this.consumeFunction(t)
            }
            return t
        }, e.prototype.consumeSimpleBlock = function(t) {
            for (var n = {
                    type: t,
                    values: []
                }, r = this.consumeToken();;) {
                if (r.type === 32 || zJ(r, t)) return n;
                this.reconsumeToken(r), n.values.push(this.consumeComponentValue()), r = this.consumeToken()
            }
        }, e.prototype.consumeFunction = function(t) {
            for (var n = {
                    name: t.value,
                    values: [],
                    type: 18
                };;) {
                var r = this.consumeToken();
                if (r.type === 32 || r.type === 3) return n;
                this.reconsumeToken(r), n.values.push(this.consumeComponentValue())
            }
        }, e.prototype.consumeToken = function() {
            var t = this._tokens.shift();
            return typeof t > "u" ? kh : t
        }, e.prototype.reconsumeToken = function(t) {
            this._tokens.unshift(t)
        }, e
    }(),
    T0 = function(e) {
        return e.type === 15
    },
    Io = function(e) {
        return e.type === 17
    },
    Mt = function(e) {
        return e.type === 20
    },
    GJ = function(e) {
        return e.type === 0
    },
    Hh = function(e, t) {
        return Mt(e) && e.value === t
    },
    SC = function(e) {
        return e.type !== 31
    },
    vo = function(e) {
        return e.type !== 31 && e.type !== 4
    },
    QA = function(e) {
        var t = [],
            n = [];
        return e.forEach(function(r) {
            if (r.type === 4) {
                if (n.length === 0) throw new Error("Error parsing function args, zero tokens for arg");
                t.push(n), n = [];
                return
            }
            r.type !== 31 && n.push(r)
        }), n.length && t.push(n), t
    },
    zJ = function(e, t) {
        return t === 11 && e.type === 12 || t === 28 && e.type === 29 ? !0 : t === 2 && e.type === 3
    },
    us = function(e) {
        return e.type === 17 || e.type === 15
    },
    un = function(e) {
        return e.type === 16 || us(e)
    },
    QC = function(e) {
        return e.length > 1 ? [e[0], e[1]] : [e[0]]
    },
    Kn = {
        type: 17,
        number: 0,
        flags: U0
    },
    f5 = {
        type: 16,
        number: 50,
        flags: U0
    },
    ji = {
        type: 16,
        number: 100,
        flags: U0
    },
    gl = function(e, t, n) {
        var r = e[0],
            A = e[1];
        return [Kt(r, t), Kt(typeof A < "u" ? A : r, n)]
    },
    Kt = function(e, t) {
        if (e.type === 16) return e.number / 100 * t;
        if (T0(e)) switch (e.unit) {
            case "rem":
            case "em":
                return 16 * e.number;
            case "px":
            default:
                return e.number
        }
        return e.number
    },
    UC = "deg",
    TC = "grad",
    IC = "rad",
    DC = "turn",
    Kf = {
        name: "angle",
        parse: function(e, t) {
            if (t.type === 15) switch (t.unit) {
                case UC:
                    return Math.PI * t.number / 180;
                case TC:
                    return Math.PI / 200 * t.number;
                case IC:
                    return t.number;
                case DC:
                    return Math.PI * 2 * t.number
            }
            throw new Error("Unsupported angle type")
        }
    },
    PC = function(e) {
        return e.type === 15 && (e.unit === UC || e.unit === TC || e.unit === IC || e.unit === DC)
    },
    OC = function(e) {
        var t = e.filter(Mt).map(function(n) {
            return n.value
        }).join(" ");
        switch (t) {
            case "to bottom right":
            case "to right bottom":
            case "left top":
            case "top left":
                return [Kn, Kn];
            case "to top":
            case "bottom":
                return Vr(0);
            case "to bottom left":
            case "to left bottom":
            case "right top":
            case "top right":
                return [Kn, ji];
            case "to right":
            case "left":
                return Vr(90);
            case "to top left":
            case "to left top":
            case "right bottom":
            case "bottom right":
                return [ji, ji];
            case "to bottom":
            case "top":
                return Vr(180);
            case "to top right":
            case "to right top":
            case "left bottom":
            case "bottom left":
                return [ji, Kn];
            case "to left":
            case "right":
                return Vr(270)
        }
        return 0
    },
    Vr = function(e) {
        return Math.PI * e / 180
    },
    Zi = {
        name: "color",
        parse: function(e, t) {
            if (t.type === 18) {
                var n = WJ[t.name];
                if (typeof n > "u") throw new Error('Attempting to parse an unsupported color function "' + t.name + '"');
                return n(e, t.values)
            }
            if (t.type === 5) {
                if (t.value.length === 3) {
                    var r = t.value.substring(0, 1),
                        A = t.value.substring(1, 2),
                        i = t.value.substring(2, 3);
                    return Yi(parseInt(r + r, 16), parseInt(A + A, 16), parseInt(i + i, 16), 1)
                }
                if (t.value.length === 4) {
                    var r = t.value.substring(0, 1),
                        A = t.value.substring(1, 2),
                        i = t.value.substring(2, 3),
                        s = t.value.substring(3, 4);
                    return Yi(parseInt(r + r, 16), parseInt(A + A, 16), parseInt(i + i, 16), parseInt(s + s, 16) / 255)
                }
                if (t.value.length === 6) {
                    var r = t.value.substring(0, 2),
                        A = t.value.substring(2, 4),
                        i = t.value.substring(4, 6);
                    return Yi(parseInt(r, 16), parseInt(A, 16), parseInt(i, 16), 1)
                }
                if (t.value.length === 8) {
                    var r = t.value.substring(0, 2),
                        A = t.value.substring(2, 4),
                        i = t.value.substring(4, 6),
                        s = t.value.substring(6, 8);
                    return Yi(parseInt(r, 16), parseInt(A, 16), parseInt(i, 16), parseInt(s, 16) / 255)
                }
            }
            if (t.type === 20) {
                var a = ni[t.value.toUpperCase()];
                if (typeof a < "u") return a
            }
            return ni.TRANSPARENT
        }
    },
    es = function(e) {
        return (255 & e) === 0
    },
    Un = function(e) {
        var t = 255 & e,
            n = 255 & e >> 8,
            r = 255 & e >> 16,
            A = 255 & e >> 24;
        return t < 255 ? "rgba(" + A + "," + r + "," + n + "," + t / 255 + ")" : "rgb(" + A + "," + r + "," + n + ")"
    },
    Yi = function(e, t, n, r) {
        return (e << 24 | t << 16 | n << 8 | Math.round(r * 255) << 0) >>> 0
    },
    A7 = function(e, t) {
        if (e.type === 17) return e.number;
        if (e.type === 16) {
            var n = t === 3 ? 1 : 255;
            return t === 3 ? e.number / 100 * n : Math.round(e.number / 100 * n)
        }
        return 0
    },
    i7 = function(e, t) {
        var n = t.filter(vo);
        if (n.length === 3) {
            var r = n.map(A7),
                A = r[0],
                i = r[1],
                s = r[2];
            return Yi(A, i, s, 1)
        }
        if (n.length === 4) {
            var a = n.map(A7),
                A = a[0],
                i = a[1],
                s = a[2],
                o = a[3];
            return Yi(A, i, s, o)
        }
        return 0
    };

function jd(e, t, n) {
    return n < 0 && (n += 1), n >= 1 && (n -= 1), n < 1 / 6 ? (t - e) * n * 6 + e : n < 1 / 2 ? t : n < 2 / 3 ? (t - e) * 6 * (2 / 3 - n) + e : e
}
var s7 = function(e, t) {
        var n = t.filter(vo),
            r = n[0],
            A = n[1],
            i = n[2],
            s = n[3],
            a = (r.type === 17 ? Vr(r.number) : Kf.parse(e, r)) / (Math.PI * 2),
            o = un(A) ? A.number / 100 : 0,
            l = un(i) ? i.number / 100 : 0,
            u = typeof s < "u" && un(s) ? Kt(s, 1) : 1;
        if (o === 0) return Yi(l * 255, l * 255, l * 255, 1);
        var f = l <= .5 ? l * (o + 1) : l + o - l * o,
            d = l * 2 - f,
            p = jd(d, f, a + 1 / 3),
            m = jd(d, f, a),
            g = jd(d, f, a - 1 / 3);
        return Yi(p * 255, m * 255, g * 255, u)
    },
    WJ = {
        hsl: s7,
        hsla: s7,
        rgb: i7,
        rgba: i7
    },
    Ll = function(e, t) {
        return Zi.parse(e, _C.create(t).parseComponentValue())
    },
    ni = {
        ALICEBLUE: 4042850303,
        ANTIQUEWHITE: 4209760255,
        AQUA: 16777215,
        AQUAMARINE: 2147472639,
        AZURE: 4043309055,
        BEIGE: 4126530815,
        BISQUE: 4293182719,
        BLACK: 255,
        BLANCHEDALMOND: 4293643775,
        BLUE: 65535,
        BLUEVIOLET: 2318131967,
        BROWN: 2771004159,
        BURLYWOOD: 3736635391,
        CADETBLUE: 1604231423,
        CHARTREUSE: 2147418367,
        CHOCOLATE: 3530104575,
        CORAL: 4286533887,
        CORNFLOWERBLUE: 1687547391,
        CORNSILK: 4294499583,
        CRIMSON: 3692313855,
        CYAN: 16777215,
        DARKBLUE: 35839,
        DARKCYAN: 9145343,
        DARKGOLDENROD: 3095837695,
        DARKGRAY: 2846468607,
        DARKGREEN: 6553855,
        DARKGREY: 2846468607,
        DARKKHAKI: 3182914559,
        DARKMAGENTA: 2332068863,
        DARKOLIVEGREEN: 1433087999,
        DARKORANGE: 4287365375,
        DARKORCHID: 2570243327,
        DARKRED: 2332033279,
        DARKSALMON: 3918953215,
        DARKSEAGREEN: 2411499519,
        DARKSLATEBLUE: 1211993087,
        DARKSLATEGRAY: 793726975,
        DARKSLATEGREY: 793726975,
        DARKTURQUOISE: 13554175,
        DARKVIOLET: 2483082239,
        DEEPPINK: 4279538687,
        DEEPSKYBLUE: 12582911,
        DIMGRAY: 1768516095,
        DIMGREY: 1768516095,
        DODGERBLUE: 512819199,
        FIREBRICK: 2988581631,
        FLORALWHITE: 4294635775,
        FORESTGREEN: 579543807,
        FUCHSIA: 4278255615,
        GAINSBORO: 3705462015,
        GHOSTWHITE: 4177068031,
        GOLD: 4292280575,
        GOLDENROD: 3668254975,
        GRAY: 2155905279,
        GREEN: 8388863,
        GREENYELLOW: 2919182335,
        GREY: 2155905279,
        HONEYDEW: 4043305215,
        HOTPINK: 4285117695,
        INDIANRED: 3445382399,
        INDIGO: 1258324735,
        IVORY: 4294963455,
        KHAKI: 4041641215,
        LAVENDER: 3873897215,
        LAVENDERBLUSH: 4293981695,
        LAWNGREEN: 2096890111,
        LEMONCHIFFON: 4294626815,
        LIGHTBLUE: 2916673279,
        LIGHTCORAL: 4034953471,
        LIGHTCYAN: 3774873599,
        LIGHTGOLDENRODYELLOW: 4210742015,
        LIGHTGRAY: 3553874943,
        LIGHTGREEN: 2431553791,
        LIGHTGREY: 3553874943,
        LIGHTPINK: 4290167295,
        LIGHTSALMON: 4288707327,
        LIGHTSEAGREEN: 548580095,
        LIGHTSKYBLUE: 2278488831,
        LIGHTSLATEGRAY: 2005441023,
        LIGHTSLATEGREY: 2005441023,
        LIGHTSTEELBLUE: 2965692159,
        LIGHTYELLOW: 4294959359,
        LIME: 16711935,
        LIMEGREEN: 852308735,
        LINEN: 4210091775,
        MAGENTA: 4278255615,
        MAROON: 2147483903,
        MEDIUMAQUAMARINE: 1724754687,
        MEDIUMBLUE: 52735,
        MEDIUMORCHID: 3126187007,
        MEDIUMPURPLE: 2473647103,
        MEDIUMSEAGREEN: 1018393087,
        MEDIUMSLATEBLUE: 2070474495,
        MEDIUMSPRINGGREEN: 16423679,
        MEDIUMTURQUOISE: 1221709055,
        MEDIUMVIOLETRED: 3340076543,
        MIDNIGHTBLUE: 421097727,
        MINTCREAM: 4127193855,
        MISTYROSE: 4293190143,
        MOCCASIN: 4293178879,
        NAVAJOWHITE: 4292783615,
        NAVY: 33023,
        OLDLACE: 4260751103,
        OLIVE: 2155872511,
        OLIVEDRAB: 1804477439,
        ORANGE: 4289003775,
        ORANGERED: 4282712319,
        ORCHID: 3664828159,
        PALEGOLDENROD: 4008225535,
        PALEGREEN: 2566625535,
        PALETURQUOISE: 2951671551,
        PALEVIOLETRED: 3681588223,
        PAPAYAWHIP: 4293907967,
        PEACHPUFF: 4292524543,
        PERU: 3448061951,
        PINK: 4290825215,
        PLUM: 3718307327,
        POWDERBLUE: 2967529215,
        PURPLE: 2147516671,
        REBECCAPURPLE: 1714657791,
        RED: 4278190335,
        ROSYBROWN: 3163525119,
        ROYALBLUE: 1097458175,
        SADDLEBROWN: 2336560127,
        SALMON: 4202722047,
        SANDYBROWN: 4104413439,
        SEAGREEN: 780883967,
        SEASHELL: 4294307583,
        SIENNA: 2689740287,
        SILVER: 3233857791,
        SKYBLUE: 2278484991,
        SLATEBLUE: 1784335871,
        SLATEGRAY: 1887473919,
        SLATEGREY: 1887473919,
        SNOW: 4294638335,
        SPRINGGREEN: 16744447,
        STEELBLUE: 1182971135,
        TAN: 3535047935,
        TEAL: 8421631,
        THISTLE: 3636451583,
        TOMATO: 4284696575,
        TRANSPARENT: 0,
        TURQUOISE: 1088475391,
        VIOLET: 4001558271,
        WHEAT: 4125012991,
        WHITE: 4294967295,
        WHITESMOKE: 4126537215,
        YELLOW: 4294902015,
        YELLOWGREEN: 2597139199
    },
    jJ = {
        name: "background-clip",
        initialValue: "border-box",
        prefix: !1,
        type: 1,
        parse: function(e, t) {
            return t.map(function(n) {
                if (Mt(n)) switch (n.value) {
                    case "padding-box":
                        return 1;
                    case "content-box":
                        return 2
                }
                return 0
            })
        }
    },
    YJ = {
        name: "background-color",
        initialValue: "transparent",
        prefix: !1,
        type: 3,
        format: "color"
    },
    Vf = function(e, t) {
        var n = Zi.parse(e, t[0]),
            r = t[1];
        return r && un(r) ? {
            color: n,
            stop: r
        } : {
            color: n,
            stop: null
        }
    },
    a7 = function(e, t) {
        var n = e[0],
            r = e[e.length - 1];
        n.stop === null && (n.stop = Kn), r.stop === null && (r.stop = ji);
        for (var A = [], i = 0, s = 0; s < e.length; s++) {
            var a = e[s].stop;
            if (a !== null) {
                var o = Kt(a, t);
                o > i ? A.push(o) : A.push(i), i = o
            } else A.push(null)
        }
        for (var l = null, s = 0; s < A.length; s++) {
            var u = A[s];
            if (u === null) l === null && (l = s);
            else if (l !== null) {
                for (var f = s - l, d = A[l - 1], p = (u - d) / (f + 1), m = 1; m <= f; m++) A[l + m - 1] = p * m;
                l = null
            }
        }
        return e.map(function(g, y) {
            var w = g.color;
            return {
                color: w,
                stop: Math.max(Math.min(1, A[y] / t), 0)
            }
        })
    },
    XJ = function(e, t, n) {
        var r = t / 2,
            A = n / 2,
            i = Kt(e[0], t) - r,
            s = A - Kt(e[1], n);
        return (Math.atan2(s, i) + Math.PI * 2) % (Math.PI * 2)
    },
    JJ = function(e, t, n) {
        var r = typeof e == "number" ? e : XJ(e, t, n),
            A = Math.abs(t * Math.sin(r)) + Math.abs(n * Math.cos(r)),
            i = t / 2,
            s = n / 2,
            a = A / 2,
            o = Math.sin(r - Math.PI / 2) * a,
            l = Math.cos(r - Math.PI / 2) * a;
        return [A, i - l, i + l, s - o, s + o]
    },
    Zr = function(e, t) {
        return Math.sqrt(e * e + t * t)
    },
    o7 = function(e, t, n, r, A) {
        var i = [
            [0, 0],
            [0, t],
            [e, 0],
            [e, t]
        ];
        return i.reduce(function(s, a) {
            var o = a[0],
                l = a[1],
                u = Zr(n - o, r - l);
            return (A ? u < s.optimumDistance : u > s.optimumDistance) ? {
                optimumCorner: a,
                optimumDistance: u
            } : s
        }, {
            optimumDistance: A ? 1 / 0 : -1 / 0,
            optimumCorner: null
        }).optimumCorner
    },
    qJ = function(e, t, n, r, A) {
        var i = 0,
            s = 0;
        switch (e.size) {
            case 0:
                e.shape === 0 ? i = s = Math.min(Math.abs(t), Math.abs(t - r), Math.abs(n), Math.abs(n - A)) : e.shape === 1 && (i = Math.min(Math.abs(t), Math.abs(t - r)), s = Math.min(Math.abs(n), Math.abs(n - A)));
                break;
            case 2:
                if (e.shape === 0) i = s = Math.min(Zr(t, n), Zr(t, n - A), Zr(t - r, n), Zr(t - r, n - A));
                else if (e.shape === 1) {
                    var a = Math.min(Math.abs(n), Math.abs(n - A)) / Math.min(Math.abs(t), Math.abs(t - r)),
                        o = o7(r, A, t, n, !0),
                        l = o[0],
                        u = o[1];
                    i = Zr(l - t, (u - n) / a), s = a * i
                }
                break;
            case 1:
                e.shape === 0 ? i = s = Math.max(Math.abs(t), Math.abs(t - r), Math.abs(n), Math.abs(n - A)) : e.shape === 1 && (i = Math.max(Math.abs(t), Math.abs(t - r)), s = Math.max(Math.abs(n), Math.abs(n - A)));
                break;
            case 3:
                if (e.shape === 0) i = s = Math.max(Zr(t, n), Zr(t, n - A), Zr(t - r, n), Zr(t - r, n - A));
                else if (e.shape === 1) {
                    var a = Math.max(Math.abs(n), Math.abs(n - A)) / Math.max(Math.abs(t), Math.abs(t - r)),
                        f = o7(r, A, t, n, !1),
                        l = f[0],
                        u = f[1];
                    i = Zr(l - t, (u - n) / a), s = a * i
                }
                break
        }
        return Array.isArray(e.size) && (i = Kt(e.size[0], r), s = e.size.length === 2 ? Kt(e.size[1], A) : i), [i, s]
    },
    ZJ = function(e, t) {
        var n = Vr(180),
            r = [];
        return QA(t).forEach(function(A, i) {
            if (i === 0) {
                var s = A[0];
                if (s.type === 20 && s.value === "to") {
                    n = OC(A);
                    return
                } else if (PC(s)) {
                    n = Kf.parse(e, s);
                    return
                }
            }
            var a = Vf(e, A);
            r.push(a)
        }), {
            angle: n,
            stops: r,
            type: 1
        }
    },
    Iu = function(e, t) {
        var n = Vr(180),
            r = [];
        return QA(t).forEach(function(A, i) {
            if (i === 0) {
                var s = A[0];
                if (s.type === 20 && ["top", "left", "right", "bottom"].indexOf(s.value) !== -1) {
                    n = OC(A);
                    return
                } else if (PC(s)) {
                    n = (Kf.parse(e, s) + Vr(270)) % Vr(360);
                    return
                }
            }
            var a = Vf(e, A);
            r.push(a)
        }), {
            angle: n,
            stops: r,
            type: 1
        }
    },
    eq = function(e, t) {
        var n = Vr(180),
            r = [],
            A = 1,
            i = 0,
            s = 3,
            a = [];
        return QA(t).forEach(function(o, l) {
            var u = o[0];
            if (l === 0) {
                if (Mt(u) && u.value === "linear") {
                    A = 1;
                    return
                } else if (Mt(u) && u.value === "radial") {
                    A = 2;
                    return
                }
            }
            if (u.type === 18) {
                if (u.name === "from") {
                    var f = Zi.parse(e, u.values[0]);
                    r.push({
                        stop: Kn,
                        color: f
                    })
                } else if (u.name === "to") {
                    var f = Zi.parse(e, u.values[0]);
                    r.push({
                        stop: ji,
                        color: f
                    })
                } else if (u.name === "color-stop") {
                    var d = u.values.filter(vo);
                    if (d.length === 2) {
                        var f = Zi.parse(e, d[1]),
                            p = d[0];
                        Io(p) && r.push({
                            stop: {
                                type: 16,
                                number: p.number * 100,
                                flags: p.flags
                            },
                            color: f
                        })
                    }
                }
            }
        }), A === 1 ? {
            angle: (n + Vr(180)) % Vr(360),
            stops: r,
            type: A
        } : {
            size: s,
            shape: i,
            stops: r,
            position: a,
            type: A
        }
    },
    LC = "closest-side",
    kC = "farthest-side",
    HC = "closest-corner",
    MC = "farthest-corner",
    RC = "circle",
    NC = "ellipse",
    $C = "cover",
    KC = "contain",
    tq = function(e, t) {
        var n = 0,
            r = 3,
            A = [],
            i = [];
        return QA(t).forEach(function(s, a) {
            var o = !0;
            if (a === 0) {
                var l = !1;
                o = s.reduce(function(f, d) {
                    if (l)
                        if (Mt(d)) switch (d.value) {
                            case "center":
                                return i.push(f5), f;
                            case "top":
                            case "left":
                                return i.push(Kn), f;
                            case "right":
                            case "bottom":
                                return i.push(ji), f
                        } else(un(d) || us(d)) && i.push(d);
                        else if (Mt(d)) switch (d.value) {
                        case RC:
                            return n = 0, !1;
                        case NC:
                            return n = 1, !1;
                        case "at":
                            return l = !0, !1;
                        case LC:
                            return r = 0, !1;
                        case $C:
                        case kC:
                            return r = 1, !1;
                        case KC:
                        case HC:
                            return r = 2, !1;
                        case MC:
                            return r = 3, !1
                    } else if (us(d) || un(d)) return Array.isArray(r) || (r = []), r.push(d), !1;
                    return f
                }, o)
            }
            if (o) {
                var u = Vf(e, s);
                A.push(u)
            }
        }), {
            size: r,
            shape: n,
            stops: A,
            position: i,
            type: 2
        }
    },
    Du = function(e, t) {
        var n = 0,
            r = 3,
            A = [],
            i = [];
        return QA(t).forEach(function(s, a) {
            var o = !0;
            if (a === 0 ? o = s.reduce(function(u, f) {
                    if (Mt(f)) switch (f.value) {
                        case "center":
                            return i.push(f5), !1;
                        case "top":
                        case "left":
                            return i.push(Kn), !1;
                        case "right":
                        case "bottom":
                            return i.push(ji), !1
                    } else if (un(f) || us(f)) return i.push(f), !1;
                    return u
                }, o) : a === 1 && (o = s.reduce(function(u, f) {
                    if (Mt(f)) switch (f.value) {
                        case RC:
                            return n = 0, !1;
                        case NC:
                            return n = 1, !1;
                        case KC:
                        case LC:
                            return r = 0, !1;
                        case kC:
                            return r = 1, !1;
                        case HC:
                            return r = 2, !1;
                        case $C:
                        case MC:
                            return r = 3, !1
                    } else if (us(f) || un(f)) return Array.isArray(r) || (r = []), r.push(f), !1;
                    return u
                }, o)), o) {
                var l = Vf(e, s);
                A.push(l)
            }
        }), {
            size: r,
            shape: n,
            stops: A,
            position: i,
            type: 2
        }
    },
    nq = function(e) {
        return e.type === 1
    },
    rq = function(e) {
        return e.type === 2
    },
    d5 = {
        name: "image",
        parse: function(e, t) {
            if (t.type === 22) {
                var n = {
                    url: t.value,
                    type: 0
                };
                return e.cache.addImage(t.value), n
            }
            if (t.type === 18) {
                var r = VC[t.name];
                if (typeof r > "u") throw new Error('Attempting to parse an unsupported image function "' + t.name + '"');
                return r(e, t.values)
            }
            throw new Error("Unsupported image type " + t.type)
        }
    };

function Aq(e) {
    return !(e.type === 20 && e.value === "none") && (e.type !== 18 || !!VC[e.name])
}
var VC = {
        "linear-gradient": ZJ,
        "-moz-linear-gradient": Iu,
        "-ms-linear-gradient": Iu,
        "-o-linear-gradient": Iu,
        "-webkit-linear-gradient": Iu,
        "radial-gradient": tq,
        "-moz-radial-gradient": Du,
        "-ms-radial-gradient": Du,
        "-o-radial-gradient": Du,
        "-webkit-radial-gradient": Du,
        "-webkit-gradient": eq
    },
    iq = {
        name: "background-image",
        initialValue: "none",
        type: 1,
        prefix: !1,
        parse: function(e, t) {
            if (t.length === 0) return [];
            var n = t[0];
            return n.type === 20 && n.value === "none" ? [] : t.filter(function(r) {
                return vo(r) && Aq(r)
            }).map(function(r) {
                return d5.parse(e, r)
            })
        }
    },
    sq = {
        name: "background-origin",
        initialValue: "border-box",
        prefix: !1,
        type: 1,
        parse: function(e, t) {
            return t.map(function(n) {
                if (Mt(n)) switch (n.value) {
                    case "padding-box":
                        return 1;
                    case "content-box":
                        return 2
                }
                return 0
            })
        }
    },
    aq = {
        name: "background-position",
        initialValue: "0% 0%",
        type: 1,
        prefix: !1,
        parse: function(e, t) {
            return QA(t).map(function(n) {
                return n.filter(un)
            }).map(QC)
        }
    },
    oq = {
        name: "background-repeat",
        initialValue: "repeat",
        prefix: !1,
        type: 1,
        parse: function(e, t) {
            return QA(t).map(function(n) {
                return n.filter(Mt).map(function(r) {
                    return r.value
                }).join(" ")
            }).map(lq)
        }
    },
    lq = function(e) {
        switch (e) {
            case "no-repeat":
                return 1;
            case "repeat-x":
            case "repeat no-repeat":
                return 2;
            case "repeat-y":
            case "no-repeat repeat":
                return 3;
            case "repeat":
            default:
                return 0
        }
    },
    Ja;
(function(e) {
    e.AUTO = "auto", e.CONTAIN = "contain", e.COVER = "cover"
})(Ja || (Ja = {}));
var uq = {
        name: "background-size",
        initialValue: "0",
        prefix: !1,
        type: 1,
        parse: function(e, t) {
            return QA(t).map(function(n) {
                return n.filter(cq)
            })
        }
    },
    cq = function(e) {
        return Mt(e) || un(e)
    },
    Gf = function(e) {
        return {
            name: "border-" + e + "-color",
            initialValue: "transparent",
            prefix: !1,
            type: 3,
            format: "color"
        }
    },
    fq = Gf("top"),
    dq = Gf("right"),
    hq = Gf("bottom"),
    pq = Gf("left"),
    zf = function(e) {
        return {
            name: "border-radius-" + e,
            initialValue: "0 0",
            prefix: !1,
            type: 1,
            parse: function(t, n) {
                return QC(n.filter(un))
            }
        }
    },
    gq = zf("top-left"),
    vq = zf("top-right"),
    mq = zf("bottom-right"),
    Bq = zf("bottom-left"),
    Wf = function(e) {
        return {
            name: "border-" + e + "-style",
            initialValue: "solid",
            prefix: !1,
            type: 2,
            parse: function(t, n) {
                switch (n) {
                    case "none":
                        return 0;
                    case "dashed":
                        return 2;
                    case "dotted":
                        return 3;
                    case "double":
                        return 4
                }
                return 1
            }
        }
    },
    wq = Wf("top"),
    yq = Wf("right"),
    Cq = Wf("bottom"),
    xq = Wf("left"),
    jf = function(e) {
        return {
            name: "border-" + e + "-width",
            initialValue: "0",
            type: 0,
            prefix: !1,
            parse: function(t, n) {
                return T0(n) ? n.number : 0
            }
        }
    },
    Eq = jf("top"),
    bq = jf("right"),
    Fq = jf("bottom"),
    _q = jf("left"),
    Sq = {
        name: "color",
        initialValue: "transparent",
        prefix: !1,
        type: 3,
        format: "color"
    },
    Qq = {
        name: "direction",
        initialValue: "ltr",
        prefix: !1,
        type: 2,
        parse: function(e, t) {
            switch (t) {
                case "rtl":
                    return 1;
                case "ltr":
                default:
                    return 0
            }
        }
    },
    Uq = {
        name: "display",
        initialValue: "inline-block",
        prefix: !1,
        type: 1,
        parse: function(e, t) {
            return t.filter(Mt).reduce(function(n, r) {
                return n | Tq(r.value)
            }, 0)
        }
    },
    Tq = function(e) {
        switch (e) {
            case "block":
            case "-webkit-box":
                return 2;
            case "inline":
                return 4;
            case "run-in":
                return 8;
            case "flow":
                return 16;
            case "flow-root":
                return 32;
            case "table":
                return 64;
            case "flex":
            case "-webkit-flex":
                return 128;
            case "grid":
            case "-ms-grid":
                return 256;
            case "ruby":
                return 512;
            case "subgrid":
                return 1024;
            case "list-item":
                return 2048;
            case "table-row-group":
                return 4096;
            case "table-header-group":
                return 8192;
            case "table-footer-group":
                return 16384;
            case "table-row":
                return 32768;
            case "table-cell":
                return 65536;
            case "table-column-group":
                return 131072;
            case "table-column":
                return 262144;
            case "table-caption":
                return 524288;
            case "ruby-base":
                return 1048576;
            case "ruby-text":
                return 2097152;
            case "ruby-base-container":
                return 4194304;
            case "ruby-text-container":
                return 8388608;
            case "contents":
                return 16777216;
            case "inline-block":
                return 33554432;
            case "inline-list-item":
                return 67108864;
            case "inline-table":
                return 134217728;
            case "inline-flex":
                return 268435456;
            case "inline-grid":
                return 536870912
        }
        return 0
    },
    Iq = {
        name: "float",
        initialValue: "none",
        prefix: !1,
        type: 2,
        parse: function(e, t) {
            switch (t) {
                case "left":
                    return 1;
                case "right":
                    return 2;
                case "inline-start":
                    return 3;
                case "inline-end":
                    return 4
            }
            return 0
        }
    },
    Dq = {
        name: "letter-spacing",
        initialValue: "0",
        prefix: !1,
        type: 0,
        parse: function(e, t) {
            return t.type === 20 && t.value === "normal" ? 0 : t.type === 17 || t.type === 15 ? t.number : 0
        }
    },
    Ec;
(function(e) {
    e.NORMAL = "normal", e.STRICT = "strict"
})(Ec || (Ec = {}));
var Pq = {
        name: "line-break",
        initialValue: "normal",
        prefix: !1,
        type: 2,
        parse: function(e, t) {
            switch (t) {
                case "strict":
                    return Ec.STRICT;
                case "normal":
                default:
                    return Ec.NORMAL
            }
        }
    },
    Oq = {
        name: "line-height",
        initialValue: "normal",
        prefix: !1,
        type: 4
    },
    l7 = function(e, t) {
        return Mt(e) && e.value === "normal" ? 1.2 * t : e.type === 17 ? t * e.number : un(e) ? Kt(e, t) : t
    },
    Lq = {
        name: "list-style-image",
        initialValue: "none",
        type: 0,
        prefix: !1,
        parse: function(e, t) {
            return t.type === 20 && t.value === "none" ? null : d5.parse(e, t)
        }
    },
    kq = {
        name: "list-style-position",
        initialValue: "outside",
        prefix: !1,
        type: 2,
        parse: function(e, t) {
            switch (t) {
                case "inside":
                    return 0;
                case "outside":
                default:
                    return 1
            }
        }
    },
    Mh = {
        name: "list-style-type",
        initialValue: "none",
        prefix: !1,
        type: 2,
        parse: function(e, t) {
            switch (t) {
                case "disc":
                    return 0;
                case "circle":
                    return 1;
                case "square":
                    return 2;
                case "decimal":
                    return 3;
                case "cjk-decimal":
                    return 4;
                case "decimal-leading-zero":
                    return 5;
                case "lower-roman":
                    return 6;
                case "upper-roman":
                    return 7;
                case "lower-greek":
                    return 8;
                case "lower-alpha":
                    return 9;
                case "upper-alpha":
                    return 10;
                case "arabic-indic":
                    return 11;
                case "armenian":
                    return 12;
                case "bengali":
                    return 13;
                case "cambodian":
                    return 14;
                case "cjk-earthly-branch":
                    return 15;
                case "cjk-heavenly-stem":
                    return 16;
                case "cjk-ideographic":
                    return 17;
                case "devanagari":
                    return 18;
                case "ethiopic-numeric":
                    return 19;
                case "georgian":
                    return 20;
                case "gujarati":
                    return 21;
                case "gurmukhi":
                    return 22;
                case "hebrew":
                    return 22;
                case "hiragana":
                    return 23;
                case "hiragana-iroha":
                    return 24;
                case "japanese-formal":
                    return 25;
                case "japanese-informal":
                    return 26;
                case "kannada":
                    return 27;
                case "katakana":
                    return 28;
                case "katakana-iroha":
                    return 29;
                case "khmer":
                    return 30;
                case "korean-hangul-formal":
                    return 31;
                case "korean-hanja-formal":
                    return 32;
                case "korean-hanja-informal":
                    return 33;
                case "lao":
                    return 34;
                case "lower-armenian":
                    return 35;
                case "malayalam":
                    return 36;
                case "mongolian":
                    return 37;
                case "myanmar":
                    return 38;
                case "oriya":
                    return 39;
                case "persian":
                    return 40;
                case "simp-chinese-formal":
                    return 41;
                case "simp-chinese-informal":
                    return 42;
                case "tamil":
                    return 43;
                case "telugu":
                    return 44;
                case "thai":
                    return 45;
                case "tibetan":
                    return 46;
                case "trad-chinese-formal":
                    return 47;
                case "trad-chinese-informal":
                    return 48;
                case "upper-armenian":
                    return 49;
                case "disclosure-open":
                    return 50;
                case "disclosure-closed":
                    return 51;
                case "none":
                default:
                    return -1
            }
        }
    },
    Yf = function(e) {
        return {
            name: "margin-" + e,
            initialValue: "0",
            prefix: !1,
            type: 4
        }
    },
    Hq = Yf("top"),
    Mq = Yf("right"),
    Rq = Yf("bottom"),
    Nq = Yf("left"),
    $q = {
        name: "overflow",
        initialValue: "visible",
        prefix: !1,
        type: 1,
        parse: function(e, t) {
            return t.filter(Mt).map(function(n) {
                switch (n.value) {
                    case "hidden":
                        return 1;
                    case "scroll":
                        return 2;
                    case "clip":
                        return 3;
                    case "auto":
                        return 4;
                    case "visible":
                    default:
                        return 0
                }
            })
        }
    },
    Kq = {
        name: "overflow-wrap",
        initialValue: "normal",
        prefix: !1,
        type: 2,
        parse: function(e, t) {
            switch (t) {
                case "break-word":
                    return "break-word";
                case "normal":
                default:
                    return "normal"
            }
        }
    },
    Xf = function(e) {
        return {
            name: "padding-" + e,
            initialValue: "0",
            prefix: !1,
            type: 3,
            format: "length-percentage"
        }
    },
    Vq = Xf("top"),
    Gq = Xf("right"),
    zq = Xf("bottom"),
    Wq = Xf("left"),
    jq = {
        name: "text-align",
        initialValue: "left",
        prefix: !1,
        type: 2,
        parse: function(e, t) {
            switch (t) {
                case "right":
                    return 2;
                case "center":
                case "justify":
                    return 1;
                case "left":
                default:
                    return 0
            }
        }
    },
    Yq = {
        name: "position",
        initialValue: "static",
        prefix: !1,
        type: 2,
        parse: function(e, t) {
            switch (t) {
                case "relative":
                    return 1;
                case "absolute":
                    return 2;
                case "fixed":
                    return 3;
                case "sticky":
                    return 4
            }
            return 0
        }
    },
    Xq = {
        name: "text-shadow",
        initialValue: "none",
        type: 1,
        prefix: !1,
        parse: function(e, t) {
            return t.length === 1 && Hh(t[0], "none") ? [] : QA(t).map(function(n) {
                for (var r = {
                        color: ni.TRANSPARENT,
                        offsetX: Kn,
                        offsetY: Kn,
                        blur: Kn
                    }, A = 0, i = 0; i < n.length; i++) {
                    var s = n[i];
                    us(s) ? (A === 0 ? r.offsetX = s : A === 1 ? r.offsetY = s : r.blur = s, A++) : r.color = Zi.parse(e, s)
                }
                return r
            })
        }
    },
    Jq = {
        name: "text-transform",
        initialValue: "none",
        prefix: !1,
        type: 2,
        parse: function(e, t) {
            switch (t) {
                case "uppercase":
                    return 2;
                case "lowercase":
                    return 1;
                case "capitalize":
                    return 3
            }
            return 0
        }
    },
    qq = {
        name: "transform",
        initialValue: "none",
        prefix: !0,
        type: 0,
        parse: function(e, t) {
            if (t.type === 20 && t.value === "none") return null;
            if (t.type === 18) {
                var n = tZ[t.name];
                if (typeof n > "u") throw new Error('Attempting to parse an unsupported transform function "' + t.name + '"');
                return n(t.values)
            }
            return null
        }
    },
    Zq = function(e) {
        var t = e.filter(function(n) {
            return n.type === 17
        }).map(function(n) {
            return n.number
        });
        return t.length === 6 ? t : null
    },
    eZ = function(e) {
        var t = e.filter(function(o) {
                return o.type === 17
            }).map(function(o) {
                return o.number
            }),
            n = t[0],
            r = t[1];
        t[2], t[3];
        var A = t[4],
            i = t[5];
        t[6], t[7], t[8], t[9], t[10], t[11];
        var s = t[12],
            a = t[13];
        return t[14], t[15], t.length === 16 ? [n, r, A, i, s, a] : null
    },
    tZ = {
        matrix: Zq,
        matrix3d: eZ
    },
    u7 = {
        type: 16,
        number: 50,
        flags: U0
    },
    nZ = [u7, u7],
    rZ = {
        name: "transform-origin",
        initialValue: "50% 50%",
        prefix: !0,
        type: 1,
        parse: function(e, t) {
            var n = t.filter(un);
            return n.length !== 2 ? nZ : [n[0], n[1]]
        }
    },
    AZ = {
        name: "visible",
        initialValue: "none",
        prefix: !1,
        type: 2,
        parse: function(e, t) {
            switch (t) {
                case "hidden":
                    return 1;
                case "collapse":
                    return 2;
                case "visible":
                default:
                    return 0
            }
        }
    },
    kl;
(function(e) {
    e.NORMAL = "normal", e.BREAK_ALL = "break-all", e.KEEP_ALL = "keep-all"
})(kl || (kl = {}));
var iZ = {
        name: "word-break",
        initialValue: "normal",
        prefix: !1,
        type: 2,
        parse: function(e, t) {
            switch (t) {
                case "break-all":
                    return kl.BREAK_ALL;
                case "keep-all":
                    return kl.KEEP_ALL;
                case "normal":
                default:
                    return kl.NORMAL
            }
        }
    },
    sZ = {
        name: "z-index",
        initialValue: "auto",
        prefix: !1,
        type: 0,
        parse: function(e, t) {
            if (t.type === 20) return {
                auto: !0,
                order: 0
            };
            if (Io(t)) return {
                auto: !1,
                order: t.number
            };
            throw new Error("Invalid z-index number parsed")
        }
    },
    GC = {
        name: "time",
        parse: function(e, t) {
            if (t.type === 15) switch (t.unit.toLowerCase()) {
                case "s":
                    return 1e3 * t.number;
                case "ms":
                    return t.number
            }
            throw new Error("Unsupported time type")
        }
    },
    aZ = {
        name: "opacity",
        initialValue: "1",
        type: 0,
        prefix: !1,
        parse: function(e, t) {
            return Io(t) ? t.number : 1
        }
    },
    oZ = {
        name: "text-decoration-color",
        initialValue: "transparent",
        prefix: !1,
        type: 3,
        format: "color"
    },
    lZ = {
        name: "text-decoration-line",
        initialValue: "none",
        prefix: !1,
        type: 1,
        parse: function(e, t) {
            return t.filter(Mt).map(function(n) {
                switch (n.value) {
                    case "underline":
                        return 1;
                    case "overline":
                        return 2;
                    case "line-through":
                        return 3;
                    case "none":
                        return 4
                }
                return 0
            }).filter(function(n) {
                return n !== 0
            })
        }
    },
    uZ = {
        name: "font-family",
        initialValue: "",
        prefix: !1,
        type: 1,
        parse: function(e, t) {
            var n = [],
                r = [];
            return t.forEach(function(A) {
                switch (A.type) {
                    case 20:
                    case 0:
                        n.push(A.value);
                        break;
                    case 17:
                        n.push(A.number.toString());
                        break;
                    case 4:
                        r.push(n.join(" ")), n.length = 0;
                        break
                }
            }), n.length && r.push(n.join(" ")), r.map(function(A) {
                return A.indexOf(" ") === -1 ? A : "'" + A + "'"
            })
        }
    },
    cZ = {
        name: "font-size",
        initialValue: "0",
        prefix: !1,
        type: 3,
        format: "length"
    },
    fZ = {
        name: "font-weight",
        initialValue: "normal",
        type: 0,
        prefix: !1,
        parse: function(e, t) {
            if (Io(t)) return t.number;
            if (Mt(t)) switch (t.value) {
                case "bold":
                    return 700;
                case "normal":
                default:
                    return 400
            }
            return 400
        }
    },
    dZ = {
        name: "font-variant",
        initialValue: "none",
        type: 1,
        prefix: !1,
        parse: function(e, t) {
            return t.filter(Mt).map(function(n) {
                return n.value
            })
        }
    },
    hZ = {
        name: "font-style",
        initialValue: "normal",
        prefix: !1,
        type: 2,
        parse: function(e, t) {
            switch (t) {
                case "oblique":
                    return "oblique";
                case "italic":
                    return "italic";
                case "normal":
                default:
                    return "normal"
            }
        }
    },
    wn = function(e, t) {
        return (e & t) !== 0
    },
    pZ = {
        name: "content",
        initialValue: "none",
        type: 1,
        prefix: !1,
        parse: function(e, t) {
            if (t.length === 0) return [];
            var n = t[0];
            return n.type === 20 && n.value === "none" ? [] : t
        }
    },
    gZ = {
        name: "counter-increment",
        initialValue: "none",
        prefix: !0,
        type: 1,
        parse: function(e, t) {
            if (t.length === 0) return null;
            var n = t[0];
            if (n.type === 20 && n.value === "none") return null;
            for (var r = [], A = t.filter(SC), i = 0; i < A.length; i++) {
                var s = A[i],
                    a = A[i + 1];
                if (s.type === 20) {
                    var o = a && Io(a) ? a.number : 1;
                    r.push({
                        counter: s.value,
                        increment: o
                    })
                }
            }
            return r
        }
    },
    vZ = {
        name: "counter-reset",
        initialValue: "none",
        prefix: !0,
        type: 1,
        parse: function(e, t) {
            if (t.length === 0) return [];
            for (var n = [], r = t.filter(SC), A = 0; A < r.length; A++) {
                var i = r[A],
                    s = r[A + 1];
                if (Mt(i) && i.value !== "none") {
                    var a = s && Io(s) ? s.number : 0;
                    n.push({
                        counter: i.value,
                        reset: a
                    })
                }
            }
            return n
        }
    },
    mZ = {
        name: "duration",
        initialValue: "0s",
        prefix: !1,
        type: 1,
        parse: function(e, t) {
            return t.filter(T0).map(function(n) {
                return GC.parse(e, n)
            })
        }
    },
    BZ = {
        name: "quotes",
        initialValue: "none",
        prefix: !0,
        type: 1,
        parse: function(e, t) {
            if (t.length === 0) return null;
            var n = t[0];
            if (n.type === 20 && n.value === "none") return null;
            var r = [],
                A = t.filter(GJ);
            if (A.length % 2 !== 0) return null;
            for (var i = 0; i < A.length; i += 2) {
                var s = A[i].value,
                    a = A[i + 1].value;
                r.push({
                    open: s,
                    close: a
                })
            }
            return r
        }
    },
    c7 = function(e, t, n) {
        if (!e) return "";
        var r = e[Math.min(t, e.length - 1)];
        return r ? n ? r.open : r.close : ""
    },
    wZ = {
        name: "box-shadow",
        initialValue: "none",
        type: 1,
        prefix: !1,
        parse: function(e, t) {
            return t.length === 1 && Hh(t[0], "none") ? [] : QA(t).map(function(n) {
                for (var r = {
                        color: 255,
                        offsetX: Kn,
                        offsetY: Kn,
                        blur: Kn,
                        spread: Kn,
                        inset: !1
                    }, A = 0, i = 0; i < n.length; i++) {
                    var s = n[i];
                    Hh(s, "inset") ? r.inset = !0 : us(s) ? (A === 0 ? r.offsetX = s : A === 1 ? r.offsetY = s : A === 2 ? r.blur = s : r.spread = s, A++) : r.color = Zi.parse(e, s)
                }
                return r
            })
        }
    },
    yZ = {
        name: "paint-order",
        initialValue: "normal",
        prefix: !1,
        type: 1,
        parse: function(e, t) {
            var n = [0, 1, 2],
                r = [];
            return t.filter(Mt).forEach(function(A) {
                switch (A.value) {
                    case "stroke":
                        r.push(1);
                        break;
                    case "fill":
                        r.push(0);
                        break;
                    case "markers":
                        r.push(2);
                        break
                }
            }), n.forEach(function(A) {
                r.indexOf(A) === -1 && r.push(A)
            }), r
        }
    },
    CZ = {
        name: "-webkit-text-stroke-color",
        initialValue: "currentcolor",
        prefix: !1,
        type: 3,
        format: "color"
    },
    xZ = {
        name: "-webkit-text-stroke-width",
        initialValue: "0",
        type: 0,
        prefix: !1,
        parse: function(e, t) {
            return T0(t) ? t.number : 0
        }
    },
    EZ = function() {
        function e(t, n) {
            var r, A;
            this.animationDuration = qe(t, mZ, n.animationDuration), this.backgroundClip = qe(t, jJ, n.backgroundClip), this.backgroundColor = qe(t, YJ, n.backgroundColor), this.backgroundImage = qe(t, iq, n.backgroundImage), this.backgroundOrigin = qe(t, sq, n.backgroundOrigin), this.backgroundPosition = qe(t, aq, n.backgroundPosition), this.backgroundRepeat = qe(t, oq, n.backgroundRepeat), this.backgroundSize = qe(t, uq, n.backgroundSize), this.borderTopColor = qe(t, fq, n.borderTopColor), this.borderRightColor = qe(t, dq, n.borderRightColor), this.borderBottomColor = qe(t, hq, n.borderBottomColor), this.borderLeftColor = qe(t, pq, n.borderLeftColor), this.borderTopLeftRadius = qe(t, gq, n.borderTopLeftRadius), this.borderTopRightRadius = qe(t, vq, n.borderTopRightRadius), this.borderBottomRightRadius = qe(t, mq, n.borderBottomRightRadius), this.borderBottomLeftRadius = qe(t, Bq, n.borderBottomLeftRadius), this.borderTopStyle = qe(t, wq, n.borderTopStyle), this.borderRightStyle = qe(t, yq, n.borderRightStyle), this.borderBottomStyle = qe(t, Cq, n.borderBottomStyle), this.borderLeftStyle = qe(t, xq, n.borderLeftStyle), this.borderTopWidth = qe(t, Eq, n.borderTopWidth), this.borderRightWidth = qe(t, bq, n.borderRightWidth), this.borderBottomWidth = qe(t, Fq, n.borderBottomWidth), this.borderLeftWidth = qe(t, _q, n.borderLeftWidth), this.boxShadow = qe(t, wZ, n.boxShadow), this.color = qe(t, Sq, n.color), this.direction = qe(t, Qq, n.direction), this.display = qe(t, Uq, n.display), this.float = qe(t, Iq, n.cssFloat), this.fontFamily = qe(t, uZ, n.fontFamily), this.fontSize = qe(t, cZ, n.fontSize), this.fontStyle = qe(t, hZ, n.fontStyle), this.fontVariant = qe(t, dZ, n.fontVariant), this.fontWeight = qe(t, fZ, n.fontWeight), this.letterSpacing = qe(t, Dq, n.letterSpacing), this.lineBreak = qe(t, Pq, n.lineBreak), this.lineHeight = qe(t, Oq, n.lineHeight), this.listStyleImage = qe(t, Lq, n.listStyleImage), this.listStylePosition = qe(t, kq, n.listStylePosition), this.listStyleType = qe(t, Mh, n.listStyleType), this.marginTop = qe(t, Hq, n.marginTop), this.marginRight = qe(t, Mq, n.marginRight), this.marginBottom = qe(t, Rq, n.marginBottom), this.marginLeft = qe(t, Nq, n.marginLeft), this.opacity = qe(t, aZ, n.opacity);
            var i = qe(t, $q, n.overflow);
            this.overflowX = i[0], this.overflowY = i[i.length > 1 ? 1 : 0], this.overflowWrap = qe(t, Kq, n.overflowWrap), this.paddingTop = qe(t, Vq, n.paddingTop), this.paddingRight = qe(t, Gq, n.paddingRight), this.paddingBottom = qe(t, zq, n.paddingBottom), this.paddingLeft = qe(t, Wq, n.paddingLeft), this.paintOrder = qe(t, yZ, n.paintOrder), this.position = qe(t, Yq, n.position), this.textAlign = qe(t, jq, n.textAlign), this.textDecorationColor = qe(t, oZ, (r = n.textDecorationColor) !== null && r !== void 0 ? r : n.color), this.textDecorationLine = qe(t, lZ, (A = n.textDecorationLine) !== null && A !== void 0 ? A : n.textDecoration), this.textShadow = qe(t, Xq, n.textShadow), this.textTransform = qe(t, Jq, n.textTransform), this.transform = qe(t, qq, n.transform), this.transformOrigin = qe(t, rZ, n.transformOrigin), this.visibility = qe(t, AZ, n.visibility), this.webkitTextStrokeColor = qe(t, CZ, n.webkitTextStrokeColor), this.webkitTextStrokeWidth = qe(t, xZ, n.webkitTextStrokeWidth), this.wordBreak = qe(t, iZ, n.wordBreak), this.zIndex = qe(t, sZ, n.zIndex)
        }
        return e.prototype.isVisible = function() {
            return this.display > 0 && this.opacity > 0 && this.visibility === 0
        }, e.prototype.isTransparent = function() {
            return es(this.backgroundColor)
        }, e.prototype.isTransformed = function() {
            return this.transform !== null
        }, e.prototype.isPositioned = function() {
            return this.position !== 0
        }, e.prototype.isPositionedWithZIndex = function() {
            return this.isPositioned() && !this.zIndex.auto
        }, e.prototype.isFloating = function() {
            return this.float !== 0
        }, e.prototype.isInlineLevel = function() {
            return wn(this.display, 4) || wn(this.display, 33554432) || wn(this.display, 268435456) || wn(this.display, 536870912) || wn(this.display, 67108864) || wn(this.display, 134217728)
        }, e
    }(),
    bZ = function() {
        function e(t, n) {
            this.content = qe(t, pZ, n.content), this.quotes = qe(t, BZ, n.quotes)
        }
        return e
    }(),
    f7 = function() {
        function e(t, n) {
            this.counterIncrement = qe(t, gZ, n.counterIncrement), this.counterReset = qe(t, vZ, n.counterReset)
        }
        return e
    }(),
    qe = function(e, t, n) {
        var r = new FC,
            A = n !== null && typeof n < "u" ? n.toString() : t.initialValue;
        r.write(A);
        var i = new _C(r.read());
        switch (t.type) {
            case 2:
                var s = i.parseComponentValue();
                return t.parse(e, Mt(s) ? s.value : t.initialValue);
            case 0:
                return t.parse(e, i.parseComponentValue());
            case 1:
                return t.parse(e, i.parseComponentValues());
            case 4:
                return i.parseComponentValue();
            case 3:
                switch (t.format) {
                    case "angle":
                        return Kf.parse(e, i.parseComponentValue());
                    case "color":
                        return Zi.parse(e, i.parseComponentValue());
                    case "image":
                        return d5.parse(e, i.parseComponentValue());
                    case "length":
                        var a = i.parseComponentValue();
                        return us(a) ? a : Kn;
                    case "length-percentage":
                        var o = i.parseComponentValue();
                        return un(o) ? o : Kn;
                    case "time":
                        return GC.parse(e, i.parseComponentValue())
                }
                break
        }
    },
    FZ = "data-html2canvas-debug",
    _Z = function(e) {
        var t = e.getAttribute(FZ);
        switch (t) {
            case "all":
                return 1;
            case "clone":
                return 2;
            case "parse":
                return 3;
            case "render":
                return 4;
            default:
                return 0
        }
    },
    Rh = function(e, t) {
        var n = _Z(e);
        return n === 1 || t === n
    },
    UA = function() {
        function e(t, n) {
            if (this.context = t, this.textNodes = [], this.elements = [], this.flags = 0, Rh(n, 3)) debugger;
            this.styles = new EZ(t, window.getComputedStyle(n, null)), Kh(n) && (this.styles.animationDuration.some(function(r) {
                return r > 0
            }) && (n.style.animationDuration = "0s"), this.styles.transform !== null && (n.style.transform = "none")), this.bounds = Nf(this.context, n), Rh(n, 4) && (this.flags |= 16)
        }
        return e
    }(),
    SZ = " ",
    d7 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",
    vl = typeof Uint8Array > "u" ? [] : new Uint8Array(256);
for (var Pu = 0; Pu < d7.length; Pu++) vl[d7.charCodeAt(Pu)] = Pu;
var QZ = function(e) {
        var t = e.length * .75,
            n = e.length,
            r, A = 0,
            i, s, a, o;
        e[e.length - 1] === "=" && (t--, e[e.length - 2] === "=" && t--);
        var l = typeof ArrayBuffer < "u" && typeof Uint8Array < "u" && typeof Uint8Array.prototype.slice < "u" ? new ArrayBuffer(t) : new Array(t),
            u = Array.isArray(l) ? l : new Uint8Array(l);
        for (r = 0; r < n; r += 4) i = vl[e.charCodeAt(r)], s = vl[e.charCodeAt(r + 1)], a = vl[e.charCodeAt(r + 2)], o = vl[e.charCodeAt(r + 3)], u[A++] = i << 2 | s >> 4, u[A++] = (s & 15) << 4 | a >> 2, u[A++] = (a & 3) << 6 | o & 63;
        return l
    },
    UZ = function(e) {
        for (var t = e.length, n = [], r = 0; r < t; r += 2) n.push(e[r + 1] << 8 | e[r]);
        return n
    },
    TZ = function(e) {
        for (var t = e.length, n = [], r = 0; r < t; r += 4) n.push(e[r + 3] << 24 | e[r + 2] << 16 | e[r + 1] << 8 | e[r]);
        return n
    },
    Xs = 5,
    h5 = 6 + 5,
    Yd = 2,
    IZ = h5 - Xs,
    zC = 65536 >> Xs,
    DZ = 1 << Xs,
    Xd = DZ - 1,
    PZ = 1024 >> Xs,
    OZ = zC + PZ,
    LZ = OZ,
    kZ = 32,
    HZ = LZ + kZ,
    MZ = 65536 >> h5,
    RZ = 1 << IZ,
    NZ = RZ - 1,
    h7 = function(e, t, n) {
        return e.slice ? e.slice(t, n) : new Uint16Array(Array.prototype.slice.call(e, t, n))
    },
    $Z = function(e, t, n) {
        return e.slice ? e.slice(t, n) : new Uint32Array(Array.prototype.slice.call(e, t, n))
    },
    KZ = function(e, t) {
        var n = QZ(e),
            r = Array.isArray(n) ? TZ(n) : new Uint32Array(n),
            A = Array.isArray(n) ? UZ(n) : new Uint16Array(n),
            i = 24,
            s = h7(A, i / 2, r[4] / 2),
            a = r[5] === 2 ? h7(A, (i + r[4]) / 2) : $Z(r, Math.ceil((i + r[4]) / 4));
        return new VZ(r[0], r[1], r[2], r[3], s, a)
    },
    VZ = function() {
        function e(t, n, r, A, i, s) {
            this.initialValue = t, this.errorValue = n, this.highStart = r, this.highValueIndex = A, this.index = i, this.data = s
        }
        return e.prototype.get = function(t) {
            var n;
            if (t >= 0) {
                if (t < 55296 || t > 56319 && t <= 65535) return n = this.index[t >> Xs], n = (n << Yd) + (t & Xd), this.data[n];
                if (t <= 65535) return n = this.index[zC + (t - 55296 >> Xs)], n = (n << Yd) + (t & Xd), this.data[n];
                if (t < this.highStart) return n = HZ - MZ + (t >> h5), n = this.index[n], n += t >> Xs & NZ, n = this.index[n], n = (n << Yd) + (t & Xd), this.data[n];
                if (t <= 1114111) return this.data[this.highValueIndex]
            }
            return this.errorValue
        }, e
    }(),
    p7 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",
    GZ = typeof Uint8Array > "u" ? [] : new Uint8Array(256);
for (var Ou = 0; Ou < p7.length; Ou++) GZ[p7.charCodeAt(Ou)] = Ou;
var zZ = 1,
    Jd = 2,
    qd = 3,
    g7 = 4,
    v7 = 5,
    WZ = 7,
    m7 = 8,
    Zd = 9,
    e2 = 10,
    B7 = 11,
    w7 = 12,
    y7 = 13,
    C7 = 14,
    t2 = 15,
    jZ = function(e) {
        for (var t = [], n = 0, r = e.length; n < r;) {
            var A = e.charCodeAt(n++);
            if (A >= 55296 && A <= 56319 && n < r) {
                var i = e.charCodeAt(n++);
                (i & 64512) === 56320 ? t.push(((A & 1023) << 10) + (i & 1023) + 65536) : (t.push(A), n--)
            } else t.push(A)
        }
        return t
    },
    YZ = function() {
        for (var e = [], t = 0; t < arguments.length; t++) e[t] = arguments[t];
        if (String.fromCodePoint) return String.fromCodePoint.apply(String, e);
        var n = e.length;
        if (!n) return "";
        for (var r = [], A = -1, i = ""; ++A < n;) {
            var s = e[A];
            s <= 65535 ? r.push(s) : (s -= 65536, r.push((s >> 10) + 55296, s % 1024 + 56320)), (A + 1 === n || r.length > 16384) && (i += String.fromCharCode.apply(String, r), r.length = 0)
        }
        return i
    },
    XZ = KZ(SZ),
    $r = "×",
    n2 = "÷",
    JZ = function(e) {
        return XZ.get(e)
    },
    qZ = function(e, t, n) {
        var r = n - 2,
            A = t[r],
            i = t[n - 1],
            s = t[n];
        if (i === Jd && s === qd) return $r;
        if (i === Jd || i === qd || i === g7 || s === Jd || s === qd || s === g7) return n2;
        if (i === m7 && [m7, Zd, B7, w7].indexOf(s) !== -1 || (i === B7 || i === Zd) && (s === Zd || s === e2) || (i === w7 || i === e2) && s === e2 || s === y7 || s === v7 || s === WZ || i === zZ) return $r;
        if (i === y7 && s === C7) {
            for (; A === v7;) A = t[--r];
            if (A === C7) return $r
        }
        if (i === t2 && s === t2) {
            for (var a = 0; A === t2;) a++, A = t[--r];
            if (a % 2 === 0) return $r
        }
        return n2
    },
    ZZ = function(e) {
        var t = jZ(e),
            n = t.length,
            r = 0,
            A = 0,
            i = t.map(JZ);
        return {
            next: function() {
                if (r >= n) return {
                    done: !0,
                    value: null
                };
                for (var s = $r; r < n && (s = qZ(t, i, ++r)) === $r;);
                if (s !== $r || r === n) {
                    var a = YZ.apply(null, t.slice(A, r));
                    return A = r, {
                        value: a,
                        done: !1
                    }
                }
                return {
                    done: !0,
                    value: null
                }
            }
        }
    },
    eee = function(e) {
        for (var t = ZZ(e), n = [], r; !(r = t.next()).done;) r.value && n.push(r.value.slice());
        return n
    },
    tee = function(e) {
        var t = 123;
        if (e.createRange) {
            var n = e.createRange();
            if (n.getBoundingClientRect) {
                var r = e.createElement("boundtest");
                r.style.height = t + "px", r.style.display = "block", e.body.appendChild(r), n.selectNode(r);
                var A = n.getBoundingClientRect(),
                    i = Math.round(A.height);
                if (e.body.removeChild(r), i === t) return !0
            }
        }
        return !1
    },
    nee = function(e) {
        var t = e.createElement("boundtest");
        t.style.width = "50px", t.style.display = "block", t.style.fontSize = "12px", t.style.letterSpacing = "0px", t.style.wordSpacing = "0px", e.body.appendChild(t);
        var n = e.createRange();
        t.innerHTML = typeof "".repeat == "function" ? "&#128104;".repeat(10) : "";
        var r = t.firstChild,
            A = $f(r.data).map(function(o) {
                return nn(o)
            }),
            i = 0,
            s = {},
            a = A.every(function(o, l) {
                n.setStart(r, i), n.setEnd(r, i + o.length);
                var u = n.getBoundingClientRect();
                i += o.length;
                var f = u.x > s.x || u.y > s.y;
                return s = u, l === 0 ? !0 : f
            });
        return e.body.removeChild(t), a
    },
    ree = function() {
        return typeof new Image().crossOrigin < "u"
    },
    Aee = function() {
        return typeof new XMLHttpRequest().responseType == "string"
    },
    iee = function(e) {
        var t = new Image,
            n = e.createElement("canvas"),
            r = n.getContext("2d");
        if (!r) return !1;
        t.src = "data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'></svg>";
        try {
            r.drawImage(t, 0, 0), n.toDataURL()
        } catch {
            return !1
        }
        return !0
    },
    x7 = function(e) {
        return e[0] === 0 && e[1] === 255 && e[2] === 0 && e[3] === 255
    },
    see = function(e) {
        var t = e.createElement("canvas"),
            n = 100;
        t.width = n, t.height = n;
        var r = t.getContext("2d");
        if (!r) return Promise.reject(!1);
        r.fillStyle = "rgb(0, 255, 0)", r.fillRect(0, 0, n, n);
        var A = new Image,
            i = t.toDataURL();
        A.src = i;
        var s = Nh(n, n, 0, 0, A);
        return r.fillStyle = "red", r.fillRect(0, 0, n, n), E7(s).then(function(a) {
            r.drawImage(a, 0, 0);
            var o = r.getImageData(0, 0, n, n).data;
            r.fillStyle = "red", r.fillRect(0, 0, n, n);
            var l = e.createElement("div");
            return l.style.backgroundImage = "url(" + i + ")", l.style.height = n + "px", x7(o) ? E7(Nh(n, n, 0, 0, l)) : Promise.reject(!1)
        }).then(function(a) {
            return r.drawImage(a, 0, 0), x7(r.getImageData(0, 0, n, n).data)
        }).catch(function() {
            return !1
        })
    },
    Nh = function(e, t, n, r, A) {
        var i = "http://www.w3.org/2000/svg",
            s = document.createElementNS(i, "svg"),
            a = document.createElementNS(i, "foreignObject");
        return s.setAttributeNS(null, "width", e.toString()), s.setAttributeNS(null, "height", t.toString()), a.setAttributeNS(null, "width", "100%"), a.setAttributeNS(null, "height", "100%"), a.setAttributeNS(null, "x", n.toString()), a.setAttributeNS(null, "y", r.toString()), a.setAttributeNS(null, "externalResourcesRequired", "true"), s.appendChild(a), a.appendChild(A), s
    },
    E7 = function(e) {
        return new Promise(function(t, n) {
            var r = new Image;
            r.onload = function() {
                return t(r)
            }, r.onerror = n, r.src = "data:image/svg+xml;charset=utf-8," + encodeURIComponent(new XMLSerializer().serializeToString(e))
        })
    },
    Nn = {
        get SUPPORT_RANGE_BOUNDS() {
            var e = tee(document);
            return Object.defineProperty(Nn, "SUPPORT_RANGE_BOUNDS", {
                value: e
            }), e
        },
        get SUPPORT_WORD_BREAKING() {
            var e = Nn.SUPPORT_RANGE_BOUNDS && nee(document);
            return Object.defineProperty(Nn, "SUPPORT_WORD_BREAKING", {
                value: e
            }), e
        },
        get SUPPORT_SVG_DRAWING() {
            var e = iee(document);
            return Object.defineProperty(Nn, "SUPPORT_SVG_DRAWING", {
                value: e
            }), e
        },
        get SUPPORT_FOREIGNOBJECT_DRAWING() {
            var e = typeof Array.from == "function" && typeof window.fetch == "function" ? see(document) : Promise.resolve(!1);
            return Object.defineProperty(Nn, "SUPPORT_FOREIGNOBJECT_DRAWING", {
                value: e
            }), e
        },
        get SUPPORT_CORS_IMAGES() {
            var e = ree();
            return Object.defineProperty(Nn, "SUPPORT_CORS_IMAGES", {
                value: e
            }), e
        },
        get SUPPORT_RESPONSE_TYPE() {
            var e = Aee();
            return Object.defineProperty(Nn, "SUPPORT_RESPONSE_TYPE", {
                value: e
            }), e
        },
        get SUPPORT_CORS_XHR() {
            var e = "withCredentials" in new XMLHttpRequest;
            return Object.defineProperty(Nn, "SUPPORT_CORS_XHR", {
                value: e
            }), e
        },
        get SUPPORT_NATIVE_TEXT_SEGMENTATION() {
            var e = !!(typeof Intl < "u" && Intl.Segmenter);
            return Object.defineProperty(Nn, "SUPPORT_NATIVE_TEXT_SEGMENTATION", {
                value: e
            }), e
        }
    },
    Hl = function() {
        function e(t, n) {
            this.text = t, this.bounds = n
        }
        return e
    }(),
    aee = function(e, t, n, r) {
        var A = uee(t, n),
            i = [],
            s = 0;
        return A.forEach(function(a) {
            if (n.textDecorationLine.length || a.trim().length > 0)
                if (Nn.SUPPORT_RANGE_BOUNDS) {
                    var o = b7(r, s, a.length).getClientRects();
                    if (o.length > 1) {
                        var l = p5(a),
                            u = 0;
                        l.forEach(function(d) {
                            i.push(new Hl(d, li.fromDOMRectList(e, b7(r, u + s, d.length).getClientRects()))), u += d.length
                        })
                    } else i.push(new Hl(a, li.fromDOMRectList(e, o)))
                } else {
                    var f = r.splitText(a.length);
                    i.push(new Hl(a, oee(e, r))), r = f
                }
            else Nn.SUPPORT_RANGE_BOUNDS || (r = r.splitText(a.length));
            s += a.length
        }), i
    },
    oee = function(e, t) {
        var n = t.ownerDocument;
        if (n) {
            var r = n.createElement("html2canvaswrapper");
            r.appendChild(t.cloneNode(!0));
            var A = t.parentNode;
            if (A) {
                A.replaceChild(r, t);
                var i = Nf(e, r);
                return r.firstChild && A.replaceChild(r.firstChild, r), i
            }
        }
        return li.EMPTY
    },
    b7 = function(e, t, n) {
        var r = e.ownerDocument;
        if (!r) throw new Error("Node has no owner document");
        var A = r.createRange();
        return A.setStart(e, t), A.setEnd(e, t + n), A
    },
    p5 = function(e) {
        if (Nn.SUPPORT_NATIVE_TEXT_SEGMENTATION) {
            var t = new Intl.Segmenter(void 0, {
                granularity: "grapheme"
            });
            return Array.from(t.segment(e)).map(function(n) {
                return n.segment
            })
        }
        return eee(e)
    },
    lee = function(e, t) {
        if (Nn.SUPPORT_NATIVE_TEXT_SEGMENTATION) {
            var n = new Intl.Segmenter(void 0, {
                granularity: "word"
            });
            return Array.from(n.segment(e)).map(function(r) {
                return r.segment
            })
        }
        return fee(e, t)
    },
    uee = function(e, t) {
        return t.letterSpacing !== 0 ? p5(e) : lee(e, t)
    },
    cee = [32, 160, 4961, 65792, 65793, 4153, 4241],
    fee = function(e, t) {
        for (var n = MX(e, {
                lineBreak: t.lineBreak,
                wordBreak: t.overflowWrap === "break-word" ? "break-word" : t.wordBreak
            }), r = [], A, i = function() {
                if (A.value) {
                    var s = A.value.slice(),
                        a = $f(s),
                        o = "";
                    a.forEach(function(l) {
                        cee.indexOf(l) === -1 ? o += nn(l) : (o.length && r.push(o), r.push(nn(l)), o = "")
                    }), o.length && r.push(o)
                }
            }; !(A = n.next()).done;) i();
        return r
    },
    dee = function() {
        function e(t, n, r) {
            this.text = hee(n.data, r.textTransform), this.textBounds = aee(t, this.text, r, n)
        }
        return e
    }(),
    hee = function(e, t) {
        switch (t) {
            case 1:
                return e.toLowerCase();
            case 3:
                return e.replace(pee, gee);
            case 2:
                return e.toUpperCase();
            default:
                return e
        }
    },
    pee = /(^|\s|:|-|\(|\))([a-z])/g,
    gee = function(e, t, n) {
        return e.length > 0 ? t + n.toUpperCase() : e
    },
    WC = function(e) {
        lA(t, e);

        function t(n, r) {
            var A = e.call(this, n, r) || this;
            return A.src = r.currentSrc || r.src, A.intrinsicWidth = r.naturalWidth, A.intrinsicHeight = r.naturalHeight, A.context.cache.addImage(A.src), A
        }
        return t
    }(UA),
    jC = function(e) {
        lA(t, e);

        function t(n, r) {
            var A = e.call(this, n, r) || this;
            return A.canvas = r, A.intrinsicWidth = r.width, A.intrinsicHeight = r.height, A
        }
        return t
    }(UA),
    YC = function(e) {
        lA(t, e);

        function t(n, r) {
            var A = e.call(this, n, r) || this,
                i = new XMLSerializer,
                s = Nf(n, r);
            return r.setAttribute("width", s.width + "px"), r.setAttribute("height", s.height + "px"), A.svg = "data:image/svg+xml," + encodeURIComponent(i.serializeToString(r)), A.intrinsicWidth = r.width.baseVal.value, A.intrinsicHeight = r.height.baseVal.value, A.context.cache.addImage(A.svg), A
        }
        return t
    }(UA),
    XC = function(e) {
        lA(t, e);

        function t(n, r) {
            var A = e.call(this, n, r) || this;
            return A.value = r.value, A
        }
        return t
    }(UA),
    $h = function(e) {
        lA(t, e);

        function t(n, r) {
            var A = e.call(this, n, r) || this;
            return A.start = r.start, A.reversed = typeof r.reversed == "boolean" && r.reversed === !0, A
        }
        return t
    }(UA),
    vee = [{
        type: 15,
        flags: 0,
        unit: "px",
        number: 3
    }],
    mee = [{
        type: 16,
        flags: 0,
        number: 50
    }],
    Bee = function(e) {
        return e.width > e.height ? new li(e.left + (e.width - e.height) / 2, e.top, e.height, e.height) : e.width < e.height ? new li(e.left, e.top + (e.height - e.width) / 2, e.width, e.width) : e
    },
    wee = function(e) {
        var t = e.type === yee ? new Array(e.value.length + 1).join("•") : e.value;
        return t.length === 0 ? e.placeholder || "" : t
    },
    bc = "checkbox",
    Fc = "radio",
    yee = "password",
    F7 = 707406591,
    g5 = function(e) {
        lA(t, e);

        function t(n, r) {
            var A = e.call(this, n, r) || this;
            switch (A.type = r.type.toLowerCase(), A.checked = r.checked, A.value = wee(r), (A.type === bc || A.type === Fc) && (A.styles.backgroundColor = 3739148031, A.styles.borderTopColor = A.styles.borderRightColor = A.styles.borderBottomColor = A.styles.borderLeftColor = 2779096575, A.styles.borderTopWidth = A.styles.borderRightWidth = A.styles.borderBottomWidth = A.styles.borderLeftWidth = 1, A.styles.borderTopStyle = A.styles.borderRightStyle = A.styles.borderBottomStyle = A.styles.borderLeftStyle = 1, A.styles.backgroundClip = [0], A.styles.backgroundOrigin = [0], A.bounds = Bee(A.bounds)), A.type) {
                case bc:
                    A.styles.borderTopRightRadius = A.styles.borderTopLeftRadius = A.styles.borderBottomRightRadius = A.styles.borderBottomLeftRadius = vee;
                    break;
                case Fc:
                    A.styles.borderTopRightRadius = A.styles.borderTopLeftRadius = A.styles.borderBottomRightRadius = A.styles.borderBottomLeftRadius = mee;
                    break
            }
            return A
        }
        return t
    }(UA),
    JC = function(e) {
        lA(t, e);

        function t(n, r) {
            var A = e.call(this, n, r) || this,
                i = r.options[r.selectedIndex || 0];
            return A.value = i && i.text || "", A
        }
        return t
    }(UA),
    qC = function(e) {
        lA(t, e);

        function t(n, r) {
            var A = e.call(this, n, r) || this;
            return A.value = r.value, A
        }
        return t
    }(UA),
    ZC = function(e) {
        lA(t, e);

        function t(n, r) {
            var A = e.call(this, n, r) || this;
            A.src = r.src, A.width = parseInt(r.width, 10) || 0, A.height = parseInt(r.height, 10) || 0, A.backgroundColor = A.styles.backgroundColor;
            try {
                if (r.contentWindow && r.contentWindow.document && r.contentWindow.document.documentElement) {
                    A.tree = tx(n, r.contentWindow.document.documentElement);
                    var i = r.contentWindow.document.documentElement ? Ll(n, getComputedStyle(r.contentWindow.document.documentElement).backgroundColor) : ni.TRANSPARENT,
                        s = r.contentWindow.document.body ? Ll(n, getComputedStyle(r.contentWindow.document.body).backgroundColor) : ni.TRANSPARENT;
                    A.backgroundColor = es(i) ? es(s) ? A.styles.backgroundColor : s : i
                }
            } catch {}
            return A
        }
        return t
    }(UA),
    Cee = ["OL", "UL", "MENU"],
    Zu = function(e, t, n, r) {
        for (var A = t.firstChild, i = void 0; A; A = i)
            if (i = A.nextSibling, nx(A) && A.data.trim().length > 0) n.textNodes.push(new dee(e, A, n.styles));
            else if (Va(A))
            if (sx(A) && A.assignedNodes) A.assignedNodes().forEach(function(a) {
                return Zu(e, a, n, r)
            });
            else {
                var s = ex(e, A);
                s.styles.isVisible() && (xee(A, s, r) ? s.flags |= 4 : Eee(s.styles) && (s.flags |= 2), Cee.indexOf(A.tagName) !== -1 && (s.flags |= 8), n.elements.push(s), A.slot, A.shadowRoot ? Zu(e, A.shadowRoot, s, r) : !_c(A) && !rx(A) && !Sc(A) && Zu(e, A, s, r))
            }
    },
    ex = function(e, t) {
        return Vh(t) ? new WC(e, t) : Ax(t) ? new jC(e, t) : rx(t) ? new YC(e, t) : bee(t) ? new XC(e, t) : Fee(t) ? new $h(e, t) : _ee(t) ? new g5(e, t) : Sc(t) ? new JC(e, t) : _c(t) ? new qC(e, t) : ix(t) ? new ZC(e, t) : new UA(e, t)
    },
    tx = function(e, t) {
        var n = ex(e, t);
        return n.flags |= 4, Zu(e, t, n, n), n
    },
    xee = function(e, t, n) {
        return t.styles.isPositionedWithZIndex() || t.styles.opacity < 1 || t.styles.isTransformed() || v5(e) && n.styles.isTransparent()
    },
    Eee = function(e) {
        return e.isPositioned() || e.isFloating()
    },
    nx = function(e) {
        return e.nodeType === Node.TEXT_NODE
    },
    Va = function(e) {
        return e.nodeType === Node.ELEMENT_NODE
    },
    Kh = function(e) {
        return Va(e) && typeof e.style < "u" && !ec(e)
    },
    ec = function(e) {
        return typeof e.className == "object"
    },
    bee = function(e) {
        return e.tagName === "LI"
    },
    Fee = function(e) {
        return e.tagName === "OL"
    },
    _ee = function(e) {
        return e.tagName === "INPUT"
    },
    See = function(e) {
        return e.tagName === "HTML"
    },
    rx = function(e) {
        return e.tagName === "svg"
    },
    v5 = function(e) {
        return e.tagName === "BODY"
    },
    Ax = function(e) {
        return e.tagName === "CANVAS"
    },
    _7 = function(e) {
        return e.tagName === "VIDEO"
    },
    Vh = function(e) {
        return e.tagName === "IMG"
    },
    ix = function(e) {
        return e.tagName === "IFRAME"
    },
    S7 = function(e) {
        return e.tagName === "STYLE"
    },
    Qee = function(e) {
        return e.tagName === "SCRIPT"
    },
    _c = function(e) {
        return e.tagName === "TEXTAREA"
    },
    Sc = function(e) {
        return e.tagName === "SELECT"
    },
    sx = function(e) {
        return e.tagName === "SLOT"
    },
    Q7 = function(e) {
        return e.tagName.indexOf("-") > 0
    },
    Uee = function() {
        function e() {
            this.counters = {}
        }
        return e.prototype.getCounterValue = function(t) {
            var n = this.counters[t];
            return n && n.length ? n[n.length - 1] : 1
        }, e.prototype.getCounterValues = function(t) {
            var n = this.counters[t];
            return n || []
        }, e.prototype.pop = function(t) {
            var n = this;
            t.forEach(function(r) {
                return n.counters[r].pop()
            })
        }, e.prototype.parse = function(t) {
            var n = this,
                r = t.counterIncrement,
                A = t.counterReset,
                i = !0;
            r !== null && r.forEach(function(a) {
                var o = n.counters[a.counter];
                o && a.increment !== 0 && (i = !1, o.length || o.push(1), o[Math.max(0, o.length - 1)] += a.increment)
            });
            var s = [];
            return i && A.forEach(function(a) {
                var o = n.counters[a.counter];
                s.push(a.counter), o || (o = n.counters[a.counter] = []), o.push(a.reset)
            }), s
        }, e
    }(),
    U7 = {
        integers: [1e3, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1],
        values: ["M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"]
    },
    T7 = {
        integers: [9e3, 8e3, 7e3, 6e3, 5e3, 4e3, 3e3, 2e3, 1e3, 900, 800, 700, 600, 500, 400, 300, 200, 100, 90, 80, 70, 60, 50, 40, 30, 20, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1],
        values: ["Ք", "Փ", "Ւ", "Ց", "Ր", "Տ", "Վ", "Ս", "Ռ", "Ջ", "Պ", "Չ", "Ո", "Շ", "Ն", "Յ", "Մ", "Ճ", "Ղ", "Ձ", "Հ", "Կ", "Ծ", "Խ", "Լ", "Ի", "Ժ", "Թ", "Ը", "Է", "Զ", "Ե", "Դ", "Գ", "Բ", "Ա"]
    },
    Tee = {
        integers: [1e4, 9e3, 8e3, 7e3, 6e3, 5e3, 4e3, 3e3, 2e3, 1e3, 400, 300, 200, 100, 90, 80, 70, 60, 50, 40, 30, 20, 19, 18, 17, 16, 15, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1],
        values: ["י׳", "ט׳", "ח׳", "ז׳", "ו׳", "ה׳", "ד׳", "ג׳", "ב׳", "א׳", "ת", "ש", "ר", "ק", "צ", "פ", "ע", "ס", "נ", "מ", "ל", "כ", "יט", "יח", "יז", "טז", "טו", "י", "ט", "ח", "ז", "ו", "ה", "ד", "ג", "ב", "א"]
    },
    Iee = {
        integers: [1e4, 9e3, 8e3, 7e3, 6e3, 5e3, 4e3, 3e3, 2e3, 1e3, 900, 800, 700, 600, 500, 400, 300, 200, 100, 90, 80, 70, 60, 50, 40, 30, 20, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1],
        values: ["ჵ", "ჰ", "ჯ", "ჴ", "ხ", "ჭ", "წ", "ძ", "ც", "ჩ", "შ", "ყ", "ღ", "ქ", "ფ", "ჳ", "ტ", "ს", "რ", "ჟ", "პ", "ო", "ჲ", "ნ", "მ", "ლ", "კ", "ი", "თ", "ჱ", "ზ", "ვ", "ე", "დ", "გ", "ბ", "ა"]
    },
    Pa = function(e, t, n, r, A, i) {
        return e < t || e > n ? a0(e, A, i.length > 0) : r.integers.reduce(function(s, a, o) {
            for (; e >= a;) e -= a, s += r.values[o];
            return s
        }, "") + i
    },
    ax = function(e, t, n, r) {
        var A = "";
        do n || e--, A = r(e) + A, e /= t; while (e * t >= t);
        return A
    },
    tn = function(e, t, n, r, A) {
        var i = n - t + 1;
        return (e < 0 ? "-" : "") + (ax(Math.abs(e), i, r, function(s) {
            return nn(Math.floor(s % i) + t)
        }) + A)
    },
    Ds = function(e, t, n) {
        n === void 0 && (n = ". ");
        var r = t.length;
        return ax(Math.abs(e), r, !1, function(A) {
            return t[Math.floor(A % r)]
        }) + n
    },
    Ma = 1,
    Oi = 2,
    Li = 4,
    ml = 8,
    $A = function(e, t, n, r, A, i) {
        if (e < -9999 || e > 9999) return a0(e, 4, A.length > 0);
        var s = Math.abs(e),
            a = A;
        if (s === 0) return t[0] + a;
        for (var o = 0; s > 0 && o <= 4; o++) {
            var l = s % 10;
            l === 0 && wn(i, Ma) && a !== "" ? a = t[l] + a : l > 1 || l === 1 && o === 0 || l === 1 && o === 1 && wn(i, Oi) || l === 1 && o === 1 && wn(i, Li) && e > 100 || l === 1 && o > 1 && wn(i, ml) ? a = t[l] + (o > 0 ? n[o - 1] : "") + a : l === 1 && o > 0 && (a = n[o - 1] + a), s = Math.floor(s / 10)
        }
        return (e < 0 ? r : "") + a
    },
    I7 = "十百千萬",
    D7 = "拾佰仟萬",
    P7 = "マイナス",
    r2 = "마이너스",
    a0 = function(e, t, n) {
        var r = n ? ". " : "",
            A = n ? "、" : "",
            i = n ? ", " : "",
            s = n ? " " : "";
        switch (t) {
            case 0:
                return "•" + s;
            case 1:
                return "◦" + s;
            case 2:
                return "◾" + s;
            case 5:
                var a = tn(e, 48, 57, !0, r);
                return a.length < 4 ? "0" + a : a;
            case 4:
                return Ds(e, "〇一二三四五六七八九", A);
            case 6:
                return Pa(e, 1, 3999, U7, 3, r).toLowerCase();
            case 7:
                return Pa(e, 1, 3999, U7, 3, r);
            case 8:
                return tn(e, 945, 969, !1, r);
            case 9:
                return tn(e, 97, 122, !1, r);
            case 10:
                return tn(e, 65, 90, !1, r);
            case 11:
                return tn(e, 1632, 1641, !0, r);
            case 12:
            case 49:
                return Pa(e, 1, 9999, T7, 3, r);
            case 35:
                return Pa(e, 1, 9999, T7, 3, r).toLowerCase();
            case 13:
                return tn(e, 2534, 2543, !0, r);
            case 14:
            case 30:
                return tn(e, 6112, 6121, !0, r);
            case 15:
                return Ds(e, "子丑寅卯辰巳午未申酉戌亥", A);
            case 16:
                return Ds(e, "甲乙丙丁戊己庚辛壬癸", A);
            case 17:
            case 48:
                return $A(e, "零一二三四五六七八九", I7, "負", A, Oi | Li | ml);
            case 47:
                return $A(e, "零壹貳參肆伍陸柒捌玖", D7, "負", A, Ma | Oi | Li | ml);
            case 42:
                return $A(e, "零一二三四五六七八九", I7, "负", A, Oi | Li | ml);
            case 41:
                return $A(e, "零壹贰叁肆伍陆柒捌玖", D7, "负", A, Ma | Oi | Li | ml);
            case 26:
                return $A(e, "〇一二三四五六七八九", "十百千万", P7, A, 0);
            case 25:
                return $A(e, "零壱弐参四伍六七八九", "拾百千万", P7, A, Ma | Oi | Li);
            case 31:
                return $A(e, "영일이삼사오육칠팔구", "십백천만", r2, i, Ma | Oi | Li);
            case 33:
                return $A(e, "零一二三四五六七八九", "十百千萬", r2, i, 0);
            case 32:
                return $A(e, "零壹貳參四五六七八九", "拾百千", r2, i, Ma | Oi | Li);
            case 18:
                return tn(e, 2406, 2415, !0, r);
            case 20:
                return Pa(e, 1, 19999, Iee, 3, r);
            case 21:
                return tn(e, 2790, 2799, !0, r);
            case 22:
                return tn(e, 2662, 2671, !0, r);
            case 22:
                return Pa(e, 1, 10999, Tee, 3, r);
            case 23:
                return Ds(e, "あいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわゐゑをん");
            case 24:
                return Ds(e, "いろはにほへとちりぬるをわかよたれそつねならむうゐのおくやまけふこえてあさきゆめみしゑひもせす");
            case 27:
                return tn(e, 3302, 3311, !0, r);
            case 28:
                return Ds(e, "アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヰヱヲン", A);
            case 29:
                return Ds(e, "イロハニホヘトチリヌルヲワカヨタレソツネナラムウヰノオクヤマケフコエテアサキユメミシヱヒモセス", A);
            case 34:
                return tn(e, 3792, 3801, !0, r);
            case 37:
                return tn(e, 6160, 6169, !0, r);
            case 38:
                return tn(e, 4160, 4169, !0, r);
            case 39:
                return tn(e, 2918, 2927, !0, r);
            case 40:
                return tn(e, 1776, 1785, !0, r);
            case 43:
                return tn(e, 3046, 3055, !0, r);
            case 44:
                return tn(e, 3174, 3183, !0, r);
            case 45:
                return tn(e, 3664, 3673, !0, r);
            case 46:
                return tn(e, 3872, 3881, !0, r);
            case 3:
            default:
                return tn(e, 48, 57, !0, r)
        }
    },
    ox = "data-html2canvas-ignore",
    O7 = function() {
        function e(t, n, r) {
            if (this.context = t, this.options = r, this.scrolledElements = [], this.referenceElement = n, this.counters = new Uee, this.quoteDepth = 0, !n.ownerDocument) throw new Error("Cloned element does not have an owner document");
            this.documentElement = this.cloneNode(n.ownerDocument.documentElement, !1)
        }
        return e.prototype.toIFrame = function(t, n) {
            var r = this,
                A = Dee(t, n);
            if (!A.contentWindow) return Promise.reject("Unable to find iframe window");
            var i = t.defaultView.pageXOffset,
                s = t.defaultView.pageYOffset,
                a = A.contentWindow,
                o = a.document,
                l = Lee(A).then(function() {
                    return tr(r, void 0, void 0, function() {
                        var u, f;
                        return jn(this, function(d) {
                            switch (d.label) {
                                case 0:
                                    return this.scrolledElements.forEach(Ree), a && (a.scrollTo(n.left, n.top), /(iPad|iPhone|iPod)/g.test(navigator.userAgent) && (a.scrollY !== n.top || a.scrollX !== n.left) && (this.context.logger.warn("Unable to restore scroll position for cloned document"), this.context.windowBounds = this.context.windowBounds.add(a.scrollX - n.left, a.scrollY - n.top, 0, 0))), u = this.options.onclone, f = this.clonedReferenceElement, typeof f > "u" ? [2, Promise.reject("Error finding the " + this.referenceElement.nodeName + " in the cloned document")] : o.fonts && o.fonts.ready ? [4, o.fonts.ready] : [3, 2];
                                case 1:
                                    d.sent(), d.label = 2;
                                case 2:
                                    return /(AppleWebKit)/g.test(navigator.userAgent) ? [4, Oee(o)] : [3, 4];
                                case 3:
                                    d.sent(), d.label = 4;
                                case 4:
                                    return typeof u == "function" ? [2, Promise.resolve().then(function() {
                                        return u(o, f)
                                    }).then(function() {
                                        return A
                                    })] : [2, A]
                            }
                        })
                    })
                });
            return o.open(), o.write(Hee(document.doctype) + "<html></html>"), Mee(this.referenceElement.ownerDocument, i, s), o.replaceChild(o.adoptNode(this.documentElement), o.documentElement), o.close(), l
        }, e.prototype.createElementClone = function(t) {
            if (Rh(t, 2)) debugger;
            if (Ax(t)) return this.createCanvasClone(t);
            if (_7(t)) return this.createVideoClone(t);
            if (S7(t)) return this.createStyleClone(t);
            var n = t.cloneNode(!1);
            return Vh(n) && (Vh(t) && t.currentSrc && t.currentSrc !== t.src && (n.src = t.currentSrc, n.srcset = ""), n.loading === "lazy" && (n.loading = "eager")), Q7(n) ? this.createCustomElementClone(n) : n
        }, e.prototype.createCustomElementClone = function(t) {
            var n = document.createElement("html2canvascustomelement");
            return A2(t.style, n), n
        }, e.prototype.createStyleClone = function(t) {
            try {
                var n = t.sheet;
                if (n && n.cssRules) {
                    var r = [].slice.call(n.cssRules, 0).reduce(function(i, s) {
                            return s && typeof s.cssText == "string" ? i + s.cssText : i
                        }, ""),
                        A = t.cloneNode(!1);
                    return A.textContent = r, A
                }
            } catch (i) {
                if (this.context.logger.error("Unable to access cssRules property", i), i.name !== "SecurityError") throw i
            }
            return t.cloneNode(!1)
        }, e.prototype.createCanvasClone = function(t) {
            var n;
            if (this.options.inlineImages && t.ownerDocument) {
                var r = t.ownerDocument.createElement("img");
                try {
                    return r.src = t.toDataURL(), r
                } catch {
                    this.context.logger.info("Unable to inline canvas contents, canvas is tainted", t)
                }
            }
            var A = t.cloneNode(!1);
            try {
                A.width = t.width, A.height = t.height;
                var i = t.getContext("2d"),
                    s = A.getContext("2d");
                if (s)
                    if (!this.options.allowTaint && i) s.putImageData(i.getImageData(0, 0, t.width, t.height), 0, 0);
                    else {
                        var a = (n = t.getContext("webgl2")) !== null && n !== void 0 ? n : t.getContext("webgl");
                        if (a) {
                            var o = a.getContextAttributes();
                            (o == null ? void 0 : o.preserveDrawingBuffer) === !1 && this.context.logger.warn("Unable to clone WebGL context as it has preserveDrawingBuffer=false", t)
                        }
                        s.drawImage(t, 0, 0)
                    }
                return A
            } catch {
                this.context.logger.info("Unable to clone canvas as it is tainted", t)
            }
            return A
        }, e.prototype.createVideoClone = function(t) {
            var n = t.ownerDocument.createElement("canvas");
            n.width = t.offsetWidth, n.height = t.offsetHeight;
            var r = n.getContext("2d");
            try {
                return r && (r.drawImage(t, 0, 0, n.width, n.height), this.options.allowTaint || r.getImageData(0, 0, n.width, n.height)), n
            } catch {
                this.context.logger.info("Unable to clone video as it is tainted", t)
            }
            var A = t.ownerDocument.createElement("canvas");
            return A.width = t.offsetWidth, A.height = t.offsetHeight, A
        }, e.prototype.appendChildNode = function(t, n, r) {
            (!Va(n) || !Qee(n) && !n.hasAttribute(ox) && (typeof this.options.ignoreElements != "function" || !this.options.ignoreElements(n))) && (!this.options.copyStyles || !Va(n) || !S7(n)) && t.appendChild(this.cloneNode(n, r))
        }, e.prototype.cloneChildNodes = function(t, n, r) {
            for (var A = this, i = t.shadowRoot ? t.shadowRoot.firstChild : t.firstChild; i; i = i.nextSibling)
                if (Va(i) && sx(i) && typeof i.assignedNodes == "function") {
                    var s = i.assignedNodes();
                    s.length && s.forEach(function(a) {
                        return A.appendChildNode(n, a, r)
                    })
                } else this.appendChildNode(n, i, r)
        }, e.prototype.cloneNode = function(t, n) {
            if (nx(t)) return document.createTextNode(t.data);
            if (!t.ownerDocument) return t.cloneNode(!1);
            var r = t.ownerDocument.defaultView;
            if (r && Va(t) && (Kh(t) || ec(t))) {
                var A = this.createElementClone(t);
                A.style.transitionProperty = "none";
                var i = r.getComputedStyle(t),
                    s = r.getComputedStyle(t, ":before"),
                    a = r.getComputedStyle(t, ":after");
                this.referenceElement === t && Kh(A) && (this.clonedReferenceElement = A), v5(A) && Kee(A);
                var o = this.counters.parse(new f7(this.context, i)),
                    l = this.resolvePseudoContent(t, A, s, Ml.BEFORE);
                Q7(t) && (n = !0), _7(t) || this.cloneChildNodes(t, A, n), l && A.insertBefore(l, A.firstChild);
                var u = this.resolvePseudoContent(t, A, a, Ml.AFTER);
                return u && A.appendChild(u), this.counters.pop(o), (i && (this.options.copyStyles || ec(t)) && !ix(t) || n) && A2(i, A), (t.scrollTop !== 0 || t.scrollLeft !== 0) && this.scrolledElements.push([A, t.scrollLeft, t.scrollTop]), (_c(t) || Sc(t)) && (_c(A) || Sc(A)) && (A.value = t.value), A
            }
            return t.cloneNode(!1)
        }, e.prototype.resolvePseudoContent = function(t, n, r, A) {
            var i = this;
            if (r) {
                var s = r.content,
                    a = n.ownerDocument;
                if (!(!a || !s || s === "none" || s === "-moz-alt-content" || r.display === "none")) {
                    this.counters.parse(new f7(this.context, r));
                    var o = new bZ(this.context, r),
                        l = a.createElement("html2canvaspseudoelement");
                    A2(r, l), o.content.forEach(function(f) {
                        if (f.type === 0) l.appendChild(a.createTextNode(f.value));
                        else if (f.type === 22) {
                            var d = a.createElement("img");
                            d.src = f.value, d.style.opacity = "1", l.appendChild(d)
                        } else if (f.type === 18) {
                            if (f.name === "attr") {
                                var p = f.values.filter(Mt);
                                p.length && l.appendChild(a.createTextNode(t.getAttribute(p[0].value) || ""))
                            } else if (f.name === "counter") {
                                var m = f.values.filter(vo),
                                    g = m[0],
                                    y = m[1];
                                if (g && Mt(g)) {
                                    var w = i.counters.getCounterValue(g.value),
                                        B = y && Mt(y) ? Mh.parse(i.context, y.value) : 3;
                                    l.appendChild(a.createTextNode(a0(w, B, !1)))
                                }
                            } else if (f.name === "counters") {
                                var x = f.values.filter(vo),
                                    g = x[0],
                                    C = x[1],
                                    y = x[2];
                                if (g && Mt(g)) {
                                    var b = i.counters.getCounterValues(g.value),
                                        F = y && Mt(y) ? Mh.parse(i.context, y.value) : 3,
                                        T = C && C.type === 0 ? C.value : "",
                                        I = b.map(function(Q) {
                                            return a0(Q, F, !1)
                                        }).join(T);
                                    l.appendChild(a.createTextNode(I))
                                }
                            }
                        } else if (f.type === 20) switch (f.value) {
                            case "open-quote":
                                l.appendChild(a.createTextNode(c7(o.quotes, i.quoteDepth++, !0)));
                                break;
                            case "close-quote":
                                l.appendChild(a.createTextNode(c7(o.quotes, --i.quoteDepth, !1)));
                                break;
                            default:
                                l.appendChild(a.createTextNode(f.value))
                        }
                    }), l.className = Gh + " " + zh;
                    var u = A === Ml.BEFORE ? " " + Gh : " " + zh;
                    return ec(n) ? n.className.baseValue += u : n.className += u, l
                }
            }
        }, e.destroy = function(t) {
            return t.parentNode ? (t.parentNode.removeChild(t), !0) : !1
        }, e
    }(),
    Ml;
(function(e) {
    e[e.BEFORE = 0] = "BEFORE", e[e.AFTER = 1] = "AFTER"
})(Ml || (Ml = {}));
var Dee = function(e, t) {
        var n = e.createElement("iframe");
        return n.className = "html2canvas-container", n.style.visibility = "hidden", n.style.position = "fixed", n.style.left = "-10000px", n.style.top = "0px", n.style.border = "0", n.width = t.width.toString(), n.height = t.height.toString(), n.scrolling = "no", n.setAttribute(ox, "true"), e.body.appendChild(n), n
    },
    Pee = function(e) {
        return new Promise(function(t) {
            if (e.complete) {
                t();
                return
            }
            if (!e.src) {
                t();
                return
            }
            e.onload = t, e.onerror = t
        })
    },
    Oee = function(e) {
        return Promise.all([].slice.call(e.images, 0).map(Pee))
    },
    Lee = function(e) {
        return new Promise(function(t, n) {
            var r = e.contentWindow;
            if (!r) return n("No window assigned for iframe");
            var A = r.document;
            r.onload = e.onload = function() {
                r.onload = e.onload = null;
                var i = setInterval(function() {
                    A.body.childNodes.length > 0 && A.readyState === "complete" && (clearInterval(i), t(e))
                }, 50)
            }
        })
    },
    kee = ["all", "d", "content"],
    A2 = function(e, t) {
        for (var n = e.length - 1; n >= 0; n--) {
            var r = e.item(n);
            kee.indexOf(r) === -1 && t.style.setProperty(r, e.getPropertyValue(r))
        }
        return t
    },
    Hee = function(e) {
        var t = "";
        return e && (t += "<!DOCTYPE ", e.name && (t += e.name), e.internalSubset && (t += e.internalSubset), e.publicId && (t += '"' + e.publicId + '"'), e.systemId && (t += '"' + e.systemId + '"'), t += ">"), t
    },
    Mee = function(e, t, n) {
        e && e.defaultView && (t !== e.defaultView.pageXOffset || n !== e.defaultView.pageYOffset) && e.defaultView.scrollTo(t, n)
    },
    Ree = function(e) {
        var t = e[0],
            n = e[1],
            r = e[2];
        t.scrollLeft = n, t.scrollTop = r
    },
    Nee = ":before",
    $ee = ":after",
    Gh = "___html2canvas___pseudoelement_before",
    zh = "___html2canvas___pseudoelement_after",
    L7 = `{
    content: "" !important;
    display: none !important;
}`,
    Kee = function(e) {
        Vee(e, "." + Gh + Nee + L7 + `
         .` + zh + $ee + L7)
    },
    Vee = function(e, t) {
        var n = e.ownerDocument;
        if (n) {
            var r = n.createElement("style");
            r.textContent = t, e.appendChild(r)
        }
    },
    lx = function() {
        function e() {}
        return e.getOrigin = function(t) {
            var n = e._link;
            return n ? (n.href = t, n.href = n.href, n.protocol + n.hostname + n.port) : "about:blank"
        }, e.isSameOrigin = function(t) {
            return e.getOrigin(t) === e._origin
        }, e.setContext = function(t) {
            e._link = t.document.createElement("a"), e._origin = e.getOrigin(t.location.href)
        }, e._origin = "about:blank", e
    }(),
    Gee = function() {
        function e(t, n) {
            this.context = t, this._options = n, this._cache = {}
        }
        return e.prototype.addImage = function(t) {
            var n = Promise.resolve();
            return this.has(t) || (s2(t) || Yee(t)) && (this._cache[t] = this.loadImage(t)).catch(function() {}), n
        }, e.prototype.match = function(t) {
            return this._cache[t]
        }, e.prototype.loadImage = function(t) {
            return tr(this, void 0, void 0, function() {
                var n, r, A, i, s = this;
                return jn(this, function(a) {
                    switch (a.label) {
                        case 0:
                            return n = lx.isSameOrigin(t), r = !i2(t) && this._options.useCORS === !0 && Nn.SUPPORT_CORS_IMAGES && !n, A = !i2(t) && !n && !s2(t) && typeof this._options.proxy == "string" && Nn.SUPPORT_CORS_XHR && !r, !n && this._options.allowTaint === !1 && !i2(t) && !s2(t) && !A && !r ? [2] : (i = t, A ? [4, this.proxy(i)] : [3, 2]);
                        case 1:
                            i = a.sent(), a.label = 2;
                        case 2:
                            return this.context.logger.debug("Added image " + t.substring(0, 256)), [4, new Promise(function(o, l) {
                                var u = new Image;
                                u.onload = function() {
                                    return o(u)
                                }, u.onerror = l, (Xee(i) || r) && (u.crossOrigin = "anonymous"), u.src = i, u.complete === !0 && setTimeout(function() {
                                    return o(u)
                                }, 500), s._options.imageTimeout > 0 && setTimeout(function() {
                                    return l("Timed out (" + s._options.imageTimeout + "ms) loading image")
                                }, s._options.imageTimeout)
                            })];
                        case 3:
                            return [2, a.sent()]
                    }
                })
            })
        }, e.prototype.has = function(t) {
            return typeof this._cache[t] < "u"
        }, e.prototype.keys = function() {
            return Promise.resolve(Object.keys(this._cache))
        }, e.prototype.proxy = function(t) {
            var n = this,
                r = this._options.proxy;
            if (!r) throw new Error("No proxy defined");
            var A = t.substring(0, 256);
            return new Promise(function(i, s) {
                var a = Nn.SUPPORT_RESPONSE_TYPE ? "blob" : "text",
                    o = new XMLHttpRequest;
                o.onload = function() {
                    if (o.status === 200)
                        if (a === "text") i(o.response);
                        else {
                            var f = new FileReader;
                            f.addEventListener("load", function() {
                                return i(f.result)
                            }, !1), f.addEventListener("error", function(d) {
                                return s(d)
                            }, !1), f.readAsDataURL(o.response)
                        }
                    else s("Failed to proxy resource " + A + " with status code " + o.status)
                }, o.onerror = s;
                var l = r.indexOf("?") > -1 ? "&" : "?";
                if (o.open("GET", "" + r + l + "url=" + encodeURIComponent(t) + "&responseType=" + a), a !== "text" && o instanceof XMLHttpRequest && (o.responseType = a), n._options.imageTimeout) {
                    var u = n._options.imageTimeout;
                    o.timeout = u, o.ontimeout = function() {
                        return s("Timed out (" + u + "ms) proxying " + A)
                    }
                }
                o.send()
            })
        }, e
    }(),
    zee = /^data:image\/svg\+xml/i,
    Wee = /^data:image\/.*;base64,/i,
    jee = /^data:image\/.*/i,
    Yee = function(e) {
        return Nn.SUPPORT_SVG_DRAWING || !Jee(e)
    },
    i2 = function(e) {
        return jee.test(e)
    },
    Xee = function(e) {
        return Wee.test(e)
    },
    s2 = function(e) {
        return e.substr(0, 4) === "blob"
    },
    Jee = function(e) {
        return e.substr(-3).toLowerCase() === "svg" || zee.test(e)
    },
    Ye = function() {
        function e(t, n) {
            this.type = 0, this.x = t, this.y = n
        }
        return e.prototype.add = function(t, n) {
            return new e(this.x + t, this.y + n)
        }, e
    }(),
    Oa = function(e, t, n) {
        return new Ye(e.x + (t.x - e.x) * n, e.y + (t.y - e.y) * n)
    },
    Lu = function() {
        function e(t, n, r, A) {
            this.type = 1, this.start = t, this.startControl = n, this.endControl = r, this.end = A
        }
        return e.prototype.subdivide = function(t, n) {
            var r = Oa(this.start, this.startControl, t),
                A = Oa(this.startControl, this.endControl, t),
                i = Oa(this.endControl, this.end, t),
                s = Oa(r, A, t),
                a = Oa(A, i, t),
                o = Oa(s, a, t);
            return n ? new e(this.start, r, s, o) : new e(o, a, i, this.end)
        }, e.prototype.add = function(t, n) {
            return new e(this.start.add(t, n), this.startControl.add(t, n), this.endControl.add(t, n), this.end.add(t, n))
        }, e.prototype.reverse = function() {
            return new e(this.end, this.endControl, this.startControl, this.start)
        }, e
    }(),
    Kr = function(e) {
        return e.type === 1
    },
    qee = function() {
        function e(t) {
            var n = t.styles,
                r = t.bounds,
                A = gl(n.borderTopLeftRadius, r.width, r.height),
                i = A[0],
                s = A[1],
                a = gl(n.borderTopRightRadius, r.width, r.height),
                o = a[0],
                l = a[1],
                u = gl(n.borderBottomRightRadius, r.width, r.height),
                f = u[0],
                d = u[1],
                p = gl(n.borderBottomLeftRadius, r.width, r.height),
                m = p[0],
                g = p[1],
                y = [];
            y.push((i + o) / r.width), y.push((m + f) / r.width), y.push((s + g) / r.height), y.push((l + d) / r.height);
            var w = Math.max.apply(Math, y);
            w > 1 && (i /= w, s /= w, o /= w, l /= w, f /= w, d /= w, m /= w, g /= w);
            var B = r.width - o,
                x = r.height - d,
                C = r.width - f,
                b = r.height - g,
                F = n.borderTopWidth,
                T = n.borderRightWidth,
                I = n.borderBottomWidth,
                D = n.borderLeftWidth,
                U = Kt(n.paddingTop, t.bounds.width),
                Q = Kt(n.paddingRight, t.bounds.width),
                O = Kt(n.paddingBottom, t.bounds.width),
                N = Kt(n.paddingLeft, t.bounds.width);
            this.topLeftBorderDoubleOuterBox = i > 0 || s > 0 ? Xt(r.left + D / 3, r.top + F / 3, i - D / 3, s - F / 3, Dt.TOP_LEFT) : new Ye(r.left + D / 3, r.top + F / 3), this.topRightBorderDoubleOuterBox = i > 0 || s > 0 ? Xt(r.left + B, r.top + F / 3, o - T / 3, l - F / 3, Dt.TOP_RIGHT) : new Ye(r.left + r.width - T / 3, r.top + F / 3), this.bottomRightBorderDoubleOuterBox = f > 0 || d > 0 ? Xt(r.left + C, r.top + x, f - T / 3, d - I / 3, Dt.BOTTOM_RIGHT) : new Ye(r.left + r.width - T / 3, r.top + r.height - I / 3), this.bottomLeftBorderDoubleOuterBox = m > 0 || g > 0 ? Xt(r.left + D / 3, r.top + b, m - D / 3, g - I / 3, Dt.BOTTOM_LEFT) : new Ye(r.left + D / 3, r.top + r.height - I / 3), this.topLeftBorderDoubleInnerBox = i > 0 || s > 0 ? Xt(r.left + D * 2 / 3, r.top + F * 2 / 3, i - D * 2 / 3, s - F * 2 / 3, Dt.TOP_LEFT) : new Ye(r.left + D * 2 / 3, r.top + F * 2 / 3), this.topRightBorderDoubleInnerBox = i > 0 || s > 0 ? Xt(r.left + B, r.top + F * 2 / 3, o - T * 2 / 3, l - F * 2 / 3, Dt.TOP_RIGHT) : new Ye(r.left + r.width - T * 2 / 3, r.top + F * 2 / 3), this.bottomRightBorderDoubleInnerBox = f > 0 || d > 0 ? Xt(r.left + C, r.top + x, f - T * 2 / 3, d - I * 2 / 3, Dt.BOTTOM_RIGHT) : new Ye(r.left + r.width - T * 2 / 3, r.top + r.height - I * 2 / 3), this.bottomLeftBorderDoubleInnerBox = m > 0 || g > 0 ? Xt(r.left + D * 2 / 3, r.top + b, m - D * 2 / 3, g - I * 2 / 3, Dt.BOTTOM_LEFT) : new Ye(r.left + D * 2 / 3, r.top + r.height - I * 2 / 3), this.topLeftBorderStroke = i > 0 || s > 0 ? Xt(r.left + D / 2, r.top + F / 2, i - D / 2, s - F / 2, Dt.TOP_LEFT) : new Ye(r.left + D / 2, r.top + F / 2), this.topRightBorderStroke = i > 0 || s > 0 ? Xt(r.left + B, r.top + F / 2, o - T / 2, l - F / 2, Dt.TOP_RIGHT) : new Ye(r.left + r.width - T / 2, r.top + F / 2), this.bottomRightBorderStroke = f > 0 || d > 0 ? Xt(r.left + C, r.top + x, f - T / 2, d - I / 2, Dt.BOTTOM_RIGHT) : new Ye(r.left + r.width - T / 2, r.top + r.height - I / 2), this.bottomLeftBorderStroke = m > 0 || g > 0 ? Xt(r.left + D / 2, r.top + b, m - D / 2, g - I / 2, Dt.BOTTOM_LEFT) : new Ye(r.left + D / 2, r.top + r.height - I / 2), this.topLeftBorderBox = i > 0 || s > 0 ? Xt(r.left, r.top, i, s, Dt.TOP_LEFT) : new Ye(r.left, r.top), this.topRightBorderBox = o > 0 || l > 0 ? Xt(r.left + B, r.top, o, l, Dt.TOP_RIGHT) : new Ye(r.left + r.width, r.top), this.bottomRightBorderBox = f > 0 || d > 0 ? Xt(r.left + C, r.top + x, f, d, Dt.BOTTOM_RIGHT) : new Ye(r.left + r.width, r.top + r.height), this.bottomLeftBorderBox = m > 0 || g > 0 ? Xt(r.left, r.top + b, m, g, Dt.BOTTOM_LEFT) : new Ye(r.left, r.top + r.height), this.topLeftPaddingBox = i > 0 || s > 0 ? Xt(r.left + D, r.top + F, Math.max(0, i - D), Math.max(0, s - F), Dt.TOP_LEFT) : new Ye(r.left + D, r.top + F), this.topRightPaddingBox = o > 0 || l > 0 ? Xt(r.left + Math.min(B, r.width - T), r.top + F, B > r.width + T ? 0 : Math.max(0, o - T), Math.max(0, l - F), Dt.TOP_RIGHT) : new Ye(r.left + r.width - T, r.top + F), this.bottomRightPaddingBox = f > 0 || d > 0 ? Xt(r.left + Math.min(C, r.width - D), r.top + Math.min(x, r.height - I), Math.max(0, f - T), Math.max(0, d - I), Dt.BOTTOM_RIGHT) : new Ye(r.left + r.width - T, r.top + r.height - I), this.bottomLeftPaddingBox = m > 0 || g > 0 ? Xt(r.left + D, r.top + Math.min(b, r.height - I), Math.max(0, m - D), Math.max(0, g - I), Dt.BOTTOM_LEFT) : new Ye(r.left + D, r.top + r.height - I), this.topLeftContentBox = i > 0 || s > 0 ? Xt(r.left + D + N, r.top + F + U, Math.max(0, i - (D + N)), Math.max(0, s - (F + U)), Dt.TOP_LEFT) : new Ye(r.left + D + N, r.top + F + U), this.topRightContentBox = o > 0 || l > 0 ? Xt(r.left + Math.min(B, r.width + D + N), r.top + F + U, B > r.width + D + N ? 0 : o - D + N, l - (F + U), Dt.TOP_RIGHT) : new Ye(r.left + r.width - (T + Q), r.top + F + U), this.bottomRightContentBox = f > 0 || d > 0 ? Xt(r.left + Math.min(C, r.width - (D + N)), r.top + Math.min(x, r.height + F + U), Math.max(0, f - (T + Q)), d - (I + O), Dt.BOTTOM_RIGHT) : new Ye(r.left + r.width - (T + Q), r.top + r.height - (I + O)), this.bottomLeftContentBox = m > 0 || g > 0 ? Xt(r.left + D + N, r.top + b, Math.max(0, m - (D + N)), g - (I + O), Dt.BOTTOM_LEFT) : new Ye(r.left + D + N, r.top + r.height - (I + O))
        }
        return e
    }(),
    Dt;
(function(e) {
    e[e.TOP_LEFT = 0] = "TOP_LEFT", e[e.TOP_RIGHT = 1] = "TOP_RIGHT", e[e.BOTTOM_RIGHT = 2] = "BOTTOM_RIGHT", e[e.BOTTOM_LEFT = 3] = "BOTTOM_LEFT"
})(Dt || (Dt = {}));
var Xt = function(e, t, n, r, A) {
        var i = 4 * ((Math.sqrt(2) - 1) / 3),
            s = n * i,
            a = r * i,
            o = e + n,
            l = t + r;
        switch (A) {
            case Dt.TOP_LEFT:
                return new Lu(new Ye(e, l), new Ye(e, l - a), new Ye(o - s, t), new Ye(o, t));
            case Dt.TOP_RIGHT:
                return new Lu(new Ye(e, t), new Ye(e + s, t), new Ye(o, l - a), new Ye(o, l));
            case Dt.BOTTOM_RIGHT:
                return new Lu(new Ye(o, t), new Ye(o, t + a), new Ye(e + s, l), new Ye(e, l));
            case Dt.BOTTOM_LEFT:
            default:
                return new Lu(new Ye(o, l), new Ye(o - s, l), new Ye(e, t + a), new Ye(e, t))
        }
    },
    Qc = function(e) {
        return [e.topLeftBorderBox, e.topRightBorderBox, e.bottomRightBorderBox, e.bottomLeftBorderBox]
    },
    Zee = function(e) {
        return [e.topLeftContentBox, e.topRightContentBox, e.bottomRightContentBox, e.bottomLeftContentBox]
    },
    Uc = function(e) {
        return [e.topLeftPaddingBox, e.topRightPaddingBox, e.bottomRightPaddingBox, e.bottomLeftPaddingBox]
    },
    ete = function() {
        function e(t, n, r) {
            this.offsetX = t, this.offsetY = n, this.matrix = r, this.type = 0, this.target = 6
        }
        return e
    }(),
    ku = function() {
        function e(t, n) {
            this.path = t, this.target = n, this.type = 1
        }
        return e
    }(),
    tte = function() {
        function e(t) {
            this.opacity = t, this.type = 2, this.target = 6
        }
        return e
    }(),
    nte = function(e) {
        return e.type === 0
    },
    ux = function(e) {
        return e.type === 1
    },
    rte = function(e) {
        return e.type === 2
    },
    k7 = function(e, t) {
        return e.length === t.length ? e.some(function(n, r) {
            return n === t[r]
        }) : !1
    },
    Ate = function(e, t, n, r, A) {
        return e.map(function(i, s) {
            switch (s) {
                case 0:
                    return i.add(t, n);
                case 1:
                    return i.add(t + r, n);
                case 2:
                    return i.add(t + r, n + A);
                case 3:
                    return i.add(t, n + A)
            }
            return i
        })
    },
    cx = function() {
        function e(t) {
            this.element = t, this.inlineLevel = [], this.nonInlineLevel = [], this.negativeZIndex = [], this.zeroOrAutoZIndexOrTransformedOrOpacity = [], this.positiveZIndex = [], this.nonPositionedFloats = [], this.nonPositionedInlineLevel = []
        }
        return e
    }(),
    fx = function() {
        function e(t, n) {
            if (this.container = t, this.parent = n, this.effects = [], this.curves = new qee(this.container), this.container.styles.opacity < 1 && this.effects.push(new tte(this.container.styles.opacity)), this.container.styles.transform !== null) {
                var r = this.container.bounds.left + this.container.styles.transformOrigin[0].number,
                    A = this.container.bounds.top + this.container.styles.transformOrigin[1].number,
                    i = this.container.styles.transform;
                this.effects.push(new ete(r, A, i))
            }
            if (this.container.styles.overflowX !== 0) {
                var s = Qc(this.curves),
                    a = Uc(this.curves);
                k7(s, a) ? this.effects.push(new ku(s, 6)) : (this.effects.push(new ku(s, 2)), this.effects.push(new ku(a, 4)))
            }
        }
        return e.prototype.getEffects = function(t) {
            for (var n = [2, 3].indexOf(this.container.styles.position) === -1, r = this.parent, A = this.effects.slice(0); r;) {
                var i = r.effects.filter(function(o) {
                    return !ux(o)
                });
                if (n || r.container.styles.position !== 0 || !r.parent) {
                    if (A.unshift.apply(A, i), n = [2, 3].indexOf(r.container.styles.position) === -1, r.container.styles.overflowX !== 0) {
                        var s = Qc(r.curves),
                            a = Uc(r.curves);
                        k7(s, a) || A.unshift(new ku(a, 6))
                    }
                } else A.unshift.apply(A, i);
                r = r.parent
            }
            return A.filter(function(o) {
                return wn(o.target, t)
            })
        }, e
    }(),
    Wh = function(e, t, n, r) {
        e.container.elements.forEach(function(A) {
            var i = wn(A.flags, 4),
                s = wn(A.flags, 2),
                a = new fx(A, e);
            wn(A.styles.display, 2048) && r.push(a);
            var o = wn(A.flags, 8) ? [] : r;
            if (i || s) {
                var l = i || A.styles.isPositioned() ? n : t,
                    u = new cx(a);
                if (A.styles.isPositioned() || A.styles.opacity < 1 || A.styles.isTransformed()) {
                    var f = A.styles.zIndex.order;
                    if (f < 0) {
                        var d = 0;
                        l.negativeZIndex.some(function(m, g) {
                            return f > m.element.container.styles.zIndex.order ? (d = g, !1) : d > 0
                        }), l.negativeZIndex.splice(d, 0, u)
                    } else if (f > 0) {
                        var p = 0;
                        l.positiveZIndex.some(function(m, g) {
                            return f >= m.element.container.styles.zIndex.order ? (p = g + 1, !1) : p > 0
                        }), l.positiveZIndex.splice(p, 0, u)
                    } else l.zeroOrAutoZIndexOrTransformedOrOpacity.push(u)
                } else A.styles.isFloating() ? l.nonPositionedFloats.push(u) : l.nonPositionedInlineLevel.push(u);
                Wh(a, u, i ? u : n, o)
            } else A.styles.isInlineLevel() ? t.inlineLevel.push(a) : t.nonInlineLevel.push(a), Wh(a, t, n, o);
            wn(A.flags, 8) && dx(A, o)
        })
    },
    dx = function(e, t) {
        for (var n = e instanceof $h ? e.start : 1, r = e instanceof $h ? e.reversed : !1, A = 0; A < t.length; A++) {
            var i = t[A];
            i.container instanceof XC && typeof i.container.value == "number" && i.container.value !== 0 && (n = i.container.value), i.listValue = a0(n, i.container.styles.listStyleType, !0), n += r ? -1 : 1
        }
    },
    ite = function(e) {
        var t = new fx(e, null),
            n = new cx(t),
            r = [];
        return Wh(t, n, n, r), dx(t.container, r), n
    },
    H7 = function(e, t) {
        switch (t) {
            case 0:
                return Gr(e.topLeftBorderBox, e.topLeftPaddingBox, e.topRightBorderBox, e.topRightPaddingBox);
            case 1:
                return Gr(e.topRightBorderBox, e.topRightPaddingBox, e.bottomRightBorderBox, e.bottomRightPaddingBox);
            case 2:
                return Gr(e.bottomRightBorderBox, e.bottomRightPaddingBox, e.bottomLeftBorderBox, e.bottomLeftPaddingBox);
            case 3:
            default:
                return Gr(e.bottomLeftBorderBox, e.bottomLeftPaddingBox, e.topLeftBorderBox, e.topLeftPaddingBox)
        }
    },
    ste = function(e, t) {
        switch (t) {
            case 0:
                return Gr(e.topLeftBorderBox, e.topLeftBorderDoubleOuterBox, e.topRightBorderBox, e.topRightBorderDoubleOuterBox);
            case 1:
                return Gr(e.topRightBorderBox, e.topRightBorderDoubleOuterBox, e.bottomRightBorderBox, e.bottomRightBorderDoubleOuterBox);
            case 2:
                return Gr(e.bottomRightBorderBox, e.bottomRightBorderDoubleOuterBox, e.bottomLeftBorderBox, e.bottomLeftBorderDoubleOuterBox);
            case 3:
            default:
                return Gr(e.bottomLeftBorderBox, e.bottomLeftBorderDoubleOuterBox, e.topLeftBorderBox, e.topLeftBorderDoubleOuterBox)
        }
    },
    ate = function(e, t) {
        switch (t) {
            case 0:
                return Gr(e.topLeftBorderDoubleInnerBox, e.topLeftPaddingBox, e.topRightBorderDoubleInnerBox, e.topRightPaddingBox);
            case 1:
                return Gr(e.topRightBorderDoubleInnerBox, e.topRightPaddingBox, e.bottomRightBorderDoubleInnerBox, e.bottomRightPaddingBox);
            case 2:
                return Gr(e.bottomRightBorderDoubleInnerBox, e.bottomRightPaddingBox, e.bottomLeftBorderDoubleInnerBox, e.bottomLeftPaddingBox);
            case 3:
            default:
                return Gr(e.bottomLeftBorderDoubleInnerBox, e.bottomLeftPaddingBox, e.topLeftBorderDoubleInnerBox, e.topLeftPaddingBox)
        }
    },
    ote = function(e, t) {
        switch (t) {
            case 0:
                return Hu(e.topLeftBorderStroke, e.topRightBorderStroke);
            case 1:
                return Hu(e.topRightBorderStroke, e.bottomRightBorderStroke);
            case 2:
                return Hu(e.bottomRightBorderStroke, e.bottomLeftBorderStroke);
            case 3:
            default:
                return Hu(e.bottomLeftBorderStroke, e.topLeftBorderStroke)
        }
    },
    Hu = function(e, t) {
        var n = [];
        return Kr(e) ? n.push(e.subdivide(.5, !1)) : n.push(e), Kr(t) ? n.push(t.subdivide(.5, !0)) : n.push(t), n
    },
    Gr = function(e, t, n, r) {
        var A = [];
        return Kr(e) ? A.push(e.subdivide(.5, !1)) : A.push(e), Kr(n) ? A.push(n.subdivide(.5, !0)) : A.push(n), Kr(r) ? A.push(r.subdivide(.5, !0).reverse()) : A.push(r), Kr(t) ? A.push(t.subdivide(.5, !1).reverse()) : A.push(t), A
    },
    hx = function(e) {
        var t = e.bounds,
            n = e.styles;
        return t.add(n.borderLeftWidth, n.borderTopWidth, -(n.borderRightWidth + n.borderLeftWidth), -(n.borderTopWidth + n.borderBottomWidth))
    },
    Tc = function(e) {
        var t = e.styles,
            n = e.bounds,
            r = Kt(t.paddingLeft, n.width),
            A = Kt(t.paddingRight, n.width),
            i = Kt(t.paddingTop, n.width),
            s = Kt(t.paddingBottom, n.width);
        return n.add(r + t.borderLeftWidth, i + t.borderTopWidth, -(t.borderRightWidth + t.borderLeftWidth + r + A), -(t.borderTopWidth + t.borderBottomWidth + i + s))
    },
    lte = function(e, t) {
        return e === 0 ? t.bounds : e === 2 ? Tc(t) : hx(t)
    },
    ute = function(e, t) {
        return e === 0 ? t.bounds : e === 2 ? Tc(t) : hx(t)
    },
    a2 = function(e, t, n) {
        var r = lte(Ra(e.styles.backgroundOrigin, t), e),
            A = ute(Ra(e.styles.backgroundClip, t), e),
            i = cte(Ra(e.styles.backgroundSize, t), n, r),
            s = i[0],
            a = i[1],
            o = gl(Ra(e.styles.backgroundPosition, t), r.width - s, r.height - a),
            l = fte(Ra(e.styles.backgroundRepeat, t), o, i, r, A),
            u = Math.round(r.left + o[0]),
            f = Math.round(r.top + o[1]);
        return [l, u, f, s, a]
    },
    La = function(e) {
        return Mt(e) && e.value === Ja.AUTO
    },
    Mu = function(e) {
        return typeof e == "number"
    },
    cte = function(e, t, n) {
        var r = t[0],
            A = t[1],
            i = t[2],
            s = e[0],
            a = e[1];
        if (!s) return [0, 0];
        if (un(s) && a && un(a)) return [Kt(s, n.width), Kt(a, n.height)];
        var o = Mu(i);
        if (Mt(s) && (s.value === Ja.CONTAIN || s.value === Ja.COVER)) {
            if (Mu(i)) {
                var l = n.width / n.height;
                return l < i != (s.value === Ja.COVER) ? [n.width, n.width / i] : [n.height * i, n.height]
            }
            return [n.width, n.height]
        }
        var u = Mu(r),
            f = Mu(A),
            d = u || f;
        if (La(s) && (!a || La(a))) {
            if (u && f) return [r, A];
            if (!o && !d) return [n.width, n.height];
            if (d && o) {
                var p = u ? r : A * i,
                    m = f ? A : r / i;
                return [p, m]
            }
            var g = u ? r : n.width,
                y = f ? A : n.height;
            return [g, y]
        }
        if (o) {
            var w = 0,
                B = 0;
            return un(s) ? w = Kt(s, n.width) : un(a) && (B = Kt(a, n.height)), La(s) ? w = B * i : (!a || La(a)) && (B = w / i), [w, B]
        }
        var x = null,
            C = null;
        if (un(s) ? x = Kt(s, n.width) : a && un(a) && (C = Kt(a, n.height)), x !== null && (!a || La(a)) && (C = u && f ? x / r * A : n.height), C !== null && La(s) && (x = u && f ? C / A * r : n.width), x !== null && C !== null) return [x, C];
        throw new Error("Unable to calculate background-size for element")
    },
    Ra = function(e, t) {
        var n = e[t];
        return typeof n > "u" ? e[0] : n
    },
    fte = function(e, t, n, r, A) {
        var i = t[0],
            s = t[1],
            a = n[0],
            o = n[1];
        switch (e) {
            case 2:
                return [new Ye(Math.round(r.left), Math.round(r.top + s)), new Ye(Math.round(r.left + r.width), Math.round(r.top + s)), new Ye(Math.round(r.left + r.width), Math.round(o + r.top + s)), new Ye(Math.round(r.left), Math.round(o + r.top + s))];
            case 3:
                return [new Ye(Math.round(r.left + i), Math.round(r.top)), new Ye(Math.round(r.left + i + a), Math.round(r.top)), new Ye(Math.round(r.left + i + a), Math.round(r.height + r.top)), new Ye(Math.round(r.left + i), Math.round(r.height + r.top))];
            case 1:
                return [new Ye(Math.round(r.left + i), Math.round(r.top + s)), new Ye(Math.round(r.left + i + a), Math.round(r.top + s)), new Ye(Math.round(r.left + i + a), Math.round(r.top + s + o)), new Ye(Math.round(r.left + i), Math.round(r.top + s + o))];
            default:
                return [new Ye(Math.round(A.left), Math.round(A.top)), new Ye(Math.round(A.left + A.width), Math.round(A.top)), new Ye(Math.round(A.left + A.width), Math.round(A.height + A.top)), new Ye(Math.round(A.left), Math.round(A.height + A.top))]
        }
    },
    dte = "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",
    M7 = "Hidden Text",
    hte = function() {
        function e(t) {
            this._data = {}, this._document = t
        }
        return e.prototype.parseMetrics = function(t, n) {
            var r = this._document.createElement("div"),
                A = this._document.createElement("img"),
                i = this._document.createElement("span"),
                s = this._document.body;
            r.style.visibility = "hidden", r.style.fontFamily = t, r.style.fontSize = n, r.style.margin = "0", r.style.padding = "0", r.style.whiteSpace = "nowrap", s.appendChild(r), A.src = dte, A.width = 1, A.height = 1, A.style.margin = "0", A.style.padding = "0", A.style.verticalAlign = "baseline", i.style.fontFamily = t, i.style.fontSize = n, i.style.margin = "0", i.style.padding = "0", i.appendChild(this._document.createTextNode(M7)), r.appendChild(i), r.appendChild(A);
            var a = A.offsetTop - i.offsetTop + 2;
            r.removeChild(i), r.appendChild(this._document.createTextNode(M7)), r.style.lineHeight = "normal", A.style.verticalAlign = "super";
            var o = A.offsetTop - r.offsetTop + 2;
            return s.removeChild(r), {
                baseline: a,
                middle: o
            }
        }, e.prototype.getMetrics = function(t, n) {
            var r = t + " " + n;
            return typeof this._data[r] > "u" && (this._data[r] = this.parseMetrics(t, n)), this._data[r]
        }, e
    }(),
    px = function() {
        function e(t, n) {
            this.context = t, this.options = n
        }
        return e
    }(),
    pte = 1e4,
    gte = function(e) {
        lA(t, e);

        function t(n, r) {
            var A = e.call(this, n, r) || this;
            return A._activeEffects = [], A.canvas = r.canvas ? r.canvas : document.createElement("canvas"), A.ctx = A.canvas.getContext("2d"), r.canvas || (A.canvas.width = Math.floor(r.width * r.scale), A.canvas.height = Math.floor(r.height * r.scale), A.canvas.style.width = r.width + "px", A.canvas.style.height = r.height + "px"), A.fontMetrics = new hte(document), A.ctx.scale(A.options.scale, A.options.scale), A.ctx.translate(-r.x, -r.y), A.ctx.textBaseline = "bottom", A._activeEffects = [], A.context.logger.debug("Canvas renderer initialized (" + r.width + "x" + r.height + ") with scale " + r.scale), A
        }
        return t.prototype.applyEffects = function(n) {
            for (var r = this; this._activeEffects.length;) this.popEffect();
            n.forEach(function(A) {
                return r.applyEffect(A)
            })
        }, t.prototype.applyEffect = function(n) {
            this.ctx.save(), rte(n) && (this.ctx.globalAlpha = n.opacity), nte(n) && (this.ctx.translate(n.offsetX, n.offsetY), this.ctx.transform(n.matrix[0], n.matrix[1], n.matrix[2], n.matrix[3], n.matrix[4], n.matrix[5]), this.ctx.translate(-n.offsetX, -n.offsetY)), ux(n) && (this.path(n.path), this.ctx.clip()), this._activeEffects.push(n)
        }, t.prototype.popEffect = function() {
            this._activeEffects.pop(), this.ctx.restore()
        }, t.prototype.renderStack = function(n) {
            return tr(this, void 0, void 0, function() {
                var r;
                return jn(this, function(A) {
                    switch (A.label) {
                        case 0:
                            return r = n.element.container.styles, r.isVisible() ? [4, this.renderStackContent(n)] : [3, 2];
                        case 1:
                            A.sent(), A.label = 2;
                        case 2:
                            return [2]
                    }
                })
            })
        }, t.prototype.renderNode = function(n) {
            return tr(this, void 0, void 0, function() {
                return jn(this, function(r) {
                    switch (r.label) {
                        case 0:
                            if (wn(n.container.flags, 16)) debugger;
                            return n.container.styles.isVisible() ? [4, this.renderNodeBackgroundAndBorders(n)] : [3, 3];
                        case 1:
                            return r.sent(), [4, this.renderNodeContent(n)];
                        case 2:
                            r.sent(), r.label = 3;
                        case 3:
                            return [2]
                    }
                })
            })
        }, t.prototype.renderTextWithLetterSpacing = function(n, r, A) {
            var i = this;
            if (r === 0) this.ctx.fillText(n.text, n.bounds.left, n.bounds.top + A);
            else {
                var s = p5(n.text);
                s.reduce(function(a, o) {
                    return i.ctx.fillText(o, a, n.bounds.top + A), a + i.ctx.measureText(o).width
                }, n.bounds.left)
            }
        }, t.prototype.createFontStyle = function(n) {
            var r = n.fontVariant.filter(function(s) {
                    return s === "normal" || s === "small-caps"
                }).join(""),
                A = yte(n.fontFamily).join(", "),
                i = T0(n.fontSize) ? "" + n.fontSize.number + n.fontSize.unit : n.fontSize.number + "px";
            return [
                [n.fontStyle, r, n.fontWeight, i, A].join(" "), A, i
            ]
        }, t.prototype.renderTextNode = function(n, r) {
            return tr(this, void 0, void 0, function() {
                var A, i, s, a, o, l, u, f, d = this;
                return jn(this, function(p) {
                    return A = this.createFontStyle(r), i = A[0], s = A[1], a = A[2], this.ctx.font = i, this.ctx.direction = r.direction === 1 ? "rtl" : "ltr", this.ctx.textAlign = "left", this.ctx.textBaseline = "alphabetic", o = this.fontMetrics.getMetrics(s, a), l = o.baseline, u = o.middle, f = r.paintOrder, n.textBounds.forEach(function(m) {
                        f.forEach(function(g) {
                            switch (g) {
                                case 0:
                                    d.ctx.fillStyle = Un(r.color), d.renderTextWithLetterSpacing(m, r.letterSpacing, l);
                                    var y = r.textShadow;
                                    y.length && m.text.trim().length && (y.slice(0).reverse().forEach(function(w) {
                                        d.ctx.shadowColor = Un(w.color), d.ctx.shadowOffsetX = w.offsetX.number * d.options.scale, d.ctx.shadowOffsetY = w.offsetY.number * d.options.scale, d.ctx.shadowBlur = w.blur.number, d.renderTextWithLetterSpacing(m, r.letterSpacing, l)
                                    }), d.ctx.shadowColor = "", d.ctx.shadowOffsetX = 0, d.ctx.shadowOffsetY = 0, d.ctx.shadowBlur = 0), r.textDecorationLine.length && (d.ctx.fillStyle = Un(r.textDecorationColor || r.color), r.textDecorationLine.forEach(function(w) {
                                        switch (w) {
                                            case 1:
                                                d.ctx.fillRect(m.bounds.left, Math.round(m.bounds.top + l), m.bounds.width, 1);
                                                break;
                                            case 2:
                                                d.ctx.fillRect(m.bounds.left, Math.round(m.bounds.top), m.bounds.width, 1);
                                                break;
                                            case 3:
                                                d.ctx.fillRect(m.bounds.left, Math.ceil(m.bounds.top + u), m.bounds.width, 1);
                                                break
                                        }
                                    }));
                                    break;
                                case 1:
                                    r.webkitTextStrokeWidth && m.text.trim().length && (d.ctx.strokeStyle = Un(r.webkitTextStrokeColor), d.ctx.lineWidth = r.webkitTextStrokeWidth, d.ctx.lineJoin = window.chrome ? "miter" : "round", d.ctx.strokeText(m.text, m.bounds.left, m.bounds.top + l)), d.ctx.strokeStyle = "", d.ctx.lineWidth = 0, d.ctx.lineJoin = "miter";
                                    break
                            }
                        })
                    }), [2]
                })
            })
        }, t.prototype.renderReplacedElement = function(n, r, A) {
            if (A && n.intrinsicWidth > 0 && n.intrinsicHeight > 0) {
                var i = Tc(n),
                    s = Uc(r);
                this.path(s), this.ctx.save(), this.ctx.clip(), this.ctx.drawImage(A, 0, 0, n.intrinsicWidth, n.intrinsicHeight, i.left, i.top, i.width, i.height), this.ctx.restore()
            }
        }, t.prototype.renderNodeContent = function(n) {
            return tr(this, void 0, void 0, function() {
                var r, A, i, s, a, o, B, B, l, u, f, d, C, p, m, b, g, y, w, B, x, C, b;
                return jn(this, function(F) {
                    switch (F.label) {
                        case 0:
                            this.applyEffects(n.getEffects(4)), r = n.container, A = n.curves, i = r.styles, s = 0, a = r.textNodes, F.label = 1;
                        case 1:
                            return s < a.length ? (o = a[s], [4, this.renderTextNode(o, i)]) : [3, 4];
                        case 2:
                            F.sent(), F.label = 3;
                        case 3:
                            return s++, [3, 1];
                        case 4:
                            if (!(r instanceof WC)) return [3, 8];
                            F.label = 5;
                        case 5:
                            return F.trys.push([5, 7, , 8]), [4, this.context.cache.match(r.src)];
                        case 6:
                            return B = F.sent(), this.renderReplacedElement(r, A, B), [3, 8];
                        case 7:
                            return F.sent(), this.context.logger.error("Error loading image " + r.src), [3, 8];
                        case 8:
                            if (r instanceof jC && this.renderReplacedElement(r, A, r.canvas), !(r instanceof YC)) return [3, 12];
                            F.label = 9;
                        case 9:
                            return F.trys.push([9, 11, , 12]), [4, this.context.cache.match(r.svg)];
                        case 10:
                            return B = F.sent(), this.renderReplacedElement(r, A, B), [3, 12];
                        case 11:
                            return F.sent(), this.context.logger.error("Error loading svg " + r.svg.substring(0, 255)), [3, 12];
                        case 12:
                            return r instanceof ZC && r.tree ? (l = new t(this.context, {
                                scale: this.options.scale,
                                backgroundColor: r.backgroundColor,
                                x: 0,
                                y: 0,
                                width: r.width,
                                height: r.height
                            }), [4, l.render(r.tree)]) : [3, 14];
                        case 13:
                            u = F.sent(), r.width && r.height && this.ctx.drawImage(u, 0, 0, r.width, r.height, r.bounds.left, r.bounds.top, r.bounds.width, r.bounds.height), F.label = 14;
                        case 14:
                            if (r instanceof g5 && (f = Math.min(r.bounds.width, r.bounds.height), r.type === bc ? r.checked && (this.ctx.save(), this.path([new Ye(r.bounds.left + f * .39363, r.bounds.top + f * .79), new Ye(r.bounds.left + f * .16, r.bounds.top + f * .5549), new Ye(r.bounds.left + f * .27347, r.bounds.top + f * .44071), new Ye(r.bounds.left + f * .39694, r.bounds.top + f * .5649), new Ye(r.bounds.left + f * .72983, r.bounds.top + f * .23), new Ye(r.bounds.left + f * .84, r.bounds.top + f * .34085), new Ye(r.bounds.left + f * .39363, r.bounds.top + f * .79)]), this.ctx.fillStyle = Un(F7), this.ctx.fill(), this.ctx.restore()) : r.type === Fc && r.checked && (this.ctx.save(), this.ctx.beginPath(), this.ctx.arc(r.bounds.left + f / 2, r.bounds.top + f / 2, f / 4, 0, Math.PI * 2, !0), this.ctx.fillStyle = Un(F7), this.ctx.fill(), this.ctx.restore())), vte(r) && r.value.length) {
                                switch (d = this.createFontStyle(i), C = d[0], p = d[1], m = this.fontMetrics.getMetrics(C, p).baseline, this.ctx.font = C, this.ctx.fillStyle = Un(i.color), this.ctx.textBaseline = "alphabetic", this.ctx.textAlign = Bte(r.styles.textAlign), b = Tc(r), g = 0, r.styles.textAlign) {
                                    case 1:
                                        g += b.width / 2;
                                        break;
                                    case 2:
                                        g += b.width;
                                        break
                                }
                                y = b.add(g, 0, 0, -b.height / 2 + 1), this.ctx.save(), this.path([new Ye(b.left, b.top), new Ye(b.left + b.width, b.top), new Ye(b.left + b.width, b.top + b.height), new Ye(b.left, b.top + b.height)]), this.ctx.clip(), this.renderTextWithLetterSpacing(new Hl(r.value, y), i.letterSpacing, m), this.ctx.restore(), this.ctx.textBaseline = "alphabetic", this.ctx.textAlign = "left"
                            }
                            if (!wn(r.styles.display, 2048)) return [3, 20];
                            if (r.styles.listStyleImage === null) return [3, 19];
                            if (w = r.styles.listStyleImage, w.type !== 0) return [3, 18];
                            B = void 0, x = w.url, F.label = 15;
                        case 15:
                            return F.trys.push([15, 17, , 18]), [4, this.context.cache.match(x)];
                        case 16:
                            return B = F.sent(), this.ctx.drawImage(B, r.bounds.left - (B.width + 10), r.bounds.top), [3, 18];
                        case 17:
                            return F.sent(), this.context.logger.error("Error loading list-style-image " + x), [3, 18];
                        case 18:
                            return [3, 20];
                        case 19:
                            n.listValue && r.styles.listStyleType !== -1 && (C = this.createFontStyle(i)[0], this.ctx.font = C, this.ctx.fillStyle = Un(i.color), this.ctx.textBaseline = "middle", this.ctx.textAlign = "right", b = new li(r.bounds.left, r.bounds.top + Kt(r.styles.paddingTop, r.bounds.width), r.bounds.width, l7(i.lineHeight, i.fontSize.number) / 2 + 1), this.renderTextWithLetterSpacing(new Hl(n.listValue, b), i.letterSpacing, l7(i.lineHeight, i.fontSize.number) / 2 + 2), this.ctx.textBaseline = "bottom", this.ctx.textAlign = "left"), F.label = 20;
                        case 20:
                            return [2]
                    }
                })
            })
        }, t.prototype.renderStackContent = function(n) {
            return tr(this, void 0, void 0, function() {
                var r, A, w, i, s, w, a, o, w, l, u, w, f, d, w, p, m, w, g, y, w;
                return jn(this, function(B) {
                    switch (B.label) {
                        case 0:
                            if (wn(n.element.container.flags, 16)) debugger;
                            return [4, this.renderNodeBackgroundAndBorders(n.element)];
                        case 1:
                            B.sent(), r = 0, A = n.negativeZIndex, B.label = 2;
                        case 2:
                            return r < A.length ? (w = A[r], [4, this.renderStack(w)]) : [3, 5];
                        case 3:
                            B.sent(), B.label = 4;
                        case 4:
                            return r++, [3, 2];
                        case 5:
                            return [4, this.renderNodeContent(n.element)];
                        case 6:
                            B.sent(), i = 0, s = n.nonInlineLevel, B.label = 7;
                        case 7:
                            return i < s.length ? (w = s[i], [4, this.renderNode(w)]) : [3, 10];
                        case 8:
                            B.sent(), B.label = 9;
                        case 9:
                            return i++, [3, 7];
                        case 10:
                            a = 0, o = n.nonPositionedFloats, B.label = 11;
                        case 11:
                            return a < o.length ? (w = o[a], [4, this.renderStack(w)]) : [3, 14];
                        case 12:
                            B.sent(), B.label = 13;
                        case 13:
                            return a++, [3, 11];
                        case 14:
                            l = 0, u = n.nonPositionedInlineLevel, B.label = 15;
                        case 15:
                            return l < u.length ? (w = u[l], [4, this.renderStack(w)]) : [3, 18];
                        case 16:
                            B.sent(), B.label = 17;
                        case 17:
                            return l++, [3, 15];
                        case 18:
                            f = 0, d = n.inlineLevel, B.label = 19;
                        case 19:
                            return f < d.length ? (w = d[f], [4, this.renderNode(w)]) : [3, 22];
                        case 20:
                            B.sent(), B.label = 21;
                        case 21:
                            return f++, [3, 19];
                        case 22:
                            p = 0, m = n.zeroOrAutoZIndexOrTransformedOrOpacity, B.label = 23;
                        case 23:
                            return p < m.length ? (w = m[p], [4, this.renderStack(w)]) : [3, 26];
                        case 24:
                            B.sent(), B.label = 25;
                        case 25:
                            return p++, [3, 23];
                        case 26:
                            g = 0, y = n.positiveZIndex, B.label = 27;
                        case 27:
                            return g < y.length ? (w = y[g], [4, this.renderStack(w)]) : [3, 30];
                        case 28:
                            B.sent(), B.label = 29;
                        case 29:
                            return g++, [3, 27];
                        case 30:
                            return [2]
                    }
                })
            })
        }, t.prototype.mask = function(n) {
            this.ctx.beginPath(), this.ctx.moveTo(0, 0), this.ctx.lineTo(this.canvas.width, 0), this.ctx.lineTo(this.canvas.width, this.canvas.height), this.ctx.lineTo(0, this.canvas.height), this.ctx.lineTo(0, 0), this.formatPath(n.slice(0).reverse()), this.ctx.closePath()
        }, t.prototype.path = function(n) {
            this.ctx.beginPath(), this.formatPath(n), this.ctx.closePath()
        }, t.prototype.formatPath = function(n) {
            var r = this;
            n.forEach(function(A, i) {
                var s = Kr(A) ? A.start : A;
                i === 0 ? r.ctx.moveTo(s.x, s.y) : r.ctx.lineTo(s.x, s.y), Kr(A) && r.ctx.bezierCurveTo(A.startControl.x, A.startControl.y, A.endControl.x, A.endControl.y, A.end.x, A.end.y)
            })
        }, t.prototype.renderRepeat = function(n, r, A, i) {
            this.path(n), this.ctx.fillStyle = r, this.ctx.translate(A, i), this.ctx.fill(), this.ctx.translate(-A, -i)
        }, t.prototype.resizeImage = function(n, r, A) {
            var i;
            if (n.width === r && n.height === A) return n;
            var s = (i = this.canvas.ownerDocument) !== null && i !== void 0 ? i : document,
                a = s.createElement("canvas");
            a.width = Math.max(1, r), a.height = Math.max(1, A);
            var o = a.getContext("2d");
            return o.drawImage(n, 0, 0, n.width, n.height, 0, 0, r, A), a
        }, t.prototype.renderBackgroundImage = function(n) {
            return tr(this, void 0, void 0, function() {
                var r, A, i, s, a, o;
                return jn(this, function(l) {
                    switch (l.label) {
                        case 0:
                            r = n.styles.backgroundImage.length - 1, A = function(u) {
                                var f, d, p, U, V, ae, N, J, I, m, U, V, ae, N, J, g, y, w, B, x, C, b, F, T, I, D, U, Q, O, N, J, j, V, ae, Y, ue, ye, ee, ce, ve, xe, se;
                                return jn(this, function(Fe) {
                                    switch (Fe.label) {
                                        case 0:
                                            if (u.type !== 0) return [3, 5];
                                            f = void 0, d = u.url, Fe.label = 1;
                                        case 1:
                                            return Fe.trys.push([1, 3, , 4]), [4, i.context.cache.match(d)];
                                        case 2:
                                            return f = Fe.sent(), [3, 4];
                                        case 3:
                                            return Fe.sent(), i.context.logger.error("Error loading background-image " + d), [3, 4];
                                        case 4:
                                            return f && (p = a2(n, r, [f.width, f.height, f.width / f.height]), U = p[0], V = p[1], ae = p[2], N = p[3], J = p[4], I = i.ctx.createPattern(i.resizeImage(f, N, J), "repeat"), i.renderRepeat(U, I, V, ae)), [3, 6];
                                        case 5:
                                            nq(u) ? (m = a2(n, r, [null, null, null]), U = m[0], V = m[1], ae = m[2], N = m[3], J = m[4], g = JJ(u.angle, N, J), y = g[0], w = g[1], B = g[2], x = g[3], C = g[4], b = document.createElement("canvas"), b.width = N, b.height = J, F = b.getContext("2d"), T = F.createLinearGradient(w, x, B, C), a7(u.stops, y).forEach(function(ie) {
                                                return T.addColorStop(ie.stop, Un(ie.color))
                                            }), F.fillStyle = T, F.fillRect(0, 0, N, J), N > 0 && J > 0 && (I = i.ctx.createPattern(b, "repeat"), i.renderRepeat(U, I, V, ae))) : rq(u) && (D = a2(n, r, [null, null, null]), U = D[0], Q = D[1], O = D[2], N = D[3], J = D[4], j = u.position.length === 0 ? [f5] : u.position, V = Kt(j[0], N), ae = Kt(j[j.length - 1], J), Y = qJ(u, V, ae, N, J), ue = Y[0], ye = Y[1], ue > 0 && ye > 0 && (ee = i.ctx.createRadialGradient(Q + V, O + ae, 0, Q + V, O + ae, ue), a7(u.stops, ue * 2).forEach(function(ie) {
                                                return ee.addColorStop(ie.stop, Un(ie.color))
                                            }), i.path(U), i.ctx.fillStyle = ee, ue !== ye ? (ce = n.bounds.left + .5 * n.bounds.width, ve = n.bounds.top + .5 * n.bounds.height, xe = ye / ue, se = 1 / xe, i.ctx.save(), i.ctx.translate(ce, ve), i.ctx.transform(1, 0, 0, xe, 0, 0), i.ctx.translate(-ce, -ve), i.ctx.fillRect(Q, se * (O - ve) + ve, N, J * se), i.ctx.restore()) : i.ctx.fill())), Fe.label = 6;
                                        case 6:
                                            return r--, [2]
                                    }
                                })
                            }, i = this, s = 0, a = n.styles.backgroundImage.slice(0).reverse(), l.label = 1;
                        case 1:
                            return s < a.length ? (o = a[s], [5, A(o)]) : [3, 4];
                        case 2:
                            l.sent(), l.label = 3;
                        case 3:
                            return s++, [3, 1];
                        case 4:
                            return [2]
                    }
                })
            })
        }, t.prototype.renderSolidBorder = function(n, r, A) {
            return tr(this, void 0, void 0, function() {
                return jn(this, function(i) {
                    return this.path(H7(A, r)), this.ctx.fillStyle = Un(n), this.ctx.fill(), [2]
                })
            })
        }, t.prototype.renderDoubleBorder = function(n, r, A, i) {
            return tr(this, void 0, void 0, function() {
                var s, a;
                return jn(this, function(o) {
                    switch (o.label) {
                        case 0:
                            return r < 3 ? [4, this.renderSolidBorder(n, A, i)] : [3, 2];
                        case 1:
                            return o.sent(), [2];
                        case 2:
                            return s = ste(i, A), this.path(s), this.ctx.fillStyle = Un(n), this.ctx.fill(), a = ate(i, A), this.path(a), this.ctx.fill(), [2]
                    }
                })
            })
        }, t.prototype.renderNodeBackgroundAndBorders = function(n) {
            return tr(this, void 0, void 0, function() {
                var r, A, i, s, a, o, l, u, f = this;
                return jn(this, function(d) {
                    switch (d.label) {
                        case 0:
                            return this.applyEffects(n.getEffects(2)), r = n.container.styles, A = !es(r.backgroundColor) || r.backgroundImage.length, i = [{
                                style: r.borderTopStyle,
                                color: r.borderTopColor,
                                width: r.borderTopWidth
                            }, {
                                style: r.borderRightStyle,
                                color: r.borderRightColor,
                                width: r.borderRightWidth
                            }, {
                                style: r.borderBottomStyle,
                                color: r.borderBottomColor,
                                width: r.borderBottomWidth
                            }, {
                                style: r.borderLeftStyle,
                                color: r.borderLeftColor,
                                width: r.borderLeftWidth
                            }], s = mte(Ra(r.backgroundClip, 0), n.curves), A || r.boxShadow.length ? (this.ctx.save(), this.path(s), this.ctx.clip(), es(r.backgroundColor) || (this.ctx.fillStyle = Un(r.backgroundColor), this.ctx.fill()), [4, this.renderBackgroundImage(n.container)]) : [3, 2];
                        case 1:
                            d.sent(), this.ctx.restore(), r.boxShadow.slice(0).reverse().forEach(function(p) {
                                f.ctx.save();
                                var m = Qc(n.curves),
                                    g = p.inset ? 0 : pte,
                                    y = Ate(m, -g + (p.inset ? 1 : -1) * p.spread.number, (p.inset ? 1 : -1) * p.spread.number, p.spread.number * (p.inset ? -2 : 2), p.spread.number * (p.inset ? -2 : 2));
                                p.inset ? (f.path(m), f.ctx.clip(), f.mask(y)) : (f.mask(m), f.ctx.clip(), f.path(y)), f.ctx.shadowOffsetX = p.offsetX.number + g, f.ctx.shadowOffsetY = p.offsetY.number, f.ctx.shadowColor = Un(p.color), f.ctx.shadowBlur = p.blur.number, f.ctx.fillStyle = p.inset ? Un(p.color) : "rgba(0,0,0,1)", f.ctx.fill(), f.ctx.restore()
                            }), d.label = 2;
                        case 2:
                            a = 0, o = 0, l = i, d.label = 3;
                        case 3:
                            return o < l.length ? (u = l[o], u.style !== 0 && !es(u.color) && u.width > 0 ? u.style !== 2 ? [3, 5] : [4, this.renderDashedDottedBorder(u.color, u.width, a, n.curves, 2)] : [3, 11]) : [3, 13];
                        case 4:
                            return d.sent(), [3, 11];
                        case 5:
                            return u.style !== 3 ? [3, 7] : [4, this.renderDashedDottedBorder(u.color, u.width, a, n.curves, 3)];
                        case 6:
                            return d.sent(), [3, 11];
                        case 7:
                            return u.style !== 4 ? [3, 9] : [4, this.renderDoubleBorder(u.color, u.width, a, n.curves)];
                        case 8:
                            return d.sent(), [3, 11];
                        case 9:
                            return [4, this.renderSolidBorder(u.color, a, n.curves)];
                        case 10:
                            d.sent(), d.label = 11;
                        case 11:
                            a++, d.label = 12;
                        case 12:
                            return o++, [3, 3];
                        case 13:
                            return [2]
                    }
                })
            })
        }, t.prototype.renderDashedDottedBorder = function(n, r, A, i, s) {
            return tr(this, void 0, void 0, function() {
                var a, o, l, u, f, d, p, m, g, y, w, B, x, C, b, F, b, F;
                return jn(this, function(T) {
                    return this.ctx.save(), a = ote(i, A), o = H7(i, A), s === 2 && (this.path(o), this.ctx.clip()), Kr(o[0]) ? (l = o[0].start.x, u = o[0].start.y) : (l = o[0].x, u = o[0].y), Kr(o[1]) ? (f = o[1].end.x, d = o[1].end.y) : (f = o[1].x, d = o[1].y), A === 0 || A === 2 ? p = Math.abs(l - f) : p = Math.abs(u - d), this.ctx.beginPath(), s === 3 ? this.formatPath(a) : this.formatPath(o.slice(0, 2)), m = r < 3 ? r * 3 : r * 2, g = r < 3 ? r * 2 : r, s === 3 && (m = r, g = r), y = !0, p <= m * 2 ? y = !1 : p <= m * 2 + g ? (w = p / (2 * m + g), m *= w, g *= w) : (B = Math.floor((p + g) / (m + g)), x = (p - B * m) / (B - 1), C = (p - (B + 1) * m) / B, g = C <= 0 || Math.abs(g - x) < Math.abs(g - C) ? x : C), y && (s === 3 ? this.ctx.setLineDash([0, m + g]) : this.ctx.setLineDash([m, g])), s === 3 ? (this.ctx.lineCap = "round", this.ctx.lineWidth = r) : this.ctx.lineWidth = r * 2 + 1.1, this.ctx.strokeStyle = Un(n), this.ctx.stroke(), this.ctx.setLineDash([]), s === 2 && (Kr(o[0]) && (b = o[3], F = o[0], this.ctx.beginPath(), this.formatPath([new Ye(b.end.x, b.end.y), new Ye(F.start.x, F.start.y)]), this.ctx.stroke()), Kr(o[1]) && (b = o[1], F = o[2], this.ctx.beginPath(), this.formatPath([new Ye(b.end.x, b.end.y), new Ye(F.start.x, F.start.y)]), this.ctx.stroke())), this.ctx.restore(), [2]
                })
            })
        }, t.prototype.render = function(n) {
            return tr(this, void 0, void 0, function() {
                var r;
                return jn(this, function(A) {
                    switch (A.label) {
                        case 0:
                            return this.options.backgroundColor && (this.ctx.fillStyle = Un(this.options.backgroundColor), this.ctx.fillRect(this.options.x, this.options.y, this.options.width, this.options.height)), r = ite(n), [4, this.renderStack(r)];
                        case 1:
                            return A.sent(), this.applyEffects([]), [2, this.canvas]
                    }
                })
            })
        }, t
    }(px),
    vte = function(e) {
        return e instanceof qC || e instanceof JC ? !0 : e instanceof g5 && e.type !== Fc && e.type !== bc
    },
    mte = function(e, t) {
        switch (e) {
            case 0:
                return Qc(t);
            case 2:
                return Zee(t);
            case 1:
            default:
                return Uc(t)
        }
    },
    Bte = function(e) {
        switch (e) {
            case 1:
                return "center";
            case 2:
                return "right";
            case 0:
            default:
                return "left"
        }
    },
    wte = ["-apple-system", "system-ui"],
    yte = function(e) {
        return /iPhone OS 15_(0|1)/.test(window.navigator.userAgent) ? e.filter(function(t) {
            return wte.indexOf(t) === -1
        }) : e
    },
    Cte = function(e) {
        lA(t, e);

        function t(n, r) {
            var A = e.call(this, n, r) || this;
            return A.canvas = r.canvas ? r.canvas : document.createElement("canvas"), A.ctx = A.canvas.getContext("2d"), A.options = r, A.canvas.width = Math.floor(r.width * r.scale), A.canvas.height = Math.floor(r.height * r.scale), A.canvas.style.width = r.width + "px", A.canvas.style.height = r.height + "px", A.ctx.scale(A.options.scale, A.options.scale), A.ctx.translate(-r.x, -r.y), A.context.logger.debug("EXPERIMENTAL ForeignObject renderer initialized (" + r.width + "x" + r.height + " at " + r.x + "," + r.y + ") with scale " + r.scale), A
        }
        return t.prototype.render = function(n) {
            return tr(this, void 0, void 0, function() {
                var r, A;
                return jn(this, function(i) {
                    switch (i.label) {
                        case 0:
                            return r = Nh(this.options.width * this.options.scale, this.options.height * this.options.scale, this.options.scale, this.options.scale, n), [4, xte(r)];
                        case 1:
                            return A = i.sent(), this.options.backgroundColor && (this.ctx.fillStyle = Un(this.options.backgroundColor), this.ctx.fillRect(0, 0, this.options.width * this.options.scale, this.options.height * this.options.scale)), this.ctx.drawImage(A, -this.options.x * this.options.scale, -this.options.y * this.options.scale), [2, this.canvas]
                    }
                })
            })
        }, t
    }(px),
    xte = function(e) {
        return new Promise(function(t, n) {
            var r = new Image;
            r.onload = function() {
                t(r)
            }, r.onerror = n, r.src = "data:image/svg+xml;charset=utf-8," + encodeURIComponent(new XMLSerializer().serializeToString(e))
        })
    },
    Ete = function() {
        function e(t) {
            var n = t.id,
                r = t.enabled;
            this.id = n, this.enabled = r, this.start = Date.now()
        }
        return e.prototype.debug = function() {
            for (var t = [], n = 0; n < arguments.length; n++) t[n] = arguments[n];
            this.enabled && (typeof window < "u" && window.console && typeof console.debug == "function" ? console.debug.apply(console, vu([this.id, this.getTime() + "ms"], t)) : this.info.apply(this, t))
        }, e.prototype.getTime = function() {
            return Date.now() - this.start
        }, e.prototype.info = function() {
            for (var t = [], n = 0; n < arguments.length; n++) t[n] = arguments[n];
            this.enabled && typeof window < "u" && window.console && typeof console.info == "function" && console.info.apply(console, vu([this.id, this.getTime() + "ms"], t))
        }, e.prototype.warn = function() {
            for (var t = [], n = 0; n < arguments.length; n++) t[n] = arguments[n];
            this.enabled && (typeof window < "u" && window.console && typeof console.warn == "function" ? console.warn.apply(console, vu([this.id, this.getTime() + "ms"], t)) : this.info.apply(this, t))
        }, e.prototype.error = function() {
            for (var t = [], n = 0; n < arguments.length; n++) t[n] = arguments[n];
            this.enabled && (typeof window < "u" && window.console && typeof console.error == "function" ? console.error.apply(console, vu([this.id, this.getTime() + "ms"], t)) : this.info.apply(this, t))
        }, e.instances = {}, e
    }(),
    bte = function() {
        function e(t, n) {
            var r;
            this.windowBounds = n, this.instanceName = "#" + e.instanceCount++, this.logger = new Ete({
                id: this.instanceName,
                enabled: t.logging
            }), this.cache = (r = t.cache) !== null && r !== void 0 ? r : new Gee(this, t)
        }
        return e.instanceCount = 1, e
    }(),
    wre = function(e, t) {
        return t === void 0 && (t = {}), Fte(e, t)
    };
typeof window < "u" && lx.setContext(window);
var Fte = function(e, t) {
        return tr(void 0, void 0, void 0, function() {
            var n, r, A, i, s, a, o, l, u, f, d, p, m, g, y, w, B, x, C, b, T, F, T, I, D, U, Q, O, N, J, j, V, ae, Y, ue, ye, ee, ce, ve, xe;
            return jn(this, function(se) {
                switch (se.label) {
                    case 0:
                        if (!e || typeof e != "object") return [2, Promise.reject("Invalid element provided as first argument")];
                        if (n = e.ownerDocument, !n) throw new Error("Element is not attached to a Document");
                        if (r = n.defaultView, !r) throw new Error("Document is not attached to a Window");
                        return A = {
                            allowTaint: (I = t.allowTaint) !== null && I !== void 0 ? I : !1,
                            imageTimeout: (D = t.imageTimeout) !== null && D !== void 0 ? D : 15e3,
                            proxy: t.proxy,
                            useCORS: (U = t.useCORS) !== null && U !== void 0 ? U : !1
                        }, i = Fh({
                            logging: (Q = t.logging) !== null && Q !== void 0 ? Q : !0,
                            cache: t.cache
                        }, A), s = {
                            windowWidth: (O = t.windowWidth) !== null && O !== void 0 ? O : r.innerWidth,
                            windowHeight: (N = t.windowHeight) !== null && N !== void 0 ? N : r.innerHeight,
                            scrollX: (J = t.scrollX) !== null && J !== void 0 ? J : r.pageXOffset,
                            scrollY: (j = t.scrollY) !== null && j !== void 0 ? j : r.pageYOffset
                        }, a = new li(s.scrollX, s.scrollY, s.windowWidth, s.windowHeight), o = new bte(i, a), l = (V = t.foreignObjectRendering) !== null && V !== void 0 ? V : !1, u = {
                            allowTaint: (ae = t.allowTaint) !== null && ae !== void 0 ? ae : !1,
                            onclone: t.onclone,
                            ignoreElements: t.ignoreElements,
                            inlineImages: l,
                            copyStyles: l
                        }, o.logger.debug("Starting document clone with size " + a.width + "x" + a.height + " scrolled to " + -a.left + "," + -a.top), f = new O7(o, e, u), d = f.clonedReferenceElement, d ? [4, f.toIFrame(n, a)] : [2, Promise.reject("Unable to find element in cloned iframe")];
                    case 1:
                        return p = se.sent(), m = v5(d) || See(d) ? AX(d.ownerDocument) : Nf(o, d), g = m.width, y = m.height, w = m.left, B = m.top, x = _te(o, d, t.backgroundColor), C = {
                            canvas: t.canvas,
                            backgroundColor: x,
                            scale: (ue = (Y = t.scale) !== null && Y !== void 0 ? Y : r.devicePixelRatio) !== null && ue !== void 0 ? ue : 1,
                            x: ((ye = t.x) !== null && ye !== void 0 ? ye : 0) + w,
                            y: ((ee = t.y) !== null && ee !== void 0 ? ee : 0) + B,
                            width: (ce = t.width) !== null && ce !== void 0 ? ce : Math.ceil(g),
                            height: (ve = t.height) !== null && ve !== void 0 ? ve : Math.ceil(y)
                        }, l ? (o.logger.debug("Document cloned, using foreign object rendering"), T = new Cte(o, C), [4, T.render(d)]) : [3, 3];
                    case 2:
                        return b = se.sent(), [3, 5];
                    case 3:
                        return o.logger.debug("Document cloned, element located at " + w + "," + B + " with size " + g + "x" + y + " using computed rendering"), o.logger.debug("Starting DOM parsing"), F = tx(o, d), x === F.styles.backgroundColor && (F.styles.backgroundColor = ni.TRANSPARENT), o.logger.debug("Starting renderer for element at " + C.x + "," + C.y + " with size " + C.width + "x" + C.height), T = new gte(o, C), [4, T.render(F)];
                    case 4:
                        b = se.sent(), se.label = 5;
                    case 5:
                        return (!((xe = t.removeContainer) !== null && xe !== void 0) || xe) && (O7.destroy(p) || o.logger.error("Cannot detach cloned iframe as it is not in the DOM anymore")), o.logger.debug("Finished rendering"), [2, b]
                }
            })
        })
    },
    _te = function(e, t, n) {
        var r = t.ownerDocument,
            A = r.documentElement ? Ll(e, getComputedStyle(r.documentElement).backgroundColor) : ni.TRANSPARENT,
            i = r.body ? Ll(e, getComputedStyle(r.body).backgroundColor) : ni.TRANSPARENT,
            s = typeof n == "string" ? Ll(e, n) : n === null ? ni.TRANSPARENT : 4294967295;
        return t === r.documentElement ? es(A) ? es(i) ? s : i : A : s
    };
const gx = new Set,
    Ur = new WeakMap,
    qa = new WeakMap,
    Aa = new WeakMap,
    jh = new WeakMap,
    Ste = new WeakMap,
    mo = new WeakMap,
    Ic = new WeakMap;
let cs;
const $s = "__aa_tgt",
    Yh = "__aa_del",
    Qte = e => {
        const t = Pte(e);
        t && t.forEach(n => Ote(n))
    },
    Ute = e => {
        e.forEach(t => {
            t.target === cs && Ite(), Ur.has(t.target) && la(t.target)
        })
    };

function Tte(e) {
    const t = jh.get(e);
    t == null || t.disconnect();
    let n = Ur.get(e),
        r = 0;
    const A = 5;
    n || (n = Bo(e), Ur.set(e, n));
    const {
        offsetWidth: i,
        offsetHeight: s
    } = cs, o = [n.top - A, i - (n.left + A + n.width), s - (n.top + A + n.height), n.left - A].map(u => `${-1*Math.floor(u)}px`).join(" "), l = new IntersectionObserver(() => {
        ++r > 1 && la(e)
    }, {
        root: cs,
        threshold: 1,
        rootMargin: o
    });
    l.observe(e), jh.set(e, l)
}

function la(e) {
    clearTimeout(Ic.get(e));
    const t = Jf(e),
        n = typeof t == "function" ? 500 : t.duration;
    Ic.set(e, setTimeout(() => {
        const r = Aa.get(e);
        (!r || r.finished) && (Ur.set(e, Bo(e)), Tte(e))
    }, n))
}

function Ite() {
    clearTimeout(Ic.get(cs)), Ic.set(cs, setTimeout(() => {
        gx.forEach(e => Bx(e, t => vx(() => la(t))))
    }, 100))
}

function Dte(e) {
    setTimeout(() => {
        Ste.set(e, setInterval(() => vx(la.bind(null, e)), 2e3))
    }, Math.round(2e3 * Math.random()))
}

function vx(e) {
    typeof requestIdleCallback == "function" ? requestIdleCallback(() => e()) : requestAnimationFrame(() => e())
}
let Xh, Ga;
typeof window < "u" && (cs = document.documentElement, Xh = new MutationObserver(Qte), Ga = new ResizeObserver(Ute), Ga.observe(cs));

function Pte(e) {
    return e.reduce((t, n) => {
        if (t === !1) return !1;
        if (n.target instanceof Element) {
            if (o2(n.target), !t.has(n.target)) {
                t.add(n.target);
                for (let r = 0; r < n.target.children.length; r++) {
                    const A = n.target.children.item(r);
                    if (A) {
                        if (Yh in A) return !1;
                        o2(n.target, A), t.add(A)
                    }
                }
            }
            if (n.removedNodes.length)
                for (let r = 0; r < n.removedNodes.length; r++) {
                    const A = n.removedNodes[r];
                    if (Yh in A) return !1;
                    A instanceof Element && (t.add(A), o2(n.target, A), qa.set(A, [n.previousSibling, n.nextSibling]))
                }
        }
        return t
    }, new Set)
}

function o2(e, t) {
    !t && !($s in e) ? Object.defineProperty(e, $s, {
        value: e
    }) : t && !($s in t) && Object.defineProperty(t, $s, {
        value: e
    })
}

function Ote(e) {
    var t;
    const n = cs.contains(e),
        r = Ur.has(e);
    n && qa.has(e) && qa.delete(e), Aa.has(e) && ((t = Aa.get(e)) === null || t === void 0 || t.cancel()), r && n ? Lte(e) : r && !n ? Hte(e) : kte(e)
}

function vA(e) {
    return Number(e.replace(/[^0-9.\-]/g, ""))
}

function Bo(e) {
    const t = e.getBoundingClientRect();
    return {
        top: t.top + window.scrollY,
        left: t.left + window.scrollX,
        width: t.width,
        height: t.height
    }
}

function mx(e, t, n) {
    let r = t.width,
        A = t.height,
        i = n.width,
        s = n.height;
    const a = getComputedStyle(e);
    if (a.getPropertyValue("box-sizing") === "content-box") {
        const l = vA(a.paddingTop) + vA(a.paddingBottom) + vA(a.borderTopWidth) + vA(a.borderBottomWidth),
            u = vA(a.paddingLeft) + vA(a.paddingRight) + vA(a.borderRightWidth) + vA(a.borderLeftWidth);
        r -= u, i -= u, A -= l, s -= l
    }
    return [r, i, A, s].map(Math.round)
}

function Jf(e) {
    return $s in e && mo.has(e[$s]) ? mo.get(e[$s]) : {
        duration: 250,
        easing: "ease-in-out"
    }
}

function Bx(e, ...t) {
    t.forEach(n => n(e, mo.has(e)));
    for (let n = 0; n < e.children.length; n++) {
        const r = e.children.item(n);
        r && t.forEach(A => A(r, mo.has(r)))
    }
}

function Lte(e) {
    const t = Ur.get(e),
        n = Bo(e);
    let r;
    if (!t) return;
    const A = Jf(e);
    if (typeof A != "function") {
        const i = t.left - n.left,
            s = t.top - n.top,
            [a, o, l, u] = mx(e, t, n),
            f = {
                transform: `translate(${i}px, ${s}px)`
            },
            d = {
                transform: "translate(0, 0)"
            };
        a !== o && (f.width = `${a}px`, d.width = `${o}px`), l !== u && (f.height = `${l}px`, d.height = `${u}px`), r = e.animate([f, d], A)
    } else r = new Animation(A(e, "remain", t, n)), r.play();
    Aa.set(e, r), Ur.set(e, n), r.addEventListener("finish", la.bind(null, e))
}

function kte(e) {
    const t = Bo(e);
    Ur.set(e, t);
    const n = Jf(e);
    let r;
    typeof n != "function" ? r = e.animate([{
        transform: "scale(.98)",
        opacity: 0
    }, {
        transform: "scale(0.98)",
        opacity: 0,
        offset: .5
    }, {
        transform: "scale(1)",
        opacity: 1
    }], {
        duration: n.duration * 1.5,
        easing: "ease-in"
    }) : (r = new Animation(n(e, "add", t)), r.play()), Aa.set(e, r), r.addEventListener("finish", la.bind(null, e))
}

function Hte(e) {
    if (!qa.has(e) || !Ur.has(e)) return;
    const [t, n] = qa.get(e);
    Object.defineProperty(e, Yh, {
        value: !0
    }), n && n.parentNode && n.parentNode instanceof Element ? n.parentNode.insertBefore(e, n) : t && t.parentNode && t.parentNode.appendChild(e);
    const [r, A, i, s] = Mte(e), a = Jf(e), o = Ur.get(e);
    let l;
    Object.assign(e.style, {
        position: "absolute",
        top: `${r}px`,
        left: `${A}px`,
        width: `${i}px`,
        height: `${s}px`,
        margin: 0,
        pointerEvents: "none",
        transformOrigin: "center",
        zIndex: 100
    }), typeof a != "function" ? l = e.animate([{
        transform: "scale(1)",
        opacity: 1
    }, {
        transform: "scale(.98)",
        opacity: 0
    }], {
        duration: a.duration,
        easing: "ease-out"
    }) : (l = new Animation(a(e, "remove", o)), l.play()), Aa.set(e, l), l.addEventListener("finish", () => {
        var u;
        e.remove(), Ur.delete(e), qa.delete(e), Aa.delete(e), (u = jh.get(e)) === null || u === void 0 || u.disconnect()
    })
}

function Mte(e) {
    const t = Ur.get(e),
        [n, , r] = mx(e, t, Bo(e));
    let A = e.parentElement;
    for (; A && (getComputedStyle(A).position === "static" || A instanceof HTMLBodyElement);) A = A.parentElement;
    A || (A = document.body);
    const i = getComputedStyle(A),
        s = Ur.get(A) || Bo(A),
        a = Math.round(t.top - s.top) - vA(i.borderTopWidth),
        o = Math.round(t.left - s.left) - vA(i.borderLeftWidth);
    return [a, o, n, r]
}

function yre(e, t = {}) {
    Xh && Ga && (getComputedStyle(e).position === "static" && Object.assign(e.style, {
        position: "relative"
    }), Bx(e, la, Dte, n => Ga == null ? void 0 : Ga.observe(n)), typeof t == "function" ? mo.set(e, t) : mo.set(e, {
        duration: 250,
        easing: "ease-in-out",
        ...t
    }), Xh.observe(e, {
        childList: !0
    }), gx.add(e))
}
var wx = {
    exports: {}
};
(function(e, t) {
    (function(n, r) {
        e.exports = r()
    })(ht, function() {
        var n = "minute",
            r = /[+-]\d\d(?::?\d\d)?/g,
            A = /([+-]|\d\d)/g;
        return function(i, s, a) {
            var o = s.prototype;
            a.utc = function(g) {
                var y = {
                    date: g,
                    utc: !0,
                    args: arguments
                };
                return new s(y)
            }, o.utc = function(g) {
                var y = a(this.toDate(), {
                    locale: this.$L,
                    utc: !0
                });
                return g ? y.add(this.utcOffset(), n) : y
            }, o.local = function() {
                return a(this.toDate(), {
                    locale: this.$L,
                    utc: !1
                })
            };
            var l = o.parse;
            o.parse = function(g) {
                g.utc && (this.$u = !0), this.$utils().u(g.$offset) || (this.$offset = g.$offset), l.call(this, g)
            };
            var u = o.init;
            o.init = function() {
                if (this.$u) {
                    var g = this.$d;
                    this.$y = g.getUTCFullYear(), this.$M = g.getUTCMonth(), this.$D = g.getUTCDate(), this.$W = g.getUTCDay(), this.$H = g.getUTCHours(), this.$m = g.getUTCMinutes(), this.$s = g.getUTCSeconds(), this.$ms = g.getUTCMilliseconds()
                } else u.call(this)
            };
            var f = o.utcOffset;
            o.utcOffset = function(g, y) {
                var w = this.$utils().u;
                if (w(g)) return this.$u ? 0 : w(this.$offset) ? f.call(this) : this.$offset;
                if (typeof g == "string" && (g = function(b) {
                        b === void 0 && (b = "");
                        var F = b.match(r);
                        if (!F) return null;
                        var T = ("" + F[0]).match(A) || ["-", 0, 0],
                            I = T[0],
                            D = 60 * +T[1] + +T[2];
                        return D === 0 ? 0 : I === "+" ? D : -D
                    }(g), g === null)) return this;
                var B = Math.abs(g) <= 16 ? 60 * g : g,
                    x = this;
                if (y) return x.$offset = B, x.$u = g === 0, x;
                if (g !== 0) {
                    var C = this.$u ? this.toDate().getTimezoneOffset() : -1 * this.utcOffset();
                    (x = this.local().add(B + C, n)).$offset = B, x.$x.$localOffset = C
                } else x = this.utc();
                return x
            };
            var d = o.format;
            o.format = function(g) {
                var y = g || (this.$u ? "YYYY-MM-DDTHH:mm:ss[Z]" : "");
                return d.call(this, y)
            }, o.valueOf = function() {
                var g = this.$utils().u(this.$offset) ? 0 : this.$offset + (this.$x.$localOffset || this.$d.getTimezoneOffset());
                return this.$d.valueOf() - 6e4 * g
            }, o.isUTC = function() {
                return !!this.$u
            }, o.toISOString = function() {
                return this.toDate().toISOString()
            }, o.toString = function() {
                return this.toDate().toUTCString()
            };
            var p = o.toDate;
            o.toDate = function(g) {
                return g === "s" && this.$offset ? a(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate() : p.call(this)
            };
            var m = o.diff;
            o.diff = function(g, y, w) {
                if (g && this.$u === g.$u) return m.call(this, g, y, w);
                var B = this.local(),
                    x = a(g).local();
                return m.call(B, x, y, w)
            }
        }
    })
})(wx);
var Rte = wx.exports;
const Cre = xo(Rte);
var yx = {
    exports: {}
};
(function(e, t) {
    (function(n, r) {
        e.exports = r()
    })(ht, function() {
        var n = {
                year: 0,
                month: 1,
                day: 2,
                hour: 3,
                minute: 4,
                second: 5
            },
            r = {};
        return function(A, i, s) {
            var a, o = function(d, p, m) {
                    m === void 0 && (m = {});
                    var g = new Date(d),
                        y = function(w, B) {
                            B === void 0 && (B = {});
                            var x = B.timeZoneName || "short",
                                C = w + "|" + x,
                                b = r[C];
                            return b || (b = new Intl.DateTimeFormat("en-US", {
                                hour12: !1,
                                timeZone: w,
                                year: "numeric",
                                month: "2-digit",
                                day: "2-digit",
                                hour: "2-digit",
                                minute: "2-digit",
                                second: "2-digit",
                                timeZoneName: x
                            }), r[C] = b), b
                        }(p, m);
                    return y.formatToParts(g)
                },
                l = function(d, p) {
                    for (var m = o(d, p), g = [], y = 0; y < m.length; y += 1) {
                        var w = m[y],
                            B = w.type,
                            x = w.value,
                            C = n[B];
                        C >= 0 && (g[C] = parseInt(x, 10))
                    }
                    var b = g[3],
                        F = b === 24 ? 0 : b,
                        T = g[0] + "-" + g[1] + "-" + g[2] + " " + F + ":" + g[4] + ":" + g[5] + ":000",
                        I = +d;
                    return (s.utc(T).valueOf() - (I -= I % 1e3)) / 6e4
                },
                u = i.prototype;
            u.tz = function(d, p) {
                d === void 0 && (d = a);
                var m = this.utcOffset(),
                    g = this.toDate(),
                    y = g.toLocaleString("en-US", {
                        timeZone: d
                    }),
                    w = Math.round((g - new Date(y)) / 1e3 / 60),
                    B = s(y, {
                        locale: this.$L
                    }).$set("millisecond", this.$ms).utcOffset(15 * -Math.round(g.getTimezoneOffset() / 15) - w, !0);
                if (p) {
                    var x = B.utcOffset();
                    B = B.add(m - x, "minute")
                }
                return B.$x.$timezone = d, B
            }, u.offsetName = function(d) {
                var p = this.$x.$timezone || s.tz.guess(),
                    m = o(this.valueOf(), p, {
                        timeZoneName: d
                    }).find(function(g) {
                        return g.type.toLowerCase() === "timezonename"
                    });
                return m && m.value
            };
            var f = u.startOf;
            u.startOf = function(d, p) {
                if (!this.$x || !this.$x.$timezone) return f.call(this, d, p);
                var m = s(this.format("YYYY-MM-DD HH:mm:ss:SSS"), {
                    locale: this.$L
                });
                return f.call(m, d, p).tz(this.$x.$timezone, !0)
            }, s.tz = function(d, p, m) {
                var g = m && p,
                    y = m || p || a,
                    w = l(+s(), y);
                if (typeof d != "string") return s(d).tz(y);
                var B = function(F, T, I) {
                        var D = F - 60 * T * 1e3,
                            U = l(D, I);
                        if (T === U) return [D, T];
                        var Q = l(D -= 60 * (U - T) * 1e3, I);
                        return U === Q ? [D, U] : [F - 60 * Math.min(U, Q) * 1e3, Math.max(U, Q)]
                    }(s.utc(d, g).valueOf(), w, y),
                    x = B[0],
                    C = B[1],
                    b = s(x).utcOffset(C);
                return b.$x.$timezone = y, b
            }, s.tz.guess = function() {
                return Intl.DateTimeFormat().resolvedOptions().timeZone
            }, s.tz.setDefault = function(d) {
                a = d
            }
        }
    })
})(yx);
var Nte = yx.exports;
const xre = xo(Nte);
export {
    QF as $, ui as A, Rt as B, je as C, gr as D, Nt as E, Oe as F, Np as G, k3 as H, Tr as I, tne as J, zne as K, bL as L, Wne as M, Yne as N, ere as O, qM as P, Ez as Q, ire as R, rne as S, lre as T, fn as U, AA as V, are as W, tt as X, Zc as Y, bF as Z, cb as _, Dne as a, Uy as a$, S6 as a0, f0 as a1, Nb as a2, S8 as a3, rn as a4, Kb as a5, Z as a6, g6 as a7, tf as a8, d0 as a9, rre as aA, Nz as aB, Zne as aC, Hb as aD, Rc as aE, $E as aF, Co as aG, nre as aH, cre as aI, yre as aJ, mre as aK, vre as aL, gre as aM, pre as aN, hre as aO, Cre as aP, xre as aQ, Jne as aR, sre as aS, m0 as aT, Dn as aU, sn as aV, bz as aW, Lf as aX, wre as aY, tre as aZ, m3 as a_, ns as aa, Gb as ab, fre as ac, Vne as ad, _6 as ae, Bb as af, wb as ag, Bre as ah, Are as ai, P_ as aj, $b as ak, Lb as al, as as am, SF as an, cY as ao, sc as ap, j9 as aq, V9 as ar, w_ as as, W2 as at, $t as au, n8 as av, ure as aw, qne as ax, Xne as ay, vne as az, Pne as b, Tn as b0, I2 as b1, zt as b2, ore as b3, $8 as b4, Vb as b5, vR as b6, jV as b7, dre as b8, Yte as b9, Ane as bA, Uo as bB, gH as bC, pne as bD, Qne as bE, Tne as bF, one as bG, bne as bH, Y9 as bI, mf as bJ, xne as bK, Aw as bL, x3 as bM, $te as bN, Vte as bO, ane as ba, sne as bb, _ne as bc, Sne as bd, wne as be, yne as bf, une as bg, cc as bh, Xk as bi, En as bj, Xte as bk, Jte as bl, Ene as bm, mne as bn, Bne as bo, dne as bp, hne as bq, ine as br, di as bs, cne as bt, gne as bu, fne as bv, Fne as bw, Une as bx, Cne as by, Zte as bz, One as c, Lne as d, kne as e, Hne as f, Mne as g, Rne as h, Nne as i, Ine as j, nne as k, zte as l, Wte as m, Gte as n, $ne as o, Kte as p, Gne as q, Ue as r, EL as s, Kne as t, jne as u, ene as v, qt as w, yt as x, fs as y, fi as z
};