@mediapipe/tasks-genai
Version:
MediaPipe GenAI Tasks
1 lines • 54 kB
JavaScript
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t="undefined"!=typeof self?self:{};let e;const n="undefined"!=typeof TextEncoder;function r(t){if(n)t=(e||=new TextEncoder).encode(t);else{let e=0;const n=new Uint8Array(3*t.length);for(let i=0;i<t.length;i++){var r=t.charCodeAt(i);if(r<128)n[e++]=r;else{if(r<2048)n[e++]=r>>6|192;else{if(r>=55296&&r<=57343){if(r<=56319&&i<t.length){const o=t.charCodeAt(++i);if(o>=56320&&o<=57343){r=1024*(r-55296)+o-56320+65536,n[e++]=r>>18|240,n[e++]=r>>12&63|128,n[e++]=r>>6&63|128,n[e++]=63&r|128;continue}i--}r=65533}n[e++]=r>>12|224,n[e++]=r>>6&63|128}n[e++]=63&r|128}}t=e===n.length?n:n.subarray(0,e)}return t}var i,o;t:{for(var s=["CLOSURE_FLAGS"],a=t,c=0;c<s.length;c++)if(null==(a=a[s[c]])){o=null;break t}o=a}var u,l=o&&o[610401301];function h(){var e=t.navigator;return e&&(e=e.userAgent)?e:""}i=null!=l&&l;const f=t.navigator;u=f&&f.userAgentData||null;var d={},p=null;function g(t){const e=t.length;let n=3*e/4;n%3?n=Math.floor(n):-1!="=.".indexOf(t[e-1])&&(n=-1!="=.".indexOf(t[e-2])?n-2:n-1);const r=new Uint8Array(n);let i=0;return function(t,e){function n(e){for(;r<t.length;){const e=t.charAt(r++),n=p[e];if(null!=n)return n;if(!/^[\s\xa0]*$/.test(e))throw Error("Unknown base64 encoding at char: "+e)}return e}m();let r=0;for(;;){const t=n(-1),r=n(0),i=n(64),o=n(64);if(64===o&&-1===t)break;e(t<<2|r>>4),64!=i&&(e(r<<4&240|i>>2),64!=o&&e(i<<6&192|o))}}(t,(function(t){r[i++]=t})),i!==n?r.subarray(0,i):r}function m(){if(!p){p={};var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),e=["+/=","+/","-_=","-_.","-_"];for(let n=0;n<5;n++){const r=t.concat(e[n].split(""));d[n]=r;for(let t=0;t<r.length;t++){const e=r[t];void 0===p[e]&&(p[e]=t)}}}}var _="undefined"!=typeof Uint8Array,y=!(!(i&&u&&u.brands.length>0)&&(-1!=h().indexOf("Trident")||-1!=h().indexOf("MSIE")))&&"function"==typeof btoa;const b=/[-_.]/g,v={"-":"+",_:"/",".":"="};function w(t){return v[t]||""}function S(t){if(!y)return g(t);t=b.test(t)?t.replace(b,w):t,t=atob(t);const e=new Uint8Array(t.length);for(let n=0;n<t.length;n++)e[n]=t.charCodeAt(n);return e}function E(t){return _&&null!=t&&t instanceof Uint8Array}var T={};function A(){return P||=new I(null,T)}var I=class{constructor(t,e){if(O(e),this.i=t,null!=t&&0===t.length)throw Error("ByteString should be constructed with non-empty values")}};let P,L;function O(t){if(t!==T)throw Error("illegal external caller")}function j(t,e){t.__closure__error__context__984382||(t.__closure__error__context__984382={}),t.__closure__error__context__984382.severity=e}function U(t){return j(t=Error(t),"warning"),t}var x="function"==typeof Symbol&&"symbol"==typeof Symbol();function B(t,e,n=!1){return"function"==typeof Symbol&&"symbol"==typeof Symbol()?n&&Symbol.for&&t?Symbol.for(t):null!=t?Symbol(t):Symbol():e}var k=B("jas",void 0,!0),N=B(void 0,"1oa"),F=B(void 0,"0actk"),D=B("m_m","ia",!0);const R={aa:{value:0,configurable:!0,writable:!0,enumerable:!1}},M=Object.defineProperties,V=x?k:"aa";var C;const G=[];function z(t,e){x||V in t||M(t,R),t[V]=e}function W(){return"function"==typeof BigInt}z(G,7),C=Object.freeze(G);var $={};function H(t,e){return void 0===e?t.i!==q&&!!(2&(0|t.m[V])):!!(2&e)&&t.i!==q}const q={};var K=Object.freeze({});function Y(t){return t.ha=!0,t}var J=Y((t=>"number"==typeof t)),X=Y((t=>"string"==typeof t)),Z=Y((t=>"boolean"==typeof t)),Q="function"==typeof t.BigInt&&"bigint"==typeof t.BigInt(0),tt=Y((t=>Q?t>=nt&&t<=it:"-"===t[0]?ot(t,et):ot(t,rt)));const et=Number.MIN_SAFE_INTEGER.toString(),nt=Q?BigInt(Number.MIN_SAFE_INTEGER):void 0,rt=Number.MAX_SAFE_INTEGER.toString(),it=Q?BigInt(Number.MAX_SAFE_INTEGER):void 0;function ot(t,e){if(t.length>e.length)return!1;if(t.length<e.length||t===e)return!0;for(let n=0;n<t.length;n++){const r=t[n],i=e[n];if(r>i)return!1;if(r<i)return!0}}let st,at=0,ct=0;function ut(t){const e=t>>>0;at=e,ct=(t-e)/4294967296>>>0}function lt(t){if(t<0){ut(-t);const[e,n]=gt(at,ct);at=e>>>0,ct=n>>>0}else ut(t)}function ht(t,e){const n=4294967296*e+(t>>>0);return Number.isSafeInteger(n)?n:ft(t,e)}function ft(t,e){if(t>>>=0,(e>>>=0)<=2097151)var n=""+(4294967296*e+t);else W()?n=""+(BigInt(e)<<BigInt(32)|BigInt(t)):(t=(16777215&t)+6777216*(n=16777215&(t>>>24|e<<8))+6710656*(e=e>>16&65535),n+=8147497*e,e*=2,t>=1e7&&(n+=t/1e7>>>0,t%=1e7),n>=1e7&&(e+=n/1e7>>>0,n%=1e7),n=e+dt(n)+dt(t));return n}function dt(t){return t=String(t),"0000000".slice(t.length)+t}function pt(t){if(t.length<16)lt(Number(t));else if(W())t=BigInt(t),at=Number(t&BigInt(4294967295))>>>0,ct=Number(t>>BigInt(32)&BigInt(4294967295));else{const e=+("-"===t[0]);ct=at=0;const n=t.length;for(let r=e,i=(n-e)%6+e;i<=n;r=i,i+=6){const e=Number(t.slice(r,i));ct*=1e6,at=1e6*at+e,at>=4294967296&&(ct+=Math.trunc(at/4294967296),ct>>>=0,at>>>=0)}if(e){const[t,e]=gt(at,ct);at=t,ct=e}}}function gt(t,e){return e=~e,t?t=1+~t:e+=1,[t,e]}function mt(t){return Array.prototype.slice.call(t)}const _t="function"==typeof BigInt?BigInt.asIntN:void 0,yt="function"==typeof BigInt?BigInt.asUintN:void 0,bt=Number.isSafeInteger,vt=Number.isFinite,wt=Math.trunc;function St(t){if(null!=t&&"number"!=typeof t)throw Error(`Value of float/double field must be a number, found ${typeof t}: ${t}`);return t}function Et(t){return null==t||"number"==typeof t?t:"NaN"===t||"Infinity"===t||"-Infinity"===t?Number(t):void 0}function Tt(t){if(null!=t&&"boolean"!=typeof t){var e=typeof t;throw Error(`Expected boolean but got ${"object"!=e?e:t?Array.isArray(t)?"array":e:"null"}: ${t}`)}return t}function At(t){return null==t||"boolean"==typeof t?t:"number"==typeof t?!!t:void 0}const It=/^-?([1-9][0-9]*|0)(\.[0-9]+)?$/;function Pt(t){switch(typeof t){case"bigint":return!0;case"number":return vt(t);case"string":return It.test(t);default:return!1}}function Lt(t){if("number"!=typeof t)throw U("int32");if(!vt(t))throw U("int32");return 0|t}function Ot(t){return null==t?t:Lt(t)}function jt(t){if(null==t)return t;if("string"==typeof t&&t)t=+t;else if("number"!=typeof t)return;return vt(t)?0|t:void 0}function Ut(t){if(null!=t){if("number"!=typeof t)throw U("uint32");if(!vt(t))throw U("uint32");t>>>=0}return t}function xt(t){if(null==t)return t;if("string"==typeof t&&t)t=+t;else if("number"!=typeof t)return;return vt(t)?t>>>0:void 0}function Bt(t){if("-"===t[0])return!1;const e=t.length;return e<20||20===e&&Number(t.substring(0,6))<184467}function kt(t){if(null==t)return t;var e=typeof t;if("bigint"===e)return String(yt(64,t));if(Pt(t)){if("string"===e)return e=wt(Number(t)),bt(e)&&e>=0?t=String(e):(-1!==(e=t.indexOf("."))&&(t=t.substring(0,e)),Bt(t)||(pt(t),t=ft(at,ct))),t;if("number"===e)return(t=wt(t))>=0&&bt(t)?t:function(t){if(t<0){lt(t);var e=ft(at,ct);return t=Number(e),bt(t)?t:e}return Bt(e=String(t))?e:(lt(t),ht(at,ct))}(t)}}function Nt(t){return null==t||"string"==typeof t?t:void 0}function Ft(t,e,n){if(null!=t&&"object"==typeof t&&t[D]===$)return t;if(Array.isArray(t)){var r=0|t[V];return(n=r|32&n|2&n)!==r&&z(t,n),new e(t)}}function Dt(t,e,n,r){var i=void 0!==r;r=!!r;const o=[];var s=t.length;let a,c=4294967295,u=!1;const l=!!(64&e),h=l?128&e?0:-1:void 0;for(1&e||(a=s&&t[s-1],null!=a&&"object"==typeof a&&a.constructor===Object?c=--s:a=void 0,!l||128&e||i||(u=!0,c=c-h+h)),e=void 0,i=0;i<s;i++){let s=t[i];if(null!=s&&null!=(s=n(s,r)))if(l&&i>=c){const t=i-h;(e??={})[t]=s}else o[i]=s}if(a)for(let i in a){if(null==(t=a[i])||null==(t=n(t,r)))continue;let u;s=+i,l&&!Number.isNaN(s)&&(u=s+h)<c?o[u]=t:(e??={})[i]=t}return e&&(u?o.push(e):o[c]=e),o}function Rt(t){switch(typeof t){case"number":return Number.isFinite(t)?t:""+t;case"bigint":return tt(t)?Number(t):""+t;case"boolean":return t?1:0;case"object":if(Array.isArray(t)){var e=0|t[V];return 0===t.length&&1&e?void 0:Dt(t,e,Rt)}if(t[D]===$)return Mt(t);if(t instanceof I){if(null==(e=t.i))t="";else if("string"==typeof e)t=e;else{if(y){for(var n="",r=0,i=e.length-10240;r<i;)n+=String.fromCharCode.apply(null,e.subarray(r,r+=10240));n+=String.fromCharCode.apply(null,r?e.subarray(r):e),e=btoa(n)}else{void 0===n&&(n=0),m(),n=d[n],r=Array(Math.floor(e.length/3)),i=n[64]||"";let t=0,u=0;for(;t<e.length-2;t+=3){var o=e[t],s=e[t+1],a=e[t+2],c=n[o>>2];o=n[(3&o)<<4|s>>4],s=n[(15&s)<<2|a>>6],a=n[63&a],r[u++]=c+o+s+a}switch(c=0,a=i,e.length-t){case 2:a=n[(15&(c=e[t+1]))<<2]||i;case 1:e=e[t],r[u]=n[e>>2]+n[(3&e)<<4|c>>4]+a+i}e=r.join("")}t=t.i=e}return t}return}return t}function Mt(t){return Dt(t=t.m,0|t[V],Rt)}let Vt,Ct;function Gt(t,e,n){return zt(t,e[0],e[1],n?1:2)}function zt(e,n,r,i=0){if(null==e){var o=32;r?(e=[r],o|=128):e=[],n&&(o=-8380417&o|(1023&n)<<13)}else{if(!Array.isArray(e))throw Error("narr");if(2048&(o=0|e[V])&&!(2&o)&&function(){if(null!=F){var e=L??={},n=e[F]||0;n>=5||(e[F]=n+1,j(e=Error(),"incident"),function(e){t.setTimeout((()=>{throw e}),0)}(e))}}(),256&o)throw Error("farr");if(64&o)return 0!==i||2048&o||z(e,2048|o),e;if(r&&(o|=128,r!==e[0]))throw Error("mid");t:{o|=64;var s=(r=e).length;if(s){var a=s-1;const t=r[a];if(null!=t&&"object"==typeof t&&t.constructor===Object){if((a-=n=128&o?0:-1)>=1024)throw Error("pvtlmt");for(var c in t)(s=+c)<a&&(r[s+n]=t[c],delete t[c]);o=-8380417&o|(1023&a)<<13;break t}}if(n){if((c=Math.max(n,s-(128&o?0:-1)))>1024)throw Error("spvt");o=-8380417&o|(1023&c)<<13}}}return o|=64,0===i&&(o|=2048),z(e,o),e}function Wt(t,e){if("object"!=typeof t)return t;if(Array.isArray(t)){var n=0|t[V];return 0===t.length&&1&n?t=void 0:2&n||(!e||4096&n||16&n?t=$t(t,n,!1,e&&!(16&n)):(e=t,x||V in e||M(e,R),e[V]|=34,4&n&&Object.freeze(t))),t}if(t[D]===$){const r=0|(e=t.m)[V];return n=H(t,r)?t:$t(e,r)}return t instanceof I?t:void 0}function $t(t,e,n,r){return r??=!!(34&e),t=Dt(t,e,Wt,r),r=32,n&&(r|=2),z(t,e=8380609&e|r),t}function Ht(t){if(t.i!==q)return!1;let e=t.m;return e=$t(e,0|e[V]),t.m=e,t.i=void 0,t.o=void 0,!0}function qt(t){if(!Ht(t)&&H(t,0|t.m[V]))throw Error()}function Kt(t,e,n,r){if(null!==(t=Yt(t.m,e,n,r)))return t}function Yt(t,e,n,r){if(-1===e)return null;const i=e+(n?0:-1),o=t.length-1;let s,a;if(!(o<1+(n?0:-1))){if(i>=o)if(s=t[o],null!=s&&"object"==typeof s&&s.constructor===Object)n=s[e],a=!0;else{if(i!==o)return;n=s}else n=t[i];if(r&&null!=n){if(null==(r=r(n)))return r;if(!Object.is(r,n))return a?s[e]=r:t[i]=r,r}return n}}function Jt(t,e,n){qt(t),Xt(t=t.m,0|t[V],e,n)}function Xt(t,e,n,r,i){const o=n+(i?0:-1);var s=t.length-1;if(s>=1+(i?0:-1)&&o>=s){const i=t[s];if(null!=i&&"object"==typeof i&&i.constructor===Object)return i[n]=r,e}return o<=s?(t[o]=r,e):(void 0!==r&&(n>=(s=(e??=0|t[V])>>13&1023||536870912)?null!=r&&(t[s+(i?0:-1)]={[n]:r}):t[o]=r),e)}function Zt(t,e,n,r,i){let o=t.m,s=0|o[V];r=H(t,s)?1:r,i=!!i||3===r,2===r&&Ht(t)&&(o=t.m,s=0|o[V]);let a=(t=te(o,e))===C?7:0|t[V],c=ee(a,s);var u=!(4&c);if(u){4&c&&(t=mt(t),a=0,c=le(c,s),s=Xt(o,s,e,t));let r=0,i=0;for(;r<t.length;r++){const e=n(t[r]);null!=e&&(t[i++]=e)}i<r&&(t.length=i),n=-513&(4|c),c=n&=-1025,c&=-4097}return c!==a&&(z(t,c),2&c&&Object.freeze(t)),Qt(t,c,o,s,e,r,u,i)}function Qt(t,e,n,r,i,o,s,a){let c=e;return 1===o||4===o&&(2&e||!(16&e)&&32&r)?ne(e)||((e|=!t.length||s&&!(4096&e)||32&r&&!(4096&e||16&e)?2:256)!==c&&z(t,e),Object.freeze(t)):(2===o&&ne(e)&&(t=mt(t),c=0,e=le(e,r),Xt(n,r,i,t)),ne(e)||(a||(e|=16),e!==c&&z(t,e))),t}function te(t,e,n){return t=Yt(t,e,n),Array.isArray(t)?t:C}function ee(t,e){return 2&e&&(t|=2),1|t}function ne(t){return!!(2&t)&&!!(4&t)||!!(256&t)}function re(t,e,n){qt(t);let r=0|(t=t.m)[V];if(null==n)Xt(t,r,e);else{var i=n===C?7:0|n[V],o=i,s=ne(i),a=s||Object.isFrozen(n);for(s||(i=0),a||(n=mt(n),o=0,i=le(i,r),a=!1),i|=5,s=0;s<n.length;s++){const t=n[s],e=Lt(t);Object.is(t,e)||(a&&(n=mt(n),o=0,i=le(i,r),a=!1),n[s]=e)}i!==o&&(a&&(n=mt(n),i=le(i,r)),z(n,i)),Xt(t,r,e,n)}}function ie(t,e,n,r){qt(t),Xt(t=t.m,0|t[V],e,("0"===r?0===Number(n):n===r)?void 0:n)}function oe(t){if(x)return t[N]??(t[N]=new Map);if(N in t)return t[N];const e=new Map;return Object.defineProperty(t,N,{value:e}),e}function se(t,e,n){var r=Fr;let i=t.get(r);if(null!=i)return i;i=0;for(let t=0;t<r.length;t++){const o=r[t];null!=Yt(e,o)&&(0!==i&&(n=Xt(e,n,i)),i=o)}return t.set(r,i),i}function ae(t,e,n){let r=t.m,i=0|r[V];if(e=function(t,e,n,r){if(null!=(t=Yt(t,r,void 0,(t=>Ft(t,n,e)))))return t}(r,i,e,n),null==e)return e;if(i=0|r[V],!H(t,i)){var o,s=e;const a=s.m,c=0|a[V];(o=H(s,c)?new s.constructor($t(a,c,!1)):s)!==e&&(Ht(t)&&(r=t.m,i=0|r[V]),Xt(r,i,n,e=o))}return e}function ce(t){return null==t&&(t=void 0),t}function ue(t,e,n){return Jt(t,e,n=ce(n)),t}function le(t,e){return-273&(2&e?2|t:-3&t)}function he(t,e,n,r){qt(t);var i=t.m,o=i;const s=H(t,i=0|i[V])?1:2;2===s&&Ht(t)&&(i=0|(o=t.m)[V]);let a=(t=te(o,e))===C?7:0|t[V];var c=ee(a,i);const u=!(4&c);if(u){var l=t,h=i;const e=!!(2&c);e&&(h|=2);let r=!e,o=!0,s=0,a=0;for(;s<l.length;s++){const t=Ft(l[s],n,h);if(t instanceof n){if(!e){const e=H(t);r&&=!e,o&&=e}l[a++]=t}}a<s&&(l.length=a),c|=4,c=o?-4097&c:4096|c,c=r?8|c:-9&c}c!==a&&(z(t,c),2&c&&Object.freeze(t)),e=t=Qt(t,c,o,i,e,s,u,!0),r=null!=r?r:new n,e.push(r),o=n=e===C?7:0|e[V],H(r)?(n&=-9,1===e.length&&(n&=-4097)):n|=4096,n!==o&&z(e,n)}function fe(t,e){return xt(Kt(t,e))??0}function de(t,e,n){ie(t,e,Ot(n),0)}function pe(t,e,n){if(null!=n&&"string"!=typeof n)throw Error();ie(t,e,n,"")}function ge(t,e,n){if(qt(t),e=(t=Zt(t,e,Nt,2,!0)).push,"string"!=typeof n)throw Error();e.call(t,n)}var me=class{constructor(t,e,n){if(this.buffer=t,n&&!e)throw Error()}};function _e(t){if("string"==typeof t)return new me(S(t),!0);if(Array.isArray(t))return new me(new Uint8Array(t),!0);if(t.constructor===Uint8Array)return new me(t,!1);if(t.constructor===ArrayBuffer)return t=new Uint8Array(t),new me(t,!1);if(t.constructor===I){O(T);var e=t.i;return e=(null==(e=null==e||E(e)?e:"string"==typeof e?S(e):null)?e:t.i=e)||new Uint8Array(0),new me(e,!0,t)}if(t instanceof Uint8Array)return t=t.constructor===Uint8Array?t:new Uint8Array(t.buffer,t.byteOffset,t.byteLength),new me(t,!1);throw Error()}var ye=class{constructor(t,e){this.m=zt(t,e)}toJSON(){return Mt(this)}};function be(t){return t?/^\d+$/.test(t)?(pt(t),new ve(at,ct)):null:we||=new ve(0,0)}ye.prototype[D]=$,ye.prototype.toString=function(){return this.m.toString()};var ve=class{constructor(t,e){this.j=t>>>0,this.i=e>>>0}};let we;function Se(t){return t?/^-?\d+$/.test(t)?(pt(t),new Ee(at,ct)):null:Te||=new Ee(0,0)}var Ee=class{constructor(t,e){this.j=t>>>0,this.i=e>>>0}};let Te;function Ae(t,e,n){for(;n>0||e>127;)t.i.push(127&e|128),e=(e>>>7|n<<25)>>>0,n>>>=7;t.i.push(e)}function Ie(t,e){for(;e>127;)t.i.push(127&e|128),e>>>=7;t.i.push(e)}function Pe(t,e){if(e>=0)Ie(t,e);else{for(let n=0;n<9;n++)t.i.push(127&e|128),e>>=7;t.i.push(1)}}function Le(t,e){0!==e.length&&(t.l.push(e),t.j+=e.length)}function Oe(t,e,n){Ie(t.i,8*e+n)}function je(t,e){return Oe(t,e,2),e=t.i.end(),Le(t,e),e.push(t.j),e}function Ue(t,e){var n=e.pop();for(n=t.j+t.i.length()-n;n>127;)e.push(127&n|128),n>>>=7,t.j++;e.push(n),t.j++}function xe(t,e,n){Oe(t,e,2),Ie(t.i,n.length),Le(t,t.i.end()),Le(t,n)}function Be(){const t=class{constructor(){throw Error()}};return Object.setPrototypeOf(t,t.prototype),t}var ke=Be(),Ne=Be(),Fe=Be(),De=Be(),Re=Be(),Me=Be(),Ve=class{constructor(t,e){this.i=t,t=ke,this.j=!!t&&e===t||!1}};function Ce(t,e,n,r,i){null!=(e=Ke(e,r))&&(n=je(t,n),i(e,t),Ue(t,n))}const Ge=new Ve(Ce,ke),ze=new Ve(Ce,ke);var We=Symbol(),$e=Symbol();let He;function qe(t){var e=Ye,n=Je,r=t[We];if(r)return r;(r={}).ga=t,r.S=function(t){switch(typeof t){case"boolean":return Vt||=[0,void 0,!0];case"number":return t>0?void 0:0===t?Ct||=[0,void 0]:[-t,void 0];case"string":return[0,t];case"object":return t}}(t[0]);var i=t[1];let o=1;i&&i.constructor===Object&&(r.X=i,"function"==typeof(i=t[++o])&&(r.ba=!0,He??=t[o+1],i=t[o+=2]));const s={};for(;i&&Array.isArray(i)&&i.length&&"number"==typeof i[0]&&i[0]>0;){for(var a=0;a<i.length;a++)s[i[a]]=i;i=t[++o]}for(a=1;void 0!==i;){let s;"number"==typeof i&&(a+=i,i=t[++o]);var c=void 0;if(i instanceof Ve?s=i:(s=Ge,o--),s?.j){i=t[++o],c=t;var u=o;"function"==typeof i&&(i=i(),c[u]=i),c=i}for(u=a+1,"number"==typeof(i=t[++o])&&i<0&&(u-=i,i=t[++o]);a<u;a++)c?n(r,a,s,c):e(r,a,s)}return t[We]=r}function Ke(t,e){return t instanceof ye?t.m:Array.isArray(t)?Gt(t,e,!1):void 0}function Ye(t,e,n){t[e]=n.i}function Je(t,e,n,r){let i,o;const s=n.i;t[e]=(t,e,n)=>s(t,e,n,o||=qe(r).S,i||=Xe(r))}function Xe(t){let e=t[$e];if(!e){const n=qe(t);e=(t,e)=>Ze(t,e,n),t[$e]=e}return e}function Ze(t,e,n){!function(t,e,n){e=128&e?0:-1;const r=t.length;var i;(i=!!r)&&(i=null!=(i=t[r-1])&&"object"==typeof i&&i.constructor===Object);const o=r+(i?-1:0);for(let r=0;r<o;r++)n(r-e,t[r]);if(i){t=t[r-1];for(const e in t)!isNaN(e)&&n(+e,t[e])}}(t,0|t[V],((t,r)=>{if(null!=r){var i=function(t,e){var n=t[e];if(n)return n;if((n=t.X)&&(n=n[e])){var r=(n=Array.isArray(n)?n[0]instanceof Ve?n:[ze,n]:[n,void 0])[0].i;if(n=n[1]){const e=Xe(n),i=qe(n).S;n=t.ba?He(i,e):(t,n,o)=>r(t,n,o,i,e)}else n=r;return t[e]=n}}(n,t);i&&i(e,r,t)}}))}var Qe,tn=0,en=tn;if(X(en)){if(!/^\s*(?:-?[1-9]\d*|0)?\s*$/.test(en))throw Error(String(en))}else if((Qe=J(en))&&(Qe=!Number.isSafeInteger(en)),Qe)throw Error(String(en));function nn(t,e){if(Array.isArray(e)){var n=0|e[V];if(4&n)return e;for(var r=0,i=0;r<e.length;r++){const n=t(e[r]);null!=n&&(e[i++]=n)}return i<r&&(e.length=i),z(e,-1537&(5|n)),2&n&&Object.freeze(e),e}}function rn(t,e){return new Ve(t,e)}function on(t,e,n){null!=(e=Et(e))&&(Oe(t,n,5),t=t.i,(n=st||=new DataView(new ArrayBuffer(8))).setFloat32(0,+e,!0),ct=0,e=at=n.getUint32(0,!0),t.i.push(e>>>0&255),t.i.push(e>>>8&255),t.i.push(e>>>16&255),t.i.push(e>>>24&255))}function sn(t,e,n){null!=(e=jt(e))&&null!=e&&(Oe(t,n,0),Pe(t.i,e))}function an(t,e,n){null!=(e=At(e))&&(Oe(t,n,0),t.i.i.push(e?1:0))}function cn(t,e,n){null!=(e=Nt(e))&&xe(t,n,r(e))}function un(t,e,n,r,i){null!=(e=Ke(e,r))&&(n=je(t,n),i(e,t),Ue(t,n))}function ln(t,e,n){null!=(e=jt(e))&&(e=parseInt(e,10),Oe(t,n,0),Pe(t.i,e))}Q||(tn=Z(tn)?tn?"1":"0":X(tn)?tn.trim()||"0":String(tn));var hn,fn=rn(on,Re),dn=rn(on,Re),pn=rn((function(t,e,n){if(e=function(t){if(null==t)return t;var e=typeof t;if("bigint"===e)return String(_t(64,t));if(Pt(t)){if("string"===e){if(e=wt(Number(t)),bt(e))t=String(e);else if(-1!==(e=t.indexOf("."))&&(t=t.substring(0,e)),e=t.length,!("-"===t[0]?e<20||20===e&&Number(t.substring(0,7))>-922337:e<19||19===e&&Number(t.substring(0,6))<922337))if(pt(t),t=at,2147483648&(e=ct))if(W())t=""+(BigInt(0|e)<<BigInt(32)|BigInt(t>>>0));else{const[n,r]=gt(t,e);t="-"+ft(n,r)}else t=ft(t,e);return t}if("number"===e){if(t=wt(t),!bt(t)){lt(t),e=at;var n=ct;(t=2147483648&n)&&(n=~n>>>0,0==(e=1+~e>>>0)&&(n=n+1>>>0)),t="number"==typeof(e=ht(e,n))?t?-e:e:t?"-"+e:e}return t}}}(e),null!=e){if("string"==typeof e)Se(e);if(null!=e)switch(Oe(t,n,0),typeof e){case"number":t=t.i,lt(e),Ae(t,at,ct);break;case"bigint":n=BigInt.asUintN(64,e),n=new Ee(Number(n&BigInt(4294967295)),Number(n>>BigInt(32))),Ae(t.i,n.j,n.i);break;default:n=Se(e),Ae(t.i,n.j,n.i)}}}),Be()),gn=rn((function(t,e,n){if(null!=(e=kt(e))){if("string"==typeof e)be(e);if(null!=e)switch(Oe(t,n,0),typeof e){case"number":t=t.i,lt(e),Ae(t,at,ct);break;case"bigint":n=BigInt.asUintN(64,e),n=new ve(Number(n&BigInt(4294967295)),Number(n>>BigInt(32))),Ae(t.i,n.j,n.i);break;default:n=be(e),Ae(t.i,n.j,n.i)}}}),Be()),mn=rn(sn,De);hn=new Ve((function(t,e,n){if(null!=(e=nn(jt,e))&&e.length){n=je(t,n);for(let n=0;n<e.length;n++)Pe(t.i,e[n]);Ue(t,n)}}),De);var _n,yn=rn(sn,De),bn=rn(sn,De),vn=rn(an,Ne),wn=rn(an,Ne),Sn=rn(cn,Fe);_n=new Ve((function(t,e,n){if(null!=(e=nn(Nt,e)))for(let a=0;a<e.length;a++){var i=t,o=n,s=e[a];null!=s&&xe(i,o,r(s))}}),Fe);var En,Tn=rn(cn,Fe),An=rn(cn,Fe),In=function(t,e,n=ke){return new Ve(e,n)}(0,(function(t,e,n,r,i){if(Array.isArray(e))for(let o=0;o<e.length;o++)un(t,e[o],n,r,i)})),Pn=new Ve(un,ke),Ln=rn((function(t,e,n){null!=(e=xt(e))&&null!=e&&(Oe(t,n,0),Ie(t.i,e))}),Be()),On=rn(ln,Me);En=new Ve((function(t,e,n){if(null!=(e=nn(jt,e))&&e.length){n=je(t,n);for(let n=0;n<e.length;n++)Pe(t.i,e[n]);Ue(t,n)}}),Me);var jn=rn(ln,Me);function Un(t){return function(){const e=new class{constructor(){this.l=[],this.j=0,this.i=new class{constructor(){this.i=[]}length(){return this.i.length}end(){const t=this.i;return this.i=[],t}}}};Ze(this.m,e,qe(t)),Le(e,e.i.end());const n=new Uint8Array(e.j),r=e.l,i=r.length;let o=0;for(let t=0;t<i;t++){const e=r[t];n.set(e,o),o+=e.length}return e.l=[n],n}}function xn(t,e){if(null!=e)if(Array.isArray(e))Jt(t,2,Dt(e,0,Rt));else{if(!("string"==typeof e||e instanceof I||E(e)))throw Error("invalid value in Any.value field: "+e+" expected a ByteString, a base64 encoded string, a Uint8Array or a jspb array");if(null!=e)if("string"==typeof e)e=e?new I(e,T):A();else if(e.constructor!==I){if(!E(e))throw Error();e=e.length?new I(new Uint8Array(e),T):A()}ie(t,2,e,A())}}var Bn=class extends ye{constructor(t){super(t)}},kn=[0,Tn,rn((function(t,e,n){if(null!=e){if(e instanceof ye){const r=e.ja;return void(r&&(e=r(e),null!=e&&xe(t,n,_e(e).buffer)))}if(Array.isArray(e))return}null!=(e=null==e||"string"==typeof e||e instanceof I?e:void 0)&&xe(t,n,_e(e).buffer)}),Be())];let Nn,Fn=globalThis.trustedTypes;function Dn(t){var e;return void 0===Nn&&(Nn=function(){let t=null;if(!Fn)return t;try{const e=t=>t;t=Fn.createPolicy("goog#html",{createHTML:e,createScript:e,createScriptURL:e})}catch(t){}return t}()),t=(e=Nn)?e.createScriptURL(t):t,new class{constructor(t){this.i=t}toString(){return this.i+""}}(t)}function Rn(t,...e){if(0===e.length)return Dn(t[0]);let n=t[0];for(let r=0;r<e.length;r++)n+=encodeURIComponent(e[r])+t[r+1];return Dn(n)}var Mn={};Mn[336783863]=[0,Sn,vn,-1,mn,[0,[1,2,3,4,5,6,7,8,9],Pn,[0],Pn,[0,vn,Sn,vn,On,-1,En,Sn,-1,[0,vn,-1],On,vn,-1],Pn,[0,Sn,-2],Pn,[0,mn,vn,1,vn,-3],Pn,[0,mn,On,vn,-1,hn,On,-1],Pn,[0,Sn,-2],Pn,[0,Sn,On],Pn,[0,On,Sn,-1,vn],Pn,[0,On,-1]],[0,Sn],vn,[0,[1,3],[2,4],Pn,[0,hn],-1,Pn,[0,_n],-1,In,[0,Sn,-1]],Sn];var Vn=class extends ye{constructor(t){super(t)}},Cn=[0,pn,-1,wn,-3,pn,hn,Tn,yn,pn,-1,wn,yn,wn,-2,Tn],Gn=class extends ye{constructor(t){super(t,500)}K(t){return ue(this,7,t)}},zn=[-1,{}],Wn=[0,Sn,1,zn],$n=[0,Sn,_n,zn];function Hn(t,e){he(t,1,Gn,e)}var qn=class extends ye{constructor(t){super(t,500)}K(t){return ue(this,1001,t)}};qn.prototype.j=Un([-500,In,[-500,Tn,-1,_n,-3,[-2,Mn,vn],In,kn,yn,-1,Wn,$n,In,[0,Tn,wn],Tn,Cn,yn,_n,987,_n],4,In,[-500,Sn,-1,[-1,{}],998,Sn],In,[-500,Sn,_n,-1,[-2,{},vn],997,_n,-1],yn,In,[-500,Sn,_n,zn,998,_n],_n,yn,Wn,$n,In,[0,Tn,-1,zn],_n,-2,Cn,Tn,-1,wn,[0,wn,Ln],978,zn,In,kn]);var Kn=class extends ye{constructor(t){super(t)}};let Yn;const Jn=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 Xn(){if(void 0===Yn)try{await WebAssembly.instantiate(Jn),Yn=!0}catch{Yn=!1}return Yn}async function Zn(t,e=Rn``){const n=await Xn()?"wasm_internal":"wasm_nosimd_internal";return{wasmLoaderPath:`${e}/${t}_${n}.js`,wasmBinaryPath:`${e}/${t}_${n}.wasm`}}var Qn=class{};function tr(t){function e(e,n){return new ReadableStream({start(){},async pull(r){i=i.then((async()=>{if(e.cache.length>0)r.enqueue(e.cache.shift());else{var{value:i,done:o}=await t.read();i&&(n.active&&n.cache.push(i),e.active&&r.enqueue(i)),o&&r.close()}})),await i},cancel(){e.active=!1,e.cache.length=0,n.active||t.cancel()}})}var n={cache:[],active:!0};const r={cache:[],active:!0};let i=Promise.resolve();const o=e(n,r);return n=e(r,n),[o.getReader(),n.getReader()]}async function er(t,e){const n=new Uint8Array(e);let r=0;for(;r<e;){const{value:i,done:o}=await t.read();if(i){const t=i.subarray(0,e-r);n.set(t,r),r+=t.length}if(o)throw Error(`Expected ${e} bytes, but stream ended after reading ${r} bytes.`)}return await t.cancel(),n}Qn.forVisionTasks=function(t){return Zn("vision",t)},Qn.forTextTasks=function(t){return Zn("text",t)},Qn.forGenAiExperimentalTasks=function(t){return Zn("genai_experimental",t)},Qn.forGenAiTasks=function(t){return Zn("genai",t)},Qn.forAudioTasks=function(t){return Zn("audio",t)},Qn.isSimdSupported=function(){return Xn()};const nr=[[0,async t=>{const e=(new TextEncoder).encode("TFL3").length;return t=await er(t,e+4),"TFL3"===new TextDecoder("utf-8").decode(t.subarray(4,e+4))}],[1,async t=>80===(t=await er(t,6))[4]&&75===t[5]]];function rr(){var t=navigator;return"undefined"!=typeof OffscreenCanvas&&(!function(t=navigator){return(t=t.userAgent).includes("Safari")&&!t.includes("Chrome")}(t)||!!((t=t.userAgent.match(/Version\/([\d]+).*Safari/))&&t.length>=1&&Number(t[1])>=17))}async function ir(t){if("function"!=typeof importScripts){const e=document.createElement("script");return e.src=t.toString(),e.crossOrigin="anonymous",new Promise(((t,n)=>{e.addEventListener("load",(()=>{t()}),!1),e.addEventListener("error",(t=>{n(t)}),!1),document.body.appendChild(e)}))}importScripts(t.toString())}function or(t,e,n){t.j||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target"),n(e=t.h.stringToNewUTF8(e)),t.h._free(e)}function sr(t,e,n){t.j||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target");const r=new Uint32Array(e.length);for(let n=0;n<e.length;n++)r[n]=t.h.stringToNewUTF8(e[n]);e=t.h._malloc(4*r.length),t.h.HEAPU32.set(r,e>>2),n(e);for(const e of r)t.h._free(e);t.h._free(e)}function ar(t,e,n){t.h.simpleListeners=t.h.simpleListeners||{},t.h.simpleListeners[e]=n}function cr(t,e,n){let r=[];t.h.simpleListeners=t.h.simpleListeners||{},t.h.simpleListeners[e]=(t,e,i)=>{e?(n(r,i),r=[]):r.push(t)}}const ur=(lr=class{constructor(t,e){this.o=!0,this.h=t,this.i=null,this.l=0,this.j="function"==typeof this.h._addIntToInputStream,void 0!==e?this.h.canvas=e:rr()?this.h.canvas=new OffscreenCanvas(1,1):(console.warn("OffscreenCanvas not supported and GraphRunner constructor glCanvas parameter is undefined. Creating backup canvas."),this.h.canvas=document.createElement("canvas"))}async initializeGraph(t){const e=await(await fetch(t)).arrayBuffer();t=!(t.endsWith(".pbtxt")||t.endsWith(".textproto")),this.setGraph(new Uint8Array(e),t)}setGraphFromString(t){this.setGraph((new TextEncoder).encode(t),!1)}setGraph(t,e){const n=t.length,r=this.h._malloc(n);this.h.HEAPU8.set(t,r),e?this.h._changeBinaryGraph(n,r):this.h._changeTextGraph(n,r),this.h._free(r)}configureAudio(t,e,n,r,i){this.h._configureAudio||console.warn('Attempting to use configureAudio without support for input audio. Is build dep ":gl_graph_runner_audio" missing?'),or(this,r||"input_audio",(r=>{or(this,i=i||"audio_header",(i=>{this.h._configureAudio(r,i,t,e??0,n)}))}))}setAutoResizeCanvas(t){this.o=t}setAutoRenderToScreen(t){this.h._setAutoRenderToScreen(t)}setGpuBufferVerticalFlip(t){this.h.gpuOriginForWebTexturesIsBottomLeft=t}attachErrorListener(t){this.h.errorListener=t}attachEmptyPacketListener(t,e){this.h.emptyPacketListeners=this.h.emptyPacketListeners||{},this.h.emptyPacketListeners[t]=e}addAudioToStream(t,e,n){this.addAudioToStreamWithShape(t,0,0,e,n)}addAudioToStreamWithShape(t,e,n,r,i){const o=4*t.length;this.l!==o&&(this.i&&this.h._free(this.i),this.i=this.h._malloc(o),this.l=o),this.h.HEAPF32.set(t,this.i/4),or(this,r,(t=>{this.h._addAudioToInputStream(this.i,e,n,t,i)}))}addGpuBufferToStream(t,e,n){or(this,e,(e=>{if(!this.h.canvas)throw Error("No OpenGL canvas configured.");e?this.h._bindTextureToStream(e):this.h._bindTextureToCanvas();const r=this.h.canvas.getContext("webgl2")||this.h.canvas.getContext("webgl");if(!r)throw Error("Failed to obtain WebGL context from the provided canvas. `getContext()` should only be invoked with `webgl` or `webgl2`.");this.h.gpuOriginForWebTexturesIsBottomLeft&&r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,!0),r.texImage2D(r.TEXTURE_2D,0,r.RGBA,r.RGBA,r.UNSIGNED_BYTE,t),this.h.gpuOriginForWebTexturesIsBottomLeft&&r.pixelStorei(r.UNPACK_FLIP_Y_WEBGL,!1);const[i,o]=void 0!==t.videoWidth?[t.videoWidth,t.videoHeight]:void 0!==t.naturalWidth?[t.naturalWidth,t.naturalHeight]:void 0!==t.displayWidth?[t.displayWidth,t.displayHeight]:[t.width,t.height];!this.o||i===this.h.canvas.width&&o===this.h.canvas.height||(this.h.canvas.width=i,this.h.canvas.height=o);const[s,a]=[i,o];this.h._addBoundTextureToStream(e,s,a,n)}))}addBoolToStream(t,e,n){or(this,e,(e=>{this.h._addBoolToInputStream(t,e,n)}))}addDoubleToStream(t,e,n){or(this,e,(e=>{this.h._addDoubleToInputStream(t,e,n)}))}addFloatToStream(t,e,n){or(this,e,(e=>{this.h._addFloatToInputStream(t,e,n)}))}addIntToStream(t,e,n){or(this,e,(e=>{this.h._addIntToInputStream(t,e,n)}))}addUintToStream(t,e,n){or(this,e,(e=>{this.h._addUintToInputStream(t,e,n)}))}addStringToStream(t,e,n){or(this,e,(e=>{or(this,t,(t=>{this.h._addStringToInputStream(t,e,n)}))}))}addStringRecordToStream(t,e,n){or(this,e,(e=>{sr(this,Object.keys(t),(r=>{sr(this,Object.values(t),(i=>{this.h._addFlatHashMapToInputStream(r,i,Object.keys(t).length,e,n)}))}))}))}addProtoToStream(t,e,n,r){or(this,n,(n=>{or(this,e,(e=>{const i=this.h._malloc(t.length);this.h.HEAPU8.set(t,i),this.h._addProtoToInputStream(i,t.length,e,n,r),this.h._free(i)}))}))}addEmptyPacketToStream(t,e){or(this,t,(t=>{this.h._addEmptyPacketToInputStream(t,e)}))}addBoolVectorToStream(t,e,n){or(this,e,(e=>{const r=this.h._allocateBoolVector(t.length);if(!r)throw Error("Unable to allocate new bool vector on heap.");for(const e of t)this.h._addBoolVectorEntry(r,e);this.h._addBoolVectorToInputStream(r,e,n)}))}addDoubleVectorToStream(t,e,n){or(this,e,(e=>{const r=this.h._allocateDoubleVector(t.length);if(!r)throw Error("Unable to allocate new double vector on heap.");for(const e of t)this.h._addDoubleVectorEntry(r,e);this.h._addDoubleVectorToInputStream(r,e,n)}))}addFloatVectorToStream(t,e,n){or(this,e,(e=>{const r=this.h._allocateFloatVector(t.length);if(!r)throw Error("Unable to allocate new float vector on heap.");for(const e of t)this.h._addFloatVectorEntry(r,e);this.h._addFloatVectorToInputStream(r,e,n)}))}addIntVectorToStream(t,e,n){or(this,e,(e=>{const r=this.h._allocateIntVector(t.length);if(!r)throw Error("Unable to allocate new int vector on heap.");for(const e of t)this.h._addIntVectorEntry(r,e);this.h._addIntVectorToInputStream(r,e,n)}))}addUintVectorToStream(t,e,n){or(this,e,(e=>{const r=this.h._allocateUintVector(t.length);if(!r)throw Error("Unable to allocate new unsigned int vector on heap.");for(const e of t)this.h._addUintVectorEntry(r,e);this.h._addUintVectorToInputStream(r,e,n)}))}addStringVectorToStream(t,e,n){or(this,e,(e=>{const r=this.h._allocateStringVector(t.length);if(!r)throw Error("Unable to allocate new string vector on heap.");for(const e of t)or(this,e,(t=>{this.h._addStringVectorEntry(r,t)}));this.h._addStringVectorToInputStream(r,e,n)}))}addBoolToInputSidePacket(t,e){or(this,e,(e=>{this.h._addBoolToInputSidePacket(t,e)}))}addDoubleToInputSidePacket(t,e){or(this,e,(e=>{this.h._addDoubleToInputSidePacket(t,e)}))}addFloatToInputSidePacket(t,e){or(this,e,(e=>{this.h._addFloatToInputSidePacket(t,e)}))}addIntToInputSidePacket(t,e){or(this,e,(e=>{this.h._addIntToInputSidePacket(t,e)}))}addUintToInputSidePacket(t,e){or(this,e,(e=>{this.h._addUintToInputSidePacket(t,e)}))}addStringToInputSidePacket(t,e){or(this,e,(e=>{or(this,t,(t=>{this.h._addStringToInputSidePacket(t,e)}))}))}addProtoToInputSidePacket(t,e,n){or(this,n,(n=>{or(this,e,(e=>{const r=this.h._malloc(t.length);this.h.HEAPU8.set(t,r),this.h._addProtoToInputSidePacket(r,t.length,e,n),this.h._free(r)}))}))}addBoolVectorToInputSidePacket(t,e){or(this,e,(e=>{const n=this.h._allocateBoolVector(t.length);if(!n)throw Error("Unable to allocate new bool vector on heap.");for(const e of t)this.h._addBoolVectorEntry(n,e);this.h._addBoolVectorToInputSidePacket(n,e)}))}addDoubleVectorToInputSidePacket(t,e){or(this,e,(e=>{const n=this.h._allocateDoubleVector(t.length);if(!n)throw Error("Unable to allocate new double vector on heap.");for(const e of t)this.h._addDoubleVectorEntry(n,e);this.h._addDoubleVectorToInputSidePacket(n,e)}))}addFloatVectorToInputSidePacket(t,e){or(this,e,(e=>{const n=this.h._allocateFloatVector(t.length);if(!n)throw Error("Unable to allocate new float vector on heap.");for(const e of t)this.h._addFloatVectorEntry(n,e);this.h._addFloatVectorToInputSidePacket(n,e)}))}addIntVectorToInputSidePacket(t,e){or(this,e,(e=>{const n=this.h._allocateIntVector(t.length);if(!n)throw Error("Unable to allocate new int vector on heap.");for(const e of t)this.h._addIntVectorEntry(n,e);this.h._addIntVectorToInputSidePacket(n,e)}))}addUintVectorToInputSidePacket(t,e){or(this,e,(e=>{const n=this.h._allocateUintVector(t.length);if(!n)throw Error("Unable to allocate new unsigned int vector on heap.");for(const e of t)this.h._addUintVectorEntry(n,e);this.h._addUintVectorToInputSidePacket(n,e)}))}addStringVectorToInputSidePacket(t,e){or(this,e,(e=>{const n=this.h._allocateStringVector(t.length);if(!n)throw Error("Unable to allocate new string vector on heap.");for(const e of t)or(this,e,(t=>{this.h._addStringVectorEntry(n,t)}));this.h._addStringVectorToInputSidePacket(n,e)}))}attachBoolListener(t,e){ar(this,t,e),or(this,t,(t=>{this.h._attachBoolListener(t)}))}attachBoolVectorListener(t,e){cr(this,t,e),or(this,t,(t=>{this.h._attachBoolVectorListener(t)}))}attachIntListener(t,e){ar(this,t,e),or(this,t,(t=>{this.h._attachIntListener(t)}))}attachIntVectorListener(t,e){cr(this,t,e),or(this,t,(t=>{this.h._attachIntVectorListener(t)}))}attachUintListener(t,e){ar(this,t,e),or(this,t,(t=>{this.h._attachUintListener(t)}))}attachUintVectorListener(t,e){cr(this,t,e),or(this,t,(t=>{this.h._attachUintVectorListener(t)}))}attachDoubleListener(t,e){ar(this,t,e),or(this,t,(t=>{this.h._attachDoubleListener(t)}))}attachDoubleVectorListener(t,e){cr(this,t,e),or(this,t,(t=>{this.h._attachDoubleVectorListener(t)}))}attachFloatListener(t,e){ar(this,t,e),or(this,t,(t=>{this.h._attachFloatListener(t)}))}attachFloatVectorListener(t,e){cr(this,t,e),or(this,t,(t=>{this.h._attachFloatVectorListener(t)}))}attachStringListener(t,e){ar(this,t,e),or(this,t,(t=>{this.h._attachStringListener(t)}))}attachStringVectorListener(t,e){cr(this,t,e),or(this,t,(t=>{this.h._attachStringVectorListener(t)}))}attachProtoListener(t,e,n){ar(this,t,e),or(this,t,(t=>{this.h._attachProtoListener(t,n||!1)}))}attachProtoVectorListener(t,e,n){cr(this,t,e),or(this,t,(t=>{this.h._attachProtoVectorListener(t,n||!1)}))}attachAudioListener(t,e,n){this.h._attachAudioListener||console.warn('Attempting to use attachAudioListener without support for output audio. Is build dep ":gl_graph_runner_audio_out" missing?'),ar(this,t,((t,n)=>{t=new Float32Array(t.buffer,t.byteOffset,t.length/4),e(t,n)})),or(this,t,(t=>{this.h._attachAudioListener(t,n||!1)}))}finishProcessing(){this.h._waitUntilIdle()}closeGraph(){this.h._closeGraph(),this.h.simpleListeners=void 0,this.h.emptyPacketListeners=void 0}},class extends lr{da(){this.h._registerModelResourcesGraphService()}});var lr;async function hr(t,e){const n=await(async(t,e,n)=>{var r=qr;if(t&&await ir(t),!self.ModuleFactory)throw Error("ModuleFactory not set.");if(e&&(await ir(e),!self.ModuleFactory))throw Error("ModuleFactory not set.");return self.Module&&n&&((t=self.Module).locateFile=n.locateFile,n.mainScriptUrlOrBlob&&(t.mainScriptUrlOrBlob=n.mainScriptUrlOrBlob)),n=await self.ModuleFactory(self.Module||n),self.ModuleFactory=self.Module=void 0,new r(n,null)})(t.wasmLoaderPath,t.assetLoaderPath,{locateFile:e=>e.endsWith(".wasm")?t.wasmBinaryPath.toString():t.assetBinaryPath&&e.endsWith(".data")?t.assetBinaryPath.toString():e});return await n.K(e),n}async function fr(t,e){return hr(t,e)}function dr(t){try{const e=t.G.length;if(1===e)throw Error(t.G[0].message);if(e>1)throw Error("Encountered multiple errors: "+t.G.map((t=>t.message)).join(", "))}finally{t.G=[]}}function pr(t,e){t.F=Math.max(t.F,e)}var gr=class{constructor(t){this.i=t,this.G=[],this.F=0,this.i.setAutoRenderToScreen(!1)}setGraph(t,e){this.i.attachErrorListener(((t,e)=>{this.G.push(Error(e))})),this.i.da(),this.i.setGraph(t,e),dr(this)}finishProcessing(){this.i.finishProcessing(),dr(this)}close(){this.i.closeGraph()}};gr.prototype.close=gr.prototype.close;var mr=class extends ye{constructor(t){super(t)}j(){return jt(Kt(this,2))??0}};function _r(t,e){ue(t,1,e)}var yr=class extends ye{constructor(t){super(t)}},br=[0,jn,yn,dn,-1,mn];function vr(t,e,n,r){if(void 0!==t.data){var i=new Uint8Array(t.data.buffer,e,n);return 1===r&&function(t,e,n){t.i.push([e,n]),t.i.sort(((t,e)=>t[0]-e[0])),e=0;for(const[r,i]of t.i){const t=i;(n=r)<=e&&(e=Math.max(e,n+t))}e===t.length&&(t.data=void 0)}(t,e,n),i}}mr.prototype.l=Un(br);class wr{constructor(t){this.i=[],this.data=t,this.length=t.length}}var Sr=class{constructor(t,e){this.i=[],this.j=t,this.l=e}get size(){let t=0;for(let e=0;e<this.i.length;e++)t+=this.i[e].length;return t}};async function Er(t,e,n){t=new Ar(t,n);let r=0;for(e=e.getReader();;){const{value:n,done:i}=await e.read();if(i)break;t.set(n,r),r+=n.byteLength}if(n!==r)throw Tr(t),Error(`File could not be fully loaded to memory, so was not retained. Loaded ${r}/${n} bytes before failure`);return t}function Tr(t){if(t.i)try{t.h._free(t.j)}catch{}finally{t.i=!1}}var Ar=class{constructor(t,e){this.h=t,this.l=e,this.j=this.h._malloc(e)>>>0,this.o=this.h.HEAPU8,this.i=!!this.j}get offset(){if(!this.i)throw Error("WasmFileReference has been freed.");return this.j}get size(){if(!this.i)throw Error("WasmFileReference has been freed.");return this.l}set(t,e){this.o.set(t,this.j+(e??0))}},Ir=class extends ye{constructor(t){super(t)}};Ir.prototype.j=Un([0,Tn,2,_n,yn,wn]);var Pr=class extends ye{constructor(t){super(t)}},Lr=class extends ye{constructor(t){super(t)}},Or=class extends ye{constructor(t){super(t)}},jr=class extends ye{constructor(t){super(t)}},Ur=[0,yn,-6,1,yn,1,[0,wn,jn,-2],[0,wn,dn],jn,-2,[0,wn,-1,jn,dn,On,mn,vn],1,wn,yn,mn,-1,[0,jn,yn],wn,-1,fn,yn,-5,fn,-1,[0,mn,fn],mn,vn,[0,mn,-2],fn,[0,yn],[0,dn,-1]],xr=[0,Tn,-2],Br=[0,[4,6],Ur,yn,1,bn,_n,An,En,xr,mn,[0,[0,yn,-1,In,[0,yn,[0,yn,-1],-1,[0,jn,-1],wn],wn,-2,yn,-1],[0,yn,-1,wn],Ur,wn,yn],Sn,-3,[0,yn,wn],Ur,[0,xr,-2]];jr.prototype.j=Un([0,Tn,8,[0,wn,-6],1,yn,1,yn,[0,In,[0,Tn,gn,-1,jn],Br,yn],[0,yn,wn,-3],1,jn,1,Br,1,yn,5,jn,hn,1,br,wn]);var kr=class extends ye{constructor(t){super(t)}},Nr=class extends ye{constructor(t){super(t)}},Fr=[2,4];Nr.prototype.j=Un([0,Fr,yn,An,yn,Pn,[0,1,Tn]]);const Dr=function(t){return class extends t{constructor(){super(...arguments),this.L=!1}J(){if(this.L)throw Error("Cannot process because LLM inference engine is currently loading or processing.");this.L=!0}I(){this.L=!1}async W(t,e){this.J();try{await this.fa(t),await this.h.ccall("CreateLlmInferenceEngine","void",["number","number","boolean"],[fe(e,2)??512,ae(e,mr,3)?.j()??40,At(Kt(e,6))??!1??!1],{async:!0})}finally{this.I()}}R(){this.J();try{this.h.ccall("DeleteLlmInferenceEngine","void",[],[],{async:!1})}finally{this.I()}}async M(t,e,n){this.J();try{const r=[];this.h._userProgressListener=(t,e)=>{t&&r.push(t),n&&n(t,e)};const i=e.l(),o=this.h._malloc(i.length);return this.h.HEAPU8.set(i,o),await async function(t,e,n){t.j||console.error("No wasm multistream support detected: ensure dependency inclusion of :gl_graph_runner_internal_multi_input target"),e=t.h.stringToNewUTF8(e),await n(e),t.h._free(e)}(this,t,(t=>this.h.ccall("GenerateResponse","void",["number","number","number"],[t,o,i.length],{async:!0}))),n&&n("",!0),this.h._free(o),this.h._userProgressListener=void 0,r.join("")}finally{this.I()}}N(t){this.J();try{let e;return or(this,t,(t=>{e=this.h._GetSizeInTokens(t)})),e}finally{this.I()}}async fa(t){t=await async function(t){const e=[];for(var n=0;;){const{done:r,value:i}=await t.read();if(r)break;e.push(i),n+=i.length}if(0===e.length)return new Uint8Array(0);if(1===e.length)return e[0];t=new Uint8Array(n),n=0;for(const r of e)t.set(r,n),n+=r.length;return t}(t);try{this.h.FS_unlink("llm.task")}catch{}this.h.FS_createDataFile("/","llm.task",t,!0,!1,!1)}}}(function(t){return class e extends t{static async ea(t,n){let r;n||=await e.T();const i=[];for(const e of t?.requiredFeatures??[])n.features.has(e)?i.push(e):console.warn(`WebGPU feature ${e} is not supported.`);t={...t,requiredFeatures:i};try{r=await n.requestDevice(t)}catch(t){throw console.error("Unable to initialize WebGPU with the requested features."),t}return(t=r).adapterInfo||(t.adapterInfo=n.info),r}static async T(t){if(!(t=await navigator.gpu.requestAdapter(t)))throw Error("Unable to request adapter from navigator.gpu; Ensure WebGPU is enabled.");return t}Z(t){if(e)"undefined"!=typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement&&(e.id="canvas_webgpu");else var e=new OffscreenCanvas(1,1);e.getContext("webgpu").configure({device:t,format:navigator.gpu.getPreferredCanvasFormat()}),this.h.preinitializedWebGPUDevice=t}V(){return this.h.ccall("closeGraph","void",[],[],{async:!0})}}}(function(t){return class extends t{addStreamingReaderToInputSidePacket(t,e){this.h.addStreamingReaderToInputSidePacket(((e,n,r)=>async function(t,e,n,r,i){if(2===i)return t.i=[],t.j=()=>Promise.resolve(void 0),setTimeout((()=>{t.l()}),0),Promise.resolve(0);for(;t.size<n+r;){var o=await t.j();if(void 0===o)break;t.i.push(new wr(o))}if(t.size<n+r)throw Error(`Data size is too small: ${t.size}, expected at least ${n+r}.`);o=e._malloc(r)>>>0;let s=0;for(let a=0;a<t.i.length;a++){const c=t.i[a];if(n>=c.length){n-=c.length;continue}const u=Math.min(r,c.length-n);if(void 0===(n=vr(c,n,u,i)))throw Error("Data has already been released.");if(e.HEAPU8.set(n,o+s),n=0,s+=u,0==(r-=u))break}if(0!==r)throw Error("Data not found.");return Promise.resolve(o)}(t,this.h,e,n,r)),e)}}}(function(t){return class extends t{U(t,e){or(this,"lora_model_ref_in",(n=>{this.h._addRawDataSpanToInputStream(t.offset,t.size,n,e)}))}}}(class extends ur{}))));class Rr extends Dr{}var Mr=class{constructor(t){this.j=t,this.i=Vr,Vr++}},Vr=1;class Cr{constructor(){let t,e;this.promise=new Promise(((n,r)=>{t=n,e=r})),this.resolve=t,this.reject=e}}function Gr(t){return 1===t?1:t+t%2}async function zr(){const t=await Rr.T({powerPreference:"high-performance"});var e=t.limits.maxBufferSize,n=t.limits.maxStorageBufferBindingSize;return e<524550144&&console.warn(`This WebGPU device is unable to execute most LLM tasks, because the required maxBufferSize is usually at least 524550144, but your device only supports maxBufferSize of ${e}`),n<524550144&&console.warn(`The WebGPU device is unable to execute LLM tasks, because the required maxStorageBufferBindingSize is usually at least 524550144, but your device only supports maxStorageBufferBindingSize of ${n}`),e={requiredFeatures:["shader-f16"],requiredLimits:{maxStorageBufferBindingSize:n,maxBufferSize:e,maxStorageBuffersPerShaderStage:t.limits.maxStorageBuffersPerShaderStage}},t.features.has("subgroups")&&(console.warn("Experimental Chromium WGSL subgroup support detected. Enabling this feature in the inference engine."),n=["shader-f16","subgroups"],t.features.has("subgroups-f16")&&n.push("subgroups-f16"),e.requiredFeatures=n),Rr.ea(e,t)}function Wr(t){if(t.B.length>0){const e=[...t.B];if(t.B.length=0,!t.o)throw e;t.o.reject(e),t.o=void 0}}function $r(t){const e=function(t){const e=new qn;ge(e,10,"text_in"),ge(e,10,"token_cost_in"),ge(e,10,"lora_model_id_to_apply_in"),ge(e,10,"lora_model_ref_in"),ge(e,10,"lora_model_id_to_load_in"),ge(e,16,"streaming_reader"),ge(e,15,"text_out"),ge(e,15,"text_end"),ge(e,15,"token_cost_out");var n=new Gn;pe(n,2,"TokenizerInputBuildCalculator"),ge(n,3,"PROMPT:text_in"),ge(n,3,"LORA_ID:lora_model_id_to_apply_in"),ge(n,4,"prompt"),Hn(e,n),pe(n=new Gn,2,"ModelDataCalculator"),ge(n,6,"MODEL_DATA:__side_packet_1"),ge(n,6,"MODEL_TYPE:model_type"),ge(n,5,"READ_DATA_FN:streaming_reader"),ge(n,3,"LORA_MODEL_SPAN:lora_model_ref_in"),ge(n,3,"LORA_MODEL_ID:lora_model_id_to_load_in"),ge(n,4,"LORA_DATA:lora_model_data"),Hn(e,n),pe(n=new Gn,2,"Gpt2UnicodeMappingCalculator"),ge(n,5,"MODEL_TYPE:model_type"),ge(n,6,"BYTES_TO_UNICODE_MAPPING:tokenizer_mapping"),Hn(e,n),pe(n=new Bn,1,"type.googleapis.com/odml.infra.proto.TokenizerCalculatorOptions");var r=new Nr,i=fe(t.j,2);de(r,1,i),pe(i=new kr,2,"spm_vocab_model");t:{i=ce(i),qt(r);var o=r.m,s=0|o[V];if(null==i){var a=oe(o);if(4!==se(a,o,s))break t;a.set(Fr,0)}else{const t=oe(a=o),e=se(t,a,s);4!==e&&(e&&(s=Xt(a,s,e)),t.set(Fr,4))}Xt(o,s,4,i)}return de(r,3,2),xn(n,r.j()),pe(r=new Gn,2,"TokenizerCalculator"),he(r,8,Bn,n),ge(r,5,"MODEL_DATA:__side_packet_1"),ge(r,3,"PROMPT_AND_INPUT_OPTIONS:prompt"),ge(r,5,"BYTES_TO_UNICODE_MAPPING:tokenizer_mapping"),ge(r,6,"PROCESSOR_GETTER:__input_side_1"),ge(r,4,"IDS_AND_INPUT_OPTIONS:__stream_0"),Hn(e,r),pe(n=new Bn,1,"type.googleapis.com/odml.infra.proto.LlmGpuCalculatorOptions"),de(r=new jr,12,3),pe(r,1,"llm.tflite"),de(r,14,0),i=Gr(fe(t.j,5)),de(r,22,i),i=ae(t.j,mr,3),ue(r,31,i),ie(i=new Pr,1,Tt(!0),!1),null!=At(Kt(t.j,6))&&(At(Kt(t.j,6))??!1)&&ie(i,1,Tt(!1),!1),ie(i,2,Tt(!0),!1),ie(i,5,Tt(!0),!1),ue(r,10,i),i=Zt(t.j,4,jt,void 0===K?2:4),re(r,29,i),i=new Or,de(o=new Lr,1,1),a=fe(t.j,2),de(o,2,a),ue(i,1,o),ue(r,20,i),xn(n,r.j()),pe(r=new Gn,2,"LlmGpuCalculator"),he(r,8,Bn,n),ge(r,3,"IDS_AND_INPUT_OPTIONS:__stream_0"),ge(r,3,"FINISH:finish"),ge(r,3,"LORA_DATA:lora_model_data"),ge(r,5,"MODEL_DATA:__side_packet_1"),ge(r,4,"DECODED_IDS:__stream_3"),ge(r,4,"OUTPUT_END:__stream_4"),pe(n=new Vn,1,"FINISH"),ie(n,2,Tt(!0),!1),he(r,13,Vn,n),Hn(e,r),pe(n=new Gn,2,"IsPacketPresentCalculator"),ge(n,3,"__stream_4"),ge(n,4,"text_end"),Hn(e,n),pe(n=new Bn,1,"type.googleapis.com/odml.infra.proto.DetokenizerCalculatorOptions"),r=new Ir,t=Gr(fe(t.j,5)),de(r,5,t),ge(r,4,"<eos>"),ge(r,4,"<|endoftext|>"),xn(n,r.j()),pe(t=new Gn,2,"DetokenizerCalculator"),he(t,8,Bn,n),ge(t,3,"IDS_AND_INPUT_OPTIONS:__stream_3"),ge(t,5,"PROCESSOR_GETTER:__input_side_1"),ge(t,5,"BYTES_TO_UNICODE_MAPPING:tokenizer_mapping"),ge(t,5,"MODEL_DATA:__side_packet_1"),ge(t,4,"FINISH_AND_INPUT_OPTIONS:finish"),ge(t,4,"WORDS:text_out"),Hn(e,t),pe(t=new Gn,2,"TokenCostCalculator"),ge(t,3,"PROMPT:token_cost_in"),ge(t,5,"PROCESSOR_GETTER:__input_side_1"),ge(t,5,"BYTES_TO_UNICODE_MAPPING:tokenizer_mapping"),ge(t,4,"NUM_TOKENS:token_cost_out"),Hn(e,t),e}(t);t.i.attachStringVectorListener("text_out",((e,n)=>{e=function(t,e){return null==t||0===t.length?[]:t.map((t=>(t=(t=t.replaceAll("▁"," ")).replaceAll("<0x0A>","\n"),e&&(t=t.trimStart()),t.split("\\[eod\\]",1)[0])))}(e,0===t.D.length),e.forEach(((e,n)=>{n<fe(t.j,5)&&t.D[n].push(e)})),t.u&&0===t.B.length&&(t.A?(e.length>fe(t.j,5)&&e.pop(),t.u(e,!1)):t.u(e[0],!1)),pr(t,n)})),t.i.attachEmptyPacketListener("text_out",(e=>{pr(t,e)})),t.i.attachBoolListener("text_end",((e,n)=>{if(t.l=!1,pr(t,n),Wr(t),t.o&&(t.o.resolve(t.D.map((t=>t.join("")))),t.o=void 0),t.u)if(t.A){for(e=[],n=0;n<fe(t.j,5);n++)e.push("");t.u(e,!0)}else t.u("",!0);t.A=void 0})),t.i.attachEmptyPacketListener("text_end",(e=>{t.l=!1,t.A=void 0,pr(t,e),Wr(t),t.o&&(t.o.resolve(t.D.map((t=>t.join("")))),t.o=void 0)})),t.i.attachIntListener("token_cost_out",((e,n)=>{t.O=e,pr(t,n)})),t.P&&t.i.addStreamingReaderToInputSidePacket(t.P,"streaming_reader");const n=e.j();return t.C?.removeEventListener("uncapturederror",t.H),t.i.V().then((()=>{t.C?.addEventListener("uncapturederror",t.H),t.B.length=0,t.setGraph(new Uint8Array(n),!0),t.finishProcessing()}))}function Hr(t,e,n,r){if(t.u="function"==typeof n?n:r,t.v){if(t.A&&fe(t.j,5)>1)throw Error("Multi-response generation is not supported for converted LLM models (.task format) yet. Please use the .bin format.");if(n instanceof Mr)throw Error("LoRA is not supported for converted LLM models (.task format) yet. Please use the .bin format.");return t.i.M(e,t.s,((e,n)=>{0===t.B.length&&t.u&&(t.A?t.u([e],n):t.u(e,n))})).then((e=>(Wr(t),[e])))}if(t.l)throw Error("Previous invocation or loading is still ongoing.");for(t.l=!0,t.D.length=0,r=0;r<fe(t.j,5);r++)t.D[r]=[];if(r=t.F+1,t.i.addStringToStream(e,"text_in",r),n instanceof Mr){if(n.j!==t)throw t.l=!1,t.A=void 0,Error("The LoRA model was not loaded by this LLM Inference task.");t.i.addUintToStream(n.i,"lora_model_id_to_apply_in",r)}else t.i.addEmptyPacketToStream("lora_model_id_to_apply_in",r);return t.finishProcessing(),t.o=new Cr,t.o.promise}var qr=class extends gr{constructor(t,e){if(super(new Rr(t,e)),this.D=[],this.v=this.l=!1,this.B=[],this.H=t=>{if((t=t.error).message.match(/exceeds the max buffer size limit/))throw Error(`Failed to run this LLM model because it requires a buffer size that exceeds the maximum size your device supports, but you could try a smaller LLM model or different device.\nWebGPU throws: "${t.message}"`);if(t.message.match(/is larger than the maximum storage buffer binding size/))throw Error(`Failed to run this LLM model because it requires a storage buffer binding size that exceeds the maximum size your device supports, but you could try a smaller LLM model or different device.\nWebGPU throws: "${t.message}"`);this.B.push(t)},this.j=new yr,_r(this.j,new Kn),this.s=new mr,ue(this.j,3,this.s),Jt(this.j,2,Ut(512)),t=this.s,!vt(2))throw U("enum");ie(t,1,2,0),de(this.s,2,40),ie(this.s,3,St(1),0),Jt(this.s,5,Ot(0)),ie(this.s,4,St(.8),0),Jt(this.j,5,Ut(1))}async K(t){if(this.l)throw Error("Cannot set options while loading or processing.");if(t.baseOptions?.modelAssetPath&&t.baseOptions?.modelAssetBuffer)throw Error("Cannot set both baseOptions.modelAssetPath and baseOptions.modelAssetBuffer");let e;const n=new Promise((t=>{e=t}));if(t.baseOptions?.modelAssetPath){var r=await fetch(t.baseOptions.modelAssetPath.toString());if(!r.ok)throw Error(`Failed to fetch model: ${t.baseOptions.modelAssetPath} (${r.status})`);if(!r.body)throw Error(`Failed to fetch model: ${t.baseOptions.modelAssetPath} (no body)`);r=r.body.getReader()}else t.baseOptions?.modelAssetBuffer instanceof Uint8Array?r=function(t){return new ReadableStream({start(){},async pull(e){e.enqueue(t),e.close()}})}(t.baseOptions.modelAssetBuffer).getReader():t.baseOptions?.modelAssetBuffer instanceof ReadableStreamDefaultReader?(r=t.baseOptions.modelAssetBuffer,t.baseOptions.modelAssetBuffer=void 0):e();if(!r)throw Error("No model asset provided.");{const[t,n]=tr(r);1===await async function(t){cons