lab-js/vendor/tasks-vision@0.10.35.jsjavascript
/**
* Skipped minification because the original files appears to be already minified.
* Original file: /npm/@mediapipe/tasks-vision@0.10.35/vision_bundle.mjs
*
* Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
*/
var t = "undefined" != typeof self ? self : {};
function e(e, n) {
t: {
for (var r = ["CLOSURE_FLAGS"], i = t, s = 0; s < r.length; s++)
if (null == (i = i[r[s]])) {
r = null;
break t;
}
r = i;
}
return null != (e = r && r[e]) ? e : n;
}
function n() {
throw Error("Invalid UTF8");
}
function r(t, e) {
return ((e = String.fromCharCode.apply(null, e)), null == t ? e : t + e);
}
let i, s;
const o = "undefined" != typeof TextDecoder;
let a;
const c = "undefined" != typeof TextEncoder;
function h(t) {
if (c) t = (a ||= new TextEncoder()).encode(t);
else {
let n = 0;
const r = new Uint8Array(3 * t.length);
for (let i = 0; i < t.length; i++) {
var e = t.charCodeAt(i);
if (e < 128) r[n++] = e;
else {
if (e < 2048) r[n++] = (e >> 6) | 192;
else {
if (e >= 55296 && e <= 57343) {
if (e <= 56319 && i < t.length) {
const s = t.charCodeAt(++i);
if (s >= 56320 && s <= 57343) {
((e = 1024 * (e - 55296) + s - 56320 + 65536),
(r[n++] = (e >> 18) | 240),
(r[n++] = ((e >> 12) & 63) | 128),
(r[n++] = ((e >> 6) & 63) | 128),
(r[n++] = (63 & e) | 128));
continue;
}
i--;
}
e = 65533;
}
((r[n++] = (e >> 12) | 224), (r[n++] = ((e >> 6) & 63) | 128));
}
r[n++] = (63 & e) | 128;
}
}
t = n === r.length ? r : r.subarray(0, n);
}
return t;
}
function u(e) {
t.setTimeout(() => {
throw e;
}, 0);
}
var l,
f = e(610401301, !1),
d = e(748402147, !0);
function p() {
var e = t.navigator;
return e && (e = e.userAgent) ? e : "";
}
const g = t.navigator;
function m(t) {
return (m[" "](t), t);
}
((l = (g && g.userAgentData) || null), (m[" "] = function () {}));
const y = {};
let _ = null;
function v(t) {
const e = t.length;
let n = (3 * e) / 4;
n % 3
? (n = Math.floor(n))
: -1 != "=.".indexOf(t[e - 1]) &&
(n = -1 != "=.".indexOf(t[e - 2]) ? n - 2 : n - 1);
const r = new Uint8Array(n);
let i = 0;
return (
(function (t, e) {
function n(e) {
for (; r < t.length; ) {
const e = t.charAt(r++),
n = _[e];
if (null != n) return n;
if (!/^[\s\xa0]*$/.test(e))
throw Error("Unknown base64 encoding at char: " + e);
}
return e;
}
E();
let r = 0;
for (;;) {
const t = n(-1),
r = n(0),
i = n(64),
s = n(64);
if (64 === s && -1 === t) break;
(e((t << 2) | (r >> 4)),
64 != i &&
(e(((r << 4) & 240) | (i >> 2)),
64 != s && e(((i << 6) & 192) | s)));
}
})(t, function (t) {
r[i++] = t;
}),
i !== n ? r.subarray(0, i) : r
);
}
function E() {
if (!_) {
_ = {};
var t =
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(
"",
),
e = ["+/=", "+/", "-_=", "-_.", "-_"];
for (let n = 0; n < 5; n++) {
const r = t.concat(e[n].split(""));
y[n] = r;
for (let t = 0; t < r.length; t++) {
const e = r[t];
void 0 === _[e] && (_[e] = t);
}
}
}
}
var w = "undefined" != typeof Uint8Array,
T =
!(
!(f && l && l.brands.length > 0) &&
(-1 != p().indexOf("Trident") || -1 != p().indexOf("MSIE"))
) && "function" == typeof btoa;
const A = /[-_.]/g,
b = { "-": "+", _: "/", ".": "=" };
function k(t) {
return b[t] || "";
}
function S(t) {
if (!T) return v(t);
((t = A.test(t) ? t.replace(A, k) : t), (t = atob(t)));
const e = new Uint8Array(t.length);
for (let n = 0; n < t.length; n++) e[n] = t.charCodeAt(n);
return e;
}
function x(t) {
return w && null != t && t instanceof Uint8Array;
}
var L = {};
function R() {
return (M ||= new F(null, L));
}
function I(t) {
C(L);
var e = t.g;
return null ==
(e = null == e || x(e) ? e : "string" == typeof e ? S(e) : null)
? e
: (t.g = e);
}
var F = class {
h() {
return new Uint8Array(I(this) || 0);
}
constructor(t, e) {
if ((C(e), (this.g = t), null != t && 0 === t.length))
throw Error("ByteString should be constructed with non-empty values");
}
};
let M, P;
function C(t) {
if (t !== L) throw Error("illegal external caller");
}
function O(t, e) {
(t.__closure__error__context__984382 ||
(t.__closure__error__context__984382 = {}),
(t.__closure__error__context__984382.severity = e));
}
function N(t) {
return (O((t = Error(t)), "warning"), t);
}
function U(t, e) {
if (null != t) {
var n = (P ??= {}),
r = n[t] || 0;
r >= e || ((n[t] = r + 1), O((t = Error()), "incident"), u(t));
}
}
function D() {
return "function" == typeof BigInt;
}
var B = "function" == typeof Symbol && "symbol" == typeof Symbol();
function G(t, e, n = !1) {
return "function" == typeof Symbol && "symbol" == typeof Symbol()
? n && Symbol.for && t
? Symbol.for(t)
: null != t
? Symbol(t)
: Symbol()
: e;
}
var j = G("jas", void 0, !0),
V = G(void 0, "0di"),
X = G(void 0, "1oa"),
H = G(void 0, Symbol()),
W = G(void 0, "0ub"),
z = G(void 0, "0ubs"),
K = G(void 0, "0ubsb"),
Y = G(void 0, "0actk"),
q = G("m_m", "Pa", !0),
$ = G();
const J = { Ga: { value: 0, configurable: !0, writable: !0, enumerable: !1 } },
Z = Object.defineProperties,
Q = B ? j : "Ga";
var tt;
const et = [];
function nt(t, e) {
(B || Q in t || Z(t, J), (t[Q] |= e));
}
function rt(t, e) {
(B || Q in t || Z(t, J), (t[Q] = e));
}
function it(t) {
return (nt(t, 34), t);
}
function st(t) {
return (nt(t, 8192), t);
}
(rt(et, 7), (tt = Object.freeze(et)));
var ot = {};
function at(t, e) {
return void 0 === e
? t.h !== ct && !!(2 & (0 | t.v[Q]))
: !!(2 & e) && t.h !== ct;
}
const ct = {};
function ht(t, e) {
if (null != t)
if ("string" == typeof t) t = t ? new F(t, L) : R();
else if (t.constructor !== F)
if (x(t)) t = t.length ? new F(new Uint8Array(t), L) : R();
else {
if (!e) throw Error();
t = void 0;
}
return t;
}
class ut {
constructor(t, e, n) {
((this.g = t), (this.h = e), (this.l = n));
}
next() {
const t = this.g.next();
return (t.done || (t.value = this.h.call(this.l, t.value)), t);
}
[Symbol.iterator]() {
return this;
}
}
var lt = Object.freeze({});
function ft(t, e, n) {
const r = 128 & e ? 0 : -1,
i = t.length;
var s;
(s = !!i) &&
(s =
null != (s = t[i - 1]) &&
"object" == typeof s &&
s.constructor === Object);
const o = i + (s ? -1 : 0);
for (e = 128 & e ? 1 : 0; e < o; e++) n(e - r, t[e]);
if (s) {
t = t[i - 1];
for (const e in t) !isNaN(e) && n(+e, t[e]);
}
}
var dt = {};
function pt(t) {
return 128 & t ? dt : void 0;
}
function gt(t) {
return ((t.Na = !0), t);
}
var mt = gt((t) => "number" == typeof t),
yt = gt((t) => "string" == typeof t),
_t = gt((t) => "boolean" == typeof t),
vt = "function" == typeof t.BigInt && "bigint" == typeof t.BigInt(0);
function Et(t) {
var e = t;
if (yt(e)) {
if (!/^\s*(?:-?[1-9]\d*|0)?\s*$/.test(e)) throw Error(String(e));
} else if (mt(e) && !Number.isSafeInteger(e)) throw Error(String(e));
return vt
? BigInt(t)
: (t = _t(t) ? (t ? "1" : "0") : yt(t) ? t.trim() || "0" : String(t));
}
var wt = gt((t) =>
vt ? t >= At && t <= kt : "-" === t[0] ? St(t, Tt) : St(t, bt),
);
const Tt = Number.MIN_SAFE_INTEGER.toString(),
At = vt ? BigInt(Number.MIN_SAFE_INTEGER) : void 0,
bt = Number.MAX_SAFE_INTEGER.toString(),
kt = vt ? BigInt(Number.MAX_SAFE_INTEGER) : void 0;
function St(t, e) {
if (t.length > e.length) return !1;
if (t.length < e.length || t === e) return !0;
for (let n = 0; n < t.length; n++) {
const r = t[n],
i = e[n];
if (r > i) return !1;
if (r < i) return !0;
}
}
const xt = "function" == typeof Uint8Array.prototype.slice;
let Lt,
Rt = 0,
It = 0;
function Ft(t) {
const e = t >>> 0;
((Rt = e), (It = ((t - e) / 4294967296) >>> 0));
}
function Mt(t) {
if (t < 0) {
Ft(-t);
const [e, n] = jt(Rt, It);
((Rt = e >>> 0), (It = n >>> 0));
} else Ft(t);
}
function Pt(t) {
const e = (Lt ||= new DataView(new ArrayBuffer(8)));
(e.setFloat32(0, +t, !0), (It = 0), (Rt = e.getUint32(0, !0)));
}
function Ct(t, e) {
const n = 4294967296 * e + (t >>> 0);
return Number.isSafeInteger(n) ? n : Ut(t, e);
}
function Ot(t, e) {
return Et(
D()
? BigInt.asUintN(64, (BigInt(e >>> 0) << BigInt(32)) + BigInt(t >>> 0))
: Ut(t, e),
);
}
function Nt(t, e) {
return D()
? Et(
BigInt.asIntN(
64,
(BigInt.asUintN(32, BigInt(e)) << BigInt(32)) +
BigInt.asUintN(32, BigInt(t)),
),
)
: Et(Bt(t, e));
}
function Ut(t, e) {
if (((t >>>= 0), (e >>>= 0) <= 2097151)) var n = "" + (4294967296 * e + t);
else
D()
? (n = "" + ((BigInt(e) << BigInt(32)) | BigInt(t)))
: ((t =
(16777215 & t) +
6777216 * (n = 16777215 & ((t >>> 24) | (e << 8))) +
6710656 * (e = (e >> 16) & 65535)),
(n += 8147497 * e),
(e *= 2),
t >= 1e7 && ((n += (t / 1e7) >>> 0), (t %= 1e7)),
n >= 1e7 && ((e += (n / 1e7) >>> 0), (n %= 1e7)),
(n = e + Dt(n) + Dt(t)));
return n;
}
function Dt(t) {
return ((t = String(t)), "0000000".slice(t.length) + t);
}
function Bt(t, e) {
if (2147483648 & e)
if (D()) t = "" + ((BigInt(0 | e) << BigInt(32)) | BigInt(t >>> 0));
else {
const [n, r] = jt(t, e);
t = "-" + Ut(n, r);
}
else t = Ut(t, e);
return t;
}
function Gt(t) {
if (t.length < 16) Mt(Number(t));
else if (D())
((t = BigInt(t)),
(Rt = Number(t & BigInt(4294967295)) >>> 0),
(It = Number((t >> BigInt(32)) & BigInt(4294967295))));
else {
const e = +("-" === t[0]);
It = Rt = 0;
const n = t.length;
for (let r = e, i = ((n - e) % 6) + e; i <= n; r = i, i += 6) {
const e = Number(t.slice(r, i));
((It *= 1e6),
(Rt = 1e6 * Rt + e),
Rt >= 4294967296 &&
((It += Math.trunc(Rt / 4294967296)), (It >>>= 0), (Rt >>>= 0)));
}
if (e) {
const [t, e] = jt(Rt, It);
((Rt = t), (It = e));
}
}
}
function jt(t, e) {
return ((e = ~e), t ? (t = 1 + ~t) : (e += 1), [t, e]);
}
function Vt(t) {
return Array.prototype.slice.call(t);
}
const Xt = "function" == typeof BigInt ? BigInt.asIntN : void 0,
Ht = "function" == typeof BigInt ? BigInt.asUintN : void 0,
Wt = Number.isSafeInteger,
zt = Number.isFinite,
Kt = Math.trunc,
Yt = Et(0);
function qt(t) {
if (null != t && "number" != typeof t)
throw Error(
`Value of float/double field must be a number, found ${typeof t}: ${t}`,
);
return t;
}
function $t(t) {
return null == t || "number" == typeof t
? t
: "NaN" === t || "Infinity" === t || "-Infinity" === t
? Number(t)
: void 0;
}
function Jt(t) {
if (null != t && "boolean" != typeof t) {
var e = typeof t;
throw Error(
`Expected boolean but got ${"object" != e ? e : t ? (Array.isArray(t) ? "array" : e) : "null"}: ${t}`,
);
}
return t;
}
function Zt(t) {
return null == t || "boolean" == typeof t
? t
: "number" == typeof t
? !!t
: void 0;
}
const Qt = /^-?([1-9][0-9]*|0)(\.[0-9]+)?$/;
function te(t) {
switch (typeof t) {
case "bigint":
return !0;
case "number":
return zt(t);
case "string":
return Qt.test(t);
default:
return !1;
}
}
function ee(t) {
if (null == t) return t;
if ("string" == typeof t && t) t = +t;
else if ("number" != typeof t) return;
return zt(t) ? 0 | t : void 0;
}
function ne(t) {
if (null == t) return t;
if ("string" == typeof t && t) t = +t;
else if ("number" != typeof t) return;
return zt(t) ? t >>> 0 : void 0;
}
function re(t) {
const e = t.length;
return (
"-" === t[0]
? e < 20 || (20 === e && t <= "-9223372036854775808")
: e < 19 || (19 === e && t <= "9223372036854775807")
)
? t
: (Gt(t), Bt(Rt, It));
}
function ie(t) {
if (((t = Kt(t)), !Wt(t))) {
Mt(t);
var e = Rt,
n = It;
((t = 2147483648 & n) &&
((n = ~n >>> 0), 0 == (e = (1 + ~e) >>> 0) && (n = (n + 1) >>> 0)),
(t = "number" == typeof (e = Ct(e, n)) ? (t ? -e : e) : t ? "-" + e : e));
}
return t;
}
function se(t) {
var e = Kt(Number(t));
return Wt(e)
? String(e)
: (-1 !== (e = t.indexOf(".")) && (t = t.substring(0, e)), re(t));
}
function oe(t) {
var e = Kt(Number(t));
return Wt(e)
? Et(e)
: (-1 !== (e = t.indexOf(".")) && (t = t.substring(0, e)),
D() ? Et(Xt(64, BigInt(t))) : Et(re(t)));
}
function ae(t) {
return (
Wt(t)
? (t = Et(ie(t)))
: ((t = Kt(t)),
Wt(t) ? (t = String(t)) : (Mt(t), (t = Bt(Rt, It))),
(t = Et(t))),
t
);
}
function ce(t) {
const e = typeof t;
return null == t
? t
: "bigint" === e
? Et(Xt(64, t))
: te(t)
? "string" === e
? oe(t)
: ae(t)
: void 0;
}
function he(t) {
if ("string" != typeof t) throw Error();
return t;
}
function ue(t) {
if (null != t && "string" != typeof t) throw Error();
return t;
}
function le(t) {
return null == t || "string" == typeof t ? t : void 0;
}
function fe(t, e, n, r) {
return null != t && t[q] === ot
? t
: Array.isArray(t)
? ((r = (n = 0 | t[Q]) | (32 & r) | (2 & r)) !== n && rt(t, r), new e(t))
: (n
? 2 & r
? ((t = e[V]) || (it((t = new e()).v), (t = e[V] = t)), (e = t))
: (e = new e())
: (e = void 0),
e);
}
function de(t, e, n) {
if (e)
t: {
if (!te((e = t))) throw N("int64");
switch (typeof e) {
case "string":
e = oe(e);
break t;
case "bigint":
e = Et(Xt(64, e));
break t;
default:
e = ae(e);
}
}
else e = ce(t);
return null == (t = e) ? (n ? Yt : void 0) : t;
}
const pe = {};
let ge = (function () {
try {
return (
m(
new (class extends Map {
constructor() {
super();
}
})(),
),
!1
);
} catch {
return !0;
}
})();
class me {
constructor() {
this.g = new Map();
}
get(t) {
return this.g.get(t);
}
set(t, e) {
return (this.g.set(t, e), (this.size = this.g.size), this);
}
delete(t) {
return ((t = this.g.delete(t)), (this.size = this.g.size), t);
}
clear() {
(this.g.clear(), (this.size = this.g.size));
}
has(t) {
return this.g.has(t);
}
entries() {
return this.g.entries();
}
keys() {
return this.g.keys();
}
values() {
return this.g.values();
}
forEach(t, e) {
return this.g.forEach(t, e);
}
[Symbol.iterator]() {
return this.entries();
}
}
const ye = ge
? (Object.setPrototypeOf(me.prototype, Map.prototype),
Object.defineProperties(me.prototype, {
size: { value: 0, configurable: !0, enumerable: !0, writable: !0 },
}),
me)
: class extends Map {
constructor() {
super();
}
};
function _e(t) {
return t;
}
function ve(t) {
if (2 & t.J) throw Error("Cannot mutate an immutable Map");
}
var Ee = class extends ye {
constructor(t, e, n = _e, r = _e) {
(super(),
(this.J = 0 | t[Q]),
(this.K = e),
(this.S = n),
(this.fa = this.K ? we : r));
for (let i = 0; i < t.length; i++) {
const s = t[i],
o = n(s[0], !1, !0);
let a = s[1];
(e
? void 0 === a && (a = null)
: (a = r(s[1], !1, !0, void 0, void 0, this.J)),
super.set(o, a));
}
}
V(t) {
return st(Array.from(super.entries(), t));
}
clear() {
(ve(this), super.clear());
}
delete(t) {
return (ve(this), super.delete(this.S(t, !0, !1)));
}
entries() {
if (this.K) {
var t = super.keys();
t = new ut(t, Te, this);
} else t = super.entries();
return t;
}
values() {
if (this.K) {
var t = super.keys();
t = new ut(t, Ee.prototype.get, this);
} else t = super.values();
return t;
}
forEach(t, e) {
this.K
? super.forEach((n, r, i) => {
t.call(e, i.get(r), r, i);
})
: super.forEach(t, e);
}
set(t, e) {
return (
ve(this),
null == (t = this.S(t, !0, !1))
? this
: null == e
? (super.delete(t), this)
: super.set(t, this.fa(e, !0, !0, this.K, !1, this.J))
);
}
Ma(t) {
const e = this.S(t[0], !1, !0);
((t = t[1]),
(t = this.K
? void 0 === t
? null
: t
: this.fa(t, !1, !0, void 0, !1, this.J)),
super.set(e, t));
}
has(t) {
return super.has(this.S(t, !1, !1));
}
get(t) {
t = this.S(t, !1, !1);
const e = super.get(t);
if (void 0 !== e) {
var n = this.K;
return n
? ((n = this.fa(e, !1, !0, n, this.ra, this.J)) !== e &&
super.set(t, n),
n)
: e;
}
}
[Symbol.iterator]() {
return this.entries();
}
};
function we(t, e, n, r, i, s) {
return ((t = fe(t, r, n, s)), i && (t = Xe(t)), t);
}
function Te(t) {
return [t, this.get(t)];
}
let Ae;
function be() {
return (Ae ||= new Ee(it([]), void 0, void 0, void 0, pe));
}
function ke(t) {
return H ? t[H] : void 0;
}
function Se(t, e) {
for (const n in t) !isNaN(n) && e(t, +n, t[n]);
}
Ee.prototype.toJSON = void 0;
var xe = class {};
const Le = { Ka: !0 };
function Re(t, e) {
e < 100 || U(z, 1);
}
function Ie(t, e, n, r) {
const i = void 0 !== r;
r = !!r;
var s,
o = H;
(!i && B && o && (s = t[o]) && Se(s, Re), (o = []));
var a = t.length;
let c;
s = 4294967295;
let h = !1;
const u = !!(64 & e),
l = u ? (128 & e ? 0 : -1) : void 0;
(1 & e ||
((c = a && t[a - 1]),
null != c && "object" == typeof c && c.constructor === Object
? (s = --a)
: (c = void 0),
!u || 128 & e || i || ((h = !0), (s = s - l + l))),
(e = void 0));
for (var f = 0; f < a; f++) {
let i = t[f];
if (null != i && null != (i = n(i, r)))
if (u && f >= s) {
const t = f - l;
(e ??= {})[t] = i;
} else o[f] = i;
}
if (c)
for (let t in c) {
if (null == (a = c[t]) || null == (a = n(a, r))) continue;
let i;
((f = +t),
u && !Number.isNaN(f) && (i = f + l) < s
? (o[i] = a)
: ((e ??= {})[t] = a));
}
return (
e && (h ? o.push(e) : (o[s] = e)),
i &&
H &&
(t = ke(t)) &&
t instanceof xe &&
(o[H] = (function (t) {
const e = new xe();
return (
Se(t, (t, n, r) => {
e[n] = Vt(r);
}),
(e.da = t.da),
e
);
})(t)),
o
);
}
function Fe(t) {
return ((t[0] = Me(t[0])), (t[1] = Me(t[1])), t);
}
function Me(t) {
switch (typeof t) {
case "number":
return Number.isFinite(t) ? t : "" + t;
case "bigint":
return wt(t) ? Number(t) : "" + t;
case "boolean":
return t ? 1 : 0;
case "object":
if (Array.isArray(t)) {
var e = 0 | t[Q];
return 0 === t.length && 1 & e ? void 0 : Ie(t, e, Me);
}
if (null != t && t[q] === ot) return Oe(t);
if (t instanceof F) {
if (null == (e = t.g)) t = "";
else if ("string" == typeof e) t = e;
else {
if (T) {
for (var n = "", r = 0, i = e.length - 10240; r < i; )
n += String.fromCharCode.apply(null, e.subarray(r, (r += 10240)));
((n += String.fromCharCode.apply(null, r ? e.subarray(r) : e)),
(e = btoa(n)));
} else {
(void 0 === n && (n = 0),
E(),
(n = y[n]),
(r = Array(Math.floor(e.length / 3))),
(i = n[64] || ""));
let t = 0,
h = 0;
for (; t < e.length - 2; t += 3) {
var s = e[t],
o = e[t + 1],
a = e[t + 2],
c = n[s >> 2];
((s = n[((3 & s) << 4) | (o >> 4)]),
(o = n[((15 & o) << 2) | (a >> 6)]),
(a = n[63 & a]),
(r[h++] = c + s + o + a));
}
switch (((c = 0), (a = i), e.length - t)) {
case 2:
a = n[(15 & (c = e[t + 1])) << 2] || i;
case 1:
((e = e[t]),
(r[h] = n[e >> 2] + n[((3 & e) << 4) | (c >> 4)] + a + i));
}
e = r.join("");
}
t = t.g = e;
}
return t;
}
return t instanceof Ee ? (t = 0 !== t.size ? t.V(Fe) : void 0) : void 0;
}
return t;
}
let Pe, Ce;
function Oe(t) {
return Ie((t = t.v), 0 | t[Q], Me);
}
function Ne(t, e) {
return Ue(t, e[0], e[1]);
}
function Ue(t, e, n, r = 0) {
if (null == t) {
var i = 32;
(n ? ((t = [n]), (i |= 128)) : (t = []),
e && (i = (-16760833 & i) | ((1023 & e) << 14)));
} else {
if (!Array.isArray(t)) throw Error("narr");
if (((i = 0 | t[Q]), d && 1 & i)) throw Error("rfarr");
if (
(2048 & i &&
!(2 & i) &&
(function () {
if (d) throw Error("carr");
U(Y, 5);
})(),
256 & i)
)
throw Error("farr");
if (64 & i) return ((i | r) !== i && rt(t, i | r), t);
if (n && ((i |= 128), n !== t[0])) throw Error("mid");
t: {
i |= 64;
var s = (n = t).length;
if (s) {
var o = s - 1;
const t = n[o];
if (null != t && "object" == typeof t && t.constructor === Object) {
if ((o -= e = 128 & i ? 0 : -1) >= 1024) throw Error("pvtlmt");
for (var a in t) (s = +a) < o && ((n[s + e] = t[a]), delete t[a]);
i = (-16760833 & i) | ((1023 & o) << 14);
break t;
}
}
if (e) {
if ((a = Math.max(e, s - (128 & i ? 0 : -1))) > 1024)
throw Error("spvt");
i = (-16760833 & i) | ((1023 & a) << 14);
}
}
}
return (rt(t, 64 | i | r), t);
}
function De(t, e) {
if ("object" != typeof t) return t;
if (Array.isArray(t)) {
var n = 0 | t[Q];
return 0 === t.length && 1 & n ? void 0 : Be(t, n, e);
}
if (null != t && t[q] === ot) return je(t);
if (t instanceof Ee) {
if (2 & (e = t.J)) return t;
if (!t.size) return;
if (((n = it(t.V())), t.K))
for (t = 0; t < n.length; t++) {
const r = n[t];
let i = r[1];
((i =
null == i || "object" != typeof i
? void 0
: null != i && i[q] === ot
? je(i)
: Array.isArray(i)
? Be(i, 0 | i[Q], !!(32 & e))
: void 0),
(r[1] = i));
}
return n;
}
return t instanceof F ? t : void 0;
}
function Be(t, e, n) {
return (
2 & e ||
(!n || 4096 & e || 16 & e
? (t = Ve(t, e, !1, n && !(16 & e)))
: (nt(t, 34), 4 & e && Object.freeze(t))),
t
);
}
function Ge(t, e, n) {
return ((t = new t.constructor(e)), n && (t.h = ct), (t.m = ct), t);
}
function je(t) {
const e = t.v,
n = 0 | e[Q];
return at(t, n) ? t : Ke(t, e, n) ? Ge(t, e) : Ve(e, n);
}
function Ve(t, e, n, r) {
return (
(r ??= !!(34 & e)),
(t = Ie(t, e, De, r)),
(r = 32),
n && (r |= 2),
rt(t, (e = (16769217 & e) | r)),
t
);
}
function Xe(t) {
const e = t.v,
n = 0 | e[Q];
return at(t, n)
? Ke(t, e, n)
? Ge(t, e, !0)
: new t.constructor(Ve(e, n, !1))
: t;
}
function He(t) {
if (t.h !== ct) return !1;
var e = t.v;
return (
nt((e = Ve(e, 0 | e[Q])), 2048),
(t.v = e),
(t.h = void 0),
(t.m = void 0),
!0
);
}
function We(t) {
if (!He(t) && at(t, 0 | t.v[Q])) throw Error();
}
function ze(t, e) {
(void 0 === e && (e = 0 | t[Q]), 32 & e && !(4096 & e) && rt(t, 4096 | e));
}
function Ke(t, e, n) {
return (
!!(2 & n) || (!(!(32 & n) || 4096 & n) && (rt(e, 2 | n), (t.h = ct), !0))
);
}
const Ye = Et(0),
qe = {};
function $e(t, e, n, r, i) {
if (null !== (e = Je(t.v, e, n, i)) || (r && t.m !== ct)) return e;
}
function Je(t, e, n, r) {
if (-1 === e) return null;
const i = e + (n ? 0 : -1),
s = t.length - 1;
let o, a;
if (!(s < 1 + (n ? 0 : -1))) {
if (i >= s)
if (
((o = t[s]),
null != o && "object" == typeof o && o.constructor === Object)
)
((n = o[e]), (a = !0));
else {
if (i !== s) return;
n = o;
}
else n = t[i];
if (r && null != n) {
if (null == (r = r(n))) return r;
if (!Object.is(r, n)) return (a ? (o[e] = r) : (t[i] = r), r);
}
return n;
}
}
function Ze(t, e, n, r) {
(We(t), Qe((t = t.v), 0 | t[Q], e, n, r));
}
function Qe(t, e, n, r, i) {
const s = n + (i ? 0 : -1);
var o = t.length - 1;
if (o >= 1 + (i ? 0 : -1) && s >= o) {
const i = t[o];
if (null != i && "object" == typeof i && i.constructor === Object)
return ((i[n] = r), e);
}
return s <= o
? ((t[s] = r), e)
: (void 0 !== r &&
(n >= (o = ((e ??= 0 | t[Q]) >> 14) & 1023 || 536870912)
? null != r && (t[o + (i ? 0 : -1)] = { [n]: r })
: (t[s] = r)),
e);
}
function tn() {
return void 0 === lt ? 2 : 4;
}
function en(t, e, n, r, i) {
let s = t.v,
o = 0 | s[Q];
((r = at(t, o) ? 1 : r),
(i = !!i || 3 === r),
2 === r && He(t) && ((s = t.v), (o = 0 | s[Q])));
let a = (t = rn(s, e)) === tt ? 7 : 0 | t[Q],
c = sn(a, o);
var h = !(4 & c);
if (h) {
4 & c && ((t = Vt(t)), (a = 0), (c = An(c, o)), (o = Qe(s, o, e, t)));
let r = 0,
i = 0;
for (; r < t.length; r++) {
const e = n(t[r]);
null != e && (t[i++] = e);
}
(i < r && (t.length = i),
(n = -513 & (4 | c)),
(c = n &= -1025),
(c &= -4097));
}
return (
c !== a && (rt(t, c), 2 & c && Object.freeze(t)),
nn(t, c, s, o, e, r, h, i)
);
}
function nn(t, e, n, r, i, s, o, a) {
let c = e;
return (
1 === s || (4 === s && (2 & e || (!(16 & e) && 32 & r)))
? on(e) ||
((e |=
!t.length || (o && !(4096 & e)) || (32 & r && !(4096 & e || 16 & e))
? 2
: 256) !== c && rt(t, e),
Object.freeze(t))
: (2 === s &&
on(e) &&
((t = Vt(t)), (c = 0), (e = An(e, r)), (r = Qe(n, r, i, t))),
on(e) || (a || (e |= 16), e !== c && rt(t, e))),
2 & e || !(4096 & e || 16 & e) || ze(n, r),
t
);
}
function rn(t, e, n) {
return ((t = Je(t, e, n)), Array.isArray(t) ? t : tt);
}
function sn(t, e) {
return (2 & e && (t |= 2), 1 | t);
}
function on(t) {
return (!!(2 & t) && !!(4 & t)) || !!(256 & t);
}
function an(t) {
return ht(t, !0);
}
function cn(t) {
t = Vt(t);
for (let e = 0; e < t.length; e++) {
const n = (t[e] = Vt(t[e]));
Array.isArray(n[1]) && (n[1] = it(n[1]));
}
return st(t);
}
function hn(t, e, n, r) {
(We(t),
Qe(
(t = t.v),
0 | t[Q],
e,
("0" === r ? 0 === Number(n) : n === r) ? void 0 : n,
));
}
function un(t, e, n) {
if (2 & e) throw Error();
const r = pt(e);
let i = rn(t, n, r),
s = i === tt ? 7 : 0 | i[Q],
o = sn(s, e);
return (
(2 & o || on(o) || 16 & o) &&
(o === s || on(o) || rt(i, o),
(i = Vt(i)),
(s = 0),
(o = An(o, e)),
Qe(t, e, n, i, r)),
(o &= -13),
o !== s && rt(i, o),
i
);
}
function ln(t, e) {
var n = Cs;
return pn(fn((t = t.v)), t, void 0, n) === e ? e : -1;
}
function fn(t) {
if (B) return t[X] ?? (t[X] = new Map());
if (X in t) return t[X];
const e = new Map();
return (Object.defineProperty(t, X, { value: e }), e);
}
function dn(t, e, n, r, i) {
const s = fn(t),
o = pn(s, t, e, n, i);
return (o !== r && (o && (e = Qe(t, e, o, void 0, i)), s.set(n, r)), e);
}
function pn(t, e, n, r, i) {
let s = t.get(r);
if (null != s) return s;
s = 0;
for (let t = 0; t < r.length; t++) {
const o = r[t];
null != Je(e, o, i) && (0 !== s && (n = Qe(e, n, s, void 0, i)), (s = o));
}
return (t.set(r, s), s);
}
function gn(t, e, n) {
let r = 0 | t[Q];
const i = pt(r),
s = Je(t, n, i);
let o;
if (null != s && s[q] === ot) {
if (!at(s)) return (He(s), s.v);
o = s.v;
} else Array.isArray(s) && (o = s);
if (o) {
const t = 0 | o[Q];
2 & t && (o = Ve(o, t));
}
return ((o = Ne(o, e)), o !== s && Qe(t, r, n, o, i), o);
}
function mn(t, e, n, r, i) {
let s = !1;
if (
null !=
(r = Je(t, r, i, (t) => {
const r = fe(t, n, !1, e);
return ((s = r !== t && null != r), r);
}))
)
return (s && !at(r) && ze(t, e), r);
}
function yn(t, e, n, r) {
let i = t.v,
s = 0 | i[Q];
if (null == (e = mn(i, s, e, n, r))) return e;
if (((s = 0 | i[Q]), !at(t, s))) {
const o = Xe(e);
o !== e &&
(He(t) && ((i = t.v), (s = 0 | i[Q])),
(s = Qe(i, s, n, (e = o), r)),
ze(i, s));
}
return e;
}
function _n(t, e, n, r, i, s, o, a) {
var c = at(t, n);
((s = c ? 1 : s),
(o = !!o || 3 === s),
(c = a && !c),
(2 === s || c) && He(t) && (n = 0 | (e = t.v)[Q]));
var h = (t = rn(e, i)) === tt ? 7 : 0 | t[Q],
u = sn(h, n);
if ((a = !(4 & u))) {
var l = t,
f = n;
const e = !!(2 & u);
e && (f |= 2);
let i = !e,
s = !0,
o = 0,
a = 0;
for (; o < l.length; o++) {
const t = fe(l[o], r, !1, f);
if (t instanceof r) {
if (!e) {
const e = at(t);
((i &&= !e), (s &&= e));
}
l[a++] = t;
}
}
(a < o && (l.length = a),
(u |= 4),
(u = s ? -4097 & u : 4096 | u),
(u = i ? 8 | u : -9 & u));
}
if (
(u !== h && (rt(t, u), 2 & u && Object.freeze(t)),
c &&
!(
8 & u ||
(!t.length &&
(1 === s || (4 === s && (2 & u || (!(16 & u) && 32 & n)))))
))
) {
for (
on(u) && ((t = Vt(t)), (u = An(u, n)), (n = Qe(e, n, i, t))),
r = t,
c = u,
h = 0;
h < r.length;
h++
)
(l = r[h]) !== (u = Xe(l)) && (r[h] = u);
((c |= 8), rt(t, (u = c = r.length ? 4096 | c : -4097 & c)));
}
return nn(t, u, e, n, i, s, a, o);
}
function vn(t, e, n) {
const r = t.v;
return _n(t, r, 0 | r[Q], e, n, tn(), !1, !0);
}
function En(t) {
return (null == t && (t = void 0), t);
}
function wn(t, e, n, r, i) {
return (Ze(t, n, (r = En(r)), i), r && !at(r) && ze(t.v), t);
}
function Tn(t, e, n, r) {
t: {
var i = (r = En(r));
We(t);
const s = t.v;
let o = 0 | s[Q];
if (null == i) {
const t = fn(s);
if (pn(t, s, o, n) !== e) break t;
t.set(n, 0);
} else o = dn(s, o, n, e);
Qe(s, o, e, i);
}
r && !at(r) && ze(t.v);
}
function An(t, e) {
return -273 & (2 & e ? 2 | t : -3 & t);
}
function bn(t, e, n, r) {
var i = r;
(We(t),
(t = _n(t, (r = t.v), 0 | r[Q], n, e, 2, !0)),
(i = null != i ? i : new n()),
t.push(i),
(e = n = t === tt ? 7 : 0 | t[Q]),
(i = at(i)) ? ((n &= -9), 1 === t.length && (n &= -4097)) : (n |= 4096),
n !== e && rt(t, n),
i || ze(r));
}
function kn(t, e, n) {
return ee($e(t, e, void 0, n));
}
function Sn(t, e) {
return $e(t, e, void 0, void 0, $t) ?? 0;
}
function xn(t, e, n) {
if (null != n) {
if ("number" != typeof n) throw N("int32");
if (!zt(n)) throw N("int32");
n |= 0;
}
Ze(t, e, n);
}
function Ln(t, e, n) {
Ze(t, e, qt(n));
}
function Rn(t, e, n) {
hn(t, e, ue(n), "");
}
function In(t, e, n) {
{
We(t);
const o = t.v;
let a = 0 | o[Q];
if (null == n) Qe(o, a, e);
else {
var r = (t = n === tt ? 7 : 0 | n[Q]),
i = on(t),
s = i || Object.isFrozen(n);
for (
i || (t = 0),
s || ((n = Vt(n)), (r = 0), (t = An(t, a)), (s = !1)),
t |= 5,
t |= (4 & t ? (512 & t ? 512 : 1024 & t ? 1024 : 0) : void 0) ?? 1024,
i = 0;
i < n.length;
i++
) {
const e = n[i],
o = he(e);
Object.is(e, o) ||
(s && ((n = Vt(n)), (r = 0), (t = An(t, a)), (s = !1)), (n[i] = o));
}
(t !== r && (s && ((n = Vt(n)), (t = An(t, a))), rt(n, t)),
Qe(o, a, e, n));
}
}
}
function Fn(t, e, n) {
(We(t), en(t, e, le, 2, !0).push(he(n)));
}
var Mn = class {
constructor(t, e, n) {
if (((this.buffer = t), n && !e)) throw Error();
this.g = e;
}
};
function Pn(t, e) {
if ("string" == typeof t) return new Mn(S(t), e);
if (Array.isArray(t)) return new Mn(new Uint8Array(t), e);
if (t.constructor === Uint8Array) return new Mn(t, !1);
if (t.constructor === ArrayBuffer)
return ((t = new Uint8Array(t)), new Mn(t, !1));
if (t.constructor === F)
return ((e = I(t) || new Uint8Array(0)), new Mn(e, !0, t));
if (t instanceof Uint8Array)
return (
(t =
t.constructor === Uint8Array
? t
: new Uint8Array(t.buffer, t.byteOffset, t.byteLength)),
new Mn(t, !1)
);
throw Error();
}
function Cn(t, e) {
let n,
r = 0,
i = 0,
s = 0;
const o = t.h;
let a = t.g;
do {
((n = o[a++]), (r |= (127 & n) << s), (s += 7));
} while (s < 32 && 128 & n);
if (s > 32)
for (i |= (127 & n) >> 4, s = 3; s < 32 && 128 & n; s += 7)
((n = o[a++]), (i |= (127 & n) << s));
if ((Gn(t, a), !(128 & n))) return e(r >>> 0, i >>> 0);
throw Error();
}
function On(t) {
let e = 0,
n = t.g;
const r = n + 10,
i = t.h;
for (; n < r; ) {
const r = i[n++];
if (((e |= r), 0 == (128 & r))) return (Gn(t, n), !!(127 & e));
}
throw Error();
}
function Nn(t) {
const e = t.h;
let n = t.g,
r = e[n++],
i = 127 & r;
if (
128 & r &&
((r = e[n++]),
(i |= (127 & r) << 7),
128 & r &&
((r = e[n++]),
(i |= (127 & r) << 14),
128 & r &&
((r = e[n++]),
(i |= (127 & r) << 21),
128 & r &&
((r = e[n++]),
(i |= r << 28),
128 & r &&
128 & e[n++] &&
128 & e[n++] &&
128 & e[n++] &&
128 & e[n++] &&
128 & e[n++]))))
)
throw Error();
return (Gn(t, n), i);
}
function Un(t) {
return Nn(t) >>> 0;
}
function Dn(t) {
var e = t.h;
const n = t.g;
var r = e[n],
i = e[n + 1];
const s = e[n + 2];
return (
(e = e[n + 3]),
Gn(t, t.g + 4),
(t =
2 * ((i = ((r << 0) | (i << 8) | (s << 16) | (e << 24)) >>> 0) >> 31) +
1),
(r = (i >>> 23) & 255),
(i &= 8388607),
255 == r
? i
? NaN
: t * (1 / 0)
: 0 == r
? 1401298464324817e-60 * t * i
: t * Math.pow(2, r - 150) * (i + 8388608)
);
}
function Bn(t) {
return Nn(t);
}
function Gn(t, e) {
if (((t.g = e), e > t.l)) throw Error();
}
function jn(t, e) {
if (e < 0) throw Error();
const n = t.g;
if ((e = n + e) > t.l) throw Error();
return ((t.g = e), n);
}
function Vn(t, e) {
if (0 == e) return R();
var n = jn(t, e);
return (
t.Y && t.j
? (n = t.h.subarray(n, n + e))
: ((t = t.h),
(n =
n === (e = n + e)
? new Uint8Array(0)
: xt
? t.slice(n, e)
: new Uint8Array(t.subarray(n, e)))),
0 == n.length ? R() : new F(n, L)
);
}
var Xn = [];
function Hn(t, e, n, r) {
if (Qn.length) {
const i = Qn.pop();
return (i.o(r), i.g.init(t, e, n, r), i);
}
return new Zn(t, e, n, r);
}
function Wn(t) {
(t.g.clear(), (t.l = -1), (t.h = -1), Qn.length < 100 && Qn.push(t));
}
function zn(t) {
var e = t.g;
if (e.g == e.l) return !1;
t.m = t.g.g;
var n = Un(t.g);
if (((e = n >>> 3), !((n &= 7) >= 0 && n <= 5))) throw Error();
if (e < 1) throw Error();
return ((t.l = e), (t.h = n), !0);
}
function Kn(t) {
switch (t.h) {
case 0:
0 != t.h ? Kn(t) : On(t.g);
break;
case 1:
Gn((t = t.g), t.g + 8);
break;
case 2:
if (2 != t.h) Kn(t);
else {
var e = Un(t.g);
Gn((t = t.g), t.g + e);
}
break;
case 5:
Gn((t = t.g), t.g + 4);
break;
case 3:
for (e = t.l; ; ) {
if (!zn(t)) throw Error();
if (4 == t.h) {
if (t.l != e) throw Error();
break;
}
Kn(t);
}
break;
default:
throw Error();
}
}
function Yn(t, e, n) {
const r = t.g.l;
var i = Un(t.g);
let s = (i = t.g.g + i) - r;
if (
(s <= 0 && ((t.g.l = i), n(e, t, void 0, void 0, void 0), (s = i - t.g.g)),
s)
)
throw Error();
return ((t.g.g = i), (t.g.l = r), e);
}
function qn(t) {
var e = Un(t.g),
a = jn((t = t.g), e);
if (((t = t.h), o)) {
var c,
h = t;
((c = s) || (c = s = new TextDecoder("utf-8", { fatal: !0 })),
(e = a + e),
(h = 0 === a && e === h.length ? h : h.subarray(a, e)));
try {
var u = c.decode(h);
} catch (t) {
if (void 0 === i) {
try {
c.decode(new Uint8Array([128]));
} catch (t) {}
try {
(c.decode(new Uint8Array([97])), (i = !0));
} catch (t) {
i = !1;
}
}
throw (!i && (s = void 0), t);
}
} else {
((e = (u = a) + e), (a = []));
let i,
s = null;
for (; u < e; ) {
var l = t[u++];
(l < 128
? a.push(l)
: l < 224
? u >= e
? n()
: ((i = t[u++]),
l < 194 || 128 != (192 & i)
? (u--, n())
: a.push(((31 & l) << 6) | (63 & i)))
: l < 240
? u >= e - 1
? n()
: ((i = t[u++]),
128 != (192 & i) ||
(224 === l && i < 160) ||
(237 === l && i >= 160) ||
128 != (192 & (c = t[u++]))
? (u--, n())
: a.push(((15 & l) << 12) | ((63 & i) << 6) | (63 & c)))
: l <= 244
? u >= e - 2
? n()
: ((i = t[u++]),
128 != (192 & i) ||
(i - 144 + (l << 28)) >> 30 != 0 ||
128 != (192 & (c = t[u++])) ||
128 != (192 & (h = t[u++]))
? (u--, n())
: ((l =
((7 & l) << 18) |
((63 & i) << 12) |
((63 & c) << 6) |
(63 & h)),
(l -= 65536),
a.push(55296 + ((l >> 10) & 1023), 56320 + (1023 & l))))
: n(),
a.length >= 8192 && ((s = r(s, a)), (a.length = 0)));
}
u = r(s, a);
}
return u;
}
function $n(t) {
const e = Un(t.g);
return Vn(t.g, e);
}
function Jn(t, e, n) {
var r = Un(t.g);
for (r = t.g.g + r; t.g.g < r; ) n.push(e(t.g));
}
var Zn = class {
constructor(t, e, n, r) {
if (Xn.length) {
const i = Xn.pop();
(i.init(t, e, n, r), (t = i));
} else
t = new (class {
constructor(t, e, n, r) {
((this.h = null),
(this.j = !1),
(this.g = this.l = this.m = 0),
this.init(t, e, n, r));
}
init(t, e, n, { Y: r = !1, ea: i = !1 } = {}) {
((this.Y = r),
(this.ea = i),
t &&
((t = Pn(t, this.ea)),
(this.h = t.buffer),
(this.j = t.g),
(this.m = e || 0),
(this.l = void 0 !== n ? this.m + n : this.h.length),
(this.g = this.m)));
}
clear() {
((this.h = null),
(this.j = !1),
(this.g = this.l = this.m = 0),
(this.Y = !1));
}
})(t, e, n, r);
((this.g = t), (this.m = this.g.g), (this.h = this.l = -1), this.o(r));
}
o({ ha: t = !1 } = {}) {
this.ha = t;
}
},
Qn = [];
function tr(t) {
return t
? /^\d+$/.test(t)
? (Gt(t), new er(Rt, It))
: null
: (nr ||= new er(0, 0));
}
var er = class {
constructor(t, e) {
((this.h = t >>> 0), (this.g = e >>> 0));
}
};
let nr;
function rr(t) {
return t
? /^-?\d+$/.test(t)
? (Gt(t), new ir(Rt, It))
: null
: (sr ||= new ir(0, 0));
}
var ir = class {
constructor(t, e) {
((this.h = t >>> 0), (this.g = e >>> 0));
}
};
let sr;
function or(t, e, n) {
for (; n > 0 || e > 127; )
(t.g.push((127 & e) | 128),
(e = ((e >>> 7) | (n << 25)) >>> 0),
(n >>>= 7));
t.g.push(e);
}
function ar(t, e) {
for (; e > 127; ) (t.g.push((127 & e) | 128), (e >>>= 7));
t.g.push(e);
}
function cr(t, e) {
if (e >= 0) ar(t, e);
else {
for (let n = 0; n < 9; n++) (t.g.push((127 & e) | 128), (e >>= 7));
t.g.push(1);
}
}
function hr(t) {
var e = Rt;
(t.g.push((e >>> 0) & 255),
t.g.push((e >>> 8) & 255),
t.g.push((e >>> 16) & 255),
t.g.push((e >>> 24) & 255));
}
function ur(t, e) {
0 !== e.length && (t.l.push(e), (t.h += e.length));
}
function lr(t, e, n) {
ar(t.g, 8 * e + n);
}
function fr(t, e) {
return (lr(t, e, 2), (e = t.g.end()), ur(t, e), e.push(t.h), e);
}
function dr(t, e) {
var n = e.pop();
for (n = t.h + t.g.length() - n; n > 127; )
(e.push((127 & n) | 128), (n >>>= 7), t.h++);
(e.push(n), t.h++);
}
function pr(t, e, n) {
(lr(t, e, 2), ar(t.g, n.length), ur(t, t.g.end()), ur(t, n));
}
function gr(t, e, n, r) {
null != n && ((e = fr(t, e)), r(n, t), dr(t, e));
}
function mr() {
const t = class {
constructor() {
throw Error();
}
};
return (Object.setPrototypeOf(t, t.prototype), t);
}
var yr = mr(),
_r = mr(),
vr = mr(),
Er = mr(),
wr = mr(),
Tr = mr(),
Ar = mr(),
br = mr(),
kr = mr(),
Sr = mr();
function xr(t, e, n) {
var r = t.v;
(H && H in r && (r = r[H]) && delete r[e.g],
e.h ? e.j(t, e.h, e.g, n, e.l) : e.j(t, e.g, n, e.l));
}
var Lr = class {
constructor(t, e) {
this.v = Ue(t, e, void 0, 2048);
}
toJSON() {
return Oe(this);
}
j() {
var t = xo,
e = this.v,
n = t.g,
r = H;
if (
(B && r && null != e[r]?.[n] && U(W, 3),
(e = t.g),
$ && H && void 0 === $ && (r = (n = this.v)[H]) && (r = r.da))
)
try {
r(n, e, Le);
} catch (t) {
u(t);
}
return t.h ? t.m(this, t.h, t.g, t.l) : t.m(this, t.g, t.defaultValue, t.l);
}
clone() {
const t = this.v,
e = 0 | t[Q];
return Ke(this, t, e)
? Ge(this, t, !0)
: new this.constructor(Ve(t, e, !1));
}
};
((Lr.prototype[q] = ot),
(Lr.prototype.toString = function () {
return this.v.toString();
}));
var Rr = class {
constructor(t, e, n) {
((this.g = t), (this.h = e), (t = yr), (this.l = (!!t && n === t) || !1));
}
};
function Ir(t, e) {
return new Rr(t, e, yr);
}
function Fr(t, e, n, r, i) {
gr(t, n, Xr(e, r), i);
}
const Mr = Ir(function (t, e, n, r, i) {
return 2 === t.h && (Yn(t, gn(e, r, n), i), !0);
}, Fr),
Pr = Ir(function (t, e, n, r, i) {
return 2 === t.h && (Yn(t, gn(e, r, n), i), !0);
}, Fr);
var Cr = Symbol(),
Or = Symbol(),
Nr = Symbol(),
Ur = Symbol(),
Dr = Symbol();
let Br, Gr;
function jr(t, e, n, r) {
var i = r[t];
if (i) return i;
(((i = {}).qa = r),
(i.T = (function (t) {
switch (typeof t) {
case "boolean":
return (Pe ||= [0, void 0, !0]);
case "number":
return t > 0 ? void 0 : 0 === t ? (Ce ||= [0, void 0]) : [-t, void 0];
case "string":
return [0, t];
case "object":
return t;
}
})(r[0])));
var s = r[1];
let o = 1;
s &&
s.constructor === Object &&
((i.ba = s),
"function" == typeof (s = r[++o]) &&
((i.ma = !0), (Br ??= s), (Gr ??= r[o + 1]), (s = r[(o += 2)])));
const a = {};
for (
;
s && Array.isArray(s) && s.length && "number" == typeof s[0] && s[0] > 0;
) {
for (var c = 0; c < s.length; c++) a[s[c]] = s;
s = r[++o];
}
for (c = 1; void 0 !== s; ) {
let t;
"number" == typeof s && ((c += s), (s = r[++o]));
var h = void 0;
if ((s instanceof Rr ? (t = s) : ((t = Mr), o--), t?.l)) {
((s = r[++o]), (h = r));
var u = o;
("function" == typeof s && ((s = s()), (h[u] = s)), (h = s));
}
for (
u = c + 1,
"number" == typeof (s = r[++o]) && s < 0 && ((u -= s), (s = r[++o]));
c < u;
c++
) {
const r = a[c];
h ? n(i, c, t, h, r) : e(i, c, t, r);
}
}
return (r[t] = i);
}
function Vr(t) {
return Array.isArray(t) ? (t[0] instanceof Rr ? t : [Pr, t]) : [t, void 0];
}
function Xr(t, e) {
return t instanceof Lr ? t.v : Array.isArray(t) ? Ne(t, e) : void 0;
}
function Hr(t, e, n, r) {
const i = n.g;
t[e] = r ? (t, e, n) => i(t, e, n, r) : i;
}
function Wr(t, e, n, r, i) {
const s = n.g;
let o, a;
t[e] = (t, e, n) => s(t, e, n, (a ||= jr(Or, Hr, Wr, r).T), (o ||= zr(r)), i);
}
function zr(t) {
let e = t[Nr];
if (null != e) return e;
const n = jr(Or, Hr, Wr, t);
return (
(e = n.ma
? (t, e) => Br(t, e, n)
: (t, e) => {
for (; zn(e) && 4 != e.h; ) {
var r = e.l,
i = n[r];
if (null == i) {
var s = n.ba;
s && (s = s[r]) && null != (s = Yr(s)) && (i = n[r] = s);
}
if (null == i || !i(e, t, r)) {
if (((i = (s = e).m), Kn(s), s.ha)) var o = void 0;
else ((o = s.g.g - i), (s.g.g = i), (o = Vn(s.g, o)));
((i = void 0),
(s = t),
o &&
((i = s[H] ?? (s[H] = new xe()))[r] ?? (i[r] = [])).push(o));
}
}
return ((t = ke(t)) && (t.da = n.qa[Dr]), !0);
}),
(t[Nr] = e),
(t[Dr] = Kr.bind(t)),
e
);
}
function Kr(t, e, n, r) {
var i = this[Or];
const s = this[Nr],
o = Ne(void 0, i.T),
a = ke(t);
if (a) {
var c = !1,
h = i.ba;
if (h) {
if (
((i = (e, n, i) => {
if (0 !== i.length)
if (h[n])
for (const t of i) {
e = Hn(t);
try {
((c = !0), s(o, e));
} finally {
Wn(e);
}
}
else r?.(t, n, i);
}),
null == e)
)
Se(a, i);
else if (null != a) {
const t = a[e];
t && i(a, e, t);
}
if (c) {
let r = 0 | t[Q];
if (2 & r && 2048 & r && !n?.Ka) throw Error();
const i = pt(r),
s = (e, s) => {
if (null != Je(t, e, i)) {
if (1 === n?.Qa) return;
throw Error();
}
(null != s && (r = Qe(t, r, e, s, i)), delete a[e]);
};
null == e
? ft(o, 0 | o[Q], (t, e) => {
s(t, e);
})
: s(e, Je(o, e, i));
}
}
}
}
function Yr(t) {
const e = (t = Vr(t))[0].g;
if ((t = t[1])) {
const n = zr(t),
r = jr(Or, Hr, Wr, t).T;
return (t, i, s) => e(t, i, s, r, n);
}
return e;
}
function qr(t, e, n) {
t[e] = n.h;
}
function $r(t, e, n, r) {
let i, s;
const o = n.h;
t[e] = (t, e, n) => o(t, e, n, (s ||= jr(Cr, qr, $r, r).T), (i ||= Jr(r)));
}
function Jr(t) {
let e = t[Ur];
if (!e) {
const n = jr(Cr, qr, $r, t);
((e = (t, e) => Zr(t, e, n)), (t[Ur] = e));
}
return e;
}
function Zr(t, e, n) {
(ft(t, 0 | t[Q], (t, r) => {
if (null != r) {
var i = (function (t, e) {
var n = t[e];
if (n) return n;
if ((n = t.ba) && (n = n[e])) {
var r = (n = Vr(n))[0].h;
if ((n = n[1])) {
const e = Jr(n),
i = jr(Cr, qr, $r, n).T;
n = t.ma ? Gr(i, e) : (t, n, s) => r(t, n, s, i, e);
} else n = r;
return (t[e] = n);
}
})(n, t);
i ? i(e, r, t) : t < 500 || U(K, 3);
}
}),
(t = ke(t)) &&
Se(t, (t, n, r) => {
for (ur(e, e.g.end()), t = 0; t < r.length; t++)
ur(e, I(r[t]) || new Uint8Array(0));
}));
}
const Qr = Et(0);
function ti(t, e) {
if (Array.isArray(e)) {
var n = 0 | e[Q];
if (4 & n) return e;
for (var r = 0, i = 0; r < e.length; r++) {
const n = t(e[r]);
null != n && (e[i++] = n);
}
return (
i < r && (e.length = i),
(t = -1537 & (5 | n)) !== n && rt(e, t),
2 & t && Object.freeze(e),
e
);
}
}
function ei(t, e, n) {
return new Rr(t, e, n);
}
function ni(t, e, n) {
return new Rr(t, e, n);
}
function ri(t, e, n) {
Qe(t, 0 | t[Q], e, n, pt(0 | t[Q]));
}
var ii = Ir(
function (t, e, n, r, i) {
if (2 !== t.h) return !1;
if (
((t = Vt((t = Yn(t, Ne([void 0, void 0], r), i)))),
(i = pt((r = 0 | e[Q]))),
2 & r)
)
throw Error();
let s = Je(e, n, i);
if (s instanceof Ee)
0 != (2 & s.J) ? ((s = s.V()), s.push(t), Qe(e, r, n, s, i)) : s.Ma(t);
else if (Array.isArray(s)) {
var o = 0 | s[Q];
(8192 & o || rt(s, (o |= 8192)),
2 & o && ((s = cn(s)), Qe(e, r, n, s, i)),
s.push(t));
} else Qe(e, r, n, st([t]), i);
return !0;
},
function (t, e, n, r, i) {
if (e instanceof Ee)
e.forEach((e, s) => {
gr(t, n, Ne([s, e], r), i);
});
else if (Array.isArray(e)) {
for (let s = 0; s < e.length; s++) {
const o = e[s];
Array.isArray(o) && gr(t, n, Ne(o, r), i);
}
st(e);
}
},
);
function si(t, e, n) {
null != (e = $t(e)) && (lr(t, n, 5), (t = t.g), Pt(e), hr(t));
}
function oi(t, e, n) {
if (
((e = (function (t) {
if (null == t) return t;
const e = typeof t;
if ("bigint" === e) return String(Xt(64, t));
if (te(t)) {
if ("string" === e) return se(t);
if ("number" === e) return ie(t);
}
})(e)),
null != e)
) {
if ("string" == typeof e) rr(e);
if (null != e)
switch ((lr(t, n, 0), typeof e)) {
case "number":
((t = t.g), Mt(e), or(t, Rt, It));
break;
case "bigint":
((n = BigInt.asUintN(64, e)),
(n = new ir(
Number(n & BigInt(4294967295)),
Number(n >> BigInt(32)),
)),
or(t.g, n.h, n.g));
break;
default:
((n = rr(e)), or(t.g, n.h, n.g));
}
}
}
function ai(t, e, n) {
null != (e = ee(e)) && null != e && (lr(t, n, 0), cr(t.g, e));
}
function ci(t, e, n) {
null != (e = Zt(e)) && (lr(t, n, 0), t.g.g.push(e ? 1 : 0));
}
function hi(t, e, n) {
null != (e = le(e)) && pr(t, n, h(e));
}
function ui(t, e, n, r, i) {
gr(t, n, Xr(e, r), i);
}
function li(t, e, n) {
null !=
(e = null == e || "string" == typeof e || e instanceof F ? e : void 0) &&
pr(t, n, Pn(e, !0).buffer);
}
function fi(t, e, n) {
null != (e = ne(e)) && null != e && (lr(t, n, 0), ar(t.g, e));
}
function di(t, e, n) {
return (
(5 === t.h || 2 === t.h) &&
((e = un(e, 0 | e[Q], n)), 2 == t.h ? Jn(t, Dn, e) : e.push(Dn(t.g)), !0)
);
}
var pi = ei(
function (t, e, n) {
return 5 === t.h && (ri(e, n, Dn(t.g)), !0);
},
si,
br,
),
gi = ni(
di,
function (t, e, n) {
if (null != (e = ti($t, e)))
for (let o = 0; o < e.length; o++) {
var r = t,
i = n,
s = e[o];
null != s && (lr(r, i, 5), (r = r.g), Pt(s), hr(r));
}
},
br,
),
mi = ni(
di,
function (t, e, n) {
if (null != (e = ti($t, e)) && e.length) {
(lr(t, n, 2), ar(t.g, 4 * e.length));
for (let r = 0; r < e.length; r++) ((n = t.g), Pt(e[r]), hr(n));
}
},
br,
),
yi = ei(
function (t, e, n) {
return 5 === t.h && (ri(e, n, 0 === (t = Dn(t.g)) ? void 0 : t), !0);
},
si,
br,
),
_i = ei(
function (t, e, n) {
return (0 !== t.h ? (t = !1) : (ri(e, n, Cn(t.g, Nt)), (t = !0)), t);
},
oi,
Tr,
),
vi = ei(
function (t, e, n) {
return (
0 !== t.h
? (e = !1)
: (ri(e, n, (t = Cn(t.g, Nt)) === Qr ? void 0 : t), (e = !0)),
e
);
},
oi,
Tr,
),
Ei = ei(
function (t, e, n) {
return (0 !== t.h ? (t = !1) : (ri(e, n, Cn(t.g, Ot)), (t = !0)), t);
},
function (t, e, n) {
if (
((e = (function (t) {
if (null == t) return t;
var e = typeof t;
if ("bigint" === e) return String(Ht(64, t));
if (te(t)) {
if ("string" === e)
return (
(e = Kt(Number(t))),
Wt(e) && e >= 0
? (t = String(e))
: (-1 !== (e = t.indexOf(".")) && (t = t.substring(0, e)),
(e =
"-" !== t[0] &&
((e = t.length) < 20 ||
(20 === e && t <= "18446744073709551615"))) ||
(Gt(t), (t = Ut(Rt, It)))),
t
);
if ("number" === e)
return (
((t = Kt(t)) >= 0 && Wt(t)) || (Mt(t), (t = Ct(Rt, It))),
t
);
}
})(e)),
null != e)
) {
if ("string" == typeof e) tr(e);
if (null != e)
switch ((lr(t, n, 0), typeof e)) {
case "number":
((t = t.g), Mt(e), or(t, Rt, It));
break;
case "bigint":
((n = BigInt.asUintN(64, e)),
(n = new er(
Number(n & BigInt(4294967295)),
Number(n >> BigInt(32)),
)),
or(t.g, n.h, n.g));
break;
default:
((n = tr(e)), or(t.g, n.h, n.g));
}
}
},
Ar,
),
wi = ei(
function (t, e, n) {
return 0 === t.h && (ri(e, n, Nn(t.g)), !0);
},
ai,
Er,
),
Ti = ni(
function (t, e, n) {
return (
(0 === t.h || 2 === t.h) &&
((e = un(e, 0 | e[Q], n)),
2 == t.h ? Jn(t, Nn, e) : e.push(Nn(t.g)),
!0)
);
},
function (t, e, n) {
if (null != (e = ti(ee, e)) && e.length) {
n = fr(t, n);
for (let n = 0; n < e.length; n++) cr(t.g, e[n]);
dr(t, n);
}
},
Er,
),
Ai = ei(
function (t, e, n) {
return 0 === t.h && (ri(e, n, 0 === (t = Nn(t.g)) ? void 0 : t), !0);
},
ai,
Er,
),
bi = ei(
function (t, e, n) {
return 0 === t.h && (ri(e, n, On(t.g)), !0);
},
ci,
_r,
),
ki = ei(
function (t, e, n) {
return 0 === t.h && (ri(e, n, !1 === (t = On(t.g)) ? void 0 : t), !0);
},
ci,
_r,
),
Si = ni(
function (t, e, n) {
return 2 === t.h && ((t = qn(t)), un(e, 0 | e[Q], n).push(t), !0);
},
function (t, e, n) {
if (null != (e = ti(le, e)))
for (let o = 0; o < e.length; o++) {
var r = t,
i = n,
s = e[o];
null != s && pr(r, i, h(s));
}
},
vr,
),
xi = ei(
function (t, e, n) {
return 2 === t.h && (ri(e, n, "" === (t = qn(t)) ? void 0 : t), !0);
},
hi,
vr,
),
Li = ei(
function (t, e, n) {
return 2 === t.h && (ri(e, n, qn(t)), !0);
},
hi,
vr,
),
Ri = (function (t, e, n = yr) {
return new Rr(t, e, n);
})(
function (t, e, n, r, i) {
return (
2 === t.h &&
((r = Ne(void 0, r)), un(e, 0 | e[Q], n).push(r), Yn(t, r, i), !0)
);
},
function (t, e, n, r, i) {
if (Array.isArray(e)) {
for (let s = 0; s < e.length; s++) ui(t, e[s], n, r, i);
1 & (t = 0 | e[Q]) || rt(e, 1 | t);
}
},
),
Ii = Ir(function (t, e, n, r, i, s) {
if (2 !== t.h) return !1;
let o = 0 | e[Q];
return (dn(e, o, s, n, pt(o)), Yn(t, (e = gn(e, r, n)), i), !0);
}, ui),
Fi = ei(
function (t, e, n) {
return 2 === t.h && (ri(e, n, $n(t)), !0);
},
li,
kr,
),
Mi = ni(
function (t, e, n) {
return (
(0 === t.h || 2 === t.h) &&
((e = un(e, 0 | e[Q], n)),
2 == t.h ? Jn(t, Un, e) : e.push(Un(t.g)),
!0)
);
},
function (t, e, n) {
if (null != (e = ti(ne, e)))
for (let o = 0; o < e.length; o++) {
var r = t,
i = n,
s = e[o];
null != s && (lr(r, i, 0), ar(r.g, s));
}
},
wr,
),
Pi = ei(
function (t, e, n) {
return 0 === t.h && (ri(e, n, 0 === (t = Un(t.g)) ? void 0 : t), !0);
},
fi,
wr,
),
Ci = ei(
function (t, e, n) {
return 0 === t.h && (ri(e, n, Nn(t.g)), !0);
},
function (t, e, n) {
null != (e = ee(e)) && ((e = parseInt(e, 10)), lr(t, n, 0), cr(t.g, e));
},
Sr,
);
class Oi {
constructor(t, e) {
var n = Qi;
((this.g = t),
(this.h = e),
(this.m = yn),
(this.j = wn),
(this.defaultValue = void 0),
(this.l = null != n.Oa ? dt : void 0));
}
register() {
m(this);
}
}
function Ni(t, e) {
return new Oi(t, e);
}
function Ui(t, e) {
return (n, r) => {
{
const s = { ea: !0 };
(r && Object.assign(s, r), (n = Hn(n, void 0, void 0, s)));
try {
const r = new t(),
s = r.v;
zr(e)(s, n);
var i = r;
} finally {
Wn(n);
}
}
return i;
};
}
function Di(t) {
return function () {
const e = new (class {
constructor() {
((this.l = []),
(this.h = 0),
(this.g = new (class {
constructor() {
this.g = [];
}
length() {
return this.g.length;
}
end() {
const t = this.g;
return ((this.g = []), t);
}
})()));
}
})();
(Zr(this.v, e, jr(Cr, qr, $r, t)), ur(e, e.g.end()));
const n = new Uint8Array(e.h),
r = e.l,
i = r.length;
let s = 0;
for (let t = 0; t < i; t++) {
const e = r[t];
(n.set(e, s), (s += e.length));
}
return ((e.l = [n]), n);
};
}
var Bi = class extends Lr {
constructor(t) {
super(t);
}
},
Gi = [
0,
xi,
ei(
function (t, e, n) {
return 2 === t.h && (ri(e, n, (t = $n(t)) === R() ? void 0 : t), !0);
},
function (t, e, n) {
if (null != e) {
if (e instanceof Lr) {
const r = e.Ra;
return void (r
? ((e = r(e)), null != e && pr(t, n, Pn(e, !0).buffer))
: U(K, 3));
}
if (Array.isArray(e)) return void U(K, 3);
}
li(t, e, n);
},
kr,
),
];
let ji,
Vi = globalThis.trustedTypes;
function Xi(t) {
var e;
return (
void 0 === ji &&
(ji = (function () {
let t = null;
if (!Vi) return t;
try {
const e = (t) => t;
t = Vi.createPolicy("goog#html", {
createHTML: e,
createScript: e,
createScriptURL: e,
});
} catch (t) {}
return t;
})()),
(t = (e = ji) ? e.createScriptURL(t) : t),
new (class {
constructor(t) {
this.g = t;
}
toString() {
return this.g + "";
}
})(t)
);
}
function Hi(t, ...e) {
if (0 === e.length) return Xi(t[0]);
let n = t[0];
for (let r = 0; r < e.length; r++) n += encodeURIComponent(e[r]) + t[r + 1];
return Xi(n);
}
var Wi = [0, wi, Ci, bi, -1, Ti, Ci, -1, bi],
zi = class extends Lr {
constructor(t) {
super(t);
}
},
Ki = [
0,
bi,
Li,
bi,
Ci,
-1,
ni(
function (t, e, n) {
return (
(0 === t.h || 2 === t.h) &&
((e = un(e, 0 | e[Q], n)),
2 == t.h ? Jn(t, Bn, e) : e.push(Nn(t.g)),
!0)
);
},
function (t, e, n) {
if (null != (e = ti(ee, e)) && e.length) {
n = fr(t, n);
for (let n = 0; n < e.length; n++) cr(t.g, e[n]);
dr(t, n);
}
},
Sr,
),
Li,
-1,
[0, bi, -1],
Ci,
bi,
-1,
],
Yi = [
0,
3,
bi,
-1,
2,
[
0,
[2],
wi,
Ii,
[
0,
ei(
function (t, e, n) {
return 0 === t.h && (ri(e, n, Un(t.g)), !0);
},
fi,
wr,
),
],
],
[0, Ci, bi, Ci, bi, Ci, bi, Li, -1],
[0, [3, 4], Li, -1, Ii, [0, wi], Ii, [0, Ci]],
[0],
],
qi = [0, Li, -2],
$i = class extends Lr {
constructor(t) {
super(t);
}
},
Ji = [0],
Zi = [0, wi, bi, 1, bi, -4],
Qi = class extends Lr {
constructor(t) {
super(t, 2);
}
},
ts = {};
ts[336783863] = [
0,
Li,
bi,
-1,
wi,
[
0,
[1, 2, 3, 4, 5, 6, 7, 8, 9],
Ii,
Ji,
Ii,
Ki,
Ii,
qi,
Ii,
Zi,
Ii,
Wi,
Ii,
[0, Li, -2],
Ii,
[0, Li, Ci],
Ii,
Yi,
Ii,
[0, Ci, -1, bi],
],
[0, Li],
bi,
[0, [1, 3], [2, 4], Ii, [0, Ti], -1, Ii, [0, Si], -1, Ri, [0, Li, -1]],
Li,
];
var es = [0, vi, -1, ki, -3, vi, Ti, xi, Ai, vi, -1, ki, Ai, ki, -2, xi];
function ns(t, e) {
Fn(t, 3, e);
}
function rs(t, e) {
Fn(t, 4, e);
}
var is = class extends Lr {
constructor(t) {
super(t, 500);
}
o(t) {
return wn(this, 0, 7, t);
}
},
ss = [-1, {}],
os = [0, Li, 1, ss],
as = [0, Li, Si, ss];
function cs(t, e) {
bn(t, 1, is, e);
}
function hs(t, e) {
Fn(t, 10, e);
}
function us(t, e) {
Fn(t, 15, e);
}
var ls = class extends Lr {
constructor(t) {
super(t, 500);
}
o(t) {
return wn(this, 0, 1001, t);
}
},
fs = [
-500,
Ri,
[
-500,
xi,
-1,
Si,
-3,
[-2, ts, bi],
Ri,
Gi,
Ai,
-1,
os,
as,
Ri,
[0, xi, ki],
xi,
es,
Ai,
Si,
987,
Si,
],
4,
Ri,
[-500, Li, -1, [-1, {}], 998, Li],
Ri,
[-500, Li, Si, -1, [-2, {}, bi], 997, Si, -1],
Ai,
Ri,
[-500, Li, Si, ss, 998, Si],
Si,
Ai,
os,
as,
Ri,
[0, xi, -1, ss],
Si,
-2,
es,
xi,
-1,
ki,
[0, ki, Pi],
978,
ss,
Ri,
Gi,
];
ls.prototype.g = Di(fs);
var ds = Ui(ls, fs),
ps = class extends Lr {
constructor(t) {
super(t);
}
},
gs = class extends Lr {
constructor(t) {
super(t);
}
g() {
return vn(this, ps, 1);
}
},
ms = [0, Ri, [0, wi, pi, Li, -1]],
ys = Ui(gs, ms),
_s = class extends Lr {
constructor(t) {
super(t);
}
},
vs = class extends Lr {
constructor(t) {
super(t);
}
},
Es = class extends Lr {
constructor(t) {
super(t);
}
l() {
return yn(this, _s, 2);
}
g() {
return vn(this, vs, 5);
}
},
ws = Ui(
class extends Lr {
constructor(t) {
super(t);
}
},
[
0,
Si,
Ti,
mi,
[
0,
Ci,
[0, wi, -3],
[0, pi, -3],
[0, wi, -1, [0, Ri, [0, wi, -2]]],
Ri,
[0, pi, -1, Li, pi],
],
Li,
-1,
_i,
Ri,
[0, wi, pi],
Si,
_i,
],
),
Ts = class extends Lr {
constructor(t) {
super(t);
}
},
As = Ui(
class extends Lr {
constructor(t) {
super(t);
}
},
[0, Ri, [0, pi, -4]],
),
bs = class extends Lr {
constructor(t) {
super(t);
}
},
ks = Ui(
class extends Lr {
constructor(t) {
super(t);
}
},
[0, Ri, [0, pi, -4]],
),
Ss = class extends Lr {
constructor(t) {
super(t);
}
},
xs = [0, wi, -1, mi, Ci],
Ls = class extends Lr {
constructor(t) {
super(t);
}
};
Ls.prototype.g = Di([0, pi, -4, _i]);
var Rs = class extends Lr {
constructor(t) {
super(t);
}
},
Is = Ui(
class extends Lr {
constructor(t) {
super(t);
}
},
[0, Ri, [0, 1, wi, Li, ms], _i],
),
Fs = class extends Lr {
constructor(t) {
super(t);
}
},
Ms = class extends Lr {
constructor(t) {
super(t);
}
na() {
const t = $e(this, 1, void 0, void 0, an);
return null == t ? R() : t;
}
},
Ps = class extends Lr {
constructor(t) {
super(t);
}
},
Cs = [1, 2],
Os = Ui(
class extends Lr {
constructor(t) {
super(t);
}
},
[0, Ri, [0, Cs, Ii, [0, mi], Ii, [0, Fi], wi, Li], _i],
),
Ns = class extends Lr {
constructor(t) {
super(t);
}
},
Us = [0, Li, wi, pi, Si, -1],
Ds = class extends Lr {
constructor(t) {
super(t);
}
},
Bs = [0, bi, -1],
Gs = class extends Lr {
constructor(t) {
super(t);
}
},
js = [1, 2, 3, 4, 5, 6],
Vs = class extends Lr {
constructor(t) {
super(t);
}
g() {
return null != $e(this, 1, void 0, void 0, an);
}
l() {
return null != le($e(this, 2));
}
},
Xs = class extends Lr {
constructor(t) {
super(t);
}
g() {
return Zt($e(this, 2)) ?? !1;
}
},
Hs = [0, Fi, Li, [0, wi, _i, -1], [0, Ei, _i]],
Ws = [0, Hs, bi, [0, js, Ii, Zi, Ii, Ki, Ii, Wi, Ii, Ji, Ii, qi, Ii, Yi], Ci],
zs = class extends Lr {
constructor(t) {
super(t);
}
},
Ks = [0, Ws, pi, -1, wi],
Ys = Ni(502141897, zs);
ts[502141897] = Ks;
var qs = Ui(
class extends Lr {
constructor(t) {
super(t);
}
},
[0, [0, Ci, -1, gi, Mi], xs],
),
$s = class extends Lr {
constructor(t) {
super(t);
}
},
Js = class extends Lr {
constructor(t) {
super(t);
}
},
Zs = [0, Ws, pi, [0, Ws], bi],
Qs = Ni(508968150, Js);
((ts[508968150] = [0, Ws, Ks, Zs, pi, [0, [0, Hs]]]), (ts[508968149] = Zs));
var to = class extends Lr {
constructor(t) {
super(t);
}
l() {
return yn(this, Ns, 2);
}
g() {
Ze(this, 2);
}
},
eo = [0, Ws, Us];
ts[478825465] = eo;
var no = class extends Lr {
constructor(t) {
super(t);
}
},
ro = class extends Lr {
constructor(t) {
super(t);
}
},
io = class extends Lr {
constructor(t) {
super(t);
}
},
so = class extends Lr {
constructor(t) {
super(t);
}
},
oo = class extends Lr {
constructor(t) {
super(t);
}
},
ao = [0, Ws, [0, Ws], eo, -1],
co = [0, Ws, pi, wi],
ho = [0, Ws, pi],
uo = [0, Ws, co, ho, pi],
lo = Ni(479097054, oo);
((ts[479097054] = [0, Ws, uo, ao]), (ts[463370452] = ao), (ts[464864288] = co));
var fo = Ni(462713202, so);
((ts[462713202] = uo), (ts[474472470] = ho));
var po = class extends Lr {
constructor(t) {
super(t);
}
},
go = class extends Lr {
constructor(t) {
super(t);
}
},
mo = class extends Lr {
constructor(t) {
super(t);
}
},
yo = class extends Lr {
constructor(t) {
super(t);
}
},
_o = [0, Ws, pi, -1, wi],
vo = [0, Ws, pi, bi];
yo.prototype.g = Di([0, Ws, ho, [0, Ws], Ks, Zs, _o, vo]);
var Eo = class extends Lr {
constructor(t) {
super(t);
}
},
wo = Ni(456383383, Eo);
ts[456383383] = [0, Ws, Us];
var To = class extends Lr {
constructor(t) {
super(t);
}
},
Ao = Ni(476348187, To);
ts[476348187] = [0, Ws, Bs];
var bo = class extends Lr {
constructor(t) {
super(t);
}
},
ko = class extends Lr {
constructor(t) {
super(t);
}
},
So = [0, Ci, -1],
xo = Ni(
458105876,
class extends Lr {
constructor(t) {
super(t);
}
g() {
let t;
var e = this.v;
const n = 0 | e[Q];
return (
(t = at(this, n)),
(e = (function (t, e, n, r) {
var i = ko;
!r && He(t) && (n = 0 | (e = t.v)[Q]);
var s = Je(e, 2);
if (((t = !1), null == s)) {
if (r) return be();
s = [];
} else if (s.constructor === Ee) {
if (!(2 & s.J) || r) return s;
s = s.V();
} else Array.isArray(s) ? (t = !!(2 & (0 | s[Q]))) : (s = []);
if (r) {
if (!s.length) return be();
t || ((t = !0), it(s));
} else t && ((t = !1), st(s), (s = cn(s)));
return (
!t && 32 & n && nt(s, 32),
(n = Qe(e, n, 2, (r = new Ee(s, i, de, void 0)))),
t || ze(e, n),
r
);
})(this, e, n, t)),
!t && ko && (e.ra = !0),
e
);
}
},
);
ts[458105876] = [0, So, ii, [!0, _i, [0, Li, -1, Si]], [0, Ti, bi, Ci]];
var Lo = class extends Lr {
constructor(t) {
super(t);
}
},
Ro = Ni(458105758, Lo);
ts[458105758] = [0, Ws, Li, So];
var Io = class extends Lr {
constructor(t) {
super(t);
}
},
Fo = [0, yi, -1, ki],
Mo = class extends Lr {
constructor(t) {
super(t);
}
},
Po = class extends Lr {
constructor(t) {
super(t);
}
},
Co = [1, 2];
Po.prototype.g = Di([0, Co, Ii, Fo, Ii, [0, Ri, Fo]]);
var Oo = class extends Lr {
constructor(t) {
super(t);
}
},
No = Ni(443442058, Oo);
((ts[443442058] = [0, Ws, Li, wi, pi, Si, -1, bi, pi]), (ts[514774813] = _o));
var Uo = class extends Lr {
constructor(t) {
super(t);
}
},
Do = Ni(516587230, Uo);
function Bo(t, e) {
return (
(e = e ? e.clone() : new Ns()),
void 0 !== t.displayNamesLocale
? Ze(e, 1, ue(t.displayNamesLocale))
: void 0 === t.displayNamesLocale && Ze(e, 1),
void 0 !== t.maxResults
? xn(e, 2, t.maxResults)
: "maxResults" in t && Ze(e, 2),
void 0 !== t.scoreThreshold
? Ln(e, 3, t.scoreThreshold)
: "scoreThreshold" in t && Ze(e, 3),
void 0 !== t.categoryAllowlist
? In(e, 4, t.categoryAllowlist)
: "categoryAllowlist" in t && Ze(e, 4),
void 0 !== t.categoryDenylist
? In(e, 5, t.categoryDenylist)
: "categoryDenylist" in t && Ze(e, 5),
e
);
}
function Go(t) {
const e = Number(t);
return Number.isSafeInteger(e) ? e : String(t);
}
function jo(t, e = -1, n = "") {
return {
categories: t.map((t) => ({
index: kn(t, 1) ?? 0 ?? -1,
score: Sn(t, 2) ?? 0,
categoryName: le($e(t, 3)) ?? "" ?? "",
displayName: le($e(t, 4)) ?? "" ?? "",
})),
headIndex: e,
headName: n,
};
}
function Vo(t) {
const e = {
classifications: vn(t, Rs, 1).map((t) =>
jo(yn(t, gs, 4)?.g() ?? [], kn(t, 2) ?? 0, le($e(t, 3)) ?? ""),
),
};
return (
null !=
(function (t) {
return null == t
? t
: "bigint" == typeof t
? (wt(t)
? (t = Number(t))
: ((t = Xt(64, t)), (t = wt(t) ? Number(t) : String(t))),
t)
: te(t)
? "number" == typeof t
? ie(t)
: se(t)
: void 0;
})($e(t, 2, void 0, void 0, ce)) &&
(e.timestampMs = Go($e(t, 2, void 0, void 0, ce) ?? Ye)),
e
);
}
function Xo(t) {
var e = en(t, 3, $t, tn()),
n = en(t, 2, ee, tn()),
r = en(t, 1, le, tn()),
i = en(t, 9, le, tn());
const s = { categories: [], keypoints: [] };
for (let t = 0; t < e.length; t++)
s.categories.push({
score: e[t],
index: n[t] ?? -1,
categoryName: r[t] ?? "",
displayName: i[t] ?? "",
});
if (
((e = yn(t, Es, 4)?.l()) &&
(s.boundingBox = {
originX: kn(e, 1, qe) ?? 0,
originY: kn(e, 2, qe) ?? 0,
width: kn(e, 3, qe) ?? 0,
height: kn(e, 4, qe) ?? 0,
angle: 0,
}),
yn(t, Es, 4)?.g().length)
)
for (const e of yn(t, Es, 4).g())
s.keypoints.push({
x: $e(e, 1, void 0, qe, $t) ?? 0,
y: $e(e, 2, void 0, qe, $t) ?? 0,
score: $e(e, 4, void 0, qe, $t) ?? 0,
label: le($e(e, 3, void 0, qe)) ?? "",
});
return s;
}
function Ho(t) {
const e = [];
for (const n of vn(t, bs, 1))
e.push({
x: Sn(n, 1) ?? 0,
y: Sn(n, 2) ?? 0,
z: Sn(n, 3) ?? 0,
visibility: Sn(n, 4) ?? 0,
});
return e;
}
function Wo(t) {
const e = [];
for (const n of vn(t, Ts, 1))
e.push({
x: Sn(n, 1) ?? 0,
y: Sn(n, 2) ?? 0,
z: Sn(n, 3) ?? 0,
visibility: Sn(n, 4) ?? 0,
});
return e;
}
function zo(t) {
return Array.from(t, (t) => (t > 127 ? t - 256 : t));
}
function Ko(t, e) {
if (t.length !== e.length)
throw Error(
`Cannot compute cosine similarity between embeddings of different sizes (${t.length} vs. ${e.length}).`,
);
let n = 0,
r = 0,
i = 0;
for (let s = 0; s < t.length; s++)
((n += t[s] * e[s]), (r += t[s] * t[s]), (i += e[s] * e[s]));
if (r <= 0 || i <= 0)
throw Error("Cannot compute cosine similarity on embedding with 0 norm.");
return n / Math.sqrt(r * i);
}
let Yo;
((ts[516587230] = [0, Ws, _o, vo, pi]), (ts[518928384] = vo));
const qo = new Uint8Array([
0, 97, 115, 109, 1, 0, 0, 0, 1, 5, 1, 96, 0, 1, 123, 3, 2, 1, 0, 10, 10, 1, 8,
0, 65, 0, 253, 15, 253, 98, 11,
]);
async function $o(t) {
if (t) return !0;
if (void 0 === Yo)
try {
(await WebAssembly.instantiate(qo), (Yo = !0));
} catch {
Yo = !1;
}
return Yo;
}
async function Jo(t, e, n) {
return {
wasmLoaderPath: `${e}/${t}_${(n = `wasm${n ? "_module" : ""}${(await $o(n)) ? "" : "_nosimd"}_internal`)}.js`,
wasmBinaryPath: `${e}/${t}_${n}.wasm`,
};
}
var Zo = class {};
function Qo() {
var t = navigator;
return (
"undefined" != typeof OffscreenCanvas &&
(!(function (t = navigator) {
return (t = t.userAgent).includes("Safari") && !t.includes("Chrome");
})(t) ||
!!(
(t = t.userAgent.match(/Version\/([\d]+).*Safari/)) &&
t.length >= 1 &&
Number(t[1]) >= 17
))
);
}
async function ta(t) {
if ("function" != typeof importScripts) {
const e = document.createElement("script");
return (
(e.src = t.toString()),
(e.crossOrigin = "anonymous"),
new Promise((t, n) => {
(e.addEventListener(
"load",
() => {
t();
},
!1,
),
e.addEventListener(
"error",
(t) => {
n(t);
},
!1,
),
document.body.appendChild(e));
})
);
}
try {
importScripts(t.toString());
} catch (e) {
if (!(e instanceof TypeError)) throw e;
{
const e = self.import;
e ? await e(t.toString()) : await import(t.toString());
}
}
}
function ea(t) {
return void 0 !== t.videoWidth
? [t.videoWidth, t.videoHeight]
: void 0 !== t.naturalWidth
? [t.naturalWidth, t.naturalHeight]
: void 0 !== t.displayWidth
? [t.displayWidth, t.displayHeight]
: [t.width, t.height];
}
function na(t, e, n) {
(t.m ||
console.error(
"No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target",
),
n((e = t.i.stringToNewUTF8(e))),
t.i._free(e));
}
function ra(t, e, n) {
if (!t.i.canvas) throw Error("No OpenGL canvas configured.");
if (
(n ? t.i._bindTextureToStream(n) : t.i._bindTextureToCanvas(),
!(n = t.i.canvas.getContext("webgl2") || t.i.canvas.getContext("webgl")))
)
throw Error(
"Failed to obtain WebGL context from the provided canvas. `getContext()` should only be invoked with `webgl` or `webgl2`.",
);
(t.i.gpuOriginForWebTexturesIsBottomLeft &&
n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL, !0),
n.texImage2D(n.TEXTURE_2D, 0, n.RGBA, n.RGBA, n.UNSIGNED_BYTE, e),
t.i.gpuOriginForWebTexturesIsBottomLeft &&
n.pixelStorei(n.UNPACK_FLIP_Y_WEBGL, !1));
const [r, i] = ea(e);
return (
!t.l ||
(r === t.i.canvas.width && i === t.i.canvas.height) ||
((t.i.canvas.width = r), (t.i.canvas.height = i)),
[r, i]
);
}
function ia(t, e, n) {
t.m ||
console.error(
"No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target",
);
const r = new Uint32Array(e.length);
for (let n = 0; n < e.length; n++) r[n] = t.i.stringToNewUTF8(e[n]);
((e = t.i._malloc(4 * r.length)), t.i.HEAPU32.set(r, e >> 2), n(e));
for (const e of r) t.i._free(e);
t.i._free(e);
}
function sa(t, e, n) {
((t.i.simpleListeners = t.i.simpleListeners || {}),
(t.i.simpleListeners[e] = n));
}
function oa(t, e, n) {
let r = [];
((t.i.simpleListeners = t.i.simpleListeners || {}),
(t.i.simpleListeners[e] = (t, e, i) => {
e ? (n(r, i), (r = [])) : r.push(t);
}));
}
((Zo.forVisionTasks = function (t, e = !1) {
return Jo("vision", t ?? Hi``, e);
}),
(Zo.forTextTasks = function (t, e = !1) {
return Jo("text", t ?? Hi``, e);
}),
(Zo.forGenAiTasks = function (t, e = !1) {
return Jo("genai", t ?? Hi``, e);
}),
(Zo.forAudioTasks = function (t, e = !1) {
return Jo("audio", t ?? Hi``, e);
}),
(Zo.isSimdSupported = function (t = !1) {
return $o(t);
}));
async function aa(t, e, n, r) {
return (
(t = await (async (t, e, n, r, i) => {
if ((e && (await ta(e)), !self.ModuleFactory))
throw Error("ModuleFactory not set.");
if (n && (await ta(n), !self.ModuleFactory))
throw Error("ModuleFactory not set.");
return (
self.Module &&
i &&
(((e = self.Module).locateFile = i.locateFile),
i.mainScriptUrlOrBlob &&
(e.mainScriptUrlOrBlob = i.mainScriptUrlOrBlob)),
(i = await self.ModuleFactory(self.Module || i)),
(self.ModuleFactory = self.Module = void 0),
new t(i, r)
);
})(t, n.wasmLoaderPath, n.assetLoaderPath, e, {
locateFile: (t) =>
t.endsWith(".wasm")
? n.wasmBinaryPath.toString()
: n.assetBinaryPath && t.endsWith(".data")
? n.assetBinaryPath.toString()
: t,
})),
await t.o(r),
t
);
}
function ca(t, e) {
const n = yn(t.baseOptions, Vs, 1) || new Vs();
("string" == typeof e
? (Ze(n, 2, ue(e)), Ze(n, 1))
: e instanceof Uint8Array && (Ze(n, 1, ht(e, !1)), Ze(n, 2)),
wn(t.baseOptions, 0, 1, n));
}
function ha(t) {
try {
const e = t.H.length;
if (1 === e) throw Error(t.H[0].message);
if (e > 1)
throw Error(
"Encountered multiple errors: " + t.H.map((t) => t.message).join(", "),
);
} finally {
t.H = [];
}
}
function ua(t, e) {
t.C = Math.max(t.C, e);
}
function la(t, e) {
((t.B = new is()),
Rn(t.B, 2, "PassThroughCalculator"),
ns(t.B, "free_memory"),
rs(t.B, "free_memory_unused_out"),
hs(e, "free_memory"),
cs(e, t.B));
}
function fa(t, e) {
(ns(t.B, e), rs(t.B, e + "_unused_out"));
}
function da(t) {
t.g.addBoolToStream(!0, "free_memory", t.C);
}
var pa = class {
constructor(t) {
((this.g = t),
(this.H = []),
(this.C = 0),
this.g.setAutoRenderToScreen(!1));
}
l(t, e = !0) {
if (e) {
const e = t.baseOptions || {};
if (t.baseOptions?.modelAssetBuffer && t.baseOptions?.modelAssetPath)
throw Error(
"Cannot set both baseOptions.modelAssetPath and baseOptions.modelAssetBuffer",
);
if (
!(
yn(this.baseOptions, Vs, 1)?.g() ||
yn(this.baseOptions, Vs, 1)?.l() ||
t.baseOptions?.modelAssetBuffer ||
t.baseOptions?.modelAssetPath
)
)
throw Error(
"Either baseOptions.modelAssetPath or baseOptions.modelAssetBuffer must be set",
);
if (
((function (t, e) {
let n = yn(t.baseOptions, Gs, 3);
if (!n) {
var r = (n = new Gs()),
i = new $i();
Tn(r, 4, js, i);
}
("delegate" in e &&
("GPU" === e.delegate
? ((e = n), (r = new zi()), Tn(e, 2, js, r))
: ((e = n), (r = new $i()), Tn(e, 4, js, r))),
wn(t.baseOptions, 0, 3, n));
})(this, e),
e.modelAssetPath)
)
return fetch(e.modelAssetPath.toString())
.then((t) => {
if (t.ok) return t.arrayBuffer();
throw Error(
`Failed to fetch model: ${e.modelAssetPath} (${t.status})`,
);
})
.then((t) => {
try {
this.g.i.FS_unlink("/model.dat");
} catch {}
(this.g.i.FS_createDataFile(
"/",
"model.dat",
new Uint8Array(t),
!0,
!1,
!1,
),
ca(this, "/model.dat"),
this.m(),
this.L());
});
if (e.modelAssetBuffer instanceof Uint8Array)
ca(this, e.modelAssetBuffer);
else if (e.modelAssetBuffer)
return (async function (t) {
const e = [];
for (var n = 0; ; ) {
const { done: r, value: i } = await t.read();
if (r) break;
(e.push(i), (n += i.length));
}
if (0 === e.length) return new Uint8Array(0);
if (1 === e.length) return e[0];
((t = new Uint8Array(n)), (n = 0));
for (const r of e) (t.set(r, n), (n += r.length));
return t;
})(e.modelAssetBuffer).then((t) => {
(ca(this, t), this.m(), this.L());
});
}
return (this.m(), this.L(), Promise.resolve());
}
L() {}
ca() {
let t;
if (
(this.g.ca((e) => {
t = ds(e);
}),
!t)
)
throw Error("Failed to retrieve CalculatorGraphConfig");
return t;
}
setGraph(t, e) {
(this.g.attachErrorListener((t, e) => {
this.H.push(Error(e));
}),
this.g.Ja(),
this.g.setGraph(t, e),
(this.B = void 0),
ha(this));
}
finishProcessing() {
(this.g.finishProcessing(), ha(this));
}
close() {
((this.B = void 0), this.g.closeGraph());
}
};
function ga(t, e) {
if (!t) throw Error(`Unable to obtain required WebGL resource: ${e}`);
return t;
}
pa.prototype.close = pa.prototype.close;
class ma {
constructor(t, e, n, r) {
((this.g = t), (this.h = e), (this.m = n), (this.l = r));
}
bind() {
this.g.bindVertexArray(this.h);
}
close() {
(this.g.deleteVertexArray(this.h),
this.g.deleteBuffer(this.m),
this.g.deleteBuffer(this.l));
}
}
function ya(t, e, n) {
const r = t.g;
if (
((n = ga(r.createShader(n), "Failed to create WebGL shader")),
r.shaderSource(n, e),
r.compileShader(n),
!r.getShaderParameter(n, r.COMPILE_STATUS))
)
throw Error(`Could not compile WebGL shader: ${r.getShaderInfoLog(n)}`);
return (r.attachShader(t.h, n), n);
}
function _a(t, e) {
const n = t.g,
r = ga(n.createVertexArray(), "Failed to create vertex array");
n.bindVertexArray(r);
const i = ga(n.createBuffer(), "Failed to create buffer");
(n.bindBuffer(n.ARRAY_BUFFER, i),
n.enableVertexAttribArray(t.O),
n.vertexAttribPointer(t.O, 2, n.FLOAT, !1, 0, 0),
n.bufferData(
n.ARRAY_BUFFER,
new Float32Array([-1, -1, -1, 1, 1, 1, 1, -1]),
n.STATIC_DRAW,
));
const s = ga(n.createBuffer(), "Failed to create buffer");
return (
n.bindBuffer(n.ARRAY_BUFFER, s),
n.enableVertexAttribArray(t.L),
n.vertexAttribPointer(t.L, 2, n.FLOAT, !1, 0, 0),
n.bufferData(
n.ARRAY_BUFFER,
new Float32Array(e ? [0, 1, 0, 0, 1, 0, 1, 1] : [0, 0, 0, 1, 1, 1, 1, 0]),
n.STATIC_DRAW,
),
n.bindBuffer(n.ARRAY_BUFFER, null),
n.bindVertexArray(null),
new ma(n, r, i, s)
);
}
function va(t, e) {
if (t.g) {
if (e !== t.g) throw Error("Cannot change GL context once initialized");
} else t.g = e;
}
function Ea(t, e, n, r) {
return (
va(t, e),
t.h || (t.m(), t.D()),
n
? (t.u || (t.u = _a(t, !0)), (n = t.u))
: (t.A || (t.A = _a(t, !1)), (n = t.A)),
e.useProgram(t.h),
n.bind(),
t.l(),
(t = r()),
n.g.bindVertexArray(null),
t
);
}
function wa(t, e, n) {
return (
va(t, e),
(t = ga(e.createTexture(), "Failed to create texture")),
e.bindTexture(e.TEXTURE_2D, t),
e.texParameteri(e.TEXTURE_2D, e.TEXTURE_WRAP_S, e.CLAMP_TO_EDGE),
e.texParameteri(e.TEXTURE_2D, e.TEXTURE_WRAP_T, e.CLAMP_TO_EDGE),
e.texParameteri(e.TEXTURE_2D, e.TEXTURE_MIN_FILTER, n ?? e.LINEAR),
e.texParameteri(e.TEXTURE_2D, e.TEXTURE_MAG_FILTER, n ?? e.LINEAR),
e.bindTexture(e.TEXTURE_2D, null),
t
);
}
function Ta(t, e, n) {
(va(t, e),
t.B || (t.B = ga(e.createFramebuffer(), "Failed to create framebuffe.")),
e.bindFramebuffer(e.FRAMEBUFFER, t.B),
e.framebufferTexture2D(
e.FRAMEBUFFER,
e.COLOR_ATTACHMENT0,
e.TEXTURE_2D,
n,
0,
));
}
function Aa(t) {
t.g?.bindFramebuffer(t.g.FRAMEBUFFER, null);
}
var ba = class {
H() {
return "\n precision mediump float;\n varying vec2 vTex;\n uniform sampler2D inputTexture;\n void main() {\n gl_FragColor = texture2D(inputTexture, vTex);\n }\n ";
}
m() {
const t = this.g;
if (
((this.h = ga(t.createProgram(), "Failed to create WebGL program")),
(this.X = ya(
this,
"\n attribute vec2 aVertex;\n attribute vec2 aTex;\n varying vec2 vTex;\n void main(void) {\n gl_Position = vec4(aVertex, 0.0, 1.0);\n vTex = aTex;\n }",
t.VERTEX_SHADER,
)),
(this.W = ya(this, this.H(), t.FRAGMENT_SHADER)),
t.linkProgram(this.h),
!t.getProgramParameter(this.h, t.LINK_STATUS))
)
throw Error(
`Error during program linking: ${t.getProgramInfoLog(this.h)}`,
);
((this.O = t.getAttribLocation(this.h, "aVertex")),
(this.L = t.getAttribLocation(this.h, "aTex")));
}
D() {}
l() {}
close() {
if (this.h) {
const t = this.g;
(t.deleteProgram(this.h), t.deleteShader(this.X), t.deleteShader(this.W));
}
(this.B && this.g.deleteFramebuffer(this.B),
this.A && this.A.close(),
this.u && this.u.close());
}
};
var ka = class extends ba {
H() {
return "\n precision mediump float;\n uniform sampler2D backgroundTexture;\n uniform sampler2D maskTexture;\n uniform sampler2D colorMappingTexture;\n varying vec2 vTex;\n void main() {\n vec4 backgroundColor = texture2D(backgroundTexture, vTex);\n float category = texture2D(maskTexture, vTex).r;\n vec4 categoryColor = texture2D(colorMappingTexture, vec2(category, 0.0));\n gl_FragColor = mix(backgroundColor, categoryColor, categoryColor.a);\n }\n ";
}
D() {
const t = this.g;
(t.activeTexture(t.TEXTURE1),
(this.C = wa(this, t, t.LINEAR)),
t.activeTexture(t.TEXTURE2),
(this.j = wa(this, t, t.NEAREST)));
}
m() {
super.m();
const t = this.g;
((this.P = ga(
t.getUniformLocation(this.h, "backgroundTexture"),
"Uniform location",
)),
(this.U = ga(
t.getUniformLocation(this.h, "colorMappingTexture"),
"Uniform location",
)),
(this.M = ga(
t.getUniformLocation(this.h, "maskTexture"),
"Uniform location",
)));
}
l() {
super.l();
const t = this.g;
(t.uniform1i(this.M, 0), t.uniform1i(this.P, 1), t.uniform1i(this.U, 2));
}
close() {
(this.C && this.g.deleteTexture(this.C),
this.j && this.g.deleteTexture(this.j),
super.close());
}
},
Sa = class extends ba {
H() {
return "\n precision mediump float;\n uniform sampler2D maskTexture;\n uniform sampler2D defaultTexture;\n uniform sampler2D overlayTexture;\n varying vec2 vTex;\n void main() {\n float confidence = texture2D(maskTexture, vTex).r;\n vec4 defaultColor = texture2D(defaultTexture, vTex);\n vec4 overlayColor = texture2D(overlayTexture, vTex);\n // Apply the alpha from the overlay and merge in the default color\n overlayColor = mix(defaultColor, overlayColor, overlayColor.a);\n gl_FragColor = mix(defaultColor, overlayColor, confidence);\n }\n ";
}
D() {
const t = this.g;
(t.activeTexture(t.TEXTURE1),
(this.j = wa(this, t)),
t.activeTexture(t.TEXTURE2),
(this.C = wa(this, t)));
}
m() {
super.m();
const t = this.g;
((this.M = ga(
t.getUniformLocation(this.h, "defaultTexture"),
"Uniform location",
)),
(this.P = ga(
t.getUniformLocation(this.h, "overlayTexture"),
"Uniform location",
)),
(this.I = ga(
t.getUniformLocation(this.h, "maskTexture"),
"Uniform location",
)));
}
l() {
super.l();
const t = this.g;
(t.uniform1i(this.I, 0), t.uniform1i(this.M, 1), t.uniform1i(this.P, 2));
}
close() {
(this.j && this.g.deleteTexture(this.j),
this.C && this.g.deleteTexture(this.C),
super.close());
}
};
function xa(t, e) {
switch (e) {
case 0:
return t.g.find((t) => t instanceof Uint8Array);
case 1:
return t.g.find((t) => t instanceof Float32Array);
case 2:
return t.g.find(
(t) => "undefined" != typeof WebGLTexture && t instanceof WebGLTexture,
);
default:
throw Error(`Type is not supported: ${e}`);
}
}
function La(t) {
var e = xa(t, 1);
if (!e) {
if ((e = xa(t, 0))) e = new Float32Array(e).map((t) => t / 255);
else {
e = new Float32Array(t.width * t.height);
const r = Ia(t);
var n = Ma(t);
if (
(Ta(n, r, Ra(t)),
"iPad Simulator;iPhone Simulator;iPod Simulator;iPad;iPhone;iPod"
.split(";")
.includes(navigator.platform) ||
(navigator.userAgent.includes("Mac") &&
"document" in self &&
"ontouchend" in self.document))
) {
((n = new Float32Array(t.width * t.height * 4)),
r.readPixels(0, 0, t.width, t.height, r.RGBA, r.FLOAT, n));
for (let t = 0, r = 0; t < e.length; ++t, r += 4) e[t] = n[r];
} else r.readPixels(0, 0, t.width, t.height, r.RED, r.FLOAT, e);
}
t.g.push(e);
}
return e;
}
function Ra(t) {
let e = xa(t, 2);
if (!e) {
const n = Ia(t);
e = Pa(t);
const r = La(t),
i = Fa(t);
(n.texImage2D(n.TEXTURE_2D, 0, i, t.width, t.height, 0, n.RED, n.FLOAT, r),
Ca(t));
}
return e;
}
function Ia(t) {
if (!t.canvas)
throw Error(
"Conversion to different image formats require that a canvas is passed when initializing the image.",
);
return (
t.h ||
(t.h = ga(
t.canvas.getContext("webgl2"),
"You cannot use a canvas that is already bound to a different type of rendering context.",
)),
t.h
);
}
function Fa(t) {
if (((t = Ia(t)), !Oa))
if (
t.getExtension("EXT_color_buffer_float") &&
t.getExtension("OES_texture_float_linear") &&
t.getExtension("EXT_float_blend")
)
Oa = t.R32F;
else {
if (!t.getExtension("EXT_color_buffer_half_float"))
throw Error(
"GPU does not fully support 4-channel float32 or float16 formats",
);
Oa = t.R16F;
}
return Oa;
}
function Ma(t) {
return (t.l || (t.l = new ba()), t.l);
}
function Pa(t) {
const e = Ia(t);
(e.viewport(0, 0, t.width, t.height), e.activeTexture(e.TEXTURE0));
let n = xa(t, 2);
return (
n ||
((n = wa(Ma(t), e, t.m ? e.LINEAR : e.NEAREST)), t.g.push(n), (t.j = !0)),
e.bindTexture(e.TEXTURE_2D, n),
n
);
}
function Ca(t) {
t.h.bindTexture(t.h.TEXTURE_2D, null);
}
var Oa,
Na = class {
constructor(t, e, n, r, i, s, o) {
((this.g = t),
(this.m = e),
(this.j = n),
(this.canvas = r),
(this.l = i),
(this.width = s),
(this.height = o),
this.j &&
0 === --Ua &&
console.error(
"You seem to be creating MPMask instances without invoking .close(). This leaks resources.",
));
}
Fa() {
return !!xa(this, 0);
}
ka() {
return !!xa(this, 1);
}
R() {
return !!xa(this, 2);
}
ja() {
return (
(e = xa((t = this), 0)) ||
((e = La(t)),
(e = new Uint8Array(e.map((t) => Math.round(255 * t)))),
t.g.push(e)),
e
);
var t, e;
}
ia() {
return La(this);
}
N() {
return Ra(this);
}
clone() {
const t = [];
for (const e of this.g) {
let n;
if (e instanceof Uint8Array) n = new Uint8Array(e);
else if (e instanceof Float32Array) n = new Float32Array(e);
else {
if (!(e instanceof WebGLTexture))
throw Error(`Type is not supported: ${e}`);
{
const t = Ia(this),
e = Ma(this);
(t.activeTexture(t.TEXTURE1),
(n = wa(e, t, this.m ? t.LINEAR : t.NEAREST)),
t.bindTexture(t.TEXTURE_2D, n));
const r = Fa(this);
(t.texImage2D(
t.TEXTURE_2D,
0,
r,
this.width,
this.height,
0,
t.RED,
t.FLOAT,
null,
),
t.bindTexture(t.TEXTURE_2D, null),
Ta(e, t, n),
Ea(e, t, !1, () => {
(Pa(this),
t.clearColor(0, 0, 0, 0),
t.clear(t.COLOR_BUFFER_BIT),
t.drawArrays(t.TRIANGLE_FAN, 0, 4),
Ca(this));
}),
Aa(e),
Ca(this));
}
}
t.push(n);
}
return new Na(
t,
this.m,
this.R(),
this.canvas,
this.l,
this.width,
this.height,
);
}
close() {
(this.j && Ia(this).deleteTexture(xa(this, 2)), (Ua = -1));
}
};
((Na.prototype.close = Na.prototype.close),
(Na.prototype.clone = Na.prototype.clone),
(Na.prototype.getAsWebGLTexture = Na.prototype.N),
(Na.prototype.getAsFloat32Array = Na.prototype.ia),
(Na.prototype.getAsUint8Array = Na.prototype.ja),
(Na.prototype.hasWebGLTexture = Na.prototype.R),
(Na.prototype.hasFloat32Array = Na.prototype.ka),
(Na.prototype.hasUint8Array = Na.prototype.Fa));
var Ua = 250;
const Da = { color: "white", lineWidth: 4, radius: 6 };
function Ba(t) {
return { ...Da, fillColor: (t = t || {}).color, ...t };
}
function Ga(t, e) {
return t instanceof Function ? t(e) : t;
}
function ja(t, e, n) {
return Math.max(Math.min(e, n), Math.min(Math.max(e, n), t));
}
function Va(t) {
if (!t.l)
throw Error(
"CPU rendering requested but CanvasRenderingContext2D not provided.",
);
return t.l;
}
function Xa(t) {
if (!t.j)
throw Error(
"GPU rendering requested but WebGL2RenderingContext not provided.",
);
return t.j;
}
function Ha(t, e, n) {
if (e.R()) n(e.N());
else {
const r = e.ka() ? e.ia() : e.ja();
t.m = t.m ?? new ba();
const i = Xa(t);
(n((t = new Na([r], e.m, !1, i.canvas, t.m, e.width, e.height)).N()),
t.close());
}
}
function Wa(t, e, n, r) {
const i = (function (t) {
return (t.g || (t.g = new ka()), t.g);
})(t),
s = Xa(t),
o = Array.isArray(n) ? new ImageData(new Uint8ClampedArray(n), 1, 1) : n;
Ea(i, s, !0, () => {
(!(function (t, e, n, r) {
const i = t.g;
if (
(i.activeTexture(i.TEXTURE0),
i.bindTexture(i.TEXTURE_2D, e),
i.activeTexture(i.TEXTURE1),
i.bindTexture(i.TEXTURE_2D, t.C),
i.texImage2D(i.TEXTURE_2D, 0, i.RGBA, i.RGBA, i.UNSIGNED_BYTE, n),
t.I &&
(function (t, e) {
if (t !== e) return !1;
((t = t.entries()), (e = e.entries()));
for (const [n, r] of t) {
t = n;
const i = r,
s = e.next();
if (s.done) return !1;
const [o, a] = s.value;
if (
t !== o ||
i[0] !== a[0] ||
i[1] !== a[1] ||
i[2] !== a[2] ||
i[3] !== a[3]
)
return !1;
}
return !!e.next().done;
})(t.I, r))
)
(i.activeTexture(i.TEXTURE2), i.bindTexture(i.TEXTURE_2D, t.j));
else {
t.I = r;
const e = Array(1024).fill(0);
(r.forEach((t, n) => {
if (4 !== t.length)
throw Error(`Color at index ${n} is not a four-channel value.`);
((e[4 * n] = t[0]),
(e[4 * n + 1] = t[1]),
(e[4 * n + 2] = t[2]),
(e[4 * n + 3] = t[3]));
}),
i.activeTexture(i.TEXTURE2),
i.bindTexture(i.TEXTURE_2D, t.j),
i.texImage2D(
i.TEXTURE_2D,
0,
i.RGBA,
256,
1,
0,
i.RGBA,
i.UNSIGNED_BYTE,
new Uint8Array(e),
));
}
})(i, e, o, r),
s.clearColor(0, 0, 0, 0),
s.clear(s.COLOR_BUFFER_BIT),
s.drawArrays(s.TRIANGLE_FAN, 0, 4));
const t = i.g;
(t.activeTexture(t.TEXTURE0),
t.bindTexture(t.TEXTURE_2D, null),
t.activeTexture(t.TEXTURE1),
t.bindTexture(t.TEXTURE_2D, null),
t.activeTexture(t.TEXTURE2),
t.bindTexture(t.TEXTURE_2D, null));
});
}
function za(t, e, n, r) {
const i = Xa(t),
s = (function (t) {
return (t.h || (t.h = new Sa()), t.h);
})(t),
o = Array.isArray(n) ? new ImageData(new Uint8ClampedArray(n), 1, 1) : n,
a = Array.isArray(r) ? new ImageData(new Uint8ClampedArray(r), 1, 1) : r;
Ea(s, i, !0, () => {
var t = s.g;
(t.activeTexture(t.TEXTURE0),
t.bindTexture(t.TEXTURE_2D, e),
t.activeTexture(t.TEXTURE1),
t.bindTexture(t.TEXTURE_2D, s.j),
t.texImage2D(t.TEXTURE_2D, 0, t.RGBA, t.RGBA, t.UNSIGNED_BYTE, o),
t.activeTexture(t.TEXTURE2),
t.bindTexture(t.TEXTURE_2D, s.C),
t.texImage2D(t.TEXTURE_2D, 0, t.RGBA, t.RGBA, t.UNSIGNED_BYTE, a),
i.clearColor(0, 0, 0, 0),
i.clear(i.COLOR_BUFFER_BIT),
i.drawArrays(i.TRIANGLE_FAN, 0, 4),
i.bindTexture(i.TEXTURE_2D, null),
(t = s.g).activeTexture(t.TEXTURE0),
t.bindTexture(t.TEXTURE_2D, null),
t.activeTexture(t.TEXTURE1),
t.bindTexture(t.TEXTURE_2D, null),
t.activeTexture(t.TEXTURE2),
t.bindTexture(t.TEXTURE_2D, null));
});
}
var Ka = class {
constructor(t, e) {
("undefined" != typeof CanvasRenderingContext2D &&
t instanceof CanvasRenderingContext2D) ||
t instanceof OffscreenCanvasRenderingContext2D
? ((this.l = t), (this.j = e))
: (this.j = t);
}
ya(t, e) {
if (t) {
var n = Va(this);
((e = Ba(e)), n.save());
var r = n.canvas,
i = 0;
for (const s of t)
((n.fillStyle = Ga(e.fillColor, { index: i, from: s })),
(n.strokeStyle = Ga(e.color, { index: i, from: s })),
(n.lineWidth = Ga(e.lineWidth, { index: i, from: s })),
(t = new Path2D()).arc(
s.x * r.width,
s.y * r.height,
Ga(e.radius, { index: i, from: s }),
0,
2 * Math.PI,
),
n.fill(t),
n.stroke(t),
++i);
n.restore();
}
}
xa(t, e, n) {
if (t && e) {
var r = Va(this);
((n = Ba(n)), r.save());
var i = r.canvas,
s = 0;
for (const o of e) {
(r.beginPath(), (e = t[o.start]));
const a = t[o.end];
(e &&
a &&
((r.strokeStyle = Ga(n.color, { index: s, from: e, to: a })),
(r.lineWidth = Ga(n.lineWidth, { index: s, from: e, to: a })),
r.moveTo(e.x * i.width, e.y * i.height),
r.lineTo(a.x * i.width, a.y * i.height)),
++s,
r.stroke());
}
r.restore();
}
}
ua(t, e) {
const n = Va(this);
((e = Ba(e)),
n.save(),
n.beginPath(),
(n.lineWidth = Ga(e.lineWidth, {})),
(n.strokeStyle = Ga(e.color, {})),
(n.fillStyle = Ga(e.fillColor, {})),
n.moveTo(t.originX, t.originY),
n.lineTo(t.originX + t.width, t.originY),
n.lineTo(t.originX + t.width, t.originY + t.height),
n.lineTo(t.originX, t.originY + t.height),
n.lineTo(t.originX, t.originY),
n.stroke(),
n.fill(),
n.restore());
}
va(t, e, n = [0, 0, 0, 255]) {
this.l
? (function (t, e, n, r) {
const i = Xa(t);
Ha(t, e, (e) => {
(Wa(t, e, n, r),
(e = Va(t)).drawImage(
i.canvas,
0,
0,
e.canvas.width,
e.canvas.height,
));
});
})(this, t, n, e)
: Wa(this, t.N(), n, e);
}
wa(t, e, n) {
this.l
? (function (t, e, n, r) {
const i = Xa(t);
Ha(t, e, (e) => {
(za(t, e, n, r),
(e = Va(t)).drawImage(
i.canvas,
0,
0,
e.canvas.width,
e.canvas.height,
));
});
})(this, t, e, n)
: za(this, t.N(), e, n);
}
close() {
(this.g?.close(),
(this.g = void 0),
this.h?.close(),
(this.h = void 0),
this.m?.close(),
(this.m = void 0));
}
};
function Ya(t, e) {
switch (e) {
case 0:
return t.g.find((t) => t instanceof ImageData);
case 1:
return t.g.find(
(t) => "undefined" != typeof ImageBitmap && t instanceof ImageBitmap,
);
case 2:
return t.g.find(
(t) => "undefined" != typeof WebGLTexture && t instanceof WebGLTexture,
);
default:
throw Error(`Type is not supported: ${e}`);
}
}
function qa(t) {
var e = Ya(t, 0);
if (!e) {
e = Ja(t);
const n = Za(t),
r = new Uint8Array(t.width * t.height * 4);
(Ta(n, e, $a(t)),
e.readPixels(0, 0, t.width, t.height, e.RGBA, e.UNSIGNED_BYTE, r),
Aa(n),
(e = new ImageData(new Uint8ClampedArray(r.buffer), t.width, t.height)),
t.g.push(e));
}
return e;
}
function $a(t) {
let e = Ya(t, 2);
if (!e) {
const n = Ja(t);
e = Qa(t);
const r = Ya(t, 1) || qa(t);
(n.texImage2D(n.TEXTURE_2D, 0, n.RGBA, n.RGBA, n.UNSIGNED_BYTE, r), tc(t));
}
return e;
}
function Ja(t) {
if (!t.canvas)
throw Error(
"Conversion to different image formats require that a canvas is passed when initializing the image.",
);
return (
t.h ||
(t.h = ga(
t.canvas.getContext("webgl2"),
"You cannot use a canvas that is already bound to a different type of rendering context.",
)),
t.h
);
}
function Za(t) {
return (t.l || (t.l = new ba()), t.l);
}
function Qa(t) {
const e = Ja(t);
(e.viewport(0, 0, t.width, t.height), e.activeTexture(e.TEXTURE0));
let n = Ya(t, 2);
return (
n || ((n = wa(Za(t), e)), t.g.push(n), (t.m = !0)),
e.bindTexture(e.TEXTURE_2D, n),
n
);
}
function tc(t) {
t.h.bindTexture(t.h.TEXTURE_2D, null);
}
function ec(t) {
const e = Ja(t);
return Ea(Za(t), e, !0, () =>
(function (t, e) {
const n = t.canvas;
if (n.width === t.width && n.height === t.height) return e();
const r = n.width,
i = n.height;
return (
(n.width = t.width),
(n.height = t.height),
(t = e()),
(n.width = r),
(n.height = i),
t
);
})(t, () => {
if (
(e.bindFramebuffer(e.FRAMEBUFFER, null),
e.clearColor(0, 0, 0, 0),
e.clear(e.COLOR_BUFFER_BIT),
e.drawArrays(e.TRIANGLE_FAN, 0, 4),
!(t.canvas instanceof OffscreenCanvas))
)
throw Error(
"Conversion to ImageBitmap requires that the MediaPipe Tasks is initialized with an OffscreenCanvas",
);
return t.canvas.transferToImageBitmap();
}),
);
}
((Ka.prototype.close = Ka.prototype.close),
(Ka.prototype.drawConfidenceMask = Ka.prototype.wa),
(Ka.prototype.drawCategoryMask = Ka.prototype.va),
(Ka.prototype.drawBoundingBox = Ka.prototype.ua),
(Ka.prototype.drawConnectors = Ka.prototype.xa),
(Ka.prototype.drawLandmarks = Ka.prototype.ya),
(Ka.lerp = function (t, e, n, r, i) {
return ja(r * (1 - (t - e) / (n - e)) + i * (1 - (n - t) / (n - e)), r, i);
}),
(Ka.clamp = ja));
var nc = class {
constructor(t, e, n, r, i, s, o) {
((this.g = t),
(this.j = e),
(this.m = n),
(this.canvas = r),
(this.l = i),
(this.width = s),
(this.height = o),
(this.j || this.m) &&
0 === --rc &&
console.error(
"You seem to be creating MPImage instances without invoking .close(). This leaks resources.",
));
}
Ea() {
return !!Ya(this, 0);
}
la() {
return !!Ya(this, 1);
}
R() {
return !!Ya(this, 2);
}
Ca() {
return qa(this);
}
Ba() {
var t = Ya(this, 1);
return (
t ||
($a(this),
Qa(this),
(t = ec(this)),
tc(this),
this.g.push(t),
(this.j = !0)),
t
);
}
N() {
return $a(this);
}
clone() {
const t = [];
for (const e of this.g) {
let n;
if (e instanceof ImageData)
n = new ImageData(e.data, this.width, this.height);
else if (e instanceof WebGLTexture) {
const t = Ja(this),
e = Za(this);
(t.activeTexture(t.TEXTURE1),
(n = wa(e, t)),
t.bindTexture(t.TEXTURE_2D, n),
t.texImage2D(
t.TEXTURE_2D,
0,
t.RGBA,
this.width,
this.height,
0,
t.RGBA,
t.UNSIGNED_BYTE,
null,
),
t.bindTexture(t.TEXTURE_2D, null),
Ta(e, t, n),
Ea(e, t, !1, () => {
(Qa(this),
t.clearColor(0, 0, 0, 0),
t.clear(t.COLOR_BUFFER_BIT),
t.drawArrays(t.TRIANGLE_FAN, 0, 4),
tc(this));
}),
Aa(e),
tc(this));
} else {
if (!(e instanceof ImageBitmap))
throw Error(`Type is not supported: ${e}`);
($a(this), Qa(this), (n = ec(this)), tc(this));
}
t.push(n);
}
return new nc(
t,
this.la(),
this.R(),
this.canvas,
this.l,
this.width,
this.height,
);
}
close() {
(this.j && Ya(this, 1).close(),
this.m && Ja(this).deleteTexture(Ya(this, 2)),
(rc = -1));
}
};
((nc.prototype.close = nc.prototype.close),
(nc.prototype.clone = nc.prototype.clone),
(nc.prototype.getAsWebGLTexture = nc.prototype.N),
(nc.prototype.getAsImageBitmap = nc.prototype.Ba),
(nc.prototype.getAsImageData = nc.prototype.Ca),
(nc.prototype.hasWebGLTexture = nc.prototype.R),
(nc.prototype.hasImageBitmap = nc.prototype.la),
(nc.prototype.hasImageData = nc.prototype.Ea));
var rc = 250;
function ic(...t) {
return t.map(([t, e]) => ({ start: t, end: e }));
}
const sc = (function (t) {
return class extends t {
Ja() {
this.i._registerModelResourcesGraphService();
}
};
})(
((oc = class {
constructor(t, e) {
((this.l = !0),
(this.i = t),
(this.g = null),
(this.h = 0),
(this.m = "function" == typeof this.i._addIntToInputStream),
void 0 !== e
? (this.i.canvas = e)
: Qo()
? (this.i.canvas = new OffscreenCanvas(1, 1))
: (console.warn(
"OffscreenCanvas not supported and GraphRunner constructor glCanvas parameter is undefined. Creating backup canvas.",
),
(this.i.canvas = document.createElement("canvas"))));
}
async initializeGraph(t) {
const e = await (await fetch(t)).arrayBuffer();
((t = !(t.endsWith(".pbtxt") || t.endsWith(".textproto"))),
this.setGraph(new Uint8Array(e), t));
}
setGraphFromString(t) {
this.setGraph(new TextEncoder().encode(t), !1);
}
setGraph(t, e) {
const n = t.length,
r = this.i._malloc(n);
(this.i.HEAPU8.set(t, r),
e ? this.i._changeBinaryGraph(n, r) : this.i._changeTextGraph(n, r),
this.i._free(r));
}
configureAudio(t, e, n, r, i) {
(this.i._configureAudio ||
console.warn(
'Attempting to use configureAudio without support for input audio. Is build dep ":gl_graph_runner_audio" missing?',
),
na(this, r || "input_audio", (r) => {
na(this, (i = i || "audio_header"), (i) => {
this.i._configureAudio(r, i, t, e ?? 0, n);
});
}));
}
setAutoResizeCanvas(t) {
this.l = t;
}
setAutoRenderToScreen(t) {
this.i._setAutoRenderToScreen(t);
}
setGpuBufferVerticalFlip(t) {
this.i.gpuOriginForWebTexturesIsBottomLeft = t;
}
ca(t) {
(sa(this, "__graph_config__", (e) => {
t(e);
}),
na(this, "__graph_config__", (t) => {
this.i._getGraphConfig(t, void 0);
}),
delete this.i.simpleListeners.__graph_config__);
}
attachErrorListener(t) {
this.i.errorListener = t;
}
attachEmptyPacketListener(t, e) {
((this.i.emptyPacketListeners = this.i.emptyPacketListeners || {}),
(this.i.emptyPacketListeners[t] = e));
}
addAudioToStream(t, e, n) {
this.addAudioToStreamWithShape(t, 0, 0, e, n);
}
addAudioToStreamWithShape(t, e, n, r, i) {
const s = 4 * t.length;
(this.h !== s &&
(this.g && this.i._free(this.g),
(this.g = this.i._malloc(s)),
(this.h = s)),
this.i.HEAPF32.set(t, this.g / 4),
na(this, r, (t) => {
this.i._addAudioToInputStream(this.g, e, n, t, i);
}));
}
addGpuBufferToStream(t, e, n) {
na(this, e, (e) => {
const [r, i] = ra(this, t, e);
this.i._addBoundTextureToStream(e, r, i, n);
});
}
addBoolToStream(t, e, n) {
na(this, e, (e) => {
this.i._addBoolToInputStream(t, e, n);
});
}
addDoubleToStream(t, e, n) {
na(this, e, (e) => {
this.i._addDoubleToInputStream(t, e, n);
});
}
addFloatToStream(t, e, n) {
na(this, e, (e) => {
this.i._addFloatToInputStream(t, e, n);
});
}
addIntToStream(t, e, n) {
na(this, e, (e) => {
this.i._addIntToInputStream(t, e, n);
});
}
addUintToStream(t, e, n) {
na(this, e, (e) => {
this.i._addUintToInputStream(t, e, n);
});
}
addStringToStream(t, e, n) {
na(this, e, (e) => {
na(this, t, (t) => {
this.i._addStringToInputStream(t, e, n);
});
});
}
addStringRecordToStream(t, e, n) {
na(this, e, (e) => {
ia(this, Object.keys(t), (r) => {
ia(this, Object.values(t), (i) => {
this.i._addFlatHashMapToInputStream(
r,
i,
Object.keys(t).length,
e,
n,
);
});
});
});
}
addProtoToStream(t, e, n, r) {
na(this, n, (n) => {
na(this, e, (e) => {
const i = this.i._malloc(t.length);
(this.i.HEAPU8.set(t, i),
this.i._addProtoToInputStream(i, t.length, e, n, r),
this.i._free(i));
});
});
}
addEmptyPacketToStream(t, e) {
na(this, t, (t) => {
this.i._addEmptyPacketToInputStream(t, e);
});
}
addBoolVectorToStream(t, e, n) {
na(this, e, (e) => {
const r = this.i._allocateBoolVector(t.length);
if (!r) throw Error("Unable to allocate new bool vector on heap.");
for (const e of t) this.i._addBoolVectorEntry(r, e);
this.i._addBoolVectorToInputStream(r, e, n);
});
}
addDoubleVectorToStream(t, e, n) {
na(this, e, (e) => {
const r = this.i._allocateDoubleVector(t.length);
if (!r) throw Error("Unable to allocate new double vector on heap.");
for (const e of t) this.i._addDoubleVectorEntry(r, e);
this.i._addDoubleVectorToInputStream(r, e, n);
});
}
addFloatVectorToStream(t, e, n) {
na(this, e, (e) => {
const r = this.i._allocateFloatVector(t.length);
if (!r) throw Error("Unable to allocate new float vector on heap.");
for (const e of t) this.i._addFloatVectorEntry(r, e);
this.i._addFloatVectorToInputStream(r, e, n);
});
}
addIntVectorToStream(t, e, n) {
na(this, e, (e) => {
const r = this.i._allocateIntVector(t.length);
if (!r) throw Error("Unable to allocate new int vector on heap.");
for (const e of t) this.i._addIntVectorEntry(r, e);
this.i._addIntVectorToInputStream(r, e, n);
});
}
addUintVectorToStream(t, e, n) {
na(this, e, (e) => {
const r = this.i._allocateUintVector(t.length);
if (!r)
throw Error("Unable to allocate new unsigned int vector on heap.");
for (const e of t) this.i._addUintVectorEntry(r, e);
this.i._addUintVectorToInputStream(r, e, n);
});
}
addStringVectorToStream(t, e, n) {
na(this, e, (e) => {
const r = this.i._allocateStringVector(t.length);
if (!r) throw Error("Unable to allocate new string vector on heap.");
for (const e of t)
na(this, e, (t) => {
this.i._addStringVectorEntry(r, t);
});
this.i._addStringVectorToInputStream(r, e, n);
});
}
addBoolToInputSidePacket(t, e) {
na(this, e, (e) => {
this.i._addBoolToInputSidePacket(t, e);
});
}
addDoubleToInputSidePacket(t, e) {
na(this, e, (e) => {
this.i._addDoubleToInputSidePacket(t, e);
});
}
addFloatToInputSidePacket(t, e) {
na(this, e, (e) => {
this.i._addFloatToInputSidePacket(t, e);
});
}
addIntToInputSidePacket(t, e) {
na(this, e, (e) => {
this.i._addIntToInputSidePacket(t, e);
});
}
addUintToInputSidePacket(t, e) {
na(this, e, (e) => {
this.i._addUintToInputSidePacket(t, e);
});
}
addStringToInputSidePacket(t, e) {
na(this, e, (e) => {
na(this, t, (t) => {
this.i._addStringToInputSidePacket(t, e);
});
});
}
addProtoToInputSidePacket(t, e, n) {
na(this, n, (n) => {
na(this, e, (e) => {
const r = this.i._malloc(t.length);
(this.i.HEAPU8.set(t, r),
this.i._addProtoToInputSidePacket(r, t.length, e, n),
this.i._free(r));
});
});
}
addBoolVectorToInputSidePacket(t, e) {
na(this, e, (e) => {
const n = this.i._allocateBoolVector(t.length);
if (!n) throw Error("Unable to allocate new bool vector on heap.");
for (const e of t) this.i._addBoolVectorEntry(n, e);
this.i._addBoolVectorToInputSidePacket(n, e);
});
}
addDoubleVectorToInputSidePacket(t, e) {
na(this, e, (e) => {
const n = this.i._allocateDoubleVector(t.length);
if (!n) throw Error("Unable to allocate new double vector on heap.");
for (const e of t) this.i._addDoubleVectorEntry(n, e);
this.i._addDoubleVectorToInputSidePacket(n, e);
});
}
addFloatVectorToInputSidePacket(t, e) {
na(this, e, (e) => {
const n = this.i._allocateFloatVector(t.length);
if (!n) throw Error("Unable to allocate new float vector on heap.");
for (const e of t) this.i._addFloatVectorEntry(n, e);
this.i._addFloatVectorToInputSidePacket(n, e);
});
}
addIntVectorToInputSidePacket(t, e) {
na(this, e, (e) => {
const n = this.i._allocateIntVector(t.length);
if (!n) throw Error("Unable to allocate new int vector on heap.");
for (const e of t) this.i._addIntVectorEntry(n, e);
this.i._addIntVectorToInputSidePacket(n, e);
});
}
addUintVectorToInputSidePacket(t, e) {
na(this, e, (e) => {
const n = this.i._allocateUintVector(t.length);
if (!n)
throw Error("Unable to allocate new unsigned int vector on heap.");
for (const e of t) this.i._addUintVectorEntry(n, e);
this.i._addUintVectorToInputSidePacket(n, e);
});
}
addStringVectorToInputSidePacket(t, e) {
na(this, e, (e) => {
const n = this.i._allocateStringVector(t.length);
if (!n) throw Error("Unable to allocate new string vector on heap.");
for (const e of t)
na(this, e, (t) => {
this.i._addStringVectorEntry(n, t);
});
this.i._addStringVectorToInputSidePacket(n, e);
});
}
attachBoolListener(t, e) {
(sa(this, t, e),
na(this, t, (t) => {
this.i._attachBoolListener(t);
}));
}
attachBoolVectorListener(t, e) {
(oa(this, t, e),
na(this, t, (t) => {
this.i._attachBoolVectorListener(t);
}));
}
attachIntListener(t, e) {
(sa(this, t, e),
na(this, t, (t) => {
this.i._attachIntListener(t);
}));
}
attachIntVectorListener(t, e) {
(oa(this, t, e),
na(this, t, (t) => {
this.i._attachIntVectorListener(t);
}));
}
attachUintListener(t, e) {
(sa(this, t, e),
na(this, t, (t) => {
this.i._attachUintListener(t);
}));
}
attachUintVectorListener(t, e) {
(oa(this, t, e),
na(this, t, (t) => {
this.i._attachUintVectorListener(t);
}));
}
attachDoubleListener(t, e) {
(sa(this, t, e),
na(this, t, (t) => {
this.i._attachDoubleListener(t);
}));
}
attachDoubleVectorListener(t, e) {
(oa(this, t, e),
na(this, t, (t) => {
this.i._attachDoubleVectorListener(t);
}));
}
attachFloatListener(t, e) {
(sa(this, t, e),
na(this, t, (t) => {
this.i._attachFloatListener(t);
}));
}
attachFloatVectorListener(t, e) {
(oa(this, t, e),
na(this, t, (t) => {
this.i._attachFloatVectorListener(t);
}));
}
attachStringListener(t, e) {
(sa(this, t, e),
na(this, t, (t) => {
this.i._attachStringListener(t);
}));
}
attachStringVectorListener(t, e) {
(oa(this, t, e),
na(this, t, (t) => {
this.i._attachStringVectorListener(t);
}));
}
attachProtoListener(t, e, n) {
(sa(this, t, e),
na(this, t, (t) => {
this.i._attachProtoListener(t, n || !1);
}));
}
attachProtoVectorListener(t, e, n) {
(oa(this, t, e),
na(this, t, (t) => {
this.i._attachProtoVectorListener(t, n || !1);
}));
}
attachAudioListener(t, e, n) {
(this.i._attachAudioListener ||
console.warn(
'Attempting to use attachAudioListener without support for output audio. Is build dep ":gl_graph_runner_audio_out" missing?',
),
sa(this, t, (t, n) => {
((t = new Float32Array(t.buffer, t.byteOffset, t.length / 4)),
e(t, n));
}),
na(this, t, (t) => {
this.i._attachAudioListener(t, n || !1);
}));
}
finishProcessing() {
this.i._waitUntilIdle();
}
closeGraph() {
(this.i._closeGraph(),
(this.i.simpleListeners = void 0),
(this.i.emptyPacketListeners = void 0));
}
}),
class extends oc {
get ga() {
return this.i;
}
pa(t, e, n) {
na(this, e, (e) => {
const [r, i] = ra(this, t, e);
this.ga._addBoundTextureAsImageToStream(e, r, i, n);
});
}
Z(t, e) {
(sa(this, t, e),
na(this, t, (t) => {
this.ga._attachImageListener(t);
}));
}
aa(t, e) {
(oa(this, t, e),
na(this, t, (t) => {
this.ga._attachImageVectorListener(t);
}));
}
}),
);
var oc,
ac = class extends sc {};
async function cc(t, e, n) {
return (async function (t, e, n, r) {
return aa(t, e, n, r);
})(t, n.canvas ?? (Qo() ? void 0 : document.createElement("canvas")), e, n);
}
function hc(t, e, n, r) {
if (t.U) {
const s = new Ls();
if (n?.regionOfInterest) {
if (!t.oa) throw Error("This task doesn't support region-of-interest.");
var i = n.regionOfInterest;
if (i.left >= i.right || i.top >= i.bottom)
throw Error("Expected RectF with left < right and top < bottom.");
if (i.left < 0 || i.top < 0 || i.right > 1 || i.bottom > 1)
throw Error("Expected RectF values to be in [0,1].");
(Ln(s, 1, (i.left + i.right) / 2),
Ln(s, 2, (i.top + i.bottom) / 2),
Ln(s, 4, i.right - i.left),
Ln(s, 3, i.bottom - i.top));
} else (Ln(s, 1, 0.5), Ln(s, 2, 0.5), Ln(s, 4, 1), Ln(s, 3, 1));
if (n?.rotationDegrees) {
if (n?.rotationDegrees % 90 != 0)
throw Error("Expected rotation to be a multiple of 90 degrees.");
if (
(Ln(s, 5, (-Math.PI * n.rotationDegrees) / 180),
n?.rotationDegrees % 180 != 0)
) {
const [t, r] = ea(e);
((n = (Sn(s, 3) * r) / t),
(i = (Sn(s, 4) * t) / r),
Ln(s, 4, n),
Ln(s, 3, i));
}
}
t.g.addProtoToStream(s.g(), "mediapipe.NormalizedRect", t.U, r);
}
(t.g.pa(e, t.X, r ?? performance.now()), t.finishProcessing());
}
function uc(t, e, n) {
if (t.baseOptions?.g())
throw Error(
"Task is not initialized with image mode. 'runningMode' must be set to 'IMAGE'.",
);
hc(t, e, n, t.C + 1);
}
function lc(t, e, n, r) {
if (!t.baseOptions?.g())
throw Error(
"Task is not initialized with video mode. 'runningMode' must be set to 'VIDEO'.",
);
hc(t, e, n, r);
}
function fc(t, e, n, r) {
var i = e.data;
const s = e.width,
o = s * (e = e.height);
if ((i instanceof Uint8Array || i instanceof Float32Array) && i.length !== o)
throw Error("Unsupported channel count: " + i.length / o);
return ((t = new Na([i], n, !1, t.g.i.canvas, t.P, s, e)), r ? t.clone() : t);
}
var dc = class extends pa {
constructor(t, e, n, r) {
(super(t),
(this.g = t),
(this.X = e),
(this.U = n),
(this.oa = r),
(this.P = new ba()));
}
l(t, e = !0) {
if (
("runningMode" in t &&
Ze(
this.baseOptions,
2,
Jt(!!t.runningMode && "IMAGE" !== t.runningMode),
),
void 0 !== t.canvas && this.g.i.canvas !== t.canvas)
)
throw Error("You must create a new task to reset the canvas.");
return super.l(t, e);
}
close() {
(this.P.close(), super.close());
}
};
dc.prototype.close = dc.prototype.close;
var pc = class extends dc {
constructor(t, e) {
(super(new ac(t, e), "image_in", "norm_rect_in", !1),
(this.j = { detections: [] }),
wn((t = this.h = new zs()), 0, 1, (e = new Xs())),
Ln(this.h, 2, 0.5),
Ln(this.h, 3, 0.3));
}
get baseOptions() {
return yn(this.h, Xs, 1);
}
set baseOptions(t) {
wn(this.h, 0, 1, t);
}
o(t) {
return (
"minDetectionConfidence" in t &&
Ln(this.h, 2, t.minDetectionConfidence ?? 0.5),
"minSuppressionThreshold" in t &&
Ln(this.h, 3, t.minSuppressionThreshold ?? 0.3),
this.l(t)
);
}
F(t, e) {
return ((this.j = { detections: [] }), uc(this, t, e), this.j);
}
G(t, e, n) {
return ((this.j = { detections: [] }), lc(this, t, n, e), this.j);
}
m() {
var t = new ls();
(hs(t, "image_in"), hs(t, "norm_rect_in"), us(t, "detections"));
const e = new Qi();
xr(e, Ys, this.h);
const n = new is();
(Rn(n, 2, "mediapipe.tasks.vision.face_detector.FaceDetectorGraph"),
ns(n, "IMAGE:image_in"),
ns(n, "NORM_RECT:norm_rect_in"),
rs(n, "DETECTIONS:detections"),
n.o(e),
cs(t, n),
this.g.attachProtoVectorListener("detections", (t, e) => {
for (const e of t) ((t = ws(e)), this.j.detections.push(Xo(t)));
ua(this, e);
}),
this.g.attachEmptyPacketListener("detections", (t) => {
ua(this, t);
}),
(t = t.g()),
this.setGraph(new Uint8Array(t), !0));
}
};
((pc.prototype.detectForVideo = pc.prototype.G),
(pc.prototype.detect = pc.prototype.F),
(pc.prototype.setOptions = pc.prototype.o),
(pc.createFromModelPath = async function (t, e) {
return cc(pc, t, { baseOptions: { modelAssetPath: e } });
}),
(pc.createFromModelBuffer = function (t, e) {
return cc(pc, t, { baseOptions: { modelAssetBuffer: e } });
}),
(pc.createFromOptions = function (t, e) {
return cc(pc, t, e);
}));
var gc = ic(
[61, 146],
[146, 91],
[91, 181],
[181, 84],
[84, 17],
[17, 314],
[314, 405],
[405, 321],
[321, 375],
[375, 291],
[61, 185],
[185, 40],
[40, 39],
[39, 37],
[37, 0],
[0, 267],
[267, 269],
[269, 270],
[270, 409],
[409, 291],
[78, 95],
[95, 88],
[88, 178],
[178, 87],
[87, 14],
[14, 317],
[317, 402],
[402, 318],
[318, 324],
[324, 308],
[78, 191],
[191, 80],
[80, 81],
[81, 82],
[82, 13],
[13, 312],
[312, 311],
[311, 310],
[310, 415],
[415, 308],
),
mc = ic(
[263, 249],
[249, 390],
[390, 373],
[373, 374],
[374, 380],
[380, 381],
[381, 382],
[382, 362],
[263, 466],
[466, 388],
[388, 387],
[387, 386],
[386, 385],
[385, 384],
[384, 398],
[398, 362],
),
yc = ic(
[276, 283],
[283, 282],
[282, 295],
[295, 285],
[300, 293],
[293, 334],
[334, 296],
[296, 336],
),
_c = ic([474, 475], [475, 476], [476, 477], [477, 474]),
vc = ic(
[33, 7],
[7, 163],
[163, 144],
[144, 145],
[145, 153],
[153, 154],
[154, 155],
[155, 133],
[33, 246],
[246, 161],
[161, 160],
[160, 159],
[159, 158],
[158, 157],
[157, 173],
[173, 133],
),
Ec = ic(
[46, 53],
[53, 52],
[52, 65],
[65, 55],
[70, 63],
[63, 105],
[105, 66],
[66, 107],
),
wc = ic([469, 470], [470, 471], [471, 472], [472, 469]),
Tc = ic(
[10, 338],
[338, 297],
[297, 332],
[332, 284],
[284, 251],
[251, 389],
[389, 356],
[356, 454],
[454, 323],
[323, 361],
[361, 288],
[288, 397],
[397, 365],
[365, 379],
[379, 378],
[378, 400],
[400, 377],
[377, 152],
[152, 148],
[148, 176],
[176, 149],
[149, 150],
[150, 136],
[136, 172],
[172, 58],
[58, 132],
[132, 93],
[93, 234],
[234, 127],
[127, 162],
[162, 21],
[21, 54],
[54, 103],
[103, 67],
[67, 109],
[109, 10],
),
Ac = [...gc, ...mc, ...yc, ...vc, ...Ec, ...Tc],
bc = ic(
[127, 34],
[34, 139],
[139, 127],
[11, 0],
[0, 37],
[37, 11],
[232, 231],
[231, 120],
[120, 232],
[72, 37],
[37, 39],
[39, 72],
[128, 121],
[121, 47],
[47, 128],
[232, 121],
[121, 128],
[128, 232],
[104, 69],
[69, 67],
[67, 104],
[175, 171],
[171, 148],
[148, 175],
[118, 50],
[50, 101],
[101, 118],
[73, 39],
[39, 40],
[40, 73],
[9, 151],
[151, 108],
[108, 9],
[48, 115],
[115, 131],
[131, 48],
[194, 204],
[204, 211],
[211, 194],
[74, 40],
[40, 185],
[185, 74],
[80, 42],
[42, 183],
[183, 80],
[40, 92],
[92, 186],
[186, 40],
[230, 229],
[229, 118],
[118, 230],
[202, 212],
[212, 214],
[214, 202],
[83, 18],
[18, 17],
[17, 83],
[76, 61],
[61, 146],
[146, 76],
[160, 29],
[29, 30],
[30, 160],
[56, 157],
[157, 173],
[173, 56],
[106, 204],
[204, 194],
[194, 106],
[135, 214],
[214, 192],
[192, 135],
[203, 165],
[165, 98],
[98, 203],
[21, 71],
[71, 68],
[68, 21],
[51, 45],
[45, 4],
[4, 51],
[144, 24],
[24, 23],
[23, 144],
[77, 146],
[146, 91],
[91, 77],
[205, 50],
[50, 187],
[187, 205],
[201, 200],
[200, 18],
[18, 201],
[91, 106],
[106, 182],
[182, 91],
[90, 91],
[91, 181],
[181, 90],
[85, 84],
[84, 17],
[17, 85],
[206, 203],
[203, 36],
[36, 206],
[148, 171],
[171, 140],
[140, 148],
[92, 40],
[40, 39],
[39, 92],
[193, 189],
[189, 244],
[244, 193],
[159, 158],
[158, 28],
[28, 159],
[247, 246],
[246, 161],
[161, 247],
[236, 3],
[3, 196],
[196, 236],
[54, 68],
[68, 104],
[104, 54],
[193, 168],
[168, 8],
[8, 193],
[117, 228],
[228, 31],
[31, 117],
[189, 193],
[193, 55],
[55, 189],
[98, 97],
[97, 99],
[99, 98],
[126, 47],
[47, 100],
[100, 126],
[166, 79],
[79, 218],
[218, 166],
[155, 154],
[154, 26],
[26, 155],
[209, 49],
[49, 131],
[131, 209],
[135, 136],
[136, 150],
[150, 135],
[47, 126],
[126, 217],
[217, 47],
[223, 52],
[52, 53],
[53, 223],
[45, 51],
[51, 134],
[134, 45],
[211, 170],
[170, 140],
[140, 211],
[67, 69],
[69, 108],
[108, 67],
[43, 106],
[106, 91],
[91, 43],
[230, 119],
[119, 120],
[120, 230],
[226, 130],
[130, 247],
[247, 226],
[63, 53],
[53, 52],
[52, 63],
[238, 20],
[20, 242],
[242, 238],
[46, 70],
[70, 156],
[156, 46],
[78, 62],
[62, 96],
[96, 78],
[46, 53],
[53, 63],
[63, 46],
[143, 34],
[34, 227],
[227, 143],
[123, 117],
[117, 111],
[111, 123],
[44, 125],
[125, 19],
[19, 44],
[236, 134],
[134, 51],
[51, 236],
[216, 206],
[206, 205],
[205, 216],
[154, 153],
[153, 22],
[22, 154],
[39, 37],
[37, 167],
[167, 39],
[200, 201],
[201, 208],
[208, 200],
[36, 142],
[142, 100],
[100, 36],
[57, 212],
[212, 202],
[202, 57],
[20, 60],
[60, 99],
[99, 20],
[28, 158],
[158, 157],
[157, 28],
[35, 226],
[226, 113],
[113, 35],
[160, 159],
[159, 27],
[27, 160],
[204, 202],
[202, 210],
[210, 204],
[113, 225],
[225, 46],
[46, 113],
[43, 202],
[202, 204],
[204, 43],
[62, 76],
[76, 77],
[77, 62],
[137, 123],
[123, 116],
[116, 137],
[41, 38],
[38, 72],
[72, 41],
[203, 129],
[129, 142],
[142, 203],
[64, 98],
[98, 240],
[240, 64],
[49, 102],
[102, 64],
[64, 49],
[41, 73],
[73, 74],
[74, 41],
[212, 216],
[216, 207],
[207, 212],
[42, 74],
[74, 184],
[184, 42],
[169, 170],
[170, 211],
[211, 169],
[170, 149],
[149, 176],
[176, 170],
[105, 66],
[66, 69],
[69, 105],
[122, 6],
[6, 168],
[168, 122],
[123, 147],
[147, 187],
[187, 123],
[96, 77],
[77, 90],
[90, 96],
[65, 55],
[55, 107],
[107, 65],
[89, 90],
[90, 180],
[180, 89],
[101, 100],
[100, 120],
[120, 101],
[63, 105],
[105, 104],
[104, 63],
[93, 137],
[137, 227],
[227, 93],
[15, 86],
[86, 85],
[85, 15],
[129, 102],
[102, 49],
[49, 129],
[14, 87],
[87, 86],
[86, 14],
[55, 8],
[8, 9],
[9, 55],
[100, 47],
[47, 121],
[121, 100],
[145, 23],
[23, 22],
[22, 145],
[88, 89],
[89, 179],
[179, 88],
[6, 122],
[122, 196],
[196, 6],
[88, 95],
[95, 96],
[96, 88],
[138, 172],
[172, 136],
[136, 138],
[215, 58],
[58, 172],
[172, 215],
[115, 48],
[48, 219],
[219, 115],
[42, 80],
[80, 81],
[81, 42],
[195, 3],
[3, 51],
[51, 195],
[43, 146],
[146, 61],
[61, 43],
[171, 175],
[175, 199],
[199, 171],
[81, 82],
[82, 38],
[38, 81],
[53, 46],
[46, 225],
[225, 53],
[144, 163],
[163, 110],
[110, 144],
[52, 65],
[65, 66],
[66, 52],
[229, 228],
[228, 117],
[117, 229],
[34, 127],
[127, 234],
[234, 34],
[107, 108],
[108, 69],
[69, 107],
[109, 108],
[108, 151],
[151, 109],
[48, 64],
[64, 235],
[235, 48],
[62, 78],
[78, 191],
[191, 62],
[129, 209],
[209, 126],
[126, 129],
[111, 35],
[35, 143],
[143, 111],
[117, 123],
[123, 50],
[50, 117],
[222, 65],
[65, 52],
[52, 222],
[19, 125],
[125, 141],
[141, 19],
[221, 55],
[55, 65],
[65, 221],
[3, 195],
[195, 197],
[197, 3],
[25, 7],
[7, 33],
[33, 25],
[220, 237],
[237, 44],
[44, 220],
[70, 71],
[71, 139],
[139, 70],
[122, 193],
[193, 245],
[245, 122],
[247, 130],
[130, 33],
[33, 247],
[71, 21],
[21, 162],
[162, 71],
[170, 169],
[169, 150],
[150, 170],
[188, 174],
[174, 196],
[196, 188],
[216, 186],
[186, 92],
[92, 216],
[2, 97],
[97, 167],
[167, 2],
[141, 125],
[125, 241],
[241, 141],
[164, 167],
[167, 37],
[37, 164],
[72, 38],
[38, 12],
[12, 72],
[38, 82],
[82, 13],
[13, 38],
[63, 68],
[68, 71],
[71, 63],
[226, 35],
[35, 111],
[111, 226],
[101, 50],
[50, 205],
[205, 101],
[206, 92],
[92, 165],
[165, 206],
[209, 198],
[198, 217],
[217, 209],
[165, 167],
[167, 97],
[97, 165],
[220, 115],
[115, 218],
[218, 220],
[133, 112],
[112, 243],
[243, 133],
[239, 238],
[238, 241],
[241, 239],
[214, 135],
[135, 169],
[169, 214],
[190, 173],
[173, 133],
[133, 190],
[171, 208],
[208, 32],
[32, 171],
[125, 44],
[44, 237],
[237, 125],
[86, 87],
[87, 178],
[178, 86],
[85, 86],
[86, 179],
[179, 85],
[84, 85],
[85, 180],
[180, 84],
[83, 84],
[84, 181],
[181, 83],
[201, 83],
[83, 182],
[182, 201],
[137, 93],
[93, 132],
[132, 137],
[76, 62],
[62, 183],
[183, 76],
[61, 76],
[76, 184],
[184, 61],
[57, 61],
[61, 185],
[185, 57],
[212, 57],
[57, 186],
[186, 212],
[214, 207],
[207, 187],
[187, 214],
[34, 143],
[143, 156],
[156, 34],
[79, 239],
[239, 237],
[237, 79],
[123, 137],
[137, 177],
[177, 123],
[44, 1],
[1, 4],
[4, 44],
[201, 194],
[194, 32],
[32, 201],
[64, 102],
[102, 129],
[129, 64],
[213, 215],
[215, 138],
[138, 213],
[59, 166],
[166, 219],
[219, 59],
[242, 99],
[99, 97],
[97, 242],
[2, 94],
[94, 141],
[141, 2],
[75, 59],
[59, 235],
[235, 75],
[24, 110],
[110, 228],
[228, 24],
[25, 130],
[130, 226],
[226, 25],
[23, 24],
[24, 229],
[229, 23],
[22, 23],
[23, 230],
[230, 22],
[26, 22],
[22, 231],
[231, 26],
[112, 26],
[26, 232],
[232, 112],
[189, 190],
[190, 243],
[243, 189],
[221, 56],
[56, 190],
[190, 221],
[28, 56],
[56, 221],
[221, 28],
[27, 28],
[28, 222],
[222, 27],
[29, 27],
[27, 223],
[223, 29],
[30, 29],
[29, 224],
[224, 30],
[247, 30],
[30, 225],
[225, 247],
[238, 79],
[79, 20],
[20, 238],
[166, 59],
[59, 75],
[75, 166],
[60, 75],
[75, 240],
[240, 60],
[147, 177],
[177, 215],
[215, 147],
[20, 79],
[79, 166],
[166, 20],
[187, 147],
[147, 213],
[213, 187],
[112, 233],
[233, 244],
[244, 112],
[233, 128],
[128, 245],
[245, 233],
[128, 114],
[114, 188],
[188, 128],
[114, 217],
[217, 174],
[174, 114],
[131, 115],
[115, 220],
[220, 131],
[217, 198],
[198, 236],
[236, 217],
[198, 131],
[131, 134],
[134, 198],
[177, 132],
[132, 58],
[58, 177],
[143, 35],
[35, 124],
[124, 143],
[110, 163],
[163, 7],
[7, 110],
[228, 110],
[110, 25],
[25, 228],
[356, 389],
[389, 368],
[368, 356],
[11, 302],
[302, 267],
[267, 11],
[452, 350],
[350, 349],
[349, 452],
[302, 303],
[303, 269],
[269, 302],
[357, 343],
[343, 277],
[277, 357],
[452, 453],
[453, 357],
[357, 452],
[333, 332],
[332, 297],
[297, 333],
[175, 152],
[152, 377],
[377, 175],
[347, 348],
[348, 330],
[330, 347],
[303, 304],
[304, 270],
[270, 303],
[9, 336],
[336, 337],
[337, 9],
[278, 279],
[279, 360],
[360, 278],
[418, 262],
[262, 431],
[431, 418],
[304, 408],
[408, 409],
[409, 304],
[310, 415],
[415, 407],
[407, 310],
[270, 409],
[409, 410],
[410, 270],
[450, 348],
[348, 347],
[347, 450],
[422, 430],
[430, 434],
[434, 422],
[313, 314],
[314, 17],
[17, 313],
[306, 307],
[307, 375],
[375, 306],
[387, 388],
[388, 260],
[260, 387],
[286, 414],
[414, 398],
[398, 286],
[335, 406],
[406, 418],
[418, 335],
[364, 367],
[367, 416],
[416, 364],
[423, 358],
[358, 327],
[327, 423],
[251, 284],
[284, 298],
[298, 251],
[281, 5],
[5, 4],
[4, 281],
[373, 374],
[374, 253],
[253, 373],
[307, 320],
[320, 321],
[321, 307],
[425, 427],
[427, 411],
[411, 425],
[421, 313],
[313, 18],
[18, 421],
[321, 405],
[405, 406],
[406, 321],
[320, 404],
[404, 405],
[405, 320],
[315, 16],
[16, 17],
[17, 315],
[426, 425],
[425, 266],
[266, 426],
[377, 400],
[400, 369],
[369, 377],
[322, 391],
[391, 269],
[269, 322],
[417, 465],
[465, 464],
[464, 417],
[386, 257],
[257, 258],
[258, 386],
[466, 260],
[260, 388],
[388, 466],
[456, 399],
[399, 419],
[419, 456],
[284, 332],
[332, 333],
[333, 284],
[417, 285],
[285, 8],
[8, 417],
[346, 340],
[340, 261],
[261, 346],
[413, 441],
[441, 285],
[285, 413],
[327, 460],
[460, 328],
[328, 327],
[355, 371],
[371, 329],
[329, 355],
[392, 439],
[439, 438],
[438, 392],
[382, 341],
[341, 256],
[256, 382],
[429, 420],
[420, 360],
[360, 429],
[364, 394],
[394, 379],
[379, 364],
[277, 343],
[343, 437],
[437, 277],
[443, 444],
[444, 283],
[283, 443],
[275, 440],
[440, 363],
[363, 275],
[431, 262],
[262, 369],
[369, 431],
[297, 338],
[338, 337],
[337, 297],
[273, 375],
[375, 321],
[321, 273],
[450, 451],
[451, 349],
[349, 450],
[446, 342],
[342, 467],
[467, 446],
[293, 334],
[334, 282],
[282, 293],
[458, 461],
[461, 462],
[462, 458],
[276, 353],
[353, 383],
[383, 276],
[308, 324],
[324, 325],
[325, 308],
[276, 300],
[300, 293],
[293, 276],
[372, 345],
[345, 447],
[447, 372],
[352, 345],
[345, 340],
[340, 352],
[274, 1],
[1, 19],
[19, 274],
[456, 248],
[248, 281],
[281, 456],
[436, 427],
[427, 425],
[425, 436],
[381, 256],
[256, 252],
[252, 381],
[269, 391],
[391, 393],
[393, 269],
[200, 199],
[199, 428],
[428, 200],
[266, 330],
[330, 329],
[329, 266],
[287, 273],
[273, 422],
[422, 287],
[250, 462],
[462, 328],
[328, 250],
[258, 286],
[286, 384],
[384, 258],
[265, 353],
[353, 342],
[342, 265],
[387, 259],
[259, 257],
[257, 387],
[424, 431],
[431, 430],
[430, 424],
[342, 353],
[353, 276],
[276, 342],
[273, 335],
[335, 424],
[424, 273],
[292, 325],
[325, 307],
[307, 292],
[366, 447],
[447, 345],
[345, 366],
[271, 303],
[303, 302],
[302, 271],
[423, 266],
[266, 371],
[371, 423],
[294, 455],
[455, 460],
[460, 294],
[279, 278],
[278, 294],
[294, 279],
[271, 272],
[272, 304],
[304, 271],
[432, 434],
[434, 427],
[427, 432],
[272, 407],
[407, 408],
[408, 272],
[394, 430],
[430, 431],
[431, 394],
[395, 369],
[369, 400],
[400, 395],
[334, 333],
[333, 299],
[299, 334],
[351, 417],
[417, 168],
[168, 351],
[352, 280],
[280, 411],
[411, 352],
[325, 319],
[319, 320],
[320, 325],
[295, 296],
[296, 336],
[336, 295],
[319, 403],
[403, 404],
[404, 319],
[330, 348],
[348, 349],
[349, 330],
[293, 298],
[298, 333],
[333, 293],
[323, 454],
[454, 447],
[447, 323],
[15, 16],
[16, 315],
[315, 15],
[358, 429],
[429, 279],
[279, 358],
[14, 15],
[15, 316],
[316, 14],
[285, 336],
[336, 9],
[9, 285],
[329, 349],
[349, 350],
[350, 329],
[374, 380],
[380, 252],
[252, 374],
[318, 402],
[402, 403],
[403, 318],
[6, 197],
[197, 419],
[419, 6],
[318, 319],
[319, 325],
[325, 318],
[367, 364],
[364, 365],
[365, 367],
[435, 367],
[367, 397],
[397, 435],
[344, 438],
[438, 439],
[439, 344],
[272, 271],
[271, 311],
[311, 272],
[195, 5],
[5, 281],
[281, 195],
[273, 287],
[287, 291],
[291, 273],
[396, 428],
[428, 199],
[199, 396],
[311, 271],
[271, 268],
[268, 311],
[283, 444],
[444, 445],
[445, 283],
[373, 254],
[254, 339],
[339, 373],
[282, 334],
[334, 296],
[296, 282],
[449, 347],
[347, 346],
[346, 449],
[264, 447],
[447, 454],
[454, 264],
[336, 296],
[296, 299],
[299, 336],
[338, 10],
[10, 151],
[151, 338],
[278, 439],
[439, 455],
[455, 278],
[292, 407],
[407, 415],
[415, 292],
[358, 371],
[371, 355],
[355, 358],
[340, 345],
[345, 372],
[372, 340],
[346, 347],
[347, 280],
[280, 346],
[442, 443],
[443, 282],
[282, 442],
[19, 94],
[94, 370],
[370, 19],
[441, 442],
[442, 295],
[295, 441],
[248, 419],
[419, 197],
[197, 248],
[263, 255],
[255, 359],
[359, 263],
[440, 275],
[275, 274],
[274, 440],
[300, 383],
[383, 368],
[368, 300],
[351, 412],
[412, 465],
[465, 351],
[263, 467],
[467, 466],
[466, 263],
[301, 368],
[368, 389],
[389, 301],
[395, 378],
[378, 379],
[379, 395],
[412, 351],
[351, 419],
[419, 412],
[436, 426],
[426, 322],
[322, 436],
[2, 164],
[164, 393],
[393, 2],
[370, 462],
[462, 461],
[461, 370],
[164, 0],
[0, 267],
[267, 164],
[302, 11],
[11, 12],
[12, 302],
[268, 12],
[12, 13],
[13, 268],
[293, 300],
[300, 301],
[301, 293],
[446, 261],
[261, 340],
[340, 446],
[330, 266],
[266, 425],
[425, 330],
[426, 423],
[423, 391],
[391, 426],
[429, 355],
[355, 437],
[437, 429],
[391, 327],
[327, 326],
[326, 391],
[440, 457],
[457, 438],
[438, 440],
[341, 382],
[382, 362],
[362, 341],
[459, 457],
[457, 461],
[461, 459],
[434, 430],
[430, 394],
[394, 434],
[414, 463],
[463, 362],
[362, 414],
[396, 369],
[369, 262],
[262, 396],
[354, 461],
[461, 457],
[457, 354],
[316, 403],
[403, 402],
[402, 316],
[315, 404],
[404, 403],
[403, 315],
[314, 405],
[405, 404],
[404, 314],
[313, 406],
[406, 405],
[405, 313],
[421, 418],
[418, 406],
[406, 421],
[366, 401],
[401, 361],
[361, 366],
[306, 408],
[408, 407],
[407, 306],
[291, 409],
[409, 408],
[408, 291],
[287, 410],
[410, 409],
[409, 287],
[432, 436],
[436, 410],
[410, 432],
[434, 416],
[416, 411],
[411, 434],
[264, 368],
[368, 383],
[383, 264],
[309, 438],
[438, 457],
[457, 309],
[352, 376],
[376, 401],
[401, 352],
[274, 275],
[275, 4],
[4, 274],
[421, 428],
[428, 262],
[262, 421],
[294, 327],
[327, 358],
[358, 294],
[433, 416],
[416, 367],
[367, 433],
[289, 455],
[455, 439],
[439, 289],
[462, 370],
[370, 326],
[326, 462],
[2, 326],
[326, 370],
[370, 2],
[305, 460],
[460, 455],
[455, 305],
[254, 449],
[449, 448],
[448, 254],
[255, 261],
[261, 446],
[446, 255],
[253, 450],
[450, 449],
[449, 253],
[252, 451],
[451, 450],
[450, 252],
[256, 452],
[452, 451],
[451, 256],
[341, 453],
[453, 452],
[452, 341],
[413, 464],
[464, 463],
[463, 413],
[441, 413],
[413, 414],
[414, 441],
[258, 442],
[442, 441],
[441, 258],
[257, 443],
[443, 442],
[442, 257],
[259, 444],
[444, 443],
[443, 259],
[260, 445],
[445, 444],
[444, 260],
[467, 342],
[342, 445],
[445, 467],
[459, 458],
[458, 250],
[250, 459],
[289, 392],
[392, 290],
[290, 289],
[290, 328],
[328, 460],
[460, 290],
[376, 433],
[433, 435],
[435, 376],
[250, 290],
[290, 392],
[392, 250],
[411, 416],
[416, 433],
[433, 411],
[341, 463],
[463, 464],
[464, 341],
[453, 464],
[464, 465],
[465, 453],
[357, 465],
[465, 412],
[412, 357],
[343, 412],
[412, 399],
[399, 343],
[360, 363],
[363, 440],
[440, 360],
[437, 399],
[399, 456],
[456, 437],
[420, 456],
[456, 363],
[363, 420],
[401, 435],
[435, 288],
[288, 401],
[372, 383],
[383, 353],
[353, 372],
[339, 255],
[255, 249],
[249, 339],
[448, 261],
[261, 255],
[255, 448],
[133, 243],
[243, 190],
[190, 133],
[133, 155],
[155, 112],
[112, 133],
[33, 246],
[246, 247],
[247, 33],
[33, 130],
[130, 25],
[25, 33],
[398, 384],
[384, 286],
[286, 398],
[362, 398],
[398, 414],
[414, 362],
[362, 463],
[463, 341],
[341, 362],
[263, 359],
[359, 467],
[467, 263],
[263, 249],
[249, 255],
[255, 263],
[466, 467],
[467, 260],
[260, 466],
[75, 60],
[60, 166],
[166, 75],
[238, 239],
[239, 79],
[79, 238],
[162, 127],
[127, 139],
[139, 162],
[72, 11],
[11, 37],
[37, 72],
[121, 232],
[232, 120],
[120, 121],
[73, 72],
[72, 39],
[39, 73],
[114, 128],
[128, 47],
[47, 114],
[233, 232],
[232, 128],
[128, 233],
[103, 104],
[104, 67],
[67, 103],
[152, 175],
[175, 148],
[148, 152],
[119, 118],
[118, 101],
[101, 119],
[74, 73],
[73, 40],
[40, 74],
[107, 9],
[9, 108],
[108, 107],
[49, 48],
[48, 131],
[131, 49],
[32, 194],
[194, 211],
[211, 32],
[184, 74],
[74, 185],
[185, 184],
[191, 80],
[80, 183],
[183, 191],
[185, 40],
[40, 186],
[186, 185],
[119, 230],
[230, 118],
[118, 119],
[210, 202],
[202, 214],
[214, 210],
[84, 83],
[83, 17],
[17, 84],
[77, 76],
[76, 146],
[146, 77],
[161, 160],
[160, 30],
[30, 161],
[190, 56],
[56, 173],
[173, 190],
[182, 106],
[106, 194],
[194, 182],
[138, 135],
[135, 192],
[192, 138],
[129, 203],
[203, 98],
[98, 129],
[54, 21],
[21, 68],
[68, 54],
[5, 51],
[51, 4],
[4, 5],
[145, 144],
[144, 23],
[23, 145],
[90, 77],
[77, 91],
[91, 90],
[207, 205],
[205, 187],
[187, 207],
[83, 201],
[201, 18],
[18, 83],
[181, 91],
[91, 182],
[182, 181],
[180, 90],
[90, 181],
[181, 180],
[16, 85],
[85, 17],
[17, 16],
[205, 206],
[206, 36],
[36, 205],
[176, 148],
[148, 140],
[140, 176],
[165, 92],
[92, 39],
[39, 165],
[245, 193],
[193, 244],
[244, 245],
[27, 159],
[159, 28],
[28, 27],
[30, 247],
[247, 161],
[161, 30],
[174, 236],
[236, 196],
[196, 174],
[103, 54],
[54, 104],
[104, 103],
[55, 193],
[193, 8],
[8, 55],
[111, 117],
[117, 31],
[31, 111],
[221, 189],
[189, 55],
[55, 221],
[240, 98],
[98, 99],
[99, 240],
[142, 126],
[126, 100],
[100, 142],
[219, 166],
[166, 218],
[218, 219],
[112, 155],
[155, 26],
[26, 112],
[198, 209],
[209, 131],
[131, 198],
[169, 135],
[135, 150],
[150, 169],
[114, 47],
[47, 217],
[217, 114],
[224, 223],
[223, 53],
[53, 224],
[220, 45],
[45, 134],
[134, 220],
[32, 211],
[211, 140],
[140, 32],
[109, 67],
[67, 108],
[108, 109],
[146, 43],
[43, 91],
[91, 146],
[231, 230],
[230, 120],
[120, 231],
[113, 226],
[226, 247],
[247, 113],
[105, 63],
[63, 52],
[52, 105],
[241, 238],
[238, 242],
[242, 241],
[124, 46],
[46, 156],
[156, 124],
[95, 78],
[78, 96],
[96, 95],
[70, 46],
[46, 63],
[63, 70],
[116, 143],
[143, 227],
[227, 116],
[116, 123],
[123, 111],
[111, 116],
[1, 44],
[44, 19],
[19, 1],
[3, 236],
[236, 51],
[51, 3],
[207, 216],
[216, 205],
[205, 207],
[26, 154],
[154, 22],
[22, 26],
[165, 39],
[39, 167],
[167, 165],
[199, 200],
[200, 208],
[208, 199],
[101, 36],
[36, 100],
[100, 101],
[43, 57],
[57, 202],
[202, 43],
[242, 20],
[20, 99],
[99, 242],
[56, 28],
[28, 157],
[157, 56],
[124, 35],
[35, 113],
[113, 124],
[29, 160],
[160, 27],
[27, 29],
[211, 204],
[204, 210],
[210, 211],
[124, 113],
[113, 46],
[46, 124],
[106, 43],
[43, 204],
[204, 106],
[96, 62],
[62, 77],
[77, 96],
[227, 137],
[137, 116],
[116, 227],
[73, 41],
[41, 72],
[72, 73],
[36, 203],
[203, 142],
[142, 36],
[235, 64],
[64, 240],
[240, 235],
[48, 49],
[49, 64],
[64, 48],
[42, 41],
[41, 74],
[74, 42],
[214, 212],
[212, 207],
[207, 214],
[183, 42],
[42, 184],
[184, 183],
[210, 169],
[169, 211],
[211, 210],
[140, 170],
[170, 176],
[176, 140],
[104, 105],
[105, 69],
[69, 104],
[193, 122],
[122, 168],
[168, 193],
[50, 123],
[123, 187],
[187, 50],
[89, 96],
[96, 90],
[90, 89],
[66, 65],
[65, 107],
[107, 66],
[179, 89],
[89, 180],
[180, 179],
[119, 101],
[101, 120],
[120, 119],
[68, 63],
[63, 104],
[104, 68],
[234, 93],
[93, 227],
[227, 234],
[16, 15],
[15, 85],
[85, 16],
[209, 129],
[129, 49],
[49, 209],
[15, 14],
[14, 86],
[86, 15],
[107, 55],
[55, 9],
[9, 107],
[120, 100],
[100, 121],
[121, 120],
[153, 145],
[145, 22],
[22, 153],
[178, 88],
[88, 179],
[179, 178],
[197, 6],
[6, 196],
[196, 197],
[89, 88],
[88, 96],
[96, 89],
[135, 138],
[138, 136],
[136, 135],
[138, 215],
[215, 172],
[172, 138],
[218, 115],
[115, 219],
[219, 218],
[41, 42],
[42, 81],
[81, 41],
[5, 195],
[195, 51],
[51, 5],
[57, 43],
[43, 61],
[61, 57],
[208, 171],
[171, 199],
[199, 208],
[41, 81],
[81, 38],
[38, 41],
[224, 53],
[53, 225],
[225, 224],
[24, 144],
[144, 110],
[110, 24],
[105, 52],
[52, 66],
[66, 105],
[118, 229],
[229, 117],
[117, 118],
[227, 34],
[34, 234],
[234, 227],
[66, 107],
[107, 69],
[69, 66],
[10, 109],
[109, 151],
[151, 10],
[219, 48],
[48, 235],
[235, 219],
[183, 62],
[62, 191],
[191, 183],
[142, 129],
[129, 126],
[126, 142],
[116, 111],
[111, 143],
[143, 116],
[118, 117],
[117, 50],
[50, 118],
[223, 222],
[222, 52],
[52, 223],
[94, 19],
[19, 141],
[141, 94],
[222, 221],
[221, 65],
[65, 222],
[196, 3],
[3, 197],
[197, 196],
[45, 220],
[220, 44],
[44, 45],
[156, 70],
[70, 139],
[139, 156],
[188, 122],
[122, 245],
[245, 188],
[139, 71],
[71, 162],
[162, 139],
[149, 170],
[170, 150],
[150, 149],
[122, 188],
[188, 196],
[196, 122],
[206, 216],
[216, 92],
[92, 206],
[164, 2],
[2, 167],
[167, 164],
[242, 141],
[141, 241],
[241, 242],
[0, 164],
[164, 37],
[37, 0],
[11, 72],
[72, 12],
[12, 11],
[12, 38],
[38, 13],
[13, 12],
[70, 63],
[63, 71],
[71, 70],
[31, 226],
[226, 111],
[111, 31],
[36, 101],
[101, 205],
[205, 36],
[203, 206],
[206, 165],
[165, 203],
[126, 209],
[209, 217],
[217, 126],
[98, 165],
[165, 97],
[97, 98],
[237, 220],
[220, 218],
[218, 237],
[237, 239],
[239, 241],
[241, 237],
[210, 214],
[214, 169],
[169, 210],
[140, 171],
[171, 32],
[32, 140],
[241, 125],
[125, 237],
[237, 241],
[179, 86],
[86, 178],
[178, 179],
[180, 85],
[85, 179],
[179, 180],
[181, 84],
[84, 180],
[180, 181],
[182, 83],
[83, 181],
[181, 182],
[194, 201],
[201, 182],
[182, 194],
[177, 137],
[137, 132],
[132, 177],
[184, 76],
[76, 183],
[183, 184],
[185, 61],
[61, 184],
[184, 185],
[186, 57],
[57, 185],
[185, 186],
[216, 212],
[212, 186],
[186, 216],
[192, 214],
[214, 187],
[187, 192],
[139, 34],
[34, 156],
[156, 139],
[218, 79],
[79, 237],
[237, 218],
[147, 123],
[123, 177],
[177, 147],
[45, 44],
[44, 4],
[4, 45],
[208, 201],
[201, 32],
[32, 208],
[98, 64],
[64, 129],
[129, 98],
[192, 213],
[213, 138],
[138, 192],
[235, 59],
[59, 219],
[219, 235],
[141, 242],
[242, 97],
[97, 141],
[97, 2],
[2, 141],
[141, 97],
[240, 75],
[75, 235],
[235, 240],
[229, 24],
[24, 228],
[228, 229],
[31, 25],
[25, 226],
[226, 31],
[230, 23],
[23, 229],
[229, 230],
[231, 22],
[22, 230],
[230, 231],
[232, 26],
[26, 231],
[231, 232],
[233, 112],
[112, 232],
[232, 233],
[244, 189],
[189, 243],
[243, 244],
[189, 221],
[221, 190],
[190, 189],
[222, 28],
[28, 221],
[221, 222],
[223, 27],
[27, 222],
[222, 223],
[224, 29],
[29, 223],
[223, 224],
[225, 30],
[30, 224],
[224, 225],
[113, 247],
[247, 225],
[225, 113],
[99, 60],
[60, 240],
[240, 99],
[213, 147],
[147, 215],
[215, 213],
[60, 20],
[20, 166],
[166, 60],
[192, 187],
[187, 213],
[213, 192],
[243, 112],
[112, 244],
[244, 243],
[244, 233],
[233, 245],
[245, 244],
[245, 128],
[128, 188],
[188, 245],
[188, 114],
[114, 174],
[174, 188],
[134, 131],
[131, 220],
[220, 134],
[174, 217],
[217, 236],
[236, 174],
[236, 198],
[198, 134],
[134, 236],
[215, 177],
[177, 58],
[58, 215],
[156, 143],
[143, 124],
[124, 156],
[25, 110],
[110, 7],
[7, 25],
[31, 228],
[228, 25],
[25, 31],
[264, 356],
[356, 368],
[368, 264],
[0, 11],
[11, 267],
[267, 0],
[451, 452],
[452, 349],
[349, 451],
[267, 302],
[302, 269],
[269, 267],
[350, 357],
[357, 277],
[277, 350],
[350, 452],
[452, 357],
[357, 350],
[299, 333],
[333, 297],
[297, 299],
[396, 175],
[175, 377],
[377, 396],
[280, 347],
[347, 330],
[330, 280],
[269, 303],
[303, 270],
[270, 269],
[151, 9],
[9, 337],
[337, 151],
[344, 278],
[278, 360],
[360, 344],
[424, 418],
[418, 431],
[431, 424],
[270, 304],
[304, 409],
[409, 270],
[272, 310],
[310, 407],
[407, 272],
[322, 270],
[270, 410],
[410, 322],
[449, 450],
[450, 347],
[347, 449],
[432, 422],
[422, 434],
[434, 432],
[18, 313],
[313, 17],
[17, 18],
[291, 306],
[306, 375],
[375, 291],
[259, 387],
[387, 260],
[260, 259],
[424, 335],
[335, 418],
[418, 424],
[434, 364],
[364, 416],
[416, 434],
[391, 423],
[423, 327],
[327, 391],
[301, 251],
[251, 298],
[298, 301],
[275, 281],
[281, 4],
[4, 275],
[254, 373],
[373, 253],
[253, 254],
[375, 307],
[307, 321],
[321, 375],
[280, 425],
[425, 411],
[411, 280],
[200, 421],
[421, 18],
[18, 200],
[335, 321],
[321, 406],
[406, 335],
[321, 320],
[320, 405],
[405, 321],
[314, 315],
[315, 17],
[17, 314],
[423, 426],
[426, 266],
[266, 423],
[396, 377],
[377, 369],
[369, 396],
[270, 322],
[322, 269],
[269, 270],
[413, 417],
[417, 464],
[464, 413],
[385, 386],
[386, 258],
[258, 385],
[248, 456],
[456, 419],
[419, 248],
[298, 284],
[284, 333],
[333, 298],
[168, 417],
[417, 8],
[8, 168],
[448, 346],
[346, 261],
[261, 448],
[417, 413],
[413, 285],
[285, 417],
[326, 327],
[327, 328],
[328, 326],
[277, 355],
[355, 329],
[329, 277],
[309, 392],
[392, 438],
[438, 309],
[381, 382],
[382, 256],
[256, 381],
[279, 429],
[429, 360],
[360, 279],
[365, 364],
[364, 379],
[379, 365],
[355, 277],
[277, 437],
[437, 355],
[282, 443],
[443, 283],
[283, 282],
[281, 275],
[275, 363],
[363, 281],
[395, 431],
[431, 369],
[369, 395],
[299, 297],
[297, 337],
[337, 299],
[335, 273],
[273, 321],
[321, 335],
[348, 450],
[450, 349],
[349, 348],
[359, 446],
[446, 467],
[467, 359],
[283, 293],
[293, 282],
[282, 283],
[250, 458],
[458, 462],
[462, 250],
[300, 276],
[276, 383],
[383, 300],
[292, 308],
[308, 325],
[325, 292],
[283, 276],
[276, 293],
[293, 283],
[264, 372],
[372, 447],
[447, 264],
[346, 352],
[352, 340],
[340, 346],
[354, 274],
[274, 19],
[19, 354],
[363, 456],
[456, 281],
[281, 363],
[426, 436],
[436, 425],
[425, 426],
[380, 381],
[381, 252],
[252, 380],
[267, 269],
[269, 393],
[393, 267],
[421, 200],
[200, 428],
[428, 421],
[371, 266],
[266, 329],
[329, 371],
[432, 287],
[287, 422],
[422, 432],
[290, 250],
[250, 328],
[328, 290],
[385, 258],
[258, 384],
[384, 385],
[446, 265],
[265, 342],
[342, 446],
[386, 387],
[387, 257],
[257, 386],
[422, 424],
[424, 430],
[430, 422],
[445, 342],
[342, 276],
[276, 445],
[422, 273],
[273, 424],
[424, 422],
[306, 292],
[292, 307],
[307, 306],
[352, 366],
[366, 345],
[345, 352],
[268, 271],
[271, 302],
[302, 268],
[358, 423],
[423, 371],
[371, 358],
[327, 294],
[294, 460],
[460, 327],
[331, 279],
[279, 294],
[294, 331],
[303, 271],
[271, 304],
[304, 303],
[436, 432],
[432, 427],
[427, 436],
[304, 272],
[272, 408],
[408, 304],
[395, 394],
[394, 431],
[431, 395],
[378, 395],
[395, 400],
[400, 378],
[296, 334],
[334, 299],
[299, 296],
[6, 351],
[351, 168],
[168, 6],
[376, 352],
[352, 411],
[411, 376],
[307, 325],
[325, 320],
[320, 307],
[285, 295],
[295, 336],
[336, 285],
[320, 319],
[319, 404],
[404, 320],
[329, 330],
[330, 349],
[349, 329],
[334, 293],
[293, 333],
[333, 334],
[366, 323],
[323, 447],
[447, 366],
[316, 15],
[15, 315],
[315, 316],
[331, 358],
[358, 279],
[279, 331],
[317, 14],
[14, 316],
[316, 317],
[8, 285],
[285, 9],
[9, 8],
[277, 329],
[329, 350],
[350, 277],
[253, 374],
[374, 252],
[252, 253],
[319, 318],
[318, 403],
[403, 319],
[351, 6],
[6, 419],
[419, 351],
[324, 318],
[318, 325],
[325, 324],
[397, 367],
[367, 365],
[365, 397],
[288, 435],
[435, 397],
[397, 288],
[278, 344],
[344, 439],
[439, 278],
[310, 272],
[272, 311],
[311, 310],
[248, 195],
[195, 281],
[281, 248],
[375, 273],
[273, 291],
[291, 375],
[175, 396],
[396, 199],
[199, 175],
[312, 311],
[311, 268],
[268, 312],
[276, 283],
[283, 445],
[445, 276],
[390, 373],
[373, 339],
[339, 390],
[295, 282],
[282, 296],
[296, 295],
[448, 449],
[449, 346],
[346, 448],
[356, 264],
[264, 454],
[454, 356],
[337, 336],
[336, 299],
[299, 337],
[337, 338],
[338, 151],
[151, 337],
[294, 278],
[278, 455],
[455, 294],
[308, 292],
[292, 415],
[415, 308],
[429, 358],
[358, 355],
[355, 429],
[265, 340],
[340, 372],
[372, 265],
[352, 346],
[346, 280],
[280, 352],
[295, 442],
[442, 282],
[282, 295],
[354, 19],
[19, 370],
[370, 354],
[285, 441],
[441, 295],
[295, 285],
[195, 248],
[248, 197],
[197, 195],
[457, 440],
[440, 274],
[274, 457],
[301, 300],
[300, 368],
[368, 301],
[417, 351],
[351, 465],
[465, 417],
[251, 301],
[301, 389],
[389, 251],
[394, 395],
[395, 379],
[379, 394],
[399, 412],
[412, 419],
[419, 399],
[410, 436],
[436, 322],
[322, 410],
[326, 2],
[2, 393],
[393, 326],
[354, 370],
[370, 461],
[461, 354],
[393, 164],
[164, 267],
[267, 393],
[268, 302],
[302, 12],
[12, 268],
[312, 268],
[268, 13],
[13, 312],
[298, 293],
[293, 301],
[301, 298],
[265, 446],
[446, 340],
[340, 265],
[280, 330],
[330, 425],
[425, 280],
[322, 426],
[426, 391],
[391, 322],
[420, 429],
[429, 437],
[437, 420],
[393, 391],
[391, 326],
[326, 393],
[344, 440],
[440, 438],
[438, 344],
[458, 459],
[459, 461],
[461, 458],
[364, 434],
[434, 394],
[394, 364],
[428, 396],
[396, 262],
[262, 428],
[274, 354],
[354, 457],
[457, 274],
[317, 316],
[316, 402],
[402, 317],
[316, 315],
[315, 403],
[403, 316],
[315, 314],
[314, 404],
[404, 315],
[314, 313],
[313, 405],
[405, 314],
[313, 421],
[421, 406],
[406, 313],
[323, 366],
[366, 361],
[361, 323],
[292, 306],
[306, 407],
[407, 292],
[306, 291],
[291, 408],
[408, 306],
[291, 287],
[287, 409],
[409, 291],
[287, 432],
[432, 410],
[410, 287],
[427, 434],
[434, 411],
[411, 427],
[372, 264],
[264, 383],
[383, 372],
[459, 309],
[309, 457],
[457, 459],
[366, 352],
[352, 401],
[401, 366],
[1, 274],
[274, 4],
[4, 1],
[418, 421],
[421, 262],
[262, 418],
[331, 294],
[294, 358],
[358, 331],
[435, 433],
[433, 367],
[367, 435],
[392, 289],
[289, 439],
[439, 392],
[328, 462],
[462, 326],
[326, 328],
[94, 2],
[2, 370],
[370, 94],
[289, 305],
[305, 455],
[455, 289],
[339, 254],
[254, 448],
[448, 339],
[359, 255],
[255, 446],
[446, 359],
[254, 253],
[253, 449],
[449, 254],
[253, 252],
[252, 450],
[450, 253],
[252, 256],
[256, 451],
[451, 252],
[256, 341],
[341, 452],
[452, 256],
[414, 413],
[413, 463],
[463, 414],
[286, 441],
[441, 414],
[414, 286],
[286, 258],
[258, 441],
[441, 286],
[258, 257],
[257, 442],
[442, 258],
[257, 259],
[259, 443],
[443, 257],
[259, 260],
[260, 444],
[444, 259],
[260, 467],
[467, 445],
[445, 260],
[309, 459],
[459, 250],
[250, 309],
[305, 289],
[289, 290],
[290, 305],
[305, 290],
[290, 460],
[460, 305],
[401, 376],
[376, 435],
[435, 401],
[309, 250],
[250, 392],
[392, 309],
[376, 411],
[411, 433],
[433, 376],
[453, 341],
[341, 464],
[464, 453],
[357, 453],
[453, 465],
[465, 357],
[343, 357],
[357, 412],
[412, 343],
[437, 343],
[343, 399],
[399, 437],
[344, 360],
[360, 440],
[440, 344],
[420, 437],
[437, 456],
[456, 420],
[360, 420],
[420, 363],
[363, 360],
[361, 401],
[401, 288],
[288, 361],
[265, 372],
[372, 353],
[353, 265],
[390, 339],
[339, 249],
[249, 390],
[339, 448],
[448, 255],
[255, 339],
);
function kc(t) {
t.j = {
faceLandmarks: [],
faceBlendshapes: [],
facialTransformationMatrixes: [],
};
}
var Sc = class extends dc {
constructor(t, e) {
(super(new ac(t, e), "image_in", "norm_rect", !1),
(this.j = {
faceLandmarks: [],
faceBlendshapes: [],
facialTransformationMatrixes: [],
}),
(this.outputFacialTransformationMatrixes = this.outputFaceBlendshapes =
!1),
wn((t = this.h = new Js()), 0, 1, (e = new Xs())),
(this.A = new $s()),
wn(this.h, 0, 3, this.A),
(this.u = new zs()),
wn(this.h, 0, 2, this.u),
xn(this.u, 4, 1),
Ln(this.u, 2, 0.5),
Ln(this.A, 2, 0.5),
Ln(this.h, 4, 0.5));
}
get baseOptions() {
return yn(this.h, Xs, 1);
}
set baseOptions(t) {
wn(this.h, 0, 1, t);
}
o(t) {
return (
"numFaces" in t && xn(this.u, 4, t.numFaces ?? 1),
"minFaceDetectionConfidence" in t &&
Ln(this.u, 2, t.minFaceDetectionConfidence ?? 0.5),
"minTrackingConfidence" in t &&
Ln(this.h, 4, t.minTrackingConfidence ?? 0.5),
"minFacePresenceConfidence" in t &&
Ln(this.A, 2, t.minFacePresenceConfidence ?? 0.5),
"outputFaceBlendshapes" in t &&
(this.outputFaceBlendshapes = !!t.outputFaceBlendshapes),
"outputFacialTransformationMatrixes" in t &&
(this.outputFacialTransformationMatrixes =
!!t.outputFacialTransformationMatrixes),
this.l(t)
);
}
F(t, e) {
return (kc(this), uc(this, t, e), this.j);
}
G(t, e, n) {
return (kc(this), lc(this, t, n, e), this.j);
}
m() {
var t = new ls();
(hs(t, "image_in"), hs(t, "norm_rect"), us(t, "face_landmarks"));
const e = new Qi();
xr(e, Qs, this.h);
const n = new is();
(Rn(n, 2, "mediapipe.tasks.vision.face_landmarker.FaceLandmarkerGraph"),
ns(n, "IMAGE:image_in"),
ns(n, "NORM_RECT:norm_rect"),
rs(n, "NORM_LANDMARKS:face_landmarks"),
n.o(e),
cs(t, n),
this.g.attachProtoVectorListener("face_landmarks", (t, e) => {
for (const e of t) ((t = ks(e)), this.j.faceLandmarks.push(Ho(t)));
ua(this, e);
}),
this.g.attachEmptyPacketListener("face_landmarks", (t) => {
ua(this, t);
}),
this.outputFaceBlendshapes &&
(us(t, "blendshapes"),
rs(n, "BLENDSHAPES:blendshapes"),
this.g.attachProtoVectorListener("blendshapes", (t, e) => {
if (this.outputFaceBlendshapes)
for (const e of t)
((t = ys(e)), this.j.faceBlendshapes.push(jo(t.g() ?? [])));
ua(this, e);
}),
this.g.attachEmptyPacketListener("blendshapes", (t) => {
ua(this, t);
})),
this.outputFacialTransformationMatrixes &&
(us(t, "face_geometry"),
rs(n, "FACE_GEOMETRY:face_geometry"),
this.g.attachProtoVectorListener("face_geometry", (t, e) => {
if (this.outputFacialTransformationMatrixes)
for (const e of t)
(t = yn((t = qs(e)), Ss, 2)) &&
this.j.facialTransformationMatrixes.push({
rows: kn(t, 1) ?? 0 ?? 0,
columns: kn(t, 2) ?? 0 ?? 0,
data: en(t, 3, $t, tn()).slice() ?? [],
});
ua(this, e);
}),
this.g.attachEmptyPacketListener("face_geometry", (t) => {
ua(this, t);
})),
(t = t.g()),
this.setGraph(new Uint8Array(t), !0));
}
};
((Sc.prototype.detectForVideo = Sc.prototype.G),
(Sc.prototype.detect = Sc.prototype.F),
(Sc.prototype.setOptions = Sc.prototype.o),
(Sc.createFromModelPath = function (t, e) {
return cc(Sc, t, { baseOptions: { modelAssetPath: e } });
}),
(Sc.createFromModelBuffer = function (t, e) {
return cc(Sc, t, { baseOptions: { modelAssetBuffer: e } });
}),
(Sc.createFromOptions = function (t, e) {
return cc(Sc, t, e);
}),
(Sc.FACE_LANDMARKS_LIPS = gc),
(Sc.FACE_LANDMARKS_LEFT_EYE = mc),
(Sc.FACE_LANDMARKS_LEFT_EYEBROW = yc),
(Sc.FACE_LANDMARKS_LEFT_IRIS = _c),
(Sc.FACE_LANDMARKS_RIGHT_EYE = vc),
(Sc.FACE_LANDMARKS_RIGHT_EYEBROW = Ec),
(Sc.FACE_LANDMARKS_RIGHT_IRIS = wc),
(Sc.FACE_LANDMARKS_FACE_OVAL = Tc),
(Sc.FACE_LANDMARKS_CONTOURS = Ac),
(Sc.FACE_LANDMARKS_TESSELATION = bc));
var xc = ic(
[0, 1],
[1, 2],
[2, 3],
[3, 4],
[0, 5],
[5, 6],
[6, 7],
[7, 8],
[5, 9],
[9, 10],
[10, 11],
[11, 12],
[9, 13],
[13, 14],
[14, 15],
[15, 16],
[13, 17],
[0, 17],
[17, 18],
[18, 19],
[19, 20],
);
function Lc(t) {
((t.gestures = []),
(t.landmarks = []),
(t.worldLandmarks = []),
(t.handedness = []));
}
function Rc(t) {
return 0 === t.gestures.length
? {
gestures: [],
landmarks: [],
worldLandmarks: [],
handedness: [],
handednesses: [],
}
: {
gestures: t.gestures,
landmarks: t.landmarks,
worldLandmarks: t.worldLandmarks,
handedness: t.handedness,
handednesses: t.handedness,
};
}
function Ic(t, e = !0) {
const n = [];
for (const i of t) {
var r = ys(i);
t = [];
for (const n of r.g())
((r = e && null != kn(n, 1) ? (kn(n, 1) ?? 0) : -1),
t.push({
score: Sn(n, 2) ?? 0,
index: r,
categoryName: le($e(n, 3)) ?? "" ?? "",
displayName: le($e(n, 4)) ?? "" ?? "",
}));
n.push(t);
}
return n;
}
var Fc = class extends dc {
constructor(t, e) {
(super(new ac(t, e), "image_in", "norm_rect", !1),
(this.gestures = []),
(this.landmarks = []),
(this.worldLandmarks = []),
(this.handedness = []),
wn((t = this.j = new oo()), 0, 1, (e = new Xs())),
(this.u = new so()),
wn(this.j, 0, 2, this.u),
(this.D = new io()),
wn(this.u, 0, 3, this.D),
(this.A = new ro()),
wn(this.u, 0, 2, this.A),
(this.h = new no()),
wn(this.j, 0, 3, this.h),
Ln(this.A, 2, 0.5),
Ln(this.u, 4, 0.5),
Ln(this.D, 2, 0.5));
}
get baseOptions() {
return yn(this.j, Xs, 1);
}
set baseOptions(t) {
wn(this.j, 0, 1, t);
}
o(t) {
if (
(xn(this.A, 3, t.numHands ?? 1),
"minHandDetectionConfidence" in t &&
Ln(this.A, 2, t.minHandDetectionConfidence ?? 0.5),
"minTrackingConfidence" in t &&
Ln(this.u, 4, t.minTrackingConfidence ?? 0.5),
"minHandPresenceConfidence" in t &&
Ln(this.D, 2, t.minHandPresenceConfidence ?? 0.5),
t.cannedGesturesClassifierOptions)
) {
var e = new to(),
n = e,
r = Bo(t.cannedGesturesClassifierOptions, yn(this.h, to, 3)?.l());
(wn(n, 0, 2, r), wn(this.h, 0, 3, e));
} else
void 0 === t.cannedGesturesClassifierOptions && yn(this.h, to, 3)?.g();
return (
t.customGesturesClassifierOptions
? (wn(
(n = e = new to()),
0,
2,
(r = Bo(t.customGesturesClassifierOptions, yn(this.h, to, 4)?.l())),
),
wn(this.h, 0, 4, e))
: void 0 === t.customGesturesClassifierOptions &&
yn(this.h, to, 4)?.g(),
this.l(t)
);
}
Ha(t, e) {
return (Lc(this), uc(this, t, e), Rc(this));
}
Ia(t, e, n) {
return (Lc(this), lc(this, t, n, e), Rc(this));
}
m() {
var t = new ls();
(hs(t, "image_in"),
hs(t, "norm_rect"),
us(t, "hand_gestures"),
us(t, "hand_landmarks"),
us(t, "world_hand_landmarks"),
us(t, "handedness"));
const e = new Qi();
xr(e, lo, this.j);
const n = new is();
(Rn(
n,
2,
"mediapipe.tasks.vision.gesture_recognizer.GestureRecognizerGraph",
),
ns(n, "IMAGE:image_in"),
ns(n, "NORM_RECT:norm_rect"),
rs(n, "HAND_GESTURES:hand_gestures"),
rs(n, "LANDMARKS:hand_landmarks"),
rs(n, "WORLD_LANDMARKS:world_hand_landmarks"),
rs(n, "HANDEDNESS:handedness"),
n.o(e),
cs(t, n),
this.g.attachProtoVectorListener("hand_landmarks", (t, e) => {
for (const e of t) {
t = ks(e);
const n = [];
for (const e of vn(t, bs, 1))
n.push({
x: Sn(e, 1) ?? 0,
y: Sn(e, 2) ?? 0,
z: Sn(e, 3) ?? 0,
visibility: Sn(e, 4) ?? 0,
});
this.landmarks.push(n);
}
ua(this, e);
}),
this.g.attachEmptyPacketListener("hand_landmarks", (t) => {
ua(this, t);
}),
this.g.attachProtoVectorListener("world_hand_landmarks", (t, e) => {
for (const e of t) {
t = As(e);
const n = [];
for (const e of vn(t, Ts, 1))
n.push({
x: Sn(e, 1) ?? 0,
y: Sn(e, 2) ?? 0,
z: Sn(e, 3) ?? 0,
visibility: Sn(e, 4) ?? 0,
});
this.worldLandmarks.push(n);
}
ua(this, e);
}),
this.g.attachEmptyPacketListener("world_hand_landmarks", (t) => {
ua(this, t);
}),
this.g.attachProtoVectorListener("hand_gestures", (t, e) => {
(this.gestures.push(...Ic(t, !1)), ua(this, e));
}),
this.g.attachEmptyPacketListener("hand_gestures", (t) => {
ua(this, t);
}),
this.g.attachProtoVectorListener("handedness", (t, e) => {
(this.handedness.push(...Ic(t)), ua(this, e));
}),
this.g.attachEmptyPacketListener("handedness", (t) => {
ua(this, t);
}),
(t = t.g()),
this.setGraph(new Uint8Array(t), !0));
}
};
function Mc(t) {
return {
landmarks: t.landmarks,
worldLandmarks: t.worldLandmarks,
handednesses: t.handedness,
handedness: t.handedness,
};
}
((Fc.prototype.recognizeForVideo = Fc.prototype.Ia),
(Fc.prototype.recognize = Fc.prototype.Ha),
(Fc.prototype.setOptions = Fc.prototype.o),
(Fc.createFromModelPath = function (t, e) {
return cc(Fc, t, { baseOptions: { modelAssetPath: e } });
}),
(Fc.createFromModelBuffer = function (t, e) {
return cc(Fc, t, { baseOptions: { modelAssetBuffer: e } });
}),
(Fc.createFromOptions = function (t, e) {
return cc(Fc, t, e);
}),
(Fc.HAND_CONNECTIONS = xc));
var Pc = class extends dc {
constructor(t, e) {
(super(new ac(t, e), "image_in", "norm_rect", !1),
(this.landmarks = []),
(this.worldLandmarks = []),
(this.handedness = []),
wn((t = this.h = new so()), 0, 1, (e = new Xs())),
(this.u = new io()),
wn(this.h, 0, 3, this.u),
(this.j = new ro()),
wn(this.h, 0, 2, this.j),
xn(this.j, 3, 1),
Ln(this.j, 2, 0.5),
Ln(this.u, 2, 0.5),
Ln(this.h, 4, 0.5));
}
get baseOptions() {
return yn(this.h, Xs, 1);
}
set baseOptions(t) {
wn(this.h, 0, 1, t);
}
o(t) {
return (
"numHands" in t && xn(this.j, 3, t.numHands ?? 1),
"minHandDetectionConfidence" in t &&
Ln(this.j, 2, t.minHandDetectionConfidence ?? 0.5),
"minTrackingConfidence" in t &&
Ln(this.h, 4, t.minTrackingConfidence ?? 0.5),
"minHandPresenceConfidence" in t &&
Ln(this.u, 2, t.minHandPresenceConfidence ?? 0.5),
this.l(t)
);
}
F(t, e) {
return (
(this.landmarks = []),
(this.worldLandmarks = []),
(this.handedness = []),
uc(this, t, e),
Mc(this)
);
}
G(t, e, n) {
return (
(this.landmarks = []),
(this.worldLandmarks = []),
(this.handedness = []),
lc(this, t, n, e),
Mc(this)
);
}
m() {
var t = new ls();
(hs(t, "image_in"),
hs(t, "norm_rect"),
us(t, "hand_landmarks"),
us(t, "world_hand_landmarks"),
us(t, "handedness"));
const e = new Qi();
xr(e, fo, this.h);
const n = new is();
(Rn(n, 2, "mediapipe.tasks.vision.hand_landmarker.HandLandmarkerGraph"),
ns(n, "IMAGE:image_in"),
ns(n, "NORM_RECT:norm_rect"),
rs(n, "LANDMARKS:hand_landmarks"),
rs(n, "WORLD_LANDMARKS:world_hand_landmarks"),
rs(n, "HANDEDNESS:handedness"),
n.o(e),
cs(t, n),
this.g.attachProtoVectorListener("hand_landmarks", (t, e) => {
for (const e of t) ((t = ks(e)), this.landmarks.push(Ho(t)));
ua(this, e);
}),
this.g.attachEmptyPacketListener("hand_landmarks", (t) => {
ua(this, t);
}),
this.g.attachProtoVectorListener("world_hand_landmarks", (t, e) => {
for (const e of t) ((t = As(e)), this.worldLandmarks.push(Wo(t)));
ua(this, e);
}),
this.g.attachEmptyPacketListener("world_hand_landmarks", (t) => {
ua(this, t);
}),
this.g.attachProtoVectorListener("handedness", (t, e) => {
var n = this.handedness,
r = n.push;
const i = [];
for (const e of t) {
t = ys(e);
const n = [];
for (const e of t.g())
n.push({
score: Sn(e, 2) ?? 0,
index: kn(e, 1) ?? 0 ?? -1,
categoryName: le($e(e, 3)) ?? "" ?? "",
displayName: le($e(e, 4)) ?? "" ?? "",
});
i.push(n);
}
(r.call(n, ...i), ua(this, e));
}),
this.g.attachEmptyPacketListener("handedness", (t) => {
ua(this, t);
}),
(t = t.g()),
this.setGraph(new Uint8Array(t), !0));
}
};
((Pc.prototype.detectForVideo = Pc.prototype.G),
(Pc.prototype.detect = Pc.prototype.F),
(Pc.prototype.setOptions = Pc.prototype.o),
(Pc.createFromModelPath = function (t, e) {
return cc(Pc, t, { baseOptions: { modelAssetPath: e } });
}),
(Pc.createFromModelBuffer = function (t, e) {
return cc(Pc, t, { baseOptions: { modelAssetBuffer: e } });
}),
(Pc.createFromOptions = function (t, e) {
return cc(Pc, t, e);
}),
(Pc.HAND_CONNECTIONS = xc));
var Cc = ic(
[0, 1],
[1, 2],
[2, 3],
[3, 7],
[0, 4],
[4, 5],
[5, 6],
[6, 8],
[9, 10],
[11, 12],
[11, 13],
[13, 15],
[15, 17],
[15, 19],
[15, 21],
[17, 19],
[12, 14],
[14, 16],
[16, 18],
[16, 20],
[16, 22],
[18, 20],
[11, 23],
[12, 24],
[23, 24],
[23, 25],
[24, 26],
[25, 27],
[26, 28],
[27, 29],
[28, 30],
[29, 31],
[30, 32],
[27, 31],
[28, 32],
);
function Oc(t) {
t.h = {
faceLandmarks: [],
faceBlendshapes: [],
poseLandmarks: [],
poseWorldLandmarks: [],
poseSegmentationMasks: [],
leftHandLandmarks: [],
leftHandWorldLandmarks: [],
rightHandLandmarks: [],
rightHandWorldLandmarks: [],
};
}
function Nc(t) {
try {
if (!t.D) return t.h;
t.D(t.h);
} finally {
da(t);
}
}
function Uc(t, e) {
((t = ks(t)), e.push(Ho(t)));
}
var Dc = class extends dc {
constructor(t, e) {
(super(new ac(t, e), "input_frames_image", null, !1),
(this.h = {
faceLandmarks: [],
faceBlendshapes: [],
poseLandmarks: [],
poseWorldLandmarks: [],
poseSegmentationMasks: [],
leftHandLandmarks: [],
leftHandWorldLandmarks: [],
rightHandLandmarks: [],
rightHandWorldLandmarks: [],
}),
(this.outputPoseSegmentationMasks = this.outputFaceBlendshapes = !1),
wn((t = this.j = new yo()), 0, 1, (e = new Xs())),
(this.I = new io()),
wn(this.j, 0, 2, this.I),
(this.W = new po()),
wn(this.j, 0, 3, this.W),
(this.u = new zs()),
wn(this.j, 0, 4, this.u),
(this.O = new $s()),
wn(this.j, 0, 5, this.O),
(this.A = new go()),
wn(this.j, 0, 6, this.A),
(this.M = new mo()),
wn(this.j, 0, 7, this.M),
Ln(this.u, 2, 0.5),
Ln(this.u, 3, 0.3),
Ln(this.O, 2, 0.5),
Ln(this.A, 2, 0.5),
Ln(this.A, 3, 0.3),
Ln(this.M, 2, 0.5),
Ln(this.I, 2, 0.5));
}
get baseOptions() {
return yn(this.j, Xs, 1);
}
set baseOptions(t) {
wn(this.j, 0, 1, t);
}
o(t) {
return (
"minFaceDetectionConfidence" in t &&
Ln(this.u, 2, t.minFaceDetectionConfidence ?? 0.5),
"minFaceSuppressionThreshold" in t &&
Ln(this.u, 3, t.minFaceSuppressionThreshold ?? 0.3),
"minFacePresenceConfidence" in t &&
Ln(this.O, 2, t.minFacePresenceConfidence ?? 0.5),
"outputFaceBlendshapes" in t &&
(this.outputFaceBlendshapes = !!t.outputFaceBlendshapes),
"minPoseDetectionConfidence" in t &&
Ln(this.A, 2, t.minPoseDetectionConfidence ?? 0.5),
"minPoseSuppressionThreshold" in t &&
Ln(this.A, 3, t.minPoseSuppressionThreshold ?? 0.3),
"minPosePresenceConfidence" in t &&
Ln(this.M, 2, t.minPosePresenceConfidence ?? 0.5),
"outputPoseSegmentationMasks" in t &&
(this.outputPoseSegmentationMasks = !!t.outputPoseSegmentationMasks),
"minHandLandmarksConfidence" in t &&
Ln(this.I, 2, t.minHandLandmarksConfidence ?? 0.5),
this.l(t)
);
}
F(t, e, n) {
const r = "function" != typeof e ? e : {};
return (
(this.D = "function" == typeof e ? e : n),
Oc(this),
uc(this, t, r),
Nc(this)
);
}
G(t, e, n, r) {
const i = "function" != typeof n ? n : {};
return (
(this.D = "function" == typeof n ? n : r),
Oc(this),
lc(this, t, i, e),
Nc(this)
);
}
m() {
var t = new ls();
(hs(t, "input_frames_image"),
us(t, "pose_landmarks"),
us(t, "pose_world_landmarks"),
us(t, "face_landmarks"),
us(t, "left_hand_landmarks"),
us(t, "left_hand_world_landmarks"),
us(t, "right_hand_landmarks"),
us(t, "right_hand_world_landmarks"));
const e = new Qi(),
n = new Bi();
(Rn(
n,
1,
"type.googleapis.com/mediapipe.tasks.vision.holistic_landmarker.proto.HolisticLandmarkerGraphOptions",
),
(function (t, e) {
if (null != e)
if (Array.isArray(e)) Ze(t, 2, Ie(e, 0, Me));
else {
if (!("string" == typeof e || e instanceof F || x(e)))
throw Error(
"invalid value in Any.value field: " +
e +
" expected a ByteString, a base64 encoded string, a Uint8Array or a jspb array",
);
hn(t, 2, ht(e, !1), R());
}
})(n, this.j.g()));
const r = new is();
(Rn(
r,
2,
"mediapipe.tasks.vision.holistic_landmarker.HolisticLandmarkerGraph",
),
bn(r, 8, Bi, n),
ns(r, "IMAGE:input_frames_image"),
rs(r, "POSE_LANDMARKS:pose_landmarks"),
rs(r, "POSE_WORLD_LANDMARKS:pose_world_landmarks"),
rs(r, "FACE_LANDMARKS:face_landmarks"),
rs(r, "LEFT_HAND_LANDMARKS:left_hand_landmarks"),
rs(r, "LEFT_HAND_WORLD_LANDMARKS:left_hand_world_landmarks"),
rs(r, "RIGHT_HAND_LANDMARKS:right_hand_landmarks"),
rs(r, "RIGHT_HAND_WORLD_LANDMARKS:right_hand_world_landmarks"),
r.o(e),
cs(t, r),
la(this, t),
this.g.attachProtoListener("pose_landmarks", (t, e) => {
(Uc(t, this.h.poseLandmarks), ua(this, e));
}),
this.g.attachEmptyPacketListener("pose_landmarks", (t) => {
ua(this, t);
}),
this.g.attachProtoListener("pose_world_landmarks", (t, e) => {
var n = this.h.poseWorldLandmarks;
((t = As(t)), n.push(Wo(t)), ua(this, e));
}),
this.g.attachEmptyPacketListener("pose_world_landmarks", (t) => {
ua(this, t);
}),
this.outputPoseSegmentationMasks &&
(rs(r, "POSE_SEGMENTATION_MASK:pose_segmentation_mask"),
fa(this, "pose_segmentation_mask"),
this.g.Z("pose_segmentation_mask", (t, e) => {
((this.h.poseSegmentationMasks = [fc(this, t, !0, !this.D)]),
ua(this, e));
}),
this.g.attachEmptyPacketListener("pose_segmentation_mask", (t) => {
((this.h.poseSegmentationMasks = []), ua(this, t));
})),
this.g.attachProtoListener("face_landmarks", (t, e) => {
(Uc(t, this.h.faceLandmarks), ua(this, e));
}),
this.g.attachEmptyPacketListener("face_landmarks", (t) => {
ua(this, t);
}),
this.outputFaceBlendshapes &&
(us(t, "extra_blendshapes"),
rs(r, "FACE_BLENDSHAPES:extra_blendshapes"),
this.g.attachProtoListener("extra_blendshapes", (t, e) => {
var n = this.h.faceBlendshapes;
(this.outputFaceBlendshapes && ((t = ys(t)), n.push(jo(t.g() ?? []))),
ua(this, e));
}),
this.g.attachEmptyPacketListener("extra_blendshapes", (t) => {
ua(this, t);
})),
this.g.attachProtoListener("left_hand_landmarks", (t, e) => {
(Uc(t, this.h.leftHandLandmarks), ua(this, e));
}),
this.g.attachEmptyPacketListener("left_hand_landmarks", (t) => {
ua(this, t);
}),
this.g.attachProtoListener("left_hand_world_landmarks", (t, e) => {
var n = this.h.leftHandWorldLandmarks;
((t = As(t)), n.push(Wo(t)), ua(this, e));
}),
this.g.attachEmptyPacketListener("left_hand_world_landmarks", (t) => {
ua(this, t);
}),
this.g.attachProtoListener("right_hand_landmarks", (t, e) => {
(Uc(t, this.h.rightHandLandmarks), ua(this, e));
}),
this.g.attachEmptyPacketListener("right_hand_landmarks", (t) => {
ua(this, t);
}),
this.g.attachProtoListener("right_hand_world_landmarks", (t, e) => {
var n = this.h.rightHandWorldLandmarks;
((t = As(t)), n.push(Wo(t)), ua(this, e));
}),
this.g.attachEmptyPacketListener("right_hand_world_landmarks", (t) => {
ua(this, t);
}),
(t = t.g()),
this.setGraph(new Uint8Array(t), !0));
}
};
((Dc.prototype.detectForVideo = Dc.prototype.G),
(Dc.prototype.detect = Dc.prototype.F),
(Dc.prototype.setOptions = Dc.prototype.o),
(Dc.createFromModelPath = function (t, e) {
return cc(Dc, t, { baseOptions: { modelAssetPath: e } });
}),
(Dc.createFromModelBuffer = function (t, e) {
return cc(Dc, t, { baseOptions: { modelAssetBuffer: e } });
}),
(Dc.createFromOptions = function (t, e) {
return cc(Dc, t, e);
}),
(Dc.HAND_CONNECTIONS = xc),
(Dc.POSE_CONNECTIONS = Cc),
(Dc.FACE_LANDMARKS_LIPS = gc),
(Dc.FACE_LANDMARKS_LEFT_EYE = mc),
(Dc.FACE_LANDMARKS_LEFT_EYEBROW = yc),
(Dc.FACE_LANDMARKS_LEFT_IRIS = _c),
(Dc.FACE_LANDMARKS_RIGHT_EYE = vc),
(Dc.FACE_LANDMARKS_RIGHT_EYEBROW = Ec),
(Dc.FACE_LANDMARKS_RIGHT_IRIS = wc),
(Dc.FACE_LANDMARKS_FACE_OVAL = Tc),
(Dc.FACE_LANDMARKS_CONTOURS = Ac),
(Dc.FACE_LANDMARKS_TESSELATION = bc));
var Bc = class extends dc {
constructor(t, e) {
(super(new ac(t, e), "input_image", "norm_rect", !0),
(this.j = { classifications: [] }),
wn((t = this.h = new Eo()), 0, 1, (e = new Xs())));
}
get baseOptions() {
return yn(this.h, Xs, 1);
}
set baseOptions(t) {
wn(this.h, 0, 1, t);
}
o(t) {
return (wn(this.h, 0, 2, Bo(t, yn(this.h, Ns, 2))), this.l(t));
}
sa(t, e) {
return ((this.j = { classifications: [] }), uc(this, t, e), this.j);
}
ta(t, e, n) {
return ((this.j = { classifications: [] }), lc(this, t, n, e), this.j);
}
m() {
var t = new ls();
(hs(t, "input_image"), hs(t, "norm_rect"), us(t, "classifications"));
const e = new Qi();
xr(e, wo, this.h);
const n = new is();
(Rn(n, 2, "mediapipe.tasks.vision.image_classifier.ImageClassifierGraph"),
ns(n, "IMAGE:input_image"),
ns(n, "NORM_RECT:norm_rect"),
rs(n, "CLASSIFICATIONS:classifications"),
n.o(e),
cs(t, n),
this.g.attachProtoListener("classifications", (t, e) => {
((this.j = Vo(Is(t))), ua(this, e));
}),
this.g.attachEmptyPacketListener("classifications", (t) => {
ua(this, t);
}),
(t = t.g()),
this.setGraph(new Uint8Array(t), !0));
}
};
((Bc.prototype.classifyForVideo = Bc.prototype.ta),
(Bc.prototype.classify = Bc.prototype.sa),
(Bc.prototype.setOptions = Bc.prototype.o),
(Bc.createFromModelPath = function (t, e) {
return cc(Bc, t, { baseOptions: { modelAssetPath: e } });
}),
(Bc.createFromModelBuffer = function (t, e) {
return cc(Bc, t, { baseOptions: { modelAssetBuffer: e } });
}),
(Bc.createFromOptions = function (t, e) {
return cc(Bc, t, e);
}));
var Gc = class extends dc {
constructor(t, e) {
(super(new ac(t, e), "image_in", "norm_rect", !0),
(this.h = new To()),
(this.embeddings = { embeddings: [] }),
wn((t = this.h), 0, 1, (e = new Xs())));
}
get baseOptions() {
return yn(this.h, Xs, 1);
}
set baseOptions(t) {
wn(this.h, 0, 1, t);
}
o(t) {
var e = this.h,
n = yn(this.h, Ds, 2);
return (
(n = n ? n.clone() : new Ds()),
void 0 !== t.l2Normalize
? Ze(n, 1, Jt(t.l2Normalize))
: "l2Normalize" in t && Ze(n, 1),
void 0 !== t.quantize
? Ze(n, 2, Jt(t.quantize))
: "quantize" in t && Ze(n, 2),
wn(e, 0, 2, n),
this.l(t)
);
}
za(t, e) {
return (uc(this, t, e), this.embeddings);
}
Aa(t, e, n) {
return (lc(this, t, n, e), this.embeddings);
}
m() {
var t = new ls();
(hs(t, "image_in"), hs(t, "norm_rect"), us(t, "embeddings_out"));
const e = new Qi();
xr(e, Ao, this.h);
const n = new is();
(Rn(n, 2, "mediapipe.tasks.vision.image_embedder.ImageEmbedderGraph"),
ns(n, "IMAGE:image_in"),
ns(n, "NORM_RECT:norm_rect"),
rs(n, "EMBEDDINGS:embeddings_out"),
n.o(e),
cs(t, n),
this.g.attachProtoListener("embeddings_out", (t, e) => {
((t = Os(t)),
(this.embeddings = (function (t) {
return {
embeddings: vn(t, Ps, 1).map((t) => {
const e = {
headIndex: kn(t, 3) ?? 0 ?? -1,
headName: le($e(t, 4)) ?? "" ?? "",
};
var n = t.v;
return (
void 0 !== mn(n, 0 | n[Q], Fs, ln(t, 1))
? ((t = en((t = yn(t, Fs, ln(t, 1), void 0)), 1, $t, tn())),
(e.floatEmbedding = t.slice()))
: ((n = new Uint8Array(0)),
(e.quantizedEmbedding =
yn(t, Ms, ln(t, 2), void 0)
?.na()
?.h() ?? n)),
e
);
}),
timestampMs: Go($e(t, 2, void 0, void 0, ce) ?? Ye),
};
})(t)),
ua(this, e));
}),
this.g.attachEmptyPacketListener("embeddings_out", (t) => {
ua(this, t);
}),
(t = t.g()),
this.setGraph(new Uint8Array(t), !0));
}
};
((Gc.cosineSimilarity = function (t, e) {
if (t.floatEmbedding && e.floatEmbedding)
t = Ko(t.floatEmbedding, e.floatEmbedding);
else {
if (!t.quantizedEmbedding || !e.quantizedEmbedding)
throw Error(
"Cannot compute cosine similarity between quantized and float embeddings.",
);
t = Ko(zo(t.quantizedEmbedding), zo(e.quantizedEmbedding));
}
return t;
}),
(Gc.prototype.embedForVideo = Gc.prototype.Aa),
(Gc.prototype.embed = Gc.prototype.za),
(Gc.prototype.setOptions = Gc.prototype.o),
(Gc.createFromModelPath = function (t, e) {
return cc(Gc, t, { baseOptions: { modelAssetPath: e } });
}),
(Gc.createFromModelBuffer = function (t, e) {
return cc(Gc, t, { baseOptions: { modelAssetBuffer: e } });
}),
(Gc.createFromOptions = function (t, e) {
return cc(Gc, t, e);
}));
var jc = class {
constructor(t, e, n) {
((this.confidenceMasks = t),
(this.categoryMask = e),
(this.qualityScores = n));
}
close() {
(this.confidenceMasks?.forEach((t) => {
t.close();
}),
this.categoryMask?.close());
}
};
function Vc(t) {
const e = (function (t) {
return vn(t, is, 1);
})(t.ca()).filter((t) =>
(le($e(t, 1)) ?? "").includes(
"mediapipe.tasks.TensorsToSegmentationCalculator",
),
);
if (((t.u = []), e.length > 1))
throw Error(
"The graph has more than one mediapipe.tasks.TensorsToSegmentationCalculator.",
);
1 === e.length &&
(yn(e[0], Qi, 7)?.j()?.g() ?? new Map()).forEach((e, n) => {
t.u[Number(n)] = le($e(e, 1)) ?? "";
});
}
function Xc(t) {
((t.categoryMask = void 0),
(t.confidenceMasks = void 0),
(t.qualityScores = void 0));
}
function Hc(t) {
try {
const e = new jc(t.confidenceMasks, t.categoryMask, t.qualityScores);
if (!t.j) return e;
t.j(e);
} finally {
da(t);
}
}
jc.prototype.close = jc.prototype.close;
var Wc = class extends dc {
constructor(t, e) {
(super(new ac(t, e), "image_in", "norm_rect", !1),
(this.u = []),
(this.outputCategoryMask = !1),
(this.outputConfidenceMasks = !0),
(this.h = new Lo()),
(this.A = new bo()),
wn(this.h, 0, 3, this.A),
wn((t = this.h), 0, 1, (e = new Xs())));
}
get baseOptions() {
return yn(this.h, Xs, 1);
}
set baseOptions(t) {
wn(this.h, 0, 1, t);
}
o(t) {
return (
void 0 !== t.displayNamesLocale
? Ze(this.h, 2, ue(t.displayNamesLocale))
: "displayNamesLocale" in t && Ze(this.h, 2),
"outputCategoryMask" in t &&
(this.outputCategoryMask = t.outputCategoryMask ?? !1),
"outputConfidenceMasks" in t &&
(this.outputConfidenceMasks = t.outputConfidenceMasks ?? !0),
super.l(t)
);
}
L() {
Vc(this);
}
segment(t, e, n) {
const r = "function" != typeof e ? e : {};
return (
(this.j = "function" == typeof e ? e : n),
Xc(this),
uc(this, t, r),
Hc(this)
);
}
La(t, e, n, r) {
const i = "function" != typeof n ? n : {};
return (
(this.j = "function" == typeof n ? n : r),
Xc(this),
lc(this, t, i, e),
Hc(this)
);
}
Da() {
return this.u;
}
m() {
var t = new ls();
(hs(t, "image_in"), hs(t, "norm_rect"));
const e = new Qi();
xr(e, Ro, this.h);
const n = new is();
(Rn(n, 2, "mediapipe.tasks.vision.image_segmenter.ImageSegmenterGraph"),
ns(n, "IMAGE:image_in"),
ns(n, "NORM_RECT:norm_rect"),
n.o(e),
cs(t, n),
la(this, t),
this.outputConfidenceMasks &&
(us(t, "confidence_masks"),
rs(n, "CONFIDENCE_MASKS:confidence_masks"),
fa(this, "confidence_masks"),
this.g.aa("confidence_masks", (t, e) => {
((this.confidenceMasks = t.map((t) => fc(this, t, !0, !this.j))),
ua(this, e));
}),
this.g.attachEmptyPacketListener("confidence_masks", (t) => {
((this.confidenceMasks = []), ua(this, t));
})),
this.outputCategoryMask &&
(us(t, "category_mask"),
rs(n, "CATEGORY_MASK:category_mask"),
fa(this, "category_mask"),
this.g.Z("category_mask", (t, e) => {
((this.categoryMask = fc(this, t, !1, !this.j)), ua(this, e));
}),
this.g.attachEmptyPacketListener("category_mask", (t) => {
((this.categoryMask = void 0), ua(this, t));
})),
us(t, "quality_scores"),
rs(n, "QUALITY_SCORES:quality_scores"),
this.g.attachFloatVectorListener("quality_scores", (t, e) => {
((this.qualityScores = t), ua(this, e));
}),
this.g.attachEmptyPacketListener("quality_scores", (t) => {
((this.categoryMask = void 0), ua(this, t));
}),
(t = t.g()),
this.setGraph(new Uint8Array(t), !0));
}
};
((Wc.prototype.getLabels = Wc.prototype.Da),
(Wc.prototype.segmentForVideo = Wc.prototype.La),
(Wc.prototype.segment = Wc.prototype.segment),
(Wc.prototype.setOptions = Wc.prototype.o),
(Wc.createFromModelPath = function (t, e) {
return cc(Wc, t, { baseOptions: { modelAssetPath: e } });
}),
(Wc.createFromModelBuffer = function (t, e) {
return cc(Wc, t, { baseOptions: { modelAssetBuffer: e } });
}),
(Wc.createFromOptions = function (t, e) {
return cc(Wc, t, e);
}));
var zc = class {
constructor(t, e, n) {
((this.confidenceMasks = t),
(this.categoryMask = e),
(this.qualityScores = n));
}
close() {
(this.confidenceMasks?.forEach((t) => {
t.close();
}),
this.categoryMask?.close());
}
};
zc.prototype.close = zc.prototype.close;
var Kc = class extends dc {
constructor(t, e) {
(super(new ac(t, e), "image_in", "norm_rect_in", !1),
(this.outputCategoryMask = !1),
(this.outputConfidenceMasks = !0),
(this.h = new Lo()),
(this.u = new bo()),
wn(this.h, 0, 3, this.u),
wn((t = this.h), 0, 1, (e = new Xs())));
}
get baseOptions() {
return yn(this.h, Xs, 1);
}
set baseOptions(t) {
wn(this.h, 0, 1, t);
}
o(t) {
return (
"outputCategoryMask" in t &&
(this.outputCategoryMask = t.outputCategoryMask ?? !1),
"outputConfidenceMasks" in t &&
(this.outputConfidenceMasks = t.outputConfidenceMasks ?? !0),
super.l(t)
);
}
segment(t, e, n, r) {
const i = "function" != typeof n ? n : {};
if (
((this.j = "function" == typeof n ? n : r),
(this.qualityScores = this.categoryMask = this.confidenceMasks = void 0),
(n = this.C + 1),
(r = new Po()),
e.keypoint && e.scribble)
)
throw Error("Cannot provide both keypoint and scribble.");
if (e.keypoint) {
var s = new Io();
(hn(s, 3, Jt(!0), !1),
hn(s, 1, qt(e.keypoint.x), 0),
hn(s, 2, qt(e.keypoint.y), 0),
Tn(r, 1, Co, s));
} else {
if (!e.scribble)
throw Error("Must provide either a keypoint or a scribble.");
{
const t = new Mo();
for (s of e.scribble)
(hn((e = new Io()), 3, Jt(!0), !1),
hn(e, 1, qt(s.x), 0),
hn(e, 2, qt(s.y), 0),
bn(t, 1, Io, e));
Tn(r, 2, Co, t);
}
}
(this.g.addProtoToStream(
r.g(),
"mediapipe.tasks.vision.interactive_segmenter.proto.RegionOfInterest",
"roi_in",
n,
),
uc(this, t, i));
t: {
try {
const t = new zc(
this.confidenceMasks,
this.categoryMask,
this.qualityScores,
);
if (!this.j) {
var o = t;
break t;
}
this.j(t);
} finally {
da(this);
}
o = void 0;
}
return o;
}
m() {
var t = new ls();
(hs(t, "image_in"), hs(t, "roi_in"), hs(t, "norm_rect_in"));
const e = new Qi();
xr(e, Ro, this.h);
const n = new is();
(Rn(
n,
2,
"mediapipe.tasks.vision.interactive_segmenter.InteractiveSegmenterGraphV2",
),
ns(n, "IMAGE:image_in"),
ns(n, "ROI:roi_in"),
ns(n, "NORM_RECT:norm_rect_in"),
n.o(e),
cs(t, n),
la(this, t),
this.outputConfidenceMasks &&
(us(t, "confidence_masks"),
rs(n, "CONFIDENCE_MASKS:confidence_masks"),
fa(this, "confidence_masks"),
this.g.aa("confidence_masks", (t, e) => {
((this.confidenceMasks = t.map((t) => fc(this, t, !0, !this.j))),
ua(this, e));
}),
this.g.attachEmptyPacketListener("confidence_masks", (t) => {
((this.confidenceMasks = []), ua(this, t));
})),
this.outputCategoryMask &&
(us(t, "category_mask"),
rs(n, "CATEGORY_MASK:category_mask"),
fa(this, "category_mask"),
this.g.Z("category_mask", (t, e) => {
((this.categoryMask = fc(this, t, !1, !this.j)), ua(this, e));
}),
this.g.attachEmptyPacketListener("category_mask", (t) => {
((this.categoryMask = void 0), ua(this, t));
})),
us(t, "quality_scores"),
rs(n, "QUALITY_SCORES:quality_scores"),
this.g.attachFloatVectorListener("quality_scores", (t, e) => {
((this.qualityScores = t), ua(this, e));
}),
this.g.attachEmptyPacketListener("quality_scores", (t) => {
((this.categoryMask = void 0), ua(this, t));
}),
(t = t.g()),
this.setGraph(new Uint8Array(t), !0));
}
};
((Kc.prototype.segment = Kc.prototype.segment),
(Kc.prototype.setOptions = Kc.prototype.o),
(Kc.createFromModelPath = function (t, e) {
return cc(Kc, t, { baseOptions: { modelAssetPath: e } });
}),
(Kc.createFromModelBuffer = function (t, e) {
return cc(Kc, t, { baseOptions: { modelAssetBuffer: e } });
}),
(Kc.createFromOptions = function (t, e) {
return cc(Kc, t, e);
}));
var Yc = class extends dc {
constructor(t, e) {
(super(new ac(t, e), "input_frame_gpu", "norm_rect", !1),
(this.j = { detections: [] }),
wn((t = this.h = new Oo()), 0, 1, (e = new Xs())));
}
get baseOptions() {
return yn(this.h, Xs, 1);
}
set baseOptions(t) {
wn(this.h, 0, 1, t);
}
o(t) {
return (
void 0 !== t.displayNamesLocale
? Ze(this.h, 2, ue(t.displayNamesLocale))
: "displayNamesLocale" in t && Ze(this.h, 2),
void 0 !== t.maxResults
? xn(this.h, 3, t.maxResults)
: "maxResults" in t && Ze(this.h, 3),
void 0 !== t.scoreThreshold
? Ln(this.h, 4, t.scoreThreshold)
: "scoreThreshold" in t && Ze(this.h, 4),
void 0 !== t.categoryAllowlist
? In(this.h, 5, t.categoryAllowlist)
: "categoryAllowlist" in t && Ze(this.h, 5),
void 0 !== t.categoryDenylist
? In(this.h, 6, t.categoryDenylist)
: "categoryDenylist" in t && Ze(this.h, 6),
this.l(t)
);
}
F(t, e) {
return ((this.j = { detections: [] }), uc(this, t, e), this.j);
}
G(t, e, n) {
return ((this.j = { detections: [] }), lc(this, t, n, e), this.j);
}
m() {
var t = new ls();
(hs(t, "input_frame_gpu"), hs(t, "norm_rect"), us(t, "detections"));
const e = new Qi();
xr(e, No, this.h);
const n = new is();
(Rn(n, 2, "mediapipe.tasks.vision.ObjectDetectorGraph"),
ns(n, "IMAGE:input_frame_gpu"),
ns(n, "NORM_RECT:norm_rect"),
rs(n, "DETECTIONS:detections"),
n.o(e),
cs(t, n),
this.g.attachProtoVectorListener("detections", (t, e) => {
for (const e of t) ((t = ws(e)), this.j.detections.push(Xo(t)));
ua(this, e);
}),
this.g.attachEmptyPacketListener("detections", (t) => {
ua(this, t);
}),
(t = t.g()),
this.setGraph(new Uint8Array(t), !0));
}
};
((Yc.prototype.detectForVideo = Yc.prototype.G),
(Yc.prototype.detect = Yc.prototype.F),
(Yc.prototype.setOptions = Yc.prototype.o),
(Yc.createFromModelPath = async function (t, e) {
return cc(Yc, t, { baseOptions: { modelAssetPath: e } });
}),
(Yc.createFromModelBuffer = function (t, e) {
return cc(Yc, t, { baseOptions: { modelAssetBuffer: e } });
}),
(Yc.createFromOptions = function (t, e) {
return cc(Yc, t, e);
}));
var qc = class {
constructor(t, e, n) {
((this.landmarks = t),
(this.worldLandmarks = e),
(this.segmentationMasks = n));
}
close() {
this.segmentationMasks?.forEach((t) => {
t.close();
});
}
};
function $c(t) {
((t.landmarks = []), (t.worldLandmarks = []), (t.segmentationMasks = void 0));
}
function Jc(t) {
try {
const e = new qc(t.landmarks, t.worldLandmarks, t.segmentationMasks);
if (!t.u) return e;
t.u(e);
} finally {
da(t);
}
}
qc.prototype.close = qc.prototype.close;
var Zc = class extends dc {
constructor(t, e) {
(super(new ac(t, e), "image_in", "norm_rect", !1),
(this.landmarks = []),
(this.worldLandmarks = []),
(this.outputSegmentationMasks = !1),
wn((t = this.h = new Uo()), 0, 1, (e = new Xs())),
(this.A = new mo()),
wn(this.h, 0, 3, this.A),
(this.j = new go()),
wn(this.h, 0, 2, this.j),
xn(this.j, 4, 1),
Ln(this.j, 2, 0.5),
Ln(this.A, 2, 0.5),
Ln(this.h, 4, 0.5));
}
get baseOptions() {
return yn(this.h, Xs, 1);
}
set baseOptions(t) {
wn(this.h, 0, 1, t);
}
o(t) {
return (
"numPoses" in t && xn(this.j, 4, t.numPoses ?? 1),
"minPoseDetectionConfidence" in t &&
Ln(this.j, 2, t.minPoseDetectionConfidence ?? 0.5),
"minTrackingConfidence" in t &&
Ln(this.h, 4, t.minTrackingConfidence ?? 0.5),
"minPosePresenceConfidence" in t &&
Ln(this.A, 2, t.minPosePresenceConfidence ?? 0.5),
"outputSegmentationMasks" in t &&
(this.outputSegmentationMasks = t.outputSegmentationMasks ?? !1),
this.l(t)
);
}
F(t, e, n) {
const r = "function" != typeof e ? e : {};
return (
(this.u = "function" == typeof e ? e : n),
$c(this),
uc(this, t, r),
Jc(this)
);
}
G(t, e, n, r) {
const i = "function" != typeof n ? n : {};
return (
(this.u = "function" == typeof n ? n : r),
$c(this),
lc(this, t, i, e),
Jc(this)
);
}
m() {
var t = new ls();
(hs(t, "image_in"),
hs(t, "norm_rect"),
us(t, "normalized_landmarks"),
us(t, "world_landmarks"),
us(t, "segmentation_masks"));
const e = new Qi();
xr(e, Do, this.h);
const n = new is();
(Rn(n, 2, "mediapipe.tasks.vision.pose_landmarker.PoseLandmarkerGraph"),
ns(n, "IMAGE:image_in"),
ns(n, "NORM_RECT:norm_rect"),
rs(n, "NORM_LANDMARKS:normalized_landmarks"),
rs(n, "WORLD_LANDMARKS:world_landmarks"),
n.o(e),
cs(t, n),
la(this, t),
this.g.attachProtoVectorListener("normalized_landmarks", (t, e) => {
this.landmarks = [];
for (const e of t) ((t = ks(e)), this.landmarks.push(Ho(t)));
ua(this, e);
}),
this.g.attachEmptyPacketListener("normalized_landmarks", (t) => {
((this.landmarks = []), ua(this, t));
}),
this.g.attachProtoVectorListener("world_landmarks", (t, e) => {
this.worldLandmarks = [];
for (const e of t) ((t = As(e)), this.worldLandmarks.push(Wo(t)));
ua(this, e);
}),
this.g.attachEmptyPacketListener("world_landmarks", (t) => {
((this.worldLandmarks = []), ua(this, t));
}),
this.outputSegmentationMasks &&
(rs(n, "SEGMENTATION_MASK:segmentation_masks"),
fa(this, "segmentation_masks"),
this.g.aa("segmentation_masks", (t, e) => {
((this.segmentationMasks = t.map((t) => fc(this, t, !0, !this.u))),
ua(this, e));
}),
this.g.attachEmptyPacketListener("segmentation_masks", (t) => {
((this.segmentationMasks = []), ua(this, t));
})),
(t = t.g()),
this.setGraph(new Uint8Array(t), !0));
}
};
((Zc.prototype.detectForVideo = Zc.prototype.G),
(Zc.prototype.detect = Zc.prototype.F),
(Zc.prototype.setOptions = Zc.prototype.o),
(Zc.createFromModelPath = function (t, e) {
return cc(Zc, t, { baseOptions: { modelAssetPath: e } });
}),
(Zc.createFromModelBuffer = function (t, e) {
return cc(Zc, t, { baseOptions: { modelAssetBuffer: e } });
}),
(Zc.createFromOptions = function (t, e) {
return cc(Zc, t, e);
}),
(Zc.POSE_CONNECTIONS = Cc));
export {
Ka as DrawingUtils,
pc as FaceDetector,
Sc as FaceLandmarker,
Zo as FilesetResolver,
Fc as GestureRecognizer,
Pc as HandLandmarker,
Dc as HolisticLandmarker,
Bc as ImageClassifier,
Gc as ImageEmbedder,
Wc as ImageSegmenter,
jc as ImageSegmenterResult,
Kc as InteractiveSegmenter,
zc as InteractiveSegmenterResult,
nc as MPImage,
Na as MPMask,
Yc as ObjectDetector,
Zc as PoseLandmarker,
pa as TaskRunner,
dc as VisionTaskRunner,
};
//# sourceMappingURL=vision_bundle_mjs.js.map