-
Notifications
You must be signed in to change notification settings - Fork 28
/
Copy pathWebARRocksHand.module.js
executable file
·217 lines (216 loc) · 165 KB
/
WebARRocksHand.module.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
/**
* WebAR.rocks.hand
*
* Copyright (c) 2020 WebAR.rocks ( https://webar.rocks )
* This code is released under dual licensing:
* - GPLv3
* - Nominative commercial license
* Please read https://github.com/WebAR-rocks/WebAR.rocks.hand/blob/master/LICENSE
*
*/
/* eslint-enable */
/* prettier-ignore */
var StereoAudioRecorder=null,CanvasRecorder=null,isFloat=null,isPot=null,isLinear=null,isMipmap=null,isFlipY=null,array=null,width=null,height=null,url=null,zyp=null,_pnpSolver=null,_pnpSolverStab=null,u0=null,u1=null,u2=null,u3=null,u4=null,u5=null,u6=null,u7=null,u8=null,u9=null,u10=null,u11=null,u12=null,u13=null,u14=null,u15=null,u16=null,u17=null,u18=null,u19=null,u20=null,u21=null,u22=null,u23=null,u24=null,u25=null,u26=null,u27=null,u28=null,u29=null,u30=null,u31=null,u32=null,u33=null,u34=
null,u35=null,u36=null,u37=null,u38=null,u39=null,u40=null,u41=null,u42=null,u43=null,u44=null,u45=null,u46=null,u47=null,u48=null,u49=null,u50=null,u51=null,u52=null,u53=null,u54=null,u55=null,u56=null,u57=null,u58=null,u59=null,a0=null,spec=null,attributes=null,_shaders=null;
const WEBARROCKSHAND=function(){function Yb(a){var b=null,d=null,e=null,g=0,l=this,m=null,n={gb:[],Pb:"none",Nc:!1,Ob:null,grid:null};this.A=function(){this.Xe(m.gb);e.Kg({Pb:m.Pb,Nc:m.Nc,Ob:m.Ob})};this.Qf=function(k){return b[k]};this.$b=function(k){["s32","s34","s27"].forEach(function(p){B.S(p,[{type:"2f",name:"u21",value:k}])});b&&b.forEach(function(p){p.$b(k)})};this.Xe=function(k){var p=null;g=k.length;var v=m.grid!==null&&a.grid.length&&!(a.grid[0]===1&&a.grid[1]===1),D=v?m.grid:[1,1];v&&this.$b(D);
b=k.map(function(x,u){x=Object.assign({},x,{index:u,parent:l,Rb:p,dg:u===g-1,$a:v,Y:D});return p=u=u===0?Zb.instance(x):$b.instance(x)});d=b[0];e=b[g-1];b.forEach(function(x,u){u!==0&&x.qg()})};this.Z=function(k){k.h(0);var p=k;b.forEach(function(v){p=v.Z(p,!1)});return p};this.Pf=function(){return d.Of()};this.Tf=function(){return e.J()};this.Za=function(){return e.Sf()};this.Kd=function(){return e.Kd()};this.m=function(){b&&(b.forEach(function(k){k.m()}),e=d=b=null,g=0)};typeof a!=="undefined"&&
(m=Object.assign({},n,a),this.A())}function ob(a,b){var d=b%8;return a[(b-d)/8]>>7-d&1}function Hb(a,b,d){var e=1,g=0;for(d=b+d-1;d>=b;--d)g+=e*ob(a,d),e*=2;return g}function Ib(a){a=a.data;a=typeof btoa==="undefined"&&typeof Buffer!=="undefined"?Buffer.from(a,"base64").toString("latin1"):atob(a);for(var b=a.length,d=new Uint8Array(b),e=0;e<b;++e)d[e]=a.charCodeAt(e);return d}function pb(a){return typeof a==="string"?JSON.parse(a):a}function ac(a){if(typeof pb(a).nb==="undefined"){var b=pb(a);a=b.ne;
var d=b.nf,e=b.n;b=Ib(b);for(var g=new Float32Array(e),l=new Float32Array(d),m=a+d+1,n=0;n<e;++n){var k=m*n,p=ob(b,k)===0?1:-1,v=Hb(b,k+1,a),D=b;k=k+1+a;for(var x=l.length,u=0,G=k;G<k+x;++G)l[u]=ob(D,G,!0),++u;for(k=D=0;k<d;++k)D+=l[k]*Math.pow(2,-k-1);g[n]=D===0&&v===0?0:p*(1+D)*Math.pow(2,1+v-Math.pow(2,a-1))}a=g}else if(e=pb(a),a=e.nb,a===0)a=new Uint8Array(e.nb);else{d=e.n;e=Ib(e);b=new Uint32Array(d);for(g=0;g<d;++g)b[g]=Hb(e,g*a,a);a=b}return a}function qb(){ea.splice(0);Ga.splice(0);ma.Sb=
[];var a=ca.na();ma.Zc=new Uint8Array(a);ma.eb=new Uint32Array(a);ma.Ra=new Uint8Array(a);for(var b=0;b<a;++b)ea.push(null),Ga.push(null),ma.Sb.push(new Int8Array(na.switchNNConsecutiveIterations))}function Ya(){if(ia===fa.play)return!1;if(E.element===null)return ia=fa.Fe,!1;ia=fa.play;Ta.stop();Ha.Rd();Jb(0);return!0}function rb(){if(ia!==fa.play)return!1;wa.stop();Ta.stop();ia=fa.pause;return!0}function Ia(a,b,d,e,g){a=(b*Aa+a)*4+d;return e+(ha.buffer[a]/255+ha.buffer[a+Aa*4]/65025)*(g-e)}function bc(){var a=
ca.na();xa.N();c.viewport(0,0,Aa,2*a);B.set("s62");ha.Aa.h(0);ha.kb.h(1);Q.l(!1,!1);return X.enableAsyncReadPixels?aa.Ub(0,0,Aa,2*a,ha.buffer,sb,X.readPixelsAsyncDelay):aa.se(0,0,Aa,2*a,ha.buffer)}function cc(){var a=qa[0],b=qa[1];if(!a.isDetected||!b.isDetected)return!1;if(ea[0].X===ea[1].X){a=Math.floor(Math.random()*2);var d=ea[a===0?1:0].X;ea[a]=oa.find(function(n){return n.X!==d});Ga[a]=ea[a];return!1}var e=a.rz,g=b.rz,l=-Math.sin(e)-Math.sin(g);e=Math.cos(e)+Math.cos(g);if(l===0&&e===0)return!1;
g=(a.x-b.x)*V.sb;var m=a.y-b.y;if(g===0&&m===0||Math.sign((g*e-m*l)*ea[0].X)===X.multiDetectionForceChirality)return!1;l=ea[0];ea[0]=ea[1];ea[1]=l;l=a.isRightHand;a.isRightHand=b.isRightHand;b.isRightHand=l;a.detected=1.2;b.detected=1.2;Ga[0]=ea[0];Ga[1]=ea[1];return!0}function dc(a){var b=tb?Ga[a]:ea[a];if(b!==null){var d=Oa[a],e=ub[a],g=qa[a],l=a*2,m=b.Tc;d.Wa=Ia(1,l,1,0,1);g.detected=La.Ja(g.detected,d.Wa,ra.Pe);g.isDetected=g.detected>X.threshold;g.neuralNetworkInd=b.ea;d.x=Ia(0,l,1,-1,1);d.y=
Ia(0,l,2,-1,1);d.V=Ia(0,l,3,0,2);if(g.isDetected){d.za=Ia(1,l,0,-m,m);var n=Ia(1,l,2,-1,1);m=Ia(1,l,3,-1,1);switch(b.Mc){case Za.bc:d.hb=b.X*n;d.Ya=m;break;case Za.md:var k=b.W,p=k&&k.isFlipped;n*=m;d.hb=k&&k.isRightHand?n:-n;d.Ya=p?m:-m}m=ra.ld;for(k=0;k<Ma.Gc;++k)p=2+Math.floor(k/2),d.xc[k][0]=b.X*Ia(p,l,k%2*2,-m,m),d.xc[k][1]=Ia(p,l,k%2*2+1,-m,m);e.dx=d.x-g.x;e.dy=d.y-g.y;e.rf=d.V-g.s;e.qf=R.ta?d.za:d.za-g.rz;e.jf=d.hb-g.rightHand;e.hf=d.Ya-g.flipped;e=Math.pow(ec.kg(na.qualityFactorRange[0],na.qualityFactorRange[1],
d.Wa),ra.Qe);l=La.Ja(na.alphaRange[1],na.alphaRange[0],e);g.quality=e;vb[a]=e<na.qualityGoodDetectionThreshold?hb.Re:hb.Wf;g.x=La.Ja(g.x,d.x,l);g.y=La.Ja(g.y,d.y,l);g.s=La.Ja(g.s,d.V,l);g.rightHand=d.hb;g.flipped=d.Ya;var v=1,D=0;R.ta?(v=Math.cos(g.rz),D=Math.sin(g.rz),g.rz+=b.X*Math.max(na.followZRotAlphaFactorRange[0],na.followZRotAlphaFactorRange[1]*l)*d.za,g.rz>Math.PI&&(g.rz-=2*Math.PI),g.rz<-Math.PI&&(g.rz+=2*Math.PI)):g.rz=La.Ja(g.rz,d.za,l);g.isRightHand=X.disableIsRightHandNNEval?b.W.isRightHand:
g.rightHand>0;g.isFlipped=g.flipped>0;for(var x in b.W)g[x]=b.W[x];g.landmarks.forEach(function(u,G){var J=d.xc[G];G=d.jg[G];var f=J[0];J=J[1];if(R.ta){var z=J*v+f*D;f=f*v-J*D;J=z}G[0]=d.x+f*d.V;G[1]=d.y+J*d.V*V.sb;u[0]=G[0];u[1]=G[1]});++d.xa}else b=g.detected<X.thresholdSignal,R.ta&&(R.mc&&b?(g.rz+=1.5*m,g.rz>Math.PI&&(g.rz-=2*Math.PI)):R.mc||(g.rz=0)),vb[a]=hb.ke,d.xa=Math.floor(d.xa/2)}}function fc(a,b){var d=ea[a];return oa.find(function(e){if(e===d)return!1;var g=0;if(window.wi)debugger;for(var l in e.W)if(na.NNSwitchMask[l]){var m=
d.W[l],n=e.W[l];m=l===b?!m:m;++g;if(n!==m)return!1}return g>=1})||d}function Jb(){ia===fa.play&&(X.isCleanGLStateAtEachIteration&&(B.Ad(),Q.reset(),Q.Ea(),c.disable(c.DEPTH_TEST),B.Ka()),R.vc?wa.Sc(gc,bc,hc,sb,Kb,X.animateProcessOrder):(Lb(),sb(),Kb()))}function gc(){xa.ia();E.cb||Lb();var a=wa.Rf();ca.update(a,qa);var b=[];++ma.fb;for(var d=0;d<a;++d){var e=ca.Yb(d),g=b.indexOf(e)!==-1;g||b.push(e);var l=ea[e];if(l===null)l=oa[0];else if(qa[e].isDetected){g=ea[e];if(ma.eb[e]>na.switchNNMinIterations){var m=
void 0;var n=ea[e],k=Oa[e],p=0;var v=null;var D=na.NNSwitchMask;for(m in n.W){var x=.5*Math.abs((n.W[m]?1:-1)-{isRightHand:k.hb,isFlipped:k.Ya}[m])*(D[m]?1:0);x/=Math.max(.01,k.Wa);x>p&&(p=x,v=m)}m=p;m>na.switchNNErrorThreshold&&(g=fc(e,v))}if(g){l=ma.Sb[e];l[ma.Ra[e]]=g.ea;ma.Ra[e]=(ma.Ra[e]+1)%na.switchNNConsecutiveIterations;if(v=g.ea!==ea[e].ea)for(m=0;m<na.switchNNConsecutiveIterations&&(v=g.ea===l[m],v);++m);v?(l=g,++ma.Zc[e],ma.eb[e]=0):(l=ea[e],++ma.eb[e])}}else if(!g)for(X.multiDetectionForceSearchOnOtherSide&&
(g=ca.Cf(qa),g!==-1&&(l=oa[(ea[g].ea+1)%oa.length])),l&&X.multiDetectionForceSearchOnOtherSide||(l=Ga[e]===null?0:Ga[e].ea,g=(l+1)%oa.length,g=tb&&ma.fb%3!==0?l:g,l=oa[g]),ma.Zc[e]=0,ma.eb[e]=0,g=ma.Ra[e]=0;g<na.switchNNConsecutiveIterations;++g)ma.Sb[e][g]=-1;ea[e]=l;e=ca.Ld();if(l=ea[e])g=ca.na(),B.set("s64"),B.F("u47",l.X),R.ta&&B.F("u46",qa[e].rz),ca.Ie("u45"),v=Mb.yf(V.u,qa[e],wb),V.Gb.M(v,wb),E.D.h(1),ha.Aa.h(0),Q.l(!1,!1),ha.kb.v(),B.set("s3"),c.viewport(0,e,Aa,1),B.P("u11",1,1/g),B.P("u12",
0,e/g),Q.l(!1,!1),l.model.Z(V.Gb),Ga[e]=l}X.multiDetectionForceChirality!==0&&cc();wa.Yb()}function sb(){xa.Tg();Z.reset();X.isCleanGLStateAtEachIteration&&(xa.reset(),c.enable(c.DEPTH_TEST));R.dc&&R.dc(ca.ee()?qa:qa[0]);X.isCleanGLStateAtEachIteration&&(Q.reset(),Q.Ea(),c.disable(c.BLEND))}function hc(){for(var a=0;a<ca.na();++a)ca.ig(a)&&dc(a);X.multiDetectionEqualizeSearchSlotScale&&ca.xf(qa)}function Kb(){ia===fa.play&&Ta.Sc(Jb)}function Lb(){if(E.Ib)E.element.needsUpdate&&(E.D.ze(E.element.videoWidth,
E.element.videoHeight),E.D.Ma(E.element.arrayBuffer),E.element.needsUpdate=!1);else{var a=E.element.currentTime,b=a-E.Tb;b<0&&(E.Tb=a);b*1E3<ra.Wg||(E.Tb+=b,E.D.refresh())}}function ic(){function a(g,l){B.S(g,[{name:"u41",type:"1f",value:l/Aa}])}function b(){return Ma.labels.map(function(){return[0,0]})}var d=ca.na();Aa=2+Ma.Ic;var e=new Float32Array(4*Aa);e={width:Aa,height:d,isFloat:!0,isPot:!1,array:ca.sf(e)};ha.Aa=jc.instance(e);ha.kb=Z.instance(e);ha.buffer=new Uint8Array(Aa*2*4*d);ha.Yc=e.array;
a("s63",.5);a("s62",1);a("s64",.5);Oa=ca.jc({Wa:0,x:0,y:0,V:1,za:0,hb:0,Ya:0,xc:b(),jg:b(),xa:0});qa=ca.jc({detected:0,isDetected:!1,x:0,y:0,s:1,rz:0,neuralNetworkInd:-1,isRightHand:!0,isFlipped:!1,rightHand:0,flipped:0,quality:0,landmarks:b()});ub=ca.jc({dx:0,dy:0,rf:0,qf:0,jf:0,hf:0})}function kc(){oa.forEach(function(a){a.model&&a.model.m()});oa.splice(0);qb();Ha.m();ub=qa=Oa=null}function xb(){B.S("s64",[{type:"1i",name:"u1",value:1},{type:"1i",name:"u43",value:0},{type:"2f",name:"u44",value:V.H},
{type:"1f",name:"u45",value:.5},{type:"1f",name:"u46",value:0}]);var a=[{type:"1i",name:"u48",value:0},{type:"1f",name:"u54",value:ha.size}];B.S("s63",[{type:"1i",name:"u43",value:1},{type:"1f",name:"u51",value:ra.Rg},{type:"1f",name:"u52",value:X.threshold},{type:"1f",name:"u45",value:.5},{type:"1f",name:"u53",value:1},{type:"1f",name:"u46",value:0}].concat(a));B.S("s66",[{type:"1f",name:"u53",value:1}].concat(a));B.S("s67",[{type:"1f",name:"u56",value:ra.ld}].concat(a));B.S("s62",[{type:"1i",name:"u43",
value:0},{type:"1i",name:"u57",value:1},{type:"1f",name:"u59",value:V.H[0]*.5},{type:"2f",name:"u58",value:[0,.5/ca.na()]}])}function yb(){var a=oa[0].model;ha.size=a.Tf();wb=a.Pf();V.H[0]=1;V.H[1]=V.u/V.K;Pa.A({Qb:X.overlapFactors,je:X.nScaleLevels,u:V.u,K:V.K,ue:X.scale0Factor,$:oa[0].$})}function Nb(a){if(R.lb!==null)Ob(R.lb,a);else{if(!R.mb)throw Error("You should provide neural networks through NNs or NNsPath option");lc(R.mb,function(b){Ob(b,a)})}}function lc(a,b){var d=a.length,e=Array(d),
g=0;a.forEach(function(l,m){ib.get(l,function(n){n=JSON.parse(n);n.Ne=l.split("/").pop();e[m]=n;++g===d&&b(e)})})}function Ob(a,b){(a.length?a:[a]).forEach(mc);b(a)}function mc(a,b){var d=0,e=ra.$.slice(0),g=null,l=Za.bc;if(a.exportData){var m=a.exportData;m.rzMax&&(d=m.rzMax*nc);m.translationScalingFactors&&(e=m.translationScalingFactors);m.evaluationConditions&&(g=m.evaluationConditions);m.outputFormat&&(l={ABSOLUTE:Za.bc,RELATIVE:Za.md}[m.outputFormat]);b===0&&oc(m,Ma)}oa.push({Tc:d,W:g,id:a.Ne,
$:e,X:1,ea:-1,model:null,Mc:l})}function oc(a,b){b.pe=a.keypoints;b.labels=a.keypoints.map(function(d){return d.label});b.Gc=a.keypoints.length;b.Ic=Math.ceil(b.Gc/2)}function pc(a,b){a=new Yb({gb:a.layers,Pb:"gpuRawAvg",Ob:qc});oa[b].model=a}function rc(){if(Ha.A({ub:R.aa,width:V.u,height:V.K,Vd:!1,debug:!1,Kc:function(){Qa("GLCONTEXT_LOST")},antialias:!1,premultipliedAlpha:!0}))return!0;Qa("GL_INCOMPATIBLE");return!1}function qc(){var a=ca.Ld(),b=ea[a],d=qa[a];ha.Aa.zg(1);c.viewport(0,a,1,1);B.set("s63");
B.F("u47",b.X);b=b.$;var e=d.isDetected?X.translationScalingFactors:X.translationScalingFactorsScan;B.Fg("u50",b[0]*e[0]*V.H[0],b[1]*e[1]*V.H[1],b[2]*e[2]);R.ta&&B.F("u46",d.rz);ca.Ie("u45");b=1;e=ca.Mg(Oa,qa,V.u/V.K);ca.ee()&&(e&&(b=0,Oa[a].xa=0,d.isDetected=!1,d.detected=0,Pa.rg(a)),B.F("u53",b));B.Gg("u49",Pa.get(a));Q.l(!1,!1);if(ca.de()||e)c.viewport(1,a,1,1),B.set("s66"),B.F("u53",b),Q.l(!1,!1);ca.de()&&(c.viewport(2,a,Ma.Ic,1),B.set("s67"),Q.l(!1,!1));ha.Aa.sync()}function Pb(){E.D&&E.D.remove();
E.Ib=E.element.isFakeVideo?!0:!1;var a=null;E.Ib?a={isFlipY:!1,array:E.element.arrayBuffer,width:E.element.videoWidth,height:E.element.videoHeight,isKeepArray:!0}:E.element&&(a={L:E.element});E.$c=Z.instance(Object.assign({isPot:!1,isLinear:!0,isFloat:!1},a));E.D=E.$c}function Ua(){var a=[{type:"mat2",name:"u42",value:E.B}];B.S("s65",[{type:"1i",name:"u1",value:0}].concat(a));B.S("s64",a)}function Va(){var a=[.5,.5],b=E.H[1]/E.H[0],d=Ha.ba()/Ha.J();Math.abs(ya.rotate)===90&&(b=1/b);b>d?a[1]*=d/b:
a[0]*=b/d;B.S("s63",[{name:"u55",type:"1f",value:d}]);E.B[0]=0;E.B[1]=0;E.B[2]=0;E.B[3]=0;switch(ya.rotate){case 0:E.B[0]=a[0];E.B[3]=a[1];break;case 180:E.B[0]=-a[0];E.B[3]=-a[1];break;case 90:E.B[1]=a[0];E.B[2]=-a[1];break;case -90:E.B[1]=-a[0],E.B[2]=a[1]}E.ga[0]=E.B[0];E.ga[1]=E.B[1];E.ga[2]=E.B[2];E.ga[3]=E.B[3];E.cb||(E.B[1]*=-1,E.B[3]*=-1);E.cb&&E.Xd&&(E.ga[1]*=-1,E.ga[3]*=-1)}function zb(){if(!E.element)return!1;var a=E.element.videoWidth,b=E.element.videoHeight,d=E.H[0]!==a||E.H[1]!==b;d&&
(E.H[0]=a,E.H[1]=b);return d}function $a(a,b){if(ia===fa.error)return!1;E.element=a;zb();b&&b();return!0}function Ab(a){E.Jc&&E.Jc();E.Ta={video:{focusMode:{ideal:"continuous"},facingMode:{ideal:ya.facingMode},width:{min:ya.minWidth,max:ya.maxWidth,ideal:ya.idealWidth},height:{min:ya.minHeight,max:ya.maxHeight,ideal:ya.idealHeight}},audio:!1};Y.od(E.Ta,ya.deviceId);Y.get(E.element?E.element:Y.Pd(),function(b){E.Lc&&E.Lc(b);a(b)},function(){Qa("WEBCAM_UNAVAILABLE")},E.Ta)}function Qa(a){ia!==fa.error&&
(ia=fa.error,R.Sa&&R.Sa(a))}function sc(){for(var a=oa.length,b=0;b<a;++b){var d=oa[b],e=d.W;e&&e.isRightHand===!0&&(e=Object.assign({},e,{isRightHand:!1}),oa.push({Tc:d.Tc,W:e,id:d.id?d.id.replace("_R","_L")+"(GEN)":"GEN",$:d.$,X:-1,ea:-1,model:d.model,Mc:d.Mc}))}}function Qb(a){a.forEach(pc);ra.vf&&sc();oa.forEach(function(b,d){b.ea=d});ic();yb();xb()}function tc(a){if(!rc())return!1;B.ob([{id:"s65",name:"_",Ba:"attribute vec2 a0;uniform mat2 u42;varying vec2 vv0;void main(){gl_Position=vec4(a0,0.,1.),vv0=vec2(.5,.5)+u42*a0*vec2(1.,-1.);}",
tb:["a0"],Pa:[2],g:"uniform sampler2D u1;varying vec2 vv0;void main(){gl_FragColor=texture2D(u1,vv0);}",i:["u1","u42"],precision:"lowp"},{id:"s64",name:"_",g:"uniform sampler2D u1;varying vec2 vv0;void main(){gl_FragColor=texture2D(u1,vv0);}",Ba:"attribute vec2 a0;uniform sampler2D u43;uniform mat2 u42;uniform vec2 u44;uniform float u45,u41,u46,u47;varying vec2 vv0;void main(){vec2 d=a0*vec2(u47,1.);vec4 a=texture2D(u43,vec2(u41,u45));vec2 f=a.gb,g=a.a*u44;float b=cos(u46),c=sin(u46);vec2 h=mat2(b,c,-c,b)*d,i=f+.5*h*g;vv0=.5+2.*u42*(i-.5),gl_Position=vec4(a0,0.,1.);}",
tb:["a0"],Pa:[2],i:"u1 u43 u44 u45 u41 u46 u47 u42".split(" "),precision:"lowp"},{id:"s63",name:"_",g:"uniform sampler2D u48,u43;uniform vec3 u49,u50;uniform float u51,u52,u45,u41,u53,u54,u46,u55,u47;const vec4 e=vec4(.25,.25,.25,.25);void main(){float b=(u54-.5)/u54;vec4 f=texture2D(u48,vec2(.5/u54,b)),a=texture2D(u43,vec2(u41,u45));bool g=dot(f,e)>u52;a.r<-.5?a.r+=1.:g?a.r=2.:a.r>u51?a.r=0.:a.r>1.9?a.r+=1.:0.,a.r=mix(-2.,a.r,u53);if(a.r<.9)a=vec4(1.,u49);else{a.r*=step(1.9,a.r);float h=-u47*dot(e,texture2D(u48,vec2(1.5/u54,b))),i=-dot(e,texture2D(u48,vec2(2.5/u54,b))),j=-dot(e,texture2D(u48,vec2(3.5/u54,b))),c=cos(u46),d=sin(u46);vec2 k=mat2(c,d*u55,-d/u55,c)*vec2(h,i);a.gba+=vec3(k,j)*u50*a.a;}gl_FragColor=a;}",
Ba:"attribute vec2 a0;void main(){gl_Position=vec4(a0,0.,1.);}",i:"u48 u43 u49 u51 u50 u53 u52 u45 u41 u54 u47 u46 u55".split(" ")},{id:"s66",name:"_",Ba:"attribute vec2 a0;void main(){gl_Position=vec4(a0,0.,1.);}",g:"uniform sampler2D u48;uniform float u54,u53;const vec4 e=vec4(.25,.25,.25,.25);void main(){float a=(u54-.5)/u54,b=-dot(e,texture2D(u48,vec2(4.5/u54,a))),c=dot(e,texture2D(u48,vec2(.5/u54,a))),d=dot(e,texture2D(u48,vec2(5.5/u54,a))),f=dot(e,texture2D(u48,vec2(6.5/u54,a)));vec4 g=.5+vec4(b*u53,c*u53,d,f)*.5;gl_FragColor=g;}",
i:["u48","u54","u53"]},{id:"s67",name:"_",Ba:"attribute vec2 a0;void main(){gl_Position=vec4(a0,0.,1.);}",g:"uniform sampler2D u48;uniform float u54,u56;const vec4 e=vec4(.25),h=vec4(.5);vec2 f(float a){float b=floor(a/u54),c=a-b*u54;return vec2(c,u54-.5-b)/u54;}vec2 g(float a){vec2 b=f(a*2.),c=f(a*2.+1.);float d=dot(e,texture2D(u48,b)),i=dot(e,texture2D(u48,c));return vec2(d,i);}void main(){float a=2.*gl_FragCoord.x;vec2 b=g(a-1.),c=g(a);gl_FragColor=h+.5*vec4(b,c)/u56;}",i:["u48","u54","u56"]},
{id:"s62",name:"_",g:"uniform sampler2D u43,u57;uniform vec2 u58;uniform float u59,u41;varying vec2 vv0;void main(){float g=step(.5,mod(gl_FragCoord.y+1.5,2.)),a=step(u41,vv0.x);vec2 d=vv0+u58;vec4 b=mix(texture2D(u57,d),texture2D(u43,d),vec4(1.,a,a,a));b.a*=mix(u59,1.,a);vec4 f=floor(255.*b),h=255.*(255.*b-f),c=mix(f,h,g)/255.;c.x=mix(step(b.x,1.5),c.x,a),gl_FragColor=c;}",i:["u43","u57","u59","u58","u41"]}]);Qb(a);jb()}function jb(){if(!kb&&ia!==fa.Nb&&ia!==fa.error&&++Rb===2){Pb();E.element!==
null&&(Va(),Ua());for(var a=ca.na(),b=0;b<a;++b)vb.push(hb.ke);Bb=!0;R.Sa&&R.Sa(!1,{GL:c,canvasElement:R.aa,video:E.element,videoTexture:E.D?E.D.get():null,videoTransformMat2:E.B,maxHandsDetected:a,landmarksLabels:Ma.labels});Ya()}}var Cb=null,La={Vh:function(a){return Math.ceil(Math.log2(a))},ri:function(a){return Math.log2(a)},mi:function(a){return Math.log2(a)%1===0},hh:function(a){var b=[0,0,0,0];a.forEach(function(d){b[0]+=d[0];b[1]+=d[1];b[2]+=d[2];b[3]+=d[3]});return b},ih:function(a,b,d){return Math.min(Math.max(a,
b),d)},lh:function(a){return a*Math.PI/180},zi:function(a,b){b=Math.pow(10,b);return Math.round(a*b)/b},Ai:function(a){return Math.round(a*1E6)/1E6},Wh:function(a,b){return(100*a/b).toFixed(3)},Ja:function(a,b,d){return a*(1-d)+b*d},si:function(a,b){return a[0]*(1-b)+a[1]*b},pf:function(a,b){return La.cf(a-b)},cf:function(a){for(;a>Math.PI;)a-=2*Math.PI;for(;a<=-Math.PI;)a+=2*Math.PI;return a},ph:function(a,b){return Math.abs(La.pf(a,b))},Xg:function(a,b){return Math.atan2(Math.sin(a)+Math.sin(b),
Math.cos(a)+Math.cos(b))}},ib={get:function(a,b,d){var e=new XMLHttpRequest;e.open("GET",a,!0);e.withCredentials=!1;e.onreadystatechange=function(){e.readyState===4&&(e.status===200||e.status===0?b(e.responseText):typeof d!=="undefined"&&d(e.status))};e.send()},Uf:function(a){return new Promise(function(b,d){ib.get(a,b,d)})},Sh:function(a,b,d){a+=d?"?"+ib.wf(d):"";ib.get(a,function(e){b(JSON.parse(e))})},ui:function(a,b,d){var e=new XMLHttpRequest;e.open("POST",a,!0);e.setRequestHeader("Content-type",
"application/x-www-form-urlencoded");e.onreadystatechange=function(){e.readyState!==4||e.status!==200&&e.status!==0||d(e.responseText)};e.send(b)},wf:function(a){return typeof a==="string"?a:Object.keys(a).map(function(b){return encodeURIComponent(b)+"="+encodeURIComponent(a[b])}).join("&")},Gh:function(a,b){var d=new XMLHttpRequest;d.open("POST",a,!0);d.responseType="arraybuffer";d.onload=function(){b(d.response)};d.send()}},uc={create:function(a,b){for(var d=Array(b),e=0;e<b;++e)d[e]=a;return d},
mh:function(a,b){for(var d=0;d<a.length;++d)b[d]=a[d]},clone:function(a){for(var b=Array(a.length),d=0;d<a.length;++d)b[d]=a[d];return b},Di:function(a,b,d){a.forEach(function(e,g){b[g]=e*d})},Mi:function(a){for(var b=a.length-1;b>0;--b){var d=Math.floor(Math.random()*(b+1)),e=a[b];a[b]=a[d];a[d]=e}},Oi:function(a){return a.sort(function(b,d){return b-d})},Qg:function(a){return Array.isArray(a)||a.constructor===Float32Array||a.constructor===Uint8Array}},Db={hc:function(a,b){if(b===0||typeof a!=="object")return a;
a=Object.assign({},a);b=b===void 0||b===-1?-1:b-1;for(var d in a)a[d]=Db.hc(a[d],b);return a},oh:function(a){return JSON.parse(JSON.stringify(a))}},ec={Ni:function(a,b,d){a=Math.min(Math.max((d-a)/(b-a),0),1);return a*a*(3-2*a)},kg:function(a,b,d){return Math.min(Math.max((d-a)/(b-a),0),1)},Ah:function(a,b,d,e){return Math.pow(Math.min(Math.max((e-a)/(b-a),0),1),d)},Ti:function(){return 0},ti:function(){return 1},pi:function(a){return a},xh:function(a){return a*a},Ch:function(a){return a*(2-a)},uh:function(a){return a<
.5?2*a*a:-1+(4-2*a)*a},sh:function(a){return a*a*a},Bh:function(a){return--a*a*a+1},th:function(a){return a<.5?4*a*a*a:(a-1)*(2*a-2)*(2*a-2)+1},yh:function(a){return a*a*a*a},Dh:function(a){return 1- --a*a*a*a},vh:function(a){return a<.5?8*a*a*a*a:1-8*--a*a*a*a},zh:function(a){return a*a*a*a*a},Eh:function(a){return 1+--a*a*a*a*a},wh:function(a){return a<.5?16*a*a*a*a*a:1+16*--a*a*a*a*a}},vc={Ff:function(a,b,d){switch(a){case "relu":return d+"=max(vec4(0.),"+b+");";case "elu":return d+"=mix(exp(-abs("+
b+"))-vec4(1.),"+b+",step(0.,"+b+"));";case "elu01":return d+"=mix(0.1*exp(-abs("+b+"))-vec4(0.1),"+b+",step(0.,"+b+"));";case "arctan":return d+"=atan(3.14159265359*texture2D(u0,vUV))/3.14159265359;";case "copy":return"";case "gelu":return d+"="+d+";\n vec4 zou="+b+";\n vec4 polyZou=0.7978845608028654*(zou+0.044715*zou*zou*zou);\n vec4 exZou=exp(-abs(polyZou));\n vec4 exZou2=exZou*exZou;\n vec4 tanhZou=sign(polyZou)*(vec4(1.)-exZou2)/(vec4(1.)+exZou2);\n "+
d+"=0.5*zou*(vec4(1.)+tanhZou);";default:return!1}}},B=function(){function a(r,w,H){w=r.createShader(w);r.shaderSource(w,H);r.compileShader(w);return r.getShaderParameter(w,r.COMPILE_STATUS)?w:null}function b(r,w,H){w=a(r,r.VERTEX_SHADER,w);H=a(r,r.FRAGMENT_SHADER,H);r===c&&n.push(w,H);var P=r.createProgram();r.attachShader(P,w);r.attachShader(P,H);r.linkProgram(P);return P}function d(r){return["float","sampler2D","int"].map(function(w){return"precision "+r+" "+w+";\n"}).join("")}function e(r,w){w.o=
w.o?!0:!1;if(!w.o){w.Ba=w.Ba||"precision lowp float;attribute vec2 a0;varying vec2 vv0;void main(){gl_Position=vec4(a0,0.,1.),vv0=a0*.5+vec2(.5);}";w.tb=w.tb||["a0"];w.Pa=w.Pa||[2];w.precision=w.precision||x;w.id=v++;w.xe!==void 0&&(w.xe.forEach(function(ba,ka){w.g=w.g.replace(ba,w.Vb[ka])}),w.xe.splice(0));w.gd=0;w.Pa.forEach(function(ba){w.gd+=ba*4});var H=d(w.precision);w.ya=b(r,H+w.Ba,H+w.g);w.C={};w.i.forEach(function(ba){w.C[ba]=r.getUniformLocation(w.ya,ba)});w.attributes={};w.Qa=[];w.tb.forEach(function(ba){var ka=
r.getAttribLocation(w.ya,ba);w.attributes[ba]=ka;w.Qa.push(ka)});if(w.j){r.useProgram(w.ya);p=w;k=w.id;for(var P in w.j)r.uniform1i(w.C[P],w.j[P])}w.wa=!0}}function g(r){Ba.Dg(q);k!==r.id&&(q.O(),k=r.id,p=r,c.useProgram(r.ya),r.Qa.forEach(function(w){w!==0&&c.enableVertexAttribArray(w)}))}function l(r,w,H){e(r,w,H);r.useProgram(w.ya);r.enableVertexAttribArray(w.attributes.a0);k=-1;return p=w}function m(){return{g:"uniform sampler2D u1;varying vec2 vv0;void main(){gl_FragColor=texture2D(u1,vv0);}",
i:["u1"],j:{u1:0}}}var n=[],k=-1,p=null,v=0,D=!1,x="highp",u=["u1"],G=["u0"],J={u1:0},f={u0:0},z={u1:0,u2:1},L={u1:0,u3:1},C=["u1","u3","u4"],A=["u5","u6"],h={u5:0},t=["u7","u8","u9","u10"],I={u7:0,u8:1},M={s0:m(),s1:{g:"uniform sampler2D u1;varying vec2 vv0;void main(){gl_FragColor=texture2D(u1,vv0);}",i:u,j:J,precision:"lowp"},s2:{g:"uniform sampler2D u1,u2;varying vec2 vv0;void main(){vec4 a=texture2D(u2,vv0),b=texture2D(u1,vv0);gl_FragColor=a*b;}",i:["u1","u2"],j:z},s3:{g:"uniform sampler2D u1;uniform vec2 u11,u12;varying vec2 vv0;void main(){vec2 a=vv0*u11+u12;gl_FragColor=texture2D(u1,a);}",
i:["u1","u11","u12"],j:J,o:!0},s4:{g:"uniform sampler2D u1;varying vec2 vv0;const vec4 f=vec4(1.,1.,1.,1.);void main(){vec4 a=texture2D(u1,vv0);gl_FragColor=a.r*f;}",i:u,j:J},s5:{g:"uniform sampler2D u1,u2;varying vec2 vv0;const vec4 f=vec4(1.,1.,1.,1.);void main(){vec4 a=texture2D(u2,vv0),b=texture2D(u1,vv0);gl_FragColor=a.a*b.r*f;}",i:["u1","u2"],j:z},s6:{g:"uniform sampler2D u1;varying vec2 vv0;void main(){gl_FragColor=texture2D(u1,vec2(1.-vv0.x,vv0.y));}",i:u,j:J},s7:{g:"uniform sampler2D u1;varying vec2 vv0;void main(){gl_FragColor=texture2D(u1,vec2(vv0.x,1.-vv0.y));}",
i:u,j:J},s8:{g:"uniform sampler2D u0;uniform float u11;varying vec2 vv0;void main(){vec4 a=texture2D(u0,vv0);gl_FragColor=a*u11;}",i:["u0","u11"],j:f},s9:{g:"uniform sampler2D u0;uniform float u11;varying vec2 vv0;const vec4 f=vec4(.25),g=vec4(1.);void main(){vec4 a=texture2D(u0,vv0);float b=dot(a*u11,f);gl_FragColor=b*g;}",i:["u0","u11"],j:f},s10:{g:"uniform sampler2D u1;varying vec2 vv0;const vec4 e=vec4(1.,1.,1.,1.);void main(){float a=.25*dot(e,texture2D(u1,vv0));gl_FragColor=a*e;}",i:u,j:J},
s11:{g:"uniform sampler2D u1,u13;uniform float u14;const vec4 f=vec4(1.);varying vec2 vv0;void main(){vec4 a=texture2D(u1,vv0),b=texture2D(u13,vv0);gl_FragColor=mix(b,a,u14*f);}",i:["u1","u13","u14"],j:{u1:0,u13:1}},s12:{g:"uniform sampler2D u1;uniform vec2 u15;varying vec2 vv0;void main(){gl_FragColor=.25*(texture2D(u1,vv0+u15)+texture2D(u1,vv0+u15*vec2(1.,-1.))+texture2D(u1,vv0+u15*vec2(-1.,-1.))+texture2D(u1,vv0+u15*vec2(-1.,1.)));}",i:["u1","u15"],j:J},s13:{g:"uniform sampler2D u1;varying vec2 vv0;vec4 f(vec3 d){vec3 b=d/65536.,a=clamp(ceil(log2(b)),-128.,127.);float c=max(max(a.r,a.g),a.b),g=exp2(c);vec3 h=clamp(b/g,0.,1.);return vec4(h,(c+128.)/256.);}void main(){vec3 a=texture2D(u1,vv0).rgb;gl_FragColor=f(a);}",
i:u,j:J,o:!0},s14:{g:"uniform sampler2D u1;varying vec2 vv0;vec3 f(vec4 a){float b=a.a*256.-128.;vec3 c=a.rgb;return exp2(b)*c*65536.;}void main(){vec4 a=texture2D(u1,vv0);gl_FragColor=vec4(f(a),1.);}",i:u,j:J,o:!0},s15:{g:"uniform sampler2D u1;uniform vec4 u16;varying vec2 vv0;float g(float a,float b){a=floor(a)+.5;return floor(a/exp2(b));}float h(float a,float b){return floor(a*exp2(b)+.5);}float i(float a,float b){return mod(a,h(1.,b));}float e(float c,float a,float b){a=floor(a+.5),b=floor(b+.5);return i(g(c,a),b-a);}vec4 j(float a){if(a==0.)return vec4(0.,0.,0.,0.);float k=128.*step(a,0.);a=abs(a);float c=floor(log2(a)),l=c+127.,b=(a/exp2(c)-1.)*8388608.,d=l/2.,m=fract(d)*2.,n=floor(d),o=e(b,0.,8.),p=e(b,8.,16.),q=m*128.+e(b,16.,23.),r=k+n;return vec4(o,p,q,r)/255.;}void main(){float a=dot(texture2D(u1,vv0),u16);gl_FragColor=j(a);}",
i:["u1","u16"],j:J},s16:{g:"uniform sampler2D u0;varying vec2 vv0;const vec4 e=vec4(1.);void main(){vec4 a=texture2D(u0,vv0),b=e/(e+exp(-a));gl_FragColor=b;}",i:G,j:f,o:!0},s17:{g:"uniform sampler2D u0;varying vec2 vv0;const vec4 f=vec4(0.);void main(){vec4 a=texture2D(u0,vv0);gl_FragColor=max(f,a);}",i:G,j:f,o:!0},s18:{g:"uniform sampler2D u0;varying vec2 vv0;const vec4 e=vec4(1.);const float g=.797885,h=.044715;vec4 i(vec4 a){vec4 b=exp(-abs(a)),c=b*b,d=sign(a)*(e-c)/(e+c);return d;}void main(){vec4 a=texture2D(u0,vv0),b=a+h*a*a*a,c=i(g*b);gl_FragColor=.5*a*(e+c);}",
i:G,j:f,o:!0},s19:{g:"uniform sampler2D u0;varying vec2 vv0;const vec4 f=vec4(1.);void main(){vec4 a=texture2D(u0,vv0);gl_FragColor=mix(exp(-abs(a))-f,a,step(0.,a));}",i:G,j:f,o:!0},s20:{g:"uniform sampler2D u0;varying vec2 vv0;const vec4 f=vec4(1.);void main(){vec4 a=texture2D(u0,vv0),b=exp(a)-f;gl_FragColor=mix(.1*b,a,step(0.,a));}",i:G,j:f},s21:{g:"uniform sampler2D u0;const float e=3.141593;varying vec2 vv0;void main(){gl_FragColor=atan(e*texture2D(u0,vv0))/e;}",i:G,j:f},s22:{g:"uniform sampler2D u0;const float e=3.141593;varying vec2 vv0;void main(){gl_FragColor=2.*atan(e*texture2D(u0,vv0))/e;}",
i:G,j:f,o:!0},s23:{g:"uniform sampler2D u0,u17;uniform float u18;const vec2 e=vec2(.5);const float f=1e-5;const vec4 g=vec4(1.),i=vec4(0.);varying vec2 vv0;void main(){vec4 a=texture2D(u17,e);float b=u18*u18;vec4 c=max(b*a,f*g);gl_FragColor=texture2D(u0,vv0)/c;}",i:["u0","u17","u18"],j:{u0:0,u17:1},o:!0},s24:{g:"uniform sampler2D u1;uniform vec2 u19;varying vec2 vv0;void main(){float a=u19.x*u19.y;vec2 b=floor(vv0*a)/a,c=fract(vv0*a),d=floor(b*u19.y),f=floor(u19.x*fract(b*u19.y)),g=(f*u19.y+d)/a;gl_FragColor=texture2D(u1,g+c/a);}",
i:["u1","u19"],j:J},s25:{g:"uniform sampler2D u8,u7,u20;varying vec2 vv0;void main(){vec4 a=texture2D(u20,vv0);vec2 b=a.rg,c=a.ba;vec4 d=texture2D(u8,b),f=texture2D(u7,c);gl_FragColor=d*f;}",i:["u8","u7","u20"],j:Object.assign({u20:2},I),o:!0},s26:{g:"uniform float u9,u10;uniform sampler2D u8,u7;varying vec2 vv0;void main(){vec2 b=fract(vv0*u9);float a=u9*u10;vec2 c=(vec2(.5)+floor(a*vv0))/a;vec4 d=texture2D(u8,c),f=texture2D(u7,b);gl_FragColor=d*f;}",i:t,j:I},s27:{g:"uniform float u9,u10;uniform vec2 u21;uniform sampler2D u8,u7;varying vec2 vv0;void main(){float a=u9*u10;vec2 b=mod(vv0*u21,vec2(1.)),c=floor(vv0*u21)/u21,d=c+fract(b*u9)/u21,f=(vec2(.5)+floor(a*b))/a;vec4 g=texture2D(u8,f),h=texture2D(u7,d);gl_FragColor=g*h;}",
i:["u21"].concat(t),j:I,o:!0},s28:{g:"uniform float u9,u10;uniform sampler2D u8,u7,u23,u24,u25,u26;varying vec2 vv0;const vec4 e=vec4(1.,1.,1.,1.),g=vec4(1e-3,1e-3,1e-3,1e-3);void main(){vec2 c=fract(vv0*u9),d=vv0;float h=u9*u10;d=(.5+floor(h*vv0))/h;vec4 l=texture2D(u8,d),m=texture2D(u7,c),a=texture2D(u26,d);a=floor(.5+a*255.);vec4 n=texture2D(u23,c),o=texture2D(u24,c),p=texture2D(u25,c),i=step(-g,-a),b=e-i,j=b*step(-e-g,-a);b*=e-j;vec4 k=b*step(-2.*e-g,-a);b*=e-k;vec4 q=b,r=i*m+j*n+k*o+q*p;gl_FragColor=l*r;}",
i:["u26","u23","u24","u25"].concat(t),j:Object.assign({u26:3,u23:4,u24:5,u25:6},I),o:!0},s29:{g:"uniform sampler2D u8,u7,u3;uniform float u9,u27,u28,u10;uniform vec2 u29;varying vec2 vv0;const vec2 f=vec2(1.),l=vec2(0.);void main(){vec2 c=floor(u27*vv0),d=u27*vv0-c;float g=u9/u27;vec2 h=floor(d*g),i=d*g-h,j=(c+i)/u27;float m=u27*u10/u9;vec2 b=m*h,n=floor(.5*(u10-1.)*(f-u29));b=floor(u29*b+n);vec2 a=(b+i*u28)/u10;a+=.25/u10;vec2 k=step(a,f)*step(l,a);vec4 o=texture2D(u8,j),p=texture2D(u7,a),q=o*p,r=texture2D(u3,j);gl_FragColor=(q*u28*u28+r)*k.x*k.y;}",
i:["u27","u28","u3","u29"].concat(t),j:Object.assign({u3:2},I)},s30:{g:"uniform sampler2D u8,u7;varying vec2 vv0;void main(){vec4 a=texture2D(u8,vv0),b=texture2D(u7,vv0);gl_FragColor=a*b;}",i:["u8","u7"],j:I,o:!0},s31:{g:"uniform sampler2D u1,u3;uniform float u4;varying vec2 vv0;void main(){gl_FragColor=texture2D(u3,vv0)+u4*texture2D(u1,vv0);}",i:C,j:L},s32:{g:"uniform sampler2D u1,u3;uniform vec2 u21;uniform float u4;varying vec2 vv0;void main(){gl_FragColor=texture2D(u3,vv0*u21)+u4*texture2D(u1,vv0);}",
i:["u21"].concat(C),j:L,o:!0},s33:{g:"uniform sampler2D u1,u3;uniform float u4;varying vec2 vv0;const vec4 e=vec4(1.);void main(){vec4 a=texture2D(u3,vv0)+u4*texture2D(u1,vv0);vec2 h=mod(gl_FragCoord.xy,vec2(2.)),d=step(h,vec2(.75));float b=d.x+2.*d.y,c=step(2.5,b),g=(1.-c)*step(1.5,b),i=(1.-c)*(1.-g)*step(.5,b);a=mix(a,a.argb,i*e),a=mix(a,a.barg,g*e),a=mix(a,a.gbar,c*e),gl_FragColor=a;}",i:C,j:L,o:!0},s34:{g:"uniform sampler2D u1,u3;uniform vec2 u21;uniform float u4;varying vec2 vv0;const vec4 e=vec4(1.);void main(){vec4 a=texture2D(u3,vv0*u21)+u4*texture2D(u1,vv0);vec2 h=mod(gl_FragCoord.xy,vec2(2.)),d=step(h,vec2(.75));float b=d.x+2.*d.y,c=step(2.5,b),g=(1.-c)*step(1.5,b),i=(1.-c)*(1.-g)*step(.5,b);a=mix(a,a.argb,i*e),a=mix(a,a.barg,g*e),a=mix(a,a.gbar,c*e),gl_FragColor=a;}",
i:["u21"].concat(C),j:L,o:!0},s35:{g:"uniform sampler2D u1,u3;uniform float u4;varying vec2 vv0;const vec4 h=vec4(1.);void main(){vec4 a=texture2D(u3,vv0)+u4*texture2D(u1,vv0);vec2 b=floor(gl_FragCoord.xy);vec3 d=b.x*vec3(1.)+vec3(0.,1.,2.);float c=mod(b.y,2.);vec4 f=vec4(c,(1.-c)*step(mod(d,vec3(3.)),vec3(.5)));mat4 g=mat4(a.rgba,a.gbar,a.barg,a.argb);gl_FragColor=g*f;}",i:C,j:L,o:!0},s36:{g:"varying vec2 vv0;uniform sampler2D u1;const vec4 f=vec4(1.,1.,1.,1.),g=vec4(.299,.587,.114,0.);void main(){vec4 a=texture2D(u1,vv0);gl_FragColor=dot(a,g)*f;}",
i:u,j:J,precision:"lowp"},s37:{g:"varying vec2 vv0;uniform sampler2D u1;uniform float u30;const vec3 f=vec3(.299,.587,.114);void main(){vec3 a=texture2D(u1,vv0).rgb,b=texture2D(u1,vv0+vec2(0.,u30)).rgb,c=texture2D(u1,vv0+vec2(u30,u30)).rgb,d=texture2D(u1,vv0+vec2(u30,0.)).rgb;gl_FragColor=vec4(dot(a,f),dot(b,f),dot(c,f),dot(d,f));}",i:["u1","u30"],j:J,precision:"lowp"},s38:{g:"varying vec2 vv0;uniform sampler2D u1;uniform float u30;const vec3 f=vec3(.299,.587,.114);void main(){vec3 a=texture2D(u1,vv0).rgb,b=texture2D(u1,vv0+vec2(0.,u30)).rgb,c=texture2D(u1,vv0+vec2(u30,u30)).rgb,d=texture2D(u1,vv0+vec2(u30,0.)).rgb;gl_FragColor=vec4(a.r,b.g,c.b,dot(d,f));}",
i:["u1","u30"],j:J,precision:"lowp"},s39:{g:"varying vec2 vv0;uniform sampler2D u1,u2;uniform float u31;const vec4 f=vec4(1.,1.,1.,1.);void main(){vec4 a=vec4(0.);a-=texture2D(u1,vec2(vv0.x-u31,vv0.y-u31))*1.,a-=texture2D(u1,vec2(vv0.x-u31,vv0.y))*2.,a-=texture2D(u1,vec2(vv0.x-u31,vv0.y+u31))*1.,a+=texture2D(u1,vec2(vv0.x+u31,vv0.y-u31))*1.,a+=texture2D(u1,vec2(vv0.x+u31,vv0.y))*2.,a+=texture2D(u1,vec2(vv0.x+u31,vv0.y+u31))*1.;vec4 b=vec4(0.);b-=texture2D(u1,vec2(vv0.x-u31,vv0.y-u31))*1.,b-=texture2D(u1,vec2(vv0.x,vv0.y-u31))*2.,b-=texture2D(u1,vec2(vv0.x+u31,vv0.y-u31))*1.,b+=texture2D(u1,vec2(vv0.x-u31,vv0.y+u31))*1.,b+=texture2D(u1,vec2(vv0.x,vv0.y+u31))*2.,b+=texture2D(u1,vec2(vv0.x+u31,vv0.y+u31))*1.;vec3 c=sqrt(a.rgb*a.rgb+b.rgb*b.rgb);vec4 e=vec4(c,texture2D(u1,vv0).a),g=texture2D(u2,vv0);gl_FragColor=g.a*e.r*f;}",
i:["u1","u2","u31"],j:z,o:!0},s40:{g:"varying vec2 vv0;uniform sampler2D u1,u2;uniform float u31;const vec4 j=vec4(1.,1.,1.,1.);const vec2 k=vec2(1.,1.);void main(){float h=0.;vec2 l=k*u31,a,b;float c,d,i=0.;for(float e=-4.;e<=4.;e+=1.)for(float f=-4.;f<=4.;f+=1.)a=vec2(e,f),c=length(a)/2.,d=exp(-c*c),b=vv0+l*a,h+=d*texture2D(u1,b).r,i+=d;vec4 m=texture2D(u2,vv0);gl_FragColor=m.a*(texture2D(u1,b).r-h/i)*j;}",i:["u1","u2","u31"],j:z,o:!0},s41:{g:"uniform sampler2D u5;uniform vec2 u6;varying vec2 vv0;const vec2 f=vec2(1.),g=vec2(.5),h=vec2(1.,0.),i=vec2(0.,1.);void main(){vec2 a=f/u6,c=u6/2.,d=floor(vv0*c)+g,j=d/c,b=j-a*.5;vec4 k=texture2D(u5,b),l=texture2D(u5,b+a*h),m=texture2D(u5,b+a*i),n=texture2D(u5,b+a),o=max(k,l),p=max(m,n);gl_FragColor=max(o,p);}",
i:A,j:h,o:!0},s42:{g:"uniform sampler2D u5;uniform vec2 u6;varying vec2 vv0;const vec2 k=vec2(1.),l=vec2(1.,0.),m=vec2(0.,1.),n=vec2(2.,0.),o=vec2(0.,2.);vec4 e(vec2 b,vec2 a){vec4 c=texture2D(u5,a),d=texture2D(u5,a+b*l),f=texture2D(u5,a+b*m),g=texture2D(u5,a+b),h=max(c,d),i=max(f,g);return max(h,i);}void main(){vec2 a=k/u6,c=u6/4.,d=4.*floor(vv0*c),f=d/u6,b=f+a*.5;vec4 g=e(a,b),h=e(a,b+a*n),i=e(a,b+a*2.),p=e(a,b+a*o),q=max(g,h),r=max(i,p);gl_FragColor=max(q,r);}",i:A,j:h,o:!0},s43:{g:"uniform sampler2D u1;varying vec2 vv0;void main(){vec4 a=texture2D(u1,vv0);gl_FragColor=a*a;}",
i:["u1"],j:J,precision:"lowp",o:!0},s44:{g:"uniform sampler2D u1;uniform vec2 u15;varying vec2 vv0;const float e=15444.;void main(){vec4 a=1001./e*texture2D(u1,vv0-3.*u15)+2002./e*texture2D(u1,vv0-2.*u15)+3003./e*texture2D(u1,vv0-u15)+3432./e*texture2D(u1,vv0)+3003./e*texture2D(u1,vv0+u15)+2002./e*texture2D(u1,vv0+2.*u15)+1001./e*texture2D(u1,vv0+3.*u15);gl_FragColor=a;}",i:["u15","u1"],j:J,precision:"lowp",o:!0},s45:{g:"uniform sampler2D u1,u17,u32;varying vec2 vv0;const vec4 f=vec4(1.,1.,1.,1.);const float g=.1;void main(){vec4 a=texture2D(u17,vv0),b=texture2D(u32,vv0),c=texture2D(u1,vv0),d=max(f*g,b-a*a),h=sqrt(d);gl_FragColor=(c-a)/h;}",
i:["u1","u17","u32"],j:{u1:0,u17:1,u32:2},o:!0}},y={s46:{g:"uniform float u9,u33;uniform sampler2D u8,u7,u3;varying vec2 vv0;const vec2 ZERO2=vec2(0.),ONE2=vec2(1.),HALF2=vec2(.5),EPS2=vec2(1e-5);void main(){vec4 sum=texture2D(u3,vv0);float toSparsity=1.1111;vec2 uvFrom,uvWeight,xyPatch=ZERO2,eps2=EPS2/u9,xyTo=floor(vv0*u9+eps2);float weightSize=toSparsity*u9;vec2 halfFromSparsity=ONE2*(toSparsity-1.)/2.;for(float patch_x=0.;patch_x<1.1111;patch_x+=1.){xyPatch.x=patch_x;for(float patch_y=0.;patch_y<1.1111;patch_y+=1.)xyPatch.y=patch_y,uvFrom=(xyTo+HALF2+u33*(xyPatch-halfFromSparsity))/u9,uvFrom+=step(uvFrom,-eps2),uvFrom-=step(ONE2-eps2,uvFrom),uvWeight=(xyTo*toSparsity+xyPatch+HALF2)/weightSize,sum+=texture2D(u8,uvWeight)*texture2D(u7,uvFrom);}gl_FragColor=sum,gl_FragColor*=2.2222;}",
i:["u9","u8","u7","u3","u33"],Vb:["1.1111","gl_FragColor\\*=2.2222;"]},s47:{g:"uniform float u9,u33,u10;uniform sampler2D u8,u7,u3;varying vec2 vv0;const vec2 ZERO2=vec2(0.),ONE2=vec2(1.),HALF2=vec2(.5),EPS2=vec2(1e-4);void main(){vec4 sum=texture2D(u3,vv0);float fromSparsity=1.1111,shrinkFactor=3.3333;vec2 uvFrom,uvWeight,xyFrom,xyPatchTo,xyPatch=ZERO2,xyShrink=ZERO2,eps2=EPS2/u10,xyTo=floor(vv0*u9+eps2);float weightSize=fromSparsity*u10;vec2 halfFromSparsity=ONE2*(fromSparsity-1.)/2.;float toSparsity=weightSize/u9;vec2 xyFrom0=xyTo*shrinkFactor;for(float patch_x=0.;patch_x<1.1111;patch_x+=1.){xyPatch.x=patch_x;for(float patch_y=0.;patch_y<1.1111;patch_y+=1.){xyPatch.y=patch_y;for(float shrink_x=0.;shrink_x<3.3333;shrink_x+=1.){xyShrink.x=shrink_x;for(float shrink_y=0.;shrink_y<3.3333;shrink_y+=1.)xyShrink.y=shrink_y,xyFrom=xyFrom0+xyShrink+shrinkFactor*u33*(xyPatch-halfFromSparsity),uvFrom=(xyFrom+HALF2)/u10,uvFrom+=step(uvFrom,-eps2),uvFrom-=step(ONE2-eps2,uvFrom),xyPatchTo=xyPatch*shrinkFactor+xyShrink,uvWeight=(xyTo*toSparsity+xyPatchTo+HALF2)/weightSize,sum+=texture2D(u8,uvWeight)*texture2D(u7,uvFrom);}}}gl_FragColor=sum,gl_FragColor*=2.2222;}",
i:"u9 u10 u8 u7 u3 u33".split(" "),Vb:["1.1111","gl_FragColor\\*=2.2222;","3.3333"]}},N=null,O=null,q={Jb:function(){return D},A:function(){if(!D){N=Db.hc(M,2);O=Db.hc(y,2);x="highp";c.getShaderPrecisionFormat&&(c.getShaderPrecisionFormat(c.FRAGMENT_SHADER,c.MEDIUM_FLOAT),c.getShaderPrecisionFormat(c.FRAGMENT_SHADER,c.LOW_FLOAT));for(var r in N)e(c,N[r],r);B.set("s0");c.enableVertexAttribArray(0);D=!0}},ob:function(r){r.forEach(function(w){q.pd(w)})},pd:function(r){N[r.id]=r;e(c,r,r.id)},Yf:function(r,
w,H){w||(w=r);N[w]=Object.create(O[r]);N[w].cg=!0;O[r].Vb&&O[r].Vb.forEach(function(P,ba){var ka="";P.substring(0,7)==="gl_Frag"?(P=new RegExp("[,;]?"+P,"g"),ka=";"):P=new RegExp(P,"g");N[w].g=N[w].g.replace(P,ka+H[ba])});e(c,N[w],w)},set:function(r){var w=N[r];w.o&&(w.o=!1,e(c,w,r));g(w)},ib:function(r){return l(r,m(),"s48")},Wc:function(r){return l(r,{g:"void main(){gl_FragColor=vec4(.5,.5,.5,.5);}",i:[],precision:x},"s49")},Af:function(r){return typeof N[r]==="undefined"?!1:N[r].wa},O:function(){k!==
-1&&(k=-1,p.Qa.forEach(function(r){r!==0&&c.disableVertexAttribArray(r)}))},Xc:function(){var r=0;p.Qa.forEach(function(w,H){H=p.Pa[H];c.vertexAttribPointer(w,H,c.FLOAT,!1,p.gd,r);r+=4*H})},Ad:function(){c.enableVertexAttribArray(0)},Ka:function(){q.Wb(c)},Wb:function(r){r.vertexAttribPointer(p.Qa[0],2,r.FLOAT,!1,8,0)},Ji:function(r,w){c.uniform1i(p.C[r],w)},F:function(r,w){c.uniform1f(p.C[r],w)},P:function(r,w,H){c.uniform2f(p.C[r],w,H)},Eg:function(r,w){c.uniform2fv(p.C[r],w)},Gg:function(r,w){c.uniform3fv(p.C[r],
w)},Fg:function(r,w,H,P){c.uniform3f(p.C[r],w,H,P)},Hg:function(r,w,H,P,ba){c.uniform4f(p.C[r],w,H,P,ba)},Ce:function(r,w){c.uniform4fv(p.C[r],w)},De:function(r,w){c.uniformMatrix2fv(p.C[r],!1,w)},Ki:function(r,w){c.uniformMatrix3fv(p.C[r],!1,w)},Li:function(r,w){c.uniformMatrix4fv(p.C[r],!1,w)},S:function(r,w){q.set(r);w.forEach(function(H){switch(H.type){case "4f":c.uniform4fv(p.C[H.name],H.value);break;case "3f":c.uniform3fv(p.C[H.name],H.value);break;case "2f":c.uniform2fv(p.C[H.name],H.value);
break;case "1f":c.uniform1f(p.C[H.name],H.value);break;case "1i":c.uniform1i(p.C[H.name],H.value);break;case "mat2":c.uniformMatrix2fv(p.C[H.name],!1,H.value);break;case "mat3":c.uniformMatrix3fv(p.C[H.name],!1,H.value);break;case "mat4":c.uniformMatrix4fv(p.C[H.name],!1,H.value)}})},Uh:function(){return"lowp"},m:function(){q.O();c.disableVertexAttribArray(0);for(var r in N){var w=N[r];w.wa&&(w.wa=!1,c.deleteProgram(w.ya));w.cg&&delete N[r]}n.forEach(function(H){c.deleteShader(H)});n.splice(0);v=
0;D=!1;p=null;k=-1}};return q}(),c=null,Ha=function(){function a(u){console.log("ERROR in ContextFF: ",u);return!1}function b(){return navigator.userAgent&&navigator.userAgent.indexOf("forceWebGL1")!==-1}function d(u,G,J){u.setAttribute("width",G);u.setAttribute("height",J)}function e(u){if(b())return!1;var G=document.createElement("canvas");d(G,5,5);var J=null;try{J=G.getContext("webgl2",u)}catch(f){return!1}if(!J)return!1;g(J);aa.Bd(J);u=aa.ic(J);if(!u.ma&&!u.pa)return Ea.m(),aa.reset(),!1;J=Ea.rd(J,
u);Ea.m();aa.reset();return J?!0:!1}function g(u){u.clearColor(0,0,0,0);u.disable(u.DEPTH_TEST);u.disable(u.BLEND);u.disable(u.DITHER);u.disable(u.STENCIL_TEST);u.disable(u.CULL_FACE);u.GENERATE_MIPMAP_HINT&&u.FASTEST&&u.hint(u.GENERATE_MIPMAP_HINT,u.FASTEST);u.disable(u.SAMPLE_ALPHA_TO_COVERAGE);u.disable(u.SAMPLE_COVERAGE);u.depthFunc(u.LEQUAL);u.clearDepth(1)}var l=null,m=null,n=null,k=!0,p=null,v=null,D=[],x={J:function(){return l.width},ba:function(){return l.height},Lh:function(){return l},
Jh:function(){return c},qa:function(){return k},flush:function(){c.flush()},Rd:function(){xa.reset();xa.ia();x.xg()},xg:function(){Z.reset();Q.reset();B.O();B.Ad();c.disable(c.DEPTH_TEST);c.disable(c.BLEND);Q.Ea();B.Ka()},If:function(){p||(p=new Uint8Array(l.width*l.height*4));c.readPixels(0,0,l.width,l.height,c.RGBA,c.UNSIGNED_BYTE,p);return p},Mh:function(){return l.toDataURL("image/jpeg")},Nh:function(){xa.N();m||(m=document.createElement("canvas"),n=m.getContext("2d"));d(m,l.width,l.height);for(var u=
x.If(),G=n.createImageData(m.width,m.height),J=m.width,f=m.height,z=G.data,L=0;L<f;++L)for(var C=f-L-1,A=0;A<J;++A){var h=4*(L*J+A),t=4*(C*J+A);z[h]=u[t];z[h+1]=u[t+1];z[h+2]=u[t+2];z[h+3]=u[t+3]}n.putImageData(G,0,0);return m.toDataURL("image/png")},Hf:function(u){!m&&u&&(m=document.createElement("canvas"),n=m.getContext("2d"));var G=u?m:document.createElement("canvas");d(G,l.width,l.height);(u?n:G.getContext("2d")).drawImage(l,0,0);return G},A:function(u){u=Object.assign({oa:null,Kc:null,ub:null,
wd:null,width:512,height:512,premultipliedAlpha:!1,Vd:!0,antialias:!1,debug:!1,nh:!1},u);u.oa?(c=u.oa,l=u.oa.canvas):u.wd&&!u.ub?l=document.getElementById(u.wd):u.ub&&(l=u.ub);l||(l=document.createElement("canvas"));l.width=u.width;l.height=u.height;if(c)k=c instanceof WebGL2RenderingContext;else{k=!0;var G={antialias:u.antialias,alpha:!0,preserveDrawingBuffer:!0,premultipliedAlpha:u.premultipliedAlpha,stencil:!1,depth:u.Vd,failIfMajorPerformanceCaveat:!0,powerPreference:"high-performance"};navigator&&
navigator.userAgent&&navigator.userAgent.indexOf("noAntialiasing")!==-1&&(G.antialias=!1);var J=e(G);J||!G.antialias||b()||(G.antialias=!1,J=e(G));J&&(c=l.getContext("webgl2",G));c?k=!0:((c=l.getContext("webgl",G))||(c=l.getContext("experimental-webgl",G)),k=!1)}if(!c)return a("WebGL1 and 2 are not enabled");u.Kc&&l.addEventListener&&(v=u.Kc,l.addEventListener("webglcontextlost",v,!1));if(!aa.A())return a("Not enough GL capabilities");g(c);B.A();Q.A();Ea.rd(c,aa.Gf());D.forEach(function(f){f(c)});
D.splice(0);return!0},bh:function(){return new Promise(function(u){c?u(c):D.push(u)})},m:function(){c&&(aa.m(),B.m(),Ea.m());v&&(l.removeEventListener("webglcontextlost",v,!1),v=null);c=p=n=m=l=null;D.splice(0)}};return x}(),Ba=function(){function a(){b===null&&(typeof B!=="undefined"?b=B:typeof JEShaders!=="undefined"&&(b=JEShaders))}var b=null;return{reset:function(){b=null},Dg:function(d){b!==d&&(b&&b.O(),b=d)},Jb:function(){return b.Jb()},Ka:function(){return b.Ka()},Wb:function(d){return b.Wb(d)},
Xc:function(){return b.Xc()},O:function(){return b.O()},set:function(d){a();return b.set(d)},ib:function(d){a();return b.ib(d)},Wc:function(d){a();return b.Wc(d)}}}(),Da=function(){function a(q){c.bindTexture(c.TEXTURE_2D,q)}function b(q){M[0]=q;q=y[0];var r=q>>16&32768,w=q>>12&2047,H=q>>23&255;return H<103?r:H>142?r|31744|((H==255?0:1)&&q&8388607):H<113?(w|=2048,r|(w>>114-H)+(w>>113-H&1)):r=(r|H-112<<10|w>>1)+(w&1)}function d(q){var r=new Uint16Array(q.length);q.forEach(function(w,H){r[H]=b(w)});
return r}function e(){if(N.rc!==null)return N.rc;var q=l(d([.5,.5,.5,.5]),!0);return q===null?!0:N.rc=q}function g(){if(N.sc!==null)return N.sc;var q=l(new Uint8Array([127,127,127,127]),!1);return q===null?!0:N.sc=q}function l(q,r){if(!Ba.Jb()||!J)return null;var w=null,H=Math.sqrt(q.length/4);try{var P=c.getError();if(P==="FUCKING_BIG_ERROR")return!1;w=O.instance({isFloat:!1,U:r,array:q,width:H});P=c.getError();if(P!==c.NO_ERROR)return!1}catch(ba){return!1}ua.N();c.viewport(0,0,H,H);c.clearColor(0,
0,0,0);c.clear(c.COLOR_BUFFER_BIT);Ba.set("s0");w.Da(0);ta.l(!0,!0);q=4*H*H;r=new Uint8Array(q);c.readPixels(0,0,H,H,c.RGBA,c.UNSIGNED_BYTE,r);H=!0;for(P=0;P<q;++P)H=H&&Math.abs(r[P]-127)<3;w.remove();ua.ia();return H}var m=0,n=null,k=0,p=null,v=null,D=null,x=null,u=null,G=null,J=!1,f=[],z={isFloat:!1,isPot:!0,isLinear:!1,isMipmap:!1,ae:!1,isAnisotropicFiltering:!1,isMirrorX:!1,isMirrorY:!1,isSrgb:!1,isKeepArray:!1,isFlipY:null,width:0,height:0,url:null,array:null,data:null,L:null,qc:null,bg:!1,U:!1,
G:null,Mb:4,Cc:0},L=!1,C=null,A=null,h=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]],t=!1,I=!1,M=new Float32Array(1),y=new Int32Array(M.buffer),N={rc:null,sc:null},O={A:function(){J||(u=[c.RGBA,null,c.RGBA,c.RGBA],G=[c.RGBA,null,c.RGBA,c.RGBA],n=[c.TEXTURE0,c.TEXTURE1,c.TEXTURE2,c.TEXTURE3,c.TEXTURE4,c.TEXTURE5,c.TEXTURE6,c.TEXTURE7],t=typeof JEContext!=="undefined",I=typeof aa!=="undefined",t&&JEContext.ni()&&n.push(c.TEXTURE8,c.TEXTURE9),p=[-1,-1,-1,-1,-1,-1,-1,-1],x=[c.UNSIGNED_BYTE,c.FLOAT,c.FLOAT],
J=!0)},Gi:function(){c.texParameteri(c.TEXTURE_2D,c.TEXTURE_MAG_FILTER,c.LINEAR);c.texParameteri(c.TEXTURE_2D,c.TEXTURE_MIN_FILTER,c.LINEAR)},Hi:function(){c.texParameteri(c.TEXTURE_2D,c.TEXTURE_MAG_FILTER,c.NEAREST);c.texParameteri(c.TEXTURE_2D,c.TEXTURE_MIN_FILTER,c.NEAREST)},Xf:function(){if(!v){for(var q=new Float32Array(16384),r=0;r<16384;++r)q[r]=2*Math.random()-1;v={random:O.instance({isFloat:!0,isPot:!0,array:q,width:64}),Le:O.instance({isFloat:!1,isPot:!0,width:1,array:new Uint8Array([0,
0,0,0])})}}O.Vg()},Ae:function(q){c.framebufferTexture2D(ua.oc(),c.COLOR_ATTACHMENT0,c.TEXTURE_2D,q,0)},ci:function(){return v.Le},Vg:function(){x[1]=aa.nc(c)},Bg:function(){G=u=[c.RGBA,c.RGBA,c.RGBA,c.RGBA]},te:function(q){B.set("s1");ua.N();var r=q.J(),w=q.ba();c.viewport(0,0,r,w);q.h(0);ta.l(!1,!1)},xi:function(q,r){O.te(q);c.readPixels(0,0,q.J(),q.ba(),c.RGBA,c.UNSIGNED_BYTE,r)},yi:function(q,r){O.te(q);return aa.Ub(0,0,q.J(),q.ba(),r)},Id:function(q,r,w,H,P,ba,ka){q.activeTexture(q.TEXTURE0);
var Ja=q.createTexture();q.bindTexture(q.TEXTURE_2D,Ja);P=P instanceof Float32Array?P:new Float32Array(P);q.texParameteri(q.TEXTURE_2D,q.TEXTURE_WRAP_S,q.CLAMP_TO_EDGE);q.texParameteri(q.TEXTURE_2D,q.TEXTURE_WRAP_T,q.CLAMP_TO_EDGE);q.texParameteri(q.TEXTURE_2D,q.TEXTURE_MAG_FILTER,q.NEAREST);q.texParameteri(q.TEXTURE_2D,q.TEXTURE_MIN_FILTER,q.NEAREST);q.pixelStorei(q.UNPACK_FLIP_Y_WEBGL,ba);q.texImage2D(q.TEXTURE_2D,0,q.RGBA,w,H,0,q.RGBA,q.FLOAT,P);q.bindTexture(q.TEXTURE_2D,null);q.pixelStorei(q.UNPACK_FLIP_Y_WEBGL,
!1);ka&&(ua.ia(),B.ib(q));q.viewport(0,0,w,H);q.framebufferTexture2D(q.FRAMEBUFFER,q.COLOR_ATTACHMENT0,q.TEXTURE_2D,r,0);q.bindTexture(q.TEXTURE_2D,Ja);ka?ta.l(!0,!0):Q.zb(q);q.deleteTexture(Ja);J&&(p[0]=-1,D=null,m=0)},cc:function(q){q!==m&&(c.activeTexture(n[q]),m=q)},instance:function(q){var r;function w(){T=F.L.videoWidth!==void 0?F.L.videoWidth:F.L.width;U=F.L.videoHeight!==void 0?F.L.videoHeight:F.L.height}function H(K){var S=c.getError();if(S==="FUCKING_BIG_ERROR")return!1;c.texImage2D(c.TEXTURE_2D,
0,pa,ja,la,K);S=c.getError();S!==c.NO_ERROR&&ja!==c.RGBA&&(ja=c.RGBA,c.texImage2D(c.TEXTURE_2D,0,pa,ja,la,K));return!0}function P(){if(!Sb){a(va);Fa&&c.pixelStorei(c.UNPACK_FLIP_Y_WEBGL,Fa);F.isPot?(c.texParameteri(c.TEXTURE_2D,c.TEXTURE_WRAP_S,F.isMirrorX?c.MIRRORED_REPEAT:c.REPEAT),c.texParameteri(c.TEXTURE_2D,c.TEXTURE_WRAP_T,F.isMirrorY?c.MIRRORED_REPEAT:c.REPEAT)):(c.texParameteri(c.TEXTURE_2D,c.TEXTURE_WRAP_S,c.CLAMP_TO_EDGE),c.texParameteri(c.TEXTURE_2D,c.TEXTURE_WRAP_T,c.CLAMP_TO_EDGE));F.isAnisotropicFiltering&&
typeof JESETTINGS!=="undefined"&&c.texParameterf(c.TEXTURE_2D,JEContext.Ph().TEXTURE_MAX_ANISOTROPY_EXT,JESETTINGS.Yg);c.texParameteri(c.TEXTURE_2D,c.TEXTURE_MAG_FILTER,F.isLinear?c.LINEAR:c.NEAREST);var K=F.isMipmap&&!Wa;c.texParameteri(c.TEXTURE_2D,c.TEXTURE_MIN_FILTER,F.ae?c.LINEAR_MIPMAP_LINEAR:F.isLinear?K?c.NEAREST_MIPMAP_LINEAR:c.LINEAR:K?c.NEAREST_MIPMAP_NEAREST:c.NEAREST);ja=u[F.Mb-1];pa=G[F.Mb-1];la=x[Eb];aa.qa()&&(K=aa.Jf(),ja===c.RGBA&&la===c.FLOAT?F.isMipmap||F.isLinear?pa=Ea.Lf(c):aa.sd()?
K&&(pa=K):pa=c.RGBA16F||c.RGBA:ja===c.RGB&&la===c.FLOAT&&K&&(pa=K,ja=c.RGBA));if(F.U&&!F.isFloat||F.isFloat&&F.isMipmap&&Ea.gg())pa=aa.Kf(),la=aa.nc(c);F.Cc&&(lb=F.Cc);F.isSrgb&&F.Mb===4&&(ja=JEContext.ai());if(F.L)H(F.L);else if(F.url)H(Ra);else if(za){K=za;try{c.getError()!=="FUCKING_BIG_ERROR"&&(c.texImage2D(c.TEXTURE_2D,0,pa,T,U,0,ja,la,K),c.getError()!==c.NO_ERROR&&(c.texImage2D(c.TEXTURE_2D,0,pa,T,U,0,ja,la,null),c.getError()!==c.NO_ERROR&&c.texImage2D(c.TEXTURE_2D,0,c.RGBA,T,U,0,c.RGBA,c.UNSIGNED_BYTE,
null)))}catch(Jc){c.texImage2D(c.TEXTURE_2D,0,pa,T,U,0,ja,la,null)}F.isKeepArray||(za=null)}else K=c.getError(),K!=="FUCKING_BIG_ERROR"&&(c.texImage2D(c.TEXTURE_2D,0,pa,T,U,0,ja,la,null),K=c.getError(),K!==c.NO_ERROR&&(ja=c.RGBA,F.U&&la!==c.FLOAT&&(la=c.FLOAT,c.texImage2D(c.TEXTURE_2D,0,pa,T,U,0,ja,la,null))));if(F.isMipmap)if(!Wa&&da)da.Ab(),mb=!0;else if(Wa){K=Math.log2(Math.min(T,U));Xa=Array(1+K);Xa[0]=va;for(var S=1;S<=K;++S){var sa=Math.pow(2,S),W=T/sa;sa=U/sa;var Sa=c.createTexture();a(Sa);
c.texParameteri(c.TEXTURE_2D,c.TEXTURE_MIN_FILTER,c.NEAREST);c.texParameteri(c.TEXTURE_2D,c.TEXTURE_MAG_FILTER,c.NEAREST);c.texImage2D(c.TEXTURE_2D,0,pa,W,sa,0,ja,la,null);a(null);Xa[S]=Sa}mb=!0}a(null);p[m]=-1;Fa&&c.pixelStorei(c.UNPACK_FLIP_Y_WEBGL,!1);ab=!0;F.G&&da&&(F.G(da),F.G=null)}}function ba(){for(var K=T*U,S=2*K,sa=3*K,W=0;W<K;++W)Ca[0][W]=bb[W],Ca[1][W]=bb[W+K],Ca[2][W]=bb[W+S],Ca[3][W]=bb[W+sa]}function ka(){var K=T*U*4;Ka=[new Uint8Array(K),new Uint8Array(K),new Uint8Array(K),new Uint8Array(K)];
Ca=[new Float32Array(Ka[0].buffer),new Float32Array(Ka[1].buffer),new Float32Array(Ka[2].buffer),new Float32Array(Ka[3].buffer)];nb=new Uint8Array(K*4);bb=new Float32Array(nb.buffer);cb=!0}function Ja(){r=new Uint8Array(T*U*4);Tb=new Float32Array(r.buffer);Fb=!0}var F=Object.assign({},z,q),db=k++;F.isFlipY===null&&(F.isFlipY=F.url?!0:!1);F.data&&(F.array=typeof F.data==="string"?ac(F.data):F.isFloat?new Float32Array(F.data):new Uint8Array(F.data),F.isFlipY=!1);var Eb=0,Ub=F.L?!0:!1,eb=null,Gb=null,
Vb=!1;F.U=F.U||F.isFloat;F.U&&(Eb=1);!F.bg&&F.isFloat&&I&&!aa.sd()&&(F.isFloat=!1);F.isFloat&&(Eb=2);F.isAnisotropicFiltering&&t&&!JEContext.gi()&&(F.isAnisotropicFiltering=!1);var va=F.qc||c.createTexture(),Ra=null,za=!1,T=0,U=0,ab=!1,Sb=!1,cb=!1,Ca=null,Ka=null,nb=null,bb=null,pa=null,ja=null,la=null,Fa=F.isFlipY,wc=(q=F.U&&F.isMipmap)&&Ea.Ye(),Wa=q&&!wc?!0:!1,Xa=null,lb=-1,Wb=-1,mb=!1;var Fb=!1;var Tb=r=null;F.width&&(T=F.width,U=F.height?F.height:T);var da={get:function(){return va},J:function(){return T},
ba:function(){return U},di:function(){return F.url},hi:function(){return F.isFloat},ji:function(){return F.U},Fi:function(K){va=K},ki:function(){return F.isLinear},Ab:function(){c.generateMipmap(c.TEXTURE_2D)},Ve:function(K,S){Wa?(K||(K=da.Md()),O.cc(S),a(Xa[K]),p[S]=-1):da.h(S)},Md:function(){lb===-1&&(lb=Math.log2(T));return lb},Be:function(K){c.TEXTURE_MAX_LEVEL&&c.texParameteri(c.TEXTURE_2D,c.TEXTURE_MAX_LEVEL,K)},Ef:function(K){K||(K=da.Md());if(Wa){B.set("s12");O.cc(0);for(var S=T,sa=U,W=1;W<=
K;++W)S/=2,sa/=2,B.P("u15",.25/S,.25/sa),c.viewport(0,0,S,sa),a(Xa[W-1]),c.framebufferTexture2D(ua.oc(),c.COLOR_ATTACHMENT0,c.TEXTURE_2D,Xa[W],0),ta.l(!1,W===1);p[0]=-1}else K!==Wb&&(Wb=K,da.Be(K)),da.Ab()},Ii:function(K){(Ub=!uc.Qg(K))?(za=null,F.L=K,w()):za=K},h:function(K){if(!ab)return!1;O.cc(K);if(p[K]===db)return!1;a(va);p[K]=db;return!0},Da:function(K){c.activeTexture(n[K]);m=K;a(va);p[K]=db},v:function(){D=da;O.Ae(va)},M:function(){c.viewport(0,0,T,U);D=da;O.Ae(va)},ed:O.ed,ze:function(K,
S){T=K;U=S},resize:function(K,S){da.ze(K,S);P()},clone:function(K){K=O.instance({width:T,height:U,U:F.U,isFloat:F.isFloat,isLinear:F.isLinear,isMirrorY:F.isMirrorY,isFlipY:K?!Fa:Fa,isPot:F.isPot});Ba.set("s0");ua.ia();K.M();da.h(0);ta.l(!0,!0);return K},Ig:function(){c.viewport(0,0,T,U)},remove:function(){c.deleteTexture(va);Sb=!0;f.splice(f.indexOf(da),1);da=null},refresh:function(){da.Da(0);Fa&&c.pixelStorei(c.UNPACK_FLIP_Y_WEBGL,!0);Ub?c.texImage2D(c.TEXTURE_2D,0,pa,ja,la,F.L):c.texImage2D(c.TEXTURE_2D,
0,pa,T,U,0,ja,la,za);Fa&&c.pixelStorei(c.UNPACK_FLIP_Y_WEBGL,!1)},re:function(){cb||ka();c.readPixels(0,0,T,U*4,c.RGBA,c.UNSIGNED_BYTE,nb);ba();return Ca},ug:function(){cb||ka();return aa.Ub(0,0,T,U*4,nb).then(function(){ba();return Ca})},wg:function(){Fb||Ja();c.readPixels(0,0,T,U,c.RGBA,c.UNSIGNED_BYTE,r);return Tb},vg:function(){Fb||Ja();return aa.Ub(0,0,T,U,r)},yd:function(K){ua.N();B.set("s15");da.h(0);if(K)c.viewport(0,0,T,U),B.Hg("u16",.25,.25,.25,.25),ta.l(!1,!0);else for(K=0;K<4;++K)c.viewport(0,
U*K,T,U),B.Ce("u16",h[K]),ta.l(!1,K===0)},Ma:function(K){var S=la===x[0]&&!g();a(va);Fa&&c.pixelStorei(c.UNPACK_FLIP_Y_WEBGL,!0);S?(Vb||(eb=document.createElement("canvas"),eb.width=T,eb.height=U,Gb=eb.getContext("2d"),Gb.createImageData(T,U),Vb=!0),null.data.set(K),Gb.putImageData(null,0,0),c.texImage2D(c.TEXTURE_2D,0,pa,ja,la,eb)):c.texImage2D(c.TEXTURE_2D,0,pa,T,U,0,ja,la,K);p[m]=db;Fa&&c.pixelStorei(c.UNPACK_FLIP_Y_WEBGL,!1)},Si:function(K,S){a(va);S&&c.pixelStorei(c.UNPACK_FLIP_Y_WEBGL,!0);c.texImage2D(c.TEXTURE_2D,
0,pa,ja,la,K);p[m]=db;S&&c.pixelStorei(c.UNPACK_FLIP_Y_WEBGL,!1)},Ei:function(K,S){var sa=T*U,W=sa*4;K=F.U?K?"RGBE":"JSON":"RGBA";S&&(K=S);S=aa.qa()&&!1;var Sa=null;switch(K){case "RGBE":Sa="s13";break;case "JSON":Sa=S?"s0":"s15";break;case "RGBA":case "RGBAARRAY":Sa="s7"}cb||(K==="RGBA"||K==="RGBE"||K==="RGBAARRAY"?(Ka=new Uint8Array(W),cb=!0):K!=="JSON"||S||ka());ua.N();B.set(Sa);da.h(0);W=null;if(K==="RGBA"||K==="RGBE"||K==="RGBAARRAY"){c.viewport(0,0,T,U);ta.l(!0,!0);c.readPixels(0,0,T,U,c.RGBA,
c.UNSIGNED_BYTE,Ka);if(K==="RGBAARRAY")return{data:Ka};L||(C=document.createElement("canvas"),A=C.getContext("2d"),L=!0);C.width=T;C.height=U;sa=A.createImageData(T,U);sa.data.set(Ka);A.putImageData(sa,0,0);W=C.toDataURL("image/png")}else if(K==="JSON")if(S)W=new Float32Array(sa),c.viewport(0,0,T,U),ta.l(!0,!0),c.readPixels(0,0,T,U,c.RGBA,c.FLOAT,W);else{for(W=0;W<4;++W)c.viewport(0,U*W,T,U),B.Ce("u16",h[W]),ta.l(!W,!W);da.re();W=Array(sa);for(S=0;S<sa;++S)W[4*S]=Ca[0][S],W[4*S+1]=Ca[1][S],W[4*S+
2]=Ca[2][S],W[4*S+3]=Ca[3][S]}return{format:K,data:W,width:T,height:U,isMirrorY:F.isMirrorY,isFlipY:K==="RGBA"?F.isFlipY:!F.isFlipY}}};F.isMipmap&&!Wa&&ab&&!mb&&(da.Ab(),mb=!0);if(F.url)a(va),c.texImage2D(c.TEXTURE_2D,0,c.RGBA,1,1,0,c.RGBA,c.UNSIGNED_BYTE,null),Ra=new Image,Ra.crossOrigin="anonymous",Ra.src=F.url,Ra.onload=function(){T=Ra.width;U=Ra.height;P()};else if(F.L){var Xb=function(){w();T?P():setTimeout(Xb,1)};Xb()}else F.array?(F.U&&!F.isFloat?F.array instanceof Uint16Array?(za=F.array,
P()):e()?(za=d(F.array),P()):(P(),O.Id(c,va,da.J(),da.ba(),F.array,Fa,!0)):(za=F.isFloat?F.array instanceof Float32Array?F.array:new Float32Array(F.array):F.array instanceof Uint8Array?F.array:new Uint8Array(F.array),P()),F.isKeepArray||(za&&za!==F.array&&(za=null),delete F.array)):F.qc?ab=!0:P();da.Zh=da.J;F.G&&ab&&(F.G(da),F.G=null);f.push(da);return da},N:function(q){q!==m&&(c.activeTexture(n[q]),m=q);p[q]=-1;a(null)},ah:function(q){v.random.h(q)},ed:function(){D=null;c.framebufferTexture2D(ua.oc(),
c.COLOR_ATTACHMENT0,c.TEXTURE_2D,null,0)},reset:function(){m!==0&&c.activeTexture(n[0]);for(var q=0;q<n.length;++q)p[q]=-1;m=-1},Bi:function(){m=-1},Sg:function(){for(var q=0;q<n.length;++q)O.N(q)},Jd:function(){v&&(v.random.remove(),v.Le.remove())},Ri:function(q,r){if(q.format==="RGBA"||q.format==="RGBE"){var w=new Image;w.src=q.data;w.onload=function(){O.instance({isMirrorY:q.isMirrorY,isFlipY:q.isFlipY,isFloat:!1,L:w,G:function(H){if(q.format==="RGBA")r(H);else{var P=q.width,ba=q.height,ka=O.instance({isMirrorY:q.isMirrorY,
isFloat:!0,width:P,height:ba,isFlipY:q.isFlipY});ua.ia();c.viewport(0,0,P,ba);B.set("s14");ka.v();H.h(0);ta.l(!0,!0);O.N(0);r(ka);aa.flush();H.remove()}}})}}else q.format==="JSON"?r(O.instance({isFloat:!0,isFlipY:q.isFlipY,width:q.width,height:q.height,array:new Float32Array(q.data)})):r(!1)},ef:d,m:function(){D&&(xa.ia(),O.ed(),xa.N());O.Sg();f.slice(0).forEach(function(q){q.remove()});f.splice(0);J=!1;k=0;typeof Ea!=="undefined"&&Ea.m();v=null}};return O}(),jc=function(){return{instance:function(a){var b=
[Da.instance(a),Da.instance(a)],d=[b[1],b[0]],e=d,g={zg:function(l){e[1].v();e[0].h(l);g.Ge()},Ag:function(l){e[1].M();e[0].h(l);g.Ge()},Ge:function(){e=e===b?d:b},refresh:function(){e[0].refresh();e[1].refresh()},h:function(l){e[0].h(l)},Da:function(l){e[0].Da(l)},$g:function(l){e[1].h(l)},Th:function(){return e[0]},Xh:function(){return e[1]},Ma:function(l){e[0].Ma(l);e[1].Ma(l)},remove:function(){e[0].remove();e[1].remove();e=null},sync:function(){g.Ag(0);B.set("s0");Q.l(!1,!1)}};return g}}}(),
ta=function(){function a(k){var p={ha:null,indices:null};p.ha=k.createBuffer();k.bindBuffer(k.ARRAY_BUFFER,p.ha);k.bufferData(k.ARRAY_BUFFER,new Float32Array([-1,-1,3,-1,-1,3]),k.STATIC_DRAW);p.indices=k.createBuffer();k.bindBuffer(k.ELEMENT_ARRAY_BUFFER,p.indices);k.bufferData(k.ELEMENT_ARRAY_BUFFER,new Uint16Array([0,1,2]),k.STATIC_DRAW);return p}var b=null,d=0,e=!1,g=[],l=-2,m=-2,n={reset:function(){m=l=-2},A:function(){e||(b=a(c),n.Ea(),e=!0)},instance:function(k){var p=d++,v=k.indices?k.indices.length:
0,D=typeof k.mode==="undefined"?c.STATIC_DRAW:k.mode,x=c.createBuffer();c.bindBuffer(c.ARRAY_BUFFER,x);c.bufferData(c.ARRAY_BUFFER,k.ha instanceof Float32Array?k.ha:new Float32Array(k.ha),D);l=p;var u=null,G=null,J=null;if(k.indices){u=c.createBuffer();c.bindBuffer(c.ELEMENT_ARRAY_BUFFER,u);var f=null;k.indices.length<65536?(f=Uint16Array,G=c.UNSIGNED_SHORT,J=2):(f=Uint32Array,G=c.UNSIGNED_INT,J=4);f=k.indices instanceof f?k.indices:new f(k.indices);c.bufferData(c.ELEMENT_ARRAY_BUFFER,f,D);m=p}var z=
{We:function(L){l!==p&&(c.bindBuffer(c.ARRAY_BUFFER,x),l=p);L&&Ba.Xc()},Te:function(){m!==p&&(c.bindBuffer(c.ELEMENT_ARRAY_BUFFER,u),m=p)},bind:function(L){z.We(L);z.Te()},qh:function(){c.drawElements(c.TRIANGLES,v,G,0)},rh:function(L,C){c.drawElements(c.TRIANGLES,L,G,C*J)},remove:function(){c.deleteBuffer(x);k.indices&&c.deleteBuffer(u);z=null}};g.push(z);return z},Ea:function(){l!==-1&&(c.bindBuffer(c.ARRAY_BUFFER,b.ha),l=-1);m!==-1&&(c.bindBuffer(c.ELEMENT_ARRAY_BUFFER,b.indices),m=-1)},l:function(k,
p){k&&ta.Ea();p&&Ba.Ka();c.drawElements(c.TRIANGLES,3,c.UNSIGNED_SHORT,0)},zb:function(k){k=k||c;var p=a(k);k.bindBuffer(k.ARRAY_BUFFER,p.ha);k.bindBuffer(k.ELEMENT_ARRAY_BUFFER,p.indices);Ba.Wb(k);k.clear(k.COLOR_BUFFER_BIT);k.drawElements(k.TRIANGLES,3,k.UNSIGNED_SHORT,0);k.flush();k.bindBuffer(k.ARRAY_BUFFER,null);k.bindBuffer(k.ELEMENT_ARRAY_BUFFER,null);k.deleteBuffer(p.ha);k.deleteBuffer(p.indices);n.reset();e&&(n.Ea(),Ba.Ka())},Jd:function(){var k=c,p=b;k.deleteBuffer(p.ha);k.deleteBuffer(p.indices)},
m:function(){n.Jd();g.forEach(function(k){k.remove()});c.bindBuffer(c.ARRAY_BUFFER,null);c.bindBuffer(c.ELEMENT_ARRAY_BUFFER,null);n.reset();e=!1;g.splice(0);d=0}};return n}(),ua=function(){var a=null,b=null,d=null,e=!1,g=[],l={I:-2,Hd:1},m={Jb:function(){return e},A:function(){if(!e){a=c.createFramebuffer();var n=aa.qa();b=n&&c.DRAW_FRAMEBUFFER?c.DRAW_FRAMEBUFFER:c.FRAMEBUFFER;d=n&&c.READ_FRAMEBUFFER?c.READ_FRAMEBUFFER:c.FRAMEBUFFER;e=!0}},Qh:function(){return b},Mf:function(){return d},oc:function(){return c.FRAMEBUFFER},
Yh:function(){return l},Ih:function(){return a},instance:function(n){n.Ud===void 0&&(n.Ud=!1);var k=n.D?n.D:null,p=n.width,v=n.height!==void 0?n.height:n.width,D=a,x=null,u=!1,G=!1,J=0;k&&(p=p?p:k.J(),v=v?v:k.ba());var f={ye:function(){u||(D=c.createFramebuffer(),u=!0,J=l.Hd++)},Oe:function(){f.ye();f.v();x=c.createRenderbuffer();c.bindRenderbuffer(c.RENDERBUFFER,x);c.renderbufferStorage(c.RENDERBUFFER,c.DEPTH_COMPONENT16,p,v);c.framebufferRenderbuffer(b,c.DEPTH_ATTACHMENT,c.RENDERBUFFER,x);c.clearDepth(1)},
bind:function(z,L){J!==l.I&&(c.bindFramebuffer(b,D),l.I=J);k&&k.v();L&&c.viewport(0,0,p,v);z&&c.clear(c.COLOR_BUFFER_BIT|c.DEPTH_BUFFER_BIT)},Zg:function(){J!==l.I&&(c.bindFramebuffer(b,D),l.I=J)},clear:function(){c.clear(c.COLOR_BUFFER_BIT|c.DEPTH_BUFFER_BIT)},jh:function(){c.clear(c.COLOR_BUFFER_BIT)},kh:function(){c.clear(c.DEPTH_BUFFER_BIT)},Ig:function(){c.viewport(0,0,p,v)},v:function(){J!==l.I&&(c.bindFramebuffer(b,D),l.I=J)},rtt:function(z){k=z;l.I!==J&&(c.bindFramebuffer(c.FRAMEBUFFER,D),
l.I=J);z.v()},N:function(){c.bindFramebuffer(b,null);l.I=-1},resize:function(z,L){p=z;v=L;x&&(c.bindRenderbuffer(c.RENDERBUFFER,x),c.renderbufferStorage(c.RENDERBUFFER,c.DEPTH_COMPONENT16,p,v))},remove:function(){D===a||G||(c.bindFramebuffer(b,D),c.framebufferTexture2D(b,c.COLOR_ATTACHMENT0,c.TEXTURE_2D,null,0),x&&c.framebufferRenderbuffer(b,c.DEPTH_ATTACHMENT,c.RENDERBUFFER,null),c.bindFramebuffer(b,null),l.I=-1,c.deleteFramebuffer(D),x&&c.deleteRenderbuffer(x));G=!0}};n.Ud&&f.Oe();g.push(f);return f},
N:function(){c.bindFramebuffer(b,null);l.I=-1},Tg:function(){c.bindFramebuffer(b,null);c.clear(c.COLOR_BUFFER_BIT|c.DEPTH_BUFFER_BIT);aa.Ee();l.I=-1},reset:function(){l.I=-2},ia:function(){l.I!==0&&(c.bindFramebuffer(b,a),l.I=0)},clear:function(){aa.Ee();c.clear(c.COLOR_BUFFER_BIT)},m:function(){m.N();g.forEach(function(n){n.remove()});a!==null&&(c.deleteFramebuffer(a),a=null);m.reset();e=!1;g.splice(0);l.Hd=1}};return m}(),aa=function(){function a(){n=typeof Ha==="undefined"?JEContext:Ha;k=!0}function b(h,
t,I){for(var M=0;M<t.length;++M){var y=I.getExtension(t[M]+"_"+h);if(y)return y}return null}function d(){f.Zb!==null&&(clearTimeout(f.Zb),f.Zb=null);f.Ga=!1}function e(h){if(f.ua.length===0){f.ca=c.PIXEL_PACK_BUFFER;f.ua.splice(0);f.Cb.splice(0);for(var t=0;t<f.Ua;++t)f.ua.push(c.createBuffer()),f.Cb.push(-1);f.la=0;f.Hc=0}c.bindBuffer(f.ca,f.ua[f.la]);h.byteLength!==f.Cb[f.la]&&(c.bufferData(f.ca,h.byteLength,c.STREAM_READ),f.Cb[f.la]=h.byteLength);f.ei=!0}function g(){c.bindBuffer(f.ca,null)}function l(){f.Fa.forEach(function(h){c.deleteSync(h)});
f.Fa.splice(0)}function m(){f.la=(f.la+1)%f.Ua;++f.Hc}var n=null,k=!1,p={Yd:!1,ad:null,bd:null,be:!1,fg:!1,cd:null,ce:!1,dd:null,Zd:!1,ec:null,Zf:!1,fc:null,$f:!1},v=null,D={ma:!0,pa:!0,lc:!0,qe:!1},x=null,u=!0,G=null,J=null,f={ff:1,Ua:-1,la:0,Hc:0,Ga:!1,ua:[],Fa:[],Cb:[],ca:null,Zb:null},z="EXT WEBGL OES MOZ_OES WEBKIT_OES KHR".split(" "),L=["OES","MOZ_OES","WEBKIT_OES"],C=typeof window==="undefined"?{}:window,A={A:function(){if(k)return!0;A.reset();k||a();var h=c;if(!v.Yd){v.ad=A.Ed(h);C.GL_EXT_FLOAT=
v.ad;v.be=v.ad?!0:!1;if(v.be||A.qa())v.bd=A.Fd(h),v.fg=v.bd?!0:!1,C.GL_EXT_FLOATLINEAR=v.bd;v.Yd=!0}if(!v.Zd){v.cd=A.xb(h);v.cd&&(v.ce=!0,C.GL_EXT_HALFFLOAT=v.cd);if(v.ce||A.qa())v.dd=A.Gd(h),C.GL_EXT_HALFFLOATLINEAR=v.dd;v.fi=v.dd?!0:!1;v.Zd=!0}v.ec=A.Cd(h);v.Zf=v.ec?!0:!1;C.GL_EXT_COLORBUFFERFLOAT=v.ec;v.fc=A.Dd(h);v.$f=v.fc?!0:!1;C.GL_EXT_COLORBUFFERHALFFLOAT=v.fc;ua.A();Da.A();if(!A.kf())return!1;ta.A();Da.Xf();return!0},reset:function(){v=Object.assign({},p);x=Object.assign({},D)},J:function(){k||
a();return n.J()},ba:function(){k||a();return n.ba()},qa:function(){k||a();return n.qa()},Bd:function(h){A.Cd(h);A.Dd(h);A.Ed(h);A.Fd(h);A.xb(h);A.Gd(h)},Cd:b.bind(null,"color_buffer_float",z),Dd:b.bind(null,"color_buffer_half_float",z),Ed:b.bind(null,"texture_float",L),Fd:b.bind(null,"texture_float_linear",L),xb:b.bind(null,"texture_half_float",L),Gd:b.bind(null,"texture_half_float_linear",L),nc:function(h){var t=A.xb(h);return t&&t.HALF_FLOAT_OES?t.HALF_FLOAT_OES:h.HALF_FLOAT||h.FLOAT},Jf:function(){return J||
c.RGBA32F||c.RGBA},Kf:function(){return G||c.RGBA16F||c.RGBA},Gf:function(){return x},sd:function(){return x.ma},eh:function(){return x.pa},dh:function(){return x.lc},Ze:function(){return x.qe&&u},Je:function(h){u=h;!h&&f.Ga&&(l(),c.bindBuffer(f.ca,null),f.Ga=!1)},li:function(){return f.Ga},Xb:function(h,t,I){function M(){h.bindTexture(h.TEXTURE_2D,null);h.bindFramebuffer(y,null);h.deleteTexture(q);h.deleteFramebuffer(O)}var y=h.FRAMEBUFFER,N=h.NEAREST,O=h.createFramebuffer();h.bindFramebuffer(y,
O);var q=h.createTexture();h.activeTexture(h.TEXTURE0);h.bindTexture(h.TEXTURE_2D,q);h.pixelStorei(h.UNPACK_FLIP_Y_WEBGL,!1);h.texParameteri(h.TEXTURE_2D,h.TEXTURE_WRAP_S,h.CLAMP_TO_EDGE);h.texParameteri(h.TEXTURE_2D,h.TEXTURE_WRAP_T,h.CLAMP_TO_EDGE);h.texParameteri(h.TEXTURE_2D,h.TEXTURE_MAG_FILTER,N);h.texParameteri(h.TEXTURE_2D,h.TEXTURE_MIN_FILTER,N);h.texImage2D(h.TEXTURE_2D,0,t,3,3,0,h.RGBA,I,null);h.framebufferTexture2D(h.FRAMEBUFFER,h.COLOR_ATTACHMENT0,h.TEXTURE_2D,q,0);if(h.checkFramebufferStatus(h.READ_FRAMEBUFFER||
h.FRAMEBUFFER)!==h.FRAMEBUFFER_COMPLETE)return M(),!1;Ba.Wc(h);h.clearColor(0,0,0,0);h.viewport(0,0,3,3);h.disable(h.DEPTH_TEST);h.clear(h.COLOR_BUFFER_BIT);ta.zb(h);h.bindFramebuffer(y,null);Ba.ib(h);h.activeTexture(h.TEXTURE0);h.bindTexture(h.TEXTURE_2D,q);ta.zb(h);t=new Uint8Array(36);h.readPixels(0,0,3,3,h.RGBA,h.UNSIGNED_BYTE,t);M();for(I=0;I<36;++I)if(I%4!==3&&Math.abs(t[I]-127)>3)return!1;return!0},ic:function(h){var t={ma:!1,pa:!1};h.disable(h.BLEND);h.clearColor(0,0,0,0);h.clear(h.COLOR_BUFFER_BIT);
h.RGBA32F&&A.Xb(h,h.RGBA32F,h.FLOAT)&&(t.ma=!0,J=h.RGBA32F);!t.ma&&A.Xb(h,h.RGBA,h.FLOAT)&&(t.ma=!0,J=h.RGBA);var I=A.nc(h);G=null;h.RGBA16F&&A.Xb(h,h.RGBA16F,I)&&(t.pa=!0,G=h.RGBA16F);!t.pa&&A.Xb(h,h.RGBA,I)&&(t.pa=!0,G=h.RGBA);return t},lf:function(){var h=ua.instance({width:2});h.ye();var t=Da.instance({width:2,isFloat:!0,Mb:3});h.v();t.v();A.flush();c.checkFramebufferStatus(ua.Mf())!==c.FRAMEBUFFER_COMPLETE?(Da.Bg(),x.lc=!1):x.lc=!0;h.remove();t.remove()},mf:function(){var h=!1;A.qa()&&(h="PIXEL_PACK_BUFFER STREAM_READ SYNC_GPU_COMMANDS_COMPLETE WAIT_FAILED fenceSync deleteSync createBuffer".split(" ").every(function(t){return typeof c[t]!==
"undefined"}));x.qe=h},kf:function(){var h=A.ic(c);Object.assign(x,h);if(!x.ma&&!x.pa)return!1;A.lf();A.mf();return!0},se:function(h,t,I,M,y){c.readPixels(h,t,I,M,c.RGBA,c.UNSIGNED_BYTE,y);return Promise.resolve(y,!1)},Ub:function(h,t,I,M,y,N,O){if(!A.Ze())return A.se(h,t,I,M,y);f.Ua=O||f.ff;e(y);c.readPixels(h,t,I,M,c.RGBA,c.UNSIGNED_BYTE,0);f.Fa[f.la]=c.fenceSync(c.SYNC_GPU_COMMANDS_COMPLETE,0);A.flush();var q=!1;return new Promise(function(r,w){function H(){if(!f.Ga)return d(),g(),m(),w(),!1;var P=
(f.la+1)%f.Ua;switch(c.clientWaitSync(f.Fa[P],0,0)){case c.TIMEOUT_EXPIRED:case c.WAIT_FAILED:break;default:return d(),c.deleteSync(f.Fa[P]),f.Fa[P]=null,c.bindBuffer(f.ca,f.ua[P]),c.getBufferSubData(f.ca,0,y),g(),m(),r(y,q),!0}f.Zb=setTimeout(H,0);return!1}d();f.Hc+1<f.Ua?(g(),m(),r(y,!1)):(f.Ga=!0,H()||!N||q||(q=!0,N()))})},Ee:function(){c.viewport(0,0,A.J(),A.ba())},flush:function(){c.flush()},m:function(){d();l();Da.m();ua.m();ta.m();f.ua.forEach(function(h){c.deleteBuffer(h)});f.ua.splice(0);
Ba.reset();k=!1}};return A}(),Q=ta,xa=ua,Z=Da,Ea=function(){function a(h,t,I,M){f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MIN_FILTER,M?f.NEAREST_MIPMAP_NEAREST:f.LINEAR);var y=null;if(I!==null)try{y=f.getError();if(y==="FUCKING_BIG_ERROR")return!1;f.texImage2D(f.TEXTURE_2D,0,h,4,4,0,f.RGBA,t,I);y=f.getError();if(y!==f.NO_ERROR)return!1}catch(N){return!1}M&&f.generateMipmap(f.TEXTURE_2D);f.clear(f.COLOR_BUFFER_BIT);Q.zb(f);y=f.getError();if(y==="FUCKING_BIG_ERROR")return!1;f.readPixels(0,0,2,2,f.RGBA,
f.UNSIGNED_BYTE,v);y=f.getError();y===f.INVALID_OPERATION&&typeof f.PIXEL_PACK_BUFFER!=="undefined"&&(f.bindBuffer(f.PIXEL_PACK_BUFFER,null),f.readPixels(0,0,2,2,f.RGBA,f.UNSIGNED_BYTE,v),y=f.getError());if(y!==f.NO_ERROR)return!1;I=!0;for(M=0;M<16;++M)I=I&&Math.abs(v[M]-127)<4;I&&(k.me=t,k.Td=h);return I}function b(h,t){return z.ma&&a(h,f.FLOAT,new Float32Array(D),t)?(n=m.nd,!0):!1}function d(h,t,I){if(!z.pa)return!1;var M=Da.ef(D),y=aa.xb(f);if(y&&y.HALF_FLOAT_OES&&a(h,y.HALF_FLOAT_OES,M,t)||f.HALF_FLOAT&&
a(h,f.HALF_FLOAT,M,t))return n=m.Oa,!0;M=new Float32Array(D);if(a(h,f.FLOAT,M,t))return n=m.Oa,!0;f.bindTexture(f.TEXTURE_2D,I);f.texImage2D(f.TEXTURE_2D,0,f.RGBA,2,2,0,f.RGBA,f.UNSIGNED_BYTE,null);f.bindFramebuffer(k.vb,A);Da.Id(f,I,2,2,M,!1,!1);f.bindFramebuffer(k.vb,null);f.bindTexture(f.TEXTURE_2D,I);return a(h,null,null,t)?(n=m.Oa,!0):!1}function e(h,t,I){p=!0;if(d(h,!0,I)||b(t,!0))return!0;p=!1;return d(h,!1,I)||b(t,!1)?!0:!1}function g(h){if(n===m.O){f=h||c;n=m.RGBA8;p=!0;aa.Bd(f);z||(z=aa.ic(f));
xa.reset();A=f.createFramebuffer();k.vb=f.DRAW_FRAMEBUFFER||f.FRAMEBUFFER;f.bindFramebuffer(k.vb,null);f.clearColor(0,0,0,0);f.viewport(0,0,2,2);B.O();L=B.ib(f);h=f.createTexture();f.activeTexture(f.TEXTURE0);f.bindTexture(f.TEXTURE_2D,h);f.texParameteri(f.TEXTURE_2D,f.TEXTURE_WRAP_S,f.REPEAT);f.texParameteri(f.TEXTURE_2D,f.TEXTURE_WRAP_T,f.REPEAT);f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MAG_FILTER,f.NEAREST);C=h;var t=h=f.RGBA,I=f.RGBA16F,M=f.RGBA32F;M&&(h=M);I&&(t=I);if((I||M)&&e(t,h,C))return l(),
!0;h=t=f.RGBA;if(e(t,h,C))return l(),!0;n=m.RGBA8;l();return!1}}function l(){f.deleteProgram(L.ya);f.deleteTexture(C);C=L=null}for(var m={O:-1,nd:3,Oa:2,RGBA8:0},n=m.O,k={me:null,Td:null,vb:null},p=!0,v=new Uint8Array(16),D=Array(64),x=0;x<4;++x)for(var u=0;u<4;++u){var G=(u+x)%2===0?1:0,J=x*4+u;D[4*J]=G;D[4*J+1]=G;D[4*J+2]=G;D[4*J+3]=G}var f=null,z=null,L=null,C=null,A=null;return{Ye:function(h){g(h);return p},rd:function(h,t){n===m.O&&(typeof(t!=="undefined")&&(z=t),g(h));return n!==m.RGBA8},ii:function(h){g(h);
return n===m.nd},gg:function(h){g(h);return n===m.Oa},Rh:function(h){g(h);return k.me},Lf:function(h){g(h);return k.Td},m:function(){f=null;p=!0;n=m.O;z=null}}}(),Zb=function(){return{instance:function(a){function b(){v&&v.remove();v=Z.instance({isFloat:!1,isPot:!1,width:d.size*d.Y[0],height:d.size*d.Y[1]})}var d=Object.assign({mask:null,size:-1,preprocessing:"none",preprocessingSize:a.size,customInputShader:null,nBlurPass:1,varianceMin:.1,blurKernelSizePx:5,gain:1,overlap:0,isNormalized:!1,tilt:-1,
Y:[1,1]},a),e=null,g=!1,l=!1,m=null,n=!1;a=!1;var k=null;d.mask&&(g=!0,typeof ra!=="undefined"&&ra&&ra.Se!==void 0&&(d.mask=ra.Se+d.mask),e=Z.instance({isFloat:!1,url:d.mask}));var p=null;d.customInputShader&&(p="s50",B.pd({name:"_",id:p,g:d.customInputShader,Qi:["uSource"],precision:"lowp"}),B.S(p,[{type:"1i",name:"_",value:0}]));switch(d.preprocessing){case "sobel":k="s39";n=!0;break;case "meanNormalization":k="s40";n=!0;break;case "grayScale":k="s36";n=!1;break;case "grayScaleTilt":k="s37";a=!0;
n=!1;break;case "rgbGrayTilt":k="s38";a=!0;n=!1;break;case "copy":k=p?p:"s0";break;case "inputLightRegulation":k=p?p:"s36";m=xc.instance({Sd:d.preprocessingSize,le:d.size,ie:d.nBlurPass,da:!1});l=!0;break;case "inputMix0":k="none";m=yc.instance({u:d.preprocessingSize,sa:d.varianceMin,ja:d.blurKernelSizePx,gain:d.gain||1,da:!1});l=!0;break;case "inputMix1":k="none";m=zc.instance({u:d.preprocessingSize,sa:d.varianceMin,ja:d.blurKernelSizePx,gain:d.gain||1,da:!1});l=!0;break;case "inputCut4":k="none";
m=Ac.instance({u:d.preprocessingSize,sa:d.varianceMin,ja:d.blurKernelSizePx,gain:d.gain||1,ab:d.isNormalized||!1,Rc:d.overlap||0,da:!1});d.preprocessingSize*=m.Nf();l=!0;break;case "direct":case "none":case "abort":k="abort";break;default:k="s4"}d.preprocessingSize=Math.ceil(d.preprocessingSize);a&&B.S(k,[{name:"u30",type:"1f",value:d.tilt}]);g&&(k+="Mask");var v=null;b();var D={J:function(){return d.size},Of:function(){return d.preprocessingSize},pc:function(){return D.J()},Sf:function(){return l?
m.Za():v},$b:function(x){d.Y=x;b()},Z:function(x){xa.ia();if(k==="abort")return x.h(0),x;k!=="none"&&(B.set(k),n&&B.F("u31",1/d.size),v.M(),g&&e.h(1),Q.l(!1,!1),v.h(0),x=v);l&&m.process(x)},m:function(){v.remove();g&&e.remove()}};return D}}}(),$b=function(){return{instance:function(a){function b(){if(A.La){g.input&&(g.input.remove(),g.Fb.remove());var t=a.size*a.sparsity;C=Math.log(t/a.size)/Math.log(2);g.input=Z.instance({isMipmap:!0,isFloat:!0,isPot:!0,width:t*a.Y[0],height:t*a.Y[1],Cc:C});g.Fb=
Z.instance({isFloat:!0,isPot:!0,width:a.size*a.Y[0],height:a.size*a.Y[1]})}}function d(){g.output&&g.output.remove();g.output=Z.instance({isFloat:!0,isPot:!m,isLinear:!m&&n.isLinear,width:a.size*a.Y[0],height:a.size*a.Y[1]})}function e(t){n.buffer.forEach(function(I,M){n.results[M][0]=t[0][I];n.results[M][1]=t[1][I];n.results[M][2]=t[2][I];n.results[M][3]=t[3][I]});return n.results}a.normalize=a.normalize||!1;var g={input:null,bias:null,Fb:null,output:null,Qc:null,Oc:null,Pc:null},l=null,m=!0,n={type:"undef",
G:null,isLinear:!1,buffer:[],results:[],Hb:!1},k=-1,p=a.isReorganize?a.isReorganize:!1,v=a.kernelsCount?!0:!1,D=[a.$a?"s32":"s31",a.$a?"s34":"s33","s35"][a.shiftRGBAMode||0],x={isEnabled:!1},u=1/a.size;a.dg?(a.sparsity=typeof a.sparsity!=="undefined"?a.sparsity:a.Rb.pc(),m=!1):a.connectivityUp==="full"&&(a.sparsity=a.Rb.pc());var G={elu:"s19",elu01:"s20",relu:"s17",gelu:"s18",arctan:"s21",arctan2:"s22",sigmoid:"s16",copy:"s0"}[a.activation],J=a.sparsity*a.sparsity,f=!1,z=a.size,L="";if(a.maxPooling){switch(a.maxPooling.size){case 2:L=
"s41";break;case 4:L="s42"}f=!0;z/=a.maxPooling.size;g.Oc=Z.instance({isFloat:!0,isPot:!1,width:z})}var C=-1,A=null;m&&d();g.bias=Z.instance(a.bias);var h={J:function(){return a.size},pc:function(){return z},Kd:function(){return a.classesCount},Ue:function(t){l.h(t)},qg:function(){a.remap&&a.remap.isEnabled&&(x={isEnabled:!0,lg:Z.instance(a.remap.maskTexture),gb:a.remap.layers.map(function(t){return a.parent.Qf(t)}),depth:a.remap.depth})},Cg:function(){switch(a.connectivityUp){case "direct":A=Bc.instance(a.connectivity);
break;case "square":A=Cc.instance(a.connectivity);break;case "squareFast":A=Dc.instance(a.connectivity,a.activation);break;case "full":A=Ec.instance(Object.assign({$a:a.$a},a.connectivity));break;case "conv":k=a.kernelsCount,A=Fc.instance(a.connectivity),p&&(g.Qc=Z.instance({width:z,isFloat:!0,isFlipY:!1,isPot:!1}))}b()},Z:function(t,I){l=t;A.La?(g.input.M(),v&&g.bias.h(2),A.Z(x),g.input.h(0),g.input.Ef(C),g.Fb.M(),v?B.set("s0"):(B.set(D),B.F("u4",J),g.bias.h(1)),g.input.Ve(C,0),Q.l(!1,!1),B.set(G),
g.output.v(),g.Fb.h(0),Q.l(!1,!1)):(g.output.M(),g.bias.h(1),A.Z());if(m)return I=g.output,f&&(g.Oc.M(),I.h(0),B.set(L),B.P("u6",a.size,a.size),Q.l(!1,!1),I=g.Oc),p&&(g.Qc.v(),B.set("s24"),B.P("u19",k,z/k),I.h(0),Q.l(!1,!1),I=g.Qc),I.h(0),I;var M=g.output;if(a.normalize||n.Hb)t=a.normalize,B.set(n.Hb?"s9":"s8"),B.F("u11",t?u:1),g.Pc.M(),M.h(0),Q.l(!1,!1),M=g.Pc;t=null;switch(n.type){case "cpuRGBA2Float":M.yd(!1);I?t=h.sg(M).then(n.G):(M=h.tg(M),n.G(M));break;case "cpuMeanFloat":M.yd(!0);if(I)t=M.vg().then(n.G);
else{M=M.wg();for(var y=0;y<M.length;++y);n.G(M)}break;case "gpuRawAvg":case "gpuRaw":M.h(0);case "none":n.G!==null&&n.G(M)}I&&t===null&&(t=Promise.resolve());return t},$b:function(t){a.Y=t;b();d()},Kg:function(t){t&&(n.type=t.Pb||"none",n.G=t.Ob||null,n.isLinear=t.Nc?!0:!1);d();t=typeof a.classesCount!=="undefined"&&a.classesCount?a.classesCount:a.size*a.size;for(var I=0,M=0,y=0;I<t;++I)n.buffer.push(M+(a.size-1-y)*a.size),n.results.push([-1,-1,-1,-1]),++M,M===a.size&&(M=0,++y);n.Hb=n.type==="gpuRawAvg"||
n.type==="cpuMeanFloat";if(a.normalize||n.Hb)g.Pc=Z.instance({isFloat:!0,isPot:!0,width:a.size})},sg:function(t){return t.ug().then(e)},tg:function(t){t=t.re();e(t);return n.results},m:function(){for(var t in g){var I=g[t];I&&I.remove()}A&&(A.m(),A=null)}};a.Rb&&h.Cg(a.Rb);return h}}}(),Bc=function(){return{instance:function(a){var b=Z.instance(a.weights);return{La:!0,Bb:function(){return 1},m:function(){b.remove()},Vf:function(){return b},Z:function(){B.set("s30");b.h(1);Q.l(!1,!1)}}}}}(),Ec=function(){return{instance:function(a){var b=
a.fromLayerSize,d=Z.instance(a.weights),e=a.$a?"s27":"s26";return{La:!0,Bb:function(){return b},m:function(){d.remove()},Z:function(g){if(g.isEnabled){B.set("s28");g.lg.h(3);for(var l=Math.min(g.gb.length,g.depth),m=0;m<l;++m)g.gb[m].Ue(4+m)}else B.set(e);B.F("u9",a.toLayerSize);B.F("u10",a.fromLayerSize);d.h(1);Q.l(!1,!1)}}}}}(),Cc=function(){return{instance:function(a){for(var b=a.fromLayerSize,d=a.toLayerSize,e=a.toSparsity,g=e*d,l=g/b,m=b/d,n=0,k=0,p=0,v=Array(e*d*e*d*4),D=Array(e*d*e*d*4),x=
Array(b*b),u=0;u<x.length;++u)x[u]=0;u=Math.floor(e/2);for(var G=.5/d,J=.5/b,f=.5/g,z=0;z<d;++z)for(var L=Math.round(z*m),C=0;C<d;++C){var A=Math.round(C*m),h=z/d,t=C/d;h+=G;t+=G;for(var I=0;I<e;++I){var M=L+I-u;M<0&&(M+=b);M>=b&&(M-=b);for(var y=0;y<e;++y){var N=n/g,O=k/g,q=A+y-u;q<0&&(q+=b);q>=b&&(q-=b);var r=M/b,w=q/b;O=1-O-1/g;r+=J;w+=J;N+=f;O+=f;var H=z*e+I,P=C*e+y;P=d*e-P-1;H=d*e*P+H;v[4*H]=N;v[4*H+1]=O;v[4*H+2]=r;v[4*H+3]=w;w=x[q*b+M]++;H=w%l;r=M*l+H;q=q*l+(w-H)/l;q=b*l-1-q;q=b*l*q+r;D[4*q]=
N;D[4*q+1]=O;D[4*q+2]=h;D[4*q+3]=t;++n>=g&&(n=0,++k);++p}}}x=null;var ba=Z.instance(a.weights);delete a.weights.data;var ka=Z.instance({width:g,isFloat:!0,array:new Float32Array(D),isPot:!0});D=null;var Ja=Z.instance({width:g,isFloat:!0,array:new Float32Array(v),isPot:!0});v=null;return{La:!0,Bb:function(){return l},m:function(){ka.remove();Ja.remove();ba.remove()},Z:function(){B.set("s25");ba.h(1);Ja.h(2);Q.l(!1,!1)}}}}}(),Fc=function(){return{instance:function(a){var b=a.kernelsCount,d=a.toSparsity,
e=d*a.toLayerSize/a.fromLayerSize,g=a.inputScale||[1,1],l=Z.instance(a.weights);return{La:!0,Bb:function(){return e},bi:function(){return d},Vf:function(){return l},m:function(){l.remove()},Z:function(){B.set("s29");B.Eg("u29",g);B.F("u27",b);B.F("u28",d);B.F("u9",a.toLayerSize);B.F("u10",a.fromLayerSize);l.h(1);Q.l(!1,!1)}}}}}(),Dc=function(){return{instance:function(a,b){var d=a.fromLayerSize,e=a.toLayerSize,g=a.toSparsity,l=a.stride?a.stride:1,m=g*e/d,n=e<d,k=d/e,p=Z.instance(a.weights),v="s51"+
[d.toString(),e.toString(),g.toString(),l.toString(),b].join("_");B.Af(v)||(a=vc.Ff(b,"gl_FragColor","gl_FragColor"),e=[{type:"1f",name:"u9",value:e},{type:"1f",name:"u33",value:l}],n&&e.push({type:"1f",name:"u10",value:d}),d=[(n?m:g).toFixed(1),a],n&&d.push(k.toFixed(1)),B.Yf(n?"s47":"s46",v,d),B.S(v,e.concat([{type:"1i",name:"u7",value:0},{type:"1i",name:"u3",value:1},{type:"1i",name:"u8",value:3}])));return{La:!1,Bb:function(){return m},m:function(){p.remove()},Z:function(){B.set(v);p.h(3);Q.l(!1,
!1)}}}}}(),xc=function(){return{instance:function(a){var b=a.ie?a.ie:3,d=a.Sd?a.Sd:64,e=a.le?a.le:64,g=a.da?!0:!1;a={isFloat:!1,width:d,isPot:!1,isFlipY:!1};var l=Z.instance(a),m=Z.instance(a),n=Z.instance(a),k=Z.instance(a),p=Z.instance({isFloat:!0,width:e,isPot:!1,isFlipY:!1}),v=1/d;return{process:function(D){B.set("s43");k.v();Q.l(g,!1);B.set("s44");for(var x=0;x<b;++x)l.v(),B.P("u15",v,0),Q.l(g,!1),n.v(),k.h(0),Q.l(g,!1),m.v(),l.h(0),B.P("u15",0,v),Q.l(g,!1),k.v(),n.h(0),Q.l(g,!1),x!==b-1&&m.h(0);
B.set("s45");p.v();D.h(0);m.h(1);k.h(2);Q.l(g,!1);p.h(0)},Za:function(){return p}}}}}(),yc=function(){return{instance:function(a){function b(v){return Z.instance({isFloat:v,width:d.u,isPot:!1,isFlipY:!1})}var d=Object.assign({sa:.1,ja:9,u:128,gain:1,da:!1},a),e=b(!1),g=[b(!1),b(!1),b(!1)],l=[b(!1),b(!1),b(!1)],m=b(!0),n=[e,l[0],l[1]];a="uniform sampler2D u1;const float e=1.1111,g=2.2222;uniform vec2 u34;varying vec2 vv0;void main(){float b=0.,c=0.;for(float a=-e;a<=e;a+=1.){vec2 i=u34*a,j=vv0+i*g;float d=1.2*a/e,f=exp(-d*d);b+=f*texture2D(u1,j).r,c+=f;}b/=c,gl_FragColor=vec4(b,0.,0.,1.);}".replace("1.1111",
Math.round((d.ja-1)/2).toFixed(2)).replace("2.2222",(1/d.u).toFixed(6));var k="uniform sampler2D u35,u36,u37,u38;const float f=1.1111;const vec3 g=vec3(1.);const float h=2.2222;varying vec2 vv0;void main(){vec3 a=texture2D(u35,vv0).rgb;float c=texture2D(u36,vv0).r,d=texture2D(u37,vv0).r,i=texture2D(u38,vv0).r,j=a.r*a.r;vec3 b=vec3(c,d,i),k=max(g*f,abs(vec3(j)-b*b)),l=sqrt(k);gl_FragColor=vec4(a.r,h*(a-b)/l);}".replace("1.1111",d.sa.toFixed(4)).replace("2.2222",d.gain.toFixed(4)),p={u1:0};B.ob([{id:"s53",
name:"_",g:"uniform sampler2D u1;varying vec2 vv0;const vec3 f=vec3(.2126,.7152,.0722),g=vec3(1.);void main(){vec3 b=texture2D(u1,vv0).rgb;float a=dot(b,f);gl_FragColor=vec4(a,a,a,a);}",j:p,i:["u1"],precision:"lowp"},{id:"s54",name:"_",g:a,j:p,i:["u1","u34"],precision:"lowp"},{id:"s55",name:"_",g:k,j:{u35:0,u36:1,u37:2,u38:3},i:["u35","u36","u37","u38"],precision:"highp"}]);return{process:function(){B.set("s53");e.M();Q.l(d.da,!1);B.set("s54");for(var v=0;v<3;++v)B.P("u34",1,0),g[v].v(),n[v].h(0),
Q.l(!1,!1),B.P("u34",0,1),l[v].v(),g[v].h(0),Q.l(!1,!1);B.set("s55");m.v();e.h(0);l[0].h(1);l[1].h(2);l[2].h(3);Q.l(!1,!1);m.h(0)},Za:function(){return m}}}}}(),zc=function(){return{instance:function(a){function b(p){return Z.instance({isFloat:p,width:d.u,isPot:!1,isFlipY:!1})}var d=Object.assign({sa:.1,ja:9,u:128,gain:1,da:!1},a),e=b(!1),g=b(!1),l=b(!1),m=b(!0);a="uniform sampler2D u1;const float e=1.1111,g=2.2222;uniform vec2 u34;varying vec2 vv0;void main(){vec3 b=vec3(0.);float c=0.;for(float a=-e;a<=e;a+=1.){vec2 i=u34*a,j=vv0+i*g;float d=1.2*a/e,f=exp(-d*d);b+=f*texture2D(u1,j).rgb,c+=f;}b/=c,gl_FragColor=vec4(b,1.);}".replace("1.1111",
Math.round((d.ja-1)/2).toFixed(2)).replace("2.2222",(1/d.u).toFixed(6));var n="uniform sampler2D u0,u39;const float f=1.1111;const vec3 g=vec3(1.);const float h=2.2222;varying vec2 vv0;void main(){vec4 a=texture2D(u0,vv0);vec3 c=texture2D(u39,vv0).rgb;float d=a.a*a.a;vec3 b=c.rgb,i=max(g*f,abs(vec3(d)-b*b)),j=sqrt(i);gl_FragColor=vec4(a.a,h*(a.rgb-b)/j);}".replace("1.1111",d.sa.toFixed(4)).replace("2.2222",d.gain.toFixed(4)),k={u1:0};B.ob([{id:"s56",name:"_",g:"uniform sampler2D u1;varying vec2 vv0;const vec3 f=vec3(.2126,.7152,.0722),g=vec3(1.);void main(){vec3 a=texture2D(u1,vv0).rgb;float b=dot(a,f);gl_FragColor=vec4(a.rgb,b);}",
j:k,i:["u1"],precision:"lowp"},{id:"s57",name:"_",g:a,j:k,i:["u1","u34"],precision:"lowp"},{id:"s58",name:"_",g:n,j:{u0:0,u39:1},i:["u0","u39"],precision:"highp"}]);return{process:function(){B.set("s56");e.M();Q.l(d.da,!1);B.set("s57");B.P("u34",1,0);g.v();e.h(0);Q.l(!1,!1);B.P("u34",0,1);l.v();g.h(0);Q.l(!1,!1);B.set("s58");m.v();e.h(0);l.h(1);Q.l(!1,!1);m.h(0)},Za:function(){return m}}}}}(),Ac=function(){return{instance:function(a){function b(v){return Z.instance({isFloat:v,width:d.u,isPot:!1,isFlipY:!1})}
var d=Object.assign({sa:.1,ja:9,u:128,gain:1,Rc:0,ab:!1,da:!1},a),e=b(!1),g=null,l=null,m=null;d.ab&&(g=b(!1),l=b(!1),m=b(!0));a={u1:0};var n=[{id:"s59",name:"_",g:"uniform sampler2D u1;const float f=1.1111;varying vec2 vv0;const vec3 e=vec3(.2126,.7152,.0722);void main(){vec2 a=vv0*.5*(f+1.);float b=.5*(1.-f),c=dot(texture2D(u1,a).rgb,e),d=dot(texture2D(u1,a+vec2(0.,b)).rgb,e),h=dot(texture2D(u1,a+vec2(b,0.)).rgb,e),i=dot(texture2D(u1,a+vec2(b,b)).rgb,e);gl_FragColor=vec4(c,d,h,i);}".replace("1.1111",
d.Rc.toFixed(4)),j:a,i:["u1"],precision:"lowp"}];if(d.ab){var k="uniform sampler2D u1;const float e=1.1111,g=2.2222;uniform vec2 u34;varying vec2 vv0;void main(){vec4 b=vec4(0.);float c=0.;for(float a=-e;a<=e;a+=1.){vec2 i=u34*a,j=vv0+i*g;float d=1.2*a/e,f=exp(-d*d);b+=f*texture2D(u1,j),c+=f;}gl_FragColor=b/c;}".replace("1.1111",Math.round((d.ja-1)/2).toFixed(2)).replace("2.2222",(1/d.u).toFixed(6)),p="uniform sampler2D u0,u39;const float f=1.1111;const vec4 g=vec4(1.);const float h=2.2222;varying vec2 vv0;void main(){vec4 a=texture2D(u0,vv0),c=texture2D(u39,vv0),d=a*a,b=c,i=max(g*f,abs(d-b*b)),j=sqrt(i);gl_FragColor=h*(a-b)/j;}".replace("1.1111",
d.sa.toFixed(4)).replace("2.2222",d.gain.toFixed(4));n.push({id:"s60",name:"_",g:k,j:a,i:["u1","u34"],precision:"lowp"},{id:"s61",name:"_",g:p,j:{u0:0,u39:1},i:["u0","u39"],precision:"highp"})}B.ob(n);return{process:function(){B.set("s59");e.M();Q.l(d.da,!1);d.ab?(B.set("s60"),B.P("u34",1,0),g.v(),e.h(0),Q.l(!1,!1),B.P("u34",0,1),l.v(),g.h(0),Q.l(!1,!1),B.set("s61"),m.v(),e.h(0),l.h(1),Q.l(!1,!1),m.h(0)):e.h(0)},Nf:function(){return 2-d.Rc},Za:function(){return d.ab?m:e}}}}}(),Y={Pd:function(){return Y.vd()?
document.createElement("video"):!1},Xa:function(a,b){a[b]=!0;a.setAttribute(b,"true")},bf:function(){var a=!1,b=navigator.userAgent||navigator.vendor||window.opera;if(/(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(b)||/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(b.substr(0,
4)))a=!0;return a},af:function(){return/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream},hg:function(){try{return window.matchMedia("(orientation: portrait)").matches?!0:!1}catch(a){return window.innerHeight>window.innerWidth}},gh:function(){return Y.td()||Y.af()},Lg:function(a,b){window.addEventListener("beforeunload",function(){b&&b.getTracks&&b.getTracks().forEach(function(d){b.removeTrack(d)});a.videoStream&&a.videoStream.stop();a.videoStream=null},!1)},td:function(){var a=navigator.userAgent.toLowerCase();
return a.indexOf("safari")!==-1&&a.indexOf("chrome")===-1?!0:!1},Fh:function(){return Y.bf()?Y.hg()?window.innerHeight/window.innerWidth*45:45:45},vd:function(){return navigator.mediaDevices&&navigator.mediaDevices.getUserMedia?!0:!1},pause:function(a){a.pause()},Ci:function(a){a.play()},release:function(a){a.pause();a.videoStream&&a.videoStream.stop();a.videoStream=null},ud:function(a){if(!a)return a;var b=null;if(a.video){var d=function(e){return e&&typeof e==="object"?Object.assign({},e):e};b=
{};typeof a.video.width!=="undefined"&&(b.width=d(a.video.width));typeof a.video.height!=="undefined"&&(b.height=d(a.video.height));typeof a.video.facingMode!=="undefined"&&(b.facingMode=d(a.video.facingMode))}b={audio:a.audio,video:b};typeof a.deviceId!=="undefined"&&Y.od(b,a.deviceId);return b},od:function(a,b){b&&(a.video=a.video||{},a.video.deviceId={exact:b},a.video.facingMode&&delete a.video.facingMode)},He:function(a){var b=a.video.width;a.video.width=a.video.height;a.video.height=b;return a},
gf:function(a){function b(x){return[480,576,640,648,720,768,800,960,1080,1152,1280,1366,1920].sort(function(u,G){return Math.abs(u-x)-Math.abs(G-x)})}function d(x){var u=Y.ud(a);x=x(u);g.push(x);e(x)}function e(x){if(x.video&&x.video.facingMode&&x.video.facingMode.exact){var u=x.video.facingMode.exact;x=Y.ud(x);delete x.video.facingMode.exact;x.video.facingMode.ideal=u;g.push(x)}}var g=[];if(!a||!a.video)return g;e(a);if(a.video.width&&a.video.height){if(a.video.width.ideal&&a.video.height.ideal){var l=
b(a.video.width.ideal).slice(0,3),m=b(a.video.height.ideal).slice(0,3),n={},k=0;for(n.Ca=void 0;k<l.length;n={Ca:n.Ca},++k){n.Ca=l[k];var p={},v=0;for(p.va=void 0;v<m.length;p={va:p.va},++v)if(p.va=m[v],n.Ca!==a.video.width.ideal||p.va!==a.video.height.ideal){var D=Math.max(n.Ca,p.va)/Math.min(n.Ca,p.va);D<4/3-.1||D>16/9+.1||d(function(x,u){return function(G){G.video.width.ideal=x.Ca;G.video.height.ideal=u.va;return G}}(n,p))}}}d(function(x){return Y.He(x)})}a.video.width&&a.video.height&&(a.video.width.ideal&&
a.video.height.ideal&&d(function(x){delete x.video.width.ideal;delete x.video.height.ideal;return x}),d(function(x){delete x.video.width;delete x.video.height;return x}));a.video.facingMode&&(d(function(x){delete x.video.facingMode;return x}),a.video.width&&a.video.height&&d(function(x){Y.He(x);delete x.video.facingMode;return x}));g.push({audio:a.audio,video:!0});return g},he:function(a){a.volume=0;Y.Xa(a,"muted");if(Y.td()){if(a.volume===1){var b=function(){a.volume=0;window.removeEventListener("mousemove",
b,!1);window.removeEventListener("touchstart",b,!1)};window.addEventListener("mousemove",b,!1);window.addEventListener("touchstart",b,!1)}setTimeout(function(){a.volume=0;Y.Xa(a,"muted")},5)}},Ke:function(a,b,d){return a===null?Promise.resolve():new Promise(function(e,g){if(a.srcObject&&a.srcObject.getVideoTracks){var l=a.srcObject.getVideoTracks();l.length!==1?g("INVALID_TRACKNUMBER"):(l=l[0],b?Y.get(a,e,g,d):(l.stop(),e()))}else g("BAD_IMPLEMENTATION")})},Nd:function(a,b,d,e){function g(m){l||(l=
!0,d(m))}var l=!1;return navigator.mediaDevices.getUserMedia(e).then(function(m){function n(){setTimeout(function(){if(a.currentTime){var p=a.videoHeight;if(a.videoWidth===0||p===0)g("VIDEO_NULLSIZE");else{p={$e:null,Jg:null,mg:null};try{var v=m.getVideoTracks()[0];v&&(p.mg=v,p.$e=v.getCapabilities(),p.Jg=v.getSettings())}catch(D){}l||(Y.Lg(a,m),b(a,m,p))}}else g("VIDEO_NOTSTARTED")},700)}function k(){a.removeEventListener("loadeddata",k,!1);var p=a.play();Y.he(a);typeof p==="undefined"?n():p.then(function(){n()}).catch(function(){g("VIDEO_PLAYPROMISEREJECTED")})}
typeof a.srcObject!=="undefined"?a.srcObject=m:(a.src=window.URL.createObjectURL(m),a.videoStream=m);Y.he(a);a.addEventListener("loadeddata",k,!1)}).catch(function(m){g(m)})},Uf:function(a,b){var d=b||Y.Pd();return new Promise(function(e,g){Y.get(d,e,g,a)})},get:function(a,b,d,e){if(!a)return d&&d("VIDEO_NOT_PROVIDED"),!1;if(!Y.vd())return d&&d("MEDIASTREAMAPI_NOT_FOUND"),!1;Y.Xa(a,"autoplay");Y.Xa(a,"playsinline");e&&e.audio?a.volume=0:Y.Xa(a,"muted");Y.df(e).then(function(){Y.Nd(a,b,function(){function g(m){if(m.length===
0)d("NO_VALID_MEDIASTREAM_FALLBACK_CONSTRAINTS");else{var n=m.shift();Y.Nd(a,b,function(){g(m)},n)}}var l=Y.gf(e);g(l)},e)})},df:function(a){if(!a||!a.video||!a.video.facingMode)return Promise.resolve("NO_VIDEO_CONSTRAINTS");if(a.video.deviceId)return Promise.resolve("DEVICEID_ALREADY_SET");var b=a.video.facingMode;b=b.exact||b.ideal;if(!b)return Promise.resolve("NO_FACINGMODE");var d={user:[],environment:["camera2 0"]}[b];return d&&d.length!==0?new Promise(function(e){Y.Od(function(g){g?(g=g.find(function(l){var m=
l.label;return m?d.some(function(n){return m.includes(n)}):!1}))?(a.video.deviceId={exact:g.deviceId},e("SUCCESS")):e("NO_PREFERRED_DEVICE_FOUND"):e("NO_DEVICES_FOUND")})}):Promise.resolve("NO_PREFERRED_CAMERAS")},Od:function(a){if(!navigator.mediaDevices||!navigator.mediaDevices.enumerateDevices)return a(!1,"NOTSUPPORTED"),!1;navigator.mediaDevices.enumerateDevices().then(function(b){(b=b.filter(function(d){return d.kind&&d.kind.toLowerCase().indexOf("video")!==-1&&d.label&&d.deviceId}))&&b.length&&
b.length>0?a(b,!1):a(!1,"NODEVICESFOUND")}).catch(function(){a(!1,"PROMISEREJECTED")})},fh:function(a,b,d){var e={};e[b]=d;b=[];b.push(e);a.applyConstraints({advanced:b}).catch(function(){})}},wa=function(){function a(f,z,L,C,A,h,t){if(!G)if(t===h.length)A();else{switch(h[t]){case "A":L();break;case "D":f();break;case "S":z().then(function(I,M){J.Yb();a(f,z,L,M?null:C,A,h,++t)}).catch(function(I){console.log("An error occurred in the WebAR loop: ",I);A()});return;case "R":C&&C()}a(f,z,L,C,A,h,++t)}}
var b={n:5,Fc:1,Ac:0,Df:[25,39],xd:45,wb:[2,200],k:.7,Ug:200,pg:.05},d=-1,e=null,g=-1,l=-1,m=0,n=-1,k=-1,p=0,v=null,D=0,x=b.wb[1],u=Math.log(2),G=!0,J={Rf:function(){switch(d){case -1:return-1;case 0:return k+e.Ac;case 1:return p}},Kh:function(f){switch(d){case -1:return 1;case 0:return Math.pow(Math.min(Math.max(n,0),e.n-1)/(e.n-1),f||1);case 1:return(p-e.Ac)/(e.n-1)}},A:function(f){e=Object.assign({},b,f);n=k=e.Fc;d=0;v=e.Df.slice(0);J.reset();J.zf().then(function(z){z>=e.xd||(z/=e.xd,v[0]*=z,v[1]*=
z)})},Yb:function(f){f=(typeof f==="undefined"?Date.now():f)||0;var z=Math.min(Math.max(f-D,e.wb[0]),e.wb[1]);x=z;D=f;var L=g===-1?0:e.k;g=Math.min(Math.max(1E3/z,5),120)*(1-L)+g*L;f-l>e.Ug&&++m>5&&(z=e.k,n=n*(1-z)+(g<v[0]?k-1:g>v[1]?k+1:k)*z,Math.abs(n-k)>1-e.pg&&(z=Math.min(Math.max(Math.round(n),0),e.n-1),z!==k&&(n=k=z,g=(v[1]-v[0])*.5)),l=f)},Sc:function(f,z,L,C,A,h){G=!1;a(f,z,L,C,A,h,0)},stop:function(){G=!0},Uc:function(f){p=f;d=1},fd:function(){d=0;J.reset()},reset:function(){x=b.wb[1];l=
g=-1;m=0},Pi:function(f,z,L){L=Math.exp(-u*x/L);return(1-L)*f+L*z},Oh:function(){return x},zf:function(){return new Promise(function(f){function z(t){t=t||Date.now();var I=Math.max(0,t-C);C=t;A++!==0&&I>0&&(L=Math.min(L,I),++h);A<=10?window.requestAnimationFrame(z):f(Math.round(1E3/L))}var L=Infinity,C=0,A=0,h=0;setTimeout(z,1)})}};return J}(),Pa=function(){function a(D,x){var u=D[0]-.5;D=D[1]-.5;var G=x[0]-.5;x=x[1]-.5;return u*u+D*D-(G*G+x*x)}var b={je:4,Qb:[1.5,1.5,2],$:[.1,.1,.1],ue:1,u:-1,K:-1,
Pg:2,og:1,ve:!0,tf:.8},d=null,e=[],g=[],l=[],m=[0],n=[.5,.5,1],k=null,p=0,v=[0,0,0];return{A:function(D){d=Object.assign({},b,D);e.splice(0);g.splice(0);l.splice(0);p=0;D=d.Qb[0]*d.$[0];var x=d.Qb[1]*d.$[1],u=1/(1+d.Qb[2]*d.$[2]),G=d.ue*Math.min(d.u,d.K),J=G/d.u;G/=d.K;var f=d.tf*.5;f*=f;for(var z=0;z<d.je;++z){var L=[];g.push(L);var C=Math.pow(u,z),A=J*C,h=G*C;C=A*d.og;l.push(C);var t=A*D,I=h*x;A/=2;h/=2;for(var M=1+(1-A-A)/t,y=1+(1-h-h)/I,N=0;N<y;++N)for(var O=h+N*I,q=O-.5,r=0;r<M;++r){var w=A+
r*t,H=w-.5;H*H+q*q>f||(w=[w,O,C],e.push(w),L.push(w))}d.ve&&L.sort(a);k=e}d.ve&&e.sort(a)},get:function(D){var x=k.length;if(x===0)return n;for(;D>=m.length;)m.push(0);m[D]>=x&&(m[D]=0);var u=k[Math.floor(m[D])%x];m[D]=(m[D]+1/d.Pg)%x;if(p===0)return u;v[0]=u[0];v[1]=u[1];v[2]=p;return v},rg:function(D){D>=m.length||(m[D]=Math.floor(Math.random()*k.length))},Vc:function(D){p=D;if(p===0)k=e;else{for(var x=l.length,u=x-1,G=0;G<x;++G)if(l[G]<=D){u=G;break}k=g[u]}},reset:function(){for(var D=e.length/
m.length,x=0;x<m.length;++x)m[x]=Math.floor(x*D);p=0;k=e}}}(),Ta=function(){function a(){d(J+u.Dc);f.port.postMessage("DONE")}function b(){A.rb=u.qb===0?L(d):L(e)}function d(y){C.Ha&&G!==null&&(y-=J,y=Math.min(Math.max(y,u.zd[0]),u.zd[1]),J+=y,l(),h.isEnabled&&h.bb&&C.fa&&J-h.yc>u.kd&&(p(),h.yc=J),G(J))}function e(y){C.Ha&&(A.timeout=setTimeout(d.bind(null,y),u.qb))}function g(){G=null;C.Ha=!1;l()}function l(){A.rb&&(window.cancelAnimationFrame(A.rb),A.rb=null);A.timeout&&(window.clearTimeout(A.timeout),
A.timeout=null)}function m(y){y&&!C.fa?(C.fa=!0,z&&wa.fd(),f.port.postMessage("STOP"),aa.Je(!0),b()):!y&&C.fa&&(C.fa=!1,z&&wa.Uc(1),aa.Je(!1),f.port.postMessage("START"))}function n(y){y.target.hidden?I():t()}function k(y,N,O){N=y.createShader(N);y.shaderSource(N,O);y.compileShader(N);return N}function p(){h.bb=!1;var y=h.oa,N=h.Db,O=h.Eb,q=h.ca;y.uniform1f(h.Qd,Math.random());h.Ia?N.beginQueryEXT(q,O):y.beginQuery(q,O);y.drawElements(y.POINTS,1,y.UNSIGNED_SHORT,0);h.Ia?N.endQueryEXT(q):y.endQuery(q);
aa.flush();D().then(function(r){r===0||isNaN(r)?(h.isEnabled=!1,console.log("WARNING in benchmark_GPUClock: WebGL timer queries is not working properly. timeElapsedNs =",r)):(r=u.Me*u.jd*1E3/r,h.ac=(h.ac+1)%u.Na,h.zc[h.ac]=r,++h.fb>u.Na&&(h.Kb.set(h.zc),h.Kb.sort(function(w,H){return w-H}),r=h.Kb[Math.floor(u.Na/2)],h.yb=Math.max(h.yb,r),u.hd(r/h.yb)),h.bb=!0)}).catch(function(){h.bb=!0})}function v(y){var N=h.oa,O=h.Db,q=h.Eb;q=h.Ia?O.Hh(q,O.QUERY_RESULT_AVAILABLE_EXT):N.getQueryParameter(q,N.QUERY_RESULT_AVAILABLE);
N=N.getParameter(O.GPU_DISJOINT_EXT);q?y(!N):setTimeout(v.bind(null,y),.1)}function D(){return new Promise(function(y,N){v(function(O){if(O){O=h.oa;var q=h.Db,r=h.Eb;O=h.Ia?q.getQueryObjectEXT(r,q.QUERY_RESULT_EXT):O.getQueryParameter(r,O.QUERY_RESULT);y(O)}else N()})})}var x={$d:!0,zd:[1,200],Dc:20,qb:0,jd:50,Me:240,kd:3E3,Na:3,hd:null},u=null,G=null,J=0,f=null,z=!1,L=null,C={wa:!1,fa:!0,wc:!1,uc:!1,tc:!1,Ha:!1},A={rb:null,timeout:null},h={isEnabled:!1,bb:!1,oa:null,Db:null,Eb:null,ca:null,Qd:null,
Ia:!0,yc:0,fb:0,zc:null,Kb:null,ac:0,yb:0},t=m.bind(null,!0),I=m.bind(null,!1),M={A:function(y){u=Object.assign(x,y);Object.assign(C,{fa:!0,wa:!0,Ha:!1});L=window.requestPostAnimationFrame||window.requestAnimationFrame;if(u.hd!==null){y=document.createElement("canvas");y.setAttribute("width","1");y.setAttribute("height","1");var N={antialias:!1};y=y.getContext("webgl2",N)||y.getContext("webgl",N);if(N=y.getExtension("EXT_disjoint_timer_query")||y.getExtension("EXT_disjoint_timer_query_webgl2")){h.oa=
y;h.Db=N;h.isEnabled=!0;h.Ia=N.beginQueryEXT?!0:!1;var O=k(y,y.VERTEX_SHADER,"attribute vec4 a0;void main(){gl_Position=a0;}"),q=k(y,y.FRAGMENT_SHADER,"precision lowp float;uniform float u40;void main(){vec4 a=u40*vec4(1.,2.,3.,4.);for(int b=0;b<666;b+=1)a=cos(a);gl_FragColor=a;}".replace("666",u.jd.toString())),r=y.createProgram();y.attachShader(r,O);y.attachShader(r,q);y.linkProgram(r);O=y.getAttribLocation(r,"a0");h.Qd=y.getUniformLocation(r,"u40");y.useProgram(r);y.enableVertexAttribArray(O);
r=y.createBuffer();y.bindBuffer(y.ARRAY_BUFFER,r);y.bufferData(y.ARRAY_BUFFER,new Float32Array([.5,.5,0,1]),y.STATIC_DRAW);y.vertexAttribPointer(O,4,y.FLOAT,!1,16,0);r=y.createBuffer();y.bindBuffer(y.ELEMENT_ARRAY_BUFFER,r);y.bufferData(y.ELEMENT_ARRAY_BUFFER,new Uint16Array([0]),y.STATIC_DRAW);y.disable(y.DEPTH_TEST);y.disable(y.DITHER);y.disable(y.STENCIL_TEST);y.viewport(0,0,1,1);r=h.Ia?N.createQueryEXT():y.createQuery();h.Eb=r;h.ca=N.TIME_ELAPSED_EXT||y.TIME_ELAPSED;h.yc=-u.kd;h.zc=new Float32Array(u.Na);
h.Kb=new Float32Array(u.Na);h.yb=0;h.ac=0;h.fb=0;h.bb=!0}}if(u.$d){y=!1;try{if(typeof SharedWorker==="undefined"){var w=URL.createObjectURL(new Blob(["let handler = null;\n self.addEventListener('message', function(e){\n if (handler !== null){\n clearTimeout(handler);\n handler = null;\n }\n switch (e.data) {\n case 'START':\n case 'DONE':\n handler = setTimeout(function(){\n self.postMessage('TICK');\n }, "+
u.Dc.toString()+");\n break;\n case 'STOP':\n break;\n };\n }, false);"],{type:"text/javascript"})),H=new Worker(w);H.addEventListener("message",a);f={oe:H,port:H};C.wc=!0}else{var P=URL.createObjectURL(new Blob(["let handler = null;\n onconnect = function(e) {\n const port = e.ports[0];\n port.addEventListener('message', function(e) {\n \n if (handler !== null){\n clearTimeout(handler);\n handler = null;\n }\n switch (e.data) {\n case 'START':\n case 'DONE':\n handler = setTimeout(function(){\n port.postMessage('TICK');\n }, "+
u.Dc.toString()+");\n break;\n case 'STOP':\n break;\n };\n \n });\n \n port.start();\n } // end onconnect()"],{type:"text/javascript"})),ba=new SharedWorker(P);ba.port.start();ba.port.addEventListener("message",a);f={oe:ba,port:ba.port};C.uc=!0}y=!0}catch(ka){}y&&("onvisibilitychange"in document?document.addEventListener("visibilitychange",n):(window.addEventListener("blur",I),window.addEventListener("focus",t)),window.addEventListener("pagehide",
I),window.addEventListener("pageshow",t),C.tc=!0)}z=typeof wa!=="undefined"},m:function(){g();C.tc&&("onvisibilitychange"in document?document.removeEventListener("visibilitychange",n):(window.removeEventListener("blur",I),window.removeEventListener("focus",t)),window.removeEventListener("pagehide",I),window.removeEventListener("pageshow",t),C.tc=!1);C.uc?(f.port.close(),C.uc=!1):C.wc&&(f.oe.terminate(),C.wc=!1);Object.assign(C,{fa:!0,wa:!1,Ha:!1});G=null},oi:function(){return C.fa},update:function(y){Object.assign(u,
y)},Sc:function(y){C.wa||M.A({});l();C.Ha=!0;G=y;C.fa&&b()},stop:g};return M}(),ca=function(){function a(f,z,L,C){return Math.max(0,L>f?f+z/2-(L-C/2):L+C/2-(f-z/2))}function b(f){return!n.Wd(f)}function d(f,z,L){for(var C=f.length;G.length<C;)G.push({ra:[0,0],Lb:[0,0],ka:[0,0],za:0,scale:0,Va:0,jb:0});C=f.length;for(var A=0;A<C;++A){var h=f[A],t=G[A],I=z[A].rz,M=Math.cos(I),y=Math.sin(I);t.za=I;t.Va=M;t.jb=y;t.ka[0]=h.x;t.ka[1]=h.y/L;t.scale=h.V;t.ra[0]=h.V*n.kc[0];t.ra[1]=h.V*n.kc[1];t.Lb[0]=t.ra[0]*
t.ra[0];t.Lb[1]=t.ra[1]*t.ra[1]}}function e(f,z,L){var C=Math.abs(-f.jb*(L-f.ka[1])-f.Va*(z-f.ka[0]));z=Math.abs(f.Va*(L-f.ka[1])-f.jb*(z-f.ka[0]));return C*C/f.Lb[0]+z*z/f.Lb[1]<=1}function g(f,z,L,C){var A=f[L];d(f,z,C);var h=G[L];return f.some(function(t,I){if(!(t=I===L||A.xa>t.xa||t.xa<3||!(a(A.x,A.V*u,t.x,t.V*u)>0)||!(a(A.y,A.V*C*u,t.y,t.V*C*u)>0))){t=G[I];h.scale>t.scale?I=h:(I=t,t=h);for(var M=0,y=0,N=n.uf,O=0;O<N;++O)for(var q=((O+.5)/N*2-1)*t.ra[1],r=0;r<N;++r){var w=((r+.5)/N*2-1)*t.ra[0],
H=t.ka[0]+(-q*t.jb+w*t.Va);w=t.ka[1]+(q*t.Va+w*t.jb);e(t,H,w)&&(++M,e(I,H,w)&&++y)}t=y/M<n.ge}return t?!1:!0})}function l(f){return f.isDetected}var m={T:1,ge:.3,kc:[1,1],uf:6,we:.3,Wd:null,eg:!0},n=null,k=0,p=null,v=!1,D=0,x=0,u=Math.sqrt(2),G=[],J={A:function(f){n=Object.assign({},m,f);p=[0]},ee:function(){return n.T!==1},Ld:function(){return k},de:function(){return v},na:function(){return n.T},$h:function(){return p},ig:function(f){return p.includes(f)},update:function(f,z){var L=p;if(L.length>
f)L.splice(0,L.length-f);else for(;L.length<f;)L.push(0);if(n.T!==1)if(z.every(b)){z=D;for(var C=0;C<f;++C)L[C]=z,z=(z+1)%n.T;D=z}else{C=Math.round(n.we*f);C=Math.max(1,C);for(var A=D,h=0,t=0;h<f;++h){if(b(z[A])&&++t>C){do++A===n.T&&(A=0);while(b(z[A]))}L[h]=A;A=(A+1)%n.T}D=A}},Yb:function(f){k=p[f];x=(.5+k)/n.T;v=p.lastIndexOf(k)===f;return k},Mg:function(f,z,L){return n.T===1?!1:g(f,z,k,L)},Ie:function(f){n.eg&&n.T===1||B.F(f,x)},Bf:function(f){return f.find(l)},Cf:function(f){return f.findIndex(l)},
xf:function(f){var z=J.Bf(f);if(!z||f.every(l))return Pa.Vc(0),!1;Pa.Vc(z.s);return!0},sf:function(f){for(var z=new Float32Array(f.length*n.T),L=0,C;L<n.T;++L)for(C=0;C<f.length;++C)z[L*f.length+C]=f[C];return z},jc:function(f){for(var z=[],L=0;L<n.T;++L){var C=z,A=C.push,h=void 0,t=f,I={};for(h in t){var M=h;var y=t[h];var N=typeof y;y=["string","boolean","number"].includes(N)?y:N!=="object"?null:ArrayBuffer.isView(y)?y.slice():JSON.parse(JSON.stringify(y));I[M]=y}A.call(C,I)}return z}};return J}(),
Mb=function(){var a={ag:!0,isLinear:!0,Ec:[4,11]};return{yf:function(b,d,e){return d.isDetected?Math.floor(d.s*b):(b=Math.floor(Math.log2(b/4)),b=Math.min(Math.max(b,4),9),Math.max(e,Math.pow(2,b)))},instance:function(b){var d=Object.assign({},a,b),e=[],g=null,l=-1,m=null,n=!1;for(b=d.Ec[0];b<=d.Ec[1];++b)e[b]=null;return{M:function(k,p){p!==l&&(g&&g.remove(),g=Z.instance({isLinear:d.isLinear,isPot:!0,width:p}));if(n=d.ag&&p<k*.5){k=Math.floor(Math.log2(k));var v=d.Ec;k=Math.min(Math.max(k,v[0]),
v[1]);v=k;if(!e[v]){var D=Z.instance({isPot:!0,isMipmap:!0,ae:!0,width:Math.pow(2,v)});e[v]={D:D,fe:-1}}k=e[k];m=k.D;k.fe!==p&&(v=Math.log2(p),m.h(0),m.Be(v),Da.N(0),k.fe=p)}else m=g;l=p;m.M()},h:function(k){m.h(k);n&&m.Ab()},Da:function(k){m.Da(k)},remove:function(){g&&g.remove();e.forEach(function(k){k&&k.D.remove()})}}}}}(),ra={qd:0,Wg:20,vf:!0,yg:{thresholdSignal:.2,threshold:.93,nDetectsPerLoopRange:[2,8],nDetectsPerLoop:0,nScaleLevels:3,scale0Factor:.8,overlapFactors:[2,2,3],translationScalingFactors:[1,
1,1],translationScalingFactorsScan:[1,1,1],readPixelsAsyncDelay:1,enableAsyncReadPixels:!1,isCleanGLStateAtEachIteration:!0,animateProcessOrder:"DSAR",disableIsRightHandNNEval:!1,multiDetectionSearchSlotsRate:.3,multiDetectionMaxOverlap:.7,multiDetectionOverlapScaleXY:[1,1],multiDetectionEqualizeSearchSlotScale:!1,multiDetectionForceSearchOnOtherSide:!1,multiDetectionForceChirality:0},$:[.07,.07,.15],Rg:50,ng:2,Og:{qualityFactorRange:[.75,.92],alphaRange:[.05,.9],followZRotAlphaFactorRange:[.05,.5],
switchNNErrorThreshold:.5,switchNNMinIterations:8,switchNNConsecutiveIterations:6,NNSwitchMask:{isFlipped:!0,isRightHand:!0}},Pe:.1,Qe:1.5,Ng:12,ld:2},ya={facingMode:"user",idealWidth:800,idealHeight:600,minWidth:480,maxWidth:1280,minHeight:480,maxHeight:1280,rotate:0},fa={Bc:-1,error:-2,Nb:0,Fe:1,play:2,pause:3},ia=fa.Nb,Bb=!1,kb=!1,E=null,Gc={cb:!1,Xd:!1,$c:null,element:null,D:null,H:[0,0],B:[.5,0,0,.5],ga:[.5,0,0,.5],Tb:0,Ta:null,Lc:null,Jc:null,Ib:!1},R=null,Hc={Sa:!1,dc:!1,lb:null,mb:null,aa:!1,
pb:ra.qd,vi:ra.qd,ta:!0,mc:!0,vc:!0},fb=null,Na=[-1,-1],oa=[],ea=[],Ga=[],ma={Zc:null,eb:null,Sb:null,Ra:null,fb:0},Za={bc:0,md:1},X=null,na=null,V=null,Ic={u:0,K:0,sb:1,H:[0,0],Gb:null},wb=0,ha={size:0,kb:null,Aa:null,buffer:null,Yc:null},Oa=null,qa=null,ub=null,Aa=-1,Ma={labels:[],pe:null,Gc:0,Ic:0},hb={ke:0,Re:1,Wf:2},vb=[],Rb=0,tb=!1,nc=Math.PI/180,gb={VERSION:"1.9.1",init:function(a){if(ia!==fa.Nb)return a.callbackReady&&a.callbackReady("ALREADY_INITIALIZED"),!1;ia=fa.Bc;Rb=0;E=Object.assign({},
Gc);R=Object.assign({},Hc);V=Object.assign({},Ic);!function(t){if(false&&false)module.exports=t();else if(false&&false)define([],t);else{("undefined"!=typeof window?window:false?global:"undefined"!=typeof self?self:this).zyp=t()}}(function(){return function(){return function t(r,e,o){function n(i,a){if(!e[i]){if(!r[i]){var u=false;if(!a&&u)return u(i,!0);if(s)return s(i,!0);var h=new Error("Cannot find module '"+i+"'");throw h.code="MODULE_NOT_FOUND",h}var c=e[i]={exports:{}};r[i][0].call(c.exports,function(t){return n(r[i][1][t]||t)},c,c.exports,t,r,e,o)}return e[i].exports}for(var s=false,i=0;i<o.length;i++)n(o[i]);return n}}()({1:[function(t,r,e){Object.defineProperty(e,"zzB",{value:!0}),e.default=e.zzZ3=void 0;var o=t("./zzz3/zz04"),n=t("zz14");function s(t,r){for(var e=0;e<r.length;e++){var o=r[e];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}var i="1.0.6",a=function t(r){var e=r.shift();if(0===r.length)return new Float32Array(e);for(var o=Array(e),n=0;n<e;++n)o[n]=t(r.slice(0));return o},u=function(t,r){var e=t[0][0]+t[1][1]+t[2][2],o=t[0][0],n=t[1][0],s=t[2][0],i=t[0][1],a=t[1][1],u=t[2][1],h=t[0][2],c=t[1][2],f=t[2][2],l=0,v=0,m=0,g=0;if(e>0){var w=.5/Math.sqrt(e+1);l=.25/w,v=(c-u)*w,m=(s-h)*w,g=(i-n)*w}else if(o>a&&o>f){var p=2*Math.sqrt(1+o-a-f);l=(c-u)/p,v=.25*p,m=(n+i)/p,g=(s+h)/p}else if(a>f){var y=2*Math.sqrt(1+a-o-f);l=(s-h)/y,v=(n+i)/y,m=.25*y,g=(u+c)/y}else{var d=2*Math.sqrt(1+f-o-a);l=(i-n)/d,v=(s+h)/d,m=(u+c)/d,g=.25*d}r[0]=v,r[1]=m,r[2]=g,r[3]=l};e.zzZ3=u;var h=function(){function t(r){var e=r.cameraFocals,n=void 0===e?[1,1]:e,s=r.zz32,u=void 0===s?9:s,h=r.prevSolveErrorDecay,c=void 0===h?.95:h,f=r.rotationDirectionSrc,l=void 0===f?null:f,v=r.rotationDirectionDst,m=void 0===v?null:v;!function(t,r){if(!(t instanceof r))throw new Error()}(this,t),this.VERSION=i,this.rMat=o.Matrix.zzJ1(3,3),this.tVec=[0,0,0],this.zyp14(n),this.zz32=u,this.prevSolveErrorDecay=c,this.rotationDirectionSrc=l||[-2,-2,-2],this.rotationDirectionDst=m||[-2,-2,-2],this.isForceRotationDirection=!(!l||!m),this.zz42=new Float32Array,this.us=new Float32Array,this.zz52=new Float32Array,this.zz62=new Float32Array,this.zz72=0,this.zz82=0,this.zz92=o.Matrix.zzG1(4,3),this.zzA2=o.Matrix.zzG1(4,3),this.zzk3=0;this.mem={dv:a([4,6,3]),v:new Uint8Array([11,10,9,8]),zzX3:a([4,4]),zzW3Dets:a([4,2]),Rs:a([4,3,3]),ts:a([4,3]),CC:o.Matrix.zzG1(3,3),L6x4:o.Matrix.zzG1(6,4),L6x3:o.Matrix.zzG1(6,3),L6x5:o.Matrix.zzG1(6,5),A:o.Matrix.zzG1(6,4),B:o.Matrix.zzG1(6,1),zzG141:o.Matrix.zzG1(4,1),pc0:new Float32Array(3),pw0:new Float32Array(3),ABt:o.Matrix.zzG1(3,3),L6x10:o.Matrix.zzG1(6,10),zzY3:o.Matrix.zzG1(6,1),zzm3:null,U3:o.Matrix.zzG1(3,3),U12:o.Matrix.zzG1(12,12)},this.zzB2={PW0:null,tPW0:null,M:null,tM:null},this.zzV3={zzl3:-1,zyp13:!1,R:null,t:null,repError:-1,q:new Float32Array(4)}}var r,e,h;return r=t,(e=[{key:"solve",value:function(t,r){this.zzV3.zyp13=!1;var e=t.length;if(e!==r.length||e<4)throw new Error();this.zzk1(e);for(var o=0;o<e;++o)this.zzl1(t[o],r[o],o);return this.zzj1(),this.zzV3}},{key:"zyp14",value:function(t){this.fu=t[0],this.fv=t[1]}},{key:"zzk1",value:function(t){this.zz82!==t&&(this.zzB2.PW0=o.Matrix.zzG1(t,3),this.zzB2.tPW0=o.Matrix.zzG1(3,t),this.zzB2.M=o.Matrix.zzG1(2*t,12),this.zzB2.tM=o.Matrix.zzG1(12,2*t),this.zz82=t),this.zz72<t&&(this.zz42=new Float32Array(3*t),this.us=new Float32Array(2*t),this.zz52=new Float32Array(4*t),this.zz62=new Float32Array(3*t),this.zz72=t)}},{key:"zzl1",value:function(t,r,e){var o=this.zz42,n=this.us;o[3*e]=t[0],o[3*e+1]=t[1],o[3*e+2]=t[2],n[2*e]=r[0],n[2*e+1]=r[1]}},{key:"zzm1",value:function(){var t=this.zz92,r=this.zz82,e=this.zz42,s=this.zzB2,i=s.PW0,a=s.tPW0,u=this.mem.U3;t.set(0,0,0),t.set(0,1,0),t.set(0,2,0);for(var h=0;h<r;++h)for(var c=0;c<3;++c)t.zzn3(0,c,e[3*h+c]);for(var f=0;f<3;++f)t.mulComponent(0,f,1/r);for(var l=0;l<r;++l)for(var v=0;v<3;++v)i.set(l,v,e[3*l+v]-t.get(0,v));i.zz012(a),a.zzr2(i,u);var m=u,g=(0,o.zz92)(m,{zzZ2:!1,zzj3:0});g.U.zz012(u);for(var w=u,p=g.s,y=1;y<4;++y)for(var d=(0,n.zzr3)(p[y-1]/r),b=0;b<3;++b)t.set(y,b,t.get(0,b)+d*w.get(y-1,b))}},{key:"zzn1",value:function(){for(var t=this.zz42,r=this.zz52,e=this.zz92,n=this.zz82,s=this.mem.CC,i=0;i<3;++i)for(var a=1;a<4;++a)s.set(i,a-1,e.get(a,i)-e.get(0,i));for(var u=(0,o.inverse2)(s,!0,20),h=0;h<n;++h){for(var c=3*h,f=4*h,l=0;l<3;++l)r[f+1+l]=u.get(l,0)*(t[c]-e.get(0,0))+u.get(l,1)*(t[c+1]-e.get(0,1))+u.get(l,2)*(t[c+2]-e.get(0,2));r[f]=1-r[f+1]-r[f+2]-r[f+3]}}},{key:"zzLM",value:function(t,r,e,o,n){for(var s=this.zz52,i=this.fu,a=this.fv,u=0;u<4;++u){var h=s[e+u];t.set(r,3*u,h*i),t.set(r,3*u+1,0),t.set(r,3*u+2,-o*h),t.set(r+1,3*u,0),t.set(r+1,3*u+1,h*a),t.set(r+1,3*u+2,-n*h)}}},{key:"zzp1",value:function(t,r){for(var e=this.mem,o=e.dv,s=e.v,i=0;i<4;++i)for(var a=0,u=1,h=0;h<6;++h)o[i][h][0]=t.get(s[i],3*a)-t.get(s[i],3*u),o[i][h][1]=t.get(s[i],3*a+1)-t.get(s[i],3*u+1),o[i][h][2]=t.get(s[i],3*a+2)-t.get(s[i],3*u+2),++u>3&&(u=++a+1);for(var c=0;c<6;++c)r.set(c,0,(0,n.zzs3)(o[0][c],o[0][c])),r.set(c,1,2*(0,n.zzs3)(o[0][c],o[1][c])),r.set(c,2,(0,n.zzs3)(o[1][c],o[1][c])),r.set(c,3,2*(0,n.zzs3)(o[0][c],o[2][c])),r.set(c,4,2*(0,n.zzs3)(o[1][c],o[2][c])),r.set(c,5,(0,n.zzs3)(o[2][c],o[2][c])),r.set(c,6,2*(0,n.zzs3)(o[0][c],o[3][c])),r.set(c,7,2*(0,n.zzs3)(o[1][c],o[3][c])),r.set(c,8,2*(0,n.zzs3)(o[2][c],o[3][c])),r.set(c,9,(0,n.zzs3)(o[3][c],o[3][c]))}},{key:"zzq1",value:function(t){var r=this.zz92;t.set(0,0,(0,n.zzq3)(r,0,1)),t.set(1,0,(0,n.zzq3)(r,0,2)),t.set(2,0,(0,n.zzq3)(r,0,3)),t.set(3,0,(0,n.zzq3)(r,1,2)),t.set(4,0,(0,n.zzq3)(r,1,3)),t.set(5,0,(0,n.zzq3)(r,2,3))}},{key:"zzr1",value:function(t,r,e){for(var s=this.mem.L6x4,i=0;i<6;++i)s.set(i,0,t.get(i,0)),s.set(i,1,t.get(i,1)),s.set(i,2,t.get(i,3)),s.set(i,3,t.get(i,6));var a=(0,o.zzp3)(s,r,!0,10),u=(0,n.SIGN)(a.get(0,0));e[0]=(0,n.zzr3)(u*a.get(0,0)),e[1]=u*a.get(1,0)/e[0],e[2]=u*a.get(2,0)/e[0],e[3]=u*a.get(3,0)/e[0]}},{key:"zzs1",value:function(t,r,e){for(var s=this.mem.L6x3,i=0;i<6;++i)s.set(i,0,t.get(i,0)),s.set(i,1,t.get(i,1)),s.set(i,2,t.get(i,2));var a=(0,o.zzp3)(s,r,!0,11),u=(0,n.SIGN)(a.get(0,0));e[0]=(0,n.zzr3)(u*a.get(0,0)),e[1]=u*a.get(2,0)>0?(0,n.zzr3)(u*a.get(2,0)):0,e[0]*=(0,n.SIGN)(a.get(1,0)),e[2]=0,e[3]=0}},{key:"zzt1",value:function(t,r,e){for(var s=this.mem.L6x5,i=0;i<6;++i)s.set(i,0,t.get(i,0)),s.set(i,1,t.get(i,1)),s.set(i,2,t.get(i,2)),s.set(i,3,t.get(i,3)),s.set(i,4,t.get(i,4));var a=(0,o.zzp3)(s,r,!0,12),u=(0,n.SIGN)(a.get(0,0));e[0]=(0,n.zzr3)(u*a.get(0,0)),e[1]=u*a.get(2,0)>0?(0,n.zzr3)(u*a.get(2,0)):0,a.get(1,0)<0&&(e[0]*=-1),e[2]=a.get(3,0)/e[0],e[3]=0}},{key:"zzu1",value:function(t,r,e){for(var o=this.mem,n=o.A,s=o.B,i=0;i<this.zz32;++i){this.zzv1(t,r,e,n,s);for(var a=this.zzw1(n,s),u=0;u<4;++u)e[u]+=a.get(u,0)}}},{key:"zzv1",value:function(t,r,e,o,n){for(var s=0;s<6;++s)o.set(s,0,2*t.get(s,0)*e[0]+t.get(s,1)*e[1]+t.get(s,3)*e[2]+t.get(s,6)*e[3]),o.set(s,1,t.get(s,1)*e[0]+2*t.get(s,2)*e[1]+t.get(s,4)*e[2]+t.get(s,7)*e[3]),o.set(s,2,t.get(s,3)*e[0]+t.get(s,4)*e[1]+2*t.get(s,5)*e[2]+t.get(s,8)*e[3]),o.set(s,3,t.get(s,6)*e[0]+t.get(s,7)*e[1]+t.get(s,8)*e[2]+2*t.get(s,9)*e[3]),n.set(s,0,r.get(s,0)-(t.get(s,0)*e[0]*e[0]+t.get(s,1)*e[0]*e[1]+t.get(s,2)*e[1]*e[1]+t.get(s,3)*e[0]*e[2]+t.get(s,4)*e[1]*e[2]+t.get(s,5)*e[2]*e[2]+t.get(s,6)*e[0]*e[3]+t.get(s,7)*e[1]*e[3]+t.get(s,8)*e[2]*e[3]+t.get(s,9)*e[3]*e[3]))}},{key:"zzw1",value:function(t,r){var e=null;return this.mem.zzm3?(e=this.mem.zzm3).update(t):(e=new o.zzT2(t),this.mem.zzm3=e),e.zzY1()?e.solve(r):this.mem.zzG141}},{key:"zzx1",value:function(t,r){for(var e=this.zzA2,o=0;o<4;++o)e.set(o,0,0),e.set(o,1,0),e.set(o,2,0);for(var n=0;n<4;++n)for(var s=0;s<4;++s)for(var i=0;i<3;++i)e.zzn3(s,i,t[n]*r.get(11-n,3*s+i))}},{key:"zzy1",value:function(){for(var t=this.zzA2,r=this.zz82,e=this.zz52,o=this.zz62,n=0;n<r;++n)for(var s=4*n,i=3*n,a=0;a<3;++a)o[i+a]=e[s]*t.get(0,a)+e[s+1]*t.get(1,a)+e[s+2]*t.get(2,a)+e[s+3]*t.get(3,a)}},{key:"zzz1",value:function(){var t=this.zz62,r=this.zz82,e=this.zzA2;if(t[2]<0){for(var o=0;o<4;++o)for(var n=0;n<3;++n)e.mulComponent(o,n,-1);for(var s=0;s<r;++s)t[3*s]=-t[3*s],t[3*s+1]=-t[3*s+1],t[3*s+2]=-t[3*s+2]}}},{key:"zz02",value:function(t,r){var e=this.zz62,s=this.zz42,i=this.zz82,a=this.mem,u=a.pc0,h=a.pw0,c=a.ABt;c.zzi3();for(var f=0;f<i;++f)for(var l=0;l<3;++l)u[l]+=e[3*f+l],h[l]+=s[3*f+l];for(var v=0;v<3;++v)u[v]/=i,h[v]/=i;for(var m=0;m<i;++m)for(var g=0;g<3;++g)c.zzn3(g,0,(e[3*m+g]-u[g])*(s[3*m]-h[0])),c.zzn3(g,1,(e[3*m+g]-u[g])*(s[3*m+1]-h[1])),c.zzn3(g,2,(e[3*m+g]-u[g])*(s[3*m+2]-h[2]));for(var w=(0,o.zz92)(c,{zzj3:2}),p=w.U,y=w.V,d=0;d<3;++d)for(var b=0;b<3;++b)t[d][b]=(0,n.zzs3)(p.zzM(d),y.zzM(b));var M=new o.Matrix(t),x=(0,o.zzU1)(M);return x<=0&&(t[2][0]*=-1,t[2][1]*=-1,t[2][2]*=-1),r[0]=u[0]-(0,n.zzs3)(t[0],h),r[1]=u[1]-(0,n.zzs3)(t[1],h),r[2]=u[2]-(0,n.zzs3)(t[2],h),x}},{key:"zz12",value:function(t,r){for(var e=0,o=this.zz82,s=this.fu,i=this.fv,a=this.zz42,u=this.us,h=0;h<o;++h){var c=a.slice(3*h,3*h+3),f=(0,n.zzs3)(t[0],c)+r[0],l=(0,n.zzs3)(t[1],c)+r[1],v=1/((0,n.zzs3)(t[2],c)+r[2]),m=s*f*v,g=i*l*v,w=u[2*h],p=u[2*h+1];e+=(0,n.zzr3)((w-m)*(w-m)+(p-g)*(p-g))}return e/o}},{key:"zz22",value:function(t,r,e,o,n){this.zzx1(r,t),this.zzy1(),this.zzz1(),n[1]=this.zz02(e,o),n[0]=this.zz12(e,o)}},{key:"zzj1",value:function(){var t=this.zz82,r=this.us,e=this.mem,n=this.zzV3,s=this.zzk3,i=e.L6x10,a=e.zzY3,h=e.zzX3,c=e.zzW3Dets,f=e.Rs,l=e.ts,v=e.U12,m=this.zzB2,g=m.M,w=m.tM;this.zzm1(),this.zzn1();for(var p=0;p<t;++p)this.zzLM(g,2*p,4*p,r[2*p],r[2*p+1]);g.zz012(w),w.zzr2(g,v);var y=v;(0,o.zz92)(y,{zzZ2:!1,zzj3:1}).U.zz012(v);var d=v;this.zzp1(d,i),this.zzq1(a),this.zzr1(i,a,h[0]),this.zzu1(i,a,h[0]),this.zz22(d,h[0],f[0],l[0],c[0]),this.zzs1(i,a,h[1]),this.zzu1(i,a,h[1]),this.zz22(d,h[1],f[1],l[1],c[1]),this.zzt1(i,a,h[2]),this.zzu1(i,a,h[2]),this.zz22(d,h[2],f[2],l[2],c[2]),this.zzu1(i,a,h[3]),this.zz22(d,h[3],f[3],l[3],c[3]),c[3][0]*=this.prevSolveErrorDecay;var b=[0,1,2,3];if(this.isForceRotationDirection){var M=b.slice(0),x=this.rotationDirectionSrc,k=this.rotationDirectionDst;if(0===(b=b.filter(function(t){var r=f[t],e=r[0][0],o=r[1][0],n=-r[2][0],s=r[0][1],i=r[1][1],a=-r[2][1],u=-r[0][2],h=-r[1][2],c=r[2][2],l=e*x[0]+o*x[1]+n*x[2],v=s*x[0]+i*x[1]+a*x[2],m=u*x[0]+h*x[1]+c*x[2];return l*k[0]+v*k[1]+m*k[2]>=.1})).length){if(-1!==n.zzl3)return void(n.zyp13=!0);b=M}}var S=-1,E=-1;b.forEach(function(t){(-1===E||Math.abs(c[t][0])<Math.abs(c[E][0]))&&(E=t),c[t][1]*s>=0&&(-1===S||Math.abs(c[t][0])<Math.abs(c[S][0]))&&(S=t)});var R=-1===S?E:S;this.zzk3=c[R][1],h[3].set(h[R]);var T=f[R];T[0][2]*=-1,T[1][2]*=-1,T[2][0]*=-1,T[2][1]*=-1,u(T,n.q),n.zzl3=R,n.zyp13=!0,n.repError=c[R][0],n.R=T,n.t=l[R]}},{key:"reset",value:function(){this.zzk3=0,this.zzV3.zzl3=-1}}])&&s(r.prototype,e),h&&s(r,h),t}();e.default=h},{"zz14":3,"./zzz3/zz04":4}],2:[function(t,r,e){var o,n=(o=t("./zypSolver"))&&o.zzB?o:{default:o};r.exports={zypSolver:n.default}},{"./zypSolver":1}],3:[function(t,r,e){Object.defineProperty(e,"zzB",{value:!0}),e.zzq3=e.zzs3=e.SIGN=e.zzr3=void 0;var o=Math.sqrt;e.zzr3=o;var n=Math.sign;e.SIGN=n;e.zzs3=function(t,r){return t[0]*r[0]+t[1]*r[1]+t[2]*r[2]};e.zzq3=function(t,r,e){var o=t.get(r,0),n=t.get(r,1),s=t.get(r,2),i=t.get(e,0),a=t.get(e,1),u=t.get(e,2);return(o-i)*(o-i)+(n-a)*(n-a)+(s-u)*(s-u)}},{}],4:[function(t,r,e){function o(t,r){if("function"!=typeof r&&null!==r)throw new Error();t.prototype=Object.create(r&&r.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),r&&n(t,r)}function n(t,r){return(n=Object.setPrototypeOf||function(t,r){return t.__proto__=r,t})(t,r)}function s(t){var r=function(){if("undefined"==typeof zzt3||!zzt3.construct)return!1;if(zzt3.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(zzt3.construct(Date,[],function(){})),!0}catch(t){return!1}}();return function(){var e,o=a(t);if(r){var n=a(this).constructor;e=zzt3.construct(o,arguments,n)}else e=o.apply(this,arguments);return i(this,e)}}function i(t,r){return!r||"object"!==f(r)&&"function"!=typeof r?function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(t):r}function a(t){return(a=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(t)}function u(t,r){if(!(t instanceof r))throw new Error()}function h(t,r){for(var e=0;e<r.length;e++){var o=r[e];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}function c(t,r,e){return r&&h(t.prototype,r),e&&h(t,e),t}function f(t){"@babel/helpers - typeof";return(f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}var l,v;l=void 0,v=function(t){var r=Object.prototype.toString;function e(t){return r.call(t).endsWith("Array]")}function n(t){var r,o=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e(t))throw new Error();if(0===t.length)throw new Error();if(void 0!==o.output){if(!e(o.output))throw new Error();r=o.output}else r=new Array(t.length);var n=function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e(t))throw new Error();if(0===t.length)throw new Error();var o=r.fromIndex,n=void 0===o?0:o,s=r.toIndex,i=void 0===s?t.length:s;if(n<0||n>=t.length||!Number.isInteger(n))throw new Error();if(i<=n||i>t.length||!Number.isInteger(i))throw new Error();for(var a=t[n],u=n+1;u<i;u++)t[u]<a&&(a=t[u]);return a}(t),s=function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e(t))throw new Error();if(0===t.length)throw new Error();var o=r.fromIndex,n=void 0===o?0:o,s=r.toIndex,i=void 0===s?t.length:s;if(n<0||n>=t.length||!Number.isInteger(n))throw new Error();if(i<=n||i>t.length||!Number.isInteger(i))throw new Error();for(var a=t[n],u=n+1;u<i;u++)t[u]>a&&(a=t[u]);return a}(t);if(n===s)throw new Error();var i=o.min,a=void 0===i?o.autoMinMax?n:0:i,u=o.max,h=void 0===u?o.autoMinMax?s:1:u;if(a>=h)throw new Error();for(var c=(h-a)/(s-n),f=0;f<t.length;f++)r[f]=(t[f]-n)*c+a;return r}var a=" ".repeat(2),h=" ".repeat(4);function l(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},e=r.zzgs,o=void 0===e?15:e,n=r.zzks,s=void 0===n?10:n,i=r.zzo3,u=void 0===i?8:i;return"".concat(t.constructor.name," {\\n").concat(a,"[\\n").concat(h).concat(function(t,r,e,o){for(var n=t.zzk2,s=t.zzj2,i=Math.min(n,r),a=Math.min(s,e),u=[],c=0;c<i;c++){for(var f=[],l=0;l<a;l++)f.push(v(t.get(c,l),o));u.push("".concat(f.join(" ")))}return a!==s&&(u[u.length-1]+=" ... ".concat(s-e," more zzj2")),i!==n&&u.push("... ".concat(n-r," more zzk2")),u.join("\\n".concat(h))}(t,o,s,u),"\\n").concat(a,"]\\n").concat(a,"zzk2: ").concat(t.zzk2,"\\n").concat(a,"zzj2: ").concat(t.zzj2,"\\n}")}function v(t,r){var e=String(t);if(e.length<=r)return e.padEnd(r," ");var o=t.toPrecision(r-2);if(o.length<=r)return o;var n=t.zzP3(r-2),s=n.indexOf("e"),i=n.slice(s);return n.slice(0,r-i.length)+i}function m(t,r,e){var o=e?t.zzk2:t.zzk2-1;if(r<0||r>o)throw new Error()}function g(t,r,e){var o=e?t.zzj2:t.zzj2-1;if(r<0||r>o)throw new Error()}function w(t,r){if(r.zzC&&(r=r.zzC()),r.length!==t.zzj2)throw new Error();return r}function p(t,r){if(r.zzC&&(r=r.zzC()),r.length!==t.zzk2)throw new Error();return r}function y(t,r,e){return{row:function(t,r){if("object"!=f(r))throw new Error();if(r.some(function(r){return r<0||r>=t.zzk2}))throw new Error();return Array.isArray(r)||(r=Array.from(r)),r}(t,r),zz23:function(t,r){if("object"!=f(r))throw new Error();if(r.some(function(r){return r<0||r>=t.zzj2}))throw new Error();return Array.isArray(r)||(r=Array.from(r)),r}(t,e)}}function d(t,r,e,o,n){if(5!==arguments.length)throw new Error();if(M("zz0",r),M("zz1",e),M("zz2",o),M("zz3",n),r>e||o>n||r<0||r>=t.zzk2||e<0||e>=t.zzk2||o<0||o>=t.zzj2||n<0||n>=t.zzj2)throw new Error()}function b(t){for(var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,e=[],o=0;o<t;o++)e.push(r);return e}function M(t,r){if("number"!=typeof r)throw new Error("".concat(t," must be a number"))}function x(t){if(t.zzu3())throw new Error()}var k=function(){function t(){u(this,t)}return c(t,[{key:"apply",value:function(t){if("function"!=typeof t)throw new Error();for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)t.call(this,r,e);return this}},{key:"zzC",value:function(){for(var t=[],r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)t.push(this.get(r,e));return t}},{key:"zzD",value:function(){for(var t=[],r=0;r<this.zzk2;r++){t.push([]);for(var e=0;e<this.zzj2;e++)t[r].push(this.get(r,e))}return t}},{key:"toJSON",value:function(){return this.zzD()}},{key:"zzE",value:function(){return 1===this.zzk2}},{key:"zzF",value:function(){return 1===this.zzj2}},{key:"zzG",value:function(){return 1===this.zzk2||1===this.zzj2}},{key:"zzH",value:function(){return this.zzk2===this.zzj2}},{key:"zzu3",value:function(){return 0===this.zzk2||0===this.zzj2}},{key:"zzI",value:function(){if(this.zzH()){for(var t=0;t<this.zzk2;t++)for(var r=0;r<=t;r++)if(this.get(t,r)!==this.get(r,t))return!1;return!0}return!1}},{key:"zzJ",value:function(){for(var t=0,r=0,e=-1,o=!0,n=!1;t<this.zzk2&&o;){for(r=0,n=!1;r<this.zzj2&&!1===n;)0===this.get(t,r)?r++:1===this.get(t,r)&&r>e?(n=!0,e=r):(o=!1,n=!0);t++}return o}},{key:"zzK",value:function(){for(var t=0,r=0,e=-1,o=!0,n=!1;t<this.zzk2&&o;){for(r=0,n=!1;r<this.zzj2&&!1===n;)0===this.get(t,r)?r++:1===this.get(t,r)&&r>e?(n=!0,e=r):(o=!1,n=!0);for(var s=r+1;s<this.zzk2;s++)0!==this.get(t,s)&&(o=!1);t++}return o}},{key:"zzv3",value:function(){for(var t=this.clone(),r=0,e=0;r<t.zzk2&&e<t.zzj2;){for(var o=r,n=r;n<t.zzk2;n++)t.get(n,e)>t.get(o,e)&&(o=n);if(0===t.get(o,e))e++;else{t.zzP(r,o);for(var s=t.get(r,e),i=e;i<t.zzj2;i++)t.set(r,i,t.get(r,i)/s);for(var a=r+1;a<t.zzk2;a++){var u=t.get(a,e)/t.get(r,e);t.set(a,e,0);for(var h=e+1;h<t.zzj2;h++)t.set(a,h,t.get(a,h)-t.get(r,h)*u)}r++,e++}}return t}},{key:"reducedEchelonForm",value:function(){for(var t=this.zzv3(),r=t.zzj2,e=t.zzk2,o=e-1;o>=0;)if(0===t.zzg(o))o--;else{for(var n=0,s=!1;n<e&&!1===s;)1===t.get(o,n)?s=!0:n++;for(var i=0;i<o;i++)for(var a=t.get(i,n),u=n;u<r;u++){var h=t.get(i,u)-a*t.get(o,u);t.set(i,u,h)}o--}return t}},{key:"set",value:function(){throw new Error()}},{key:"get",value:function(){throw new Error()}},{key:"repeat",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if("object"!=f(t))throw new Error();var r=t.zzk2,e=void 0===r?1:r,o=t.zzj2,n=void 0===o?1:o;if(!Number.isInteger(e)||e<=0)throw new Error();if(!Number.isInteger(n)||n<=0)throw new Error();for(var s=new E(this.zzk2*e,this.zzj2*n),i=0;i<e;i++)for(var a=0;a<n;a++)s.zz61(this,this.zzk2*i,this.zzj2*a);return s}},{key:"zzL",value:function(t){for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,t);return this}},{key:"neg",value:function(){return this.mulS(-1)}},{key:"zzM",value:function(t){m(this,t);for(var r=[],e=0;e<this.zzj2;e++)r.push(this.get(t,e));return r}},{key:"zzMVector",value:function(t){return E.zzE1(this.zzM(t))}},{key:"zzO",value:function(t,r){m(this,t),r=w(this,r);for(var e=0;e<this.zzj2;e++)this.set(t,e,r[e]);return this}},{key:"zzP",value:function(t,r){m(this,t),m(this,r);for(var e=0;e<this.zzj2;e++){var o=this.get(t,e);this.set(t,e,this.get(r,e)),this.set(r,e,o)}return this}},{key:"zzQ",value:function(t){g(this,t);for(var r=[],e=0;e<this.zzk2;e++)r.push(this.get(e,t));return r}},{key:"zzQVector",value:function(t){return E.zzF1(this.zzQ(t))}},{key:"zzS",value:function(t,r){g(this,t),r=p(this,r);for(var e=0;e<this.zzk2;e++)this.set(e,t,r[e]);return this}},{key:"zzT",value:function(t,r){g(this,t),g(this,r);for(var e=0;e<this.zzk2;e++){var o=this.get(e,t);this.set(e,t,this.get(e,r)),this.set(e,r,o)}return this}},{key:"zzU",value:function(t){t=w(this,t);for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,this.get(r,e)+t[e]);return this}},{key:"zzV",value:function(t){t=w(this,t);for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,this.get(r,e)-t[e]);return this}},{key:"zzW",value:function(t){t=w(this,t);for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,this.get(r,e)*t[e]);return this}},{key:"zzX",value:function(t){t=w(this,t);for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,this.get(r,e)/t[e]);return this}},{key:"zzY",value:function(t){t=p(this,t);for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,this.get(r,e)+t[r]);return this}},{key:"zzZ",value:function(t){t=p(this,t);for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,this.get(r,e)-t[r]);return this}},{key:"zza",value:function(t){t=p(this,t);for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,this.get(r,e)*t[r]);return this}},{key:"zzb",value:function(t){t=p(this,t);for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,this.get(r,e)/t[r]);return this}},{key:"zzc",value:function(t,r){m(this,t);for(var e=0;e<this.zzj2;e++)this.set(t,e,this.get(t,e)*r);return this}},{key:"zzd",value:function(t,r){g(this,t);for(var e=0;e<this.zzk2;e++)this.set(e,t,this.get(e,t)*r);return this}},{key:"max",value:function(){if(this.zzu3())return NaN;for(var t=this.get(0,0),r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.get(r,e)>t&&(t=this.get(r,e));return t}},{key:"zze",value:function(){x(this);for(var t=this.get(0,0),r=[0,0],e=0;e<this.zzk2;e++)for(var o=0;o<this.zzj2;o++)this.get(e,o)>t&&(t=this.get(e,o),r[0]=e,r[1]=o);return r}},{key:"min",value:function(){if(this.zzu3())return NaN;for(var t=this.get(0,0),r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.get(r,e)<t&&(t=this.get(r,e));return t}},{key:"zzf",value:function(){x(this);for(var t=this.get(0,0),r=[0,0],e=0;e<this.zzk2;e++)for(var o=0;o<this.zzj2;o++)this.get(e,o)<t&&(t=this.get(e,o),r[0]=e,r[1]=o);return r}},{key:"zzg",value:function(t){if(m(this,t),this.zzu3())return NaN;for(var r=this.get(t,0),e=1;e<this.zzj2;e++)this.get(t,e)>r&&(r=this.get(t,e));return r}},{key:"zzgIndex",value:function(t){m(this,t),x(this);for(var r=this.get(t,0),e=[t,0],o=1;o<this.zzj2;o++)this.get(t,o)>r&&(r=this.get(t,o),e[1]=o);return e}},{key:"zzi",value:function(t){if(m(this,t),this.zzu3())return NaN;for(var r=this.get(t,0),e=1;e<this.zzj2;e++)this.get(t,e)<r&&(r=this.get(t,e));return r}},{key:"zziIndex",value:function(t){m(this,t),x(this);for(var r=this.get(t,0),e=[t,0],o=1;o<this.zzj2;o++)this.get(t,o)<r&&(r=this.get(t,o),e[1]=o);return e}},{key:"zzk",value:function(t){if(g(this,t),this.zzu3())return NaN;for(var r=this.get(0,t),e=1;e<this.zzk2;e++)this.get(e,t)>r&&(r=this.get(e,t));return r}},{key:"zzkIndex",value:function(t){g(this,t),x(this);for(var r=this.get(0,t),e=[0,t],o=1;o<this.zzk2;o++)this.get(o,t)>r&&(r=this.get(o,t),e[0]=o);return e}},{key:"zzm",value:function(t){if(g(this,t),this.zzu3())return NaN;for(var r=this.get(0,t),e=1;e<this.zzk2;e++)this.get(e,t)<r&&(r=this.get(e,t));return r}},{key:"zzmIndex",value:function(t){g(this,t),x(this);for(var r=this.get(0,t),e=[0,t],o=1;o<this.zzk2;o++)this.get(o,t)<r&&(r=this.get(o,t),e[0]=o);return e}},{key:"zzo",value:function(){for(var t=Math.min(this.zzk2,this.zzj2),r=[],e=0;e<t;e++)r.push(this.get(e,e));return r}},{key:"zzp",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"zzw3",r=0;if("max"===t)return this.max();if("zzw3"===t){for(var e=0;e<this.zzk2;e++)for(var o=0;o<this.zzj2;o++)r+=this.get(e,o)*this.get(e,o);return Math.sqrt(r)}throw new Error("unknown zzp type: ".concat(t))}},{key:"zzq",value:function(){for(var t=0,r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)t+=this.get(r,e),this.set(r,e,t);return this}},{key:"dot",value:function(r){t.zzM1(r)&&(r=r.zzC());var e=this.zzC();if(e.length!==r.length)throw new Error();for(var o=0,n=0;n<e.length;n++)o+=e[n]*r[n];return o}},{key:"zzr",value:function(t){t=E.zzL1(t);var r=new E(this.zzk2,t.zzj2);return this.zzr2(t,r),r}},{key:"zzr2",value:function(t,r){var e=this.zzk2,o=this.zzj2,n=t.zzj2;this.Bcolj=this.Bcolj||new Float32Array(o);for(var s=this.Bcolj,i=0;i<n;i++){for(var a=0;a<o;a++)s[a]=t.get(a,i);for(var u=0;u<e;u++){for(var h=0,c=0;c<o;c++)h+=this.get(u,c)*s[c];r.set(u,i,h)}}}},{key:"zzs",value:function(t){t=E.zzL1(t);var r=new E(2,2),e=this.get(0,0),o=t.get(0,0),n=this.get(0,1),s=t.get(0,1),i=this.get(1,0),a=t.get(1,0),u=this.get(1,1),h=t.get(1,1),c=(e+u)*(o+h),f=(i+u)*o,l=e*(s-h),v=u*(a-o),m=(e+n)*h,g=c+v-m+(n-u)*(a+h),w=l+m,p=f+v,y=c-f+l+(i-e)*(o+s);return r.set(0,0,g),r.set(0,1,w),r.set(1,0,p),r.set(1,1,y),r}},{key:"zzt",value:function(t){t=E.zzL1(t);var r=new E(3,3),e=this.get(0,0),o=this.get(0,1),n=this.get(0,2),s=this.get(1,0),i=this.get(1,1),a=this.get(1,2),u=this.get(2,0),h=this.get(2,1),c=this.get(2,2),f=t.get(0,0),l=t.get(0,1),v=t.get(0,2),m=t.get(1,0),g=t.get(1,1),w=t.get(1,2),p=t.get(2,0),y=t.get(2,1),d=t.get(2,2),b=(e-s)*(-l+g),M=(-e+s+i)*(f-l+g),x=(s+i)*(-f+l),k=e*f,S=(-e+u+h)*(f-v+w),R=(-e+u)*(v-w),T=(u+h)*(-f+v),A=(-n+h+c)*(g+p-y),D=(n-c)*(g-y),C=n*p,I=(h+c)*(-p+y),N=(-n+i+a)*(w+p-d),O=(n-a)*(w-d),F=(i+a)*(-p+d),P=k+C+o*m,V=(e+o+n-s-i-h-c)*g+M+x+k+A+C+I,j=k+S+T+(e+o+n-i-a-u-h)*w+C+N+F,q=b+i*(-f+l+m-g-w-p+d)+M+k+C+N+O,z=b+M+x+k+a*y,Q=C+N+O+F+s*v,L=k+S+R+h*(-f+v+m-g-w-p+y)+A+D+C,B=A+D+C+I+u*l,U=k+S+R+T+c*d;return r.set(0,0,P),r.set(0,1,V),r.set(0,2,j),r.set(1,0,q),r.set(1,1,z),r.set(1,2,Q),r.set(2,0,L),r.set(2,1,B),r.set(2,2,U),r}},{key:"zzrStrassen",value:function(r){r=E.zzL1(r);var e=this.clone(),o=e.zzk2,n=e.zzj2,s=r.zzk2,i=r.zzj2;function a(r,e,o){var n=r.zzk2,s=r.zzj2;if(n===e&&s===o)return r;var i=t.zzG1(e,o);return i=i.zz61(r,0,0)}n!==s&&1;var u=Math.max(o,s),h=Math.max(n,i);return function r(e,o,n,s){if(n<=512||s<=512)return e.zzr(o);n%2==1&&s%2==1?(e=a(e,n+1,s+1),o=a(o,n+1,s+1)):n%2==1?(e=a(e,n+1,s),o=a(o,n+1,s)):s%2==1&&(e=a(e,n,s+1),o=a(o,n,s+1));var i=parseInt(e.zzk2/2,10),u=parseInt(e.zzj2/2,10),h=e.zz31(0,i-1,0,u-1),c=o.zz31(0,i-1,0,u-1),f=e.zz31(0,i-1,u,e.zzj2-1),l=o.zz31(0,i-1,u,o.zzj2-1),v=e.zz31(i,e.zzk2-1,0,u-1),m=o.zz31(i,o.zzk2-1,0,u-1),g=e.zz31(i,e.zzk2-1,u,e.zzj2-1),w=o.zz31(i,o.zzk2-1,u,o.zzj2-1),p=r(t.add(h,g),t.add(c,w),i,u),y=r(t.add(v,g),c,i,u),d=r(h,t.sub(l,w),i,u),b=r(g,t.sub(m,c),i,u),M=r(t.add(h,f),w,i,u),x=r(t.sub(v,h),t.add(c,l),i,u),k=r(t.sub(f,g),t.add(m,w),i,u),S=t.add(p,b);S.sub(M),S.add(k);var E=t.add(d,M),R=t.add(y,b),T=t.sub(p,y);T.add(d),T.add(x);var A=t.zzG1(2*S.zzk2,2*S.zzj2);return(A=(A=(A=(A=A.zz61(S,0,0)).zz61(E,S.zzk2,0)).zz61(R,0,S.zzj2)).zz61(T,S.zzk2,S.zzj2)).zz31(0,n-1,0,s-1)}(e=a(e,u,h),r=a(r,u,h),u,h)}},{key:"zzv",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if("object"!=f(t))throw new Error();var r=t.min,e=void 0===r?0:r,o=t.max,s=void 0===o?1:o;if(!Number.isFinite(e))throw new Error();if(!Number.isFinite(s))throw new Error();if(e>=s)throw new Error();for(var i=new E(this.zzk2,this.zzj2),a=0;a<this.zzk2;a++){var u=this.zzM(a);u.length>0&&n(u,{min:e,max:s,output:u}),i.zzO(a,u)}return i}},{key:"zzw",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if("object"!=f(t))throw new Error();var r=t.min,e=void 0===r?0:r,o=t.max,s=void 0===o?1:o;if(!Number.isFinite(e))throw new Error();if(!Number.isFinite(s))throw new Error();if(e>=s)throw new Error();for(var i=new E(this.zzk2,this.zzj2),a=0;a<this.zzj2;a++){var u=this.zzQ(a);u.length&&n(u,{min:e,max:s,output:u}),i.zzS(a,u)}return i}},{key:"zzx",value:function(){for(var t=Math.ceil(this.zzj2/2),r=0;r<this.zzk2;r++)for(var e=0;e<t;e++){var o=this.get(r,e),n=this.get(r,this.zzj2-1-e);this.set(r,e,n),this.set(r,this.zzj2-1-e,o)}return this}},{key:"zzy",value:function(){for(var t=Math.ceil(this.zzk2/2),r=0;r<this.zzj2;r++)for(var e=0;e<t;e++){var o=this.get(e,r),n=this.get(this.zzk2-1-e,r);this.set(e,r,n),this.set(this.zzk2-1-e,r,o)}return this}},{key:"zzz",value:function(t){t=E.zzL1(t);for(var r=this.zzk2,e=this.zzj2,o=t.zzk2,n=t.zzj2,s=new E(r*o,e*n),i=0;i<r;i++)for(var a=0;a<e;a++)for(var u=0;u<o;u++)for(var h=0;h<n;h++)s.set(o*i+u,n*a+h,this.get(i,a)*t.get(u,h));return s}},{key:"kroneckerSum",value:function(t){if(t=E.zzL1(t),!this.zzH()||!t.zzH())throw new Error();var r=this.zzk2,e=t.zzk2,o=this.zzz(E.zzJ1(e,e)),n=E.zzJ1(r,r).zzz(t);return o.add(n)}},{key:"zz01",value:function(){var t=new E(this.zzj2,this.zzk2);return this.zz012(t),t}},{key:"zz012",value:function(t){for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)t.set(e,r,this.get(r,e))}},{key:"zz11",value:function(){for(var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:S,r=0;r<this.zzk2;r++)this.zzO(r,this.zzM(r).sort(t));return this}},{key:"zz21",value:function(){for(var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:S,r=0;r<this.zzj2;r++)this.zzS(r,this.zzQ(r).sort(t));return this}},{key:"zz31",value:function(t,r,e,o){d(this,t,r,e,o);for(var n=new E(r-t+1,o-e+1),s=t;s<=r;s++)for(var i=e;i<=o;i++)n.set(s-t,i-e,this.get(s,i));return n}},{key:"zz31Row",value:function(t,r,e){if(void 0===r&&(r=0),void 0===e&&(e=this.zzj2-1),r>e||r<0||r>=this.zzj2||e<0||e>=this.zzj2)throw new Error();for(var o=new E(t.length,e-r+1),n=0;n<t.length;n++)for(var s=r;s<=e;s++){if(t[n]<0||t[n]>=this.zzk2)throw new Error("Row index out of range: ".concat(t[n]));o.set(n,s-r,this.get(t[n],s))}return o}},{key:"zz31Column",value:function(t,r,e){if(void 0===r&&(r=0),void 0===e&&(e=this.zzk2-1),r>e||r<0||r>=this.zzk2||e<0||e>=this.zzk2)throw new Error();for(var o=new E(e-r+1,t.length),n=0;n<t.length;n++)for(var s=r;s<=e;s++){if(t[n]<0||t[n]>=this.zzj2)throw new Error("Column index out of range: ".concat(t[n]));o.set(s-r,n,this.get(s,t[n]))}return o}},{key:"zz61",value:function(t,r,e){if((t=E.zzL1(t)).zzu3())return this;d(this,r,r+t.zzk2-1,e,e+t.zzj2-1);for(var o=0;o<t.zzk2;o++)for(var n=0;n<t.zzj2;n++)this.set(r+o,e+n,t.get(o,n));return this}},{key:"zz71",value:function(t,r){for(var e=y(this,t,r),o=new E(t.length,r.length),n=0;n<e.row.length;n++)for(var s=e.row[n],i=0;i<e.zz23.length;i++){var a=e.zz23[i];o.set(n,i,this.get(s,a))}return o}},{key:"trace",value:function(){for(var t=Math.min(this.zzk2,this.zzj2),r=0,e=0;e<t;e++)r+=this.get(e,e);return r}},{key:"copy",value:function(t){for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,t.get(r,e))}},{key:"reset",value:function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,0)}},{key:"clone",value:function(){var t=new E(this.zzk2,this.zzj2);return t.copy(this),t}},{key:"sum",value:function(t){switch(t){case"row":return function(t){for(var r=b(t.zzk2),e=0;e<t.zzk2;++e)for(var o=0;o<t.zzj2;++o)r[e]+=t.get(e,o);return r}(this);case"zz23":return function(t){for(var r=b(t.zzj2),e=0;e<t.zzk2;++e)for(var o=0;o<t.zzj2;++o)r[o]+=t.get(e,o);return r}(this);case void 0:return function(t){for(var r=0,e=0;e<t.zzk2;e++)for(var o=0;o<t.zzj2;o++)r+=t.get(e,o);return r}(this);default:throw new Error("inzyp13 option: ".concat(t))}}},{key:"zz81",value:function(t){switch(t){case"row":return function(t){for(var r=b(t.zzk2,1),e=0;e<t.zzk2;++e)for(var o=0;o<t.zzj2;++o)r[e]*=t.get(e,o);return r}(this);case"zz23":return function(t){for(var r=b(t.zzj2,1),e=0;e<t.zzk2;++e)for(var o=0;o<t.zzj2;++o)r[o]*=t.get(e,o);return r}(this);case void 0:return function(t){for(var r=1,e=0;e<t.zzk2;e++)for(var o=0;o<t.zzj2;o++)r*=t.get(e,o);return r}(this);default:throw new Error("inzyp13 option: ".concat(t))}}},{key:"zz91",value:function(t){var r=this.sum(t);switch(t){case"row":for(var e=0;e<this.zzk2;e++)r[e]/=this.zzj2;return r;case"zz23":for(var o=0;o<this.zzj2;o++)r[o]/=this.zzk2;return r;case void 0:return r/this.zzC1;default:throw new Error("inzyp13 option: ".concat(t))}}},{key:"zzA1",value:function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if("object"==f(t)&&(r=t,t=void 0),"object"!=f(r))throw new Error();var e=r,o=e.unbiased,n=void 0===o||o,s=e.zz91,i=void 0===s?this.zz91(t):s;if("boolean"!=typeof n)throw new Error();switch(t){case"row":if(!Array.isArray(i))throw new Error();return function(t,r,e){for(var o=t.zzk2,n=t.zzj2,s=[],i=0;i<o;i++){for(var a=0,u=0,h=0,c=0;c<n;c++)a+=h=t.get(i,c)-e[i],u+=h*h;r?s.push((u-a*a/n)/(n-1)):s.push((u-a*a/n)/n)}return s}(this,n,i);case"zz23":if(!Array.isArray(i))throw new Error();return function(t,r,e){for(var o=t.zzk2,n=t.zzj2,s=[],i=0;i<n;i++){for(var a=0,u=0,h=0,c=0;c<o;c++)a+=h=t.get(c,i)-e[i],u+=h*h;r?s.push((u-a*a/o)/(o-1)):s.push((u-a*a/o)/o)}return s}(this,n,i);case void 0:if("number"!=typeof i)throw new Error();return function(t,r,e){for(var o=t.zzk2,n=t.zzj2,s=o*n,i=0,a=0,u=0,h=0;h<o;h++)for(var c=0;c<n;c++)i+=u=t.get(h,c)-e,a+=u*u;return r?(a-i*i/s)/(s-1):(a-i*i/s)/s}(this,n,i);default:throw new Error("inzyp13 option: ".concat(t))}}},{key:"zzB1",value:function(t,r){"object"==f(t)&&(r=t,t=void 0);var e=this.zzA1(t,r);if(void 0===t)return Math.sqrt(e);for(var o=0;o<e.length;o++)e[o]=Math.sqrt(e[o]);return e}},{key:"center",value:function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if("object"==f(t)&&(r=t,t=void 0),"object"!=f(r))throw new Error();var e=r.center,o=void 0===e?this.zz91(t):e;switch(t){case"row":if(!Array.isArray(o))throw new Error();return function(t,r){for(var e=0;e<t.zzk2;e++)for(var o=0;o<t.zzj2;o++)t.set(e,o,t.get(e,o)-r[e])}(this,o),this;case"zz23":if(!Array.isArray(o))throw new Error();return function(t,r){for(var e=0;e<t.zzk2;e++)for(var o=0;o<t.zzj2;o++)t.set(e,o,t.get(e,o)-r[o])}(this,o),this;case void 0:if("number"!=typeof o)throw new Error();return function(t,r){for(var e=0;e<t.zzk2;e++)for(var o=0;o<t.zzj2;o++)t.set(e,o,t.get(e,o)-r)}(this,o),this;default:throw new Error("inzyp13 option: ".concat(t))}}},{key:"scale",value:function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if("object"==f(t)&&(r=t,t=void 0),"object"!=f(r))throw new Error();var e=r.scale;switch(t){case"row":if(void 0===e)e=function(t){for(var r=[],e=0;e<t.zzk2;e++){for(var o=0,n=0;n<t.zzj2;n++)o+=Math.pow(t.get(e,n),2)/(t.zzj2-1);r.push(Math.sqrt(o))}return r}(this);else if(!Array.isArray(e))throw new Error();return function(t,r){for(var e=0;e<t.zzk2;e++)for(var o=0;o<t.zzj2;o++)t.set(e,o,t.get(e,o)/r[e])}(this,e),this;case"zz23":if(void 0===e)e=function(t){for(var r=[],e=0;e<t.zzj2;e++){for(var o=0,n=0;n<t.zzk2;n++)o+=Math.pow(t.get(n,e),2)/(t.zzk2-1);r.push(Math.sqrt(o))}return r}(this);else if(!Array.isArray(e))throw new Error();return function(t,r){for(var e=0;e<t.zzk2;e++)for(var o=0;o<t.zzj2;o++)t.set(e,o,t.get(e,o)/r[o])}(this,e),this;case void 0:if(void 0===e)e=function(t){for(var r=t.zzC1-1,e=0,o=0;o<t.zzj2;o++)for(var n=0;n<t.zzk2;n++)e+=Math.pow(t.get(n,o),2)/r;return Math.sqrt(e)}(this);else if("number"!=typeof e)throw new Error();return function(t,r){for(var e=0;e<t.zzk2;e++)for(var o=0;o<t.zzj2;o++)t.set(e,o,t.get(e,o)/r)}(this,e),this;default:throw new Error("inzyp13 option: ".concat(t))}}},{key:"toString",value:function(t){return l(this,t)}},{key:"zzC1",get:function(){return this.zzk2*this.zzj2}}],[{key:"zzD1",value:function(t,r,e){if(t*r!==e.length)throw new Error();for(var o=new E(t,r),n=0;n<t;n++)for(var s=0;s<r;s++)o.set(n,s,e[n*r+s]);return o}},{key:"zzE1",value:function(t){for(var r=new E(1,t.length),e=0;e<t.length;e++)r.set(0,e,t[e]);return r}},{key:"zzF1",value:function(t){for(var r=new E(t.length,1),e=0;e<t.length;e++)r.set(e,0,t[e]);return r}},{key:"zzG1",value:function(t,r){return new E(t,r)}},{key:"zzH1",value:function(t,r){return new E(t,r).zzL(1)}},{key:"rand",value:function(t,r){var e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if("object"!=f(e))throw new Error();for(var o=e.random,n=void 0===o?Math.random:o,s=new E(t,r),i=0;i<t;i++)for(var a=0;a<r;a++)s.set(i,a,n());return s}},{key:"zzI1",value:function(t,r){var e=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if("object"!=f(e))throw new Error();var o=e.min,n=void 0===o?0:o,s=e.max,i=void 0===s?1e3:s,a=e.random,u=void 0===a?Math.random:a;if(!Number.isInteger(n))throw new Error();if(!Number.isInteger(i))throw new Error();if(n>=i)throw new Error();for(var h=i-n,c=new E(t,r),l=0;l<t;l++)for(var v=0;v<r;v++){var m=n+Math.round(u()*h);c.set(l,v,m)}return c}},{key:"zzJ1",value:function(t,r,e){void 0===r&&(r=t),void 0===e&&(e=1);for(var o=Math.min(t,r),n=this.zzG1(t,r),s=0;s<o;s++)n.set(s,s,e);return n}},{key:"zzo",value:function(t,r,e){var o=t.length;void 0===r&&(r=o),void 0===e&&(e=r);for(var n=Math.min(o,r,e),s=this.zzG1(r,e),i=0;i<n;i++)s.set(i,i,t[i]);return s}},{key:"min",value:function(t,r){t=this.zzL1(t),r=this.zzL1(r);for(var e=t.zzk2,o=t.zzj2,n=new E(e,o),s=0;s<e;s++)for(var i=0;i<o;i++)n.set(s,i,Math.min(t.get(s,i),r.get(s,i)));return n}},{key:"max",value:function(t,r){t=this.zzL1(t),r=this.zzL1(r);for(var e=t.zzk2,o=t.zzj2,n=new this(e,o),s=0;s<e;s++)for(var i=0;i<o;i++)n.set(s,i,Math.max(t.get(s,i),r.get(s,i)));return n}},{key:"zzL1",value:function(r){return t.zzM1(r)?r:new E(r)}},{key:"zzM1",value:function(t){return null!=t&&"Matrix"===t.klass}}]),t}();function S(t,r){return t-r}k.prototype.klass="Matrix","undefined"!=typeof Symbol&&(k.prototype[Symbol.for("zze3")]=function(){return l(this)}),k.random=k.rand,k.randomInt=k.zzI1,k.zzoonal=k.zzo,k.prototype.zzoonal=k.prototype.zzo,k.zzo2=k.zzJ1,k.prototype.negate=k.prototype.neg,k.prototype.zzI3=k.prototype.zzz;var E=function(t){o(e,k);var r=s(e);function e(t,o){var n;if(u(this,e),n=r.call(this),e.zzM1(t))return i(n,t.clone());if(Number.isInteger(t)&&t>=0)n.dataFlatten=new Float32Array(o*t);else{if(!Array.isArray(t))throw new Error();var s=t;if("number"!=typeof(o=(t=s.length)?s[0].length:0))n.dataFlatten=new Float32Array(s);else{n.dataFlatten=new Float32Array(o*t);for(var a=0;a<t;a++)for(var h=0;h<o;h++)n.dataFlatten[a*o+h]=s[a][h]}}return n.zzk2=t,n.zzj2=o,i(n)}return c(e,[{key:"set",value:function(t,r,e){return this.dataFlatten[t*this.zzj2+r]=e,this}},{key:"get",value:function(t,r){return this.dataFlatten[t*this.zzj2+r]}},{key:"zzn3",value:function(t,r,e){this.dataFlatten[t*this.zzj2+r]+=e}},{key:"mulComponent",value:function(t,r,e){this.dataFlatten[t*this.zzj2+r]*=e}}]),e}();!function(t,r){t.prototype.add=function(t){return"number"==typeof t?this.addS(t):this.addM(t)},t.prototype.addS=function(t){for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,this.get(r,e)+t);return this},t.prototype.addM=function(t){if(t=r.zzL1(t),this.zzk2!==t.zzk2||this.zzj2!==t.zzj2)throw new Error();for(var e=0;e<this.zzk2;e++)for(var o=0;o<this.zzj2;o++)this.set(e,o,this.get(e,o)+t.get(e,o));return this},t.add=function(t,e){return new r(t).add(e)},t.prototype.sub=function(t){return"number"==typeof t?this.subS(t):this.subM(t)},t.prototype.subS=function(t){for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,this.get(r,e)-t);return this},t.prototype.subM=function(t){if(t=r.zzL1(t),this.zzk2!==t.zzk2||this.zzj2!==t.zzj2)throw new Error();for(var e=0;e<this.zzk2;e++)for(var o=0;o<this.zzj2;o++)this.set(e,o,this.get(e,o)-t.get(e,o));return this},t.sub=function(t,e){return new r(t).sub(e)},t.prototype.subtract=t.prototype.sub,t.prototype.subtractS=t.prototype.subS,t.prototype.subtractM=t.prototype.subM,t.subtract=t.sub,t.prototype.zzi3=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,0)},t.prototype.mul=function(t){return"number"==typeof t?this.mulS(t):this.mulM(t)},t.prototype.mulS=function(t){for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,this.get(r,e)*t);return this},t.prototype.mulM=function(t){if(t=r.zzL1(t),this.zzk2!==t.zzk2||this.zzj2!==t.zzj2)throw new Error();for(var e=0;e<this.zzk2;e++)for(var o=0;o<this.zzj2;o++)this.set(e,o,this.get(e,o)*t.get(e,o));return this},t.mul=function(t,e){return new r(t).mul(e)},t.prototype.multiply=t.prototype.mul,t.prototype.multiplyS=t.prototype.mulS,t.prototype.multiplyM=t.prototype.mulM,t.multiply=t.mul,t.prototype.div=function(t){return"number"==typeof t?this.divS(t):this.divM(t)},t.prototype.divS=function(t){for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,this.get(r,e)/t);return this},t.prototype.divM=function(t){if(t=r.zzL1(t),this.zzk2!==t.zzk2||this.zzj2!==t.zzj2)throw new Error();for(var e=0;e<this.zzk2;e++)for(var o=0;o<this.zzj2;o++)this.set(e,o,this.get(e,o)/t.get(e,o));return this},t.div=function(t,e){return new r(t).div(e)},t.prototype.divide=t.prototype.div,t.prototype.divideS=t.prototype.divS,t.prototype.divideM=t.prototype.divM,t.divide=t.div,t.prototype.mod=function(t){return"number"==typeof t?this.modS(t):this.modM(t)},t.prototype.modS=function(t){for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,this.get(r,e)%t);return this},t.prototype.modM=function(t){if(t=r.zzL1(t),this.zzk2!==t.zzk2||this.zzj2!==t.zzj2)throw new Error();for(var e=0;e<this.zzk2;e++)for(var o=0;o<this.zzj2;o++)this.set(e,o,this.get(e,o)%t.get(e,o));return this},t.mod=function(t,e){return new r(t).mod(e)},t.prototype.zzO3=t.prototype.mod,t.prototype.zzO3S=t.prototype.modS,t.prototype.zzO3M=t.prototype.modM,t.zzO3=t.mod,t.prototype.and=function(t){return"number"==typeof t?this.andS(t):this.andM(t)},t.prototype.andS=function(t){for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,this.get(r,e)&t);return this},t.prototype.andM=function(t){if(t=r.zzL1(t),this.zzk2!==t.zzk2||this.zzj2!==t.zzj2)throw new Error();for(var e=0;e<this.zzk2;e++)for(var o=0;o<this.zzj2;o++)this.set(e,o,this.get(e,o)&t.get(e,o));return this},t.and=function(t,e){return new r(t).and(e)},t.prototype.or=function(t){return"number"==typeof t?this.orS(t):this.orM(t)},t.prototype.orS=function(t){for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,this.get(r,e)|t);return this},t.prototype.orM=function(t){if(t=r.zzL1(t),this.zzk2!==t.zzk2||this.zzj2!==t.zzj2)throw new Error();for(var e=0;e<this.zzk2;e++)for(var o=0;o<this.zzj2;o++)this.set(e,o,this.get(e,o)|t.get(e,o));return this},t.or=function(t,e){return new r(t).or(e)},t.prototype.xor=function(t){return"number"==typeof t?this.xorS(t):this.xorM(t)},t.prototype.xorS=function(t){for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,this.get(r,e)^t);return this},t.prototype.xorM=function(t){if(t=r.zzL1(t),this.zzk2!==t.zzk2||this.zzj2!==t.zzj2)throw new Error();for(var e=0;e<this.zzk2;e++)for(var o=0;o<this.zzj2;o++)this.set(e,o,this.get(e,o)^t.get(e,o));return this},t.xor=function(t,e){return new r(t).xor(e)},t.prototype.zzQ3=function(t){return"number"==typeof t?this.zzQ3S(t):this.zzQ3M(t)},t.prototype.zzQ3S=function(t){for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,this.get(r,e)<<t);return this},t.prototype.zzQ3M=function(t){if(t=r.zzL1(t),this.zzk2!==t.zzk2||this.zzj2!==t.zzj2)throw new Error();for(var e=0;e<this.zzk2;e++)for(var o=0;o<this.zzj2;o++)this.set(e,o,this.get(e,o)<<t.get(e,o));return this},t.zzQ3=function(t,e){return new r(t).zzQ3(e)},t.prototype.zzJ3=function(t){return"number"==typeof t?this.zzJ3S(t):this.zzJ3M(t)},t.prototype.zzJ3S=function(t){for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,this.get(r,e)>>t);return this},t.prototype.zzJ3M=function(t){if(t=r.zzL1(t),this.zzk2!==t.zzk2||this.zzj2!==t.zzj2)throw new Error();for(var e=0;e<this.zzk2;e++)for(var o=0;o<this.zzj2;o++)this.set(e,o,this.get(e,o)>>t.get(e,o));return this},t.zzJ3=function(t,e){return new r(t).zzJ3(e)},t.prototype.zzL3=function(t){return"number"==typeof t?this.zzL3S(t):this.zzL3M(t)},t.prototype.zzL3S=function(t){for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,this.get(r,e)>>>t);return this},t.prototype.zzL3M=function(t){if(t=r.zzL1(t),this.zzk2!==t.zzk2||this.zzj2!==t.zzj2)throw new Error();for(var e=0;e<this.zzk2;e++)for(var o=0;o<this.zzj2;o++)this.set(e,o,this.get(e,o)>>>t.get(e,o));return this},t.zzL3=function(t,e){return new r(t).zzL3(e)},t.prototype.zzK3=t.prototype.zzL3,t.prototype.zzK3S=t.prototype.zzL3S,t.prototype.zzK3M=t.prototype.zzL3M,t.zzK3=t.zzL3,t.prototype.not=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,~this.get(t,r));return this},t.not=function(t){return new r(t).not()},t.prototype.abs=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.abs(this.get(t,r)));return this},t.abs=function(t){return new r(t).abs()},t.prototype.acos=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.acos(this.get(t,r)));return this},t.acos=function(t){return new r(t).acos()},t.prototype.zzM3=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.zzM3(this.get(t,r)));return this},t.zzM3=function(t){return new r(t).zzM3()},t.prototype.asin=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.asin(this.get(t,r)));return this},t.asin=function(t){return new r(t).asin()},t.prototype.zzN3=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.zzN3(this.get(t,r)));return this},t.zzN3=function(t){return new r(t).zzN3()},t.prototype.atan=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.atan(this.get(t,r)));return this},t.atan=function(t){return new r(t).atan()},t.prototype.atanh=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.atanh(this.get(t,r)));return this},t.atanh=function(t){return new r(t).atanh()},t.prototype.cbrt=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.cbrt(this.get(t,r)));return this},t.cbrt=function(t){return new r(t).cbrt()},t.prototype.ceil=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.ceil(this.get(t,r)));return this},t.ceil=function(t){return new r(t).ceil()},t.prototype.clz32=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.clz32(this.get(t,r)));return this},t.clz32=function(t){return new r(t).clz32()},t.prototype.cos=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.cos(this.get(t,r)));return this},t.cos=function(t){return new r(t).cos()},t.prototype.cosh=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.cosh(this.get(t,r)));return this},t.cosh=function(t){return new r(t).cosh()},t.prototype.exp=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.exp(this.get(t,r)));return this},t.exp=function(t){return new r(t).exp()},t.prototype.expm1=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.expm1(this.get(t,r)));return this},t.expm1=function(t){return new r(t).expm1()},t.prototype.floor=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.floor(this.get(t,r)));return this},t.floor=function(t){return new r(t).floor()},t.prototype.fround=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.fround(this.get(t,r)));return this},t.fround=function(t){return new r(t).fround()},t.prototype.log=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.log(this.get(t,r)));return this},t.log=function(t){return new r(t).log()},t.prototype.log1p=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.log1p(this.get(t,r)));return this},t.log1p=function(t){return new r(t).log1p()},t.prototype.log10=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.log10(this.get(t,r)));return this},t.log10=function(t){return new r(t).log10()},t.prototype.log2=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.log2(this.get(t,r)));return this},t.log2=function(t){return new r(t).log2()},t.prototype.round=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.round(this.get(t,r)));return this},t.round=function(t){return new r(t).round()},t.prototype.sign=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.sign(this.get(t,r)));return this},t.sign=function(t){return new r(t).sign()},t.prototype.sin=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.sin(this.get(t,r)));return this},t.sin=function(t){return new r(t).sin()},t.prototype.sinh=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.sinh(this.get(t,r)));return this},t.sinh=function(t){return new r(t).sinh()},t.prototype.sqrt=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.sqrt(this.get(t,r)));return this},t.sqrt=function(t){return new r(t).sqrt()},t.prototype.tan=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.tan(this.get(t,r)));return this},t.tan=function(t){return new r(t).tan()},t.prototype.tanh=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.tanh(this.get(t,r)));return this},t.tanh=function(t){return new r(t).tanh()},t.prototype.trunc=function(){for(var t=0;t<this.zzk2;t++)for(var r=0;r<this.zzj2;r++)this.set(t,r,Math.trunc(this.get(t,r)));return this},t.trunc=function(t){return new r(t).trunc()},t.pow=function(t,e){return new r(t).pow(e)},t.prototype.pow=function(t){return"number"==typeof t?this.powS(t):this.powM(t)},t.prototype.powS=function(t){for(var r=0;r<this.zzk2;r++)for(var e=0;e<this.zzj2;e++)this.set(r,e,Math.pow(this.get(r,e),t));return this},t.prototype.powM=function(t){if(t=r.zzL1(t),this.zzk2!==t.zzk2||this.zzj2!==t.zzj2)throw new Error();for(var e=0;e<this.zzk2;e++)for(var o=0;o<this.zzj2;o++)this.set(e,o,Math.pow(this.get(e,o),t.get(e,o)));return this}}(k,E);var R=function(t){o(e,k);var r=s(e);function e(t){var o;u(this,e),(o=r.call(this)).zzk2=t.length,o.zzj2=t[0].length,o.dataFlatten=new Float32Array(o.zzk2*o.zzj2);for(var n=0;n<o.zzk2;n++)for(var s=0;s<o.zzj2;s++)o.dataFlatten[n*o.zzj2+s]=t[n][s];return o}return c(e,[{key:"set",value:function(t,r,e){return this.dataFlatten[t*this.zzj2+r]=e,this}},{key:"get",value:function(t,r){return this.dataFlatten[t*this.zzj2+r]}}]),e}();function T(t,r){var e=0;return Math.abs(t)>Math.abs(r)?(e=r/t,Math.abs(t)*Math.sqrt(1+e*e)):0!==r?(e=t/r,Math.abs(r)*Math.sqrt(1+e*e)):0}var A=function(){function t(r){u(this,t);var e=(r=R.zzL1(r)).zzk2,o=r.zzj2;this.QR=r.clone(),this.X=r.clone(),this.Rzzo=new Float32Array(o),this.m=e,this.n=o,this.update(r)}return c(t,[{key:"update",value:function(t){var r,e,o,n,s=this.QR,i=this.m,a=this.n,u=this.Rzzo;for(s.copy(t),o=0;o<a;o++){var h=0;for(r=o;r<i;r++)h=T(h,s.get(r,o));if(0!==h){for(s.get(o,o)<0&&(h=-h),r=o;r<i;r++)s.set(r,o,s.get(r,o)/h);for(s.set(o,o,s.get(o,o)+1),e=o+1;e<a;e++){for(n=0,r=o;r<i;r++)n+=s.get(r,o)*s.get(r,e);for(n=-n/s.get(o,o),r=o;r<i;r++)s.set(r,e,s.get(r,e)+n*s.get(r,o))}}u[o]=-h}}},{key:"solve",value:function(t){var r=this.QR,e=r.zzk2,o=t.zzj2,n=this.X;n.copy(t);var s,i,a,u,h=r.zzj2;for(a=0;a<h;a++)for(i=0;i<o;i++){for(u=0,s=a;s<e;s++)u+=r.get(s,a)*n.get(s,i);for(u=-u/r.get(a,a),s=a;s<e;s++)n.set(s,i,n.get(s,i)+u*r.get(s,a))}for(a=h-1;a>=0;a--){for(i=0;i<o;i++)n.set(a,i,n.get(a,i)/this.Rzzo[a]);for(s=0;s<a;s++)for(i=0;i<o;i++)n.set(s,i,n.get(s,i)-n.get(a,i)*r.get(s,a))}return n.zz31(0,h-1,0,o-1)}},{key:"zzY1",value:function(){for(var t=this.QR.zzj2,r=0;r<t;r++)if(0===this.Rzzo[r])return!1;return!0}},{key:"zzW1",get:function(){var t,r,e=this.QR,o=e.zzj2,n=new E(o,o);for(t=0;t<o;t++)for(r=0;r<o;r++)t<r?n.set(t,r,e.get(t,r)):t===r?n.set(t,r,this.Rzzo[t]):n.set(t,r,0);return n}},{key:"zzZ1",get:function(){var t,r,e,o,n=this.QR,s=n.zzk2,i=n.zzj2,a=new E(s,i);for(e=i-1;e>=0;e--){for(t=0;t<s;t++)a.set(t,e,0);for(a.set(e,e,1),r=e;r<i;r++)if(0!==n.get(e,e)){for(o=0,t=e;t<s;t++)o+=n.get(t,e)*a.get(t,r);for(o=-o/n.get(e,e),t=e;t<s;t++)a.set(t,r,a.get(t,r)+o*n.get(t,e))}}return a}}]),t}(),D=function(){function t(r,e){u(this,t);var o=r.zzk2,n=r.zzj2,s=Boolean(e.zzx3),i=Boolean(e.zzZ2),a=r.clone(),h=Math.min(o+1,n),c=Math.min(o,n),f=new Float32Array(h),l=new E(o,c),v=new E(n,n),m=new Float32Array(n),g=new Float32Array(o),w=new Float32Array(h),p=E.zzG1(h,h),y=E.zzG1(v.zzk2,l.zzk2),d=new E(v.zzk2,h),b=new E(v.zzk2,l.zzk2);this.m=o,this.n=n,this.ni=h,this.nu=c,this.s=f,this.si=w,this.work=g,this.e=m,this.U=l,this.V=v,this.wantu=s,this.wantv=i,this.a=a,this.Ls=p,this.VLU=y,this.X=d,this.Y=b,this.compute()}return c(t,[{key:"zz24",value:function(t){this.a.copy(t),this.U.reset(),this.V.reset(),this.compute()}},{key:"compute",value:function(){for(var t=this.m,r=this.n,e=this.ni,o=this.nu,n=this.s,s=this.si,i=this.work,a=this.e,u=this.U,h=this.V,c=this.wantu,f=this.wantv,l=this.a,v=0;v<e;v++)s[v]=v;for(var m=Math.min(t-1,r),g=Math.max(0,Math.min(r-2,t)),w=Math.max(m,g),p=0;p<w;p++){if(p<m){n[p]=0;for(var y=p;y<t;y++)n[p]=T(n[p],l.get(y,p));if(0!==n[p]){l.get(p,p)<0&&(n[p]=-n[p]);for(var d=p;d<t;d++)l.set(d,p,l.get(d,p)/n[p]);l.set(p,p,l.get(p,p)+1)}n[p]=-n[p]}for(var b=p+1;b<r;b++){if(p<m&&0!==n[p]){for(var M=0,x=p;x<t;x++)M+=l.get(x,p)*l.get(x,b);M=-M/l.get(p,p);for(var k=p;k<t;k++)l.set(k,b,l.get(k,b)+M*l.get(k,p))}a[b]=l.get(p,b)}if(c&&p<m)for(var S=p;S<t;S++)u.set(S,p,l.get(S,p));if(p<g){a[p]=0;for(var E=p+1;E<r;E++)a[p]=T(a[p],a[E]);if(0!==a[p]){a[p+1]<0&&(a[p]=0-a[p]);for(var R=p+1;R<r;R++)a[R]/=a[p];a[p+1]+=1}if(a[p]=-a[p],p+1<t&&0!==a[p]){for(var A=p+1;A<t;A++)i[A]=0;for(var D=p+1;D<t;D++)for(var C=p+1;C<r;C++)i[D]+=a[C]*l.get(D,C);for(var I=p+1;I<r;I++)for(var N=-a[I]/a[p+1],O=p+1;O<t;O++)l.set(O,I,l.get(O,I)+N*i[O])}if(f)for(var F=p+1;F<r;F++)h.set(F,p,a[F])}}var P=Math.min(r,t+1);if(m<r&&(n[m]=l.get(m,m)),t<P&&(n[P-1]=0),g+1<P&&(a[g]=l.get(g,P-1)),a[P-1]=0,c){for(var V=m;V<o;V++){for(var j=0;j<t;j++)u.set(j,V,0);u.set(V,V,1)}for(var q=m-1;q>=0;q--)if(0!==n[q]){for(var z=q+1;z<o;z++){for(var Q=0,L=q;L<t;L++)Q+=u.get(L,q)*u.get(L,z);Q=-Q/u.get(q,q);for(var B=q;B<t;B++)u.set(B,z,u.get(B,z)+Q*u.get(B,q))}for(var U=q;U<t;U++)u.set(U,q,-u.get(U,q));u.set(q,q,1+u.get(q,q));for(var _=0;_<q-1;_++)u.set(_,q,0)}else{for(var G=0;G<t;G++)u.set(G,q,0);u.set(q,q,1)}}if(f)for(var W=r-1;W>=0;W--){if(W<g&&0!==a[W])for(var X=W+1;X<r;X++){for(var Y=0,J=W+1;J<r;J++)Y+=h.get(J,W)*h.get(J,X);Y=-Y/h.get(W+1,W);for(var K=W+1;K<r;K++)h.set(K,X,h.get(K,X)+Y*h.get(K,W))}for(var H=0;H<r;H++)h.set(H,W,0);h.set(W,W,1)}for(var Z=P-1,$=Number.EPSILON;P>0;){var tt=void 0,rt=void 0;for(tt=P-2;tt>=-1&&-1!==tt;tt--){var et=Number.MIN_VALUE+$*Math.abs(n[tt]+Math.abs(n[tt+1]));if(Math.abs(a[tt])<=et||Number.isNaN(a[tt])){a[tt]=0;break}}if(tt===P-2)rt=4;else{var ot=void 0;for(ot=P-1;ot>=tt&&ot!==tt;ot--){var nt=(ot!==P?Math.abs(a[ot]):0)+(ot!==tt+1?Math.abs(a[ot-1]):0);if(Math.abs(n[ot])<=$*nt){n[ot]=0;break}}ot===tt?rt=3:ot===P-1?rt=1:(rt=2,tt=ot)}switch(tt++,rt){case 1:var st=a[P-2];a[P-2]=0;for(var it=P-2;it>=tt;it--){var at=T(n[it],st),ut=n[it]/at,ht=st/at;if(n[it]=at,it!==tt&&(st=-ht*a[it-1],a[it-1]=ut*a[it-1]),f)for(var ct=0;ct<r;ct++)at=ut*h.get(ct,it)+ht*h.get(ct,P-1),h.set(ct,P-1,-ht*h.get(ct,it)+ut*h.get(ct,P-1)),h.set(ct,it,at)}break;case 2:var ft=a[tt-1];a[tt-1]=0;for(var lt=tt;lt<P;lt++){var vt=T(n[lt],ft),mt=n[lt]/vt,gt=ft/vt;if(n[lt]=vt,ft=-gt*a[lt],a[lt]=mt*a[lt],c)for(var wt=0;wt<t;wt++)vt=mt*u.get(wt,lt)+gt*u.get(wt,tt-1),u.set(wt,tt-1,-gt*u.get(wt,lt)+mt*u.get(wt,tt-1)),u.set(wt,lt,vt)}break;case 3:var pt=Math.max(Math.abs(n[P-1]),Math.abs(n[P-2]),Math.abs(a[P-2]),Math.abs(n[tt]),Math.abs(a[tt])),yt=n[P-1]/pt,dt=n[P-2]/pt,bt=a[P-2]/pt,Mt=n[tt]/pt,xt=a[tt]/pt,kt=((dt+yt)*(dt-yt)+bt*bt)/2,St=yt*bt*(yt*bt),Et=0;0===kt&&0===St||(Et=St/(kt+(Et=kt<0?0-Math.sqrt(kt*kt+St):Math.sqrt(kt*kt+St))));for(var Rt=(Mt+yt)*(Mt-yt)+Et,Tt=Mt*xt,At=tt;At<P-1;At++){var Dt=T(Rt,Tt);0===Dt&&(Dt=Number.MIN_VALUE);var Ct=Rt/Dt,It=Tt/Dt;if(At!==tt&&(a[At-1]=Dt),Rt=Ct*n[At]+It*a[At],a[At]=Ct*a[At]-It*n[At],Tt=It*n[At+1],n[At+1]=Ct*n[At+1],f)for(var Nt=0;Nt<r;Nt++)Dt=Ct*h.get(Nt,At)+It*h.get(Nt,At+1),h.set(Nt,At+1,-It*h.get(Nt,At)+Ct*h.get(Nt,At+1)),h.set(Nt,At,Dt);if(0===(Dt=T(Rt,Tt))&&(Dt=Number.MIN_VALUE),Ct=Rt/Dt,It=Tt/Dt,n[At]=Dt,Rt=Ct*a[At]+It*n[At+1],n[At+1]=-It*a[At]+Ct*n[At+1],Tt=It*a[At+1],a[At+1]=Ct*a[At+1],c&&At<t-1)for(var Ot=0;Ot<t;Ot++)Dt=Ct*u.get(Ot,At)+It*u.get(Ot,At+1),u.set(Ot,At+1,-It*u.get(Ot,At)+Ct*u.get(Ot,At+1)),u.set(Ot,At,Dt)}a[P-2]=Rt;break;case 4:if(n[tt]<=0&&(n[tt]=n[tt]<0?-n[tt]:0,f))for(var Ft=0;Ft<=Z;Ft++)h.set(Ft,tt,-h.get(Ft,tt));for(;tt<Z&&!(n[tt]>=n[tt+1]);){var Pt=n[tt];if(n[tt]=n[tt+1],n[tt+1]=Pt,f&&tt<r-1)for(var Vt=0;Vt<r;Vt++)Pt=h.get(Vt,tt+1),h.set(Vt,tt+1,h.get(Vt,tt)),h.set(Vt,tt,Pt);if(c&&tt<t-1)for(var jt=0;jt<t;jt++)Pt=u.get(jt,tt+1),u.set(jt,tt+1,u.get(jt,tt)),u.set(jt,tt,Pt);tt++}P--}}}},{key:"solve",value:function(t){for(var r=t,e=this.zzf1,o=this.s.length,n=this.Ls,s=this.VLU,i=0;i<o;i++)Math.abs(this.s[i])<=e?n.set(i,i,0):n.set(i,i,1/this.s[i]);for(var a=this.U,u=this.zzh1,h=u.zzr(n),c=u.zzk2,f=a.zzk2,l=0;l<c;l++)for(var v=0;v<f;v++){for(var m=0,g=0;g<o;g++)m+=h.get(l,g)*a.get(v,g);s.set(l,v,m)}return s.zzr(r)}},{key:"zza1",value:function(t){return this.solve(E.zzo(t))}},{key:"inverse",value:function(){for(var t=this.V,r=this.zzf1,e=t.zzk2,o=t.zzj2,n=this.X,s=this.Y,i=0;i<e;i++)for(var a=0;a<o;a++)Math.abs(this.s[a])>r&&n.set(i,a,t.get(i,a)/this.s[a]);for(var u=this.U,h=u.zzk2,c=u.zzj2,f=0;f<e;f++)for(var l=0;l<h;l++){for(var v=0,m=0;m<c;m++)v+=n.get(f,m)*u.get(l,m);s.set(f,l,v)}return s}},{key:"zzb1",get:function(){return this.s[0]/this.s[Math.min(this.m,this.n)-1]}},{key:"zzp2",get:function(){return this.s[0]}},{key:"zzd1",get:function(){for(var t=Math.max(this.m,this.n)*this.s[0]*Number.EPSILON,r=0,e=this.s,o=0,n=e.length;o<n;o++)e[o]>t&&r++;return r}},{key:"zzoonal",get:function(){return Array.from(this.s)}},{key:"zzf1",get:function(){return Number.EPSILON/2*Math.max(this.m,this.n)*this.s[0]}},{key:"zzg1",get:function(){return this.U}},{key:"zzh1",get:function(){return this.V}},{key:"zzoonalMatrix",get:function(){return E.zzo(this.s)}}]),t}(),C=[],I=function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{zzj3:-1},e=r.zzj3;if(-1!==e&&C[e]){var o=C[e];return o.zz24(t),o}var n=new D(t,Object.assign({zzx3:!0,zzZ2:!0},r));return-1!==e&&(C[e]=n),n};function N(t,r){var e=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=arguments.length>3?arguments[3]:void 0;return e?I(t,{zzj3:o}).solve(r):new A(t).solve(r)}var O=function(t){o(e,k);var r=s(e);function e(t,o,n){var s;return u(this,e),(s=r.call(this)).matrix=t,s.zzk2=o,s.zzj2=n,s}return e}(),F=function(t){o(e,O);var r=s(e);function e(t,o,n){var s;u(this,e);var i=y(t,o,n);return(s=r.call(this,t,i.row.length,i.zz23.length)).zzy3=i.row,s.zzl2=i.zz23,s}return c(e,[{key:"set",value:function(t,r,e){return this.matrix.set(this.zzy3[t],this.zzl2[r],e),this}},{key:"get",value:function(t,r){return this.matrix.get(this.zzy3[t],this.zzl2[r])}}]),e}();t.Matrix=E,t.QR=A,t.zzT2=A,t.zz92=I,t.default=E,t.zzU1=function t(r){if(0===r.zzj2)return 1;var e,o,n,s,i,a;if(2===r.zzj2)return e=r.get(0,0),o=r.get(0,1),n=r.get(1,0),e*r.get(1,1)-o*n;if(3===r.zzj2)return s=new F(r,[1,2],[1,2]),i=new F(r,[1,2],[0,2]),a=new F(r,[1,2],[0,1]),e=r.get(0,0),o=r.get(0,1),n=r.get(0,2),e*t(s)-o*t(i)+n*t(a);throw new Error()},t.inverse2=function(t){var r=arguments.length>1&&void 0!==arguments[1]&&arguments[1],e=arguments.length>2?arguments[2]:void 0;return r?I(t,{zzj3:e}).inverse():N(t,E.zzJ1(t.zzk2))},t.zzp3=N,Object.defineProperty(t,"zzB",{value:!0})},"object"==(void 0===e?"undefined":f(e))&&void 0!==r?v(e):v((l=falseThis?globalThis:l||self).mlMatrix={})},{}]},{},[2])(2)});;Cb=window.zyp;a.callbackReady&&(R.Sa=a.callbackReady);a.callbackTrack&&(R.dc=a.callbackTrack);typeof a.animateDelay!=="undefined"&&(R.pb=a.animateDelay);typeof a.NNs!=="undefined"&&(R.lb=a.NNs);typeof a.NNsPaths!=="undefined"&&(R.mb=a.NNsPaths);typeof a.followZRot!=="undefined"&&(R.ta=a.followZRot);typeof a.freeZRot!=="undefined"&&(R.mc=a.freeZRot);typeof a.isTrackingEnabled!=="undefined"&&(R.vc=a.isTrackingEnabled?!0:!1);X=Object.create(ra.yg);
a.scanSettings&&Object.assign(X,a.scanSettings);na=Object.create(ra.Og);a.stabilizationSettings&&Object.assign(na,a.stabilizationSettings);var b=1;typeof a.maxHandsDetected!=="undefined"&&(b=Math.max(1,a.maxHandsDetected));if(b>ra.ng)return Qa("MAXHANDS_TOOHIGH"),!1;ca.A({T:b,ge:X.multiDetectionMaxOverlap,kc:X.multiDetectionOverlapScaleXY,we:X.multiDetectionSearchSlotsRate,Wd:function(d){return d.isDetected}});if(a.canvas)R.aa=a.canvas;else{if(!a.canvasId)return Qa("NO_CANVASID"),!1;R.aa=document.getElementById(a.canvasId);
if(!R.aa)return Qa("INVALID_CANVASID"),!1}V.u=R.aa.width;V.K=R.aa.height;if(!V.u||!V.K)return Qa("INVALID_CANVASDIMENSIONS"),!1;V.sb=V.u/V.K;Ta.A({$d:!1,qb:R.pb});wa.A({Fc:0,n:X.nDetectsPerLoopRange[1]-X.nDetectsPerLoopRange[0]+1,Ac:X.nDetectsPerLoopRange[0]});X.nDetectsPerLoop!==0?wa.Uc(X.nDetectsPerLoop):wa.fd();a.stabilizationSettings&&Object.assign(na,a.stabilizationSettings);a.videoSettings&&a.videoSettings.videoElement?$a(a.videoSettings.videoElement,jb):(a.videoSettings&&Object.assign(ya,a.videoSettings),
E.Jc=a.onWebcamAsk,E.Lc=a.onWebcamGet,Ab(function(d){$a(d,jb)}));V.Gb=Mb.instance({});tb=X.animateProcessOrder.indexOf("S")<X.animateProcessOrder.indexOf("D");qb();Nb(tc);return!0},update:function(a){if(!Bb)return Promise.reject("NOT_READY");a.scanSettings&&gb.set_scanSettings(a.scanSettings);a.stabilizationSettings&&gb.set_stabilizationSettings(a.stabilizationSettings);var b=Promise.resolve();if(a.NNsPaths||a.NNs){rb();ia=fa.Bc;qb();oa.forEach(function(d){d.model.m()});oa.splice(0);for(b=0;b<ca.na();++b)qa[b].detected=
0,qa.isDetected=!1,Oa[b].Wa=0;a.NNsPaths?R.mb=a.NNsPaths:a.NNs&&(R.lb=a.NNs);b=new Promise(function(d){Nb(function(e){Qb(e);Ya();d()})})}return b},retry_cameraAccess:function(){return new Promise(function(a,b){ia!==fa.error?b("NOT_APPLICABLE"):(ia=fa.Bc,Ab(function(d){$a(d,jb);a()}))})},destroy:function(){if(kb)return Promise.reject("ALREADY_DESTROYING");fb=null;Bb=!1;kb=!0;Ta.m();return new Promise(function(a){gb.toggle_pause(!0,!0).finally(function(){kc();V.Gb=null;ha.Aa=null;ha.kb=null;E.D=null;
ia=fa.Nb;kb=!1;a()}).catch(function(){})})},toggle_videoStream:function(a){return E.Ib||!E.element?Promise.resolve():Y.Ke(E.element,a,E.Ta)},toggle_pause:function(a,b){if([fa.play,fa.pause].indexOf(ia)===-1)return Promise.reject("NOT_READY");b=b?gb.toggle_videoStream(!a):Promise.resolve();a?rb():b.then(function(){Ya()});return b},toggle_tracking:function(a){[fa.play,fa.pause].indexOf(ia)!==-1&&(R.vc=a)},update_videoSettings:function(a){rb();return new Promise(function(b,d){Y.Ke(E.element,!1,E.Ta).then(function(){Object.assign(ya,
a);Ab(function(e){$a(e,function(){Va();Ua();Ya();b()})})}).catch(d)})},set_animateDelay:function(a){R.pb=a;Ta.update({qb:R.pb})},resize:function(){if(!R||!R.aa)return!1;var a=R.aa.width,b=R.aa.height;if(!zb()&&a===V.u&&b===V.K)return!1;V.u=a;V.K=b;V.sb=V.u/V.K;B.O();yb();xb();Va();Ua();return!0},set_inputTexture:function(a,b,d,e){E.H[0]=b;E.H[1]=d;E.Xd=e||!1;E.D=Z.instance({width:b,height:d,qc:a});E.cb=!0;Va();Ha.Rd();Ua()},reset_inputTexture:function(){E.cb=!1;E.D=E.$c;zb();Va();Ua()},render_video:function(){xa.N();
B.O();B.set("s65");B.De("u42",E.ga);c.viewport(0,0,V.u,V.K);E.D.h(0);Q.l(!0,!0);B.De("u42",E.B)},get_videoDevices:function(a){return Y.Od(a)},set_scanSettings:function(a){Object.assign(X,a);X.nDetectsPerLoop!==0?wa.Uc(X.nDetectsPerLoop):wa.fd();yb();xb()},set_stabilizationSettings:function(a){Object.assign(na,a)},update_videoElement:function(a,b){$a(a,function(){Pb();Va();Ua();b&&b();ia===fa.Fe&&Ya()})},capture_image:function(a){return Ha.Hf(a)},get_LMLabels:function(){return Ma.labels},get_LM:function(){return Ma.pe},
reset:function(){qa.forEach(function(a){Object.assign(a,{detected:0,isDetected:!1,x:0,y:0,s:1,rz:0})});ha.Aa.Ma(ha.Yc);ha.kb.Ma(ha.Yc);Pa.reset()},compute_pose:function(a,b,d,e,g){g=Object.assign({rotationDirectionSrc:null,rotationDirectionDst:null},g||null);fb===null&&(Na[0]=d,Na[1]=e,fb=new Cb.zypSolver({cameraFocals:Na,zyp15:ra.Ng,rotationDirectionSrc:g.rotationDirectionSrc,rotationDirectionDst:g.rotationDirectionDst}));if(Na[0]!==d||Na[1]!==e)Na[0]=d,Na[1]=e,fb.zyp14(Na);
a=fb.solve(a,b,!1);return{ok:a.zyp13,repError:a.repError,rotation:a.R,translation:a.t}}};return gb}();
export default WEBARROCKSHAND;