@simprints/simface-sdk 0.9.1 → 0.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +42 -27
- package/dist/components/simface-capture.js +84 -24
- package/dist/components/simface-capture.js.map +1 -1
- package/dist/shared/capture-flow.d.ts +2 -0
- package/dist/shared/capture-flow.js +2 -2
- package/dist/shared/capture-flow.js.map +1 -1
- package/dist/simface-sdk.js +519 -461
- package/dist/simface-sdk.umd.cjs +94 -37
- package/package.json +1 -1
package/dist/simface-sdk.umd.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(w,Ye){typeof exports=="object"&&typeof module<"u"?Ye(exports):typeof define=="function"&&define.amd?define(["exports"],Ye):(w=typeof globalThis<"u"?globalThis:w||self,Ye(w.SimFaceSDK={}))})(this,(function(w){"use strict";var Uc;class Ye{constructor(t){this.apiUrl=t.apiUrl.replace(/\/$/,""),this.projectId=t.projectId,this.apiKey=t.apiKey}async validateAPIKey(){const t=await fetch(`${this.apiUrl}/api/v1/auth/validate`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectId:this.projectId,apiKey:this.apiKey})});if(!t.ok){const r=await t.json();throw new Error(r.error||"API key validation failed")}return t.json()}async enroll(t,r){const s=new FormData;s.append("projectId",this.projectId),s.append("apiKey",this.apiKey),s.append("clientId",t),s.append("image",r,"face.jpg");const n=await fetch(`${this.apiUrl}/api/v1/enroll`,{method:"POST",body:s});if(n.status===409)return{success:!1,clientId:t,alreadyEnrolled:!0,message:"User already enrolled"};if(!n.ok){const i=await n.json();throw new Error(i.error||"Enrollment failed")}return n.json()}async verify(t,r){const s=new FormData;s.append("projectId",this.projectId),s.append("apiKey",this.apiKey),s.append("clientId",t),s.append("image",r,"face.jpg");const n=await fetch(`${this.apiUrl}/api/v1/verify`,{method:"POST",body:s});if(n.status===404)return{match:!1,score:0,threshold:0,notEnrolled:!0,message:"User not enrolled"};if(!n.ok){const i=await n.json();throw new Error(i.error||"Verification failed")}return n.json()}}var bt=typeof self<"u"?self:{};function Qt(e,t){e:{for(var r=["CLOSURE_FLAGS"],s=bt,n=0;n<r.length;n++)if((s=s[r[n]])==null){r=null;break e}r=s}return(e=r&&r[e])!=null?e:t}function Qe(){throw Error("Invalid UTF8")}function ei(e,t){return t=String.fromCharCode.apply(null,t),e==null?t:e+t}let Cr,ds;const Dc=typeof TextDecoder<"u";let jc;const Vc=typeof TextEncoder<"u";function ti(e){if(Vc)e=(jc||(jc=new TextEncoder)).encode(e);else{let r=0;const s=new Uint8Array(3*e.length);for(let n=0;n<e.length;n++){var t=e.charCodeAt(n);if(t<128)s[r++]=t;else{if(t<2048)s[r++]=t>>6|192;else{if(t>=55296&&t<=57343){if(t<=56319&&n<e.length){const i=e.charCodeAt(++n);if(i>=56320&&i<=57343){t=1024*(t-55296)+i-56320+65536,s[r++]=t>>18|240,s[r++]=t>>12&63|128,s[r++]=t>>6&63|128,s[r++]=63&t|128;continue}n--}t=65533}s[r++]=t>>12|224,s[r++]=t>>6&63|128}s[r++]=63&t|128}}e=r===s.length?s:s.subarray(0,r)}return e}function ri(e){bt.setTimeout((()=>{throw e}),0)}var fs,Gc=Qt(610401301,!1),si=Qt(748402147,!0),ps=Qt(824648567,!0),ms=Qt(824656860,Qt(1,!0));function ni(){var e=bt.navigator;return e&&(e=e.userAgent)?e:""}const ii=bt.navigator;function Tr(e){return Tr[" "](e),e}fs=ii&&ii.userAgentData||null,Tr[" "]=function(){};const oi={};let Jt=null;function Hc(e){const t=e.length;let r=3*t/4;r%3?r=Math.floor(r):"=.".indexOf(e[t-1])!=-1&&(r="=.".indexOf(e[t-2])!=-1?r-2:r-1);const s=new Uint8Array(r);let n=0;return(function(i,o){function a(u){for(;c<i.length;){const h=i.charAt(c++),l=Jt[h];if(l!=null)return l;if(!/^[\s\xa0]*$/.test(h))throw Error("Unknown base64 encoding at char: "+h)}return u}ai();let c=0;for(;;){const u=a(-1),h=a(0),l=a(64),f=a(64);if(f===64&&u===-1)break;o(u<<2|h>>4),l!=64&&(o(h<<4&240|l>>2),f!=64&&o(l<<6&192|f))}})(e,(function(i){s[n++]=i})),n!==r?s.subarray(0,n):s}function ai(){if(!Jt){Jt={};var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),t=["+/=","+/","-_=","-_.","-_"];for(let r=0;r<5;r++){const s=e.concat(t[r].split(""));oi[r]=s;for(let n=0;n<s.length;n++){const i=s[n];Jt[i]===void 0&&(Jt[i]=n)}}}}var zc=typeof Uint8Array<"u",ci=!(!(Gc&&fs&&fs.brands.length>0)&&(ni().indexOf("Trident")!=-1||ni().indexOf("MSIE")!=-1))&&typeof btoa=="function";const hi=/[-_.]/g,Wc={"-":"+",_:"/",".":"="};function Kc(e){return Wc[e]||""}function ui(e){if(!ci)return Hc(e);e=hi.test(e)?e.replace(hi,Kc):e,e=atob(e);const t=new Uint8Array(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}function gs(e){return zc&&e!=null&&e instanceof Uint8Array}var vt={};function Je(){return qc||(qc=new Ee(null,vt))}function ys(e){li(vt);var t=e.g;return(t=t==null||gs(t)?t:typeof t=="string"?ui(t):null)==null?t:e.g=t}var Ee=class{h(){return new Uint8Array(ys(this)||0)}constructor(t,r){if(li(r),this.g=t,t!=null&&t.length===0)throw Error("ByteString should be constructed with non-empty values")}};let qc,Xc;function li(e){if(e!==vt)throw Error("illegal external caller")}function di(e,t){e.__closure__error__context__984382||(e.__closure__error__context__984382={}),e.__closure__error__context__984382.severity=t}function bs(e){return di(e=Error(e),"warning"),e}function _t(e,t){if(e!=null){var r=Xc??(Xc={}),s=r[e]||0;s>=t||(r[e]=s+1,di(e=Error(),"incident"),ri(e))}}function wt(){return typeof BigInt=="function"}var At=typeof Symbol=="function"&&typeof Symbol()=="symbol";function ke(e,t,r=!1){return typeof Symbol=="function"&&typeof Symbol()=="symbol"?r&&Symbol.for&&e?Symbol.for(e):e!=null?Symbol(e):Symbol():t}var Yc=ke("jas",void 0,!0),fi=ke(void 0,"0di"),Zt=ke(void 0,"1oa"),te=ke(void 0,Symbol()),Qc=ke(void 0,"0ub"),Jc=ke(void 0,"0ubs"),vs=ke(void 0,"0ubsb"),Zc=ke(void 0,"0actk"),Et=ke("m_m","Pa",!0),pi=ke();const mi={Ga:{value:0,configurable:!0,writable:!0,enumerable:!1}},gi=Object.defineProperties,p=At?Yc:"Ga";var Ze;const yi=[];function er(e,t){At||p in e||gi(e,mi),e[p]|=t}function j(e,t){At||p in e||gi(e,mi),e[p]=t}function tr(e){return er(e,34),e}function rr(e){return er(e,8192),e}j(yi,7),Ze=Object.freeze(yi);var kt={};function re(e,t){return t===void 0?e.h!==et&&!!(2&(0|e.v[p])):!!(2&t)&&e.h!==et}const et={};function _s(e,t){if(e!=null){if(typeof e=="string")e=e?new Ee(e,vt):Je();else if(e.constructor!==Ee)if(gs(e))e=e.length?new Ee(new Uint8Array(e),vt):Je();else{if(!t)throw Error();e=void 0}}return e}class bi{constructor(t,r,s){this.g=t,this.h=r,this.l=s}next(){const t=this.g.next();return t.done||(t.value=this.h.call(this.l,t.value)),t}[Symbol.iterator](){return this}}var eh=Object.freeze({});function vi(e,t,r){const s=128&t?0:-1,n=e.length;var i;(i=!!n)&&(i=(i=e[n-1])!=null&&typeof i=="object"&&i.constructor===Object);const o=n+(i?-1:0);for(t=128&t?1:0;t<o;t++)r(t-s,e[t]);if(i){e=e[n-1];for(const a in e)!isNaN(a)&&r(+a,e[a])}}var _i={};function St(e){return 128&e?_i:void 0}function Pr(e){return e.Na=!0,e}var th=Pr((e=>typeof e=="number")),wi=Pr((e=>typeof e=="string")),rh=Pr((e=>typeof e=="boolean")),Mr=typeof bt.BigInt=="function"&&typeof bt.BigInt(0)=="bigint";function se(e){var t=e;if(wi(t)){if(!/^\s*(?:-?[1-9]\d*|0)?\s*$/.test(t))throw Error(String(t))}else if(th(t)&&!Number.isSafeInteger(t))throw Error(String(t));return Mr?BigInt(e):e=rh(e)?e?"1":"0":wi(e)?e.trim()||"0":String(e)}var ws=Pr((e=>Mr?e>=nh&&e<=oh:e[0]==="-"?Ai(e,sh):Ai(e,ih)));const sh=Number.MIN_SAFE_INTEGER.toString(),nh=Mr?BigInt(Number.MIN_SAFE_INTEGER):void 0,ih=Number.MAX_SAFE_INTEGER.toString(),oh=Mr?BigInt(Number.MAX_SAFE_INTEGER):void 0;function Ai(e,t){if(e.length>t.length)return!1;if(e.length<t.length||e===t)return!0;for(let r=0;r<e.length;r++){const s=e[r],n=t[r];if(s>n)return!1;if(s<n)return!0}}const ah=typeof Uint8Array.prototype.slice=="function";let ch,L=0,U=0;function Ei(e){const t=e>>>0;L=t,U=(e-t)/4294967296>>>0}function Ct(e){if(e<0){Ei(-e);const[t,r]=Cs(L,U);L=t>>>0,U=r>>>0}else Ei(e)}function As(e){const t=ch||(ch=new DataView(new ArrayBuffer(8)));t.setFloat32(0,+e,!0),U=0,L=t.getUint32(0,!0)}function Es(e,t){const r=4294967296*t+(e>>>0);return Number.isSafeInteger(r)?r:sr(e,t)}function hh(e,t){return se(wt()?BigInt.asUintN(64,(BigInt(t>>>0)<<BigInt(32))+BigInt(e>>>0)):sr(e,t))}function ks(e,t){const r=2147483648&t;return r&&(t=~t>>>0,(e=1+~e>>>0)==0&&(t=t+1>>>0)),typeof(e=Es(e,t))=="number"?r?-e:e:r?"-"+e:e}function ki(e,t){return wt()?se(BigInt.asIntN(64,(BigInt.asUintN(32,BigInt(t))<<BigInt(32))+BigInt.asUintN(32,BigInt(e)))):se(Ss(e,t))}function sr(e,t){if(e>>>=0,(t>>>=0)<=2097151)var r=""+(4294967296*t+e);else wt()?r=""+(BigInt(t)<<BigInt(32)|BigInt(e)):(e=(16777215&e)+6777216*(r=16777215&(e>>>24|t<<8))+6710656*(t=t>>16&65535),r+=8147497*t,t*=2,e>=1e7&&(r+=e/1e7>>>0,e%=1e7),r>=1e7&&(t+=r/1e7>>>0,r%=1e7),r=t+Si(r)+Si(e));return r}function Si(e){return e=String(e),"0000000".slice(e.length)+e}function Ss(e,t){if(2147483648&t)if(wt())e=""+(BigInt(0|t)<<BigInt(32)|BigInt(e>>>0));else{const[r,s]=Cs(e,t);e="-"+sr(r,s)}else e=sr(e,t);return e}function Lr(e){if(e.length<16)Ct(Number(e));else if(wt())e=BigInt(e),L=Number(e&BigInt(4294967295))>>>0,U=Number(e>>BigInt(32)&BigInt(4294967295));else{const t=+(e[0]==="-");U=L=0;const r=e.length;for(let s=t,n=(r-t)%6+t;n<=r;s=n,n+=6){const i=Number(e.slice(s,n));U*=1e6,L=1e6*L+i,L>=4294967296&&(U+=Math.trunc(L/4294967296),U>>>=0,L>>>=0)}if(t){const[s,n]=Cs(L,U);L=s,U=n}}}function Cs(e,t){return t=~t,e?e=1+~e:t+=1,[e,t]}function ve(e){return Array.prototype.slice.call(e)}const nr=typeof BigInt=="function"?BigInt.asIntN:void 0,uh=typeof BigInt=="function"?BigInt.asUintN:void 0,tt=Number.isSafeInteger,Fr=Number.isFinite,Tt=Math.trunc,lh=se(0);function ir(e){if(e!=null&&typeof e!="number")throw Error(`Value of float/double field must be a number, found ${typeof e}: ${e}`);return e}function Se(e){return e==null||typeof e=="number"?e:e==="NaN"||e==="Infinity"||e==="-Infinity"?Number(e):void 0}function or(e){if(e!=null&&typeof e!="boolean"){var t=typeof e;throw Error(`Expected boolean but got ${t!="object"?t:e?Array.isArray(e)?"array":t:"null"}: ${e}`)}return e}function Ci(e){return e==null||typeof e=="boolean"?e:typeof e=="number"?!!e:void 0}const dh=/^-?([1-9][0-9]*|0)(\.[0-9]+)?$/;function ar(e){switch(typeof e){case"bigint":return!0;case"number":return Fr(e);case"string":return dh.test(e);default:return!1}}function Pt(e){if(e==null)return e;if(typeof e=="string"&&e)e=+e;else if(typeof e!="number")return;return Fr(e)?0|e:void 0}function Ti(e){if(e==null)return e;if(typeof e=="string"&&e)e=+e;else if(typeof e!="number")return;return Fr(e)?e>>>0:void 0}function Pi(e){const t=e.length;return(e[0]==="-"?t<20||t===20&&e<="-9223372036854775808":t<19||t===19&&e<="9223372036854775807")?e:(Lr(e),Ss(L,U))}function Ts(e){return e=Tt(e),tt(e)||(Ct(e),e=ks(L,U)),e}function Mi(e){var t=Tt(Number(e));return tt(t)?String(t):((t=e.indexOf("."))!==-1&&(e=e.substring(0,t)),Pi(e))}function Li(e){var t=Tt(Number(e));return tt(t)?se(t):((t=e.indexOf("."))!==-1&&(e=e.substring(0,t)),wt()?se(nr(64,BigInt(e))):se(Pi(e)))}function Fi(e){return tt(e)?e=se(Ts(e)):(e=Tt(e),tt(e)?e=String(e):(Ct(e),e=Ss(L,U)),e=se(e)),e}function fh(e){return e==null?e:typeof e=="bigint"?(ws(e)?e=Number(e):(e=nr(64,e),e=ws(e)?Number(e):String(e)),e):ar(e)?typeof e=="number"?Ts(e):Mi(e):void 0}function $r(e){const t=typeof e;return e==null?e:t==="bigint"?se(nr(64,e)):ar(e)?t==="string"?Li(e):Fi(e):void 0}function $i(e){if(typeof e!="string")throw Error();return e}function cr(e){if(e!=null&&typeof e!="string")throw Error();return e}function X(e){return e==null||typeof e=="string"?e:void 0}function Ps(e,t,r,s){return e!=null&&e[Et]===kt?e:Array.isArray(e)?((s=(r=0|e[p])|32&s|2&s)!==r&&j(e,s),new t(e)):(r?2&s?((e=t[fi])||(tr((e=new t).v),e=t[fi]=e),t=e):t=new t:t=void 0,t)}function ph(e,t,r){if(t)e:{if(!ar(t=e))throw bs("int64");switch(typeof t){case"string":t=Li(t);break e;case"bigint":t=se(nr(64,t));break e;default:t=Fi(t)}}else t=$r(e);return(e=t)==null?r?lh:void 0:e}const mh={};let gh=(function(){try{return Tr(new class extends Map{constructor(){super()}}),!1}catch{return!0}})();class Ms{constructor(){this.g=new Map}get(t){return this.g.get(t)}set(t,r){return this.g.set(t,r),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,r){return this.g.forEach(t,r)}[Symbol.iterator](){return this.entries()}}const yh=gh?(Object.setPrototypeOf(Ms.prototype,Map.prototype),Object.defineProperties(Ms.prototype,{size:{value:0,configurable:!0,enumerable:!0,writable:!0}}),Ms):class extends Map{constructor(){super()}};function Oi(e){return e}function Ls(e){if(2&e.J)throw Error("Cannot mutate an immutable Map")}var $e=class extends yh{constructor(e,t,r=Oi,s=Oi){super(),this.J=0|e[p],this.K=t,this.S=r,this.fa=this.K?bh:s;for(let n=0;n<e.length;n++){const i=e[n],o=r(i[0],!1,!0);let a=i[1];t?a===void 0&&(a=null):a=s(i[1],!1,!0,void 0,void 0,this.J),super.set(o,a)}}V(e){return rr(Array.from(super.entries(),e))}clear(){Ls(this),super.clear()}delete(e){return Ls(this),super.delete(this.S(e,!0,!1))}entries(){if(this.K){var e=super.keys();e=new bi(e,vh,this)}else e=super.entries();return e}values(){if(this.K){var e=super.keys();e=new bi(e,$e.prototype.get,this)}else e=super.values();return e}forEach(e,t){this.K?super.forEach(((r,s,n)=>{e.call(t,n.get(s),s,n)})):super.forEach(e,t)}set(e,t){return Ls(this),(e=this.S(e,!0,!1))==null?this:t==null?(super.delete(e),this):super.set(e,this.fa(t,!0,!0,this.K,!1,this.J))}Ma(e){const t=this.S(e[0],!1,!0);e=e[1],e=this.K?e===void 0?null:e:this.fa(e,!1,!0,void 0,!1,this.J),super.set(t,e)}has(e){return super.has(this.S(e,!1,!1))}get(e){e=this.S(e,!1,!1);const t=super.get(e);if(t!==void 0){var r=this.K;return r?((r=this.fa(t,!1,!0,r,this.ra,this.J))!==t&&super.set(e,r),r):t}}[Symbol.iterator](){return this.entries()}};function bh(e,t,r,s,n,i){return e=Ps(e,s,r,i),n&&(e=Os(e)),e}function vh(e){return[e,this.get(e)]}let _h;function xi(){return _h||(_h=new $e(tr([]),void 0,void 0,void 0,mh))}function Or(e){return te?e[te]:void 0}function xr(e,t){for(const r in e)!isNaN(r)&&t(e,+r,e[r])}$e.prototype.toJSON=void 0;var Fs=class{};const wh={Ka:!0};function Ah(e,t){t<100||_t(Jc,1)}function Ir(e,t,r,s){const n=s!==void 0;s=!!s;var i,o=te;!n&&At&&o&&(i=e[o])&&xr(i,Ah),o=[];var a=e.length;let c;i=4294967295;let u=!1;const h=!!(64&t),l=h?128&t?0:-1:void 0;1&t||(c=a&&e[a-1],c!=null&&typeof c=="object"&&c.constructor===Object?i=--a:c=void 0,!h||128&t||n||(u=!0,i=i-l+l)),t=void 0;for(var f=0;f<a;f++){let v=e[f];if(v!=null&&(v=r(v,s))!=null)if(h&&f>=i){const $=f-l;(t??(t={}))[$]=v}else o[f]=v}if(c)for(let v in c){if((a=c[v])==null||(a=r(a,s))==null)continue;let $;f=+v,h&&!Number.isNaN(f)&&($=f+l)<i?o[$]=a:(t??(t={}))[v]=a}return t&&(u?o.push(t):o[i]=t),n&&te&&(e=Or(e))&&e instanceof Fs&&(o[te]=(function(v){const $=new Fs;return xr(v,((Jn,Yt,Sr)=>{$[Yt]=ve(Sr)})),$.da=v.da,$})(e)),o}function Eh(e){return e[0]=hr(e[0]),e[1]=hr(e[1]),e}function hr(e){switch(typeof e){case"number":return Number.isFinite(e)?e:""+e;case"bigint":return ws(e)?Number(e):""+e;case"boolean":return e?1:0;case"object":if(Array.isArray(e)){var t=0|e[p];return e.length===0&&1&t?void 0:Ir(e,t,hr)}if(e!=null&&e[Et]===kt)return Ii(e);if(e instanceof Ee){if((t=e.g)==null)e="";else if(typeof t=="string")e=t;else{if(ci){for(var r="",s=0,n=t.length-10240;s<n;)r+=String.fromCharCode.apply(null,t.subarray(s,s+=10240));r+=String.fromCharCode.apply(null,s?t.subarray(s):t),t=btoa(r)}else{r===void 0&&(r=0),ai(),r=oi[r],s=Array(Math.floor(t.length/3)),n=r[64]||"";let u=0,h=0;for(;u<t.length-2;u+=3){var i=t[u],o=t[u+1],a=t[u+2],c=r[i>>2];i=r[(3&i)<<4|o>>4],o=r[(15&o)<<2|a>>6],a=r[63&a],s[h++]=c+i+o+a}switch(c=0,a=n,t.length-u){case 2:a=r[(15&(c=t[u+1]))<<2]||n;case 1:t=t[u],s[h]=r[t>>2]+r[(3&t)<<4|c>>4]+a+n}t=s.join("")}e=e.g=t}return e}return e instanceof $e?e=e.size!==0?e.V(Eh):void 0:void 0}return e}function Ii(e){return Ir(e=e.v,0|e[p],hr)}let kh,Sh;function rt(e,t){return Ri(e,t[0],t[1])}function Ri(e,t,r,s=0){if(e==null){var n=32;r?(e=[r],n|=128):e=[],t&&(n=-16760833&n|(1023&t)<<14)}else{if(!Array.isArray(e))throw Error("narr");if(n=0|e[p],si&&1&n)throw Error("rfarr");if(2048&n&&!(2&n)&&(function(){if(si)throw Error("carr");_t(Zc,5)})(),256&n)throw Error("farr");if(64&n)return(n|s)!==n&&j(e,n|s),e;if(r&&(n|=128,r!==e[0]))throw Error("mid");e:{n|=64;var i=(r=e).length;if(i){var o=i-1;const c=r[o];if(c!=null&&typeof c=="object"&&c.constructor===Object){if((o-=t=128&n?0:-1)>=1024)throw Error("pvtlmt");for(var a in c)(i=+a)<o&&(r[i+t]=c[a],delete c[a]);n=-16760833&n|(1023&o)<<14;break e}}if(t){if((a=Math.max(t,i-(128&n?0:-1)))>1024)throw Error("spvt");n=-16760833&n|(1023&a)<<14}}}return j(e,64|n|s),e}function Ch(e,t){if(typeof e!="object")return e;if(Array.isArray(e)){var r=0|e[p];return e.length===0&&1&r?void 0:Ni(e,r,t)}if(e!=null&&e[Et]===kt)return Ui(e);if(e instanceof $e){if(2&(t=e.J))return e;if(!e.size)return;if(r=tr(e.V()),e.K)for(e=0;e<r.length;e++){const s=r[e];let n=s[1];n=n==null||typeof n!="object"?void 0:n!=null&&n[Et]===kt?Ui(n):Array.isArray(n)?Ni(n,0|n[p],!!(32&t)):void 0,s[1]=n}return r}return e instanceof Ee?e:void 0}function Ni(e,t,r){return 2&t||(!r||4096&t||16&t?e=Mt(e,t,!1,r&&!(16&t)):(er(e,34),4&t&&Object.freeze(e))),e}function $s(e,t,r){return e=new e.constructor(t),r&&(e.h=et),e.m=et,e}function Ui(e){const t=e.v,r=0|t[p];return re(e,r)?e:xs(e,t,r)?$s(e,t):Mt(t,r)}function Mt(e,t,r,s){return s??(s=!!(34&t)),e=Ir(e,t,Ch,s),s=32,r&&(s|=2),j(e,t=16769217&t|s),e}function Os(e){const t=e.v,r=0|t[p];return re(e,r)?xs(e,t,r)?$s(e,t,!0):new e.constructor(Mt(t,r,!1)):e}function Lt(e){if(e.h!==et)return!1;var t=e.v;return er(t=Mt(t,0|t[p]),2048),e.v=t,e.h=void 0,e.m=void 0,!0}function Ft(e){if(!Lt(e)&&re(e,0|e.v[p]))throw Error()}function st(e,t){t===void 0&&(t=0|e[p]),32&t&&!(4096&t)&&j(e,4096|t)}function xs(e,t,r){return!!(2&r)||!(!(32&r)||4096&r)&&(j(t,2|r),e.h=et,!0)}const Th=se(0),Be={};function T(e,t,r,s,n){if((t=Oe(e.v,t,r,n))!==null||s&&e.m!==et)return t}function Oe(e,t,r,s){if(t===-1)return null;const n=t+(r?0:-1),i=e.length-1;let o,a;if(!(i<1+(r?0:-1))){if(n>=i)if(o=e[i],o!=null&&typeof o=="object"&&o.constructor===Object)r=o[t],a=!0;else{if(n!==i)return;r=o}else r=e[n];if(s&&r!=null){if((s=s(r))==null)return s;if(!Object.is(s,r))return a?o[t]=s:e[n]=s,s}return r}}function S(e,t,r,s){Ft(e),V(e=e.v,0|e[p],t,r,s)}function V(e,t,r,s,n){const i=r+(n?0:-1);var o=e.length-1;if(o>=1+(n?0:-1)&&i>=o){const a=e[o];if(a!=null&&typeof a=="object"&&a.constructor===Object)return a[r]=s,t}return i<=o?(e[i]=s,t):(s!==void 0&&(r>=(o=(t??(t=0|e[p]))>>14&1023||536870912)?s!=null&&(e[o+(n?0:-1)]={[r]:s}):e[i]=s),t)}function nt(){return eh===void 0?2:4}function it(e,t,r,s,n){let i=e.v,o=0|i[p];s=re(e,o)?1:s,n=!!n||s===3,s===2&&Lt(e)&&(i=e.v,o=0|i[p]);let a=(e=Is(i,t))===Ze?7:0|e[p],c=Rs(a,o);var u=!(4&c);if(u){4&c&&(e=ve(e),a=0,c=at(c,o),o=V(i,o,t,e));let h=0,l=0;for(;h<e.length;h++){const f=r(e[h]);f!=null&&(e[l++]=f)}l<h&&(e.length=l),r=-513&(4|c),c=r&=-1025,c&=-4097}return c!==a&&(j(e,c),2&c&&Object.freeze(e)),Bi(e,c,i,o,t,s,u,n)}function Bi(e,t,r,s,n,i,o,a){let c=t;return i===1||i===4&&(2&t||!(16&t)&&32&s)?ot(t)||((t|=!e.length||o&&!(4096&t)||32&s&&!(4096&t||16&t)?2:256)!==c&&j(e,t),Object.freeze(e)):(i===2&&ot(t)&&(e=ve(e),c=0,t=at(t,s),s=V(r,s,n,e)),ot(t)||(a||(t|=16),t!==c&&j(e,t))),2&t||!(4096&t||16&t)||st(r,s),e}function Is(e,t,r){return e=Oe(e,t,r),Array.isArray(e)?e:Ze}function Rs(e,t){return 2&t&&(e|=2),1|e}function ot(e){return!!(2&e)&&!!(4&e)||!!(256&e)}function Di(e){return _s(e,!0)}function ji(e){e=ve(e);for(let t=0;t<e.length;t++){const r=e[t]=ve(e[t]);Array.isArray(r[1])&&(r[1]=tr(r[1]))}return rr(e)}function De(e,t,r,s){Ft(e),V(e=e.v,0|e[p],t,(s==="0"?Number(r)===0:r===s)?void 0:r)}function $t(e,t,r){if(2&t)throw Error();const s=St(t);let n=Is(e,r,s),i=n===Ze?7:0|n[p],o=Rs(i,t);return(2&o||ot(o)||16&o)&&(o===i||ot(o)||j(n,o),n=ve(n),i=0,o=at(o,t),V(e,t,r,n,s)),o&=-13,o!==i&&j(n,o),n}function Ns(e,t){var r=qo;return Bs(Us(e=e.v),e,void 0,r)===t?t:-1}function Us(e){if(At)return e[Zt]??(e[Zt]=new Map);if(Zt in e)return e[Zt];const t=new Map;return Object.defineProperty(e,Zt,{value:t}),t}function Vi(e,t,r,s,n){const i=Us(e),o=Bs(i,e,t,r,n);return o!==s&&(o&&(t=V(e,t,o,void 0,n)),i.set(r,s)),t}function Bs(e,t,r,s,n){let i=e.get(s);if(i!=null)return i;i=0;for(let o=0;o<s.length;o++){const a=s[o];Oe(t,a,n)!=null&&(i!==0&&(r=V(t,r,i,void 0,n)),i=a)}return e.set(s,i),i}function Ds(e,t,r){let s=0|e[p];const n=St(s),i=Oe(e,r,n);let o;if(i!=null&&i[Et]===kt){if(!re(i))return Lt(i),i.v;o=i.v}else Array.isArray(i)&&(o=i);if(o){const a=0|o[p];2&a&&(o=Mt(o,a))}return o=rt(o,t),o!==i&&V(e,s,r,o,n),o}function Gi(e,t,r,s,n){let i=!1;if((s=Oe(e,s,n,(o=>{const a=Ps(o,r,!1,t);return i=a!==o&&a!=null,a})))!=null)return i&&!re(s)&&st(e,t),s}function E(e,t,r,s){let n=e.v,i=0|n[p];if((t=Gi(n,i,t,r,s))==null)return t;if(i=0|n[p],!re(e,i)){const o=Os(t);o!==t&&(Lt(e)&&(n=e.v,i=0|n[p]),i=V(n,i,r,t=o,s),st(n,i))}return t}function Hi(e,t,r,s,n,i,o,a){var c=re(e,r);i=c?1:i,o=!!o||i===3,c=a&&!c,(i===2||c)&&Lt(e)&&(r=0|(t=e.v)[p]);var u=(e=Is(t,n))===Ze?7:0|e[p],h=Rs(u,r);if(a=!(4&h)){var l=e,f=r;const v=!!(2&h);v&&(f|=2);let $=!v,Jn=!0,Yt=0,Sr=0;for(;Yt<l.length;Yt++){const Zn=Ps(l[Yt],s,!1,f);if(Zn instanceof s){if(!v){const Bc=re(Zn);$&&($=!Bc),Jn&&(Jn=Bc)}l[Sr++]=Zn}}Sr<Yt&&(l.length=Sr),h|=4,h=Jn?-4097&h:4096|h,h=$?8|h:-9&h}if(h!==u&&(j(e,h),2&h&&Object.freeze(e)),c&&!(8&h||!e.length&&(i===1||i===4&&(2&h||!(16&h)&&32&r)))){for(ot(h)&&(e=ve(e),h=at(h,r),r=V(t,r,n,e)),s=e,c=h,u=0;u<s.length;u++)(l=s[u])!==(h=Os(l))&&(s[u]=h);c|=8,j(e,h=c=s.length?4096|c:-4097&c)}return Bi(e,h,t,r,n,i,a,o)}function xe(e,t,r){const s=e.v;return Hi(e,s,0|s[p],t,r,nt(),!1,!0)}function zi(e){return e==null&&(e=void 0),e}function b(e,t,r,s,n){return S(e,r,s=zi(s),n),s&&!re(s)&&st(e.v),e}function ur(e,t,r,s){e:{var n=s=zi(s);Ft(e);const i=e.v;let o=0|i[p];if(n==null){const a=Us(i);if(Bs(a,i,o,r)!==t)break e;a.set(r,0)}else o=Vi(i,o,r,t);V(i,o,t,n)}s&&!re(s)&&st(e.v)}function at(e,t){return-273&(2&t?2|e:-3&e)}function js(e,t,r,s){var n=s;Ft(e),e=Hi(e,s=e.v,0|s[p],r,t,2,!0),n=n??new r,e.push(n),t=r=e===Ze?7:0|e[p],(n=re(n))?(r&=-9,e.length===1&&(r&=-4097)):r|=4096,r!==t&&j(e,r),n||st(s)}function pe(e,t,r){return Pt(T(e,t,void 0,r))}function Wi(e){return(ms?T(e,2,void 0,void 0,$r):$r(T(e,2)))??Th}function I(e,t){return T(e,t,void 0,void 0,Se)??0}function Ie(e,t,r){if(r!=null){if(typeof r!="number"||!Fr(r))throw bs("int32");r|=0}S(e,t,r)}function y(e,t,r){S(e,t,ir(r))}function ne(e,t,r){De(e,t,cr(r),"")}function Rr(e,t,r){{Ft(e);const o=e.v;let a=0|o[p];if(r==null)V(o,a,t);else{var s=e=r===Ze?7:0|r[p],n=ot(e),i=n||Object.isFrozen(r);for(n||(e=0),i||(r=ve(r),s=0,e=at(e,a),i=!1),e|=5,e|=(4&e?512&e?512:1024&e?1024:0:void 0)??(ms?1024:0),n=0;n<r.length;n++){const c=r[n],u=$i(c);Object.is(c,u)||(i&&(r=ve(r),s=0,e=at(e,a),i=!1),r[n]=u)}e!==s&&(i&&(r=ve(r),e=at(e,a)),j(r,e)),V(o,a,t,r)}}}function Nr(e,t,r){Ft(e),it(e,t,X,2,!0).push($i(r))}var Ot=class{constructor(e,t,r){if(this.buffer=e,r&&!t)throw Error();this.g=t}};function Vs(e,t){if(typeof e=="string")return new Ot(ui(e),t);if(Array.isArray(e))return new Ot(new Uint8Array(e),t);if(e.constructor===Uint8Array)return new Ot(e,!1);if(e.constructor===ArrayBuffer)return e=new Uint8Array(e),new Ot(e,!1);if(e.constructor===Ee)return t=ys(e)||new Uint8Array(0),new Ot(t,!0,e);if(e instanceof Uint8Array)return e=e.constructor===Uint8Array?e:new Uint8Array(e.buffer,e.byteOffset,e.byteLength),new Ot(e,!1);throw Error()}function xt(e,t){let r,s=0,n=0,i=0;const o=e.h;let a=e.g;do r=o[a++],s|=(127&r)<<i,i+=7;while(i<32&&128&r);if(i>32)for(n|=(127&r)>>4,i=3;i<32&&128&r;i+=7)r=o[a++],n|=(127&r)<<i;if(ct(e,a),!(128&r))return t(s>>>0,n>>>0);throw Error()}function Gs(e){let t=0,r=e.g;const s=r+10,n=e.h;for(;r<s;){const i=n[r++];if(t|=i,(128&i)==0)return ct(e,r),!!(127&t)}throw Error()}function je(e){const t=e.h;let r=e.g,s=t[r++],n=127&s;if(128&s&&(s=t[r++],n|=(127&s)<<7,128&s&&(s=t[r++],n|=(127&s)<<14,128&s&&(s=t[r++],n|=(127&s)<<21,128&s&&(s=t[r++],n|=s<<28,128&s&&128&t[r++]&&128&t[r++]&&128&t[r++]&&128&t[r++]&&128&t[r++])))))throw Error();return ct(e,r),n}function Re(e){return je(e)>>>0}function Ur(e){var t=e.h;const r=e.g;var s=t[r],n=t[r+1];const i=t[r+2];return t=t[r+3],ct(e,e.g+4),e=2*((n=(s<<0|n<<8|i<<16|t<<24)>>>0)>>31)+1,s=n>>>23&255,n&=8388607,s==255?n?NaN:e*(1/0):s==0?1401298464324817e-60*e*n:e*Math.pow(2,s-150)*(n+8388608)}function Ph(e){return je(e)}function ct(e,t){if(e.g=t,t>e.l)throw Error()}function Ki(e,t){if(t<0)throw Error();const r=e.g;if((t=r+t)>e.l)throw Error();return e.g=t,r}function qi(e,t){if(t==0)return Je();var r=Ki(e,t);return e.Y&&e.j?r=e.h.subarray(r,r+t):(e=e.h,r=r===(t=r+t)?new Uint8Array(0):ah?e.slice(r,t):new Uint8Array(e.subarray(r,t))),r.length==0?Je():new Ee(r,vt)}var Xi=[];function Yi(e,t,r,s){if(jr.length){const n=jr.pop();return n.o(s),n.g.init(e,t,r,s),n}return new Mh(e,t,r,s)}function Qi(e){e.g.clear(),e.l=-1,e.h=-1,jr.length<100&&jr.push(e)}function Ji(e){var t=e.g;if(t.g==t.l)return!1;e.m=e.g.g;var r=Re(e.g);if(t=r>>>3,!((r&=7)>=0&&r<=5)||t<1)throw Error();return e.l=t,e.h=r,!0}function Br(e){switch(e.h){case 0:e.h!=0?Br(e):Gs(e.g);break;case 1:ct(e=e.g,e.g+8);break;case 2:if(e.h!=2)Br(e);else{var t=Re(e.g);ct(e=e.g,e.g+t)}break;case 5:ct(e=e.g,e.g+4);break;case 3:for(t=e.l;;){if(!Ji(e))throw Error();if(e.h==4){if(e.l!=t)throw Error();break}Br(e)}break;default:throw Error()}}function lr(e,t,r){const s=e.g.l;var n=Re(e.g);let i=(n=e.g.g+n)-s;if(i<=0&&(e.g.l=n,r(t,e,void 0,void 0,void 0),i=n-e.g.g),i)throw Error();return e.g.g=n,e.g.l=s,t}function Hs(e){var t=Re(e.g),r=Ki(e=e.g,t);if(e=e.h,Dc){var s,n=e;(s=ds)||(s=ds=new TextDecoder("utf-8",{fatal:!0})),t=r+t,n=r===0&&t===n.length?n:n.subarray(r,t);try{var i=s.decode(n)}catch(a){if(Cr===void 0){try{s.decode(new Uint8Array([128]))}catch{}try{s.decode(new Uint8Array([97])),Cr=!0}catch{Cr=!1}}throw!Cr&&(ds=void 0),a}}else{t=(i=r)+t,r=[];let a,c=null;for(;i<t;){var o=e[i++];o<128?r.push(o):o<224?i>=t?Qe():(a=e[i++],o<194||(192&a)!=128?(i--,Qe()):r.push((31&o)<<6|63&a)):o<240?i>=t-1?Qe():(a=e[i++],(192&a)!=128||o===224&&a<160||o===237&&a>=160||(192&(s=e[i++]))!=128?(i--,Qe()):r.push((15&o)<<12|(63&a)<<6|63&s)):o<=244?i>=t-2?Qe():(a=e[i++],(192&a)!=128||a-144+(o<<28)>>30!=0||(192&(s=e[i++]))!=128||(192&(n=e[i++]))!=128?(i--,Qe()):(o=(7&o)<<18|(63&a)<<12|(63&s)<<6|63&n,o-=65536,r.push(55296+(o>>10&1023),56320+(1023&o)))):Qe(),r.length>=8192&&(c=ei(c,r),r.length=0)}i=ei(c,r)}return i}function Zi(e){const t=Re(e.g);return qi(e.g,t)}function Dr(e,t,r){var s=Re(e.g);for(s=e.g.g+s;e.g.g<s;)r.push(t(e.g))}var Mh=class{constructor(e,t,r,s){if(Xi.length){const n=Xi.pop();n.init(e,t,r,s),e=n}else e=new class{constructor(n,i,o,a){this.h=null,this.j=!1,this.g=this.l=this.m=0,this.init(n,i,o,a)}init(n,i,o,{Y:a=!1,ea:c=!1}={}){this.Y=a,this.ea=c,n&&(n=Vs(n,this.ea),this.h=n.buffer,this.j=n.g,this.m=i||0,this.l=o!==void 0?this.m+o:this.h.length,this.g=this.m)}clear(){this.h=null,this.j=!1,this.g=this.l=this.m=0,this.Y=!1}}(e,t,r,s);this.g=e,this.m=this.g.g,this.h=this.l=-1,this.o(s)}o({ha:e=!1}={}){this.ha=e}},jr=[];function eo(e){return e?/^\d+$/.test(e)?(Lr(e),new zs(L,U)):null:Lh||(Lh=new zs(0,0))}var zs=class{constructor(e,t){this.h=e>>>0,this.g=t>>>0}};let Lh;function to(e){return e?/^-?\d+$/.test(e)?(Lr(e),new Ws(L,U)):null:Fh||(Fh=new Ws(0,0))}var Ws=class{constructor(e,t){this.h=e>>>0,this.g=t>>>0}};let Fh;function It(e,t,r){for(;r>0||t>127;)e.g.push(127&t|128),t=(t>>>7|r<<25)>>>0,r>>>=7;e.g.push(t)}function Rt(e,t){for(;t>127;)e.g.push(127&t|128),t>>>=7;e.g.push(t)}function Vr(e,t){if(t>=0)Rt(e,t);else{for(let r=0;r<9;r++)e.g.push(127&t|128),t>>=7;e.g.push(1)}}function Ks(e){var t=L;e.g.push(t>>>0&255),e.g.push(t>>>8&255),e.g.push(t>>>16&255),e.g.push(t>>>24&255)}function Nt(e,t){t.length!==0&&(e.l.push(t),e.h+=t.length)}function me(e,t,r){Rt(e.g,8*t+r)}function qs(e,t){return me(e,t,2),t=e.g.end(),Nt(e,t),t.push(e.h),t}function Xs(e,t){var r=t.pop();for(r=e.h+e.g.length()-r;r>127;)t.push(127&r|128),r>>>=7,e.h++;t.push(r),e.h++}function Gr(e,t,r){me(e,t,2),Rt(e.g,r.length),Nt(e,e.g.end()),Nt(e,r)}function Hr(e,t,r,s){r!=null&&(t=qs(e,t),s(r,e),Xs(e,t))}function Ce(){const e=class{constructor(){throw Error()}};return Object.setPrototypeOf(e,e.prototype),e}var Ys=Ce(),ro=Ce(),Qs=Ce(),Js=Ce(),so=Ce(),no=Ce(),$h=Ce(),zr=Ce(),io=Ce(),oo=Ce();function Te(e,t,r){var s=e.v;te&&te in s&&(s=s[te])&&delete s[t.g],t.h?t.j(e,t.h,t.g,r,t.l):t.j(e,t.g,r,t.l)}var m=class{constructor(e,t){this.v=Ri(e,t,void 0,2048)}toJSON(){return Ii(this)}j(){var n;var e=pu,t=this.v,r=e.g,s=te;if(At&&s&&((n=t[s])==null?void 0:n[r])!=null&&_t(Qc,3),t=e.g,pi&&te&&pi===void 0&&(s=(r=this.v)[te])&&(s=s.da))try{s(r,t,wh)}catch(i){ri(i)}return e.h?e.m(this,e.h,e.g,e.l):e.m(this,e.g,e.defaultValue,e.l)}clone(){const e=this.v,t=0|e[p];return xs(this,e,t)?$s(this,e,!0):new this.constructor(Mt(e,t,!1))}};m.prototype[Et]=kt,m.prototype.toString=function(){return this.v.toString()};var Ut=class{constructor(e,t,r){this.g=e,this.h=t,e=Ys,this.l=!!e&&r===e||!1}};function Wr(e,t){return new Ut(e,t,Ys)}function ao(e,t,r,s,n){Hr(e,r,po(t,s),n)}const Oh=Wr((function(e,t,r,s,n){return e.h===2&&(lr(e,Ds(t,s,r),n),!0)}),ao),xh=Wr((function(e,t,r,s,n){return e.h===2&&(lr(e,Ds(t,s,r),n),!0)}),ao);var Kr=Symbol(),qr=Symbol(),Zs=Symbol(),co=Symbol(),ho=Symbol();let uo,lo;function ht(e,t,r,s){var n=s[e];if(n)return n;(n={}).qa=s,n.T=(function(l){switch(typeof l){case"boolean":return kh||(kh=[0,void 0,!0]);case"number":return l>0?void 0:l===0?Sh||(Sh=[0,void 0]):[-l,void 0];case"string":return[0,l];case"object":return l}})(s[0]);var i=s[1];let o=1;i&&i.constructor===Object&&(n.ba=i,typeof(i=s[++o])=="function"&&(n.ma=!0,uo??(uo=i),lo??(lo=s[o+1]),i=s[o+=2]));const a={};for(;i&&Array.isArray(i)&&i.length&&typeof i[0]=="number"&&i[0]>0;){for(var c=0;c<i.length;c++)a[i[c]]=i;i=s[++o]}for(c=1;i!==void 0;){let l;typeof i=="number"&&(c+=i,i=s[++o]);var u=void 0;if(i instanceof Ut?l=i:(l=Oh,o--),l==null?void 0:l.l){i=s[++o],u=s;var h=o;typeof i=="function"&&(i=i(),u[h]=i),u=i}for(h=c+1,typeof(i=s[++o])=="number"&&i<0&&(h-=i,i=s[++o]);c<h;c++){const f=a[c];u?r(n,c,l,u,f):t(n,c,l,f)}}return s[e]=n}function fo(e){return Array.isArray(e)?e[0]instanceof Ut?e:[xh,e]:[e,void 0]}function po(e,t){return e instanceof m?e.v:Array.isArray(e)?rt(e,t):void 0}function en(e,t,r,s){const n=r.g;e[t]=s?(i,o,a)=>n(i,o,a,s):n}function tn(e,t,r,s,n){const i=r.g;let o,a;e[t]=(c,u,h)=>i(c,u,h,a||(a=ht(qr,en,tn,s).T),o||(o=rn(s)),n)}function rn(e){let t=e[Zs];if(t!=null)return t;const r=ht(qr,en,tn,e);return t=r.ma?(s,n)=>uo(s,n,r):(s,n)=>{for(;Ji(n)&&n.h!=4;){var i=n.l,o=r[i];if(o==null){var a=r.ba;a&&(a=a[i])&&(a=Rh(a))!=null&&(o=r[i]=a)}if(o==null||!o(n,s,i)){if(o=(a=n).m,Br(a),a.ha)var c=void 0;else c=a.g.g-o,a.g.g=o,c=qi(a.g,c);o=void 0,a=s,c&&((o=a[te]??(a[te]=new Fs))[i]??(o[i]=[])).push(c)}}return(s=Or(s))&&(s.da=r.qa[ho]),!0},e[Zs]=t,e[ho]=Ih.bind(e),t}function Ih(e,t,r,s){var n=this[qr];const i=this[Zs],o=rt(void 0,n.T),a=Or(e);if(a){var c=!1,u=n.ba;if(u){if(n=(h,l,f)=>{if(f.length!==0)if(u[l])for(const v of f){h=Yi(v);try{c=!0,i(o,h)}finally{Qi(h)}}else s==null||s(e,l,f)},t==null)xr(a,n);else if(a!=null){const h=a[t];h&&n(a,t,h)}if(c){let h=0|e[p];if(2&h&&2048&h&&!(r!=null&&r.Ka))throw Error();const l=St(h),f=(v,$)=>{if(Oe(e,v,l)!=null){if((r==null?void 0:r.Qa)===1)return;throw Error()}$!=null&&(h=V(e,h,v,$,l)),delete a[v]};t==null?vi(o,0|o[p],((v,$)=>{f(v,$)})):f(t,Oe(o,t,l))}}}}function Rh(e){const t=(e=fo(e))[0].g;if(e=e[1]){const r=rn(e),s=ht(qr,en,tn,e).T;return(n,i,o)=>t(n,i,o,s,r)}return t}function Xr(e,t,r){e[t]=r.h}function Yr(e,t,r,s){let n,i;const o=r.h;e[t]=(a,c,u)=>o(a,c,u,i||(i=ht(Kr,Xr,Yr,s).T),n||(n=mo(s)))}function mo(e){let t=e[co];if(!t){const r=ht(Kr,Xr,Yr,e);t=(s,n)=>go(s,n,r),e[co]=t}return t}function go(e,t,r){vi(e,0|e[p],((s,n)=>{if(n!=null){var i=(function(o,a){var c=o[a];if(c)return c;if((c=o.ba)&&(c=c[a])){var u=(c=fo(c))[0].h;if(c=c[1]){const h=mo(c),l=ht(Kr,Xr,Yr,c).T;c=o.ma?lo(l,h):(f,v,$)=>u(f,v,$,l,h)}else c=u;return o[a]=c}})(r,s);i?i(t,n,s):s<500||_t(vs,3)}})),(e=Or(e))&&xr(e,((s,n,i)=>{for(Nt(t,t.g.end()),s=0;s<i.length;s++)Nt(t,ys(i[s])||new Uint8Array(0))}))}const Nh=se(0);function Bt(e,t){if(Array.isArray(t)){var r=0|t[p];if(4&r)return t;for(var s=0,n=0;s<t.length;s++){const i=e(t[s]);i!=null&&(t[n++]=i)}return n<s&&(t.length=n),(e=-1537&(5|r))!==r&&j(t,e),2&e&&Object.freeze(t),t}}function J(e,t,r){return new Ut(e,t,r)}function Dt(e,t,r){return new Ut(e,t,r)}function H(e,t,r){V(e,0|e[p],t,r,St(0|e[p]))}var Uh=Wr((function(e,t,r,s,n){if(e.h!==2)return!1;if(e=ve(e=lr(e,rt([void 0,void 0],s),n)),n=St(s=0|t[p]),2&s)throw Error();let i=Oe(t,r,n);if(i instanceof $e)(2&i.J)!=0?(i=i.V(),i.push(e),V(t,s,r,i,n)):i.Ma(e);else if(Array.isArray(i)){var o=0|i[p];8192&o||j(i,o|=8192),2&o&&(i=ji(i),V(t,s,r,i,n)),i.push(e)}else V(t,s,r,rr([e]),n);return!0}),(function(e,t,r,s,n){if(t instanceof $e)t.forEach(((i,o)=>{Hr(e,r,rt([o,i],s),n)}));else if(Array.isArray(t)){for(let i=0;i<t.length;i++){const o=t[i];Array.isArray(o)&&Hr(e,r,rt(o,s),n)}rr(t)}}));function yo(e,t,r){(t=Se(t))!=null&&(me(e,r,5),e=e.g,As(t),Ks(e))}function bo(e,t,r){if(t=(function(s){if(s==null)return s;const n=typeof s;if(n==="bigint")return String(nr(64,s));if(ar(s)){if(n==="string")return Mi(s);if(n==="number")return Ts(s)}})(t),t!=null&&(typeof t=="string"&&to(t),t!=null))switch(me(e,r,0),typeof t){case"number":e=e.g,Ct(t),It(e,L,U);break;case"bigint":r=BigInt.asUintN(64,t),r=new Ws(Number(r&BigInt(4294967295)),Number(r>>BigInt(32))),It(e.g,r.h,r.g);break;default:r=to(t),It(e.g,r.h,r.g)}}function vo(e,t,r){(t=Pt(t))!=null&&t!=null&&(me(e,r,0),Vr(e.g,t))}function _o(e,t,r){(t=Ci(t))!=null&&(me(e,r,0),e.g.g.push(t?1:0))}function wo(e,t,r){(t=X(t))!=null&&Gr(e,r,ti(t))}function Ao(e,t,r,s,n){Hr(e,r,po(t,s),n)}function Eo(e,t,r){(t=t==null||typeof t=="string"||t instanceof Ee?t:void 0)!=null&&Gr(e,r,Vs(t,!0).buffer)}function ko(e,t,r){return(e.h===5||e.h===2)&&(t=$t(t,0|t[p],r),e.h==2?Dr(e,Ur,t):t.push(Ur(e.g)),!0)}var B=J((function(e,t,r){return e.h===5&&(H(t,r,Ur(e.g)),!0)}),yo,zr),Bh=Dt(ko,(function(e,t,r){if((t=Bt(Se,t))!=null)for(let o=0;o<t.length;o++){var s=e,n=r,i=t[o];i!=null&&(me(s,n,5),s=s.g,As(i),Ks(s))}}),zr),sn=Dt(ko,(function(e,t,r){if((t=Bt(Se,t))!=null&&t.length){me(e,r,2),Rt(e.g,4*t.length);for(let s=0;s<t.length;s++)r=e.g,As(t[s]),Ks(r)}}),zr),Dh=J((function(e,t,r){return e.h===5&&(H(t,r,(e=Ur(e.g))===0?void 0:e),!0)}),yo,zr),Ve=J((function(e,t,r){return ps?(e.h!==0?e=!1:(H(t,r,xt(e.g,ki)),e=!0),e):e.h===0&&(H(t,r,xt(e.g,ks)),!0)}),bo,no),nn=J((function(e,t,r){return ps?(e.h!==0?t=!1:(H(t,r,(e=xt(e.g,ki))===Nh?void 0:e),t=!0),t):e.h===0&&(H(t,r,(e=xt(e.g,ks))===0?void 0:e),!0)}),bo,no),jh=J((function(e,t,r){return ps?(e.h!==0?e=!1:(H(t,r,xt(e.g,hh)),e=!0),e):e.h===0&&(H(t,r,xt(e.g,Es)),!0)}),(function(e,t,r){if(t=(function(s){if(s==null)return s;var n=typeof s;if(n==="bigint")return String(uh(64,s));if(ar(s)){if(n==="string")return n=Tt(Number(s)),tt(n)&&n>=0?s=String(n):((n=s.indexOf("."))!==-1&&(s=s.substring(0,n)),(n=s[0]!=="-"&&((n=s.length)<20||n===20&&s<="18446744073709551615"))||(Lr(s),s=sr(L,U))),s;if(n==="number")return(s=Tt(s))>=0&&tt(s)||(Ct(s),s=Es(L,U)),s}})(t),t!=null&&(typeof t=="string"&&eo(t),t!=null))switch(me(e,r,0),typeof t){case"number":e=e.g,Ct(t),It(e,L,U);break;case"bigint":r=BigInt.asUintN(64,t),r=new zs(Number(r&BigInt(4294967295)),Number(r>>BigInt(32))),It(e.g,r.h,r.g);break;default:r=eo(t),It(e.g,r.h,r.g)}}),$h),z=J((function(e,t,r){return e.h===0&&(H(t,r,je(e.g)),!0)}),vo,Js),dr=Dt((function(e,t,r){return(e.h===0||e.h===2)&&(t=$t(t,0|t[p],r),e.h==2?Dr(e,je,t):t.push(je(e.g)),!0)}),(function(e,t,r){if((t=Bt(Pt,t))!=null&&t.length){r=qs(e,r);for(let s=0;s<t.length;s++)Vr(e.g,t[s]);Xs(e,r)}}),Js),jt=J((function(e,t,r){return e.h===0&&(H(t,r,(e=je(e.g))===0?void 0:e),!0)}),vo,Js),R=J((function(e,t,r){return e.h===0&&(H(t,r,Gs(e.g)),!0)}),_o,ro),ut=J((function(e,t,r){return e.h===0&&(H(t,r,(e=Gs(e.g))===!1?void 0:e),!0)}),_o,ro),Y=Dt((function(e,t,r){return e.h===2&&(e=Hs(e),$t(t,0|t[p],r).push(e),!0)}),(function(e,t,r){if((t=Bt(X,t))!=null)for(let o=0;o<t.length;o++){var s=e,n=r,i=t[o];i!=null&&Gr(s,n,ti(i))}}),Qs),Ge=J((function(e,t,r){return e.h===2&&(H(t,r,(e=Hs(e))===""?void 0:e),!0)}),wo,Qs),C=J((function(e,t,r){return e.h===2&&(H(t,r,Hs(e)),!0)}),wo,Qs),W=(function(e,t,r=Ys){return new Ut(e,t,r)})((function(e,t,r,s,n){return e.h===2&&(s=rt(void 0,s),$t(t,0|t[p],r).push(s),lr(e,s,n),!0)}),(function(e,t,r,s,n){if(Array.isArray(t)){for(let i=0;i<t.length;i++)Ao(e,t[i],r,s,n);1&(e=0|t[p])||j(t,1|e)}})),N=Wr((function(e,t,r,s,n,i){if(e.h!==2)return!1;let o=0|t[p];return Vi(t,o,i,r,St(o)),lr(e,t=Ds(t,s,r),n),!0}),Ao),So=J((function(e,t,r){return e.h===2&&(H(t,r,Zi(e)),!0)}),Eo,io),Vh=Dt((function(e,t,r){return(e.h===0||e.h===2)&&(t=$t(t,0|t[p],r),e.h==2?Dr(e,Re,t):t.push(Re(e.g)),!0)}),(function(e,t,r){if((t=Bt(Ti,t))!=null)for(let o=0;o<t.length;o++){var s=e,n=r,i=t[o];i!=null&&(me(s,n,0),Rt(s.g,i))}}),so),Gh=J((function(e,t,r){return e.h===0&&(H(t,r,(e=Re(e.g))===0?void 0:e),!0)}),(function(e,t,r){(t=Ti(t))!=null&&t!=null&&(me(e,r,0),Rt(e.g,t))}),so),ie=J((function(e,t,r){return e.h===0&&(H(t,r,je(e.g)),!0)}),(function(e,t,r){(t=Pt(t))!=null&&(t=parseInt(t,10),me(e,r,0),Vr(e.g,t))}),oo);class Hh{constructor(t,r){var s=oe;this.g=t,this.h=r,this.m=E,this.j=b,this.defaultValue=void 0,this.l=s.Oa!=null?_i:void 0}register(){Tr(this)}}function Pe(e,t){return new Hh(e,t)}function He(e,t){return(r,s)=>{{const i={ea:!0};s&&Object.assign(i,s),r=Yi(r,void 0,void 0,i);try{const o=new e,a=o.v;rn(t)(a,r);var n=o}finally{Qi(r)}}return n}}function Qr(e){return function(){const t=new class{constructor(){this.l=[],this.h=0,this.g=new class{constructor(){this.g=[]}length(){return this.g.length}end(){const o=this.g;return this.g=[],o}}}};go(this.v,t,ht(Kr,Xr,Yr,e)),Nt(t,t.g.end());const r=new Uint8Array(t.h),s=t.l,n=s.length;let i=0;for(let o=0;o<n;o++){const a=s[o];r.set(a,i),i+=a.length}return t.l=[r],r}}var Co=class extends m{constructor(e){super(e)}},To=[0,Ge,J((function(e,t,r){return e.h===2&&(H(t,r,(e=Zi(e))===Je()?void 0:e),!0)}),(function(e,t,r){if(t!=null){if(t instanceof m){const s=t.Ra;return void(s?(t=s(t),t!=null&&Gr(e,r,Vs(t,!0).buffer)):_t(vs,3))}if(Array.isArray(t))return void _t(vs,3)}Eo(e,t,r)}),io)];let on,Po=globalThis.trustedTypes;function Mo(e){var t;return on===void 0&&(on=(function(){let r=null;if(!Po)return r;try{const s=n=>n;r=Po.createPolicy("goog#html",{createHTML:s,createScript:s,createScriptURL:s})}catch{}return r})()),e=(t=on)?t.createScriptURL(e):e,new class{constructor(r){this.g=r}toString(){return this.g+""}}(e)}function zh(e,...t){if(t.length===0)return Mo(e[0]);let r=e[0];for(let s=0;s<t.length;s++)r+=encodeURIComponent(t[s])+e[s+1];return Mo(r)}var Lo=[0,z,ie,R,-1,dr,ie,-1,R],Wh=class extends m{constructor(e){super(e)}},Fo=[0,R,C,R,ie,-1,Dt((function(e,t,r){return(e.h===0||e.h===2)&&(t=$t(t,0|t[p],r),e.h==2?Dr(e,Ph,t):t.push(je(e.g)),!0)}),(function(e,t,r){if((t=Bt(Pt,t))!=null&&t.length){r=qs(e,r);for(let s=0;s<t.length;s++)Vr(e.g,t[s]);Xs(e,r)}}),oo),C,-1,[0,R,-1],ie,R,-1],$o=[0,3,R,-1,2,[0,z],[0,ie,R],[0,C,-1],[0]],Oo=[0,C,-2],xo=class extends m{constructor(e){super(e)}},Io=[0],Ro=[0,z,R,1,R,-4],oe=class extends m{constructor(e){super(e,2)}},G={};G[336783863]=[0,C,R,-1,z,[0,[1,2,3,4,5,6,7,8,9],N,Io,N,Fo,N,Oo,N,Ro,N,Lo,N,[0,C,-2],N,[0,C,ie],N,$o,N,[0,ie,-1,R]],[0,C],R,[0,[1,3],[2,4],N,[0,dr],-1,N,[0,Y],-1,W,[0,C,-1]],C];var No=[0,nn,-1,ut,-3,nn,dr,Ge,jt,nn,-1,ut,jt,ut,-2,Ge];function P(e,t){Nr(e,3,t)}function _(e,t){Nr(e,4,t)}var Z=class extends m{constructor(e){super(e,500)}o(e){return b(this,0,7,e)}},fr=[-1,{}],Uo=[0,C,1,fr],Bo=[0,C,Y,fr];function ge(e,t){js(e,1,Z,t)}function F(e,t){Nr(e,10,t)}function k(e,t){Nr(e,15,t)}var ae=class extends m{constructor(e){super(e,500)}o(e){return b(this,0,1001,e)}},Do=[-500,W,[-500,Ge,-1,Y,-3,[-2,G,R],W,To,jt,-1,Uo,Bo,W,[0,Ge,ut],Ge,No,jt,Y,987,Y],4,W,[-500,C,-1,[-1,{}],998,C],W,[-500,C,Y,-1,[-2,{},R],997,Y,-1],jt,W,[-500,C,Y,fr,998,Y],Y,jt,Uo,Bo,W,[0,Ge,-1,fr],Y,-2,No,Ge,-1,ut,[0,ut,Gh],978,fr,W,To];ae.prototype.g=Qr(Do);var Kh=He(ae,Do),qh=class extends m{constructor(e){super(e)}},jo=class extends m{constructor(e){super(e)}g(){return xe(this,qh,1)}},Vo=[0,W,[0,z,B,C,-1]],Jr=He(jo,Vo),Xh=class extends m{constructor(e){super(e)}},Yh=class extends m{constructor(e){super(e)}},an=class extends m{constructor(e){super(e)}l(){return E(this,Xh,2)}g(){return xe(this,Yh,5)}},Go=He(class extends m{constructor(e){super(e)}},[0,Y,dr,sn,[0,ie,[0,z,-3],[0,B,-3],[0,z,-1,[0,W,[0,z,-2]]],W,[0,B,-1,C,B]],C,-1,Ve,W,[0,z,B],Y,Ve]),Ho=class extends m{constructor(e){super(e)}},Vt=He(class extends m{constructor(e){super(e)}},[0,W,[0,B,-4]]),zo=class extends m{constructor(e){super(e)}},pr=He(class extends m{constructor(e){super(e)}},[0,W,[0,B,-4]]),Qh=class extends m{constructor(e){super(e)}},Jh=[0,z,-1,sn,ie],Wo=class extends m{constructor(e){super(e)}};Wo.prototype.g=Qr([0,B,-4,Ve]);var Zh=class extends m{constructor(e){super(e)}},eu=He(class extends m{constructor(e){super(e)}},[0,W,[0,1,z,C,Vo],Ve]),Ko=class extends m{constructor(e){super(e)}},tu=class extends m{constructor(e){super(e)}na(){const e=T(this,1,void 0,void 0,Di);return e??Je()}},ru=class extends m{constructor(e){super(e)}},qo=[1,2],su=He(class extends m{constructor(e){super(e)}},[0,W,[0,qo,N,[0,sn],N,[0,So],z,C],Ve]),cn=class extends m{constructor(e){super(e)}},Xo=[0,C,z,B,Y,-1],Yo=class extends m{constructor(e){super(e)}},nu=[0,R,-1],Qo=class extends m{constructor(e){super(e)}},Zr=[1,2,3,4,5,6],es=class extends m{constructor(e){super(e)}g(){return T(this,1,void 0,void 0,Di)!=null}l(){return X(T(this,2))!=null}},O=class extends m{constructor(e){super(e)}g(){return Ci(T(this,2))??!1}},Jo=[0,So,C,[0,z,Ve,-1],[0,jh,Ve]],D=[0,Jo,R,[0,Zr,N,Ro,N,Fo,N,Lo,N,Io,N,Oo,N,$o],ie],ts=class extends m{constructor(e){super(e)}},hn=[0,D,B,-1,z],iu=Pe(502141897,ts);G[502141897]=hn;var ou=He(class extends m{constructor(e){super(e)}},[0,[0,ie,-1,Bh,Vh],Jh]),Zo=class extends m{constructor(e){super(e)}},ea=class extends m{constructor(e){super(e)}},un=[0,D,B,[0,D],R],au=Pe(508968150,ea);G[508968150]=[0,D,hn,un,B,[0,[0,Jo]]],G[508968149]=un;var Gt=class extends m{constructor(e){super(e)}l(){return E(this,cn,2)}g(){S(this,2)}},ta=[0,D,Xo];G[478825465]=ta;var cu=class extends m{constructor(e){super(e)}},ra=class extends m{constructor(e){super(e)}},ln=class extends m{constructor(e){super(e)}},dn=class extends m{constructor(e){super(e)}},sa=class extends m{constructor(e){super(e)}},na=[0,D,[0,D],ta,-1],ia=[0,D,B,z],fn=[0,D,B],oa=[0,D,ia,fn,B],hu=Pe(479097054,sa);G[479097054]=[0,D,oa,na],G[463370452]=na,G[464864288]=ia;var uu=Pe(462713202,dn);G[462713202]=oa,G[474472470]=fn;var lu=class extends m{constructor(e){super(e)}},aa=class extends m{constructor(e){super(e)}},ca=class extends m{constructor(e){super(e)}},ha=class extends m{constructor(e){super(e)}},pn=[0,D,B,-1,z],mn=[0,D,B,R];ha.prototype.g=Qr([0,D,fn,[0,D],hn,un,pn,mn]);var ua=class extends m{constructor(e){super(e)}},du=Pe(456383383,ua);G[456383383]=[0,D,Xo];var la=class extends m{constructor(e){super(e)}},fu=Pe(476348187,la);G[476348187]=[0,D,nu];var da=class extends m{constructor(e){super(e)}},fa=class extends m{constructor(e){super(e)}},pa=[0,ie,-1],pu=Pe(458105876,class extends m{constructor(e){super(e)}g(){let e;var t=this.v;const r=0|t[p];return e=re(this,r),t=(function(s,n,i,o){var a=fa;!o&&Lt(s)&&(i=0|(n=s.v)[p]);var c=Oe(n,2);if(s=!1,c==null){if(o)return xi();c=[]}else if(c.constructor===$e){if(!(2&c.J)||o)return c;c=c.V()}else Array.isArray(c)?s=!!(2&(0|c[p])):c=[];if(o){if(!c.length)return xi();s||(s=!0,tr(c))}else s&&(s=!1,rr(c),c=ji(c));return!s&&32&i&&er(c,32),i=V(n,i,2,o=new $e(c,a,ph,void 0)),s||st(n,i),o})(this,t,r,e),!e&&fa&&(t.ra=!0),t}});G[458105876]=[0,pa,Uh,[!0,Ve,[0,C,-1,Y]],[0,dr,R,ie]];var gn=class extends m{constructor(e){super(e)}},ma=Pe(458105758,gn);G[458105758]=[0,D,C,pa];var yn=class extends m{constructor(e){super(e)}},ga=[0,Dh,-1,ut],mu=class extends m{constructor(e){super(e)}},ya=class extends m{constructor(e){super(e)}},bn=[1,2];ya.prototype.g=Qr([0,bn,N,ga,N,[0,W,ga]]);var ba=class extends m{constructor(e){super(e)}},gu=Pe(443442058,ba);G[443442058]=[0,D,C,z,B,Y,-1,R,B],G[514774813]=pn;var va=class extends m{constructor(e){super(e)}},yu=Pe(516587230,va);function vn(e,t){return t=t?t.clone():new cn,e.displayNamesLocale!==void 0?S(t,1,cr(e.displayNamesLocale)):e.displayNamesLocale===void 0&&S(t,1),e.maxResults!==void 0?Ie(t,2,e.maxResults):"maxResults"in e&&S(t,2),e.scoreThreshold!==void 0?y(t,3,e.scoreThreshold):"scoreThreshold"in e&&S(t,3),e.categoryAllowlist!==void 0?Rr(t,4,e.categoryAllowlist):"categoryAllowlist"in e&&S(t,4),e.categoryDenylist!==void 0?Rr(t,5,e.categoryDenylist):"categoryDenylist"in e&&S(t,5),t}function _a(e){const t=Number(e);return Number.isSafeInteger(t)?t:String(e)}function _n(e,t=-1,r=""){return{categories:e.map((s=>({index:pe(s,1)??0??-1,score:I(s,2)??0,categoryName:X(T(s,3))??""??"",displayName:X(T(s,4))??""??""}))),headIndex:t,headName:r}}function bu(e){const t={classifications:xe(e,Zh,1).map((r=>{var s;return _n(((s=E(r,jo,4))==null?void 0:s.g())??[],pe(r,2)??0,X(T(r,3))??"")}))};return(function(r){return fh(ms?T(r,2,void 0,void 0,$r):T(r,2))})(e)!=null&&(t.timestampMs=_a(Wi(e))),t}function wa(e){var o,a;var t=it(e,3,Se,nt()),r=it(e,2,Pt,nt()),s=it(e,1,X,nt()),n=it(e,9,X,nt());const i={categories:[],keypoints:[]};for(let c=0;c<t.length;c++)i.categories.push({score:t[c],index:r[c]??-1,categoryName:s[c]??"",displayName:n[c]??""});if((t=(o=E(e,an,4))==null?void 0:o.l())&&(i.boundingBox={originX:pe(t,1,Be)??0,originY:pe(t,2,Be)??0,width:pe(t,3,Be)??0,height:pe(t,4,Be)??0,angle:0}),(a=E(e,an,4))==null?void 0:a.g().length)for(const c of E(e,an,4).g())i.keypoints.push({x:T(c,1,void 0,Be,Se)??0,y:T(c,2,void 0,Be,Se)??0,score:T(c,4,void 0,Be,Se)??0,label:X(T(c,3,void 0,Be))??""});return i}function rs(e){const t=[];for(const r of xe(e,zo,1))t.push({x:I(r,1)??0,y:I(r,2)??0,z:I(r,3)??0,visibility:I(r,4)??0});return t}function mr(e){const t=[];for(const r of xe(e,Ho,1))t.push({x:I(r,1)??0,y:I(r,2)??0,z:I(r,3)??0,visibility:I(r,4)??0});return t}function Aa(e){return Array.from(e,(t=>t>127?t-256:t))}function Ea(e,t){if(e.length!==t.length)throw Error(`Cannot compute cosine similarity between embeddings of different sizes (${e.length} vs. ${t.length}).`);let r=0,s=0,n=0;for(let i=0;i<e.length;i++)r+=e[i]*t[i],s+=e[i]*e[i],n+=t[i]*t[i];if(s<=0||n<=0)throw Error("Cannot compute cosine similarity on embedding with 0 norm.");return r/Math.sqrt(s*n)}let ss;G[516587230]=[0,D,pn,mn,B],G[518928384]=mn;const vu=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 ka(){if(ss===void 0)try{await WebAssembly.instantiate(vu),ss=!0}catch{ss=!1}return ss}async function gr(e,t=zh``){const r=await ka()?"wasm_internal":"wasm_nosimd_internal";return{wasmLoaderPath:`${t}/${e}_${r}.js`,wasmBinaryPath:`${t}/${e}_${r}.wasm`}}var lt=class{};function Sa(){var e=navigator;return typeof OffscreenCanvas<"u"&&(!(function(t=navigator){return(t=t.userAgent).includes("Safari")&&!t.includes("Chrome")})(e)||!!((e=e.userAgent.match(/Version\/([\d]+).*Safari/))&&e.length>=1&&Number(e[1])>=17))}async function Ca(e){if(typeof importScripts!="function"){const t=document.createElement("script");return t.src=e.toString(),t.crossOrigin="anonymous",new Promise(((r,s)=>{t.addEventListener("load",(()=>{r()}),!1),t.addEventListener("error",(n=>{s(n)}),!1),document.body.appendChild(t)}))}try{importScripts(e.toString())}catch(t){if(!(t instanceof TypeError))throw t;await self.import(e.toString())}}function Ta(e){return e.videoWidth!==void 0?[e.videoWidth,e.videoHeight]:e.naturalWidth!==void 0?[e.naturalWidth,e.naturalHeight]:e.displayWidth!==void 0?[e.displayWidth,e.displayHeight]:[e.width,e.height]}function g(e,t,r){e.m||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target"),r(t=e.i.stringToNewUTF8(t)),e.i._free(t)}function Pa(e,t,r){if(!e.i.canvas)throw Error("No OpenGL canvas configured.");if(r?e.i._bindTextureToStream(r):e.i._bindTextureToCanvas(),!(r=e.i.canvas.getContext("webgl2")||e.i.canvas.getContext("webgl")))throw Error("Failed to obtain WebGL context from the provided canvas. `getContext()` should only be invoked with `webgl` or `webgl2`.");e.i.gpuOriginForWebTexturesIsBottomLeft&&r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,!0),r.texImage2D(r.TEXTURE_2D,0,r.RGBA,r.RGBA,r.UNSIGNED_BYTE,t),e.i.gpuOriginForWebTexturesIsBottomLeft&&r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,!1);const[s,n]=Ta(t);return!e.l||s===e.i.canvas.width&&n===e.i.canvas.height||(e.i.canvas.width=s,e.i.canvas.height=n),[s,n]}function Ma(e,t,r){e.m||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target");const s=new Uint32Array(t.length);for(let n=0;n<t.length;n++)s[n]=e.i.stringToNewUTF8(t[n]);t=e.i._malloc(4*s.length),e.i.HEAPU32.set(s,t>>2),r(t);for(const n of s)e.i._free(n);e.i._free(t)}function Me(e,t,r){e.i.simpleListeners=e.i.simpleListeners||{},e.i.simpleListeners[t]=r}function ze(e,t,r){let s=[];e.i.simpleListeners=e.i.simpleListeners||{},e.i.simpleListeners[t]=(n,i,o)=>{i?(r(s,o),s=[]):s.push(n)}}lt.forVisionTasks=function(e){return gr("vision",e)},lt.forTextTasks=function(e){return gr("text",e)},lt.forGenAiExperimentalTasks=function(e){return gr("genai_experimental",e)},lt.forGenAiTasks=function(e){return gr("genai",e)},lt.forAudioTasks=function(e){return gr("audio",e)},lt.isSimdSupported=function(){return ka()};async function _u(e,t,r,s){return e=await(async(n,i,o,a,c)=>{if(i&&await Ca(i),!self.ModuleFactory||o&&(await Ca(o),!self.ModuleFactory))throw Error("ModuleFactory not set.");return self.Module&&c&&((i=self.Module).locateFile=c.locateFile,c.mainScriptUrlOrBlob&&(i.mainScriptUrlOrBlob=c.mainScriptUrlOrBlob)),c=await self.ModuleFactory(self.Module||c),self.ModuleFactory=self.Module=void 0,new n(c,a)})(e,r.wasmLoaderPath,r.assetLoaderPath,t,{locateFile:n=>n.endsWith(".wasm")?r.wasmBinaryPath.toString():r.assetBinaryPath&&n.endsWith(".data")?r.assetBinaryPath.toString():n}),await e.o(s),e}function wn(e,t){const r=E(e.baseOptions,es,1)||new es;typeof t=="string"?(S(r,2,cr(t)),S(r,1)):t instanceof Uint8Array&&(S(r,1,_s(t,!1)),S(r,2)),b(e.baseOptions,0,1,r)}function La(e){try{const t=e.H.length;if(t===1)throw Error(e.H[0].message);if(t>1)throw Error("Encountered multiple errors: "+e.H.map((r=>r.message)).join(", "))}finally{e.H=[]}}function d(e,t){e.C=Math.max(e.C,t)}function ns(e,t){e.B=new Z,ne(e.B,2,"PassThroughCalculator"),P(e.B,"free_memory"),_(e.B,"free_memory_unused_out"),F(t,"free_memory"),ge(t,e.B)}function Ht(e,t){P(e.B,t),_(e.B,t+"_unused_out")}function is(e){e.g.addBoolToStream(!0,"free_memory",e.C)}var An=class{constructor(e){this.g=e,this.H=[],this.C=0,this.g.setAutoRenderToScreen(!1)}l(e,t=!0){var r,s,n,i,o,a;if(t){const c=e.baseOptions||{};if((r=e.baseOptions)!=null&&r.modelAssetBuffer&&((s=e.baseOptions)!=null&&s.modelAssetPath))throw Error("Cannot set both baseOptions.modelAssetPath and baseOptions.modelAssetBuffer");if(!((n=E(this.baseOptions,es,1))!=null&&n.g()||(i=E(this.baseOptions,es,1))!=null&&i.l()||(o=e.baseOptions)!=null&&o.modelAssetBuffer||(a=e.baseOptions)!=null&&a.modelAssetPath))throw Error("Either baseOptions.modelAssetPath or baseOptions.modelAssetBuffer must be set");if((function(u,h){let l=E(u.baseOptions,Qo,3);if(!l){var f=l=new Qo,v=new xo;ur(f,4,Zr,v)}"delegate"in h&&(h.delegate==="GPU"?(h=l,f=new Wh,ur(h,2,Zr,f)):(h=l,f=new xo,ur(h,4,Zr,f))),b(u.baseOptions,0,3,l)})(this,c),c.modelAssetPath)return fetch(c.modelAssetPath.toString()).then((u=>{if(u.ok)return u.arrayBuffer();throw Error(`Failed to fetch model: ${c.modelAssetPath} (${u.status})`)})).then((u=>{try{this.g.i.FS_unlink("/model.dat")}catch{}this.g.i.FS_createDataFile("/","model.dat",new Uint8Array(u),!0,!1,!1),wn(this,"/model.dat"),this.m(),this.L()}));if(c.modelAssetBuffer instanceof Uint8Array)wn(this,c.modelAssetBuffer);else if(c.modelAssetBuffer)return(async function(u){const h=[];for(var l=0;;){const{done:f,value:v}=await u.read();if(f)break;h.push(v),l+=v.length}if(h.length===0)return new Uint8Array(0);if(h.length===1)return h[0];u=new Uint8Array(l),l=0;for(const f of h)u.set(f,l),l+=f.length;return u})(c.modelAssetBuffer).then((u=>{wn(this,u),this.m(),this.L()}))}return this.m(),this.L(),Promise.resolve()}L(){}ca(){let e;if(this.g.ca((t=>{e=Kh(t)})),!e)throw Error("Failed to retrieve CalculatorGraphConfig");return e}setGraph(e,t){this.g.attachErrorListener(((r,s)=>{this.H.push(Error(s))})),this.g.Ja(),this.g.setGraph(e,t),this.B=void 0,La(this)}finishProcessing(){this.g.finishProcessing(),La(this)}close(){this.B=void 0,this.g.closeGraph()}};function We(e,t){if(!e)throw Error(`Unable to obtain required WebGL resource: ${t}`);return e}An.prototype.close=An.prototype.close;class wu{constructor(t,r,s,n){this.g=t,this.h=r,this.m=s,this.l=n}bind(){this.g.bindVertexArray(this.h)}close(){this.g.deleteVertexArray(this.h),this.g.deleteBuffer(this.m),this.g.deleteBuffer(this.l)}}function Fa(e,t,r){const s=e.g;if(r=We(s.createShader(r),"Failed to create WebGL shader"),s.shaderSource(r,t),s.compileShader(r),!s.getShaderParameter(r,s.COMPILE_STATUS))throw Error(`Could not compile WebGL shader: ${s.getShaderInfoLog(r)}`);return s.attachShader(e.h,r),r}function $a(e,t){const r=e.g,s=We(r.createVertexArray(),"Failed to create vertex array");r.bindVertexArray(s);const n=We(r.createBuffer(),"Failed to create buffer");r.bindBuffer(r.ARRAY_BUFFER,n),r.enableVertexAttribArray(e.O),r.vertexAttribPointer(e.O,2,r.FLOAT,!1,0,0),r.bufferData(r.ARRAY_BUFFER,new Float32Array([-1,-1,-1,1,1,1,1,-1]),r.STATIC_DRAW);const i=We(r.createBuffer(),"Failed to create buffer");return r.bindBuffer(r.ARRAY_BUFFER,i),r.enableVertexAttribArray(e.L),r.vertexAttribPointer(e.L,2,r.FLOAT,!1,0,0),r.bufferData(r.ARRAY_BUFFER,new Float32Array(t?[0,1,0,0,1,0,1,1]:[0,0,0,1,1,1,1,0]),r.STATIC_DRAW),r.bindBuffer(r.ARRAY_BUFFER,null),r.bindVertexArray(null),new wu(r,s,n,i)}function En(e,t){if(e.g){if(t!==e.g)throw Error("Cannot change GL context once initialized")}else e.g=t}function Au(e,t,r,s){return En(e,t),e.h||(e.m(),e.D()),r?(e.u||(e.u=$a(e,!0)),r=e.u):(e.A||(e.A=$a(e,!1)),r=e.A),t.useProgram(e.h),r.bind(),e.l(),e=s(),r.g.bindVertexArray(null),e}function Oa(e,t,r){return En(e,t),e=We(t.createTexture(),"Failed to create texture"),t.bindTexture(t.TEXTURE_2D,e),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,r??t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,r??t.LINEAR),t.bindTexture(t.TEXTURE_2D,null),e}function xa(e,t,r){En(e,t),e.B||(e.B=We(t.createFramebuffer(),"Failed to create framebuffe.")),t.bindFramebuffer(t.FRAMEBUFFER,e.B),t.framebufferTexture2D(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.TEXTURE_2D,r,0)}function Eu(e){var t;(t=e.g)==null||t.bindFramebuffer(e.g.FRAMEBUFFER,null)}var Ia=class{H(){return`
|
|
1
|
+
(function(w,Ye){typeof exports=="object"&&typeof module<"u"?Ye(exports):typeof define=="function"&&define.amd?define(["exports"],Ye):(w=typeof globalThis<"u"?globalThis:w||self,Ye(w.SimFaceSDK={}))})(this,(function(w){"use strict";var Dc;class Ye{constructor(t){this.apiUrl=t.apiUrl.replace(/\/$/,""),this.projectId=t.projectId,this.apiKey=t.apiKey}async validateAPIKey(){const t=await fetch(`${this.apiUrl}/api/v1/auth/validate`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectId:this.projectId,apiKey:this.apiKey})});if(!t.ok){const r=await t.json();throw new Error(r.error||"API key validation failed")}return t.json()}async enroll(t,r){const s=new FormData;s.append("projectId",this.projectId),s.append("apiKey",this.apiKey),s.append("clientId",t),s.append("image",r,"face.jpg");const n=await fetch(`${this.apiUrl}/api/v1/enroll`,{method:"POST",body:s});if(n.status===409)return{success:!1,clientId:t,alreadyEnrolled:!0,message:"User already enrolled"};if(!n.ok){const i=await n.json();throw new Error(i.error||"Enrollment failed")}return n.json()}async verify(t,r){const s=new FormData;s.append("projectId",this.projectId),s.append("apiKey",this.apiKey),s.append("clientId",t),s.append("image",r,"face.jpg");const n=await fetch(`${this.apiUrl}/api/v1/verify`,{method:"POST",body:s});if(n.status===404)return{match:!1,score:0,threshold:0,notEnrolled:!0,message:"User not enrolled"};if(!n.ok){const i=await n.json();throw new Error(i.error||"Verification failed")}return n.json()}}var bt=typeof self<"u"?self:{};function Qt(e,t){e:{for(var r=["CLOSURE_FLAGS"],s=bt,n=0;n<r.length;n++)if((s=s[r[n]])==null){r=null;break e}r=s}return(e=r&&r[e])!=null?e:t}function Qe(){throw Error("Invalid UTF8")}function ei(e,t){return t=String.fromCharCode.apply(null,t),e==null?t:e+t}let Cr,ds;const Vc=typeof TextDecoder<"u";let Gc;const Hc=typeof TextEncoder<"u";function ti(e){if(Hc)e=(Gc||(Gc=new TextEncoder)).encode(e);else{let r=0;const s=new Uint8Array(3*e.length);for(let n=0;n<e.length;n++){var t=e.charCodeAt(n);if(t<128)s[r++]=t;else{if(t<2048)s[r++]=t>>6|192;else{if(t>=55296&&t<=57343){if(t<=56319&&n<e.length){const i=e.charCodeAt(++n);if(i>=56320&&i<=57343){t=1024*(t-55296)+i-56320+65536,s[r++]=t>>18|240,s[r++]=t>>12&63|128,s[r++]=t>>6&63|128,s[r++]=63&t|128;continue}n--}t=65533}s[r++]=t>>12|224,s[r++]=t>>6&63|128}s[r++]=63&t|128}}e=r===s.length?s:s.subarray(0,r)}return e}function ri(e){bt.setTimeout((()=>{throw e}),0)}var fs,zc=Qt(610401301,!1),si=Qt(748402147,!0),ps=Qt(824648567,!0),ms=Qt(824656860,Qt(1,!0));function ni(){var e=bt.navigator;return e&&(e=e.userAgent)?e:""}const ii=bt.navigator;function Tr(e){return Tr[" "](e),e}fs=ii&&ii.userAgentData||null,Tr[" "]=function(){};const oi={};let Jt=null;function Wc(e){const t=e.length;let r=3*t/4;r%3?r=Math.floor(r):"=.".indexOf(e[t-1])!=-1&&(r="=.".indexOf(e[t-2])!=-1?r-2:r-1);const s=new Uint8Array(r);let n=0;return(function(i,o){function a(u){for(;c<i.length;){const h=i.charAt(c++),l=Jt[h];if(l!=null)return l;if(!/^[\s\xa0]*$/.test(h))throw Error("Unknown base64 encoding at char: "+h)}return u}ai();let c=0;for(;;){const u=a(-1),h=a(0),l=a(64),f=a(64);if(f===64&&u===-1)break;o(u<<2|h>>4),l!=64&&(o(h<<4&240|l>>2),f!=64&&o(l<<6&192|f))}})(e,(function(i){s[n++]=i})),n!==r?s.subarray(0,n):s}function ai(){if(!Jt){Jt={};var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),t=["+/=","+/","-_=","-_.","-_"];for(let r=0;r<5;r++){const s=e.concat(t[r].split(""));oi[r]=s;for(let n=0;n<s.length;n++){const i=s[n];Jt[i]===void 0&&(Jt[i]=n)}}}}var Kc=typeof Uint8Array<"u",ci=!(!(zc&&fs&&fs.brands.length>0)&&(ni().indexOf("Trident")!=-1||ni().indexOf("MSIE")!=-1))&&typeof btoa=="function";const hi=/[-_.]/g,qc={"-":"+",_:"/",".":"="};function Xc(e){return qc[e]||""}function ui(e){if(!ci)return Wc(e);e=hi.test(e)?e.replace(hi,Xc):e,e=atob(e);const t=new Uint8Array(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}function gs(e){return Kc&&e!=null&&e instanceof Uint8Array}var vt={};function Je(){return Yc||(Yc=new Ee(null,vt))}function ys(e){li(vt);var t=e.g;return(t=t==null||gs(t)?t:typeof t=="string"?ui(t):null)==null?t:e.g=t}var Ee=class{h(){return new Uint8Array(ys(this)||0)}constructor(t,r){if(li(r),this.g=t,t!=null&&t.length===0)throw Error("ByteString should be constructed with non-empty values")}};let Yc,Qc;function li(e){if(e!==vt)throw Error("illegal external caller")}function di(e,t){e.__closure__error__context__984382||(e.__closure__error__context__984382={}),e.__closure__error__context__984382.severity=t}function bs(e){return di(e=Error(e),"warning"),e}function _t(e,t){if(e!=null){var r=Qc??(Qc={}),s=r[e]||0;s>=t||(r[e]=s+1,di(e=Error(),"incident"),ri(e))}}function wt(){return typeof BigInt=="function"}var At=typeof Symbol=="function"&&typeof Symbol()=="symbol";function ke(e,t,r=!1){return typeof Symbol=="function"&&typeof Symbol()=="symbol"?r&&Symbol.for&&e?Symbol.for(e):e!=null?Symbol(e):Symbol():t}var Jc=ke("jas",void 0,!0),fi=ke(void 0,"0di"),Zt=ke(void 0,"1oa"),te=ke(void 0,Symbol()),Zc=ke(void 0,"0ub"),eh=ke(void 0,"0ubs"),vs=ke(void 0,"0ubsb"),th=ke(void 0,"0actk"),Et=ke("m_m","Pa",!0),pi=ke();const mi={Ga:{value:0,configurable:!0,writable:!0,enumerable:!1}},gi=Object.defineProperties,p=At?Jc:"Ga";var Ze;const yi=[];function er(e,t){At||p in e||gi(e,mi),e[p]|=t}function j(e,t){At||p in e||gi(e,mi),e[p]=t}function tr(e){return er(e,34),e}function rr(e){return er(e,8192),e}j(yi,7),Ze=Object.freeze(yi);var kt={};function re(e,t){return t===void 0?e.h!==et&&!!(2&(0|e.v[p])):!!(2&t)&&e.h!==et}const et={};function _s(e,t){if(e!=null){if(typeof e=="string")e=e?new Ee(e,vt):Je();else if(e.constructor!==Ee)if(gs(e))e=e.length?new Ee(new Uint8Array(e),vt):Je();else{if(!t)throw Error();e=void 0}}return e}class bi{constructor(t,r,s){this.g=t,this.h=r,this.l=s}next(){const t=this.g.next();return t.done||(t.value=this.h.call(this.l,t.value)),t}[Symbol.iterator](){return this}}var rh=Object.freeze({});function vi(e,t,r){const s=128&t?0:-1,n=e.length;var i;(i=!!n)&&(i=(i=e[n-1])!=null&&typeof i=="object"&&i.constructor===Object);const o=n+(i?-1:0);for(t=128&t?1:0;t<o;t++)r(t-s,e[t]);if(i){e=e[n-1];for(const a in e)!isNaN(a)&&r(+a,e[a])}}var _i={};function St(e){return 128&e?_i:void 0}function Pr(e){return e.Na=!0,e}var sh=Pr((e=>typeof e=="number")),wi=Pr((e=>typeof e=="string")),nh=Pr((e=>typeof e=="boolean")),Mr=typeof bt.BigInt=="function"&&typeof bt.BigInt(0)=="bigint";function se(e){var t=e;if(wi(t)){if(!/^\s*(?:-?[1-9]\d*|0)?\s*$/.test(t))throw Error(String(t))}else if(sh(t)&&!Number.isSafeInteger(t))throw Error(String(t));return Mr?BigInt(e):e=nh(e)?e?"1":"0":wi(e)?e.trim()||"0":String(e)}var ws=Pr((e=>Mr?e>=oh&&e<=ch:e[0]==="-"?Ai(e,ih):Ai(e,ah)));const ih=Number.MIN_SAFE_INTEGER.toString(),oh=Mr?BigInt(Number.MIN_SAFE_INTEGER):void 0,ah=Number.MAX_SAFE_INTEGER.toString(),ch=Mr?BigInt(Number.MAX_SAFE_INTEGER):void 0;function Ai(e,t){if(e.length>t.length)return!1;if(e.length<t.length||e===t)return!0;for(let r=0;r<e.length;r++){const s=e[r],n=t[r];if(s>n)return!1;if(s<n)return!0}}const hh=typeof Uint8Array.prototype.slice=="function";let uh,L=0,U=0;function Ei(e){const t=e>>>0;L=t,U=(e-t)/4294967296>>>0}function Ct(e){if(e<0){Ei(-e);const[t,r]=Cs(L,U);L=t>>>0,U=r>>>0}else Ei(e)}function As(e){const t=uh||(uh=new DataView(new ArrayBuffer(8)));t.setFloat32(0,+e,!0),U=0,L=t.getUint32(0,!0)}function Es(e,t){const r=4294967296*t+(e>>>0);return Number.isSafeInteger(r)?r:sr(e,t)}function lh(e,t){return se(wt()?BigInt.asUintN(64,(BigInt(t>>>0)<<BigInt(32))+BigInt(e>>>0)):sr(e,t))}function ks(e,t){const r=2147483648&t;return r&&(t=~t>>>0,(e=1+~e>>>0)==0&&(t=t+1>>>0)),typeof(e=Es(e,t))=="number"?r?-e:e:r?"-"+e:e}function ki(e,t){return wt()?se(BigInt.asIntN(64,(BigInt.asUintN(32,BigInt(t))<<BigInt(32))+BigInt.asUintN(32,BigInt(e)))):se(Ss(e,t))}function sr(e,t){if(e>>>=0,(t>>>=0)<=2097151)var r=""+(4294967296*t+e);else wt()?r=""+(BigInt(t)<<BigInt(32)|BigInt(e)):(e=(16777215&e)+6777216*(r=16777215&(e>>>24|t<<8))+6710656*(t=t>>16&65535),r+=8147497*t,t*=2,e>=1e7&&(r+=e/1e7>>>0,e%=1e7),r>=1e7&&(t+=r/1e7>>>0,r%=1e7),r=t+Si(r)+Si(e));return r}function Si(e){return e=String(e),"0000000".slice(e.length)+e}function Ss(e,t){if(2147483648&t)if(wt())e=""+(BigInt(0|t)<<BigInt(32)|BigInt(e>>>0));else{const[r,s]=Cs(e,t);e="-"+sr(r,s)}else e=sr(e,t);return e}function Lr(e){if(e.length<16)Ct(Number(e));else if(wt())e=BigInt(e),L=Number(e&BigInt(4294967295))>>>0,U=Number(e>>BigInt(32)&BigInt(4294967295));else{const t=+(e[0]==="-");U=L=0;const r=e.length;for(let s=t,n=(r-t)%6+t;n<=r;s=n,n+=6){const i=Number(e.slice(s,n));U*=1e6,L=1e6*L+i,L>=4294967296&&(U+=Math.trunc(L/4294967296),U>>>=0,L>>>=0)}if(t){const[s,n]=Cs(L,U);L=s,U=n}}}function Cs(e,t){return t=~t,e?e=1+~e:t+=1,[e,t]}function ve(e){return Array.prototype.slice.call(e)}const nr=typeof BigInt=="function"?BigInt.asIntN:void 0,dh=typeof BigInt=="function"?BigInt.asUintN:void 0,tt=Number.isSafeInteger,Fr=Number.isFinite,Tt=Math.trunc,fh=se(0);function ir(e){if(e!=null&&typeof e!="number")throw Error(`Value of float/double field must be a number, found ${typeof e}: ${e}`);return e}function Se(e){return e==null||typeof e=="number"?e:e==="NaN"||e==="Infinity"||e==="-Infinity"?Number(e):void 0}function or(e){if(e!=null&&typeof e!="boolean"){var t=typeof e;throw Error(`Expected boolean but got ${t!="object"?t:e?Array.isArray(e)?"array":t:"null"}: ${e}`)}return e}function Ci(e){return e==null||typeof e=="boolean"?e:typeof e=="number"?!!e:void 0}const ph=/^-?([1-9][0-9]*|0)(\.[0-9]+)?$/;function ar(e){switch(typeof e){case"bigint":return!0;case"number":return Fr(e);case"string":return ph.test(e);default:return!1}}function Pt(e){if(e==null)return e;if(typeof e=="string"&&e)e=+e;else if(typeof e!="number")return;return Fr(e)?0|e:void 0}function Ti(e){if(e==null)return e;if(typeof e=="string"&&e)e=+e;else if(typeof e!="number")return;return Fr(e)?e>>>0:void 0}function Pi(e){const t=e.length;return(e[0]==="-"?t<20||t===20&&e<="-9223372036854775808":t<19||t===19&&e<="9223372036854775807")?e:(Lr(e),Ss(L,U))}function Ts(e){return e=Tt(e),tt(e)||(Ct(e),e=ks(L,U)),e}function Mi(e){var t=Tt(Number(e));return tt(t)?String(t):((t=e.indexOf("."))!==-1&&(e=e.substring(0,t)),Pi(e))}function Li(e){var t=Tt(Number(e));return tt(t)?se(t):((t=e.indexOf("."))!==-1&&(e=e.substring(0,t)),wt()?se(nr(64,BigInt(e))):se(Pi(e)))}function Fi(e){return tt(e)?e=se(Ts(e)):(e=Tt(e),tt(e)?e=String(e):(Ct(e),e=Ss(L,U)),e=se(e)),e}function mh(e){return e==null?e:typeof e=="bigint"?(ws(e)?e=Number(e):(e=nr(64,e),e=ws(e)?Number(e):String(e)),e):ar(e)?typeof e=="number"?Ts(e):Mi(e):void 0}function xr(e){const t=typeof e;return e==null?e:t==="bigint"?se(nr(64,e)):ar(e)?t==="string"?Li(e):Fi(e):void 0}function xi(e){if(typeof e!="string")throw Error();return e}function cr(e){if(e!=null&&typeof e!="string")throw Error();return e}function X(e){return e==null||typeof e=="string"?e:void 0}function Ps(e,t,r,s){return e!=null&&e[Et]===kt?e:Array.isArray(e)?((s=(r=0|e[p])|32&s|2&s)!==r&&j(e,s),new t(e)):(r?2&s?((e=t[fi])||(tr((e=new t).v),e=t[fi]=e),t=e):t=new t:t=void 0,t)}function gh(e,t,r){if(t)e:{if(!ar(t=e))throw bs("int64");switch(typeof t){case"string":t=Li(t);break e;case"bigint":t=se(nr(64,t));break e;default:t=Fi(t)}}else t=xr(e);return(e=t)==null?r?fh:void 0:e}const yh={};let bh=(function(){try{return Tr(new class extends Map{constructor(){super()}}),!1}catch{return!0}})();class Ms{constructor(){this.g=new Map}get(t){return this.g.get(t)}set(t,r){return this.g.set(t,r),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,r){return this.g.forEach(t,r)}[Symbol.iterator](){return this.entries()}}const vh=bh?(Object.setPrototypeOf(Ms.prototype,Map.prototype),Object.defineProperties(Ms.prototype,{size:{value:0,configurable:!0,enumerable:!0,writable:!0}}),Ms):class extends Map{constructor(){super()}};function $i(e){return e}function Ls(e){if(2&e.J)throw Error("Cannot mutate an immutable Map")}var $e=class extends vh{constructor(e,t,r=$i,s=$i){super(),this.J=0|e[p],this.K=t,this.S=r,this.fa=this.K?_h:s;for(let n=0;n<e.length;n++){const i=e[n],o=r(i[0],!1,!0);let a=i[1];t?a===void 0&&(a=null):a=s(i[1],!1,!0,void 0,void 0,this.J),super.set(o,a)}}V(e){return rr(Array.from(super.entries(),e))}clear(){Ls(this),super.clear()}delete(e){return Ls(this),super.delete(this.S(e,!0,!1))}entries(){if(this.K){var e=super.keys();e=new bi(e,wh,this)}else e=super.entries();return e}values(){if(this.K){var e=super.keys();e=new bi(e,$e.prototype.get,this)}else e=super.values();return e}forEach(e,t){this.K?super.forEach(((r,s,n)=>{e.call(t,n.get(s),s,n)})):super.forEach(e,t)}set(e,t){return Ls(this),(e=this.S(e,!0,!1))==null?this:t==null?(super.delete(e),this):super.set(e,this.fa(t,!0,!0,this.K,!1,this.J))}Ma(e){const t=this.S(e[0],!1,!0);e=e[1],e=this.K?e===void 0?null:e:this.fa(e,!1,!0,void 0,!1,this.J),super.set(t,e)}has(e){return super.has(this.S(e,!1,!1))}get(e){e=this.S(e,!1,!1);const t=super.get(e);if(t!==void 0){var r=this.K;return r?((r=this.fa(t,!1,!0,r,this.ra,this.J))!==t&&super.set(e,r),r):t}}[Symbol.iterator](){return this.entries()}};function _h(e,t,r,s,n,i){return e=Ps(e,s,r,i),n&&(e=$s(e)),e}function wh(e){return[e,this.get(e)]}let Ah;function Oi(){return Ah||(Ah=new $e(tr([]),void 0,void 0,void 0,yh))}function $r(e){return te?e[te]:void 0}function Or(e,t){for(const r in e)!isNaN(r)&&t(e,+r,e[r])}$e.prototype.toJSON=void 0;var Fs=class{};const Eh={Ka:!0};function kh(e,t){t<100||_t(eh,1)}function Ir(e,t,r,s){const n=s!==void 0;s=!!s;var i,o=te;!n&&At&&o&&(i=e[o])&&Or(i,kh),o=[];var a=e.length;let c;i=4294967295;let u=!1;const h=!!(64&t),l=h?128&t?0:-1:void 0;1&t||(c=a&&e[a-1],c!=null&&typeof c=="object"&&c.constructor===Object?i=--a:c=void 0,!h||128&t||n||(u=!0,i=i-l+l)),t=void 0;for(var f=0;f<a;f++){let v=e[f];if(v!=null&&(v=r(v,s))!=null)if(h&&f>=i){const x=f-l;(t??(t={}))[x]=v}else o[f]=v}if(c)for(let v in c){if((a=c[v])==null||(a=r(a,s))==null)continue;let x;f=+v,h&&!Number.isNaN(f)&&(x=f+l)<i?o[x]=a:(t??(t={}))[v]=a}return t&&(u?o.push(t):o[i]=t),n&&te&&(e=$r(e))&&e instanceof Fs&&(o[te]=(function(v){const x=new Fs;return Or(v,((Jn,Yt,Sr)=>{x[Yt]=ve(Sr)})),x.da=v.da,x})(e)),o}function Sh(e){return e[0]=hr(e[0]),e[1]=hr(e[1]),e}function hr(e){switch(typeof e){case"number":return Number.isFinite(e)?e:""+e;case"bigint":return ws(e)?Number(e):""+e;case"boolean":return e?1:0;case"object":if(Array.isArray(e)){var t=0|e[p];return e.length===0&&1&t?void 0:Ir(e,t,hr)}if(e!=null&&e[Et]===kt)return Ii(e);if(e instanceof Ee){if((t=e.g)==null)e="";else if(typeof t=="string")e=t;else{if(ci){for(var r="",s=0,n=t.length-10240;s<n;)r+=String.fromCharCode.apply(null,t.subarray(s,s+=10240));r+=String.fromCharCode.apply(null,s?t.subarray(s):t),t=btoa(r)}else{r===void 0&&(r=0),ai(),r=oi[r],s=Array(Math.floor(t.length/3)),n=r[64]||"";let u=0,h=0;for(;u<t.length-2;u+=3){var i=t[u],o=t[u+1],a=t[u+2],c=r[i>>2];i=r[(3&i)<<4|o>>4],o=r[(15&o)<<2|a>>6],a=r[63&a],s[h++]=c+i+o+a}switch(c=0,a=n,t.length-u){case 2:a=r[(15&(c=t[u+1]))<<2]||n;case 1:t=t[u],s[h]=r[t>>2]+r[(3&t)<<4|c>>4]+a+n}t=s.join("")}e=e.g=t}return e}return e instanceof $e?e=e.size!==0?e.V(Sh):void 0:void 0}return e}function Ii(e){return Ir(e=e.v,0|e[p],hr)}let Ch,Th;function rt(e,t){return Ri(e,t[0],t[1])}function Ri(e,t,r,s=0){if(e==null){var n=32;r?(e=[r],n|=128):e=[],t&&(n=-16760833&n|(1023&t)<<14)}else{if(!Array.isArray(e))throw Error("narr");if(n=0|e[p],si&&1&n)throw Error("rfarr");if(2048&n&&!(2&n)&&(function(){if(si)throw Error("carr");_t(th,5)})(),256&n)throw Error("farr");if(64&n)return(n|s)!==n&&j(e,n|s),e;if(r&&(n|=128,r!==e[0]))throw Error("mid");e:{n|=64;var i=(r=e).length;if(i){var o=i-1;const c=r[o];if(c!=null&&typeof c=="object"&&c.constructor===Object){if((o-=t=128&n?0:-1)>=1024)throw Error("pvtlmt");for(var a in c)(i=+a)<o&&(r[i+t]=c[a],delete c[a]);n=-16760833&n|(1023&o)<<14;break e}}if(t){if((a=Math.max(t,i-(128&n?0:-1)))>1024)throw Error("spvt");n=-16760833&n|(1023&a)<<14}}}return j(e,64|n|s),e}function Ph(e,t){if(typeof e!="object")return e;if(Array.isArray(e)){var r=0|e[p];return e.length===0&&1&r?void 0:Ni(e,r,t)}if(e!=null&&e[Et]===kt)return Ui(e);if(e instanceof $e){if(2&(t=e.J))return e;if(!e.size)return;if(r=tr(e.V()),e.K)for(e=0;e<r.length;e++){const s=r[e];let n=s[1];n=n==null||typeof n!="object"?void 0:n!=null&&n[Et]===kt?Ui(n):Array.isArray(n)?Ni(n,0|n[p],!!(32&t)):void 0,s[1]=n}return r}return e instanceof Ee?e:void 0}function Ni(e,t,r){return 2&t||(!r||4096&t||16&t?e=Mt(e,t,!1,r&&!(16&t)):(er(e,34),4&t&&Object.freeze(e))),e}function xs(e,t,r){return e=new e.constructor(t),r&&(e.h=et),e.m=et,e}function Ui(e){const t=e.v,r=0|t[p];return re(e,r)?e:Os(e,t,r)?xs(e,t):Mt(t,r)}function Mt(e,t,r,s){return s??(s=!!(34&t)),e=Ir(e,t,Ph,s),s=32,r&&(s|=2),j(e,t=16769217&t|s),e}function $s(e){const t=e.v,r=0|t[p];return re(e,r)?Os(e,t,r)?xs(e,t,!0):new e.constructor(Mt(t,r,!1)):e}function Lt(e){if(e.h!==et)return!1;var t=e.v;return er(t=Mt(t,0|t[p]),2048),e.v=t,e.h=void 0,e.m=void 0,!0}function Ft(e){if(!Lt(e)&&re(e,0|e.v[p]))throw Error()}function st(e,t){t===void 0&&(t=0|e[p]),32&t&&!(4096&t)&&j(e,4096|t)}function Os(e,t,r){return!!(2&r)||!(!(32&r)||4096&r)&&(j(t,2|r),e.h=et,!0)}const Mh=se(0),Be={};function T(e,t,r,s,n){if((t=Oe(e.v,t,r,n))!==null||s&&e.m!==et)return t}function Oe(e,t,r,s){if(t===-1)return null;const n=t+(r?0:-1),i=e.length-1;let o,a;if(!(i<1+(r?0:-1))){if(n>=i)if(o=e[i],o!=null&&typeof o=="object"&&o.constructor===Object)r=o[t],a=!0;else{if(n!==i)return;r=o}else r=e[n];if(s&&r!=null){if((s=s(r))==null)return s;if(!Object.is(s,r))return a?o[t]=s:e[n]=s,s}return r}}function S(e,t,r,s){Ft(e),V(e=e.v,0|e[p],t,r,s)}function V(e,t,r,s,n){const i=r+(n?0:-1);var o=e.length-1;if(o>=1+(n?0:-1)&&i>=o){const a=e[o];if(a!=null&&typeof a=="object"&&a.constructor===Object)return a[r]=s,t}return i<=o?(e[i]=s,t):(s!==void 0&&(r>=(o=(t??(t=0|e[p]))>>14&1023||536870912)?s!=null&&(e[o+(n?0:-1)]={[r]:s}):e[i]=s),t)}function nt(){return rh===void 0?2:4}function it(e,t,r,s,n){let i=e.v,o=0|i[p];s=re(e,o)?1:s,n=!!n||s===3,s===2&&Lt(e)&&(i=e.v,o=0|i[p]);let a=(e=Is(i,t))===Ze?7:0|e[p],c=Rs(a,o);var u=!(4&c);if(u){4&c&&(e=ve(e),a=0,c=at(c,o),o=V(i,o,t,e));let h=0,l=0;for(;h<e.length;h++){const f=r(e[h]);f!=null&&(e[l++]=f)}l<h&&(e.length=l),r=-513&(4|c),c=r&=-1025,c&=-4097}return c!==a&&(j(e,c),2&c&&Object.freeze(e)),Bi(e,c,i,o,t,s,u,n)}function Bi(e,t,r,s,n,i,o,a){let c=t;return i===1||i===4&&(2&t||!(16&t)&&32&s)?ot(t)||((t|=!e.length||o&&!(4096&t)||32&s&&!(4096&t||16&t)?2:256)!==c&&j(e,t),Object.freeze(e)):(i===2&&ot(t)&&(e=ve(e),c=0,t=at(t,s),s=V(r,s,n,e)),ot(t)||(a||(t|=16),t!==c&&j(e,t))),2&t||!(4096&t||16&t)||st(r,s),e}function Is(e,t,r){return e=Oe(e,t,r),Array.isArray(e)?e:Ze}function Rs(e,t){return 2&t&&(e|=2),1|e}function ot(e){return!!(2&e)&&!!(4&e)||!!(256&e)}function Di(e){return _s(e,!0)}function ji(e){e=ve(e);for(let t=0;t<e.length;t++){const r=e[t]=ve(e[t]);Array.isArray(r[1])&&(r[1]=tr(r[1]))}return rr(e)}function De(e,t,r,s){Ft(e),V(e=e.v,0|e[p],t,(s==="0"?Number(r)===0:r===s)?void 0:r)}function xt(e,t,r){if(2&t)throw Error();const s=St(t);let n=Is(e,r,s),i=n===Ze?7:0|n[p],o=Rs(i,t);return(2&o||ot(o)||16&o)&&(o===i||ot(o)||j(n,o),n=ve(n),i=0,o=at(o,t),V(e,t,r,n,s)),o&=-13,o!==i&&j(n,o),n}function Ns(e,t){var r=qo;return Bs(Us(e=e.v),e,void 0,r)===t?t:-1}function Us(e){if(At)return e[Zt]??(e[Zt]=new Map);if(Zt in e)return e[Zt];const t=new Map;return Object.defineProperty(e,Zt,{value:t}),t}function Vi(e,t,r,s,n){const i=Us(e),o=Bs(i,e,t,r,n);return o!==s&&(o&&(t=V(e,t,o,void 0,n)),i.set(r,s)),t}function Bs(e,t,r,s,n){let i=e.get(s);if(i!=null)return i;i=0;for(let o=0;o<s.length;o++){const a=s[o];Oe(t,a,n)!=null&&(i!==0&&(r=V(t,r,i,void 0,n)),i=a)}return e.set(s,i),i}function Ds(e,t,r){let s=0|e[p];const n=St(s),i=Oe(e,r,n);let o;if(i!=null&&i[Et]===kt){if(!re(i))return Lt(i),i.v;o=i.v}else Array.isArray(i)&&(o=i);if(o){const a=0|o[p];2&a&&(o=Mt(o,a))}return o=rt(o,t),o!==i&&V(e,s,r,o,n),o}function Gi(e,t,r,s,n){let i=!1;if((s=Oe(e,s,n,(o=>{const a=Ps(o,r,!1,t);return i=a!==o&&a!=null,a})))!=null)return i&&!re(s)&&st(e,t),s}function E(e,t,r,s){let n=e.v,i=0|n[p];if((t=Gi(n,i,t,r,s))==null)return t;if(i=0|n[p],!re(e,i)){const o=$s(t);o!==t&&(Lt(e)&&(n=e.v,i=0|n[p]),i=V(n,i,r,t=o,s),st(n,i))}return t}function Hi(e,t,r,s,n,i,o,a){var c=re(e,r);i=c?1:i,o=!!o||i===3,c=a&&!c,(i===2||c)&&Lt(e)&&(r=0|(t=e.v)[p]);var u=(e=Is(t,n))===Ze?7:0|e[p],h=Rs(u,r);if(a=!(4&h)){var l=e,f=r;const v=!!(2&h);v&&(f|=2);let x=!v,Jn=!0,Yt=0,Sr=0;for(;Yt<l.length;Yt++){const Zn=Ps(l[Yt],s,!1,f);if(Zn instanceof s){if(!v){const jc=re(Zn);x&&(x=!jc),Jn&&(Jn=jc)}l[Sr++]=Zn}}Sr<Yt&&(l.length=Sr),h|=4,h=Jn?-4097&h:4096|h,h=x?8|h:-9&h}if(h!==u&&(j(e,h),2&h&&Object.freeze(e)),c&&!(8&h||!e.length&&(i===1||i===4&&(2&h||!(16&h)&&32&r)))){for(ot(h)&&(e=ve(e),h=at(h,r),r=V(t,r,n,e)),s=e,c=h,u=0;u<s.length;u++)(l=s[u])!==(h=$s(l))&&(s[u]=h);c|=8,j(e,h=c=s.length?4096|c:-4097&c)}return Bi(e,h,t,r,n,i,a,o)}function Ie(e,t,r){const s=e.v;return Hi(e,s,0|s[p],t,r,nt(),!1,!0)}function zi(e){return e==null&&(e=void 0),e}function b(e,t,r,s,n){return S(e,r,s=zi(s),n),s&&!re(s)&&st(e.v),e}function ur(e,t,r,s){e:{var n=s=zi(s);Ft(e);const i=e.v;let o=0|i[p];if(n==null){const a=Us(i);if(Bs(a,i,o,r)!==t)break e;a.set(r,0)}else o=Vi(i,o,r,t);V(i,o,t,n)}s&&!re(s)&&st(e.v)}function at(e,t){return-273&(2&t?2|e:-3&e)}function js(e,t,r,s){var n=s;Ft(e),e=Hi(e,s=e.v,0|s[p],r,t,2,!0),n=n??new r,e.push(n),t=r=e===Ze?7:0|e[p],(n=re(n))?(r&=-9,e.length===1&&(r&=-4097)):r|=4096,r!==t&&j(e,r),n||st(s)}function pe(e,t,r){return Pt(T(e,t,void 0,r))}function Wi(e){return(ms?T(e,2,void 0,void 0,xr):xr(T(e,2)))??Mh}function I(e,t){return T(e,t,void 0,void 0,Se)??0}function Re(e,t,r){if(r!=null){if(typeof r!="number"||!Fr(r))throw bs("int32");r|=0}S(e,t,r)}function y(e,t,r){S(e,t,ir(r))}function ne(e,t,r){De(e,t,cr(r),"")}function Rr(e,t,r){{Ft(e);const o=e.v;let a=0|o[p];if(r==null)V(o,a,t);else{var s=e=r===Ze?7:0|r[p],n=ot(e),i=n||Object.isFrozen(r);for(n||(e=0),i||(r=ve(r),s=0,e=at(e,a),i=!1),e|=5,e|=(4&e?512&e?512:1024&e?1024:0:void 0)??(ms?1024:0),n=0;n<r.length;n++){const c=r[n],u=xi(c);Object.is(c,u)||(i&&(r=ve(r),s=0,e=at(e,a),i=!1),r[n]=u)}e!==s&&(i&&(r=ve(r),e=at(e,a)),j(r,e)),V(o,a,t,r)}}}function Nr(e,t,r){Ft(e),it(e,t,X,2,!0).push(xi(r))}var $t=class{constructor(e,t,r){if(this.buffer=e,r&&!t)throw Error();this.g=t}};function Vs(e,t){if(typeof e=="string")return new $t(ui(e),t);if(Array.isArray(e))return new $t(new Uint8Array(e),t);if(e.constructor===Uint8Array)return new $t(e,!1);if(e.constructor===ArrayBuffer)return e=new Uint8Array(e),new $t(e,!1);if(e.constructor===Ee)return t=ys(e)||new Uint8Array(0),new $t(t,!0,e);if(e instanceof Uint8Array)return e=e.constructor===Uint8Array?e:new Uint8Array(e.buffer,e.byteOffset,e.byteLength),new $t(e,!1);throw Error()}function Ot(e,t){let r,s=0,n=0,i=0;const o=e.h;let a=e.g;do r=o[a++],s|=(127&r)<<i,i+=7;while(i<32&&128&r);if(i>32)for(n|=(127&r)>>4,i=3;i<32&&128&r;i+=7)r=o[a++],n|=(127&r)<<i;if(ct(e,a),!(128&r))return t(s>>>0,n>>>0);throw Error()}function Gs(e){let t=0,r=e.g;const s=r+10,n=e.h;for(;r<s;){const i=n[r++];if(t|=i,(128&i)==0)return ct(e,r),!!(127&t)}throw Error()}function je(e){const t=e.h;let r=e.g,s=t[r++],n=127&s;if(128&s&&(s=t[r++],n|=(127&s)<<7,128&s&&(s=t[r++],n|=(127&s)<<14,128&s&&(s=t[r++],n|=(127&s)<<21,128&s&&(s=t[r++],n|=s<<28,128&s&&128&t[r++]&&128&t[r++]&&128&t[r++]&&128&t[r++]&&128&t[r++])))))throw Error();return ct(e,r),n}function Ne(e){return je(e)>>>0}function Ur(e){var t=e.h;const r=e.g;var s=t[r],n=t[r+1];const i=t[r+2];return t=t[r+3],ct(e,e.g+4),e=2*((n=(s<<0|n<<8|i<<16|t<<24)>>>0)>>31)+1,s=n>>>23&255,n&=8388607,s==255?n?NaN:e*(1/0):s==0?1401298464324817e-60*e*n:e*Math.pow(2,s-150)*(n+8388608)}function Lh(e){return je(e)}function ct(e,t){if(e.g=t,t>e.l)throw Error()}function Ki(e,t){if(t<0)throw Error();const r=e.g;if((t=r+t)>e.l)throw Error();return e.g=t,r}function qi(e,t){if(t==0)return Je();var r=Ki(e,t);return e.Y&&e.j?r=e.h.subarray(r,r+t):(e=e.h,r=r===(t=r+t)?new Uint8Array(0):hh?e.slice(r,t):new Uint8Array(e.subarray(r,t))),r.length==0?Je():new Ee(r,vt)}var Xi=[];function Yi(e,t,r,s){if(jr.length){const n=jr.pop();return n.o(s),n.g.init(e,t,r,s),n}return new Fh(e,t,r,s)}function Qi(e){e.g.clear(),e.l=-1,e.h=-1,jr.length<100&&jr.push(e)}function Ji(e){var t=e.g;if(t.g==t.l)return!1;e.m=e.g.g;var r=Ne(e.g);if(t=r>>>3,!((r&=7)>=0&&r<=5)||t<1)throw Error();return e.l=t,e.h=r,!0}function Br(e){switch(e.h){case 0:e.h!=0?Br(e):Gs(e.g);break;case 1:ct(e=e.g,e.g+8);break;case 2:if(e.h!=2)Br(e);else{var t=Ne(e.g);ct(e=e.g,e.g+t)}break;case 5:ct(e=e.g,e.g+4);break;case 3:for(t=e.l;;){if(!Ji(e))throw Error();if(e.h==4){if(e.l!=t)throw Error();break}Br(e)}break;default:throw Error()}}function lr(e,t,r){const s=e.g.l;var n=Ne(e.g);let i=(n=e.g.g+n)-s;if(i<=0&&(e.g.l=n,r(t,e,void 0,void 0,void 0),i=n-e.g.g),i)throw Error();return e.g.g=n,e.g.l=s,t}function Hs(e){var t=Ne(e.g),r=Ki(e=e.g,t);if(e=e.h,Vc){var s,n=e;(s=ds)||(s=ds=new TextDecoder("utf-8",{fatal:!0})),t=r+t,n=r===0&&t===n.length?n:n.subarray(r,t);try{var i=s.decode(n)}catch(a){if(Cr===void 0){try{s.decode(new Uint8Array([128]))}catch{}try{s.decode(new Uint8Array([97])),Cr=!0}catch{Cr=!1}}throw!Cr&&(ds=void 0),a}}else{t=(i=r)+t,r=[];let a,c=null;for(;i<t;){var o=e[i++];o<128?r.push(o):o<224?i>=t?Qe():(a=e[i++],o<194||(192&a)!=128?(i--,Qe()):r.push((31&o)<<6|63&a)):o<240?i>=t-1?Qe():(a=e[i++],(192&a)!=128||o===224&&a<160||o===237&&a>=160||(192&(s=e[i++]))!=128?(i--,Qe()):r.push((15&o)<<12|(63&a)<<6|63&s)):o<=244?i>=t-2?Qe():(a=e[i++],(192&a)!=128||a-144+(o<<28)>>30!=0||(192&(s=e[i++]))!=128||(192&(n=e[i++]))!=128?(i--,Qe()):(o=(7&o)<<18|(63&a)<<12|(63&s)<<6|63&n,o-=65536,r.push(55296+(o>>10&1023),56320+(1023&o)))):Qe(),r.length>=8192&&(c=ei(c,r),r.length=0)}i=ei(c,r)}return i}function Zi(e){const t=Ne(e.g);return qi(e.g,t)}function Dr(e,t,r){var s=Ne(e.g);for(s=e.g.g+s;e.g.g<s;)r.push(t(e.g))}var Fh=class{constructor(e,t,r,s){if(Xi.length){const n=Xi.pop();n.init(e,t,r,s),e=n}else e=new class{constructor(n,i,o,a){this.h=null,this.j=!1,this.g=this.l=this.m=0,this.init(n,i,o,a)}init(n,i,o,{Y:a=!1,ea:c=!1}={}){this.Y=a,this.ea=c,n&&(n=Vs(n,this.ea),this.h=n.buffer,this.j=n.g,this.m=i||0,this.l=o!==void 0?this.m+o:this.h.length,this.g=this.m)}clear(){this.h=null,this.j=!1,this.g=this.l=this.m=0,this.Y=!1}}(e,t,r,s);this.g=e,this.m=this.g.g,this.h=this.l=-1,this.o(s)}o({ha:e=!1}={}){this.ha=e}},jr=[];function eo(e){return e?/^\d+$/.test(e)?(Lr(e),new zs(L,U)):null:xh||(xh=new zs(0,0))}var zs=class{constructor(e,t){this.h=e>>>0,this.g=t>>>0}};let xh;function to(e){return e?/^-?\d+$/.test(e)?(Lr(e),new Ws(L,U)):null:$h||($h=new Ws(0,0))}var Ws=class{constructor(e,t){this.h=e>>>0,this.g=t>>>0}};let $h;function It(e,t,r){for(;r>0||t>127;)e.g.push(127&t|128),t=(t>>>7|r<<25)>>>0,r>>>=7;e.g.push(t)}function Rt(e,t){for(;t>127;)e.g.push(127&t|128),t>>>=7;e.g.push(t)}function Vr(e,t){if(t>=0)Rt(e,t);else{for(let r=0;r<9;r++)e.g.push(127&t|128),t>>=7;e.g.push(1)}}function Ks(e){var t=L;e.g.push(t>>>0&255),e.g.push(t>>>8&255),e.g.push(t>>>16&255),e.g.push(t>>>24&255)}function Nt(e,t){t.length!==0&&(e.l.push(t),e.h+=t.length)}function me(e,t,r){Rt(e.g,8*t+r)}function qs(e,t){return me(e,t,2),t=e.g.end(),Nt(e,t),t.push(e.h),t}function Xs(e,t){var r=t.pop();for(r=e.h+e.g.length()-r;r>127;)t.push(127&r|128),r>>>=7,e.h++;t.push(r),e.h++}function Gr(e,t,r){me(e,t,2),Rt(e.g,r.length),Nt(e,e.g.end()),Nt(e,r)}function Hr(e,t,r,s){r!=null&&(t=qs(e,t),s(r,e),Xs(e,t))}function Ce(){const e=class{constructor(){throw Error()}};return Object.setPrototypeOf(e,e.prototype),e}var Ys=Ce(),ro=Ce(),Qs=Ce(),Js=Ce(),so=Ce(),no=Ce(),Oh=Ce(),zr=Ce(),io=Ce(),oo=Ce();function Te(e,t,r){var s=e.v;te&&te in s&&(s=s[te])&&delete s[t.g],t.h?t.j(e,t.h,t.g,r,t.l):t.j(e,t.g,r,t.l)}var m=class{constructor(e,t){this.v=Ri(e,t,void 0,2048)}toJSON(){return Ii(this)}j(){var n;var e=gu,t=this.v,r=e.g,s=te;if(At&&s&&((n=t[s])==null?void 0:n[r])!=null&&_t(Zc,3),t=e.g,pi&&te&&pi===void 0&&(s=(r=this.v)[te])&&(s=s.da))try{s(r,t,Eh)}catch(i){ri(i)}return e.h?e.m(this,e.h,e.g,e.l):e.m(this,e.g,e.defaultValue,e.l)}clone(){const e=this.v,t=0|e[p];return Os(this,e,t)?xs(this,e,!0):new this.constructor(Mt(e,t,!1))}};m.prototype[Et]=kt,m.prototype.toString=function(){return this.v.toString()};var Ut=class{constructor(e,t,r){this.g=e,this.h=t,e=Ys,this.l=!!e&&r===e||!1}};function Wr(e,t){return new Ut(e,t,Ys)}function ao(e,t,r,s,n){Hr(e,r,po(t,s),n)}const Ih=Wr((function(e,t,r,s,n){return e.h===2&&(lr(e,Ds(t,s,r),n),!0)}),ao),Rh=Wr((function(e,t,r,s,n){return e.h===2&&(lr(e,Ds(t,s,r),n),!0)}),ao);var Kr=Symbol(),qr=Symbol(),Zs=Symbol(),co=Symbol(),ho=Symbol();let uo,lo;function ht(e,t,r,s){var n=s[e];if(n)return n;(n={}).qa=s,n.T=(function(l){switch(typeof l){case"boolean":return Ch||(Ch=[0,void 0,!0]);case"number":return l>0?void 0:l===0?Th||(Th=[0,void 0]):[-l,void 0];case"string":return[0,l];case"object":return l}})(s[0]);var i=s[1];let o=1;i&&i.constructor===Object&&(n.ba=i,typeof(i=s[++o])=="function"&&(n.ma=!0,uo??(uo=i),lo??(lo=s[o+1]),i=s[o+=2]));const a={};for(;i&&Array.isArray(i)&&i.length&&typeof i[0]=="number"&&i[0]>0;){for(var c=0;c<i.length;c++)a[i[c]]=i;i=s[++o]}for(c=1;i!==void 0;){let l;typeof i=="number"&&(c+=i,i=s[++o]);var u=void 0;if(i instanceof Ut?l=i:(l=Ih,o--),l==null?void 0:l.l){i=s[++o],u=s;var h=o;typeof i=="function"&&(i=i(),u[h]=i),u=i}for(h=c+1,typeof(i=s[++o])=="number"&&i<0&&(h-=i,i=s[++o]);c<h;c++){const f=a[c];u?r(n,c,l,u,f):t(n,c,l,f)}}return s[e]=n}function fo(e){return Array.isArray(e)?e[0]instanceof Ut?e:[Rh,e]:[e,void 0]}function po(e,t){return e instanceof m?e.v:Array.isArray(e)?rt(e,t):void 0}function en(e,t,r,s){const n=r.g;e[t]=s?(i,o,a)=>n(i,o,a,s):n}function tn(e,t,r,s,n){const i=r.g;let o,a;e[t]=(c,u,h)=>i(c,u,h,a||(a=ht(qr,en,tn,s).T),o||(o=rn(s)),n)}function rn(e){let t=e[Zs];if(t!=null)return t;const r=ht(qr,en,tn,e);return t=r.ma?(s,n)=>uo(s,n,r):(s,n)=>{for(;Ji(n)&&n.h!=4;){var i=n.l,o=r[i];if(o==null){var a=r.ba;a&&(a=a[i])&&(a=Uh(a))!=null&&(o=r[i]=a)}if(o==null||!o(n,s,i)){if(o=(a=n).m,Br(a),a.ha)var c=void 0;else c=a.g.g-o,a.g.g=o,c=qi(a.g,c);o=void 0,a=s,c&&((o=a[te]??(a[te]=new Fs))[i]??(o[i]=[])).push(c)}}return(s=$r(s))&&(s.da=r.qa[ho]),!0},e[Zs]=t,e[ho]=Nh.bind(e),t}function Nh(e,t,r,s){var n=this[qr];const i=this[Zs],o=rt(void 0,n.T),a=$r(e);if(a){var c=!1,u=n.ba;if(u){if(n=(h,l,f)=>{if(f.length!==0)if(u[l])for(const v of f){h=Yi(v);try{c=!0,i(o,h)}finally{Qi(h)}}else s==null||s(e,l,f)},t==null)Or(a,n);else if(a!=null){const h=a[t];h&&n(a,t,h)}if(c){let h=0|e[p];if(2&h&&2048&h&&!(r!=null&&r.Ka))throw Error();const l=St(h),f=(v,x)=>{if(Oe(e,v,l)!=null){if((r==null?void 0:r.Qa)===1)return;throw Error()}x!=null&&(h=V(e,h,v,x,l)),delete a[v]};t==null?vi(o,0|o[p],((v,x)=>{f(v,x)})):f(t,Oe(o,t,l))}}}}function Uh(e){const t=(e=fo(e))[0].g;if(e=e[1]){const r=rn(e),s=ht(qr,en,tn,e).T;return(n,i,o)=>t(n,i,o,s,r)}return t}function Xr(e,t,r){e[t]=r.h}function Yr(e,t,r,s){let n,i;const o=r.h;e[t]=(a,c,u)=>o(a,c,u,i||(i=ht(Kr,Xr,Yr,s).T),n||(n=mo(s)))}function mo(e){let t=e[co];if(!t){const r=ht(Kr,Xr,Yr,e);t=(s,n)=>go(s,n,r),e[co]=t}return t}function go(e,t,r){vi(e,0|e[p],((s,n)=>{if(n!=null){var i=(function(o,a){var c=o[a];if(c)return c;if((c=o.ba)&&(c=c[a])){var u=(c=fo(c))[0].h;if(c=c[1]){const h=mo(c),l=ht(Kr,Xr,Yr,c).T;c=o.ma?lo(l,h):(f,v,x)=>u(f,v,x,l,h)}else c=u;return o[a]=c}})(r,s);i?i(t,n,s):s<500||_t(vs,3)}})),(e=$r(e))&&Or(e,((s,n,i)=>{for(Nt(t,t.g.end()),s=0;s<i.length;s++)Nt(t,ys(i[s])||new Uint8Array(0))}))}const Bh=se(0);function Bt(e,t){if(Array.isArray(t)){var r=0|t[p];if(4&r)return t;for(var s=0,n=0;s<t.length;s++){const i=e(t[s]);i!=null&&(t[n++]=i)}return n<s&&(t.length=n),(e=-1537&(5|r))!==r&&j(t,e),2&e&&Object.freeze(t),t}}function J(e,t,r){return new Ut(e,t,r)}function Dt(e,t,r){return new Ut(e,t,r)}function H(e,t,r){V(e,0|e[p],t,r,St(0|e[p]))}var Dh=Wr((function(e,t,r,s,n){if(e.h!==2)return!1;if(e=ve(e=lr(e,rt([void 0,void 0],s),n)),n=St(s=0|t[p]),2&s)throw Error();let i=Oe(t,r,n);if(i instanceof $e)(2&i.J)!=0?(i=i.V(),i.push(e),V(t,s,r,i,n)):i.Ma(e);else if(Array.isArray(i)){var o=0|i[p];8192&o||j(i,o|=8192),2&o&&(i=ji(i),V(t,s,r,i,n)),i.push(e)}else V(t,s,r,rr([e]),n);return!0}),(function(e,t,r,s,n){if(t instanceof $e)t.forEach(((i,o)=>{Hr(e,r,rt([o,i],s),n)}));else if(Array.isArray(t)){for(let i=0;i<t.length;i++){const o=t[i];Array.isArray(o)&&Hr(e,r,rt(o,s),n)}rr(t)}}));function yo(e,t,r){(t=Se(t))!=null&&(me(e,r,5),e=e.g,As(t),Ks(e))}function bo(e,t,r){if(t=(function(s){if(s==null)return s;const n=typeof s;if(n==="bigint")return String(nr(64,s));if(ar(s)){if(n==="string")return Mi(s);if(n==="number")return Ts(s)}})(t),t!=null&&(typeof t=="string"&&to(t),t!=null))switch(me(e,r,0),typeof t){case"number":e=e.g,Ct(t),It(e,L,U);break;case"bigint":r=BigInt.asUintN(64,t),r=new Ws(Number(r&BigInt(4294967295)),Number(r>>BigInt(32))),It(e.g,r.h,r.g);break;default:r=to(t),It(e.g,r.h,r.g)}}function vo(e,t,r){(t=Pt(t))!=null&&t!=null&&(me(e,r,0),Vr(e.g,t))}function _o(e,t,r){(t=Ci(t))!=null&&(me(e,r,0),e.g.g.push(t?1:0))}function wo(e,t,r){(t=X(t))!=null&&Gr(e,r,ti(t))}function Ao(e,t,r,s,n){Hr(e,r,po(t,s),n)}function Eo(e,t,r){(t=t==null||typeof t=="string"||t instanceof Ee?t:void 0)!=null&&Gr(e,r,Vs(t,!0).buffer)}function ko(e,t,r){return(e.h===5||e.h===2)&&(t=xt(t,0|t[p],r),e.h==2?Dr(e,Ur,t):t.push(Ur(e.g)),!0)}var B=J((function(e,t,r){return e.h===5&&(H(t,r,Ur(e.g)),!0)}),yo,zr),jh=Dt(ko,(function(e,t,r){if((t=Bt(Se,t))!=null)for(let o=0;o<t.length;o++){var s=e,n=r,i=t[o];i!=null&&(me(s,n,5),s=s.g,As(i),Ks(s))}}),zr),sn=Dt(ko,(function(e,t,r){if((t=Bt(Se,t))!=null&&t.length){me(e,r,2),Rt(e.g,4*t.length);for(let s=0;s<t.length;s++)r=e.g,As(t[s]),Ks(r)}}),zr),Vh=J((function(e,t,r){return e.h===5&&(H(t,r,(e=Ur(e.g))===0?void 0:e),!0)}),yo,zr),Ve=J((function(e,t,r){return ps?(e.h!==0?e=!1:(H(t,r,Ot(e.g,ki)),e=!0),e):e.h===0&&(H(t,r,Ot(e.g,ks)),!0)}),bo,no),nn=J((function(e,t,r){return ps?(e.h!==0?t=!1:(H(t,r,(e=Ot(e.g,ki))===Bh?void 0:e),t=!0),t):e.h===0&&(H(t,r,(e=Ot(e.g,ks))===0?void 0:e),!0)}),bo,no),Gh=J((function(e,t,r){return ps?(e.h!==0?e=!1:(H(t,r,Ot(e.g,lh)),e=!0),e):e.h===0&&(H(t,r,Ot(e.g,Es)),!0)}),(function(e,t,r){if(t=(function(s){if(s==null)return s;var n=typeof s;if(n==="bigint")return String(dh(64,s));if(ar(s)){if(n==="string")return n=Tt(Number(s)),tt(n)&&n>=0?s=String(n):((n=s.indexOf("."))!==-1&&(s=s.substring(0,n)),(n=s[0]!=="-"&&((n=s.length)<20||n===20&&s<="18446744073709551615"))||(Lr(s),s=sr(L,U))),s;if(n==="number")return(s=Tt(s))>=0&&tt(s)||(Ct(s),s=Es(L,U)),s}})(t),t!=null&&(typeof t=="string"&&eo(t),t!=null))switch(me(e,r,0),typeof t){case"number":e=e.g,Ct(t),It(e,L,U);break;case"bigint":r=BigInt.asUintN(64,t),r=new zs(Number(r&BigInt(4294967295)),Number(r>>BigInt(32))),It(e.g,r.h,r.g);break;default:r=eo(t),It(e.g,r.h,r.g)}}),Oh),z=J((function(e,t,r){return e.h===0&&(H(t,r,je(e.g)),!0)}),vo,Js),dr=Dt((function(e,t,r){return(e.h===0||e.h===2)&&(t=xt(t,0|t[p],r),e.h==2?Dr(e,je,t):t.push(je(e.g)),!0)}),(function(e,t,r){if((t=Bt(Pt,t))!=null&&t.length){r=qs(e,r);for(let s=0;s<t.length;s++)Vr(e.g,t[s]);Xs(e,r)}}),Js),jt=J((function(e,t,r){return e.h===0&&(H(t,r,(e=je(e.g))===0?void 0:e),!0)}),vo,Js),R=J((function(e,t,r){return e.h===0&&(H(t,r,Gs(e.g)),!0)}),_o,ro),ut=J((function(e,t,r){return e.h===0&&(H(t,r,(e=Gs(e.g))===!1?void 0:e),!0)}),_o,ro),Y=Dt((function(e,t,r){return e.h===2&&(e=Hs(e),xt(t,0|t[p],r).push(e),!0)}),(function(e,t,r){if((t=Bt(X,t))!=null)for(let o=0;o<t.length;o++){var s=e,n=r,i=t[o];i!=null&&Gr(s,n,ti(i))}}),Qs),Ge=J((function(e,t,r){return e.h===2&&(H(t,r,(e=Hs(e))===""?void 0:e),!0)}),wo,Qs),C=J((function(e,t,r){return e.h===2&&(H(t,r,Hs(e)),!0)}),wo,Qs),W=(function(e,t,r=Ys){return new Ut(e,t,r)})((function(e,t,r,s,n){return e.h===2&&(s=rt(void 0,s),xt(t,0|t[p],r).push(s),lr(e,s,n),!0)}),(function(e,t,r,s,n){if(Array.isArray(t)){for(let i=0;i<t.length;i++)Ao(e,t[i],r,s,n);1&(e=0|t[p])||j(t,1|e)}})),N=Wr((function(e,t,r,s,n,i){if(e.h!==2)return!1;let o=0|t[p];return Vi(t,o,i,r,St(o)),lr(e,t=Ds(t,s,r),n),!0}),Ao),So=J((function(e,t,r){return e.h===2&&(H(t,r,Zi(e)),!0)}),Eo,io),Hh=Dt((function(e,t,r){return(e.h===0||e.h===2)&&(t=xt(t,0|t[p],r),e.h==2?Dr(e,Ne,t):t.push(Ne(e.g)),!0)}),(function(e,t,r){if((t=Bt(Ti,t))!=null)for(let o=0;o<t.length;o++){var s=e,n=r,i=t[o];i!=null&&(me(s,n,0),Rt(s.g,i))}}),so),zh=J((function(e,t,r){return e.h===0&&(H(t,r,(e=Ne(e.g))===0?void 0:e),!0)}),(function(e,t,r){(t=Ti(t))!=null&&t!=null&&(me(e,r,0),Rt(e.g,t))}),so),ie=J((function(e,t,r){return e.h===0&&(H(t,r,je(e.g)),!0)}),(function(e,t,r){(t=Pt(t))!=null&&(t=parseInt(t,10),me(e,r,0),Vr(e.g,t))}),oo);class Wh{constructor(t,r){var s=oe;this.g=t,this.h=r,this.m=E,this.j=b,this.defaultValue=void 0,this.l=s.Oa!=null?_i:void 0}register(){Tr(this)}}function Pe(e,t){return new Wh(e,t)}function He(e,t){return(r,s)=>{{const i={ea:!0};s&&Object.assign(i,s),r=Yi(r,void 0,void 0,i);try{const o=new e,a=o.v;rn(t)(a,r);var n=o}finally{Qi(r)}}return n}}function Qr(e){return function(){const t=new class{constructor(){this.l=[],this.h=0,this.g=new class{constructor(){this.g=[]}length(){return this.g.length}end(){const o=this.g;return this.g=[],o}}}};go(this.v,t,ht(Kr,Xr,Yr,e)),Nt(t,t.g.end());const r=new Uint8Array(t.h),s=t.l,n=s.length;let i=0;for(let o=0;o<n;o++){const a=s[o];r.set(a,i),i+=a.length}return t.l=[r],r}}var Co=class extends m{constructor(e){super(e)}},To=[0,Ge,J((function(e,t,r){return e.h===2&&(H(t,r,(e=Zi(e))===Je()?void 0:e),!0)}),(function(e,t,r){if(t!=null){if(t instanceof m){const s=t.Ra;return void(s?(t=s(t),t!=null&&Gr(e,r,Vs(t,!0).buffer)):_t(vs,3))}if(Array.isArray(t))return void _t(vs,3)}Eo(e,t,r)}),io)];let on,Po=globalThis.trustedTypes;function Mo(e){var t;return on===void 0&&(on=(function(){let r=null;if(!Po)return r;try{const s=n=>n;r=Po.createPolicy("goog#html",{createHTML:s,createScript:s,createScriptURL:s})}catch{}return r})()),e=(t=on)?t.createScriptURL(e):e,new class{constructor(r){this.g=r}toString(){return this.g+""}}(e)}function Kh(e,...t){if(t.length===0)return Mo(e[0]);let r=e[0];for(let s=0;s<t.length;s++)r+=encodeURIComponent(t[s])+e[s+1];return Mo(r)}var Lo=[0,z,ie,R,-1,dr,ie,-1,R],qh=class extends m{constructor(e){super(e)}},Fo=[0,R,C,R,ie,-1,Dt((function(e,t,r){return(e.h===0||e.h===2)&&(t=xt(t,0|t[p],r),e.h==2?Dr(e,Lh,t):t.push(je(e.g)),!0)}),(function(e,t,r){if((t=Bt(Pt,t))!=null&&t.length){r=qs(e,r);for(let s=0;s<t.length;s++)Vr(e.g,t[s]);Xs(e,r)}}),oo),C,-1,[0,R,-1],ie,R,-1],xo=[0,3,R,-1,2,[0,z],[0,ie,R],[0,C,-1],[0]],$o=[0,C,-2],Oo=class extends m{constructor(e){super(e)}},Io=[0],Ro=[0,z,R,1,R,-4],oe=class extends m{constructor(e){super(e,2)}},G={};G[336783863]=[0,C,R,-1,z,[0,[1,2,3,4,5,6,7,8,9],N,Io,N,Fo,N,$o,N,Ro,N,Lo,N,[0,C,-2],N,[0,C,ie],N,xo,N,[0,ie,-1,R]],[0,C],R,[0,[1,3],[2,4],N,[0,dr],-1,N,[0,Y],-1,W,[0,C,-1]],C];var No=[0,nn,-1,ut,-3,nn,dr,Ge,jt,nn,-1,ut,jt,ut,-2,Ge];function P(e,t){Nr(e,3,t)}function _(e,t){Nr(e,4,t)}var Z=class extends m{constructor(e){super(e,500)}o(e){return b(this,0,7,e)}},fr=[-1,{}],Uo=[0,C,1,fr],Bo=[0,C,Y,fr];function ge(e,t){js(e,1,Z,t)}function F(e,t){Nr(e,10,t)}function k(e,t){Nr(e,15,t)}var ae=class extends m{constructor(e){super(e,500)}o(e){return b(this,0,1001,e)}},Do=[-500,W,[-500,Ge,-1,Y,-3,[-2,G,R],W,To,jt,-1,Uo,Bo,W,[0,Ge,ut],Ge,No,jt,Y,987,Y],4,W,[-500,C,-1,[-1,{}],998,C],W,[-500,C,Y,-1,[-2,{},R],997,Y,-1],jt,W,[-500,C,Y,fr,998,Y],Y,jt,Uo,Bo,W,[0,Ge,-1,fr],Y,-2,No,Ge,-1,ut,[0,ut,zh],978,fr,W,To];ae.prototype.g=Qr(Do);var Xh=He(ae,Do),Yh=class extends m{constructor(e){super(e)}},jo=class extends m{constructor(e){super(e)}g(){return Ie(this,Yh,1)}},Vo=[0,W,[0,z,B,C,-1]],Jr=He(jo,Vo),Qh=class extends m{constructor(e){super(e)}},Jh=class extends m{constructor(e){super(e)}},an=class extends m{constructor(e){super(e)}l(){return E(this,Qh,2)}g(){return Ie(this,Jh,5)}},Go=He(class extends m{constructor(e){super(e)}},[0,Y,dr,sn,[0,ie,[0,z,-3],[0,B,-3],[0,z,-1,[0,W,[0,z,-2]]],W,[0,B,-1,C,B]],C,-1,Ve,W,[0,z,B],Y,Ve]),Ho=class extends m{constructor(e){super(e)}},Vt=He(class extends m{constructor(e){super(e)}},[0,W,[0,B,-4]]),zo=class extends m{constructor(e){super(e)}},pr=He(class extends m{constructor(e){super(e)}},[0,W,[0,B,-4]]),Zh=class extends m{constructor(e){super(e)}},eu=[0,z,-1,sn,ie],Wo=class extends m{constructor(e){super(e)}};Wo.prototype.g=Qr([0,B,-4,Ve]);var tu=class extends m{constructor(e){super(e)}},ru=He(class extends m{constructor(e){super(e)}},[0,W,[0,1,z,C,Vo],Ve]),Ko=class extends m{constructor(e){super(e)}},su=class extends m{constructor(e){super(e)}na(){const e=T(this,1,void 0,void 0,Di);return e??Je()}},nu=class extends m{constructor(e){super(e)}},qo=[1,2],iu=He(class extends m{constructor(e){super(e)}},[0,W,[0,qo,N,[0,sn],N,[0,So],z,C],Ve]),cn=class extends m{constructor(e){super(e)}},Xo=[0,C,z,B,Y,-1],Yo=class extends m{constructor(e){super(e)}},ou=[0,R,-1],Qo=class extends m{constructor(e){super(e)}},Zr=[1,2,3,4,5,6],es=class extends m{constructor(e){super(e)}g(){return T(this,1,void 0,void 0,Di)!=null}l(){return X(T(this,2))!=null}},$=class extends m{constructor(e){super(e)}g(){return Ci(T(this,2))??!1}},Jo=[0,So,C,[0,z,Ve,-1],[0,Gh,Ve]],D=[0,Jo,R,[0,Zr,N,Ro,N,Fo,N,Lo,N,Io,N,$o,N,xo],ie],ts=class extends m{constructor(e){super(e)}},hn=[0,D,B,-1,z],au=Pe(502141897,ts);G[502141897]=hn;var cu=He(class extends m{constructor(e){super(e)}},[0,[0,ie,-1,jh,Hh],eu]),Zo=class extends m{constructor(e){super(e)}},ea=class extends m{constructor(e){super(e)}},un=[0,D,B,[0,D],R],hu=Pe(508968150,ea);G[508968150]=[0,D,hn,un,B,[0,[0,Jo]]],G[508968149]=un;var Gt=class extends m{constructor(e){super(e)}l(){return E(this,cn,2)}g(){S(this,2)}},ta=[0,D,Xo];G[478825465]=ta;var uu=class extends m{constructor(e){super(e)}},ra=class extends m{constructor(e){super(e)}},ln=class extends m{constructor(e){super(e)}},dn=class extends m{constructor(e){super(e)}},sa=class extends m{constructor(e){super(e)}},na=[0,D,[0,D],ta,-1],ia=[0,D,B,z],fn=[0,D,B],oa=[0,D,ia,fn,B],lu=Pe(479097054,sa);G[479097054]=[0,D,oa,na],G[463370452]=na,G[464864288]=ia;var du=Pe(462713202,dn);G[462713202]=oa,G[474472470]=fn;var fu=class extends m{constructor(e){super(e)}},aa=class extends m{constructor(e){super(e)}},ca=class extends m{constructor(e){super(e)}},ha=class extends m{constructor(e){super(e)}},pn=[0,D,B,-1,z],mn=[0,D,B,R];ha.prototype.g=Qr([0,D,fn,[0,D],hn,un,pn,mn]);var ua=class extends m{constructor(e){super(e)}},pu=Pe(456383383,ua);G[456383383]=[0,D,Xo];var la=class extends m{constructor(e){super(e)}},mu=Pe(476348187,la);G[476348187]=[0,D,ou];var da=class extends m{constructor(e){super(e)}},fa=class extends m{constructor(e){super(e)}},pa=[0,ie,-1],gu=Pe(458105876,class extends m{constructor(e){super(e)}g(){let e;var t=this.v;const r=0|t[p];return e=re(this,r),t=(function(s,n,i,o){var a=fa;!o&&Lt(s)&&(i=0|(n=s.v)[p]);var c=Oe(n,2);if(s=!1,c==null){if(o)return Oi();c=[]}else if(c.constructor===$e){if(!(2&c.J)||o)return c;c=c.V()}else Array.isArray(c)?s=!!(2&(0|c[p])):c=[];if(o){if(!c.length)return Oi();s||(s=!0,tr(c))}else s&&(s=!1,rr(c),c=ji(c));return!s&&32&i&&er(c,32),i=V(n,i,2,o=new $e(c,a,gh,void 0)),s||st(n,i),o})(this,t,r,e),!e&&fa&&(t.ra=!0),t}});G[458105876]=[0,pa,Dh,[!0,Ve,[0,C,-1,Y]],[0,dr,R,ie]];var gn=class extends m{constructor(e){super(e)}},ma=Pe(458105758,gn);G[458105758]=[0,D,C,pa];var yn=class extends m{constructor(e){super(e)}},ga=[0,Vh,-1,ut],yu=class extends m{constructor(e){super(e)}},ya=class extends m{constructor(e){super(e)}},bn=[1,2];ya.prototype.g=Qr([0,bn,N,ga,N,[0,W,ga]]);var ba=class extends m{constructor(e){super(e)}},bu=Pe(443442058,ba);G[443442058]=[0,D,C,z,B,Y,-1,R,B],G[514774813]=pn;var va=class extends m{constructor(e){super(e)}},vu=Pe(516587230,va);function vn(e,t){return t=t?t.clone():new cn,e.displayNamesLocale!==void 0?S(t,1,cr(e.displayNamesLocale)):e.displayNamesLocale===void 0&&S(t,1),e.maxResults!==void 0?Re(t,2,e.maxResults):"maxResults"in e&&S(t,2),e.scoreThreshold!==void 0?y(t,3,e.scoreThreshold):"scoreThreshold"in e&&S(t,3),e.categoryAllowlist!==void 0?Rr(t,4,e.categoryAllowlist):"categoryAllowlist"in e&&S(t,4),e.categoryDenylist!==void 0?Rr(t,5,e.categoryDenylist):"categoryDenylist"in e&&S(t,5),t}function _a(e){const t=Number(e);return Number.isSafeInteger(t)?t:String(e)}function _n(e,t=-1,r=""){return{categories:e.map((s=>({index:pe(s,1)??0??-1,score:I(s,2)??0,categoryName:X(T(s,3))??""??"",displayName:X(T(s,4))??""??""}))),headIndex:t,headName:r}}function _u(e){const t={classifications:Ie(e,tu,1).map((r=>{var s;return _n(((s=E(r,jo,4))==null?void 0:s.g())??[],pe(r,2)??0,X(T(r,3))??"")}))};return(function(r){return mh(ms?T(r,2,void 0,void 0,xr):T(r,2))})(e)!=null&&(t.timestampMs=_a(Wi(e))),t}function wa(e){var o,a;var t=it(e,3,Se,nt()),r=it(e,2,Pt,nt()),s=it(e,1,X,nt()),n=it(e,9,X,nt());const i={categories:[],keypoints:[]};for(let c=0;c<t.length;c++)i.categories.push({score:t[c],index:r[c]??-1,categoryName:s[c]??"",displayName:n[c]??""});if((t=(o=E(e,an,4))==null?void 0:o.l())&&(i.boundingBox={originX:pe(t,1,Be)??0,originY:pe(t,2,Be)??0,width:pe(t,3,Be)??0,height:pe(t,4,Be)??0,angle:0}),(a=E(e,an,4))==null?void 0:a.g().length)for(const c of E(e,an,4).g())i.keypoints.push({x:T(c,1,void 0,Be,Se)??0,y:T(c,2,void 0,Be,Se)??0,score:T(c,4,void 0,Be,Se)??0,label:X(T(c,3,void 0,Be))??""});return i}function rs(e){const t=[];for(const r of Ie(e,zo,1))t.push({x:I(r,1)??0,y:I(r,2)??0,z:I(r,3)??0,visibility:I(r,4)??0});return t}function mr(e){const t=[];for(const r of Ie(e,Ho,1))t.push({x:I(r,1)??0,y:I(r,2)??0,z:I(r,3)??0,visibility:I(r,4)??0});return t}function Aa(e){return Array.from(e,(t=>t>127?t-256:t))}function Ea(e,t){if(e.length!==t.length)throw Error(`Cannot compute cosine similarity between embeddings of different sizes (${e.length} vs. ${t.length}).`);let r=0,s=0,n=0;for(let i=0;i<e.length;i++)r+=e[i]*t[i],s+=e[i]*e[i],n+=t[i]*t[i];if(s<=0||n<=0)throw Error("Cannot compute cosine similarity on embedding with 0 norm.");return r/Math.sqrt(s*n)}let ss;G[516587230]=[0,D,pn,mn,B],G[518928384]=mn;const wu=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 ka(){if(ss===void 0)try{await WebAssembly.instantiate(wu),ss=!0}catch{ss=!1}return ss}async function gr(e,t=Kh``){const r=await ka()?"wasm_internal":"wasm_nosimd_internal";return{wasmLoaderPath:`${t}/${e}_${r}.js`,wasmBinaryPath:`${t}/${e}_${r}.wasm`}}var lt=class{};function Sa(){var e=navigator;return typeof OffscreenCanvas<"u"&&(!(function(t=navigator){return(t=t.userAgent).includes("Safari")&&!t.includes("Chrome")})(e)||!!((e=e.userAgent.match(/Version\/([\d]+).*Safari/))&&e.length>=1&&Number(e[1])>=17))}async function Ca(e){if(typeof importScripts!="function"){const t=document.createElement("script");return t.src=e.toString(),t.crossOrigin="anonymous",new Promise(((r,s)=>{t.addEventListener("load",(()=>{r()}),!1),t.addEventListener("error",(n=>{s(n)}),!1),document.body.appendChild(t)}))}try{importScripts(e.toString())}catch(t){if(!(t instanceof TypeError))throw t;await self.import(e.toString())}}function Ta(e){return e.videoWidth!==void 0?[e.videoWidth,e.videoHeight]:e.naturalWidth!==void 0?[e.naturalWidth,e.naturalHeight]:e.displayWidth!==void 0?[e.displayWidth,e.displayHeight]:[e.width,e.height]}function g(e,t,r){e.m||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target"),r(t=e.i.stringToNewUTF8(t)),e.i._free(t)}function Pa(e,t,r){if(!e.i.canvas)throw Error("No OpenGL canvas configured.");if(r?e.i._bindTextureToStream(r):e.i._bindTextureToCanvas(),!(r=e.i.canvas.getContext("webgl2")||e.i.canvas.getContext("webgl")))throw Error("Failed to obtain WebGL context from the provided canvas. `getContext()` should only be invoked with `webgl` or `webgl2`.");e.i.gpuOriginForWebTexturesIsBottomLeft&&r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,!0),r.texImage2D(r.TEXTURE_2D,0,r.RGBA,r.RGBA,r.UNSIGNED_BYTE,t),e.i.gpuOriginForWebTexturesIsBottomLeft&&r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,!1);const[s,n]=Ta(t);return!e.l||s===e.i.canvas.width&&n===e.i.canvas.height||(e.i.canvas.width=s,e.i.canvas.height=n),[s,n]}function Ma(e,t,r){e.m||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target");const s=new Uint32Array(t.length);for(let n=0;n<t.length;n++)s[n]=e.i.stringToNewUTF8(t[n]);t=e.i._malloc(4*s.length),e.i.HEAPU32.set(s,t>>2),r(t);for(const n of s)e.i._free(n);e.i._free(t)}function Me(e,t,r){e.i.simpleListeners=e.i.simpleListeners||{},e.i.simpleListeners[t]=r}function ze(e,t,r){let s=[];e.i.simpleListeners=e.i.simpleListeners||{},e.i.simpleListeners[t]=(n,i,o)=>{i?(r(s,o),s=[]):s.push(n)}}lt.forVisionTasks=function(e){return gr("vision",e)},lt.forTextTasks=function(e){return gr("text",e)},lt.forGenAiExperimentalTasks=function(e){return gr("genai_experimental",e)},lt.forGenAiTasks=function(e){return gr("genai",e)},lt.forAudioTasks=function(e){return gr("audio",e)},lt.isSimdSupported=function(){return ka()};async function Au(e,t,r,s){return e=await(async(n,i,o,a,c)=>{if(i&&await Ca(i),!self.ModuleFactory||o&&(await Ca(o),!self.ModuleFactory))throw Error("ModuleFactory not set.");return self.Module&&c&&((i=self.Module).locateFile=c.locateFile,c.mainScriptUrlOrBlob&&(i.mainScriptUrlOrBlob=c.mainScriptUrlOrBlob)),c=await self.ModuleFactory(self.Module||c),self.ModuleFactory=self.Module=void 0,new n(c,a)})(e,r.wasmLoaderPath,r.assetLoaderPath,t,{locateFile:n=>n.endsWith(".wasm")?r.wasmBinaryPath.toString():r.assetBinaryPath&&n.endsWith(".data")?r.assetBinaryPath.toString():n}),await e.o(s),e}function wn(e,t){const r=E(e.baseOptions,es,1)||new es;typeof t=="string"?(S(r,2,cr(t)),S(r,1)):t instanceof Uint8Array&&(S(r,1,_s(t,!1)),S(r,2)),b(e.baseOptions,0,1,r)}function La(e){try{const t=e.H.length;if(t===1)throw Error(e.H[0].message);if(t>1)throw Error("Encountered multiple errors: "+e.H.map((r=>r.message)).join(", "))}finally{e.H=[]}}function d(e,t){e.C=Math.max(e.C,t)}function ns(e,t){e.B=new Z,ne(e.B,2,"PassThroughCalculator"),P(e.B,"free_memory"),_(e.B,"free_memory_unused_out"),F(t,"free_memory"),ge(t,e.B)}function Ht(e,t){P(e.B,t),_(e.B,t+"_unused_out")}function is(e){e.g.addBoolToStream(!0,"free_memory",e.C)}var An=class{constructor(e){this.g=e,this.H=[],this.C=0,this.g.setAutoRenderToScreen(!1)}l(e,t=!0){var r,s,n,i,o,a;if(t){const c=e.baseOptions||{};if((r=e.baseOptions)!=null&&r.modelAssetBuffer&&((s=e.baseOptions)!=null&&s.modelAssetPath))throw Error("Cannot set both baseOptions.modelAssetPath and baseOptions.modelAssetBuffer");if(!((n=E(this.baseOptions,es,1))!=null&&n.g()||(i=E(this.baseOptions,es,1))!=null&&i.l()||(o=e.baseOptions)!=null&&o.modelAssetBuffer||(a=e.baseOptions)!=null&&a.modelAssetPath))throw Error("Either baseOptions.modelAssetPath or baseOptions.modelAssetBuffer must be set");if((function(u,h){let l=E(u.baseOptions,Qo,3);if(!l){var f=l=new Qo,v=new Oo;ur(f,4,Zr,v)}"delegate"in h&&(h.delegate==="GPU"?(h=l,f=new qh,ur(h,2,Zr,f)):(h=l,f=new Oo,ur(h,4,Zr,f))),b(u.baseOptions,0,3,l)})(this,c),c.modelAssetPath)return fetch(c.modelAssetPath.toString()).then((u=>{if(u.ok)return u.arrayBuffer();throw Error(`Failed to fetch model: ${c.modelAssetPath} (${u.status})`)})).then((u=>{try{this.g.i.FS_unlink("/model.dat")}catch{}this.g.i.FS_createDataFile("/","model.dat",new Uint8Array(u),!0,!1,!1),wn(this,"/model.dat"),this.m(),this.L()}));if(c.modelAssetBuffer instanceof Uint8Array)wn(this,c.modelAssetBuffer);else if(c.modelAssetBuffer)return(async function(u){const h=[];for(var l=0;;){const{done:f,value:v}=await u.read();if(f)break;h.push(v),l+=v.length}if(h.length===0)return new Uint8Array(0);if(h.length===1)return h[0];u=new Uint8Array(l),l=0;for(const f of h)u.set(f,l),l+=f.length;return u})(c.modelAssetBuffer).then((u=>{wn(this,u),this.m(),this.L()}))}return this.m(),this.L(),Promise.resolve()}L(){}ca(){let e;if(this.g.ca((t=>{e=Xh(t)})),!e)throw Error("Failed to retrieve CalculatorGraphConfig");return e}setGraph(e,t){this.g.attachErrorListener(((r,s)=>{this.H.push(Error(s))})),this.g.Ja(),this.g.setGraph(e,t),this.B=void 0,La(this)}finishProcessing(){this.g.finishProcessing(),La(this)}close(){this.B=void 0,this.g.closeGraph()}};function We(e,t){if(!e)throw Error(`Unable to obtain required WebGL resource: ${t}`);return e}An.prototype.close=An.prototype.close;class Eu{constructor(t,r,s,n){this.g=t,this.h=r,this.m=s,this.l=n}bind(){this.g.bindVertexArray(this.h)}close(){this.g.deleteVertexArray(this.h),this.g.deleteBuffer(this.m),this.g.deleteBuffer(this.l)}}function Fa(e,t,r){const s=e.g;if(r=We(s.createShader(r),"Failed to create WebGL shader"),s.shaderSource(r,t),s.compileShader(r),!s.getShaderParameter(r,s.COMPILE_STATUS))throw Error(`Could not compile WebGL shader: ${s.getShaderInfoLog(r)}`);return s.attachShader(e.h,r),r}function xa(e,t){const r=e.g,s=We(r.createVertexArray(),"Failed to create vertex array");r.bindVertexArray(s);const n=We(r.createBuffer(),"Failed to create buffer");r.bindBuffer(r.ARRAY_BUFFER,n),r.enableVertexAttribArray(e.O),r.vertexAttribPointer(e.O,2,r.FLOAT,!1,0,0),r.bufferData(r.ARRAY_BUFFER,new Float32Array([-1,-1,-1,1,1,1,1,-1]),r.STATIC_DRAW);const i=We(r.createBuffer(),"Failed to create buffer");return r.bindBuffer(r.ARRAY_BUFFER,i),r.enableVertexAttribArray(e.L),r.vertexAttribPointer(e.L,2,r.FLOAT,!1,0,0),r.bufferData(r.ARRAY_BUFFER,new Float32Array(t?[0,1,0,0,1,0,1,1]:[0,0,0,1,1,1,1,0]),r.STATIC_DRAW),r.bindBuffer(r.ARRAY_BUFFER,null),r.bindVertexArray(null),new Eu(r,s,n,i)}function En(e,t){if(e.g){if(t!==e.g)throw Error("Cannot change GL context once initialized")}else e.g=t}function ku(e,t,r,s){return En(e,t),e.h||(e.m(),e.D()),r?(e.u||(e.u=xa(e,!0)),r=e.u):(e.A||(e.A=xa(e,!1)),r=e.A),t.useProgram(e.h),r.bind(),e.l(),e=s(),r.g.bindVertexArray(null),e}function $a(e,t,r){return En(e,t),e=We(t.createTexture(),"Failed to create texture"),t.bindTexture(t.TEXTURE_2D,e),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_S,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_WRAP_T,t.CLAMP_TO_EDGE),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MIN_FILTER,r??t.LINEAR),t.texParameteri(t.TEXTURE_2D,t.TEXTURE_MAG_FILTER,r??t.LINEAR),t.bindTexture(t.TEXTURE_2D,null),e}function Oa(e,t,r){En(e,t),e.B||(e.B=We(t.createFramebuffer(),"Failed to create framebuffe.")),t.bindFramebuffer(t.FRAMEBUFFER,e.B),t.framebufferTexture2D(t.FRAMEBUFFER,t.COLOR_ATTACHMENT0,t.TEXTURE_2D,r,0)}function Su(e){var t;(t=e.g)==null||t.bindFramebuffer(e.g.FRAMEBUFFER,null)}var Ia=class{H(){return`
|
|
2
2
|
precision mediump float;
|
|
3
3
|
varying vec2 vTex;
|
|
4
4
|
uniform sampler2D inputTexture;
|
|
@@ -12,25 +12,25 @@
|
|
|
12
12
|
void main(void) {
|
|
13
13
|
gl_Position = vec4(aVertex, 0.0, 1.0);
|
|
14
14
|
vTex = aTex;
|
|
15
|
-
}`,e.VERTEX_SHADER),this.W=Fa(this,this.H(),e.FRAGMENT_SHADER),e.linkProgram(this.h),!e.getProgramParameter(this.h,e.LINK_STATUS))throw Error(`Error during program linking: ${e.getProgramInfoLog(this.h)}`);this.O=e.getAttribLocation(this.h,"aVertex"),this.L=e.getAttribLocation(this.h,"aTex")}D(){}l(){}close(){if(this.h){const e=this.g;e.deleteProgram(this.h),e.deleteShader(this.X),e.deleteShader(this.W)}this.B&&this.g.deleteFramebuffer(this.B),this.A&&this.A.close(),this.u&&this.u.close()}};function Ne(e,t){switch(t){case 0:return e.g.find((r=>r instanceof Uint8Array));case 1:return e.g.find((r=>r instanceof Float32Array));case 2:return e.g.find((r=>typeof WebGLTexture<"u"&&r instanceof WebGLTexture));default:throw Error(`Type is not supported: ${t}`)}}function kn(e){var t=Ne(e,1);if(!t){if(t=Ne(e,0))t=new Float32Array(t).map((s=>s/255));else{t=new Float32Array(e.width*e.height);const s=zt(e);var r=Sn(e);if(xa(r,s,Ra(e)),"iPad Simulator;iPhone Simulator;iPod Simulator;iPad;iPhone;iPod".split(";").includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"document"in self&&"ontouchend"in self.document){r=new Float32Array(e.width*e.height*4),s.readPixels(0,0,e.width,e.height,s.RGBA,s.FLOAT,r);for(let n=0,i=0;n<t.length;++n,i+=4)t[n]=r[i]}else s.readPixels(0,0,e.width,e.height,s.RED,s.FLOAT,t)}e.g.push(t)}return t}function Ra(e){let t=Ne(e,2);if(!t){const r=zt(e);t=Ua(e);const s=kn(e),n=Na(e);r.texImage2D(r.TEXTURE_2D,0,n,e.width,e.height,0,r.RED,r.FLOAT,s),Cn(e)}return t}function zt(e){if(!e.canvas)throw Error("Conversion to different image formats require that a canvas is passed when initializing the image.");return e.h||(e.h=We(e.canvas.getContext("webgl2"),"You cannot use a canvas that is already bound to a different type of rendering context.")),e.h}function Na(e){if(e=zt(e),!os)if(e.getExtension("EXT_color_buffer_float")&&e.getExtension("OES_texture_float_linear")&&e.getExtension("EXT_float_blend"))os=e.R32F;else{if(!e.getExtension("EXT_color_buffer_half_float"))throw Error("GPU does not fully support 4-channel float32 or float16 formats");os=e.R16F}return os}function Sn(e){return e.l||(e.l=new Ia),e.l}function Ua(e){const t=zt(e);t.viewport(0,0,e.width,e.height),t.activeTexture(t.TEXTURE0);let r=Ne(e,2);return r||(r=Oa(Sn(e),t,e.m?t.LINEAR:t.NEAREST),e.g.push(r),e.j=!0),t.bindTexture(t.TEXTURE_2D,r),r}function Cn(e){e.h.bindTexture(e.h.TEXTURE_2D,null)}var os,K=class{constructor(e,t,r,s,n,i,o){this.g=e,this.m=t,this.j=r,this.canvas=s,this.l=n,this.width=i,this.height=o,this.j&&--Ba===0&&console.error("You seem to be creating MPMask instances without invoking .close(). This leaks resources.")}Fa(){return!!Ne(this,0)}ka(){return!!Ne(this,1)}R(){return!!Ne(this,2)}ja(){return(t=Ne(e=this,0))||(t=kn(e),t=new Uint8Array(t.map((r=>Math.round(255*r)))),e.g.push(t)),t;var e,t}ia(){return kn(this)}N(){return Ra(this)}clone(){const e=[];for(const t of this.g){let r;if(t instanceof Uint8Array)r=new Uint8Array(t);else if(t instanceof Float32Array)r=new Float32Array(t);else{if(!(t instanceof WebGLTexture))throw Error(`Type is not supported: ${t}`);{const s=zt(this),n=Sn(this);s.activeTexture(s.TEXTURE1),r=Oa(n,s,this.m?s.LINEAR:s.NEAREST),s.bindTexture(s.TEXTURE_2D,r);const i=Na(this);s.texImage2D(s.TEXTURE_2D,0,i,this.width,this.height,0,s.RED,s.FLOAT,null),s.bindTexture(s.TEXTURE_2D,null),xa(n,s,r),Au(n,s,!1,(()=>{Ua(this),s.clearColor(0,0,0,0),s.clear(s.COLOR_BUFFER_BIT),s.drawArrays(s.TRIANGLE_FAN,0,4),Cn(this)})),Eu(n),Cn(this)}}e.push(r)}return new K(e,this.m,this.R(),this.canvas,this.l,this.width,this.height)}close(){this.j&&zt(this).deleteTexture(Ne(this,2)),Ba=-1}};K.prototype.close=K.prototype.close,K.prototype.clone=K.prototype.clone,K.prototype.getAsWebGLTexture=K.prototype.N,K.prototype.getAsFloat32Array=K.prototype.ia,K.prototype.getAsUint8Array=K.prototype.ja,K.prototype.hasWebGLTexture=K.prototype.R,K.prototype.hasFloat32Array=K.prototype.ka,K.prototype.hasUint8Array=K.prototype.Fa;var Ba=250;function _e(...e){return e.map((([t,r])=>({start:t,end:r})))}const ku=(function(e){return class extends e{Ja(){this.i._registerModelResourcesGraphService()}}})((Da=class{constructor(e,t){this.l=!0,this.i=e,this.g=null,this.h=0,this.m=typeof this.i._addIntToInputStream=="function",t!==void 0?this.i.canvas=t:Sa()?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(e){const t=await(await fetch(e)).arrayBuffer();e=!(e.endsWith(".pbtxt")||e.endsWith(".textproto")),this.setGraph(new Uint8Array(t),e)}setGraphFromString(e){this.setGraph(new TextEncoder().encode(e),!1)}setGraph(e,t){const r=e.length,s=this.i._malloc(r);this.i.HEAPU8.set(e,s),t?this.i._changeBinaryGraph(r,s):this.i._changeTextGraph(r,s),this.i._free(s)}configureAudio(e,t,r,s,n){this.i._configureAudio||console.warn('Attempting to use configureAudio without support for input audio. Is build dep ":gl_graph_runner_audio" missing?'),g(this,s||"input_audio",(i=>{g(this,n=n||"audio_header",(o=>{this.i._configureAudio(i,o,e,t??0,r)}))}))}setAutoResizeCanvas(e){this.l=e}setAutoRenderToScreen(e){this.i._setAutoRenderToScreen(e)}setGpuBufferVerticalFlip(e){this.i.gpuOriginForWebTexturesIsBottomLeft=e}ca(e){Me(this,"__graph_config__",(t=>{e(t)})),g(this,"__graph_config__",(t=>{this.i._getGraphConfig(t,void 0)})),delete this.i.simpleListeners.__graph_config__}attachErrorListener(e){this.i.errorListener=e}attachEmptyPacketListener(e,t){this.i.emptyPacketListeners=this.i.emptyPacketListeners||{},this.i.emptyPacketListeners[e]=t}addAudioToStream(e,t,r){this.addAudioToStreamWithShape(e,0,0,t,r)}addAudioToStreamWithShape(e,t,r,s,n){const i=4*e.length;this.h!==i&&(this.g&&this.i._free(this.g),this.g=this.i._malloc(i),this.h=i),this.i.HEAPF32.set(e,this.g/4),g(this,s,(o=>{this.i._addAudioToInputStream(this.g,t,r,o,n)}))}addGpuBufferToStream(e,t,r){g(this,t,(s=>{const[n,i]=Pa(this,e,s);this.i._addBoundTextureToStream(s,n,i,r)}))}addBoolToStream(e,t,r){g(this,t,(s=>{this.i._addBoolToInputStream(e,s,r)}))}addDoubleToStream(e,t,r){g(this,t,(s=>{this.i._addDoubleToInputStream(e,s,r)}))}addFloatToStream(e,t,r){g(this,t,(s=>{this.i._addFloatToInputStream(e,s,r)}))}addIntToStream(e,t,r){g(this,t,(s=>{this.i._addIntToInputStream(e,s,r)}))}addUintToStream(e,t,r){g(this,t,(s=>{this.i._addUintToInputStream(e,s,r)}))}addStringToStream(e,t,r){g(this,t,(s=>{g(this,e,(n=>{this.i._addStringToInputStream(n,s,r)}))}))}addStringRecordToStream(e,t,r){g(this,t,(s=>{Ma(this,Object.keys(e),(n=>{Ma(this,Object.values(e),(i=>{this.i._addFlatHashMapToInputStream(n,i,Object.keys(e).length,s,r)}))}))}))}addProtoToStream(e,t,r,s){g(this,r,(n=>{g(this,t,(i=>{const o=this.i._malloc(e.length);this.i.HEAPU8.set(e,o),this.i._addProtoToInputStream(o,e.length,i,n,s),this.i._free(o)}))}))}addEmptyPacketToStream(e,t){g(this,e,(r=>{this.i._addEmptyPacketToInputStream(r,t)}))}addBoolVectorToStream(e,t,r){g(this,t,(s=>{const n=this.i._allocateBoolVector(e.length);if(!n)throw Error("Unable to allocate new bool vector on heap.");for(const i of e)this.i._addBoolVectorEntry(n,i);this.i._addBoolVectorToInputStream(n,s,r)}))}addDoubleVectorToStream(e,t,r){g(this,t,(s=>{const n=this.i._allocateDoubleVector(e.length);if(!n)throw Error("Unable to allocate new double vector on heap.");for(const i of e)this.i._addDoubleVectorEntry(n,i);this.i._addDoubleVectorToInputStream(n,s,r)}))}addFloatVectorToStream(e,t,r){g(this,t,(s=>{const n=this.i._allocateFloatVector(e.length);if(!n)throw Error("Unable to allocate new float vector on heap.");for(const i of e)this.i._addFloatVectorEntry(n,i);this.i._addFloatVectorToInputStream(n,s,r)}))}addIntVectorToStream(e,t,r){g(this,t,(s=>{const n=this.i._allocateIntVector(e.length);if(!n)throw Error("Unable to allocate new int vector on heap.");for(const i of e)this.i._addIntVectorEntry(n,i);this.i._addIntVectorToInputStream(n,s,r)}))}addUintVectorToStream(e,t,r){g(this,t,(s=>{const n=this.i._allocateUintVector(e.length);if(!n)throw Error("Unable to allocate new unsigned int vector on heap.");for(const i of e)this.i._addUintVectorEntry(n,i);this.i._addUintVectorToInputStream(n,s,r)}))}addStringVectorToStream(e,t,r){g(this,t,(s=>{const n=this.i._allocateStringVector(e.length);if(!n)throw Error("Unable to allocate new string vector on heap.");for(const i of e)g(this,i,(o=>{this.i._addStringVectorEntry(n,o)}));this.i._addStringVectorToInputStream(n,s,r)}))}addBoolToInputSidePacket(e,t){g(this,t,(r=>{this.i._addBoolToInputSidePacket(e,r)}))}addDoubleToInputSidePacket(e,t){g(this,t,(r=>{this.i._addDoubleToInputSidePacket(e,r)}))}addFloatToInputSidePacket(e,t){g(this,t,(r=>{this.i._addFloatToInputSidePacket(e,r)}))}addIntToInputSidePacket(e,t){g(this,t,(r=>{this.i._addIntToInputSidePacket(e,r)}))}addUintToInputSidePacket(e,t){g(this,t,(r=>{this.i._addUintToInputSidePacket(e,r)}))}addStringToInputSidePacket(e,t){g(this,t,(r=>{g(this,e,(s=>{this.i._addStringToInputSidePacket(s,r)}))}))}addProtoToInputSidePacket(e,t,r){g(this,r,(s=>{g(this,t,(n=>{const i=this.i._malloc(e.length);this.i.HEAPU8.set(e,i),this.i._addProtoToInputSidePacket(i,e.length,n,s),this.i._free(i)}))}))}addBoolVectorToInputSidePacket(e,t){g(this,t,(r=>{const s=this.i._allocateBoolVector(e.length);if(!s)throw Error("Unable to allocate new bool vector on heap.");for(const n of e)this.i._addBoolVectorEntry(s,n);this.i._addBoolVectorToInputSidePacket(s,r)}))}addDoubleVectorToInputSidePacket(e,t){g(this,t,(r=>{const s=this.i._allocateDoubleVector(e.length);if(!s)throw Error("Unable to allocate new double vector on heap.");for(const n of e)this.i._addDoubleVectorEntry(s,n);this.i._addDoubleVectorToInputSidePacket(s,r)}))}addFloatVectorToInputSidePacket(e,t){g(this,t,(r=>{const s=this.i._allocateFloatVector(e.length);if(!s)throw Error("Unable to allocate new float vector on heap.");for(const n of e)this.i._addFloatVectorEntry(s,n);this.i._addFloatVectorToInputSidePacket(s,r)}))}addIntVectorToInputSidePacket(e,t){g(this,t,(r=>{const s=this.i._allocateIntVector(e.length);if(!s)throw Error("Unable to allocate new int vector on heap.");for(const n of e)this.i._addIntVectorEntry(s,n);this.i._addIntVectorToInputSidePacket(s,r)}))}addUintVectorToInputSidePacket(e,t){g(this,t,(r=>{const s=this.i._allocateUintVector(e.length);if(!s)throw Error("Unable to allocate new unsigned int vector on heap.");for(const n of e)this.i._addUintVectorEntry(s,n);this.i._addUintVectorToInputSidePacket(s,r)}))}addStringVectorToInputSidePacket(e,t){g(this,t,(r=>{const s=this.i._allocateStringVector(e.length);if(!s)throw Error("Unable to allocate new string vector on heap.");for(const n of e)g(this,n,(i=>{this.i._addStringVectorEntry(s,i)}));this.i._addStringVectorToInputSidePacket(s,r)}))}attachBoolListener(e,t){Me(this,e,t),g(this,e,(r=>{this.i._attachBoolListener(r)}))}attachBoolVectorListener(e,t){ze(this,e,t),g(this,e,(r=>{this.i._attachBoolVectorListener(r)}))}attachIntListener(e,t){Me(this,e,t),g(this,e,(r=>{this.i._attachIntListener(r)}))}attachIntVectorListener(e,t){ze(this,e,t),g(this,e,(r=>{this.i._attachIntVectorListener(r)}))}attachUintListener(e,t){Me(this,e,t),g(this,e,(r=>{this.i._attachUintListener(r)}))}attachUintVectorListener(e,t){ze(this,e,t),g(this,e,(r=>{this.i._attachUintVectorListener(r)}))}attachDoubleListener(e,t){Me(this,e,t),g(this,e,(r=>{this.i._attachDoubleListener(r)}))}attachDoubleVectorListener(e,t){ze(this,e,t),g(this,e,(r=>{this.i._attachDoubleVectorListener(r)}))}attachFloatListener(e,t){Me(this,e,t),g(this,e,(r=>{this.i._attachFloatListener(r)}))}attachFloatVectorListener(e,t){ze(this,e,t),g(this,e,(r=>{this.i._attachFloatVectorListener(r)}))}attachStringListener(e,t){Me(this,e,t),g(this,e,(r=>{this.i._attachStringListener(r)}))}attachStringVectorListener(e,t){ze(this,e,t),g(this,e,(r=>{this.i._attachStringVectorListener(r)}))}attachProtoListener(e,t,r){Me(this,e,t),g(this,e,(s=>{this.i._attachProtoListener(s,r||!1)}))}attachProtoVectorListener(e,t,r){ze(this,e,t),g(this,e,(s=>{this.i._attachProtoVectorListener(s,r||!1)}))}attachAudioListener(e,t,r){this.i._attachAudioListener||console.warn('Attempting to use attachAudioListener without support for output audio. Is build dep ":gl_graph_runner_audio_out" missing?'),Me(this,e,((s,n)=>{s=new Float32Array(s.buffer,s.byteOffset,s.length/4),t(s,n)})),g(this,e,(s=>{this.i._attachAudioListener(s,r||!1)}))}finishProcessing(){this.i._waitUntilIdle()}closeGraph(){this.i._closeGraph(),this.i.simpleListeners=void 0,this.i.emptyPacketListeners=void 0}},class extends Da{get ga(){return this.i}pa(e,t,r){g(this,t,(s=>{const[n,i]=Pa(this,e,s);this.ga._addBoundTextureAsImageToStream(s,n,i,r)}))}Z(e,t){Me(this,e,t),g(this,e,(r=>{this.ga._attachImageListener(r)}))}aa(e,t){ze(this,e,t),g(this,e,(r=>{this.ga._attachImageVectorListener(r)}))}}));var Da,we=class extends ku{};async function A(e,t,r){return(async function(s,n,i,o){return _u(s,n,i,o)})(e,r.canvas??(Sa()?void 0:document.createElement("canvas")),t,r)}function ja(e,t,r,s){if(e.U){const i=new Wo;if(r!=null&&r.regionOfInterest){if(!e.oa)throw Error("This task doesn't support region-of-interest.");var n=r.regionOfInterest;if(n.left>=n.right||n.top>=n.bottom)throw Error("Expected RectF with left < right and top < bottom.");if(n.left<0||n.top<0||n.right>1||n.bottom>1)throw Error("Expected RectF values to be in [0,1].");y(i,1,(n.left+n.right)/2),y(i,2,(n.top+n.bottom)/2),y(i,4,n.right-n.left),y(i,3,n.bottom-n.top)}else y(i,1,.5),y(i,2,.5),y(i,4,1),y(i,3,1);if(r!=null&&r.rotationDegrees){if((r==null?void 0:r.rotationDegrees)%90!=0)throw Error("Expected rotation to be a multiple of 90°.");if(y(i,5,-Math.PI*r.rotationDegrees/180),(r==null?void 0:r.rotationDegrees)%180!=0){const[o,a]=Ta(t);r=I(i,3)*a/o,n=I(i,4)*o/a,y(i,4,r),y(i,3,n)}}e.g.addProtoToStream(i.g(),"mediapipe.NormalizedRect",e.U,s)}e.g.pa(t,e.X,s??performance.now()),e.finishProcessing()}function Ae(e,t,r){var s;if((s=e.baseOptions)!=null&&s.g())throw Error("Task is not initialized with image mode. 'runningMode' must be set to 'IMAGE'.");ja(e,t,r,e.C+1)}function Le(e,t,r,s){var n;if(!((n=e.baseOptions)!=null&&n.g()))throw Error("Task is not initialized with video mode. 'runningMode' must be set to 'VIDEO'.");ja(e,t,r,s)}function Wt(e,t,r,s){var n=t.data;const i=t.width,o=i*(t=t.height);if((n instanceof Uint8Array||n instanceof Float32Array)&&n.length!==o)throw Error("Unsupported channel count: "+n.length/o);return e=new K([n],r,!1,e.g.i.canvas,e.P,i,t),s?e.clone():e}var ce=class extends An{constructor(e,t,r,s){super(e),this.g=e,this.X=t,this.U=r,this.oa=s,this.P=new Ia}l(e,t=!0){if("runningMode"in e&&S(this.baseOptions,2,or(!!e.runningMode&&e.runningMode!=="IMAGE")),e.canvas!==void 0&&this.g.i.canvas!==e.canvas)throw Error("You must create a new task to reset the canvas.");return super.l(e,t)}close(){this.P.close(),super.close()}};ce.prototype.close=ce.prototype.close;var he=class extends ce{constructor(e,t){super(new we(e,t),"image_in","norm_rect_in",!1),this.j={detections:[]},b(e=this.h=new ts,0,1,t=new O),y(this.h,2,.5),y(this.h,3,.3)}get baseOptions(){return E(this.h,O,1)}set baseOptions(e){b(this.h,0,1,e)}o(e){return"minDetectionConfidence"in e&&y(this.h,2,e.minDetectionConfidence??.5),"minSuppressionThreshold"in e&&y(this.h,3,e.minSuppressionThreshold??.3),this.l(e)}F(e,t){return this.j={detections:[]},Ae(this,e,t),this.j}G(e,t,r){return this.j={detections:[]},Le(this,e,r,t),this.j}m(){var e=new ae;F(e,"image_in"),F(e,"norm_rect_in"),k(e,"detections");const t=new oe;Te(t,iu,this.h);const r=new Z;ne(r,2,"mediapipe.tasks.vision.face_detector.FaceDetectorGraph"),P(r,"IMAGE:image_in"),P(r,"NORM_RECT:norm_rect_in"),_(r,"DETECTIONS:detections"),r.o(t),ge(e,r),this.g.attachProtoVectorListener("detections",((s,n)=>{for(const i of s)s=Go(i),this.j.detections.push(wa(s));d(this,n)})),this.g.attachEmptyPacketListener("detections",(s=>{d(this,s)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};he.prototype.detectForVideo=he.prototype.G,he.prototype.detect=he.prototype.F,he.prototype.setOptions=he.prototype.o,he.createFromModelPath=async function(e,t){return A(he,e,{baseOptions:{modelAssetPath:t}})},he.createFromModelBuffer=function(e,t){return A(he,e,{baseOptions:{modelAssetBuffer:t}})},he.createFromOptions=function(e,t){return A(he,e,t)};var Tn=_e([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]),Pn=_e([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]),Mn=_e([276,283],[283,282],[282,295],[295,285],[300,293],[293,334],[334,296],[296,336]),Va=_e([474,475],[475,476],[476,477],[477,474]),Ln=_e([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]),Fn=_e([46,53],[53,52],[52,65],[65,55],[70,63],[63,105],[105,66],[66,107]),Ga=_e([469,470],[470,471],[471,472],[472,469]),$n=_e([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]),Ha=[...Tn,...Pn,...Mn,...Ln,...Fn,...$n],za=_e([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 Wa(e){e.j={faceLandmarks:[],faceBlendshapes:[],facialTransformationMatrixes:[]}}var x=class extends ce{constructor(e,t){super(new we(e,t),"image_in","norm_rect",!1),this.j={faceLandmarks:[],faceBlendshapes:[],facialTransformationMatrixes:[]},this.outputFacialTransformationMatrixes=this.outputFaceBlendshapes=!1,b(e=this.h=new ea,0,1,t=new O),this.A=new Zo,b(this.h,0,3,this.A),this.u=new ts,b(this.h,0,2,this.u),Ie(this.u,4,1),y(this.u,2,.5),y(this.A,2,.5),y(this.h,4,.5)}get baseOptions(){return E(this.h,O,1)}set baseOptions(e){b(this.h,0,1,e)}o(e){return"numFaces"in e&&Ie(this.u,4,e.numFaces??1),"minFaceDetectionConfidence"in e&&y(this.u,2,e.minFaceDetectionConfidence??.5),"minTrackingConfidence"in e&&y(this.h,4,e.minTrackingConfidence??.5),"minFacePresenceConfidence"in e&&y(this.A,2,e.minFacePresenceConfidence??.5),"outputFaceBlendshapes"in e&&(this.outputFaceBlendshapes=!!e.outputFaceBlendshapes),"outputFacialTransformationMatrixes"in e&&(this.outputFacialTransformationMatrixes=!!e.outputFacialTransformationMatrixes),this.l(e)}F(e,t){return Wa(this),Ae(this,e,t),this.j}G(e,t,r){return Wa(this),Le(this,e,r,t),this.j}m(){var e=new ae;F(e,"image_in"),F(e,"norm_rect"),k(e,"face_landmarks");const t=new oe;Te(t,au,this.h);const r=new Z;ne(r,2,"mediapipe.tasks.vision.face_landmarker.FaceLandmarkerGraph"),P(r,"IMAGE:image_in"),P(r,"NORM_RECT:norm_rect"),_(r,"NORM_LANDMARKS:face_landmarks"),r.o(t),ge(e,r),this.g.attachProtoVectorListener("face_landmarks",((s,n)=>{for(const i of s)s=pr(i),this.j.faceLandmarks.push(rs(s));d(this,n)})),this.g.attachEmptyPacketListener("face_landmarks",(s=>{d(this,s)})),this.outputFaceBlendshapes&&(k(e,"blendshapes"),_(r,"BLENDSHAPES:blendshapes"),this.g.attachProtoVectorListener("blendshapes",((s,n)=>{if(this.outputFaceBlendshapes)for(const i of s)s=Jr(i),this.j.faceBlendshapes.push(_n(s.g()??[]));d(this,n)})),this.g.attachEmptyPacketListener("blendshapes",(s=>{d(this,s)}))),this.outputFacialTransformationMatrixes&&(k(e,"face_geometry"),_(r,"FACE_GEOMETRY:face_geometry"),this.g.attachProtoVectorListener("face_geometry",((s,n)=>{if(this.outputFacialTransformationMatrixes)for(const i of s)(s=E(s=ou(i),Qh,2))&&this.j.facialTransformationMatrixes.push({rows:pe(s,1)??0??0,columns:pe(s,2)??0??0,data:it(s,3,Se,nt()).slice()??[]});d(this,n)})),this.g.attachEmptyPacketListener("face_geometry",(s=>{d(this,s)}))),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};x.prototype.detectForVideo=x.prototype.G,x.prototype.detect=x.prototype.F,x.prototype.setOptions=x.prototype.o,x.createFromModelPath=function(e,t){return A(x,e,{baseOptions:{modelAssetPath:t}})},x.createFromModelBuffer=function(e,t){return A(x,e,{baseOptions:{modelAssetBuffer:t}})},x.createFromOptions=function(e,t){return A(x,e,t)},x.FACE_LANDMARKS_LIPS=Tn,x.FACE_LANDMARKS_LEFT_EYE=Pn,x.FACE_LANDMARKS_LEFT_EYEBROW=Mn,x.FACE_LANDMARKS_LEFT_IRIS=Va,x.FACE_LANDMARKS_RIGHT_EYE=Ln,x.FACE_LANDMARKS_RIGHT_EYEBROW=Fn,x.FACE_LANDMARKS_RIGHT_IRIS=Ga,x.FACE_LANDMARKS_FACE_OVAL=$n,x.FACE_LANDMARKS_CONTOURS=Ha,x.FACE_LANDMARKS_TESSELATION=za;var On=_e([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 Ka(e){e.gestures=[],e.landmarks=[],e.worldLandmarks=[],e.handedness=[]}function qa(e){return e.gestures.length===0?{gestures:[],landmarks:[],worldLandmarks:[],handedness:[],handednesses:[]}:{gestures:e.gestures,landmarks:e.landmarks,worldLandmarks:e.worldLandmarks,handedness:e.handedness,handednesses:e.handedness}}function Xa(e,t=!0){const r=[];for(const n of e){var s=Jr(n);e=[];for(const i of s.g())s=t&&pe(i,1)!=null?pe(i,1)??0:-1,e.push({score:I(i,2)??0,index:s,categoryName:X(T(i,3))??""??"",displayName:X(T(i,4))??""??""});r.push(e)}return r}var ue=class extends ce{constructor(e,t){super(new we(e,t),"image_in","norm_rect",!1),this.gestures=[],this.landmarks=[],this.worldLandmarks=[],this.handedness=[],b(e=this.j=new sa,0,1,t=new O),this.u=new dn,b(this.j,0,2,this.u),this.D=new ln,b(this.u,0,3,this.D),this.A=new ra,b(this.u,0,2,this.A),this.h=new cu,b(this.j,0,3,this.h),y(this.A,2,.5),y(this.u,4,.5),y(this.D,2,.5)}get baseOptions(){return E(this.j,O,1)}set baseOptions(e){b(this.j,0,1,e)}o(e){var n,i,o,a;if(Ie(this.A,3,e.numHands??1),"minHandDetectionConfidence"in e&&y(this.A,2,e.minHandDetectionConfidence??.5),"minTrackingConfidence"in e&&y(this.u,4,e.minTrackingConfidence??.5),"minHandPresenceConfidence"in e&&y(this.D,2,e.minHandPresenceConfidence??.5),e.cannedGesturesClassifierOptions){var t=new Gt,r=t,s=vn(e.cannedGesturesClassifierOptions,(n=E(this.h,Gt,3))==null?void 0:n.l());b(r,0,2,s),b(this.h,0,3,t)}else e.cannedGesturesClassifierOptions===void 0&&((i=E(this.h,Gt,3))==null||i.g());return e.customGesturesClassifierOptions?(b(r=t=new Gt,0,2,s=vn(e.customGesturesClassifierOptions,(o=E(this.h,Gt,4))==null?void 0:o.l())),b(this.h,0,4,t)):e.customGesturesClassifierOptions===void 0&&((a=E(this.h,Gt,4))==null||a.g()),this.l(e)}Ha(e,t){return Ka(this),Ae(this,e,t),qa(this)}Ia(e,t,r){return Ka(this),Le(this,e,r,t),qa(this)}m(){var e=new ae;F(e,"image_in"),F(e,"norm_rect"),k(e,"hand_gestures"),k(e,"hand_landmarks"),k(e,"world_hand_landmarks"),k(e,"handedness");const t=new oe;Te(t,hu,this.j);const r=new Z;ne(r,2,"mediapipe.tasks.vision.gesture_recognizer.GestureRecognizerGraph"),P(r,"IMAGE:image_in"),P(r,"NORM_RECT:norm_rect"),_(r,"HAND_GESTURES:hand_gestures"),_(r,"LANDMARKS:hand_landmarks"),_(r,"WORLD_LANDMARKS:world_hand_landmarks"),_(r,"HANDEDNESS:handedness"),r.o(t),ge(e,r),this.g.attachProtoVectorListener("hand_landmarks",((s,n)=>{for(const i of s){s=pr(i);const o=[];for(const a of xe(s,zo,1))o.push({x:I(a,1)??0,y:I(a,2)??0,z:I(a,3)??0,visibility:I(a,4)??0});this.landmarks.push(o)}d(this,n)})),this.g.attachEmptyPacketListener("hand_landmarks",(s=>{d(this,s)})),this.g.attachProtoVectorListener("world_hand_landmarks",((s,n)=>{for(const i of s){s=Vt(i);const o=[];for(const a of xe(s,Ho,1))o.push({x:I(a,1)??0,y:I(a,2)??0,z:I(a,3)??0,visibility:I(a,4)??0});this.worldLandmarks.push(o)}d(this,n)})),this.g.attachEmptyPacketListener("world_hand_landmarks",(s=>{d(this,s)})),this.g.attachProtoVectorListener("hand_gestures",((s,n)=>{this.gestures.push(...Xa(s,!1)),d(this,n)})),this.g.attachEmptyPacketListener("hand_gestures",(s=>{d(this,s)})),this.g.attachProtoVectorListener("handedness",((s,n)=>{this.handedness.push(...Xa(s)),d(this,n)})),this.g.attachEmptyPacketListener("handedness",(s=>{d(this,s)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};function Ya(e){return{landmarks:e.landmarks,worldLandmarks:e.worldLandmarks,handednesses:e.handedness,handedness:e.handedness}}ue.prototype.recognizeForVideo=ue.prototype.Ia,ue.prototype.recognize=ue.prototype.Ha,ue.prototype.setOptions=ue.prototype.o,ue.createFromModelPath=function(e,t){return A(ue,e,{baseOptions:{modelAssetPath:t}})},ue.createFromModelBuffer=function(e,t){return A(ue,e,{baseOptions:{modelAssetBuffer:t}})},ue.createFromOptions=function(e,t){return A(ue,e,t)},ue.HAND_CONNECTIONS=On;var le=class extends ce{constructor(e,t){super(new we(e,t),"image_in","norm_rect",!1),this.landmarks=[],this.worldLandmarks=[],this.handedness=[],b(e=this.h=new dn,0,1,t=new O),this.u=new ln,b(this.h,0,3,this.u),this.j=new ra,b(this.h,0,2,this.j),Ie(this.j,3,1),y(this.j,2,.5),y(this.u,2,.5),y(this.h,4,.5)}get baseOptions(){return E(this.h,O,1)}set baseOptions(e){b(this.h,0,1,e)}o(e){return"numHands"in e&&Ie(this.j,3,e.numHands??1),"minHandDetectionConfidence"in e&&y(this.j,2,e.minHandDetectionConfidence??.5),"minTrackingConfidence"in e&&y(this.h,4,e.minTrackingConfidence??.5),"minHandPresenceConfidence"in e&&y(this.u,2,e.minHandPresenceConfidence??.5),this.l(e)}F(e,t){return this.landmarks=[],this.worldLandmarks=[],this.handedness=[],Ae(this,e,t),Ya(this)}G(e,t,r){return this.landmarks=[],this.worldLandmarks=[],this.handedness=[],Le(this,e,r,t),Ya(this)}m(){var e=new ae;F(e,"image_in"),F(e,"norm_rect"),k(e,"hand_landmarks"),k(e,"world_hand_landmarks"),k(e,"handedness");const t=new oe;Te(t,uu,this.h);const r=new Z;ne(r,2,"mediapipe.tasks.vision.hand_landmarker.HandLandmarkerGraph"),P(r,"IMAGE:image_in"),P(r,"NORM_RECT:norm_rect"),_(r,"LANDMARKS:hand_landmarks"),_(r,"WORLD_LANDMARKS:world_hand_landmarks"),_(r,"HANDEDNESS:handedness"),r.o(t),ge(e,r),this.g.attachProtoVectorListener("hand_landmarks",((s,n)=>{for(const i of s)s=pr(i),this.landmarks.push(rs(s));d(this,n)})),this.g.attachEmptyPacketListener("hand_landmarks",(s=>{d(this,s)})),this.g.attachProtoVectorListener("world_hand_landmarks",((s,n)=>{for(const i of s)s=Vt(i),this.worldLandmarks.push(mr(s));d(this,n)})),this.g.attachEmptyPacketListener("world_hand_landmarks",(s=>{d(this,s)})),this.g.attachProtoVectorListener("handedness",((s,n)=>{var i=this.handedness,o=i.push;const a=[];for(const c of s){s=Jr(c);const u=[];for(const h of s.g())u.push({score:I(h,2)??0,index:pe(h,1)??0??-1,categoryName:X(T(h,3))??""??"",displayName:X(T(h,4))??""??""});a.push(u)}o.call(i,...a),d(this,n)})),this.g.attachEmptyPacketListener("handedness",(s=>{d(this,s)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};le.prototype.detectForVideo=le.prototype.G,le.prototype.detect=le.prototype.F,le.prototype.setOptions=le.prototype.o,le.createFromModelPath=function(e,t){return A(le,e,{baseOptions:{modelAssetPath:t}})},le.createFromModelBuffer=function(e,t){return A(le,e,{baseOptions:{modelAssetBuffer:t}})},le.createFromOptions=function(e,t){return A(le,e,t)},le.HAND_CONNECTIONS=On;var Qa=_e([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 Ja(e){e.h={faceLandmarks:[],faceBlendshapes:[],poseLandmarks:[],poseWorldLandmarks:[],poseSegmentationMasks:[],leftHandLandmarks:[],leftHandWorldLandmarks:[],rightHandLandmarks:[],rightHandWorldLandmarks:[]}}function Za(e){try{if(!e.D)return e.h;e.D(e.h)}finally{is(e)}}function as(e,t){e=pr(e),t.push(rs(e))}var M=class extends ce{constructor(e,t){super(new we(e,t),"input_frames_image",null,!1),this.h={faceLandmarks:[],faceBlendshapes:[],poseLandmarks:[],poseWorldLandmarks:[],poseSegmentationMasks:[],leftHandLandmarks:[],leftHandWorldLandmarks:[],rightHandLandmarks:[],rightHandWorldLandmarks:[]},this.outputPoseSegmentationMasks=this.outputFaceBlendshapes=!1,b(e=this.j=new ha,0,1,t=new O),this.I=new ln,b(this.j,0,2,this.I),this.W=new lu,b(this.j,0,3,this.W),this.u=new ts,b(this.j,0,4,this.u),this.O=new Zo,b(this.j,0,5,this.O),this.A=new aa,b(this.j,0,6,this.A),this.M=new ca,b(this.j,0,7,this.M),y(this.u,2,.5),y(this.u,3,.3),y(this.O,2,.5),y(this.A,2,.5),y(this.A,3,.3),y(this.M,2,.5),y(this.I,2,.5)}get baseOptions(){return E(this.j,O,1)}set baseOptions(e){b(this.j,0,1,e)}o(e){return"minFaceDetectionConfidence"in e&&y(this.u,2,e.minFaceDetectionConfidence??.5),"minFaceSuppressionThreshold"in e&&y(this.u,3,e.minFaceSuppressionThreshold??.3),"minFacePresenceConfidence"in e&&y(this.O,2,e.minFacePresenceConfidence??.5),"outputFaceBlendshapes"in e&&(this.outputFaceBlendshapes=!!e.outputFaceBlendshapes),"minPoseDetectionConfidence"in e&&y(this.A,2,e.minPoseDetectionConfidence??.5),"minPoseSuppressionThreshold"in e&&y(this.A,3,e.minPoseSuppressionThreshold??.3),"minPosePresenceConfidence"in e&&y(this.M,2,e.minPosePresenceConfidence??.5),"outputPoseSegmentationMasks"in e&&(this.outputPoseSegmentationMasks=!!e.outputPoseSegmentationMasks),"minHandLandmarksConfidence"in e&&y(this.I,2,e.minHandLandmarksConfidence??.5),this.l(e)}F(e,t,r){const s=typeof t!="function"?t:{};return this.D=typeof t=="function"?t:r,Ja(this),Ae(this,e,s),Za(this)}G(e,t,r,s){const n=typeof r!="function"?r:{};return this.D=typeof r=="function"?r:s,Ja(this),Le(this,e,n,t),Za(this)}m(){var e=new ae;F(e,"input_frames_image"),k(e,"pose_landmarks"),k(e,"pose_world_landmarks"),k(e,"face_landmarks"),k(e,"left_hand_landmarks"),k(e,"left_hand_world_landmarks"),k(e,"right_hand_landmarks"),k(e,"right_hand_world_landmarks");const t=new oe,r=new Co;ne(r,1,"type.googleapis.com/mediapipe.tasks.vision.holistic_landmarker.proto.HolisticLandmarkerGraphOptions"),(function(n,i){if(i!=null)if(Array.isArray(i))S(n,2,Ir(i,0,hr));else{if(!(typeof i=="string"||i instanceof Ee||gs(i)))throw Error("invalid value in Any.value field: "+i+" expected a ByteString, a base64 encoded string, a Uint8Array or a jspb array");De(n,2,_s(i,!1),Je())}})(r,this.j.g());const s=new Z;ne(s,2,"mediapipe.tasks.vision.holistic_landmarker.HolisticLandmarkerGraph"),js(s,8,Co,r),P(s,"IMAGE:input_frames_image"),_(s,"POSE_LANDMARKS:pose_landmarks"),_(s,"POSE_WORLD_LANDMARKS:pose_world_landmarks"),_(s,"FACE_LANDMARKS:face_landmarks"),_(s,"LEFT_HAND_LANDMARKS:left_hand_landmarks"),_(s,"LEFT_HAND_WORLD_LANDMARKS:left_hand_world_landmarks"),_(s,"RIGHT_HAND_LANDMARKS:right_hand_landmarks"),_(s,"RIGHT_HAND_WORLD_LANDMARKS:right_hand_world_landmarks"),s.o(t),ge(e,s),ns(this,e),this.g.attachProtoListener("pose_landmarks",((n,i)=>{as(n,this.h.poseLandmarks),d(this,i)})),this.g.attachEmptyPacketListener("pose_landmarks",(n=>{d(this,n)})),this.g.attachProtoListener("pose_world_landmarks",((n,i)=>{var o=this.h.poseWorldLandmarks;n=Vt(n),o.push(mr(n)),d(this,i)})),this.g.attachEmptyPacketListener("pose_world_landmarks",(n=>{d(this,n)})),this.outputPoseSegmentationMasks&&(_(s,"POSE_SEGMENTATION_MASK:pose_segmentation_mask"),Ht(this,"pose_segmentation_mask"),this.g.Z("pose_segmentation_mask",((n,i)=>{this.h.poseSegmentationMasks=[Wt(this,n,!0,!this.D)],d(this,i)})),this.g.attachEmptyPacketListener("pose_segmentation_mask",(n=>{this.h.poseSegmentationMasks=[],d(this,n)}))),this.g.attachProtoListener("face_landmarks",((n,i)=>{as(n,this.h.faceLandmarks),d(this,i)})),this.g.attachEmptyPacketListener("face_landmarks",(n=>{d(this,n)})),this.outputFaceBlendshapes&&(k(e,"extra_blendshapes"),_(s,"FACE_BLENDSHAPES:extra_blendshapes"),this.g.attachProtoListener("extra_blendshapes",((n,i)=>{var o=this.h.faceBlendshapes;this.outputFaceBlendshapes&&(n=Jr(n),o.push(_n(n.g()??[]))),d(this,i)})),this.g.attachEmptyPacketListener("extra_blendshapes",(n=>{d(this,n)}))),this.g.attachProtoListener("left_hand_landmarks",((n,i)=>{as(n,this.h.leftHandLandmarks),d(this,i)})),this.g.attachEmptyPacketListener("left_hand_landmarks",(n=>{d(this,n)})),this.g.attachProtoListener("left_hand_world_landmarks",((n,i)=>{var o=this.h.leftHandWorldLandmarks;n=Vt(n),o.push(mr(n)),d(this,i)})),this.g.attachEmptyPacketListener("left_hand_world_landmarks",(n=>{d(this,n)})),this.g.attachProtoListener("right_hand_landmarks",((n,i)=>{as(n,this.h.rightHandLandmarks),d(this,i)})),this.g.attachEmptyPacketListener("right_hand_landmarks",(n=>{d(this,n)})),this.g.attachProtoListener("right_hand_world_landmarks",((n,i)=>{var o=this.h.rightHandWorldLandmarks;n=Vt(n),o.push(mr(n)),d(this,i)})),this.g.attachEmptyPacketListener("right_hand_world_landmarks",(n=>{d(this,n)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};M.prototype.detectForVideo=M.prototype.G,M.prototype.detect=M.prototype.F,M.prototype.setOptions=M.prototype.o,M.createFromModelPath=function(e,t){return A(M,e,{baseOptions:{modelAssetPath:t}})},M.createFromModelBuffer=function(e,t){return A(M,e,{baseOptions:{modelAssetBuffer:t}})},M.createFromOptions=function(e,t){return A(M,e,t)},M.HAND_CONNECTIONS=On,M.POSE_CONNECTIONS=Qa,M.FACE_LANDMARKS_LIPS=Tn,M.FACE_LANDMARKS_LEFT_EYE=Pn,M.FACE_LANDMARKS_LEFT_EYEBROW=Mn,M.FACE_LANDMARKS_LEFT_IRIS=Va,M.FACE_LANDMARKS_RIGHT_EYE=Ln,M.FACE_LANDMARKS_RIGHT_EYEBROW=Fn,M.FACE_LANDMARKS_RIGHT_IRIS=Ga,M.FACE_LANDMARKS_FACE_OVAL=$n,M.FACE_LANDMARKS_CONTOURS=Ha,M.FACE_LANDMARKS_TESSELATION=za;var ye=class extends ce{constructor(e,t){super(new we(e,t),"input_image","norm_rect",!0),this.j={classifications:[]},b(e=this.h=new ua,0,1,t=new O)}get baseOptions(){return E(this.h,O,1)}set baseOptions(e){b(this.h,0,1,e)}o(e){return b(this.h,0,2,vn(e,E(this.h,cn,2))),this.l(e)}sa(e,t){return this.j={classifications:[]},Ae(this,e,t),this.j}ta(e,t,r){return this.j={classifications:[]},Le(this,e,r,t),this.j}m(){var e=new ae;F(e,"input_image"),F(e,"norm_rect"),k(e,"classifications");const t=new oe;Te(t,du,this.h);const r=new Z;ne(r,2,"mediapipe.tasks.vision.image_classifier.ImageClassifierGraph"),P(r,"IMAGE:input_image"),P(r,"NORM_RECT:norm_rect"),_(r,"CLASSIFICATIONS:classifications"),r.o(t),ge(e,r),this.g.attachProtoListener("classifications",((s,n)=>{this.j=bu(eu(s)),d(this,n)})),this.g.attachEmptyPacketListener("classifications",(s=>{d(this,s)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};ye.prototype.classifyForVideo=ye.prototype.ta,ye.prototype.classify=ye.prototype.sa,ye.prototype.setOptions=ye.prototype.o,ye.createFromModelPath=function(e,t){return A(ye,e,{baseOptions:{modelAssetPath:t}})},ye.createFromModelBuffer=function(e,t){return A(ye,e,{baseOptions:{modelAssetBuffer:t}})},ye.createFromOptions=function(e,t){return A(ye,e,t)};var de=class extends ce{constructor(e,t){super(new we(e,t),"image_in","norm_rect",!0),this.h=new la,this.embeddings={embeddings:[]},b(e=this.h,0,1,t=new O)}get baseOptions(){return E(this.h,O,1)}set baseOptions(e){b(this.h,0,1,e)}o(e){var t=this.h,r=E(this.h,Yo,2);return r=r?r.clone():new Yo,e.l2Normalize!==void 0?S(r,1,or(e.l2Normalize)):"l2Normalize"in e&&S(r,1),e.quantize!==void 0?S(r,2,or(e.quantize)):"quantize"in e&&S(r,2),b(t,0,2,r),this.l(e)}za(e,t){return Ae(this,e,t),this.embeddings}Aa(e,t,r){return Le(this,e,r,t),this.embeddings}m(){var e=new ae;F(e,"image_in"),F(e,"norm_rect"),k(e,"embeddings_out");const t=new oe;Te(t,fu,this.h);const r=new Z;ne(r,2,"mediapipe.tasks.vision.image_embedder.ImageEmbedderGraph"),P(r,"IMAGE:image_in"),P(r,"NORM_RECT:norm_rect"),_(r,"EMBEDDINGS:embeddings_out"),r.o(t),ge(e,r),this.g.attachProtoListener("embeddings_out",((s,n)=>{s=su(s),this.embeddings=(function(i){return{embeddings:xe(i,ru,1).map((o=>{var u,h;const a={headIndex:pe(o,3)??0??-1,headName:X(T(o,4))??""??""};var c=o.v;return Gi(c,0|c[p],Ko,Ns(o,1))!==void 0?(o=it(o=E(o,Ko,Ns(o,1),void 0),1,Se,nt()),a.floatEmbedding=o.slice()):(c=new Uint8Array(0),a.quantizedEmbedding=((h=(u=E(o,tu,Ns(o,2),void 0))==null?void 0:u.na())==null?void 0:h.h())??c),a})),timestampMs:_a(Wi(i))}})(s),d(this,n)})),this.g.attachEmptyPacketListener("embeddings_out",(s=>{d(this,s)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};de.cosineSimilarity=function(e,t){if(e.floatEmbedding&&t.floatEmbedding)e=Ea(e.floatEmbedding,t.floatEmbedding);else{if(!e.quantizedEmbedding||!t.quantizedEmbedding)throw Error("Cannot compute cosine similarity between quantized and float embeddings.");e=Ea(Aa(e.quantizedEmbedding),Aa(t.quantizedEmbedding))}return e},de.prototype.embedForVideo=de.prototype.Aa,de.prototype.embed=de.prototype.za,de.prototype.setOptions=de.prototype.o,de.createFromModelPath=function(e,t){return A(de,e,{baseOptions:{modelAssetPath:t}})},de.createFromModelBuffer=function(e,t){return A(de,e,{baseOptions:{modelAssetBuffer:t}})},de.createFromOptions=function(e,t){return A(de,e,t)};var xn=class{constructor(e,t,r){this.confidenceMasks=e,this.categoryMask=t,this.qualityScores=r}close(){var e,t;(e=this.confidenceMasks)==null||e.forEach((r=>{r.close()})),(t=this.categoryMask)==null||t.close()}};function Su(e){var r,s;const t=(function(n){return xe(n,Z,1)})(e.ca()).filter((n=>(X(T(n,1))??"").includes("mediapipe.tasks.TensorsToSegmentationCalculator")));if(e.u=[],t.length>1)throw Error("The graph has more than one mediapipe.tasks.TensorsToSegmentationCalculator.");t.length===1&&(((s=(r=E(t[0],oe,7))==null?void 0:r.j())==null?void 0:s.g())??new Map).forEach(((n,i)=>{e.u[Number(i)]=X(T(n,1))??""}))}function ec(e){e.categoryMask=void 0,e.confidenceMasks=void 0,e.qualityScores=void 0}function tc(e){try{const t=new xn(e.confidenceMasks,e.categoryMask,e.qualityScores);if(!e.j)return t;e.j(t)}finally{is(e)}}xn.prototype.close=xn.prototype.close;var ee=class extends ce{constructor(e,t){super(new we(e,t),"image_in","norm_rect",!1),this.u=[],this.outputCategoryMask=!1,this.outputConfidenceMasks=!0,this.h=new gn,this.A=new da,b(this.h,0,3,this.A),b(e=this.h,0,1,t=new O)}get baseOptions(){return E(this.h,O,1)}set baseOptions(e){b(this.h,0,1,e)}o(e){return e.displayNamesLocale!==void 0?S(this.h,2,cr(e.displayNamesLocale)):"displayNamesLocale"in e&&S(this.h,2),"outputCategoryMask"in e&&(this.outputCategoryMask=e.outputCategoryMask??!1),"outputConfidenceMasks"in e&&(this.outputConfidenceMasks=e.outputConfidenceMasks??!0),super.l(e)}L(){Su(this)}segment(e,t,r){const s=typeof t!="function"?t:{};return this.j=typeof t=="function"?t:r,ec(this),Ae(this,e,s),tc(this)}La(e,t,r,s){const n=typeof r!="function"?r:{};return this.j=typeof r=="function"?r:s,ec(this),Le(this,e,n,t),tc(this)}Da(){return this.u}m(){var e=new ae;F(e,"image_in"),F(e,"norm_rect");const t=new oe;Te(t,ma,this.h);const r=new Z;ne(r,2,"mediapipe.tasks.vision.image_segmenter.ImageSegmenterGraph"),P(r,"IMAGE:image_in"),P(r,"NORM_RECT:norm_rect"),r.o(t),ge(e,r),ns(this,e),this.outputConfidenceMasks&&(k(e,"confidence_masks"),_(r,"CONFIDENCE_MASKS:confidence_masks"),Ht(this,"confidence_masks"),this.g.aa("confidence_masks",((s,n)=>{this.confidenceMasks=s.map((i=>Wt(this,i,!0,!this.j))),d(this,n)})),this.g.attachEmptyPacketListener("confidence_masks",(s=>{this.confidenceMasks=[],d(this,s)}))),this.outputCategoryMask&&(k(e,"category_mask"),_(r,"CATEGORY_MASK:category_mask"),Ht(this,"category_mask"),this.g.Z("category_mask",((s,n)=>{this.categoryMask=Wt(this,s,!1,!this.j),d(this,n)})),this.g.attachEmptyPacketListener("category_mask",(s=>{this.categoryMask=void 0,d(this,s)}))),k(e,"quality_scores"),_(r,"QUALITY_SCORES:quality_scores"),this.g.attachFloatVectorListener("quality_scores",((s,n)=>{this.qualityScores=s,d(this,n)})),this.g.attachEmptyPacketListener("quality_scores",(s=>{this.categoryMask=void 0,d(this,s)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};ee.prototype.getLabels=ee.prototype.Da,ee.prototype.segmentForVideo=ee.prototype.La,ee.prototype.segment=ee.prototype.segment,ee.prototype.setOptions=ee.prototype.o,ee.createFromModelPath=function(e,t){return A(ee,e,{baseOptions:{modelAssetPath:t}})},ee.createFromModelBuffer=function(e,t){return A(ee,e,{baseOptions:{modelAssetBuffer:t}})},ee.createFromOptions=function(e,t){return A(ee,e,t)};var In=class{constructor(e,t,r){this.confidenceMasks=e,this.categoryMask=t,this.qualityScores=r}close(){var e,t;(e=this.confidenceMasks)==null||e.forEach((r=>{r.close()})),(t=this.categoryMask)==null||t.close()}};In.prototype.close=In.prototype.close;var Fe=class extends ce{constructor(e,t){super(new we(e,t),"image_in","norm_rect_in",!1),this.outputCategoryMask=!1,this.outputConfidenceMasks=!0,this.h=new gn,this.u=new da,b(this.h,0,3,this.u),b(e=this.h,0,1,t=new O)}get baseOptions(){return E(this.h,O,1)}set baseOptions(e){b(this.h,0,1,e)}o(e){return"outputCategoryMask"in e&&(this.outputCategoryMask=e.outputCategoryMask??!1),"outputConfidenceMasks"in e&&(this.outputConfidenceMasks=e.outputConfidenceMasks??!0),super.l(e)}segment(e,t,r,s){const n=typeof r!="function"?r:{};if(this.j=typeof r=="function"?r:s,this.qualityScores=this.categoryMask=this.confidenceMasks=void 0,r=this.C+1,s=new ya,t.keypoint&&t.scribble)throw Error("Cannot provide both keypoint and scribble.");if(t.keypoint){var i=new yn;De(i,3,or(!0),!1),De(i,1,ir(t.keypoint.x),0),De(i,2,ir(t.keypoint.y),0),ur(s,1,bn,i)}else{if(!t.scribble)throw Error("Must provide either a keypoint or a scribble.");{const a=new mu;for(i of t.scribble)De(t=new yn,3,or(!0),!1),De(t,1,ir(i.x),0),De(t,2,ir(i.y),0),js(a,1,yn,t);ur(s,2,bn,a)}}this.g.addProtoToStream(s.g(),"mediapipe.tasks.vision.interactive_segmenter.proto.RegionOfInterest","roi_in",r),Ae(this,e,n);e:{try{const a=new In(this.confidenceMasks,this.categoryMask,this.qualityScores);if(!this.j){var o=a;break e}this.j(a)}finally{is(this)}o=void 0}return o}m(){var e=new ae;F(e,"image_in"),F(e,"roi_in"),F(e,"norm_rect_in");const t=new oe;Te(t,ma,this.h);const r=new Z;ne(r,2,"mediapipe.tasks.vision.interactive_segmenter.InteractiveSegmenterGraphV2"),P(r,"IMAGE:image_in"),P(r,"ROI:roi_in"),P(r,"NORM_RECT:norm_rect_in"),r.o(t),ge(e,r),ns(this,e),this.outputConfidenceMasks&&(k(e,"confidence_masks"),_(r,"CONFIDENCE_MASKS:confidence_masks"),Ht(this,"confidence_masks"),this.g.aa("confidence_masks",((s,n)=>{this.confidenceMasks=s.map((i=>Wt(this,i,!0,!this.j))),d(this,n)})),this.g.attachEmptyPacketListener("confidence_masks",(s=>{this.confidenceMasks=[],d(this,s)}))),this.outputCategoryMask&&(k(e,"category_mask"),_(r,"CATEGORY_MASK:category_mask"),Ht(this,"category_mask"),this.g.Z("category_mask",((s,n)=>{this.categoryMask=Wt(this,s,!1,!this.j),d(this,n)})),this.g.attachEmptyPacketListener("category_mask",(s=>{this.categoryMask=void 0,d(this,s)}))),k(e,"quality_scores"),_(r,"QUALITY_SCORES:quality_scores"),this.g.attachFloatVectorListener("quality_scores",((s,n)=>{this.qualityScores=s,d(this,n)})),this.g.attachEmptyPacketListener("quality_scores",(s=>{this.categoryMask=void 0,d(this,s)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};Fe.prototype.segment=Fe.prototype.segment,Fe.prototype.setOptions=Fe.prototype.o,Fe.createFromModelPath=function(e,t){return A(Fe,e,{baseOptions:{modelAssetPath:t}})},Fe.createFromModelBuffer=function(e,t){return A(Fe,e,{baseOptions:{modelAssetBuffer:t}})},Fe.createFromOptions=function(e,t){return A(Fe,e,t)};var be=class extends ce{constructor(e,t){super(new we(e,t),"input_frame_gpu","norm_rect",!1),this.j={detections:[]},b(e=this.h=new ba,0,1,t=new O)}get baseOptions(){return E(this.h,O,1)}set baseOptions(e){b(this.h,0,1,e)}o(e){return e.displayNamesLocale!==void 0?S(this.h,2,cr(e.displayNamesLocale)):"displayNamesLocale"in e&&S(this.h,2),e.maxResults!==void 0?Ie(this.h,3,e.maxResults):"maxResults"in e&&S(this.h,3),e.scoreThreshold!==void 0?y(this.h,4,e.scoreThreshold):"scoreThreshold"in e&&S(this.h,4),e.categoryAllowlist!==void 0?Rr(this.h,5,e.categoryAllowlist):"categoryAllowlist"in e&&S(this.h,5),e.categoryDenylist!==void 0?Rr(this.h,6,e.categoryDenylist):"categoryDenylist"in e&&S(this.h,6),this.l(e)}F(e,t){return this.j={detections:[]},Ae(this,e,t),this.j}G(e,t,r){return this.j={detections:[]},Le(this,e,r,t),this.j}m(){var e=new ae;F(e,"input_frame_gpu"),F(e,"norm_rect"),k(e,"detections");const t=new oe;Te(t,gu,this.h);const r=new Z;ne(r,2,"mediapipe.tasks.vision.ObjectDetectorGraph"),P(r,"IMAGE:input_frame_gpu"),P(r,"NORM_RECT:norm_rect"),_(r,"DETECTIONS:detections"),r.o(t),ge(e,r),this.g.attachProtoVectorListener("detections",((s,n)=>{for(const i of s)s=Go(i),this.j.detections.push(wa(s));d(this,n)})),this.g.attachEmptyPacketListener("detections",(s=>{d(this,s)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};be.prototype.detectForVideo=be.prototype.G,be.prototype.detect=be.prototype.F,be.prototype.setOptions=be.prototype.o,be.createFromModelPath=async function(e,t){return A(be,e,{baseOptions:{modelAssetPath:t}})},be.createFromModelBuffer=function(e,t){return A(be,e,{baseOptions:{modelAssetBuffer:t}})},be.createFromOptions=function(e,t){return A(be,e,t)};var Rn=class{constructor(e,t,r){this.landmarks=e,this.worldLandmarks=t,this.segmentationMasks=r}close(){var e;(e=this.segmentationMasks)==null||e.forEach((t=>{t.close()}))}};function rc(e){e.landmarks=[],e.worldLandmarks=[],e.segmentationMasks=void 0}function sc(e){try{const t=new Rn(e.landmarks,e.worldLandmarks,e.segmentationMasks);if(!e.u)return t;e.u(t)}finally{is(e)}}Rn.prototype.close=Rn.prototype.close;var fe=class extends ce{constructor(e,t){super(new we(e,t),"image_in","norm_rect",!1),this.landmarks=[],this.worldLandmarks=[],this.outputSegmentationMasks=!1,b(e=this.h=new va,0,1,t=new O),this.A=new ca,b(this.h,0,3,this.A),this.j=new aa,b(this.h,0,2,this.j),Ie(this.j,4,1),y(this.j,2,.5),y(this.A,2,.5),y(this.h,4,.5)}get baseOptions(){return E(this.h,O,1)}set baseOptions(e){b(this.h,0,1,e)}o(e){return"numPoses"in e&&Ie(this.j,4,e.numPoses??1),"minPoseDetectionConfidence"in e&&y(this.j,2,e.minPoseDetectionConfidence??.5),"minTrackingConfidence"in e&&y(this.h,4,e.minTrackingConfidence??.5),"minPosePresenceConfidence"in e&&y(this.A,2,e.minPosePresenceConfidence??.5),"outputSegmentationMasks"in e&&(this.outputSegmentationMasks=e.outputSegmentationMasks??!1),this.l(e)}F(e,t,r){const s=typeof t!="function"?t:{};return this.u=typeof t=="function"?t:r,rc(this),Ae(this,e,s),sc(this)}G(e,t,r,s){const n=typeof r!="function"?r:{};return this.u=typeof r=="function"?r:s,rc(this),Le(this,e,n,t),sc(this)}m(){var e=new ae;F(e,"image_in"),F(e,"norm_rect"),k(e,"normalized_landmarks"),k(e,"world_landmarks"),k(e,"segmentation_masks");const t=new oe;Te(t,yu,this.h);const r=new Z;ne(r,2,"mediapipe.tasks.vision.pose_landmarker.PoseLandmarkerGraph"),P(r,"IMAGE:image_in"),P(r,"NORM_RECT:norm_rect"),_(r,"NORM_LANDMARKS:normalized_landmarks"),_(r,"WORLD_LANDMARKS:world_landmarks"),r.o(t),ge(e,r),ns(this,e),this.g.attachProtoVectorListener("normalized_landmarks",((s,n)=>{this.landmarks=[];for(const i of s)s=pr(i),this.landmarks.push(rs(s));d(this,n)})),this.g.attachEmptyPacketListener("normalized_landmarks",(s=>{this.landmarks=[],d(this,s)})),this.g.attachProtoVectorListener("world_landmarks",((s,n)=>{this.worldLandmarks=[];for(const i of s)s=Vt(i),this.worldLandmarks.push(mr(s));d(this,n)})),this.g.attachEmptyPacketListener("world_landmarks",(s=>{this.worldLandmarks=[],d(this,s)})),this.outputSegmentationMasks&&(_(r,"SEGMENTATION_MASK:segmentation_masks"),Ht(this,"segmentation_masks"),this.g.aa("segmentation_masks",((s,n)=>{this.segmentationMasks=s.map((i=>Wt(this,i,!0,!this.u))),d(this,n)})),this.g.attachEmptyPacketListener("segmentation_masks",(s=>{this.segmentationMasks=[],d(this,s)}))),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};fe.prototype.detectForVideo=fe.prototype.G,fe.prototype.detect=fe.prototype.F,fe.prototype.setOptions=fe.prototype.o,fe.createFromModelPath=function(e,t){return A(fe,e,{baseOptions:{modelAssetPath:t}})},fe.createFromModelBuffer=function(e,t){return A(fe,e,{baseOptions:{modelAssetBuffer:t}})},fe.createFromOptions=function(e,t){return A(fe,e,t)},fe.POSE_CONNECTIONS=Qa;const nc=.1,ic=.42,Nn=.24,Un=.14,Bn=.18,oc=.12,Cu=0,Tu=1,Pu=2;function ac(e){var h;const{detections:t,width:r,height:s}=e;if(t.length===0)return{hasFace:!1,faceCount:0,confidence:0,captureScore:0,isCentered:!1,passesQualityChecks:!1,feedback:"no-face",message:"No face detected. Center your face in the oval and look at the camera."};if(t.length>1)return{hasFace:!0,faceCount:t.length,confidence:((h=t[0])==null?void 0:h.confidence)??0,captureScore:0,isCentered:!1,passesQualityChecks:!1,feedback:"multiple-faces",message:"Multiple faces detected. Make sure only one person is in view."};const n=t[0],i=n.boundingBox;if(!i)return{hasFace:!0,faceCount:1,confidence:n.confidence,captureScore:0,isCentered:!1,passesQualityChecks:!1,feedback:"face-unclear",message:"Face detected, but the frame is unclear. Hold still and try again."};const o=i.width*i.height/(r*s);if(o<nc)return dt(n.confidence,"too-far","Move closer to the camera.");if(o>ic)return dt(n.confidence,"too-close","Move slightly farther away.");const a=(i.originX+i.width/2)/r,c=(i.originY+i.height/2)/s;if(a<.5-Un)return dt(n.confidence,"move-left","Move your face a little to the left.");if(a>.5+Un)return dt(n.confidence,"move-right","Move your face a little to the right.");if(c<.5-Bn)return dt(n.confidence,"move-down","Move your face slightly down.");if(c>.5+Bn)return dt(n.confidence,"move-up","Move your face slightly up.");const u=Mu(n.keypoints);return u?dt(n.confidence,u.feedback,u.message):{hasFace:!0,faceCount:1,confidence:n.confidence,captureScore:Lu(n.confidence,a,c,o),isCentered:!0,passesQualityChecks:!0,feedback:"good",message:"Hold still. Capturing automatically..."}}function Mu(e){const t=e[Cu],r=e[Tu],s=e[Pu];if(!t||!r||!s)return null;const n=(t.x+r.x)/2,i=Math.abs(r.x-t.x);if(i===0)return null;const o=(s.x-n)/i;return o<=-oc?{feedback:"turn-left",message:"Turn slightly left so your face points at the camera."}:o>=oc?{feedback:"turn-right",message:"Turn slightly right so your face points at the camera."}:null}function dt(e,t,r){return{hasFace:!0,faceCount:1,confidence:e,captureScore:0,isCentered:!1,passesQualityChecks:!1,feedback:t,message:r}}function O2(e){return e}function Lu(e,t,r,s){const n=Math.abs(t-.5)/Un,i=Math.abs(r-.5)/Bn,o=1-Math.min((n+i)/2,1),a=Math.max(Math.abs(Nn-nc),Math.abs(ic-Nn)),c=1-Math.min(Math.abs(s-Nn)/a,1);return Number((e*.55+o*.3+c*.15).toFixed(4))}const Fu="https://cdn.jsdelivr.net/npm/@mediapipe/tasks-vision/wasm",$u="https://storage.googleapis.com/mediapipe-models/face_detector/blaze_face_short_range/float16/1/blaze_face_short_range.tflite",Ou=.7;let cc=null,hc=null,uc=null;function xu(){return cc??(cc=lt.forVisionTasks(Fu)),cc}function Iu(){return hc??(hc=dc("IMAGE")),hc}function lc(){return uc??(uc=dc("VIDEO")),uc}async function dc(e){const t=await xu();return he.createFromOptions(t,{baseOptions:{modelAssetPath:$u},runningMode:e,minDetectionConfidence:Ou})}async function Dn(e){const r=(await Iu()).detect(e);return ac({detections:pc(r.detections),width:e.naturalWidth,height:e.naturalHeight})}async function fc(e,t){const s=(await lc()).detectForVideo(e,t);return ac({detections:pc(s.detections),width:e.videoWidth,height:e.videoHeight})}function pc(e){return e.map(t=>{var r;return{boundingBox:t.boundingBox?{originX:t.boundingBox.originX,originY:t.boundingBox.originY,width:t.boundingBox.width,height:t.boundingBox.height}:void 0,confidence:((r=t.categories[0])==null?void 0:r.score)??0,keypoints:t.keypoints.map(s=>({x:s.x,y:s.y}))}})}const Ru="Take a selfie",Nu="Use this capture";function mc(e){return{presentation:(e==null?void 0:e.presentation)??"popup",capturePreference:(e==null?void 0:e.capturePreference)??"auto-preferred",allowMediaPickerFallback:(e==null?void 0:e.allowMediaPickerFallback)??!0,container:e==null?void 0:e.container,label:(e==null?void 0:e.label)??Ru,confirmLabel:(e==null?void 0:e.confirmLabel)??Nu}}async function Uu(e){var n,i;const t=/WhatsApp/i.test(e.userAgent??navigator.userAgent),r=e.hasMediaDevices??typeof((n=navigator.mediaDevices)==null?void 0:n.getUserMedia)=="function";let s=!1;return!t&&r&&e.capturePreference==="auto-preferred"&&(s=await(((i=e.probeAutoCapture)==null?void 0:i.call(e))??Du())),{prefersMediaPicker:t,supportsMediaDevices:r,supportsAutoCapture:s}}function Bu(e,t){const r=[];return t.supportsMediaDevices&&(e.capturePreference==="auto-preferred"&&t.supportsAutoCapture&&r.push("auto-camera"),r.push("manual-camera")),e.allowMediaPickerFallback&&(r.length===0||r[r.length-1]!=="media-picker")&&r.push("media-picker"),{presentation:e.presentation,steps:r,capabilities:t}}async function Du(){if(typeof window.requestAnimationFrame!="function"||typeof window.cancelAnimationFrame!="function"||!document.createElement("canvas").getContext("2d"))return!1;try{return await lc(),!0}catch{return!1}}class jn extends Error{constructor(t,r){super(t),this.name="CameraAccessError",(r==null?void 0:r.cause)!==void 0&&Object.defineProperty(this,"cause",{configurable:!0,value:r.cause})}}async function ju(){var e;if(!((e=navigator.mediaDevices)!=null&&e.getUserMedia))throw new jn("In-browser camera capture is not supported in this browser.");try{return await navigator.mediaDevices.getUserMedia({video:{facingMode:{ideal:"user"}},audio:!1})}catch(t){throw new jn(Wu(t),{cause:t})}}async function Vu(e,t="Failed to start the camera preview."){if(e.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA){await e.play();return}await new Promise((r,s)=>{const n=()=>{o(),r()},i=()=>{o(),s(new Error(t))},o=()=>{e.removeEventListener("loadedmetadata",n),e.removeEventListener("error",i)};e.addEventListener("loadedmetadata",n,{once:!0}),e.addEventListener("error",i,{once:!0})}),await e.play()}function Gu(e){e.play().catch(()=>{})}function Hu(){const e=document.createElement("canvas"),t=document.createElement("canvas");let r=!1;const s=i=>{const o=i.getContext("2d");if(!o)throw new Error("Failed to initialize camera capture.");return o},n=(i,o)=>{if(!i.videoWidth||!i.videoHeight)throw new Error("Camera preview is not ready yet.");(o.width!==i.videoWidth||o.height!==i.videoHeight)&&(o.width=i.videoWidth,o.height=i.videoHeight),s(o).drawImage(i,0,0,o.width,o.height)};return{async captureBlob(i){return n(i,e),yc(e)},storeBestFrame(i){n(i,t),r=!0},hasStoredBestFrame(){return r},async storedBestFrameToBlob(){if(!r)throw new Error("No best frame is available.");return yc(t)},resetStoredBestFrame(){r=!1,t.width=0,t.height=0}}}function gc(){return new Promise(e=>{const t=document.createElement("input");t.type="file",t.accept="image/*",t.capture="user",t.style.display="none",t.addEventListener("change",()=>{var i;const n=((i=t.files)==null?void 0:i[0])??null;s(),e(n)});const r=()=>{setTimeout(()=>{var n;(n=t.files)!=null&&n.length||(s(),e(null))},500)};window.addEventListener("focus",r,{once:!0});function s(){window.removeEventListener("focus",r),t.remove()}document.body.appendChild(t),t.click()})}function Vn(e){return new Promise((t,r)=>{const s=URL.createObjectURL(e),n=new Image;n.onload=()=>{URL.revokeObjectURL(s),t(n)},n.onerror=()=>{URL.revokeObjectURL(s),r(new Error("Failed to load captured image"))},n.src=s})}function zu(e){return new Promise((t,r)=>{const s=new FileReader;s.onload=()=>t(s.result),s.onerror=()=>r(new Error("Failed to read image")),s.readAsDataURL(e)})}function Wu(e){if(e instanceof DOMException)switch(e.name){case"NotAllowedError":case"SecurityError":return"Camera access was denied. Allow camera access and try again.";case"NotFoundError":return"No camera was found on this device.";case"NotReadableError":return"The camera is already in use by another application.";default:return e.message||"Failed to access the camera."}return e instanceof Error?e.message:"Failed to access the camera."}function yc(e){return new Promise((t,r)=>{e.toBlob(s=>{if(!s){r(new Error("Failed to capture an image."));return}t(s)},"image/jpeg",.92)})}const Ku="2147483647";async function bc(e){var s;const t=mc(e);if(t.presentation==="embedded")return qu(t);if(!(typeof((s=navigator.mediaDevices)==null?void 0:s.getUserMedia)=="function")){if(t.allowMediaPickerFallback)return gc();throw new Error("No supported capture strategy is available in this environment.")}return Yu(t)}async function qu(e){await Promise.resolve().then(()=>Rc);const t=Xu(e.container),r=t.tagName.toLowerCase()==="simface-capture",s=r?t:document.createElement("simface-capture");return r||t.appendChild(s),s.embedded=!0,s.label=e.label,s.confirmLabel=e.confirmLabel,s.capturePreference=e.capturePreference,s.allowMediaPickerFallback=e.allowMediaPickerFallback,new Promise((n,i)=>{const o=()=>{s.removeEventListener("simface-captured",a),s.removeEventListener("simface-cancelled",c),s.removeEventListener("simface-error",u),s.active=!1,r||s.remove()},a=h=>{o(),n(h.detail.imageBlob)},c=()=>{o(),n(null)},u=h=>{o(),i(new Error(h.detail.error))};s.addEventListener("simface-captured",a),s.addEventListener("simface-cancelled",c),s.addEventListener("simface-error",u),s.startCapture().catch(h=>{o(),i(h instanceof Error?h:new Error("Embedded capture failed."))})})}function Xu(e){if(!e)throw new Error("Embedded capture requires a container element or selector.");if(e instanceof HTMLElement)return e;const t=document.querySelector(e);if(!t)throw new Error(`No element matched the embedded capture container selector "${e}".`);return t}async function Yu(e){return await Promise.resolve().then(()=>Rc),new Promise((t,r)=>{let s=!1,n=null;const i=document.createElement("div");i.setAttribute("data-simface-camera-overlay","true"),i.setAttribute("role","dialog"),i.setAttribute("aria-modal","true"),Qu(i,{position:"fixed",inset:"0",zIndex:Ku,display:"flex",alignItems:"center",justifyContent:"center",padding:"24px",background:"rgba(15, 23, 42, 0.82)",colorScheme:"light"});const o=document.createElement("simface-capture");o.label=e.label,o.confirmLabel=e.confirmLabel,o.capturePreference=e.capturePreference,o.allowMediaPickerFallback=e.allowMediaPickerFallback,i.appendChild(o),document.body.appendChild(i);const a=()=>{n&&window.removeEventListener("keydown",n),o.removeEventListener("simface-captured",u),o.removeEventListener("simface-cancelled",h),o.removeEventListener("simface-error",l),o.active=!1,i.remove()},c=(f,v)=>{if(!s){if(s=!0,a(),v){r(v);return}t(f)}},u=f=>{c(f.detail.imageBlob)},h=()=>{c(null)},l=f=>{c(null,new Error(f.detail.error))};n=f=>{f.key==="Escape"&&c(null)},o.addEventListener("simface-captured",u),o.addEventListener("simface-cancelled",h),o.addEventListener("simface-error",l),window.addEventListener("keydown",n),o.startCapture().catch(f=>{c(null,f instanceof Error?f:new Error("Popup capture failed."))})})}function Qu(e,t){Object.assign(e.style,t)}/**
|
|
15
|
+
}`,e.VERTEX_SHADER),this.W=Fa(this,this.H(),e.FRAGMENT_SHADER),e.linkProgram(this.h),!e.getProgramParameter(this.h,e.LINK_STATUS))throw Error(`Error during program linking: ${e.getProgramInfoLog(this.h)}`);this.O=e.getAttribLocation(this.h,"aVertex"),this.L=e.getAttribLocation(this.h,"aTex")}D(){}l(){}close(){if(this.h){const e=this.g;e.deleteProgram(this.h),e.deleteShader(this.X),e.deleteShader(this.W)}this.B&&this.g.deleteFramebuffer(this.B),this.A&&this.A.close(),this.u&&this.u.close()}};function Ue(e,t){switch(t){case 0:return e.g.find((r=>r instanceof Uint8Array));case 1:return e.g.find((r=>r instanceof Float32Array));case 2:return e.g.find((r=>typeof WebGLTexture<"u"&&r instanceof WebGLTexture));default:throw Error(`Type is not supported: ${t}`)}}function kn(e){var t=Ue(e,1);if(!t){if(t=Ue(e,0))t=new Float32Array(t).map((s=>s/255));else{t=new Float32Array(e.width*e.height);const s=zt(e);var r=Sn(e);if(Oa(r,s,Ra(e)),"iPad Simulator;iPhone Simulator;iPod Simulator;iPad;iPhone;iPod".split(";").includes(navigator.platform)||navigator.userAgent.includes("Mac")&&"document"in self&&"ontouchend"in self.document){r=new Float32Array(e.width*e.height*4),s.readPixels(0,0,e.width,e.height,s.RGBA,s.FLOAT,r);for(let n=0,i=0;n<t.length;++n,i+=4)t[n]=r[i]}else s.readPixels(0,0,e.width,e.height,s.RED,s.FLOAT,t)}e.g.push(t)}return t}function Ra(e){let t=Ue(e,2);if(!t){const r=zt(e);t=Ua(e);const s=kn(e),n=Na(e);r.texImage2D(r.TEXTURE_2D,0,n,e.width,e.height,0,r.RED,r.FLOAT,s),Cn(e)}return t}function zt(e){if(!e.canvas)throw Error("Conversion to different image formats require that a canvas is passed when initializing the image.");return e.h||(e.h=We(e.canvas.getContext("webgl2"),"You cannot use a canvas that is already bound to a different type of rendering context.")),e.h}function Na(e){if(e=zt(e),!os)if(e.getExtension("EXT_color_buffer_float")&&e.getExtension("OES_texture_float_linear")&&e.getExtension("EXT_float_blend"))os=e.R32F;else{if(!e.getExtension("EXT_color_buffer_half_float"))throw Error("GPU does not fully support 4-channel float32 or float16 formats");os=e.R16F}return os}function Sn(e){return e.l||(e.l=new Ia),e.l}function Ua(e){const t=zt(e);t.viewport(0,0,e.width,e.height),t.activeTexture(t.TEXTURE0);let r=Ue(e,2);return r||(r=$a(Sn(e),t,e.m?t.LINEAR:t.NEAREST),e.g.push(r),e.j=!0),t.bindTexture(t.TEXTURE_2D,r),r}function Cn(e){e.h.bindTexture(e.h.TEXTURE_2D,null)}var os,K=class{constructor(e,t,r,s,n,i,o){this.g=e,this.m=t,this.j=r,this.canvas=s,this.l=n,this.width=i,this.height=o,this.j&&--Ba===0&&console.error("You seem to be creating MPMask instances without invoking .close(). This leaks resources.")}Fa(){return!!Ue(this,0)}ka(){return!!Ue(this,1)}R(){return!!Ue(this,2)}ja(){return(t=Ue(e=this,0))||(t=kn(e),t=new Uint8Array(t.map((r=>Math.round(255*r)))),e.g.push(t)),t;var e,t}ia(){return kn(this)}N(){return Ra(this)}clone(){const e=[];for(const t of this.g){let r;if(t instanceof Uint8Array)r=new Uint8Array(t);else if(t instanceof Float32Array)r=new Float32Array(t);else{if(!(t instanceof WebGLTexture))throw Error(`Type is not supported: ${t}`);{const s=zt(this),n=Sn(this);s.activeTexture(s.TEXTURE1),r=$a(n,s,this.m?s.LINEAR:s.NEAREST),s.bindTexture(s.TEXTURE_2D,r);const i=Na(this);s.texImage2D(s.TEXTURE_2D,0,i,this.width,this.height,0,s.RED,s.FLOAT,null),s.bindTexture(s.TEXTURE_2D,null),Oa(n,s,r),ku(n,s,!1,(()=>{Ua(this),s.clearColor(0,0,0,0),s.clear(s.COLOR_BUFFER_BIT),s.drawArrays(s.TRIANGLE_FAN,0,4),Cn(this)})),Su(n),Cn(this)}}e.push(r)}return new K(e,this.m,this.R(),this.canvas,this.l,this.width,this.height)}close(){this.j&&zt(this).deleteTexture(Ue(this,2)),Ba=-1}};K.prototype.close=K.prototype.close,K.prototype.clone=K.prototype.clone,K.prototype.getAsWebGLTexture=K.prototype.N,K.prototype.getAsFloat32Array=K.prototype.ia,K.prototype.getAsUint8Array=K.prototype.ja,K.prototype.hasWebGLTexture=K.prototype.R,K.prototype.hasFloat32Array=K.prototype.ka,K.prototype.hasUint8Array=K.prototype.Fa;var Ba=250;function _e(...e){return e.map((([t,r])=>({start:t,end:r})))}const Cu=(function(e){return class extends e{Ja(){this.i._registerModelResourcesGraphService()}}})((Da=class{constructor(e,t){this.l=!0,this.i=e,this.g=null,this.h=0,this.m=typeof this.i._addIntToInputStream=="function",t!==void 0?this.i.canvas=t:Sa()?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(e){const t=await(await fetch(e)).arrayBuffer();e=!(e.endsWith(".pbtxt")||e.endsWith(".textproto")),this.setGraph(new Uint8Array(t),e)}setGraphFromString(e){this.setGraph(new TextEncoder().encode(e),!1)}setGraph(e,t){const r=e.length,s=this.i._malloc(r);this.i.HEAPU8.set(e,s),t?this.i._changeBinaryGraph(r,s):this.i._changeTextGraph(r,s),this.i._free(s)}configureAudio(e,t,r,s,n){this.i._configureAudio||console.warn('Attempting to use configureAudio without support for input audio. Is build dep ":gl_graph_runner_audio" missing?'),g(this,s||"input_audio",(i=>{g(this,n=n||"audio_header",(o=>{this.i._configureAudio(i,o,e,t??0,r)}))}))}setAutoResizeCanvas(e){this.l=e}setAutoRenderToScreen(e){this.i._setAutoRenderToScreen(e)}setGpuBufferVerticalFlip(e){this.i.gpuOriginForWebTexturesIsBottomLeft=e}ca(e){Me(this,"__graph_config__",(t=>{e(t)})),g(this,"__graph_config__",(t=>{this.i._getGraphConfig(t,void 0)})),delete this.i.simpleListeners.__graph_config__}attachErrorListener(e){this.i.errorListener=e}attachEmptyPacketListener(e,t){this.i.emptyPacketListeners=this.i.emptyPacketListeners||{},this.i.emptyPacketListeners[e]=t}addAudioToStream(e,t,r){this.addAudioToStreamWithShape(e,0,0,t,r)}addAudioToStreamWithShape(e,t,r,s,n){const i=4*e.length;this.h!==i&&(this.g&&this.i._free(this.g),this.g=this.i._malloc(i),this.h=i),this.i.HEAPF32.set(e,this.g/4),g(this,s,(o=>{this.i._addAudioToInputStream(this.g,t,r,o,n)}))}addGpuBufferToStream(e,t,r){g(this,t,(s=>{const[n,i]=Pa(this,e,s);this.i._addBoundTextureToStream(s,n,i,r)}))}addBoolToStream(e,t,r){g(this,t,(s=>{this.i._addBoolToInputStream(e,s,r)}))}addDoubleToStream(e,t,r){g(this,t,(s=>{this.i._addDoubleToInputStream(e,s,r)}))}addFloatToStream(e,t,r){g(this,t,(s=>{this.i._addFloatToInputStream(e,s,r)}))}addIntToStream(e,t,r){g(this,t,(s=>{this.i._addIntToInputStream(e,s,r)}))}addUintToStream(e,t,r){g(this,t,(s=>{this.i._addUintToInputStream(e,s,r)}))}addStringToStream(e,t,r){g(this,t,(s=>{g(this,e,(n=>{this.i._addStringToInputStream(n,s,r)}))}))}addStringRecordToStream(e,t,r){g(this,t,(s=>{Ma(this,Object.keys(e),(n=>{Ma(this,Object.values(e),(i=>{this.i._addFlatHashMapToInputStream(n,i,Object.keys(e).length,s,r)}))}))}))}addProtoToStream(e,t,r,s){g(this,r,(n=>{g(this,t,(i=>{const o=this.i._malloc(e.length);this.i.HEAPU8.set(e,o),this.i._addProtoToInputStream(o,e.length,i,n,s),this.i._free(o)}))}))}addEmptyPacketToStream(e,t){g(this,e,(r=>{this.i._addEmptyPacketToInputStream(r,t)}))}addBoolVectorToStream(e,t,r){g(this,t,(s=>{const n=this.i._allocateBoolVector(e.length);if(!n)throw Error("Unable to allocate new bool vector on heap.");for(const i of e)this.i._addBoolVectorEntry(n,i);this.i._addBoolVectorToInputStream(n,s,r)}))}addDoubleVectorToStream(e,t,r){g(this,t,(s=>{const n=this.i._allocateDoubleVector(e.length);if(!n)throw Error("Unable to allocate new double vector on heap.");for(const i of e)this.i._addDoubleVectorEntry(n,i);this.i._addDoubleVectorToInputStream(n,s,r)}))}addFloatVectorToStream(e,t,r){g(this,t,(s=>{const n=this.i._allocateFloatVector(e.length);if(!n)throw Error("Unable to allocate new float vector on heap.");for(const i of e)this.i._addFloatVectorEntry(n,i);this.i._addFloatVectorToInputStream(n,s,r)}))}addIntVectorToStream(e,t,r){g(this,t,(s=>{const n=this.i._allocateIntVector(e.length);if(!n)throw Error("Unable to allocate new int vector on heap.");for(const i of e)this.i._addIntVectorEntry(n,i);this.i._addIntVectorToInputStream(n,s,r)}))}addUintVectorToStream(e,t,r){g(this,t,(s=>{const n=this.i._allocateUintVector(e.length);if(!n)throw Error("Unable to allocate new unsigned int vector on heap.");for(const i of e)this.i._addUintVectorEntry(n,i);this.i._addUintVectorToInputStream(n,s,r)}))}addStringVectorToStream(e,t,r){g(this,t,(s=>{const n=this.i._allocateStringVector(e.length);if(!n)throw Error("Unable to allocate new string vector on heap.");for(const i of e)g(this,i,(o=>{this.i._addStringVectorEntry(n,o)}));this.i._addStringVectorToInputStream(n,s,r)}))}addBoolToInputSidePacket(e,t){g(this,t,(r=>{this.i._addBoolToInputSidePacket(e,r)}))}addDoubleToInputSidePacket(e,t){g(this,t,(r=>{this.i._addDoubleToInputSidePacket(e,r)}))}addFloatToInputSidePacket(e,t){g(this,t,(r=>{this.i._addFloatToInputSidePacket(e,r)}))}addIntToInputSidePacket(e,t){g(this,t,(r=>{this.i._addIntToInputSidePacket(e,r)}))}addUintToInputSidePacket(e,t){g(this,t,(r=>{this.i._addUintToInputSidePacket(e,r)}))}addStringToInputSidePacket(e,t){g(this,t,(r=>{g(this,e,(s=>{this.i._addStringToInputSidePacket(s,r)}))}))}addProtoToInputSidePacket(e,t,r){g(this,r,(s=>{g(this,t,(n=>{const i=this.i._malloc(e.length);this.i.HEAPU8.set(e,i),this.i._addProtoToInputSidePacket(i,e.length,n,s),this.i._free(i)}))}))}addBoolVectorToInputSidePacket(e,t){g(this,t,(r=>{const s=this.i._allocateBoolVector(e.length);if(!s)throw Error("Unable to allocate new bool vector on heap.");for(const n of e)this.i._addBoolVectorEntry(s,n);this.i._addBoolVectorToInputSidePacket(s,r)}))}addDoubleVectorToInputSidePacket(e,t){g(this,t,(r=>{const s=this.i._allocateDoubleVector(e.length);if(!s)throw Error("Unable to allocate new double vector on heap.");for(const n of e)this.i._addDoubleVectorEntry(s,n);this.i._addDoubleVectorToInputSidePacket(s,r)}))}addFloatVectorToInputSidePacket(e,t){g(this,t,(r=>{const s=this.i._allocateFloatVector(e.length);if(!s)throw Error("Unable to allocate new float vector on heap.");for(const n of e)this.i._addFloatVectorEntry(s,n);this.i._addFloatVectorToInputSidePacket(s,r)}))}addIntVectorToInputSidePacket(e,t){g(this,t,(r=>{const s=this.i._allocateIntVector(e.length);if(!s)throw Error("Unable to allocate new int vector on heap.");for(const n of e)this.i._addIntVectorEntry(s,n);this.i._addIntVectorToInputSidePacket(s,r)}))}addUintVectorToInputSidePacket(e,t){g(this,t,(r=>{const s=this.i._allocateUintVector(e.length);if(!s)throw Error("Unable to allocate new unsigned int vector on heap.");for(const n of e)this.i._addUintVectorEntry(s,n);this.i._addUintVectorToInputSidePacket(s,r)}))}addStringVectorToInputSidePacket(e,t){g(this,t,(r=>{const s=this.i._allocateStringVector(e.length);if(!s)throw Error("Unable to allocate new string vector on heap.");for(const n of e)g(this,n,(i=>{this.i._addStringVectorEntry(s,i)}));this.i._addStringVectorToInputSidePacket(s,r)}))}attachBoolListener(e,t){Me(this,e,t),g(this,e,(r=>{this.i._attachBoolListener(r)}))}attachBoolVectorListener(e,t){ze(this,e,t),g(this,e,(r=>{this.i._attachBoolVectorListener(r)}))}attachIntListener(e,t){Me(this,e,t),g(this,e,(r=>{this.i._attachIntListener(r)}))}attachIntVectorListener(e,t){ze(this,e,t),g(this,e,(r=>{this.i._attachIntVectorListener(r)}))}attachUintListener(e,t){Me(this,e,t),g(this,e,(r=>{this.i._attachUintListener(r)}))}attachUintVectorListener(e,t){ze(this,e,t),g(this,e,(r=>{this.i._attachUintVectorListener(r)}))}attachDoubleListener(e,t){Me(this,e,t),g(this,e,(r=>{this.i._attachDoubleListener(r)}))}attachDoubleVectorListener(e,t){ze(this,e,t),g(this,e,(r=>{this.i._attachDoubleVectorListener(r)}))}attachFloatListener(e,t){Me(this,e,t),g(this,e,(r=>{this.i._attachFloatListener(r)}))}attachFloatVectorListener(e,t){ze(this,e,t),g(this,e,(r=>{this.i._attachFloatVectorListener(r)}))}attachStringListener(e,t){Me(this,e,t),g(this,e,(r=>{this.i._attachStringListener(r)}))}attachStringVectorListener(e,t){ze(this,e,t),g(this,e,(r=>{this.i._attachStringVectorListener(r)}))}attachProtoListener(e,t,r){Me(this,e,t),g(this,e,(s=>{this.i._attachProtoListener(s,r||!1)}))}attachProtoVectorListener(e,t,r){ze(this,e,t),g(this,e,(s=>{this.i._attachProtoVectorListener(s,r||!1)}))}attachAudioListener(e,t,r){this.i._attachAudioListener||console.warn('Attempting to use attachAudioListener without support for output audio. Is build dep ":gl_graph_runner_audio_out" missing?'),Me(this,e,((s,n)=>{s=new Float32Array(s.buffer,s.byteOffset,s.length/4),t(s,n)})),g(this,e,(s=>{this.i._attachAudioListener(s,r||!1)}))}finishProcessing(){this.i._waitUntilIdle()}closeGraph(){this.i._closeGraph(),this.i.simpleListeners=void 0,this.i.emptyPacketListeners=void 0}},class extends Da{get ga(){return this.i}pa(e,t,r){g(this,t,(s=>{const[n,i]=Pa(this,e,s);this.ga._addBoundTextureAsImageToStream(s,n,i,r)}))}Z(e,t){Me(this,e,t),g(this,e,(r=>{this.ga._attachImageListener(r)}))}aa(e,t){ze(this,e,t),g(this,e,(r=>{this.ga._attachImageVectorListener(r)}))}}));var Da,we=class extends Cu{};async function A(e,t,r){return(async function(s,n,i,o){return Au(s,n,i,o)})(e,r.canvas??(Sa()?void 0:document.createElement("canvas")),t,r)}function ja(e,t,r,s){if(e.U){const i=new Wo;if(r!=null&&r.regionOfInterest){if(!e.oa)throw Error("This task doesn't support region-of-interest.");var n=r.regionOfInterest;if(n.left>=n.right||n.top>=n.bottom)throw Error("Expected RectF with left < right and top < bottom.");if(n.left<0||n.top<0||n.right>1||n.bottom>1)throw Error("Expected RectF values to be in [0,1].");y(i,1,(n.left+n.right)/2),y(i,2,(n.top+n.bottom)/2),y(i,4,n.right-n.left),y(i,3,n.bottom-n.top)}else y(i,1,.5),y(i,2,.5),y(i,4,1),y(i,3,1);if(r!=null&&r.rotationDegrees){if((r==null?void 0:r.rotationDegrees)%90!=0)throw Error("Expected rotation to be a multiple of 90°.");if(y(i,5,-Math.PI*r.rotationDegrees/180),(r==null?void 0:r.rotationDegrees)%180!=0){const[o,a]=Ta(t);r=I(i,3)*a/o,n=I(i,4)*o/a,y(i,4,r),y(i,3,n)}}e.g.addProtoToStream(i.g(),"mediapipe.NormalizedRect",e.U,s)}e.g.pa(t,e.X,s??performance.now()),e.finishProcessing()}function Ae(e,t,r){var s;if((s=e.baseOptions)!=null&&s.g())throw Error("Task is not initialized with image mode. 'runningMode' must be set to 'IMAGE'.");ja(e,t,r,e.C+1)}function Le(e,t,r,s){var n;if(!((n=e.baseOptions)!=null&&n.g()))throw Error("Task is not initialized with video mode. 'runningMode' must be set to 'VIDEO'.");ja(e,t,r,s)}function Wt(e,t,r,s){var n=t.data;const i=t.width,o=i*(t=t.height);if((n instanceof Uint8Array||n instanceof Float32Array)&&n.length!==o)throw Error("Unsupported channel count: "+n.length/o);return e=new K([n],r,!1,e.g.i.canvas,e.P,i,t),s?e.clone():e}var ce=class extends An{constructor(e,t,r,s){super(e),this.g=e,this.X=t,this.U=r,this.oa=s,this.P=new Ia}l(e,t=!0){if("runningMode"in e&&S(this.baseOptions,2,or(!!e.runningMode&&e.runningMode!=="IMAGE")),e.canvas!==void 0&&this.g.i.canvas!==e.canvas)throw Error("You must create a new task to reset the canvas.");return super.l(e,t)}close(){this.P.close(),super.close()}};ce.prototype.close=ce.prototype.close;var he=class extends ce{constructor(e,t){super(new we(e,t),"image_in","norm_rect_in",!1),this.j={detections:[]},b(e=this.h=new ts,0,1,t=new $),y(this.h,2,.5),y(this.h,3,.3)}get baseOptions(){return E(this.h,$,1)}set baseOptions(e){b(this.h,0,1,e)}o(e){return"minDetectionConfidence"in e&&y(this.h,2,e.minDetectionConfidence??.5),"minSuppressionThreshold"in e&&y(this.h,3,e.minSuppressionThreshold??.3),this.l(e)}F(e,t){return this.j={detections:[]},Ae(this,e,t),this.j}G(e,t,r){return this.j={detections:[]},Le(this,e,r,t),this.j}m(){var e=new ae;F(e,"image_in"),F(e,"norm_rect_in"),k(e,"detections");const t=new oe;Te(t,au,this.h);const r=new Z;ne(r,2,"mediapipe.tasks.vision.face_detector.FaceDetectorGraph"),P(r,"IMAGE:image_in"),P(r,"NORM_RECT:norm_rect_in"),_(r,"DETECTIONS:detections"),r.o(t),ge(e,r),this.g.attachProtoVectorListener("detections",((s,n)=>{for(const i of s)s=Go(i),this.j.detections.push(wa(s));d(this,n)})),this.g.attachEmptyPacketListener("detections",(s=>{d(this,s)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};he.prototype.detectForVideo=he.prototype.G,he.prototype.detect=he.prototype.F,he.prototype.setOptions=he.prototype.o,he.createFromModelPath=async function(e,t){return A(he,e,{baseOptions:{modelAssetPath:t}})},he.createFromModelBuffer=function(e,t){return A(he,e,{baseOptions:{modelAssetBuffer:t}})},he.createFromOptions=function(e,t){return A(he,e,t)};var Tn=_e([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]),Pn=_e([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]),Mn=_e([276,283],[283,282],[282,295],[295,285],[300,293],[293,334],[334,296],[296,336]),Va=_e([474,475],[475,476],[476,477],[477,474]),Ln=_e([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]),Fn=_e([46,53],[53,52],[52,65],[65,55],[70,63],[63,105],[105,66],[66,107]),Ga=_e([469,470],[470,471],[471,472],[472,469]),xn=_e([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]),Ha=[...Tn,...Pn,...Mn,...Ln,...Fn,...xn],za=_e([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 Wa(e){e.j={faceLandmarks:[],faceBlendshapes:[],facialTransformationMatrixes:[]}}var O=class extends ce{constructor(e,t){super(new we(e,t),"image_in","norm_rect",!1),this.j={faceLandmarks:[],faceBlendshapes:[],facialTransformationMatrixes:[]},this.outputFacialTransformationMatrixes=this.outputFaceBlendshapes=!1,b(e=this.h=new ea,0,1,t=new $),this.A=new Zo,b(this.h,0,3,this.A),this.u=new ts,b(this.h,0,2,this.u),Re(this.u,4,1),y(this.u,2,.5),y(this.A,2,.5),y(this.h,4,.5)}get baseOptions(){return E(this.h,$,1)}set baseOptions(e){b(this.h,0,1,e)}o(e){return"numFaces"in e&&Re(this.u,4,e.numFaces??1),"minFaceDetectionConfidence"in e&&y(this.u,2,e.minFaceDetectionConfidence??.5),"minTrackingConfidence"in e&&y(this.h,4,e.minTrackingConfidence??.5),"minFacePresenceConfidence"in e&&y(this.A,2,e.minFacePresenceConfidence??.5),"outputFaceBlendshapes"in e&&(this.outputFaceBlendshapes=!!e.outputFaceBlendshapes),"outputFacialTransformationMatrixes"in e&&(this.outputFacialTransformationMatrixes=!!e.outputFacialTransformationMatrixes),this.l(e)}F(e,t){return Wa(this),Ae(this,e,t),this.j}G(e,t,r){return Wa(this),Le(this,e,r,t),this.j}m(){var e=new ae;F(e,"image_in"),F(e,"norm_rect"),k(e,"face_landmarks");const t=new oe;Te(t,hu,this.h);const r=new Z;ne(r,2,"mediapipe.tasks.vision.face_landmarker.FaceLandmarkerGraph"),P(r,"IMAGE:image_in"),P(r,"NORM_RECT:norm_rect"),_(r,"NORM_LANDMARKS:face_landmarks"),r.o(t),ge(e,r),this.g.attachProtoVectorListener("face_landmarks",((s,n)=>{for(const i of s)s=pr(i),this.j.faceLandmarks.push(rs(s));d(this,n)})),this.g.attachEmptyPacketListener("face_landmarks",(s=>{d(this,s)})),this.outputFaceBlendshapes&&(k(e,"blendshapes"),_(r,"BLENDSHAPES:blendshapes"),this.g.attachProtoVectorListener("blendshapes",((s,n)=>{if(this.outputFaceBlendshapes)for(const i of s)s=Jr(i),this.j.faceBlendshapes.push(_n(s.g()??[]));d(this,n)})),this.g.attachEmptyPacketListener("blendshapes",(s=>{d(this,s)}))),this.outputFacialTransformationMatrixes&&(k(e,"face_geometry"),_(r,"FACE_GEOMETRY:face_geometry"),this.g.attachProtoVectorListener("face_geometry",((s,n)=>{if(this.outputFacialTransformationMatrixes)for(const i of s)(s=E(s=cu(i),Zh,2))&&this.j.facialTransformationMatrixes.push({rows:pe(s,1)??0??0,columns:pe(s,2)??0??0,data:it(s,3,Se,nt()).slice()??[]});d(this,n)})),this.g.attachEmptyPacketListener("face_geometry",(s=>{d(this,s)}))),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};O.prototype.detectForVideo=O.prototype.G,O.prototype.detect=O.prototype.F,O.prototype.setOptions=O.prototype.o,O.createFromModelPath=function(e,t){return A(O,e,{baseOptions:{modelAssetPath:t}})},O.createFromModelBuffer=function(e,t){return A(O,e,{baseOptions:{modelAssetBuffer:t}})},O.createFromOptions=function(e,t){return A(O,e,t)},O.FACE_LANDMARKS_LIPS=Tn,O.FACE_LANDMARKS_LEFT_EYE=Pn,O.FACE_LANDMARKS_LEFT_EYEBROW=Mn,O.FACE_LANDMARKS_LEFT_IRIS=Va,O.FACE_LANDMARKS_RIGHT_EYE=Ln,O.FACE_LANDMARKS_RIGHT_EYEBROW=Fn,O.FACE_LANDMARKS_RIGHT_IRIS=Ga,O.FACE_LANDMARKS_FACE_OVAL=xn,O.FACE_LANDMARKS_CONTOURS=Ha,O.FACE_LANDMARKS_TESSELATION=za;var $n=_e([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 Ka(e){e.gestures=[],e.landmarks=[],e.worldLandmarks=[],e.handedness=[]}function qa(e){return e.gestures.length===0?{gestures:[],landmarks:[],worldLandmarks:[],handedness:[],handednesses:[]}:{gestures:e.gestures,landmarks:e.landmarks,worldLandmarks:e.worldLandmarks,handedness:e.handedness,handednesses:e.handedness}}function Xa(e,t=!0){const r=[];for(const n of e){var s=Jr(n);e=[];for(const i of s.g())s=t&&pe(i,1)!=null?pe(i,1)??0:-1,e.push({score:I(i,2)??0,index:s,categoryName:X(T(i,3))??""??"",displayName:X(T(i,4))??""??""});r.push(e)}return r}var ue=class extends ce{constructor(e,t){super(new we(e,t),"image_in","norm_rect",!1),this.gestures=[],this.landmarks=[],this.worldLandmarks=[],this.handedness=[],b(e=this.j=new sa,0,1,t=new $),this.u=new dn,b(this.j,0,2,this.u),this.D=new ln,b(this.u,0,3,this.D),this.A=new ra,b(this.u,0,2,this.A),this.h=new uu,b(this.j,0,3,this.h),y(this.A,2,.5),y(this.u,4,.5),y(this.D,2,.5)}get baseOptions(){return E(this.j,$,1)}set baseOptions(e){b(this.j,0,1,e)}o(e){var n,i,o,a;if(Re(this.A,3,e.numHands??1),"minHandDetectionConfidence"in e&&y(this.A,2,e.minHandDetectionConfidence??.5),"minTrackingConfidence"in e&&y(this.u,4,e.minTrackingConfidence??.5),"minHandPresenceConfidence"in e&&y(this.D,2,e.minHandPresenceConfidence??.5),e.cannedGesturesClassifierOptions){var t=new Gt,r=t,s=vn(e.cannedGesturesClassifierOptions,(n=E(this.h,Gt,3))==null?void 0:n.l());b(r,0,2,s),b(this.h,0,3,t)}else e.cannedGesturesClassifierOptions===void 0&&((i=E(this.h,Gt,3))==null||i.g());return e.customGesturesClassifierOptions?(b(r=t=new Gt,0,2,s=vn(e.customGesturesClassifierOptions,(o=E(this.h,Gt,4))==null?void 0:o.l())),b(this.h,0,4,t)):e.customGesturesClassifierOptions===void 0&&((a=E(this.h,Gt,4))==null||a.g()),this.l(e)}Ha(e,t){return Ka(this),Ae(this,e,t),qa(this)}Ia(e,t,r){return Ka(this),Le(this,e,r,t),qa(this)}m(){var e=new ae;F(e,"image_in"),F(e,"norm_rect"),k(e,"hand_gestures"),k(e,"hand_landmarks"),k(e,"world_hand_landmarks"),k(e,"handedness");const t=new oe;Te(t,lu,this.j);const r=new Z;ne(r,2,"mediapipe.tasks.vision.gesture_recognizer.GestureRecognizerGraph"),P(r,"IMAGE:image_in"),P(r,"NORM_RECT:norm_rect"),_(r,"HAND_GESTURES:hand_gestures"),_(r,"LANDMARKS:hand_landmarks"),_(r,"WORLD_LANDMARKS:world_hand_landmarks"),_(r,"HANDEDNESS:handedness"),r.o(t),ge(e,r),this.g.attachProtoVectorListener("hand_landmarks",((s,n)=>{for(const i of s){s=pr(i);const o=[];for(const a of Ie(s,zo,1))o.push({x:I(a,1)??0,y:I(a,2)??0,z:I(a,3)??0,visibility:I(a,4)??0});this.landmarks.push(o)}d(this,n)})),this.g.attachEmptyPacketListener("hand_landmarks",(s=>{d(this,s)})),this.g.attachProtoVectorListener("world_hand_landmarks",((s,n)=>{for(const i of s){s=Vt(i);const o=[];for(const a of Ie(s,Ho,1))o.push({x:I(a,1)??0,y:I(a,2)??0,z:I(a,3)??0,visibility:I(a,4)??0});this.worldLandmarks.push(o)}d(this,n)})),this.g.attachEmptyPacketListener("world_hand_landmarks",(s=>{d(this,s)})),this.g.attachProtoVectorListener("hand_gestures",((s,n)=>{this.gestures.push(...Xa(s,!1)),d(this,n)})),this.g.attachEmptyPacketListener("hand_gestures",(s=>{d(this,s)})),this.g.attachProtoVectorListener("handedness",((s,n)=>{this.handedness.push(...Xa(s)),d(this,n)})),this.g.attachEmptyPacketListener("handedness",(s=>{d(this,s)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};function Ya(e){return{landmarks:e.landmarks,worldLandmarks:e.worldLandmarks,handednesses:e.handedness,handedness:e.handedness}}ue.prototype.recognizeForVideo=ue.prototype.Ia,ue.prototype.recognize=ue.prototype.Ha,ue.prototype.setOptions=ue.prototype.o,ue.createFromModelPath=function(e,t){return A(ue,e,{baseOptions:{modelAssetPath:t}})},ue.createFromModelBuffer=function(e,t){return A(ue,e,{baseOptions:{modelAssetBuffer:t}})},ue.createFromOptions=function(e,t){return A(ue,e,t)},ue.HAND_CONNECTIONS=$n;var le=class extends ce{constructor(e,t){super(new we(e,t),"image_in","norm_rect",!1),this.landmarks=[],this.worldLandmarks=[],this.handedness=[],b(e=this.h=new dn,0,1,t=new $),this.u=new ln,b(this.h,0,3,this.u),this.j=new ra,b(this.h,0,2,this.j),Re(this.j,3,1),y(this.j,2,.5),y(this.u,2,.5),y(this.h,4,.5)}get baseOptions(){return E(this.h,$,1)}set baseOptions(e){b(this.h,0,1,e)}o(e){return"numHands"in e&&Re(this.j,3,e.numHands??1),"minHandDetectionConfidence"in e&&y(this.j,2,e.minHandDetectionConfidence??.5),"minTrackingConfidence"in e&&y(this.h,4,e.minTrackingConfidence??.5),"minHandPresenceConfidence"in e&&y(this.u,2,e.minHandPresenceConfidence??.5),this.l(e)}F(e,t){return this.landmarks=[],this.worldLandmarks=[],this.handedness=[],Ae(this,e,t),Ya(this)}G(e,t,r){return this.landmarks=[],this.worldLandmarks=[],this.handedness=[],Le(this,e,r,t),Ya(this)}m(){var e=new ae;F(e,"image_in"),F(e,"norm_rect"),k(e,"hand_landmarks"),k(e,"world_hand_landmarks"),k(e,"handedness");const t=new oe;Te(t,du,this.h);const r=new Z;ne(r,2,"mediapipe.tasks.vision.hand_landmarker.HandLandmarkerGraph"),P(r,"IMAGE:image_in"),P(r,"NORM_RECT:norm_rect"),_(r,"LANDMARKS:hand_landmarks"),_(r,"WORLD_LANDMARKS:world_hand_landmarks"),_(r,"HANDEDNESS:handedness"),r.o(t),ge(e,r),this.g.attachProtoVectorListener("hand_landmarks",((s,n)=>{for(const i of s)s=pr(i),this.landmarks.push(rs(s));d(this,n)})),this.g.attachEmptyPacketListener("hand_landmarks",(s=>{d(this,s)})),this.g.attachProtoVectorListener("world_hand_landmarks",((s,n)=>{for(const i of s)s=Vt(i),this.worldLandmarks.push(mr(s));d(this,n)})),this.g.attachEmptyPacketListener("world_hand_landmarks",(s=>{d(this,s)})),this.g.attachProtoVectorListener("handedness",((s,n)=>{var i=this.handedness,o=i.push;const a=[];for(const c of s){s=Jr(c);const u=[];for(const h of s.g())u.push({score:I(h,2)??0,index:pe(h,1)??0??-1,categoryName:X(T(h,3))??""??"",displayName:X(T(h,4))??""??""});a.push(u)}o.call(i,...a),d(this,n)})),this.g.attachEmptyPacketListener("handedness",(s=>{d(this,s)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};le.prototype.detectForVideo=le.prototype.G,le.prototype.detect=le.prototype.F,le.prototype.setOptions=le.prototype.o,le.createFromModelPath=function(e,t){return A(le,e,{baseOptions:{modelAssetPath:t}})},le.createFromModelBuffer=function(e,t){return A(le,e,{baseOptions:{modelAssetBuffer:t}})},le.createFromOptions=function(e,t){return A(le,e,t)},le.HAND_CONNECTIONS=$n;var Qa=_e([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 Ja(e){e.h={faceLandmarks:[],faceBlendshapes:[],poseLandmarks:[],poseWorldLandmarks:[],poseSegmentationMasks:[],leftHandLandmarks:[],leftHandWorldLandmarks:[],rightHandLandmarks:[],rightHandWorldLandmarks:[]}}function Za(e){try{if(!e.D)return e.h;e.D(e.h)}finally{is(e)}}function as(e,t){e=pr(e),t.push(rs(e))}var M=class extends ce{constructor(e,t){super(new we(e,t),"input_frames_image",null,!1),this.h={faceLandmarks:[],faceBlendshapes:[],poseLandmarks:[],poseWorldLandmarks:[],poseSegmentationMasks:[],leftHandLandmarks:[],leftHandWorldLandmarks:[],rightHandLandmarks:[],rightHandWorldLandmarks:[]},this.outputPoseSegmentationMasks=this.outputFaceBlendshapes=!1,b(e=this.j=new ha,0,1,t=new $),this.I=new ln,b(this.j,0,2,this.I),this.W=new fu,b(this.j,0,3,this.W),this.u=new ts,b(this.j,0,4,this.u),this.O=new Zo,b(this.j,0,5,this.O),this.A=new aa,b(this.j,0,6,this.A),this.M=new ca,b(this.j,0,7,this.M),y(this.u,2,.5),y(this.u,3,.3),y(this.O,2,.5),y(this.A,2,.5),y(this.A,3,.3),y(this.M,2,.5),y(this.I,2,.5)}get baseOptions(){return E(this.j,$,1)}set baseOptions(e){b(this.j,0,1,e)}o(e){return"minFaceDetectionConfidence"in e&&y(this.u,2,e.minFaceDetectionConfidence??.5),"minFaceSuppressionThreshold"in e&&y(this.u,3,e.minFaceSuppressionThreshold??.3),"minFacePresenceConfidence"in e&&y(this.O,2,e.minFacePresenceConfidence??.5),"outputFaceBlendshapes"in e&&(this.outputFaceBlendshapes=!!e.outputFaceBlendshapes),"minPoseDetectionConfidence"in e&&y(this.A,2,e.minPoseDetectionConfidence??.5),"minPoseSuppressionThreshold"in e&&y(this.A,3,e.minPoseSuppressionThreshold??.3),"minPosePresenceConfidence"in e&&y(this.M,2,e.minPosePresenceConfidence??.5),"outputPoseSegmentationMasks"in e&&(this.outputPoseSegmentationMasks=!!e.outputPoseSegmentationMasks),"minHandLandmarksConfidence"in e&&y(this.I,2,e.minHandLandmarksConfidence??.5),this.l(e)}F(e,t,r){const s=typeof t!="function"?t:{};return this.D=typeof t=="function"?t:r,Ja(this),Ae(this,e,s),Za(this)}G(e,t,r,s){const n=typeof r!="function"?r:{};return this.D=typeof r=="function"?r:s,Ja(this),Le(this,e,n,t),Za(this)}m(){var e=new ae;F(e,"input_frames_image"),k(e,"pose_landmarks"),k(e,"pose_world_landmarks"),k(e,"face_landmarks"),k(e,"left_hand_landmarks"),k(e,"left_hand_world_landmarks"),k(e,"right_hand_landmarks"),k(e,"right_hand_world_landmarks");const t=new oe,r=new Co;ne(r,1,"type.googleapis.com/mediapipe.tasks.vision.holistic_landmarker.proto.HolisticLandmarkerGraphOptions"),(function(n,i){if(i!=null)if(Array.isArray(i))S(n,2,Ir(i,0,hr));else{if(!(typeof i=="string"||i instanceof Ee||gs(i)))throw Error("invalid value in Any.value field: "+i+" expected a ByteString, a base64 encoded string, a Uint8Array or a jspb array");De(n,2,_s(i,!1),Je())}})(r,this.j.g());const s=new Z;ne(s,2,"mediapipe.tasks.vision.holistic_landmarker.HolisticLandmarkerGraph"),js(s,8,Co,r),P(s,"IMAGE:input_frames_image"),_(s,"POSE_LANDMARKS:pose_landmarks"),_(s,"POSE_WORLD_LANDMARKS:pose_world_landmarks"),_(s,"FACE_LANDMARKS:face_landmarks"),_(s,"LEFT_HAND_LANDMARKS:left_hand_landmarks"),_(s,"LEFT_HAND_WORLD_LANDMARKS:left_hand_world_landmarks"),_(s,"RIGHT_HAND_LANDMARKS:right_hand_landmarks"),_(s,"RIGHT_HAND_WORLD_LANDMARKS:right_hand_world_landmarks"),s.o(t),ge(e,s),ns(this,e),this.g.attachProtoListener("pose_landmarks",((n,i)=>{as(n,this.h.poseLandmarks),d(this,i)})),this.g.attachEmptyPacketListener("pose_landmarks",(n=>{d(this,n)})),this.g.attachProtoListener("pose_world_landmarks",((n,i)=>{var o=this.h.poseWorldLandmarks;n=Vt(n),o.push(mr(n)),d(this,i)})),this.g.attachEmptyPacketListener("pose_world_landmarks",(n=>{d(this,n)})),this.outputPoseSegmentationMasks&&(_(s,"POSE_SEGMENTATION_MASK:pose_segmentation_mask"),Ht(this,"pose_segmentation_mask"),this.g.Z("pose_segmentation_mask",((n,i)=>{this.h.poseSegmentationMasks=[Wt(this,n,!0,!this.D)],d(this,i)})),this.g.attachEmptyPacketListener("pose_segmentation_mask",(n=>{this.h.poseSegmentationMasks=[],d(this,n)}))),this.g.attachProtoListener("face_landmarks",((n,i)=>{as(n,this.h.faceLandmarks),d(this,i)})),this.g.attachEmptyPacketListener("face_landmarks",(n=>{d(this,n)})),this.outputFaceBlendshapes&&(k(e,"extra_blendshapes"),_(s,"FACE_BLENDSHAPES:extra_blendshapes"),this.g.attachProtoListener("extra_blendshapes",((n,i)=>{var o=this.h.faceBlendshapes;this.outputFaceBlendshapes&&(n=Jr(n),o.push(_n(n.g()??[]))),d(this,i)})),this.g.attachEmptyPacketListener("extra_blendshapes",(n=>{d(this,n)}))),this.g.attachProtoListener("left_hand_landmarks",((n,i)=>{as(n,this.h.leftHandLandmarks),d(this,i)})),this.g.attachEmptyPacketListener("left_hand_landmarks",(n=>{d(this,n)})),this.g.attachProtoListener("left_hand_world_landmarks",((n,i)=>{var o=this.h.leftHandWorldLandmarks;n=Vt(n),o.push(mr(n)),d(this,i)})),this.g.attachEmptyPacketListener("left_hand_world_landmarks",(n=>{d(this,n)})),this.g.attachProtoListener("right_hand_landmarks",((n,i)=>{as(n,this.h.rightHandLandmarks),d(this,i)})),this.g.attachEmptyPacketListener("right_hand_landmarks",(n=>{d(this,n)})),this.g.attachProtoListener("right_hand_world_landmarks",((n,i)=>{var o=this.h.rightHandWorldLandmarks;n=Vt(n),o.push(mr(n)),d(this,i)})),this.g.attachEmptyPacketListener("right_hand_world_landmarks",(n=>{d(this,n)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};M.prototype.detectForVideo=M.prototype.G,M.prototype.detect=M.prototype.F,M.prototype.setOptions=M.prototype.o,M.createFromModelPath=function(e,t){return A(M,e,{baseOptions:{modelAssetPath:t}})},M.createFromModelBuffer=function(e,t){return A(M,e,{baseOptions:{modelAssetBuffer:t}})},M.createFromOptions=function(e,t){return A(M,e,t)},M.HAND_CONNECTIONS=$n,M.POSE_CONNECTIONS=Qa,M.FACE_LANDMARKS_LIPS=Tn,M.FACE_LANDMARKS_LEFT_EYE=Pn,M.FACE_LANDMARKS_LEFT_EYEBROW=Mn,M.FACE_LANDMARKS_LEFT_IRIS=Va,M.FACE_LANDMARKS_RIGHT_EYE=Ln,M.FACE_LANDMARKS_RIGHT_EYEBROW=Fn,M.FACE_LANDMARKS_RIGHT_IRIS=Ga,M.FACE_LANDMARKS_FACE_OVAL=xn,M.FACE_LANDMARKS_CONTOURS=Ha,M.FACE_LANDMARKS_TESSELATION=za;var ye=class extends ce{constructor(e,t){super(new we(e,t),"input_image","norm_rect",!0),this.j={classifications:[]},b(e=this.h=new ua,0,1,t=new $)}get baseOptions(){return E(this.h,$,1)}set baseOptions(e){b(this.h,0,1,e)}o(e){return b(this.h,0,2,vn(e,E(this.h,cn,2))),this.l(e)}sa(e,t){return this.j={classifications:[]},Ae(this,e,t),this.j}ta(e,t,r){return this.j={classifications:[]},Le(this,e,r,t),this.j}m(){var e=new ae;F(e,"input_image"),F(e,"norm_rect"),k(e,"classifications");const t=new oe;Te(t,pu,this.h);const r=new Z;ne(r,2,"mediapipe.tasks.vision.image_classifier.ImageClassifierGraph"),P(r,"IMAGE:input_image"),P(r,"NORM_RECT:norm_rect"),_(r,"CLASSIFICATIONS:classifications"),r.o(t),ge(e,r),this.g.attachProtoListener("classifications",((s,n)=>{this.j=_u(ru(s)),d(this,n)})),this.g.attachEmptyPacketListener("classifications",(s=>{d(this,s)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};ye.prototype.classifyForVideo=ye.prototype.ta,ye.prototype.classify=ye.prototype.sa,ye.prototype.setOptions=ye.prototype.o,ye.createFromModelPath=function(e,t){return A(ye,e,{baseOptions:{modelAssetPath:t}})},ye.createFromModelBuffer=function(e,t){return A(ye,e,{baseOptions:{modelAssetBuffer:t}})},ye.createFromOptions=function(e,t){return A(ye,e,t)};var de=class extends ce{constructor(e,t){super(new we(e,t),"image_in","norm_rect",!0),this.h=new la,this.embeddings={embeddings:[]},b(e=this.h,0,1,t=new $)}get baseOptions(){return E(this.h,$,1)}set baseOptions(e){b(this.h,0,1,e)}o(e){var t=this.h,r=E(this.h,Yo,2);return r=r?r.clone():new Yo,e.l2Normalize!==void 0?S(r,1,or(e.l2Normalize)):"l2Normalize"in e&&S(r,1),e.quantize!==void 0?S(r,2,or(e.quantize)):"quantize"in e&&S(r,2),b(t,0,2,r),this.l(e)}za(e,t){return Ae(this,e,t),this.embeddings}Aa(e,t,r){return Le(this,e,r,t),this.embeddings}m(){var e=new ae;F(e,"image_in"),F(e,"norm_rect"),k(e,"embeddings_out");const t=new oe;Te(t,mu,this.h);const r=new Z;ne(r,2,"mediapipe.tasks.vision.image_embedder.ImageEmbedderGraph"),P(r,"IMAGE:image_in"),P(r,"NORM_RECT:norm_rect"),_(r,"EMBEDDINGS:embeddings_out"),r.o(t),ge(e,r),this.g.attachProtoListener("embeddings_out",((s,n)=>{s=iu(s),this.embeddings=(function(i){return{embeddings:Ie(i,nu,1).map((o=>{var u,h;const a={headIndex:pe(o,3)??0??-1,headName:X(T(o,4))??""??""};var c=o.v;return Gi(c,0|c[p],Ko,Ns(o,1))!==void 0?(o=it(o=E(o,Ko,Ns(o,1),void 0),1,Se,nt()),a.floatEmbedding=o.slice()):(c=new Uint8Array(0),a.quantizedEmbedding=((h=(u=E(o,su,Ns(o,2),void 0))==null?void 0:u.na())==null?void 0:h.h())??c),a})),timestampMs:_a(Wi(i))}})(s),d(this,n)})),this.g.attachEmptyPacketListener("embeddings_out",(s=>{d(this,s)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};de.cosineSimilarity=function(e,t){if(e.floatEmbedding&&t.floatEmbedding)e=Ea(e.floatEmbedding,t.floatEmbedding);else{if(!e.quantizedEmbedding||!t.quantizedEmbedding)throw Error("Cannot compute cosine similarity between quantized and float embeddings.");e=Ea(Aa(e.quantizedEmbedding),Aa(t.quantizedEmbedding))}return e},de.prototype.embedForVideo=de.prototype.Aa,de.prototype.embed=de.prototype.za,de.prototype.setOptions=de.prototype.o,de.createFromModelPath=function(e,t){return A(de,e,{baseOptions:{modelAssetPath:t}})},de.createFromModelBuffer=function(e,t){return A(de,e,{baseOptions:{modelAssetBuffer:t}})},de.createFromOptions=function(e,t){return A(de,e,t)};var On=class{constructor(e,t,r){this.confidenceMasks=e,this.categoryMask=t,this.qualityScores=r}close(){var e,t;(e=this.confidenceMasks)==null||e.forEach((r=>{r.close()})),(t=this.categoryMask)==null||t.close()}};function Tu(e){var r,s;const t=(function(n){return Ie(n,Z,1)})(e.ca()).filter((n=>(X(T(n,1))??"").includes("mediapipe.tasks.TensorsToSegmentationCalculator")));if(e.u=[],t.length>1)throw Error("The graph has more than one mediapipe.tasks.TensorsToSegmentationCalculator.");t.length===1&&(((s=(r=E(t[0],oe,7))==null?void 0:r.j())==null?void 0:s.g())??new Map).forEach(((n,i)=>{e.u[Number(i)]=X(T(n,1))??""}))}function ec(e){e.categoryMask=void 0,e.confidenceMasks=void 0,e.qualityScores=void 0}function tc(e){try{const t=new On(e.confidenceMasks,e.categoryMask,e.qualityScores);if(!e.j)return t;e.j(t)}finally{is(e)}}On.prototype.close=On.prototype.close;var ee=class extends ce{constructor(e,t){super(new we(e,t),"image_in","norm_rect",!1),this.u=[],this.outputCategoryMask=!1,this.outputConfidenceMasks=!0,this.h=new gn,this.A=new da,b(this.h,0,3,this.A),b(e=this.h,0,1,t=new $)}get baseOptions(){return E(this.h,$,1)}set baseOptions(e){b(this.h,0,1,e)}o(e){return e.displayNamesLocale!==void 0?S(this.h,2,cr(e.displayNamesLocale)):"displayNamesLocale"in e&&S(this.h,2),"outputCategoryMask"in e&&(this.outputCategoryMask=e.outputCategoryMask??!1),"outputConfidenceMasks"in e&&(this.outputConfidenceMasks=e.outputConfidenceMasks??!0),super.l(e)}L(){Tu(this)}segment(e,t,r){const s=typeof t!="function"?t:{};return this.j=typeof t=="function"?t:r,ec(this),Ae(this,e,s),tc(this)}La(e,t,r,s){const n=typeof r!="function"?r:{};return this.j=typeof r=="function"?r:s,ec(this),Le(this,e,n,t),tc(this)}Da(){return this.u}m(){var e=new ae;F(e,"image_in"),F(e,"norm_rect");const t=new oe;Te(t,ma,this.h);const r=new Z;ne(r,2,"mediapipe.tasks.vision.image_segmenter.ImageSegmenterGraph"),P(r,"IMAGE:image_in"),P(r,"NORM_RECT:norm_rect"),r.o(t),ge(e,r),ns(this,e),this.outputConfidenceMasks&&(k(e,"confidence_masks"),_(r,"CONFIDENCE_MASKS:confidence_masks"),Ht(this,"confidence_masks"),this.g.aa("confidence_masks",((s,n)=>{this.confidenceMasks=s.map((i=>Wt(this,i,!0,!this.j))),d(this,n)})),this.g.attachEmptyPacketListener("confidence_masks",(s=>{this.confidenceMasks=[],d(this,s)}))),this.outputCategoryMask&&(k(e,"category_mask"),_(r,"CATEGORY_MASK:category_mask"),Ht(this,"category_mask"),this.g.Z("category_mask",((s,n)=>{this.categoryMask=Wt(this,s,!1,!this.j),d(this,n)})),this.g.attachEmptyPacketListener("category_mask",(s=>{this.categoryMask=void 0,d(this,s)}))),k(e,"quality_scores"),_(r,"QUALITY_SCORES:quality_scores"),this.g.attachFloatVectorListener("quality_scores",((s,n)=>{this.qualityScores=s,d(this,n)})),this.g.attachEmptyPacketListener("quality_scores",(s=>{this.categoryMask=void 0,d(this,s)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};ee.prototype.getLabels=ee.prototype.Da,ee.prototype.segmentForVideo=ee.prototype.La,ee.prototype.segment=ee.prototype.segment,ee.prototype.setOptions=ee.prototype.o,ee.createFromModelPath=function(e,t){return A(ee,e,{baseOptions:{modelAssetPath:t}})},ee.createFromModelBuffer=function(e,t){return A(ee,e,{baseOptions:{modelAssetBuffer:t}})},ee.createFromOptions=function(e,t){return A(ee,e,t)};var In=class{constructor(e,t,r){this.confidenceMasks=e,this.categoryMask=t,this.qualityScores=r}close(){var e,t;(e=this.confidenceMasks)==null||e.forEach((r=>{r.close()})),(t=this.categoryMask)==null||t.close()}};In.prototype.close=In.prototype.close;var Fe=class extends ce{constructor(e,t){super(new we(e,t),"image_in","norm_rect_in",!1),this.outputCategoryMask=!1,this.outputConfidenceMasks=!0,this.h=new gn,this.u=new da,b(this.h,0,3,this.u),b(e=this.h,0,1,t=new $)}get baseOptions(){return E(this.h,$,1)}set baseOptions(e){b(this.h,0,1,e)}o(e){return"outputCategoryMask"in e&&(this.outputCategoryMask=e.outputCategoryMask??!1),"outputConfidenceMasks"in e&&(this.outputConfidenceMasks=e.outputConfidenceMasks??!0),super.l(e)}segment(e,t,r,s){const n=typeof r!="function"?r:{};if(this.j=typeof r=="function"?r:s,this.qualityScores=this.categoryMask=this.confidenceMasks=void 0,r=this.C+1,s=new ya,t.keypoint&&t.scribble)throw Error("Cannot provide both keypoint and scribble.");if(t.keypoint){var i=new yn;De(i,3,or(!0),!1),De(i,1,ir(t.keypoint.x),0),De(i,2,ir(t.keypoint.y),0),ur(s,1,bn,i)}else{if(!t.scribble)throw Error("Must provide either a keypoint or a scribble.");{const a=new yu;for(i of t.scribble)De(t=new yn,3,or(!0),!1),De(t,1,ir(i.x),0),De(t,2,ir(i.y),0),js(a,1,yn,t);ur(s,2,bn,a)}}this.g.addProtoToStream(s.g(),"mediapipe.tasks.vision.interactive_segmenter.proto.RegionOfInterest","roi_in",r),Ae(this,e,n);e:{try{const a=new In(this.confidenceMasks,this.categoryMask,this.qualityScores);if(!this.j){var o=a;break e}this.j(a)}finally{is(this)}o=void 0}return o}m(){var e=new ae;F(e,"image_in"),F(e,"roi_in"),F(e,"norm_rect_in");const t=new oe;Te(t,ma,this.h);const r=new Z;ne(r,2,"mediapipe.tasks.vision.interactive_segmenter.InteractiveSegmenterGraphV2"),P(r,"IMAGE:image_in"),P(r,"ROI:roi_in"),P(r,"NORM_RECT:norm_rect_in"),r.o(t),ge(e,r),ns(this,e),this.outputConfidenceMasks&&(k(e,"confidence_masks"),_(r,"CONFIDENCE_MASKS:confidence_masks"),Ht(this,"confidence_masks"),this.g.aa("confidence_masks",((s,n)=>{this.confidenceMasks=s.map((i=>Wt(this,i,!0,!this.j))),d(this,n)})),this.g.attachEmptyPacketListener("confidence_masks",(s=>{this.confidenceMasks=[],d(this,s)}))),this.outputCategoryMask&&(k(e,"category_mask"),_(r,"CATEGORY_MASK:category_mask"),Ht(this,"category_mask"),this.g.Z("category_mask",((s,n)=>{this.categoryMask=Wt(this,s,!1,!this.j),d(this,n)})),this.g.attachEmptyPacketListener("category_mask",(s=>{this.categoryMask=void 0,d(this,s)}))),k(e,"quality_scores"),_(r,"QUALITY_SCORES:quality_scores"),this.g.attachFloatVectorListener("quality_scores",((s,n)=>{this.qualityScores=s,d(this,n)})),this.g.attachEmptyPacketListener("quality_scores",(s=>{this.categoryMask=void 0,d(this,s)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};Fe.prototype.segment=Fe.prototype.segment,Fe.prototype.setOptions=Fe.prototype.o,Fe.createFromModelPath=function(e,t){return A(Fe,e,{baseOptions:{modelAssetPath:t}})},Fe.createFromModelBuffer=function(e,t){return A(Fe,e,{baseOptions:{modelAssetBuffer:t}})},Fe.createFromOptions=function(e,t){return A(Fe,e,t)};var be=class extends ce{constructor(e,t){super(new we(e,t),"input_frame_gpu","norm_rect",!1),this.j={detections:[]},b(e=this.h=new ba,0,1,t=new $)}get baseOptions(){return E(this.h,$,1)}set baseOptions(e){b(this.h,0,1,e)}o(e){return e.displayNamesLocale!==void 0?S(this.h,2,cr(e.displayNamesLocale)):"displayNamesLocale"in e&&S(this.h,2),e.maxResults!==void 0?Re(this.h,3,e.maxResults):"maxResults"in e&&S(this.h,3),e.scoreThreshold!==void 0?y(this.h,4,e.scoreThreshold):"scoreThreshold"in e&&S(this.h,4),e.categoryAllowlist!==void 0?Rr(this.h,5,e.categoryAllowlist):"categoryAllowlist"in e&&S(this.h,5),e.categoryDenylist!==void 0?Rr(this.h,6,e.categoryDenylist):"categoryDenylist"in e&&S(this.h,6),this.l(e)}F(e,t){return this.j={detections:[]},Ae(this,e,t),this.j}G(e,t,r){return this.j={detections:[]},Le(this,e,r,t),this.j}m(){var e=new ae;F(e,"input_frame_gpu"),F(e,"norm_rect"),k(e,"detections");const t=new oe;Te(t,bu,this.h);const r=new Z;ne(r,2,"mediapipe.tasks.vision.ObjectDetectorGraph"),P(r,"IMAGE:input_frame_gpu"),P(r,"NORM_RECT:norm_rect"),_(r,"DETECTIONS:detections"),r.o(t),ge(e,r),this.g.attachProtoVectorListener("detections",((s,n)=>{for(const i of s)s=Go(i),this.j.detections.push(wa(s));d(this,n)})),this.g.attachEmptyPacketListener("detections",(s=>{d(this,s)})),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};be.prototype.detectForVideo=be.prototype.G,be.prototype.detect=be.prototype.F,be.prototype.setOptions=be.prototype.o,be.createFromModelPath=async function(e,t){return A(be,e,{baseOptions:{modelAssetPath:t}})},be.createFromModelBuffer=function(e,t){return A(be,e,{baseOptions:{modelAssetBuffer:t}})},be.createFromOptions=function(e,t){return A(be,e,t)};var Rn=class{constructor(e,t,r){this.landmarks=e,this.worldLandmarks=t,this.segmentationMasks=r}close(){var e;(e=this.segmentationMasks)==null||e.forEach((t=>{t.close()}))}};function rc(e){e.landmarks=[],e.worldLandmarks=[],e.segmentationMasks=void 0}function sc(e){try{const t=new Rn(e.landmarks,e.worldLandmarks,e.segmentationMasks);if(!e.u)return t;e.u(t)}finally{is(e)}}Rn.prototype.close=Rn.prototype.close;var fe=class extends ce{constructor(e,t){super(new we(e,t),"image_in","norm_rect",!1),this.landmarks=[],this.worldLandmarks=[],this.outputSegmentationMasks=!1,b(e=this.h=new va,0,1,t=new $),this.A=new ca,b(this.h,0,3,this.A),this.j=new aa,b(this.h,0,2,this.j),Re(this.j,4,1),y(this.j,2,.5),y(this.A,2,.5),y(this.h,4,.5)}get baseOptions(){return E(this.h,$,1)}set baseOptions(e){b(this.h,0,1,e)}o(e){return"numPoses"in e&&Re(this.j,4,e.numPoses??1),"minPoseDetectionConfidence"in e&&y(this.j,2,e.minPoseDetectionConfidence??.5),"minTrackingConfidence"in e&&y(this.h,4,e.minTrackingConfidence??.5),"minPosePresenceConfidence"in e&&y(this.A,2,e.minPosePresenceConfidence??.5),"outputSegmentationMasks"in e&&(this.outputSegmentationMasks=e.outputSegmentationMasks??!1),this.l(e)}F(e,t,r){const s=typeof t!="function"?t:{};return this.u=typeof t=="function"?t:r,rc(this),Ae(this,e,s),sc(this)}G(e,t,r,s){const n=typeof r!="function"?r:{};return this.u=typeof r=="function"?r:s,rc(this),Le(this,e,n,t),sc(this)}m(){var e=new ae;F(e,"image_in"),F(e,"norm_rect"),k(e,"normalized_landmarks"),k(e,"world_landmarks"),k(e,"segmentation_masks");const t=new oe;Te(t,vu,this.h);const r=new Z;ne(r,2,"mediapipe.tasks.vision.pose_landmarker.PoseLandmarkerGraph"),P(r,"IMAGE:image_in"),P(r,"NORM_RECT:norm_rect"),_(r,"NORM_LANDMARKS:normalized_landmarks"),_(r,"WORLD_LANDMARKS:world_landmarks"),r.o(t),ge(e,r),ns(this,e),this.g.attachProtoVectorListener("normalized_landmarks",((s,n)=>{this.landmarks=[];for(const i of s)s=pr(i),this.landmarks.push(rs(s));d(this,n)})),this.g.attachEmptyPacketListener("normalized_landmarks",(s=>{this.landmarks=[],d(this,s)})),this.g.attachProtoVectorListener("world_landmarks",((s,n)=>{this.worldLandmarks=[];for(const i of s)s=Vt(i),this.worldLandmarks.push(mr(s));d(this,n)})),this.g.attachEmptyPacketListener("world_landmarks",(s=>{this.worldLandmarks=[],d(this,s)})),this.outputSegmentationMasks&&(_(r,"SEGMENTATION_MASK:segmentation_masks"),Ht(this,"segmentation_masks"),this.g.aa("segmentation_masks",((s,n)=>{this.segmentationMasks=s.map((i=>Wt(this,i,!0,!this.u))),d(this,n)})),this.g.attachEmptyPacketListener("segmentation_masks",(s=>{this.segmentationMasks=[],d(this,s)}))),e=e.g(),this.setGraph(new Uint8Array(e),!0)}};fe.prototype.detectForVideo=fe.prototype.G,fe.prototype.detect=fe.prototype.F,fe.prototype.setOptions=fe.prototype.o,fe.createFromModelPath=function(e,t){return A(fe,e,{baseOptions:{modelAssetPath:t}})},fe.createFromModelBuffer=function(e,t){return A(fe,e,{baseOptions:{modelAssetBuffer:t}})},fe.createFromOptions=function(e,t){return A(fe,e,t)},fe.POSE_CONNECTIONS=Qa;const nc=.1,ic=.42,Nn=.24,Un=.14,Bn=.18,oc=.12,Pu=0,Mu=1,Lu=2;function ac(e){var h;const{detections:t,width:r,height:s}=e;if(t.length===0)return{hasFace:!1,faceCount:0,confidence:0,captureScore:0,isCentered:!1,passesQualityChecks:!1,feedback:"no-face",message:"No face detected. Center your face in the oval and look at the camera."};if(t.length>1)return{hasFace:!0,faceCount:t.length,confidence:((h=t[0])==null?void 0:h.confidence)??0,captureScore:0,isCentered:!1,passesQualityChecks:!1,feedback:"multiple-faces",message:"Multiple faces detected. Make sure only one person is in view."};const n=t[0],i=n.boundingBox;if(!i)return{hasFace:!0,faceCount:1,confidence:n.confidence,captureScore:0,isCentered:!1,passesQualityChecks:!1,feedback:"face-unclear",message:"Face detected, but the frame is unclear. Hold still and try again."};const o=i.width*i.height/(r*s);if(o<nc)return dt(n.confidence,"too-far","Move closer to the camera.");if(o>ic)return dt(n.confidence,"too-close","Move slightly farther away.");const a=(i.originX+i.width/2)/r,c=(i.originY+i.height/2)/s;if(a<.5-Un)return dt(n.confidence,"move-left","Move your face a little to the left.");if(a>.5+Un)return dt(n.confidence,"move-right","Move your face a little to the right.");if(c<.5-Bn)return dt(n.confidence,"move-down","Move your face slightly down.");if(c>.5+Bn)return dt(n.confidence,"move-up","Move your face slightly up.");const u=Fu(n.keypoints);return u?dt(n.confidence,u.feedback,u.message):{hasFace:!0,faceCount:1,confidence:n.confidence,captureScore:xu(n.confidence,a,c,o),isCentered:!0,passesQualityChecks:!0,feedback:"good",message:"Hold still. Capturing automatically..."}}function Fu(e){const t=e[Pu],r=e[Mu],s=e[Lu];if(!t||!r||!s)return null;const n=(t.x+r.x)/2,i=Math.abs(r.x-t.x);if(i===0)return null;const o=(s.x-n)/i;return o<=-oc?{feedback:"turn-left",message:"Turn slightly left so your face points at the camera."}:o>=oc?{feedback:"turn-right",message:"Turn slightly right so your face points at the camera."}:null}function dt(e,t,r){return{hasFace:!0,faceCount:1,confidence:e,captureScore:0,isCentered:!1,passesQualityChecks:!1,feedback:t,message:r}}function $2(e){return e}function xu(e,t,r,s){const n=Math.abs(t-.5)/Un,i=Math.abs(r-.5)/Bn,o=1-Math.min((n+i)/2,1),a=Math.max(Math.abs(Nn-nc),Math.abs(ic-Nn)),c=1-Math.min(Math.abs(s-Nn)/a,1);return Number((e*.55+o*.3+c*.15).toFixed(4))}const $u="https://cdn.jsdelivr.net/npm/@mediapipe/tasks-vision/wasm",Ou="https://storage.googleapis.com/mediapipe-models/face_detector/blaze_face_short_range/float16/1/blaze_face_short_range.tflite",Iu=.7;let cc=null,hc=null,uc=null;function Ru(){return cc??(cc=lt.forVisionTasks($u)),cc}function Nu(){return hc??(hc=dc("IMAGE")),hc}function lc(){return uc??(uc=dc("VIDEO")),uc}async function dc(e){const t=await Ru();return he.createFromOptions(t,{baseOptions:{modelAssetPath:Ou},runningMode:e,minDetectionConfidence:Iu})}async function Dn(e){const r=(await Nu()).detect(e);return ac({detections:pc(r.detections),width:e.naturalWidth,height:e.naturalHeight})}async function fc(e,t){const s=(await lc()).detectForVideo(e,t);return ac({detections:pc(s.detections),width:e.videoWidth,height:e.videoHeight})}function pc(e){return e.map(t=>{var r;return{boundingBox:t.boundingBox?{originX:t.boundingBox.originX,originY:t.boundingBox.originY,width:t.boundingBox.width,height:t.boundingBox.height}:void 0,confidence:((r=t.categories[0])==null?void 0:r.score)??0,keypoints:t.keypoints.map(s=>({x:s.x,y:s.y}))}})}const mc="Capturing Face",gc="Accept";function yc(e){return{presentation:(e==null?void 0:e.presentation)??"popup",capturePreference:(e==null?void 0:e.capturePreference)??"auto-preferred",allowMediaPickerFallback:(e==null?void 0:e.allowMediaPickerFallback)??!0,container:e==null?void 0:e.container,label:(e==null?void 0:e.label)??mc,confirmLabel:(e==null?void 0:e.confirmLabel)??gc}}async function Uu(e){var n,i;const t=/WhatsApp/i.test(e.userAgent??navigator.userAgent),r=e.hasMediaDevices??typeof((n=navigator.mediaDevices)==null?void 0:n.getUserMedia)=="function";let s=!1;return!t&&r&&e.capturePreference==="auto-preferred"&&(s=await(((i=e.probeAutoCapture)==null?void 0:i.call(e))??Du())),{prefersMediaPicker:t,supportsMediaDevices:r,supportsAutoCapture:s}}function Bu(e,t){const r=[];return t.supportsMediaDevices&&(e.capturePreference==="auto-preferred"&&t.supportsAutoCapture&&r.push("auto-camera"),r.push("manual-camera")),e.allowMediaPickerFallback&&(r.length===0||r[r.length-1]!=="media-picker")&&r.push("media-picker"),{presentation:e.presentation,steps:r,capabilities:t}}async function Du(){if(typeof window.requestAnimationFrame!="function"||typeof window.cancelAnimationFrame!="function"||!document.createElement("canvas").getContext("2d"))return!1;try{return await lc(),!0}catch{return!1}}class jn extends Error{constructor(t,r){super(t),this.name="CameraAccessError",(r==null?void 0:r.cause)!==void 0&&Object.defineProperty(this,"cause",{configurable:!0,value:r.cause})}}async function ju(){var e;if(!((e=navigator.mediaDevices)!=null&&e.getUserMedia))throw new jn("In-browser camera capture is not supported in this browser.");try{return await navigator.mediaDevices.getUserMedia({video:{facingMode:{ideal:"user"}},audio:!1})}catch(t){throw new jn(Wu(t),{cause:t})}}async function Vu(e,t="Failed to start the camera preview."){if(e.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA){await e.play();return}await new Promise((r,s)=>{const n=()=>{o(),r()},i=()=>{o(),s(new Error(t))},o=()=>{e.removeEventListener("loadedmetadata",n),e.removeEventListener("error",i)};e.addEventListener("loadedmetadata",n,{once:!0}),e.addEventListener("error",i,{once:!0})}),await e.play()}function Gu(e){e.play().catch(()=>{})}function Hu(){const e=document.createElement("canvas"),t=document.createElement("canvas");let r=!1;const s=i=>{const o=i.getContext("2d");if(!o)throw new Error("Failed to initialize camera capture.");return o},n=(i,o)=>{if(!i.videoWidth||!i.videoHeight)throw new Error("Camera preview is not ready yet.");(o.width!==i.videoWidth||o.height!==i.videoHeight)&&(o.width=i.videoWidth,o.height=i.videoHeight),s(o).drawImage(i,0,0,o.width,o.height)};return{async captureBlob(i){return n(i,e),vc(e)},storeBestFrame(i){n(i,t),r=!0},hasStoredBestFrame(){return r},async storedBestFrameToBlob(){if(!r)throw new Error("No best frame is available.");return vc(t)},resetStoredBestFrame(){r=!1,t.width=0,t.height=0}}}function bc(){return new Promise(e=>{const t=document.createElement("input");t.type="file",t.accept="image/*",t.capture="user",t.style.display="none",t.addEventListener("change",()=>{var i;const n=((i=t.files)==null?void 0:i[0])??null;s(),e(n)});const r=()=>{setTimeout(()=>{var n;(n=t.files)!=null&&n.length||(s(),e(null))},500)};window.addEventListener("focus",r,{once:!0});function s(){window.removeEventListener("focus",r),t.remove()}document.body.appendChild(t),t.click()})}function Vn(e){return new Promise((t,r)=>{const s=URL.createObjectURL(e),n=new Image;n.onload=()=>{URL.revokeObjectURL(s),t(n)},n.onerror=()=>{URL.revokeObjectURL(s),r(new Error("Failed to load captured image"))},n.src=s})}function zu(e){return new Promise((t,r)=>{const s=new FileReader;s.onload=()=>t(s.result),s.onerror=()=>r(new Error("Failed to read image")),s.readAsDataURL(e)})}function Wu(e){if(e instanceof DOMException)switch(e.name){case"NotAllowedError":case"SecurityError":return"Camera access was denied. Allow camera access and try again.";case"NotFoundError":return"No camera was found on this device.";case"NotReadableError":return"The camera is already in use by another application.";default:return e.message||"Failed to access the camera."}return e instanceof Error?e.message:"Failed to access the camera."}function vc(e){return new Promise((t,r)=>{e.toBlob(s=>{if(!s){r(new Error("Failed to capture an image."));return}t(s)},"image/jpeg",.92)})}const Ku="2147483647";async function _c(e){var s;const t=yc(e);if(t.presentation==="embedded")return qu(t);if(!(typeof((s=navigator.mediaDevices)==null?void 0:s.getUserMedia)=="function")){if(t.allowMediaPickerFallback)return bc();throw new Error("No supported capture strategy is available in this environment.")}return Yu(t)}async function qu(e){await Promise.resolve().then(()=>Uc);const t=Xu(e.container),r=t.tagName.toLowerCase()==="simface-capture",s=r?t:document.createElement("simface-capture");return r||t.appendChild(s),s.embedded=!0,s.label=e.label,s.confirmLabel=e.confirmLabel,s.capturePreference=e.capturePreference,s.allowMediaPickerFallback=e.allowMediaPickerFallback,new Promise((n,i)=>{const o=()=>{s.removeEventListener("simface-captured",a),s.removeEventListener("simface-cancelled",c),s.removeEventListener("simface-error",u),s.active=!1,r||s.remove()},a=h=>{o(),n(h.detail.imageBlob)},c=()=>{o(),n(null)},u=h=>{o(),i(new Error(h.detail.error))};s.addEventListener("simface-captured",a),s.addEventListener("simface-cancelled",c),s.addEventListener("simface-error",u),s.startCapture().catch(h=>{o(),i(h instanceof Error?h:new Error("Embedded capture failed."))})})}function Xu(e){if(!e)throw new Error("Embedded capture requires a container element or selector.");if(e instanceof HTMLElement)return e;const t=document.querySelector(e);if(!t)throw new Error(`No element matched the embedded capture container selector "${e}".`);return t}async function Yu(e){return await Promise.resolve().then(()=>Uc),new Promise((t,r)=>{let s=!1,n=null;const i=document.createElement("div");i.setAttribute("data-simface-camera-overlay","true"),i.setAttribute("role","dialog"),i.setAttribute("aria-modal","true"),Qu(i,{position:"fixed",inset:"0",zIndex:Ku,display:"flex",alignItems:"center",justifyContent:"center",padding:"24px",background:"rgba(15, 23, 42, 0.82)",colorScheme:"light"});const o=document.createElement("simface-capture");o.label=e.label,o.confirmLabel=e.confirmLabel,o.capturePreference=e.capturePreference,o.allowMediaPickerFallback=e.allowMediaPickerFallback,i.appendChild(o),document.body.appendChild(i);const a=()=>{n&&window.removeEventListener("keydown",n),o.removeEventListener("simface-captured",u),o.removeEventListener("simface-cancelled",h),o.removeEventListener("simface-error",l),o.active=!1,i.remove()},c=(f,v)=>{if(!s){if(s=!0,a(),v){r(v);return}t(f)}},u=f=>{c(f.detail.imageBlob)},h=()=>{c(null)},l=f=>{c(null,new Error(f.detail.error))};n=f=>{f.key==="Escape"&&c(null)},o.addEventListener("simface-captured",u),o.addEventListener("simface-cancelled",h),o.addEventListener("simface-error",l),window.addEventListener("keydown",n),o.startCapture().catch(f=>{c(null,f instanceof Error?f:new Error("Popup capture failed."))})})}function Qu(e,t){Object.assign(e.style,t)}/**
|
|
16
16
|
* @license
|
|
17
17
|
* Copyright 2019 Google LLC
|
|
18
18
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
19
|
-
*/const cs=globalThis,Gn=cs.ShadowRoot&&(cs.ShadyCSS===void 0||cs.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Hn=Symbol(),
|
|
19
|
+
*/const cs=globalThis,Gn=cs.ShadowRoot&&(cs.ShadyCSS===void 0||cs.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Hn=Symbol(),wc=new WeakMap;let Ac=class{constructor(t,r,s){if(this._$cssResult$=!0,s!==Hn)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=r}get styleSheet(){let t=this.o;const r=this.t;if(Gn&&t===void 0){const s=r!==void 0&&r.length===1;s&&(t=wc.get(r)),t===void 0&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),s&&wc.set(r,t))}return t}toString(){return this.cssText}};const Ju=e=>new Ac(typeof e=="string"?e:e+"",void 0,Hn),Zu=(e,...t)=>{const r=e.length===1?e[0]:t.reduce((s,n,i)=>s+(o=>{if(o._$cssResult$===!0)return o.cssText;if(typeof o=="number")return o;throw Error("Value passed to 'css' function must be a 'css' function result: "+o+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(n)+e[i+1],e[0]);return new Ac(r,e,Hn)},e2=(e,t)=>{if(Gn)e.adoptedStyleSheets=t.map(r=>r instanceof CSSStyleSheet?r:r.styleSheet);else for(const r of t){const s=document.createElement("style"),n=cs.litNonce;n!==void 0&&s.setAttribute("nonce",n),s.textContent=r.cssText,e.appendChild(s)}},Ec=Gn?e=>e:e=>e instanceof CSSStyleSheet?(t=>{let r="";for(const s of t.cssRules)r+=s.cssText;return Ju(r)})(e):e;/**
|
|
20
20
|
* @license
|
|
21
21
|
* Copyright 2017 Google LLC
|
|
22
22
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
23
|
-
*/const{is:t2,defineProperty:r2,getOwnPropertyDescriptor:s2,getOwnPropertyNames:n2,getOwnPropertySymbols:i2,getPrototypeOf:o2}=Object,Ke=globalThis,
|
|
23
|
+
*/const{is:t2,defineProperty:r2,getOwnPropertyDescriptor:s2,getOwnPropertyNames:n2,getOwnPropertySymbols:i2,getPrototypeOf:o2}=Object,Ke=globalThis,kc=Ke.trustedTypes,a2=kc?kc.emptyScript:"",zn=Ke.reactiveElementPolyfillSupport,yr=(e,t)=>e,hs={toAttribute(e,t){switch(t){case Boolean:e=e?a2:null;break;case Object:case Array:e=e==null?e:JSON.stringify(e)}return e},fromAttribute(e,t){let r=e;switch(t){case Boolean:r=e!==null;break;case Number:r=e===null?null:Number(e);break;case Object:case Array:try{r=JSON.parse(e)}catch{r=null}}return r}},Wn=(e,t)=>!t2(e,t),Sc={attribute:!0,type:String,converter:hs,reflect:!1,useDefault:!1,hasChanged:Wn};Symbol.metadata??(Symbol.metadata=Symbol("metadata")),Ke.litPropertyMetadata??(Ke.litPropertyMetadata=new WeakMap);let Kt=class extends HTMLElement{static addInitializer(t){this._$Ei(),(this.l??(this.l=[])).push(t)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(t,r=Sc){if(r.state&&(r.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(t)&&((r=Object.create(r)).wrapped=!0),this.elementProperties.set(t,r),!r.noAccessor){const s=Symbol(),n=this.getPropertyDescriptor(t,s,r);n!==void 0&&r2(this.prototype,t,n)}}static getPropertyDescriptor(t,r,s){const{get:n,set:i}=s2(this.prototype,t)??{get(){return this[r]},set(o){this[r]=o}};return{get:n,set(o){const a=n==null?void 0:n.call(this);i==null||i.call(this,o),this.requestUpdate(t,a,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)??Sc}static _$Ei(){if(this.hasOwnProperty(yr("elementProperties")))return;const t=o2(this);t.finalize(),t.l!==void 0&&(this.l=[...t.l]),this.elementProperties=new Map(t.elementProperties)}static finalize(){if(this.hasOwnProperty(yr("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(yr("properties"))){const r=this.properties,s=[...n2(r),...i2(r)];for(const n of s)this.createProperty(n,r[n])}const t=this[Symbol.metadata];if(t!==null){const r=litPropertyMetadata.get(t);if(r!==void 0)for(const[s,n]of r)this.elementProperties.set(s,n)}this._$Eh=new Map;for(const[r,s]of this.elementProperties){const n=this._$Eu(r,s);n!==void 0&&this._$Eh.set(n,r)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(t){const r=[];if(Array.isArray(t)){const s=new Set(t.flat(1/0).reverse());for(const n of s)r.unshift(Ec(n))}else t!==void 0&&r.push(Ec(t));return r}static _$Eu(t,r){const s=r.attribute;return s===!1?void 0:typeof s=="string"?s:typeof t=="string"?t.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){var t;this._$ES=new Promise(r=>this.enableUpdating=r),this._$AL=new Map,this._$E_(),this.requestUpdate(),(t=this.constructor.l)==null||t.forEach(r=>r(this))}addController(t){var r;(this._$EO??(this._$EO=new Set)).add(t),this.renderRoot!==void 0&&this.isConnected&&((r=t.hostConnected)==null||r.call(t))}removeController(t){var r;(r=this._$EO)==null||r.delete(t)}_$E_(){const t=new Map,r=this.constructor.elementProperties;for(const s of r.keys())this.hasOwnProperty(s)&&(t.set(s,this[s]),delete this[s]);t.size>0&&(this._$Ep=t)}createRenderRoot(){const t=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return e2(t,this.constructor.elementStyles),t}connectedCallback(){var t;this.renderRoot??(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),(t=this._$EO)==null||t.forEach(r=>{var s;return(s=r.hostConnected)==null?void 0:s.call(r)})}enableUpdating(t){}disconnectedCallback(){var t;(t=this._$EO)==null||t.forEach(r=>{var s;return(s=r.hostDisconnected)==null?void 0:s.call(r)})}attributeChangedCallback(t,r,s){this._$AK(t,s)}_$ET(t,r){var i;const s=this.constructor.elementProperties.get(t),n=this.constructor._$Eu(t,s);if(n!==void 0&&s.reflect===!0){const o=(((i=s.converter)==null?void 0:i.toAttribute)!==void 0?s.converter:hs).toAttribute(r,s.type);this._$Em=t,o==null?this.removeAttribute(n):this.setAttribute(n,o),this._$Em=null}}_$AK(t,r){var i,o;const s=this.constructor,n=s._$Eh.get(t);if(n!==void 0&&this._$Em!==n){const a=s.getPropertyOptions(n),c=typeof a.converter=="function"?{fromAttribute:a.converter}:((i=a.converter)==null?void 0:i.fromAttribute)!==void 0?a.converter:hs;this._$Em=n;const u=c.fromAttribute(r,a.type);this[n]=u??((o=this._$Ej)==null?void 0:o.get(n))??u,this._$Em=null}}requestUpdate(t,r,s,n=!1,i){var o;if(t!==void 0){const a=this.constructor;if(n===!1&&(i=this[t]),s??(s=a.getPropertyOptions(t)),!((s.hasChanged??Wn)(i,r)||s.useDefault&&s.reflect&&i===((o=this._$Ej)==null?void 0:o.get(t))&&!this.hasAttribute(a._$Eu(t,s))))return;this.C(t,r,s)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(t,r,{useDefault:s,reflect:n,wrapped:i},o){s&&!(this._$Ej??(this._$Ej=new Map)).has(t)&&(this._$Ej.set(t,o??r??this[t]),i!==!0||o!==void 0)||(this._$AL.has(t)||(this.hasUpdated||s||(r=void 0),this._$AL.set(t,r)),n===!0&&this._$Em!==t&&(this._$Eq??(this._$Eq=new Set)).add(t))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(r){Promise.reject(r)}const t=this.scheduleUpdate();return t!=null&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var s;if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??(this.renderRoot=this.createRenderRoot()),this._$Ep){for(const[i,o]of this._$Ep)this[i]=o;this._$Ep=void 0}const n=this.constructor.elementProperties;if(n.size>0)for(const[i,o]of n){const{wrapped:a}=o,c=this[i];a!==!0||this._$AL.has(i)||c===void 0||this.C(i,void 0,o,c)}}let t=!1;const r=this._$AL;try{t=this.shouldUpdate(r),t?(this.willUpdate(r),(s=this._$EO)==null||s.forEach(n=>{var i;return(i=n.hostUpdate)==null?void 0:i.call(n)}),this.update(r)):this._$EM()}catch(n){throw t=!1,this._$EM(),n}t&&this._$AE(r)}willUpdate(t){}_$AE(t){var r;(r=this._$EO)==null||r.forEach(s=>{var n;return(n=s.hostUpdated)==null?void 0:n.call(s)}),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(t){return!0}update(t){this._$Eq&&(this._$Eq=this._$Eq.forEach(r=>this._$ET(r,this[r]))),this._$EM()}updated(t){}firstUpdated(t){}};Kt.elementStyles=[],Kt.shadowRootOptions={mode:"open"},Kt[yr("elementProperties")]=new Map,Kt[yr("finalized")]=new Map,zn==null||zn({ReactiveElement:Kt}),(Ke.reactiveElementVersions??(Ke.reactiveElementVersions=[])).push("2.1.2");/**
|
|
24
24
|
* @license
|
|
25
25
|
* Copyright 2017 Google LLC
|
|
26
26
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
27
|
-
*/const br=globalThis,
|
|
28
|
-
\f\r]`,wr=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,
|
|
29
|
-
\f\r"'\`<>=]|("|')|))|$)`,"g"),
|
|
27
|
+
*/const br=globalThis,Cc=e=>e,us=br.trustedTypes,Tc=us?us.createPolicy("lit-html",{createHTML:e=>e}):void 0,Pc="$lit$",qe=`lit$${Math.random().toFixed(9).slice(2)}$`,Mc="?"+qe,c2=`<${Mc}>`,ft=document,vr=()=>ft.createComment(""),_r=e=>e===null||typeof e!="object"&&typeof e!="function",Kn=Array.isArray,h2=e=>Kn(e)||typeof(e==null?void 0:e[Symbol.iterator])=="function",qn=`[
|
|
28
|
+
\f\r]`,wr=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,Lc=/-->/g,Fc=/>/g,pt=RegExp(`>|${qn}(?:([^\\s"'>=/]+)(${qn}*=${qn}*(?:[^
|
|
29
|
+
\f\r"'\`<>=]|("|')|))|$)`,"g"),xc=/'/g,$c=/"/g,Oc=/^(?:script|style|textarea|title)$/i,u2=e=>(t,...r)=>({_$litType$:e,strings:t,values:r}),xe=u2(1),qt=Symbol.for("lit-noChange"),q=Symbol.for("lit-nothing"),Ic=new WeakMap,mt=ft.createTreeWalker(ft,129);function Rc(e,t){if(!Kn(e)||!e.hasOwnProperty("raw"))throw Error("invalid template strings array");return Tc!==void 0?Tc.createHTML(t):t}const l2=(e,t)=>{const r=e.length-1,s=[];let n,i=t===2?"<svg>":t===3?"<math>":"",o=wr;for(let a=0;a<r;a++){const c=e[a];let u,h,l=-1,f=0;for(;f<c.length&&(o.lastIndex=f,h=o.exec(c),h!==null);)f=o.lastIndex,o===wr?h[1]==="!--"?o=Lc:h[1]!==void 0?o=Fc:h[2]!==void 0?(Oc.test(h[2])&&(n=RegExp("</"+h[2],"g")),o=pt):h[3]!==void 0&&(o=pt):o===pt?h[0]===">"?(o=n??wr,l=-1):h[1]===void 0?l=-2:(l=o.lastIndex-h[2].length,u=h[1],o=h[3]===void 0?pt:h[3]==='"'?$c:xc):o===$c||o===xc?o=pt:o===Lc||o===Fc?o=wr:(o=pt,n=void 0);const v=o===pt&&e[a+1].startsWith("/>")?" ":"";i+=o===wr?c+c2:l>=0?(s.push(u),c.slice(0,l)+Pc+c.slice(l)+qe+v):c+qe+(l===-2?a:v)}return[Rc(e,i+(e[r]||"<?>")+(t===2?"</svg>":t===3?"</math>":"")),s]};class Ar{constructor({strings:t,_$litType$:r},s){let n;this.parts=[];let i=0,o=0;const a=t.length-1,c=this.parts,[u,h]=l2(t,r);if(this.el=Ar.createElement(u,s),mt.currentNode=this.el.content,r===2||r===3){const l=this.el.content.firstChild;l.replaceWith(...l.childNodes)}for(;(n=mt.nextNode())!==null&&c.length<a;){if(n.nodeType===1){if(n.hasAttributes())for(const l of n.getAttributeNames())if(l.endsWith(Pc)){const f=h[o++],v=n.getAttribute(l).split(qe),x=/([.?@])?(.*)/.exec(f);c.push({type:1,index:i,name:x[2],strings:v,ctor:x[1]==="."?f2:x[1]==="?"?p2:x[1]==="@"?m2:ls}),n.removeAttribute(l)}else l.startsWith(qe)&&(c.push({type:6,index:i}),n.removeAttribute(l));if(Oc.test(n.tagName)){const l=n.textContent.split(qe),f=l.length-1;if(f>0){n.textContent=us?us.emptyScript:"";for(let v=0;v<f;v++)n.append(l[v],vr()),mt.nextNode(),c.push({type:2,index:++i});n.append(l[f],vr())}}}else if(n.nodeType===8)if(n.data===Mc)c.push({type:2,index:i});else{let l=-1;for(;(l=n.data.indexOf(qe,l+1))!==-1;)c.push({type:7,index:i}),l+=qe.length-1}i++}}static createElement(t,r){const s=ft.createElement("template");return s.innerHTML=t,s}}function Xt(e,t,r=e,s){var o,a;if(t===qt)return t;let n=s!==void 0?(o=r._$Co)==null?void 0:o[s]:r._$Cl;const i=_r(t)?void 0:t._$litDirective$;return(n==null?void 0:n.constructor)!==i&&((a=n==null?void 0:n._$AO)==null||a.call(n,!1),i===void 0?n=void 0:(n=new i(e),n._$AT(e,r,s)),s!==void 0?(r._$Co??(r._$Co=[]))[s]=n:r._$Cl=n),n!==void 0&&(t=Xt(e,n._$AS(e,t.values),n,s)),t}class d2{constructor(t,r){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=r}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){const{el:{content:r},parts:s}=this._$AD,n=((t==null?void 0:t.creationScope)??ft).importNode(r,!0);mt.currentNode=n;let i=mt.nextNode(),o=0,a=0,c=s[0];for(;c!==void 0;){if(o===c.index){let u;c.type===2?u=new Er(i,i.nextSibling,this,t):c.type===1?u=new c.ctor(i,c.name,c.strings,this,t):c.type===6&&(u=new g2(i,this,t)),this._$AV.push(u),c=s[++a]}o!==(c==null?void 0:c.index)&&(i=mt.nextNode(),o++)}return mt.currentNode=ft,n}p(t){let r=0;for(const s of this._$AV)s!==void 0&&(s.strings!==void 0?(s._$AI(t,s,r),r+=s.strings.length-2):s._$AI(t[r])),r++}}class Er{get _$AU(){var t;return((t=this._$AM)==null?void 0:t._$AU)??this._$Cv}constructor(t,r,s,n){this.type=2,this._$AH=q,this._$AN=void 0,this._$AA=t,this._$AB=r,this._$AM=s,this.options=n,this._$Cv=(n==null?void 0:n.isConnected)??!0}get parentNode(){let t=this._$AA.parentNode;const r=this._$AM;return r!==void 0&&(t==null?void 0:t.nodeType)===11&&(t=r.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,r=this){t=Xt(this,t,r),_r(t)?t===q||t==null||t===""?(this._$AH!==q&&this._$AR(),this._$AH=q):t!==this._$AH&&t!==qt&&this._(t):t._$litType$!==void 0?this.$(t):t.nodeType!==void 0?this.T(t):h2(t)?this.k(t):this._(t)}O(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}T(t){this._$AH!==t&&(this._$AR(),this._$AH=this.O(t))}_(t){this._$AH!==q&&_r(this._$AH)?this._$AA.nextSibling.data=t:this.T(ft.createTextNode(t)),this._$AH=t}$(t){var i;const{values:r,_$litType$:s}=t,n=typeof s=="number"?this._$AC(t):(s.el===void 0&&(s.el=Ar.createElement(Rc(s.h,s.h[0]),this.options)),s);if(((i=this._$AH)==null?void 0:i._$AD)===n)this._$AH.p(r);else{const o=new d2(n,this),a=o.u(this.options);o.p(r),this.T(a),this._$AH=o}}_$AC(t){let r=Ic.get(t.strings);return r===void 0&&Ic.set(t.strings,r=new Ar(t)),r}k(t){Kn(this._$AH)||(this._$AH=[],this._$AR());const r=this._$AH;let s,n=0;for(const i of t)n===r.length?r.push(s=new Er(this.O(vr()),this.O(vr()),this,this.options)):s=r[n],s._$AI(i),n++;n<r.length&&(this._$AR(s&&s._$AB.nextSibling,n),r.length=n)}_$AR(t=this._$AA.nextSibling,r){var s;for((s=this._$AP)==null?void 0:s.call(this,!1,!0,r);t!==this._$AB;){const n=Cc(t).nextSibling;Cc(t).remove(),t=n}}setConnected(t){var r;this._$AM===void 0&&(this._$Cv=t,(r=this._$AP)==null||r.call(this,t))}}class ls{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(t,r,s,n,i){this.type=1,this._$AH=q,this._$AN=void 0,this.element=t,this.name=r,this._$AM=n,this.options=i,s.length>2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=q}_$AI(t,r=this,s,n){const i=this.strings;let o=!1;if(i===void 0)t=Xt(this,t,r,0),o=!_r(t)||t!==this._$AH&&t!==qt,o&&(this._$AH=t);else{const a=t;let c,u;for(t=i[0],c=0;c<i.length-1;c++)u=Xt(this,a[s+c],r,c),u===qt&&(u=this._$AH[c]),o||(o=!_r(u)||u!==this._$AH[c]),u===q?t=q:t!==q&&(t+=(u??"")+i[c+1]),this._$AH[c]=u}o&&!n&&this.j(t)}j(t){t===q?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,t??"")}}class f2 extends ls{constructor(){super(...arguments),this.type=3}j(t){this.element[this.name]=t===q?void 0:t}}class p2 extends ls{constructor(){super(...arguments),this.type=4}j(t){this.element.toggleAttribute(this.name,!!t&&t!==q)}}class m2 extends ls{constructor(t,r,s,n,i){super(t,r,s,n,i),this.type=5}_$AI(t,r=this){if((t=Xt(this,t,r,0)??q)===qt)return;const s=this._$AH,n=t===q&&s!==q||t.capture!==s.capture||t.once!==s.once||t.passive!==s.passive,i=t!==q&&(s===q||n);n&&this.element.removeEventListener(this.name,this,s),i&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var r;typeof this._$AH=="function"?this._$AH.call(((r=this.options)==null?void 0:r.host)??this.element,t):this._$AH.handleEvent(t)}}class g2{constructor(t,r,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=r,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){Xt(this,t)}}const Xn=br.litHtmlPolyfillSupport;Xn==null||Xn(Ar,Er),(br.litHtmlVersions??(br.litHtmlVersions=[])).push("3.3.2");const y2=(e,t,r)=>{const s=(r==null?void 0:r.renderBefore)??t;let n=s._$litPart$;if(n===void 0){const i=(r==null?void 0:r.renderBefore)??null;s._$litPart$=n=new Er(t.insertBefore(vr(),i),i,void 0,r??{})}return n._$AI(e),n};/**
|
|
30
30
|
* @license
|
|
31
31
|
* Copyright 2017 Google LLC
|
|
32
32
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
33
|
-
*/const gt=globalThis;class kr extends Kt{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var r;const t=super.createRenderRoot();return(r=this.renderOptions).renderBefore??(r.renderBefore=t.firstChild),t}update(t){const r=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=y2(r,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),(t=this._$Do)==null||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._$Do)==null||t.setConnected(!1)}render(){return qt}}kr._$litElement$=!0,kr.finalized=!0,(
|
|
33
|
+
*/const gt=globalThis;class kr extends Kt{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var r;const t=super.createRenderRoot();return(r=this.renderOptions).renderBefore??(r.renderBefore=t.firstChild),t}update(t){const r=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=y2(r,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),(t=this._$Do)==null||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),(t=this._$Do)==null||t.setConnected(!1)}render(){return qt}}kr._$litElement$=!0,kr.finalized=!0,(Dc=gt.litElementHydrateSupport)==null||Dc.call(gt,{LitElement:kr});const Yn=gt.litElementPolyfillSupport;Yn==null||Yn({LitElement:kr}),(gt.litElementVersions??(gt.litElementVersions=[])).push("4.2.2");/**
|
|
34
34
|
* @license
|
|
35
35
|
* Copyright 2017 Google LLC
|
|
36
36
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
@@ -50,14 +50,21 @@
|
|
|
50
50
|
* @license
|
|
51
51
|
* Copyright 2017 Google LLC
|
|
52
52
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
53
|
-
*/function A2(e,t){return(r,s,n)=>{const i=o=>{var a;return((a=o.renderRoot)==null?void 0:a.querySelector(e))??null};return w2(r,s,{get(){return i(this)}})}}const E2=180,
|
|
53
|
+
*/function A2(e,t){return(r,s,n)=>{const i=o=>{var a;return((a=o.renderRoot)==null?void 0:a.querySelector(e))??null};return w2(r,s,{get(){return i(this)}})}}const E2=180,Nc=5e3,Qn="M 50 17 C 60 17 68 19.5 74 25 C 79 29.5 81.5 36.5 81.5 46.5 V 54.5 C 81.5 63.5 78.5 71 71.5 76.5 C 65 81.5 57.5 84 50 84 C 42.5 84 35 81.5 28.5 76.5 C 21.5 71 18.5 63.5 18.5 54.5 V 46.5 C 18.5 36.5 21 29.5 26 25 C 32 19.5 40 17 50 17 Z",k2=`M 0 0 H 100 V 100 H 0 Z ${Qn}`;function S2(e,t,r){if(t===null)return"Center your face in the oval. We will capture automatically when framing looks good.";const s=Math.max(Nc-(e-t),0),n=Math.max(Math.ceil(s/1e3),0);return r.passesQualityChecks?`Hold steady. Capturing the best frame in ${n}s.`:`${r.message} Best frame selection finishes in ${n}s.`}function C2(e){const t=e==null?void 0:e.captureScore;return typeof t=="number"&&t>0?"Best frame captured. Review and confirm this photo.":"Capture complete. Review and confirm this photo."}class T2{constructor(t){this.frameCapture=Hu(),this.stopped=!1,this.animationFrameId=null,this.analysisTimerId=null,this.analysisInFlight=!1,this.lastAnalysisTimestamp=0,this.countdownStartedAt=null,this.bestCaptureScore=-1,this.bestQualityResult=null,this.videoElement=t.videoElement,this.copy=t.copy,this.onStateChange=t.onStateChange,this.waitForReady=t.waitForReady??(r=>Vu(r)),this.assessLiveQuality=t.assessLiveQuality??fc,this.assessPreviewBlob=t.assessPreviewBlob??P2,this.mode=t.initialMode,this.state=this.createStartingState(),this.emit(this.state)}getState(){return this.state}async start(){this.stopped||(this.emit(this.createStartingState()),await this.waitForReady(this.videoElement),!this.stopped&&(this.emit(this.createLiveState({feedbackMessage:this.mode==="auto"?this.copy.autoReadyMessage:this.copy.manualReadyMessage,feedbackTone:this.mode==="auto"?"neutral":"manual"})),this.mode==="auto"&&this.scheduleAutoAnalysis()))}async takePhotoNow(){if(this.stopped||this.state.phase!=="live")return;this.mode==="auto"&&(this.mode="manual",this.cancelScheduledAnalysis());const t=await this.frameCapture.captureBlob(this.videoElement);if(this.stopped)return;const r=await this.assessPreviewBlob(t);this.stopped||this.emit(this.createPreviewState(t,r))}async retake(){this.stopped||this.state.phase!=="preview"||(this.resetAutoState(),Gu(this.videoElement),this.emit(this.createLiveState({feedbackMessage:this.mode==="auto"?this.copy.autoReadyMessage:this.copy.retakeReadyMessage??this.copy.manualReadyMessage,feedbackTone:this.mode==="auto"?"neutral":"manual"})),this.mode==="auto"&&this.scheduleAutoAnalysis())}confirm(){if(this.state.phase!=="preview")throw new Error("Failed to confirm the photo.");return this.state.previewBlob}stop(){this.stopped=!0,this.cancelScheduledAnalysis()}createStartingState(){return{phase:"starting",mode:this.mode,feedbackMessage:"",feedbackTone:"neutral",countdownProgress:0,qualityResult:null,fallbackReason:null,previewBlob:null,errorMessage:"",canConfirm:!1,canTakePhoto:!1}}createLiveState(t){return{phase:"live",mode:this.mode,feedbackMessage:t.feedbackMessage,feedbackTone:t.feedbackTone,countdownProgress:t.countdownProgress??0,qualityResult:t.qualityResult??null,fallbackReason:t.fallbackReason??null,previewBlob:null,errorMessage:"",canConfirm:!1,canTakePhoto:this.mode!=="auto"||this.countdownStartedAt===null}}createPreviewState(t,r,s){return{phase:"preview",mode:this.mode,feedbackMessage:(s==null?void 0:s.feedbackMessage)??(r==null?void 0:r.message)??"Review the captured image before continuing.",feedbackTone:(s==null?void 0:s.feedbackTone)??(r?r.passesQualityChecks?"success":"error":"manual"),countdownProgress:r?1:0,qualityResult:r,fallbackReason:null,previewBlob:t,errorMessage:"",canConfirm:(r==null?void 0:r.passesQualityChecks)!==!1,canTakePhoto:!1}}emitError(t){this.stopped||(this.cancelScheduledAnalysis(),this.emit({phase:"error",mode:this.mode,feedbackMessage:t,feedbackTone:"error",countdownProgress:0,qualityResult:null,fallbackReason:null,previewBlob:null,errorMessage:t,canConfirm:!1,canTakePhoto:!1}))}emit(t){this.stopped||(this.state=t,this.onStateChange(t))}scheduleAutoAnalysis(){if(this.stopped||this.mode!=="auto"||this.state.phase!=="live")return;const t=performance.now(),r=Math.max(E2-(t-this.lastAnalysisTimestamp),0);this.cancelScheduledAnalysis(),this.analysisTimerId=window.setTimeout(()=>{this.analysisTimerId=null,this.animationFrameId=window.requestAnimationFrame(s=>{this.runAutoAnalysis(s)})},r)}async runAutoAnalysis(t){if(!this.stopped){if(this.mode!=="auto"||this.state.phase!=="live"||this.analysisInFlight){this.scheduleAutoAnalysis();return}this.analysisInFlight=!0,this.lastAnalysisTimestamp=t;try{const r=await this.assessLiveQuality(this.videoElement,t);if(this.stopped||this.mode!=="auto"||this.state.phase!=="live")return;if(r.passesQualityChecks&&(this.countdownStartedAt===null&&(this.countdownStartedAt=t),r.captureScore>this.bestCaptureScore&&(this.frameCapture.storeBestFrame(this.videoElement),this.bestCaptureScore=r.captureScore,this.bestQualityResult=r)),this.countdownStartedAt!==null){const s=Math.min((t-this.countdownStartedAt)/Nc,1);if(s>=1){await this.finishAutoCapture();return}this.emit(this.createLiveState({feedbackMessage:S2(t,this.countdownStartedAt,r),feedbackTone:r.passesQualityChecks?"success":"neutral",countdownProgress:s,qualityResult:r}))}else this.emit(this.createLiveState({feedbackMessage:r.message,feedbackTone:r.passesQualityChecks?"success":"neutral",qualityResult:r}))}catch{!this.stopped&&this.mode==="auto"&&this.state.phase==="live"&&this.switchToManual();return}finally{this.analysisInFlight=!1}this.scheduleAutoAnalysis()}}async finishAutoCapture(){const t=this.frameCapture.hasStoredBestFrame()?await this.frameCapture.storedBestFrameToBlob():await this.frameCapture.captureBlob(this.videoElement);if(this.stopped||this.mode!=="auto"||this.state.phase!=="live")return;const r=this.bestQualityResult??await this.assessPreviewBlob(t);this.stopped||this.mode!=="auto"||this.state.phase!=="live"||this.emit(this.createPreviewState(t,r,{feedbackMessage:C2(r),feedbackTone:(r==null?void 0:r.passesQualityChecks)===!1?"error":"success"}))}switchToManual(){this.mode="manual",this.resetAutoState(),this.emit(this.createLiveState({feedbackMessage:this.copy.autoUnavailableMessage,feedbackTone:"manual",fallbackReason:"auto-capture-unavailable"}))}cancelScheduledAnalysis(){this.analysisTimerId!==null&&(window.clearTimeout(this.analysisTimerId),this.analysisTimerId=null),this.animationFrameId!==null&&(window.cancelAnimationFrame(this.animationFrameId),this.animationFrameId=null)}resetAutoState(){this.cancelScheduledAnalysis(),this.countdownStartedAt=null,this.bestCaptureScore=-1,this.bestQualityResult=null,this.frameCapture.resetStoredBestFrame()}}async function P2(e){try{const t=await Vn(e);return await Dn(t)}catch{return null}}var M2=Object.defineProperty,L2=Object.getOwnPropertyDescriptor,Q=(e,t,r,s)=>{for(var n=s>1?void 0:s?L2(t,r):t,i=e.length-1,o;i>=0;i--)(o=e[i])&&(n=(s?o(t,r,n):o(n))||n);return s&&n&&M2(t,r,n),n};w.SimFaceCapture=class extends kr{constructor(){super(...arguments),this.label=mc,this.embedded=!1,this.active=!1,this.confirmLabel=gc,this.capturePreference="auto-preferred",this.allowMediaPickerFallback=!0,this.captureState="idle",this.errorMessage="",this.feedbackMessage="Start a capture to see camera guidance here.",this.feedbackTone="neutral",this.previewUrl="",this.qualityResult=null,this.canTakePhoto=!0,this.captureMode="auto",this.stream=null,this.sessionController=null,this.currentCaptureStep=null,this.capturedBlob=null,this.pendingActiveSync=!1}disconnectedCallback(){super.disconnectedCallback(),this.stopSession()}updated(t){!t.has("active")||this.pendingActiveSync||(this.pendingActiveSync=!0,queueMicrotask(()=>{if(this.pendingActiveSync=!1,!!this.isConnected){if(this.active){this.captureState==="idle"&&this.beginCapture();return}this.endCapture()}}))}render(){return xe`
|
|
54
54
|
<div class="container capture-shell">
|
|
55
55
|
${this.renderCaptureState()}
|
|
56
56
|
</div>
|
|
57
|
-
`}async startCapture(){this.active=!0,await this.updateComplete,await this.beginCapture()}renderCaptureState(){var t;return
|
|
57
|
+
`}async startCapture(){this.active=!0,await this.updateComplete,await this.beginCapture()}renderCaptureState(){var r;const t=this.captureState!=="idle";return xe`
|
|
58
|
+
${t?xe`<button class="close-btn" data-simface-action="cancel" @click=${this.handleCancel} aria-label="Close">
|
|
59
|
+
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
|
60
|
+
<line x1="18" y1="6" x2="6" y2="18"></line>
|
|
61
|
+
<line x1="6" y1="6" x2="18" y2="18"></line>
|
|
62
|
+
</svg>
|
|
63
|
+
</button>`:""}
|
|
64
|
+
|
|
58
65
|
<p class="capture-copy">${this.label}</p>
|
|
59
66
|
|
|
60
|
-
${this.captureState==="idle"?
|
|
67
|
+
${this.captureState==="idle"?xe`<p class="capture-copy">Waiting for the host page to start capture.</p>`:xe`
|
|
61
68
|
<div class="stage">
|
|
62
69
|
<video
|
|
63
70
|
id="embedded-video"
|
|
@@ -88,21 +95,18 @@
|
|
|
88
95
|
</div>
|
|
89
96
|
|
|
90
97
|
<div class="btn-row">
|
|
91
|
-
${this.captureState==="live"?
|
|
92
|
-
${this.captureMode==="manual"?
|
|
93
|
-
<button class="btn btn-ghost" data-simface-action="cancel" @click=${this.handleCancel}>Cancel</button>
|
|
98
|
+
${this.captureState==="live"?xe`
|
|
99
|
+
${this.captureMode==="manual"?xe`<button class="btn btn-primary" data-simface-action="capture" ?disabled=${!this.canTakePhoto} @click=${this.handleManualCapture}>Take photo</button>`:""}
|
|
94
100
|
`:""}
|
|
95
|
-
${this.captureState==="preview"?
|
|
96
|
-
<button class="btn btn-
|
|
97
|
-
${((
|
|
98
|
-
<button class="btn btn-ghost" data-simface-action="cancel" @click=${this.handleCancel}>Cancel</button>
|
|
101
|
+
${this.captureState==="preview"?xe`
|
|
102
|
+
<button class="btn btn-retake" data-simface-action="retake" @click=${this.handleRetake}>Retake</button>
|
|
103
|
+
${((r=this.qualityResult)==null?void 0:r.passesQualityChecks)===!1?"":xe`<button class="btn btn-confirm" data-simface-action="confirm" @click=${this.handleConfirm}>${this.confirmLabel}</button>`}
|
|
99
104
|
`:""}
|
|
100
|
-
${this.captureState==="error"?
|
|
105
|
+
${this.captureState==="error"?xe`
|
|
101
106
|
<button class="btn btn-primary" data-simface-action="retry" @click=${this.beginCapture}>Try again</button>
|
|
102
|
-
<button class="btn btn-ghost" data-simface-action="cancel" @click=${this.handleCancel}>Cancel</button>
|
|
103
107
|
`:""}
|
|
104
108
|
</div>
|
|
105
|
-
`}async beginCapture(){if(!this.active||this.captureState==="starting"||this.captureState==="live")return;this.stopSession(),this.resetState(),this.captureState="starting",this.feedbackMessage="Requesting camera access...",this.feedbackTone="neutral";const t=
|
|
109
|
+
`}async beginCapture(){if(!this.active||this.captureState==="starting"||this.captureState==="live")return;this.stopSession(),this.resetState(),this.captureState="starting",this.feedbackMessage="Requesting camera access...",this.feedbackTone="neutral";const t=yc({presentation:"embedded",capturePreference:this.capturePreference,allowMediaPickerFallback:this.allowMediaPickerFallback,label:this.label,confirmLabel:this.confirmLabel}),r=await Uu({capturePreference:t.capturePreference}),s=Bu(t,r),n=s.steps.find(a=>a==="auto-camera"||a==="manual-camera")??null,i=s.steps.includes("media-picker");if(!n){await this.startMediaPicker();return}try{this.stream=await ju()}catch(a){if(a instanceof jn&&i){await this.startMediaPicker();return}this.handleCaptureError(a);return}if(await this.updateComplete,!this.active){this.stopSession();return}const o=this.embeddedVideoElement;if(!o||!this.stream){this.handleCaptureError(new Error("Inline camera preview could not be created."));return}o.srcObject=this.stream,this.currentCaptureStep=n,this.sessionController=new T2({videoElement:o,initialMode:n==="auto-camera"?"auto":"manual",copy:{autoReadyMessage:"Center your face in the oval. We will capture automatically when framing looks good.",manualReadyMessage:"When you are ready, press Take photo.",autoUnavailableMessage:"Automatic capture is unavailable. Press Take photo instead.",retakeReadyMessage:"When you are ready, press Take photo."},onStateChange:a=>this.applySessionState(a)});try{await this.sessionController.start()}catch(a){this.handleCaptureError(a)}}async startMediaPicker(){this.stopSession(),this.currentCaptureStep="media-picker",this.captureState="starting",this.feedbackMessage="Opening media picker...",this.feedbackTone="neutral";try{const t=await bc();if(!t){this.handleCancel();return}await this.showPickedPreview(t)}catch(t){this.handleCaptureError(t)}}applySessionState(t){if(this.captureState=t.phase,this.feedbackMessage=t.feedbackMessage,this.feedbackTone=t.feedbackTone,this.syncProgress(t.countdownProgress),this.qualityResult=t.qualityResult,this.errorMessage=t.phase==="error"?t.errorMessage:"",this.canTakePhoto=t.canTakePhoto,this.captureMode=t.mode,t.phase==="preview"){this.capturedBlob=t.previewBlob,this.setPreviewBlob(t.previewBlob);return}this.capturedBlob=null,this.clearPreviewUrl()}async showPickedPreview(t){const r=await this.assessPickedBlob(t);this.capturedBlob=t,this.qualityResult=r,this.captureState="preview",this.feedbackMessage=(r==null?void 0:r.message)??"Review this capture before continuing.",this.feedbackTone=r?r.passesQualityChecks?"success":"error":"neutral",this.syncProgress(r?1:0),this.setPreviewBlob(t)}handleManualCapture(){var t;(t=this.sessionController)==null||t.takePhotoNow().catch(r=>{this.handleCaptureError(r)})}handleRetake(){var t;if(this.capturedBlob=null,this.qualityResult=null,this.clearPreviewUrl(),this.currentCaptureStep==="media-picker"){this.active&&this.beginCapture();return}(t=this.sessionController)==null||t.retake().catch(r=>{this.handleCaptureError(r)})}handleConfirm(){if(!this.capturedBlob)return;const t=this.capturedBlob;this.active=!1,this.stopSession(),this.resetState(),this.dispatchCaptured(t)}handleCancel(){this.active=!1,this.stopSession(),this.resetState(),this.dispatchCancelled()}handleCaptureError(t){this.stopSession(),this.errorMessage=t instanceof Error?t.message:"Capture failed",this.captureState="error",this.feedbackMessage=this.errorMessage,this.feedbackTone="error",this.dispatchError(this.errorMessage)}endCapture(){this.stopSession(),this.resetState()}stopSession(){var r;(r=this.sessionController)==null||r.stop(),this.sessionController=null,this.currentCaptureStep=null,this.stream&&(this.stream.getTracks().forEach(s=>s.stop()),this.stream=null);const t=this.embeddedVideoElement;t&&(t.srcObject=null),this.syncProgress(0)}resetState(){this.clearPreviewUrl(),this.captureState="idle",this.errorMessage="",this.feedbackMessage="Start a capture to see camera guidance here.",this.feedbackTone="neutral",this.syncProgress(0),this.qualityResult=null,this.capturedBlob=null,this.captureMode="auto"}syncProgress(t){this.style.setProperty("--capture-progress",String(t))}setPreviewBlob(t){this.clearPreviewUrl(),this.previewUrl=URL.createObjectURL(t)}clearPreviewUrl(){this.previewUrl&&(URL.revokeObjectURL(this.previewUrl),this.previewUrl="")}dispatchCaptured(t){this.dispatchEvent(new CustomEvent("simface-captured",{detail:{imageBlob:t},bubbles:!0,composed:!0}))}dispatchCancelled(){this.dispatchEvent(new CustomEvent("simface-cancelled",{bubbles:!0,composed:!0}))}dispatchError(t){this.dispatchEvent(new CustomEvent("simface-error",{detail:{error:t},bubbles:!0,composed:!0}))}feedbackClass(){return this.feedbackTone==="success"?"quality-good":this.feedbackTone==="error"?"quality-bad":this.feedbackTone==="manual"?"quality-manual":"quality-neutral"}async assessPickedBlob(t){try{const r=await Vn(t);return await Dn(r)}catch{return null}}},w.SimFaceCapture.styles=Zu`
|
|
106
110
|
:host {
|
|
107
111
|
display: block;
|
|
108
112
|
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
|
@@ -115,25 +119,56 @@
|
|
|
115
119
|
:host([embedded]) {
|
|
116
120
|
max-width: none;
|
|
117
121
|
margin: 0;
|
|
118
|
-
text-align: left;
|
|
119
122
|
}
|
|
120
123
|
|
|
121
124
|
.container {
|
|
125
|
+
position: relative;
|
|
122
126
|
padding: 16px;
|
|
123
127
|
border: 1px solid #e0e0e0;
|
|
124
|
-
border-radius:
|
|
128
|
+
border-radius: 16px;
|
|
125
129
|
background: #fafafa;
|
|
126
130
|
}
|
|
127
131
|
|
|
132
|
+
.close-btn {
|
|
133
|
+
position: absolute;
|
|
134
|
+
top: 12px;
|
|
135
|
+
left: 12px;
|
|
136
|
+
z-index: 10;
|
|
137
|
+
display: inline-flex;
|
|
138
|
+
align-items: center;
|
|
139
|
+
justify-content: center;
|
|
140
|
+
width: 40px;
|
|
141
|
+
height: 40px;
|
|
142
|
+
padding: 0;
|
|
143
|
+
border: none;
|
|
144
|
+
border-radius: 50%;
|
|
145
|
+
background: rgba(0, 0, 0, 0.06);
|
|
146
|
+
color: #49454f;
|
|
147
|
+
cursor: pointer;
|
|
148
|
+
transition: background-color 0.15s;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
.close-btn:hover {
|
|
152
|
+
background: rgba(0, 0, 0, 0.12);
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
.close-btn svg {
|
|
156
|
+
width: 20px;
|
|
157
|
+
height: 20px;
|
|
158
|
+
}
|
|
159
|
+
|
|
128
160
|
.capture-shell {
|
|
129
161
|
display: flex;
|
|
130
162
|
flex-direction: column;
|
|
163
|
+
align-items: center;
|
|
131
164
|
gap: 16px;
|
|
132
165
|
}
|
|
133
166
|
|
|
134
167
|
.capture-copy {
|
|
135
168
|
margin: 0;
|
|
136
169
|
color: #334155;
|
|
170
|
+
text-align: center;
|
|
171
|
+
width: 100%;
|
|
137
172
|
}
|
|
138
173
|
|
|
139
174
|
.stage {
|
|
@@ -146,7 +181,6 @@
|
|
|
146
181
|
radial-gradient(circle at top, rgba(56, 189, 248, 0.16), transparent 30%),
|
|
147
182
|
linear-gradient(180deg, #0f172a, #020617);
|
|
148
183
|
box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.2);
|
|
149
|
-
align-self: center;
|
|
150
184
|
}
|
|
151
185
|
|
|
152
186
|
.video,
|
|
@@ -202,22 +236,23 @@
|
|
|
202
236
|
|
|
203
237
|
.btn-row {
|
|
204
238
|
display: flex;
|
|
205
|
-
flex-wrap: wrap;
|
|
206
239
|
gap: 12px;
|
|
240
|
+
width: min(100%, 420px);
|
|
207
241
|
}
|
|
208
242
|
|
|
209
243
|
.btn {
|
|
210
244
|
display: inline-flex;
|
|
211
245
|
align-items: center;
|
|
212
246
|
justify-content: center;
|
|
213
|
-
|
|
214
|
-
|
|
247
|
+
flex: 1;
|
|
248
|
+
padding: 14px 24px;
|
|
215
249
|
border: none;
|
|
216
|
-
border-radius:
|
|
217
|
-
font-size:
|
|
250
|
+
border-radius: 100px;
|
|
251
|
+
font-size: 15px;
|
|
218
252
|
font-weight: 600;
|
|
253
|
+
letter-spacing: 0.02em;
|
|
219
254
|
cursor: pointer;
|
|
220
|
-
transition: background-color 0.
|
|
255
|
+
transition: background-color 0.15s, box-shadow 0.15s;
|
|
221
256
|
}
|
|
222
257
|
|
|
223
258
|
.btn-primary {
|
|
@@ -227,11 +262,33 @@
|
|
|
227
262
|
|
|
228
263
|
.btn-primary:hover {
|
|
229
264
|
background: #1d4ed8;
|
|
265
|
+
box-shadow: 0 1px 3px rgba(37, 99, 235, 0.3);
|
|
230
266
|
}
|
|
231
267
|
|
|
232
268
|
.btn-primary:disabled {
|
|
233
269
|
background: #93c5fd;
|
|
234
270
|
cursor: not-allowed;
|
|
271
|
+
box-shadow: none;
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
.btn-confirm {
|
|
275
|
+
background: #16a34a;
|
|
276
|
+
color: white;
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
.btn-confirm:hover {
|
|
280
|
+
background: #15803d;
|
|
281
|
+
box-shadow: 0 1px 3px rgba(22, 163, 74, 0.3);
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
.btn-retake {
|
|
285
|
+
background: #dc2626;
|
|
286
|
+
color: white;
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
.btn-retake:hover {
|
|
290
|
+
background: #b91c1c;
|
|
291
|
+
box-shadow: 0 1px 3px rgba(220, 38, 38, 0.3);
|
|
235
292
|
}
|
|
236
293
|
|
|
237
294
|
.btn-secondary {
|
|
@@ -243,17 +300,17 @@
|
|
|
243
300
|
background: #d1d5db;
|
|
244
301
|
}
|
|
245
302
|
|
|
246
|
-
.btn-ghost {
|
|
247
|
-
background: #e2e8f0;
|
|
248
|
-
color: #0f172a;
|
|
249
|
-
}
|
|
250
|
-
|
|
251
303
|
.quality-msg {
|
|
252
304
|
padding: 10px 14px;
|
|
253
305
|
border-radius: 14px;
|
|
254
|
-
margin: 8px 0 0;
|
|
255
306
|
font-size: 14px;
|
|
256
307
|
font-weight: 600;
|
|
308
|
+
width: min(100%, 420px);
|
|
309
|
+
min-height: 44px;
|
|
310
|
+
display: flex;
|
|
311
|
+
align-items: center;
|
|
312
|
+
justify-content: center;
|
|
313
|
+
text-align: center;
|
|
257
314
|
}
|
|
258
315
|
|
|
259
316
|
.quality-good {
|
|
@@ -296,4 +353,4 @@
|
|
|
296
353
|
transform: rotate(360deg);
|
|
297
354
|
}
|
|
298
355
|
}
|
|
299
|
-
`,Q([yt({type:String})],w.SimFaceCapture.prototype,"label",2),Q([yt({type:Boolean,reflect:!0})],w.SimFaceCapture.prototype,"embedded",2),Q([yt({type:Boolean,reflect:!0})],w.SimFaceCapture.prototype,"active",2),Q([yt({type:String,attribute:"confirm-label"})],w.SimFaceCapture.prototype,"confirmLabel",2),Q([yt({type:String,attribute:"capture-preference"})],w.SimFaceCapture.prototype,"capturePreference",2),Q([yt({type:Boolean,attribute:"allow-media-picker-fallback"})],w.SimFaceCapture.prototype,"allowMediaPickerFallback",2),Q([Xe()],w.SimFaceCapture.prototype,"captureState",2),Q([Xe()],w.SimFaceCapture.prototype,"errorMessage",2),Q([Xe()],w.SimFaceCapture.prototype,"feedbackMessage",2),Q([Xe()],w.SimFaceCapture.prototype,"feedbackTone",2),Q([Xe()],w.SimFaceCapture.prototype,"previewUrl",2),Q([Xe()],w.SimFaceCapture.prototype,"qualityResult",2),Q([Xe()],w.SimFaceCapture.prototype,"canTakePhoto",2),Q([Xe()],w.SimFaceCapture.prototype,"captureMode",2),Q([A2("#embedded-video")],w.SimFaceCapture.prototype,"embeddedVideoElement",2),w.SimFaceCapture=Q([b2("simface-capture")],w.SimFaceCapture);const
|
|
356
|
+
`,Q([yt({type:String})],w.SimFaceCapture.prototype,"label",2),Q([yt({type:Boolean,reflect:!0})],w.SimFaceCapture.prototype,"embedded",2),Q([yt({type:Boolean,reflect:!0})],w.SimFaceCapture.prototype,"active",2),Q([yt({type:String,attribute:"confirm-label"})],w.SimFaceCapture.prototype,"confirmLabel",2),Q([yt({type:String,attribute:"capture-preference"})],w.SimFaceCapture.prototype,"capturePreference",2),Q([yt({type:Boolean,attribute:"allow-media-picker-fallback"})],w.SimFaceCapture.prototype,"allowMediaPickerFallback",2),Q([Xe()],w.SimFaceCapture.prototype,"captureState",2),Q([Xe()],w.SimFaceCapture.prototype,"errorMessage",2),Q([Xe()],w.SimFaceCapture.prototype,"feedbackMessage",2),Q([Xe()],w.SimFaceCapture.prototype,"feedbackTone",2),Q([Xe()],w.SimFaceCapture.prototype,"previewUrl",2),Q([Xe()],w.SimFaceCapture.prototype,"qualityResult",2),Q([Xe()],w.SimFaceCapture.prototype,"canTakePhoto",2),Q([Xe()],w.SimFaceCapture.prototype,"captureMode",2),Q([A2("#embedded-video")],w.SimFaceCapture.prototype,"embeddedVideoElement",2),w.SimFaceCapture=Q([b2("simface-capture")],w.SimFaceCapture);const Uc=Object.freeze(Object.defineProperty({__proto__:null,get SimFaceCapture(){return w.SimFaceCapture}},Symbol.toStringTag,{value:"Module"}));async function F2(e,t,r){const s=new Ye(e);await s.validateAPIKey();const n=await Bc(r);if(!n)return{success:!1,clientId:t,message:"Capture cancelled by user"};const i=await s.enroll(t,n);return i.alreadyEnrolled,i}async function x2(e,t,r){const s=new Ye(e);await s.validateAPIKey();const n=await Bc(r);return n?s.verify(t,n):{match:!1,score:0,threshold:0,message:"Capture cancelled by user"}}async function Bc(e){return _c(e)}w.SimFaceAPIClient=Ye,w.assessFaceQuality=Dn,w.assessFaceQualityForVideo=fc,w.blobToDataURL=zu,w.blobToImage=Vn,w.captureFromCamera=_c,w.enroll=F2,w.verify=x2,Object.defineProperty(w,Symbol.toStringTag,{value:"Module"})}));
|