UNPKG

@huggingface/transformers

Version:

State-of-the-art Machine Learning for the web. Run 🤗 Transformers directly in your browser, with no need for a server!

1 lines • 858 kB
var e,t,n={"./node_modules/onnxruntime-web/dist/ort-wasm-simd-threaded.jsep.wasm":(e,t,n)=>{e.exports=n.p+"ort-wasm-simd-threaded.jsep.wasm"},"./node_modules/onnxruntime-web/dist/ort.bundle.min.mjs?46eb":(e,t,n)=>{e.exports=n.p+"ort.bundle.min.mjs"},"?2ce3":()=>{},"?7992":()=>{},"?5af5":()=>{},"?2b25":()=>{},"?db59":()=>{},"?383f":()=>{},"?fa4b":()=>{},"./node_modules/@huggingface/jinja/dist/index.js":(e,t,n)=>{n.r(t),n.d(t,{Environment:()=>te,Interpreter:()=>ne,Template:()=>pe,parse:()=>B,tokenize:()=>u});var r=Object.freeze({Text:"Text",NumericLiteral:"NumericLiteral",BooleanLiteral:"BooleanLiteral",NullLiteral:"NullLiteral",StringLiteral:"StringLiteral",Identifier:"Identifier",Equals:"Equals",OpenParen:"OpenParen",CloseParen:"CloseParen",OpenStatement:"OpenStatement",CloseStatement:"CloseStatement",OpenExpression:"OpenExpression",CloseExpression:"CloseExpression",OpenSquareBracket:"OpenSquareBracket",CloseSquareBracket:"CloseSquareBracket",OpenCurlyBracket:"OpenCurlyBracket",CloseCurlyBracket:"CloseCurlyBracket",Comma:"Comma",Dot:"Dot",Colon:"Colon",Pipe:"Pipe",CallOperator:"CallOperator",AdditiveBinaryOperator:"AdditiveBinaryOperator",MultiplicativeBinaryOperator:"MultiplicativeBinaryOperator",ComparisonBinaryOperator:"ComparisonBinaryOperator",UnaryOperator:"UnaryOperator",Set:"Set",If:"If",For:"For",In:"In",Is:"Is",NotIn:"NotIn",Else:"Else",EndSet:"EndSet",EndIf:"EndIf",ElseIf:"ElseIf",EndFor:"EndFor",And:"And",Or:"Or",Not:"UnaryOperator",Macro:"Macro",EndMacro:"EndMacro",Break:"Break",Continue:"Continue"}),s=Object.freeze({set:r.Set,for:r.For,in:r.In,is:r.Is,if:r.If,else:r.Else,endset:r.EndSet,endif:r.EndIf,elif:r.ElseIf,endfor:r.EndFor,and:r.And,or:r.Or,not:r.Not,"not in":r.NotIn,macro:r.Macro,endmacro:r.EndMacro,break:r.Break,continue:r.Continue,true:r.BooleanLiteral,false:r.BooleanLiteral,none:r.NullLiteral,True:r.BooleanLiteral,False:r.BooleanLiteral,None:r.NullLiteral}),a=class{constructor(e,t){this.value=e,this.type=t}};function o(e){return/\w/.test(e)}function i(e){return/[0-9]/.test(e)}var l=[["{%",r.OpenStatement],["%}",r.CloseStatement],["{{",r.OpenExpression],["}}",r.CloseExpression],["(",r.OpenParen],[")",r.CloseParen],["{",r.OpenCurlyBracket],["}",r.CloseCurlyBracket],["[",r.OpenSquareBracket],["]",r.CloseSquareBracket],[",",r.Comma],[".",r.Dot],[":",r.Colon],["|",r.Pipe],["<=",r.ComparisonBinaryOperator],[">=",r.ComparisonBinaryOperator],["==",r.ComparisonBinaryOperator],["!=",r.ComparisonBinaryOperator],["<",r.ComparisonBinaryOperator],[">",r.ComparisonBinaryOperator],["+",r.AdditiveBinaryOperator],["-",r.AdditiveBinaryOperator],["*",r.MultiplicativeBinaryOperator],["/",r.MultiplicativeBinaryOperator],["%",r.MultiplicativeBinaryOperator],["=",r.Equals]],d=new Map([["n","\n"],["t","\t"],["r","\r"],["b","\b"],["f","\f"],["v","\v"],["'","'"],['"','"'],["\\","\\"]]);function u(e,t={}){const n=[],u=function(e,t={}){return e.endsWith("\n")&&(e=e.slice(0,-1)),e=e.replace(/{#.*?#}/gs,"{##}"),t.lstrip_blocks&&(e=e.replace(/^[ \t]*({[#%])/gm,"$1")),t.trim_blocks&&(e=e.replace(/([#%]})\n/g,"$1")),e.replace(/{##}/g,"").replace(/-%}\s*/g,"%}").replace(/\s*{%-/g,"{%").replace(/-}}\s*/g,"}}").replace(/\s*{{-/g,"{{")}(e,t);let c=0;const p=e=>{let t="";for(;e(u[c]);)if("\\"!==u[c]){if(t+=u[c++],c>=u.length)throw new SyntaxError("Unexpected end of input")}else{if(++c,c>=u.length)throw new SyntaxError("Unexpected end of input");const e=u[c++],n=d.get(e);if(void 0===n)throw new SyntaxError(`Unexpected escaped character: ${e}`);t+=n}return t};e:for(;c<u.length;){const e=n.at(-1)?.type;if(void 0===e||e===r.CloseStatement||e===r.CloseExpression){let e="";for(;c<u.length&&("{"!==u[c]||"%"!==u[c+1]&&"{"!==u[c+1]);)e+=u[c++];if(e.length>0){n.push(new a(e,r.Text));continue}}p((e=>/\s/.test(e)));const t=u[c];if("-"===t||"+"===t){const e=n.at(-1)?.type;if(e===r.Text||void 0===e)throw new SyntaxError(`Unexpected character: ${t}`);switch(e){case r.Identifier:case r.NumericLiteral:case r.BooleanLiteral:case r.NullLiteral:case r.StringLiteral:case r.CloseParen:case r.CloseSquareBracket:break;default:{++c;const e=p(i);n.push(new a(`${t}${e}`,e.length>0?r.NumericLiteral:r.UnaryOperator));continue}}}for(const[e,t]of l){if(u.slice(c,c+e.length)===e){n.push(new a(e,t)),c+=e.length;continue e}}if("'"!==t&&'"'!==t)if(i(t)){const e=p(i);n.push(new a(e,r.NumericLiteral))}else{if(!o(t))throw new SyntaxError(`Unexpected character: ${t}`);{const e=p(o),t=Object.hasOwn(s,e)?s[e]:r.Identifier;t===r.In&&n.at(-1)?.type===r.Not?(n.pop(),n.push(new a("not in",r.NotIn))):n.push(new a(e,t))}}else{++c;const e=p((e=>e!==t));n.push(new a(e,r.StringLiteral)),++c}}return n}var c=class{type="Statement"},p=class extends c{constructor(e){super(),this.body=e}type="Program"},m=class extends c{constructor(e,t,n){super(),this.test=e,this.body=t,this.alternate=n}type="If"},h=class extends c{constructor(e,t,n,r){super(),this.loopvar=e,this.iterable=t,this.body=n,this.defaultBlock=r}type="For"},f=class extends c{type="Break"},_=class extends c{type="Continue"},g=class extends c{constructor(e,t,n){super(),this.assignee=e,this.value=t,this.body=n}type="Set"},w=class extends c{constructor(e,t,n){super(),this.name=e,this.args=t,this.body=n}type="Macro"},b=class extends c{type="Expression"},y=class extends b{constructor(e,t,n){super(),this.object=e,this.property=t,this.computed=n}type="MemberExpression"},x=class extends b{constructor(e,t){super(),this.callee=e,this.args=t}type="CallExpression"},M=class extends b{constructor(e){super(),this.value=e}type="Identifier"},v=class extends b{constructor(e){super(),this.value=e}type="Literal"},T=class extends v{type="NumericLiteral"},k=class extends v{type="StringLiteral"},$=class extends v{type="BooleanLiteral"},P=class extends v{type="NullLiteral"},C=class extends v{type="ArrayLiteral"},S=class extends v{type="TupleLiteral"},E=class extends v{type="ObjectLiteral"},F=class extends b{constructor(e,t,n){super(),this.operator=e,this.left=t,this.right=n}type="BinaryExpression"},I=class extends b{constructor(e,t){super(),this.operand=e,this.filter=t}type="FilterExpression"},A=class extends b{constructor(e,t){super(),this.iterable=e,this.test=t}type="SelectExpression"},z=class extends b{constructor(e,t,n){super(),this.operand=e,this.negate=t,this.test=n}type="TestExpression"},L=class extends b{constructor(e,t){super(),this.operator=e,this.argument=t}type="UnaryExpression"},O=class extends b{constructor(e=void 0,t=void 0,n=void 0){super(),this.start=e,this.stop=t,this.step=n}type="SliceExpression"},D=class extends b{constructor(e,t){super(),this.key=e,this.value=t}type="KeywordArgumentExpression"};function B(e){const t=new p([]);let n=0;function s(t,r){const s=e[n++];if(!s||s.type!==t)throw new Error(`Parser Error: ${r}. ${s.type} !== ${t}.`);return s}function a(){switch(e[n].type){case r.Text:return new k(s(r.Text,"Expected text token").value);case r.OpenStatement:return function(){let t;switch(s(r.OpenStatement,"Expected opening statement token"),e[n].type){case r.Set:++n,t=function(){const t=u();if(i(r.Equals)){++n;const e=u();return new g(t,e,[])}{const o=[];for(s(r.CloseStatement,"Expected %} token");e[n]?.type!==r.OpenStatement||e[n+1]?.type!==r.EndSet;){const e=a();o.push(e)}return s(r.OpenStatement,"Expected {% token"),s(r.EndSet,"Expected endset token"),new g(t,null,o)}}(),s(r.CloseStatement,"Expected closing statement token");break;case r.If:++n,t=l(),s(r.OpenStatement,"Expected {% token"),s(r.EndIf,"Expected endif token"),s(r.CloseStatement,"Expected %} token");break;case r.Macro:++n,t=function(){const e=U();if("Identifier"!==e.type)throw new SyntaxError("Expected identifier following macro statement");const t=R();s(r.CloseStatement,"Expected closing statement token");const n=[];for(;o(r.OpenStatement,r.EndMacro);)n.push(a());return new w(e,t,n)}(),s(r.OpenStatement,"Expected {% token"),s(r.EndMacro,"Expected endmacro token"),s(r.CloseStatement,"Expected %} token");break;case r.For:++n,t=function(){const e=d(!0);if(!(e instanceof M||e instanceof S))throw new SyntaxError(`Expected identifier/tuple for the loop variable, got ${e.type} instead`);s(r.In,"Expected `in` keyword following loop variable");const t=u();s(r.CloseStatement,"Expected closing statement token");const l=[];for(;o(r.OpenStatement,r.EndFor)&&o(r.OpenStatement,r.Else);)l.push(a());const c=[];if(i(r.OpenStatement,r.Else))for(++n,++n,s(r.CloseStatement,"Expected closing statement token");o(r.OpenStatement,r.EndFor);)c.push(a());return new h(e,t,l,c)}(),s(r.OpenStatement,"Expected {% token"),s(r.EndFor,"Expected endfor token"),s(r.CloseStatement,"Expected %} token");break;case r.Break:++n,s(r.CloseStatement,"Expected closing statement token"),t=new f;break;case r.Continue:++n,s(r.CloseStatement,"Expected closing statement token"),t=new _;break;default:throw new SyntaxError(`Unknown statement type: ${e[n].type}`)}return t}();case r.OpenExpression:return function(){s(r.OpenExpression,"Expected opening expression token");const e=u();return s(r.CloseExpression,"Expected closing expression token"),e}();default:throw new SyntaxError(`Unexpected token type: ${e[n].type}`)}}function o(...t){return n+t.length<=e.length&&t.some(((t,r)=>t!==e[n+r].type))}function i(...t){return n+t.length<=e.length&&t.every(((t,r)=>t===e[n+r].type))}function l(){const t=u();s(r.CloseStatement,"Expected closing statement token");const o=[],d=[];for(;e[n]?.type!==r.OpenStatement||e[n+1]?.type!==r.ElseIf&&e[n+1]?.type!==r.Else&&e[n+1]?.type!==r.EndIf;)o.push(a());if(e[n]?.type===r.OpenStatement&&e[n+1]?.type!==r.EndIf)if(++n,i(r.ElseIf))s(r.ElseIf,"Expected elseif token"),d.push(l());else for(s(r.Else,"Expected else token"),s(r.CloseStatement,"Expected closing statement token");e[n]?.type!==r.OpenStatement||e[n+1]?.type!==r.EndIf;)d.push(a());return new m(t,o,d)}function d(e=!1){const t=e?U:u,s=[t()],a=i(r.Comma);for(;a&&(++n,s.push(t()),i(r.Comma)););return a?new S(s):s[0]}function u(){return function(){const e=c();if(i(r.If)){++n;const t=c();if(i(r.Else)){++n;const r=c();return new m(t,[e],[r])}return new A(e,t)}return e}()}function c(){let t=b();for(;i(r.Or);){const r=e[n];++n;const s=b();t=new F(r,t,s)}return t}function b(){let t=v();for(;i(r.And);){const r=e[n];++n;const s=v();t=new F(r,t,s)}return t}function v(){let t;for(;i(r.Not);){const r=e[n];++n;const s=v();t=new L(r,s)}return t??function(){let t=B();for(;i(r.ComparisonBinaryOperator)||i(r.In)||i(r.NotIn);){const r=e[n];++n;const s=B();t=new F(r,t,s)}return t}()}function B(){let t=G();for(;i(r.AdditiveBinaryOperator);){const r=e[n];++n;const s=G();t=new F(r,t,s)}return t}function N(e){let t=new x(e,R());return t=V(t),i(r.OpenParen)&&(t=N(t)),t}function R(){s(r.OpenParen,"Expected opening parenthesis for arguments list");const e=function(){const e=[];for(;!i(r.CloseParen);){let t=u();if(i(r.Equals)){if(++n,!(t instanceof M))throw new SyntaxError("Expected identifier for keyword argument");const e=u();t=new D(t,e)}e.push(t),i(r.Comma)&&++n}return e}();return s(r.CloseParen,"Expected closing parenthesis for arguments list"),e}function j(){const e=[];let t=!1;for(;!i(r.CloseSquareBracket);)i(r.Colon)?(e.push(void 0),++n,t=!0):(e.push(u()),i(r.Colon)&&(++n,t=!0));if(0===e.length)throw new SyntaxError("Expected at least one argument for member/slice expression");if(t){if(e.length>3)throw new SyntaxError("Expected 0-3 arguments for slice expression");return new O(...e)}return e[0]}function V(t){for(;i(r.Dot)||i(r.OpenSquareBracket);){const a=e[n];let o;++n;const i=a.type!==r.Dot;if(i)o=j(),s(r.CloseSquareBracket,"Expected closing square bracket");else if(o=U(),"Identifier"!==o.type)throw new SyntaxError("Expected identifier following dot operator");t=new y(t,o,i)}return t}function G(){let t=q();for(;i(r.MultiplicativeBinaryOperator);){const r=e[n];++n;const s=q();t=new F(r,t,s)}return t}function q(){let e=function(){let e=function(){const e=V(U());return i(r.OpenParen)?N(e):e}();for(;i(r.Pipe);){++n;let t=U();if(!(t instanceof M))throw new SyntaxError("Expected identifier for the filter");i(r.OpenParen)&&(t=N(t)),e=new I(e,t)}return e}();for(;i(r.Is);){++n;const t=i(r.Not);t&&++n;let s=U();if(s instanceof $?s=new M(s.value.toString()):s instanceof P&&(s=new M("none")),!(s instanceof M))throw new SyntaxError("Expected identifier for the test");e=new z(e,t,s)}return e}function U(){const t=e[n];switch(t.type){case r.NumericLiteral:return++n,new T(Number(t.value));case r.StringLiteral:return++n,new k(t.value);case r.BooleanLiteral:return++n,new $("true"===t.value.toLowerCase());case r.NullLiteral:return++n,new P(null);case r.Identifier:return++n,new M(t.value);case r.OpenParen:{++n;const t=d();if(e[n].type!==r.CloseParen)throw new SyntaxError(`Expected closing parenthesis, got ${e[n].type} instead`);return++n,t}case r.OpenSquareBracket:{++n;const e=[];for(;!i(r.CloseSquareBracket);)e.push(u()),i(r.Comma)&&++n;return++n,new C(e)}case r.OpenCurlyBracket:{++n;const e=new Map;for(;!i(r.CloseCurlyBracket);){const t=u();s(r.Colon,"Expected colon between key and value in object literal");const a=u();e.set(t,a),i(r.Comma)&&++n}return++n,new E(e)}default:throw new SyntaxError(`Unexpected token: ${t.type}`)}}for(;n<e.length;)t.body.push(a());return t}function N(e,t,n=1){void 0===t&&(t=e,e=0);const r=[];for(let s=e;s<t;s+=n)r.push(s);return r}function R(e,t,n,r=1){const s=Math.sign(r);s>=0?(t=(t??=0)<0?Math.max(e.length+t,0):Math.min(t,e.length),n=(n??=e.length)<0?Math.max(e.length+n,0):Math.min(n,e.length)):(t=(t??=e.length-1)<0?Math.max(e.length+t,-1):Math.min(t,e.length-1),n=(n??=-1)<-1?Math.max(e.length+n,-1):Math.min(n,e.length-1));const a=[];for(let o=t;s*o<s*n;o+=r)a.push(e[o]);return a}function j(e){return e.replace(/\b\w/g,(e=>e.toUpperCase()))}var V=class extends Error{},G=class extends Error{},q=class{type="RuntimeValue";value;builtins=new Map;constructor(e=void 0){this.value=e}__bool__(){return new H(!!this.value)}},U=class extends q{type="NumericValue"},W=class extends q{type="StringValue";builtins=new Map([["upper",new Y((()=>new W(this.value.toUpperCase())))],["lower",new Y((()=>new W(this.value.toLowerCase())))],["strip",new Y((()=>new W(this.value.trim())))],["title",new Y((()=>new W(j(this.value))))],["length",new U(this.value.length)],["rstrip",new Y((()=>new W(this.value.trimEnd())))],["lstrip",new Y((()=>new W(this.value.trimStart())))],["startswith",new Y((e=>{if(0===e.length)throw new Error("startswith() requires at least one argument");const t=e[0];if(!(t instanceof W))throw new Error("startswith() argument must be a string");return new H(this.value.startsWith(t.value))}))],["endswith",new Y((e=>{if(0===e.length)throw new Error("endswith() requires at least one argument");const t=e[0];if(!(t instanceof W))throw new Error("endswith() argument must be a string");return new H(this.value.endsWith(t.value))}))],["split",new Y((e=>{const t=e[0]??new Z;if(!(t instanceof W||t instanceof Z))throw new Error("sep argument must be a string or null");const n=e[1]??new U(-1);if(!(n instanceof U))throw new Error("maxsplit argument must be a number");let r=[];if(t instanceof Z){const e=this.value.trimStart();for(const{0:t,index:s}of e.matchAll(/\S+/g)){if(-1!==n.value&&r.length>=n.value&&void 0!==s){r.push(t+e.slice(s+t.length));break}r.push(t)}}else{if(""===t.value)throw new Error("empty separator");r=this.value.split(t.value),-1!==n.value&&r.length>n.value&&r.push(r.splice(n.value).join(t.value))}return new X(r.map((e=>new W(e))))}))]])},H=class extends q{type="BooleanValue"},Q=class extends q{type="ObjectValue";__bool__(){return new H(this.value.size>0)}builtins=new Map([["get",new Y((([e,t])=>{if(!(e instanceof W))throw new Error(`Object key must be a string: got ${e.type}`);return this.value.get(e.value)??t??new Z}))],["items",new Y((()=>new X(Array.from(this.value.entries()).map((([e,t])=>new X([new W(e),t]))))))]])},K=class extends Q{type="KeywordArgumentsValue"},X=class extends q{type="ArrayValue";builtins=new Map([["length",new U(this.value.length)]]);__bool__(){return new H(this.value.length>0)}},J=class extends X{type="TupleValue"},Y=class extends q{type="FunctionValue"},Z=class extends q{type="NullValue"},ee=class extends q{type="UndefinedValue"},te=class{constructor(e){this.parent=e}variables=new Map([["namespace",new Y((e=>{if(0===e.length)return new Q(new Map);if(1!==e.length||!(e[0]instanceof Q))throw new Error("`namespace` expects either zero arguments or a single object argument");return e[0]}))]]);tests=new Map([["boolean",e=>"BooleanValue"===e.type],["callable",e=>e instanceof Y],["odd",e=>{if("NumericValue"!==e.type)throw new Error(`Cannot apply test "odd" to type: ${e.type}`);return e.value%2!=0}],["even",e=>{if("NumericValue"!==e.type)throw new Error(`Cannot apply test "even" to type: ${e.type}`);return e.value%2==0}],["false",e=>"BooleanValue"===e.type&&!e.value],["true",e=>"BooleanValue"===e.type&&e.value],["none",e=>"NullValue"===e.type],["string",e=>"StringValue"===e.type],["number",e=>"NumericValue"===e.type],["integer",e=>"NumericValue"===e.type&&Number.isInteger(e.value)],["iterable",e=>"ArrayValue"===e.type||"StringValue"===e.type],["mapping",e=>"ObjectValue"===e.type],["lower",e=>{const t=e.value;return"StringValue"===e.type&&t===t.toLowerCase()}],["upper",e=>{const t=e.value;return"StringValue"===e.type&&t===t.toUpperCase()}],["none",e=>"NullValue"===e.type],["defined",e=>"UndefinedValue"!==e.type],["undefined",e=>"UndefinedValue"===e.type],["equalto",(e,t)=>e.value===t.value],["eq",(e,t)=>e.value===t.value]]);set(e,t){return this.declareVariable(e,re(t))}declareVariable(e,t){if(this.variables.has(e))throw new SyntaxError(`Variable already declared: ${e}`);return this.variables.set(e,t),t}setVariable(e,t){return this.variables.set(e,t),t}resolve(e){if(this.variables.has(e))return this;if(this.parent)return this.parent.resolve(e);throw new Error(`Unknown variable: ${e}`)}lookupVariable(e){try{return this.resolve(e).variables.get(e)??new ee}catch{return new ee}}},ne=class{global;constructor(e){this.global=e??new te}run(e){return this.evaluate(e,this.global)}evaluateBinaryExpression(e,t){const n=this.evaluate(e.left,t);switch(e.operator.value){case"and":return n.__bool__().value?this.evaluate(e.right,t):n;case"or":return n.__bool__().value?n:this.evaluate(e.right,t)}const r=this.evaluate(e.right,t);switch(e.operator.value){case"==":return new H(n.value==r.value);case"!=":return new H(n.value!=r.value)}if(n instanceof ee||r instanceof ee)throw new Error("Cannot perform operation on undefined values");if(n instanceof Z||r instanceof Z)throw new Error("Cannot perform operation on null values");if(n instanceof U&&r instanceof U)switch(e.operator.value){case"+":return new U(n.value+r.value);case"-":return new U(n.value-r.value);case"*":return new U(n.value*r.value);case"/":return new U(n.value/r.value);case"%":return new U(n.value%r.value);case"<":return new H(n.value<r.value);case">":return new H(n.value>r.value);case">=":return new H(n.value>=r.value);case"<=":return new H(n.value<=r.value)}else if(n instanceof X&&r instanceof X){if("+"===e.operator.value)return new X(n.value.concat(r.value))}else if(r instanceof X){const t=void 0!==r.value.find((e=>e.value===n.value));switch(e.operator.value){case"in":return new H(t);case"not in":return new H(!t)}}if((n instanceof W||r instanceof W)&&"+"===e.operator.value)return new W(n.value.toString()+r.value.toString());if(n instanceof W&&r instanceof W)switch(e.operator.value){case"in":return new H(r.value.includes(n.value));case"not in":return new H(!r.value.includes(n.value))}if(n instanceof W&&r instanceof Q)switch(e.operator.value){case"in":return new H(r.value.has(n.value));case"not in":return new H(!r.value.has(n.value))}throw new SyntaxError(`Unknown operator "${e.operator.value}" between ${n.type} and ${r.type}`)}evaluateArguments(e,t){const n=[],r=new Map;for(const s of e)if("KeywordArgumentExpression"===s.type){const e=s;r.set(e.key.value,this.evaluate(e.value,t))}else{if(r.size>0)throw new Error("Positional arguments must come before keyword arguments");n.push(this.evaluate(s,t))}return[n,r]}evaluateFilterExpression(e,t){const n=this.evaluate(e.operand,t);if("Identifier"===e.filter.type){const t=e.filter;if("tojson"===t.value)return new W(se(n));if(n instanceof X)switch(t.value){case"list":return n;case"first":return n.value[0];case"last":return n.value[n.value.length-1];case"length":return new U(n.value.length);case"reverse":return new X(n.value.reverse());case"sort":return new X(n.value.sort(((e,t)=>{if(e.type!==t.type)throw new Error(`Cannot compare different types: ${e.type} and ${t.type}`);switch(e.type){case"NumericValue":return e.value-t.value;case"StringValue":return e.value.localeCompare(t.value);default:throw new Error(`Cannot compare type: ${e.type}`)}})));case"join":return new W(n.value.map((e=>e.value)).join(""));case"string":return new W(se(n));default:throw new Error(`Unknown ArrayValue filter: ${t.value}`)}else if(n instanceof W)switch(t.value){case"length":return new U(n.value.length);case"upper":return new W(n.value.toUpperCase());case"lower":return new W(n.value.toLowerCase());case"title":return new W(j(n.value));case"capitalize":return new W(n.value.charAt(0).toUpperCase()+n.value.slice(1));case"trim":return new W(n.value.trim());case"indent":return new W(n.value.split("\n").map(((e,t)=>0===t||0===e.length?e:" "+e)).join("\n"));case"join":case"string":return n;default:throw new Error(`Unknown StringValue filter: ${t.value}`)}else{if(n instanceof U){if("abs"===t.value)return new U(Math.abs(n.value));throw new Error(`Unknown NumericValue filter: ${t.value}`)}if(n instanceof Q)switch(t.value){case"items":return new X(Array.from(n.value.entries()).map((([e,t])=>new X([new W(e),t]))));case"length":return new U(n.value.size);default:throw new Error(`Unknown ObjectValue filter: ${t.value}`)}}throw new Error(`Cannot apply filter "${t.value}" to type: ${n.type}`)}if("CallExpression"===e.filter.type){const r=e.filter;if("Identifier"!==r.callee.type)throw new Error(`Unknown filter: ${r.callee.type}`);const s=r.callee.value;if("tojson"===s){const[,e]=this.evaluateArguments(r.args,t),s=e.get("indent")??new Z;if(!(s instanceof U||s instanceof Z))throw new Error("If set, indent must be a number");return new W(se(n,s.value))}if("join"===s){let e;if(n instanceof W)e=Array.from(n.value);else{if(!(n instanceof X))throw new Error(`Cannot apply filter "${s}" to type: ${n.type}`);e=n.value.map((e=>e.value))}const[a,o]=this.evaluateArguments(r.args,t),i=a.at(0)??o.get("separator")??new W("");if(!(i instanceof W))throw new Error("separator must be a string");return new W(e.join(i.value))}if(n instanceof X){switch(s){case"selectattr":case"rejectattr":{const e="selectattr"===s;if(n.value.some((e=>!(e instanceof Q))))throw new Error(`\`${s}\` can only be applied to array of objects`);if(r.args.some((e=>"StringLiteral"!==e.type)))throw new Error(`arguments of \`${s}\` must be strings`);const[a,o,i]=r.args.map((e=>this.evaluate(e,t)));let l;if(o){const e=t.tests.get(o.value);if(!e)throw new Error(`Unknown test: ${o.value}`);l=e}else l=(...e)=>e[0].__bool__().value;const d=n.value.filter((t=>{const n=t.value.get(a.value),r=!!n&&l(n,i);return e?r:!r}));return new X(d)}case"map":{const[,e]=this.evaluateArguments(r.args,t);if(e.has("attribute")){const t=e.get("attribute");if(!(t instanceof W))throw new Error("attribute must be a string");const r=e.get("default"),s=n.value.map((e=>{if(!(e instanceof Q))throw new Error("items in map must be an object");return e.value.get(t.value)??r??new ee}));return new X(s)}throw new Error("`map` expressions without `attribute` set are not currently supported.")}}throw new Error(`Unknown ArrayValue filter: ${s}`)}if(n instanceof W){if("indent"===s){const[e,s]=this.evaluateArguments(r.args,t),a=e.at(0)??s.get("width")??new U(4);if(!(a instanceof U))throw new Error("width must be a number");const o=e.at(1)??s.get("first")??new H(!1),i=e.at(2)??s.get("blank")??new H(!1),l=n.value.split("\n"),d=" ".repeat(a.value),u=l.map(((e,t)=>!o.value&&0===t||!i.value&&0===e.length?e:d+e));return new W(u.join("\n"))}throw new Error(`Unknown StringValue filter: ${s}`)}throw new Error(`Cannot apply filter "${s}" to type: ${n.type}`)}throw new Error(`Unknown filter: ${e.filter.type}`)}evaluateTestExpression(e,t){const n=this.evaluate(e.operand,t),r=t.tests.get(e.test.value);if(!r)throw new Error(`Unknown test: ${e.test.value}`);const s=r(n);return new H(e.negate?!s:s)}evaluateUnaryExpression(e,t){const n=this.evaluate(e.argument,t);if("not"===e.operator.value)return new H(!n.value);throw new SyntaxError(`Unknown operator: ${e.operator.value}`)}evalProgram(e,t){return this.evaluateBlock(e.body,t)}evaluateBlock(e,t){let n="";for(const r of e){const e=this.evaluate(r,t);"NullValue"!==e.type&&"UndefinedValue"!==e.type&&(n+=e.value)}return new W(n)}evaluateIdentifier(e,t){return t.lookupVariable(e.value)}evaluateCallExpression(e,t){const[n,r]=this.evaluateArguments(e.args,t);r.size>0&&n.push(new K(r));const s=this.evaluate(e.callee,t);if("FunctionValue"!==s.type)throw new Error(`Cannot call something that is not a function: got ${s.type}`);return s.value(n,t)}evaluateSliceExpression(e,t,n){if(!(e instanceof X||e instanceof W))throw new Error("Slice object must be an array or string");const r=this.evaluate(t.start,n),s=this.evaluate(t.stop,n),a=this.evaluate(t.step,n);if(!(r instanceof U||r instanceof ee))throw new Error("Slice start must be numeric or undefined");if(!(s instanceof U||s instanceof ee))throw new Error("Slice stop must be numeric or undefined");if(!(a instanceof U||a instanceof ee))throw new Error("Slice step must be numeric or undefined");return e instanceof X?new X(R(e.value,r.value,s.value,a.value)):new W(R(Array.from(e.value),r.value,s.value,a.value).join(""))}evaluateMemberExpression(e,t){const n=this.evaluate(e.object,t);let r,s;if(e.computed){if("SliceExpression"===e.property.type)return this.evaluateSliceExpression(n,e.property,t);r=this.evaluate(e.property,t)}else r=new W(e.property.value);if(n instanceof Q){if(!(r instanceof W))throw new Error(`Cannot access property with non-string: got ${r.type}`);s=n.value.get(r.value)??n.builtins.get(r.value)}else if(n instanceof X||n instanceof W)if(r instanceof U)s=n.value.at(r.value),n instanceof W&&(s=new W(n.value.at(r.value)));else{if(!(r instanceof W))throw new Error(`Cannot access property with non-string/non-number: got ${r.type}`);s=n.builtins.get(r.value)}else{if(!(r instanceof W))throw new Error(`Cannot access property with non-string: got ${r.type}`);s=n.builtins.get(r.value)}return s instanceof q?s:new ee}evaluateSet(e,t){const n=e.value?this.evaluate(e.value,t):this.evaluateBlock(e.body,t);if("Identifier"===e.assignee.type){const r=e.assignee.value;t.setVariable(r,n)}else{if("MemberExpression"!==e.assignee.type)throw new Error(`Invalid LHS inside assignment expression: ${JSON.stringify(e.assignee)}`);{const r=e.assignee,s=this.evaluate(r.object,t);if(!(s instanceof Q))throw new Error("Cannot assign to member of non-object");if("Identifier"!==r.property.type)throw new Error("Cannot assign to member with non-identifier property");s.value.set(r.property.value,n)}}return new Z}evaluateIf(e,t){const n=this.evaluate(e.test,t);return this.evaluateBlock(n.__bool__().value?e.body:e.alternate,t)}evaluateFor(e,t){const n=new te(t);let r,s;if("SelectExpression"===e.iterable.type){const t=e.iterable;s=this.evaluate(t.iterable,n),r=t.test}else s=this.evaluate(e.iterable,n);if(!(s instanceof X))throw new Error(`Expected iterable type in for loop: got ${s.type}`);const a=[],o=[];for(let t=0;t<s.value.length;++t){const i=new te(n),l=s.value[t];let d;if("Identifier"===e.loopvar.type)d=t=>t.setVariable(e.loopvar.value,l);else{if("TupleLiteral"!==e.loopvar.type)throw new Error(`Invalid loop variable(s): ${e.loopvar.type}`);{const t=e.loopvar;if("ArrayValue"!==l.type)throw new Error(`Cannot unpack non-iterable type: ${l.type}`);const n=l;if(t.value.length!==n.value.length)throw new Error(`Too ${t.value.length>n.value.length?"few":"many"} items to unpack`);d=e=>{for(let r=0;r<t.value.length;++r){if("Identifier"!==t.value[r].type)throw new Error(`Cannot unpack non-identifier type: ${t.value[r].type}`);e.setVariable(t.value[r].value,n.value[r])}}}}if(r){d(i);if(!this.evaluate(r,i).__bool__().value)continue}a.push(l),o.push(d)}let i="",l=!0;for(let t=0;t<a.length;++t){const r=new Map([["index",new U(t+1)],["index0",new U(t)],["revindex",new U(a.length-t)],["revindex0",new U(a.length-t-1)],["first",new H(0===t)],["last",new H(t===a.length-1)],["length",new U(a.length)],["previtem",t>0?a[t-1]:new ee],["nextitem",t<a.length-1?a[t+1]:new ee]]);n.setVariable("loop",new Q(r)),o[t](n);try{i+=this.evaluateBlock(e.body,n).value}catch(e){if(e instanceof G)continue;if(e instanceof V)break;throw e}l=!1}if(l){i+=this.evaluateBlock(e.defaultBlock,n).value}return new W(i)}evaluateMacro(e,t){return t.setVariable(e.name.value,new Y(((t,n)=>{const r=new te(n);let s;t=t.slice(),"KeywordArgumentsValue"===t.at(-1)?.type&&(s=t.pop());for(let n=0;n<e.args.length;++n){const a=e.args[n],o=t[n];if("Identifier"===a.type){const e=a;if(!o)throw new Error(`Missing positional argument: ${e.value}`);r.setVariable(e.value,o)}else{if("KeywordArgumentExpression"!==a.type)throw new Error(`Unknown argument type: ${a.type}`);{const e=a,t=o??s?.value.get(e.key.value)??this.evaluate(e.value,r);r.setVariable(e.key.value,t)}}}return this.evaluateBlock(e.body,r)}))),new Z}evaluate(e,t){if(void 0===e)return new ee;switch(e.type){case"Program":return this.evalProgram(e,t);case"Set":return this.evaluateSet(e,t);case"If":return this.evaluateIf(e,t);case"For":return this.evaluateFor(e,t);case"Macro":return this.evaluateMacro(e,t);case"Break":throw new V;case"Continue":throw new G;case"NumericLiteral":return new U(Number(e.value));case"StringLiteral":return new W(e.value);case"BooleanLiteral":return new H(e.value);case"NullLiteral":return new Z(e.value);case"ArrayLiteral":return new X(e.value.map((e=>this.evaluate(e,t))));case"TupleLiteral":return new J(e.value.map((e=>this.evaluate(e,t))));case"ObjectLiteral":{const n=new Map;for(const[r,s]of e.value){const e=this.evaluate(r,t);if(!(e instanceof W))throw new Error(`Object keys must be strings: got ${e.type}`);n.set(e.value,this.evaluate(s,t))}return new Q(n)}case"Identifier":return this.evaluateIdentifier(e,t);case"CallExpression":return this.evaluateCallExpression(e,t);case"MemberExpression":return this.evaluateMemberExpression(e,t);case"UnaryExpression":return this.evaluateUnaryExpression(e,t);case"BinaryExpression":return this.evaluateBinaryExpression(e,t);case"FilterExpression":return this.evaluateFilterExpression(e,t);case"TestExpression":return this.evaluateTestExpression(e,t);default:throw new SyntaxError(`Unknown node type: ${e.type}`)}}};function re(e){switch(typeof e){case"number":return new U(e);case"string":return new W(e);case"boolean":return new H(e);case"undefined":return new ee;case"object":return null===e?new Z:Array.isArray(e)?new X(e.map(re)):new Q(new Map(Object.entries(e).map((([e,t])=>[e,re(t)]))));case"function":return new Y(((t,n)=>re(e(...t.map((e=>e.value)))??null)));default:throw new Error(`Cannot convert to runtime value: ${e}`)}}function se(e,t,n){const r=n??0;switch(e.type){case"NullValue":case"UndefinedValue":return"null";case"NumericValue":case"StringValue":case"BooleanValue":return JSON.stringify(e.value);case"ArrayValue":case"ObjectValue":{const n=t?" ".repeat(t):"",s="\n"+n.repeat(r),a=s+n;if("ArrayValue"===e.type){const n=e.value.map((e=>se(e,t,r+1)));return t?`[${a}${n.join(`,${a}`)}${s}]`:`[${n.join(", ")}]`}{const n=Array.from(e.value.entries()).map((([e,n])=>{const s=`"${e}": ${se(n,t,r+1)}`;return t?`${a}${s}`:s}));return t?`{${n.join(",")}${s}}`:`{${n.join(", ")}}`}}default:throw new Error(`Cannot convert to JSON: ${e.type}`)}}var ae="\n",oe="{%- ",ie=" -%}",le={MultiplicativeBinaryOperator:2,AdditiveBinaryOperator:1,ComparisonBinaryOperator:0};function de(...e){return oe+e.join(" ")+ie}function ue(e,t,n){return e.map((e=>function(e,t,n){const r=n.repeat(t);switch(e.type){case"Program":return ue(e.body,t,n);case"If":return function(e,t,n){const r=n.repeat(t),s=[];let a=e;for(;a&&(s.push({test:a.test,body:a.body}),1===a.alternate.length&&"If"===a.alternate[0].type);)a=a.alternate[0];let o=r+de("if",ce(s[0].test))+ae+ue(s[0].body,t+1,n);for(let e=1;e<s.length;e++)o+=ae+r+de("elif",ce(s[e].test))+ae+ue(s[e].body,t+1,n);a&&a.alternate.length>0&&(o+=ae+r+de("else")+ae+ue(a.alternate,t+1,n));return o+=ae+r+de("endif"),o}(e,t,n);case"For":return function(e,t,n){const r=n.repeat(t);let s="";if("SelectExpression"===e.iterable.type){const t=e.iterable;s=`${ce(t.iterable)} if ${ce(t.test)}`}else s=ce(e.iterable);let a=r+de("for",ce(e.loopvar),"in",s)+ae+ue(e.body,t+1,n);e.defaultBlock.length>0&&(a+=ae+r+de("else")+ae+ue(e.defaultBlock,t+1,n));return a+=ae+r+de("endfor"),a}(e,t,n);case"Set":return function(e,t,n){const r=n.repeat(t),s=ce(e.assignee),a=e.value?ce(e.value):"",o=r+de("set",`${s}${e.value?" = "+a:""}`);if(0===e.body.length)return o;return o+ae+ue(e.body,t+1,n)+ae+r+de("endset")}(e,t,n);case"Macro":return function(e,t,n){const r=n.repeat(t),s=e.args.map(ce).join(", ");return r+de("macro",`${e.name.value}(${s})`)+ae+ue(e.body,t+1,n)+ae+r+de("endmacro")}(e,t,n);case"Break":return r+de("break");case"Continue":return r+de("continue");default:return r+"{{- "+ce(e)+" -}}"}}(e,t,n))).join(ae)}function ce(e,t=-1){switch(e.type){case"Identifier":return e.value;case"NullLiteral":return"none";case"NumericLiteral":case"BooleanLiteral":return`${e.value}`;case"StringLiteral":return JSON.stringify(e.value);case"BinaryExpression":{const n=e,r=le[n.operator.type]??0,s=ce(n.left,r),a=ce(n.right,r+1),o=`${s} ${n.operator.value} ${a}`;return r<t?`(${o})`:o}case"UnaryExpression":{const t=e;return t.operator.value+("not"===t.operator.value?" ":"")+ce(t.argument,1/0)}case"LogicalNegationExpression":return`not ${ce(e.argument,1/0)}`;case"CallExpression":{const t=e,n=t.args.map((e=>ce(e,-1))).join(", ");return`${ce(t.callee,-1)}(${n})`}case"MemberExpression":{const t=e;let n=ce(t.object,-1);"Identifier"!==t.object.type&&(n=`(${n})`);let r=ce(t.property,-1);return t.computed||"Identifier"===t.property.type||(r=`(${r})`),t.computed?`${n}[${r}]`:`${n}.${r}`}case"FilterExpression":{const t=e,n=ce(t.operand,1/0);return"CallExpression"===t.filter.type?`${n} | ${ce(t.filter,-1)}`:`${n} | ${t.filter.value}`}case"SelectExpression":{const t=e;return`${ce(t.iterable,-1)} | select(${ce(t.test,-1)})`}case"TestExpression":{const t=e;return`${ce(t.operand,-1)} is${t.negate?" not":""} ${t.test.value}`}case"ArrayLiteral":case"TupleLiteral":{const t=e.value.map((e=>ce(e,-1))),n="ArrayLiteral"===e.type?"[]":"()";return`${n[0]}${t.join(", ")}${n[1]}`}case"ObjectLiteral":return`{ ${Array.from(e.value.entries()).map((([e,t])=>`${ce(e,-1)}: ${ce(t,-1)}`)).join(", ")} }`;case"SliceExpression":{const t=e;return`${t.start?ce(t.start,-1):""}:${t.stop?ce(t.stop,-1):""}${t.step?`:${ce(t.step,-1)}`:""}`}case"KeywordArgumentExpression":{const t=e;return`${t.key.value}=${ce(t.value,-1)}`}case"If":{const t=e,n=ce(t.test,-1);return`${ce(t.body[0],0)} if ${n} else ${ce(t.alternate[0],-1)}`}default:throw new Error(`Unknown expression type: ${e.type}`)}}var pe=class{parsed;constructor(e){const t=u(e,{lstrip_blocks:!0,trim_blocks:!0});this.parsed=B(t)}render(e){const t=new te;if(t.set("false",!1),t.set("true",!0),t.set("raise_exception",(e=>{throw new Error(e)})),t.set("range",N),e)for(const[n,r]of Object.entries(e))t.set(n,r);return new ne(t).run(this.parsed).value}format(e){return function(e,t="\t"){const n="number"==typeof t?" ".repeat(t):t;return ue(e.body,0,n).replace(/\n$/,"")}(this.parsed,e?.indent||"\t")}}},"./node_modules/onnxruntime-common/dist/esm/backend-impl.js":(e,t,n)=>{n.r(t),n.d(t,{registerBackend:()=>a,resolveBackendAndExecutionProviders:()=>i});const r=new Map,s=[],a=(e,t,n)=>{if(!t||"function"!=typeof t.init||"function"!=typeof t.createInferenceSessionHandler)throw new TypeError("not a valid backend");{const a=r.get(e);if(void 0===a)r.set(e,{backend:t,priority:n});else{if(a.priority>n)return;if(a.priority===n&&a.backend!==t)throw new Error(`cannot register backend "${e}" using priority ${n}`)}if(n>=0){const t=s.indexOf(e);-1!==t&&s.splice(t,1);for(let t=0;t<s.length;t++)if(r.get(s[t]).priority<=n)return void s.splice(t,0,e);s.push(e)}}},o=async e=>{const t=r.get(e);if(!t)return"backend not found.";if(t.initialized)return t.backend;if(t.aborted)return t.error;{const n=!!t.initPromise;try{return n||(t.initPromise=t.backend.init(e)),await t.initPromise,t.initialized=!0,t.backend}catch(e){return n||(t.error=`${e}`,t.aborted=!0),t.error}finally{delete t.initPromise}}},i=async e=>{const t=e.executionProviders||[],n=t.map((e=>"string"==typeof e?e:e.name)),r=0===n.length?s:n;let a;const i=[],l=new Set;for(const e of r){const t=await o(e);"string"==typeof t?i.push({name:e,err:t}):(a||(a=t),a===t&&l.add(e))}if(!a)throw new Error(`no available backend found. ERR: ${i.map((e=>`[${e.name}] ${e.err}`)).join(", ")}`);for(const{name:e,err:t}of i)n.includes(e)&&console.warn(`removing requested execution provider "${e}" from session options because it is not available: ${t}`);const d=t.filter((e=>l.has("string"==typeof e?e:e.name)));return[a,new Proxy(e,{get:(e,t)=>"executionProviders"===t?d:Reflect.get(e,t)})]}},"./node_modules/onnxruntime-common/dist/esm/backend.js":(e,t,n)=>{n.r(t),n.d(t,{registerBackend:()=>r.registerBackend});var r=n("./node_modules/onnxruntime-common/dist/esm/backend-impl.js")},"./node_modules/onnxruntime-common/dist/esm/env-impl.js":(e,t,n)=>{n.r(t),n.d(t,{env:()=>a});var r=n("./node_modules/onnxruntime-common/dist/esm/version.js");let s="warning";const a={wasm:{},webgl:{},webgpu:{},versions:{common:r.version},set logLevel(e){if(void 0!==e){if("string"!=typeof e||-1===["verbose","info","warning","error","fatal"].indexOf(e))throw new Error(`Unsupported logging level: ${e}`);s=e}},get logLevel(){return s}};Object.defineProperty(a,"logLevel",{enumerable:!0})},"./node_modules/onnxruntime-common/dist/esm/env.js":(e,t,n)=>{n.r(t),n.d(t,{env:()=>r});const r=n("./node_modules/onnxruntime-common/dist/esm/env-impl.js").env},"./node_modules/onnxruntime-common/dist/esm/index.js":(e,t,n)=>{n.r(t),n.d(t,{InferenceSession:()=>a.InferenceSession,TRACE:()=>i.TRACE,TRACE_FUNC_BEGIN:()=>i.TRACE_FUNC_BEGIN,TRACE_FUNC_END:()=>i.TRACE_FUNC_END,Tensor:()=>o.Tensor,env:()=>s.env,registerBackend:()=>r.registerBackend});var r=n("./node_modules/onnxruntime-common/dist/esm/backend.js"),s=n("./node_modules/onnxruntime-common/dist/esm/env.js"),a=n("./node_modules/onnxruntime-common/dist/esm/inference-session.js"),o=n("./node_modules/onnxruntime-common/dist/esm/tensor.js"),i=(n("./node_modules/onnxruntime-common/dist/esm/tensor-conversion.js"),n("./node_modules/onnxruntime-common/dist/esm/tensor-factory.js"),n("./node_modules/onnxruntime-common/dist/esm/trace.js"));n("./node_modules/onnxruntime-common/dist/esm/onnx-model.js"),n("./node_modules/onnxruntime-common/dist/esm/onnx-value.js")},"./node_modules/onnxruntime-common/dist/esm/inference-session-impl.js":(e,t,n)=>{n.r(t),n.d(t,{InferenceSession:()=>o});var r=n("./node_modules/onnxruntime-common/dist/esm/backend-impl.js"),s=n("./node_modules/onnxruntime-common/dist/esm/tensor.js"),a=n("./node_modules/onnxruntime-common/dist/esm/trace.js");class o{constructor(e){this.handler=e}async run(e,t,n){(0,a.TRACE_FUNC_BEGIN)();const r={};let o={};if("object"!=typeof e||null===e||e instanceof s.Tensor||Array.isArray(e))throw new TypeError("'feeds' must be an object that use input names as keys and OnnxValue as corresponding values.");let i=!0;if("object"==typeof t){if(null===t)throw new TypeError("Unexpected argument[1]: cannot be null.");if(t instanceof s.Tensor)throw new TypeError("'fetches' cannot be a Tensor");if(Array.isArray(t)){if(0===t.length)throw new TypeError("'fetches' cannot be an empty array.");i=!1;for(const e of t){if("string"!=typeof e)throw new TypeError("'fetches' must be a string array or an object.");if(-1===this.outputNames.indexOf(e))throw new RangeError(`'fetches' contains invalid output name: ${e}.`);r[e]=null}if("object"==typeof n&&null!==n)o=n;else if(void 0!==n)throw new TypeError("'options' must be an object.")}else{let e=!1;const a=Object.getOwnPropertyNames(t);for(const n of this.outputNames)if(-1!==a.indexOf(n)){const a=t[n];(null===a||a instanceof s.Tensor)&&(e=!0,i=!1,r[n]=a)}if(e){if("object"==typeof n&&null!==n)o=n;else if(void 0!==n)throw new TypeError("'options' must be an object.")}else o=t}}else if(void 0!==t)throw new TypeError("Unexpected argument[1]: must be 'fetches' or 'options'.");for(const t of this.inputNames)if(void 0===e[t])throw new Error(`input '${t}' is missing in 'feeds'.`);if(i)for(const e of this.outputNames)r[e]=null;const l=await this.handler.run(e,r,o),d={};for(const e in l)if(Object.hasOwnProperty.call(l,e)){const t=l[e];t instanceof s.Tensor?d[e]=t:d[e]=new s.Tensor(t.type,t.data,t.dims)}return(0,a.TRACE_FUNC_END)(),d}async release(){return this.handler.dispose()}static async create(e,t,n,s){let i;(0,a.TRACE_FUNC_BEGIN)();let l={};if("string"==typeof e){if(i=e,"object"==typeof t&&null!==t)l=t;else if(void 0!==t)throw new TypeError("'options' must be an object.")}else if(e instanceof Uint8Array){if(i=e,"object"==typeof t&&null!==t)l=t;else if(void 0!==t)throw new TypeError("'options' must be an object.")}else{if(!(e instanceof ArrayBuffer||"undefined"!=typeof SharedArrayBuffer&&e instanceof SharedArrayBuffer))throw new TypeError("Unexpected argument[0]: must be 'path' or 'buffer'.");{const r=e;let a=0,o=e.byteLength;if("object"==typeof t&&null!==t)l=t;else if("number"==typeof t){if(a=t,!Number.isSafeInteger(a))throw new RangeError("'byteOffset' must be an integer.");if(a<0||a>=r.byteLength)throw new RangeError(`'byteOffset' is out of range [0, ${r.byteLength}).`);if(o=e.byteLength-a,"number"==typeof n){if(o=n,!Number.isSafeInteger(o))throw new RangeError("'byteLength' must be an integer.");if(o<=0||a+o>r.byteLength)throw new RangeError(`'byteLength' is out of range (0, ${r.byteLength-a}].`);if("object"==typeof s&&null!==s)l=s;else if(void 0!==s)throw new TypeError("'options' must be an object.")}else if(void 0!==n)throw new TypeError("'byteLength' must be a number.")}else if(void 0!==t)throw new TypeError("'options' must be an object.");i=new Uint8Array(r,a,o)}}const[d,u]=await(0,r.resolveBackendAndExecutionProviders)(l),c=await d.createInferenceSessionHandler(i,u);return(0,a.TRACE_FUNC_END)(),new o(c)}startProfiling(){this.handler.startProfiling()}endProfiling(){this.handler.endProfiling()}get inputNames(){return this.handler.inputNames}get outputNames(){return this.handler.outputNames}}},"./node_modules/onnxruntime-common/dist/esm/inference-session.js":(e,t,n)=>{n.r(t),n.d(t,{InferenceSession:()=>r});const r=n("./node_modules/onnxruntime-common/dist/esm/inference-session-impl.js").InferenceSession},"./node_modules/onnxruntime-common/dist/esm/onnx-model.js":(e,t,n)=>{n.r(t)},"./node_modules/onnxruntime-common/dist/esm/onnx-value.js":(e,t,n)=>{n.r(t)},"./node_modules/onnxruntime-common/dist/esm/tensor-conversion-impl.js":(e,t,n)=>{n.r(t),n.d(t,{tensorToDataURL:()=>r,tensorToImageData:()=>s});const r=(e,t)=>{const n="undefined"!=typeof document?document.createElement("canvas"):new OffscreenCanvas(1,1);n.width=e.dims[3],n.height=e.dims[2];const r=n.getContext("2d");if(null!=r){let s,a;void 0!==t?.tensorLayout&&"NHWC"===t.tensorLayout?(s=e.dims[2],a=e.dims[3]):(s=e.dims[3],a=e.dims[2]);const o=void 0!==t?.format?t.format:"RGB",i=t?.norm;let l,d;void 0===i||void 0===i.mean?l=[255,255,255,255]:"number"==typeof i.mean?l=[i.mean,i.mean,i.mean,i.mean]:(l=[i.mean[0],i.mean[1],i.mean[2],0],void 0!==i.mean[3]&&(l[3]=i.mean[3])),void 0===i||void 0===i.bias?d=[0,0,0,0]:"number"==typeof i.bias?d=[i.bias,i.bias,i.bias,i.bias]:(d=[i.bias[0],i.bias[1],i.bias[2],0],void 0!==i.bias[3]&&(d[3]=i.bias[3]));const u=a*s;let c=0,p=u,m=2*u,h=-1;"RGBA"===o?(c=0,p=u,m=2*u,h=3*u):"RGB"===o?(c=0,p=u,m=2*u):"RBG"===o&&(c=0,m=u,p=2*u);for(let t=0;t<a;t++)for(let n=0;n<s;n++){const s=(e.data[c++]-d[0])*l[0],a=(e.data[p++]-d[1])*l[1],o=(e.data[m++]-d[2])*l[2],i=-1===h?255:(e.data[h++]-d[3])*l[3];r.fillStyle="rgba("+s+","+a+","+o+","+i+")",r.fillRect(n,t,1,1)}if("toDataURL"in n)return n.toDataURL();throw new Error("toDataURL is not supported")}throw new Error("Can not access image data")},s=(e,t)=>{const n="undefined"!=typeof document?document.createElement("canvas").getContext("2d"):new OffscreenCanvas(1,1).getContext("2d");let r;if(null==n)throw new Error("Can not access image data");{let s,a,o;void 0!==t?.tensorLayout&&"NHWC"===t.tensorLayout?(s=e.dims[2],a=e.dims[1],o=e.dims[3]):(s=e.dims[3],a=e.dims[2],o=e.dims[1]);const i=void 0!==t&&void 0!==t.format?t.format:"RGB",l=t?.norm;let d,u;void 0===l||void 0===l.mean?d=[255,255,255,255]:"number"==typeof l.mean?d=[l.mean,l.mean,l.mean,l.mean]:(d=[l.mean[0],l.mean[1],l.mean[2],255],void 0!==l.mean[3]&&(d[3]=l.mean[3])),void 0===l||void 0===l.bias?u=[0,0,0,0]:"number"==typeof l.bias?u=[l.bias,l.bias,l.bias,l.bias]:(u=[l.bias[0],l.bias[1],l.bias[2],0],void 0!==l.bias[3]&&(u[3]=l.bias[3]));const c=a*s;if(void 0!==t&&(void 0!==t.format&&4===o&&"RGBA"!==t.format||3===o&&"RGB"!==t.format&&"BGR"!==t.format))throw new Error("Tensor format doesn't match input tensor dims");const p=4;let m=0,h=1,f=2,_=3,g=0,w=c,b=2*c,y=-1;"RGBA"===i?(g=0,w=c,b=2*c,y=3*c):"RGB"===i?(g=0,w=c,b=2*c):"RBG"===i&&(g=0,b=c,w=2*c),r=n.createImageData(s,a);for(let t=0;t<a*s;m+=p,h+=p,f+=p,_+=p,t++)r.data[m]=(e.data[g++]-u[0])*d[0],r.data[h]=(e.data[w++]-u[1])*d[1],r.data[f]=(e.data[b++]-u[2])*d[2],r.data[_]=-1===y?255:(e.data[y++]-u[3])*d[3]}return r}},"./node_modules/onnxruntime-common/dist/esm/tensor-conversion.js":(e,t,n)=>{n.r(t)},"./node_modules/onnxruntime-common/dist/esm/tensor-factory-impl.js":(e,t,n)=>{n.r(t),n.d(t,{bufferToTensor:()=>s,tensorFromGpuBuffer:()=>i,tensorFromImage:()=>a,tensorFromMLTensor:()=>l,tensorFromPinnedBuffer:()=>d,tensorFromTexture:()=>o});var r=n("./node_modules/onnxruntime-common/dist/esm/tensor-impl.js");const s=(e,t)=>{if(void 0===e)throw new Error("Image buffer must be defined");if(void 0===t.height||void 0===t.width)throw new Error("Image height and width must be defined");if("NHWC"===t.tensorLayout)throw new Error("NHWC Tensor layout is not supported yet");const{height:n,width:s}=t,a=t.norm??{mean:255,bias:0};let o,i;o="number"==typeof a.mean?[a.mean,a.mean,a.mean,a.mean]:[a.mean[0],a.mean[1],a.mean[2],a.mean[3]??255],i="number"==typeof a.bias?[a.bias,a.bias,a.bias,a.bias]:[a.bias[0],a.bias[1],a.bias[2],a.bias[3]??0];const l=void 0!==t.format?t.format:"RGBA",d=void 0!==t.tensorFormat&&void 0!==t.tensorFormat?t.tensorFormat:"RGB",u=n*s,c="RGBA"===d?new Float32Array(4*u):new Float32Array(3*u);let p=4,m=0,h=1,f=2,_=3,g=0,w=u,b=2*u,y=-1;"RGB"===l&&(p=3,m=0,h=1,f=2,_=-1),"RGBA"===d?y=3*u:"RBG"===d?(g=0,b=u,w=2*u):"BGR"===d&&(b=0,w=u,g=2*u);for(let t=0;t<u;t++,m+=p,f+=p,h+=p,_+=p)c[g++]=(e[m]+i[0])/o[0],c[w++]=(e[h]+i[1])/o[1],c[b++]=(e[f]+i[2])/o[2],-1!==y&&-1!==_&&(c[y++]=(e[_]+i[3])/o[3]);return"RGBA"===d?new r.Tensor("float32",c,[1,4,n,s]):new r.Tensor("float32",c,[1,3,n,s])},a=async(e,t)=>{const n="undefined"!=typeof HTMLImageElement&&e instanceof HTMLImageElement,r="undefined"!=typeof ImageData&&e instanceof ImageData,a="undefined"!=typeof ImageBitmap&&e instanceof ImageBitmap,o="string"==typeof e;let i,l=t??{};const d=()=>{if("undefined"!=typeof document)return document.createElement("canvas");if("undefined"!=typeof OffscreenCanvas)return new OffscreenCanvas(1,1);throw new Error("Canvas is not supported")},u=e=>"undefined"!=typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement||e instanceof OffscreenCanvas?e.getContext("2d"):null;if(n){const n=d();n.width=e.width,n.height=e.height;const r=u(n);if(null==r)throw new Error("Can not access image data");{let n=e.height,s=e.width;if(void 0!==t&&void 0!==t.resizedHeight&&void 0!==t.resizedWidth&&(n=t.resizedHeight,s=t.resizedWidth),void 0!==t){if(l=t,void 0!==t.tensorFormat)throw new Error("Image input config format must be RGBA for HTMLImageElement");l.tensorFormat="RGBA",l.height=n,l.width=s}else l.tensorFormat="RGBA",l.height=n,l.width=s;r.drawImage(e,0,0),i=r.getImageData(0,0,s,n).data}}else{if(!r){if(a){if(void 0===t)throw new Error("Please provide image config with format for Imagebitmap");const n=d();n.width=e.width,n.height=e.height;const r=u(n);if(null!=r){const t=e.height,n=e.width;return r.drawImage(e,0,0,n,t),i=r.getImageData(0,0,n,t).data,l.height=t,l.width=n,s(i,l)}throw new Error("Can not access image data")}if(o)return new Promise(((t,n)=>{const r=d(),a=u(r);if(!e||!a)return n();const o=new Image;o.crossOrigin="Anonymous",o.src=e,o.onload=()=>{r.width=o.width,r.height=o.height,a.drawImage(o,0,0,r.width,r.height);const e=a.getImageData(0,0,r.width,r.height);l.height=r.height,l.width=r.width,t(s(e.data,l))}}));throw new Error("Input data provided is not supported - aborted tensor creation")}{let n,r;if(void 0!==t&&void 0!==t.resizedWidth&&void 0!==t.resizedHeight?(n=t.resizedHeight,r=t.resizedWidth):(n=e.height,r=e.width),void 0!==t&&(l=t),l.format="RGBA",l.height=n,l.width=r,void 0!==t){const t=d();t.width=r,t.height=n;const s=u(t);if(null==s)throw new Error("Can not access image data");s.putImageData(e,0,0),i=s.getImageData(0,0,r,n).data}else i=e.data}}if(void 0!==i)return s(i,l);throw new Error("Input data provided is not supported - aborted tensor creation")},o=(e,t)=>{const{width:n,height:s,download:a,dispose:o}=t,i=[1,s,n,4];return new r.Tensor({location:"texture",type:"float32",texture:e,dims:i,download:a,dispose:o})},i=(e,t)=>{const{dataType:n,dims:s,download:a,dispose:o}=t;return new r.Tensor({location:"gpu-buffer",type:n??"float32",gpuBuffer:e,dims:s,download:a,dispose:o})},l=(e,t)=>{const{dataType:n,dims:s,download:a,dispose:o}=t;return new r.Tensor({location:"ml-tensor",type:n??"float32",mlTensor:e,dims:s,download:a,dispose:o})},d=(e,t,n)=>new r.Tensor({loc