onnxruntime-web
Version:
A Javascript library for running ONNX models on browsers
9 lines (8 loc) • 36.3 kB
JavaScript
/*!
* ONNX Runtime Web v1.17.3
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License.
*/
;var sr=Object.create;var xe=Object.defineProperty;var ar=Object.getOwnPropertyDescriptor;var ir=Object.getOwnPropertyNames;var ur=Object.getPrototypeOf,fr=Object.prototype.hasOwnProperty;var Z=(t,s)=>()=>(t&&(s=t(t=0)),s);var cr=(t,s)=>()=>(s||t((s={exports:{}}).exports,s),s.exports),dt=(t,s)=>{for(var r in s)xe(t,r,{get:s[r],enumerable:!0})},_e=(t,s,r,c)=>{if(s&&typeof s=="object"||typeof s=="function")for(let f of ir(s))!fr.call(t,f)&&f!==r&&xe(t,f,{get:()=>s[f],enumerable:!(c=ar(s,f))||c.enumerable});return t},te=(t,s,r)=>(_e(t,s,"default"),r&&_e(r,s,"default")),mt=(t,s,r)=>(r=t!=null?sr(ur(t)):{},_e(s||!t||!t.__esModule?xe(r,"default",{value:t,enumerable:!0}):r,t)),gt=t=>_e(xe({},"__esModule",{value:!0}),t);var bt=cr((ht,Re)=>{"use strict";var wt=(()=>{var t=typeof document<"u"&&document.currentScript?document.currentScript.src:void 0;return typeof __filename<"u"&&(t=t||__filename),function(s={}){var r=s,c,f;r.ready=new Promise((e,n)=>{c=e,f=n});var p=Object.assign({},r),u="./this.program",g=typeof window=="object",y=typeof importScripts=="function",E=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string",O="",h,m,x;if(E){var v=require("fs"),T=require("path");O=y?T.dirname(O)+"/":__dirname+"/",h=(e,n)=>(e=ie(e)?new URL(e):T.normalize(e),v.readFileSync(e,n?void 0:"utf8")),x=e=>(e=h(e,!0),e.buffer||(e=new Uint8Array(e)),e),m=(e,n,o,i=!0)=>{e=ie(e)?new URL(e):T.normalize(e),v.readFile(e,i?void 0:"utf8",(l,w)=>{l?o(l):n(i?w.buffer:w)})},!r.thisProgram&&1<process.argv.length&&(u=process.argv[1].replace(/\\/g,"/")),process.argv.slice(2),r.inspect=()=>"[Emscripten Module object]"}else(g||y)&&(y?O=self.location.href:typeof document<"u"&&document.currentScript&&(O=document.currentScript.src),t&&(O=t),O.indexOf("blob:")!==0?O=O.substr(0,O.replace(/[?#].*/,"").lastIndexOf("/")+1):O="",h=e=>{var n=new XMLHttpRequest;return n.open("GET",e,!1),n.send(null),n.responseText},y&&(x=e=>{var n=new XMLHttpRequest;return n.open("GET",e,!1),n.responseType="arraybuffer",n.send(null),new Uint8Array(n.response)}),m=(e,n,o)=>{var i=new XMLHttpRequest;i.open("GET",e,!0),i.responseType="arraybuffer",i.onload=()=>{i.status==200||i.status==0&&i.response?n(i.response):o()},i.onerror=o,i.send(null)});var P=console.log.bind(console),k=console.error.bind(console);Object.assign(r,p),p=null,typeof WebAssembly!="object"&&A("no native wasm support detected");var I,D=!1,q,G,d,F,le;function we(){var e=I.buffer;r.HEAP8=q=new Int8Array(e),r.HEAP16=new Int16Array(e),r.HEAPU8=G=new Uint8Array(e),r.HEAPU16=new Uint16Array(e),r.HEAP32=d=new Int32Array(e),r.HEAPU32=F=new Uint32Array(e),r.HEAPF32=new Float32Array(e),r.HEAPF64=le=new Float64Array(e)}var z=[],he=[],ve=[],ae=0,pe=null,X=null;function A(e){throw e="Aborted("+e+")",k(e),D=!0,e=new WebAssembly.RuntimeError(e+". Build with -sASSERTIONS for more info."),f(e),e}var ne=e=>e.startsWith("data:application/octet-stream;base64,"),ie=e=>e.startsWith("file://"),Y;if(Y="ort-wasm.wasm",!ne(Y)){var ue=Y;Y=r.locateFile?r.locateFile(ue,O):O+ue}function R(e){if(x)return x(e);throw"both async and sync fetching of the wasm failed"}function J(e){if(g||y){if(typeof fetch=="function"&&!ie(e))return fetch(e,{credentials:"same-origin"}).then(n=>{if(!n.ok)throw"failed to load wasm binary file at '"+e+"'";return n.arrayBuffer()}).catch(()=>R(e));if(m)return new Promise((n,o)=>{m(e,i=>n(new Uint8Array(i)),o)})}return Promise.resolve().then(()=>R(e))}function Le(e,n,o){return J(e).then(i=>WebAssembly.instantiate(i,n)).then(i=>i).then(o,i=>{k(`failed to asynchronously prepare wasm: ${i}`),A(i)})}function de(e,n){var o=Y;return typeof WebAssembly.instantiateStreaming!="function"||ne(o)||ie(o)||E||typeof fetch!="function"?Le(o,e,n):fetch(o,{credentials:"same-origin"}).then(i=>WebAssembly.instantiateStreaming(i,e).then(n,function(l){return k(`wasm streaming compile failed: ${l}`),k("falling back to ArrayBuffer instantiation"),Le(o,e,n)}))}var ee,Ae={920016:(e,n,o,i)=>{if(typeof r>"u"||!r.za)return 1;if(e=M(e>>>0),e.startsWith("./")&&(e=e.substring(2)),e=r.za.get(e),!e)return 2;if(n>>>=0,o>>>=0,n+o>e.byteLength)return 3;try{return G.set(e.subarray(n,n+o),i>>>0>>>0),0}catch{return 4}}};function Fe(e){this.xa=e-24,this.Ha=function(n){F[this.xa+4>>>2>>>0]=n},this.Ga=function(n){F[this.xa+8>>>2>>>0]=n},this.Aa=function(n,o){this.Fa(),this.Ha(n),this.Ga(o)},this.Fa=function(){F[this.xa+16>>>2>>>0]=0}}var oe=0,fe=0,be=typeof TextDecoder<"u"?new TextDecoder("utf8"):void 0,W=(e,n,o)=>{n>>>=0;var i=n+o;for(o=n;e[o]&&!(o>=i);)++o;if(16<o-n&&e.buffer&&be)return be.decode(e.subarray(n,o));for(i="";n<o;){var l=e[n++];if(l&128){var w=e[n++]&63;if((l&224)==192)i+=String.fromCharCode((l&31)<<6|w);else{var S=e[n++]&63;l=(l&240)==224?(l&15)<<12|w<<6|S:(l&7)<<18|w<<12|S<<6|e[n++]&63,65536>l?i+=String.fromCharCode(l):(l-=65536,i+=String.fromCharCode(55296|l>>10,56320|l&1023))}}else i+=String.fromCharCode(l)}return i},M=(e,n)=>(e>>>=0)?W(G,e,n):"",K=e=>{for(var n=0,o=0;o<e.length;++o){var i=e.charCodeAt(o);127>=i?n++:2047>=i?n+=2:55296<=i&&57343>=i?(n+=4,++o):n+=3}return n},me=(e,n,o,i)=>{if(o>>>=0,!(0<i))return 0;var l=o;i=o+i-1;for(var w=0;w<e.length;++w){var S=e.charCodeAt(w);if(55296<=S&&57343>=S){var N=e.charCodeAt(++w);S=65536+((S&1023)<<10)|N&1023}if(127>=S){if(o>=i)break;n[o++>>>0]=S}else{if(2047>=S){if(o+1>=i)break;n[o++>>>0]=192|S>>6}else{if(65535>=S){if(o+2>=i)break;n[o++>>>0]=224|S>>12}else{if(o+3>=i)break;n[o++>>>0]=240|S>>18,n[o++>>>0]=128|S>>12&63}n[o++>>>0]=128|S>>6&63}n[o++>>>0]=128|S&63}}return n[o>>>0]=0,o-l},se=e=>e%4===0&&(e%100!==0||e%400===0),Je=[0,31,60,91,121,152,182,213,244,274,305,335],Ze=[0,31,59,90,120,151,181,212,243,273,304,334],Ke=e=>{var n=K(e)+1,o=ot(n);return o&&me(e,G,o,n),o},Me=[],ke={},Qe=()=>{if(!We){var e={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:u||"./this.program"},n;for(n in ke)ke[n]===void 0?delete e[n]:e[n]=ke[n];var o=[];for(n in e)o.push(`${n}=${e[n]}`);We=o}return We},We,tr=[null,[],[]],et=[31,29,31,30,31,30,31,31,30,31,30,31],tt=[31,28,31,30,31,30,31,31,30,31,30,31];function rr(e){var n=Array(K(e)+1);return me(e,n,0,n.length),n}function rt(e,n,o,i){function l(a,_,U){for(a=typeof a=="number"?a.toString():a||"";a.length<_;)a=U[0]+a;return a}function w(a,_){return l(a,_,"0")}function S(a,_){function U(pt){return 0>pt?-1:0<pt?1:0}var ce;return(ce=U(a.getFullYear()-_.getFullYear()))===0&&(ce=U(a.getMonth()-_.getMonth()))===0&&(ce=U(a.getDate()-_.getDate())),ce}function N(a){switch(a.getDay()){case 0:return new Date(a.getFullYear()-1,11,29);case 1:return a;case 2:return new Date(a.getFullYear(),0,3);case 3:return new Date(a.getFullYear(),0,2);case 4:return new Date(a.getFullYear(),0,1);case 5:return new Date(a.getFullYear()-1,11,31);case 6:return new Date(a.getFullYear()-1,11,30)}}function V(a){var _=a.ta;for(a=new Date(new Date(a.ua+1900,0,1).getTime());0<_;){var U=a.getMonth(),ce=(se(a.getFullYear())?et:tt)[U];if(_>ce-a.getDate())_-=ce-a.getDate()+1,a.setDate(1),11>U?a.setMonth(U+1):(a.setMonth(0),a.setFullYear(a.getFullYear()+1));else{a.setDate(a.getDate()+_);break}}return U=new Date(a.getFullYear()+1,0,4),_=N(new Date(a.getFullYear(),0,4)),U=N(U),0>=S(_,a)?0>=S(U,a)?a.getFullYear()+1:a.getFullYear():a.getFullYear()-1}e>>>=0,n>>>=0,o>>>=0,i>>>=0;var $=F[i+40>>>2>>>0];i={Da:d[i>>>2>>>0],Ca:d[i+4>>>2>>>0],va:d[i+8>>>2>>>0],ya:d[i+12>>>2>>>0],wa:d[i+16>>>2>>>0],ua:d[i+20>>>2>>>0],oa:d[i+24>>>2>>>0],ta:d[i+28>>>2>>>0],Ia:d[i+32>>>2>>>0],Ba:d[i+36>>>2>>>0],Ea:$?M($):""},o=M(o),$={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var j in $)o=o.replace(new RegExp(j,"g"),$[j]);var ct="Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),lt="January February March April May June July August September October November December".split(" ");$={"%a":a=>ct[a.oa].substring(0,3),"%A":a=>ct[a.oa],"%b":a=>lt[a.wa].substring(0,3),"%B":a=>lt[a.wa],"%C":a=>w((a.ua+1900)/100|0,2),"%d":a=>w(a.ya,2),"%e":a=>l(a.ya,2," "),"%g":a=>V(a).toString().substring(2),"%G":a=>V(a),"%H":a=>w(a.va,2),"%I":a=>(a=a.va,a==0?a=12:12<a&&(a-=12),w(a,2)),"%j":a=>{for(var _=0,U=0;U<=a.wa-1;_+=(se(a.ua+1900)?et:tt)[U++]);return w(a.ya+_,3)},"%m":a=>w(a.wa+1,2),"%M":a=>w(a.Ca,2),"%n":()=>`
`,"%p":a=>0<=a.va&&12>a.va?"AM":"PM","%S":a=>w(a.Da,2),"%t":()=>" ","%u":a=>a.oa||7,"%U":a=>w(Math.floor((a.ta+7-a.oa)/7),2),"%V":a=>{var _=Math.floor((a.ta+7-(a.oa+6)%7)/7);if(2>=(a.oa+371-a.ta-2)%7&&_++,_)_==53&&(U=(a.oa+371-a.ta)%7,U==4||U==3&&se(a.ua)||(_=1));else{_=52;var U=(a.oa+7-a.ta-1)%7;(U==4||U==5&&se(a.ua%400-1))&&_++}return w(_,2)},"%w":a=>a.oa,"%W":a=>w(Math.floor((a.ta+7-(a.oa+6)%7)/7),2),"%y":a=>(a.ua+1900).toString().substring(2),"%Y":a=>a.ua+1900,"%z":a=>{a=a.Ba;var _=0<=a;return a=Math.abs(a)/60,(_?"+":"-")+("0000"+(a/60*100+a%60)).slice(-4)},"%Z":a=>a.Ea,"%%":()=>"%"},o=o.replace(/%%/g,"\0\0");for(j in $)o.includes(j)&&(o=o.replace(new RegExp(j,"g"),$[j](i)));return o=o.replace(/\0\0/g,"%"),j=rr(o),j.length>n?0:(q.set(j,e>>>0),j.length-1)}var nr={a:function(e,n,o){throw e>>>=0,new Fe(e).Aa(n>>>0,o>>>0),oe=e,fe++,oe},e:function(){return 0},H:function(){},x:function(){},z:function(){},J:function(){return 0},F:function(){},A:function(){},E:function(){},g:function(){},y:function(){},v:function(){},G:function(){},w:function(){},k:()=>1,n:function(e,n,o){e=n+2097152>>>0<4194305-!!e?(e>>>0)+4294967296*n:NaN,o>>>=0,e=new Date(1e3*e),d[o>>>2>>>0]=e.getUTCSeconds(),d[o+4>>>2>>>0]=e.getUTCMinutes(),d[o+8>>>2>>>0]=e.getUTCHours(),d[o+12>>>2>>>0]=e.getUTCDate(),d[o+16>>>2>>>0]=e.getUTCMonth(),d[o+20>>>2>>>0]=e.getUTCFullYear()-1900,d[o+24>>>2>>>0]=e.getUTCDay(),d[o+28>>>2>>>0]=(e.getTime()-Date.UTC(e.getUTCFullYear(),0,1,0,0,0,0))/864e5|0},o:function(e,n,o){e=n+2097152>>>0<4194305-!!e?(e>>>0)+4294967296*n:NaN,o>>>=0,e=new Date(1e3*e),d[o>>>2>>>0]=e.getSeconds(),d[o+4>>>2>>>0]=e.getMinutes(),d[o+8>>>2>>>0]=e.getHours(),d[o+12>>>2>>>0]=e.getDate(),d[o+16>>>2>>>0]=e.getMonth(),d[o+20>>>2>>>0]=e.getFullYear()-1900,d[o+24>>>2>>>0]=e.getDay(),d[o+28>>>2>>>0]=(se(e.getFullYear())?Je:Ze)[e.getMonth()]+e.getDate()-1|0,d[o+36>>>2>>>0]=-(60*e.getTimezoneOffset()),n=new Date(e.getFullYear(),6,1).getTimezoneOffset();var i=new Date(e.getFullYear(),0,1).getTimezoneOffset();d[o+32>>>2>>>0]=(n!=i&&e.getTimezoneOffset()==Math.min(i,n))|0},p:function(e){e>>>=0;var n=new Date(d[e+20>>>2>>>0]+1900,d[e+16>>>2>>>0],d[e+12>>>2>>>0],d[e+8>>>2>>>0],d[e+4>>>2>>>0],d[e>>>2>>>0],0),o=d[e+32>>>2>>>0],i=n.getTimezoneOffset(),l=new Date(n.getFullYear(),6,1).getTimezoneOffset(),w=new Date(n.getFullYear(),0,1).getTimezoneOffset(),S=Math.min(w,l);return 0>o?d[e+32>>>2>>>0]=+(l!=w&&S==i):0<o!=(S==i)&&(l=Math.max(w,l),n.setTime(n.getTime()+6e4*((0<o?S:l)-i))),d[e+24>>>2>>>0]=n.getDay(),d[e+28>>>2>>>0]=(se(n.getFullYear())?Je:Ze)[n.getMonth()]+n.getDate()-1|0,d[e>>>2>>>0]=n.getSeconds(),d[e+4>>>2>>>0]=n.getMinutes(),d[e+8>>>2>>>0]=n.getHours(),d[e+12>>>2>>>0]=n.getDate(),d[e+16>>>2>>>0]=n.getMonth(),d[e+20>>>2>>>0]=n.getYear(),e=n.getTime(),isNaN(e)?(d[nt()>>>2>>>0]=61,e=-1):e/=1e3,st((ee=e,1<=+Math.abs(ee)?0<ee?+Math.floor(ee/4294967296)>>>0:~~+Math.ceil((ee-+(~~ee>>>0))/4294967296)>>>0:0)),e>>>0},l:function(){return-52},m:function(){},t:function(e,n,o){function i(V){return(V=V.toTimeString().match(/\(([A-Za-z ]+)\)$/))?V[1]:"GMT"}o>>>=0;var l=new Date().getFullYear(),w=new Date(l,0,1),S=new Date(l,6,1);l=w.getTimezoneOffset();var N=S.getTimezoneOffset();F[e>>>0>>>2>>>0]=60*Math.max(l,N),d[n>>>0>>>2>>>0]=+(l!=N),e=i(w),n=i(S),e=Ke(e),n=Ke(n),N<l?(F[o>>>2>>>0]=e,F[o+4>>>2>>>0]=n):(F[o>>>2>>>0]=n,F[o+4>>>2>>>0]=e)},d:()=>{A("")},B:function(e,n,o){e>>>=0,n>>>=0,o>>>=0,Me.length=0;for(var i;i=G[n++>>>0];){var l=i!=105;l&=i!=112,o+=l&&o%8?4:0,Me.push(i==112?F[o>>>2>>>0]:i==105?d[o>>>2>>>0]:le[o>>>3>>>0]),o+=l?8:4}return Ae[e].apply(null,Me)},h:()=>Date.now(),u:function(){return 4294901760},b:()=>performance.now(),I:function(e,n,o){return n>>>=0,G.copyWithin(e>>>0>>>0,n>>>0,n+(o>>>0)>>>0)},s:function(e){e>>>=0;var n=G.length;if(4294901760<e)return!1;for(var o=1;4>=o;o*=2){var i=n*(1+.2/o);i=Math.min(i,e+100663296);var l=Math;i=Math.max(e,i);e:{l=(l.min.call(l,4294901760,i+(65536-i%65536)%65536)-I.buffer.byteLength+65535)/65536;try{I.grow(l),we();var w=1;break e}catch{}w=void 0}if(w)return!0}return!1},C:function(e,n){e>>>=0,n>>>=0;var o=0;return Qe().forEach((i,l)=>{var w=n+o;for(l=F[e+4*l>>>2>>>0]=w,w=0;w<i.length;++w)q[l++>>>0>>>0]=i.charCodeAt(w);q[l>>>0>>>0]=0,o+=i.length+1}),0},D:function(e,n){e>>>=0,n>>>=0;var o=Qe();F[e>>>2>>>0]=o.length;var i=0;return o.forEach(l=>i+=l.length+1),F[n>>>2>>>0]=i,0},f:()=>52,j:function(){return 52},q:function(){return 70},i:function(e,n,o,i){n>>>=0,o>>>=0,i>>>=0;for(var l=0,w=0;w<o;w++){var S=F[n>>>2>>>0],N=F[n+4>>>2>>>0];n+=8;for(var V=0;V<N;V++){var $=G[S+V>>>0],j=tr[e];$===0||$===10?((e===1?P:k)(W(j,0)),j.length=0):j.push($)}l+=N}return F[i>>>2>>>0]=l,0},r:rt,c:function(e,n,o,i){return rt(e>>>0,n>>>0,o>>>0,i>>>0)}},b=function(){function e(o){return b=o.exports,b=or(),I=b.K,we(),he.unshift(b.L),ae--,ae==0&&(pe!==null&&(clearInterval(pe),pe=null),X&&(o=X,X=null,o())),b}var n={a:nr};if(ae++,r.instantiateWasm)try{return r.instantiateWasm(n,e)}catch(o){k(`Module.instantiateWasm callback failed with error: ${o}`),f(o)}return de(n,function(o){e(o.instance)}).catch(f),{}}();r._OrtInit=(e,n)=>(r._OrtInit=b.M)(e,n),r._OrtGetLastError=(e,n)=>(r._OrtGetLastError=b.N)(e,n),r._OrtCreateSessionOptions=(e,n,o,i,l,w,S,N,V,$)=>(r._OrtCreateSessionOptions=b.O)(e,n,o,i,l,w,S,N,V,$),r._OrtAppendExecutionProvider=(e,n)=>(r._OrtAppendExecutionProvider=b.P)(e,n),r._OrtAddFreeDimensionOverride=(e,n,o)=>(r._OrtAddFreeDimensionOverride=b.Q)(e,n,o),r._OrtAddSessionConfigEntry=(e,n,o)=>(r._OrtAddSessionConfigEntry=b.R)(e,n,o),r._OrtReleaseSessionOptions=e=>(r._OrtReleaseSessionOptions=b.S)(e),r._OrtCreateSession=(e,n,o)=>(r._OrtCreateSession=b.T)(e,n,o),r._OrtReleaseSession=e=>(r._OrtReleaseSession=b.U)(e),r._OrtGetInputOutputCount=(e,n,o)=>(r._OrtGetInputOutputCount=b.V)(e,n,o),r._OrtGetInputName=(e,n)=>(r._OrtGetInputName=b.W)(e,n),r._OrtGetOutputName=(e,n)=>(r._OrtGetOutputName=b.X)(e,n),r._OrtFree=e=>(r._OrtFree=b.Y)(e),r._OrtCreateTensor=(e,n,o,i,l,w)=>(r._OrtCreateTensor=b.Z)(e,n,o,i,l,w),r._OrtGetTensorData=(e,n,o,i,l)=>(r._OrtGetTensorData=b._)(e,n,o,i,l),r._OrtReleaseTensor=e=>(r._OrtReleaseTensor=b.$)(e),r._OrtCreateRunOptions=(e,n,o,i)=>(r._OrtCreateRunOptions=b.aa)(e,n,o,i),r._OrtAddRunConfigEntry=(e,n,o)=>(r._OrtAddRunConfigEntry=b.ba)(e,n,o),r._OrtReleaseRunOptions=e=>(r._OrtReleaseRunOptions=b.ca)(e),r._OrtCreateBinding=e=>(r._OrtCreateBinding=b.da)(e),r._OrtBindInput=(e,n,o)=>(r._OrtBindInput=b.ea)(e,n,o),r._OrtBindOutput=(e,n,o,i)=>(r._OrtBindOutput=b.fa)(e,n,o,i),r._OrtClearBoundOutputs=e=>(r._OrtClearBoundOutputs=b.ga)(e),r._OrtReleaseBinding=e=>(r._OrtReleaseBinding=b.ha)(e),r._OrtRunWithBinding=(e,n,o,i,l)=>(r._OrtRunWithBinding=b.ia)(e,n,o,i,l),r._OrtRun=(e,n,o,i,l,w,S,N)=>(r._OrtRun=b.ja)(e,n,o,i,l,w,S,N),r._OrtEndProfiling=e=>(r._OrtEndProfiling=b.ka)(e);var nt=()=>(nt=b.la)(),ot=r._malloc=e=>(ot=r._malloc=b.ma)(e);r._free=e=>(r._free=b.na)(e);var st=e=>(st=b.pa)(e),at=()=>(at=b.qa)(),it=e=>(it=b.ra)(e),ut=e=>(ut=b.sa)(e);function or(){var e=b;e=Object.assign({},e);var n=i=>()=>i()>>>0,o=i=>l=>i(l)>>>0;return e.la=n(e.la),e.ma=o(e.ma),e.qa=n(e.qa),e.sa=o(e.sa),e}r.stackAlloc=ut,r.stackSave=at,r.stackRestore=it,r.UTF8ToString=M,r.stringToUTF8=(e,n,o)=>me(e,G,n,o),r.lengthBytesUTF8=K;var Te;X=function e(){Te||ft(),Te||(X=e)};function ft(){if(!(0<ae)){if(r.preRun)for(typeof r.preRun=="function"&&(r.preRun=[r.preRun]);r.preRun.length;){var e=r.preRun.shift();z.unshift(e)}for(;0<z.length;)z.shift()(r);if(!(0<ae||Te||(Te=!0,r.calledRun=!0,D))){for(;0<he.length;)he.shift()(r);for(c(r);0<ve.length;)ve.shift()(r)}}}return ft(),s.ready}})();typeof ht=="object"&&typeof Re=="object"?Re.exports=wt:typeof define=="function"&&define.amd&&define([],()=>wt)});var Ge,lr,Ne,He,Pe,Ot,pr,dr,mr,St,L,ge=Z(()=>{"use strict";Ge=bt();lr=Ge,He=!1,Pe=!1,Ot=!1,pr=t=>{if(t===1)return!1;if(typeof SharedArrayBuffer>"u")return typeof self<"u"&&!self.crossOriginIsolated&&console.warn("env.wasm.numThreads is set to "+t+", but this will not work unless you enable crossOriginIsolated mode. See https://web.dev/cross-origin-isolation-guide/ for more info."),!1;typeof process<"u"&&process.versions&&process.versions.node&&console.warn("env.wasm.numThreads is set to "+t+", however, currently onnxruntime-web does not support multi-threads in Node.js. Please consider using onnxruntime-node for performance critical scenarios.");try{return typeof MessageChannel<"u"&&new MessageChannel().port1.postMessage(new SharedArrayBuffer(1)),WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,4,1,3,1,1,10,11,1,9,0,65,0,254,16,2,0,26,11]))}catch{return!1}},dr=()=>{try{return WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,30,1,28,0,65,0,253,15,253,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,253,186,1,26,11]))}catch{return!1}},mr=(t,s)=>t?s?"ort-wasm-simd-threaded.wasm":"ort-wasm-simd.wasm":s?"ort-wasm-threaded.wasm":"ort-wasm.wasm",St=async t=>{if(He)return Promise.resolve();if(Pe)throw new Error("multiple calls to 'initializeWebAssembly()' detected.");if(Ot)throw new Error("previous call to 'initializeWebAssembly()' failed.");Pe=!0;let s=t.initTimeout,r=t.numThreads,c=t.simd,f=pr(r),p=c&&dr(),u=t.wasmPaths,g=typeof u=="string"?u:void 0,y=mr(p,f),E=typeof u=="object"?u[y]:void 0,O=!1,h=[];if(s>0&&h.push(new Promise(m=>{setTimeout(()=>{O=!0,m()},s)})),h.push(new Promise((m,x)=>{(f?lr:Ge)({locateFile:(P,k)=>P.endsWith(".wasm")?E||(g??k)+y:k+P}).then(P=>{Pe=!1,He=!0,Ne=P,m()},P=>{Pe=!1,Ot=!0,x(P)})})),await Promise.race(h),O)throw new Error(`WebAssembly backend initializing failed due to timeout: ${s}ms`)},L=()=>{if(He&&Ne)return Ne;throw new Error("WebAssembly is not initialized yet.")}});var C,Oe,B,Ie=Z(()=>{"use strict";ge();C=(t,s)=>{let r=L(),c=r.lengthBytesUTF8(t)+1,f=r._malloc(c);return r.stringToUTF8(t,f,c),s.push(f),f},Oe=(t,s,r,c)=>{if(typeof t=="object"&&t!==null){if(r.has(t))throw new Error("Circular reference in options");r.add(t)}Object.entries(t).forEach(([f,p])=>{let u=s?s+f:f;if(typeof p=="object")Oe(p,u+".",r,c);else if(typeof p=="string"||typeof p=="number")c(u,p.toString());else if(typeof p=="boolean")c(u,p?"1":"0");else throw new Error(`Can't handle extra config type: ${typeof p}`)})},B=t=>{let s=L(),r=s.stackSave();try{let c=s.stackAlloc(8);s._OrtGetLastError(c,c+4);let f=s.HEAP32[c/4],p=s.HEAPU32[c/4+1],u=p?s.UTF8ToString(p):"";throw new Error(`${t} ERROR_CODE: ${f}, ERROR_MESSAGE: ${u}`)}finally{s.stackRestore(r)}}});var Et,vt=Z(()=>{"use strict";ge();Ie();Et=t=>{let s=L(),r=0,c=[],f=t||{};try{if(t?.logSeverityLevel===void 0)f.logSeverityLevel=2;else if(typeof t.logSeverityLevel!="number"||!Number.isInteger(t.logSeverityLevel)||t.logSeverityLevel<0||t.logSeverityLevel>4)throw new Error(`log serverity level is not valid: ${t.logSeverityLevel}`);if(t?.logVerbosityLevel===void 0)f.logVerbosityLevel=0;else if(typeof t.logVerbosityLevel!="number"||!Number.isInteger(t.logVerbosityLevel))throw new Error(`log verbosity level is not valid: ${t.logVerbosityLevel}`);t?.terminate===void 0&&(f.terminate=!1);let p=0;return t?.tag!==void 0&&(p=C(t.tag,c)),r=s._OrtCreateRunOptions(f.logSeverityLevel,f.logVerbosityLevel,!!f.terminate,p),r===0&&B("Can't create run options."),t?.extra!==void 0&&Oe(t.extra,"",new WeakSet,(u,g)=>{let y=C(u,c),E=C(g,c);s._OrtAddRunConfigEntry(r,y,E)!==0&&B(`Can't set a run config entry: ${u} - ${g}.`)}),[r,c]}catch(p){throw r!==0&&s._OrtReleaseRunOptions(r),c.forEach(u=>s._free(u)),p}}});var gr,yr,wr,hr,At,Tt=Z(()=>{"use strict";ge();Ie();gr=t=>{switch(t){case"disabled":return 0;case"basic":return 1;case"extended":return 2;case"all":return 99;default:throw new Error(`unsupported graph optimization level: ${t}`)}},yr=t=>{switch(t){case"sequential":return 0;case"parallel":return 1;default:throw new Error(`unsupported execution mode: ${t}`)}},wr=t=>{t.extra||(t.extra={}),t.extra.session||(t.extra.session={});let s=t.extra.session;s.use_ort_model_bytes_directly||(s.use_ort_model_bytes_directly="1"),t.executionProviders&&t.executionProviders.some(r=>(typeof r=="string"?r:r.name)==="webgpu")&&(t.enableMemPattern=!1)},hr=(t,s,r)=>{for(let c of s){let f=typeof c=="string"?c:c.name;switch(f){case"webnn":if(f="WEBNN",typeof c!="string"){let u=c;if(u?.deviceType){let g=C("deviceType",r),y=C(u.deviceType,r);L()._OrtAddSessionConfigEntry(t,g,y)!==0&&B(`Can't set a session config entry: 'deviceType' - ${u.deviceType}.`)}if(u?.numThreads){let g=u.numThreads;(typeof g!="number"||!Number.isInteger(g)||g<0)&&(g=0);let y=C("numThreads",r),E=C(g.toString(),r);L()._OrtAddSessionConfigEntry(t,y,E)!==0&&B(`Can't set a session config entry: 'numThreads' - ${u.numThreads}.`)}if(u?.powerPreference){let g=C("powerPreference",r),y=C(u.powerPreference,r);L()._OrtAddSessionConfigEntry(t,g,y)!==0&&B(`Can't set a session config entry: 'powerPreference' - ${u.powerPreference}.`)}}break;case"webgpu":if(f="JS",typeof c!="string"){let u=c;if(u?.preferredLayout){if(u.preferredLayout!=="NCHW"&&u.preferredLayout!=="NHWC")throw new Error(`preferredLayout must be either 'NCHW' or 'NHWC': ${u.preferredLayout}`);let g=C("preferredLayout",r),y=C(u.preferredLayout,r);L()._OrtAddSessionConfigEntry(t,g,y)!==0&&B(`Can't set a session config entry: 'preferredLayout' - ${u.preferredLayout}.`)}}break;case"wasm":case"cpu":continue;default:throw new Error(`not supported execution provider: ${f}`)}let p=C(f,r);L()._OrtAppendExecutionProvider(t,p)!==0&&B(`Can't append execution provider: ${f}.`)}},At=t=>{let s=L(),r=0,c=[],f=t||{};wr(f);try{let p=gr(f.graphOptimizationLevel??"all"),u=yr(f.executionMode??"sequential"),g=typeof f.logId=="string"?C(f.logId,c):0,y=f.logSeverityLevel??2;if(!Number.isInteger(y)||y<0||y>4)throw new Error(`log serverity level is not valid: ${y}`);let E=f.logVerbosityLevel??0;if(!Number.isInteger(E)||E<0||E>4)throw new Error(`log verbosity level is not valid: ${E}`);let O=typeof f.optimizedModelFilePath=="string"?C(f.optimizedModelFilePath,c):0;if(r=s._OrtCreateSessionOptions(p,!!f.enableCpuMemArena,!!f.enableMemPattern,u,!!f.enableProfiling,0,g,y,E,O),r===0&&B("Can't create session options."),f.executionProviders&&hr(r,f.executionProviders,c),f.enableGraphCapture!==void 0){if(typeof f.enableGraphCapture!="boolean")throw new Error(`enableGraphCapture must be a boolean value: ${f.enableGraphCapture}`);let h=C("enableGraphCapture",c),m=C(f.enableGraphCapture.toString(),c);s._OrtAddSessionConfigEntry(r,h,m)!==0&&B(`Can't set a session config entry: 'enableGraphCapture' - ${f.enableGraphCapture}.`)}if(f.freeDimensionOverrides)for(let[h,m]of Object.entries(f.freeDimensionOverrides)){if(typeof h!="string")throw new Error(`free dimension override name must be a string: ${h}`);if(typeof m!="number"||!Number.isInteger(m)||m<0)throw new Error(`free dimension override value must be a non-negative integer: ${m}`);let x=C(h,c);s._OrtAddFreeDimensionOverride(r,x,m)!==0&&B(`Can't set a free dimension override: ${h} - ${m}.`)}return f.extra!==void 0&&Oe(f.extra,"",new WeakSet,(h,m)=>{let x=C(h,c),v=C(m,c);s._OrtAddSessionConfigEntry(r,x,v)!==0&&B(`Can't set a session config entry: ${h} - ${m}.`)}),[r,c]}catch(p){throw r!==0&&s._OrtReleaseSessionOptions(r),c.forEach(u=>s._free(u)),p}}});var $e,_t,je,xt,Pt,Ce,It,ze=Z(()=>{"use strict";$e=t=>{switch(t){case"int8":return 3;case"uint8":return 2;case"bool":return 9;case"int16":return 5;case"uint16":return 4;case"int32":return 6;case"uint32":return 12;case"float16":return 10;case"float32":return 1;case"float64":return 11;case"string":return 8;case"int64":return 7;case"uint64":return 13;default:throw new Error(`unsupported data type: ${t}`)}},_t=t=>{switch(t){case 3:return"int8";case 2:return"uint8";case 9:return"bool";case 5:return"int16";case 4:return"uint16";case 6:return"int32";case 12:return"uint32";case 10:return"float16";case 1:return"float32";case 11:return"float64";case 8:return"string";case 7:return"int64";case 13:return"uint64";default:throw new Error(`unsupported data type: ${t}`)}},je=t=>[void 0,4,1,1,2,2,4,8,void 0,1,2,8,4,8,void 0,void 0,void 0][t],xt=t=>{switch(t){case"float16":return typeof Float16Array<"u"&&Float16Array.from?Float16Array:Uint16Array;case"float32":return Float32Array;case"uint8":return Uint8Array;case"int8":return Int8Array;case"uint16":return Uint16Array;case"int16":return Int16Array;case"int32":return Int32Array;case"bool":return Uint8Array;case"float64":return Float64Array;case"uint32":return Uint32Array;case"int64":return BigInt64Array;case"uint64":return BigUint64Array;default:throw new Error(`unsupported type: ${t}`)}},Pt=t=>{switch(t){case"verbose":return 0;case"info":return 1;case"warning":return 2;case"error":return 3;case"fatal":return 4;default:throw new Error(`unsupported logging level: ${t}`)}},Ce=t=>t==="float32"||t==="float16"||t==="int32"||t==="int64"||t==="uint32"||t==="uint8"||t==="bool",It=t=>{switch(t){case"none":return 0;case"cpu":return 1;case"cpu-pinned":return 2;case"texture":return 3;case"gpu-buffer":return 4;default:throw new Error(`unsupported data location: ${t}`)}}});var Ct,Bt,Se,Ye=Z(()=>{"use strict";Ct=mt(require("fs")),Bt=require("node:fs/promises"),Se=async t=>{if(typeof t=="string")if(typeof process<"u"&&process.versions&&process.versions.node)try{return new Uint8Array(await(0,Bt.readFile)(t))}catch(s){if(s.code==="ERR_FS_FILE_TOO_LARGE"){let r=Ct.createReadStream(t),c=[];for await(let f of r)c.push(f);return new Uint8Array(Buffer.concat(c))}throw s}else{let s=await fetch(t);if(!s.ok)throw new Error(`failed to load external data file: ${t}`);let r=s.headers.get("Content-Length"),c=r?parseInt(r,10):0;if(c<1073741824)return new Uint8Array(await s.arrayBuffer());{if(!s.body)throw new Error(`failed to load external data file: ${t}, no response body.`);let f=s.body.getReader(),p;try{p=new ArrayBuffer(c)}catch(g){if(g instanceof RangeError){let y=Math.ceil(c/65536);p=new WebAssembly.Memory({initial:y,maximum:y}).buffer}else throw g}let u=0;for(;;){let{done:g,value:y}=await f.read();if(g)break;let E=y.byteLength;new Uint8Array(p,u,E).set(y),u+=E}return new Uint8Array(p,0,c)}}else return t instanceof Blob?new Uint8Array(await t.arrayBuffer()):t instanceof Uint8Array?t:new Uint8Array(t)}});var br,Ut,Lt,ye,Or,qe,Ft,Mt,Dt,kt,Wt,Rt=Z(()=>{"use strict";vt();Tt();ze();ge();Ie();Ye();br=(t,s)=>{L()._OrtInit(t,s)!==0&&B("Can't initialize onnxruntime.")},Ut=async t=>{br(t.wasm.numThreads,Pt(t.logLevel))},Lt=async(t,s)=>{},ye=new Map,Or=t=>{let s=L(),r=s.stackSave();try{let c=s.stackAlloc(8);return s._OrtGetInputOutputCount(t,c,c+4)!==0&&B("Can't get session input/output count."),[s.HEAP32[c/4],s.HEAP32[c/4+1]]}finally{s.stackRestore(r)}},qe=t=>{let s=L(),r=s._malloc(t.byteLength);if(r===0)throw new Error(`Can't create a session. failed to allocate a buffer of size ${t.byteLength}.`);return s.HEAPU8.set(t,r),[r,t.byteLength]},Ft=async(t,s)=>{let r,c,f=L();Array.isArray(t)?[r,c]=t:t.buffer===f.HEAPU8.buffer?[r,c]=[t.byteOffset,t.byteLength]:[r,c]=qe(t);let p=0,u=0,g=0,y=[],E=[],O=[];try{if([u,y]=At(s),s?.externalData&&f.mountExternalData){let I=[];for(let D of s.externalData){let q=typeof D=="string"?D:D.path;I.push(Se(typeof D=="string"?D:D.data).then(G=>{f.mountExternalData(q,G)}))}await Promise.all(I)}p=await f._OrtCreateSession(r,c,u),p===0&&B("Can't create a session.");let[h,m]=Or(p),x=!!s?.enableGraphCapture,v=[],T=[],P=[];for(let I=0;I<h;I++){let D=f._OrtGetInputName(p,I);D===0&&B("Can't get an input name."),E.push(D),v.push(f.UTF8ToString(D))}for(let I=0;I<m;I++){let D=f._OrtGetOutputName(p,I);D===0&&B("Can't get an output name."),O.push(D);let q=f.UTF8ToString(D);T.push(q)}let k=null;return ye.set(p,[p,E,O,k,x,!1]),[p,v,T]}catch(h){throw E.forEach(m=>f._OrtFree(m)),O.forEach(m=>f._OrtFree(m)),g!==0&&f._OrtReleaseBinding(g),p!==0&&f._OrtReleaseSession(p),h}finally{f._free(r),u!==0&&f._OrtReleaseSessionOptions(u),y.forEach(h=>f._free(h)),f.unmountExternalData?.()}},Mt=t=>{let s=L(),r=ye.get(t);if(!r)throw new Error(`cannot release session. invalid session id: ${t}`);let[c,f,p,u,g]=r;u&&(g&&s._OrtClearBoundOutputs(u.handle),s._OrtReleaseBinding(u.handle)),s.jsepOnReleaseSession?.(t),f.forEach(y=>s._OrtFree(y)),p.forEach(y=>s._OrtFree(y)),s._OrtReleaseSession(c),ye.delete(t)},Dt=(t,s,r,c,f,p=!1)=>{if(!t){s.push(0);return}let u=L(),g=t[0],y=t[1],E=t[3],O,h;if(g==="string"&&E==="gpu-buffer")throw new Error("String tensor is not supported on GPU.");if(p&&E!=="gpu-buffer")throw new Error(`External buffer must be provided for input/output index ${f} when enableGraphCapture is true.`);if(E==="gpu-buffer"){let v=t[2].gpuBuffer,T=je($e(g));h=y.reduce((k,I)=>k*I,1)*T;let P=u.jsepRegisterBuffer;if(!P)throw new Error('Tensor location "gpu-buffer" is not supported without using WebGPU.');O=P(c,f,v,h)}else{let v=t[2];if(Array.isArray(v)){h=4*v.length,O=u._malloc(h),r.push(O);let T=O/4;for(let P=0;P<v.length;P++){if(typeof v[P]!="string")throw new TypeError(`tensor data at index ${P} is not a string`);u.HEAPU32[T++]=C(v[P],r)}}else h=v.byteLength,O=u._malloc(h),r.push(O),u.HEAPU8.set(new Uint8Array(v.buffer,v.byteOffset,h),O)}let m=u.stackSave(),x=u.stackAlloc(4*y.length);try{let v=x/4;y.forEach(P=>u.HEAP32[v++]=P);let T=u._OrtCreateTensor($e(g),O,h,x,y.length,It(E));T===0&&B(`Can't create tensor for input/output. session=${c}, index=${f}.`),s.push(T)}finally{u.stackRestore(m)}},kt=async(t,s,r,c,f,p)=>{let u=L(),g=ye.get(t);if(!g)throw new Error(`cannot run inference. invalid session id: ${t}`);let y=g[0],E=g[1],O=g[2],h=g[3],m=g[4],x=g[5],v=s.length,T=c.length,P=0,k=[],I=[],D=[],q=[],G=u.stackSave(),d=u.stackAlloc(v*4),F=u.stackAlloc(v*4),le=u.stackAlloc(T*4),we=u.stackAlloc(T*4);try{[P,k]=Et(p);for(let A=0;A<v;A++)Dt(r[A],I,q,t,s[A],m);for(let A=0;A<T;A++)Dt(f[A],D,q,t,v+c[A],m);let z=d/4,he=F/4,ve=le/4,ae=we/4;for(let A=0;A<v;A++)u.HEAPU32[z++]=I[A],u.HEAPU32[he++]=E[s[A]];for(let A=0;A<T;A++)u.HEAPU32[ve++]=D[A],u.HEAPU32[ae++]=O[c[A]];u.jsepOnRunStart?.(y);let pe;pe=await u._OrtRun(y,F,d,v,we,T,le,P),pe!==0&&B("failed to call OrtRun().");let X=[];for(let A=0;A<T;A++){let ne=u.HEAPU32[le/4+A];if(ne===D[A]){X.push(f[A]);continue}let ie=u.stackSave(),Y=u.stackAlloc(4*4),ue=!1,R,J=0;try{u._OrtGetTensorData(ne,Y,Y+4,Y+8,Y+12)!==0&&B(`Can't access output tensor data on index ${A}.`);let de=Y/4,ee=u.HEAPU32[de++];J=u.HEAPU32[de++];let Ae=u.HEAPU32[de++],Fe=u.HEAPU32[de++],oe=[];for(let W=0;W<Fe;W++)oe.push(u.HEAPU32[Ae/4+W]);u._OrtFree(Ae);let fe=oe.reduce((W,M)=>W*M,1);R=_t(ee);let be=h?.outputPreferredLocations[c[A]];if(R==="string"){if(be==="gpu-buffer")throw new Error("String tensor is not supported on GPU.");let W=[],M=J/4;for(let K=0;K<fe;K++){let me=u.HEAPU32[M++],se=K===fe-1?void 0:u.HEAPU32[M]-me;W.push(u.UTF8ToString(me,se))}X.push([R,oe,W,"cpu"])}else if(be==="gpu-buffer"&&fe>0){let W=u.jsepGetBuffer;if(!W)throw new Error('preferredLocation "gpu-buffer" is not supported without using WebGPU.');let M=W(J),K=je(ee);if(K===void 0||!Ce(R))throw new Error(`Unsupported data type: ${R}`);ue=!0,X.push([R,oe,{gpuBuffer:M,download:u.jsepCreateDownloader(M,fe*K,R),dispose:()=>{u._OrtReleaseTensor(ne)}},"gpu-buffer"])}else{let W=xt(R),M=new W(fe);new Uint8Array(M.buffer,M.byteOffset,M.byteLength).set(u.HEAPU8.subarray(J,J+M.byteLength)),X.push([R,oe,M,"cpu"])}}finally{u.stackRestore(ie),R==="string"&&J&&u._free(J),ue||u._OrtReleaseTensor(ne)}}return h&&!m&&(u._OrtClearBoundOutputs(h.handle),ye.set(t,[y,E,O,h,m,!1])),X}finally{u.stackRestore(G),I.forEach(z=>u._OrtReleaseTensor(z)),D.forEach(z=>u._OrtReleaseTensor(z)),q.forEach(z=>u._free(z)),P!==0&&u._OrtReleaseRunOptions(P),k.forEach(z=>u._free(z))}},Wt=t=>{let s=L(),r=ye.get(t);if(!r)throw new Error("invalid session id");let c=r[0],f=s._OrtEndProfiling(c);f===0&&B("Can't get an profile file name."),s._OrtFree(f)}});var Be,Ve,Nt,Ht,Xr,Gt,$t,jt,zt,Yt,qt,Vt,Xe=Z(()=>{"use strict";Be=require("onnxruntime-common");Rt();ge();Ve=!1,Nt=!1,Ht=!1,Xr=typeof document<"u"?document?.currentScript?.src:void 0,Gt=async()=>{if(!Nt){if(Ve)throw new Error("multiple calls to 'initWasm()' detected.");if(Ht)throw new Error("previous call to 'initWasm()' failed.");Ve=!0;try{await St(Be.env.wasm),await Ut(Be.env),Nt=!0}catch(t){throw Ht=!0,t}finally{Ve=!1}}},$t=async t=>{await Lt(Be.env,t)},jt=async t=>qe(t),zt=async(t,s)=>Ft(t,s),Yt=async t=>{Mt(t)},qt=async(t,s,r,c,f,p)=>kt(t,s,r,c,f,p),Vt=async t=>{Wt(t)}});var re,Xt,Er,De,Jt=Z(()=>{"use strict";re=require("onnxruntime-common");Xe();ze();Ye();Xt=(t,s)=>{switch(t.location){case"cpu":return[t.type,t.dims,t.data,"cpu"];case"gpu-buffer":return[t.type,t.dims,{gpuBuffer:t.gpuBuffer},"gpu-buffer"];default:throw new Error(`invalid data location: ${t.location} for ${s()}`)}},Er=t=>{switch(t[3]){case"cpu":return new re.Tensor(t[0],t[2],t[1]);case"gpu-buffer":{let s=t[0];if(!Ce(s))throw new Error(`not supported data type: ${s} for deserializing GPU tensor`);let{gpuBuffer:r,download:c,dispose:f}=t[2];return re.Tensor.fromGpuBuffer(r,{dataType:s,dims:t[1],download:c,dispose:f})}default:throw new Error(`invalid data location: ${t[3]}`)}},De=class{async fetchModelAndCopyToWasmMemory(s){return jt(await Se(s))}async loadModel(s,r){(0,re.TRACE_FUNC_BEGIN)();let c;typeof s=="string"?typeof process<"u"&&process.versions&&process.versions.node?c=await Se(s):c=await this.fetchModelAndCopyToWasmMemory(s):c=s,[this.sessionId,this.inputNames,this.outputNames]=await zt(c,r),(0,re.TRACE_FUNC_END)()}async dispose(){return Yt(this.sessionId)}async run(s,r,c){(0,re.TRACE_FUNC_BEGIN)();let f=[],p=[];Object.entries(s).forEach(m=>{let x=m[0],v=m[1],T=this.inputNames.indexOf(x);if(T===-1)throw new Error(`invalid input '${x}'`);f.push(v),p.push(T)});let u=[],g=[];Object.entries(r).forEach(m=>{let x=m[0],v=m[1],T=this.outputNames.indexOf(x);if(T===-1)throw new Error(`invalid output '${x}'`);u.push(v),g.push(T)});let y=f.map((m,x)=>Xt(m,()=>`input "${this.inputNames[p[x]]}"`)),E=u.map((m,x)=>m?Xt(m,()=>`output "${this.outputNames[g[x]]}"`):null),O=await qt(this.sessionId,p,y,g,E,c),h={};for(let m=0;m<O.length;m++)h[this.outputNames[g[m]]]=u[m]??Er(O[m]);return(0,re.TRACE_FUNC_END)(),h}startProfiling(){}endProfiling(){Vt(this.sessionId)}}});var Zt,H,vr,Ue,Kt=Z(()=>{"use strict";Zt=require("node:os"),H=require("onnxruntime-common");Xe();Jt();vr=()=>{if((typeof H.env.wasm.initTimeout!="number"||H.env.wasm.initTimeout<0)&&(H.env.wasm.initTimeout=0),typeof H.env.wasm.simd!="boolean"&&(H.env.wasm.simd=!0),typeof H.env.wasm.proxy!="boolean"&&(H.env.wasm.proxy=!1),typeof H.env.wasm.trace!="boolean"&&(H.env.wasm.trace=!1),typeof H.env.wasm.numThreads!="number"||!Number.isInteger(H.env.wasm.numThreads)||H.env.wasm.numThreads<=0){(typeof self<"u"&&!self.crossOriginIsolated||typeof process<"u"&&process.versions&&process.versions.node)&&(H.env.wasm.numThreads=1);let t=typeof navigator>"u"?(0,Zt.cpus)().length:navigator.hardwareConcurrency;H.env.wasm.numThreads=Math.min(4,Math.ceil((t||1)/2))}},Ue=class{async init(s){vr(),await Gt(),await $t(s)}async createInferenceSessionHandler(s,r){let c=new De;return await c.loadModel(s,r),Promise.resolve(c)}}});var Qt={};dt(Qt,{wasmBackend:()=>Ar});var Ar,er=Z(()=>{"use strict";Kt();Ar=new Ue});var Q={};dt(Q,{default:()=>_r});module.exports=gt(Q);te(Q,require("onnxruntime-common"),module.exports);var Tr=mt(require("onnxruntime-common")),Ee=require("onnxruntime-common");var yt="1.17.3";var _r=Tr;{let t=(er(),gt(Qt)).wasmBackend;(0,Ee.registerBackend)("cpu",t,10),(0,Ee.registerBackend)("wasm",t,10)}Object.defineProperty(Ee.env.versions,"web",{value:yt,enumerable:!0});0&&(module.exports={...require("onnxruntime-common")});
//# sourceMappingURL=ort.node.min.js.map