-
Notifications
You must be signed in to change notification settings - Fork 107
/
Copy pathtf-backend-wasm.min.js
18 lines (18 loc) · 146 KB
/
tf-backend-wasm.min.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
/**
* @license
* Copyright 2024 Google LLC. All Rights Reserved.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* =============================================================================
*/
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("@tensorflow/tfjs-core"),require("fs"),require("path"),require("perf_hooks"),require("os")):"function"==typeof define&&define.amd?define(["exports","@tensorflow/tfjs-core","fs","path","perf_hooks","os"],n):n(((e="undefined"!=typeof globalThis?globalThis:e||self).tf=e.tf||{},e.tf.wasm=e.tf.wasm||{}),e.tf,e.fs,e.path,e.perf_hooks,e.require$$4)}(this,(function(e,n,t,a,r,u){"use strict";function i(e,n){return n.forEach((function(n){n&&"string"!=typeof n&&!Array.isArray(n)&&Object.keys(n).forEach((function(t){if("default"!==t&&!(t in e)){var a=Object.getOwnPropertyDescriptor(n,t);Object.defineProperty(e,t,a.get?a:{enumerable:!0,get:function(){return n[t]}})}}))})),e}var s,o,d,p=function(e,n){return p=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,n){e.__proto__=n}||function(e,n){for(var t in n)Object.prototype.hasOwnProperty.call(n,t)&&(e[t]=n[t])},p(e,n)};function l(e,n,t,a){return new(t||(t=Promise))((function(r,u){function i(e){try{o(a.next(e))}catch(e){u(e)}}function s(e){try{o(a.throw(e))}catch(e){u(e)}}function o(e){var n;e.done?r(e.value):(n=e.value,n instanceof t?n:new t((function(e){e(n)}))).then(i,s)}o((a=a.apply(e,n||[])).next())}))}function c(e,n){var t,a,r,u,i={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]};return u={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(u[Symbol.iterator]=function(){return this}),u;function s(u){return function(s){return function(u){if(t)throw new TypeError("Generator is already executing.");for(;i;)try{if(t=1,a&&(r=2&u[0]?a.return:u[0]?a.throw||((r=a.return)&&r.call(a),0):a.next)&&!(r=r.call(a,u[1])).done)return r;switch(a=0,r&&(u=[2&u[0],r.value]),u[0]){case 0:case 1:r=u;break;case 4:return i.label++,{value:u[1],done:!1};case 5:i.label++,a=u[1],u=[0];continue;case 7:u=i.ops.pop(),i.trys.pop();continue;default:if(!(r=i.trys,(r=r.length>0&&r[r.length-1])||6!==u[0]&&2!==u[0])){i=0;continue}if(3===u[0]&&(!r||u[1]>r[0]&&u[1]<r[3])){i.label=u[1];break}if(6===u[0]&&i.label<r[1]){i.label=r[1],r=u;break}if(r&&i.label<r[2]){i.label=r[2],i.ops.push(u);break}r[2]&&i.ops.pop(),i.trys.pop();continue}u=n.call(e,i)}catch(e){u=[6,e],a=0}finally{t=r=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}([u,s])}}}function m(e){var n="function"==typeof Symbol&&Symbol.iterator,t=n&&e[n],a=0;if(t)return t.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&a>=e.length&&(e=void 0),{value:e&&e[a++],done:!e}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")}function f(e,n){var t="function"==typeof Symbol&&e[Symbol.iterator];if(!t)return e;var a,r,u=t.call(e),i=[];try{for(;(void 0===n||n-- >0)&&!(a=u.next()).done;)i.push(a.value)}catch(e){r={error:e}}finally{try{a&&!a.done&&(t=u.return)&&t.call(u)}finally{if(r)throw r.error}}return i}function h(e,n,t){if(t||2===arguments.length)for(var a,r=0,u=n.length;r<u;r++)!a&&r in n||(a||(a=Array.prototype.slice.call(n,0,r)),a[r]=n[r]);return e.concat(a||Array.prototype.slice.call(n))}!function(e){e[e.float32=0]="float32",e[e.int32=1]="int32",e[e.bool=2]="bool",e[e.string=3]="string",e[e.complex64=4]="complex64"}(s||(s={})),function(e){e[e.linear=0]="linear",e[e.relu=1]="relu",e[e.relu6=2]="relu6",e[e.prelu=3]="prelu",e[e.leakyrelu=4]="leakyrelu",e[e.sigmoid=5]="sigmoid",e[e.elu=6]="elu"}(o||(o={}));var b={kernelName:n._FusedMatMul,backendName:"wasm",setupFunc:function(e){d=e.wasm.cwrap(n._FusedMatMul,null,["number","array","number","number","array","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.a,i=t.b,s=t.bias,p=t.preluActivationWeights;if("float32"!==u.dtype||"float32"!==i.dtype)throw new Error("_FusedMatMul for non non-float32 tensors not yet supported.");var l=r.transposeA,c=r.transposeB,m=r.activation,b=r.leakyreluAlpha,y=a.dataIdMap.get(u.dataId).id,_=a.dataIdMap.get(i.dataId).id,g=0;if(null!=s){var v=a.dataIdMap.get(s.dataId);if(1!==v.shape.length)throw new Error("_FusedMatMul only supports rank-1 bias but got "+"rank ".concat(v.shape.length,"."));g=v.id}var k=null==p?0:a.dataIdMap.get(p.dataId).id,I=o[m];if(null==I)throw new Error("".concat(m," activation not yet supported for FusedConv2D ")+"in the wasm backend.");var w=l?u.shape[2]:u.shape[1],S=c?i.shape[1]:i.shape[2],M=n.broadcast_util.assertAndGetBroadcastShape(u.shape.slice(0,-2),i.shape.slice(0,-2)),A=a.makeOutput(h(h([],f(M),!1),[w,S],!1),u.dtype),x=a.dataIdMap.get(A.dataId).id,F=new Uint8Array(new Int32Array(u.shape).buffer),N=new Uint8Array(new Int32Array(i.shape).buffer);return d(y,F,u.shape.length,_,N,i.shape.length,l,c,I,g,k,b||0,x),A}};function y(e,t){var a;return{kernelName:e,backendName:"wasm",setupFunc:function(n){a=n.wasm.cwrap(e,null,["number","number","number"])},kernelFunc:function(e){var r=e.backend,u=e.inputs.x,i=r.dataIdMap.get(u.dataId).id,o=r.makeOutput(u.shape,t||u.dtype),d=r.dataIdMap.get(o.dataId).id;return 0===n.util.sizeFromShape(o.shape)||a(i,s[u.dtype],d),o}}}var _=y(n.Abs),g=y(n.Acos),v=y(n.Acosh);function k(e,t,a){var r;return{kernelName:e,backendName:"wasm",setupFunc:function(n){r=n.wasm.cwrap(e,null,["number","array","number","number","array","number","number","number"])},kernelFunc:function(e){var t=e.backend,u=e.inputs,i=u.a,o=u.b,d=t.dataIdMap.get(i.dataId).id,p=t.dataIdMap.get(o.dataId).id,l=null!=a?a:i.dtype,c=n.backend_util.assertAndGetBroadcastShape(i.shape,o.shape),m=t.makeOutput(c,l);if(0===n.util.sizeFromShape(c))return m;var f=new Uint8Array(new Int32Array(i.shape).buffer),h=new Uint8Array(new Int32Array(o.shape).buffer),b=t.dataIdMap.get(m.dataId).id;return r(d,f,i.shape.length,p,h,o.shape.length,s[i.dtype],b),m}}}var I,w=k(n.Add);var S={kernelName:n.AddN,backendName:"wasm",setupFunc:function(e){I=e.wasm.cwrap(n.AddN,null,["array","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.backend,r=a.makeOutput(t[0].shape,t[0].dtype);if(0===n.util.sizeFromShape(r.shape))return r;var u=t.map((function(e){return a.dataIdMap.get(e.dataId).id})),i=new Uint8Array(new Int32Array(u).buffer),o=a.dataIdMap.get(r.dataId).id;return I(i,u.length,s[r.dtype],o),r}};function M(e){var t=e.inputs.x,a=e.backend;if("string"===t.dtype)return n.tensor(a.readSync(t.dataId),t.shape,t.dtype);var r=a.makeOutput(t.shape,t.dtype),u=a.typedArrayFromHeap(t);return a.typedArrayFromHeap(r).set(u),r}var A,x={kernelName:n.Identity,backendName:"wasm",kernelFunc:M};function F(e){for(var n=e.inputs,t=e.backend,a=e.attrs,r=f(function(e,n){for(var t=[],a=[],r=0;r<e.length;++r)1!==e[r]&&t.push(e[r]),1!==e[n[r]]&&a.push(n[r]);for(r=0;r<a.length;++r){for(var u=-1,i=0;i<a.length;++i)a[i]>=r&&(-1===u||a[u]>a[i])&&(u=i);a[u]=r}return[t,a]}(n.x.shape,a.perm),2),u=r[0],i=r[1],o=!0,d=0;d<i.length;d++)i[d]!==d&&(o=!1);var p=function(e,n){for(var t=new Array(e.length),a=0;a<t.length;a++)t[a]=e[n[a]];return t}(n.x.shape,a.perm),l={dataId:n.x.dataId,shape:u,dtype:n.x.dtype};if(o){var c=M({inputs:n,backend:t});return c.shape=p,c}var m=t.makeOutput(p,l.dtype),h=t.dataIdMap.get(l.dataId).id,b=t.dataIdMap.get(m.dataId).id,y=new Uint8Array(new Int32Array(i).buffer),_=new Uint8Array(new Int32Array(l.shape).buffer);return A(h,_,l.shape.length,s[l.dtype],b,y,i.length),m}var N,D={kernelName:n.Transpose,backendName:"wasm",kernelFunc:F,setupFunc:function(e){A=e.wasm.cwrap(n.Transpose,null,["number","array","number","number","number","array","number"])}};function R(e,t,a){var r=e.shape,u=e.shape.length,i=n.util.parseAxisParam(t,r),s=i,o=n.backend_util.getAxesPermutation(s,u),d=null,p=!1;if(null!=o){for(var l=new Array(u),c=0;c<l.length;c++)l[c]=r[o[c]];s=n.backend_util.getInnerMostAxes(s.length,u),d=F({inputs:{x:e},attrs:{perm:o},backend:a});var m=a.dataIdMap.get(e.dataId).id;a.dataIdMap.get(d.dataId).id!==m&&(p=!0)}return{transposed:d,originalAxes:i,axes:s,inputWasTransposed:p}}var E,P={kernelName:n.All,backendName:"wasm",setupFunc:function(e){N=e.wasm.cwrap(n.All,null,["number, number, number"])},kernelFunc:function(e){var t=e.backend,a=e.inputs,r=e.attrs,u=r.axis,i=r.keepDims,s=a.x,o=t.dataIdMap.get(s.dataId).id,d=s,p=R(s,u,t),l=p.transposed,c=p.axes,m=p.originalAxes,h=p.inputWasTransposed;h&&(d=l,o=t.dataIdMap.get(l.dataId).id);var b=d.shape.length;n.backend_util.assertAxesAreInnerMostDims("all",c,b);var y=f(n.backend_util.computeOutAndReduceShapes(d.shape,c),2),_=y[0],g=y[1],v=n.util.sizeFromShape(g),k=t.makeOutput(_,s.dtype);if(0!==n.util.sizeFromShape(d.shape)){var I=t.dataIdMap.get(k.dataId).id;N(o,v,I)}if(h&&t.disposeData(l.dataId),i){var w=n.backend_util.expandShapeToKeepDim(k.shape,m);k.shape=w}return k}};var C={kernelName:n.Any,backendName:"wasm",setupFunc:function(e){E=e.wasm.cwrap(n.Any,null,["number, number, number"])},kernelFunc:function(e){var t=e.backend,a=e.inputs,r=e.attrs,u=r.axis,i=r.keepDims,s=a.x,o=t.dataIdMap.get(s.dataId).id,d=s,p=R(s,u,t),l=p.transposed,c=p.axes,m=p.originalAxes,h=p.inputWasTransposed;h&&(d=l,o=t.dataIdMap.get(l.dataId).id);var b=d.shape.length;n.backend_util.assertAxesAreInnerMostDims("any",c,b);var y=f(n.backend_util.computeOutAndReduceShapes(d.shape,c),2),_=y[0],g=y[1],v=n.util.sizeFromShape(g),k=t.makeOutput(_,s.dtype);if(0!==n.util.sizeFromShape(d.shape)){var I=t.dataIdMap.get(k.dataId).id;E(o,v,I)}if(h&&t.disposeData(l.dataId),i){var w=n.backend_util.expandShapeToKeepDim(k.shape,m);k.shape=w}return k}};function W(e){var t;return{kernelName:e,backendName:"wasm",setupFunc:function(n){t=n.wasm.cwrap(e,null,["number","number","number","number","number"])},kernelFunc:function(e){var a=e.backend,r=e.inputs,u=e.attrs.axis,i=r.x,o=a.dataIdMap.get(i.dataId).id,d=o,p=i,l=R(i,u,a),c=l.transposed,m=l.axes,f=l.inputWasTransposed;if(f){var h=a.dataIdMap.get(c.dataId).id;h!==o&&(p=c,d=h)}var b=p.shape.slice(0,-1),y=a.makeOutput(b,"int32"),_=a.dataIdMap.get(y.dataId).id,g=n.util.sizeFromShape(y.shape),v=p.shape[m[0]];return t(d,s[p.dtype],g,v,_),f&&a.disposeData(c.dataId),y}}}var O,T=W(n.ArgMax),z=W(n.ArgMin),B=y(n.Asin),H=y(n.Asinh),L=y(n.Atan),G=k(n.Atan2),U=y(n.Atanh);var j,q={kernelName:n.AvgPool,backendName:"wasm",setupFunc:function(e){O=e.wasm.cwrap(n.AvgPool,null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.attrs,r=e.backend,u=t.x,i=r.dataIdMap.get(u.dataId).id,s=a.filterSize,o=a.strides,d=a.pad,p=a.dimRoundingMode,l=n.backend_util.computePool2DInfo(u.shape,s,o,1,d,p),c=l.filterHeight,m=l.filterWidth,f=l.padInfo.top,h=l.padInfo.right,b=l.padInfo.bottom,y=l.padInfo.left,_=l.strideHeight,g=l.strideWidth,v=l.inChannels;if("channelsLast"!==l.dataFormat)throw new Error("wasm backend does not support dataFormat:'"+"".concat(l.dataFormat,"'. Please use 'channelsLast'."));if(1!==l.dilationWidth||1!==l.dilationHeight)throw new Error("was backend only supports average pooling with dilation = [1, 1], "+"got [".concat(l.dilationHeight,", ").concat(l.dilationWidth,"]."));var k=r.makeOutput(l.outShape,"float32"),I=r.dataIdMap.get(k.dataId).id;return O(i,u.shape[0],u.shape[1],u.shape[2],c,m,f,h,b,y,_,g,v,I),k}};var V,K={kernelName:n.AvgPool3D,backendName:"wasm",setupFunc:function(e){j=e.wasm.cwrap("AvgPool3D",null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.x,i=r.filterSize,s=r.strides,o=r.pad,d=r.dimRoundingMode,p=r.dataFormat,l=n.backend_util.computePool3DInfo(u.shape,i,s,1,o,d,p),c=a.makeOutput(l.outShape,u.dtype);return j(a.dataIdMap.get(u.dataId).id,a.dataIdMap.get(c.dataId).id,l.batchSize,l.inChannels,l.inDepth,l.inHeight,l.inWidth,l.outDepth,l.outHeight,l.outWidth,l.strideDepth,l.strideHeight,l.strideWidth,l.dilationDepth,l.dilationHeight,l.dilationWidth,l.effectiveFilterDepth,l.effectiveFilterHeight,l.effectiveFilterWidth,l.padInfo.front,l.padInfo.top,l.padInfo.left),c}};var X,Q={kernelName:n.AvgPool3DGrad,backendName:"wasm",setupFunc:function(e){V=e.wasm.cwrap("AvgPool3DGrad",null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.dy,i=t.input,s=r.filterSize,o=r.strides,d=r.pad,p=r.dimRoundingMode,l=n.backend_util.computePool3DInfo(i.shape,s,o,1,d,p),c=a.makeOutput(i.shape,i.dtype);return V(a.dataIdMap.get(u.dataId).id,a.dataIdMap.get(c.dataId).id,l.batchSize,l.inChannels,l.inDepth,l.inHeight,l.inWidth,l.outDepth,l.outHeight,l.outWidth,l.strideDepth,l.strideHeight,l.strideWidth,l.dilationDepth,l.dilationHeight,l.dilationWidth,l.effectiveFilterDepth,l.effectiveFilterHeight,l.effectiveFilterWidth,l.padInfo.front,l.padInfo.top,l.padInfo.left,l.filterDepth,l.filterHeight,l.filterWidth),c}};var J={kernelName:n.AvgPoolGrad,backendName:"wasm",setupFunc:function(e){X=e.wasm.cwrap("AvgPoolGrad",null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.dy,i=t.input,s=r.filterSize,o=r.strides,d=r.pad,p=n.backend_util.computePool2DInfo(i.shape,s,o,1,d),l=a.makeOutput(i.shape,i.dtype);return X(a.dataIdMap.get(u.dataId).id,a.dataIdMap.get(l.dataId).id,p.batchSize,p.inChannels,p.inHeight,p.inWidth,p.outHeight,p.outWidth,p.strideHeight,p.strideWidth,p.dilationHeight,p.dilationWidth,p.effectiveFilterHeight,p.effectiveFilterWidth,p.padInfo.top,p.padInfo.left,p.filterHeight,p.filterWidth),l}};function Z(e){var t=e.inputs,a=e.attrs,r=t.x,u=a.shape,i=n.util.sizeFromShape(r.shape),s=n.util.inferFromImplicitShape(u,i);return n.util.assert(i===n.util.sizeFromShape(s),(function(){return"new shape: ".concat(s,", old shape: ").concat(r.shape,". New shape and old ")+"shape must have the same number of elements."})),e.backend.incRef(r.dataId),{dataId:r.dataId,shape:s,dtype:r.dtype}}var Y,$={kernelName:n.Reshape,backendName:"wasm",kernelFunc:Z};var ee={kernelName:n.BatchMatMul,backendName:"wasm",setupFunc:function(e){Y=e.wasm.cwrap(n.BatchMatMul,null,["number","array","number","number","array","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.a,i=t.b,s=r.transposeA,o=r.transposeB;if("float32"!==u.dtype||"float32"!==i.dtype)throw new Error("BatchMatMul for non non-float32 tensors not yet supported.");var d=u.shape.length,p=i.shape.length,l=s?u.shape[d-2]:u.shape[d-1],c=o?i.shape[p-1]:i.shape[p-2],m=s?u.shape[d-1]:u.shape[d-2],f=o?i.shape[p-2]:i.shape[p-1],h=u.shape.slice(0,-2),b=i.shape.slice(0,-2),y=n.util.sizeFromShape(h),_=n.util.sizeFromShape(b),g=n.broadcast_util.assertAndGetBroadcastShape(u.shape.slice(0,-2),i.shape.slice(0,-2)).concat([m,f]);n.util.assert(l===c,(function(){return"Error in matMul: inner shapes (".concat(l,") and (")+"".concat(c,") of Tensors with shapes ").concat(u.shape," and ")+"".concat(i.shape," and transposeA=").concat(s)+" and transposeB=".concat(o," must match.")}));var v=o?[_,f,c]:[_,c,f],k=Z({inputs:{x:u},backend:a,attrs:{shape:s?[y,l,m]:[y,m,l]}}),I=Z({inputs:{x:i},backend:a,attrs:{shape:v}}),w=a.dataIdMap.get(k.dataId).id,S=a.dataIdMap.get(I.dataId).id,M=s?k.shape[2]:k.shape[1],A=o?I.shape[1]:I.shape[2],x=Math.max(y,_),F=a.makeOutput([x,M,A],k.dtype),N=a.dataIdMap.get(F.dataId).id,D=new Uint8Array(new Int32Array(k.shape).buffer),R=new Uint8Array(new Int32Array(I.shape).buffer);return Y(w,D,k.shape.length,S,R,I.shape.length,s,o,N),a.disposeData(k.dataId),a.disposeData(I.dataId),F.shape=g,F}};function ne(e,t,a,r,u){var i=n.slice_util.isSliceContinous(r,t,a),s=n.util.sizeFromShape(a),o=n.util.computeStrides(r);if(i){var d=n.slice_util.computeFlatOffset(t,o);return"string"===u?e.slice(d,d+s):e.subarray(d,d+s)}for(var p="string"===u?n.backend_util.fromUint8ToStringArray(e):e,l=n.buffer(r,u,p),c=n.buffer(a,u),m=0;m<c.size;++m){var b=c.indexToLoc(m),y=b.map((function(e,n){return e+t[n]}));c.set.apply(c,h([l.get.apply(l,h([],f(y),!1))],f(b),!1))}return"string"===u?n.backend_util.fromStringArrayToUint8(c.values):c.values}n.backend_util.RowPartitionType;var te=function(){function e(e,t,a,r,u,i){this.separator=n.util.encodeString(e),this.nGramWidths=t,this.leftPad=n.util.encodeString(a),this.rightPad=n.util.encodeString(r),this.padWidth=u,this.preserveShort=i}return e.prototype.getPadWidth=function(e){return Math.min(this.padWidth<0?e-1:this.padWidth,e-1)},e.prototype.getNumNGrams=function(e,n){var t=this.getPadWidth(n);return Math.max(0,e+2*t-n+1)},e.prototype.createNGrams=function(e,n,t,a,r,u){for(var i=function(i){var o=s.getPadWidth(u),d=Math.max(0,o-i),p=Math.max(0,o-(r-(i+1))),l=u-(d+p),c=n+(d>0?0:i-o),m=0;m+=d*s.leftPad.length;for(var f=0;f<l;++f)m+=e[c+f].length;m+=p*s.rightPad.length,m+=(d+p+l-1)*s.separator.length,t[a+i]=new Uint8Array(m);var h=t[a+i],b=0,y=function(e){return e.forEach((function(e){return h[b++]=e}))};for(f=0;f<d;++f)y(s.leftPad),y(s.separator);for(f=0;f<l-1;++f)y(e[c+f]),y(s.separator);if(l>0){y(e[c+l-1]);for(f=0;f<p;++f)y(s.separator),y(s.rightPad)}else{for(f=0;f<p-1;++f)y(s.rightPad),y(s.separator);y(s.rightPad)}},s=this,o=0;o<r;++o)i(o)},e.prototype.compute=function(e,t){var a=this,r=e.length,u=t.length;if(u>0){var i=t[0];if(0!==i)throw new Error("First split value must be 0, got ".concat(i));for(var s=1;s<u;++s){var o=t[s]>=i;if(!(o=o&&t[s]<=r))throw new Error("Invalid split value ".concat(t[s],", must be in [").concat(i,", ").concat(r,"]"));i=t[s]}if(i!==r)throw new Error("Last split value must be data size. Expected ".concat(r,", got ").concat(i))}var d=u-1,p=n.util.getArrayFromDType("int32",u);if(0===r||0===u){var l=new Array(r);for(s=0;s<=d;++s)p[s]=0;return[l,p]}p[0]=0;var c=function(e){var n=t[e]-t[e-1],r=0;m.nGramWidths.forEach((function(e){r+=a.getNumNGrams(n,e)})),m.preserveShort&&n>0&&0===r&&(r=1),p[e]=p[e-1]+r},m=this;for(s=1;s<=d;++s)c(s);var f=new Array(p[d]),h=function(n){var r=t[n],u=p[n];if(b.nGramWidths.forEach((function(i){var s=t[n+1]-t[n],o=a.getNumNGrams(s,i);a.createNGrams(e,r,f,u,o,i),u+=o})),b.preserveShort&&u===p[n]){var i=t[n+1]-t[n];if(0===i)return"continue";var s=i+2*b.padWidth;b.createNGrams(e,r,f,u,1,s)}},b=this;for(s=0;s<d;++s)h(s);return[f,p]},e}();function ae(e,n,t,a){if(e.length)if(0!==n.length)if(1!==n.length){var r=0;for(o=0;o<e.length+1;o++)if(o===e.length||-1!==n.indexOf(e[o])){s=e.subarray(r,o);t&&0===s.length||a.push(s),r=o+1}}else{for(var u=n[0],i=e.indexOf(u);-1!==i;){var s=e.subarray(0,i);t&&0===s.length||a.push(s),i=(e=e.subarray(i+1)).indexOf(u)}t&&0===e.length||a.push(e)}else for(var o=0;o<e.length;++o)a.push(e.subarray(o,o+1))}function re(e){var t=e.inputs.x,a=e.attrs,r=a.begin,u=a.size,i=e.backend,s=f(n.slice_util.parseSliceParams(t,r,u),2),o=s[0],d=s[1],p=n.slice_util.isSliceContinous(t.shape,o,d),l=i.readSync(t.dataId),c=i.makeOutput(d,t.dtype),m=n.util.computeStrides(t.shape),h=i.dataIdMap.get(c.dataId);if(p){var b=n.slice_util.computeFlatOffset(o,m);if("string"===t.dtype)h.stringBytes=l.slice(b,b+n.util.sizeFromShape(d));else i.typedArrayFromHeap(c).set(l.subarray(b,b+n.util.sizeFromShape(d)));return c}if("string"===t.dtype){var y=ne(l,o,d,t.shape,t.dtype);return h.stringBytes=y,c}var _=i.typedArrayFromHeap(c),g=t.shape.length;if(2===g)!function(e,n,t,a,r){for(var u=0,i=a[0],s=a[1],o=i+r[0],d=i;d<o;d++){var p=d*n+s;t.set(e.subarray(p,p+r[1]),u),u+=r[1]}}(l,m[0],_,o,d);else if(3===g)!function(e,n,t,a,r,u){for(var i=0,s=r[0],o=r[1],d=r[2],p=s+u[0],l=o+u[1],c=s;c<p;c++)for(var m=o;m<l;m++){var f=c*n+m*t+d;a.set(e.subarray(f,f+u[2]),i),i+=u[2]}}(l,m[0],m[1],_,o,d);else if(4===g)!function(e,n,t,a,r,u,i){for(var s=0,o=u[0],d=u[1],p=u[2],l=o+i[0],c=d+i[1],m=p+i[2],f=u[3],h=o;h<l;h++)for(var b=d;b<c;b++)for(var y=p;y<m;y++){var _=h*n+b*t+y*a+f;r.set(e.subarray(_,_+i[3]),s),s+=i[3]}}(l,m[0],m[1],m[2],_,o,d);else{y=ne(l,o,d,t.shape,t.dtype);_.set(y)}return c}var ue={kernelName:n.Slice,backendName:"wasm",kernelFunc:re};var ie,se={kernelName:n.BatchToSpaceND,backendName:"wasm",kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.x,i=r.blockShape,s=r.crops,o=i.reduce((function(e,n){return e*n})),d=n.backend_util.getReshaped(u.shape,i,o),p=n.backend_util.getPermuted(d.length,i.length),l=n.backend_util.getReshapedPermuted(u.shape,i,o),c=n.backend_util.getSliceBeginCoords(s,i.length),m=n.backend_util.getSliceSize(l,s,i.length),f=Z({inputs:{x:u},backend:a,attrs:{shape:d}}),h=F({inputs:{x:f},backend:a,attrs:{perm:p}}),b=Z({inputs:{x:h},backend:a,attrs:{shape:l}}),y=re({inputs:{x:b},backend:a,attrs:{begin:c,size:m}});return a.disposeData(f.dataId),a.disposeData(h.dataId),a.disposeData(b.dataId),y}};var oe={kernelName:n.Bincount,backendName:"wasm",setupFunc:function(e){ie=e.wasm.cwrap(n.Bincount,null,["number","number","boolean","number","number","number"])},kernelFunc:function(e){var n=e.backend,t=e.inputs,a=e.attrs,r=t.x,u=t.weights,i=a.size,o=0!==u.shape.reduce((function(e,n){return e*n}),1),d=1===r.shape.length?[i]:[r.shape[0],i],p=n.makeOutput(d,u.dtype);function l(e){return n.dataIdMap.get(e.dataId).id}return ie(l(r),i,o,l(u),s[u.dtype],l(p)),p}},de=k(n.BitwiseAnd);var pe={kernelName:n.BroadcastArgs,backendName:"wasm",kernelFunc:function(e){var t=e.inputs,a=e.backend,r=t.s0,u=t.s1,i=a.typedArrayFromHeap(r),s=a.typedArrayFromHeap(u),o=n.backend_util.assertAndGetBroadcastShape(Array.from(i),Array.from(s));return a.makeOutput([o.length],"int32",void 0,new Int32Array(o))}};function le(e){var n=e.inputs.x,t=e.attrs.dtype,a=e.backend,r=a.makeOutput(n.shape,t),u=a.typedArrayFromHeap(n);return a.typedArrayFromHeap(r).set(u),r}var ce,me={kernelName:n.Cast,backendName:"wasm",kernelFunc:le},fe=y(n.Ceil);var he={kernelName:n.ClipByValue,backendName:"wasm",setupFunc:function(e){ce=e.wasm.cwrap(n.ClipByValue,null,["number","number","number","number"])},kernelFunc:function(e){var n=e.inputs,t=e.backend,a=e.attrs,r=n.x,u=a.clipValueMin,i=a.clipValueMax,s=t.dataIdMap.get(r.dataId).id,o=t.makeOutput(r.shape,r.dtype),d=t.dataIdMap.get(o.dataId).id;return ce(s,u,i,d),o}};function be(e){var t=e.inputs,a=e.backend,r=n.util.parseAxisParam(e.attrs.axis,t[0].shape)[0],u=t.map((function(e){return e.shape}));n.backend_util.assertParamsConsistent(u,r);var i=n.backend_util.computeOutShape(t.map((function(e){return e.shape})),r),s=t.filter((function(e){return n.util.sizeFromShape(e.shape)>0}));if(1===s.length)return M({inputs:{x:s[0]},backend:a});var o=a.makeOutput(i,t[0].dtype);if(0===n.util.sizeFromShape(i))return o;if("string"===s[0].dtype){var d=s.map((function(e){var t=n.util.sizeFromShape(e.shape.slice(r));return Z({inputs:{x:e},backend:a,attrs:{shape:[-1,t]}})})),p=d.map((function(e){return{vals:a.readSync(e.dataId),shape:e.shape}}));i=n.backend_util.computeOutShape(d.map((function(e){return e.shape})),1);var l=1===d[0].shape[0],c=function(e,t,a,r){var u=n.util.getArrayFromDType(a,n.util.sizeFromShape(t));if(r&&"string"!==a){var i=0;e.forEach((function(e){var t=n.util.sizeFromShape(e.shape);u.set(e.vals,i),i+=t}))}else{var s=0;e.forEach((function(e){for(var r="string"===a?n.backend_util.fromUint8ToStringArray(e.vals):e.vals,i=0,o=0;o<e.shape[0];++o)for(var d=o*t[1]+s,p=0;p<e.shape[1];++p)u[d+p]=r[i++];s+=e.shape[1]}))}return u}(p,i,t[0].dtype,l),m=n.backend_util.computeOutShape(s.map((function(e){return e.shape})),r);return o.shape=m,a.dataIdMap.get(o.dataId).stringBytes=n.backend_util.fromStringArrayToUint8(c),d.forEach((function(e){return a.disposeData(e.dataId)})),o}for(var f=n.util.sizeFromShape(s[0].shape.slice(0,r)),h=0,b=s.map((function(e){var t=n.util.sizeFromShape(e.shape.slice(r));return h+=t,t})),y=s.map((function(e){return a.typedArrayFromHeap(e)})),_=a.typedArrayFromHeap(o),g=0;g<f;g++)for(var v=g*h,k=0;k<y.length;k++){var I=b[k],w=g*I,S=y[k].subarray(w,w+I);_.set(S,v),v+=I}return o}var ye,_e={kernelName:n.Concat,backendName:"wasm",kernelFunc:be};var ge,ve={kernelName:n.Conv2D,backendName:"wasm",setupFunc:function(e){ye=e.wasm.cwrap(n.Conv2D,null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.attrs,r=e.backend,u=t.x,i=t.filter,s=r.dataIdMap.get(u.dataId).id,o=r.dataIdMap.get(i.dataId).id,d=a.strides,p=a.dilations,l=a.pad,c=a.dimRoundingMode,m=a.dataFormat,f=n.backend_util.convertConv2DDataFormat(m),h=n.backend_util.computeConv2DInfo(u.shape,i.shape,d,p,l,c,!1,f),b=h.filterHeight,y=h.filterWidth,_=h.padInfo.top,g=h.padInfo.right,v=h.padInfo.bottom,k=h.padInfo.left,I=h.dilationHeight,w=h.dilationWidth,S=h.strideHeight,M=h.strideWidth,A=h.inChannels,x=h.outChannels,F="SAME"===h.padInfo.type?1:0;if("channelsLast"!==h.dataFormat)throw new Error("wasm backend Conv2D does not support dataFormat:'"+"".concat(h.dataFormat,"'. Please use 'channelsLast'."));var N=r.makeOutput(h.outShape,"float32"),D=r.dataIdMap.get(N.dataId).id;return ye(s,u.shape[0],u.shape[1],u.shape[2],o,b,y,_,g,v,k,F,I,w,S,M,A,x,D),N}};var ke,Ie={kernelName:n.Conv2DBackpropInput,backendName:"wasm",setupFunc:function(e){ge=e.wasm.cwrap(n.Conv2DBackpropInput,null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.backend,a=e.inputs,r=e.attrs,u=a.dy,i=a.filter,s=r.strides,o=r.pad,d=r.dataFormat,p=r.dimRoundingMode,l=r.inputShape,c=n.backend_util.convertConv2DDataFormat(d),m=n.backend_util.computeConv2DInfo(l,i.shape,s,1,o,p,!1,c),h=m.batchSize,b=m.filterHeight,y=m.filterWidth,_=m.inChannels,g=m.inHeight,v=m.inWidth,k=m.outChannels,I=m.outHeight,w=m.outWidth,S=m.strideHeight,M=m.strideWidth,A=b-1-m.padInfo.top,x=y-1-m.padInfo.left,F="channelsLast"===m.dataFormat,N=n.util.computeStrides(m.inShape),D=n.util.computeStrides(u.shape),R=f(n.util.computeStrides(i.shape),3),E=R[0],P=R[1],C=R[2],W=N[0],O=F?N[1]:N[2],T=F?N[2]:1,z=F?1:N[1],B=D[0],H=F?D[1]:D[2],L=F?D[2]:1,G=F?1:D[1],U=t.makeOutput(m.inShape,"float32"),j=t.dataIdMap.get(U.dataId).id,q=t.dataIdMap.get(u.dataId).id,V=t.dataIdMap.get(i.dataId).id;return ge(q,V,h,b,y,g,v,_,I,w,k,S,M,A,x,E,P,C,W,O,T,z,B,H,L,G,j),U}};var we,Se={kernelName:n.Conv3D,backendName:"wasm",setupFunc:function(e){ke=e.wasm.cwrap(n.Conv3D,null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.x,i=t.filter,s=r.strides,o=r.pad,d=r.dilations;if("float32"!==u.dtype)throw new Error("Tensor x must have dtype float32, got ".concat(u.dtype));if("float32"!==i.dtype)throw new Error("Tensor filter must have dtype float32, got ".concat(i.dtype));var p=n.backend_util.computeConv3DInfo(u.shape,i.shape,s,d,o),l=a.makeOutput(p.outShape,u.dtype);return ke(a.dataIdMap.get(u.dataId).id,a.dataIdMap.get(i.dataId).id,a.dataIdMap.get(l.dataId).id,p.batchSize,p.inDepth,p.inHeight,p.inWidth,p.inChannels,p.outDepth,p.outHeight,p.outWidth,p.outChannels,p.strideDepth,p.strideHeight,p.strideWidth,p.dilationDepth,p.dilationHeight,p.dilationWidth,p.filterDepth,p.filterHeight,p.filterWidth,p.padInfo.front,p.padInfo.top,p.padInfo.left),l}};var Me,Ae={kernelName:n.Conv3DBackpropFilterV2,backendName:"wasm",setupFunc:function(e){we=e.wasm.cwrap(n.Conv3DBackpropFilterV2,null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.x,i=t.dy,s=r.strides,o=r.pad,d=r.filterShape;if("float32"!==u.dtype)throw new Error("Tensor dy must have dtype float32, got ".concat(u.dtype));if("float32"!==i.dtype)throw new Error("Tensor filter must have dtype float32, got ".concat(i.dtype));var p=n.backend_util.computeConv3DInfo(u.shape,d,s,1,o),l=a.makeOutput(p.filterShape,i.dtype);return we(a.dataIdMap.get(u.dataId).id,a.dataIdMap.get(i.dataId).id,a.dataIdMap.get(l.dataId).id,p.batchSize,p.inDepth,p.inHeight,p.inWidth,p.inChannels,p.outDepth,p.outHeight,p.outWidth,p.outChannels,p.strideDepth,p.strideHeight,p.strideWidth,p.dilationDepth,p.dilationHeight,p.dilationWidth,p.filterDepth,p.filterHeight,p.filterWidth,p.padInfo.front,p.padInfo.top,p.padInfo.left),l}};var xe,Fe,Ne={kernelName:n.Conv3DBackpropInputV2,backendName:"wasm",setupFunc:function(e){Me=e.wasm.cwrap(n.Conv3DBackpropInputV2,null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.dy,i=t.filter,s=r.pad,o=r.strides,d=r.inputShape;if("float32"!==u.dtype)throw new Error("Tensor dy must have dtype float32, got ".concat(u.dtype));if("float32"!==i.dtype)throw new Error("Tensor filter must have dtype float32, got ".concat(i.dtype));var p=n.backend_util.computeConv3DInfo(d,i.shape,o,1,s),l=a.makeOutput(p.inShape,u.dtype);return Me(a.dataIdMap.get(i.dataId).id,a.dataIdMap.get(u.dataId).id,a.dataIdMap.get(l.dataId).id,p.batchSize,p.inDepth,p.inHeight,p.inWidth,p.inChannels,p.outDepth,p.outHeight,p.outWidth,p.outChannels,p.strideDepth,p.strideHeight,p.strideWidth,p.dilationDepth,p.dilationHeight,p.dilationWidth,p.filterDepth,p.filterHeight,p.filterWidth,p.padInfo.front,p.padInfo.top,p.padInfo.left),l}},De=y(n.Cos),Re=y(n.Cosh);!function(e){e[e.bilinear=0]="bilinear",e[e.nearest=1]="nearest"}(xe||(xe={}));var Ee,Pe={kernelName:n.CropAndResize,backendName:"wasm",setupFunc:function(e){Fe=e.wasm.cwrap(n.CropAndResize,null,["number","number","number","number","array","number","number","number","number","number"])},kernelFunc:function(e){var n,t=e.backend,a=e.inputs,r=e.attrs,u=r.method,i=r.extrapolationValue,s=r.cropSize,o=a.image,d=a.boxes,p=a.boxInd,l=d.shape[0],c=f(s,2),m=c[0],h=c[1],b=[l,m,h,o.shape[3]],y=t.dataIdMap.get(o.dataId);"float32"!==o.dtype&&(n=le({backend:t,inputs:{x:o},attrs:{dtype:"float32"}}),y=t.dataIdMap.get(n.dataId));var _=y.id,g=t.dataIdMap.get(d.dataId).id,v=t.dataIdMap.get(p.dataId).id,k=t.makeOutput(b,"float32"),I=t.dataIdMap.get(k.dataId).id,w=new Uint8Array(new Int32Array(o.shape).buffer);return Fe(_,g,v,l,w,m,h,xe[u],i,I),null!=n&&t.disposeData(n.dataId),k}};var Ce,We={kernelName:n.Cumprod,backendName:"wasm",setupFunc:function(e){Ee=e.wasm.cwrap(n.Cumprod,null,["number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.x,i=r.axis,o=r.exclusive,d=r.reverse,p=u.shape.length;n.util.assert("float32"===u.dtype||"int32"===u.dtype,(function(){return"cumprod does not support ".concat(u.dtype," tensors in the WASM backend")}));var l=n.backend_util.getAxesPermutation([i],p),c=u;null!==l&&(c=F({inputs:{x:u},attrs:{perm:l},backend:a}));var m=n.backend_util.getInnerMostAxes(1,p)[0];n.backend_util.assertAxesAreInnerMostDims("cumprod",[m],p);var f=a.makeOutput(c.shape,c.dtype),h=c.shape[m],b=a.dataIdMap.get(c.dataId).id,y=a.dataIdMap.get(f.dataId).id;Ee(b,o?1:0,d?1:0,h,y,s[u.dtype]);var _=f;return null!==l&&(_=F({inputs:{x:f},attrs:{perm:n.backend_util.getUndoAxesPermutation(l)},backend:a}),a.disposeData(c.dataId),a.disposeData(f.dataId)),_}};var Oe,Te={kernelName:n.Cumsum,backendName:"wasm",setupFunc:function(e){Ce=e.wasm.cwrap(n.Cumsum,null,["number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.x,i=r.axis,o=r.exclusive,d=r.reverse,p=u.shape.length;n.util.assert("float32"===u.dtype||"int32"===u.dtype,(function(){return"cumsum does not support ".concat(u.dtype," tensors in the WASM backend")}));var l=n.backend_util.getAxesPermutation([i],p),c=u;null!==l&&(c=F({inputs:{x:u},attrs:{perm:l},backend:a}));var m=n.backend_util.getInnerMostAxes(1,p)[0];n.backend_util.assertAxesAreInnerMostDims("cumsum",[m],p);var f=a.makeOutput(c.shape,c.dtype),h=c.shape[m],b=a.dataIdMap.get(c.dataId).id,y=a.dataIdMap.get(f.dataId).id;Ce(b,o?1:0,d?1:0,h,y,s[u.dtype]);var _=f;return null!==l&&(_=F({inputs:{x:f},attrs:{perm:n.backend_util.getUndoAxesPermutation(l)},backend:a}),a.disposeData(c.dataId),a.disposeData(f.dataId)),_}};var ze,Be={kernelName:n.DenseBincount,backendName:"wasm",setupFunc:function(e){Oe=e.wasm.cwrap("DenseBincount",null,["number","array","number","number","boolean","number","number","boolean","number"])},kernelFunc:function(e){var n=e.backend,t=e.inputs,a=e.attrs,r=t.x,u=t.weights,i=a.size,o=a.binaryOutput,d=0!==u.shape.reduce((function(e,n){return e*n}),1),p=1===r.shape.length?[i]:[r.shape[0],i],l=n.makeOutput(p,u.dtype);function c(e){return n.dataIdMap.get(e.dataId).id}return Oe(c(r),new Uint8Array(new Int32Array(r.shape).buffer),r.shape.length,i,d,c(u),s[u.dtype],o,c(l)),l}};var He,Le={kernelName:n.DepthToSpace,backendName:"wasm",setupFunc:function(e){ze=e.wasm.cwrap(n.DepthToSpace,null,["number","number","number","array","number","array","array","number","number"])},kernelFunc:function(e){var t=e.backend,a=e.inputs,r=e.attrs,u=a.x,i=r.blockSize,s=r.dataFormat,o=u.shape[0],d=("NHWC"===s?u.shape[1]:u.shape[2])*i,p=("NHWC"===s?u.shape[2]:u.shape[3])*i,l=("NHWC"===s?u.shape[3]:u.shape[1])/(i*i),c="NHWC"===s?[o,d,p,l]:[o,l,d,p],m=t.makeOutput(c,"float32"),f=t.dataIdMap.get(u.dataId).id,h=new Uint8Array(new Int32Array(n.util.computeStrides(u.shape)).buffer),b=new Uint8Array(new Int32Array(c).buffer),y=new Uint8Array(new Int32Array(n.util.computeStrides(c)).buffer),_=t.dataIdMap.get(m.dataId).id;return ze(f,i,"NHWC"===s?1:0,h,u.shape.length-1,b,y,c.length,_),m}};var Ge,Ue={kernelName:n.DepthwiseConv2dNative,backendName:"wasm",setupFunc:function(e){He=e.wasm.cwrap(n.DepthwiseConv2dNative,null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.attrs,r=e.backend,u=t.x,i=t.filter,s=r.dataIdMap.get(u.dataId).id,o=r.dataIdMap.get(i.dataId).id,d=a.strides,p=a.dilations,l=a.pad,c=a.dimRoundingMode,m=null==p?[1,1]:p,f=n.backend_util.computeConv2DInfo(u.shape,i.shape,d,m,l,c,!0),h=f.filterHeight,b=f.filterWidth,y=f.padInfo.top,_=f.padInfo.right,g=f.padInfo.bottom,v=f.padInfo.left,k=f.dilationHeight,I=f.dilationWidth,w=f.strideHeight,S=f.strideWidth,M=f.inChannels,A=f.outChannels,x="SAME"===f.padInfo.type?1:0;if("channelsLast"!==f.dataFormat)throw new Error("wasm backend DepthwiseConv2dNative does not support dataFormat:'"+"".concat(f.dataFormat,"'. Please use 'channelsLast'."));var F=r.makeOutput(f.outShape,"float32"),N=r.dataIdMap.get(F.dataId).id;return He(s,u.shape[0],u.shape[1],u.shape[2],o,h,b,y,_,g,v,x,k,I,w,S,M,A,N),F}};var je,qe={kernelName:n.Diag,backendName:"wasm",setupFunc:function(e){Ge=e.wasm.cwrap("Diag",null,["number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.backend,r=t.x,u=n.util.sizeFromShape(r.shape),i=a.makeOutput(h(h([],f(r.shape),!1),f(r.shape),!1),r.dtype);return Ge(a.dataIdMap.get(r.dataId).id,s[r.dtype],u,a.dataIdMap.get(i.dataId).id),i}};var Ve,Ke={kernelName:n.Dilation2D,backendName:"wasm",setupFunc:function(e){je=e.wasm.cwrap(n.Dilation2D,null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.x,i=t.filter,o=r.strides,d=r.pad,p=r.dilations;if(u.dtype!==i.dtype)throw new Error("Dilation2D error: x must have the same dtype as filter. Got ".concat(u.dtype," and ").concat(i.dtype));var l=n.backend_util.computeDilation2DInfo(u.shape,i.shape,o,d,"NHWC",p),c=a.makeOutput(l.outShape,u.dtype);return je(a.dataIdMap.get(u.dataId).id,a.dataIdMap.get(i.dataId).id,a.dataIdMap.get(c.dataId).id,s[u.dtype],l.batchSize,l.inChannels,l.inHeight,l.inWidth,l.outHeight,l.outWidth,l.strideHeight,l.strideWidth,l.dilationHeight,l.dilationWidth,l.filterHeight,l.filterWidth,l.padInfo.top,l.padInfo.left),c}};var Xe,Qe={kernelName:n.Dilation2DBackpropFilter,backendName:"wasm",setupFunc:function(e){Ve=e.wasm.cwrap(n.Dilation2DBackpropFilter,null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.x,i=t.filter,o=t.dy,d=r.strides,p=r.pad,l=r.dilations;if(u.dtype!==i.dtype||u.dtype!==o.dtype)throw new Error("Dilation2DBackpropFilter error: x must have the same dtype as filter and dy. Got ".concat(u.dtype,", ").concat(i.dtype,", and ").concat(o.dtype));var c=n.backend_util.computeDilation2DInfo(u.shape,i.shape,d,p,"NHWC",l),m=a.makeOutput(i.shape,i.dtype);return Ve(a.dataIdMap.get(u.dataId).id,a.dataIdMap.get(i.dataId).id,a.dataIdMap.get(o.dataId).id,a.dataIdMap.get(m.dataId).id,s[u.dtype],c.batchSize,c.inChannels,c.inHeight,c.inWidth,c.outHeight,c.outWidth,c.strideHeight,c.strideWidth,c.dilationHeight,c.dilationWidth,c.filterHeight,c.filterWidth,c.padInfo.top,c.padInfo.left),m}};var Je,Ze={kernelName:n.Dilation2DBackpropInput,backendName:"wasm",setupFunc:function(e){Xe=e.wasm.cwrap(n.Dilation2DBackpropInput,null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.x,i=t.filter,o=t.dy,d=r.strides,p=r.pad,l=r.dilations;if(u.dtype!==i.dtype||u.dtype!==o.dtype)throw new Error("Dilation2DBackpropInput error: x must have the same dtype as filter and dy. Got ".concat(u.dtype,", ").concat(i.dtype,", and ").concat(o.dtype));var c=n.backend_util.computeDilation2DInfo(u.shape,i.shape,d,p,"NHWC",l),m=a.makeOutput(u.shape,u.dtype);return Xe(a.dataIdMap.get(u.dataId).id,a.dataIdMap.get(i.dataId).id,a.dataIdMap.get(o.dataId).id,a.dataIdMap.get(m.dataId).id,s[u.dtype],c.batchSize,c.inChannels,c.inHeight,c.inWidth,c.outHeight,c.outWidth,c.strideHeight,c.strideWidth,c.dilationHeight,c.dilationWidth,c.filterHeight,c.filterWidth,c.padInfo.top,c.padInfo.left),m}},Ye=y(n.Elu);var $e={kernelName:n.EluGrad,backendName:"wasm",setupFunc:function(e){Je=e.wasm.cwrap(n.EluGrad,null,["number","number","number"])},kernelFunc:function(e){var n=e.inputs,t=e.backend,a=n.dy,r=n.y,u=t.makeOutput(r.shape,"float32"),i=function(e){return t.dataIdMap.get(e.dataId).id};return Je(i(r),i(a),i(u)),u}},en=k(n.Equal,0,"bool"),nn=y(n.Erf),tn=y(n.Exp,"float32");function an(e){var t=e.inputs,a=e.attrs,r=e.backend,u=t.input,i=a.dim,s=u.shape.length,o=u.shape.slice(),d=i;return i<0&&(n.util.assert(-(s+1)<=i,(function(){return"Axis must be in the interval [".concat(-(s+1),", ").concat(s,"]")})),d=s+i+1),o.splice(d,0,1),Z({inputs:{x:u},backend:r,attrs:{shape:o}})}var rn={kernelName:n.ExpandDims,backendName:"wasm",kernelFunc:an},un=y(n.Expm1,"float32");function sn(e){var t=e.attrs,a=t.shape,r=t.value,u=e.backend,i=e.attrs.dtype;i=i||n.util.inferDtype(r);var s=u.makeOutput(a,i);return u.typedArrayFromHeap(s).fill(r),s}var on,dn={kernelName:n.Fill,backendName:"wasm",kernelFunc:sn};var pn,ln={kernelName:n.FlipLeftRight,backendName:"wasm",kernelFunc:function(e){var n=e.inputs,t=e.backend,a=n.image,r=t.makeOutput(a.shape,a.dtype),u=t.dataIdMap.get(a.dataId).id,i=t.dataIdMap.get(r.dataId).id,s=f(a.shape,4),o=s[0],d=s[1],p=s[2],l=s[3];return on(u,o,d,p,l,i),r},setupFunc:function(e){on=e.wasm.cwrap(n.FlipLeftRight,null,["number","number","number","number","number","number"])}},cn=y(n.Floor),mn=k(n.FloorDiv);var fn,hn={kernelName:n.FusedBatchNorm,backendName:"wasm",setupFunc:function(e){pn=e.wasm.cwrap(n.FusedBatchNorm,null,["number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.backend,a=e.inputs,r=e.attrs.varianceEpsilon,u=a.x,i=a.mean,s=a.variance,o=a.offset,d=a.scale,p=t.dataIdMap.get(u.dataId).id,l=t.dataIdMap.get(i.dataId).id,c=t.dataIdMap.get(s.dataId).id,m=null!=o?t.dataIdMap.get(o.dataId).id:0,f=null!=d?t.dataIdMap.get(d.dataId).id:0,h=t.makeOutput(u.shape,u.dtype);if(0===n.util.sizeFromShape(u.shape))return h;var b=t.dataIdMap.get(h.dataId).id;return pn(p,l,c,m,f,r,b),h}};var bn,yn={kernelName:n.FusedConv2D,backendName:"wasm",setupFunc:function(e){fn=e.wasm.cwrap(n.FusedConv2D,null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.attrs,r=e.backend,u=t.x,i=t.filter,s=t.bias,d=t.preluActivationWeights,p=a.strides,l=a.pad,c=a.dilations,m=a.dataFormat,f=a.dimRoundingMode,h=a.activation,b=a.leakyreluAlpha,y=n.backend_util.computeConv2DInfo(u.shape,i.shape,p,c,l,f),_=o[h];if(null==_)throw new Error("".concat(h," activation not yet supported for FusedConv2D ")+"in the wasm backend.");var g=r.dataIdMap.get(u.dataId).id,v=r.dataIdMap.get(i.dataId).id,k=y.outChannels,I=0;if(null!=s){var w=r.dataIdMap.get(s.dataId);if(1!==w.shape.length)throw new Error("FusedConv2D only supports rank-1 bias but got "+"rank ".concat(w.shape.length,"."));if(w.shape[0]!==k)throw new Error("FusedConv2D bias shape (".concat(w.shape,") does not ")+"match the number of output channels (".concat(k,")"));I=w.id}var S=y.filterHeight,M=y.filterWidth,A=y.padInfo.top,x=y.padInfo.right,F=y.padInfo.bottom,N=y.padInfo.left,D=y.dilationHeight,R=y.dilationWidth,E=y.strideHeight,P=y.strideWidth,C=y.inChannels,W="SAME"===y.padInfo.type?1:0,O=y.batchSize,T=y.inHeight,z=y.inWidth;if("NHWC"!==m)throw new Error("wasm backend FusedConv2D does not support dataFormat:'"+"".concat(m,"'. Please use 'NHWC'."));var B=r.makeOutput(y.outShape,"float32"),H=r.dataIdMap.get(B.dataId).id,L=null==d?0:r.dataIdMap.get(d.dataId).id;return fn(g,O,T,z,v,S,M,I,A,x,F,N,W,D,R,E,P,C,k,_,L,b||0,H),B}};var _n,gn={kernelName:n.FusedDepthwiseConv2D,backendName:"wasm",setupFunc:function(e){bn=e.wasm.cwrap(n.FusedDepthwiseConv2D,null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.attrs,r=e.backend,u=t.x,i=t.filter,s=t.bias,d=t.preluActivationWeights,p=a.strides,l=a.pad,c=a.dilations,m=a.dataFormat,f=a.dimRoundingMode,h=a.activation,b=a.leakyreluAlpha,y=n.backend_util.computeConv2DInfo(u.shape,i.shape,p,c,l,f,!0),_=o[h];if(null==_)throw new Error("".concat(h," activation not yet supported for FusedDepthwiseConv2D ")+"in the wasm backend.");var g=r.dataIdMap.get(u.dataId).id,v=r.dataIdMap.get(i.dataId).id,k=y.outChannels,I=0;if(null!=s){var w=r.dataIdMap.get(s.dataId);if(1!==w.shape.length)throw new Error("FusedDepthwiseConv2D only supports rank-1 bias but got "+"rank ".concat(w.shape.length,"."));if(w.shape[0]!==k)throw new Error("FusedDepthwiseConv2D bias shape (".concat(w.shape,") does not ")+"match the number of output channels (".concat(k,")"));I=w.id}var S=y.filterHeight,M=y.filterWidth,A=y.padInfo.top,x=y.padInfo.right,F=y.padInfo.bottom,N=y.padInfo.left,D=y.dilationHeight,R=y.dilationWidth,E=y.strideHeight,P=y.strideWidth,C=y.inChannels,W="SAME"===y.padInfo.type?1:0,O=y.batchSize,T=y.inHeight,z=y.inWidth;if("NHWC"!==m)throw new Error("wasm backend FusedDepthwiseConv2D does not support dataFormat:'"+"".concat(m,"'. Please use 'NHWC'."));var B=r.makeOutput(y.outShape,"float32"),H=r.dataIdMap.get(B.dataId).id,L=null==d?0:r.dataIdMap.get(d.dataId).id;return bn(g,O,T,z,v,S,M,I,A,x,F,N,W,D,R,E,P,C,k,_,L,b||0,H),B}};var vn,kn={kernelName:n.GatherNd,backendName:"wasm",setupFunc:function(e){_n=e.wasm.cwrap(n.GatherNd,null,["number","number","number","number","number","number","array","number"])},kernelFunc:function(e){var t=e.backend,a=e.inputs,r=a.params,u=a.indices,i=f(n.gather_util.prepareAndValidate(r,u),4),o=i[0],d=i[1],p=i[2],l=i[3],c=t.makeOutput(o,r.dtype);if(0===d)return c;var m=u.shape,h=m[m.length-1],b=t.dataIdMap.get(r.dataId).id,y=t.dataIdMap.get(u.dataId).id,_=new Uint8Array(new Int32Array(l).buffer),g=t.dataIdMap.get(c.dataId).id;return _n(b,s[r.dtype],y,d,h,p,_,g),c}};var In,wn={kernelName:n.GatherV2,backendName:"wasm",setupFunc:function(e){vn=e.wasm.cwrap("Gather",null,["number","number","array","number","number","number","array","number"])},kernelFunc:function(e){for(var t=e.backend,a=e.inputs,r=e.attrs,u=a.x,i=a.indices,o=r.axis,d=r.batchDims,p=n.util.parseAxisParam(o,u.shape)[0],l=t.readSync(i.dataId),c=u.shape[p],m=function(e){var t=l[e];n.util.assert(t<=c-1&&t>=0,(function(){return"GatherV2: the index value ".concat(t," is not in [0, ").concat(c-1,"]")}))},f=0;f<l.length;++f)m(f);var h=n.backend_util.segment_util.collectGatherOpShapeInfo(u,i,p,d),b=Z({inputs:{x:u},attrs:{shape:[h.batchSize,h.outerSize,h.dimSize,h.sliceSize]},backend:t}),y=n.util.sizeFromShape(i.shape),_=Z({inputs:{x:i},attrs:{shape:[h.batchSize,y/h.batchSize]},backend:t}),g=[h.batchSize,h.outerSize,y/h.batchSize,h.sliceSize],v=t.makeOutput(g,u.dtype);if(0===n.util.sizeFromShape(u.shape))return v;var k=b.shape.length-1,I=t.dataIdMap.get(b.dataId).id,w=t.dataIdMap.get(_.dataId).id,S=t.dataIdMap.get(v.dataId).id,M=new Uint8Array(new Int32Array(n.util.computeStrides(b.shape)).buffer),A=new Uint8Array(new Int32Array(n.util.computeStrides(g)).buffer);return vn(I,s[u.dtype],M,k,w,h.batchSize,A,S),t.disposeData(b.dataId),t.disposeData(_.dataId),v.shape=h.outputShape,v}},Sn=k(n.Greater,0,"bool"),Mn=k(n.GreaterEqual,0,"bool"),An=y(n.IsFinite,"bool"),xn=y(n.IsInf,"bool"),Fn=y(n.IsNan,"bool");var Nn,Dn={kernelName:n.LeakyRelu,backendName:"wasm",setupFunc:function(e){In=e.wasm.cwrap(n.LeakyRelu,null,["number","number","number","number"])},kernelFunc:function(e){var t=e.inputs.x,a=e.attrs.alpha,r=e.backend,u=r.dataIdMap.get(t.dataId).id,i=r.makeOutput(t.shape,"float32");if(0!==n.util.sizeFromShape(t.shape)){var o=r.dataIdMap.get(i.dataId).id;In(u,s[t.dtype],a,o)}return i}},Rn=k(n.Less,0,"bool"),En=k(n.LessEqual,0,"bool");var Pn,Cn={kernelName:n.LinSpace,backendName:"wasm",setupFunc:function(e){Nn=e.wasm.cwrap(n.LinSpace,null,["number","number","number","number"])},kernelFunc:function(e){var n=e.attrs,t=e.backend,a=n.start,r=n.stop,u=n.num,i=Math.floor(u),s=t.makeOutput([i],"float32");return Nn(t.dataIdMap.get(s.dataId).id,a,r,i),s}},Wn=y(n.Log),On=y(n.Log1p),Tn=k(n.LogicalAnd,0,"bool"),zn=y(n.LogicalNot),Bn=k(n.LogicalOr,0,"bool"),Hn=k(n.LogicalXor,0,"bool");var Ln,Gn={kernelName:n.LRN,backendName:"wasm",setupFunc:function(e){Pn=e.wasm.cwrap(n.LRN,null,["number","number","number","number","number","number","number"])},kernelFunc:function(e){var n=e.inputs,t=e.backend,a=e.attrs,r=n.x,u=a.depthRadius,i=a.bias,s=a.alpha,o=a.beta;if("float32"!==r.dtype)throw new Error("LRN error: x must have dtype float32");var d=t.makeOutput(r.shape,r.dtype);return Pn(t.dataIdMap.get(r.dataId).id,t.dataIdMap.get(d.dataId).id,r.shape[3],u,i,s,o),d}};var Un,jn={kernelName:n.LRNGrad,backendName:"wasm",setupFunc:function(e){Ln=e.wasm.cwrap(n.LRNGrad,null,["number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var n=e.inputs,t=e.backend,a=e.attrs,r=n.x,u=n.y,i=n.dy,s=a.depthRadius,o=a.bias,d=a.alpha,p=a.beta;if("float32"!==r.dtype||"float32"!==u.dtype||"float32"!==i.dtype)throw new Error("LRNGrad error: x, y, and dy must have dtype float32");var l=t.makeOutput(r.shape,r.dtype);return Ln(t.dataIdMap.get(r.dataId).id,t.dataIdMap.get(u.dataId).id,t.dataIdMap.get(i.dataId).id,t.dataIdMap.get(l.dataId).id,i.shape[3],s,o,d,p),l}};var qn,Vn={kernelName:n.Max,backendName:"wasm",setupFunc:function(e){Un=e.wasm.cwrap(n.Max,null,["number","number","number","number"])},kernelFunc:function(e){var t=e.backend,a=e.inputs,r=e.attrs,u=r.reductionIndices,i=r.keepDims,o=a.x,d=t.dataIdMap.get(o.dataId).id,p=o,l=R(o,u,t),c=l.transposed,m=l.axes,h=l.originalAxes,b=l.inputWasTransposed;b&&(p=c,d=t.dataIdMap.get(c.dataId).id);var y=p.shape.length;n.backend_util.assertAxesAreInnerMostDims("max",m,y);var _=f(n.backend_util.computeOutAndReduceShapes(p.shape,m),2),g=_[0],v=_[1],k=n.util.sizeFromShape(v),I=t.makeOutput(g,o.dtype);if(0!==n.util.sizeFromShape(p.shape)){var w=t.dataIdMap.get(I.dataId).id;Un(d,s[o.dtype],k,w)}if(b&&t.disposeData(c.dataId),i){var S=n.backend_util.expandShapeToKeepDim(I.shape,h);I.shape=S}return I}},Kn=k(n.Maximum);var Xn,Qn={kernelName:n.MaxPool,backendName:"wasm",setupFunc:function(e){qn=e.wasm.cwrap(n.MaxPool,null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.attrs,r=e.backend,u=t.x,i=r.dataIdMap.get(u.dataId).id;n.util.assert("float32"===u.dtype,(function(){return"Error in MaxPool: only float32 input is supported. Got ".concat(u.dtype,".")}));var s=a.filterSize,o=a.strides,d=a.pad,p=a.dimRoundingMode,l=n.backend_util.computePool2DInfo(u.shape,s,o,1,d,p),c=l.filterHeight,m=l.filterWidth,f=l.padInfo.top,h=l.padInfo.right,b=l.padInfo.bottom,y=l.padInfo.left,_=l.dilationHeight,g=l.dilationWidth,v=l.strideHeight,k=l.strideWidth,I=l.inChannels,w=l.outChannels;if("channelsLast"!==l.dataFormat)throw new Error("wasm backend does not support dataFormat:'"+"".concat(l.dataFormat,"'. Please use 'channelsLast'."));var S=r.makeOutput(l.outShape,"float32"),M=r.dataIdMap.get(S.dataId).id;return qn(i,u.shape[0],u.shape[1],u.shape[2],c,m,f,h,b,y,_,g,v,k,I,w,M),S}};var Jn,Zn={kernelName:n.MaxPool3D,backendName:"wasm",setupFunc:function(e){Xn=e.wasm.cwrap("MaxPool3D",null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.x,i=r.filterSize,s=r.strides,o=r.pad,d=r.dimRoundingMode,p=r.dataFormat,l=n.backend_util.computePool3DInfo(u.shape,i,s,1,o,d,p),c=a.makeOutput(l.outShape,u.dtype);return Xn(a.dataIdMap.get(u.dataId).id,a.dataIdMap.get(c.dataId).id,l.batchSize,l.inChannels,l.inDepth,l.inHeight,l.inWidth,l.outDepth,l.outHeight,l.outWidth,l.strideDepth,l.strideHeight,l.strideWidth,l.dilationDepth,l.dilationHeight,l.dilationWidth,l.effectiveFilterDepth,l.effectiveFilterHeight,l.effectiveFilterWidth,l.padInfo.front,l.padInfo.top,l.padInfo.left),c}};var Yn,$n={kernelName:n.MaxPool3DGrad,backendName:"wasm",setupFunc:function(e){Jn=e.wasm.cwrap("MaxPool3DGrad",null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.dy,i=t.input,s=r.filterSize,o=r.strides,d=r.pad,p=r.dimRoundingMode,l=n.backend_util.computePool3DInfo(i.shape,s,o,1,d,p),c=a.makeOutput(i.shape,i.dtype);return Jn(a.dataIdMap.get(i.dataId).id,a.dataIdMap.get(u.dataId).id,a.dataIdMap.get(c.dataId).id,l.batchSize,l.inChannels,l.inDepth,l.inHeight,l.inWidth,l.outDepth,l.outHeight,l.outWidth,l.strideDepth,l.strideHeight,l.strideWidth,l.dilationDepth,l.dilationHeight,l.dilationWidth,l.effectiveFilterDepth,l.effectiveFilterHeight,l.effectiveFilterWidth,l.padInfo.front,l.padInfo.top,l.padInfo.left),c}};var et,nt={kernelName:n.MaxPoolGrad,backendName:"wasm",setupFunc:function(e){Yn=e.wasm.cwrap("MaxPoolGrad",null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.dy,i=t.input,s=r.filterSize,o=r.strides,d=r.pad,p=r.dimRoundingMode,l=n.backend_util.computePool2DInfo(i.shape,s,o,1,d,p),c=a.makeOutput(i.shape,i.dtype);return Yn(a.dataIdMap.get(i.dataId).id,a.dataIdMap.get(u.dataId).id,a.dataIdMap.get(c.dataId).id,l.batchSize,l.inChannels,l.inHeight,l.inWidth,l.outHeight,l.outWidth,l.strideHeight,l.strideWidth,l.dilationHeight,l.dilationWidth,l.effectiveFilterHeight,l.effectiveFilterWidth,l.padInfo.top,l.padInfo.left),c}};var tt,at={kernelName:n.MaxPoolWithArgmax,backendName:"wasm",setupFunc:function(e){et=e.wasm.cwrap("MaxPoolWithArgmax",null,["number","number","number","number","boolean","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.x,i=r.filterSize,o=r.strides,d=r.pad,p=r.includeBatchInIndex;n.util.assert(4===u.shape.length,(function(){return"Error in maxPool: input must be rank 4 but got rank ".concat(u.shape.length,".")}));var l=[1,1];n.util.assert(n.backend_util.eitherStridesOrDilationsAreOne(o,l),(function(){return"Error in maxPool: Either strides or dilations must be 1. "+"Got strides ".concat(o," and dilations '").concat(l,"'")}));var c=n.backend_util.computePool2DInfo(u.shape,i,o,[1,1],d),m=a.makeOutput(c.outShape,u.dtype),f=a.makeOutput(c.outShape,"int32");return et(a.dataIdMap.get(u.dataId).id,a.dataIdMap.get(m.dataId).id,a.dataIdMap.get(f.dataId).id,s[u.dtype],p,c.batchSize,c.inChannels,c.inHeight,c.inWidth,c.outHeight,c.outWidth,c.strideHeight,c.strideWidth,c.dilationHeight,c.dilationWidth,c.effectiveFilterHeight,c.effectiveFilterWidth,c.padInfo.top,c.padInfo.left),[m,f]}};var rt,ut={kernelName:n.Mean,backendName:"wasm",setupFunc:function(e){tt=e.wasm.cwrap(n.Mean,null,["number, number, number"])},kernelFunc:function(e){var t=e.backend,a=e.inputs,r=e.attrs,u=r.axis,i=r.keepDims,s=a.x,o=t.dataIdMap.get(s.dataId).id,d=o,p=s,l=R(s,u,t),c=l.transposed,m=l.axes,h=l.originalAxes,b=l.inputWasTransposed,y=m;if(b){var _=t.dataIdMap.get(c.dataId).id;_!==o&&(p=c,d=_,y=n.backend_util.getInnerMostAxes(y.length,p.shape.length))}n.backend_util.assertAxesAreInnerMostDims("mean",y,p.shape.length);var g=f(n.backend_util.computeOutAndReduceShapes(p.shape,y),2),v=g[0],k=g[1],I=n.util.sizeFromShape(k),w=p;"float32"!==p.dtype&&(w=le({backend:t,inputs:{x:p},attrs:{dtype:"float32"}}),d=t.dataIdMap.get(w.dataId).id);var S=t.makeOutput(v,"float32");if(0!==n.util.sizeFromShape(p.shape)){var M=t.dataIdMap.get(S.dataId).id;tt(d,I,M)}if(b&&t.disposeData(c.dataId),i){var A=n.backend_util.expandShapeToKeepDim(S.shape,h);S.shape=A}return"float32"!==p.dtype&&t.disposeData(w.dataId),S}};var it,st,ot={kernelName:n.Min,backendName:"wasm",setupFunc:function(e){rt=e.wasm.cwrap(n.Min,null,["number","number","number","number"])},kernelFunc:function(e){var t=e.backend,a=e.inputs,r=e.attrs,u=r.axis,i=r.keepDims,o=a.x,d=t.dataIdMap.get(o.dataId).id,p=d,l=o,c=R(o,u,t),m=c.transposed,h=c.axes,b=c.originalAxes,y=c.inputWasTransposed;if(y){var _=t.dataIdMap.get(m.dataId).id;_!==d&&(l=m,p=_)}var g=l.shape.length;n.backend_util.assertAxesAreInnerMostDims("min",h,g);var v=f(n.backend_util.computeOutAndReduceShapes(l.shape,h),2),k=v[0],I=v[1],w=n.util.sizeFromShape(I),S=t.makeOutput(k,l.dtype);if(0!==n.util.sizeFromShape(l.shape)){var M=t.dataIdMap.get(S.dataId).id;rt(p,s[o.dtype],w,M)}if(y&&t.disposeData(m.dataId),i){var A=n.backend_util.expandShapeToKeepDim(S.shape,b);S.shape=A}return S}},dt=k(n.Minimum);!function(e){e[e.reflect=0]="reflect",e[e.symmetric=1]="symmetric"}(it||(it={}));var pt,lt={kernelName:n.MirrorPad,backendName:"wasm",kernelFunc:function(e){var n=e.inputs.x,t=e.backend,a=e.attrs,r=a.paddings,u=a.mode,i=r.map((function(e,t){return e[0]+n.shape[t]+e[1]})),o=t.dataIdMap.get(n.dataId).id,d=t.makeOutput(i,n.dtype),p=t.dataIdMap.get(d.dataId).id,l=new Uint8Array(new Int32Array(n.shape).buffer),c=r.map((function(e){return e[0]})),m=r.map((function(e){return e[1]})),f=new Uint8Array(new Int32Array(c).buffer),h=new Uint8Array(new Int32Array(m).buffer);return st(o,l,n.shape.length,s[n.dtype],f,h,it[u],p),d},setupFunc:function(e){st=e.wasm.cwrap(n.MirrorPad,null,["number","array","number","number","array","array","number","number"])}};function ct(e){var t=e.backend,a=e.inputs.logits,r=e.attrs.dim,u=t.dataIdMap.get(a.dataId).id,i=t.makeOutput(a.shape,a.dtype),s=t.dataIdMap.get(i.dataId).id,o=a.shape[r],d=n.util.sizeFromShape(a.shape)/o;return 0===n.util.sizeFromShape(i.shape)||pt(u,s,o,d),i}var mt,ft={kernelName:n.Softmax,backendName:"wasm",setupFunc:function(e){pt=e.wasm.cwrap(n.Softmax,null,["number","number","number","number"])},kernelFunc:ct};var ht,bt={kernelName:n.Multinomial,backendName:"wasm",setupFunc:function(e){mt=e.wasm.cwrap(n.Multinomial,null,["number","number","number","number","number","number"])},kernelFunc:function(e){var n=e.inputs,t=e.backend,a=e.attrs,r=n.logits,u=a.numSamples,i=a.seed,s=a.normalized;if("float32"!==r.dtype)throw new Error("Tensor logits must have dtype float32, got ".concat(r.dtype));var o=s?r:ct({inputs:{logits:r},backend:t,attrs:{dim:r.shape.length-1}}),d=f(o.shape,2),p=d[0],l=d[1],c=t.makeOutput([p,u],"int32");return mt(t.dataIdMap.get(o.dataId).id,p,l,u,i,t.dataIdMap.get(c.dataId).id),s||t.disposeData(o.dataId),c}},yt=k(n.Mod),_t=k(n.Multiply),gt=y(n.Neg);function vt(e,n){var t=new Int32Array(e.wasm.HEAPU8.buffer,n,4),a=t[0],r=t[1],u=t[2],i=t[3];return e.wasm._free(n),{pSelectedIndices:a,selectedSize:r,pSelectedScores:u,pValidOutputs:i}}var kt,It={kernelName:n.NonMaxSuppressionV3,backendName:"wasm",setupFunc:function(e){ht=e.wasm.cwrap(n.NonMaxSuppressionV3,"number",["number","number","number","number","number"])},kernelFunc:function(e){var n=e.backend,t=e.inputs,a=e.attrs,r=a.iouThreshold,u=a.maxOutputSize,i=a.scoreThreshold,s=t.boxes,o=t.scores,d=n.dataIdMap.get(s.dataId).id,p=n.dataIdMap.get(o.dataId).id,l=vt(n,ht(d,p,u,r,i)),c=l.pSelectedIndices,m=l.selectedSize,f=l.pSelectedScores,h=l.pValidOutputs;return n.wasm._free(f),n.wasm._free(h),n.makeOutput([m],"int32",c)}};var wt,St={kernelName:n.NonMaxSuppressionV4,backendName:"wasm",setupFunc:function(e){kt=e.wasm.cwrap(n.NonMaxSuppressionV4,"number",["number","number","number","number","number","bool"])},kernelFunc:function(e){var n=e.backend,t=e.inputs,a=e.attrs,r=a.iouThreshold,u=a.maxOutputSize,i=a.scoreThreshold,s=a.padToMaxOutputSize,o=t.boxes,d=t.scores,p=n.dataIdMap.get(o.dataId).id,l=n.dataIdMap.get(d.dataId).id,c=vt(n,kt(p,l,u,r,i,s)),m=c.pSelectedIndices,f=c.selectedSize,h=c.pSelectedScores,b=c.pValidOutputs;return n.wasm._free(h),[n.makeOutput([f],"int32",m),n.makeOutput([],"int32",b)]}};var Mt,At={kernelName:n.NonMaxSuppressionV5,backendName:"wasm",setupFunc:function(e){wt=e.wasm.cwrap(n.NonMaxSuppressionV5,"number",["number","number","number","number","number","number"])},kernelFunc:function(e){var n=e.backend,t=e.inputs,a=e.attrs,r=a.iouThreshold,u=a.maxOutputSize,i=a.scoreThreshold,s=a.softNmsSigma,o=t.boxes,d=t.scores,p=n.dataIdMap.get(o.dataId).id,l=n.dataIdMap.get(d.dataId).id,c=vt(n,wt(p,l,u,r,i,s)),m=c.pSelectedIndices,f=c.selectedSize,h=c.pSelectedScores,b=c.pValidOutputs;return n.wasm._free(b),[n.makeOutput([f],"int32",m),n.makeOutput([f],"float32",h)]}},xt=k(n.NotEqual,0,"bool");var Ft={kernelName:n.OneHot,backendName:"wasm",setupFunc:function(e){Mt=e.wasm.cwrap(n.OneHot,null,["number","number","number","number","number"])},kernelFunc:function(e){var n=e.inputs,t=e.backend,a=e.attrs,r=n.indices,u=a.dtype,i=a.depth,s=a.onValue,o=a.offValue,d=t.makeOutput(h(h([],f(r.shape),!1),[i],!1),u),p=t.dataIdMap.get(d.dataId).id,l=t.dataIdMap.get(r.dataId).id;return Mt(l,i,s,o,p),d}};var Nt={kernelName:n.OnesLike,backendName:"wasm",kernelFunc:function(e){var n=e.inputs.x,t=e.backend,a=t.makeOutput(n.shape,n.dtype);return t.typedArrayFromHeap(a).fill(1),a}};var Dt,Rt={kernelName:n.Pack,backendName:"wasm",kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs.axis;if(1===t.length)return an({inputs:{input:t[0]},backend:a,attrs:{dim:r}});var u=t[0].shape,i=t[0].dtype;t.forEach((function(e){n.util.assertShapesMatch(u,e.shape,"All tensors passed to stack must have matching shapes"),n.util.assert(i===e.dtype,(function(){return"All tensors passed to stack must have matching dtypes"}))}));var s=[],o=be({inputs:t.map((function(e){var n=an({inputs:{input:e},backend:a,attrs:{dim:r}});return s.push(n),n})),backend:a,attrs:{axis:r}});return s.forEach((function(e){return a.disposeData(e.dataId)})),o}};var Et,Pt={kernelName:n.PadV2,backendName:"wasm",kernelFunc:function(e){var t=e.inputs.x,a=e.backend,r=e.attrs,u=r.paddings,i=r.constantValue,o=u.map((function(e,n){return e[0]+t.shape[n]+e[1]}));if(0===n.util.sizeFromShape(t.shape))return sn({backend:a,attrs:{shape:o,value:i,dtype:t.dtype}});var d=a.dataIdMap.get(t.dataId).id,p=a.makeOutput(o,t.dtype),l=a.dataIdMap.get(p.dataId).id,c=new Uint8Array(new Int32Array(t.shape).buffer),m=u.map((function(e){return e[0]})),f=u.map((function(e){return e[1]})),h=new Uint8Array(new Int32Array(m).buffer),b=new Uint8Array(new Int32Array(f).buffer);return Dt(d,c,t.shape.length,s[t.dtype],h,b,i,l),p},setupFunc:function(e){Dt=e.wasm.cwrap(n.PadV2,null,["number","array","number","number","array","array","number","number"])}},Ct=k(n.Pow);var Wt,Ot={kernelName:n.Prelu,backendName:"wasm",setupFunc:function(e){Et=e.wasm.cwrap(n.Prelu,null,["number","number","number"])},kernelFunc:function(e){var n=e.inputs,t=e.backend,a=n.x,r=n.alpha,u=t.dataIdMap.get(a.dataId).id,i=t.dataIdMap.get(r.dataId).id,s=u,o=a,d=o;"float32"!==o.dtype&&(d=le({backend:t,inputs:{x:a},attrs:{dtype:"float32"}}),s=t.dataIdMap.get(d.dataId).id);var p=t.makeOutput(a.shape,"float32"),l=t.dataIdMap.get(p.dataId).id;return Et(s,i,l),"float32"!==o.dtype&&t.disposeData(d.dataId),p}};var Tt,zt={kernelName:n.Prod,backendName:"wasm",setupFunc:function(e){Wt=e.wasm.cwrap(n.Prod,null,["number","number","number","number"])},kernelFunc:function(e){var t=e.backend,a=e.inputs,r=e.attrs,u=r.axis,i=r.keepDims,o=a.x,d=t.dataIdMap.get(o.dataId).id,p=d,l=o,c=R(o,u,t),m=c.transposed,h=c.axes,b=c.originalAxes,y=c.inputWasTransposed,_=h;if(y){var g=t.dataIdMap.get(m.dataId).id;g!==d&&(l=m,p=g,_=n.backend_util.getInnerMostAxes(_.length,l.shape.length))}n.backend_util.assertAxesAreInnerMostDims("prod",_,l.shape.length);var v=f(n.backend_util.computeOutAndReduceShapes(l.shape,_),2),k=v[0],I=v[1],w=n.util.sizeFromShape(I),S=t.makeOutput(k,l.dtype);if(0!==n.util.sizeFromShape(l.shape)){var M=t.dataIdMap.get(S.dataId).id;Wt(p,w,s[S.dtype],M)}if(y&&t.disposeData(m.dataId),i){var A=n.backend_util.expandShapeToKeepDim(S.shape,b);S.shape=A}return S}},Bt={kernelName:n.Range,backendName:"wasm",kernelFunc:function(e){var t=e.backend,a=e.attrs,r=a.start,u=a.stop,i=a.step,s=a.dtype,o=function(e,t,a,r){if(e===t||e<t&&a<0||t<e&&a>1)return n.util.makeZerosTypedArray(0,r);var u=Math.abs(Math.ceil((t-e)/a)),i=n.util.makeZerosTypedArray(u,r);t<e&&1===a&&(a=-1),i[0]=e;for(var s=1;s<i.length;s++)i[s]=i[s-1]+a;return i}(r,u,i,s),d=t.makeOutput([o.length],s);return t.typedArrayFromHeap(d).set(o),d}},Ht=k(n.RealDiv),Lt=y(n.Reciprocal),Gt=y(n.Relu),Ut=y(n.Relu6);var jt,qt={kernelName:n.ResizeBilinear,backendName:"wasm",setupFunc:function(e){Tt=e.wasm.cwrap(n.ResizeBilinear,null,["number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t,a=e.backend,r=e.inputs,u=e.attrs,i=r.images,s=u.alignCorners,o=u.halfPixelCenters,d=f(u.size,2),p=d[0],l=d[1],c=f(i.shape,4),m=c[0],h=c[1],b=c[2],y=c[3],_=[m,p,l,y],g=a.dataIdMap.get(i.dataId);"float32"!==g.dtype&&(t=le({backend:a,inputs:{x:i},attrs:{dtype:"float32"}}),g=a.dataIdMap.get(t.dataId));var v=g.id,k=a.makeOutput(_,"float32");if(0===n.util.sizeFromShape(i.shape))return k;var I=a.dataIdMap.get(k.dataId).id;return Tt(v,m,h,b,y,p,l,s?1:0,o?1:0,I),null!=t&&a.disposeData(t.dataId),k}};var Vt,Kt={kernelName:n.ResizeBilinearGrad,backendName:"wasm",setupFunc:function(e){jt=e.wasm.cwrap(n.ResizeBilinearGrad,null,["number","number","number","array","array","boolean"])},kernelFunc:function(e){var n,t=e.inputs,a=e.backend,r=e.attrs,u=t.images,i=t.dy,s=r.alignCorners,o=a.makeOutput(u.shape,"float32"),d=a.dataIdMap.get(u.dataId);return"float32"!==d.dtype&&(n=le({backend:a,inputs:{x:u},attrs:{dtype:"float32"}}),d=a.dataIdMap.get(n.dataId)),jt(a.dataIdMap.get(u.dataId).id,a.dataIdMap.get(i.dataId).id,a.dataIdMap.get(o.dataId).id,new Uint8Array(new Int32Array(u.shape).buffer),new Uint8Array(new Int32Array(i.shape).buffer),s),null!=n&&a.disposeData(n.dataId),o}};var Xt,Qt={kernelName:n.ResizeNearestNeighbor,backendName:"wasm",setupFunc:function(e){Vt=e.wasm.cwrap(n.ResizeNearestNeighbor,null,["number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.backend,a=e.inputs,r=e.attrs,u=a.images,i=r.alignCorners,s=r.halfPixelCenters,o=f(r.size,2),d=o[0],p=o[1],l=f(u.shape,4),c=l[0],m=l[1],h=l[2],b=l[3],y=[c,d,p,b],_=t.makeOutput(y,"float32");if(0===n.util.sizeFromShape(u.shape))return _;var g,v=t.dataIdMap.get(u.dataId);"float32"!==v.dtype&&(g=le({backend:t,inputs:{x:u},attrs:{dtype:"float32"}}),v=t.dataIdMap.get(g.dataId));var k=v.id,I=t.dataIdMap.get(_.dataId).id;return Vt(k,c,m,h,b,d,p,i?1:0,s?1:0,I),null!=g&&t.disposeData(g.dataId),_}};var Jt,Zt={kernelName:n.ResizeNearestNeighborGrad,backendName:"wasm",setupFunc:function(e){Xt=e.wasm.cwrap(n.ResizeNearestNeighborGrad,null,["number","number","number","array","array","boolean"])},kernelFunc:function(e){var n,t=e.inputs,a=e.backend,r=e.attrs,u=t.images,i=t.dy,s=r.alignCorners,o=a.makeOutput(u.shape,"float32"),d=a.dataIdMap.get(u.dataId);return"float32"!==d.dtype&&(n=le({backend:a,inputs:{x:u},attrs:{dtype:"float32"}}),d=a.dataIdMap.get(n.dataId)),Xt(a.dataIdMap.get(u.dataId).id,a.dataIdMap.get(i.dataId).id,a.dataIdMap.get(o.dataId).id,new Uint8Array(new Int32Array(u.shape).buffer),new Uint8Array(new Int32Array(i.shape).buffer),s),null!=n&&a.disposeData(n.dataId),o}};var Yt,$t={kernelName:n.Reverse,backendName:"wasm",kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.x,i=r.dims,s=n.util.parseAxisParam(i,u.shape);if(0===u.shape.length)return M({inputs:{x:u},backend:a});var o=a.makeOutput(u.shape,u.dtype),d=a.dataIdMap.get(u.dataId).id,p=a.dataIdMap.get(o.dataId).id,l=new Uint8Array(new Int32Array(s).buffer),c=new Uint8Array(new Int32Array(u.shape).buffer);Jt(d,l,s.length,c,u.shape.length,p);var m=Z({inputs:{x:o},attrs:{shape:u.shape},backend:a});return a.disposeData(o.dataId),m},setupFunc:function(e){Jt=e.wasm.cwrap(n.Reverse,null,["number","array","number","array","number","number"])}};var ea,na={kernelName:n.RotateWithOffset,backendName:"wasm",kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.image,i=r.radians,s=r.fillValue,o=r.center,d=a.makeOutput(u.shape,u.dtype),p=a.dataIdMap.get(u.dataId).id,l=a.dataIdMap.get(d.dataId).id,c=f(u.shape,4),m=c[0],b=c[1],y=c[2],_=c[3],g=f(n.backend_util.getImageCenter(o,b,y),2),v=g[0],k=g[1],I="number"==typeof s?[s,s,s,0===s?0:255]:h(h([],f(s),!1),[255],!1),w=new Uint8Array(new Int32Array(I).buffer);return Yt(p,m,b,y,_,i,v,k,w,I.length,l),d},setupFunc:function(e){Yt=e.wasm.cwrap(n.RotateWithOffset,null,["number","number","number","number","number","number","number","number","array","number","number"])}},ta=y(n.Round),aa=y(n.Rsqrt);var ra,ua={kernelName:n.ScatterNd,backendName:"wasm",setupFunc:function(e){ea=e.wasm.cwrap(n.ScatterNd,null,["number","number","number","number","number","number","array","number","number"])},kernelFunc:function(e){var t=e.backend,a=e.inputs,r=e.attrs,u=a.indices,i=a.updates,o=r.shape,d=t.makeOutput(o,i.dtype);if(0===n.util.sizeFromShape(o))return d;var p=n.scatter_util.calculateShapes(i,u,o),l=p.sliceRank,c=p.numUpdates,m=p.sliceSize,f=p.strides,h=p.outputSize,b=t.dataIdMap.get(u.dataId).id,y=t.dataIdMap.get(i.dataId).id,_=new Uint8Array(new Int32Array(f).buffer),g=t.dataIdMap.get(d.dataId).id;return ea(b,y,s[i.dtype],l,c,m,_,h,g),d}};var ia,sa={kernelName:n.SearchSorted,backendName:"wasm",setupFunc:function(e){ra=e.wasm.cwrap(n.SearchSorted,null,["number","number","number","number","number","number","bool","number"])},kernelFunc:function(e){var n=e.inputs,t=e.backend,a=e.attrs,r=n.sortedSequence,u=n.values,i=a.side;if(r.dtype!==u.dtype)throw new Error("SearchSorted error: sorted_sequence must have the same dtype as values. Got ".concat(r.dtype," and ").concat(u.dtype));var o=t.makeOutput(u.shape,"int32");function d(e){return t.dataIdMap.get(e.dataId).id}return ra(d(r),d(u),r.shape[0],r.shape[1],u.shape[1],s[r.dtype],"left"===i,d(o)),o}};var oa,da={kernelName:n.Select,backendName:"wasm",kernelFunc:function(e){var t=e.inputs,a=e.backend,r=t.condition,u=t.t,i=t.e,s=a.dataIdMap.get(r.dataId).id,o=a.dataIdMap.get(u.dataId).id,d=a.dataIdMap.get(i.dataId).id,p=a.makeOutput(u.shape,u.dtype),l=a.dataIdMap.get(p.dataId).id,c=r.shape.length,m=u.shape.length,f=0===c||c>1||1===m?1:n.util.sizeFromShape(u.shape.slice(1));return ia(s,o,d,f,l),p},setupFunc:function(e){ia=e.wasm.cwrap("SelectV2",null,["number","number","number","number","number"])}},pa=y(n.Selu);var la={kernelName:"Sigmoid",backendName:"wasm",setupFunc:function(e){oa=e.wasm.cwrap(n.Sigmoid,null,["number","number"])},kernelFunc:function(e){var t=e.backend,a=e.inputs.x,r=t.dataIdMap.get(a.dataId).id,u=t.makeOutput(a.shape,a.dtype),i=t.dataIdMap.get(u.dataId).id;return 0===n.util.sizeFromShape(u.shape)||oa(r,i),u}},ca=y(n.Sign),ma=y(n.Sin),fa=y(n.Sinh),ha=y(n.Softplus);var ba,ya={kernelName:n.SpaceToBatchND,backendName:"wasm",kernelFunc:function(e){var t=e.inputs,a=e.backend,r=e.attrs,u=t.x,i=r.blockShape,s=r.paddings,o=n.util.sizeFromShape(i),d=[[0,0]];d.push.apply(d,h([],f(s),!1));for(var p=1+i.length;p<u.shape.length;++p)d.push([0,0]);var l=Pt.kernelFunc({inputs:{x:u},backend:a,attrs:{paddings:d,constantValue:0}}),c=n.backend_util.getReshaped(l.shape,i,o,!1),m=n.backend_util.getPermuted(c.length,i.length,!1),b=n.backend_util.getReshapedPermuted(l.shape,i,o,!1),y=Z({inputs:{x:l},backend:a,attrs:{shape:c}}),_=F({inputs:{x:y},backend:a,attrs:{perm:m}}),g=Z({inputs:{x:_},backend:a,attrs:{shape:b}});return a.disposeData(l.dataId),a.disposeData(y.dataId),a.disposeData(_.dataId),g}};var _a,ga={kernelName:n.SparseFillEmptyRows,backendName:"wasm",setupFunc:function(e){ba=e.wasm.cwrap("SparseFillEmptyRows","number",["number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){var t,a=e.backend,r=e.inputs,u=r.indices,i=r.values,o=r.denseShape,d=r.defaultValue,p=u.shape[0],l=u.shape[1],c=a.readSync(o.dataId)[0],m=[p+c,l],f=a.dataIdMap.get(u.dataId).id,h=a.dataIdMap.get(i.dataId).id,b=a.dataIdMap.get(d.dataId).id,y=a.makeOutput(m,u.dtype),_=a.dataIdMap.get(y.dataId).id,g=a.makeOutput(m.slice(0,1),i.dtype),v=a.dataIdMap.get(g.dataId).id,k=a.makeOutput([c],"bool"),I=a.dataIdMap.get(k.dataId).id,w=a.makeOutput([p],u.dtype),S=a.dataIdMap.get(w.dataId).id,M=a.makeOutput([4],"int32"),A=a.dataIdMap.get(M.dataId).id,x=ba(f,h,s[i.dtype],p,c,l,b,_,v,I,S,A),F=a.readSync(M.dataId);switch(F[0]){case 1:t=n.backend_util.getSparseFillEmptyRowsIndicesDenseShapeMismatch(F[1]);break;case 2:t=n.backend_util.getSparseFillEmptyRowsNegativeIndexErrorMessage(F[1],F[2]);break;case 3:t=n.backend_util.getSparseFillEmptyRowsOutOfRangeIndexErrorMessage(F[1],F[2],F[3]);break;default:t=""}if(a.disposeData(M.dataId),t)throw a.disposeData(y.dataId),a.disposeData(g.dataId),a.disposeData(k.dataId),a.disposeData(w.dataId),new Error(t);var N=y,D=g;return x!==m[0]&&(N=re({inputs:{x:y},attrs:{begin:0,size:[x,l]},backend:a}),D=re({inputs:{x:g},attrs:{begin:0,size:x},backend:a}),a.disposeData(y.dataId),a.disposeData(g.dataId)),[N,D,k,w]}};var va,ka={kernelName:n.SparseReshape,backendName:"wasm",setupFunc:function(e){_a=e.wasm.cwrap(n.SparseReshape,null,["number","number","number","number","number","number","number"])},kernelFunc:function(e){var t=e.backend,a=e.inputs,r=a.inputIndices,u=a.inputShape,i=a.newShape;if(2!==r.shape.length)throw new Error("Input indices should be a matrix but received shape\n ".concat(r.shape));if(1!==u.shape.length)throw new Error("Input shape should be a vector but received shape\n ".concat(u.shape));if(1!==i.shape.length)throw new Error("Target shape should be a vector but received shape ".concat(i.shape));var s=t.dataIdMap.get(r.dataId).id,o=t.dataIdMap.get(u.dataId).id,d=t.dataIdMap.get(i.dataId).id,p=r.shape[0],l=n.util.sizeFromShape(i.shape),c=t.makeOutput([p,l],r.dtype),m=t.dataIdMap.get(c.dataId).id,f=t.makeOutput([l],i.dtype),h=t.dataIdMap.get(f.dataId).id,b=t.makeOutput([3],"int32"),y=t.dataIdMap.get(b.dataId).id;_a(s,o,d,p,m,h,y);var _,g=t.readSync(b.dataId);switch(g[0]){case 0:_=n.backend_util.getSparseReshapeMultipleNegativeOneOutputDimErrorMessage(g[1],g[2]);break;case 1:_=n.backend_util.getSparseReshapeNegativeOutputDimErrorMessage(g[1],g[2]);break;case 2:_=n.backend_util.getSparseReshapeEmptyTensorZeroOutputDimErrorMessage();break;case 3:var v=Array.from(t.readSync(u.dataId)),k=Array.from(t.readSync(f.dataId));_=n.backend_util.getSparseReshapeInputOutputMultipleErrorMessage(v,k);break;case 4:v=Array.from(t.readSync(u.dataId)),k=Array.from(t.readSync(f.dataId));_=n.backend_util.getSparseReshapeInputOutputMismatchErrorMessage(v,k);break;default:_=""}if(t.disposeData(b.dataId),_)throw t.disposeData(c.dataId),t.disposeData(f.dataId),new Error(_);return[c,f]}};function Ia(e){va=e.wasm.cwrap("SparseSegmentReduction",null,["number","number","number","number","number","number","number","number","number"])}function wa(e,t){var a=e.backend,r=e.inputs,u=r.data,i=r.indices,o=r.segmentIds,d=i.shape[0],p=a.readSync(o.dataId,d-1,d)[0],l=d>0?p+1:0;if(l<0)throw new Error(n.backend_util.getSparseSegmentReductionNegativeSegmentIdsErrorMessage());var c=u.shape.slice();c[0]=l;var m=a.dataIdMap.get(u.dataId).id,f=a.dataIdMap.get(i.dataId).id,h=a.dataIdMap.get(o.dataId).id,b=a.makeOutput(c,u.dtype),y=a.dataIdMap.get(b.dataId).id,_=a.makeOutput([4],"int32"),g=a.dataIdMap.get(_.dataId).id;va(m,s[u.dtype],u.shape[0],f,h,y,g,t,0);var v,k=a.readSync(_.dataId);switch(k[0]){case 0:v=n.backend_util.getSparseSegmentReductionNegativeSegmentIdsErrorMessage();break;case 1:v=n.backend_util.getSparseSegmentReductionNonIncreasingSegmentIdsErrorMessage();break;case 2:v=n.backend_util.getSparseSegmentReductionSegmentIdOutOfRangeErrorMessage(k[1],k[2]);break;case 3:v=n.backend_util.getSparseSegmentReductionIndicesOutOfRangeErrorMessage(k[1],k[2],k[3]);break;default:v=""}if(a.disposeData(_.dataId),v)throw a.disposeData(b.dataId),new Error(v);return b}var Sa={kernelName:n.SparseSegmentMean,backendName:"wasm",setupFunc:Ia,kernelFunc:function(e){return wa(e,!0)}};var Ma,Aa={kernelName:n.SparseSegmentSum,backendName:"wasm",setupFunc:Ia,kernelFunc:function(e){return wa(e,!1)}};var xa={kernelName:n.SparseToDense,backendName:"wasm",setupFunc:function(e){Ma=e.wasm.cwrap(n.SparseToDense,null,["number","number","number","number","number","number","number","number","array","number","number"])},kernelFunc:function(e){var t=e.backend,a=e.inputs,r=e.attrs,u=a.sparseIndices,i=a.sparseValues,o=a.defaultValue,d=r.outputShape,p=t.makeOutput(d,o.dtype);if(0===n.util.sizeFromShape(d))return p;var l=n.backend_util.calculateShapes(i,u,d),c=l.sliceRank,m=l.numUpdates,f=l.sliceSize,h=l.strides,b=l.outputSize,y=t.dataIdMap.get(u.dataId).id,_=t.dataIdMap.get(i.dataId).id,g=t.dataIdMap.get(o.dataId).id,v=new Uint8Array(new Int32Array(h).buffer),k=t.dataIdMap.get(p.dataId).id;return Ma(y,_,i.shape.length,g,s[o.dtype],c,m,f,v,b,k),p}};var Fa,Na={kernelName:n.SplitV,backendName:"wasm",kernelFunc:function(e){var t=e.inputs,a=e.attrs,r=e.backend,u=t.x,i=a.numOrSizeSplits,s=a.axis,o=n.util.parseAxisParam(s,u.shape)[0],d=n.backend_util.prepareSplitSize(u,i,o),p=new Array(u.shape.length).fill(0),l=u.shape.slice();return d.map((function(e){var n=h([],f(l),!1);n[o]=e;var t=re({inputs:{x:u},attrs:{begin:p,size:n},backend:r});return p[o]+=e,t}))}},Da=y(n.Sqrt),Ra=y(n.Square),Ea=k(n.SquaredDifference);var Pa,Ca={kernelName:n.Step,backendName:"wasm",setupFunc:function(e){Fa=e.wasm.cwrap(n.Step,null,["number","number","number","number"])},kernelFunc:function(e){var n=e.backend,t=e.inputs,a=e.attrs.alpha,r=t.x,u=n.dataIdMap.get(r.dataId).id,i=n.makeOutput(r.shape,r.dtype),o=n.dataIdMap.get(i.dataId).id;return Fa(u,a,s[r.dtype],o),i}};var Wa={kernelName:n.StridedSlice,backendName:"wasm",setupFunc:function(e){Pa=e.wasm.cwrap(n.StridedSlice,null,["number","array","number","array","array","array","array","array","number","number"])},kernelFunc:function(e){var t,a=e.backend,r=e.inputs,u=e.attrs,i=r.x,s=u.begin,o=u.end,d=u.strides,p=u.beginMask,l=u.endMask,c=u.ellipsisMask,m=u.newAxisMask,f=u.shrinkAxisMask,h=n.slice_util.sliceInfo(i.shape,s,o,d,p,l,c,m,f),b=h.finalShapeSparse,y=h.finalShape,_=h.isIdentity,g=h.sliceDim0,v=h.isSimpleSlice,k=h.begin,I=h.end,w=h.strides;if(_)t=Z({inputs:{x:i},backend:a,attrs:{shape:y}});else if(g||v){n.util.assert(i.shape.length>=1,(function(){return"Input must have rank at least 1, got: ".concat(i.shape.length)}));var S=n.slice_util.computeOutShape(k,I,w),M=re({inputs:{x:i},backend:a,attrs:{begin:k,size:S}});t=Z({inputs:{x:M},backend:a,attrs:{shape:y}}),a.disposeData(M.dataId)}else{var A=a.makeOutput(b,"float32"),x=a.dataIdMap.get(i.dataId).id,F=new Uint8Array(new Int32Array(n.util.computeStrides(i.shape)).buffer),N=new Uint8Array(new Int32Array(k).buffer),D=new Uint8Array(new Int32Array(I).buffer),R=new Uint8Array(new Int32Array(w).buffer),E=new Uint8Array(new Int32Array(b).buffer),P=new Uint8Array(new Int32Array(n.util.computeStrides(b)).buffer),C=a.dataIdMap.get(A.dataId).id;Pa(x,F,i.shape.length,N,D,R,E,P,b.length,C),t=Z({inputs:{x:A},backend:a,attrs:{shape:y}}),a.disposeData(A.dataId)}return t}};var Oa={kernelName:n.StringNGrams,backendName:"wasm",kernelFunc:function(e){var n=e.backend,t=e.inputs,a=e.attrs,r=t.data,u=t.dataSplits,i=a.separator,s=a.nGramWidths,o=a.leftPad,d=a.rightPad,p=a.padWidth,l=a.preserveShortSequences,c=f(function(e,n,t,a,r,u,i,s){return new te(t,a,r,u,i,s).compute(e,n)}(n.readSync(r.dataId),n.readSync(u.dataId),i,s,o,d,p,l),2),m=c[0],h=c[1],b=n.makeOutput([m.length],"string");n.dataIdMap.get(b.dataId).stringBytes=m;var y=n.makeOutput(u.shape,"int32");return n.typedArrayFromHeap(y).set(h),[b,y]}};var Ta={kernelName:n.StringSplit,backendName:"wasm",kernelFunc:function(e){var t=e.backend,a=e.inputs,r=e.attrs,u=a.input,i=a.delimiter,s=r.skipEmpty,o=f(function(e,t,a){for(var r=e.length,u=[],i=0,s=0,o=new Array(r),d=0;d<r;++d){var p=u.length;ae(e[d],t,a,u);var l=u.length-p;o[d]=l,i+=l,s=Math.max(s,l)}var c=n.util.getArrayFromDType("int32",2*i),m=new Array(i),f=[r,s],h=0;for(d=0;d<r;++d)for(var b=0;b<o[d];++b)c[2*h]=d,c[2*h+1]=b,m[h]=u[h],++h;return[c,m,f]}(t.readSync(u.dataId),t.readSync(i.dataId)[0],s),3),d=o[0],p=o[1],l=o[2],c=p.length,m=t.makeOutput([c,2],"int32");t.typedArrayFromHeap(m).set(d);var h=t.makeOutput([c],"string");t.dataIdMap.get(h.dataId).stringBytes=p;var b=t.makeOutput([2],"int32");return t.typedArrayFromHeap(b).set(l),[m,h,b]}};var za,Ba={kernelName:n.StringToHashBucketFast,backendName:"wasm",kernelFunc:function(e){var t=e.backend,a=e.inputs,r=e.attrs,u=a.input,i=r.numBuckets,s=function(e,t){for(var a=n.util.getArrayFromDType("int32",e.length),r=0;r<e.length;++r)a[r]=n.util.fingerPrint64(e[r]).modulo(t).getLowBitsUnsigned();return a}(t.readSync(u.dataId),i),o=t.makeOutput(u.shape,"int32");return t.typedArrayFromHeap(o).set(s),o}},Ha=k(n.Sub);var La,Ga={kernelName:n.Sum,backendName:"wasm",setupFunc:function(e){za=e.wasm.cwrap(n.Sum,null,["number","number","number","number"])},kernelFunc:function(e){var t=e.backend,a=e.inputs,r=e.attrs,u=r.axis,i=r.keepDims,o=a.x,d=t.dataIdMap.get(o.dataId).id,p=d,l=o,c=R(o,u,t),m=c.transposed,h=c.axes,b=c.originalAxes,y=c.inputWasTransposed,_=h;if(y){var g=t.dataIdMap.get(m.dataId).id;g!==d&&(l=m,p=g,_=n.backend_util.getInnerMostAxes(_.length,l.shape.length))}n.backend_util.assertAxesAreInnerMostDims("sum",_,l.shape.length);var v=f(n.backend_util.computeOutAndReduceShapes(l.shape,_),2),k=v[0],I=v[1],w=n.util.sizeFromShape(I),S=t.makeOutput(k,l.dtype);if(0!==n.util.sizeFromShape(l.shape)){var M=t.dataIdMap.get(S.dataId).id;za(p,w,s[S.dtype],M)}if(y&&t.disposeData(m.dataId),i){var A=n.backend_util.expandShapeToKeepDim(S.shape,b);S.shape=A}return S}},Ua=y(n.Tan),ja=y(n.Tanh);var qa,Va={kernelName:n.TensorScatterUpdate,backendName:"wasm",setupFunc:function(e){La=e.wasm.cwrap(n.TensorScatterUpdate,null,["number","number","number","number","number","number","array","number","number","number"])},kernelFunc:function(e){var t=e.backend,a=e.inputs;e.attrs;var r=a.tensor,u=a.indices,i=a.updates,o=t.makeOutput(r.shape,r.dtype);if(0===n.util.sizeFromShape(r.shape))return o;var d=n.scatter_util.calculateShapes(i,u,r.shape),p=d.sliceRank,l=d.numUpdates,c=d.sliceSize,m=d.strides,f=d.outputSize,h=t.dataIdMap.get(u.dataId).id,b=t.dataIdMap.get(i.dataId).id,y=t.dataIdMap.get(r.dataId).id,_=new Uint8Array(new Int32Array(m).buffer),g=t.dataIdMap.get(o.dataId).id;return La(h,b,s[i.dtype],p,l,c,_,f,g,y),o}};var Ka,Xa={kernelName:n.Tile,backendName:"wasm",setupFunc:function(e){qa=e.wasm.cwrap(n.Tile,null,["number","array","number","array","number","number"])},kernelFunc:function(e){for(var n=e.inputs,t=e.backend,a=e.attrs,r=n.x,u=t.dataIdMap.get(r.dataId).id,i=a.reps,o=new Array(r.shape.length),d=0;d<o.length;d++)o[d]=r.shape[d]*i[d];var p=new Uint8Array(new Int32Array(r.shape).buffer),l=new Uint8Array(new Int32Array(o).buffer),c=t.makeOutput(o,r.dtype),m=t.dataIdMap.get(c.dataId).id;return qa(u,p,r.shape.length,l,o.length,s[c.dtype],m),c}};var Qa,Ja={kernelName:n.TopK,backendName:"wasm",setupFunc:function(e){Ka=e.wasm.cwrap(n.TopK,null,["number","array","number","number","number","bool","number","number"])},kernelFunc:function(e){var n=e.inputs,t=e.backend,a=e.attrs,r=n.x,u=a.k,i=a.sorted,o=t.dataIdMap.get(r.dataId).id,d=new Uint8Array(new Int32Array(r.shape).buffer),p=r.shape.slice();p[p.length-1]=u;var l=t.makeOutput(p,r.dtype),c=t.dataIdMap.get(l.dataId).id,m=t.makeOutput(p,"int32"),f=t.dataIdMap.get(m.dataId).id;return Ka(o,d,r.shape.length,s[r.dtype],u,i,c,f),[l,m]}};var Za={kernelName:n.Transform,backendName:"wasm",setupFunc:function(e){Qa=e.wasm.cwrap(n.Transform,null,["number","number","bool","number","number","number","number","number","number","array","number","array","number","number","number","number","number"])},kernelFunc:function(e){var t,a=e.backend,r=e.inputs,u=e.attrs,i=r.image,s=r.transforms,o=u.interpolation,d=u.fillMode,p=u.fillValue,l=u.outputShape,c=f(i.shape,4),m=c[0],h=c[1],b=c[2],y=c[3],_=f(null!=l?l:[h,b],2),g=_[0],v=_[1],k=[m,g,v,y],I=new Uint8Array(new Int32Array(n.util.computeStrides(i.shape)).buffer),w=new Uint8Array(new Int32Array(n.util.computeStrides(k)).buffer),S=a.makeOutput(k,i.dtype),M=a.dataIdMap.get(S.dataId).id,A=a.dataIdMap.get(i.dataId).id,x=a.dataIdMap.get(s.dataId).id,F="nearest"===o?1:2;switch(d){case"constant":default:t=1;break;case"reflect":t=2;break;case"wrap":t=3;break;case"nearest":t=4}return Qa(A,x,s.shape[0]>1,m,g,v,y,b,h,I,i.shape.length-1,w,k.length-1,F,t,p,M),S}};var Ya={kernelName:n.Unique,backendName:"wasm",kernelFunc:function(e){var t=e.inputs,a=e.attrs,r=e.backend,u=a.axis,i=t.x,s=function(e,t,a,r){for(var u=n.util.parseAxisParam(t,a)[0],i=[1,a[0],1],s=0;s<u;s++)i[0]*=a[s];for(i[1]=a[u],s=u+1;s<a.length;s++)i[2]*=a[s];var o=new Map,d=new Int32Array(a[u]),p=new n.TensorBuffer(i,r,e),l=[],c=1===i[0]&&1===i[2];for(s=0;s<a[u];s++){var m=void 0;if(c)m=e[s].toString();else{for(var f=[],h=0;h<i[0];h++)for(var b=0;b<i[2];b++)f.push(p.get(h,s,b));m=f.join(",")}var y=o.get(m);if(null!=y)d[s]=y;else{var _=o.size;o.set(m,_),d[s]=_,l.push(s)}}var g=i.slice();g[1]=o.size;var v=new n.TensorBuffer(g,r);l.forEach((function(e,n){for(var t=0;t<i[0];t++)for(var a=0;a<i[2];a++)v.set(p.get(t,e,a),t,n,a)}));var k=a.slice();return k[u]=g[1],{outputValues:v.values,outputShape:k,indices:d}}(r.readSync(i.dataId),u,i.shape,i.dtype),o=s.outputValues,d=s.outputShape,p=s.indices;return[r.makeOutput(d,i.dtype,void 0,o),r.makeOutput([p.length],"int32",void 0,p)]}};var $a={kernelName:n.Unpack,backendName:"wasm",kernelFunc:function(e){var n=e.inputs,t=e.backend,a=e.attrs,r=n.value,u=a.axis;u<0&&(u+=r.shape.length);for(var i=r.shape[u],s=r.shape.length,o=new Array(s-1),d=0,p=0;p<s;p++)p!==u&&(o[d++]=r.shape[p]);var l=new Array(i),c=new Array(s).fill(0),m=r.shape.slice();for(m[u]=1,p=0;p<l.length;p++)c[u]=p,l[p]=re({inputs:{x:r},attrs:{begin:c,size:m},backend:t});return l.map((function(e){return{dataId:e.dataId,dtype:e.dtype,shape:o}}))}};var er,nr,tr={kernelName:n.ZerosLike,backendName:"wasm",kernelFunc:function(e){var n=e.inputs.x,t=e.backend,a=t.makeOutput(n.shape,n.dtype);return t.typedArrayFromHeap(a).fill(0),a}},ar=[b,_,g,v,w,S,P,C,T,z,B,H,L,G,U,q,J,K,Q,ee,se,oe,de,pe,me,fe,he,_e,ve,Ie,Se,Ae,Ne,De,Re,Pe,We,Te,Be,Le,Ue,qe,Ke,Qe,Ze,Ye,$e,en,nn,tn,rn,un,dn,ln,cn,mn,hn,yn,gn,kn,wn,Sn,Mn,x,An,xn,Fn,Dn,Rn,En,Cn,On,Wn,Tn,zn,Bn,Hn,Gn,jn,Vn,Kn,Qn,Zn,$n,nt,at,ut,ot,dt,lt,bt,yt,_t,gt,It,St,At,xt,Ft,Nt,Rt,Pt,Ct,Ot,zt,Bt,Ht,Lt,Gt,Ut,$,qt,Kt,Qt,Zt,$t,na,ta,aa,ua,sa,da,pa,la,ca,ma,fa,ue,ft,ha,ya,ga,ka,Sa,Aa,xa,Na,Da,Ra,Ea,Ca,Wa,Oa,Ta,Ba,Ha,Ga,Ua,ja,Va,Xa,Ja,Za,D,Ya,$a,tr];try{for(var rr=m(ar),ur=rr.next();!ur.done;ur=rr.next()){var ir=ur.value;n.registerKernel(ir)}}catch(e){er={error:e}}finally{try{ur&&!ur.done&&(nr=rr.return)&&nr.call(rr)}finally{if(er)throw er.error}}var sr=n.env();sr.registerFlag("WASM_HAS_SIMD_SUPPORT",(function(){return l(void 0,void 0,void 0,(function(){return c(this,(function(e){try{return[2,WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,9,1,7,0,65,0,253,15,26,11]))]}catch(e){return[2,!1]}return[2]}))}))})),sr.registerFlag("WASM_HAS_MULTITHREAD_SUPPORT",(function(){return l(void 0,void 0,void 0,(function(){return c(this,(function(e){if(sr.get("IS_NODE"))return[2,!1];try{return(new MessageChannel).port1.postMessage(new SharedArrayBuffer(1)),[2,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(e){return[2,!1]}return[2]}))}))}));var or="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function dr(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var pr={exports:{}};!function(e,n){var i,s=(i="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0,"undefined"!=typeof __filename&&(i=i||__filename),function(e){function n(){return T.buffer!=L&&J(T.buffer),G}function s(){return T.buffer!=L&&J(T.buffer),U}function o(){return T.buffer!=L&&J(T.buffer),j}function d(){return T.buffer!=L&&J(T.buffer),q}function p(){return T.buffer!=L&&J(T.buffer),V}var l,c,b,y="undefined"!=typeof(e=e||{})?e:{};y.ready=new Promise((function(e,n){l=e,c=n})),"undefined"!=typeof process&&process.listeners&&(b={uncaughtException:process.listeners("uncaughtException"),unhandledRejection:process.listeners("unhandledRejection")});var _,g,v,k=Object.assign({},y),I=function(e,n){throw n},w="object"==typeof window,S="function"==typeof importScripts,M="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,A=y.ENVIRONMENT_IS_PTHREAD||!1,x="";function F(e){return y.locateFile?y.locateFile(e,x):x+e}if(M){var N=t,D=a;x=S?D.dirname(x)+"/":__dirname+"/",_=function(e,n){return e=de(e)?new URL(e):D.normalize(e),N.readFileSync(e,n?void 0:"utf8")},v=function(e){var n=_(e,!0);return n.buffer||(n=new Uint8Array(n)),n},g=function(e,n,t){e=de(e)?new URL(e):D.normalize(e),N.readFile(e,(function(e,a){e?t(e):n(a.buffer)}))},process.argv.length>1&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),process.on("uncaughtException",(function(e){if(!(e instanceof ce))throw e})),process.on("unhandledRejection",(function(e){throw e})),I=function(e,n){if(te())throw process.exitCode=e,n;var t;(t=n)instanceof ce||O("exiting due to exception: "+t),process.exit(e)},y.inspect=function(){return"[Emscripten Module object]"};var R=void 0;try{R=require("worker_threads")}catch(e){throw console.error('The "worker_threads" module is not supported in this node.js build - perhaps a newer version is needed?'),e}or.Worker=R.Worker}else(w||S)&&(S?x=self.location.href:"undefined"!=typeof document&&document.currentScript&&(x=document.currentScript.src),"undefined"!=typeof i&&i&&(x=i),x=0!==x.indexOf("blob:")?x.substr(0,x.replace(/[?#].*/,"").lastIndexOf("/")+1):"",M||(_=function(e){var n=new XMLHttpRequest;return n.open("GET",e,!1),n.send(null),n.responseText},S&&(v=function(e){var n=new XMLHttpRequest;return n.open("GET",e,!1),n.responseType="arraybuffer",n.send(null),new Uint8Array(n.response)}),g=function(e,n,t){var a=new XMLHttpRequest;a.open("GET",e,!0),a.responseType="arraybuffer",a.onload=function(){200==a.status||0==a.status&&a.response?n(a.response):t()},a.onerror=t,a.send(null)}));M&&"undefined"==typeof performance&&(or.performance=r.performance);var E=console.log.bind(console),P=console.warn.bind(console);M&&(E=function(e){return N.writeSync(1,e+"\n")},P=function(e){return N.writeSync(2,e+"\n")});var C,W=y.print||E,O=y.printErr||P;Object.assign(y,k),k=null,y.arguments&&y.arguments,y.thisProgram&&y.thisProgram,y.quit&&(I=y.quit),y.wasmBinary&&(C=y.wasmBinary);var T,z,B=y.noExitRuntime||!0;"object"!=typeof WebAssembly&&se("no native wasm support detected");var H,L,G,U,j,q,V,K=!1,X="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function Q(e,n,t){for(var a=(n>>>=0)+t,r=n;e[r]&&!(r>=a);)++r;if(r-n>16&&e.buffer&&X)return X.decode(e.buffer instanceof SharedArrayBuffer?e.slice(n,r):e.subarray(n,r));for(var u="";n<r;){var i=e[n++];if(128&i){var s=63&e[n++];if(192!=(224&i)){var o=63&e[n++];if((i=224==(240&i)?(15&i)<<12|s<<6|o:(7&i)<<18|s<<12|o<<6|63&e[n++])<65536)u+=String.fromCharCode(i);else{var d=i-65536;u+=String.fromCharCode(55296|d>>10,56320|1023&d)}}else u+=String.fromCharCode((31&i)<<6|s)}else u+=String.fromCharCode(i)}return u}function J(e){L=e,y.HEAP8=G=new Int8Array(e),y.HEAP16=new Int16Array(e),y.HEAP32=j=new Int32Array(e),y.HEAPU8=U=new Uint8Array(e),y.HEAPU16=new Uint16Array(e),y.HEAPU32=q=new Uint32Array(e),y.HEAPF32=new Float32Array(e),y.HEAPF64=V=new Float64Array(e)}A&&(L=y.buffer);var Z,Y=y.INITIAL_MEMORY||16777216;if(A)T=y.wasmMemory,L=y.buffer;else if(y.wasmMemory)T=y.wasmMemory;else if(!((T=new WebAssembly.Memory({initial:Y/65536,maximum:65536,shared:!0})).buffer instanceof SharedArrayBuffer))throw O("requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag"),M&&O("(on node you may need: --experimental-wasm-threads --experimental-wasm-bulk-memory and/or recent version)"),Error("bad memory");T&&(L=T.buffer),Y=L.byteLength,J(L);var $=[],ee=[],ne=[];function te(){return B}function ae(){A||_e(ee)}var re,ue=0,ie=null;function se(e){y.onAbort&&y.onAbort(e),O(e="Aborted("+e+")"),K=!0,H=1,e+=". Build with -sASSERTIONS for more info.";var n=new WebAssembly.RuntimeError(e);throw c(n),n}function oe(e){return e.startsWith("data:application/octet-stream;base64,")}function de(e){return e.startsWith("file://")}function pe(e){try{if(e==re&&C)return new Uint8Array(C);if(v)return v(e);throw"both async and sync fetching of the wasm failed"}catch(e){se(e)}}oe(re="tfjs-backend-wasm-threaded-simd.wasm")||(re=F(re));var le={};function ce(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}function me(e){var n,t=ye.pthreads[e];t||se(n),ye.returnWorkerToPool(t)}function fe(e){var n=ye.getNewWorker();if(!n)return 6;ye.runningWorkers.push(n),ye.pthreads[e.pthread_ptr]=n,n.pthread_ptr=e.pthread_ptr;var t={cmd:"run",start_routine:e.startRoutine,arg:e.arg,pthread_ptr:e.pthread_ptr};return n.runPthread=function(){M&&n.ref(),n.postMessage(t,e.transferList),delete n.runPthread},n.loaded&&n.runPthread(),0}function he(e){if(A)return xe(1,1,e);H=e,te()||(ye.terminateAllThreads(),y.onExit&&y.onExit(e),K=!0),I(e,new ce(e))}var be=function(e,n){if(H=e,!n&&A)throw ge(e),"unwind";he(e)},ye={unusedWorkers:[],runningWorkers:[],tlsInitFunctions:[],pthreads:{},init:function(){A?ye.initWorker():ye.initMainThread()},initMainThread:function(){for(var e=8;e--;)ye.allocateUnusedWorker()},initWorker:function(){B=!1},setExitStatus:function(e){H=e},terminateAllThreads:function(){var e,n,t,a;try{for(var r=m(Object.values(ye.pthreads)),u=r.next();!u.done;u=r.next()){var i=u.value;ye.returnWorkerToPool(i)}}catch(n){e={error:n}}finally{try{u&&!u.done&&(n=r.return)&&n.call(r)}finally{if(e)throw e.error}}try{for(var s=m(ye.unusedWorkers),o=s.next();!o.done;o=s.next())(i=o.value).terminate()}catch(e){t={error:e}}finally{try{o&&!o.done&&(a=s.return)&&a.call(s)}finally{if(t)throw t.error}}ye.unusedWorkers=[]},returnWorkerToPool:function(e){var n=e.pthread_ptr;delete ye.pthreads[n],ye.unusedWorkers.push(e),ye.runningWorkers.splice(ye.runningWorkers.indexOf(e),1),e.pthread_ptr=0,M&&e.unref(),Ve(n)},receiveObjectTransfer:function(e){},threadInitTLS:function(){ye.tlsInitFunctions.forEach((function(e){return e()}))},loadWasmModuleToWorker:function(e,n){var t,a;e.onmessage=function(t){var a,r=t.data,u=r.cmd;if(e.pthread_ptr&&(ye.currentProxiedOperationCallerThread=e.pthread_ptr),r.targetThread&&r.targetThread!=Be()){var i=ye.pthreads[r.targetThread];return i?i.postMessage(r,r.transferList):O('Internal error! Worker sent a message "'+u+'" to target pthread '+r.targetThread+", but that thread no longer exists!"),void(ye.currentProxiedOperationCallerThread=void 0)}"processProxyingQueue"===u?Se(r.queue):"spawnThread"===u?fe(r):"cleanupThread"===u?me(r.thread):"killThread"===u?function(e){var n=ye.pthreads[e];delete ye.pthreads[e],n.terminate(),Ve(e),ye.runningWorkers.splice(ye.runningWorkers.indexOf(n),1),n.pthread_ptr=0}(r.thread):"cancelThread"===u?(a=r.thread,ye.pthreads[a].postMessage({cmd:"cancel"})):"loaded"===u?(e.loaded=!0,M&&e.unref(),n&&n(e),e.runPthread&&e.runPthread()):"print"===u?W("Thread "+r.threadId+": "+r.text):"printErr"===u?O("Thread "+r.threadId+": "+r.text):"alert"===u?alert("Thread "+r.threadId+": "+r.text):"setimmediate"===r.target?e.postMessage(r):"callHandler"===u?y[r.handler].apply(y,h([],f(r.args),!1)):u&&O("worker sent an unknown command "+u),ye.currentProxiedOperationCallerThread=void 0},e.onerror=function(e){throw O("worker sent an error! "+e.filename+":"+e.lineno+": "+e.message),e},M&&(e.on("message",(function(n){e.onmessage({data:n})})),e.on("error",(function(n){e.onerror(n)})),e.on("detachedExit",(function(){})));var r=[];try{for(var u=m(["onExit","onAbort","print","printErr"]),s=u.next();!s.done;s=u.next()){var o=s.value;y.hasOwnProperty(o)&&r.push(o)}}catch(e){t={error:e}}finally{try{s&&!s.done&&(a=u.return)&&a.call(u)}finally{if(t)throw t.error}}e.postMessage({cmd:"load",handlers:r,urlOrBlob:y.mainScriptUrlOrBlob||i,wasmMemory:T,wasmModule:z})},allocateUnusedWorker:function(){var e,n=F("tfjs-backend-wasm-threaded-simd.worker.js");e=new Worker(n),ye.unusedWorkers.push(e)},getNewWorker:function(){return 0==ye.unusedWorkers.length&&(ye.allocateUnusedWorker(),ye.loadWasmModuleToWorker(ye.unusedWorkers[0])),ye.unusedWorkers.pop()}};function _e(e){for(;e.length>0;)e.shift()(y)}function ge(e){if(A)return xe(2,0,e);try{be(e)}catch(e){!function(e){if(e instanceof ce||"unwind"==e)return H;I(1,e)}(e)}}y.PThread=ye,y.establishStackSpace=function(){var e=Be(),n=o()[e+52>>>2],t=o()[e+56>>>2];Xe(n,n-t),Je(n)};var ve,ke=[];function Ie(e,n,t,a){return A?xe(3,1,e,n,t,a):we(e,n,t,a)}function we(e,n,t,a){if("undefined"==typeof SharedArrayBuffer)return O("Current environment does not support SharedArrayBuffer, pthreads are not available!"),6;var r=[];if(A&&0===r.length)return Ie(e,n,t,a);var u={startRoutine:t,pthread_ptr:e,arg:a,transferList:r};return A?(u.cmd="spawnThread",postMessage(u,r),0):fe(u)}function Se(e){Atomics.store(o(),e>>2,1),Be()&&qe(e),Atomics.compareExchange(o(),e>>2,1,0)}function Me(e){Me.shown||(Me.shown={}),Me.shown[e]||(Me.shown[e]=1,M&&(e="warning: "+e),O(e))}function Ae(e){var n=Qe(),t=e();return Je(n),t}function xe(e,n){var t=arguments.length-2,a=arguments;return Ae((function(){for(var r=t,u=Ze(8*r),i=u>>3,s=0;s<t;s++){var o=a[2+s];p()[i+s>>>0]=o}return Le(e,r,u,n)}))}y.invokeEntryPoint=function(e,n){var t,a,r=((a=ke[t=e])||(t>=ke.length&&(ke.length=t+1),ke[t]=a=Z.get(t)),a)(n);te()?ye.setExitStatus(r):Ke(r)},y.executeNotifiedProxyingQueue=Se,ve=M?function(){var e=process.hrtime();return 1e3*e[0]+e[1]/1e6}:function(){return performance.timeOrigin+performance.now()};var Fe=[];function Ne(e){try{return T.grow(e-L.byteLength+65535>>>16),J(T.buffer),1}catch(e){}}function De(e){return A?xe(4,1,e):52}function Re(e,n,t,a,r){return A?xe(5,1,e,n,t,a,r):70}var Ee=[null,[],[]];function Pe(e,n){var t=Ee[e];0===n||10===n?((1===e?W:O)(Q(t,0)),t.length=0):t.push(n)}function Ce(e,n,t,a){if(A)return xe(6,1,e,n,t,a);for(var r=0,u=0;u<t;u++){var i=d()[n>>>2],o=d()[n+4>>>2];n+=8;for(var p=0;p<o;p++)Pe(e,s()[i+p>>>0]);r+=o}return d()[a>>>2]=r,0}function We(e){return y["_"+e]}function Oe(e,t,a,r,u){var i={string:function(e){var n=0;if(null!=e&&0!==e){var t=1+(e.length<<2);!function(e,n,t){!function(e,n,t,a){if(!(a>0))return 0;t>>>=0;for(var r=t+a-1,u=0;u<e.length;++u){var i=e.charCodeAt(u);if(i>=55296&&i<=57343&&(i=65536+((1023&i)<<10)|1023&e.charCodeAt(++u)),i<=127){if(t>=r)break;n[t++>>>0]=i}else if(i<=2047){if(t+1>=r)break;n[t++>>>0]=192|i>>6,n[t++>>>0]=128|63&i}else if(i<=65535){if(t+2>=r)break;n[t++>>>0]=224|i>>12,n[t++>>>0]=128|i>>6&63,n[t++>>>0]=128|63&i}else{if(t+3>=r)break;n[t++>>>0]=240|i>>18,n[t++>>>0]=128|i>>12&63,n[t++>>>0]=128|i>>6&63,n[t++>>>0]=128|63&i}}n[t>>>0]=0}(e,s(),n,t)}(e,n=Ze(t),t)}return n},array:function(e){var t=Ze(e.length);return function(e,t){n().set(e,t>>>0)}(e,t),t}};function o(e){return"string"===t?(n=e,(n>>>=0)?Q(s(),n,a):""):"boolean"===t?Boolean(e):e;var n,a}var d=We(e),p=[],l=0;if(r)for(var c=0;c<r.length;c++){var m=i[a[c]];m?(0===l&&(l=Qe()),p[c]=m(r[c])):p[c]=r[c]}var f=d.apply(null,p);return f=function(e){return 0!==l&&Je(l),o(e)}(f)}ye.init();var Te=[null,he,ge,Ie,De,Re,Ce],ze={__emscripten_init_main_thread_js:function(e){He(e,!S,1,!w),ye.threadInitTLS()},__emscripten_thread_cleanup:function(e){A?postMessage({cmd:"cleanupThread",thread:e}):me(e)},__pthread_create_js:we,_emscripten_default_pthread_stack_size:function(){return 65536},_emscripten_get_now_is_monotonic:function(){return!0},_emscripten_notify_task_queue:function(e,n,t,a){if(e==n)setTimeout((function(){return Se(a)}));else if(A)postMessage({targetThread:e,cmd:"processProxyingQueue",queue:a});else{var r=ye.pthreads[e];if(!r)return;r.postMessage({cmd:"processProxyingQueue",queue:a})}return 1},_emscripten_set_offscreencanvas_size:function(e,n,t){return-1},abort:function(){se("")},emscripten_check_blocking_allowed:function(){M||S||Me("Blocking on the main thread is very dangerous, see https://emscripten.org/docs/porting/pthreads.html#blocking-on-the-main-browser-thread")},emscripten_date_now:function(){return Date.now()},emscripten_get_heap_max:function(){return 4294901760},emscripten_get_now:ve,emscripten_memcpy_big:function(e,n,t){s().copyWithin(e>>>0,n>>>0,n+t>>>0)},emscripten_num_logical_cores:function(){return M?u.cpus().length:navigator.hardwareConcurrency},emscripten_receive_on_main_thread_js:function(e,n,t){Fe.length=n;for(var a=t>>3,r=0;r<n;r++)Fe[r]=p()[a+r>>>0];return(e<0?le[-e-1]:Te[e]).apply(null,Fe)},emscripten_resize_heap:function(e){var n=s().length;if((e>>>=0)<=n)return!1;var t=4294901760;if(e>t)return!1;for(var a,r,u=1;u<=4;u*=2){var i=n*(1+.2/u);if(i=Math.min(i,e+100663296),Ne(Math.min(t,(a=Math.max(e,i))+((r=65536)-a%r)%r)))return!0}return!1},emscripten_unwind_to_js_event_loop:function(){throw"unwind"},exit:be,fd_close:De,fd_seek:Re,fd_write:Ce,memory:T||y.wasmMemory};!function(){var e={env:ze,wasi_snapshot_preview1:ze};function n(e,n){var t,a,r=e.exports;if(y.asm=r,t=y.asm._emscripten_tls_init,ye.tlsInitFunctions.push(t),Z=y.asm.__indirect_function_table,a=y.asm.__wasm_call_ctors,ee.unshift(a),z=n,!A){var u=ye.unusedWorkers.length;ye.unusedWorkers.forEach((function(e){ye.loadWasmModuleToWorker(e,(function(){--u||function(e){if(ue--,y.monitorRunDependencies&&y.monitorRunDependencies(ue),0==ue&&ie){var n=ie;ie=null,n()}}()}))}))}}function t(e){n(e.instance,e.module)}function a(n){return function(){if(!C&&(w||S)){if("function"==typeof fetch&&!de(re))return fetch(re,{credentials:"same-origin"}).then((function(e){if(!e.ok)throw"failed to load wasm binary file at '"+re+"'";return e.arrayBuffer()})).catch((function(){return pe(re)}));if(g)return new Promise((function(e,n){g(re,(function(n){e(new Uint8Array(n))}),n)}))}return Promise.resolve().then((function(){return pe(re)}))}().then((function(n){return WebAssembly.instantiate(n,e)})).then((function(e){return e})).then(n,(function(e){O("failed to asynchronously prepare wasm: "+e),se(e)}))}if(A||(ue++,y.monitorRunDependencies&&y.monitorRunDependencies(ue)),y.instantiateWasm)try{return y.instantiateWasm(e,n)}catch(e){O("Module.instantiateWasm callback failed with error: "+e),c(e)}(C||"function"!=typeof WebAssembly.instantiateStreaming||oe(re)||de(re)||M||"function"!=typeof fetch?a(t):fetch(re,{credentials:"same-origin"}).then((function(n){return WebAssembly.instantiateStreaming(n,e).then(t,(function(e){return O("wasm streaming compile failed: "+e),O("falling back to ArrayBuffer instantiation"),a(t)}))}))).catch(c)}(),y.___wasm_call_ctors=function(){return(y.___wasm_call_ctors=y.asm.__wasm_call_ctors).apply(null,arguments)},y._init=function(){return(y._init=y.asm.init).apply(null,arguments)},y._init_with_threads_count=function(){return(y._init_with_threads_count=y.asm.init_with_threads_count).apply(null,arguments)},y._get_threads_count=function(){return(y._get_threads_count=y.asm.get_threads_count).apply(null,arguments)},y._register_tensor=function(){return(y._register_tensor=y.asm.register_tensor).apply(null,arguments)},y._dispose_data=function(){return(y._dispose_data=y.asm.dispose_data).apply(null,arguments)},y._dispose=function(){return(y._dispose=y.asm.dispose).apply(null,arguments)},y._Abs=function(){return(y._Abs=y.asm.Abs).apply(null,arguments)},y._Acos=function(){return(y._Acos=y.asm.Acos).apply(null,arguments)},y._Acosh=function(){return(y._Acosh=y.asm.Acosh).apply(null,arguments)},y._Add=function(){return(y._Add=y.asm.Add).apply(null,arguments)},y._AddN=function(){return(y._AddN=y.asm.AddN).apply(null,arguments)},y._All=function(){return(y._All=y.asm.All).apply(null,arguments)},y._Any=function(){return(y._Any=y.asm.Any).apply(null,arguments)},y._ArgMax=function(){return(y._ArgMax=y.asm.ArgMax).apply(null,arguments)},y._ArgMin=function(){return(y._ArgMin=y.asm.ArgMin).apply(null,arguments)},y._Asin=function(){return(y._Asin=y.asm.Asin).apply(null,arguments)},y._Asinh=function(){return(y._Asinh=y.asm.Asinh).apply(null,arguments)},y._Atan=function(){return(y._Atan=y.asm.Atan).apply(null,arguments)},y._Atan2=function(){return(y._Atan2=y.asm.Atan2).apply(null,arguments)},y._Atanh=function(){return(y._Atanh=y.asm.Atanh).apply(null,arguments)},y._AvgPool=function(){return(y._AvgPool=y.asm.AvgPool).apply(null,arguments)},y._AvgPool3D=function(){return(y._AvgPool3D=y.asm.AvgPool3D).apply(null,arguments)},y._AvgPool3DGrad=function(){return(y._AvgPool3DGrad=y.asm.AvgPool3DGrad).apply(null,arguments)},y._AvgPoolGrad=function(){return(y._AvgPoolGrad=y.asm.AvgPoolGrad).apply(null,arguments)},y._BatchMatMul=function(){return(y._BatchMatMul=y.asm.BatchMatMul).apply(null,arguments)},y._Bincount=function(){return(y._Bincount=y.asm.Bincount).apply(null,arguments)},y._BitwiseAnd=function(){return(y._BitwiseAnd=y.asm.BitwiseAnd).apply(null,arguments)},y._Ceil=function(){return(y._Ceil=y.asm.Ceil).apply(null,arguments)},y._ClipByValue=function(){return(y._ClipByValue=y.asm.ClipByValue).apply(null,arguments)},y._Conv2D=function(){return(y._Conv2D=y.asm.Conv2D).apply(null,arguments)},y._Conv2DBackpropInput=function(){return(y._Conv2DBackpropInput=y.asm.Conv2DBackpropInput).apply(null,arguments)},y._Conv3D=function(){return(y._Conv3D=y.asm.Conv3D).apply(null,arguments)},y._Conv3DBackpropFilterV2=function(){return(y._Conv3DBackpropFilterV2=y.asm.Conv3DBackpropFilterV2).apply(null,arguments)},y._Conv3DBackpropInputV2=function(){return(y._Conv3DBackpropInputV2=y.asm.Conv3DBackpropInputV2).apply(null,arguments)},y._Cos=function(){return(y._Cos=y.asm.Cos).apply(null,arguments)},y._Cosh=function(){return(y._Cosh=y.asm.Cosh).apply(null,arguments)},y._CropAndResize=function(){return(y._CropAndResize=y.asm.CropAndResize).apply(null,arguments)},y._Cumprod=function(){return(y._Cumprod=y.asm.Cumprod).apply(null,arguments)},y._Cumsum=function(){return(y._Cumsum=y.asm.Cumsum).apply(null,arguments)},y._DenseBincount=function(){return(y._DenseBincount=y.asm.DenseBincount).apply(null,arguments)},y._DepthToSpace=function(){return(y._DepthToSpace=y.asm.DepthToSpace).apply(null,arguments)},y._DepthwiseConv2dNative=function(){return(y._DepthwiseConv2dNative=y.asm.DepthwiseConv2dNative).apply(null,arguments)},y._Diag=function(){return(y._Diag=y.asm.Diag).apply(null,arguments)},y._Dilation2D=function(){return(y._Dilation2D=y.asm.Dilation2D).apply(null,arguments)},y._Dilation2DBackpropFilter=function(){return(y._Dilation2DBackpropFilter=y.asm.Dilation2DBackpropFilter).apply(null,arguments)},y._Dilation2DBackpropInput=function(){return(y._Dilation2DBackpropInput=y.asm.Dilation2DBackpropInput).apply(null,arguments)},y._Elu=function(){return(y._Elu=y.asm.Elu).apply(null,arguments)},y._EluGrad=function(){return(y._EluGrad=y.asm.EluGrad).apply(null,arguments)},y._Equal=function(){return(y._Equal=y.asm.Equal).apply(null,arguments)},y._Erf=function(){return(y._Erf=y.asm.Erf).apply(null,arguments)},y._Exp=function(){return(y._Exp=y.asm.Exp).apply(null,arguments)},y._Expm1=function(){return(y._Expm1=y.asm.Expm1).apply(null,arguments)},y._FlipLeftRight=function(){return(y._FlipLeftRight=y.asm.FlipLeftRight).apply(null,arguments)},y._Floor=function(){return(y._Floor=y.asm.Floor).apply(null,arguments)},y._FloorDiv=function(){return(y._FloorDiv=y.asm.FloorDiv).apply(null,arguments)},y._FusedBatchNorm=function(){return(y._FusedBatchNorm=y.asm.FusedBatchNorm).apply(null,arguments)},y._FusedConv2D=function(){return(y._FusedConv2D=y.asm.FusedConv2D).apply(null,arguments)},y._FusedDepthwiseConv2D=function(){return(y._FusedDepthwiseConv2D=y.asm.FusedDepthwiseConv2D).apply(null,arguments)},y._Gather=function(){return(y._Gather=y.asm.Gather).apply(null,arguments)},y._GatherNd=function(){return(y._GatherNd=y.asm.GatherNd).apply(null,arguments)},y._Greater=function(){return(y._Greater=y.asm.Greater).apply(null,arguments)},y._GreaterEqual=function(){return(y._GreaterEqual=y.asm.GreaterEqual).apply(null,arguments)},y._IsFinite=function(){return(y._IsFinite=y.asm.IsFinite).apply(null,arguments)},y._IsInf=function(){return(y._IsInf=y.asm.IsInf).apply(null,arguments)},y._IsNan=function(){return(y._IsNan=y.asm.IsNan).apply(null,arguments)},y._LRN=function(){return(y._LRN=y.asm.LRN).apply(null,arguments)},y._LRNGrad=function(){return(y._LRNGrad=y.asm.LRNGrad).apply(null,arguments)},y._LeakyRelu=function(){return(y._LeakyRelu=y.asm.LeakyRelu).apply(null,arguments)},y._Less=function(){return(y._Less=y.asm.Less).apply(null,arguments)},y._LessEqual=function(){return(y._LessEqual=y.asm.LessEqual).apply(null,arguments)},y._LinSpace=function(){return(y._LinSpace=y.asm.LinSpace).apply(null,arguments)},y._Log=function(){return(y._Log=y.asm.Log).apply(null,arguments)},y._Log1p=function(){return(y._Log1p=y.asm.Log1p).apply(null,arguments)},y._LogicalAnd=function(){return(y._LogicalAnd=y.asm.LogicalAnd).apply(null,arguments)},y._LogicalNot=function(){return(y._LogicalNot=y.asm.LogicalNot).apply(null,arguments)},y._LogicalOr=function(){return(y._LogicalOr=y.asm.LogicalOr).apply(null,arguments)},y._LogicalXor=function(){return(y._LogicalXor=y.asm.LogicalXor).apply(null,arguments)},y._Max=function(){return(y._Max=y.asm.Max).apply(null,arguments)},y._MaxPool=function(){return(y._MaxPool=y.asm.MaxPool).apply(null,arguments)},y._MaxPool3D=function(){return(y._MaxPool3D=y.asm.MaxPool3D).apply(null,arguments)},y._MaxPool3DGrad=function(){return(y._MaxPool3DGrad=y.asm.MaxPool3DGrad).apply(null,arguments)},y._MaxPoolGrad=function(){return(y._MaxPoolGrad=y.asm.MaxPoolGrad).apply(null,arguments)},y._MaxPoolWithArgmax=function(){return(y._MaxPoolWithArgmax=y.asm.MaxPoolWithArgmax).apply(null,arguments)},y._Maximum=function(){return(y._Maximum=y.asm.Maximum).apply(null,arguments)},y._Mean=function(){return(y._Mean=y.asm.Mean).apply(null,arguments)},y._Min=function(){return(y._Min=y.asm.Min).apply(null,arguments)},y._Minimum=function(){return(y._Minimum=y.asm.Minimum).apply(null,arguments)},y._MirrorPad=function(){return(y._MirrorPad=y.asm.MirrorPad).apply(null,arguments)},y._Mod=function(){return(y._Mod=y.asm.Mod).apply(null,arguments)},y._Multinomial=function(){return(y._Multinomial=y.asm.Multinomial).apply(null,arguments)},y._Multiply=function(){return(y._Multiply=y.asm.Multiply).apply(null,arguments)},y._Neg=function(){return(y._Neg=y.asm.Neg).apply(null,arguments)},y._NonMaxSuppressionV3=function(){return(y._NonMaxSuppressionV3=y.asm.NonMaxSuppressionV3).apply(null,arguments)},y._NonMaxSuppressionV4=function(){return(y._NonMaxSuppressionV4=y.asm.NonMaxSuppressionV4).apply(null,arguments)},y._NonMaxSuppressionV5=function(){return(y._NonMaxSuppressionV5=y.asm.NonMaxSuppressionV5).apply(null,arguments)},y._NotEqual=function(){return(y._NotEqual=y.asm.NotEqual).apply(null,arguments)},y._OneHot=function(){return(y._OneHot=y.asm.OneHot).apply(null,arguments)},y._PadV2=function(){return(y._PadV2=y.asm.PadV2).apply(null,arguments)},y._Pow=function(){return(y._Pow=y.asm.Pow).apply(null,arguments)},y._Prelu=function(){return(y._Prelu=y.asm.Prelu).apply(null,arguments)},y._Prod=function(){return(y._Prod=y.asm.Prod).apply(null,arguments)},y._RealDiv=function(){return(y._RealDiv=y.asm.RealDiv).apply(null,arguments)},y._Reciprocal=function(){return(y._Reciprocal=y.asm.Reciprocal).apply(null,arguments)},y._Relu=function(){return(y._Relu=y.asm.Relu).apply(null,arguments)},y._Relu6=function(){return(y._Relu6=y.asm.Relu6).apply(null,arguments)},y._ResizeBilinear=function(){return(y._ResizeBilinear=y.asm.ResizeBilinear).apply(null,arguments)},y._ResizeBilinearGrad=function(){return(y._ResizeBilinearGrad=y.asm.ResizeBilinearGrad).apply(null,arguments)},y._ResizeNearestNeighbor=function(){return(y._ResizeNearestNeighbor=y.asm.ResizeNearestNeighbor).apply(null,arguments)},y._ResizeNearestNeighborGrad=function(){return(y._ResizeNearestNeighborGrad=y.asm.ResizeNearestNeighborGrad).apply(null,arguments)},y._Reverse=function(){return(y._Reverse=y.asm.Reverse).apply(null,arguments)},y._RotateWithOffset=function(){return(y._RotateWithOffset=y.asm.RotateWithOffset).apply(null,arguments)},y._Round=function(){return(y._Round=y.asm.Round).apply(null,arguments)},y._Rsqrt=function(){return(y._Rsqrt=y.asm.Rsqrt).apply(null,arguments)},y._ScatterNd=function(){return(y._ScatterNd=y.asm.ScatterNd).apply(null,arguments)},y._SearchSorted=function(){return(y._SearchSorted=y.asm.SearchSorted).apply(null,arguments)},y._SelectV2=function(){return(y._SelectV2=y.asm.SelectV2).apply(null,arguments)},y._Selu=function(){return(y._Selu=y.asm.Selu).apply(null,arguments)},y._Sigmoid=function(){return(y._Sigmoid=y.asm.Sigmoid).apply(null,arguments)},y._Sign=function(){return(y._Sign=y.asm.Sign).apply(null,arguments)},y._Sin=function(){return(y._Sin=y.asm.Sin).apply(null,arguments)},y._Sinh=function(){return(y._Sinh=y.asm.Sinh).apply(null,arguments)},y._Softmax=function(){return(y._Softmax=y.asm.Softmax).apply(null,arguments)},y._Softplus=function(){return(y._Softplus=y.asm.Softplus).apply(null,arguments)},y._SparseFillEmptyRows=function(){return(y._SparseFillEmptyRows=y.asm.SparseFillEmptyRows).apply(null,arguments)},y._SparseReshape=function(){return(y._SparseReshape=y.asm.SparseReshape).apply(null,arguments)},y._SparseSegmentReduction=function(){return(y._SparseSegmentReduction=y.asm.SparseSegmentReduction).apply(null,arguments)},y._SparseToDense=function(){return(y._SparseToDense=y.asm.SparseToDense).apply(null,arguments)},y._Sqrt=function(){return(y._Sqrt=y.asm.Sqrt).apply(null,arguments)},y._Square=function(){return(y._Square=y.asm.Square).apply(null,arguments)},y._SquaredDifference=function(){return(y._SquaredDifference=y.asm.SquaredDifference).apply(null,arguments)},y._Step=function(){return(y._Step=y.asm.Step).apply(null,arguments)},y._StridedSlice=function(){return(y._StridedSlice=y.asm.StridedSlice).apply(null,arguments)},y._Sub=function(){return(y._Sub=y.asm.Sub).apply(null,arguments)},y._Sum=function(){return(y._Sum=y.asm.Sum).apply(null,arguments)},y._Tan=function(){return(y._Tan=y.asm.Tan).apply(null,arguments)},y._Tanh=function(){return(y._Tanh=y.asm.Tanh).apply(null,arguments)},y._TensorScatterUpdate=function(){return(y._TensorScatterUpdate=y.asm.TensorScatterUpdate).apply(null,arguments)},y._Tile=function(){return(y._Tile=y.asm.Tile).apply(null,arguments)},y._TopK=function(){return(y._TopK=y.asm.TopK).apply(null,arguments)},y._Transform=function(){return(y._Transform=y.asm.Transform).apply(null,arguments)},y._Transpose=function(){return(y._Transpose=y.asm.Transpose).apply(null,arguments)},y.__FusedMatMul=function(){return(y.__FusedMatMul=y.asm._FusedMatMul).apply(null,arguments)},y._malloc=function(){return(y._malloc=y.asm.malloc).apply(null,arguments)},y._free=function(){return(y._free=y.asm.free).apply(null,arguments)},y.__emscripten_tls_init=function(){return(y.__emscripten_tls_init=y.asm._emscripten_tls_init).apply(null,arguments)};var Be=y._pthread_self=function(){return(Be=y._pthread_self=y.asm.pthread_self).apply(null,arguments)};y.___errno_location=function(){return(y.___errno_location=y.asm.__errno_location).apply(null,arguments)};var He=y.__emscripten_thread_init=function(){return(He=y.__emscripten_thread_init=y.asm._emscripten_thread_init).apply(null,arguments)};y.__emscripten_thread_crashed=function(){return(y.__emscripten_thread_crashed=y.asm._emscripten_thread_crashed).apply(null,arguments)},y._emscripten_main_thread_process_queued_calls=function(){return(y._emscripten_main_thread_process_queued_calls=y.asm.emscripten_main_thread_process_queued_calls).apply(null,arguments)},y._emscripten_main_browser_thread_id=function(){return(y._emscripten_main_browser_thread_id=y.asm.emscripten_main_browser_thread_id).apply(null,arguments)};var Le=y._emscripten_run_in_main_runtime_thread_js=function(){return(Le=y._emscripten_run_in_main_runtime_thread_js=y.asm.emscripten_run_in_main_runtime_thread_js).apply(null,arguments)};y._emscripten_dispatch_to_thread_=function(){return(y._emscripten_dispatch_to_thread_=y.asm.emscripten_dispatch_to_thread_).apply(null,arguments)};var Ge,Ue,je,qe=y.__emscripten_proxy_execute_task_queue=function(){return(qe=y.__emscripten_proxy_execute_task_queue=y.asm._emscripten_proxy_execute_task_queue).apply(null,arguments)},Ve=y.__emscripten_thread_free_data=function(){return(Ve=y.__emscripten_thread_free_data=y.asm._emscripten_thread_free_data).apply(null,arguments)},Ke=y.__emscripten_thread_exit=function(){return(Ke=y.__emscripten_thread_exit=y.asm._emscripten_thread_exit).apply(null,arguments)},Xe=y._emscripten_stack_set_limits=function(){return(Xe=y._emscripten_stack_set_limits=y.asm.emscripten_stack_set_limits).apply(null,arguments)},Qe=y.stackSave=function(){return(Qe=y.stackSave=y.asm.stackSave).apply(null,arguments)},Je=y.stackRestore=function(){return(Je=y.stackRestore=y.asm.stackRestore).apply(null,arguments)},Ze=y.stackAlloc=function(){return(Ze=y.stackAlloc=y.asm.stackAlloc).apply(null,arguments)};function Ye(e){if(!(ue>0)){if(A)return l(y),ae(),void startWorker(y);!function(){if(y.preRun)for("function"==typeof y.preRun&&(y.preRun=[y.preRun]);y.preRun.length;)e=y.preRun.shift(),$.unshift(e);var e;_e($)}(),ue>0||(y.setStatus?(y.setStatus("Running..."),setTimeout((function(){setTimeout((function(){y.setStatus("")}),1),n()}),1)):n())}function n(){Ge||(Ge=!0,y.calledRun=!0,K||(ae(),l(y),y.onRuntimeInitialized&&y.onRuntimeInitialized(),function(){if(!A){if(y.postRun)for("function"==typeof y.postRun&&(y.postRun=[y.postRun]);y.postRun.length;)e=y.postRun.shift(),ne.unshift(e);var e;_e(ne)}}()))}}if(y.dynCall_iijjiiii=function(){return(y.dynCall_iijjiiii=y.asm.dynCall_iijjiiii).apply(null,arguments)},y.dynCall_jiji=function(){return(y.dynCall_jiji=y.asm.dynCall_jiji).apply(null,arguments)},y.keepRuntimeAlive=te,y.wasmMemory=T,y.cwrap=function(e,n,t,a){var r=(t=t||[]).every((function(e){return"number"===e||"boolean"===e}));return"string"!==n&&r&&!a?We(e):function(){return Oe(e,n,t,arguments)}},y.ExitStatus=ce,y.PThread=ye,ie=function e(){Ge||Ye(),Ge||(ie=e)},y.preInit)for("function"==typeof y.preInit&&(y.preInit=[y.preInit]);y.preInit.length>0;)y.preInit.pop()();if(Ye(),b&&(Ue={uncaughtException:process.listeners("uncaughtException").filter((function(e){return!b.uncaughtException.indexOf(e)>-1})),unhandledRejection:process.listeners("unhandledRejection").filter((function(e){return!b.unhandledRejection.indexOf(e)>-1}))}),"undefined"!=typeof WasmBackendModule)je=WasmBackendModule;else{if("undefined"==typeof e)throw new Error("Could not find wasm module in post.js");je=e}if(Ue){var $e=je._dispose;je._dispose=function(){$e(),Ue.uncaughtException.forEach((function(e){process.removeListener("uncaughtException",e)})),Ue.unhandledRejection.forEach((function(e){process.removeListener("unhandledRejection",e)}))}}return e.ready});e.exports=s}(pr);var lr=pr.exports,cr=dr(lr),mr=i({__proto__:null,default:cr},[lr]),fr={exports:{}};!function(e,n){var r,u=(r="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0,"undefined"!=typeof __filename&&(r=r||__filename),function(e){var n,u,i,s="undefined"!=typeof(e=e||{})?e:{};s.ready=new Promise((function(e,t){n=e,u=t})),"undefined"!=typeof process&&process.listeners&&(i={uncaughtException:process.listeners("uncaughtException"),unhandledRejection:process.listeners("unhandledRejection")});var o,d,p,l=Object.assign({},s),c="object"==typeof window,m="function"==typeof importScripts,f="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,h="";if(f){var b=t,y=a;h=m?y.dirname(h)+"/":__dirname+"/",o=function(e,n){return e=B(e)?new URL(e):y.normalize(e),b.readFileSync(e,n?void 0:"utf8")},p=function(e){var n=o(e,!0);return n.buffer||(n=new Uint8Array(n)),n},d=function(e,n,t){e=B(e)?new URL(e):y.normalize(e),b.readFile(e,(function(e,a){e?t(e):n(a.buffer)}))},process.argv.length>1&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),process.on("uncaughtException",(function(e){if(!(e instanceof L))throw e})),process.on("unhandledRejection",(function(e){throw e})),s.inspect=function(){return"[Emscripten Module object]"}}else(c||m)&&(m?h=self.location.href:"undefined"!=typeof document&&document.currentScript&&(h=document.currentScript.src),r&&(h=r),h=0!==h.indexOf("blob:")?h.substr(0,h.replace(/[?#].*/,"").lastIndexOf("/")+1):"",o=function(e){var n=new XMLHttpRequest;return n.open("GET",e,!1),n.send(null),n.responseText},m&&(p=function(e){var n=new XMLHttpRequest;return n.open("GET",e,!1),n.responseType="arraybuffer",n.send(null),new Uint8Array(n.response)}),d=function(e,n,t){var a=new XMLHttpRequest;a.open("GET",e,!0),a.responseType="arraybuffer",a.onload=function(){200==a.status||0==a.status&&a.response?n(a.response):t()},a.onerror=t,a.send(null)});var _,g,v=s.print||console.log.bind(console),k=s.printErr||console.warn.bind(console);Object.assign(s,l),l=null,s.arguments&&s.arguments,s.thisProgram&&s.thisProgram,s.quit&&s.quit,s.wasmBinary&&(_=s.wasmBinary),s.noExitRuntime,"object"!=typeof WebAssembly&&T("no native wasm support detected");var I,w,S,M,A=!1,x="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function F(e,n,t){for(var a=(n>>>=0)+t,r=n;e[r]&&!(r>=a);)++r;if(r-n>16&&e.buffer&&x)return x.decode(e.subarray(n,r));for(var u="";n<r;){var i=e[n++];if(128&i){var s=63&e[n++];if(192!=(224&i)){var o=63&e[n++];if((i=224==(240&i)?(15&i)<<12|s<<6|o:(7&i)<<18|s<<12|o<<6|63&e[n++])<65536)u+=String.fromCharCode(i);else{var d=i-65536;u+=String.fromCharCode(55296|d>>10,56320|1023&d)}}else u+=String.fromCharCode((31&i)<<6|s)}else u+=String.fromCharCode(i)}return u}function N(e){I=e,s.HEAP8=w=new Int8Array(e),s.HEAP16=new Int16Array(e),s.HEAP32=new Int32Array(e),s.HEAPU8=S=new Uint8Array(e),s.HEAPU16=new Uint16Array(e),s.HEAPU32=M=new Uint32Array(e),s.HEAPF32=new Float32Array(e),s.HEAPF64=new Float64Array(e)}s.INITIAL_MEMORY;var D,R,E=[],P=[],C=[],W=0,O=null;function T(e){s.onAbort&&s.onAbort(e),k(e="Aborted("+e+")"),A=!0,e+=". Build with -sASSERTIONS for more info.";var n=new WebAssembly.RuntimeError(e);throw u(n),n}function z(e){return e.startsWith("data:application/octet-stream;base64,")}function B(e){return e.startsWith("file://")}function H(e){try{if(e==D&&_)return new Uint8Array(_);if(p)return p(e);throw"both async and sync fetching of the wasm failed"}catch(e){T(e)}}function L(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}function G(e){for(;e.length>0;)e.shift()(s)}function U(e){try{return g.grow(e-I.byteLength+65535>>>16),N(g.buffer),1}catch(e){}}z(D="tfjs-backend-wasm.wasm")||(R=D,D=s.locateFile?s.locateFile(R,h):h+R);var j=[null,[],[]];function q(e,n){var t=j[e];0===n||10===n?((1===e?v:k)(F(t,0)),t.length=0):t.push(n)}function V(e){return s["_"+e]}function K(e,n,t,a,r){var u={string:function(e){var n=0;if(null!=e&&0!==e){var t=1+(e.length<<2);!function(e,n,t){!function(e,n,t,a){if(!(a>0))return 0;t>>>=0;for(var r=t+a-1,u=0;u<e.length;++u){var i=e.charCodeAt(u);if(i>=55296&&i<=57343&&(i=65536+((1023&i)<<10)|1023&e.charCodeAt(++u)),i<=127){if(t>=r)break;n[t++>>>0]=i}else if(i<=2047){if(t+1>=r)break;n[t++>>>0]=192|i>>6,n[t++>>>0]=128|63&i}else if(i<=65535){if(t+2>=r)break;n[t++>>>0]=224|i>>12,n[t++>>>0]=128|i>>6&63,n[t++>>>0]=128|63&i}else{if(t+3>=r)break;n[t++>>>0]=240|i>>18,n[t++>>>0]=128|i>>12&63,n[t++>>>0]=128|i>>6&63,n[t++>>>0]=128|63&i}}n[t>>>0]=0}(e,S,n,t)}(e,n=ee(t),t)}return n},array:function(e){var n=ee(e.length);return function(e,n){w.set(e,n>>>0)}(e,n),n}};function i(e){return"string"===n?(t=e,(t>>>=0)?F(S,t,a):""):"boolean"===n?Boolean(e):e;var t,a}var s=V(e),o=[],d=0;if(a)for(var p=0;p<a.length;p++){var l=u[t[p]];l?(0===d&&(d=Y()),o[p]=l(a[p])):o[p]=a[p]}var c=s.apply(null,o);return c=function(e){return 0!==d&&$(d),i(e)}(c)}var X={abort:function(){T("")},emscripten_get_heap_max:function(){return 4294901760},emscripten_memcpy_big:function(e,n,t){S.copyWithin(e>>>0,n>>>0,n+t>>>0)},emscripten_resize_heap:function(e){var n=S.length,t=4294901760;if((e>>>=0)>t)return!1;for(var a,r,u=1;u<=4;u*=2){var i=n*(1+.2/u);if(i=Math.min(i,e+100663296),U(Math.min(t,(a=Math.max(e,i))+((r=65536)-a%r)%r)))return!0}return!1},fd_close:function(e){return 52},fd_seek:function(e,n,t,a,r){return 70},fd_write:function(e,n,t,a){for(var r=0,u=0;u<t;u++){var i=M[n>>>2],s=M[n+4>>>2];n+=8;for(var o=0;o<s;o++)q(e,S[i+o>>>0]);r+=s}return M[a>>>2]=r,0}};!function(){var e={env:X,wasi_snapshot_preview1:X};function n(e,n){var t,a=e.exports;s.asm=a,N((g=s.asm.memory).buffer),s.asm.__indirect_function_table,t=s.asm.__wasm_call_ctors,P.unshift(t),function(e){if(W--,s.monitorRunDependencies&&s.monitorRunDependencies(W),0==W&&O){var n=O;O=null,n()}}()}function t(e){n(e.instance)}function a(n){return function(){if(!_&&(c||m)){if("function"==typeof fetch&&!B(D))return fetch(D,{credentials:"same-origin"}).then((function(e){if(!e.ok)throw"failed to load wasm binary file at '"+D+"'";return e.arrayBuffer()})).catch((function(){return H(D)}));if(d)return new Promise((function(e,n){d(D,(function(n){e(new Uint8Array(n))}),n)}))}return Promise.resolve().then((function(){return H(D)}))}().then((function(n){return WebAssembly.instantiate(n,e)})).then((function(e){return e})).then(n,(function(e){k("failed to asynchronously prepare wasm: "+e),T(e)}))}if(W++,s.monitorRunDependencies&&s.monitorRunDependencies(W),s.instantiateWasm)try{return s.instantiateWasm(e,n)}catch(e){k("Module.instantiateWasm callback failed with error: "+e),u(e)}(_||"function"!=typeof WebAssembly.instantiateStreaming||z(D)||B(D)||f||"function"!=typeof fetch?a(t):fetch(D,{credentials:"same-origin"}).then((function(n){return WebAssembly.instantiateStreaming(n,e).then(t,(function(e){return k("wasm streaming compile failed: "+e),k("falling back to ArrayBuffer instantiation"),a(t)}))}))).catch(u)}(),s.___wasm_call_ctors=function(){return(s.___wasm_call_ctors=s.asm.__wasm_call_ctors).apply(null,arguments)},s._init=function(){return(s._init=s.asm.init).apply(null,arguments)},s._init_with_threads_count=function(){return(s._init_with_threads_count=s.asm.init_with_threads_count).apply(null,arguments)},s._get_threads_count=function(){return(s._get_threads_count=s.asm.get_threads_count).apply(null,arguments)},s._register_tensor=function(){return(s._register_tensor=s.asm.register_tensor).apply(null,arguments)},s._dispose_data=function(){return(s._dispose_data=s.asm.dispose_data).apply(null,arguments)},s._dispose=function(){return(s._dispose=s.asm.dispose).apply(null,arguments)},s._Abs=function(){return(s._Abs=s.asm.Abs).apply(null,arguments)},s._Acos=function(){return(s._Acos=s.asm.Acos).apply(null,arguments)},s._Acosh=function(){return(s._Acosh=s.asm.Acosh).apply(null,arguments)},s._Add=function(){return(s._Add=s.asm.Add).apply(null,arguments)},s._AddN=function(){return(s._AddN=s.asm.AddN).apply(null,arguments)},s._All=function(){return(s._All=s.asm.All).apply(null,arguments)},s._Any=function(){return(s._Any=s.asm.Any).apply(null,arguments)},s._ArgMax=function(){return(s._ArgMax=s.asm.ArgMax).apply(null,arguments)},s._ArgMin=function(){return(s._ArgMin=s.asm.ArgMin).apply(null,arguments)},s._Asin=function(){return(s._Asin=s.asm.Asin).apply(null,arguments)},s._Asinh=function(){return(s._Asinh=s.asm.Asinh).apply(null,arguments)},s._Atan=function(){return(s._Atan=s.asm.Atan).apply(null,arguments)},s._Atan2=function(){return(s._Atan2=s.asm.Atan2).apply(null,arguments)},s._Atanh=function(){return(s._Atanh=s.asm.Atanh).apply(null,arguments)},s._AvgPool=function(){return(s._AvgPool=s.asm.AvgPool).apply(null,arguments)},s._AvgPool3D=function(){return(s._AvgPool3D=s.asm.AvgPool3D).apply(null,arguments)},s._AvgPool3DGrad=function(){return(s._AvgPool3DGrad=s.asm.AvgPool3DGrad).apply(null,arguments)},s._AvgPoolGrad=function(){return(s._AvgPoolGrad=s.asm.AvgPoolGrad).apply(null,arguments)},s._BatchMatMul=function(){return(s._BatchMatMul=s.asm.BatchMatMul).apply(null,arguments)},s._Bincount=function(){return(s._Bincount=s.asm.Bincount).apply(null,arguments)},s._BitwiseAnd=function(){return(s._BitwiseAnd=s.asm.BitwiseAnd).apply(null,arguments)},s._Ceil=function(){return(s._Ceil=s.asm.Ceil).apply(null,arguments)},s._ClipByValue=function(){return(s._ClipByValue=s.asm.ClipByValue).apply(null,arguments)},s._Conv2D=function(){return(s._Conv2D=s.asm.Conv2D).apply(null,arguments)},s._Conv2DBackpropInput=function(){return(s._Conv2DBackpropInput=s.asm.Conv2DBackpropInput).apply(null,arguments)},s._Conv3D=function(){return(s._Conv3D=s.asm.Conv3D).apply(null,arguments)},s._Conv3DBackpropFilterV2=function(){return(s._Conv3DBackpropFilterV2=s.asm.Conv3DBackpropFilterV2).apply(null,arguments)},s._Conv3DBackpropInputV2=function(){return(s._Conv3DBackpropInputV2=s.asm.Conv3DBackpropInputV2).apply(null,arguments)},s._Cos=function(){return(s._Cos=s.asm.Cos).apply(null,arguments)},s._Cosh=function(){return(s._Cosh=s.asm.Cosh).apply(null,arguments)},s._CropAndResize=function(){return(s._CropAndResize=s.asm.CropAndResize).apply(null,arguments)},s._Cumprod=function(){return(s._Cumprod=s.asm.Cumprod).apply(null,arguments)},s._Cumsum=function(){return(s._Cumsum=s.asm.Cumsum).apply(null,arguments)},s._DenseBincount=function(){return(s._DenseBincount=s.asm.DenseBincount).apply(null,arguments)},s._DepthToSpace=function(){return(s._DepthToSpace=s.asm.DepthToSpace).apply(null,arguments)},s._DepthwiseConv2dNative=function(){return(s._DepthwiseConv2dNative=s.asm.DepthwiseConv2dNative).apply(null,arguments)},s._Diag=function(){return(s._Diag=s.asm.Diag).apply(null,arguments)},s._Dilation2D=function(){return(s._Dilation2D=s.asm.Dilation2D).apply(null,arguments)},s._Dilation2DBackpropFilter=function(){return(s._Dilation2DBackpropFilter=s.asm.Dilation2DBackpropFilter).apply(null,arguments)},s._Dilation2DBackpropInput=function(){return(s._Dilation2DBackpropInput=s.asm.Dilation2DBackpropInput).apply(null,arguments)},s._Elu=function(){return(s._Elu=s.asm.Elu).apply(null,arguments)},s._EluGrad=function(){return(s._EluGrad=s.asm.EluGrad).apply(null,arguments)},s._Equal=function(){return(s._Equal=s.asm.Equal).apply(null,arguments)},s._Erf=function(){return(s._Erf=s.asm.Erf).apply(null,arguments)},s._Exp=function(){return(s._Exp=s.asm.Exp).apply(null,arguments)},s._Expm1=function(){return(s._Expm1=s.asm.Expm1).apply(null,arguments)},s._FlipLeftRight=function(){return(s._FlipLeftRight=s.asm.FlipLeftRight).apply(null,arguments)},s._Floor=function(){return(s._Floor=s.asm.Floor).apply(null,arguments)},s._FloorDiv=function(){return(s._FloorDiv=s.asm.FloorDiv).apply(null,arguments)},s._FusedBatchNorm=function(){return(s._FusedBatchNorm=s.asm.FusedBatchNorm).apply(null,arguments)},s._FusedConv2D=function(){return(s._FusedConv2D=s.asm.FusedConv2D).apply(null,arguments)},s._FusedDepthwiseConv2D=function(){return(s._FusedDepthwiseConv2D=s.asm.FusedDepthwiseConv2D).apply(null,arguments)},s._Gather=function(){return(s._Gather=s.asm.Gather).apply(null,arguments)},s._GatherNd=function(){return(s._GatherNd=s.asm.GatherNd).apply(null,arguments)},s._Greater=function(){return(s._Greater=s.asm.Greater).apply(null,arguments)},s._GreaterEqual=function(){return(s._GreaterEqual=s.asm.GreaterEqual).apply(null,arguments)},s._IsFinite=function(){return(s._IsFinite=s.asm.IsFinite).apply(null,arguments)},s._IsInf=function(){return(s._IsInf=s.asm.IsInf).apply(null,arguments)},s._IsNan=function(){return(s._IsNan=s.asm.IsNan).apply(null,arguments)},s._LRN=function(){return(s._LRN=s.asm.LRN).apply(null,arguments)},s._LRNGrad=function(){return(s._LRNGrad=s.asm.LRNGrad).apply(null,arguments)},s._LeakyRelu=function(){return(s._LeakyRelu=s.asm.LeakyRelu).apply(null,arguments)},s._Less=function(){return(s._Less=s.asm.Less).apply(null,arguments)},s._LessEqual=function(){return(s._LessEqual=s.asm.LessEqual).apply(null,arguments)},s._LinSpace=function(){return(s._LinSpace=s.asm.LinSpace).apply(null,arguments)},s._Log=function(){return(s._Log=s.asm.Log).apply(null,arguments)},s._Log1p=function(){return(s._Log1p=s.asm.Log1p).apply(null,arguments)},s._LogicalAnd=function(){return(s._LogicalAnd=s.asm.LogicalAnd).apply(null,arguments)},s._LogicalNot=function(){return(s._LogicalNot=s.asm.LogicalNot).apply(null,arguments)},s._LogicalOr=function(){return(s._LogicalOr=s.asm.LogicalOr).apply(null,arguments)},s._LogicalXor=function(){return(s._LogicalXor=s.asm.LogicalXor).apply(null,arguments)},s._Max=function(){return(s._Max=s.asm.Max).apply(null,arguments)},s._MaxPool=function(){return(s._MaxPool=s.asm.MaxPool).apply(null,arguments)},s._MaxPool3D=function(){return(s._MaxPool3D=s.asm.MaxPool3D).apply(null,arguments)},s._MaxPool3DGrad=function(){return(s._MaxPool3DGrad=s.asm.MaxPool3DGrad).apply(null,arguments)},s._MaxPoolGrad=function(){return(s._MaxPoolGrad=s.asm.MaxPoolGrad).apply(null,arguments)},s._MaxPoolWithArgmax=function(){return(s._MaxPoolWithArgmax=s.asm.MaxPoolWithArgmax).apply(null,arguments)},s._Maximum=function(){return(s._Maximum=s.asm.Maximum).apply(null,arguments)},s._Mean=function(){return(s._Mean=s.asm.Mean).apply(null,arguments)},s._Min=function(){return(s._Min=s.asm.Min).apply(null,arguments)},s._Minimum=function(){return(s._Minimum=s.asm.Minimum).apply(null,arguments)},s._MirrorPad=function(){return(s._MirrorPad=s.asm.MirrorPad).apply(null,arguments)},s._Mod=function(){return(s._Mod=s.asm.Mod).apply(null,arguments)},s._Multinomial=function(){return(s._Multinomial=s.asm.Multinomial).apply(null,arguments)},s._Multiply=function(){return(s._Multiply=s.asm.Multiply).apply(null,arguments)},s._Neg=function(){return(s._Neg=s.asm.Neg).apply(null,arguments)},s._NonMaxSuppressionV3=function(){return(s._NonMaxSuppressionV3=s.asm.NonMaxSuppressionV3).apply(null,arguments)},s._NonMaxSuppressionV4=function(){return(s._NonMaxSuppressionV4=s.asm.NonMaxSuppressionV4).apply(null,arguments)},s._NonMaxSuppressionV5=function(){return(s._NonMaxSuppressionV5=s.asm.NonMaxSuppressionV5).apply(null,arguments)},s._NotEqual=function(){return(s._NotEqual=s.asm.NotEqual).apply(null,arguments)},s._OneHot=function(){return(s._OneHot=s.asm.OneHot).apply(null,arguments)},s._PadV2=function(){return(s._PadV2=s.asm.PadV2).apply(null,arguments)},s._Pow=function(){return(s._Pow=s.asm.Pow).apply(null,arguments)},s._Prelu=function(){return(s._Prelu=s.asm.Prelu).apply(null,arguments)},s._Prod=function(){return(s._Prod=s.asm.Prod).apply(null,arguments)},s._RealDiv=function(){return(s._RealDiv=s.asm.RealDiv).apply(null,arguments)},s._Reciprocal=function(){return(s._Reciprocal=s.asm.Reciprocal).apply(null,arguments)},s._Relu=function(){return(s._Relu=s.asm.Relu).apply(null,arguments)},s._Relu6=function(){return(s._Relu6=s.asm.Relu6).apply(null,arguments)},s._ResizeBilinear=function(){return(s._ResizeBilinear=s.asm.ResizeBilinear).apply(null,arguments)},s._ResizeBilinearGrad=function(){return(s._ResizeBilinearGrad=s.asm.ResizeBilinearGrad).apply(null,arguments)},s._ResizeNearestNeighbor=function(){return(s._ResizeNearestNeighbor=s.asm.ResizeNearestNeighbor).apply(null,arguments)},s._ResizeNearestNeighborGrad=function(){return(s._ResizeNearestNeighborGrad=s.asm.ResizeNearestNeighborGrad).apply(null,arguments)},s._Reverse=function(){return(s._Reverse=s.asm.Reverse).apply(null,arguments)},s._RotateWithOffset=function(){return(s._RotateWithOffset=s.asm.RotateWithOffset).apply(null,arguments)},s._Round=function(){return(s._Round=s.asm.Round).apply(null,arguments)},s._Rsqrt=function(){return(s._Rsqrt=s.asm.Rsqrt).apply(null,arguments)},s._ScatterNd=function(){return(s._ScatterNd=s.asm.ScatterNd).apply(null,arguments)},s._SearchSorted=function(){return(s._SearchSorted=s.asm.SearchSorted).apply(null,arguments)},s._SelectV2=function(){return(s._SelectV2=s.asm.SelectV2).apply(null,arguments)},s._Selu=function(){return(s._Selu=s.asm.Selu).apply(null,arguments)},s._Sigmoid=function(){return(s._Sigmoid=s.asm.Sigmoid).apply(null,arguments)},s._Sign=function(){return(s._Sign=s.asm.Sign).apply(null,arguments)},s._Sin=function(){return(s._Sin=s.asm.Sin).apply(null,arguments)},s._Sinh=function(){return(s._Sinh=s.asm.Sinh).apply(null,arguments)},s._Softmax=function(){return(s._Softmax=s.asm.Softmax).apply(null,arguments)},s._Softplus=function(){return(s._Softplus=s.asm.Softplus).apply(null,arguments)},s._SparseFillEmptyRows=function(){return(s._SparseFillEmptyRows=s.asm.SparseFillEmptyRows).apply(null,arguments)},s._SparseReshape=function(){return(s._SparseReshape=s.asm.SparseReshape).apply(null,arguments)},s._SparseSegmentReduction=function(){return(s._SparseSegmentReduction=s.asm.SparseSegmentReduction).apply(null,arguments)},s._SparseToDense=function(){return(s._SparseToDense=s.asm.SparseToDense).apply(null,arguments)},s._Sqrt=function(){return(s._Sqrt=s.asm.Sqrt).apply(null,arguments)},s._Square=function(){return(s._Square=s.asm.Square).apply(null,arguments)},s._SquaredDifference=function(){return(s._SquaredDifference=s.asm.SquaredDifference).apply(null,arguments)},s._Step=function(){return(s._Step=s.asm.Step).apply(null,arguments)},s._StridedSlice=function(){return(s._StridedSlice=s.asm.StridedSlice).apply(null,arguments)},s._Sub=function(){return(s._Sub=s.asm.Sub).apply(null,arguments)},s._Sum=function(){return(s._Sum=s.asm.Sum).apply(null,arguments)},s._Tan=function(){return(s._Tan=s.asm.Tan).apply(null,arguments)},s._Tanh=function(){return(s._Tanh=s.asm.Tanh).apply(null,arguments)},s._TensorScatterUpdate=function(){return(s._TensorScatterUpdate=s.asm.TensorScatterUpdate).apply(null,arguments)},s._Tile=function(){return(s._Tile=s.asm.Tile).apply(null,arguments)},s._TopK=function(){return(s._TopK=s.asm.TopK).apply(null,arguments)},s._Transform=function(){return(s._Transform=s.asm.Transform).apply(null,arguments)},s._Transpose=function(){return(s._Transpose=s.asm.Transpose).apply(null,arguments)},s.__FusedMatMul=function(){return(s.__FusedMatMul=s.asm._FusedMatMul).apply(null,arguments)},s._malloc=function(){return(s._malloc=s.asm.malloc).apply(null,arguments)},s._free=function(){return(s._free=s.asm.free).apply(null,arguments)},s.___errno_location=function(){return(s.___errno_location=s.asm.__errno_location).apply(null,arguments)};var Q,J,Z,Y=s.stackSave=function(){return(Y=s.stackSave=s.asm.stackSave).apply(null,arguments)},$=s.stackRestore=function(){return($=s.stackRestore=s.asm.stackRestore).apply(null,arguments)},ee=s.stackAlloc=function(){return(ee=s.stackAlloc=s.asm.stackAlloc).apply(null,arguments)};function ne(e){function t(){Q||(Q=!0,s.calledRun=!0,A||(G(P),n(s),s.onRuntimeInitialized&&s.onRuntimeInitialized(),function(){if(s.postRun)for("function"==typeof s.postRun&&(s.postRun=[s.postRun]);s.postRun.length;)e=s.postRun.shift(),C.unshift(e);var e;G(C)}()))}W>0||(function(){if(s.preRun)for("function"==typeof s.preRun&&(s.preRun=[s.preRun]);s.preRun.length;)e=s.preRun.shift(),E.unshift(e);var e;G(E)}(),W>0||(s.setStatus?(s.setStatus("Running..."),setTimeout((function(){setTimeout((function(){s.setStatus("")}),1),t()}),1)):t()))}if(s.dynCall_iijjiiii=function(){return(s.dynCall_iijjiiii=s.asm.dynCall_iijjiiii).apply(null,arguments)},s.dynCall_jiji=function(){return(s.dynCall_jiji=s.asm.dynCall_jiji).apply(null,arguments)},s.cwrap=function(e,n,t,a){var r=(t=t||[]).every((function(e){return"number"===e||"boolean"===e}));return"string"!==n&&r&&!a?V(e):function(){return K(e,n,t,arguments)}},O=function e(){Q||ne(),Q||(O=e)},s.preInit)for("function"==typeof s.preInit&&(s.preInit=[s.preInit]);s.preInit.length>0;)s.preInit.pop()();if(ne(),i&&(J={uncaughtException:process.listeners("uncaughtException").filter((function(e){return!i.uncaughtException.indexOf(e)>-1})),unhandledRejection:process.listeners("unhandledRejection").filter((function(e){return!i.unhandledRejection.indexOf(e)>-1}))}),"undefined"!=typeof e)Z=e;else{if("undefined"==typeof WasmBackendModuleThreadedSimd)throw new Error("Could not find wasm module in post.js");Z=WasmBackendModuleThreadedSimd}if(J){var te=Z._dispose;Z._dispose=function(){te(),J.uncaughtException.forEach((function(e){process.removeListener("uncaughtException",e)})),J.unhandledRejection.forEach((function(e){process.removeListener("unhandledRejection",e)}))}}return e.ready});e.exports=u}(fr);var hr=fr.exports,br=dr(hr),yr=cr||mr,_r=br||i({__proto__:null,default:br},[hr]),gr=function(e){function t(t){var a=e.call(this)||this;return a.wasm=t,a.dataIdNextNumber=1,a.wasm.tfjs.initWithThreadsCount(Fr),Nr=a.wasm.tfjs.getThreadsCount(),a.dataIdMap=new n.DataStorage(a,n.engine()),a}return function(e,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function t(){this.constructor=e}p(e,n),e.prototype=null===n?Object.create(n):(t.prototype=n.prototype,new t)}(t,e),t.prototype.write=function(e,n,t){var a={id:this.dataIdNextNumber++};return this.move(a,e,n,t,1),a},t.prototype.numDataIds=function(){return this.dataIdMap.numDataIds()},t.prototype.time=function(e){return l(this,void 0,void 0,(function(){var t;return c(this,(function(a){return t=n.util.now(),e(),[2,{kernelMs:n.util.now()-t}]}))}))},t.prototype.move=function(e,t,a,r,u){var i=this.dataIdNextNumber++;if("string"!==r){var s=n.util.sizeFromShape(a),o=s*n.util.bytesPerElement(r),d=this.wasm._malloc(o)>>>0;this.dataIdMap.set(e,{id:i,memoryOffset:d,shape:a,dtype:r,refCount:u}),this.wasm.tfjs.registerTensor(i,s,d),null!=t&&this.wasm.HEAPU8.set(new Uint8Array(t.buffer,t.byteOffset,o),d)}else{var p=t;this.dataIdMap.set(e,{id:i,stringBytes:p,shape:a,dtype:r,memoryOffset:null,refCount:u})}},t.prototype.read=function(e){return l(this,void 0,void 0,(function(){return c(this,(function(n){return[2,this.readSync(e)]}))}))},t.prototype.readSync=function(e,t,a){var r=this.dataIdMap.get(e),u=r.memoryOffset,i=r.dtype,s=r.shape,o=r.stringBytes;if("string"===i)return null!=t&&0!==t||!(null==a||a>=o.length)?o.slice(t,a):o;t=t||0,a=a||n.util.sizeFromShape(s);var d=n.util.bytesPerElement(i);return function(e,n){switch(n){case"float32":return new Float32Array(e);case"int32":return new Int32Array(e);case"bool":return new Uint8Array(e);default:throw new Error("Unknown dtype ".concat(n))}}(this.wasm.HEAPU8.slice(u+t*d,u+a*d).buffer,i)},t.prototype.disposeData=function(e,n){if(void 0===n&&(n=!1),this.dataIdMap.has(e)){var t=this.dataIdMap.get(e);if(t.refCount--,!n&&t.refCount>0)return!1;this.wasm._free(t.memoryOffset),this.wasm.tfjs.disposeData(t.id),this.dataIdMap.delete(e)}return!0},t.prototype.refCount=function(e){return this.dataIdMap.has(e)?this.dataIdMap.get(e).refCount:0},t.prototype.incRef=function(e){var n=this.dataIdMap.get(e);null!=n&&n.refCount++},t.prototype.floatPrecision=function(){return 32},t.prototype.getMemoryOffset=function(e){return this.dataIdMap.get(e).memoryOffset},t.prototype.dispose=function(){this.wasm.tfjs.dispose(),"PThread"in this.wasm&&this.wasm.PThread.terminateAllThreads(),this.wasm=null},t.prototype.memory=function(){return{unreliable:!1}},t.prototype.makeOutput=function(e,t,a,r){var u;if(null==a)u=this.write(null!=r?r:null,e,t);else{var i=this.dataIdNextNumber++;u={id:i},this.dataIdMap.set(u,{id:i,memoryOffset:a,shape:e,dtype:t,refCount:1});var s=n.util.sizeFromShape(e);this.wasm.tfjs.registerTensor(i,s,a)}return{dataId:u,shape:e,dtype:t}},t.prototype.typedArrayFromHeap=function(e){var t=e.shape,a=e.dtype,r=e.dataId,u=this.wasm.HEAPU8.buffer,i=this.dataIdMap.get(r).memoryOffset,s=n.util.sizeFromShape(t);switch(a){case"float32":return new Float32Array(u,i,s);case"int32":return new Int32Array(u,i,s);case"bool":return new Uint8Array(u,i,s);default:throw new Error("Unknown dtype ".concat(a))}},t}(n.KernelBackend);function vr(e,n,t){if(null!=wr)return wr;var a="tfjs-backend-wasm.wasm";return e&&n?a="tfjs-backend-wasm-threaded-simd.wasm":e&&(a="tfjs-backend-wasm-simd.wasm"),null!=Mr&&null!=Mr[a]?Mr[a]:t+a}function kr(){return l(this,void 0,void 0,(function(){var e,t,a;return c(this,(function(r){switch(r.label){case 0:return[4,Promise.all([n.env().getAsync("WASM_HAS_SIMD_SUPPORT"),n.env().getAsync("WASM_HAS_MULTITHREAD_SUPPORT")])];case 1:return e=f.apply(void 0,[r.sent(),2]),t=e[0],a=e[1],[2,new Promise((function(e,r){var u,i={};i.locateFile=function(e,n){if(e.endsWith(".worker.js")){var r='"use strict";var Module={};var ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string";if(ENVIRONMENT_IS_NODE){var nodeWorkerThreads=require("worker_threads");var parentPort=nodeWorkerThreads.parentPort;parentPort.on("message",data=>onmessage({data:data}));var fs=require("fs");Object.assign(global,{self:global,require:require,Module:Module,location:{href:__filename},Worker:nodeWorkerThreads.Worker,importScripts:function(f){(0,eval)(fs.readFileSync(f,"utf8")+"//# sourceURL="+f)},postMessage:function(msg){parentPort.postMessage(msg)},performance:global.performance||{now:function(){return Date.now()}}})}var initializedJS=false;var pendingNotifiedProxyingQueues=[];function threadPrintErr(){var text=Array.prototype.slice.call(arguments).join(" ");if(ENVIRONMENT_IS_NODE){fs.writeSync(2,text+"\n");return}console.error(text)}function threadAlert(){var text=Array.prototype.slice.call(arguments).join(" ");postMessage({cmd:"alert",text:text,threadId:Module["_pthread_self"]()})}var err=threadPrintErr;self.alert=threadAlert;Module["instantiateWasm"]=(info,receiveInstance)=>{var instance=new WebAssembly.Instance(Module["wasmModule"],info);receiveInstance(instance);Module["wasmModule"]=null;return instance.exports};self.onunhandledrejection=e=>{throw e.reason??e};self.startWorker=instance=>{Module=instance;postMessage({"cmd":"loaded"})};self.onmessage=e=>{try{if(e.data.cmd==="load"){Module["wasmModule"]=e.data.wasmModule;for(const handler of e.data.handlers){Module[handler]=function(){postMessage({cmd:"callHandler",handler:handler,args:[...arguments]})}}Module["wasmMemory"]=e.data.wasmMemory;Module["buffer"]=Module["wasmMemory"].buffer;Module["ENVIRONMENT_IS_PTHREAD"]=true;if(typeof e.data.urlOrBlob=="string"){importScripts(e.data.urlOrBlob)}else{var objectUrl=URL.createObjectURL(e.data.urlOrBlob);importScripts(objectUrl);URL.revokeObjectURL(objectUrl)}WasmBackendModuleThreadedSimd(Module)}else if(e.data.cmd==="run"){Module["__emscripten_thread_init"](e.data.pthread_ptr,0,0,1);Module["establishStackSpace"]();Module["PThread"].receiveObjectTransfer(e.data);Module["PThread"].threadInitTLS();if(!initializedJS){pendingNotifiedProxyingQueues.forEach(queue=>{Module["executeNotifiedProxyingQueue"](queue)});pendingNotifiedProxyingQueues=[];initializedJS=true}try{Module["invokeEntryPoint"](e.data.start_routine,e.data.arg)}catch(ex){if(ex!="unwind"){if(ex instanceof Module["ExitStatus"]){if(Module["keepRuntimeAlive"]()){}else{Module["__emscripten_thread_exit"](ex.status)}}else{throw ex}}}}else if(e.data.cmd==="cancel"){if(Module["_pthread_self"]()){Module["__emscripten_thread_exit"](-1)}}else if(e.data.target==="setimmediate"){}else if(e.data.cmd==="processProxyingQueue"){if(initializedJS){Module["executeNotifiedProxyingQueue"](e.data.queue)}else{pendingNotifiedProxyingQueues.push(e.data.queue)}}else if(e.data.cmd){err("worker.js received unknown command "+e.data.cmd);err(e.data)}}catch(ex){if(Module["__emscripten_thread_crashed"]){Module["__emscripten_thread_crashed"]()}throw ex}};'.replace(/\n/g,"\\n"),u=new Blob([r],{type:"application/javascript"});return URL.createObjectURL(u)}return e.endsWith(".wasm")?vr(t,a,null!=Sr?Sr:n):n+e},xr&&(i.instantiateWasm=(u=vr(t,a,null!=Sr?Sr:""),function(e,t){return n.util.fetch(u,{credentials:"same-origin"}).then((function(n){n.ok||e.env.a("failed to load wasm binary file at '".concat(u,"'")),n.arrayBuffer().then((function(n){WebAssembly.instantiate(n,e).then((function(e){t(e.instance,e.module)}))}))})),{}}));var s,o=!1;i.onAbort=function(){if(!o&&!Ar){Ar=!0;r({message:"Make sure the server can serve the `.wasm` file relative to the bundled js file. For more details see https://github.com/tensorflow/tfjs/blob/master/tfjs-backend-wasm/README.md#using-bundlers"})}},a&&t&&null==wr?(i.mainScriptUrlOrBlob=new Blob(["var WasmBackendModuleThreadedSimd = "+yr.toString()],{type:"text/javascript"}),s=yr(i)):s=_r(i),s.then((function(n){o=!0,Ar=!1;n.tfjs={init:n.cwrap("init",null,[]),initWithThreadsCount:n.cwrap("init_with_threads_count",null,["number"]),getThreadsCount:n.cwrap("get_threads_count","number",[]),registerTensor:n.cwrap("register_tensor",null,["number","number","number"]),disposeData:n.cwrap("dispose_data",null,["number"]),dispose:n.cwrap("dispose",null,[])},e({wasm:n})})).catch(r)}))]}}))}))}var Ir=["tfjs-backend-wasm.wasm","tfjs-backend-wasm-simd.wasm","tfjs-backend-wasm-threaded-simd.wasm"],wr=null,Sr=null,Mr={},Ar=!1,xr=!1;var Fr=-1,Nr=-1;n.registerBackend("wasm",(function(){return l(void 0,void 0,void 0,(function(){var e;return c(this,(function(n){switch(n.label){case 0:return[4,kr()];case 1:return e=n.sent().wasm,[2,new gr(e)]}}))}))}),2),e.BackendWasm=gr,e.getThreadsCount=function(){if(-1===Nr)throw new Error("WASM backend not initialized.");return Nr},e.setThreadsCount=function(e){Fr=e},e.setWasmPath=function(e,t){if(void 0===t&&(t=!1),n.deprecationWarn("setWasmPath has been deprecated in favor of setWasmPaths and will be removed in a future release."),Ar)throw new Error("The WASM backend was already initialized. Make sure you call `setWasmPath()` before you call `tf.setBackend()` or `tf.ready()`");wr=e,xr=t},e.setWasmPaths=function(e,n){if(void 0===n&&(n=!1),Ar)throw new Error("The WASM backend was already initialized. Make sure you call `setWasmPaths()` before you call `tf.setBackend()` or `tf.ready()`");if("string"==typeof e)Sr=e;else{Mr=e;var t=Ir.filter((function(e){return null==Mr[e]}));if(t.length>0)throw new Error("There were no entries found for the following binaries: "+"".concat(t.join(","),". Please either call setWasmPaths with a ")+"map providing a path for each binary, or with a string indicating the directory where all the binaries can be found.")}xr=n},e.version_wasm="4.22.0"}));
//# sourceMappingURL=tf-backend-wasm.min.js.map