1)return s.util.makeZerosTypedArray(0,o);const r=Math.abs(Math.ceil((t-e)/n)),i=s.util.makeZerosTypedArray(r,o);te/t)),a=Object(r.binaryKernelFunc)(s.RealDiv,i),u={kernelName:s.RealDiv,backendName:"cpu",kernelFunc:a}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Reciprocal.js":
+/*!******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Reciprocal.js ***!
+ \******************************************************************************/
+/*! exports provided: reciprocal, reciprocalConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"reciprocal",(function(){return r})),n.d(t,"reciprocalConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../utils/unary_utils */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/unary_utils.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const r=Object(o.unaryKernelFunc)(s.Reciprocal,(e=>1/e)),i={kernelName:s.Reciprocal,backendName:"cpu",kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Relu.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Relu.js ***!
+ \************************************************************************/
+/*! exports provided: relu, reluConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"relu",(function(){return r})),n.d(t,"reluConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../utils/unary_utils */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/unary_utils.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const r=Object(o.unaryKernelFunc)(s.Relu,(e=>Math.max(0,e))),i={kernelName:s.Relu,backendName:"cpu",kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Relu6.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Relu6.js ***!
+ \*************************************************************************/
+/*! exports provided: relu6, relu6Config */function(e,t,n){"use strict";n.r(t),n.d(t,"relu6",(function(){return r})),n.d(t,"relu6Config",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../utils/unary_utils */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/unary_utils.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const r=Object(o.unaryKernelFunc)(s.Relu6,(e=>Math.min(Math.max(0,e),6))),i={kernelName:s.Relu6,backendName:"cpu",kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Reshape.js":
+/*!***************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Reshape.js ***!
+ \***************************************************************************/
+/*! exports provided: reshape, reshapeConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"reshape",(function(){return o})),n.d(t,"reshapeConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2020 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 o(e){const{inputs:t,backend:n,attrs:o}=e,{x:r}=t,{shape:i}=o,a=s.util.sizeFromShape(r.shape),u=s.util.inferFromImplicitShape(i,a),d=s.util.sizeFromShape(u);s.util.assert(a===d,(()=>`The new shape (${u}) has ${d} elements and the old shape (${r.shape}) has ${a} elements. The new shape and old shape must have the same number of elements.`)),n.incRef(r.dataId);const l=n.data.get(r.dataId);if(null!=l.complexTensorInfos){const e=l.complexTensorInfos.real,t=l.complexTensorInfos.imag;e.shape=u,t.shape=u}return{dataId:r.dataId,shape:u,dtype:r.dtype}}const r={kernelName:s.Reshape,backendName:"cpu",kernelFunc:o}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/ResizeBilinear.js":
+/*!**********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/ResizeBilinear.js ***!
+ \**********************************************************************************/
+/*! exports provided: resizeBilinear, resizeBilinearConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"resizeBilinear",(function(){return r})),n.d(t,"resizeBilinearConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../cpu_util */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/cpu_util.js");
+/**
+ * @license
+ * Copyright 2020 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 r(e){const{inputs:t,backend:n,attrs:r}=e,{images:i}=t,{alignCorners:a,halfPixelCenters:u,size:d}=r;Object(o.assertNotComplex)(i,"resizeBilinear");const l=s.util.computeStrides(i.shape),[c,f]=d,[p,m,h,b]=i.shape,j=n.data.get(i.dataId).values,g=new Float32Array(s.util.sizeFromShape([p,c,f,b])),w=[a&&c>1?m-1:m,a&&f>1?h-1:h],_=[a&&c>1?c-1:c,a&&f>1?f-1:f];let k=0;const v=w[0]/_[0],x=w[1]/_[1];for(let e=0;e1?c-1:c,u&&h>1?f-1:f],g=[u&&m>1?m-1:m,u&&h>1?h-1:h],w=j[0]/g[0],_=j[1]/g[1],k=n.data.get(a.dataId).values;let v=0;for(let e=0;e1?m-1:m,a&&f>1?h-1:h],_=[a&&c>1?c-1:c,a&&f>1?f-1:f],k=w[0]/_[0],v=w[1]/_[1];let x=0;for(let e=0;e1?f-1:f,u&&b>1?p-1:p],_=[u&&h>1?h-1:h,u&&b>1?b-1:b],k=w[0]/_[0],v=w[1]/_[1],x=1/k,y=1/v,O=2*Math.ceil(x)+2,I=2*Math.ceil(y)+2;for(let e=0;e=h)continue;const c=t+d*l[1],m=d*k;if(e===Math.min(f-1,u?Math.round(m):Math.floor(m)))for(let e=0;e=b)continue;const o=c+t*l[2],r=t*v;s===Math.min(p-1,u?Math.round(r):Math.floor(r))&&(i+=g[o+n])}}j[r+n]=i}}}}return n.makeTensorInfo(i.shape,i.dtype,j)}const i={kernelName:s.ResizeNearestNeighborGrad,backendName:"cpu",kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Reverse.js":
+/*!***************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Reverse.js ***!
+ \***************************************************************************/
+/*! exports provided: reverse, reverseConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"reverse",(function(){return i})),n.d(t,"reverseConfig",(function(){return a}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../cpu_util */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/cpu_util.js"),r=n(/*! ./Identity */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Identity.js");
+/**
+ * @license
+ * Copyright 2020 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 i(e){const{inputs:t,backend:n,attrs:i}=e,{x:a}=t,{dims:u}=i;Object(o.assertNotComplex)(a,"reverse");const d=a.shape.length,l=s.util.parseAxisParam(u,a.shape);if(0===d)return Object(r.identity)({inputs:{x:a},backend:n});const c=new s.TensorBuffer(a.shape,a.dtype),f=n.bufferSync(a);for(let e=0;en[e]=a.shape[e]-1-n[e])),c.set(f.get(...n),...t)}return n.makeTensorInfo(c.shape,c.dtype,c.values)}const a={kernelName:s.Reverse,backendName:"cpu",kernelFunc:i}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/RotateWithOffset.js":
+/*!************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/RotateWithOffset.js ***!
+ \************************************************************************************/
+/*! exports provided: rotateWithOffsetConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"rotateWithOffsetConfig",(function(){return o}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */const o={kernelName:s.RotateWithOffset,backendName:"cpu",kernelFunc:({inputs:e,attrs:t,backend:n})=>{const{image:o}=e,{radians:r,fillValue:i,center:a}=t,u=n,d=s.util.getTypedArrayFromDType(o.dtype,s.util.sizeFromShape(o.shape)),[l,c,f,p]=o.shape,[m,h]=s.backend_util.getImageCenter(a,c,f),b=Math.sin(r),j=Math.cos(r),g=u.data.get(o.dataId).values;for(let e=0;e=0&&_=0&&k{const t=Math.floor(e);return e-t<.5?Math.floor(e):e-t>.5?Math.ceil(e):t%2==0?t:t+1})),i={kernelName:s.Round,backendName:"cpu",kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Rsqrt.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Rsqrt.js ***!
+ \*************************************************************************/
+/*! exports provided: rsqrtImpl, rsqrt, rsqrtConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"rsqrtImpl",(function(){return i})),n.d(t,"rsqrt",(function(){return a})),n.d(t,"rsqrtConfig",(function(){return u}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../utils/unary_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/unary_impl.js"),r=n(/*! ../utils/unary_utils */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/unary_utils.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const i=Object(o.createSimpleUnaryImpl)((e=>1/Math.sqrt(e))),a=Object(r.unaryKernelFuncFromImpl)(s.Rsqrt,i),u={kernelName:s.Rsqrt,backendName:"cpu",kernelFunc:a}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/ScatterNd.js":
+/*!*****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/ScatterNd.js ***!
+ \*****************************************************************************/
+/*! exports provided: scatterNd, scatterNdConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"scatterNd",(function(){return r})),n.d(t,"scatterNdConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./Scatter_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Scatter_impl.js");
+/**
+ * @license
+ * Copyright 2020 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 r(e){const{inputs:t,backend:n,attrs:r}=e,{indices:i,updates:a}=t,{shape:u}=r,{sliceRank:d,numUpdates:l,sliceSize:c,strides:f,outputSize:p}=s.backend_util.calculateShapes(a,i,u),m=n.bufferSync(i),h=n.bufferSync(a),b=Object(o.scatterImpl)(m,h,u,p,c,l,d,f,0,!0);return n.makeTensorInfo(u,b.dtype,b.values)}const i={kernelName:s.ScatterNd,backendName:"cpu",kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Scatter_impl.js":
+/*!********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Scatter_impl.js ***!
+ \********************************************************************************/
+/*! exports provided: scatterImpl */function(e,t,n){"use strict";n.r(t),n.d(t,"scatterImpl",(function(){return o}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2020 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 o(e,t,n,o,r,i,a,u,d,l){const c=[o/r,r],f=e.values,p=t.values;if(0===o)return Object(s.buffer)(n,t.dtype);const m=Object(s.buffer)(c,t.dtype);m.values.fill(d);for(let e=0;e=o/r)throw new Error(`Invalid indices: ${s} does not index into ${n}`);for(let n=0;n1||1===i.shape.length?1:s.util.sizeFromShape(i.shape.slice(1));for(let e=0;ee>=0?i*e:r*(Math.exp(e)-1))),u={kernelName:s.Selu,backendName:"cpu",kernelFunc:a}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sigmoid.js":
+/*!***************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sigmoid.js ***!
+ \***************************************************************************/
+/*! exports provided: sigmoid, sigmoidConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"sigmoid",(function(){return r})),n.d(t,"sigmoidConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../utils/unary_utils */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/unary_utils.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const r=Object(o.unaryKernelFunc)(s.Sigmoid,(e=>1/(1+Math.exp(-e)))),i={kernelName:s.Sigmoid,backendName:"cpu",kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sign.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sign.js ***!
+ \************************************************************************/
+/*! exports provided: sign, signConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"sign",(function(){return r})),n.d(t,"signConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../utils/unary_utils */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/unary_utils.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const r=Object(o.unaryKernelFunc)(s.Sign,(e=>e<0?-1:e>0?1:0)),i={kernelName:s.Sign,backendName:"cpu",kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sin.js":
+/*!***********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sin.js ***!
+ \***********************************************************************/
+/*! exports provided: sin, sinConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"sin",(function(){return r})),n.d(t,"sinConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../utils/unary_utils */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/unary_utils.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const r=Object(o.unaryKernelFunc)(s.Sin,(e=>Math.sin(e))),i={kernelName:s.Sin,backendName:"cpu",kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sinh.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sinh.js ***!
+ \************************************************************************/
+/*! exports provided: sinh, sinhConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"sinh",(function(){return r})),n.d(t,"sinhConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../utils/unary_utils */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/unary_utils.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const r=Object(o.unaryKernelFunc)(s.Sinh,(e=>Math.sinh(e))),i={kernelName:s.Sinh,backendName:"cpu",kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Slice.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Slice.js ***!
+ \*************************************************************************/
+/*! exports provided: sliceImpl, slice, sliceConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"sliceImpl",(function(){return r})),n.d(t,"slice",(function(){return i})),n.d(t,"sliceConfig",(function(){return a}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../cpu_util */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/cpu_util.js");
+/**
+ * @license
+ * Copyright 2020 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 r(e,t,n,o,r){const i=s.slice_util.isSliceContinous(o,t,n),a=s.util.sizeFromShape(n),u=s.util.computeStrides(o);if(i){const n=s.slice_util.computeFlatOffset(t,u);return"string"===r?e.slice(n,n+a):e.subarray(n,n+a)}const d="string"===r?s.backend_util.fromUint8ToStringArray(e):e,l=Object(s.buffer)(o,r,d),c=Object(s.buffer)(n,r);for(let e=0;ee+t[n]));c.set(l.get(...s),...n)}return"string"===r?s.backend_util.fromStringArrayToUint8(c.values):c.values}function i(e){const{inputs:t,backend:n,attrs:i}=e,{x:a}=t,{begin:u,size:d}=i;Object(o.assertNotComplex)(a,"slice");const[l,c]=s.slice_util.parseSliceParams(a,u,d);s.slice_util.assertParamsValid(a,l,c);const f=r(n.data.get(a.dataId).values,l,c,a.shape,a.dtype);return n.makeTensorInfo(c,a.dtype,f)}const a={kernelName:s.Slice,backendName:"cpu",kernelFunc:i}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Softmax.js":
+/*!***************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Softmax.js ***!
+ \***************************************************************************/
+/*! exports provided: softmax, softmaxConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"softmax",(function(){return l})),n.d(t,"softmaxConfig",(function(){return c}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./Exp */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Exp.js"),r=n(/*! ./Max */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Max.js"),i=n(/*! ./RealDiv */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/RealDiv.js"),a=n(/*! ./Reshape */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Reshape.js"),u=n(/*! ./Sub */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sub.js"),d=n(/*! ./Sum */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sum.js");
+/**
+ * @license
+ * Copyright 2020 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 l(e){const{inputs:t,backend:n,attrs:l}=e,{logits:c}=t,{dim:f}=l,p=c.shape.length;let m=f;if(-1===m&&(m=p-1),m!==p-1)throw Error(`Softmax along a non-last dimension is not yet supported. Logits was rank ${p} and dim was ${m}`);const h=s.util.parseAxisParam([m],c.shape),b=Object(r.max)({inputs:{x:c},backend:n,attrs:{reductionIndices:h,keepDims:!1}}),j=s.backend_util.expandShapeToKeepDim(b.shape,h),g=Object(a.reshape)({inputs:{x:b},backend:n,attrs:{shape:j}}),w=Object(u.sub)({inputs:{a:c,b:g},backend:n}),_=Object(o.exp)({inputs:{x:w},backend:n}),k=Object(d.sum)({inputs:{x:_},backend:n,attrs:{axis:h,keepDims:!1}}),v=Object(a.reshape)({inputs:{x:k},backend:n,attrs:{shape:j}}),x=Object(i.div)({inputs:{a:_,b:v},backend:n});return n.disposeIntermediateTensorInfo(b),n.disposeIntermediateTensorInfo(g),n.disposeIntermediateTensorInfo(w),n.disposeIntermediateTensorInfo(_),n.disposeIntermediateTensorInfo(k),n.disposeIntermediateTensorInfo(v),x}const c={kernelName:s.Softmax,backendName:"cpu",kernelFunc:l}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Softplus.js":
+/*!****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Softplus.js ***!
+ \****************************************************************************/
+/*! exports provided: softplus, softplusConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"softplus",(function(){return i})),n.d(t,"softplusConfig",(function(){return a}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../utils/unary_utils */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/unary_utils.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const r=Math.log(1.1920928955078125e-7)+2,i=Object(o.unaryKernelFunc)(s.Softplus,(e=>{const t=e>-r,n=eNumber(e))))),n.makeTensorInfo([b.length],s.dtype,new Int32Array(b))]}const i={kernelName:s.SparseFillEmptyRows,backendName:"cpu",kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/SparseFillEmptyRows_impl.js":
+/*!********************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/SparseFillEmptyRows_impl.js ***!
+ \********************************************************************************************/
+/*! exports provided: sparseFillEmptyRowsImpl */function(e,t,n){"use strict";n.r(t),n.d(t,"sparseFillEmptyRowsImpl",(function(){return o}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2021 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 o(e,t,n,o,r,i,a){const u=t[0],d=i[0],l=new Array(d),c=new Array(u),f=t[1];if(0===d){if(0!==u)throw new Error(`Received SparseTensor with denseShape[0] = 0 but\n indices.shape[0] = ${u}`);return[s.util.getArrayFromDType(n,0),[0,f],s.util.getArrayFromDType(r,0),l,c]}let p=!0,m=0;const h=new Array(d).fill(0);for(let t=0;t=d)throw new Error(`indices(${t}, 0) is invalid: ${n} >= ${d}`);++h[n],p=p&&n>=m,m=n}let b=!0;for(let e=0;e0&&(h[e]+=h[e-1])}if(b&&p){const t=e,n=o;for(let e=0;e0){m[p-1]=1;for(let e=p-2;e>=0;--e)m[e]=m[e+1]*o[e+1]}const h=[];if(u>0){h[u-1]=1;for(let e=u-2;e>=0;--e)h[e]=h[e+1]*d[e+1]}const b=s.util.getArrayFromDType(n,a*u);for(let t=0;t0?r[u-1]+1:0;if(c<0)throw new Error("segment ids must be >= 0");const f=t.slice();f[0]=c;const p=f.reduce(((e,t)=>e*t),1),m=s.util.getArrayFromDType(n,p);if(0===u)return c>0&&m.fill(a),[m,f];if(c<=0)throw new Error("segment ids must be >= 0");let h=0,b=1,j=0,g=r[h];for(;;){let t=0;if(b=t)throw new Error("segment ids are not increasing")}if(g<0||g>=c)throw new Error(`Segment id ${g} out of range [0, ${c}), possibly because segmentIds input is not sorted.`);g>j&&m.fill(a,j*l,g*l);for(let t=h;t=d[0])throw new Error(`Bad: indices[${t}] == ${o[t]} out of range [0, ${d[0]})`);for(let t=0;tu)break}return j{const t=[...f];t[d]=e;const s=Object(o.slice)({inputs:{x:i},backend:n,attrs:{begin:c,size:t}});return c[d]+=e,s}))}const i={kernelName:s.SplitV,backendName:"cpu",kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sqrt.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sqrt.js ***!
+ \************************************************************************/
+/*! exports provided: sqrt, sqrtConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"sqrt",(function(){return r})),n.d(t,"sqrtConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../utils/unary_utils */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/unary_utils.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const r=Object(o.unaryKernelFunc)(s.Sqrt,(e=>Math.sqrt(e))),i={kernelName:s.Sqrt,backendName:"cpu",kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Square.js":
+/*!**************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Square.js ***!
+ \**************************************************************************/
+/*! exports provided: squareConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"squareConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../cpu_util */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/cpu_util.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r={kernelName:s.Square,backendName:"cpu",kernelFunc:({inputs:e,backend:t})=>{const{x:n}=e,s=t;Object(o.assertNotComplex)(n,"square");const r=s.data.get(n.dataId).values,i=new Float32Array(r.length);for(let e=0;e{const n=e-t;return n*n})),a=Object(r.binaryKernelFunc)(s.SquaredDifference,i),u={kernelName:s.SquaredDifference,backendName:"cpu",kernelFunc:a}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Step.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Step.js ***!
+ \************************************************************************/
+/*! exports provided: step, stepConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"step",(function(){return r})),n.d(t,"stepConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../utils/unary_utils */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/unary_utils.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const r=Object(o.unaryKernelFunc)(s.Step,((e,t)=>{const n=t;return isNaN(e)?NaN:e>0?1:n.alpha})),i={kernelName:s.Step,backendName:"cpu",kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/StridedSlice.js":
+/*!********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/StridedSlice.js ***!
+ \********************************************************************************/
+/*! exports provided: stridedSlice, stridedSliceConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"stridedSlice",(function(){return u})),n.d(t,"stridedSliceConfig",(function(){return d}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../cpu_util */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/cpu_util.js"),r=n(/*! ./Reshape */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Reshape.js"),i=n(/*! ./Slice */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Slice.js"),a=n(/*! ./StridedSlice_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/StridedSlice_impl.js");
+/**
+ * @license
+ * Copyright 2020 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 u(e){const{inputs:t,backend:n,attrs:u}=e,{x:d}=t,{begin:l,end:c,strides:f,beginMask:p,endMask:m,ellipsisMask:h,newAxisMask:b,shrinkAxisMask:j}=u;Object(o.assertNotComplex)(d,"stridedSlice");const{nonStrided:g,$begin:w,$strides:_,size:k,newShape:v,outShape:x}=s.slice_util.sliceInfo(d.shape,l,c,f,p,m,h,b,j),y=Object(r.reshape)({inputs:{x:d},backend:n,attrs:{shape:v}});let O;if(g){const e=Object(i.slice)({inputs:{x:y},backend:n,attrs:{begin:w,size:k}});O=Object(r.reshape)({inputs:{x:e},backend:n,attrs:{shape:x}}),n.disposeIntermediateTensorInfo(e)}else if(x.some((e=>0===e)))O=n.makeTensorInfo(x,d.dtype,[]);else{const e=n.bufferSync(y),t=Object(a.stridedSliceImpl)(x,e,_,w);O=n.makeTensorInfo(t.shape,t.dtype,t.values)}const I=Object(r.reshape)({inputs:{x:O},backend:n,attrs:{shape:x}});return n.disposeIntermediateTensorInfo(y),n.disposeIntermediateTensorInfo(O),I}const d={kernelName:s.StridedSlice,backendName:"cpu",kernelFunc:u}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/StridedSlice_impl.js":
+/*!*************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/StridedSlice_impl.js ***!
+ \*************************************************************************************/
+/*! exports provided: stridedSliceImpl */function(e,t,n){"use strict";n.r(t),n.d(t,"stridedSliceImpl",(function(){return o}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2020 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 o(e,t,n,o){const r=Object(s.buffer)(e,t.dtype);for(let e=0;e0?0:i-a);let f=0;f+=u*this.leftPad.length;for(let t=0;te.forEach((e=>p[m++]=e));for(let e=0;e0){h(e[c+l-1]);for(let e=0;e0){let e=t[0];if(0!==e)throw new Error(`First split value must be 0, got ${e}`);for(let s=1;s=e;if(o=o&&t[s]<=n,!o)throw new Error(`Invalid split value ${t[s]}, must be in [${e}, ${n}]`);e=t[s]}if(e!==n)throw new Error(`Last split value must be data size. Expected ${n}, got ${e}`)}const r=o-1,i=s.util.getArrayFromDType("int32",o);if(0===n||0===o){const e=new Array(n);for(let e=0;e<=r;++e)i[e]=0;return[e,i]}i[0]=0;for(let e=1;e<=r;++e){const n=t[e]-t[e-1];let s=0;this.nGramWidths.forEach((e=>{s+=this.getNumNGrams(n,e)})),this.preserveShort&&n>0&&0===s&&(s=1),i[e]=i[e-1]+s}const a=new Array(i[r]);for(let n=0;n{const i=t[n+1]-t[n],u=this.getNumNGrams(i,r);this.createNGrams(e,s,a,o,u,r),o+=u})),this.preserveShort&&o===i[n]){const r=t[n+1]-t[n];if(0===r)continue;const i=r+2*this.padWidth,u=1;this.createNGrams(e,s,a,o,u,i)}}return[a,i]}}function r(e,t,n,s,r,i,a,u){return new o(n,s,r,i,a,u).compute(e,t)}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/StringSplit.js":
+/*!*******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/StringSplit.js ***!
+ \*******************************************************************************/
+/*! exports provided: stringSplit, stringSplitConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"stringSplit",(function(){return r})),n.d(t,"stringSplitConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./StringSplit_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/StringSplit_impl.js");
+/**
+ * @license
+ * Copyright 2021 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 r(e){const{inputs:t,backend:n,attrs:s}=e,{skipEmpty:r}=s,{input:i,delimiter:a}=t;if("string"!==i.dtype)throw new Error("Input must be of datatype string");if(1!==i.shape.length)throw new Error(`Input must be a vector, got shape: ${i.shape}`);if(0!==a.shape.length)throw new Error(`Delimiter must be a scalar, got shape: ${a.shape}`);const u=n.data.get(i.dataId).values,d=n.data.get(a.dataId).values[0],[l,c,f]=Object(o.stringSplitImpl)(u,d,r),p=c.length;return[n.makeTensorInfo([p,2],"int32",l),n.makeTensorInfo([p],"string",c),n.makeTensorInfo([2],"int32",new Int32Array(f))]}const i={kernelName:s.StringSplit,backendName:"cpu",kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/StringSplit_impl.js":
+/*!************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/StringSplit_impl.js ***!
+ \************************************************************************************/
+/*! exports provided: stringSplitImpl */function(e,t,n){"use strict";n.r(t),n.d(t,"stringSplitImpl",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2021 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 o(e,t,n){if(!e.length)return[];if(0===t.length){const t=new Array(e.length);for(let n=0;ne-t)),a=Object(r.createComplexBinaryKernelImpl)(((e,t,n,s)=>({real:e-n,imag:t-s}))),u=Object(r.binaryKernelFunc)(s.Sub,i,a),d={kernelName:s.Sub,backendName:"cpu",kernelFunc:u}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sum.js":
+/*!***********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sum.js ***!
+ \***********************************************************************/
+/*! exports provided: sum, sumConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"sum",(function(){return l})),n.d(t,"sumConfig",(function(){return c}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../cpu_util */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/cpu_util.js"),r=n(/*! ../utils/zeros_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/zeros_impl.js"),i=n(/*! ./Cast */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Cast.js"),a=n(/*! ./Identity */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Identity.js"),u=n(/*! ./Reshape */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Reshape.js"),d=n(/*! ./Transpose */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Transpose.js");
+/**
+ * @license
+ * Copyright 2020 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 l(e){const{inputs:t,backend:n,attrs:l}=e,{x:c}=t,{axis:f,keepDims:p}=l;let m;Object(o.assertNotComplex)(c,"sum"),m="bool"===c.dtype?Object(i.cast)({inputs:{x:c},backend:n,attrs:{dtype:"int32"}}):Object(a.identity)({inputs:{x:c},backend:n});const h=m.shape.length,b=s.util.parseAxisParam(f,m.shape),j=s.backend_util.getAxesPermutation(b,h);let g=b,w=m;null!=j&&(w=Object(d.transpose)({inputs:{x:m},backend:n,attrs:{perm:j}}),g=s.backend_util.getInnerMostAxes(g.length,h)),s.backend_util.assertAxesAreInnerMostDims("sum",g,w.shape.length);const[_,k]=s.backend_util.computeOutAndReduceShapes(w.shape,g),v=s.backend_util.upcastType(w.dtype,"int32");let x=Object(r.zeros)(n,_,v);const y=s.util.sizeFromShape(k),O=n.data.get(x.dataId).values,I=n.data.get(w.dataId).values;for(let e=0;eMath.tan(e))),i={kernelName:s.Tan,backendName:"cpu",kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Tanh.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Tanh.js ***!
+ \************************************************************************/
+/*! exports provided: tanh, tanhConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"tanh",(function(){return r})),n.d(t,"tanhConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../utils/unary_utils */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/unary_utils.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const r=Object(o.unaryKernelFunc)(s.Tanh,(e=>Math.tanh(e))),i={kernelName:s.Tanh,backendName:"cpu",kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Tile.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Tile.js ***!
+ \************************************************************************/
+/*! exports provided: tile, tileConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"tile",(function(){return i})),n.d(t,"tileConfig",(function(){return a}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../cpu_util */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/cpu_util.js"),r=n(/*! ./Tile_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Tile_impl.js");
+/**
+ * @license
+ * Copyright 2020 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 i(e){const{inputs:t,backend:n,attrs:s}=e,{x:i}=t,{reps:a}=s;Object(o.assertNotComplex)(i,"tile");const u=Object(r.tileImpl)(n.bufferSync(i),a);return n.makeTensorInfo(u.shape,u.dtype,u.values)}const a={kernelName:s.Tile,backendName:"cpu",kernelFunc:i}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Tile_impl.js":
+/*!*****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Tile_impl.js ***!
+ \*****************************************************************************/
+/*! exports provided: tileImpl */function(e,t,n){"use strict";n.r(t),n.d(t,"tileImpl",(function(){return o}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2019 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 o(e,t){const n=new Array(e.rank);for(let s=0;s{const n=t.value-e.value;return 0===n?e.index-t.index:n};function r(e,t,n=0,i=e.length-1){for(;i>n;){if(i-n>600){const s=i-n+1,o=t-n+1,a=Math.log(s),u=.5*Math.exp(2*a/3),d=.5*Math.sqrt(a*u*(s-u)/s)*Math.sign(o-s/2);r(e,t,Math.max(n,Math.floor(t-o*u/s+d)),Math.min(i,Math.floor(t+(s-o)*u/s+d)))}const a=e[t];let u=n,d=i;for(s.util.swap(e,n,t),o(e[i],a)>0&&s.util.swap(e,n,i);u0;)d-=1}0===o(e[n],a)?s.util.swap(e,n,d):(d+=1,s.util.swap(e,d,i)),d<=t&&(n=d+1),t<=d&&(i=d-1)}}function i(e,t,n,i,a){const u=t[t.length-1],[d,l]=[e.length/u,u],c=s.util.getTypedArrayFromDType(n,d*i),f=s.util.getTypedArrayFromDType("int32",d*i);for(let t=0;tu[t]={value:e,index:t})),it-1)if(t<=1)n=0;else{const e=2*t;n-=e*Math.trunc(n/e),n>=t&&(n=e-n-1)}return s.util.clamp(0,n,t-1)}(e,t);case"wrap":return function(e,t){let n=e;if(n<0)if(t<=1)n=0;else{const e=t-1;n+=t*(Math.trunc(-n/e)+1)}else if(n>t-1)if(t<=1)n=0;else{const e=t-1;n-=t*Math.trunc(n/e)}return s.util.clamp(0,n,t-1)}(e,t);case"nearest":return function(e,t){return s.util.clamp(0,e,t-1)}(e,t);case"constant":default:return function(e,t){return e}(e)}}function a(e,t,n,s,o,r,i,a,u,d,l){return 0<=a&&a{for(let n=0;nn.disposeIntermediateTensorInfo(e))),w}const f={kernelName:s.UnsortedSegmentSum,backendName:"cpu",kernelFunc:c}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/ZerosLike.js":
+/*!*****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/ZerosLike.js ***!
+ \*****************************************************************************/
+/*! exports provided: zerosLike, zerosLikeConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"zerosLike",(function(){return u})),n.d(t,"zerosLikeConfig",(function(){return d}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./Complex */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Complex.js"),r=n(/*! ./Fill */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Fill.js"),i=n(/*! ./Imag */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Imag.js"),a=n(/*! ./Real */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Real.js");
+/**
+ * @license
+ * Copyright 2020 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 u(e){const{inputs:t,backend:n}=e,{x:s}=t;if("string"===s.dtype)throw new Error("zerosLike is not supported for string tensors");if("complex64"===s.dtype){const e=Object(a.real)({inputs:{input:s},backend:n}),t=u({inputs:{x:e},backend:n}),r=Object(i.imag)({inputs:{input:s},backend:n}),d=u({inputs:{x:r},backend:n}),l=Object(o.complex)({inputs:{real:t,imag:d},backend:n});return n.disposeIntermediateTensorInfo(e),n.disposeIntermediateTensorInfo(t),n.disposeIntermediateTensorInfo(r),n.disposeIntermediateTensorInfo(d),l}return Object(r.fill)({backend:n,attrs:{shape:s.shape,value:0,dtype:s.dtype}})}const d={kernelName:s.ZerosLike,backendName:"cpu",kernelFunc:u}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/_FusedMatMul.js":
+/*!********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/_FusedMatMul.js ***!
+ \********************************************************************************/
+/*! exports provided: _fusedMatMul, _fusedMatMulConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"_fusedMatMul",(function(){return a})),n.d(t,"_fusedMatMulConfig",(function(){return u}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../utils/fused_utils */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/fused_utils.js"),r=n(/*! ./Add */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Add.js"),i=n(/*! ./BatchMatMul */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/BatchMatMul.js");
+/**
+ * @license
+ * Copyright 2020 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 a(e){const{inputs:t,backend:n,attrs:s}=e,{a:a,b:u,bias:d,preluActivationWeights:l}=t,{transposeA:c,transposeB:f,activation:p,leakyreluAlpha:m}=s;let h,b,j;const g=[];h=Object(i.batchMatMul)({inputs:{a:a,b:u},attrs:{transposeA:c,transposeB:f},backend:n}),d&&(b=Object(r.add)({inputs:{a:h,b:d},backend:n}),g.push(h),h=b),p&&(j=Object(o.applyActivation)(n,h,p,l,m),g.push(h),h=j);for(const e of g)n.disposeIntermediateTensorInfo(e);return h}const u={kernelName:s._FusedMatMul,backendName:"cpu",kernelFunc:a}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/register_all_kernels.js":
+/*!********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/register_all_kernels.js ***!
+ \********************************************************************************/
+/*! no exports provided */function(e,t,n){"use strict";n.r(t);var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./kernels/_FusedMatMul */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/_FusedMatMul.js"),r=n(/*! ./kernels/Abs */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Abs.js"),i=n(/*! ./kernels/Acos */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Acos.js"),a=n(/*! ./kernels/Acosh */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Acosh.js"),u=n(/*! ./kernels/Add */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Add.js"),d=n(/*! ./kernels/AddN */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/AddN.js"),l=n(/*! ./kernels/All */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/All.js"),c=n(/*! ./kernels/Any */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Any.js"),f=n(/*! ./kernels/ArgMax */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/ArgMax.js"),p=n(/*! ./kernels/ArgMin */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/ArgMin.js"),m=n(/*! ./kernels/Asin */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Asin.js"),h=n(/*! ./kernels/Asinh */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Asinh.js"),b=n(/*! ./kernels/Atan */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Atan.js"),j=n(/*! ./kernels/Atan2 */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Atan2.js"),g=n(/*! ./kernels/Atanh */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Atanh.js"),w=n(/*! ./kernels/AvgPool */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/AvgPool.js"),_=n(/*! ./kernels/AvgPool3D */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/AvgPool3D.js"),k=n(/*! ./kernels/AvgPool3DGrad */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/AvgPool3DGrad.js"),v=n(/*! ./kernels/AvgPoolGrad */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/AvgPoolGrad.js"),x=n(/*! ./kernels/BatchMatMul */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/BatchMatMul.js"),y=n(/*! ./kernels/BatchNorm */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/BatchNorm.js"),O=n(/*! ./kernels/BatchToSpaceND */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/BatchToSpaceND.js"),I=n(/*! ./kernels/Bincount */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Bincount.js"),C=n(/*! ./kernels/Cast */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Cast.js"),S=n(/*! ./kernels/Ceil */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Ceil.js"),T=n(/*! ./kernels/Clip */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Clip.js"),N=n(/*! ./kernels/Complex */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Complex.js"),E=n(/*! ./kernels/ComplexAbs */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/ComplexAbs.js"),A=n(/*! ./kernels/Concat */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Concat.js"),R=n(/*! ./kernels/Conv2D */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Conv2D.js"),F=n(/*! ./kernels/Conv2DBackpropFilter */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Conv2DBackpropFilter.js"),M=n(/*! ./kernels/Conv2DBackpropInput */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Conv2DBackpropInput.js"),$=n(/*! ./kernels/Conv3D */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Conv3D.js"),D=n(/*! ./kernels/Conv3DBackpropFilterV2 */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Conv3DBackpropFilterV2.js"),P=n(/*! ./kernels/Conv3DBackpropInputV2 */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Conv3DBackpropInputV2.js"),B=n(/*! ./kernels/Cos */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Cos.js"),L=n(/*! ./kernels/Cosh */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Cosh.js"),z=n(/*! ./kernels/CropAndResize */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/CropAndResize.js"),G=n(/*! ./kernels/Cumsum */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Cumsum.js"),U=n(/*! ./kernels/DenseBincount */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/DenseBincount.js"),W=n(/*! ./kernels/DepthToSpace */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/DepthToSpace.js"),V=n(/*! ./kernels/DepthwiseConv2dNative */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/DepthwiseConv2dNative.js"),q=n(/*! ./kernels/DepthwiseConv2dNativeBackpropFilter */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/DepthwiseConv2dNativeBackpropFilter.js"),H=n(/*! ./kernels/DepthwiseConv2dNativeBackpropInput */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/DepthwiseConv2dNativeBackpropInput.js"),K=n(/*! ./kernels/Diag */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Diag.js"),X=n(/*! ./kernels/Dilation2D */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Dilation2D.js"),Y=n(/*! ./kernels/Dilation2DBackpropFilter */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Dilation2DBackpropFilter.js"),Z=n(/*! ./kernels/Dilation2DBackpropInput */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Dilation2DBackpropInput.js"),Q=n(/*! ./kernels/Einsum */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Einsum.js"),J=n(/*! ./kernels/Elu */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Elu.js"),ee=n(/*! ./kernels/EluGrad */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/EluGrad.js"),te=n(/*! ./kernels/Equal */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Equal.js"),ne=n(/*! ./kernels/Erf */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Erf.js"),se=n(/*! ./kernels/Exp */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Exp.js"),oe=n(/*! ./kernels/ExpandDims */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/ExpandDims.js"),re=n(/*! ./kernels/Expm1 */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Expm1.js"),ie=n(/*! ./kernels/FFT */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/FFT.js"),ae=n(/*! ./kernels/Fill */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Fill.js"),ue=n(/*! ./kernels/FlipLeftRight */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/FlipLeftRight.js"),de=n(/*! ./kernels/Floor */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Floor.js"),le=n(/*! ./kernels/FloorDiv */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/FloorDiv.js"),ce=n(/*! ./kernels/FusedConv2D */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/FusedConv2D.js"),fe=n(/*! ./kernels/FusedDepthwiseConv2D */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/FusedDepthwiseConv2D.js"),pe=n(/*! ./kernels/GatherNd */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/GatherNd.js"),me=n(/*! ./kernels/GatherV2 */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/GatherV2.js"),he=n(/*! ./kernels/Greater */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Greater.js"),be=n(/*! ./kernels/GreaterEqual */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/GreaterEqual.js"),je=n(/*! ./kernels/Identity */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Identity.js"),ge=n(/*! ./kernels/IFFT */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/IFFT.js"),we=n(/*! ./kernels/Imag */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Imag.js"),_e=n(/*! ./kernels/IsFinite */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/IsFinite.js"),ke=n(/*! ./kernels/IsInf */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/IsInf.js"),ve=n(/*! ./kernels/IsNaN */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/IsNaN.js"),xe=n(/*! ./kernels/LeakyRelu */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/LeakyRelu.js"),ye=n(/*! ./kernels/Less */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Less.js"),Oe=n(/*! ./kernels/LessEqual */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/LessEqual.js"),Ie=n(/*! ./kernels/LinSpace */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/LinSpace.js"),Ce=n(/*! ./kernels/Log */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Log.js"),Se=n(/*! ./kernels/Log1p */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Log1p.js"),Te=n(/*! ./kernels/LogicalAnd */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/LogicalAnd.js"),Ne=n(/*! ./kernels/LogicalNot */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/LogicalNot.js"),Ee=n(/*! ./kernels/LogicalOr */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/LogicalOr.js"),Ae=n(/*! ./kernels/LRN */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/LRN.js"),Re=n(/*! ./kernels/LRNGrad */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/LRNGrad.js"),Fe=n(/*! ./kernels/Max */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Max.js"),Me=n(/*! ./kernels/Maximum */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Maximum.js"),$e=n(/*! ./kernels/MaxPool */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/MaxPool.js"),De=n(/*! ./kernels/MaxPool3D */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/MaxPool3D.js"),Pe=n(/*! ./kernels/MaxPool3DGrad */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/MaxPool3DGrad.js"),Be=n(/*! ./kernels/MaxPoolGrad */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/MaxPoolGrad.js"),Le=n(/*! ./kernels/MaxPoolWithArgmax */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/MaxPoolWithArgmax.js"),ze=n(/*! ./kernels/Mean */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Mean.js"),Ge=n(/*! ./kernels/Min */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Min.js"),Ue=n(/*! ./kernels/Minimum */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Minimum.js"),We=n(/*! ./kernels/MirrorPad */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/MirrorPad.js"),Ve=n(/*! ./kernels/Mod */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Mod.js"),qe=n(/*! ./kernels/Multinomial */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Multinomial.js"),He=n(/*! ./kernels/Multiply */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Multiply.js"),Ke=n(/*! ./kernels/Neg */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Neg.js"),Xe=n(/*! ./kernels/NonMaxSuppressionV3 */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/NonMaxSuppressionV3.js"),Ye=n(/*! ./kernels/NonMaxSuppressionV4 */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/NonMaxSuppressionV4.js"),Ze=n(/*! ./kernels/NonMaxSuppressionV5 */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/NonMaxSuppressionV5.js"),Qe=n(/*! ./kernels/NotEqual */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/NotEqual.js"),Je=n(/*! ./kernels/OneHot */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/OneHot.js"),et=n(/*! ./kernels/OnesLike */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/OnesLike.js"),tt=n(/*! ./kernels/Pack */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Pack.js"),nt=n(/*! ./kernels/PadV2 */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/PadV2.js"),st=n(/*! ./kernels/Pow */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Pow.js"),ot=n(/*! ./kernels/Prelu */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Prelu.js"),rt=n(/*! ./kernels/Prod */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Prod.js"),it=n(/*! ./kernels/Range */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Range.js"),at=n(/*! ./kernels/Real */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Real.js"),ut=n(/*! ./kernels/RealDiv */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/RealDiv.js"),dt=n(/*! ./kernels/Reciprocal */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Reciprocal.js"),lt=n(/*! ./kernels/Relu */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Relu.js"),ct=n(/*! ./kernels/Relu6 */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Relu6.js"),ft=n(/*! ./kernels/Reshape */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Reshape.js"),pt=n(/*! ./kernels/ResizeBilinear */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/ResizeBilinear.js"),mt=n(/*! ./kernels/ResizeBilinearGrad */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/ResizeBilinearGrad.js"),ht=n(/*! ./kernels/ResizeNearestNeighbor */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/ResizeNearestNeighbor.js"),bt=n(/*! ./kernels/ResizeNearestNeighborGrad */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/ResizeNearestNeighborGrad.js"),jt=n(/*! ./kernels/Reverse */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Reverse.js"),gt=n(/*! ./kernels/RotateWithOffset */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/RotateWithOffset.js"),wt=n(/*! ./kernels/Round */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Round.js"),_t=n(/*! ./kernels/Rsqrt */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Rsqrt.js"),kt=n(/*! ./kernels/ScatterNd */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/ScatterNd.js"),vt=n(/*! ./kernels/Select */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Select.js"),xt=n(/*! ./kernels/Selu */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Selu.js"),yt=n(/*! ./kernels/Sigmoid */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sigmoid.js"),Ot=n(/*! ./kernels/Sign */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sign.js"),It=n(/*! ./kernels/Sin */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sin.js"),Ct=n(/*! ./kernels/Sinh */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sinh.js"),St=n(/*! ./kernels/Slice */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Slice.js"),Tt=n(/*! ./kernels/Softmax */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Softmax.js"),Nt=n(/*! ./kernels/Softplus */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Softplus.js"),Et=n(/*! ./kernels/SpaceToBatchND */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/SpaceToBatchND.js"),At=n(/*! ./kernels/SparseFillEmptyRows */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/SparseFillEmptyRows.js"),Rt=n(/*! ./kernels/SparseReshape */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/SparseReshape.js"),Ft=n(/*! ./kernels/SparseSegmentMean */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/SparseSegmentMean.js"),Mt=n(/*! ./kernels/SparseSegmentSum */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/SparseSegmentSum.js"),$t=n(/*! ./kernels/SparseToDense */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/SparseToDense.js"),Dt=n(/*! ./kernels/SplitV */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/SplitV.js"),Pt=n(/*! ./kernels/Sqrt */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sqrt.js"),Bt=n(/*! ./kernels/Square */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Square.js"),Lt=n(/*! ./kernels/SquaredDifference */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/SquaredDifference.js"),zt=n(/*! ./kernels/Step */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Step.js"),Gt=n(/*! ./kernels/StridedSlice */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/StridedSlice.js"),Ut=n(/*! ./kernels/StringNGrams */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/StringNGrams.js"),Wt=n(/*! ./kernels/StringSplit */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/StringSplit.js"),Vt=n(/*! ./kernels/StringToHashBucketFast */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/StringToHashBucketFast.js"),qt=n(/*! ./kernels/Sub */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sub.js"),Ht=n(/*! ./kernels/Sum */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sum.js"),Kt=n(/*! ./kernels/Tan */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Tan.js"),Xt=n(/*! ./kernels/Tanh */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Tanh.js"),Yt=n(/*! ./kernels/Tile */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Tile.js"),Zt=n(/*! ./kernels/TopK */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/TopK.js"),Qt=n(/*! ./kernels/Transform */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Transform.js"),Jt=n(/*! ./kernels/Transpose */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Transpose.js"),en=n(/*! ./kernels/Unique */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Unique.js"),tn=n(/*! ./kernels/Unpack */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Unpack.js"),nn=n(/*! ./kernels/UnsortedSegmentSum */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/UnsortedSegmentSum.js"),sn=n(/*! ./kernels/ZerosLike */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/ZerosLike.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const on=[o._fusedMatMulConfig,r.absConfig,i.acosConfig,a.acoshConfig,u.addConfig,d.addNConfig,l.allConfig,c.anyConfig,f.argMaxConfig,p.argMinConfig,m.asinConfig,h.asinhConfig,b.atanConfig,j.atan2Config,g.atanhConfig,w.avgPoolConfig,_.avgPool3DConfig,k.avgPool3DGradConfig,v.avgPoolGradConfig,x.batchMatMulConfig,y.batchNormConfig,O.batchToSpaceNDConfig,I.bincountConfig,C.castConfig,S.ceilConfig,T.clipConfig,N.complexConfig,E.complexAbsConfig,A.concatConfig,F.conv2DBackpropFilterConfig,M.conv2DBackpropInputConfig,R.conv2DConfig,D.conv3DBackpropFilterV2Config,P.conv3DBackpropInputV2Config,$.conv3DConfig,B.cosConfig,L.coshConfig,z.cropAndResizeConfig,G.cumsumConfig,U.denseBincountConfig,W.depthToSpaceConfig,V.depthwiseConv2dNativeConfig,q.depthwiseConv2dNativeBackpropFilterConfig,H.depthwiseConv2dNativeBackpropInputConfig,K.diagConfig,X.dilation2dConfig,Z.dilation2dBackpropInputConfig,Y.dilation2dBackpropFilterConfig,ut.realDivConfig,Q.einsumConfig,J.eluConfig,ee.eluGradConfig,te.equalConfig,ne.erfConfig,se.expConfig,oe.expandDimsConfig,re.expm1Config,ie.fftConfig,ae.fillConfig,ue.flipLeftRightConfig,de.floorConfig,le.floorDivConfig,ce.fusedConv2DConfig,fe.fusedDepthwiseConv2DConfig,pe.gatherNdConfig,me.gatherV2Config,he.greaterConfig,be.greaterEqualConfig,je.identityConfig,ge.ifftConfig,we.imagConfig,_e.isFiniteConfig,ke.isInfConfig,ve.isNaNConfig,xe.leakyReluConfig,ye.lessConfig,Oe.lessEqualConfig,Ie.linSpaceConfig,Ce.logConfig,Se.log1pConfig,Te.logicalAndConfig,Ne.logicalNotConfig,Ee.logicalOrConfig,Ae.lRNConfig,Re.lRNGradConfig,Me.maximumConfig,$e.maxPoolConfig,De.maxPool3DConfig,Pe.maxPool3DGradConfig,Be.maxPoolGradConfig,Le.maxPoolWithArgmaxConfig,Fe.maxConfig,ze.meanConfig,Ge.minConfig,Ue.minimumConfig,We.mirrorPadConfig,Ve.modConfig,qe.multinomialConfig,He.multiplyConfig,Ke.negConfig,Xe.nonMaxSuppressionV3Config,Ye.nonMaxSuppressionV4Config,Ze.nonMaxSuppressionV5Config,Qe.notEqualConfig,Je.oneHotConfig,et.onesLikeConfig,tt.packConfig,nt.padV2Config,st.powConfig,ot.preluConfig,rt.prodConfig,it.rangeConfig,at.realConfig,dt.reciprocalConfig,lt.reluConfig,ct.relu6Config,ft.reshapeConfig,pt.resizeBilinearConfig,mt.resizeBilinearGradConfig,ht.resizeNearestNeighborConfig,bt.resizeNearestNeighborGradConfig,jt.reverseConfig,gt.rotateWithOffsetConfig,wt.roundConfig,_t.rsqrtConfig,kt.scatterNdConfig,vt.selectConfig,xt.seluConfig,yt.sigmoidConfig,Ot.signConfig,It.sinConfig,Ct.sinhConfig,St.sliceConfig,Tt.softmaxConfig,Nt.softplusConfig,Et.spaceToBatchNDConfig,At.sparseFillEmptyRowsConfig,Rt.sparseReshapeConfig,Ft.sparseSegmentMeanConfig,Mt.sparseSegmentSumConfig,$t.sparseToDenseConfig,Dt.splitVConfig,Pt.sqrtConfig,Bt.squareConfig,Lt.squaredDifferenceConfig,zt.stepConfig,Gt.stridedSliceConfig,Ut.stringNGramsConfig,Wt.stringSplitConfig,Vt.stringToHashBucketFastConfig,qt.subConfig,Ht.sumConfig,Kt.tanConfig,Xt.tanhConfig,Yt.tileConfig,Zt.topKConfig,Jt.transposeConfig,Qt.transformConfig,en.uniqueConfig,tn.unpackConfig,nn.unsortedSegmentSumConfig,sn.zerosLikeConfig];for(const e of on)Object(s.registerKernel)(e)},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/shared.js":
+/*!******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/shared.js ***!
+ \******************************************************************/
+/*! exports provided: simpleAbsImpl, addImpl, bincountImpl, bincountReduceImpl, ceilImpl, concatImpl, equalImpl, expImpl, expm1Impl, floorImpl, gatherNdImpl, gatherV2Impl, greaterImpl, greaterEqualImpl, lessImpl, lessEqualImpl, linSpaceImpl, logImpl, maxImpl, maximumImpl, minimumImpl, multiplyImpl, negImpl, notEqualImpl, prodImpl, rangeImpl, rsqrtImpl, sliceImpl, sparseFillEmptyRowsImpl, sparseReshapeImpl, sparseSegmentReductionImpl, squaredDifferenceImpl, stridedSliceImpl, stringNGramsImpl, stringSplitImpl, stringToHashBucketFastImpl, subImpl, tileImpl, topKImpl, transposeImpl, uniqueImpl */function(e,t,n){"use strict";n.r(t);var s=n(/*! ./kernels/Abs */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Abs.js");n.d(t,"simpleAbsImpl",(function(){return s.simpleAbsImpl}));var o=n(/*! ./kernels/Add */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Add.js");n.d(t,"addImpl",(function(){return o.addImpl}));var r=n(/*! ./kernels/Bincount_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Bincount_impl.js");n.d(t,"bincountImpl",(function(){return r.bincountImpl})),n.d(t,"bincountReduceImpl",(function(){return r.bincountReduceImpl}));var i=n(/*! ./kernels/Ceil */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Ceil.js");n.d(t,"ceilImpl",(function(){return i.ceilImpl}));var a=n(/*! ./kernels/Concat_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Concat_impl.js");n.d(t,"concatImpl",(function(){return a.concatImpl}));var u=n(/*! ./kernels/Equal */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Equal.js");n.d(t,"equalImpl",(function(){return u.equalImpl}));var d=n(/*! ./kernels/Exp */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Exp.js");n.d(t,"expImpl",(function(){return d.expImpl}));var l=n(/*! ./kernels/Expm1 */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Expm1.js");n.d(t,"expm1Impl",(function(){return l.expm1Impl}));var c=n(/*! ./kernels/Floor */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Floor.js");n.d(t,"floorImpl",(function(){return c.floorImpl}));var f=n(/*! ./kernels/GatherNd_Impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/GatherNd_Impl.js");n.d(t,"gatherNdImpl",(function(){return f.gatherNdImpl}));var p=n(/*! ./kernels/GatherV2_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/GatherV2_impl.js");n.d(t,"gatherV2Impl",(function(){return p.gatherV2Impl}));var m=n(/*! ./kernels/Greater */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Greater.js");n.d(t,"greaterImpl",(function(){return m.greaterImpl}));var h=n(/*! ./kernels/GreaterEqual */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/GreaterEqual.js");n.d(t,"greaterEqualImpl",(function(){return h.greaterEqualImpl}));var b=n(/*! ./kernels/Less */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Less.js");n.d(t,"lessImpl",(function(){return b.lessImpl}));var j=n(/*! ./kernels/LessEqual */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/LessEqual.js");n.d(t,"lessEqualImpl",(function(){return j.lessEqualImpl}));var g=n(/*! ./kernels/LinSpace_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/LinSpace_impl.js");n.d(t,"linSpaceImpl",(function(){return g.linSpaceImpl}));var w=n(/*! ./kernels/Log */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Log.js");n.d(t,"logImpl",(function(){return w.logImpl}));var _=n(/*! ./kernels/Max_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Max_impl.js");n.d(t,"maxImpl",(function(){return _.maxImpl}));var k=n(/*! ./kernels/Maximum */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Maximum.js");n.d(t,"maximumImpl",(function(){return k.maximumImpl}));var v=n(/*! ./kernels/Minimum */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Minimum.js");n.d(t,"minimumImpl",(function(){return v.minimumImpl}));var x=n(/*! ./kernels/Multiply */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Multiply.js");n.d(t,"multiplyImpl",(function(){return x.multiplyImpl}));var y=n(/*! ./kernels/Neg */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Neg.js");n.d(t,"negImpl",(function(){return y.negImpl}));var O=n(/*! ./kernels/NotEqual */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/NotEqual.js");n.d(t,"notEqualImpl",(function(){return O.notEqualImpl}));var I=n(/*! ./kernels/Prod */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Prod.js");n.d(t,"prodImpl",(function(){return I.prodImpl}));var C=n(/*! ./kernels/Range_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Range_impl.js");n.d(t,"rangeImpl",(function(){return C.rangeImpl}));var S=n(/*! ./kernels/Rsqrt */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Rsqrt.js");n.d(t,"rsqrtImpl",(function(){return S.rsqrtImpl}));var T=n(/*! ./kernels/Slice */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Slice.js");n.d(t,"sliceImpl",(function(){return T.sliceImpl}));var N=n(/*! ./kernels/SparseFillEmptyRows_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/SparseFillEmptyRows_impl.js");n.d(t,"sparseFillEmptyRowsImpl",(function(){return N.sparseFillEmptyRowsImpl}));var E=n(/*! ./kernels/SparseReshape_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/SparseReshape_impl.js");n.d(t,"sparseReshapeImpl",(function(){return E.sparseReshapeImpl}));var A=n(/*! ./kernels/SparseSegmentReduction_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/SparseSegmentReduction_impl.js");n.d(t,"sparseSegmentReductionImpl",(function(){return A.sparseSegmentReductionImpl}));var R=n(/*! ./kernels/SquaredDifference */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/SquaredDifference.js");n.d(t,"squaredDifferenceImpl",(function(){return R.squaredDifferenceImpl}));var F=n(/*! ./kernels/StridedSlice_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/StridedSlice_impl.js");n.d(t,"stridedSliceImpl",(function(){return F.stridedSliceImpl}));var M=n(/*! ./kernels/StringNGrams_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/StringNGrams_impl.js");n.d(t,"stringNGramsImpl",(function(){return M.stringNGramsImpl}));var $=n(/*! ./kernels/StringSplit_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/StringSplit_impl.js");n.d(t,"stringSplitImpl",(function(){return $.stringSplitImpl}));var D=n(/*! ./kernels/StringToHashBucketFast_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/StringToHashBucketFast_impl.js");n.d(t,"stringToHashBucketFastImpl",(function(){return D.stringToHashBucketFastImpl}));var P=n(/*! ./kernels/Sub */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sub.js");n.d(t,"subImpl",(function(){return P.subImpl}));var B=n(/*! ./kernels/Tile_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Tile_impl.js");n.d(t,"tileImpl",(function(){return B.tileImpl}));var L=n(/*! ./kernels/TopK_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/TopK_impl.js");n.d(t,"topKImpl",(function(){return L.topKImpl}));var z=n(/*! ./kernels/Transpose_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Transpose_impl.js");n.d(t,"transposeImpl",(function(){return z.transposeImpl}));var G=n(/*! ./kernels/Unique_impl */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Unique_impl.js");n.d(t,"uniqueImpl",(function(){return G.uniqueImpl}))},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/binary_impl.js":
+/*!*****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/binary_impl.js ***!
+ \*****************************************************************************/
+/*! exports provided: createSimpleBinaryKernelImpl */function(e,t,n){"use strict";n.r(t),n.d(t,"createSimpleBinaryKernelImpl",(function(){return o}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2020 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 o(e){return(t,n,o,r,i)=>{const a=s.backend_util.assertAndGetBroadcastShape(t,n),u=a.length,d=s.util.computeStrides(a),l=s.util.sizeFromShape(a),c=s.util.getTypedArrayFromDType(i,l),f=t.length,p=n.length,m=s.util.computeStrides(t),h=s.util.computeStrides(n),b=s.backend_util.getBroadcastDims(t,a),j=s.backend_util.getBroadcastDims(n,a);if(b.length+j.length===0)for(let t=0;ti[e]=0));const a=s.util.locToIndex(i,f,m),l=n.slice(-p);j.forEach((e=>l[e]=0));const g=s.util.locToIndex(l,p,h);c[t]=e(o[a],r[g])}return[c,a]}}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/binary_utils.js":
+/*!******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/binary_utils.js ***!
+ \******************************************************************************/
+/*! exports provided: binaryKernelFunc, createComplexBinaryKernelImpl */function(e,t,n){"use strict";n.r(t),n.d(t,"binaryKernelFunc",(function(){return a})),n.d(t,"createComplexBinaryKernelImpl",(function(){return u}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../cpu_util */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/cpu_util.js"),r=n(/*! ../kernels/Cast */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Cast.js"),i=n(/*! ../kernels/Complex */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Complex.js");
+/**
+ * @license
+ * Copyright 2020 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 a(e,t,n,a){return null==n?({inputs:n,backend:r})=>{const{a:i,b:u}=n,d=r;Object(o.assertNotComplex)([i,u],e);const l=d.data.get(i.dataId).values,c=d.data.get(u.dataId).values,f="string"===i.dtype?s.backend_util.fromUint8ToStringArray(l):l,p="string"===i.dtype?s.backend_util.fromUint8ToStringArray(c):c,m=a||i.dtype,[h,b]=t(i.shape,u.shape,f,p,m);return d.makeTensorInfo(b,m,h)}:({inputs:e,backend:s})=>{const{a:o,b:u}=e,d=s;if("complex64"===o.dtype||"complex64"===u.dtype){const e=Object(r.cast)({inputs:{x:o},backend:d,attrs:{dtype:"complex64"}}),t=d.data.get(e.dataId),s=t.complexTensorInfos.real,a=t.complexTensorInfos.imag,l=d.data.get(s.dataId).values,c=d.data.get(a.dataId).values,f=Object(r.cast)({inputs:{x:u},backend:d,attrs:{dtype:"complex64"}}),p=d.data.get(f.dataId),m=p.complexTensorInfos.real,h=p.complexTensorInfos.imag,b=d.data.get(m.dataId).values,j=d.data.get(h.dataId).values,[g,w,_]=n(o.shape,u.shape,l,c,b,j),k=d.makeTensorInfo(_,"float32",g),v=d.makeTensorInfo(_,"float32",w),x=Object(i.complex)({inputs:{real:k,imag:v},backend:d});return d.disposeIntermediateTensorInfo(e),d.disposeIntermediateTensorInfo(f),d.disposeIntermediateTensorInfo(k),d.disposeIntermediateTensorInfo(v),x}{const e=d.data.get(o.dataId).values,n=d.data.get(u.dataId).values,s=a||o.dtype,[r,i]=t(o.shape,u.shape,e,n,s);return d.makeTensorInfo(i,s,r)}}}function u(e){return(t,n,o,r,i,a)=>{const u=s.backend_util.assertAndGetBroadcastShape(t,n),d=s.util.sizeFromShape(u),l=u.length,c=s.util.computeStrides(u),f=s.util.getTypedArrayFromDType("float32",d),p=s.util.getTypedArrayFromDType("float32",d),m=s.backend_util.getBroadcastDims(t,u),h=s.backend_util.getBroadcastDims(n,u),b=s.backend_util.mergeRealAndImagArrays(o,r),j=s.backend_util.mergeRealAndImagArrays(i,a),g=t.length,w=s.util.computeStrides(t),_=n.length,k=s.util.computeStrides(n);if(m.length+h.length===0)for(let t=0;to[e]=0));const r=s.util.locToIndex(o,g,w),i=n.slice(-_);h.forEach((e=>i[e]=0));const a=s.util.locToIndex(i,_,k),u=e(b[2*r],b[2*r+1],j[2*a],j[2*a+1]);f[t]=u.real,p[t]=u.imag}return[f,p,u]}}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/fft_utils.js":
+/*!***************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/fft_utils.js ***!
+ \***************************************************************************/
+/*! exports provided: fftBatch, fftImpl */function(e,t,n){"use strict";n.r(t),n.d(t,"fftBatch",(function(){return m})),n.d(t,"fftImpl",(function(){return h}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../kernels/Add */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Add.js"),r=n(/*! ../kernels/Complex */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Complex.js"),i=n(/*! ../kernels/Concat */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Concat.js"),a=n(/*! ../kernels/Identity */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Identity.js"),u=n(/*! ../kernels/Imag */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Imag.js"),d=n(/*! ../kernels/Multiply */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Multiply.js"),l=n(/*! ../kernels/Real */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Real.js"),c=n(/*! ../kernels/RealDiv */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/RealDiv.js"),f=n(/*! ../kernels/Slice */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Slice.js"),p=n(/*! ../kernels/Sub */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Sub.js");
+/**
+ * @license
+ * Copyright 2020 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 m(e,t,n){const o=e.shape,i=o[0],a=o[1],u=n.data.get(e.dataId),d=u.complexTensorInfos.real,l=u.complexTensorInfos.imag,c=[i,a],p=s.util.sizeFromShape(c),m=s.util.getTypedArrayFromDType("float32",p),b=s.util.getTypedArrayFromDType("float32",p);for(let e=0;eb?b=s:"avg"===i&&(g+=s,w++)}if(isNaN(b))break}j[x+n*_+t]="avg"===i?g/w:b}}}return b}function r(e,t,n,o,r=!1,i=!1){const a=Object(s.buffer)(o.outShape,"int32"),u=o.strideHeight,d=o.strideWidth,l=o.dilationHeight,c=o.dilationWidth,f=o.effectiveFilterHeight,p=o.effectiveFilterWidth,m=o.padInfo.top,h=o.padInfo.left,b=Object(s.buffer)(t,n,e);for(let e=0;e_&&(_=d,k=r?i?((e*o.inHeight+n)*o.inWidth+s)*o.inChannels+t:(n*o.inWidth+s)*o.inChannels+t:a*p+u)}}a.set(k,e,n,u,t)}}return a}function i(e,t,n,o,r,i){const a=r.strideDepth,u=r.strideHeight,d=r.strideWidth,l=r.dilationDepth,c=r.dilationHeight,f=r.dilationWidth,p=r.effectiveFilterDepth,m=r.effectiveFilterHeight,h=r.effectiveFilterWidth,b=r.padInfo.front,j=r.padInfo.top,g=r.padInfo.left,w="max"===i?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,_=Object(s.buffer)(r.outShape,n),k=_.values,v=r.outShape[1]*r.outShape[2]*r.outShape[3]*r.outShape[4],x=r.outShape[2]*r.outShape[3]*r.outShape[4],y=r.outShape[3]*r.outShape[4],O=r.outShape[4];for(let t=0;tv?v=r:"avg"===i&&(x+=r,y++),isNaN(v))break}if(isNaN(v))break}if(isNaN(v))break}k[j+t]="avg"===i?x/y:v}}}}return _}function a(e,t){const n=Object(s.buffer)(t.outShape,"int32"),o=t.strideDepth,r=t.strideHeight,i=t.strideWidth,a=t.dilationDepth,u=t.dilationHeight,d=t.dilationWidth,l=t.effectiveFilterDepth,c=t.effectiveFilterHeight,f=t.effectiveFilterWidth,p=t.padInfo.front,m=t.padInfo.top,h=t.padInfo.left;for(let s=0;s=y&&(y=u,O=n*c*f+r*c+a)}}}n.set(O,s,j,o,r,b)}}}return n}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/unary_impl.js":
+/*!****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/unary_impl.js ***!
+ \****************************************************************************/
+/*! exports provided: createSimpleUnaryImpl */function(e,t,n){"use strict";n.r(t),n.d(t,"createSimpleUnaryImpl",(function(){return o}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2020 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 o(e){return(t,n,o)=>{const r=s.util.getTypedArrayFromDType(n,t.length);for(let n=0;n{const{x:u}=r;if(Object(o.assertNotComplex)(u,e),"string"===u.dtype||"string"===n)throw new Error("unaryKernelFunc does not support string input/output");const d=a,l=d.data.get(u.dataId).values,c=s.util.sizeFromShape(u.shape),f=n||u.dtype,p=s.util.getArrayFromDType(f,c);for(let e=0;e{const{x:a}=s;if(Object(o.assertNotComplex)(a,e),"string"===a.dtype||"string"===n)throw new Error("unaryKernelFunc does not support string input/output");const u=i,d=u.data.get(a.dataId).values,l=n||a.dtype,c=t(d,l,r);return u.makeTensorInfo(a.shape,l,c)}}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/zeros_impl.js":
+/*!****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/utils/zeros_impl.js ***!
+ \****************************************************************************/
+/*! exports provided: zeros */function(e,t,n){"use strict";n.r(t),n.d(t,"zeros",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../kernels/Complex */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/kernels/Complex.js");
+/**
+ * @license
+ * Copyright 2020 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 r(e,t,n="float32"){if("complex64"===n){const n=r(e,t,"float32"),s=r(e,t,"float32");return Object(o.complex)({inputs:{real:n,imag:s},backend:e})}const i=s.util.makeZerosTypedArray(s.util.sizeFromShape(t),n);return e.makeTensorInfo(t,n,i)}},"./node_modules/@tensorflow/tfjs-backend-cpu/dist/version.js":
+/*!*******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-cpu/dist/version.js ***!
+ \*******************************************************************/
+/*! exports provided: version */function(e,t,n){"use strict";n.r(t),n.d(t,"version",(function(){return s}));
+/** @license See the LICENSE file. */
+const s="3.8.0"},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/backend_wasm.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/backend_wasm.js ***!
+ \*************************************************************************/
+/*! exports provided: BackendWasm, init, setWasmPath, setWasmPaths, resetWasmPath */function(e,t,n){"use strict";n.r(t),n.d(t,"BackendWasm",(function(){return d})),n.d(t,"init",(function(){return c})),n.d(t,"setWasmPath",(function(){return g})),n.d(t,"setWasmPaths",(function(){return w})),n.d(t,"resetWasmPath",(function(){return _}));n(/*! ./flags_wasm */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/flags_wasm.js");var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../wasm-out/tfjs-backend-wasm-threaded-simd.js */"./node_modules/@tensorflow/tfjs-backend-wasm/wasm-out/tfjs-backend-wasm-threaded-simd.js"),r=n.n(o),i=n(/*! ../wasm-out/tfjs-backend-wasm-threaded-simd.worker.js */"./node_modules/@tensorflow/tfjs-backend-wasm/wasm-out/tfjs-backend-wasm-threaded-simd.worker.js"),a=n(/*! ../wasm-out/tfjs-backend-wasm.js */"./node_modules/@tensorflow/tfjs-backend-wasm/wasm-out/tfjs-backend-wasm.js"),u=n.n(a);
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+class d extends s.KernelBackend{constructor(e){super(),this.wasm=e,this.dataIdNextNumber=1,this.wasm.tfjs.init(),this.dataIdMap=new s.DataStorage(this,Object(s.engine)())}write(e,t,n){const s={id:this.dataIdNextNumber++};return this.move(s,e,t,n,1),s}numDataIds(){return this.dataIdMap.numDataIds()}async time(e){const t=s.util.now();e();return{kernelMs:s.util.now()-t}}move(e,t,n,o,r){const i=this.dataIdNextNumber++;if("string"===o){const s=t;return void this.dataIdMap.set(e,{id:i,stringBytes:s,shape:n,dtype:o,memoryOffset:null,refCount:r})}const a=s.util.sizeFromShape(n),u=a*s.util.bytesPerElement(o),d=this.wasm._malloc(u);this.dataIdMap.set(e,{id:i,memoryOffset:d,shape:n,dtype:o,refCount:r}),this.wasm.tfjs.registerTensor(i,a,d),null!=t&&this.wasm.HEAPU8.set(new Uint8Array(t.buffer,t.byteOffset,u),d)}async read(e){return this.readSync(e)}readSync(e){const{memoryOffset:t,dtype:n,shape:o,stringBytes:r}=this.dataIdMap.get(e);if("string"===n)return r;return function(e,t){switch(t){case"float32":return new Float32Array(e);case"int32":return new Int32Array(e);case"bool":return new Uint8Array(e);default:throw new Error(`Unknown dtype ${t}`)}}(this.wasm.HEAPU8.slice(t,t+s.util.sizeFromShape(o)*s.util.bytesPerElement(n)).buffer,n)}disposeData(e,t=!1){if(this.dataIdMap.has(e)){const n=this.dataIdMap.get(e);if(n.refCount--,!t&&n.refCount>0)return!1;this.wasm._free(n.memoryOffset),this.wasm.tfjs.disposeData(n.id),this.dataIdMap.delete(e)}return!0}refCount(e){if(this.dataIdMap.has(e)){return this.dataIdMap.get(e).refCount}return 0}incRef(e){const t=this.dataIdMap.get(e);null!=t&&t.refCount++}floatPrecision(){return 32}getMemoryOffset(e){return this.dataIdMap.get(e).memoryOffset}dispose(){this.wasm.tfjs.dispose(),"PThread"in this.wasm&&this.wasm.PThread.terminateAllThreads(),this.wasm=null}memory(){return{unreliable:!1}}makeOutput(e,t,n){let o;if(null==n)o=this.write(null,e,t);else{const r=this.dataIdNextNumber++;o={id:r},this.dataIdMap.set(o,{id:r,memoryOffset:n,shape:e,dtype:t,refCount:1});const i=s.util.sizeFromShape(e);this.wasm.tfjs.registerTensor(r,i,n)}return{dataId:o,shape:e,dtype:t}}typedArrayFromHeap({shape:e,dtype:t,dataId:n}){const o=this.wasm.HEAPU8.buffer,{memoryOffset:r}=this.dataIdMap.get(n),i=s.util.sizeFromShape(e);switch(t){case"float32":return new Float32Array(o,r,i);case"int32":return new Int32Array(o,r,i);case"bool":return new Uint8Array(o,r,i);default:throw new Error(`Unknown dtype ${t}`)}}}function l(e,t,n){if(null!=p)return p;let s="tfjs-backend-wasm.wasm";return e&&t?s="tfjs-backend-wasm-threaded-simd.wasm":e&&(s="tfjs-backend-wasm-simd.wasm"),null!=h&&null!=h[s]?h[s]:n+s}async function c(){const[e,t]=await Promise.all([Object(s.env)().getAsync("WASM_HAS_SIMD_SUPPORT"),Object(s.env)().getAsync("WASM_HAS_MULTITHREAD_SUPPORT")]);return new Promise(((n,o)=>{const a={};var d;a.locateFile=(n,s)=>{if(n.endsWith(".worker.js")){const e=i.wasmWorkerContents,t=new Blob([e],{type:"application/javascript"});return URL.createObjectURL(t)}return n.endsWith(".wasm")?l(e,t,null!=m?m:s):s+n},j&&(a.instantiateWasm=(d=l(e,t,null!=m?m:""),(e,t)=>(s.util.fetch(d,{credentials:"same-origin"}).then((n=>{n.ok||e.env.a(`failed to load wasm binary file at '${d}'`),n.arrayBuffer().then((n=>{WebAssembly.instantiate(n,e).then((e=>{t(e.instance,e.module)}))}))})),{})));let c,f=!1;a.onAbort=()=>{if(f)return;if(b)return;b=!0;o({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"})},t&&e&&null==p?(a.mainScriptUrlOrBlob=new Blob(["var WasmBackendModuleThreadedSimd = "+r.a.toString()],{type:"text/javascript"}),c=r()(a)):c=u()(a),c.then((e=>{f=!0,b=!1;e.tfjs={init:e.cwrap("init",null,[]),registerTensor:e.cwrap("register_tensor",null,["number","number","number"]),disposeData:e.cwrap("dispose_data",null,["number"]),dispose:e.cwrap("dispose",null,[])},n({wasm:e})}))}))}const f=["tfjs-backend-wasm.wasm","tfjs-backend-wasm-simd.wasm","tfjs-backend-wasm-threaded-simd.wasm"];let p=null,m=null,h={},b=!1,j=!1;function g(e,t=!1){if(Object(s.deprecationWarn)("setWasmPath has been deprecated in favor of setWasmPaths and will be removed in a future release."),b)throw new Error("The WASM backend was already initialized. Make sure you call `setWasmPath()` before you call `tf.setBackend()` or `tf.ready()`");p=e,j=t}function w(e,t=!1){if(b)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)m=e;else{h=e;const t=f.filter((e=>null==h[e]));if(t.length>0)throw new Error(`There were no entries found for the following binaries: ${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.`)}j=t}function _(){p=null,m=null,h={},j=!1,b=!1}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/base.js":
+/*!*****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/base.js ***!
+ \*****************************************************************/
+/*! exports provided: BackendWasm, setWasmPath, setWasmPaths, version_wasm */function(e,t,n){"use strict";n.r(t);n(/*! ./flags_wasm */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/flags_wasm.js");var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./backend_wasm */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/backend_wasm.js");n.d(t,"BackendWasm",(function(){return o.BackendWasm})),n.d(t,"setWasmPath",(function(){return o.setWasmPath})),n.d(t,"setWasmPaths",(function(){return o.setWasmPaths}));var r=n(/*! ./version */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/version.js");n.d(t,"version_wasm",(function(){return r.version}));Object(s.registerBackend)("wasm",(async()=>{const{wasm:e}=await Object(o.init)();return new o.BackendWasm(e)}),2)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/flags_wasm.js":
+/*!***********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/flags_wasm.js ***!
+ \***********************************************************************/
+/*! no exports provided */function(e,t,n){"use strict";n.r(t);var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */const o=Object(s.env)();o.registerFlag("WASM_HAS_SIMD_SUPPORT",(async()=>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])))),o.registerFlag("WASM_HAS_MULTITHREAD_SUPPORT",(async()=>{if(o.get("IS_NODE"))return!1;try{return(new MessageChannel).port1.postMessage(new SharedArrayBuffer(1)),WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,4,1,3,1,1,10,11,1,9,0,65,0,254,16,2,0,26,11]))}catch(e){return!1}}))},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/index.js":
+/*!******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/index.js ***!
+ \******************************************************************/
+/*! exports provided: BackendWasm, setWasmPath, setWasmPaths, version_wasm */function(e,t,n){"use strict";n.r(t);n(/*! ./register_all_kernels */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/register_all_kernels.js");var s=n(/*! ./base */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/base.js");n.d(t,"BackendWasm",(function(){return s.BackendWasm})),n.d(t,"setWasmPath",(function(){return s.setWasmPath})),n.d(t,"setWasmPaths",(function(){return s.setWasmPaths})),n.d(t,"version_wasm",(function(){return s.version_wasm}))},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernel_utils/shared.js":
+/*!********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernel_utils/shared.js ***!
+ \********************************************************************************/
+/*! exports provided: concatImplCPU, rangeImplCPU, sliceImplCPU */function(e,t,n){"use strict";n.r(t);var s=n(/*! @tensorflow/tfjs-backend-cpu/dist/shared */"./node_modules/@tensorflow/tfjs-backend-cpu/dist/shared.js");n.d(t,"concatImplCPU",(function(){return s.concatImpl})),n.d(t,"sliceImplCPU",(function(){return s.sliceImpl})),n.d(t,"rangeImplCPU",(function(){return s.rangeImpl}))},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Abs.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Abs.js ***!
+ \************************************************************************/
+/*! exports provided: absConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"absConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./unary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/unary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createUnaryKernelConfig)(s.Abs)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Add.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Add.js ***!
+ \************************************************************************/
+/*! exports provided: addConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"addConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./binary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/binary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createBinaryKernelConfig)(s.Add,!0)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/AddN.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/AddN.js ***!
+ \*************************************************************************/
+/*! exports provided: addNConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"addNConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./types */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/types.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+let r;const i={kernelName:s.AddN,backendName:"wasm",setupFunc:function(e){r=e.wasm.cwrap(s.AddN,null,["array","number","number","number"])},kernelFunc:function(e){const{inputs:t,backend:n}=e,i=n.makeOutput(t[0].shape,t[0].dtype);if(0===s.util.sizeFromShape(i.shape))return i;const a=t.map((e=>n.dataIdMap.get(e.dataId).id)),u=new Uint8Array(new Int32Array(a).buffer),d=n.dataIdMap.get(i.dataId).id;return r(u,a.length,o.CppDType[i.dtype],d),i}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/All.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/All.js ***!
+ \************************************************************************/
+/*! exports provided: allConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"allConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./kernel_utils */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/kernel_utils.js");
+/**
+ * @license
+ * Copyright 2021 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.
+ * =============================================================================
+ */
+let r;const i={kernelName:s.All,backendName:"wasm",setupFunc:function(e){r=e.wasm.cwrap(s.All,null,["number, number, number"])},kernelFunc:function(e){const{backend:t,inputs:n,attrs:i}=e,{axis:a,keepDims:u}=i,{x:d}=n;let l=t.dataIdMap.get(d.dataId).id,c=d;const{transposed:f,axes:p,originalAxes:m,inputWasTransposed:h}=Object(o.permuteAxesAndTranspose)(d,a,t);if(h){c=f,l=t.dataIdMap.get(f.dataId).id}const b=c.shape.length;s.backend_util.assertAxesAreInnerMostDims("all",p,b);const[j,g]=s.backend_util.computeOutAndReduceShapes(c.shape,p),w=s.util.sizeFromShape(g),_=t.makeOutput(j,d.dtype);if(0!==s.util.sizeFromShape(c.shape)){const e=t.dataIdMap.get(_.dataId).id;r(l,w,e)}if(h&&t.disposeData(f.dataId),u){const e=s.backend_util.expandShapeToKeepDim(_.shape,m);_.shape=e}return _}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Any.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Any.js ***!
+ \************************************************************************/
+/*! exports provided: anyConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"anyConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./kernel_utils */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/kernel_utils.js");
+/**
+ * @license
+ * Copyright 2021 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.
+ * =============================================================================
+ */
+let r;const i={kernelName:s.Any,backendName:"wasm",setupFunc:function(e){r=e.wasm.cwrap(s.Any,null,["number, number, number"])},kernelFunc:function(e){const{backend:t,inputs:n,attrs:i}=e,{axis:a,keepDims:u}=i,{x:d}=n;let l=t.dataIdMap.get(d.dataId).id,c=d;const{transposed:f,axes:p,originalAxes:m,inputWasTransposed:h}=Object(o.permuteAxesAndTranspose)(d,a,t);if(h){c=f,l=t.dataIdMap.get(f.dataId).id}const b=c.shape.length;s.backend_util.assertAxesAreInnerMostDims("any",p,b);const[j,g]=s.backend_util.computeOutAndReduceShapes(c.shape,p),w=s.util.sizeFromShape(g),_=t.makeOutput(j,d.dtype);if(0!==s.util.sizeFromShape(c.shape)){const e=t.dataIdMap.get(_.dataId).id;r(l,w,e)}if(h&&t.disposeData(f.dataId),u){const e=s.backend_util.expandShapeToKeepDim(_.shape,m);_.shape=e}return _}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/ArgMax.js":
+/*!***************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/ArgMax.js ***!
+ \***************************************************************************/
+/*! exports provided: argMaxConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"argMaxConfig",(function(){return a}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./kernel_utils */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/kernel_utils.js"),r=n(/*! ./types */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/types.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+let i;const a={kernelName:s.ArgMax,backendName:"wasm",kernelFunc:function(e){const{backend:t,inputs:n,attrs:a}=e,{axis:u}=a,{x:d}=n,l=t.dataIdMap.get(d.dataId).id;let c=l,f=d;const{transposed:p,axes:m,inputWasTransposed:h}=Object(o.permuteAxesAndTranspose)(d,u,t);if(h){const e=t.dataIdMap.get(p.dataId).id;e!==l&&(f=p,c=e)}const b=f.shape.slice(0,-1),j=t.makeOutput(b,"int32"),g=t.dataIdMap.get(j.dataId).id,w=s.util.sizeFromShape(j.shape),_=f.shape[m[0]];return i(c,r.CppDType[f.dtype],w,_,g),h&&t.disposeData(p.dataId),j},setupFunc:function(e){i=e.wasm.cwrap(s.ArgMax,null,["number","number","number","number","number"])}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/AvgPool.js":
+/*!****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/AvgPool.js ***!
+ \****************************************************************************/
+/*! exports provided: avgPoolConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"avgPoolConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */let o;const r={kernelName:s.AvgPool,backendName:"wasm",setupFunc:function(e){o=e.wasm.cwrap(s.AvgPool,null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){const{inputs:t,attrs:n,backend:r}=e,i=t.x,a=r.dataIdMap.get(i.dataId).id,{filterSize:u,strides:d,pad:l,dimRoundingMode:c}=n,f=s.backend_util.computePool2DInfo(i.shape,u,d,1,l,c),p=f.filterHeight,m=f.filterWidth,h=f.padInfo.top,b=f.padInfo.right,j=f.padInfo.bottom,g=f.padInfo.left,w=f.strideHeight,_=f.strideWidth,k=f.inChannels;if("channelsLast"!==f.dataFormat)throw new Error(`wasm backend does not support dataFormat:'${f.dataFormat}'. Please use 'channelsLast'.`);if(1!==f.dilationWidth||1!==f.dilationHeight)throw new Error(`was backend only supports average pooling with dilation = [1, 1], got [${f.dilationHeight}, ${f.dilationWidth}].`);const v=r.makeOutput(f.outShape,"float32"),x=r.dataIdMap.get(v.dataId).id;return o(a,i.shape[0],i.shape[1],i.shape[2],p,m,h,b,j,g,w,_,k,x),v}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/BatchMatMul.js":
+/*!********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/BatchMatMul.js ***!
+ \********************************************************************************/
+/*! exports provided: batchMatMulConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"batchMatMulConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./Reshape */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Reshape.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+let r;const i={kernelName:s.BatchMatMul,backendName:"wasm",setupFunc:function(e){r=e.wasm.cwrap(s.BatchMatMul,null,["number","array","number","number","array","number","number","number","number"])},kernelFunc:function(e){const{inputs:t,backend:n,attrs:i}=e,{a:a,b:u}=t,{transposeA:d,transposeB:l}=i;if("float32"!==a.dtype||"float32"!==u.dtype)throw new Error("BatchMatMul for non non-float32 tensors not yet supported.");const c=a.shape.length,f=u.shape.length,p=d?a.shape[c-2]:a.shape[c-1],m=l?u.shape[f-1]:u.shape[f-2],h=d?a.shape[c-1]:a.shape[c-2],b=l?u.shape[f-2]:u.shape[f-1],j=a.shape.slice(0,-2),g=u.shape.slice(0,-2),w=s.util.sizeFromShape(j),_=s.util.sizeFromShape(g),k=w===_||1===w||1===_;s.util.assert(c>=2&&f>=2&&k,(()=>`Error in matMul: the input batch dimensions must either be the same or at least one input batch dimension must be 1. Got input batch dimensions of (${j}) and (${g}).`));const v=(w>_?a.shape.slice(0,-2):u.shape.slice(0,-2)).concat([h,b]);s.util.assert(p===m,(()=>`Error in matMul: inner shapes (${p}) and (${m}) of Tensors with shapes ${a.shape} and ${u.shape} and transposeA=${d} and transposeB=${l} must match.`));const x=d?[w,p,h]:[w,h,p],y=l?[_,b,m]:[_,m,b],O=Object(o.reshape)({inputs:{x:a},backend:n,attrs:{shape:x}}),I=Object(o.reshape)({inputs:{x:u},backend:n,attrs:{shape:y}}),C=n.dataIdMap.get(O.dataId).id,S=n.dataIdMap.get(I.dataId).id,T=d?O.shape[2]:O.shape[1],N=l?I.shape[1]:I.shape[2],E=Math.max(w,_),A=n.makeOutput([E,T,N],O.dtype),R=n.dataIdMap.get(A.dataId).id,F=new Uint8Array(new Int32Array(O.shape).buffer),M=new Uint8Array(new Int32Array(I.shape).buffer);return r(C,F,O.shape.length,S,M,I.shape.length,d,l,R),n.disposeData(O.dataId),n.disposeData(I.dataId),A.shape=v,A}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/BatchToSpaceND.js":
+/*!***********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/BatchToSpaceND.js ***!
+ \***********************************************************************************/
+/*! exports provided: batchToSpaceNDConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"batchToSpaceNDConfig",(function(){return a}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./Reshape */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Reshape.js"),r=n(/*! ./Slice */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Slice.js"),i=n(/*! ./Transpose */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Transpose.js");const a={kernelName:s.BatchToSpaceND,backendName:"wasm",kernelFunc:
+/**
+ * @license
+ * Copyright 2021 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){const{inputs:t,backend:n,attrs:a}=e,{x:u}=t,{blockShape:d,crops:l}=a,c=d.reduce(((e,t)=>e*t)),f=s.backend_util.getReshaped(u.shape,d,c),p=s.backend_util.getPermuted(f.length,d.length),m=s.backend_util.getReshapedPermuted(u.shape,d,c),h=s.backend_util.getSliceBeginCoords(l,d.length),b=s.backend_util.getSliceSize(m,l,d.length),j=Object(o.reshape)({inputs:{x:u},backend:n,attrs:{shape:f}}),g=Object(i.transpose)({inputs:{x:j},backend:n,attrs:{perm:p}}),w=Object(o.reshape)({inputs:{x:g},backend:n,attrs:{shape:m}}),_=Object(r.slice)({inputs:{x:w},backend:n,attrs:{begin:h,size:b}});return n.disposeData(j.dataId),n.disposeData(g.dataId),n.disposeData(j.dataId),_}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Cast.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Cast.js ***!
+ \*************************************************************************/
+/*! exports provided: cast, castConfig */function(e,t,n){"use strict";
+/**
+ * @license
+ * Copyright 2019 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 s(e){const{inputs:{x:t},attrs:{dtype:n},backend:s}=e,o=s.makeOutput(t.shape,n),r=s.typedArrayFromHeap(t);return s.typedArrayFromHeap(o).set(r),o}n.r(t),n.d(t,"cast",(function(){return s})),n.d(t,"castConfig",(function(){return o}));const o={kernelName:n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js").Cast,backendName:"wasm",kernelFunc:s}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Ceil.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Ceil.js ***!
+ \*************************************************************************/
+/*! exports provided: ceilConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"ceilConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./unary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/unary_kernel.js");
+/**
+ * @license
+ * Copyright 2021 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.
+ * =============================================================================
+ */
+const r=Object(o.createUnaryKernelConfig)(s.Ceil)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/ClipByValue.js":
+/*!********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/ClipByValue.js ***!
+ \********************************************************************************/
+/*! exports provided: clipByValueConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"clipByValueConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */let o;const r={kernelName:s.ClipByValue,backendName:"wasm",setupFunc:function(e){o=e.wasm.cwrap(s.ClipByValue,null,["number","number","number","number"])},kernelFunc:function(e){const{inputs:t,backend:n,attrs:s}=e,{x:r}=t,{clipValueMin:i,clipValueMax:a}=s,u=n.dataIdMap.get(r.dataId).id,d=n.makeOutput(r.shape,r.dtype),l=n.dataIdMap.get(d.dataId).id;return o(u,i,a,l),d}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Concat.js":
+/*!***************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Concat.js ***!
+ \***************************************************************************/
+/*! exports provided: concat, concatConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"concat",(function(){return a})),n.d(t,"concatConfig",(function(){return u}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../kernel_utils/shared */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernel_utils/shared.js"),r=n(/*! ./Identity */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Identity.js"),i=n(/*! ./Reshape */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Reshape.js");
+/**
+ * @license
+ * Copyright 2019 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 a(e){const{inputs:t,backend:n}=e,a=s.util.parseAxisParam(e.attrs.axis,t[0].shape)[0];let u=s.backend_util.computeOutShape(t.map((e=>e.shape)),a);const d=t.filter((e=>s.util.sizeFromShape(e.shape)>0));if(1===d.length)return Object(r.identity)({inputs:{x:d[0]},backend:n});const l=n.makeOutput(u,t[0].dtype);if(0===s.util.sizeFromShape(u))return l;const c=d.map((e=>e.shape));if(s.backend_util.assertParamsConsistent(c,a),"string"===d[0].dtype){const e=d.map((e=>{const t=[-1,s.util.sizeFromShape(e.shape.slice(a))];return Object(i.reshape)({inputs:{x:e},backend:n,attrs:{shape:t}})})),r=e.map((e=>({vals:n.readSync(e.dataId),shape:e.shape})));u=s.backend_util.computeOutShape(e.map((e=>e.shape)),1);const c=1===e[0].shape[0],f=Object(o.concatImplCPU)(r,u,t[0].dtype,c),p=s.backend_util.computeOutShape(d.map((e=>e.shape)),a);l.shape=p;return n.dataIdMap.get(l.dataId).stringBytes=s.backend_util.fromStringArrayToUint8(f),e.forEach((e=>n.disposeData(e.dataId))),l}const f=s.util.sizeFromShape(d[0].shape.slice(0,a));let p=0;const m=d.map((e=>{const t=s.util.sizeFromShape(e.shape.slice(a));return p+=t,t})),h=d.map((e=>n.typedArrayFromHeap(e))),b=n.typedArrayFromHeap(l);for(let e=0;e`cumsum does not support ${u.dtype} tensors in the WASM backend`));const p=s.backend_util.getAxesPermutation([d],f);let m=u;null!==p&&(m=Object(r.transpose)({inputs:{x:u},attrs:{perm:p},backend:n}));const h=s.backend_util.getInnerMostAxes(1,f)[0];s.backend_util.assertAxesAreInnerMostDims("cumsum",[h],f);const b=n.makeOutput(m.shape,m.dtype),j=m.shape[h],g=n.dataIdMap.get(m.dataId).id,w=n.dataIdMap.get(b.dataId).id;i(g,l?1:0,c?1:0,j,w,o.CppDType[u.dtype]);let _=b;if(null!==p){const e=s.backend_util.getUndoAxesPermutation(p);_=Object(r.transpose)({inputs:{x:b},attrs:{perm:e},backend:n}),n.disposeData(m.dataId),n.disposeData(b.dataId)}return _}const u={kernelName:s.Cumsum,backendName:"wasm",setupFunc:function(e){i=e.wasm.cwrap(s.Cumsum,null,["number","number","number","number","number","number"])},kernelFunc:a}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/DepthToSpace.js":
+/*!*********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/DepthToSpace.js ***!
+ \*********************************************************************************/
+/*! exports provided: depthToSpace, depthToSpaceConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"depthToSpace",(function(){return r})),n.d(t,"depthToSpaceConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */let o;function r(e){const{backend:t,inputs:n,attrs:r}=e,{x:i}=n,{blockSize:a,dataFormat:u}=r;s.util.assert(a>1,(()=>`blockSize should be > 1 for depthToSpace, but was: ${a}`));const d=i.shape[0],l="NHWC"===u?i.shape[1]:i.shape[2],c="NHWC"===u?i.shape[2]:i.shape[3],f="NHWC"===u?i.shape[3]:i.shape[1],p=l*a,m=c*a,h=f/(a*a),b="NHWC"===u?[d,p,m,h]:[d,h,p,m],j=t.makeOutput(b,"float32"),g=t.dataIdMap.get(i.dataId).id,w=new Uint8Array(new Int32Array(s.util.computeStrides(i.shape)).buffer),_=new Uint8Array(new Int32Array(b).buffer),k=new Uint8Array(new Int32Array(s.util.computeStrides(b)).buffer),v=t.dataIdMap.get(j.dataId).id;return o(g,a,"NHWC"===u?1:0,w,i.shape.length-1,_,k,b.length,v),j}const i={kernelName:s.DepthToSpace,backendName:"wasm",setupFunc:function(e){o=e.wasm.cwrap(s.DepthToSpace,null,["number","number","number","array","number","array","array","number","number"])},kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/DepthwiseConv2dNative.js":
+/*!******************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/DepthwiseConv2dNative.js ***!
+ \******************************************************************************************/
+/*! exports provided: depthwiseConv2dNativeConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"depthwiseConv2dNativeConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */let o;const r={kernelName:s.DepthwiseConv2dNative,backendName:"wasm",setupFunc:function(e){o=e.wasm.cwrap(s.DepthwiseConv2dNative,null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){const{inputs:t,attrs:n,backend:r}=e,{x:i,filter:a}=t,u=r.dataIdMap.get(i.dataId).id,d=r.dataIdMap.get(a.dataId).id,{strides:l,dilations:c,pad:f,dimRoundingMode:p}=n,m=null==c?[1,1]:c,h=s.backend_util.computeConv2DInfo(i.shape,a.shape,l,m,f,p,!0),b=h.filterHeight,j=h.filterWidth,g=h.padInfo.top,w=h.padInfo.right,_=h.padInfo.bottom,k=h.padInfo.left,v=h.dilationHeight,x=h.dilationWidth,y=h.strideHeight,O=h.strideWidth,I=h.inChannels,C=h.outChannels,S="SAME"===h.padInfo.type?1:0;if("channelsLast"!==h.dataFormat)throw new Error(`wasm backend DepthwiseConv2dNative does not support dataFormat:'${h.dataFormat}'. Please use 'channelsLast'.`);const T=r.makeOutput(h.outShape,"float32"),N=r.dataIdMap.get(T.dataId).id;return o(u,i.shape[0],i.shape[1],i.shape[2],d,b,j,g,w,_,k,S,v,x,y,O,I,C,N),T}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Equal.js":
+/*!**************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Equal.js ***!
+ \**************************************************************************/
+/*! exports provided: equalConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"equalConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./binary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/binary_kernel.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const r=Object(o.createBinaryKernelConfig)(s.Equal,!1,"bool")},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Exp.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Exp.js ***!
+ \************************************************************************/
+/*! exports provided: expConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"expConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./unary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/unary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createUnaryKernelConfig)(s.Exp)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/ExpandDims.js":
+/*!*******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/ExpandDims.js ***!
+ \*******************************************************************************/
+/*! exports provided: expandDims, expandDimsConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"expandDims",(function(){return r})),n.d(t,"expandDimsConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./Reshape */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Reshape.js");
+/**
+ * @license
+ * Copyright 2019 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 r(e){const{inputs:t,attrs:n,backend:r}=e,{input:i}=t,{dim:a}=n,u=i.shape.length,d=i.shape.slice();let l=a;return a<0&&(s.util.assert(-(u+1)<=a,(()=>`Axis must be in the interval [${-(u+1)}, ${u}]`)),l=u+a+1),d.splice(l,0,1),Object(o.reshape)({inputs:{x:i},backend:r,attrs:{shape:d}})}const i={kernelName:s.ExpandDims,backendName:"wasm",kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Fill.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Fill.js ***!
+ \*************************************************************************/
+/*! exports provided: fillConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"fillConfig",(function(){return s}));const s={kernelName:n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js").Fill,backendName:"wasm",kernelFunc:
+/**
+ * @license
+ * Copyright 2020 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){const{attrs:{shape:t,value:n,dtype:s},backend:o}=e,r=o.makeOutput(t,s);return o.typedArrayFromHeap(r).fill(n),r}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/FlipLeftRight.js":
+/*!**********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/FlipLeftRight.js ***!
+ \**********************************************************************************/
+/*! exports provided: flipLeftRight, flipLeftRightConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"flipLeftRight",(function(){return r})),n.d(t,"flipLeftRightConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */let o;function r(e){const{inputs:t,backend:n}=e,{image:s}=t,r=n.makeOutput(s.shape,s.dtype),i=n.dataIdMap.get(s.dataId).id,a=n.dataIdMap.get(r.dataId).id,[u,d,l,c]=s.shape;return o(i,u,d,l,c,a),r}const i={kernelName:s.FlipLeftRight,backendName:"wasm",kernelFunc:r,setupFunc:function(e){o=e.wasm.cwrap(s.FlipLeftRight,null,["number","number","number","number","number","number"])}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Floor.js":
+/*!**************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Floor.js ***!
+ \**************************************************************************/
+/*! exports provided: floorConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"floorConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./unary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/unary_kernel.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const r=Object(o.createUnaryKernelConfig)(s.Floor)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/FloorDiv.js":
+/*!*****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/FloorDiv.js ***!
+ \*****************************************************************************/
+/*! exports provided: floorDivConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"floorDivConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./binary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/binary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createBinaryKernelConfig)(s.FloorDiv,!1)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/FusedBatchNorm.js":
+/*!***********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/FusedBatchNorm.js ***!
+ \***********************************************************************************/
+/*! exports provided: fusedBatchNormConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"fusedBatchNormConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */let o;const r={kernelName:s.FusedBatchNorm,backendName:"wasm",setupFunc:function(e){o=e.wasm.cwrap(s.FusedBatchNorm,null,["number","number","number","number","number","number","number"])},kernelFunc:function(e){const{backend:t,inputs:n,attrs:r}=e,{varianceEpsilon:i}=r,{x:a,mean:u,variance:d,offset:l,scale:c}=n,f=t.dataIdMap.get(a.dataId).id,p=t.dataIdMap.get(u.dataId).id,m=t.dataIdMap.get(d.dataId).id,h=null!=l?t.dataIdMap.get(l.dataId).id:0,b=null!=c?t.dataIdMap.get(c.dataId).id:0,j=t.makeOutput(a.shape,a.dtype);if(0===s.util.sizeFromShape(a.shape))return j;const g=t.dataIdMap.get(j.dataId).id;return o(f,p,m,h,b,i,g),j}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/FusedConv2D.js":
+/*!********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/FusedConv2D.js ***!
+ \********************************************************************************/
+/*! exports provided: fusedConv2DConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"fusedConv2DConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./types */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/types.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+let r;const i={kernelName:s.FusedConv2D,backendName:"wasm",setupFunc:function(e){r=e.wasm.cwrap(s.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){const{inputs:t,attrs:n,backend:i}=e,{x:a,filter:u,bias:d,preluActivationWeights:l}=t,{strides:c,pad:f,dilations:p,dataFormat:m,dimRoundingMode:h,activation:b,leakyreluAlpha:j}=n,g=s.backend_util.computeConv2DInfo(a.shape,u.shape,c,p,f,h),w=o.FusableActivation[b];if(null==w)throw new Error(`${b} activation not yet supported for FusedConv2D in the wasm backend.`);const _=i.dataIdMap.get(a.dataId).id,k=i.dataIdMap.get(u.dataId).id,v=g.outChannels;let x=0;if(null!=d){const e=i.dataIdMap.get(d.dataId);if(1!==e.shape.length)throw new Error(`FusedConv2D only supports rank-1 bias but got rank ${e.shape.length}.`);if(e.shape[0]!==v)throw new Error(`FusedConv2D bias shape (${e.shape}) does not match the number of output channels (${v})`);x=e.id}const y=g.filterHeight,O=g.filterWidth,I=g.padInfo.top,C=g.padInfo.right,S=g.padInfo.bottom,T=g.padInfo.left,N=g.dilationHeight,E=g.dilationWidth,A=g.strideHeight,R=g.strideWidth,F=g.inChannels,M="SAME"===g.padInfo.type?1:0,$=g.batchSize,D=g.inHeight,P=g.inWidth;if("NHWC"!==m)throw new Error(`wasm backend FusedConv2D does not support dataFormat:'${m}'. Please use 'NHWC'.`);const B=i.makeOutput(g.outShape,"float32"),L=i.dataIdMap.get(B.dataId).id,z=null==l?0:i.dataIdMap.get(l.dataId).id;return r(_,$,D,P,k,y,O,x,I,C,S,T,M,N,E,A,R,F,v,w,z,j||0,L),B}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/FusedDepthwiseConv2D.js":
+/*!*****************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/FusedDepthwiseConv2D.js ***!
+ \*****************************************************************************************/
+/*! exports provided: fusedDepthwiseConv2DConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"fusedDepthwiseConv2DConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./types */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/types.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+let r;const i={kernelName:s.FusedDepthwiseConv2D,backendName:"wasm",setupFunc:function(e){r=e.wasm.cwrap(s.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){const{inputs:t,attrs:n,backend:i}=e,{x:a,filter:u,bias:d,preluActivationWeights:l}=t,{strides:c,pad:f,dilations:p,dataFormat:m,dimRoundingMode:h,activation:b,leakyreluAlpha:j}=n,g=s.backend_util.computeConv2DInfo(a.shape,u.shape,c,p,f,h,!0),w=o.FusableActivation[b];if(null==w)throw new Error(`${b} activation not yet supported for FusedDepthwiseConv2D in the wasm backend.`);const _=i.dataIdMap.get(a.dataId).id,k=i.dataIdMap.get(u.dataId).id,v=g.outChannels;let x=0;if(null!=d){const e=i.dataIdMap.get(d.dataId);if(1!==e.shape.length)throw new Error(`FusedDepthwiseConv2D only supports rank-1 bias but got rank ${e.shape.length}.`);if(e.shape[0]!==v)throw new Error(`FusedDepthwiseConv2D bias shape (${e.shape}) does not match the number of output channels (${v})`);x=e.id}const y=g.filterHeight,O=g.filterWidth,I=g.padInfo.top,C=g.padInfo.right,S=g.padInfo.bottom,T=g.padInfo.left,N=g.dilationHeight,E=g.dilationWidth,A=g.strideHeight,R=g.strideWidth,F=g.inChannels,M="SAME"===g.padInfo.type?1:0,$=g.batchSize,D=g.inHeight,P=g.inWidth;if("NHWC"!==m)throw new Error(`wasm backend FusedDepthwiseConv2D does not support dataFormat:'${m}'. Please use 'NHWC'.`);const B=i.makeOutput(g.outShape,"float32"),L=i.dataIdMap.get(B.dataId).id,z=null==l?0:i.dataIdMap.get(l.dataId).id;return r(_,$,D,P,k,y,O,x,I,C,S,T,M,N,E,A,R,F,v,w,z,j||0,L),B}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/GatherNd.js":
+/*!*****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/GatherNd.js ***!
+ \*****************************************************************************/
+/*! exports provided: gatherNdConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"gatherNdConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./types */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/types.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+let r;const i={kernelName:s.GatherNd,backendName:"wasm",setupFunc:function(e){r=e.wasm.cwrap(s.GatherNd,null,["number","number","number","number","number","number","array","number"])},kernelFunc:function(e){const{backend:t,inputs:n}=e,{params:i,indices:a}=n,[u,d,l,c]=s.gather_util.prepareAndValidate(i,a),f=t.makeOutput(u,i.dtype);if(0===d)return f;const p=a.shape,m=p[p.length-1],h=t.dataIdMap.get(i.dataId).id,b=t.dataIdMap.get(a.dataId).id,j=new Uint8Array(new Int32Array(c).buffer),g=t.dataIdMap.get(f.dataId).id;return r(h,o.CppDType[i.dtype],b,d,m,l,j,g),f}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/GatherV2.js":
+/*!*****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/GatherV2.js ***!
+ \*****************************************************************************/
+/*! exports provided: gatherV2Config */function(e,t,n){"use strict";n.r(t),n.d(t,"gatherV2Config",(function(){return a}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./Reshape */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Reshape.js"),r=n(/*! ./types */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/types.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+let i;const a={kernelName:s.GatherV2,backendName:"wasm",setupFunc:function(e){i=e.wasm.cwrap("Gather",null,["number","number","array","number","number","number","array","number"])},kernelFunc:function(e){const{backend:t,inputs:n,attrs:a}=e,{x:u,indices:d}=n,{axis:l,batchDims:c}=a,f=s.util.parseAxisParam(l,u.shape)[0],p=s.backend_util.segment_util.collectGatherOpShapeInfo(u,d,f,c),m=Object(o.reshape)({inputs:{x:u},attrs:{shape:[p.batchSize,p.outerSize,p.dimSize,p.sliceSize]},backend:t}),h=s.util.sizeFromShape(d.shape),b=Object(o.reshape)({inputs:{x:d},attrs:{shape:[p.batchSize,h/p.batchSize]},backend:t}),j=[p.batchSize,p.outerSize,h/p.batchSize,p.sliceSize],g=t.makeOutput(j,u.dtype);if(0===s.util.sizeFromShape(u.shape))return g;const w=m.shape.length-1,_=t.dataIdMap.get(m.dataId).id,k=t.dataIdMap.get(b.dataId).id,v=t.dataIdMap.get(g.dataId).id,x=new Uint8Array(new Int32Array(s.util.computeStrides(m.shape)).buffer),y=new Uint8Array(new Int32Array(s.util.computeStrides(j)).buffer);return i(_,r.CppDType[u.dtype],x,w,k,p.batchSize,y,v),t.disposeData(m.dataId),t.disposeData(b.dataId),g.shape=p.outputShape,g}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Greater.js":
+/*!****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Greater.js ***!
+ \****************************************************************************/
+/*! exports provided: greaterConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"greaterConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./binary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/binary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createBinaryKernelConfig)(s.Greater,!1,"bool")},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/GreaterEqual.js":
+/*!*********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/GreaterEqual.js ***!
+ \*********************************************************************************/
+/*! exports provided: greaterEqualConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"greaterEqualConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./binary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/binary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createBinaryKernelConfig)(s.GreaterEqual,!1,"bool")},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Identity.js":
+/*!*****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Identity.js ***!
+ \*****************************************************************************/
+/*! exports provided: identity, identityConfig */function(e,t,n){"use strict";
+/**
+ * @license
+ * Copyright 2020 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 s(e){const{inputs:{x:t},backend:n}=e,s=n.makeOutput(t.shape,t.dtype),o=n.typedArrayFromHeap(t);return n.typedArrayFromHeap(s).set(o),s}n.r(t),n.d(t,"identity",(function(){return s})),n.d(t,"identityConfig",(function(){return o}));const o={kernelName:n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js").Identity,backendName:"wasm",kernelFunc:s}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/LeakyRelu.js":
+/*!******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/LeakyRelu.js ***!
+ \******************************************************************************/
+/*! exports provided: leakyRelu, leakyReluConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"leakyRelu",(function(){return r})),n.d(t,"leakyReluConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */let o;function r(e){const{inputs:{x:t},attrs:{alpha:n},backend:r}=e,i=r.dataIdMap.get(t.dataId).id,a=r.makeOutput(t.shape,t.dtype);if(0!==s.util.sizeFromShape(t.shape)){const e=r.dataIdMap.get(a.dataId).id;o(i,n,e)}return a}const i={kernelName:s.LeakyRelu,backendName:"wasm",setupFunc:function(e){o=e.wasm.cwrap(s.LeakyRelu,null,["number","number","number"])},kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Less.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Less.js ***!
+ \*************************************************************************/
+/*! exports provided: lessConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"lessConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./binary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/binary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createBinaryKernelConfig)(s.Less,!1,"bool")},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/LessEqual.js":
+/*!******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/LessEqual.js ***!
+ \******************************************************************************/
+/*! exports provided: lessEqualConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"lessEqualConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./binary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/binary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createBinaryKernelConfig)(s.LessEqual,!1,"bool")},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Log.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Log.js ***!
+ \************************************************************************/
+/*! exports provided: logConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"logConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./unary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/unary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createUnaryKernelConfig)(s.Log)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/LogicalAnd.js":
+/*!*******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/LogicalAnd.js ***!
+ \*******************************************************************************/
+/*! exports provided: logicalAndConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"logicalAndConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./binary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/binary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createBinaryKernelConfig)(s.LogicalAnd,!1,"bool")},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Max.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Max.js ***!
+ \************************************************************************/
+/*! exports provided: maxConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"maxConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./kernel_utils */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/kernel_utils.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+let r;const i={kernelName:s.Max,backendName:"wasm",setupFunc:function(e){r=e.wasm.cwrap(s.Max,null,["number, number, number"])},kernelFunc:function(e){const{backend:t,inputs:n,attrs:i}=e,{reductionIndices:a,keepDims:u}=i,{x:d}=n;let l=t.dataIdMap.get(d.dataId).id,c=d;const{transposed:f,axes:p,originalAxes:m,inputWasTransposed:h}=Object(o.permuteAxesAndTranspose)(d,a,t);if(h){c=f,l=t.dataIdMap.get(f.dataId).id}const b=c.shape.length;s.backend_util.assertAxesAreInnerMostDims("max",p,b);const[j,g]=s.backend_util.computeOutAndReduceShapes(c.shape,p),w=s.util.sizeFromShape(g),_=t.makeOutput(j,d.dtype);if(0!==s.util.sizeFromShape(c.shape)){const e=t.dataIdMap.get(_.dataId).id;r(l,w,e)}if(h&&t.disposeData(f.dataId),u){const e=s.backend_util.expandShapeToKeepDim(_.shape,m);_.shape=e}return _}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/MaxPool.js":
+/*!****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/MaxPool.js ***!
+ \****************************************************************************/
+/*! exports provided: maxPoolConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"maxPoolConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */let o;const r={kernelName:s.MaxPool,backendName:"wasm",setupFunc:function(e){o=e.wasm.cwrap(s.MaxPool,null,["number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){const{inputs:t,attrs:n,backend:r}=e,i=t.x,a=r.dataIdMap.get(i.dataId).id,{filterSize:u,strides:d,pad:l,dimRoundingMode:c}=n,f=s.backend_util.computePool2DInfo(i.shape,u,d,1,l,c),p=f.filterHeight,m=f.filterWidth,h=f.padInfo.top,b=f.padInfo.right,j=f.padInfo.bottom,g=f.padInfo.left,w=f.dilationHeight,_=f.dilationWidth,k=f.strideHeight,v=f.strideWidth,x=f.inChannels,y=f.outChannels;if("channelsLast"!==f.dataFormat)throw new Error(`wasm backend does not support dataFormat:'${f.dataFormat}'. Please use 'channelsLast'.`);const O=r.makeOutput(f.outShape,"float32"),I=r.dataIdMap.get(O.dataId).id;return o(a,i.shape[0],i.shape[1],i.shape[2],p,m,h,b,j,g,w,_,k,v,x,y,I),O}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Maximum.js":
+/*!****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Maximum.js ***!
+ \****************************************************************************/
+/*! exports provided: maximumConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"maximumConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./binary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/binary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createBinaryKernelConfig)(s.Maximum,!1)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Mean.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Mean.js ***!
+ \*************************************************************************/
+/*! exports provided: mean, meanConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"mean",(function(){return a})),n.d(t,"meanConfig",(function(){return u}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./Cast */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Cast.js"),r=n(/*! ./kernel_utils */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/kernel_utils.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+let i;function a(e){const{backend:t,inputs:n,attrs:a}=e,{axis:u,keepDims:d}=a,{x:l}=n,c=t.dataIdMap.get(l.dataId).id;let f=c,p=l;const{transposed:m,axes:h,originalAxes:b,inputWasTransposed:j}=Object(r.permuteAxesAndTranspose)(l,u,t);let g=h;if(j){const e=t.dataIdMap.get(m.dataId).id;e!==c&&(p=m,f=e,g=s.backend_util.getInnerMostAxes(g.length,p.shape.length))}s.backend_util.assertAxesAreInnerMostDims("mean",g,p.shape.length);const[w,_]=s.backend_util.computeOutAndReduceShapes(p.shape,g),k=s.util.sizeFromShape(_);let v=p;"float32"!==p.dtype&&(v=Object(o.cast)({backend:t,inputs:{x:p},attrs:{dtype:"float32"}}),f=t.dataIdMap.get(v.dataId).id);const x=t.makeOutput(w,"float32");if(0!==s.util.sizeFromShape(p.shape)){const e=t.dataIdMap.get(x.dataId).id;i(f,k,e)}if(j&&t.disposeData(m.dataId),d){const e=s.backend_util.expandShapeToKeepDim(x.shape,b);x.shape=e}return"float32"!==p.dtype&&t.disposeData(v.dataId),x}const u={kernelName:s.Mean,backendName:"wasm",setupFunc:function(e){i=e.wasm.cwrap(s.Mean,null,["number, number, number"])},kernelFunc:a}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Min.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Min.js ***!
+ \************************************************************************/
+/*! exports provided: minConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"minConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./kernel_utils */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/kernel_utils.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+let r;const i={kernelName:s.Min,backendName:"wasm",setupFunc:function(e){r=e.wasm.cwrap(s.Min,null,["number, number, number"])},kernelFunc:function(e){const{backend:t,inputs:n,attrs:i}=e,{axis:a,keepDims:u}=i,{x:d}=n,l=t.dataIdMap.get(d.dataId).id;let c=l,f=d;const{transposed:p,axes:m,originalAxes:h,inputWasTransposed:b}=Object(o.permuteAxesAndTranspose)(d,a,t);if(b){const e=t.dataIdMap.get(p.dataId).id;e!==l&&(f=p,c=e)}const j=f.shape.length;s.backend_util.assertAxesAreInnerMostDims("min",m,j);const[g,w]=s.backend_util.computeOutAndReduceShapes(f.shape,m),_=s.util.sizeFromShape(w),k=t.makeOutput(g,f.dtype);if(0!==s.util.sizeFromShape(f.shape)){const e=t.dataIdMap.get(k.dataId).id;r(c,_,e)}if(b&&t.disposeData(p.dataId),u){const e=s.backend_util.expandShapeToKeepDim(k.shape,h);k.shape=e}return k}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Minimum.js":
+/*!****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Minimum.js ***!
+ \****************************************************************************/
+/*! exports provided: minimumConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"minimumConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./binary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/binary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createBinaryKernelConfig)(s.Minimum,!1)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/MirrorPad.js":
+/*!******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/MirrorPad.js ***!
+ \******************************************************************************/
+/*! exports provided: mirrorPadConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"mirrorPadConfig",(function(){return a}));var s,o=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),r=n(/*! ./types */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/types.js");let i;!function(e){e[e.reflect=0]="reflect",e[e.symmetric=1]="symmetric"}(s||(s={}));const a={kernelName:o.MirrorPad,backendName:"wasm",kernelFunc:function(e){const{inputs:{x:t},backend:n,attrs:{paddings:o,mode:a}}=e,u=o.map(((e,n)=>e[0]+t.shape[n]+e[1])),d=n.dataIdMap.get(t.dataId).id,l=n.makeOutput(u,t.dtype),c=n.dataIdMap.get(l.dataId).id,f=new Uint8Array(new Int32Array(t.shape).buffer),p=o.map((e=>e[0])),m=o.map((e=>e[1])),h=new Uint8Array(new Int32Array(p).buffer),b=new Uint8Array(new Int32Array(m).buffer);return i(d,f,t.shape.length,r.CppDType[t.dtype],h,b,s[a],c),l},setupFunc:function(e){i=e.wasm.cwrap(o.MirrorPad,null,["number","array","number","number","array","array","number","number"])}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Multiply.js":
+/*!*****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Multiply.js ***!
+ \*****************************************************************************/
+/*! exports provided: multiplyConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"multiplyConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./binary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/binary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createBinaryKernelConfig)(s.Multiply,!0)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Neg.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Neg.js ***!
+ \************************************************************************/
+/*! exports provided: negConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"negConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./unary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/unary_kernel.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const r=Object(o.createUnaryKernelConfig)(s.Neg)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/NonMaxSuppressionV3.js":
+/*!****************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/NonMaxSuppressionV3.js ***!
+ \****************************************************************************************/
+/*! exports provided: nonMaxSuppressionV3Config */function(e,t,n){"use strict";n.r(t),n.d(t,"nonMaxSuppressionV3Config",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./NonMaxSuppression_util */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/NonMaxSuppression_util.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+let r;const i={kernelName:s.NonMaxSuppressionV3,backendName:"wasm",setupFunc:function(e){r=e.wasm.cwrap(s.NonMaxSuppressionV3,"number",["number","number","number","number","number"])},kernelFunc:function(e){const{backend:t,inputs:n,attrs:s}=e,{iouThreshold:i,maxOutputSize:a,scoreThreshold:u}=s,{boxes:d,scores:l}=n,c=t.dataIdMap.get(d.dataId).id,f=t.dataIdMap.get(l.dataId).id,p=r(c,f,a,i,u),{pSelectedIndices:m,selectedSize:h,pSelectedScores:b,pValidOutputs:j}=Object(o.parseResultStruct)(t,p);return t.wasm._free(b),t.wasm._free(j),t.makeOutput([h],"int32",m)}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/NonMaxSuppressionV4.js":
+/*!****************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/NonMaxSuppressionV4.js ***!
+ \****************************************************************************************/
+/*! exports provided: nonMaxSuppressionV4Config */function(e,t,n){"use strict";n.r(t),n.d(t,"nonMaxSuppressionV4Config",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./NonMaxSuppression_util */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/NonMaxSuppression_util.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+let r;const i={kernelName:s.NonMaxSuppressionV4,backendName:"wasm",setupFunc:function(e){r=e.wasm.cwrap(s.NonMaxSuppressionV4,"number",["number","number","number","number","number","bool"])},kernelFunc:function(e){const{backend:t,inputs:n,attrs:s}=e,{iouThreshold:i,maxOutputSize:a,scoreThreshold:u,padToMaxOutputSize:d}=s,{boxes:l,scores:c}=n,f=t.dataIdMap.get(l.dataId).id,p=t.dataIdMap.get(c.dataId).id,m=r(f,p,a,i,u,d),{pSelectedIndices:h,selectedSize:b,pSelectedScores:j,pValidOutputs:g}=Object(o.parseResultStruct)(t,m);return t.wasm._free(j),[t.makeOutput([b],"int32",h),t.makeOutput([],"int32",g)]}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/NonMaxSuppressionV5.js":
+/*!****************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/NonMaxSuppressionV5.js ***!
+ \****************************************************************************************/
+/*! exports provided: nonMaxSuppressionV5Config */function(e,t,n){"use strict";n.r(t),n.d(t,"nonMaxSuppressionV5Config",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./NonMaxSuppression_util */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/NonMaxSuppression_util.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+let r;const i={kernelName:s.NonMaxSuppressionV5,backendName:"wasm",setupFunc:function(e){r=e.wasm.cwrap(s.NonMaxSuppressionV5,"number",["number","number","number","number","number","number"])},kernelFunc:function(e){const{backend:t,inputs:n,attrs:s}=e,{iouThreshold:i,maxOutputSize:a,scoreThreshold:u,softNmsSigma:d}=s,{boxes:l,scores:c}=n,f=t.dataIdMap.get(l.dataId).id,p=t.dataIdMap.get(c.dataId).id,m=r(f,p,a,i,u,d),{pSelectedIndices:h,selectedSize:b,pSelectedScores:j,pValidOutputs:g}=Object(o.parseResultStruct)(t,m);return t.wasm._free(g),[t.makeOutput([b],"int32",h),t.makeOutput([b],"float32",j)]}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/NonMaxSuppression_util.js":
+/*!*******************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/NonMaxSuppression_util.js ***!
+ \*******************************************************************************************/
+/*! exports provided: parseResultStruct */function(e,t,n){"use strict";
+/**
+ * @license
+ * Copyright 2019 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 s(e,t){const n=new Int32Array(e.wasm.HEAPU8.buffer,t,4),s=n[0],o=n[1],r=n[2],i=n[3];return e.wasm._free(t),{pSelectedIndices:s,selectedSize:o,pSelectedScores:r,pValidOutputs:i}}n.r(t),n.d(t,"parseResultStruct",(function(){return s}))},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/NotEqual.js":
+/*!*****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/NotEqual.js ***!
+ \*****************************************************************************/
+/*! exports provided: notEqualConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"notEqualConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./binary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/binary_kernel.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const r=Object(o.createBinaryKernelConfig)(s.NotEqual,!1,"bool")},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/OneHot.js":
+/*!***************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/OneHot.js ***!
+ \***************************************************************************/
+/*! exports provided: oneHotConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"oneHotConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */let o;const r={kernelName:s.OneHot,backendName:"wasm",setupFunc:function(e){o=e.wasm.cwrap(s.OneHot,null,["number","number","number","number","number"])},kernelFunc:function(e){const{inputs:t,backend:n,attrs:s}=e,{indices:r}=t,{depth:i,onValue:a,offValue:u}=s,d=n.makeOutput([...r.shape,i],"int32"),l=n.dataIdMap.get(d.dataId).id,c=n.dataIdMap.get(r.dataId).id;return o(c,i,a,u,l),d}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/OnesLike.js":
+/*!*****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/OnesLike.js ***!
+ \*****************************************************************************/
+/*! exports provided: onesLikeConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"onesLikeConfig",(function(){return s}));const s={kernelName:n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js").OnesLike,backendName:"wasm",kernelFunc:
+/**
+ * @license
+ * Copyright 2020 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){const{inputs:{x:t},backend:n}=e,s=n.makeOutput(t.shape,t.dtype);return n.typedArrayFromHeap(s).fill(1),s}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Pack.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Pack.js ***!
+ \*************************************************************************/
+/*! exports provided: pack, packConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"pack",(function(){return i})),n.d(t,"packConfig",(function(){return a}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./Concat */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Concat.js"),r=n(/*! ./ExpandDims */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/ExpandDims.js");
+/**
+ * @license
+ * Copyright 2020 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 i(e){const{inputs:t,backend:n,attrs:i}=e,{axis:a}=i;if(1===t.length)return Object(r.expandDims)({inputs:{input:t[0]},backend:n,attrs:{dim:a}});const u=t[0].shape,d=t[0].dtype;t.forEach((e=>{s.util.assertShapesMatch(u,e.shape,"All tensors passed to stack must have matching shapes"),s.util.assert(d===e.dtype,(()=>"All tensors passed to stack must have matching dtypes"))}));const l=[],c=t.map((e=>{const t=Object(r.expandDims)({inputs:{input:e},backend:n,attrs:{dim:a}});return l.push(t),t})),f=Object(o.concat)({inputs:c,backend:n,attrs:{axis:a}});return l.forEach((e=>n.disposeData(e.dataId))),f}const a={kernelName:s.Pack,backendName:"wasm",kernelFunc:i}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/PadV2.js":
+/*!**************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/PadV2.js ***!
+ \**************************************************************************/
+/*! exports provided: padV2Config */function(e,t,n){"use strict";n.r(t),n.d(t,"padV2Config",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./types */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/types.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+let r;const i={kernelName:s.PadV2,backendName:"wasm",kernelFunc:function(e){const{inputs:{x:t},backend:n,attrs:{paddings:s,constantValue:i}}=e,a=s.map(((e,n)=>e[0]+t.shape[n]+e[1])),u=n.dataIdMap.get(t.dataId).id,d=n.makeOutput(a,t.dtype),l=n.dataIdMap.get(d.dataId).id,c=new Uint8Array(new Int32Array(t.shape).buffer),f=s.map((e=>e[0])),p=s.map((e=>e[1])),m=new Uint8Array(new Int32Array(f).buffer),h=new Uint8Array(new Int32Array(p).buffer);return r(u,c,t.shape.length,o.CppDType[t.dtype],m,h,i,l),d},setupFunc:function(e){r=e.wasm.cwrap(s.PadV2,null,["number","array","number","number","array","array","number","number"])}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Pow.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Pow.js ***!
+ \************************************************************************/
+/*! exports provided: powConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"powConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./binary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/binary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createBinaryKernelConfig)(s.Pow,!1)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Prelu.js":
+/*!**************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Prelu.js ***!
+ \**************************************************************************/
+/*! exports provided: preluConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"preluConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */let o;const r={kernelName:s.Prelu,backendName:"wasm",setupFunc:function(e){o=e.wasm.cwrap(s.Prelu,null,["number","number","number"])},kernelFunc:function(e){const{inputs:t,backend:n}=e,{x:s,alpha:r}=t,i=n.dataIdMap.get(s.dataId).id,a=n.dataIdMap.get(r.dataId).id,u=n.makeOutput(s.shape,"float32"),d=n.dataIdMap.get(u.dataId).id;return o(i,a,d),u}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Prod.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Prod.js ***!
+ \*************************************************************************/
+/*! exports provided: prodConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"prodConfig",(function(){return a}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./kernel_utils */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/kernel_utils.js"),r=n(/*! ./types */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/types.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+let i;const a={kernelName:s.Prod,backendName:"wasm",setupFunc:function(e){i=e.wasm.cwrap(s.Prod,null,["number","number","number","number"])},kernelFunc:function(e){const{backend:t,inputs:n,attrs:a}=e,{axis:u,keepDims:d}=a,{x:l}=n,c=t.dataIdMap.get(l.dataId).id;let f=c,p=l;const{transposed:m,axes:h,originalAxes:b,inputWasTransposed:j}=Object(o.permuteAxesAndTranspose)(l,u,t);let g=h;if(j){const e=t.dataIdMap.get(m.dataId).id;e!==c&&(p=m,f=e,g=s.backend_util.getInnerMostAxes(g.length,p.shape.length))}s.backend_util.assertAxesAreInnerMostDims("prod",g,p.shape.length);const[w,_]=s.backend_util.computeOutAndReduceShapes(p.shape,g),k=s.util.sizeFromShape(_),v=t.makeOutput(w,p.dtype);if(0!==s.util.sizeFromShape(p.shape)){const e=t.dataIdMap.get(v.dataId).id;i(f,k,r.CppDType[v.dtype],e)}if(j&&t.disposeData(m.dataId),d){const e=s.backend_util.expandShapeToKeepDim(v.shape,b);v.shape=e}return v}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Range.js":
+/*!**************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Range.js ***!
+ \**************************************************************************/
+/*! exports provided: range, rangeConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"range",(function(){return r})),n.d(t,"rangeConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../kernel_utils/shared */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernel_utils/shared.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const r=e=>{const{backend:t,attrs:n}=e,{start:s,stop:r,step:i,dtype:a}=n,u=Object(o.rangeImplCPU)(s,r,i,a),d=t.makeOutput([u.length],a);return t.typedArrayFromHeap(d).set(u),d},i={kernelName:s.Range,backendName:"wasm",kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/RealDiv.js":
+/*!****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/RealDiv.js ***!
+ \****************************************************************************/
+/*! exports provided: realDivConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"realDivConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./binary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/binary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createBinaryKernelConfig)(s.RealDiv,!0)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Relu.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Relu.js ***!
+ \*************************************************************************/
+/*! exports provided: reluConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"reluConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./unary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/unary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createUnaryKernelConfig)(s.Relu)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Relu6.js":
+/*!**************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Relu6.js ***!
+ \**************************************************************************/
+/*! exports provided: relu6Config */function(e,t,n){"use strict";n.r(t),n.d(t,"relu6Config",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./unary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/unary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createUnaryKernelConfig)(s.Relu6)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Reshape.js":
+/*!****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Reshape.js ***!
+ \****************************************************************************/
+/*! exports provided: reshape, reshapeConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"reshape",(function(){return o})),n.d(t,"reshapeConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2019 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 o(e){const{inputs:t,attrs:n}=e,{x:o}=t,{shape:r}=n,i=s.util.sizeFromShape(o.shape),a=s.util.inferFromImplicitShape(r,i);return s.util.assert(i===s.util.sizeFromShape(a),(()=>`new shape: ${a}, old shape: ${o.shape}. New shape and old shape must have the same number of elements.`)),e.backend.incRef(o.dataId),{dataId:o.dataId,shape:a,dtype:o.dtype}}const r={kernelName:s.Reshape,backendName:"wasm",kernelFunc:o}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/ResizeBilinear.js":
+/*!***********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/ResizeBilinear.js ***!
+ \***********************************************************************************/
+/*! exports provided: resizeBilinearConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"resizeBilinearConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./Cast */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Cast.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+let r;const i={kernelName:s.ResizeBilinear,backendName:"wasm",setupFunc:function(e){r=e.wasm.cwrap(s.ResizeBilinear,null,["number","number","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){const{backend:t,inputs:n,attrs:i}=e,{images:a}=n,{alignCorners:u,halfPixelCenters:d,size:l}=i,[c,f]=l,[p,m,h,b]=a.shape,j=[p,c,f,b];let g,w=t.dataIdMap.get(a.dataId);"float32"!==w.dtype&&(g=Object(o.cast)({backend:t,inputs:{x:a},attrs:{dtype:"float32"}}),w=t.dataIdMap.get(g.dataId));const _=w.id,k=t.makeOutput(j,"float32");if(0===s.util.sizeFromShape(a.shape))return k;const v=t.dataIdMap.get(k.dataId).id;return r(_,p,m,h,b,c,f,u?1:0,d?1:0,v),null!=g&&t.disposeData(g.dataId),k}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Reverse.js":
+/*!****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Reverse.js ***!
+ \****************************************************************************/
+/*! exports provided: reverse, reverseConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"reverse",(function(){return a})),n.d(t,"reverseConfig",(function(){return u}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./Identity */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Identity.js"),r=n(/*! ./Reshape */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Reshape.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+let i;function a(e){const{inputs:t,backend:n,attrs:a}=e,{x:u}=t,{dims:d}=a,l=s.util.parseAxisParam(d,u.shape);if(0===u.shape.length)return Object(o.identity)({inputs:{x:u},backend:n});const c=n.makeOutput(u.shape,u.dtype),f=n.dataIdMap.get(u.dataId).id,p=n.dataIdMap.get(c.dataId).id,m=new Uint8Array(new Int32Array(l).buffer),h=new Uint8Array(new Int32Array(u.shape).buffer);i(f,m,l.length,h,u.shape.length,p);const b=Object(r.reshape)({inputs:{x:c},attrs:{shape:u.shape},backend:n});return n.disposeData(c.dataId),b}const u={kernelName:s.Reverse,backendName:"wasm",kernelFunc:a,setupFunc:function(e){i=e.wasm.cwrap(s.Reverse,null,["number","array","number","array","number","number"])}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/RotateWithOffset.js":
+/*!*************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/RotateWithOffset.js ***!
+ \*************************************************************************************/
+/*! exports provided: rotateWithOffset, rotateWithOffsetConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"rotateWithOffset",(function(){return r})),n.d(t,"rotateWithOffsetConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */let o;function r(e){const{inputs:t,backend:n,attrs:r}=e,{image:i}=t,{radians:a,fillValue:u,center:d}=r,l=n.makeOutput(i.shape,i.dtype),c=n.dataIdMap.get(i.dataId).id,f=n.dataIdMap.get(l.dataId).id,[p,m,h,b]=i.shape,[j,g]=s.backend_util.getImageCenter(d,m,h),w="number"==typeof u?[u,u,u,0===u?0:255]:[...u,255],_=new Uint8Array(new Int32Array(w).buffer);return o(c,p,m,h,b,a,j,g,_,w.length,f),l}const i={kernelName:s.RotateWithOffset,backendName:"wasm",kernelFunc:r,setupFunc:function(e){o=e.wasm.cwrap(s.RotateWithOffset,null,["number","number","number","number","number","number","number","number","array","number","number"])}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Round.js":
+/*!**************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Round.js ***!
+ \**************************************************************************/
+/*! exports provided: roundConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"roundConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./unary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/unary_kernel.js");
+/**
+ * @license
+ * Copyright 2021 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.
+ * =============================================================================
+ */
+const r=Object(o.createUnaryKernelConfig)(s.Round)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Rsqrt.js":
+/*!**************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Rsqrt.js ***!
+ \**************************************************************************/
+/*! exports provided: rsqrtConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"rsqrtConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./unary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/unary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createUnaryKernelConfig)(s.Rsqrt)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/ScatterNd.js":
+/*!******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/ScatterNd.js ***!
+ \******************************************************************************/
+/*! exports provided: scatterNdConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"scatterNdConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./types */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/types.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+let r;const i={kernelName:s.ScatterNd,backendName:"wasm",setupFunc:function(e){r=e.wasm.cwrap(s.ScatterNd,null,["number","number","number","number","number","number","array","number","number"])},kernelFunc:function(e){const{backend:t,inputs:n,attrs:i}=e,{indices:a,updates:u}=n,{shape:d}=i,l=t.makeOutput(d,u.dtype);if(0===s.util.sizeFromShape(d))return l;const{sliceRank:c,numUpdates:f,sliceSize:p,strides:m,outputSize:h}=s.scatter_util.calculateShapes(u,a,d),b=t.dataIdMap.get(a.dataId).id,j=t.dataIdMap.get(u.dataId).id,g=new Uint8Array(new Int32Array(m).buffer),w=t.dataIdMap.get(l.dataId).id;return r(b,j,o.CppDType[u.dtype],c,f,p,g,h,w),l}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Select.js":
+/*!***************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Select.js ***!
+ \***************************************************************************/
+/*! exports provided: selectConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"selectConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */let o;const r={kernelName:s.Select,backendName:"wasm",kernelFunc:function(e){const{inputs:t,backend:n}=e,{condition:r,t:i,e:a}=t,u=n.dataIdMap.get(r.dataId).id,d=n.dataIdMap.get(i.dataId).id,l=n.dataIdMap.get(a.dataId).id,c=n.makeOutput(i.shape,i.dtype),f=n.dataIdMap.get(c.dataId).id,p=r.shape.length,m=i.shape.length,h=0===p||p>1||1===m?1:s.util.sizeFromShape(i.shape.slice(1));return o(u,d,l,h,f),c},setupFunc:function(e){o=e.wasm.cwrap("SelectV2",null,["number","number","number","number","number"])}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Sigmoid.js":
+/*!****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Sigmoid.js ***!
+ \****************************************************************************/
+/*! exports provided: sigmoidConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"sigmoidConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */let o;const r={kernelName:"Sigmoid",backendName:"wasm",setupFunc:function(e){o=e.wasm.cwrap(s.Sigmoid,null,["number","number"])},kernelFunc:function(e){const{backend:t,inputs:{x:n}}=e,r=t.dataIdMap.get(n.dataId).id,i=t.makeOutput(n.shape,n.dtype),a=t.dataIdMap.get(i.dataId).id;return 0===s.util.sizeFromShape(i.shape)||o(r,a),i}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Sin.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Sin.js ***!
+ \************************************************************************/
+/*! exports provided: sinConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"sinConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./unary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/unary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createUnaryKernelConfig)(s.Sin)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Slice.js":
+/*!**************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Slice.js ***!
+ \**************************************************************************/
+/*! exports provided: slice, sliceConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"slice",(function(){return r})),n.d(t,"sliceConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ../kernel_utils/shared */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernel_utils/shared.js");
+/**
+ * @license
+ * Copyright 2019 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 r(e){const{inputs:{x:t},attrs:{begin:n,size:r},backend:i}=e,[a,u]=s.slice_util.parseSliceParams(t,n,r),d=s.slice_util.isSliceContinous(t.shape,a,u),l=i.readSync(t.dataId),c=i.makeOutput(u,t.dtype),f=s.util.computeStrides(t.shape),p=i.dataIdMap.get(c.dataId);if(d){const e=s.slice_util.computeFlatOffset(a,f);if("string"===t.dtype)p.stringBytes=l.slice(e,e+s.util.sizeFromShape(u));else{i.typedArrayFromHeap(c).set(l.subarray(e,e+s.util.sizeFromShape(u)))}return c}if("string"===t.dtype){const e=Object(o.sliceImplCPU)(l,a,u,t.shape,t.dtype);return p.stringBytes=e,c}const m=i.typedArrayFromHeap(c),h=t.shape.length;if(2===h)!function(e,t,n,s,o){let r=0;const i=s[0],a=s[1],u=i+o[0];for(let s=i;s{const t=[...f];t[d]=e;const n=Object(o.slice)({inputs:{x:i},attrs:{begin:c,size:t},backend:r});return c[d]+=e,n}))}const i={kernelName:s.SplitV,backendName:"wasm",kernelFunc:r}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Sqrt.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Sqrt.js ***!
+ \*************************************************************************/
+/*! exports provided: sqrtConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"sqrtConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./unary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/unary_kernel.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const r=Object(o.createUnaryKernelConfig)(s.Sqrt)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Square.js":
+/*!***************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Square.js ***!
+ \***************************************************************************/
+/*! exports provided: squareConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"squareConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./unary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/unary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createUnaryKernelConfig)(s.Square)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/SquaredDifference.js":
+/*!**************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/SquaredDifference.js ***!
+ \**************************************************************************************/
+/*! exports provided: squaredDifferenceConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"squaredDifferenceConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./binary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/binary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createBinaryKernelConfig)(s.SquaredDifference,!0)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Step.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Step.js ***!
+ \*************************************************************************/
+/*! exports provided: stepConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"stepConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */let o;const r={kernelName:s.Step,backendName:"wasm",setupFunc:function(e){o=e.wasm.cwrap(s.Step,null,["number","number","number"])},kernelFunc:function(e){const{backend:t,inputs:n,attrs:s}=e,{alpha:r}=s,{x:i}=n,a=t.dataIdMap.get(i.dataId).id,u=t.makeOutput(i.shape,i.dtype),d=t.dataIdMap.get(u.dataId).id;return o(a,r,d),u}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/StridedSlice.js":
+/*!*********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/StridedSlice.js ***!
+ \*********************************************************************************/
+/*! exports provided: stridedSlice, stridedSliceConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"stridedSlice",(function(){return a})),n.d(t,"stridedSliceConfig",(function(){return u}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./Reshape */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Reshape.js"),r=n(/*! ./Slice */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Slice.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+let i;function a(e){const{backend:t,inputs:n,attrs:a}=e,{x:u}=n;let{begin:d,end:l,strides:c}=a;null==c&&(c=new Array(d.length));const{beginMask:f,endMask:p,ellipsisMask:m,newAxisMask:h,shrinkAxisMask:b}=a,j=s.backend_util.slice_util.maskToAxes(m);if(j.length>1)throw new Error("Multiple ellipses in slice is not allowed.");if(0!==m&&0!==h)throw new Error("Using both ellipsisMask and newAxisMask is not yet supported.");if(0!==m&&0!==b)throw new Error("Using both ellipsisMask and shrinkAxisMask is not yet supported.");const g=u.shape.length-d.length,w=s.backend_util.slice_util.maskToAxes(h),_=u.shape.slice();w.forEach((e=>{d[e]=0,l[e]=1,_.splice(e,0,1)}));const k=Object(o.reshape)({inputs:{x:u},attrs:{shape:_},backend:t}),{begin:v,end:x,strides:y}=s.backend_util.slice_util.getNormalizedAxes(k.shape,j,g,d,l,c,f,p,m);d=v,l=x,c=y;const O=s.backend_util.slice_util.maskToAxes(b);O.forEach((e=>{l[e]=d[e]+1,c[e]=1}));const I=s.backend_util.slice_util.computeOutShape(d,l,c),C=I.filter(((e,t)=>-1===O.indexOf(t)));if(c.every((e=>1===e))){const e=Object(r.slice)({inputs:{x:k},attrs:{begin:d,size:I},backend:t});t.disposeData(k.dataId);const n=Object(o.reshape)({inputs:{x:e},attrs:{shape:C},backend:t});return t.disposeData(e.dataId),n}const S=t.makeOutput(C,"float32");if(!C.some((e=>0===e))){const e=t.dataIdMap.get(k.dataId).id,n=new Uint8Array(new Int32Array(s.util.computeStrides(k.shape)).buffer),o=new Uint8Array(new Int32Array(d).buffer),r=new Uint8Array(new Int32Array(l).buffer),a=new Uint8Array(new Int32Array(c).buffer),u=new Uint8Array(new Int32Array(C).buffer),f=new Uint8Array(new Int32Array(s.util.computeStrides(C)).buffer),p=t.dataIdMap.get(S.dataId).id;i(e,n,k.shape.length,o,r,a,u,f,C.length,p)}t.disposeData(k.dataId);const T=Object(o.reshape)({inputs:{x:S},attrs:{shape:C},backend:t});return t.disposeData(S.dataId),T}const u={kernelName:s.StridedSlice,backendName:"wasm",setupFunc:function(e){i=e.wasm.cwrap(s.StridedSlice,null,["number","array","number","array","array","array","array","array","number","number"])},kernelFunc:a}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Sub.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Sub.js ***!
+ \************************************************************************/
+/*! exports provided: subConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"subConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./binary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/binary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createBinaryKernelConfig)(s.Sub,!0)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Sum.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Sum.js ***!
+ \************************************************************************/
+/*! exports provided: sumConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"sumConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./kernel_utils */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/kernel_utils.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+let r;const i={kernelName:s.Sum,backendName:"wasm",setupFunc:function(e){r=e.wasm.cwrap(s.Sum,null,["number, number, number"])},kernelFunc:function(e){const{backend:t,inputs:n,attrs:i}=e,{axis:a,keepDims:u}=i,{x:d}=n,l=t.dataIdMap.get(d.dataId).id;let c=l,f=d;const{transposed:p,axes:m,originalAxes:h,inputWasTransposed:b}=Object(o.permuteAxesAndTranspose)(d,a,t);let j=m;if(b){const e=t.dataIdMap.get(p.dataId).id;e!==l&&(f=p,c=e,j=s.backend_util.getInnerMostAxes(j.length,f.shape.length))}s.backend_util.assertAxesAreInnerMostDims("sum",j,f.shape.length);const[g,w]=s.backend_util.computeOutAndReduceShapes(f.shape,j),_=s.util.sizeFromShape(w),k=t.makeOutput(g,f.dtype);if(0!==s.util.sizeFromShape(f.shape)){const e=t.dataIdMap.get(k.dataId).id;r(c,_,e)}if(b&&t.disposeData(p.dataId),u){const e=s.backend_util.expandShapeToKeepDim(k.shape,h);k.shape=e}return k}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Tan.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Tan.js ***!
+ \************************************************************************/
+/*! exports provided: tanConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"tanConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./unary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/unary_kernel.js");
+/**
+ * @license
+ * Copyright 2021 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.
+ * =============================================================================
+ */
+const r=Object(o.createUnaryKernelConfig)(s.Tan)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Tanh.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Tanh.js ***!
+ \*************************************************************************/
+/*! exports provided: tanhConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"tanhConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./unary_kernel */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/unary_kernel.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.createUnaryKernelConfig)(s.Tanh)},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Tile.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Tile.js ***!
+ \*************************************************************************/
+/*! exports provided: tileConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"tileConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./types */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/types.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+let r;const i={kernelName:s.Tile,backendName:"wasm",setupFunc:function(e){r=e.wasm.cwrap(s.Tile,null,["number","array","number","array","number","number"])},kernelFunc:function(e){const{inputs:t,backend:n,attrs:s}=e,{x:i}=t,a=n.dataIdMap.get(i.dataId).id,{reps:u}=s,d=new Array(i.shape.length);for(let e=0;e{const{x:s}=e,{k:i,sorted:a}=n,u=t.dataIdMap.get(s.dataId).id,d=new Uint8Array(new Int32Array(s.shape).buffer),l=s.shape.slice();l[l.length-1]=i;const c=t.makeOutput(l,s.dtype),f=t.dataIdMap.get(c.dataId).id,p=t.makeOutput(l,"int32"),m=t.dataIdMap.get(p.dataId).id;return r(u,d,s.shape.length,o.CppDType[s.dtype],i,a,f,m),[c,p]},a={kernelName:s.TopK,backendName:"wasm",setupFunc:function(e){r=e.wasm.cwrap(s.TopK,null,["number","array","number","number","number","bool","number","number"])},kernelFunc:i}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Transform.js":
+/*!******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Transform.js ***!
+ \******************************************************************************/
+/*! exports provided: transformConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"transformConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js");
+/**
+ * @license
+ * Copyright 2021 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.
+ * =============================================================================
+ */let o;const r={kernelName:s.Transform,backendName:"wasm",setupFunc:function(e){o=e.wasm.cwrap(s.Transform,null,["number","number","bool","number","number","number","number","number","number","array","number","number","number","number","number"])},kernelFunc:function(e){const{backend:t,inputs:n,attrs:r}=e,{image:i,transforms:a}=n,{interpolation:u,fillMode:d,fillValue:l,outputShape:c}=r,[f,p,m,h]=i.shape,[b,j]=null!=c?c:[p,m],g=[f,b,j,h],w=new Uint8Array(new Int32Array(s.util.computeStrides(i.shape)).buffer),_=t.makeOutput(g,i.dtype),k=t.dataIdMap.get(_.dataId).id,v=t.dataIdMap.get(i.dataId).id,x=t.dataIdMap.get(a.dataId).id,y="nearest"===u?1:2;let O;switch(d){case"constant":O=1;break;case"reflect":O=2;break;case"wrap":O=3;break;case"nearest":O=4;break;default:O=1}return o(v,x,a.shape[0]>1,f,b,j,h,m,p,w,i.shape.length-1,y,O,l,k),_}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Transpose.js":
+/*!******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Transpose.js ***!
+ \******************************************************************************/
+/*! exports provided: transpose, transposeConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"transpose",(function(){return a})),n.d(t,"transposeConfig",(function(){return u}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./Identity */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Identity.js"),r=n(/*! ./types */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/types.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+let i;function a(e){const{inputs:t,backend:n,attrs:s}=e,[a,u]=function(e,t){const n=[],s=[];for(let o=0;o=e&&(-1===t||s[t]>s[n])&&(t=n);s[t]=e}return[n,s]}(t.x.shape,s.perm);let d=!0;for(let e=0;e({dataId:e,dtype:t,shape:d})))}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/ZerosLike.js":
+/*!******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/ZerosLike.js ***!
+ \******************************************************************************/
+/*! exports provided: zerosLikeConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"zerosLikeConfig",(function(){return s}));const s={kernelName:n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js").ZerosLike,backendName:"wasm",kernelFunc:
+/**
+ * @license
+ * Copyright 2020 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){const{inputs:{x:t},backend:n}=e,s=n.makeOutput(t.shape,t.dtype);return n.typedArrayFromHeap(s).fill(0),s}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/_FusedMatMul.js":
+/*!*********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/_FusedMatMul.js ***!
+ \*********************************************************************************/
+/*! exports provided: fusedMatMulConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"fusedMatMulConfig",(function(){return i}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./types */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/types.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+let r;const i={kernelName:s._FusedMatMul,backendName:"wasm",setupFunc:function(e){r=e.wasm.cwrap(s._FusedMatMul,null,["number","array","number","number","array","number","number","number","number","number","number","number","number"])},kernelFunc:function(e){const{inputs:t,backend:n,attrs:s}=e,{a:i,b:a,bias:u,preluActivationWeights:d}=t;if("float32"!==i.dtype||"float32"!==a.dtype)throw new Error("_FusedMatMul for non non-float32 tensors not yet supported.");const{transposeA:l,transposeB:c,activation:f,leakyreluAlpha:p}=s,m=n.dataIdMap.get(i.dataId).id,h=n.dataIdMap.get(a.dataId).id;let b=0;if(null!=u){const e=n.dataIdMap.get(u.dataId);if(1!==e.shape.length)throw new Error(`_FusedMatMul only supports rank-1 bias but got rank ${e.shape.length}.`);b=e.id}const j=null==d?0:n.dataIdMap.get(d.dataId).id,g=o.FusableActivation[f];if(null==g)throw new Error(`${f} activation not yet supported for FusedConv2D in the wasm backend.`);const w=l?i.shape[2]:i.shape[1],_=c?a.shape[1]:a.shape[2],k=i.shape[0],v=n.makeOutput([k,w,_],i.dtype),x=n.dataIdMap.get(v.dataId).id,y=new Uint8Array(new Int32Array(i.shape).buffer),O=new Uint8Array(new Int32Array(a.shape).buffer);return r(m,y,i.shape.length,h,O,a.shape.length,l,c,g,b,j,p||0,x),v}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/binary_kernel.js":
+/*!**********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/binary_kernel.js ***!
+ \**********************************************************************************/
+/*! exports provided: createBinaryKernelConfig */function(e,t,n){"use strict";n.r(t),n.d(t,"createBinaryKernelConfig",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./types */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/types.js");
+/**
+ * @license
+ * Copyright 2019 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 r(e,t,n){let r;return{kernelName:e,backendName:"wasm",setupFunc:function(t){r=t.wasm.cwrap(e,null,["number","array","number","number","array","number","number","number"])},kernelFunc:function(i){const{backend:a,inputs:u}=i,{a:d,b:l}=u,c=a.dataIdMap.get(d.dataId).id,f=a.dataIdMap.get(l.dataId).id,p=null!=n?n:d.dtype,m=s.backend_util.assertAndGetBroadcastShape(d.shape,l.shape),h=a.makeOutput(m,p);if(0===s.util.sizeFromShape(m))return h;const b=new Uint8Array(new Int32Array(d.shape).buffer),j=new Uint8Array(new Int32Array(l.shape).buffer),g=a.dataIdMap.get(h.dataId).id,w=()=>r(c,b,d.shape.length,f,j,l.shape.length,o.CppDType[d.dtype],g);if(t&&"float32"===d.dtype)return w(),h;const _=s.backend_util.getBroadcastDims(d.shape,m),k=s.backend_util.getBroadcastDims(l.shape,m),v=_.every(((e,t)=>e===t)),x=k.every(((e,t)=>e===t));if(v&&x)return w(),h;throw new Error(`Broadcasting along outer dims is not yet supported for ${d.dtype} ${e}.`)}}}},"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/kernel_utils.js":
+/*!*********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/kernel_utils.js ***!
+ \*********************************************************************************/
+/*! exports provided: permuteAxesAndTranspose */function(e,t,n){"use strict";n.r(t),n.d(t,"permuteAxesAndTranspose",(function(){return r}));var s=n(/*! @tensorflow/tfjs-core */"./node_modules/@tensorflow/tfjs-core/dist/index.js"),o=n(/*! ./Transpose */"./node_modules/@tensorflow/tfjs-backend-wasm/dist/kernels/Transpose.js");
+/**
+ * @license
+ * Copyright 2020 Google Inc. 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 r(e,t,n){const r=e.shape,i=e.shape.length,a=s.util.parseAxisParam(t,r);let u=a;const d=s.backend_util.getAxesPermutation(u,i);let l=null,c=!1;if(null!=d){const t=new Array(i);for(let e=0;e1&&s.argv[1].replace(/\\/g,"/"),b=s.argv.slice(2),s.on("uncaughtException",(function(e){if(!(e instanceof ln))throw e})),s.on("unhandledRejection",ke),j=function(e){s.exit(e)},p.inspect=function(){return"[Emscripten Module object]"};try{N=n(/*! worker_threads */6)}catch(e){throw console.error('The "worker_threads" module is not supported in this node.js build - perhaps a newer version is needed?'),e}r.Worker=N.Worker}else k?("undefined"!=typeof read&&(x=function(e){return read(e)}),O=function(e){var t;return"function"==typeof readbuffer?new Uint8Array(readbuffer(e)):(W("object"==typeof(t=read(e,"binary"))),t)},"undefined"!=typeof scriptArgs?b=scriptArgs:"undefined"!=typeof arguments&&(b=arguments),"function"==typeof quit&&(j=function(e){quit(e)}),"undefined"!=typeof print&&("undefined"==typeof console&&(console={}),console.log=print,console.warn=console.error="undefined"!=typeof printErr?printErr:print)):(g||w)&&(w?S=self.location.href:"undefined"!=typeof document&&document.currentScript&&(S=document.currentScript.src),"undefined"!=typeof i&&i&&(S=i),S=0!==S.indexOf("blob:")?S.substr(0,S.lastIndexOf("/")+1):"",_?(x=function(e,t){return I||(I=n(/*! fs */5)),C||(C=n(/*! path */4)),e=C.normalize(e),I.readFileSync(e,t?null:"utf8")},O=function(e){var t=x(e,!0);return t.buffer||(t=new Uint8Array(t)),W(t.buffer),t}):(x=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.send(null),t.responseText},w&&(O=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}),y=function(e,t,n){var s=new XMLHttpRequest;s.open("GET",e,!0),s.responseType="arraybuffer",s.onload=function(){200==s.status||0==s.status&&s.response?t(s.response):n()},s.onerror=n,s.send(null)}));_&&"undefined"==typeof performance&&(r.performance=n(/*! perf_hooks */7).performance);var E,A=p.print||console.log.bind(console),R=p.printErr||console.warn.bind(console);for(m in h)h.hasOwnProperty(m)&&(p[m]=h[m]);h=null,p.arguments&&(b=p.arguments),p.thisProgram&&p.thisProgram,p.quit&&(j=p.quit),Atomics.load,Atomics.store,Atomics.compareExchange,p.wasmBinary&&(E=p.wasmBinary);var F,M,$=p.noExitRuntime||!0;"object"!=typeof WebAssembly&&ke("no native wasm support detected");var D,P,B,L,z,G,U=!1;function W(e,t){e||ke("Assertion failed: "+t)}function V(e){var t=p["_"+e];return W(t,"Cannot call unknown function "+e+", make sure it is exported"),t}function q(e,t,n,s,o){var r={string:function(e){var t=0;if(null!=e&&0!==e){var n=1+(e.length<<2);Z(e,t=on(n),n)}return t},array:function(e){var t=on(e.length);return J(e,t),t}},i=V(e),a=[],u=0;if(s)for(var d=0;d=s);){var r=e[t++];if(!r)return o;if(128&r){var i=63&e[t++];if(192!=(224&r)){var a=63&e[t++];if((r=224==(240&r)?(15&r)<<12|i<<6|a:(7&r)<<18|i<<12|a<<6|63&e[t++])<65536)o+=String.fromCharCode(r);else{var u=r-65536;o+=String.fromCharCode(55296|u>>10,56320|1023&u)}}else o+=String.fromCharCode((31&r)<<6|i)}else o+=String.fromCharCode(r)}return o}function X(e,t){return e?K(a(),e,t):""}function Y(e,t,n,s){if(!(s>0))return 0;for(var o=n,r=n+s-1,i=0;i=55296&&a<=57343&&(a=65536+((1023&a)<<10)|1023&e.charCodeAt(++i)),a<=127){if(n>=r)break;t[n++]=a}else if(a<=2047){if(n+1>=r)break;t[n++]=192|a>>6,t[n++]=128|63&a}else if(a<=65535){if(n+2>=r)break;t[n++]=224|a>>12,t[n++]=128|a>>6&63,t[n++]=128|63&a}else{if(n+3>=r)break;t[n++]=240|a>>18,t[n++]=128|a>>12&63,t[n++]=128|a>>6&63,t[n++]=128|63&a}}return t[n]=0,n-o}function Z(e,t,n){return Y(e,a(),t,n)}function Q(e){for(var t=0,n=0;n=55296&&s<=57343&&(s=65536+((1023&s)<<10)|1023&e.charCodeAt(++n)),s<=127?++t:t+=s<=2047?2:s<=65535?3:4}return t}function J(e,n){t().set(e,n)}function ee(e,t){return e%t>0&&(e+=t-e%t),e}function te(e){D=e,p.HEAP8=P=new Int8Array(e),p.HEAP16=new Int16Array(e),p.HEAP32=L=new Int32Array(e),p.HEAPU8=B=new Uint8Array(e),p.HEAPU16=new Uint16Array(e),p.HEAPU32=z=new Uint32Array(e),p.HEAPF32=new Float32Array(e),p.HEAPF64=G=new Float64Array(e)}var ne,se=p.INITIAL_MEMORY||16777216;if(v)F=p.wasmMemory,D=p.buffer;else if(p.wasmMemory)F=p.wasmMemory;else if(!((F=new WebAssembly.Memory({initial:se/65536,maximum:32768,shared:!0})).buffer instanceof SharedArrayBuffer))throw R("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"),_&&console.log("(on node you may need: --experimental-wasm-threads --experimental-wasm-bulk-memory and also use a recent version)"),Error("bad memory");F&&(D=F.buffer),se=D.byteLength,te(D);var oe=[],re=[],ie=[],ae=[],ue=[];function de(){if(!v){if(p.preRun)for("function"==typeof p.preRun&&(p.preRun=[p.preRun]);p.preRun.length;)me(p.preRun.shift());Re(oe)}}function le(){v||Re(re)}function ce(){v||Re(ie)}function fe(){}function pe(){if(!v){if(p.postRun)for("function"==typeof p.postRun&&(p.postRun=[p.postRun]);p.postRun.length;)he(p.postRun.shift());Re(ue)}}function me(e){oe.unshift(e)}function he(e){ue.unshift(e)}v||re.push({func:function(){Gt()}});var be=0,je=null,ge=null;function we(e){W(!v,"addRunDependency cannot be used in a pthread worker"),be++,p.monitorRunDependencies&&p.monitorRunDependencies(be)}function _e(e){if(be--,p.monitorRunDependencies&&p.monitorRunDependencies(be),0==be&&(null!==je&&(clearInterval(je),je=null),ge)){var t=ge;ge=null,t()}}function ke(e){p.onAbort&&p.onAbort(e),v&&console.error("Pthread aborting at "+(new Error).stack),R(e+=""),U=!0,e="abort("+e+"). Build with -s ASSERTIONS=1 for more info.";var t=new WebAssembly.RuntimeError(e);throw f(t),t}function ve(e,t){return String.prototype.startsWith?e.startsWith(t):0===e.indexOf(t)}p.preloadedImages={},p.preloadedAudios={};var xe="data:application/octet-stream;base64,";function ye(e){return ve(e,xe)}var Oe="file://";function Ie(e){return ve(e,Oe)}var Ce="tfjs-backend-wasm-threaded-simd.wasm";function Se(e){try{if(e==Ce&&E)return new Uint8Array(E);if(O)return O(e);throw"both async and sync fetching of the wasm failed"}catch(e){ke(e)}}function Te(){if(!E&&(g||w)){if("function"==typeof fetch&&!Ie(Ce))return fetch(Ce,{credentials:"same-origin"}).then((function(e){if(!e.ok)throw"failed to load wasm binary file at '"+Ce+"'";return e.arrayBuffer()})).catch((function(){return Se(Ce)}));if(y)return new Promise((function(e,t){y(Ce,(function(t){e(new Uint8Array(t))}),t)}))}return Promise.resolve().then((function(){return Se(Ce)}))}function Ne(){var e={a:zt};function t(e,t){var n=e.exports;if(p.asm=n,ne=p.asm.F,M=t,!v){var s=Be.unusedWorkers.length;Be.unusedWorkers.forEach((function(e){Be.loadWasmModuleToWorker(e,(function(){--s||_e()}))}))}}function n(e){t(e.instance,e.module)}function s(t){return Te().then((function(t){return WebAssembly.instantiate(t,e)})).then(t,(function(e){R("failed to asynchronously prepare wasm: "+e),ke(e)}))}if(v||we(),p.instantiateWasm)try{return p.instantiateWasm(e,t)}catch(e){return R("Module.instantiateWasm callback failed with error: "+e),!1}return(E||"function"!=typeof WebAssembly.instantiateStreaming||ye(Ce)||Ie(Ce)||"function"!=typeof fetch?s(n):fetch(Ce,{credentials:"same-origin"}).then((function(t){return WebAssembly.instantiateStreaming(t,e).then(n,(function(e){return R("wasm streaming compile failed: "+e),R("falling back to ArrayBuffer instantiation"),s(n)}))}))).catch(f),{}}ye(Ce)||(Ce=T(Ce));var Ee={9832:function(){throw"Canceled!"},9850:function(e,t){setTimeout((function(){Zt(e,t)}),0)}};function Ae(){Be.initRuntime()}function Re(e){for(;e.length>0;){var t=e.shift();if("function"!=typeof t){var n=t.func;"number"==typeof n?void 0===t.arg?ne.get(n)():ne.get(n)(t.arg):n(void 0===t.arg?null:t.arg)}else t(p)}}function Fe(e,n){if(e<=0||e>t().length||!0&e||n<0)return-28;if(0==n)return 0;n>=2147483647&&(n=1/0);var s=Atomics.load(u(),dn>>2),o=0;if(s==e&&Atomics.compareExchange(u(),dn>>2,s,0)==s&&(o=1,--n<=0))return 1;var r=Atomics.notify(u(),e>>2,n);if(r>=0)return r+o;throw"Atomics.notify returned an unexpected value "+r}function Me(e){if(v)throw"Internal Error! killThread() can only ever be called from main application thread!";if(!e)throw"Internal Error! Null pthread_ptr in killThread!";u()[e+12>>2]=0;var t=Be.pthreads[e];t.worker.terminate(),Be.freeThreadData(t),Be.runningWorkers.splice(Be.runningWorkers.indexOf(t.worker),1),t.worker.pthread=void 0}function $e(e){if(v)throw"Internal Error! cancelThread() can only ever be called from main application thread!";if(!e)throw"Internal Error! Null pthread_ptr in cancelThread!";Be.pthreads[e].worker.postMessage({cmd:"cancel"})}function De(e){if(v)throw"Internal Error! cleanupThread() can only ever be called from main application thread!";if(!e)throw"Internal Error! Null pthread_ptr in cleanupThread!";var t=Be.pthreads[e];if(t){u()[e+12>>2]=0;var n=t.worker;Be.returnWorkerToPool(n)}}p._emscripten_futex_wake=Fe;var Pe,Be={unusedWorkers:[],runningWorkers:[],initMainThreadBlock:function(){for(var e=Math.min(4,Math.max(1,(navigator.hardwareConcurrency||1)/2)),t=0;t>2]=e;var n=e+152;u()[n>>2]=n;var s=Ut(512);for(t=0;t<128;++t)d()[s/4+t]=0;Atomics.store(d(),e+100>>2,s),Atomics.store(d(),e+40>>2,e),tn(e,!w,1),Yt(e)},initWorker:function(){},pthreads:{},threadExitHandlers:[],setThreadStatus:function(){},runExitHandlers:function(){for(;Be.threadExitHandlers.length>0;)Be.threadExitHandlers.pop()();v&&Ht()&&Kt()},runExitHandlersAndDeinitThread:function(e,t){Atomics.store(d(),e+56>>2,1),Atomics.store(d(),e+60>>2,0),Be.runExitHandlers(),Atomics.store(d(),e+4>>2,t),Atomics.store(d(),e+0>>2,1),Fe(e+0,2147483647),tn(0,0,0)},threadExit:function(e){var t=Ht();t&&(Be.runExitHandlersAndDeinitThread(t,e),v&&postMessage({cmd:"exit"}))},threadCancel:function(){Be.runExitHandlersAndDeinitThread(Ht(),-1),postMessage({cmd:"cancelDone"})},terminateAllThreads:function(){for(var e in Be.pthreads)(s=Be.pthreads[e])&&s.worker&&Be.returnWorkerToPool(s.worker);Be.pthreads={};for(var t=0;t>2];u()[e.threadInfoStruct+100>>2]=0,Wt(t),Wt(e.threadInfoStruct)}e.threadInfoStruct=0,e.allocatedOwnStack&&e.stackBase&&Wt(e.stackBase),e.stackBase=0,e.worker&&(e.worker.pthread=null)}},returnWorkerToPool:function(e){Be.runWithoutMainThreadQueuedCalls((function(){delete Be.pthreads[e.pthread.threadInfoStruct],Be.unusedWorkers.push(e),Be.runningWorkers.splice(Be.runningWorkers.indexOf(e),1),Be.freeThreadData(e.pthread),e.pthread=void 0}))},runWithoutMainThreadQueuedCalls:function(e){u()[un>>2]=0;try{e()}finally{u()[un>>2]=1}},receiveObjectTransfer:function(e){},loadWasmModuleToWorker:function(e,t){e.onmessage=function(n){var s=n.data,o=s.cmd;if(e.pthread&&(Be.currentProxiedOperationCallerThread=e.pthread.threadInfoStruct),s.targetThread&&s.targetThread!=Ht()){var r=Be.pthreads[s.targetThread];return r?r.worker.postMessage(n.data,s.transferList):console.error('Internal error! Worker sent a message "'+o+'" to target pthread '+s.targetThread+", but that thread no longer exists!"),void(Be.currentProxiedOperationCallerThread=void 0)}if("processQueuedMainThreadWork"===o)Xt();else if("spawnThread"===o)$t(n.data);else if("cleanupThread"===o)De(s.thread);else if("killThread"===o)Me(s.thread);else if("cancelThread"===o)$e(s.thread);else if("loaded"===o)e.loaded=!0,t&&t(e),e.runPthread&&(e.runPthread(),delete e.runPthread);else if("print"===o)A("Thread "+s.threadId+": "+s.text);else if("printErr"===o)R("Thread "+s.threadId+": "+s.text);else if("alert"===o)alert("Thread "+s.threadId+": "+s.text);else if("exit"===o)e.pthread&&Atomics.load(d(),e.pthread.threadInfoStruct+64>>2)&&Be.returnWorkerToPool(e);else if("exitProcess"===o)try{fn(s.returnCode)}catch(n){if(n instanceof ln)return;throw n}else"cancelDone"===o?Be.returnWorkerToPool(e):"objectTransfer"===o?Be.receiveObjectTransfer(n.data):"setimmediate"===n.data.target?e.postMessage(n.data):R("worker sent an unknown command "+o);Be.currentProxiedOperationCallerThread=void 0},e.onerror=function(e){R("pthread sent an error! "+e.filename+":"+e.lineno+": "+e.message)},_&&(e.on("message",(function(t){e.onmessage({data:t})})),e.on("error",(function(t){e.onerror(t)})),e.on("exit",(function(e){}))),e.postMessage({cmd:"load",urlOrBlob:p.mainScriptUrlOrBlob||i,wasmMemory:F,wasmModule:M})},allocateUnusedWorker:function(){var e=T("tfjs-backend-wasm-threaded-simd.worker.js");Be.unusedWorkers.push(new Worker(e))},getNewWorker:function(){return 0==Be.unusedWorkers.length&&(Be.allocateUnusedWorker(),Be.loadWasmModuleToWorker(Be.unusedWorkers[0])),Be.unusedWorkers.length>0?Be.unusedWorkers.pop():null},busySpinWait:function(e){for(var t=performance.now()+e;performance.now()>2]=e,e}function qe(e,t){if(v)return et(1,1,e,t)}function He(e,t){if(e==t)postMessage({cmd:"processQueuedMainThreadWork"});else if(v)postMessage({targetThread:e,cmd:"processThreadQueue"});else{var n=Be.pthreads[e],s=n&&n.worker;if(!s)return;s.postMessage({cmd:"processThreadQueue"})}return 1}function Ke(){ke()}function Xe(e,t,n){var s=st(t,n);return Ee[e].apply(null,s)}function Ye(e,t){}function Ze(e,n,s){if(e<=0||e>t().length||!0&e)return-28;if(g){if(Atomics.load(u(),e>>2)!=n)return-6;var o=performance.now(),r=o+s;for(Atomics.exchange(u(),dn>>2,e);;){if((o=performance.now())>r)return Atomics.exchange(u(),dn>>2,0),-73;if(0==Atomics.exchange(u(),dn>>2,0))break;if(Xt(),Atomics.load(u(),e>>2)!=n)return-6;Atomics.exchange(u(),dn>>2,e)}return 0}var i=Atomics.wait(u(),e>>2,n,s);if("timed-out"===i)return-73;if("not-equal"===i)return-6;if("ok"===i)return 0;throw"Atomics.wait returned an unexpected value "+i}function Qe(e,t,n){a().copyWithin(e,t,t+n)}function Je(){return _?n(/*! os */8).cpus().length:navigator.hardwareConcurrency}function et(e,t){for(var n=arguments.length-2,s=nn(),o=n,r=on(8*o),i=r>>3,a=0;a>=2;n=a()[e++];){var s=n<105;s&&1&t&&t++,nt.push(s?l()[t++>>1]:u()[t]),++t}return nt}function ot(e,t,n){tt.length=t;for(var s=n>>3,o=0;o>>16),te(F.buffer),1}catch(e){}}function at(e){var t=rt();if(e<=t)return!1;var n=2147483648;if(e>n)return!1;for(var s=1;s<=4;s*=2){var o=t*(1+.2/s);if(o=Math.min(o,e+100663296),it(Math.min(n,ee(Math.max(e,o),65536))))return!0}return!1}var ut={inEventHandler:0,removeAllEventListeners:function(){for(var e=ut.eventHandlers.length-1;e>=0;--e)ut._removeHandler(e);ut.eventHandlers=[],ut.deferredCalls=[]},registerRemoveEventListeners:function(){ut.removeEventListenersRegistered||(ae.push(ut.removeAllEventListeners),ut.removeEventListenersRegistered=!0)},deferredCalls:[],deferCall:function(e,t,n){function s(e,t){if(e.length!=t.length)return!1;for(var n in e)if(e[n]!=t[n])return!1;return!0}for(var o in ut.deferredCalls){var r=ut.deferredCalls[o];if(r.targetFunction==e&&s(r.argsList,n))return}ut.deferredCalls.push({targetFunction:e,precedence:t,argsList:n}),ut.deferredCalls.sort((function(e,t){return e.precedence>2]=n,u()[i+4>>2]=s,u()[i+8>>2]=o,en(0,e,637534208,t,s,i),sn(r)},getTargetThreadForEventCallback:function(e){switch(e){case 1:return 0;case 2:return Be.currentProxiedOperationCallerThread;default:return e}},getNodeNameForTarget:function(e){return e?e==window?"#window":e==screen?"#screen":e&&e.nodeName?e.nodeName:"":""},fullscreenEnabled:function(){return document.fullscreenEnabled||document.webkitFullscreenEnabled}};function dt(e){var t=Q(e)+1,n=Ut(t);return Z(e,n,t),n}function lt(e,t,n,s){var o=nn(),r=on(12),i=0;t&&(i=dt(t)),u()[r>>2]=i,u()[r+4>>2]=n,u()[r+8>>2]=s,en(0,e,657457152,0,i,r),sn(o)}function ct(e,t,n,s){lt(e,t=t?X(t):"",n,s)}function ft(e){return e>2?X(e):e}var pt=[0,"undefined"!=typeof document?document:0,"undefined"!=typeof window?window:0];function mt(e){return e=ft(e),pt[e]||("undefined"!=typeof document?document.querySelector(e):void 0)}function ht(e){return mt(e)}function bt(e,t,n){var s=ht(e);if(!s)return-4;if(s.canvasSharedPtr&&(u()[s.canvasSharedPtr>>2]=t,u()[s.canvasSharedPtr+4>>2]=n),!s.offscreenCanvas&&s.controlTransferredOffscreen)return s.canvasSharedPtr?(ct(u()[s.canvasSharedPtr+8>>2],e,t,n),1):-4;s.offscreenCanvas&&(s=s.offscreenCanvas);var o=!1;if(s.GLctxObject&&s.GLctxObject.GLctx){var r=s.GLctxObject.GLctx.getParameter(2978);o=0===r[0]&&0===r[1]&&r[2]===s.width&&r[3]===s.height}return s.width=t,s.height=n,o&&s.GLctxObject.GLctx.viewport(0,0,t,n),0}function jt(e,t,n){return v?et(2,1,e,t,n):bt(e,t,n)}function gt(e,t,n){return ht(e)?bt(e,t,n):jt(e,t,n)}function wt(e){}function _t(e,t){}function kt(e){var t=e.getExtension("ANGLE_instanced_arrays");if(t)return e.vertexAttribDivisor=function(e,n){t.vertexAttribDivisorANGLE(e,n)},e.drawArraysInstanced=function(e,n,s,o){t.drawArraysInstancedANGLE(e,n,s,o)},e.drawElementsInstanced=function(e,n,s,o,r){t.drawElementsInstancedANGLE(e,n,s,o,r)},1}function vt(e){var t=e.getExtension("OES_vertex_array_object");if(t)return e.createVertexArray=function(){return t.createVertexArrayOES()},e.deleteVertexArray=function(e){t.deleteVertexArrayOES(e)},e.bindVertexArray=function(e){t.bindVertexArrayOES(e)},e.isVertexArray=function(e){return t.isVertexArrayOES(e)},1}function xt(e){var t=e.getExtension("WEBGL_draw_buffers");if(t)return e.drawBuffers=function(e,n){t.drawBuffersWEBGL(e,n)},1}function yt(e){return!!(e.multiDrawWebgl=e.getExtension("WEBGL_multi_draw"))}var Ot={counter:1,buffers:[],programs:[],framebuffers:[],renderbuffers:[],textures:[],uniforms:[],shaders:[],vaos:[],contexts:{},offscreenCanvases:{},timerQueriesEXT:[],programInfos:{},stringCache:{},unpackAlignment:4,recordError:function(e){Ot.lastError||(Ot.lastError=e)},getNewId:function(e){for(var t=Ot.counter++,n=e.length;n>2]:-1;o+=X(u()[n+4*r>>2],i<0?void 0:i)}return o},createContext:function(e,t){var n=e.getContext("webgl",t);return n?Ot.registerContext(n,t):0},registerContext:function(e,t){var n=Ut(8);u()[n+4>>2]=Ht();var s={handle:n,attributes:t,version:t.majorVersion,GLctx:e};return e.canvas&&(e.canvas.GLctxObject=s),Ot.contexts[n]=s,("undefined"==typeof t.enableExtensionsByDefault||t.enableExtensionsByDefault)&&Ot.initExtensions(s),n},makeContextCurrent:function(e){return Ot.currentContext=Ot.contexts[e],p.ctx=Tt=Ot.currentContext&&Ot.currentContext.GLctx,!(e&&!Tt)},getContext:function(e){return Ot.contexts[e]},deleteContext:function(e){Ot.currentContext===Ot.contexts[e]&&(Ot.currentContext=null),"object"==typeof ut&&ut.removeAllHandlersOnTarget(Ot.contexts[e].GLctx.canvas),Ot.contexts[e]&&Ot.contexts[e].GLctx.canvas&&(Ot.contexts[e].GLctx.canvas.GLctxObject=void 0),Wt(Ot.contexts[e].handle),Ot.contexts[e]=null},initExtensions:function(e){if(e||(e=Ot.currentContext),!e.initExtensionsDone){e.initExtensionsDone=!0;var t=e.GLctx;kt(t),vt(t),xt(t),t.disjointTimerQueryExt=t.getExtension("EXT_disjoint_timer_query"),yt(t),(t.getSupportedExtensions()||[]).forEach((function(e){e.indexOf("lose_context")<0&&e.indexOf("debug")<0&&t.getExtension(e)}))}},populateUniformTable:function(e){for(var t=Ot.programs[e],n=Ot.programInfos[e]={uniforms:{},maxUniformLength:0,maxAttributeLength:-1,maxUniformBlockNameLength:-1},s=n.uniforms,o=Tt.getProgramParameter(t,35718),r=0;r>2,s=u()[n+6],o={alpha:!!u()[n+0],depth:!!u()[n+1],stencil:!!u()[n+2],antialias:!!u()[n+3],premultipliedAlpha:!!u()[n+4],preserveDrawingBuffer:!!u()[n+5],powerPreference:It[s],failIfMajorPerformanceCaveat:!!u()[n+7],majorVersion:u()[n+8],minorVersion:u()[n+9],enableExtensionsByDefault:u()[n+10],explicitSwapControl:u()[n+11],proxyContextToMainThread:u()[n+12],renderViaOffscreenBackBuffer:u()[n+13]},r=ht(e);return r?o.explicitSwapControl?0:Ot.createContext(r,o):0}function St(e,t){return Ct(e,t)}var Tt,Nt={mappings:{},buffers:[null,[],[]],printChar:function(e,t){var n=Nt.buffers[e];0===t||10===t?((1===e?A:R)(K(n,0)),n.length=0):n.push(t)},varargs:void 0,get:function(){return Nt.varargs+=4,u()[Nt.varargs-4>>2]},getStr:function(e){return X(e)},get64:function(e,t){return e}};function Et(e){return v?et(3,1,e):0}function At(e,t,n,s,o){if(v)return et(4,1,e,t,n,s,o)}function Rt(e,t,n,s){if(v)return et(5,1,e,t,n,s);for(var o=0,r=0;r>2],d=u()[t+(8*r+4)>>2],l=0;l>2]=o,0}function Ft(e){var t=Be.threadExitHandlers.pop();e&&t()}function Mt(e,t){Be.threadExitHandlers.push((function(){ne.get(e)(t)}))}function $t(e){if(v)throw"Internal Error! spawnThread() can only ever be called from main application thread!";var t=Be.getNewWorker();if(void 0!==t.pthread)throw"Internal error!";if(!e.pthread_ptr)throw"Internal error, no pthread ptr!";Be.runningWorkers.push(t);for(var n=Ut(512),s=0;s<128;++s)u()[n+4*s>>2]=0;var o=e.stackBase+e.stackSize,r=Be.pthreads[e.pthread_ptr]={worker:t,stackBase:e.stackBase,stackSize:e.stackSize,allocatedOwnStack:e.allocatedOwnStack,threadInfoStruct:e.pthread_ptr},i=r.threadInfoStruct>>2;Atomics.store(d(),i+16,e.detached),Atomics.store(d(),i+25,n),Atomics.store(d(),i+10,r.threadInfoStruct),Atomics.store(d(),i+20,e.stackSize),Atomics.store(d(),i+19,o),Atomics.store(d(),i+26,e.stackSize),Atomics.store(d(),i+28,o),Atomics.store(d(),i+29,e.detached);var a=qt()+40;Atomics.store(d(),i+43,a),t.pthread=r;var l={cmd:"run",start_routine:e.startRoutine,arg:e.arg,threadInfoStruct:e.pthread_ptr,stackBase:e.stackBase,stackSize:e.stackSize};t.runPthread=function(){l.time=performance.now(),t.postMessage(l,e.transferList)},t.loaded&&(t.runPthread(),delete t.runPthread)}function Dt(e,t,n,s){if("undefined"==typeof SharedArrayBuffer)return R("Current environment does not support SharedArrayBuffer, pthreads are not available!"),6;if(!e)return R("pthread_create called with a null thread pointer!"),28;var o=[];if(v&&0===o.length)return Qt(687865856,e,t,n,s);var r=0,i=0,a=0;t&&-1!=t?(r=u()[t>>2],r+=81920,i=u()[t+8>>2],a=0!==u()[t+12>>2]):r=2097152;var l=0==i;l?i=an(16,r):W((i-=r)>0);for(var c=Ut(228),f=0;f<57;++f)d()[(c>>2)+f]=0;u()[e>>2]=c,u()[c+12>>2]=c;var p=c+152;u()[p>>2]=p;var m={stackBase:i,stackSize:r,allocatedOwnStack:l,detached:a,startRoutine:n,pthread_ptr:c,arg:s,transferList:o};return v?(m.cmd="spawnThread",postMessage(m,o)):$t(m),0}function Pt(e){if(v)return et(6,1,e);switch(e){case 30:return 16384;case 85:return 131072;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:case 80:case 81:case 79:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"==typeof navigator&&navigator.hardwareConcurrency||1}return Ve(28),-1}v||Be.initMainThreadBlock();var Bt,Lt=[null,qe,jt,Et,At,Rt,Pt],zt={e:Ue,r:We,x:He,b:Ke,y:Xe,j:Ye,c:Ze,d:Fe,f:Pe,p:Qe,z:Je,u:ot,q:at,v:gt,i:wt,t:_t,w:St,m:Et,n:At,g:Rt,o:Ae,a:F||p.wasmMemory,k:Ft,l:Mt,h:Dt,s:Pt},Gt=(Ne(),p.___wasm_call_ctors=function(){return(Gt=p.___wasm_call_ctors=p.asm.A).apply(null,arguments)}),Ut=(p._init=function(){return(p._init=p.asm.B).apply(null,arguments)},p._register_tensor=function(){return(p._register_tensor=p.asm.C).apply(null,arguments)},p._dispose_data=function(){return(p._dispose_data=p.asm.D).apply(null,arguments)},p._dispose=function(){return(p._dispose=p.asm.E).apply(null,arguments)},p._Abs=function(){return(p._Abs=p.asm.G).apply(null,arguments)},p._Add=function(){return(p._Add=p.asm.H).apply(null,arguments)},p._AddN=function(){return(p._AddN=p.asm.I).apply(null,arguments)},p._All=function(){return(p._All=p.asm.J).apply(null,arguments)},p._Any=function(){return(p._Any=p.asm.K).apply(null,arguments)},p._ArgMax=function(){return(p._ArgMax=p.asm.L).apply(null,arguments)},p._AvgPool=function(){return(p._AvgPool=p.asm.M).apply(null,arguments)},p._BatchMatMul=function(){return(p._BatchMatMul=p.asm.N).apply(null,arguments)},p._Ceil=function(){return(p._Ceil=p.asm.O).apply(null,arguments)},p._ClipByValue=function(){return(p._ClipByValue=p.asm.P).apply(null,arguments)},p._Conv2D=function(){return(p._Conv2D=p.asm.Q).apply(null,arguments)},p._Conv2DBackpropInput=function(){return(p._Conv2DBackpropInput=p.asm.R).apply(null,arguments)},p._Cos=function(){return(p._Cos=p.asm.S).apply(null,arguments)},p._Cosh=function(){return(p._Cosh=p.asm.T).apply(null,arguments)},p._CropAndResize=function(){return(p._CropAndResize=p.asm.U).apply(null,arguments)},p._Cumsum=function(){return(p._Cumsum=p.asm.V).apply(null,arguments)},p._DepthToSpace=function(){return(p._DepthToSpace=p.asm.W).apply(null,arguments)},p._DepthwiseConv2dNative=function(){return(p._DepthwiseConv2dNative=p.asm.X).apply(null,arguments)},p._Equal=function(){return(p._Equal=p.asm.Y).apply(null,arguments)},p._Exp=function(){return(p._Exp=p.asm.Z).apply(null,arguments)},p._FlipLeftRight=function(){return(p._FlipLeftRight=p.asm._).apply(null,arguments)},p._Floor=function(){return(p._Floor=p.asm.$).apply(null,arguments)},p._FloorDiv=function(){return(p._FloorDiv=p.asm.aa).apply(null,arguments)},p._FusedBatchNorm=function(){return(p._FusedBatchNorm=p.asm.ba).apply(null,arguments)},p._FusedConv2D=function(){return(p._FusedConv2D=p.asm.ca).apply(null,arguments)},p._FusedDepthwiseConv2D=function(){return(p._FusedDepthwiseConv2D=p.asm.da).apply(null,arguments)},p._Gather=function(){return(p._Gather=p.asm.ea).apply(null,arguments)},p._GatherNd=function(){return(p._GatherNd=p.asm.fa).apply(null,arguments)},p._Greater=function(){return(p._Greater=p.asm.ga).apply(null,arguments)},p._GreaterEqual=function(){return(p._GreaterEqual=p.asm.ha).apply(null,arguments)},p._LeakyRelu=function(){return(p._LeakyRelu=p.asm.ia).apply(null,arguments)},p._Less=function(){return(p._Less=p.asm.ja).apply(null,arguments)},p._LessEqual=function(){return(p._LessEqual=p.asm.ka).apply(null,arguments)},p._Log=function(){return(p._Log=p.asm.la).apply(null,arguments)},p._LogicalAnd=function(){return(p._LogicalAnd=p.asm.ma).apply(null,arguments)},p._Max=function(){return(p._Max=p.asm.na).apply(null,arguments)},p._MaxPool=function(){return(p._MaxPool=p.asm.oa).apply(null,arguments)},p._Maximum=function(){return(p._Maximum=p.asm.pa).apply(null,arguments)},p._Mean=function(){return(p._Mean=p.asm.qa).apply(null,arguments)},p._Min=function(){return(p._Min=p.asm.ra).apply(null,arguments)},p._Minimum=function(){return(p._Minimum=p.asm.sa).apply(null,arguments)},p._MirrorPad=function(){return(p._MirrorPad=p.asm.ta).apply(null,arguments)},p._Multiply=function(){return(p._Multiply=p.asm.ua).apply(null,arguments)},p._Neg=function(){return(p._Neg=p.asm.va).apply(null,arguments)},p._NonMaxSuppressionV3=function(){return(p._NonMaxSuppressionV3=p.asm.wa).apply(null,arguments)},p._NonMaxSuppressionV4=function(){return(p._NonMaxSuppressionV4=p.asm.xa).apply(null,arguments)},p._NonMaxSuppressionV5=function(){return(p._NonMaxSuppressionV5=p.asm.ya).apply(null,arguments)},p._NotEqual=function(){return(p._NotEqual=p.asm.za).apply(null,arguments)},p._OneHot=function(){return(p._OneHot=p.asm.Aa).apply(null,arguments)},p._PadV2=function(){return(p._PadV2=p.asm.Ba).apply(null,arguments)},p._Pow=function(){return(p._Pow=p.asm.Ca).apply(null,arguments)},p._Prelu=function(){return(p._Prelu=p.asm.Da).apply(null,arguments)},p._Prod=function(){return(p._Prod=p.asm.Ea).apply(null,arguments)},p._RealDiv=function(){return(p._RealDiv=p.asm.Fa).apply(null,arguments)},p._Relu=function(){return(p._Relu=p.asm.Ga).apply(null,arguments)},p._Relu6=function(){return(p._Relu6=p.asm.Ha).apply(null,arguments)},p._ResizeBilinear=function(){return(p._ResizeBilinear=p.asm.Ia).apply(null,arguments)},p._Reverse=function(){return(p._Reverse=p.asm.Ja).apply(null,arguments)},p._RotateWithOffset=function(){return(p._RotateWithOffset=p.asm.Ka).apply(null,arguments)},p._Round=function(){return(p._Round=p.asm.La).apply(null,arguments)},p._Rsqrt=function(){return(p._Rsqrt=p.asm.Ma).apply(null,arguments)},p._ScatterNd=function(){return(p._ScatterNd=p.asm.Na).apply(null,arguments)},p._SelectV2=function(){return(p._SelectV2=p.asm.Oa).apply(null,arguments)},p._Sigmoid=function(){return(p._Sigmoid=p.asm.Pa).apply(null,arguments)},p._Sin=function(){return(p._Sin=p.asm.Qa).apply(null,arguments)},p._Softmax=function(){return(p._Softmax=p.asm.Ra).apply(null,arguments)},p._Sqrt=function(){return(p._Sqrt=p.asm.Sa).apply(null,arguments)},p._Square=function(){return(p._Square=p.asm.Ta).apply(null,arguments)},p._SquaredDifference=function(){return(p._SquaredDifference=p.asm.Ua).apply(null,arguments)},p._Step=function(){return(p._Step=p.asm.Va).apply(null,arguments)},p._StridedSlice=function(){return(p._StridedSlice=p.asm.Wa).apply(null,arguments)},p._Sub=function(){return(p._Sub=p.asm.Xa).apply(null,arguments)},p._Sum=function(){return(p._Sum=p.asm.Ya).apply(null,arguments)},p._Tan=function(){return(p._Tan=p.asm.Za).apply(null,arguments)},p._Tanh=function(){return(p._Tanh=p.asm._a).apply(null,arguments)},p._Tile=function(){return(p._Tile=p.asm.$a).apply(null,arguments)},p._TopK=function(){return(p._TopK=p.asm.ab).apply(null,arguments)},p._Transform=function(){return(p._Transform=p.asm.bb).apply(null,arguments)},p._Transpose=function(){return(p._Transpose=p.asm.cb).apply(null,arguments)},p.__FusedMatMul=function(){return(p.__FusedMatMul=p.asm.db).apply(null,arguments)},p._malloc=function(){return(Ut=p._malloc=p.asm.eb).apply(null,arguments)}),Wt=p._free=function(){return(Wt=p._free=p.asm.fb).apply(null,arguments)},Vt=p.___errno_location=function(){return(Vt=p.___errno_location=p.asm.gb).apply(null,arguments)},qt=p._emscripten_get_global_libc=function(){return(qt=p._emscripten_get_global_libc=p.asm.hb).apply(null,arguments)},Ht=p._pthread_self=function(){return(Ht=p._pthread_self=p.asm.ib).apply(null,arguments)},Kt=p.___pthread_tsd_run_dtors=function(){return(Kt=p.___pthread_tsd_run_dtors=p.asm.jb).apply(null,arguments)},Xt=p._emscripten_main_thread_process_queued_calls=function(){return(Xt=p._emscripten_main_thread_process_queued_calls=p.asm.kb).apply(null,arguments)},Yt=(p._emscripten_current_thread_process_queued_calls=function(){return(p._emscripten_current_thread_process_queued_calls=p.asm.lb).apply(null,arguments)},p._emscripten_register_main_browser_thread_id=function(){return(Yt=p._emscripten_register_main_browser_thread_id=p.asm.mb).apply(null,arguments)}),Zt=p.__emscripten_do_dispatch_to_thread=function(){return(Zt=p.__emscripten_do_dispatch_to_thread=p.asm.nb).apply(null,arguments)},Qt=p._emscripten_sync_run_in_main_thread_4=function(){return(Qt=p._emscripten_sync_run_in_main_thread_4=p.asm.ob).apply(null,arguments)},Jt=p._emscripten_run_in_main_runtime_thread_js=function(){return(Jt=p._emscripten_run_in_main_runtime_thread_js=p.asm.pb).apply(null,arguments)},en=p.__emscripten_call_on_thread=function(){return(en=p.__emscripten_call_on_thread=p.asm.qb).apply(null,arguments)},tn=(p._emscripten_tls_init=function(){return(p._emscripten_tls_init=p.asm.rb).apply(null,arguments)},p.__emscripten_thread_init=function(){return(tn=p.__emscripten_thread_init=p.asm.sb).apply(null,arguments)}),nn=p.stackSave=function(){return(nn=p.stackSave=p.asm.tb).apply(null,arguments)},sn=p.stackRestore=function(){return(sn=p.stackRestore=p.asm.ub).apply(null,arguments)},on=p.stackAlloc=function(){return(on=p.stackAlloc=p.asm.vb).apply(null,arguments)},rn=p._emscripten_stack_set_limits=function(){return(rn=p._emscripten_stack_set_limits=p.asm.wb).apply(null,arguments)},an=p._memalign=function(){return(an=p._memalign=p.asm.xb).apply(null,arguments)},un=p.__emscripten_allow_main_runtime_queued_calls=9824,dn=p.__emscripten_main_thread_futex=11448;function ln(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}function cn(e){if(e=e||b,!(be>0)){if(v)return c(p),le(),void postMessage({cmd:"loaded"});de(),be>0||(p.setStatus?(p.setStatus("Running..."),setTimeout((function(){setTimeout((function(){p.setStatus("")}),1),t()}),1)):t())}function t(){Bt||(Bt=!0,p.calledRun=!0,U||(le(),ce(),c(p),p.onRuntimeInitialized&&p.onRuntimeInitialized(),pe()))}}function fn(e,t){if(!t||!$||0!==e){if(!t&&v)throw postMessage({cmd:"exitProcess",returnCode:e}),new ln(e);$||(Be.terminateAllThreads(),fe(),p.onExit&&p.onExit(e),U=!0),j(e,new ln(e))}}if(p.cwrap=H,p.PThread=Be,p.PThread=Be,p.wasmMemory=F,p.ExitStatus=ln,ge=function e(){Bt||cn(),Bt||(ge=e)},p.run=cn,p.preInit)for("function"==typeof p.preInit&&(p.preInit=[p.preInit]);p.preInit.length>0;)p.preInit.pop()();return v&&($=!1,Be.initWorker()),cn(),e.ready});e.exports=a}).call(this,"/index.js",n(/*! ./../../../process/browser.js */"./node_modules/process/browser.js"),"/",n(/*! ./../../../webpack/buildin/global.js */"./node_modules/webpack/buildin/global.js"))},"./node_modules/@tensorflow/tfjs-backend-wasm/wasm-out/tfjs-backend-wasm-threaded-simd.worker.js":
+/*!*******************************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/wasm-out/tfjs-backend-wasm-threaded-simd.worker.js ***!
+ \*******************************************************************************************************/
+/*! exports provided: wasmWorkerContents */function(e,t,n){"use strict";n.r(t),n.d(t,"wasmWorkerContents",(function(){return s}));const s='var Module={};function threadPrintErr(){var text=Array.prototype.slice.call(arguments).join(" ");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;this.alert=threadAlert;Module["instantiateWasm"]=function(info,receiveInstance){var instance=new WebAssembly.Instance(Module["wasmModule"],info);Module["wasmModule"]=null;receiveInstance(instance);return instance.exports};function moduleLoaded(){}this.onmessage=function(e){try{if(e.data.cmd==="load"){Module["wasmModule"]=e.data.wasmModule;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).then(function(instance){Module=instance;moduleLoaded()})}else if(e.data.cmd==="objectTransfer"){Module["PThread"].receiveObjectTransfer(e.data)}else if(e.data.cmd==="run"){Module["__performance_now_clock_drift"]=performance.now()-e.data.time;Module["__emscripten_thread_init"](e.data.threadInfoStruct,0,0);var max=e.data.stackBase;var top=e.data.stackBase+e.data.stackSize;Module["establishStackSpace"](top,max);Module["_emscripten_tls_init"]();Module["PThread"].receiveObjectTransfer(e.data);Module["PThread"].setThreadStatus(Module["_pthread_self"](),1);try{var result=Module["invokeEntryPoint"](e.data.start_routine,e.data.arg);if(!Module["getNoExitRuntime"]())Module["PThread"].threadExit(result)}catch(ex){if(ex==="Canceled!"){Module["PThread"].threadCancel()}else if(ex!="unwind"){if(ex instanceof Module["ExitStatus"]){if(Module["getNoExitRuntime"]()){}else{Module["PThread"].threadExit(ex.status)}}else{Module["PThread"].threadExit(-2);throw ex}}}}else if(e.data.cmd==="cancel"){if(Module["_pthread_self"]()){Module["PThread"].threadCancel()}}else if(e.data.target==="setimmediate"){}else if(e.data.cmd==="processThreadQueue"){if(Module["_pthread_self"]()){Module["_emscripten_current_thread_process_queued_calls"]()}}else{err("worker.js received unknown command "+e.data.cmd);err(e.data)}}catch(ex){err("worker.js onmessage() captured an uncaught exception: "+ex);if(ex&&ex.stack)err(ex.stack);throw ex}};if(typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string"){self={location:{href:__filename}};var onmessage=this.onmessage;var nodeWorkerThreads=require("worker_threads");global.Worker=nodeWorkerThreads.Worker;var parentPort=nodeWorkerThreads.parentPort;parentPort.on("message",function(data){onmessage({data:data})});var nodeFS=require("fs");var nodeRead=function(filename){return nodeFS.readFileSync(filename,"utf8")};function globalEval(x){global.require=require;global.Module=Module;eval.call(null,x)}importScripts=function(f){globalEval(nodeRead(f))};postMessage=function(msg){parentPort.postMessage(msg)};if(typeof performance==="undefined"){performance={now:function(){return Date.now()}}}}'},"./node_modules/@tensorflow/tfjs-backend-wasm/wasm-out/tfjs-backend-wasm.js":
+/*!**********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-backend-wasm/wasm-out/tfjs-backend-wasm.js ***!
+ \**********************************************************************************/
+/*! no static exports found */function(e,t,n){(function(t,s,o){var r,i=(r=(r="undefined"!=typeof document&&document.currentScript?document.currentScript.src:void 0)||t,function(e){var t,i,a="undefined"!=typeof(e=e||{})?e:{};a.ready=new Promise((function(e,n){t=e,i=n}));var u,d={};for(u in a)a.hasOwnProperty(u)&&(d[u]=a[u]);var l=[],c=!1,f=!1,p=!1,m=!1;c="object"==typeof window,f="function"==typeof importScripts,p="object"==typeof s&&"object"==typeof s.versions&&"string"==typeof s.versions.node,m=!c&&!p&&!f;var h,b,j,g,w,_="";function k(e){return a.locateFile?a.locateFile(e,_):_+e}p?(_=f?n(/*! path */4).dirname(_)+"/":o+"/",h=function(e,t){return g||(g=n(/*! fs */5)),w||(w=n(/*! path */4)),e=w.normalize(e),g.readFileSync(e,t?null:"utf8")},j=function(e){var t=h(e,!0);return t.buffer||(t=new Uint8Array(t)),C(t.buffer),t},s.argv.length>1&&s.argv[1].replace(/\\/g,"/"),l=s.argv.slice(2),s.on("uncaughtException",(function(e){if(!(e instanceof Me))throw e})),s.on("unhandledRejection",re),a.inspect=function(){return"[Emscripten Module object]"}):m?("undefined"!=typeof read&&(h=function(e){return read(e)}),j=function(e){var t;return"function"==typeof readbuffer?new Uint8Array(readbuffer(e)):(C("object"==typeof(t=read(e,"binary"))),t)},"undefined"!=typeof scriptArgs?l=scriptArgs:"undefined"!=typeof arguments&&(l=arguments),"undefined"!=typeof print&&("undefined"==typeof console&&(console={}),console.log=print,console.warn=console.error="undefined"!=typeof printErr?printErr:print)):(c||f)&&(f?_=self.location.href:"undefined"!=typeof document&&document.currentScript&&(_=document.currentScript.src),r&&(_=r),_=0!==_.indexOf("blob:")?_.substr(0,_.lastIndexOf("/")+1):"",h=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.send(null),t.responseText},f&&(j=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}),b=function(e,t,n){var s=new XMLHttpRequest;s.open("GET",e,!0),s.responseType="arraybuffer",s.onload=function(){200==s.status||0==s.status&&s.response?t(s.response):n()},s.onerror=n,s.send(null)});var v,x,y=a.print||console.log.bind(console),O=a.printErr||console.warn.bind(console);for(u in d)d.hasOwnProperty(u)&&(a[u]=d[u]);d=null,a.arguments&&(l=a.arguments),a.thisProgram&&a.thisProgram,a.quit&&a.quit,a.wasmBinary&&(v=a.wasmBinary),a.noExitRuntime,"object"!=typeof WebAssembly&&re("no native wasm support detected");var I=!1;function C(e,t){e||re("Assertion failed: "+t)}function S(e){var t=a["_"+e];return C(t,"Cannot call unknown function "+e+", make sure it is exported"),t}function T(e,t,n,s,o){var r={string:function(e){var t=0;if(null!=e&&0!==e){var n=1+(e.length<<2);B(e,t=Fe(n),n)}return t},array:function(e){var t=Fe(e.length);return L(e,t),t}},i=S(e),a=[],u=0;if(s)for(var d=0;d=s);)++o;if(o-t>16&&e.subarray&&M)return M.decode(e.subarray(t,o));for(var r="";t>10,56320|1023&d)}}else r+=String.fromCharCode((31&i)<<6|a)}else r+=String.fromCharCode(i)}return r}function D(e,t){return e?$(R,e,t):""}function P(e,t,n,s){if(!(s>0))return 0;for(var o=n,r=n+s-1,i=0;i=55296&&a<=57343&&(a=65536+((1023&a)<<10)|1023&e.charCodeAt(++i)),a<=127){if(n>=r)break;t[n++]=a}else if(a<=2047){if(n+1>=r)break;t[n++]=192|a>>6,t[n++]=128|63&a}else if(a<=65535){if(n+2>=r)break;t[n++]=224|a>>12,t[n++]=128|a>>6&63,t[n++]=128|63&a}else{if(n+3>=r)break;t[n++]=240|a>>18,t[n++]=128|a>>12&63,t[n++]=128|a>>6&63,t[n++]=128|63&a}}return t[n]=0,n-o}function B(e,t,n){return P(e,R,t,n)}function L(e,t){A.set(e,t)}function z(e,t){return e%t>0&&(e+=t-e%t),e}function G(e){E=e,a.HEAP8=A=new Int8Array(e),a.HEAP16=new Int16Array(e),a.HEAP32=F=new Int32Array(e),a.HEAPU8=R=new Uint8Array(e),a.HEAPU16=new Uint16Array(e),a.HEAPU32=new Uint32Array(e),a.HEAPF32=new Float32Array(e),a.HEAPF64=new Float64Array(e)}a.INITIAL_MEMORY;var U,W=[],V=[],q=[],H=[];function K(){if(a.preRun)for("function"==typeof a.preRun&&(a.preRun=[a.preRun]);a.preRun.length;)Q(a.preRun.shift());he(W)}function X(){he(V)}function Y(){he(q)}function Z(){if(a.postRun)for("function"==typeof a.postRun&&(a.postRun=[a.postRun]);a.postRun.length;)J(a.postRun.shift());he(H)}function Q(e){W.unshift(e)}function J(e){H.unshift(e)}V.push({func:function(){Ne()}});var ee=0,te=null,ne=null;function se(e){ee++,a.monitorRunDependencies&&a.monitorRunDependencies(ee)}function oe(e){if(ee--,a.monitorRunDependencies&&a.monitorRunDependencies(ee),0==ee&&(null!==te&&(clearInterval(te),te=null),ne)){var t=ne;ne=null,t()}}function re(e){a.onAbort&&a.onAbort(e),O(e+=""),I=!0,e="abort("+e+"). Build with -s ASSERTIONS=1 for more info.";var t=new WebAssembly.RuntimeError(e);throw i(t),t}function ie(e,t){return String.prototype.startsWith?e.startsWith(t):0===e.indexOf(t)}a.preloadedImages={},a.preloadedAudios={};var ae="data:application/octet-stream;base64,";function ue(e){return ie(e,ae)}var de="file://";function le(e){return ie(e,de)}var ce="tfjs-backend-wasm.wasm";function fe(e){try{if(e==ce&&v)return new Uint8Array(v);if(j)return j(e);throw"both async and sync fetching of the wasm failed"}catch(e){re(e)}}function pe(){if(!v&&(c||f)){if("function"==typeof fetch&&!le(ce))return fetch(ce,{credentials:"same-origin"}).then((function(e){if(!e.ok)throw"failed to load wasm binary file at '"+ce+"'";return e.arrayBuffer()})).catch((function(){return fe(ce)}));if(b)return new Promise((function(e,t){b(ce,(function(t){e(new Uint8Array(t))}),t)}))}return Promise.resolve().then((function(){return fe(ce)}))}function me(){var e={a:Te};function t(e,t){var n=e.exports;a.asm=n,G((x=a.asm.i).buffer),U=a.asm.o,oe()}function n(e){t(e.instance)}function s(t){return pe().then((function(t){return WebAssembly.instantiate(t,e)})).then(t,(function(e){O("failed to asynchronously prepare wasm: "+e),re(e)}))}if(se(),a.instantiateWasm)try{return a.instantiateWasm(e,t)}catch(e){return O("Module.instantiateWasm callback failed with error: "+e),!1}return(v||"function"!=typeof WebAssembly.instantiateStreaming||ue(ce)||le(ce)||"function"!=typeof fetch?s(n):fetch(ce,{credentials:"same-origin"}).then((function(t){return WebAssembly.instantiateStreaming(t,e).then(n,(function(e){return O("wasm streaming compile failed: "+e),O("falling back to ArrayBuffer instantiation"),s(n)}))}))).catch(i),{}}function he(e){for(;e.length>0;){var t=e.shift();if("function"!=typeof t){var n=t.func;"number"==typeof n?void 0===t.arg?U.get(n)():U.get(n)(t.arg):n(void 0===t.arg?null:t.arg)}else t(a)}}function be(){re()}function je(e,t,n){R.copyWithin(e,t,t+n)}function ge(){return R.length}function we(e){try{return x.grow(e-E.byteLength+65535>>>16),G(x.buffer),1}catch(e){}}function _e(e){var t=ge(),n=2147483648;if(e>n)return!1;for(var s=1;s<=4;s*=2){var o=t*(1+.2/s);if(o=Math.min(o,e+100663296),we(Math.min(n,z(Math.max(e,o),65536))))return!0}return!1}ue(ce)||(ce=k(ce));var ke={mappings:{},buffers:[null,[],[]],printChar:function(e,t){var n=ke.buffers[e];0===t||10===t?((1===e?y:O)($(n,0)),n.length=0):n.push(t)},varargs:void 0,get:function(){return ke.varargs+=4,F[ke.varargs-4>>2]},getStr:function(e){return D(e)},get64:function(e,t){return e}};function ve(e){return 0}function xe(e,t,n,s,o){}function ye(e,t,n,s){for(var o=0,r=0;r>2],a=F[t+(8*r+4)>>2],u=0;u>2]=o,0}function Oe(){return 6}function Ie(e){return F[Ee()>>2]=e,e}function Ce(e){switch(e){case 30:return 16384;case 85:return 131072;case 132:case 133:case 12:case 137:case 138:case 15:case 235:case 16:case 17:case 18:case 19:case 20:case 149:case 13:case 10:case 236:case 153:case 9:case 21:case 22:case 159:case 154:case 14:case 77:case 78:case 139:case 82:case 68:case 67:case 164:case 11:case 29:case 47:case 48:case 95:case 52:case 51:case 46:return 200809;case 27:case 246:case 127:case 128:case 23:case 24:case 160:case 161:case 181:case 182:case 242:case 183:case 184:case 243:case 244:case 245:case 165:case 178:case 179:case 49:case 50:case 168:case 169:case 175:case 170:case 171:case 172:case 97:case 76:case 32:case 173:case 35:case 80:case 81:case 79:return-1;case 176:case 177:case 7:case 155:case 8:case 157:case 125:case 126:case 92:case 93:case 129:case 130:case 131:case 94:case 91:return 1;case 74:case 60:case 69:case 70:case 4:return 1024;case 31:case 42:case 72:return 32;case 87:case 26:case 33:return 2147483647;case 34:case 1:return 47839;case 38:case 36:return 99;case 43:case 37:return 2048;case 0:return 2097152;case 3:return 65536;case 28:return 32768;case 44:return 32767;case 75:return 16384;case 39:return 1e3;case 89:return 700;case 71:return 256;case 40:return 255;case 2:return 100;case 180:return 64;case 25:return 20;case 5:return 16;case 6:return 6;case 73:return 4;case 84:return"object"==typeof navigator&&navigator.hardwareConcurrency||1}return Ie(28),-1}var Se,Te={a:be,d:je,e:_e,f:ve,c:xe,b:ye,g:Oe,h:Ce},Ne=(me(),a.___wasm_call_ctors=function(){return(Ne=a.___wasm_call_ctors=a.asm.j).apply(null,arguments)}),Ee=(a._init=function(){return(a._init=a.asm.k).apply(null,arguments)},a._register_tensor=function(){return(a._register_tensor=a.asm.l).apply(null,arguments)},a._dispose_data=function(){return(a._dispose_data=a.asm.m).apply(null,arguments)},a._dispose=function(){return(a._dispose=a.asm.n).apply(null,arguments)},a._Abs=function(){return(a._Abs=a.asm.p).apply(null,arguments)},a._Add=function(){return(a._Add=a.asm.q).apply(null,arguments)},a._AddN=function(){return(a._AddN=a.asm.r).apply(null,arguments)},a._All=function(){return(a._All=a.asm.s).apply(null,arguments)},a._Any=function(){return(a._Any=a.asm.t).apply(null,arguments)},a._ArgMax=function(){return(a._ArgMax=a.asm.u).apply(null,arguments)},a._AvgPool=function(){return(a._AvgPool=a.asm.v).apply(null,arguments)},a._BatchMatMul=function(){return(a._BatchMatMul=a.asm.w).apply(null,arguments)},a._Ceil=function(){return(a._Ceil=a.asm.x).apply(null,arguments)},a._ClipByValue=function(){return(a._ClipByValue=a.asm.y).apply(null,arguments)},a._Conv2D=function(){return(a._Conv2D=a.asm.z).apply(null,arguments)},a._Conv2DBackpropInput=function(){return(a._Conv2DBackpropInput=a.asm.A).apply(null,arguments)},a._Cos=function(){return(a._Cos=a.asm.B).apply(null,arguments)},a._Cosh=function(){return(a._Cosh=a.asm.C).apply(null,arguments)},a._CropAndResize=function(){return(a._CropAndResize=a.asm.D).apply(null,arguments)},a._Cumsum=function(){return(a._Cumsum=a.asm.E).apply(null,arguments)},a._DepthToSpace=function(){return(a._DepthToSpace=a.asm.F).apply(null,arguments)},a._DepthwiseConv2dNative=function(){return(a._DepthwiseConv2dNative=a.asm.G).apply(null,arguments)},a._Equal=function(){return(a._Equal=a.asm.H).apply(null,arguments)},a._Exp=function(){return(a._Exp=a.asm.I).apply(null,arguments)},a._FlipLeftRight=function(){return(a._FlipLeftRight=a.asm.J).apply(null,arguments)},a._Floor=function(){return(a._Floor=a.asm.K).apply(null,arguments)},a._FloorDiv=function(){return(a._FloorDiv=a.asm.L).apply(null,arguments)},a._FusedBatchNorm=function(){return(a._FusedBatchNorm=a.asm.M).apply(null,arguments)},a._FusedConv2D=function(){return(a._FusedConv2D=a.asm.N).apply(null,arguments)},a._FusedDepthwiseConv2D=function(){return(a._FusedDepthwiseConv2D=a.asm.O).apply(null,arguments)},a._Gather=function(){return(a._Gather=a.asm.P).apply(null,arguments)},a._GatherNd=function(){return(a._GatherNd=a.asm.Q).apply(null,arguments)},a._Greater=function(){return(a._Greater=a.asm.R).apply(null,arguments)},a._GreaterEqual=function(){return(a._GreaterEqual=a.asm.S).apply(null,arguments)},a._LeakyRelu=function(){return(a._LeakyRelu=a.asm.T).apply(null,arguments)},a._Less=function(){return(a._Less=a.asm.U).apply(null,arguments)},a._LessEqual=function(){return(a._LessEqual=a.asm.V).apply(null,arguments)},a._Log=function(){return(a._Log=a.asm.W).apply(null,arguments)},a._LogicalAnd=function(){return(a._LogicalAnd=a.asm.X).apply(null,arguments)},a._Max=function(){return(a._Max=a.asm.Y).apply(null,arguments)},a._MaxPool=function(){return(a._MaxPool=a.asm.Z).apply(null,arguments)},a._Maximum=function(){return(a._Maximum=a.asm._).apply(null,arguments)},a._Mean=function(){return(a._Mean=a.asm.$).apply(null,arguments)},a._Min=function(){return(a._Min=a.asm.aa).apply(null,arguments)},a._Minimum=function(){return(a._Minimum=a.asm.ba).apply(null,arguments)},a._MirrorPad=function(){return(a._MirrorPad=a.asm.ca).apply(null,arguments)},a._Multiply=function(){return(a._Multiply=a.asm.da).apply(null,arguments)},a._Neg=function(){return(a._Neg=a.asm.ea).apply(null,arguments)},a._NonMaxSuppressionV3=function(){return(a._NonMaxSuppressionV3=a.asm.fa).apply(null,arguments)},a._NonMaxSuppressionV4=function(){return(a._NonMaxSuppressionV4=a.asm.ga).apply(null,arguments)},a._NonMaxSuppressionV5=function(){return(a._NonMaxSuppressionV5=a.asm.ha).apply(null,arguments)},a._NotEqual=function(){return(a._NotEqual=a.asm.ia).apply(null,arguments)},a._OneHot=function(){return(a._OneHot=a.asm.ja).apply(null,arguments)},a._PadV2=function(){return(a._PadV2=a.asm.ka).apply(null,arguments)},a._Pow=function(){return(a._Pow=a.asm.la).apply(null,arguments)},a._Prelu=function(){return(a._Prelu=a.asm.ma).apply(null,arguments)},a._Prod=function(){return(a._Prod=a.asm.na).apply(null,arguments)},a._RealDiv=function(){return(a._RealDiv=a.asm.oa).apply(null,arguments)},a._Relu=function(){return(a._Relu=a.asm.pa).apply(null,arguments)},a._Relu6=function(){return(a._Relu6=a.asm.qa).apply(null,arguments)},a._ResizeBilinear=function(){return(a._ResizeBilinear=a.asm.ra).apply(null,arguments)},a._Reverse=function(){return(a._Reverse=a.asm.sa).apply(null,arguments)},a._RotateWithOffset=function(){return(a._RotateWithOffset=a.asm.ta).apply(null,arguments)},a._Round=function(){return(a._Round=a.asm.ua).apply(null,arguments)},a._Rsqrt=function(){return(a._Rsqrt=a.asm.va).apply(null,arguments)},a._ScatterNd=function(){return(a._ScatterNd=a.asm.wa).apply(null,arguments)},a._SelectV2=function(){return(a._SelectV2=a.asm.xa).apply(null,arguments)},a._Sigmoid=function(){return(a._Sigmoid=a.asm.ya).apply(null,arguments)},a._Sin=function(){return(a._Sin=a.asm.za).apply(null,arguments)},a._Softmax=function(){return(a._Softmax=a.asm.Aa).apply(null,arguments)},a._Sqrt=function(){return(a._Sqrt=a.asm.Ba).apply(null,arguments)},a._Square=function(){return(a._Square=a.asm.Ca).apply(null,arguments)},a._SquaredDifference=function(){return(a._SquaredDifference=a.asm.Da).apply(null,arguments)},a._Step=function(){return(a._Step=a.asm.Ea).apply(null,arguments)},a._StridedSlice=function(){return(a._StridedSlice=a.asm.Fa).apply(null,arguments)},a._Sub=function(){return(a._Sub=a.asm.Ga).apply(null,arguments)},a._Sum=function(){return(a._Sum=a.asm.Ha).apply(null,arguments)},a._Tan=function(){return(a._Tan=a.asm.Ia).apply(null,arguments)},a._Tanh=function(){return(a._Tanh=a.asm.Ja).apply(null,arguments)},a._Tile=function(){return(a._Tile=a.asm.Ka).apply(null,arguments)},a._TopK=function(){return(a._TopK=a.asm.La).apply(null,arguments)},a._Transform=function(){return(a._Transform=a.asm.Ma).apply(null,arguments)},a._Transpose=function(){return(a._Transpose=a.asm.Na).apply(null,arguments)},a.__FusedMatMul=function(){return(a.__FusedMatMul=a.asm.Oa).apply(null,arguments)},a._malloc=function(){return(a._malloc=a.asm.Pa).apply(null,arguments)},a._free=function(){return(a._free=a.asm.Qa).apply(null,arguments)},a.___errno_location=function(){return(Ee=a.___errno_location=a.asm.Ra).apply(null,arguments)}),Ae=a.stackSave=function(){return(Ae=a.stackSave=a.asm.Sa).apply(null,arguments)},Re=a.stackRestore=function(){return(Re=a.stackRestore=a.asm.Ta).apply(null,arguments)},Fe=a.stackAlloc=function(){return(Fe=a.stackAlloc=a.asm.Ua).apply(null,arguments)};function Me(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}function $e(e){function n(){Se||(Se=!0,a.calledRun=!0,I||(X(),Y(),t(a),a.onRuntimeInitialized&&a.onRuntimeInitialized(),Z()))}e=e||l,ee>0||(K(),ee>0||(a.setStatus?(a.setStatus("Running..."),setTimeout((function(){setTimeout((function(){a.setStatus("")}),1),n()}),1)):n()))}if(a.cwrap=N,ne=function e(){Se||$e(),Se||(ne=e)},a.run=$e,a.preInit)for("function"==typeof a.preInit&&(a.preInit=[a.preInit]);a.preInit.length>0;)a.preInit.pop()();return $e(),e.ready});e.exports=i}).call(this,"/index.js",n(/*! ./../../../process/browser.js */"./node_modules/process/browser.js"),"/")},"./node_modules/@tensorflow/tfjs-core/dist/backends/backend.js":
+/*!*********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/backends/backend.js ***!
+ \*********************************************************************/
+/*! exports provided: EPSILON_FLOAT32, EPSILON_FLOAT16, DataStorage, KernelBackend */function(e,t,n){"use strict";n.r(t),n.d(t,"EPSILON_FLOAT32",(function(){return s})),n.d(t,"EPSILON_FLOAT16",(function(){return o})),n.d(t,"DataStorage",(function(){return r})),n.d(t,"KernelBackend",(function(){return i}));
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const s=1e-7,o=1e-4;class r{constructor(e,t){this.backend=e,this.dataMover=t,this.data=new WeakMap,this.dataIdsCount=0}get(e){return this.data.has(e)||this.dataMover.moveData(this.backend,e),this.data.get(e)}set(e,t){this.dataIdsCount++,this.data.set(e,t)}has(e){return this.data.has(e)}delete(e){return this.dataIdsCount--,this.data.delete(e)}numDataIds(){return this.dataIdsCount}}class i{refCount(e){return a("refCount")}incRef(e){return a("incRef")}timerAvailable(){return!0}time(e){return a("time")}read(e){return a("read")}readSync(e){return a("readSync")}numDataIds(){return a("numDataIds")}disposeData(e,t){return a("disposeData")}write(e,t,n){return a("write")}move(e,t,n,s,o){return a("move")}memory(){return a("memory")}floatPrecision(){return a("floatPrecision")}epsilon(){return 32===this.floatPrecision()?s:o}dispose(){return a("dispose")}}function a(e){throw new Error(`'${e}' not yet implemented or not found in the registry. This kernel may not be supported by the tfjs backend you have chosen`)}},"./node_modules/@tensorflow/tfjs-core/dist/backends/backend_util.js":
+/*!**************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/backends/backend_util.js ***!
+ \**************************************************************************/
+/*! exports provided: axesAreInnerMostDims, combineLocations, computeOutAndReduceShapes, expandShapeToKeepDim, assertAxesAreInnerMostDims, getAxesPermutation, getUndoAxesPermutation, getInnerMostAxes, getBroadcastDims, getReductionAxes, assertAndGetBroadcastShape, assertParamsConsistent, computeOutShape, computeDilation2DInfo, computePool2DInfo, computePool3DInfo, computeConv2DInfo, computeConv3DInfo, computeDefaultPad, tupleValuesAreOne, eitherStridesOrDilationsAreOne, convertConv2DDataFormat, getFusedDyActivation, getFusedBiasGradient, applyActivation, shouldFuse, PARALLELIZE_THRESHOLD, computeOptimalWindowSize, slice_util, upcastType, getImageCenter, getReshaped, getPermuted, getReshapedPermuted, getSliceBeginCoords, getSliceSize, prepareAndValidate, validateUpdateShape, validateInput, calculateShapes, SELU_SCALEALPHA, SELU_SCALE, ERF_P, ERF_A1, ERF_A2, ERF_A3, ERF_A4, ERF_A5, warn, log, mergeRealAndImagArrays, splitRealAndImagArrays, complexWithEvenIndex, complexWithOddIndex, getComplexWithIndex, assignToTypedArray, exponents, exponent, decodeEinsumEquation, getEinsumPermutation, checkEinsumDimSizes, getEinsumComputePath, isIdentityPermutation, prepareSplitSize, segment_util, fromUint8ToStringArray, fromStringArrayToUint8 */function(e,t,n){"use strict";n.r(t),n.d(t,"fromUint8ToStringArray",(function(){return x})),n.d(t,"fromStringArrayToUint8",(function(){return y}));var s=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),o=n(/*! ../ops/axis_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/axis_util.js");n.d(t,"axesAreInnerMostDims",(function(){return o.axesAreInnerMostDims})),n.d(t,"combineLocations",(function(){return o.combineLocations})),n.d(t,"computeOutAndReduceShapes",(function(){return o.computeOutAndReduceShapes})),n.d(t,"expandShapeToKeepDim",(function(){return o.expandShapeToKeepDim})),n.d(t,"assertAxesAreInnerMostDims",(function(){return o.assertAxesAreInnerMostDims})),n.d(t,"getAxesPermutation",(function(){return o.getAxesPermutation})),n.d(t,"getUndoAxesPermutation",(function(){return o.getUndoAxesPermutation})),n.d(t,"getInnerMostAxes",(function(){return o.getInnerMostAxes}));var r=n(/*! ../ops/broadcast_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/broadcast_util.js");n.d(t,"getBroadcastDims",(function(){return r.getBroadcastDims})),n.d(t,"getReductionAxes",(function(){return r.getReductionAxes})),n.d(t,"assertAndGetBroadcastShape",(function(){return r.assertAndGetBroadcastShape}));var i=n(/*! ../ops/concat_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/concat_util.js");n.d(t,"assertParamsConsistent",(function(){return i.assertParamsConsistent})),n.d(t,"computeOutShape",(function(){return i.computeOutShape}));var a=n(/*! ../ops/conv_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/conv_util.js");n.d(t,"computeDilation2DInfo",(function(){return a.computeDilation2DInfo})),n.d(t,"computePool2DInfo",(function(){return a.computePool2DInfo})),n.d(t,"computePool3DInfo",(function(){return a.computePool3DInfo})),n.d(t,"computeConv2DInfo",(function(){return a.computeConv2DInfo})),n.d(t,"computeConv3DInfo",(function(){return a.computeConv3DInfo})),n.d(t,"computeDefaultPad",(function(){return a.computeDefaultPad})),n.d(t,"tupleValuesAreOne",(function(){return a.tupleValuesAreOne})),n.d(t,"eitherStridesOrDilationsAreOne",(function(){return a.eitherStridesOrDilationsAreOne})),n.d(t,"convertConv2DDataFormat",(function(){return a.convertConv2DDataFormat}));var u=n(/*! ../ops/fused_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/fused_util.js");n.d(t,"getFusedDyActivation",(function(){return u.getFusedDyActivation})),n.d(t,"getFusedBiasGradient",(function(){return u.getFusedBiasGradient})),n.d(t,"applyActivation",(function(){return u.applyActivation})),n.d(t,"shouldFuse",(function(){return u.shouldFuse}));var d=n(/*! ../ops/reduce_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/reduce_util.js");n.d(t,"PARALLELIZE_THRESHOLD",(function(){return d.PARALLELIZE_THRESHOLD})),n.d(t,"computeOptimalWindowSize",(function(){return d.computeOptimalWindowSize}));var l=n(/*! ../ops/slice_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/slice_util.js");n.d(t,"slice_util",(function(){return l}));var c=n(/*! ../types */"./node_modules/@tensorflow/tfjs-core/dist/types.js");n.d(t,"upcastType",(function(){return c.upcastType}));var f=n(/*! ../ops/rotate_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/rotate_util.js");n.d(t,"getImageCenter",(function(){return f.getImageCenter}));var p=n(/*! ../ops/array_ops_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/array_ops_util.js");n.d(t,"getReshaped",(function(){return p.getReshaped})),n.d(t,"getPermuted",(function(){return p.getPermuted})),n.d(t,"getReshapedPermuted",(function(){return p.getReshapedPermuted})),n.d(t,"getSliceBeginCoords",(function(){return p.getSliceBeginCoords})),n.d(t,"getSliceSize",(function(){return p.getSliceSize}));var m=n(/*! ../ops/gather_nd_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/gather_nd_util.js");n.d(t,"prepareAndValidate",(function(){return m.prepareAndValidate}));var h=n(/*! ../ops/scatter_nd_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/scatter_nd_util.js");n.d(t,"validateUpdateShape",(function(){return h.validateUpdateShape})),n.d(t,"validateInput",(function(){return h.validateInput})),n.d(t,"calculateShapes",(function(){return h.calculateShapes}));var b=n(/*! ../ops/selu_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/selu_util.js");n.d(t,"SELU_SCALEALPHA",(function(){return b.SELU_SCALEALPHA})),n.d(t,"SELU_SCALE",(function(){return b.SELU_SCALE}));var j=n(/*! ../ops/erf_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/erf_util.js");n.d(t,"ERF_P",(function(){return j.ERF_P})),n.d(t,"ERF_A1",(function(){return j.ERF_A1})),n.d(t,"ERF_A2",(function(){return j.ERF_A2})),n.d(t,"ERF_A3",(function(){return j.ERF_A3})),n.d(t,"ERF_A4",(function(){return j.ERF_A4})),n.d(t,"ERF_A5",(function(){return j.ERF_A5}));var g=n(/*! ../log */"./node_modules/@tensorflow/tfjs-core/dist/log.js");n.d(t,"warn",(function(){return g.warn})),n.d(t,"log",(function(){return g.log}));var w=n(/*! ../backends/complex_util */"./node_modules/@tensorflow/tfjs-core/dist/backends/complex_util.js");n.d(t,"mergeRealAndImagArrays",(function(){return w.mergeRealAndImagArrays})),n.d(t,"splitRealAndImagArrays",(function(){return w.splitRealAndImagArrays})),n.d(t,"complexWithEvenIndex",(function(){return w.complexWithEvenIndex})),n.d(t,"complexWithOddIndex",(function(){return w.complexWithOddIndex})),n.d(t,"getComplexWithIndex",(function(){return w.getComplexWithIndex})),n.d(t,"assignToTypedArray",(function(){return w.assignToTypedArray})),n.d(t,"exponents",(function(){return w.exponents})),n.d(t,"exponent",(function(){return w.exponent}));var _=n(/*! ../backends/einsum_util */"./node_modules/@tensorflow/tfjs-core/dist/backends/einsum_util.js");n.d(t,"decodeEinsumEquation",(function(){return _.decodeEinsumEquation})),n.d(t,"getEinsumPermutation",(function(){return _.getEinsumPermutation})),n.d(t,"checkEinsumDimSizes",(function(){return _.checkEinsumDimSizes})),n.d(t,"getEinsumComputePath",(function(){return _.getEinsumComputePath})),n.d(t,"isIdentityPermutation",(function(){return _.isIdentityPermutation}));var k=n(/*! ../ops/split_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/split_util.js");n.d(t,"prepareSplitSize",(function(){return k.prepareSplitSize}));var v=n(/*! ../ops/segment_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/segment_util.js");
+/**
+ * @license
+ * Copyright 2018 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 x(e){try{return e.map((e=>Object(s.decodeString)(e)))}catch(e){throw new Error(`Failed to decode encoded string bytes into utf-8, error: ${e}`)}}function y(e){return e.map((e=>Object(s.encodeString)(e)))}n.d(t,"segment_util",(function(){return v}))},"./node_modules/@tensorflow/tfjs-core/dist/backends/complex_util.js":
+/*!**************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/backends/complex_util.js ***!
+ \**************************************************************************/
+/*! exports provided: mergeRealAndImagArrays, splitRealAndImagArrays, complexWithEvenIndex, complexWithOddIndex, getComplexWithIndex, assignToTypedArray, exponents, exponent */function(e,t,n){"use strict";
+/**
+ * @license
+ * Copyright 2018 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 s(e,t){if(e.length!==t.length)throw new Error(`Cannot merge real and imag arrays of different lengths. real:${e.length}, imag: ${t.length}.`);const n=new Float32Array(2*e.length);for(let s=0;s/g;function i(e,t){const n=((e=e.replace(/\s/g,"")).length-e.replace(r,"").length)/o.length;if(n<1)throw new Error("Equations without an arrow are not supported.");if(n>1)throw new Error('Equation must contain exactly one arrow ("->").');const[i,a]=e.split(o);Object(s.assert)(-1===i.indexOf("..."),(()=>'The ellipsis notation ("...") is not supported yet.'));const u=i.split(","),d=u.length;if(t!==d)throw new Error(`Expected ${d} input tensors, received ${t}`);if(d>2)throw new Error("Support for more than 2 input tensors is not implemented yet.");const l=[];for(let e=0;e-1!==e.indexOf(t))))throw new Error(`Output subscripts contain the label ${t} not present in the input subscripts.`);-1===l.indexOf(t)&&l.push(t)}for(let e=0;e-1!==e)),{permutationIndices:n,expandDims:s}}function u(e,t,n){const o=new Array(e);for(let e=0;e`Expected dimension ${o[t[e][n]]} at axis ${n} of input shaped ${JSON.stringify(r)}, but got dimension ${r[n]}`))}}function d(e,t){const n=e,s=[];let o=0;0===e.length&&n.push(-1),o=e.length+1;for(let e=0;ee===t))}function c(e,t){const n=[];for(let s=0;sr&&p.push({score:t[e],boxIndex:e,suppressBeginIndex:0});p.sort(l);const m=i>0?-.5/i:0,h=[],b=[];for(;h.length0;){const t=p.pop(),{score:n,boxIndex:i,suppressBeginIndex:a}=t;if(n=a;--n){const s=u(e,i,h[n]);if(s>=o){c=!0;break}if(t.score=t.score*d(o,m,s),t.score<=r)break}t.suppressBeginIndex=h.length,c||(t.score===n?(h.push(i),b.push(t.score)):t.score>r&&Object(s.binaryInsert)(p,t,l))}const j=h.length,g=n-j;c&&g>0&&(h.push(...new Array(g).fill(0)),b.push(...new Array(g).fill(0)));const w={selectedIndices:h};return a&&(w.selectedScores=b),f&&(w.validOutputs=j),w}function u(e,t,n){const s=e.subarray(4*t,4*t+4),o=e.subarray(4*n,4*n+4),r=Math.min(s[0],s[2]),i=Math.min(s[1],s[3]),a=Math.max(s[0],s[2]),u=Math.max(s[1],s[3]),d=Math.min(o[0],o[2]),l=Math.min(o[1],o[3]),c=Math.max(o[0],o[2]),f=Math.max(o[1],o[3]),p=(a-r)*(u-i),m=(c-d)*(f-l);if(p<=0||m<=0)return 0;const h=Math.max(r,d),b=Math.max(i,l),j=Math.min(a,c),g=Math.min(u,f),w=Math.max(j-h,0)*Math.max(g-b,0);return w/(p+m-w)}function d(e,t,n){const s=Math.exp(t*n*n);return n<=e?s:0}function l(e,t){return e.score-t.score||e.score===t.score&&t.boxIndex-e.boxIndex}},"./node_modules/@tensorflow/tfjs-core/dist/backends/non_max_suppression_util.js":
+/*!**************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/backends/non_max_suppression_util.js ***!
+ \**************************************************************************************/
+/*! exports provided: binaryInsert, binarySearch */function(e,t,n){"use strict";
+/**
+ * @license
+ * Copyright 2019 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 s(e,t,n){const s=o(e,t,n),r=s<0?-(s+1):s;e.splice(r,0,t)}function o(e,t,n){return function(e,t,n){let s=0,o=e.length,r=0,i=!1;for(;s>>1);const a=n(t,e[r]);a>0?s=r+1:(o=r,i=!a)}return i?s:-s-1}(e,t,n||r)}function r(e,t){return e>t?1:ee();function o(){return new Promise((e=>s((()=>e()))))}}.call(this,n(/*! ./../../../timers-browserify/main.js */"./node_modules/timers-browserify/main.js").setImmediate)},"./node_modules/@tensorflow/tfjs-core/dist/device_util.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/device_util.js ***!
+ \****************************************************************/
+/*! exports provided: isMobile, isBrowser */function(e,t,n){"use strict";function s(e){if(e||"undefined"!=typeof navigator&&null!=navigator){if(e||(e=navigator),"ReactNative"===e.product)return!0;const t=e.userAgent||e.vendor||window.opera;return/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(t)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(t.substr(0,4))}return!1}function o(){return"undefined"!=typeof window&&null!=window.document||"undefined"!=typeof WorkerGlobalScope}n.r(t),n.d(t,"isMobile",(function(){return s})),n.d(t,"isBrowser",(function(){return o}))},"./node_modules/@tensorflow/tfjs-core/dist/engine.js":
+/*!***********************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/engine.js ***!
+ \***********************************************************/
+/*! exports provided: Engine, getOrMakeEngine, ENGINE, add */function(e,t,n){"use strict";n.r(t),n.d(t,"Engine",(function(){return h})),n.d(t,"getOrMakeEngine",(function(){return b})),n.d(t,"ENGINE",(function(){return j})),n.d(t,"add",(function(){return g}));var s=n(/*! ./backends/backend */"./node_modules/@tensorflow/tfjs-core/dist/backends/backend.js"),o=n(/*! ./environment */"./node_modules/@tensorflow/tfjs-core/dist/environment.js"),r=n(/*! ./global_util */"./node_modules/@tensorflow/tfjs-core/dist/global_util.js"),i=n(/*! ./kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),a=n(/*! ./kernel_registry */"./node_modules/@tensorflow/tfjs-core/dist/kernel_registry.js"),u=n(/*! ./profiler */"./node_modules/@tensorflow/tfjs-core/dist/profiler.js"),d=n(/*! ./tape */"./node_modules/@tensorflow/tfjs-core/dist/tape.js"),l=n(/*! ./tensor */"./node_modules/@tensorflow/tfjs-core/dist/tensor.js"),c=n(/*! ./tensor_util */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util.js"),f=n(/*! ./util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");
+/**
+ * @license
+ * Copyright 2018 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 p(e){return null!=e.kernelName}class m{constructor(){this.registeredVariables={},this.nextTapeNodeId=0,this.numBytes=0,this.numTensors=0,this.numStringTensors=0,this.numDataBuffers=0,this.gradientDepth=0,this.kernelDepth=0,this.scopeStack=[],this.numDataMovesStack=[],this.nextScopeId=0,this.tensorInfo=new WeakMap,this.profiling=!1,this.activeProfile={newBytes:0,newTensors:0,peakBytes:0,kernels:[],result:null,get kernelNames(){return Array.from(new Set(this.kernels.map((e=>e.name))))}}}dispose(){for(const e in this.registeredVariables)this.registeredVariables[e].dispose()}}class h{constructor(e){this.ENV=e,this.registry={},this.registryFactory={},this.pendingBackendInitId=0,this.state=new m}async ready(){if(null!=this.pendingBackendInit)return this.pendingBackendInit.then((()=>{}));if(null!=this.backendInstance)return;const e=this.getSortedBackends();for(let t=0;t{null!=e.setupFunc&&e.setupFunc(this.backendInstance)}))}disposeRegisteredKernels(e){Object(a.getKernelsForBackend)(e).forEach((t=>{null!=t.disposeFunc&&t.disposeFunc(this.registry[e])}))}initializeBackend(e){const t=this.registryFactory[e];if(null==t)throw new Error(`Cannot initialize backend ${e}, no registration found.`);try{const n=t.factory();if(!n||n instanceof s.KernelBackend||"function"!=typeof n.then)return this.registry[e]=n,{success:!0,asyncInit:!1};{const t=++this.pendingBackendInitId,s=n.then((n=>!(t(tthis.registryFactory[t].priority-this.registryFactory[e].priority))}initializeBackendsAndReturnBest(){const e=this.getSortedBackends();for(let t=0;tthis.startScope(s)),(()=>this.endScope(n)),(()=>(n=t(),n instanceof Promise&&console.error("Cannot return a Promise inside of tidy."),n)))}scopedRun(e,t,n){e();try{const e=n();return t(),e}catch(e){throw t(),e}}nextTensorId(){return h.nextTensorId++}nextVariableId(){return h.nextVariableId++}clone(e){const t=j.runKernel(i.Identity,{x:e}),n={x:e};return this.addTapeNode(this.state.activeScope.name,n,[t],(e=>({x:()=>{const t={x:e},n={dtype:"float32"};return j.runKernel(i.Cast,t,n)}})),[],{}),t}runKernel(e,t,n){null==this.backendName&&this.backend;if(!(null!=Object(a.getKernel)(e,this.backendName)))throw new Error(`Kernel '${e}' not registered for backend '${this.backendName}'`);return this.runKernelFunc({kernelName:e,inputs:t,attrs:n})}shouldCheckForMemLeaks(){return this.ENV.getBool("IS_TEST")}checkKernelForMemLeak(e,t,n){const s=this.backend.numDataIds();let o=0;n.forEach((e=>{o+="complex64"===e.dtype?3:1}));const r=this.state.numDataMovesStack[this.state.numDataMovesStack.length-1],i=s-t-o-r;if(i>0)throw new Error(`Backend '${this.backendName}' has an internal memory leak (${i} data ids) after running '${e}'`)}runKernelFunc(e){let t,n=[];const s=this.isTapeOn(),o=this.state.numBytes,r=this.state.numTensors;let i,u;this.shouldCheckForMemLeaks()&&this.state.numDataMovesStack.push(0),null==this.backendName&&this.backend;const d=p(e)?e.kernelName:null!=this.state.activeScope?this.state.activeScope.name:"";if(p(e)){const{kernelName:t,inputs:o,attrs:r}=e;null==this.backendName&&this.backend;const d=Object(a.getKernel)(t,this.backendName);f.assert(null!=d,(()=>`Cannot find registered kernel '${t}' for backend '${this.backendName}'`)),i=()=>{const e=this.backend.numDataIds();u=d.kernelFunc({inputs:o,attrs:r,backend:this.backend});const i=Array.isArray(u)?u:[u];this.shouldCheckForMemLeaks()&&this.checkKernelForMemLeak(t,e,i);const a=i.map((e=>{if(null!=e.rank)return e;const{dataId:t,shape:n,dtype:s}=e;return this.makeTensorFromDataId(t,n,s)}));if(s){const e=this.getTensorsForGradient(t,o,a);n=this.saveTensorsForBackwardMode(e)}return a}}else{const{forwardFunc:t}=e,o=e=>{s&&(n=e.map((e=>this.keep(this.clone(e)))))};i=()=>{const e=this.backend.numDataIds();u=this.tidy((()=>t(this.backend,o)));const n=Array.isArray(u)?u:[u];return this.shouldCheckForMemLeaks()&&this.checkKernelForMemLeak(d,e,n),n}}const{inputs:l,attrs:c}=e,m=p(e)?null:e.backwardsFunc;let h;return this.scopedRun((()=>this.state.kernelDepth++),(()=>this.state.kernelDepth--),(()=>{this.ENV.getBool("DEBUG")||this.state.profiling?(h=this.profiler.profileKernel(d,l,(()=>i())),this.ENV.getBool("DEBUG")&&this.profiler.logKernelProfile(h),t=h.outputs):t=i()})),s&&this.addTapeNode(d,l,t,m,n,c),this.state.profiling&&this.state.activeProfile.kernels.push({name:d,bytesAdded:this.state.numBytes-o,totalBytesSnapshot:this.state.numBytes,tensorsAdded:this.state.numTensors-r,totalTensorsSnapshot:this.state.numTensors,inputShapes:Object.keys(l).map((e=>null!=l[e]?l[e].shape:null)),outputShapes:t.map((e=>e.shape)),kernelTimeMs:h.timeMs,extraInfo:h.extraInfo}),Array.isArray(u)?t:t[0]}saveTensorsForBackwardMode(e){return e.map((e=>this.keep(this.clone(e))))}getTensorsForGradient(e,t,n){const s=Object(a.getGradient)(e);if(null!=s){const e=s.inputsToSave||[],o=s.outputsToSave||[];let r;s.saveAllInputs?(f.assert(Array.isArray(t),(()=>"saveAllInputs is true, expected inputs to be an array.")),r=Object.keys(t).map((e=>t[e]))):r=e.map((e=>t[e]));const i=n.filter(((e,t)=>o[t]));return r.concat(i)}return[]}makeTensor(e,t,n,s){if(null==e)throw new Error("Values passed to engine.makeTensor() are null");n=n||"float32",s=s||this.backend;let o=e;"string"===n&&f.isString(e[0])&&(o=e.map((e=>f.encodeString(e))));const r=s.write(o,t,n),i=new l.Tensor(t,n,r,this.nextTensorId());if(this.trackTensor(i,s),"string"===n){const e=this.state.tensorInfo.get(r),t=Object(f.bytesFromStringArray)(o);this.state.numBytes+=t-e.bytes,e.bytes=t}return i}makeTensorFromDataId(e,t,n,s){n=n||"float32";const o=new l.Tensor(t,n,e,this.nextTensorId());return this.trackTensor(o,s),o}makeVariable(e,t=!0,n,s){n=n||this.nextVariableId().toString(),null!=s&&s!==e.dtype&&(e=e.cast(s));const o=new l.Variable(e,t,n,this.nextTensorId());if(null!=this.state.registeredVariables[o.name])throw new Error(`Variable with name ${o.name} was already registered`);return this.state.registeredVariables[o.name]=o,this.incRef(o,this.backend),o}trackTensor(e,t){this.state.numTensors++,"string"===e.dtype&&this.state.numStringTensors++;let n=0;"complex64"!==e.dtype&&"string"!==e.dtype&&(n=e.size*f.bytesPerElement(e.dtype)),this.state.numBytes+=n,this.state.tensorInfo.has(e.dataId)||(this.state.numDataBuffers++,this.state.tensorInfo.set(e.dataId,{backend:t||this.backend,dtype:e.dtype,shape:e.shape,bytes:n})),e instanceof l.Variable||this.track(e)}incRef(e,t){this.trackTensor(e,t),this.backend.incRef(e.dataId)}removeDataId(e,t){this.state.tensorInfo.has(e)&&this.state.tensorInfo.get(e).backend===t&&(this.state.tensorInfo.delete(e),this.state.numDataBuffers--)}disposeTensor(e){if(!this.state.tensorInfo.has(e.dataId))return;const t=this.state.tensorInfo.get(e.dataId);if(this.state.numTensors--,"string"===e.dtype&&(this.state.numStringTensors--,this.state.numBytes-=t.bytes),"complex64"!==e.dtype&&"string"!==e.dtype){const t=e.size*f.bytesPerElement(e.dtype);this.state.numBytes-=t}t.backend.disposeData(e.dataId)&&this.removeDataId(e.dataId,t.backend)}disposeVariables(){for(const e in this.state.registeredVariables){const t=this.state.registeredVariables[e];this.disposeVariable(t)}}disposeVariable(e){this.disposeTensor(e),null!=this.state.registeredVariables[e.name]&&delete this.state.registeredVariables[e.name]}memory(){const e=this.backend.memory();return e.numTensors=this.state.numTensors,e.numDataBuffers=this.state.numDataBuffers,e.numBytes=this.state.numBytes,this.state.numStringTensors>0&&(e.unreliable=!0,null==e.reasons&&(e.reasons=[]),e.reasons.push("Memory usage by string tensors is approximate (2 bytes per character)")),e}async profile(e){this.state.profiling=!0;const t=this.state.numBytes,n=this.state.numTensors;this.state.activeProfile.kernels=[],this.state.activeProfile.result=await e(),this.state.profiling=!1,this.state.activeProfile.peakBytes=Math.max(...this.state.activeProfile.kernels.map((e=>e.totalBytesSnapshot))),this.state.activeProfile.newBytes=this.state.numBytes-t,this.state.activeProfile.newTensors=this.state.numTensors-n;for(const e of this.state.activeProfile.kernels)e.kernelTimeMs=await e.kernelTimeMs,e.extraInfo=await e.extraInfo;return this.state.activeProfile}isTapeOn(){return this.state.gradientDepth>0&&0===this.state.kernelDepth}addTapeNode(e,t,n,s,o,r){const i={id:this.state.nextTapeNodeId++,kernelName:e,inputs:t,outputs:n,saved:o},u=Object(a.getGradient)(e);null!=u&&(s=u.gradFunc),null!=s&&(i.gradient=e=>(e=e.map(((e,t)=>{if(null==e){const e=n[t],s=f.makeZerosTypedArray(e.size,e.dtype);return this.makeTensor(s,e.shape,e.dtype)}return e})),s(e.length>1?e:e[0],o,r))),this.state.activeTape.push(i)}keep(e){return e.kept=!0,e}startTape(){0===this.state.gradientDepth&&(this.state.activeTape=[]),this.state.gradientDepth++}endTape(){this.state.gradientDepth--}startScope(e){const t={track:[],name:"unnamed scope",id:this.state.nextScopeId++};e&&(t.name=e),this.state.scopeStack.push(t),this.state.activeScope=t}endScope(e){const t=Object(c.getTensorsInContainer)(e),n=new Set(t.map((e=>e.id)));for(let e=0;e{e.kept||e.scopeId!==s.id||this.track(e)}))}gradients(e,t,n,s=!1){if(f.assert(t.length>0,(()=>"gradients() received an empty list of xs.")),null!=n&&"float32"!==n.dtype)throw new Error(`dy must have 'float32' dtype, but has '${n.dtype}'`);const o=this.scopedRun((()=>this.startTape()),(()=>this.endTape()),(()=>this.tidy("forward",e)));f.assert(o instanceof l.Tensor,(()=>"The result y returned by f() must be a tensor."));const r=Object(d.getFilteredNodesXToY)(this.state.activeTape,t,o);if(!s&&0===r.length&&t.length>0)throw new Error("Cannot compute gradient of y=f(x) with respect to x. Make sure that the f you passed encloses all operations that lead from x to y.");return this.tidy("backward",(()=>{const e={};e[o.id]=null==n?function(e){const t=Object(f.makeOnesTypedArray)(Object(f.sizeFromShape)(e),"float32");return j.makeTensor(t,e,"float32")}(o.shape):n,Object(d.backpropagateGradients)(e,r,(e=>this.tidy(e)),g);const s=t.map((t=>e[t.id]));return 0===this.state.gradientDepth&&(this.state.activeTape.forEach((e=>{for(const t of e.saved)t.dispose()})),this.state.activeTape=null),{value:o,grads:s}}))}customGrad(e){return f.assert(f.isFunction(e),(()=>"The f passed in customGrad(f) must be a function.")),(...t)=>{let n;f.assert(t.every((e=>e instanceof l.Tensor)),(()=>"The args passed in customGrad(f)(x1, x2,...) must all be tensors"));const s={};t.forEach(((e,t)=>{s[t]=e}));return this.runKernelFunc({forwardFunc:(s,o)=>(n=e(...t,o),f.assert(n.value instanceof l.Tensor,(()=>"The function f passed in customGrad(f) must return an object where `obj.value` is a tensor")),f.assert(f.isFunction(n.gradFunc),(()=>"The function f passed in customGrad(f) must return an object where `obj.gradFunc` is a function.")),n.value),backwardsFunc:(e,s)=>{const o=n.gradFunc(e,s),r=Array.isArray(o)?o:[o];f.assert(r.length===t.length,(()=>"The function f passed in customGrad(f) must return an object where `obj.gradFunc` is a function that returns the same number of tensors as inputs passed to f(...).")),f.assert(r.every((e=>e instanceof l.Tensor)),(()=>"The function f passed in customGrad(f) must return an object where `obj.gradFunc` is a function that returns a list of only tensors."));const i={};return r.forEach(((e,t)=>{i[t]=()=>e})),i},inputs:s})}}readSync(e){return this.state.tensorInfo.get(e).backend.readSync(e)}read(e){return this.state.tensorInfo.get(e).backend.read(e)}async time(e){const t=Object(f.now)(),n=await this.backend.time(e);return n.wallMs=Object(f.now)()-t,n}track(e){return null!=this.state.activeScope&&(e.scopeId=this.state.activeScope.id,this.state.activeScope.track.push(e)),e}get registeredVariables(){return this.state.registeredVariables}reset(){this.pendingBackendInitId++,this.state.dispose(),this.ENV.reset(),this.state=new m;for(const e in this.registry)this.disposeRegisteredKernels(e),this.registry[e].dispose(),delete this.registry[e];this.backendName=null,this.backendInstance=null,this.pendingBackendInit=null}}function b(){const e=Object(r.getGlobalNamespace)();if(null==e._tfengine){const t=new o.Environment(e);e._tfengine=new h(t)}return Object(o.setEnvironmentGlobal)(e._tfengine.ENV),Object(l.setTensorTracker)((()=>e._tfengine)),e._tfengine}h.nextTensorId=0,h.nextVariableId=0;const j=b();function g(e,t){const n={a:e,b:t};return j.runKernel(i.Add,n)}},"./node_modules/@tensorflow/tfjs-core/dist/environment.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/environment.js ***!
+ \****************************************************************/
+/*! exports provided: Environment, getQueryParams, env, ENV, setEnvironmentGlobal */function(e,t,n){"use strict";n.r(t),n.d(t,"Environment",(function(){return r})),n.d(t,"getQueryParams",(function(){return i})),n.d(t,"env",(function(){return a})),n.d(t,"ENV",(function(){return u})),n.d(t,"setEnvironmentGlobal",(function(){return d}));var s=n(/*! ./util_base */"./node_modules/@tensorflow/tfjs-core/dist/util_base.js");
+/**
+ * @license
+ * Copyright 2017 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.
+ * =============================================================================
+ */const o="tfjsflags";class r{constructor(e){this.global=e,this.flags={},this.flagRegistry={},this.urlFlags={},this.getQueryParams=i,this.populateURLFlags()}setPlatform(e,t){null!=this.platform&&console.warn(`Platform ${this.platformName} has already been set. Overwriting the platform with ${t}.`),this.platformName=e,this.platform=t}registerFlag(e,t,n){if(this.flagRegistry[e]={evaluationFn:t,setHook:n},null!=this.urlFlags[e]){const t=this.urlFlags[e];console.warn(`Setting feature override from URL ${e}: ${t}.`),this.set(e,t)}}async getAsync(e){return e in this.flags||(this.flags[e]=await this.evaluateFlag(e)),this.flags[e]}get(e){if(e in this.flags)return this.flags[e];const t=this.evaluateFlag(e);if(Object(s.isPromise)(t))throw new Error(`Flag ${e} cannot be synchronously evaluated. Please use getAsync() instead.`);return this.flags[e]=t,this.flags[e]}getNumber(e){return this.get(e)}getBool(e){return this.get(e)}getFlags(){return this.flags}get features(){return this.flags}set(e,t){if(null==this.flagRegistry[e])throw new Error(`Cannot set flag ${e} as it has not been registered.`);this.flags[e]=t,null!=this.flagRegistry[e].setHook&&this.flagRegistry[e].setHook(t)}evaluateFlag(e){if(null==this.flagRegistry[e])throw new Error(`Cannot evaluate flag '${e}': no evaluation function found.`);return this.flagRegistry[e].evaluationFn()}setFlags(e){this.flags=Object.assign({},e)}reset(){this.flags={},this.urlFlags={},this.populateURLFlags()}populateURLFlags(){if("undefined"==typeof this.global||"undefined"==typeof this.global.location||"undefined"==typeof this.global.location.search)return;const e=this.getQueryParams(this.global.location.search);if(o in e){e.tfjsflags.split(",").forEach((e=>{const[t,n]=e.split(":");this.urlFlags[t]=function(e,t){if("true"===(t=t.toLowerCase())||"false"===t)return"true"===t;if(""+ +t===t)return+t;throw new Error(`Could not parse value flag value ${t} for flag ${e}.`)}(t,n)}))}}}function i(e){const t={};return e.replace(/[?&]([^=?&]+)(?:=([^&]*))?/g,((e,...n)=>(function(e,t,n){e[decodeURIComponent(t)]=decodeURIComponent(n||"")}(t,n[0],n[1]),n.join("=")))),t}function a(){return u}let u=null;function d(e){u=e}},"./node_modules/@tensorflow/tfjs-core/dist/flags.js":
+/*!**********************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/flags.js ***!
+ \**********************************************************/
+/*! no exports provided */function(e,t,n){"use strict";n.r(t),function(e){n(/*! ./engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js");var t=n(/*! ./device_util */"./node_modules/@tensorflow/tfjs-core/dist/device_util.js"),s=n(/*! ./environment */"./node_modules/@tensorflow/tfjs-core/dist/environment.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const o=Object(s.env)();o.registerFlag("DEBUG",(()=>!1),(e=>{e&&console.warn("Debugging mode is ON. The output of every math call will be downloaded to CPU and checked for NaNs. This significantly impacts performance.")})),o.registerFlag("IS_BROWSER",(()=>t.isBrowser())),o.registerFlag("IS_NODE",(()=>"undefined"!=typeof e&&"undefined"!=typeof e.versions&&"undefined"!=typeof e.versions.node)),o.registerFlag("IS_CHROME",(()=>"undefined"!=typeof navigator&&null!=navigator&&null!=navigator.userAgent&&/Chrome/.test(navigator.userAgent)&&/Google Inc/.test(navigator.vendor))),o.registerFlag("PROD",(()=>!1)),o.registerFlag("TENSORLIKE_CHECK_SHAPE_CONSISTENCY",(()=>o.getBool("DEBUG"))),o.registerFlag("DEPRECATION_WARNINGS_ENABLED",(()=>!0)),o.registerFlag("IS_TEST",(()=>!1)),o.registerFlag("CHECK_COMPUTATION_FOR_ERRORS",(()=>!0)),o.registerFlag("WRAP_TO_IMAGEBITMAP",(()=>!1))}.call(this,n(/*! ./../../../process/browser.js */"./node_modules/process/browser.js"))},"./node_modules/@tensorflow/tfjs-core/dist/global_util.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/global_util.js ***!
+ \****************************************************************/
+/*! exports provided: getGlobalNamespace, getGlobal */function(e,t,n){"use strict";n.r(t),function(e,s){
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+let o;function r(){if(null==o){let t;if("undefined"!=typeof window)t=window;else if("undefined"!=typeof e)t=e;else if("undefined"!=typeof s)t=s;else{if("undefined"==typeof self)throw new Error("Could not find a global object");t=self}o=t}return o}function i(e,t){const n=function(){const e=r();return null==e._tfGlobals&&(e._tfGlobals=new Map),e._tfGlobals}();if(n.has(e))return n.get(e);{const s=t();return n.set(e,s),n.get(e)}}n.d(t,"getGlobalNamespace",(function(){return r})),n.d(t,"getGlobal",(function(){return i}))}.call(this,n(/*! ./../../../webpack/buildin/global.js */"./node_modules/webpack/buildin/global.js"),n(/*! ./../../../process/browser.js */"./node_modules/process/browser.js"))},"./node_modules/@tensorflow/tfjs-core/dist/globals.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/globals.js ***!
+ \************************************************************/
+/*! exports provided: enableProdMode, enableDebugMode, disableDeprecationWarnings, deprecationWarn, disposeVariables, engine, memory, profile, tidy, dispose, keep, time, setBackend, ready, getBackend, removeBackend, findBackend, findBackendFactory, registerBackend, backend, setPlatform */function(e,t,n){"use strict";n.r(t),n.d(t,"enableProdMode",(function(){return a})),n.d(t,"enableDebugMode",(function(){return u})),n.d(t,"disableDeprecationWarnings",(function(){return d})),n.d(t,"deprecationWarn",(function(){return l})),n.d(t,"disposeVariables",(function(){return c})),n.d(t,"engine",(function(){return f})),n.d(t,"memory",(function(){return p})),n.d(t,"profile",(function(){return m})),n.d(t,"tidy",(function(){return h})),n.d(t,"dispose",(function(){return b})),n.d(t,"keep",(function(){return j})),n.d(t,"time",(function(){return g})),n.d(t,"setBackend",(function(){return w})),n.d(t,"ready",(function(){return _})),n.d(t,"getBackend",(function(){return k})),n.d(t,"removeBackend",(function(){return v})),n.d(t,"findBackend",(function(){return x})),n.d(t,"findBackendFactory",(function(){return y})),n.d(t,"registerBackend",(function(){return O})),n.d(t,"backend",(function(){return I})),n.d(t,"setPlatform",(function(){return C}));var s=n(/*! ./engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ./environment */"./node_modules/@tensorflow/tfjs-core/dist/environment.js"),r=n(/*! ./tensor */"./node_modules/@tensorflow/tfjs-core/dist/tensor.js"),i=n(/*! ./tensor_util */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util.js");
+/**
+ * @license
+ * Copyright 2018 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 a(){Object(o.env)().set("PROD",!0)}function u(){Object(o.env)().set("DEBUG",!0)}function d(){Object(o.env)().set("DEPRECATION_WARNINGS_ENABLED",!1),console.warn("TensorFlow.js deprecation warnings have been disabled.")}function l(e){Object(o.env)().getBool("DEPRECATION_WARNINGS_ENABLED")&&console.warn(e+" You can disable deprecation warnings with tf.disableDeprecationWarnings().")}function c(){s.ENGINE.disposeVariables()}function f(){return s.ENGINE}function p(){return s.ENGINE.memory()}function m(e){return s.ENGINE.profile(e)}function h(e,t){return s.ENGINE.tidy(e,t)}function b(e){Object(i.getTensorsInContainer)(e).forEach((e=>e.dispose()))}function j(e){return s.ENGINE.keep(e)}function g(e){return s.ENGINE.time(e)}function w(e){return s.ENGINE.setBackend(e)}function _(){return s.ENGINE.ready()}function k(){return s.ENGINE.backendName}function v(e){s.ENGINE.removeBackend(e)}function x(e){return s.ENGINE.findBackend(e)}function y(e){return s.ENGINE.findBackendFactory(e)}function O(e,t,n=1){return s.ENGINE.registerBackend(e,t,n)}function I(){return s.ENGINE.backend}function C(e,t){Object(o.env)().setPlatform(e,t)}Object(r.setDeprecationWarningFn)(l)},"./node_modules/@tensorflow/tfjs-core/dist/gradients.js":
+/*!**************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/gradients.js ***!
+ \**************************************************************/
+/*! exports provided: customGrad, variableGrads, valueAndGrad, valueAndGrads, grad, grads */function(e,t,n){"use strict";n.r(t),n.d(t,"customGrad",(function(){return f})),n.d(t,"variableGrads",(function(){return c})),n.d(t,"valueAndGrad",(function(){return d})),n.d(t,"valueAndGrads",(function(){return l})),n.d(t,"grad",(function(){return a})),n.d(t,"grads",(function(){return u}));var s=n(/*! ./engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ./tensor */"./node_modules/@tensorflow/tfjs-core/dist/tensor.js"),r=n(/*! ./tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");
+/**
+ * @license
+ * Copyright 2018 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 a(e){return i.assert(i.isFunction(e),(()=>"The f passed in grad(f) must be a function")),(t,n)=>{const o=Object(r.convertToTensor)(t,"x","tf.grad","string_or_numeric"),a=null!=n?Object(r.convertToTensor)(n,"dy","tf.grad"):null;return s.ENGINE.tidy((()=>{const{value:t,grads:n}=s.ENGINE.gradients((()=>e(o)),[o],a);return null!=a&&i.assertShapesMatch(t.shape,a.shape,"The shape of dy passed in grad(f)(x, dy) must match the shape returned by f(x)"),p(n),n[0]}))}}function u(e){return i.assert(i.isFunction(e),(()=>"The f passed in grads(f) must be a function")),(t,n)=>{i.assert(Array.isArray(t),(()=>"The args passed in grads(f)(args) must be an array of `Tensor`s or `TensorLike`s"));const o=Object(r.convertToTensorArray)(t,"args","tf.grads","string_or_numeric"),a=null!=n?Object(r.convertToTensor)(n,"dy","tf.grads"):null;return s.ENGINE.tidy((()=>{const{value:t,grads:n}=s.ENGINE.gradients((()=>e(...o)),o,a);return null!=a&&i.assertShapesMatch(t.shape,a.shape,"The shape of dy passed in grads(f)([x1,...], dy) must match the shape returned by f([x1,...])"),p(n),n}))}}function d(e){return i.assert(i.isFunction(e),(()=>"The f passed in valueAndGrad(f) must be a function")),(t,n)=>{i.assert(t instanceof o.Tensor,(()=>"The x passed in valueAndGrad(f)(x) must be a tensor")),i.assert(null==n||n instanceof o.Tensor,(()=>"The dy passed in valueAndGrad(f)(x, dy) must be a tensor"));const{grads:r,value:a}=s.ENGINE.gradients((()=>e(t)),[t],n);return p(r),{grad:r[0],value:a}}}function l(e){return i.assert(i.isFunction(e),(()=>"The f passed in valueAndGrads(f) must be a function")),(t,n)=>{i.assert(Array.isArray(t)&&t.every((e=>e instanceof o.Tensor)),(()=>"The args passed in valueAndGrads(f)(args) must be array of tensors")),i.assert(null==n||n instanceof o.Tensor,(()=>"The dy passed in valueAndGrads(f)(args, dy) must be a tensor"));const r=s.ENGINE.gradients((()=>e(...t)),t,n);return null!=n&&i.assertShapesMatch(r.value.shape,n.shape,"The shape of dy passed in valueAndGrads(f)([x1,...], dy) must match the shape returned by f([x1,...])"),p(r.grads),r}}function c(e,t){i.assert(i.isFunction(e),(()=>"The f passed in variableGrads(f) must be a function")),i.assert(null==t||Array.isArray(t)&&t.every((e=>e instanceof o.Variable)),(()=>"The varList passed in variableGrads(f, varList) must be an array of variables"));const n=null!=t;if(!n){t=[];for(const e in s.ENGINE.registeredVariables)t.push(s.ENGINE.registeredVariables[e])}const r=n?t.filter((e=>!e.trainable)):null,a=t.length;t=t.filter((e=>e.trainable)),i.assert(t.length>0,(()=>`variableGrads() expects at least one of the input variables to be trainable, but none of the ${a} variables is trainable.`));const{value:u,grads:d}=s.ENGINE.gradients(e,t,null,!0);i.assert(d.some((e=>null!=e)),(()=>"Cannot find a connection between any variable and the result of the loss function y=f(x). Please make sure the operations that use variables are inside the function f passed to minimize().")),i.assert(0===u.rank,(()=>`The f passed in variableGrads(f) must return a scalar, but it returned a rank-${u.rank} tensor`));const l={};return t.forEach(((e,t)=>{null!=d[t]&&(l[e.name]=d[t])})),null!=r&&r.forEach((e=>l[e.name]=null)),{value:u,grads:l}}function f(e){return s.ENGINE.customGrad(e)}function p(e){if(e.filter((e=>null==e)).length>0)throw new Error("Cannot compute gradient of y=f(x) with respect to x. Make sure that\n the f you passed encloses all operations that lead from x to y.")}},"./node_modules/@tensorflow/tfjs-core/dist/hash_util.js":
+/*!**************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/hash_util.js ***!
+ \**************************************************************/
+/*! exports provided: hexToLong, fingerPrint64 */function(e,t,n){"use strict";n.r(t),n.d(t,"hexToLong",(function(){return r})),n.d(t,"fingerPrint64",(function(){return b}));var s=n(/*! long */"./node_modules/long/src/long.js");
+/**
+ * @license
+ * Copyright 2021 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.
+ * =============================================================================
+ */
+const o=n.n(s).a||s;function r(e){return o.fromString(e,!0,16)}const i=r("c3a5c85c97cb3127"),a=r("b492b66fbe98f273"),u=r("9ae16a3b2f90404f");function d(e){return e.xor(e.shru(47))}function l(e,t,n){const s=e.slice(t,t+n);return o.fromBytes(Array.from(s),!0,!0)}function c(e,t){return l(e,t,8)}function f(e,t){return l(e,t,4)}function p(e,t){return 0===t?e:e.shru(t).or(e.shl(64-t))}function m(e,t,n=r("9ddfea08eb382d69")){let s=e.xor(t).mul(n);s=s.xor(s.shru(47));let o=t.xor(s).mul(n);return o=o.xor(o.shru(47)),o=o.mul(n),o}function h(e,t,n,s){return function(e,t,n,s,o,r){o=o.add(e),r=p(r.add(o).add(s),21);const i=o;return o=(o=o.add(t)).add(n),r=r.add(p(o,44)),[o.add(s),r.add(i)]}(c(e,t),c(e,t+8),c(e,t+16),c(e,t+24),n,s)}function b(e,t=e.length){const n=o.fromNumber(81,!0);if(t<=32)return t<=16?function(e,t=e.length){if(t>=8){const n=u.add(2*t),s=c(e,0).add(u),o=c(e,t-8);return m(p(o,37).mul(n).add(s),p(s,25).add(o).mul(n),n)}if(t>=4){const n=u.add(2*t);return m(f(e,0).shl(3).add(t),f(e,t-4),n)}if(t>0){const n=e[0]+(e[t>>1]<<8),s=t+(e[t-1]<<2);return d(u.mul(n).xor(i.mul(s))).mul(u)}return u}(e,t):function(e,t=e.length){const n=u.add(2*t),s=c(e,0).mul(a),o=c(e,8),r=c(e,t-8).mul(n),i=c(e,t-16).mul(u);return m(p(s.add(o),43).add(p(r,30)).add(i),s.add(p(o.add(u),18)).add(r),n)}(e,t);if(t<=64)return function(e,t=e.length){const n=u.add(2*t),s=c(e,0).mul(u),o=c(e,8),r=c(e,t-8).mul(n),i=c(e,t-16).mul(u),a=p(s.add(o),43).add(p(r,30)).add(i),d=m(a,s.add(p(o.add(u),18)).add(r),n),l=c(e,16).mul(n),f=c(e,24),h=a.add(c(e,t-32)).mul(n),b=d.add(c(e,t-24)).mul(n);return m(p(l.add(f),43).add(p(h,30)).add(b),l.add(p(f.add(s),18)).add(h),n)}(e,t);let s=n,r=n.mul(a).add(113),l=d(r.mul(u).add(113)).mul(u),b=[o.UZERO,o.UZERO],j=[o.UZERO,o.UZERO];s=s.mul(u).add(c(e,0));let g=0;const w=64*(t-1>>6),_=w+(t-1&63)-63;do{s=p(s.add(r).add(b[0]).add(c(e,g+8)),37).mul(a),r=p(r.add(b[1]).add(c(e,g+48)),42).mul(a),s=s.xor(j[1]),r=r.add(b[0]).add(c(e,g+40)),l=p(l.add(j[0]),33).mul(a),b=h(e,g,b[1].mul(a),s.add(j[0])),j=h(e,g+32,l.add(j[1]),r.add(c(e,g+16))),[l,s]=[s,l],g+=64}while(g!==w);const k=a.add(l.and(255).shl(1));return g=_,j[0]=j[0].add(t-1&63),b[0]=b[0].add(j[0]),j[0]=j[0].add(b[0]),s=p(s.add(r).add(b[0]).add(c(e,g+8)),37).mul(k),r=p(r.add(b[1]).add(c(e,g+48)),42).mul(k),s=s.xor(j[1].mul(9)),r=r.add(b[0].mul(9).add(c(e,g+40))),l=p(l.add(j[0]),33).mul(k),b=h(e,g,b[1].mul(k),s.add(j[0])),j=h(e,g+32,l.add(j[1]),r.add(c(e,g+16))),[l,s]=[s,l],m(m(b[0],j[0],k).add(d(r).mul(i)).add(l),m(b[1],j[1],k).add(s),k)}},"./node_modules/@tensorflow/tfjs-core/dist/index.js":
+/*!**********************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/index.js ***!
+ \**********************************************************/
+/*! exports provided: AdadeltaOptimizer, AdagradOptimizer, AdamOptimizer, AdamaxOptimizer, MomentumOptimizer, Optimizer, RMSPropOptimizer, SGDOptimizer, Tensor, TensorBuffer, Variable, Rank, sumOutType, upcastType, abs, acos, acosh, add, addN, all, any, argMax, argMin, asin, asinh, atan, atan2, atanh, avgPool, avgPool3d, basicLSTMCell, batchToSpaceND, batchNorm, batchNorm2d, batchNorm3d, batchNorm4d, bincount, broadcastTo, buffer, cast, ceil, clipByValue, clone, complex, concat, concat1d, concat2d, concat3d, concat4d, conv1d, conv2d, conv2dTranspose, conv3d, conv3dTranspose, cos, cosh, cumsum, denseBincount, depthToSpace, depthwiseConv2d, diag, dilation2d, div, divNoNan, dot, einsum, elu, equal, erf, exp, expandDims, expm1, eye, fill, floor, floorDiv, gather, greater, greaterEqual, imag, isFinite, isInf, isNaN, leakyRelu, less, lessEqual, linspace, localResponseNormalization, log, log1p, logSigmoid, logSoftmax, logSumExp, logicalAnd, logicalNot, logicalOr, logicalXor, matMul, max, maxPool, maxPool3d, maxPoolWithArgmax, maximum, mean, meshgrid, min, minimum, mirrorPad, mod, moments, mul, multiRNNCell, multinomial, neg, notEqual, oneHot, ones, onesLike, outerProduct, pad, pad1d, pad2d, pad3d, pad4d, pool, pow, prelu, print, prod, rand, randomGamma, randomNormal, randomUniform, range, real, reciprocal, relu, relu6, reshape, reverse, reverse1d, reverse2d, reverse3d, reverse4d, round, rsqrt, scalar, selu, separableConv2d, setdiff1dAsync, sigmoid, sign, sin, sinh, slice, slice1d, slice2d, slice3d, slice4d, softmax, softplus, spaceToBatchND, fft, ifft, irfft, rfft, split, sqrt, square, squaredDifference, squeeze, stack, step, stridedSlice, sub, sum, tan, tanh, tensor, tensor1d, tensor2d, tensor3d, tensor4d, tensor5d, tensor6d, tile, topk, truncatedNormal, unique, unsortedSegmentSum, unstack, variable, where, whereAsync, zeros, zerosLike, booleanMaskAsync, transpose, norm, movingAverage, scatterND, sparseToDense, gatherND, dropout, enclosingPowerOfTwo, cosineWindow, inTopKAsync, op, OP_SCOPE_SUFFIX, image, linalg, losses, spectral, fused, signal, sparse, string, Reduction, train, enableProdMode, enableDebugMode, disableDeprecationWarnings, deprecationWarn, disposeVariables, engine, memory, profile, tidy, dispose, keep, time, setBackend, ready, getBackend, removeBackend, findBackend, findBackendFactory, registerBackend, backend, setPlatform, getKernel, getGradient, getKernelsForBackend, registerKernel, registerGradient, unregisterKernel, unregisterGradient, copyRegisteredKernels, customGrad, grad, grads, valueAndGrad, valueAndGrads, variableGrads, Environment, env, ENV, version_core, nextFrame, browser, io, math, serialization, test_util, util, backend_util, tensor_util, slice_util, gather_util, scatter_util, device_util, kernel_impls, KernelBackend, DataStorage, Abs, Acos, Acosh, Add, AddN, All, Any, ArgMax, ArgMin, Asin, Asinh, Atan, Atanh, Atan2, AvgPool, AvgPoolGrad, AvgPool3D, AvgPool3DGrad, BatchMatMul, BatchToSpaceND, Bincount, BroadcastTo, Cast, Ceil, ClipByValue, Complex, ComplexAbs, Concat, Conv2D, Conv2DBackpropFilter, Conv2DBackpropInput, Conv3D, Conv3DBackpropFilterV2, Conv3DBackpropInputV2, Cos, Cosh, Cumsum, CropAndResize, DenseBincount, DepthToSpace, DepthwiseConv2dNative, DepthwiseConv2dNativeBackpropFilter, DepthwiseConv2dNativeBackpropInput, Diag, Dilation2D, Dilation2DBackpropInput, Dilation2DBackpropFilter, RealDiv, Einsum, Elu, EluGrad, Erf, Equal, Exp, ExpandDims, Expm1, FFT, Fill, FlipLeftRight, Floor, FloorDiv, FusedBatchNorm, GatherV2, GatherNd, Greater, GreaterEqual, Identity, IFFT, Imag, IsFinite, IsInf, IsNan, LeakyRelu, Less, LessEqual, LinSpace, Log, Log1p, LogicalAnd, LogicalNot, LogicalOr, LogSoftmax, LRN, LRNGrad, Max, Maximum, MaxPool, MaxPoolGrad, MaxPool3D, MaxPool3DGrad, MaxPoolWithArgmax, Mean, Min, Minimum, MirrorPad, Mod, Multinomial, Multiply, Neg, NotEqual, NonMaxSuppressionV3, NonMaxSuppressionV4, NonMaxSuppressionV5, OnesLike, OneHot, Pack, PadV2, Pool, Pow, Prelu, Prod, Range, Real, Reciprocal, Relu, Reshape, ResizeNearestNeighbor, ResizeNearestNeighborGrad, ResizeBilinear, ResizeBilinearGrad, Relu6, Reverse, Round, Rsqrt, ScatterNd, Select, Selu, Slice, Sin, Sinh, Sign, Sigmoid, Softplus, Sqrt, Sum, SpaceToBatchND, SplitV, Softmax, SparseFillEmptyRows, SparseReshape, SparseSegmentMean, SparseSegmentSum, SparseToDense, SquaredDifference, Square, StridedSlice, StringNGrams, StringSplit, StringToHashBucketFast, Sub, Tan, Tanh, Tile, TopK, Transform, Transpose, Unique, Unpack, UnsortedSegmentSum, ZerosLike, Step, FromPixels, RotateWithOffset, _FusedMatMul, FusedConv2D, FusedDepthwiseConv2D */function(e,t,n){"use strict";n.r(t);n(/*! ./base_side_effects */"./node_modules/@tensorflow/tfjs-core/dist/base_side_effects.js");var s=n(/*! ./base */"./node_modules/@tensorflow/tfjs-core/dist/base.js");n.d(t,"AdadeltaOptimizer",(function(){return s.AdadeltaOptimizer})),n.d(t,"AdagradOptimizer",(function(){return s.AdagradOptimizer})),n.d(t,"AdamOptimizer",(function(){return s.AdamOptimizer})),n.d(t,"AdamaxOptimizer",(function(){return s.AdamaxOptimizer})),n.d(t,"MomentumOptimizer",(function(){return s.MomentumOptimizer})),n.d(t,"Optimizer",(function(){return s.Optimizer})),n.d(t,"RMSPropOptimizer",(function(){return s.RMSPropOptimizer})),n.d(t,"SGDOptimizer",(function(){return s.SGDOptimizer})),n.d(t,"Tensor",(function(){return s.Tensor})),n.d(t,"TensorBuffer",(function(){return s.TensorBuffer})),n.d(t,"Variable",(function(){return s.Variable})),n.d(t,"Rank",(function(){return s.Rank})),n.d(t,"sumOutType",(function(){return s.sumOutType})),n.d(t,"upcastType",(function(){return s.upcastType})),n.d(t,"abs",(function(){return s.abs})),n.d(t,"acos",(function(){return s.acos})),n.d(t,"acosh",(function(){return s.acosh})),n.d(t,"add",(function(){return s.add})),n.d(t,"addN",(function(){return s.addN})),n.d(t,"all",(function(){return s.all})),n.d(t,"any",(function(){return s.any})),n.d(t,"argMax",(function(){return s.argMax})),n.d(t,"argMin",(function(){return s.argMin})),n.d(t,"asin",(function(){return s.asin})),n.d(t,"asinh",(function(){return s.asinh})),n.d(t,"atan",(function(){return s.atan})),n.d(t,"atan2",(function(){return s.atan2})),n.d(t,"atanh",(function(){return s.atanh})),n.d(t,"avgPool",(function(){return s.avgPool})),n.d(t,"avgPool3d",(function(){return s.avgPool3d})),n.d(t,"basicLSTMCell",(function(){return s.basicLSTMCell})),n.d(t,"batchToSpaceND",(function(){return s.batchToSpaceND})),n.d(t,"batchNorm",(function(){return s.batchNorm})),n.d(t,"batchNorm2d",(function(){return s.batchNorm2d})),n.d(t,"batchNorm3d",(function(){return s.batchNorm3d})),n.d(t,"batchNorm4d",(function(){return s.batchNorm4d})),n.d(t,"bincount",(function(){return s.bincount})),n.d(t,"broadcastTo",(function(){return s.broadcastTo})),n.d(t,"buffer",(function(){return s.buffer})),n.d(t,"cast",(function(){return s.cast})),n.d(t,"ceil",(function(){return s.ceil})),n.d(t,"clipByValue",(function(){return s.clipByValue})),n.d(t,"clone",(function(){return s.clone})),n.d(t,"complex",(function(){return s.complex})),n.d(t,"concat",(function(){return s.concat})),n.d(t,"concat1d",(function(){return s.concat1d})),n.d(t,"concat2d",(function(){return s.concat2d})),n.d(t,"concat3d",(function(){return s.concat3d})),n.d(t,"concat4d",(function(){return s.concat4d})),n.d(t,"conv1d",(function(){return s.conv1d})),n.d(t,"conv2d",(function(){return s.conv2d})),n.d(t,"conv2dTranspose",(function(){return s.conv2dTranspose})),n.d(t,"conv3d",(function(){return s.conv3d})),n.d(t,"conv3dTranspose",(function(){return s.conv3dTranspose})),n.d(t,"cos",(function(){return s.cos})),n.d(t,"cosh",(function(){return s.cosh})),n.d(t,"cumsum",(function(){return s.cumsum})),n.d(t,"denseBincount",(function(){return s.denseBincount})),n.d(t,"depthToSpace",(function(){return s.depthToSpace})),n.d(t,"depthwiseConv2d",(function(){return s.depthwiseConv2d})),n.d(t,"diag",(function(){return s.diag})),n.d(t,"dilation2d",(function(){return s.dilation2d})),n.d(t,"div",(function(){return s.div})),n.d(t,"divNoNan",(function(){return s.divNoNan})),n.d(t,"dot",(function(){return s.dot})),n.d(t,"einsum",(function(){return s.einsum})),n.d(t,"elu",(function(){return s.elu})),n.d(t,"equal",(function(){return s.equal})),n.d(t,"erf",(function(){return s.erf})),n.d(t,"exp",(function(){return s.exp})),n.d(t,"expandDims",(function(){return s.expandDims})),n.d(t,"expm1",(function(){return s.expm1})),n.d(t,"eye",(function(){return s.eye})),n.d(t,"fill",(function(){return s.fill})),n.d(t,"floor",(function(){return s.floor})),n.d(t,"floorDiv",(function(){return s.floorDiv})),n.d(t,"gather",(function(){return s.gather})),n.d(t,"greater",(function(){return s.greater})),n.d(t,"greaterEqual",(function(){return s.greaterEqual})),n.d(t,"imag",(function(){return s.imag})),n.d(t,"isFinite",(function(){return s.isFinite})),n.d(t,"isInf",(function(){return s.isInf})),n.d(t,"isNaN",(function(){return s.isNaN})),n.d(t,"leakyRelu",(function(){return s.leakyRelu})),n.d(t,"less",(function(){return s.less})),n.d(t,"lessEqual",(function(){return s.lessEqual})),n.d(t,"linspace",(function(){return s.linspace})),n.d(t,"localResponseNormalization",(function(){return s.localResponseNormalization})),n.d(t,"log",(function(){return s.log})),n.d(t,"log1p",(function(){return s.log1p})),n.d(t,"logSigmoid",(function(){return s.logSigmoid})),n.d(t,"logSoftmax",(function(){return s.logSoftmax})),n.d(t,"logSumExp",(function(){return s.logSumExp})),n.d(t,"logicalAnd",(function(){return s.logicalAnd})),n.d(t,"logicalNot",(function(){return s.logicalNot})),n.d(t,"logicalOr",(function(){return s.logicalOr})),n.d(t,"logicalXor",(function(){return s.logicalXor})),n.d(t,"matMul",(function(){return s.matMul})),n.d(t,"max",(function(){return s.max})),n.d(t,"maxPool",(function(){return s.maxPool})),n.d(t,"maxPool3d",(function(){return s.maxPool3d})),n.d(t,"maxPoolWithArgmax",(function(){return s.maxPoolWithArgmax})),n.d(t,"maximum",(function(){return s.maximum})),n.d(t,"mean",(function(){return s.mean})),n.d(t,"meshgrid",(function(){return s.meshgrid})),n.d(t,"min",(function(){return s.min})),n.d(t,"minimum",(function(){return s.minimum})),n.d(t,"mirrorPad",(function(){return s.mirrorPad})),n.d(t,"mod",(function(){return s.mod})),n.d(t,"moments",(function(){return s.moments})),n.d(t,"mul",(function(){return s.mul})),n.d(t,"multiRNNCell",(function(){return s.multiRNNCell})),n.d(t,"multinomial",(function(){return s.multinomial})),n.d(t,"neg",(function(){return s.neg})),n.d(t,"notEqual",(function(){return s.notEqual})),n.d(t,"oneHot",(function(){return s.oneHot})),n.d(t,"ones",(function(){return s.ones})),n.d(t,"onesLike",(function(){return s.onesLike})),n.d(t,"outerProduct",(function(){return s.outerProduct})),n.d(t,"pad",(function(){return s.pad})),n.d(t,"pad1d",(function(){return s.pad1d})),n.d(t,"pad2d",(function(){return s.pad2d})),n.d(t,"pad3d",(function(){return s.pad3d})),n.d(t,"pad4d",(function(){return s.pad4d})),n.d(t,"pool",(function(){return s.pool})),n.d(t,"pow",(function(){return s.pow})),n.d(t,"prelu",(function(){return s.prelu})),n.d(t,"print",(function(){return s.print})),n.d(t,"prod",(function(){return s.prod})),n.d(t,"rand",(function(){return s.rand})),n.d(t,"randomGamma",(function(){return s.randomGamma})),n.d(t,"randomNormal",(function(){return s.randomNormal})),n.d(t,"randomUniform",(function(){return s.randomUniform})),n.d(t,"range",(function(){return s.range})),n.d(t,"real",(function(){return s.real})),n.d(t,"reciprocal",(function(){return s.reciprocal})),n.d(t,"relu",(function(){return s.relu})),n.d(t,"relu6",(function(){return s.relu6})),n.d(t,"reshape",(function(){return s.reshape})),n.d(t,"reverse",(function(){return s.reverse})),n.d(t,"reverse1d",(function(){return s.reverse1d})),n.d(t,"reverse2d",(function(){return s.reverse2d})),n.d(t,"reverse3d",(function(){return s.reverse3d})),n.d(t,"reverse4d",(function(){return s.reverse4d})),n.d(t,"round",(function(){return s.round})),n.d(t,"rsqrt",(function(){return s.rsqrt})),n.d(t,"scalar",(function(){return s.scalar})),n.d(t,"selu",(function(){return s.selu})),n.d(t,"separableConv2d",(function(){return s.separableConv2d})),n.d(t,"setdiff1dAsync",(function(){return s.setdiff1dAsync})),n.d(t,"sigmoid",(function(){return s.sigmoid})),n.d(t,"sign",(function(){return s.sign})),n.d(t,"sin",(function(){return s.sin})),n.d(t,"sinh",(function(){return s.sinh})),n.d(t,"slice",(function(){return s.slice})),n.d(t,"slice1d",(function(){return s.slice1d})),n.d(t,"slice2d",(function(){return s.slice2d})),n.d(t,"slice3d",(function(){return s.slice3d})),n.d(t,"slice4d",(function(){return s.slice4d})),n.d(t,"softmax",(function(){return s.softmax})),n.d(t,"softplus",(function(){return s.softplus})),n.d(t,"spaceToBatchND",(function(){return s.spaceToBatchND})),n.d(t,"fft",(function(){return s.fft})),n.d(t,"ifft",(function(){return s.ifft})),n.d(t,"irfft",(function(){return s.irfft})),n.d(t,"rfft",(function(){return s.rfft})),n.d(t,"split",(function(){return s.split})),n.d(t,"sqrt",(function(){return s.sqrt})),n.d(t,"square",(function(){return s.square})),n.d(t,"squaredDifference",(function(){return s.squaredDifference})),n.d(t,"squeeze",(function(){return s.squeeze})),n.d(t,"stack",(function(){return s.stack})),n.d(t,"step",(function(){return s.step})),n.d(t,"stridedSlice",(function(){return s.stridedSlice})),n.d(t,"sub",(function(){return s.sub})),n.d(t,"sum",(function(){return s.sum})),n.d(t,"tan",(function(){return s.tan})),n.d(t,"tanh",(function(){return s.tanh})),n.d(t,"tensor",(function(){return s.tensor})),n.d(t,"tensor1d",(function(){return s.tensor1d})),n.d(t,"tensor2d",(function(){return s.tensor2d})),n.d(t,"tensor3d",(function(){return s.tensor3d})),n.d(t,"tensor4d",(function(){return s.tensor4d})),n.d(t,"tensor5d",(function(){return s.tensor5d})),n.d(t,"tensor6d",(function(){return s.tensor6d})),n.d(t,"tile",(function(){return s.tile})),n.d(t,"topk",(function(){return s.topk})),n.d(t,"truncatedNormal",(function(){return s.truncatedNormal})),n.d(t,"unique",(function(){return s.unique})),n.d(t,"unsortedSegmentSum",(function(){return s.unsortedSegmentSum})),n.d(t,"unstack",(function(){return s.unstack})),n.d(t,"variable",(function(){return s.variable})),n.d(t,"where",(function(){return s.where})),n.d(t,"whereAsync",(function(){return s.whereAsync})),n.d(t,"zeros",(function(){return s.zeros})),n.d(t,"zerosLike",(function(){return s.zerosLike})),n.d(t,"booleanMaskAsync",(function(){return s.booleanMaskAsync})),n.d(t,"transpose",(function(){return s.transpose})),n.d(t,"norm",(function(){return s.norm})),n.d(t,"movingAverage",(function(){return s.movingAverage})),n.d(t,"scatterND",(function(){return s.scatterND})),n.d(t,"sparseToDense",(function(){return s.sparseToDense})),n.d(t,"gatherND",(function(){return s.gatherND})),n.d(t,"dropout",(function(){return s.dropout})),n.d(t,"enclosingPowerOfTwo",(function(){return s.enclosingPowerOfTwo})),n.d(t,"cosineWindow",(function(){return s.cosineWindow})),n.d(t,"inTopKAsync",(function(){return s.inTopKAsync})),n.d(t,"op",(function(){return s.op})),n.d(t,"OP_SCOPE_SUFFIX",(function(){return s.OP_SCOPE_SUFFIX})),n.d(t,"image",(function(){return s.image})),n.d(t,"linalg",(function(){return s.linalg})),n.d(t,"losses",(function(){return s.losses})),n.d(t,"spectral",(function(){return s.spectral})),n.d(t,"fused",(function(){return s.fused})),n.d(t,"signal",(function(){return s.signal})),n.d(t,"sparse",(function(){return s.sparse})),n.d(t,"string",(function(){return s.string})),n.d(t,"Reduction",(function(){return s.Reduction})),n.d(t,"train",(function(){return s.train})),n.d(t,"enableProdMode",(function(){return s.enableProdMode})),n.d(t,"enableDebugMode",(function(){return s.enableDebugMode})),n.d(t,"disableDeprecationWarnings",(function(){return s.disableDeprecationWarnings})),n.d(t,"deprecationWarn",(function(){return s.deprecationWarn})),n.d(t,"disposeVariables",(function(){return s.disposeVariables})),n.d(t,"engine",(function(){return s.engine})),n.d(t,"memory",(function(){return s.memory})),n.d(t,"profile",(function(){return s.profile})),n.d(t,"tidy",(function(){return s.tidy})),n.d(t,"dispose",(function(){return s.dispose})),n.d(t,"keep",(function(){return s.keep})),n.d(t,"time",(function(){return s.time})),n.d(t,"setBackend",(function(){return s.setBackend})),n.d(t,"ready",(function(){return s.ready})),n.d(t,"getBackend",(function(){return s.getBackend})),n.d(t,"removeBackend",(function(){return s.removeBackend})),n.d(t,"findBackend",(function(){return s.findBackend})),n.d(t,"findBackendFactory",(function(){return s.findBackendFactory})),n.d(t,"registerBackend",(function(){return s.registerBackend})),n.d(t,"backend",(function(){return s.backend})),n.d(t,"setPlatform",(function(){return s.setPlatform})),n.d(t,"getKernel",(function(){return s.getKernel})),n.d(t,"getGradient",(function(){return s.getGradient})),n.d(t,"getKernelsForBackend",(function(){return s.getKernelsForBackend})),n.d(t,"registerKernel",(function(){return s.registerKernel})),n.d(t,"registerGradient",(function(){return s.registerGradient})),n.d(t,"unregisterKernel",(function(){return s.unregisterKernel})),n.d(t,"unregisterGradient",(function(){return s.unregisterGradient})),n.d(t,"copyRegisteredKernels",(function(){return s.copyRegisteredKernels})),n.d(t,"customGrad",(function(){return s.customGrad})),n.d(t,"grad",(function(){return s.grad})),n.d(t,"grads",(function(){return s.grads})),n.d(t,"valueAndGrad",(function(){return s.valueAndGrad})),n.d(t,"valueAndGrads",(function(){return s.valueAndGrads})),n.d(t,"variableGrads",(function(){return s.variableGrads})),n.d(t,"Environment",(function(){return s.Environment})),n.d(t,"env",(function(){return s.env})),n.d(t,"ENV",(function(){return s.ENV})),n.d(t,"version_core",(function(){return s.version_core})),n.d(t,"nextFrame",(function(){return s.nextFrame})),n.d(t,"browser",(function(){return s.browser})),n.d(t,"io",(function(){return s.io})),n.d(t,"math",(function(){return s.math})),n.d(t,"serialization",(function(){return s.serialization})),n.d(t,"test_util",(function(){return s.test_util})),n.d(t,"util",(function(){return s.util})),n.d(t,"backend_util",(function(){return s.backend_util})),n.d(t,"tensor_util",(function(){return s.tensor_util})),n.d(t,"slice_util",(function(){return s.slice_util})),n.d(t,"gather_util",(function(){return s.gather_util})),n.d(t,"scatter_util",(function(){return s.scatter_util})),n.d(t,"device_util",(function(){return s.device_util})),n.d(t,"kernel_impls",(function(){return s.kernel_impls})),n.d(t,"KernelBackend",(function(){return s.KernelBackend})),n.d(t,"DataStorage",(function(){return s.DataStorage})),n.d(t,"Abs",(function(){return s.Abs})),n.d(t,"Acos",(function(){return s.Acos})),n.d(t,"Acosh",(function(){return s.Acosh})),n.d(t,"Add",(function(){return s.Add})),n.d(t,"AddN",(function(){return s.AddN})),n.d(t,"All",(function(){return s.All})),n.d(t,"Any",(function(){return s.Any})),n.d(t,"ArgMax",(function(){return s.ArgMax})),n.d(t,"ArgMin",(function(){return s.ArgMin})),n.d(t,"Asin",(function(){return s.Asin})),n.d(t,"Asinh",(function(){return s.Asinh})),n.d(t,"Atan",(function(){return s.Atan})),n.d(t,"Atanh",(function(){return s.Atanh})),n.d(t,"Atan2",(function(){return s.Atan2})),n.d(t,"AvgPool",(function(){return s.AvgPool})),n.d(t,"AvgPoolGrad",(function(){return s.AvgPoolGrad})),n.d(t,"AvgPool3D",(function(){return s.AvgPool3D})),n.d(t,"AvgPool3DGrad",(function(){return s.AvgPool3DGrad})),n.d(t,"BatchMatMul",(function(){return s.BatchMatMul})),n.d(t,"BatchToSpaceND",(function(){return s.BatchToSpaceND})),n.d(t,"Bincount",(function(){return s.Bincount})),n.d(t,"BroadcastTo",(function(){return s.BroadcastTo})),n.d(t,"Cast",(function(){return s.Cast})),n.d(t,"Ceil",(function(){return s.Ceil})),n.d(t,"ClipByValue",(function(){return s.ClipByValue})),n.d(t,"Complex",(function(){return s.Complex})),n.d(t,"ComplexAbs",(function(){return s.ComplexAbs})),n.d(t,"Concat",(function(){return s.Concat})),n.d(t,"Conv2D",(function(){return s.Conv2D})),n.d(t,"Conv2DBackpropFilter",(function(){return s.Conv2DBackpropFilter})),n.d(t,"Conv2DBackpropInput",(function(){return s.Conv2DBackpropInput})),n.d(t,"Conv3D",(function(){return s.Conv3D})),n.d(t,"Conv3DBackpropFilterV2",(function(){return s.Conv3DBackpropFilterV2})),n.d(t,"Conv3DBackpropInputV2",(function(){return s.Conv3DBackpropInputV2})),n.d(t,"Cos",(function(){return s.Cos})),n.d(t,"Cosh",(function(){return s.Cosh})),n.d(t,"Cumsum",(function(){return s.Cumsum})),n.d(t,"CropAndResize",(function(){return s.CropAndResize})),n.d(t,"DenseBincount",(function(){return s.DenseBincount})),n.d(t,"DepthToSpace",(function(){return s.DepthToSpace})),n.d(t,"DepthwiseConv2dNative",(function(){return s.DepthwiseConv2dNative})),n.d(t,"DepthwiseConv2dNativeBackpropFilter",(function(){return s.DepthwiseConv2dNativeBackpropFilter})),n.d(t,"DepthwiseConv2dNativeBackpropInput",(function(){return s.DepthwiseConv2dNativeBackpropInput})),n.d(t,"Diag",(function(){return s.Diag})),n.d(t,"Dilation2D",(function(){return s.Dilation2D})),n.d(t,"Dilation2DBackpropInput",(function(){return s.Dilation2DBackpropInput})),n.d(t,"Dilation2DBackpropFilter",(function(){return s.Dilation2DBackpropFilter})),n.d(t,"RealDiv",(function(){return s.RealDiv})),n.d(t,"Einsum",(function(){return s.Einsum})),n.d(t,"Elu",(function(){return s.Elu})),n.d(t,"EluGrad",(function(){return s.EluGrad})),n.d(t,"Erf",(function(){return s.Erf})),n.d(t,"Equal",(function(){return s.Equal})),n.d(t,"Exp",(function(){return s.Exp})),n.d(t,"ExpandDims",(function(){return s.ExpandDims})),n.d(t,"Expm1",(function(){return s.Expm1})),n.d(t,"FFT",(function(){return s.FFT})),n.d(t,"Fill",(function(){return s.Fill})),n.d(t,"FlipLeftRight",(function(){return s.FlipLeftRight})),n.d(t,"Floor",(function(){return s.Floor})),n.d(t,"FloorDiv",(function(){return s.FloorDiv})),n.d(t,"FusedBatchNorm",(function(){return s.FusedBatchNorm})),n.d(t,"GatherV2",(function(){return s.GatherV2})),n.d(t,"GatherNd",(function(){return s.GatherNd})),n.d(t,"Greater",(function(){return s.Greater})),n.d(t,"GreaterEqual",(function(){return s.GreaterEqual})),n.d(t,"Identity",(function(){return s.Identity})),n.d(t,"IFFT",(function(){return s.IFFT})),n.d(t,"Imag",(function(){return s.Imag})),n.d(t,"IsFinite",(function(){return s.IsFinite})),n.d(t,"IsInf",(function(){return s.IsInf})),n.d(t,"IsNan",(function(){return s.IsNan})),n.d(t,"LeakyRelu",(function(){return s.LeakyRelu})),n.d(t,"Less",(function(){return s.Less})),n.d(t,"LessEqual",(function(){return s.LessEqual})),n.d(t,"LinSpace",(function(){return s.LinSpace})),n.d(t,"Log",(function(){return s.Log})),n.d(t,"Log1p",(function(){return s.Log1p})),n.d(t,"LogicalAnd",(function(){return s.LogicalAnd})),n.d(t,"LogicalNot",(function(){return s.LogicalNot})),n.d(t,"LogicalOr",(function(){return s.LogicalOr})),n.d(t,"LogSoftmax",(function(){return s.LogSoftmax})),n.d(t,"LRN",(function(){return s.LRN})),n.d(t,"LRNGrad",(function(){return s.LRNGrad})),n.d(t,"Max",(function(){return s.Max})),n.d(t,"Maximum",(function(){return s.Maximum})),n.d(t,"MaxPool",(function(){return s.MaxPool})),n.d(t,"MaxPoolGrad",(function(){return s.MaxPoolGrad})),n.d(t,"MaxPool3D",(function(){return s.MaxPool3D})),n.d(t,"MaxPool3DGrad",(function(){return s.MaxPool3DGrad})),n.d(t,"MaxPoolWithArgmax",(function(){return s.MaxPoolWithArgmax})),n.d(t,"Mean",(function(){return s.Mean})),n.d(t,"Min",(function(){return s.Min})),n.d(t,"Minimum",(function(){return s.Minimum})),n.d(t,"MirrorPad",(function(){return s.MirrorPad})),n.d(t,"Mod",(function(){return s.Mod})),n.d(t,"Multinomial",(function(){return s.Multinomial})),n.d(t,"Multiply",(function(){return s.Multiply})),n.d(t,"Neg",(function(){return s.Neg})),n.d(t,"NotEqual",(function(){return s.NotEqual})),n.d(t,"NonMaxSuppressionV3",(function(){return s.NonMaxSuppressionV3})),n.d(t,"NonMaxSuppressionV4",(function(){return s.NonMaxSuppressionV4})),n.d(t,"NonMaxSuppressionV5",(function(){return s.NonMaxSuppressionV5})),n.d(t,"OnesLike",(function(){return s.OnesLike})),n.d(t,"OneHot",(function(){return s.OneHot})),n.d(t,"Pack",(function(){return s.Pack})),n.d(t,"PadV2",(function(){return s.PadV2})),n.d(t,"Pool",(function(){return s.Pool})),n.d(t,"Pow",(function(){return s.Pow})),n.d(t,"Prelu",(function(){return s.Prelu})),n.d(t,"Prod",(function(){return s.Prod})),n.d(t,"Range",(function(){return s.Range})),n.d(t,"Real",(function(){return s.Real})),n.d(t,"Reciprocal",(function(){return s.Reciprocal})),n.d(t,"Relu",(function(){return s.Relu})),n.d(t,"Reshape",(function(){return s.Reshape})),n.d(t,"ResizeNearestNeighbor",(function(){return s.ResizeNearestNeighbor})),n.d(t,"ResizeNearestNeighborGrad",(function(){return s.ResizeNearestNeighborGrad})),n.d(t,"ResizeBilinear",(function(){return s.ResizeBilinear})),n.d(t,"ResizeBilinearGrad",(function(){return s.ResizeBilinearGrad})),n.d(t,"Relu6",(function(){return s.Relu6})),n.d(t,"Reverse",(function(){return s.Reverse})),n.d(t,"Round",(function(){return s.Round})),n.d(t,"Rsqrt",(function(){return s.Rsqrt})),n.d(t,"ScatterNd",(function(){return s.ScatterNd})),n.d(t,"Select",(function(){return s.Select})),n.d(t,"Selu",(function(){return s.Selu})),n.d(t,"Slice",(function(){return s.Slice})),n.d(t,"Sin",(function(){return s.Sin})),n.d(t,"Sinh",(function(){return s.Sinh})),n.d(t,"Sign",(function(){return s.Sign})),n.d(t,"Sigmoid",(function(){return s.Sigmoid})),n.d(t,"Softplus",(function(){return s.Softplus})),n.d(t,"Sqrt",(function(){return s.Sqrt})),n.d(t,"Sum",(function(){return s.Sum})),n.d(t,"SpaceToBatchND",(function(){return s.SpaceToBatchND})),n.d(t,"SplitV",(function(){return s.SplitV})),n.d(t,"Softmax",(function(){return s.Softmax})),n.d(t,"SparseFillEmptyRows",(function(){return s.SparseFillEmptyRows})),n.d(t,"SparseReshape",(function(){return s.SparseReshape})),n.d(t,"SparseSegmentMean",(function(){return s.SparseSegmentMean})),n.d(t,"SparseSegmentSum",(function(){return s.SparseSegmentSum})),n.d(t,"SparseToDense",(function(){return s.SparseToDense})),n.d(t,"SquaredDifference",(function(){return s.SquaredDifference})),n.d(t,"Square",(function(){return s.Square})),n.d(t,"StridedSlice",(function(){return s.StridedSlice})),n.d(t,"StringNGrams",(function(){return s.StringNGrams})),n.d(t,"StringSplit",(function(){return s.StringSplit})),n.d(t,"StringToHashBucketFast",(function(){return s.StringToHashBucketFast})),n.d(t,"Sub",(function(){return s.Sub})),n.d(t,"Tan",(function(){return s.Tan})),n.d(t,"Tanh",(function(){return s.Tanh})),n.d(t,"Tile",(function(){return s.Tile})),n.d(t,"TopK",(function(){return s.TopK})),n.d(t,"Transform",(function(){return s.Transform})),n.d(t,"Transpose",(function(){return s.Transpose})),n.d(t,"Unique",(function(){return s.Unique})),n.d(t,"Unpack",(function(){return s.Unpack})),n.d(t,"UnsortedSegmentSum",(function(){return s.UnsortedSegmentSum})),n.d(t,"ZerosLike",(function(){return s.ZerosLike})),n.d(t,"Step",(function(){return s.Step})),n.d(t,"FromPixels",(function(){return s.FromPixels})),n.d(t,"RotateWithOffset",(function(){return s.RotateWithOffset})),n.d(t,"_FusedMatMul",(function(){return s._FusedMatMul})),n.d(t,"FusedConv2D",(function(){return s.FusedConv2D})),n.d(t,"FusedDepthwiseConv2D",(function(){return s.FusedDepthwiseConv2D}))},"./node_modules/@tensorflow/tfjs-core/dist/io/browser_files.js":
+/*!*********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/io/browser_files.js ***!
+ \*********************************************************************/
+/*! exports provided: BrowserDownloads, browserDownloadsRouter, browserDownloads, browserFiles */function(e,t,n){"use strict";n.r(t),n.d(t,"BrowserDownloads",(function(){return a})),n.d(t,"browserDownloadsRouter",(function(){return d})),n.d(t,"browserDownloads",(function(){return l})),n.d(t,"browserFiles",(function(){return c}));n(/*! ../flags */"./node_modules/@tensorflow/tfjs-core/dist/flags.js");var s=n(/*! ../environment */"./node_modules/@tensorflow/tfjs-core/dist/environment.js"),o=n(/*! ./io_utils */"./node_modules/@tensorflow/tfjs-core/dist/io/io_utils.js"),r=n(/*! ./router_registry */"./node_modules/@tensorflow/tfjs-core/dist/io/router_registry.js");function i(e){return new Promise((e=>setTimeout(e))).then(e)}class a{constructor(e){if(!Object(s.env)().getBool("IS_BROWSER"))throw new Error("browserDownloads() cannot proceed because the current environment is not a browser.");e.startsWith(a.URL_SCHEME)&&(e=e.slice(a.URL_SCHEME.length)),null!=e&&0!==e.length||(e="model"),this.modelJsonFileName=e+".json",this.weightDataFileName=e+".weights.bin"}async save(e){if("undefined"==typeof document)throw new Error("Browser downloads are not supported in this environment since `document` is not present");const t=window.URL.createObjectURL(new Blob([e.weightData],{type:"application/octet-stream"}));if(e.modelTopology instanceof ArrayBuffer)throw new Error("BrowserDownloads.save() does not support saving model topology in binary formats yet.");{const n=[{paths:["./"+this.weightDataFileName],weights:e.weightSpecs}],s=Object(o.getModelJSONForModelArtifacts)(e,n),r=window.URL.createObjectURL(new Blob([JSON.stringify(s)],{type:"application/json"})),a=null==this.modelJsonAnchor?document.createElement("a"):this.modelJsonAnchor;if(a.download=this.modelJsonFileName,a.href=r,await i((()=>a.dispatchEvent(new MouseEvent("click")))),null!=e.weightData){const e=null==this.weightDataAnchor?document.createElement("a"):this.weightDataAnchor;e.download=this.weightDataFileName,e.href=t,await i((()=>e.dispatchEvent(new MouseEvent("click"))))}return{modelArtifactsInfo:Object(o.getModelArtifactsInfoForJSON)(e)}}}}a.URL_SCHEME="downloads://";class u{constructor(e){if(null==e||e.length<1)throw new Error(`When calling browserFiles, at least 1 file is required, but received ${e}`);this.jsonFile=e[0],this.weightsFiles=e.slice(1)}async load(){return new Promise(((e,t)=>{const n=new FileReader;n.onload=n=>{const s=JSON.parse(n.target.result),r=s.modelTopology;if(null==r)return void t(new Error(`modelTopology field is missing from file ${this.jsonFile.name}`));if(null==s.weightsManifest)return void t(new Error(`weightManifest field is missing from file ${this.jsonFile.name}`));if(0===this.weightsFiles.length)return void e({modelTopology:r});const i=Object(o.getModelArtifactsForJSON)(s,(e=>this.loadWeights(e)));e(i)},n.onerror=e=>t(`Failed to read model topology and weights manifest JSON from file '${this.jsonFile.name}'. BrowserFiles supports loading Keras-style tf.Model artifacts only.`),n.readAsText(this.jsonFile)}))}loadWeights(e){const t=[],n=[];for(const s of e)t.push(...s.weights),n.push(...s.paths);const s=this.checkManifestAndWeightFiles(e),r=n.map((e=>this.loadWeightsFile(e,s[e])));return Promise.all(r).then((e=>[t,Object(o.concatenateArrayBuffers)(e)]))}loadWeightsFile(e,t){return new Promise(((n,s)=>{const o=new FileReader;o.onload=e=>{const t=e.target.result;n(t)},o.onerror=t=>s(`Failed to weights data from file of path '${e}'.`),o.readAsArrayBuffer(t)}))}checkManifestAndWeightFiles(e){const t=[],n=this.weightsFiles.map((e=>Object(o.basename)(e.name))),s={};for(const r of e)r.paths.forEach((e=>{const r=Object(o.basename)(e);if(-1!==t.indexOf(r))throw new Error(`Duplicate file basename found in weights manifest: '${r}'`);if(t.push(r),-1===n.indexOf(r))throw new Error(`Weight file with basename '${r}' is not provided.`);s[e]=this.weightsFiles[n.indexOf(r)]}));if(t.length!==this.weightsFiles.length)throw new Error(`Mismatch in the number of files in weights manifest (${t.length}) and the number of weight files provided (${this.weightsFiles.length}).`);return s}}const d=e=>Object(s.env)().getBool("IS_BROWSER")&&!Array.isArray(e)&&e.startsWith(a.URL_SCHEME)?l(e.slice(a.URL_SCHEME.length)):null;function l(e="model"){return new a(e)}function c(e){return new u(e)}r.IORouterRegistry.registerSaveRouter(d)},"./node_modules/@tensorflow/tfjs-core/dist/io/http.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/io/http.js ***!
+ \************************************************************/
+/*! exports provided: HTTPRequest, parseUrl, isHTTPScheme, httpRouter, http, browserHTTPRequest */function(e,t,n){"use strict";n.r(t),n.d(t,"HTTPRequest",(function(){return u})),n.d(t,"parseUrl",(function(){return d})),n.d(t,"isHTTPScheme",(function(){return l})),n.d(t,"httpRouter",(function(){return c})),n.d(t,"http",(function(){return f})),n.d(t,"browserHTTPRequest",(function(){return p}));var s=n(/*! ../environment */"./node_modules/@tensorflow/tfjs-core/dist/environment.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./io_utils */"./node_modules/@tensorflow/tfjs-core/dist/io/io_utils.js"),i=n(/*! ./router_registry */"./node_modules/@tensorflow/tfjs-core/dist/io/router_registry.js"),a=n(/*! ./weights_loader */"./node_modules/@tensorflow/tfjs-core/dist/io/weights_loader.js");class u{constructor(e,t){if(this.DEFAULT_METHOD="POST",null==t&&(t={}),this.weightPathPrefix=t.weightPathPrefix,this.onProgress=t.onProgress,this.weightUrlConverter=t.weightUrlConverter,null!=t.fetchFunc?(Object(o.assert)("function"==typeof t.fetchFunc,(()=>"Must pass a function that matches the signature of `fetch` (see https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API)")),this.fetch=t.fetchFunc):this.fetch=Object(s.env)().platform.fetch,Object(o.assert)(null!=e&&e.length>0,(()=>"URL path for http must not be null, undefined or empty.")),Array.isArray(e)&&Object(o.assert)(2===e.length,(()=>`URL paths for http must have a length of 2, (actual length is ${e.length}).`)),this.path=e,null!=t.requestInit&&null!=t.requestInit.body)throw new Error("requestInit is expected to have no pre-existing body, but has one.");this.requestInit=t.requestInit||{}}async save(e){if(e.modelTopology instanceof ArrayBuffer)throw new Error("BrowserHTTPRequest.save() does not support saving model topology in binary formats yet.");const t=Object.assign({method:this.DEFAULT_METHOD},this.requestInit);t.body=new FormData;const n=[{paths:["./model.weights.bin"],weights:e.weightSpecs}],s=Object(r.getModelJSONForModelArtifacts)(e,n);t.body.append("model.json",new Blob([JSON.stringify(s)],{type:"application/json"}),"model.json"),null!=e.weightData&&t.body.append("model.weights.bin",new Blob([e.weightData],{type:"application/octet-stream"}),"model.weights.bin");const o=await this.fetch(this.path,t);if(o.ok)return{modelArtifactsInfo:Object(r.getModelArtifactsInfoForJSON)(e),responses:[o]};throw new Error(`BrowserHTTPRequest.save() failed due to HTTP response status ${o.status}.`)}async load(){const e=await this.fetch(this.path,this.requestInit);if(!e.ok)throw new Error(`Request to ${this.path} failed with status code ${e.status}. Please verify this URL points to the model JSON of the model to load.`);let t;try{t=await e.json()}catch(e){let t=`Failed to parse model JSON of response from ${this.path}.`;throw this.path.endsWith(".pb")?t+=" Your path contains a .pb file extension. Support for .pb models have been removed in TensorFlow.js 1.0 in favor of .json models. You can re-convert your Python TensorFlow model using the TensorFlow.js 1.0 conversion scripts or you can convert your.pb models with the 'pb2json'NPM script in the tensorflow/tfjs-converter repository.":t+=" Please make sure the server is serving valid JSON for this request.",new Error(t)}const n=t.modelTopology,s=t.weightsManifest;if(null==n&&null==s)throw new Error(`The JSON from HTTP path ${this.path} contains neither model topology or manifest for weights.`);return Object(r.getModelArtifactsForJSON)(t,(e=>this.loadWeights(e)))}async loadWeights(e){const t=Array.isArray(this.path)?this.path[1]:this.path,[n,s]=d(t),o=this.weightPathPrefix||n,i=[];for(const t of e)i.push(...t.weights);const u=[],l=[];for(const t of e)for(const e of t.paths)null!=this.weightUrlConverter?l.push(this.weightUrlConverter(e)):u.push(o+e+s);this.weightUrlConverter&&u.push(...await Promise.all(l));const c=await Object(a.loadWeightsAsArrayBuffer)(u,{requestInit:this.requestInit,fetchFunc:this.fetch,onProgress:this.onProgress});return[i,Object(r.concatenateArrayBuffers)(c)]}}function d(e){const t=e.lastIndexOf("/"),n=e.lastIndexOf("?");return[e.substring(0,t)+"/",n>t?e.substring(n):""]}function l(e){return null!=e.match(u.URL_SCHEME_REGEX)}u.URL_SCHEME_REGEX=/^https?:\/\//;const c=(e,t)=>{if("undefined"==typeof fetch&&(null==t||null==t.fetchFunc))return null;{let n=!0;if(n=Array.isArray(e)?e.every((e=>l(e))):l(e),n)return f(e,t)}return null};function f(e,t){return new u(e,t)}function p(e,t){return f(e,t)}i.IORouterRegistry.registerSaveRouter(c),i.IORouterRegistry.registerLoadRouter(c)},"./node_modules/@tensorflow/tfjs-core/dist/io/indexed_db.js":
+/*!******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/io/indexed_db.js ***!
+ \******************************************************************/
+/*! exports provided: deleteDatabase, BrowserIndexedDB, indexedDBRouter, browserIndexedDB, BrowserIndexedDBManager */function(e,t,n){"use strict";n.r(t),n.d(t,"deleteDatabase",(function(){return d})),n.d(t,"BrowserIndexedDB",(function(){return f})),n.d(t,"indexedDBRouter",(function(){return p})),n.d(t,"browserIndexedDB",(function(){return m})),n.d(t,"BrowserIndexedDBManager",(function(){return h}));n(/*! ../flags */"./node_modules/@tensorflow/tfjs-core/dist/flags.js");var s=n(/*! ../environment */"./node_modules/@tensorflow/tfjs-core/dist/environment.js"),o=n(/*! ./io_utils */"./node_modules/@tensorflow/tfjs-core/dist/io/io_utils.js"),r=n(/*! ./router_registry */"./node_modules/@tensorflow/tfjs-core/dist/io/router_registry.js");
+/**
+ * @license
+ * Copyright 2018 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.
+ * =============================================================================
+ */
+const i="tensorflowjs",a="models_store",u="model_info_store";async function d(){const e=l();return new Promise(((t,n)=>{const s=e.deleteDatabase(i);s.onsuccess=()=>t(),s.onerror=e=>n(e)}))}function l(){if(!Object(s.env)().getBool("IS_BROWSER"))throw new Error("Failed to obtain IndexedDB factory because the current environmentis not a web browser.");const e="undefined"==typeof window?self:window,t=e.indexedDB||e.mozIndexedDB||e.webkitIndexedDB||e.msIndexedDB||e.shimIndexedDB;if(null==t)throw new Error("The current browser does not appear to support IndexedDB.");return t}function c(e){const t=e.result;t.createObjectStore(a,{keyPath:"modelPath"}),t.createObjectStore(u,{keyPath:"modelPath"})}class f{constructor(e){if(this.indexedDB=l(),null==e||!e)throw new Error("For IndexedDB, modelPath must not be null, undefined or empty.");this.modelPath=e}async save(e){if(e.modelTopology instanceof ArrayBuffer)throw new Error("BrowserLocalStorage.save() does not support saving model topology in binary formats yet.");return this.databaseAction(this.modelPath,e)}async load(){return this.databaseAction(this.modelPath)}databaseAction(e,t){return new Promise(((e,n)=>{const s=this.indexedDB.open(i,1);s.onupgradeneeded=()=>c(s),s.onsuccess=()=>{const r=s.result;if(null==t){const t=r.transaction(a,"readonly"),s=t.objectStore(a).get(this.modelPath);s.onsuccess=()=>{if(null==s.result)return r.close(),n(new Error(`Cannot find model with path '${this.modelPath}' in IndexedDB.`));e(s.result.modelArtifacts)},s.onerror=e=>(r.close(),n(s.error)),t.oncomplete=()=>r.close()}else{const s=Object(o.getModelArtifactsInfoForJSON)(t),i=r.transaction(u,"readwrite");let d=i.objectStore(u);const l=d.put({modelPath:this.modelPath,modelArtifactsInfo:s});let c;l.onsuccess=()=>{c=r.transaction(a,"readwrite");const o=c.objectStore(a).put({modelPath:this.modelPath,modelArtifacts:t,modelArtifactsInfo:s});o.onsuccess=()=>e({modelArtifactsInfo:s}),o.onerror=e=>{d=i.objectStore(u);const t=d.delete(this.modelPath);t.onsuccess=()=>(r.close(),n(o.error)),t.onerror=e=>(r.close(),n(o.error))}},l.onerror=e=>(r.close(),n(l.error)),i.oncomplete=()=>{null==c?r.close():c.oncomplete=()=>r.close()}}},s.onerror=e=>n(s.error)}))}}f.URL_SCHEME="indexeddb://";const p=e=>Object(s.env)().getBool("IS_BROWSER")&&!Array.isArray(e)&&e.startsWith(f.URL_SCHEME)?m(e.slice(f.URL_SCHEME.length)):null;function m(e){return new f(e)}r.IORouterRegistry.registerSaveRouter(p),r.IORouterRegistry.registerLoadRouter(p);class h{constructor(){this.indexedDB=l()}async listModels(){return new Promise(((e,t)=>{const n=this.indexedDB.open(i,1);n.onupgradeneeded=()=>c(n),n.onsuccess=()=>{const s=n.result,o=s.transaction(u,"readonly"),r=o.objectStore(u).getAll();r.onsuccess=()=>{const t={};for(const e of r.result)t[e.modelPath]=e.modelArtifactsInfo;e(t)},r.onerror=e=>(s.close(),t(r.error)),o.oncomplete=()=>s.close()},n.onerror=e=>t(n.error)}))}async removeModel(e){var t;return e=(t=e).startsWith(f.URL_SCHEME)?t.slice(f.URL_SCHEME.length):t,new Promise(((t,n)=>{const s=this.indexedDB.open(i,1);s.onupgradeneeded=()=>c(s),s.onsuccess=()=>{const o=s.result,r=o.transaction(u,"readwrite"),i=r.objectStore(u),d=i.get(e);let l;d.onsuccess=()=>{if(null==d.result)return o.close(),n(new Error(`Cannot find model with path '${e}' in IndexedDB.`));{const s=i.delete(e),r=()=>{l=o.transaction(a,"readwrite");const s=l.objectStore(a).delete(e);s.onsuccess=()=>t(d.result.modelArtifactsInfo),s.onerror=e=>n(d.error)};s.onsuccess=r,s.onerror=e=>(r(),o.close(),n(d.error))}},d.onerror=e=>(o.close(),n(d.error)),r.oncomplete=()=>{null==l?o.close():l.oncomplete=()=>o.close()}},s.onerror=e=>n(s.error)}))}}},"./node_modules/@tensorflow/tfjs-core/dist/io/io.js":
+/*!**********************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/io/io.js ***!
+ \**********************************************************/
+/*! exports provided: copyModel, listModels, moveModel, removeModel, browserFiles, browserHTTPRequest, concatenateArrayBuffers, decodeWeights, encodeWeights, fromMemory, getLoadHandlers, getModelArtifactsForJSON, getModelArtifactsInfoForJSON, getSaveHandlers, http, isHTTPScheme, loadWeights, registerLoadRouter, registerSaveRouter, weightsLoaderFactory, withSaveHandler */function(e,t,n){"use strict";n.r(t);n(/*! ./indexed_db */"./node_modules/@tensorflow/tfjs-core/dist/io/indexed_db.js"),n(/*! ./local_storage */"./node_modules/@tensorflow/tfjs-core/dist/io/local_storage.js");var s=n(/*! ./browser_files */"./node_modules/@tensorflow/tfjs-core/dist/io/browser_files.js");n.d(t,"browserFiles",(function(){return s.browserFiles}));var o=n(/*! ./http */"./node_modules/@tensorflow/tfjs-core/dist/io/http.js");n.d(t,"browserHTTPRequest",(function(){return o.browserHTTPRequest})),n.d(t,"http",(function(){return o.http})),n.d(t,"isHTTPScheme",(function(){return o.isHTTPScheme}));var r=n(/*! ./io_utils */"./node_modules/@tensorflow/tfjs-core/dist/io/io_utils.js");n.d(t,"concatenateArrayBuffers",(function(){return r.concatenateArrayBuffers})),n.d(t,"decodeWeights",(function(){return r.decodeWeights})),n.d(t,"encodeWeights",(function(){return r.encodeWeights})),n.d(t,"getModelArtifactsForJSON",(function(){return r.getModelArtifactsForJSON})),n.d(t,"getModelArtifactsInfoForJSON",(function(){return r.getModelArtifactsInfoForJSON}));var i=n(/*! ./passthrough */"./node_modules/@tensorflow/tfjs-core/dist/io/passthrough.js");n.d(t,"fromMemory",(function(){return i.fromMemory})),n.d(t,"withSaveHandler",(function(){return i.withSaveHandler}));var a=n(/*! ./router_registry */"./node_modules/@tensorflow/tfjs-core/dist/io/router_registry.js");n.d(t,"getLoadHandlers",(function(){return a.getLoadHandlers})),n.d(t,"getSaveHandlers",(function(){return a.getSaveHandlers})),n.d(t,"registerLoadRouter",(function(){return a.registerLoadRouter})),n.d(t,"registerSaveRouter",(function(){return a.registerSaveRouter}));var u=n(/*! ./weights_loader */"./node_modules/@tensorflow/tfjs-core/dist/io/weights_loader.js");n.d(t,"loadWeights",(function(){return u.loadWeights})),n.d(t,"weightsLoaderFactory",(function(){return u.weightsLoaderFactory}));var d=n(/*! ./model_management */"./node_modules/@tensorflow/tfjs-core/dist/io/model_management.js");n.d(t,"copyModel",(function(){return d.copyModel})),n.d(t,"listModels",(function(){return d.listModels})),n.d(t,"moveModel",(function(){return d.moveModel})),n.d(t,"removeModel",(function(){return d.removeModel}))},"./node_modules/@tensorflow/tfjs-core/dist/io/io_utils.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/io/io_utils.js ***!
+ \****************************************************************/
+/*! exports provided: encodeWeights, decodeWeights, concatenateTypedArrays, stringByteLength, arrayBufferToBase64String, base64StringToArrayBuffer, concatenateArrayBuffers, basename, getModelJSONForModelArtifacts, getModelArtifactsForJSON, getModelArtifactsInfoForJSON, getFloat16Decoder */function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"encodeWeights",(function(){return a})),n.d(t,"decodeWeights",(function(){return u})),n.d(t,"concatenateTypedArrays",(function(){return d})),n.d(t,"stringByteLength",(function(){return c})),n.d(t,"arrayBufferToBase64String",(function(){return f})),n.d(t,"base64StringToArrayBuffer",(function(){return p})),n.d(t,"concatenateArrayBuffers",(function(){return m})),n.d(t,"basename",(function(){return h})),n.d(t,"getModelJSONForModelArtifacts",(function(){return b})),n.d(t,"getModelArtifactsForJSON",(function(){return j})),n.d(t,"getModelArtifactsInfoForJSON",(function(){return g})),n.d(t,"getFloat16Decoder",(function(){return w}));var s=n(/*! ../ops/complex */"./node_modules/@tensorflow/tfjs-core/dist/ops/complex.js"),o=n(/*! ../ops/tensor */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor.js"),r=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),i=n(/*! ./types */"./node_modules/@tensorflow/tfjs-core/dist/io/types.js");async function a(e,t){const n=[],s=[],o=Array.isArray(e)?e.map((e=>e.name)):Object.keys(e);for(let r=0;r{const t=await a.bytes(),n=t.reduce(((e,t)=>e+t.length),0)+4*t.length,s=new Uint8Array(n);let o=0;for(let e=0;e{if(t+=e.byteLength,n.push(e.byteLength===e.buffer.byteLength?e:new e.constructor(e)),!(e instanceof Float32Array||e instanceof Int32Array||e instanceof Uint8Array))throw new Error(`Unsupported TypedArray subtype: ${e.constructor.name}`)}));const s=new Uint8Array(t);let o=0;return n.forEach((e=>{s.set(new Uint8Array(e.buffer),o),o+=e.byteLength})),s.buffer}const l="undefined"!=typeof e&&("undefined"==typeof Blob||"undefined"==typeof atob||"undefined"==typeof btoa);function c(t){return l?e.byteLength(t):new Blob([t]).size}function f(t){if(l)return e.from(t).toString("base64");const n=new Uint8Array(t);let s="";for(let e=0,t=n.length;e{t+=e.byteLength}));const n=new Uint8Array(t);let s=0;return e.forEach((e=>{n.set(new Uint8Array(e),s),s+=e.byteLength})),n.buffer}function h(e){for(e=e.trim();e.endsWith("/");)e=e.slice(0,e.length-1);const t=e.split("/");return t[t.length-1]}function b(e,t){const n={modelTopology:e.modelTopology,format:e.format,generatedBy:e.generatedBy,convertedBy:e.convertedBy,weightsManifest:t};return null!=e.signature&&(n.signature=e.signature),null!=e.userDefinedMetadata&&(n.userDefinedMetadata=e.userDefinedMetadata),null!=e.modelInitializer&&(n.modelInitializer=e.modelInitializer),null!=e.trainingConfig&&(n.trainingConfig=e.trainingConfig),n}async function j(e,t){const n={modelTopology:e.modelTopology,format:e.format,generatedBy:e.generatedBy,convertedBy:e.convertedBy};if(null!=e.trainingConfig&&(n.trainingConfig=e.trainingConfig),null!=e.weightsManifest){const[s,o]=await t(e.weightsManifest);n.weightSpecs=s,n.weightData=o}return null!=e.signature&&(n.signature=e.signature),null!=e.userDefinedMetadata&&(n.userDefinedMetadata=e.userDefinedMetadata),null!=e.modelInitializer&&(n.modelInitializer=e.modelInitializer),n}function g(e){if(e.modelTopology instanceof ArrayBuffer)throw new Error("Expected JSON model topology, received ArrayBuffer.");return{dateSaved:new Date,modelTopologyType:"JSON",modelTopologyBytes:null==e.modelTopology?0:c(JSON.stringify(e.modelTopology)),weightSpecsBytes:null==e.weightSpecs?0:c(JSON.stringify(e.weightSpecs)),weightDataBytes:null==e.weightData?0:e.weightData.byteLength}}function w(){const e=function(){const e=e=>{let t=e<<13,n=0;for(;0==(8388608&t);)n-=8388608,t<<=1;return t&=-8388609,n+=947912704,t|n},t=new Uint32Array(2048);t[0]=0;for(let n=1;n<1024;n++)t[n]=e(n);for(let e=1024;e<2048;e++)t[e]=939524096+(e-1024<<13);return t}(),t=function(){const e=new Uint32Array(64);e[0]=0,e[31]=1199570944,e[32]=2147483648,e[63]=3347054592;for(let t=1;t<31;t++)e[t]=t<<23;for(let t=33;t<63;t++)e[t]=2147483648+(t-32<<23);return e}(),n=function(){const e=new Uint32Array(64);for(let t=0;t<64;t++)e[t]=1024;return e[0]=e[32]=0,e}();return s=>{const o=new ArrayBuffer(4*s.length),r=new Uint32Array(o);for(let o=0;o>10]+(1023&i)]+t[i>>10];r[o]=a}return new Float32Array(o)}}}.call(this,n(/*! ./../../../../buffer/index.js */"./node_modules/buffer/index.js").Buffer)},"./node_modules/@tensorflow/tfjs-core/dist/io/local_storage.js":
+/*!*********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/io/local_storage.js ***!
+ \*********************************************************************/
+/*! exports provided: purgeLocalStorageArtifacts, BrowserLocalStorage, localStorageRouter, browserLocalStorage, BrowserLocalStorageManager */function(e,t,n){"use strict";n.r(t),n.d(t,"purgeLocalStorageArtifacts",(function(){return m})),n.d(t,"BrowserLocalStorage",(function(){return g})),n.d(t,"localStorageRouter",(function(){return w})),n.d(t,"browserLocalStorage",(function(){return _})),n.d(t,"BrowserLocalStorageManager",(function(){return k}));n(/*! ../flags */"./node_modules/@tensorflow/tfjs-core/dist/flags.js");var s=n(/*! ../environment */"./node_modules/@tensorflow/tfjs-core/dist/environment.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./io_utils */"./node_modules/@tensorflow/tfjs-core/dist/io/io_utils.js"),i=n(/*! ./router_registry */"./node_modules/@tensorflow/tfjs-core/dist/io/router_registry.js");
+/**
+ * @license
+ * Copyright 2018 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.
+ * =============================================================================
+ */
+const a="/",u="tensorflowjs_models",d="info",l="model_topology",c="weight_specs",f="weight_data",p="model_metadata";function m(){if(!Object(s.env)().getBool("IS_BROWSER")||"undefined"==typeof window||"undefined"==typeof window.localStorage)throw new Error("purgeLocalStorageModels() cannot proceed because local storage is unavailable in the current environment.");const e=window.localStorage,t=[];for(let n=0;no.length){e.removeItem(s);const n=j(s);-1===t.indexOf(n)&&t.push(n)}}return t}function h(e){return{info:[u,e,d].join(a),topology:[u,e,l].join(a),weightSpecs:[u,e,c].join(a),weightData:[u,e,f].join(a),modelMetadata:[u,e,p].join(a)}}function b(e){for(const t of Object.values(e))window.localStorage.removeItem(t)}function j(e){const t=e.split(a);if(t.length<3)throw new Error(`Invalid key format: ${e}`);return t.slice(1,t.length-1).join(a)}class g{constructor(e){if(!Object(s.env)().getBool("IS_BROWSER")||"undefined"==typeof window||"undefined"==typeof window.localStorage)throw new Error("The current environment does not support local storage.");if(this.LS=window.localStorage,null==e||!e)throw new Error("For local storage, modelPath must not be null, undefined or empty.");this.modelPath=e,this.keys=h(this.modelPath)}async save(e){if(e.modelTopology instanceof ArrayBuffer)throw new Error("BrowserLocalStorage.save() does not support saving model topology in binary formats yet.");{const t=JSON.stringify(e.modelTopology),n=JSON.stringify(e.weightSpecs),s=Object(r.getModelArtifactsInfoForJSON)(e);try{this.LS.setItem(this.keys.info,JSON.stringify(s)),this.LS.setItem(this.keys.topology,t),this.LS.setItem(this.keys.weightSpecs,n),this.LS.setItem(this.keys.weightData,Object(r.arrayBufferToBase64String)(e.weightData));const o={format:e.format,generatedBy:e.generatedBy,convertedBy:e.convertedBy,signature:null!=e.signature?e.signature:void 0,userDefinedMetadata:null!=e.userDefinedMetadata?e.userDefinedMetadata:void 0,modelInitializer:null!=e.modelInitializer?e.modelInitializer:void 0,trainingConfig:null!=e.trainingConfig?e.trainingConfig:void 0};return this.LS.setItem(this.keys.modelMetadata,JSON.stringify(o)),{modelArtifactsInfo:s}}catch(e){throw b(this.keys),new Error(`Failed to save model '${this.modelPath}' to local storage: size quota being exceeded is a possible cause of this failure: modelTopologyBytes=${s.modelTopologyBytes}, weightSpecsBytes=${s.weightSpecsBytes}, weightDataBytes=${s.weightDataBytes}.`)}}}async load(){const e=JSON.parse(this.LS.getItem(this.keys.info));if(null==e)throw new Error(`In local storage, there is no model with name '${this.modelPath}'`);if("JSON"!==e.modelTopologyType)throw new Error("BrowserLocalStorage does not support loading non-JSON model topology yet.");const t={},n=JSON.parse(this.LS.getItem(this.keys.topology));if(null==n)throw new Error(`In local storage, the topology of model '${this.modelPath}' is missing.`);t.modelTopology=n;const s=JSON.parse(this.LS.getItem(this.keys.weightSpecs));if(null==s)throw new Error(`In local storage, the weight specs of model '${this.modelPath}' are missing.`);t.weightSpecs=s;const o=this.LS.getItem(this.keys.modelMetadata);if(null!=o){const e=JSON.parse(o);t.format=e.format,t.generatedBy=e.generatedBy,t.convertedBy=e.convertedBy,null!=e.signature&&(t.signature=e.signature),null!=e.userDefinedMetadata&&(t.userDefinedMetadata=e.userDefinedMetadata),null!=e.modelInitializer&&(t.modelInitializer=e.modelInitializer),null!=e.trainingConfig&&(t.trainingConfig=e.trainingConfig)}const i=this.LS.getItem(this.keys.weightData);if(null==i)throw new Error(`In local storage, the binary weight values of model '${this.modelPath}' are missing.`);return t.weightData=Object(r.base64StringToArrayBuffer)(i),t}}g.URL_SCHEME="localstorage://";const w=e=>Object(s.env)().getBool("IS_BROWSER")&&!Array.isArray(e)&&e.startsWith(g.URL_SCHEME)?_(e.slice(g.URL_SCHEME.length)):null;function _(e){return new g(e)}i.IORouterRegistry.registerSaveRouter(w),i.IORouterRegistry.registerLoadRouter(w);class k{constructor(){Object(o.assert)(Object(s.env)().getBool("IS_BROWSER"),(()=>"Current environment is not a web browser")),Object(o.assert)("undefined"==typeof window||"undefined"!=typeof window.localStorage,(()=>"Current browser does not appear to support localStorage")),this.LS=window.localStorage}async listModels(){const e={},t=u+a,n=a+d;for(let s=0;s"scheme must not be undefined or null.")),e.endsWith(r)&&(e=e.slice(0,e.indexOf(r))),Object(s.assert)(e.length>0,(()=>"scheme must not be an empty string."));const n=i.getInstance();Object(s.assert)(null==n.managers[e],(()=>`A model store manager is already registered for scheme '${e}'.`)),n.managers[e]=t}static getManager(e){const t=this.getInstance().managers[e];if(null==t)throw new Error(`Cannot find model manager for scheme '${e}'`);return t}static getSchemes(){return Object.keys(this.getInstance().managers)}}function a(e){if(-1===e.indexOf(r))throw new Error(`The url string provided does not contain a scheme. Supported schemes are: ${i.getSchemes().join(",")}`);return{scheme:e.split(r)[0],path:e.split(r)[1]}}async function u(e,t,n=!1){Object(s.assert)(e!==t,(()=>`Old path and new path are the same: '${e}'`));const r=o.IORouterRegistry.getLoadHandlers(e);Object(s.assert)(r.length>0,(()=>`Copying failed because no load handler is found for source URL ${e}.`)),Object(s.assert)(r.length<2,(()=>`Copying failed because more than one (${r.length}) load handlers for source URL ${e}.`));const u=r[0],d=o.IORouterRegistry.getSaveHandlers(t);Object(s.assert)(d.length>0,(()=>`Copying failed because no save handler is found for destination URL ${t}.`)),Object(s.assert)(d.length<2,(()=>`Copying failed because more than one (${r.length}) save handlers for destination URL ${t}.`));const l=d[0],c=a(e).scheme,f=a(e).path,p=c===a(e).scheme,m=await u.load();n&&p&&await i.getManager(c).removeModel(f);const h=await l.save(m);return n&&!p&&await i.getManager(c).removeModel(f),h.modelArtifactsInfo}async function d(){const e=i.getSchemes(),t={};for(const n of e){const e=await i.getManager(n).listModels();for(const s in e){t[n+r+s]=e[s]}}return t}async function l(e){const t=a(e);return i.getManager(t.scheme).removeModel(t.path)}async function c(e,t){return u(e,t,!1)}async function f(e,t){return u(e,t,!0)}},"./node_modules/@tensorflow/tfjs-core/dist/io/passthrough.js":
+/*!*******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/io/passthrough.js ***!
+ \*******************************************************************/
+/*! exports provided: fromMemory, withSaveHandler */function(e,t,n){"use strict";n.r(t),n.d(t,"fromMemory",(function(){return r})),n.d(t,"withSaveHandler",(function(){return i}));
+/**
+ * @license
+ * Copyright 2018 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.
+ * =============================================================================
+ */
+class s{constructor(e){this.modelArtifacts=e}async load(){return this.modelArtifacts}}class o{constructor(e){this.saveHandler=e}async save(e){return this.saveHandler(e)}}function r(e,t,n,o){if(1===arguments.length){return null!=e.modelTopology||null!=e.weightSpecs?new s(e):(console.warn("Please call tf.io.fromMemory() with only one argument. The argument should be of type ModelArtifacts. The multi-argument signature of tf.io.fromMemory() has been deprecated and will be removed in a future release."),new s({modelTopology:e}))}return console.warn("Please call tf.io.fromMemory() with only one argument. The argument should be of type ModelArtifacts. The multi-argument signature of tf.io.fromMemory() has been deprecated and will be removed in a future release."),new s({modelTopology:e,weightSpecs:t,weightData:n,trainingConfig:o})}function i(e){return new o(e)}},"./node_modules/@tensorflow/tfjs-core/dist/io/progress.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/io/progress.js ***!
+ \****************************************************************/
+/*! exports provided: monitorPromisesProgress */function(e,t,n){"use strict";n.r(t),n.d(t,"monitorPromisesProgress",(function(){return o}));var s=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");
+/**
+ * @license
+ * Copyright 2019 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 o(e,t,n,o){!function(e){Object(s.assert)(null!=e&&Array.isArray(e)&&e.length>0,(()=>"promises must be a none empty array"))}(e),function(e,t){Object(s.assert)(e>=0&&e<=1,(()=>`Progress fraction must be in range [0, 1], but got startFraction ${e}`)),Object(s.assert)(t>=0&&t<=1,(()=>`Progress fraction must be in range [0, 1], but got endFraction ${t}`)),Object(s.assert)(t>=e,(()=>`startFraction must be no more than endFraction, but got startFraction ${e} and endFraction ${t}`))}(n=null==n?0:n,o=null==o?1:o);let r=0;return Promise.all(e.map((s=>(s.then((s=>{const i=n+ ++r/e.length*(o-n);return t(i),s})),s))))}},"./node_modules/@tensorflow/tfjs-core/dist/io/router_registry.js":
+/*!***********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/io/router_registry.js ***!
+ \***********************************************************************/
+/*! exports provided: IORouterRegistry, registerSaveRouter, registerLoadRouter, getSaveHandlers, getLoadHandlers */function(e,t,n){"use strict";n.r(t),n.d(t,"IORouterRegistry",(function(){return s})),n.d(t,"registerSaveRouter",(function(){return o})),n.d(t,"registerLoadRouter",(function(){return r})),n.d(t,"getSaveHandlers",(function(){return i})),n.d(t,"getLoadHandlers",(function(){return a}));
+/**
+ * @license
+ * Copyright 2018 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.
+ * =============================================================================
+ */
+class s{constructor(){this.saveRouters=[],this.loadRouters=[]}static getInstance(){return null==s.instance&&(s.instance=new s),s.instance}static registerSaveRouter(e){s.getInstance().saveRouters.push(e)}static registerLoadRouter(e){s.getInstance().loadRouters.push(e)}static getSaveHandlers(e){return s.getHandlers(e,"save")}static getLoadHandlers(e,t){return s.getHandlers(e,"load",t)}static getHandlers(e,t,n){const o=[];return("load"===t?s.getInstance().loadRouters:s.getInstance().saveRouters).forEach((t=>{const s=t(e,n);null!==s&&o.push(s)})),o}}const o=e=>s.registerSaveRouter(e),r=e=>s.registerLoadRouter(e),i=e=>s.getSaveHandlers(e),a=(e,t)=>s.getLoadHandlers(e,t)},"./node_modules/@tensorflow/tfjs-core/dist/io/types.js":
+/*!*************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/io/types.js ***!
+ \*************************************************************/
+/*! exports provided: DTYPE_VALUE_SIZE_MAP */function(e,t,n){"use strict";n.r(t),n.d(t,"DTYPE_VALUE_SIZE_MAP",(function(){return s}));
+/**
+ * @license
+ * Copyright 2018 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.
+ * =============================================================================
+ */
+const s={float32:4,float16:2,int32:4,uint16:2,uint8:1,bool:1,complex64:8}},"./node_modules/@tensorflow/tfjs-core/dist/io/weights_loader.js":
+/*!**********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/io/weights_loader.js ***!
+ \**********************************************************************/
+/*! exports provided: loadWeightsAsArrayBuffer, loadWeights, weightsLoaderFactory */function(e,t,n){"use strict";n.r(t),n.d(t,"loadWeightsAsArrayBuffer",(function(){return u})),n.d(t,"loadWeights",(function(){return d})),n.d(t,"weightsLoaderFactory",(function(){return l}));var s=n(/*! ../environment */"./node_modules/@tensorflow/tfjs-core/dist/environment.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./io_utils */"./node_modules/@tensorflow/tfjs-core/dist/io/io_utils.js"),i=n(/*! ./progress */"./node_modules/@tensorflow/tfjs-core/dist/io/progress.js"),a=n(/*! ./types */"./node_modules/@tensorflow/tfjs-core/dist/io/types.js");
+/**
+ * @license
+ * Copyright 2018 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.
+ * =============================================================================
+ */
+async function u(e,t){null==t&&(t={});const n=null==t.fetchFunc?Object(s.env)().platform.fetch:t.fetchFunc,o=e.map((e=>n(e,t.requestInit,{isBinary:!0}))),r=(null==t.onProgress?await Promise.all(o):await Object(i.monitorPromisesProgress)(o,t.onProgress,0,.5)).map((e=>e.arrayBuffer()));return null==t.onProgress?await Promise.all(r):await Object(i.monitorPromisesProgress)(r,t.onProgress,.5,1)}async function d(e,t="",n,s){return l((e=>u(e,{requestInit:s})))(e,t,n)}function l(e){return async(t,n="",s)=>{const i=t.map((()=>!1)),u={},d=null!=s?s.map((()=>!1)):[],l=[];if(t.forEach(((e,t)=>{let n=0;e.weights.forEach((e=>{const r="quantization"in e?e.quantization.dtype:e.dtype,c=a.DTYPE_VALUE_SIZE_MAP[r]*o.sizeFromShape(e.shape),f=()=>{i[t]=!0,null==u[t]&&(u[t]=[]),u[t].push({manifestEntry:e,groupOffset:n,sizeBytes:c})};null!=s?s.forEach(((t,n)=>{t===e.name&&(f(),d[n]=!0)})):f(),l.push(e.name),n+=c}))})),!d.every((e=>e))){const e=s.filter(((e,t)=>!d[t]));throw new Error(`Could not find weights in manifest with names: ${e.join(", ")}. \nManifest JSON has weights with names: ${l.join(", ")}.`)}const c=i.reduce(((e,t,n)=>(t&&e.push(n),e)),[]),f=[];c.forEach((e=>{t[e].paths.forEach((e=>{const t=n+(n.endsWith("/")?"":"/")+e;f.push(t)}))}));const p=await e(f),m={};let h=0;return c.forEach((e=>{const n=t[e].paths.length;let s=0;for(let e=0;e{const t=o.slice(e.groupOffset,e.groupOffset+e.sizeBytes),n=Object(r.decodeWeights)(t,[e.manifestEntry]);for(const e in n)m[e]=n[e]})),h+=n})),m}}},"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js":
+/*!*****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js ***!
+ \*****************************************************************/
+/*! exports provided: Abs, Acos, Acosh, Add, AddN, All, Any, ArgMax, ArgMin, Asin, Asinh, Atan, Atanh, Atan2, AvgPool, AvgPoolGrad, AvgPool3D, AvgPool3DGrad, BatchMatMul, BatchToSpaceND, Bincount, BroadcastTo, Cast, Ceil, ClipByValue, Complex, ComplexAbs, Concat, Conv2D, Conv2DBackpropFilter, Conv2DBackpropInput, Conv3D, Conv3DBackpropFilterV2, Conv3DBackpropInputV2, Cos, Cosh, Cumsum, CropAndResize, DenseBincount, DepthToSpace, DepthwiseConv2dNative, DepthwiseConv2dNativeBackpropFilter, DepthwiseConv2dNativeBackpropInput, Diag, Dilation2D, Dilation2DBackpropInput, Dilation2DBackpropFilter, RealDiv, Einsum, Elu, EluGrad, Erf, Equal, Exp, ExpandDims, Expm1, FFT, Fill, FlipLeftRight, Floor, FloorDiv, FusedBatchNorm, GatherV2, GatherNd, Greater, GreaterEqual, Identity, IFFT, Imag, IsFinite, IsInf, IsNan, LeakyRelu, Less, LessEqual, LinSpace, Log, Log1p, LogicalAnd, LogicalNot, LogicalOr, LogSoftmax, LRN, LRNGrad, Max, Maximum, MaxPool, MaxPoolGrad, MaxPool3D, MaxPool3DGrad, MaxPoolWithArgmax, Mean, Min, Minimum, MirrorPad, Mod, Multinomial, Multiply, Neg, NotEqual, NonMaxSuppressionV3, NonMaxSuppressionV4, NonMaxSuppressionV5, OnesLike, OneHot, Pack, PadV2, Pool, Pow, Prelu, Prod, Range, Real, Reciprocal, Relu, Reshape, ResizeNearestNeighbor, ResizeNearestNeighborGrad, ResizeBilinear, ResizeBilinearGrad, Relu6, Reverse, Round, Rsqrt, ScatterNd, Select, Selu, Slice, Sin, Sinh, Sign, Sigmoid, Softplus, Sqrt, Sum, SpaceToBatchND, SplitV, Softmax, SparseFillEmptyRows, SparseReshape, SparseSegmentMean, SparseSegmentSum, SparseToDense, SquaredDifference, Square, StridedSlice, StringNGrams, StringSplit, StringToHashBucketFast, Sub, Tan, Tanh, Tile, TopK, Transform, Transpose, Unique, Unpack, UnsortedSegmentSum, ZerosLike, Step, FromPixels, RotateWithOffset, _FusedMatMul, FusedConv2D, FusedDepthwiseConv2D */function(e,t,n){"use strict";n.r(t),n.d(t,"Abs",(function(){return s})),n.d(t,"Acos",(function(){return o})),n.d(t,"Acosh",(function(){return r})),n.d(t,"Add",(function(){return i})),n.d(t,"AddN",(function(){return a})),n.d(t,"All",(function(){return u})),n.d(t,"Any",(function(){return d})),n.d(t,"ArgMax",(function(){return l})),n.d(t,"ArgMin",(function(){return c})),n.d(t,"Asin",(function(){return f})),n.d(t,"Asinh",(function(){return p})),n.d(t,"Atan",(function(){return m})),n.d(t,"Atanh",(function(){return h})),n.d(t,"Atan2",(function(){return b})),n.d(t,"AvgPool",(function(){return j})),n.d(t,"AvgPoolGrad",(function(){return g})),n.d(t,"AvgPool3D",(function(){return w})),n.d(t,"AvgPool3DGrad",(function(){return _})),n.d(t,"BatchMatMul",(function(){return k})),n.d(t,"BatchToSpaceND",(function(){return v})),n.d(t,"Bincount",(function(){return x})),n.d(t,"BroadcastTo",(function(){return y})),n.d(t,"Cast",(function(){return O})),n.d(t,"Ceil",(function(){return I})),n.d(t,"ClipByValue",(function(){return C})),n.d(t,"Complex",(function(){return S})),n.d(t,"ComplexAbs",(function(){return T})),n.d(t,"Concat",(function(){return N})),n.d(t,"Conv2D",(function(){return E})),n.d(t,"Conv2DBackpropFilter",(function(){return A})),n.d(t,"Conv2DBackpropInput",(function(){return R})),n.d(t,"Conv3D",(function(){return F})),n.d(t,"Conv3DBackpropFilterV2",(function(){return M})),n.d(t,"Conv3DBackpropInputV2",(function(){return $})),n.d(t,"Cos",(function(){return D})),n.d(t,"Cosh",(function(){return P})),n.d(t,"Cumsum",(function(){return B})),n.d(t,"CropAndResize",(function(){return L})),n.d(t,"DenseBincount",(function(){return z})),n.d(t,"DepthToSpace",(function(){return G})),n.d(t,"DepthwiseConv2dNative",(function(){return U})),n.d(t,"DepthwiseConv2dNativeBackpropFilter",(function(){return W})),n.d(t,"DepthwiseConv2dNativeBackpropInput",(function(){return V})),n.d(t,"Diag",(function(){return q})),n.d(t,"Dilation2D",(function(){return H})),n.d(t,"Dilation2DBackpropInput",(function(){return K})),n.d(t,"Dilation2DBackpropFilter",(function(){return X})),n.d(t,"RealDiv",(function(){return Y})),n.d(t,"Einsum",(function(){return Z})),n.d(t,"Elu",(function(){return Q})),n.d(t,"EluGrad",(function(){return J})),n.d(t,"Erf",(function(){return ee})),n.d(t,"Equal",(function(){return te})),n.d(t,"Exp",(function(){return ne})),n.d(t,"ExpandDims",(function(){return se})),n.d(t,"Expm1",(function(){return oe})),n.d(t,"FFT",(function(){return re})),n.d(t,"Fill",(function(){return ie})),n.d(t,"FlipLeftRight",(function(){return ae})),n.d(t,"Floor",(function(){return ue})),n.d(t,"FloorDiv",(function(){return de})),n.d(t,"FusedBatchNorm",(function(){return le})),n.d(t,"GatherV2",(function(){return ce})),n.d(t,"GatherNd",(function(){return fe})),n.d(t,"Greater",(function(){return pe})),n.d(t,"GreaterEqual",(function(){return me})),n.d(t,"Identity",(function(){return he})),n.d(t,"IFFT",(function(){return be})),n.d(t,"Imag",(function(){return je})),n.d(t,"IsFinite",(function(){return ge})),n.d(t,"IsInf",(function(){return we})),n.d(t,"IsNan",(function(){return _e})),n.d(t,"LeakyRelu",(function(){return ke})),n.d(t,"Less",(function(){return ve})),n.d(t,"LessEqual",(function(){return xe})),n.d(t,"LinSpace",(function(){return ye})),n.d(t,"Log",(function(){return Oe})),n.d(t,"Log1p",(function(){return Ie})),n.d(t,"LogicalAnd",(function(){return Ce})),n.d(t,"LogicalNot",(function(){return Se})),n.d(t,"LogicalOr",(function(){return Te})),n.d(t,"LogSoftmax",(function(){return Ne})),n.d(t,"LRN",(function(){return Ee})),n.d(t,"LRNGrad",(function(){return Ae})),n.d(t,"Max",(function(){return Re})),n.d(t,"Maximum",(function(){return Fe})),n.d(t,"MaxPool",(function(){return Me})),n.d(t,"MaxPoolGrad",(function(){return $e})),n.d(t,"MaxPool3D",(function(){return De})),n.d(t,"MaxPool3DGrad",(function(){return Pe})),n.d(t,"MaxPoolWithArgmax",(function(){return Be})),n.d(t,"Mean",(function(){return Le})),n.d(t,"Min",(function(){return ze})),n.d(t,"Minimum",(function(){return Ge})),n.d(t,"MirrorPad",(function(){return Ue})),n.d(t,"Mod",(function(){return We})),n.d(t,"Multinomial",(function(){return Ve})),n.d(t,"Multiply",(function(){return qe})),n.d(t,"Neg",(function(){return He})),n.d(t,"NotEqual",(function(){return Ke})),n.d(t,"NonMaxSuppressionV3",(function(){return Xe})),n.d(t,"NonMaxSuppressionV4",(function(){return Ye})),n.d(t,"NonMaxSuppressionV5",(function(){return Ze})),n.d(t,"OnesLike",(function(){return Qe})),n.d(t,"OneHot",(function(){return Je})),n.d(t,"Pack",(function(){return et})),n.d(t,"PadV2",(function(){return tt})),n.d(t,"Pool",(function(){return nt})),n.d(t,"Pow",(function(){return st})),n.d(t,"Prelu",(function(){return ot})),n.d(t,"Prod",(function(){return rt})),n.d(t,"Range",(function(){return it})),n.d(t,"Real",(function(){return at})),n.d(t,"Reciprocal",(function(){return ut})),n.d(t,"Relu",(function(){return dt})),n.d(t,"Reshape",(function(){return lt})),n.d(t,"ResizeNearestNeighbor",(function(){return ct})),n.d(t,"ResizeNearestNeighborGrad",(function(){return ft})),n.d(t,"ResizeBilinear",(function(){return pt})),n.d(t,"ResizeBilinearGrad",(function(){return mt})),n.d(t,"Relu6",(function(){return ht})),n.d(t,"Reverse",(function(){return bt})),n.d(t,"Round",(function(){return jt})),n.d(t,"Rsqrt",(function(){return gt})),n.d(t,"ScatterNd",(function(){return wt})),n.d(t,"Select",(function(){return _t})),n.d(t,"Selu",(function(){return kt})),n.d(t,"Slice",(function(){return vt})),n.d(t,"Sin",(function(){return xt})),n.d(t,"Sinh",(function(){return yt})),n.d(t,"Sign",(function(){return Ot})),n.d(t,"Sigmoid",(function(){return It})),n.d(t,"Softplus",(function(){return Ct})),n.d(t,"Sqrt",(function(){return St})),n.d(t,"Sum",(function(){return Tt})),n.d(t,"SpaceToBatchND",(function(){return Nt})),n.d(t,"SplitV",(function(){return Et})),n.d(t,"Softmax",(function(){return At})),n.d(t,"SparseFillEmptyRows",(function(){return Rt})),n.d(t,"SparseReshape",(function(){return Ft})),n.d(t,"SparseSegmentMean",(function(){return Mt})),n.d(t,"SparseSegmentSum",(function(){return $t})),n.d(t,"SparseToDense",(function(){return Dt})),n.d(t,"SquaredDifference",(function(){return Pt})),n.d(t,"Square",(function(){return Bt})),n.d(t,"StridedSlice",(function(){return Lt})),n.d(t,"StringNGrams",(function(){return zt})),n.d(t,"StringSplit",(function(){return Gt})),n.d(t,"StringToHashBucketFast",(function(){return Ut})),n.d(t,"Sub",(function(){return Wt})),n.d(t,"Tan",(function(){return Vt})),n.d(t,"Tanh",(function(){return qt})),n.d(t,"Tile",(function(){return Ht})),n.d(t,"TopK",(function(){return Kt})),n.d(t,"Transform",(function(){return Xt})),n.d(t,"Transpose",(function(){return Yt})),n.d(t,"Unique",(function(){return Zt})),n.d(t,"Unpack",(function(){return Qt})),n.d(t,"UnsortedSegmentSum",(function(){return Jt})),n.d(t,"ZerosLike",(function(){return en})),n.d(t,"Step",(function(){return tn})),n.d(t,"FromPixels",(function(){return nn})),n.d(t,"RotateWithOffset",(function(){return sn})),n.d(t,"_FusedMatMul",(function(){return on})),n.d(t,"FusedConv2D",(function(){return rn})),n.d(t,"FusedDepthwiseConv2D",(function(){return an}));const s="Abs",o="Acos",r="Acosh",i="Add",a="AddN",u="All",d="Any",l="ArgMax",c="ArgMin",f="Asin",p="Asinh",m="Atan",h="Atanh",b="Atan2",j="AvgPool",g="AvgPoolGrad",w="AvgPool3D",_="AvgPool3DGrad",k="BatchMatMul",v="BatchToSpaceND",x="Bincount",y="BroadcastTo",O="Cast",I="Ceil",C="ClipByValue",S="Complex",T="ComplexAbs",N="Concat",E="Conv2D",A="Conv2DBackpropFilter",R="Conv2DBackpropInput",F="Conv3D",M="Conv3DBackpropFilterV2",$="Conv3DBackpropInputV2",D="Cos",P="Cosh",B="Cumsum",L="CropAndResize",z="DenseBincount",G="DepthToSpace",U="DepthwiseConv2dNative",W="DepthwiseConv2dNativeBackpropFilter",V="DepthwiseConv2dNativeBackpropInput",q="Diag",H="Dilation2D",K="Dilation2DBackpropInput",X="Dilation2DBackpropFilter",Y="RealDiv",Z="Einsum",Q="Elu",J="EluGrad",ee="Erf",te="Equal",ne="Exp",se="ExpandDims",oe="Expm1",re="FFT",ie="Fill",ae="FlipLeftRight",ue="Floor",de="FloorDiv",le="FusedBatchNorm",ce="GatherV2",fe="GatherNd",pe="Greater",me="GreaterEqual",he="Identity",be="IFFT",je="Imag",ge="IsFinite",we="IsInf",_e="IsNan",ke="LeakyRelu",ve="Less",xe="LessEqual",ye="LinSpace",Oe="Log",Ie="Log1p",Ce="LogicalAnd",Se="LogicalNot",Te="LogicalOr",Ne="LogSoftmax",Ee="LRN",Ae="LRNGrad",Re="Max",Fe="Maximum",Me="MaxPool",$e="MaxPoolGrad",De="MaxPool3D",Pe="MaxPool3DGrad",Be="MaxPoolWithArgmax",Le="Mean",ze="Min",Ge="Minimum",Ue="MirrorPad",We="Mod",Ve="Multinomial",qe="Multiply",He="Neg",Ke="NotEqual",Xe="NonMaxSuppressionV3",Ye="NonMaxSuppressionV4",Ze="NonMaxSuppressionV5",Qe="OnesLike",Je="OneHot",et="Pack",tt="PadV2",nt="Pool",st="Pow",ot="Prelu",rt="Prod",it="Range",at="Real",ut="Reciprocal",dt="Relu",lt="Reshape",ct="ResizeNearestNeighbor",ft="ResizeNearestNeighborGrad",pt="ResizeBilinear",mt="ResizeBilinearGrad",ht="Relu6",bt="Reverse",jt="Round",gt="Rsqrt",wt="ScatterNd",_t="Select",kt="Selu",vt="Slice",xt="Sin",yt="Sinh",Ot="Sign",It="Sigmoid",Ct="Softplus",St="Sqrt",Tt="Sum",Nt="SpaceToBatchND",Et="SplitV",At="Softmax",Rt="SparseFillEmptyRows",Ft="SparseReshape",Mt="SparseSegmentMean",$t="SparseSegmentSum",Dt="SparseToDense",Pt="SquaredDifference",Bt="Square",Lt="StridedSlice",zt="StringNGrams",Gt="StringSplit",Ut="StringToHashBucketFast",Wt="Sub",Vt="Tan",qt="Tanh",Ht="Tile",Kt="TopK",Xt="Transform",Yt="Transpose",Zt="Unique",Qt="Unpack",Jt="UnsortedSegmentSum",en="ZerosLike",tn="Step",nn="FromPixels",sn="RotateWithOffset",on="_FusedMatMul",rn="FusedConv2D",an="FusedDepthwiseConv2D"},"./node_modules/@tensorflow/tfjs-core/dist/kernel_registry.js":
+/*!********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/kernel_registry.js ***!
+ \********************************************************************/
+/*! exports provided: getKernel, getGradient, getKernelsForBackend, registerKernel, registerGradient, unregisterKernel, unregisterGradient, copyRegisteredKernels */function(e,t,n){"use strict";n.r(t),n.d(t,"getKernel",(function(){return a})),n.d(t,"getGradient",(function(){return u})),n.d(t,"getKernelsForBackend",(function(){return d})),n.d(t,"registerKernel",(function(){return l})),n.d(t,"registerGradient",(function(){return c})),n.d(t,"unregisterKernel",(function(){return f})),n.d(t,"unregisterGradient",(function(){return p})),n.d(t,"copyRegisteredKernels",(function(){return m}));var s=n(/*! ./environment */"./node_modules/@tensorflow/tfjs-core/dist/environment.js"),o=n(/*! ./global_util */"./node_modules/@tensorflow/tfjs-core/dist/global_util.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+const r=Object(o.getGlobal)("kernelRegistry",(()=>new Map)),i=Object(o.getGlobal)("gradRegistry",(()=>new Map));function a(e,t){const n=h(e,t);return r.get(n)}function u(e){return i.get(e)}function d(e){const t=r.entries(),n=[];for(;;){const{done:s,value:o}=t.next();if(s)break;const[r,i]=o,[a]=r.split("_");a===e&&n.push(i)}return n}function l(e){const{kernelName:t,backendName:n}=e,s=h(t,n);r.has(s)&&console.warn(`The kernel '${t}' for backend '${n}' is already registered`),r.set(s,e)}function c(e){const{kernelName:t}=e;i.has(t)&&Object(s.env)().getBool("DEBUG")&&console.warn(`Overriding the gradient for '${t}'`),i.set(t,e)}function f(e,t){const n=h(e,t);if(!r.has(n))throw new Error(`The kernel '${e}' for backend '${t}' is not registered`);r.delete(n)}function p(e){if(!i.has(e))throw new Error(`The gradient '${e}' for backend is not registered`);i.delete(e)}function m(e,t){d(e).forEach((e=>{l(Object.assign({},e,{backendName:t}))}))}function h(e,t){return`${t}_${e}`}},"./node_modules/@tensorflow/tfjs-core/dist/log.js":
+/*!********************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/log.js ***!
+ \********************************************************/
+/*! exports provided: warn, log */function(e,t,n){"use strict";n.r(t),n.d(t,"warn",(function(){return o})),n.d(t,"log",(function(){return r}));var s=n(/*! ./environment */"./node_modules/@tensorflow/tfjs-core/dist/environment.js");
+/**
+ * @license
+ * Copyright 2018 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 o(...e){Object(s.env)().getBool("IS_TEST")||console.warn(...e)}function r(...e){Object(s.env)().getBool("IS_TEST")||console.log(...e)}},"./node_modules/@tensorflow/tfjs-core/dist/math.js":
+/*!*********************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/math.js ***!
+ \*********************************************************/
+/*! exports provided: confusionMatrix */function(e,t,n){"use strict";n.r(t);var s=n(/*! ./ops/confusion_matrix */"./node_modules/@tensorflow/tfjs-core/dist/ops/confusion_matrix.js");n.d(t,"confusionMatrix",(function(){return s.confusionMatrix}))},"./node_modules/@tensorflow/tfjs-core/dist/ops/abs.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/abs.js ***!
+ \************************************************************/
+/*! exports provided: abs */function(e,t,n){"use strict";n.r(t),n.d(t,"abs",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({abs_:
+/**
+ * @license
+ * Copyright 2018 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){const t=Object(r.convertToTensor)(e,"x","abs");if("complex64"===t.dtype){const e={x:t};return s.ENGINE.runKernel(o.ComplexAbs,e)}{const e={x:t};return s.ENGINE.runKernel(o.Abs,e)}}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/acos.js":
+/*!*************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/acos.js ***!
+ \*************************************************************/
+/*! exports provided: acos */function(e,t,n){"use strict";n.r(t),n.d(t,"acos",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({acos_:
+/**
+ * @license
+ * Copyright 2018 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){const t={x:Object(r.convertToTensor)(e,"x","acos")};return s.ENGINE.runKernel(o.Acos,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/acosh.js":
+/*!**************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/acosh.js ***!
+ \**************************************************************/
+/*! exports provided: acosh */function(e,t,n){"use strict";n.r(t),n.d(t,"acosh",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({acosh_:
+/**
+ * @license
+ * Copyright 2018 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){const t={x:Object(r.convertToTensor)(e,"x","acosh")};return s.ENGINE.runKernel(o.Acosh,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/add.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/add.js ***!
+ \************************************************************/
+/*! exports provided: add */function(e,t,n){"use strict";n.r(t),n.d(t,"add",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util.js"),i=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({add_:
+/**
+ * @license
+ * Copyright 2020 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,t){let n=Object(i.convertToTensor)(e,"a","add"),a=Object(i.convertToTensor)(t,"b","add");[n,a]=Object(r.makeTypesMatch)(n,a);const u={a:n,b:a};return s.ENGINE.runKernel(o.Add,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/add_n.js":
+/*!**************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/add_n.js ***!
+ \**************************************************************/
+/*! exports provided: addN */function(e,t,n){"use strict";n.r(t),n.d(t,"addN",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({addN_:
+/**
+ * @license
+ * Copyright 2020 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){i.assert(Array.isArray(e),(()=>"The argument passed to tf.addN() must be a list of tensors")),i.assert(e.length>=1,(()=>`Must pass at least one tensor to tf.addN(), but got ${e.length}`));const t=e.map(((e,t)=>Object(r.convertToTensor)(e,`tensors${t}`,"addN"))),n=t[0];t.forEach((e=>{if(e.dtype!==n.dtype)throw new Error("All tensors passed to tf.addN() must have the same dtype")})),t.forEach((e=>{if(!i.arraysEqual(e.shape,n.shape))throw new Error("All tensors passed to tf.addN() must have the same shape")}));const a=t;return s.ENGINE.runKernel(o.AddN,a)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/all.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/all.js ***!
+ \************************************************************/
+/*! exports provided: all */function(e,t,n){"use strict";n.r(t),n.d(t,"all",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({all_:
+/**
+ * @license
+ * Copyright 2020 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,t=null,n=!1){const i={x:Object(r.convertToTensor)(e,"x","all","bool")},a={axis:t,keepDims:n};return s.ENGINE.runKernel(o.All,i,a)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/any.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/any.js ***!
+ \************************************************************/
+/*! exports provided: any */function(e,t,n){"use strict";n.r(t),n.d(t,"any",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({any_:
+/**
+ * @license
+ * Copyright 2020 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,t=null,n=!1){const i={x:Object(r.convertToTensor)(e,"x","any","bool")},a={axis:t,keepDims:n};return s.ENGINE.runKernel(o.Any,i,a)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/arg_max.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/arg_max.js ***!
+ \****************************************************************/
+/*! exports provided: argMax */function(e,t,n){"use strict";n.r(t),n.d(t,"argMax",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({argMax_:
+/**
+ * @license
+ * Copyright 2020 Google Inc. 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,t=0){const n={x:Object(r.convertToTensor)(e,"x","argMax")},i={axis:t};return s.ENGINE.runKernel(o.ArgMax,n,i)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/arg_min.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/arg_min.js ***!
+ \****************************************************************/
+/*! exports provided: argMin */function(e,t,n){"use strict";n.r(t),n.d(t,"argMin",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({argMin_:
+/**
+ * @license
+ * Copyright 2020 Google Inc. 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,t=0){const n={x:Object(r.convertToTensor)(e,"x","argMin")},i={axis:t};return s.ENGINE.runKernel(o.ArgMin,n,i)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/array_ops_util.js":
+/*!***********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/array_ops_util.js ***!
+ \***********************************************************************/
+/*! exports provided: getReshaped, getPermuted, getReshapedPermuted, getSliceBeginCoords, getSliceSize */function(e,t,n){"use strict";
+/**
+ * @license
+ * Copyright 2018 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 s(e,t,n,s=!0){let o=[];if(s)o=o.concat(t.slice(0)),o.push(e[0]/n),o=o.concat(e.slice(1));else{o=o.concat(e[0]);const n=t.length;for(let s=0;s=2*t+1||s%2==1?o.push(s):n.push(s);s.push(...n),s.push(0),s.push(...o)}return s}function r(e,t,n,s=!0){const o=[];s?o.push(e[0]/n):o.push(e[0]*n);for(let n=1;n`Error in avgPool: Either strides or dilations must be 1. Got strides ${n} and dilations '1'`));let p=f,m=!1;3===f.rank&&(m=!0,p=Object(l.reshape)(f,[1,f.shape[0],f.shape[1],f.shape[2]])),i.assert(4===p.rank,(()=>`Error in avgPool: x must be rank 4 but got rank ${p.rank}.`)),null!=c&&i.assert(i.isInt(d),(()=>`Error in avgPool: pad must be an integer when using, dimRoundingMode ${c} but got pad ${d}.`));const h={x:p},b={filterSize:t,strides:n,pad:d,dimRoundingMode:c};let j=s.ENGINE.runKernel(o.AvgPool,h,b);return j=Object(a.cast)(j,f.dtype),m?Object(l.reshape)(j,[j.shape[1],j.shape[2],j.shape[3]]):j}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/avg_pool_3d.js":
+/*!********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/avg_pool_3d.js ***!
+ \********************************************************************/
+/*! exports provided: avgPool3d */function(e,t,n){"use strict";n.r(t),n.d(t,"avgPool3d",(function(){return l}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./cast */"./node_modules/@tensorflow/tfjs-core/dist/ops/cast.js"),u=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),d=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const l=Object(u.op)({avgPool3d_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,u,l,c="NDHWC"){const f=Object(r.convertToTensor)(e,"x","avgPool3d","float32");let p=f,m=!1;4===f.rank&&(m=!0,p=Object(d.reshape)(f,[1,f.shape[0],f.shape[1],f.shape[2],f.shape[3]])),i.assert(5===p.rank,(()=>`Error in avgPool3d: x must be rank 5 but got rank ${p.rank}.`)),i.assert("NDHWC"===c,(()=>`Error in avgPool3d: Only NDHWC is currently supported, but got dataFormat of ${c}`)),null!=l&&i.assert(i.isInt(u),(()=>`Error in avgPool3d: pad must be an integer when using, dimRoundingMode ${l} but got pad ${u}.`));const h={x:p},b={filterSize:t,strides:n,pad:u,dimRoundingMode:l,dataFormat:c};let j=s.ENGINE.runKernel(o.AvgPool3D,h,b);return j=Object(a.cast)(j,p.dtype),m?Object(d.reshape)(j,[j.shape[1],j.shape[2],j.shape[3],j.shape[4]]):j}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/axis_util.js":
+/*!******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/axis_util.js ***!
+ \******************************************************************/
+/*! exports provided: axesAreInnerMostDims, combineLocations, computeOutAndReduceShapes, expandShapeToKeepDim, assertAxesAreInnerMostDims, getAxesPermutation, getUndoAxesPermutation, getInnerMostAxes */function(e,t,n){"use strict";n.r(t),n.d(t,"axesAreInnerMostDims",(function(){return o})),n.d(t,"combineLocations",(function(){return r})),n.d(t,"computeOutAndReduceShapes",(function(){return i})),n.d(t,"expandShapeToKeepDim",(function(){return a})),n.d(t,"assertAxesAreInnerMostDims",(function(){return u})),n.d(t,"getAxesPermutation",(function(){return d})),n.d(t,"getUndoAxesPermutation",(function(){return l})),n.d(t,"getInnerMostAxes",(function(){return c}));var s=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");
+/**
+ * @license
+ * Copyright 2017 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 o(e,t){for(let n=0;ne[t]))]}function a(e,t){return r(e,t.map((e=>1)),t)}function u(e,t,n){s.assert(o(t,n),(()=>`${e} supports only inner-most axes for now. Got axes ${t} and rank-${n} input.`))}function d(e,t){if(o(e,t))return null;const n=[];for(let s=0;sn.push(e))),n}function l(e){return e.map(((e,t)=>[t,e])).sort(((e,t)=>e[1]-t[1])).map((e=>e[0]))}function c(e,t){const n=[];for(let s=t-e;se*t));i.assert(a.rank>=1+t.length,(()=>`input rank is ${a.rank} but should be > than blockShape.length ${t.length}`)),i.assert(n.length===t.length,(()=>`crops.length is ${n.length} but should be equal to blockShape.length ${t.length}`)),i.assert(a.shape[0]%u==0,(()=>`input tensor batch is ${a.shape[0]} but is not divisible by the product of the elements of blockShape ${t.join(" * ")} === ${u}`));const d={x:a},l={blockShape:t,crops:n};return s.ENGINE.runKernel(o.BatchToSpaceND,d,l)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/batchnorm.js":
+/*!******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/batchnorm.js ***!
+ \******************************************************************/
+/*! exports provided: batchNorm */function(e,t,n){"use strict";n.r(t),n.d(t,"batchNorm",(function(){return l}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./batchnorm_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/batchnorm_util.js"),u=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),d=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const l=Object(u.op)({batchNorm_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,u,l,c){null==c&&(c=.001);const f=Object(r.convertToTensor)(e,"x","batchNorm"),p=Object(r.convertToTensor)(t,"mean","batchNorm"),m=Object(r.convertToTensor)(n,"variance","batchNorm");let h,b;null!=l&&(h=Object(r.convertToTensor)(l,"scale","batchNorm")),null!=u&&(b=Object(r.convertToTensor)(u,"offset","batchNorm")),i.assert(p.rank===m.rank,(()=>"Batch normalization gradient requires mean and variance to have equal ranks.")),i.assert(null==b||p.rank===b.rank,(()=>"Batch normalization gradient requires mean and offset to have equal ranks.")),i.assert(null==h||p.rank===h.rank,(()=>"Batch normalization gradient requires mean and scale to have equal ranks."));const j={x:Object(a.xAs4D)(f),scale:h,offset:b,mean:p,variance:m},g={varianceEpsilon:c},w=s.ENGINE.runKernel(o.FusedBatchNorm,j,g);return Object(d.reshape)(w,f.shape)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/batchnorm2d.js":
+/*!********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/batchnorm2d.js ***!
+ \********************************************************************/
+/*! exports provided: batchNorm2d */function(e,t,n){"use strict";n.r(t),n.d(t,"batchNorm2d",(function(){return a}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./batchnorm */"./node_modules/@tensorflow/tfjs-core/dist/ops/batchnorm.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({batchNorm2d_:function(e,t,n,i,a,u){const d=Object(s.convertToTensor)(e,"x","batchNorm"),l=Object(s.convertToTensor)(t,"mean","batchNorm"),c=Object(s.convertToTensor)(n,"variance","batchNorm");let f,p;return null!=a&&(f=Object(s.convertToTensor)(a,"scale","batchNorm")),null!=i&&(p=Object(s.convertToTensor)(i,"offset","batchNorm")),o.assert(2===d.rank,(()=>`Error in batchNorm2D: x must be rank 2 but got rank ${d.rank}.`)),o.assert(2===l.rank||1===l.rank,(()=>`Error in batchNorm2D: mean must be rank 2 or rank 1 but got rank ${l.rank}.`)),o.assert(2===c.rank||1===c.rank,(()=>`Error in batchNorm2D: variance must be rank 2 or rank 1 but got rank ${c.rank}.`)),null!=f&&o.assert(2===f.rank||1===f.rank,(()=>`Error in batchNorm2D: scale must be rank 2 or rank 1 but got rank ${f.rank}.`)),null!=p&&o.assert(2===p.rank||1===p.rank,(()=>`Error in batchNorm2D: offset must be rank 2 or rank 1 but got rank ${p.rank}.`)),Object(r.batchNorm)(d,l,c,p,f,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/batchnorm3d.js":
+/*!********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/batchnorm3d.js ***!
+ \********************************************************************/
+/*! exports provided: batchNorm3d */function(e,t,n){"use strict";n.r(t),n.d(t,"batchNorm3d",(function(){return a}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./batchnorm */"./node_modules/@tensorflow/tfjs-core/dist/ops/batchnorm.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({batchNorm3d_:function(e,t,n,i,a,u){const d=Object(s.convertToTensor)(e,"x","batchNorm"),l=Object(s.convertToTensor)(t,"mean","batchNorm"),c=Object(s.convertToTensor)(n,"variance","batchNorm");let f,p;return null!=a&&(f=Object(s.convertToTensor)(a,"scale","batchNorm")),null!=i&&(p=Object(s.convertToTensor)(i,"offset","batchNorm")),o.assert(3===d.rank,(()=>`Error in batchNorm3D: x must be rank 3 but got rank ${d.rank}.`)),o.assert(3===l.rank||1===l.rank,(()=>`Error in batchNorm3D: mean must be rank 3 or rank 1 but got rank ${l.rank}.`)),o.assert(3===c.rank||1===c.rank,(()=>`Error in batchNorm3D: variance must be rank 3 or rank 1 but got rank ${c.rank}.`)),null!=f&&o.assert(3===f.rank||1===f.rank,(()=>`Error in batchNorm3D: scale must be rank 3 or rank 1 but got rank ${f.rank}.`)),null!=p&&o.assert(3===p.rank||1===p.rank,(()=>`Error in batchNorm3D: offset must be rank 3 or rank 1 but got rank ${p.rank}.`)),Object(r.batchNorm)(d,l,c,p,f,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/batchnorm4d.js":
+/*!********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/batchnorm4d.js ***!
+ \********************************************************************/
+/*! exports provided: batchNorm4d */function(e,t,n){"use strict";n.r(t),n.d(t,"batchNorm4d",(function(){return a}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./batchnorm */"./node_modules/@tensorflow/tfjs-core/dist/ops/batchnorm.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({batchNorm4d_:function(e,t,n,i,a,u){const d=Object(s.convertToTensor)(e,"x","batchNorm"),l=Object(s.convertToTensor)(t,"mean","batchNorm"),c=Object(s.convertToTensor)(n,"variance","batchNorm");let f,p;return null!=a&&(f=Object(s.convertToTensor)(a,"scale","batchNorm")),null!=i&&(p=Object(s.convertToTensor)(i,"offset","batchNorm")),o.assert(4===d.rank,(()=>`Error in batchNorm4D: x must be rank 4 but got rank ${d.rank}.`)),o.assert(4===l.rank||1===l.rank,(()=>`Error in batchNorm4D: mean must be rank 4 or rank 1 but got rank ${l.rank}.`)),o.assert(4===c.rank||1===c.rank,(()=>`Error in batchNorm4D: variance must be rank 4 or rank 1 but got rank ${c.rank}.`)),null!=f&&o.assert(4===f.rank||1===f.rank,(()=>`Error in batchNorm4D: scale must be rank 4 or rank 1 but got rank ${f.rank}.`)),null!=p&&o.assert(4===p.rank||1===p.rank,(()=>`Error in batchNorm4D: offset must be rank 4 or rank 1 but got rank ${p.rank}.`)),Object(r.batchNorm)(d,l,c,p,f,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/batchnorm_util.js":
+/*!***********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/batchnorm_util.js ***!
+ \***********************************************************************/
+/*! exports provided: xAs4D */function(e,t,n){"use strict";n.r(t),n.d(t,"xAs4D",(function(){return o}));var s=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");function o(e){let t;return t=0===e.rank||1===e.rank?Object(s.reshape)(e,[1,1,1,e.size]):2===e.rank?Object(s.reshape)(e,[1,1,e.shape[0],e.shape[1]]):3===e.rank?Object(s.reshape)(e,[1,e.shape[0],e.shape[1],e.shape[2]]):e,t}},"./node_modules/@tensorflow/tfjs-core/dist/ops/bincount.js":
+/*!*****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/bincount.js ***!
+ \*****************************************************************/
+/*! exports provided: bincount */function(e,t,n){"use strict";n.r(t),n.d(t,"bincount",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({bincount_:
+/**
+ * @license
+ * Copyright 2020 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,t,n){const a=Object(r.convertToTensor)(e,"x","bincount"),u=Object(r.convertToTensor)(t,"weights","bincount");i.assert("int32"===a.dtype,(()=>`Error in bincount: input dtype must be int32, but got ${a.dtype}`)),i.assert(n>=0,(()=>`size must be non-negative, but got ${n}.`)),i.assert(u.size===a.size||0===u.size,(()=>`Error in bincount: weights must have the same size as input or0-length, but got input shape: ${a.shape}, weights shape: ${u.shape}.`));const d={x:a,weights:u},l={size:n};return s.ENGINE.runKernel(o.Bincount,d,l)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/boolean_mask.js":
+/*!*********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/boolean_mask.js ***!
+ \*********************************************************************/
+/*! exports provided: booleanMaskAsync */function(e,t,n){"use strict";n.r(t),n.d(t,"booleanMaskAsync",(function(){return d}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./gather */"./node_modules/@tensorflow/tfjs-core/dist/ops/gather.js"),i=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js"),a=n(/*! ./squeeze */"./node_modules/@tensorflow/tfjs-core/dist/ops/squeeze.js"),u=n(/*! ./where_async */"./node_modules/@tensorflow/tfjs-core/dist/ops/where_async.js");const d=
+/**
+ * @license
+ * Copyright 2018 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.
+ * =============================================================================
+ */
+async function(e,t,n){const d=Object(s.convertToTensor)(e,"tensor","boolMask"),l=Object(s.convertToTensor)(t,"mask","boolMask","bool"),c=null==n?0:n,f=l.rank,p=d.shape;o.assert(f>0,(()=>"mask cannot be scalar")),o.assertShapesMatch(p.slice(c,c+f),l.shape,"mask's shape must match the first K dimensions of tensor's shape,");let m=1;for(let e=c;e!(e>0)||e%1!=0)))throw new Error(`broadcastTo(): Invalid broadcast shape [${t}].`);if(t.lengthn.rank){const e=n.shape.slice();for(;e.length=0;e--)if(d[e]===t[e])l[e]=1;else if(1!==n.shape[e])throw new Error(`broadcastTo(): [${a}] cannot be broadcast to [${t}].`);if(0===l.map(((e,t)=>e>1?t:-1)).filter((e=>e>=0)).length)return Object(i.clone)(n);const c={x:n},f={reps:l};return s.ENGINE.runKernel(o.Tile,c,f)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/broadcast_util.js":
+/*!***********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/broadcast_util.js ***!
+ \***********************************************************************/
+/*! exports provided: getBroadcastDims, getReductionAxes, assertAndGetBroadcastShape */function(e,t,n){"use strict";
+/**
+ * @license
+ * Copyright 2017 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 s(e,t){const n=e.length,s=[];for(let o=0;o1&&1===i&&s.unshift(r)}return s}function o(e,t){const n=[];for(let s=0;s1)&&n.unshift(r)}return n}function r(e,t){const n=[],s=Math.max(e.length,t.length);for(let o=0;o4)throw new Error("Cannot construct Tensor with more than 4 channels from pixels.");if(null==e)throw new Error("pixels passed to tf.browser.fromPixels() can not be null");let n=!1,o=!1,a=!1,u=!1,d=!1,l=!1;if(e.data instanceof Uint8Array)n=!0;else if("undefined"!=typeof ImageData&&e instanceof ImageData)o=!0;else if("undefined"!=typeof HTMLVideoElement&&e instanceof HTMLVideoElement)a=!0;else if("undefined"!=typeof HTMLImageElement&&e instanceof HTMLImageElement)u=!0;else if(null!=e.getContext)d=!0;else{if(!("undefined"!=typeof ImageBitmap&&e instanceof ImageBitmap))throw new Error(`pixels passed to tf.browser.fromPixels() must be either an HTMLVideoElement, HTMLImageElement, HTMLCanvasElement, ImageData in browser, or OffscreenCanvas, ImageData in webworker or {data: Uint32Array, width: number, height: number}, but was ${e.constructor.name}`);l=!0}if(a){const t=2;if(a&&e.readyState element.")}if(null!=Object(i.getKernel)(r.FromPixels,s.ENGINE.backendName)){const n={pixels:e},o={numChannels:t};return s.ENGINE.runKernel(r.FromPixels,n,o)}const[p,m]=a?[e.videoWidth,e.videoHeight]:[e.width,e.height];let h,b;if(d?h=e.getContext("2d").getImageData(0,0,p,m).data:o||n?h=e.data:(u||a||l)&&(null==f&&(f=document.createElement("canvas").getContext("2d")),f.canvas.width=p,f.canvas.height=m,f.drawImage(e,0,0,p,m),h=f.getImageData(0,0,p,m).data),4===t)b=new Int32Array(h);else{const e=p*m;b=new Int32Array(e*t);for(let n=0;n4||2===r)throw new Error(`toPixels only supports depth of size 1, 3 or 4 but got ${r}`);if("float32"!==n.dtype&&"int32"!==n.dtype)throw new Error(`Unsupported type for toPixels: ${n.dtype}. Please use float32 or int32 tensors.`);const i=await n.data(),l="float32"===n.dtype?255:1,c=new Uint8ClampedArray(o*s*4);for(let e=0;e1)throw new Error(`Tensor values for a float32 Tensor must be in the range [0 - 1] but encountered ${o}.`)}else if("int32"===n.dtype&&(o<0||o>255))throw new Error(`Tensor values for a int32 Tensor must be in the range [0 - 255] but encountered ${o}.`);1===r?(t[0]=o*l,t[1]=o*l,t[2]=o*l):t[s]=o*l}const s=4*e;c[s+0]=Math.round(t[0]),c[s+1]=Math.round(t[1]),c[s+2]=Math.round(t[2]),c[s+3]=Math.round(t[3])}if(null!=t){t.width=o,t.height=s;const e=t.getContext("2d"),n=new ImageData(c,o,s);e.putImageData(n,0,0)}return n!==e&&n.dispose(),c}const j=Object(l.op)({fromPixels_:p})},"./node_modules/@tensorflow/tfjs-core/dist/ops/buffer.js":
+/*!***************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/buffer.js ***!
+ \***************************************************************/
+/*! exports provided: buffer */function(e,t,n){"use strict";n.r(t),n.d(t,"buffer",(function(){return r}));var s=n(/*! ../tensor */"./node_modules/@tensorflow/tfjs-core/dist/tensor.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");
+/**
+ * @license
+ * Copyright 2020 Google Inc. 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 r(e,t="float32",n){return t=t||"float32",o.assertNonNegativeIntegerDimensions(e),new s.TensorBuffer(e,t,n)}},"./node_modules/@tensorflow/tfjs-core/dist/ops/cast.js":
+/*!*************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/cast.js ***!
+ \*************************************************************/
+/*! exports provided: cast */function(e,t,n){"use strict";n.r(t),n.d(t,"cast",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({cast_:
+/**
+ * @license
+ * Copyright 2020 Google Inc. 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,t){const n=Object(r.convertToTensor)(e,"x","cast");if(!i.isValidDtype(t))throw new Error(`Failed to cast to unknown dtype ${t}`);if("string"===t&&"string"!==n.dtype||"string"!==t&&"string"===n.dtype)throw new Error("Only strings can be casted to strings");const a={x:n},u={dtype:t};return s.ENGINE.runKernel(o.Cast,a,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/ceil.js":
+/*!*************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/ceil.js ***!
+ \*************************************************************/
+/*! exports provided: ceil */function(e,t,n){"use strict";n.r(t),n.d(t,"ceil",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({ceil_:
+/**
+ * @license
+ * Copyright 2018 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){const t={x:Object(r.convertToTensor)(e,"x","ceil")};return s.ENGINE.runKernel(o.Ceil,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/clip_by_value.js":
+/*!**********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/clip_by_value.js ***!
+ \**********************************************************************/
+/*! exports provided: clipByValue */function(e,t,n){"use strict";n.r(t),n.d(t,"clipByValue",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({clipByValue_:
+/**
+ * @license
+ * Copyright 2018 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,t,n){const a=Object(r.convertToTensor)(e,"x","clipByValue");i.assert(t<=n,(()=>`Error in clip: min (${t}) must be less than or equal to max (${n}).`));const u={x:a},d={clipValueMin:t,clipValueMax:n};return s.ENGINE.runKernel(o.ClipByValue,u,d)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/clone.js":
+/*!**************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/clone.js ***!
+ \**************************************************************/
+/*! exports provided: clone */function(e,t,n){"use strict";n.r(t),n.d(t,"clone",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({clone_:
+/**
+ * @license
+ * Copyright 2020 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){const t={x:Object(r.convertToTensor)(e,"x","clone","string_or_numeric")};return s.ENGINE.runKernel(o.Identity,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/complex.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/complex.js ***!
+ \****************************************************************/
+/*! exports provided: complex */function(e,t,n){"use strict";n.r(t),n.d(t,"complex",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({complex_:
+/**
+ * @license
+ * Copyright 2020 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,t){const n=Object(r.convertToTensor)(e,"real","complex"),a=Object(r.convertToTensor)(t,"imag","complex");i.assertShapesMatch(n.shape,a.shape,`real and imag shapes, ${n.shape} and ${a.shape}, must match in call to tf.complex().`);const u={real:n,imag:a};return s.ENGINE.runKernel(o.Complex,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/concat.js":
+/*!***************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/concat.js ***!
+ \***************************************************************/
+/*! exports provided: concat */function(e,t,n){"use strict";n.r(t),n.d(t,"concat",(function(){return d}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./clone */"./node_modules/@tensorflow/tfjs-core/dist/ops/clone.js"),u=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const d=Object(u.op)({concat_:
+/**
+ * @license
+ * Copyright 2020 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,t=0){Object(i.assert)(e.length>=1,(()=>"Pass at least one tensor to concat"));const n=Object(r.convertToTensorArray)(e,"tensors","concat","string_or_numeric");if("complex64"===n[0].dtype&&n.forEach((e=>{if("complex64"!==e.dtype)throw new Error(`Cannot concatenate complex64 tensors with a tensor\n with dtype ${e.dtype}. `)})),1===n.length)return Object(a.clone)(n[0]);const u=n,d={axis:t};return s.ENGINE.runKernel(o.Concat,u,d)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/concat_1d.js":
+/*!******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/concat_1d.js ***!
+ \******************************************************************/
+/*! exports provided: concat1d */function(e,t,n){"use strict";n.r(t),n.d(t,"concat1d",(function(){return r}));var s=n(/*! ./concat */"./node_modules/@tensorflow/tfjs-core/dist/ops/concat.js"),o=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const r=Object(o.op)({concat1d_:function(e){return Object(s.concat)(e,0)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/concat_2d.js":
+/*!******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/concat_2d.js ***!
+ \******************************************************************/
+/*! exports provided: concat2d */function(e,t,n){"use strict";n.r(t),n.d(t,"concat2d",(function(){return r}));var s=n(/*! ./concat */"./node_modules/@tensorflow/tfjs-core/dist/ops/concat.js"),o=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const r=Object(o.op)({concat2d_:function(e,t){return Object(s.concat)(e,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/concat_3d.js":
+/*!******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/concat_3d.js ***!
+ \******************************************************************/
+/*! exports provided: concat3d */function(e,t,n){"use strict";n.r(t),n.d(t,"concat3d",(function(){return r}));var s=n(/*! ./concat */"./node_modules/@tensorflow/tfjs-core/dist/ops/concat.js"),o=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const r=Object(o.op)({concat3d_:function(e,t){return Object(s.concat)(e,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/concat_4d.js":
+/*!******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/concat_4d.js ***!
+ \******************************************************************/
+/*! exports provided: concat4d */function(e,t,n){"use strict";n.r(t),n.d(t,"concat4d",(function(){return r}));var s=n(/*! ./concat */"./node_modules/@tensorflow/tfjs-core/dist/ops/concat.js"),o=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const r=Object(o.op)({concat4d_:function(e,t){return Object(s.concat)(e,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/concat_util.js":
+/*!********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/concat_util.js ***!
+ \********************************************************************/
+/*! exports provided: assertParamsConsistent, computeOutShape */function(e,t,n){"use strict";n.r(t),n.d(t,"assertParamsConsistent",(function(){return o})),n.d(t,"computeOutShape",(function(){return r}));var s=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");
+/**
+ * @license
+ * Copyright 2017 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 o(e,t){const n=e[0].length;e.forEach(((e,t)=>{s.assert(e.length===n,(()=>`Error in concat${n}D: rank of tensors[${t}] must be the same as the rank of the rest (${n})`))})),s.assert(t>=0&&t`Error in concat${n}D: axis must be between 0 and ${n-1}.`));const o=e[0];e.forEach(((e,r)=>{for(let i=0;i`Error in concat${n}D: Shape of tensors[${r}] (${e}) does not match the shape of the rest (${o}) along the non-concatenated axis ${r}.`))}))}function r(e,t){const n=e[0].slice();for(let s=1;s0&&Number.isInteger(n),(()=>`If provided, numClasses must be a positive integer, but got ${n}`)),o.assert(1===u.rank,(()=>`Expected the rank of labels to be 1, but got ${u.rank}`)),o.assert(1===l.rank,(()=>`Expected the rank of predictions to be 1, but got ${l.rank}`)),o.assert(u.shape[0]===l.shape[0],(()=>`Mismatch in the number of examples: ${u.shape[0]} vs. ${l.shape[0]}. Labels and predictions should have the same number of elements.`)),o.assert(n>0&&Number.isInteger(n),(()=>`numClasses is required to be a positive integer, but got ${n}`));const c=Object(a.oneHot)(Object(r.cast)(u,"int32"),n),f=Object(a.oneHot)(Object(r.cast)(l,"int32"),n),p=Object(d.transpose)(c),m=Object(i.matMul)(p,f);return Object(r.cast)(m,"int32")}const c=Object(u.op)({confusionMatrix_:l})},"./node_modules/@tensorflow/tfjs-core/dist/ops/conv1d.js":
+/*!***************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/conv1d.js ***!
+ \***************************************************************/
+/*! exports provided: conv1d */function(e,t,n){"use strict";n.r(t),n.d(t,"conv1d",(function(){return d}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./conv2d */"./node_modules/@tensorflow/tfjs-core/dist/ops/conv2d.js"),i=n(/*! ./conv_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/conv_util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),u=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const d=Object(a.op)({conv1d_:function(e,t,n,a,d="NWC",l=1,c){const f=Object(s.convertToTensor)(e,"x","conv1d"),p=Object(s.convertToTensor)(t,"filter","conv1d");let m=f,h=!1;2===f.rank&&(h=!0,m=Object(u.reshape)(f,[1,f.shape[0],f.shape[1]])),o.assert(3===m.rank,(()=>`Error in conv1d: input must be rank 3, but got rank ${m.rank}.`)),o.assert(3===p.rank,(()=>`Error in conv1d: filter must be rank 3, but got rank ${p.rank}.`)),null!=c&&o.assert(o.isInt(a),(()=>`Error in conv1d: pad must be an integer when using, dimRoundingMode ${c} but got pad ${a}.`)),o.assert(m.shape[2]===p.shape[1],(()=>`Error in conv1d: depth of input (${m.shape[2]}) must match input depth for filter ${p.shape[1]}.`)),o.assert(i.eitherStridesOrDilationsAreOne(n,l),(()=>`Error in conv1D: Either stride or dilation must be 1. Got stride ${n} and dilation '${l}'`)),o.assert("NWC"===d,(()=>`Error in conv1d: got dataFormat of ${d} but only NWC is currently supported.`));const b=Object(u.reshape)(p,[1,p.shape[0],p.shape[1],p.shape[2]]),j=Object(u.reshape)(m,[m.shape[0],1,m.shape[1],m.shape[2]]),g=[1,n],w=[1,l],_=Object(r.conv2d)(j,b,g,a,"NHWC",w,c);return h?Object(u.reshape)(_,[_.shape[2],_.shape[3]]):Object(u.reshape)(_,[_.shape[0],_.shape[2],_.shape[3]])}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/conv2d.js":
+/*!***************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/conv2d.js ***!
+ \***************************************************************/
+/*! exports provided: conv2d */function(e,t,n){"use strict";n.r(t),n.d(t,"conv2d",(function(){return l}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./conv_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/conv_util.js"),u=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),d=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const l=Object(u.op)({conv2d_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,u,l="NHWC",c=[1,1],f){const p=Object(r.convertToTensor)(e,"x","conv2d"),m=Object(r.convertToTensor)(t,"filter","conv2d");let h=p,b=!1;3===p.rank&&(b=!0,h=Object(d.reshape)(p,[1,p.shape[0],p.shape[1],p.shape[2]])),i.assert(4===h.rank,(()=>`Error in conv2d: input must be rank 4, but got rank ${h.rank}.`)),i.assert(4===m.rank,(()=>`Error in conv2d: filter must be rank 4, but got rank ${m.rank}.`)),null!=f&&i.assert(i.isInt(u),(()=>`Error in conv2d: pad must be an integer when using, dimRoundingMode ${f} but got pad ${u}.`));const j="NHWC"===l?h.shape[3]:h.shape[1];i.assert(j===m.shape[2],(()=>`Error in conv2d: depth of input (${j}) must match input depth for filter ${m.shape[2]}.`)),i.assert(a.eitherStridesOrDilationsAreOne(n,c),(()=>`Error in conv2D: Either strides or dilations must be 1. Got strides ${n} and dilations '${c}'`));const g={x:h,filter:m},w={strides:n,pad:u,dataFormat:l,dilations:c,dimRoundingMode:f},_=s.ENGINE.runKernel(o.Conv2D,g,w);return b?Object(d.reshape)(_,[_.shape[1],_.shape[2],_.shape[3]]):_}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/conv2d_backprop_filter.js":
+/*!*******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/conv2d_backprop_filter.js ***!
+ \*******************************************************************************/
+/*! exports provided: conv2DBackpropFilter */function(e,t,n){"use strict";n.r(t),n.d(t,"conv2DBackpropFilter",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),a=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const u=Object(i.op)({conv2DBackpropFilter_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,i,u,d="NHWC",l){let c=e;3===e.rank&&(c=Object(a.reshape)(e,[1,e.shape[0],e.shape[1],e.shape[2]]));let f=t;3===f.rank&&(f=Object(a.reshape)(t,[1,t.shape[0],t.shape[1],t.shape[2]])),r.assert(4===c.rank,(()=>`Error in conv2dDerFilter: input must be rank 4, but got shape ${c.shape}.`)),r.assert(4===f.rank,(()=>`Error in conv2dDerFilter: dy must be rank 4, but got shape ${f.shape}.`)),r.assert(4===n.length,(()=>`Error in conv2dDerFilter: filterShape must be length 4, but got ${n}.`));const p="NHWC"===d?c.shape[3]:c.shape[1],m="NHWC"===d?f.shape[3]:f.shape[1];r.assert(p===n[2],(()=>`Error in conv2dDerFilter: depth of input ${p}) must match input depth in filter (${n[2]}.`)),r.assert(m===n[3],(()=>`Error in conv2dDerFilter: depth of dy (${m}) must match output depth for filter (${n[3]}).`)),null!=l&&r.assert(r.isInt(u),(()=>`Error in conv2dDerFilter: pad must be an integer when using, dimRoundingMode ${l} but got pad ${u}.`));const h={x:c,dy:f},b={strides:i,pad:u,dataFormat:d,dimRoundingMode:l,filterShape:n};return s.ENGINE.runKernel(o.Conv2DBackpropFilter,h,b)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/conv2d_backprop_input.js":
+/*!******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/conv2d_backprop_input.js ***!
+ \******************************************************************************/
+/*! exports provided: conv2DBackpropInput */function(e,t,n){"use strict";n.r(t),n.d(t,"conv2DBackpropInput",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),a=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const u=Object(i.op)({conv2DBackpropInput_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,i,u,d="NHWC",l){r.assert(e.length===t.rank,(()=>`Length of inShape (${e.length}) and rank of dy (${t.rank}) must match`));let c=e,f=t,p=!1;3===t.rank&&(p=!0,f=Object(a.reshape)(t,[1,t.shape[0],t.shape[1],t.shape[2]]),c=[1,e[0],e[1],e[2]]),r.assert(4===c.length,(()=>`Error in conv2dDerInput: inShape must be length 4, but got length ${c.length}.`)),r.assert(4===f.rank,(()=>`Error in conv2dDerInput: dy must be rank 4, but got rank ${f.rank}`)),r.assert(4===n.rank,(()=>`Error in conv2dDerInput: filter must be rank 4, but got rank ${n.rank}`));const m="NHWC"===d?c[3]:c[1],h="NHWC"===d?f.shape[3]:f.shape[1];r.assert(m===n.shape[2],(()=>`Error in conv2dDerInput: depth of input (${m}) must match input depth for filter ${n.shape[2]}.`)),r.assert(h===n.shape[3],(()=>`Error in conv2dDerInput: depth of output (${h}) must match output depth for filter ${n.shape[3]}.`)),null!=l&&r.assert(r.isInt(u),(()=>`Error in conv2dDerInput: pad must be an integer when using, dimRoundingMode ${l} but got pad ${u}.`));const b={dy:f,filter:n},j={strides:i,pad:u,dataFormat:d,dimRoundingMode:l,inputShape:c},g=s.ENGINE.runKernel(o.Conv2DBackpropInput,b,j);return p?Object(a.reshape)(g,[g.shape[1],g.shape[2],g.shape[3]]):g}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/conv2d_transpose.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/conv2d_transpose.js ***!
+ \*************************************************************************/
+/*! exports provided: conv2dTranspose */function(e,t,n){"use strict";n.r(t),n.d(t,"conv2dTranspose",(function(){return i}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ./conv2d_backprop_input */"./node_modules/@tensorflow/tfjs-core/dist/ops/conv2d_backprop_input.js"),r=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const i=Object(r.op)({conv2dTranspose_:function(e,t,n,r,i,a){const u=Object(s.convertToTensor)(e,"x","conv2dTranspose"),d=Object(s.convertToTensor)(t,"filter","conv2dTranspose");return Object(o.conv2DBackpropInput)(n,u,d,r,i,"NHWC",a)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/conv3d.js":
+/*!***************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/conv3d.js ***!
+ \***************************************************************/
+/*! exports provided: conv3d */function(e,t,n){"use strict";n.r(t),n.d(t,"conv3d",(function(){return l}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./conv_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/conv_util.js"),u=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),d=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const l=Object(u.op)({conv3d_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,u,l="NDHWC",c=[1,1,1]){const f=Object(r.convertToTensor)(e,"x","conv3d"),p=Object(r.convertToTensor)(t,"filter","conv3d");let m=f,h=!1;4===f.rank&&(h=!0,m=Object(d.reshape)(f,[1,f.shape[0],f.shape[1],f.shape[2],f.shape[3]])),i.assert(5===m.rank,(()=>`Error in conv3d: input must be rank 5, but got rank ${m.rank}.`)),i.assert(5===p.rank,(()=>`Error in conv3d: filter must be rank 5, but got rank ${p.rank}.`)),i.assert(m.shape[4]===p.shape[3],(()=>`Error in conv3d: depth of input (${m.shape[4]}) must match input depth for filter ${p.shape[3]}.`)),i.assert(Object(a.eitherStridesOrDilationsAreOne)(n,c),(()=>`Error in conv3D: Either strides or dilations must be 1. Got strides ${n} and dilations '${c}'`)),i.assert("NDHWC"===l,(()=>`Error in conv3d: got dataFormat of ${l} but only NDHWC is currently supported.`));const b={x:m,filter:p},j={strides:n,pad:u,dataFormat:l,dilations:c},g=s.ENGINE.runKernel(o.Conv3D,b,j);return h?Object(d.reshape)(g,[g.shape[1],g.shape[2],g.shape[3],g.shape[4]]):g}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/conv3d_backprop_input.js":
+/*!******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/conv3d_backprop_input.js ***!
+ \******************************************************************************/
+/*! exports provided: conv3DBackpropInput */function(e,t,n){"use strict";n.r(t),n.d(t,"conv3DBackpropInput",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),a=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const u=Object(i.op)({conv3DBackpropInput_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,i,u){r.assert(e.length===t.rank,(()=>`Length of inShape (${e.length}) and rank of dy (${t.rank}) must match`));let d=e,l=t,c=!1;4===t.rank&&(c=!0,l=Object(a.reshape)(t,[1,t.shape[0],t.shape[1],t.shape[2],t.shape[3]]),d=[1,e[0],e[1],e[2],e[3]]);const f=d[4],p=l.shape[4];r.assert(5===d.length,(()=>`Error in conv3dDerInput: inShape must be length 5, but got length ${d.length}.`)),r.assert(5===l.rank,(()=>`Error in conv3dDerInput: dy must be rank 5, but got rank ${l.rank}`)),r.assert(5===n.rank,(()=>`Error in conv3dDerInput: filter must be rank 5, but got rank ${n.rank}`)),r.assert(f===n.shape[3],(()=>`Error in conv3dDerInput: depth of input (${f}) must match input depth for filter ${n.shape[3]}.`)),r.assert(p===n.shape[4],(()=>`Error in conv3dDerInput: depth of output (${p}) must match output depth for filter ${n.shape[4]}.`));const m={dy:l,filter:n},h={pad:u,strides:i,inputShape:d},b=s.ENGINE.runKernel(o.Conv3DBackpropInputV2,m,h);return c?Object(a.reshape)(b,[b.shape[1],b.shape[2],b.shape[3],b.shape[4]]):b}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/conv3d_transpose.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/conv3d_transpose.js ***!
+ \*************************************************************************/
+/*! exports provided: conv3dTranspose */function(e,t,n){"use strict";n.r(t),n.d(t,"conv3dTranspose",(function(){return i}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ./conv3d_backprop_input */"./node_modules/@tensorflow/tfjs-core/dist/ops/conv3d_backprop_input.js"),r=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const i=Object(r.op)({conv3dTranspose_:function(e,t,n,r,i){const a=Object(s.convertToTensor)(e,"x","conv3dTranspose"),u=Object(s.convertToTensor)(t,"filter","conv3dTranspose");return Object(o.conv3DBackpropInput)(n,a,u,r,i)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/conv_util.js":
+/*!******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/conv_util.js ***!
+ \******************************************************************/
+/*! exports provided: computeDilation2DInfo, computePool2DInfo, computePool3DInfo, computeConv2DInfo, computeConv3DInfo, computeDefaultPad, tupleValuesAreOne, eitherStridesOrDilationsAreOne, convertConv2DDataFormat */function(e,t,n){"use strict";
+/**
+ * @license
+ * Copyright 2020 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 s(e,t,n,s,o="NHWC",r){return i(e,[...t,e[3]],n,r,s,null,null,h(o))}function o(e,t,n,s,o,r,a="channelsLast"){const[u,l]=d(t);let c;if("channelsLast"===a)c=[u,l,e[3],e[3]];else{if("channelsFirst"!==a)throw new Error(`Unknown dataFormat ${a}`);c=[u,l,e[1],e[1]]}return i(e,c,n,s,o,r,!1,a)}function r(e,t,n,s,o,r,i="NDHWC"){const[u,d,c]=l(t);let f,p;if("NDHWC"===i)p="channelsLast",f=[u,d,c,e[4],e[4]];else{if("NCDHW"!==i)throw new Error(`Unknown dataFormat ${i}`);p="channelsFirst",f=[u,d,c,e[1],e[1]]}return a(e,f,n,s,o,!1,p,r)}function i(e,t,n,s,o,r,i=!1,a="channelsLast"){let[l,p,m,h]=[-1,-1,-1,-1];if("channelsLast"===a)[l,p,m,h]=e;else{if("channelsFirst"!==a)throw new Error(`Unknown dataFormat ${a}`);[l,h,p,m]=e}const[b,j,,g]=t,[w,_]=d(n),[k,v]=d(s),x=c(b,k),y=c(j,v),{padInfo:O,outHeight:I,outWidth:C}=function(e,t,n,s,o,r,i,a,d){let l,c,p;if("number"==typeof e){l={top:e,bottom:e,left:e,right:e,type:0===e?"VALID":"NUMBER"};const o=function(e,t,n,s,o){null==s&&(s=u(e,t,n));const r=e[0],i=e[1],a=f((r-t+2*s)/n+1,o),d=f((i-t+2*s)/n+1,o);return[a,d]}([t,n],r,s,e,a);c=o[0],p=o[1]}else if("same"===e){c=Math.ceil(t/s),p=Math.ceil(n/o);const e=Math.max(0,(c-1)*s+r-t),a=Math.max(0,(p-1)*o+i-n),u=Math.floor(e/2),d=e-u,f=Math.floor(a/2);l={top:u,bottom:d,left:f,right:a-f,type:"SAME"}}else if("valid"===e)l={top:0,bottom:0,left:0,right:0,type:"VALID"},c=Math.ceil((t-r+1)/s),p=Math.ceil((n-i+1)/o);else{if("object"!=typeof e)throw Error(`Unknown padding parameter: ${e}`);{const u="channelsLast"===d?e[1][0]:e[2][0],m="channelsLast"===d?e[1][1]:e[2][1],h="channelsLast"===d?e[2][0]:e[3][0],b="channelsLast"===d?e[2][1]:e[3][1];l={top:u,bottom:m,left:h,right:b,type:0===u&&0===m&&0===h&&0===b?"VALID":"EXPLICIT"},c=f((t-r+u+m)/s+1,a),p=f((n-i+h+b)/o+1,a)}}return{padInfo:l,outHeight:c,outWidth:p}}(o,p,m,w,_,x,y,r,a),S=i?g*h:g;let T;return"channelsFirst"===a?T=[l,S,I,C]:"channelsLast"===a&&(T=[l,I,C,S]),{batchSize:l,dataFormat:a,inHeight:p,inWidth:m,inChannels:h,outHeight:I,outWidth:C,outChannels:S,padInfo:O,strideHeight:w,strideWidth:_,filterHeight:b,filterWidth:j,effectiveFilterHeight:x,effectiveFilterWidth:y,dilationHeight:k,dilationWidth:v,inShape:e,outShape:T,filterShape:t}}function a(e,t,n,s,o,r=!1,i="channelsLast",a){let[d,p,m,h,b]=[-1,-1,-1,-1,-1];if("channelsLast"===i)[d,p,m,h,b]=e;else{if("channelsFirst"!==i)throw new Error(`Unknown dataFormat ${i}`);[d,b,p,m,h]=e}const[j,g,w,,_]=t,[k,v,x]=l(n),[y,O,I]=l(s),C=c(j,y),S=c(g,O),T=c(w,I),{padInfo:N,outDepth:E,outHeight:A,outWidth:R}=function(e,t,n,s,o,r,i,a,d,l,c){let p,m,h,b;if("number"==typeof e){p={top:e,bottom:e,left:e,right:e,front:e,back:e,type:0===e?"VALID":"NUMBER"};const r=function(e,t,n,s,o,r){null==o&&(o=u(e,t,s));const i=e[0],a=e[1],d=e[2],l=f((i-t+2*o)/s+1,r),c=f((a-t+2*o)/s+1,r),p=f((d-t+2*o)/s+1,r);return[l,c,p,n]}([t,n,s,1],a,1,o,e,c);m=r[0],h=r[1],b=r[2]}else if("same"===e){m=Math.ceil(t/o),h=Math.ceil(n/r),b=Math.ceil(s/i);const e=(m-1)*o+a-t,u=(h-1)*r+d-n,c=(b-1)*i+l-s,f=Math.floor(e/2),j=e-f,g=Math.floor(u/2),w=u-g,_=Math.floor(c/2);p={top:g,bottom:w,left:_,right:c-_,front:f,back:j,type:"SAME"}}else{if("valid"!==e)throw Error(`Unknown padding parameter: ${e}`);p={top:0,bottom:0,left:0,right:0,front:0,back:0,type:"VALID"},m=Math.ceil((t-a+1)/o),h=Math.ceil((n-d+1)/r),b=Math.ceil((s-l+1)/i)}return{padInfo:p,outDepth:m,outHeight:h,outWidth:b}}(o,p,m,h,k,v,x,C,S,T,a),F=r?_*b:_;let M;return"channelsFirst"===i?M=[d,F,E,A,R]:"channelsLast"===i&&(M=[d,E,A,R,F]),{batchSize:d,dataFormat:i,inDepth:p,inHeight:m,inWidth:h,inChannels:b,outDepth:E,outHeight:A,outWidth:R,outChannels:F,padInfo:N,strideDepth:k,strideHeight:v,strideWidth:x,filterDepth:j,filterHeight:g,filterWidth:w,effectiveFilterDepth:C,effectiveFilterHeight:S,effectiveFilterWidth:T,dilationDepth:y,dilationHeight:O,dilationWidth:I,inShape:e,outShape:M,filterShape:t}}function u(e,t,n,s=1){const o=c(t,s);return Math.floor((e[0]*(n-1)-n+o)/2)}function d(e){return"number"==typeof e?[e,e,e]:2===e.length?[e[0],e[1],1]:e}function l(e){return"number"==typeof e?[e,e,e]:e}function c(e,t){return t<=1?e:e+(e-1)*(t-1)}function f(e,t){if(!t)return Math.trunc(e);switch(t){case"round":return Math.round(e);case"ceil":return Math.ceil(e);case"floor":return Math.floor(e);default:throw new Error(`Unknown roundingMode ${t}`)}}function p(e){const[t,n,s]=d(e);return 1===t&&1===n&&1===s}function m(e,t){return p(e)||p(t)}function h(e){if("NHWC"===e)return"channelsLast";if("NCHW"===e)return"channelsFirst";throw new Error(`Unknown dataFormat ${e}`)}n.r(t),n.d(t,"computeDilation2DInfo",(function(){return s})),n.d(t,"computePool2DInfo",(function(){return o})),n.d(t,"computePool3DInfo",(function(){return r})),n.d(t,"computeConv2DInfo",(function(){return i})),n.d(t,"computeConv3DInfo",(function(){return a})),n.d(t,"computeDefaultPad",(function(){return u})),n.d(t,"tupleValuesAreOne",(function(){return p})),n.d(t,"eitherStridesOrDilationsAreOne",(function(){return m})),n.d(t,"convertConv2DDataFormat",(function(){return h}))},"./node_modules/@tensorflow/tfjs-core/dist/ops/cos.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/cos.js ***!
+ \************************************************************/
+/*! exports provided: cos */function(e,t,n){"use strict";n.r(t),n.d(t,"cos",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({cos_:
+/**
+ * @license
+ * Copyright 2018 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){const t={x:Object(r.convertToTensor)(e,"x","cos")};return s.ENGINE.runKernel(o.Cos,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/cosh.js":
+/*!*************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/cosh.js ***!
+ \*************************************************************/
+/*! exports provided: cosh */function(e,t,n){"use strict";n.r(t),n.d(t,"cosh",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({cosh_:
+/**
+ * @license
+ * Copyright 2018 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){const t={x:Object(r.convertToTensor)(e,"x","cosh")};return s.ENGINE.runKernel(o.Cosh,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/cumsum.js":
+/*!***************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/cumsum.js ***!
+ \***************************************************************/
+/*! exports provided: cumsum */function(e,t,n){"use strict";n.r(t),n.d(t,"cumsum",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({cumsum_:
+/**
+ * @license
+ * Copyright 2018 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,t=0,n=!1,i=!1){const a={x:Object(r.convertToTensor)(e,"x","cumsum")},u={axis:t,exclusive:n,reverse:i};return s.ENGINE.runKernel(o.Cumsum,a,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/dense_bincount.js":
+/*!***********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/dense_bincount.js ***!
+ \***********************************************************************/
+/*! exports provided: denseBincount */function(e,t,n){"use strict";n.r(t),n.d(t,"denseBincount",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({denseBincount_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,a=!1){const u=Object(r.convertToTensor)(e,"x","denseBincount"),d=Object(r.convertToTensor)(t,"weights","denseBincount");i.assert("int32"===u.dtype,(()=>`Error in denseBincount: input dtype must be int32, but got ${u.dtype}`)),i.assert(u.rank<=2,(()=>`Error in denseBincount: input must be at most rank 2, but got rank ${u.rank}.`)),i.assert(n>=0,(()=>`size must be non-negative, but got ${n}.`)),i.assert(d.size===u.size||0===d.size,(()=>`Error in denseBincount: weights must have the same shape as x or 0-length, but got x shape: ${u.shape}, weights shape: ${d.shape}.`));const l={x:u,weights:d},c={size:n,binaryOutput:a};return s.ENGINE.runKernel(o.DenseBincount,l,c)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/depth_to_space.js":
+/*!***********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/depth_to_space.js ***!
+ \***********************************************************************/
+/*! exports provided: depthToSpace */function(e,t,n){"use strict";n.r(t),n.d(t,"depthToSpace",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({depthToSpace_:
+/**
+ * @license
+ * Copyright 2020 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,t,n="NHWC"){const a=Object(r.convertToTensor)(e,"x","depthToSpace"),u="NHWC"===n?a.shape[1]:a.shape[2],d="NHWC"===n?a.shape[2]:a.shape[3],l="NHWC"===n?a.shape[3]:a.shape[1];i.assert(u*t>=0,(()=>`Negative dimension size caused by overflow when multiplying\n ${u} and ${t} for depthToSpace with input shape\n ${a.shape}`)),i.assert(d*t>=0,(()=>`Negative dimension size caused by overflow when multiplying\n ${d} and ${t} for depthToSpace with input shape\n ${a.shape}`)),i.assert(l%(t*t)==0,(()=>`Dimension size must be evenly divisible by ${t*t} but is ${l} for depthToSpace with input shape ${a.shape}`));const c={x:a},f={blockSize:t,dataFormat:n};return s.ENGINE.runKernel(o.DepthToSpace,c,f)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/depthwise_conv2d.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/depthwise_conv2d.js ***!
+ \*************************************************************************/
+/*! exports provided: depthwiseConv2d */function(e,t,n){"use strict";n.r(t),n.d(t,"depthwiseConv2d",(function(){return d}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),u=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const d=Object(a.op)({depthwiseConv2d_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,a,d="NHWC",l=[1,1],c){const f=Object(r.convertToTensor)(e,"x","depthwiseConv2d"),p=Object(r.convertToTensor)(t,"filter","depthwiseConv2d");let m=f,h=!1;3===f.rank&&(h=!0,m=Object(u.reshape)(f,[1,f.shape[0],f.shape[1],f.shape[2]])),i.assert(4===m.rank,(()=>`Error in depthwiseConv2d: input must be rank 4, but got rank ${m.rank}.`)),i.assert(4===p.rank,(()=>`Error in depthwiseConv2d: filter must be rank 4, but got rank ${p.rank}.`)),i.assert(m.shape[3]===p.shape[2],(()=>`Error in depthwiseConv2d: number of input channels (${m.shape[3]}) must match the inChannels dimension in filter ${p.shape[2]}.`)),null!=c&&i.assert(i.isInt(a),(()=>`Error in depthwiseConv2d: pad must be an integer when using, dimRoundingMode ${c} but got pad ${a}.`));const b={x:m,filter:p},j={strides:n,pad:a,dataFormat:d,dilations:l,dimRoundingMode:c},g=s.ENGINE.runKernel(o.DepthwiseConv2dNative,b,j);return h?Object(u.reshape)(g,[g.shape[1],g.shape[2],g.shape[3]]):g}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/depthwise_conv2d_native_backprop_filter.js":
+/*!************************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/depthwise_conv2d_native_backprop_filter.js ***!
+ \************************************************************************************************/
+/*! exports provided: depthwiseConv2dNativeBackpropFilter */function(e,t,n){"use strict";n.r(t),n.d(t,"depthwiseConv2dNativeBackpropFilter",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),i=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const a=Object(r.op)({depthwiseConv2dNativeBackpropFilter_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,r,a,u=[1,1],d){let l=e;3===e.rank&&(l=Object(i.reshape)(e,[1,e.shape[0],e.shape[1],e.shape[2]]));let c=t;3===c.rank&&(c=Object(i.reshape)(t,[1,t.shape[0],t.shape[1],t.shape[2]]));const f={x:l,dy:c},p={strides:r,pad:a,dimRoundingMode:d,dilations:u,filterShape:n};return s.ENGINE.runKernel(o.DepthwiseConv2dNativeBackpropFilter,f,p)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/depthwise_conv2d_native_backprop_input.js":
+/*!***********************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/depthwise_conv2d_native_backprop_input.js ***!
+ \***********************************************************************************************/
+/*! exports provided: depthwiseConv2dNativeBackpropInput */function(e,t,n){"use strict";n.r(t),n.d(t,"depthwiseConv2dNativeBackpropInput",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),i=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const a=Object(r.op)({depthwiseConv2dNativeBackpropInput_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,r,a,u=[1,1],d){let l=t,c=!1;3===t.rank&&(c=!0,l=Object(i.reshape)(t,[1,t.shape[0],t.shape[1],t.shape[2]]));const f={dy:l,filter:n},p={strides:r,pad:a,dimRoundingMode:d,dilations:u,inputShape:e},m=s.ENGINE.runKernel(o.DepthwiseConv2dNativeBackpropInput,f,p);return c?Object(i.reshape)(m,[m.shape[1],m.shape[2],m.shape[3]]):m}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/diag.js":
+/*!*************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/diag.js ***!
+ \*************************************************************/
+/*! exports provided: diag */function(e,t,n){"use strict";n.r(t),n.d(t,"diag",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({diag_:
+/**
+ * @license
+ * Copyright 2020 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){const t={x:Object(r.convertToTensor)(e,"x","diag")};return s.ENGINE.runKernel(o.Diag,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/dilation2d.js":
+/*!*******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/dilation2d.js ***!
+ \*******************************************************************/
+/*! exports provided: dilation2d */function(e,t,n){"use strict";n.r(t),n.d(t,"dilation2d",(function(){return d}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),u=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const d=Object(a.op)({dilation2d_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,a,d=[1,1],l="NHWC"){const c=Object(r.convertToTensor)(e,"x","dilation2d"),f=Object(r.convertToTensor)(t,"filter","dilation2d");i.assert(3===c.rank||4===c.rank,(()=>`Error in dilation2d: input must be rank 3 or 4, but got rank ${c.rank}.`)),i.assert(3===f.rank,(()=>`Error in dilation2d: filter must be rank 3, but got rank ${f.rank}.`)),i.assert("NHWC"===l,(()=>`Error in dilation2d: Only NHWC is currently supported, but got dataFormat of ${l}`));let p=c,m=!1;3===c.rank&&(p=Object(u.reshape)(c,[1,c.shape[0],c.shape[1],c.shape[2]]),m=!0);const h={x:p,filter:f},b={strides:n,pad:a,dilations:d},j=s.ENGINE.runKernel(o.Dilation2D,h,b);return m?Object(u.reshape)(j,[j.shape[1],j.shape[2],j.shape[3]]):j}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/div.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/div.js ***!
+ \************************************************************/
+/*! exports provided: div */function(e,t,n){"use strict";n.r(t),n.d(t,"div",(function(){return d}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util.js"),i=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),a=n(/*! ./floorDiv */"./node_modules/@tensorflow/tfjs-core/dist/ops/floorDiv.js"),u=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const d=Object(u.op)({div_:
+/**
+ * @license
+ * Copyright 2020 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,t){let n=Object(i.convertToTensor)(e,"a","div"),u=Object(i.convertToTensor)(t,"b","div");if([n,u]=Object(r.makeTypesMatch)(n,u),"int32"===n.dtype&&"int32"===u.dtype)return Object(a.floorDiv)(n,u);const d={a:n,b:u};return s.ENGINE.runKernel(o.RealDiv,d,{})}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/div_no_nan.js":
+/*!*******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/div_no_nan.js ***!
+ \*******************************************************************/
+/*! exports provided: divNoNan */function(e,t,n){"use strict";n.r(t),n.d(t,"divNoNan",(function(){return l}));var s=n(/*! ../tensor_util */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util.js"),o=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),r=n(/*! ./div */"./node_modules/@tensorflow/tfjs-core/dist/ops/div.js"),i=n(/*! ./equal */"./node_modules/@tensorflow/tfjs-core/dist/ops/equal.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),u=n(/*! ./where */"./node_modules/@tensorflow/tfjs-core/dist/ops/where.js"),d=n(/*! ./zeros_like */"./node_modules/@tensorflow/tfjs-core/dist/ops/zeros_like.js");const l=Object(a.op)({divNoNan_:
+/**
+ * @license
+ * Copyright 2020 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,t){let n=Object(o.convertToTensor)(e,"a","div"),a=Object(o.convertToTensor)(t,"b","div");[n,a]=Object(s.makeTypesMatch)(n,a);const l=Object(r.div)(n,a),c=Object(d.zerosLike)(l),f=Object(i.equal)(a,c);return Object(u.where)(f,c,l)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/dot.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/dot.js ***!
+ \************************************************************/
+/*! exports provided: dot */function(e,t,n){"use strict";n.r(t),n.d(t,"dot",(function(){return u}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./mat_mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mat_mul.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),a=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const u=Object(i.op)({dot_:
+/**
+ * @license
+ * Copyright 2020 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,t){const n=Object(s.convertToTensor)(e,"t1","dot"),i=Object(s.convertToTensor)(t,"t2","dot");o.assert(!(1!==n.rank&&2!==n.rank||1!==i.rank&&2!==i.rank),(()=>`Error in dot: inputs must all be rank 1 or 2, but got ranks ${n.rank} and ${i.rank}.`));const u=1===n.rank?n.size:n.shape[1],d=1===i.rank?i.size:i.shape[0];if(o.assert(u===d,(()=>`Error in dot: inner dimensions of inputs must match, but got ${u} and ${d}.`)),1===n.rank&&1===i.rank){const e=Object(a.reshape)(n,[1,-1]),t=Object(a.reshape)(i,[-1,1]),s=Object(r.matMul)(e,t);return Object(a.reshape)(s,[])}if(1===n.rank&&2===i.rank){const e=Object(a.reshape)(n,[1,-1]),t=Object(a.reshape)(i,[i.shape[0],i.shape[1]]),s=Object(r.matMul)(e,t);return Object(a.reshape)(s,[s.size])}if(2===n.rank&&1===i.rank){const e=Object(a.reshape)(i,[-1,1]),t=Object(r.matMul)(n,e);return Object(a.reshape)(t,[t.size])}{const e=Object(a.reshape)(i,[i.shape[0],i.shape[1]]);return Object(r.matMul)(n,e)}}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/dropout.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/dropout.js ***!
+ \****************************************************************/
+/*! exports provided: dropout */function(e,t,n){"use strict";n.r(t),n.d(t,"dropout",(function(){return p}));var s=n(/*! ../tensor */"./node_modules/@tensorflow/tfjs-core/dist/tensor.js"),o=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),r=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),i=n(/*! ./add */"./node_modules/@tensorflow/tfjs-core/dist/ops/add.js"),a=n(/*! ./div */"./node_modules/@tensorflow/tfjs-core/dist/ops/div.js"),u=n(/*! ./dropout_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/dropout_util.js"),d=n(/*! ./floor */"./node_modules/@tensorflow/tfjs-core/dist/ops/floor.js"),l=n(/*! ./mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),c=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),f=n(/*! ./random_uniform */"./node_modules/@tensorflow/tfjs-core/dist/ops/random_uniform.js");const p=Object(c.op)({dropout_:
+/**
+ * @license
+ * Copyright 2018 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,t,n,c){const p=Object(o.convertToTensor)(e,"x","dropout");if(r.assert("float32"===p.dtype,(()=>`x has to be a floating point tensor since it's going to be scaled, but got a ${p.dtype} tensor instead.`)),r.assert(t>=0&&t<1,(()=>`rate must be a float in the range [0, 1), but got ${t}.`)),0===t)return e instanceof s.Tensor?p.clone():p;const m=Object(u.getNoiseShape)(p,n),h=1-t,b=Object(a.div)(Object(d.floor)(Object(i.add)(Object(f.randomUniform)(m,0,1,"float32",c),h)),h);return Object(l.mul)(p,b)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/dropout_util.js":
+/*!*********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/dropout_util.js ***!
+ \*********************************************************************/
+/*! exports provided: getNoiseShape */function(e,t,n){"use strict";n.r(t),n.d(t,"getNoiseShape",(function(){return o}));var s=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");
+/**
+ * @license
+ * Copyright 2019 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 o(e,t){if(null==t)return e.shape.slice();if(s.arraysEqual(e.shape,t))return t;if(e.shape.length===t.length){const n=[];for(let s=0;sObject(r.convertToTensor)(e,`tensors${t}`,"einsum"))),i={equation:e};return s.ENGINE.runKernel(o.Einsum,n,i)}const u=Object(i.op)({einsum_:a})},"./node_modules/@tensorflow/tfjs-core/dist/ops/elu.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/elu.js ***!
+ \************************************************************/
+/*! exports provided: elu */function(e,t,n){"use strict";n.r(t),n.d(t,"elu",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({elu_:
+/**
+ * @license
+ * Copyright 2020 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){const t={x:Object(r.convertToTensor)(e,"x","elu")};return s.ENGINE.runKernel(o.Elu,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/equal.js":
+/*!**************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/equal.js ***!
+ \**************************************************************/
+/*! exports provided: equal */function(e,t,n){"use strict";n.r(t),n.d(t,"equal",(function(){return d}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util.js"),i=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),a=n(/*! ./broadcast_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/broadcast_util.js"),u=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const d=Object(u.op)({equal_:
+/**
+ * @license
+ * Copyright 2020 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,t){let n=Object(i.convertToTensor)(e,"a","equal","string_or_numeric"),u=Object(i.convertToTensor)(t,"b","equal","string_or_numeric");[n,u]=Object(r.makeTypesMatch)(n,u),Object(a.assertAndGetBroadcastShape)(n.shape,u.shape);const d={a:n,b:u};return s.ENGINE.runKernel(o.Equal,d)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/erf.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/erf.js ***!
+ \************************************************************/
+/*! exports provided: erf */function(e,t,n){"use strict";n.r(t),n.d(t,"erf",(function(){return d}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./cast */"./node_modules/@tensorflow/tfjs-core/dist/ops/cast.js"),u=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const d=Object(u.op)({erf_:
+/**
+ * @license
+ * Copyright 2018 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){let t=Object(r.convertToTensor)(e,"x","erf");i.assert("int32"===t.dtype||"float32"===t.dtype,(()=>"Input dtype must be `int32` or `float32`.")),"int32"===t.dtype&&(t=Object(a.cast)(t,"float32"));const n={x:t};return s.ENGINE.runKernel(o.Erf,n)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/erf_util.js":
+/*!*****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/erf_util.js ***!
+ \*****************************************************************/
+/*! exports provided: ERF_P, ERF_A1, ERF_A2, ERF_A3, ERF_A4, ERF_A5 */function(e,t,n){"use strict";n.r(t),n.d(t,"ERF_P",(function(){return s})),n.d(t,"ERF_A1",(function(){return o})),n.d(t,"ERF_A2",(function(){return r})),n.d(t,"ERF_A3",(function(){return i})),n.d(t,"ERF_A4",(function(){return a})),n.d(t,"ERF_A5",(function(){return u}));
+/**
+ * @license
+ * Copyright 2018 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.
+ * =============================================================================
+ */
+const s=.3275911,o=.254829592,r=-.284496736,i=1.421413741,a=-1.453152027,u=1.061405429},"./node_modules/@tensorflow/tfjs-core/dist/ops/exp.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/exp.js ***!
+ \************************************************************/
+/*! exports provided: exp */function(e,t,n){"use strict";n.r(t),n.d(t,"exp",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({exp_:
+/**
+ * @license
+ * Copyright 2018 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){const t={x:Object(r.convertToTensor)(e,"x","exp")};return s.ENGINE.runKernel(o.Exp,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/expand_dims.js":
+/*!********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/expand_dims.js ***!
+ \********************************************************************/
+/*! exports provided: expandDims */function(e,t,n){"use strict";n.r(t),n.d(t,"expandDims",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({expandDims_:
+/**
+ * @license
+ * Copyright 2020 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,t=0){const n=Object(r.convertToTensor)(e,"x","expandDims","string_or_numeric");i.assert(t<=n.rank,(()=>"Axis must be <= rank of the tensor"));const a={input:n},u={dim:t};return s.ENGINE.runKernel(o.ExpandDims,a,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/expm1.js":
+/*!**************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/expm1.js ***!
+ \**************************************************************/
+/*! exports provided: expm1 */function(e,t,n){"use strict";n.r(t),n.d(t,"expm1",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({expm1_:
+/**
+ * @license
+ * Copyright 2018 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){const t={x:Object(r.convertToTensor)(e,"x","expm1")};return s.ENGINE.runKernel(o.Expm1,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/eye.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/eye.js ***!
+ \************************************************************/
+/*! exports provided: eye */function(e,t,n){"use strict";n.r(t),n.d(t,"eye",(function(){return u}));var s=n(/*! ./buffer */"./node_modules/@tensorflow/tfjs-core/dist/ops/buffer.js"),o=n(/*! ./expand_dims */"./node_modules/@tensorflow/tfjs-core/dist/ops/expand_dims.js"),r=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),i=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js"),a=n(/*! ./tile */"./node_modules/@tensorflow/tfjs-core/dist/ops/tile.js");const u=Object(r.op)({eye_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,r="float32"){null==t&&(t=e);const u=Object(s.buffer)([e,t],r),d=e<=t?e:t;for(let e=0;e`Error in fused conv2d: input must be rank 4, but got rank ${C.rank}.`)),u.assert(4===I.rank,(()=>`Error in fused conv2d: filter must be rank 4, but got rank ${I.rank}.`)),null!=_&&u.assert(u.isInt(b),(()=>`Error in fused conv2d: pad must be an integer when using, dimRoundingMode ${_} but got pad ${b}.`)),u.assert(C.shape[3]===I.shape[2],(()=>`Error in conv2d: depth of input (${C.shape[3]}) must match input depth for filter ${I.shape[2]}.`)),u.assert(m.eitherStridesOrDilationsAreOne(n,w),(()=>`Error in conv2D: Either strides or dilations must be 1. Got strides ${n} and dilations '${w}'`)),u.assert("NHWC"===g,(()=>`Error in conv2d: got dataFormat of ${g} but only NHWC is currently supported.`));const T=m.computeConv2DInfo(C.shape,I.shape,n,w,b,_);let N,E;null!=k&&(N=Object(a.convertToTensor)(k,"bias","fused conv2d"),[N]=Object(i.makeTypesMatch)(N,O),l.assertAndGetBroadcastShape(T.outShape,N.shape)),null!=x&&(E=Object(a.convertToTensor)(x,"prelu weights","fused conv2d"));const A=(e,t)=>{const[s,o,r,i]=t,a=Object(h.getFusedDyActivation)(e,r,v);u.assert(m.tupleValuesAreOne(w),(()=>`Error in gradient of fused conv2D: dilation rates greater than 1 are not yet supported in gradients. Got dilations '${w}'`));const d=[Object(p.conv2DBackpropInput)(o.shape,a,s,n,b),Object(f.conv2DBackpropFilter)(o,a,s.shape,n,b)];if(null!=i){const e=Object(h.getFusedBiasGradient)(i,a);d.push(e)}return d},R={x:C,filter:I,bias:N,preluActivationWeights:E},F={strides:n,pad:b,dataFormat:g,dilations:w,dimRoundingMode:_,activation:v,leakyreluAlpha:y};if(null==k){return Object(o.customGrad)(((e,t,n)=>{let o=s.ENGINE.runKernel(r.FusedConv2D,R,F);return n([t,e,o]),S&&(o=Object(j.reshape)(o,[o.shape[1],o.shape[2],o.shape[3]])),{value:o,gradFunc:A}}))(C,I)}return Object(o.customGrad)(((e,t,n,o)=>{let i=s.ENGINE.runKernel(r.FusedConv2D,R,F);return o([t,e,i,n]),S&&(i=Object(j.reshape)(i,[i.shape[1],i.shape[2],i.shape[3]])),{value:i,gradFunc:A}}))(C,I,N)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/fused/depthwise_conv2d.js":
+/*!*******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/fused/depthwise_conv2d.js ***!
+ \*******************************************************************************/
+/*! exports provided: depthwiseConv2d */function(e,t,n){"use strict";n.r(t),n.d(t,"depthwiseConv2d",(function(){return g}));var s=n(/*! ../../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../../gradients */"./node_modules/@tensorflow/tfjs-core/dist/gradients.js"),r=n(/*! ../../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),i=n(/*! ../../tensor_util */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util.js"),a=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),u=n(/*! ../../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),d=n(/*! ../add */"./node_modules/@tensorflow/tfjs-core/dist/ops/add.js"),l=n(/*! ../broadcast_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/broadcast_util.js"),c=n(/*! ../conv_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/conv_util.js"),f=n(/*! ../depthwise_conv2d */"./node_modules/@tensorflow/tfjs-core/dist/ops/depthwise_conv2d.js"),p=n(/*! ../depthwise_conv2d_native_backprop_filter */"./node_modules/@tensorflow/tfjs-core/dist/ops/depthwise_conv2d_native_backprop_filter.js"),m=n(/*! ../depthwise_conv2d_native_backprop_input */"./node_modules/@tensorflow/tfjs-core/dist/ops/depthwise_conv2d_native_backprop_input.js"),h=n(/*! ../fused_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/fused_util.js"),b=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),j=n(/*! ../reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const g=Object(b.op)({fusedDepthwiseConv2d_:
+/**
+ * @license
+ * Copyright 2019 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({x:e,filter:t,strides:n,pad:b,dataFormat:g="NHWC",dilations:w=[1,1],dimRoundingMode:_,bias:k,activation:v="linear",preluActivationWeights:x,leakyreluAlpha:y}){if(!1===Object(h.shouldFuse)(s.ENGINE.state.gradientDepth,v)){let s=Object(f.depthwiseConv2d)(e,t,n,b,g,w,_);return null!=k&&(s=Object(d.add)(s,k)),Object(h.applyActivation)(s,v,x,y)}const O=Object(a.convertToTensor)(e,"x","depthwiseConv2d"),I=Object(a.convertToTensor)(t,"filter","depthwiseConv2d");let C=O,S=!1;3===O.rank&&(S=!0,C=Object(j.reshape)(O,[1,O.shape[0],O.shape[1],O.shape[2]])),u.assert(4===C.rank,(()=>`Error in fused depthwiseConv2d: input must be rank 4, but got rank ${C.rank}.`)),u.assert(4===I.rank,(()=>`Error in fused depthwiseConv2d: filter must be rank 4, but got rank ${I.rank}.`)),u.assert(C.shape[3]===I.shape[2],(()=>`Error in fused depthwiseConv2d: number of input channels (${C.shape[3]}) must match the inChannels dimension in filter ${I.shape[2]}.`)),null==w&&(w=[1,1]),u.assert(c.eitherStridesOrDilationsAreOne(n,w),(()=>`Error in fused depthwiseConv2d: Either strides or dilations must be 1. Got strides ${n} and dilations '${w}'`)),null!=_&&u.assert(u.isInt(b),(()=>`Error in fused depthwiseConv2d: pad must be an integer when using dimRoundingMode ${_} but got pad ${b}.`));const T=c.computeConv2DInfo(C.shape,I.shape,n,w,b,_,!0);let N,E;null!=k&&(N=Object(a.convertToTensor)(k,"bias","fused conv2d"),[N]=Object(i.makeTypesMatch)(N,O),l.assertAndGetBroadcastShape(T.outShape,N.shape)),null!=x&&(E=Object(a.convertToTensor)(x,"prelu weights","fused depthwiseConv2d"));const A=(e,t)=>{u.assert(c.tupleValuesAreOne(w),(()=>`Error in gradient of fused depthwiseConv2d: dilation rates greater than 1 are not yet supported. Got dilations '${w}'`));const[s,o,r,i]=t,a=Object(h.getFusedDyActivation)(e,r,v),d=Object(m.depthwiseConv2dNativeBackpropInput)(o.shape,a,s,n,b,w,_),l=Object(p.depthwiseConv2dNativeBackpropFilter)(o,a,s.shape,n,b,w,_);if(null!=i){return[d,l,Object(h.getFusedBiasGradient)(N,a)]}return[d,l]},R={x:C,filter:I,bias:N,preluActivationWeights:E},F={strides:n,pad:b,dataFormat:g,dilations:w,dimRoundingMode:_,activation:v,leakyreluAlpha:y};if(null==k){return Object(o.customGrad)(((e,t,n)=>{let o=s.ENGINE.runKernel(r.FusedDepthwiseConv2D,R,F);return n([t,e,o]),S&&(o=Object(j.reshape)(o,[o.shape[1],o.shape[2],o.shape[3]])),{value:o,gradFunc:A}}))(C,I)}return Object(o.customGrad)(((e,t,n,o)=>{let i=s.ENGINE.runKernel(r.FusedDepthwiseConv2D,R,F);return o([t,e,i,n]),S&&(i=Object(j.reshape)(i,[i.shape[1],i.shape[2],i.shape[3]])),{value:i,gradFunc:A}}))(C,I,N)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/fused/mat_mul.js":
+/*!**********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/fused/mat_mul.js ***!
+ \**********************************************************************/
+/*! exports provided: matMul */function(e,t,n){"use strict";n.r(t),n.d(t,"matMul",(function(){return h}));var s=n(/*! ../../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../../gradients */"./node_modules/@tensorflow/tfjs-core/dist/gradients.js"),r=n(/*! ../../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),i=n(/*! ../../tensor_util */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util.js"),a=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),u=n(/*! ../../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),d=n(/*! ../add */"./node_modules/@tensorflow/tfjs-core/dist/ops/add.js"),l=n(/*! ../broadcast_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/broadcast_util.js"),c=n(/*! ../fused_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/fused_util.js"),f=n(/*! ../mat_mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mat_mul.js"),p=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),m=n(/*! ../reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const h=Object(p.op)({fusedMatMul_:
+/**
+ * @license
+ * Copyright 2019 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({a:e,b:t,transposeA:n=!1,transposeB:p=!1,bias:h,activation:b="linear",preluActivationWeights:j,leakyreluAlpha:g}){if(!1===Object(c.shouldFuse)(s.ENGINE.state.gradientDepth,b)){let s=Object(f.matMul)(e,t,n,p);return null!=h&&(s=Object(d.add)(s,h)),Object(c.applyActivation)(s,b,j,g)}let w=Object(a.convertToTensor)(e,"a","fused matMul"),_=Object(a.convertToTensor)(t,"b","fused matMul");[w,_]=Object(i.makeTypesMatch)(w,_);const k=n?w.shape[w.rank-2]:w.shape[w.rank-1],v=p?_.shape[_.rank-1]:_.shape[_.rank-2],x=n?w.shape[w.rank-1]:w.shape[w.rank-2],y=p?_.shape[_.rank-2]:_.shape[_.rank-1],O=w.shape.slice(0,-2),I=_.shape.slice(0,-2),C=u.sizeFromShape(O),S=u.sizeFromShape(I);u.assert(w.rank>=2&&_.rank>=2&&w.rank===_.rank,(()=>`Error in fused matMul: inputs must have the same rank of at least 2, got ranks ${w.rank} and ${_.rank}.`)),u.assert(u.arraysEqual(O,I),(()=>`Error in fused matMul: outer dimensions (${O}) and (${I}) of Tensors with shapes ${w.shape} and ${_.shape} must match.`)),u.assert(k===v,(()=>`Error in fused matMul: inner shapes (${k}) and (${v}) of Tensors with shapes ${w.shape} and ${_.shape} and transposeA=${n} and transposeB=${p} must match.`));const T=w.shape.slice(0,-2).concat([x,y]),N=n?Object(m.reshape)(w,[C,k,x]):Object(m.reshape)(w,[C,x,k]),E=p?Object(m.reshape)(_,[S,y,v]):Object(m.reshape)(_,[S,v,y]);let A,R;null!=h&&(A=Object(a.convertToTensor)(h,"bias","fused matMul"),[A]=Object(i.makeTypesMatch)(A,w),l.assertAndGetBroadcastShape(T,A.shape)),null!=j&&(R=Object(a.convertToTensor)(j,"prelu weights","fused matMul"));const F=(e,t)=>{const[s,o,r,i]=t,a=Object(c.getFusedDyActivation)(Object(m.reshape)(e,r.shape),r,b);let u,d;if(n||p?!n&&p?(u=Object(f.matMul)(a,o,!1,!1),d=Object(f.matMul)(a,s,!0,!1)):n&&!p?(u=Object(f.matMul)(o,a,!1,!0),d=Object(f.matMul)(s,a,!1,!1)):(u=Object(f.matMul)(o,a,!0,!0),d=Object(f.matMul)(a,s,!0,!0)):(u=Object(f.matMul)(a,o,!1,!0),d=Object(f.matMul)(s,a,!0,!1)),null!=h){return[u,d,Object(c.getFusedBiasGradient)(i,a)]}return[u,d]},M={a:N,b:E,bias:A,preluActivationWeights:R},$={transposeA:n,transposeB:p,activation:b,leakyreluAlpha:g};if(null==h){return Object(o.customGrad)(((e,t,n)=>{const o=s.ENGINE.runKernel(r._FusedMatMul,M,$);return n([e,t,o]),{value:Object(m.reshape)(o,T),gradFunc:F}}))(N,E)}return Object(o.customGrad)(((e,t,n,o)=>{const i=s.ENGINE.runKernel(r._FusedMatMul,M,$);return o([e,t,i,n]),{value:Object(m.reshape)(i,T),gradFunc:F}}))(N,E,A)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/fused_ops.js":
+/*!******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/fused_ops.js ***!
+ \******************************************************************/
+/*! exports provided: conv2d, depthwiseConv2d, matMul */function(e,t,n){"use strict";n.r(t);var s=n(/*! ./fused/conv2d */"./node_modules/@tensorflow/tfjs-core/dist/ops/fused/conv2d.js");n.d(t,"conv2d",(function(){return s.conv2d}));var o=n(/*! ./fused/depthwise_conv2d */"./node_modules/@tensorflow/tfjs-core/dist/ops/fused/depthwise_conv2d.js");n.d(t,"depthwiseConv2d",(function(){return o.depthwiseConv2d}));var r=n(/*! ./fused/mat_mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/fused/mat_mul.js");n.d(t,"matMul",(function(){return r.matMul}))},"./node_modules/@tensorflow/tfjs-core/dist/ops/fused_util.js":
+/*!*******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/fused_util.js ***!
+ \*******************************************************************/
+/*! exports provided: getFusedDyActivation, getFusedBiasGradient, applyActivation, shouldFuse */function(e,t,n){"use strict";n.r(t),n.d(t,"getFusedDyActivation",(function(){return m})),n.d(t,"getFusedBiasGradient",(function(){return h})),n.d(t,"applyActivation",(function(){return b})),n.d(t,"shouldFuse",(function(){return j}));var s=n(/*! ./broadcast_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/broadcast_util.js"),o=n(/*! ./elu */"./node_modules/@tensorflow/tfjs-core/dist/ops/elu.js"),r=n(/*! ./leaky_relu */"./node_modules/@tensorflow/tfjs-core/dist/ops/leaky_relu.js"),i=n(/*! ./mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),a=n(/*! ./prelu */"./node_modules/@tensorflow/tfjs-core/dist/ops/prelu.js"),u=n(/*! ./relu */"./node_modules/@tensorflow/tfjs-core/dist/ops/relu.js"),d=n(/*! ./relu6 */"./node_modules/@tensorflow/tfjs-core/dist/ops/relu6.js"),l=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js"),c=n(/*! ./sigmoid */"./node_modules/@tensorflow/tfjs-core/dist/ops/sigmoid.js"),f=n(/*! ./step */"./node_modules/@tensorflow/tfjs-core/dist/ops/step.js"),p=n(/*! ./sum */"./node_modules/@tensorflow/tfjs-core/dist/ops/sum.js");
+/**
+ * @license
+ * Copyright 2019 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 m(e,t,n){if(null==n||"linear"===n)return e;if("relu"===n)return Object(i.mul)(e,Object(f.step)(t));throw new Error(`Cannot compute gradient for fused activation ${n}.`)}function h(e,t){let n=t;const o=s.getReductionAxes(e.shape,t.shape);return o.length>0&&(n=Object(p.sum)(n,o)),Object(l.reshape)(n,e.shape)}function b(e,t,n,s){if("linear"===t)return e;if("relu"===t)return Object(u.relu)(e);if("elu"===t)return Object(o.elu)(e);if("relu6"===t)return Object(d.relu6)(e);if("prelu"===t)return Object(a.prelu)(e,n);if("leakyrelu"===t)return Object(r.leakyRelu)(e,s);if("sigmoid"===t)return Object(c.sigmoid)(e);throw new Error(`Unknown fused activation ${t}.`)}const j=(e,t)=>!(e>0)||"linear"===t},"./node_modules/@tensorflow/tfjs-core/dist/ops/gather.js":
+/*!***************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/gather.js ***!
+ \***************************************************************/
+/*! exports provided: gather */function(e,t,n){"use strict";n.r(t),n.d(t,"gather",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({gather_:
+/**
+ * @license
+ * Copyright 2018 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,t,n=0,i=0){const a={x:Object(r.convertToTensor)(e,"x","gather"),indices:Object(r.convertToTensor)(t,"indices","gather","int32")},u={axis:n,batchDims:i};return s.ENGINE.runKernel(o.GatherV2,a,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/gather_nd.js":
+/*!******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/gather_nd.js ***!
+ \******************************************************************/
+/*! exports provided: gatherND */function(e,t,n){"use strict";n.r(t),n.d(t,"gatherND",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({gatherND_:
+/**
+ * @license
+ * Copyright 2018 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,t){const n=Object(r.convertToTensor)(t,"indices","gatherND","int32"),i={params:Object(r.convertToTensor)(e,"x","gatherND","string_or_numeric"),indices:n};return s.ENGINE.runKernel(o.GatherNd,i)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/gather_nd_util.js":
+/*!***********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/gather_nd_util.js ***!
+ \***********************************************************************/
+/*! exports provided: prepareAndValidate */function(e,t,n){"use strict";n.r(t),n.d(t,"prepareAndValidate",(function(){return o}));var s=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");function o(e,t){const n=e.shape.length,o=t.shape.length;if(n<1)throw new Error(`tf.gatherND() expects the input to be rank 1 or higher, but the rank was ${n}.`);if(o<1)throw new Error(`tf.gatherND() expects the indices to be rank 1 or higher, but the rank was ${o}.`);if("int32"!==t.dtype)throw new Error(`tf.gatherND() expects the indices to be int32 type, but the dtype was ${t.dtype}.`);if(t.shape[o-1]>n)throw new Error(`index innermost dimension length must be <= tensor rank; saw: ${t.shape[o-1]} vs. ${n}`);if(0===Object(s.sizeFromShape)(e.shape))throw new Error(`Requested more than 0 entries, but input is empty. Input shape: ${e.shape}.`);const r=t.shape,i=r[r.length-1];let a=1;for(let e=0;ee/l)),1].slice(0,i);return[d,a,l,c]}},"./node_modules/@tensorflow/tfjs-core/dist/ops/greater.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/greater.js ***!
+ \****************************************************************/
+/*! exports provided: greater */function(e,t,n){"use strict";n.r(t),n.d(t,"greater",(function(){return d}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util.js"),i=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),a=n(/*! ./broadcast_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/broadcast_util.js"),u=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const d=Object(u.op)({greater_:
+/**
+ * @license
+ * Copyright 2020 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,t){let n=Object(i.convertToTensor)(e,"a","greater","string_or_numeric"),u=Object(i.convertToTensor)(t,"b","greater","string_or_numeric");[n,u]=Object(r.makeTypesMatch)(n,u),Object(a.assertAndGetBroadcastShape)(n.shape,u.shape);const d={a:n,b:u};return s.ENGINE.runKernel(o.Greater,d)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/greater_equal.js":
+/*!**********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/greater_equal.js ***!
+ \**********************************************************************/
+/*! exports provided: greaterEqual */function(e,t,n){"use strict";n.r(t),n.d(t,"greaterEqual",(function(){return d}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util.js"),i=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),a=n(/*! ./broadcast_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/broadcast_util.js"),u=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const d=Object(u.op)({greaterEqual_:
+/**
+ * @license
+ * Copyright 2020 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,t){let n=Object(i.convertToTensor)(e,"a","greaterEqual","string_or_numeric"),u=Object(i.convertToTensor)(t,"b","greaterEqual","string_or_numeric");[n,u]=Object(r.makeTypesMatch)(n,u),Object(a.assertAndGetBroadcastShape)(n.shape,u.shape);const d={a:n,b:u};return s.ENGINE.runKernel(o.GreaterEqual,d)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/imag.js":
+/*!*************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/imag.js ***!
+ \*************************************************************/
+/*! exports provided: imag */function(e,t,n){"use strict";n.r(t),n.d(t,"imag",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({imag_:
+/**
+ * @license
+ * Copyright 2020 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){const t={input:Object(r.convertToTensor)(e,"input","imag")};return s.ENGINE.runKernel(o.Imag,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/image/crop_and_resize.js":
+/*!******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/image/crop_and_resize.js ***!
+ \******************************************************************************/
+/*! exports provided: cropAndResize */function(e,t,n){"use strict";n.r(t),n.d(t,"cropAndResize",(function(){return u}));var s=n(/*! ../../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({cropAndResize_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,a,u="bilinear",d=0){const l=Object(r.convertToTensor)(e,"image","cropAndResize"),c=Object(r.convertToTensor)(t,"boxes","cropAndResize","float32"),f=Object(r.convertToTensor)(n,"boxInd","cropAndResize","int32"),p=c.shape[0];i.assert(4===l.rank,(()=>`Error in cropAndResize: image must be rank 4,but got rank ${l.rank}.`)),i.assert(2===c.rank&&4===c.shape[1],(()=>`Error in cropAndResize: boxes must be have size [${p},4] but had shape ${c.shape}.`)),i.assert(1===f.rank&&f.shape[0]===p,(()=>`Error in cropAndResize: boxInd must be have size [${p}] but had shape ${c.shape}.`)),i.assert(2===a.length,(()=>`Error in cropAndResize: cropSize must be of length 2, but got length ${a.length}.`)),i.assert(a[0]>=1&&a[1]>=1,(()=>`cropSize must be atleast [1,1], but was ${a}`)),i.assert("bilinear"===u||"nearest"===u,(()=>`method must be bilinear or nearest, but was ${u}`));const m={image:l,boxes:c,boxInd:f},h={method:u,extrapolationValue:d,cropSize:a};return s.ENGINE.runKernel(o.CropAndResize,m,h)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/image/flip_left_right.js":
+/*!******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/image/flip_left_right.js ***!
+ \******************************************************************************/
+/*! exports provided: flipLeftRight */function(e,t,n){"use strict";n.r(t),n.d(t,"flipLeftRight",(function(){return u}));var s=n(/*! ../../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({flipLeftRight_:
+/**
+ * @license
+ * Copyright 2020 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){const t=Object(r.convertToTensor)(e,"image","flipLeftRight","float32");i.assert(4===t.rank,(()=>`Error in flipLeftRight: image must be rank 4,but got rank ${t.rank}.`));const n={image:t};return s.ENGINE.runKernel(o.FlipLeftRight,n,{})}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/image/non_max_suppression.js":
+/*!**********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/image/non_max_suppression.js ***!
+ \**********************************************************************************/
+/*! exports provided: nonMaxSuppression */function(e,t,n){"use strict";n.r(t),n.d(t,"nonMaxSuppression",(function(){return u}));var s=n(/*! ../../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../nonmax_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/nonmax_util.js"),a=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({nonMaxSuppression_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,a=.5,u=Number.NEGATIVE_INFINITY){const d=Object(r.convertToTensor)(e,"boxes","nonMaxSuppression"),l=Object(r.convertToTensor)(t,"scores","nonMaxSuppression"),c=Object(i.nonMaxSuppSanityCheck)(d,l,n,a,u),f={maxOutputSize:n=c.maxOutputSize,iouThreshold:a=c.iouThreshold,scoreThreshold:u=c.scoreThreshold};return s.ENGINE.runKernel(o.NonMaxSuppressionV3,{boxes:d,scores:l},f)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/image/non_max_suppression_async.js":
+/*!****************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/image/non_max_suppression_async.js ***!
+ \****************************************************************************************/
+/*! exports provided: nonMaxSuppressionAsync */function(e,t,n){"use strict";n.r(t),n.d(t,"nonMaxSuppressionAsync",(function(){return a}));var s=n(/*! ../../backends/non_max_suppression_impl */"./node_modules/@tensorflow/tfjs-core/dist/backends/non_max_suppression_impl.js"),o=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),r=n(/*! ../nonmax_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/nonmax_util.js"),i=n(/*! ../tensor1d */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor1d.js");const a=
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+async function(e,t,n,a=.5,u=Number.NEGATIVE_INFINITY){const d=Object(o.convertToTensor)(e,"boxes","nonMaxSuppressionAsync"),l=Object(o.convertToTensor)(t,"scores","nonMaxSuppressionAsync"),c=Object(r.nonMaxSuppSanityCheck)(d,l,n,a,u);n=c.maxOutputSize,a=c.iouThreshold,u=c.scoreThreshold;const f=await Promise.all([d.data(),l.data()]),p=f[0],m=f[1],{selectedIndices:h}=Object(s.nonMaxSuppressionV3Impl)(p,m,n,a,u);return d!==e&&d.dispose(),l!==t&&l.dispose(),Object(i.tensor1d)(h,"int32")}},"./node_modules/@tensorflow/tfjs-core/dist/ops/image/non_max_suppression_padded.js":
+/*!*****************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/image/non_max_suppression_padded.js ***!
+ \*****************************************************************************************/
+/*! exports provided: nonMaxSuppressionPadded */function(e,t,n){"use strict";n.r(t),n.d(t,"nonMaxSuppressionPadded",(function(){return u}));var s=n(/*! ../../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../nonmax_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/nonmax_util.js"),a=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({nonMaxSuppressionPadded_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,a=.5,u=Number.NEGATIVE_INFINITY,d=!1){const l=Object(r.convertToTensor)(e,"boxes","nonMaxSuppression"),c=Object(r.convertToTensor)(t,"scores","nonMaxSuppression"),f=Object(i.nonMaxSuppSanityCheck)(l,c,n,a,u,null),p={boxes:l,scores:c},m={maxOutputSize:f.maxOutputSize,iouThreshold:f.iouThreshold,scoreThreshold:f.scoreThreshold,padToMaxOutputSize:d},h=s.ENGINE.runKernel(o.NonMaxSuppressionV4,p,m);return{selectedIndices:h[0],validOutputs:h[1]}}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/image/non_max_suppression_padded_async.js":
+/*!***********************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/image/non_max_suppression_padded_async.js ***!
+ \***********************************************************************************************/
+/*! exports provided: nonMaxSuppressionPaddedAsync */function(e,t,n){"use strict";n.r(t),n.d(t,"nonMaxSuppressionPaddedAsync",(function(){return u}));var s=n(/*! ../../backends/non_max_suppression_impl */"./node_modules/@tensorflow/tfjs-core/dist/backends/non_max_suppression_impl.js"),o=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),r=n(/*! ../nonmax_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/nonmax_util.js"),i=n(/*! ../scalar */"./node_modules/@tensorflow/tfjs-core/dist/ops/scalar.js"),a=n(/*! ../tensor1d */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor1d.js");const u=
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+async function(e,t,n,u=.5,d=Number.NEGATIVE_INFINITY,l=!1){const c=Object(o.convertToTensor)(e,"boxes","nonMaxSuppressionAsync"),f=Object(o.convertToTensor)(t,"scores","nonMaxSuppressionAsync"),p=Object(r.nonMaxSuppSanityCheck)(c,f,n,u,d,null),m=p.maxOutputSize,h=p.iouThreshold,b=p.scoreThreshold,[j,g]=await Promise.all([c.data(),f.data()]),{selectedIndices:w,validOutputs:_}=Object(s.nonMaxSuppressionV4Impl)(j,g,m,h,b,l);return c!==e&&c.dispose(),f!==t&&f.dispose(),{selectedIndices:Object(a.tensor1d)(w,"int32"),validOutputs:Object(i.scalar)(_,"int32")}}},"./node_modules/@tensorflow/tfjs-core/dist/ops/image/non_max_suppression_with_score.js":
+/*!*********************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/image/non_max_suppression_with_score.js ***!
+ \*********************************************************************************************/
+/*! exports provided: nonMaxSuppressionWithScore */function(e,t,n){"use strict";n.r(t),n.d(t,"nonMaxSuppressionWithScore",(function(){return u}));var s=n(/*! ../../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../nonmax_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/nonmax_util.js"),a=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({nonMaxSuppressionWithScore_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,a=.5,u=Number.NEGATIVE_INFINITY,d=0){const l=Object(r.convertToTensor)(e,"boxes","nonMaxSuppression"),c=Object(r.convertToTensor)(t,"scores","nonMaxSuppression"),f=Object(i.nonMaxSuppSanityCheck)(l,c,n,a,u,d),p={boxes:l,scores:c},m={maxOutputSize:n=f.maxOutputSize,iouThreshold:a=f.iouThreshold,scoreThreshold:u=f.scoreThreshold,softNmsSigma:d=f.softNmsSigma},h=s.ENGINE.runKernel(o.NonMaxSuppressionV5,p,m);return{selectedIndices:h[0],selectedScores:h[1]}}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/image/non_max_suppression_with_score_async.js":
+/*!***************************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/image/non_max_suppression_with_score_async.js ***!
+ \***************************************************************************************************/
+/*! exports provided: nonMaxSuppressionWithScoreAsync */function(e,t,n){"use strict";n.r(t),n.d(t,"nonMaxSuppressionWithScoreAsync",(function(){return a}));var s=n(/*! ../../backends/non_max_suppression_impl */"./node_modules/@tensorflow/tfjs-core/dist/backends/non_max_suppression_impl.js"),o=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),r=n(/*! ../nonmax_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/nonmax_util.js"),i=n(/*! ../tensor1d */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor1d.js");const a=
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+async function(e,t,n,a=.5,u=Number.NEGATIVE_INFINITY,d=0){const l=Object(o.convertToTensor)(e,"boxes","nonMaxSuppressionAsync"),c=Object(o.convertToTensor)(t,"scores","nonMaxSuppressionAsync"),f=Object(r.nonMaxSuppSanityCheck)(l,c,n,a,u,d);n=f.maxOutputSize,a=f.iouThreshold,u=f.scoreThreshold,d=f.softNmsSigma;const p=await Promise.all([l.data(),c.data()]),m=p[0],h=p[1],{selectedIndices:b,selectedScores:j}=Object(s.nonMaxSuppressionV5Impl)(m,h,n,a,u,d);return l!==e&&l.dispose(),c!==t&&c.dispose(),{selectedIndices:Object(i.tensor1d)(b,"int32"),selectedScores:Object(i.tensor1d)(j)}}},"./node_modules/@tensorflow/tfjs-core/dist/ops/image/resize_bilinear.js":
+/*!******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/image/resize_bilinear.js ***!
+ \******************************************************************************/
+/*! exports provided: resizeBilinear */function(e,t,n){"use strict";n.r(t),n.d(t,"resizeBilinear",(function(){return d}));var s=n(/*! ../../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),u=n(/*! ../reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const d=Object(a.op)({resizeBilinear_:
+/**
+ * @license
+ * Copyright 2020 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,t,n=!1,a=!1){const d=Object(r.convertToTensor)(e,"images","resizeBilinear");i.assert(3===d.rank||4===d.rank,(()=>`Error in resizeBilinear: x must be rank 3 or 4, but got rank ${d.rank}.`)),i.assert(2===t.length,(()=>`Error in resizeBilinear: new shape must 2D, but got shape ${t}.`)),i.assert(!1===a||!1===n,(()=>"Error in resizeBilinear: If halfPixelCenters is true, alignCorners must be false."));let l=d,c=!1;3===d.rank&&(c=!0,l=Object(u.reshape)(d,[1,d.shape[0],d.shape[1],d.shape[2]]));const[]=t,f={images:l},p={alignCorners:n,halfPixelCenters:a,size:t},m=s.ENGINE.runKernel(o.ResizeBilinear,f,p);return c?Object(u.reshape)(m,[m.shape[1],m.shape[2],m.shape[3]]):m}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/image/resize_nearest_neighbor.js":
+/*!**************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/image/resize_nearest_neighbor.js ***!
+ \**************************************************************************************/
+/*! exports provided: resizeNearestNeighbor */function(e,t,n){"use strict";n.r(t),n.d(t,"resizeNearestNeighbor",(function(){return d}));var s=n(/*! ../../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),u=n(/*! ../reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const d=Object(a.op)({resizeNearestNeighbor_:
+/**
+ * @license
+ * Copyright 2020 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,t,n=!1,a=!1){const d=Object(r.convertToTensor)(e,"images","resizeNearestNeighbor");i.assert(3===d.rank||4===d.rank,(()=>`Error in resizeNearestNeighbor: x must be rank 3 or 4, but got rank ${d.rank}.`)),i.assert(2===t.length,(()=>`Error in resizeNearestNeighbor: new shape must 2D, but got shape ${t}.`)),i.assert("float32"===d.dtype||"int32"===d.dtype,(()=>"`images` must have `int32` or `float32` as dtype")),i.assert(!1===a||!1===n,(()=>"Error in resizeNearestNeighbor: If halfPixelCenters is true, alignCorners must be false."));let l=d,c=!1;3===d.rank&&(c=!0,l=Object(u.reshape)(d,[1,d.shape[0],d.shape[1],d.shape[2]]));const[]=t,f={images:l},p={alignCorners:n,halfPixelCenters:a,size:t},m=s.ENGINE.runKernel(o.ResizeNearestNeighbor,f,p);return c?Object(u.reshape)(m,[m.shape[1],m.shape[2],m.shape[3]]):m}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/image/rotate_with_offset.js":
+/*!*********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/image/rotate_with_offset.js ***!
+ \*********************************************************************************/
+/*! exports provided: rotateWithOffset */function(e,t,n){"use strict";n.r(t),n.d(t,"rotateWithOffset",(function(){return u}));var s=n(/*! ../../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({rotateWithOffset_:
+/**
+ * @license
+ * Copyright 2020 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,t,n=0,a=.5){const u=Object(r.convertToTensor)(e,"image","rotateWithOffset","float32");i.assert(4===u.rank,(()=>`Error in rotateWithOffset: image must be rank 4,but got rank ${u.rank}.`));const d={image:u},l={radians:t,fillValue:n,center:a};return s.ENGINE.runKernel(o.RotateWithOffset,d,l)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/image/threshold.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/image/threshold.js ***!
+ \************************************************************************/
+/*! exports provided: threshold */function(e,t,n){"use strict";n.r(t),n.d(t,"threshold",(function(){return x}));var s=n(/*! ../tensor1d */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor1d.js"),o=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),r=n(/*! ../cast */"./node_modules/@tensorflow/tfjs-core/dist/ops/cast.js"),i=n(/*! ../split */"./node_modules/@tensorflow/tfjs-core/dist/ops/split.js"),a=n(/*! ../bincount */"./node_modules/@tensorflow/tfjs-core/dist/ops/bincount.js"),u=n(/*! ../less_equal */"./node_modules/@tensorflow/tfjs-core/dist/ops/less_equal.js"),d=n(/*! ../greater */"./node_modules/@tensorflow/tfjs-core/dist/ops/greater.js"),l=n(/*! ../sum */"./node_modules/@tensorflow/tfjs-core/dist/ops/sum.js"),c=n(/*! ../add */"./node_modules/@tensorflow/tfjs-core/dist/ops/add.js"),f=n(/*! ../mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),p=n(/*! ../div */"./node_modules/@tensorflow/tfjs-core/dist/ops/div.js"),m=n(/*! ../sub */"./node_modules/@tensorflow/tfjs-core/dist/ops/sub.js"),h=n(/*! ../round */"./node_modules/@tensorflow/tfjs-core/dist/ops/round.js"),b=n(/*! ../where */"./node_modules/@tensorflow/tfjs-core/dist/ops/where.js"),j=n(/*! ../fill */"./node_modules/@tensorflow/tfjs-core/dist/ops/fill.js"),g=n(/*! ../slice */"./node_modules/@tensorflow/tfjs-core/dist/ops/slice.js"),w=n(/*! ../range */"./node_modules/@tensorflow/tfjs-core/dist/ops/range.js"),_=n(/*! ../tensor */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor.js"),k=n(/*! ../../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),v=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js");const x=Object(o.op)({threshold_:
+/**
+ * @license
+ * Copyright 2021 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
+ *
+ * https://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,t="binary",n=!1,o=.5){const x=Object(v.convertToTensor)(e,"image","threshold"),y=x.shape[0]*x.shape[1];let O,I,C,S,T=Object(f.mul)(Object(s.tensor1d)([o]),255);if(k.assert(3===x.rank,(()=>`Error in threshold: image must be rank 3,but got rank ${x.rank}.`)),k.assert(3===x.shape[2]||1===x.shape[2],(()=>`Error in threshold: image color channel must be equal to 3 or 1but got ${x.shape[2]}.`)),k.assert("int32"===x.dtype||"float32"===x.dtype,(()=>`Error in dtype: image dtype must be int32 or float32,but got dtype ${x.dtype}.`)),k.assert("otsu"===t||"binary"===t,(()=>`Method must be binary or otsu, but was ${t}`)),3===x.shape[2]){[O,I,C]=Object(i.split)(x,[1,1,1],-1);const e=Object(f.mul)(O,.2989),t=Object(f.mul)(I,.587),n=Object(f.mul)(C,.114);S=Object(c.add)(Object(c.add)(e,t),n)}else S=e;if("otsu"===t){T=function(e,t){let n,o,r,i,a,u,h=Object(s.tensor1d)([-1]),_=Object(s.tensor1d)([0]),k=Object(s.tensor1d)([0]);for(let v=0;v`Error in transform: image must be rank 4,but got rank ${l.rank}.`)),i.assert(2===c.rank&&(c.shape[0]===l.shape[0]||1===c.shape[0])&&8===c.shape[1],(()=>"Error in transform: Input transform should be batch x 8 or 1 x 8")),i.assert(null==d||2===d.length,(()=>`Error in transform: outputShape must be [height, width] or null, but got ${d}.`));const f={image:l,transforms:c},p={interpolation:n,fillMode:a,fillValue:u,outputShape:d};return s.ENGINE.runKernel(o.Transform,f,p)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/in_top_k.js":
+/*!*****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/in_top_k.js ***!
+ \*****************************************************************/
+/*! exports provided: inTopKAsync */function(e,t,n){"use strict";n.r(t),n.d(t,"inTopKAsync",(function(){return i}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./tensor */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor.js");const i=
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+async function(e,t,n=1){const i=Object(s.convertToTensor)(e,"predictions","inTopK"),a=Object(s.convertToTensor)(t,"targets","inTopK");Object(o.assert)(i.rank>1,(()=>`inTopK() expects the predictions to be of rank 2 or higher, but got ${i.rank}`)),Object(o.assert)(i.rank-1===a.rank,(()=>`predictions rank should be 1 larger than targets rank, but got predictions rank ${i.rank} and targets rank ${a.rank}`)),Object(o.assertShapesMatch)(i.shape.slice(0,i.shape.length-1),a.shape,"predictions's shape should be align with the targets' shape, except the last dimension.");const u=i.shape[i.shape.length-1];Object(o.assert)(n>0&&n<=u,(()=>`'k' passed to inTopK() must be > 0 && <= the predictions last dimension (${u}), but got ${n}`));const d=await i.data(),l=await a.data(),[c,f]=[d.length/u,u],p=Object(o.getTypedArrayFromDType)("bool",c);for(let e=0;et.value-e.value)),p[e]=0;for(let t=0;t`bandPart(): numLower must be an integer, got ${t}.`)),Object(o.assert)(n%1==0,(()=>`bandPart(): numUpper must be an integer, got ${n}.`));const u=Object(s.convertToTensor)(e,"a","bandPart");Object(o.assert)(u.rank>=2,(()=>`bandPart(): Rank must be at least 2, got ${u.rank}.`));const j=u.shape,[g,w]=u.shape.slice(-2);if(!(t<=g))throw new Error(`bandPart(): numLower (${t}) must not be greater than the number of rows (${g}).`);if(!(n<=w))throw new Error(`bandPart(): numUpper (${n}) must not be greater than the number of columns (${w}).`);t<0&&(t=g),n<0&&(n=w);const _=Object(l.reshape)(Object(d.range)(0,g,1,"int32"),[-1,1]),k=Object(d.range)(0,w,1,"int32"),v=Object(p.sub)(_,k),x=Object(a.logicalAnd)(Object(i.lessEqual)(v,Object(c.scalar)(+t,"int32")),Object(r.greaterEqual)(v,Object(c.scalar)(-n,"int32"))),y=Object(b.zeros)([g,w],u.dtype);return Object(l.reshape)(Object(f.stack)(Object(m.unstack)(Object(l.reshape)(u,[-1,g,w])).map((e=>Object(h.where)(x,e,y)))),j)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/linalg/gram_schmidt.js":
+/*!****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/linalg/gram_schmidt.js ***!
+ \****************************************************************************/
+/*! exports provided: gramSchmidt */function(e,t,n){"use strict";n.r(t),n.d(t,"gramSchmidt",(function(){return m}));var s=n(/*! ../../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ../div */"./node_modules/@tensorflow/tfjs-core/dist/ops/div.js"),i=n(/*! ../mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),a=n(/*! ../norm */"./node_modules/@tensorflow/tfjs-core/dist/ops/norm.js"),u=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),d=n(/*! ../split */"./node_modules/@tensorflow/tfjs-core/dist/ops/split.js"),l=n(/*! ../squeeze */"./node_modules/@tensorflow/tfjs-core/dist/ops/squeeze.js"),c=n(/*! ../stack */"./node_modules/@tensorflow/tfjs-core/dist/ops/stack.js"),f=n(/*! ../sub */"./node_modules/@tensorflow/tfjs-core/dist/ops/sub.js"),p=n(/*! ../sum */"./node_modules/@tensorflow/tfjs-core/dist/ops/sum.js");const m=Object(u.op)({gramSchmidt_:
+/**
+ * @license
+ * Copyright 2020 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){let t;if(Array.isArray(e)){t=!1,Object(o.assert)(null!=e&&e.length>0,(()=>"Gram-Schmidt process: input must not be null, undefined, or empty"));const n=e[0].shape[0];for(let t=1;t`Gram-Schmidt: Non-unique lengths found in the input vectors: (${e[t].shape[0]} vs. ${n})`))}else t=!0,e=Object(d.split)(e,e.shape[0],0).map((e=>Object(l.squeeze)(e,[0])));Object(o.assert)(e.length<=e[0].shape[0],(()=>`Gram-Schmidt: Number of vectors (${e.length}) exceeds number of dimensions (${e[0].shape[0]}).`));const n=[],u=e;for(let t=0;t{let e=u[t];if(t>0)for(let s=0;s{Object(r.assert)(2===e.shape.length,(()=>`qr2d() requires a 2D Tensor, but got a ${e.shape.length}D Tensor.`));const n=e.shape[0],h=e.shape[1];let b=Object(d.eye)(n),g=Object(i.clone)(e);const v=Object(_.tensor2d)([[1]],[1,1]);let y=Object(i.clone)(v);const O=n>=h?h:n;for(let e=0;e{const t=Object(j.slice)(g,[e,e],[n-e,1]),s=Object(m.norm)(t),o=Object(j.slice)(g,[e,e],[1,1]),r=Object(x.where)(Object(l.greater)(o,0),Object(_.tensor2d)([[-1]]),Object(_.tensor2d)([[1]])),d=Object(w.sub)(o,Object(f.mul)(r,s)),O=Object(u.div)(t,d);y=1===O.shape[0]?Object(i.clone)(v):Object(a.concat)([v,Object(j.slice)(O,[1,0],[O.shape[0]-1,O.shape[1]])],0);const I=Object(p.neg)(Object(u.div)(Object(c.matMul)(r,d),s)),C=Object(j.slice)(g,[e,0],[n-e,h]),S=Object(f.mul)(I,y),T=Object(k.transpose)(y);if(0===e)g=Object(w.sub)(C,Object(c.matMul)(S,Object(c.matMul)(T,C)));else{const t=Object(w.sub)(C,Object(c.matMul)(S,Object(c.matMul)(T,C)));g=Object(a.concat)([Object(j.slice)(g,[0,0],[e,h]),t],0)}const N=Object(k.transpose)(S),E=Object(j.slice)(b,[0,e],[n,b.shape[1]-e]);if(0===e)b=Object(w.sub)(E,Object(c.matMul)(Object(c.matMul)(E,y),N));else{const t=Object(w.sub)(E,Object(c.matMul)(Object(c.matMul)(E,y),N));b=Object(a.concat)([Object(j.slice)(b,[0,0],[n,e]),t],1)}return[y,g,b]})),Object(o.dispose)([t,r,d])}return!t&&n>h&&(b=Object(j.slice)(b,[0,0],[n,h]),g=Object(j.slice)(g,[0,0],[h,h])),[b,g]}))}const O=Object(h.op)({qr_:
+/**
+ * @license
+ * Copyright 2020 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,t=!1){if(Object(r.assert)(e.rank>=2,(()=>`qr() requires input tensor to have a rank >= 2, but got rank ${e.rank}`)),2===e.rank)return y(e,t);{const n=e.shape.slice(0,e.shape.length-2).reduce(((e,t)=>e*t)),s=Object(v.unstack)(Object(b.reshape)(e,[n,e.shape[e.shape.length-2],e.shape[e.shape.length-1]]),0),o=[],r=[];s.forEach((e=>{const[n,s]=y(e,t);o.push(n),r.push(s)}));return[Object(b.reshape)(Object(g.stack)(o,0),e.shape),Object(b.reshape)(Object(g.stack)(r,0),e.shape)]}}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/linspace.js":
+/*!*****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/linspace.js ***!
+ \*****************************************************************/
+/*! exports provided: linspace */function(e,t,n){"use strict";n.r(t),n.d(t,"linspace",(function(){return r}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js");
+/**
+ * @license
+ * Copyright 2018 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 r(e,t,n){if(n<=0)throw new Error("The number of values should be positive.");const r={start:e,stop:t,num:n};return s.ENGINE.runKernel(o.LinSpace,{},r)}},"./node_modules/@tensorflow/tfjs-core/dist/ops/local_response_normalization.js":
+/*!*************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/local_response_normalization.js ***!
+ \*************************************************************************************/
+/*! exports provided: localResponseNormalization */function(e,t,n){"use strict";n.r(t),n.d(t,"localResponseNormalization",(function(){return d}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),u=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const d=Object(a.op)({localResponseNormalization_:
+/**
+ * @license
+ * Copyright 2020 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,t=5,n=1,a=1,d=.5){const l=Object(r.convertToTensor)(e,"x","localResponseNormalization");i.assert(4===l.rank||3===l.rank,(()=>`Error in localResponseNormalization: x must be rank 3 or 4 but got\n rank ${l.rank}.`)),i.assert(i.isInt(t),(()=>`Error in localResponseNormalization: depthRadius must be an integer but got depthRadius ${t}.`));let c=l,f=!1;3===l.rank&&(f=!0,c=Object(u.reshape)(l,[1,l.shape[0],l.shape[1],l.shape[2]]));const p={x:c},m={depthRadius:t,bias:n,alpha:a,beta:d},h=s.ENGINE.runKernel(o.LRN,p,m);return f?Object(u.reshape)(h,[h.shape[1],h.shape[2],h.shape[3]]):h}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/log.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/log.js ***!
+ \************************************************************/
+/*! exports provided: log */function(e,t,n){"use strict";n.r(t),n.d(t,"log",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({log_:
+/**
+ * @license
+ * Copyright 2018 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){const t={x:Object(r.convertToTensor)(e,"x","log")};return s.ENGINE.runKernel(o.Log,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/log1p.js":
+/*!**************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/log1p.js ***!
+ \**************************************************************/
+/*! exports provided: log1p */function(e,t,n){"use strict";n.r(t),n.d(t,"log1p",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({log1p_:
+/**
+ * @license
+ * Copyright 2018 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){const t={x:Object(r.convertToTensor)(e,"x","log1p")};return s.ENGINE.runKernel(o.Log1p,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/log_sigmoid.js":
+/*!********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/log_sigmoid.js ***!
+ \********************************************************************/
+/*! exports provided: logSigmoid */function(e,t,n){"use strict";n.r(t),n.d(t,"logSigmoid",(function(){return l}));var s=n(/*! ../gradients */"./node_modules/@tensorflow/tfjs-core/dist/gradients.js"),o=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),r=n(/*! ./mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),i=n(/*! ./neg */"./node_modules/@tensorflow/tfjs-core/dist/ops/neg.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),u=n(/*! ./sigmoid */"./node_modules/@tensorflow/tfjs-core/dist/ops/sigmoid.js"),d=n(/*! ./softplus */"./node_modules/@tensorflow/tfjs-core/dist/ops/softplus.js");const l=Object(a.op)({logSigmoid_:
+/**
+ * @license
+ * Copyright 2018 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){const t=Object(o.convertToTensor)(e,"x","logSigmoid");return Object(s.customGrad)((e=>({value:Object(i.neg)(Object(d.softplus)(Object(i.neg)(e))),gradFunc:t=>Object(r.mul)(t,Object(u.sigmoid)(Object(i.neg)(e)))})))(t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/log_softmax.js":
+/*!********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/log_softmax.js ***!
+ \********************************************************************/
+/*! exports provided: logSoftmax */function(e,t,n){"use strict";n.r(t),n.d(t,"logSoftmax",(function(){return p}));var s=n(/*! ../gradients */"./node_modules/@tensorflow/tfjs-core/dist/gradients.js"),o=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),r=n(/*! ./cast */"./node_modules/@tensorflow/tfjs-core/dist/ops/cast.js"),i=n(/*! ./exp */"./node_modules/@tensorflow/tfjs-core/dist/ops/exp.js"),a=n(/*! ./log */"./node_modules/@tensorflow/tfjs-core/dist/ops/log.js"),u=n(/*! ./max */"./node_modules/@tensorflow/tfjs-core/dist/ops/max.js"),d=n(/*! ./mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),l=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),c=n(/*! ./sub */"./node_modules/@tensorflow/tfjs-core/dist/ops/sub.js"),f=n(/*! ./sum */"./node_modules/@tensorflow/tfjs-core/dist/ops/sum.js");const p=Object(l.op)({logSoftmax_:
+/**
+ * @license
+ * Copyright 2020 Google Inc. 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,t=-1){const n=Object(o.convertToTensor)(e,"logits","logSoftmax");if(-1===t&&(t=n.rank-1),t!==n.rank-1)throw Error(`Log Softmax along a non-last dimension is not yet supported. Logits was rank ${n.rank} and axis was ${t}`);return Object(s.customGrad)(((e,n)=>{const s=Object(u.max)(e,t,!0),o=Object(c.sub)(e,s),l=Object(c.sub)(Object(r.cast)(o,"float32"),Object(a.log)(Object(f.sum)(Object(i.exp)(o),t,!0)));n([l]);return{value:l,gradFunc:(e,n)=>{const[s]=n,o=Object(i.exp)(s);return Object(c.sub)(e,Object(d.mul)(Object(f.sum)(e,t,!0),o))}}}))(n)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/log_sum_exp.js":
+/*!********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/log_sum_exp.js ***!
+ \********************************************************************/
+/*! exports provided: logSumExp */function(e,t,n){"use strict";n.r(t),n.d(t,"logSumExp",(function(){return m}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./add */"./node_modules/@tensorflow/tfjs-core/dist/ops/add.js"),i=n(/*! ./axis_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/axis_util.js"),a=n(/*! ./exp */"./node_modules/@tensorflow/tfjs-core/dist/ops/exp.js"),u=n(/*! ./log */"./node_modules/@tensorflow/tfjs-core/dist/ops/log.js"),d=n(/*! ./max */"./node_modules/@tensorflow/tfjs-core/dist/ops/max.js"),l=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),c=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js"),f=n(/*! ./sub */"./node_modules/@tensorflow/tfjs-core/dist/ops/sub.js"),p=n(/*! ./sum */"./node_modules/@tensorflow/tfjs-core/dist/ops/sum.js");const m=Object(l.op)({logSumExp_:
+/**
+ * @license
+ * Copyright 2020 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,t=null,n=!1){const l=Object(s.convertToTensor)(e,"x","logSumExp"),m=Object(o.parseAxisParam)(t,l.shape),h=Object(d.max)(l,m,!0),b=Object(f.sub)(l,h),j=Object(a.exp)(b),g=Object(p.sum)(j,m),w=Object(u.log)(g),_=Object(r.add)(Object(c.reshape)(h,w.shape),w);if(n){const e=Object(i.expandShapeToKeepDim)(_.shape,m);return Object(c.reshape)(_,e)}return _}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/logical_and.js":
+/*!********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/logical_and.js ***!
+ \********************************************************************/
+/*! exports provided: logicalAnd */function(e,t,n){"use strict";n.r(t),n.d(t,"logicalAnd",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./broadcast_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/broadcast_util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({logicalAnd_:
+/**
+ * @license
+ * Copyright 2020 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,t){const n=Object(r.convertToTensor)(e,"a","logicalAnd","bool"),a=Object(r.convertToTensor)(t,"b","logicalAnd","bool");Object(i.assertAndGetBroadcastShape)(n.shape,a.shape);const u={a:n,b:a};return s.ENGINE.runKernel(o.LogicalAnd,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/logical_not.js":
+/*!********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/logical_not.js ***!
+ \********************************************************************/
+/*! exports provided: logicalNot */function(e,t,n){"use strict";n.r(t),n.d(t,"logicalNot",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({logicalNot_:
+/**
+ * @license
+ * Copyright 2020 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){const t={x:Object(r.convertToTensor)(e,"x","logicalNot","bool")};return s.ENGINE.runKernel(o.LogicalNot,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/logical_or.js":
+/*!*******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/logical_or.js ***!
+ \*******************************************************************/
+/*! exports provided: logicalOr */function(e,t,n){"use strict";n.r(t),n.d(t,"logicalOr",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./broadcast_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/broadcast_util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({logicalOr_:
+/**
+ * @license
+ * Copyright 2020 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,t){const n=Object(r.convertToTensor)(e,"a","logicalOr","bool"),a=Object(r.convertToTensor)(t,"b","logicalOr","bool");Object(i.assertAndGetBroadcastShape)(n.shape,a.shape);const u={a:n,b:a};return s.ENGINE.runKernel(o.LogicalOr,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/logical_xor.js":
+/*!********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/logical_xor.js ***!
+ \********************************************************************/
+/*! exports provided: logicalXor */function(e,t,n){"use strict";n.r(t),n.d(t,"logicalXor",(function(){return d}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ./broadcast_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/broadcast_util.js"),r=n(/*! ./logical_and */"./node_modules/@tensorflow/tfjs-core/dist/ops/logical_and.js"),i=n(/*! ./logical_not */"./node_modules/@tensorflow/tfjs-core/dist/ops/logical_not.js"),a=n(/*! ./logical_or */"./node_modules/@tensorflow/tfjs-core/dist/ops/logical_or.js"),u=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const d=Object(u.op)({logicalXor_:
+/**
+ * @license
+ * Copyright 2020 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,t){const n=Object(s.convertToTensor)(e,"a","logicalXor","bool"),u=Object(s.convertToTensor)(t,"b","logicalXor","bool");return Object(o.assertAndGetBroadcastShape)(n.shape,u.shape),Object(r.logicalAnd)(Object(a.logicalOr)(e,t),Object(i.logicalNot)(Object(r.logicalAnd)(e,t)))}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/loss_ops_utils.js":
+/*!***********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/loss_ops_utils.js ***!
+ \***********************************************************************/
+/*! exports provided: Reduction */function(e,t,n){"use strict";
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+var s;n.r(t),n.d(t,"Reduction",(function(){return s})),function(e){e[e.NONE=0]="NONE",e[e.MEAN=1]="MEAN",e[e.SUM=2]="SUM",e[e.SUM_BY_NONZERO_WEIGHTS=3]="SUM_BY_NONZERO_WEIGHTS"}(s||(s={}))},"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/absolute_difference.js":
+/*!***********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/losses/absolute_difference.js ***!
+ \***********************************************************************************/
+/*! exports provided: absoluteDifference */function(e,t,n){"use strict";n.r(t),n.d(t,"absoluteDifference",(function(){return l}));var s=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ../abs */"./node_modules/@tensorflow/tfjs-core/dist/ops/abs.js"),i=n(/*! ../loss_ops_utils */"./node_modules/@tensorflow/tfjs-core/dist/ops/loss_ops_utils.js"),a=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),u=n(/*! ../sub */"./node_modules/@tensorflow/tfjs-core/dist/ops/sub.js"),d=n(/*! ./compute_weighted_loss */"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/compute_weighted_loss.js");const l=Object(a.op)({absoluteDifference_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,a=i.Reduction.SUM_BY_NONZERO_WEIGHTS){const l=Object(s.convertToTensor)(e,"labels","absoluteDifference"),c=Object(s.convertToTensor)(t,"predictions","absoluteDifference");let f=null;null!=n&&(f=Object(s.convertToTensor)(n,"weights","absoluteDifference")),Object(o.assertShapesMatch)(l.shape,c.shape,"Error in absoluteDifference: ");const p=Object(r.abs)(Object(u.sub)(l,c));return Object(d.computeWeightedLoss)(p,f,a)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/compute_weighted_loss.js":
+/*!*************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/losses/compute_weighted_loss.js ***!
+ \*************************************************************************************/
+/*! exports provided: computeWeightedLoss */function(e,t,n){"use strict";n.r(t),n.d(t,"computeWeightedLoss",(function(){return m}));var s=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../cast */"./node_modules/@tensorflow/tfjs-core/dist/ops/cast.js"),r=n(/*! ../div */"./node_modules/@tensorflow/tfjs-core/dist/ops/div.js"),i=n(/*! ../loss_ops_utils */"./node_modules/@tensorflow/tfjs-core/dist/ops/loss_ops_utils.js"),a=n(/*! ../mean */"./node_modules/@tensorflow/tfjs-core/dist/ops/mean.js"),u=n(/*! ../mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),d=n(/*! ../not_equal */"./node_modules/@tensorflow/tfjs-core/dist/ops/not_equal.js"),l=n(/*! ../ones */"./node_modules/@tensorflow/tfjs-core/dist/ops/ones.js"),c=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),f=n(/*! ../scalar */"./node_modules/@tensorflow/tfjs-core/dist/ops/scalar.js"),p=n(/*! ../sum */"./node_modules/@tensorflow/tfjs-core/dist/ops/sum.js");const m=Object(c.op)({computeWeightedLoss_:function(e,t,n=i.Reduction.SUM_BY_NONZERO_WEIGHTS){const c=Object(s.convertToTensor)(e,"losses","computeWeightedLoss");let m=null;null!=t&&(m=Object(s.convertToTensor)(t,"weights","computeWeightedLoss"));const h=null==m?c:Object(u.mul)(c,m);if(n===i.Reduction.NONE)return h;if(n===i.Reduction.SUM)return Object(p.sum)(h);if(n===i.Reduction.MEAN){if(null==m)return Object(a.mean)(h);{const e=c.size/m.size,t=Object(r.div)(Object(p.sum)(h),Object(p.sum)(m));return e>1?Object(r.div)(t,Object(f.scalar)(e)):t}}if(n===i.Reduction.SUM_BY_NONZERO_WEIGHTS){if(null==m)return Object(r.div)(Object(p.sum)(h),Object(f.scalar)(c.size));{const e=Object(u.mul)(m,Object(l.ones)(c.shape)),t=Object(o.cast)(Object(p.sum)(Object(d.notEqual)(e,Object(f.scalar)(0))),"float32");return Object(r.div)(Object(p.sum)(h),t)}}throw Error(`Unknown reduction: ${n}`)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/cosine_distance.js":
+/*!*******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/losses/cosine_distance.js ***!
+ \*******************************************************************************/
+/*! exports provided: cosineDistance */function(e,t,n){"use strict";n.r(t),n.d(t,"cosineDistance",(function(){return f}));var s=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ../loss_ops_utils */"./node_modules/@tensorflow/tfjs-core/dist/ops/loss_ops_utils.js"),i=n(/*! ../mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),a=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),u=n(/*! ../scalar */"./node_modules/@tensorflow/tfjs-core/dist/ops/scalar.js"),d=n(/*! ../sub */"./node_modules/@tensorflow/tfjs-core/dist/ops/sub.js"),l=n(/*! ../sum */"./node_modules/@tensorflow/tfjs-core/dist/ops/sum.js"),c=n(/*! ./compute_weighted_loss */"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/compute_weighted_loss.js");const f=Object(a.op)({cosineDistance_:function(e,t,n,a,f=r.Reduction.SUM_BY_NONZERO_WEIGHTS){const p=Object(s.convertToTensor)(e,"labels","cosineDistance"),m=Object(s.convertToTensor)(t,"predictions","cosineDistance");let h=null;null!=a&&(h=Object(s.convertToTensor)(a,"weights","cosineDistance")),Object(o.assertShapesMatch)(p.shape,m.shape,"Error in cosineDistance: ");const b=Object(u.scalar)(1),j=Object(d.sub)(b,Object(l.sum)(Object(i.mul)(p,m),n,!0));return Object(c.computeWeightedLoss)(j,h,f)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/hinge_loss.js":
+/*!**************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/losses/hinge_loss.js ***!
+ \**************************************************************************/
+/*! exports provided: hingeLoss */function(e,t,n){"use strict";n.r(t),n.d(t,"hingeLoss",(function(){return f}));var s=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ../loss_ops_utils */"./node_modules/@tensorflow/tfjs-core/dist/ops/loss_ops_utils.js"),i=n(/*! ../mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),a=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),u=n(/*! ../relu */"./node_modules/@tensorflow/tfjs-core/dist/ops/relu.js"),d=n(/*! ../scalar */"./node_modules/@tensorflow/tfjs-core/dist/ops/scalar.js"),l=n(/*! ../sub */"./node_modules/@tensorflow/tfjs-core/dist/ops/sub.js"),c=n(/*! ./compute_weighted_loss */"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/compute_weighted_loss.js");const f=Object(a.op)({hingeLoss_:function(e,t,n,a=r.Reduction.SUM_BY_NONZERO_WEIGHTS){let f=Object(s.convertToTensor)(e,"labels","hingeLoss");const p=Object(s.convertToTensor)(t,"predictions","hingeLoss");let m=null;null!=n&&(m=Object(s.convertToTensor)(n,"weights","hingeLoss")),Object(o.assertShapesMatch)(f.shape,p.shape,"Error in hingeLoss: ");const h=Object(d.scalar)(1);f=Object(l.sub)(Object(i.mul)(Object(d.scalar)(2),f),h);const b=Object(u.relu)(Object(l.sub)(h,Object(i.mul)(f,p)));return Object(c.computeWeightedLoss)(b,m,a)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/huber_loss.js":
+/*!**************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/losses/huber_loss.js ***!
+ \**************************************************************************/
+/*! exports provided: huberLoss */function(e,t,n){"use strict";n.r(t),n.d(t,"huberLoss",(function(){return h}));var s=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ../abs */"./node_modules/@tensorflow/tfjs-core/dist/ops/abs.js"),i=n(/*! ../add */"./node_modules/@tensorflow/tfjs-core/dist/ops/add.js"),a=n(/*! ../loss_ops_utils */"./node_modules/@tensorflow/tfjs-core/dist/ops/loss_ops_utils.js"),u=n(/*! ../minimum */"./node_modules/@tensorflow/tfjs-core/dist/ops/minimum.js"),d=n(/*! ../mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),l=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),c=n(/*! ../scalar */"./node_modules/@tensorflow/tfjs-core/dist/ops/scalar.js"),f=n(/*! ../square */"./node_modules/@tensorflow/tfjs-core/dist/ops/square.js"),p=n(/*! ../sub */"./node_modules/@tensorflow/tfjs-core/dist/ops/sub.js"),m=n(/*! ./compute_weighted_loss */"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/compute_weighted_loss.js");const h=Object(l.op)({huberLoss_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,l=1,h=a.Reduction.SUM_BY_NONZERO_WEIGHTS){const b=Object(s.convertToTensor)(e,"labels","huberLoss"),j=Object(s.convertToTensor)(t,"predictions","huberLoss");let g=null;null!=n&&(g=Object(s.convertToTensor)(n,"weights","huberLoss")),Object(o.assertShapesMatch)(b.shape,j.shape,"Error in huberLoss: ");const w=Object(c.scalar)(l),_=Object(r.abs)(Object(p.sub)(j,b)),k=Object(u.minimum)(_,w),v=Object(p.sub)(_,k),x=Object(i.add)(Object(d.mul)(Object(c.scalar)(.5),Object(f.square)(k)),Object(d.mul)(w,v));return Object(m.computeWeightedLoss)(x,g,h)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/log_loss.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/losses/log_loss.js ***!
+ \************************************************************************/
+/*! exports provided: logLoss */function(e,t,n){"use strict";n.r(t),n.d(t,"logLoss",(function(){return m}));var s=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ../add */"./node_modules/@tensorflow/tfjs-core/dist/ops/add.js"),i=n(/*! ../log */"./node_modules/@tensorflow/tfjs-core/dist/ops/log.js"),a=n(/*! ../loss_ops_utils */"./node_modules/@tensorflow/tfjs-core/dist/ops/loss_ops_utils.js"),u=n(/*! ../mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),d=n(/*! ../neg */"./node_modules/@tensorflow/tfjs-core/dist/ops/neg.js"),l=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),c=n(/*! ../scalar */"./node_modules/@tensorflow/tfjs-core/dist/ops/scalar.js"),f=n(/*! ../sub */"./node_modules/@tensorflow/tfjs-core/dist/ops/sub.js"),p=n(/*! ./compute_weighted_loss */"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/compute_weighted_loss.js");const m=Object(l.op)({logLoss_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,l=1e-7,m=a.Reduction.SUM_BY_NONZERO_WEIGHTS){const h=Object(s.convertToTensor)(e,"labels","logLoss"),b=Object(s.convertToTensor)(t,"predictions","logLoss");let j=null;null!=n&&(j=Object(s.convertToTensor)(n,"weights","logLoss")),Object(o.assertShapesMatch)(h.shape,b.shape,"Error in logLoss: ");const g=Object(c.scalar)(1),w=Object(c.scalar)(l),_=Object(d.neg)(Object(u.mul)(h,Object(i.log)(Object(r.add)(b,w)))),k=Object(u.mul)(Object(f.sub)(g,h),Object(i.log)(Object(r.add)(Object(f.sub)(g,b),w))),v=Object(f.sub)(_,k);return Object(p.computeWeightedLoss)(v,j,m)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/mean_squared_error.js":
+/*!**********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/losses/mean_squared_error.js ***!
+ \**********************************************************************************/
+/*! exports provided: meanSquaredError */function(e,t,n){"use strict";n.r(t),n.d(t,"meanSquaredError",(function(){return d}));var s=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ../loss_ops_utils */"./node_modules/@tensorflow/tfjs-core/dist/ops/loss_ops_utils.js"),i=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),a=n(/*! ../squared_difference */"./node_modules/@tensorflow/tfjs-core/dist/ops/squared_difference.js"),u=n(/*! ./compute_weighted_loss */"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/compute_weighted_loss.js");const d=Object(i.op)({meanSquaredError_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,i=r.Reduction.SUM_BY_NONZERO_WEIGHTS){const d=Object(s.convertToTensor)(e,"labels","meanSquaredError"),l=Object(s.convertToTensor)(t,"predictions","meanSquaredError");let c=null;null!=n&&(c=Object(s.convertToTensor)(n,"weights","meanSquaredError")),Object(o.assertShapesMatch)(d.shape,l.shape,"Error in meanSquaredError: ");const f=Object(a.squaredDifference)(d,l);return Object(u.computeWeightedLoss)(f,c,i)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/sigmoid_cross_entropy.js":
+/*!*************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/losses/sigmoid_cross_entropy.js ***!
+ \*************************************************************************************/
+/*! exports provided: sigmoidCrossEntropy */function(e,t,n){"use strict";n.r(t),n.d(t,"sigmoidCrossEntropy",(function(){return j}));var s=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ../abs */"./node_modules/@tensorflow/tfjs-core/dist/ops/abs.js"),i=n(/*! ../add */"./node_modules/@tensorflow/tfjs-core/dist/ops/add.js"),a=n(/*! ../exp */"./node_modules/@tensorflow/tfjs-core/dist/ops/exp.js"),u=n(/*! ../log1p */"./node_modules/@tensorflow/tfjs-core/dist/ops/log1p.js"),d=n(/*! ../loss_ops_utils */"./node_modules/@tensorflow/tfjs-core/dist/ops/loss_ops_utils.js"),l=n(/*! ../mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),c=n(/*! ../neg */"./node_modules/@tensorflow/tfjs-core/dist/ops/neg.js"),f=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),p=n(/*! ../relu */"./node_modules/@tensorflow/tfjs-core/dist/ops/relu.js"),m=n(/*! ../scalar */"./node_modules/@tensorflow/tfjs-core/dist/ops/scalar.js"),h=n(/*! ../sub */"./node_modules/@tensorflow/tfjs-core/dist/ops/sub.js"),b=n(/*! ./compute_weighted_loss */"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/compute_weighted_loss.js");const j=Object(f.op)({sigmoidCrossEntropy_:function(e,t,n,f=0,j=d.Reduction.SUM_BY_NONZERO_WEIGHTS){let g=Object(s.convertToTensor)(e,"multiClassLabels","sigmoidCrossEntropy");const w=Object(s.convertToTensor)(t,"logits","sigmoidCrossEntropy");let _=null;if(null!=n&&(_=Object(s.convertToTensor)(n,"weights","sigmoidCrossEntropy")),Object(o.assertShapesMatch)(g.shape,w.shape,"Error in sigmoidCrossEntropy: "),f>0){const e=Object(m.scalar)(f),t=Object(m.scalar)(1),n=Object(m.scalar)(.5);g=Object(i.add)(Object(l.mul)(g,Object(h.sub)(t,e)),Object(l.mul)(n,e))}const k=
+/**
+ * @license
+ * Copyright 2020 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,t){const n=Object(s.convertToTensor)(e,"labels","sigmoidCrossEntropyWithLogits"),d=Object(s.convertToTensor)(t,"logits","sigmoidCrossEntropyWithLogits");Object(o.assertShapesMatch)(n.shape,d.shape,"Error in sigmoidCrossEntropyWithLogits: ");const f=Object(p.relu)(d),m=Object(l.mul)(d,n),b=Object(u.log1p)(Object(a.exp)(Object(c.neg)(Object(r.abs)(d))));return Object(i.add)(Object(h.sub)(f,m),b)}(g,w);return Object(b.computeWeightedLoss)(k,_,j)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/softmax_cross_entropy.js":
+/*!*************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/losses/softmax_cross_entropy.js ***!
+ \*************************************************************************************/
+/*! exports provided: softmaxCrossEntropy */function(e,t,n){"use strict";n.r(t),n.d(t,"softmaxCrossEntropy",(function(){return k}));var s=n(/*! ../../gradients */"./node_modules/@tensorflow/tfjs-core/dist/gradients.js"),o=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),r=n(/*! ../../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),i=n(/*! ../add */"./node_modules/@tensorflow/tfjs-core/dist/ops/add.js"),a=n(/*! ../axis_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/axis_util.js"),u=n(/*! ../cast */"./node_modules/@tensorflow/tfjs-core/dist/ops/cast.js"),d=n(/*! ../div */"./node_modules/@tensorflow/tfjs-core/dist/ops/div.js"),l=n(/*! ../exp */"./node_modules/@tensorflow/tfjs-core/dist/ops/exp.js"),c=n(/*! ../log_sum_exp */"./node_modules/@tensorflow/tfjs-core/dist/ops/log_sum_exp.js"),f=n(/*! ../loss_ops_utils */"./node_modules/@tensorflow/tfjs-core/dist/ops/loss_ops_utils.js"),p=n(/*! ../mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),m=n(/*! ../neg */"./node_modules/@tensorflow/tfjs-core/dist/ops/neg.js"),h=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),b=n(/*! ../reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js"),j=n(/*! ../scalar */"./node_modules/@tensorflow/tfjs-core/dist/ops/scalar.js"),g=n(/*! ../sub */"./node_modules/@tensorflow/tfjs-core/dist/ops/sub.js"),w=n(/*! ../sum */"./node_modules/@tensorflow/tfjs-core/dist/ops/sum.js"),_=n(/*! ./compute_weighted_loss */"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/compute_weighted_loss.js");const k=Object(h.op)({softmaxCrossEntropy_:function(e,t,n,h=0,k=f.Reduction.SUM_BY_NONZERO_WEIGHTS){let v=Object(o.convertToTensor)(e,"onehotLabels","softmaxCrossEntropy");const x=Object(o.convertToTensor)(t,"logits","softmaxCrossEntropy");let y=null;if(null!=n&&(y=Object(o.convertToTensor)(n,"weights","softmaxCrossEntropy")),Object(r.assertShapesMatch)(v.shape,x.shape,"Error in softmaxCrossEntropy: "),h>0){const e=Object(j.scalar)(h),t=Object(j.scalar)(1),n=Object(j.scalar)(v.shape[1]);v=Object(i.add)(Object(p.mul)(v,Object(g.sub)(t,e)),Object(d.div)(e,n))}const O=
+/**
+ * @license
+ * Copyright 2020 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,t,n=-1){if(-1===n&&(n=t.rank-1),n!==t.rank-1)throw Error(`Softmax cross entropy along a non-last dimension is not yet supported. Labels / logits was rank ${t.rank} and dim was ${n}`);return Object(s.customGrad)(((e,t,s)=>{const o=Object(c.logSumExp)(t,[n],!0),r=Object(g.sub)(Object(u.cast)(t,"float32"),o);s([e,r]);const i=Object(m.neg)(Object(p.mul)(r,e));return{value:Object(w.sum)(i,[n]),gradFunc:(e,t)=>{const[s,o]=t,r=Object(a.expandShapeToKeepDim)(e.shape,[n]);return[Object(p.mul)(Object(b.reshape)(e,r),Object(g.sub)(Object(u.cast)(s,"float32"),Object(l.exp)(o))),Object(p.mul)(Object(b.reshape)(e,r),Object(g.sub)(Object(l.exp)(o),Object(u.cast)(s,"float32")))]}}}))(e,t)}(v,x);return Object(_.computeWeightedLoss)(O,y,k)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/mat_mul.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/mat_mul.js ***!
+ \****************************************************************/
+/*! exports provided: matMul */function(e,t,n){"use strict";n.r(t),n.d(t,"matMul",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util.js"),i=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({matMul_:
+/**
+ * @license
+ * Copyright 2020 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,t,n=!1,a=!1){let u=Object(i.convertToTensor)(e,"a","matMul"),d=Object(i.convertToTensor)(t,"b","matMul");[u,d]=Object(r.makeTypesMatch)(u,d);const l={a:u,b:d},c={transposeA:n,transposeB:a};return s.ENGINE.runKernel(o.BatchMatMul,l,c)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/max.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/max.js ***!
+ \************************************************************/
+/*! exports provided: max */function(e,t,n){"use strict";n.r(t),n.d(t,"max",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({max_:
+/**
+ * @license
+ * Copyright 2020 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,t=null,n=!1){const i={x:Object(r.convertToTensor)(e,"x","max")},a={reductionIndices:t,keepDims:n};return s.ENGINE.runKernel(o.Max,i,a)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/max_pool.js":
+/*!*****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/max_pool.js ***!
+ \*****************************************************************/
+/*! exports provided: maxPool */function(e,t,n){"use strict";n.r(t),n.d(t,"maxPool",(function(){return l}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./conv_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/conv_util.js"),u=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),d=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const l=Object(u.op)({maxPool_:
+/**
+ * @license
+ * Copyright 2020 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,t,n,u,l){const c=Object(r.convertToTensor)(e,"x","maxPool");let f=c,p=!1;3===c.rank&&(p=!0,f=Object(d.reshape)(c,[1,c.shape[0],c.shape[1],c.shape[2]])),i.assert(4===f.rank,(()=>`Error in maxPool: input must be rank 4 but got rank ${f.rank}.`)),i.assert(a.eitherStridesOrDilationsAreOne(n,1),(()=>`Error in maxPool: Either strides or dilations must be 1. Got strides ${n} and dilations '1'`)),null!=l&&i.assert(i.isInt(u),(()=>`Error in maxPool: pad must be an integer when using, dimRoundingMode ${l} but got pad ${u}.`));const m={x:f},h={filterSize:t,strides:n,pad:u,dimRoundingMode:l},b=s.ENGINE.runKernel(o.MaxPool,m,h);return p?Object(d.reshape)(b,[b.shape[1],b.shape[2],b.shape[3]]):b}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/max_pool_3d.js":
+/*!********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/max_pool_3d.js ***!
+ \********************************************************************/
+/*! exports provided: maxPool3d */function(e,t,n){"use strict";n.r(t),n.d(t,"maxPool3d",(function(){return d}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),u=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const d=Object(a.op)({maxPool3d_:
+/**
+ * @license
+ * Copyright 2020 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,t=[1,1,1],n,a,d,l="NDHWC"){const c=Object(r.convertToTensor)(e,"x","maxPool3d");let f=c,p=!1;4===c.rank&&(p=!0,f=Object(u.reshape)(c,[1,c.shape[0],c.shape[1],c.shape[2],c.shape[3]])),i.assert(5===f.rank,(()=>`Error in maxPool3d: x must be rank 5 but got rank ${f.rank}.`)),i.assert("NDHWC"===l,(()=>`Error in maxPool3d: Only NDHWC is currently supported, but got dataFormat of ${l}`)),null!=d&&i.assert(i.isInt(a),(()=>`Error in maxPool3d: pad must be an integer when using, dimRoundingMode ${d} but got pad ${a}.`));const m={x:f},h={filterSize:t,strides:n,pad:a,dimRoundingMode:d,dataFormat:l},b=s.ENGINE.runKernel(o.MaxPool3D,m,h);return p?Object(u.reshape)(b,[b.shape[1],b.shape[2],b.shape[3],b.shape[4]]):b}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/max_pool_with_argmax.js":
+/*!*****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/max_pool_with_argmax.js ***!
+ \*****************************************************************************/
+/*! exports provided: maxPoolWithArgmax */function(e,t,n){"use strict";n.r(t),n.d(t,"maxPoolWithArgmax",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({maxPoolWithArgmax_:
+/**
+ * @license
+ * Copyright 2018 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,t,n,i,a=!1){const u={x:Object(r.convertToTensor)(e,"x","maxPoolWithArgmax")},d={filterSize:t,strides:n,pad:i,includeBatchInIndex:a},l=s.ENGINE.runKernel(o.MaxPoolWithArgmax,u,d);return{result:l[0],indexes:l[1]}}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/maximum.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/maximum.js ***!
+ \****************************************************************/
+/*! exports provided: maximum */function(e,t,n){"use strict";n.r(t),n.d(t,"maximum",(function(){return l}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util.js"),i=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),a=n(/*! ./broadcast_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/broadcast_util.js"),u=n(/*! ./cast */"./node_modules/@tensorflow/tfjs-core/dist/ops/cast.js"),d=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const l=Object(d.op)({maximum_:
+/**
+ * @license
+ * Copyright 2020 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,t){let n=Object(i.convertToTensor)(e,"a","maximum"),d=Object(i.convertToTensor)(t,"b","maximum");[n,d]=Object(r.makeTypesMatch)(n,d),"bool"===n.dtype&&(n=Object(u.cast)(n,"int32"),d=Object(u.cast)(d,"int32")),Object(a.assertAndGetBroadcastShape)(n.shape,d.shape);const l={a:n,b:d};return s.ENGINE.runKernel(o.Maximum,l)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/mean.js":
+/*!*************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/mean.js ***!
+ \*************************************************************/
+/*! exports provided: mean */function(e,t,n){"use strict";n.r(t),n.d(t,"mean",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({mean_:
+/**
+ * @license
+ * Copyright 2020 Google Inc. 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,t=null,n=!1){const i={x:Object(r.convertToTensor)(e,"x","mean")},a={axis:t,keepDims:n};return s.ENGINE.runKernel(o.Mean,i,a)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/meshgrid.js":
+/*!*****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/meshgrid.js ***!
+ \*****************************************************************/
+/*! exports provided: meshgrid */function(e,t,n){"use strict";n.r(t),n.d(t,"meshgrid",(function(){return d}));var s=n(/*! ./mat_mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mat_mul.js"),o=n(/*! ./ones */"./node_modules/@tensorflow/tfjs-core/dist/ops/ones.js"),r=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js"),i=n(/*! ../tensor */"./node_modules/@tensorflow/tfjs-core/dist/tensor.js"),a=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),u=n(/*! ../util_base */"./node_modules/@tensorflow/tfjs-core/dist/util_base.js");
+/**
+ * @license
+ * Copyright 2021 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 d(e,t,{indexing:n="xy"}={}){if("xy"!==n&&"ij"!==n)throw new TypeError(`${n} is not a valid third argument to meshgrid`);if(void 0===e)return[];let d=Object(a.convertToTensor)(e,"x","meshgrid",e instanceof i.Tensor?e.dtype:"float32");if(void 0===t)return[d];let l=Object(a.convertToTensor)(t,"y","meshgrid",t instanceof i.Tensor?t.dtype:"float32");const c=Object(u.sizeFromShape)(d.shape),f=Object(u.sizeFromShape)(l.shape);return"xy"===n?(d=Object(r.reshape)(d,[1,-1]),l=Object(r.reshape)(l,[-1,1]),[Object(s.matMul)(Object(o.ones)([f,1],d.dtype),d),Object(s.matMul)(l,Object(o.ones)([1,c],l.dtype))]):(d=Object(r.reshape)(d,[-1,1]),l=Object(r.reshape)(l,[1,-1]),[Object(s.matMul)(d,Object(o.ones)([1,f],d.dtype)),Object(s.matMul)(Object(o.ones)([c,1],l.dtype),l)])}},"./node_modules/@tensorflow/tfjs-core/dist/ops/min.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/min.js ***!
+ \************************************************************/
+/*! exports provided: min */function(e,t,n){"use strict";n.r(t),n.d(t,"min",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({min_:
+/**
+ * @license
+ * Copyright 2020 Google Inc. 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,t=null,n=!1){const i={x:Object(r.convertToTensor)(e,"x","min")},a={axis:t,keepDims:n};return s.ENGINE.runKernel(o.Min,i,a)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/minimum.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/minimum.js ***!
+ \****************************************************************/
+/*! exports provided: minimum */function(e,t,n){"use strict";n.r(t),n.d(t,"minimum",(function(){return l}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util.js"),i=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),a=n(/*! ./broadcast_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/broadcast_util.js"),u=n(/*! ./cast */"./node_modules/@tensorflow/tfjs-core/dist/ops/cast.js"),d=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const l=Object(d.op)({minimum_:
+/**
+ * @license
+ * Copyright 2020 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,t){let n=Object(i.convertToTensor)(e,"a","minimum"),d=Object(i.convertToTensor)(t,"b","minimum");[n,d]=Object(r.makeTypesMatch)(n,d),"bool"===n.dtype&&(n=Object(u.cast)(n,"int32"),d=Object(u.cast)(d,"int32")),Object(a.assertAndGetBroadcastShape)(n.shape,d.shape);const l={a:n,b:d};return s.ENGINE.runKernel(o.Minimum,l)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/mirror_pad.js":
+/*!*******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/mirror_pad.js ***!
+ \*******************************************************************/
+/*! exports provided: mirrorPad */function(e,t,n){"use strict";n.r(t),n.d(t,"mirrorPad",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({mirrorPad_:
+/**
+ * @license
+ * Copyright 2020 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,t,n){i.assert("reflect"===n||"symmetric"===n,(()=>`Invalid mode. Mode must be either reflect or symmetric. Got ${n}.`));const a=Object(r.convertToTensor)(e,"x","mirrorPad");if(0===a.rank)throw new Error("mirrorPad(scalar) is not defined. Pass non-scalar to mirrorPad");i.assert(t.length===a.rank,(()=>`Padding doesn't match input. Must be ${a.rank}. Got ${t.length}.`));const u="reflect"===n?1:0;for(let e=0;e"Invalid number of paddings. Must be length of 2 each.")),i.assert(t[e][0]>=0&&t[e][0]<=a.shape[e]-u&&t[e][1]>=0&&t[e][1]<=a.shape[e]-u,(()=>`Padding in dimension ${e} cannot be greater than or equal to ${a.shape[e]-u} or less than 0 for input of shape ${a.shape}`));const d={paddings:t,mode:n},l={x:a};return s.ENGINE.runKernel(o.MirrorPad,l,d)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/mod.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/mod.js ***!
+ \************************************************************/
+/*! exports provided: mod */function(e,t,n){"use strict";n.r(t),n.d(t,"mod",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util.js"),i=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({mod_:
+/**
+ * @license
+ * Copyright 2020 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,t){let n=Object(i.convertToTensor)(e,"a","mod"),a=Object(i.convertToTensor)(t,"b","mod");[n,a]=Object(r.makeTypesMatch)(n,a);const u={a:n,b:a};return s.ENGINE.runKernel(o.Mod,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/moments.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/moments.js ***!
+ \****************************************************************/
+/*! exports provided: moments */function(e,t,n){"use strict";n.r(t),n.d(t,"moments",(function(){return f}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./axis_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/axis_util.js"),i=n(/*! ./cast */"./node_modules/@tensorflow/tfjs-core/dist/ops/cast.js"),a=n(/*! ./mean */"./node_modules/@tensorflow/tfjs-core/dist/ops/mean.js"),u=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),d=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js"),l=n(/*! ./square */"./node_modules/@tensorflow/tfjs-core/dist/ops/square.js"),c=n(/*! ./sub */"./node_modules/@tensorflow/tfjs-core/dist/ops/sub.js");const f=Object(u.op)({moments_:
+/**
+ * @license
+ * Copyright 2020 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,t=null,n=!1){e=Object(s.convertToTensor)(e,"x","moments");const u=Object(o.parseAxisParam)(t,e.shape),f=Object(a.mean)(e,u,n);let p=f.shape;n||(p=Object(r.expandShapeToKeepDim)(f.shape,u));const m=Object(l.square)(Object(c.sub)(Object(i.cast)(e,"float32"),Object(d.reshape)(f,p)));return{mean:f,variance:Object(a.mean)(m,u,n)}}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/moving_average.js":
+/*!***********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/moving_average.js ***!
+ \***********************************************************************/
+/*! exports provided: movingAverage */function(e,t,n){"use strict";n.r(t),n.d(t,"movingAverage",(function(){return p}));var s=n(/*! ../tensor_util */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util.js"),o=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),r=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),i=n(/*! ./add */"./node_modules/@tensorflow/tfjs-core/dist/ops/add.js"),a=n(/*! ./div */"./node_modules/@tensorflow/tfjs-core/dist/ops/div.js"),u=n(/*! ./mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),d=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),l=n(/*! ./pow */"./node_modules/@tensorflow/tfjs-core/dist/ops/pow.js"),c=n(/*! ./scalar */"./node_modules/@tensorflow/tfjs-core/dist/ops/scalar.js"),f=n(/*! ./sub */"./node_modules/@tensorflow/tfjs-core/dist/ops/sub.js");const p=Object(d.op)({movingAverage_:
+/**
+ * @license
+ * Copyright 2018 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,t,n,d,p=!0){const m=Object(o.convertToTensor)(e,"v","movingAverage"),h=Object(o.convertToTensor)(t,"x","movingAverage"),b=Object(o.convertToTensor)(n,"decay","movingAverage");Object(s.assertTypesMatch)(m,h),r.assert(r.arraysEqual(m.shape,h.shape),(()=>"Shape mismatch in v and x"));const j=Object(c.scalar)(1),g=Object(f.sub)(j,b);let w=Object(u.mul)(Object(f.sub)(h,m),g);if(p){r.assert(null!=d,(()=>"When using zeroDebias: true, step is required."));const e=Object(o.convertToTensor)(d,"step","movingAverage");w=Object(a.div)(w,Object(f.sub)(j,Object(l.pow)(b,e)))}return Object(i.add)(m,w)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js ***!
+ \************************************************************/
+/*! exports provided: mul */function(e,t,n){"use strict";n.r(t),n.d(t,"mul",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util.js"),i=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({mul_:
+/**
+ * @license
+ * Copyright 2020 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,t){let n=Object(i.convertToTensor)(e,"a","mul"),a=Object(i.convertToTensor)(t,"b","mul");[n,a]=Object(r.makeTypesMatch)(n,a);const u={a:n,b:a};return s.ENGINE.runKernel(o.Multiply,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/multi_rnn_cell.js":
+/*!***********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/multi_rnn_cell.js ***!
+ \***********************************************************************/
+/*! exports provided: multiRNNCell */function(e,t,n){"use strict";n.r(t),n.d(t,"multiRNNCell",(function(){return r}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const r=Object(o.op)({multiRNNCell_:function(e,t,n,o){const r=Object(s.convertToTensor)(t,"data","multiRNNCell"),i=Object(s.convertToTensorArray)(n,"c","multiRNNCell"),a=Object(s.convertToTensorArray)(o,"h","multiRNNCell");let u=r;const d=[];for(let t=0;t2)throw new Error(`Rank of probabilities must be 1 or 2, but is ${l}`);n=n||Math.random();const c={logits:1===l?Object(a.reshape)(u,[1,-1]):u},f={numSamples:t,seed:n,normalized:i},p=s.ENGINE.runKernel(o.Multinomial,c,f);return 1===l?Object(a.reshape)(p,[p.size]):p}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/neg.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/neg.js ***!
+ \************************************************************/
+/*! exports provided: neg */function(e,t,n){"use strict";n.r(t),n.d(t,"neg",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({neg_:
+/**
+ * @license
+ * Copyright 2018 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){const t={x:Object(r.convertToTensor)(e,"x","neg")};return s.ENGINE.runKernel(o.Neg,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/nonmax_util.js":
+/*!********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/nonmax_util.js ***!
+ \********************************************************************/
+/*! exports provided: nonMaxSuppSanityCheck */function(e,t,n){"use strict";n.r(t),n.d(t,"nonMaxSuppSanityCheck",(function(){return o}));var s=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");
+/**
+ * @license
+ * Copyright 2020 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 o(e,t,n,o,r,i){null==o&&(o=.5),null==r&&(r=Number.NEGATIVE_INFINITY),null==i&&(i=0);const a=e.shape[0];return n=Math.min(n,a),s.assert(0<=o&&o<=1,(()=>`iouThreshold must be in [0, 1], but was '${o}'`)),s.assert(2===e.rank,(()=>`boxes must be a 2D tensor, but was of rank '${e.rank}'`)),s.assert(4===e.shape[1],(()=>`boxes must have 4 columns, but 2nd dimension was ${e.shape[1]}`)),s.assert(1===t.rank,(()=>"scores must be a 1D tensor")),s.assert(t.shape[0]===a,(()=>`scores has incompatible shape with boxes. Expected ${a}, but was ${t.shape[0]}`)),s.assert(0<=i&&i<=1,(()=>`softNmsSigma must be in [0, 1], but was '${i}'`)),{maxOutputSize:n,iouThreshold:o,scoreThreshold:r,softNmsSigma:i}}},"./node_modules/@tensorflow/tfjs-core/dist/ops/norm.js":
+/*!*************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/norm.js ***!
+ \*************************************************************/
+/*! exports provided: norm */function(e,t,n){"use strict";n.r(t),n.d(t,"norm",(function(){return j}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./abs */"./node_modules/@tensorflow/tfjs-core/dist/ops/abs.js"),i=n(/*! ./axis_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/axis_util.js"),a=n(/*! ./max */"./node_modules/@tensorflow/tfjs-core/dist/ops/max.js"),u=n(/*! ./min */"./node_modules/@tensorflow/tfjs-core/dist/ops/min.js"),d=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),l=n(/*! ./pow */"./node_modules/@tensorflow/tfjs-core/dist/ops/pow.js"),c=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js"),f=n(/*! ./scalar */"./node_modules/@tensorflow/tfjs-core/dist/ops/scalar.js"),p=n(/*! ./sqrt */"./node_modules/@tensorflow/tfjs-core/dist/ops/sqrt.js"),m=n(/*! ./square */"./node_modules/@tensorflow/tfjs-core/dist/ops/square.js"),h=n(/*! ./sum */"./node_modules/@tensorflow/tfjs-core/dist/ops/sum.js");function b(e,t,n=null){if(0===e.rank)return Object(r.abs)(e);if(1!==e.rank&&null===n)return b(Object(c.reshape)(e,[-1]),t,n);if(1===e.rank||"number"==typeof n||Array.isArray(n)&&1===n.length){if(1===t)return Object(h.sum)(Object(r.abs)(e),n);if(t===1/0)return Object(a.max)(Object(r.abs)(e),n);if(t===-1/0)return Object(u.min)(Object(r.abs)(e),n);if("euclidean"===t||2===t)return Object(p.sqrt)(Object(h.sum)(Object(l.pow)(Object(r.abs)(e),Object(f.scalar)(2,"int32")),n));throw new Error(`Error in norm: invalid ord value: ${t}`)}if(Array.isArray(n)&&2===n.length){if(1===t)return Object(a.max)(Object(h.sum)(Object(r.abs)(e),n[0]),n[1]-1);if(t===1/0)return Object(a.max)(Object(h.sum)(Object(r.abs)(e),n[1]),n[0]);if(t===-1/0)return Object(u.min)(Object(h.sum)(Object(r.abs)(e),n[1]),n[0]);if("fro"===t||"euclidean"===t)return Object(p.sqrt)(Object(h.sum)(Object(m.square)(e),n));throw new Error(`Error in norm: invalid ord value: ${t}`)}throw new Error(`Error in norm: invalid axis: ${n}`)}const j=Object(d.op)({norm_:
+/**
+ * @license
+ * Copyright 2018 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,t="euclidean",n=null,r=!1){const a=b(e=Object(s.convertToTensor)(e,"x","norm"),t,n);let u=a.shape;if(r){const t=Object(o.parseAxisParam)(n,e.shape);u=i.expandShapeToKeepDim(a.shape,t)}return Object(c.reshape)(a,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/not_equal.js":
+/*!******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/not_equal.js ***!
+ \******************************************************************/
+/*! exports provided: notEqual */function(e,t,n){"use strict";n.r(t),n.d(t,"notEqual",(function(){return d}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util.js"),i=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),a=n(/*! ./broadcast_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/broadcast_util.js"),u=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const d=Object(u.op)({notEqual_:
+/**
+ * @license
+ * Copyright 2020 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,t){let n=Object(i.convertToTensor)(e,"a","notEqual","string_or_numeric"),u=Object(i.convertToTensor)(t,"b","notEqual","string_or_numeric");[n,u]=Object(r.makeTypesMatch)(n,u),Object(a.assertAndGetBroadcastShape)(n.shape,u.shape);const d={a:n,b:u};return s.ENGINE.runKernel(o.NotEqual,d)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/one_hot.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/one_hot.js ***!
+ \****************************************************************/
+/*! exports provided: oneHot */function(e,t,n){"use strict";n.r(t),n.d(t,"oneHot",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({oneHot_:
+/**
+ * @license
+ * Copyright 2020 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,t,n=1,i=0){if(t<2)throw new Error(`Error in oneHot: depth must be >=2, but it is ${t}`);const a={indices:Object(r.convertToTensor)(e,"indices","oneHot","int32")},u={depth:t,onValue:n,offValue:i};return s.ENGINE.runKernel(o.OneHot,a,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/ones.js":
+/*!*************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/ones.js ***!
+ \*************************************************************/
+/*! exports provided: ones */function(e,t,n){"use strict";n.r(t),n.d(t,"ones",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./complex */"./node_modules/@tensorflow/tfjs-core/dist/ops/complex.js"),i=n(/*! ./zeros */"./node_modules/@tensorflow/tfjs-core/dist/ops/zeros.js");
+/**
+ * @license
+ * Copyright 2018 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 a(e,t="float32"){if("complex64"===t){const t=a(e,"float32"),n=Object(i.zeros)(e,"float32");return Object(r.complex)(t,n)}const n=Object(o.makeOnesTypedArray)(Object(o.sizeFromShape)(e),t);return s.ENGINE.makeTensor(n,e,t)}},"./node_modules/@tensorflow/tfjs-core/dist/ops/ones_like.js":
+/*!******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/ones_like.js ***!
+ \******************************************************************/
+/*! exports provided: onesLike */function(e,t,n){"use strict";n.r(t),n.d(t,"onesLike",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({onesLike_:
+/**
+ * @license
+ * Copyright 2018 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){const t={x:Object(r.convertToTensor)(e,"x","onesLike")};return s.ENGINE.runKernel(o.OnesLike,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js":
+/*!******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js ***!
+ \******************************************************************/
+/*! exports provided: OP_SCOPE_SUFFIX, op */function(e,t,n){"use strict";n.r(t),n.d(t,"OP_SCOPE_SUFFIX",(function(){return r})),n.d(t,"op",(function(){return i}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");
+/**
+ * @license
+ * Copyright 2018 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.
+ * =============================================================================
+ */
+const r="__op";function i(e){const t=Object.keys(e);if(1!==t.length)throw new Error(`Please provide an object with a single key (operation name) mapping to a function. Got an object with ${t.length} keys.`);let n=t[0];const i=e[n];n.endsWith("_")&&(n=n.substring(0,n.length-1)),n+=r;const a=(...e)=>{s.ENGINE.startScope(n);try{const t=i(...e);return Object(o.isPromise)(t)&&console.error("Cannot return a Promise inside of tidy."),s.ENGINE.endScope(t),t}catch(e){throw s.ENGINE.endScope(null),e}};return Object.defineProperty(a,"name",{value:n,configurable:!0}),a}},"./node_modules/@tensorflow/tfjs-core/dist/ops/ops.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/ops.js ***!
+ \************************************************************/
+/*! exports provided: abs, acos, acosh, add, addN, all, any, argMax, argMin, asin, asinh, atan, atan2, atanh, avgPool, avgPool3d, basicLSTMCell, batchToSpaceND, batchNorm, batchNorm2d, batchNorm3d, batchNorm4d, bincount, broadcastTo, buffer, cast, ceil, clipByValue, clone, complex, concat, concat1d, concat2d, concat3d, concat4d, conv1d, conv2d, conv2dTranspose, conv3d, conv3dTranspose, cos, cosh, cumsum, denseBincount, depthToSpace, depthwiseConv2d, diag, dilation2d, div, divNoNan, dot, einsum, elu, equal, erf, exp, expandDims, expm1, eye, fill, floor, floorDiv, gather, greater, greaterEqual, imag, isFinite, isInf, isNaN, leakyRelu, less, lessEqual, linspace, localResponseNormalization, log, log1p, logSigmoid, logSoftmax, logSumExp, logicalAnd, logicalNot, logicalOr, logicalXor, matMul, max, maxPool, maxPool3d, maxPoolWithArgmax, maximum, mean, meshgrid, min, minimum, mirrorPad, mod, moments, mul, multiRNNCell, multinomial, neg, notEqual, oneHot, ones, onesLike, outerProduct, pad, pad1d, pad2d, pad3d, pad4d, pool, pow, prelu, print, prod, rand, randomGamma, randomNormal, randomUniform, range, real, reciprocal, relu, relu6, reshape, reverse, reverse1d, reverse2d, reverse3d, reverse4d, round, rsqrt, scalar, selu, separableConv2d, setdiff1dAsync, sigmoid, sign, sin, sinh, slice, slice1d, slice2d, slice3d, slice4d, softmax, softplus, spaceToBatchND, fft, ifft, irfft, rfft, split, sqrt, square, squaredDifference, squeeze, stack, step, stridedSlice, sub, sum, tan, tanh, tensor, tensor1d, tensor2d, tensor3d, tensor4d, tensor5d, tensor6d, tile, topk, truncatedNormal, unique, unsortedSegmentSum, unstack, variable, where, whereAsync, zeros, zerosLike, booleanMaskAsync, transpose, norm, movingAverage, scatterND, sparseToDense, gatherND, dropout, enclosingPowerOfTwo, cosineWindow, inTopKAsync, op, OP_SCOPE_SUFFIX, image, linalg, losses, spectral, fused, signal, sparse, string */function(e,t,n){"use strict";n.r(t),n.d(t,"image",(function(){return _s})),n.d(t,"linalg",(function(){return ks})),n.d(t,"losses",(function(){return vs})),n.d(t,"spectral",(function(){return gs})),n.d(t,"signal",(function(){return ws})),n.d(t,"sparse",(function(){return xs})),n.d(t,"string",(function(){return ys}));var s=n(/*! ./abs */"./node_modules/@tensorflow/tfjs-core/dist/ops/abs.js");n.d(t,"abs",(function(){return s.abs}));var o=n(/*! ./acos */"./node_modules/@tensorflow/tfjs-core/dist/ops/acos.js");n.d(t,"acos",(function(){return o.acos}));var r=n(/*! ./acosh */"./node_modules/@tensorflow/tfjs-core/dist/ops/acosh.js");n.d(t,"acosh",(function(){return r.acosh}));var i=n(/*! ./add */"./node_modules/@tensorflow/tfjs-core/dist/ops/add.js");n.d(t,"add",(function(){return i.add}));var a=n(/*! ./add_n */"./node_modules/@tensorflow/tfjs-core/dist/ops/add_n.js");n.d(t,"addN",(function(){return a.addN}));var u=n(/*! ./all */"./node_modules/@tensorflow/tfjs-core/dist/ops/all.js");n.d(t,"all",(function(){return u.all}));var d=n(/*! ./any */"./node_modules/@tensorflow/tfjs-core/dist/ops/any.js");n.d(t,"any",(function(){return d.any}));var l=n(/*! ./arg_max */"./node_modules/@tensorflow/tfjs-core/dist/ops/arg_max.js");n.d(t,"argMax",(function(){return l.argMax}));var c=n(/*! ./arg_min */"./node_modules/@tensorflow/tfjs-core/dist/ops/arg_min.js");n.d(t,"argMin",(function(){return c.argMin}));var f=n(/*! ./asin */"./node_modules/@tensorflow/tfjs-core/dist/ops/asin.js");n.d(t,"asin",(function(){return f.asin}));var p=n(/*! ./asinh */"./node_modules/@tensorflow/tfjs-core/dist/ops/asinh.js");n.d(t,"asinh",(function(){return p.asinh}));var m=n(/*! ./atan */"./node_modules/@tensorflow/tfjs-core/dist/ops/atan.js");n.d(t,"atan",(function(){return m.atan}));var h=n(/*! ./atan2 */"./node_modules/@tensorflow/tfjs-core/dist/ops/atan2.js");n.d(t,"atan2",(function(){return h.atan2}));var b=n(/*! ./atanh */"./node_modules/@tensorflow/tfjs-core/dist/ops/atanh.js");n.d(t,"atanh",(function(){return b.atanh}));var j=n(/*! ./avg_pool */"./node_modules/@tensorflow/tfjs-core/dist/ops/avg_pool.js");n.d(t,"avgPool",(function(){return j.avgPool}));var g=n(/*! ./avg_pool_3d */"./node_modules/@tensorflow/tfjs-core/dist/ops/avg_pool_3d.js");n.d(t,"avgPool3d",(function(){return g.avgPool3d}));var w=n(/*! ./basic_lstm_cell */"./node_modules/@tensorflow/tfjs-core/dist/ops/basic_lstm_cell.js");n.d(t,"basicLSTMCell",(function(){return w.basicLSTMCell}));var _=n(/*! ./batch_to_space_nd */"./node_modules/@tensorflow/tfjs-core/dist/ops/batch_to_space_nd.js");n.d(t,"batchToSpaceND",(function(){return _.batchToSpaceND}));var k=n(/*! ./batchnorm */"./node_modules/@tensorflow/tfjs-core/dist/ops/batchnorm.js");n.d(t,"batchNorm",(function(){return k.batchNorm}));var v=n(/*! ./batchnorm2d */"./node_modules/@tensorflow/tfjs-core/dist/ops/batchnorm2d.js");n.d(t,"batchNorm2d",(function(){return v.batchNorm2d}));var x=n(/*! ./batchnorm3d */"./node_modules/@tensorflow/tfjs-core/dist/ops/batchnorm3d.js");n.d(t,"batchNorm3d",(function(){return x.batchNorm3d}));var y=n(/*! ./batchnorm4d */"./node_modules/@tensorflow/tfjs-core/dist/ops/batchnorm4d.js");n.d(t,"batchNorm4d",(function(){return y.batchNorm4d}));var O=n(/*! ./bincount */"./node_modules/@tensorflow/tfjs-core/dist/ops/bincount.js");n.d(t,"bincount",(function(){return O.bincount}));var I=n(/*! ./broadcast_to */"./node_modules/@tensorflow/tfjs-core/dist/ops/broadcast_to.js");n.d(t,"broadcastTo",(function(){return I.broadcastTo}));var C=n(/*! ./buffer */"./node_modules/@tensorflow/tfjs-core/dist/ops/buffer.js");n.d(t,"buffer",(function(){return C.buffer}));var S=n(/*! ./cast */"./node_modules/@tensorflow/tfjs-core/dist/ops/cast.js");n.d(t,"cast",(function(){return S.cast}));var T=n(/*! ./ceil */"./node_modules/@tensorflow/tfjs-core/dist/ops/ceil.js");n.d(t,"ceil",(function(){return T.ceil}));var N=n(/*! ./clip_by_value */"./node_modules/@tensorflow/tfjs-core/dist/ops/clip_by_value.js");n.d(t,"clipByValue",(function(){return N.clipByValue}));var E=n(/*! ./clone */"./node_modules/@tensorflow/tfjs-core/dist/ops/clone.js");n.d(t,"clone",(function(){return E.clone}));var A=n(/*! ./complex */"./node_modules/@tensorflow/tfjs-core/dist/ops/complex.js");n.d(t,"complex",(function(){return A.complex}));var R=n(/*! ./concat */"./node_modules/@tensorflow/tfjs-core/dist/ops/concat.js");n.d(t,"concat",(function(){return R.concat}));var F=n(/*! ./concat_1d */"./node_modules/@tensorflow/tfjs-core/dist/ops/concat_1d.js");n.d(t,"concat1d",(function(){return F.concat1d}));var M=n(/*! ./concat_2d */"./node_modules/@tensorflow/tfjs-core/dist/ops/concat_2d.js");n.d(t,"concat2d",(function(){return M.concat2d}));var $=n(/*! ./concat_3d */"./node_modules/@tensorflow/tfjs-core/dist/ops/concat_3d.js");n.d(t,"concat3d",(function(){return $.concat3d}));var D=n(/*! ./concat_4d */"./node_modules/@tensorflow/tfjs-core/dist/ops/concat_4d.js");n.d(t,"concat4d",(function(){return D.concat4d}));var P=n(/*! ./conv1d */"./node_modules/@tensorflow/tfjs-core/dist/ops/conv1d.js");n.d(t,"conv1d",(function(){return P.conv1d}));var B=n(/*! ./conv2d */"./node_modules/@tensorflow/tfjs-core/dist/ops/conv2d.js");n.d(t,"conv2d",(function(){return B.conv2d}));var L=n(/*! ./conv2d_transpose */"./node_modules/@tensorflow/tfjs-core/dist/ops/conv2d_transpose.js");n.d(t,"conv2dTranspose",(function(){return L.conv2dTranspose}));var z=n(/*! ./conv3d */"./node_modules/@tensorflow/tfjs-core/dist/ops/conv3d.js");n.d(t,"conv3d",(function(){return z.conv3d}));var G=n(/*! ./conv3d_transpose */"./node_modules/@tensorflow/tfjs-core/dist/ops/conv3d_transpose.js");n.d(t,"conv3dTranspose",(function(){return G.conv3dTranspose}));var U=n(/*! ./cos */"./node_modules/@tensorflow/tfjs-core/dist/ops/cos.js");n.d(t,"cos",(function(){return U.cos}));var W=n(/*! ./cosh */"./node_modules/@tensorflow/tfjs-core/dist/ops/cosh.js");n.d(t,"cosh",(function(){return W.cosh}));var V=n(/*! ./cumsum */"./node_modules/@tensorflow/tfjs-core/dist/ops/cumsum.js");n.d(t,"cumsum",(function(){return V.cumsum}));var q=n(/*! ./dense_bincount */"./node_modules/@tensorflow/tfjs-core/dist/ops/dense_bincount.js");n.d(t,"denseBincount",(function(){return q.denseBincount}));var H=n(/*! ./depth_to_space */"./node_modules/@tensorflow/tfjs-core/dist/ops/depth_to_space.js");n.d(t,"depthToSpace",(function(){return H.depthToSpace}));var K=n(/*! ./depthwise_conv2d */"./node_modules/@tensorflow/tfjs-core/dist/ops/depthwise_conv2d.js");n.d(t,"depthwiseConv2d",(function(){return K.depthwiseConv2d}));var X=n(/*! ./diag */"./node_modules/@tensorflow/tfjs-core/dist/ops/diag.js");n.d(t,"diag",(function(){return X.diag}));var Y=n(/*! ./dilation2d */"./node_modules/@tensorflow/tfjs-core/dist/ops/dilation2d.js");n.d(t,"dilation2d",(function(){return Y.dilation2d}));var Z=n(/*! ./div */"./node_modules/@tensorflow/tfjs-core/dist/ops/div.js");n.d(t,"div",(function(){return Z.div}));var Q=n(/*! ./div_no_nan */"./node_modules/@tensorflow/tfjs-core/dist/ops/div_no_nan.js");n.d(t,"divNoNan",(function(){return Q.divNoNan}));var J=n(/*! ./dot */"./node_modules/@tensorflow/tfjs-core/dist/ops/dot.js");n.d(t,"dot",(function(){return J.dot}));var ee=n(/*! ./einsum */"./node_modules/@tensorflow/tfjs-core/dist/ops/einsum.js");n.d(t,"einsum",(function(){return ee.einsum}));var te=n(/*! ./elu */"./node_modules/@tensorflow/tfjs-core/dist/ops/elu.js");n.d(t,"elu",(function(){return te.elu}));var ne=n(/*! ./equal */"./node_modules/@tensorflow/tfjs-core/dist/ops/equal.js");n.d(t,"equal",(function(){return ne.equal}));var se=n(/*! ./erf */"./node_modules/@tensorflow/tfjs-core/dist/ops/erf.js");n.d(t,"erf",(function(){return se.erf}));var oe=n(/*! ./exp */"./node_modules/@tensorflow/tfjs-core/dist/ops/exp.js");n.d(t,"exp",(function(){return oe.exp}));var re=n(/*! ./expand_dims */"./node_modules/@tensorflow/tfjs-core/dist/ops/expand_dims.js");n.d(t,"expandDims",(function(){return re.expandDims}));var ie=n(/*! ./expm1 */"./node_modules/@tensorflow/tfjs-core/dist/ops/expm1.js");n.d(t,"expm1",(function(){return ie.expm1}));var ae=n(/*! ./eye */"./node_modules/@tensorflow/tfjs-core/dist/ops/eye.js");n.d(t,"eye",(function(){return ae.eye}));var ue=n(/*! ./fill */"./node_modules/@tensorflow/tfjs-core/dist/ops/fill.js");n.d(t,"fill",(function(){return ue.fill}));var de=n(/*! ./floor */"./node_modules/@tensorflow/tfjs-core/dist/ops/floor.js");n.d(t,"floor",(function(){return de.floor}));var le=n(/*! ./floorDiv */"./node_modules/@tensorflow/tfjs-core/dist/ops/floorDiv.js");n.d(t,"floorDiv",(function(){return le.floorDiv}));var ce=n(/*! ./gather */"./node_modules/@tensorflow/tfjs-core/dist/ops/gather.js");n.d(t,"gather",(function(){return ce.gather}));var fe=n(/*! ./greater */"./node_modules/@tensorflow/tfjs-core/dist/ops/greater.js");n.d(t,"greater",(function(){return fe.greater}));var pe=n(/*! ./greater_equal */"./node_modules/@tensorflow/tfjs-core/dist/ops/greater_equal.js");n.d(t,"greaterEqual",(function(){return pe.greaterEqual}));var me=n(/*! ./imag */"./node_modules/@tensorflow/tfjs-core/dist/ops/imag.js");n.d(t,"imag",(function(){return me.imag}));var he=n(/*! ./is_finite */"./node_modules/@tensorflow/tfjs-core/dist/ops/is_finite.js");n.d(t,"isFinite",(function(){return he.isFinite}));var be=n(/*! ./is_inf */"./node_modules/@tensorflow/tfjs-core/dist/ops/is_inf.js");n.d(t,"isInf",(function(){return be.isInf}));var je=n(/*! ./is_nan */"./node_modules/@tensorflow/tfjs-core/dist/ops/is_nan.js");n.d(t,"isNaN",(function(){return je.isNaN}));var ge=n(/*! ./leaky_relu */"./node_modules/@tensorflow/tfjs-core/dist/ops/leaky_relu.js");n.d(t,"leakyRelu",(function(){return ge.leakyRelu}));var we=n(/*! ./less */"./node_modules/@tensorflow/tfjs-core/dist/ops/less.js");n.d(t,"less",(function(){return we.less}));var _e=n(/*! ./less_equal */"./node_modules/@tensorflow/tfjs-core/dist/ops/less_equal.js");n.d(t,"lessEqual",(function(){return _e.lessEqual}));var ke=n(/*! ./linspace */"./node_modules/@tensorflow/tfjs-core/dist/ops/linspace.js");n.d(t,"linspace",(function(){return ke.linspace}));var ve=n(/*! ./local_response_normalization */"./node_modules/@tensorflow/tfjs-core/dist/ops/local_response_normalization.js");n.d(t,"localResponseNormalization",(function(){return ve.localResponseNormalization}));var xe=n(/*! ./log */"./node_modules/@tensorflow/tfjs-core/dist/ops/log.js");n.d(t,"log",(function(){return xe.log}));var ye=n(/*! ./log1p */"./node_modules/@tensorflow/tfjs-core/dist/ops/log1p.js");n.d(t,"log1p",(function(){return ye.log1p}));var Oe=n(/*! ./log_sigmoid */"./node_modules/@tensorflow/tfjs-core/dist/ops/log_sigmoid.js");n.d(t,"logSigmoid",(function(){return Oe.logSigmoid}));var Ie=n(/*! ./log_softmax */"./node_modules/@tensorflow/tfjs-core/dist/ops/log_softmax.js");n.d(t,"logSoftmax",(function(){return Ie.logSoftmax}));var Ce=n(/*! ./log_sum_exp */"./node_modules/@tensorflow/tfjs-core/dist/ops/log_sum_exp.js");n.d(t,"logSumExp",(function(){return Ce.logSumExp}));var Se=n(/*! ./logical_and */"./node_modules/@tensorflow/tfjs-core/dist/ops/logical_and.js");n.d(t,"logicalAnd",(function(){return Se.logicalAnd}));var Te=n(/*! ./logical_not */"./node_modules/@tensorflow/tfjs-core/dist/ops/logical_not.js");n.d(t,"logicalNot",(function(){return Te.logicalNot}));var Ne=n(/*! ./logical_or */"./node_modules/@tensorflow/tfjs-core/dist/ops/logical_or.js");n.d(t,"logicalOr",(function(){return Ne.logicalOr}));var Ee=n(/*! ./logical_xor */"./node_modules/@tensorflow/tfjs-core/dist/ops/logical_xor.js");n.d(t,"logicalXor",(function(){return Ee.logicalXor}));var Ae=n(/*! ./mat_mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mat_mul.js");n.d(t,"matMul",(function(){return Ae.matMul}));var Re=n(/*! ./max */"./node_modules/@tensorflow/tfjs-core/dist/ops/max.js");n.d(t,"max",(function(){return Re.max}));var Fe=n(/*! ./max_pool */"./node_modules/@tensorflow/tfjs-core/dist/ops/max_pool.js");n.d(t,"maxPool",(function(){return Fe.maxPool}));var Me=n(/*! ./max_pool_3d */"./node_modules/@tensorflow/tfjs-core/dist/ops/max_pool_3d.js");n.d(t,"maxPool3d",(function(){return Me.maxPool3d}));var $e=n(/*! ./max_pool_with_argmax */"./node_modules/@tensorflow/tfjs-core/dist/ops/max_pool_with_argmax.js");n.d(t,"maxPoolWithArgmax",(function(){return $e.maxPoolWithArgmax}));var De=n(/*! ./maximum */"./node_modules/@tensorflow/tfjs-core/dist/ops/maximum.js");n.d(t,"maximum",(function(){return De.maximum}));var Pe=n(/*! ./mean */"./node_modules/@tensorflow/tfjs-core/dist/ops/mean.js");n.d(t,"mean",(function(){return Pe.mean}));var Be=n(/*! ./meshgrid */"./node_modules/@tensorflow/tfjs-core/dist/ops/meshgrid.js");n.d(t,"meshgrid",(function(){return Be.meshgrid}));var Le=n(/*! ./min */"./node_modules/@tensorflow/tfjs-core/dist/ops/min.js");n.d(t,"min",(function(){return Le.min}));var ze=n(/*! ./minimum */"./node_modules/@tensorflow/tfjs-core/dist/ops/minimum.js");n.d(t,"minimum",(function(){return ze.minimum}));var Ge=n(/*! ./mirror_pad */"./node_modules/@tensorflow/tfjs-core/dist/ops/mirror_pad.js");n.d(t,"mirrorPad",(function(){return Ge.mirrorPad}));var Ue=n(/*! ./mod */"./node_modules/@tensorflow/tfjs-core/dist/ops/mod.js");n.d(t,"mod",(function(){return Ue.mod}));var We=n(/*! ./moments */"./node_modules/@tensorflow/tfjs-core/dist/ops/moments.js");n.d(t,"moments",(function(){return We.moments}));var Ve=n(/*! ./mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js");n.d(t,"mul",(function(){return Ve.mul}));var qe=n(/*! ./multi_rnn_cell */"./node_modules/@tensorflow/tfjs-core/dist/ops/multi_rnn_cell.js");n.d(t,"multiRNNCell",(function(){return qe.multiRNNCell}));var He=n(/*! ./multinomial */"./node_modules/@tensorflow/tfjs-core/dist/ops/multinomial.js");n.d(t,"multinomial",(function(){return He.multinomial}));var Ke=n(/*! ./neg */"./node_modules/@tensorflow/tfjs-core/dist/ops/neg.js");n.d(t,"neg",(function(){return Ke.neg}));var Xe=n(/*! ./not_equal */"./node_modules/@tensorflow/tfjs-core/dist/ops/not_equal.js");n.d(t,"notEqual",(function(){return Xe.notEqual}));var Ye=n(/*! ./one_hot */"./node_modules/@tensorflow/tfjs-core/dist/ops/one_hot.js");n.d(t,"oneHot",(function(){return Ye.oneHot}));var Ze=n(/*! ./ones */"./node_modules/@tensorflow/tfjs-core/dist/ops/ones.js");n.d(t,"ones",(function(){return Ze.ones}));var Qe=n(/*! ./ones_like */"./node_modules/@tensorflow/tfjs-core/dist/ops/ones_like.js");n.d(t,"onesLike",(function(){return Qe.onesLike}));var Je=n(/*! ./outer_product */"./node_modules/@tensorflow/tfjs-core/dist/ops/outer_product.js");n.d(t,"outerProduct",(function(){return Je.outerProduct}));var et=n(/*! ./pad */"./node_modules/@tensorflow/tfjs-core/dist/ops/pad.js");n.d(t,"pad",(function(){return et.pad}));var tt=n(/*! ./pad1d */"./node_modules/@tensorflow/tfjs-core/dist/ops/pad1d.js");n.d(t,"pad1d",(function(){return tt.pad1d}));var nt=n(/*! ./pad2d */"./node_modules/@tensorflow/tfjs-core/dist/ops/pad2d.js");n.d(t,"pad2d",(function(){return nt.pad2d}));var st=n(/*! ./pad3d */"./node_modules/@tensorflow/tfjs-core/dist/ops/pad3d.js");n.d(t,"pad3d",(function(){return st.pad3d}));var ot=n(/*! ./pad4d */"./node_modules/@tensorflow/tfjs-core/dist/ops/pad4d.js");n.d(t,"pad4d",(function(){return ot.pad4d}));var rt=n(/*! ./pool */"./node_modules/@tensorflow/tfjs-core/dist/ops/pool.js");n.d(t,"pool",(function(){return rt.pool}));var it=n(/*! ./pow */"./node_modules/@tensorflow/tfjs-core/dist/ops/pow.js");n.d(t,"pow",(function(){return it.pow}));var at=n(/*! ./prelu */"./node_modules/@tensorflow/tfjs-core/dist/ops/prelu.js");n.d(t,"prelu",(function(){return at.prelu}));var ut=n(/*! ./print */"./node_modules/@tensorflow/tfjs-core/dist/ops/print.js");n.d(t,"print",(function(){return ut.print}));var dt=n(/*! ./prod */"./node_modules/@tensorflow/tfjs-core/dist/ops/prod.js");n.d(t,"prod",(function(){return dt.prod}));var lt=n(/*! ./rand */"./node_modules/@tensorflow/tfjs-core/dist/ops/rand.js");n.d(t,"rand",(function(){return lt.rand}));var ct=n(/*! ./random_gamma */"./node_modules/@tensorflow/tfjs-core/dist/ops/random_gamma.js");n.d(t,"randomGamma",(function(){return ct.randomGamma}));var ft=n(/*! ./random_normal */"./node_modules/@tensorflow/tfjs-core/dist/ops/random_normal.js");n.d(t,"randomNormal",(function(){return ft.randomNormal}));var pt=n(/*! ./random_uniform */"./node_modules/@tensorflow/tfjs-core/dist/ops/random_uniform.js");n.d(t,"randomUniform",(function(){return pt.randomUniform}));var mt=n(/*! ./range */"./node_modules/@tensorflow/tfjs-core/dist/ops/range.js");n.d(t,"range",(function(){return mt.range}));var ht=n(/*! ./real */"./node_modules/@tensorflow/tfjs-core/dist/ops/real.js");n.d(t,"real",(function(){return ht.real}));var bt=n(/*! ./reciprocal */"./node_modules/@tensorflow/tfjs-core/dist/ops/reciprocal.js");n.d(t,"reciprocal",(function(){return bt.reciprocal}));var jt=n(/*! ./relu */"./node_modules/@tensorflow/tfjs-core/dist/ops/relu.js");n.d(t,"relu",(function(){return jt.relu}));var gt=n(/*! ./relu6 */"./node_modules/@tensorflow/tfjs-core/dist/ops/relu6.js");n.d(t,"relu6",(function(){return gt.relu6}));var wt=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");n.d(t,"reshape",(function(){return wt.reshape}));var _t=n(/*! ./reverse */"./node_modules/@tensorflow/tfjs-core/dist/ops/reverse.js");n.d(t,"reverse",(function(){return _t.reverse}));var kt=n(/*! ./reverse_1d */"./node_modules/@tensorflow/tfjs-core/dist/ops/reverse_1d.js");n.d(t,"reverse1d",(function(){return kt.reverse1d}));var vt=n(/*! ./reverse_2d */"./node_modules/@tensorflow/tfjs-core/dist/ops/reverse_2d.js");n.d(t,"reverse2d",(function(){return vt.reverse2d}));var xt=n(/*! ./reverse_3d */"./node_modules/@tensorflow/tfjs-core/dist/ops/reverse_3d.js");n.d(t,"reverse3d",(function(){return xt.reverse3d}));var yt=n(/*! ./reverse_4d */"./node_modules/@tensorflow/tfjs-core/dist/ops/reverse_4d.js");n.d(t,"reverse4d",(function(){return yt.reverse4d}));var Ot=n(/*! ./round */"./node_modules/@tensorflow/tfjs-core/dist/ops/round.js");n.d(t,"round",(function(){return Ot.round}));var It=n(/*! ./rsqrt */"./node_modules/@tensorflow/tfjs-core/dist/ops/rsqrt.js");n.d(t,"rsqrt",(function(){return It.rsqrt}));var Ct=n(/*! ./scalar */"./node_modules/@tensorflow/tfjs-core/dist/ops/scalar.js");n.d(t,"scalar",(function(){return Ct.scalar}));var St=n(/*! ./selu */"./node_modules/@tensorflow/tfjs-core/dist/ops/selu.js");n.d(t,"selu",(function(){return St.selu}));var Tt=n(/*! ./separable_conv2d */"./node_modules/@tensorflow/tfjs-core/dist/ops/separable_conv2d.js");n.d(t,"separableConv2d",(function(){return Tt.separableConv2d}));var Nt=n(/*! ./setdiff1d_async */"./node_modules/@tensorflow/tfjs-core/dist/ops/setdiff1d_async.js");n.d(t,"setdiff1dAsync",(function(){return Nt.setdiff1dAsync}));var Et=n(/*! ./sigmoid */"./node_modules/@tensorflow/tfjs-core/dist/ops/sigmoid.js");n.d(t,"sigmoid",(function(){return Et.sigmoid}));var At=n(/*! ./sign */"./node_modules/@tensorflow/tfjs-core/dist/ops/sign.js");n.d(t,"sign",(function(){return At.sign}));var Rt=n(/*! ./sin */"./node_modules/@tensorflow/tfjs-core/dist/ops/sin.js");n.d(t,"sin",(function(){return Rt.sin}));var Ft=n(/*! ./sinh */"./node_modules/@tensorflow/tfjs-core/dist/ops/sinh.js");n.d(t,"sinh",(function(){return Ft.sinh}));var Mt=n(/*! ./slice */"./node_modules/@tensorflow/tfjs-core/dist/ops/slice.js");n.d(t,"slice",(function(){return Mt.slice}));var $t=n(/*! ./slice1d */"./node_modules/@tensorflow/tfjs-core/dist/ops/slice1d.js");n.d(t,"slice1d",(function(){return $t.slice1d}));var Dt=n(/*! ./slice2d */"./node_modules/@tensorflow/tfjs-core/dist/ops/slice2d.js");n.d(t,"slice2d",(function(){return Dt.slice2d}));var Pt=n(/*! ./slice3d */"./node_modules/@tensorflow/tfjs-core/dist/ops/slice3d.js");n.d(t,"slice3d",(function(){return Pt.slice3d}));var Bt=n(/*! ./slice4d */"./node_modules/@tensorflow/tfjs-core/dist/ops/slice4d.js");n.d(t,"slice4d",(function(){return Bt.slice4d}));var Lt=n(/*! ./softmax */"./node_modules/@tensorflow/tfjs-core/dist/ops/softmax.js");n.d(t,"softmax",(function(){return Lt.softmax}));var zt=n(/*! ./softplus */"./node_modules/@tensorflow/tfjs-core/dist/ops/softplus.js");n.d(t,"softplus",(function(){return zt.softplus}));var Gt=n(/*! ./space_to_batch_nd */"./node_modules/@tensorflow/tfjs-core/dist/ops/space_to_batch_nd.js");n.d(t,"spaceToBatchND",(function(){return Gt.spaceToBatchND}));var Ut=n(/*! ./spectral/fft */"./node_modules/@tensorflow/tfjs-core/dist/ops/spectral/fft.js");n.d(t,"fft",(function(){return Ut.fft}));var Wt=n(/*! ./spectral/ifft */"./node_modules/@tensorflow/tfjs-core/dist/ops/spectral/ifft.js");n.d(t,"ifft",(function(){return Wt.ifft}));var Vt=n(/*! ./spectral/irfft */"./node_modules/@tensorflow/tfjs-core/dist/ops/spectral/irfft.js");n.d(t,"irfft",(function(){return Vt.irfft}));var qt=n(/*! ./spectral/rfft */"./node_modules/@tensorflow/tfjs-core/dist/ops/spectral/rfft.js");n.d(t,"rfft",(function(){return qt.rfft}));var Ht=n(/*! ./split */"./node_modules/@tensorflow/tfjs-core/dist/ops/split.js");n.d(t,"split",(function(){return Ht.split}));var Kt=n(/*! ./sqrt */"./node_modules/@tensorflow/tfjs-core/dist/ops/sqrt.js");n.d(t,"sqrt",(function(){return Kt.sqrt}));var Xt=n(/*! ./square */"./node_modules/@tensorflow/tfjs-core/dist/ops/square.js");n.d(t,"square",(function(){return Xt.square}));var Yt=n(/*! ./squared_difference */"./node_modules/@tensorflow/tfjs-core/dist/ops/squared_difference.js");n.d(t,"squaredDifference",(function(){return Yt.squaredDifference}));var Zt=n(/*! ./squeeze */"./node_modules/@tensorflow/tfjs-core/dist/ops/squeeze.js");n.d(t,"squeeze",(function(){return Zt.squeeze}));var Qt=n(/*! ./stack */"./node_modules/@tensorflow/tfjs-core/dist/ops/stack.js");n.d(t,"stack",(function(){return Qt.stack}));var Jt=n(/*! ./step */"./node_modules/@tensorflow/tfjs-core/dist/ops/step.js");n.d(t,"step",(function(){return Jt.step}));var en=n(/*! ./strided_slice */"./node_modules/@tensorflow/tfjs-core/dist/ops/strided_slice.js");n.d(t,"stridedSlice",(function(){return en.stridedSlice}));var tn=n(/*! ./sub */"./node_modules/@tensorflow/tfjs-core/dist/ops/sub.js");n.d(t,"sub",(function(){return tn.sub}));var nn=n(/*! ./sum */"./node_modules/@tensorflow/tfjs-core/dist/ops/sum.js");n.d(t,"sum",(function(){return nn.sum}));var sn=n(/*! ./tan */"./node_modules/@tensorflow/tfjs-core/dist/ops/tan.js");n.d(t,"tan",(function(){return sn.tan}));var on=n(/*! ./tanh */"./node_modules/@tensorflow/tfjs-core/dist/ops/tanh.js");n.d(t,"tanh",(function(){return on.tanh}));var rn=n(/*! ./tensor */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor.js");n.d(t,"tensor",(function(){return rn.tensor}));var an=n(/*! ./tensor1d */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor1d.js");n.d(t,"tensor1d",(function(){return an.tensor1d}));var un=n(/*! ./tensor2d */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor2d.js");n.d(t,"tensor2d",(function(){return un.tensor2d}));var dn=n(/*! ./tensor3d */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor3d.js");n.d(t,"tensor3d",(function(){return dn.tensor3d}));var ln=n(/*! ./tensor4d */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor4d.js");n.d(t,"tensor4d",(function(){return ln.tensor4d}));var cn=n(/*! ./tensor5d */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor5d.js");n.d(t,"tensor5d",(function(){return cn.tensor5d}));var fn=n(/*! ./tensor6d */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor6d.js");n.d(t,"tensor6d",(function(){return fn.tensor6d}));var pn=n(/*! ./tile */"./node_modules/@tensorflow/tfjs-core/dist/ops/tile.js");n.d(t,"tile",(function(){return pn.tile}));var mn=n(/*! ./topk */"./node_modules/@tensorflow/tfjs-core/dist/ops/topk.js");n.d(t,"topk",(function(){return mn.topk}));var hn=n(/*! ./truncated_normal */"./node_modules/@tensorflow/tfjs-core/dist/ops/truncated_normal.js");n.d(t,"truncatedNormal",(function(){return hn.truncatedNormal}));var bn=n(/*! ./unique */"./node_modules/@tensorflow/tfjs-core/dist/ops/unique.js");n.d(t,"unique",(function(){return bn.unique}));var jn=n(/*! ./unsorted_segment_sum */"./node_modules/@tensorflow/tfjs-core/dist/ops/unsorted_segment_sum.js");n.d(t,"unsortedSegmentSum",(function(){return jn.unsortedSegmentSum}));var gn=n(/*! ./unstack */"./node_modules/@tensorflow/tfjs-core/dist/ops/unstack.js");n.d(t,"unstack",(function(){return gn.unstack}));var wn=n(/*! ./variable */"./node_modules/@tensorflow/tfjs-core/dist/ops/variable.js");n.d(t,"variable",(function(){return wn.variable}));var _n=n(/*! ./where */"./node_modules/@tensorflow/tfjs-core/dist/ops/where.js");n.d(t,"where",(function(){return _n.where}));var kn=n(/*! ./where_async */"./node_modules/@tensorflow/tfjs-core/dist/ops/where_async.js");n.d(t,"whereAsync",(function(){return kn.whereAsync}));var vn=n(/*! ./zeros */"./node_modules/@tensorflow/tfjs-core/dist/ops/zeros.js");n.d(t,"zeros",(function(){return vn.zeros}));var xn=n(/*! ./zeros_like */"./node_modules/@tensorflow/tfjs-core/dist/ops/zeros_like.js");n.d(t,"zerosLike",(function(){return xn.zerosLike}));var yn=n(/*! ./boolean_mask */"./node_modules/@tensorflow/tfjs-core/dist/ops/boolean_mask.js");n.d(t,"booleanMaskAsync",(function(){return yn.booleanMaskAsync}));var On=n(/*! ./transpose */"./node_modules/@tensorflow/tfjs-core/dist/ops/transpose.js");n.d(t,"transpose",(function(){return On.transpose}));var In=n(/*! ./norm */"./node_modules/@tensorflow/tfjs-core/dist/ops/norm.js");n.d(t,"norm",(function(){return In.norm}));var Cn=n(/*! ./moving_average */"./node_modules/@tensorflow/tfjs-core/dist/ops/moving_average.js");n.d(t,"movingAverage",(function(){return Cn.movingAverage}));var Sn=n(/*! ./scatter_nd */"./node_modules/@tensorflow/tfjs-core/dist/ops/scatter_nd.js");n.d(t,"scatterND",(function(){return Sn.scatterND}));var Tn=n(/*! ./sparse_to_dense */"./node_modules/@tensorflow/tfjs-core/dist/ops/sparse_to_dense.js");n.d(t,"sparseToDense",(function(){return Tn.sparseToDense}));var Nn=n(/*! ./gather_nd */"./node_modules/@tensorflow/tfjs-core/dist/ops/gather_nd.js");n.d(t,"gatherND",(function(){return Nn.gatherND}));var En=n(/*! ./dropout */"./node_modules/@tensorflow/tfjs-core/dist/ops/dropout.js");n.d(t,"dropout",(function(){return En.dropout}));var An=n(/*! ./signal_ops_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/signal_ops_util.js");n.d(t,"enclosingPowerOfTwo",(function(){return An.enclosingPowerOfTwo})),n.d(t,"cosineWindow",(function(){return An.cosineWindow}));var Rn=n(/*! ./in_top_k */"./node_modules/@tensorflow/tfjs-core/dist/ops/in_top_k.js");n.d(t,"inTopKAsync",(function(){return Rn.inTopKAsync}));var Fn=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");n.d(t,"op",(function(){return Fn.op})),n.d(t,"OP_SCOPE_SUFFIX",(function(){return Fn.OP_SCOPE_SUFFIX}));var Mn=n(/*! ./fused_ops */"./node_modules/@tensorflow/tfjs-core/dist/ops/fused_ops.js");n.d(t,"fused",(function(){return Mn}));var $n=n(/*! ./signal/hamming_window */"./node_modules/@tensorflow/tfjs-core/dist/ops/signal/hamming_window.js"),Dn=n(/*! ./signal/hann_window */"./node_modules/@tensorflow/tfjs-core/dist/ops/signal/hann_window.js"),Pn=n(/*! ./signal/frame */"./node_modules/@tensorflow/tfjs-core/dist/ops/signal/frame.js"),Bn=n(/*! ./signal/stft */"./node_modules/@tensorflow/tfjs-core/dist/ops/signal/stft.js"),Ln=n(/*! ./image/crop_and_resize */"./node_modules/@tensorflow/tfjs-core/dist/ops/image/crop_and_resize.js"),zn=n(/*! ./image/flip_left_right */"./node_modules/@tensorflow/tfjs-core/dist/ops/image/flip_left_right.js"),Gn=n(/*! ./image/rotate_with_offset */"./node_modules/@tensorflow/tfjs-core/dist/ops/image/rotate_with_offset.js"),Un=n(/*! ./image/non_max_suppression */"./node_modules/@tensorflow/tfjs-core/dist/ops/image/non_max_suppression.js"),Wn=n(/*! ./image/non_max_suppression_async */"./node_modules/@tensorflow/tfjs-core/dist/ops/image/non_max_suppression_async.js"),Vn=n(/*! ./image/non_max_suppression_with_score */"./node_modules/@tensorflow/tfjs-core/dist/ops/image/non_max_suppression_with_score.js"),qn=n(/*! ./image/non_max_suppression_with_score_async */"./node_modules/@tensorflow/tfjs-core/dist/ops/image/non_max_suppression_with_score_async.js"),Hn=n(/*! ./image/non_max_suppression_padded */"./node_modules/@tensorflow/tfjs-core/dist/ops/image/non_max_suppression_padded.js"),Kn=n(/*! ./image/non_max_suppression_padded_async */"./node_modules/@tensorflow/tfjs-core/dist/ops/image/non_max_suppression_padded_async.js"),Xn=n(/*! ./image/resize_bilinear */"./node_modules/@tensorflow/tfjs-core/dist/ops/image/resize_bilinear.js"),Yn=n(/*! ./image/resize_nearest_neighbor */"./node_modules/@tensorflow/tfjs-core/dist/ops/image/resize_nearest_neighbor.js"),Zn=n(/*! ./image/threshold */"./node_modules/@tensorflow/tfjs-core/dist/ops/image/threshold.js"),Qn=n(/*! ./image/transform */"./node_modules/@tensorflow/tfjs-core/dist/ops/image/transform.js"),Jn=n(/*! ./linalg/band_part */"./node_modules/@tensorflow/tfjs-core/dist/ops/linalg/band_part.js"),es=n(/*! ./linalg/gram_schmidt */"./node_modules/@tensorflow/tfjs-core/dist/ops/linalg/gram_schmidt.js"),ts=n(/*! ./linalg/qr */"./node_modules/@tensorflow/tfjs-core/dist/ops/linalg/qr.js"),ns=n(/*! ./losses/absolute_difference */"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/absolute_difference.js"),ss=n(/*! ./losses/compute_weighted_loss */"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/compute_weighted_loss.js"),os=n(/*! ./losses/cosine_distance */"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/cosine_distance.js"),rs=n(/*! ./losses/hinge_loss */"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/hinge_loss.js"),is=n(/*! ./losses/huber_loss */"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/huber_loss.js"),as=n(/*! ./losses/log_loss */"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/log_loss.js"),us=n(/*! ./losses/mean_squared_error */"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/mean_squared_error.js"),ds=n(/*! ./losses/sigmoid_cross_entropy */"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/sigmoid_cross_entropy.js"),ls=n(/*! ./losses/softmax_cross_entropy */"./node_modules/@tensorflow/tfjs-core/dist/ops/losses/softmax_cross_entropy.js"),cs=n(/*! ./sparse/sparse_fill_empty_rows */"./node_modules/@tensorflow/tfjs-core/dist/ops/sparse/sparse_fill_empty_rows.js"),fs=n(/*! ./sparse/sparse_reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/sparse/sparse_reshape.js"),ps=n(/*! ./sparse/sparse_segment_mean */"./node_modules/@tensorflow/tfjs-core/dist/ops/sparse/sparse_segment_mean.js"),ms=n(/*! ./sparse/sparse_segment_sum */"./node_modules/@tensorflow/tfjs-core/dist/ops/sparse/sparse_segment_sum.js"),hs=n(/*! ./string/string_n_grams */"./node_modules/@tensorflow/tfjs-core/dist/ops/string/string_n_grams.js"),bs=n(/*! ./string/string_split */"./node_modules/@tensorflow/tfjs-core/dist/ops/string/string_split.js"),js=n(/*! ./string/string_to_hash_bucket_fast */"./node_modules/@tensorflow/tfjs-core/dist/ops/string/string_to_hash_bucket_fast.js");
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+const gs={fft:Ut.fft,ifft:Wt.ifft,rfft:qt.rfft,irfft:Vt.irfft},ws={hammingWindow:$n.hammingWindow,hannWindow:Dn.hannWindow,frame:Pn.frame,stft:Bn.stft},_s={flipLeftRight:zn.flipLeftRight,resizeNearestNeighbor:Yn.resizeNearestNeighbor,resizeBilinear:Xn.resizeBilinear,rotateWithOffset:Gn.rotateWithOffset,cropAndResize:Ln.cropAndResize,nonMaxSuppression:Un.nonMaxSuppression,nonMaxSuppressionAsync:Wn.nonMaxSuppressionAsync,nonMaxSuppressionWithScore:Vn.nonMaxSuppressionWithScore,nonMaxSuppressionWithScoreAsync:qn.nonMaxSuppressionWithScoreAsync,nonMaxSuppressionPadded:Hn.nonMaxSuppressionPadded,nonMaxSuppressionPaddedAsync:Kn.nonMaxSuppressionPaddedAsync,threshold:Zn.threshold,transform:Qn.transform},ks={bandPart:Jn.bandPart,gramSchmidt:es.gramSchmidt,qr:ts.qr},vs={absoluteDifference:ns.absoluteDifference,computeWeightedLoss:ss.computeWeightedLoss,cosineDistance:os.cosineDistance,hingeLoss:rs.hingeLoss,huberLoss:is.huberLoss,logLoss:as.logLoss,meanSquaredError:us.meanSquaredError,sigmoidCrossEntropy:ds.sigmoidCrossEntropy,softmaxCrossEntropy:ls.softmaxCrossEntropy},xs={sparseFillEmptyRows:cs.sparseFillEmptyRows,sparseReshape:fs.sparseReshape,sparseSegmentMean:ps.sparseSegmentMean,sparseSegmentSum:ms.sparseSegmentSum},ys={stringNGrams:hs.stringNGrams,stringSplit:bs.stringSplit,stringToHashBucketFast:js.stringToHashBucketFast}},"./node_modules/@tensorflow/tfjs-core/dist/ops/outer_product.js":
+/*!**********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/outer_product.js ***!
+ \**********************************************************************/
+/*! exports provided: outerProduct */function(e,t,n){"use strict";n.r(t),n.d(t,"outerProduct",(function(){return u}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./mat_mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mat_mul.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),a=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const u=Object(i.op)({outerProduct_:function(e,t){const n=Object(s.convertToTensor)(e,"v1","outerProduct"),i=Object(s.convertToTensor)(t,"v2","outerProduct");o.assert(1===n.rank&&1===i.rank,(()=>`Error in outerProduct: inputs must be rank 1, but got ranks ${n.rank} and ${i.rank}.`));const u=Object(a.reshape)(n,[-1,1]),d=Object(a.reshape)(i,[1,-1]);return Object(r.matMul)(u,d)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/pad.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/pad.js ***!
+ \************************************************************/
+/*! exports provided: pad */function(e,t,n){"use strict";n.r(t),n.d(t,"pad",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({pad_:
+/**
+ * @license
+ * Copyright 2020 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,t,n=0){const i=Object(r.convertToTensor)(e,"x","pad");if(0===i.rank)throw new Error("pad(scalar) is not defined. Pass non-scalar to pad");const a={paddings:t,constantValue:n},u={x:i};return s.ENGINE.runKernel(o.PadV2,u,a)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/pad1d.js":
+/*!**************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/pad1d.js ***!
+ \**************************************************************/
+/*! exports provided: pad1d */function(e,t,n){"use strict";n.r(t),n.d(t,"pad1d",(function(){return i}));var s=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),o=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),r=n(/*! ./pad */"./node_modules/@tensorflow/tfjs-core/dist/ops/pad.js");const i=Object(o.op)({pad1d_:function(e,t,n=0){return Object(s.assert)(2===t.length,(()=>"Invalid number of paddings. Must be length of 2.")),Object(r.pad)(e,[t],n)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/pad2d.js":
+/*!**************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/pad2d.js ***!
+ \**************************************************************/
+/*! exports provided: pad2d */function(e,t,n){"use strict";n.r(t),n.d(t,"pad2d",(function(){return i}));var s=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),o=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),r=n(/*! ./pad */"./node_modules/@tensorflow/tfjs-core/dist/ops/pad.js");const i=Object(o.op)({pad2d_:function(e,t,n=0){return Object(s.assert)(2===t.length&&2===t[0].length&&2===t[1].length,(()=>"Invalid number of paddings. Must be length of 2 each.")),Object(r.pad)(e,t,n)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/pad3d.js":
+/*!**************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/pad3d.js ***!
+ \**************************************************************/
+/*! exports provided: pad3d */function(e,t,n){"use strict";n.r(t),n.d(t,"pad3d",(function(){return i}));var s=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),o=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),r=n(/*! ./pad */"./node_modules/@tensorflow/tfjs-core/dist/ops/pad.js");const i=Object(o.op)({pad3d_:function(e,t,n=0){return Object(s.assert)(3===t.length&&2===t[0].length&&2===t[1].length&&2===t[2].length,(()=>"Invalid number of paddings. Must be length of 2 each.")),Object(r.pad)(e,t,n)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/pad4d.js":
+/*!**************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/pad4d.js ***!
+ \**************************************************************/
+/*! exports provided: pad4d */function(e,t,n){"use strict";n.r(t),n.d(t,"pad4d",(function(){return i}));var s=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),o=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),r=n(/*! ./pad */"./node_modules/@tensorflow/tfjs-core/dist/ops/pad.js");const i=Object(o.op)({pad4d_:function(e,t,n=0){return Object(s.assert)(4===t.length&&2===t[0].length&&2===t[1].length&&2===t[2].length&&2===t[3].length,(()=>"Invalid number of paddings. Must be length of 2 each.")),Object(r.pad)(e,t,n)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/pool.js":
+/*!*************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/pool.js ***!
+ \*************************************************************/
+/*! exports provided: pool */function(e,t,n){"use strict";n.r(t),n.d(t,"pool",(function(){return f}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./avg_pool */"./node_modules/@tensorflow/tfjs-core/dist/ops/avg_pool.js"),i=n(/*! ./batch_to_space_nd */"./node_modules/@tensorflow/tfjs-core/dist/ops/batch_to_space_nd.js"),a=n(/*! ./conv_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/conv_util.js"),u=n(/*! ./max_pool */"./node_modules/@tensorflow/tfjs-core/dist/ops/max_pool.js"),d=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),l=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js"),c=n(/*! ./space_to_batch_nd */"./node_modules/@tensorflow/tfjs-core/dist/ops/space_to_batch_nd.js");const f=Object(d.op)({pool_:
+/**
+ * @license
+ * Copyright 2018 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,t,n,d,f,p){null==f&&(f=[1,1]),null==p&&(p=1),0===d&&(d="valid");const m=Object(s.convertToTensor)(e,"x","maxPool");let h=m,b=!1;3===m.rank&&(b=!0,h=Object(l.reshape)(m,[1,m.shape[0],m.shape[1],m.shape[2]])),o.assert(a.eitherStridesOrDilationsAreOne(p,f),(()=>`Error in pool: Either strides or dilations must be 1. Got strides ${p} and dilations '${f}'`));const j=a.computePool2DInfo(h.shape,t,p,f,d),g=[j.dilationHeight,j.dilationWidth];let w;w="same"===d?function(e,t){const n=e.map(((e,n)=>e+(e-1)*(t[n]-1))).map((e=>e-1)),s=n.map((e=>Math.floor(e/2))),o=n.map(((e,t)=>e-s[t]));return n.map(((e,t)=>[s[t],o[t]]))}([j.filterHeight,j.filterWidth],g):[[0,0],[0,0]];const _=1===g[0]&&1===g[1],[k,v]=function(e,t,n){const s=n.map((e=>e[0])),o=n.map((e=>e[1])),r=e.concat(s,o),i=t.map(((e,t)=>(e-r[t]%e)%e)),a=o.map(((e,t)=>e+i[t])),u=t.map(((e,t)=>[s[t],a[t]])),d=t.map(((e,t)=>[0,i[t]]));return[u,d]}([j.inHeight,j.inWidth],g,w),x=_?d:"valid",y=_?h:Object(c.spaceToBatchND)(h,g,k),O=("avg"===n?()=>Object(r.avgPool)(y,t,p,x):()=>Object(u.maxPool)(y,t,p,x))(),I=_?O:Object(i.batchToSpaceND)(O,g,v);return b?Object(l.reshape)(I,[I.shape[1],I.shape[2],I.shape[3]]):I}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/pow.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/pow.js ***!
+ \************************************************************/
+/*! exports provided: pow */function(e,t,n){"use strict";n.r(t),n.d(t,"pow",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util.js"),i=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({pow_:
+/**
+ * @license
+ * Copyright 2020 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,t){let n=Object(i.convertToTensor)(e,"base","pow"),a=Object(i.convertToTensor)(t,"exp","pow");[n,a]=Object(r.makeTypesMatch)(n,a);const u={a:n,b:a};return s.ENGINE.runKernel(o.Pow,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/prelu.js":
+/*!**************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/prelu.js ***!
+ \**************************************************************/
+/*! exports provided: prelu */function(e,t,n){"use strict";n.r(t),n.d(t,"prelu",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({prelu_:
+/**
+ * @license
+ * Copyright 2020 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,t){const n={x:Object(r.convertToTensor)(e,"x","prelu"),alpha:Object(r.convertToTensor)(t,"alpha","prelu")};return s.ENGINE.runKernel(o.Prelu,n)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/print.js":
+/*!**************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/print.js ***!
+ \**************************************************************/
+/*! exports provided: print */function(e,t,n){"use strict";
+/**
+ * @license
+ * Copyright 2020 Google Inc. 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 s(e,t=!1){console.log(e.toString(t))}n.r(t),n.d(t,"print",(function(){return s}))},"./node_modules/@tensorflow/tfjs-core/dist/ops/prod.js":
+/*!*************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/prod.js ***!
+ \*************************************************************/
+/*! exports provided: prod */function(e,t,n){"use strict";n.r(t),n.d(t,"prod",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./cast */"./node_modules/@tensorflow/tfjs-core/dist/ops/cast.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({prod_:
+/**
+ * @license
+ * Copyright 2020 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,t=null,n=!1){let a=Object(r.convertToTensor)(e,"x","prod");"bool"===a.dtype&&(a=Object(i.cast)(a,"int32"));const u={x:a},d={axis:t,keepDims:n};return s.ENGINE.runKernel(o.Prod,u,d)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/rand.js":
+/*!*************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/rand.js ***!
+ \*************************************************************/
+/*! exports provided: rand */function(e,t,n){"use strict";n.r(t),n.d(t,"rand",(function(){return i}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const i=Object(r.op)({rand_:
+/**
+ * @license
+ * Copyright 2020 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,t,n){const r=Object(o.sizeFromShape)(e);let i=null;if(null==n||"float32"===n)i=new Float32Array(r);else if("int32"===n)i=new Int32Array(r);else{if("bool"!==n)throw new Error(`Unknown data type ${n}`);i=new Uint8Array(r)}for(let e=0;e=1||0===r);const i=Math.sqrt(-2*Math.log(r)/r);e=this.mean+this.stdDev*s*i,t=this.mean+this.stdDev*o*i,this.truncated&&!this.isValidTruncated(e)||(n=!0)}return this.truncated&&!this.isValidTruncated(t)||(this.nextVal=this.convertValue(t)),this.convertValue(e)}convertValue(e){return null==this.dtype||"float32"===this.dtype?e:Math.round(e)}isValidTruncated(e){return e<=this.upper&&e>=this.lower}}class i{constructor(e,t,n,o){this.alpha=e,this.beta=1/t,this.dtype=n;const i=o||Math.random();this.randu=s.alea(i.toString()),this.randn=new r(0,1,n,!1,this.randu()),this.d=e<1?e+2/3:e-1/3,this.c=1/Math.sqrt(9*this.d)}nextValue(){let e,t,n,s,o,r;for(;;){do{s=this.randn.nextValue(),r=1+this.c*s}while(r<=0);if(r*=r*r,e=s*s,t=1-.331*e*e,n=.5*e+this.d*(1-r+Math.log(r)),o=this.randu(),onull==this.dtype||"float32"===this.dtype,this.min=e,this.range=t-e,this.dtype=n,null==o&&(o=Math.random()),"number"==typeof o&&(o=o.toString()),!this.canReturnFloat()&&this.range<=1)throw new Error(`The difference between ${e} - ${t} <= 1 and dtype is not float`);this.random=s.alea(o)}convertValue(e){return this.canReturnFloat()?e:Math.round(e)}nextValue(){return this.convertValue(this.min+this.range*this.random())}}function u(e){const t=e.length,n=function(e){const t=l(e),n=e.length;let s=0,o=0;for(let r=0;r5.991)throw new Error(`Invalid p-value for JB: ${o}`)}function d(e,t,n,s){null==s&&(s=Object(o.testEpsilon)());const r=l(e);Object(o.expectNumbersClose)(r,t,s),Object(o.expectNumbersClose)(function(e,t){let n=0;for(let s=0;s`Error in reverse1D: x must be rank 1 but got rank ${t.rank}.`)),Object(i.reverse)(t,0)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/reverse_2d.js":
+/*!*******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/reverse_2d.js ***!
+ \*******************************************************************/
+/*! exports provided: reverse2d */function(e,t,n){"use strict";n.r(t),n.d(t,"reverse2d",(function(){return a}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),i=n(/*! ./reverse */"./node_modules/@tensorflow/tfjs-core/dist/ops/reverse.js");const a=Object(r.op)({reverse2d_:
+/**
+ * @license
+ * Copyright 2020 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,t){const n=Object(s.convertToTensor)(e,"x","reverse");return o.assert(2===n.rank,(()=>`Error in reverse2D: x must be rank 2 but got rank ${n.rank}.`)),Object(i.reverse)(n,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/reverse_3d.js":
+/*!*******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/reverse_3d.js ***!
+ \*******************************************************************/
+/*! exports provided: reverse3d */function(e,t,n){"use strict";n.r(t),n.d(t,"reverse3d",(function(){return a}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),i=n(/*! ./reverse */"./node_modules/@tensorflow/tfjs-core/dist/ops/reverse.js");const a=Object(r.op)({reverse3d_:
+/**
+ * @license
+ * Copyright 2020 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,t){const n=Object(s.convertToTensor)(e,"x","reverse");return o.assert(3===n.rank,(()=>`Error in reverse3D: x must be rank 3 but got rank ${n.rank}.`)),Object(i.reverse)(n,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/reverse_4d.js":
+/*!*******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/reverse_4d.js ***!
+ \*******************************************************************/
+/*! exports provided: reverse4d */function(e,t,n){"use strict";n.r(t),n.d(t,"reverse4d",(function(){return a}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),i=n(/*! ./reverse */"./node_modules/@tensorflow/tfjs-core/dist/ops/reverse.js");const a=Object(r.op)({reverse4d_:
+/**
+ * @license
+ * Copyright 2020 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,t){const n=Object(s.convertToTensor)(e,"x","reverse");return o.assert(4===n.rank,(()=>`Error in reverse4D: x must be rank 4 but got rank ${n.rank}.`)),Object(i.reverse)(n,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/rotate_util.js":
+/*!********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/rotate_util.js ***!
+ \********************************************************************/
+/*! exports provided: getImageCenter */function(e,t,n){"use strict";
+/**
+ * @license
+ * Copyright 2020 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 s(e,t,n){return[n*("number"==typeof e?e:e[0]),t*("number"==typeof e?e:e[1])]}n.r(t),n.d(t,"getImageCenter",(function(){return s}))},"./node_modules/@tensorflow/tfjs-core/dist/ops/round.js":
+/*!**************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/round.js ***!
+ \**************************************************************/
+/*! exports provided: round */function(e,t,n){"use strict";n.r(t),n.d(t,"round",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({round_:
+/**
+ * @license
+ * Copyright 2018 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){const t={x:Object(r.convertToTensor)(e,"x","round")};return s.ENGINE.runKernel(o.Round,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/rsqrt.js":
+/*!**************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/rsqrt.js ***!
+ \**************************************************************/
+/*! exports provided: rsqrt */function(e,t,n){"use strict";n.r(t),n.d(t,"rsqrt",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({rsqrt_:
+/**
+ * @license
+ * Copyright 2018 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){const t={x:Object(r.convertToTensor)(e,"x","rsqrt")};return s.ENGINE.runKernel(o.Rsqrt,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/scalar.js":
+/*!***************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/scalar.js ***!
+ \***************************************************************/
+/*! exports provided: scalar */function(e,t,n){"use strict";n.r(t),n.d(t,"scalar",(function(){return r}));var s=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),o=n(/*! ./tensor_ops_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor_ops_util.js");
+/**
+ * @license
+ * Copyright 2018 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 r(e,t){if((Object(s.isTypedArray)(e)&&"string"!==t||Array.isArray(e))&&"complex64"!==t)throw new Error("Error creating a new Scalar: value must be a primitive (number|boolean|string)");if("string"===t&&Object(s.isTypedArray)(e)&&!(e instanceof Uint8Array))throw new Error("When making a scalar from encoded string, the value must be `Uint8Array`.");return Object(o.makeTensor)(e,[],[],t)}},"./node_modules/@tensorflow/tfjs-core/dist/ops/scatter_nd.js":
+/*!*******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/scatter_nd.js ***!
+ \*******************************************************************/
+/*! exports provided: scatterND */function(e,t,n){"use strict";n.r(t),n.d(t,"scatterND",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),a=n(/*! ./scatter_nd_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/scatter_nd_util.js");const u=Object(i.op)({scatterND_:
+/**
+ * @license
+ * Copyright 2018 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,t,n){const i=Object(r.convertToTensor)(e,"indices","scatterND","int32"),u=Object(r.convertToTensor)(t,"updates","scatterND");a.validateInput(u,i,n);const d={indices:i,updates:u},l={shape:n};return s.ENGINE.runKernel(o.ScatterNd,d,l)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/scatter_nd_util.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/scatter_nd_util.js ***!
+ \************************************************************************/
+/*! exports provided: validateUpdateShape, validateInput, calculateShapes */function(e,t,n){"use strict";n.r(t),n.d(t,"validateUpdateShape",(function(){return o})),n.d(t,"validateInput",(function(){return r})),n.d(t,"calculateShapes",(function(){return i}));var s=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");function o(e,t,n){const s=t.rank>1?t.shape[t.rank-1]:1,o=t.rank>1?t.rank-1:1,r=`Must have updates.shape = indices.shape[:batchDim] + shape[sliceDim:], got updates.shape: ${n.shape}, indices.shape: ${t.shape}, shape: ${e}, sliceDim: ${s}, and batchDim: ${o}.`;if(n.rank1?t.shape[o-1]:1,i=n.length;let a=1;for(let e=r;et||n===e?r=!0:n=Object(s.nearestDivisor)(e,n+1);return n}function i(e,t,n){const s=[],o=e.length;for(let r=0;ro))throw new Error(`Expect batchDims in the range of [-${o}, ${o}], but got ${s}`);if(s<0&&(s+=o),s>r)throw new Error(`batchDims (${s}) must be less than rank(x) (\n ${r}).`);if(n`Error in separableConv2d: input must be rank 4, but got rank ${h.rank}.`)),o.assert(4===p.rank,(()=>`Error in separableConv2d: depthwise filter must be rank 4, but got rank ${p.rank}.`)),o.assert(4===m.rank,(()=>`Error in separableConv2d: pointwise filter must be rank 4, but got rank ${p.rank}.`)),o.assert(1===m.shape[0],(()=>`Error in separableConv2d: the first dimension of pointwise filter must be 1, but got ${m.shape[0]}.`)),o.assert(1===m.shape[1],(()=>`Error in separableConv2d: the second dimension of pointwise filter must be 1, but got ${m.shape[1]}.`));const j=p.shape[2],g=p.shape[3];o.assert(m.shape[2]===j*g,(()=>`Error in separableConv2d: the third dimension of pointwise filter must be ${j*g}, but got ${m.shape[2]}.`));const w=Object(i.depthwiseConv2d)(h,p,a,d,c,l),_=Object(r.conv2d)(w,m,1,"valid",c);return b?Object(u.reshape)(_,[_.shape[1],_.shape[2],_.shape[3]]):_}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/setdiff1d_async.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/setdiff1d_async.js ***!
+ \************************************************************************/
+/*! exports provided: setdiff1dAsync */function(e,t,n){"use strict";n.r(t),n.d(t,"setdiff1dAsync",(function(){return i}));var s=n(/*! ../tensor */"./node_modules/@tensorflow/tfjs-core/dist/tensor.js"),o=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),r=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");const i=
+/**
+ * @license
+ * Copyright 2020 Google Inc. 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.
+ * =============================================================================
+ */
+async function(e,t){const n=Object(o.convertToTensor)(e,"x","setdiff1d"),i=Object(o.convertToTensor)(t,"y","setdiff1d");r.assert(n.dtype===i.dtype,(()=>`x and y should have the same dtype, but got x (${n.dtype}) and y (${i.dtype}).`)),r.assert(1===n.rank,(()=>`x should be 1D tensor, but got x (${n.shape}).`)),r.assert(1===i.rank,(()=>`y should be 1D tensor, but got y (${i.shape}).`));const a=await n.data(),u=await i.data(),d=new Set(u);let l=0;for(let e=0;e`slice1d expects a rank-1 tensor, but got a rank-${r.rank} tensor`)),Object(i.slice)(r,[t],[n])}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/slice2d.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/slice2d.js ***!
+ \****************************************************************/
+/*! exports provided: slice2d */function(e,t,n){"use strict";n.r(t),n.d(t,"slice2d",(function(){return a}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),i=n(/*! ./slice */"./node_modules/@tensorflow/tfjs-core/dist/ops/slice.js");const a=Object(r.op)({slice2d_:
+/**
+ * @license
+ * Copyright 2018 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,t,n){const r=Object(s.convertToTensor)(e,"x","slice2d");return o.assert(2===r.rank,(()=>`slice2d expects a rank-2 tensor, but got a rank-${r.rank} tensor`)),Object(i.slice)(r,t,n)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/slice3d.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/slice3d.js ***!
+ \****************************************************************/
+/*! exports provided: slice3d */function(e,t,n){"use strict";n.r(t),n.d(t,"slice3d",(function(){return a}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),i=n(/*! ./slice */"./node_modules/@tensorflow/tfjs-core/dist/ops/slice.js");const a=Object(r.op)({slice3d_:
+/**
+ * @license
+ * Copyright 2018 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,t,n){const r=Object(s.convertToTensor)(e,"x","slice3d");return o.assert(3===r.rank,(()=>`slice3d expects a rank-3 tensor, but got a rank-${r.rank} tensor`)),Object(i.slice)(r,t,n)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/slice4d.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/slice4d.js ***!
+ \****************************************************************/
+/*! exports provided: slice4d */function(e,t,n){"use strict";n.r(t),n.d(t,"slice4d",(function(){return a}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),i=n(/*! ./slice */"./node_modules/@tensorflow/tfjs-core/dist/ops/slice.js");const a=Object(r.op)({slice4d_:
+/**
+ * @license
+ * Copyright 2018 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,t,n){const r=Object(s.convertToTensor)(e,"x","slice4d");return o.assert(4===r.rank,(()=>`slice4d expects a rank-4 tensor, but got a rank-${r.rank} tensor`)),Object(i.slice)(r,t,n)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/slice_util.js":
+/*!*******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/slice_util.js ***!
+ \*******************************************************************/
+/*! exports provided: assertParamsValid, maskToAxes, computeOutShape, stridesWithElidedDims, getNormalizedAxes, startIndicesWithElidedDims, stopIndicesWithElidedDims, stridesForAxis, startForAxis, stopForAxis, isSliceContinous, computeFlatOffset, parseSliceParams, sliceInfo */function(e,t,n){"use strict";n.r(t),n.d(t,"assertParamsValid",(function(){return o})),n.d(t,"maskToAxes",(function(){return r})),n.d(t,"computeOutShape",(function(){return i})),n.d(t,"stridesWithElidedDims",(function(){return a})),n.d(t,"getNormalizedAxes",(function(){return l})),n.d(t,"startIndicesWithElidedDims",(function(){return c})),n.d(t,"stopIndicesWithElidedDims",(function(){return f})),n.d(t,"stridesForAxis",(function(){return p})),n.d(t,"startForAxis",(function(){return m})),n.d(t,"stopForAxis",(function(){return h})),n.d(t,"isSliceContinous",(function(){return b})),n.d(t,"computeFlatOffset",(function(){return j})),n.d(t,"parseSliceParams",(function(){return g})),n.d(t,"sliceInfo",(function(){return w}));var s=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");
+/**
+ * @license
+ * Copyright 2017 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 o(e,t,n){const o=e.shape.length;s.assert(o===t.length,(()=>`Error in slice${o}D: Length of begin ${t} must match the rank of the array (${o}).`)),s.assert(o===n.length,(()=>`Error in slice${o}D: Length of size ${n} must match the rank of the array (${o}).`));for(let r=0;r`Error in slice${o}D: begin[${r}] + size[${r}] (${t[r]+n[r]}) would overflow input.shape[${r}] (${e.shape[r]})`))}function r(e){const t=[];let n=0;for(;e>0;)1&e&&t.push(n),e/=2,n++;return t}function i(e,t,n){const s=[];for(let o=0;o0){const d=t[0],l=n+1;b=c(i,d,l,s,e),j=f(u,d,l,o,e),g=a(r,d,l,e)}else for(let t=0;t-1)r[o]=0;else{const i=u(t,n,o);let a=s[i];e&1<-1)i[s]=Number.MAX_SAFE_INTEGER;else{const r=u(t,n,s);let a=o[r];e&1<0?Number.MIN_SAFE_INTEGER:Number.MAX_SAFE_INTEGER);const d=o[r];return a<0&&(a+=d),a=s.clamp(0,a,d-1),a}function h(e,t,n,o,r,i){let a=t[r];const u=n[r]||1;(e&1<0?Number.MAX_SAFE_INTEGER:Number.MIN_SAFE_INTEGER);const d=o[r];return a<0&&(a+=d),a=u>0?s.clamp(0,a,d):s.clamp(-1,a,d-1),a}function b(e,t,n){let s=n.length;for(let e=0;e1){s=e;break}for(let o=s+1;o0||n[o]!==e[o])return!1;return!0}function j(e,t){let n=e.length>0?e[e.length-1]:1;for(let s=0;s{s.assert(-1!==e,(()=>"slice() does not support negative begin indexing."))})),i=null==n?new Array(r).fill(-1):"number"==typeof n?[n,...new Array(r-1).fill(-1)]:n.lengtht>=0?t:(s.assert(-1===t,(()=>`Negative size values should be exactly -1 but got ${t} for the slice() size at index ${n}.`)),e.shape[n]-o[n]))),[o,i]}function w(e,t,n,s,o,a,u,d,c){let f=t.slice(),p=n.slice(),m=s;null==s&&(m=new Array(f.length));const h=r(u);if(h.length>1)throw new Error("Multiple ellipses in slice is not allowed.");if(0!==u&&0!==d)throw new Error("Using both ellipsisMask and newAxisMask is not yet supported.");if(0!==u&&0!==c)throw new Error("Using both ellipsisMask and shrinkAxisMask is not yet supported.");const b=e.length-f.length,j=r(d),g=e.slice();j.forEach((e=>{f[e]=0,p[e]=1,g.splice(e,0,1)}));const{begin:w,end:_,strides:k}=l(g,h,b,f,p,m,o,a,u);f=w,p=_,m=k;const v=r(c);v.forEach((e=>{p[e]=f[e]+1,m[e]=1}));const x=i(f,p,m),y=x.filter(((e,t)=>-1===v.indexOf(t)));return{nonStrided:m.every((e=>1===e)),$begin:f,$end:p,$strides:m,size:x,newShape:g,outShape:y}}},"./node_modules/@tensorflow/tfjs-core/dist/ops/softmax.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/softmax.js ***!
+ \****************************************************************/
+/*! exports provided: softmax */function(e,t,n){"use strict";n.r(t),n.d(t,"softmax",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({softmax_:
+/**
+ * @license
+ * Copyright 2018 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,t=-1){const n=Object(r.convertToTensor)(e,"logits","softmax","float32");if(-1===t&&(t=n.rank-1),t!==n.rank-1)throw Error(`Softmax along a non-last dimension is not yet supported. Logits was rank ${n.rank} and dim was ${t}`);const i={logits:n},a={dim:t};return s.ENGINE.runKernel(o.Softmax,i,a)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/softplus.js":
+/*!*****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/softplus.js ***!
+ \*****************************************************************/
+/*! exports provided: softplus */function(e,t,n){"use strict";n.r(t),n.d(t,"softplus",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({softplus_:
+/**
+ * @license
+ * Copyright 2018 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){const t={x:Object(r.convertToTensor)(e,"x","softplus")};return s.ENGINE.runKernel(o.Softplus,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/space_to_batch_nd.js":
+/*!**************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/space_to_batch_nd.js ***!
+ \**************************************************************************/
+/*! exports provided: spaceToBatchND */function(e,t,n){"use strict";n.r(t),n.d(t,"spaceToBatchND",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({spaceToBatchND_:
+/**
+ * @license
+ * Copyright 2020 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,t,n){const a=Object(r.convertToTensor)(e,"x","spaceToBatchND");i.assert(a.rank>=1+t.length,(()=>`input rank ${a.rank} should be > than [blockShape] ${t.length}`)),i.assert(n.length===t.length,(()=>`paddings.shape[0] ${n.length} must be equal to [blockShape] ${t.length}`)),i.assert(a.shape.reduce(((e,s,o)=>o>0&&o<=t.length?e&&(s+n[o-1][0]+n[o-1][1])%t[o-1]==0:e),!0),(()=>`input spatial dimensions ${a.shape.slice(1)} with paddings ${n.toString()} must be divisible by blockShapes ${t.toString()}`));const u={x:a},d={blockShape:t,paddings:n};return s.ENGINE.runKernel(o.SpaceToBatchND,u,d)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/sparse/sparse_fill_empty_rows.js":
+/*!**************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/sparse/sparse_fill_empty_rows.js ***!
+ \**************************************************************************************/
+/*! exports provided: sparseFillEmptyRows */function(e,t,n){"use strict";n.r(t),n.d(t,"sparseFillEmptyRows",(function(){return a}));var s=n(/*! ../../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({sparseFillEmptyRows_:
+/**
+ * @license
+ * Copyright 2021 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,t,n,i){const a=Object(r.convertToTensor)(e,"indices","sparseFillEmptyRows"),u=Object(r.convertToTensor)(t,"values","sparseFillEmptyRows"),d=Object(r.convertToTensor)(n,"denseShape","sparseFillEmptyRows"),l=Object(r.convertToTensor)(i,"defaultValue","sparseFillEmptyRows",u.dtype);if(2!==a.rank)throw new Error(`Indices should be Tensor2D but received shape\n ${a.shape}`);if(1!==u.rank)throw new Error(`Values should be Tensor1D but received shape ${u.shape}`);if(1!==d.rank)throw new Error(`Dense shape should be Tensor1D but received shape ${d.shape}`);if(0!==l.rank)throw new Error(`Default value should be a scalar but received shape ${l.shape}`);const c={indices:a,values:u,denseShape:d,defaultValue:l},f=s.ENGINE.runKernel(o.SparseFillEmptyRows,c);return{outputIndices:f[0],outputValues:f[1],emptyRowIndicator:f[2],reverseIndexMap:f[3]}}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/sparse/sparse_reshape.js":
+/*!******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/sparse/sparse_reshape.js ***!
+ \******************************************************************************/
+/*! exports provided: sparseReshape */function(e,t,n){"use strict";n.r(t),n.d(t,"sparseReshape",(function(){return a}));var s=n(/*! ../../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({sparseReshape_:
+/**
+ * @license
+ * Copyright 2021 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,t,n){const i=Object(r.convertToTensor)(e,"inputIndices","sparseReshape"),a=Object(r.convertToTensor)(t,"inputShape","sparseReshape"),u=Object(r.convertToTensor)(n,"newShape","sparseReshape");if(2!==i.rank)throw new Error(`Input indices should be Tensor2D but received shape\n ${i.shape}`);if(1!==a.rank)throw new Error(`Input shape should be Tensor1D but received shape ${a.shape}`);if(1!==u.rank)throw new Error(`New shape should be Tensor1D but received shape ${u.shape}`);const d={inputIndices:i,inputShape:a,newShape:u},l=s.ENGINE.runKernel(o.SparseReshape,d);return{outputIndices:l[0],outputShape:l[1]}}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/sparse/sparse_segment_mean.js":
+/*!***********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/sparse/sparse_segment_mean.js ***!
+ \***********************************************************************************/
+/*! exports provided: sparseSegmentMean */function(e,t,n){"use strict";n.r(t),n.d(t,"sparseSegmentMean",(function(){return a}));var s=n(/*! ../../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({sparseSegmentMean_:
+/**
+ * @license
+ * Copyright 2021 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,t,n){const i=Object(r.convertToTensor)(e,"data","sparseSegmentMean"),a=Object(r.convertToTensor)(t,"indices","sparseSegmentMean"),u=Object(r.convertToTensor)(n,"segmentIds","sparseSegmentMean");if(i.rank<1)throw new Error("Data should be at least 1 dimensional but received scalar");if(1!==a.rank)throw new Error(`Indices should be Tensor1D but received shape\n ${a.shape}`);if(1!==u.rank)throw new Error(`Segment ids should be Tensor1D but received shape\n ${u.shape}`);const d={data:i,indices:a,segmentIds:u};return s.ENGINE.runKernel(o.SparseSegmentMean,d)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/sparse/sparse_segment_sum.js":
+/*!**********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/sparse/sparse_segment_sum.js ***!
+ \**********************************************************************************/
+/*! exports provided: sparseSegmentSum */function(e,t,n){"use strict";n.r(t),n.d(t,"sparseSegmentSum",(function(){return a}));var s=n(/*! ../../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({sparseSegmentSum_:
+/**
+ * @license
+ * Copyright 2021 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,t,n){const i=Object(r.convertToTensor)(e,"data","sparseSegmentSum"),a=Object(r.convertToTensor)(t,"indices","sparseSegmentSum"),u=Object(r.convertToTensor)(n,"segmentIds","sparseSegmentSum");if(i.rank<1)throw new Error("Data should be at least 1 dimensional but received scalar");if(1!==a.rank)throw new Error(`Indices should be Tensor1D but received shape\n ${a.shape}`);if(1!==u.rank)throw new Error(`Segment ids should be Tensor1D but received shape\n ${u.shape}`);const d={data:i,indices:a,segmentIds:u};return s.ENGINE.runKernel(o.SparseSegmentSum,d)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/sparse_to_dense.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/sparse_to_dense.js ***!
+ \************************************************************************/
+/*! exports provided: sparseToDense */function(e,t,n){"use strict";n.r(t),n.d(t,"sparseToDense",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../ops/sparse_to_dense_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/sparse_to_dense_util.js"),i=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({sparseToDense_:
+/**
+ * @license
+ * Copyright 2018 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,t,n,a=0){const u=Object(i.convertToTensor)(e,"sparseIndices","sparseToDense","int32"),d=Object(i.convertToTensor)(t,"sparseValues","sparseToDense"),l=Object(i.convertToTensor)(a,"defaultValue","sparseToDense",d.dtype);r.validateInput(u,d,n,l);const c={sparseIndices:u,sparseValues:d,defaultValue:l},f={outputShape:n};return s.ENGINE.runKernel(o.SparseToDense,c,f)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/sparse_to_dense_util.js":
+/*!*****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/sparse_to_dense_util.js ***!
+ \*****************************************************************************/
+/*! exports provided: validateInput */function(e,t,n){"use strict";function s(e,t,n,s){if("int32"!==e.dtype)throw new Error(`tf.sparseToDense() expects the indices to be int32 type, but the dtype was ${e.dtype}.`);if(e.rank>2)throw new Error(`sparseIndices should be a scalar, vector, or matrix, but got shape ${e.shape}.`);const o=e.rank>0?e.shape[0]:1,r=e.rank>1?e.shape[1]:1;if(n.length!==r)throw new Error(`outputShape has incorrect number of elements:, ${n.length}, should be: ${r}.`);const i=t.size;if(0!==t.rank&&(1!==t.rank||i!==o))throw new Error(`sparseValues has incorrect shape ${t.shape}, should be [] or [${o}]`);if(t.dtype!==s.dtype)throw new Error("sparseValues.dtype must match defaultValues.dtype")}n.r(t),n.d(t,"validateInput",(function(){return s}))},"./node_modules/@tensorflow/tfjs-core/dist/ops/spectral/fft.js":
+/*!*********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/spectral/fft.js ***!
+ \*********************************************************************/
+/*! exports provided: fft */function(e,t,n){"use strict";n.r(t),n.d(t,"fft",(function(){return a}));var s=n(/*! ../../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),i=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({fft_:
+/**
+ * @license
+ * Copyright 2020 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){Object(r.assert)("complex64"===e.dtype,(()=>`The dtype for tf.spectral.fft() must be complex64 but got ${e.dtype}.`));const t={input:e};return s.ENGINE.runKernel(o.FFT,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/spectral/ifft.js":
+/*!**********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/spectral/ifft.js ***!
+ \**********************************************************************/
+/*! exports provided: ifft */function(e,t,n){"use strict";n.r(t),n.d(t,"ifft",(function(){return a}));var s=n(/*! ../../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),i=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({ifft_:
+/**
+ * @license
+ * Copyright 2020 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){Object(r.assert)("complex64"===e.dtype,(()=>`The dtype for tf.spectral.ifft() must be complex64 but got ${e.dtype}.`));const t={input:e};return s.ENGINE.runKernel(o.IFFT,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/spectral/irfft.js":
+/*!***********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/spectral/irfft.js ***!
+ \***********************************************************************/
+/*! exports provided: irfft */function(e,t,n){"use strict";n.r(t),n.d(t,"irfft",(function(){return m}));var s=n(/*! ../complex */"./node_modules/@tensorflow/tfjs-core/dist/ops/complex.js"),o=n(/*! ../concat */"./node_modules/@tensorflow/tfjs-core/dist/ops/concat.js"),r=n(/*! ../imag */"./node_modules/@tensorflow/tfjs-core/dist/ops/imag.js"),i=n(/*! ../mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),a=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),u=n(/*! ../real */"./node_modules/@tensorflow/tfjs-core/dist/ops/real.js"),d=n(/*! ../reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js"),l=n(/*! ../reverse */"./node_modules/@tensorflow/tfjs-core/dist/ops/reverse.js"),c=n(/*! ../scalar */"./node_modules/@tensorflow/tfjs-core/dist/ops/scalar.js"),f=n(/*! ../slice */"./node_modules/@tensorflow/tfjs-core/dist/ops/slice.js"),p=n(/*! ./ifft */"./node_modules/@tensorflow/tfjs-core/dist/ops/spectral/ifft.js");const m=Object(a.op)({irfft_:
+/**
+ * @license
+ * Copyright 2018 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){const t=e.shape[e.shape.length-1],n=e.size/t;let a;if(t<=2){const s=Object(d.reshape)(e,[n,t]);a=Object(p.ifft)(s)}else{const m=[n,2*(t-1)],h=Object(d.reshape)(Object(u.real)(e),[n,t]),b=Object(d.reshape)(Object(r.imag)(e),[n,t]),j=Object(l.reverse)(Object(f.slice)(h,[0,1],[n,t-2]),1),g=Object(i.mul)(Object(l.reverse)(Object(f.slice)(b,[0,1],[n,t-2]),1),Object(c.scalar)(-1)),w=Object(o.concat)([h,j],1),_=Object(o.concat)([b,g],1),k=Object(d.reshape)(Object(s.complex)(w,_),[m[0],m[1]]);a=Object(p.ifft)(k)}if(a=Object(u.real)(a),3===e.rank&&0!==e.shape[0]){const t=a,n=e.shape[0];a=Object(d.reshape)(a,[n,a.shape[0]/n,a.shape[1]]),t.dispose()}return a}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/spectral/rfft.js":
+/*!**********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/spectral/rfft.js ***!
+ \**********************************************************************/
+/*! exports provided: rfft */function(e,t,n){"use strict";n.r(t),n.d(t,"rfft",(function(){return h}));var s=n(/*! ../../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),o=n(/*! ../complex */"./node_modules/@tensorflow/tfjs-core/dist/ops/complex.js"),r=n(/*! ../concat */"./node_modules/@tensorflow/tfjs-core/dist/ops/concat.js"),i=n(/*! ../imag */"./node_modules/@tensorflow/tfjs-core/dist/ops/imag.js"),a=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),u=n(/*! ../real */"./node_modules/@tensorflow/tfjs-core/dist/ops/real.js"),d=n(/*! ../reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js"),l=n(/*! ../slice */"./node_modules/@tensorflow/tfjs-core/dist/ops/slice.js"),c=n(/*! ../split */"./node_modules/@tensorflow/tfjs-core/dist/ops/split.js"),f=n(/*! ../zeros */"./node_modules/@tensorflow/tfjs-core/dist/ops/zeros.js"),p=n(/*! ../zeros_like */"./node_modules/@tensorflow/tfjs-core/dist/ops/zeros_like.js"),m=n(/*! ./fft */"./node_modules/@tensorflow/tfjs-core/dist/ops/spectral/fft.js");const h=Object(a.op)({rfft_:
+/**
+ * @license
+ * Copyright 2018 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,t){Object(s.assert)("float32"===e.dtype,(()=>`The dtype for rfft() must be real value but got ${e.dtype}`));let n=e.shape[e.shape.length-1];const a=e.size/n;let h;if(null!=t&&t0)),o=e.shape.map((e=>e));o[e.shape.length-1]=t,h=Object(l.slice)(e,s,o),n=t}else if(null!=t&&t>n){const s=e.shape.map((e=>e));s[e.shape.length-1]=t-n,h=Object(r.concat)([e,Object(f.zeros)(s)],e.shape.length-1),n=t}else h=e;const b=Object(p.zerosLike)(h),j=Object(d.reshape)(Object(o.complex)(h,b),[a,n]),g=Object(m.fft)(j),w=Math.floor(n/2)+1,_=Object(u.real)(g),k=Object(i.imag)(g),v=Object(c.split)(_,[w,n-w],_.shape.length-1),x=Object(c.split)(k,[w,n-w],k.shape.length-1),y=h.shape.slice();return y[h.shape.length-1]=w,Object(d.reshape)(Object(o.complex)(v[0],x[0]),y)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/split.js":
+/*!**************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/split.js ***!
+ \**************************************************************/
+/*! exports provided: split */function(e,t,n){"use strict";n.r(t),n.d(t,"split",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({split_:
+/**
+ * @license
+ * Copyright 2020 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,t,n=0){const i={x:Object(r.convertToTensor)(e,"x","split")},a={numOrSizeSplits:t,axis:n};return s.ENGINE.runKernel(o.SplitV,i,a)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/split_util.js":
+/*!*******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/split_util.js ***!
+ \*******************************************************************/
+/*! exports provided: prepareSplitSize */function(e,t,n){"use strict";n.r(t),n.d(t,"prepareSplitSize",(function(){return o}));var s=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");function o(e,t,n=0){let o=[];if("number"==typeof t)Object(s.assert)(e.shape[n]%t==0,(()=>"Number of splits must evenly divide the axis.")),o=new Array(t).fill(e.shape[n]/t);else{const r=t.reduce(((e,t)=>(-1===t&&(e+=1),e)),0);Object(s.assert)(r<=1,(()=>"There should be only one negative value in split array."));const i=t.indexOf(-1);if(-1!==i){const s=t.reduce(((e,t)=>t>0?e+t:e));t[i]=e.shape[n]-s}Object(s.assert)(e.shape[n]===t.reduce(((e,t)=>e+t)),(()=>"The sum of sizes must match the size of the axis dimension.")),o=t}return o}},"./node_modules/@tensorflow/tfjs-core/dist/ops/sqrt.js":
+/*!*************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/sqrt.js ***!
+ \*************************************************************/
+/*! exports provided: sqrt */function(e,t,n){"use strict";n.r(t),n.d(t,"sqrt",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({sqrt_:
+/**
+ * @license
+ * Copyright 2018 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){const t={x:Object(r.convertToTensor)(e,"x","sqrt")};return s.ENGINE.runKernel(o.Sqrt,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/square.js":
+/*!***************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/square.js ***!
+ \***************************************************************/
+/*! exports provided: square */function(e,t,n){"use strict";n.r(t),n.d(t,"square",(function(){return i}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),r=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const i=Object(r.op)({square_:
+/**
+ * @license
+ * Copyright 2019 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){const t=Object(o.convertToTensor)(e,"x","square");return s.ENGINE.runKernel("Square",{x:t},{})}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/squared_difference.js":
+/*!***************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/squared_difference.js ***!
+ \***************************************************************************/
+/*! exports provided: squaredDifference */function(e,t,n){"use strict";n.r(t),n.d(t,"squaredDifference",(function(){return d}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util.js"),i=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),a=n(/*! ./broadcast_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/broadcast_util.js"),u=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const d=Object(u.op)({squaredDifference_:
+/**
+ * @license
+ * Copyright 2020 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,t){let n=Object(i.convertToTensor)(e,"a","squaredDifference"),u=Object(i.convertToTensor)(t,"b","squaredDifference");[n,u]=Object(r.makeTypesMatch)(n,u),Object(a.assertAndGetBroadcastShape)(n.shape,u.shape);const d={a:n,b:u};return s.ENGINE.runKernel(o.SquaredDifference,d,{})}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/squeeze.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/squeeze.js ***!
+ \****************************************************************/
+/*! exports provided: squeeze */function(e,t,n){"use strict";n.r(t),n.d(t,"squeeze",(function(){return a}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),i=n(/*! ./reshape */"./node_modules/@tensorflow/tfjs-core/dist/ops/reshape.js");const a=Object(r.op)({squeeze_:
+/**
+ * @license
+ * Copyright 2020 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,t){const n=Object(s.convertToTensor)(e,"x","squeeze");return Object(i.reshape)(n,Object(o.squeezeShape)(n.shape,t).newShape)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/stack.js":
+/*!**************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/stack.js ***!
+ \**************************************************************/
+/*! exports provided: stack */function(e,t,n){"use strict";n.r(t),n.d(t,"stack",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({stack_:
+/**
+ * @license
+ * Copyright 2020 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,t=0){const n=Object(r.convertToTensorArray)(e,"tensors","stack","string_or_numeric");i.assert(n.length>=1,(()=>"Pass at least one tensor to tf.stack")),n.length>0&&i.assert(t<=n[0].rank,(()=>"Axis must be <= rank of the tensor"));const a=n,u={axis:t};return s.ENGINE.runKernel(o.Pack,a,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/step.js":
+/*!*************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/step.js ***!
+ \*************************************************************/
+/*! exports provided: step */function(e,t,n){"use strict";n.r(t),n.d(t,"step",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({step_:
+/**
+ * @license
+ * Copyright 2018 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,t=0){const n={x:Object(r.convertToTensor)(e,"x","step")},i={alpha:t};return s.ENGINE.runKernel(o.Step,n,i)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/strided_slice.js":
+/*!**********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/strided_slice.js ***!
+ \**********************************************************************/
+/*! exports provided: stridedSlice */function(e,t,n){"use strict";n.r(t),n.d(t,"stridedSlice",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({stridedSlice_:
+/**
+ * @license
+ * Copyright 2018 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,t,n,i,a=0,u=0,d=0,l=0,c=0){const f={x:Object(r.convertToTensor)(e,"x","stridedSlice","string_or_numeric")},p={begin:t,end:n,strides:i,beginMask:a,endMask:u,ellipsisMask:d,newAxisMask:l,shrinkAxisMask:c};return s.ENGINE.runKernel(o.StridedSlice,f,p)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/string/string_n_grams.js":
+/*!******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/string/string_n_grams.js ***!
+ \******************************************************************************/
+/*! exports provided: stringNGrams */function(e,t,n){"use strict";n.r(t),n.d(t,"stringNGrams",(function(){return a}));var s=n(/*! ../../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({stringNGrams_:
+/**
+ * @license
+ * Copyright 2021 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,t,n,i,a,u,d,l){const c=Object(r.convertToTensor)(e,"data","stringNGrams","string");if("string"!==c.dtype)throw new Error("Data must be of datatype string");if(1!==c.shape.length)throw new Error(`Data must be a vector, saw: ${c.shape}`);const f=Object(r.convertToTensor)(t,"dataSplits","stringNGrams");if("int32"!==f.dtype)throw new Error("Data splits must be of datatype int32");const p={separator:n,nGramWidths:i,leftPad:a,rightPad:u,padWidth:d,preserveShortSequences:l},m={data:c,dataSplits:f},h=s.ENGINE.runKernel(o.StringNGrams,m,p);return{nGrams:h[0],nGramsSplits:h[1]}}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/string/string_split.js":
+/*!****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/string/string_split.js ***!
+ \****************************************************************************/
+/*! exports provided: stringSplit */function(e,t,n){"use strict";n.r(t),n.d(t,"stringSplit",(function(){return a}));var s=n(/*! ../../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({stringSplit_:
+/**
+ * @license
+ * Copyright 2021 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,t,n=!0){const i=Object(r.convertToTensor)(e,"input","stringSplit","string"),a=Object(r.convertToTensor)(t,"delimiter","stringSplit","string");if(1!==i.rank)throw new Error(`Input should be Tensor1D but received shape ${i.shape}`);if(0!==a.rank)throw new Error(`Delimiter should be a scalar but received shape ${a.shape}`);const u={skipEmpty:n},d={input:i,delimiter:a},l=s.ENGINE.runKernel(o.StringSplit,d,u);return{indices:l[0],values:l[1],shape:l[2]}}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/string/string_to_hash_bucket_fast.js":
+/*!******************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/string/string_to_hash_bucket_fast.js ***!
+ \******************************************************************************************/
+/*! exports provided: stringToHashBucketFast */function(e,t,n){"use strict";n.r(t),n.d(t,"stringToHashBucketFast",(function(){return a}));var s=n(/*! ../../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({stringToHashBucketFast_:
+/**
+ * @license
+ * Copyright 2021 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,t){const n=Object(r.convertToTensor)(e,"input","stringToHashBucketFast","string"),i={numBuckets:t};if(t<=0)throw new Error("Number of buckets must be at least 1");const a={input:n};return s.ENGINE.runKernel(o.StringToHashBucketFast,a,i)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/sub.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/sub.js ***!
+ \************************************************************/
+/*! exports provided: sub */function(e,t,n){"use strict";n.r(t),n.d(t,"sub",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util.js"),i=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({sub_:
+/**
+ * @license
+ * Copyright 2020 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,t){let n=Object(i.convertToTensor)(e,"a","sub"),a=Object(i.convertToTensor)(t,"b","sub");[n,a]=Object(r.makeTypesMatch)(n,a);const u={a:n,b:a};return s.ENGINE.runKernel(o.Sub,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/sum.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/sum.js ***!
+ \************************************************************/
+/*! exports provided: sum */function(e,t,n){"use strict";n.r(t),n.d(t,"sum",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./cast */"./node_modules/@tensorflow/tfjs-core/dist/ops/cast.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({sum_:
+/**
+ * @license
+ * Copyright 2018 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,t=null,n=!1){let a=Object(r.convertToTensor)(e,"x","sum");"bool"===a.dtype&&(a=Object(i.cast)(a,"int32"));const u={x:a},d={axis:t,keepDims:n};return s.ENGINE.runKernel(o.Sum,u,d)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/tan.js":
+/*!************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/tan.js ***!
+ \************************************************************/
+/*! exports provided: tan */function(e,t,n){"use strict";n.r(t),n.d(t,"tan",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({tan_:
+/**
+ * @license
+ * Copyright 2018 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){const t={x:Object(r.convertToTensor)(e,"x","tan")};return s.ENGINE.runKernel(o.Tan,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/tanh.js":
+/*!*************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/tanh.js ***!
+ \*************************************************************/
+/*! exports provided: tanh */function(e,t,n){"use strict";n.r(t),n.d(t,"tanh",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({tanh_:
+/**
+ * @license
+ * Copyright 2018 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){const t={x:Object(r.convertToTensor)(e,"x","tanh")};return s.ENGINE.runKernel(o.Tanh,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor.js":
+/*!***************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/tensor.js ***!
+ \***************************************************************/
+/*! exports provided: tensor */function(e,t,n){"use strict";n.r(t),n.d(t,"tensor",(function(){return r}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ./tensor_ops_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor_ops_util.js");
+/**
+ * @license
+ * Copyright 2018 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 r(e,t,n){const r=Object(s.inferShape)(e,n);return Object(o.makeTensor)(e,t,r,n)}},"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor1d.js":
+/*!*****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/tensor1d.js ***!
+ \*****************************************************************/
+/*! exports provided: tensor1d */function(e,t,n){"use strict";n.r(t),n.d(t,"tensor1d",(function(){return i}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./tensor_ops_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor_ops_util.js");
+/**
+ * @license
+ * Copyright 2018 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 i(e,t){Object(o.assertNonNull)(e);const n=Object(s.inferShape)(e,t);if(1!==n.length)throw new Error("tensor1d() requires values to be a flat/TypedArray");return Object(r.makeTensor)(e,null,n,t)}},"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor2d.js":
+/*!*****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/tensor2d.js ***!
+ \*****************************************************************/
+/*! exports provided: tensor2d */function(e,t,n){"use strict";n.r(t),n.d(t,"tensor2d",(function(){return i}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./tensor_ops_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor_ops_util.js");
+/**
+ * @license
+ * Copyright 2018 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 i(e,t,n){if(Object(o.assertNonNull)(e),null!=t&&2!==t.length)throw new Error("tensor2d() requires shape to have two numbers");const i=Object(s.inferShape)(e,n);if(2!==i.length&&1!==i.length)throw new Error("tensor2d() requires values to be number[][] or flat/TypedArray");if(1===i.length&&null==t)throw new Error("tensor2d() requires shape to be provided when `values` are a flat/TypedArray");return Object(r.makeTensor)(e,t,i,n)}},"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor3d.js":
+/*!*****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/tensor3d.js ***!
+ \*****************************************************************/
+/*! exports provided: tensor3d */function(e,t,n){"use strict";n.r(t),n.d(t,"tensor3d",(function(){return i}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./tensor_ops_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor_ops_util.js");
+/**
+ * @license
+ * Copyright 2018 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 i(e,t,n){if(Object(o.assertNonNull)(e),null!=t&&3!==t.length)throw new Error("tensor3d() requires shape to have three numbers");const i=Object(s.inferShape)(e,n);if(3!==i.length&&1!==i.length)throw new Error("tensor3d() requires values to be number[][][] or flat/TypedArray");if(1===i.length&&null==t)throw new Error("tensor3d() requires shape to be provided when `values` are a flat array");return Object(r.makeTensor)(e,t,i,n)}},"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor4d.js":
+/*!*****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/tensor4d.js ***!
+ \*****************************************************************/
+/*! exports provided: tensor4d */function(e,t,n){"use strict";n.r(t),n.d(t,"tensor4d",(function(){return i}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./tensor_ops_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor_ops_util.js");
+/**
+ * @license
+ * Copyright 2018 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 i(e,t,n){if(Object(o.assertNonNull)(e),null!=t&&4!==t.length)throw new Error("tensor4d() requires shape to have four numbers");const i=Object(s.inferShape)(e,n);if(4!==i.length&&1!==i.length)throw new Error("tensor4d() requires values to be number[][][][] or flat/TypedArray");if(1===i.length&&null==t)throw new Error("tensor4d() requires shape to be provided when `values` are a flat array");return Object(r.makeTensor)(e,t,i,n)}},"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor5d.js":
+/*!*****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/tensor5d.js ***!
+ \*****************************************************************/
+/*! exports provided: tensor5d */function(e,t,n){"use strict";n.r(t),n.d(t,"tensor5d",(function(){return i}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./tensor_ops_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor_ops_util.js");
+/**
+ * @license
+ * Copyright 2018 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 i(e,t,n){if(Object(o.assertNonNull)(e),null!=t&&5!==t.length)throw new Error("tensor5d() requires shape to have five numbers");const i=Object(s.inferShape)(e,n);if(5!==i.length&&1!==i.length)throw new Error("tensor5d() requires values to be number[][][][][] or flat/TypedArray");if(1===i.length&&null==t)throw new Error("tensor5d() requires shape to be provided when `values` are a flat array");return Object(r.makeTensor)(e,t,i,n)}},"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor6d.js":
+/*!*****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/tensor6d.js ***!
+ \*****************************************************************/
+/*! exports provided: tensor6d */function(e,t,n){"use strict";n.r(t),n.d(t,"tensor6d",(function(){return i}));var s=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./tensor_ops_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor_ops_util.js");
+/**
+ * @license
+ * Copyright 2018 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 i(e,t,n){if(Object(o.assertNonNull)(e),null!=t&&6!==t.length)throw new Error("tensor6d() requires shape to have six numbers");const i=Object(s.inferShape)(e,n);if(6!==i.length&&1!==i.length)throw new Error("tensor6d() requires values to be number[][][][][][] or flat/TypedArray");if(1===i.length&&null==t)throw new Error("tensor6d() requires shape to be provided when `values` are a flat array");return t=t||i,Object(r.makeTensor)(e,t,i,n)}},"./node_modules/@tensorflow/tfjs-core/dist/ops/tensor_ops_util.js":
+/*!************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/tensor_ops_util.js ***!
+ \************************************************************************/
+/*! exports provided: makeTensor */function(e,t,n){"use strict";n.r(t),n.d(t,"makeTensor",(function(){return r}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");
+/**
+ * @license
+ * Copyright 2018 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 r(e,t,n,r){if(null==r&&(r=Object(o.inferDtype)(e)),"complex64"===r)throw new Error("Cannot construct a complex64 tensor directly. Please use tf.complex(real, imag).");if(!Object(o.isTypedArray)(e)&&!Array.isArray(e)&&"number"!=typeof e&&"boolean"!=typeof e&&"string"!=typeof e)throw new Error("values passed to tensor(values) must be a number/boolean/string or an array of numbers/booleans/strings, or a TypedArray");if(null!=t){Object(o.assertNonNegativeIntegerDimensions)(t);const e=Object(o.sizeFromShape)(t),s=Object(o.sizeFromShape)(n);Object(o.assert)(e===s,(()=>`Based on the provided shape, [${t}], the tensor should have ${e} values but has ${s}`));for(let e=0;e`Error creating a new Tensor. Inferred shape (${n}) does not match the provided shape (${t}). `))}}return Object(o.isTypedArray)(e)||Array.isArray(e)||(e=[e]),t=t||n,e="string"!==r?Object(o.toTypedArray)(e,r):Object(o.flatten)(e,[],!0),s.ENGINE.makeTensor(e,t,r)}},"./node_modules/@tensorflow/tfjs-core/dist/ops/tile.js":
+/*!*************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/tile.js ***!
+ \*************************************************************/
+/*! exports provided: tile */function(e,t,n){"use strict";n.r(t),n.d(t,"tile",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({tile_:
+/**
+ * @license
+ * Copyright 2020 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,t){const n=Object(r.convertToTensor)(e,"x","tile","string_or_numeric");i.assert(n.rank===t.length,(()=>`Error in transpose: rank of input ${n.rank} must match length of reps ${t}.`));const a={x:n},u={reps:t};return s.ENGINE.runKernel(o.Tile,a,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/topk.js":
+/*!*************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/topk.js ***!
+ \*************************************************************/
+/*! exports provided: topk */function(e,t,n){"use strict";n.r(t),n.d(t,"topk",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({topk_:
+/**
+ * @license
+ * Copyright 2018 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,t=1,n=!0){const i=Object(r.convertToTensor)(e,"x","topk");if(0===i.rank)throw new Error("topk() expects the input to be of rank 1 or higher");const a=i.shape[i.shape.length-1];if(t<0)throw new Error(`'k' passed to topk() must be >= 0 but got ${t}`);if(t>a)throw new Error(`'k' passed to topk() must be <= the last dimension (${a}) but got ${t}`);const u={x:i},d={k:t,sorted:n},[l,c]=s.ENGINE.runKernel(o.TopK,u,d);return{values:l,indices:c}}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/transpose.js":
+/*!******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/transpose.js ***!
+ \******************************************************************/
+/*! exports provided: transpose */function(e,t,n){"use strict";n.r(t),n.d(t,"transpose",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({transpose_:
+/**
+ * @license
+ * Copyright 2018 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,t){const n=Object(r.convertToTensor)(e,"x","transpose");if(null==t&&(t=n.shape.map(((e,t)=>t)).reverse()),i.assert(n.rank===t.length,(()=>`Error in transpose: rank of input ${n.rank} must match length of perm ${t}.`)),t.forEach((e=>{i.assert(e>=0&&e"All entries in 'perm' must be between 0 and "+(n.rank-1)+` but got ${t}`))})),n.rank<=1)return n.clone();const a={x:n},u={perm:t};return s.ENGINE.runKernel(o.Transpose,a,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/truncated_normal.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/truncated_normal.js ***!
+ \*************************************************************************/
+/*! exports provided: truncatedNormal */function(e,t,n){"use strict";n.r(t),n.d(t,"truncatedNormal",(function(){return i}));var s=n(/*! ./buffer */"./node_modules/@tensorflow/tfjs-core/dist/ops/buffer.js"),o=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js"),r=n(/*! ./rand_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/rand_util.js");const i=Object(o.op)({truncatedNormal_:
+/**
+ * @license
+ * Copyright 2020 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,t=0,n=1,o,i){if(null!=o&&"bool"===o)throw new Error("Unsupported data type $ { dtype }");const a=new r.MPRandGauss(t,n,o,!0,i),u=Object(s.buffer)(e,o);for(let e=0;e0,(()=>"The input tensor must be at least 1D"));const a={x:n},u={axis:t},[d,l]=s.ENGINE.runKernel(o.Unique,a,u);return{values:d,indices:l}}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/unsorted_segment_sum.js":
+/*!*****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/unsorted_segment_sum.js ***!
+ \*****************************************************************************/
+/*! exports provided: unsortedSegmentSum */function(e,t,n){"use strict";n.r(t),n.d(t,"unsortedSegmentSum",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({unsortedSegmentSum_:
+/**
+ * @license
+ * Copyright 2020 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,t,n){const a=Object(r.convertToTensor)(e,"x","unsortedSegmentSum"),u=Object(r.convertToTensor)(t,"segmentIds","unsortedSegmentSum","int32");Object(i.assert)(Object(i.isInt)(n),(()=>"numSegments must be of dtype int"));const d={x:a,segmentIds:u},l={numSegments:n};return s.ENGINE.runKernel(o.UnsortedSegmentSum,d,l)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/unstack.js":
+/*!****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/unstack.js ***!
+ \****************************************************************/
+/*! exports provided: unstack */function(e,t,n){"use strict";n.r(t),n.d(t,"unstack",(function(){return u}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),a=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const u=Object(a.op)({unstack_:
+/**
+ * @license
+ * Copyright 2020 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,t=0){const n=Object(r.convertToTensor)(e,"x","unstack","string_or_numeric");i.assert(t>=-n.shape.length&&t`Axis = ${t} is not in [-${n.shape.length}, ${n.shape.length})`));const a={value:n},u={axis:t};return s.ENGINE.runKernel(o.Unpack,a,u)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/variable.js":
+/*!*****************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/variable.js ***!
+ \*****************************************************************/
+/*! exports provided: variable */function(e,t,n){"use strict";n.r(t),n.d(t,"variable",(function(){return o}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js");
+/**
+ * @license
+ * Copyright 2018 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 o(e,t=!0,n,o){return s.ENGINE.makeVariable(e,t,n,o)}},"./node_modules/@tensorflow/tfjs-core/dist/ops/where.js":
+/*!**************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/where.js ***!
+ \**************************************************************/
+/*! exports provided: where */function(e,t,n){"use strict";n.r(t),n.d(t,"where",(function(){return d}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./broadcast_to */"./node_modules/@tensorflow/tfjs-core/dist/ops/broadcast_to.js"),a=n(/*! ./broadcast_util */"./node_modules/@tensorflow/tfjs-core/dist/ops/broadcast_util.js"),u=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const d=Object(u.op)({where_:
+/**
+ * @license
+ * Copyright 2020 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,t,n){const u=Object(r.convertToTensor)(t,"a","where"),d=Object(r.convertToTensor)(n,"b","where"),l=Object(r.convertToTensor)(e,"condition","where","bool"),c=Object(a.assertAndGetBroadcastShape)(Object(a.assertAndGetBroadcastShape)(l.shape,u.shape),d.shape),f={condition:Object(i.broadcastTo)(l,c),t:Object(i.broadcastTo)(u,c),e:Object(i.broadcastTo)(d,c)};return s.ENGINE.runKernel(o.Select,f)}})},"./node_modules/@tensorflow/tfjs-core/dist/ops/where_async.js":
+/*!********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/where_async.js ***!
+ \********************************************************************/
+/*! exports provided: whereAsync */function(e,t,n){"use strict";n.r(t),n.d(t,"whereAsync",(function(){return r}));var s=n(/*! ../backends/where_impl */"./node_modules/@tensorflow/tfjs-core/dist/backends/where_impl.js"),o=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js");const r=
+/**
+ * @license
+ * Copyright 2020 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.
+ * =============================================================================
+ */
+async function(e){const t=Object(o.convertToTensor)(e,"condition","whereAsync","bool"),n=await t.data(),r=Object(s.whereImpl)(t.shape,n);return e!==t&&t.dispose(),r}},"./node_modules/@tensorflow/tfjs-core/dist/ops/zeros.js":
+/*!**************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/zeros.js ***!
+ \**************************************************************/
+/*! exports provided: zeros */function(e,t,n){"use strict";n.r(t),n.d(t,"zeros",(function(){return i}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../util */"./node_modules/@tensorflow/tfjs-core/dist/util.js"),r=n(/*! ./complex */"./node_modules/@tensorflow/tfjs-core/dist/ops/complex.js");
+/**
+ * @license
+ * Copyright 2018 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 i(e,t="float32"){if("complex64"===t){const t=i(e,"float32"),n=i(e,"float32");return Object(r.complex)(t,n)}const n=Object(o.makeZerosTypedArray)(Object(o.sizeFromShape)(e),t);return s.ENGINE.makeTensor(n,e,t)}},"./node_modules/@tensorflow/tfjs-core/dist/ops/zeros_like.js":
+/*!*******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/ops/zeros_like.js ***!
+ \*******************************************************************/
+/*! exports provided: zerosLike */function(e,t,n){"use strict";n.r(t),n.d(t,"zerosLike",(function(){return a}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../kernel_names */"./node_modules/@tensorflow/tfjs-core/dist/kernel_names.js"),r=n(/*! ../tensor_util_env */"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js"),i=n(/*! ./operation */"./node_modules/@tensorflow/tfjs-core/dist/ops/operation.js");const a=Object(i.op)({zerosLike_:
+/**
+ * @license
+ * Copyright 2018 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){const t={x:Object(r.convertToTensor)(e,"x","zerosLike")};return s.ENGINE.runKernel(o.ZerosLike,t)}})},"./node_modules/@tensorflow/tfjs-core/dist/optimizers/adadelta_optimizer.js":
+/*!**********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/optimizers/adadelta_optimizer.js ***!
+ \**********************************************************************************/
+/*! exports provided: AdadeltaOptimizer */function(e,t,n){"use strict";n.r(t),n.d(t,"AdadeltaOptimizer",(function(){return p}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../globals */"./node_modules/@tensorflow/tfjs-core/dist/globals.js"),r=n(/*! ../ops/add */"./node_modules/@tensorflow/tfjs-core/dist/ops/add.js"),i=n(/*! ../ops/div */"./node_modules/@tensorflow/tfjs-core/dist/ops/div.js"),a=n(/*! ../ops/mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),u=n(/*! ../ops/ops */"./node_modules/@tensorflow/tfjs-core/dist/ops/ops.js"),d=n(/*! ../ops/square */"./node_modules/@tensorflow/tfjs-core/dist/ops/square.js"),l=n(/*! ../ops/zeros_like */"./node_modules/@tensorflow/tfjs-core/dist/ops/zeros_like.js"),c=n(/*! ../serialization */"./node_modules/@tensorflow/tfjs-core/dist/serialization.js"),f=n(/*! ./optimizer */"./node_modules/@tensorflow/tfjs-core/dist/optimizers/optimizer.js");
+/**
+ * @license
+ * Copyright 2018 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.
+ * =============================================================================
+ */
+class p extends f.Optimizer{constructor(e,t,n=null){super(),this.learningRate=e,this.rho=t,this.epsilon=n,this.accumulatedGrads=[],this.accumulatedUpdates=[],null==n&&(this.epsilon=s.ENGINE.backend.epsilon())}applyGradients(e){(Array.isArray(e)?e.map((e=>e.name)):Object.keys(e)).forEach(((t,n)=>{const c=s.ENGINE.registeredVariables[t];null==this.accumulatedGrads[n]&&(this.accumulatedGrads[n]={originalName:`${t}/accum_grad`,variable:Object(o.tidy)((()=>Object(l.zerosLike)(c).variable(false)))}),null==this.accumulatedUpdates[n]&&(this.accumulatedUpdates[n]={originalName:`${t}/accum_var`,variable:Object(o.tidy)((()=>Object(l.zerosLike)(c).variable(false)))});const f=Array.isArray(e)?e[n].tensor:e[t];if(null==f)return;const p=this.accumulatedGrads[n].variable,m=this.accumulatedUpdates[n].variable;Object(o.tidy)((()=>{const e=Object(r.add)(Object(a.mul)(p,this.rho),Object(a.mul)(Object(d.square)(f),1-this.rho)),t=Object(a.mul)(Object(i.div)(Object(u.sqrt)(Object(r.add)(m,this.epsilon)),Object(u.sqrt)(Object(r.add)(p,this.epsilon))),f),n=Object(r.add)(Object(a.mul)(m,this.rho),Object(a.mul)(Object(d.square)(t),1-this.rho));p.assign(e),m.assign(n);const s=Object(r.add)(Object(a.mul)(t,-this.learningRate),c);c.assign(s)}))})),this.incrementIterations()}dispose(){null!=this.accumulatedUpdates&&(Object(o.dispose)(this.accumulatedGrads.map((e=>e.variable))),Object(o.dispose)(this.accumulatedUpdates.map((e=>e.variable))))}async getWeights(){const e=[...this.accumulatedGrads,...this.accumulatedUpdates];return[await this.saveIterations()].concat(e.map((e=>({name:e.originalName,tensor:e.variable}))))}async setWeights(e){const t=(e=await this.extractIterations(e)).length/2;this.accumulatedGrads=e.slice(0,t).map((e=>({originalName:e.name,variable:e.tensor.variable(false)}))),this.accumulatedUpdates=e.slice(t,2*t).map((e=>({originalName:e.name,variable:e.tensor.variable(false)})))}getConfig(){return{learningRate:this.learningRate,rho:this.rho,epsilon:this.epsilon}}static fromConfig(e,t){return new e(t.learningRate,t.rho,t.epsilon)}}p.className="Adadelta",Object(c.registerClass)(p)},"./node_modules/@tensorflow/tfjs-core/dist/optimizers/adagrad_optimizer.js":
+/*!*********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/optimizers/adagrad_optimizer.js ***!
+ \*********************************************************************************/
+/*! exports provided: AdagradOptimizer */function(e,t,n){"use strict";n.r(t),n.d(t,"AdagradOptimizer",(function(){return p}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../globals */"./node_modules/@tensorflow/tfjs-core/dist/globals.js"),r=n(/*! ../ops/add */"./node_modules/@tensorflow/tfjs-core/dist/ops/add.js"),i=n(/*! ../ops/div */"./node_modules/@tensorflow/tfjs-core/dist/ops/div.js"),a=n(/*! ../ops/fill */"./node_modules/@tensorflow/tfjs-core/dist/ops/fill.js"),u=n(/*! ../ops/mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),d=n(/*! ../ops/sqrt */"./node_modules/@tensorflow/tfjs-core/dist/ops/sqrt.js"),l=n(/*! ../ops/square */"./node_modules/@tensorflow/tfjs-core/dist/ops/square.js"),c=n(/*! ../serialization */"./node_modules/@tensorflow/tfjs-core/dist/serialization.js"),f=n(/*! ./optimizer */"./node_modules/@tensorflow/tfjs-core/dist/optimizers/optimizer.js");
+/**
+ * @license
+ * Copyright 2018 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.
+ * =============================================================================
+ */
+class p extends f.Optimizer{constructor(e,t=.1){super(),this.learningRate=e,this.initialAccumulatorValue=t,this.accumulatedGrads=[]}applyGradients(e){(Array.isArray(e)?e.map((e=>e.name)):Object.keys(e)).forEach(((t,n)=>{const c=s.ENGINE.registeredVariables[t];if(null==this.accumulatedGrads[n]){const e=!1;this.accumulatedGrads[n]={originalName:`${t}/accumulator`,variable:Object(o.tidy)((()=>Object(a.fill)(c.shape,this.initialAccumulatorValue).variable(e)))}}const f=Array.isArray(e)?e[n].tensor:e[t];if(null==f)return;const p=this.accumulatedGrads[n].variable;Object(o.tidy)((()=>{const e=Object(r.add)(p,Object(l.square)(f));p.assign(e);const t=Object(r.add)(Object(u.mul)(Object(i.div)(f,Object(d.sqrt)(Object(r.add)(e,s.ENGINE.backend.epsilon()))),-this.learningRate),c);c.assign(t)}))})),this.incrementIterations()}dispose(){null!=this.accumulatedGrads&&Object(o.dispose)(this.accumulatedGrads.map((e=>e.variable)))}async getWeights(){return[await this.saveIterations()].concat(this.accumulatedGrads.map((e=>({name:e.originalName,tensor:e.variable}))))}async setWeights(e){e=await this.extractIterations(e);this.accumulatedGrads=e.map((e=>({originalName:e.name,variable:e.tensor.variable(false)})))}getConfig(){return{learningRate:this.learningRate,initialAccumulatorValue:this.initialAccumulatorValue}}static fromConfig(e,t){return new e(t.learningRate,t.initialAccumulatorValue)}}p.className="Adagrad",Object(c.registerClass)(p)},"./node_modules/@tensorflow/tfjs-core/dist/optimizers/adam_optimizer.js":
+/*!******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/optimizers/adam_optimizer.js ***!
+ \******************************************************************************/
+/*! exports provided: AdamOptimizer */function(e,t,n){"use strict";n.r(t),n.d(t,"AdamOptimizer",(function(){return b}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../globals */"./node_modules/@tensorflow/tfjs-core/dist/globals.js"),r=n(/*! ../ops/add */"./node_modules/@tensorflow/tfjs-core/dist/ops/add.js"),i=n(/*! ../ops/div */"./node_modules/@tensorflow/tfjs-core/dist/ops/div.js"),a=n(/*! ../ops/mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),u=n(/*! ../ops/pow */"./node_modules/@tensorflow/tfjs-core/dist/ops/pow.js"),d=n(/*! ../ops/scalar */"./node_modules/@tensorflow/tfjs-core/dist/ops/scalar.js"),l=n(/*! ../ops/sqrt */"./node_modules/@tensorflow/tfjs-core/dist/ops/sqrt.js"),c=n(/*! ../ops/square */"./node_modules/@tensorflow/tfjs-core/dist/ops/square.js"),f=n(/*! ../ops/sub */"./node_modules/@tensorflow/tfjs-core/dist/ops/sub.js"),p=n(/*! ../ops/zeros_like */"./node_modules/@tensorflow/tfjs-core/dist/ops/zeros_like.js"),m=n(/*! ../serialization */"./node_modules/@tensorflow/tfjs-core/dist/serialization.js"),h=n(/*! ./optimizer */"./node_modules/@tensorflow/tfjs-core/dist/optimizers/optimizer.js");
+/**
+ * @license
+ * Copyright 2018 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.
+ * =============================================================================
+ */
+class b extends h.Optimizer{constructor(e,t,n,r=null){super(),this.learningRate=e,this.beta1=t,this.beta2=n,this.epsilon=r,this.accumulatedFirstMoment=[],this.accumulatedSecondMoment=[],Object(o.tidy)((()=>{this.accBeta1=Object(d.scalar)(t).variable(),this.accBeta2=Object(d.scalar)(n).variable()})),null==r&&(this.epsilon=s.ENGINE.backend.epsilon())}applyGradients(e){const t=Array.isArray(e)?e.map((e=>e.name)):Object.keys(e);Object(o.tidy)((()=>{const n=Object(f.sub)(1,this.accBeta1),u=Object(f.sub)(1,this.accBeta2);t.forEach(((t,d)=>{const f=s.ENGINE.registeredVariables[t];null==this.accumulatedFirstMoment[d]&&(this.accumulatedFirstMoment[d]={originalName:`${t}/m`,variable:Object(o.tidy)((()=>Object(p.zerosLike)(f).variable(false)))}),null==this.accumulatedSecondMoment[d]&&(this.accumulatedSecondMoment[d]={originalName:`${t}/v`,variable:Object(o.tidy)((()=>Object(p.zerosLike)(f).variable(false)))});const m=Array.isArray(e)?e[d].tensor:e[t];if(null==m)return;const h=this.accumulatedFirstMoment[d].variable,b=this.accumulatedSecondMoment[d].variable,j=Object(r.add)(Object(a.mul)(h,this.beta1),Object(a.mul)(m,1-this.beta1)),g=Object(r.add)(Object(a.mul)(b,this.beta2),Object(a.mul)(Object(c.square)(m),1-this.beta2)),w=Object(i.div)(j,n),_=Object(i.div)(g,u);h.assign(j),b.assign(g);const k=Object(r.add)(Object(a.mul)(Object(i.div)(w,Object(r.add)(Object(l.sqrt)(_),this.epsilon)),-this.learningRate),f);f.assign(k)})),this.accBeta1.assign(Object(a.mul)(this.accBeta1,this.beta1)),this.accBeta2.assign(Object(a.mul)(this.accBeta2,this.beta2))})),this.incrementIterations()}dispose(){this.accBeta1.dispose(),this.accBeta2.dispose(),null!=this.accumulatedFirstMoment&&Object(o.dispose)(this.accumulatedFirstMoment.map((e=>e.variable))),null!=this.accumulatedSecondMoment&&Object(o.dispose)(this.accumulatedSecondMoment.map((e=>e.variable)))}async getWeights(){const e=[...this.accumulatedFirstMoment,...this.accumulatedSecondMoment];return[await this.saveIterations()].concat(e.map((e=>({name:e.originalName,tensor:e.variable}))))}async setWeights(e){e=await this.extractIterations(e),Object(o.tidy)((()=>{this.accBeta1.assign(Object(u.pow)(this.beta1,this.iterations_+1)),this.accBeta2.assign(Object(u.pow)(this.beta2,this.iterations_+1))}));const t=e.length/2;this.accumulatedFirstMoment=e.slice(0,t).map((e=>({originalName:e.name,variable:e.tensor.variable(false)}))),this.accumulatedSecondMoment=e.slice(t,2*t).map((e=>({originalName:e.name,variable:e.tensor.variable(false)})))}getConfig(){return{learningRate:this.learningRate,beta1:this.beta1,beta2:this.beta2,epsilon:this.epsilon}}static fromConfig(e,t){return new e(t.learningRate,t.beta1,t.beta2,t.epsilon)}}b.className="Adam",Object(m.registerClass)(b)},"./node_modules/@tensorflow/tfjs-core/dist/optimizers/adamax_optimizer.js":
+/*!********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/optimizers/adamax_optimizer.js ***!
+ \********************************************************************************/
+/*! exports provided: AdamaxOptimizer */function(e,t,n){"use strict";n.r(t),n.d(t,"AdamaxOptimizer",(function(){return h}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../globals */"./node_modules/@tensorflow/tfjs-core/dist/globals.js"),r=n(/*! ../ops/abs */"./node_modules/@tensorflow/tfjs-core/dist/ops/abs.js"),i=n(/*! ../ops/add */"./node_modules/@tensorflow/tfjs-core/dist/ops/add.js"),a=n(/*! ../ops/div */"./node_modules/@tensorflow/tfjs-core/dist/ops/div.js"),u=n(/*! ../ops/maximum */"./node_modules/@tensorflow/tfjs-core/dist/ops/maximum.js"),d=n(/*! ../ops/mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),l=n(/*! ../ops/scalar */"./node_modules/@tensorflow/tfjs-core/dist/ops/scalar.js"),c=n(/*! ../ops/sub */"./node_modules/@tensorflow/tfjs-core/dist/ops/sub.js"),f=n(/*! ../ops/zeros_like */"./node_modules/@tensorflow/tfjs-core/dist/ops/zeros_like.js"),p=n(/*! ../serialization */"./node_modules/@tensorflow/tfjs-core/dist/serialization.js"),m=n(/*! ./optimizer */"./node_modules/@tensorflow/tfjs-core/dist/optimizers/optimizer.js");
+/**
+ * @license
+ * Copyright 2018 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.
+ * =============================================================================
+ */
+class h extends m.Optimizer{constructor(e,t,n,r=null,i=0){super(),this.learningRate=e,this.beta1=t,this.beta2=n,this.epsilon=r,this.decay=i,this.accumulatedFirstMoment=[],this.accumulatedWeightedInfNorm=[],Object(o.tidy)((()=>{this.iteration=Object(l.scalar)(0).variable(),this.accBeta1=Object(l.scalar)(t).variable()})),null==r&&(this.epsilon=s.ENGINE.backend.epsilon())}applyGradients(e){const t=Array.isArray(e)?e.map((e=>e.name)):Object.keys(e);Object(o.tidy)((()=>{const n=Object(c.sub)(1,this.accBeta1),o=Object(a.div)(-this.learningRate,Object(i.add)(Object(d.mul)(this.iteration,this.decay),1));t.forEach(((t,l)=>{const c=s.ENGINE.registeredVariables[t];null==this.accumulatedFirstMoment[l]&&(this.accumulatedFirstMoment[l]={originalName:`${t}/m`,variable:Object(f.zerosLike)(c).variable(false)}),null==this.accumulatedWeightedInfNorm[l]&&(this.accumulatedWeightedInfNorm[l]={originalName:`${t}/v`,variable:Object(f.zerosLike)(c).variable(false)});const p=Array.isArray(e)?e[l].tensor:e[t];if(null==p)return;const m=this.accumulatedFirstMoment[l].variable,h=this.accumulatedWeightedInfNorm[l].variable,b=Object(i.add)(Object(d.mul)(m,this.beta1),Object(d.mul)(p,1-this.beta1)),j=Object(d.mul)(h,this.beta2),g=Object(r.abs)(p),w=Object(u.maximum)(j,g);m.assign(b),h.assign(w);const _=Object(i.add)(Object(d.mul)(Object(a.div)(o,n),Object(a.div)(b,Object(i.add)(w,this.epsilon))),c);c.assign(_)})),this.iteration.assign(Object(i.add)(this.iteration,1)),this.accBeta1.assign(Object(d.mul)(this.accBeta1,this.beta1))})),this.incrementIterations()}dispose(){this.accBeta1.dispose(),this.iteration.dispose(),null!=this.accumulatedFirstMoment&&Object(o.dispose)(this.accumulatedFirstMoment.map((e=>e.variable))),null!=this.accumulatedWeightedInfNorm&&Object(o.dispose)(this.accumulatedWeightedInfNorm.map((e=>e.variable)))}async getWeights(){throw new Error("getWeights() is not implemented for Adamax yet.")}async setWeights(e){throw new Error("setWeights() is not implemented for Adamax yet.")}getConfig(){return{learningRate:this.learningRate,beta1:this.beta1,beta2:this.beta2,epsilon:this.epsilon,decay:this.decay}}static fromConfig(e,t){return new e(t.learningRate,t.beta1,t.beta2,t.epsilon,t.decay)}}h.className="Adamax",Object(p.registerClass)(h)},"./node_modules/@tensorflow/tfjs-core/dist/optimizers/momentum_optimizer.js":
+/*!**********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/optimizers/momentum_optimizer.js ***!
+ \**********************************************************************************/
+/*! exports provided: MomentumOptimizer */function(e,t,n){"use strict";n.r(t),n.d(t,"MomentumOptimizer",(function(){return c}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../globals */"./node_modules/@tensorflow/tfjs-core/dist/globals.js"),r=n(/*! ../ops/add */"./node_modules/@tensorflow/tfjs-core/dist/ops/add.js"),i=n(/*! ../ops/mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),a=n(/*! ../ops/scalar */"./node_modules/@tensorflow/tfjs-core/dist/ops/scalar.js"),u=n(/*! ../ops/zeros_like */"./node_modules/@tensorflow/tfjs-core/dist/ops/zeros_like.js"),d=n(/*! ../serialization */"./node_modules/@tensorflow/tfjs-core/dist/serialization.js"),l=n(/*! ./sgd_optimizer */"./node_modules/@tensorflow/tfjs-core/dist/optimizers/sgd_optimizer.js");
+/**
+ * @license
+ * Copyright 2018 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.
+ * =============================================================================
+ */
+class c extends l.SGDOptimizer{constructor(e,t,n=!1){super(e),this.learningRate=e,this.momentum=t,this.useNesterov=n,this.accumulations=[],this.m=Object(a.scalar)(this.momentum)}applyGradients(e){(Array.isArray(e)?e.map((e=>e.name)):Object.keys(e)).forEach(((t,n)=>{const a=s.ENGINE.registeredVariables[t];if(null==this.accumulations[n]){const e=!1;this.accumulations[n]={originalName:`${t}/momentum`,variable:Object(o.tidy)((()=>Object(u.zerosLike)(a).variable(e)))}}const d=this.accumulations[n].variable,l=Array.isArray(e)?e[n].tensor:e[t];null!=l&&Object(o.tidy)((()=>{let e;const t=Object(r.add)(Object(i.mul)(this.m,d),l);e=this.useNesterov?Object(r.add)(Object(i.mul)(this.c,Object(r.add)(l,Object(i.mul)(t,this.m))),a):Object(r.add)(Object(i.mul)(this.c,t),a),d.assign(t),a.assign(e)}))})),this.incrementIterations()}dispose(){this.m.dispose(),null!=this.accumulations&&Object(o.dispose)(this.accumulations.map((e=>e.variable)))}setMomentum(e){this.momentum=e}async getWeights(){return[await this.saveIterations()].concat(this.accumulations.map((e=>({name:e.originalName,tensor:e.variable}))))}async setWeights(e){e=await this.extractIterations(e);this.accumulations=e.map((e=>({originalName:e.name,variable:e.tensor.variable(false)})))}getConfig(){return{learningRate:this.learningRate,momentum:this.momentum,useNesterov:this.useNesterov}}static fromConfig(e,t){return new e(t.learningRate,t.momentum,t.useNesterov)}}c.className="Momentum",Object(d.registerClass)(c)},"./node_modules/@tensorflow/tfjs-core/dist/optimizers/optimizer.js":
+/*!*************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/optimizers/optimizer.js ***!
+ \*************************************************************************/
+/*! exports provided: Optimizer */function(e,t,n){"use strict";n.r(t),n.d(t,"Optimizer",(function(){return a}));var s=n(/*! ../globals */"./node_modules/@tensorflow/tfjs-core/dist/globals.js"),o=n(/*! ../gradients */"./node_modules/@tensorflow/tfjs-core/dist/gradients.js"),r=n(/*! ../ops/ops */"./node_modules/@tensorflow/tfjs-core/dist/ops/ops.js"),i=n(/*! ../serialization */"./node_modules/@tensorflow/tfjs-core/dist/serialization.js");
+/**
+ * @license
+ * Copyright 2018 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.
+ * =============================================================================
+ */
+class a extends i.Serializable{minimize(e,t=!1,n){const{value:o,grads:r}=this.computeGradients(e,n);if(null!=n){const e=n.map((e=>({name:e.name,tensor:r[e.name]})));this.applyGradients(e)}else this.applyGradients(r);return Object(s.dispose)(r),t?o:(o.dispose(),null)}get iterations(){return null==this.iterations_&&(this.iterations_=0),this.iterations_}incrementIterations(){this.iterations_=this.iterations+1}computeGradients(e,t){return Object(o.variableGrads)(e,t)}dispose(){null!=this.iterations_&&Object(s.dispose)(this.iterations_)}async saveIterations(){return null==this.iterations_&&(this.iterations_=0),{name:"iter",tensor:Object(r.scalar)(this.iterations_,"int32")}}async getWeights(){throw new Error("getWeights() is not implemented for this optimizer yet.")}async setWeights(e){throw new Error(`setWeights() is not implemented for this optimizer class ${this.getClassName()}`)}async extractIterations(e){return this.iterations_=(await e[0].tensor.data())[0],e.slice(1)}}Object.defineProperty(a,Symbol.hasInstance,{value:e=>null!=e.minimize&&null!=e.computeGradients&&null!=e.applyGradients})},"./node_modules/@tensorflow/tfjs-core/dist/optimizers/optimizer_constructors.js":
+/*!**************************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/optimizers/optimizer_constructors.js ***!
+ \**************************************************************************************/
+/*! exports provided: OptimizerConstructors */function(e,t,n){"use strict";n.r(t),n.d(t,"OptimizerConstructors",(function(){return l}));var s=n(/*! ./adadelta_optimizer */"./node_modules/@tensorflow/tfjs-core/dist/optimizers/adadelta_optimizer.js"),o=n(/*! ./adagrad_optimizer */"./node_modules/@tensorflow/tfjs-core/dist/optimizers/adagrad_optimizer.js"),r=n(/*! ./adam_optimizer */"./node_modules/@tensorflow/tfjs-core/dist/optimizers/adam_optimizer.js"),i=n(/*! ./adamax_optimizer */"./node_modules/@tensorflow/tfjs-core/dist/optimizers/adamax_optimizer.js"),a=n(/*! ./momentum_optimizer */"./node_modules/@tensorflow/tfjs-core/dist/optimizers/momentum_optimizer.js"),u=n(/*! ./rmsprop_optimizer */"./node_modules/@tensorflow/tfjs-core/dist/optimizers/rmsprop_optimizer.js"),d=n(/*! ./sgd_optimizer */"./node_modules/@tensorflow/tfjs-core/dist/optimizers/sgd_optimizer.js");
+/**
+ * @license
+ * Copyright 2018 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.
+ * =============================================================================
+ */
+class l{static sgd(e){return new d.SGDOptimizer(e)}static momentum(e,t,n=!1){return new a.MomentumOptimizer(e,t,n)}static rmsprop(e,t=.9,n=0,s=null,o=!1){return new u.RMSPropOptimizer(e,t,n,s,o)}static adam(e=.001,t=.9,n=.999,s=null){return new r.AdamOptimizer(e,t,n,s)}static adadelta(e=.001,t=.95,n=null){return new s.AdadeltaOptimizer(e,t,n)}static adamax(e=.002,t=.9,n=.999,s=null,o=0){return new i.AdamaxOptimizer(e,t,n,s,o)}static adagrad(e,t=.1){return new o.AdagradOptimizer(e,t)}}},"./node_modules/@tensorflow/tfjs-core/dist/optimizers/rmsprop_optimizer.js":
+/*!*********************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/optimizers/rmsprop_optimizer.js ***!
+ \*********************************************************************************/
+/*! exports provided: RMSPropOptimizer */function(e,t,n){"use strict";n.r(t),n.d(t,"RMSPropOptimizer",(function(){return m}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../globals */"./node_modules/@tensorflow/tfjs-core/dist/globals.js"),r=n(/*! ../ops/add */"./node_modules/@tensorflow/tfjs-core/dist/ops/add.js"),i=n(/*! ../ops/div */"./node_modules/@tensorflow/tfjs-core/dist/ops/div.js"),a=n(/*! ../ops/mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),u=n(/*! ../ops/sqrt */"./node_modules/@tensorflow/tfjs-core/dist/ops/sqrt.js"),d=n(/*! ../ops/square */"./node_modules/@tensorflow/tfjs-core/dist/ops/square.js"),l=n(/*! ../ops/sub */"./node_modules/@tensorflow/tfjs-core/dist/ops/sub.js"),c=n(/*! ../ops/zeros_like */"./node_modules/@tensorflow/tfjs-core/dist/ops/zeros_like.js"),f=n(/*! ../serialization */"./node_modules/@tensorflow/tfjs-core/dist/serialization.js"),p=n(/*! ./optimizer */"./node_modules/@tensorflow/tfjs-core/dist/optimizers/optimizer.js");
+/**
+ * @license
+ * Copyright 2018 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.
+ * =============================================================================
+ */
+class m extends p.Optimizer{constructor(e,t=.9,n=0,o=null,r=!1){if(super(),this.learningRate=e,this.decay=t,this.momentum=n,this.epsilon=o,this.accumulatedMeanSquares=[],this.accumulatedMoments=[],this.accumulatedMeanGrads=[],this.centered=r,null==o&&(this.epsilon=s.ENGINE.backend.epsilon()),null==e)throw new Error("learningRate for RMSPropOptimizer must be defined.")}applyGradients(e){(Array.isArray(e)?e.map((e=>e.name)):Object.keys(e)).forEach(((t,n)=>{const f=s.ENGINE.registeredVariables[t],p=!1;null==this.accumulatedMeanSquares[n]&&(this.accumulatedMeanSquares[n]={originalName:`${t}/rms`,variable:Object(o.tidy)((()=>Object(c.zerosLike)(f).variable(p)))}),null==this.accumulatedMoments[n]&&(this.accumulatedMoments[n]={originalName:`${t}/momentum`,variable:Object(o.tidy)((()=>Object(c.zerosLike)(f).variable(p)))}),null==this.accumulatedMeanGrads[n]&&this.centered&&(this.accumulatedMeanGrads[n]={originalName:`${t}/mg`,variable:Object(o.tidy)((()=>Object(c.zerosLike)(f).variable(p)))});const m=Array.isArray(e)?e[n].tensor:e[t];if(null==m)return;const h=this.accumulatedMeanSquares[n].variable,b=this.accumulatedMoments[n].variable;Object(o.tidy)((()=>{const e=Object(r.add)(Object(a.mul)(h,this.decay),Object(a.mul)(Object(d.square)(m),1-this.decay));if(this.centered){const t=this.accumulatedMeanGrads[n].variable,s=Object(r.add)(Object(a.mul)(t,this.decay),Object(a.mul)(m,1-this.decay)),o=Object(i.div)(Object(a.mul)(m,this.learningRate),Object(u.sqrt)(Object(l.sub)(e,Object(r.add)(Object(d.square)(s),this.epsilon)))),c=Object(r.add)(Object(a.mul)(b,this.momentum),o);h.assign(e),t.assign(s),b.assign(c);const p=Object(l.sub)(f,c);f.assign(p)}else{const e=Object(r.add)(Object(a.mul)(h,this.decay),Object(a.mul)(Object(d.square)(m),1-this.decay)),t=Object(r.add)(Object(a.mul)(b,this.momentum),Object(i.div)(Object(a.mul)(m,this.learningRate),Object(u.sqrt)(Object(r.add)(e,this.epsilon))));h.assign(e),b.assign(t);const n=Object(l.sub)(f,t);f.assign(n)}}))})),this.incrementIterations()}dispose(){null!=this.accumulatedMeanSquares&&Object(o.dispose)(this.accumulatedMeanSquares.map((e=>e.variable))),null!=this.accumulatedMeanGrads&&this.centered&&Object(o.dispose)(this.accumulatedMeanGrads.map((e=>e.variable))),null!=this.accumulatedMoments&&Object(o.dispose)(this.accumulatedMoments.map((e=>e.variable)))}async getWeights(){const e=[...this.accumulatedMeanSquares,...this.accumulatedMoments];return this.centered&&e.push(...this.accumulatedMeanGrads),[await this.saveIterations()].concat(e.map((e=>({name:e.originalName,tensor:e.variable}))))}async setWeights(e){e=await this.extractIterations(e);const t=this.centered?e.length/3:e.length/2,n=!1;this.accumulatedMeanSquares=e.slice(0,t).map((e=>({originalName:e.name,variable:e.tensor.variable(n)}))),this.accumulatedMoments=e.slice(t,2*t).map((e=>({originalName:e.name,variable:e.tensor.variable(n)}))),this.centered&&(this.accumulatedMeanGrads=e.slice(2*t,3*t).map((e=>({originalName:e.name,variable:e.tensor.variable(n)}))))}getConfig(){return{learningRate:this.learningRate,decay:this.decay,momentum:this.momentum,epsilon:this.epsilon,centered:this.centered}}static fromConfig(e,t){return new e(t.learningRate,t.decay,t.momentum,t.epsilon,t.centered)}}m.className="RMSProp",Object(f.registerClass)(m)},"./node_modules/@tensorflow/tfjs-core/dist/optimizers/sgd_optimizer.js":
+/*!*****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/optimizers/sgd_optimizer.js ***!
+ \*****************************************************************************/
+/*! exports provided: SGDOptimizer */function(e,t,n){"use strict";n.r(t),n.d(t,"SGDOptimizer",(function(){return l}));var s=n(/*! ../engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ../globals */"./node_modules/@tensorflow/tfjs-core/dist/globals.js"),r=n(/*! ../ops/add */"./node_modules/@tensorflow/tfjs-core/dist/ops/add.js"),i=n(/*! ../ops/mul */"./node_modules/@tensorflow/tfjs-core/dist/ops/mul.js"),a=n(/*! ../ops/scalar */"./node_modules/@tensorflow/tfjs-core/dist/ops/scalar.js"),u=n(/*! ../serialization */"./node_modules/@tensorflow/tfjs-core/dist/serialization.js"),d=n(/*! ./optimizer */"./node_modules/@tensorflow/tfjs-core/dist/optimizers/optimizer.js");
+/**
+ * @license
+ * Copyright 2018 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.
+ * =============================================================================
+ */
+class l extends d.Optimizer{constructor(e){super(),this.learningRate=e,this.setLearningRate(e)}applyGradients(e){(Array.isArray(e)?e.map((e=>e.name)):Object.keys(e)).forEach(((t,n)=>{const a=Array.isArray(e)?e[n].tensor:e[t];if(null==a)return;const u=s.ENGINE.registeredVariables[t];Object(o.tidy)((()=>{const e=Object(r.add)(Object(i.mul)(this.c,a),u);u.assign(e)}))})),this.incrementIterations()}setLearningRate(e){this.learningRate=e,null!=this.c&&this.c.dispose(),this.c=Object(o.keep)(Object(a.scalar)(-e))}dispose(){this.c.dispose()}async getWeights(){return[await this.saveIterations()]}async setWeights(e){if(0!==(e=await this.extractIterations(e)).length)throw new Error("SGD optimizer does not have settable weights.")}getConfig(){return{learningRate:this.learningRate}}static fromConfig(e,t){return new e(t.learningRate)}}l.className="SGD",Object(u.registerClass)(l)},"./node_modules/@tensorflow/tfjs-core/dist/platforms/platform_browser.js":
+/*!*******************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/platforms/platform_browser.js ***!
+ \*******************************************************************************/
+/*! exports provided: PlatformBrowser */function(e,t,n){"use strict";n.r(t),n.d(t,"PlatformBrowser",(function(){return a}));n(/*! ../flags */"./node_modules/@tensorflow/tfjs-core/dist/flags.js");var s=n(/*! ../environment */"./node_modules/@tensorflow/tfjs-core/dist/environment.js"),o=n(/*! ../io/indexed_db */"./node_modules/@tensorflow/tfjs-core/dist/io/indexed_db.js"),r=n(/*! ../io/local_storage */"./node_modules/@tensorflow/tfjs-core/dist/io/local_storage.js"),i=n(/*! ../io/model_management */"./node_modules/@tensorflow/tfjs-core/dist/io/model_management.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */
+class a{fetch(e,t){return fetch(e,t)}now(){return performance.now()}encode(e,t){if("utf-8"!==t&&"utf8"!==t)throw new Error(`Browser's encoder only supports utf-8, but got ${t}`);return null==this.textEncoder&&(this.textEncoder=new TextEncoder),this.textEncoder.encode(e)}decode(e,t){return new TextDecoder(t).decode(e)}}if(Object(s.env)().get("IS_BROWSER")){Object(s.env)().setPlatform("browser",new a);try{i.ModelStoreManagerRegistry.registerManager(r.BrowserLocalStorage.URL_SCHEME,new r.BrowserLocalStorageManager)}catch(e){}try{i.ModelStoreManagerRegistry.registerManager(o.BrowserIndexedDB.URL_SCHEME,new o.BrowserIndexedDBManager)}catch(e){}}},"./node_modules/@tensorflow/tfjs-core/dist/platforms/platform_node.js":
+/*!****************************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/platforms/platform_node.js ***!
+ \****************************************************************************/
+/*! exports provided: getNodeFetch, resetSystemFetch, setSystemFetch, getSystemFetch, PlatformNode */function(e,t,n){"use strict";n.r(t),function(e){n.d(t,"getNodeFetch",(function(){return o})),n.d(t,"resetSystemFetch",(function(){return i})),n.d(t,"setSystemFetch",(function(){return a})),n.d(t,"getSystemFetch",(function(){return u})),n.d(t,"PlatformNode",(function(){return d}));var s=n(/*! ../environment */"./node_modules/@tensorflow/tfjs-core/dist/environment.js");
+/**
+ * @license
+ * Copyright 2019 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.
+ * =============================================================================
+ */const o={importFetch:()=>n(/*! node-fetch */1)};let r;function i(){r=null}function a(e){r=e}function u(){return r}class d{constructor(){this.util=n(/*! util */2),this.textEncoder=new this.util.TextEncoder}fetch(e,t){return null!=Object(s.env)().global.fetch?Object(s.env)().global.fetch(e,t):(null==r&&(r=o.importFetch()),r(e,t))}now(){const t=e.hrtime();return 1e3*t[0]+t[1]/1e6}encode(e,t){if("utf-8"!==t&&"utf8"!==t)throw new Error(`Node built-in encoder only supports utf-8, but got ${t}`);return this.textEncoder.encode(e)}decode(e,t){return 0===e.length?"":new this.util.TextDecoder(t).decode(e)}}Object(s.env)().get("IS_NODE")&&Object(s.env)().setPlatform("node",new d)}.call(this,n(/*! ./../../../../process/browser.js */"./node_modules/process/browser.js"))},"./node_modules/@tensorflow/tfjs-core/dist/profiler.js":
+/*!*************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/profiler.js ***!
+ \*************************************************************/
+/*! exports provided: Profiler, checkComputationForErrors, Logger */function(e,t,n){"use strict";n.r(t),n.d(t,"Profiler",(function(){return r})),n.d(t,"checkComputationForErrors",(function(){return i})),n.d(t,"Logger",(function(){return a}));var s=n(/*! ./environment */"./node_modules/@tensorflow/tfjs-core/dist/environment.js"),o=n(/*! ./util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");
+/**
+ * @license
+ * Copyright 2018 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.
+ * =============================================================================
+ */
+class r{constructor(e,t){this.backendTimer=e,this.logger=t,null==t&&(this.logger=new a)}profileKernel(e,t,n){let r;const a=()=>{r=n()};let u;const d=o.now();if(this.backendTimer.timerAvailable())u=this.backendTimer.time(a);else{a();for(const e of r)e.dataSync();u=Promise.resolve({kernelMs:o.now()-d})}if(Object(s.env)().getBool("CHECK_COMPUTATION_FOR_ERRORS"))for(let t=0;t{i(t,n.dtype,e)}))}return{kernelName:e,outputs:r,inputs:t,timeMs:u.then((e=>e.kernelMs)),extraInfo:u.then((e=>null!=e.getExtraProfileInfo?e.getExtraProfileInfo():""))}}logKernelProfile(e){const{kernelName:t,outputs:n,timeMs:s,inputs:o,extraInfo:r}=e;n.forEach((e=>{Promise.all([e.data(),s,r]).then((n=>{this.logger.logKernelProfile(t,e,n[0],n[1],o,n[2])}))}))}}function i(e,t,n){if("float32"!==t)return!1;for(let t=0;t0?s:""} `}}console.log(`%c${u}\t%c${a}\t%c${d}D ${c}\t%c${l}\t%c${f}\t%c${i}`,"font-weight:bold","color:red","color:blue","color: orange","color: green","color: steelblue")}}},"./node_modules/@tensorflow/tfjs-core/dist/serialization.js":
+/*!******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/serialization.js ***!
+ \******************************************************************/
+/*! exports provided: Serializable, SerializationMap, registerClass */function(e,t,n){"use strict";n.r(t),n.d(t,"Serializable",(function(){return o})),n.d(t,"SerializationMap",(function(){return r})),n.d(t,"registerClass",(function(){return i}));var s=n(/*! ./util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");
+/**
+ * @license
+ * Copyright 2018 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.
+ * =============================================================================
+ */class o{getClassName(){return this.constructor.className}static fromConfig(e,t){return new e(t)}}class r{constructor(){this.classNameMap={}}static getMap(){return null==r.instance&&(r.instance=new r),r.instance}static register(e){r.getMap().classNameMap[e.className]=[e,e.fromConfig]}}function i(e){Object(s.assert)(null!=e.className,(()=>"Class being registered does not have the static className property defined.")),Object(s.assert)("string"==typeof e.className,(()=>"className is required to be a string, but got type "+typeof e.className)),Object(s.assert)(e.className.length>0,(()=>"Class being registered has an empty-string as its className, which is disallowed.")),r.register(e)}},"./node_modules/@tensorflow/tfjs-core/dist/tape.js":
+/*!*********************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/tape.js ***!
+ \*********************************************************/
+/*! exports provided: getFilteredNodesXToY, backpropagateGradients */function(e,t,n){"use strict";n.r(t),n.d(t,"getFilteredNodesXToY",(function(){return o})),n.d(t,"backpropagateGradients",(function(){return r}));var s=n(/*! ./util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");
+/**
+ * @license
+ * Copyright 2017 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 o(e,t,n){const s={},o={};for(let e=0;es[e.id]=!0)),a=!0,o[r.id]=!0;break}if(a)break}}const r={};r[n.id]=!0;const i={};for(let t=e.length-1;t>=0;t--){const n=e[t],s=n.inputs;for(let e=0;e=0;r--){const i=t[r],a=[];if(i.outputs.forEach((t=>{const n=e[t.id];null!=n?a.push(n):a.push(null)})),null==i.gradient)throw new Error(`Cannot compute gradient: gradient function not found for ${i.kernelName}.`);const u=i.gradient(a);for(const t in i.inputs){if(!(t in u))throw new Error(`Cannot backprop through input ${t}. Available gradients found: ${Object.keys(u)}.`);const r=n((()=>u[t]()));if("float32"!==r.dtype)throw new Error(`Error in gradient for op ${i.kernelName}. The gradient of input ${t} must have 'float32' dtype, but has '${r.dtype}'`);const a=i.inputs[t];if(!s.arraysEqual(r.shape,a.shape))throw new Error(`Error in gradient for op ${i.kernelName}. The gradient of input '${t}' has shape '${r.shape}', which does not match the shape of the input '${a.shape}'`);if(null==e[a.id])e[a.id]=r;else{const t=e[a.id];e[a.id]=o(t,r),t.dispose()}}}}},"./node_modules/@tensorflow/tfjs-core/dist/tensor.js":
+/*!***********************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/tensor.js ***!
+ \***********************************************************/
+/*! exports provided: TensorBuffer, setTensorTracker, setOpHandler, setDeprecationWarningFn, Tensor, getGlobalTensorClass, Variable */function(e,t,n){"use strict";n.r(t),n.d(t,"TensorBuffer",(function(){return i})),n.d(t,"setTensorTracker",(function(){return l})),n.d(t,"setOpHandler",(function(){return c})),n.d(t,"setDeprecationWarningFn",(function(){return f})),n.d(t,"Tensor",(function(){return p})),n.d(t,"getGlobalTensorClass",(function(){return m})),n.d(t,"Variable",(function(){return h}));var s=n(/*! ./global_util */"./node_modules/@tensorflow/tfjs-core/dist/global_util.js"),o=n(/*! ./tensor_format */"./node_modules/@tensorflow/tfjs-core/dist/tensor_format.js"),r=n(/*! ./util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");
+/**
+ * @license
+ * Copyright 2017 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.
+ * =============================================================================
+ */
+class i{constructor(e,t,n){if(this.dtype=t,this.shape=e.slice(),this.size=r.sizeFromShape(e),null!=n){const e=n.length;r.assert(e===this.size,(()=>`Length of values '${e}' does not match the size inferred by the shape '${this.size}'.`))}if("complex64"===t)throw new Error("complex64 dtype TensorBuffers are not supported. Please create a TensorBuffer for the real and imaginary parts separately and call tf.complex(real, imag).");this.values=n||r.getArrayFromDType(t,this.size),this.strides=Object(r.computeStrides)(e)}set(e,...t){0===t.length&&(t=[0]),r.assert(t.length===this.rank,(()=>`The number of provided coordinates (${t.length}) must match the rank (${this.rank})`));const n=this.locToIndex(t);this.values[n]=e}get(...e){0===e.length&&(e=[0]);let t=0;for(const n of e){if(n<0||n>=this.shape[t]){const t=`Requested out of range element at ${e}. Buffer shape=${this.shape}`;throw new Error(t)}t++}let n=e[e.length-1];for(let t=0;tr.decodeString(e)))}catch(e){throw new Error("Failed to decode the string bytes into utf-8. To get the original bytes, call tensor.bytes().")}}return e}dataSync(){this.throwIfDisposed();const e=a().readSync(this.dataId);if("string"===this.dtype)try{return e.map((e=>r.decodeString(e)))}catch(e){throw new Error("Failed to decode the string bytes into utf-8. To get the original bytes, call tensor.bytes().")}return e}async bytes(){this.throwIfDisposed();const e=await a().read(this.dataId);return"string"===this.dtype?e:new Uint8Array(e.buffer)}dispose(){this.isDisposed||(a().disposeTensor(this),this.isDisposedInternal=!0)}get isDisposed(){return this.isDisposedInternal}throwIfDisposed(){if(this.isDisposed)throw new Error("Tensor is disposed.")}print(e=!1){return u.print(this,e)}clone(){return this.throwIfDisposed(),u.clone(this)}toString(e=!1){const t=this.dataSync();return Object(o.tensorToString)(t,this.shape,this.dtype,e)}cast(e){return this.throwIfDisposed(),u.cast(this,e)}variable(e=!0,t,n){return this.throwIfDisposed(),a().makeVariable(this,e,t,n)}}function m(){return Object(s.getGlobal)("Tensor",(()=>p))}Object.defineProperty(p,Symbol.hasInstance,{value:e=>!!e&&null!=e.data&&null!=e.dataSync&&null!=e.throwIfDisposed}),m();class h extends p{constructor(e,t,n,s){super(e.shape,e.dtype,e.dataId,s),this.trainable=t,this.name=n}assign(e){if(e.dtype!==this.dtype)throw new Error(`dtype of the new value (${e.dtype}) and previous value (${this.dtype}) must match`);if(!r.arraysEqual(e.shape,this.shape))throw new Error(`shape of the new value (${e.shape}) and previous value (${this.shape}) must match`);a().disposeTensor(this),this.dataId=e.dataId,a().incRef(this,null)}dispose(){a().disposeVariable(this),this.isDisposedInternal=!0}}Object.defineProperty(h,Symbol.hasInstance,{value:e=>e instanceof p&&null!=e.assign&&e.assign instanceof Function})},"./node_modules/@tensorflow/tfjs-core/dist/tensor_format.js":
+/*!******************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/tensor_format.js ***!
+ \******************************************************************/
+/*! exports provided: tensorToString */function(e,t,n){"use strict";n.r(t),n.d(t,"tensorToString",(function(){return o}));var s=n(/*! ./util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");
+/**
+ * @license
+ * Copyright 2018 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 o(e,t,n,o){const i=Object(s.computeStrides)(t),d=function(e,t,n,o){const i=Object(s.sizeFromShape)(t),a=o[o.length-1],d=new Array(a).fill(0),l=t.length,c="complex64"===n?u(e):e;if(l>1)for(let e=0;e" "+e)).join("\n")),f.join("\n")}function r(e,t,n){let o;return o=Array.isArray(e)?`${parseFloat(e[0].toFixed(7))} + ${parseFloat(e[1].toFixed(7))}j`:Object(s.isString)(e)?`'${e}'`:"bool"===n?i(e):parseFloat(e.toFixed(7)).toString(),Object(s.rightPad)(o,t)}function i(e){return 0===e?"false":"true"}function a(e,t,n,s,o,d=!0){const l="complex64"===n?2:1,c=t[0],f=t.length;if(0===f){if("complex64"===n){return[r(u(e)[0],0,n)]}return"bool"===n?[i(e[0])]:[e[0].toString()]}if(1===f){if(c>20){const t=3*l;let s=Array.from(e.slice(0,t)),i=Array.from(e.slice((c-3)*l,c*l));return"complex64"===n&&(s=u(s),i=u(i)),["["+s.map(((e,t)=>r(e,o[t],n))).join(", ")+", ..., "+i.map(((e,t)=>r(e,o[c-3+t],n))).join(", ")+"]"]}return["["+("complex64"===n?u(e):Array.from(e)).map(((e,t)=>r(e,o[t],n))).join(", ")+"]"]}const p=t.slice(1),m=s.slice(1),h=s[0]*l,b=[];if(c>20){for(let t=0;t<3;t++){const s=t*h,r=s+h;b.push(...a(e.slice(s,r),p,n,m,o,!1))}b.push("...");for(let t=c-3;t`The dtypes of the first(${e.dtype}) and second(${t.dtype}) input must match`))}function u(e,t){return t.some((t=>t.id===e.id))}function d(e){const t=[];return l(e,t,new Set),t}function l(e,t,n){if(null==e)return;if(e instanceof s.Tensor)return void t.push(e);if(o=e,!Array.isArray(o)&&"object"!=typeof o)return;var o;const r=e;for(const e in r){const s=r[e];n.has(s)||(n.add(s),l(s,t,n))}}},"./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js":
+/*!********************************************************************!*\
+ !*** ./node_modules/@tensorflow/tfjs-core/dist/tensor_util_env.js ***!
+ \********************************************************************/
+/*! exports provided: inferShape, convertToTensor, convertToTensorArray */function(e,t,n){"use strict";n.r(t),n.d(t,"inferShape",(function(){return a})),n.d(t,"convertToTensor",(function(){return l})),n.d(t,"convertToTensorArray",(function(){return c}));var s=n(/*! ./engine */"./node_modules/@tensorflow/tfjs-core/dist/engine.js"),o=n(/*! ./environment */"./node_modules/@tensorflow/tfjs-core/dist/environment.js"),r=n(/*! ./tensor */"./node_modules/@tensorflow/tfjs-core/dist/tensor.js"),i=n(/*! ./util */"./node_modules/@tensorflow/tfjs-core/dist/util.js");
+/**
+ * @license
+ * Copyright 2018 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 a(e,t){let n=e;if(Object(i.isTypedArray)(e))return"string"===t?[]:[e.length];if(!Array.isArray(e))return[];const s=[];for(;Array.isArray(n)||Object(i.isTypedArray)(n)&&"string"!==t;)s.push(n.length),n=n[0];return Array.isArray(e)&&Object(o.env)().getBool("TENSORLIKE_CHECK_SHAPE_CONSISTENCY")&&u(e,s,[]),s}function u(e,t,n){if(n=n||[],!Array.isArray(e)&&!Object(i.isTypedArray)(e))return void Object(i.assert)(0===t.length,(()=>`Element arr[${n.join("][")}] is a primitive, but should be an array/TypedArray of ${t[0]} elements`));Object(i.assert)(t.length>0,(()=>`Element arr[${n.join("][")}] should be a primitive, but is an array of ${e.length} elements`)),Object(i.assert)(e.length===t[0],(()=>`Element arr[${n.join("][")}] should have ${t[0]} elements, but has ${e.length} elements`));const s=t.slice(1);for(let t=0;t