!function(u,Jd,Kd){"use strict";var t,d,l,J,K,f,Q,W,A,P,g,Y,v,Md="ht";if(!u.ht){Date.now&&Date.prototype.getTime||(Date.now=function(){return(new Date).getTime()}),u.performance&&u.performance.now||(N=Date.now(),u.performance||(u.performance={}),u.performance.now=function(){return Date.now()-N});for(var N,s=Date.now(),O=["ms","moz","webkit","o"],Z=0;Z>8-M%1*8)){if(255<(C=o.charCodeAt(M+=.75)))throw new Error("'btoa' failed: The string to be encoded contains characters outside of the Latin1 range.");z=z<<8|C}return N});var c=(mh=u.location)&&u.document,fd=null,X=Kd,U=u.ht={},V=u.htconfig,Qd=U.Default=V&&V.Default||{},xd=U.Style=V&&V.Style||{},e=U.Attr=V&&V.Attr||{},D=function(){},a=function(){return!0},k=function(){return!1},p=function(){return null},n=function($){return $},b=function($){return!$},m=U.Color=V&&V.Color||{},S=U.IsGetter=V&&V.IsGetter||{},G=!1;try{var q=Jd.defineProperty({},"passive",{get:function(){return G=!0,Kd}});mh&&u.addEventListener("test",q,q),mh&&u.removeEventListener("test",q,q)}catch($){G=!1}Qd.passiveSupported=G;var Ad,Nd,T,sd,r,gd,Yd,$d,zd,vd,Od,td,cd,Pd,Zd,Xd,dd,ld,pd,bd,V=Qd.passiveSupported,ud=Qd.eventListenerOptionsFalse=!!V&&{passive:!1,capture:!1},nd=Qd.eventListenerOptionsTrue=!V||{passive:!1,capture:!0},Rd=function($,z,C,o){$.addEventListener(z,C,o?nd:ud)},Id=function($,z,C,o){$.removeEventListener(z,C,o?nd:ud)},hd=(q=Math).round,md=q.floor,Sd=q.ceil,Gd=q.sqrt,Cd=q.max,od=q.min,I=q.abs,Wd=q.cos,Ed=q.acos,yd=q.sin,Hd=q.pow,id=q.asin,x=(q.exp,q.PI),_d=2*x,Fd=x/2,jd=q.tan,Ud=q.atan2,Ld=q.random,V=q.log,wd=Hd(2,1),qd=u.parseInt||global.parseInt,Td="2025-09-15",rd=mh&&!!u.navigator&&-1Cd($,C)||Y+a_Cd(M,N)||v+a_Cd(z,o)||v+a_Cd(A,s))?fd:[Y,v]):fd},qv=function($,z,C){if($&&C){var o=function($,z,C){return z?z===Mh?$.getStyle(C):"attr"===z?$.getAttr(C):"field"===z?$[C]:void 0:$[C=Qv(C)]?$[C]():void 0};if("string"!=typeof C||"{"!==C[0]||"}"!==C[C.length-1])return o($,z,C);var M=(C=(C=C.substr(1)).substr(0,C.length-1)).split("."),A=o($,z,M[0]);if(A!=fd)for(var N=1,s=M.length;NM&&(M=s.width),C=C||s.height}return $.ss=o,{width:M,height:C*A}},cX=(zd=c?sX().getContext("2d"):fd,function($,s,g,Y,v,O){var z=$.split("\n"),t=[],c=B3(g,$).height;return Y=Y||0,zd.font=g,zd.textBaseline=Zt,z.forEach(function($){for(var z=0,C=1,o=0,M=$.length;C<=M;C++){var A=$.substring(z,C),N=v?zd.measureText($[C]):B3(g,A),N=(v&&(o+=N.fontBoundingBoxDescent||c),v?o+(A.length-1)*O:N.width+(A.length-1)*Y);sQd.imageCacheThreshold&&(z._cacheImage_[O]={__count__:0}),t=U.Default.toCanvas(z,vK(z),OK(z),null,M,A,C,null,o),z._cacheImage_[O][C]=t,z._cacheImage_[O].__count__++),z=t),(v=$.createPattern(z,"repeat")).setTransform&&s&&(c=s.x,y=s.y,_=vK(z),P=OK(z),X=Z=1,"uniform"===N?(Z=s.width/_)<(X=s.height/P)?(X=Z,y+=(s.height-P*Z)/2):X>2,A=(3&C)<<4|(C=$.charCodeAt(Y++))>>4,N=(15&C)<<2|(o=$.charCodeAt(Y++))>>6,s=63&o,isNaN(C)?N=s=64:isNaN(o)&&(s=64),g=g+z.charAt(M)+z.charAt(A)+z.charAt(N)+z.charAt(s);return g},DA=function($,z,C){for(var o,M,A,N,s,g,Y="",v=C||0;v<$.length;)A=z.indexOf($.charAt(v++)),o=(15&(N=z.indexOf($.charAt(v++))))<<4|(s=z.indexOf($.charAt(v++)))>>2,M=(3&s)<<6|(g=z.indexOf($.charAt(v++))),Y+=String.fromCharCode(A<<2|N>>4),64!=s&&(Y+=String.fromCharCode(o)),64!=g&&(Y+=String.fromCharCode(M));return decodeURIComponent(escape(Y))},aA=[],kA=[],xA={},pA=function(){var $=0;return{next:function(){return++$}}},B=U.Math=U.Util={generateUUID:function(){for(var M=[],$=0;$<256;$++)M[$]=($<16?"0":"")+$.toString(16).toUpperCase();return function(){var $=4294967295*Math.random()|0,z=4294967295*Math.random()|0,C=4294967295*Math.random()|0,o=4294967295*Math.random()|0;return M[255&$]+M[$>>8&255]+M[$>>16&255]+M[$>>24&255]+"-"+M[255&z]+M[z>>8&255]+"-"+M[z>>16&15|64]+M[z>>24&255]+"-"+M[63&C|128]+M[C>>8&255]+"-"+M[C>>16&255]+M[C>>24&255]+M[255&o]+M[o>>8&255]+M[o>>16&255]+M[o>>24&255]}}(),clamp:function($,z,C){return Math.max(z,Math.min(C,$))},fequal:function($,z,C){return null==C&&(C=1e-8),Math.abs($-z)>1)|z>>2)|z>>4)|z>>8)|z>>16,++z>>1);return z-$<$-C?z:C},requestMatrix4:function(){return 0Math.abs($.z)?Yr.set(-$.y,$.x,0):Yr.set(0,-$.z,$.y)):Yr.crossVectors($,z),this._x=Yr.x,this._y=Yr.y,this._z=Yr.z,this._w=vr,this.normalize()},multiply:function($){return this.multiplyQuaternions(this,$)},premultiply:function($){return this.multiplyQuaternions($,this)},multiplyQuaternions:function($,z){var C=$._x,o=$._y,M=$._z,$=$._w,A=z._x,N=z._y,s=z._z,z=z._w;return this._x=C*z+$*A+o*s-M*N,this._y=o*z+$*N+M*A-C*s,this._z=M*z+$*s+C*N-o*A,this._w=$*z-C*A-o*N-M*s,this},toArray:function($,z){return($=$||[])[z=z||0]=this._x,$[z+1]=this._y,$[z+2]=this._z,$[z+3]=this._w,$},angleTo:function($){return 2*Math.acos(Math.abs(U.Math.clamp(this.dot($),-1,1)))},rotateTowards:function($,z){var C=this.angleTo($);return 0===C||(z=Math.min(1,z/C),this.slerp($,z)),this}}),hA.slerpFlat=function($,z,C,o,M,A,N){var s,g,Y,v=C[o+0],O=C[o+1],t=C[o+2],C=C[o+3],o=M[A+0],c=M[A+1],y=M[A+2],M=M[A+3];return 0===N?($[z+0]=v,$[z+1]=O,$[z+2]=t,void($[z+3]=C)):1===N?($[z+0]=o,$[z+1]=c,$[z+2]=y,void($[z+3]=M)):(C===M&&v===o&&O===c&&t===y||(A=1-N,s=0<=(g=v*o+O*c+t*y+C*M)?1:-1,(Y=1-g*g)>Number.EPSILON&&(Y=Math.sqrt(Y),g=Math.atan2(Y,g*s),A=Math.sin(A*g)/Y,N=Math.sin(N*g)/Y),v=v*A+o*(g=N*s),O=O*A+c*g,t=t*A+y*g,C=C*A+M*g,A===1-N&&(v*=Y=1/Math.sqrt(v*v+O*O+t*t+C*C),O*=Y,t*=Y,C*=Y)),$[z]=v,$[z+1]=O,$[z+2]=t,void($[z+3]=C))},hA.multiplyQuaternionsFlat=function($,z,C,o,M,A){var N=C[o+0],s=C[o+1],g=C[o+2],C=C[o+3],o=M[A+0],Y=M[A+1],v=M[A+2],M=M[A+3];return $[z+0]=N*M+C*o+s*v-g*Y,$[z+1]=s*M+C*Y+g*o-N*v,$[z+2]=g*M+C*v+N*Y-s*o,$[z+3]=C*M-N*o-s*Y-g*v,$},hA.sharedQuaternionArray=[0,0,0,1],U.Math.Vector4=function($,z,C,o){this.x=$||0,this.y=z||0,this.z=C||0,this.w=o!==Kd?o:1}),Dd=(Jd.assign(mA.prototype,{isVector4:!0,set:function($,z,C,o){return this.x=$,this.y=z,this.z=C,this.w=o,this},setScalar:function($){return this.x=$,this.y=$,this.z=$,this.w=$,this},setX:function($){return this.x=$,this},setY:function($){return this.y=$,this},setZ:function($){return this.z=$,this},setW:function($){return this.w=$,this},setComponent:function($,z){switch($){case 0:this.x=z;break;case 1:this.y=z;break;case 2:this.z=z;break;case 3:this.w=z;break;default:throw new Error("index is out of range: "+$)}return this},getComponent:function($){switch($){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw new Error("index is out of range: "+$)}},clone:function(){return new this.constructor(this.x,this.y,this.z,this.w)},copy:function($){return this.x=$.x,this.y=$.y,this.z=$.z,this.w=$.w!==Kd?$.w:1,this},add:function($,z){return z!==Kd?this.addVectors($,z):(this.x+=$.x,this.y+=$.y,this.z+=$.z,this.w+=$.w,this)},addScalar:function($){return this.x+=$,this.y+=$,this.z+=$,this.w+=$,this},addVectors:function($,z){return this.x=$.x+z.x,this.y=$.y+z.y,this.z=$.z+z.z,this.w=$.w+z.w,this},addScaledVector:function($,z){return this.x+=$.x*z,this.y+=$.y*z,this.z+=$.z*z,this.w+=$.w*z,this},sub:function($,z){return z!==Kd?this.subVectors($,z):(this.x-=$.x,this.y-=$.y,this.z-=$.z,this.w-=$.w,this)},subScalar:function($){return this.x-=$,this.y-=$,this.z-=$,this.w-=$,this},subVectors:function($,z){return this.x=$.x-z.x,this.y=$.y-z.y,this.z=$.z-z.z,this.w=$.w-z.w,this},multiplyScalar:function($){return this.x*=$,this.y*=$,this.z*=$,this.w*=$,this},applyMatrix4:function($){var z=this.x,C=this.y,o=this.z,M=this.w,$=$.el||$;return this.x=$[0]*z+$[4]*C+$[8]*o+$[12]*M,this.y=$[1]*z+$[5]*C+$[9]*o+$[13]*M,this.z=$[2]*z+$[6]*C+$[10]*o+$[14]*M,this.w=$[3]*z+$[7]*C+$[11]*o+$[15]*M,this},divideScalar:function($){return this.multiplyScalar(1/$)},setAxisAngleFromQuaternion:function($){this.w=2*Math.acos($.w);var z=Math.sqrt(1-$.w*$.w);return z<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=$.x/z,this.y=$.y/z,this.z=$.z/z),this},setAxisAngleFromRotationMatrix:function($){var z,C,o,M=($=$.el)[0],A=$[4],N=$[8],s=$[1],g=$[5],Y=$[9],v=$[2],O=$[6],$=$[10];if(Math.abs(A-s)<.01&&Math.abs(N-v)<.01&&Math.abs(Y-O)<.01){if(Math.abs(A+s)<.1&&Math.abs(N+v)<.1&&Math.abs(Y+O)<.1&&Math.abs(M+g+$-3)<.1)return this.set(1,0,0,0),this;var t=Math.PI,c=(M+1)/2,y=(g+1)/2,_=($+1)/2,P=(A+s)/4,Z=(N+v)/4,X=(Y+O)/4;return ythis.max.x||$.max.ythis.max.y||$.max.zthis.max.z)},copy:function($){return this.min.copy($.min),this.max.copy($.max),this},makeEmpty:function(){return this.min.x=this.min.y=this.min.z=1/0,this.max.x=this.max.y=this.max.z=-1/0,this},isEmpty:function(){return this.max.xthis.radius*this.radius&&(z.sub(this.center).normalize(),z.multiplyScalar(this.radius).add(this.center)),z},getBoundingBox:function($){return($=$===Kd?new HA:$).set(this.center,this.center),$.expandByScalar(this.radius),$},applyMatrix4:function($){return this.center.applyMatrix4($),this.radius=this.radius*$.getMaxScaleOnAxis(),this},translate:function($){return this.center.add($),this},equals:function($){return $.center.equals(this.center)&&$.radius===this.radius}}),U.Math.Frustum=function($,z,C,o,M,A){this.planes=[$!==Kd?$:new GA,z!==Kd?z:new GA,C!==Kd?C:new GA,o!==Kd?o:new GA,M!==Kd?M:new GA,A!==Kd?A:new GA]}),ad=(Jd.assign(gr.prototype,{set:function($,z,C,o,M,A){var N=this.planes;return N[0].copy($),N[1].copy(z),N[2].copy(C),N[3].copy(o),N[4].copy(M),N[5].copy(A),this},clone:function(){return(new this.constructor).copy(this)},copy:function($){for(var z=this.planes,C=0;C<6;C++)z[C].copy($.planes[C]);return this},setFromMatrix:function($){var z=this.planes,C=($=$.el)[0],o=$[1],M=$[2],A=$[3],N=$[4],s=$[5],g=$[6],Y=$[7],v=$[8],O=$[9],t=$[10],c=$[11],y=$[12],_=$[13],P=$[14],$=$[15];return z[0].setComponents(A-C,Y-N,c-v,$-y).normalize(),z[1].setComponents(A+C,Y+N,c+v,$+y).normalize(),z[2].setComponents(A+o,Y+s,c+O,$+_).normalize(),z[3].setComponents(A-o,Y-s,c-O,$-_).normalize(),z[4].setComponents(A-M,Y-g,c-t,$-P).normalize(),z[5].setComponents(A+M,Y+g,c+t,$+P).normalize(),this},intersectsObject:(mr=new sr,function($){var z=$.geometry;return null===z.boundingSphere&&z.computeBoundingSphere(),mr.copy(z.boundingSphere).applyMatrix4($.matrixWorld),this.intersectsSphere(mr)}),intersectsSprite:(hr=new sr,function($){return hr.center.set(0,0,0),hr.radius=.7071067811865476,hr.applyMatrix4($.matrixWorld),this.intersectsSphere(hr)}),intersectsSphere:function($){for(var z=this.planes,C=$.center,o=-$.radius,M=0;M<6;M++)if(z[M].distanceToPoint(C)oP.lengthSq()&&(this.x=MP.x,this.y=MP.y,this.z=MP.z),this}),onChange:function($){return this.onChangeCallback=$,this},onChangeCallback:function(){}}),YP=new hA,vP=new UA,B.eulerArrayToQuaternionArray=function($,z){return YP.setFromEuler(vP.fromArray($)).toArray(z)},B.eulerArrayToQuaternion=function($){return YP.setFromEuler(vP.fromArray($))},B.quaternionArrayToEulerArray=function($,z,C){return C&&(vP.order=C),vP.setFromQuaternion(YP.fromArray($)).toArray(z)},B.quaternionArrayToEuler=function($,z){return z&&(vP.order=z),vP.setFromQuaternion(YP.fromArray($))},U.Math.Interpolant=function($,z,C,o){this.parameterPositions=$,this._cachedIndex=0,$=z.length/$.length,C&&($/=C),this.resultBuffer=o!==Kd?o:new z.constructor($),this.sampleValues=z,this.valueSize=$,this.settings=null,this.DefaultSettings_={}}),wA=(Jd.assign(LA.prototype,{evaluate:function($){var z,C=this.parameterPositions,o=this._cachedIndex,M=C[o],A=C[o-1];$:{z:{C:{o:if(!($>>1;$>5,$=31&$;C&&1>5,$=31&$;return z&&1>$&(8==z?255:4===z?15:3):0!=(this.data[C]&1<<$)},toString:(OP=["","0","00","000","0000","00000","000000","0000000","00000000"],function(){for(var $,z="",C=0,o=this.data.length;C$},function(s,g){function Y($,z){(C=M($,z))&&(z=C),c[$]=z,delete t[$];var C=Hv(t);C&&(t=o3[s]=fd),N3(s,C,$,z),c3(s+"::"+$,z)}function v($,z){Y($,z),z&&Qd[C]($,z)}var O,t=fd,c=z3[s]={},y=s.charAt(0).toUpperCase()+s.substr(1),o=(M3[s]={},(g=g||Mv).pattern),M=g.handleLoaded||Nv,A="load"+y+"ByURL",C="handle"+y+"Loaded";C3[A]=function(C,o){if((o=o||C)&&!Qd.isMaxConcurrencyReached()&&!(t=t||(o3[s]={}))[C]){var M=new VV,A=!(t[C]={request:M,url:o});if("string"==typeof o&&(A=qh.test(o),o=Qd.beforeLoadURL(o,C)),o.data){var $=o.data;A&&$&&($=Qd.parse($)),g.delayToNextFrame?i3(function(){v(C,$)}):v(C,$)}else{M.onload=function($){var z=this.status;200===z||0===z||206===z?(z=M.getResponseText(),A&&(z=Qd.parse(z)),v(C,z)):Y(C,Qd["handleUnfound"+y](C,o)||fd)},M.onerror=function($){Y(C,Qd["handleUnfound"+y](C,o)||fd)};var z={};if(z.url=encodeURI(o),z.sync=!1,g.loadingParam)for(var N in g.loadingParam)z[N]=g.loadingParam[N];g.beforeSend&&g.beforeSend(M,z),M.send(z)}}},Qd["get"+y]=function($,z){var C=c[$];return C!==Kd||o&&!o.test($)?(z&&z(C),C):(t3(s+"::"+$,z),C3[A]($),c[$])},Qd["get"+y+"Map"]=function(){return c},"shader"==s?(O=function($,z){if(z===Kd)return delete c[$],void delete dz[$];z&&null!==z.data&&(c[$]=null,dz[$]=null),C3[A]($,z)},Qd.setShader=function(z,$,C){var o,M,A,N;Vd($)&&($.match(/\/\/ *FS/i)||-1<$.indexOf("ShaderX"))?(dz[z]=null,c[z]=$):Vd($)&&Vd(C)?(A=0,N=function(){var $;0C&&qe(o),o.lastPoint=z,o.details++,o.timeout=$t(function(){qe(this)}.bind(o),Qd.doubleClickSpeed)),2===o.details}),isShiftDown:function($){return $?$.shiftKey:jh[16]},isCtrlDown:function($){return $?gt?$.metaKey:$.ctrlKey:gt?jh[91]:jh[17]},getClientPoint:function($){return{x:($=uX($)?bX($):$).clientX,y:$.clientY}},isMouseEvent:function($){return $ instanceof MouseEvent||0===$.type.indexOf("mouse")},getTargetElement:function($){var z=g_($),C=Qd.isMouseEvent($)||!c.elementFromPoint?$.target:c.elementFromPoint(z.x,z.y);if(Mt&&c.elementFromPoint){for(var o=[],M=[];"none"===C.style.pointerEvents;)o.push(C),M.push(C.style.display||""),C.style.display="none",C=c.elementFromPoint(z.x,z.y);o.forEach(function($,z){$.style.display=M[z]})}return C},getPagePoint:function($){return{x:($=uX($)?bX($):$).pageX,y:$.pageY}},createObject:function($,z){var C,o=new $;for(C in z){var M,A=z[C];av(A)?o[C]=A:0===C.indexOf("s:")?o.s(C.substr(2),z[C]):0===C.indexOf("a:")?o.a(C.substr(2),z[C]):(M=Wv(C),A=z[C],o[M]?(o[M](A),"setToolTip"===M&&o.enableToolTip&&o.enableToolTip()):o[C]=A)}return o},setImage:function($,z,C,o){var M=arguments.length;4===M?_v($,o,z,C):2===M?Vd(z)?z.substr(0,12)==Qh?cv($,Qd.parse(z)):_v($,z):cv($,z):1===M&&_v($,$)},getImage:function($,z,C,o){var M,A;return av(z)&&(o=z,z=null),$==fd?(o&&o(fd),fd):(Dv($)?M=$:(M=Gh[$],$&&M===Kd&&(t3($,o),o=null,Ov&&Ov[$]||(_v($,$),M=Gh[$]))),z&&M&&M.tagName?(M[$="override"===C?"colors_override":"override_rgb"===C?"colors_override_rgb":"override_a"===C?"colors_override_a":"colors"]||(M[$]={__count__:0}),(A=M[$][z])||(M[$].__count__>Qd.imageCacheThreshold&&(M[$]={__count__:0}),A=function($,z,C,o,M){var A=sX(),N=(A.width=C,A.height=o,A.getContext("2d"));N.drawImage($,0,0,C,o);try{for(var s=N.getImageData(0,0,C,o),g=s.data,Y=0,v=g.length;Y$.x+$.width||z.y>$.y+$.height)},containsRect:function($,z){if(!$||!z)return!1;var C=z.x,o=z.y,M=z.width,z=z.height,A=$.width,N=$.height;if((A|N|M|z)<0)return!1;var s=$.x,$=$.y;if(Cz.width&&(M.left=A-s-g.width+Vt),g.top+g.height>z.height&&(M.top=N-s-g.height+Vt),g.left<0&&(M.left=A+s+Vt),g.top<0&&(M.top=N+s+Vt))):(M.left=$.x+Vt,M.top=$.y+Vt),uh(),C===Kd?C=ph&&ph.view:ph={e:$,view:C},C&&C.onShowToolTip&&C.onShowToolTip()):J3()},startDragging:function($,z,C){C==Kd&&(C=!0),$!==RX&&(RX?C&&(uX(z)?RX.handleWindowTouchEnd(z):RX.handleWindowMouseUp(z)):uX(z)?(Rd(u,dh,IX),Rd(u,lh,hX),Rd(u,"blur",hX)):(Rd(u,_h,mX),Rd(u,Ph,SX),Rd(u,"blur",SX)),RX=$)},getImageMap:function(){return Gh},toBoundaries:function($,z,C,o){var M=[];return _x($,z,C,o).forEach(function($){var z=[];$.forEach(function($){z.push($.x,$.y)}),M.push(z)}),M},getCurrentKeyCodeMap:function(){return jh},drawCenterImage:function($,z,C,o,M,A,N,s,g){!M&&A&&A.isSelfViewEvent&&(M=A);var Y=vK(z,M,A),v=OK(z,M,A);tK($,z,hd(C-Y/2),hd(o-v/2),Y,v,M,A,N,s,g)},drawStretchImage:function($,z,C,o,M,A,N,s,g,Y,v,O,t){!s&&g&&g.isSelfViewEvent&&(s=g);var c,y=vK(z,s,g,A),_=OK(z,s,g,N);"uniform"===C?(_*=c=od(A/y,N/_),o+=hd((A-(y*=c))/2),M+=hd((N-_)/2),A=y,N=_):"centerUniform"===C?((A=WP.main)throw new RangeError("Skybox camera must have lower priority than the main camera.");WP.skybox=Number($)}},main:{configurable:!1,enumerable:!1,get:function(){return WP.main},set:function($){if($<=WP.skybox)throw new RangeError("Main camera must have higher priority than the skybox camera.");if($>=WP.top)throw new RangeError("Main camera must have lower priority than the top camera.");WP.main=Number($)}},top:{configurable:!1,enumerable:!1,get:function(){return WP.top},set:function($){if($<=WP.main)throw new RangeError("Top camera must have higher priority than the main camera.");WP.top=Number($)}},infinity:{get:function(){return WP.infinity},set:function($){throw new RangeError("Infinity camera cannot be changed.")}}}))),addFontFace:(fP={ttf:"truetype",otf:"opentype",eot:"embedded-opentype"},QP={eot:0,woff2:1,woff:2,ttf:3,otf:4},function($,z,C,o){if($){var M;if(o&&Qd.removeFontFace($,!0),o=Eh[$])return o.parentNode||c.head.appendChild(o),void(C&&C(o));0!==(z=(z=Vd(z)?[z]:z).filter(function($){return!!Vd($)&&0<$.length})).length&&(z=z.map(Fe),M="",z.sort(je).forEach(function($){M+=", "+$.url}),M=M.substr(2),(o=c.createElement("style")).innerText='@font-face{font-family: "'+$+'";src: '+M+";}",c.head.appendChild(o),Eh[$]=o,C&&C(o))}}),clearFontFace:function(){if(!Hv(Eh)){for(var $ in Eh)Qd.removeFontFace($);Eh={}}},removeFontFace:function($,z){if($){var C=$;if(C.tagName){if(J_(C),z){var o,M=[];for(o in Eh)Eh[o]===C&&M.push(o);if(0N)return C._70I?C._72I($,z):C.moveTo($,z),void(C.F-=N);if(C._70I?C._72I(o.x+M*C.F,o.y+A*C.F):C.moveTo(o.x+M*C.F,o.y+A*C.F),N-=C.F,C.F=0,C._70I=!C._70I,!N)return}var v=md(N/Y);if(v){for(var O=M*g,t=A*g,c=M*s,y=A*s,_=0;_g)return A._70I?A._71I($,z,C,o):A.moveTo(C,o),void(A.F-=g);if(Y=A.F/g,M=A._20O(N,s,$,z,C,o,Y),A._70I?A._71I(M[2],M[3],M[4],M[5]):A.moveTo(M[4],M[5]),A.F=0,A._70I=!A._70I,!g)return}var c,y=md((g-g*Y)/A._83O),_=t/g,P=O/g;if(y)for(var Z=0;Z2*x?2*x:$)/(N=Sd(I($)/(x/4)))),P=-A;if(0>15;0<=--A;){var g=32767&this[$],Y=this[$++]>>15,v=s*g+Y*N;M=((g=N*g+((32767&v)<<15)+C[o]+(1073741823&M))>>>30)+(v>>>15)+s*Y+(M>>>30),C[o++]=1073741823&g}return M},30):"Netscape"!=$?(C.am=function($,z,C,o,M,A){for(;0<=--A;){var N=z*this[$++]+C[o]+M;M=md(N/67108864),C[o++]=67108863&N}return M},26):(C.am=function($,z,C,o,M,A){for(var N=16383&z,s=z>>14;0<=--A;){var g=16383&this[$],Y=this[$++]>>14,v=s*g+Y*N;M=((g=N*g+((16383&v)<<14)+C[o]+M)>>28)+(v>>14)+s*Y,C[o++]=268435455&g}return M},28),R=(C.DB=$,C.DM=(1<<$)-1,C.DV=1<<$,C.FV=Hd(2,52),C.F1=52-$,C.F2=2*$-52,"0123456789abcdefghijklmnopqrstuvwxyz"),Y=[],N=function($){return String.fromCharCode($)},o="0".charCodeAt(0),M=0;M<=9;++M)Y[o++]=M;for(o="a".charCodeAt(0),M=10;M<36;++M)Y[o++]=M;for(o="A".charCodeAt(0),M=10;M<36;++M)Y[o++]=M;function v($){return R.charAt($)}function A($){var z=d();return z._58O($),z}function J($){var z,C=1;return 0!=(z=$>>>16)&&($=z,C+=16),0!=(z=$>>8)&&($=z,C+=8),0!=(z=$>>4)&&($=z,C+=4),0!=(z=$>>2)&&($=z,C+=2),0!=(z=$>>1)&&($=z,C+=1),C}function s($){this.m=$}function g($){this.m=$,this.mp=$._50O(),this.mpl=32767&this.mp,this.mph=this.mp>>15,this.um=(1<<$.DB-15)-1,this.mt2=2*$.t}function K($,z){return new X($,z)}function O(){this.n=fd,this.e=0,this.d=fd,this.p=fd,this.q=fd,this.dmp1=fd,this.dmq1=fd,this._10A=fd}($=s.prototype)._73O=function($){return $.s<0||0<=$._52O(this.m)?$.mod(this.m):$},$.revert=function($){return $},$._74O=function($){$._49O(this.m,fd,$)},$._75O=function($,z,C){$._47O(z,C),this._74O(C)},$._76O=function($,z){$._48O(z),this._74O(z)},($=g.prototype)._73O=function($){var z=d();return $.abs()._59O(this.m.t,z),z._49O(this.m,fd,z),$.s<0&&0>15)*z.mpl&z.um)<<15)&$.DM;for($[o=C+z.m.t]+=z.m.am(0,M,$,C,0,z.m.t);$[o]>=$.DV;)$[o]-=$.DV,$[++o]++}$._57O(),$._45O(z.m.t,$),0<=$._52O(z.m)&&$._78O(z.m,$)},$._75O=function($,z,C){$._47O(z,C),this._74O(C)},$._76O=function($,z){$._48O(z),this._74O(z)},C._77O=function($){for(var z=this.t-1;0<=z;--z)$[z]=this[z];$.t=this.t,$.s=this.s},C._58O=function($){this.t=1,this.s=$<0?-1:0,0<$?this[0]=$:$<-1?this[0]=$+this.DV:this.t=0},C._54O=function($,z){var C,o=this;if(16==z)C=4;else if(8==z)C=3;else if(256==z)C=8;else if(2==z)C=1;else if(32==z)C=5;else{if(4!=z)return void o.fromRadix($,z);C=2}o.t=0,o.s=0;for(var M,A=$.length,N=!1,s=0;0<=--A;){var g=8==C?255&$[A]:(g=A,(M=Y[(M=$).charCodeAt(g)])==fd?-1:M);g<0?"-"==$.charAt(A)&&(N=!0):(N=!1,0==s?o[o.t++]=g:s+C>o.DB?(o[o.t-1]|=(g&(1<>o.DB-s):o[o.t-1]|=g<=o.DB&&(s-=o.DB))}8==C&&0!=(128&$[0])&&(o.s=-1,0>M|s,s=(C[g]&A)<=C.t)z.t=0;else{var M=$%C.DB,A=C.DB-M,N=(1<>M;for(var s=o+1;s>M;0>=C.DB;if($.t>=C.DB;M+=C.s}else{for(M+=C.s;o<$.t;)M-=$[o],z[o++]=M&C.DM,M>>=C.DB;M-=$.s}z.s=M<0?-1:0,M<-1?z[o++]=C.DV+M:0=z.DV&&($[C+z.t]-=z.DV,$[C+z.t+1]=1)}0<$.t&&($[$.t-1]+=z.am(C,z[C],$,2*C,0,1)),$.s=0,$._57O()},C._49O=function($,z,C){var o=this;if(!((v=$.abs()).t<=0)){var M=o.abs();if(M.t>o.F2:0),O=o.FV/v,t=(1<>g)&&(A=!0,N=v(o));0<=s;)g>(g+=C.DB-z)):(o=C[s]>>(g-=z)&M,g<=0&&(g+=C.DB,--s)),(A=0$?v=cx[s]:M=!0)),Y&&v&&v[0]&&v[Sd(.5)]&&A){var g,C=i_(v[0]);for(g in o=i_(v[1]))N.push(g);var $=0,Y=C[N[0]],v=o[N[$++]],O=o[N[$++]],t=o[N[$++]],c=o[N[$++]],y=o[N[$++]],_=o[N[$++]],C=C[N[6]],o=o[N[+$]],$=n._27O(A);if(Y===v&&$&&o){var A=v+O+t+c+y+_,P=!_||_===Kh||!Kh&&_===(qh+"")[0];if(!P&&_)for(var Z,X=0,d=_.length;X>2),z=3&C,1):1==M?(o+=v(z<<2|C>>4),z=15&C,2):2==M?(o=(o+=v(z))+v(C>>2),z=3&C,3):(o=(o+=v(z<<2|C>>4))+v(15&C),0));return 1==M&&(o+=v(z<<2)),o}e=(C={})._7A={},t=e._6A={_80O:function($){G.prototype=this;var z=new G;return $&&z._5A($),z.hasOwnProperty("_82O")||(z._82O=function(){z.$super._82O.apply(this,arguments)}),(z._82O.prototype=z).$super=this,z},_3A:function(){var $=this._80O();return $._82O.apply($,arguments),$},_82O:function(){},_5A:function($){for(var z in $)$.hasOwnProperty(z)&&(this[z]=$[z]);$.hasOwnProperty(l)&&(this.toString=$.toString)},_88O:function(){return this._82O.prototype._80O(this)}},c=e._39O=t._80O({_82O:function($,z){$=this._84O=$||[],this._65O=null!=z?z:4*$.length},toString:function($){return($||y).stringify(this)},_89O:function($){var z=this._84O,C=$._84O,o=this._65O,M=$._65O;if(this._57O(),o%4)for(var A=0;A>>2]>>>24-A%4*8&255;z[o+A>>>2]|=N<<24-(o+A)%4*8}else if(65535>>2]=C[A>>>2];else z.push.apply(z,C);return this._65O+=M,this},_57O:function(){var $=this._84O,z=this._65O;$[z>>>2]&=4294967295<<32-z%4*8,$.length=Sd(z/4)},_88O:function(){var $=t._88O.call(this);return $._84O=this._84O.slice(0),$},_87O:function($){for(var z=[],C=0;C<$;C+=4)z.push(4294967296*Ld|0);return new c._82O(z,$)}}),W=C._2A={},y=W._69O={stringify:function($){for(var z=$._84O,C=$._65O,o=[],M=0;M>>2]>>>24-M%4*8&255;o.push((A>>>4).toString(16)),o.push((15&A).toString(16))}return o.join("")},_68O:function($){for(var z=$.length,C=[],o=0;o>>3]|=qd($.substr(o,2),16)<<24-o%8*4;return new c._82O(C,z/2)}},_=W._8A={stringify:function($){for(var z=$._84O,C=$._65O,o=[],M=0;M>>2]>>>24-M%4*8&255;o.push(N(A))}return o.join("")},_68O:function($){for(var z=$.length,C=[],o=0;o>>2]|=(255&$.charCodeAt(o))<<24-o%4*8;return new c._82O(C,z)}},P=W._9A={stringify:function($){try{return decodeURIComponent(escape(_.stringify($)))}catch($){throw new Error("")}},_68O:function($){return _._68O(unescape(encodeURIComponent($)))}},Z=e._32O=t._80O({_1A:function(){this._83O=new c._82O,this._23O=0},_33O:function($){typeof $==Ah&&($=P._68O($)),this._83O._89O($),this._23O+=$._65O},_25O:function($){var z=this._83O,C=z._84O,o=z._65O,M=this._79O,A=o/(4*M),N=(A=$?Sd(A):Cd((0|A)-this._22O,0))*M,$=od(4*N,o);if(N){for(var s=0;s>>7)^(t<<14|t>>>18)^t>>>3)+k[O-7]+((c<<15|c>>>17)^(c<<13|c>>>19)^c>>>10)+k[O-16]);var t=o&M^o&A^M&A,c=v+((s<<26|s>>>6)^(s<<21|s>>>11)^(s<<7|s>>>25))+(s&g^~s&Y)+i[O]+k[O],v=Y,Y=g,g=s,s=N+c|0,N=A,A=M,M=o,o=c+(((o<<30|o>>>2)^(o<<19|o>>>13)^(o<<10|o>>>22))+t)|0}C[0]=C[0]+o|0,C[1]=C[1]+M|0,C[2]=C[2]+A|0,C[3]=C[3]+N|0,C[4]=C[4]+s|0,C[5]=C[5]+g|0,C[6]=C[6]+Y|0,C[7]=C[7]+v|0},_21O:function(){var $=this._83O,z=$._84O,C=8*this._23O,o=8*$._65O;return z[o>>>5]|=128<<24-o%32,z[14+(64+o>>>9<<4)]=md(C/4294967296),z[15+(64+o>>>9<<4)]=C,$._65O=4*z.length,this._25O(),this._64O},_88O:function(){var $=V._88O.call(this);return $._64O=this._64O._88O(),$}}),x=(W._41O=V._26O(e),W._42O=V._19O(e),new RegExp(""));function p($){var z=$.substring(0,38);return z&&30==z.indexOf("05000420")?["ss",$.substring(38)]:[]}function j($,z,C,o){if((z=K(z=(z=z.replace(x,"")).replace(/[ \n]+/g,""),16))._55O()>this.n._55O())return 0;if(0==(z=p(this._37O(z)[l](16).replace(/^1f+00/,""))).length)return!1;for(var M,A,N,s=W_,g=[0,.5,.75,.875,.9375],Y=[],v=[],O=[],t=_d/s,c=(c=z=z[1],$=b._4O.Util._56O($,"ss"),(N={}).v=$==c,N.t=1,N.s=0,Yd=N.v,$),y=N.t=0,_=0;ythis.n._55O())return 0;if(0==(z=p(this._37O(z)[l](Hd(2,4)).replace(r,""))).length)return!1;var C=z[0];return z[1]==b._4O.Util._56O($,C)}}.bind(B(Ad))},Df.length-ef.length);if(0<$d)for(var zd=0;zd<$d;zd++)L=q.Util,w=U;gd=function($,z){z=w(z);var C=B(T_),o=Vt.length,M=2*o,z=T(z,Hd(o,M)),A=!0;if(A=C&&(N=C[Wt[0]])&&z._55O()<=N._55O()?!1:A)return 0;var N=p(C._37O(z)[l](Hd(o,M)).replace(r,""));return 0!=N.length&&(A=N[0],N[1]==L._11A($,A))}}(u),U.Binding={}),yK={},_K=[],PK=(Jd.assign(cK,{setBindingRule:function($,z){yK[$]=z},getBindingRule:function($){return yK[$]},getBindingRuleMap:function(){return yK},setBindingRulePattern:function($,z){_K.push({pattern:$,rule:z})},getBindingRulePattern:function($){for(var z=_K,C=0;CC._children.size())&&(z=C._children.size()),C._children.add($,z),(C._childMap[$._id]=$).setParent(C),C.onChildAdded($,z),C.fp(hf,fd,$)))},onChildAdded:function($,z){},removeChild:function($){var z;this._childMap&&this._childMap[$._id]&&(z=this._children.remove($),delete this._childMap[$._id],this.fp(hf,$,fd),$.setParent(fd,z),this.onChildRemoved($,z))},onChildRemoved:function($,z){},getChildAt:function($){return this._children.get($)},clearChildren:function(){if(!this._children.isEmpty())for(var $=0,z=this._children.toArray(),C=z.length;$C.interval&&(C.beforeAction&&C.beforeAction(),C.action&&o.each(function($){C.action($)}),C.afterAction&&C.afterAction(),C.lastTime=$)}M.length&&(o._30Q=u.requestAnimationFrame(A))}}),SK=(D_("DataModel",Jd,{ms_fire:1,ms_attr:1,ms_ac:["layers","name","autoAdjustIndex","hierarchicalRendering","background","envmapType","envmap","postProcessingData","init"],_name:Kd,_autoAdjustIndex:!0,_hierarchicalRendering:!1,_background:Kd,_init:Kd,_envmap:Kd,_envmapType:Kd,_postProcessingData:Kd,sm:function(){return this.getSelectionModel()},mm:function($,z,C){this.addDataModelChangeListener($,z,C)},umm:function($,z){this.removeDataModelChangeListener($,z)},md:function($,z,C){this.addDataPropertyChangeListener($,z,C)},umd:function($,z){this.removeDataPropertyChangeListener($,z)},mh:function($,z,C){this.addHierarchyChangeListener($,z,C)},umh:function($,z){this.removeHierarchyChangeListener($,z)},getAttrObject:function(){return this._attrObject},setAttrObject:function($){return this._attrObject=$},getSelectionModel:function(){return this._selectionModel},size:function(){return this._datas.size()},isEmpty:function(){return this._datas.isEmpty()},getRoots:function(){return this._roots},getDatas:function(){return this._datas},getFullscreenDatas:function(){return this._fsDataMap},getReflectors:function(){return this._reflectorMap},getDataById:function($){return this._dataMap[$]},removeDataById:function($){this.remove(this.getDataById($))},toDatas:function($,z){return this._datas.toList($,z)},each:function($,z){this._datas.each($,z)},getDataByTag:function($){return this._78O[$]},getTagMap:function(){return this._78O},removeDataByTag:function($){this.remove(this.getDataByTag($))},add:function($,z,C){var o=this,M=$._id,A=$._tag,N=o._roots;if(o._dataMap[M])throw"'"+M+"' already exists";A!=fd&&(o._78O[A]=$),o._dataMap[M]=$,0<=C?o._datas.add($,C):o._datas.add($),$._parent||(o._rootMap[M]=$,0<=z?N.add($,z):N.add($)),$.s("fullscreen")!==Kd&&(o._fsDataMap[M]=$),$.s("shape3d.reflector")&&(o._reflectorMap[M]=$),$._21I(o),o.onAdded($),o._36I.fire({kind:"add",data:$,rootsIndex:z,datasIndex:C})},onAdded:function($){},remove:function($,z){var C,o,M,A,N,s,g;$&&(C=this,o=$._id,M=z&&z.keepStructure,s=z&&z.keepChildren,A=$.getTag(),$._dataModel===C&&((N=$ instanceof PV)&&Qd.setIsolating(!0),this.beginTransaction(),M?C._removingData||(C._removingData=$):C.prepareRemove($),s||$.toChildren().each(function($){C.remove($,z)},C),M?C._removingData===$&&($._parent&&$._parent.removeChild($),delete C._removingData):$._parent&&$._parent.removeChild($),s=C._datas.remove($),delete C._dataMap[o],A!=fd&&delete C._78O[A],C._rootMap[o]&&(delete C._rootMap[o],g=C._roots.remove($)),C._fsDataMap[o]&&delete C._fsDataMap[o],C._reflectorMap[o]&&delete C._reflectorMap[o],$._21I(fd),C.onRemoved($),C._36I.fire({kind:Rt,data:$,rootsIndex:g,datasIndex:s}),this.endTransaction(),N&&Qd.setIsolating(!1)))},onRemoved:function($){},prepareRemove:function($){},clear:function(){var $,z=this;z._datas.size()&&($=z._historyManager?this.toJSON():Kd,z._datas.toArray().forEach(function($){$._21I(fd)}),z._datas.empty(),z._dataMap={},z._roots.empty(),z._rootMap={},z._fsDataMap={},z._reflectorMap={},z._78O={},z._36I.fire({kind:It,json:$}))},contains:function($){return $&&$._dataModel===this},handleDataPropertyChange:function($){var z,C,o,M,A=$.data,N=$.property;"parent"===N?(o=A._id,C=this._rootMap,z=this._roots,A._parent?C[o]&&(delete C[o],z.remove(A)):C[o]||(C[o]=A,z.add(A))):"tag"===N?(C=$.oldValue,z=$.newValue,M=this._78O,C!=fd&&delete M[C],z!=fd&&(M[z]=A)):"s:fullscreen"===N?(o=A._id,C=this._fsDataMap,$.oldValue!=fd&&delete C[o],$.newValue!=fd&&(C[o]=A)):"s:shape3d.reflector"===N&&(o=A._id,M=this._reflectorMap,$.oldValue&&delete M[o],$.newValue&&(M[o]=A)),this.onDataPropertyChanged(A,$),this._35I.fire($)},onDataPropertyChanged:function($,z){},addDataModelChangeListener:function($,z,C){this._36I.add($,z,C)},removeDataModelChangeListener:function($,z){this._36I.remove($,z)},addSerializeListener:function($,z,C){this._serializeNotifier.add($,z,C)},removeSerializeListener:function($,z){this._serializeNotifier.remove($,z)},fireSerializeEvent:function($){this._serializeNotifier.fire($)},addDataPropertyChangeListener:function($,z,C){this._35I.add($,z,C)},removeDataPropertyChangeListener:function($,z){this._35I.remove($,z)},_38I:function($,z,C){this._37I&&this._37I.fire({data:$,oldIndex:z,newIndex:C})},addHierarchyChangeListener:function($,z,C){this._37I||(this._37I=new RK),this._37I.add($,z,C)},removeHierarchyChangeListener:function($,z){this._37I.remove($,z)},getSiblings:function($){return($=$._parent)?$._children:this._roots},eachByHierarchical:function($,z,C){if(z)return this._eachByHierarchical($,z,C);for(var o=0,M=this._roots,A=M.size();oC.size()&&z--,C.add($,z),this._38I($,o,z))},moveUp:function($){this.moveTo($,this.getSiblings($).indexOf($)-1)},moveDown:function($){this.moveTo($,this.getSiblings($).indexOf($)+1)},moveToTop:function($){this.moveTo($,0)},moveToBottom:function($){this.moveTo($,this.getSiblings($).size())},moveSelectionUp:function($){this.beginTransaction(),$=$||this.sm();var z=new L;mx($,z,this._roots),z.each(this.moveUp,this),this.endTransaction()},moveSelectionDown:function($){this.beginTransaction(),$=$||this.sm();var z=new L;Sx($,z,this._roots),z.each(this.moveDown,this),this.endTransaction()},moveSelectionToTop:function($){this.beginTransaction(),$=$||this.sm();var z=new L;hx($,z,this._roots),z.each(this.moveToTop,this),this.endTransaction()},moveSelectionToBottom:function($){this.beginTransaction(),$=$||this.sm();var z=new L;Ix($,z,this._roots),z.each(this.moveToBottom,this),this.endTransaction()},moveToIndex:function($,z,C){var o=this.getDatas();(C=null==C?o.indexOf($):C)===z||C<0||0<=z&&z<=o.size()&&(o.remove($),z>o.size()&&z--,o.add($,z),this._76I($,C,z))},bringForward:function($){this.moveToIndex($,this.getDatas().indexOf($)+1)},bringToFront:function($){this.moveToIndex($,this.size())},sendBackward:function($){this.moveToIndex($,this.getDatas().indexOf($)-1)},sendToBack:function($){this.moveToIndex($,0)},bringSelectionForward:function($){this.beginTransaction(),$=$||this.sm();for(var z=new L,C=this.getDatas(),o=!1,M=0;MDatas: "+o.dm().getDatas().length+($?"
Size: "+$.width+" * "+$.height:"")+"
Version: "+Qd.getVersion();($=o.dm()._historyManager)&&(z+="
Undoes: "+$.getHistories().length+" index: "+$.getHistoryIndex()),($=o.getDebugTip())&&(z+="
"+$),($=o._fpsInfo.countTypeList)&&(z+="
",$.forEach(function($){z+="FPS "+$+": "+o.getDebugFps($)+"
"})),M.innerHTML=z,o._isDebugging&&requestAnimationFrame(C)},requestAnimationFrame(C),o._isDebugging=!0,o.debugCountFrame=o.debugCountFrameImpl)},$.hideDebugTip=function(){var $=this._debugDiv;$&&(delete this._debugDiv,this.getView().removeChild($),this._isDebugging=!1,this.debugCountFrame=k)},$.updateDOMAppendMatrix=function(){var $=this.getView();$&&($.updateAppendMatrix=!0)},$.getDebugFps=function($){return this.debugCountFrame($,0)},$.debugCountFrame=k,$.debugCountFrameImpl=function($,z){var C,o,M,A,N,s,g;if(this._isDebugging)return z===Kd&&(z=1),C=Date.now(),o=this._fpsInfo,M="time"+$,A="fps"+$,$?(N="count"+$,(s=o.countTypeList)?-1===s.indexOf($)&&s.push($):o.countTypeList=[$]):N="frames",1e3z.x||$.x===z.x&&$.y>z.y)&&(C=ix[C],M=-M),(N=Fx(C,{x:0,y:0,width:Y_($,z),height:0},A)).x+=o,N.y+=M,(N=new IA(Ud(z.y-$.y,z.x-$.x)).tf(N)).x+=$.x,N.y+=$.y,N},ym=function($,C,z,o,M){if($._19Q=!0,!z.getEdgeGroup())return o?z.s("edge.gap"):0;if(xv(z.getSourceAgent())||xv(z.getTargetAgent()))return 0;var A,N,s=0,g=0,Y=z.getEdgeGroup(),v=C.getFrameId();return Y._cacheGapFrameId!==v?(Y._cacheGapFrameId=v,N=(N=Y._cacheGapInfo)||(Y._cacheGapInfo={}),Y.getSiblings().each(function($){$.each(function($){var z;C.isVisible($)&&$.s(sf)==M&&(z=$.s("edge.gap"),A?s+=g/2+z/2:A=$,g=z,N[$.getId()]=s)})}),N.firstEdge=A,N.sumGap=s,N.lastGap=g):(N=Y._cacheGapInfo,A=N.firstEdge,s=N.sumGap,g=N.lastGap),v=N[z.getId()],o?s-v+g:(Y=v-s/2,A&&z._40I!==A._40I&&($._19Q=!1),Y)},_m=function($){if(1===(z=$._getValidSelection()).length){var z,C=(z=z[0])instanceof U.Edge;if((z instanceof U.Shape||C)&&(!(C=C&&z.s("edge.type"))||"points"===C))return(C=$.gv).isPointEditable&&!C.isPointEditable(z)||!C.isEditable(z)?void 0:z}},Pm=U.graph={},$=function($,z,C){V_("ht.graph."+$,z,C)},Zm=(U.layout={},{}),Xm=function($,z,C,o,M,A,N,s,g){var Y=N._zoom;if(!Y||!o||!M)return z;if(Y!==N._cacheZoom&&(N._cacheZoom=Y,N._cacheImage={}),Y*=X3,o=Math.ceil(o),M=Math.ceil(M),20482*Math.PI?2*Math.PI:o)/(N=Math.ceil(Math.abs(o)/(Math.PI/4)))),c=-C;if(0z._key&&C.reverse(),C._key=[C[0]._key,C[1]._key].join("|"),($=this._lineMap[C._key])||((this._lineMap[C._key]=$=C)._triangles={},C._planes={},this._lineList.push(C)),$},JU=new Dd(1,0,0),KU=new Dd(0,1,0),fU=new Dd(0,0,1),QU=new Dd,WU=new Dd,VU=new Nr,PE.prototype._addTriangle=function($,z,C,o,M,A,N,s){var g,Y=this._findVertex($,C,A),v=this._findVertex($,o,A),$=this._findVertex($,M,A),A=this._findLine(Y,v),O=this._findLine(v,$),t=this._findLine($,Y);z?(g=(new Dd).fromArray(z,3*C),C=(new Dd).fromArray(z,3*o),o=(new Dd).fromArray(z,3*M),N&&(g.applyMatrix3(N),C.applyMatrix3(N),o.applyMatrix3(N)),g._key=dE(g,s),C._key=dE(C,s),o._key=dE(o,s),ZE(A,0,g,v,C,$,o),ZE(O,0,C,$,o,Y,g),ZE(t,0,o,Y,g,v,C)):(WU.subVectors($,v),QU.subVectors(v,Y),(g=(new Dd).crossVectors(QU,WU))._key=dE(g,s),XE(A,$,g),XE(O,Y,g),XE(t,v,g))},PE.prototype._toLineVS=function($){for(var z=this._lineList,C=0,o=z.length;C=o)return C=1-(M[A]-o)/(z=this.curves[A]).getLength(),z.getPointAt(C);A++}return null},C.getLength=function(){var $=this.getCurveLengths();return $[$.length-1]},C.getCurveLengths=function(){if(this.cacheLengths&&this.cacheLengths.length==this.curves.length)return this.cacheLengths;for(var $=[],z=0,C=this.curves.length,o=0;oN&&(N=M.x),M.x$&&($=M.y),M.yz&&(z=M.z),M.zs.y))if($.y==N.y){if($.x==N.x)return 1}else{if(0==(Y=Y*($.x-N.x)-g*($.y-N.y)))return 1;Y<0||(o=!o)}}else if($.y==N.y&&(s.x<=$.x&&$.x<=N.x||N.x<=$.x&&$.x<=s.x))return 1}return o}(W.p,P[e].p)||(J!=e&&l.push({froms:J,tos:e,hole:Q}),V?(V=!1,_[e].push(W)):d=!0);V&&_[J].push(W)}}0z||$.y>C)},getRect:function(){var $=this.getWidth(),z=this.getHeight(),C={x:-$*(C=this.getAnchor()).x,y:-z*C.y,width:$,height:z},$=this.getMatrix();return v_([$.tf(C.x,C.y),$.tf(C.x+C.width,C.y),$.tf(C.x+C.width,C.y+C.height),$.tf(C.x,C.y+C.height)])},getAnchorElevation:function(){return this._anchorElevation},getAnchor3d:function(){var $=this.getAnchor(),z=this._anchorElevation;return{x:$.x,y:z,z:$.y}},setAnchorElevation:function($){var z=this._anchorElevation;return z!==$&&(this._anchorElevation=$,this.fp("anchorElevation",z,$),!0)},setAnchor3d:function($,z,C,o){"number"==typeof $?M={x:$,y:z,z:C}:(M=$.length?{x:$[0],y:$[1],z:$[2]}:$,o=z),this.beginTransaction();var M,C=this.getAnchor3d(),$=this.setAnchor(M.x,M.z);return($=!!this.setAnchorElevation(M.y)||$)&&o&&!Rh&&(this.getAnchor3d(),z=L_(this),o=G_([M.x-C.x,M.y-C.y,M.z-C.z],z),this.p3(o)),this.endTransaction(),$},getAnchor:function(){if(this.hasOwnProperty("_anchor"))return this._anchor;var $=j(this._image);return $&&$.anchorX!==Kd?{x:$.anchorX,y:$.anchorY}:this._anchor},setAnchor:function($,z,C){var o,M,A,N,s=this;return"number"==typeof $?N={x:$,y:z}:(N=$.length?{x:$[0],y:$[1]}:$,C=z),(($=s.getAnchor()).x!==N.x||$.y!==N.y)&&(s.beginTransaction(),s._anchor=N,s.fp("anchor",$,N),C&&!Rh&&(z=s.getPosition(),C=s.getSize(),o=s.getRotation(),M=s.getScale(),A=-C.width*($.x-N.x)*M.x,C=-C.height*($.y-N.y)*M.y,$=yd(o),N=Wd(o),s.setPosition(z.x+N*A-$*C,z.y+$*A+N*C)),s.endTransaction(),!0)},getLocalQuaternion:function($){if(!(z=this.getHost()))return this.getQuaternion($);var z=z.getQuaternion(),C=this.getQuaternion();return($=$||new hA).copy(z).inverse().multiply(C)},setLocalQuaternion:function($){var z=this.getHost();if(!z)return this.setQuaternion($);z=z.getQuaternion(),this.setQuaternion(z.clone().multiply($))},getLocalEuler:(SU=new hA,function($){if(!this.getHost())return this.getEuler($);this.getLocalQuaternion(SU),$=$||new UA;var z=this._lastLocalEuler;return $.setFromQuaternion(SU,UA.ReverseOrder(this.getRotationMode())),z?($.nearestRotation(z),$.toArray(z)):this._lastLocalEuler=$.toArray(),$}),setLocalEuler:(hU=new hA,mU=new UA,function($){var z=this.getHost(),C=($.isEuler||($=mU.fromArray($)),this._lastLocalEuler);return C?$.toArray(C):this._lastLocalEuler=$.toArray(),z?(hU.setFromEuler($),this.setLocalQuaternion(hU)):this.setEuler($)}),getLocalPosition3d:function($){($=$||new Dd).copy(this.p3());var z=this.getHost();return z?(z=z.getMatrix4(),$.applyMatrix4(z.getInverse(z))):$},setLocalPosition3d:function($){var z,C=this.getHost();C?(C=C.getMatrix4(),(z=new Dd($)).applyMatrix4(C),this.p3(z.x,z.y,z.z)):$.x!==Kd?this.p3($.x,$.y,$.z):this.p3($)},getScale:function(){return this._scale},setScale:function($,z){z=2===arguments.length?{x:$,y:z}:$,($=this.getScale()).x===z.x&&$.y===z.y||(this._scale=z,this.fp("scale",$,z))},getScaleTall:function(){return this._scaleTall},getScale3d:function(){var $=this._scaleTall,z=this.getScale();return[z.x,$,z.y]},getFinalScale3d:function(){var $=this.s3(),z=this._dynamicScale3d,C=this.getScale3d();return $&&(C[0]*=$[0],C[1]*=$[1],C[2]*=$[2]),z&&(C[0]*=z[0],C[1]*=z[1],C[2]*=z[2]),C},getFinalRotation3d:function(){return this._dynamicRotation||this.r3()},setScaleTall:function($){var z=this._scaleTall;z!==$&&(this._scaleTall=$,this.fp("scaleTall",z,$))},setScale3d:function($,z,C){z="number"==typeof $?{x:$,y:z,z:C}:$.length?{x:$[0],y:$[1],z:$[2]}:$,this.setScaleTall(z.y),this.setScale(z.x,z.z)},getCorners:function($,z){$==fd&&($=0),z==fd&&(z=$);var C=this.getAnchor(),o=this.getWidth(),M=this.getHeight(),A=-o*C.x-$,C=-M*C.y-z,o=o+2*$,$=M+2*z;return[(M=this.getMatrix()).tf(A,C),M.tf(A,C+$),M.tf(A+o,C+$),M.tf(A+o,C)]},getEditControlPoints:function($,z,C){z==fd&&(z=0),C==fd&&(C=z);var o=this.getAnchor(),M=this.getWidth(),A=this.getHeight(),N=-M*o.x-z,o=-A*o.y-C,M=M+2*z,z=A+2*C;return $?[{x:N,y:o},{x:N,y:0},{x:N,y:o+z},{x:0,y:o+z},{x:N+M,y:o+z},{x:N+M,y:0},{x:N+M,y:o},{x:0,y:o}]:[(A=this.getMatrix()).tf(N,o),A.tf(N,0),A.tf(N,o+z),A.tf(0,o+z),A.tf(N+M,o+z),A.tf(N+M,0),A.tf(N+M,o),A.tf(0,o)]},rotateAt:function($,z,C){var o=this._position,M=this._64O,A=new IA(M,o.x,o.y).tf($,z),$=Gd($*$+z*z),z=Ud(o.y-A.y,o.x-A.x)+C;this.setRotation(M+C),this.p(A.x+$*Wd(z),A.y+$*yd(z))},rotateAroundAxis:function($,z){this.setQuaternion(this.getQuaternion().multiply(vV.setFromAxisAngle($,z)))},rotateAroundWorldAxis:function($,z){this.setQuaternion(this.getQuaternion().premultiply(vV.setFromAxisAngle($,z)))},rotateX:function($){return this.rotateAroundAxis(Dd.AxisX,$)},rotateY:function($){return this.rotateAroundAxis(Dd.AxisY,$)},rotateZ:function($){return this.rotateAroundAxis(Dd.AxisZ,$)},onParentChanged:function($,z){NV.superClass.onParentChanged.apply(this,arguments),this._8I();var C=this._host;C&&C.updateLayoutAttaches()},onPropertyChanged:(IU={},"width|height|position|anchor|rotation|scale|s:layout.h|s:layout.v".split("|").forEach(function($){IU[$]=!0}),function(z){var $=this,C=(NV.superClass.onPropertyChanged.call($,z),z.property),o=(IU[C]&&!$._layoutUpdating&&$.updateLayoutParameters(null,C),$._69O&&$._69O.each(function($){$.handleHostPropertyChange(z)}),$._49I&&$._49I.each(function($){$.fp("agentChange",!0,!1)}),qK[C]&&this.updateLayoutAttaches(),$._host);o&&0<=["s:2d.visible"].indexOf(C)&&o.updateLayoutAttaches(),"a:layout"===C.substring(0,8)&&(this.updateLayoutAttaches(),o&&o.updateLayoutAttaches()),"s:shape3d.autorotate"!==C&&"s:autorotate"!==C&&"s:shape3d.fixSizeOnScreen"!==C&&"s:fixSizeOnScreen"!==C&&"s:hide.overlapping.group"!==C||($._47Q=$.s("autorotate")||$.s("shape3d.autorotate")||$.s("fixSizeOnScreen")||$.s("shape3d.fixSizeOnScreen")||$.s("hide.overlapping.group")),"a:animation.name"!==C&&"a:animation.time"!==C||((o=$.a("animation.time"))==fd?(delete $._recordBonePose,$.stopAnimation()):(C=$.a("animation.name"),$._recordBonePose={},$.playAnimation(C,0,o)))}),onHostChanged:function($,z){this.updateAttach(),this.updateLayoutParameters()},handleHostPropertyChange:function($){this.updateAttach($)},onStyleChanged:(xd["transparent.syncToMaterials"]=!0,RU={},"shape3d|all|top|bottom|left|right|front|back".split("|").forEach(function($){RU[$+".opacity"]=!0,RU[$+".transparent"]=!0}),function($,z,C){var o;NV.superClass.onStyleChanged.apply(this,arguments),rK[$]&&this.updateAttach(),!Rh&&RU[$]&&this.s("transparent.syncToMaterials")&&(0<$.indexOf("opacity")?"shape3d.opacity"===$?this.getMaterials().forEach(function($){$.opacity=C}):(o=$.replace("opacity","material"),this.setMaterial(o,"opacity",C)):0<$.indexOf("transparent")&&("shape3d.transparent"===$?this.getMaterials().forEach(function($){$.transparent=C}):(o=$.replace("transparent","material"),this.setMaterial(o,"transparent",C))))}),updateLayoutAttaches:function(){var $;if(!Rh&&this.s("vector.layoutable"))return!!(($=j(this.getImage()))&&$.layoutAttach&&($=$.layoutAttach)&&$(this))||void 0},updateAttach:function($){Rh?this.updateLayoutParameters():this._51I||(this._51I=1,this._71O($),delete this._51I)},_71O:function($){var z,C,o,M,A,N,s=this,g=s._host,Y=$?$.property:fd,v=$?$.oldValue:fd,O=$?$.newValue:fd;if(g instanceof NV&&g.s("vector.layoutable")&&(!$||qK[Y])){var t=j(g.getImage());if(t&&t.layoutAttach)return}g instanceof U.Grid?Y===If?s.setElevation(s._54O+O-v):$&&!TK[Y]||(t=s.s("attach.row.index"),M=s.s("attach.column.index"),(C=g.getCellRect(t,M))&&(o=s.s("attach.row.span"),z=s.s("attach.column.span"),1===o&&1===z||(C=O_(C,g.getCellRect(t+o-1,M+z-1))),zm(C,s,"attach.padding",1),s.setRect(C))):g instanceof dV&&0<=(t=s.s("attach.index"))&&(!$||BK[Y])?(o=s.s("attach.thickness"),M=g.getScale(),z=Math.max(M.x,M.y),0z.x&&A.yz.y)return!0;return C.length<=o?(C.push(z),s.length++):C[s.length++]=z,!1}}),z(Qd,{fetch:function($,z){$.open((z=z||{}).method||"GET",z.url||"",!(null!=z.sync&&z.sync)),"json"===z.dataType&&$.setRequestHeader("Content-Type","application/json");var C=z.headers;if(C)for(var o in C)$.setRequestHeader(o,C[o]);z.responseType&&($.responseType=z.responseType),$.send(z.data)},convertImageSrc:function($,z){(z=z&&"function"==typeof z?z:function(){})($)}},!0),U.Request=function(){}),eV=(D_("Request",Jd,{_mimeType:Kd,getXhr:function(){return this._xhr||(this._xhr=new XMLHttpRequest,this.overrideMimeType("text/plain")),this._xhr},send:function($){var z=this.getXhr();$.mimeType&&this.overrideMimeType($.mimeType),z.onload=this.onload,z.onerror=this.onerror,Qd.fetch(z,$)},onload:function(){},onerror:function(){},getResponseType:function(){return this.getXhr().responseType},setOverrideMimeType:function($){this.overrideMimeType($)},getMimeType:function(){return this._mimeType},overrideMimeType:function($){var z=this.getXhr();z.overrideMimeType&&z.overrideMimeType(this._mimeType=$)},getResponseHeader:function($){return this.getXhr().getResponseHeader($)},getResponseText:function(){var $=this.getXhr();return $.response||$.responseText},getStatus:function(){return this.getXhr().status}}),Pm.GraphView=function($){var z=this;z._24I={},z._34I=new L,z._dirtyRectsShadow=new L,z.enableDirtyRect(),z._25I={},z._56I={},z._view=AX(1,z),z._canvas=sX(z._view),z.dm($||new mK),this._coreInteractor=new jV(this),z.setEditable(!1),z.setScrollBarVisible(Qd.graphViewScrollBarVisible),z.initRenderEvents(),z._initView()},$("GraphView",Jd,{ms_v:1,ms_gv:1,ms_bnb:1,ms_tip:1,ms_dm:1,ms_lp:1,ms_fire:1,ms_sm:1,_49o:1,ms_txy:1,_52o:1,_51o:1,ms_renderEvents:["PreFrame","PostFrame","PreRender","PostRender"],ms_ac:[Xf,df,Pf,Zf,"resettable","editInteractor",_f,"zoomable","pannable","rectSelectable","autoScrollZone",Vf,"movableFunc","editableFunc","pointEditableFunc","rectEditableFunc","rotationEditableFunc","anchorEditableFunc","rectSelectBackground","rectSelectBorderColor","editPointSize","editPointBorderColor","editPointBackground","hoverDelay"],_zoomable:Qd.graphViewZoomable,_resettable:Qd.graphViewResettable,_pannable:Qd.graphViewPannable,_rectSelectable:Qd.graphViewRectSelectable,_autoScrollZone:Qd.graphViewAutoScrollZone,_rectSelectBackground:Qd.graphViewRectSelectBackground,_rectSelectBorderColor:Qd.graphViewRectSelectBorderColor,_editPointSize:Qd.graphViewEditPointSize,_editPointBorderColor:Qd.graphViewEditPointBorderColor,_editPointBackground:Qd.graphViewEditPointBackground,_scrollBarColor:V,_scrollBarSize:mh,_autoHideScrollBar:Td,_autoMakeVisible:LA,_currentActionType:null,getCoreInteractor:function(){return this._coreInteractor},getLayers:function(){return this._dataModel.getLayers()},setLayers:function($){this._dataModel.setLayers($)},setEditable:function($){var z=this,C=(C=z.__interactorMap__)||(z.__interactorMap__={scrollBar:new TV(z),select:new LV(z),text:new qV(z),move:new wV(z),default:new UV(z),touch:new rV(z,{editable:!1})});$?(z._uieditable=!0,C.edit||($=z._editInteractorClass||Pm.XEditInteractor||$S,C.edit=new $(z)),z.setInteractors([C.scrollBar,C.select,C.text,C.edit,C.move,C.default,C.touch])):(z._uieditable=!1,z.setInteractors([C.scrollBar,C.select,C.move,C.default,C.touch]))},registerEditInteractor:function($){this._editInteractorClass=$;var z,C=this.__interactorMap__;C&&(z=C.edit,C.edit=new $(this),0<=(z=($=this.getInteractors().getArray()).indexOf(z))&&($[z]=C.edit))},getCanvas:function(){return this._canvas},_33I:function($){var z=$.getUIClass();return z?new z(this,$):fd},getDataUI:function($){var z=this._25I[$._id];return z===Kd&&(z=this._33I($),this._25I[$._id]=z),z},_5I:function($){var z=this._25I[$._id];return z||$.dm()!==this.dm()?z:this.getDataUI($)},getNodeRect:function($){return Qd.getNodeRect(this,$)},getFullscreenDatas:function(){return this._dataModel.getFullscreenDatas()},getEdgeInfo:function($){return($=this.getDataUI($))?($._79o(),$._78o):null},getEdgeSourcePosition:function($){var z=($=this.getDataUI($)).s,$=$._data._40I;return Nm(this,$,z("edge.source.position"),z("edge.source.offset.x"),z("edge.source.offset.y"),z("edge.source.anchor.x"),z("edge.source.anchor.y"))},getEdgeTargetPosition:function($){var z=($=this.getDataUI($)).s,$=$._data._41I;return Nm(this,$,z("edge.target.position"),z("edge.target.offset.x"),z("edge.target.offset.y"),z("edge.target.anchor.x"),z("edge.target.anchor.y"))},dispose:function(){},invalidateAll:function($){var z=this;if($){for(var C in z._25I)(C=z._25I[C])&&C.dispose();z._25I={},z._56I={},z._24I={},z._34I.empty(),z.redraw()}else z.dm().each(function($){z.invalidateData($)})},invalidateSelection:function(){var z=this;z.sm().each(function($){z.invalidateData($)})},invalidateData:function($){this._24I[$._id]=$,this._21Q($),this.iv()},_21Q:function($){var z,C=this._24I;xv($)&&wh[$.s(sf)]&&((z=$.getSourceAgent())&&z.getAgentEdges().each(function($){C[$._id]=$}),(z=$.getTargetAgent())&&z.getAgentEdges().each(function($){C[$._id]=$}),this.iv())},redraw:function($){this._32I||($?this._34I.add($):(this._32I=1,this._34I.empty()),this.iv())},_eachImpl:function(z,C,$){var o,M,A,N,s,g,Y=this.getLayers(),v=Y?Y.length:0,O=this._dataModel,t=O._datas,c=O.isHierarchicalRendering(),y=$?c?O.reverseEachByHierarchical.bind(O):function($,z,C){return t.reverseEachUntil($,C,!1)<0}:c?O.eachByHierarchical.bind(O):function($,z,C){return t.eachUntil($,C,!1)<0},c=0A+s&&C.tx(-($.x+$.width-s)*v),$.y+$.heightN+g&&C.ty(-($.y+$.height-g)*v))),delete C._23I),C._83I&&(delete C._83I,delete C._84I),C._98O(),C.debugCountFrame(),Hv(C._24I)||i3(C.iv,C),C.emitPostFrame()},isValidGuideLineSource:function($){return!0},tryUpdateRootData:function(){if(!this._rootDataUpdating){this._rootDataUpdating=!0;var $,z,C=this.getFullscreenDatas();for(z in C)$=C[z],this.scaleRootData($);this.onRootDataUpdated&&this.onRootDataUpdated(),this._rootDataUpdating=!1}},scaleRootData:function($){if("uniform"===(O=$.s("fullscreen"))||"fill"===O){$.getRotation()&&$.setRotation(0);var z=$.s("fullscreen.gap")||0,C=this.getWidth(),o=this.getHeight();if(C&&o){var C=C-2*z,o=o-2*z,M=$.getAnchor(),A=(N=$.getScaledSize()).width,N=N.height;if(Y=$.s("fullscreen.lock"))return"uniform"===O?A/N=k3?(delete $._85I,$.iv()):$t(function(){$._86I()},k3))},getVScrollBar:function(){return this._27I},getHScrollBar:function(){return this._28I},_98O:function(){var $=this._27I,z=this._28I;if(this._79O){if(this._autoHideScrollBar&&!this._85I)return $.style.visibility=Yf,void(z.style.visibility=Yf);var C=this.getScrollBarColor(),o=this._zoom,M=this.getScrollBarSize(),A=this.getViewRect(),N=this.getScrollRect(),s=A.height*o,g=N.height*o,Y=A.width*o-M-2,v=s*((A.y-N.y)*o/g),O=s/g*s,t=$.style,g=(sv.x||Y.x===v.x&&Y.y>v.y)&&($=ix[$],C=-C),(O=Fx($,A.rect,o)).x+=z,O.y+=C,(O=A.mat.tf(O)).x+=A.origin.x,O.y+=A.origin.y,O);if(g&&g[cf])return g.getPosition?g.getPosition(this,$,z,C,o,M):{x:(Y.x+v.x)/2,y:(Y.y+v.y)/2};if(s){var O,t,c=s.size();if(iK[$]){if(c){if(0==(t=c%2))return cm(s.get(c/2-1),s.get(c/2),$,z,C,o,M);O=s.get((c-t)/2)}else O={x:(Y.x+v.x)/2,y:(Y.y+v.y)/2};return(O=Fx($,{x:O.x,y:O.y,width:0,height:0},o)).x+=z,O.y+=C,O}return HK[$]?cm(Y,c?s.get(0):v,$,z,C,o,M):cm(c?s.get(c-1):Y,v,$,z,C,o,M)}if(g)return c=(N=g.points).size(),iK[$]?0==(t=c%2)?cm(N.get(c/2-1),N.get(c/2),$,z,C,o,M):(O=N.get((c-t)/2),(O=Fx($,{x:O.x,y:O.y,width:0,height:0},o)).x+=z,O.y+=C,O):HK[$]?cm(N.get(0),N.get(1),$,z,C,o,M):cm(N.get(c-2),N.get(c-1),$,z,C,o,M)}return Yv},_42:function($){this._78o&&kV.superClass._42.call(this,$)},drawPath:function(z,$){z.beginPath();var C,o,M,A,N=$.type,s=$.points,g=$.segments,Y=$.edgeTypeInfo;!N||s?(C=(o=$.sourcePoint).x,o=o.y,M=(A=$.targetPoint).x,A=A.y,N?g?((N=new L({x:C,y:o})).addAll(s),N.add({x:M,y:A}),yx(z,N,g)):(z.moveTo(C,o),s.each(function($){z.lineTo($.x,$.y)}),z.lineTo(M,A)):$.looped?z.arc(C,o,$.radius,0,_d,!0):$.center?(z.moveTo($.c1.x,$.c1.y),z.lineTo(C,o),z.lineTo(M,A),z.lineTo($.c2.x,$.c2.y)):(z.moveTo(C,o),z.lineTo(M,A))):Y&&(Y.points?yx(z,Y.points,Y.segments):Y[cf]&&Y[cf](z,Y))},drawBody:function($){var z=this.s,C=this._78o,o=C.width,M=C.selectWidth,A=C.borderWidth,N=C.repeatImage,s=$.lineJoin,g=$.lineCap,Y=C.gray,v=C.pattern,O=($.lineJoin=C.join,$.lineCap=C.cap,this.drawPath(B_($,v),C),z("edge.width.absolute")),M=(O&&eX($),M&&($.strokeStyle=C._97o,$.lineWidth=o+2*(A+M),$.stroke()),A&&($.strokeStyle=C.borderColor,$.lineWidth=o+2*A,$.stroke()),Y?Qd.toGrayColor(C.color):C.color);N?Kx($,N,M,null,this._data,this.gv):$.strokeStyle=M,$.lineWidth=o,$.stroke(),C.is3d&&Px($,M,C._67o,o,this.gv._zoom,C._66o),z("edge.dash")&&(v=z("edge.dash.pattern"),(A=B_($,v,this._2Q("edge.dash.offset")))!==$&&this.drawPath(A,C),this._1Q($,"edge",z("edge.dash.width")||o,v)),O&&$.restore(),$K($,v),$.lineJoin=s,$.lineCap=g},_48O:function(){},_47O:function($){}}),function($,z){Ev(pV,this,[$,z])}),bV=(V_(pV,aV,{_3O:function(){var z,C,$,o,M,A,N,s,g,Y,v,O,t,c,y,_,P=this,Z=P.s,X=P._data,d=P.gv;P.prepareBlendInfo(),P._88I=fd,X.isExpanded()&&X.eachChild(function($){R($)&&($=d.getBoundsForGroup($))&&((C=C||[]).push($),z=O_(z,$))}),z?(A=d.getLabel(X),M=Z("group.type"),o=($=Z("group.border.width")||0)/2,Z("group.border.width.absolute")&&($/=d._zoom),g=C,Y=z,z="oval"===(s=M)?(v=0,t=Y.height/Y.width,O=t*t,y=Y.x+Y.width/2,_=Y.y+Y.height/2,yE(g).forEach(function($){var z=$.x-y,$=$.y-_;v<(z=z*z+$*$/O)&&(v=z)}),t*=v=Gd(v),{x:y-v,y:_-t,width:2*v,height:2*t}):"circle"===s?(c=0,y=Y.x+Y.width/2,_=Y.y+Y.height/2,yE(g).forEach(function($){var z=$.x-y,$=$.y-_;c<(z=z*z+$*$)&&(c=z)}),c=Gd(c),{x:y-c,y:_-c,width:2*c,height:2*c}):("roundRect"===s&&Z_(Y,od(Y.width,Y.height)/16),Y),zm(z,X,"group.padding",1),Z_(z,$),X=P._88I={type:M,rect:z,_64o:z,anchor:X.getAnchor()},M||A==fd||(M=P.labelInfo={label:A,color:P.getStyleColor("group.title.color",0),font:Z("group.title.font"),align:Z("group.title.align")},t=(A=tX(M,A)).width+$,A=A.height+$,g=Z("group.title.align"),(s=Z("group.title.orientation"))===Zt||s===Xt?(z.height+=$,t>z.width&&(z.width=t)):s!==_t&&s!==Pt||(z.width+=$,t>z.height&&(z.height=t)),g=g===_t?z.x:g===Pt?z.x+z.width-t:z.x+z.width/2-t/2,s===Xt?(X.titleRect={x:z.x,y:z.y+z.height,width:z.width,height:A},X.rect={x:z.x,y:z.y,width:z.width,height:z.height+A},M.rect={x:g,y:z.y+z.height,width:t,height:A}):s===_t?(N=X.titleRect={x:z.x-A,y:z.y,width:A,height:z.height},X.rect={x:z.x-A,y:z.y,width:z.width+A,height:z.height},M.rect={x:N.x+A/2-z.height/2,y:N.y+z.height/2-A/2,width:z.height,height:A},M.rotation=-Math.PI/2):s===Pt?(N=X.titleRect={x:z.x+z.width,y:z.y,width:A,height:z.height},X.rect={x:z.x,y:z.y,width:z.width+A,height:z.height},M.rect={x:N.x+A/2-z.height/2,y:N.y+z.height/2-A/2,width:z.height,height:A},M.rotation=Math.PI/2):(X.titleRect={x:z.x,y:z.y-A,width:z.width,height:A},X.rect={x:z.x,y:z.y-A,width:z.width,height:z.height+A},M.rect={x:g,y:z.y-A-o,width:t,height:A+$})),P._40O(X,Z("group.border.width")/2)):pV.superClass._3O.call(P)},getPosition:function($,z,C,o){var M=this._88I;return M?(($=Fx($,M.rect,o)).x+=z,$.y+=C,$):pV.superClass.getPosition.apply(this,arguments)},_24O:function($,z){var C=this._88I;C&&!C.type&&"label2"!==$||pV.superClass._24O.call(this,$,z)},drawBody:function($){var z=this,C=z._88I;if(C){var o=z._data,M=z.s,A=z.gv,N=C.type,s=C.rect,g=C._64o,Y=C.titleRect,v=z.getBodyColor(),O=j(M("group.image"),v),t=M("group.image.stretch"),c=z.getBodyColor("group.background"),y=j(M("group.repeat.image"),v),_=M("group.gradient.pack"),P=M("group.gradient"),Z=M("group.border.width"),X=z.getStyleColor("group.border.color",0),d=M("group.border.pattern"),l=M("group.title.orientation"),J=M("group.depth"),K=M("group.border.radius"),f=M("group.border.join"),Q=M("group.border.cap"),W=(M("group.border.width.absolute")&&(Z/=A._zoom),X);if((e=(e=M("group.border.repeat.image"))&&j(e,X))&&(a=U3(s),Z_(a,Z/2),W=fx($,e,X,null,o,A,M("group.border.repeat.image.stretch"),a,M("group.border.repeat.image.rotation"),C.anchor)),N){var V,e=$.lineJoin,X=$.lineCap;$.lineJoin=f,$.lineCap=Q,O?($.save(),dx($,N,s,K),$.clip(),E3($,O,t,s.x,s.y,s.width,s.height,o,A,v),$.restore(),0g&&(g=C("shape.dash.width")),(o=C("shape.border.width.absolute")?(g+N+s)/$.gv._zoom/M:g*("square"===A._61o?.71:.5)+N+s/$.gv._zoom/M)&&(o*=M,Y=U3(Y),vx(Y,o,A._62o)),$._68o(Y),O=C("clip.percentage"),v=C("clip.direction"),O!=Kd&&("from"===v||"to"===v?(A.clipDirection=v,A.clipPercentage=O):A.clipRect=rv(z.getAnchorRect(),v,O)),(g=C("shape.fill.clip.percentage"))!=Kd&&(A.shapeClipRect=rv(z.getAnchorRect(),C("shape.fill.clip.direction"),g)),(N=C("shape.foreground.clip.percentage"))!=Kd&&(A.shapeForegroundClipRect=rv(z.getAnchorRect(),C("shape.foreground.clip.direction"),N)),C("clip.host")&&z.getHost()&&(A.clipHost=!0))},getPosition:function($,z,C,o){var M=this._99o;return M?(($=Fx($,M.rect,o)).x+=z,$.y+=C,$):Yv},_42:function($){this._99o&&uV.superClass._42.call(this,$)},drawBody:function($){var z,C,o,M,A,N,s,g=this,Y=g.s,v=g._99o,O=v.position,t=v.scale,c=v.rotation,y=v.borderWidth,_=g.gv._zoom,P=v.selectWidth/_,Z=v._27Q,X=v.shapeGradientPack,d=v._54o,l=v.clipRect,J=v.shapeClipRect,K=v.segments,f=g._data.isClosePath(),Q=v.clipHost,W=v.fillRule,V=v.gray,e=v._53o,D=e||Z||X,c=(Q&&($.save(),$.beginPath(),(z=g.clipHost($,g._data))&&$.clip()),$.save(),QX($,O.x,O.y),WX($,c),VX($,t.x,t.y),l&&($.beginPath(),$.rect(l.x,l.y,l.width,l.height),$.clip()),D&&J&&($.save(),$.beginPath(),$.rect(J.x,J.y,J.width,J.height),$.clip()),Qd.extractShapeTranslation&&(Q=v.translatedInfo)?(C=Q.gradientRect,M=Q.points):(C=v.gradientRect,M=v.points,QX($,-O.x,-O.y)),Y("shape.border.width.absolute")),t=v._60o,l=(c&&t&&(t=t.map(function($){return $*_})),B_($,t)),Q=$.lineJoin,a=$.lineCap,V=($.lineJoin=v._62o,$.lineCap=v._61o,k=v.bodyColor,V?Qd.toGrayColor(k):k),k=(v.clipDirection&&(M=(k=g.truncate(M,K,v.clipPercentage,"from"===v.clipDirection)).points,K=k.segments),D?(yx($,M,K,f),X?tx($,X,g.getGradientStopColor.bind(g),!1,C,fd,{style:"shape.gradient.pack"}):Z?(o=v_(M),Jx($,Z,V,null,g._data,g.gv,v.shapeRepeatImageStretch,o,v.shapeRepeatImageRotation,v.anchor)):lx($,s=V||e,v.shapeGradient,v._59o,C),$.fill(W),X&&$.restore(),J&&($.restore(),QX($,-O.x,-O.y)),l!==$&&yx(l,M,K,f)):yx(l,M,K,f),v.shapeForeground);if(k&&($.save(),D=v.shapeForegroundClipRect,(Z=Y("shape.foreground.gradient"))&&(A=g.getStyleColor("shape.foreground.gradient.color",1)),D&&(QX($,O.x,O.y),$.beginPath(),$.rect(D.x,D.y,D.width,D.height),$.clip(),QX($,-O.x,-O.y)),yx($,M,K,f),lx($,k,Z,A,C),$.fill(W),$.restore()),g.isShadowed()||(J=Y(X="shadow2"),D=Y(X+".inset"),J&&D&&(O=_*Qd.devicePixelRatio,$.save(),$.shadowOffsetX=Y(X+".offset.x")*O,$.shadowOffsetY=Y(X+".offset.y")*O,$.shadowBlur=Y(X+".blur")*O,$.shadowColor=Y(X+".color"),k=C.x-50,Z=C.y-50,A=C.width+100,W=C.height+100,yx($,M,K,f),$.clip(),yx($,M,K,f),$.rect(k,Z,A,W),$.fillStyle=$.shadowColor,$.fill(),$.restore(),yx($,M,K,f))),c&&(N=g._ctxMat||(g._ctxMat=new U.Math.Matrix2d),eX($,N)),P&&($.strokeStyle=v._97o,$.lineWidth=d+2*(y+P),$.stroke()),y&&($.strokeStyle=v.borderColor,$.lineWidth=d+2*y,$.stroke()),d&&(s=v._55o,(J=v.shapeBorderGradientPack)?((D=U3(C)).widthz.x||$.y>z.y},clear:function($){var z,C,o,M,A=this,N=A.gv,s=A.mark;A._57I=fd,A.paddingClickData=fd,A.pendingClickThrough=fd,A._lastLogicalPoint&&(s&&(0===s.width||0===s.height||(s=N.getDatasInRect(s,A.intersects())).isEmpty()||(z=N.sm(),C=z.toSelection(),o=A_($),M=$.altKey,s.each(function($){z.co($)?o&&!M||C.remove($):(!M||o&&M)&&C.add($)}),z.ss(C)),J_(A.div),delete A.div,delete A.mark,A.redraw(),A.fi({kind:"endRectSelect",event:$}),N.onRectSelectEnded()),A.clearDragging(),delete N._77O)},redraw:function(){var $=this;$._draw||($._draw=1,$t(function(){$.mark&&$._42(),delete $._draw},16))}}),Pm.MoveInteractor=function($){Ev(wV,this,[$])}),qV=($("MoveInteractor",mV,{handle_mousedown:function($){var z,C=this.gv;!$_($)||C._editing||C._scrolling||BX()||(!(z=C.getSelectedDataAt($))||C._39Q(z)&&!C.isMovable(z)?C._focusData=fd:(this._data=z,C.handleMouseDown&&C.handleMouseDown($,z),this.startDragging($),C.isMovable(z)&&(C._moving=1)))},handleWindowMouseUp:function($){var z=this.gv;z.handleMouseUp&&z.handleMouseUp($,this._data),this.clear($)},handleWindowMouseMove:function($){var z,C,o,M,A=this,N=A._data,s=A.gv;s._93O&&s._93O($,N)||s._moving&&(A._logicalPoint||A.fi({kind:"prepareMove",event:$}),z={kind:M=A._logicalPoint?"betweenMove":"beginMove",event:$},C=A._logicalPoint=s.lp($),"beginMove"!=M||A._alreadyBeginTransaction||(A._alreadyBeginTransaction=!0,s.getDataModel().beginTransaction()),o=(M=A._calcShift(M,$)).x,M=M.y,(N=A.gv.getMoveMode($,N))&&("x"===N?M=0:"y"===N?o=0:"xy"!==N&&(o=M=0)),s.moveSelection(o,M),A._lastLogicalPoint=C,A.autoScroll($),z.info={dx:o,dy:M},A.fi(z))},_calcShift:function($,z){var C=this._logicalPoint,o=this._lastLogicalPoint;return{x:C.x-o.x,y:C.y-o.y}},clear:function($){var z=this.gv;this._lastLogicalPoint&&(this._lastLogicalPoint=this._data=z._moving=fd,this._logicalPoint&&(this.fi({kind:"endMove",event:$}),z.onMoveEnded()),this.clearDragging()),this._alreadyBeginTransaction&&(this._alreadyBeginTransaction=!1,z.getDataModel().endTransaction())}}),Pm.TextEditInteractor=function($){Ev(qV,this,[$]),this.init()}),TV=($("TextEditInteractor",mV,{setUp:function(){qV.superClass.setUp.call(this),this.gv.mp(this.handleGvPropertyChange,this)},teatDown:function(){qV.superClass.teatDown.call(this),this.gv.ump(this.handleGvPropertyChange,this)},handleGvPropertyChange:function($){this._editTarget&&this.endTextEdit()},init:function(){function $($){$.stopPropagation()}var C=this,z=this.input=c.createElement("input"),o=z.style,M=(z.text="text",o.border="1px solid #d8d8d8",o.position="absolute",o.padding="2px 3px",o.outline="none",o.marginLeft="-90px",o.marginTop="-16px",o.backgroundColor="rgba(255,255,255, 1)",o.fontSize="14px",o.width="180px",o.height="32px",o.boxShadow="0 0 13px rgba(16,142,233, 0.5)",o.textAlign="center",o.boxSizing="border-box",Rd(z,"keyup",function($){$x($)&&C.endTextEdit(),zx($)&&C.endTextEdit(!0)}),Rd(z,"focus",function($){z.select()}),this.textarea=c.createElement("textarea")),A=this.wrap=c.createElement("div");A.appendChild(M),(o=M.style).margin=0,o.padding="4px",o.overflow="hidden",o.boxSizing="border-box",o.position="absolute",o.outline="none",o.backgroundColor="transparent",o.resize="none",o.textAlign="center",o.fontSize="14px",o.borderWidth=0,o.width="100%",(o=A.style).boxSizing="border-box",o.margin=0,o.padding=0,o.position="absolute",o.boxShadow="0 0 13px rgba(16,142,233, 0.5)",o.border="1px solid #d8d8d8",o.backgroundColor="rgba(255,255,255, 1)",o.zIndex="10",Rd(M,"keydown",function($){(A_()||N_())&&$x($)?C.endTextEdit():zx($)?C.endTextEdit(!0):C._editTarget instanceof XV||C.calculateTextareaHeight(String.fromCharCode($.keyCode))}),Rd(M,"focus",function($){M.select()}),Rd(z,"mousedown",$),Rd(z,"touchstart",$),Rd(M,"mousedown",$),Rd(M,"touchstart",$),Rd(M,"click",$),C.SIZING_STYLE=["letter-spacing","line-height","padding-top","padding-bottom","font-family","font-weight","font-size","text-rendering","text-transform","width","text-indent","padding-left","padding-right","border-width","box-sizing"],C.HIDDEN_TEXTAREA_STYLE="visibility:hidden; min-height:0 !important;max-height:none !important;height:0 !important;visibility:hidden !important;overflow:hidden !important;position:absolute !important;z-index:-1000 !important;top:0 !important;right:0 !important",C.handleWindowClick=function($){var z=C._editingDOM;z&&(z=z.getBoundingClientRect(),$=s_($),t_(z,$)||C.endTextEdit())}},handle_mousedown:function($){var z,C=this.gv;M_($)&&!C._editing&&($=C.getDataAt($))&&(z=C.getTextEditInfo($))&&(this._editInfo=z,this._editTarget=$,C._editing=!0,z.isMultiline?this.handleMultilineEdit():this.handleTextEdit())},handleMultilineEdit:function(){var $=this,z=$.gv,C=$._editTarget,o=$.getTargetValue(),M=$.textarea,A=$.wrap,N=this._editInfo;this.hiddenTextarea||this.createHiddenTextarea(),M.value=o=null!==o&&o!==Kd?o:"",N.font&&(M.style.font=N.font),$._editingDOM=M,z.appendHTML(A),this.layoutHTML(A,C),C instanceof XV?M.style.height="100%":(M.style.height="auto",this.calculateTextareaHeight()),$t(function(){M.focus(),Rd(u,"mousedown",$.handleWindowClick),Rd(u,"touchstart",$.handleWindowClick)},10)},handleTextEdit:function(){var $=this,z=$.gv,C=$._editTarget,o=$.getTargetValue(),M=$.input;M.value=o=null!==o&&o!==Kd?o:"",$._editingDOM=M,z.getView().appendChild(M),this.layoutHTML(M,C),$t(function(){M.focus(),Rd(u,"mousedown",$.handleWindowClick),Rd(u,"touchstart",$.handleWindowClick)},10)},layoutHTML:function($,z){var C,o,M,A=this.gv,N=A.getZoom();z instanceof XV?(M=(o=A.getDataUI(z))._6I,C=$.style,$.style.left=M.x*N+A.tx()+"px",$.style.top=M.y*N+A.ty()+"px",$.style.width=o._6I.width+"px",$.style.height=o._6I.height+"px",lX(C,"transform","scale("+N+","+N+")"),lX(C,"transformOrigin","0px 0px")):z instanceof NV?(C=(M=z.getRect()).width*N,$.style.left=(M.x+M.width/2)*N+A.tx()+"px",$.style.top=(M.y+M.height/2)*N+A.ty()+"px",$.style.width=C+"px",$.style.marginLeft=-C/2+"px"):z instanceof U.Edge&&(M=(o=A.getDataUI(z))._6I,$.style.left=(M.x+M.width/2)*N+A.tx()+"px",$.style.top=(M.y+M.height/2)*N+A.ty()+"px")},endTextEdit:function($){var z=this,C=z._editInfo.isMultiline?z.wrap:z.input,o=z._editInfo.isMultiline?z.textarea:z.input;$||z.setTargetValue(o.value),z.gv.getView().removeChild(C),z.gv._editing=!1,delete z._editingDOM,delete z._editTarget,Id(u,"mousedown",z.handleWindowClick),Id(u,"touchstart",z.handleWindowClick)},setTargetValue:function($){var z=this._editTarget,C=this._editInfo,o=C.accessType;(C=C.name)&&o||(o="p",C="name"),"p"===o?z[U.Default.setter(C)]($):"a"===o?z.a(C,$):z.s(C,$)},getTargetValue:function(){var $=this._editTarget,z=this._editInfo,C=z.accessType;return(z=z.name)&&C||(C="p",z="name"),"p"===C?$[U.Default.getter(z)]():"a"===C?$.a(z):$.s(z)},createHiddenTextarea:function(){this.hiddenTextarea=c.createElement("textarea"),this.hiddenTextarea.setAttribute("style","margin:0; padding:0; position:absolute; overflowY:scroll; resize:none; box-sizing:border-box;pointer-events: none;opacity:0;"),this.hiddenTextarea.setAttribute("rows","1"),this.gv.getView().appendChild(this.hiddenTextarea)},calculateHTMLStyle:function($,z){if(z&&this.computedStyleCache)return this.computedStyleCache;var C=u.getComputedStyle($),$=C.getPropertyValue("box-sizing")||C.getPropertyValue("-moz-box-sizing")||C.getPropertyValue("-webkit-box-sizing"),o=parseFloat(C.getPropertyValue("padding-bottom"))+parseFloat(C.getPropertyValue("padding-top")),M=parseFloat(C.getPropertyValue("border-bottom-width"))+parseFloat(C.getPropertyValue("border-top-width")),o={sizingStyle:this.SIZING_STYLE.map(function($){return $+":"+C.getPropertyValue($)}).join(";"),paddingSize:o,borderSize:M,boxSizing:$};return z&&(this.computedStyleCache=o),o},calculateTextareaHeight:function($){$=$||"";var z=this.textarea,C=this.hiddenTextarea,o=this.wrap,M=(s=this.calculateHTMLStyle(z,!1)).paddingSize,A=s.borderSize,N=s.boxSizing,s=s.sizingStyle,s=(C.setAttribute("style",s+";"+this.HIDDEN_TEXTAREA_STYLE),C.value=z.value+$,C.scrollHeight);"border-box"===N?s+=A:"content-box"===N&&(s-=M),z.style.height=s+"px",o.style.height=Math.max(s,32)+"px",o.style.marginTop=-.5*s+"px"}}),Pm.ScrollBarInteractor=function($){Ev(TV,this,[$])}),rV=($("ScrollBarInteractor",mV,{_41o:function(){return this.gv.getViewRect().height'))+")"+s+"cursor:-webkit-image-set(url("+C+")"+A+"x,url("+C+")1x)"+s),(N=c.createElement("style")).textContent="body."+$+" *, ."+$+"{"+o+"}",c.head.appendChild(N)},((ZV=h.Guide.Grid=function($){this._interactor=$,this._alignmentGuideId=0,this._xAlignmentGuide=[],this._yAlignmentGuide=[]}).prototype={}).constructor=ZV,Jd.defineProperties(ZV.prototype,{gridBlockSize:{get:function(){return this._gridBlockSize||this._interactor.getStyle("gridBlockSize")},set:function($){this._gridBlockSize=$,this._interactor._42()}},gridThickLinesEvery:{get:function(){return this._gridThickLinesEvery||this._interactor.getStyle("gridThickLinesEvery")},set:function($){this._gridThickLinesEvery=$,this._interactor._42()}},gridEnabled:{get:function(){return this._interactor.gridEnabled&&this.isValidGrid()}}}),ZV.prototype._42=function(){var $=this._interactor;this.gridEnabled&&this.drawGrid(),$.alignmentGuideEnabled&&this.drawAlignmentGuide()},ZV.prototype.makeMatrix=function(){var $=this._interactor.getStyle("gridAngle"),z=this._interactor.getStyle("gridRotation"),C=new h.Math.Matrix2d,o=Math.sin($),$=Math.cos($);return C.set(1,0,$,o,0,0),C.rotate(z),C},ZV.prototype.isValidGrid=function(){var $=Math.PI,z=this._interactor;return!(z.gv._zoom$&&(A=z.y-$,N="b"):z.xo&&(A=z.x-o,N="b"),{distance:A,orn:N}}function A($){var z=t[$.p];if(!z||1===z.length)return $;var C=$,o=c($,O);if(!o)return $;var M=o.distance,A=o.orn;if(M===fd)return $;for(var N=z.length,s=0;s=C.x&&_.y>=C.y&&_.x<=o.x&&_.y<=o.y&&t.push(_))}return t},wd.prototype.solveTForPoint=function($){for(var z=this._p1.x-$.x,C=this._p2.x-$.x,o=this._p3.x-$.x,M=this._p4.x-$.x,A=this.getRoots(M-3*o+3*C-z,3*o-6*C+3*z,3*C-3*z,z),N=Kd,s=1/0,g=0,Y=A.length;gMath.PI&&(X-=2*Math.PI);var O=(X/Math.PI*180).toFixed(2)+"°"}else if("resize"===g){var t,c=o.rect,y=c.x,_=c.y,P=c.width,Z=c.height,X=o.anchor,d=o.matrix,l=N.s&&N.s("keepAspectRatio")||v.getStyle("keepAspectRatio"),J=(A_($)&&(l=!l),C._unionPointMode1),K=C._unionPointMode2,f=!0,f=((Q=C._interactor.getStyle("resizeHelperFilter"))&&(f=Q(N instanceof h.Group?N._entities:[N])),C._inSmartGuide&&!U.Default.isCtrlDown($)&&f&&!l&&("L"===s||"R"===s?t="x":"T"!==s&&"B"!==s||(t="y"),C.isRightOrInvertedAngle(N)&&t&&(t="x"===t?"y":"x"),C._adsorbedToClosest(Y,t),A=!0),Q=d.tfi(Y),"LT"===s?c=J(Q,{x:y+P,y:_+Z},P,Z,l):"T"===s?c=K({x:y,y:Q.y},{x:y+P,y:_+Z},P,Z,l,"v"):"RT"===s?c=J(Q,{x:y,y:_+Z},P,Z,l):"L"===s?c=K({x:Q.x,y:_},{x:y+P,y:_+Z},P,Z,l,"h"):"R"===s?c=K({x:y,y:_},{x:Q.x,y:_+Z},P,Z,l,"h"):"LB"===s?c=J(Q,{x:y+P,y:_},P,Z,l):"B"===s?c=K({x:y,y:_},{x:y+P,y:Q.y},P,Z,l,"v"):"RB"===s&&(c=J(Q,{x:y,y:_},P,Z,l)),0),K=[0,5,2,3],J=(N.getScaleX&&N.getScaleX()*N.getScaleY()<0&&(K=[2,5,0,3]),Math.round(C._roundAngleTo360(N)/90)),Q=(0<=s.indexOf("T")&&(f|=1<Math.abs(x)&&(x=n,k=u)}Y={x:Z.x+k.x*x,y:Z.y+k.y*x},v.rectGuide.clear()}else C._inSmartGuide&&!U.Default.isCtrlDown($)&&(C._adsorbedToClosest(Y),A=!0);l=h.getDataMatrix(N).applyInverse(Y),N.setPoint("P1"===s?0:1,l,!0),J=(K=N.getPoints()).get(0),d=K.get(1),y=J.x-d.x,_=J.y-d.y,O=" "+Math.round(Math.sqrt(y*y+_*_))+" ",A&&(M=N.getRect(),v.rectGuide.gatherLines({node:N,x:M.x,y:M.y,w:M.width,h:M.height}))}O&&((X=U.Default.getLogicalPoint($,v._canvas)).x+=h.Icons.TipShiftX,X.y+=h.Icons.TipShiftY,C.tipInfo={helperPos:X,text:O,size:O.length}),C._fireEditEvent("between",$)}},$.prototype._unionPointMode1=function($,z,C,o,M){var A;return M&&C&&o&&(M=$.x-z.x,A=$.y-z.y,Math.abs(M*o)1+o||C.y<-o||C.y>1+o)return!0;if(C=z.getSize(),o=z.getScale(),Math.min(Math.abs(C.width*o.x),Math.abs(C.height*o.y))*$.gv._zoom<$.getStyle("anchorHideThreshold"))return!1}return!0},C.prototype.check=function($,z,C){if(U.Default.isLeftButton(z)&&(z=this._interactor,this.isVisible()&&!1!==z.getStyle("anchorMovable"))){this.editing=null,this.tipInfo=null;var o=this.target;if(o&&$.isAnchorEditable(o)&&$.isEditable(o)&&this.screenInfo&&($=this.screenInfo.POS)&&h.checkHit(C,new h.Math.Vector2($),z.getStyle("checkSize")))return o instanceof h.Group?this.editing={}:(C=o.getWidth(),$=o.getHeight(),z=o.getAnchor(),this.editing={rect:{x:-C*z.x,y:-$*z.y,width:C,height:$},anchor:z,matrix:o.getMatrix()}),!0}},C.prototype.startEdit=function($,z){$.startDragging(z),$.fi({kind:"beginEditAnchor",event:z})},C.prototype._46O=function($){this.editing&&(this.editing=null,this._interactor.fi({kind:"endEditAnchor",event:$})),this.tipInfo=null},C.prototype.handleEdit=function($,z){var C=this.target;if(C&&(M=this.editing)){var $=$.lp(z),o=this._interactor;if(C instanceof h.Group)return C.setAnchor2($),void o._42();var $=M.matrix.tfi($),M=M.rect,A=($.x-M.x)/M.width,$=($.y-M.y)/M.height;U.Default.isCtrlDown(z)||(M=o.getStyle("anchorRound"),N=o.getStyle("anchorSensitivity"),A=h.roundTo(A,M,N),$=h.roundTo($,M,N)),C.setAnchor(A,$,!0);(M=U.Default.getLogicalPoint(z,o._canvas)).x+=h.Icons.TipShiftX,M.y+=h.Icons.TipShiftY;var N=A.toFixed(2)+", "+$.toFixed(2);this.tipInfo={helperPos:M,text:N,size:N.length},o.fi({kind:"betweenEditAnchor",event:z})}},C.prototype._42=function($,z,C){this.info={},this.screenInfo={};var o=this._interactor;o.editDetail||this.gatherInfo(z,C)&&this.isVisible()&&(h.Icons.DrawIcon(o,$,h.Icons.Anchor,this.screenInfo),this.tipInfo&&h.Icons.DrawIcon(o,$,h.Icons.TipHelper,this.tipInfo))},(((wd=h.MoveDummy=function($){this.catalog="MoveDummy",this._interactor=$}).prototype={}).constructor=wd).prototype.gatherInfo=function($,z){var C=this._interactor.getSubModule("Rect");if(C&&(g=C.screenInfo)){var o=this._interactor;if(this.getMovableTarget(C.target)&&(C=o.getStyle("moveDummyThreshold"),!1!==(C=av(C)?C():C))){var M=g.LT||g.P1,A=g.RT||g.P2,N=g.LB||M;if(M){var s,g=g.P1,Y=Math.min(M.distanceTo(N),M.distanceTo(A));if(!(!0!==C&&Cthis.screenInfo.size))return $=this._interactor,this.selectedTarget=this.getMovableTarget($.getSubModule("Rect").target),$.setCursor("default"),!0},wd.prototype._42=function($,z,C){this.screenInfo={};var o=this._interactor;o.editDetail||!this.gatherInfo(z,C)||o.editing&&!this.selectedTarget||h.Icons.DrawIcon(o,$,h.Icons.MoveDummy,this.screenInfo)},((($=h.RotateX=function($){this.catalog="RotateX",this._interactor=$}).prototype={}).constructor=$).prototype.gatherInfo=function($,z){var C;return 1===z.length?!((C=z[0])instanceof U.Shape&&C._70I()||bv(C,$))&&this.gatherSingleTarget($,C):1Math.PI&&(s-=2*Math.PI),g=(s/Math.PI*180).toFixed(2)+"°",(Y=U.Default.getLogicalPoint($,o._canvas)).x+=h.Icons.TipShiftX,Y.y+=h.Icons.TipShiftY,this.tipInfo={helperPos:Y,text:g,size:g.length},o.fi({kind:"betweenEditRotation",event:$}))},$.prototype._42=function($,z,C){var o=this,M=(o._clockPainted=!1,o.info={},o.screenInfo={},o._interactor);M.editDetail||o.gatherInfo(z,C)&&o.isVisible()&&(h.Icons.DrawIcon(M,$,h.Icons.RoundPoint,o.screenInfo.POS),M.getStyle("rotateTipVisible")&&o.tipInfo&&h.Icons.DrawIcon(M,$,h.Icons.TipHelper,o.tipInfo),o.editing&&o.drawClock($))},$.prototype.drawClock=function($){$.save(),this._clockPainted=!0;var z,C,o,M,A,N=this.editing||{},s=N.screenInfo||this.screenInfo,g=s.LEN,Y=g+8,v=g+18;$.save(),$.translate(s.CENTER.x,s.CENTER.y),$.beginPath(),$.strokeStyle="rgb(150, 150, 150)";for(var O=0;O<360;O++)z=O*Math.PI/180,O%5==0&&(C=Wd(z)*g,o=yd(z)*g,M=Wd(z)*Y,A=yd(z)*Y,$.moveTo(C,o),$.lineTo(M,A)),O%45==0&&(C=Wd(z)*g,o=yd(z)*g,M=Wd(z)*v,A=yd(z)*v,$.moveTo(C,o),$.lineTo(M,A));$.stroke(),$.rotate(-Fd),s=N.lastRotation||this.target.getRotation(),$.beginPath(),$.fillStyle="rgba(255, 0, 0, 0.1)",$.strokeStyle="rgb(157, 157, 157)",$.moveTo(0,0),$.arc(0,0,v,0,s,!1),$.fill(),$.beginPath(),$.moveTo(0+v,0),$.arc(0,0,v,0,s,!1),$.stroke(),$.restore()},((o=h.Curve=function($){this.catalog="Curve",this._interactor=$}).prototype={}).constructor=o,Jd.defineProperties(o.prototype,{activing:{get:function(){return this._activing},set:function($){$?(this._activing=new h.CurveActiving(this,$),this.gatherSingleTarget(this._interactor.gv,this.target)):(($=this._activing)&&$.dispose(),this._activing=null)}}}),o.PointType={Mirrored:0,Straight:1,Disconnected:2,Asymmetric:3},o.prototype.setUp=function(){var $=this._interactor;$&&$.gv.mp(this._onGraphviewPropertyChanged,this)},o.prototype._onGraphviewPropertyChanged=function($){"zoom"!==$.property&&"translateX"!==$.property&&"translateY"!==$.property||this._handleDataChanged()},o.prototype.tearDown=function(){var $=this._interactor;$&&$.gv.ump(this._onGraphviewPropertyChanged,this)},o.prototype.canEnterEditDetailMode=function(){var $=_m(this._interactor);if($)return this.target=$},o.prototype.canQuitEditDetailMode=function($){var z=this._interactor._getLogicalPoint($);if(!this._checkEditRealPoint(z))return this._interactor.gv.getDataAt($)!==this.target||void 0},o.prototype.preHandleScroll=function($){var z=this.editing;if(z&&z.inEdit)return!0},o.prototype.getCurrentSelectintStatus=function(){var C=this;if(C.activing&&!C.activing.selections){if(C.activing.status!=Kd)return C.activing.status;var $=function($){var z=C.activing.status;C.activing.status=$,C._interactor.fp("shapePointStatus",z,$)},z=h.Curve.PointType,o=C.activing.point,M=C.activing.pairs;if(!M||1!==M.length)return $(z.Mirrored);var A=(M=M[0]).c1&&M.c1.isNearEnough(o),N=M.c2&&M.c2.isNearEnough(o);return M.c1&&M.c2?A&&N?$(z.Straight):A||N?$(z.Asymmetric):(A=M.c1.clone().sub(o),N=M.c2.clone().sub(o),1e-5y.limit&&"y"===y.dir&&(y.dir="x"),Zy.limit&&"x"===y.dir&&(y.dir="y"),"x"===(_=y.dir)?(A.y=N.y,y.limit=Math.max(y.limit,Z)):"y"===_&&(A.x=N.x,y.limit=Math.max(y.limit,g))),C||((Z=d._isEditEdgeSourceTarget())&&(P=A.clone()),y=d._guidingToEdit(A,_),v=g=1/0,(s="realPoint"===s?d._interactor.gridGuide.findClosest(A,_,!0):null)&&(s.x&&(g=s.x),s.y&&(v=s.y)),_=!1,y&&(y.xList&&(Math.abs(y.x)<=Math.abs(g)?(_=!0,g=y.x):delete y.xList),y.yList&&(Math.abs(y.y)<=Math.abs(v)?(_=!0,v=y.y):delete y.yList),_&&(d._guideInfo=y)),isFinite(g)&&(A.x+=g),isFinite(v)&&(A.y+=v),_&&(y.v=A),Z&&(s=_?A.clone():null,A.copy(P),(g=d._editEdgeSourceTarget(Z,A,C,s))&&(X=(d.edgeEditResult=g).tipText,g.isFixed&&(d._guideInfo=null))))),Y=d.screenInfo.curve,"realPoint"===l.type?((M=l.point).e!==Kd&&(A.e=M.e),Y.moveRealPoint(M,A),l.point=A,d.highlight.point=A,v=o.status,O=o.selections,d.activing={point:A,status:v},O&&(t=A.clone().sub(M),c=0,O.forEach(function($){var z=$.clone().add(t);Y.moveRealPoint($,z),O[c++]=z}),d.activing.selections=O)):"ctrlPoint"===l.type?(y=o.pairs[l.pairId],d.moveCtrlPair(y,A,l.ctrlType),o._firePointChange()):"elevation"===l.type&&(_=(N=l.startPoint).e+(N.y-A.y)/$._zoom,d._setCurrentPointImpl("e",_),o._firePointChange(),X="E: "+h.toFixed(_)),(P=U.Default.getLogicalPoint(z,d._interactor._canvas)).x+=h.Icons.TipShiftX,P.y+=h.Icons.TipShiftY,X||(Z=h.toWorldPosition($,A),X=h.toFixed(Z.x)+", "+h.toFixed(Z.y)),d.tipInfo={helperPos:P,text:X,size:X.length},d._writeToHt(),d._interactor.fi({kind:"betweenEditPoint",event:z}))}},o.prototype._setCurrentPointImpl=function($,z){var C=this._activing;if(!C)return!1;var o=this.target;if(!o)return!1;var M=C.getCurrentEditingPoint();if(!M)return!1;var A,N,s,g,Y,v,O=C.editingCtrl;return O||(A=M.clone()),"e"===$?M.e=z:("x"===$||"y"===$?(N=C._lastFirePoint,N="x"===$?{x:z,y:N?N.y:0}:{x:N?N.x:0,y:z}):"object"==typeof $?(N=$).e!==Kd&&(M.e=$.e):(N={x:$,y:z},arguments[2]!==Kd&&(M.e=arguments[2])),$=h.getDataMatrix(o),N=h.toScreenPosition(this._interactor.gv,$.apply(N)),M.x=N.x,M.y=N.y),O||(s=A.multiplyScalar(-1).add(M),Vv(M.e)&&Vv(A.e)&&(s.e=M.e-A.e),(g=this.screenInfo.curve).moveCtrlDueToRealPointMovement(M,s),(Y=C.selections)&&(v=0,Y.forEach(function($){var z=$.clone().add(s);isFinite(s.e)&&(z.e=(isFinite($.e)?$.e:o.getElevation()||0)+s.e),g.moveRealPoint($,z),Y[v++]=z}),C.selections=Y)),!0},o.prototype.setCurrentPoint=function($,z){return!!this._setCurrentPointImpl($,z)&&(this._writeToHt(),!0)},o.prototype._isEditEdgeSourceTarget=function(){if(!(this.target instanceof U.Edge))return!1;var $=this.editing.point,z=this.screenInfo.curve._curves;return $===z[0]._p1?"source":$===z[z.length-1]._p4&&"target"},o.prototype._editEdgeSourceTarget=function(z,$,C,o){var M,A,N,s,g,Y,v,O,t,c=this,y=c.target;if(N="source"===z?y.getSourceAgent():y.getTargetAgent())return M=c._interactor.gv,g=h.toWorldPosition(M,$),(Y=(Y=(A=c._calcHostAnchor(y,z,g,N)).index!==Kd||A.percent!==Kd?A.distance*M.getZoom()>c._interactor.getStyle("edgeHostEdgeMaxDistance"):!!c._interactor.getStyle("edgeHostDetectPerFrame")||A.x<0||1y||"y"===z)&&(C=null),(Math.abs(t)>y||"x"===z)&&(o=null),(C||o)&&(y=!1,z={},C&&(y=!0,z.xList=C,z.x=O),o&&(y=!0,z.yList=o,z.y=t),y))return z}},o.prototype._46O=function($){var z,C,o,M=this;M.editing&&((o=M._isEditEdgeSourceTarget())&&(z=M.screenInfo.P,C=M.activing.point,"source"===o?(C.x=z[0],C.y=z[1]):(o=z.length,C.x=z[o-2],C.y=z[o-1])),M.editing=null,M._interactor.fi({kind:"endEditPoint",event:$})),M._guideInfo=null,M._edgeHostGuideInfo=null,M._pan&&(M._pan=null,M._interactor.fi({kind:"endPan",event:$})),M._multiSelect&&(M._handleMultiSelect(M._multiSelect,$),M._multiSelect=null),M.tipInfo=null,M.edgeEditResult=null},o.prototype._handleMultiSelect=function($,z){if($.startPoint&&$.endPoint){for(var C,o,M,A,N=this._interactor,s=N.gv,g=h.toScreenPosition(s,$.startPoint),s=h.toScreenPosition(s,$.endPoint),Y=U.Default.unionPoint(g,s),v=this.screenInfo.curve._curves,O=[],t=function($){$.x>=Y.x&&$.y>=Y.y&&$.x<=Y.x+Y.width&&$.y<=Y.y+Y.height&&O.indexOf($)<0&&O.push($)},c=0,y=v.length;cz.limit&&"y"===z.dir&&(z.dir="x"),oz.limit&&"x"===z.dir&&(z.dir="y"),z.dir);return"x"===A?($.y=C.y,z.limit=Math.max(z.limit,o)):"y"===A&&($.x=C.x,z.limit=Math.max(z.limit,M)),$},C.prototype._isAttachableLineShape=function($){if(!$.getSegments)return!1;var z=$.getSegments();if(!z)return!0;for(var C=1,o=(z=z instanceof U.List?z.getArray():z).length;Cthis._interactor.getStyle("attachThreshold")?($.s({"attach.index":-1}),void $.setHost(null)):($.s("attach.offset.opposite")&&(v=O-v),$.s({"attach.index":t,"attach.offset":$.s("attach.offset.relative")?v/O:v}),{x:0,y:0})}),C.prototype._gatherGridInfo=function($){var z,C,o=this._interactor;if((M=o._getValidSelection()).length){if(1===M.length){if(!(z=M[0]).getRect)return void(this._target=null)}else if(!(z=h.Group.findOrCreateGroup(M,o._uuid)))return void(this._target=null)}else{var M=o.gv.sm().getSelection();if(M.length&&!(z=M.get(0)).getRect)return void(this._target=null)}z&&(M=z.getPosition(),C=z.getRect(),this._target={node:z,x:C.x-M.x,y:C.y-M.y,w:C.width,h:C.height,lp:{x:$.x,y:$.y},pos:{x:M.x,y:M.y},shiftGuide:{dir:"x",limit:0},downPosition:new h.Math.Vector2($)},o.rectGuide.gatherRects())},C.prototype.clear=function(){this._edgeHostGuideInfo=null,this._interactor.rectGuide.clear(),this._interactor._42()},C.prototype._42=function(){var $=this._edgeHostGuideInfo;$&&this._interactor._drawHostGuide($)};var ZS,XS,dS,lS,JS,KS,fS,QS,WS,VS,eS,DS,aS,kS,xS,pS,bS,uS,nS,RS,IS,hS,mS,SS,GS,ES,HS,iS,FS,jS,US,LS,wS,qS,TS,rS,BS,$z,zz,Cz,oz,Mz,Az,Nz,sz,gz,Yz,vz,Oz,tz=U.WebGLConstants=Jd.freeze({DEPTH_BUFFER_BIT:256,STENCIL_BUFFER_BIT:1024,COLOR_BUFFER_BIT:16384,POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6,ZERO:0,ONE:1,SRC_COLOR:768,ONE_MINUS_SRC_COLOR:769,SRC_ALPHA:770,ONE_MINUS_SRC_ALPHA:771,DST_ALPHA:772,ONE_MINUS_DST_ALPHA:773,DST_COLOR:774,ONE_MINUS_DST_COLOR:775,SRC_ALPHA_SATURATE:776,FUNC_ADD:32774,BLEND_EQUATION:32777,BLEND_EQUATION_RGB:32777,BLEND_EQUATION_ALPHA:34877,FUNC_SUBTRACT:32778,FUNC_REVERSE_SUBTRACT:32779,BLEND_DST_RGB:32968,BLEND_SRC_RGB:32969,BLEND_DST_ALPHA:32970,BLEND_SRC_ALPHA:32971,CONSTANT_COLOR:32769,ONE_MINUS_CONSTANT_COLOR:32770,CONSTANT_ALPHA:32771,ONE_MINUS_CONSTANT_ALPHA:32772,BLEND_COLOR:32773,ARRAY_BUFFER:34962,ELEMENT_ARRAY_BUFFER:34963,ARRAY_BUFFER_BINDING:34964,ELEMENT_ARRAY_BUFFER_BINDING:34965,STREAM_DRAW:35040,STATIC_DRAW:35044,DYNAMIC_DRAW:35048,BUFFER_SIZE:34660,BUFFER_USAGE:34661,CURRENT_VERTEX_ATTRIB:34342,FRONT:1028,BACK:1029,FRONT_AND_BACK:1032,CULL_FACE:2884,BLEND:3042,DITHER:3024,STENCIL_TEST:2960,DEPTH_TEST:2929,SCISSOR_TEST:3089,POLYGON_OFFSET_FILL:32823,SAMPLE_ALPHA_TO_COVERAGE:32926,SAMPLE_COVERAGE:32928,NO_ERROR:0,INVALID_ENUM:1280,INVALID_VALUE:1281,INVALID_OPERATION:1282,OUT_OF_MEMORY:1285,CW:2304,CCW:2305,LINE_WIDTH:2849,ALIASED_POINT_SIZE_RANGE:33901,ALIASED_LINE_WIDTH_RANGE:33902,CULL_FACE_MODE:2885,FRONT_FACE:2886,DEPTH_RANGE:2928,DEPTH_WRITEMASK:2930,DEPTH_CLEAR_VALUE:2931,DEPTH_FUNC:2932,STENCIL_CLEAR_VALUE:2961,STENCIL_FUNC:2962,STENCIL_FAIL:2964,STENCIL_PASS_DEPTH_FAIL:2965,STENCIL_PASS_DEPTH_PASS:2966,STENCIL_REF:2967,STENCIL_VALUE_MASK:2963,STENCIL_WRITEMASK:2968,STENCIL_BACK_FUNC:34816,STENCIL_BACK_FAIL:34817,STENCIL_BACK_PASS_DEPTH_FAIL:34818,STENCIL_BACK_PASS_DEPTH_PASS:34819,STENCIL_BACK_REF:36003,STENCIL_BACK_VALUE_MASK:36004,STENCIL_BACK_WRITEMASK:36005,VIEWPORT:2978,SCISSOR_BOX:3088,COLOR_CLEAR_VALUE:3106,COLOR_WRITEMASK:3107,UNPACK_ALIGNMENT:3317,PACK_ALIGNMENT:3333,MAX_TEXTURE_SIZE:3379,MAX_VIEWPORT_DIMS:3386,SUBPIXEL_BITS:3408,RED_BITS:3410,GREEN_BITS:3411,BLUE_BITS:3412,ALPHA_BITS:3413,DEPTH_BITS:3414,STENCIL_BITS:3415,POLYGON_OFFSET_UNITS:10752,POLYGON_OFFSET_FACTOR:32824,TEXTURE_BINDING_2D:32873,SAMPLE_BUFFERS:32936,SAMPLES:32937,SAMPLE_COVERAGE_VALUE:32938,SAMPLE_COVERAGE_INVERT:32939,COMPRESSED_TEXTURE_FORMATS:34467,DONT_CARE:4352,FASTEST:4353,NICEST:4354,GENERATE_MIPMAP_HINT:33170,BYTE:5120,UNSIGNED_BYTE:5121,SHORT:5122,UNSIGNED_SHORT:5123,INT:5124,UNSIGNED_INT:5125,FLOAT:5126,DEPTH_COMPONENT:6402,ALPHA:6406,RGB:6407,RGBA:6408,LUMINANCE:6409,LUMINANCE_ALPHA:6410,UNSIGNED_SHORT_4_4_4_4:32819,UNSIGNED_SHORT_5_5_5_1:32820,UNSIGNED_SHORT_5_6_5:33635,FRAGMENT_SHADER:35632,VERTEX_SHADER:35633,MAX_VERTEX_ATTRIBS:34921,MAX_VERTEX_UNIFORM_VECTORS:36347,MAX_VARYING_VECTORS:36348,MAX_COMBINED_TEXTURE_IMAGE_UNITS:35661,MAX_VERTEX_TEXTURE_IMAGE_UNITS:35660,MAX_TEXTURE_IMAGE_UNITS:34930,MAX_FRAGMENT_UNIFORM_VECTORS:36349,SHADER_TYPE:35663,DELETE_STATUS:35712,LINK_STATUS:35714,VALIDATE_STATUS:35715,ATTACHED_SHADERS:35717,ACTIVE_UNIFORMS:35718,ACTIVE_ATTRIBUTES:35721,SHADING_LANGUAGE_VERSION:35724,CURRENT_PROGRAM:35725,NEVER:512,LESS:513,EQUAL:514,LEQUAL:515,GREATER:516,NOTEQUAL:517,GEQUAL:518,ALWAYS:519,KEEP:7680,REPLACE:7681,INCR:7682,DECR:7683,INVERT:5386,INCR_WRAP:34055,DECR_WRAP:34056,VENDOR:7936,RENDERER:7937,VERSION:7938,NEAREST:9728,LINEAR:9729,NEAREST_MIPMAP_NEAREST:9984,LINEAR_MIPMAP_NEAREST:9985,NEAREST_MIPMAP_LINEAR:9986,LINEAR_MIPMAP_LINEAR:9987,TEXTURE_MAG_FILTER:10240,TEXTURE_MIN_FILTER:10241,TEXTURE_WRAP_S:10242,TEXTURE_WRAP_T:10243,TEXTURE_2D:3553,TEXTURE:5890,TEXTURE_CUBE_MAP:34067,TEXTURE_BINDING_CUBE_MAP:34068,TEXTURE_CUBE_MAP_POSITIVE_X:34069,TEXTURE_CUBE_MAP_NEGATIVE_X:34070,TEXTURE_CUBE_MAP_POSITIVE_Y:34071,TEXTURE_CUBE_MAP_NEGATIVE_Y:34072,TEXTURE_CUBE_MAP_POSITIVE_Z:34073,TEXTURE_CUBE_MAP_NEGATIVE_Z:34074,MAX_CUBE_MAP_TEXTURE_SIZE:34076,TEXTURE0:33984,TEXTURE1:33985,TEXTURE2:33986,TEXTURE3:33987,TEXTURE4:33988,TEXTURE5:33989,TEXTURE6:33990,TEXTURE7:33991,TEXTURE8:33992,TEXTURE9:33993,TEXTURE10:33994,TEXTURE11:33995,TEXTURE12:33996,TEXTURE13:33997,TEXTURE14:33998,TEXTURE15:33999,TEXTURE16:34e3,TEXTURE17:34001,TEXTURE18:34002,TEXTURE19:34003,TEXTURE20:34004,TEXTURE21:34005,TEXTURE22:34006,TEXTURE23:34007,TEXTURE24:34008,TEXTURE25:34009,TEXTURE26:34010,TEXTURE27:34011,TEXTURE28:34012,TEXTURE29:34013,TEXTURE30:34014,TEXTURE31:34015,ACTIVE_TEXTURE:34016,REPEAT:10497,CLAMP_TO_EDGE:33071,MIRRORED_REPEAT:33648,FLOAT_VEC2:35664,FLOAT_VEC3:35665,FLOAT_VEC4:35666,INT_VEC2:35667,INT_VEC3:35668,INT_VEC4:35669,BOOL:35670,BOOL_VEC2:35671,BOOL_VEC3:35672,BOOL_VEC4:35673,FLOAT_MAT2:35674,FLOAT_MAT3:35675,FLOAT_MAT4:35676,SAMPLER_2D:35678,SAMPLER_CUBE:35680,VERTEX_ATTRIB_ARRAY_ENABLED:34338,VERTEX_ATTRIB_ARRAY_SIZE:34339,VERTEX_ATTRIB_ARRAY_STRIDE:34340,VERTEX_ATTRIB_ARRAY_TYPE:34341,VERTEX_ATTRIB_ARRAY_NORMALIZED:34922,VERTEX_ATTRIB_ARRAY_POINTER:34373,VERTEX_ATTRIB_ARRAY_BUFFER_BINDING:34975,IMPLEMENTATION_COLOR_READ_TYPE:35738,IMPLEMENTATION_COLOR_READ_FORMAT:35739,COMPILE_STATUS:35713,LOW_FLOAT:36336,MEDIUM_FLOAT:36337,HIGH_FLOAT:36338,LOW_INT:36339,MEDIUM_INT:36340,HIGH_INT:36341,FRAMEBUFFER:36160,RENDERBUFFER:36161,RGBA4:32854,RGB5_A1:32855,RGB565:36194,DEPTH_COMPONENT16:33189,STENCIL_INDEX:6401,STENCIL_INDEX8:36168,DEPTH_STENCIL:34041,RENDERBUFFER_WIDTH:36162,RENDERBUFFER_HEIGHT:36163,RENDERBUFFER_INTERNAL_FORMAT:36164,RENDERBUFFER_RED_SIZE:36176,RENDERBUFFER_GREEN_SIZE:36177,RENDERBUFFER_BLUE_SIZE:36178,RENDERBUFFER_ALPHA_SIZE:36179,RENDERBUFFER_DEPTH_SIZE:36180,RENDERBUFFER_STENCIL_SIZE:36181,FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE:36048,FRAMEBUFFER_ATTACHMENT_OBJECT_NAME:36049,FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL:36050,FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE:36051,COLOR_ATTACHMENT0:36064,DEPTH_ATTACHMENT:36096,STENCIL_ATTACHMENT:36128,DEPTH_STENCIL_ATTACHMENT:33306,NONE:0,FRAMEBUFFER_COMPLETE:36053,FRAMEBUFFER_INCOMPLETE_ATTACHMENT:36054,FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT:36055,FRAMEBUFFER_INCOMPLETE_DIMENSIONS:36057,FRAMEBUFFER_UNSUPPORTED:36061,FRAMEBUFFER_BINDING:36006,RENDERBUFFER_BINDING:36007,MAX_RENDERBUFFER_SIZE:34024,INVALID_FRAMEBUFFER_OPERATION:1286,UNPACK_FLIP_Y_WEBGL:37440,UNPACK_PREMULTIPLY_ALPHA_WEBGL:37441,CONTEXT_LOST_WEBGL:37442,UNPACK_COLORSPACE_CONVERSION_WEBGL:37443,BROWSER_DEFAULT_WEBGL:37444,COMPRESSED_RGB_S3TC_DXT1_EXT:33776,COMPRESSED_RGBA_S3TC_DXT1_EXT:33777,COMPRESSED_RGBA_S3TC_DXT3_EXT:33778,COMPRESSED_RGBA_S3TC_DXT5_EXT:33779,COMPRESSED_RGB_PVRTC_4BPPV1_IMG:35840,COMPRESSED_RGB_PVRTC_2BPPV1_IMG:35841,COMPRESSED_RGBA_PVRTC_4BPPV1_IMG:35842,COMPRESSED_RGBA_PVRTC_2BPPV1_IMG:35843,COMPRESSED_RGB_ETC1_WEBGL:36196,HALF_FLOAT_OES:36193,DOUBLE:5130,READ_BUFFER:3074,UNPACK_ROW_LENGTH:3314,UNPACK_SKIP_ROWS:3315,UNPACK_SKIP_PIXELS:3316,PACK_ROW_LENGTH:3330,PACK_SKIP_ROWS:3331,PACK_SKIP_PIXELS:3332,COLOR:6144,DEPTH:6145,STENCIL:6146,RED:6403,RGB8:32849,RGBA8:32856,RGB10_A2:32857,TEXTURE_BINDING_3D:32874,UNPACK_SKIP_IMAGES:32877,UNPACK_IMAGE_HEIGHT:32878,TEXTURE_3D:32879,TEXTURE_WRAP_R:32882,MAX_3D_TEXTURE_SIZE:32883,UNSIGNED_INT_2_10_10_10_REV:33640,MAX_ELEMENTS_VERTICES:33e3,MAX_ELEMENTS_INDICES:33001,TEXTURE_MIN_LOD:33082,TEXTURE_MAX_LOD:33083,TEXTURE_BASE_LEVEL:33084,TEXTURE_MAX_LEVEL:33085,MIN:32775,MAX:32776,DEPTH_COMPONENT24:33190,MAX_TEXTURE_LOD_BIAS:34045,TEXTURE_COMPARE_MODE:34892,TEXTURE_COMPARE_FUNC:34893,CURRENT_QUERY:34917,QUERY_RESULT:34918,QUERY_RESULT_AVAILABLE:34919,STREAM_READ:35041,STREAM_COPY:35042,STATIC_READ:35045,STATIC_COPY:35046,DYNAMIC_READ:35049,DYNAMIC_COPY:35050,MAX_DRAW_BUFFERS:34852,DRAW_BUFFER0:34853,DRAW_BUFFER1:34854,DRAW_BUFFER2:34855,DRAW_BUFFER3:34856,DRAW_BUFFER4:34857,DRAW_BUFFER5:34858,DRAW_BUFFER6:34859,DRAW_BUFFER7:34860,DRAW_BUFFER8:34861,DRAW_BUFFER9:34862,DRAW_BUFFER10:34863,DRAW_BUFFER11:34864,DRAW_BUFFER12:34865,DRAW_BUFFER13:34866,DRAW_BUFFER14:34867,DRAW_BUFFER15:34868,MAX_FRAGMENT_UNIFORM_COMPONENTS:35657,MAX_VERTEX_UNIFORM_COMPONENTS:35658,SAMPLER_3D:35679,SAMPLER_2D_SHADOW:35682,FRAGMENT_SHADER_DERIVATIVE_HINT:35723,PIXEL_PACK_BUFFER:35051,PIXEL_UNPACK_BUFFER:35052,PIXEL_PACK_BUFFER_BINDING:35053,PIXEL_UNPACK_BUFFER_BINDING:35055,FLOAT_MAT2x3:35685,FLOAT_MAT2x4:35686,FLOAT_MAT3x2:35687,FLOAT_MAT3x4:35688,FLOAT_MAT4x2:35689,FLOAT_MAT4x3:35690,SRGB:35904,SRGB8:35905,SRGB8_ALPHA8:35907,COMPARE_REF_TO_TEXTURE:34894,RGBA32F:34836,RGB32F:34837,RGBA16F:34842,RGB16F:34843,VERTEX_ATTRIB_ARRAY_INTEGER:35069,MAX_ARRAY_TEXTURE_LAYERS:35071,MIN_PROGRAM_TEXEL_OFFSET:35076,MAX_PROGRAM_TEXEL_OFFSET:35077,MAX_VARYING_COMPONENTS:35659,TEXTURE_2D_ARRAY:35866,TEXTURE_BINDING_2D_ARRAY:35869,R11F_G11F_B10F:35898,UNSIGNED_INT_10F_11F_11F_REV:35899,RGB9_E5:35901,UNSIGNED_INT_5_9_9_9_REV:35902,TRANSFORM_FEEDBACK_BUFFER_MODE:35967,MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS:35968,TRANSFORM_FEEDBACK_VARYINGS:35971,TRANSFORM_FEEDBACK_BUFFER_START:35972,TRANSFORM_FEEDBACK_BUFFER_SIZE:35973,TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN:35976,RASTERIZER_DISCARD:35977,MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS:35978,MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS:35979,INTERLEAVED_ATTRIBS:35980,SEPARATE_ATTRIBS:35981,TRANSFORM_FEEDBACK_BUFFER:35982,TRANSFORM_FEEDBACK_BUFFER_BINDING:35983,RGBA32UI:36208,RGB32UI:36209,RGBA16UI:36214,RGB16UI:36215,RGBA8UI:36220,RGB8UI:36221,RGBA32I:36226,RGB32I:36227,RGBA16I:36232,RGB16I:36233,RGBA8I:36238,RGB8I:36239,RED_INTEGER:36244,RGB_INTEGER:36248,RGBA_INTEGER:36249,SAMPLER_2D_ARRAY:36289,SAMPLER_2D_ARRAY_SHADOW:36292,SAMPLER_CUBE_SHADOW:36293,UNSIGNED_INT_VEC2:36294,UNSIGNED_INT_VEC3:36295,UNSIGNED_INT_VEC4:36296,INT_SAMPLER_2D:36298,INT_SAMPLER_3D:36299,INT_SAMPLER_CUBE:36300,INT_SAMPLER_2D_ARRAY:36303,UNSIGNED_INT_SAMPLER_2D:36306,UNSIGNED_INT_SAMPLER_3D:36307,UNSIGNED_INT_SAMPLER_CUBE:36308,UNSIGNED_INT_SAMPLER_2D_ARRAY:36311,DEPTH_COMPONENT32F:36012,DEPTH32F_STENCIL8:36013,FLOAT_32_UNSIGNED_INT_24_8_REV:36269,FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING:33296,FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE:33297,FRAMEBUFFER_ATTACHMENT_RED_SIZE:33298,FRAMEBUFFER_ATTACHMENT_GREEN_SIZE:33299,FRAMEBUFFER_ATTACHMENT_BLUE_SIZE:33300,FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE:33301,FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE:33302,FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE:33303,FRAMEBUFFER_DEFAULT:33304,UNSIGNED_INT_24_8:34042,DEPTH24_STENCIL8:35056,UNSIGNED_NORMALIZED:35863,DRAW_FRAMEBUFFER_BINDING:36006,READ_FRAMEBUFFER:36008,DRAW_FRAMEBUFFER:36009,READ_FRAMEBUFFER_BINDING:36010,RENDERBUFFER_SAMPLES:36011,FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER:36052,MAX_COLOR_ATTACHMENTS:36063,COLOR_ATTACHMENT1:36065,COLOR_ATTACHMENT2:36066,COLOR_ATTACHMENT3:36067,COLOR_ATTACHMENT4:36068,COLOR_ATTACHMENT5:36069,COLOR_ATTACHMENT6:36070,COLOR_ATTACHMENT7:36071,COLOR_ATTACHMENT8:36072,COLOR_ATTACHMENT9:36073,COLOR_ATTACHMENT10:36074,COLOR_ATTACHMENT11:36075,COLOR_ATTACHMENT12:36076,COLOR_ATTACHMENT13:36077,COLOR_ATTACHMENT14:36078,COLOR_ATTACHMENT15:36079,FRAMEBUFFER_INCOMPLETE_MULTISAMPLE:36182,MAX_SAMPLES:36183,HALF_FLOAT:5131,RG:33319,RG_INTEGER:33320,R8:33321,RG8:33323,R16F:33325,R32F:33326,RG16F:33327,RG32F:33328,R8I:33329,R8UI:33330,R16I:33331,R16UI:33332,R32I:33333,R32UI:33334,RG8I:33335,RG8UI:33336,RG16I:33337,RG16UI:33338,RG32I:33339,RG32UI:33340,VERTEX_ARRAY_BINDING:34229,R8_SNORM:36756,RG8_SNORM:36757,RGB8_SNORM:36758,RGBA8_SNORM:36759,SIGNED_NORMALIZED:36764,COPY_READ_BUFFER:36662,COPY_WRITE_BUFFER:36663,COPY_READ_BUFFER_BINDING:36662,COPY_WRITE_BUFFER_BINDING:36663,UNIFORM_BUFFER:35345,UNIFORM_BUFFER_BINDING:35368,UNIFORM_BUFFER_START:35369,UNIFORM_BUFFER_SIZE:35370,MAX_VERTEX_UNIFORM_BLOCKS:35371,MAX_FRAGMENT_UNIFORM_BLOCKS:35373,MAX_COMBINED_UNIFORM_BLOCKS:35374,MAX_UNIFORM_BUFFER_BINDINGS:35375,MAX_UNIFORM_BLOCK_SIZE:35376,MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS:35377,MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS:35379,UNIFORM_BUFFER_OFFSET_ALIGNMENT:35380,ACTIVE_UNIFORM_BLOCKS:35382,UNIFORM_TYPE:35383,UNIFORM_SIZE:35384,UNIFORM_BLOCK_INDEX:35386,UNIFORM_OFFSET:35387,UNIFORM_ARRAY_STRIDE:35388,UNIFORM_MATRIX_STRIDE:35389,UNIFORM_IS_ROW_MAJOR:35390,UNIFORM_BLOCK_BINDING:35391,UNIFORM_BLOCK_DATA_SIZE:35392,UNIFORM_BLOCK_ACTIVE_UNIFORMS:35394,UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES:35395,UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER:35396,UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER:35398,INVALID_INDEX:4294967295,MAX_VERTEX_OUTPUT_COMPONENTS:37154,MAX_FRAGMENT_INPUT_COMPONENTS:37157,MAX_SERVER_WAIT_TIMEOUT:37137,OBJECT_TYPE:37138,SYNC_CONDITION:37139,SYNC_STATUS:37140,SYNC_FLAGS:37141,SYNC_FENCE:37142,SYNC_GPU_COMMANDS_COMPLETE:37143,UNSIGNALED:37144,SIGNALED:37145,ALREADY_SIGNALED:37146,TIMEOUT_EXPIRED:37147,CONDITION_SATISFIED:37148,WAIT_FAILED:37149,SYNC_FLUSH_COMMANDS_BIT:1,VERTEX_ATTRIB_ARRAY_DIVISOR:35070,ANY_SAMPLES_PASSED:35887,ANY_SAMPLES_PASSED_CONSERVATIVE:36202,SAMPLER_BINDING:35097,RGB10_A2UI:36975,INT_2_10_10_10_REV:36255,TRANSFORM_FEEDBACK:36386,TRANSFORM_FEEDBACK_PAUSED:36387,TRANSFORM_FEEDBACK_ACTIVE:36388,TRANSFORM_FEEDBACK_BINDING:36389,COMPRESSED_R11_EAC:37488,COMPRESSED_SIGNED_R11_EAC:37489,COMPRESSED_RG11_EAC:37490,COMPRESSED_SIGNED_RG11_EAC:37491,COMPRESSED_RGB8_ETC2:37492,COMPRESSED_SRGB8_ETC2:37493,COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:37494,COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:37495,COMPRESSED_RGBA8_ETC2_EAC:37496,COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:37497,TEXTURE_IMMUTABLE_FORMAT:37167,MAX_ELEMENT_INDEX:36203,TEXTURE_IMMUTABLE_LEVELS:33503,MAX_TEXTURE_MAX_ANISOTROPY_EXT:34047}),cz=(KS="undefined"!=typeof WebGL2RenderingContext,fS={aliasedLineWidthRange:33902,aliasedPointSizeRange:33901,maxCombinedTextureImageUnits:35661,maxCubeMapTextureSize:34076,maxFragmentUniformVectors:36349,maxRenderBufferSize:34024,maxTextureImageUnits:34930,maxTextureSize:3379,maxVaryingVectors:36348,maxVertexAttribs:34921,maxVertexTextureImageUnits:35660,maxVertexUniformVectors:36347,maxViewportDIMs:3386},QS={max3DTextureSize:32883,maxArrayTextureLayers:35071,maxColorAttachments:36063,maxCombinedFragmentUniformComponents:35379,maxCombinedUniformBlocks:35374,maxCombinedVertexUniformComponents:35377,maxDrawBuffers:34852,maxElementIndex:36203,maxElementsIndices:33001,maxElementsVertices:33e3,maxFragmentInpuComponents:37157,maxFragmentUniformBlocks:35373,maxFragmentUniformComponents:35657,maxProgramTexelOffset:35077,maxSamples:36183,maxTextureLODBias:34045,maxTransformFeedbackInterleavedComponents:35978,maxTransformFeedbackSeparateAttribs:35979,maxTransformFeedbackSeparateComponents:35968,maxUniformBlockSize:35376,maxUniformBufferBindings:35375,maxVaryingComponents:35659,maxVertexOutputComponents:37154,maxVertexUniformBlocks:35371,maxVertexUniformComponents:35658,minProgramTexelOffset:35076},{for:function($){var z=$._info;return z||($._info=z=function(o,$){($=$==Kd?{}:$).version=KS&&(o instanceof WebGL2RenderingContext||"[object WebGL2RenderingContext]"===Jd.prototype.toString.call(o))?2:1,$.extensions=function(){for(var $={},z=o.getSupportedExtensions(),C=z.length;C--;)$[z[C]]=function($,z){var C=Kd;return function(){return C=C||$.getExtension(z)}}(o,z[C]);return $}();for(var z=Jd.keys(fS),C=0,M=z.length;C$/Wd(A)&&(Y.adjust=!0),Y)},iz=function($){var z=$[0],C=$[1],o=$[2],M=$[3],A=$[4],N=$[5],s=$[6],g=$[7],Y=$[8],v=$[9],O=$[10],t=$[11],c=$[12],y=$[13],_=$[14],P=$[15],Z=z*N-C*A,X=z*s-o*A,d=z*g-M*A,l=C*s-o*N,J=C*g-M*N,K=o*g-M*s,f=Y*y-v*c,Q=Y*_-O*c,W=Y*P-t*c,V=v*_-O*y,e=v*P-t*y,D=O*P-t*_,a=Z*D-X*e+d*V+l*W-J*Q+K*f;return a?($[0]=(N*D-s*e+g*V)*(a=1/a),$[1]=(o*e-C*D-M*V)*a,$[2]=(y*K-_*J+P*l)*a,$[3]=(O*J-v*K-t*l)*a,$[4]=(s*W-A*D-g*Q)*a,$[5]=(z*D-o*W+M*Q)*a,$[6]=(_*d-c*K-P*X)*a,$[7]=(Y*K-O*d+t*X)*a,$[8]=(A*e-N*W+g*f)*a,$[9]=(C*W-z*e-M*f)*a,$[10]=(c*J-y*d+P*Z)*a,$[11]=(v*d-Y*J-t*Z)*a,$[12]=(N*Q-A*V-s*f)*a,$[13]=(z*V-C*Q+o*f)*a,$[14]=(y*X-c*l-_*Z)*a,$[15]=(Y*l-v*X+O*Z)*a,$):fd},Fz=function($,z){var C,o;return z&&(C=z[0],o=z[1],z=z[2],$[12]=$[0]*C+$[4]*o+$[8]*z+$[12],$[13]=$[1]*C+$[5]*o+$[9]*z+$[13],$[14]=$[2]*C+$[6]*o+$[10]*z+$[14],$[15]=$[3]*C+$[7]*o+$[11]*z+$[15]),$},jz=function($,z){var C,o;return z&&(C=z[0],o=z[1],z=z[2],$[0]=$[0]*C,$[1]=$[1]*C,$[2]=$[2]*C,$[3]=$[3]*C,$[4]=$[4]*o,$[5]=$[5]*o,$[6]=$[6]*o,$[7]=$[7]*o,$[8]=$[8]*z,$[9]=$[9]*z,$[10]=$[10]*z,$[11]=$[11]*z),$},Uz=function($,z,C){var o=z[0],M=z[1],A=z[2],N=z[3],s=z[4],g=z[5],Y=z[6],v=z[7],O=z[8],t=z[9],c=z[10],y=z[11],_=z[12],P=z[13],Z=z[14],z=z[15],X=C[0],d=C[1],l=C[2],J=C[3];return $[0]=X*o+d*s+l*O+J*_,$[1]=X*M+d*g+l*t+J*P,$[2]=X*A+d*Y+l*c+J*Z,$[3]=X*N+d*v+l*y+J*z,X=C[4],d=C[5],l=C[6],J=C[7],$[4]=X*o+d*s+l*O+J*_,$[5]=X*M+d*g+l*t+J*P,$[6]=X*A+d*Y+l*c+J*Z,$[7]=X*N+d*v+l*y+J*z,X=C[8],d=C[9],l=C[10],J=C[11],$[8]=X*o+d*s+l*O+J*_,$[9]=X*M+d*g+l*t+J*P,$[10]=X*A+d*Y+l*c+J*Z,$[11]=X*N+d*v+l*y+J*z,X=C[12],d=C[13],l=C[14],J=C[15],$[12]=X*o+d*s+l*O+J*_,$[13]=X*M+d*g+l*t+J*P,$[14]=X*A+d*Y+l*c+J*Z,$[15]=X*N+d*v+l*y+J*z,$},Lz=function($,z,C,o){var M,A,N,s,g=z[0],Y=z[1],z=z[2],v=o[0],O=o[1],o=o[2],t=C[0],c=C[1],C=C[2];return I(g-t)z[5]&z[0]>z[10]?(o=2*Math.sqrt(1+z[0]-z[5]-z[10]),$[3]=(z[6]-z[9])/o,$[0]=.25*o,$[1]=(z[1]+z[4])/o,$[2]=(z[8]+z[2])/o):z[5]>z[10]?(o=2*Math.sqrt(1+z[5]-z[0]-z[10]),$[3]=(z[8]-z[2])/o,$[0]=(z[1]+z[4])/o,$[1]=.25*o,$[2]=(z[6]+z[9])/o):(o=2*Math.sqrt(1+z[10]-z[0]-z[5]),$[3]=(z[1]-z[4])/o,$[0]=(z[8]+z[2])/o,$[1]=(z[6]+z[9])/o,$[2]=.25*o),$},Bz=function($,z,C){var o=z[0],M=z[1],A=z[2],N=A+A,s=o*(v=o+o),g=o*(O=M+M),o=o*N,Y=M*O,M=M*N,v=(z=z[3])*v,O=z*O,z=z*N;return $[0]=1-(Y+(A=A*N)),$[1]=g+z,$[2]=o-O,$[3]=0,$[4]=g-z,$[5]=1-(s+A),$[6]=M+v,$[7]=0,$[8]=o+O,$[9]=M-v,$[10]=1-(s+Y),$[11]=0,$[12]=C[0],$[13]=C[1],$[14]=C[2],$[15]=1,$},$1=function($,z){var C=$.getPresentingReality();return(C=C&&C.getViewMatrix(z))?C:$._camera?$._camera.getViewMatrix(z):Lz(z||I_(),$._eye,$._center,$._up)},z1=function($,z){var C=$.getPresentingReality();if(C=C&&C.getProjectMatrix())return C;if($._camera)return $._camera.getProjectMatrix();if(!z&&$._computedProjectMatrix)return m_($._computedProjectMatrix);var o,C=$.getAspect(),z=$._near,M=$._far,A=I_();return $._ortho?(o=$._orthoWidth/2,qz(A,-o,o,-(o/=C),o,z,M)):wz(A,$._fovy,C,z,M),A},C1=function($,z){if(!$)return fd;for(var C,o,M,A,N,s,g,Y,v,O=$.length,t=O/3,c=new p_($.length),y=0,_=z?z.length:t;y<_;y+=3)v=z?(g=3*z[y],Y=3*z[y+1],3*z[y+2]):(g=3*y,Y=3*(y+1),3*(y+2)),C=$[Y+0]-$[g+0],o=$[Y+1]-$[g+1],M=$[Y+2]-$[g+2],A=$[0+v]-$[Y+0],N=$[1+v]-$[Y+1],Z=M*A-C*(s=$[2+v]-$[Y+2]),X=C*N-o*A,c[g+0]+=P=o*s-M*N,c[g+1]+=Z,c[g+2]+=X,c[Y+0]+=P,c[Y+1]+=Z,c[Y+2]+=X,c[0+v]+=P,c[1+v]+=Z,c[2+v]+=X;for(y=0;yM&&(y[c]=N[c]);N=y}for(var _,P,Z,X,d,l,J={},K=[],f={},Q={},O=0,t=o.length;O!opjujtpQ`mh!\v?zepc/tw/qbNxpmg=!fevmdoj$\v!\v?zepc/tw/qbNxpebit=!fevmdoj$\v!\vgjeof$\v!~!!fdobutjEfojMw!|!*itbEv)!gj!\vITBE!gfegj$\v!\vgjeof$\v!~!!ttfouihjsCidubCw!|!*ttfouihjsCidubCv)!gj!\vTTFOUIHJSCIDUBC!gfegj$\v!\vgjeof$\v!~!!eofmCidubCw!|!*eofmCidubCv)!gj!\vEOFMCIDUBC!gfegj$\v!\vgjeof$\v!~!!spmpDidubCw!|!*spmpDidubCv)!gj!\vSPMPDIDUBC!gfegj$\v!\vgjeof$\v!~!<**1/2!-wVb)4dfw!+!yjsubNwVv)3dfw!>!wVw!|!*fsvuyfUv)!gj!\vftmf$\v!<*y/wVb!-**1/2!-wVb)4dfw!+!yjsubNwVv)3dfw)4dfw!>!wVw!\vQJMD`WV!gfegj$\v!<*yfusfw)4dfw!>!opjujtpQwNw!!yfusfw!<*yfusfw!+!yjsubNmfepNv)4dfw!>!opjujtpQemspXw!<*1/2!-efnspgtobsu)5dfw!>!yfusfw!5dfw!\v?zepc/tw/hojdobutoj=!fevmdoj$\v!<*opjujtpQb)4dfw!>!efnspgtobsu!4dfw!<*mbnspOb)4dfw!>!mbnspOudfkcp!4dfw!<*opjujtpQb)4dfw!>!opjujtpQmbdpMw!|!*)ojbn!ejpw!\v?ebfi/tw/qbNxpmg=!fevmdoj$\v!\v?ebfi/tw/qbNxpebit=!fevmdoj$\v!\vgjeof$\v!u!ts;p!mhpmDthmb4s-G!`mmjhh!i\vu?-z!eppjcu/\vt!g\v/0u0j!p$=Q!SfFeGvJmYd\vo!j\v$$\ve!f\vg?jzoefp!cQ/CtSg\v/!h\vp$ge=f!gfjeovfm!dToUjB$O\vE!B\vS?Ez\ve!p\vc$/jtgge/fqgb!NVxTpFm`gU=S!BfOeTvNmJdToTjJ$P\vO!\vQ!FeDJV!M\vB?Sz\ve!p\vc$/ftoge/jhgo\vj!q\vq$bjNofdompvue=f!!f=edvpmndnopjo$?\v\v!!\v\v?$zjeopdcm/vtegf/!u=vqqbudvlpj=o!hf?e\vv!m\vd$ojjo$d\vm!v\vegfj!e=ovfc$p\vt!/j!wufig!pdsdnG!!w4fddf4w!!s$!fdodeWjOgu\vp!ev!oujbgppmsgn!!\vcUpBpPmD!SuBsFbMoDt`qFbTsVf!ogufg!!uViWh`jDMMhJoQj\vp!hwubvspz!jg!!qenfpgDjzohfsef)oVFToFf`fMiJtH!IuUbNpBmQg*!!\v}O}F!FeIfTg`jFoTfVe!)gVfTeFg`jB$P\vN!Bj!gueifhgj!MVhToFj`pNhBuQv\vp!!v4odjfgwp!s\vn?!ztebpncq/mtfgs/3oEp!jntbtqjN!BsQb\vm!vvdofjqgTpmsbnu!ptub!n4qdmffws!3g!\vf!t\vv$gfgojeEjmgb\vu!p\vu$!j4gdeffwg!!\vV?TzFe`pMcJ/HtIgU/NqBbQN\vp!bv=o!jfgepvsmnd!otjb$n\vq!m\v,!!vfodjogbpjsenb!Sgfmwpjbtut!jmnjFhmibuuNpbuq!J\vn!jvso!jugbppsmng!!t\vb?nzqempfcs/3tEg!/fonpjntntpjDwtfuNibhqjS+P!VfHdIoObFjTeTbNSBfQw\vj!tvtojjngFpmsbnu!ptub!ng!ecfhgs!/VsTpFm`pNDFfUwBjMtOtFjTnTfN!Bt!Nsbpqme!)mVbTnFs`pUoS!Bb+s!zzjyo/hO!qwbfnd!4`!EOJqSbFnD!U4JdPfOw*!\v\v!QwBbNsMzBjNoShP!Ow`fFdT4V!!wgMfpedgbjm$Q\vp!t\v!!o\vp$jjuojdtmpvQexff!j=Wdwm!j4qdEfjws!f/!imfbbnes?p\vO!z\vs$ujfondpmfvhe!f4!d=fdwm!j!!=mgbpnhs/pgot!/*iffdbbeG?m\vm!v\vd$aj)o!dgmjv!e?!\vm!b\vn$sjpood!m4vdeffw!!=o!doppejjuodhf?s\vj!E\vf$djbogd!muvbepfm!g=!d\vvgcjfeFoofw$S\vf!g\vmgfjdeuojfp$o\vG!Tb+q!QsipzutdjbdGbtmt/fgotm/biuffbne!?\v\v*!C\v`$MjFoOdOmBvIeDf`!Q=BmNjThTiFuOtMDBpUnFnNp)oe/fgotj/giffeb!eg?j\vm!f\v$$\vj!ot+/!isfpbued?b\vG!t\vt$fjoomdbmuvfenf!!\v=*uHs`bMoFtOnOjBtItDj`pQoB/NgTtT/FiOfMbBeU?F\vN!)\ve$fjoojdgmfvee!fg!j=mufp$o\vf!N$+j!osdpmuvdebfG!t=tpfjoum/bgutf/ni!f\vb*eS?`\vM!FwOpOjBeI!Dn`bQjBoN)T*T!F|O!M\vB$UjFoNd)mevfeofj!g=fdem!jgqjE$j\vs!fq!ctptyf/ogmtb/ucfpNemzf?y\vf!uw!f5dd5f!we!j\vgQgBvNtTfTDFpOmMpBsUo!mebjugfgnv!t>f!b!ppmqgb!d\vjgujze>!+S!fsgpmufddbuGftetMfjohiihuv)pwsf!d\v4*)C1`/M1F*O-O!BwIfDd`4Q)B1N/T1T*F-O!IwHfVdP4S))1e/f1o*j-g!fwef!dg4j)m1f/$1\v*!*<w+f!SsbpeujdbboGdtft!f>o!ifhnvjptst!j\vw*fH<`!M\vF$OjOgBeIfDg`!QVBTNFT`TNFBOQI\vH!VwPfSd)5e!fuofjygffmeD!pgmjpmsf!$>\v!!u<+!!usfpyufdmbDGptmtpfso!i>h!vtpSsH!C\vU*pSM`jMoFfObOsB)IuDf`yQfBmNDTpTmFpOsI*H!!T!Ft`tBfMoQiIhBvNpBSQm\vf!y\vf$uj!g5!deffwg!j\voQfBeN)TBTMFQOIIBHNVBPQS``DFITBVO!OgFfMe`gBj*$\v\v!!e/!bs!p+u>d!buGftytufvosifh3vEp)sb!muqbipbmNgb!q<-e!swbVdwt*j/eb!<*!u\vt$ffUmbjigq!mebf!g=j!obf/es)pBmMpQDIfBtNvBgQg`jDeI)B!OgOjF!M\v`gSj*e\vo!fe$j\vg!g\vvgtjfeDopfm$p\vs!/w!Vuwf!y-uqvbsNfb3iEq)mbbm)qEi3bfNsbvqu-y!fwuV!w>*+/!sbw!Vuwf!y-uqvbsNfb3iEq)mb"],dz.phong=["?0t0w!/Imjbodujtt;z!ihqm=t!mf4e-v!mmdjohji$u\v\v!!\v\vH0O0P!I$QQ!SfFoGjJgYf\ve!$\v","~0!0u!ts;p!mhpmDthmb4s-G!`mmjhh!i\vu?-z!eppjcu/\vt!g\v/0u0j!p$=Q!SfFeGvJmYd\vo!j\v$$\ve!f\vg?jzoefp!cQ/ItPgO/Hh\vp!g\v=$!jfoedvmmvdeofj!$=\vd!p\vn?nzpeop?c\v/!t\vg$/jqobdNmxvpemfg!==!qfbedvlmjdoohj?$\v\v!!\v<$*jeoJd)mmvfeyff!U=uvvcqputv/PipfUbseb?f\vo!j\vm$!j>g!oeeJf!g\v!?VzTeFp`cV/CtPg\v/!hvoojjqgqpbsNnf!owpfud=4!!feejvgmgdvotjf$<\v!!v\vo?jzgeppscn/!twgf/du4v!qfunvjpt=t!jfwefvs!nu!ichpjpMmh!odjvpmhmuGvbpd!f4f+g!jfodfoeb)jVeTbFS`fBwPjNtBtQj*n!F}m}b!uepfug!j\v!$cfhose/jsgp\vm!p\vD$fjwgjetftgj!nVfT!F<`*NwBVQw\v!!-vqobjNgfpwsjnt!ttjbnnfq)mEf3sf3sEv!unybfqu\v!$sfpomepjDgf\vw!j\vt$tjjgneff!g5!dVfTwF!`\vBQMBQNIFBWNJBTQT\vJ!NvFo`jFgTpVs!ng!ftebgnjq$m\vf!s\v3gEj!ebomfq$i\vb!N!!VmTbFn`sVpCoP!\vu+!!bzpyN/bOqqJbonu!fB!QO\vq!bvno!j4gdpfswn!!\vtQbBnNqMmBfNsS3PEO!`mFjThVi!ugNfbeqg!!voopjjgupjstnp!QgxmfpjbWuw!!m4jdhfiwu!Nj!umzb\v!!mvbonjsgppos!n*!ftdbbnGqmmmfvsd3aE)!!fgnjj!tj!omdbmnvsepfo!!=4cdtfewg!te!?o\vp!jwubdsfzsjjoEhf!dwbfgd!4u!bwpOmpgs!n\vbgmjd!4i!uwhNowfQsputTjsubjmpvodJ!PiOu\vh!o\vf$sjugT!sebfmgvjdoffqet)!V!!?s!b1m\vv!dwfbqsTzmjfoyhf!uw!f5dd4f!ww!X\vpQsBmNeSQBpMtVjDuFjQpTo`p+s!nb!/tsbpnmqpmDffstDvvgcgfj!ef!o\vw*nCb`qMP+\v!!bv/osjpgmppsDnf!tgvmgpgbjue!!s\vf*gHs`bMdFuOjOpBoISDb`uQjBpNw+b!sbz/jsophm!pwDffdt4v!gwgMjped!b\vm*QSp`tMjFuOjOpBoI!+=!dbm/jsqpcmppyD/fgttv/gigfjbee!?\v\v*!B\v`$MjFoOdOmBvIeDf`!Q=BgNpBhI/QgMtB/)ieffboej?g\vf!e\v!$gjjo$d\vm!v\veQfB!N=BtIiQbMeBp`xFNTbVq!/ggfte/gijf$b\ve!?\v\vg!j\ve$ojfo$d\vm!vg+t!/sipfmbpeD?f\vt!v\vg$gjjoed!m=!msjphmipuDtmDfpynfnup!o=!msjphmipuDtmQfiypfouh!/5gdtf/wi!f\vbQeB?N\v`!F\vT$Vj!ggeffegg!jV$T\vF!`Q!\vf!dvoobjjgepbsSnf!wtjbtntqjmnfFsm3bEu!ptuq!f4ddvfmwb!so!fuNibhqjqMjeofhu/dgftm/giffsb!eu?i\vh!j\vM$ejfouddmfvmegff!S=!pe!?b\v/!swppmjpeD!fntbvjgog)j*e!!|f!!c=hdsm/jsqpEmjpsDffdtuvjgpgoj/eg!tf!youpvjsufjo!jogppjsunj!tnpbQuw5N!wv!Np!eyffmuWsjffwx!N\vb?uzsejpycc!voupfj!uwjftdp4Q!ebmQspptXjwu!j\v!$yjfguesffgw!!V5Wd`fDwM!J\vQ?\vz!ewpbcs/ztjwo/hh!owjfddo4b!uwtVowj<=!!\vf$efvmmtdfo\vj!$w\vb!sf!oeefjngs\vp!g\vt$oebfsguj!o4fd!fVwT!F<`*JmObTnUsBpOODbJ)O4Hd\vf!w\v!$>e!fmgbjnosfp!OVuTdFf`kJcOpT!U4BdOfDwJ!O\vHg`jMeFoHfB$D\vZ!\vb!swzVjwo!h\v!fwtfmdf4$!\vw!OX!pwsVmwe!Q\vpQtJjMuDj`pWoVu!ts;p!mppjDuh-b!shGm`tmmh4!\v\v!?\vz0e0p!c$/QtSgF/GuJjYp\v=!!vfoejvgmpdsonj!$g\vm!p~b!ub!Uxf/teuJh+i!uxj/oehJf,g!!cVhWs`/DeMJJ!Q~\v!!\vw?bzsezpjco/ht!gw/fhdo4p!iwQVfwuJ+P!Oe\vJ!!\v|$!j*ofdsmvvueyff!U=vd)m!jgqjE!jj!gepJs!n\v!ggjmepobfu$!\vp!q~b!d!!vOo!j|g*plsdnb!Cwtfjd)4!!gejj!gs!zljdobhC!twjf!dm4p!pwcO!p\vsfntbmmf<$!\vw!b~s!zd!4l!dwbNCwtQjp!to!o!jlgdpbsCnt!jn!bmup5p!cv!W\vjTfMxBNNbSuPsOj`yHs!zMj!o4hd!fwwf!d<4*!owpXjpusjmtepQQpwtNjwu.j)pfo{!!FFO!W4NdBfQw`!Sh!iOu!t4Mdjfuwf!Qb=q!/bg/ts/pimfpbDew?v\v)!!\vg$jj!o|d!mfvtemff!!=~c!m~p!pb>e!?b\v/!s\vp$mjpoDdwmvv)e!fg!j=!p|j!u*/ugotf/sibfqbteo?b\vs!uw)p!jgej!!n\vbgjjoe)o*f!$|\v!!wu!vsspfm*p!D|w!v\v!$\vjfgtemffg$!\vV!W<`*DzMyJ/Qw\vV!wv!w-Dqpbmnp)sE!3>f!suvfuy"],dz.hueSaturation=["?$TjWoodfmfvsedfT!u=jcm","~v!oh!!swpfmdp3D!hwbVswG<`!m\vh$!e!!nmbtqi`!i~v!f~)!gb!uf!hiovbfSStbtofhofu*i!h|j!mg!mv!ij]ooWpbjmuvbfs!v,u!b)ti!v>f!Bfmhmo!b,S!oipvjfuSbbsovhufb*t!!01!/f1h*o!bsSffuvvis!o|!!w*bfmhvofb!s,!!>2>/!1sb!mfvhfo-b!sg!m!!tfbhuovbssb!u*j7p!o>B?m!mf-h!ogbmsp)b!ug!jt!b~u!v~s!bb!mfvhfo!b>s!!j|o!W*b6m/v1f!!,+!!*)s2f/u1o!v,p!dt`bfuvvis)buubjppmogB!m=m!!i,)!!tgbju!v|s!b*u,j,psofSuboovhpfd*`~!!sgfmupobvup!dn`bfqv`im!juhoiju)o!fstptg)!gh!ff*h!o|b!sg!mupobju!!p!imtjfhsiiuuo`fftvtiB!mumb!p,m!gm!j!!jig!!u)bwp!m=g!!1!!)mwt!i,!!42d/f1w*!<)!ws!p+m!p)d2!/51d!f.w!!j|o!W*b)movjfb*n*!b!ui!!i~v!f<*1!/|7!!j>g,!!)ii!v|f!!*=1!/11/!1=*!!ii)v!fg!j,!>~!!2i!vif!!|.!>f!t2m/f1!<~!!g*!!i=!!|2!/*1y*b!Nsdf!t>!>>!!hg)2!!g,j!!)fgt3m!f.!!~g!2<*b!u+m!f7E/d1!!0+!!*icv!f.f!!ij!g|!!)*)y3b/N1d!!+>!>i!vsf)*!!g=j!!2!!ygb3N!!0g!2b!u,m!f)Egd3!!@.!!6g/21*!!=+!!m)!)>3!/t1!!<0o!j4N/d1!*.!!.y!biNvdf!*>!!+b!u7m/f1Eo!jgN2di!tmm!*m!/yzb!N>d>!!u1b/p1m*g!!|h!)wofjdn4!)-ist)mo/j{n*!<>!!~o!jfNmdt!fu!b|p!mggm!p/!6h*!!ugb3p!m>g!!i+!!s)!2u/b1p!m,g!!i1!/i1t!m>/!{t!!,u!biptmmg/!z/!zi!!+u!biptmmg/!{|i!33c/h1s!!+4!diftwm!/~{!!<.c!hgs3!!!s!hcc//chh!s>!!w!H!\vs!p\vm$pjDohdbmsvGe`fm!h=!d\vpfntnmpfo$?\v\v!!j!es`pqmpptDjhubjspGo`!m>h!!s\vbSoBeF)OhJmM``GFsTbVh!Dgpfpesgej/$y\vz!*|!!1n/j3y.)!3-/C1H!S+`!uegjjuiitf`s"],dz.pick=["~0!04!!ovpVjwuNjbtupsQj`ymp!ssnp!mnpbDui5d!uvbNCpwe!f|m!W*jsfpxmNpbDuisdjuyb$!jwgVewf!g|!!C*BfUsDvIuDyPfMUPvS)\v!!gvjo!j\vgfptsmnf!$c\vp!pj!owhV!ww!f\vdQ5J!MwDC`bWuVd!igDfpemgpjs$<\v!!\v\v$gfjoeeojfg$\v\v!!\v<$*jygfeufsgf!wV!W+`!DyMjJsQu\vb!NwmbfsezpjNovh)!4wdffdw4!!>w!Vowp!aw!fSdF3Q!QwJVMwD<`!Y\vP$Cf`oYeBjNg!\vg!j\v$$\ve!fD!Zy\vf!u\vs$fewf!g5jdoffw!!V\vT?Fz`eJpOcT/UtBwO/DhJoOjHd`oGbMuBtUo`jT=I!BfEeFvEm\vd!o\vj$$j\vo!d~m!v\ve?fz!e=pjco/ttuwb/ohdojjooho/jwltt/=i!ffbeev?m\vd!owjb$s\vz!j|o!h*!hwofjdo4o!jwlXTpfstmVevQ)p!tgjju!jv!DemfjnqsMppgdtbombUssub!o4tdgfpws!n<<*!mwbbnsszpjOobh)!4wdffdw4!!>w!MmpbdnbsmpQOputdjfukjcppo!<4!d\vf$we!f|g!j*oefj!pVwT)Fo`jTbLnJ!OeOjJpOwH!\v\v!?\ve$beffig/jtowf/!hCoPjOoFo`jUlFtY=U!VfSeFv\vm!dvoojj$g\vp!sc>p!pbm/!svpEmjptDdhbbsseGT`fmmhf)d!ugbjc!m\vfgD!psmppmspU!ssbpomtpqDbhsbfsoGu`$!jsgpemfpgD!hVbWs`GD`MmJhQ!\v|!!w*bsspzmjpoDhi!dwufbdC4v!)w!Vgwjg=t!/bi/fsbpem?p\vD!wwvb)s!zgjjo!h|!!wfftdm4f!!w~M!p~d!bo>h!!bw/fsdp4m!pwDXwpvs)m!egQjp!t|j!u*jupoofs!zsjpomhp!Dwwfvd!5\v!fwtCmbfu$d\vi!Dq!csppym/pgDtw/vi!f\vbQeJ?M\vD!`wWpVj!eg!fnebgjjo$)\v*!!||!!*wffmdc5b!uvdwfDmpfmTpess3!w!bbsizqjmobh!!uwbfpdm3g!!ww!f3ds5p!mdppdm!p5sd2f!w>!!!!tsbpnmqpmDfhsb3sEG!`jmnhb!h!,t!vnnv!t>!!!!-uffvymubvws!f+3!E1)/j4n!b,h!fy-/!wwVfwd)33)dwfVww!/-yf!h.b!n5j/)1E!3+f!swvbumyvffu-!!>w,V!wn/vzt*!*V!wu!f-yfuvvmsbfw3!E+)!j1n/b3h!f,-!!yw/fwdV3w))w3Vdwf/wy!!-.f!h4b/n1j!)+E!3wfbsmvvufy-f!uw!V>w,/!zn*v*t!!+V!wu!f-yfuvvmsbfw3!E+)!j1n/b2h!f,-!!yw/fwdV3w))w3Vdwf/wy!!-.f!h3b/n1j!)+E!3wfbsmvvufy-f!uw!V>w,/!zn*v*t!!+w!!u-fyy/uwvVswf)33Ed)fjwn!b-hffh-b!nwjf)dE33)fwsVvwu/yyf!u.!!>2,/!1n!v+t!!w!!tsbpnmqpmDfhsb3sEG!`jmnhb!h!,t!vnnv!t>!!!!+u!f1y/u4v!s,f!3zE/)wjVnwb!h-fy-/!wwVfwd)33)dwfVww!/-yf-h!bwnVjw)/Ez3!f.s!v5u/y1f!u+!!>w,b!mnvvft*!*b!wu!f+y!u1v/s3f!3,E!)zj/nwbVhwf!--!yw/fwdV3w))w3Vdwf/wy!--!fwhVbwn/jz)!E.3!f4s/v1u!y+f!uw!b>m,v!fn*v*t!!+b!wu!f+y!u1v/s2f!3,E!)zj/nwbVhwf!--!yw/fwdV3w))w3Vdwf/wy!--!fwhVbwn/jz)!E.3!f3s/v1u!y+f!uw!b>m,v!fn*v*t!!+w!!u-fyy/uwvVswf)33Ed)fjwn!b-hffh-b!nwjf)dE33)fwsVvwu/yyf-u!!w>V,w!/nzv!t.!!<22/416!2+/!1w!b+m!v*f*"],dz.blurDownSample=["?$TjWoodfmfvsedfT!u=jcm","~v!oV!w)!u-ffyhubvnsjf)3EE3)fjsnvbuhyff-u!!w,V!w*!*,1!/u1f!y-f1m/T2j.{)f3!d+f!ww!f+d!3f){2j/T1m-f!y1f/u1!*,*!!w,V!wu!f-yfuhvbsnfj3)E"],dz.flow=["~v!o!!wofpdj4u!jqtpptQj`umjhp!o<<*!zw/bospzjjuojht!pwqf!d-3y!/woVpwj*!!w|V!wj!gf!t)mvft!ft!pwqf!d-3y)/qopptjju","~d!ps!p7m/p3d9!4+2!9s6p4mj!gsppsmnp!DthbbnsqGm`fmsh3!Ec!msfpomepw!!!.b!u*bqof)uwtV!w-/fzm-h!owbV)we/pyn*!!>0!!fqmjh3o!B,e!p1n/!6uq>b!i1t*)!u|b!pvmwg!!>0!!w1V/w2!!,>!!1q/f6uf>m!h2o*b!!|-!1v/w3!!>+!!w*fwdV3w))mifuoh"],dz.fxaa=["?$TjWoodfmfvsedfT!u=jcm","~v!oj!gbp/ssnp!mwpfDdh3b!ssGf`tmphm!vg!jsopfm!pGDYhBbBs`GR`VmBhM!J|U!Z*`)Qo5j!b2n3!/e1j\vp!w\v!$~e!fG,m!pzb/uN4t!pwqf!d*4o\vb!q\vT${esfpgij)ogfj!!G),y!*y!/dNmtbpnqq!)*yo-b!q1T/{1s-p!i2a/)1g*j\v!!<\v*$Ieyfjgqjcovft!!G-yebpbpUHfuyf!ttgbgnPqmmffysj3qE)\vy!b\vn$!e>f!gyjjoqfc!vGTyubfbtUgfgyPUmpfqy)juq-!!uqb*p!muGfbybuyvGs!f<31E/)1u!-;!!qu-f!t1g/g1P*m\vf!y\vj$qe!f@g!joobfq!TGeypbpbhU!f>y!Pegpgp)Huu-f!tqg-g!Ppm-f!ysj*q!!uufbypumvGsbfb3yEG)!u<-y!jqq!c,v!T)zpu!j+m!bsv*R-b!b1y/g1!*+\v!!HGyyjbqbcGvmtp!b>u!!IGyyjbqbcMvvtn!bu)bGpymbGbbGbmypGb!u<56!/s1h!c,b!**!*|q!dsSfiuuvhsoof!Msohbcqbt/.z)m!pubfut5g!gGPymbfbyQjjqy!fumbTpimbGebfbsy)G!!GG!mHpybjuq5c!vgty!bubbDppmoGtbpbmyfGQ!pm!fo4b7q1TUefpypFhy!qmCpjpbCtbObfyhGP!oo!tuptmef!4u7b1pUmfGybFbyyqGC!jb!GOmoppbjuu3d!fgsyjbeb!RmvpbpmCjbubzySGd!q5!!qgdySbibuDhpooftMpombfqStd!quGbspbmnGfbPbqyuG-!!bab!D*p1o/t1p!m=f!SQdeqoGFsbbnnvfmP)q!u>3!-Q!oGbyqbTbeGpmpphb!um5p!pgCybbbbyDGp!oP!qiuu3h-o!fGMyobbbqGtm!pubbup!mgGybbbbyRGv!byab!b*G1m/p1b!u=!!gOyebobFRbvnbvmmj)u!z>F!eOhofbUqiTsefptpihp!mmep-p!CGbybbybGG!mh!fQUuitsef!t*iopbmqeTN{jsop-i!aG)ygbjb!Ge!hOfuTtieb!s*qoobfqtTt{-s!pGiyab)bgGjm!pf!UQiustfet!iupbmpem-G!bGbyybGb!Ge!hOfuUties!futbippmmGebNbjyoG-!!~G!y~b!b~G!m!,*!!z|/!QGtypbqb!G*mQpfboup3e!aq)pgtjN!<V!Rq`pBtB/YyGp!!q>p,t!/yz/f!oGpyebab)U!f}y}U!p*qO)fuofpye-a!)q!p>t!NQ*Ob.u!!zm/vOntbpTq!!>*!OGfyobpbeMav)ngbj)!Gp.b!uy3/)O1t/p1q-!!*2O/f1o*p-e!ag)ygbjb!Rz?*!**n!bQFf!o>p!eG!yg?)!u*fOye-o!FqbpntvNm-)!tGcybb!b>G!mOpfboup3e)!2s!bQnefo/Fybzn*v*m!!OGOybbnbvMmv!n.b!)OGeyobFbbUnfvymP!g>g!)OuefoyF-b!nqvpmt!N*-O!fGoypbebaG)mgpjb!u<3*)*1z/y1/-Q.t2p/q1!*--y!fguy)bqbpRUvybfmUjbubzySGd)qbGnsvbMnbfb/yyGz!*>*!j!!Gp!bOue3o)F.b2n/v1m-!!*1O/f1o*p-e!ag)ygbjb!R|v!b*mQjOufzoSpdeq)Ggsjb!np!!n>b,y!)zm/vQntbpTq-!!*mQvfnobpNe*a<)!gGjy!bY!Gn!j+o!)ym/vQnObgTg-p!!m>v,n!byN/*Qo!pnebay))!m}v}n!b*FO-f!onpbeyaT)N!*>`!BnBjYoG)!m+v!nzb/FQ-O!gngjpo!T>N.*!b.u!!yn/jOotXpOq!!>*!Onfjoop)emav)ngbjO!-b?u!!*sQbeoohFfbNnbvym!)>t!cnbb!y>)!nQbfyoXpOe-!!b?u!!*sObeoohFfbNnjvom!)>t!cnbj!o>)!nOjfooXpOe-!!b!yQTedobFmbfnev!m>!!*sQbfoohpfeNab)yg!j+!!!!GOyebobFGbmnpvbmu!!*sObfoohpfe!a>)!gsjb!oD!mQbenoqFfben!v>m!!n*bQyf)ogpyebab)Rgvjb!m|!!s*bQoOhffo!p=e!)sgbjo!hs,f!uzv/sQot!psqh!c*zQNf`!BGByYbGb!M+v!nyb/)QGOygbgbpU!f>y,P!gyg/)Qutfpyq-!!*qQpftoNp-e!aG)ygbjb!GR!vQbOmfjoupzeS!dT.F!!z>/!OGtypbqb!M*vOnfbo)pGeyab)bgUjf!y/.1!-y!/2O/t1p*q-!!*gOyfbobpRevab)mgjju!zy?b!b*GQmepobFub!nmvvmn)btOcFb!!>>!!GQyfbobpMev!n-?!!q*pOteNo-F!bGnyvbmb)Gtmcpbb!u>3!)O2f/o1p-e.!2y!zQ*e*o/!1G!y+b!bOMOvbnnbv)mG!y.b!bOUefoyFPbgngv)mu!f>y!-O!eqopFtbNn-v!mG!y*bObfGomppebau)3g)j.!2G!yQbeboGFmbpnbvum!!m*vQnfboOpTe!a>)!gmjv!nM!bmbvynGb!X>!!,O!emovFnbbnFv2!Q2`/Z1U0JsMbBoVhRf`j,y!OzT/XQFt!p>q!!m*vQnfboOpTe!a,)!gmjv!n!!>),.!3y//1Q!t+p!qm!v*nQbfNo*p!e,a!)mgvjn!b2!!Q>O!f)o.p3e/!1m!p+p!CmbvbnybGN!*T.F!!z>/!Omtvpnqb!O*FO!f,o!pmevan)bgTjF!<Q!Omgvgnpb!O>X.!!,y!/mOvtnpbqO!F*b!s)h.!3>/?1!!*+Q!emovFnbbnFv*m!),t!cmbv!n>b!OQFfToFpe!b)s.h3!/>1?!!+*!OmevonFbbOn*v!m,)!tmcvbn!b>O!XOOfFob!nmvvmn!b>O.X!!Q,e!omFvbnnbvTmX!<b.T!XOTeFo!F>b!nmvvmn!by!bpbsGfm[pUbMuN!bfnevhmf!Imppsp{C5b!b>y!G)!b*!!G,y!jbqcctv)tf!euhbfpImpGsb{b3y*G!!>)!bNcNtb)nfvemh!fuWbfpsmuG2b*b!y+G!!3b!y)G.!3b!XO*O!b,n!vmmv!n*bOOsXjTbXqf!U)b.b3y/G1)!b+n!vmMvbnbbyTG*!!>,!!QmevonFbbTnXvTmF!D!ybjcqtc)vfte!h>f!IFpysj{q4c*v!t,!!ufbephmfGIbpbsy{G5!<y!Gb)cbtn)vfMebhbfyWGf!s>u!4O*e!o,F!bfnevhmf!Wufbspum5G)!!m>v!nEbyOjXqTcXv!t,!!umbvpnmbGObFbTyFGO!gggypb!b,R!vzb/mCjtupzqS!d>q!Gzs/bQntfp/qy!</!QfOeghgfpI!p,s!{y!/?C>t!pfqe!h>f!Wyf/sQutj!gz)/aOitppsq{!TB!BmYvGn!b+X!n!byT/!O>t!pmqv!nu!hgoyfbmb!R>v,b!mzj/uCztSpdqq!G*sobbnqfT/{zso!f)mt!v>c,q!jyy/BC!t+p!q)!2*/o1b0q2T3{/s1p*i*a!).g!jm!v/!1m!v@n!b*Oo!b.q!Tm{vsnpbiN)G!yzb/bQGOmgpgbpu!!z!umjvmnbbvTR!b.b!ymgv!n;b!N1!!>y!/mQvOngbgOp!!,>!!mzv/nCbtTp!q,!!y!byb/CCptppmq!!q3!ubbcptm)GhbsbbyeGj!fq!dbScytj)qhcsvbte!j+f!o*uCTy*jo!uD!y>j!qncbvyt)!bucbtp)mhGsbbbeyjGf!oj!foohujTT*i*uf!ys-p!mgpmDphbbus!Gt`jm{hf!-*!i2u/e1j!X0m!ftyjj{Qfgj!yxfwmvI!f4jdhfiwu!!<>f!{2j/T1u!v0m!!)0t!j6{/f1!!+>!!tiju{efj*Xg!!sp!biuu!ejjoXumffsyqj!q>!!ugbspbmdgu!)y!ftum!j>d!fm!b.w!!j5oduffws!q|E!3jsofumfqsnqb!t.!!n1s/p6gu!btpmmjgd!fn1s!p,g!jtojvh!o<)wdVfwo!u3fdsffwe!Jhooujfzssqb*w)!tdcmbb!n-q2)fsmhqcn/bht!!+-!1tfmmjqdnfbItf)jyhjinu!-o!szvQujfysf!m!!.2!fzmQqjnybftm!I4fdjfhwi!uv!uwyffdu3!)>!!s1hfcm/qsn-b!tt!m4jddffw1!!<+*!!tumfjtdgfgIPfojfhfisuh!!,,!!husifhfjofPIgfgdtjfmut!!*+c!hwsf!d)3"],dz.points=["~v!of!mfN{bjuTsujoyj!+v!ofj{gjpTsuno!jnpbQu`5m!hq!s*pfkwfjduudjfpqotNsbfuQstjjy)5>!!w^j!f4x!N]b^u!s3j!y]m!ffp!oop!mfp{sjg!tff{ujm!pospj!go\vp!jvuojjtgppQswnn!!g!!sofptjpumjvtupjQpwons!sebfzno,h!!ugfmtpgbguP!ww!Q|p!j*ozubTsjs{Bfw!!wubfstzgjgoPhw!!w~f!d<4s!pwmXppds!m>e!QspptmjpuDjwp!o|o!hs*p!m|p!Dw","~$!e~f!go!jsgppmspnD!hwbfsdG5`!mehj!g|g!vfttfmb!us!ppmqpbDdhjbuszG<`!mvho!ji>b!Ubf/tsupo+d!msvpemfp!D=fctmvpgpgnjTef!m/,i!fwbve!?<\vf!mvbodjTgwpvs!n+!!wefsdp3p!DvuwoTjdpbQm`fmb!swzvj!o3hd!fwwf!d|3!!*wfPmgcgbtufdufY!`sDpMmJpQDQfFtSv!g?g!j1e\v!!|w!bfstzmjfo!h~!!w!!=sdpmmjpqDcfptyv/gggtj/ei!f|b!e*?s\vp!mwppDjfet!vn!b%j%o!)h*o!j|l!d\vj$qjao)d!mgvje!fT>f!mff{djuTjuwofj/pgQtw/)c!pgejz!?\v"],dz.bokeh=["?$TjWoodfmfvsedfT!u=jcm","~w!b\vsgzjjeoohf!$w\vf!d<31!/w2V!w>!!vsopjmgppDshnb!sgGm`pmbhu!!e,v,t!|,!!wmfpdd3!!!!*w:f3d/31)!2-/:13-/!1b.t)q3fddfuw*)j,g!!mepfdg!ju!ypfsuu!i>p,h!smbpqdi!jf!up!s>u,i!pmhpsdb!qf,o!emjpgd\v!!<\v*$5fsmvtmfc\vg!p\ve$!j+g!!*eufdgfjsosfped)uVdTfFq`tGbM!P+B!U*`:U3F/Y1U!V-S:F3*/\v1!)g3mdpfbwu)!!w,j!fzxy[/!w>V!wq!f-sstpqmfpdDuuj)wEf3EffsqvuuiyUfpuW!j>f,x![m)pudf!ys!pqmfpsDtuq)fEd3ufjswvfuEyffquu!i>U,p!Wmjpfdx![<)*v8osqvbmdclgSpHeC!B+U!p*Eufdqfusis)pudfuydufvqstfb3!E+)!u*E:f3q/u1i.-!!-w:V3w/*1*.-)!3odffbws)-!!,g!bzsy*/b,u!!mgpbdd!uv!m)cggppdev!t+!!,*!uwdjffsxs[p*d!!znyj/ow)Vgwb!d-usppsm!p,D!us)bEo3hffs-v!u1y/f1u*!<>!,f!mmtpfd!!gg!pneb!y+)!g*buddufpsss!p.d!usdbfoqhtfb-!!+1!/*1:*3)!32d/f1w!).!!,f!yzqy)/.weVfwo!t-jsupzm!p+D!ue)fEo3tfjsuvzu!y+f!ug!b>d,u!pmsp!d+!!s!pwdfudd3f!q)tdbm!b+n!q*)5g/b1d.u!p-s1-/!1.)n3bdyfcwm)v!s,-!!znyb/ywcVmwv!s-*s*pf,y!fmmp!d>!!b,!!>m!ptdn!p)!Eu3ffysfvmu/ybf!,e!pmgpcdm!vs!vwmfcdg3p!e)!d+m!b*nuqd)fbsmsqpidbu!d+f!qbtqbf!s+u!v*s:f3-/!1.!n-b:y3c/m1v)s3-d!fnwb)y!c,m!vzsy*/*ws,:!!m>p!de!p+!!e*p8g4c/m1v.s!!-+6!21//18)<3!dwffwd)3!!,e!pzgyc/mwvVsw5!!->s!pemppgDcum)vEs3!f+s!v1u/y5ff,d!5m!pddp!m:!swvfmdc5g)p1e/!1+*!<*!uddpfms!s,p>d!uudffyqutvbs!f+3!E*)6u2D/p1m.p!s--8!4w/V1w./)y3zd*f/!wuVfwy!u-vsspfm3pED)uu)DEp3mfpssv-u!ywfVuw!/>y,z!!m,p!d)!w!!zuyf/ywuVvws!f-3sEp)mupDDpum)pEs3-f!swvVuwy/fyuz!!>,,!!)mwpfdd!3<)*1:/s2v6m-c!g1p/e4!8+*!!*+u!dbftsqsfpdduuddpfsqstfbd!u+*!!*+8!4e/p1g!c-m6v2s/*1<.!)d3pdmf!w,)>!!,u!fzyyu/vwsVfw3!E-)supDmppmDpus)-E!3wfVswv/uyyzf!u,!!>),w!fmdp3d)!1f!wu)f!y,u!vzsyf/3wEV)wu!D-psmppmsp-D!uw)VEw3/fyszv!u,y!f)uw!f>d,3!)m.p1d/!4<8*-:!s1v/m2c6g*p!e+!!+b!t*qufddfusdsppsdsufddfuq*t!b+!!+e!p*g6c2m/v1s.*!<-!8d4p/m1!),3>d!fuwf)y!u,v!szfy3/Ew)VuwD!p-msppsm-p!DwuV)wE/3yfzs!v,u!y)fwuf!d>3,)!1m/p5d1!-.!)u3fdyfuwv)s!f,3!Ez)yu/DwpVmwp!s--s!pwmVpwD/uy)zE!3,f!s)vwufydf3u)!1>/,4!8m-p!d.!11!)u3fdyfuwv)s!f,3!Ez)yu/DwpVmwp!s--s!pwmVpwD/uy)zE!3,f!s)vwufydf3u)!1>/,3!:m-p!d.!11!)u3fdyfuwv)s!f,3!Ez)yu/DwpVmwp!s--s!pwmVpwD/uy)zE!3,f!s)vwufydf3u)!.>1,/!2m6p-d!!.<1*/s4v8m*c!g+p!eb!t+q!f*duuddfpsssspfdduud*f!q+t!be!p+g!c*m:v3s/*1<.!!d-p:m3!/,1>.!)u3fdyfuwv)s!f,3!Ez)yu/DwpVmwp!s--s!pwmVpwD/uy)zE!3,f!s)vwufydf3u)!1>/,1!-m!p.d1!/<5**s!v+m!cbgtpqef!d+u!d*pusdsffsdsup*d!u+d!feqptgbc!m+v!s**6<2!/d1p.m!!-,8>4!/u1f.y)u3vdsffw3)E!),u!Dzpym/pwsV-w!!w-Vswp/mypzD!u,)!E)3wffsdv3u)y.f1u/!2>6,-!!m1p/d4!8<**!s+v!mbctgqpfed!u+d!p*susdffdsus*p!d+u!defpqgtcbm!v+s!**<1!/d1p!m-!5,/>1!.u)f3ydufvws)f!3,E!)zuyD/pwmVpws!--!swpVmwp/Dyuz)!E,3!f)swvfudy3f)u.!1>/,3!:m-p!d1!/<3*:s*v!m+c!gbpteq!f+d!u*dupdsfssfsdpud*u!d+f!qetpbg!c+m!v*s6*21!)u3fdyfuwv)s!f,3!Ez)yu/DwpVmwp!s-"],dz.ssao=["?$TjWoodfmfvsedfT!u=jcm","g0j0e!oifj$o\vu!t~;!!~h!mo!dsmpvmepfD!h=bqsbGd`lmjho!h|?!\v*!ovpojjugdpfssns!piDjbhninqb!ht)b!ngqjm!f~s!3~E!!n!!sgpmmppbDuh!bgsbGs`o!NsbpumspjDyhJboswG<`!mvho!j|g!p*syn/!onpbjuu5v!mwpjtffxsN!b0u!s1j/y2J!o=w!<*!6v/o1j!g.p!syn/!wcVpwp)mt!cpbs)u!igpji!)sipjmhpiDqh!bgsmGp`bmuh!!e|-!!*i6j/h1i!q=!!gym/pwbVuw!){!Ogfjb!s|-!i*j1h/i5q!!>g>m!pfbeup!N{sGfbeso*f!s|)!!sgfju!vfstom!f)!{~G!b~s!!<+*!b{/Omffbysf*U!f0o!f)d{tG!b-s*!p.B!meb!o+j!g)!{.G!b1s/!2.!!-{eOffjbmsq*q*Bi!`sppsmupiDph)bisjGh`imqh!!g|m!pfbtum!fe!-~!!io!fsbpsm[p-D!hibjshGi`qm!hg!m|p!b*uy!/gobpsj[u*v!m|p!tsffsu!v0s!o1!/o2f!b=s![*!6,/!1)!g.b!sy[/!w.V!wo)ftbcsb[)*!!g+j!!efp!bsup!mep-D!hibjshGi`qm!hg!m|p!b*u6!/o1f!b=s![y-/iwjVhwi)q!!ggjm!p|b!u*!1g/b4s![>*>!!|f!egpmNpsbfue!oeffsq)u!ig!j>!!fqtpmxf)!3~/!1<-*!be/!m+f!ymfpUhf3o)fgdbts![-!c,h!s2//m1f*y*f!U.f!o2f/d1tb!!s>p!mgpbDsh[b!s0G!`)mghb!s|[!!*.1!/o3f!b>s>[!*f!!ggjb!sf[t!m+f!!o~f!bq!Bbp!b,!!-c*!10/!2e)f4qdufiw<)!ysjfnu!v)s5od!fpws!u>i!ps!p@m!pmDjhobfsbGs`jm{hf!`|e!f*q1u/i2`!p>s>u!ifpe)p!NmsjfoeEoffqsu)i!-g!jo!ffbtsm[f-!!~g!bw!fsdp4m!pqDphtbTs*G!`|m!hw!f|d!3*!1v/w1!!>>!>q!pfteTp/Nyszf*!*qzpmtqTj/u{m-ocfhbss/1!/g2b)s4d!!q>p!xe)f3j/m1q-q!B{p!b+!!4mdpfhw3!)!!>g!bpsB[m!b0o!j)gg!b~s![1!/g2b!s-[p!B+m!boofjbgs)[y!j0n!!)>o!fpbBsm[b!o.j!gg!b-!gbg!P,s!pcu!d0b!GeufoqfuniuW!fsdp!u>d!bwGfudo5f)nvuwt-v!kmejbo!Eufbqpumig-!!<2*/!11*/!1+!!;3!/11/!2.!!@2!/s1/<*!wwVfwd!5-!ixuqqpftE!f>o!fqdstp)kEf3dfusjvpuoyNfbuu!s>j>y!Jso/w*!w+V!wd!m-jiquWqffdE!!wofPds3p!uddpbpGsueo*f!n|u!t\vv$kjegbe!fugb!pMmPgH!Em!egQgpPtsMppuhd)bwGfudo4f)nduptpvskee-b!!eufbqpumig*!*<b!qetfoqbusiu!)+E!33f/s1v!u.y!f2u/!1>b!/w*fwdV5w)!d-pfptsmeb!G+X!E3z/d1o!f.s!b2q/t1o-b!s{u-)!E23/f1s*v!!wgjgfPxXTEqzbddoffQspbtqjtuojbpsou!!>u!bqpsmpgk!f|d!u*jfpsobNxbBuzsdjoyfJsobwq!t+o!bdsmuj)q!Tgqjb!d~f!Q~p!tu!twijufpxpTnqtb!d>f!QspptujdubjGphopu!qxfpEshmpegT!q+b!dzfuQjpttojfuEjhppog/!x+o!/sypzu{d-!tjpwQfbds3f)nwbVdw!!)+f!dsofbtuptmjveu!j>p!oi*ug!!u!!>u!fpyBfmmbGofjugd!iu)btpdmfgo!f\vEgfjqeuoif-$!\vq!!~.!!)!3s-/!m1f*y-f!u1!*|/!y*<1!/g1m!p>b>u!!sm/2m!f>y!fuuf)y!fgmjG!f2!-s!/1m*f-y!f1u*!/\vyIg!ju$f\vy!f\vmgGjfeuodfi$)\vt!d!!1m*f/yyff!$u\vf!y~f!m~G!fi0-!!mqf!y,f!uj!w|f!df3t)m3f-!!~1!*<-*!w1V*w/!y-f!suvfuyyffmuG!f>u!dmif)ytfduf!o|f!E*f1q/u1i!->!>q!!u.i!hjjwffXdm3b)u1p-u!)3!*g-j!!1~*!/~y!<g!ouJffymfqmnGbftu!d>i,)!tmdffyoffuE!f!,j!wufidh3j)f1X-m!b2u*p-u!!1<*l/dyf2!!u>i!hujffyxf!muGbfpumdgi!)U!gugfpymfmmbGGffuddoib)uttdjfeo!f0E!f1q/u2i)-!!+q!!u,t!jjEwffodb3m)Q1u-o!f3h*o-b!u1!*+/!y1m!!l>d!fbicDtf)h)o3b/s1!!u+b!pmm2g!!.f!mbqcntb)T)t3p/Q1e!m+s!psx2)!u.p!es)3t*c!b.!!>d!1u*to!bbuc!tu)b)p3m/g1!!<+*!wcV2q!!.-!icu3q*f!E.f!mdq1n*bf!hb!c>t!)f)m3q/n1b!T+t!puQ2e!m.s!pux3!*4!d.f!wd!1<*1!!bhcfhu/XppgsomJefQmpqtn)bdt1!->!!wfVmwq*n/byTzm{b1!!)-eqm!!-=f!tevsg*g!j@E!ud)fi!d.u!fhGfmufXypfsum!e>Q!pptg)omJ2f-m!q)nwbVtw!!5.d!fwwf!d<3y)/2*/11!!-0q!-sifutqpfmEveufjmpqon/byt-o!x1p/e1)*i*d*u/fyGzm{f!y;f!u.!d>f!!i,u!qhffEufXmpqsnmbetQ!putb)psm2g-!!<)*w6V/w1!!,+!!wofpdj3u)v2m/p1t!f0s!)s!f0t!p*mqv)u3jdpfow/!y>-!!w1V/q1!*3*d*f/wy!z<{*/!1)!e+c!!o=p!jeuuv*m!p@t!fdsf!!+.!!whVfwu)X!p)s3mdefQwpjt!)>c!2q-!!3)dwfVwwj!!./!1u!f0t!gsgfpt!p3mdvfuwj!p|o!/*z,*,*z*!/!=.!dzf!!<,1!/h2f.u!X>p!szm!euQbpptm)gu)2s-p!g)!w|V!w*!,,,!yw!f1=-!!y2!/<11!/02!.s!f>t!pym!vuubjppmog/)zs*p*g*!/o!jfgtpVspnU!gigjphmimqb!Gtfbdnoqbmuftsj3eE!!utbdpfmogf!Og!mfptbVup!UutjvnjfeT!BuNiQhMjFfTX^m!btubpnuq!mufbtpm!pmgbgn!!ttdpsQfefmosTpqxb!d4fdSfbwe!j|v!tfu!4m!fnybfluf!S|p!u*b1u/j2p!o>[>)!gimupqbfue!)u!igfju!b<*m!f|y!fgum!p5bduf!wd!!\v>T!FdSpGtM)BuIi!fgufbe*gV!wt!j-oi)uuqiffEufbo*f-!!i.u!qtf-e!!1u-b!ptm-g!!d<-*!w1V-w!!1--f!t1v-g!g2j*E!!gmmfpybfuU!feoffqduti!!5>d!fuwf!y|u!v*s)fo3jEb)nt!defjopfwE!f~q!u4>2!421/11/*1!!|)!4hdmf`wG!s-bchhDsp/mfpvsm!b>w!!w)fmdb5v)rwFfodb4i)U2t/t1f*m-!!)24/d1f*w/!1h!f)u4Xdpfswm!e.Q!p6t6)1e/f2q!u+i!-*!!w*V!w7*7<7!2\v5$/j1g!e)f4gd!fIwB!M-GcShFsT/\vf!vwmfbdw4!!)oxppsqn!b)my!j>n!!u)f5ydufvws!fo3sEv)utfdsf!o|f!O*p!sfnvbmmb-w!!w5Vdwf*w/!sohjc!<)!C\vH$SftmptUfs\vb!fwofjdM4!!5odpfswn!bQ!bdspfnnqbvdu!f4Odpfswn!bnms)pxgpjsomve!Qo!fwEfhdp3g)!!u2b/p7m2g9!1n4s4p:g9j9o8v5!:<9f:s6b-x!B2z/d4o3f5s8b2q8t:o6b8s3u5!5m8p5p7c!!*nu!mivbNssnppmopjdp!vmtpOpvcn!cnfssptg!j+o!vg!sp!ggjsobvd!u<)hoppgj!tmfp/psch!*nq!Twoffdf4s)d1t/!1m-p!p2c/!1n-s!p1g/j1o*vn!swpfgdj4o)v2!/<1z-u!j1t/o1f-u!o1j/!1u*bd!!o4pdsfnwb!mnjs{pfg)jdosvp!tE!3dssfpmtqtn)botp!snnsbpmg-j!ouvb!ob!qntboub4s)uu!bEo3hsffomuq-n!bctj!uqbiohhjfio!un-s!pogpjsonvb!m<*f!v+s!UnXbElzfdSopfusbbuqjtpoob[s)uo!pEj3tsff/msq!n+b!t3!/q1i!h+j!i4!/n2s5p2g6j:o7v3!*u!!1E/31s!!<1i/u1qn!bttd!sqfifhojTiq!bndsfpSgbjeojvv!tb!msmppmgpgDUhpbVstGf`!m>ht!d\vsgfjfeooTfq$b\vd!f~S!b@!!ospbjetjvvmtdUdppV!t|f!!*+1!/e1j!t>u>b!oodpfjGtbvmmmdpdgpg)!!;g!js!b+!!o1p/j3tP!M)!ngjfoe)g!j1$/\v2!-~!!eG0b!momppjgtgvUmpdVdtpf!!|+!!*11//21!!*?!!0u!oovfpbds)*!!g+j!!g~x!j),x!pusomvepQdp!t<-l!ddfbinDffshboQbpst!*+*!!f0m!qsnbbeTjdvdtpU!p>V,t!fod!d2P/f7t2b9c1!4.4!:f9m9q8n6b1!/11/!1-<*!fgmmqpnbbuT!mpbgngstpfou!N-pmwbfnJsopwo!)>u!p2e/)1y!b0n!!G+T!B*N*QfMtFVTpj!e1!/01!<1!/j2!)=!!+G!TuBtNjQEMfFoTb2!!u>c>o!!f+m!qtnbbnTqem!f>t!]ljdofui)Djf*h^op!og!s-btdpuQ)eompsjptxf!/.h!!f,m!qpngbgTttfpuQNepmwsfp*x<)!uppgeg)ttfcubN!p>w!fu!t,j>E!fpogbgmtQfuuoNfphwofbJuo!wuv!!x-pfsmmqenQbpTte!),t!psQbeemjsvptXUupfVht!f>!!+f!mnqpnwbfTBtnpuQ!e+m!stpbxn!q4mdffEwj!sE!fqosfpdktN)bEu3!f+s!vwufydf5u)!t>b!nfqmmqfnQbpTte-!!u2b/p1m*gb!cphg/gftmfqun/bxTf!uf/myqzn{b!T>m!bpngsgptof!u4/dyfzw{!!<+s!/1f/m6q!n,b!T1b/u6bf!df3m!qenjbgTgd!d>p!!humb`pGmsgb!hv!ufjmpqon*bT!mtfuyffqu)!w+f!d*3^)j1]/l1t*j-Epogpgtttfjup/qy!z+*!!y+j!stuubfNqo)ppjgugbtufpus/)y!z>-!!uwfftdg3g)p2!/31d*f*w!!=u!fjy!uM!pje!)utodjf)osfpEgf!qV!pmUjtovfjbesbjs{!f@`!etfvqjueib`Smfpdhb)qtTbonfqfmsfdEtf>q!ufit-V!poUfgbgsp-m!mgbbGsf*d!!*p!s*uoippj!u@v!mmpjtoffsb!s0j!{*f1`/e1f!q-utiv`jpesbuSiepm)stpbxn)q3mdffEwf!q,u!iw-V!wo!f-bes)-t!pgQbesm*s!p;X!umfjho!f-btspjQ{efm`sepfxq!u)if)dtobbnuqtmjfeE!f@q!utiv-j!eobfSbfsd-b!qgTbosf*fo!efjtgV\vp!Ugtmvpjbeub!se!jutbupXmpgs!mf!mphsoubi)pt!p@d!!m-j*offmbhsojb{)fo`jetf!q-u*if`mphsoubi)po)jptg.g!t-f*uf/m{h-o!bo)ftbpsd-)!3gubbsn*!!>;!!ymjjsoufbbNsojp{jfu`beufpqsu!i3)upbgng!t~f!u-!fetjjtpuOTfbvnmqcm)fE!3>f>s!veujytfuuX!p>s!mfem!h@o!b1!/|1!!f;t!mtfn!p~p!u.!!femjhtoubX!p|s!m*e1*/*3*!<>!>g!mypfbeuo!jt)b!ngqjm!ffWtbmmfj!e~!!>y!fsub!o>h!ffDmihfodbl!!|+!!*g1m/p2b!u>)>t!bynfqemofjE)f!qguji!!fat>m!fe!f~q!ue!pfum)heojbg!g|-!!*e1j/g1g!*>!>*!!y+f!etobjn)q!mgfjW!bs!!t>b!nfq{mjftW!bumbjpeme!mdsmpbXnuqf)h2!/>1!!t.p!Qpedmdsmpvxe!f4ed!f0w!!)~u!pb>e!!1>/!1s!p@m!p2D/h1b!s;G!`umphu!b|m!X*f1j/h2i!u>*>-!!e1)/!1g-j!!2)!Ew3ffds5v)upydfdu-!!>1!/e6!!u,b!p1m/g6!!<+1!/o2p!s>n!bumo*vV!Sm\vb!nvsopjog!p4sdnf!wt!bu!EdjdgPgfvttbfcs!3oEp!jctmvvmfdOdppj!tufb!!gbmupbbeu!!5xdpfswm!et!o!jfg{pjsTnm!fcypfpum!!3tddfswf!fj!vjtqnsqpmmfpsD3hEb!sjGn`bmhhf!<|!!vfotjmgfp!s~n!!g!psspnm!pgDmhpbbsuG!`bmnhp!vt!fxfpeo`ty!<5!dvfowj!ge!jstpumppsDuhjbpsoG``ymg!pcsdn!!5gdmfpwb!uw!Vbwhs!v3u6y6f/u!!0>!!3s6d7!/5t!pwdf)d34d)f3w6!7+/!!u+o!v3p6n7b/!!>+!!u3f6t7g/g-p!!336d7f/w!!+!,Vzo/qqb!d+!yV`oeqfbfdtl+Empbxnostpdob>m,fy!/0q!!w~f!d~5!)b!dyl/SqH!C|B!UfptEmffq!u~i!)!yw/*q!!||!*s/f1u?vzs`oe!fefptu))gwj-!!|V!o*qebfdfltG+btd`umppsdt.*z<`!o~p!jgumsppbuut!jseb?oye/)qw!f%d%3!!td`pm*p|d!,szf`uovpsjou!sgpsubtdjue)=tyj/oq))egpju!)~d!p~/!y9!-z8/9q/!3|4!4f*t*m*f!!+~!!5<4*8z6`9o/p6j5u6s4p*u!!jzg/!q)!c|z*q/=12?*y!`|e!fwfftd)3g!jq!!|>!!*weVfwfp!jgumspppust)jhem?`zG/sqb!h%D%p!pts`em/pyd!,0y!`1o/p6j*ug!jg!mC!HvSolqdb"],dz.bloomBlur=["?$TjWoodfmfvsedfT!u=jcm","~w!b\vsgzjjeoohf!$w\vf!d<3*!bw/Vywjs!ns!pwmfpdD3h!busfGy`Tmjh{!f\v)!jsop!mgpmDphbbus!Gy`-m!hj!o\v!BgImQpMbBu`!FtEjJhSnSbF*W!P|!!gsffeugvjs$o\v!!1~/!4<:x9!:+5!!1+/!3f!y>q,)!.n1v/T6u!i+h!jyf!x+!!h,n!bn-!f2s/v1u!y0f!UusfpymTpjd{)fE<3!fgsmvpubyuf!ug!T>j!h3nfbm!q>n!bgtm!p4bduf)wT!Js!vhubyvftUtsjpbmopQde)gE)31f/s1v-u!ygfTuj!h>n!b2*fj!Tuwfoyju!v+s!fo3pEj)uddpfmspjseU!f>y!uuvfstfg-g!PwwVvw!*3Q!oubfjytutvvsbfhQ!j>y!/xs!hucb!p+m!gx!fp!sy!!)ujbopum!gj!!|>!!*2,<,!jj!!<=T!VLJFESBOSF`M"],dz.bloomHighPass=["?$TjWoodfmfvsedfT!u=jcm","~v!on!!sgpmmppbDuh!bmsvGn`jmohp!t|!!bwifqdm5b!!uufbypfmmg!!>!!wsfpdm4p!Dmuvvnqbu!v>p!!w5fddf4w)!1m!pwb!u"],dz.bloomComposite=["?$TjWoodfmfvsedfT!u=jcm","~w!b+!!2*/13/!2.!!-gsbpdmuppDsu!!nsbpjmop)D*h!b|s!Gh`m"],dz.highlightHard=["?$TjWoodfmfvsedfT!u=jcm","~v!of!ss3pEm!pjDnhbbhsfG<`!mvho!j~g!pf!df5h!effe!hn!bfthleDfp!mupbspo!)i*!!u|b!pwmfgd!3S!nwpVuwu/!3f,euhgffXMjnepuuiu!p0c!,uufiyhujvSsqfpTuj.{qfp/uy+<1!/g3m.pubguf!Meqzp!u>.!!f>e!hwf!Xujbepumig!!0>!!hufiuhIjjShnipmujuhpicu!Dupbmppmsg)!jh!jhIfuufIhj!h>i!mnjphuiuupDcp!mupbsp)mjgn!bu!fhhf!u>I!juhgifmMjnhpiuuuDppcm!pusb)pjmngb!hj!mhifhujIIjuhfihm!j>h!iuuiDhpjmsp!su)bjpnmbgh!f<-*!*d1d/,1w!f-dy3e)."],dz.highlightEdgeDetection=["?$TjWoodfmfvsedfT!u=jcm","~v!on!bshpfmn!!ew!fs!n3!gwgfjde5!!unbbptmlgD!p=!i2jghgijmej!huibupEmfgu!fu!f2h/!1>!!05!du!fuybTpjm{gf!<P!w1v/!1,J!P4Od\v!!unbbpum4g!!H<]*:z^y-!fnhbbun4j))!s1p/m4p6D4u6i6h4j4m9i5h6j5I3u5f7h6!3>-!!31d-!!u.b1p/m4g6!4<6*6z4y4/9u5f6t5g3g5P7w6v3!-,!!1w/V6w-!!-1f-h!b.n1j/)6s-p!m1p/D4u6i4h6j6m4i4h9j5I6u5f3h5!7>6!32-d!!1u-b!p.m1g/!4<6*4f6{6j4T4w9o5j6!5-3f5{7j6T3w!o*j<)!5ddpfowt!u+!!n*b1u/42!!h-21!/>1!!n-b1u/41)!!-11//426)456d6f4w4!9>5!6u5f3t5g7g6P3w-v!!15/d6f-w!!1\v/f4t6m4f6$6\v4!4<9f5h6e5f3!5>7!6e3!-~!!1<-l!b1f-s!c1!-*!6./11/!4?6!4f6h6e4f4)9!5g6j5!3~5!7~6!3<-l!b.f1s/c6!-6!4f6h6e4f4!9|5!6*523/517!6?3!!**s)!tncbbu)4!)g!j1!-3!-s!p1c/i6h-j!f.o1!/u4b6p4m6g6!4<4f9v5o6j5u3o5p7d6!3*-1!!1>!>*!n>b!uj4)!!hg4j!!>|!!n*b,u,4k)!!<12/!6>-=!!.k1!/<426.4!6>6!4k4!9u5o6j5)3!5s7p6g3!-|!!1*-,!,.j1!/<426!4>6=6!4j4!9<526.5!3>5!7j6!3u-o!j1)-!!s1p/g4!6<416/614!4>9!5f6h5e3f5!7u6b3p-m!g1!-o!tsuf!unobfud4!!uhb5p!m>g!!n\vb*uO4P)J!U1D-F!U.F1E/`6F-H!E1F-`!M1B/D6J-H!P1M-P!I1Q/S6P-N!)1e-f!o.j1g/f6e-!!g1j!m*f<$!\vd!p6!!e>!!~n!b~u!4<)^!2.,1k/]6^-2!,1j-]!o1b/j6d-b!m1q-b!m1!-+!!1m-f!y1j/q6!->!,1!-n!v.t1!/<6*!***g!)n3bduf4w)!!+1!/f2{7j7T7w7o7j7!8,2!7w4V4w8!3-1f5h-b!n.j1)/s4p4m4p4D4u4i4h5j4m3i7h8j5I5u1f9h-!!>1!/m2f7y7j7q7!7u7b8p2m7g4!4|8!3*1,5,-k!!.<12/!4>4=4!4k4!4<425.4!3>7!8k5!5u1o9j-)!!1s/p7g7!7|7!7*7,7,9j7!6<425!9>9=2!7j-!!<.21./!4>4!4j4!4u4o4j5)4!3s7p8g5!5<119/-1!!1>/!2n7v7t7!7u7b7p8m2g7!4<4*8!311/51-!!-.11//24.4!4-414/414!5-413/728.5!5-119/-5!!1-/12/727.7!7-717/812!7-414/823.1!5-!1*/<1!!d)p4outbun!!n>b!uo4b!jhd8b!m>q!bnmb!u44u)b!n.!1u/t4o4p4d4!4\v4*4O5P4J3U7D8F5U5F1E9`-F!H1E/F2`7O7B7J7D7B7M8Q2B7M4)4e8f3o1j5g-f!e.!1g/j4m4f4$4\v4!4<4*5*4z3h7!8-5y5h1)93-d!f1w/)2i7u7h7o7f7m7!8>2!7e4!4<823z125y-u!!1+/!7^727]7^727]7z9H7!6,4!519z922y7u-!!+1!/^217]7^727]7z7H8!2,7!424z813y1u5!-+!!.^12/]4^414]4z4H4!4,5!413z718y5u5!1+9!-^!11]/^217]7z7H7!7>7!8z2h7!4u4b8p3m1g5!-2!zn1byuu4!)+!!1^/24]4^414]4y4H4!5,4!317z815y5u1!9+-!!^11/]4^414]4y4H4!4>5!4y3h7!8u5b5p1m9g-!!<1*/*414/424!4-414/524)337d8f5w5!1+9!-f!{1j/T4w4o4j4!4,4!4w5V4w3!7-8f5h5b1n9j-)!s1p/m4p4D4u4i4h4j4m5i4h3j7I8u5f5h1!9>-!!21z/24y4u4!4u4b4p4m5g4!3<7*8*515/129!--!11//14)434d4f4w4!4+5!4f3{7j8T5w5o1j9!-,!!1w/V4w4!4-4f4h4b4n5j4)3s7p8m5p5D1u9i-h!j1m/i4h4j4I4u4f4h4!5>4!327z815y5u1!9u!b*p/!1h!1-<1!/H2])23^d!f>w!!h+2!!!,h!3wn!jh)4sj!mhi5h>!!1hz62g!!h<7*b!nhj8)h!jhm9i!!-11//11<)!3ju!b=n!!4>/!1z/!11!/-11*!!y|H!!J3]ujbonu!)ujt*o^p]dj!o\vu*)OkP*J^U!D>F!UhFfEu`IFjHhEiFm`jThUiSuFDCpPmSp)se)fjonjbghffe-!!gwjVmwf!$,\v!!j/!1e*!*<<3!z~3!y~u!!g+p!s^!3)]j^o3u]!zjH!!>,!!13^!3e]p^u1)]Hz]Hj!^,]!12^z-3!yJu]!1+^!*^!2,]!^e3p]uz)HH!],j!^2]z22^y-u!!J+]!2^^2*]!^,2!]ezpHu!),H!]2jz^1]y3u^!-+!!J^]23]^^*1<]!zdHo!w,]!j1^z!3>y!ue!q+4!!^+1!]e^q34]!!^)1d]o^w2]]1z^H!!,,!!d1ozw1]y2u^!*+!!,^!1)]d^o1w]]z3H^!!>,!!3dgogwj]e4!^u*b!!+)!d^o3w]]^53^]!y,H!!d,o!w3]z62^y*u!!,+!!)^d3o]w^]27]^y!H,!!,d!o3wz]18y^u*!!+,!!^)3d]o^w1]]9y^H!!,,!!N2*z<3!yeu!!>+!!t^r2s]u^)3N]0yTH*!<,!!\v2$zf2myjug!!+e!f^g2j]o^f2e])yTHP!C,F!M2`zF1EyHuF!`+E!F^U2F]D^U1J]PyOH*!\v,!!d1pzo3tyuu!!n+b!u^41!]H^y3!]>y!Hn!b,u!41)z!2.y2u-!!+.!3^-1!].^22-]!y1H-!!,1!-1!z11-y!u2!-+!!3^-1!]2^!1*]o!t2ug!gnjbeu!4u!bHpzm!g>!!I!uhffhu!I>j!h3izm3jyhui!uuDbppmmpgs!)f!hh!f>u!I2jzh3iymuj!huibupDmpgm!pf!hh!f>u!I1jzh3iymuj!huibupDmpgm!ph!!h>f!u3Izj2hyium!juhbipumDgp!m!"],dz.highlightBlur=["?$TjWoodfmfvsedfT!u=jcm","~$!ej!oshp!mwpfDdh3b!swGV`wmn,q!muffst3gEg!Pjwnvb!hw,f!dn3v!TuufiyhTjjf{xf!<j,g!pnsvnT!fgtmvpgbguj!es!b-!!3jfom!qgnmbptb!u5!dtfjwh!n!!+2!fym!q0n!b)tt!j5hdnfbw!!+!!wxf!du3b!pjmogw!T|j!{*f,!,>j!!2<=!!gjm!px!fjj!huioujT)v!ns!p>g!!hQ!eugf)t1g/g1P-w!vs!b3edjfvwt!*<<*!TwVfJdE5B!Se`jYgBgNv)tufbTpvmng!!>0!!utfvyjuevbssf!3+E!)fj{njbThwfo-j!!w+V!wo*p!j+u!dxffsjjhei!u>T!vbnuV!ws!!fsephmfpUDfmybuovjsgf!25g!mwpwb!uu!bfpemhgf!Tg!pfsvnm!bwWffdh5e!fn!b5tdlfDwp!m/!g3tf/vimfbbWef?h\ve!fw!p5jdef!wn!bv!uuyf"],dz.fixColor=["~b!uO!Ho\vp!j\vu$jetfpgQj`omfh!!V\vTgFj`eJoOfT$U\vB!O\vD?JzOeHp`cG/MtBwU/`oTpIjBuEdFfEs\vj!E\vq$jfmode=j!gf\ve!v\vm$djoojd$m\vv!e\vf*!O=PjJoUtDuFbSoJdEj`oQhJ/MwDt)/eiffobjeg?f\ve!!vgojj$g\vp!s\vng!jnebouf5$!\vv!Nv!NoppejfumjNtbpuQsejmys\v!!ywfbusszfjwo!h5!dwffwd!4\v!gwjXeposfm$e\vQ!p\vt?jzuejppco/o!f!ds5p!mdppDmhpbssx!Nobpujsujjyt\v!$oepfjgujjotfp!QVeTmFs`pJXOwT!U\vB1O!D?J!OSHF\vQ!QbJuMuDs`jYcPvCu`fY!BwNf!dg4j!$b\vO!pg!jyoffu!sVfTwF!`5JdOfTwU!B\vO?DzJeOpHc`/GtMwB/Uh`oTjIdBoEbFuEt\vo!j\v=$!ffoeevjmgd\vo!j\v$$\ve!f~g!j!!=ejfontsupbgotdojboshu/!wj,g!!eNfBoYo`jClPtY!`p,o!`,U!FeYfUoVoSjFl\vt!!vl,j!oeofjooohj/lwtt!/p!senf!onobjul5t!!v5Ddmfjwq!Mj!uyjfpuoss!uwbfNdo4j)lbtO)p5sdnfbwm!*>f!ewgfjd$4\v)!b>!!yhjfsuuCbpNoofjNlbtu!sf,N!byujZs!u>b!NhofjulCtp!o5,!!cypjosfuNbbNuo[j!l>t!!h<,!!nybjus5u!bcNpoojflNtb!ub!NhffoupCcp!o+f!Nyb/uusijhyj)ftXlojjolJto!e>f,y!/yxj*s!","?$tjgo/dsmfvcecfb!s=Hcsvfgg"],dz.depthNormalGrabber=["~0!0x!Nobpujsujjyt\v!$oepfjgujjotfp!QVeTmFs`pJXOwT!U\vB1O!D?J!OSHF\vQ!QbJuMuDs`jYcPvCu`fY!BwNf!dg4j!$b\vO!pg!jyoffu!sVfTwF!`5JdOfTwU!B\vO?DzJeOpHc`/GtMwB/Uh`oTjIdBoEbFuEt\vo!j\v=$!ffoeevjmgd\vo!j\v$$\ve!f~g!j!!=ejfontsupbgotdojboshu/!wj,g!!eNfBoYo`jClPtY!`p,o!`,U!FeYfUoVoSjFl\vt!!vl,j!oeofjooohj/lwtt!/p!senf!onobjul5t!!v5Ddmfjwq!Mj!uyjfpuoss!uwbfNdo4j)lbtO)p5sdnfbwm!*>f!ewgfjd$4\v)!b>!!yhjfsuuCbpNoofjNlbtu!sf,N!byujZs!u>b!NhofjulCtp!o5,!!cypjosfuNbbNuo[j!l>t!!h<,!!nybjus5u!bcNpoojflNtb!ub!NhffoupCcp!o+f!Nyb/uusijhyj)ftXlojjolJto!e>f,y!/yxj*s!","?0t0g!/Isjfocuctb;s!Hhsmftgmg4v\vc!=\v!$fjeovdm"],dz.reflector=["~b!uj!goppsjnu!jntbpuQ5`!mnhp!eg!pwsVnw!!n\vbguj5e!oqfs$p\vk!fY!`oDpMjJuQjQtFpSQ!e?m!s1p\vX!ww!b\vs1z!j?o!hS!FwQfQdJ4M!Dw`XYpPsCm`eYQBpNt!jgujj$p\vo!<|!!\v*$)foojebjng!\ve!jwp","~v!o!!wsbpsmzpjDohhb!swGf`dm5h!!wm!bwzV)ug!m3pdbfuw!!cf!!f=t!b1c/!65!d@f!w)!3\v/?1z!e+p!cc/bttgf/!y+p!ccqmjfmode=*!!f;e!v)m2d/o1j!$.\v!!3|/!1*!)+o!j)b2n/!1e!j.p!wc!b\vt?fe*b!f+i!/)t2g//1y!p.c!qcjmmfdo=e!*f*e*ve!foyp-+!!g{m/pobpuj!ugdbfdsfj*e!!||!!v*w1!/>6!!3>/>1!!f+d!bvgw)!!.g!j2!/f1tu+j!pzoy!/>o!pwjfudd4f)svjwe-!!<2z/{1y*/>!>o!p1j/u1d*f!s|j!ee!j|s!f*d1u/j5p!o>!>>!!fedjbsgf)d!ugjjp!of/t{mzfy!<~!!~j+g!!{)yg/bodpfj!u>d>f!s2j/e1!*!!>e!jospfjduudjfpsoj/ey!{|z!<*!1e/j4s!f>d>u!jfpdob/gy){!!g+j>!!f.t2m/f1!<~!!~j+g!!y)/gobpdjfu!d>f>s!j3e/!1|*!","~w!bn!!stpbmnpqDmhfbssDGv`cmfh!!f\vogwjNeboqf<$!\v\v!$)!4wdffdw5!)-1q/b1N-w!o1f/)1f-c!v1D/f1s-v!u2y/f1u*)!!hcmh`sG/ssbphmDppDmhpbss/Gs`hmch!!>\v!fntbmqfU$f\vy!fe!foyp-+!!g{m/pobpuj!ugdbfdsfj*e!!||!!v*w1!/>6!!3>/>1!!f+d!bvgw)!!.g!j2!/f1tu+j!pzoy!/>o!pwjfudd4f)svjwe-!!<2z/{1y*/>!>o!p1j/u1d*f!s|j!ee!j|s!f*d1u/j5p!o>!>>!!fedjbsgf)d!ugjjp!of/t{mzfy!<~!!~j+g!!{)yg/bodpfj!u>d>f!s2j/e1!*!!>e!jospfjduudjfpsoj/ey!{|z!<*!1e/j4s!f>d>u!jfpdob/gy){!!g+j>!!f.t2m/f1!<~!!~j+g!!y)/gobpdjfu!d>f>s!j3e/!1|*!","~w!bn!!stpbmnpqDmhfbss3GE`!mfho!wu!fcyhfsm/Tsjp{mfpg!jnocf!!4SdFfDwJ!Q9!7n2u9!448d:f1w8!\v\v!g\vj$eeoffg$j\vo!fu!Vmwc)!j4od!fwwf!d<4y!/efj{sj*T!m|f!ygfmup!b>u.!!vy!/>w!vb!u!!>s!c1!/46d!f.w!!b/,z!-z!/.w!v2!/<1c-h!s2//*1**w*v!!+-!qSbFNDwJoQfS)P!DEB3Mf`sQvJuj!es!un!b4jdof)w*!!<|y!/hfm{`jGTsmbfhyDfpum!p>s,!!>y!/wwfvd!5<)c1h/s1/-*!*1w/v1!--!q1b/N1w-o!f2)/!1E*3N!woopfs!n>b!mmju{!f4)dwfPwv!u\vqfvtumEfj$s\vf!df!)f!rEv3jfssfvduuyVfwu))psvbufqovjuMEpjUsmffdyufjUpqob*nw!fmdc3!!4gd!f>w!!gf.m!Tyj/{wfv!!.b!Ngw!o+f!)u!fEy3ffmsTvju{yff\v!!swcf!d44d!fuwm!!<>z!/nfb{qjUTfmyffymfUup!M>j,o!fzb/sw)vu!fM!puUfmyffymfTUjq{bfn/!y>e!foyp-+!!g{m/pobpuj!ugdbfdsfj*e!!||!!v*w1!/>6!!3>/>1!!f+d!bvgw)!!.g!j2!/f1tu+j!pzoy!/>o!pwjfudd4f)svjwe-!!<2z/{1y*/>!>o!p1j/u1d*f!s|j!ee!j|s!f*d1u/j5p!o>!>>!!fedjbsgf)d!ugjjp!of/t{mzfy!<~!!~j+g!!{)yg/bodpfj!u>d>f!s2j/e1!*!!>e!jospfjduudjfpsoj/ey!{|z!<*!1e/j4s!f>d>u!jfpdob/gy){!!g+j>!!f.t2m/f1!<~!!~j+g!!y)/gobpdjfu!d>f>s!j3e/!1|*!","~w!bn!!stpbmnpqDmhfbss3GE`!mfho!w~N!bf,j!hcihust/]s!pom!p^Ds,n!!cghmsp/bsup!mnpjDqhJbosuG<`!mvho!j!!\vb$ujfoidum!vuebfp!m=gf!o~d!pW?N!BjQ)`!UgZjQ!F|`!D*V,C,Fj`!Ve!fj!!=udovjc)f!FsopwgS!fu,b!-c!hwsf/ds4p!mbpyDjhtb*s!G|`!mghm!p/!1d!p-t1)/u1i)f5udbf*ww!fsdp4m!ptDbhnbqsmGf`Emjhs!ff!{wjPmvbunqsvpuoE!j>s!ftdjuyjbp!o~!!+*!!t,j!ybby!j|t!!*+*!*e*p1u/)1b)y4jdtf-w!!w-Ptvjuyqbv)umEbjvsrffd)umjmpbo)*!!g+j!!)<2*/o1p!j.u!ddfpstjUEiufvuqbu*vp!ot-j!ynbj!q4Jdofuw*!<|!!~*!)wopjjben!"],dz.oitBackBlend=["?$TjWoodfmfvsedfT!u=jcm","~w!b~s!zj>g!pbs/ns!ptmbpnDqhmbfssG3`Em!hv)C!bgdjl!Dp!msp"],dz.oitFinal=["?$TjWoodfmfvsedfT!u=jcm","~w!b)!*s!p|m!pwDfhdb5s!Gg`smpho!uD!uuofpysugv!s.f!31E/)2v!G>s!psofujDmpqmjpusm-v!NwbViwq*mm!puDflydubvCsvf)3E"],_.common="~$!eB!MwG!!u2b/p6m8g1!8<:67/413!7,8!:35J9Q:`7M7B\vD!P\vS$QeJfDgFjSo!f+!!S*FyD/JsQjSeP!D-B{M/`sQjJe!)1o/b4u2b9!4>1!:v9!9u7b2p9m4g8!:|1!8*\vs!j\ve$!e4fdgfjwo!fo!jS)FwDVJuQdSfPsDjBvMr`fQ!J33d!f1w/!2~6!:<216/52:!5.4!1>:>2!9^:!644!6]\v^!!\v3$!e]fng!joosfv!uFfQsT!J|M!P*On!!25fu.b7n\v)!y\vj$sjugboNeffwgj!utdbfuqvtssbfuQft\vj!!\vm$pepfcg!j~o!fg!mtpubiuh!jyf*x!!|4!dsffwu!v|s!o*!syp+mypn!)y4+dyff!u^v!s3o!!]yq3n+uy!3<<*!z~/!^g!m3p!b]un!!n-bzy/4^)!d2p!o]tnu!!-jzo/!^w!f1d!4]!nw)*4!d|f!ws!f>u!v^s!o2!!n]bqyn)un!bp!o^t!u1!!j]oq!nwuf!d<4q!ndup!m4pusb*n!!||!!s*fnu!v4suob!ne!pouj)!duptmoppsd-)!4wufbdN4f)t1p/q4t4o4b4s*u*!<4!u~b!ni!j~h!is!u2b3n/!:59u:b9n-!!ocj!!>-!s8j9e/!344d4f-w!!do!j>)!o5p4j8u6d9f/s6j5E6n4sf!we!p~u!)!!ynjpseu)benu)-)!fQ{Jj*ms!b3g6!7+/!!*0[!x3f6j6w/!<,!!dspboftou)!)g!mopsbvuu!fVso!q|b!d*lsEbpgx!outbdpbmmgf!!o>j!!3u6t6o/p!d0!!-3s6b7f/op!mwgf!do4j)!3u6t7o/p!d+)!i3u6q7f/E!f+w!j3u6d7f/q-t!s3f6Q7p/U![+x!f3j6w7!/u-b!p3m6g7!/~*!<D!sVbofqobjdml!Eopsxvoutfdsb!m|f!!*0s!bwgf!du5b)pQmbgd!loGjb!duutposptd-!!-2s/b*fo!j2m/!!u0b!p3m6g7!/ob!fwof)d!50)!g*ssbbdfuo)!w,!!+[!xQfbjdwl)G!bodsuvpusfts*!-|!!w**so!js!/uytzo{p!d+!!-Tsibjfgou!Sujbhpimug9!d!bwqfodv5!)3wd/fyw-!!~g!sQ&&(v=!0,(Y=Y||[]).push(V))}if(P1(M),u1($),v)for(var V,e=0,D=Y.length;e=Z)break;l=N[s]}return[o,M]},uw=function($){for(var z,C,o,M,A,N=[],s=$.length,g=0;g/gm,Ew=/^[ \t]*void[ \t]*main[ \t\r\n]*\(( *void *)?\)[ \t\r\n]*\{/gim,Hw=function(Z,t){function Y($,z){var C,o=[];if($)for(var M in $)!1!==(C=$[M])&&o.push("#define "+M+(!0===C?"":" "+C));if(z)for(var M in z)$&&$[M]!==Kd||!1!==(C=z[M])&&o.push("#define "+M+(!0===C?"":" "+C));return o.join("\n")}function c($){return $.replace(Gw,z)}function z($,z){var C=Z.getShaderChunk(z);if(C===Kd)throw new Error("Resolve #include <"+z+"> failed.");return c(C)}var C,o,M,A,N,M=/(uniform\s+sampler2D\s+\w+)\[([\S\d]+)\];/g,A=/#UNROLL_LOOP_START\s+for\s*\(\s*int\s+i\s*=\s*([\S\d]+)\s*;\s*i\s*<\s*([\S\d]+)\s*;\s*i\s*\+\+\s*\)\s*{([\s\S]+?)}\s+#UNROLL_LOOP_END/g,N=/^\d+$/,y=function($){return $.indexOf("UNROLL_LOOP_START")<0||(C={},$=(o=$).replace(M,g).replace(A,v),C=o=null),$};function s($){if($.match(N))return qd($);var z=C[$];return z||(z=new RegExp("#define\\s+"+$+"\\s+(\\d+)"),z=o.match(z),C[$]=z?qd(z[1]):0)}function g($,z,C){C=s(C);for(var o="",M=0;M$?(t.deleteProgram(C),delete o[z]):M++);t._validProgramCount=M}function X($){var z=$.get(60,4),C={NUM_DIR_LIGHTS:$.get(0,8),NUM_SPOT_LIGHTS:$.get(8,8),NUM_POINT_LIGHTS:$.get(16,8),MAX_BOX_CLIPPER:$.get(24,8),MAX_FLOW_OBJECT:$.get(32,4),MAX_BOX_CLIPPER_MASKS:$.get(36,4),FOG:$.get(40),FOG_EXP2:$.get(41),UV_CLIP:$.get(42),USE_ENVMAP:$.get(43),ENVMAP_TYPE_CUBE_UV:$.get(44),OIT:$.get(45),BOX_CLIPER_TYPES:$.get(52,4),USE_SHADOWMAP:$.get(56),SHADOWMAP_TYPE_PCF:$.get(57),SHADOWMAP_TYPE_PCF_SOFT:$.get(58),SHADOWMAP_TYPE_PCSS:$.get(59),USE_CSM:0>1),C.CSM_FADE=1==(1&z)),C}function O($,z){var C={CLIP_DIRECTION:z.get(1),USE_TANGENT:z.get(2),USE_UV:z.get(53),USE_UV2:z.get(54),USE_MAP:z.get(8),USE_ALPHAMAP:z.get(9),USE_AOMAP:z.get(17),USE_LIGHTMAP:z.get(7),USE_EMISSIVEMAP:z.get(12),USE_NORMALMAP:z.get(13),USE_DISPLACEMENTMAP:z.get(15),USE_ENVMAP:z.get(52),ENVMAP_TYPE_CUBE_UV:!0,UV_CLIP:z.get(18),USE_INSTANCING:z.get(6),USE_SKINNING:z.get(19),BONE_TEXTURE:!0},$=(C["ALPHAMAP_CHANNEL_"+a[z.get(20,4)]]=!0,C["AOMAP_"+a[z.get(28,4)]+"_"+(z.get(16)?1:2)]=!0,"pbr"===$?(z.get(10)&&(C.USE_ROUGHNESSMAP=!0,C["ROUGHNESSMAP_CHANNEL_"+a[z.get(32,4)]]=!0),z.get(14)&&(C.USE_METALNESSMAP=!0,C["METALNESSMAP_CHANNEL_"+a[z.get(36,4)]]=!0),z.get(5)&&(C.USE_TRANSMISSION=!0),C.NUM_RECT_AREA_LIGHTS=z.get(40,8)):"phong"===$&&(C[$=1===($=z.get(48,4))?"ENVMAP_BLENDING_MIX":2===$?"ENVMAP_BLENDING_ADD":"ENVMAP_BLENDING_MULTIPLY"]=!0,z.get(11)&&(C.USE_SPECULARMAP=!0),C.NUM_RECT_AREA_LIGHTS=0),x[z.get(24,4)]);return C[$]=!0,C}function _($,C){return $.replace(K,function($,z){return z.split(",").forEach(function($){$=$.trim(),C.indexOf($)<0&&C.push($)}),""})}function P($,z,C,o,M,A,N){var s="",g="",M=M&&M.OIT||Z._programDefines&&Z._programDefines.OIT,Y=0<=C.indexOf("oit")&&Z._oitEnabled&&M;if(Y?C.push("glsl3"):M&&(z=z.replace("#define OIT",""),$=$.replace("#define OIT","")),o)for(var v in o)g+="#extension "+v+(o[v]?" : enable\n":" : disable\n");0<=C.indexOf("depth")&&(g+="#extension GL_EXT_frag_depth : enable\n");var O,M=Z.getGLCapabilities().precision;return 0<=C.indexOf("glsl3")&&(Z.isWebGL2()?s="vs"===A?"#version 300 es\n"+g+"precision "+M+" sampler2DArray;\nprecision "+M+" usampler2D;\n#define attribute in\n#define varying out\n#define texture2D texture\n":"#version 300 es\n"+g+"#define varying in\n"+(Y?"layout(location=0) out highp vec2 depth;\nlayout(location=1) out highp vec4 frontColor;\nlayout(location=2) out highp vec4 backColor;\n":"layout(location = 0) out highp vec4 pc_fragColor;\n#define gl_FragColor pc_fragColor\n")+"#define gl_FragDepthEXT gl_FragDepth\n#define texture2D texture\n#define textureCube texture\n#define texture2DProj textureProj\n#define texture2DLodEXT textureLod\n#define texture2DProjLodEXT textureProjLod\n#define textureCubeLodEXT textureLod\n#define texture2DGradEXT textureGrad\n#define texture2DProjGradEXT textureProjGrad\n#define textureCubeGradEXT textureGrad\n":"fs"===A&&(s="#extension GL_OES_standard_derivatives : enable\n"+g)),N&&(s+="#define USE_UBO\n"),$=($=s+Z._glCapabilities.precisionString+$).replace(f,z),"fs"===A&&(O=0<=C.indexOf("bloomSelective"),(Y||O)&&($=$.replace(Ew,function($){return Y&&($+="\nvec4 my_FragColor;\n"),O?"#include \n"+$+"\n#include \n":$}))),$=c($),y($)}function d($,z,C){var o=$.createShader(z);return $.shaderSource(o,C),$.compileShader(o),$.getShaderParameter(o,35713)?o:(Fw.addShaderErrorLog("COMPILE",$.getError(),$.getShaderInfoLog(o),35633===z?"vs":"fs",C),null)}function l($,z,C,o,M){var A=Y(M.defines,!1===M.internalDefines?null:Z._programDefines),N=(M.defines&&(z.match(f)||(z=A+"\n"+z),C.match(f)||(C=A+"\n"+C)),o||(z=_(z,o=[]),C=_(C,o)),M.type),s=Uw(N)&&!M.potentialType&&Z._glUbos.supportsUbo,g=P(z,A,o,M.extensions,M.defines,"vs",s),A=P(C,A,o,M.extensions,M.defines,"fs",s);if(!(s=d($,35633,g)))return null;if(!(g=d($,35632,A)))return s&&$.deleteShader(s),null;if(A=$.createProgram(),$.attachShader(A,s),$.attachShader(A,g),$.linkProgram(A),Q&&Z.shouldCompileShaderInParallel(N)){N={program:A,vertShader:s,fragShader:g};V?V.push(N):V=[N],A._isReady=!1,Z.iv()}else{if($.deleteShader(s),$.deleteShader(g),!$.getProgramParameter(A,35714))return 0<=(N=$.getProgramInfoLog(A)).indexOf("maximum temp register")&&!Z._glTempRegisterLimited?(Z._glTempRegisterLimited=!0,$.deleteProgram(A),Z.genProgramDefines(),l($,z,C,o,M)):(Fw.addShaderErrorLog("LINK",$.getError(),N),$.deleteProgram(A),null);A._isReady=!0}return A._id=Sw++,A}var J,K=/^[ \t]*\/\/ *[Hh]ints *:([\w\d ,\.]+)$/gm,f=/(\/\/\s*)?#PREFIX/,Q=Z.getGLExtension("KHR_parallel_shader_compile"),W=Q?Q.COMPLETION_STATUS_KHR:null,V=null,e=(u&&u.navigator&&u.navigator.userAgent.toLowerCase().indexOf("chrome"),new wA(64)),D=Jd.keys(Ui),a=["R","G","B","A"],k=["linear","reinhard","cineon","aces"],x=["UseLinearToneMapping","UseReinhardToneMapping","UseCineonToneMapping","UseACESFilmicToneMapping"],p=["mix","add"],b=new wA(64);return t._programs={},{acquireProgram:function($,z){var C=t._programs,o=$.cacheKey,M=(o||(g=(M=$).type,M.defines&&(g+=Y(M.defines,!1===M.internalDefines?null:Z._programDefines)),M.internalType&&(g+=M.internalType),o=M.cacheKey=g),C[o]);if(M){if(!z)return M._fid!==J&&(M._dirty=M._waitingDisableAttr=!0,M._fid=J),M._isReady?M:null;t.deleteProgram(M),delete C[o]}var A,N,s,g=$.type;return"legacy"===g?(A=Gv(gp.substring(0,gp.indexOf("^#"))),N=Gv("~!!spmpDhbsG`mh!\v?zepc/tg/ujp=!fevmdoj$\v!<1/2!;!x/eJ!@!uofsbqtobsUv!>!x/eJ!~!+!eJ!<*zy/wVw!-sfmqnbTeofmCv)E3fsvuyfu!>!spmpDsfmqnbTwv!5dfw!|!*fsvuyfUeofmCv)!gj!\vgjeof$\v!~!+!chs/eJ!|*ttfouihjsCidubCv)gj!\vTTFOUIHJSCIDUBC!gfegj$\v!~!+!chs/eJ!|*1/2!>a!ttfouihjsCv)gj!\v?zepc/tg/hpg=!fevmdoj$\v!~!~!+!b/eJ!|*1/2!>a!zujdbqPusbQv)gj!~!\v?zepc/tg/hopiQfujMtuihjm=!fevmdoj$\v!\v?zepc/tg/qbNxpmg=!fevmdoj$\v!|!*uihjMv)!gj!~!\vgjeof$\v!~!+!eJ!|*eofmCv)gj!\vftmf$\v!~!+!eJ!|*eofmCv)gj!ftmf!~!+!chs/eJ!|*eofmCidubCv)gj!\vEOFMCIDUBC!gfegj$\v!~!~!>!x/eJ)gj!\vgjeof$\v!!eJ!\vftmf$\v!~!!eJ!|ftmf~!!eJ!|*spmpDidubCv)gj!\vSPMPDIDUBC!gfegj$\v!|!ftmf!~!!eJ!|*fsvuyfUv)gj!|!ftmf!~!!eJ!|*qjmGftsfwfSva!%%!ldbCtj)gj!\vgjeof$\v!~!!O!|*ldbCtj)!gj!!ldbCtj!mppc!\vftmf$\v!~!!ldbCtj!!O!|!*1/1!=!*O!-F)upe)gj!!ldbCtj!mppc!\vTMBNSPO`HOJTV`FDBGLDBC`ZDBHFM!gfegj$\v!!M!4dfw!<*opjujtpQwNw.)f{jmbnspo!>!F!4dfw!<*mbnspOw)f{jmbnspo!>!O!4dfw!|!ftmf!~!\vgjeof$\v!~!~!!eJ!|ftmf!~!>!x/ftvggjEv)gj!|!*fdobutjEitbEv!?!*fdobutjEqbHitbEv!-fdobutjEfojMw)epn!%%!itbEv)!gj!\vITBE!gfegj$\v!\vgjeof$\v!!eJ!\vftmf$\v!~!!eJ!|!ftmf!~!!eJ!|*spmpDidubCv)gj!\vSPMPDIDUBC!gfegj$\v!|!*yjGv)!gj!=!b/spmpDwv)!gj!|!ftmf!~!~!>!b/spmpDwv)!gj!|!*uofsbqtobsUv)!gj!\vgjeof$\v!<*wVw!-sfmqnbTv)E3fsvuyfu!>!spmpDwv!\vftmf$\v!<*zy/wVw!-sfmqnbTv)E3fsvuyfu!>!spmpDwv!\vQJMD`WV!gfegj$\v!|!*fsvuyfUv)!gj!> "+o[M]:"| "+o[M];return z.reason+"\n"+o.join("\n")}},getShaderErrorLogId:function(){return Y}}),jw=(z(Qd,{getShaderErrorLog:Fw.getShaderErrorLog,getShaderErrorLogId:Fw.getShaderErrorLogId}),function($){return $.internalType||lz[$.type]}),Uw=function($){return"pbr"===$||"phong"===$},Lw=function($){return Uw($)||"litePhong"===$||"unlit"===$},ww=function(){var $,M=/^\s*ShaderX\s+(\w+)/im,A=/^[ \t]*\/\/[ \t]*fs[ \t]*$/gim,N=/^[ \t]*\/\/[ \t]*[Hh]ints[ \t]*:([\w\d ,\.]+)$/gm,s=/^[ \t]*\/\/[ \t]*ExtraInfo[ \t]*:[ \t]*([\w\d\+\/=]+)$/gim,X=/\/\*[\s\S]*?\*\//gm,g=/\/\/.*?$/gm,d=/\/\/ \$Debug:[A-F0-9\-]{36}$/gm,l={shared:{diffuse:{type:"vec3",anchor:"diffuseColor.rgb = diffuse;",target:" diffuse"},opacity:{type:"float",anchor:"diffuseColor.a = opacity;",target:" opacity"},emissive:{type:"vec3",anchor:"vec3 totalEmissiveRadiance = emissive;",target:" emissive"},ao:{type:"float",anchor:"#include ",action:"after",target:"float _customNodeAoValue = $$input;\nreflectedLight.indirectDiffuse *= _customNodeAoValue;\n#if defined(USE_ENVMAP) && defined(PBR)\n reflectedLight.indirectSpecular *= computeSpecularOcclusion(saturate(dot(geometry.normal, geometry.viewDir)), _customNodeAoValue, material.roughness);\n#endif\n"},position:{type:"vec3",anchor:"#include ",action:"before",target:"transformed = $$input;"},instancedposition:{type:"vec3",anchor:"#include ",action:"after",target:"transformed = $$input;"},vsfinal:{anchor:"gl_Position = uProjectMatrix * vertex;",target:" uProjectMatrix * vertex"},fsfinal:{anchor:"gl_FragColor = Id;",target:"Id"}},pbr:{roughness:{type:"float",anchor:"float roughnessFactor = roughness;",target:"float roughnessFactor = $$input;"},metalness:{type:"float",anchor:"float metalnessFactor = metalness;",target:"float metalnessFactor = $$input;"},normalmap:{type:"vec3",anchor:"#ifdef USE_NORMALMAP",action:"before",target:"normal = perturbNormal2Arb(-vViewPosition, normal, ($$input).xyz * 2.0 - 1.0, faceDirection);"},normal:{type:"vec3",anchor:"#ifdef USE_NORMALMAP",action:"before",target:"normal = $$input;"}},phong:{},litePhong:{diffuse:{type:"vec3",anchor:"Id = vec4(diffuse, 1.0);",target:"diffuse"},opacity:{type:"float",anchor:"Id.w *= opacity;",target:" opacity"},emissive:{type:"vec3",anchor:"Id.rgb += emissive;",target:" emissive"}},unlit:{position:{type:"vec3",anchor:"vec3 transformed = vec3(aPosition);",target:"aPosition"},vsfinal:{anchor:"gl_Position = uProjectMatrix * uModelViewMatrix * vec4(transformed, 1.0);",target:" uProjectMatrix * uModelViewMatrix * vec4(transformed, 1.0)"},fsfinal:{anchor:"gl_FragColor = color;",target:" color"}}},J={};for($ in l)if("shared"!==$){var z=l.shared,C=l[$];if("unlit"!==$)for(var o in z)C[o]||(C[o]=z[o]);var Y=["head","final"];for(o in C)"vsfinal"!=o&&"fsfinal"!=o&&Y.push(o);J[$]=new RegExp("^\\s*("+Y.join("|")+")\\s*{$","i")}function K($){return $.replace(/^[ \t]*#include +<(physical.vs)>/gm,v)}function v($,z){var C=_[z];return K(C=C?Gv(C,!0):Qd.getShaderChunk(z))}var O=/(?:^|\n)\s*([a-zA-Z_][a-zA-Z0-9_]*\s+[a-zA-Z_][a-zA-Z0-9_]*(\[\s*\d+\s*\])?\s*)(?:;)/gm;function f($,C){return $.replace(/;(\s*\/\/ \$Debug:[A-F0-9\-]{36})?/g,"$&\n").replace(/\n+/g,"\n").replace(O,function($,z){return 0===$.trim().indexOf("#")?$:$.replace(z,C+" "+z)})+"\n"}var Q=["vs","fs"];function W(Y,$){var v,O={code:""},t=$.split("\n"),c="",y=[],_=J[Y],C={},P=!1,Z=!1;function X($,z){(z=C[z])&&($+=" "+z),c&&c.code.push($)}for(var z,o=0,o=0;og.distanceTo(N[2])?s:N)[2],g=(N=g.distanceTo(s))/2,s=(Y.toSpace(S,J=J||new s9),p.setFromPoints(J.vertices.near).expandByPoints(J.vertices.far),p.getCenter()),Y=N/W,Y=(s.x=Math.floor(s.x/Y)*Y,s.y=Math.floor(s.y/Y)*Y,s.applyMatrix4(u),Math.min(4*N,f));n=qz(I_(),-g,g,-g,g,Y/1e3,Y),a.set(.5,0,0,.5,0,.5,0,.5,0,0,.5,.5,0,0,0,1).multiply(n),i(s,Y/2),a.multiply(D),x[A]=a.toArray(),h[A]=[s.x,s.y,s.z,N,N,Y],b[A]="pcss"===O?f/N:1,(g=(g=M[A])||(M[A]=new M4(v,o,0,0,{minFilter:9728,magFilter:9728,width:W,height:W}))).setSize(o,W,W),G(g)}}},P.getShadow=function(){var $={degreeX:o,degreeZ:M,intensity:N,quality:C,type:O,radius:g,bias:s,bounding:A,cascades:t,lambda:c,fade:Y,pcssLightSize:y,pcssIntensity:_};return 1!==Q&&($.boundExtend=Q),$},P.setShadow=function($,z){P.enable=$=!!$,"object"==typeof z&&(z.intensity!==Kd&&(N=z.intensity),z.bias!==Kd&&(s=z.bias),z.radius!==Kd&&(g=z.radius),z.cascades!==Kd&&(t=z.cascades),z.lambda!==Kd&&(c=z.lambda),z.fade!==Kd&&(Y=z.fade),z.pcssLightSize!==Kd&&(y=z.pcssLightSize),z.pcssIntensity!==Kd&&(_=z.pcssIntensity),z.degreeX!==Kd&&(o=z.degreeX,P.direction=null),z.degreeZ!==Kd&&(M=z.degreeZ,P.direction=null),z.quality!==Kd&&(C=z.quality),z.bounding!==Kd&&(A=z.bounding),z.type!==Kd&&O!==z.type&&(O=z.type),W=Z(C),z.boundExtend!==Kd&&(Q=z.boundExtend)),$&&P.setupShadowCamera(),v.iv()},null),j=(P.tryInvalidateLater=function($,z){"modelLoaded"===z&&(R&&F3(R,!0),R=i3(function(){R=null,P.refresh()},P,Kd,200))},P.refresh=function(){this.enable&&(this.setupShadowCamera(),v.iv())},P.tryUpdateBounding=function($){var z,C,o;A||(z=this.boundingSphere)&&(C=(new ad).fromArray(L_($,v.getMat($))),$=$.getAnchor3d(),o=new Dd,z.containsPoint(o.set(0-$.x,0-$.y,0-$.z).applyMatrix4(C))&&z.containsPoint(o.set(0-$.x,0-$.y,1-$.z).applyMatrix4(C))&&z.containsPoint(o.set(0-$.x,1-$.y,0-$.z).applyMatrix4(C))&&z.containsPoint(o.set(0-$.x,1-$.y,1-$.z).applyMatrix4(C))&&z.containsPoint(o.set(1-$.x,0-$.y,0-$.z).applyMatrix4(C))&&z.containsPoint(o.set(1-$.x,0-$.y,1-$.z).applyMatrix4(C))&&z.containsPoint(o.set(1-$.x,1-$.y,0-$.z).applyMatrix4(C))&&z.containsPoint(o.set(1-$.x,1-$.y,1-$.z).applyMatrix4(C))||P.setupShadowCamera())},[1,1]);P.createShadow=function($,z){var C,o;if($=$||v._frameState.renderState.directUniforms(),o=!1!==v._getFrameRenderOptions("renderShadow")?v._getFrameRenderOptions("useReflectorSelfShadowMap")&&P.mapForReflector?P.mapForReflector.texture:0z.length;)z.push(new s9);z.length=$.length;for(var o=0;o<$.length;o++){var M=z[o];if(0===o)for(var A=0;A<4;A++)M.vertices.near[A].copy(this.vertices.near[A]);else for(A=0;A<4;A++)M.vertices.near[A].lerpVectors(this.vertices.near[A],this.vertices.far[A],($[o-1]-C)/(1-C));if(o===$.length-1)for(A=0;A<4;A++)M.vertices.far[A].copy(this.vertices.far[A]);else for(A=0;A<4;A++)M.vertices.far[A].lerpVectors(this.vertices.near[A],this.vertices.far[A],($[o]-C)/(1-C))}},getBreaks:(Bw=[],$9=[],function($,z,C,o,M){M===Kd?M=[]:M.length&&(M.length=0);var A=z,z=C,C=o,N=$,s=M;Bw.length=0,$9.length=0;for(var g=A,Y=z,v=C,O=$9,t=1;t>4])s.set(Gi,_[P]);else for(var Z=0;Z<16;Z++)s[_[P]+Z]=t[N+Z];_[P]=_[P]+16}return M.version=o?C.shadowVersion:C.msVersion,M.lodVersion=C.lodVersion,M.id=z._id,M.buffer=y}(v,C,z,M);if(!M&&$._picking){if(z._highlightInvalid)return;Y=function($,z){if((A=z.cachePick).lodVersion===z.lodVersion&&A.version===z.csVersion)return A.buffer;for(var C,o=z.lod,M=z.lodSum,A=z.cachePick,N=[],s=new Uint16Array($),g=0;g<$;g++)s[g]=0,M[g]?(C=4*M[g],A.buffer&&A.buffer[g]&&A.buffer[g].length===C?delete(O=A.buffer[g])._bufId:O=new p_(C),N.push(O)):N.push(null);for(var Y=0,v=0,O=A.buffer,t=z.cs,c=4*z.length;v>4])M.set(Gi,g);else for(var v=0;v<16;v++)M[g+v]=A[g+v];return o.length=z.length,o.version=C?z.shadowVersion:z.msVersion,o.id=$._id,o.buffer=M}(C,g,M)},!M&&$._picking){if(g._highlightInvalid)return;N.aBatchColor=function($){var z=$.cachePick;if(z.length!==$.length||z.version!==$.csVersion){z.buffer=new p_(4*$.length);for(var C=0,o=z.buffer,M=$.cs,A=4*$.length;CVertices: "+A.vertices+"
Faces: "+A.faces+"
Lines: "+A.lines+"
"+(A.points?"Points: "+A.points+"
":"")+"Buffers: "+z+"
Programs: "+($._validProgramCount||0)+"
Cache Models: "+Jd.keys(Fh).length+"
Shape3d Models: "+Jd.keys(ih).length,(o=this.getPresentingReality())&&(z+="
VR fps: "+o.getFps()),A.textureCache&&(o=A.textureCache.count,z+="
2D Dynamic Textures: "+A.textureCache.count,02D Dynamic pixels: "+(1e6<(o=A.textureCache.pixels)?Math.round(o/1e6)+"M":1e3"+C.substr(M.index+1):C+(o?"
"+o:"")),$._debugRendererInfo=A):A=$._debugRendererInfo=null),A&&(z+="
"+A),z},getFrameState:function(){return this._frameState},isBoundingBoxInView:(ZZ=new U.Math.Box3,XZ=new U.Math.Matrix4,function($){if(!($=$ instanceof U.Data?this.getData3dUI($):$)||!$.mat)return!0;var z=$.getBoundingBox(!0);return ZZ.copy(z).applyMatrix4(XZ.fromArray($.mat)),this.getFrustum().intersectsBox(ZZ)}),updateScene:function(){var z=this,C=(z.emitPreUpdate(),z._81O=fd,z.overlappingBox.clear(),z.initSkeletonDatas(),z._40Q),o=(C.init(),z.getGL()),$=z.dm();if($.isHierarchicalRendering())$.eachByHierarchical(function($){($=z.getData3dUI($))&&$.update(z,o,C)});else for(var M,A=$.getDatas().getArray(),N=A.length,s=0;s=$)break;o._43Q[o._44Q=C.id]&&!Od[Bt.length]||(C.render(M,o,s),l(!0),z=!0)}}return z}}},isHighlightDrawing:function(){return!!this._inHighlightPass},_renderAxisAndEditHelper:function($,z){if(!$&&!z)return!1;var C=this.getGL(),o=this._frameState,M=(A=o.renderState).glState,A=A.directUniforms();return o.renderState.attribs.disable(),M.depth.enabled=!1,A.uTransparent=!1,A.shadowReceive=!1,M.blend.enabled=!1,M.depth.mask=!0,(o=!this._fogDisabled)&&(A.uFog=!1),$&&this._32O._42(C),z&&this._30O._42(C),o&&(A.uFog=!0),e1(C,fd),k1(C,fd),!0},renderLayers:function($,z){for(var C=0,o=($=z?pK($):$).length;Cg?($.deleteBuffer(o._buf),o._buf=null,M[C]=null):N++);if(N=WK)){var z,C=this,o=(C._renderLayerSettingsVersion=WK,C._sortedRenderLayers=Jd.keys(C._renderLayerInfoMap));for(z in VK)0<=o.indexOf(z)||o.push(z);o.sort(function($,z){return C.getRenderLayerInfo($).priority-C.getRenderLayerInfo(z).priority})}},setRenderLayerInfo:function($,z){aK(0,$,this._renderLayerInfoMap);var C,o=this.getRenderLayerInfo($),$=U3(o);for(C in z)"mask"!==C&&(o[C]=z[C]);this._gatherRenderLayersByPriority(!0),this.fp("renderLayerInfo",$,o)},getRenderLayerInfo:function($){return this._renderLayerInfoMap[$]||VK[$]},setRenderLayerInfoMap:function($){var z,C=this._renderLayerInfoMap,o=!(this._renderLayerInfoMap={});for(z in $)this.setRenderLayerInfo(z,$[z]),o=!0;o||this._gatherRenderLayersByPriority(!0),this.fp("renderLayerInfoMap",C,this._renderLayerInfoMap)},getRenderLayerInfoMap:function(){return this._renderLayerInfoMap},getRenderLayerKeys:function(){return this._sortedRenderLayers},getExternalSceneRotation:function(){return null},setCustomShadowProcess:function($){this._customShadowProcess=$}}),Qd.registerTextureLoader=function($){KZ?KZ.push($):KZ=[$]},Qd.unregisterTextureLoader=function($){if(KZ)return 0<=($=KZ.indexOf($))&&(KZ.splice($,1),0===KZ.length&&(KZ=null),!0)},function($,z){return(5131!==z||$.isWebGL2()?z:null!==($=$._glExtensions.get("OES_texture_half_float"))?$.HALF_FLOAT_OES:null)||5121}),qi=function($,z){z?($._needDeleteGetAttrBackupFunc=!$.hasOwnProperty("getAttr"),$._textureAttrObject=z,$._getAttrBackupFunc=$.getAttr,$.getAttr=HE):(delete $._textureAttrObject,$._needDeleteGetAttrBackupFunc?delete $.getAttr:$.getAttr=$._getAttrBackupFunc,delete $._needDeleteGetAttrBackupFunc,delete $._getAttrBackupFunc)},Ti=function($,z,C){if(!$.isWebGL2())return z;var o=z;return 6403===z&&(5126===C&&(o=33326),5131===C&&(o=33325),5121===C&&(o=33321)),33319===z&&(5126===C&&(o=33328),5131===C&&(o=33327),5121===C&&(o=33323)),6407===z&&(5126===C&&(o=34837),5131===C&&(o=34843),5121===C&&(o=32849)),6408===z&&(5126===C&&(o=34836),5131===C&&(o=34842),5121===C&&(o=32856)),33325!==(o=36249===z&&5125===C?36208:o)&&33326!==o&&34842!==o&&34836!==o&&36208!==o||$._glExtensions.get("EXT_color_buffer_float"),o},ri=pA(),Bi=(Jd.assign(w.Graph3dView.prototype,{getTextureMap:function(){return this._2O},setTextureStyle:function($,z,C){return!(!($=j($))||!$.texture||(this.deleteTexture($),$[z]=C,this.iv(),0))},setTexture:function($,z,C){var o,M;C=C||"",(o=this._2O[$])?o[C]&&(M=this.getGL())&&o[C]!==z&&M.deleteTexture(o[C]):o=this._2O[$]={},o[C]=z},deleteTexture:function($){if(this._2O){$&&$.uuid&&($=$.uuid);var z=this._2O[$];if(z){delete this._2O[$];var C,o=this.getGL();for(C in z)o.deleteTexture(z[C]);return!0}}},invalidateCachedTexture:(WZ=[],VZ=["shape3d.image"],["top","bottom","from","to"].forEach(function($){VZ.push("shape3d."+$+".image")}),["all","left","right","top","bottom","front","back"].forEach(function($){WZ.push($+".image")}),eZ=function($){return!!$&&(Dv($)&&!ed($)?!$.tagName&&(!$.texture||eZ($.image)):Vd($)&&qh.test($))},function($,z){if($ instanceof hK){for(var C,o,M,A,N=this.getData3dUI($),s=(N&&(C=N.invalidateCachedTexture(this.getGL())),$.getMaterials()),g=0,Y=s.length;gQd.graph3dMaxVectorCacheTime)return A.redraw(),N._emptyTexture;if(!S3(t,z))return N._emptyTexture}g=A._getTextureFromSymbol(N,z,$,t,s,c,!s.dynamic)}Z=""}else{if(!S3(s,z))return N._emptyTexture;v=o.image,o.image=s,g=A.createTexture(o,c),o.image=v}s.dynamic||A.setTexture(Y,g,Z)}else{var O,t=z&&(z.s("texture.cache")||z.s("shape3d.image.cache")||s.textureCache),c=A.getPresentingReality();if(c&&z&&(z._textureUpdateFrame===N._renderInfo.frame?t=!0:z._textureUpdateFrame=N._renderInfo.frame),t&&(g=(O=A.getData3dUI(z)).getCachedTexture(C))&&O.interactiveInfo&&g.interactiveInfo&&(O.interactiveInfo[g.interactiveInfo.key]=g.interactiveInfo.info),!g){if(t){if(N._renderInfo.textureCache.time>Qd.graph3dMaxVectorCacheTime)return A.redraw(),N._emptyTexture;if(!S3(s,z))return N._emptyTexture}z&&(1!==z.s("texture.scale")?P=z.s("texture.scale"):1!==z.s("shape3d.texture.scale")&&(P=z.s("shape3d.texture.scale")));var y,_,P,P=P||1,Y=(v=z&&(z.s("fixSizeOnScreen")||z.s("shape3d.fixSizeOnScreen")))?9728:9729;v?"number"==typeof v&&(P*=v<0?1:v):z&&(z.s("vector.dynamic")||z.s("shape3d.vector.dynamic"))&&(v=(O=O||A.getData3dUI(z)).getVectorDynamicSize());"billboard"===(Z=z&&z.s("shape3d"))?y=z.getTall()/z.getWidth():"plane"===Z&&(y=z.getHeight()/z.getWidth());var Z=z&&z.s("texture.width"),Z=y&&Vv(Z)?vK(s,z,A,Math.min(4096,Z)):vK(s,z),X=y?OK(s,z,A,Math.min(4096,Z*y)):OK(s,z);v&&(_=A._devicePixelRatio||X3,Z=0","// FS","uniform sampler2D image;","varying vec2 vUv;","void main() {"," gl_FragColor = texture2D(image, vUv);"," gl_FragColor.rgb = vec3(dot(gl_FragColor.rgb, vec3(0.299, 0.587, 0.114)));","}"].join("\n")),this.renderModel(C,{type:QZ,image:M}),A=C.swapTexture(M),this.renderModel(C,{type:"blitScreen",image:A}),C.swapTexture(A),g.generateMipmaps&&this.regenerateMipmap(s,M))}this._textureTasks=null}}})}),function($,z,C){if(!$)return 0;if($.texture){if($.width)return $.width;$=j($.image)}return vK($,z,C)}),$4=function($,z,C){if(!$)return 0;if($.texture){if($.height)return $.height;$=j($.image)}return OK($,z,C)},z4=((((o=w.EnvmapRenderer=function($){this.gv=$,this._envmaps={},this._envmapHash={},this._probeCaptureTime={},this._envmapPoolCachedByImage=[],this._pingPongRenderTarget=null,this._equirectMaterial=null,this._blurMaterial=null,this._lastCaptureFrame=0,this._cubemapMaterial=null,this._envmapIntensity={}}).prototype={}).constructor=o).prototype.changeEnvmapType=function($){if("legacy"===$){for(var z in this.setEnvmapByProbeId=this.setEnvmapLegacy,this.onBeforeRender=this.onBeforeRenderLegacy,this._envmaps)FE(this._envmaps,z,null);this._envmapHash={},this._probeCaptureTime={}}else this.setEnvmapByProbeId=this.setEnvmap,this.onBeforeRender=this.onBeforeRenderNew},o.prototype.invalidateEnvmap=function($){var z=this.gv;"legacy"!==z.getEnvmapType()&&z.getGL()&&($?(delete this._envmapHash[$],delete this._probeCaptureTime[$]):(this._envmapHash={},this._probeCaptureTime={}),z.iv())},o.prototype.dispose=function(){var $,z=this,C=[z._pingPongRenderTarget,z._hdrDynamicComposeRTT];for($ in z._envmaps)C.push(z._envmaps[$]);t1(z.gv,C),z._envmaps={},z._envmapPoolCachedByImage=[],z._envmapHash={},z._pingPongRenderTarget=null,z._equirectMaterial=z._cubemapMaterial=z._blurMaterial=null,z._hdrDynamicComposeRTT=null,z._envmapLegacy=null,z._lastLegacyImage=null},o.prototype.onBeforeRenderLegacy=function($){this.gv._picking||(this.assureTextureLegacy($),this.assureEnvmapPoolForImage())},o.prototype.assureTextureLegacy=function($){var z,C,o=this.gv.getEnvmap();o!==this._lastLegacyImage&&(this._envmapLegacy&&($.deleteTexture(this._envmapLegacy),this._envmapLegacy=null),o?(z=Qd.getImage(o))&&z.tagName&&(z=Qd.resizeImagePOT(z,!0),C=this._envmapLegacy=$.createTexture(),$.activeTexture(33984),$.bindTexture(34067,C),$.texParameteri(34067,10240,9729),$.texParameteri(34067,10241,9729),$.texImage2D(34069,0,6408,6408,5121,z),$.texImage2D(34070,0,6408,6408,5121,z),$.texImage2D(34071,0,6408,6408,5121,z),$.texImage2D(34072,0,6408,6408,5121,z),$.texImage2D(34073,0,6408,6408,5121,z),$.texImage2D(34074,0,6408,6408,5121,z),$.bindTexture(34067,$._emptyCubeTexture),this._lastLegacyImage=o):this._lastLegacyImage=o)},o.prototype.setEnvmapLegacy=function($,z,C){$.uEnvMap=this._envmapLegacy,$.envMapIntensity=C},o.prototype.onBeforeRenderNew=function($){this.gv._picking||(this.assureTextureNew($),this.resetUniformCache(),this.assureEnvmapPoolForImage())},o.prototype.isHDR=function($){return"string"==typeof $&&($.indexOf(".hdr")===$.length-4||$.indexOf(".HDR")===$.length-4)},o.prototype.isDynamicImage=function($){return $&&$.comps&&$.comps[0]&&"__ht_envmap_bg__"===$.comps[0].type},o.prototype.isImageReady=function($){var z;if(this.isHDR($))z=Qd.getHdrTexture($);else if(z=Qd.getImage($),this.isDynamicImage(z)&&!this.isImageReady(z.comps[0].image))return!1;return z},o.prototype.assureTextureNew=function($){var z=this,C=z.gv,o=C.getEnvmap(),M=z._envmapHash,A=z._envmaps,N=z._envmapIntensity,$=$._renderInfo.frame;if(this._lastCaptureFrame>=$||C._picking)for(s in o)Y=o[s].intensity,N[s]=Y==fd?1:Y;else{for(var s in o){var g=o[s],Y=g.intensity;switch(N[s]=Y==fd?1:Y,g.type){case"sphere":(X=g.image)!==M[s]&&(X?z.isImageReady(X)&&(M[s]=X,FE(A,s,z.fromEquirectangular(X))):(M[s]=X,FE(A,s,null)));break;case"cube":var v=g.texture;if(v!==Kd)M[s]!==v&&(M[s]=v,FE(A,s,z.fromCubemap(v,g.encoding)));else{var O=g.images;if(O&&6===O.length){if((X=O.join(","))!==M[s]){for(var t=!0,c=!1,y=0;y<6;y++){if(!O[y]){c=!0;break}if(!Qd.getImage(O[y])){t=!1;break}}c?(M[s]=X,FE(A,s,null)):t&&(M[s]=X,FE(A,s,z.fromCubemap(O)))}}else M[s]=Kd,FE(A,s,null)}break;case"skybox":var _,P=C.getSkybox(),Z=!1;if(P){if("sphere"===(v=P.s("shape3d")))X=P._id+"_"+P.s("shape3d.image");else for(var X=P._id,y=0;y<6;y++)X+="_"+P.s(Mw[y]+".image");if(X!==M[s]){if("sphere"===v)(_=P.s("shape3d.image"))==fd?Z=!0:t=z.isImageReady(_);else for(t=!0,y=0;y<6;y++){if((_=P.s(Mw[y]+".image"))==fd){Z=!0;break}if(!Qd.getImage(_)){t=!1;break}}Z?(M[s]=X,FE(A,s,null)):t&&(M[s]=X,FE(A,s,z.fromSkybox()))}}else A[s]&&(M[s]=Kd,FE(A,s,null));break;case"probe":var d,l,J=g.pos,K=g.size;(X=J[0]+"_"+J[1]+"_"+J[2]+"_"+K)!==M[s]&&(d=this._probeCaptureTime[X],l=Date.now(),d||(this._probeCaptureTime[X]=d=l),l-d>Qd.envmapProbeMinWaitTime&&!Ov&&!ip||l-d>Qd.envmapProbeMaxWaitTime?(delete this._probeCaptureTime[X],M[s]=X,FE(A,s,z.fromSceneProbe(J,K,g.filter))):C.iv())}}Jd.keys(A).forEach(function($){o[$]===Kd&&(delete M[$],FE(A,$,null))})}},o.prototype.resetUniformCache=function(){this._frameUniformCache={}},o.prototype.setEnvmap=function($,z,C){var o=$.uuid,M=this._frameUniformCache,A=(A=this._envmaps[z])&&A.texture;M.hasOwnProperty(o)&&M[o]===A||(M[o]=A,$.uEnvMap=A),C&&(C*=this._envmapIntensity[z]||0),$.envMapIntensity=C},o.prototype.assureEnvmapPoolForImage=function(){for(var $=this._envmapPoolCachedByImage,z=0,C=$.length;z>1);N<=1&&(N=0,$.texParameteri(g,10241,M.options.minFilter||9729),$.texParameteri(g,10240,M.options.magFilter||9729),$.renderbufferStorage(A,M.depthInternalFormat,z,C)),o._maxSamplesChecked=!0,o.maxSamples=M.options.samples=N,$.bindRenderbuffer(A,fd)}N&&(M._MSAAFbo||(M._MSAAFbo=$.createFramebuffer(),M._MSAARbO=$.createRenderbuffer()),$.bindRenderbuffer(A,M._MSAARbO),$.renderbufferStorageMultisample(36161,N,32856,z,C),Vz($,M._MSAAFbo),$.framebufferRenderbuffer(36160,36064,A,M._MSAARbO),$.framebufferRenderbuffer(36160,36096,A,M.depth),ez($),$.bindRenderbuffer(A,null));for(var Y=M.multiple||1,v=0;vI(_)?y:_,A===P4?$.setRotationX($.getRotationX()+z):A===Z4?$.setRotationY($.getRotationY()+z):A===X4&&$.setRotationZ($.getRotationZ()+z))});else if("move"===A||K4[A]){if(A===d4||A===l4||A===J4)M._87O||s.beginTransaction(),M.fi({kind:M._87O?"betweenEditScale":"beginEditScale",event:z}),M._87O=1;else{if(!M._moving){if(cI(X)?Z:X;M.sm().each(function($){R($)&&M.isRotationEditable($)&&(c===P4?$.setRotationX($.getRotationX()+d):c===Z4?$.setRotationY($.getRotationY()+d):c===X4&&$.setRotationZ($.getRotationZ()+d))})}else{var l,J,K,f,o=o.p3(),N=N/_*(W=M.getPositionInfo(o)).width,A=-1*A/P*W.height,Q=[(W=$1(M))[0]*N,W[4]*N,W[8]*N],W=[W[1]*A,W[5]*A,W[9]*A],Q=[o[0]+(Q[0]+W[0]),o[1]+(Q[1]+W[1]),o[2]+(Q[2]+W[2])],W=u_(M.getEye(),Q,!0);if(c===d4||c===l4||c===J4)M._87O||y.beginTransaction(),M.fi({kind:M._87O?"betweenEditScale":"beginEditScale",event:$}),M._87O=1,(l=Gz(M,o,W,Q))&&(D=0,c===d4?J="X":c===l4?(J="Tall",D=1):c===J4&&(J="Y",D=2),(K=["X","Y","Tall"]).splice(K.indexOf(J),1),f=A_($),e=(l[D]-o[D])/100,M.sm().each(function(z){var $,C,o;R(z)&&M.isSizeEditable(z)&&($=z["getScale"+J](),z["setScale"+J](C=$+e),f&&(o=C/$,K.forEach(function($){z["setScale"+$](z["getScale"+$]()*o)})))}));else if(c===c4||c===y4||c===_4){if(!M._moving){var V=s_($),V=gm(M,V,z.__lastClientPoint__);if(Y_({x:0,y:0},V)z.touchRotateThreshold?(C.thetaStarted=!0,C.theta=W):s=0),Y=x*(l+D)/2/M.getHeight(),W=0,(g=C.phi)==fd?g=C.phi=Y:(W=Y-g,C.phiStarted||Math.abs(W)>z.touchRotateThreshold?(C.phiStarted=!0,C.phi=Y):W=0),g=Math.sqrt(V.x*V.x+V.y*V.y),(Y=C.vlen)?(V=Q-y.x,O=l-y.y,t=o-y.x,y=D-y.y,V=Math.sqrt(V*V+O*O),O=Math.sqrt(t*t+y*y),(y=z._sign2(V-(t=Y/2)))*(V=z._sign2(O-t))<0||0===y&&0===V?(v=1,C.vlen=g):(v=v||g/Y,C.scaleStarted||Math.abs(v-1)>z.touchScaleThreshold?(C.vlen=g,C.scaleStarted=!0):v=1)):(Y=C.vlen=g,v=1),1!==v&&M.setZoom(v),(W||s)&&z.rotate($,s,-W),C.lastCenter={x:(o+Q)/2,y:(D+l)/2}):C.pan?z.pan($,N,A):(_=M.getWidth(),P=M.getHeight(),_&&P&&z.rotate($,Z=-_d*N/_,X=-_d*A/P))}}},_sign2:function($){return Math.abs($)>16&255)/255,($>>8&255)/255,(255&$)/255,($>>24&255)/255]}),Y4=function($){this.gv=$,this.gv.pickColorMap={_pickIdUsed:5e3,_outside:Kd},this._cacheQuery=[],this._cacheLength=0,this._cacheIdx=0},v4=(V_(Y4,Jd,{_iv:!0,iv:function(){this._iv=!0},get:function($,z,C){this.validate();var o=this,M=o.gv;if(!M.getGL())return fd;var A=o._resolution,N=o.renderTarget,s=N.getSize()[1],g=Math.round($.x*A),Y=Math.ceil($.width*A),v=Math.ceil($.height*A),O=s-Math.round($.y*A)-v;if(!C)for(var t=o._cacheQuery,c=o._cacheIdx;c>=o._cacheIdx-o._cacheLength+1;c--){var y=t[3&c];if(y[0]===g&&y[1]===O&&y[2]===Y&&y[3]===v&&y[4]===z)return y[5]}var _,P,Z,X=N.readPixels(g,O,Y,v),d=M.pickColorMap;if(z){for(var l=Math.round((Y-1)/2),J=Math.round((v-1)/2),K=Math.floor(Math.max(Y,v)/2),c=0;c<=K;c++){var f=l-c,Q=l+c,W=J-c,V=J+c;if(0<=W)for(Z=f;Z<=Q;Z++)if(_=LE(W,Z,g,O,Y,v,s,A,X,d,C))return wE(o,g,O,Y,v,z,C,_);if(0<=f)for(P=1+W;P>2)%Y)/A),P=Math.round((s-1-(O+Math.floor((c>>2)/Y)))/A))||x[(D=_.data)._id]||(a.add(D),x[D._id]=D,k[e]=!0);return wE(o,g,O,Y,v,z,C,a)},getResolution:function(){return this._resolution},dispose:function(){t1(this.gv,this.renderTarget),this.renderTarget=null},validate:function(){var $,z,C,o,M,A=this.gv,N=A.getGL();N&&(($=this.renderTarget)||(this.renderTarget=$=new M4(A,1,1)),this._iv&&(this._iv=!1,this._cacheLength=0,z=this._resolution=A._pickerResolution*A.getDevicePixelRatio(),C=Math.round(z*A.getWidth()),o=Math.round(z*A.getHeight()),$.setSize(N,C,o),M=!1,A._40Q.each(function($){!M&&$.isBatchInvalid()&&(M=!0)}),M&&A.updateScene(),$.bind(N),N.colorMask(!0,!0,!0,!0),N.clear(16384),A.overlappingBox.clear(),A.setViewport(N,0,0,C,o),A.renderPickScene(z),$.unbind(N)))}}),function($){this.gv=$}),O4=(V_(v4,Jd,{gap:0,size:0,_42:function($){var z,C=this,o=C.gv,M=o._gridGap,A=o._gridSize;if(o._gridVisible){if(C.gap!==M||C.size!==A){for(var N=[],s=o._gridSize/2,g=M*s,Y=0;Y<2*s+1;Y++){var v=6*Y,O=6*(2*s+1)+v;N[v]=-g,N[1+v]=0,N[2+v]=Y*M-g,N[3+v]=g,N[4+v]=0,N[5+v]=Y*M-g,N[O]=Y*M-g,N[1+O]=0,N[2+O]=-g,N[3+O]=Y*M-g,N[4+O]=0,N[5+O]=g}C.vs=new p_(N),C.gap=M,C.size=A}R1(o),_1($),d1($),(A=!o._fogDisabled)&&((z=kd.for($).directUniforms()).uFog=!1),f1($,1,o._gridColor,o._buffer.vs,C.vs),W1($,0,C.vs.length/3,1),A&&(z.uFog=!0),l1($),P1($)}else C.vs=C.gap=C.size=fd}}),function($){this.gv=$}),t4=(V_(O4,Jd,{_42:function($){var z,C,o,M,A=this.gv,N=A._buffer.vs,s=A._axisXColor,g=A._axisYColor,Y=A._axisZColor,v=A._originAxisVisible,O=A._centerAxisVisible;(v||O)&&(C=Mt?4:6,R1(A),_1($),d1($),v&&(o=A.getCenterInfo(),M=od(o.width,o.height)/5,f1($,1.5,s,N,new p_([0,0,0,M,0,0,v=.8*M,z=.05*M,0,v,0,z,v,-z,0,v,0,-z,v,z,0,0,0,0,0,M,0,z,v,0,0,v,z,-z,v,0,0,v,-z,z,v,0,0,0,0,0,0,M,z,0,v,0,z,v,-z,0,v,0,-z,v,z,0,v])),W1($,0,2,1),W1($,1,6,C),f1($,fd,g),W1($,7,2,1),W1($,8,6,C),f1($,fd,Y),W1($,14,2,1),W1($,15,6,C)),O&&(v=(z=A._center)[0],C=z[1],O=z[2],o=A.getPositionInfo(z),M=od(o.width,o.height)/20,f1($,1.5,s,N,new p_([v,C,O,v+M,C,O,v,C,O,v,C+M,O,v,C,O,v,C,O+M])),W1($,0,2,1),f1($,fd,g),W1($,2,2,1),f1($,fd,Y),W1($,4,2,1)),l1($),P1($))}}),function($){this.gv=$}),c4="edit_tx",y4="edit_ty",_4="edit_tz",P4="edit_rx",Z4="edit_ry",X4="edit_rz",d4="edit_sx",l4="edit_sy",J4="edit_sz",K4={},f4=(K4[c4]=101,K4[y4]=102,K4[_4]=103,K4[P4]=104,K4[Z4]=105,K4[X4]=106,K4[d4]=107,K4[l4]=108,K4[J4]=109,V_(t4,Jd,{_42:function($){var z,C,o,M,A,N,s,g,Y,v,O,t,c,y,_=this,P=_.gv,Z=P.sm().ld();!Z||!P.isEditable(Z)||P.isEditHelperDisabled()||!R(Z)||P.isFirstPersonMode()&&(P.isMouseRoamable()||Yt)||(R1(P),z=P.isMovable(Z),C=P.isRotationEditable(Z),o=P.isSizeEditable(Z),M=P._axisXColor,A=P._axisYColor,N=P._axisZColor,s=P._editSizeColor,t=Z.p3(),P=(g=P.isOrtho()?(g=P.getCenterInfo(),od(g.width,g.height)/8):Y_(P.getEye(),t)/10)/(P.isPicking()?5:10),Y=.4*(g*=.7),v=t[0],O=t[1],t=t[2],y=[0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0],z&&_._17O($,Z,c4,M,y,[v,O-P,t,v+g,O-P,t,v+g,O,t,v+g,O,t,v,O,t,v,O-P,t,v,O-P,t+P,v+g,O-P,t+P,v+g,O-P,t,v+g,O-P,t,v,O-P,t,v,O-P,t+P]),c=v+g,o&&_._17O($,Z,d4,s,y,[c,O-P,t,c+Y,O-P,t,c+Y,O,t,c+Y,O,t,c,O,t,c,O-P,t,c,O-P,t+P,c+Y,O-P,t+P,c+Y,O-P,t,c+Y,O-P,t,c,O-P,t,c,O-P,t+P]),c+=Y,C&&_._17O($,Z,P4,M,y,[c,O-P,t,c+Y,O-P,t,c+Y,O,t,c+Y,O,t,c,O,t,c,O-P,t,c,O-P,t+P,c+Y,O-P,t+P,c+Y,O-P,t,c+Y,O-P,t,c,O-P,t,c,O-P,t+P]),y=[0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0],z&&_._17O($,Z,y4,A,y,[v,O,t,v,O+g,t,v-P,O+g,t,v-P,O+g,t,v-P,O,t,v,O,t,v,O,t,v,O,t-P,v,O+g,t-P,v,O+g,t-P,v,O+g,t,v,O,t]),c=O+g,o&&_._17O($,Z,l4,s,y,[v,c,t,v,c+Y,t,v-P,c+Y,t,v-P,c+Y,t,v-P,c,t,v,c,t,v,c,t,v,c,t-P,v,c+Y,t-P,v,c+Y,t-P,v,c+Y,t,v,c,t]),c+=Y,C&&_._17O($,Z,Z4,A,y,[v,c,t,v,c+Y,t,v-P,c+Y,t,v-P,c+Y,t,v-P,c,t,v,c,t,v,c,t,v,c,t-P,v,c+Y,t-P,v,c+Y,t-P,v,c+Y,t,v,c,t]),y=[1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0],z&&_._17O($,Z,_4,N,y,[v,O,t,v,O,t+g,v,O-P,t+g,v,O-P,t+g,v,O-P,t,v,O,t,v,O-P,t,v-P,O-P,t,v-P,O-P,t+g,v-P,O-P,t+g,v,O-P,t+g,v,O-P,t]),c=t+g,o&&_._17O($,Z,J4,s,y,[v,O,c,v,O,c+Y,v,O-P,c+Y,v,O-P,c+Y,v,O-P,c,v,O,c,v,O-P,c,v-P,O-P,c,v-P,O-P,c+Y,v-P,O-P,c+Y,v,O-P,c+Y,v,O-P,c]),c+=Y,C&&_._17O($,Z,X4,N,y,[v,O,c,v,O,c+Y,v,O-P,c+Y,v,O-P,c+Y,v,O-P,c,v,O,c,v,O-P,c,v-P,O-P,c,v-P,O-P,c+Y,v-P,O-P,c+Y,v,O-P,c+Y,v,O-P,c]))},_17O:function($,z,C,o,M,A){var N=this.gv,s=N._buffer,g=(Y=kd.for($)).directUniforms(),Y=Y.directAttribs();N._picking&&(N.pickColorMap[N=K4[C]]={data:z,part:C},g.uFixPickReverseColor=g4(N)),Z1($,fd,!0,fd,!0,fd,!1),g.uDiffuse=o,Y.aPosition=e1($,s.vs,new p_(A)),Y.aNormal=e1($,s.ns,new p_(M)),d1($),W1($,0,12),l1($),X1($)}}),U.Raycaster=function($){this.gv=$,this.maxTriangleTest=1/0,this.backfaceCulling=!0,this.triangleTestEpsilon=1e-9}),Q4=(D_("Raycaster",Jd,{getTriangleTestEpsilon:function(){return this.triangleTestEpsilon},setTriangleTestEpsilon:function($){return this.triangleTestEpsilon=$,this},getBackfaceCulling:function(){return this.backfaceCulling},setBackfaceCulling:function($){return this.backfaceCulling=$,this},intersect:function($){var z=this.gv.getDataAt($);return z?this.intersectObject($,z):null},intersectObjects:function(z,$,C){var o,M,A,N,s=this,g=1/0,Y=z.origin||(new Dd).fromArray(s.gv.getEye()),v=s.maxTriangleTest,O=[],t=($.forEach(function($){C&&!1===C($)||!1!==$.s("intersect")&&O.push($)}),Y.distanceToSquared2([0,0,0]));return O.sort(function($,z){return($.p3?Y.distanceToSquared2($.p3()):t)-(z.p3?Y.distanceToSquared2(z.p3()):t)}),s.countTriangles=0,O.forEach(function($){s.countTriangles>v||(o=s.intersectObject(z,$))&&(M=Y.distanceToSquared(o.world))V)continue;f=!1}else d[J+"boundingBox"]=K=new U.Math.Box3,f=!0;for(Y=0,v=t?t.length:O.length/3;Y>2)-Y,(t>>1&1)-v,(1&t)-O],M),z=C.toViewPosition(z),isNaN(z.x)||isNaN(z.y))return;A=Math.min(A,z.x),s=Math.max(s,z.x),N=Math.min(N,z.y),g=Math.max(g,z.y)}this._rectOverlapping=C.overlappingBox.isOverlapping($,{x:A,y:N,w:s-A,h:g-N})}else this._rectOverlapping&&(this._rectOverlapping=Kd)},getVectorDynamicSize:function(){var o,M,A,N,s,g,$,z,C,Y,v=this.s("shape3d"),O=this.data;if("billboard"===v||"plane"===v||(z=O._currentCubeElementId)!=fd)return o=this.gv,M=o.createNodeFinalMatrix(O),$=O.getAnchor3d(),A=.5-$.x,N=.5-$.y,s=.5-$.z,g=Math.min(this.s("vector.dynamic.maxsize"),o._glCapabilities.maxTextureSize)/o.getDevicePixelRatio(),$=function($,z){$[0]+=A,$[1]+=N,$[2]+=s,z[0]+=A,z[1]+=N,z[2]+=s;var $=o.toViewPosition(G_($,M)),z=o.toViewPosition(G_(z,M)),C=$.x-z.x,$=$.y-z.y;return Math.min(g,Math.sqrt(C*C+$*$))},"billboard"===v?(C=$([-.5,0,0],[.5,0,0]),Y=$([0,-.5,0],[0,.5,0])):"plane"===v?(C=$([-.5,0,0],[.5,0,0]),Y=$([0,0,-.5],[0,0,.5])):O._currentCubeElementId!=fd&&(v=3*zw[z+1],O=3*zw[z],z=3*zw[z+2],C=$([$w[v],$w[1+v],$w[2+v]],[$w[z],$w[1+z],$w[2+z]]),Y=$([$w[v],$w[1+v],$w[2+v]],[$w[O],$w[1+O],$w[2+O]])),[C,Y]},vf:function($,z){if(this.gv.getFaceVisible(this.data,$)){($=j1(this,$)).mat&&(this.faceMat=!0);var C=$.uv;if(C)for(var o=(o=this._cubeUvs)||(this._cubeUvs=new p_([0,0,0,1,1,1,1,0,0,0,0,1,1,1,1,0,0,0,0,1,1,1,1,0,0,0,0,1,1,1,1,0,0,0,0,1,1,1,1,0,0,0,0,1,1,1,1,0])),M=0;M<8;M++)o[z+M]=C[M];return $}},_billboardInView:(Di=[-.5,-.5,0,-.5,.5,0,.5,-.5,0,.5,.5,0],ai=[-.5,0,-.5,-.5,0,.5,.5,0,-.5,.5,0,.5],ki=new HA,xi=new Dd,pi=new ad,function($){if(!this._finalMat)return!0;var z=this.gv.getFrustum(),C="billboard"===$?Di:ai;ki.makeEmpty(),pi.fromArray(this._finalMat);for(var o=0,M=C.length;oO[v]&&++v>=O.length&&l(),M=y[2*v],d.seed=Math.random(),d.byp=M?0:1,d.tDisp=t,M&&(d.angle=Z(-Math.PI,Math.PI),d.distortion_x=Z(0,1),d.distortion_y=Z(0,1),d.amount=Math.random()/30*M,d.seed_x=Z(-1,1)*M,d.seed_y=Z(-1,1)*M),d.image=z.texture,C.blitScreen(g,A,N,d),$.enabled=o,requestAnimationFrame(J),g}}},U.graph3d.PostProcessing.Fxaa=function(z){var C=!1;this.serializeProperties={},Jd.defineProperties(this,{enable:{get:function(){return C},set:function($){!!C!=!!$&&(C=$,z.iv())}}}),this._42=function(){}},U.Animation=U.animation={});Jd.assign(KC,{makeTrack:function($,z,C,o){return new uC($,z,C,o?o.easings:Kd,o)},makeClip:function($,z,C,o){var M,z=$===Kd?[]:$ instanceof uC?[$]:Array.isArray($)?$:[KC.makeTrack($,z,C,o)];return o&&(M=o.name),new pC((M=M||"string"!=typeof $?M:$)||"clip",z)},play:function($,z,C){return z=new bC(z,$),C&&z.setAnimationPresets(C),z.play()},playMono:function($,z,C,o,M){return KC.play($,KC.makeClip(z,C,o,M),M)},stop:function($){return!!($=$ instanceof bC?$:fC.getAnimation($))&&$.stop()}});z(NV,o={playAnimation:function($,z,C,o,M){this._pendingAnimation&&delete this._pendingAnimation;var A,N=!1;do{if($){if($.tracks){A=$,N=!0;break}}else if(!$&&!($=this.getDefaultAnimationName()))break}while((A=this.getAnimation($))&&(N=!0,0));if(!N&&R(this))return s=this.s(Ff),Vd(s)&&Bh.test(s)&&(this._pendingAnimation={animationName:$,speed:z,start:C,loop:o}),!1;var s=function($){if(M=(P=P||new Map).get($))return M;for(var z=$.model3d,C=$.image,o=$.duration||1,M=new pC($.name),A=0,N=$.tracks,s=N.length;A=C.end?(A=C.end,C.iteration=1,O=!0):A=B.modToPositive(A,Y):(M=Y+t,(g=Math.floor((Math.abs(A)+t)/M))!==C.iteration&&(C.iteration=g,C.iteration>=C.loopMax?(C.iteration=C.loopMax,A=Math.sign(A)*C.iteration*M-t,O=!0):s="loop",v===IC.PingPong&&(C.direction=C.baseDirection*(C.iteration%2?-1:1))),v===IC.PingPong?M<(A=B.modToPositive(A,2*M))&&(A=2*Y+t-A):A=B.modToPositive(A,M)),O&&!C.finishedFired&&(C.finishedFired=!0,s="finished",(g=C.animatable).stopWhenFinished&&o.push(g)),C.displayTime=B.clamp(B.roundFloat(A,3),0,Y));$T(C,v+=C.shiftTime,$),s&&C.animatable.fireEvent(s)}CT(),o.forEach(function($){$.stop()})},vC=!(YC={}),OC=[],tC=[],cC=function($){var z,C=1===$?OC:tC;return 0===C.length?(z=[KC.makeTrack("weight",[0,1],[0,1])],2===$&&($=KC.makeTrack("speed",[0,1],[0,1]),z.push($)),$=new pC("fade",z),new bC($)):C.pop()},yC=function($){(1===$.clip.tracks.length?OC:tC).push($)},{add:function($,z,C,o,M){z===Kd&&(z=$.speed),C===Kd&&(C=$.time),o===Kd&&(o=$.loop);var A,N,s,g,Y,v,O=CC.next(),t=$.interval,c=$.clip;return zT(o={id:O,time:C,start:C,loop:o,loopMax:$.loopMax||1/0,shiftTime:$.shiftTime||0,duration:(c||$).duration,animationName:(c||$).name,animatable:$,iteration:0,paused:!1,displayTime:C,weight:$.weight,delay:$.delay||0,loopDelay:$.loopDelay||0,interval:t=!t||t<1/60?Kd:t,_accumulatedDelta:0},z),MC[O]=o,oC||(oC=!0,Qd.registerHeartbeat(BE)),c?(C=0,$.isExclusive()&&((s=(s=(zC=zC||new Map).get($.target))&&MC[s])&&(s.quitFunc&&s.quitFunc(),function($,z){if(M){$=Math.abs($.speed);if(!($<.2)){var z=Math.abs(z.speed);if(!(z<.2))return z=z/$,!(Math.abs(z)<.01||100=$&&this._callbacks[C].time<=z&&(this._callbacks[C]=this._callbacks[this._callbackLength-1],this._callbackLength--,C--);return this},removeCallAtTime:function($){return this.removeCallBetween($,$)},clearCalls:function(){return this._callbacks.length=0,this._callbackLength=0,this},deepDive:function($,z,C){for(var o=this._childrenEntries,M=0;M=J.time||-1===o&&s>J.time&&A<=J.time||l)&&(J.once?J._called||(J.callback(this,A,J._called=1),J._invalid=!0):J.callback(this,A,++J._called)))}this._lastTime=A,this._lastDisplayTime=$,eC.prototype.evaluate.call(this,A,z),fC.resolvePendingBindings()},debugOn:function(){this._debug||(this._debug=!0,(xC=xC||new kC).add(this))},debugOff:function(){this._debug&&(this._debug=!1,xC&&xC.remove(this))}}),Jd.defineProperties(DC.prototype,{duration:{get:function(){return this._duration},set:function($){this._duration=$,delete this._autoCalculateDuration}}}),function(){var o,M=[];function $($,z,C){for(var o=[],M=0;M<$.length;M++){if(z instanceof RegExp){if(!z.test($[M].displayName))continue}else if($[M].displayName!==z)continue;var A=$[M];C&&C(A,M),o.push(A)}return o}var Y=Qd.parse("__ht__encode26Z4fiPRgJfQctO8snAgZwl1Fmm1YeOemwI+2W/jbMc5Gvc5TSs/2S7/rI4/rI452WDG6dC5Kc45YSIwkavyrS3oTS4y2eQeq+l1DwIeTIa5KSQeFzmhX+I+YeO5GVaRYnFhbwGhblmeTlkHq6mRYnlgqwmHFpT+imZ12eO+Dna124=jZUAHD5=omAxeqwuHiv=o=ns1X/ke=4=jFpThZ+sgN6f1YeOe=/Foiju1FV=RYnQjbmt+bweeTI=gi6F+Dnl1Zzke=4=gipugN6k6=eOeqwtHint+Dwtg2eQeqnmjNd=omQ4RKSQ/GS4RKV7/6aURDQ=+Dm412eOeqnt+XuMvF6T+YeQeFnzjZAqHFUagFd=o=eT1GmmjZ6Fe=4=jZUsgF6svFpMhb6reTlg/Y4kRKdQ/pkQeF7z8XUa+pj=o=nkgNS=RYnMhb/4gipuGFpA12eOemwlgXv=RYns1X/keTlg5rSQ5GeQ/Kd4RKz+RYntgMwsjXH=o=n0bZzkbaUF+XuT+imtg=zm+F6f+Y4c1ipkj24c+Fmm+s4cHiUlgqdQeD+l1DwIRYWI1XmqhDdleDAMjbwzRFVInNwlgX6QhXumRqWmHF/mgqwz1ZvqRYWI+Yu/jbwIRF/QjXa4yDWthXukRqccRsWNhXwkhY4c5Y4c52MloNk=027xeqwuHiv=o=nrhip412eQeFntHFwmHm+l1DwIeTI7RTvQeFntHFwmHM/tgiUseTI=eZ53jr+TjseQeF7z8XUa+pj=o=nkgNW=gNwkgZk=RYnMhb/4gipuGFpA12eOe=eQeFpfjZztHmM=oTSQeqWthXukHseOXrV4RK5NRTvQ5GSQ/Tef/6aURDQ=+Dm412eOeqwm8Dd=RYnk1bzkeTI=vawWvmd=RYnTgZ7tH=eOe=53jGzzoiv=RYnFgZukeTI=5Gn48YWrjXurRb/mHFmFe=4=gipugN6k6=eOeFnt+Dwtg2eQeFwlHNWQjbmojXameTI=e=4=jXuThiUsXYeO5Y4=HZ/zgi6jeTI4RTcr5r5rRYnrjZpQ16M=oTSfoK5r5r5QeqnmjNd=omQ7523aRKHuRTjZ/TjNRK5ZRKVZbbkQ8snk8bWmeTI=HZzzHiv=RYn=gNnM1bnbhXwkhYeO523aRYn=gNnM1bnKgZ7tH=eOe=/Toi5NjZ5=RYnQjbmt+bwXeTI=+iU4jFUk+iUAe=4=1imrHi7z8vuzgXv=o=e=RYnzgF/IgNn1eTI4RYn4gZmf+D5=omQkoGSQ5rHf/24koGSQ/Tef/6aURDQ=+Dm412eOeqwm8Dd=RYnk1bzkeTI=wvuVe=4=jZUQgNe=o=eToiV3jGzme=4=1FUf+YeOeTVsHDccHZpfHsar1bnl1=eQeF7z8XUa+pj=o=n=gNwkgZk=RYnMhb/4gipuGFpA12eOe=eQeFpfjZztHmc=oTSQeq/TjX7mXYeO5Y335r5r5s4=HZ/zgi61eTI4RTcr5r5rRYns1X/keTlg/KjNRTjZ/TjNRKHaRKeaRKVZbbkQ8snk8bWmeTI=HFUagFw21X/ke=4=jFpThZ+sgN6f1YeOe=/Moivs1Fj=RYnTgNnf1bn2jXwl+b5=omQkRKdQ/Y4kb24=gipugN6k2YeOeF/mgqwmH=eQeF7z8XUa+pj=o=nkgNS=RYnrhipMgNH=oqws+XvQeq/IjXwt+k/tgiUseTI=erj4dv/idseQeq/IjXwt+knQ+be=oT5Qeq/IjXwt+kUF1q/m+pc=oTVQeq/IjXwt+kUF1q/m+pM=oTVQeFwlHNWQjbmojXameTI=dZ7lHVnt1DM=RYnzgF/IgNnjeTI4RYnzgF/IgNn1eTI4RYns1X/keTlxeF1agF5=o=n0bZzkbaUF+XuT+imtg=zMjbwzRYWZhX6Ny2Wxbius1bwaHF3cXsSa5=4c5THQeKVN/=4c5TecbGAHgqk=RYnZjX7a12eOXrvsRKeNRKVN/=4s5maU027xeqwuHiv=o=nk1bzke=4=+i63+YeOeM/QhbScdX74hiV=RYnTgZ7tH=eOe=5r5T5s/Xd=RYnFgZukeTI=5Gn48YWrjXurRb/mHFmFe=4=gipugN6k2YeOeF/mgqwmH=eQeF7z8XUa+pj=o=nkgNS=RYnMhb/4gipuGFpA12eOeM/QhbWojXame=4=jXuThiUsXYeO5Y4=HZ/zgi6jeTI4RTM7/TjNRYnrjZpQ16M=oTSfoGVZ/THQeqnmjNd=omQa/=37/TjZ/s4r524ao247/maURDQ=+Dm412eOeqnt+XuMvF6T+YeQeFnzjZAqHFUagFd=o=eT1F1F1F1Fe=4=jZUsgF6svFpMhb6reTlg5TSQ5TSQ5TSQ5TW+RYnQjbmt+bwXeTI=jFUk+iUAe=4=1imrHi7z8vuzgXv=o=e=RYnzgF/IgNnjeTI4RYnzgF/IgNn1eTI4RYns1X/keTlg5GSkRTSs5TMsRKjrRKeu/Y3u/Gd7/s4k5paURDQ=+Dm412eOeqnt+XuMvF6T+YeQeFnzjZAqHFUagFd=o=eT1TWF5ij4e=4=jZUsgF6svFpMhb6reTlg5Gef/2475=3aRKVsRTvQ5Gef/6kQeF7z8XUa+pj=o=n=gNwkgZk=RYnMhb/4gipuGFpA12eOe=eQeFpfjZztHmc=oTSQeFpfjZztHmM=oTSQeqnmjNd=omQ75Tdf5KesoGeQ/rSf/24a/=3Z5KMQ5T6+RYntgM/QhX/CeTI=baUI+pU01q6fjNwlgZ3I1b1mgqdQeiwz+iVQeD1l1bHQeDWthXukRYWNhXwkhY4chi6l1Zzky2Wx1ipkj2uzyY+khXamgimf12us+XufhXuqns4ceXwz+iVfj2cq+imA1X7lgFvfHq6fgFmf1sHlyGAUeqkQ8snk8bWmeTI=HFUagFw21X/ke=4=jFUs1i6s6ZmM+ic=oTSf5KS7RYn=gNnM1bnKgZ7tH=eOe=/m5iv41GS=RYnTgNnf1bn2jXwl+b5=omQ75=3aRKVsRTvQ5Gef/2475=3ab24=gipugN6k6=eOeFnt+Dwtg2eQeFwlHNWQjbmojXameTI=e=4=jXuThiUsXYeO5Y4=jXuThiUsX2eO5Y4=HF6T+YeOXrVs/Y345Teu5=4N5Y3aRKH4RKeabbkQ8snk8bWmeTI=HZzzHiv=RYn=jX/C1Nnt+XuMeTI=er6m/rnm/YeQeq1lHZm=giv=oqQ=1q6fjseOemU0hDw0bZ1agF/khXUfyiwz+iVQeD1l1bHleDAHgqnm+D6sg=Sz1ipkj2uzyY+khXamgimf12us+XufhXuqnsMxbiuUeqkQeF7z8XUa+pj=o=n=gNwkgZk=RYnMhb/4gipuGFpA12eOeqWQjbMAhX/tg=eQeqWthXukHseOXrVko2345Teu5=4N/=37/TjZ/s47/KMf5KesoGeQoKMf5GjZ/THQ5GvuRTSs5TMsRKcsRTjZ/TjNb24=HZ6qgX6f+D5=omQ7RKeQ5=4abbkQ8snk8bWmeTI=HZzzHiv=RYn=jX/C1Nnt+XuMeTI=HF+=yKes/s4u5s4u5sM=RYnZhb/ljF7meTlxeF1agF5=o=n0bZzkbaUF+XuT+imtg=zMjbwzRYWZhX6Ny2Wxbius1bwaHF3ce2pMjbwzRFVInNwlgX6QhXumRqnagFulgFHqyGAHgqk=RYnZjX7a12eO1FpQHZ6URYnQjbmt+bwXeTI=jFUk+iUAe=4=1imrHi7z8vuzgXv=o=n4jb6r12aljZUfe=4=HiUlgqwreTlg5GduRTSs5TMsRKHZRTVZ/TjNRKVko2345Teu5=43o237/TjZ/s47/Gef5GMsoKdQoKMf5GjZ/THQ5GvsRTVu5TckRKHZRTVZ/TjNRKVa/s3u/GvZ/s4N/=37/TjZ/s47/GHfoGva/THQoKMf5GjZ/THQ5GvkRTM4oGVkRKcuRTVZ/TjNRKVa/Y3u5KM7/Y4N/=37/TjZ/s47/Gef5GMsoKdQ/rjf5GjZ/THQ5GduRTSs5TMsRKHZRTVZ/TjNbbkQ8snk8bWmeTI=HFUagFw21X/ke=4=jFUs1i6s6ZmM+ic=oTSf5KS7RYn=gNnM1bnKgZ7tH=eOe=/m5iv41GS=RYnTgNnf1bn2jXwl+b5=omQ75=3aRKVsRTvQ5Gef/2475=3ab24=gipugN6k6=eOeFnt+Dwtg2eQeFwlHNWQjbmojXameTI=e=4=jXuThiUsXYeO5Y4=jXuThiUsX2eO5Y4=HF6T+YeOXre7/Y345Teu5=4N5Y3aRKVs5Y4s/6aURDQ=+Dm412eOeqwm8Dd=RYnk1bzkeTlxeF1agF5=o=n0bZzkbaUF+XuT+imtg=zMjbwzRYWZhX6Ny2Wxbius1bwaHF3cna/41X6Mo=SqeYQcGXpkhYusgN6f1YcI1ipkj2uzyY+khXamgimf12urHi6m1YHleD7BeKVf5YMcy=S75YMcRsS75YSCeY+3nrAHgqk=RYnZjX7a12eOem/41X6Mo=S7RTW3eqkQeF/tgiUseTI=ervs/XjN1=eQeF1tgqd=o=e75qW3eD/zgq5AHZ6shXj=RYnQjbmt+bwXeTI=jFUk+iUAe=4=1imrHi7z8vuzgXv=o=e=RYnzgF/IgNnjeTI4RYnrjZpQ16c=oTSfoGVZ/THQeq/TjX7mX2eO5Y3u5GjZ/s4=HF6T+YeOXrVuoY37oKMaoY4N/=3aRKjaRKVZbbkQ8snk8bWmeTI=HFUagFw21X/ke=4=jFpThZ+sgN6f1YeOe=/moX6T1Xj=RYnTgNnf1bn2jXwl+b5=omQkRKdQ/Y4kb24=gipugN6k6=eOeFnt+Dwtg2eQeFwlHNWQjbmojXameTI=HZ/s+Xn=1beAjFpse=4=jXuThiUsXYeO5Y4=jXuThiUsX2eO5Y4=HF6T+YeOXreZ/s34/TdaoY4No23aRKV7/Y3Z/Gj75s43b24=gZuVHFpqeTI=baUI+pU01q6fjNwlgZ3I1b1mgqdQeiwz+iVQeD1l1bHQeDWthXukRYWNhXwkhY4chi6l1Zzky2Wx+FpseDccL2WI+Yu/jbwIRF/QjXa4yDWthXukRqccRsWNhXwkhY4c5Y4c52MxbDnHgFwz+iVfj2cq+imA1X7lgFvfHNWm1XdqRYS3eYIc8YSPeDcloNk=027xeqwuHiv=o=nsgN6f1pnmjNd=RYn=jX/C1Nnt+XuMeTI=eZ1F5Zer5YeQeF/tHFumHmnz1imaHseOXrVf/247RTvQ523aRKVf/6kQeF7z8XUa+pj=o=n=gNwkgZk=RYnMhb/4gipuGFpA12eOe=eQeFpfjZztHmc=oTSQeFpfjZztHmM=oTSQeqnmjNd=oqQ=1q6fjseOemU0hDw0bZ1agF/khXUfyiwz+iVQeD1l1bHleDAHgq1zH=W3eKkcyiwz+iVfj2cq+imA1X7lgFvfHNWm1Xdqy2WB0YS4yGAHHm7f+FpseDdcL2W/jbwIRq/7HqdIGXpkhYuzjq5I8YMcRsS3yGAHHm7fHF6k+bnfepQc5TjZeYQc+YSPeKV4oY4coKSQeKvf/=4c/=W+oa7f02eQeq1zgD6meTlg5rHkRTHs5KHsRKc4RTvQ/=4ZbbaURDQ=+Dm412eOeqnt+XuMvF6T+YeQeFnzjZAqHFUagFd=o=eT1FjrjT54e=4=jZUsgF6svFpMhb6reTlg523aRKVf/247RTvQ523ab24=gipugN6k6=eOeqwtHYeQeFwlHNWQjbmojXameTI=e=4=jXuThiUsXYeO5Y4=jXuThiUsX2eO5Y4=HF6T+YeO8snF+XuTeTI=baUI+pU01q6fjNwlgZ3I1ipkj24c+Fmm+sMc8a7fHF6k+bnfepQcyiwz+iVfj2cq+imA1X7lgFvfHi6sjZ6f+ipq12HleD7BeKSleYIc/Kd4eYQc5rSQeKVrRYSZRYSZepkxbiuUe=4=+FpQ+Xv=omQ7/GMQ5G5Q/=4ZbbaURDQ=+Dm412eOeq/IjbWme=4=jFUs1i6s6ZmM+ic=oTVf/24=jFUs1i6sdZUQgNe=o=eT1FjrjT54e=4=gipugN6k6=eOeqwtHint+Dwtg2eQeFwlHNWQjbmojXameTI=e=4=jXuThiUsX2eO5Y4=HF6T+YeO8snF+XuTeTI=baUI+pU01q6fjNwlgZ3I1ipkj24c+Fmm+sMc8a7fHF6k+bnfepQcyiwz+iVfj2cq+imA1X7lgFvfHi6sjZ6f+ipq12HleD7BeKSleYIc/Kd4eYQc5r5QeKe4RYS4RYSroYW+oa7f02eQeq1zgD6meTlg5GjsRKe4RKSQ5rz+024=HiUlgqwreTlg5GjsRKe4RKVZ5=4aopaUbbkE"),z=Y.comps,C=($(z,/(Time|scrubber-bar)/,function($){$.onDown=$.onDrag}),$(z,"Time")[0]),v=C.rect[0],O=C.rect[2],t=$(z,"ClipBody")[0],c=z.indexOf(t),y=(z.splice(c,1),$(z,"ClipName")[0]);function A($){o&&o.getDataAt($)&&$.stopPropagation()}z.splice(z.indexOf(y),1);var _={};function s(){for(var $=this.dm().getDatas().toArray(),z=0,C=$.length;z=C[0]&&$<=C[1]?"#ff9500":"#d8e2ff"}}(N)},g.text={func:function(C){return function($,z){return $.a("timeline.clipNames")[C]||""}}(N)},g.rect);g.rect={func:function(C,o){return function($,z){return $=$.a("timeline.clips")[C]||[.5,.5],[v+$[0]*O,30+M*C,o[2],o[3]]}}(N,s)}}return C.comps.splice.apply(C.comps,A),Qd.setImage(z,C),_[$]={name:z,height:C.height+o}}(o._timeline.getChildren().length);o.setImage(M.name),o.setSize(-1,M.height)}this.redraw()}return{add:function(N){if(M.push(N),!o){var $=U.Default.findView();if(!$)return;(o=new U.graph.GraphView).addToDOM($.getView()),o.getView().addEventListener("mousedown",A),o.addPreFrameListener(s),o.redraw()}($=new U.Node)._timeline=N,o.dm().add($),$.setPosition(0,0),$.setAnchor(0,0),$.setSize(-1,-1),$.s({"2d.movable":!1,interactive:!0,"select.width":0});var z={};Jd.defineProperties(z,{"timeline.percentage":{get:function(){return N.getTime()/(N.duration||1)},set:function($){N.play(0,$*(N.duration||1))}},"timeline.running":{get:function(){return N.isRunning()&&!N.isPaused()},set:function($){$?N.isPaused()?N.resume():N.play():N.pause()}},"timeline.speed":{get:function(){return N.getSpeed()},set:function($){N.setSpeed($)}},"timeline.clipNames":{get:function(){for(var $=[],z=N.getChildren(),C=0;C$){A.splice(s,0,$);for(var Y=0;Y=o[C-1])return this.getValueAtIndex(C-1);if(2===C)z=0;else for(var M,A=0,N=C-1;Az;)A--;if(++A,0===M&&A===o)return this;A<=M&&(M=(A=Math.max(A,1))-1);var N=this.stride;return this.times=C.slice(M,A),this.values=this.values.slice(M*N,A*N),this.easings=this.easings.slice(M,A),this.onValuesChange(),this.updateTimeRange()},evaluateTo:function($,z,C){var o=this.evaluate($),M=this.stride;C=C||0;for(var A=0;A=k3?(delete $._58I,$.iv()):$t(function(){$._94O()},k3))},$._93I=function(){var $,z,C,o,M,A,N,s=this,g=s._27I;s._58I||!s._autoHideScrollBar?(g||OX(s._79O,g=s._27I=NX()),$=(o=s._29I).height,z=s._59I,C=s.getScrollBarSize(),o=o.width-C-2,M=$*(-s.ty()/z),A=$*($/z),N=g.style,$=k3?(delete $._95O,$.iv()):$t(function(){$._94I()},k3))},$._92I=function(){var $,z,C,o,M,A,N,s=this,g=s._28I;s._95O||!s._autoHideScrollBar?(g||OX(s._79O,g=s._28I=NX()),$=(o=s._29I).width,z=s._91I,C=s.getScrollBarSize(),o=o.height-C-2,M=$*(-s.tx()/z),A=$*($/z),N=g.style,$=z.size()?fd:z.get($)},$.onDataDoubleClicked=function($,z){},$.onDataClicked=function($,z){},$.adjustTranslateX=function($){return 0},$.adjustTranslateY=function($){var z=this.getHeight()-this._59I;return 0<($=$z.y+C?this.ty(-M+C-o):Mo&&($._14I=o),$._99I&&A&&$._99I(),$.tx()),C=$.ty();($._40o()||$._41o())&&($._59I+=$.getScrollBarSize(),$._99I&&A&&($._91I+=$.getScrollBarSize())),fX(z,N,C,1),A?$._12I(z):$._24I&&$._13I(z),$._93I(),$._92I(),z.restore(),$._32I=$._24I=$._96I=fd,s&&($.scrollToIndex($.getRowIndex(s)),delete $._23I),$.tx($.tx()),$.ty($.ty())},$.canHandleSelectMode=function($,z){return!0},$.isDraggable=function($){return!0}},y3._48o=function($,z){$._rootVisible=!0,$._rootData=fd,$._35o=function(){this._expandMap={},this._levelMap={}},$.validateModel=function(){var $=this,z=$._rootData;$._rows.empty(),$._levelMap={},$._rowMap={},$._currentLevel=0,z?$._rootVisible?$.isVisible(z)&&$.buildData(z):$.buildChildren(z):$.buildChildren(),delete $._currentLevel},$.buildData=function($){var z=$._id,C=this._rows;this._rowMap[z]=C.size(),C.add($),this._levelMap[z]=this._currentLevel,this.isExpanded($)&&(this._currentLevel++,this.buildChildren($),this._currentLevel--)},$.buildChildren=function($){var z=this,C=$?$._children:z._dataModel._roots,o=z.getCurrentSortFunc();o&&z.isChildrenSortable($)?C.toList(z.isVisible,z).sort(o).each(z.buildData,z):C.each(function($){z.isVisible($)&&z.buildData($)})},$.getLevel=function($){return this._levelMap[$._id]},$.getToggleIcon=function($){var z=this._loader,C=this._collapseIcon;return z&&!z.isLoaded($)?C:$.hasChildren()?this.isExpanded($)?this._expandIcon:C:fd},$.isCheckMode=function(){return this._checkMode!=fd},$.isChildrenSortable=function($){return!0},$.handleDataModelChange=function($){$.kind===Rt?delete this._expandMap[$.data._id]:$.kind===It&&(this._expandMap={}),this.ivm()},$.toggle=function($){this.isExpanded($)?this.collapse($):this.expand($)},$.isExpanded=function($){return 1===this._expandMap[$._id]},$.expand=function($){var z=this._loader;this.isExpanded($)||(z&&!z.isLoaded($)&&z.load($),this._expandMap[$._id]=1,this.ivm(),this.onExpanded($))},$.onExpanded=function($){},$.collapse=function($){this.isExpanded($)&&(delete this._expandMap[$._id],this.ivm(),this.onCollapsed($))},$.onCollapsed=function($){},$.expandAll=function($){var z;$?(this.expand($),$.eachChild(function($){this.expandAll($)},this)):((z=this)._dataModel.each(function($){$.hasChildren()&&(z._expandMap[$._id]=1)}),z.ivm())},$.collapseAll=function(){this._expandMap={},this.ivm()},$.makeVisible=function($){if($&&(!this._rootData||$.isDescendantOf(this._rootData))){for(var z=$._parent;z;)this.expand(z),z=z._parent;this._23I=$,this.iv()}},$.checkData=function($){var z,C=this._checkMode,o=this.sm(),M=o.co($);if(!o.sg()||!M){if(this._32o=1,C===vt)M?o.rs($):o.as($);else if(C===hf)(z=new L($)).addAll($._children);else if("descendant"===C)z=new L,$e($,z);else if("all"===C&&(z=new L,$e($,z),!M))for(var A=$._parent;A;)z.add(A),A=A._parent;z&&(M?o.rs(z):o.as(z)),delete this._32o}},$.drawTree=function($,z,C,o,M,A,N){var s=this,g=s._indent,Y=s._levelMap[z._id],v=s.getIconWidth(z),O=j(s.getToggleIcon(z));O?(G3($,O,(o+=g*Y)+g/2,M+N/2,z,s),o+=g):o+=g*(Y+1),s._checkMode&&(G3($,s.getCheckIcon(z),o+g/2,M+N/2,z,s),o+=g),s.drawIcon($,z,o,M,v,N),s.drawLabel($,z,o+v,M,N)}},y3._14Q=function($,z){$.getIcon=function($){return $.getIcon()},$.getIconWidth=function($){return this.getIcon($)?this._indent:0},$._iconStretch=zh,$.getIconStretch=function($){return this._iconStretch},$.setIconStretch=function($){var z=this._iconStretch;this._iconStretch=$,this.fp("iconStretch",z,$)},$.drawIcon=function($,z,C,o,M,A){var N,s,g;M&&(N=this.getBodyColor(z),(s=j(this.getIcon(z),N))&&((g=this.getIconStretch(z))==fd&&(g=zh),A-=this.isRowLineVisible()?1:0,E3($,s,g,C,o,M,A,z,this,N),ex($,this.getBorderColor(z),C,o,M,A)))},$.drawLabel=function($,z,C,o,M){r3($,this.getLabel(z),this.getLabelFont(z),this.getLabelColor(z),C,o,0,M)}},y3._50o=function($,z){$._98I=function(){var $=this._39o=new mK;this._60I=new L,$.mm(this._17o,this),$.md(this._18o,this),$.mh(this._19o,this)},$.setColumns=function($){this._39o.clear(),this.addColumns($)},$.addColumns=function($){var C=this._39o;$.forEach(function($){var z;$ instanceof Ne||(z=L3($.className),$=h3(z||Ne,$)),C.add($)})},$.onColumnClicked=function($){},$.onCheckColumnClicked=function($){},$._3Q=function($){for(var z,C=0,o=this._60I,M=o.size();C=o.x&&M.add({column:$,startX:C._91I}),C._91I=z)})},$.drawData=function(o,M,A){var N=this,s=N._rowHeight,g=s*A,Y=N.isSelected(M),$=(z=N._29I).x,z=z.width;N.drawRowBackground(o,M,Y,$,g,z,s),N._60I.each(function($){var z=$.column,$=$.startX,C=z.getWidth();0=_&&o.x<_+P&&C.isCellEditable($,y,z))return P={x:(_={x:_,y:C.getRowIndex($)*A,width:P,height:A}).x+C.tx(),y:_.y+C.ty(),width:_.width,height:_.height},c=t=0,_.xs){o.ty(s-f.endY);break}}}o.ty(o.ty())}else if(t||c){if(o._9o&&(O.x=0,pX(o._8o.getView(),O)),vX($,P,s),Z=KX($),fX(Z,X=0,o.ty(),1),Z.clearRect(0,0,P,s),Y.empty(),A._roots.each(function($){var z;$.isVisible()&&(_&&_.tab===$||(z=o.getTabBackground($),z=o.drawTab(Z,$,0,X,P,g,z)),Y.add({_75o:z,tab:$,startY:X,endY:X+g,height:g}),X+=g+v)}),o._23Q=Cd(0,X-v),_&&(J=_.position,o.drawTab(Z,_.tab,0,_.startY,P,_.height,o._moveBackground),Xx(Z,0,J,P,1,o._insertColor)),Z.restore(),o._selectionChanged)for(o._selectionChanged=!1,d=o.ty(),l=0;ls){o.ty(s-f.endY);break}}o.ty(o.ty())}else{o._9o&&(O.y=0,pX(o._8o.getView(),O)),vX($,N,g);var J,Z=KX($),K=0;if(fX(Z,o.tx(),0,1),Z.clearRect(0,0,N,g),Y.empty(),A._roots.each(function($){var z,C;$.isVisible()&&(z=o.getTabWidth($),_&&_.tab===$||(C=o.getTabBackground($),C=o.drawTab(Z,$,K,0,z,g,C)),Y.add({_75o:C,tab:$,startX:K,endX:K+z,width:z}),K+=z+v)}),o._64I=Cd(0,K-v),_&&(J=_.position,o.drawTab(Z,_.tab,_.startX,0,_.width,g,o._moveBackground),Bv(Z,o._insertColor,J,0,g)),Z.restore(),o._selectionChanged){o._selectionChanged=!1;for(var f,Q=o.tx(),l=0;lN){o.tx(N-f.endX);break}}}o.tx(o.tx())}for(var W=[],V=M.children,l=0;l=$.startX&&o<=z&&s._7Q({tab:g.tab,startX:g.startX+M,width:g.width,front:C,insertTab:$.tab,position:C?Cd(0,$.startX-N):od(s._64I,z+N)})}))):(M=s_($).y-z.y,!z._25o&&!z.moving&&2=$.startY&&A<=z&&s._7Q({tab:g.tab,startY:g.startY+M,height:g.height,front:C,insertTab:$.tab,position:C?Cd(0,$.startY-N):od(s._23Q,z+N)})})))},handleWindowMouseUp:function($){this.handleWindowTouchEnd($)},handleWindowTouchEnd:function($){var z,C,o,M,A=this,N=A.tv,s=N._tabPosition,g=N.getTabModel(),Y=g._roots,v=A._73o;A.moving?((o=N._23o)&&o.insertTab!==o.tab&&(C=o.tab,M=Y.remove(C),0<=(z=Y.indexOf(o.insertTab))&&(o.front||z++,z<=Y.size()&&(Y.add(C,z),g._38I(C,M,z)))),N._7Q(fd),delete A.moving):!A._25o&&v&&(C=v.tab,(o=A._74o)&&o.tab!==C||(!C.isDisabled()&&t_(v._75o,A.lp)?N.onTabClosing(C,M=function(){var $=Y.indexOf(C);g.remove(C),N.onTabClosed(C,$)})&&M():C.isDisabled()||N._8o===C||g.sm().ss(C))),A._25o=A._73o=A._74o=s===Zt||s===Xt?A.x=A.lp=A.tx=fd:A.y=A.lp=A.ty=fd}}),Me.PropertyView=function($){var z=this,C=(z._view=AX(1,z),z._canvas=sX(z._view),OX(z._view,z._79O=NX()),z._rows=new L,z._28o=new L,z._26o={},z._26Q={},z._propertyModel=new mK),o=z.ivm;C.mm(o,z),C.md(o,z),C.mh(o,z),z.dm($||new mK),new ve(z)},C("PropertyView",Jd,{ms_ac:[zf,Cf,$f,xf,pf,"categorizable",lf,kf,Vf,ef,Df,Xf,df,Zf,"selectRowIndex",rd,"background",Jf,Wf,ff,Qf,Kf],ms_v:1,ms_dm:1,ms_fire:1,ms_sm:1,_49o:1,ms_txy:1,ms_lp:1,ms_vs:1,_45o:1,_47o:1,ms_tip:1,_29I:Yv,_59I:0,_9I:0,_selectRowIndex:-1,_editable:!0,_batchEditable:!0,_categorizable:!0,_indent:e3,_background:Qd.propertyViewBackground,_expandIcon:Qd.propertyViewExpandIcon,_collapseIcon:Qd.propertyViewCollapseIcon,_scrollBarColor:V,_scrollBarSize:mh,_autoHideScrollBar:Td,_selectBackground:Qd.propertyViewSelectBackground,_rowHeight:Ar,_rowLineVisible:Qd.propertyViewRowLineVisible,_rowLineColor:Qd.propertyViewRowLineColor,_10I:.5,_columnLineVisible:Qd.propertyViewColumnLineVisible,_columnLineColor:Qd.propertyViewColumnLineColor,_labelColor:Qd.propertyViewLabelColor,_labelSelectColor:Qd.propertyViewLabelSelectColor,_labelFont:Qd.propertyViewLabelFont,getRows:function(){return this._rows},getColumnPosition:function(){return this._10I},setColumnPosition:function($){var z=this._10I;this._10I=$=1<($=$<0?0:$)?1:$,this.fp("columnPosition",z,$)},getPropertyName:function($){return $.toLabel()},getLabelFont:function($,z,C){return this._labelFont},getLabelColor:function($,z,C){return C===this._selectRowIndex?this._labelSelectColor:this._labelColor},getPropertyFont:function($,z){return this._labelFont},getPropertyColor:function($,z){return z===this._selectRowIndex?this._labelSelectColor:$.getColor()||this._labelColor},getCategoryFont:function($){return this._labelFont},getCategoryColor:function($){return this._labelColor},adjustTranslateX:function($){return 0},adjustTranslateY:function($){var z=this.getHeight()-this._59I;return 0<($=$Y&&($._14I=Y),KX(z)),c=$._background;fX(t,0,-M,1),t.beginPath(),t.rect(0,M,C,o),t.clip(),t.clearRect(0,M,C,o),$._93db(t),c&&Xx(t,0,0,N,O,c);for(var y=$._31I;y<$._14I;y++){var _,P,Z,X,d=g.get(y),M=A*y;Vd(d)?(c&&Xx(t,N,M,s,A,c),(P=j($.isExpanded(d)?$._expandIcon:$._collapseIcon))&&E3(t,P,zh,0,M,N,A),t.save(),t.beginPath(),t.rect(N,M,s,A),t.clip(),$.drawCategoryName(t,d,y,N,M,s,A),t.restore()):(_=d.property,d=d.data,P=j(_.getIcon()),Z=$._selectRowIndex===y?$.getSelectBackground():fd,P&&E3(t,P,zh,0,M,N,A),Z&&Xx(t,N,M,s,A,Z),t.save(),t.beginPath(),t.rect(N,M,v-N,A),t.clip(),$.drawPropertyName(t,_,y,N,M,v-N,A),t.restore(),$.isEditing(d,_)||(Z=v+1,X=C-v-1,t.save(),t.beginPath(),t.rect(Z,M,X,A),t.clip(),$._87o($.drawPropertyValue(t,_,$.getValue(d,_),y,Z,M,X,A,d),y,Z,M,X,A),t.restore())),$._rowLineVisible&&Xx(t,N,M+A-1,s,1,$._rowLineColor)}$._columnLineVisible&&(Xx(t,v,0,1,O,$._columnLineColor),Xx(t,C-1,0,1,O)),$._92db(t),$._93I(),t.restore(),$.ty($.ty())},drawCategoryName:function($,z,C,o,M,A,N){r3($,z,this.getCategoryFont(z),this.getCategoryColor(z),o,M,A,N)},drawPropertyName:function($,z,C,o,M,A,N){z.drawPropertyName?z.drawPropertyName($,z,C,o,M,A,N,this):r3($,this.getPropertyName(z),this.getPropertyFont(z,C),this.getPropertyColor(z,C),o,M,A,N)},drawPropertyValue:function($,z,C,o,M,A,N,s,g){if(z.drawPropertyValue)return z.drawPropertyValue($,z,C,o,M,A,N,s,g,this);ze($,C,z,this.getLabelFont(z,C,o),this.getLabelColor(z,C,o),M,A,N,s,g,this)},isPropertyEditable:function($,z){return $.isEditable()&&this.isEditable()},setProperties:function($){this._propertyModel.clear(),this.addProperties($)},addProperties:function($){var C;$&&(C=this._propertyModel,$.forEach(function($){var z;$ instanceof se||(z=L3($.className),$=h3(z||se,$)),C.add($)}))},getRowIndexAt:function($){return 0<=($=md(this.lp($).y/this._rowHeight))&&$v.y+v.height&&(Y=s.y+M-v.y-v.height),Y&&(z.ty(z.ty()-Y),g.y-=Y),z.beginEditing({data:A.data,property:N,value:z.getValue(A.data,N),event:$,rect:s,editorRect:g,view:z}))),z.setSelectRowIndex(C)),this.clear()},handleWindowMouseMove:function($){this.handleWindowTouchMove($)},handleWindowTouchMove:function($){var z,C,o=this.pv,M=this.ty,A=this.cp,$=s_($),N=this._62O;"p"===N?o.setTranslateY(M+$.y-A.y):"c"===N?16<(C=o.getWidth()-o._indent)&&(z=this.p-(A.x-$.x)/C,o.setColumnPosition(z=1-(C=16/C)<(z=z=M.startX&&AA.startX&&oA.startX&&oxS||N.is&&N.is.length>kS)&&(C=B.generateUUID(),N.material=z,$[C]=N,$[z]={vs:[],ns:[],uv:[]})}function xE($,z){if(!z)return-1;var C=$.indexOf(z);return-1===C?($.push(z),$.length-1):C}function pE($,z,C,o,M,A){var N=[],C=(N.push(xE(C,z.vs)),N.push(xE(o,z.uv)),N.push(xE(M,z.ns)),N.push(xE(A,z.is)),$.mat),s=(ed(C)?N.push(C.join("|")):Dv(C)&&N.push(Qd.stringify(C,0)),C&&N.push(C),$.subMeshes);if(s)for(var g=0,Y=s.length;g>24&255;if(C<128){var o=$._outside;if(o)return o(z>>16&255,z>>8&255,255&z,C)}return $[2147483647&z]}function LE($,z,C,o,M,A,N,s,g,Y,v){return!($<0||A<=$||z<0||M<=z)&&(!(g=UE(Y,M=(g[A=4*($*M+z)]<<16)+(g[1+A]<<8)+g[2+A]+(g[3+A]<<24)))||v&&!1===v(g,Math.round((C+z)/s),Math.round(N-1-(o+$))/s)?void 0:g)}function wE($,z,C,o,M,A,N,s){return N||(N=$._cacheIdx=$._cacheIdx+1&3,$._cacheQuery[N]=[z,C,o,M,A,s],$._cacheLength=Math.min($._cacheLength+1,4)),s}function qE(){var $=new Dd;return $.subVectors(BZ,rZ),oi.subVectors(TZ,rZ),$.cross(oi).normalize(),$}function TE($,z){z._reflecting=!1,$.getRenderState().useProgram($._prg)}function rE($,z,C){$&&(Dv($)?z.push($):qh.test($)&&(C[$]=1))}function BE($,z){return NC(z/1e3)}function $T($,z,C){$.animatable.evaluate(z,C,$.weight)}function zT($,z){var C,o;z=B.roundFloat(z,3),$.speed=z,$.baseDirection=$.direction=0