Файловый менеджер - Редактировать - /home/jogoso94/public_html/static/img/logo/scripts.tar
�азад
objRefTable.js 0000644 00000020600 15042605653 0007265 0 ustar 00 const C3 = self.C3; self.C3_GetObjectRefTable = function () { return [ C3.Plugins.Tilemap, C3.Plugins.Sprite, C3.Behaviors.Platform, C3.Behaviors.Bullet, C3.Plugins.Touch, C3.Plugins.Text, C3.Plugins.Spritefont2, C3.Behaviors.scrollto, C3.Plugins.TiledBg, C3.Behaviors.Rotate, C3.Behaviors.Sin, C3.Behaviors.wrap, C3.Behaviors.Pin, C3.Behaviors.Tween, C3.Behaviors.solid, C3.Plugins.Audio, C3.Behaviors.Fade, C3.Plugins.LocalStorage, C3.Plugins.Browser, C3.Plugins.System.Cnds.OnLayoutStart, C3.Plugins.System.Acts.SetVar, C3.Plugins.Spritefont2.Acts.SetText, C3.Plugins.System.Exps.right, C3.Plugins.System.Exps.layoutname, C3.Plugins.System.Exps.len, C3.Plugins.Spritefont2.Acts.SetY, C3.Plugins.System.Exps.viewporttop, C3.Plugins.Sprite.Acts.SetVisible, C3.Behaviors.Bullet.Acts.SetGravity, C3.Plugins.Sprite.Acts.SetInstanceVar, C3.Plugins.Sprite.Exps.Y, C3.Plugins.Sprite.Acts.SetPos, C3.Plugins.System.Exps.viewportright, C3.Plugins.System.Exps.viewportleft, C3.Plugins.System.Acts.CreateObject, C3.Plugins.TiledBg.Acts.SetSize, C3.Plugins.System.Exps.viewportwidth, C3.Plugins.System.Exps.viewportheight, C3.Behaviors.Sin.Acts.SetPeriod, C3.Plugins.System.Exps.random, C3.Behaviors.Sin.Acts.SetMagnitude, C3.Plugins.Audio.Acts.Stop, C3.Plugins.System.Cnds.ForEach, C3.Plugins.Sprite.Acts.SetAnimFrame, C3.Plugins.System.Exps.int, C3.Plugins.Sprite.Exps.AnimationFrameCount, C3.Plugins.System.Cnds.CompareVar, C3.Plugins.LocalStorage.Acts.SetItem, C3.Plugins.Audio.Cnds.IsTagPlaying, C3.Plugins.Audio.Acts.Play, C3.Plugins.Browser.Cnds.OnResize, C3.Plugins.System.Cnds.Compare, C3.Plugins.Sprite.Exps.X, C3.Plugins.System.Exps.scrollx, C3.Plugins.Sprite.Cnds.IsMirrored, C3.Plugins.System.Acts.ScrollX, C3.Plugins.System.Cnds.Else, C3.Plugins.Sprite.Cnds.OnCreated, C3.Plugins.Sprite.Acts.MoveToBottom, C3.Plugins.Sprite.Acts.SetMirrored, C3.Plugins.Sprite.Cnds.OnAnyAnimFinished, C3.Plugins.Sprite.Acts.Destroy, C3.Plugins.System.Cnds.IsGroupActive, C3.Plugins.Sprite.Cnds.IsAnimPlaying, C3.Plugins.Sprite.Cnds.CompareInstanceVar, C3.Plugins.Touch.Cnds.OnNthTouchStart, C3.Plugins.Touch.Cnds.IsTouchingObject, C3.Plugins.Touch.Exps.X, C3.Plugins.Touch.Exps.Y, C3.Plugins.Touch.Cnds.IsInTouch, C3.Plugins.Sprite.Cnds.IsOnScreen, C3.Plugins.Sprite.Acts.SetAngle, C3.Plugins.Sprite.Exps.Angle, C3.Plugins.Sprite.Cnds.CompareX, C3.Plugins.Sprite.Acts.SetSize, C3.Plugins.Text.Acts.SetText, C3.Plugins.Sprite.Exps.Width, C3.Plugins.Touch.Cnds.OnTouchEnd, C3.Plugins.Sprite.Cnds.IsVisible, C3.Behaviors.Platform.Acts.SetEnabled, C3.Behaviors.Bullet.Acts.SetEnabled, C3.Behaviors.Bullet.Acts.SetAngleOfMotion, C3.Plugins.Sprite.Acts.SetAnim, C3.Plugins.Sprite.Acts.Spawn, C3.Behaviors.Bullet.Acts.SetSpeed, C3.Plugins.Sprite.Cnds.OnCollision, C3.Behaviors.Bullet.Cnds.IsEnabled, C3.Plugins.System.Cnds.While, C3.Plugins.Sprite.Cnds.IsOverlapping, C3.Plugins.Sprite.Acts.MoveAtAngle, C3.Behaviors.Bullet.Exps.AngleOfMotion, C3.Behaviors.Platform.Cnds.IsOnFloor, C3.Behaviors.Platform.Cnds.IsFalling, C3.Plugins.System.Acts.AddVar, C3.Plugins.System.Acts.Wait, C3.Plugins.System.Acts.NextPrevLayout, C3.Plugins.Sprite.Cnds.OnAnimFinished, C3.Plugins.System.Acts.RestartLayout, C3.Plugins.TiledBg.Acts.MoveToLayer, C3.Behaviors.Tween.Acts.TweenOneProperty, C3.Behaviors.Pin.Acts.PinByProperties, C3.Behaviors.Tween.Cnds.OnTweensFinished, C3.Plugins.TiledBg.Cnds.CompareX, C3.Plugins.TiledBg.Cnds.HasParent, C3.Plugins.TiledBg.Acts.SetHeight, C3.Plugins.TiledBg.Exps.X, C3.Plugins.TiledBg.Exps.Y, C3.Plugins.System.Cnds.Every, C3.Plugins.Sprite.Acts.SetSolidCollisionFilter, C3.Behaviors.Rotate.Acts.SetSpeed, C3.Behaviors.Bullet.Acts.SetBounceOffSolids, C3.Plugins.Sprite.Acts.MoveToLayer, C3.Plugins.Sprite.Cnds.IsOutsideLayout, C3.Plugins.Touch.Cnds.OnTapGestureObject, C3.Plugins.System.Acts.GoToLayout, C3.Behaviors.Tween.Acts.TweenTwoProperties, C3.Plugins.LocalStorage.Acts.CheckItemExists, C3.Plugins.Browser.Cnds.IsFullscreen, C3.Plugins.LocalStorage.Cnds.OnItemExists, C3.Plugins.LocalStorage.Acts.GetItem, C3.Plugins.LocalStorage.Cnds.OnItemGet, C3.Plugins.LocalStorage.Exps.ItemValue, C3.Plugins.Sprite.Cnds.CompareFrame, C3.Plugins.Browser.Acts.RequestFullScreen, C3.Plugins.Browser.Acts.CancelFullScreen, C3.Behaviors.Tween.Cnds.IsAnyPlaying, C3.Plugins.Sprite.Acts.SetX, C3.Plugins.System.Acts.GoToLayoutByName, C3.Plugins.Sprite.Acts.AddChild, C3.Plugins.Sprite.Exps.Height ]; }; self.C3_JsPropNameTable = [ {Tile1: 0}, {Jump: 0}, {Platform: 0}, {Bullet: 0}, {Frog_collision: 0}, {Point: 0}, {Touch: 0}, {Text: 0}, {Arrow: 0}, {Bug: 0}, {Level_Text: 0}, {Var: 0}, {Bugs: 0}, {ScrollTo: 0}, {Frog: 0}, {BG1: 0}, {Rotate: 0}, {Sine: 0}, {saw_whole: 0}, {Dust_land: 0}, {Dust_jump: 0}, {Spike: 0}, {MotionAngle: 0}, {NoWrap: 0}, {Wrap: 0}, {Pin: 0}, {dark_wood: 0}, {Tile: 0}, {NewPosition: 0}, {OldPosition: 0}, {Tween: 0}, {spike_block: 0}, {Rope: 0}, {nut_over_top: 0}, {Rock: 0}, {Create: 0}, {Solid: 0}, {Rock_collision: 0}, {ObjectCollision: 0}, {ClickWidth: 0}, {ClickHeight: 0}, {Start: 0}, {Home: 0}, {BG: 0}, {L: 0}, {Level_icon: 0}, {Cam: 0}, {Direction: 0}, {Back: 0}, {Level_Numbers: 0}, {Audio: 0}, {Fade: 0}, {Mask: 0}, {waterTop: 0}, {waterBottom: 0}, {LocalStorage: 0}, {BugsScore: 0}, {Browser: 0}, {AidHand: 0}, {SoundIcon: 0}, {MusicIcon: 0}, {Restart: 0}, {Asset: 0}, {Setting: 0}, {fs: 0}, {Sine2: 0}, {Insects: 0}, {Dust: 0}, {Traps1: 0}, {Traps2: 0}, {Woods: 0}, {Tiles: 0}, {UIs: 0}, {Settings: 0}, {Jump_Angle: 0}, {Jump_height: 0}, {Music: 0}, {Sound: 0}, {PrevSpeed: 0}, {dSpeed: 0}, {dangle: 0}, {Levels: 0} ]; self.InstanceType = { Tile1: class extends self.ITilemapInstance {}, Frog_collision: class extends self.ISpriteInstance {}, Point: class extends self.ISpriteInstance {}, Touch: class extends self.IInstance {}, Text: class extends self.ITextInstance {}, Arrow: class extends self.ISpriteInstance {}, Bug: class extends self.ISpriteInstance {}, Level_Text: class extends self.ISpriteFontInstance {}, Bugs: class extends self.ISpriteInstance {}, Frog: class extends self.ISpriteInstance {}, BG1: class extends self.ITiledBackgroundInstance {}, saw_whole: class extends self.ISpriteInstance {}, Dust_land: class extends self.ISpriteInstance {}, Dust_jump: class extends self.ISpriteInstance {}, Spike: class extends self.ITiledBackgroundInstance {}, dark_wood: class extends self.ISpriteInstance {}, Tile: class extends self.ITilemapInstance {}, spike_block: class extends self.ISpriteInstance {}, Rope: class extends self.ITiledBackgroundInstance {}, nut_over_top: class extends self.ISpriteInstance {}, Rock: class extends self.ISpriteInstance {}, Rock_collision: class extends self.ISpriteInstance {}, ObjectCollision: class extends self.ITiledBackgroundInstance {}, Start: class extends self.ISpriteInstance {}, Home: class extends self.ISpriteInstance {}, BG: class extends self.ITiledBackgroundInstance {}, Level_icon: class extends self.ISpriteInstance {}, Cam: class extends self.ISpriteInstance {}, Direction: class extends self.ISpriteInstance {}, Back: class extends self.ISpriteInstance {}, Level_Numbers: class extends self.ISpriteFontInstance {}, Audio: class extends self.IInstance {}, Mask: class extends self.ITiledBackgroundInstance {}, waterTop: class extends self.ITiledBackgroundInstance {}, waterBottom: class extends self.ITiledBackgroundInstance {}, LocalStorage: class extends self.IInstance {}, BugsScore: class extends self.ISpriteFontInstance {}, Browser: class extends self.IInstance {}, AidHand: class extends self.ISpriteInstance {}, SoundIcon: class extends self.ISpriteInstance {}, MusicIcon: class extends self.ISpriteInstance {}, Restart: class extends self.ISpriteInstance {}, Asset: class extends self.ISpriteInstance {}, Setting: class extends self.ISpriteInstance {}, fs: class extends self.ISpriteInstance {}, Insects: class extends self.ISpriteInstance {}, Dust: class extends self.ISpriteInstance {}, Traps1: class extends self.ISpriteInstance {}, Traps2: class extends self.ITiledBackgroundInstance {}, Woods: class extends self.ISpriteInstance {}, Tiles: class extends self.ITilemapInstance {}, UIs: class extends self.ISpriteInstance {}, Settings: class extends self.ISpriteInstance {} } c3runtime.js 0000644 00002326265 15042605653 0007041 0 ustar 00 // Generated by Construct, the game and app creator :: https://www.construct.net var aa;"use strict";var ba=this; function ca(a){function b(f,h,l){var p=h[0],t=h[1],u=h[2];h=h[3];var v=l[0],y=l[1],A=l[2];l=l[3];f[0]=p*v+u*y;f[1]=t*v+h*y;f[2]=p*A+u*l;f[3]=t*A+h*l;return f}function d(f,h,l){f[0]=h[0]-l[0];f[1]=h[1]-l[1];f[2]=h[2]-l[2];f[3]=h[3]-l[3];return f}function c(f,h,l){var p=h[0],t=h[1],u=h[2],v=h[3],y=h[4];h=h[5];var A=l[0],D=l[1],F=l[2],H=l[3],O=l[4];l=l[5];f[0]=p*A+u*D;f[1]=t*A+v*D;f[2]=p*F+u*H;f[3]=t*F+v*H;f[4]=p*O+u*l+y;f[5]=t*O+v*l+h;return f}function e(f,h,l){f[0]=h[0]-l[0];f[1]=h[1]-l[1];f[2]=h[2]- l[2];f[3]=h[3]-l[3];f[4]=h[4]-l[4];f[5]=h[5]-l[5];return f}function g(){var f=new ua(9);ua!=Float32Array&&(f[1]=0,f[2]=0,f[3]=0,f[5]=0,f[6]=0,f[7]=0);f[0]=1;f[4]=1;f[8]=1;return f}function k(f,h,l){var p=h[0],t=h[1],u=h[2],v=h[3],y=h[4],A=h[5],D=h[6],F=h[7];h=h[8];var H=l[0],O=l[1],N=l[2],V=l[3],W=l[4],R=l[5],la=l[6],ha=l[7];l=l[8];f[0]=H*p+O*v+N*D;f[1]=H*t+O*y+N*F;f[2]=H*u+O*A+N*h;f[3]=V*p+W*v+R*D;f[4]=V*t+W*y+R*F;f[5]=V*u+W*A+R*h;f[6]=la*p+ha*v+l*D;f[7]=la*t+ha*y+l*F;f[8]=la*u+ha*A+l*h;return f} function m(f,h,l){f[0]=h[0]-l[0];f[1]=h[1]-l[1];f[2]=h[2]-l[2];f[3]=h[3]-l[3];f[4]=h[4]-l[4];f[5]=h[5]-l[5];f[6]=h[6]-l[6];f[7]=h[7]-l[7];f[8]=h[8]-l[8];return f}function n(f){f[0]=1;f[1]=0;f[2]=0;f[3]=0;f[4]=0;f[5]=1;f[6]=0;f[7]=0;f[8]=0;f[9]=0;f[10]=1;f[11]=0;f[12]=0;f[13]=0;f[14]=0;f[15]=1;return f}function q(f,h,l){var p=h[0],t=h[1],u=h[2],v=h[3],y=h[4],A=h[5],D=h[6],F=h[7],H=h[8],O=h[9],N=h[10],V=h[11],W=h[12],R=h[13],la=h[14];h=h[15];var ha=l[0],ra=l[1],sa=l[2],ma=l[3];f[0]=ha*p+ra*y+sa*H+ma* W;f[1]=ha*t+ra*A+sa*O+ma*R;f[2]=ha*u+ra*D+sa*N+ma*la;f[3]=ha*v+ra*F+sa*V+ma*h;ha=l[4];ra=l[5];sa=l[6];ma=l[7];f[4]=ha*p+ra*y+sa*H+ma*W;f[5]=ha*t+ra*A+sa*O+ma*R;f[6]=ha*u+ra*D+sa*N+ma*la;f[7]=ha*v+ra*F+sa*V+ma*h;ha=l[8];ra=l[9];sa=l[10];ma=l[11];f[8]=ha*p+ra*y+sa*H+ma*W;f[9]=ha*t+ra*A+sa*O+ma*R;f[10]=ha*u+ra*D+sa*N+ma*la;f[11]=ha*v+ra*F+sa*V+ma*h;ha=l[12];ra=l[13];sa=l[14];ma=l[15];f[12]=ha*p+ra*y+sa*H+ma*W;f[13]=ha*t+ra*A+sa*O+ma*R;f[14]=ha*u+ra*D+sa*N+ma*la;f[15]=ha*v+ra*F+sa*V+ma*h;return f}function r(f, h,l){var p=h[0],t=h[1],u=h[2],v=h[3],y=p+p,A=t+t,D=u+u;h=p*y;var F=p*A;p*=D;var H=t*A;t*=D;u*=D;y*=v;A*=v;v*=D;f[0]=1-(H+u);f[1]=F+v;f[2]=p-A;f[3]=0;f[4]=F-v;f[5]=1-(h+u);f[6]=t+y;f[7]=0;f[8]=p+A;f[9]=t-y;f[10]=1-(h+H);f[11]=0;f[12]=l[0];f[13]=l[1];f[14]=l[2];f[15]=1;return f}function w(f,h){f[0]=h[12];f[1]=h[13];f[2]=h[14];return f}function x(f,h){var l=h[4],p=h[5],t=h[6],u=h[8],v=h[9],y=h[10];f[0]=Math.hypot(h[0],h[1],h[2]);f[1]=Math.hypot(l,p,t);f[2]=Math.hypot(u,v,y);return f}function z(f,h){var l= new ua(3);x(l,h);var p=1/l[0],t=1/l[1],u=1/l[2],v=h[0]*p;l=h[1]*t;var y=h[2]*u,A=h[4]*p,D=h[5]*t,F=h[6]*u;p*=h[8];t*=h[9];h=h[10]*u;u=v+D+h;0<u?(v=2*Math.sqrt(u+1),f[3]=.25*v,f[0]=(F-t)/v,f[1]=(p-y)/v,f[2]=(l-A)/v):v>D&&v>h?(v=2*Math.sqrt(1+v-D-h),f[3]=(F-t)/v,f[0]=.25*v,f[1]=(l+A)/v,f[2]=(p+y)/v):D>h?(v=2*Math.sqrt(1+D-v-h),f[3]=(p-y)/v,f[0]=(l+A)/v,f[1]=.25*v,f[2]=(F+t)/v):(v=2*Math.sqrt(1+h-v-D),f[3]=(l-A)/v,f[0]=(p+y)/v,f[1]=(F+t)/v,f[2]=.25*v);return f}function E(f,h,l,p,t){h=1/Math.tan(h/2); f[0]=h/l;f[1]=0;f[2]=0;f[3]=0;f[4]=0;f[5]=h;f[6]=0;f[7]=0;f[8]=0;f[9]=0;f[11]=-1;f[12]=0;f[13]=0;f[15]=0;null!=t&&Infinity!==t?(l=1/(p-t),f[10]=(t+p)*l,f[14]=2*t*p*l):(f[10]=-1,f[14]=-2*p);return f}function C(f,h,l,p,t,u,v){var y=1/(h-l),A=1/(p-t),D=1/(u-v);f[0]=-2*y;f[1]=0;f[2]=0;f[3]=0;f[4]=0;f[5]=-2*A;f[6]=0;f[7]=0;f[8]=0;f[9]=0;f[10]=2*D;f[11]=0;f[12]=(h+l)*y;f[13]=(t+p)*A;f[14]=(v+u)*D;f[15]=1;return f}function G(f,h,l){f[0]=h[0]-l[0];f[1]=h[1]-l[1];f[2]=h[2]-l[2];f[3]=h[3]-l[3];f[4]=h[4]-l[4]; f[5]=h[5]-l[5];f[6]=h[6]-l[6];f[7]=h[7]-l[7];f[8]=h[8]-l[8];f[9]=h[9]-l[9];f[10]=h[10]-l[10];f[11]=h[11]-l[11];f[12]=h[12]-l[12];f[13]=h[13]-l[13];f[14]=h[14]-l[14];f[15]=h[15]-l[15];return f}function I(){var f=new ua(3);ua!=Float32Array&&(f[0]=0,f[1]=0,f[2]=0);return f}function J(f){return Math.hypot(f[0],f[1],f[2])}function L(f,h,l){var p=new ua(3);p[0]=f;p[1]=h;p[2]=l;return p}function ea(f,h,l){f[0]=h[0]-l[0];f[1]=h[1]-l[1];f[2]=h[2]-l[2];return f}function Y(f,h,l){f[0]=h[0]*l[0];f[1]=h[1]*l[1]; f[2]=h[2]*l[2];return f}function na(f,h,l){f[0]=h[0]/l[0];f[1]=h[1]/l[1];f[2]=h[2]/l[2];return f}function kb(f,h){return Math.hypot(h[0]-f[0],h[1]-f[1],h[2]-f[2])}function jc(f,h){var l=h[0]-f[0],p=h[1]-f[1];f=h[2]-f[2];return l*l+p*p+f*f}function lb(f){var h=f[0],l=f[1];f=f[2];return h*h+l*l+f*f}function kc(f,h){var l=h[0],p=h[1],t=h[2];l=l*l+p*p+t*t;0<l&&(l=1/Math.sqrt(l));f[0]=h[0]*l;f[1]=h[1]*l;f[2]=h[2]*l;return f}function tf(f,h){return f[0]*h[0]+f[1]*h[1]+f[2]*h[2]}function uf(f,h,l){var p= h[0],t=h[1];h=h[2];var u=l[0],v=l[1];l=l[2];f[0]=t*l-h*v;f[1]=h*u-p*l;f[2]=p*v-t*u;return f}function Ih(){var f=new ua(4);ua!=Float32Array&&(f[0]=0,f[1]=0,f[2]=0,f[3]=0);return f}function Jh(f){var h=new ua(4);h[0]=f[0];h[1]=f[1];h[2]=f[2];h[3]=f[3];return h}function Kh(f,h,l,p){var t=new ua(4);t[0]=f;t[1]=h;t[2]=l;t[3]=p;return t}function vf(f,h){f[0]=h[0];f[1]=h[1];f[2]=h[2];f[3]=h[3];return f}function Lh(f,h,l,p,t){f[0]=h;f[1]=l;f[2]=p;f[3]=t;return f}function Mh(f,h,l){f[0]=h[0]+l[0];f[1]=h[1]+ l[1];f[2]=h[2]+l[2];f[3]=h[3]+l[3];return f}function Gr(f,h,l){f[0]=h[0]-l[0];f[1]=h[1]-l[1];f[2]=h[2]-l[2];f[3]=h[3]-l[3];return f}function Hr(f,h,l){f[0]=h[0]*l[0];f[1]=h[1]*l[1];f[2]=h[2]*l[2];f[3]=h[3]*l[3];return f}function Ir(f,h,l){f[0]=h[0]/l[0];f[1]=h[1]/l[1];f[2]=h[2]/l[2];f[3]=h[3]/l[3];return f}function Tm(f,h,l){f[0]=h[0]*l;f[1]=h[1]*l;f[2]=h[2]*l;f[3]=h[3]*l;return f}function Jr(f,h){return Math.hypot(h[0]-f[0],h[1]-f[1],h[2]-f[2],h[3]-f[3])}function Kr(f,h){var l=h[0]-f[0],p=h[1]-f[1], t=h[2]-f[2];f=h[3]-f[3];return l*l+p*p+t*t+f*f}function lg(f){return Math.hypot(f[0],f[1],f[2],f[3])}function ze(f){var h=f[0],l=f[1],p=f[2];f=f[3];return h*h+l*l+p*p+f*f}function Tj(f,h){var l=h[0],p=h[1],t=h[2];h=h[3];var u=l*l+p*p+t*t+h*h;0<u&&(u=1/Math.sqrt(u));f[0]=l*u;f[1]=p*u;f[2]=t*u;f[3]=h*u;return f}function mg(f,h){return f[0]*h[0]+f[1]*h[1]+f[2]*h[2]+f[3]*h[3]}function Lr(f,h,l,p){var t=h[0],u=h[1],v=h[2];h=h[3];f[0]=t+p*(l[0]-t);f[1]=u+p*(l[1]-u);f[2]=v+p*(l[2]-v);f[3]=h+p*(l[3]-h);return f} function Mr(f,h){return f[0]===h[0]&&f[1]===h[1]&&f[2]===h[2]&&f[3]===h[3]}function Uj(){var f=new ua(4);ua!=Float32Array&&(f[0]=0,f[1]=0,f[2]=0);f[3]=1;return f}function Nr(f,h,l){l*=.5;var p=Math.sin(l);f[0]=p*h[0];f[1]=p*h[1];f[2]=p*h[2];f[3]=Math.cos(l);return f}function Or(f,h,l){var p=h[0],t=h[1],u=h[2];h=h[3];var v=l[0],y=l[1],A=l[2];l=l[3];f[0]=p*l+h*v+t*A-u*y;f[1]=t*l+h*y+u*v-p*A;f[2]=u*l+h*A+p*y-t*v;f[3]=h*l-p*v-t*y-u*A;return f}function Pr(f,h,l){l*=.5;var p=h[0],t=h[1],u=h[2];h=h[3];var v= Math.sin(l);l=Math.cos(l);f[0]=p*l+h*v;f[1]=t*l+u*v;f[2]=u*l-t*v;f[3]=h*l-p*v;return f}function Qr(f,h,l){l*=.5;var p=h[0],t=h[1],u=h[2];h=h[3];var v=Math.sin(l);l=Math.cos(l);f[0]=p*l-u*v;f[1]=t*l+h*v;f[2]=u*l+p*v;f[3]=h*l-t*v;return f}function Rr(f,h,l){l*=.5;var p=h[0],t=h[1],u=h[2];h=h[3];var v=Math.sin(l);l=Math.cos(l);f[0]=p*l+t*v;f[1]=t*l-p*v;f[2]=u*l+h*v;f[3]=h*l-u*v;return f}function Sr(f,h){var l=h[0],p=h[1],t=h[2],u=Math.sqrt(l*l+p*p+t*t);h=Math.exp(h[3]);var v=0<u?h*Math.sin(u)/u:0;f[0]= l*v;f[1]=p*v;f[2]=t*v;f[3]=h*Math.cos(u);return f}function Tr(f,h){var l=h[0],p=h[1],t=h[2];h=h[3];var u=Math.sqrt(l*l+p*p+t*t);u=0<u?Math.atan2(u,h)/u:0;f[0]=l*u;f[1]=p*u;f[2]=t*u;f[3]=.5*Math.log(l*l+p*p+t*t+h*h);return f}function Vj(f,h,l,p){var t=h[0],u=h[1],v=h[2];h=h[3];var y=l[0],A=l[1],D=l[2];l=l[3];var F=t*y+u*A+v*D+h*l;0>F&&(F=-F,y=-y,A=-A,D=-D,l=-l);if(1E-6<1-F){var H=Math.acos(F);var O=Math.sin(H);F=Math.sin((1-p)*H)/O;p=Math.sin(p*H)/O}else F=1-p;f[0]=F*t+p*y;f[1]=F*u+p*A;f[2]=F*v+p* D;f[3]=F*h+p*l;return f}function Ur(f,h){var l=h[0]+h[4]+h[8];if(0<l)l=Math.sqrt(l+1),f[3]=.5*l,l=.5/l,f[0]=(h[5]-h[7])*l,f[1]=(h[6]-h[2])*l,f[2]=(h[1]-h[3])*l;else{var p=0;h[4]>h[0]&&(p=1);h[8]>h[3*p+p]&&(p=2);var t=(p+1)%3,u=(p+2)%3;l=Math.sqrt(h[3*p+p]-h[3*t+t]-h[3*u+u]+1);f[p]=.5*l;l=.5/l;f[3]=(h[3*t+u]-h[3*u+t])*l;f[t]=(h[3*t+p]+h[3*p+t])*l;f[u]=(h[3*u+p]+h[3*p+u])*l}return f}function Vr(f,h,l){var p=.5*l[0],t=.5*l[1];l=.5*l[2];var u=h[0],v=h[1],y=h[2];h=h[3];f[0]=u;f[1]=v;f[2]=y;f[3]=h;f[4]= p*h+t*y-l*v;f[5]=t*h+l*u-p*y;f[6]=l*h+p*v-t*u;f[7]=-p*u-t*v-l*y;return f}function Xr(f,h){f[0]=h[0];f[1]=h[1];f[2]=h[2];f[3]=h[3];f[4]=h[4];f[5]=h[5];f[6]=h[6];f[7]=h[7];return f}function Yr(f,h,l){var p=h[0],t=h[1],u=h[2],v=h[3],y=l[4],A=l[5],D=l[6],F=l[7],H=h[4],O=h[5],N=h[6];h=h[7];var V=l[0],W=l[1],R=l[2];l=l[3];f[0]=p*l+v*V+t*R-u*W;f[1]=t*l+v*W+u*V-p*R;f[2]=u*l+v*R+p*W-t*V;f[3]=v*l-p*V-t*W-u*R;f[4]=p*F+v*y+t*D-u*A+H*l+h*V+O*R-N*W;f[5]=t*F+v*A+u*y-p*D+O*l+h*W+N*V-H*R;f[6]=u*F+v*D+p*A-t*y+N*l+ h*R+H*W-O*V;f[7]=v*F-p*y-t*A-u*D+h*l-H*V-O*W-N*R;return f}function Zr(){var f=new ua(2);ua!=Float32Array&&(f[0]=0,f[1]=0);return f}function $r(f,h,l){f[0]=h[0]-l[0];f[1]=h[1]-l[1];return f}function as(f,h,l){f[0]=h[0]*l[0];f[1]=h[1]*l[1];return f}function bs(f,h,l){f[0]=h[0]/l[0];f[1]=h[1]/l[1];return f}function cs(f,h){return Math.hypot(h[0]-f[0],h[1]-f[1])}function ds(f,h){var l=h[0]-f[0];f=h[1]-f[1];return l*l+f*f}function es(f){return Math.hypot(f[0],f[1])}function fs(f){var h=f[0];f=f[1];return h* h+f*f}var ua="undefined"!==typeof Float32Array?Float32Array:Array,Xc=Math.random,eA=Math.PI/180;Math.hypot||(Math.hypot=function(){for(var f=0,h=arguments.length;h--;)f+=arguments[h]*arguments[h];return Math.sqrt(f)});var fA=Object.freeze({__proto__:null,EPSILON:1E-6,get YY(){return ua},J4:Xc,XY:"zyx",sca:function(f){ua=f},Cca:function(f){return f*eA},Ld:function(f,h){return Math.abs(f-h)<=1E-6*Math.max(1,Math.abs(f),Math.abs(h))}}),gA=Object.freeze({__proto__:null,create:function(){var f=new ua(4); ua!=Float32Array&&(f[1]=0,f[2]=0);f[0]=1;f[3]=1;return f},clone:function(f){var h=new ua(4);h[0]=f[0];h[1]=f[1];h[2]=f[2];h[3]=f[3];return h},xa:function(f,h){f[0]=h[0];f[1]=h[1];f[2]=h[2];f[3]=h[3];return f},gy:function(f){f[0]=1;f[1]=0;f[2]=0;f[3]=1;return f},gh:function(f,h,l,p){var t=new ua(4);t[0]=f;t[1]=h;t[2]=l;t[3]=p;return t},set:function(f,h,l,p,t){f[0]=h;f[1]=l;f[2]=p;f[3]=t;return f},eQ:function(f,h){if(f===h){var l=h[1];f[1]=h[2];f[2]=l}else f[0]=h[0],f[1]=h[2],f[2]=h[1],f[3]=h[3];return f}, ou:function(f,h){var l=h[0],p=h[1],t=h[2];h=h[3];var u=l*h-t*p;if(!u)return null;u=1/u;f[0]=h*u;f[1]=-p*u;f[2]=-t*u;f[3]=l*u;return f},dP:function(f,h){var l=h[0];f[0]=h[3];f[1]=-h[1];f[2]=-h[2];f[3]=l;return f},TI:function(f){return f[0]*f[3]-f[2]*f[1]},multiply:b,rotate:function(f,h,l){var p=h[0],t=h[1],u=h[2];h=h[3];var v=Math.sin(l);l=Math.cos(l);f[0]=p*l+u*v;f[1]=t*l+h*v;f[2]=p*-v+u*l;f[3]=t*-v+h*l;return f},scale:function(f,h,l){var p=h[1],t=h[2],u=h[3],v=l[0];l=l[1];f[0]=h[0]*v;f[1]=p*v;f[2]= t*l;f[3]=u*l;return f},KC:function(f,h){var l=Math.sin(h);h=Math.cos(h);f[0]=h;f[1]=l;f[2]=-l;f[3]=h;return f},YI:function(f,h){f[0]=h[0];f[1]=0;f[2]=0;f[3]=h[1];return f},Hn:function(f){return"mat2("+f[0]+", "+f[1]+", "+f[2]+", "+f[3]+")"},XI:function(f){return Math.hypot(f[0],f[1],f[2],f[3])},R2:function(f,h,l,p){f[2]=p[2]/p[0];l[0]=p[0];l[1]=p[1];l[3]=p[3]-f[2]*l[1];return[f,h,l]},add:function(f,h,l){f[0]=h[0]+l[0];f[1]=h[1]+l[1];f[2]=h[2]+l[2];f[3]=h[3]+l[3];return f},In:d,Yk:function(f,h){return f[0]=== h[0]&&f[1]===h[1]&&f[2]===h[2]&&f[3]===h[3]},Ld:function(f,h){var l=f[0],p=f[1],t=f[2];f=f[3];var u=h[0],v=h[1],y=h[2];h=h[3];return Math.abs(l-u)<=1E-6*Math.max(1,Math.abs(l),Math.abs(u))&&Math.abs(p-v)<=1E-6*Math.max(1,Math.abs(p),Math.abs(v))&&Math.abs(t-y)<=1E-6*Math.max(1,Math.abs(t),Math.abs(y))&&Math.abs(f-h)<=1E-6*Math.max(1,Math.abs(f),Math.abs(h))},lJ:function(f,h,l){f[0]=h[0]*l;f[1]=h[1]*l;f[2]=h[2]*l;f[3]=h[3]*l;return f},mJ:function(f,h,l,p){f[0]=h[0]+l[0]*p;f[1]=h[1]+l[1]*p;f[2]=h[2]+ l[2]*p;f[3]=h[3]+l[3]*p;return f},Ap:b,sub:d}),hA=Object.freeze({__proto__:null,create:function(){var f=new ua(6);ua!=Float32Array&&(f[1]=0,f[2]=0,f[4]=0,f[5]=0);f[0]=1;f[3]=1;return f},clone:function(f){var h=new ua(6);h[0]=f[0];h[1]=f[1];h[2]=f[2];h[3]=f[3];h[4]=f[4];h[5]=f[5];return h},xa:function(f,h){f[0]=h[0];f[1]=h[1];f[2]=h[2];f[3]=h[3];f[4]=h[4];f[5]=h[5];return f},gy:function(f){f[0]=1;f[1]=0;f[2]=0;f[3]=1;f[4]=0;f[5]=0;return f},gh:function(f,h,l,p,t,u){var v=new ua(6);v[0]=f;v[1]=h;v[2]= l;v[3]=p;v[4]=t;v[5]=u;return v},set:function(f,h,l,p,t,u,v){f[0]=h;f[1]=l;f[2]=p;f[3]=t;f[4]=u;f[5]=v;return f},ou:function(f,h){var l=h[0],p=h[1],t=h[2],u=h[3],v=h[4];h=h[5];var y=l*u-p*t;if(!y)return null;y=1/y;f[0]=u*y;f[1]=-p*y;f[2]=-t*y;f[3]=l*y;f[4]=(t*h-u*v)*y;f[5]=(p*v-l*h)*y;return f},TI:function(f){return f[0]*f[3]-f[1]*f[2]},multiply:c,rotate:function(f,h,l){var p=h[0],t=h[1],u=h[2],v=h[3],y=h[4];h=h[5];var A=Math.sin(l);l=Math.cos(l);f[0]=p*l+u*A;f[1]=t*l+v*A;f[2]=p*-A+u*l;f[3]=t*-A+ v*l;f[4]=y;f[5]=h;return f},scale:function(f,h,l){var p=h[1],t=h[2],u=h[3],v=h[4],y=h[5],A=l[0];l=l[1];f[0]=h[0]*A;f[1]=p*A;f[2]=t*l;f[3]=u*l;f[4]=v;f[5]=y;return f},translate:function(f,h,l){var p=h[0],t=h[1],u=h[2],v=h[3],y=h[4];h=h[5];var A=l[0];l=l[1];f[0]=p;f[1]=t;f[2]=u;f[3]=v;f[4]=p*A+u*l+y;f[5]=t*A+v*l+h;return f},KC:function(f,h){var l=Math.sin(h);h=Math.cos(h);f[0]=h;f[1]=l;f[2]=-l;f[3]=h;f[4]=0;f[5]=0;return f},YI:function(f,h){f[0]=h[0];f[1]=0;f[2]=0;f[3]=h[1];f[4]=0;f[5]=0;return f}, ZI:function(f,h){f[0]=1;f[1]=0;f[2]=0;f[3]=1;f[4]=h[0];f[5]=h[1];return f},Hn:function(f){return"mat2d("+f[0]+", "+f[1]+", "+f[2]+", "+f[3]+", "+f[4]+", "+f[5]+")"},XI:function(f){return Math.hypot(f[0],f[1],f[2],f[3],f[4],f[5],1)},add:function(f,h,l){f[0]=h[0]+l[0];f[1]=h[1]+l[1];f[2]=h[2]+l[2];f[3]=h[3]+l[3];f[4]=h[4]+l[4];f[5]=h[5]+l[5];return f},In:e,lJ:function(f,h,l){f[0]=h[0]*l;f[1]=h[1]*l;f[2]=h[2]*l;f[3]=h[3]*l;f[4]=h[4]*l;f[5]=h[5]*l;return f},mJ:function(f,h,l,p){f[0]=h[0]+l[0]*p;f[1]= h[1]+l[1]*p;f[2]=h[2]+l[2]*p;f[3]=h[3]+l[3]*p;f[4]=h[4]+l[4]*p;f[5]=h[5]+l[5]*p;return f},Yk:function(f,h){return f[0]===h[0]&&f[1]===h[1]&&f[2]===h[2]&&f[3]===h[3]&&f[4]===h[4]&&f[5]===h[5]},Ld:function(f,h){var l=f[0],p=f[1],t=f[2],u=f[3],v=f[4];f=f[5];var y=h[0],A=h[1],D=h[2],F=h[3],H=h[4];h=h[5];return Math.abs(l-y)<=1E-6*Math.max(1,Math.abs(l),Math.abs(y))&&Math.abs(p-A)<=1E-6*Math.max(1,Math.abs(p),Math.abs(A))&&Math.abs(t-D)<=1E-6*Math.max(1,Math.abs(t),Math.abs(D))&&Math.abs(u-F)<=1E-6*Math.max(1, Math.abs(u),Math.abs(F))&&Math.abs(v-H)<=1E-6*Math.max(1,Math.abs(v),Math.abs(H))&&Math.abs(f-h)<=1E-6*Math.max(1,Math.abs(f),Math.abs(h))},Ap:c,sub:e}),iA=Object.freeze({__proto__:null,create:g,WX:function(f,h){f[0]=h[0];f[1]=h[1];f[2]=h[2];f[3]=h[4];f[4]=h[5];f[5]=h[6];f[6]=h[8];f[7]=h[9];f[8]=h[10];return f},clone:function(f){var h=new ua(9);h[0]=f[0];h[1]=f[1];h[2]=f[2];h[3]=f[3];h[4]=f[4];h[5]=f[5];h[6]=f[6];h[7]=f[7];h[8]=f[8];return h},xa:function(f,h){f[0]=h[0];f[1]=h[1];f[2]=h[2];f[3]=h[3]; f[4]=h[4];f[5]=h[5];f[6]=h[6];f[7]=h[7];f[8]=h[8];return f},gh:function(f,h,l,p,t,u,v,y,A){var D=new ua(9);D[0]=f;D[1]=h;D[2]=l;D[3]=p;D[4]=t;D[5]=u;D[6]=v;D[7]=y;D[8]=A;return D},set:function(f,h,l,p,t,u,v,y,A,D){f[0]=h;f[1]=l;f[2]=p;f[3]=t;f[4]=u;f[5]=v;f[6]=y;f[7]=A;f[8]=D;return f},gy:function(f){f[0]=1;f[1]=0;f[2]=0;f[3]=0;f[4]=1;f[5]=0;f[6]=0;f[7]=0;f[8]=1;return f},eQ:function(f,h){if(f===h){var l=h[1],p=h[2],t=h[5];f[1]=h[3];f[2]=h[6];f[3]=l;f[5]=h[7];f[6]=p;f[7]=t}else f[0]=h[0],f[1]=h[3], f[2]=h[6],f[3]=h[1],f[4]=h[4],f[5]=h[7],f[6]=h[2],f[7]=h[5],f[8]=h[8];return f},ou:function(f,h){var l=h[0],p=h[1],t=h[2],u=h[3],v=h[4],y=h[5],A=h[6],D=h[7];h=h[8];var F=h*v-y*D,H=-h*u+y*A,O=D*u-v*A,N=l*F+p*H+t*O;if(!N)return null;N=1/N;f[0]=F*N;f[1]=(-h*p+t*D)*N;f[2]=(y*p-t*v)*N;f[3]=H*N;f[4]=(h*l-t*A)*N;f[5]=(-y*l+t*u)*N;f[6]=O*N;f[7]=(-D*l+p*A)*N;f[8]=(v*l-p*u)*N;return f},dP:function(f,h){var l=h[0],p=h[1],t=h[2],u=h[3],v=h[4],y=h[5],A=h[6],D=h[7];h=h[8];f[0]=v*h-y*D;f[1]=t*D-p*h;f[2]=p*y-t*v; f[3]=y*A-u*h;f[4]=l*h-t*A;f[5]=t*u-l*y;f[6]=u*D-v*A;f[7]=p*A-l*D;f[8]=l*v-p*u;return f},TI:function(f){var h=f[3],l=f[4],p=f[5],t=f[6],u=f[7],v=f[8];return f[0]*(v*l-p*u)+f[1]*(-v*h+p*t)+f[2]*(u*h-l*t)},multiply:k,translate:function(f,h,l){var p=h[0],t=h[1],u=h[2],v=h[3],y=h[4],A=h[5],D=h[6],F=h[7];h=h[8];var H=l[0];l=l[1];f[0]=p;f[1]=t;f[2]=u;f[3]=v;f[4]=y;f[5]=A;f[6]=H*p+l*v+D;f[7]=H*t+l*y+F;f[8]=H*u+l*A+h;return f},rotate:function(f,h,l){var p=h[0],t=h[1],u=h[2],v=h[3],y=h[4],A=h[5],D=h[6],F=h[7]; h=h[8];var H=Math.sin(l);l=Math.cos(l);f[0]=l*p+H*v;f[1]=l*t+H*y;f[2]=l*u+H*A;f[3]=l*v-H*p;f[4]=l*y-H*t;f[5]=l*A-H*u;f[6]=D;f[7]=F;f[8]=h;return f},scale:function(f,h,l){var p=l[0];l=l[1];f[0]=p*h[0];f[1]=p*h[1];f[2]=p*h[2];f[3]=l*h[3];f[4]=l*h[4];f[5]=l*h[5];f[6]=h[6];f[7]=h[7];f[8]=h[8];return f},ZI:function(f,h){f[0]=1;f[1]=0;f[2]=0;f[3]=0;f[4]=1;f[5]=0;f[6]=h[0];f[7]=h[1];f[8]=1;return f},KC:function(f,h){var l=Math.sin(h);h=Math.cos(h);f[0]=h;f[1]=l;f[2]=0;f[3]=-l;f[4]=h;f[5]=0;f[6]=0;f[7]=0; f[8]=1;return f},YI:function(f,h){f[0]=h[0];f[1]=0;f[2]=0;f[3]=0;f[4]=h[1];f[5]=0;f[6]=0;f[7]=0;f[8]=1;return f},X$:function(f,h){f[0]=h[0];f[1]=h[1];f[2]=0;f[3]=h[2];f[4]=h[3];f[5]=0;f[6]=h[4];f[7]=h[5];f[8]=1;return f},XX:function(f,h){var l=h[0],p=h[1],t=h[2];h=h[3];var u=l+l,v=p+p,y=t+t;l*=u;var A=p*u;p*=v;var D=t*u,F=t*v;t*=y;u*=h;v*=h;h*=y;f[0]=1-p-t;f[3]=A-h;f[6]=D+v;f[1]=A+h;f[4]=1-l-t;f[7]=F-u;f[2]=D-v;f[5]=F+u;f[8]=1-l-p;return f},uba:function(f,h){var l=h[0],p=h[1],t=h[2],u=h[3],v=h[4], y=h[5],A=h[6],D=h[7],F=h[8],H=h[9],O=h[10],N=h[11],V=h[12],W=h[13],R=h[14];h=h[15];var la=l*y-p*v,ha=l*A-t*v,ra=l*D-u*v,sa=p*A-t*y,ma=p*D-u*y,Xa=t*D-u*A,Ya=F*W-H*V,Za=F*R-O*V;F=F*h-N*V;var $a=H*R-O*W;H=H*h-N*W;O=O*h-N*R;N=la*O-ha*H+ra*$a+sa*F-ma*Za+Xa*Ya;if(!N)return null;N=1/N;f[0]=(y*O-A*H+D*$a)*N;f[1]=(A*F-v*O-D*Za)*N;f[2]=(v*H-y*F+D*Ya)*N;f[3]=(t*H-p*O-u*$a)*N;f[4]=(l*O-t*F+u*Za)*N;f[5]=(p*F-l*H-u*Ya)*N;f[6]=(W*Xa-R*ma+h*sa)*N;f[7]=(R*ra-V*Xa-h*ha)*N;f[8]=(V*ma-W*ra+h*la)*N;return f},PP:function(f, h,l){f[0]=2/h;f[1]=0;f[2]=0;f[3]=0;f[4]=-2/l;f[5]=0;f[6]=-1;f[7]=1;f[8]=1;return f},Hn:function(f){return"mat3("+f[0]+", "+f[1]+", "+f[2]+", "+f[3]+", "+f[4]+", "+f[5]+", "+f[6]+", "+f[7]+", "+f[8]+")"},XI:function(f){return Math.hypot(f[0],f[1],f[2],f[3],f[4],f[5],f[6],f[7],f[8])},add:function(f,h,l){f[0]=h[0]+l[0];f[1]=h[1]+l[1];f[2]=h[2]+l[2];f[3]=h[3]+l[3];f[4]=h[4]+l[4];f[5]=h[5]+l[5];f[6]=h[6]+l[6];f[7]=h[7]+l[7];f[8]=h[8]+l[8];return f},In:m,lJ:function(f,h,l){f[0]=h[0]*l;f[1]=h[1]*l;f[2]= h[2]*l;f[3]=h[3]*l;f[4]=h[4]*l;f[5]=h[5]*l;f[6]=h[6]*l;f[7]=h[7]*l;f[8]=h[8]*l;return f},mJ:function(f,h,l,p){f[0]=h[0]+l[0]*p;f[1]=h[1]+l[1]*p;f[2]=h[2]+l[2]*p;f[3]=h[3]+l[3]*p;f[4]=h[4]+l[4]*p;f[5]=h[5]+l[5]*p;f[6]=h[6]+l[6]*p;f[7]=h[7]+l[7]*p;f[8]=h[8]+l[8]*p;return f},Yk:function(f,h){return f[0]===h[0]&&f[1]===h[1]&&f[2]===h[2]&&f[3]===h[3]&&f[4]===h[4]&&f[5]===h[5]&&f[6]===h[6]&&f[7]===h[7]&&f[8]===h[8]},Ld:function(f,h){var l=f[0],p=f[1],t=f[2],u=f[3],v=f[4],y=f[5],A=f[6],D=f[7];f=f[8];var F= h[0],H=h[1],O=h[2],N=h[3],V=h[4],W=h[5],R=h[6],la=h[7];h=h[8];return Math.abs(l-F)<=1E-6*Math.max(1,Math.abs(l),Math.abs(F))&&Math.abs(p-H)<=1E-6*Math.max(1,Math.abs(p),Math.abs(H))&&Math.abs(t-O)<=1E-6*Math.max(1,Math.abs(t),Math.abs(O))&&Math.abs(u-N)<=1E-6*Math.max(1,Math.abs(u),Math.abs(N))&&Math.abs(v-V)<=1E-6*Math.max(1,Math.abs(v),Math.abs(V))&&Math.abs(y-W)<=1E-6*Math.max(1,Math.abs(y),Math.abs(W))&&Math.abs(A-R)<=1E-6*Math.max(1,Math.abs(A),Math.abs(R))&&Math.abs(D-la)<=1E-6*Math.max(1,Math.abs(D), Math.abs(la))&&Math.abs(f-h)<=1E-6*Math.max(1,Math.abs(f),Math.abs(h))},Ap:k,sub:m}),jA=Object.freeze({__proto__:null,create:function(){var f=new ua(16);ua!=Float32Array&&(f[1]=0,f[2]=0,f[3]=0,f[4]=0,f[6]=0,f[7]=0,f[8]=0,f[9]=0,f[11]=0,f[12]=0,f[13]=0,f[14]=0);f[0]=1;f[5]=1;f[10]=1;f[15]=1;return f},clone:function(f){var h=new ua(16);h[0]=f[0];h[1]=f[1];h[2]=f[2];h[3]=f[3];h[4]=f[4];h[5]=f[5];h[6]=f[6];h[7]=f[7];h[8]=f[8];h[9]=f[9];h[10]=f[10];h[11]=f[11];h[12]=f[12];h[13]=f[13];h[14]=f[14];h[15]= f[15];return h},xa:function(f,h){f[0]=h[0];f[1]=h[1];f[2]=h[2];f[3]=h[3];f[4]=h[4];f[5]=h[5];f[6]=h[6];f[7]=h[7];f[8]=h[8];f[9]=h[9];f[10]=h[10];f[11]=h[11];f[12]=h[12];f[13]=h[13];f[14]=h[14];f[15]=h[15];return f},gh:function(f,h,l,p,t,u,v,y,A,D,F,H,O,N,V,W){var R=new ua(16);R[0]=f;R[1]=h;R[2]=l;R[3]=p;R[4]=t;R[5]=u;R[6]=v;R[7]=y;R[8]=A;R[9]=D;R[10]=F;R[11]=H;R[12]=O;R[13]=N;R[14]=V;R[15]=W;return R},set:function(f,h,l,p,t,u,v,y,A,D,F,H,O,N,V,W,R){f[0]=h;f[1]=l;f[2]=p;f[3]=t;f[4]=u;f[5]=v;f[6]=y; f[7]=A;f[8]=D;f[9]=F;f[10]=H;f[11]=O;f[12]=N;f[13]=V;f[14]=W;f[15]=R;return f},gy:n,eQ:function(f,h){if(f===h){var l=h[1],p=h[2],t=h[3],u=h[6],v=h[7],y=h[11];f[1]=h[4];f[2]=h[8];f[3]=h[12];f[4]=l;f[6]=h[9];f[7]=h[13];f[8]=p;f[9]=u;f[11]=h[14];f[12]=t;f[13]=v;f[14]=y}else f[0]=h[0],f[1]=h[4],f[2]=h[8],f[3]=h[12],f[4]=h[1],f[5]=h[5],f[6]=h[9],f[7]=h[13],f[8]=h[2],f[9]=h[6],f[10]=h[10],f[11]=h[14],f[12]=h[3],f[13]=h[7],f[14]=h[11],f[15]=h[15];return f},ou:function(f,h){var l=h[0],p=h[1],t=h[2],u=h[3], v=h[4],y=h[5],A=h[6],D=h[7],F=h[8],H=h[9],O=h[10],N=h[11],V=h[12],W=h[13],R=h[14];h=h[15];var la=l*y-p*v,ha=l*A-t*v,ra=l*D-u*v,sa=p*A-t*y,ma=p*D-u*y,Xa=t*D-u*A,Ya=F*W-H*V,Za=F*R-O*V,$a=F*h-N*V,zb=H*R-O*W,lc=H*h-N*W,mc=O*h-N*R,ab=la*mc-ha*lc+ra*zb+sa*$a-ma*Za+Xa*Ya;if(!ab)return null;ab=1/ab;f[0]=(y*mc-A*lc+D*zb)*ab;f[1]=(t*lc-p*mc-u*zb)*ab;f[2]=(W*Xa-R*ma+h*sa)*ab;f[3]=(O*ma-H*Xa-N*sa)*ab;f[4]=(A*$a-v*mc-D*Za)*ab;f[5]=(l*mc-t*$a+u*Za)*ab;f[6]=(R*ra-V*Xa-h*ha)*ab;f[7]=(F*Xa-O*ra+N*ha)*ab;f[8]=(v*lc- y*$a+D*Ya)*ab;f[9]=(p*$a-l*lc-u*Ya)*ab;f[10]=(V*ma-W*ra+h*la)*ab;f[11]=(H*ra-F*ma-N*la)*ab;f[12]=(y*Za-v*zb-A*Ya)*ab;f[13]=(l*zb-p*Za+t*Ya)*ab;f[14]=(W*ha-V*sa-R*la)*ab;f[15]=(F*sa-H*ha+O*la)*ab;return f},dP:function(f,h){var l=h[0],p=h[1],t=h[2],u=h[3],v=h[4],y=h[5],A=h[6],D=h[7],F=h[8],H=h[9],O=h[10],N=h[11],V=h[12],W=h[13],R=h[14];h=h[15];var la=l*y-p*v,ha=l*A-t*v,ra=l*D-u*v,sa=p*A-t*y,ma=p*D-u*y,Xa=t*D-u*A,Ya=F*W-H*V,Za=F*R-O*V,$a=F*h-N*V,zb=H*R-O*W,lc=H*h-N*W,mc=O*h-N*R;f[0]=y*mc-A*lc+D*zb;f[1]= t*lc-p*mc-u*zb;f[2]=W*Xa-R*ma+h*sa;f[3]=O*ma-H*Xa-N*sa;f[4]=A*$a-v*mc-D*Za;f[5]=l*mc-t*$a+u*Za;f[6]=R*ra-V*Xa-h*ha;f[7]=F*Xa-O*ra+N*ha;f[8]=v*lc-y*$a+D*Ya;f[9]=p*$a-l*lc-u*Ya;f[10]=V*ma-W*ra+h*la;f[11]=H*ra-F*ma-N*la;f[12]=y*Za-v*zb-A*Ya;f[13]=l*zb-p*Za+t*Ya;f[14]=W*ha-V*sa-R*la;f[15]=F*sa-H*ha+O*la;return f},TI:function(f){var h=f[0],l=f[1],p=f[2],t=f[4],u=f[5],v=f[6],y=f[8],A=f[9],D=f[10],F=f[12],H=f[13],O=f[14],N=h*u-l*t,V=h*v-p*t,W=l*v-p*u,R=y*H-A*F,la=y*O-D*F,ha=A*O-D*H;return f[7]*(h*ha-l*la+ p*R)-f[3]*(t*ha-u*la+v*R)+f[15]*(y*W-A*V+D*N)-f[11]*(F*W-H*V+O*N)},multiply:q,translate:function(f,h,l){var p=l[0],t=l[1];l=l[2];if(h===f)f[12]=h[0]*p+h[4]*t+h[8]*l+h[12],f[13]=h[1]*p+h[5]*t+h[9]*l+h[13],f[14]=h[2]*p+h[6]*t+h[10]*l+h[14],f[15]=h[3]*p+h[7]*t+h[11]*l+h[15];else{var u=h[0];var v=h[1];var y=h[2];var A=h[3];var D=h[4];var F=h[5];var H=h[6];var O=h[7];var N=h[8];var V=h[9];var W=h[10];var R=h[11];f[0]=u;f[1]=v;f[2]=y;f[3]=A;f[4]=D;f[5]=F;f[6]=H;f[7]=O;f[8]=N;f[9]=V;f[10]=W;f[11]=R;f[12]= u*p+D*t+N*l+h[12];f[13]=v*p+F*t+V*l+h[13];f[14]=y*p+H*t+W*l+h[14];f[15]=A*p+O*t+R*l+h[15]}return f},scale:function(f,h,l){var p=l[0],t=l[1];l=l[2];f[0]=h[0]*p;f[1]=h[1]*p;f[2]=h[2]*p;f[3]=h[3]*p;f[4]=h[4]*t;f[5]=h[5]*t;f[6]=h[6]*t;f[7]=h[7]*t;f[8]=h[8]*l;f[9]=h[9]*l;f[10]=h[10]*l;f[11]=h[11]*l;f[12]=h[12];f[13]=h[13];f[14]=h[14];f[15]=h[15];return f},rotate:function(f,h,l,p){var t=p[0],u=p[1];p=p[2];var v=Math.hypot(t,u,p);if(1E-6>v)return null;v=1/v;t*=v;u*=v;p*=v;var y=Math.sin(l);var A=Math.cos(l); var D=1-A;l=h[0];v=h[1];var F=h[2];var H=h[3];var O=h[4];var N=h[5];var V=h[6];var W=h[7];var R=h[8];var la=h[9];var ha=h[10];var ra=h[11];var sa=t*t*D+A;var ma=u*t*D+p*y;var Xa=p*t*D-u*y;var Ya=t*u*D-p*y;var Za=u*u*D+A;var $a=p*u*D+t*y;var zb=t*p*D+u*y;t=u*p*D-t*y;u=p*p*D+A;f[0]=l*sa+O*ma+R*Xa;f[1]=v*sa+N*ma+la*Xa;f[2]=F*sa+V*ma+ha*Xa;f[3]=H*sa+W*ma+ra*Xa;f[4]=l*Ya+O*Za+R*$a;f[5]=v*Ya+N*Za+la*$a;f[6]=F*Ya+V*Za+ha*$a;f[7]=H*Ya+W*Za+ra*$a;f[8]=l*zb+O*t+R*u;f[9]=v*zb+N*t+la*u;f[10]=F*zb+V*t+ha*u;f[11]= H*zb+W*t+ra*u;h!==f&&(f[12]=h[12],f[13]=h[13],f[14]=h[14],f[15]=h[15]);return f},zJ:function(f,h,l){var p=Math.sin(l);l=Math.cos(l);var t=h[4],u=h[5],v=h[6],y=h[7],A=h[8],D=h[9],F=h[10],H=h[11];h!==f&&(f[0]=h[0],f[1]=h[1],f[2]=h[2],f[3]=h[3],f[12]=h[12],f[13]=h[13],f[14]=h[14],f[15]=h[15]);f[4]=t*l+A*p;f[5]=u*l+D*p;f[6]=v*l+F*p;f[7]=y*l+H*p;f[8]=A*l-t*p;f[9]=D*l-u*p;f[10]=F*l-v*p;f[11]=H*l-y*p;return f},AJ:function(f,h,l){var p=Math.sin(l);l=Math.cos(l);var t=h[0],u=h[1],v=h[2],y=h[3],A=h[8],D=h[9], F=h[10],H=h[11];h!==f&&(f[4]=h[4],f[5]=h[5],f[6]=h[6],f[7]=h[7],f[12]=h[12],f[13]=h[13],f[14]=h[14],f[15]=h[15]);f[0]=t*l-A*p;f[1]=u*l-D*p;f[2]=v*l-F*p;f[3]=y*l-H*p;f[8]=t*p+A*l;f[9]=u*p+D*l;f[10]=v*p+F*l;f[11]=y*p+H*l;return f},BJ:function(f,h,l){var p=Math.sin(l);l=Math.cos(l);var t=h[0],u=h[1],v=h[2],y=h[3],A=h[4],D=h[5],F=h[6],H=h[7];h!==f&&(f[8]=h[8],f[9]=h[9],f[10]=h[10],f[11]=h[11],f[12]=h[12],f[13]=h[13],f[14]=h[14],f[15]=h[15]);f[0]=t*l+A*p;f[1]=u*l+D*p;f[2]=v*l+F*p;f[3]=y*l+H*p;f[4]=A*l- t*p;f[5]=D*l-u*p;f[6]=F*l-v*p;f[7]=H*l-y*p;return f},ZI:function(f,h){f[0]=1;f[1]=0;f[2]=0;f[3]=0;f[4]=0;f[5]=1;f[6]=0;f[7]=0;f[8]=0;f[9]=0;f[10]=1;f[11]=0;f[12]=h[0];f[13]=h[1];f[14]=h[2];f[15]=1;return f},YI:function(f,h){f[0]=h[0];f[1]=0;f[2]=0;f[3]=0;f[4]=0;f[5]=h[1];f[6]=0;f[7]=0;f[8]=0;f[9]=0;f[10]=h[2];f[11]=0;f[12]=0;f[13]=0;f[14]=0;f[15]=1;return f},KC:function(f,h,l){var p=l[0],t=l[1];l=l[2];var u=Math.hypot(p,t,l);if(1E-6>u)return null;u=1/u;p*=u;t*=u;l*=u;u=Math.sin(h);h=Math.cos(h);var v= 1-h;f[0]=p*p*v+h;f[1]=t*p*v+l*u;f[2]=l*p*v-t*u;f[3]=0;f[4]=p*t*v-l*u;f[5]=t*t*v+h;f[6]=l*t*v+p*u;f[7]=0;f[8]=p*l*v+t*u;f[9]=t*l*v-p*u;f[10]=l*l*v+h;f[11]=0;f[12]=0;f[13]=0;f[14]=0;f[15]=1;return f},caa:function(f,h){var l=Math.sin(h);h=Math.cos(h);f[0]=1;f[1]=0;f[2]=0;f[3]=0;f[4]=0;f[5]=h;f[6]=l;f[7]=0;f[8]=0;f[9]=-l;f[10]=h;f[11]=0;f[12]=0;f[13]=0;f[14]=0;f[15]=1;return f},daa:function(f,h){var l=Math.sin(h);h=Math.cos(h);f[0]=h;f[1]=0;f[2]=-l;f[3]=0;f[4]=0;f[5]=1;f[6]=0;f[7]=0;f[8]=l;f[9]=0;f[10]= h;f[11]=0;f[12]=0;f[13]=0;f[14]=0;f[15]=1;return f},eaa:function(f,h){var l=Math.sin(h);h=Math.cos(h);f[0]=h;f[1]=l;f[2]=0;f[3]=0;f[4]=-l;f[5]=h;f[6]=0;f[7]=0;f[8]=0;f[9]=0;f[10]=1;f[11]=0;f[12]=0;f[13]=0;f[14]=0;f[15]=1;return f},YX:r,Z$:function(f,h){var l=new ua(3),p=-h[0],t=-h[1],u=-h[2],v=h[3],y=h[4],A=h[5],D=h[6],F=h[7],H=p*p+t*t+u*u+v*v;0<H?(l[0]=2*(y*v+F*p+A*u-D*t)/H,l[1]=2*(A*v+F*t+D*p-y*u)/H,l[2]=2*(D*v+F*u+y*t-A*p)/H):(l[0]=2*(y*v+F*p+A*u-D*t),l[1]=2*(A*v+F*t+D*p-y*u),l[2]=2*(D*v+F*u+y* t-A*p));r(f,h,l);return f},$X:w,naa:x,maa:z,E$:function(f,h,l,p){h[0]=p[12];h[1]=p[13];h[2]=p[14];var t=p[0],u=p[1],v=p[2],y=p[4],A=p[5],D=p[6],F=p[8];h=p[9];p=p[10];l[0]=Math.hypot(t,u,v);l[1]=Math.hypot(y,A,D);l[2]=Math.hypot(F,h,p);var H=1/l[0],O=1/l[1],N=1/l[2];l=t*H;u*=O;v*=N;y*=H;A*=O;D*=N;F*=H;h*=O;p*=N;O=l+A+p;0<O?(p=2*Math.sqrt(O+1),f[3]=.25*p,f[0]=(D-h)/p,f[1]=(F-v)/p,f[2]=(u-y)/p):l>A&&l>p?(p=2*Math.sqrt(1+l-A-p),f[3]=(D-h)/p,f[0]=.25*p,f[1]=(u+y)/p,f[2]=(F+v)/p):A>p?(p=2*Math.sqrt(1+A- l-p),f[3]=(F-v)/p,f[0]=(u+y)/p,f[1]=.25*p,f[2]=(D+h)/p):(p=2*Math.sqrt(1+p-l-A),f[3]=(u-y)/p,f[0]=(F+v)/p,f[1]=(D+h)/p,f[2]=.25*p);return f},$$:function(f,h,l,p){var t=h[0],u=h[1],v=h[2],y=h[3],A=t+t,D=u+u,F=v+v;h=t*A;var H=t*D;t*=F;var O=u*D;u*=F;v*=F;A*=y;D*=y;y*=F;F=p[0];var N=p[1];p=p[2];f[0]=(1-(O+v))*F;f[1]=(H+y)*F;f[2]=(t-D)*F;f[3]=0;f[4]=(H-y)*N;f[5]=(1-(h+v))*N;f[6]=(u+A)*N;f[7]=0;f[8]=(t+D)*p;f[9]=(u-A)*p;f[10]=(1-(h+O))*p;f[11]=0;f[12]=l[0];f[13]=l[1];f[14]=l[2];f[15]=1;return f},aaa:function(f, h,l,p,t){var u=h[0],v=h[1],y=h[2],A=h[3],D=u+u,F=v+v,H=y+y;h=u*D;var O=u*F,N=u*H;u=v*F;v*=H;var V=y*H;y=A*D;F*=A;var W=A*H,R=p[0],la=p[1];H=p[2];p=t[0];A=t[1];t=t[2];D=(1-(u+V))*R;var ha=(O+W)*R;R*=N-F;O=(O-W)*la;V=(1-(h+V))*la;la*=v+y;N=(N+F)*H;v=(v-y)*H;h=(1-(h+u))*H;f[0]=D;f[1]=ha;f[2]=R;f[3]=0;f[4]=O;f[5]=V;f[6]=la;f[7]=0;f[8]=N;f[9]=v;f[10]=h;f[11]=0;f[12]=l[0]+p-(D*p+O*A+N*t);f[13]=l[1]+A-(ha*p+V*A+v*t);f[14]=l[2]+t-(R*p+la*A+h*t);f[15]=1;return f},XX:function(f,h){var l=h[0],p=h[1],t=h[2]; h=h[3];var u=l+l,v=p+p,y=t+t;l*=u;var A=p*u;p*=v;var D=t*u,F=t*v;t*=y;u*=h;v*=h;h*=y;f[0]=1-p-t;f[1]=A+h;f[2]=D-v;f[3]=0;f[4]=A-h;f[5]=1-l-t;f[6]=F+u;f[7]=0;f[8]=D+v;f[9]=F-u;f[10]=1-l-p;f[11]=0;f[12]=0;f[13]=0;f[14]=0;f[15]=1;return f},ZX:function(f,h,l,p,t,u,v){var y=1/(l-h),A=1/(t-p),D=1/(u-v);f[0]=2*u*y;f[1]=0;f[2]=0;f[3]=0;f[4]=0;f[5]=2*u*A;f[6]=0;f[7]=0;f[8]=(l+h)*y;f[9]=(t+p)*A;f[10]=(v+u)*D;f[11]=-1;f[12]=0;f[13]=0;f[14]=v*u*2*D;f[15]=0;return f},Gba:E,perspective:E,Hba:function(f,h,l,p,t){h= 1/Math.tan(h/2);f[0]=h/l;f[1]=0;f[2]=0;f[3]=0;f[4]=0;f[5]=h;f[6]=0;f[7]=0;f[8]=0;f[9]=0;f[11]=-1;f[12]=0;f[13]=0;f[15]=0;null!=t&&Infinity!==t?(l=1/(p-t),f[10]=t*l,f[14]=t*p*l):(f[10]=-1,f[14]=-p);return f},Fba:function(f,h,l,p){var t=Math.tan(h.Pca*Math.PI/180),u=Math.tan(h.I$*Math.PI/180),v=Math.tan(h.dba*Math.PI/180);h=Math.tan(h.dca*Math.PI/180);var y=2/(v+h),A=2/(t+u);f[0]=y;f[1]=0;f[2]=0;f[3]=0;f[4]=0;f[5]=A;f[6]=0;f[7]=0;f[8]=-((v-h)*y*.5);f[9]=(t-u)*A*.5;f[10]=p/(l-p);f[11]=-1;f[12]=0;f[13]= 0;f[14]=p*l/(l-p);f[15]=0;return f},Dba:C,EY:C,Eba:function(f,h,l,p,t,u,v){var y=1/(h-l),A=1/(p-t);v=1/(u-v);f[0]=-2*y;f[1]=0;f[2]=0;f[3]=0;f[4]=0;f[5]=-2*A;f[6]=0;f[7]=0;f[8]=0;f[9]=0;f[10]=v;f[11]=0;f[12]=(h+l)*y;f[13]=(t+p)*A;f[14]=u*v;f[15]=1;return f},vY:function(f,h,l,p){var t=h[0],u=h[1];h=h[2];var v=p[0];var y=p[1];var A=p[2];var D=l[0];p=l[1];var F=l[2];if(1E-6>Math.abs(t-D)&&1E-6>Math.abs(u-p)&&1E-6>Math.abs(h-F))return n(f);l=t-D;p=u-p;D=h-F;var H=1/Math.hypot(l,p,D);l*=H;p*=H;D*=H;F=y* D-A*p;A=A*l-v*D;v=v*p-y*l;(H=Math.hypot(F,A,v))?(H=1/H,F*=H,A*=H,v*=H):v=A=F=0;y=p*v-D*A;var O=D*F-l*v;var N=l*A-p*F;(H=Math.hypot(y,O,N))?(H=1/H,y*=H,O*=H,N*=H):N=O=y=0;f[0]=F;f[1]=y;f[2]=l;f[3]=0;f[4]=A;f[5]=O;f[6]=p;f[7]=0;f[8]=v;f[9]=N;f[10]=D;f[11]=0;f[12]=-(F*t+A*u+v*h);f[13]=-(y*t+O*u+N*h);f[14]=-(l*t+p*u+D*h);f[15]=1;return f},yca:function(f,h,l,p){var t=h[0],u=h[1];h=h[2];var v=p[0],y=p[1],A=p[2];p=t-l[0];var D=u-l[1];l=h-l[2];var F=p*p+D*D+l*l;0<F&&(F=1/Math.sqrt(F),p*=F,D*=F,l*=F);var H= y*l-A*D;A=A*p-v*l;v=v*D-y*p;F=H*H+A*A+v*v;0<F&&(F=1/Math.sqrt(F),H*=F,A*=F,v*=F);f[0]=H;f[1]=A;f[2]=v;f[3]=0;f[4]=D*v-l*A;f[5]=l*H-p*v;f[6]=p*A-D*H;f[7]=0;f[8]=p;f[9]=D;f[10]=l;f[11]=0;f[12]=t;f[13]=u;f[14]=h;f[15]=1;return f},Hn:function(f){return"mat4("+f[0]+", "+f[1]+", "+f[2]+", "+f[3]+", "+f[4]+", "+f[5]+", "+f[6]+", "+f[7]+", "+f[8]+", "+f[9]+", "+f[10]+", "+f[11]+", "+f[12]+", "+f[13]+", "+f[14]+", "+f[15]+")"},XI:function(f){return Math.hypot(f[0],f[1],f[2],f[3],f[4],f[5],f[6],f[7],f[8],f[9], f[10],f[11],f[12],f[13],f[14],f[15])},add:function(f,h,l){f[0]=h[0]+l[0];f[1]=h[1]+l[1];f[2]=h[2]+l[2];f[3]=h[3]+l[3];f[4]=h[4]+l[4];f[5]=h[5]+l[5];f[6]=h[6]+l[6];f[7]=h[7]+l[7];f[8]=h[8]+l[8];f[9]=h[9]+l[9];f[10]=h[10]+l[10];f[11]=h[11]+l[11];f[12]=h[12]+l[12];f[13]=h[13]+l[13];f[14]=h[14]+l[14];f[15]=h[15]+l[15];return f},In:G,lJ:function(f,h,l){f[0]=h[0]*l;f[1]=h[1]*l;f[2]=h[2]*l;f[3]=h[3]*l;f[4]=h[4]*l;f[5]=h[5]*l;f[6]=h[6]*l;f[7]=h[7]*l;f[8]=h[8]*l;f[9]=h[9]*l;f[10]=h[10]*l;f[11]=h[11]*l;f[12]= h[12]*l;f[13]=h[13]*l;f[14]=h[14]*l;f[15]=h[15]*l;return f},mJ:function(f,h,l,p){f[0]=h[0]+l[0]*p;f[1]=h[1]+l[1]*p;f[2]=h[2]+l[2]*p;f[3]=h[3]+l[3]*p;f[4]=h[4]+l[4]*p;f[5]=h[5]+l[5]*p;f[6]=h[6]+l[6]*p;f[7]=h[7]+l[7]*p;f[8]=h[8]+l[8]*p;f[9]=h[9]+l[9]*p;f[10]=h[10]+l[10]*p;f[11]=h[11]+l[11]*p;f[12]=h[12]+l[12]*p;f[13]=h[13]+l[13]*p;f[14]=h[14]+l[14]*p;f[15]=h[15]+l[15]*p;return f},Yk:function(f,h){return f[0]===h[0]&&f[1]===h[1]&&f[2]===h[2]&&f[3]===h[3]&&f[4]===h[4]&&f[5]===h[5]&&f[6]===h[6]&&f[7]=== h[7]&&f[8]===h[8]&&f[9]===h[9]&&f[10]===h[10]&&f[11]===h[11]&&f[12]===h[12]&&f[13]===h[13]&&f[14]===h[14]&&f[15]===h[15]},Ld:function(f,h){var l=f[0],p=f[1],t=f[2],u=f[3],v=f[4],y=f[5],A=f[6],D=f[7],F=f[8],H=f[9],O=f[10],N=f[11],V=f[12],W=f[13],R=f[14];f=f[15];var la=h[0],ha=h[1],ra=h[2],sa=h[3],ma=h[4],Xa=h[5],Ya=h[6],Za=h[7],$a=h[8],zb=h[9],lc=h[10],mc=h[11],ab=h[12],gs=h[13],hs=h[14];h=h[15];return Math.abs(l-la)<=1E-6*Math.max(1,Math.abs(l),Math.abs(la))&&Math.abs(p-ha)<=1E-6*Math.max(1,Math.abs(p), Math.abs(ha))&&Math.abs(t-ra)<=1E-6*Math.max(1,Math.abs(t),Math.abs(ra))&&Math.abs(u-sa)<=1E-6*Math.max(1,Math.abs(u),Math.abs(sa))&&Math.abs(v-ma)<=1E-6*Math.max(1,Math.abs(v),Math.abs(ma))&&Math.abs(y-Xa)<=1E-6*Math.max(1,Math.abs(y),Math.abs(Xa))&&Math.abs(A-Ya)<=1E-6*Math.max(1,Math.abs(A),Math.abs(Ya))&&Math.abs(D-Za)<=1E-6*Math.max(1,Math.abs(D),Math.abs(Za))&&Math.abs(F-$a)<=1E-6*Math.max(1,Math.abs(F),Math.abs($a))&&Math.abs(H-zb)<=1E-6*Math.max(1,Math.abs(H),Math.abs(zb))&&Math.abs(O-lc)<= 1E-6*Math.max(1,Math.abs(O),Math.abs(lc))&&Math.abs(N-mc)<=1E-6*Math.max(1,Math.abs(N),Math.abs(mc))&&Math.abs(V-ab)<=1E-6*Math.max(1,Math.abs(V),Math.abs(ab))&&Math.abs(W-gs)<=1E-6*Math.max(1,Math.abs(W),Math.abs(gs))&&Math.abs(R-hs)<=1E-6*Math.max(1,Math.abs(R),Math.abs(hs))&&Math.abs(f-h)<=1E-6*Math.max(1,Math.abs(f),Math.abs(h))},Ap:q,sub:G}),Um=function(){var f=I();return function(h,l,p,t,u,v){l||(l=3);p||(p=0);for(t=t?Math.min(t*l+p,h.length):h.length;p<t;p+=l)f[0]=h[p],f[1]=h[p+1],f[2]=h[p+ 2],u(f,f,v),h[p]=f[0],h[p+1]=f[1],h[p+2]=f[2];return h}}();Um=Object.freeze({__proto__:null,create:I,clone:function(f){var h=new ua(3);h[0]=f[0];h[1]=f[1];h[2]=f[2];return h},length:J,gh:L,xa:function(f,h){f[0]=h[0];f[1]=h[1];f[2]=h[2];return f},set:function(f,h,l,p){f[0]=h;f[1]=l;f[2]=p;return f},add:function(f,h,l){f[0]=h[0]+l[0];f[1]=h[1]+l[1];f[2]=h[2]+l[2];return f},In:ea,multiply:Y,Dj:na,ceil:function(f,h){f[0]=Math.ceil(h[0]);f[1]=Math.ceil(h[1]);f[2]=Math.ceil(h[2]);return f},floor:function(f, h){f[0]=Math.floor(h[0]);f[1]=Math.floor(h[1]);f[2]=Math.floor(h[2]);return f},min:function(f,h,l){f[0]=Math.min(h[0],l[0]);f[1]=Math.min(h[1],l[1]);f[2]=Math.min(h[2],l[2]);return f},max:function(f,h,l){f[0]=Math.max(h[0],l[0]);f[1]=Math.max(h[1],l[1]);f[2]=Math.max(h[2],l[2]);return f},round:function(f,h){f[0]=Math.round(h[0]);f[1]=Math.round(h[1]);f[2]=Math.round(h[2]);return f},scale:function(f,h,l){f[0]=h[0]*l;f[1]=h[1]*l;f[2]=h[2]*l;return f},CJ:function(f,h,l,p){f[0]=h[0]+l[0]*p;f[1]=h[1]+ l[1]*p;f[2]=h[2]+l[2]*p;return f},ci:kb,ZP:jc,UC:lb,LP:function(f,h){f[0]=-h[0];f[1]=-h[1];f[2]=-h[2];return f},inverse:function(f,h){f[0]=1/h[0];f[1]=1/h[1];f[2]=1/h[2];return f},normalize:kc,zp:tf,SI:uf,je:function(f,h,l,p){var t=h[0],u=h[1];h=h[2];f[0]=t+p*(l[0]-t);f[1]=u+p*(l[1]-u);f[2]=h+p*(l[2]-h);return f},JY:function(f,h,l,p){var t=Math.acos(Math.min(Math.max(tf(h,l),-1),1)),u=Math.sin(t),v=Math.sin((1-p)*t)/u;p=Math.sin(p*t)/u;f[0]=v*h[0]+p*l[0];f[1]=v*h[1]+p*l[1];f[2]=v*h[2]+p*l[2];return f}, saa:function(f,h,l,p,t,u){var v=u*u,y=v*(2*u-3)+1,A=v*(u-2)+u,D=v*(u-1);u=v*(3-2*u);f[0]=h[0]*y+l[0]*A+p[0]*D+t[0]*u;f[1]=h[1]*y+l[1]*A+p[1]*D+t[1]*u;f[2]=h[2]*y+l[2]*A+p[2]*D+t[2]*u;return f},c$:function(f,h,l,p,t,u){var v=1-u,y=v*v,A=u*u,D=y*v;y*=3*u;v*=3*A;u*=A;f[0]=h[0]*D+l[0]*y+p[0]*v+t[0]*u;f[1]=h[1]*D+l[1]*y+p[1]*v+t[1]*u;f[2]=h[2]*D+l[2]*y+p[2]*v+t[2]*u;return f},random:function(f,h){h=h||1;var l=2*Xc()*Math.PI,p=2*Xc()-1,t=Math.sqrt(1-p*p)*h;f[0]=Math.cos(l)*t;f[1]=Math.sin(l)*t;f[2]=p*h; return f},JJ:function(f,h,l){var p=h[0],t=h[1];h=h[2];var u=l[3]*p+l[7]*t+l[11]*h+l[15];u=u||1;f[0]=(l[0]*p+l[4]*t+l[8]*h+l[12])/u;f[1]=(l[1]*p+l[5]*t+l[9]*h+l[13])/u;f[2]=(l[2]*p+l[6]*t+l[10]*h+l[14])/u;return f},RY:function(f,h,l){var p=h[0],t=h[1];h=h[2];f[0]=p*l[0]+t*l[3]+h*l[6];f[1]=p*l[1]+t*l[4]+h*l[7];f[2]=p*l[2]+t*l[5]+h*l[8];return f},SY:function(f,h,l){var p=l[0],t=l[1],u=l[2],v=h[0],y=h[1];h=h[2];var A=t*h-u*y,D=u*v-p*h,F=p*y-t*v;l=2*l[3];f[0]=v+A*l+2*(t*F-u*D);f[1]=y+D*l+2*(u*A-p*F);f[2]= h+F*l+2*(p*D-t*A);return f},zJ:function(f,h,l,p){var t=[],u=[];t[0]=h[0]-l[0];t[1]=h[1]-l[1];t[2]=h[2]-l[2];u[0]=t[0];u[1]=t[1]*Math.cos(p)-t[2]*Math.sin(p);u[2]=t[1]*Math.sin(p)+t[2]*Math.cos(p);f[0]=u[0]+l[0];f[1]=u[1]+l[1];f[2]=u[2]+l[2];return f},AJ:function(f,h,l,p){var t=[],u=[];t[0]=h[0]-l[0];t[1]=h[1]-l[1];t[2]=h[2]-l[2];u[0]=t[2]*Math.sin(p)+t[0]*Math.cos(p);u[1]=t[1];u[2]=t[2]*Math.cos(p)-t[0]*Math.sin(p);f[0]=u[0]+l[0];f[1]=u[1]+l[1];f[2]=u[2]+l[2];return f},BJ:function(f,h,l,p){var t= [],u=[];t[0]=h[0]-l[0];t[1]=h[1]-l[1];t[2]=h[2]-l[2];u[0]=t[0]*Math.cos(p)-t[1]*Math.sin(p);u[1]=t[0]*Math.sin(p)+t[1]*Math.cos(p);u[2]=t[2];f[0]=u[0]+l[0];f[1]=u[1]+l[1];f[2]=u[2]+l[2];return f},angle:function(f,h){var l=f[0],p=f[1],t=f[2],u=h[0],v=h[1],y=h[2];f=(l=Math.sqrt((l*l+p*p+t*t)*(u*u+v*v+y*y)))&&tf(f,h)/l;return Math.acos(Math.min(Math.max(f,-1),1))},oQ:function(f){f[0]=0;f[1]=0;f[2]=0;return f},Hn:function(f){return"vec3("+f[0]+", "+f[1]+", "+f[2]+")"},Yk:function(f,h){return f[0]===h[0]&& f[1]===h[1]&&f[2]===h[2]},Ld:function(f,h){var l=f[0],p=f[1];f=f[2];var t=h[0],u=h[1];h=h[2];return Math.abs(l-t)<=1E-6*Math.max(1,Math.abs(l),Math.abs(t))&&Math.abs(p-u)<=1E-6*Math.max(1,Math.abs(p),Math.abs(u))&&Math.abs(f-h)<=1E-6*Math.max(1,Math.abs(f),Math.abs(h))},sub:ea,Ap:Y,qP:na,UI:kb,YP:jc,ly:J,TC:lb,forEach:Um});var Vm=function(){var f=Ih();return function(h,l,p,t,u,v){l||(l=4);p||(p=0);for(t=t?Math.min(t*l+p,h.length):h.length;p<t;p+=l)f[0]=h[p],f[1]=h[p+1],f[2]=h[p+2],f[3]=h[p+3],u(f, f,v),h[p]=f[0],h[p+1]=f[1],h[p+2]=f[2],h[p+3]=f[3];return h}}();Vm=Object.freeze({__proto__:null,create:Ih,clone:Jh,gh:Kh,xa:vf,set:Lh,add:Mh,In:Gr,multiply:Hr,Dj:Ir,ceil:function(f,h){f[0]=Math.ceil(h[0]);f[1]=Math.ceil(h[1]);f[2]=Math.ceil(h[2]);f[3]=Math.ceil(h[3]);return f},floor:function(f,h){f[0]=Math.floor(h[0]);f[1]=Math.floor(h[1]);f[2]=Math.floor(h[2]);f[3]=Math.floor(h[3]);return f},min:function(f,h,l){f[0]=Math.min(h[0],l[0]);f[1]=Math.min(h[1],l[1]);f[2]=Math.min(h[2],l[2]);f[3]=Math.min(h[3], l[3]);return f},max:function(f,h,l){f[0]=Math.max(h[0],l[0]);f[1]=Math.max(h[1],l[1]);f[2]=Math.max(h[2],l[2]);f[3]=Math.max(h[3],l[3]);return f},round:function(f,h){f[0]=Math.round(h[0]);f[1]=Math.round(h[1]);f[2]=Math.round(h[2]);f[3]=Math.round(h[3]);return f},scale:Tm,CJ:function(f,h,l,p){f[0]=h[0]+l[0]*p;f[1]=h[1]+l[1]*p;f[2]=h[2]+l[2]*p;f[3]=h[3]+l[3]*p;return f},ci:Jr,ZP:Kr,length:lg,UC:ze,LP:function(f,h){f[0]=-h[0];f[1]=-h[1];f[2]=-h[2];f[3]=-h[3];return f},inverse:function(f,h){f[0]=1/h[0]; f[1]=1/h[1];f[2]=1/h[2];f[3]=1/h[3];return f},normalize:Tj,zp:mg,SI:function(f,h,l,p){var t=l[0]*p[1]-l[1]*p[0],u=l[0]*p[2]-l[2]*p[0],v=l[0]*p[3]-l[3]*p[0],y=l[1]*p[2]-l[2]*p[1],A=l[1]*p[3]-l[3]*p[1];l=l[2]*p[3]-l[3]*p[2];p=h[0];var D=h[1],F=h[2];h=h[3];f[0]=D*l-F*A+h*y;f[1]=-(p*l)+F*v-h*u;f[2]=p*A-D*v+h*t;f[3]=-(p*y)+D*u-F*t;return f},je:Lr,random:function(f,h){h=h||1;do{var l=2*Xc()-1;var p=2*Xc()-1;var t=l*l+p*p}while(1<=t);do{var u=2*Xc()-1;var v=2*Xc()-1;var y=u*u+v*v}while(1<=y);t=Math.sqrt((1- t)/y);f[0]=h*l;f[1]=h*p;f[2]=h*u*t;f[3]=h*v*t;return f},JJ:function(f,h,l){var p=h[0],t=h[1],u=h[2];h=h[3];f[0]=l[0]*p+l[4]*t+l[8]*u+l[12]*h;f[1]=l[1]*p+l[5]*t+l[9]*u+l[13]*h;f[2]=l[2]*p+l[6]*t+l[10]*u+l[14]*h;f[3]=l[3]*p+l[7]*t+l[11]*u+l[15]*h;return f},SY:function(f,h,l){var p=h[0],t=h[1],u=h[2],v=l[0],y=l[1],A=l[2];l=l[3];var D=l*p+y*u-A*t,F=l*t+A*p-v*u,H=l*u+v*t-y*p;p=-v*p-y*t-A*u;f[0]=D*l+p*-v+F*-A-H*-y;f[1]=F*l+p*-y+H*-v-D*-A;f[2]=H*l+p*-A+D*-y-F*-v;f[3]=h[3];return f},oQ:function(f){f[0]=0; f[1]=0;f[2]=0;f[3]=0;return f},Hn:function(f){return"vec4("+f[0]+", "+f[1]+", "+f[2]+", "+f[3]+")"},Yk:Mr,Ld:function(f,h){var l=f[0],p=f[1],t=f[2];f=f[3];var u=h[0],v=h[1],y=h[2];h=h[3];return Math.abs(l-u)<=1E-6*Math.max(1,Math.abs(l),Math.abs(u))&&Math.abs(p-v)<=1E-6*Math.max(1,Math.abs(p),Math.abs(v))&&Math.abs(t-y)<=1E-6*Math.max(1,Math.abs(t),Math.abs(y))&&Math.abs(f-h)<=1E-6*Math.max(1,Math.abs(f),Math.abs(h))},sub:Gr,Ap:Hr,qP:Ir,UI:Jr,YP:Kr,ly:lg,TC:ze,forEach:Vm});var Wm=function(){var f= I(),h=L(1,0,0),l=L(0,1,0);return function(p,t,u){var v=tf(t,u);if(-.999999>v)return uf(f,h,t),1E-6>J(f)&&uf(f,l,t),kc(f,f),Nr(p,f,Math.PI),p;if(.999999<v)return p[0]=0,p[1]=0,p[2]=0,p[3]=1,p;uf(f,t,u);p[0]=f[0];p[1]=f[1];p[2]=f[2];p[3]=1+v;return Tj(p,p)}}(),Xm=function(){var f=Uj(),h=Uj();return function(l,p,t,u,v,y){Vj(f,p,v,y);Vj(h,t,u,y);Vj(l,f,h,2*y*(1-y));return l}}(),Nh=function(){var f=g();return function(h,l,p,t){f[0]=p[0];f[3]=p[1];f[6]=p[2];f[1]=t[0];f[4]=t[1];f[7]=t[2];f[2]=-l[0];f[5]= -l[1];f[8]=-l[2];return Tj(h,Ur(h,f))}}();Wm=Object.freeze({__proto__:null,create:Uj,gy:function(f){f[0]=0;f[1]=0;f[2]=0;f[3]=1;return f},qca:Nr,jaa:function(f,h){var l=2*Math.acos(h[3]),p=Math.sin(l/2);1E-6<p?(f[0]=h[0]/p,f[1]=h[1]/p,f[2]=h[2]/p):(f[0]=1,f[1]=0,f[2]=0);return l},haa:function(f,h){f=mg(f,h);return Math.acos(2*f*f-1)},multiply:Or,zJ:Pr,AJ:Qr,BJ:Rr,k$:function(f,h){var l=h[0],p=h[1];h=h[2];f[0]=l;f[1]=p;f[2]=h;f[3]=Math.sqrt(Math.abs(1-l*l-p*p-h*h));return f},exp:Sr,uY:Tr,pow:function(f, h,l){Tr(f,h);Tm(f,f,l);Sr(f,f);return f},JY:Vj,random:function(f){var h=Xc(),l=Xc(),p=Xc(),t=Math.sqrt(1-h);h=Math.sqrt(h);f[0]=t*Math.sin(2*Math.PI*l);f[1]=t*Math.cos(2*Math.PI*l);f[2]=h*Math.sin(2*Math.PI*p);f[3]=h*Math.cos(2*Math.PI*p);return f},ou:function(f,h){var l=h[0],p=h[1],t=h[2];h=h[3];var u=l*l+p*p+t*t+h*h;u=u?1/u:0;f[0]=-l*u;f[1]=-p*u;f[2]=-t*u;f[3]=h*u;return f},LX:function(f,h){f[0]=-h[0];f[1]=-h[1];f[2]=-h[2];f[3]=h[3];return f},Y$:Ur,W$:function(f,h,l,p){var t=4<arguments.length&& void 0!==arguments[4]?arguments[4]:"zyx",u=Math.PI/360;h*=u;p*=u;l*=u;u=Math.sin(h);var v=Math.cos(h),y=Math.sin(l),A=Math.cos(l),D=Math.sin(p),F=Math.cos(p);switch(t){case "xyz":f[0]=u*A*F+v*y*D;f[1]=v*y*F-u*A*D;f[2]=v*A*D+u*y*F;f[3]=v*A*F-u*y*D;break;case "xzy":f[0]=u*A*F-v*y*D;f[1]=v*y*F-u*A*D;f[2]=v*A*D+u*y*F;f[3]=v*A*F+u*y*D;break;case "yxz":f[0]=u*A*F+v*y*D;f[1]=v*y*F-u*A*D;f[2]=v*A*D-u*y*F;f[3]=v*A*F+u*y*D;break;case "yzx":f[0]=u*A*F+v*y*D;f[1]=v*y*F+u*A*D;f[2]=v*A*D-u*y*F;f[3]=v*A*F-u*y*D; break;case "zxy":f[0]=u*A*F-v*y*D;f[1]=v*y*F+u*A*D;f[2]=v*A*D+u*y*F;f[3]=v*A*F-u*y*D;break;case "zyx":f[0]=u*A*F-v*y*D;f[1]=v*y*F+u*A*D;f[2]=v*A*D-u*y*F;f[3]=v*A*F+u*y*D;break;default:throw Error("Unknown angle order "+t);}return f},Hn:function(f){return"quat("+f[0]+", "+f[1]+", "+f[2]+", "+f[3]+")"},clone:Jh,gh:Kh,xa:vf,set:Lh,add:Mh,Ap:Or,scale:Tm,zp:mg,je:Lr,length:lg,ly:lg,UC:ze,TC:ze,normalize:Tj,Yk:Mr,Ld:function(f,h){return.999999<=Math.abs(mg(f,h))},hca:Wm,vca:Xm,pca:Nh});Xm=Object.freeze({__proto__:null, create:function(){var f=new ua(8);ua!=Float32Array&&(f[0]=0,f[1]=0,f[2]=0,f[4]=0,f[5]=0,f[6]=0,f[7]=0);f[3]=1;return f},clone:function(f){var h=new ua(8);h[0]=f[0];h[1]=f[1];h[2]=f[2];h[3]=f[3];h[4]=f[4];h[5]=f[5];h[6]=f[6];h[7]=f[7];return h},gh:function(f,h,l,p,t,u,v,y){var A=new ua(8);A[0]=f;A[1]=h;A[2]=l;A[3]=p;A[4]=t;A[5]=u;A[6]=v;A[7]=y;return A},baa:function(f,h,l,p,t,u,v){var y=new ua(8);y[0]=f;y[1]=h;y[2]=l;y[3]=p;t*=.5;u*=.5;v*=.5;y[4]=t*p+u*l-v*h;y[5]=u*p+v*f-t*l;y[6]=v*p+t*h-u*f;y[7]= -t*f-u*h-v*l;return y},YX:Vr,ZI:function(f,h){f[0]=0;f[1]=0;f[2]=0;f[3]=1;f[4]=.5*h[0];f[5]=.5*h[1];f[6]=.5*h[2];f[7]=0;return f},KC:function(f,h){f[0]=h[0];f[1]=h[1];f[2]=h[2];f[3]=h[3];f[4]=0;f[5]=0;f[6]=0;f[7]=0;return f},WX:function(f,h){var l=Uj();z(l,h);var p=new ua(3);w(p,h);Vr(f,l,p);return f},xa:Xr,gy:function(f){f[0]=0;f[1]=0;f[2]=0;f[3]=1;f[4]=0;f[5]=0;f[6]=0;f[7]=0;return f},set:function(f,h,l,p,t,u,v,y,A){f[0]=h;f[1]=l;f[2]=p;f[3]=t;f[4]=u;f[5]=v;f[6]=y;f[7]=A;return f},laa:vf,kaa:function(f, h){f[0]=h[4];f[1]=h[5];f[2]=h[6];f[3]=h[7];return f},tca:vf,rca:function(f,h){f[4]=h[0];f[5]=h[1];f[6]=h[2];f[7]=h[3];return f},$X:function(f,h){var l=h[4],p=h[5],t=h[6],u=h[7],v=-h[0],y=-h[1],A=-h[2];h=h[3];f[0]=2*(l*h+u*v+p*A-t*y);f[1]=2*(p*h+u*y+t*v-l*A);f[2]=2*(t*h+u*A+l*y-p*v);return f},translate:function(f,h,l){var p=h[0],t=h[1],u=h[2],v=h[3],y=.5*l[0],A=.5*l[1];l=.5*l[2];var D=h[4],F=h[5],H=h[6];h=h[7];f[0]=p;f[1]=t;f[2]=u;f[3]=v;f[4]=v*y+t*l-u*A+D;f[5]=v*A+u*y-p*l+F;f[6]=v*l+p*A-t*y+H;f[7]= -p*y-t*A-u*l+h;return f},zJ:function(f,h,l){var p=-h[0],t=-h[1],u=-h[2],v=h[3],y=h[4],A=h[5],D=h[6],F=h[7],H=y*v+F*p+A*u-D*t,O=A*v+F*t+D*p-y*u,N=D*v+F*u+y*t-A*p;y=F*v-y*p-A*t-D*u;Pr(f,h,l);p=f[0];t=f[1];u=f[2];v=f[3];f[4]=H*v+y*p+O*u-N*t;f[5]=O*v+y*t+N*p-H*u;f[6]=N*v+y*u+H*t-O*p;f[7]=y*v-H*p-O*t-N*u;return f},AJ:function(f,h,l){var p=-h[0],t=-h[1],u=-h[2],v=h[3],y=h[4],A=h[5],D=h[6],F=h[7],H=y*v+F*p+A*u-D*t,O=A*v+F*t+D*p-y*u,N=D*v+F*u+y*t-A*p;y=F*v-y*p-A*t-D*u;Qr(f,h,l);p=f[0];t=f[1];u=f[2];v=f[3]; f[4]=H*v+y*p+O*u-N*t;f[5]=O*v+y*t+N*p-H*u;f[6]=N*v+y*u+H*t-O*p;f[7]=y*v-H*p-O*t-N*u;return f},BJ:function(f,h,l){var p=-h[0],t=-h[1],u=-h[2],v=h[3],y=h[4],A=h[5],D=h[6],F=h[7],H=y*v+F*p+A*u-D*t,O=A*v+F*t+D*p-y*u,N=D*v+F*u+y*t-A*p;y=F*v-y*p-A*t-D*u;Rr(f,h,l);p=f[0];t=f[1];u=f[2];v=f[3];f[4]=H*v+y*p+O*u-N*t;f[5]=O*v+y*t+N*p-H*u;f[6]=N*v+y*u+H*t-O*p;f[7]=y*v-H*p-O*t-N*u;return f},fca:function(f,h,l){var p=l[0],t=l[1],u=l[2];l=l[3];var v=h[0],y=h[1],A=h[2],D=h[3];f[0]=v*l+D*p+y*u-A*t;f[1]=y*l+D*t+A*p- v*u;f[2]=A*l+D*u+v*t-y*p;f[3]=D*l-v*p-y*t-A*u;v=h[4];y=h[5];A=h[6];D=h[7];f[4]=v*l+D*p+y*u-A*t;f[5]=y*l+D*t+A*p-v*u;f[6]=A*l+D*u+v*t-y*p;f[7]=D*l-v*p-y*t-A*u;return f},gca:function(f,h,l){var p=h[0],t=h[1],u=h[2];h=h[3];var v=l[0],y=l[1],A=l[2],D=l[3];f[0]=p*D+h*v+t*A-u*y;f[1]=t*D+h*y+u*v-p*A;f[2]=u*D+h*A+p*y-t*v;f[3]=h*D-p*v-t*y-u*A;v=l[4];y=l[5];A=l[6];D=l[7];f[4]=p*D+h*v+t*A-u*y;f[5]=t*D+h*y+u*v-p*A;f[6]=u*D+h*A+p*y-t*v;f[7]=h*D-p*v-t*y-u*A;return f},eca:function(f,h,l,p){if(1E-6>Math.abs(p))return Xr(f, h);var t=Math.hypot(l[0],l[1],l[2]);p*=.5;var u=Math.sin(p),v=u*l[0]/t,y=u*l[1]/t;l=u*l[2]/t;p=Math.cos(p);t=h[0];u=h[1];var A=h[2],D=h[3];f[0]=t*p+D*v+u*l-A*y;f[1]=u*p+D*y+A*v-t*l;f[2]=A*p+D*l+t*y-u*v;f[3]=D*p-t*v-u*y-A*l;t=h[4];u=h[5];A=h[6];h=h[7];f[4]=t*p+h*v+u*l-A*y;f[5]=u*p+h*y+A*v-t*l;f[6]=A*p+h*l+t*y-u*v;f[7]=h*p-t*v-u*y-A*l;return f},add:function(f,h,l){f[0]=h[0]+l[0];f[1]=h[1]+l[1];f[2]=h[2]+l[2];f[3]=h[3]+l[3];f[4]=h[4]+l[4];f[5]=h[5]+l[5];f[6]=h[6]+l[6];f[7]=h[7]+l[7];return f},multiply:Yr, Ap:Yr,scale:function(f,h,l){f[0]=h[0]*l;f[1]=h[1]*l;f[2]=h[2]*l;f[3]=h[3]*l;f[4]=h[4]*l;f[5]=h[5]*l;f[6]=h[6]*l;f[7]=h[7]*l;return f},zp:mg,je:function(f,h,l,p){var t=1-p;0>mg(h,l)&&(p=-p);f[0]=h[0]*t+l[0]*p;f[1]=h[1]*t+l[1]*p;f[2]=h[2]*t+l[2]*p;f[3]=h[3]*t+l[3]*p;f[4]=h[4]*t+l[4]*p;f[5]=h[5]*t+l[5]*p;f[6]=h[6]*t+l[6]*p;f[7]=h[7]*t+l[7]*p;return f},ou:function(f,h){var l=ze(h);f[0]=-h[0]/l;f[1]=-h[1]/l;f[2]=-h[2]/l;f[3]=h[3]/l;f[4]=-h[4]/l;f[5]=-h[5]/l;f[6]=-h[6]/l;f[7]=h[7]/l;return f},LX:function(f, h){f[0]=-h[0];f[1]=-h[1];f[2]=-h[2];f[3]=h[3];f[4]=-h[4];f[5]=-h[5];f[6]=-h[6];f[7]=h[7];return f},length:lg,ly:lg,UC:ze,TC:ze,normalize:function(f,h){var l=ze(h);if(0<l){l=Math.sqrt(l);var p=h[0]/l,t=h[1]/l,u=h[2]/l,v=h[3]/l,y=h[4],A=h[5],D=h[6];h=h[7];var F=p*y+t*A+u*D+v*h;f[0]=p;f[1]=t;f[2]=u;f[3]=v;f[4]=(y-p*F)/l;f[5]=(A-t*F)/l;f[6]=(D-u*F)/l;f[7]=(h-v*F)/l}return f},Hn:function(f){return"quat2("+f[0]+", "+f[1]+", "+f[2]+", "+f[3]+", "+f[4]+", "+f[5]+", "+f[6]+", "+f[7]+")"},Yk:function(f,h){return f[0]=== h[0]&&f[1]===h[1]&&f[2]===h[2]&&f[3]===h[3]&&f[4]===h[4]&&f[5]===h[5]&&f[6]===h[6]&&f[7]===h[7]},Ld:function(f,h){var l=f[0],p=f[1],t=f[2],u=f[3],v=f[4],y=f[5],A=f[6];f=f[7];var D=h[0],F=h[1],H=h[2],O=h[3],N=h[4],V=h[5],W=h[6];h=h[7];return Math.abs(l-D)<=1E-6*Math.max(1,Math.abs(l),Math.abs(D))&&Math.abs(p-F)<=1E-6*Math.max(1,Math.abs(p),Math.abs(F))&&Math.abs(t-H)<=1E-6*Math.max(1,Math.abs(t),Math.abs(H))&&Math.abs(u-O)<=1E-6*Math.max(1,Math.abs(u),Math.abs(O))&&Math.abs(v-N)<=1E-6*Math.max(1,Math.abs(v), Math.abs(N))&&Math.abs(y-V)<=1E-6*Math.max(1,Math.abs(y),Math.abs(V))&&Math.abs(A-W)<=1E-6*Math.max(1,Math.abs(A),Math.abs(W))&&Math.abs(f-h)<=1E-6*Math.max(1,Math.abs(f),Math.abs(h))}});Nh=function(){var f=Zr();return function(h,l,p,t,u,v){l||(l=2);p||(p=0);for(t=t?Math.min(t*l+p,h.length):h.length;p<t;p+=l)f[0]=h[p],f[1]=h[p+1],u(f,f,v),h[p]=f[0],h[p+1]=f[1];return h}}();Nh=Object.freeze({__proto__:null,create:Zr,clone:function(f){var h=new ua(2);h[0]=f[0];h[1]=f[1];return h},gh:function(f,h){var l= new ua(2);l[0]=f;l[1]=h;return l},xa:function(f,h){f[0]=h[0];f[1]=h[1];return f},set:function(f,h,l){f[0]=h;f[1]=l;return f},add:function(f,h,l){f[0]=h[0]+l[0];f[1]=h[1]+l[1];return f},In:$r,multiply:as,Dj:bs,ceil:function(f,h){f[0]=Math.ceil(h[0]);f[1]=Math.ceil(h[1]);return f},floor:function(f,h){f[0]=Math.floor(h[0]);f[1]=Math.floor(h[1]);return f},min:function(f,h,l){f[0]=Math.min(h[0],l[0]);f[1]=Math.min(h[1],l[1]);return f},max:function(f,h,l){f[0]=Math.max(h[0],l[0]);f[1]=Math.max(h[1],l[1]); return f},round:function(f,h){f[0]=Math.round(h[0]);f[1]=Math.round(h[1]);return f},scale:function(f,h,l){f[0]=h[0]*l;f[1]=h[1]*l;return f},CJ:function(f,h,l,p){f[0]=h[0]+l[0]*p;f[1]=h[1]+l[1]*p;return f},ci:cs,ZP:ds,length:es,UC:fs,LP:function(f,h){f[0]=-h[0];f[1]=-h[1];return f},inverse:function(f,h){f[0]=1/h[0];f[1]=1/h[1];return f},normalize:function(f,h){var l=h[0],p=h[1];l=l*l+p*p;0<l&&(l=1/Math.sqrt(l));f[0]=h[0]*l;f[1]=h[1]*l;return f},zp:function(f,h){return f[0]*h[0]+f[1]*h[1]},SI:function(f, h,l){h=h[0]*l[1]-h[1]*l[0];f[0]=f[1]=0;f[2]=h;return f},je:function(f,h,l,p){var t=h[0];h=h[1];f[0]=t+p*(l[0]-t);f[1]=h+p*(l[1]-h);return f},random:function(f,h){h=h||1;var l=2*Xc()*Math.PI;f[0]=Math.cos(l)*h;f[1]=Math.sin(l)*h;return f},Kca:function(f,h,l){var p=h[0];h=h[1];f[0]=l[0]*p+l[2]*h;f[1]=l[1]*p+l[3]*h;return f},Lca:function(f,h,l){var p=h[0];h=h[1];f[0]=l[0]*p+l[2]*h+l[4];f[1]=l[1]*p+l[3]*h+l[5];return f},RY:function(f,h,l){var p=h[0];h=h[1];f[0]=l[0]*p+l[3]*h+l[6];f[1]=l[1]*p+l[4]*h+l[7]; return f},JJ:function(f,h,l){var p=h[0];h=h[1];f[0]=l[0]*p+l[4]*h+l[12];f[1]=l[1]*p+l[5]*h+l[13];return f},rotate:function(f,h,l,p){var t=h[0]-l[0];h=h[1]-l[1];var u=Math.sin(p);p=Math.cos(p);f[0]=t*p-h*u+l[0];f[1]=t*u+h*p+l[1];return f},angle:function(f,h){var l=f[0];f=f[1];var p=h[0];h=h[1];var t=Math.sqrt((l*l+f*f)*(p*p+h*h));return Math.acos(Math.min(Math.max(t&&(l*p+f*h)/t,-1),1))},oQ:function(f){f[0]=0;f[1]=0;return f},Hn:function(f){return"vec2("+f[0]+", "+f[1]+")"},Yk:function(f,h){return f[0]=== h[0]&&f[1]===h[1]},Ld:function(f,h){var l=f[0];f=f[1];var p=h[0];h=h[1];return Math.abs(l-p)<=1E-6*Math.max(1,Math.abs(l),Math.abs(p))&&Math.abs(f-h)<=1E-6*Math.max(1,Math.abs(f),Math.abs(h))},ly:es,sub:$r,Ap:as,qP:bs,UI:cs,YP:ds,TC:fs,forEach:Nh});a.Zk=fA;a.kba=gA;a.lba=hA;a.mba=iA;a.Bn=jA;a.Pba=Wm;a.Qba=Xm;a.Yca=Nh;a.XC=Um;a.zy=Vm;Object.defineProperty(a,"__esModule",{value:!0})} "object"===typeof exports&&"undefined"!==typeof module?ca(exports):"function"===typeof define&&define.U9?define(["exports"],ca):(ba="undefined"!==typeof globalThis?globalThis:ba||self,ca(ba.Zk={})); self.QR=function(){function a(c,e){void 0===e&&(e=0);var g=c.charCodeAt(e);if(55296<=g&&56319>=g&&e<c.length-1){var k=g;c=c.charCodeAt(e+1);return 56320<=c&&57343>=c?1024*(k-55296)+(c-56320)+65536:k}return 56320<=g&&57343>=g&&1<=e?(k=c.charCodeAt(e-1),c=g,55296<=k&&56319>=k?1024*(k-55296)+(c-56320)+65536:c):g}function b(c,e,g){var k=[c].concat(e).concat([g]),m=k[k.length-2],n=k.lastIndexOf(14);if(1<n&&k.slice(1,n).every(function(q){return 3==q})&&-1==[3,13,17].indexOf(c))return 2;c=k.lastIndexOf(4); if(0<c&&k.slice(1,c).every(function(q){return 4==q})&&-1==[12,4].indexOf(m))return 1==k.filter(function(q){return 4==q}).length%2?3:4;if(0==m&&1==g)return 0;if(2==m||0==m||1==m)return 14==g&&e.every(function(q){return 3==q})?2:1;if(2==g||0==g||1==g)return 1;if(6!=m||6!=g&&7!=g&&9!=g&&10!=g)if(9!=m&&7!=m||7!=g&&8!=g)if(10!=m&&8!=m||8!=g){if(3==g||15==g||5==g||12==m)return 0}else return 0;else return 0;else return 0;c=-1!=k.indexOf(3)?k.lastIndexOf(3)-1:k.length-2;return-1!=[13,17].indexOf(k[c])&&k.slice(c+ 1,-1).every(function(q){return 3==q})&&14==g||15==m&&-1!=[16,17].indexOf(g)?0:-1!=e.indexOf(4)?2:4==m&&4==g?0:1}function d(c){return 1536<=c&&1541>=c||1757==c||1807==c||2274==c||3406==c||69821==c||70082<=c&&70083>=c||72250==c||72326<=c&&72329>=c||73030==c?12:13==c?0:10==c?1:0<=c&&9>=c||11<=c&&12>=c||14<=c&&31>=c||127<=c&&159>=c||173==c||1564==c||6158==c||8203==c||8206<=c&&8207>=c||8232==c||8233==c||8234<=c&&8238>=c||8288<=c&&8292>=c||8293==c||8294<=c&&8303>=c||55296<=c&&57343>=c||65279==c||65520<= c&&65528>=c||65529<=c&&65531>=c||113824<=c&&113827>=c||119155<=c&&119162>=c||917504==c||917505==c||917506<=c&&917535>=c||917632<=c&&917759>=c||918E3<=c&&921599>=c?2:768<=c&&879>=c||1155<=c&&1159>=c||1160<=c&&1161>=c||1425<=c&&1469>=c||1471==c||1473<=c&&1474>=c||1476<=c&&1477>=c||1479==c||1552<=c&&1562>=c||1611<=c&&1631>=c||1648==c||1750<=c&&1756>=c||1759<=c&&1764>=c||1767<=c&&1768>=c||1770<=c&&1773>=c||1809==c||1840<=c&&1866>=c||1958<=c&&1968>=c||2027<=c&&2035>=c||2070<=c&&2073>=c||2075<=c&&2083>= c||2085<=c&&2087>=c||2089<=c&&2093>=c||2137<=c&&2139>=c||2260<=c&&2273>=c||2275<=c&&2306>=c||2362==c||2364==c||2369<=c&&2376>=c||2381==c||2385<=c&&2391>=c||2402<=c&&2403>=c||2433==c||2492==c||2494==c||2497<=c&&2500>=c||2509==c||2519==c||2530<=c&&2531>=c||2561<=c&&2562>=c||2620==c||2625<=c&&2626>=c||2631<=c&&2632>=c||2635<=c&&2637>=c||2641==c||2672<=c&&2673>=c||2677==c||2689<=c&&2690>=c||2748==c||2753<=c&&2757>=c||2759<=c&&2760>=c||2765==c||2786<=c&&2787>=c||2810<=c&&2815>=c||2817==c||2876==c||2878== c||2879==c||2881<=c&&2884>=c||2893==c||2902==c||2903==c||2914<=c&&2915>=c||2946==c||3006==c||3008==c||3021==c||3031==c||3072==c||3134<=c&&3136>=c||3142<=c&&3144>=c||3146<=c&&3149>=c||3157<=c&&3158>=c||3170<=c&&3171>=c||3201==c||3260==c||3263==c||3266==c||3270==c||3276<=c&&3277>=c||3285<=c&&3286>=c||3298<=c&&3299>=c||3328<=c&&3329>=c||3387<=c&&3388>=c||3390==c||3393<=c&&3396>=c||3405==c||3415==c||3426<=c&&3427>=c||3530==c||3535==c||3538<=c&&3540>=c||3542==c||3551==c||3633==c||3636<=c&&3642>=c||3655<= c&&3662>=c||3761==c||3764<=c&&3769>=c||3771<=c&&3772>=c||3784<=c&&3789>=c||3864<=c&&3865>=c||3893==c||3895==c||3897==c||3953<=c&&3966>=c||3968<=c&&3972>=c||3974<=c&&3975>=c||3981<=c&&3991>=c||3993<=c&&4028>=c||4038==c||4141<=c&&4144>=c||4146<=c&&4151>=c||4153<=c&&4154>=c||4157<=c&&4158>=c||4184<=c&&4185>=c||4190<=c&&4192>=c||4209<=c&&4212>=c||4226==c||4229<=c&&4230>=c||4237==c||4253==c||4957<=c&&4959>=c||5906<=c&&5908>=c||5938<=c&&5940>=c||5970<=c&&5971>=c||6002<=c&&6003>=c||6068<=c&&6069>=c||6071<= c&&6077>=c||6086==c||6089<=c&&6099>=c||6109==c||6155<=c&&6157>=c||6277<=c&&6278>=c||6313==c||6432<=c&&6434>=c||6439<=c&&6440>=c||6450==c||6457<=c&&6459>=c||6679<=c&&6680>=c||6683==c||6742==c||6744<=c&&6750>=c||6752==c||6754==c||6757<=c&&6764>=c||6771<=c&&6780>=c||6783==c||6832<=c&&6845>=c||6846==c||6912<=c&&6915>=c||6964==c||6966<=c&&6970>=c||6972==c||6978==c||7019<=c&&7027>=c||7040<=c&&7041>=c||7074<=c&&7077>=c||7080<=c&&7081>=c||7083<=c&&7085>=c||7142==c||7144<=c&&7145>=c||7149==c||7151<=c&&7153>= c||7212<=c&&7219>=c||7222<=c&&7223>=c||7376<=c&&7378>=c||7380<=c&&7392>=c||7394<=c&&7400>=c||7405==c||7412==c||7416<=c&&7417>=c||7616<=c&&7673>=c||7675<=c&&7679>=c||8204==c||8400<=c&&8412>=c||8413<=c&&8416>=c||8417==c||8418<=c&&8420>=c||8421<=c&&8432>=c||11503<=c&&11505>=c||11647==c||11744<=c&&11775>=c||12330<=c&&12333>=c||12334<=c&&12335>=c||12441<=c&&12442>=c||42607==c||42608<=c&&42610>=c||42612<=c&&42621>=c||42654<=c&&42655>=c||42736<=c&&42737>=c||43010==c||43014==c||43019==c||43045<=c&&43046>= c||43204<=c&&43205>=c||43232<=c&&43249>=c||43302<=c&&43309>=c||43335<=c&&43345>=c||43392<=c&&43394>=c||43443==c||43446<=c&&43449>=c||43452==c||43493==c||43561<=c&&43566>=c||43569<=c&&43570>=c||43573<=c&&43574>=c||43587==c||43596==c||43644==c||43696==c||43698<=c&&43700>=c||43703<=c&&43704>=c||43710<=c&&43711>=c||43713==c||43756<=c&&43757>=c||43766==c||44005==c||44008==c||44013==c||64286==c||65024<=c&&65039>=c||65056<=c&&65071>=c||65438<=c&&65439>=c||66045==c||66272==c||66422<=c&&66426>=c||68097<=c&& 68099>=c||68101<=c&&68102>=c||68108<=c&&68111>=c||68152<=c&&68154>=c||68159==c||68325<=c&&68326>=c||69633==c||69688<=c&&69702>=c||69759<=c&&69761>=c||69811<=c&&69814>=c||69817<=c&&69818>=c||69888<=c&&69890>=c||69927<=c&&69931>=c||69933<=c&&69940>=c||70003==c||70016<=c&&70017>=c||70070<=c&&70078>=c||70090<=c&&70092>=c||70191<=c&&70193>=c||70196==c||70198<=c&&70199>=c||70206==c||70367==c||70371<=c&&70378>=c||70400<=c&&70401>=c||70460==c||70462==c||70464==c||70487==c||70502<=c&&70508>=c||70512<=c&&70516>= c||70712<=c&&70719>=c||70722<=c&&70724>=c||70726==c||70832==c||70835<=c&&70840>=c||70842==c||70845==c||70847<=c&&70848>=c||70850<=c&&70851>=c||71087==c||71090<=c&&71093>=c||71100<=c&&71101>=c||71103<=c&&71104>=c||71132<=c&&71133>=c||71219<=c&&71226>=c||71229==c||71231<=c&&71232>=c||71339==c||71341==c||71344<=c&&71349>=c||71351==c||71453<=c&&71455>=c||71458<=c&&71461>=c||71463<=c&&71467>=c||72193<=c&&72198>=c||72201<=c&&72202>=c||72243<=c&&72248>=c||72251<=c&&72254>=c||72263==c||72273<=c&&72278>=c|| 72281<=c&&72283>=c||72330<=c&&72342>=c||72344<=c&&72345>=c||72752<=c&&72758>=c||72760<=c&&72765>=c||72767==c||72850<=c&&72871>=c||72874<=c&&72880>=c||72882<=c&&72883>=c||72885<=c&&72886>=c||73009<=c&&73014>=c||73018==c||73020<=c&&73021>=c||73023<=c&&73029>=c||73031==c||92912<=c&&92916>=c||92976<=c&&92982>=c||94095<=c&&94098>=c||113821<=c&&113822>=c||119141==c||119143<=c&&119145>=c||119150<=c&&119154>=c||119163<=c&&119170>=c||119173<=c&&119179>=c||119210<=c&&119213>=c||119362<=c&&119364>=c||121344<= c&&121398>=c||121403<=c&&121452>=c||121461==c||121476==c||121499<=c&&121503>=c||121505<=c&&121519>=c||122880<=c&&122886>=c||122888<=c&&122904>=c||122907<=c&&122913>=c||122915<=c&&122916>=c||122918<=c&&122922>=c||125136<=c&&125142>=c||125252<=c&&125258>=c||917536<=c&&917631>=c||917760<=c&&917999>=c?3:127462<=c&&127487>=c?4:2307==c||2363==c||2366<=c&&2368>=c||2377<=c&&2380>=c||2382<=c&&2383>=c||2434<=c&&2435>=c||2495<=c&&2496>=c||2503<=c&&2504>=c||2507<=c&&2508>=c||2563==c||2622<=c&&2624>=c||2691== c||2750<=c&&2752>=c||2761==c||2763<=c&&2764>=c||2818<=c&&2819>=c||2880==c||2887<=c&&2888>=c||2891<=c&&2892>=c||3007==c||3009<=c&&3010>=c||3014<=c&&3016>=c||3018<=c&&3020>=c||3073<=c&&3075>=c||3137<=c&&3140>=c||3202<=c&&3203>=c||3262==c||3264<=c&&3265>=c||3267<=c&&3268>=c||3271<=c&&3272>=c||3274<=c&&3275>=c||3330<=c&&3331>=c||3391<=c&&3392>=c||3398<=c&&3400>=c||3402<=c&&3404>=c||3458<=c&&3459>=c||3536<=c&&3537>=c||3544<=c&&3550>=c||3570<=c&&3571>=c||3635==c||3763==c||3902<=c&&3903>=c||3967==c||4145== c||4155<=c&&4156>=c||4182<=c&&4183>=c||4228==c||6070==c||6078<=c&&6085>=c||6087<=c&&6088>=c||6435<=c&&6438>=c||6441<=c&&6443>=c||6448<=c&&6449>=c||6451<=c&&6456>=c||6681<=c&&6682>=c||6741==c||6743==c||6765<=c&&6770>=c||6916==c||6965==c||6971==c||6973<=c&&6977>=c||6979<=c&&6980>=c||7042==c||7073==c||7078<=c&&7079>=c||7082==c||7143==c||7146<=c&&7148>=c||7150==c||7154<=c&&7155>=c||7204<=c&&7211>=c||7220<=c&&7221>=c||7393==c||7410<=c&&7411>=c||7415==c||43043<=c&&43044>=c||43047==c||43136<=c&&43137>=c|| 43188<=c&&43203>=c||43346<=c&&43347>=c||43395==c||43444<=c&&43445>=c||43450<=c&&43451>=c||43453<=c&&43456>=c||43567<=c&&43568>=c||43571<=c&&43572>=c||43597==c||43755==c||43758<=c&&43759>=c||43765==c||44003<=c&&44004>=c||44006<=c&&44007>=c||44009<=c&&44010>=c||44012==c||69632==c||69634==c||69762==c||69808<=c&&69810>=c||69815<=c&&69816>=c||69932==c||70018==c||70067<=c&&70069>=c||70079<=c&&70080>=c||70188<=c&&70190>=c||70194<=c&&70195>=c||70197==c||70368<=c&&70370>=c||70402<=c&&70403>=c||70463==c||70465<= c&&70468>=c||70471<=c&&70472>=c||70475<=c&&70477>=c||70498<=c&&70499>=c||70709<=c&&70711>=c||70720<=c&&70721>=c||70725==c||70833<=c&&70834>=c||70841==c||70843<=c&&70844>=c||70846==c||70849==c||71088<=c&&71089>=c||71096<=c&&71099>=c||71102==c||71216<=c&&71218>=c||71227<=c&&71228>=c||71230==c||71340==c||71342<=c&&71343>=c||71350==c||71456<=c&&71457>=c||71462==c||72199<=c&&72200>=c||72249==c||72279<=c&&72280>=c||72343==c||72751==c||72766==c||72873==c||72881==c||72884==c||94033<=c&&94078>=c||119142== c||119149==c?5:4352<=c&&4447>=c||43360<=c&&43388>=c?6:4448<=c&&4519>=c||55216<=c&&55238>=c?7:4520<=c&&4607>=c||55243<=c&&55291>=c?8:44032==c||44060==c||44088==c||44116==c||44144==c||44172==c||44200==c||44228==c||44256==c||44284==c||44312==c||44340==c||44368==c||44396==c||44424==c||44452==c||44480==c||44508==c||44536==c||44564==c||44592==c||44620==c||44648==c||44676==c||44704==c||44732==c||44760==c||44788==c||44816==c||44844==c||44872==c||44900==c||44928==c||44956==c||44984==c||45012==c||45040==c|| 45068==c||45096==c||45124==c||45152==c||45180==c||45208==c||45236==c||45264==c||45292==c||45320==c||45348==c||45376==c||45404==c||45432==c||45460==c||45488==c||45516==c||45544==c||45572==c||45600==c||45628==c||45656==c||45684==c||45712==c||45740==c||45768==c||45796==c||45824==c||45852==c||45880==c||45908==c||45936==c||45964==c||45992==c||46020==c||46048==c||46076==c||46104==c||46132==c||46160==c||46188==c||46216==c||46244==c||46272==c||46300==c||46328==c||46356==c||46384==c||46412==c||46440==c||46468== c||46496==c||46524==c||46552==c||46580==c||46608==c||46636==c||46664==c||46692==c||46720==c||46748==c||46776==c||46804==c||46832==c||46860==c||46888==c||46916==c||46944==c||46972==c||47E3==c||47028==c||47056==c||47084==c||47112==c||47140==c||47168==c||47196==c||47224==c||47252==c||47280==c||47308==c||47336==c||47364==c||47392==c||47420==c||47448==c||47476==c||47504==c||47532==c||47560==c||47588==c||47616==c||47644==c||47672==c||47700==c||47728==c||47756==c||47784==c||47812==c||47840==c||47868==c|| 47896==c||47924==c||47952==c||47980==c||48008==c||48036==c||48064==c||48092==c||48120==c||48148==c||48176==c||48204==c||48232==c||48260==c||48288==c||48316==c||48344==c||48372==c||48400==c||48428==c||48456==c||48484==c||48512==c||48540==c||48568==c||48596==c||48624==c||48652==c||48680==c||48708==c||48736==c||48764==c||48792==c||48820==c||48848==c||48876==c||48904==c||48932==c||48960==c||48988==c||49016==c||49044==c||49072==c||49100==c||49128==c||49156==c||49184==c||49212==c||49240==c||49268==c||49296== c||49324==c||49352==c||49380==c||49408==c||49436==c||49464==c||49492==c||49520==c||49548==c||49576==c||49604==c||49632==c||49660==c||49688==c||49716==c||49744==c||49772==c||49800==c||49828==c||49856==c||49884==c||49912==c||49940==c||49968==c||49996==c||50024==c||50052==c||50080==c||50108==c||50136==c||50164==c||50192==c||50220==c||50248==c||50276==c||50304==c||50332==c||50360==c||50388==c||50416==c||50444==c||50472==c||50500==c||50528==c||50556==c||50584==c||50612==c||50640==c||50668==c||50696==c|| 50724==c||50752==c||50780==c||50808==c||50836==c||50864==c||50892==c||50920==c||50948==c||50976==c||51004==c||51032==c||51060==c||51088==c||51116==c||51144==c||51172==c||51200==c||51228==c||51256==c||51284==c||51312==c||51340==c||51368==c||51396==c||51424==c||51452==c||51480==c||51508==c||51536==c||51564==c||51592==c||51620==c||51648==c||51676==c||51704==c||51732==c||51760==c||51788==c||51816==c||51844==c||51872==c||51900==c||51928==c||51956==c||51984==c||52012==c||52040==c||52068==c||52096==c||52124== c||52152==c||52180==c||52208==c||52236==c||52264==c||52292==c||52320==c||52348==c||52376==c||52404==c||52432==c||52460==c||52488==c||52516==c||52544==c||52572==c||52600==c||52628==c||52656==c||52684==c||52712==c||52740==c||52768==c||52796==c||52824==c||52852==c||52880==c||52908==c||52936==c||52964==c||52992==c||53020==c||53048==c||53076==c||53104==c||53132==c||53160==c||53188==c||53216==c||53244==c||53272==c||53300==c||53328==c||53356==c||53384==c||53412==c||53440==c||53468==c||53496==c||53524==c|| 53552==c||53580==c||53608==c||53636==c||53664==c||53692==c||53720==c||53748==c||53776==c||53804==c||53832==c||53860==c||53888==c||53916==c||53944==c||53972==c||54E3==c||54028==c||54056==c||54084==c||54112==c||54140==c||54168==c||54196==c||54224==c||54252==c||54280==c||54308==c||54336==c||54364==c||54392==c||54420==c||54448==c||54476==c||54504==c||54532==c||54560==c||54588==c||54616==c||54644==c||54672==c||54700==c||54728==c||54756==c||54784==c||54812==c||54840==c||54868==c||54896==c||54924==c||54952== c||54980==c||55008==c||55036==c||55064==c||55092==c||55120==c||55148==c||55176==c?9:44033<=c&&44059>=c||44061<=c&&44087>=c||44089<=c&&44115>=c||44117<=c&&44143>=c||44145<=c&&44171>=c||44173<=c&&44199>=c||44201<=c&&44227>=c||44229<=c&&44255>=c||44257<=c&&44283>=c||44285<=c&&44311>=c||44313<=c&&44339>=c||44341<=c&&44367>=c||44369<=c&&44395>=c||44397<=c&&44423>=c||44425<=c&&44451>=c||44453<=c&&44479>=c||44481<=c&&44507>=c||44509<=c&&44535>=c||44537<=c&&44563>=c||44565<=c&&44591>=c||44593<=c&&44619>= c||44621<=c&&44647>=c||44649<=c&&44675>=c||44677<=c&&44703>=c||44705<=c&&44731>=c||44733<=c&&44759>=c||44761<=c&&44787>=c||44789<=c&&44815>=c||44817<=c&&44843>=c||44845<=c&&44871>=c||44873<=c&&44899>=c||44901<=c&&44927>=c||44929<=c&&44955>=c||44957<=c&&44983>=c||44985<=c&&45011>=c||45013<=c&&45039>=c||45041<=c&&45067>=c||45069<=c&&45095>=c||45097<=c&&45123>=c||45125<=c&&45151>=c||45153<=c&&45179>=c||45181<=c&&45207>=c||45209<=c&&45235>=c||45237<=c&&45263>=c||45265<=c&&45291>=c||45293<=c&&45319>=c|| 45321<=c&&45347>=c||45349<=c&&45375>=c||45377<=c&&45403>=c||45405<=c&&45431>=c||45433<=c&&45459>=c||45461<=c&&45487>=c||45489<=c&&45515>=c||45517<=c&&45543>=c||45545<=c&&45571>=c||45573<=c&&45599>=c||45601<=c&&45627>=c||45629<=c&&45655>=c||45657<=c&&45683>=c||45685<=c&&45711>=c||45713<=c&&45739>=c||45741<=c&&45767>=c||45769<=c&&45795>=c||45797<=c&&45823>=c||45825<=c&&45851>=c||45853<=c&&45879>=c||45881<=c&&45907>=c||45909<=c&&45935>=c||45937<=c&&45963>=c||45965<=c&&45991>=c||45993<=c&&46019>=c||46021<= c&&46047>=c||46049<=c&&46075>=c||46077<=c&&46103>=c||46105<=c&&46131>=c||46133<=c&&46159>=c||46161<=c&&46187>=c||46189<=c&&46215>=c||46217<=c&&46243>=c||46245<=c&&46271>=c||46273<=c&&46299>=c||46301<=c&&46327>=c||46329<=c&&46355>=c||46357<=c&&46383>=c||46385<=c&&46411>=c||46413<=c&&46439>=c||46441<=c&&46467>=c||46469<=c&&46495>=c||46497<=c&&46523>=c||46525<=c&&46551>=c||46553<=c&&46579>=c||46581<=c&&46607>=c||46609<=c&&46635>=c||46637<=c&&46663>=c||46665<=c&&46691>=c||46693<=c&&46719>=c||46721<=c&& 46747>=c||46749<=c&&46775>=c||46777<=c&&46803>=c||46805<=c&&46831>=c||46833<=c&&46859>=c||46861<=c&&46887>=c||46889<=c&&46915>=c||46917<=c&&46943>=c||46945<=c&&46971>=c||46973<=c&&46999>=c||47001<=c&&47027>=c||47029<=c&&47055>=c||47057<=c&&47083>=c||47085<=c&&47111>=c||47113<=c&&47139>=c||47141<=c&&47167>=c||47169<=c&&47195>=c||47197<=c&&47223>=c||47225<=c&&47251>=c||47253<=c&&47279>=c||47281<=c&&47307>=c||47309<=c&&47335>=c||47337<=c&&47363>=c||47365<=c&&47391>=c||47393<=c&&47419>=c||47421<=c&&47447>= c||47449<=c&&47475>=c||47477<=c&&47503>=c||47505<=c&&47531>=c||47533<=c&&47559>=c||47561<=c&&47587>=c||47589<=c&&47615>=c||47617<=c&&47643>=c||47645<=c&&47671>=c||47673<=c&&47699>=c||47701<=c&&47727>=c||47729<=c&&47755>=c||47757<=c&&47783>=c||47785<=c&&47811>=c||47813<=c&&47839>=c||47841<=c&&47867>=c||47869<=c&&47895>=c||47897<=c&&47923>=c||47925<=c&&47951>=c||47953<=c&&47979>=c||47981<=c&&48007>=c||48009<=c&&48035>=c||48037<=c&&48063>=c||48065<=c&&48091>=c||48093<=c&&48119>=c||48121<=c&&48147>=c|| 48149<=c&&48175>=c||48177<=c&&48203>=c||48205<=c&&48231>=c||48233<=c&&48259>=c||48261<=c&&48287>=c||48289<=c&&48315>=c||48317<=c&&48343>=c||48345<=c&&48371>=c||48373<=c&&48399>=c||48401<=c&&48427>=c||48429<=c&&48455>=c||48457<=c&&48483>=c||48485<=c&&48511>=c||48513<=c&&48539>=c||48541<=c&&48567>=c||48569<=c&&48595>=c||48597<=c&&48623>=c||48625<=c&&48651>=c||48653<=c&&48679>=c||48681<=c&&48707>=c||48709<=c&&48735>=c||48737<=c&&48763>=c||48765<=c&&48791>=c||48793<=c&&48819>=c||48821<=c&&48847>=c||48849<= c&&48875>=c||48877<=c&&48903>=c||48905<=c&&48931>=c||48933<=c&&48959>=c||48961<=c&&48987>=c||48989<=c&&49015>=c||49017<=c&&49043>=c||49045<=c&&49071>=c||49073<=c&&49099>=c||49101<=c&&49127>=c||49129<=c&&49155>=c||49157<=c&&49183>=c||49185<=c&&49211>=c||49213<=c&&49239>=c||49241<=c&&49267>=c||49269<=c&&49295>=c||49297<=c&&49323>=c||49325<=c&&49351>=c||49353<=c&&49379>=c||49381<=c&&49407>=c||49409<=c&&49435>=c||49437<=c&&49463>=c||49465<=c&&49491>=c||49493<=c&&49519>=c||49521<=c&&49547>=c||49549<=c&& 49575>=c||49577<=c&&49603>=c||49605<=c&&49631>=c||49633<=c&&49659>=c||49661<=c&&49687>=c||49689<=c&&49715>=c||49717<=c&&49743>=c||49745<=c&&49771>=c||49773<=c&&49799>=c||49801<=c&&49827>=c||49829<=c&&49855>=c||49857<=c&&49883>=c||49885<=c&&49911>=c||49913<=c&&49939>=c||49941<=c&&49967>=c||49969<=c&&49995>=c||49997<=c&&50023>=c||50025<=c&&50051>=c||50053<=c&&50079>=c||50081<=c&&50107>=c||50109<=c&&50135>=c||50137<=c&&50163>=c||50165<=c&&50191>=c||50193<=c&&50219>=c||50221<=c&&50247>=c||50249<=c&&50275>= c||50277<=c&&50303>=c||50305<=c&&50331>=c||50333<=c&&50359>=c||50361<=c&&50387>=c||50389<=c&&50415>=c||50417<=c&&50443>=c||50445<=c&&50471>=c||50473<=c&&50499>=c||50501<=c&&50527>=c||50529<=c&&50555>=c||50557<=c&&50583>=c||50585<=c&&50611>=c||50613<=c&&50639>=c||50641<=c&&50667>=c||50669<=c&&50695>=c||50697<=c&&50723>=c||50725<=c&&50751>=c||50753<=c&&50779>=c||50781<=c&&50807>=c||50809<=c&&50835>=c||50837<=c&&50863>=c||50865<=c&&50891>=c||50893<=c&&50919>=c||50921<=c&&50947>=c||50949<=c&&50975>=c|| 50977<=c&&51003>=c||51005<=c&&51031>=c||51033<=c&&51059>=c||51061<=c&&51087>=c||51089<=c&&51115>=c||51117<=c&&51143>=c||51145<=c&&51171>=c||51173<=c&&51199>=c||51201<=c&&51227>=c||51229<=c&&51255>=c||51257<=c&&51283>=c||51285<=c&&51311>=c||51313<=c&&51339>=c||51341<=c&&51367>=c||51369<=c&&51395>=c||51397<=c&&51423>=c||51425<=c&&51451>=c||51453<=c&&51479>=c||51481<=c&&51507>=c||51509<=c&&51535>=c||51537<=c&&51563>=c||51565<=c&&51591>=c||51593<=c&&51619>=c||51621<=c&&51647>=c||51649<=c&&51675>=c||51677<= c&&51703>=c||51705<=c&&51731>=c||51733<=c&&51759>=c||51761<=c&&51787>=c||51789<=c&&51815>=c||51817<=c&&51843>=c||51845<=c&&51871>=c||51873<=c&&51899>=c||51901<=c&&51927>=c||51929<=c&&51955>=c||51957<=c&&51983>=c||51985<=c&&52011>=c||52013<=c&&52039>=c||52041<=c&&52067>=c||52069<=c&&52095>=c||52097<=c&&52123>=c||52125<=c&&52151>=c||52153<=c&&52179>=c||52181<=c&&52207>=c||52209<=c&&52235>=c||52237<=c&&52263>=c||52265<=c&&52291>=c||52293<=c&&52319>=c||52321<=c&&52347>=c||52349<=c&&52375>=c||52377<=c&& 52403>=c||52405<=c&&52431>=c||52433<=c&&52459>=c||52461<=c&&52487>=c||52489<=c&&52515>=c||52517<=c&&52543>=c||52545<=c&&52571>=c||52573<=c&&52599>=c||52601<=c&&52627>=c||52629<=c&&52655>=c||52657<=c&&52683>=c||52685<=c&&52711>=c||52713<=c&&52739>=c||52741<=c&&52767>=c||52769<=c&&52795>=c||52797<=c&&52823>=c||52825<=c&&52851>=c||52853<=c&&52879>=c||52881<=c&&52907>=c||52909<=c&&52935>=c||52937<=c&&52963>=c||52965<=c&&52991>=c||52993<=c&&53019>=c||53021<=c&&53047>=c||53049<=c&&53075>=c||53077<=c&&53103>= c||53105<=c&&53131>=c||53133<=c&&53159>=c||53161<=c&&53187>=c||53189<=c&&53215>=c||53217<=c&&53243>=c||53245<=c&&53271>=c||53273<=c&&53299>=c||53301<=c&&53327>=c||53329<=c&&53355>=c||53357<=c&&53383>=c||53385<=c&&53411>=c||53413<=c&&53439>=c||53441<=c&&53467>=c||53469<=c&&53495>=c||53497<=c&&53523>=c||53525<=c&&53551>=c||53553<=c&&53579>=c||53581<=c&&53607>=c||53609<=c&&53635>=c||53637<=c&&53663>=c||53665<=c&&53691>=c||53693<=c&&53719>=c||53721<=c&&53747>=c||53749<=c&&53775>=c||53777<=c&&53803>=c|| 53805<=c&&53831>=c||53833<=c&&53859>=c||53861<=c&&53887>=c||53889<=c&&53915>=c||53917<=c&&53943>=c||53945<=c&&53971>=c||53973<=c&&53999>=c||54001<=c&&54027>=c||54029<=c&&54055>=c||54057<=c&&54083>=c||54085<=c&&54111>=c||54113<=c&&54139>=c||54141<=c&&54167>=c||54169<=c&&54195>=c||54197<=c&&54223>=c||54225<=c&&54251>=c||54253<=c&&54279>=c||54281<=c&&54307>=c||54309<=c&&54335>=c||54337<=c&&54363>=c||54365<=c&&54391>=c||54393<=c&&54419>=c||54421<=c&&54447>=c||54449<=c&&54475>=c||54477<=c&&54503>=c||54505<= c&&54531>=c||54533<=c&&54559>=c||54561<=c&&54587>=c||54589<=c&&54615>=c||54617<=c&&54643>=c||54645<=c&&54671>=c||54673<=c&&54699>=c||54701<=c&&54727>=c||54729<=c&&54755>=c||54757<=c&&54783>=c||54785<=c&&54811>=c||54813<=c&&54839>=c||54841<=c&&54867>=c||54869<=c&&54895>=c||54897<=c&&54923>=c||54925<=c&&54951>=c||54953<=c&&54979>=c||54981<=c&&55007>=c||55009<=c&&55035>=c||55037<=c&&55063>=c||55065<=c&&55091>=c||55093<=c&&55119>=c||55121<=c&&55147>=c||55149<=c&&55175>=c||55177<=c&&55203>=c?10:9757== c||9977==c||9994<=c&&9997>=c||127877==c||127938<=c&&127940>=c||127943==c||127946<=c&&127948>=c||128066<=c&&128067>=c||128070<=c&&128080>=c||128110==c||128112<=c&&128120>=c||128124==c||128129<=c&&128131>=c||128133<=c&&128135>=c||128170==c||128372<=c&&128373>=c||128378==c||128400==c||128405<=c&&128406>=c||128581<=c&&128583>=c||128587<=c&&128591>=c||128675==c||128692<=c&&128694>=c||128704==c||128716==c||129304<=c&&129308>=c||129310<=c&&129311>=c||129318==c||129328<=c&&129337>=c||129341<=c&&129342>=c|| 129489<=c&&129501>=c?13:127995<=c&&127999>=c?14:8205==c?15:9792==c||9794==c||9877<=c&&9878>=c||9992==c||10084==c||127752==c||127806==c||127859==c||127891==c||127908==c||127912==c||127979==c||127981==c||128139==c||128187<=c&&128188>=c||128295==c||128300==c||128488==c||128640==c||128658==c?16:128102<=c&&128105>=c?17:11}this.oJ=function(c,e){void 0===e&&(e=0);if(0>e)return 0;if(e>=c.length-1)return c.length;var g=d(a(c,e)),k=[];for(e+=1;e<c.length;e++){var m=c,n=e-1;if(!(55296<=m.charCodeAt(n)&&56319>= m.charCodeAt(n)&&56320<=m.charCodeAt(n+1)&&57343>=m.charCodeAt(n+1))){m=d(a(c,e));if(b(g,k,m))return e;k.push(m)}}return c.length};this.NY=function(c){for(var e=[],g=0,k;(k=this.oJ(c,g))<c.length;)e.push(c.slice(g,k)),g=k;g<c.length&&e.push(c.slice(g));return e};this.rY=function(c){var e=0,g={next:function(){var k;if((k=this.oJ(c,e))<c.length){var m=c.slice(e,k);e=k;return{value:m,done:!1}}return e<c.length?(m=c.slice(e),e=c.length,{value:m,done:!1}):{value:void 0,done:!0}}.bind(this)};"undefined"!== typeof Symbol&&Symbol.iterator&&(g[Symbol.iterator]=function(){return g});return g};this.MX=function(c){for(var e=0,g=0,k;(k=this.oJ(c,g))<c.length;)g=k,e++;g<c.length&&e++;return e};return this};"use strict";function da(a,b,d,c){var e=b[0]-a[0];b=b[1]-a[1];var g=c[0]-d[0],k=c[1]-d[1];if(0===g*b-k*e)return!1;c=(e*(d[1]-a[1])+b*(a[0]-d[0]))/(g*b-k*e);a=(g*(a[1]-d[1])+k*(d[0]-a[0]))/(k*e-g*b);return 0<=c&&1>=c&&0<=a&&1>=a}function fa(a,b,d){return(b[0]-a[0])*(d[1]-a[1])-(d[0]-a[0])*(b[1]-a[1])} var ia=[],ja=[];function ka(a,b){var d=b[0]-a[0];a=b[1]-a[1];return d*d+a*a}function K(a,b){var d=a.length;return a[0>b?b%d+d:b%d]}function oa(a,b,d,c){for(;d<c;d++)a.push(b[d])}var pa=[],qa=[];function ta(a,b,d,c){c=c||[];c.length=0;if(b<d)for(var e=b;e<=d;e++)c.push(a[e]);else{for(e=0;e<=d;e++)c.push(a[e]);for(e=b;e<a.length;e++)c.push(a[e])}return c} function va(a){for(var b=[],d,c,e=[],g=Number.MAX_VALUE,k=0;k<a.length;++k)if(0>fa(K(a,k-1),K(a,k),K(a,k+1)))for(var m=0;m<a.length;++m){a:{c=a;var n=k,q=m;if(0<=fa(K(c,n+1),K(c,n),K(c,q))&&0>=fa(K(c,n-1),K(c,n),K(c,q)))d=!1;else{d=ka(K(c,n),K(c,q));for(var r=0;r!==c.length;++r)if((r+1)%c.length!==n&&r!==n&&0<=fa(K(c,n),K(c,q),K(c,r+1))&&0>=fa(K(c,n),K(c,q),K(c,r))){pa[0]=K(c,n);pa[1]=K(c,q);qa[0]=K(c,r);qa[1]=K(c,r+1);var w=pa;var x=qa;var z=[0,0];var E=w[1][1]-w[0][1];var C=w[0][0]-w[1][0];var G= E*w[0][0]+C*w[0][1];var I=x[1][1]-x[0][1];w=x[0][0]-x[1][0];var J=I*x[0][0]+w*x[0][1];x=E*w-I*C;0>=Math.abs(x-0)||(z[0]=(w*G-C*J)/x,z[1]=(E*J-I*G)/x);C=z;if(ka(K(c,n),C)<d){d=!1;break a}}d=!0}}if(d){d=va(ta(a,k,m,e));c=va(ta(a,m,k,e));for(n=0;n<c.length;n++)d.push(c[n]);d.length<g&&(b=d,g=d.length,b.push([K(a,k),K(a,m)]))}}return b} function wa(a,b){if(0===b.length)return[a];if(b instanceof Array&&b.length&&b[0]instanceof Array&&2===b[0].length&&b[0][0]instanceof Array){a=[a];for(var d=0;d<b.length;d++)for(var c=b[d],e=0;e<a.length;e++){var g=wa(a[e],c);if(g){a.splice(e,1);a.push(g[0],g[1]);break}}return a}c=b;d=a.indexOf(c[0]);e=a.indexOf(c[1]);return-1!==d&&-1!==e?[ta(a,d,e),ta(a,e,d)]:!1} function xa(a,b,d,c){var e=b[1]-a[1];b=a[0]-b[0];a=e*a[0]+b*a[1];var g=c[1]-d[1];c=d[0]-c[0];d=g*d[0]+c*d[1];var k=e*c-g*b;return 0>=Math.abs(k-0)?[0,0]:[(c*a-b*d)/k,(e*d-g*a)/k]} function ya(a,b,d,c,e,g,k){g=g||100;k=k||0;e=e||25;b="undefined"!==typeof b?b:[];d=d||[];c=c||[];var m=[0,0],n=[0,0],q=[0,0],r,w=0,x=0,z=0,E=[],C=[];if(3>a.length)return b;k++;if(k>g)return console.warn("quickDecomp: max level ("+g+") reached."),b;for(var G=0;G<a.length;++G)if(0>fa(K(a,G-1),K(a,G),K(a,G+1))){d.push(a[G]);var I=r=Number.MAX_VALUE;for(var J=0;J<a.length;++J){if(0<fa(K(a,G-1),K(a,G),K(a,J))&&0>=fa(K(a,G-1),K(a,G),K(a,J-1))&&(q=xa(K(a,G-1),K(a,G),K(a,J),K(a,J-1)),0>fa(K(a,G+1),K(a,G), q))){var L=ka(a[G],q);L<r&&(r=L,n=q,x=J)}0<fa(K(a,G+1),K(a,G),K(a,J+1))&&0>=fa(K(a,G+1),K(a,G),K(a,J))&&(q=xa(K(a,G+1),K(a,G),K(a,J),K(a,J+1)),0<fa(K(a,G-1),K(a,G),q)&&(L=ka(a[G],q),L<I&&(I=L,m=q,w=J)))}if(x===(w+1)%a.length)q[0]=(n[0]+m[0])/2,q[1]=(n[1]+m[1])/2,c.push(q),G<w?(oa(E,a,G,w+1),E.push(q),C.push(q),0!==x&&oa(C,a,x,a.length),oa(C,a,0,G+1)):(0!==G&&oa(E,a,G,a.length),oa(E,a,0,w+1),E.push(q),C.push(q),oa(C,a,x,G+1));else{x>w&&(w+=a.length);m=Number.MAX_VALUE;if(w<x)return b;for(J=x;J<=w;++J)if(0<= fa(K(a,G-1),K(a,G),K(a,J))&&0>=fa(K(a,G+1),K(a,G),K(a,J))){L=ka(K(a,G),K(a,J));if(x=L<m)a:{for(x=0;x!==a.length;++x)if(x!==G&&x!==J&&(x+1)%a.length!==G&&(x+1)%a.length!==J&&da(K(a,G),K(a,J),K(a,x),K(a,x+1))){x=!1;break a}x=!0}x&&(m=L,z=J%a.length)}G<z?(oa(E,a,G,z+1),0!==z&&oa(C,a,z,a.length),oa(C,a,0,G+1)):(0!==G&&oa(E,a,G,a.length),oa(E,a,0,z+1),oa(C,a,z,G+1))}E.length<C.length?(ya(E,b,d,c,e,g,k),ya(C,b,d,c,e,g,k)):(ya(C,b,d,c,e,g,k),ya(E,b,d,c,e,g,k));return b}b.push(a);return b} self.Kba={D$:function(a){var b=va(a);return 0<b.length?wa(a,b):[a]},Rba:ya,Iaa:function(a){var b;for(b=0;b<a.length-1;b++)for(var d=0;d<b-1;d++)if(da(a[b],a[b+1],a[d],a[d+1]))return!1;for(b=1;b<a.length-2;b++)if(da(a[0],a[a.length-1],a[b],a[b+1]))return!1;return!0},Wba:function(a,b){for(var d=0,c=a.length-1;3<a.length&&0<=c;--c){var e=K(a,c-1);var g=K(a,c),k=K(a,c+1),m=b;m?(ia[0]=g[0]-e[0],ia[1]=g[1]-e[1],ja[0]=k[0]-g[0],ja[1]=k[1]-g[1],e=Math.acos((ia[0]*ja[0]+ia[1]*ja[1])/(Math.sqrt(ia[0]*ia[0]+ ia[1]*ia[1])*Math.sqrt(ja[0]*ja[0]+ja[1]*ja[1])))<m):e=0===fa(e,g,k);e&&(a.splice(c%a.length,1),d++)}return d},Xba:function(a,b){for(var d=a.length-1;1<=d;--d)for(var c=a[d],e=d-1;0<=e;--e){var g=a[e];Math.abs(c[0]-g[0])<=(b||0)&&Math.abs(c[1]-g[1])<=(b||0)&&a.splice(d,1)}},jba:function(a){for(var b=0,d=1;d<a.length;++d)if(a[d][1]<a[b][1]||a[d][1]===a[b][1]&&a[d][0]>a[b][0])b=d;if(0<fa(K(a,b-1),K(a,b),K(a,b+1)))return!1;b=[];d=a.length;for(var c=0;c!==d;c++)b.push(a.pop());for(c=0;c!==d;c++)a[c]= b[c];return!0}};"use strict";const za=self.B=class{constructor(){throw TypeError("static class can't be instantiated");}};za.jy=!1;za.cJ=!1;za.hardwareConcurrency=navigator.hardwareConcurrency||2;self.Sf={};"use strict";const Aa=self.B; Aa.hL=class{constructor(a){this.fX=a;this.Ha=new Map;a=this.fX;if(a.startsWith("?")||a.startsWith("#"))a=a.substr(1);a=a.split("&");for(const c of a){var b=c;if(b)if(b.includes("=")){var d=b.indexOf("=");a=decodeURIComponent(b.substring(0,d));b=decodeURIComponent(b.substring(d+1));this.Ha.set(a,b)}else this.Ha.set(b,null)}}Qu(a){return this.Ha.has(a)}S(a){a=this.Ha.get(a);return"undefined"===typeof a?null:a}};Aa.WD=new Aa.hL(location.search);Aa.g3=new Aa.hL(location.hash); Aa.WD.Qu("perf")&&(Aa.dJ=!0);Aa.WD.S("mode");"use strict";const M=self.B;M.O={Sd:"(unknown)",Yr:"(unknown)",ke:"(unknown)",mh:"(unknown)",xu:NaN,kh:"(unknown)",Wl:"browser",ID:!0,Sp:!1,wS:!1,AS:!1,AR:async()=>{}};const Ba=new Map([[5,"2000"],[5.1,"XP"],[5.2,"XP"],[6,"Vista"],[6.1,"7"],[6.2,"8"],[6.3,"8.1"],[10,"10"]]);function Ca(a){const b=parseFloat(a),d=Ba.get(b);return d?d:13<=b?"11":"NT "+a}const Da=navigator.userAgent,Ea=navigator.userAgentData; if(Ea&&0<Ea.brands.length){M.O.Sd=Ea.platform;M.O.Sp=Ea.mobile;M.O.ID=!M.O.Sp;const a=new Map([["Google Chrome","Chrome"],["Microsoft Edge","Edge"],["Opera","Opera"],["Opera GX","Opera GX"],["Mozilla Firefox","Firefox"],["Apple Safari","Safari"],["NW.js","NW.js"]]),b=new Map([["Chromium","Chromium"],["Gecko","Gecko"],["WebKit","WebKit"]]);function d(e){let g="",k="",m="",n="";for(const q of e)e=a.get(q.brand),!g&&e&&(g=e,k=q.version),e=b.get(q.brand),!m&&e&&(m=e,n=q.version);g||"Chromium"!==m||(M.O.ke= "Chromium",M.O.mh=n);M.O.ke=g||"(unknown)";M.O.mh=k||"(unknown)";M.O.kh=m||"(unknown)"}d(Ea.brands);let c=!1;M.O.AR=async()=>{if(!c)try{const e=await navigator.userAgentData.getHighEntropyValues(["platformVersion","fullVersionList"]);d(e.fullVersionList);M.O.Yr="Windows"===M.O.Sd?Ca(e.platformVersion):e.platformVersion;c=!0}catch(e){console.warn("Failed to get detailed user agent information: ",e)}}}else{function a(q,r){q=Array.isArray(q)?q:[q];for(const w of q)if(q=w.exec(Da)){r(q);break}}a(/windows\s+nt\s+([\d\.]+)/i, q=>{M.O.Sd="Windows";M.O.Yr=Ca(q[1])});a(/mac\s+os\s+x\s+([\d\._]+)/i,q=>{M.O.Sd="macOS";M.O.Yr=q[1].replace(/_/g,".")});a(/CrOS/,()=>{M.O.Sd="Chrome OS"});a(/linux|openbsd|freebsd|netbsd/i,()=>{M.O.Sd="Linux"});a(/android/i,()=>{M.O.Sd="Android"});a(/android\s+([\d\.]+)/i,q=>{M.O.Sd="Android";M.O.Yr=q[1]});"(unknown)"===M.O.Sd&&(a(/(iphone|ipod|ipad)/i,()=>{M.O.Sd="iOS"}),a([/iphone\s+os\s+([\d\._]+)/i,/ipad[^)]*os\s+([\d\._]+)/i],q=>{M.O.Sd="iOS";M.O.Yr=q[1].replace(/_/g,".")}));const b=/chrome\//i.test(Da), d=/chromium\//i.test(Da),c=/edg\//i.test(Da),e=/OPR\//.test(Da),g=/nwjs/i.test(Da),k=/safari\//i.test(Da),m=/webkit/i.test(Da);c||e||a(/chrome\/([\d\.]+)/i,q=>{M.O.ke="Chrome";M.O.mh=q[1];M.O.kh="Chromium"});a(/edg\/([\d\.]+)/i,q=>{M.O.ke="Edge";M.O.mh=q[1];M.O.kh="Chromium"});a(/OPR\/([\d\.]+)/,q=>{M.O.ke="Opera";M.O.mh=q[1];M.O.kh="Chromium"});a(/chromium\/([\d\.]+)/i,q=>{M.O.ke="Chromium";M.O.mh=q[1];M.O.kh="Chromium"});a(/nwjs\/[0-9.]+/i,q=>{M.O.ke="NW.js";M.O.mh=q[1];M.O.kh="Chromium";M.O.Wl= "nwjs"});a(/firefox\/([\d\.]+)/i,q=>{M.O.ke="Firefox";M.O.mh=q[1];M.O.kh="Gecko"});!k||b||d||c||e||g||(M.O.ke="Safari",M.O.kh="WebKit",a(/version\/([\d\.]+)/i,q=>{M.O.mh=q[1]}),a(/crios\/([\d\.]+)/i,q=>{M.O.ke="Chrome for iOS";M.O.mh=q[1]}),a(/fxios\/([\d\.]+)/i,q=>{M.O.ke="Firefox for iOS";M.O.mh=q[1]}),a(/edgios\/([\d\.]+)/i,q=>{M.O.ke="Edge for iOS";M.O.mh=q[1]}));"(unknown)"===M.O.kh&&m&&(M.O.kh="WebKit");"Android"===M.O.Sd&&"Safari"===M.O.ke&&(M.O.ke="Stock");const n=(new Set(["Windows","macOS", "Linux","Chrome OS"])).has(M.O.Sd)||"nwjs"===M.O.Wl;M.O.ID=n;M.O.Sp=!n}"Chrome"===M.O.ke&&"browser"===M.O.Wl&&/wv\)/.test(Da)&&(M.O.Wl="webview");"nwjs"!==M.O.Wl&&"undefined"!==typeof window&&(window.matchMedia&&window.matchMedia("(display-mode: standalone)").matches||navigator.standalone)&&(M.O.Wl="webapp");M.O.xu=parseFloat(M.O.mh);"macOS"===M.O.Sd&&navigator.maxTouchPoints&&2<navigator.maxTouchPoints&&(M.O.Sd="iOS",M.O.Yr=M.O.mh,M.O.ID=!1,M.O.Sp=!0,M.O.AS=!0);M.O.wS="macOS"===M.O.Sd||"iOS"===M.O.Sd; "use strict";const Fa=new Map,Ga="undefined"!==typeof IDBObjectStore&&"function"===typeof IDBObjectStore.prototype.getAll,Ha="undefined"!==typeof IDBObjectStore&&"function"===typeof IDBObjectStore.prototype.getAllKeys;function Ia(a){return new Promise((b,d)=>{a.onsuccess=()=>b(a.result);a.onerror=()=>d(a.error)})}function Ja(a){return new Promise((b,d)=>{a.oncomplete=()=>b();a.onerror=()=>d(a.error);a.onabort=()=>d(a.error)})}function Ka(a,b){return La(a,b)}function Ma(a,b){return La(a,b,!0)} async function La(a,b,d=!1,c=!0){const e=await Na(a);try{const g=e.transaction(["keyvaluepairs"],d?"readwrite":"readonly");return b(g)}catch(g){if(c&&"InvalidStateError"===g.name)return Fa.delete(a),La(a,b,d,!1);throw g;}}function Na(a){Oa(a);let b=Fa.get(a);b instanceof Promise||(b=Pa(a),Fa.set(a,b),b.catch(()=>Fa.delete(a)));return b} async function Pa(a){Oa(a);const b=indexedDB.open(a,2);b.addEventListener("upgradeneeded",d=>{try{d.target.result.createObjectStore("keyvaluepairs")}catch(c){console.error(`Failed to create objectstore for database ${a}`,c)}});return Ia(b)}function Oa(a){if("string"!==typeof a)throw new TypeError("expected string");} function Qa(a,b){const d=a.objectStore("keyvaluepairs").openCursor();return new Promise(c=>{const e=[];d.onsuccess=g=>{if(g=g.target.result){switch(b){case "entries":e.push([g.key,g.value]);break;case "keys":e.push(g.key);break;case "values":e.push(g.value)}g.continue()}else c(e)}})} class Ra{constructor(a){Oa(a);this.name=a}async ready(){await Na(this.name)}set(a,b){Oa(a);return Ma(this.name,async d=>{var c=d.objectStore("keyvaluepairs").put(b,a);c=Ia(c);d=Ja(d);await Promise.all([d,c])})}get(a){Oa(a);return Ka(this.name,async b=>{var d=b.objectStore("keyvaluepairs").get(a);d=Ia(d);b=Ja(b);[,b]=await Promise.all([b,d]);return b})}delete(a){Oa(a);return Ma(this.name,async b=>{var d=b.objectStore("keyvaluepairs").delete(a);d=Ia(d);b=Ja(b);await Promise.all([b,d])})}clear(){return Ma(this.name, async a=>{var b=a.objectStore("keyvaluepairs").clear();b=Ia(b);a=Ja(a);await Promise.all([a,b])})}keys(){return Ka(this.name,async a=>{if(Ha){var b=a.objectStore("keyvaluepairs").getAllKeys();b=Ia(b)}else b=Qa(a,"keys");a=Ja(a);[,a]=await Promise.all([a,b]);return a})}values(){return Ka(this.name,async a=>{if(Ga){var b=a.objectStore("keyvaluepairs").getAll();b=Ia(b)}else b=Qa(a,"values");a=Ja(a);[,a]=await Promise.all([a,b]);return a})}entries(){return Ka(this.name,async a=>{var b=Qa(a,"entries"); a=Ja(a);[,b]=await Promise.all([a,b]);return b})}}self.NS=Ra;"use strict";const Sa=self.NS,Ta=[/no available storage method found/i,/an attempt was made to break through the security policy of the user agent/i,/the user denied permission to access the database/i,/a mutation operation was attempted on a database that did not allow mutations/i,/idbfactory\.open\(\) called in an invalid security context/i],Ua=new WeakMap;let Va=!1;"undefined"===typeof indexedDB&&(Va=!0,console.warn("Unable to use local storage because indexedDB is not defined")); function Wa(a){throw Error(`"${a}" is not implemented`);}function bb(a){if("function"===typeof a)throw Error("localforage callback API is not implemented; please use the promise API instead");}function cb(a){return"object"===typeof a?new Promise(b=>{const {port1:d,port2:c}=new MessageChannel;c.onmessage=e=>b(e.data);d.postMessage(a)}):Promise.resolve(a)} function db(a){if(!Va)for(const b of Ta)if(a&&b.test(a.message)){console.error("Unable to use local storage, reverting to in-memory store: ",a,a.message);Va=!0;break}}async function eb(a,b){a=Ua.get(a).get(b);a=await cb(a);return"undefined"===typeof a?null:a}async function fb(a,b,d){d=await cb(d);Ua.get(a).set(b,d)} class gb{constructor(a){this.H=a;Ua.set(this,new Map)}async getItem(a,b){bb(b);if(Va)return await eb(this,a);let d;try{d=await this.H.get(a)}catch(c){db(c);if(Va)return await eb(this,a);console.error(`Error reading '${a}' from storage, returning null: `,c);return null}return"undefined"===typeof d?null:d}async setItem(a,b,d){bb(d);"undefined"===typeof b&&(b=null);if(Va)await fb(this,a,b);else try{await this.H.set(a,b)}catch(c){if(db(c),Va)await fb(this,a,b);else throw c;}}async removeItem(a,b){bb(b); if(Va)Ua.get(this).delete(a);else try{await this.H.delete(a)}catch(d){db(d),Va?Ua.get(this).delete(a):console.error(`Error removing '${a}' from storage: `,d)}}async clear(a){bb(a);if(Va)Ua.get(this).clear();else try{await this.H.clear()}catch(b){db(b),Va?Ua.get(this).clear():console.error("Error clearing storage: ",b)}}async keys(a){bb(a);if(Va)return Array.from(Ua.get(this).keys());a=[];try{a=await this.H.keys()}catch(b){db(b);if(Va)return Array.from(Ua.get(this).keys());console.error("Error getting storage keys: ", b)}return a}ready(a){bb(a);return Va?Promise.resolve(!0):this.H.ready()}RI(a){if("object"!==typeof a)throw new TypeError("invalid options object");a=a.name;if("string"!==typeof a)throw new TypeError("invalid store name");a=new Sa(a);return new gb(a)}length(){Wa("localforage.length()")}key(){Wa("localforage.key()")}iterate(){Wa("localforage.iterate()")}supports(){Wa("localforage.supports()")}dropInstance(){Wa("localforage.dropInstance()")}}self.localforage=new gb(new Sa("localforage"));"use strict"; const hb=self.B;hb.wb={};hb.wb.E9=(()=>{try{if("Safari"===hb.O.ke||"undefined"===typeof document)return!1;const a=document.createElement("div");return"undefined"===typeof a.animate?!1:"undefined"!==typeof a.animate([{opacity:"0"},{opacity:"1"}],1E3).reverse}catch(a){return!1}})();hb.wb.O0="undefined"!==typeof HTMLDialogElement;hb.wb.U4=!!self.requestIdleCallback;hb.wb.ImageBitmap=!!self.createImageBitmap;hb.wb.ImageBitmapOptions=!1;hb.wb.jz=!1; if(hb.wb.ImageBitmap){try{self.createImageBitmap(new ImageData(32,32),{premultiplyAlpha:"none"}).then(()=>{hb.wb.ImageBitmapOptions=!0}).catch(()=>{hb.wb.ImageBitmapOptions=!1})}catch(a){hb.wb.ImageBitmapOptions=!1}try{self.createImageBitmap(new ImageData(32,32),{resizeWidth:10,resizeHeight:10}).then(a=>{hb.wb.jz=10===a.width&&10===a.height}).catch(()=>{hb.wb.jz=!1})}catch(a){hb.wb.jz=!1}}hb.wb.P_=!(!navigator.clipboard||!navigator.clipboard.readText||"Firefox"===hb.O.ke); hb.wb.IT=!(!navigator.permissions||!navigator.permissions.query);hb.wb.VJ=!1;hb.wb.IT&&navigator.permissions.query({name:"clipboard-read"}).then(()=>{hb.wb.VJ=!0}).catch(()=>{hb.wb.VJ=!1});hb.wb.g_=!!(navigator.permissions&&navigator.clipboard&&self.ClipboardItem);hb.wb.gL="undefined"!==typeof Proxy;hb.wb.Q0="undefined"===typeof document?!1:"undefined"!==typeof document.createElement("a").download;hb.wb.h1="function"===typeof fetch; hb.wb.a4=!!(self.isSecureContext&&"Opera"!==hb.O.ke&&navigator.storage&&navigator.storage.persist);hb.wb.r8=!!(self.isSecureContext&&navigator.storage&&navigator.storage.estimate);var ib;if("undefined"===typeof document||"iOS"===hb.O.Sd)ib=!1;else{var jb=document.documentElement;ib=!!(jb.requestFullscreen||jb.msRequestFullscreen||jb.mozRequestFullScreen||jb.webkitRequestFullscreen)}hb.wb.r1=ib;hb.wb.S1="undefined"!==typeof self.ImageDecoder;hb.wb.F9=!!self.VideoEncoder;hb.wb.x3=!!self.showOpenFilePicker; hb.wb.I4=!!self.queryLocalFonts;hb.wb.x9=!!navigator.userActivation;hb.wb.UJ=!1;(async()=>{let a;"undefined"===typeof document?a=new OffscreenCanvas(32,32):(a=document.createElement("canvas"),a.width=32,a.height=32);var b=a.getContext("2d");b.fillStyle="blue";b.fillRect(0,0,32,32);b=null;try{a.toBlob?b=await new Promise(d=>a.toBlob(d,"image/webp",1)):a.convertToBlob&&(b=await a.convertToBlob({type:"image/webp",quality:1})),hb.wb.UJ=b&&"image/webp"===b.type}catch(d){hb.wb.UJ=!1}})();"use strict"; const mb=self.B;if(!String.prototype.trimStart){const a=/^[\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF]*/;String.prototype.trimStart=function(){return this.replace(a,"")}} if(!String.prototype.trimEnd){const a=/[\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF]*$/;String.prototype.trimEnd=function(){return this.replace(a,"")}}String.prototype.replaceAll||(String.prototype.replaceAll=function(a,b){return this.replace(new RegExp(mb.yu(a),"g"),b)});Array.prototype.values||(Array.prototype.values=function*(){for(const a of this)yield a}); if(!Array.prototype.flat){function a(b,d){return b.reduce((c,e)=>{0<d&&Array.isArray(e)?Array.prototype.push.apply(c,a(e,d-1)):c.push(e);return c},[])}Array.prototype.flat=function(b=1){return a(this,b)}}Array.prototype.ie||(Array.prototype.ie=function(a){a=Math.trunc(a)||0;0>a&&(a+=this.length);if(!(0>a||a>=this.length))return this[a]});String.prototype.ie||(String.prototype.ie=function(a){a=Math.trunc(a)||0;0>a&&(a+=this.length);if(!(0>a||a>=this.length))return this[a]}); RegExp.escape||(RegExp.escape=function(a){return String(a).replace(/[\\^$*+?.()|[\]{}]/g,"\\$&")});navigator.storage&&!navigator.storage.estimate&&navigator.webkitTemporaryStorage&&navigator.webkitTemporaryStorage.queryUsageAndQuota&&(navigator.storage.estimate=function(){return new Promise((a,b)=>navigator.webkitTemporaryStorage.queryUsageAndQuota((d,c)=>a({usage:d,quota:c}),b))});"undefined"===typeof self.isSecureContext&&(self.isSecureContext="https:"===location.protocol); "undefined"===typeof self.globalThis&&(self.globalThis=self);"use strict";const nb=self.B;self.assert=function(a,b){a||console.error("Assertion failure: "+b+"\n\nStack trace:\n"+nb.Sy())};"use strict";const P=self.B,ob=self.Sf;P.Sn=function(a){return"number"===typeof a};P.Ic=function(a){return P.Sn(a)&&isFinite(a)};P.Bh=function(a){if(!P.Sn(a))throw new TypeError("expected number");};P.nL=function(){}; P.q5=function(a,b,d){if(!P.Sn(a)||isNaN(a)||b>a||d<a)throw new RangeError("number outside of range");};P.c5=function(...a){for(let b of a);};P.we=function(a){if(!P.Ic(a))throw new TypeError("expected finite number");};P.kL=function(){};P.Z4=function(...a){for(let b of a);};P.ki=function(a){return"string"===typeof a};P.le=function(a){if(!P.ki(a))throw new TypeError("expected string");};P.pL=function(){};P.e5=function(...a){for(let b of a);}; P.AK=function(a){return"object"!==typeof a||null===a?!1:(a=Object.getPrototypeOf(a))?a.constructor===Object:null===a};P.D5=function(a){if(!P.AK(a))throw new TypeError("expected simple object");};P.A5=function(a){if(!P.sf(a)&&!P.AK(a))throw new TypeError("expected simple object");};P.zK=function(a){return"object"===typeof a&&null!==a&&!Array.isArray(a)};P.iL=function(a){if(!P.zK(a))throw new TypeError("expected object");};P.oL=function(){};P.d5=function(...a){for(let b of a);}; P.JD=function(a){return P.HE(a,Blob)&&"string"===typeof a.name};P.o5=function(a){if(!P.JD(a))throw new TypeError("expected file");};P.y5=function(){};P.Uj=function(a){return Array.isArray(a)};P.aE=function(a){if(!P.Uj(a))throw new TypeError("expected array");};P.jL=function(){};P.Y4=function(...a){for(let b of a);};P.tS=function(a){return P.Uj(a)?a.length?P.Uj(a[0])?!0:!1:!0:!1}; P.X4=function(a){if(!P.tS(a))throw new TypeError("expected 2d array");for(let b of a)if(!P.Uj(b))throw new TypeError("expected 2d array");};P.r5=function(){};P.KD=function(a){return"function"===typeof a};P.ll=function(a,b){if(!P.KD(a))throw new TypeError("expected function");if(!P.sf(b)&&a!==b)throw new TypeError("expected same function reference");};P.lL=function(){};P.a5=function(...a){for(let b of a);}; P.g5=function(a,...b){if(!P.KD(a))throw new TypeError("expected function");if(!b.length)throw Error("missing comparison functions");for(let d of b)if(!P.sf(d)&&a===d)return;throw new TypeError("expected same function reference");};P.s5=function(...a){if(!P.sf(a))for(let b of a);};P.Rp=function(a,b){return a instanceof b};P.yK=function(a,...b){for(let d of b)if(P.Rp(a,d))return!0;return!1};P.bE=function(a,b){if(!P.Rp(a,b))throw new TypeError("unexpected type");};P.mL=function(){}; P.b5=function(a,...b){for(let d of b);};P.h5=function(a,...b){if(!P.yK(a,...b))throw new TypeError("unexpected type");};P.i5=function(a,...b){if(!P.sf(a)&&!P.yK(a,...b))throw new TypeError("unexpected type");};P.i2=function(a,b){for(let d of a)if(!P.Rp(d,b))return!1;return!0};P.j2=function(a){for(let b of a)if(!P.Ic(b))return!1;return!0};P.j5=function(a){for(let b of a);};P.t5=function(a){if(!P.sf(a))for(let b of a);};P.k5=function(a){for(let b of a);}; P.u5=function(a){if(!P.sf(a))for(let b of a);};P.k2=function(a,b){return P.sf(a)||!P.ki(a.nodeName)?!1:!b||P.zg(a.nodeName,b)};P.l5=function(a,b){if(P.sf(a)||!P.ki(a.nodeName))throw new TypeError("expected DOM node");if(b&&!P.zg(a.nodeName,b))throw new TypeError(`expected DOM '${b}' node`);};P.v5=function(){};P.LD=function(a,b){return P.sf(a)||!P.ki(a.tagName)?!1:!b||P.zg(a.tagName,b)}; P.p5=function(a,b){if(P.sf(a)||!P.ki(a.tagName))throw new TypeError("expected HTML element");if(b&&!P.zg(a.tagName,b))throw new TypeError(`expected HTML '${b}' element`);};P.z5=function(){};P.wK=function(a){return P.LD(a,"img")||P.LD(a,"canvas")||P.LD(a,"video")||"undefined"!==typeof OffscreenCanvas&&a instanceof OffscreenCanvas||"undefined"!==typeof ImageBitmap&&a instanceof ImageBitmap};P.m5=function(a){if(!P.wK(a))throw new TypeError("expected drawable");};P.w5=function(){}; P.xK=function(a){return a instanceof ImageData?!0:P.wK(a)};P.n5=function(a){if(!P.xK(a))throw new TypeError("expected drawable or image data");};P.x5=function(a){if(!P.sf(a)&&!P.xK(a))throw new TypeError("expected drawable or image data");};P.HS=function(a){return"string"===typeof a||P.hz&&a instanceof P.hz||a instanceof P.Gp};P.E5=function(a){if(!P.HS(a))throw new TypeError("expected string-like");};P.B5=function(){};P.f5=function(...a){for(let b of a);}; P.C5=function(){throw Error("must be overridden");};P.z3=function(){throw Error("not yet implemented");};P.m2=function(a,...b){if("undefined"===typeof a)return!1;for(let d of b){if("undefined"===typeof a[d])return!1;a=a[d]}return!0};P.sf=function(a){return"undefined"===typeof a||null===a};P.d_=function(a){let b=a[0].constructor;for(let d of a)if(d.constructor!==b)return!1;return b};P.e_=function(a,b){for(let d of a)if(!(d instanceof b))return!1;return!0};const pb=Object.getPrototypeOf(Uint8Array); P.J2=function(a){return P.Rp(a,pb)};P.F5=function(){};P.D9=function(a){P.aV(a)};P.C9=function(a,...b){if(!P.$U(a,...b))throw new TypeError("unexpected type");};P.$U=function(a,...b){for(const d of b)if(P.HE(a,d))return!0;return!1};P.aV=function(a){if(!P.HE(a,pb))throw new TypeError("unexpected type");};P.HE=function(a,b){for(;a=Object.getPrototypeOf(a);)if(a.constructor.name===b.name)return!0;return!1};ob.Bh=P.Bh;ob.nL=P.nL;ob.we=P.we;ob.kL=P.kL;ob.le=P.le;ob.pL=P.pL;ob.iL=P.iL;ob.oL=P.oL;ob.aE=P.aE; ob.jL=P.jL;ob.ll=P.ll;ob.lL=P.lL;ob.bE=P.bE;ob.mL=P.mL;ob.sf=P.sf;"use strict";const qb=self.B,rb=new Map;qb.Q_=function(a,b){console.log(`%c${a}`,`font-weight: bold; color:${b}`)};qb.K4=function(a,...b){rb.has(a)||rb.set(a,-1);-1===rb.get(a)&&rb.set(a,requestAnimationFrame(()=>{console.log(`%c${a}`,"font-weight: bold",...b);rb.set(a,-1)}))};let sb;qb.l8=function(a){performance.mark(a);sb||(sb=new Map);sb.has(a)||sb.set(a,{current:0,total:0,hP:0,KI:1,toString:function(){return`${a} :: current => ${this.current.toPrecision(3)} :: average => ${this.hP.toPrecision(3)} :: calls => ${this.KI}`}})}; qb.X0=function(a){performance.measure(`measure-${a}`,a);const b=performance.getEntriesByName(`measure-${a}`)[0],d=sb.get(a);d.current=b.duration;d.total+=d.current;d.hP=d.total/d.KI;console.log(d.toString());d.KI++;performance.clearMarks(a);performance.clearMeasures(`measure-${a}`)};qb.Sy=function(){return Error().stack};qb.K0=function(){debugger};qb.q$=function(a,b){return a&&a instanceof b?a:null}; qb.Ul=function(a){return"undefined"===typeof a?"undefined":null===a?"null":"boolean"===typeof a?"<boolean>":qb.Sn(a)?"<number>":qb.ki(a)?"<string>":qb.Uj(a)?"<array>":"symbol"===typeof a?"<"+a.toString()+">":qb.KD(a)?a.name&&"Function"!==a.name?a.name:"<anonymous function>":"object"===typeof a?a.constructor&&a.constructor.name&&"Object"!==a.constructor.name?a.constructor.name:"<anonymous object>":"<unknown>"};qb.getType=function(a){return null===a?"null":Array.isArray(a)?"array":typeof a}; qb.range=function*(a,b){if(!isFinite(Math.abs(a-b)))throw Error("Invalid parameters");if(a>b)for(--a;a>=b;a--)yield a;else for(;a<b;a++)yield a};let tb=new Map,ub=new Map,vb=new WeakMap,wb=new WeakMap;qb.Mr={};const xb=new Set(["then","splice"]);function yb(a){console.warn("[Defence] "+a+" @",qb.Sy())} qb.Mr.get=function(a,b){b in a||"symbol"===typeof b||xb.has(b)||yb(`Accessed missing property '${b}' from defended object '${qb.Ul(a)}', returning undefined`);wb.has(a)&&"symbol"!==typeof b&&!xb.has(b)&&yb(`Accessed property '${b}' on a released object '${qb.Ul(a)}'\nObject was originally released at: ${wb.get(a)})\nCall stack at access: `);return a[b]}; qb.Mr.set=function(a,b,d){b in a||tb.has(a)||yb(`Set non-existent property '${b}' to '${d}' on defended object '${qb.Ul(a)}'`);let c=qb.getType(a[b]),e=qb.getType(d);"null"===c||"null"===e||("undefined"===c||"undefined"===e?0:c===e)||tb.has(a)||yb(`Set '${qb.getType(a[b])}' property '${b}' to type '${qb.getType(d)}' on defended object '${qb.Ul(a)}'`);wb.has(a)&&yb(`Set property '${b}' on a released object '${qb.Ul(a)}'\nObject was originally released at: ${wb.get(a)})\nCall stack at access: `);a[b]= d;return!0};qb.Mr.deleteProperty=function(a,b){throw new ReferenceError(`Cannot delete property '${b}' from defended object '${qb.Ul(a)}'`);};qb.Mr.defineProperty=function(a,b){throw new ReferenceError(`Cannot define property '${b}' on defended object '${qb.Ul(a)}'`);};qb.Mr.M$=function(a){throw new ReferenceError(`Cannot enumerate defended object '${qb.Ul(a)}'`);};let Ab=-1; function Bb(){Ab=-1;if(0<tb.size||0<ub.size){let a=[...(new Set([...tb.keys()].map(b=>qb.Ul(b))))].join();console.warn(`An object derived from DefendedBase was not protected with debugDefend(). This will disable some checks. See the coding guidelines! Possible affected class names: ${a}`);tb.clear();ub.clear()}} qb.ta=class{constructor(){if(qb.cJ&&qb.wb.gL){var a=new.target;a=Object.create(a.prototype);var b=new Proxy(a,qb.Mr);tb.set(a,b);ub.set(b,a);vb.set(b,a);-1===Ab&&(Ab=requestAnimationFrame(Bb));return b}}};qb.OX=function(a){if(qb.cJ&&qb.wb.gL&&a instanceof qb.ta){if(!ub.has(a))return a;let b=ub.get(a);ub.delete(a);tb.delete(b);return a}return qb.jy?Object.seal(a):a}; qb.A=function(a,...b){let d;try{d=new a(...b)}catch(g){throw ub.clear(),tb.clear(),g;}if(qb.cJ){b=d;var c=new Set;for(e in b)c.add(e);var e=c;if(b=Cb.get(a)){c=[];for(let g of b.values())e.has(g)?e.delete(g):c.push(g);qb.Sl(c,[...e]);c.length&&console.warn(`[Defence] '${qb.Ul(a)}' constructor creates inconsistent properties: ${c.join(", ")}`)}else Cb.set(a,e)}return qb.OX(d)};qb.j=function(a){(a=vb.get(a))&&wb.set(a,qb.Sy())};qb.$n=function(){let a=vb.get(void 0);return a?!!wb.get(a):!1};let Cb=new Map; qb.X3=class{constructor(a){this.Oa="";a&&this.start(a)}start(a){qb.dJ&&(this.Oa=a,performance.mark(this.Oa+"-Start"))}end(){qb.dJ&&(performance.mark(this.Oa+"-End"),performance.measure(this.Oa,this.Oa+"-Start",this.Oa+"-End"))}next(a){qb.dJ&&(this.end(),this.Oa=a,performance.mark(this.Oa+"-Start"))}};"use strict";const Q=self.B,Db=2*Math.PI,Eb=Math.PI/180,Fb=180/Math.PI; Q.wrap=function(a,b,d){a=Math.floor(a);b=Math.floor(b);d=Math.floor(d);const c=d-b;return 0===c?d:a<b?(a=d-(b-a)%c,a===d?0:a):b+(a-b)%c};Q.xY=function(a,b,d,c){return(a-b)*(c-0)/(d-b)};Q.normalize=function(a,b,d){return(a-b)/(d-b)};Q.$=function(a,b,d){return a<b?b:a>d?d:a};Q.Yd=function(a){a%=Db;0>a&&(a+=Db);return a};Q.Ca=function(a){return a*Eb};Q.Zd=function(a){return a*Fb};Q.An=function(a,b,d,c){return Math.hypot(d-a,c-b)};Q.pP=function(a,b,d,c){a=d-a;b=c-b;return a*a+b*b}; Q.hu=function(a,b,d,c){return Math.atan2(c-b,d-a)};Q.xr=function(a,b){if(a===b)return 0;a=Math.sin(a)*Math.sin(b)+Math.cos(a)*Math.cos(b);return 1<=a?0:-1>=a?Math.PI:Math.acos(a)};Q.II=function(a,b,d){let c=Math.sin(a),e=Math.cos(a),g=Math.sin(b),k=Math.cos(b);return Math.acos(c*g+e*k)>d?0<e*g-c*k?Q.Yd(a+d):Q.Yd(a-d):Q.Yd(b)};Q.kf=function(a,b){return 0>=Math.cos(a)*Math.sin(b)-Math.sin(a)*Math.cos(b)};Q.HI=function(a,b,d,c=0){let e=Q.xr(a,b);c*=Db;return Q.kf(b,a)?Q.Yd(a+(e+c)*d):Q.Yd(a-(e+c)*d)}; Q.AX=function(a,b,d,c=0){const e=Q.xr(a,b);c*=Db;return Q.kf(b,a)?Q.Yd(a+(e+c)*d):Q.Yd(a+(Db-e+c)*d)};Q.zX=function(a,b,d,c=0){const e=Q.xr(a,b);c*=Db;return Q.kf(b,a)?Q.Yd(a-(-Db+e-c)*d):Q.Yd(a-(e+c)*d)};Q.eP=function(a,b){const d=Q.xr(a,b);return Q.kf(a,b)?Q.Yd(b-d):Q.Yd(b+d)};Q.je=function(a,b,d){return a+d*(b-a)};Q.WC=function(a,b,d){return a===b?0:(d-a)/(b-a)};Q.TP=function(a,b,d,c){return Q.je(0,c,Q.WC(a,b,d))};Q.RC=function(a,b,d,c){return Q.je(Q.je(a,b,c),Q.je(b,d,c),c)}; Q.oP=function(a,b,d,c,e){return Q.je(Q.RC(a,b,d,e),Q.RC(b,d,c,e),e)};Q.mP=function(a,b,d){return(a+b+(a-b)*Math.cos(d*Math.PI))/2};Q.Gj=function(a){return 0<a&&0===(a-1&a)};Q.pu=function(a){--a;for(let b=1;32>b;b<<=1)a|=a>>b;return a+1};Q.ica=function(a,b){return Math.round(a*b)/b};Q.V$=function(a,b){return Math.floor(a*b)/b};Q.VP=function(a){var b=Math.max(Math.floor(6),0);b=Math.pow(10,b);return Math.round(a*b)/b}; Q.toFixed=function(a,b){a=a.toFixed(b);for(b=a.length-1;0<=b&&"0"===a.charAt(b);--b);0<=b&&"."===a.charAt(b)&&--b;return 0>b?a:a.substr(0,b+1)};Q.HT=function(a,b,d){return Q.$(a,0,255)|Q.$(b,0,255)<<8|Q.$(d,0,255)<<16};Q.yz=function(a,b,d,c){a=Q.$(Math.floor(1024*a),-8192,8191);b=Q.$(Math.floor(1024*b),-8192,8191);d=Q.$(Math.floor(1024*d),-8192,8191);c=Q.$(Math.floor(1023*c),0,1023);0>a&&(a+=16384);0>b&&(b+=16384);0>d&&(d+=16384);return-(274877906944*a+16777216*b+1024*d+c)}; Q.bL=function(a,b,d){return Q.yz(a,b,d,1)};Q.cz=function(a){if(0<=a)return(a&255)/255;a=Math.floor(-a/274877906944);8191<a&&(a-=16384);return a/1024};Q.az=function(a){if(0<=a)return((a&65280)>>8)/255;a=Math.floor(-a%274877906944/16777216);8191<a&&(a-=16384);return a/1024};Q.Ry=function(a){if(0<=a)return((a&16711680)>>16)/255;a=Math.floor(-a%16777216/1024);8191<a&&(a-=16384);return a/1024};Q.wR=function(a){return 0===a&&0>1/a?0:0<=a?1:Math.floor(-a%1024)/1023}; Q.eY=function(a,b){a=Math.floor(a);for(b=Math.floor(b);0!==b;){let d=b;b=a%b;a=d}return a};const Gb=[[3,2],[4,3],[5,4],[5,3],[6,5],[14,9],[16,9],[16,10],[21,9]];Q.iaa=function(a,b){a=Math.floor(a);b=Math.floor(b);if(a===b)return[1,1];for(var d of Gb){let c=a/d[0]*d[1];if(1>Math.abs(b-c))return d.slice(0);c=a/d[1]*d[0];if(1>Math.abs(b-c))return[d[1],d[0]]}d=Q.eY(a,b);return[a/d,b/d]}; Q.oca=function(a,b,d,c,e,g,k,m){var n=Math.min(a,d),q=Math.max(e,k);if(Math.max(a,d)<Math.min(e,k)||n>q)return!1;n=Math.min(b,c);q=Math.max(g,m);if(Math.max(b,c)<Math.min(g,m)||n>q)return!1;n=e-a+k-d;q=g-b+m-c;a=d-a;b=c-b;e=k-e;g=m-g;m=Math.abs(b*e-g*a);return Math.abs(e*q-g*n)>m?!1:Math.abs(a*q-b*n)<=m}; Q.Gn=function(a,b,d,c,e,g,k,m,n,q,r,w){const x=Math.max(n,r);if(g<Math.min(n,r)||e>x)return!1;e=Math.max(q,w);if(m<Math.min(q,w)||k>e)return!1;k=n-a+r-d;m=q-b+w-c;a=d-a;b=c-b;n=r-n;q=w-q;w=Math.abs(b*n-q*a);return Math.abs(n*m-q*k)>w?!1:Math.abs(a*m-b*k)<=w}; Q.SC=function(a,b,d,c,e){const g=Math.min(a,d),k=Math.max(a,d),m=Math.min(b,c),n=Math.max(b,c),q=e.Qb,r=e.Rb,w=e.Wc,x=e.Xc,z=e.Qc,E=e.Rc,C=e.Oc;e=e.Pc;return Q.Gn(a,b,d,c,g,k,m,n,q,r,w,x)||Q.Gn(a,b,d,c,g,k,m,n,w,x,z,E)||Q.Gn(a,b,d,c,g,k,m,n,z,E,C,e)||Q.Gn(a,b,d,c,g,k,m,n,C,e,q,r)}; Q.nca=function(a,b,d,c,e){const g=Math.min(a,d),k=Math.max(a,d),m=Math.min(b,c),n=Math.max(b,c);let q=0;for(let r=e.length-4;q<=r;q+=2)if(Q.Gn(a,b,d,c,g,k,m,n,e[q],e[q+1],e[q+2],e[q+3]))return!0;return Q.Gn(a,b,d,c,g,k,m,n,e[q],e[q+1],e[0],e[1])};Q.GY=function(a,b,d,c,e,g,k,m){d-=a;g=m-g;const n=d*g-(c-b)*(k-e);if(0===n)return 2;c=((b-c)*(k-a)+d*(m-b))/n;return 0<c&&1.000001>c?(g*(k-a)+(e-k)*(m-b))/n:2};Q.wy=function(a,b,d,c,e,g,k,m,n){const q=(k-e)*n;n*=m-g;return Q.GY(a,b,d,c,e-q,g-n,k+q,m+n)}; Q.nY=function(a,b,d,c,e,g,k,m){e-=d;g-=c;k-=d;m-=c;a-=d;d=b-c;b=e*e+g*g;c=e*k+g*m;e=e*a+g*d;g=k*k+m*m;k=k*a+m*d;m=1/(b*g-c*c);g=(g*e-c*k)*m;e=(b*k-c*e)*m;return 0<=g&&0<=e&&1>=g+e};Q.UY=function(a,b,d,c,e,g,k,m){e-=d;g-=c;k-=d;m-=c;a-=d;const n=b-c;b=e*e+g*g;c=e*k+g*m;d=k*k+m*m;e=a*e+n*g;g=a*k+n*m;k=b*d-c*c;m=(d*e-c*g)/k;e=(b*g-c*e)/k;return[1-m-e,m,e]};Q.TY=function(a,b,d,c,e,g,k,m,n,q,r,w){return[a*c+b*k+d*q,a*e+b*m+d*r,a*g+b*n+d*w]};"use strict";const S=self.B;let Hb=null,Ib=""; if("undefined"!==typeof document){Hb=document;const a=document.querySelector("base");if(Ib=a&&a.hasAttribute("href")?a.getAttribute("href"):"")Ib.startsWith("/")&&(Ib=Ib.substr(1)),Ib.endsWith("/")||(Ib+="/")}S.y1=function(){return Ib};S.z1=function(){if(!Hb)return"";const a=Hb.location;return S.IR(a.origin+a.pathname)+Ib};S.IR=function(a){if(!a.length||a.endsWith("/")||a.endsWith("\\"))return a;const b=Math.max(a.lastIndexOf("/"),a.lastIndexOf("\\"));return-1===b?"":a.substr(0,b+1)}; S.E1=function(a){if(!a.length)return a;if(a.endsWith("/")||a.endsWith("\\"))return"";const b=Math.max(a.lastIndexOf("/"),a.lastIndexOf("\\"));return-1===b?a:a.substr(b+1)};S.FR=function(a){let b=a.lastIndexOf(".");return 1>b?"":a.substr(b)};S.C6=function(a,b){const d=a.lastIndexOf(".");return-1===d?a+"."+b:a.substr(0,d+1)+b};S.Yy=function(a){let b=a.lastIndexOf(".");return 1>b?a:a.substr(0,b)};S.ZS=function(a){return a.replace(/\\/g,"/")};S.o2=function(a,b){return b===(a?S.FR(a).slice(1):"")}; S.i1=function(a,b){let d,c;S.JD(a)&&(d=S.Yy(a.name));S.ki(a)&&(d=S.Yy(a));S.JD(b)&&(c=S.Yy(b.name));S.ki(b)&&(c=S.Yy(b));return d===c}; S.U3=function(a){a=S.ZS(a);let b=/^\w:\//.exec(a);b?(b=b[0],a=a.slice(3),"/"!==a[0]&&(a="/"+a)):b="";a=a.replace(/\/{2,}/g,"/");1<a.length&&"/"===a.slice(-1)&&(a=a.slice(0,-1));var d=a.lastIndexOf("/")+1;let c="",e=a,g="";0<d&&(c=a.slice(0,d),e=a.slice(d));a=e;d=e.lastIndexOf(".");0<d&&(g=e.slice(d),a=e.slice(0,-g.length));return{dir:c,a$:e,name:a,root:b,ext:g,faa:b+c+e}};S.GE=function(a,b){return new Promise(d=>{self.setTimeout(d,a,b)})}; S.xca=function(a){try{a()}catch(b){S.jy&&console.warn("Swallowed exception: ",b)}};S.tba=function(){};S.zg=function(a,b){return"string"!==typeof a||"string"!==typeof b?!1:a===b||a.normalize().toLowerCase()===b.normalize().toLowerCase()};S.N$=function(a,b){return"string"!==typeof a||"string"!==typeof b?!1:a===b?!0:a.normalize()===b.normalize()}; S.VY=function(a,b){var d=0;a[d++]=b[0];a[d++]=b[1];a[d++]=b[2];a[d++]=b[3];a[d++]=b[4];a[d++]=b[5];a[d++]=b[6];a[d++]=b[7];a[d++]=b[8];a[d++]=b[9];a[d++]=b[10];a[d++]=b[11];a[d++]=b[12];a[d++]=b[13];a[d++]=b[14];a[d]=b[15]};S.Ue=function(a,b){a.length=b};S.D=function(a){a&&0!==a.length&&S.Ue(a,0)};S.HX=function(a){if(a){for(let b=0;b<a.length;b++)S.Ue(a[b],0);S.Ue(a,0)}};S.JC=function(a,b,d){b|=0;var c=a.length;if(!(b<=c))for(;c<b;++c)a.push(d)}; S.UP=function(a){var b=4;const d=a.length;b<d?S.Ue(a,b):b>d&&S.JC(a,b,"0")};S.Md=function(a,b){S.D(a);S.Sl(a,b)};S.Sl=function(a,b){if(1E4>b.length)a.push(...b);else for(let d=0,c=b.length;d<c;++d)a.push(b[d])};S.DX=function(a,b){b=Math.floor(b);if(!(0>b||b>=a.length)){for(var d=a.length-1;b<d;++b)a[b]=a[b+1];S.Ue(a,d)}};S.Tl=function(a,b){b=a.indexOf(b);0<=b&&a.splice(b,1)};S.Z9=function(a,b){let d=a.length;if(b.length!==d)return!1;for(let c=0;c<d;++c)if(a[c]!==b[c])return!1;return!0}; S.CX=function(a,b){let d=[],c=0;for(let e=0,g=a.length;e<g;++e){let k=a[e];b(k)?d.push(k):(a[c]=k,++c)}S.Ue(a,c);return d};S.ai=function(a,b){const d=a.length;let c=0;for(let e=0,g=a.length;e<g;++e){let k=a[e];b.has(k)||(a[c++]=k)}S.Ue(a,c);return d-c};S.iY=function(a,b){return a!==Math.floor(a)?!1:0<=a&&a<b.length};S.Vca=function(a,b){if(!S.iY(a,b))throw new RangeError("array index out of bounds");};S.CC=function(a){return a.slice()}; S.PX=function(a,b){let d=[];for(let c of a)if(S.zK(c)){a=b(c);if(!a)throw Error("missing clone");if(a.constructor!==c.constructor)throw Error("object is not a clone");d.push(a)}else S.Uj(c)?d.push(S.PX(c,b)):d.push(c);return d};S.s$=function(a){let b=[];for(let d of a)b.push(d.slice());return b};S.oba=function(a,b){return new Set([...a,...b])};S.pba=function(a,b){for(const d of b)a.add(d);return a};S.first=function(a){for(let b of a)return b;return null};S.xor=function(a,b){return!a!==!b}; S.compare=function(a,b,d){switch(b){case 0:return a===d;case 1:return a!==d;case 2:return a<d;case 3:return a<=d;case 4:return a>d;case 5:return a>=d;default:return!1}};S.raa=function(a){for(let b in a)if(a.hasOwnProperty(b))return!0;return!1};S.TT=function(a,b){return a.length?new Promise((d,c)=>{const e=[];let g=0,k=!1;for(let m=0,n=a.length;m<n;++m)e.push(void 0),a[m].then(q=>{k||(e[m]=q,++g,g===a.length?d(e):b(g,a.length))}).catch(q=>{k=!0;c(q)})}):Promise.resolve([])};let Jb=[];S.vZ=function(a){Jb.push(a)}; S.C1=function(){let a=0;for(let b of Jb){let d=b();a+=d}return Math.floor(a)};let Kb=1;const Lb=new Map,Mb=new MessageChannel;Mb.port2.onmessage=function(a){a=a.data;const b=Lb.get(a);Lb.delete(a);b&&b(performance.now())};S.$D=function(a){const b=Kb++;Lb.set(b,a);Mb.port1.postMessage(b);return b};S.QQ=function(a){Lb.delete(a)};S.RT=S.$D;S.ZU=function(){return new Promise(a=>S.RT(a))};const Nb=new Set; S.W4=function(a){const b=self.requestAnimationFrame(async d=>{await S.ZU();Nb.has(b)&&(Nb.delete(b),a(d))});Nb.add(b);return b};S.H_=function(a){Nb.has(a)&&(self.cancelAnimationFrame(a),Nb.delete(a))};"use strict";const Ob=self.B;Ob.mz=function(a){return/^(?:[a-z\-]+:)?\/\//.test(a)||"data:"===a.substr(0,5)||"blob:"===a.substr(0,5)};Ob.qz=function(a){return!Ob.mz(a)};Ob.GU=function(a){if(!a.ok)throw Error(`fetch '${a.url}' response returned ${a.status} ${a.statusText}`);}; Ob.Py=function(a){return fetch(a,void 0).then(b=>{Ob.GU(b);return b})};Ob.Bu=function(a){return Ob.Py(a).then(b=>b.text())};Ob.gK=function(a){return Ob.Py(a).then(b=>b.json())};Ob.Zl=function(a){return Ob.Py(a).then(b=>b.blob())};Ob.Au=function(a){return Ob.Py(a).then(b=>b.arrayBuffer())};Ob.qR=function(a){return new Promise((b,d)=>{const c=new Image;c.onload=()=>b(c);c.onerror=e=>d(e);c.src=a})}; Ob.JQ=function(a){return"function"===typeof a.arrayBuffer?a.arrayBuffer():new Promise((b,d)=>{const c=new FileReader;c.onload=()=>b(c.result);c.onerror=()=>d(c.error);c.readAsArrayBuffer(a)})};Ob.SJ=function(a){return"function"===typeof a.text?a.text():new Promise((b,d)=>{const c=new FileReader;c.onload=()=>b(c.result);c.onerror=()=>d(c.error);c.readAsText(a)})};Ob.t_=function(a){return Ob.SJ(a).then(b=>JSON.parse(b))}; Ob.KQ=async function(a){a=URL.createObjectURL(a);try{const b=await Ob.qR(a);URL.revokeObjectURL(a);a="";return b}finally{a&&URL.revokeObjectURL(a)}};Ob.Mj=function(a,b){if("undefined"!==typeof document&&"function"===typeof document.createElement){const d=document.createElement("canvas");d.width=a;d.height=b;return d}return new OffscreenCanvas(a,b)}; Ob.iD=function(a,b,d){"number"!==typeof d&&(d=1);b=b||"image/png";d=Ob.$(d,0,1);if(a.toBlob)return new Promise(c=>a.toBlob(c,b,d));if(a.convertToBlob)return a.convertToBlob({type:b,quality:d});throw Error("could not convert canvas to blob");};Ob.aK=function(a,b,d){const c=Ob.Mj(a.width,a.height);c.getContext("2d").drawImage(a,0,0);return Ob.iD(c,b,d)}; Ob.R1=function(a,b,d){if(Ob.wb.ImageBitmapOptions)return createImageBitmap(a,{premultiplyAlpha:"none"}).then(e=>Ob.aK(e,b,d));if(Ob.wb.ImageBitmap)return createImageBitmap(a).then(e=>Ob.aK(e,b,d));const c=Ob.Mj(a.width,a.height);c.getContext("2d").putImageData(a,0,0);return Ob.iD(c,b,d)};Ob.gR=function(a,b){a.clear();for(const d of b)a.add(d)};Ob.k3=function(a){const b=Object.create(null);for(const [d,c]of a.entries())b[d]=c;return b}; Ob.A3=function(a,b){b.clear();for(const [d,c]of Object.entries(a))b.set(d,c)};Ob.CE=function Pb(a){if("object"===typeof a&&null!==a){if(a instanceof Set)return{_c3type_:"set",data:[...a].map(c=>Pb(c))};if(a instanceof Map)return{_c3type_:"map",data:[...a].map(c=>[c[0],Pb(c[1])])};const d=Object.create(null);for(const [c,e]of Object.entries(a))d[c]=Pb(e);return d}return a}; Ob.qD=function Qb(a){if("object"===typeof a&null!==a){if("set"===a._c3type_)return new Set(a.data.map(c=>Qb(c)));if("map"===a._c3type_)return new Map(a.data.map(c=>[c[0],Qb(c[1])]));const d=Object.create(null);for(const [c,e]of Object.entries(a))d[c]=Qb(e);return d}return a};Ob.PQ=function(a){if(a.startsWith("--"))return a;let b="",d=!1;for(const c of a)"-"===c?d=!0:d?(b+=c.toUpperCase(),d=!1):b+=c;return b};Ob.Rn=function(a){return"object"===typeof a&&"function"===typeof a.next}; Ob.li=function(a,b){const d=[];if("function"===typeof b)for(var c=0;c<a;++c)d.push(b());else for(c=0;c<a;++c)d.push(b);return d};"use strict";const Rb=self.B,Sb=/([0-9.]+),([0-9.]+)%?,([0-9.]+)%?/i,Tb=/([0-9.]+),([0-9.]+)%?,([0-9.]+)%?,([0-9.])/i;function Ub(a,b,d){0>d&&(d+=1);1<d&&--d;return d<1/6?a+6*(b-a)*d:.5>d?b:d<2/3?a+(b-a)*(2/3-d)*6:a}function Vb(a,b,d,c,e){a.hb=+b;a.lb=+d;a.gb=+c;a.Ya=+e;a.$()}function Wb(a,b,d,c){a.hb=+b;a.lb=+d;a.gb=+c;a.$()} function Xb(a,b,d,c){a.hb+=+b;a.lb+=+d;a.gb+=+c;a.Ya+=0;a.$()}function Yb(a,b){a.hb=b.hb;a.lb=b.lb;a.gb=b.gb}function Zb(a,b){a.hb=Rb.$(+b,0,1)}function $b(a,b){a.lb=Rb.$(+b,0,1)}function ac(a,b){a.gb=Rb.$(+b,0,1)}function bc(a,b){a.Ya=Rb.$(+b,0,1)}function cc(a,b){return a.hb===b.hb&&a.lb===b.lb&&a.gb===b.gb}function dc(a,b,d,c,e){return a.hb===b&&a.lb===d&&a.gb===c&&a.Ya===e}function ec(a){a.hb*=a.Ya;a.lb*=a.Ya;a.gb*=a.Ya} function fc(a,b){a.hb=Rb.cz(b);a.lb=Rb.az(b);a.gb=Rb.Ry(b);a.Ya=Rb.wR(b)}function gc(a,b){if("string"===typeof b){b=b.replace(/^rgb\(|\)|%/,"");var d=b.split(",");if(!(3>d.length)){b=parseInt(d[0].trim(),10)/255;var c=parseInt(d[1].trim(),10)/255;d=parseInt(d[2].trim(),10)/255;isFinite(b)&&Zb(a,b);isFinite(c)&&$b(a,c);isFinite(d)&&ac(a,d);bc(a,1)}}} function hc(a,b){if("string"===typeof b){b=b.replace(/^rgb\(|\)|%/,"");var d=b.split(",");if(!(3>d.length)){b=parseInt(d[0].trim(),10)/100;var c=parseInt(d[1].trim(),10)/100;d=parseInt(d[2].trim(),10)/100;isFinite(b)&&Zb(a,b);isFinite(c)&&$b(a,c);isFinite(d)&&ac(a,d);bc(a,1)}}} function ic(a,b){if("string"===typeof b){b=b.replace(/^rgba\(|\)|%/,"");var d=b.split(",");if(!(4>d.length)){b=parseInt(d[0].trim(),10)/255;var c=parseInt(d[1].trim(),10)/255,e=parseInt(d[2].trim(),10)/255;d=parseFloat(d[3].trim());isFinite(b)&&Zb(a,b);isFinite(c)&&$b(a,c);isFinite(e)&&ac(a,e);isFinite(d)&&bc(a,d)}}} function nc(a,b){if("string"===typeof b){b=b.replace(/^rgba\(|\)|%/,"");var d=b.split(",");if(!(4>d.length)){b=parseInt(d[0].trim(),10)/100;var c=parseInt(d[1].trim(),10)/100,e=parseInt(d[2].trim(),10)/100;d=parseFloat(d[3].trim());isFinite(b)&&Zb(a,b);isFinite(c)&&$b(a,c);isFinite(e)&&ac(a,e);isFinite(d)&&bc(a,d)}}} function oc(a){var b=pc;if("string"===typeof a)if(a=a.replace(/\s+/,""),a.includes(","))if(a.startsWith("rgb("))a.includes("%")?hc(b,a):gc(b,a);else if(a.startsWith("rgba("))a.includes("%")?nc(b,a):ic(b,a);else if(a.startsWith("hsl(")||a.startsWith("hsla(")){var d=a.replace(/ |hsl|hsla|\(|\)|;/gi,"");a=Sb.exec(d);d=Tb.exec(d);a&&4===a.length?qc(b,+a[1],+a[2],+a[3],1):d&&5===d.length&&qc(b,+a[1],+a[2],+a[3],+a[4])}else d=a.split(","),a.includes("%")?3===d.length?hc(b,a):4===d.length&&nc(b,a):3===d.length? gc(b,a):4===d.length&&ic(b,a);else a:{var c=a;if("string"===typeof c){c=c.trim();"#"===c.charAt(0)&&(c=c.substr(1));if(3===c.length)a=parseInt(c[0],16)/15,d=parseInt(c[1],16)/15,c=parseInt(c[2],16)/15;else if(6===c.length)a=parseInt(c.substr(0,2),16)/255,d=parseInt(c.substr(2,2),16)/255,c=parseInt(c.substr(4,2),16)/255;else break a;isFinite(a)&&Zb(b,a);isFinite(d)&&$b(b,d);isFinite(c)&&ac(b,c);bc(b,1)}}} function qc(a,b,d,c,e){b%=360;d=Rb.$(d,0,100);c=Rb.$(c,0,100);e=Rb.$(e,0,1);b/=360;d/=100;c/=100;if(0===d)c=d=b=c;else{const g=.5>c?c*(1+d):c+d-c*d,k=2*c-g;c=Ub(k,g,b+1/3);d=Ub(k,g,b);b=Ub(k,g,b-1/3)}Zb(a,c);$b(a,d);ac(a,b);bc(a,e)}function rc(a,b){!Array.isArray(b)||3>b.length||(a.hb=b[0],a.lb=b[1],a.gb=b[2],a.Ya=4<=b.length?b[3]:1)}function sc(a,b){return Rb.$(Math.max(a,b)-Math.min(a,b),0,1)} Rb.kb=class{constructor(a,b,d,c){this.Ya=this.gb=this.lb=this.hb=0;a instanceof Rb.kb?this.set(a):Vb(this,a||0,b||0,d||0,c||0)}set(a){this.hb=a.hb;this.lb=a.lb;this.gb=a.gb;this.Ya=a.Ya;return this}xa(a){return this.set(a)}add(a){this.hb+=a.hb;this.lb+=a.lb;this.gb+=a.gb;this.Ya+=a.Ya;this.$()}clone(){return Rb.A(Rb.kb,this.hb,this.lb,this.gb,this.Ya)}toArray(){return[this.hb,this.lb,this.gb,this.Ya]}jh(a,b){a[b++]=this.hb;a[b++]=this.lb;a[b++]=this.gb;a[b]=this.Ya}Ld(a){return this.hb===a.hb&&this.lb=== a.lb&&this.gb===a.gb&&this.Ya===a.Ya}multiply(a){this.hb*=a.hb;this.lb*=a.lb;this.gb*=a.gb;this.Ya*=a.Ya}$(){this.hb=Rb.$(this.hb,0,1);this.lb=Rb.$(this.lb,0,1);this.gb=Rb.$(this.gb,0,1);this.Ya=Rb.$(this.Ya,0,1);return this}toJSON(){return[this.hb,this.lb,this.gb,this.Ya]}set r(a){Zb(this,a)}get r(){return this.hb}set b(a){ac(this,a)}get b(){return this.gb}set a(a){bc(this,a)}get a(){return this.Ya}};Rb.kb.I9=Object.freeze(Rb.A(Rb.kb,1,1,1,1));Rb.kb.p_=Object.freeze(Rb.A(Rb.kb,0,0,0,1)); Rb.kb.W8=Object.freeze(Rb.A(Rb.kb,0,0,0,0));"use strict";const tc=self.B; tc.fq=class{constructor(a,b){this.R=this.X=0;a instanceof tc.fq?this.xa(a):this.set(a||0,b||0)}set(a,b){this.X=+a;this.R=+b}xa(a){this.X=a.X;this.R=a.R}Ld(a){return this.X===a.X&&this.R===a.R}toArray(){return[this.X,this.R]}jh(a,b){a[b++]=this.X;a[b]=this.R}offset(a,b){this.X+=+a;this.R+=+b}scale(a,b){this.X*=a;this.R*=b}Dj(a,b){this.X/=a;this.R/=b}round(){this.X=Math.round(this.X);this.R=Math.round(this.R)}floor(){this.X=Math.floor(this.X);this.R=Math.floor(this.R)}ceil(){this.X=Math.ceil(this.X); this.R=Math.ceil(this.R)}angle(){return tc.hu(0,0,this.X,this.R)}length(){return Math.hypot(this.X,this.R)}rotate(a){if(0!==a){var b=Math.sin(a);a=Math.cos(a);const d=this.X*a-this.R*b;this.R=this.R*a+this.X*b;this.X=d}}move(a,b){0!==b&&(this.X+=Math.cos(a)*b,this.R+=Math.sin(a)*b)}normalize(){const a=this.length();0!==a&&1!==a&&(this.X/=a,this.R/=a)}$(a,b){this.X=tc.$(this.X,a,b);this.R=tc.$(this.R,a,b)}};"use strict";const uc=self.B; function vc(a,b,d,c,e){b=+b;d=+d;a.Y=b;a.V=d;a.ma=b+ +c;a.ka=d+ +e}function wc(a,b,d){b=+b;d=+d;a.Y-=b;a.V-=d;a.ma+=b;a.ka+=d}function xc(a){a.V=1-a.V;a.ka=1-a.ka}function yc(){var a=zc;a.Y=Math.floor(a.Y);a.V=Math.floor(a.V);a.ma=Math.ceil(a.ma);a.ka=Math.ceil(a.ka)}function Ac(a,b){return!(b.ma<a.Y||b.ka<a.V||b.Y>a.ma||b.V>a.ka)} uc.Rect=class{constructor(a,b,d,c){this.ka=this.ma=this.V=this.Y=0;a instanceof uc.Rect?this.xa(a):this.set(a||0,b||0,d||0,c||0)}set(a,b,d,c){this.Y=+a;this.V=+b;this.ma=+d;this.ka=+c}xa(a){this.Y=+a.Y;this.V=+a.V;this.ma=+a.ma;this.ka=+a.ka}clone(){return new uc.Rect(this.Y,this.V,this.ma,this.ka)}Ld(a){return this.Y===a.Y&&this.V===a.V&&this.ma===a.ma&&this.ka===a.ka}toArray(){return[this.Y,this.V,this.ma,this.ka]}jh(a,b){a[b++]=this.Y;a[b++]=this.V;a[b++]=this.ma;a[b]=this.ka}width(){return this.ma- this.Y}height(){return this.ka-this.V}Cn(){return(this.Y+this.ma)/2}Dn(){return(this.V+this.ka)/2}offset(a,b){a=+a;b=+b;this.Y+=a;this.V+=b;this.ma+=a;this.ka+=b}offsetLeft(a){this.Y+=+a}offsetTop(a){this.V+=+a}multiply(a,b){this.Y*=a;this.V*=b;this.ma*=a;this.ka*=b}Dj(a,b){this.Y/=a;this.V/=b;this.ma/=a;this.ka/=b}round(){this.Y=Math.round(this.Y);this.V=Math.round(this.V);this.ma=Math.round(this.ma);this.ka=Math.round(this.ka)}floor(){this.Y=Math.floor(this.Y);this.V=Math.floor(this.V);this.ma= Math.floor(this.ma);this.ka=Math.floor(this.ka)}ceil(){this.Y=Math.ceil(this.Y);this.V=Math.ceil(this.V);this.ma=Math.ceil(this.ma);this.ka=Math.ceil(this.ka)}$(a,b,d,c){this.Y<a&&(this.Y=+a);this.V<b&&(this.V=+b);this.ma>d&&(this.ma=+d);this.ka>c&&(this.ka=+c)}normalize(){if(this.Y>this.ma){var a=this.Y;this.Y=this.ma;this.ma=a}this.V>this.ka&&(a=this.V,this.V=this.ka,this.ka=a)}fh(a,b){return a>=this.Y&&a<=this.ma&&b>=this.V&&b<=this.ka}};"use strict";const Bc=self.B; function Cc(a,b,d,c){const e=b.Y*d,g=b.V*d,k=b.ma*d;d*=b.ka;const m=b.Y*c,n=b.V*c,q=b.ma*c;b=b.ka*c;a.Qb=m-g;a.Rb=n+e;a.Wc=q-g;a.Xc=n+k;a.Qc=q-d;a.Rc=b+k;a.Oc=m-d;a.Pc=b+e}function Dc(a,b,d){0===d?a.$k(b):Cc(a,b,Math.sin(d),Math.cos(d))}function Ec(a,b){var d=b.Cn(),c=b.Dn();if(a.fh(d,c))return!0;d=a.Cn();c=a.Dn();if(b.fh(d,c))return!0;d=a.Qb;c=a.Rb;const e=a.Wc,g=a.Xc,k=a.Qc,m=a.Rc,n=a.Oc;a=a.Pc;return Bc.SC(d,c,e,g,b)||Bc.SC(e,g,k,m,b)||Bc.SC(k,m,n,a,b)||Bc.SC(n,a,d,c,b)} Bc.jd=class{constructor(a,b,d,c,e,g,k,m){this.Pc=this.Oc=this.Rc=this.Qc=this.Xc=this.Wc=this.Rb=this.Qb=0;a instanceof Bc.jd?this.xa(a):this.set(a||0,b||0,d||0,c||0,e||0,g||0,k||0,m||0)}set(a,b,d,c,e,g,k,m){this.Qb=+a;this.Rb=+b;this.Wc=+d;this.Xc=+c;this.Qc=+e;this.Rc=+g;this.Oc=+k;this.Pc=+m}xa(a){this.Qb=a.Qb;this.Rb=a.Rb;this.Wc=a.Wc;this.Xc=a.Xc;this.Qc=a.Qc;this.Rc=a.Rc;this.Oc=a.Oc;this.Pc=a.Pc}Ld(a){return this.Qb===a.Qb&&this.Rb===a.Rb&&this.Wc===a.Wc&&this.Xc===a.Xc&&this.Qc===a.Qc&&this.Rc=== a.Rc&&this.Oc===a.Oc&&this.Pc===a.Pc}toArray(){return[this.Qb,this.Rb,this.Wc,this.Xc,this.Qc,this.Rc,this.Oc,this.Pc]}jh(a,b){a[b++]=this.Qb;a[b++]=this.Rb;a[b++]=this.Wc;a[b++]=this.Xc;a[b++]=this.Qc;a[b++]=this.Rc;a[b++]=this.Oc;a[b]=this.Pc}offset(a,b){a=+a;b=+b;this.Qb+=a;this.Rb+=b;this.Wc+=a;this.Xc+=b;this.Qc+=a;this.Rc+=b;this.Oc+=a;this.Pc+=b}round(){this.Qb=Math.round(this.Qb);this.Rb=Math.round(this.Rb);this.Wc=Math.round(this.Wc);this.Xc=Math.round(this.Xc);this.Qc=Math.round(this.Qc); this.Rc=Math.round(this.Rc);this.Oc=Math.round(this.Oc);this.Pc=Math.round(this.Pc)}floor(){this.Qb=Math.floor(this.Qb);this.Rb=Math.floor(this.Rb);this.Wc=Math.floor(this.Wc);this.Xc=Math.floor(this.Xc);this.Qc=Math.floor(this.Qc);this.Rc=Math.floor(this.Rc);this.Oc=Math.floor(this.Oc);this.Pc=Math.floor(this.Pc)}ceil(){this.Qb=Math.ceil(this.Qb);this.Rb=Math.ceil(this.Rb);this.Wc=Math.ceil(this.Wc);this.Xc=Math.ceil(this.Xc);this.Qc=Math.ceil(this.Qc);this.Rc=Math.ceil(this.Rc);this.Oc=Math.ceil(this.Oc); this.Pc=Math.ceil(this.Pc)}$k(a){this.Qb=a.Y;this.Rb=a.V;this.Wc=a.ma;this.Xc=a.V;this.Qc=a.ma;this.Rc=a.ka;this.Oc=a.Y;this.Pc=a.ka}$I(a){a.set(Math.min(this.Qb,this.Wc,this.Qc,this.Oc),Math.min(this.Rb,this.Xc,this.Rc,this.Pc),Math.max(this.Qb,this.Wc,this.Qc,this.Oc),Math.max(this.Rb,this.Xc,this.Rc,this.Pc))}fh(a,b){var d=this.Wc-this.Qb,c=this.Xc-this.Rb;const e=this.Qc-this.Qb,g=this.Rc-this.Rb;a-=this.Qb;b-=this.Rb;var k=d*d+c*c;let m=d*e+c*g;c=d*a+c*b;const n=e*e+g*g,q=e*a+g*b;let r=1/(k* n-m*m);d=(n*c-m*q)*r;k=(k*q-m*c)*r;if(0<=d&&0<k&&1>d+k)return!0;d=this.Oc-this.Qb;c=this.Pc-this.Rb;k=d*d+c*c;m=d*e+c*g;c=d*a+c*b;r=1/(k*n-m*m);d=(n*c-m*q)*r;k=(k*q-m*c)*r;return 0<=d&&0<k&&1>d+k}Cn(){return(this.Qb+this.Wc+this.Qc+this.Oc)/4}Dn(){return(this.Rb+this.Xc+this.Rc+this.Pc)/4}};"use strict";const Fc=self.B,Gc=[0,0,1,0,1,1,0,1],Hc=Fc.A(Fc.jd);function Ic(a,b){a.Wd.length===b.length?a.Wd.set(b):a.Wd=Float64Array.from(b);a.Qm=!0} function Jc(a,b,d,c){Hc.xa(b);Hc.offset(d,c);Ic(a,Hc.toArray());a.Qm=!0}function Kc(a,b,d,c,e){const g=a.Wd;for(let k=0,m=g.length;k<m;k+=2){const n=k+1,q=g[k]*b,r=g[n]*d;g[k]=q*e-r*c;g[n]=r*e+q*c}a.Qm=!0} function Lc(a,b,d,c){const e=b.Wd,g=a.Wd;if(a.fh(e[0]+d,e[1]+c)||b.fh(g[0]-d,g[1]-c))return!0;for(let m=0,n=g.length;m<n;m+=2){var k=(m+2)%n;a=g[m];b=g[m+1];const q=g[k];k=g[k+1];let r,w,x,z;a<q?(r=a,x=q):(r=q,x=a);b<k?(w=b,z=k):(w=k,z=b);for(let E=0,C=e.length;E<C;E+=2){const G=(E+2)%C;if(Fc.Gn(a,b,q,k,r,x,w,z,e[E]+d,e[E+1]+c,e[G]+d,e[G+1]+c))return!0}}return!1} Fc.Jp=class extends Fc.ta{constructor(a,b=!0){super();a||(a=Gc);this.Wd=Float64Array.from(a);this.dA=new Fc.Rect;this.Qm=!0;this.Ud=b}j(){}xa(a){Ic(this,a.Wd)}$k(a){let b=this.Wd;8!==b.length&&(this.Wd=b=new Float64Array(8));b[0]=a.Y-NaN;b[1]=a.V-NaN;b[2]=a.ma-NaN;b[3]=a.V-NaN;b[4]=a.ma-NaN;b[5]=a.ka-NaN;b[6]=a.Y-NaN;b[7]=a.ka-NaN;this.dA.xa(a);this.dA.offset(NaN,NaN);this.Qm=!1}transform(a,b,d){let c=0,e=1;0!==d&&(c=Math.sin(d),e=Math.cos(d));Kc(this,a,b,c,e)}offset(a,b){const d=this.Wd;for(let c= 0,e=d.length;c<e;c+=2)d[c]+=a,d[c+1]+=b}fh(a,b){const d=this.Wd;if(a===d[0]&&b===d[1])return!0;if(this.Qm){var c=this.Wd,e=c[0],g=c[1],k=e,m=g;for(let J=0,L=c.length;J<L;J+=2){var n=c[J],q=c[J+1];n<e&&(e=n);n>k&&(k=n);q<g&&(g=q);q>m&&(m=q)}this.dA.set(e,g,k,m);this.Qm=!1}k=this.dA;c=k.Y-110;e=k.V-101;g=k.ma+131;k=k.ka+120;let r,w,x,z,E;c<a?(m=c,q=a):(m=a,q=c);e<b?(n=e,r=b):(n=b,r=e);g<a?(w=g,z=a):(w=a,z=g);k<b?(x=k,E=b):(x=b,E=k);let C=0,G=0;for(let J=0,L=d.length;J<L;J+=2){var I=(J+2)%L;const ea= d[J],Y=d[J+1],na=d[I];I=d[I+1];Fc.Gn(c,e,a,b,m,q,n,r,ea,Y,na,I)&&++C;Fc.Gn(g,k,a,b,w,z,x,E,ea,Y,na,I)&&++G}return 1===C%2||1===G%2}Pb(){return this.Ud}};"use strict";const Mc=self.B;function Nc(a,b){a=a.xl;const d=a.get(b);d&&(d.clear(),a.delete(b));for(const [c,e]of a.entries())e.delete(b)&&0===e.size&&a.delete(c)} Mc.Zu=class extends Mc.ta{constructor(a){super();this.xl=new Map;if(a)for(const [b,d,c]of a)this.Set(b,d,c)}j(){this.Nd();this.xl=null}Nd(){const a=this.xl;for(const b of a.values())b.clear();a.clear()}Set(a,b,d){const c=this.xl;let e=c.get(a);e||(e=new Map,c.set(a,e));e.set(b,d)}S(a,b){return(a=this.xl.get(a))?a.get(b):a}Qu(a){return(a=this.xl.get(a))?a.has(void 0):!1}Jn(a,b){const d=this.xl,c=d.get(a);if(!c)return!1;(b=c.delete(b))&&0===c.size&&d.delete(a);return b}Mn(){let a=0;for(const b of this.xl.values())a+= b.size;return a}*values(){for(const a of this.xl.values())yield*a.values()}*entries(){for(const [a,b]of this.xl.entries())for(const [d,c]of b.entries())yield[a,d,c]}};"use strict";const Oc=self.B;function Pc(a){if(a.bx){const b=a.zd;Oc.D(b);for(const d of a.fp)b.push(d);a.bx=!1}return a.zd} Oc.cD=class extends Oc.ta{constructor(){super();this.fp=new Set;this.zd=[];this.bx=!1}j(){this.Nd()}Nd(){this.fp.clear();Oc.D(this.zd);this.bx=!1}$c(a){this.fp.has(a)||(this.fp.add(a),this.bx||this.zd.push(a))}Qu(a){return this.fp.has(a)}Jn(a){this.fp.delete(a)&&(this.bx=!0)}Mn(){return this.fp.size}Qn(){return 0===this.fp.size}};"use strict";const Qc=self.B,Rc=new Map,Sc=new Map,Tc=new Map,Uc=new Map,Vc=new Map,Wc=new Map,Yc=new Map;Yc.set("linear","noease");Yc.set("default","noease"); self.Yl=class a{constructor(){}static rK(){this.pv();const b=[...Uc.keys()];b.sort();return[...Sc.keys()].concat(b)}static BS(b){this.pv();return[...Sc.keys()].includes(b)}static wV(b){const d=Yc.get(b);if(d)return Rc.get(d);if(a.BS(b))return Rc.get(b);if(Vc.has(b))return Vc.get(b)}static dm(b){this.pv();const d=a.wV(b);return d?d:Uc.get(b)}static am(b){this.pv();return this.rK()[b]}static pv(){0===Rc.size&&(this.Xb("default",()=>{}),this.Xb("noease",[{x:0,y:0,sax:.336,say:0,eax:0,eay:0,se:!0,ee:!1}, {x:1,y:1,sax:0,say:0,eax:-.336,eay:0,se:!1,ee:!0}],!0),this.Xb("easeinsine",[{x:0,y:0,sax:.485,say:0,eax:0,eay:0,se:!0,ee:!1},{x:1,y:1,sax:0,say:0,eax:-.038,eay:0,se:!1,ee:!0}]),this.Xb("easeoutsine",[{x:0,y:0,sax:.038,say:0,eax:0,eay:0,se:!0,ee:!1},{x:1,y:1,sax:0,say:0,eax:-.485,eay:0,se:!1,ee:!0}]),this.Xb("easeinoutsine",[{x:0,y:0,sax:.336,say:0,eax:0,eay:0,se:!0,ee:!1},{x:1,y:1,sax:0,say:0,eax:-.336,eay:0,se:!1,ee:!0}]),this.Xb("easeinelastic",[{x:0,y:0,sax:.018,say:0,eax:0,eay:0,se:!0,ee:!1}, {x:.116,y:.002,sax:.025,say:0,eax:-.025,eay:0,se:!0,ee:!0},{x:.266,y:-.005,sax:.024,say:0,eax:-.021,eay:0,se:!0,ee:!0},{x:.416,y:.016,sax:.024,say:0,eax:-.026,eay:0,se:!0,ee:!0},{x:.566,y:-.045,sax:.061,say:0,eax:-.025,eay:0,se:!0,ee:!0},{x:.716,y:.132,sax:.072,say:-.004,eax:-.045,eay:0,se:!0,ee:!0},{x:.866,y:-.373,sax:.06,say:0,eax:-.049,eay:-.002,se:!0,ee:!0},{x:1,y:1,sax:0,say:0,eax:-.038,eay:-.263,se:!1,ee:!0}]),this.Xb("easeoutelastic",[{x:0,y:0,sax:.038,say:.263,eax:0,eay:0,se:!0,ee:!1},{x:.136, y:1.373,sax:.049,say:.002,eax:-.06,eay:0,se:!0,ee:!0},{x:.286,y:.868,sax:.045,say:0,eax:-.072,eay:.004,se:!0,ee:!0},{x:.436,y:1.045,sax:.025,say:0,eax:-.061,eay:0,se:!0,ee:!0},{x:.586,y:.984,sax:.026,say:0,eax:-.024,eay:0,se:!0,ee:!0},{x:.736,y:1.005,sax:.021,say:0,eax:-.024,eay:0,se:!0,ee:!0},{x:.886,y:.998,sax:.025,say:0,eax:-.025,eay:0,se:!0,ee:!0},{x:1,y:1,sax:0,say:0,eax:-.018,eay:0,se:!1,ee:!0}]),this.Xb("easeinoutelastic",[{x:0,y:0,sax:.025,say:0,eax:0,eay:0,se:!0,ee:!1},{x:.067,y:.001,sax:.025, say:0,eax:-.025,eay:0,se:!0,ee:!0},{x:.18,y:-.005,sax:.025,say:0,eax:-.025,eay:0,se:!0,ee:!0},{x:.292,y:.025,sax:.053,say:0,eax:-.025,eay:0,se:!0,ee:!0},{x:.405,y:-.118,sax:.069,say:0,eax:-.027,eay:0,se:!0,ee:!0},{x:.597,y:1.118,sax:.027,say:0,eax:-.069,eay:0,se:!0,ee:!0},{x:.71,y:.975,sax:.025,say:0,eax:-.053,eay:0,se:!0,ee:!0},{x:.822,y:1.005,sax:.025,say:0,eax:-.025,eay:0,se:!0,ee:!0},{x:.935,y:.999,sax:.025,say:0,eax:-.025,eay:0,se:!0,ee:!0},{x:1,y:1,sax:0,say:0,eax:-.025,eay:0,se:!1,ee:!0}]), this.Xb("easeinback",[{x:0,y:0,sax:.35,say:0,eax:0,eay:0,se:!0,ee:!1},{x:1,y:1,sax:0,say:0,eax:-.34,eay:-1.579,se:!1,ee:!0}]),this.Xb("easeoutback",[{x:0,y:0,sax:.34,say:1.579,eax:0,eay:0,se:!0,ee:!1},{x:1,y:1,sax:0,say:0,eax:-.35,eay:0,se:!1,ee:!0}]),this.Xb("easeinoutback",[{x:0,y:0,sax:.035,say:0,eax:0,eay:0,se:!0,ee:!1},{x:.242,y:-.1,sax:.258,say:0,eax:-.025,eay:0,se:!0,ee:!0},{x:.76,y:1.1,sax:.025,say:0,eax:-.26,eay:0,se:!0,ee:!0},{x:1,y:1,sax:0,say:0,eax:-.035,eay:0,se:!1,ee:!0}]),this.Xb("easeinbounce", [{x:0,y:0,sax:.033,say:.025,eax:0,eay:0,se:!0,ee:!1},{x:.092,y:0,sax:.026,say:.078,eax:-.033,eay:.025,se:!0,ee:!0},{x:.274,y:0,sax:.097,say:.319,eax:-.026,eay:.078,se:!0,ee:!0},{x:.637,y:0,sax:.105,say:.625,eax:-.097,eay:.319,se:!0,ee:!0},{x:1,y:1,sax:0,say:0,eax:-.125,eay:-.004,se:!1,ee:!0}]),this.Xb("easeoutbounce",[{x:0,y:0,sax:.125,say:.004,eax:0,eay:0,se:!0,ee:!1},{x:.365,y:1,sax:.097,say:-.319,eax:-.105,eay:-.625,se:!0,ee:!0},{x:.728,y:1,sax:.026,say:-.078,eax:-.097,eay:-.319,se:!0,ee:!0},{x:.91, y:1,sax:.033,say:-.025,eax:-.026,eay:-.078,se:!0,ee:!0},{x:1,y:1,sax:0,say:0,eax:-.033,eay:-.025,se:!1,ee:!0}]),this.Xb("easeinoutbounce",[{x:0,y:0,sax:.01,say:.006,eax:0,eay:0,se:!0,ee:!1},{x:.046,y:0,sax:.021,say:.038,eax:-.01,eay:.006,se:!0,ee:!0},{x:.137,y:0,sax:.059,say:.158,eax:-.021,eay:.038,se:!0,ee:!0},{x:.319,y:0,sax:.117,say:.744,eax:-.059,eay:.158,se:!0,ee:!0},{x:.683,y:1,sax:.059,say:-.158,eax:-.117,eay:-.744,se:!0,ee:!0},{x:.865,y:1,sax:.021,say:-.038,eax:-.059,eay:-.158,se:!0,ee:!0}, {x:.956,y:1,sax:.01,say:-.006,eax:-.021,eay:-.038,se:!0,ee:!0},{x:1,y:1,sax:0,say:0,eax:-.01,eay:-.006,se:!1,ee:!0}]),this.Xb("easeincubic",[{x:0,y:0,sax:.75,say:0,eax:0,eay:0,se:!0,ee:!1},{x:1,y:1,sax:0,say:0,eax:-.138,eay:-.321,se:!1,ee:!0}]),this.Xb("easeoutcubic",[{x:0,y:0,sax:.138,say:.321,eax:0,eay:0,se:!0,ee:!1},{x:1,y:1,sax:0,say:0,eax:-.75,eay:0,se:!1,ee:!0}]),this.Xb("easeinoutcubic",[{x:0,y:0,sax:.285,say:0,eax:0,eay:0,se:!0,ee:!1},{x:.5,y:.5,sax:.081,say:.272,eax:-.081,eay:-.272,se:!0, ee:!0},{x:1,y:1,sax:0,say:0,eax:-.285,eay:0,se:!1,ee:!0}]),this.Xb("easeinquad",[{x:0,y:0,sax:.4,say:0,eax:0,eay:0,se:!0,ee:!1},{x:1,y:1,sax:0,say:0,eax:-.178,eay:-.392,se:!1,ee:!0}]),this.Xb("easeoutquad",[{x:0,y:0,sax:.178,say:.392,eax:0,eay:0,se:!0,ee:!1},{x:1,y:1,sax:0,say:0,eax:-.4,eay:0,se:!1,ee:!0}]),this.Xb("easeinoutquad",[{x:0,y:0,sax:.25,say:0,eax:0,eay:0,se:!0,ee:!1},{x:.5,y:.5,sax:.03,say:.065,eax:-.03,eay:-.065,se:!0,ee:!0},{x:1,y:1,sax:0,say:0,eax:-.25,eay:0,se:!1,ee:!0}]),this.Xb("easeinquart", [{x:0,y:0,sax:.264,say:.079,eax:0,eay:0,se:!0,ee:!1},{x:1,y:1,sax:0,say:0,eax:-.329,eay:-1.287,se:!1,ee:!0}]),this.Xb("easeoutquart",[{x:0,y:0,sax:.329,say:1.287,eax:0,eay:0,se:!0,ee:!1},{x:1,y:1,sax:0,say:0,eax:-.264,eay:-.079,se:!1,ee:!0}]),this.Xb("easeinoutquart",[{x:0,y:0,sax:.765,say:.03,eax:0,eay:0,se:!0,ee:!1},{x:1,y:1,sax:0,say:0,eax:-.765,eay:-.03,se:!1,ee:!0}]),this.Xb("easeinquint",[{x:0,y:0,sax:.6,say:0,eax:0,eay:0,se:!0,ee:!1},{x:1,y:1,sax:0,say:0,eax:-.2,eay:-1,se:!1,ee:!0}]),this.Xb("easeoutquint", [{x:0,y:0,sax:.2,say:1,eax:0,eay:0,se:!0,ee:!1},{x:1,y:1,sax:0,say:0,eax:-.6,eay:0,se:!1,ee:!0}]),this.Xb("easeinoutquint",[{eax:0,eay:0,ee:!1,sax:.84,say:0,se:!0,x:0,y:0},{eax:-.84,eay:0,ee:!0,sax:0,say:0,se:!1,x:1,y:1}]),this.Xb("easeincirc",[{x:0,y:0,sax:.25,say:0,eax:0,eay:0,se:!0,ee:!1},{x:1,y:1,sax:0,say:0,eax:-.024,eay:-.808,se:!1,ee:!0}]),this.Xb("easeoutcirc",[{x:0,y:0,sax:.024,say:.808,eax:0,eay:0,se:!0,ee:!1},{x:1,y:1,sax:0,say:0,eax:-.25,eay:0,se:!1,ee:!0}]),this.Xb("easeinoutcirc",[{x:0, y:0,sax:.125,say:0,eax:0,eay:0,se:!0,ee:!1},{x:.5,y:.5,sax:.02,say:.428,eax:-.02,eay:-.428,se:!0,ee:!0},{x:1,y:1,sax:0,say:0,eax:-.125,eay:0,se:!1,ee:!0}]),this.Xb("easeinexpo",[{x:0,y:0,sax:.66,say:0,eax:0,eay:0,se:!0,ee:!1},{x:1,y:1,sax:0,say:0,eax:-.14,eay:-1,se:!1,ee:!0}]),this.Xb("easeoutexpo",[{x:0,y:0,sax:.14,say:1,eax:0,eay:0,se:!0,ee:!1},{x:1,y:1,sax:0,say:0,eax:-.66,eay:0,se:!1,ee:!0}]),this.Xb("easeinoutexpo",[{eax:0,eay:0,ee:!1,sax:.345,say:0,se:!0,x:0,y:0},{eax:-.06,eay:-.5,ee:!0,sax:.06, say:.5,se:!0,x:.5,y:.5},{eax:-.335,eay:0,ee:!0,sax:0,say:0,se:!1,x:1,y:1}]),this.PL("cubicbezier",this.iR),this.PL("spline",this.jR))}static Xb(b,d,c=!1){if("function"===typeof d)a.ov(b,d,"predefined");else if(Qc.Uj(d))if(self.MQ){const e=Qc.A(self.MQ,b,c);e.I6(d);a.ov(b,(g,k,m,n)=>e.Ga(g,k,m,n),"predefined");Wc.set(b,e)}else{const e=Qc.A(Qc.DE,[b,d.map(g=>[g.x,g.y,g.sax,g.say,g.eax,g.eay,g.se,g.ee])],!1);e.GN=!!c;a.ov(b,(g,k,m,n)=>e.Ga(g,k,m,n),"predefined")}else throw Error("unexpected arguments"); }static PL(b,d){a.ov(b,d,"private")}static sQ(b,d){this.pv();a.ov(b,d,"custom",void 0)}static ov(b,d,c,e){switch(c){case "predefined":Rc.set(b,d);Sc.set(b,d);break;case "custom":e?(Tc.has(e)||Tc.set(e,new Map),Tc.get(e).set(b,d)):Uc.set(b,d);break;case "private":Rc.set(b,d);Vc.set(b,d);break;default:throw Error("unexpected ease mode");}}static YS(b,d,c,e){return c*b/e+d}static iR(b,d,c,e,g){return d+3*b*(c-d)+3*b**2*(d+e-2*c)+b**3*(g-d+3*c-3*e)}static jR(b,d,c,e,g,k,m,n,q,r){if(e===g&&k===m)c=b;else{if(1== b)b=1;else{for(var w=0,x=1,z=r[x];10!=x&&z<=b;)x++,z=r[x],w+=.1;x--;z=r[x];r=w+(b-z)/(r[x+1]-z)*.1;n=n-3*k+3*e-d;k=3*k-6*e+3*d;d=3*(e-d);e=3*n*r*r+2*k*r+d;if(0!==e)if(.01<=e)for(w=0;4>w;++w)r-=(((n*r+k)*r+d)*r-b)/(3*n*r*r+2*k*r+d);else{e=w;w+=.1;x=0;let E;do r=e+(w-e)/2,z=((n*r+k)*r+d)*r-b,0<z?w=r:e=r,z=1E-7<Math.abs(z),E=10>++x;while(z&&E)}b=r}c=(((q-3*m+3*g-c)*b+(3*m-6*g+3*c))*b+3*(g-c))*b}return c}static xR(b,d,c,e){const g=[];e=e-3*c+3*d-b;c=3*c-6*d+3*b;b=3*(d-b);for(let k=0;11>k;++k)d=.1*k,g.push(((e* d+c)*d+b)*d);return g}};"use strict";const Zc=self.B;Zc.E4=class{constructor(a){this.rN=[];this.Oa=a||""}j(){this.Nd();this.rN=null}qa(){return this.Oa}Nd(){Zc.HX(this.rN)}};"use strict";let $c=0; self.B.tL=class{constructor(a,b){this.g=a;this.$a=b;this.ge=$c++;ad(this.g,"runtime","screen-reader-text",{type:"create",id:this.ge,text:this.$a})}j(){ad(this.g,"runtime","screen-reader-text",{type:"release",id:this.ge});this.g=null;this.$a="";this.ge=-1}aj(a){this.$a!==a&&(this.$a=a,ad(this.g,"runtime","screen-reader-text",{type:"update",id:this.ge,text:this.$a}))}};"use strict"; self.B.Event=class{constructor(a,b){this.type=a;this.cancelable=!!b;this.jY=this.xJ=this.defaultPrevented=!1}preventDefault(){if(!this.cancelable)throw Error(`event '${this.type}' is not cancelable`);this.defaultPrevented=!0}stopPropagation(){if(!this.cancelable)throw Error(`event '${this.type}' cannot be stopped`);if(this.jY)throw Error(`cannot stop async event '${this.type}' propagation`);this.xJ=!0}};"use strict";const bd=self.B; function cd(a,b,d){0<a.wk?a.Ht.push({sJ:"add",Fj:b,capture:d}):d?a.Bs.has(b)||(a.Ng.push(b),a.Bs.add(b)):a.tt.has(b)||(a.Xg.push(b),a.tt.add(b))}function dd(a){a.wk--;if(0===a.wk&&0<a.Ht.length){const b=new Set,d=new Set;for(const c of a.Ht)if("add"===c.sJ)cd(a,c.Fj,c.capture),c.capture?d.delete(c.Fj):b.delete(c.Fj);else if("remove"===c.sJ)c.capture?(a.Bs.delete(c.Fj),d.add(c.Fj)):(a.tt.delete(c.Fj),b.add(c.Fj));else throw Error("invalid op");bd.ai(a.Xg,b);bd.ai(a.Ng,d);bd.D(a.Ht)}} function ed(a,b){const d=[];a.wk++;for(let e=0,g=a.Ng.length;e<g;++e){var c=a.Ng[e](b);c instanceof Promise&&d.push(c)}for(let e=0,g=a.Xg.length;e<g;++e)c=a.Xg[e](b),c instanceof Promise&&d.push(c);dd(a);return d.length?Promise.all(d).then(()=>!b.defaultPrevented):!b.defaultPrevented}async function fd(a,b){return await ed(a,b)} async function gd(a,b){a.wk++;for(let c=0,e=a.Ng.length;c<e;++c){var d=a.Ng[c](b);d instanceof Promise&&await d}for(let c=0,e=a.Xg.length;c<e;++c)d=a.Xg[c](b),d instanceof Promise&&await d;dd(a);return!b.defaultPrevented}function*hd(a,b){a.wk++;for(let c=0,e=a.Ng.length;c<e;++c){var d=a.Ng[c](b);bd.Rn(d)&&(yield*d)}for(let c=0,e=a.Xg.length;c<e;++c)d=a.Xg[c](b),bd.Rn(d)&&(yield*d);dd(a)} bd.Event.SR=class extends bd.ta{constructor(a){super();this.Aa=a;this.Ng=[];this.Bs=new Set;this.Xg=[];this.tt=new Set;this.wk=0;this.Ht=[]}j(){0<this.wk||(bd.D(this.Ng),this.Bs.clear(),bd.D(this.Xg),this.tt.clear(),bd.D(this.Ht),bd.j(this))}ds(a){a?this.wk++:dd(this)}};"use strict";const id=self.B;function jd(a,b,d){let c=a.Im.get(b);return c?c:d?(c=id.A(id.Event.SR,b),a.Im.set(b,c),c):null}async function kd(a,b){return(a=jd(a,b.type,!1))?await fd(a,b):!0} async function ld(a,b){(a=jd(a,b.type,!1))&&await gd(a,b)}function md(a,b){a=jd(a,b.type,!1);if(!a)return null;if(b.cancelable)throw Error("not supported");return hd(a,b)} id.Event.tb=class extends id.ta{constructor(){super();this.Im=new Map;this.WF=!1}j(){if(this.WF)throw Error("already released");for(let a of this.Im.values())a.j();this.Im.clear();this.WF=!0;id.j(this)}$n(){return this.WF}addEventListener(a,b,d){cd(jd(this,a,!0),b,!!d)}removeEventListener(a,b,d){let c=jd(this,a,!1);c&&(d=!!d,0<c.wk?c.Ht.push({sJ:"remove",Fj:b,capture:d}):d?c.Bs.has(b)&&(c.Bs.delete(b),bd.Tl(c.Ng,b)):c.tt.has(b)&&(c.tt.delete(b),bd.Tl(c.Xg,b)),c.Ng.length||c.Xg.length||this.Im.delete(a))}dispatchEvent(a){const b= jd(this,a.type,!1);if(b)if(a.cancelable){b.wk++;let d=!1;for(let c=0,e=b.Ng.length;c<e;++c)if(b.Ng[c](a),a.xJ){d=!0;break}if(!d)for(let c=0,e=b.Xg.length;c<e&&(b.Xg[c](a),!a.xJ);++c);dd(b);a=!a.defaultPrevented}else{b.wk++;for(let d=0,c=b.Ng.length;d<c;++d)b.Ng[d](a);for(let d=0,c=b.Xg.length;d<c;++d)b.Xg[d](a);dd(b);a=!0}else a=!0;return a}ds(a){for(const b of this.Im.values())b.ds(a)}};"use strict";const nd=self.B,od="undefined"!==typeof requestIdleCallback;let pd=[],qd=-1,rd=0; function sd(a){qd=od&&0===rd?requestIdleCallback(td,{timeout:35}):setTimeout(td,0<rd?1:a)}function td(a){qd=-1;if(pd.length){var b=performance.now(),d=0;do{ud(pd.shift());var c=performance.now();++d;var e=(c-b)/d*1.1}while(pd.length&&(od&&0===rd&&"undefined"!==typeof a?e<a.timeRemaining():12>c-b+e));-1===qd&&pd.length&&sd(Math.max(16-(c-b),4))}}function ud(a){let b;try{b=a.Fj()}catch(d){a.reject(d);return}a.resolve(b)}let vd=nd.WD.Qu("disable-asyncify");vd&&console.warn("[Asyncify] Asyncify has been disabled due to disable-asyncify in the query string. Some work will now be done synchronously."); nd.wu=function(a){let b=null;nd.jy&&(b=nd.Sy());return new Promise((d,c)=>{pd.push({Fj:a,resolve:d,reject:c,stack:b});vd?ud(pd.pop()):-1===qd&&sd(16)})};nd.wu.xL=function(a){if(a)++rd;else if(--rd,0>rd)throw Error("already turned off high throughput mode");};"use strict";const wd=self.B;let xd=-1;function yd(){xd=-1}wd.Oy=function(){-1===xd&&(xd=Date.now(),self.setTimeout(yd,16));return xd};let zd=-1,Ad=-1,Bd=new Set; function Cd(){Ad=zd=-1;let a=Date.now();for(let c of Bd){var b=c;var d=a;d>=b.tq?b.As()?(b.tq=d+b.oC,b=!0):b=b.Mb=!1:b=!0;if(b){if(b=c.tq,-1===Ad||b<Ad)Ad=b}else Bd.delete(c)}-1!==Ad&&(zd=self.setTimeout(Cd,Math.max(Ad-a+100,1E3)))} wd.nS=class{constructor(a,b){this.As=a;this.oC=1E3*b;this.tq=0;this.Mb=!1}bd(){let a=wd.Oy();this.tq=a+this.oC;this.Mb||(Bd.add(this),this.Mb=!0);-1===zd?(Ad=this.tq,zd=self.setTimeout(Cd,this.oC+100)):this.tq<Ad&&Ad>a+1E3&&(self.clearTimeout(zd),Ad=this.tq,zd=self.setTimeout(Cd,this.oC+100))}j(){this.Mb&&(Bd.delete(this),this.Mb=!1,0===Bd.size&&-1!==zd&&(self.clearTimeout(zd),Ad=zd=-1));this.As=null}};"use strict";const Dd=self.B; Dd.Fe=class a{constructor(b){this.Ks=!1;this.uA=b}My(){this.Ks||(this.Ks=!0,this.uA&&(this.uA(),this.uA=null))}j(){this.My()}static j(b){return new a(()=>b.j())}static Bg(b,d,c){if("undefined"===typeof e||null===e)var e=!1;else if("boolean"!==typeof e&&"object"!==typeof e)throw new TypeError("invalid event listener options");if(d.includes(" ")){d=d.split(" ");const g=new Dd.Jy;for(let k of d)b.addEventListener(k,c,e),g.$c(Dd.A(Dd.Fe,()=>b.removeEventListener(k,c,e)));return g}b.addEventListener(d, c,e);return Dd.A(Dd.Fe,()=>b.removeEventListener(d,c,e))}};function Ed(a,b){a.uA=b}Dd.z8=class extends Dd.Fe{};Dd.Jy=class extends Dd.Fe{constructor(...a){super();this.pg=new Set;for(let b of a)this.$c(b)}$c(...a){if(this.Ks)throw Error("already disposed");for(let b of a)this.pg.add(b)}Ah(a){if(this.Ks)throw Error("already disposed");this.pg.delete(a)}My(){if(this.Ks)throw Error("already disposed");this.Ks=!0;for(let a of this.pg)a.My();this.pg.clear();this.pg=null}j(){this.My()}};"use strict"; const Fd=self.B;Fd.Vu=class extends Fd.ta{constructor(){super();this.kp=this.hr=this.R=this.ys=0}$c(a){this.R=+a-this.ys;this.hr=this.kp+this.R;this.ys=this.hr-this.kp-this.R;this.kp=this.hr}S(){return this.kp}bd(){this.kp=this.hr=this.R=this.ys=0}Set(a){this.hr=this.R=this.ys=0;this.kp=+a}lD(a){this.ys=a.ys;this.R=a.R;this.hr=a.hr;this.kp=a.kp}j(){}};"use strict"; const Gd=self.B,Hd={XD:function(a){this.fQ=a;this.left=this.right=this.fQ.Gb;this.parent=null;this.color=!1;this.key=null},Xp:function(a){this.size=0;this.Gb=new Hd.XD(this);this.Gb.color=!1;this.root=this.Gb;this.root.parent=this.Gb;this.compare=a||this.QX}};aa=Hd.Xp.prototype;aa.QX=function(a,b){return a<b?-1:b<a?1:0}; aa.clone=function(){var a=new Hd.Xp(this.compare);if("array"==Hd.KJ(this))for(var b=0;b<this.length;b++)a.mu(this[b]);else if("function"==Hd.KJ(this.forEach))this.forEach(a.mu,a);else if("function"==Hd.KJ(this.aJ)){var d=this.aJ();for(b=0;b<d.length;b++)a.mu(d[b])}else if("object"==Hd.KJ(this))for(b in this)a.mu(this[b]);return a};aa.clear=function(){this.size=0;this.Gb=new Hd.XD(this);this.Gb.color=!1;this.root=this.Gb;this.root.parent=this.Gb}; function Id(a,b){var d=b.right;b.right=d.left;d.left!=a.Gb&&(d.left.parent=b);d.parent=b.parent;b.parent==a.Gb?a.root=d:b==b.parent.left?b.parent.left=d:b.parent.right=d;d.left=b;b.parent=d}function Jd(a,b){var d=b.left;b.left=d.right;d.right!=a.Gb&&(d.right.parent=b);d.parent=b.parent;b.parent==a.Gb?a.root=d:b==b.parent.right?b.parent.right=d:b.parent.left=d;d.right=b;b.parent=d} aa.mu=function(a){if(this.contains(a))Kd(this,a).key=a;else{var b=new Hd.XD(this);b.key=a;a=this.Gb;for(var d=this.root;d!=this.Gb;)a=d,d=0>this.compare(b.key,d.key)?d.left:d.right;b.parent=a;a==this.Gb?this.root=b:0>this.compare(b.key,a.key)?a.left=b:a.right=b;b.left=this.Gb;b.right=this.Gb;for(b.color=!0;b!=this.Gb&&b!=this.root&&1==b.parent.color;)b.parent==b.parent.parent.left?(a=b.parent.parent.right,1==a.color?(b.parent.color=!1,a.color=!1,b.parent.parent.color=!0,b=b.parent.parent):(b==b.parent.right&& (b=b.parent,Id(this,b)),b.parent.color=!1,b.parent.parent.color=!0,b.parent.parent!=this.Gb&&Jd(this,b.parent.parent))):(a=b.parent.parent.left,1==a.color?(b.parent.color=!1,a.color=!1,b.parent.parent.color=!0,b=b.parent.parent):(b==b.parent.left&&(b=b.parent,Jd(this,b)),b.parent.color=!1,b.parent.parent.color=!0,b.parent.parent!=this.Gb&&Id(this,b.parent.parent)));this.root.color=!1;this.size++}}; aa.remove=function(a){var b=Kd(this,a);if(b!=this.Gb){a=b.key;var d=b.left==this.Gb||b.right==this.Gb?b:Ld(this,b);var c=d.left!=this.Gb?d.left:d.right;c.parent=d.parent;d.parent==this.Gb?this.root=c:d==d.parent.left?d.parent.left=c:d.parent.right=c;d!=b&&(b.key=d.key);if(0==d.color){for(b=c;b!=this.root&&0==b.color;)b==b.parent.left?(d=b.parent.right,1==d.color&&(d.color=!1,b.parent.color=!0,Id(this,b.parent),d=b.parent.right),0==d.left.color&&0==d.right.color?(d.color=!0,b=b.parent):(0==d.right.color&& (d.left.color=!1,d.color=!0,Jd(this,d),d=b.parent.right),d.color=b.parent.color,b.parent.color=!1,d.right.color=!1,Id(this,b.parent),b=this.root)):(d=b.parent.left,1==d.color&&(d.color=!1,b.parent.color=!0,Jd(this,b.parent),d=b.parent.left),0==d.right.color&&0==d.left.color?(d.color=!0,b=b.parent):(0==d.left.color&&(d.right.color=!1,d.color=!0,Id(this,d),d=b.parent.left),d.color=b.parent.color,b.parent.color=!1,d.left.color=!1,Jd(this,b.parent),b=this.root));b.color=!1}this.size--;return a}return null}; aa.min=function(a){for(;a.left!=this.Gb;)a=a.left;return a};aa.max=function(a){for(;a.right!=this.Gb;)a=a.right;return a};function Ld(a,b){if(b.right!=a.Gb)return a.min(b.right);for(var d=b.parent;d!=a.Gb&&b==d.right;)b=d,d=d.parent;return d}function Kd(a,b){for(var d=a.root;d!=a.Gb&&0!=a.compare(d.key,b);)d=0>a.compare(b,d.key)?d.left:d.right;return d}aa.contains=function(a){return null!=Kd(this,a).key};aa.aJ=function(){var a=[];this.forEach(function(b){a.push(b)});return a}; aa.range=function(a,b){var d=[];Md(this,function(c){d.push(c)},a,b);return d};function Md(a,b,d,c){if(0!=a.size)for(d=Kd(a,d),c=Kd(a,c);d!=c&&!b.call(void 0,d.key,a);)d=Ld(a,d)}aa.forEach=function(a,b){if(0!=this.size)for(var d=this.min(this.root);d!=this.Gb;d=Ld(this,d))a.call(b,d.key,d.key,this)};aa.some=function(a,b){if(0==this.size)return!1;for(var d=this.min(this.root);d!=this.Gb;d=Ld(this,d))if(a.call(b,d.key,d.key,this))return!0;return!1}; aa.every=function(a,b){if(0==this.size)return!1;for(var d=this.min(this.root);d!=this.Gb;d=Ld(this,d))if(!a.call(b,d.key,d.key,this))return!1;return!0};aa.map=function(a,b){var d=[];if(0==this.size)return d;for(var c=this.min(this.root);c!=this.Gb;c=Ld(this,c))d.push(a.call(b,c.key,c.key,this));return d};aa.filter=function(a,b){var d=[];if(0==this.size)return d;for(var c=this.min(this.root);c!=this.Gb;c=Ld(this,c))a.call(b,c.key,c.key,this)&&d.push(c.key);return d}; function Nd(a,b){b=!!b;if(a.Ms!==b&&(a.Ms=b,!b)){for(const d of a.br)a.Mi.remove(d);a.br.clear();for(const d of a.$q)a.Mi.mu(d);a.$q.clear()}} Gd.Xp=class extends Gd.ta{constructor(a){super();this.Mi=new Hd.Xp(a);this.Ms=!1;this.$q=new Set;this.br=new Set}$c(a){this.Ms?this.Mi.contains(a)?this.br.delete(a):this.$q.add(a):this.Mi.mu(a)}Ah(a){this.Ms?this.Mi.contains(a)?this.br.add(a):this.$q.delete(a):this.Mi.remove(a)}Qu(a){return this.Ms?this.$q.has(a)?!0:!this.br.has(a)&&this.Mi.contains(a):this.Mi.contains(a)}Nd(){this.Mi.clear();this.$q.clear();this.br.clear()}toArray(){if(this.Ms)throw Error("cannot be used in queueing mode");return this.Mi.aJ()}Mn(){return this.Mi.size+ this.$q.size-this.br.size}Qn(){return 0===this.Mn()}jK(a){this.Mi.forEach(a)}*values(){if(!this.Qn()){var a=this.Mi;for(let b=a.min(a.root);b!=a.Gb;b=Ld(a,b))yield b.key}}[Symbol.iterator](){return this.values()}};"use strict";const Od=self.B;async function Pd(a){if(a.PH.length&&!(a.lF>=a.TW)){a.lF++;var b=a.PH.shift();try{const d=await b.Fj();b.resolve(d)}catch(d){b.reject(d)}a.lF--;Pd(a)}} Od.UD=class{constructor(a=Od.hardwareConcurrency){this.TW=a;this.PH=[];this.lF=0}$c(a){return new Promise((b,d)=>{this.PH.push({Fj:a,resolve:b,reject:d});Pd(this)})}};"use strict";const Qd=self.B;function Rd(a){a.vG=!0;const b=a.Ov;a.Ov=null;b?a.As(...b):a.As();a.vG=!1}function Sd(a){var b=[];if(-1===a.$t){a.Ov=b;b=Qd.Oy();var d=b-a.nB;var c="undefined"!==typeof Qd.HQ&&Qd.HQ.w2()?a.EW:a.DW;d>=c&&a.eW?(a.nB=b,Rd(a)):a.$t=self.setTimeout(a.JO,Math.max(c-d,4))}} function Td(a){-1!==a.$t&&(self.clearTimeout(a.$t),a.$t=-1)}Qd.UT=class{constructor(a,b,d){this.As=a;this.DW=b;this.EW=d||2*b;this.$t=-1;this.nB=-Infinity;this.JO=()=>{this.$t=-1;this.nB=Qd.Oy();Rd(this)};this.eW=this.vG=!1;this.Ov=null}bd(){this.vG||(Td(this),this.Ov=null,this.nB=Qd.Oy())}j(){Td(this);this.JO=this.Ov=this.As=null}};"use strict";function Ud(a,b){if(!a.QM)throw Error("no get base size callback set");return a.QM(b)} self.B.W5=class{constructor(){this.AW=new Map;this.iO=this.kO=this.QM=null}Cz(){if(!this.iO)throw Error("no redraw callback set");this.iO()}};"use strict"; self.B.V5=class{constructor(a,b){this.Ce=a;this.mW=b;this.Gd=0;Ud(this.Ce,b).then(()=>{this.Ce&&this.Ce.Cz()}).catch(d=>{console.error("[SVG] Error loading SVG: ",d);this.Ce&&this.Ce.Cz()});this.QH=null}j(){if(0>=this.Gd)throw Error("already released");this.Gd--;0===this.Gd&&this.yv()}yv(){if(this.QH){var a=this.Ce;if(!a.kO)throw Error("no release result callback set");a.kO(this.QH);this.QH=null}this.Ce.AW.delete(this.mW);this.Ce=null}};"use strict";const T=self.B;T.o9="\ufeff";const Vd=new Set([..."0123456789"]); T.CS=function(a){return Vd.has(a)};const Wd=new Set([..." \t\n\r\u00a0\u0085\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u200b\u2028\u2029\u202f\u205f\u3000"]);T.rz=function(a){return Wd.has(a)};T.j1=function(a){return[...a].filter(b=>!T.rz(b)).join("")};T.GS=function(a){for(const b of a)if(!T.rz(b))return!1;return!0};T.GD=function(a){for(const b of a)if(!T.rz(b))return!1;return!0};T.JS=function(a){return 1===a.length&&32>a.charCodeAt(0)}; T.rR=function(a){return[...a].filter(b=>!T.JS(b)).join("")};const Xd=new Set([..."0123456789.+-e"]);T.G2=function(a){a=a.trim();if(!a.length)return!1;let b=a.charAt(0);if("-"!==b&&!Vd.has(b))return!1;for(let d of a)if(!Xd.has(d))return!1;return!0};T.VT=function(a){let b=a.length;for(;0<b&&T.CS(a.charAt(b-1));)--b;return a.substr(0,b)};T.b2=function(a){let b=T.VT(a);a=(a=a.substr(b.length))?(parseInt(a,10)+1).toString():"2";return b+a}; const Yd=new Map([["&","&"],["<","<"],[">",">"],['"',"""],["'","'"]]);function Zd(a){return Yd.get(a)}const $d=/[&<>"']/g;T.mR=function(a){return a.replace($d,Zd)};T.Z0=function(a){a=T.$i(a,"\\","\\\\");a=T.$i(a,'"','\\"');a=T.$i(a,"\t","\\t");a=T.$i(a,"\r","");return T.$i(a,"\n","\\n")};T.$0=function(a){a=T.$i(a,"&","&");a=T.$i(a,"<","<");a=T.$i(a,">",">");return T.$i(a,'"',""")};const ae=/[-[\]{}()*+?.,\\^$|#\s]/g;T.yu=function(a){return a.replace(ae,"\\$&")}; T.w0=function(a,b){let d=0;for(const c of a)c===b&&++d;return d};T.k1=function(a,b,d=!1){if(!b)return[];d||(a=a.toLowerCase(),b=b.toLowerCase());d=b.length;var c=0;let e=[];for(;-1<(c=a.indexOf(b,c));)e.push(c),c+=d;return e};T.$i=function(a,b,d){return a.replaceAll(b,()=>d)};T.T4=function(a,b,d){return a.replace(new RegExp(T.yu(b),"gi"),()=>d)}; T.B6=function(a,b){if("string"===typeof b)a.textContent=b;else if(b.nN)a.textContent=b.toString();else if(a.innerHTML=be(b),b instanceof T.Gp&&b.Rw.length)for(let d=0,c=b.Rw.length;d<c;++d){const e=b.Rw[d];if("function"!==typeof e)continue;const g=a.querySelector(".bblink"+d);if(!g)throw Error("unable to attach BBString link handler");g.onclick=e}};T.u8=function(a,b){return a instanceof T.hz||a instanceof T.Gp?a.Ld(b):b instanceof T.hz||b instanceof T.Gp?b.Ld(a):a===b}; T.v8=function(a,...b){let d=a;for(let c=0,e=b.length;c<e;++c){const g=`{${c}}`;if(!a.includes(g))throw Error(`missing placeholder '${g}' in string substitution`);d=d.replace(g,b[c].toString())}return d};T.w8=function(a,...b){let d=a,c=-1,e=-1;for(let g=0,k=b.length;g<k;++g){const m=`{${g}}`;a.includes(m)?(e=g,d=d.replace(m,b[g].toString())):-1===c&&(c=g)}if(0<=c&&0<=e&&c<e)throw Error(`missing placeholder '${c}' in string substitution`);return d}; T.x8=function(a,b){for(let [d,c]of Object.entries(b))a=a.replaceAll(d,c.toString());return a};T.c8=function(a,b){return a>b?1:a<b?-1:0};T.d8=function(a,b){a=a.toLowerCase();b=b.toLowerCase();return a>b?1:a<b?-1:0};let ce=null,de=null;self.Intl&&self.Intl.Segmenter?ce=new self.Intl.Segmenter:de=new self.QR;T.GL=function(a){if(ce){const b=[];for(const d of ce.segment(a))b.push(d.segment);return b}return de.NY(a)};T.L2=function*(a){if(ce)for(const b of ce.segment(a))yield b.segment;else yield*de.rY(a)}; T.WJ=function(a){if(ce){let b=0;for(const d of ce.segment(a))++b;return b}return de.MX(a)}; T.m1=function(a,b){b="common."+(b?"dataRates":"dataSizes")+".";const d=self.Kaa;if(1024>a)return d(b+"bytes",a);if(1048576>a)return a/=1024,a=10>a?Math.round(10*a)/10:Math.round(a),d(b+"kilobytes",a);if(1073741824>a)return a/=1048576,a=10>a?Math.round(10*a)/10:Math.round(a),d(b+"megabytes",a);if(1099511627776>a)return a/=1073741824,a=10>a?Math.round(10*a)/10:Math.round(a),d(b+"gigabytes",a);a/=1099511627776;a=10>a?Math.round(10*a)/10:Math.round(a);return d(b+"terabytes",a)}; const ee={BX:!1,NX:!0,hY:!0,yY:!0,WP:!0}; T.n1=function(a,b){b=Object.assign({},ee,b);T.OS.G4("common.time");const d=[],c=self.lang,e=self.Jaa;if(b.NX){var g=Math.floor(a/86400);0<g&&(a-=86400*g,d.push(e(".days",null,g)))}b.hY&&(g=Math.floor(a/3600),0<g||d.length)&&(a-=3600*g,d.push(e(".hours",null,g)));b.yY&&(g=Math.floor(a/60),0<g||d.length||!b.WP)&&(a-=60*g,d.push(e(".minutes",null,g)));b.WP&&d.push(e(".seconds",null,Math.floor(a%60)));a=(b.BX?c(".approx-prefix"):"")+d.join(c(".separator"));T.OS.y4();return a}; T.R9=function(a,b){let d=0>a?"-":"";a=Math.abs(a);a=a.toString();b-=a.length;for(let c=0;c<b;++c)d+="0";return d+a};T.y8=function(a){return a.toLowerCase().replace(/\b\w/g,b=>b.toUpperCase())};T.j0=function(a,b){a=a.split(".").map(d=>d.trim());b=b.split(".").map(d=>d.trim());T.UP(a);T.UP(b);a=a.map(d=>parseInt(d,10));b=b.map(d=>parseInt(d,10));for(let d=0;4>d;++d){const c=a[d]-b[d];if(0!==c)return 0>c?-1:1}return 0}; T.z0=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,a=>{const b=Math.floor(16*Math.random());return("x"===a?b:b&3|8).toString(16)})};T.s8=function(a,b){if(a.length!==b.length)throw Error("strings must be same length");let d=0;for(let c=0,e=a.length;c<e;++c)a.charAt(c)!==b.charAt(c)&&++d;return d}; T.t8=function(a,b){if(0===a.length)return b.length;if(0===b.length)return a.length;let d,c,e,g;if(a.length>b.length){var k=a;a=b;b=k}g=Array(a.length+1);for(k=0;k<=a.length;k++)g[k]=k;for(k=1;k<=b.length;k++){c=k;for(d=1;d<=a.length;d++)e=b[k-1]===a[d-1]?g[d-1]:Math.min(g[d-1]+1,Math.min(c+1,g[d]+1)),g[d-1]=c,c=e;g[a.length]=c}return g[a.length]};"use strict"; const fe=self.B,ge=new Map([["b","strong"],["i","em"],["s","s"],["u","u"],["sub","sub"],["sup","sup"],["small","small"],["mark","mark"],["code","code"],["a1","a"],["a2","a"],["a3","a"],["a4","a"],["a5","a"],["a6","a"],["a7","a"],["a8","a"],["a9","a"],["tip1","abbr"],["tip2","abbr"],["tip3","abbr"],["tip4","abbr"],["tip5","abbr"],["tip6","abbr"],["tip7","abbr"],["tip8","abbr"],["tip9","abbr"],["bad",["span","bbCodeBad"]],["good",["span","bbCodeGood"]],["info",["span","bbCodeInfo"]],["h1",["span","bbCodeH1"]], ["h2",["span","bbCodeH2"]],["h3",["span","bbCodeH3"]],["h4",["span","bbCodeH4"]],["item",["span","bbCodeItem"]]]),he=/\[(\/?)([a-zA-Z0-9]+)\]/g,ie=/\[(\/?)([^\[\n]*?)\]/g;let je=null,ke=null,le=0; function me(a,b,d){var c=ge.get(d);if(c){if("string"===typeof c){if("a"===c&&0===je.length||"abbr"===c&&0===ke.length)return a;if("a"!==c||b){if("abbr"!==c||b)return"<"+b+c+">";b=parseInt(d.substring(3),10)-1;if(0>b||b>=ke.length)throw Error("invalid bbcode tip substitution");b=ke[b];c="";"string"===typeof b?c=b:"function"===typeof b&&(c=b());if("string"!==typeof c)throw new TypeError("invalid bbcode tip");return`<abbr title="${fe.$i(c,'"',""")}">`}b=parseInt(d.substring(1),10)-1;if(0>b||b>= je.length)throw Error("invalid bbcode link substitution");c=je[b];if("string"===typeof c)return`<a href="${je[b]}">`;if("function"===typeof c)return`<a class="bblink${b}">`;throw new TypeError("invalid bbcode link action");}if(Array.isArray(c))return a=c[0],c=c[1],b?"</"+a+">":`<${a} class="${c}">`}else return"class"===d?b?"</span>":`<span class="bbclass${le++}">`:a}const ne=/\n/g; function be(a){if(a.nN)return a.fj;if(!a.uG&&a.fj){let b=a.fj;a.TM&&(le=0,je=a.Rw,ke=a.KO,b=b.replace(he,me),ke=je=null);a.TN&&(b=b.replace(ne,"<br>"));a.uG=b}return a.uG} function oe(a){if(a.WM)return a.jw;var b=a.fj;const d=[];let c=ie.lastIndex=0;for(var e;null!==(e=ie.exec(b));){var g=e.index;if(0<g&&"\\"===b.charAt(g-1))continue;var k=e[1],m=e[2];const n=b.substring(c,g);c=g+e[0].length;n&&a.jw.push({text:n,tc:d.slice(0)});if(m)if(k)for(m=m.toLowerCase(),e=d.length-1;0<=e;--e){if(d[e].tag===m){d.splice(e,1);break}}else e=m,g=null,k=m.indexOf("="),-1!==k?(e=m.substring(0,k).toLowerCase(),g=m.substring(k+1)):e=e.toLowerCase(),d.push({tag:e,Zc:g})}c<b.length&&a.jw.push({text:b.substring(c), tc:d.slice(0)});for(const n of a.jw)b=n.text,b=fe.$i(b,"\\[","["),b=fe.$i(b,"\\\\","\\"),n.text=b;a.WM=!0;return a.jw} fe.Gp=class{constructor(a){var b={BY:!0};this.fj=b&&b.BY?a:fe.mR(a);this.uG="";this.tM=!1;this.Rw=[];this.KO=[];if(b){this.tM=!!b.t$;if(b.links){if(9<b.links.length)throw Error("too many links");this.Rw=b.links}if(b.cQ){if(9<b.cQ.length)throw Error("too many tips");this.KO=b.cQ}}this.TM=this.fj.includes("[");this.TN=this.tM&&this.fj.includes("\n");this.nN=!this.TM&&!this.TN&&!this.fj.includes("&");this.WM=!1;this.jw=[]}toString(){return this.fj}valueOf(){return this.fj}Ld(a){return a instanceof fe.hz? be(this)===be(a):a instanceof fe.Gp?this.fj===a.fj:this.fj===a}};"use strict";const pe=self.B;function qe(a){return"\u00a0"===a||"\u202f"===a?!1:pe.rz(a)}function re(a,b){let d=0,c=0,e=0,g=0,k=0;for(const m of a)-1===m.width&&(a=b(m.Kd,m.tc),m.width=a.width,m.height=a.height,m.di=a.di||0,m.Rf=a.Rf||0,m.ih=a.ih||0),d+=m.width,c=Math.max(c,m.height),e=Math.max(e,m.di),g=Math.max(g,m.Rf),k=Math.max(k,m.ih);return{width:d,height:c,di:e,Rf:g,ih:k}} function se(a,b,d,c,e,g,k){a.Sh.push({Ar:b,width:d,height:c,di:e,Rf:g,ih:k})}function te(a){const b=[];let d=[],c=!1;for(const g of a){var e=g.Kd;a=g.tc;for(const k of e)"\n"===k||"\r\n"===k?(0<d.length&&b.push(d),b.push([{Kd:["\n"],tc:a}]),d=[]):0===d.length?(d.push({Kd:[k],tc:a}),c=qe(k)):(e=qe(k),e===c?(e=d.ie(-1),e.tc===a?e.Kd.push(k):d.push({Kd:[k],tc:a})):(b.push(d),d=[],d.push({Kd:[k],tc:a}),c=e))}0<d.length&&b.push(d);return b} function ue(a,b,d,c,e){var g=[],k=0,m=0;let n=0,q=0;var r=0;for(const w of b){if(b=1===w.length&&1===w[0].Kd.length)b=w[0].Kd[0],b="\n"===b||"\r\n"===b;if(b){0===m&&(r=d([" "],w[0].tc),m=r.height,n=r.di||0,q=r.Rf||0,r=r.ih||0);se(a,g,k,m,n,q,r);g=[];r=q=n=m=k=0;continue}b=ve(g);we(b,w);const x=re(b,d),z=x.width;z>=c?(0<g.length&&se(a,g,k,m,n,q,r),g=[],pe.GD(w[0].Kd)?r=q=n=m=k=0:(we(g,w),r=re(g,d),k=r.width,m=r.height,n=r.di,q=r.Rf,r=r.ih)):(g=b,k=z,m=x.height,n=x.di,q=x.Rf,r=x.ih)}0<g.length&&se(a, g,k,m,n,q,r);for(const w of a.Sh)if(a=w.Ar,a.length){c=a.ie(-1);m=c.Kd;for(k=g=m.slice(0);0<k.length&&qe(k.ie(-1));)k.pop();0===g.length?(w.width-=c.width,a.pop()):g.length<m.length&&(k=d(g,c.tc).width,m=c.width-k,c.width=k,c.Kd=g,w.width-=m);0!==e&&0<a.length&&(c=a.ie(-1),c.width+=e,w.width+=e)}}function ve(a){return a.map(b=>({Kd:b.Kd.slice(0),tc:b.tc,width:b.width,height:b.height,di:b.di,Rf:b.Rf,ih:b.ih}))} function we(a,b){var d=a.length?a.ie(-1):null;let c=0;d&&b[0].tc===d.tc&&(pe.Sl(d.Kd,b[0].Kd),d.width=-1,d.height=-1,d.di=-1,d.Rf=-1,d.ih=-1,c=1);for(d=b.length;c<d;++c){const e=b[c];a.push({Kd:e.Kd.slice(0),tc:e.tc,width:-1,height:-1,di:-1,Rf:-1,ih:-1})}}function xe(a){return a.Sh.reduce((b,d)=>Math.max(b,d.width),0)}function ye(a){return a.Sh.reduce((b,d)=>b+d.height,0)} pe.nv=class{constructor(){this.Sh=[]}nv(a,b,d,c,e){"string"===typeof a&&(a=[{text:a,tc:[]}]);pe.D(this.Sh);if(!(!a.length||1===a.length&&!a[0].text.length||2>d)){a=a.map(k=>({Kd:pe.GL(k.text),tc:k.tc}));if(1===a.length){var g=a[0];const k=g.Kd;g=g.tc;if(100>=k.length&&!k.includes("\n")){let {width:m,height:n,di:q,Rf:r,ih:w}=b(k,g);m+=e;q=q||0;r=r||0;w=w||0;if(m<=d){se(this,[{Kd:k,tc:g,width:m,height:n,di:q,Rf:r,ih:w}],m,n,q,r,w);return}}}if("word"===c)c=te(a);else{c=[];for(const k of a)pe.Sl(c,k.Kd.map(m=> [{Kd:[m],tc:k.tc}]))}ue(this,c,b,d,e)}}Nd(){pe.D(this.Sh)}};"use strict";const Ae=self.B,Be=self.Zk,Ce=Be.XC,De=Be.zy,Ee=Be.Bn,Fe=Ce.create(),Ge=Ce.create(),He=Ce.create(),Ie=De.create(),Je=Ee.create(),Ke=Ce.create(),Le=Ce.create(),Me=Ce.create(),Ne=Ce.create(),Oe=Ce.create(),Pe=Ce.create(),Qe=Ce.create(),Re=Ce.create(),Se=De.gh(0,0,1,1); function Te(a,b,d,c,e,g,k){Ee.multiply(Je,e,c);if(null===Ee.ou(Je,Je))return!1;Ie[0]=(a-g[0])/g[2]*2-1;Ie[1]=(b-g[1])/g[3]*2-1;Ie[2]=2*d-1;Ie[3]=1;De.JJ(Ie,Ie,Je);if(0===Ie[3])return!1;Ie[3]=1/Ie[3];k[0]=Ie[0]*Ie[3];k[1]=Ie[1]*Ie[3];k[2]=Ie[2]*Ie[3];return!0} Ae.ca={Az(a,b,d,c,e,g,k){const m=c[0]*a+c[4]*b+c[8]*d+c[12],n=c[1]*a+c[5]*b+c[9]*d+c[13],q=c[2]*a+c[6]*b+c[10]*d+c[14];c=c[3]*a+c[7]*b+c[11]*d+c[15];a=e[0]*m+e[4]*n+e[8]*q+e[12]*c;b=e[1]*m+e[5]*n+e[9]*q+e[13]*c;d=e[2]*m+e[6]*n+e[10]*q+e[14]*c;e=e[3]*m+e[7]*n+e[11]*q+e[15]*c;if(0===e)return!1;e=1/e;k[0]=(a*e*.5+.5)*g[2]+g[0];k[1]=(b*e*.5+.5)*g[3]+g[1];k[2]=.5*(1+d*e);return!0}}; function Ue(a,b,d,c){Ce.In(Fe,d,b);Ce.In(Ge,a,b);Ce.SI(He,Fe,Ge);Ce.normalize(He,He);c.set(He[0],He[1],He[2],Ce.zp(a,He))}function Ve(a,b,d,c,e,g,k){const m=k.x,n=k.y,q=k.z,r=k.w,w=k.lQ,x=k.mQ;k=k.nQ;const z=1-w,E=1-x,C=1-k;return m*a*w+m*c*z+n*b*x+n*e*E+q*d*k+q*g*C>=r?!0:m*c*w+m*a*z+n*e*x+n*b*E+q*g*k+q*d*C>r}class We{constructor(){this.nQ=this.mQ=this.lQ=this.w=this.z=this.y=this.x=NaN}set(a,b,d,c){this.x=a;this.y=b;this.z=d;this.w=c;this.lQ=0<a?1:0;this.mQ=0<b?1:0;this.nQ=0<d?1:0}} Ae.ca.XU=class{constructor(){this.FN=new We;this.LO=new We;this.mO=new We;this.lM=new We;this.tH=new We;this.IM=new We}};"use strict";const Xe=self.B,Ye=self.Zk,Ze=Ye.XC,$e=Ye.zy,af=Ye.Bn,bf=af.create(),cf=Ze.gh(0,0,0),df=Ze.gh(0,0,0),ef=Ze.gh(0,0,0),ff=Ze.gh(0,1,0);$e.gh(0,0,0,0);new Xe.jd;new Xe.Rect;const gf=new Xe.jd(0,0,1,0,1,1,0,1),hf={nJ:1,VI:1E4};function jf(a){a.tl=0;a.Gm=0;a.dC=null;a.cC=null;a.eC=null;a.Hx=null;Xe.D(a.oq);a.Ax.clear()} function kf(a,b,d,c=.5,e=.5){const g=a.ax,k=a.gw,m=a.Qs;.5===c&&.5===e?af.perspective(b,m,d,g,k):(c=1-c,a=a.Ox*g,d*=a,af.ZX(b,(2*c-2)*d,2*c*d,(2*e-2)*a,2*e*a,g,k))}function lf(a,b,d,c,e,g,k=1){let m=1;!a.vr&&(m=200*a.Ox/g);Ze.set(ef,m,-m,1);Ze.multiply(cf,d,ef);Ze.multiply(df,c,ef);af.vY(b,cf,df,e||ff);ef[2]=k;af.scale(b,b,ef)}function mf(a,b,d,c,e,g,k){Ze.set(cf,b,d,c);Ze.set(df,e,g,0);lf(a,bf,cf,df,ff,k,void 0);return bf}function nf(a){of(a,a.dC)} function pf(a,b){--b.Gd;0===b.Gd&&(a.Pg===b&&(a.Pg=null),a.Lx.delete(qf(b.zx,b.vi,b.Za,b.wd)),b.j())}function rf(a,b){Xe.D(a.BF);a.SN.clear();let d=0;for(const c of b){b=c[0];const e=c[1],g=c[2];a.BF.push([e,g]);a.SN.set(b,{vba:d,wca:e,F$:g});d++}}function sf(a,b,d,c,e,g,k){var m=a.iH;b=b+m-k;d=d+m-g;c=c+m+k;e=e+m+g;m=2*k;const n=2*g;wf(a,b+g,d-k,0,c+g,e-k,0,c-g-m,e+k-n,0,b-g+m,d+k+n,0,gf)} function xf(a,b,d,c,e,g,k){const m=a.iH;b=b+m-k;d=d+m-g;c=c+m+k;e=e+m+g;wf(a,b+g,d-k,0,c+g,e-k,0,c-g,e+k,0,b-g,d+k,0,gf)}function yf(a,b,d,c,e,g,k){const m=a.iH;b+=m;d+=m;c+=m;e+=m;wf(a,b+g,d-k,0,c+g,e-k,0,c-g,e+k,0,b-g,d+k,0,gf)} function zf(a){var b=Af,d=b.Y,c=b.V,e=b.ma;b=b.ka;const g=.5*a.RW,k=a.QW;2===k?(sf(a,d,c,e,c,0,g),sf(a,e,c,e,b,g,0),sf(a,e,b,d,b,0,-g),sf(a,d,b,d,c,-g,0)):1===k?(xf(a,d,c,e,c,0,g),xf(a,e,c,e,b,g,0),xf(a,e,b,d,b,0,-g),xf(a,d,b,d,c,-g,0)):(yf(a,d,c,e,c,0,g),yf(a,e,c,e,b,g,0),yf(a,e,b,d,b,0,-g),yf(a,d,b,d,c,-g,0))} Xe.ca.YT=class{constructor(a){a=Object.assign({},hf,a);this.fa=this.ja=0;this.Qs=Xe.Ca(45);this.Ox=Math.tan(this.Qs/2);this.AB=af.create();this.oH=af.create();this.vr=!1;this.ax=a.nJ;this.gw=a.VI;this.oq=[];this.Ax=new Map;this.Hx=this.eC=this.cC=this.dC=null;this.Lx=new Map;this.Pg=null;this.BF=[];this.SN=new Map;this.Gm=this.tl=0;this.QW=this.RW=1;this.iH=.5;this.lj=0;this.Ls=!0;this.rG=!1}kz(){jf(this);this.Pg=null}N(){return this.ja}M(){return this.fa}Ve(a){return this.vr?a/(2*this.Ox):100}kE(a){this.Qs= a;this.Ox=Math.tan(this.Qs/2)}Or(){Bf(this);this.lj++}oE(a){this.Ls=!!a}Yi(){return!1}};"use strict";self.B.ca.pU=class{constructor(a,b){this.Oa=b.name;this.za=a;this.tW=b.Q$||0;this.uW=b.R$||0;this.RF=!!b.v$;this.VW=!!b.qba;this.Gt=!!b.Lba;this.OV=!!b.Y9;this.fA=!!b.d$;this.wI=!!b.Uca;this.vI=!1}j(){this.za=null}Ra(){return this.za}qa(){return this.Oa}Wu(){return this.VW}};"use strict";const Cf=self.B; function qf(a,b,d,c){return("string"===typeof a?a:a.qa())+","+b+","+d.hb+","+d.lb+","+d.gb+","+d.Ya+","+c} Cf.ca.vU=class{constructor(a,b,d,c,e){this.za=a;this.Gd=0;this.Xd=null;this.zx="";this.vi=d;this.Za=Cf.A(Cf.kb);this.Za.set(c);this.wd=e;"string"===typeof b?this.zx=b:(this.Xd=b,this.zx=this.Xd.qa())}j(){if(0<this.Gd)throw Error("releasing state group still in use");this.Xd=this.za=null;this.zx=""}zh(){this.Xd=null}QD(a){this.Xd=a.Ax.get(this.zx)||null;if(!this.Xd)throw Error("failed to restore shader program");}};"use strict";const Df=self.B,Ef=Df.A(Df.jd); function Ff(a,b,d){const c=d.Qb,e=d.Rb;return[c+(d.Wc-c)*a+(d.Oc-c)*b,e+(d.Xc-e)*a+(d.Pc-e)*b]} Df.ca.XS=class{constructor(a){this.rH=a;this.dh=this.ah=this.wd=this.R=this.X=0}si(a,b,d,c){this.X=a;this.R=b;this.ah=d;this.dh=c}T(){return this.X}hg(a){this.X!==a&&(this.X=a,this.rH.nx=!0)}U(){return this.R}Lg(a){this.R!==a&&(this.R=a,this.rH.nx=!0)}eb(){return this.wd}ig(a){this.wd!==a&&(this.wd=Math.max(a,0),this.rH.nx=!0)}kd(){return{x:this.T(),y:this.U(),z:this.eb(),u:this.ah,v:this.dh}}xc(a){this.hg(a.x);this.Lg(a.y);a.hasOwnProperty("z")&&this.ig(a.z);this.ah=a.u;this.dh=a.v}}; function Gf(a){if(a.nx){var b=Infinity,d=Infinity,c=-Infinity,e=-Infinity,g=0;for(const k of a.Zo)for(const m of k){const n=m.T(),q=m.U();b=Math.min(b,n);d=Math.min(d,q);c=Math.max(c,n);e=Math.max(e,q);g=Math.max(g,m.eb())}a.PN=b;a.QN=d;a.LN=c;a.MN=e;a.NN=g;a.nx=!1}}function Hf(a,b,d){b=Math.floor(b);d=Math.floor(d);return 0>b||b>=a.yl||0>d||d>=a.Ql?null:a.Zo[d][b]} function If(a,b,d,c){const e=c instanceof Df.Rect;if(b.yl!==a.yl||b.Ql!==a.Ql)throw Error("source mesh wrong size");b=b.Zo;a=a.Zo;for(let n=0,q=a.length;n<q;++n){const r=b[n],w=a[n];for(let x=0,z=w.length;x<z;++x){var g=r[x],k=w[x];if(e){var m=c;[k.X,k.R]=Ff(g.X,g.R,d);k.wd=g.wd;k.ah=Df.je(m.Y,m.ma,g.ah);k.dh=Df.je(m.V,m.ka,g.dh)}else m=c,[k.X,k.R]=Ff(g.X,g.R,d),k.wd=g.wd,[k.ah,k.dh]=Ff(g.ah,g.dh,m)}}} function Jf(a){const b=Kf.Wd,d=[],c=a.yl-1;a=a.Ql-1;const e=1/c,g=1/a,k=c-1,m=a-1;let n=b[0],q=b[1],r=Df.$(Math.floor(n*c),0,k),w=Df.$(Math.floor(q*a),0,m),x=0,z=0,E=0;var C=-1;const G=()=>{n=Df.$(Df.je(n,x,E),0,1);q=Df.$(Df.je(q,z,E),0,1);d.push(n,q)};for(let I=0,J=b.length;I<J;I+=2)for(n=b[I],q=b[I+1],d.push(n,q),r=Df.$(Math.floor(n*c),0,k),w=Df.$(Math.floor(q*a),0,m),C=(I+2)%J,x=b[C],z=b[C+1],C=-1;;){if(1E6<d.length)throw Error("Too many mesh poly points");const L=r*e,ea=w*g,Y=(r+1)*e,na=(w+1)* g;if(0!==C&&(E=Df.wy(n,q,x,z,L,ea,Y,na,-.001),0<=E&&.99999999>=E)){G();C=0;continue}if(0<w&&2!==C&&(E=Df.wy(n,q,x,z,L,ea,Y,ea,.001),0<=E&&.99999999>=E)){G();w--;C=4;continue}if(r<k&&3!==C&&(E=Df.wy(n,q,x,z,Y,ea,Y,na,.001),0<=E&&.99999999>=E)){G();r++;C=1;continue}if(0<r&&1!==C&&(E=Df.wy(n,q,x,z,L,ea,L,na,.001),0<=E&&.99999999>=E)){G();r--;C=3;continue}if(w<m&&4!==C&&(E=Df.wy(n,q,x,z,L,na,Y,na,.001),0<=E&&.99999999>=E)){G();w++;C=2;continue}break}return Df.A(Df.Jp,d)} function Lf(a,b,d){var c=a.yl-1,e=a.Ql-1;const g=1/c,k=1/e;c=Df.$(Math.floor(b*c),0,c-1);const m=Df.$(Math.floor(d*e),0,e-1);e=c*g;const n=m*k,q=(c+1)*g,r=(m+1)*k,w=Hf(a,c,m),x=Hf(a,c+1,m+1),z=Df.nY(b,d,e,n,q,n,q,r);a=Hf(a,c+(z?1:0),m+(z?0:1));const [E,C,G]=Df.UY(b,d,e,n,z?e+g:e,z?n:n+k,q,r);return Df.TY(E,C,G,w.T(),w.U(),w.eb(),a.T(),a.U(),a.eb(),x.T(),x.U(),x.eb())} Df.ca.FK=class{constructor(a,b,d){if(2>a||2>b)throw Error("invalid mesh size");this.yl=a;this.Ql=b;this.xb=d||null;this.Zo=[];this.QN=this.PN=0;this.MN=this.LN=1;this.NN=0;this.nx=!1;d=a-1;const c=b-1;for(let e=0;e<b;++e){const g=[];for(let k=0;k<a;++k){const m=Df.A(Df.ca.XS,this,k,e),n=k/d,q=e/c;m.si(n,q,n,q);g.push(m)}this.Zo.push(g)}}j(){Df.D(this.Zo)}pf(a){const b=this.Zo;let d=b[0];for(let c=1,e=b.length;c<e;++c){const g=b[c];let k=d[0],m=g[0];for(let n=1,q=g.length;n<q;++n){const r=d[n],w=g[n]; Ef.set(k.ah,k.dh,r.ah,r.dh,w.ah,w.dh,m.ah,m.dh);wf(a,k.T(),k.U(),k.eb(),r.T(),r.U(),r.eb(),w.T(),w.U(),w.eb(),m.T(),m.U(),m.eb(),Ef);k=r;m=w}d=g}}kd(){return{cols:this.yl,rows:this.Ql,points:this.Zo.map(a=>a.map(b=>b.kd()))}}xc(a){const b=this.yl,d=this.Ql;if(a.cols!==b||a.rows!==d)throw Error("mesh data wrong size");a=a.points;for(let c=0;c<d;++c){const e=a[c];for(let g=0;g<b;++g)Hf(this,g,c).xc(e[g])}}};"use strict"; const Mf=self.B,Nf=new Set(["rgba8","rgb8","rgba4","rgb5_a1","rgb565"]),Of=new Set(["nearest","bilinear","trilinear"]),Pf=new Set(["default","low","high"]),Qf=new Set(["clamp-to-edge","repeat","mirror-repeat"]); function Rf(a,b){let d,c;switch(a){case "rgba8":a=b.RGBA8;c=d=b.RGBA;b=b.UNSIGNED_BYTE;break;case "rgb8":a=b.RGB8;c=d=b.RGB;b=b.UNSIGNED_BYTE;break;case "rgba4":a=b.RGBA4;c=d=b.RGBA;b=b.UNSIGNED_SHORT_4_4_4_4;break;case "rgb5_a1":a=b.RGB5_A1;c=d=b.RGBA;b=b.UNSIGNED_SHORT_5_5_5_1;break;case "rgb565":a=b.RGB565;c=d=b.RGB;b=b.UNSIGNED_SHORT_5_6_5;break;default:throw Error("invalid pixel format");}return{EJ:a,nu:d,format:c,type:b}} const Tf={uu:"clamp-to-edge",vu:"clamp-to-edge",hh:"trilinear",gP:0,vJ:"rgba8",oy:!0,qy:"default",premultiplyAlpha:!0,HP:!1,width:-1,height:-1},Uf={premultiplyAlpha:!0,flipY:!1},Vf=new Set;function Wf(a){return"clamp-to-edge"!==a.xn||"clamp-to-edge"!==a.yn} function Xf(a,b){var d=Mf.Gj(a.ja)&&Mf.Gj(a.fa);b.texParameteri(b.TEXTURE_2D,b.TEXTURE_WRAP_S,Yf(b,a.xn));b.texParameteri(b.TEXTURE_2D,b.TEXTURE_WRAP_T,Yf(b,a.yn));"nearest"===a.Hd?(b.texParameteri(b.TEXTURE_2D,b.TEXTURE_MAG_FILTER,b.NEAREST),b.texParameteri(b.TEXTURE_2D,b.TEXTURE_MIN_FILTER,b.NEAREST),a.Rm=!1):(b.texParameteri(b.TEXTURE_2D,b.TEXTURE_MAG_FILTER,b.LINEAR),(d||2<=a.za.Ub)&&a.Rm?(b.hint(b.GENERATE_MIPMAP_HINT,Zf(a,b)),b.generateMipmap(b.TEXTURE_2D),b.texParameteri(b.TEXTURE_2D,b.TEXTURE_MIN_FILTER, "trilinear"!==a.Hd||a.za.rG?b.LINEAR_MIPMAP_NEAREST:b.LINEAR_MIPMAP_LINEAR)):(b.texParameteri(b.TEXTURE_2D,b.TEXTURE_MIN_FILTER,b.LINEAR),a.Rm=!1));(d=a.za.Gv)&&0<a.tF&&"nearest"!==a.Hd&&b.texParameterf(b.TEXTURE_2D,d.TEXTURE_MAX_ANISOTROPY_EXT,Math.min(a.tF,a.za.pH))}function Zf(a,b){if("default"===a.Rq)return a.Fi?b.NICEST:b.FASTEST;if("low"===a.Rq)return b.FASTEST;if("high"===a.Rq)return b.NICEST;throw Error("invalid mipmap quality");} function Yf(a,b){if("clamp-to-edge"===b)return a.CLAMP_TO_EDGE;if("repeat"===b)return a.REPEAT;if("mirror-repeat"===b)return a.MIRRORED_REPEAT;throw Error("invalid wrap mode");} function $f(a,b,d){if(!("undefined"!==typeof HTMLImageElement&&b instanceof HTMLImageElement||"undefined"!==typeof HTMLVideoElement&&b instanceof HTMLVideoElement||"undefined"!==typeof HTMLCanvasElement&&b instanceof HTMLCanvasElement||"undefined"!==typeof ImageBitmap&&b instanceof ImageBitmap||"undefined"!==typeof OffscreenCanvas&&b instanceof OffscreenCanvas||b instanceof ImageData))throw Error("invalid texture source");if(!a.Db||0>=a.Gd)throw Error("texture not created");if(a.Fi)throw Error("cannot update static texture"); d=Object.assign({},Uf,d);const c=b.width||b.videoWidth,e=b.height||b.videoHeight;var g=a.za.Ub;const k=a.za.ia;k.bindTexture(k.TEXTURE_2D,a.Db);k.pixelStorei(k.UNPACK_PREMULTIPLY_ALPHA_WEBGL,d.premultiplyAlpha);k.pixelStorei(k.UNPACK_FLIP_Y_WEBGL,!!d.flipY);d=Rf(a.Vo,k);g=2<=g?d.EJ:d.nu;try{if(a.ja===c&&a.fa===e){const m=Mf.Gj(a.ja)&&Mf.Gj(a.fa);k.texSubImage2D(k.TEXTURE_2D,0,0,0,d.format,d.type,b);(m||2<=a.za.Ub)&&a.Rm&&(k.hint(k.GENERATE_MIPMAP_HINT,Zf(a,k)),k.generateMipmap(k.TEXTURE_2D))}else{a.ja= c;a.fa=e;const m=Mf.Gj(a.ja)&&Mf.Gj(a.fa);if(!(2<=a.za.Ub)&&Wf(a)&&!m)throw Error("non-power-of-two tiled textures not supported");k.texImage2D(k.TEXTURE_2D,0,g,d.format,d.type,b);(m||2<=a.za.Ub)&&a.Rm&&(k.hint(k.GENERATE_MIPMAP_HINT,Zf(a,k)),k.generateMipmap(k.TEXTURE_2D))}}catch(m){console.error("Error updating WebGL texture: ",m)}k.bindTexture(k.TEXTURE_2D,null);a.za.Gk=null} Mf.ca.IE=class{constructor(a){this.za=a;this.Db=null;this.fa=this.ja=0;this.Fi=!0;this.yn=this.xn="clamp-to-edge";this.Hd="trilinear";this.tF=0;this.Vo="rgba8";this.Rm=!1;this.Rq="default";this.Gd=0}NE(){if(0<this.Gd)throw Error("texture still has references");if(!this.Db)throw Error("already deleted texture");Vf.delete(this);this.za.ia.deleteTexture(this.Db);this.Db=null}Ra(){return this.za}N(){return this.ja}M(){return this.fa}rD(){let a=this.ja*this.fa;switch(this.Vo){case "rgba8":a*=4;break;case "rgb8":a*= 3;break;case "rgba4":case "rgb5_a1":case "rgb565":a*=2}this.Rm&&(a+=Math.floor(a/3));return a}static zh(){Vf.clear()}};"use strict";const ag=self.Zk.Bn,bg=new Set(["nearest","bilinear","trilinear"]),cg={hh:"trilinear",alpha:!0,depth:!1,NC:!0,CP:!0,zY:0},dg=new Set;function eg(a){kf(a.za,a.Il,a.ja/a.fa);a.xN=a.za.Qs;a.zN=a.za.ax;a.wN=a.za.gw} function fg(a,b,d){if(a.ja!==b||a.fa!==d)a.ja=b,a.fa=d,eg(a),b=a.za.ia,b.bindFramebuffer(b.FRAMEBUFFER,a.Ci),a.Db?$f(a.Db,new ImageData(a.ja,a.fa)):(b.bindRenderbuffer(b.RENDERBUFFER,a.Ll),b.renderbufferStorage(b.RENDERBUFFER,a.rs?b.RGBA8:b.RGB8,a.ja,a.fa),b.bindRenderbuffer(b.RENDERBUFFER,null)),d=a.za.wi,a.og&&d&&(a.za.Pv?b.framebufferTexture2D(b.FRAMEBUFFER,b.DEPTH_STENCIL_ATTACHMENT,b.TEXTURE_2D,d,0):b.framebufferRenderbuffer(b.FRAMEBUFFER,b.DEPTH_STENCIL_ATTACHMENT,b.RENDERBUFFER,d)),b.bindFramebuffer(b.FRAMEBUFFER, null)} self.B.ca.ML=class{constructor(a){this.za=a;this.Ll=this.Db=this.zq=this.Ci=null;this.fa=this.ja=0;this.$A=!0;this.Hd="trilinear";this.rs=!0;this.og=!1;this.Cw=!0;this.Zm=0;this.Il=ag.create();this.wN=this.zN=this.xN=0}NE(){if(!this.Db&&!this.Ll)throw Error("already deleted render target");dg.delete(this);var a=this.za.ia;this.Db?(a.bindFramebuffer(a.FRAMEBUFFER,this.Ci),a.framebufferTexture2D(a.FRAMEBUFFER,a.COLOR_ATTACHMENT0,a.TEXTURE_2D,null,0),this.og&&(a.bindFramebuffer(a.FRAMEBUFFER,this.zq),a.framebufferTexture2D(a.FRAMEBUFFER, a.COLOR_ATTACHMENT0,a.TEXTURE_2D,null,0)),gg(this.za,this.Db),this.Db=null):this.Ll&&(a.bindFramebuffer(a.FRAMEBUFFER,this.Ci),a.framebufferRenderbuffer(a.FRAMEBUFFER,a.COLOR_ATTACHMENT0,a.RENDERBUFFER,null),this.og&&(a.bindFramebuffer(a.FRAMEBUFFER,this.zq),a.framebufferRenderbuffer(a.FRAMEBUFFER,a.COLOR_ATTACHMENT0,a.RENDERBUFFER,null)),a.deleteRenderbuffer(this.Ll),this.Ll=null);a.bindFramebuffer(a.FRAMEBUFFER,null);2<=this.za.Ub&&(a.bindFramebuffer(a.READ_FRAMEBUFFER,null),a.bindFramebuffer(a.DRAW_FRAMEBUFFER, null));a.deleteFramebuffer(this.Ci);this.og&&a.deleteFramebuffer(this.zq);a=this.za.Nc;a.zn=null;this.Ci=a.Xk=null}Ra(){return this.za}Qd(){return this.Db}MD(){return"nearest"!==this.Hd}N(){return this.ja}M(){return this.fa}rD(){return this.Db?this.Db.rD():this.ja*this.fa*(this.rs?4:3)}static zh(){dg.clear()}};"use strict";const hg=self.B; async function ig(a,b){const d=a.ia,c=b.MJ;var e=b.name;const g=d.createShader(d.FRAGMENT_SHADER);d.shaderSource(g,b.src);d.compileShader(g);b=d.createShader(d.VERTEX_SHADER);d.shaderSource(b,c);d.compileShader(b);const k=d.createProgram();d.attachShader(k,g);d.attachShader(k,b);d.bindAttribLocation(k,0,"aPos");d.bindAttribLocation(k,1,"aTex");d.bindAttribLocation(k,2,"aPoints");d.linkProgram(k);const m=a.DH;m?await jg(()=>d.getProgramParameter(k,m.COMPLETION_STATUS_KHR)):await hg.GE(5);if(!d.getShaderParameter(g, d.COMPILE_STATUS))throw e=d.getShaderInfoLog(g),d.deleteShader(g),d.deleteShader(b),d.deleteProgram(k),Error("Error compiling fragment shader: "+e);if(!d.getShaderParameter(b,d.COMPILE_STATUS))throw e=d.getShaderInfoLog(b),d.deleteShader(g),d.deleteShader(b),d.deleteProgram(k),Error("Error compiling vertex shader: "+e);if(!d.getProgramParameter(k,d.LINK_STATUS))throw e=d.getProgramInfoLog(k),d.deleteShader(g),d.deleteShader(b),d.deleteProgram(k),Error("Error linking shader program: "+e);(a=hg.rR(d.getProgramInfoLog(k)|| "").trim())&&!hg.GS(a)&&console.info(`[WebGL] Shader program '${e}' compilation log: `,a);d.deleteShader(g);d.deleteShader(b);return k}function kg(a,b){if(!a.aB)throw Error("not device transform shader");ng(a.pI,b);b=a.za;const d=b.N()/2,c=b.M()/2;b=mf(b,d,c,b.Ve(b.M()),d,c,b.M());ng(a.oI,b)}function og(a,b,d){a.pG&&!d||a.aB||(a.pI.la&&ng(a.pI,b),a.pG=!0)}function pg(a,b,d){a.oG&&!d||a.aB||(a.oI.la&&ng(a.oI,b),a.oG=!0)}function qg(a,b){return 0>b||b>=a.nr.length?null:a.nr[b].Hc()} function rg(a){a=a?"highmedp":"mediump";return["#ifdef GL_FRAGMENT_PRECISION_HIGH\n#define highmedp highp\n#else\n#define highmedp mediump\n#endif\nattribute highp vec3 aPos;",`attribute ${a} vec2 aTex;`,`varying ${a} vec2 vTex;`,"uniform highp mat4 matP;\nuniform highp mat4 matMV;\nvoid main(void) {\n\tgl_Position = matP * matMV * vec4(aPos, 1.0);\n\tvTex = aTex;\n}"].join("\n")} function sg(a){a=a?"highp":"mediump";return["#version 300 es\nin highp vec3 aPos;",`in ${a} vec2 aTex;`,`out ${a} vec2 vTex;`,"uniform highp mat4 matP;\nuniform highp mat4 matMV;\nvoid main(void) {\n\tgl_Position = matP * matMV * vec4(aPos, 1.0);\n\tvTex = aTex;\n}"].join("\n")} function tg(a,b,d){let c="";2<=a?c="#version 300 es\n":(b&&(c="#extension GL_EXT_frag_depth : enable\n"),d&&(c+="#extension GL_EXT_shader_texture_lod : enable\n#extension GL_OES_standard_derivatives : enable\n"));return c+` #ifdef GL_FRAGMENT_PRECISION_HIGH #define highmedp highp #else #define highmedp mediump #endif precision highmedp float; ${2<=a?"in":"varying"} vec2 vTex; ${2<=a?"out lowp vec4 outColor;":""} uniform lowp vec4 color; uniform lowp sampler2D samplerFront; uniform vec2 pixelSize; uniform vec2 tileSize; uniform vec2 tileSpacing; uniform float outlineThickness; const float PI = 3.1415926; lowp vec4 cospVec4(lowp vec4 a, lowp vec4 b, float x) { return (a + b + (a - b) * cos(x * PI)) / 2.0; } vec3 randVec3(vec2 seed) { return vec3(fract(sin(dot(seed.xy + vec2(0.1, 0.1), vec2(12.9898,78.233))) * 43758.5453), fract(sin(dot(seed.yx + vec2(0.1, 0.1), vec2(12.9898,-78.233))) * 43758.5453), fract(sin(dot(seed.xy + vec2(0.1, 0.1), vec2(-12.9898,-78.233))) * 43758.5453)); } lowp vec4 sampleTile(vec2 tile, vec2 uv, vec2 ddx, vec2 ddy) { vec2 posRandom = tileSize; float angleRandom = outlineThickness; vec3 rand = (randVec3(floor(tile + 0.5)) - 0.5) * 2.0; float angle = angleRandom * rand.z * PI; float sin_a = sin(angle); float cos_a = cos(angle); float aspect = pixelSize.x / pixelSize.y; vec2 mid = tile + vec2(0.5, 0.5); vec2 dp = uv - mid; dp.x /= aspect; vec2 r = vec2(dp.x * cos_a - dp.y * sin_a, dp.y * cos_a + dp.x * sin_a); r.x *= aspect; vec2 p = mid + r + (posRandom * rand.xy / 2.0); ${2<=a?"return textureGrad(samplerFront, p, ddx, ddy);":""} ${2>a&&d?"return texture2DGradEXT(samplerFront, p, ddx, ddy);":""} ${2>a&&!d?"return texture2D(samplerFront, p);":""} } void main(void) { ${2>a?"lowp vec4 outColor;":""} float blendMarginX = tileSpacing.x; float blendMarginY = tileSpacing.y; vec2 tile = floor(vTex); vec2 tex = fract(vTex); vec2 ddx = ${2<=a||d?"dFdx(vTex)":"vec2(0.0, 0.0)"}; vec2 ddy = ${2<=a||d?"dFdy(vTex)":"vec2(0.0, 0.0)"}; vec4 curTile = sampleTile(tile, vTex, ddx, ddy); bool inLeftMargin = (tex.x < blendMarginX); bool inRightMargin = (tex.x > 1.0 - blendMarginX); bool inTopMargin = (tex.y < blendMarginY); bool inBottomMargin = (tex.y > 1.0 - blendMarginY); if (inLeftMargin) { lowp vec4 leftTile = sampleTile(tile + vec2(-1.0, 0.0), vTex, ddx, ddy); float leftMix = (tex.x / (blendMarginX * 2.0)) + 0.5; lowp vec4 leftMixedTile = cospVec4(leftTile, curTile, leftMix); if (inTopMargin) { lowp vec4 topTile = sampleTile(tile + vec2(0.0, -1.0), vTex, ddx, ddy); lowp vec4 topLeftTile = sampleTile(tile + vec2(-1.0, -1.0), vTex, ddx, ddy); lowp vec4 topLeftMixedTile = cospVec4(topLeftTile, topTile, leftMix); outColor = cospVec4(topLeftMixedTile, leftMixedTile, (tex.y / (blendMarginY * 2.0)) + 0.5); } else if (inBottomMargin) { lowp vec4 bottomTile = sampleTile(tile + vec2(0.0, 1.0), vTex, ddx, ddy); lowp vec4 bottomLeftTile = sampleTile(tile + vec2(-1.0, 1.0), vTex, ddx, ddy); lowp vec4 bottomLeftMixedTile = cospVec4(bottomLeftTile, bottomTile, leftMix); outColor = cospVec4(leftMixedTile, bottomLeftMixedTile, (tex.y - (1.0 - blendMarginY)) / (blendMarginY * 2.0)); } else { outColor = leftMixedTile; } } else if (inRightMargin) { lowp vec4 rightTile = sampleTile(tile + vec2(1.0, 0.0), vTex, ddx, ddy); float rightMix = (tex.x - (1.0 - blendMarginX)) / (blendMarginX * 2.0); lowp vec4 rightMixedTile = cospVec4(curTile, rightTile, rightMix); if (inTopMargin) { lowp vec4 topTile = sampleTile(tile + vec2(0.0, -1.0), vTex, ddx, ddy); lowp vec4 topRightTile = sampleTile(tile + vec2(1.0, -1.0), vTex, ddx, ddy); lowp vec4 topRightMixedTile = cospVec4(topTile, topRightTile, rightMix); outColor = cospVec4(topRightMixedTile, rightMixedTile, (tex.y / (blendMarginY * 2.0)) + 0.5); } else if (inBottomMargin) { lowp vec4 bottomTile = sampleTile(tile + vec2(0.0, 1.0), vTex, ddx, ddy); lowp vec4 bottomRightTile = sampleTile(tile + vec2(1.0, 1.0), vTex, ddx, ddy); lowp vec4 bottomRightMixedTile = cospVec4(bottomTile, bottomRightTile, rightMix); outColor = cospVec4(rightMixedTile, bottomRightMixedTile, (tex.y - (1.0 - blendMarginY)) / (blendMarginY * 2.0)); } else { outColor = rightMixedTile; } } else if (inTopMargin) { lowp vec4 topTile = sampleTile(tile + vec2(0.0, -1.0), vTex, ddx, ddy); outColor = cospVec4(topTile, curTile, (tex.y / (blendMarginY * 2.0)) + 0.5); } else if (inBottomMargin) { lowp vec4 bottomTile = sampleTile(tile + vec2(0.0, 1.0), vTex, ddx, ddy); outColor = cospVec4(curTile, bottomTile, (tex.y - (1.0 - blendMarginY)) / (blendMarginY * 2.0)); } else { outColor = curTile; } outColor *= color; ${2>a?"gl_FragColor = outColor;":""} ${2<=a?"gl_FragDepth = (outColor.a == 0.0 ? 1.0 : gl_FragCoord.z);":""} ${2>a&&b?"gl_FragDepthEXT = (outColor.a == 0.0 ? 1.0 : gl_FragCoord.z);":""} } `} hg.ca.NL=class extends hg.ca.pU{static async Qa(a,b){const d=await ig(a,b);return new hg.ca.NL(a,d,b)}constructor(a,b,d){super(a,d);const c=a.ia;var e=a.Nc;Bf(a);c.useProgram(b);this.ia=c;this.Xd=b;this.aB="<default-device-transform>"===d.name;const g=c.getAttribLocation(b,"aPos"),k=c.getAttribLocation(b,"aTex");this.lH=c.getAttribLocation(b,"aPoints");-1!==g&&(c.bindBuffer(c.ARRAY_BUFFER,a.zC),c.vertexAttribPointer(g,3,c.FLOAT,!1,0,0),c.enableVertexAttribArray(g));-1!==k&&(c.bindBuffer(c.ARRAY_BUFFER,a.mC), c.vertexAttribPointer(k,2,c.FLOAT,!1,0,0),c.enableVertexAttribArray(k));-1!==this.lH&&(c.bindBuffer(c.ARRAY_BUFFER,a.NB),c.vertexAttribPointer(this.lH,4,c.FLOAT,!1,0,0),c.enableVertexAttribArray(this.lH));c.bindBuffer(c.ARRAY_BUFFER,null);this.pI=new hg.ca.nc(this,"matP","mat4");this.oI=new hg.ca.nc(this,"matMV","mat4");this.mr=new hg.ca.nc(this,"color","vec4");this.uX=new hg.ca.nc(this,"samplerFront","sampler");this.rI=new hg.ca.nc(this,"pointTexStart","vec2");this.qI=new hg.ca.nc(this,"pointTexEnd", "vec2");this.sI=new hg.ca.nc(this,"zElevation","float");this.Ux=new hg.ca.nc(this,"tileSize","vec2");this.Vx=new hg.ca.nc(this,"tileSpacing","vec2");this.nI=new hg.ca.nc(this,"color2_","vec4");this.Tx=new hg.ca.nc(this,"outlineThickness","float");this.eu=new hg.ca.nc(this,"samplerBack","sampler");this.tX=new hg.ca.nc(this,"samplerDepth","sampler");this.op=new hg.ca.nc(this,"destStart","vec2");this.np=new hg.ca.nc(this,"destEnd","vec2");this.Vk=new hg.ca.nc(this,"srcStart","vec2");this.sn=new hg.ca.nc(this, "srcEnd","vec2");this.un=new hg.ca.nc(this,"srcOriginStart","vec2");this.tn=new hg.ca.nc(this,"srcOriginEnd","vec2");this.bh=new hg.ca.nc(this,"pixelSize","vec2");this.up=new hg.ca.nc(this,"seconds","float");this.pp=new hg.ca.nc(this,"devicePixelRatio","float");this.rp=new hg.ca.nc(this,"layerScale","float");this.qp=new hg.ca.nc(this,"layerAngle","float");this.tp=new hg.ca.nc(this,"layoutStart","vec2");this.sp=new hg.ca.nc(this,"layoutEnd","vec2");this.wX=new hg.ca.nc(this,"zNear","float");this.vX= new hg.ca.nc(this,"zFar","float");this.wW=!!(this.bh.la||this.up.la||this.eu.la||this.op.la||this.np.la||this.Vk.la||this.sn.la||this.un.la||this.tn.la||this.pp.la||this.rp.la||this.qp.la||this.tp.la||this.sp.la);b=d.parameters||[];this.nr=[];this.vI=this.bh.la||this.Vk.la||this.sn.la||this.un.la||this.tn.la;this.oG=this.pG=!1;ug(this.mr);ug(this.nI);vg(this.uX,0);vg(this.eu,1);vg(this.tX,2);wg(this.rI,0,0);wg(this.qI,1,1);xg(this.sI,0);wg(this.Ux,0,0);wg(this.Vx,0,0);wg(this.op,0,0);wg(this.np,1, 1);wg(this.Vk,0,0);wg(this.sn,0,0);wg(this.un,0,0);wg(this.tn,0,0);wg(this.bh,0,0);xg(this.pp,1);xg(this.wX,a.ax);xg(this.vX,a.gw);xg(this.rp,1);xg(this.qp,0);xg(this.up,0);wg(this.tp,0,0);wg(this.sp,0,0);xg(this.Tx,1);for(const m of b)b=m[2],a=new hg.ca.nc(this,m[0],b),"color"===b?(b=a,b.la&&(b.mb[0]=0,b.mb[1]=0,b.mb[2]=0,b.Ff.set(b.mb),b.ia.uniform3f(b.rj,0,0,0))):xg(a,0),this.nr.push(a);this.aB?kg(this,e.ey):(og(this,e.ey,!0),pg(this,e.GC,!0));e=e.bi;c.useProgram(e?e.Xd:null)}j(){this.ia.deleteProgram(this.Xd); this.Xd=null;var a=this.za;const b=a.oq.indexOf(this);-1!==b&&a.oq.splice(b,1);a.Ax.delete(this.qa());this.ia=null;super.j()}wh(){return this.Xd}};"use strict";const yg=self.B,zg=self.Zk.Bn,Ag=new Map([["float",1],["percent",1],["sampler",1],["vec2",2],["vec3",3],["color",3],["vec4",4],["mat4",16]]);function ug(a){a.la&&(a.mb[0]=1,a.mb[1]=1,a.mb[2]=1,a.mb[3]=1,a.Ff.set(a.mb),a.ia.uniform4f(a.rj,1,1,1,1))}function vg(a,b){a.la&&(a.mb[0]=b,a.Ff.set(a.mb),a.ia.uniform1i(a.rj,b))} function wg(a,b,d){a.la&&(a.mb[0]=b,a.mb[1]=d,a.Ff.set(a.mb),a.ia.uniform2f(a.rj,b,d))}function xg(a,b){a.la&&(a.mb[0]=b,a.Ff.set(a.mb),a.ia.uniform1f(a.rj,b))}function Bg(a,b,d){a=a.Ff;return a[0]===Math.fround(b)&&a[1]===Math.fround(d)}function Cg(a,b,d){a=a.Ff;a[0]=b;a[1]=d}function ng(a,b){const d=a.mb;zg.Yk(d,b)||(yg.VY(d,b),a.ia.uniformMatrix4fv(a.rj,!1,b))} function Dg(a,b,d,c,e){b=Math.fround(b);d=Math.fround(d);c=Math.fround(c);e=Math.fround(e);const g=a.mb;if(g[0]!==b||g[1]!==d||g[2]!==c||g[3]!==e)g[0]=b,g[1]=d,g[2]=c,g[3]=e,a.ia.uniform4f(a.rj,b,d,c,e)}function Eg(a,b){b=Math.fround(b);const d=a.mb;d[0]!==b&&(d[0]=b,a.ia.uniform1f(a.rj,b))}function Fg(a,b,d){b=Math.fround(b);d=Math.fround(d);const c=a.mb;if(c[0]!==b||c[1]!==d)c[0]=b,c[1]=d,a.ia.uniform2f(a.rj,b,d)} yg.ca.nc=class{constructor(a,b,d){if(!Ag.has(d))throw Error("invalid uniform type");this.xb=a;this.ia=this.xb.ia;this.Oa=b;this.Aa=d;this.JG="color"===this.Aa;this.rj=this.ia.getUniformLocation(this.xb.wh(),b);this.la=!!this.rj;a=Ag.get(d);this.mb=new Float32Array(a);this.Ff=new Float32Array(a)}j(){this.rj=this.ia=this.xb=null}Hc(){return this.Aa}};"use strict";const Gg=self.B,Hg=self.Zk,Ig=Hg.zy,Jg=Hg.Bn; Gg.ca.GQ=class{constructor(a){this.Cp=a;this.GC=Jg.create();this.ey=Jg.create();this.Xk=this.zn=null;this.DP=!1;this.FC=Ig.gh(1,1,1,1);this.bi=null;this.wJ=new Gg.Rect;this.clearColor=Gg.A(Gg.kb,0,0,0,0)}}; Gg.ca.bV=class{constructor(a){const b=new ArrayBuffer(96);this.Aa=0;this.Nc=a;this.ia=a.Cp.ia;this.Om=this.Ee=0;this.tg=null;this.De=new Float32Array(b,0,16);this.Dm=new Float32Array(b,64,4);this.AO=new Float32Array(b,80,4);this.ZB=[]}Ba(){switch(this.Aa){case 1:var a=this.ia;a.drawElements(a.TRIANGLES,this.Om,a.UNSIGNED_SHORT,this.Ee);break;case 2:a=this.ia;var b=this.tg;a.bindTexture(a.TEXTURE_2D,b?b.Db:null);break;case 3:a=this.Dm;b=this.Nc;Ig.xa(b.FC,a);b=b.bi;b.mr.la&&Dg(b.mr,a[0],a[1],a[2], a[3]);break;case 4:this.ia.blendFunc(this.Ee,this.Om);break;case 5:a=this.Dm;this.ia.viewport(a[0],a[1],a[2],a[3]);break;case 6:a=this.Nc;b=a.Cp.oq;var d=a.bi,c=this.De;for(let q=0,r=b.length;q<r;++q){var e=b[q];e===d?og(e,c,!0):e.pG=!1}Jg.xa(a.ey,c);break;case 7:a=this.Nc;b=a.Cp.oq;d=a.bi;c=this.De;for(let q=0,r=b.length;q<r;++q)e=b[q],e===d?pg(e,c,!0):e.oG=!1;Jg.xa(a.GC,c);break;case 8:a=this.ia;b=this.tg;d=this.Nc;b?(d.zn=b.Ci,d.Xk=b.zq,d.DP&&d.Xk?a.bindFramebuffer(a.FRAMEBUFFER,d.Xk):a.bindFramebuffer(a.FRAMEBUFFER, d.zn)):(d.zn=null,d.Xk=null,a.bindFramebuffer(a.FRAMEBUFFER,null));break;case 9:a=this.ia;var g=this.De;b=this.Nc.clearColor;d=g[0];c=g[1];e=g[2];g=g[3];dc(b,d,c,e,g)||(a.clearColor(d,c,e,g),Vb(b,d,c,e,g));a.clear(a.COLOR_BUFFER_BIT);break;case 10:a=this.ia;b=this.Nc;d=b.Cp.cC;a.useProgram(d.Xd);og(d,b.ey,!1);pg(d,b.GC,!1);c=b.wJ;d.rI.la&&Fg(d.rI,c.Y,c.V);d.qI.la&&Fg(d.qI,c.ma,c.ka);c=this.De[0];d.sI.la&&Eg(d.sI,c);d.mr.la&&(c=b.FC,Dg(d.mr,c[0],c[1],c[2],c[3]));a.drawArrays(a.POINTS,this.Ee/4,this.Om); a.useProgram(b.bi.Xd);break;case 11:b=this.ia;d=this.Nc;a=this.tg;d.bi=a;b.useProgram(a.Xd);og(a,d.ey,!1);pg(a,d.GC,!1);a.mr.la&&(b=d.FC,Dg(a.mr,b[0],b[1],b[2],b[3]));break;case 12:a=this.Nc.bi;b=this.ia;d=this.De;c=this.Dm;e=this.AO;if(a.eu.la){g=this.Nc.Cp;var k=this.tg;g.Lo!==k&&(b.activeTexture(b.TEXTURE1),b.bindTexture(b.TEXTURE_2D,k?k.Db:null),g.Lo=k,b.activeTexture(b.TEXTURE0))}a.bh.la&&Fg(a.bh,d[0],d[1]);a.op.la&&Fg(a.op,d[2],d[3]);a.np.la&&Fg(a.np,d[4],d[5]);a.pp.la&&Eg(a.pp,this.Om);a.rp.la&& Eg(a.rp,d[6]);a.qp.la&&Eg(a.qp,d[7]);a.Vk.la&&Fg(a.Vk,d[12],d[13]);a.sn.la&&Fg(a.sn,d[14],d[15]);a.un.la&&Fg(a.un,e[0],e[1]);a.tn.la&&Fg(a.tn,e[2],e[3]);a.tp.la&&Fg(a.tp,c[0],c[1]);a.sp.la&&Fg(a.sp,c[2],c[3]);a.up.la&&Eg(a.up,this.Ee);break;case 13:a=this.Nc.bi.nr;b=this.ZB;for(let q=0,r=a.length;q<r;++q)if(d=a[q],g=b[q],d.JG){if(c=g.hb,e=g.lb,g=g.gb,c=Math.fround(c),e=Math.fround(e),g=Math.fround(g),k=d.mb,k[0]!==c||k[1]!==e||k[2]!==g)k[0]=c,k[1]=e,k[2]=g,d.ia.uniform3f(d.rj,c,e,g)}else Eg(d,g); break;case 14:a=this.ia;b=this.tg;d=this.Nc.zn;b!==d&&a.bindFramebuffer(a.FRAMEBUFFER,b);a.invalidateFramebuffer(a.FRAMEBUFFER,[a.COLOR_ATTACHMENT0]);b!==d&&a.bindFramebuffer(a.FRAMEBUFFER,d);break;case 15:a=this.De;this.Nc.wJ.set(a[0],a[1],a[2],a[3]);break;case 16:a=this.Nc.bi;b=this.De;a.Vk.la&&Fg(a.Vk,b[0],b[1]);a.bh.la&&Fg(a.bh,b[4],b[5]);a.Ux.la&&Fg(a.Ux,b[6],b[7]);a.Vx.la&&Fg(a.Vx,b[8],b[9]);break;case 17:var m=this.De;c=this.ZB;a=this.ia;e=m[0];b=m[1];g=m[2];d=m[3];k=0!==m[4];m=0!==m[5];const n= c[1];a.bindFramebuffer(a.READ_FRAMEBUFFER,c[0]);a.bindFramebuffer(a.DRAW_FRAMEBUFFER,n);m?a.blitFramebuffer(0,0,e,b,0,0,g,d,a.COLOR_BUFFER_BIT,k?a.LINEAR:a.NEAREST):(c=Math.min(e,g),e=Math.min(b,d),g=Math.max(b-d,0),b=Math.max(d-b,0),a.blitFramebuffer(0,g,c,e+g,0,b,c,e+b,a.COLOR_BUFFER_BIT,a.NEAREST));break;case 18:this.tg.fD();this.tg=null;break;case 19:this.tg.Ny();this.tg=null;break;case 20:a=this.Nc.bi;b=this.De;a.bh.la&&Fg(a.bh,b[0],b[1]);a.Tx.la&&Eg(a.Tx,b[2]);break;case 21:a=this.Dm;b=this.Nc.bi; b.nI.la&&Dg(b.nI,a[0],a[1],a[2],a[3]);break;case 22:a=this.ia;(b=0!==this.Ee)||a.depthMask(!0);a.clear(a.DEPTH_BUFFER_BIT);b||a.depthMask(!1);break;case 23:a=this.ia;0===this.Ee?(a.disable(a.DEPTH_TEST),a.depthMask(!1)):(a.enable(a.DEPTH_TEST),a.depthMask(!0));break;case 24:a=this.ia;b=this.Nc;d=b.Cp;c=0!==this.Ee;b.DP=c;a.activeTexture(a.TEXTURE2);c?(b.Xk&&a.bindFramebuffer(a.FRAMEBUFFER,b.Xk),a.bindTexture(a.TEXTURE_2D,d.wi)):(a.bindTexture(a.TEXTURE_2D,null),b.Xk&&a.bindFramebuffer(a.FRAMEBUFFER, b.zn));a.activeTexture(a.TEXTURE0);break;case 25:a=this.ia;a.clear(a.STENCIL_BUFFER_BIT);a.enable(a.STENCIL_TEST);a.stencilFunc(a.ALWAYS,1,1);a.stencilOp(a.KEEP,a.KEEP,a.REPLACE);a.colorMask(!1,!1,!1,!1);break;case 26:a=this.ia;a.colorMask(!0,!0,!0,!0);a.stencilFunc(a.EQUAL,1,1);a.stencilOp(a.KEEP,a.KEEP,a.KEEP);break;case 27:a=this.ia;a.disable(a.STENCIL_TEST);break;case 28:a=this.ia;b=this.De;1===this.Ee?(a.enable(a.SCISSOR_TEST),a.scissor(b[0],b[1],b[2],b[3])):a.disable(a.SCISSOR_TEST);break;case 29:a= this.Nc.bi,b=this.De,a.bh.la&&Fg(a.bh,b[0],b[1]),a.Ux.la&&Fg(a.Ux,b[2],b[3]),a.Tx.la&&Eg(a.Tx,b[4]),a.Vx.la&&Fg(a.Vx,b[5],b[6])}}};"use strict";const Kg=self.B,Lg=new Set("serif sans-serif monospace cursive fantasy system-ui ui-serif ui-sans-serif ui-monospace ui-rounded math emoji fangsong".split(" ")),Mg={timeout:60},Ng=new Kg.kb(0,0,0,1),Og=new Set(["left","center","right"]),Pg=new Set(["top","center","bottom"]),Qg=new Set(["word","character"]),Rg=new Set; Kg.uR&&Kg.uR.addEventListener("fontload",a=>{a=a.font.qa();for(const b of Rg)(b.Df||Kg.zg(b.EA,a))&&Sg(b)});function Tg(a,b,d,c,e,g){b?"Gecko"===Kg.O.kh?a.strokeText(d,c,e,g):a.strokeText(d,c,e):"Gecko"===Kg.O.kh?a.fillText(d,c,e,g):a.fillText(d,c,e)}let Ug=!1,Vg=!1;function Sg(a){a.Bm=!0;a.Te.Nd();a.nC=!0} function Wg(a,b,d){a.ln||(a.ln=Kg.Mj(16,16));let c=!1;if(a.vN!==b||a.uN!==d)a.vN=b,a.uN=d,a.ln.width=b,a.ln.height=d,c=!0;a.Qe||(a.Qe=a.ln.getContext("2d"),c=!0);c?(a.Qe.textBaseline=a.Df?"alphabetic":"top",a.Qe.font=a.bH,a.Qe.fillStyle=a.qB,a.Qe.strokeStyle=a.qB,a.Qe.globalAlpha=a.cH,a.Qe.lineWidth=a.Ow):a.Qe.clearRect(0,0,b,d)}function Xg(a,b){b||(b="serif");a.EA!==b&&(a.EA=b,Sg(a))}function Yg(a,b){b=!!b;a.Di!==b&&(a.Di=b,Sg(a))}function Zg(a,b){b=!!b;a.Ei!==b&&(a.Ei=b,Sg(a))} function $g(a){return a.pO*a.gu*self.devicePixelRatio}function ah(a,b,d){let c=[];(a.Di||a.ao(d,"b"))&&c.push("bold");(a.Ei||a.ao(d,"i"))&&c.push("italic");var e=a.yc(d,"size");e=(e?parseFloat(e.Zc):a.FA)*a.GA;b?c.push(e+"pt"):c.push(e*$g(a)+"pt");b=a.EA;(d=a.yc(d,"font"))&&d.Zc&&(b=d.Zc,a.rJ&&!a.rF.has(b)&&(a.rJ(b),a.rF.add(b)));b&&(Lg.has(b)?c.push(b):c.push('"'+b+'"'));return c.join(" ")}function bh(a,b){if(!Og.has(b))throw Error("invalid horizontal alignment");a.qd!==b&&(a.qd=b,a.Bm=!0)} function ch(a,b){if(!Pg.has(b))throw Error("invalid vertical alignment");a.Yc!==b&&(a.Yc=b,a.Bm=!0)}function dh(a){a.ns();return xe(a.Te)}function eh(a){if(!(a.Db&&!a.Bm&&!a.nC||a.fu||0>=a.ja||0>=a.fa||(a.Bm=!1,a.fu))){Wg(a,Math.max(Kg.pu(Math.ceil(a.ja)),128),Math.max(Kg.pu(Math.ceil(a.fa)),64));a.ns();fh(a);if(!gh(a.za)){a.Db||(a.Db=hh(a.za,a.ln.width,a.ln.height,{oy:!0,qy:"high"}));var b=a.ln,d=a.Db;Bf(a.za);$f(d,b,void 0);a.Ni.set(0,0,a.ja/a.Db.N(),a.fa/a.Db.M());a.QC&&a.QC()}a.hI.bd()}} function fh(a){a.xi=0;const b=$g(a),d=(4+a.Vd)*b;var c=0;const e=a.Te.Sh;if(0!==e.length){var g=a.Df&&ih(a),k=e[0].height*b;"center"===a.Yc?(c=e.reduce((m,n)=>m+n.height*b+d,0)-d,c=Math.max(a.fa/2-c/2,0),g&&(k=e[0].ih*b)):"bottom"===a.Yc&&(c=e.reduce((m,n)=>m+n.height*b+d,0)-a.Vd*b,c=a.fa-c-(g?e.ie(-1).Rf*b:0)-2);for(let m=0,n=e.length;m<n;++m){g=e[m];const q=g.height*b,r=c;if(a.Df){if(c+=0===m?k:q,0<m&&c>a.fa-4*b)break}else if(0<m&&c>=a.fa-q)break;0<=r&&jh(a,g,c,b);a.Df||(c+=q);c+=d}}} function kh(a){a.Ym||(a.Ym=Kg.Mj(16,16).getContext("2d"),a.Xw=Kg.Mj(16,16).getContext("2d"),a.Ym.textBaseline=a.Df?"alphabetic":"top",a.Xw.textBaseline="top")}function ih(a){Ug||(Ug=!0,kh(a),a=a.Ym.measureText("test"),Vg="number"===typeof a.fontBoundingBoxAscent&&"number"===typeof a.fontBoundingBoxDescent);return Vg}function lh(a,b){a.qB!==b&&(a.qB=b,a.Qe.fillStyle=b,a.Qe.strokeStyle=b)} function jh(a,b,d,c){let e=0;"center"===a.qd?e=(a.ja-b.width*c)/2:"right"===a.qd&&(e=a.ja-b.width*c);b.En=e;b.Fn=d;for(const ea of b.Ar){a:{var g=a,k=ea,m=e,n=d,q=c,r=b.height;k.En=m;k.Fn=n;const Y=g.Qe;var w=r/16;r=k.width*q;const na=k.height*q,kb=k.height/16;var x=(4+g.Vd)*q,z=k.tc,E=k.Kd;if(-1!==g.Mh){if(g.xi>=g.Mh)break a;g.xi+E.length>g.Mh&&(E=E.slice(0,g.Mh-g.xi),r=g.wv(E,z).width*q);g.xi+=E.length}var C=g.yc(z,"background"),G=g.ao(z,"u");k=g.ao(z,"s");if((!Kg.GD(E)||C||G||k)&&!g.ao(z,"hide")){E= E.join("");var I=g.yc(z,"offsetx");m+=I?parseFloat(I.Zc)*q:0;I=g.yc(z,"offsety");n+=I?parseFloat(I.Zc)*q:0;C&&(lh(g,C.Zc),Y.fillRect(m,n-na,r,na+x));I=g.yc(z,"color");lh(g,I?I.Zc:g.mA);C=g.yc(z,"opacity");x=g;C=C?parseFloat(C.Zc)/100:1;x.cH!==C&&(x.cH=C,x.Qe.globalAlpha=C);x=(x=g.yc(z,"linethickness"))?parseFloat(x.Zc):1;if(C=g.ao(z,"stroke")){var J=g,L=.5*kb*x*$g(g);J.Ow!==L&&(J.Ow=L,J.Qe.lineWidth=L)}J=g;L=ah(g,!1,z);J.bH!==L&&(J.bH=L,J.Qe.font=L);Tg(Y,C,E,m,n,r);!C&&(J=g,L=.5*kb*x*$g(g),J.Ow!== L&&(J.Ow=L,J.Qe.lineWidth=L),z=g.yc(z,"outline"))&&(lh(g,z.Zc),Tg(Y,!0,E,m,n,r));lh(g,I?I.Zc:g.mA);G&&(g=Y,z=m,G=n+q*w,E=r,w=q*w*x,C?g.strokeRect(z,G,E,w):g.fillRect(z,G,E,w));k&&(q*=kb,Y.fillRect(m,n-na/4+q/2-q*x/2,r,q*x))}}e+=ea.width*c}} Kg.ca.ZD=class{constructor(a,b){b=Object.assign({},Mg,b);this.za=a;this.EA="Arial";this.FA=16;this.GA=1;this.Vd=0;this.Ei=this.Di=!1;this.mA="black";this.Df=!1;this.rJ=null;this.rF=new Set;this.qd="left";this.Yc="top";this.$a="";this.ik=null;this.Te=Kg.A(Kg.nv);this.ur="word";this.nC=!1;this.Mh=-1;this.fa=this.ja=this.Em=this.lg=this.xi=0;this.gu=1;this.Bm=!1;this.Xw=this.Ym=this.Qe=this.ln=null;this.uN=this.vN=-1;this.qB=this.yN=this.bH="";this.Ow=this.cH=1;this.Yw=(d,c)=>this.wv(d,c);this.Db=null; this.Ni=new Kg.Rect;this.pO=1;this.hI=new Kg.nS(()=>{this.Zi();Wg(this,8,8)},b.timeout);this.QC=null;this.fu=!1;Rg.add(this)}j(){this.rJ=null;this.rF.clear();this.Yw=this.Xw=this.Ym=this.Qe=this.ln=this.ik=null;this.hI.j();this.QC=null;this.Zi();this.Te.Nd();this.za=this.Te=null;this.fu=!0;Rg.delete(this)}hE(a){a=!!a;this.Df!==a&&(a=(this.Df=a)?"alphabetic":"top",this.Qe&&(this.Qe.textBaseline=a),this.Ym&&(this.Ym.textBaseline=a),Sg(this))}jE(a){.1>a&&(a=.1);this.FA!==a&&(this.FA=a,Sg(this))}gs(a){this.Vd!== a&&(this.Vd=a,this.Bm=!0)}bq(a){a=Math.floor(a);this.Mh!==a&&(this.Mh=a,this.Bm=!0)}yc(a,b){for(let d=a.length-1;0<=d;--d){const c=a[d];if(c.tag===b)return c}return null}ao(a,b){return!!this.yc(a,b)}ni(a){a instanceof Kg.kb&&(a=`rgb(${100*(Rb.Ic(void 0)?NaN:a.hb)}%, ${100*(Rb.Ic(void 0)?NaN:a.lb)}%, ${100*(Rb.Ic(void 0)?NaN:a.gb)}%)`);this.mA!==a&&(this.mA=a,this.Bm=!0)}yE(a){if(!Qg.has(a))throw Error("invalid word wrap mode");this.ur!==a&&(this.ur=a,Sg(this))}aj(a){this.$a!==a&&(this.$a=a,Sg(this))}ac(a, b,d){"undefined"===typeof d&&(d=1);if(!(0>=a||0>=a||this.lg===a&&this.Em===b&&this.gu===d)){var c=this.lg;this.lg=a;this.Em=b;this.gu=d;a=self.devicePixelRatio;this.ja=this.lg*this.gu*a;this.fa=this.Em*this.gu*a;a=Math.max(this.ja,this.fa);b=Math.min(this.za.CB,4096);d=1;a>b&&(d=b/a,this.ja=Math.min(this.ja*d,b),this.fa=Math.min(this.fa*d,b));this.pO=d;this.lg!==c?Sg(this):this.Bm=!0}}N(){return this.ja}M(){return this.fa}zD(){this.ns();return ye(this.Te)+this.Te.Sh.length*(this.Vd+4)-this.Vd}Qd(){this.hI.bd(); eh(this);return this.Db}DD(a,b){eh(this);const d=$g(this);var c=this.Te.Sh;for(const e of c)if(c=e.Rf*d,b>=e.Fn-e.height*d+c&&b<e.Fn+c)for(const g of e.Ar)if(a>=g.En&&a<g.En+g.width*d)return g;return null}*fy(a){eh(this);var b=this.Te.Sh;for(const d of b)for(const c of d.Ar)(b=this.yc(c.tc,"tag"))&&Kg.zg(b.Zc,a)&&(yield c)}pD(a,b){for(const d of this.fy(a)){if(0===b)return d;--b}return null}mD(a){let b=0;for(const d of this.fy(a))++b;return b}ns(){this.nC&&(kh(this),!this.Df||this.ik&&this.ik.toString()=== this.$a||(this.ik=new Kg.Gp(this.$a)),this.Te.nv(this.Df?oe(this.ik):this.$a,this.Yw,this.lg,this.ur,0),this.nC=!1)}wv(a,b){a=a.join("");var d=ah(this,!0,b);this.yN!==d&&(this.yN=d,this.Ym.font=d,this.Xw.font=d);b=this.yc(b,"size");b=(b?parseFloat(b.Zc):this.FA)*this.GA;d=this.Ym.measureText(a);let c=0;this.Df&&ih(this)&&(c=d.fontBoundingBoxAscent-this.Xw.measureText(a).fontBoundingBoxAscent);return{width:d.width,height:4/3*b,di:d.fontBoundingBoxAscent||0,Rf:d.fontBoundingBoxDescent||0,ih:c}}Xf(){return this.Ni}Zi(){this.Db&& (gh(this.za)||gg(this.za,this.Db),this.Db=null)}static zh(){for(const a of Rg)a.Zi()}};"use strict";const mh=self.B;function nh(a){a.vj&&(1===a.Ub?a.sc.deleteQueryEXT(a.vj):a.ia.deleteQuery(a.vj),a.vj=null)} class oh{constructor(a){this.ia=a.ia;this.Ub=a.Ub;this.sc=a.sc;this.vj=null;this.pw=this.Mb=!1;this.VB=0;this.vj=1===this.Ub?this.sc.createQueryEXT():this.ia.createQuery()}j(){nh(this);this.sc=this.ia=null;this.pw=!1}fD(){if(this.Mb)throw Error("query already active");1===this.Ub?this.sc.beginQueryEXT(this.sc.TIME_ELAPSED_EXT,this.vj):this.ia.beginQuery(this.sc.TIME_ELAPSED_EXT,this.vj);this.Mb=!0}Ny(){if(!this.Mb)throw Error("query not active");1===this.Ub?this.sc.endQueryEXT(this.sc.TIME_ELAPSED_EXT): this.ia.endQuery(this.sc.TIME_ELAPSED_EXT);this.Mb=!1}jD(){if(this.vj&&!this.pw&&!this.Mb){var a=1===this.Ub?this.sc.getQueryObjectEXT(this.vj,this.sc.QUERY_RESULT_AVAILABLE_EXT):this.ia.getQueryParameter(this.vj,this.ia.QUERY_RESULT_AVAILABLE);var b=this.ia.getParameter(this.sc.GPU_DISJOINT_EXT);a&&!b&&(this.VB=1===this.Ub?this.sc.getQueryObjectEXT(this.vj,this.sc.QUERY_RESULT_EXT):this.ia.getQueryParameter(this.vj,this.ia.QUERY_RESULT),this.VB/=1E9,this.pw=!0);(a||b)&&nh(this)}}gz(){return this.pw}dz(){if(!this.pw)throw Error("no result available"); return this.VB}}function ph(a){a.bp=mh.A(oh,a.za);a.Zq.push(a.bp);a.bp.fD()} mh.ca.dV=class{constructor(a){this.za=a;this.lj=a.lj;this.Mb=!1;this.So=null;this.Ho=!1;this.bp=null;this.Zq=[]}j(){for(const a of this.Zq)a instanceof oh&&a.j();mh.D(this.Zq);this.za=this.bp=this.So=null}fD(){if(this.Mb)throw Error("query already active");const a=this.za.HO;if(0<a.length){this.Ho=!0;var b=this.So=a.ie(-1);b.bp.Ny();b.bp=null;this.So.Zq.push(this)}else this.Ho=!1,this.So=null;this.Mb=!0;a.push(this);ph(this)}Ny(){if(!this.Mb)throw Error("query not active");if(this.za.HO.pop()!==this)throw Error("can only end most nested query"); this.Mb=!1;this.bp.Ny();this.bp=null;this.So&&(ph(this.So),this.So=null)}jD(){for(const a of this.Zq)a.jD()}gz(){return this.Zq.every(a=>a.gz())}dz(){return this.Zq.reduce((a,b)=>a+b.dz(),0)}};"use strict";const qh=self.B;function rh(a){const b=new qh.ca.dV(a.za);a.ul.push(b);a.ul.length>a.UW&&a.ul.shift().j();return b}function sh(a,b,d){if(d<=b)return NaN;let c=0;for(const e of a.ul){if(e.lj>=d)break;if(!(e.lj<b))if(e.gz())c+=e.dz();else return NaN}return c} function th(a,b){for(let d=0,c=a.ul.length;d<c;++d){const e=a.ul[d];if(e.lj<b)e.j();else{0<d&&a.ul.splice(0,d);break}}}qh.ca.LL=class{constructor(a,b=1E3){this.za=a;this.UW=b;this.ul=[];this.za.Xz.add(this)}j(){this.Nd();this.za.Xz.delete(this);this.za=null}Nd(){for(const a of this.ul)a.j();qh.D(this.ul)}};"use strict"; const uh=self.B,vh=self.Zk,wh=vh.zy,xh=vh.Bn,yh={powerPreference:"default",tP:!0,alpha:!1,gJ:!1,depth:!1,NI:!1,hJ:2,failIfMajorPerformanceCaveat:!1},zh=new Set(["default","low-power","high-performance"]),Ah=new uh.jd(0,0,1,0,1,1,0,1),Bh=xh.create(),Ch=xh.create(),Dh=new uh.jd,Eh=new uh.Rect;let Fh=null;uh.jy&&(self.B$=function(){Fh?Fh.loseContext():console.warn("WEBGL_lose_context not supported")},self.C$=function(){Fh?Fh.restoreContext():console.warn("WEBGL_lose_context not supported")}); const Gh=new Set;let Hh=-1;function Oh(){Hh=-1;for(const a of Gh)a.zr()&&(a.resolve(),Gh.delete(a));0<Gh.size&&(Hh=self.requestAnimationFrame(Oh))}function of(a,b){if(a.Vm!==b){var d=Ph(a);d.Aa=11;d.tg=b;a.Vm=b;a.Sb=0;a.Pg=null}}function wf(a,b,d,c,e,g,k,m,n,q,r,w,x,z){Qh(a);const E=a.ay;let C=a.Bj;const G=a.tl+a.Gm;E[C++]=b;E[C++]=d;E[C++]=G+c;E[C++]=e;E[C++]=g;E[C++]=G+k;E[C++]=m;E[C++]=n;E[C++]=G+q;E[C++]=r;E[C++]=w;E[C++]=G+x;a.Bj=C;z.jh(a.ir,a.Of);a.Of+=8} function Bf(a){if(0!==a.ko&&!gh(a)){var b=a.ia;0<a.OB&&(b.bindBuffer(b.ARRAY_BUFFER,a.NB),b.bufferSubData(b.ARRAY_BUFFER,0,a.aO.subarray(0,a.OB)));0<a.Bj&&(b.bindBuffer(b.ARRAY_BUFFER,a.zC),b.bufferSubData(b.ARRAY_BUFFER,0,a.ay.subarray(0,a.Bj)),b.bindBuffer(b.ARRAY_BUFFER,a.mC),b.bufferSubData(b.ARRAY_BUFFER,0,a.ir.subarray(0,a.Of)));b=a.Mv;for(let d=0,c=a.ko;d<c;++d)b[d].Ba();a.ko=0;a.Bj=0;a.Of=0;a.OB=0;a.Sb=0}} function hh(a,b,d,c){Bf(a);a=uh.A(uh.ca.IE,a);c=Object.assign({},Tf,c);if(a.Db)throw Error("already created texture");a.xn=c.uu;a.yn=c.vu;a.Hd=c.hh;a.Vo=c.vJ;a.Rm=!!c.oy&&a.za.Ls;a.Rq=c.qy;if(!Qf.has(a.xn)||!Qf.has(a.yn))throw Error("invalid wrap mode");if(!Of.has(a.Hd))throw Error("invalid sampling");if(!Nf.has(a.Vo))throw Error("invalid pixel format");if(!Pf.has(a.Rq))throw Error("invalid mipmap quality");a.Fi=!1;a.ja=Math.floor(b);a.fa=Math.floor(d);b=Mf.Gj(a.ja)&&Mf.Gj(a.fa);d=a.za.CB;if(0>=a.ja|| 0>=a.fa)throw Error("invalid texture size");if(a.ja>d||a.fa>d)throw Error("texture exceeds maximum texture size");if(!(2<=a.za.Ub)&&Wf(a)&&!b)throw Error("non-power-of-two tiled textures not supported");b=a.za.ia;d=a.za.Ub;a.Db=b.createTexture();b.bindTexture(b.TEXTURE_2D,a.Db);b.pixelStorei(b.UNPACK_PREMULTIPLY_ALPHA_WEBGL,c.premultiplyAlpha);b.pixelStorei(b.UNPACK_FLIP_Y_WEBGL,!1);c=Rf(a.Vo,b);b.texImage2D(b.TEXTURE_2D,0,2<=d?c.EJ:c.nu,a.ja,a.fa,0,c.format,c.type,null);Xf(a,b);b.bindTexture(b.TEXTURE_2D, null);a.za.Gk=null;a.Gd=1;Vf.add(a);return a}function gg(a,b){if(b){if(0>=b.Gd)throw Error("no more references");b.Gd--;0<b.Gd||(Bf(a),b===a.Gk&&(a.ia.bindTexture(a.ia.TEXTURE_2D,null),a.Gk=null),b===a.Lo&&(a.ia.activeTexture(a.ia.TEXTURE1),a.ia.bindTexture(a.ia.TEXTURE_2D,null),a.ia.activeTexture(a.ia.TEXTURE0),a.Lo=null),b.NE())}}function jg(a){const b=new Promise(d=>Gh.add({resolve:d,zr:a}));-1===Hh&&(Hh=self.requestAnimationFrame(Oh));return b} function gh(a){return!a.ia||a.ia.isContextLost()||a.NG}async function Rh(a,b){b=await uh.ca.NL.Qa(a,b);a.oq.push(b);a.Ax.set(b.qa(),b);return b}function Sh(a,b,d){const c=a.by;if(0!==c[0]||0!==c[1]||c[2]!==b||c[3]!==d){var e=Ph(a);e.Aa=5;e=e.Dm;e[0]=0;e[1]=0;e[2]=b;e[3]=d;wh.set(c,0,0,b,d);a.Sb=0}}function Th(a,b){if(!xh.Yk(a.AB,b)){var d=Ph(a);d.Aa=6;Jg.xa(d.De,b);xh.xa(a.AB,b);a.Sb=0;a.xo=!0}} function Uh(a,b,d){const c=a.ia;a.wi&&a.wM===b&&a.vM===d||(a.Pv?(a.wi&&c.deleteTexture(a.wi),a.wi=c.createTexture(),c.bindTexture(c.TEXTURE_2D,a.wi),c.texParameteri(c.TEXTURE_2D,c.TEXTURE_MAG_FILTER,c.NEAREST),c.texParameteri(c.TEXTURE_2D,c.TEXTURE_MIN_FILTER,c.NEAREST),c.texParameteri(c.TEXTURE_2D,c.TEXTURE_WRAP_S,c.CLAMP_TO_EDGE),c.texParameteri(c.TEXTURE_2D,c.TEXTURE_WRAP_T,c.CLAMP_TO_EDGE),2<=a.Ub?c.texImage2D(c.TEXTURE_2D,0,c.DEPTH24_STENCIL8,b,d,0,c.DEPTH_STENCIL,c.UNSIGNED_INT_24_8,null):a.Xv&& c.texImage2D(c.TEXTURE_2D,0,c.DEPTH_STENCIL,b,d,0,c.DEPTH_STENCIL,a.Xv.UNSIGNED_INT_24_8_WEBGL,null),c.bindTexture(c.TEXTURE_2D,null)):(a.wi&&c.deleteRenderbuffer(a.wi),a.wi=c.createRenderbuffer(),c.bindRenderbuffer(c.RENDERBUFFER,a.wi),c.renderbufferStorage(c.RENDERBUFFER,2<=a.Ub?c.DEPTH24_STENCIL8:c.DEPTH_STENCIL,b,d),c.bindRenderbuffer(c.RENDERBUFFER,null)),a.wM=b,a.vM=d)}function Ph(a){const b=a.Mv;a.ko===b.length&&b.push(new uh.ca.bV(a.Nc));return b[a.ko++]} function Vh(a){let b,d;var c=a.$e;null===c?(b=a.cA,d=a.N(),c=a.M()):(c.za.Qs===c.xN&&c.za.ax===c.zN&&c.za.gw===c.wN||eg(c),b=c.Il,d=c.N(),c=c.M());Th(a,b);Sh(a,d,c)}function Wh(a,b){if(!xh.Yk(a.oH,b)){var d=Ph(a);d.Aa=7;Jg.xa(d.De,b);xh.xa(a.oH,b);a.Sb=0;a.xo=!0}}function Xh(a,b,d,c,e){const g=a.Lw;dc(g,b,d,c,e)||(Vb(g,b,d,c,e),b=Ph(a),b.Aa=3,g.jh(b.Dm,0),a.Sb=0,a.Pg=null)}function Yh(a){Xh(a,1,1,1,1)}function Zh(a,b){if(b!==a.Gk){var d=Ph(a);d.Aa=2;d.tg=b;a.Gk=b;a.Sb=0}} function $h(a,b,d){if(b!==a.aH||d!==a.XG){var c=Ph(a);c.Aa=4;c.Ee=b;c.Om=d;a.aH=b;a.XG=d;a.Sb=0;a.Pg=null}}function ai(a){$h(a,a.ia.ONE,a.ia.ZERO)}function bi(a,b,d,c,e,g,k,m,n){Qh(a);const q=a.ay;let r=a.Bj;const w=a.tl+a.Gm;q[r++]=b;q[r++]=d;q[r++]=w;q[r++]=c;q[r++]=e;q[r++]=w;q[r++]=g;q[r++]=k;q[r++]=w;q[r++]=m;q[r++]=n;q[r++]=w;a.Bj=r;Ah.jh(a.ir,a.Of);a.Of+=8}function Qh(a){let b=a.Bj;b>=a.BN&&(Bf(a),b=0);if(1===a.Sb)a.Mv[a.ko-1].Om+=6;else{var d=Ph(a);d.Aa=1;d.Ee=b;d.Om=6;a.Sb=1}} function ci(a,b){var d=a.ay,c=a.Bj,e=a.tl+a.Gm;d[c++]=b.Qb;d[c++]=b.Rb;d[c++]=e;d[c++]=b.Wc;d[c++]=b.Xc;d[c++]=e;d[c++]=b.Qc;d[c++]=b.Rc;d[c++]=e;d[c++]=b.Oc;d[c++]=b.Pc;d[c]=e;a.Bj+=12}function di(a,b,d){Qh(a);ci(a,b);b=a.ir;var c=a.Of;b[c++]=d.Y;b[c++]=d.V;b[c++]=d.ma;b[c++]=d.V;b[c++]=d.ma;b[c++]=d.ka;b[c++]=d.Y;b[c]=d.ka;a.Of+=8}function fi(a,b,d){Qh(a);ci(a,b);d.jh(a.ir,a.Of);a.Of+=8}function gi(a,b){return b?[b.N(),b.M()]:[a.ja,a.fa]} function hi(a,b,d,c,e,g,k,m,n,q,r,w){const x=a.Vm;w%=10800;if(x.wW&&(x.eu.la||x.bh.la&&!Bg(x.bh,k,m)||x.op.la&&!Bg(x.op,d.Y,d.V)||x.np.la&&!Bg(x.np,d.ma,d.ka)||x.pp.la&&x.pp.Ff[0]!==Math.fround(n)||x.rp.la&&x.rp.Ff[0]!==Math.fround(q)||x.qp.la&&x.qp.Ff[0]!==Math.fround(r)||x.Vk.la&&!Bg(x.Vk,c.Y,c.V)||x.sn.la&&!Bg(x.sn,c.ma,c.ka)||x.un.la&&!Bg(x.un,e.Y,e.V)||x.tn.la&&!Bg(x.tn,e.ma,e.ka)||x.tp.la&&!Bg(x.tp,g.Y,g.V)||x.sp.la&&!Bg(x.sp,g.V,g.ka)||x.up.la&&x.up.Ff[0]!==Math.fround(w))){var z=Ph(a);z.Aa= 12;var E=w;x.eu.la||(x.bh.la&&Cg(x.bh,k,m),x.op.la&&Cg(x.op,d.Y,d.V),x.np.la&&Cg(x.np,d.ma,d.ka),x.pp.la&&(x.pp.Ff[0]=n),x.rp.la&&(x.rp.Ff[0]=q),x.qp.la&&(x.qp.Ff[0]=r),x.Vk.la&&Cg(x.Vk,c.Y,c.V),x.sn.la&&Cg(x.sn,c.ma,c.ka),x.un.la&&Cg(x.un,e.Y,e.V),x.tn.la&&Cg(x.tn,e.ma,e.ka),x.tp.la&&Cg(x.tp,g.Y,g.V),x.sp.la&&Cg(x.sp,g.V,g.ka),x.up.la&&(x.up.Ff[0]=E));E=z.De;E[0]=k;E[1]=m;d.jh(E,2);E[6]=q;E[7]=r;c.jh(E,12);d=z.Dm;g.jh(d,0);g=d[1];d[1]=d[3];d[3]=g;e.jh(z.AO,0);z.Ee=w;z.Om=n;z.tg=x.eu.la?b?b.Qd(): null:null;a.Sb=0}}function ii(a,b){const d=a.Vm;var c;if(c=0!==b.length){a:{for(let k=0,m=b.length;k<m;++k){c=d.nr[k];var e=b[k],g=c.Ff;if(c.JG?g[0]!==Math.fround(e.hb)||g[1]!==Math.fround(e.lb)||g[2]!==Math.fround(e.gb):g[0]!==Math.fround(e)){c=!1;break a}}c=!0}c=!c}if(c){c=Ph(a);c.Aa=13;for(let k=0,m=b.length;k<m;++k){e=d.nr[k];g=b[k];const n=e.Ff;e.JG?(n[0]=g.hb,n[1]=g.lb,n[2]=g.gb):n[0]=g}uh.Md(c.ZB,b);a.Sb=0}}function ji(a){var b=Ph(a);b.Aa=9;b=b.De;b[0]=0;b[1]=0;b[2]=0;b[3]=0;a.Sb=0} function ki(a,b){b=!!b;if(a.Lq!==b&&a.Pl){a.Lq=b;var d=Ph(a);d.Aa=23;d.Ee=b?1:0;a.Sb=0}}function li(a,b){b=!!b;if(a.Pv&&a.KG!==b){if(b&&a.Lq)throw Error("depth still enabled");a.KG=b;var d=Ph(a);d.Aa=24;d.Ee=b?1:0;a.Sb=0}}function mi(a,b,d,c,e,g=0){b=Math.floor(b);d=Math.floor(d);c=Math.floor(c);e=Math.floor(e);var k=a.pB,m=c,n=e;if(k.Y!==b||k.V!==d||k.width()!==m||k.height()!==n)vc(a.pB,b,d,c,e),d=(g||gi(a,a.Rj())[1])-d-e,g=Ph(a),g.Aa=28,g.Ee=1,g=g.De,g[0]=b,g[1]=d,g[2]=c,g[3]=e,a.Sb=0} function ni(a){if(-1!==a.pB.ma){a.pB.set(0,0,-1,-1);var b=Ph(a);b.Aa=28;b.Ee=0;b=b.De;b[0]=0;b[1]=0;b[2]=0;b[3]=0;a.Sb=0}} function oi(a,b,d){if(gh(a))throw Error("context lost");Bf(a);a=uh.A(uh.ca.IE,a);if(!("undefined"!==typeof HTMLImageElement&&b instanceof HTMLImageElement||"undefined"!==typeof HTMLCanvasElement&&b instanceof HTMLCanvasElement||"undefined"!==typeof ImageBitmap&&b instanceof ImageBitmap||"undefined"!==typeof OffscreenCanvas&&b instanceof OffscreenCanvas||b instanceof ImageData||b instanceof ArrayBuffer)&&null!==b)throw Error("invalid texture source");var c=Object.assign({},Tf,d);if(a.Db)throw Error("already created texture"); a.xn=c.uu;a.yn=c.vu;a.Hd=c.hh;a.tF=c.gP;a.Vo=c.vJ;a.Rm=!!c.oy&&a.za.Ls;a.Rq=c.qy;if(!Qf.has(a.xn)||!Qf.has(a.yn))throw Error("invalid wrap mode");if(!Of.has(a.Hd))throw Error("invalid sampling");if(!Nf.has(a.Vo))throw Error("invalid pixel format");if(!Pf.has(a.Rq))throw Error("invalid mipmap quality");a.Fi=!0;if(b instanceof ArrayBuffer||null===b||c.HP){if(a.ja=c.width,a.fa=c.height,b instanceof ArrayBuffer&&b.byteLength!==a.ja*a.fa*4)throw Error("ArrayBuffer wrong size");}else a.ja=b.width,a.fa= b.height;if(0>=a.ja||0>=a.fa)throw Error("invalid texture data size");c.HP&&(d=Mf.Mj(a.ja,a.fa),d.getContext("2d").drawImage(b,0,0,a.ja,a.fa),b=d);var e=Mf.Gj(a.ja)&&Mf.Gj(a.fa);d=a.za.CB;if(a.ja>d||a.fa>d)throw Error("texture data exceeds maximum texture size");d=a.za.ia;var g=a.za.Ub;a.Db=d.createTexture();d.bindTexture(d.TEXTURE_2D,a.Db);d.pixelStorei(d.UNPACK_PREMULTIPLY_ALPHA_WEBGL,c.premultiplyAlpha);d.pixelStorei(d.UNPACK_FLIP_Y_WEBGL,!1);c=Rf(a.Vo,d);if(2<=a.za.Ub||e||!Wf(a))2<=g?(d.texStorage2D(d.TEXTURE_2D, a.Rm?Math.floor(Math.log2(Math.max(a.ja,a.fa))+1):1,c.EJ,a.ja,a.fa),b instanceof ArrayBuffer?d.texSubImage2D(d.TEXTURE_2D,0,0,0,a.ja,a.fa,c.format,c.type,new Uint8Array(b)):null!==b&&d.texSubImage2D(d.TEXTURE_2D,0,0,0,c.format,c.type,b)):b instanceof ArrayBuffer?d.texImage2D(d.TEXTURE_2D,0,c.nu,a.ja,a.fa,0,c.format,c.type,new Uint8Array(b)):null===b?d.texImage2D(d.TEXTURE_2D,0,c.nu,a.ja,a.fa,0,c.format,c.type,null):d.texImage2D(d.TEXTURE_2D,0,c.nu,c.format,c.type,b);else{if(null===b)throw Error("cannot pass null data when creating a NPOT tiled texture without NPOT support"); b instanceof ArrayBuffer&&(b=new ImageData(new Uint8ClampedArray(b),a.ja,a.fa));b instanceof ImageData&&(e=Mf.Mj(a.ja,a.fa),e.getContext("2d").putImageData(b,0,0),b=e);e=Mf.Mj(Mf.pu(a.ja),Mf.pu(a.fa));g=e.getContext("2d");g.imageSmoothingEnabled="nearest"!==a.Hd;g.drawImage(b,0,0,a.ja,a.fa,0,0,e.width,e.height);d.texImage2D(d.TEXTURE_2D,0,c.nu,c.format,c.type,e)}null!==b&&Xf(a,d);d.bindTexture(d.TEXTURE_2D,null);a.za.Gk=null;a.Gd=1;Vf.add(a);return a} async function pi(a,b,d){if(gh(a))throw Error("context lost");d=Object.assign({},d);if(!uh.wb.ImageBitmapOptions||"Safari"===uh.O.ke&&b instanceof ImageData&&"undefined"!==typeof Image){if(b instanceof Blob){if("undefined"===typeof Image)throw Error("texture upload variant not supported in worker");b=await uh.KQ(b)}return await uh.wu(()=>oi(a,b,d))}let c=await createImageBitmap(b,{premultiplyAlpha:"premultiply"});const e=d.uu&&"clamp-to-edge"!==d.uu||d.vu&&"clamp-to-edge"!==d.vu,g=uh.Gj(c.width)&& uh.Gj(c.height);2<=a.Ub||g||!e?d.premultiplyAlpha=!1:uh.wb.jz?(c=await createImageBitmap(b,{premultiplyAlpha:"premultiply",resizeWidth:uh.pu(c.width),resizeHeight:uh.pu(c.height)}),d.premultiplyAlpha=!1):c=await createImageBitmap(b,{premultiplyAlpha:"none"});return await uh.wu(()=>oi(a,c,d))} function qi(a,b){var d=a.ja,c=a.fa,e=!0;b&&("number"===typeof b.width&&(d=b.width,e=!1),"number"===typeof b.height&&(c=b.height,e=!1));if(0>=d||0>=c)throw Error("invalid size");Bf(a);const g=uh.A(uh.ca.ML,a);b=Object.assign({CP:e},b);b=Object.assign({},cg,b);e=g.za.Ub;if(g.Db||g.Ll)throw Error("already created render target");g.Hd=b.hh;g.rs=!!b.alpha;g.og=!!b.depth;g.Cw=!!b.NC;g.$A=!!b.CP;g.Zm=b.zY;if(!bg.has(g.Hd))throw Error("invalid sampling");if(0<g.Zm&&(2>e||g.Cw))throw Error("invalid use of multisampling"); 2>e&&(g.Cw=!0);g.ja=d;g.fa=c;if(0>=g.ja||0>=g.fa)throw Error("invalid render target size");eg(g);d=g.za.ia;g.Ci=d.createFramebuffer();g.og&&(g.zq=d.createFramebuffer());g.Cw?(g.Db=hh(g.za,g.ja,g.fa,{hh:g.Hd,vJ:g.rs?"rgba8":"rgb8",oy:!1}),b=g.Db.Db,d.bindFramebuffer(d.FRAMEBUFFER,g.Ci),d.framebufferTexture2D(d.FRAMEBUFFER,d.COLOR_ATTACHMENT0,d.TEXTURE_2D,b,0),g.og&&(d.bindFramebuffer(d.FRAMEBUFFER,g.zq),d.framebufferTexture2D(d.FRAMEBUFFER,d.COLOR_ATTACHMENT0,d.TEXTURE_2D,b,0))):(g.Ll=d.createRenderbuffer(), d.bindRenderbuffer(d.RENDERBUFFER,g.Ll),b=g.rs?d.RGBA8:d.RGB8,0<g.Zm&&((e=d.getInternalformatParameter(d.RENDERBUFFER,b,d.SAMPLES))&&e[0]?(e=e[0],g.Zm>e&&(g.Zm=e)):g.Zm=0),0===g.Zm?d.renderbufferStorage(d.RENDERBUFFER,b,g.ja,g.fa):d.renderbufferStorageMultisample(d.RENDERBUFFER,g.Zm,b,g.ja,g.fa),d.bindFramebuffer(d.FRAMEBUFFER,g.Ci),d.framebufferRenderbuffer(d.FRAMEBUFFER,d.COLOR_ATTACHMENT0,d.RENDERBUFFER,g.Ll),g.og&&(d.bindFramebuffer(d.FRAMEBUFFER,g.zq),d.framebufferRenderbuffer(d.FRAMEBUFFER, d.COLOR_ATTACHMENT0,d.RENDERBUFFER,g.Ll)),d.bindRenderbuffer(d.RENDERBUFFER,null));b=g.za.wi;g.og&&b&&(d.bindFramebuffer(d.FRAMEBUFFER,g.Ci),g.za.Pv?d.framebufferTexture2D(d.FRAMEBUFFER,d.DEPTH_STENCIL_ATTACHMENT,d.TEXTURE_2D,b,0):d.framebufferRenderbuffer(d.FRAMEBUFFER,d.DEPTH_STENCIL_ATTACHMENT,d.RENDERBUFFER,b));d.bindFramebuffer(d.FRAMEBUFFER,null);dg.add(g);a.$e=null;a.Nc.zn=null;a.Nc.Xk=null;return g} function ri(a,b,d=!0){if(b!==a.$e){b&&b.$A&&fg(b,a.ja,a.fa);var c=Ph(a);c.Aa=8;c.tg=b;a.$e=b;a.Sb=0;d&&Vh(a)}} function si(a,b,d="stretch"){var c=b.Qd();if(!c)throw Error("not a texture-backed render target");Zh(a,c);xh.xa(Bh,a.AB);xh.xa(Ch,a.oH);Vh(a);const [e,g]=gi(a,a.$e);b=mf(a,0,0,a.Ve(g),0,0,g);Wh(a,b);if("crop"===d&&a.$e&&c){d=a.ja/2;b=a.fa/2;var k=c.N();c=c.M();var m=a.$e.N(),n=a.$e.M();m=Math.min(m,k);const q=Math.min(n,c),r=Math.max(c-n,0);n=Math.max(n-c,0);Eh.set(-d,b-n,-d+m,b-q-n);Dh.$k(Eh);Eh.set(0,r,m,q+r);Eh.Dj(k,c);di(a,Dh,Eh)}else k=e/2,c=g/2,d=-k,b=-c,bi(a,d,c,k,c,k,b,d,b);Th(a,Bh);Wh(a, Ch)}function ti(a,b){if(2>a.Ub||a.$e&&0<a.$e.Zm)ai(a),Yh(a),si(a,b,"stretch");else{var d=Ph(a),c=a.$e;d.Aa=17;const e=d.De,g=d.Nc.Cp;e[0]=b.N();e[1]=b.M();e[2]=c?c.N():g.N();e[3]=c?c.M():g.M();e[4]=b.MD()?1:0;e[5]=!0;d=d.ZB;Gg.D(d);d.push(b.Ci);d.push(c?c.Ci:null);a.Sb=0}}function vi(a,b){if(!(2>a.Ub)){var d=Ph(a);b=b.Ci;d.Aa=14;d.tg=b;a.Sb=0}}function wi(a,b){if(a.sc){var d=Ph(a);d.Aa=18;d.tg=b;a.Sb=0}}function xi(a,b){if(a.sc){var d=Ph(a);d.Aa=19;d.tg=b;a.Sb=0}} uh.ca.cV=class extends uh.ca.YT{constructor(a,b){super(b);b=Object.assign({},yh,b);if(!zh.has(b.powerPreference))throw Error("invalid power preference");var d={alpha:!!b.alpha,depth:!1,antialias:!1,powerPreference:b.powerPreference,failIfMajorPerformanceCaveat:!!b.failIfMajorPerformanceCaveat};b.gJ&&(d.desynchronized=!0,d.preserveDrawingBuffer=!0);var c=null;let e=0;2<=b.hJ&&(c=a.getContext("webgl2",d),e=2);c||(c=a.getContext("webgl",d),e=1);if(!c)throw Error("renderer-unavailable (could not get WebGL context)"); this.ia=c;this.gM=c.getContextAttributes();b.gJ&&!this.gM.desynchronized&&console.info("[WebGLRenderer] Low-latency mode specified but is not supported here");c.getParameter(c.VERSION);this.Ub=e;this.by=wh.create();this.xo=!1;this.cA=xh.create();this.Pl=!!b.depth;this.Pv=!(!b.depth||!b.NI);this.Lq=this.Pl;this.KG=!1;this.wi=null;this.IG=!0;this.vM=this.wM=0;this.NB=this.cN=this.mC=this.zC=null;this.ay=new Float32Array(24E3);this.dN=new Uint16Array(12E3);this.ir=new Float32Array(16E3);this.aO=new Float32Array(32E3); this.BN=this.OB=this.Of=this.Bj=0;this.er=this.Vm=null;this.Mv=[];this.Sb=this.ko=0;this.$e=null;this.Nc=uh.A(uh.ca.GQ,this);this.Lw=uh.A(uh.kb,1,1,1,1);this.Lo=this.Gk=null;this.XG=this.aH=0;this.OW=new uh.Rect;this.pB=uh.A(uh.Rect,0,0,-1,-1);this.CB=-1;this.qH=0;this.Wx="(unavailable)";this.NG=!1;this.gI=this.eI=this.hG=this.Xv=this.Gv=this.DH=null;this.pH=0;this.KW=!!b.tP;this.sc=null;this.Xz=new Set;this.HO=[];a=this.dN;b=0;d=a.length;for(c=0;b<d;)a[b++]=c,a[b++]=c+1,a[b++]=c+2,a[b++]=c,a[b++]= c+2,a[b++]=c+3,c+=4}Yi(){return!0}async kz(){super.kz();var a=this.ia;Vb(this.Lw,1,1,1,1);this.Lo=this.Gk=null;this.OB=this.Bj=0;this.BN=23988;uh.D(this.Mv);this.Sb=this.ko=0;this.$e=this.Vm=null;this.OW.set(0,0,1,1);var b=this.Nc;b.bi=null;b.zn=null;b.Xk=null;wh.set(b.FC,1,1,1,1);Vb(b.clearColor,0,0,0,0);b.wJ.set(0,0,1,1);a.clearColor(0,0,0,0);a.clear(a.COLOR_BUFFER_BIT);a.enable(a.BLEND);a.blendFunc(a.ONE,a.ONE_MINUS_SRC_ALPHA);this.aH=a.ONE;this.XG=a.ONE_MINUS_SRC_ALPHA;rf(this,[["normal",a.ONE, a.ONE_MINUS_SRC_ALPHA],["additive",a.ONE,a.ONE],["xor",a.ONE,a.ONE_MINUS_SRC_ALPHA],["copy",a.ONE,a.ZERO],["destination-over",a.ONE_MINUS_DST_ALPHA,a.ONE],["source-in",a.DST_ALPHA,a.ZERO],["destination-in",a.ZERO,a.SRC_ALPHA],["source-out",a.ONE_MINUS_DST_ALPHA,a.ZERO],["destination-out",a.ZERO,a.ONE_MINUS_SRC_ALPHA],["source-atop",a.DST_ALPHA,a.ONE_MINUS_SRC_ALPHA],["destination-atop",a.ONE_MINUS_DST_ALPHA,a.SRC_ALPHA]]);a.disable(a.CULL_FACE);a.disable(a.STENCIL_TEST);a.disable(a.DITHER);this.Pl? (a.enable(a.DEPTH_TEST),a.depthMask(!0),a.depthFunc(a.LEQUAL)):(a.disable(a.DEPTH_TEST),a.depthMask(!1));this.Lq=this.Pl;this.KG=!1;this.NB=a.createBuffer();a.bindBuffer(a.ARRAY_BUFFER,this.NB);a.bufferData(a.ARRAY_BUFFER,this.aO.byteLength,a.DYNAMIC_DRAW);this.zC=a.createBuffer();a.bindBuffer(a.ARRAY_BUFFER,this.zC);a.bufferData(a.ARRAY_BUFFER,this.ay.byteLength,a.DYNAMIC_DRAW);this.mC=a.createBuffer();a.bindBuffer(a.ARRAY_BUFFER,this.mC);a.bufferData(a.ARRAY_BUFFER,this.ir.byteLength,a.DYNAMIC_DRAW); this.cN=a.createBuffer();a.bindBuffer(a.ELEMENT_ARRAY_BUFFER,this.cN);a.bufferData(a.ELEMENT_ARRAY_BUFFER,this.dN,a.STATIC_DRAW);a.activeTexture(a.TEXTURE0);a.bindTexture(a.TEXTURE_2D,null);this.CB=a.getParameter(a.MAX_TEXTURE_SIZE);this.qH=a.getParameter(a.ALIASED_POINT_SIZE_RANGE)[1];2048<this.qH&&(this.qH=2048);if(b=a.getExtension("WEBGL_debug_renderer_info"))a.getParameter(b.UNMASKED_VENDOR_WEBGL),this.Wx=a.getParameter(b.UNMASKED_RENDERER_WEBGL);this.DH=a.getExtension("KHR_parallel_shader_compile"); uh.jy&&(Fh=a.getExtension("WEBGL_lose_context"));if(this.KW)if(1===this.Ub){if("Chromium"!==uh.O.kh||81<=uh.O.xu||"undefined"!==typeof document)this.sc=a.getExtension("EXT_disjoint_timer_query")}else this.sc=a.getExtension("EXT_disjoint_timer_query_webgl2")||a.getExtension("EXT_disjoint_timer_query");this.pH=(this.Gv=a.getExtension("EXT_texture_filter_anisotropic"))?a.getParameter(this.Gv.MAX_TEXTURE_MAX_ANISOTROPY_EXT):0;if(2>this.Ub&&this.Pl&&this.Pv&&(this.Xv=a.getExtension("WEBGL_depth_texture"), !this.Xv))throw Error("no depth texture support");2>this.Ub&&(this.hG=a.getExtension("EXT_frag_depth"),this.eI=a.getExtension("OES_standard_derivatives"),this.gI=a.getExtension("EXT_shader_texture_lod"));a=rg(!1);b="varying mediump vec2 vTex;\nuniform lowp vec4 color;\nuniform lowp sampler2D samplerFront;\nvoid main(void) {\n\tgl_FragColor = texture2D(samplerFront, vTex) * color;\n}";let d=a,c="uniform lowp sampler2D samplerFront;\nvarying lowp float pointOpacity;\nuniform mediump vec2 pointTexStart;\nuniform mediump vec2 pointTexEnd;\nuniform lowp vec4 color;\nvoid main(void) {\n\tmediump vec2 pointTexMin = min(pointTexStart, pointTexEnd);\n\tmediump vec2 pointTexMax = max(pointTexStart, pointTexEnd);\n\tmediump vec2 pointCoord = (pointTexEnd.x > pointTexStart.x ? gl_PointCoord : vec2(1.0 - gl_PointCoord.y, gl_PointCoord.x));\n\tgl_FragColor = texture2D(samplerFront, mix(pointTexMin, pointTexMax, pointCoord)) * color * pointOpacity;\n}", e="attribute vec4 aPoints;\nvarying float pointOpacity;\nuniform float zElevation;\nuniform mat4 matP;\nuniform mat4 matMV;\nvoid main(void) {\n\tgl_Position = matP * matMV * vec4(aPoints.xy, zElevation, 1.0);\n\tgl_PointSize = aPoints.z;\n\tpointOpacity = aPoints.w;\n}",g="#ifdef GL_FRAGMENT_PRECISION_HIGH\n#define highmedp highp\n#else\n#define highmedp mediump\n#endif\nvarying highmedp vec2 vTex;\nuniform lowp vec4 color;\nuniform lowp sampler2D samplerFront;\nuniform highmedp vec2 srcStart;\nuniform highmedp vec2 pixelSize;\nuniform highmedp vec2 tileSize;\nuniform highmedp vec2 tileSpacing;\nvoid main(void) {\n\thighmedp vec2 tile = floor(vTex);\n\thighmedp vec2 tex = fract(vTex);\n\thighmedp vec2 tileOrigin = srcStart + tile * (tileSize + tileSpacing);\n\thighmedp vec2 lowerBound = tileOrigin + pixelSize / 2.0;\n\thighmedp vec2 upperBound = tileOrigin + tileSize - pixelSize / 2.0;\n\tgl_FragColor = texture2D(samplerFront, clamp(tex, lowerBound, upperBound), -16.0) * color;\n}", k=rg(!0),m=!1;this.Pl&&("Safari"!==uh.O.ke||15.5<=uh.O.xu)&&(2>this.Ub?this.hG&&(b="#extension GL_EXT_frag_depth : enable\nvarying mediump vec2 vTex;\nuniform lowp vec4 color;\nuniform lowp sampler2D samplerFront;\nvoid main(void) {\n\tgl_FragColor = texture2D(samplerFront, vTex) * color;\n\tgl_FragDepthEXT = (gl_FragColor.a == 0.0 ? 1.0 : gl_FragCoord.z);\n}",c="#extension GL_EXT_frag_depth : enable\nuniform lowp sampler2D samplerFront;\nvarying lowp float pointOpacity;\nuniform mediump vec2 pointTexStart;\nuniform mediump vec2 pointTexEnd;\nuniform lowp vec4 color;\nvoid main(void) {\n\tmediump vec2 pointTexMin = min(pointTexStart, pointTexEnd);\n\tmediump vec2 pointTexMax = max(pointTexStart, pointTexEnd);\n\tmediump vec2 pointCoord = (pointTexEnd.x > pointTexStart.x ? gl_PointCoord : vec2(1.0 - gl_PointCoord.y, gl_PointCoord.x));\n\tgl_FragColor = texture2D(samplerFront, mix(pointTexMin, pointTexMax, pointCoord)) * color * pointOpacity;\n\tgl_FragDepthEXT = (gl_FragColor.a == 0.0 ? 1.0 : gl_FragCoord.z);\n}", g="#extension GL_EXT_frag_depth : enable\n#ifdef GL_FRAGMENT_PRECISION_HIGH\n#define highmedp highp\n#else\n#define highmedp mediump\n#endif\nvarying highmedp vec2 vTex;\nuniform lowp vec4 color;\nuniform lowp sampler2D samplerFront;\nuniform highmedp vec2 srcStart;\nuniform highmedp vec2 pixelSize;\nuniform highmedp vec2 tileSize;\nuniform highmedp vec2 tileSpacing;\nvoid main(void) {\n\thighmedp vec2 tile = floor(vTex);\n\thighmedp vec2 tex = fract(vTex);\n\thighmedp vec2 tileOrigin = srcStart + tile * (tileSize + tileSpacing);\n\thighmedp vec2 lowerBound = tileOrigin + pixelSize / 2.0;\n\thighmedp vec2 upperBound = tileOrigin + tileSize - pixelSize / 2.0;\n\tgl_FragColor = texture2D(samplerFront, clamp(tex, lowerBound, upperBound), -16.0) * color;\n\tgl_FragDepthEXT = (gl_FragColor.a == 0.0 ? 1.0 : gl_FragCoord.z);\n}", m=!0):(d=sg(),b="#version 300 es\nin mediump vec2 vTex;\nout lowp vec4 outColor;\nuniform lowp vec4 color;\nuniform lowp sampler2D samplerFront;\nvoid main(void) {\n\toutColor = texture(samplerFront, vTex) * color;\n\tgl_FragDepth = (outColor.a == 0.0 ? 1.0 : gl_FragCoord.z);\n}",c="#version 300 es\nuniform lowp sampler2D samplerFront;\nin lowp float pointOpacity;\nuniform mediump vec2 pointTexStart;\nuniform mediump vec2 pointTexEnd;\nuniform lowp vec4 color;\nout lowp vec4 outColor;\nvoid main(void) {\n\tmediump vec2 pointTexMin = min(pointTexStart, pointTexEnd);\n\tmediump vec2 pointTexMax = max(pointTexStart, pointTexEnd);\n\tmediump vec2 pointCoord = (pointTexEnd.x > pointTexStart.x ? gl_PointCoord : vec2(1.0 - gl_PointCoord.y, gl_PointCoord.x));\n\toutColor = texture(samplerFront, mix(pointTexMin, pointTexMax, pointCoord)) * color * pointOpacity;\n\tgl_FragDepth = (outColor.a == 0.0 ? 1.0 : gl_FragCoord.z);\n}", e="#version 300 es\nin vec4 aPoints;\nout float pointOpacity;\nuniform float zElevation;\nuniform mat4 matP;\nuniform mat4 matMV;\nvoid main(void) {\n\tgl_Position = matP * matMV * vec4(aPoints.xy, zElevation, 1.0);\n\tgl_PointSize = aPoints.z;\n\tpointOpacity = aPoints.w;\n}",g="#version 300 es\nin highp vec2 vTex;\nout lowp vec4 outColor;\nuniform lowp vec4 color;\nuniform lowp sampler2D samplerFront;\nuniform highp vec2 srcStart;\nuniform highp vec2 pixelSize;\nuniform highp vec2 tileSize;\nuniform highp vec2 tileSpacing;\nvoid main(void) {\n\thighp vec2 tile = floor(vTex);\n\thighp vec2 tex = fract(vTex);\n\thighp vec2 tileOrigin = srcStart + tile * (tileSize + tileSpacing);\n\thighp vec2 lowerBound = tileOrigin + pixelSize / 2.0;\n\thighp vec2 upperBound = tileOrigin + tileSize - pixelSize / 2.0;\n\toutColor = texture(samplerFront, clamp(tex, lowerBound, upperBound), -16.0) * color;\n\tgl_FragDepth = (outColor.a == 0.0 ? 1.0 : gl_FragCoord.z);\n}", k=sg(!0)));a=await Promise.all([[b,d,"<default>"],[b,d,"<default-device-transform>"],[c,e,"<point>"],["uniform lowp vec4 color;\nvoid main(void) {\n\tgl_FragColor = color;\n}",a,"<fill>"],["precision lowp float;\nvarying mediump vec2 vTex;\nuniform vec4 color;\nuniform vec4 color2_;\nvec3 fromLinear(vec3 linearRGB)\n{\n\tbvec3 cutoff = lessThan(linearRGB, vec3(0.0031308));\n\tvec3 higher = vec3(1.055) * pow(abs(linearRGB), vec3(1.0/2.4)) - vec3(0.055);\n\tvec3 lower = linearRGB * vec3(12.92);\n\treturn mix(higher, lower, vec3(cutoff));\n}\nvec3 toLinear(vec3 sRGB)\n{\n\tbvec3 cutoff = lessThan(sRGB, vec3(0.04045));\n\tvec3 higher = pow(abs((sRGB + vec3(0.055))/vec3(1.055)), vec3(2.4));\n\tvec3 lower = sRGB/vec3(12.92);\n\treturn mix(higher, lower, vec3(cutoff));\n}\nvoid main(void) {\n\tvec3 linearGrad = mix(toLinear(color.rgb), toLinear(color2_.rgb), vTex.x);\n\tfloat a = mix(color.a, color2_.a, vTex.x);\n\tgl_FragColor = vec4(fromLinear(linearGrad) * a, a);\n}", a,"<lineargradient>"],["#ifdef GL_FRAGMENT_PRECISION_HIGH\n#define highmedp highp\n#else\n#define highmedp mediump\n#endif\nprecision lowp float;\nvarying highmedp vec2 vTex;\nuniform vec4 color;\nvoid main(void) {\n\thighmedp float grad = vTex.x / (1.0 - vTex.y);\n\tgl_FragColor = color * (1.0 - (cos(grad * 3.141592653589793) + 1.0) / 2.0);\n}",a,"<penumbra>"],["varying mediump vec2 vTex;\nuniform lowp vec4 color;\nvoid main(void) {\n\tmediump vec2 diff = vTex - vec2(0.5, 0.5);\n\tmediump vec2 diffSq = diff * diff;\n\tmediump float f = step(diffSq.x + diffSq.y, 0.25);\n\tgl_FragColor = color * f;\n}", a,"<hardellipse>"],["varying mediump vec2 vTex;\nuniform lowp vec4 color;\nuniform mediump vec2 pixelSize;\nuniform mediump float outlineThickness;\nvoid main(void) {\n\tmediump vec2 diff = vTex - vec2(0.5, 0.5);\n\tmediump vec2 diffSq = diff * diff;\n\tmediump float distSq = diffSq.x + diffSq.y;\n\tmediump vec2 norm = normalize(diff);\n\tmediump vec2 halfNorm = norm * 0.5;\n\tmediump float innerF = step(distSq, 0.25);\n\tmediump vec2 innerEdge = halfNorm - pixelSize * norm * outlineThickness;\n\tmediump vec2 innerEdgeSq = innerEdge * innerEdge;\n\tmediump float outerF = step(innerEdgeSq.x + innerEdgeSq.y, distSq);\n\tgl_FragColor = color * innerF * outerF;\n}", a,"<hardellipseoutline>"],["varying mediump vec2 vTex;\nuniform lowp vec4 color;\nuniform mediump vec2 pixelSize;\nvoid main(void) {\n\tmediump vec2 diff = vTex - vec2(0.5, 0.5);\n\tmediump vec2 diffSq = diff * diff;\n\tmediump vec2 norm = normalize(diff);\n\tmediump vec2 halfNorm = norm * 0.5;\n\tmediump vec2 halfNormSq = halfNorm * halfNorm;\n\tmediump vec2 innerEdge = halfNorm - pixelSize * norm;\n\tmediump vec2 innerEdgeSq = innerEdge * innerEdge;\n\tmediump float f = smoothstep(halfNormSq.x + halfNormSq.y, innerEdgeSq.x + innerEdgeSq.y, diffSq.x + diffSq.y);\n\tgl_FragColor = color * f;\n}", a,"<smoothellipse>"],["varying mediump vec2 vTex;\nuniform lowp vec4 color;\nuniform mediump vec2 pixelSize;\nuniform mediump float outlineThickness;\nvoid main(void) {\n\tmediump vec2 diff = vTex - vec2(0.5, 0.5);\n\tmediump vec2 diffSq = diff * diff;\n\tmediump float distSq = diffSq.x + diffSq.y;\n\tmediump vec2 norm = normalize(diff);\n\tmediump vec2 halfNorm = norm * 0.5;\n\tmediump vec2 halfNormSq = halfNorm * halfNorm;\n\tmediump vec2 pxNorm = pixelSize * norm;\n\tmediump vec2 innerEdge1 = halfNorm - pxNorm;\n\tmediump vec2 innerEdge1Sq = innerEdge1 * innerEdge1;\n\tmediump float innerF = smoothstep(halfNormSq.x + halfNormSq.y, innerEdge1Sq.x + innerEdge1Sq.y, distSq);\n\tmediump vec2 innerEdge2 = halfNorm - pxNorm * outlineThickness;\n\tmediump vec2 innerEdge2Sq = innerEdge2 * innerEdge2;\n\tmediump vec2 innerEdge3 = halfNorm - pxNorm * (outlineThickness + 1.0);\n\tmediump vec2 innerEdge3Sq = innerEdge3 * innerEdge3;\n\tmediump float outerF = smoothstep(innerEdge3Sq.x + innerEdge3Sq.y, innerEdge2Sq.x + innerEdge2Sq.y, distSq);\n\tgl_FragColor = color * innerF * outerF;\n}", a,"<smoothellipseoutline>"],["varying mediump vec2 vTex;\nuniform lowp vec4 color;\nvoid main(void) {\n\tlowp float f = 1.0 - abs(vTex.y - 0.5) * 2.0;\n\tgl_FragColor = color * f;\n}",a,"<smoothline>"],[g,k,"<tilemap>"],[tg(this.Ub,m,this.eI&&this.gI),2<=this.Ub?sg():a,"<tilerandomization>"]].map(n=>Rh(this,{src:n[0],MJ:n[1],name:n[2]})));this.dC=a[0];this.er=a[1];this.cC=a[2];this.Hx=a[3];this.eC=a[12];nf(this)}ac(a,b,d){if(this.ja!==a||this.fa!==b||d){Bf(this);d=this.ia;var c=this.Nc;this.ja=a; this.fa=b;Sh(this,a,b);kf(this,this.cA,a/b);Th(this,this.cA);this.er&&(d.useProgram(this.er.wh()),kg(this.er,this.AB),this.Vm=this.er,this.Nc.bi=this.er);d.bindTexture(d.TEXTURE_2D,null);d.activeTexture(d.TEXTURE1);d.bindTexture(d.TEXTURE_2D,null);d.activeTexture(d.TEXTURE0);this.Lo=this.Gk=null;this.Pl&&this.IG&&Uh(this,this.ja,this.fa);this.$e&&fg(this.$e,this.ja,this.fa);d.bindFramebuffer(d.FRAMEBUFFER,null);this.$e=null;c.zn=null;c.Xk=null}}kE(a){super.kE(a);kf(this,this.cA,this.ja/this.fa)}Gc(){return this.Lw.Ya}bg(a){const b= this.Lw;b.Ya!==a&&(bc(b,a),a=Ph(this),a.Aa=3,b.jh(a.Dm,0),this.Sb=0,this.Pg=null)}ni(a){const b=this.Lw;b.Ld(a)||(b.set(a),a=Ph(this),a.Aa=3,b.jh(a.Dm,0),this.Sb=0,this.Pg=null)}$f(a){a=this.BF[a];$h(this,a[0],a[1])}Rect(a){var b=a.Y,d=a.V,c=a.ma;a=a.ka;bi(this,b,d,c,d,c,a,b,a)}jd(a){Qh(this);ci(this,a);Ah.jh(this.ir,this.Of);this.Of+=8}Nd(a){var b=Ph(this);b.Aa=9;a.jh(b.De,0);this.Sb=0}jv(){}Or(){super.Or();this.ia.flush()}zh(){for(const a of this.oq)a.j();jf(this);uh.ca.IE.zh();uh.ca.ML.zh();uh.ca.ZD.zh(); for(const a of this.Xz)a.Nd();this.gI=this.eI=this.hG=this.Xv=this.Gv=this.DH=this.sc=null;this.pH=0;this.Wx="(unavailable)";this.wi=this.er=this.Vm=null;for(const a of this.Lx.values())a.zh()}async QD(){this.NG=!0;await this.kz();this.NG=!1;for(const a of this.Lx.values())a.QD(this);this.ac(this.ja,this.fa,!0)}Rj(){return this.$e}};"use strict";const yi={wP:null,xP:null,SP:null,getTime:null,RP:null};function zi(a,b){return a.pM?a.pM(b):[b.N(),b.M()]} self.B.ca.kR=class{constructor(a){a=Object.assign({},yi,a);this.pM=a.wP;this.fW=a.xP;this.qM=a.SP;this.gW=a.getTime;this.hW=a.RP;this.wn=null;this.nF=new Set}zh(){this.wn=null;for(const a of this.nF)a.zh()}Rj(a){return this.fW(a)}wa(){return this.gW()}Cz(a){this.hW(a)}};"use strict";const Ai=self.B,Bi=self.Zk.Bn,zc=Ai.A(Ai.Rect),Ci=Ai.A(Ai.Rect),Di=Ai.A(Ai.Rect),Ei=Ai.A(Ai.Rect),Fi=Bi.create(),Gi=Bi.create(),Hi={HC:null,yP:null,LC:null,bJ:!1},Ii={ku:null,WI:!1,uP:!1,AP:!1,OC:!1,FP:!1,LJ:!1}; function Ji(a,b,d){d=Object.assign({},Ii,d);Ai.D(a.ip);a.ws=0;a.xs=0;a.GG=!1;a.YA=!1;a.zw=!1;a.iN=!1;a.GW=!1;a.Yx=!1;a.Sq=0;a.NW=!!d.OC;a.qr=!!d.LJ;a.cx=!1;Ai.Md(a.yx,b);if(0!==b.length){if(d.ku){if(d.ku.length!==b.length)throw Error("incorrect indexMap length");Ai.Md(a.gp,d.ku)}else{Ai.D(a.gp);for(let g=0,k=b.length;g<k;++g)a.gp.push(g)}for(var c of b)a.ws+=c.tW,a.xs+=c.uW,c.OV&&(a.GG=!0),c.wI&&(a.YA=!0),c.fA&&(a.zw=!0),c.RF&&(a.iN=!0);a.Yx=!1;c=b[0];c=d.WI||c.Wu()||d.AP||c.wI&&!a.qr||0!==a.ws|| 0!==a.xs?!0:c.Ra().Yi()?c.fA&&(d.FP||d.OC)||c.vI&&d.OC:!1;var e=b.ie(-1);d=d.uP?!0:e.Ra().Yi()?e.fA||e.RF:(e.fA||e.RF)&&!a.Yx;if(1!==b.length||c||d){a.Qv=!1;e=0;c&&(a.Sq=1,a.ip.push(Ai.A(Ai.ca.Uf.bj.ST,a,-1,1)),e=1);for(let g=0,k=b.length;g<k;++g)0!==g||c?(b=1===e?2:1,g!==k-1||d||(b=0),a.Sq=Math.max(a.Sq,b),a.ip.push(Ai.A(Ai.ca.Uf.bj.LQ,a,e,b,g)),e=b):(a.Sq=1,a.ip.push(Ai.A(Ai.ca.Uf.bj.tR,a,-1,1,g)),e=1);d&&a.ip.push(Ai.A(Ai.ca.Uf.bj.QT,a,e,0))}else a.Qv=!0}} function Ki(a,b,d){const [c,e]=zi(a.Ce,b);if(0>=c||0>=e)throw Error("invalid draw size");a.Cd===c&&a.od===e||Li(b,c,e,0,0,a.Il,a.$w);a.Cd=c;a.od=e;a.pt.xa(d.ky);d.IC?a.rk.xa(d.IC):a.rk.set(0,0,a.Cd,a.od);a.cn.xa(a.rk);a.cn.Dj(a.Cd,a.od);b=a.ot*a.vl;wc(a.rk,a.ws*b,a.xs*b);a.bn.xa(a.rk);a.bn.Dj(a.Cd,a.od);a.rk.$(0,0,a.Cd,a.od);a.It.xa(a.rk);a.It.Dj(a.Cd,a.od)}function Li(a,b,d,c,e,g,k){c=b/2+c;e=d/2+e;kf(a,g,b/d);a=mf(a,c,e,a.Ve(d),c,e,d);Bi.xa(k,a)} function Mi(a,b){Yh(b);a.qr||(ki(b,!1),a.YA&&li(b,!0))}function Ni(a,b){a.iA?a.iA(a,b,()=>a.HF(b,a)):a.HF(b,a);a.Qv||Mi(a,b)}function Oi(a,b,d){let c=a.Il,e=a.$w;if(d){if(a.qr)d=!0;else if(0!==a.MF||0!==a.NF)d=!1;else{var [g,k]=gi(b,b.Rj());d=g!==a.Cd||k!==a.od?!1:!0}d=!d}if(d){c=Fi;e=Gi;const [m,n]=gi(b,b.Rj());Li(b,m,n,a.MF,a.NF,c,e);a.qr||ni(b)}Th(b,c);Wh(b,e)} Ai.ca.Uf=class{constructor(a,b){b=Object.assign({},Hi,b);this.Ce=a;this.HF=b.HC;this.Rv=b.yP;this.jA=b.LC;this.iA=null;this.yx=[];this.gp=[];this.ip=[];this.cx=!1;this.vi=0;this.NW=this.qr=this.Qv=this.xM=this.xo=this.Yx=this.GW=this.iN=this.zw=this.YA=this.GG=!1;this.Sq=0;this.Ml=[null,null,null];this.hN=!!b.bJ;this.od=this.Cd=this.xs=this.ws=0;this.vo=null;this.pt=Ai.A(Ai.Rect);this.rk=Ai.A(Ai.Rect);this.cn=Ai.A(Ai.Rect);this.It=Ai.A(Ai.Rect);this.bn=Ai.A(Ai.Rect);this.ot=this.vl=1;this.rc=this.vB= 0;this.xF=this.vq=null;this.NF=this.MF=0;this.tI=!1;this.Il=Bi.create();this.$w=Bi.create();this.Ce.nF.add(this)}j(){this.Ce.nF.delete(this);Ai.D(this.ip);Ai.D(this.yx);Ai.D(this.gp);this.jA=this.Rv=this.HF=this.vo=null}zh(){this.cx=!0;Ai.D(this.ip);Ai.D(this.yx);Ai.D(this.gp)}$p(a,b,d){this.vq=b;this.vo=d.QI||null;this.vi=d.yr||0;this.vl=d.devicePixelRatio||1;this.ot=d.fJ||1;this.vB=d.eJ||0;this.rc="number"===typeof d.time?d.time:this.Ce.wa();this.xo=!1;a.xo=!1;this.GG&&this.Ce.Cz(this);var c=!1; if(this.Yx){Ki(this,a,d);c=!0;var e=this.Ce,g=this.Cd,k=this.od;!e.wn||e.wn.N()===g&&e.wn.M()===k||(gg(a,e.wn),e.wn=null);null===e.wn&&(e.wn=oi(a,null,{width:g,height:k,hh:"nearest",oy:!1}));this.xF=e.wn;zc.xa(this.rk);yc();a.u0(this.vq.Qd(),this.xF,zc.Y,zc.V,zc.width(),zc.height())}if(this.Qv){c=this.yx[0];var m=a.Lq;if(b=c.wI)ki(a,!1),li(a,!0),this.bn.set(0,0,1,1),this.cn.set(0,0,1,1);of(a,c);a.$f(this.vi);ri(a,this.vq);this.cn.set(0,0,1,1);if(c.vI&&this.Rv){const {aQ:n,bQ:q,$P:r}=this.Rv(this.vo); n&&this.cn.xa(n);c=Number.isFinite(q)?1/q:0;e=Number.isFinite(r)?1/r:0}else{const [n,q]=zi(this.Ce,a);c=1/n;e=1/q}d.ky?this.pt.xa(d.ky):this.pt.set(0,0,0,0);hi(a,this.zw?this.vq:null,this.bn,this.cn,this.cn,this.pt,c,e,this.vl,this.ot,this.vB,this.rc);ii(a,this.jA(this.gp[0],a));a.tl=0;Ni(this,a);b&&(li(a,!1),ki(a,m))}else{c||Ki(this,a,d);Yh(a);a.tl=0;a.Gm=0;a.Pg=null;this.iA=d.SX||null;this.MF=d.IX||0;this.NF=d.JX||0;this.tI=!!d.WY;this.xM=a.Lq;this.qr?(ki(a,!1),this.YA&&li(a,!0)):(zc.xa(this.rk), a.Yi()?(d=this.ot*this.vl,wc(zc,Math.max(this.ws,1)*d,Math.max(this.xs,1)*d),yc(),zc.$(0,0,this.Cd,this.od)):yc(),mi(a,zc.Y,zc.V,zc.width(),zc.height(),this.od));this.Ml[0]=b;this.Ml[1]=1<=this.Sq?this.Ce.Rj(this):null;this.Ml[2]=2===this.Sq?this.Ce.Rj(this):null;for(m of this.ip)d=m.mX,b=m.yM,m.av(a,0>d?null:this.Ml[d],0>b?null:this.Ml[b]);this.Ml[1]&&this.Ce.qM(this.Ml[1],this);this.Ml[2]&&this.Ce.qM(this.Ml[2],this);this.Ml.fill(null);li(a,!1);ki(a,this.xM);this.qr||ni(a);this.xo=a.xo;this.iA= this.vo=this.xF=this.vq=null}}};"use strict";self.B.ca.Uf.bj=class{constructor(a,b,d,c=-1){this.Qg=a;this.mX=b;this.yM=d;this.oa=c}Oj(){return this.Qg}Ja(){return this.oa}wh(){return this.Oj().yx[this.Ja()]}av(){}};"use strict";const Pi=self.B;Pi.ca.Uf.bj.ST=class extends Pi.ca.Uf.bj{constructor(a,b,d,c){super(a,b,d,c)}av(a,b,d){b=this.Oj();$h(a,a.ia.ONE,a.ia.ONE_MINUS_SRC_ALPHA);nf(a);ri(a,d,b.tI);ji(a);Ni(b,a);b.bn.$(0,0,1,1)}};"use strict";const Qi=self.B,Ri=Qi.A(Qi.Rect),Si=Qi.A(Qi.jd); Qi.ca.Uf.bj.QT=class extends Qi.ca.Uf.bj{constructor(a,b,d,c){super(a,b,d,c)}av(a,b,d){const c=this.Oj();nf(a);ri(a,d);Oi(c,a,!0);a.$f(c.vi);Zh(a,b.Qd());Si.$k(c.rk);Ri.xa(c.It);xc(Ri);di(a,Si,Ri);c.hN&&vi(a,b)}};"use strict";const Ti=self.B; Ti.ca.Uf.bj.tR=class extends Ti.ca.Uf.bj{constructor(a,b,d,c){super(a,b,d,c)}av(a,b,d){b=this.Oj();ri(a,d,b.tI);ji(a);ai(a);of(a,this.wh());d=this.Ja();let c=b.It,e=b.cn,g=1/b.Cd,k=1/b.od;if(b.Rv){let {aQ:n,bQ:q,$P:r}=b.Rv(b.vo);n||(zc.set(0,0,0,0),n=zc);q||(q=b.Cd);r||(r=b.od);e=c=n;g=1/q;k=1/r}else a.Yi()&&(Di.xa(c),xc(Di),c=Di,Ei.xa(e),xc(Ei),e=Ei);let m=b.bn;a.Yi()&&(m=Ci,m.xa(b.bn),xc(m));hi(a,b.zw?b.vq:null,m,c,e,b.pt,g,k,b.vl,b.ot,b.vB,b.rc);ii(a,b.jA(b.gp[d],a));Ni(b,a);b.bn.$(0,0,1,1)}}; "use strict";const Ui=self.B,Vi=Ui.A(Ui.Rect),Wi=Ui.A(Ui.jd); Ui.ca.Uf.bj.LQ=class extends Ui.ca.Uf.bj{constructor(a,b,d,c){super(a,b,d,c)}av(a,b,d){const c=this.Oj();ri(a,d);(d=0===this.yM)?a.$f(c.vi):(ji(a),ai(a));of(a,this.wh());var e=this.Ja();let g=c.bn,k=c.It,m=c.cn;a.Yi()&&(Ci.xa(g),xc(Ci),g=Ci,Di.xa(k),xc(Di),k=Di,Ei.xa(m),xc(Ei),m=Ei);hi(a,c.zw?c.vq:null,g,k,m,c.pt,1/c.Cd,1/c.od,c.vl,c.ot,c.vB,c.rc);ii(a,c.jA(c.gp[e],a));Zh(a,b.Qd());Oi(c,a,d);Wi.$k(c.rk);Vi.xa(c.It);xc(Vi);di(a,Wi,Vi);c.hN&&vi(a,b)}};"use strict";const Xi=self.Sf;let Yi=null; const Zi=new Set;let $i=!1; self.dS=class{constructor(a){Yi=a;Object.defineProperties(this,{bY:{value:{},writable:!1},storage:{value:new self.hS,writable:!1},Eaa:{value:Yi.Dk,writable:!1}});Yi.hf.addEventListener("keydown",b=>{Zi.has(b.key)?b.stopPropagation():Zi.add(b.key)});Yi.hf.addEventListener("keyup",b=>Zi.delete(b.key));Yi.tb().addEventListener("window-blur",()=>Zi.clear());Yi.Dk&&(self.alert=b=>{$i||($i=!0,console.warn("[Construct] alert() was called from a Web Worker, because the project 'Use worker' setting is enabled. This method is not normally available in a Web Worker. Construct has implemented the alert for you, but note that other features may be missing in worker mode. You may wish to disable 'Use worker', or use a more convenient function like console.log(). For more information please refer to the scripting section of the manual."));return this.alert(b)})}addEventListener(a, b){Yi.hf.addEventListener(a,b)}removeEventListener(a,b){Yi.hf.removeEventListener(a,b)}get rP(){return aj(Yi)}get gaa(){return bj(Yi)}get GJ(){return Yi.Jd}set GJ(a){Xi.we(a);Yi.gv(a)}get VX(){return Yi.iw}random(){return Yi.Kl()}get PC(){return Yi.dc().rw}get keyboard(){const a=Yi.nA.keyboard;if(!a)throw Error("runtime.keyboard used but Keyboard object missing - add it to your project first");return a}get KP(){const a=Yi.nA.KP;if(!a)throw Error("runtime.mouse used but Mouse object missing - add it to your project first"); return a}get IJ(){const a=Yi.nA.IJ;if(!a)throw Error("runtime.touch used but Touch object missing - add it to your project first");return a}alert(a){return cj(Yi,"runtime","alert",{message:a+(Yi.Dk?" [via Web Worker]":"")})}};"use strict";self.YR=class{constructor(){}};"use strict";const dj=self.Sf;self.hS=class{constructor(){this.Xh=ej(Yi)}getItem(a){dj.le(a);return this.Xh.getItem(a)}setItem(a,b){dj.le(a);return this.Xh.setItem(a,b)}removeItem(a){dj.le(a);return this.Xh.removeItem(a)}clear(){return this.Xh.clear()}keys(){return this.Xh.keys()}}; "use strict";const fj=self.Sf,gj=new WeakMap; self.FD=class{constructor(a){gj.set(this,a);Object.defineProperties(this,{name:{value:a.qa(),writable:!1}});a.I().gN.set(this,a)}addEventListener(a,b){fj.le(a);fj.ll(b);gj.get(this).hf.addEventListener(a,b)}removeEventListener(a,b){fj.le(a);fj.ll(b);gj.get(this).hf.removeEventListener(a,b)}*hy(){for(const a of hj(gj.get(this)))yield ij(a)}RI(a){fj.Bh(void 0);fj.Bh(void 0);if("number"!==typeof a&&"string"!==typeof a)throw new TypeError("invalid layer parameter");var b=gj.get(this);const d=b.I();a= d.dc().Z(a);if(!a)throw Error("invalid layer");b=jj(d,b,a,void 0,void 0,void 0,void 0);a=d.Da();kj(a,!0);lj(b);kj(a,!1);mj(a)||0<d.nb.et||nj(d);return ij(b)}};"use strict";const oj=self.Sf,pj=new WeakMap; self.aS=class{constructor(a){pj.set(this,a);const b=[],d=a.Sa,c=d.Wi().length;for(let e=0;e<c;++e)b.push(new self.ED(d,e));Object.defineProperties(this,{name:{value:a.qa(),writable:!1},index:{value:a.Ja(),writable:!1},sP:{value:b,writable:!1}})}addEventListener(a,b){oj.le(a);oj.ll(b);pj.get(this).hf.addEventListener(a,b)}removeEventListener(a,b){oj.le(a);oj.ll(b);pj.get(this).hf.removeEventListener(a,b)}get width(){return pj.get(this).N()}set width(a){oj.we(a);pj.get(this).gg(a)}get height(){return pj.get(this).M()}set height(a){oj.we(a); pj.get(this).Kg(a)}set scale(a){oj.we(a);pj.get(this).fm(a)}get scale(){return pj.get(this).Vc}set angle(a){oj.we(a);pj.get(this).fe(a)}get angle(){return pj.get(this).ua()}set scrollX(a){oj.Bh(a);pj.get(this).Xj(a)}get scrollX(){return pj.get(this).uh()}set scrollY(a){oj.Bh(a);pj.get(this).Yj(a)}get scrollY(){return pj.get(this).vh()}scrollTo(a,b){oj.Bh(a);oj.Bh(b);const d=pj.get(this);d.Xj(a);d.Yj(b)}*GI(){for(const a of pj.get(this).GI())yield a.QA}set PP(a){oj.le(a);const b=pj.get(this);if("perspective"=== a)qj(b);else if("orthographic"===a)rj(b);else throw Error("invalid projection");}get PP(){return pj.get(this).Vg?"orthographic":"perspective"}};"use strict";const sj=self.B,tj=self.Sf,uj=new WeakMap,vj=new Map([["normal",0],["additive",1],["copy",3],["destination-over",4],["source-in",5],["destination-in",6],["source-out",7],["destination-out",8],["source-atop",9],["destination-atop",10]]),wj=new Map([...vj.entries()].map(a=>[a[1],a[0]])),xj=sj.A(sj.kb); self.$R=class{constructor(a){uj.set(this,a);const b=[],d=a.Sa,c=d.Wi().length;for(let e=0;e<c;++e)b.push(new self.ED(d,e));Object.defineProperties(this,{name:{value:a.qa(),writable:!1},index:{value:a.Ja(),writable:!1},PC:{value:a.Fc().rw,writable:!1},sP:{value:b,writable:!1}})}*tJ(){for(const a of uj.get(this).tJ())yield a.QA}get isVisible(){return uj.get(this).jt}set isVisible(a){uj.get(this).fg(a)}get opacity(){return uj.get(this).Gc()}set opacity(a){a=sj.$(+a,0,1);isNaN(a)||uj.get(this).bg(a)}set scale(a){tj.we(a); yj(uj.get(this),a)}get scale(){return uj.get(this).Vc}set angle(a){tj.we(a);uj.get(this).fe(a)}get angle(){return uj.get(this).wf}set By(a){tj.we(a);uj.get(this).ig(a)}get By(){return uj.get(this).eb()}set yr(a){tj.le(a);a=vj.get(a);if("number"!==typeof a)throw Error("invalid blend mode");uj.get(this).$f(a)}get yr(){return wj.get(uj.get(this).cl())}set backgroundColor(a){tj.aE(a);if(3>a.length)throw Error("expected 3 elements");Wb(xj,a[0],a[1],a[2]);a=uj.get(this);const b=a.ym;cc(b,xj)||(Yb(b,xj), a.I().P())}get backgroundColor(){const a=uj.get(this).ym;return[a.hb,a.lb,a.gb]}set scrollX(a){tj.Bh(a);const b=uj.get(this);zj(b,!0);b.Xj(a)}get scrollX(){return uj.get(this).uh()}set scrollY(a){tj.Bh(a);const b=uj.get(this);zj(b,!0);b.Yj(a)}get scrollY(){return uj.get(this).vh()}scrollTo(a,b){tj.Bh(a);tj.Bh(b);const d=uj.get(this);zj(d,!0);d.Xj(a);d.Yj(b)}};"use strict";const Aj=self.B,Bj=self.Sf,Cj=new WeakMap,Dj=new WeakMap; function Ej(a){let b=Dj.get(a);if(b)return b;b=Aj.A(Aj.Event.tb);Dj.set(a,b);return b}let Fj=null; self.Pn=class{constructor(){Cj.set(this,Fj);const a={mf:{value:Fj.I().Ak,writable:!1},qJ:{value:Fj.F().uw,writable:!1},uid:{value:Fj.Ab,writable:!1}};var b=Fj;if(0!==b.Af.length){var d={},c=Gj(b.Ne);for(let g=0,k=c.length;g<k;++g)d[c[g]]={configurable:!1,enumerable:!0,get:Hj.Instance.prototype.xV.bind(b,g),set:Hj.Instance.prototype.Xn.bind(b,g)};b=Object.create(Object.prototype,d);a.zaa={value:b,writable:!1}}b=Fj.Ad;if(0!==b.length){d={};for(var e of b)d[e.oh().Qj()]={value:e.Tr(),writable:!1};e= Object.create(Object.prototype,d);a.dy={value:e,writable:!1}}Object.defineProperties(this,a);Fj.I().gN.set(this,Fj)}static si(a){Fj=a}static bk(){return Fj}yv(){const a=Dj.get(this);a&&(a.j(),Dj.delete(this));Cj.delete(this)}addEventListener(a,b,d){Bj.le(a);Bj.ll(b);Ej(this).addEventListener(a,b,d)}removeEventListener(a,b,d){Bj.le(a);Bj.ll(b);Ej(this).removeEventListener(a,b,d)}dispatchEvent(a){Ej(this).dispatchEvent(a)}set GJ(a){Bj.we(a);Cj.get(this).gv(a)}get GJ(){return Ij(Cj.get(this))}};"use strict"; const Jj=self.B,Kj=self.Sf,Lj=self.Pn,Mj=new WeakMap,Nj=new Map([["normal",0],["additive",1],["copy",3],["destination-over",4],["source-in",5],["destination-in",6],["source-out",7],["destination-out",8],["source-atop",9],["destination-atop",10]]),Oj=new Map([...Nj.entries()].map(a=>[a[1],a[0]]));Jj.A(Jj.kb); self.Wr=class a extends Lj{constructor(){super();var b=Lj.bk();Mj.set(this,b);const d=[];var c=b.m();if(b=c.Bf){c=c.F().Sa.Wi().length;for(let e=0;e<c;++e)d.push(new self.ED(b,e))}Object.defineProperties(this,{sP:{value:d,writable:!1}})}get PC(){return Mj.get(this).m().Fc().rw}get JP(){return Mj.get(this).m().Z().QA}get x(){return Mj.get(this).m().T()}set x(b){b=+b;const d=Mj.get(this).m();isNaN(b)||d.T()===b||(d.hg(b),Pj(d))}get y(){return Mj.get(this).m().U()}set y(b){b=+b;const d=Mj.get(this).m(); isNaN(b)||d.U()===b||(d.Lg(b),Pj(d))}setPosition(b,d){b=+b;d=+d;const c=Mj.get(this).m();isNaN(b)||isNaN(d)||c.T()===b&&c.U()===d||(c.Zj(b,d),Pj(c))}get By(){return Mj.get(this).m().eb()}set By(b){b=+b;const d=Mj.get(this),c=d.m();isNaN(b)||c.eb()===b||(c.ig(b),d.I().P())}get width(){return Mj.get(this).m().N()}set width(b){b=+b;const d=Mj.get(this).m();isNaN(b)||d.N()===b||(d.gg(b),Pj(d))}get height(){return Mj.get(this).m().M()}set height(b){b=+b;const d=Mj.get(this).m();isNaN(b)||d.M()===b||(d.Kg(b), Pj(d))}get angle(){return Mj.get(this).m().ua()}set angle(b){b=Jj.Yd(+b);const d=Mj.get(this).m();isNaN(b)||d.ua()===b||(d.fe(b),Pj(d))}$I(){var b=Qj(Mj.get(this).m());new DOMRect(b.Y,b.V,b.width(),b.height())}get isVisible(){return Mj.get(this).m().Rd()}set isVisible(b){b=!!b;const d=Mj.get(this),c=d.m();c.Rd()!==b&&(c.fg(b),d.I().P())}get opacity(){return Mj.get(this).m().Gc()}set opacity(b){b=Jj.$(+b,0,1);const d=Mj.get(this),c=d.m();isNaN(b)||c.Gc()===b||(c.bg(b),d.I().P())}set yr(b){Kj.le(b); b=Nj.get(b);if("number"!==typeof b)throw Error("invalid blend mode");const d=Mj.get(this);d.m().$f(b);d.I().P()}get yr(){return Oj.get(Mj.get(this).m().cl())}get zIndex(){return Rj(Mj.get(this).m())}fh(b,d){Kj.Bh(b);Kj.Bh(d);return Sj(Mj.get(this).m(),+b,+d)}getParent(){const b=Mj.get(this).Ea();return b?ij(b):null}*ry(){for(const b of Mj.get(this).ry())yield ij(b)}*children(){for(const b of Mj.get(this).children())yield ij(b)}*Cj(){for(const b of Mj.get(this).Cj())yield ij(b)}removeChild(b){Kj.bE(b, a);const d=Mj.get(this);b=Mj.get(b);d.kl(b)}};"use strict";const Wj=new WeakMap;self.N1=class extends self.Wr{constructor(){super();Wj.set(this,self.Pn.bk())}focus(){Xj(Wj.get(this).na,{focus:!0})}blur(){Xj(Wj.get(this).na,{focus:!1})}};"use strict";const Yj=self.B,Zj=self.Sf,ak=new WeakMap,bk=new WeakMap;function ck(a){let b=bk.get(a);if(b)return b;b=Yj.A(Yj.Event.tb);bk.set(a,b);return b}let dk=null; self.iz=class{constructor(){ak.set(this,dk);var a={value:dk.I().Ak,writable:!1},b=dk.Cg();if(null===b.qw){const d=b.jX;if(d){if(b.qw=new d(b),!(b.qw instanceof ek))throw new TypeError("script interface class must derive from IBehavior");}else b.qw=new ek(b)}Object.defineProperties(this,{mf:a,behavior:{value:b.qw,writable:!1}})}static si(a){dk=a}static bk(){return dk}get instance(){return ij(ak.get(this).H)}yv(){const a=bk.get(this);a&&(a.j(),bk.delete(this));ak.delete(this)}addEventListener(a,b,d){Zj.le(a); Zj.ll(b);ck(this).addEventListener(a,b,d)}removeEventListener(a,b,d){Zj.le(a);Zj.ll(b);ck(this).removeEventListener(a,b,d)}dispatchEvent(a){ck(this).dispatchEvent(a)}};"use strict";const fk=new WeakMap;self.tK=class{constructor(a){fk.set(this,a);Object.defineProperties(this,{mf:{value:a.I().Ak,writable:!1}})}};"use strict";const gk=self.B,hk=self.Sf,ik=new WeakMap;gk.A(gk.kb); self.ED=class{constructor(a,b){ik.set(this,a);Object.defineProperties(this,{index:{value:b,writable:!1}})}get name(){return ik.get(this).Wi()[this.index].qa()}getParameter(a){hk.we(a);a=Math.floor(+a);a=ik.get(this).mK(this.index,a);if(null===a)throw new RangeError("invalid index");return a instanceof gk.kb?[a.hb,a.lb,a.gb]:a}};"use strict";const jk=new WeakMap; self.VR=class{constructor(a){jk.set(this,a);Object.defineProperties(this,{name:{value:a.qa(),writable:!1},speed:{value:a.il(),writable:!1},EP:{value:a.Bw,writable:!1},Cr:{value:a.gi(),writable:!1}})}*frames(){for(const a of jk.get(this).Ae)yield a.zW}};"use strict";const kk=new WeakMap;self.uK=class{constructor(a){kk.set(this,a)}get width(){return kk.get(this).N()}get height(){return kk.get(this).M()}};"use strict";const lk=new WeakMap; self.WR=class extends self.uK{constructor(a){super(a.xd());lk.set(this,a);Object.defineProperties(this,{duration:{value:a.$v,writable:!1}})}};"use strict";const mk=self.Sf,nk=new WeakMap;function ok(a){a=nk.get(a);if(a.Uc)throw Error("timeline/tween was released and is no longer valid");return a} self.kS=class{constructor(a){nk.set(this,a)}pause(){ok(this).cd()}resume(){pk(ok(this))}set time(a){mk.we(a);ok(this).Dh(a)}get time(){return ok(this).wa()}set totalTime(a){mk.we(a);ok(this).js(a)}get totalTime(){return ok(this).vc()}set EP(a){ok(this).Hz(!!a)}get EP(){return ok(this).Np()}set playbackRate(a){mk.we(a);ok(this).Ch(a)}get playbackRate(){return ok(this).gd}get progress(){const a=ok(this);return a.wa()/a.vc()}get Dr(){return ok(this).gf}get finished(){return qk(ok(this))}get Haa(){return ok(this).IsPlaying()}}; "use strict";const rk=new WeakMap,sk=new WeakMap;let tk=null;function uk(a){a=rk.get(a);if(a.Uc)throw Error("timeline/tween was released and is no longer valid");return a}self.P1=class extends self.kS{constructor(a,b,d){super(a);tk||(tk=d.J$);rk.set(this,a);b&&sk.set(this,b)}stop(){const a=uk(this);vk(sk.get(this),a)}get instance(){const a=uk(this).ba();return a?ij(a):null}get value(){const a=uk(this);if("value"!==a.Dg())throw Error("not a value tween");return a.$d("value").Bb().Wa()}};"use strict"; const wk=self.B,xk=new Set(["local","remote"]),yk=new Map([["mp4","video/mp4"],["webm","video/webm"],["m4a","audio/mp4"],["mp3","audio/mpeg"],["js","application/javascript"],["wasm","application/wasm"],["svg","image/svg+xml"],["html","text/html"]]);function zk(a){const b=wk.A(wk.Event,"loadingprogress");a.oB=wk.$(a.Iv/a.Sx,0,1);b.progress=a.oB;a.g.tb().dispatchEvent(b)}function Ak(a,b){a.Bi=b;if("flat"===b){b=new Map;for(const [d,c]of a.zt.entries())b.set(d.toLowerCase(),c);a.zt=b}} function Bk(a,b){"flat"===a.Bi&&(b=b.toLowerCase());return a.zt.has(b)}function Ck(a,b){"flat"===a.Bi&&(b=b.toLowerCase());return a.zt.get(b)||null}function Dk(a,b){"flat"===a.Bi&&(b=b.toLowerCase());if(!Bk(a,b))return b;var d=a.yt.get(b);d||(d=Ck(a,b),d=URL.createObjectURL(d),a.yt.set(b,d));return d}async function Ek(a,b){a=await Fk(a,b,"buffer");b?(b=b.split("."),b=2>b.length?"":yk.get(b.ie(-1).toLowerCase())||""):b="";return new Blob([a],{type:b})} function Fk(a,b,d){"flat"===a.Bi&&(b=b.toLowerCase());return cj(a.g,"runtime","cordova-fetch-local-file",{filename:b,as:d})}async function Gk(a,b){"flat"===a.Bi&&(b=b.toLowerCase());var d=a.yt.get(b);if(d)return d;d=await Ek(a,b);d=URL.createObjectURL(d);a.yt.set(b,d);return d}function Hk(a,b){"flat"===a.Bi&&(b=b.toLowerCase());b=a.ON+b;return Bk(a,b)?Dk(a,b):b} function Ik(a,b){if(wk.mz(b))return Promise.resolve(b);if(Bk(a,b))return Promise.resolve(Dk(a,b));if(a.ZA&&a.gt)return Gk(a,b);"flat"===a.Bi&&(b=b.toLowerCase());return Promise.resolve(b)}async function Jk(a){try{await Promise.all(a.yB),a.oB=1}catch(b){console.error("Error loading: ",b),a.qG=!0,zk(a)}} async function Kk(a){const b=[],d=[];for(const [c,e,g]of a.AI)a.Sx+=g,b.push(Lk(a,c,e,d).then(()=>{a.Iv+=g;Sd(a.HN)}));await Promise.all(b);a.g.Dk&&0<d.length&&await cj(a.g,"runtime","load-webfonts",{webfonts:d})}function Mk(a,b){wk.Md(a.AI,b);a.AI.length&&a.yB.push(Kk(a))} async function Lk(a,b,d,c){try{const e=await Ik(a,d),g=new FontFace(b,`url('${e}')`);a.g.Dk?self.fonts.add(g):document.fonts.add(g);await g.load();a.g.Dk&&c.push({name:b,url:e})}catch(e){console.warn(`[C3 runtime] Failed to load web font '${b}': `,e)}}function Nk(a,b,d){a.dO=!!d;for(const [c,e,g]of b)a.wF.set(c,{fileName:c,UX:e.map(k=>({type:k[0],S$:k[1],vP:c+k[1],fileSize:k[2]})),lY:g})} function Ok(a,b){"flat"===a.Bi&&(b=b.toLowerCase());b=a.wF.get(b);if(!b)return null;let d=null;for(const c of b.UX)if(d||"audio/webm; codecs=opus"!==c.type||(d=c),a.EO[c.type])return c;return d}function Pk(a,b){return(b=Ok(a,b))?{url:Hk(a,b.vP),type:b.type}:null}function Qk(a){if(a.dO){const b=[];for(const d of a.wF.values()){if(d.lY)continue;const c=Ok(a,d.fileName);c&&b.push({DY:d.fileName,url:Hk(a,c.vP),type:c.type,fileSize:c.fileSize})}return b}return[]} wk.DQ=class extends wk.ta{constructor(a,b){super();var d=b.exportType;this.g=a;this.Bi="folders";this.zt=new Map;this.yt=new Map;this.SW=new Map;this.ZA="cordova"===d;this.WG=!!b.isiOSCordova;this.gt=!!b.isFileProtocol;this.EO=b.supportedAudioFormats||{};this.wF=new Map;this.dO=!1;this.ZM=this.ON="";this.rA="html5"===d||"scirra-arcade"===d||"instant-games"===d?"remote":"local";this.mF=[];this.uF=new Map;this.AI=[];this.yB=[];this.UM=!1;this.oB=this.Iv=this.Sx=0;this.qG=!1;this.HN=wk.A(wk.UT,()=>zk(this), 50);this.OH=new wk.UD(Math.max(wk.hardwareConcurrency,8));if(a=b.previewImageBlobs){(d=b.previewProjectFileBlobs)&&Object.assign(a,d);(d=b.projectData)&&(a["data.json"]=d);for(const [c,e]of Object.entries(a))this.zt.set(c,e)}if(b=b.previewProjectFileSWUrls)for(const [c,e]of Object.entries(b))this.SW.set(c,e);new self.YR}j(){this.zt.clear();for(const a of this.yt.values())a.startsWith("blob:")&&URL.revokeObjectURL(a);this.yt.clear();for(const a of this.mF)a.j();wk.D(this.mF);this.uF.clear();wk.D(this.yB); this.g=null}I(){return this.g}Zl(a,b){b=b||this.rA;const d=Ck(this,a);return d?Promise.resolve(d):wk.qz(a)?("flat"===this.Bi&&(a=a.toLowerCase()),this.ZA&&this.gt?Ek(this,a):"local"===b?this.OH.$c(()=>wk.Zl(a)):wk.Zl(a)):wk.Zl(a)}Au(a){const b=Ck(this,a);return b?wk.JQ(b):wk.qz(a)?("flat"===this.Bi&&(a=a.toLowerCase()),this.ZA&&this.gt?Fk(this,a,"buffer"):"local"===this.rA?this.OH.$c(()=>wk.Au(a)):wk.Au(a)):wk.Au(a)}Bu(a){const b=Ck(this,a);return b?wk.SJ(b):wk.qz(a)?("flat"===this.Bi&&(a=a.toLowerCase()), this.ZA&&this.gt?Fk(this,a,"text"):"local"===this.rA?this.OH.$c(()=>wk.Bu(a)):wk.Bu(a)):wk.Bu(a)}async gK(a){a=await this.Bu(a);return JSON.parse(a)}sz(a){if(a.my&&!xk.has(a.my))throw Error("invalid load policy");let b=this.uF.get(a.url);if(b)return b;b=wk.A(wk.vK,this,{url:a.url,size:a.size||0,my:a.my||this.rA});this.mF.push(b);this.uF.set(b.Wk,b);this.UM||(this.Sx+=b.Mn(),this.yB.push(Rk(b).then(()=>{var d=b.Mn();this.Iv+=d;Sd(this.HN)})));return b}};"use strict";const Sk=self.B; function Rk(a){if("local"===a.jH||a.vs)return a.QG=!0,Promise.resolve();if(a.Po)return a.Po;a.Po=a.Ib.Zl(a.Wk,a.jH).then(b=>{a.QG=!0;a.Po=null;return a.vs=b}).catch(b=>console.error("Error loading resource: ",b));return a.Po}Sk.CQ=class extends Sk.ta{constructor(a,b){super();this.Ib=a;this.g=a.I();this.Wk=b.url||"";this.Mt=b.size;this.jH=b.my;this.vs=b.blob||null;this.QG=!!this.vs;this.Po=null}j(){this.vs=this.g=this.Ib=this.Po=null}Mn(){return this.Mt}pz(){return this.QG}};"use strict"; const Tk=self.B,Uk=new Tk.UD,Vk=new Set; Tk.vK=class extends Tk.CQ{constructor(a,b){super(a,b);this.Rl=this.jr=null;this.Gd=0;this.$M=this.bN=-1;Vk.add(this)}j(){this.Zi();if(0!==this.Gd)throw Error("released image asset which still has texture references");this.jr=null;Vk.delete(this);super.j()}static Zr(){for(const a of Vk)a.jr=null,a.Rl=null,a.Gd=0}Un(a,b){b=b||{};this.Gd++;if(this.Rl)return Promise.resolve(this.Rl);if(this.jr)return this.jr;b.gP=this.g.da.GO;return this.jr=(this.vs?Promise.resolve(this.vs):this.Po?this.Po:this.Ib.Zl(this.Wk, this.jH)).then(d=>Uk.$c(()=>pi(a,d,b).then(c=>{this.jr=null;if(0===this.Gd)return gg(a,c),null;this.Rl=c;this.bN=c.N();this.$M=c.M();return this.Rl}))).catch(d=>{console.error("Failed to load texture: ",d);throw d;})}Zi(){if(0>=this.Gd)throw Error("texture released too many times");this.Gd--;0===this.Gd&&this.Rl&&(gg(this.Rl.Ra(),this.Rl),this.Rl=null)}Qd(){return this.Rl}N(){return this.bN}M(){return this.$M}};"use strict";const Wk=self.B;function Xk(a,b){return a.m().Vi-b.m().Vi} function Yk(a){a.yw&&(a.G.length===a.Kk.size?a.bd():(Wk.ai(a.G,a.Kk),a.Kk.clear(),a.yw=!1))} Wk.WT=class extends Wk.ta{constructor(a,b,d){super();this.X=b;this.R=d;this.G=[];this.Dw=!0;this.Kk=new Set;this.yw=!1}j(){Wk.D(this.G);this.Kk.clear()}bd(){Wk.D(this.G);this.Dw=!0;this.Kk.clear();this.yw=!1}Qn(){if(!this.G.length)return!0;if(this.G.length>this.Kk.size)return!1;Yk(this);return!0}lz(a){this.Kk.has(a)?(this.Kk.delete(a),0===this.Kk.size&&(this.yw=!1)):(this.G.push(a),this.Dw=1===this.G.length)}Ah(a){this.Kk.add(a);this.yw=!0;50<=this.Kk.size&&Yk(this)}oD(a){Yk(this);this.Dw||(this.G.sort(Xk), this.Dw=!0);this.G.length&&a.push(this.G)}};"use strict";const $k=self.B; $k.XT=class extends $k.ta{constructor(a,b){super();this.JF=a;this.IF=b;this.mk=$k.A($k.Zu)}j(){this.mk.j();this.mk=null}Kn(a,b,d){let c=this.mk.S(a,b);return c?c:d?(c=$k.A($k.WT,this,a,b),this.mk.Set(a,b,c),c):null}$j(a){return Math.floor(a/this.JF)}ak(a){return Math.floor(a/this.IF)}jm(a,b,d){if(b)for(let c=b.Y,e=b.ma;c<=e;++c)for(let g=b.V,k=b.ka;g<=k;++g){if(d&&d.fh(c,g))continue;const m=this.Kn(c,g,!1);m&&(m.Ah(a),m.Qn()&&this.mk.Jn(c,g))}if(d)for(let c=d.Y,e=d.ma;c<=e;++c)for(let g=d.V,k=d.ka;g<= k;++g)b&&b.fh(c,g)||this.Kn(c,g,!0).lz(a)}Bz(a,b){let d=this.$j(a.Y);const c=this.ak(a.V),e=this.$j(a.ma);for(a=this.ak(a.ka);d<=e;++d)for(let g=c;g<=a;++g){const k=this.Kn(d,g,!1);k&&k.oD(b)}}};"use strict";const al=self.B,bl=new al.Rect,cl=new al.jd,dl=[];new al.Rect;new al.Rect;const el=self.Zk,fl=el.XC,gl=el.zy,hl=el.Bn;hl.create();const il=fl.create(),jl=gl.create(),kl=fl.create(),ll=fl.create(),ml=fl.create(),nl=al.A(al.fq);al.A(al.Rect);function ol(a,b){return a.m().Vi-b.m().Vi} function pl(a,b){return a.m().eb()-b.m().eb()}const ql=[],rl=[],sl=[]; function tl(a,b,d=!1){if(a.G.includes(b))d&&a.G.sort((g,k)=>{g=ul(g.m());k=ul(k.m());return g-k});else if(b.Xe()){var c=[...b.Cj()];c.push(b);c.sort((g,k)=>{g=ul(g.m());k=ul(k.m());return g-k});for(var e of c)if(e.wc())for(const g of e.ud)c.includes(g)||(b=[...g.Cj()],b.push(g),b.sort((k,m)=>{k=ul(k.m());m=ul(m.m());return k-m}),b&&b.length&&c.splice(c.length,0,...b));for(const g of c)g.qb().ne&&a.ri(g,!0)}else if(b.qb().ne&&a.ri(b,!0),b.wc())for(c of b.ud)if(e=[...c.Cj()],e.push(c),e.sort((g,k)=> {g=ul(g.m());k=ul(k.m());return g-k}),e&&e.length)for(const g of e)g.qb().ne&&a.ri(g,!0)}function yj(a,b){a.Vc!==b&&(a.Vc=b,vl(a.Gi),wl(a),a.g.P())}function zj(a,b){b=!!b;if(a.Mm!==b){if(a.Mm=b)b=a.Fc(),a.xj=b.uh(),a.yj=b.vh();wl(a);a.g.P()}}function xl(a){a.PB.xa(a.Za);ec(a.PB)}function yl(a){return a.xX&&!a.NO}function zl(a){a.EI=!1;a.hB=!1} function Al(a,b){if(b){b=new Set;for(var d of a.G){var c=d.m().Vi;0<=c&&b.add(c)}d=-1;for(const e of a.G)if(c=e.m(),!(0<=c.Vi)){for(++d;b.has(d);)++d;c.Vi=d|0}}a.G.sort(ol)}function*Bl(a){yield a;yield*a.tJ()}function Cl(a){for(const b of Bl(a))if(!b.eB)return!1;return!0}function wl(a){a.SG=!0;a.Fw=!0;a.Gw=!0} function Dl(a){if(a.Gw){a.Gw=!1;var b=a.g.IB,d=a.g.JB,c=(a.uh()-b)*a.df+b,e=(a.vh()-d)*a.ef+d;b=El(a);d=a.g.eh/b;b=a.g.Pf/b;c-=d/2;var g=e-b/2;a.g.oj&&(c=Math.round(c),g=Math.round(g));e=a.WO;e.set(c,g,c+d,g+b);d=a.ua();0!==d&&(bl.xa(e),bl.offset(-e.Cn(),-e.Dn()),Dc(cl,bl,d),cl.$I(bl),bl.offset(e.Cn(),e.Dn()),e.xa(bl));b=a.wd;Fl(a,b,a.by);if(Gl(a)){d=a.xI;e=a.g.da;c=e.Bd;e=e.md;const [k,m]=Hl(a,0,0,b),[n,q]=Hl(a,c,0,b),[r,w]=Hl(a,c,e,b),[x,z]=Hl(a,0,e,b);a=Math.min(k,n,r,x);b=Math.min(m,q,w,z);c= Math.max(k,n,r,x);e=Math.max(m,q,w,z);isFinite(a)||(a=-Infinity);isFinite(b)||(b=-Infinity);isFinite(c)||(c=Infinity);isFinite(e)||(e=Infinity);d.set(a,b,c,e)}else a.xI.xa(a.by)}}function Il(a){Dl(a);return a.by}function Jl(a){Dl(a);return a.xI}function Kl(a){a=a.Fc();return[Ll(a),Ml(a)]}function Nl(a,b){if(a.Gi.Vg)return 1;a=a.Ve(void 0)/El(a);return a/(a-b)} function Fl(a,b,d){Dl(a);var c=a.WO;if(0===b)d.xa(c);else{let k=c.Cn(),m=c.Dn();var e=Nl(a,b);const n=c.width()/e;c=c.height()/e;const [q,r]=Kl(a);if(.5!==q||.5!==r){const w=a.Ve(void 0)/El(a);var g=a.g;const x=a.Ve()/w;e=(q-.5)*g.eh/x;g=(r-.5)*g.Pf/x;a=a.ua();0!==a&&(nl.set(e,g),nl.rotate(a),e=nl.X,g=nl.R);b=al.WC(w,0,b);k+=al.je(e,0,b);m+=al.je(g,0,b)}d.set(k-n/2,m-c/2,k+n/2,m+c/2)}} function Ol(a){return!Pl(a)&&a.NO?(al.Md(sl,a.G),sl.sort((b,d)=>{var c=a.Fc().oM,e=c[0],g=c[1];c=c[2];var k=b.m();const m=d.m();d=k.T()-e;b=k.U()-g;k=k.eb()-c;e=m.T()-e;g=m.U()-g;c=m.eb()-c;return e*e+g*g+c*c-(d*d+b*b+k*k)}),sl):a.G}function Ql(a,b){al.Sl(b,Ol(a));for(const d of a.jp)d.Rd()&&0<d.Gc()&&Ql(d,b)}function Pl(a){return!a.I().vn||!a.gX}function Gl(a){return!Pl(a)&&a.Fc().FW}function Rl(a){if(!Gl(a))return!1;for(const b of a.jp)if(!Rl(b))return!1;return!0} function Sl(a){return a.Rd()&&0<a.Gc()&&Tl(a)}function Ul(){var a=Vl[0];for(const b of a.jp)if(Sl(b))return!0;return!1}function*Wl(a){for(const b of a.jp)yield*Wl(b);yield a}function Xl(a,b){0!==b.size&&0<al.ai(a.G,b)&&(0===a.G.length&&(a.um=!1),zl(a))} function Zl(a){if(!a.EI){a.G.sort(pl);if(yl(a))for(let e=0,g=a.G.length;e<g;++e){var b=a.G[e].m();b.Vi=e|0;var d=a.Kt,c=b.rx;b=c.Y;const k=c.V,m=c.ma;for(c=c.ka;b<=m;++b)for(let n=k;n<=c;++n){const q=d.Kn(b,n,!1);q&&(q.Dw=!1)}}else for(let e=0,g=a.G.length;e<g;++e)a.G[e].m().Vi=e|0;a.EI=!0}}function Tl(a){if(0<a.G.length||!a.Cl)return!0;for(const b of a.jp)if(Tl(b))return!0;return!1}function $l(a){if(a.lv())return!0;for(const b of a.jp)if($l(b))return!0;return!1} function El(a){return(a.Vc*a.Gi.Vc-1)*a.Ok+1} function am(a,b){if(a.SG){var d=a.$w;const q=a.g;var c=a.Fc();if(Gl(a)){fl.xa(kl,c.oM);fl.xa(ll,c.cW);fl.xa(ml,c.dW);c=q.IB;var e=q.JB,g=ll[0]-kl[0],k=ll[1]-kl[1],m=ll[2]-kl[2];kl[0]=(kl[0]-c)*a.df+c;kl[1]=(kl[1]-e)*a.ef+e;kl[2]*=Math.max(a.df,a.ef);ll[0]=kl[0]+g;ll[1]=kl[1]+k;ll[2]=kl[2]+m}else{c=a.g;k=a.Fc();g=c.IB;e=c.JB;g=(a.uh()-g)*a.df+g;m=(a.vh()-e)*a.ef+e;c.oj&&(g=Math.round(g),m=Math.round(m));e=g+0;g=m+0;k=k.Vg?a.Ve(null):a.Ve(null)/El(a);const [r,w]=Kl(a);if(.5!==r||.5!==w){var n=a.Ve(null)/ k;m=(r-.5)*c.eh/n;c=(w-.5)*c.Pf/n;n=a.ua();0!==n&&(nl.set(m,c),nl.rotate(n),m=nl.X,c=nl.R);e+=m;g+=c}const [x,z,E]=[e,g,k];fl.set(kl,x,z,E);fl.set(ll,x,z,E-100);c=a.ua();0===c?fl.set(ml,0,1,0):fl.set(ml,Math.sin(c),Math.cos(c),0)}lf(b,d,kl,ll,ml,q.Pf);a.SG=!1}return a.$w} function bm(a,b){if(a.gB){var d=a.g.da;const [e,g]=Kl(a);if(a.Gi.Vg){var c=d.el();const k=self.devicePixelRatio,m=2*b.Ve(c)*k*b.Ox/c;d=d.fl()*m/(2*k);c=c*m/(2*k);af.EY(a.Il,-d,d,-c,c,b.ax,b.gw)}else.5===e&&.5===g?hl.xa(a.Il,d.sA):kf(b,a.Il,d.fl()/d.el(),e,g);a.gB=!1}return a.Il}function cm(a,b){Th(b,bm(a,b));a=am(a,b);Wh(b,a)} function dm(a,b,d){const c=Il(a),e=a.mg,g=a.Fc().Vg,k=em(a.Fc());let m=null;for(let n=0,q=d.length;n<q;++n){const r=d[n];if(r===m)continue;m=r;const w=r.m();w.Rd()&&fm(w,c,k,g)&&gm(a,r,w,b,e)}} function gm(a,b,d,c,e){if(d.Ru()){const E=d.Bf.Oj();var g=E.$p,k=d.cl(),m=a.g.Iu();var n=b.g;var q=n.bt.get(b);n=q?q.S():bj(n);q=a.g.Ju()*El(a);var r=a.ua(),w=Qj(d);if(E.Qv&&!E.Yx)var x=null;else a:{var z=Qj(d);x=hm(d);d=d.dl();const C=x+d,G=z.Y,I=z.V,J=z.ma;z=z.ka;if(Gl(a)){if(im(a,G,I,x)||im(a,J,I,x)||im(a,J,z,x)||im(a,G,z,x)||0<d&&(im(a,G,I,C)||im(a,J,I,C)||im(a,J,z,C)||im(a,G,z,C))){x=null;break a}}else if(C>=a.Ve(void 0)/El(a)){x=null;break a}let [L,ea]=jm(a,G,I,x),[Y,na]=jm(a,J,z,x);if(0!== a.ua()||0<d||Gl(a)){const [kb,jc]=jm(a,J,I,x),[lb,kc]=jm(a,G,z,x);if(0<d){const [tf,uf]=jm(a,G,I,C),[Ih,Jh]=jm(a,J,I,C),[Kh,vf]=jm(a,J,z,C),[Lh,Mh]=jm(a,G,z,C);x=Math.min(L,Y,kb,lb,tf,Ih,Kh,Lh);Y=Math.max(L,Y,kb,lb,tf,Ih,Kh,Lh);L=x;x=Math.min(ea,na,jc,kc,uf,Jh,vf,Mh);na=Math.max(ea,na,jc,kc,uf,Jh,vf,Mh);ea=x}else x=Math.min(L,Y,kb,lb),Y=Math.max(L,Y,kb,lb),L=x,x=Math.min(ea,na,jc,kc),na=Math.max(ea,na,jc,kc),ea=x}bl.set(L,ea,Y,na);x=bl}g.call(E,c,e,{QI:b,yr:k,devicePixelRatio:m,time:n,fJ:q,eJ:r,ky:w, IC:x,SX:null,IX:null,JX:null,WY:null});b=a.eb();c.tl=b;E.xo&&cm(a,c)}else km(b,d,c)}function lm(a){if(a.Fw){var b=a.g.Ra(),d=bm(a,b),c=am(a,b);b=a.VO;Te(0,1,0,c,d,Se,Ke);Te(1,1,0,c,d,Se,Le);Te(0,0,0,c,d,Se,Me);Te(1,0,0,c,d,Se,Ne);Te(0,1,1,c,d,Se,Oe);Te(1,1,1,c,d,Se,Pe);Te(0,0,1,c,d,Se,Qe);Te(1,0,1,c,d,Se,Re);Ue(Me,Ke,Oe,b.FN);Ue(Ke,Le,Pe,b.LO);Ue(Le,Ne,Re,b.mO);Ue(Ne,Me,Qe,b.lM);Ue(Qe,Oe,Pe,b.IM);Ue(Ne,Le,Ke,b.tH);a.Fw=!1}return a.VO} function km(a,b,d){b=b.gr;if(d.Pg!==b){const e=b.za;of(e,b.Xd);e.$f(b.vi);e.ni(b.Za);var c=e;c.Gm=b.wd;c.Pg=null;e.Pg=b}a.pf(d)} function Hl(a,b,d,c=0){var e=a.Nj();const g=a.g,k=g.Ra(),m=El(a);gl.set(jl,0,0,g.eh/m,g.Pf/m);b/=e;d=jl[3]-d/e;e=bm(a,k);a=am(a,k);a:if(Te(b,d,0,a,e,jl,Fe)&&Te(b,d,1,a,e,jl,Ge)){Ce.In(Ge,Ge,Fe);Ce.set(He,0,0,1);c=-c;a=Ce.zp(He,Ge);b=0;if(0===a){if(0!==Ce.zp(He,Fe)+c){c=!1;break a}}else if(b=-(Ce.zp(Fe,He)+c)/a,0>b){c=!1;break a}Ce.CJ(il,Fe,Ge,b);c=!0}else c=!1;return c?[il[0],il[1]]:[NaN,NaN]} function mm(a,b,d,c,e){var g=a.g;const k=g.Ra(),m=El(a);gl.set(jl,0,0,g.eh/m,g.Pf/m);g=bm(a,k);a=am(a,k);return al.ca.Az(b,d,c,a,g,jl,il)?[il[0]*e,(jl[3]-il[1])*e]:[NaN,NaN]}function nm(a,b,d){return mm(a,b,d,0,a.Nj())}function jm(a,b,d,c=0){return mm(a,b,d,c,a.Sr()*a.$l())}function im(a,b,d,c){a=lm(a).tH;return!(a.x*b+a.y*d+a.z*c>=a.w)} al.DK=class extends al.ta{constructor(a,b,d){super();this.Gi=a;this.g=a.I();this.YN=b;this.Oa=d[0];this.oa=-1;this.bb=d[2];this.jt=!!d[3];this.eB=!!d[13];this.ym=al.A(al.kb);rc(this.ym,d[4].map(e=>e/255));this.Cl=!!d[5];this.df=d[6];this.ef=d[7];this.Za=al.A(al.kb,1,1,1,d[8]);this.PB=al.A(al.kb);this.LG=d[9];this.gX=d[17];this.NO=d[18];this.xX=d[10];this.Ok=d[11];this.vi=d[12];this.mg=null;this.Vc=1;this.wd=d[16];this.yj=this.xj=this.wf=0;this.Mm=!1;this.by=al.A(al.Rect);this.WO=al.A(al.Rect);this.xI= al.A(al.Rect);this.Gw=!0;this.Il=hl.create();this.gB=!0;this.$w=hl.create();this.SG=!0;this.VO=al.A(al.ca.XU);this.Fw=!0;this.CO=[];this.eN=d[14];this.zl=[];this.pA=[];this.zG=new Map;this.G=[];this.um=this.EI=!1;const c=this.g.da;this.Sa=al.A(al.Kp,this,d[15]);this.Qg=al.A(al.ca.Uf,c.aw,{HC:(e,g)=>{g=g.vo;const k=g.Rj();e.ni(g.uD());si(e,k);vi(e,k);c.Yp(k)},LC:e=>this.Sa.Pz(e)});this.cy=this.$m=!0;this.Kt=null;this.$G=[];this.hB=!1;this.PW=al.A(al.Rect,0,0,-1,-1);this.jW=al.A(al.Rect,0,0,-1,-1); this.QA=null;xl(this);yl(this)&&(this.Kt=al.A(al.XT,this.g.Ki,this.g.Ji));this.jp=d[19].map(e=>al.A(al.DK,this.Gi,this,e))}si(){for(const a of this.eN){const b=om(this.g,a[1]);pm(this.Gi,b);b.uq||(b.uq=a);this.zl.push(a);this.zG.set(a[2],a)}al.Md(this.CO,this.zl);this.eN=null;this.QA=new self.$R(this)}j(){this.g=this.Gi=null}ri(a,b){if(!a.qb().ne)throw Error("instance is not of world type");const d=a.m();if(d.Z()!==this)throw Error("instance added to wrong layer");this.G.push(a);0!==d.eb()&&(this.um= !0);b&&yl(this)&&Pj(a.m());zl(this)}iq(a,b){const d=this.G.indexOf(a);0>d||(b&&yl(this)&&qm(a.m()),this.G.splice(d,1),zl(this),0===this.G.length&&(this.um=!1))}$u(a,b,d,c,e){const g=this.g.Da(),k=this.g.yd,m=a.Pa,n=[];for(const w of this.zl){var q=w[0];if(b.fh(q[0],q[1])){q=k[w[1]];if(q!==a)if(m){if(!a.CA.has(q))continue}else continue;q=this;var r=rm(this.g);this.Fc()!==r&&((q=r.eH.get(this.qa().toLowerCase())||null)||(q=sm(r,this.Ja())));r=tm(this.g,w,q,!1,void 0,void 0,!1,e);tl(q,r);q=r.m();um(q, d,c);Pj(q);kj(g,!0);lj(r);kj(g,!1);n.push(r)}}return n}Fc(){return this.Gi}qa(){return this.Oa}bF(a){this.oa=a}Ja(){return this.oa}I(){return this.g}$l(){return this.g.$l()}Oj(){this.vv();return this.Qg}vv(){const a=this.Vr();if(this.$m||a!==this.cy||this.Qg.cx){var b=this.Sa.Fh;Ji(this.Qg,b.map(d=>d.wh()),{ku:b.map(d=>d.Ja()),WI:!a,LJ:!0});this.$m=!1;this.cy=a}}pi(){this.Sa.pi();this.$m=!0}Rd(){for(const a of Bl(this))if(!a.jt)return!1;return!0}fg(a){a=!!a;this.jt!==a&&(this.jt=a,this.g.P())}Xj(a){var b= this.Fc();const d=b.Jo?-Infinity:vm(b);b=b.Jo?Infinity:b.N()-vm(b);a>b&&(a=b);a<d&&(a=d);this.xj!==a&&(this.xj=a,this.Mm&&(wl(this),this.g.P()))}Yj(a){var b=this.Fc();const d=b.Jo?-Infinity:wm(b);b=b.Jo?Infinity:b.M()-wm(b);a>b&&(a=b);a<d&&(a=d);this.yj!==a&&(this.yj=a,this.Mm&&(wl(this),this.g.P()))}uh(){return this.Mm?this.xj:this.Fc().uh()}vh(){return this.Mm?this.yj:this.Fc().vh()}Ve(a){return this.g.Ve(a)}Gc(){return this.Za.Ya}bg(a){a=al.$(a,0,1);this.Za.Ya!==a&&(bc(this.Za,a),xl(this),this.g.P())}uD(){return this.PB}Vr(){return dc(this.Za, 1,1,1,1)}ig(a){this.wd!==a&&(this.wd=a,this.g.P())}eb(){return this.wd}fe(a){a=al.Yd(a);this.wf!==a&&(this.wf=a,wl(this),this.g.P())}ua(){return al.Yd(this.Gi.ua()+this.wf)}$f(a){this.vi!==a&&(this.vi=a,this.g.P())}cl(){return this.vi}*tJ(){let a=this.YN;for(;a;)yield a,a=a.YN}lv(){return this.LG||!this.Vr()||0!==this.cl()||this.Sa.Ru()}Rj(){return this.mg}pf(a,b,d){var c=this.g.da,e=this.lv(),g=null;let k=null;if(xm(this.g)&&a.Yi()){var m=ym(c,this);m&&(k=rh(m),wi(a,k))}e?(g={hh:this.g.Hd,NC:!0, FX:!1},"low"===c.mj&&(g.width=c.fl(),g.height=c.el()),this.mg=g=this.g.Eu(g),ri(a,g),this.Cl&&ji(a)):(this.mg=b,ri(a,b));this.Cl||a.Nd(this.ym);zm(this.Gi,a,this.mg,this.jp,e&&this.Cl);cm(this,a);c=this.eb();a.tl=c;ki(a,!Pl(this));if(El(this)>Number.EPSILON)if(Zl(this),c=yl(this)&&0===this.eb()&&!this.um,Gl(this)){c=this.mg;m=lm(this);var n=Ol(this);for(let G=0,I=n.length;G<I;){var q=n[G],r=q.m();if(r.Rd()&&Am(r,m)){(!q.$r()||0<r.dl())&&rl.push(q);var w=hm(q.m());ql.push(q);for(var x=G+1;x<I;++x){var z= n[x],E=z.m();if(E.Rd()&&Am(E,m)){if(hm(E)!==w)break;z.$r()?(0<E.dl()&&rl.push(z),ql.push(z)):rl.push(z)}}if(1!==ql.length||0!==(ql[0].ea&32)){q=a;r=this.mg;w=q;ki(w,!0);Ph(w).Aa=25;w.Sb=0;for(let J=0,L=ql.length;J<L;++J)w=ql[J],z=w.m(),Bm(z,1048576,!0),km(w,z,q);w=q;ki(w,!1);Ph(w).Aa=26;w.Sb=0;for(let J=0,L=ql.length;J<L;++J)w=ql[J],z=w.m(),gm(this,w,z,q,r),Bm(z,1048576,!1);ki(q,!0);Ph(q).Aa=27;q.Sb=0;for(let J=0,L=rl.length;J<L;++J)q=rl[J],r=q.m(),Bm(r,2097152,!0),gm(this,q,r,a,c),Bm(r,2097152,!1)}else{gm(this, q,r,a,c);for(let J=0,L=rl.length;J<L;++J)r=rl[J],r!==q&&(w=r.m(),gm(w.Z(),r,w,a,c))}G=x;al.D(ql);al.D(rl)}else++G}}else if(c){n=this.Kt;c=this.jW;m=this.PW;x=Il(this);c.set(n.$j(x.Y),n.ak(x.V),n.$j(x.ma),n.ak(x.ka));if(this.hB&&c.Ld(m))n=this.$G;else{Zl(this);al.D(dl);this.Kt.Bz(Il(this),dl);if(dl.length)if(1===dl.length)n=dl[0];else{for(n=dl;1<n.length;){r=[];w=n.length;for(z=0;z<w-1;z+=2){x=r;q=x.push;E=n[z];var C=n[z+1];const G=[];let I=0,J=0,L=E.length,ea=C.length;for(;I<L&&J<ea;){const Y=E[I], na=C[J];Y.m().Vi<na.m().Vi?(G.push(Y),++I):(G.push(na),++J)}for(;I<L;++I)G.push(E[I]);for(;J<ea;++J)G.push(C[J]);E=G;q.call(x,E)}1===w%2&&r.push(n[w-1]);n=r}n=n[0]}else n=[];this.hB=!0;m.xa(c)}dm(this,a,n);n!==this.$G&&al.Md(this.$G,n)}else dm(this,a,Ol(this));a.tl=0;a.Gm=0;a.Pg=null;e&&(ki(a,!1),e=g,g=this.g,0===this.Sa.Fh.length?(ri(a,b),nf(a),d&&0===this.vi&&this.Vr()?ti(a,e):(a.$f(this.vi),a.ni(this.PB),si(a,e)),vi(a,e),g.Yp(e)):this.Oj().$p(a,b,{QI:this,yr:this.cl(),devicePixelRatio:g.Iu(),fJ:g.Ju()* El(this),eJ:this.ua(),ky:Il(this),IC:null,bJ:!0}));k&&xi(a,k);this.mg=null}Sr(){return El(this)*this.g.Sr()}Nj(){return El(this)*this.g.Nj()}ra(){return{s:this.Vc,a:this.wf,v:this.jt,i:this.eB,bc:this.ym.toJSON(),t:this.Cl,sx:this.xj,sy:this.yj,hosp:this.Mm,px:this.df,py:this.ef,c:this.Za.toJSON(),sr:this.Ok,fx:this.Sa.kd(),cg:this.pA}}ya(a){this.Vc=a.s;this.wf=a.a;this.jt=!!a.v;this.eB=a.hasOwnProperty("i")?a.i:!0;rc(this.ym,a.bc);this.Cl=!!a.t;a.hasOwnProperty("sx")&&(this.xj=a.sx);a.hasOwnProperty("sy")&& (this.yj=a.sy);a.hasOwnProperty("hosp")&&(this.Mm=!!a.hosp);this.df=a.px;this.ef=a.py;rc(this.Za,a.c);xl(this);this.Ok=a.sr;al.Md(this.pA,a.cg);al.Md(this.zl,this.CO);const b=new Set(this.pA);let d=0;for(let c=0,e=this.zl.length;c<e;++c)b.has(this.zl[c][2])||(this.zl[d]=this.zl[c],++d);al.Ue(this.zl,d);this.Sa.xc(a.fx);this.$m=!0;Al(this,!1);zl(this);wl(this);this.Gw=this.Fw=this.gB=!0}};"use strict";const Cm=self.B,Dm=self.ei;Cm.A(Cm.Rect);Cm.A(Cm.Rect); const Em=Cm.A(Cm.Rect),Fm=Cm.A(Cm.kb),Gm=self.Zk.XC,Vl=[],Hm=[],Im=[],Jm=[];let Km=null;function Lm(a,b){if(Km!==a){cm(a,b);var d=a.eb();b.tl=d;Km=a}}function qj(a){a.Vg&&(a.Vg=!1,Mm(a),Nm(a),a.g.P())}function rj(a){a.Vg||(a.Vg=!0,Mm(a),Nm(a),a.g.P())}function pm(a,b){if(b.wc())for(const d of b.Kh.Fl)a.Fq.add(d);else a.Fq.add(b)}function sm(a,b){b=Cm.$(Math.floor(b),0,a.Mc.length-1);return a.Mc[b]}function Ll(a){return a.Vg?.5:a.xC}function Ml(a){return a.Vg?.5:a.yC} function zm(a,b,d,c,e){c=c.filter(g=>Sl(g));for(let g=0,k=c.length;g<k;){const m=c[g];if(Rl(m)&&!$l(m)){Vl.push(m);for(let n=g+1;n<k;++n){const q=c[n];if(Rl(q)&&!$l(q))Vl.push(c[n]);else break}if(2<=Vl.length||1===Vl.length&&Ul()){Om(a,b,d);g+=Vl.length;Cm.D(Vl);continue}Cm.D(Vl)}m.pf(b,d,e&&0===g);++g}}function em(a){const b=Ll(a);a=Ml(a);return 0>b||1<b||0>a||1<a}function vl(a){a.Xj(a.uh());a.Yj(a.vh());for(const b of a.Mc)b.Mm&&(b.Xj(b.uh()),b.Yj(b.vh()))} function Pm(a){let b=El(a.Mc[0]);for(let d=1,c=a.Mc.length;d<c;++d){const e=a.Mc[d];if(0!==e.df||0!==e.ef)b=Math.min(b,El(e))}return b}function vm(a){return.5*a.g.eh/Pm(a)}function wm(a){return.5*a.g.Pf/Pm(a)}function Nm(a){for(const b of a.Mc)wl(b)}function Mm(a){for(const b of a.Mc)a=b,a.gB=!0,a.Fw=!0,a.Gw=!0}function Qm(a,b){return a.EN.get(b)||null} function Rm(a){for(a=a.WB.filter(b=>Sl(b))[0];a;){if(!a.Cl)return Yb(Fm,a.ym),bc(Fm,1),Fm;if(a.lv())return Vb(Fm,0,0,0,0),Fm;a=a.jp.filter(b=>Sl(b))[0]}Vb(Fm,0,0,0,0);return Fm}function Sm(a,b,d){if(b===a||!d)return Promise.resolve();b&&(Cm.gR(a.Qi,b.Qi),b.Qi.clear());b=[];for(const c of a.Fq)a.Qi.has(c)||(b.push(c.Vn(d)),a.Qi.add(c));return Promise.all(b)}function Ym(a,b){a.Px.add(b);b.then(()=>a.Px.delete(b)).catch(()=>a.Px.delete(b))} async function Zm(a,b){if(b.Pa)throw Error("cannot load textures for family");var d=a.g.Ra();!d||gh(d)||a.Qi.has(b)||(a.Qi.add(b),d=b.Vn(d),Ym(a,d),await d,b.vz(),a.g.P())}function $m(a,b){if(b.Pa||0<b.G.length)throw Error("cannot unload textures");a.g.Ra()&&a.Qi.has(b)&&(a.Qi.delete(b),b.em())} function an(a,b){for(const e of a.g.yd)if(!e.Pa&&e.ne)for(const g of e.pa()){var d=g.m(),c=d.Z();c=Cm.$(c.Ja(),0,a.Mc.length-1);c=a.Mc[c];bn(d,c);d=c;c=g;d.G.includes(c)||(d.G.push(c),0!==c.m().eb()&&(d.um=!0),zl(d))}if(!b)for(const e of a.Mc)Al(e,!1)} function cn(a){for(const e of a.Mc){var b=e,d=a.Sv;const g=b.Gi.Mq;let k=0;const m=b.zl;for(let n=0,q=m.length;n<q;++n){var c=m[n];const r=om(b.g,c[1]);let w=!0;if(!dn(r)||g)c=tm(b.g,c,b,!0),d.push(c),r.rf()&&(w=!1,b.pA.push(c.Ab));w&&(m[k]=m[n],++k)}al.Ue(m,k);nj(b.g);zl(b)}} function en(a){let b=!1;for(const [c,e]of Object.entries(a.Uo)){const g=fn(a.g,parseInt(c,10));if(g&&!g.Pa&&dn(g))for(const k of e){var d=null;if(g.ne&&(d=k.hasOwnProperty("instJson")?Qm(a,k.instJson.w.l):Qm(a,k.w.l),!d))continue;d=tm(a.g,g,d,!1,0,0,!0);k.hasOwnProperty("instJson")?d.xc(k.instJson):d.xc(k);b=!0;a.Tv.push(d);k.hasOwnProperty("instJson")&&(a.QF.set(d,k),a.PF.set(k.index,d))}}for(const c of a.Mc)Al(c,!0),zl(c);b&&(nj(a.g),gn(a.g))} function hn(a,b){for(const c of b){if(!c.wc())continue;const e=c.m(),g=jn(c);for(const k of c.F().Kh.Fl)if(k!==c.F()){var d=k.pa();d.length>g?c.ud.push(d[g]):(d=e?tm(a.g,k,e.Z(),!0,e.T(),e.U(),!0):tm(a.g,k,null,!0,0,0,!0),nj(a.g),kn(k),c.ud.push(d),b.push(d))}}}function ln(a){for(const b of a.yG)om(a.g,b[1]).wc()||tm(a.g,b,null,!0)} async function mn(a,b){const d=a.g,c=a.nb,e=d.Da();a.FM&&(a.pd=e.$B.get(a.FM.toLowerCase())||null,nn(a.pd));c.Bt=a;a.ja=a.dX;a.fa=a.cX;a.xj=d.Ki/2;a.yj=d.Ji/2;vl(a);Mm(a);Nm(a);an(a,b);cn(a);a.Mq||en(a);hn(a,a.Sv);hn(a,a.Tv);ln(a);c.Li=null;nj(d);var g=a.g.JV;await Promise.all(g);Cm.D(g);if(!d.nj){for(const k of a.Sv)pn(k);for(const k of a.Tv)qn(k,a.QF,a.PF);for(const [k,m]of Object.entries(a.Uo))(g=fn(a.g,parseInt(k,10)))&&!g.Pa&&dn(g)&&Cm.D(m);for(const k of a.Sv)rn(k);for(const k of a.Tv)rn(k)}Cm.D(a.Sv); Cm.D(a.Tv);a.QF.clear();a.PF.clear();await Promise.all([...a.Fq].map(k=>k.TD(a.g.Ra())));b&&(d.tb().dispatchEvent(new Cm.Event("beforefirstlayoutstart")),await d.Xl(new Cm.Event("beforeprojectstart")));d.tb().dispatchEvent(new Cm.Event("beforelayoutstart"));await a.Xl(new Cm.Event("beforelayoutstart"));d.nj||await d.Hb(Cm.C.sb.K.TK,null,null);d.tb().dispatchEvent(new Cm.Event("afterlayoutstart"));await a.Xl(new Cm.Event("afterlayoutstart"));b&&(d.tb().dispatchEvent(new Cm.Event("afterfirstlayoutstart")), await d.Xl(new Cm.Event("afterprojectstart")));sn(e,c);await Promise.all([...a.Px]);a.Mq=!1}function tn(a){const b=[],d=a.yG;let c=0;for(let e=0,g=d.length;e<g;++e){const k=d[e],m=om(a.g,k[1]);m.rf()?m.wc()&&un(m.Kh)||b.push(tm(a.g,k,null,!0)):(d[c]=k,++c)}Cm.Ue(d,c);nj(a.g);hn(a,b)} async function vn(a){const b=a.nb;a.g.nj||(await a.Xl(new Cm.Event("beforelayoutend")),await a.g.Hb(Cm.C.sb.K.tT,null,null),await a.Xl(new Cm.Event("afterlayoutend")));wn(b,!0);xn(a.g.Da());if(!a.Mq){a.lx.clear();var d=0;for(var c of a.Mc){Zl(c);for(var e of c.G){var g=e.F();if(!g.rf()&&dn(g)){g=a;var k=e,m=d,n=k.F().bb.toString();g.Uo.hasOwnProperty(n)||(g.Uo[n]=[]);n=g.Uo[n];m={index:m,instJson:k.kd(),sceneGraphJson:{children:[]}};n.push(m);g.lx.set(k,m);d++}}}for(var q of a.Mc)for(const r of q.G)if(d= r.F(),!d.rf()&&dn(d)){d=a;e=r;c=d.lx.get(e);for(const w of e.ue())(e=d.lx.get(w))&&c.sceneGraphJson.children.push({index:e.index,flags:yn(w.m())})}a.lx.clear()}for(const r of a.Mc){q=r;for(const w of q.G)w.F().rf()||zn(q.g,w);nj(q.g);al.D(q.G);q.um=!1;zl(q)}for(const r of a.g.yd)if(!(r.rf()||r.ne||r.qb().Io||r.Pa)){for(const w of r.pa())zn(a.g,w);nj(a.g)}wn(b,!1);b.dc()===a&&(b.Bt=null)} function Om(a,b,d){var c=Vl;c[0].Cl||(Yb(Fm,c[0].ym),bc(Fm,1),b.Nd(Fm));var e=a.g.da;ki(b,!0);for(var g of c)Zl(g),Ql(g,Hm);g=c[0];c=null;xm(a.g)&&b.Yi()&&(a=ym(e,g))&&(c=rh(a),wi(b,c));for(let r=0,w=Hm.length;r<w;){e=Hm[r];g=e.m();var k=g.Z();if(g.Rd()&&Am(g,lm(k))){(!e.$r()||0<g.dl())&&Jm.push(e);var m=hm(e.m());Im.push(e);for(a=r+1;a<w;++a){var n=Hm[a],q=n.m();if(q.Rd()&&Am(q,lm(q.Z()))){if(hm(q)!==m)break;n.$r()?(0<q.dl()&&Jm.push(n),Im.push(n)):Jm.push(n)}}if(1!==Im.length||0!==(Im[0].ea&32)){e= b;g=d;k=Im;m=e;ki(m,!0);Ph(m).Aa=25;m.Sb=0;for(let x=0,z=k.length;x<z;++x)m=k[x],n=m.m(),q=n.Z(),Bm(n,1048576,!0),Lm(q,e),km(m,n,e);m=e;ki(m,!1);Ph(m).Aa=26;m.Sb=0;for(let x=0,z=k.length;x<z;++x)m=k[x],n=m.m(),q=n.Z(),Lm(q,e),gm(q,m,n,e,g),Bm(n,1048576,!1);ki(e,!0);Ph(e).Aa=27;e.Sb=0;for(let x=0,z=Jm.length;x<z;++x)e=Jm[x],g=e.m(),k=g.Z(),Bm(g,2097152,!0),Lm(k,b),gm(k,e,g,b,d),Bm(g,2097152,!1)}else{Lm(k,b);gm(k,e,g,b,d);for(let x=0,z=Jm.length;x<z;++x)g=Jm[x],g!==e&&(k=g.m(),m=k.Z(),Lm(m,b),gm(m, g,k,b,d))}r=a;Cm.D(Im);Cm.D(Jm)}else++r}c&&xi(b,c);Cm.D(Hm);Km=null} Cm.PS=class extends Cm.ta{constructor(a,b,d){super();this.nb=a;this.g=a.I();this.Oa=d[0];this.dX=d[1];this.cX=d[2];this.ja=d[1];this.fa=d[2];this.Jo=!!d[3];this.Vg=!!d[4];this.xC=d[5];this.yC=d[6];this.FM=d[7];this.pd=null;this.bb=d[8];this.oa=b;this.yj=this.xj=0;this.Vc=1;this.wf=0;this.Fq=new Set;this.Qi=new Set;this.Px=new Set;this.Sv=[];this.Tv=[];this.QF=new Map;this.PF=new Map;this.yG=[];this.FW=!1;this.oM=Gm.create();this.cW=Gm.create();this.dW=Gm.create();this.WB=[];this.Mc=[];this.eH=new Map; this.EN=new Map;const c=this.g.da;this.Sa=Cm.A(Cm.Kp,this,d[11]);this.Qg=Cm.A(Cm.ca.Uf,c.aw,{HC:(e,g)=>{g=g.vo.Rj();Yh(e);si(e,g);vi(e,g);c.Yp(g)},LC:e=>this.Sa.Pz(e)});this.$m=!0;this.ZO=!1;this.mg=null;this.Uo={};this.lx=new Map;this.Mq=!0;this.rw=new self.aS(this);this.hf=Cm.A(Cm.Event.tb);for(const e of d[9])this.WB.push(Cm.A(Cm.DK,this,null,e));this.Mc=[...this.GI()];for(let e=0,g=this.Mc.length;e<g;++e)a=this.Mc[e],a.bF(e),a.si(),this.eH.set(a.qa().toLowerCase(),a),this.EN.set(a.bb,a);for(const e of d[10]){d= om(this.g,e[1]);if(!d)throw Error("missing nonworld object class");d.uq||(d.uq=e);this.yG.push(e);pm(this,d)}}j(){for(const a of this.Mc)a.j();Cm.D(this.Mc);this.Px.clear();this.g=this.nb=this.pd=null}I(){return this.g}qa(){return this.Oa}Ja(){return this.oa}Oj(){this.vv();return this.Qg}vv(){const a="low"===this.g.da.mj;if(this.$m||this.ZO!==a||this.Qg.cx){var b=this.Sa.Fh;Ji(this.Qg,b.map(d=>d.wh()),{ku:b.map(d=>d.Ja()),uP:a,LJ:!0});this.$m=!1;this.ZO=a}}pi(){this.Sa.pi();this.$m=!0}Xj(a){const b= this.Jo?-Infinity:vm(this),d=this.Jo?Infinity:this.N()-vm(this);a>d&&(a=d);a<b&&(a=b);this.xj!==a&&(this.xj=a,Nm(this),this.g.P())}uh(){return this.xj}Yj(a){const b=this.Jo?-Infinity:wm(this),d=this.Jo?Infinity:this.M()-wm(this);a>d&&(a=d);a<b&&(a=b);this.yj!==a&&(this.yj=a,Nm(this),this.g.P())}vh(){return this.yj}fm(a){this.Vc!==a&&(this.Vc=a,Nm(this),vl(this),this.g.P())}fe(a){a=Cm.Yd(a);this.wf!==a&&(this.wf=a,Nm(this),this.g.P())}ua(){return this.wf}N(){return this.ja}gg(a){!isFinite(a)||1>a|| (this.ja=a)}M(){return this.fa}Kg(a){!isFinite(a)||1>a||(this.fa=a)}*GI(){for(const a of this.WB)yield*Wl(a)}Z(a){return"number"===typeof a?sm(this,a):this.eH.get(a.toString().toLowerCase())||null}Sz(){this.Qi.clear()}$u(a,b,d,c,e,g){if(d)return d.$u(a,b,c,e,g);d=[];for(const k of this.Mc)d.push(k.$u(a,b,c,e,g));return d.flat()}Rj(){return this.mg}lv(){const a=this.g,b=a.Ra().Yi();return"low"===a.da.mj||b&&a.vC||"low-latency"===a.Fs||this.Sa.Ru()||b&&a.vn}pf(a){var b=this.g.da,d=this.lv();if(d){"low-latency"!== this.g.Fs&&(ri(a,null),ji(a));var c={hh:this.g.Hd,NC:this.g.vC||this.Sa.Ru(),FX:!1};"low"===b.mj&&(c.width=b.fl(),c.height=b.el());this.mg=this.g.Eu(c)}else this.mg=null;ri(a,this.mg);a.Nd(Rm(this));this.g.vn&&a.Pl&&a.$e&&a.$e.og&&(b=Ph(a),c=a.Lq,b.Aa=22,b.Ee=c?1:0,a.Sb=0);zm(this,a,this.mg,this.WB,!0);d&&(ki(a,!1),d=this.mg,b=this.g,0===this.Sa.Fh.length?(ri(a,null),nf(a),ti(a,d),vi(a,d),b.Yp(d)):(Em.set(0,0,b.eh,b.Pf),this.Oj().$p(a,null,{QI:this,yr:3,devicePixelRatio:this.g.Iu(),fJ:this.g.Ju()* this.Vc,eJ:this.ua(),ky:Em,IC:null,bJ:!0})));this.mg=null}ra(){const a={sx:this.uh(),sy:this.vh(),s:this.Vc,a:this.ua(),w:this.N(),h:this.M(),ortho:this.Vg,vpX:Ll(this),vpY:Ml(this),fv:this.Mq,persist:this.Uo,fx:this.Sa.kd(),layers:{}};for(const b of this.Mc)a.layers[b.bb.toString()]=b.ra();return a}ya(a){this.xj=a.sx;this.yj=a.sy;this.Vc=a.s;this.wf=a.a;this.ja=a.w;this.fa=a.h;this.Vg=!!a.ortho;a.hasOwnProperty("vpX")&&(this.xC=a.vpX);a.hasOwnProperty("vpY")&&(this.yC=a.vpY);this.Mq=!!a.fv;this.Uo= a.persist;this.Sa.xc(a.fx);this.$m=!0;for(const [b,d]of Object.entries(a.layers))(a=Qm(this,parseInt(b,10)))&&a.ya(d);Mm(this);Nm(this)}nh(a){a.PC=this.rw;var b=this.g;(b=b.Nb&&!mj(b.Da()))&&Dm.BE();this.hf.dispatchEvent(a);b&&Dm.aD()}Xl(a){a.PC=this.rw;return kd(this.hf,a)}};"use strict";const An=self.B;function wn(a,b){if(b)a.et++;else{if(0>=a.et)throw Error("already unset");a.et--}}function Bn(a){if(a.DA)return a.DA;if(a.hk.length)return a.hk[0];throw Error("no first layout");} function Cn(a,b){return a.hH.get(b.toLowerCase())||null}function*Dn(a){a.Bt&&(yield a.Bt);a.TH.length&&(yield*a.TH)}function En(a){(a=a.dc())&&Mm(a)}function Fn(a){(a=a.dc())&&Nm(a)} An.QS=class extends An.ta{constructor(a){super();this.g=a;this.hk=[];this.hH=new Map;this.Qw=new Map;this.Bt=null;this.TH=[];this.DA=null;this.et=0;this.Li=null}j(){this.Li=this.DA=this.Bt=this.g=null;An.D(this.hk);this.hH.clear();this.Qw.clear();An.D(this.TH)}Qa(a){a=An.A(An.PS,this,this.hk.length,a);this.hk.push(a);this.hH.set(a.qa().toLowerCase(),a);this.Qw.set(a.bb,a)}I(){return this.g}Fc(a){"number"===typeof a?(a=An.$(Math.floor(a),0,this.hk.length-1),a=this.hk[a]):a=Cn(this,a.toString());return a}dc(){return this.Bt}}; "use strict";const Gn=self.B;function*Hn(a){for(const b of a.pe)yield b}function In(a,b,d){a.an.has(b)||a.an.set(b,new Set);a.an.get(b).add(d)}function Jn(a,b){for(const d of a.Kf)if(d.qa()===b)return d;for(const d of a.pe)if(d.qa()===b)return d;return null}function Kn(a,b){a.Kf.includes(b)||a.Kf.push(b);a.zk||(a.zk=!0)}function Ln(a){a.sj.length||a.pe.length||a.Kf.length||a.Ew||(a.zk=!1)} function Mn(a,b){a.pe.includes(b)?(b.Sm=!0,b.rg=!1,b.Qq=!1):(b.Sm=!1,b.rg=!0,b.Qq=!1,a.Kf.includes(b)||a.Kf.push(b));a.zk||(a.zk=!0)}function Nn(a,b){b.Sm=!1;b.rg=!1;On(b);Gn.Tl(a.Kf,b);Ln(a)}function Qn(a,b){b.Sm=!1;b.rg=!1;a.pe.includes(b)&&(b.Qq=!0,a.sj.push(b),Gn.Tl(a.pe,b))}function Rn(a,b){b.Sm=!1;b.rg=!1;b.Qq=!1;b.Ch(1);Gn.Tl(a.pe,b)}function Sn(a){a.Uc||Tn(a)&&a.Og&&a.Eo&&a.hK()}function Un(a){return a.rn.map(b=>b.ra())}function Vn(a){return a.map(b=>b.qa())} function Wn(a,b,d){var c=new Set;for(const e of d)Xn(e,b)||c.add(e);Gn.ai(d,c);if(b){c=e=>g=>g.qa()===e;for(const e of b)(b=a.lp.get(e.toLowerCase())||null)&&(d.find(c(e))||d.push(b))}}function Xn(a,b){if(!b)return!1;for(const d of b)if(d===a.qa())return!0;return!1} Gn.KU=class extends Gn.ta{constructor(a){super();this.g=a;this.Rx=Gn.A(Gn.IU);this.eX=null;this.rn=[];this.lp=new Map;this.an=new Map;this.Ol=new Map;this.Kf=[];this.pe=[];this.sj=[];this.Ew=this.Ds=this.zk=!1;this.qn=()=>{if(!this.I().nj&&this.zk&&!this.Ds){for(this.Ew=!0;this.Kf.length;){var b=this.Kf.pop();b.Lc();0!==b.jc&&(this.jc=1);this.pe.push(b)}b=this.g.Zv;var d=this.g.wq,c=this.g.Jd;for(let e=this.pe.length-1;0<=e;e--){const g=this.pe[e];g&&g.He(b,c,d)}this.Ew=!1;0!==this.jc&&this.I().P()}}; this.nn=()=>this.XE();this.yF=()=>this.xv();this.gH=()=>{this.Ds=!1};this.$s=b=>this.Rz(b.instance);this.jM=()=>this.bo();this.nq=()=>this.nm();this.bM=()=>{const b=this.g.nb.dc();if(b)for(const d of this.rn){const c=d.xD();c&&b.qa()===c&&Mn(this,d)}};this.Yv=[];this.jc=0}j(){this.YD();this.nq=this.$s=this.gH=this.yF=this.nn=this.qn=null;for(const a of this.rn)a.cd(),a.j();Gn.D(this.rn);this.rn=null;this.Rx.j();this.Rx=null;Gn.D(this.Kf);this.Kf=null;Gn.D(this.pe);this.pe=null;Gn.D(this.sj);this.sj= null;this.lp.clear();this.lp=null;this.an.clear();this.an=null;this.Ol.clear();this.Ol=null;Gn.D(this.Yv);this.g=this.Yv=null}$C(){const a=this.g.tb();a.addEventListener("pretick",this.qn);a.addEventListener("tick2",this.nn);a.addEventListener("beforelayoutchange",this.yF);a.addEventListener("layoutchange",this.gH);a.addEventListener("instancedestroy",this.$s);a.addEventListener("beforeload",this.jM);a.addEventListener("afterload",this.nq);a.addEventListener("afterlayoutstart",this.bM)}YD(){const a= this.g.tb();a.removeEventListener("pretick",this.qn);a.removeEventListener("tick2",this.nn);a.removeEventListener("beforelayoutchange",this.yF);a.removeEventListener("layoutchange",this.gH);a.removeEventListener("instancedestroy",this.$s);a.removeEventListener("beforeload",this.jM);a.removeEventListener("afterload",this.nq);a.removeEventListener("afterlayoutstart",this.bM)}Qa(a){this.Rx.$c(a);const b=this.Rx.S(a[0]);a=Yn.A(Yn.Zn,a[0],b,this);a.it=!0;this.$c(a);for(const d of a.pK())In(this,d,a);this.Ol.set(a.qa(), 0)}nD(a){var b=this.Rx;a=a.Ur();b=b.S(a);b=Gn.Zn.nD(`${a}:${this.Ol.get(a)}`,b,this);this.Ol.set(a,this.Ol.get(a)+1);this.$c(b);return b}$c(a){this.rn.push(a);this.lp.set(a.qa().toLowerCase(),a)}Ah(a){Zn(a);if(!a.it){Gn.Tl(this.rn,a);Gn.Tl(this.Kf,a);Gn.Tl(this.pe,a);Gn.Tl(this.sj,a);this.lp.delete(a.qa().toLowerCase());for(const [b,d]of this.an.entries())d.has(a)&&(d.delete(a),0===d.size&&this.an.delete(b));a.Uc||a.j()}}Ka(a){this.g.Ka(a,this.eX,null)}I(){return this.g}XE(){if(!this.I().nj&&this.zk&& !this.Ds){var a;for(let b=0,d=this.sj.length;b<d;b++){const c=this.sj[b];a||(a=new Set);Zn(c);Sn(c);a.add(c)}if(a){Gn.ai(this.sj,a);this.jc=0;for(let b=0,d=this.pe.length;b<d;b++)if(0!==this.pe[b].jc){this.jc=1;break}}Ln(this)}}xv(){for(this.Ds=!0;this.Kf.length;)Nn(this,this.Kf.pop());const a=new Set;for(const b of this.pe)b.xv()&&(Zn(b),a.add(b));Gn.ai(this.pe,a);a.clear();for(const b of this.sj)b.xv()&&(Zn(b),a.add(b));Gn.ai(this.sj,a);Ln(this);for(const b of this.rn)b.al()}Rz(a){var b=a.F();b= this.an.has(b)?this.an.get(b):void 0;if(b)if(this.g.nj)this.Yv.push(a);else for(const d of b)d.it||(d.Uc?this.Ah(d):Tn(d)||(Sn(d),this.Ah(d)))}bo(){for(const a of this.Kf.map(b=>b))Sn(a),this.Ah(a);for(const a of this.pe.map(b=>b))Sn(a),this.Ah(a)}nm(){for(const a of this.Yv)this.Rz(a);Gn.D(this.Yv)}ra(){return{timelinesJson:Un(this),scheduledTimelinesJson:Vn(this.Kf),playingTimelinesJson:Vn(this.pe),markedForRemovalTimelinesJson:Vn(this.sj),hasRuntimeListeners:this.zk,changingLayout:this.Ds,isTickingTimelines:this.Ew}}ya(a){if(a){for(var b of this.Ol.keys())this.Ol.set(b, 0);b=a.timelinesJson;for(const d of b){b=this.lp.get(d.name.toLowerCase())||null;if(!b){b=(b=d.name.split(":"))&&2===b.length?b[0]:null;if(!b)continue;b=this.lp.get(b.toLowerCase())||null;b=this.nD(b)}b.ya(d);b.ab.length||this.Ah(b)}Wn(this,a.scheduledTimelinesJson,this.Kf);Wn(this,a.playingTimelinesJson,this.pe);Wn(this,a.markedForRemovalTimelinesJson,this.sj);this.zk=!a.hasRuntimeListeners;this.Ds=!!a.changingLayout;this.Ew=!!a.isTickingTimelines;for(const d of this.rn)d.it||(a=d.Ur(),this.Ol.set(a, this.Ol.get(a)+1));this.zk||(this.zk=!0);Ln(this)}}};"use strict";const $n=self.B,ao=[0,0],bo=[0,0,0,0,0]; $n.L8=class{constructor(a,b){this.Iq=!1;this.ug=a;this.ep=[];var d;if(b)a:{a=this.ug;for(d of a.ab)if(Yn.zg(d.Dg(),b)){b=d;break a}b=null}else b=$n.first(this.ug.ab);if(d=b)if(b=d.$d("offsetX"),d=d.$d("offsetY"),b&&d){b=b.bz();d=d.bz();for(let c=1,e=Math.min(b.length,d.length);c<e;++c){a=b[c];const g=a.qx,k=d[c],m=k.qx;g&&"cubic-bezier"===g.EH&&m&&"cubic-bezier"===m.EH?this.ep.push($n.A($n.HU,g,m,a,k,this.ep.length)):this.ep.push($n.A($n.JU,a,k,this.ep.length))}this.Iq=!0}}j(){for(const a of this.ep)a.j(); $n.D(this.ep);this.ug=this.ep=null}Az(a,b,d){d&&d.xy&&($n.Ic(d.xy[0])||(d.xy[0]=0),$n.Ic(d.xy[1])||(d.xy[1]=1));const c=[];for(const e of this.ep)if("cubic-bezier"===e.Hc()){const g=e.Az(a,b,d?d.xy:null);g[4]=e.Ja();c.push(JSON.parse(JSON.stringify(g)))}c.sort((e,g)=>e[3]-g[3]);return c[0]}};function co(a,b){return a.Iq?self.Yl.dm("cubicbezier")(b,a.HV+a.jx,a.RV+a.jx,a.aW+a.jx,a.kW+a.jx):NaN}function eo(a,b){return a.Iq?self.Yl.dm("cubicbezier")(b,a.IV+a.kx,a.SV+a.kx,a.bW+a.kx,a.lW+a.kx):NaN} function fo(a,b,d,c=null){var e=Number.MAX_SAFE_INTEGER;let g=0;d.forEach((k,m)=>{k.t=m/(d.length-1);k.ci=$n.An(a,b,k.x,k.y);c&&$n.Uj(c)&&$n.Ic(c[0])&&$n.Ic(c[1])?k.t>=c[0]&&k.t<=c[1]&&k.ci<e&&(e=k.ci,g=m):k.ci<e&&(e=k.ci,g=m)});return g} $n.HU=class{constructor(a,b,d,c,e){this.oa=e;e=go(a,"cubic-bezier");var g=go(d,"cubic-bezier");const k=go(b,"cubic-bezier"),m=go(c,"cubic-bezier");this.HV=ho(a);this.IV=ho(b);this.RV=ho(a)+e.Jx;this.SV=ho(b)+k.Jx;this.aW=ho(d)+g.bw;this.bW=ho(c)+m.bw;this.kW=ho(d);this.lW=ho(c);this.Iq=!1;this.qt=100;this.wm=Array(this.qt+1);this.wm[0]=0;this.At=[];this.Iq=!0;a=co(this,0);b=eo(this,0);d=0;for(c=1;c<=this.qt;c++)e=co(this,.01*c),g=eo(this,.01*c),d+=Math.hypot(a-e,b-g),this.wm[c]=d,a=e,b=g}j(){$n.D(this.wm); this.wm=null;$n.D(this.At);this.At=null}Hc(){return"cubic-bezier"}Ja(){return this.oa}Map(a){if(!this.Iq)return NaN;if(this.Iq){a*=this.wm[this.qt];for(var b=0,d=this.qt,c=0;b<d;)c=b+((d-b)/2|0),this.wm[c]<a?b=c+1:d=c;this.wm[c]>a&&c--;b=this.wm[c];a=b===a?c/this.qt:(c+(a-b)/(this.wm[c+1]-b))/this.qt}else a=void 0;ao[0]=co(this,a);ao[1]=eo(this,a);return ao}Az(a,b,d){var c=100;if(this.At.length!==c){this.At=[];c++;for(var e=0;e<c;e++){var g=e/(c-1),k=co(this,g),m=eo(this,g);this.At.push({x:k,y:m, t:g,ci:0})}}c=this.At;e=fo(a,b,c,d);d=c;c=e;e=d[c];g=1;k=Number.MAX_SAFE_INTEGER;do{var n=0===c?0:c-1;m=c===d.length-1?d.length-1:c+1;let q=d[n].t,r=[],w=(d[m].t-q)/4;if(.001>w)break;r.push(d[n]);for(n=1;3>=n;n++){const x=q+n*w,z=co(this,x),E=eo(this,x),C=Math.abs($n.An(z,E,a,b)-0);C<k&&(k=C,e={x:z,y:E,t:x,ci:C},c=n);r.push({x:z,y:E,t:x,ci:C})}r.push(d[m]);d=r}while(25>g++);a=e;bo[0]=a.x;bo[1]=a.y;bo[2]=a.t;bo[3]=a.ci;return bo}}; $n.JU=class{constructor(a,b,d){this.oa=d;this.qX=ho(a);this.rX=ho(b);this.kx=this.jx=0}j(){}Hc(){return"line"}Ja(){return this.oa}T(){return this.qX+this.jx}U(){return this.rX+this.kx}};"use strict";const Yn=self.B;function pk(a){a.Uc||io(a)&&a.Play(!0)}function qk(a){if(a.Wq)return a.Wq;a.Wq=new Promise(b=>{a.MB=b});return a.Wq}function Zn(a){if(!a.Uc)for(const b of a.ab)b.hm()}function On(a){a.Wq&&(a.MB(),a.Wq=null,a.MB=null)}function Tn(a){return a.ab.some(b=>jo(b)?ko(b):!0)} function lo(a,b,d,c){if(a.NA){var e;for(let k=0;k<a.ab.length;k++){var g=a.ab[k];b===g.ba()&&(g=g.$d(c))&&d.constructor===g.Bb().constructor&&(e||(e=[]),e.push(g))}return e}}function mo(a){return a.IsPlaying()?0<a.gd:!0}function no(a){if(Yn.Uj(a))return a.slice(0);if(Yn.ki(a))return a.split(" ");throw Error("invalid tags");}function oo(a,b){return a.gf&&a.gf.length?(b=no(b))&&b.length?b.every(Yn.Zn.BV,a):!1:!1}function po(a,b){a.Og=b;b=a.wa();if(0>=b||b>=a.vc())a.Og=!0} function qo(a,b){Yn.Ic(b)||(b=a.vc());a.hc=0>b?0:b>=a.vc()?a.vc():b}function ro(a){a.NA=0;for(const b of a.ab)b.Ho&&(a.NA=1)}function so(a,b,d=!1,c=NaN,e=!1,g=!1){for(var k of a.ab)k.Hp();for(const m of a.ab){k=b;if("number"===typeof c&&!isNaN(c)){const n=a.wa()-m.Hg(),q=c-m.Hg();0>n&&0<q&&(k=m.Hg(),qo(a,k))}m.Ga(k,!1,d,!0,a.qg,g)}for(const m of a.ab)m.Fp();a.qg&&e&&(a.qg=!1)} function to(a){a.jc=0;for(const b of a.ab)b.Tz(),0===a.jc&&1===b.jc&&(a.jc=1),a.ts||1!==b.Uh||(a.ts||(a.ts=[]),a.iM=a.ts.push(b))}function uo(a){Yn.C.dd&&a.constructor===Yn.Zn&&(Yn.C.dd.K.VD(a),a.Ob.Ka(Yn.C.dd.K.I3),a.Ob.Ka(Yn.C.dd.K.J3),a.Ob.Ka(Yn.C.dd.K.K3),Yn.C.dd.K.SD())}function io(a){if(!a.Np())if(a.Rr()&&1===a.qc)if(mo(a)){if(a.wa()>=a.vc())return!1}else{if(0>=a.wa())return!1}else if(!a.Np()&&!a.Rr())if(mo(a)){if(a.wa()>=a.vc())return!1}else if(0>=a.wa())return!1;return!0} function vo(a){return a.ab.some(b=>jo(b)?ko(b)?(b=b.F())?b.rf():!1:!1:!1)}function wo(a){for(const b of a.ab)a=b,a.Sc=null,a.Al=-1,a.cb=null,a.El=-1}function xo(a,b){for(const d of a.ab)if(b===d.ba())return d;return null}function yo(a){return a.ab.map(b=>b.ra())}function zo(a,b){wo(a);b.forEach((d,c)=>{a.ab[c].ya(d)});a.ab.filter(d=>ko(d))} Yn.Zn=class extends Yn.ta{constructor(a,b,d){super();this.g=d.I();this.Ob=d;this.kc=b;this.Oa=a;this.ab=[];this.iI=0;this.ts=null;this.iM=0;this.ZJ();this.MB=this.Wq=null;this.hc=0;this.gd=1;this.qc=0;this.Je=1;this.Eo=this.rg=this.Sm=!1;this.Og=!0;this.Qq=this.Uc=!1;this.uo=-1;this.qg=this.Lm=this.it=this.Ys=!1;this.kt=NaN;this.gf=[""];this.lC="";this.Nx=!1;this.NA=this.jc=0}static nD(a,b,d){return Yn.A(Yn.Zn,a,b,d)}j(){if(!this.Uc){var a=this.g.tb();Nn(this.Ob,this);Qn(this.Ob,this);On(this);for(const b of this.ab)b.j(); Yn.D(this.ab);this.kc=this.Ob=this.g=this.ab=null;this.Uc=!0;this.MB=this.Wq=null;this.iK(a)}}iK(a){const b=Yn.A(Yn.Event,"timelinestatereleased");b.Aca=this;a.dispatchEvent(b)}Hc(){return 0}ZJ(){for(const a of Ao(this.kc.Pp()))this.iI=this.ab.push(Yn.Kz.Qa(this,a))}I(){return this.g}Iz(a){this.Oa=a}qa(){return this.Oa}Ur(){return this.kc.qa()}vc(){return this.kc.vc()}js(a){this.kc.js(a)}Lu(){return this.kc.Lu()}xE(a){this.kc.xE(a)}Pj(){return this.kc.Pj()}Vj(a){this.kc.Vj(a)}hd(){return this.kc.hd()}ol(){}ag(a){for(const b of this.ab)b.ag(a)}Np(){return this.kc.Np()}Hz(a){return this.kc.Hz(a)}Rr(){return this.kc.Rr()}tE(a){return this.kc.tE(a)}gi(){return this.kc.gi()}uE(a){return this.kc.uE(a)}Ch(a){return this.gd= a}xD(){return this.kc.xD()}fz(){return this.kc.fz()}AD(){return this.kc.AD()}dv(a){this.gf=no(a);this.Nx=!0}XK(){Yn.C.dd&&this.constructor===Yn.Zn&&(Yn.C.dd.K.VD(this),this.Ob.Ka(Yn.C.dd.K.O3),this.Ob.Ka(Yn.C.dd.K.P3),this.Ob.Ka(Yn.C.dd.K.Q3),this.Ob.Ka(Yn.C.dd.K.F3),Yn.C.dd.K.SD())}hK(){this.Lm||(this.Lm=!0,Yn.C.dd&&this.constructor===Yn.Zn&&(Yn.C.dd.K.VD(this),this.Ob.Ka(Yn.C.dd.K.L3),this.Ob.Ka(Yn.C.dd.K.M3),this.Ob.Ka(Yn.C.dd.K.N3),this.Ob.Ka(Yn.C.dd.K.E3),Yn.C.dd.K.SD()))}IsPlaying(a=!1){return this.uo=== this.g.Ri||this.rg&&!a?!0:this.Sm}Uu(){return this.Uc||this.rg||this.IsPlaying(!0)||this.Og?!1:!0}wa(){return this.hc}Dh(a){const b=this.wa();qo(this,a);po(this,!1);this.Og||(this.Ys=!0);if(this.IsPlaying(!0)||this.rg||!this.Eo)this.IsPlaying(!0)||this.rg||this.Eo?this.IsPlaying(!0)?this.cd():this.rg&&(Nn(this.Ob,this),this.Lc(!0)):this.Lc(!0);ro(this);so(this,this.wa(),!0,b);to(this);this.jc&&this.I().P();uo(this)}pm(a){Yn.Ic(a)||(a=this.vc());this.hc=0>a?0:a>=this.vc()?this.vc():a;for(const b of this.ab)b.Wj()}Play(a= !1){this.Uc||this.rg?a=!1:this.IsPlaying(!0)&&this.uo===this.g.Ri?(this.Ys=!1,a=this.Ob,Gn.Tl(a.pe,this),Ln(a),Mn(this.Ob,this),qk(this),a=!0):this.IsPlaying(!0)||!this.Og&&!a&&!this.Ys?a=!1:(this.Ys=!1,Mn(this.Ob,this),qk(this),a=!0);return a}cd(a=!1){this.Uc||(po(this,a),Qn(this.Ob,this),this.Og&&On(this))}bd(a=!0,b=!1){if(!this.Uc)if(!this.IsPlaying(!0)&&this.rg)Nn(this.Ob,this);else if(!this.Og){this.cd(!0);mo(this)?qo(this,0):qo(this,this.vc());var d=this.wa();ro(this);b?so(this,d,!1,NaN,!1, !0):so(this,d,!1);a&&uo(this);to(this);this.jc&&a&&this.I().P()}}xv(){if(this.Uc)return!0;if(!this.I().nj&&vo(this))return!1;Rn(this.Ob,this);this.I().nj||this.bd(!1,!0);return!0}Lc(a){if(!this.Qq){if(a){this.Lm=!1;this.qg=this.Eo=!0;ro(this);for(const b of this.ab)b.Lc()}else if(this.Sm=!0,this.rg=!1,this.XK(),this.Og){this.uo=-1;0!==this.qc&&(this.gd=Math.abs(this.gd));this.qc=0;this.Je=1;this.Lm=this.Og=!1;this.qg=this.Eo=!0;mo(this)?qo(this,0):qo(this,this.vc());ro(this);for(const b of this.ab)b.Lc()}else{this.qg= !0;this.Lm=!1;ro(this);for(const b of this.ab)b.eg()}to(this)}}He(a,b,d){if(this.AD()){if(0===a&&0===this.kt)return;this.kt=a}else{if(0===d&&0===this.kt)return;a=this.kt=d;b=1}d=this.hc;b=d+a*b*this.gd;a=this.kc.kr;this.hc=0>b?0:b>=a?a:b;var c=!1;b=!1;var e=this.Np(),g=this.Rr();e||g?e&&!g?0<this.gd?this.hc>=a&&(this.pm(0),b=!0):0>=this.hc&&(this.pm(a),b=!0):!e&&g?0<this.gd?this.hc>=a&&(qo(this,a),this.Ch(-1*this.gd),b=!0,1===this.qc?this.Je<this.gi()?(this.Je++,this.qc=0):c=!0:0===this.qc&&(this.qc= 1)):0>=this.hc&&(qo(this,0),this.Ch(-1*this.gd),b=!0,1===this.qc?this.Je<this.gi()?(this.Je++,this.qc=0):c=!0:0===this.qc&&(this.qc=1)):e&&g&&(0<this.gd?this.hc>=a&&(qo(this,a),this.Ch(-1*this.gd),b=!0,this.qc++,Yn.wrap(this.qc,0,2)):0>=this.hc&&(qo(this,0),this.Ch(-1*this.gd),b=!0,this.qc++,Yn.wrap(this.qc,0,2))):0<this.gd?this.hc>=a&&(this.Je<this.gi()?(this.Je++,this.pm(0),b=!0):(qo(this,a),c=!0)):0>=this.hc&&(this.Je<this.gi()?(this.Je++,this.pm(a),b=!0):(qo(this,0),c=!0));e=this.iI;if(c){for(c= 0;c<e;c++)Bo(this.ab[c]);this.cd(!0);this.uo=this.g.Ri}else{g=this.iM;for(c=0;c<g;c++)this.ts[c].Hp();if(1===this.NA)for(c=0;c<e;c++){const k=this.ab[c],m=k.Hg(),n=d-m;0>this.hc-m&&0<n?(this.hc=0>m?0:m>=a?a:m,k.Ga(m,!0,!1,b,this.qg,!1)):k.Ga(this.hc,!0,!1,b,this.qg,!1)}else for(c=0;c<e;c++)this.ab[c].Ga(this.hc,!0,!1,b,this.qg,!1);for(c=0;c<g;c++)this.ts[c].Fp();this.qg&&(this.qg=!1)}}QJ(){var a=Co(this.kc.Pp());a=Yn.Kz.Qa(this,a);this.iI=this.ab.push(a);return a}al(){for(const a of this.ab)a.al()}$d(a){for(const b of this.ab)for(const d of b.Ua)if(d.aa.Dc=== a)return d}pK(){const a=[];for(const b of this.ab)a.push(b.F());return a.filter(b=>b)}ra(){return{tracksJson:yo(this),name:this.Oa,playheadTime:this.wa(),playbackRate:this.gd,pingPongState:this.qc,currentRepeatCount:this.Je,isPlaying:this.Sm,isScheduled:this.rg,initialStateSet:this.Eo,finishedTriggers:this.Lm,complete:this.Og,released:this.Uc,markedForRemoval:this.Qq,completedTick:this.uo,implicitPause:this.Ys,isTemplate:this.it,tags:this.gf.join(" "),stringTags:this.lC,tagsChanged:this.Nx,firstTick:this.qg}}ya(a){a&& (zo(this,a.tracksJson),this.Oa=a.name,this.hc=a.playheadTime,this.gd=a.playbackRate,this.qc=a.pingPongState,this.Je=a.currentRepeatCount,this.Sm=!!a.isPlaying,this.rg=!!a.isScheduled,this.Eo=!!a.initialStateSet,this.Lm=a.hasOwnProperty("finishedTriggers")?!!a.finishedTriggers:!1,this.Og=!!a.complete,this.Uc=!!a.released,this.Qq=!!a.markedForRemoval,this.uo=a.completedTick,this.Ys=!!a.implicitPause,this.it=!!a.isTemplate,this.gf=a.tags.split(" "),this.lC=a.stringTags,this.Nx=!!a.tagsChanged,this.qg= !!a.firstTick)}static BV(a){const b=this.gf;return""===a?1===b.length&&""===b[0]:b.map(d=>d.toLowerCase()).includes(a.toLowerCase())}};"use strict";const Do=self.B;function Bo(a){if(!(a.fb().Og||(Eo(a),!a.$b()&&jo(a)||a.Ho))){const b=a.ug.wa();b>=a.Hg()+a.hl()?a.Ga(a.hl(),!0,!1,!0,!1,!1,!0):0>=b&&a.Ga(0,!0,!1,!0,!1,!1,!0)}}function jo(a){return 0===a.Hc()}function ko(a){return jo(a)?(a=Fo(a.I(),a.Ku()))?!Go(a):!1:!1}function Ho(a){if(a.Tc)return a.Tc;a.Tc=a.ob.fi().Tc;return a.Tc} function Eo(a){a.Sc||a.ba()}function*Io(a){for(const c of a.Ua){var b=c.Bb(),d=a.F();const e={FY:c,LY:b};switch(c.We()){case "world-instance":e.Ag=c.aa.Dc;break;case "instance-variable":b=b.Qr();e.name=Jo(d,b);e.type=Ko(d,b);break;case "effect":d=Lo(d.Sa,b.L.aa.Nf[0]);e.K$=d;break;case "behavior":d=b.oh(d);e.JI=d;break;case "plugin":e.Jba=d.qb()}yield e}} function Mo(a,b){a:{var d=a.ob.fi().Tc;const c=d.length;for(let e=0;e<c;e++){const g=d[e];if(g.wa()===b){d=g;break a}}d=void 0}return d?d:No(b,a.ob)}function Oo(a,b){a=a.ob.fi();for(const d of a.Tc){if(!b(d))continue;const c=a.Tc.indexOf(d);-1!==c&&(d.j(),a.Tc.splice(c,1))}Po(a);Qo(a)}function Ro(a){return a.Ua.map(b=>b.ra())}function So(a,b){b.forEach((d,c)=>{a.Ua[c].ya(d)})}function To(a,b){b=a.ob.fi().Tc[b];a.Fk=b} function Uo(a,b){if(Do.Ic(b)&&(b=Fo(a.I(),b))){var d=a.fb();a=a.ob.Dg();if(b)for(var c of d.ab)if(jo(c)){if(a){if(c.Dg()!==a)continue}else if(c.Sc)continue;a=b;if(c.Sc!==a){c.al();c.Sc=a;c.El=a.F().Ja();c.Al=a.Ab;c.cb=a.m();for(const n of Io(c)){const q=n.LY;switch(n.FY.We()){case "instance-variable":var e=a.F(),g=Vo(e,n.name),k=Jo(e,g);e=Ko(e,g);k===n.name&&e===n.type&&q.L.aa.Nf[0]!==g&&(q.Xx=g);break;case "behavior":var m=n.JI;g=c.F();k=a.F();e=q.oh(k);m&&e&&(m=m.qa(),Wo(g,m),Wo(k,m),g=e.bb,q.L.aa.Nf[0]!== g&&(q.bb=g))}}}In(d.Ob,b.F(),d);break}}} Do.Kz=class extends Do.ta{constructor(a,b){super();this.ug=a;this.ob=b;this.Si=b.Pp();this.El=this.Al=NaN;this.cb=this.Sc=null;this.Ho=0<b.Hg();this.Bo=this.Gq=!1;this.Fk=null;this.Tc=this.ob.fi().Tc;this.Ua=[];this.YJ();this.Uh=this.jc=this.wg=0}static Qa(a,b){return Do.A(Do.Kz,a,b)}j(){this.Tc=null;for(const a of this.Ua)a.j();Do.D(this.Ua);this.Fk=this.ob=this.cb=this.Sc=this.ug=this.Ua=null}YJ(){for(const a of Xo(this.ob.ae()))this.Ua.push(Do.rb.Qa(this,a))}hm(){for(const a of this.Ua)a.hm()}al(){for(const a of this.Ua)a.al(); this.cb=this.Sc=null}fb(){return this.ug}I(){return this.ug.I()}$d(a){for(let b=0;b<this.Ua.length;b++){const d=this.Ua[b];if(d.aa.Dc===a)return d}}$b(){return this.Sc?!Go(this.Sc):!1}F(){if(jo(this)){var a=this.tD();if(-1!==a)return om(this.I(),a)}}ba(){return this.Sc&&this.$b()?this.Sc:this.Sc=Fo(this.I(),this.Ku())}m(){if(this.cb&&this.$b())return this.cb;const a=this.ba();a&&(this.cb=a.m());return this.cb}Ku(){return this.Al?this.Al:this.ob.Ku()}lE(a){this.ob.lE(a)}Pj(){return this.ob.Pj()}Vj(a){this.ob.Vj(a)}hd(){return this.ob.hd()}Dg(){return this.ob.Dg()}Hg(){return this.ob.Hg()}hl(){return this.ob.hl()}Gz(a){this.ob.Gz(a)}ol(a){this.ob.ol(a)}ag(a){for(const b of Ho(this))b.ag(a); for(const b of this.Ua)b.ag(a)}cm(){return this.ob.cm()}Jg(a){this.ob.Jg(a)}tD(){return isNaN(this.El)?this.ob.tD():this.El}pE(a){this.ob.pE(a)}rE(a){this.ob.rE(a)}Fg(){const a=this.ba();return a&&a.na.yh()?a.na.Fg():this.ob.Fg()}qE(a){this.ob.qE(a)}Eg(){const a=this.ba();return a&&a.na.yh()?a.na.Eg():this.ob.Eg()}Hc(){return this.ob.Hc()}qa(){return this.ob.qa()}Wj(){for(const a of this.Ua)a.Wj()}Lc(){Eo(this);if(this.$b()||!jo(this)){var a=mo(this.fb())?0:this.hl();for(const b of this.Ua)b.Lc(a), 0===this.wg&&1===b.wg&&(this.wg=1),0===this.jc&&1===b.jc&&(this.jc=1);this.Uh=0;this.Ua.some(b=>b.Uh)&&(this.Uh=1);this.Fk=Mo(this,a);this.Bo=this.Gq=!1;this.Ga(a);this.wz(Mo(this,a))}}eg(){Eo(this);if(this.$b()||!jo(this)){mo(this.ug);var a=this.ug.wa()-this.Hg();this.Fk=Mo(this,a);for(const b of this.Ua)b.eg(a)}}Tz(){for(let a=0,b=this.Ua.length;a<b;a++){const d=this.Ua[a];d.Tz();0===this.wg&&1===d.wg&&(this.wg=1);0===this.jc&&1===d.jc&&(this.jc=1)}}Hp(){const a=this.Ua.length;for(let b=0;b<a;b++)this.Ua[b].Hp()}Ga(a, b=!1,d=!1,c=!1,e=!1,g=!1,k=!1){this.Sc||this.ba();const m=0===this.ob.Aa;if(!((!this.Sc||Go(this.Sc))&&m||g&&m&&this.F().rf()||(a-=this.Hg(),0>a))){a:if(g=a,b&&this.Ho&&!this.Gq){if(mo(this.fb())){if(0>g)break a;for(var n of this.Ua)n.Ga(0,!1,!0)}else{if(g>this.hl())break a;for(var q of this.Ua)q.Ga(this.hl(),!1,!0)}for(var r of this.Ua)r.Lc();this.Gq=!0}n=a;!e&&b&&Do.C.dd&&(e=this.fb(),q=this.Fk.bf,r=this.Fk.wa(),g=q?q.wa():e.vc(),n<=r||n>=g)&&(this.Fk=No(n,this.ob),mo(e)?q&&this.wz(this.Fk):(e= this.Fk.bf)&&this.wz(e));for(let w=0,x=this.Ua.length;w<x;w++)this.Ua[w].Ga(a,d,c,k);if(b&&this.Ho&&!this.Bo)if(mo(this.fb())){if(a>=this.hl()){for(const w of this.Ua)w.Ga(this.hl(),!1,!0);this.Bo=!0}}else if(0>=a){for(const w of this.Ua)w.Ga(0,!1,!0);this.Bo=!0}0!==this.wg&&(this.cb||(this.cb=this.Sc.m()),this.cb&&Pj(this.cb))}}Fp(){const a=this.Ua.length;for(let b=0;b<a;b++)this.Ua[b].Fp()}wz(a){const b=this.fb(),d=b.Ob;Do.C.dd.K.VD(b);Do.C.dd.K.H4(a);d.Ka(Do.C.dd.K.D3);d.Ka(Do.C.dd.K.wz);Do.C.dd.K.SD(b); Do.C.dd.K.z4(a)}PJ(){var a=Yo(this.ob.ae());a=Do.rb.Qa(this,a);this.Ua.push(a);return a}Ky(a){for(const b of this.Ua)b.Ky(a)}aq(){for(const a of this.Ua)a.aq()}Kj(){Eo(this);if(this.$b()||!jo(this))for(const a of this.Ua)a.Kj()}Lj(){Eo(this);if(this.$b()||!jo(this)){var a=!1;for(const b of this.Ua){const d=b.Lj();!a&&d&&(a=!0)}a&&(a=Zo(this.ob.fi()),a.Dh(this.fb().wa()),a.ag("noease"),a.Jg(!0),a.dv(""))}}ra(){var a=this.ba();a=a?a.Ab:this.Ku();var b=Ro(this);var d=this.ob.fi().Tc.indexOf(this.Fk); return{propertyTracksJson:b,lastKeyframeDataItemJson:d,initialStateOfNestedSet:this.Gq,endStateOfNestedSet:this.Bo,instanceUid:a}}ya(a){if(a){So(this,a.propertyTracksJson);To(this,a.lastKeyframeDataItemJson);Uo(this,a.instanceUid);this.Gq=!1;a.hasOwnProperty.initialStateOfNestedSet&&(this.Gq=a.initialStateOfNestedSet);this.Bo=!1;a.hasOwnProperty.endStateOfNestedSet&&(this.Bo=a.endStateOfNestedSet);for(const b of this.Ua)0===this.wg&&1===b.wg&&(this.wg=1),0===this.jc&&1===b.jc&&(this.jc=1);this.Uh= 0;this.Ua.some(b=>b.Uh)&&(this.Uh=1)}}};"use strict";const $o=self.B;function ap(a){return bp(a.ae(),a.aa).Hc()}function cp(a){if(a.ic)return a.ic;a.ic=dp(a.aa).ic;return a.ic}function ep(a,b){const d=a.fb(),c=a.Ec.vD(b,a.aa);return c?c:mo(d)?a.Ec.qh(b,a.aa):fp(b,a.aa)} $o.rb=class extends $o.ta{constructor(a,b){super();this.zb=a;this.aa=b;this.Ec=b.ae();this.Uh=this.jc=this.wg=0;this.Mf=this.Bb();this.ic=dp(this.aa).ic;this.lq=this.Fd=null}static Qa(a,b){return $o.A($o.rb,a,b)}j(){this.zb=null;this.Mf&&(this.Mf.j(),this.Mf=null);this.Ec=this.aa=this.ic=null}ae(){return this.Ec}fb(){return this.zb.fb()}I(){return this.zb.I()}ba(){return this.zb.ba()}Bb(){if(this.Mf)return this.Mf;let a;switch(this.aa.We()){case "behavior":a=new $o.rb.IQ(this);break;case "effect":a= new $o.rb.lR(this);this.jc=1;break;case "instance-variable":a=new $o.rb.sS(this);break;case "plugin":a=new $o.rb.PT(this);this.jc=1;break;case "world-instance":a=new $o.rb.Wp(this);this.wg=this.jc=1;break;case "value":a=new $o.rb.WU(this);break;case "audio":a=new $o.rb.EQ(this)}return this.Mf=a}We(){return this.aa.We()}wE(a){this.aa.wE(a)}CL(a){this.aa.hv(a)}nE(a){this.aa.nE(a)}mE(a){this.aa.mE(a)}cm(){return this.aa.cm()}Jg(a){this.aa.Jg(a)}Pj(){return this.aa.Pj()}Vj(a){this.aa.Vj(a)}hd(){return this.aa.hd()}ol(a){this.aa.ol(a)}ag(a){for(const b of cp(this))b.ag(a)}hD(){return this.aa.hD()}bz(){return dp(this.aa).bz()}vD(a){return this.Ec.vD(a, this.aa)}qh(a){return this.Ec.qh(a,this.aa)}hm(){this.Bb().hm()}al(){this.Bb().al()}qf(){return this.Bb().qf()}Wj(){this.Bb().Wj()}Lc(a){this.Bb().Lc();this.Fd=ep(this,a);this.Tz()}eg(a){this.Bb().eg();this.Fd=ep(this,a)}Tz(){var a=this.zb;this.Uh=0;if(jo(a)){var b=this.fb();a=a.ba();const d=this.Bb(),c=this.aa.Dc;d.jl()?(b=lo(b,a,d,c))&&b.length&&(this.Uh=1):this.Uh=0}}Hp(){this.Mf.Hp()}Ga(a,b=!1,d=!1,c=!1){let e;if(b)var g=this.Ec.qh(a,this.aa);else{if(this.Fd){var k=this.fb();const m=this.Fd.bf; g=this.Fd.wa();k=m?m.wa():k.vc();if(a<=g||a>=k)this.Fd=this.Ec.qh(a,this.aa)}else this.Fd=this.Ec.qh(a,this.aa);g=this.Fd}g&&(e=g.bf);this.Mf.Ga(a,g,e,b,d,c)}Wf(a){if(this.Fd){var b=this.fb();const c=this.Fd.bf;var d=this.Fd.wa();b=c?c.wa():b.vc();if(a<=d||a>=b)this.Fd=this.Ec.qh(a,this.aa)}else this.Fd=this.Ec.qh(a,this.aa);d=this.Fd;return this.Mf.Wf(a,d,d.bf)}Fp(){this.Mf.Fp()}Dy(){const a=gp(dp(this.aa));this.Fd=null;return a}Ky(a){this.Fd=null;hp(dp(this.aa),a)}aq(){this.Bb().aq()}Kj(){if(this.Bb().Kj()){const a= bp(0,this.aa),b=this.Bb().qf();ip(a,b)}}Lj(){const a=this.Bb().Lj();if(a){const b=this.fb().wa(),d=this.Bb(),c=this.Ec.qh(b,this.aa),e=this.Dy();e.hv(c.Hc());e.Dh(b);e.ag(c.Ln());e.Jg(!0);e.xe(jp(d));ip(e,d.qf())}this.Bb().Hy();return a}ra(){return{sourceAdapterJson:this.Bb().ra()}}ya(a){a&&this.Bb().ya(a.sourceAdapterJson)}};"use strict";const kp=self.B.rb; function jp(a){a=a.L;const b=a.zb.fb().wa(),d=a.Ec.qh(b,a.aa),c=d.bf;switch(ap(a)){case "numeric":return kp.Xu.Ga(b,d,c,a);case "angle":return kp.Ey.Ga(b,d,c,a);case "boolean":return kp.Gy.Ga(b,d,c,a);case "color":return kp.Iy.Ga(b,d,c,a);case "text":return kp.Jz.Ga(b,d,c,a)}}function lp(a){if(a.Zg)return a.Zg;a.Zg=mp(a);return a.Zg} function mp(a){const b=a.L;switch(b.hD()?ap(b):""){case "combo":case "boolean":case "text":case "string":return new kp.Ig.HK(a);case "numeric":case "number":case "angle":return"combo"===a.L.aa.Hc()?new kp.Ig.HK(a):new kp.Ig.IK(a);case "color":case "offsetColor":return new kp.Ig.VQ(a);default:return new kp.Ig.IK(a)}} kp.Wp=class{constructor(a){this.L=a;this.Zg=null;lp(this)}j(){this.Zg&&(this.Zg.j(),this.Zg=null);this.L=null}jl(){return this.Zg.jl()}$d(){return this.L}hm(){this.Zg&&this.Zg.hm()}al(){this.Zg&&this.Zg.al()}Qr(){}Ja(){return this.Qr()}Nu(){}Wj(){lp(this).Wj()}Lc(){lp(this).Lc()}eg(){lp(this).eg()}Hp(){this.Zg.Lr()}Ga(a,b,d,c,e,g){let k;switch(ap(this.L)){case "numeric":k=kp.Xu.Ga(a,b,d,this.L);break;case "angle":k=kp.Ey.Ga(a,b,d,this.L);break;case "boolean":k=kp.Gy.Ga(a,b,d,this.L);break;case "color":k= kp.Iy.Ga(a,b,d,this.L);break;case "text":k=kp.Jz.Ga(a,b,d,this.L)}this.Zg.Ip(a,k,b,d,c,e,g)}Wf(a,b,d){switch(ap(this.L)){case "numeric":return kp.Xu.Ga(a,b,d,this.L);case "angle":return kp.Ey.Ga(a,b,d,this.L);case "boolean":return kp.Gy.Ga(a,b,d,this.L);case "color":return kp.Iy.Ga(a,b,d,this.L);case "text":return kp.Jz.Ga(a,b,d,this.L)}}Fp(){this.Zg.Kr()}aq(){var a=lp(this);a.wj=a.qf()}Hy(){lp(this).Hy()}qf(){return lp(this).qf()}Kj(){return lp(this).Kj()}Lj(){return lp(this).Lj()}ra(){return{propertyAdapterJson:lp(this).ra()}}ya(a){a&& lp(this).ya(a.propertyAdapterJson)}};"use strict";const np=self.B;class op extends np.rb.Wp{constructor(a){super(a);this.Xx=NaN}Qr(){return this.L.aa.Nf[0]}Ja(){return this.Xx?this.Xx:super.Ja()}Nu(){return this.L.zb.ba()}Ga(a,b,d,c,e){lp(this).gD(b.Wa())&&super.Ga(a,b,d,c,e)}Wf(a,b,d){if(lp(this).gD(b.Wa()))return super.Wf(a,b,d)}ra(){return Object.assign(super.ra(),{index:this.Xx})}ya(a){a&&(super.ya(a),this.Xx=a.index)}}np.rb.sS=op;"use strict";const pp=self.B; class qp extends pp.rb.Wp{constructor(a){super(a);this.bb=NaN}Qr(){return this.L.aa.Nf[1]}Nu(){var a=this.L.aa,b=this.bb?this.bb:a.Nf[0];a=this.L.zb.ba();b=rp(a,b);return a.Ad[b].na}oh(a){return a.us.get(this.L.aa.Nf[2].toLowerCase())||null}Ga(a,b,d,c,e){const g=this.L.zb.ba();this.oh(g.F())&&super.Ga(a,b,d,c,e)}Wf(a,b,d){const c=this.L.zb.ba();if(this.oh(c.F()))return super.Wf(a,b,d)}ra(){return Object.assign(super.ra(),{sid:this.bb})}ya(a){a&&(super.ya(a),this.bb=a.sid)}}pp.rb.IQ=qp;"use strict"; const sp=self.B;function tp(a){const b=a.L.zb.m().Bf;if(a=Lo(b.Sa,a.L.aa.Nf[0]))return b.Xr(a.Ja())}class up extends sp.rb.Wp{constructor(a){super(a)}Qr(){return this.L.aa.Nf[1]}Nu(){const a=this.L.zb.m().Bf,b=Lo(a.Sa,this.L.aa.Nf[0]).Ja();return a.Xr(b)?a.nK(b):null}Ga(a,b,d,c,e){tp(this)&&super.Ga(a,b,d,c,e)}Wf(a,b,d){if(tp(this))return super.Wf(a,b,d)}}sp.rb.lR=up;"use strict";const vp=self.B; function wp(a){if(a.L.zb.F().qb()instanceof vp.C.vb&&("initial-frame"===a.L.aa.Dc||"initial-animation"===a.L.aa.Dc))switch(a.L.hd()){case "relative":return null;case "absolute":return null}}class xp extends vp.rb.Wp{constructor(a){super(a)}Qr(){return this.L.aa.Nf[0]}Nu(){return this.L.zb.ba().na}Ga(a,b,d,c,e){var g=this.L.zb;const k=g.F().qb();g=g.ba().F().qb();k===g&&super.Ga(a,b,d,c,e)}Wf(a,b,d){var c=this.L.zb;const e=c.F().qb();c=c.ba().F().qb();if(e===c)return super.Wf(a,b,d)}}vp.rb.PT=xp;"use strict"; const yp=self.B;class zp extends yp.rb.Wp{constructor(a){super(a);this.vd=0;this.SA=!1}jl(){return!1}Lc(){this.L.ae();let a=this.L.aa;a=bp(0,a);this.vd=ho(a)}eg(){}Wa(){this.SA||this.L.Ga(0);return this.vd}Ga(a,b,d){this.vd=yp.rb.Xu.Ga(a,b,d,this.L);this.SA=!0}aq(){}Hy(){}qf(){return this.vd}Kj(){return!1}Lj(){return!1}ra(){return{value:this.vd,init:this.SA}}ya(a){a&&(this.vd=a.value,this.SA=a.hasOwnProperty("init")?a.init:!0)}}yp.rb.WU=zp;"use strict";const Ap=self.B; function Bp(a){if(self.B.C.Audio){var b=a.L.I().Ft.get("audio")||null;b&&(a.Lf=b.Sj().na);a.oc=self.B.C.Audio.Ia;a.Ns=self.B.C.Audio.mc}}function Cp(a){if(!a.Mg){var b=a.L.zb.$d("audioSource");b&&(a.Mg=b.Bb())}} class Dp extends Ap.rb.Wp{constructor(a){super(a);this.sl=!1;this.Ns=this.oc=this.Lf=null;this.ug=this.L.fb();this.zb=this.L.zb;this.Fx=this.L.aa.Nf;this.eG=this.Fx[0];this.dI=this.Fx[1];this.ej=this.Fx[3]?this.Fx[3]:Math.random().toString(36).slice(2);this.rr=this.Tq=this.To=NaN;this.Mg=null;Bp(this)}j(){super.j();this.Mg=this.eG=this.Fx=this.zb=this.ug=this.Ns=this.oc=this.Lf=null}hm(){super.hm();this.sl=!1;this.Lf&&(this.Ns&&(this.To=this.Ns.NT.call(this.Lf,this.ej),this.Tq=this.Ns.YU.call(this.Lf, this.ej)),this.oc&&this.oc.cd.call(this.Lf,this.ej))}gm(a){this.rr=a}Lc(){super.Lc();this.To=NaN;this.sl=!1}eg(){super.eg();const a=this.L.fb().wa();this.To=a-this.dI;switch(this.L.aa.Dc){case "volume":this.Tq=this.L.Wf(a)}this.sl=!1}Ga(a,b,d,c,e){if(this.Lf)switch(this.L.aa.Dc){case "audioSource":if(!mo(this.ug))break;if(c){this.oc&&this.oc.cd.call(this.Lf,this.ej);break}if(a<this.dI){this.sl=!1;break}b=this.Ns.MT.call(this.Lf,this.ej);d=this.ug.gd;d!==b&&this.oc.Ch.call(this.Lf,this.ej,d);if(this.sl)break; if(!this.L.fb().IsPlaying())break;this.sl=!0;isNaN(this.To)?(b=self.performance.now(),a-=this.dI,"suspended"===Ep(this.Lf)?this.sl=!1:(a+=(self.performance.now()-b)/1E3,this.oc&&(b=this.rr,isNaN(b)?(this.gm(0),b=0):this.gm(b),this.oc.cL.call(this.Lf,this.eG,b,this.ej,a)))):(a=this.To,this.To=NaN,b=(b=this.L.zb.$d("volume"))?b.Bb().Tq:this.Tq,this.Tq=NaN,"suspended"===Ep(this.Lf)?this.sl=!1:this.oc&&(this.gm(b),this.oc.cL.call(this.Lf,this.eG,b,this.ej,a)));break;case "volume":Cp(this),super.Ga(a, b,d,c,e)}}Wf(a,b,d){if(this.Lf)switch(this.L.aa.Dc){case "volume":return Cp(this),super.Wf(a,b,d)}}sK(){return this.Mg?this.Mg.rr:0}oU(a,b){this.Mg&&this.Mg.gm(this.sK()+b);this.oc&&this.Mg&&this.oc.gm.call(this.Lf,this.Mg.ej,this.Mg.rr)}pQ(a,b){this.Mg&&this.Mg.gm(b);this.oc&&this.Mg&&this.oc.gm.call(this.Lf,this.Mg.ej,this.Mg.rr)}ra(){return{audioPlaybackStarted:this.sl,audioTag:this.ej,pauseTime:this.To,pauseVolume:this.Tq,volume:this.rr}}ya(a){a&&(this.sl=a.audioPlaybackStarted,this.ej=a.audioTag, this.To=a.pauseTime,this.Tq=a.pauseVolume,this.rr=a.volume,Bp(this))}}Ap.rb.EQ=Dp;"use strict";function Fp(a,b,d){return mo(a.L.fb())?b():d()}function Gp(a,b,d){return"relative"===a.L.hd()?b():d()}function Hp(a){if(a.Tt)return a.Tt;a.Tt=a.Mf.Nu();return a.Tt}function Ip(a,b=!1){const d=[];for(const c of a){a=c.zb.Hg();for(const e of cp(c))b&&0===e.wa()?d.push({time:a+e.wa(),value:e.cj}):b||d.push({time:a+e.wa(),value:e.cj})}return d.sort((c,e)=>c.time-e.time)} function Jp(a,b){for(let d=b.length-1;0<=d;d--)if(b[d].time<=a)return b[d];return null} self.B.rb.Ig=class{constructor(a){this.Mf=a;this.L=a.$d();this.cb=this.L.zb.m();this.Dc=this.L.aa.Dc;this.Os=!1;this.Tt=this.wj=null}j(){this.Tt=this.wj=this.cb=this.L=this.Mf=null}jl(){return!1}hm(){}al(){this.Tt=this.wj=this.cb=null}Bb(){return this.Mf}$d(){return this.L}m(){return this.cb?this.cb:this.cb=this.L.zb.m()}Wj(){}Lc(){}eg(){}Hy(){this.wj=null}qf(){}Kj(){}Lj(){}gD(a){return typeof this.mm()===typeof a}Lr(){}Ip(){}Kr(){}hq(){return Fp(this,()=>{const a=this.L.aa;return bp(this.L.ae(), a)},()=>{const a=this.L.aa;return this.L.ae().Xi(a)}).cj}Nz(){const a=this.L.fb().wa()-this.L.zb.Hg();return Fp(this,()=>{const b=this.L.aa;return this.L.ae().qh(a,b)},()=>{const b=this.L.aa,d=this.L.ae(),c=fp(a,b);return c?c:d.Xi(b)}).cj}Oz(){}kg(){return this.Mf.Ja()}ra(){return{firstAbsoluteUpdate:this.Os,saveState:this.wj}}ya(a){a&&(this.Os=a.firstAbsoluteUpdate,this.wj=a.saveState)}};"use strict";const Kp=self.B,Lp=new Map,Mp=[0,0,0]; function Np(a){return Kp.Rp(a,Kp.kb)?a.toArray().slice(0,3):a.slice(0,3)}function Op(a,b){a=Pp(a);b=Pp(b);return cc(a,b)}function Pp(a){return Kp.Rp(a,Kp.kb)?a:new Kp.kb(a[0],a[1],a[2],1)}function Qp(a,b,d){a=Lp.get(a).get(b).get(d);a.hQ=!0;return a.color} class Rp extends Kp.rb.Ig{constructor(a){super(a)}Wj(){}Lc(){}eg(){}qf(){const a=this.L.We(),b=Hp(this),d=this.kg();switch(a){case "behavior":return Np(b.uc(d));case "effect":return Np(b[d]);case "plugin":return Np(b.uc(d));case "world-instance":return Np(this.mm())}}Kj(){const a=this.hq();return!Op(a,this.mm())}Lj(){return Kp.sf(this.wj)?!1:!Op(this.wj,this.mm())}hq(){const a=super.hq();return Pp(a)}Nz(){const a=super.Nz();return Pp(a)}Oz(){}gD(){return!0}jl(){return!0}Lr(){var a=this.L.fb(),b=this.L.ba(); const d=this.L.Bb();(a=lo(a,b,d,this.Dc))&&1<a.length&&(Lp.has(b)||Lp.set(b,new Map),b=Lp.get(b),a=this.L.We(),b.has(a)||b.set(a,new Map),b=b.get(a),b.has(this.Dc)||b.set(this.Dc,{hQ:!1,color:new Kp.kb(0,0,0,1)}))}Ip(a,b){var d=this.L.fb(),c=this.L.zb;a=this.L.ba();var e=this.L.Bb();const g=this.L.We();if((e=lo(d,a,e,this.Dc))&&1<e.length){if(e=Ip(e,!0),d=d.wa(),d=Jp(d,e))e=d.time-c.Hg(),0===e?Xb(Qp(a,g,this.Dc),b[0],b[1],b[2]):0>e||(d=b[0],c=b[1],b=b[2],e=this.L.Ga(e,!1,!0),d=sc(d,e[0]),c=sc(c,e[1]), b=sc(b,e[2]),Xb(Qp(a,g,this.Dc),d,c,b))}else this.ql(b[0],b[1],b[2])}Kr(){const a=this.L.ba();if(Lp.has(a)){var b=Lp.get(a),d=this.L.We();if(b.has(d)){var c=b.get(d);if(c.has(this.Dc)){var e=c.get(this.Dc),g=e.color;e.hQ&&this.ql(g.hb,g.lb,g.gb);0===c.size&&b.delete(d);0===b.size&&Lp.delete(a)}}}}mm(){const a=this.L.We(),b=Hp(this),d=this.kg();switch(a){case "behavior":return Pp(b.uc(d));case "effect":return b[d].clone();case "plugin":return Pp(b.uc(d));case "world-instance":return this.m().Za.clone()}}ql(a, b,d){var c=this.L.We();const e=Hp(this),g=this.kg();switch(c){case "behavior":Mp[0]=a;Mp[1]=b;Mp[2]=d;e.dg(g,Mp);break;case "effect":Wb(e[g],a,b,d);break;case "plugin":Mp[0]=a;Mp[1]=b;Mp[2]=d;e.dg(g,Mp);break;case "world-instance":c=this.m(),Wb(Sp,a,b,d),Tp(c,Sp)}}ra(){}ya(){}}Kp.rb.Ig.VQ=Rp;"use strict";const Up=self.B,Vp=Up.rb; class Wp extends Up.rb.Ig{constructor(a){super(a)}Wj(){}Lc(){}eg(){}qf(){return this.mm()}Kj(){return this.hq()!==this.qf()}Lj(){return Up.sf(this.wj)?!1:this.wj!==this.qf()}jl(){return!1}Ip(a,b){const d=this.L,c=d.zb,e=d.We();var g=d.fb();const k=c.ba(),m=d.Bb();(g=lo(g,k,m,this.Dc))&&1<g.length&&(g=Ip(g),a=Jp(a+c.Hg(),g))&&(b=a.value);switch(ap(d)){case "numeric":if(!Vp.Xu.km(this.kg(),Hp(this),b,e))return;break;case "angle":if(!Vp.Ey.km(this.kg(),Hp(this),b,e))return;break;case "boolean":if(!Vp.Gy.km(this.kg(), Hp(this),b,e))return;break;case "color":if(!Vp.Iy.km(this.kg(),Hp(this),b,e))return;break;case "text":if(!Vp.Jz.km(this.kg(),Hp(this),b,e))return}this.ql(b)}mm(){const a=this.L.We(),b=Hp(this),d=this.kg();switch(a){case "behavior":return b.uc(d);case "effect":return b[d];case "instance-variable":return Xp(b,d);case "plugin":return b.uc(d)}}ql(a){const b=this.L.We(),d=Hp(this),c=this.kg();switch(b){case "behavior":d.dg(c,a);break;case "effect":d[c]=a;break;case "instance-variable":d.Xn(c,a);break; case "plugin":d.dg(c,a)}}}Up.rb.Ig.HK=Wp;"use strict";const Yp=self.B,Zp=new Map,$p=(a,b,d,c,e,g=!1,k=null,m=null)=>{Zp.set(a,{DJ:b,yX:d,aY:c,round:e,TX:g,init:k,reset:m})};$p("offsetX",(a,b,d,c)=>{"relative"===c.L.hd()?aq(a,b,d.fb().fz()):aq(a,b)},(a,b)=>a.hg(b),a=>a.T(),!0);$p("offsetY",(a,b,d,c)=>{"relative"===c.L.hd()?bq(a,b,d.fb().fz()):bq(a,b)},(a,b)=>a.Lg(b),a=>a.U(),!0); $p("offsetWidth",(a,b,d,c,e)=>{if(0!==b){var g=1===c.Tk.Hc();if(("relative"===c.L.hd()||g)&&a.Yf()&&cq(a)){if(isNaN(c.ek)){g=[];for(var k=a.Ea();k;)g.push(k),k=k.Ea();g.reverse();k=(r,w)=>{if(w=xo(w.fb(),r.ba()))return w.Fg();w=r.ba().na;return w.yh()?w.Fg():dq(r.Na)};const m=(r,w,x)=>{r=xo(w.fb(),r.ba());if(!r)return 0;x=r.$d(x);if(!x)return 0;x=dp(x.aa);return x?(x=x.Xi())?x.Wa():0:0};let n=g[0],q=dq(n.Na)*n.Na.Qt;q+=m(n,d,"offsetWidth");q+=k(n,d)*m(n,d,"offsetScaleX");for(let r=1;r<g.length;r++)n= g[r],q*=n.Na.Qt,q+=m(n,d,"offsetWidth"),q+=k(n,d)*m(n,d,"offsetScaleX");c.ek=0===q?Number.EPSILON:q}e||eq(a,b/c.ek,!0)}else eq(a,b)}},(a,b)=>a.gg(b),a=>a.N(),!0); $p("offsetHeight",(a,b,d,c,e)=>{if(0!==b){var g=1===c.Tk.Hc();if(("relative"===c.L.hd()||g)&&a.Yf()&&fq(a)){if(isNaN(c.ek)){g=[];for(var k=a.Ea();k;)g.push(k),k=k.Ea();g.reverse();k=(r,w)=>{if(w=xo(w.fb(),r.ba()))return w.Eg();w=r.ba().na;return w.yh()?w.Eg():gq(r.Na)};const m=(r,w,x)=>{r=xo(w.fb(),r.ba());if(!r)return 0;x=r.$d(x);if(!x)return 0;x=dp(x.aa);return x?(x=x.Xi())?x.Wa():0:0};let n=g[0],q=gq(n.Na)*n.Na.Rt;q+=m(n,d,"offsetHeight");q+=k(n,d)*m(n,d,"offsetScaleY");for(let r=1;r<g.length;r++)n= g[r],q*=n.Na.Rt,q+=m(n,d),q+=k(n,d)*m(n,d,"offsetScaleY");c.ek=0===q?Number.EPSILON:q}e||hq(a,b/c.ek,!0)}else hq(a,b)}},(a,b)=>a.Kg(b),a=>a.M(),!0);$p("offsetAngle",(a,b)=>{b=+b;0!==b&&a.Tn()&&(a.Ya=iq.Yd(a.Ya+b),jq(a))},(a,b)=>a.fe(b),a=>a.ua(),!1,!0); $p("offsetOpacity",(a,b,d,c)=>{b/=c.yH?c.yH:1;d=a.Gc()+b;0===c.nd?(1<d?c.nd+=d-1:0>d&&(c.nd+=d),kq(a)?a.bg(a.Na.Hl+b):a.bg(a.Gc()+b)):(a=a.Gc()+b,0<b&&0<c.nd?1<a&&(c.nd+=a-1):0<b&&0>c.nd?(c.nd+=b,0<c.nd&&(c.nd=0)):0>b&&0<c.nd?(c.nd+=b,0>c.nd&&(c.nd=0)):0>b&&0>c.nd&&0>a&&(c.nd+=a))},(a,b)=>{a.bg(b)},a=>a.Gc(),!1,!0,(a,b,d)=>{a.nd=0;switch(a.L.hd()){case "relative":a.L.ae();var c=dp(a.L.aa).ic,e=a.m().Gc(),g=e;for(var k of c)g=k.wa(),g=a.L.Wf(g),g=e+g,g=Yp.$(g,0,1);a.bu=e-g;a.bu=Math.round(100*(a.bu+ Number.EPSILON))/100;g=e;for(e=c.length-1;0<=e;e--)k=c[e].wa(),k=a.L.Wf(k),g-=k,g=Yp.$(g,0,1);a.au=g;a.au=Math.round(100*(a.au+Number.EPSILON))/100}c=1===a.Tk.Hc();if(("relative"===a.L.hd()||c)&&b.Yf()&&kq(b)){c=[];for(b=b.Ea();b;)c.push(b),b=b.Ea();c.reverse();b=(m,n,q)=>{m=xo(n.fb(),m.ba());if(!m)return 0;q=m.$d(q);if(!q)return 0;q=dp(q.aa);return q?(q=q.Xi())?q.Wa():0:0};g=c[0].Na.hC;g+=b(c[0],d,"offsetOpacity");for(e=1;e<c.length;e++)g+=b(c[e],d,"offsetOpacity");a.yH=0===g?1:g}},a=>{switch(a.L.hd()){case "relative":a.nd= 0;const b=a.m();let d=b.Gc();d=Math.round(100*(d+Number.EPSILON))/100;mo(a.L.fb())?(b.bg(d+a.bu),a.mb=0):(b.bg(d-a.au),a.mb=jp(a.Bb()))}});$p("offsetOriginX",(a,b)=>{a.Ik+=+b},(a,b)=>{a.Ik=+b},a=>a.rh(),!1);$p("offsetOriginY",(a,b)=>{a.Jk+=+b},(a,b)=>{a.Jk=+b},a=>a.th(),!1);$p("offsetZElevation",(a,b)=>{a.ig(a.eb()+b)},(a,b)=>a.ig(b),a=>a.eb(),!0); $p("offsetScaleX",(a,b,d,c)=>{if(0!==b){var e=0>a.N()?-1:1;"relative"===c.L.hd()&&a.Yf()&&cq(a)?(b*=d.Fg()*e,isNaN(c.ek)&&Zp.get("offsetWidth").DJ(a,1,d,c,!0),eq(a,b/c.ek,!0)):eq(a,d.Fg()*e*b)}},(a,b,d)=>{a.gg(d.Fg()*b)},(a,b)=>{const d=0>a.N()?-1:1;if(cq(a)){var c=a.Ea(),e=xo(b.fb(),c.ba());e?c=c.N()/e.Fg():(e=c.ba().na,c=e.yh()?c.N()/e.Fg():1);return a.N()*d/(b.Fg()*c)}return a.N()*d/b.Fg()},!1); $p("offsetScaleY",(a,b,d,c)=>{if(0!==b){var e=0>a.M()?-1:1;"relative"===c.L.hd()&&a.Yf()&&fq(a)?(b*=d.Eg()*e,isNaN(c.ek)&&Zp.get("offsetHeight").DJ(a,1,d,c,!0),hq(a,b/c.ek,!0)):hq(a,d.Eg()*e*b)}},(a,b,d)=>{a.Kg(d.Eg()*b)},(a,b)=>{const d=0>a.M()?-1:1;if(fq(a)){var c=a.Ea(),e=xo(b.fb(),c.ba());e?c=c.M()/e.Eg():(e=c.ba().na,c=e.yh()?c.M()/e.Eg():1);return a.M()*d/(b.Eg()*c)}return a.M()*d/b.Eg()},!1); function lq(a,b){const d=Hp(a),c=a.kg(),e=a.m(),g=a.L.zb;switch(a.L.We()){case "behavior":d.dg(c,b);break;case "effect":d[c]=b;break;case "instance-variable":d.Xn(c,b);break;case "plugin":d.dg(c,b,wp(a.Bb()));break;case "world-instance":a.DG(e,b,g);break;case "audio":a.vO.call(a.Bb(),e,b,g)}} function mq(a,b,d,c){switch(a.L.aa.Hc()){case "angle":b=Yp.Zd(b)}var e=(b.toString().split(".")[1]||"").length;b=a.mm();if(0===e)if(a.XB)e=Math.round(b);else if(a.bG)switch(a.L.aa.Hc()){case "angle":e=Yp.Ca(Math.round(Yp.Zd(b)));break;default:e=Math.round(100*(b+Number.EPSILON))/100}else e=b;else e=a.XB?Number(Yp.toFixed(b,e)):b;a.ql(e-b,d,c)} class nq extends Yp.rb.Ig{constructor(a){super(a);this.au=this.bu=this.nd=this.mb=0;this.ek=this.yH=NaN;this.vO=this.xO=this.wO=this.xG=this.RH=this.DG=this.FG=this.EG=null;this.bG=this.XB=!1;this.Tk=Yp.Rp(this.L.fb(),Yp.eq)?new Yp.rb.Ig.aT(this):new Yp.rb.Ig.$S(this);const b=this.L.aa.Dc;switch(this.L.We()){case "world-instance":a=Zp.get(b);this.EG=a.aY;this.FG=a.DJ;this.DG=a.yX;this.XB=a.round;this.bG=a.TX;this.xG=a.init;this.RH=a.reset;break;case "audio":this.wO=a.sK,this.xO=a.oU,this.vO=a.pQ, this.XB=!0,this.bG=!1}}j(){this.DG=this.FG=this.EG=this.Tk=null;this.ek=NaN;super.j()}jl(){return this.Tk.jl()}Wj(){this.RH&&this.RH(this)}Lc(){var a=this.Tk.Lc();"number"===typeof a&&(this.mb=a);this.xG&&(a=this.m(),this.xG(this,a,this.L.zb))}eg(){const a=this.Tk.eg();"number"===typeof a&&(this.mb=a)}qf(){return this.mm()}Kj(){return this.hq()!==this.qf()}Lj(){return Yp.sf(this.wj)?!1:this.wj!==this.qf()}Lr(){this.Tk.Lr()}Ip(a,b,d,c,e,g,k){return this.Tk.Ip(a,b,d,c,e,g,k)}Kr(){this.Tk.Kr()}mm(){const a= Hp(this),b=this.kg(),d=this.m(),c=this.L.zb;switch(this.L.We()){case "behavior":return a.uc(b);case "effect":return a[b];case "instance-variable":return Xp(a,b);case "plugin":return a.uc(b);case "world-instance":return this.EG(d,c);case "audio":return this.wO.call(this.Bb(),d,c)}}ql(a){var b=Hp(this),d=this.kg(),c=this.m();const e=this.L.zb;switch(this.L.We()){case "behavior":b.PD(d,a);break;case "effect":b[d]+=a;break;case "instance-variable":if(0!==a){d|=0;b=b.Af;if(0>d||d>=b.length)throw new RangeError("invalid instance variable"); c=b[d];if("number"===typeof c)b[d]="number"===typeof a?b[d]+a:b[d]+parseFloat(a);else{if("boolean"===typeof c)throw Error("can not set offset of boolean variable");if("string"===typeof c)throw Error("can not set offset of string variable");throw Error("unknown instance variable type");}}break;case "plugin":b.PD(d,a,wp(this.Bb()));break;case "world-instance":this.FG(c,a,e,this);break;case "audio":this.xO.call(this.Bb(),c,a,e,this)}}ms(a,b,d,c,e,g,k,m){this.Tk.ms(a,b,d,c,e,g,k,m)}ra(){return Object.assign(super.ra(), {v:this.mb,a:this.nd,fod:this.bu,bod:this.au})}ya(a){a&&(super.ya(a),this.mb=a.v,this.nd=a.a,this.bu=Yp.Ic(a.fod)?a.fod:0,this.au=Yp.Ic(a.bod)?a.bod:0)}}Yp.rb.Ig.IK=nq;"use strict";class oq{constructor(a){this.uC=!1;this.vd=0;this.Ua=a;for(let b=0,d=this.Ua.length;b<d;b++)this.Ua[b].lq=this}xe(a){this.vd=a}Wa(){return this.vd}bd(){this.uC=!1;this.vd=0}} class pq{constructor(a){this.cf=a}j(){this.cf=null}Hc(){return 0}Lc(){const a=this.cf;this.cf.$d();return Gp(a,()=>Fp(a,()=>0,()=>jp(a.Bb())),()=>{})}eg(){}jl(){switch(this.cf.$d().hd()){case "relative":return!1;case "absolute":return!0}}Lr(){var a=this.cf.$d(),b=a.aa.Dc;switch(a.hd()){case "absolute":if(a.lq)a.lq.bd();else{const d=a.fb(),c=a.ba();a=a.Bb();(b=lo(d,c,a,b))&&1<b.length&&new oq(b)}}}Ip(a,b,d,c,e,g){var k=this.cf,m=this.cf.$d();switch(m.hd()){case "relative":m=k.mb;k.ql(b-m,d,c);g&&this.ms(a, d,c,e,m,b);k.mb=b;break;case "absolute":if(d=m.fb(),a=m.zb,m.ba(),m.Bb(),m.lq){if(k=m.lq,c=Ip(k.Ua,!0),d=d.wa(),d=Jp(d,c))a=d.time-a.Hg(),0===a?(k.uC=!0,k.xe(k.Wa()+b)):0>a||(m=m.Wf(a),k.uC=!0,k.xe(k.Wa()+(b-m)))}else lq(k,b)}}Kr(){const a=this.cf;var b=this.cf.$d();switch(b.hd()){case "absolute":b.lq&&(b=b.lq,b.uC&&lq(a,b.Wa()))}}ms(a,b,d,c,e,g){const k=this.cf;c||(b&&a===b.wa()?mq(k,ho(b),b,d):d&&a===d.wa()?mq(k,ho(d),b,d):0===g-e&&mq(k,ho(b),b,d))}}self.B.rb.Ig.$S=pq;"use strict"; class qq{constructor(a){this.cf=a}j(){this.cf=null}Hc(){return 1}Lc(){const a=this.cf;a.Os=!0;return this.Oz(a.hq())}eg(){const a=this.cf;if(a.hq()!==a.Nz())return a.Os=!0,this.Oz(a.Nz())}jl(){return!1}Lr(){}Ip(a,b,d,c,e,g,k){const m=this.cf,n=m.mb;switch(m.$d().hd()){case "relative":m.ql(b-n,d,c);g&&this.ms(a,d,c,e,n,b,!1,k);break;case "absolute":if(m.Os)m.Os=!1,m.ql(n,d,c);else if(m.ql(b-n,d,c),g){g=this.ms;var q=this.cf;const x=q.m().ba();var r=q.$d().I().Ob;q=0;for(const z of Hn(r))if(0===z.Hc()){a:{r= z;var w=x;for(const E of r.ab)if(jo(E)&&w===E.ba()){r=!0;break a}r=!1}r&&q++}else 1===z.Hc()&&z.ba()===x&&q++;g.call(this,a,d,c,e,n,b,1>=q,k)}}m.mb=b}Kr(){}Oz(a){return a-this.cf.qf()}ms(a,b,d,c,e,g){const k=this.cf;c?b&&a===b.wa()?mq(k,ho(b),b,d):d&&a===d.wa()?mq(k,ho(d),b,d):d||mq(k,ho(b),b,d):b&&a===b.wa()?mq(k,ho(b),b,d):d&&a===d.wa()?mq(k,ho(d),b,d):0===g-e&&mq(k,ho(b),b,d)}}self.B.rb.Ig.aT=qq;"use strict";const rq=self.B,sq=self.Yl; rq.rb.Xu=class{constructor(){}static km(a,b,d,c){let e;switch(c){case "behavior":e=b.uc(a);break;case "effect":e=b[a];break;case "instance-variable":e=Xp(b,a);break;case "plugin":e=b.uc(a)}return e===d?!1:!0}static Ga(a,b,d,c){if(!d)return b=c.aa,b=c.ae().Xi(b),ho(b);var e=c.Pj();"default"===e&&(e="continuous");"combo"===c.aa.Hc()&&(e="discrete");if("discrete"===e)return ho(b);if("continuous"===e||"step"===e){"step"===e&&(e=c.fb().Lu(),0!==e&&(e=1/e,a=Math.floor(a*e)/e));e=ho(b);const g=ho(d),k=go(b, "cubic-bezier"),m=go(d,"cubic-bezier"),n=k&&k.Kx&&m&&m.yA;if(!n&&e===g)return e;const q=b.wa();d=d.wa();a=rq.normalize(a,q,d);b=b.Ln();n?(d-=q,b=sq.dm(b)(d*a,0,1,d),b=sq.dm("cubicbezier")(b,e,e+k.Jx,g+m.bw,g)):b=sq.dm(b)((d-q)*a,e,g-e,d-q);return"integer"===c.aa.Hc()?Math.floor(b):b}}};"use strict";const tq=self.B; tq.rb.Ey=class{constructor(){}static km(a,b,d,c){let e;switch(c){case "behavior":e=b.uc(a);break;case "effect":e=b[a];break;case "instance-variable":e=Xp(b,a);break;case "plugin":e=b.uc(a)}return e===d?!1:!0}static Ga(a,b,d,c){if(!d)return b=c.aa,b=c.ae().Xi(b),ho(b);var e=c.Pj();"default"===e&&(e="continuous");"combo"===c.aa.Hc()&&(e="discrete");if("discrete"===e)return ho(b);if("continuous"===e||"step"===e){"step"===e&&(c=c.fb().Lu(),0!==c&&(c=1/c,a=Math.floor(a*c)/c));const g=b.wa(),k=d.wa();c= ho(b);d=ho(d);if(e=go(b,"angle")){const m=e.SH;if(c===d&&0===m)return c;a=tq.normalize(a,g,k);b=self.Yl.dm(b.Ln())(a,0,1,1);switch(e.UF){case "closest":return tq.HI(c,d,b,m);case "clockwise":return tq.AX(c,d,b,m);case "anti-clockwise":return tq.zX(c,d,b,m)}}else{if(c===d)return c;a=tq.normalize(a,g,k);b=self.Yl.dm(b.Ln());return tq.HI(c,d,b(a,0,1,1))}}}};"use strict"; self.B.rb.Gy=class{constructor(){}static km(a,b,d,c){let e;switch(c){case "behavior":e=b.uc(a);break;case "effect":e=b[a];break;case "instance-variable":e=Xp(b,a);break;case "plugin":e=b.uc(a)}return!!e===!!d?!1:!0}static Ga(a,b,d,c){return d?ho(b)?1:0:(a=c.aa,a=c.ae().Xi(a),ho(a)?1:0)}};"use strict";const uq=self.B,vq=[0,0,0],wq=[0,0,0],xq=[0,0,0]; uq.rb.Iy=class{constructor(){}static km(a,b,d,c){let e;switch(c){case "behavior":e=b.uc(a);break;case "effect":e=b[a];break;case "instance-variable":e=Xp(b,a);break;case "plugin":e=b.uc(a)}Array.isArray(d)?(vq[0]=d[0],vq[1]=d[1],vq[2]=d[2]):(gc(xq,d),vq[0]=Math.floor(255*xq.hb),vq[1]=Math.floor(255*xq.lb),vq[2]=Math.floor(255*xq.gb));Array.isArray(e)?(wq[0]=e[0],wq[1]=e[1],wq[2]=e[2]):(gc(xq,e),wq[0]=Math.floor(255*xq.hb),wq[1]=Math.floor(255*xq.lb),wq[2]=Math.floor(255*xq.gb));return vq[0]!==wq[0]|| vq[1]!==wq[1]||vq[2]!==wq[2]?!0:!1}static Ga(a,b,d,c){if(!d)return b=c.aa,b=c.ae().Xi(b),b=ho(b),vq[0]=b[0],vq[1]=b[1],vq[2]=b[2],vq;var e=c.Pj();"default"===e&&(e="continuous");if("discrete"===e)return b=ho(b),vq[0]=b[0],vq[1]=b[1],vq[2]=b[2],vq;if("continuous"===e||"step"===e){"step"===e&&(c=c.fb().Lu(),0!==c&&(c=1/c,a=Math.floor(a*c)/c));c=b.wa();e=d.wa();var g=ho(b),k=ho(d);const m=uq.normalize(a,c,e);a=g[0];d=g[1];g=g[2];const n=k[0],q=k[1];k=k[2];b=self.Yl.dm(b.Ln());c=e-c;e=c*m;vq[0]=a===n? a:b(e,a,n-a,c);vq[1]=d===q?d:b(e,d,q-d,c);vq[2]=g===k?g:b(e,g,k-g,c);return vq}}};"use strict";self.B.rb.Jz=class{constructor(){}static km(a,b,d,c){let e;switch(c){case "behavior":e=b.uc(a);break;case "effect":e=b[a];break;case "instance-variable":e=Xp(b,a);break;case "plugin":e=b.uc(a)}return e===d?!1:!0}static Ga(a,b,d,c){return d?ho(b):(a=c.aa,a=c.ae().Xi(a),ho(a))}};"use strict";const yq=self.B; function zq(a,b,d,c,e){let g;if("function"===typeof c)switch(a){case "load":g=new c(null,e);break;case "create":g=new c(b,e);break;case "create-including-disabled":g=new c(b,e)}else if("object"===typeof c)switch(c=c.map.get(b[c.QP]),a){case "load":g=new c(null,e);break;case "create":g=new c(b,e);break;case "create-including-disabled":g=new c(b,e)}switch(a){case "load":g.ya(b);d.push(g);break;case "create":if("function"===typeof g.cm&&!g.cm()){g.j();break}d.push(g);break;case "create-including-disabled":d.push(g)}} function Aq(a,b,d,c){if(b)for(const e of b)zq("create",e,a,d,c)}function Bq(a,b,d,c){a.length?b.forEach((e,g)=>{a[g].ya(e)}):b.forEach(e=>{zq("load",e,a,d,c)})}yq.IU=class{constructor(){this.Qx=new Map}j(){for(const a of this.Qx.values())a.j();this.Qx.clear();this.Qx=null}$c(a){a=new yq.HL(a);this.Qx.set(a.qa(),a)}S(a){return this.Qx.get(a)}};"use strict";const Cq=self.B; Cq.HL=class{constructor(a){this.Oa="";this.kr=NaN;this.Mx=0;this.Jf=this.Cf="default";this.mx=this.Vw=!1;this.cr=1;this.Si=null;this.gC="";this.pC=!1;this.tC=!0;a&&(this.Oa=a[0],this.kr=a[1],this.Mx=a[2],this.Cf=a[3],this.Jf=a[4],this.Vw=!!a[6],this.mx=!!a[7],this.cr=a[8],this.gC=a[9],this.pC=!!a[10],this.tC=!!a[11],this.Si=new Cq.IL(a[5],this))}j(){this.Si.j();this.Si=null}Pp(){this.Si||(this.Si=new Cq.IL(null,this));return this.Si}qa(){return this.Oa}Iz(a){this.Oa=a}vc(){return this.kr}js(a){this.kr= a}Lu(){return this.Mx}xE(a){this.Mx=a}Pj(){return this.Cf}Vj(a){this.Cf=a}hd(){return this.Jf}ol(a){this.Jf=a}Np(){return this.Vw}Hz(a){this.Vw=a}Rr(){return this.mx}tE(a){this.mx=a}gi(){return this.cr}uE(a){this.cr=a}xD(){return this.gC}fz(){return this.pC}AD(){return this.tC}ra(){return{trackDataJson:this.Si.ra(),name:this.Oa,totalTime:this.kr,step:this.Mx,interpolationMode:this.Cf,resultMode:this.Jf,loop:this.Vw,pingPong:this.mx,repeatCount:this.cr,startOnLayout:this.gC,transformWithSceneGraph:!!this.pC, useSystemTimescale:this.tC}}ya(a){a&&(this.Pp().ya(a.trackDataJson),this.Oa=a.name,this.kr=a.totalTime,this.Mx=a.step,this.Cf=a.interpolationMode,this.Jf=a.resultMode,this.Vw=a.loop,this.mx=a.pingPong,this.cr=a.repeatCount,this.gC=a.startOnLayout,this.pC=!!a.transformWithSceneGraph,this.tC=!!a.useSystemTimescale)}};"use strict";const Dq=self.B; class Eq{constructor(a,b){this.Si=b;this.Gh=this.VA=null;this.El=this.Al=NaN;this.Jf=this.Cf="default";this.Ud=!1;this.Ec=this.pj=null;this.ge="";this.Dt=null;this.cI=0;this.Uw=this.Si.kc.vc();this.Aa=0;this.Oa="";a&&(a[0]&&(this.VA=a[0],this.Al=a[0][2],this.El=a[0][1]),this.Cf=a[1],this.Jf=a[2],this.Ud=!!a[3],a[6]&&(this.ge=a[6]),a[7]&&(this.Dt=a[7],this.cI=a[7][0],this.Uw=a[7][1]),a[8]&&(this.Gh=a[8]),a[8]&&(this.Gh=a[8]),a[9]&&(this.Aa=a[9]),a[10]&&(this.Oa=a[10]),this.pj=new Dq.CK(a[4],this), this.Ec=new Dq.eL(a[5],this))}j(){this.Si=this.VA=null;this.pj&&(this.pj.j(),this.pj=null);this.Ec&&(this.Ec.j(),this.Ec=null);this.Dt=null}Pp(){return this.Si}fi(){this.pj||(this.pj=new Dq.CK(null,this));return this.pj}ae(){this.Ec||(this.Ec=new Dq.eL(null,this));return this.Ec}tD(){return this.El}pE(a){this.El=a}Ku(){return this.Al}lE(a){this.Al=a}Pj(){return this.Cf}Vj(a){this.Cf=a}hd(){return this.Jf}ol(a){this.Jf=a}cm(){return this.Ud}Jg(a){this.Ud=!!a}Dg(){return this.ge}Hg(){return this.cI}hl(){return this.Uw}Gz(a){this.Uw= a}Fg(){return this.Gh[0]}rE(a){this.Gh||(this.Gh=[]);this.Gh[0]=a}Eg(){this.Gh||(this.Gh=[]);return this.Gh[1]}qE(a){this.Gh||(this.Gh=[]);this.Gh[1]=a}Hc(){return this.Aa}qa(){return this.Oa}ra(){return{keyframeDataJson:this.pj.ra(),propertyTrackDataJson:this.Ec.ra(),instanceData:this.VA,additionalInstanceData:this.Gh,instanceUid:this.Al,objectClassIndex:this.El,interpolationMode:this.Cf,resultMode:this.Jf,enabled:this.Ud,id:this.ge,nestedData:this.Dt,type:this.Aa,name:this.Oa}}ya(a){a&&(this.VA= a.instanceData,this.Al=a.instanceUid,this.El=a.objectClassIndex,this.Cf=a.interpolationMode,this.Jf=a.resultMode,this.Ud=a.enabled,this.ge=a.id,this.Aa=a.type?a.type:0,this.Oa=a.name?a.name:"",this.Uw=this.Si.kc.vc(),a.nestedData&&(this.Dt=a.nestedData,this.cI=this.Dt[0],this.Uw=this.Dt[1]),a.additionalInstanceData&&(this.Gh=a.additionalInstanceData),this.fi().ya(a.keyframeDataJson),this.ae().ya(a.propertyTrackDataJson))}}function*Ao(a){for(const b of a.mp)yield b} function Co(a){const b=new Eq(null,a);a.mp.push(b);return b}function No(a,b){b=b.fi().Tc;for(let d=b.length-1;0<=d;d--){const c=b[d];if(c.wa()<=a)return c}}Dq.IL=class{constructor(a,b){this.kc=b;this.mp=[];Aq(this.mp,a,Eq,this)}j(){this.kc=null;for(const a of this.mp)a.j();Dq.D(this.mp);this.mp=null}ra(){return{trackDataItemsJson:this.mp.map(a=>a.ra())}}ya(a){a&&Bq(this.mp,a.trackDataItemsJson,Eq,this)}};"use strict";const Fq=self.B;function dp(a){a.Mk||(a.Mk=new Fq.dL(null,a));return a.Mk} class Gq{constructor(a,b){this.Ec=b;this.Gx="";this.Aa=this.Dc=this.Nf=null;this.BB=this.DB=NaN;this.Jf=this.Cf="default";this.Ud=!1;this.Mk=null;this.hA=!0;a&&(this.Gx=a[0][0],this.Nf=a[0].slice(1),this.Dc=a[1],this.Aa=a[2],this.DB=a[3],this.BB=a[4],this.Cf=a[5],this.Jf=a[6],this.Ud=!!a[7],this.Mk=new Fq.dL(a[8],this),this.hA=a[9])}j(){this.Mk.j();this.Nf=this.Ec=this.Mk=null}ae(){return this.Ec}We(){return this.Gx}wE(a){this.Gx=a}Hc(){return this.Aa}hv(a){this.Aa=a}nE(a){this.DB=a}mE(a){this.BB= a}Pj(){return this.Cf}Vj(a){this.Cf=a}hd(){return this.Jf}ol(a){this.Jf=a}cm(){return this.Ud}Jg(a){this.Ud=!!a}hD(){return!!this.hA}ra(){return{propertyKeyframeDataJson:this.Mk.ra(),sourceAdapterId:this.Gx,sourceAdapterArguments:this.Nf,property:this.Dc,type:this.Aa,min:this.DB,max:this.BB,interpolationMode:this.Cf,resultMode:this.Jf,enabled:this.Ud,canHavePropertyKeyframes:this.hA}}ya(a){a&&(this.Gx=a.sourceAdapterId,this.Nf=a.sourceAdapterArguments,this.Dc=a.property,this.Aa=a.type,this.DB=a.min, this.BB=a.max,this.Cf=a.interpolationMode,this.Jf=a.resultMode,this.Ud=a.enabled,this.hA=a.canHavePropertyKeyframes,dp(this).ya(a.propertyKeyframeDataJson))}}function*Xo(a){for(const b of a.Yo)yield b}function Yo(a){const b=new Gq(null,a);a.Yo.push(b);return b}function bp(a,b){return dp(b).ic[0]}function fp(a,b){b=dp(b).ic;const d=b.length;for(let c=0;c<d;c++){const e=b[c];if(e.wa()>=a)return e}} Fq.eL=class{constructor(a,b){this.ob=b;this.Yo=[];Aq(this.Yo,a,Gq,this)}j(){this.ob=null;for(const a of this.Yo)a.j();Fq.D(this.Yo);this.Yo=null}Xi(a){return dp(a).ic.ie(-1)}vD(a,b){b=dp(b).ic;const d=b.length;for(let c=0;c<d;c++){const e=b[c];if(e.wa()===a)return e}}qh(a,b){b=dp(b).ic;for(let d=b.length-1;0<=d;d--){const c=b[d];if(c.wa()<=a)return c}}ra(){return{propertyTrackDataItemsJson:this.Yo.map(a=>a.ra())}}ya(a){a&&Bq(this.Yo,a.propertyTrackDataItemsJson,Gq,this)}};"use strict";const Hq=self.B; class Iq{constructor(a,b){this.pj=b;this.rc=-1;this.sk="noease";this.tk=!1;this.Ww=this.gf=null;a&&(this.rc=a[0],this.sk=a[1],this.tk=!!a[2],this.gf=(a=a[3])?a.split(" "):[],this.Ww=new Set(this.gf.map(d=>d.toLowerCase())),this.bf=null)}j(){this.pj=null;Hq.D(this.gf);this.gf=null;this.Ww.clear();this.bf=this.Ww=null}fi(){return this.pj}hs(a){this.bf=a}wa(){return this.rc}Dh(a){this.rc=a;Qo(this.pj)}Ln(){return this.sk}ag(a){this.sk=a}cm(){return this.tk}Jg(a){this.tk=!!a}dv(a){this.gf=a?a.split(" "): [];this.Ww=new Set(this.gf.map(b=>b.toLowerCase()))}ra(){return{time:this.rc,ease:this.sk,enable:this.tk,tags:this.gf}}ya(a){a&&(this.rc=a.time,this.sk=a.ease,this.tk=a.enable,this.gf=a.tags,this.Ww=new Set(this.gf.map(b=>b.toLowerCase())))}}function Zo(a){const b=new Iq(null,a);a.Tc.push(b);Qo(a);return b}function Qo(a){a.Tc.sort((b,d)=>b.wa()-d.wa());for(let b=0;b<a.Tc.length;b++)a.Tc[b].hs(a.Tc[b+1])}function Po(a){a.Tc.sort((b,d)=>b.wa()-d.wa())} Hq.CK=class{constructor(a,b){this.ob=b;this.Tc=[];Aq(this.Tc,a,Iq,this);Qo(this)}j(){this.ob=null;for(const a of this.Tc)a.j();Hq.D(this.Tc);this.Tc=null}ra(){return{keyframeDataItemsJson:this.Tc.map(a=>a.ra())}}ya(a){a&&(Bq(this.Tc,a.keyframeDataItemsJson,Iq,this),Qo(this))}};"use strict";const Jq=self.B; function go(a,b){if(a.fk){if(a.tm||null===a.tm)return a.tm;var d=a.fk.mq;if(!d)return a.tm=null,a.tm;var c=d.length;for(let e=0;e<c;e++){const g=d[e];if(g.Dg()===b)return a.tm=g,a.tm}a.tm=null;return a.tm}}function ho(a){const b=a.Mk.aa.hd();if("relative"===b)return a.Wa();if("absolute"===b)return a.cj}function ip(a,b){"color"===a.Aa&&Jq.Ic(b)?(a.cj[0]=Jq.cz(b),a.cj[1]=Jq.az(b),a.cj[2]=Jq.Ry(b)):a.cj=b} class Kq{constructor(a,b){this.Mk=b;this.cj=this.vd=null;this.Aa="";this.rc=NaN;this.sk="noease";this.tk=!1;this.fk=null;this.tm=void 0;this.EH="line";a&&(this.vd=a[0][0],this.cj=a[0][1],this.Aa=a[0][2],this.rc=a[1],this.sk=a[2],this.tk=!!a[3],this.EH=a[5],this.fk=null,a[4]&&(this.fk=new Jq.vQ(a[4])),this.qx=this.bf=null)}j(){this.Mk=null;this.fk&&(this.fk.j(),this.fk=null);this.qx=this.bf=null}hs(a){this.bf=a}Wa(){return this.vd}xe(a){"color"===this.Aa&&Jq.Ic(a)?(this.vd[0]=Jq.cz(a),this.vd[1]=Jq.az(a), this.vd[2]=Jq.Ry(a)):this.vd=a}Hc(){return this.Aa}hv(a){this.Aa=a}wa(){return this.rc}Dh(a){this.rc=a;Lq(this.Mk)}Ln(){return this.sk}ag(a){this.sk=a}cm(){return this.tk}Jg(a){this.tk=!!a}ra(){const a=this.fk;return{addonDataJson:a?a.ra():a,value:this.vd,aValue:this.cj,type:this.Aa,time:this.rc,ease:this.sk,enable:this.tk}}ya(a){a&&(a.addonDataJson&&this.fk.S9(a.addonDataJson),this.vd=a.value,this.cj=a.aValue,this.Aa=a.type,this.rc=a.time,this.sk=a.ease,this.tk=a.enable)}} function gp(a){const b=new Kq(null,a);a.ic.push(b);Lq(a);return b}function hp(a,b){for(const d of a.ic){if(!b(d))continue;const c=a.ic.indexOf(d);-1!==c&&(d.j(),a.ic.splice(c,1))}Mq(a);Lq(a)}function Lq(a){let b=a.ic;b.sort((c,e)=>c.wa()-e.wa());for(var d=0;d<b.length;d++){const c=b[d];d+1<b.length&&c.hs(b[d+1]);0<=d-1&&(c.qx=b[d-1])}b=a.Xo;b.sort((c,e)=>c.wa()-e.wa());for(a=0;a<b.length;a++)d=b[a],a+1<b.length&&d.hs(b[a+1]),0<=a-1&&(d.qx=b[a-1])}function Mq(a){a.ic.sort((b,d)=>b.wa()-d.wa())} Jq.dL=class{constructor(a,b){this.aa=b;this.ic=[];this.Xo=[];Aq(this.ic,a,Kq,this);b=this.Xo;var d=Kq;if(a)for(const c of a)zq("create-including-disabled",c,b,d,this);Lq(this)}j(){this.aa=null;for(const a of this.ic)a.j();Jq.D(this.ic);this.ic=null;for(const a of this.Xo)a.j();Jq.D(this.Xo);this.Xo=null}Xi(){return this.ic[this.ic.length-1]}bz(){return this.Xo}ra(){const a=this.Xo;return{propertyKeyframeDataItemsJson:this.ic.map(b=>b.ra()),propertyKeyframeDataItemsIncludingDisabledJson:a.map(b=>b.ra())}}ya(a){a&& (Bq(this.ic,a.propertyKeyframeDataItemsJson,Kq,this),Bq(this.Xo,a.propertyKeyframeDataItemsIncludingDisabledJson,Kq,this),Lq(this))}};"use strict";const Nq=self.B;class Oq{constructor(a,b){this.fk=b;this.ge=a[0];this.Hm=a[1]}j(){this.Hm=this.fk=null}Dg(){return this.ge}ra(){return{id:this.ge,data:this.Hm}}ya(a){a&&(this.ge=a.id,this.Hm=a.data)}} class Pq extends Oq{constructor(a,b){super(a,b);this.Jx=this.Hm[0];this.Kx=!!this.Hm[1];this.bw=this.Hm[2];this.yA=!!this.Hm[3]}j(){super.j()}ra(){return Object.assign(super.ra(),{startAnchor:this.Jx,startEnable:!!this.Kx,endAnchor:this.bw,endEnable:!!this.yA})}ya(a){a&&(super.ya(a),this.Jx=a.startAnchor,this.Kx=!!a.startEnable,this.bw=a.endAnchor,this.yA=!!a.endEnable)}} class Qq extends Oq{constructor(a,b){super(a,b);this.UF=this.Hm[0];this.SH=this.Hm[1]}j(){super.j()}ra(){return Object.assign(super.ra(),{direction:this.UF,revolutions:this.SH})}ya(a){a&&(super.ya(a),this.UF=a.direction,this.SH=a.revolutions)}} Nq.vQ=class{constructor(a){this.mq=[];Aq(this.mq,a,{QP:0,map:new Map([["cubic-bezier",Pq],["angle",Qq]])},this)}j(){for(const a of this.mq)a.j();Nq.D(this.mq);this.mq=null}ra(){return{addonDataItemsJson:this.mq.map(a=>a.ra())}}ya(a){a&&Bq(this.mq,a.addonDataItemsJson,{QP:"id",map:new Map([["cubic-bezier",Pq],["angle",Qq]])},this)}};"use strict";const Rq=self.B;let Sq=0;function Tq(a,b){a.ix||(a.ix=[]);a.ix.push(b)} function Uq(a,b,d){for(const c of a.ab)for(const e of c.Ua)e.aa.Dc===d&&(a=bp(e.ae(),e.aa),a.xe(b),ip(a,b))}function Vq(a,b){for(const d of a.ab)for(const c of d.Ua)if(c.aa.Dc===b)return c}function Wq(a,b){for(const e of b)b=Vq(a,e),Uq(a,b.qf(),e);if(mo(a)){var d=a.vc()-a.wa();a.js(d);for(var c of a.ab)c.Gz(d);qo(a,0)}else{c=a.wa();a.js(c);for(d of a.ab)d.Gz(c);qo(a,c)}a.Lc(!0)}function Xq(a,b,d){d=Vq(a,d);d=d.ae().Xi(d.aa);d.Dh(a.vc());d.xe(b);ip(d,b)} function Yq(a){for(const b of a.ab){const d=c=>{c=c.wa();const e=a.vc();return 0!==c&&c!==e};Oo(b,d);b.Ky(d)}} function Zq(a){var b=a.mf.Ob,d=new Rq.HL;if(a.json){d.ya(a.json.tweenDataItemJson);var c=new Rq.eq(d,b);c.ya(a.json);return c}b=new Rq.eq(d,b);Rq.Uj(a.ru)||(a.ru=[a.ru]);b.ge=a.id;b.dv(a.Dr);b.TA=a.lu;b.Is=a.su;b.Hz(a.loop);b.tE(a.qu);b.js(a.time);b.xE(0);b.Vj("default");b.ol(a.ru[0].Vl);b.uE(a.Cr);d=b.QJ();d.lE(a.instance.Ab);d.Vj("default");d.ol(a.ru[0].Vl);d.Jg(!0);d.pE(a.instance.F().Ja());var e=a.instance.na,g=e.yh()?e.Fg():a.instance.m().N();e=e.yh()?e.Eg():a.instance.m().M();d.rE(g);d.qE(e); g=Zo(d.ob.fi());g.Dh(0);g.ag("noease");g.Jg(!0);g.dv("");g=Zo(d.ob.fi());g.Dh(a.time);g.ag("noease");g.Jg(!0);g.dv("");for(c of a.ru)g=d.PJ(),g.wE(c.tu),g.aa.Nf=c.MY,g.aa.Dc=c.Ag,g.CL(c.type),g.nE(NaN),g.mE(NaN),g.Vj("default"),g.ol(c.Vl),g.Jg(!0),e=g.Dy(),e.hv(c.valueType),e.Dh(0),e.ag(c.Ej),e.Jg(!0),e.xe(c.Hj),ip(e,c.Hj),e=g.Dy(),e.hv(c.valueType),e.Dh(a.time),e.ag(c.Ej),e.Jg(!0),e.xe(c.lf),ip(e,c.lf),g.Bb();return b} Rq.eq=class extends Rq.Zn{constructor(a,b){super(`tween-${Sq++}`,a,b);this.ge="";this.Is=!1;this.TA="start-value";this.zb=this.UN=this.ix=this.Sc=null}iK(a){const b=Rq.A(Rq.Event,"tweenstatereleased");b.Mca=this;a.dispatchEvent(b)}Hc(){return 1}ZJ(){for(const a of Ao(this.kc.Pp()))this.ab.push(Rq.FE.Qa(this,a));this.zb=this.ab[0]}QJ(){var a=Co(this.kc.Pp());a=Rq.FE.Qa(this,a);this.ab.push(a);this.zb=this.ab[0];return a}$d(){return this.zb.Ua[0]}CL(){}ba(){var a=this.ab;if(a&&a.length&&(this.zb=a= a[0])){var b=a.ba();return a.$b()?b:void 0}}Dg(){return this.ge}XK(){if(this.UN)for(const a of this.UN)a(this);if(!this.Og)for(const a of this.ab)a.Lj()}hK(){if(!this.Lm&&(this.Lm=!0,this.ix))for(const a of this.ix)a(this)}Dh(a){Yq(this);super.Dh(a)}pm(a){Rq.Ic(a)||(a=this.vc());this.hc=0>a?0:a>=this.vc()?this.vc():a;this.zb.Wj()}Lc(a){if(!this.Eo&&"current-state"===this.TA)for(const b of this.ab)b.Kj();super.Lc(a)}cd(a=!1){super.cd(a);if(!this.Og)for(const b of this.ab)b.aq()}bd(a=!0,b=!1){Yq(this); super.bd(a,b)}xv(){if(this.Uc)return!0;const a=this.ba();if(a&&a.F().rf())return!1;Rn(this.Ob,this);this.bd(!1,!0);return!0}He(a,b,d){this.Sc||(this.Sc=this.ba());if(!this.Sc||Go(this.Sc))this.cd(!0),this.uo=this.g.Ri;else if(b=this.Sc.Jd,-1!==b&&(a=d*b),0!==a||0!==this.kt){this.kt=a;d=this.hc+a*this.gd;a=this.kc.kr;this.hc=0>d?0:d>=a?a:d;b=d=!1;var c=this.Np(),e=this.Rr();c||e?c&&!e?0<this.gd?this.hc>=a&&(this.pm(0),b=!0):0>=this.hc&&(this.pm(a),b=!0):!c&&e?0<this.gd?this.hc>=a&&(qo(this,a),this.Ch(-1* this.gd),b=!0,1===this.qc?this.Je<this.gi()?(this.Je++,this.qc=0):d=!0:0===this.qc&&(this.qc=1)):0>=this.hc&&(qo(this,0),this.Ch(-1*this.gd),b=!0,1===this.qc?this.Je<this.gi()?(this.Je++,this.qc=0):d=!0:0===this.qc&&(this.qc=1)):c&&e&&(0<this.gd?this.hc>=a&&(qo(this,a),this.Ch(-1*this.gd),b=!0,this.qc++,Rq.wrap(this.qc,0,2)):0>=this.hc&&(qo(this,0),this.Ch(-1*this.gd),b=!0,this.qc++,Rq.wrap(this.qc,0,2))):0<this.gd?this.hc>=a&&(this.Je<this.gi()?(this.Je++,this.pm(0),b=!0):(qo(this,a),d=!0)):0>=this.hc&& (this.Je<this.gi()?(this.Je++,this.pm(a),b=!0):(qo(this,0),d=!0));d?(Bo(this.zb),this.cd(!0),this.uo=this.g.Ri):(this.zb.Ga(this.hc,!0,!1,b,this.qg,!1),this.qg&&(this.qg=!1))}}ra(){const a=super.ra();return Object.assign(a,{tweenDataItemJson:this.kc.ra(),id:this.ge,destroyInstanceOnComplete:this.Is,initialValueMode:this.TA})}ya(a){a&&(this.kc.ya(a.tweenDataItemJson),super.ya(a),this.ge=a.id,this.Is=a.destroyInstanceOnComplete,this.TA=a.initialValueMode)}static IsPlaying(a){return a.IsPlaying()}static Uu(a){return a.Uu()}}; "use strict";const $q=self.B;function ar(a){1===a.Ua.length?a.hw=a.Ua[0]:(a.hw=a.Ua[0],a.WH=a.Ua[1])} $q.FE=class extends $q.Kz{constructor(a,b){super(a,b);this.WH=this.hw=null}static Qa(a,b){return $q.A($q.FE,a,b)}YJ(){for(const a of Xo(this.ob.ae()))this.Ua.push($q.EE.Qa(this,a));ar(this)}PJ(){var a=Yo(this.ob.ae());a=$q.EE.Qa(this,a);this.Ua.push(a);ar(this);return a}Lc(){Eo(this);if(this.$b()||!jo(this)){var a=mo(this.fb())?0:this.hl();for(const b of this.Ua)b.Lc(a),0===this.wg&&1===b.wg&&(this.wg=1),0===this.jc&&1===b.jc&&(this.jc=1);this.Uh=0;this.Ua.some(b=>b.Uh)&&(this.Uh=1);this.Fk=Mo(this, a);this.Bo=this.Gq=!1;this.Ga(a)}}Hp(){}Ga(a,b,d=!1,c=!1,e,g=!1,k=!1){this.Sc||this.ba();if(this.Sc){if(Go(this.Sc)||g&&this.F().rf())return!1;this.WH?(this.hw.Ga(a,d,c,k),this.WH.Ga(a,d,c,k)):this.hw.Ga(a,d,c,k);0!==this.hw.wg&&(this.cb||(this.cb=this.Sc.m()),this.cb&&Pj(this.cb))}}Fp(){}ya(a){super.ya(a);ar(this)}};"use strict";const br=self.B; br.EE=class extends br.rb{constructor(a,b){super(a,b);this.Lv=!1}static Qa(a,b){return br.A(br.EE,a,b)}Ga(a,b=!1,d=!1,c=!1){if(this.Lv){var e=this.ic[0];var g=this.ic[1]}else{if(b)e=this.Ec.qh(a,this.aa);else{if(this.Fd){g=this.fb();const k=this.Fd.bf;e=this.Fd.wa();g=k?k.wa():g.vc();if(a<=e||a>=g)this.Fd=this.Ec.qh(a,this.aa)}else this.Fd=this.Ec.qh(a,this.aa);e=this.Fd}g=e.bf}this.Mf.Ga(a,e,g,b,d,c)}Dy(){const a=gp(dp(this.aa));this.Fd=null;this.Lv=2>=cp(this).length;return a}Ky(a){this.Fd=null; hp(dp(this.aa),a);this.Lv=2>=cp(this).length}ra(){return{sourceAdapterJson:this.Bb().ra(),basic:this.Lv}}ya(a){a&&(this.Bb().ya(a.sourceAdapterJson),this.Lv=a.basic)}};"use strict";const cr=self.B,dr=self.Yl;function er(a){a.ox.clear();for(let d=0;d<a.Yh.length-1;d++){var b=a.Yh[d];if(!b.Kx)continue;const c=a.Yh[d+1];a.ox.set(b,dr.xR(b.Zh,b.Zh+b.BO,c.Zh+c.DM,c.Zh))}} cr.DE=class extends cr.ta{constructor(a,b=!0){super();this.Oa=a[0];this.GN=!1;this.Yh=[];for(var d of a[1])a=cr.JL.Qa(this,d),this.Yh.push(a);for(d=0;d<this.Yh.length;d++)this.Yh[d].hs(this.Yh[d+1]);this.ox=new Map;this.MO=new Map;er(this);b&&dr.sQ(this.Oa,(c,e,g,k)=>this.Ga(c,e,g,k))}static Qa(a){return cr.A(cr.DE,a)}j(){for(const a of this.Yh)a.j();cr.D(this.Yh);this.Yh=null;this.ox.clear();this.ox=null;this.MO.clear();this.MO=null}Ga(a,b,d,c){if(this.GN)return dr.YS(a,b,d,c);var e=a/c;a:{for(a= this.Yh.length-1;0<=a;a--)if(c=this.Yh[a],c.Zh<=e){a=c;break a}a=void 0}c=a.bf;if(!c){a:{for(a=this.Yh.length-1;0<=a;a--)if(c=this.Yh[a],c.Zh<e){a=c;break a}a=void 0}c=a.bf}e=cr.xY(e,a.Zh,c.Zh,c.Zh-a.Zh);const g=a.Zh,k=a.$x,m=a.Zh+a.BO,n=a.$x+a.nX,q=c.Zh+c.DM,r=c.$x+c.sW,w=c.Zh;c=c.$x;c=dr.dm("spline")(e,g,k,m,n,q,r,w,c,this.ox.get(a));c+=a.$x;return(1-c)*b+c*(b+d)}};"use strict";const fr=self.B; fr.JL=class extends fr.ta{constructor(a,b){super();this.Zh=b[0];this.$x=b[1];this.BO=b[2];this.nX=b[3];this.DM=b[4];this.sW=b[5];this.Kx=b[6];this.yA=b[7];this.bf=null}j(){}static Qa(a,b){return fr.A(fr.JL,a,b)}hs(a){this.bf=a}};"use strict";const gr=self.B;gr.MU=class extends gr.ta{constructor(a){super();this.g=a;this.qC=[]}j(){for(const a of this.qC)a.j();gr.D(this.qC);this.qC=null}Qa(a){this.qC.push(gr.DE.Qa(a))}};"use strict";const hr=self.B;function ir(a){return a.Oi?0!==a.Oi.size:!1} function jr(a,b,d){b=b instanceof hr.uz?b.Ja():b;if(a.Oi.has(b)&&(a=a.Oi.get(b).get(d)))return JSON.parse(JSON.stringify(a))}function kr(a,b,d){a.Pm||(a.Pm=new WeakMap);a.Pm.has(b)||a.Pm.set(b,d)} hr.DU=class extends hr.ta{constructor(a){super();this.g=a;this.Pm=this.Oi=null;this.$s=b=>this.Rz(b.instance)}j(){this.YD();if(this.Oi){for(const a of this.Oi.values())a.clear();this.Oi.clear()}this.g=this.Oi=null}Qa(a){this.Oi||(this.Oi=new Map);if(a){var b=a[0][16][0],d=a[1];this.Oi.has(d)||this.Oi.set(d,new Map);this.Oi.get(d).set(b,a)}}$C(){const a=this.g.tb();a&&a.addEventListener("instancedestroy",this.$s)}YD(){const a=this.g.tb();a&&a.removeEventListener("instancedestroy",this.$s)}Rz(a){this.Pm&& this.Pm.has(a)&&this.Pm.delete(a)}};"use strict";const lr=self.B;function mr(a){return a.yb[a.oa-1]}function nr(a){var b=a.yb,d=++a.oa;d===b.length?(d=lr.A(lr.zE,a),b.push(d),a.qk=d):(b=b[d],b.bd(),a.qk=b)} lr.qU=class extends lr.ta{constructor(a){super();this.J=a;this.yb=[];this.yb.push(lr.A(lr.zE,this));this.oa=0;this.qk=this.yb[0]}j(){for(const a of this.yb)a.j();lr.D(this.yb);this.J=this.qk=null}F(){return this.J}W(){return this.qk}Nd(){this.W().Nd()}Va(){this.qk=this.yb[--this.oa]}Zp(a){const b=this.yb;for(let d=0,c=b.length;d<c;++d)b[d].Zp(a)}};"use strict";const or=self.B;function pr(a){or.D(a.G);or.D(a.ub)}function qr(a){return a.jb?!!a.J.G.length:!!a.G.length} function rr(a){const b=a.pa();return b.length?b:a.ub}function sr(a,b){a.jb=!1;or.D(a.G);a.G.push(b)}function tr(a,b){a.jb=!1;or.Md(a.G,b)}function ur(a,b){a.jb=!1;or.D(a.G);for(const d of b)a.G.push(d)}function vr(a,b){b&&(wr(a.me).Vb().Me?(a.jb&&(or.D(a.G),or.Md(a.ub,b.F().pa()),a.jb=!1),b=a.ub.indexOf(b),-1!==b&&(a.G.push(a.ub[b]),a.ub.splice(b,1))):sr(a,b))} or.zE=class extends or.ta{constructor(a){super();this.yb=a;this.J=this.yb.F();this.me=this.J.I().Od();this.jb=!0;this.G=[];this.ub=[]}j(){pr(this);this.me=this.J=this.yb=null}F(){return this.J}pa(){return this.jb?this.J.pa():this.G}bd(){this.jb=!0;or.D(this.ub)}Nd(){this.jb=!0}lD(a){a.jb?this.bd():(this.jb=!1,or.Md(this.G,a.G),or.D(this.ub))}Zp(a){or.ai(this.G,a);or.ai(this.ub,a)}};"use strict";const xr=self.B;function wr(a){return a.yb[a.oa]} xr.pR=class extends xr.ta{constructor(a){super();this.Ma=a;this.g=this.Ma.I();this.yb=[];this.yb.push(xr.A(xr.fK,this,null));this.oa=0;this.AA=[]}j(){for(const a of this.yb)a.j();xr.D(this.yb);xr.D(this.AA);this.g=this.Ma=null}Da(){return this.Ma}I(){return this.g}Xa(a){var b=this.yb;const d=++this.oa;if(d===b.length)return a=xr.A(xr.fK,this,a),b.push(a),a;b=b[d];b.bd(a);return b}Va(){--this.oa}};"use strict";const yr=self.B; function zr(a){const b=a.yf;return b.jB?!0:a.Ze<b.zc.length-1?!!b.Pd().length:!1}function Ar(a,b){a.zf=b}yr.fK=class extends yr.ta{constructor(a,b){super();this.yb=a;this.g=this.yb.I();this.yf=b;this.Ye=this.Ze=0;this.Ao=this.Rh=!1;this.aG=null;this.jG=this.PM=0;this.zf=null}j(){this.bd(null);this.g=this.yb=null}bd(a){this.yf=a;this.Ye=this.Ze=0;this.Ao=this.Rh=!1;this.zf=null}YE(a,b){this.yf=a;this.Ze=0;this.Ye=b}Vb(){return this.yf}Fz(a){this.jG=a}};"use strict";const Br=self.B; Br.US=class extends Br.ta{constructor(a){super();this.Ma=a;this.g=this.Ma.I();this.yb=[];this.oa=-1;this.qk=null;this.UA=[]}j(){Br.D(this.yb);this.g=this.Ma=null}Da(){return this.Ma}I(){return this.g}Pr(){return this.qk}Xa(){const a=++this.oa,b=this.yb;a===b.length?b.push(this.UA.slice(0)):Br.Md(b[a],this.UA);this.qk=b[a]}Va(){this.qk=this.yb[--this.oa]}};"use strict";const Cr=self.B; Cr.WS=class extends Cr.ta{constructor(a){super();this.Ma=a;this.g=this.Ma.I();this.yb=[];this.oa=-1}j(){Cr.D(this.yb);this.g=this.Ma=null}Da(){return this.Ma}I(){return this.g}Pr(){return this.yb[this.oa]}Xa(){++this.oa;if(this.oa===this.yb.length){var a=Cr.A(Cr.VS,this);this.yb.push(a);return a}a=this.yb[this.oa];a.bd();return a}Va(){--this.oa}};"use strict";const Dr=self.B; Dr.VS=class extends Dr.ta{constructor(a){super();this.Yg=a;this.Oa="";this.oa=0;this.fd=!1}bd(){this.Oa="";this.oa=0;this.fd=!1}Iz(a){this.Oa=a}qa(){return this.Oa}Ja(){return this.oa}cd(){this.fd=!0}};"use strict";const Er=self.B;Er.BQ=class extends Er.ta{constructor(){super();this.yb=[];this.oa=-1}j(){Er.D(this.yb)}Pr(){return this.yb[this.oa]}Xa(){++this.oa;if(this.oa===this.yb.length){const a=[];this.yb.push(a);return a}return this.yb[this.oa]}Va(){--this.oa}};"use strict";const Fr=self.B; function is(a,b){return a.Ja()-b.Ja()}function kj(a,b){b?a.gA++:a.gA--}function mj(a){return 0<a.hn||0<a.Ke}function sn(a,b){for(const [d,c,e]of a.SB)a.Ev(b,d,c,e);Fr.D(a.SB)}function xn(a){for(const b of a.Wh)b.j();Fr.D(a.Wh)}function js(a,b){switch(b.kG){case 0:a.Ss.set(b.Aq.toLowerCase(),b);break;case 1:a.Wv.set(b.Aq.toLowerCase(),b)}}function ks(a,b){a.dw.set(b.bb,b);b.rf()?a.oF.push(b):a.MV.push(b)} function ls(a,b){2<=b.length&&b.sort(is);let d=a.eM.get(b.length);d||(d=[],a.eM.set(b.length,d));for(let c=0,e=d.length;c<e;++c){const g=d[c];a:{for(let k=0,m=b.length;k<m;++k)if(b[k]!==g[k]){a=!1;break a}a=!0}if(a)return g}d.push(b);return b}function ms(a,b){a.IN.push(b.Cb);return a.aX++}function ns(a){const b=[];for(a=a.Op();a;)Fr.Sl(b,a.SL()),a=a.Op();return b}function os(a){const b={};for(const d of ns(a))b[d.Qj()]=ps(d);return Object.create(Object.prototype,b)} function qs(a,b,d){let c=a.Wv.get((b.qa()+"."+d).toLowerCase());if(c)return c;if(!b.Pa)for(const e of b.yi)if(c=a.Wv.get((e.qa()+"."+d).toLowerCase()))return c;return null}function*rs(a,b){for(const d of Dn(b))if(b=d.pd)a.g.Fm.push(d),yield*b.pb(),ss(a.g)}async function ts(a,b){for(const d of a.qs)d.Vs=!1;a.hn++;for(const d of rs(a,b))await us(a.g,d);a.hn--}function vs(a,b,d,c){a.SB.push([b,d,c]);return!1}function ws(a,b,d,c){let e=null;const g=new Promise(k=>e=k);a.RB.push([b,d,c,e]);return g} function*xs(a){if(ys(a.g))throw Error("should not be in breakpoint");const b=a.g.nb;for(;a.RB.length;){const [d,c,e,g]=a.RB.shift(),k=yield*a.qv(b,d,c,e);g(k)}}async function zs(a){for(const b of xs(a))await us(a.g,b)}function As(a){for(let b=0,d=a.length;b<d;++b)a[b].Pk.Nd()}function Bs(a){for(let b=0,d=a.length;b<d;++b)nr(a[b].Pk)}function Cs(a){for(let d=0,c=a.length;d<c;++d){var b=a[d].Pk;const e=b.yb,g=++b.oa;g===e.length&&e.push(lr.A(lr.zE,b));const k=e[g];k.lD(e[g-1]);b.qk=k}} function Ds(a){for(let b=0,d=a.length;b<d;++b)a[b].Pk.Va()}function Es(a,b){const d=new Set,c=a.me.yb;a=a.me.oa;for(let e=0;e<=a;++e){const g=c[e].zf;if(g)for(const k of g)b&&b.has(k)||d.add(k)}return d}function Fs(a,b){b=new Set([...b]);a=Es(a,b);if(0<a.size){for(const d of a)nr(d.Pk);return[...a]}return null}function Gs(a){const b=Fr.A(Fr.sL,a);a.Wh.push(b);return b}function Hs(a){a=Fr.CX(a.Wh,b=>b.Bx);for(const b of a)b.j()} async function Is(a){if(a.Wh.length){var b=a.Vf(),d=!1;a.hn++;for(let c=0,e=a.Wh.length;c<e;++c){const g=a.Wh[c];Js(g)&&await Ks(g,b);g.Bx&&(d=!0)}d&&(Hs(a),b.bd(null));a.hn--}}function Ls(a){return a.Wh.filter(b=>"promise"!==b.Aa).map(b=>b.ra())}function Ms(a){for(;a;)if(a=a.Op(),a instanceof Fr.Lp)return a;return null} Fr.oR=class extends Fr.ta{constructor(a){super();this.g=a;this.qs=[];this.$B=new Map;this.pF=[];this.nG=new Map;this.DF=new Map;this.KF=new Map;this.Vz=new Map;this.eM=new Map;this.dw=new Map;this.aX=0;this.oF=[];this.MV=[];this.IN=[];this.Ss=new Map;this.Wv=new Map;this.me=Fr.A(Fr.pR,this);this.oe=Fr.A(Fr.US,this);this.Yg=Fr.A(Fr.WS,this);this.mI=[];this.SB=[];this.RB=[];this.gA=this.Ke=this.hn=0;this.Wh=[];this.xm=[];self.c3_callFunction=(b,d)=>this.Qz(b,d)}j(){xn(this);this.me.j();this.me=null; this.oe.j();this.oe=null;Fr.D(this.SB);Fr.D(this.RB);this.g=null;Fr.D(this.qs);this.$B.clear()}Qa(a){a=Fr.A(Fr.nR,this,a);this.qs.push(a);this.$B.set(a.qa().toLowerCase(),a)}cc(){for(var a of this.Wv.values()){var b=a;if(b.J&&b.J.Pa)for(const d of b.J.Km)if(Ns(d,b.eo)){b.sG=!0;break}}for(const d of this.Ss.values())d.cc();for(const d of this.Wv.values())d.cc();for(const d of this.qs)d.cc();for(const d of this.qs)nn(d);for(const d of this.mI)d.cc(!1);Fr.D(this.mI);b=this.oe;b.UA=this.IN;a=b.UA.slice(0); b.yb.push(a);b.oa=0;b.qk=a}I(){return this.g}Od(){return this.me}Vf(){return wr(this.Od())}Vb(){return this.Vf().Vb()}ph(){const a=this.Vf();return Os(a.Vb(),a.Ze)}Vy(){const a=this.Vf();return Ps(a.Vb(),a.Ye)}Ev(a,b,d,c){let e=!1;if(!a.dc())return vs(this,b,d,c);this.Ke++;for(const g of Dn(a))if(a=g.pd){this.g.Fm.push(g);for(const k of a.qA){const m=k.Ev(b,d,c);e=e||m}a=a.Ev(b,d,c);e=e||a;ss(this.g)}this.Ke--;return e}*qv(a,b,d,c){let e=!1;if(!a.dc())return vs(this,b,d,c);this.Ke++;for(const g of Dn(a))if(a= g.pd){this.g.Fm.push(g);for(const k of a.qA){const m=yield*k.qv(b,d,c);e=e||m}a=yield*a.qv(b,d,c);e=e||a;ss(this.g)}this.Ke--;return e}ra(){const a={};for(var b of this.pF)a[b.bb.toString()]=b.Tu();b={};for(const [e,g]of this.KF){var d=g.ra();d&&(b[e.toString()]=d)}d={};for(const [e,g]of this.Vz){var c=g.ra();c&&(d[e.toString()]=c)}c={};for(const [e,g]of this.dw)g.Eb||!g.rf()&&!g.Fi||(c[e.toString()]=g.Wa());return{groups:a,cnds:b,acts:d,vars:c,waits:Ls(this)}}ya(a){var b=a.groups;for(const [e,g]of Object.entries(b))(b= (b=this.DF.get(parseInt(e,10)))&&b.Ck?b:null)&&b.es(g);b=a.cnds;var d=new Map;for(const [e,g]of Object.entries(b))d.set(parseInt(e,10),g);for(const [e,g]of this.KF)g.ya(d.get(e)||null);b=a.acts;d=new Map;for(const [e,g]of Object.entries(b))d.set(parseInt(e,10),g);for(const [e,g]of this.Vz)g.ya(d.get(e)||null);b=a.vars;for(const [e,g]of Object.entries(b))(b=this.dw.get(parseInt(e,10))||null)&&b.xe(g);a=a.waits;xn(this);for(const e of a){a:{d=e;a=this.I();var c=this.DF.get(d.ev)||null;if(!c){a=null; break a}let g=0;if(d.hasOwnProperty("act")){b=this.Vz.get(d.act)||null;if(!b){a=null;break a}g=b.Ja()}b=Qs.A(Qs.sL,this);b.rc=d.t;b.Aa=-1===b.rc?"signal":"timer";b.Cx=d.st;b.ht=d.s;b.vk=c;b.Ye=g;for(const k of d.sm)(c=fn(a,k))&&b.Pe.push(c);if(Array.isArray(d.dsm))for(const k of d.dsm)if(c=fn(a,k))b.zf||(b.zf=new Set),b.zf.add(c);for(const [k,m]of Object.entries(d.sols))if(d=fn(a,parseInt(k,10)))c=Qs.A(Qs.FL,null),c.ya(this,m),b.dr.set(d,c);a=b}a&&this.Wh.push(a)}}Qz(a,b){Array.isArray(b)||(b=[]); a=this.Ss.get(a.toLowerCase().toLowerCase())||null;if(!a)return null;if(!a.Pb())return Rs(a);var d=a.Sg;if(b.length<d.length){b=b.slice(0);do b.push(d[b.length].Cb);while(b.length<d.length)}d=a.Ge();return d.cE(d.de(),!1,a.Nk,Rs(a),...b)}};"use strict";const Ss=self.B;function nn(a){Ss.D(a.qA);Ts(a,a);a.fM.clear()} function Us(a,b,d,c){switch(b[0]){case 0:case 3:b=Ss.bl.Qa(a,d,b);if(b.Me){c.push(b);c=b.zc;for(let e=0,g=c.length;e<g;++e)c[e].Vp()&&Vs(a,b,e)}else b.Vp()?Vs(a,b,0):c.push(b);break;case 1:a=Ss.zu.Qa(a,d,b);c.push(a);break;case 2:a=Ss.dK.Qa(a,d,b);c.push(a);break;case 4:c=Ws.A(Ws.Lp,a,d,b);Xs(c,b[1]);js(a.Ma,c);break;case 5:a=Ss.eK.Qa(a,d,b);c.push(a);break;case 6:c=Ws.A(Ws.Lp,a,d,b);Ys(c,b[1]);js(a.Ma,c);break;default:throw Error("invalid event type");}} function Vs(a,b,d){b.Me||a.Ma.mI.push(b);var c=Os(b,d),e=c.Ta;const g=c.F();if(c.kN){var k=a.JM.get(g);k||(k=new Map,a.JM.set(g,k));a=c.Ha;if(!a.length)throw Error("no parameters");a=Zs(a[0].$F)().toLowerCase();c=k.get(e);c||(c=new Map,k.set(e,c));e=c.get(a);e||(e=[],c.set(a,e));e.push([b,d])}else k=a.sC.get(g),k||(k={kJ:new Map,dy:new Map},a.sC.set(g,k)),(c=c.oh())?(a=k.dy.get(c),a||(a=new Map,k.dy.set(c,a))):a=k.kJ,k=a.get(e),k||(k=[],a.set(e,k)),k.push([b,d])} function Ts(a,b){const d=b.qA,c=b.fM;for(const e of a.qO)a=e.ww,e.Mb&&b!==a&&!c.has(a)&&(c.add(a),Ts(a,b),d.push(a))}function $s(a,b,d,c,e){c=a.sC.get(c);if(!c)return!1;e=e?c.dy.get(e):c.kJ;if(!e)return!1;e=e.get(b);if(!e)return!1;b=!1;for(const [g,k]of e)e=at(a,d,g,k),b=b||e;return b} function at(a,b,d,c){const e=a.g;a=a.Ma;const g=a.Vb(),k=a.Od(),m=a.Ke;let n=!1;g&&Bs(g.de());Bs(d.de());const q=1<m;q&&a.oe.Xa();const r=k.Xa(d);b&&(sr(d.zc[c].F().W(),b),b.wc()&&bt(b));b=!0;if(d.Ea()){const w=d.lr;for(let x=0,z=w.length;x<z;++x)if(!ct(w[x],r)){b=!1;break}}b&&(d.Me?(r.yf=d,d.zc[c].Ba()&&(d.ck(r,0)&&dt(d),r.Rh=!0)):d.Ba(r),n=r.Rh);k.Va();q&&a.oe.Va();Ds(d.de());g&&Ds(g.de());g||1!==m||(Fr.D(a.xm),0<a.gA||nj(e));return n} function*et(a,b,d,c,e){c=a.sC.get(c);if(!c)return!1;e=e?c.dy.get(e):c.kJ;if(!e)return!1;e=e.get(b);if(!e)return!1;b=!1;for(const [g,k]of e)e=g.Tf()?at(a,d,g,k):yield*ft(a,d,g,k),b=b||e;return b} function*ft(a,b,d,c){const e=a.g;a=a.Ma;const g=a.Vb(),k=a.Od(),m=a.Ke;let n=!1;g&&Bs(g.de());Bs(d.de());const q=1<m;q&&a.oe.Xa();const r=k.Xa(d);b&&(sr(d.zc[c].F().W(),b),b.wc()&&bt(b));b=!0;if(d.Ea()){const w=d.lr;for(let x=0,z=w.length;x<z;++x)if(!(yield*gt(w[x],r))){b=!1;break}}b&&(d.Me?yield*ht(d,r,c):yield*d.pb(r),n=r.Rh);k.Va();q&&a.oe.Va();Ds(d.de());g&&Ds(g.de());g||1!==m||(Fr.D(a.xm),0<a.gA||nj(e));return n} Ss.nR=class extends Ss.ta{constructor(a,b){super();this.Ma=a;this.g=a.I();this.Oa=b[0];this.zA=[];this.sC=new Map;this.JM=new Map;this.GM=new Map;this.Vs=!1;this.qO=[];this.qA=[];this.fM=new Set;for(const d of b[1])Us(this,d,null,this.zA);this.Lk=this.g.Nb?{type:"sheet",name:this.Oa,yy:0,children:[]}:null}j(){this.g=this.Ma=null}cc(){const a=this.zA;for(let b=0,d=a.length;b<d;++b)a[b].cc(b<d-1&&a[b+1]instanceof Ss.bl&&a[b+1].oz())}Da(){return this.Ma}I(){return this.g}qa(){return this.Oa}Ba(){if(!this.Vs){var a= this.g,b=it(a),d=b?performance.now():0;this.Vs=!0;var c=this.Da(),e=c.Vf();for(const g of this.zA)g.Ba(e),As(g.Pd()),Fr.D(c.xm),nj(a);e.bd(null);b&&(this.Lk.yy+=performance.now()-d)}}*pb(){if(!this.Vs){this.Vs=!0;var a=this.g,b=this.Da(),d=b.Vf();for(const c of this.zA)yield*c.pb(d),As(c.Pd()),Fr.D(b.xm),nj(a);d.bd(null)}}Ev(a,b,d){if(b){const c=b.F();$s(this,a,b,c,d);for(const e of c.yi)$s(this,a,b,e,d)}else return $s(this,a,b,null,null)}*qv(a,b,d){if(b){const c=b.F();yield*et(this,a,b,c,d);for(const e of c.yi)yield*et(this, a,b,e,d)}else return yield*et(this,a,b,null,null)}};"use strict";const jt=self.B,kt=[];function lt(){return!0}function*mt(){return!0}function Os(a,b){b=Math.floor(b);if(0>b||b>=a.zc.length)throw new RangeError("invalid condition index");return a.zc[b]}function Ps(a,b){b=Math.floor(b);if(0>b||b>=a.oc.length)throw new RangeError("invalid action index");return a.oc[b]} function ct(a,b){b.yf=a;const d=a.zc;let c=0===d.length;for(let e=0,g=d.length;e<g;++e){const k=d[e];b.Ze=e;if(k.Bw)throw Error("trigger cannot be used as sub-event to a loop");if(k.Ba())c=!0;else if(!a.Me)return!1}return a.Me?c:!0}function*gt(a,b){b.yf=a;const d=a.zc;let c=0===d.length;for(let e=0,g=d.length;e<g;++e){const k=d[e];b.Ze=e;if(k.Bw)throw Error("trigger cannot be used as sub-event to a loop");if(k.Tf()?k.Ba():yield*k.pb())c=!0;else if(!a.Me)return!1}return a.Me?c:!0} function*ht(a,b,d){b.yf=a;d=a.zc[d];if(d.Tf()?d.Ba():yield*d.pb())(nt(a)?a.ck(b,0):yield*a.gq(b,0))&&(ot(a)?dt(a):yield*pt(a)),b.Rh=!0}function qt(a,b){if(a)if(b.includes(a)||b.push(a),a.Pa)for(const c of a.Km){if(c.wc()){a=c;var d=b;for(const e of a.Kh.Fl)d.includes(e)||d.push(e)}}else if(a.wc())for(d of a.Kh.Fl)b.includes(d)||b.push(d)}function rt(a){const b=a.Cc;b.iP=a.zc.every(d=>d.Tf());b.LI=a.oc.every(d=>d.Tf());b.MI=a.zj.every(d=>d.Tf());b.jP=b.iP&&b.LI&&b.MI} function st(a){return a.ff&&a.ff instanceof jt.Lp||a.zc.some(b=>b.Vp())}function tt(a){a.jB=!0;a.pc&&tt(a.pc)}function ut(a){return a.Cc&&a.Cc.BP&&a.Cc.iy}function vt(a,b){b=Math.floor(b);return 0<=b&&b<a.oc.length} function dt(a){if(a.zj.length){var b=a.Ck&&it(a.g),d=b?performance.now():0,c=a.me,e=c.Xa(a);if(a.jB){var g=a.Ck;const k=a.lB,m=a.zj;for(let n=0,q=m.length,r=q-1;n<q;++n){const w=m[n],x=w.Pd(),z=!k||!g&&n<r;z&&Cs(x);w.Ba(e);z?Ds(x):As(x)}}else{g=a.zj;for(let k=0,m=g.length;k<m;++k)g[k].Ba(e)}c.Va();b&&(a.Lk.yy+=performance.now()-d)}}function nt(a){return!wt(a.g)&&a.Cc.LI}function ot(a){return!wt(a.g)&&a.Cc.MI} function*pt(a){if(a.zj.length){var b=a.me,d=b.Xa(a);a.jB?yield*xt(a,d):yield*yt(a,d);b.Va()}}function zt(a,b){const d=a.zc;for(let c=0,e=d.length;c<e;++c){const g=d[c];b.Ze=c;if(!g.Ba()){b.Rh=!1;return}}b.Rh=!0;a.ck(b,0)&&dt(a);b.Rh&&a.mw&&(b.Ao=!0)}function*At(a,b){const d=a.zc;let c=0===d.length;for(let g=0,k=d.length;g<k;++g){var e=d[g];e.Vp()||(b.Ze=g,e=e.Tf()?e.Ba():yield*e.pb(),c=c||e)}b.Rh=!!c;c&&((nt(a)?a.ck(b,0):yield*a.gq(b,0))&&(ot(a)?dt(a):yield*pt(a)),a.mw&&(b.Ao=!0))} function*Bt(a,b){const d=a.zc;for(let c=0,e=d.length;c<e;++c){const g=d[c];b.Ze=c;if(g.Tf()?!g.Ba():!(yield*g.pb())){b.Rh=!1;return}}b.Rh=!0;(nt(a)?a.ck(b,0):yield*a.gq(b,0))&&(ot(a)?dt(a):yield*pt(a));b.Rh&&a.mw&&(b.Ao=!0)}function*Ct(a,b){if(yield*a.gq(b,b.Ye))yield*pt(a)}function*xt(a,b){const d=a.Ck,c=a.lB;a=a.zj;for(let e=0,g=a.length,k=g-1;e<g;++e){const m=a[e],n=m.Pd(),q=!c||!d&&e<k;q&&Cs(n);yield*m.pb(b);q?Ds(n):As(n)}} function*yt(a,b){a=a.zj;for(let d=0,c=a.length;d<c;++d)yield*a[d].pb(b)}function Dt(a,b,d){d.Ze=0;d.Ye=0;const c=a.zc;if(!a.Me)for(let e=b.Ze+1,g=c.length;e<g;++e)if(b=c[e],d.Ze=e,!b.Ba())return!1;a.ck(d,0)&&dt(a);return!0}function*Et(a,b,d){d.Ze=0;d.Ye=0;const c=a.zc;if(!a.Me)for(let e=b.Ze+1,g=c.length;e<g;++e)if(b=c[e],d.Ze=e,b.Tf()?!b.Ba():!(yield*b.pb()))return!1;(nt(a)?a.ck(d,0):yield*a.gq(d,0))&&(ot(a)?dt(a):yield*pt(a));return!0} function Ft(a,b){if(a.Ea()){a=a.lr;for(let d=0,c=a.length;d<c;++d)if(!ct(a[d],b))return!1}return!0}function*Gt(a,b){if(a.Ea()){a=a.lr;for(let d=0,c=a.length;d<c;++d)if(!(yield*gt(a[d],b)))return!1}return!0}function Ht(a,b,d,c){0<d.length?c?(d=d.map(e=>e.S(0)),b.oe.Xa(),It(a.ff,d)):Jt(a.ff,d):c&&b.oe.Xa()} function*Kt(a,b,d,c,e){let g,k;if(ut(a)||wt(a.g))yield a;const m=0<b.length;let n=null;const q=a.me,r=a.g.Da(),w=1<++r.Ke;Ht(a,r,d,w);m&&(c?Cs(b):Bs(b));null!==e&&(e.iu?(d=e.DC.W(),tr(d,(c?e.iu.W():mr(e.iu.Pk)).pa()),or.D(d.ub),c||Lt(e.DC)):e.Br&&(d=e.Br.W(),tr(d,e.ty),or.D(d.ub)),e.yJ&&(n=Fs(r,b)));e=q.Xa(a);c&&(e.zf=b);if(yield*Gt(a,e))e.yf=a,(c=a.ff.ii())&&([k,g]=Mt(a.ff)),yield*Bt(a,e),c&&Nt(a.ff,k);q.Va();w&&r.oe.Va();null!==n&&Ds(n);m&&Ds(b);--r.Ke;return g} function*Ot(a,b,d){if(ut(a)||wt(a.g))yield a;const c=a.de(),e=0<c.length,g=a.me,k=a.g.Da(),m=1<++k.Ke;m&&k.oe.Xa();It(a.ff,b);e&&(d?Cs(c):Bs(c));b=g.Xa(a);if(yield*Gt(a,b))b.yf=a,yield*Bt(a,b);g.Va();m&&k.oe.Va();e&&Ds(c);--k.Ke} jt.bl=class extends jt.ta{constructor(a,b,d){super();this.pd=a;this.g=a.I();this.pc=b;this.ff=null;this.me=this.g.Da().Od();this.Pe=[];this.Ot=[];this.mw=this.lB=this.jB=this.VM=!1;this.Me=!!d[2];this.bB=!1;this.lr=null;this.zc=[];this.oc=[];this.zj=[];this.ck=lt;this.gq=mt;this.OG=this.Ck=!1;this.RM="";this.cB=!1;this.Lk=this.oA=null;this.bb=d[4];this.Js=d[5];this.pd.GM.set(this.Js,this);this.Cc=this.g.Nb?{iy:d[3][0],BP:d[3][1],iP:!1,LI:!1,MI:!1,jP:!1}:null;this.Da().DF.set(this.bb,this);3===d[0]&& (a=d[1],this.Ck=!0,this.cB=this.OG=!!a[0],this.RM=a[1].toLowerCase(),this.oA=[],b=this.Da(),b.pF.push(this),b.nG.set(this.RM,this),this.g.Nb&&(this.Lk={type:"group",name:a[1],yy:0,children:[]}));a=0;for(var c of d[6])b=jt.kD.Qa(this,c,a++),this.zc.push(b),b=b.F(),qt(b,this.Pe);a=0;for(const e of d[7])c=jt.Cy.Qa(this,e,a++),this.oc.push(c);if(9===d.length){d=d[8];for(const e of d)Us(this.pd,e,this,this.zj)}this.zc.length&&(this.bB=null===this.zc[0].F()&&this.zc[0].Ta===jt.C.sb.K.cK);0===this.zc.length&& (this.zc=kt);0===this.oc.length&&(this.oc=kt);0===this.zj.length&&(this.zj=kt)}static Qa(a,b,d){return jt.A(jt.bl,a,b,d)}cc(a){this.mw=!!a;if(this.Ck)for(a=this.Ea(),this.lB=!0;a;){if(!a.Ck){this.lB=!1;break}a=a.Ea()}if(st(this)){this.lr=[];for(a=this.Ea();a;)this.lr.push(a),a=a.Ea();this.lr.reverse()}for(var b of this.zc)b.cc();if(0<this.oc.length){b=!1;for(var d of this.oc)d.cc(),(d.ii()||2===d.os)&&(b=!0);b?(this.ck=this.DV,this.gq=this.hV):(this.ck=this.CV,this.gq=this.gV)}d=this.zj;for(let c= 0,e=d.length;c<e;++c)d[c].cc(c<e-1&&d[c+1]instanceof jt.bl&&d[c+1].oz());this.Cc&&rt(this);if(this.Lk){a:{for(d=this.Ea();d;){if(d.Ck)break a;d=d.Ea()}d=this.pd}d.Lk.children.push(this.Lk)}}Pd(){return this.Pe}de(){if(!this.VM){this.VM=!0;var a=this.g.yd;if(this.Pe===a)this.Ot=a;else{this.Ot=jt.CC(this.Pe);for(a=this.Ea();a;){for(var b of a.Pe)qt(b,this.Ot);a=a.Ea()}b=this.Da();this.Pe=ls(b,this.Pe);this.Ot=ls(b,this.Ot)}}return this.Ot}Da(){return this.pd.Da()}I(){return this.g}Ea(){return this.pc}Op(){return this.ff|| this.pc}oz(){return this.bB}Tu(){return this.cB}es(a){a=!!a;if(!this.Ck)throw Error("not a group");if(this.cB!==a){this.cB=a;for(const b of this.oA)Pt(b);this.oA.length&&(a=rm(this.g).pd)&&nn(a)}}Vp(){return this.zc.length&&this.zc[0].Vp()}SL(){return this.zj.filter(a=>a instanceof jt.zu)}Ba(a){a.yf=this;this.bB||(a.Ao=!1);if(this.Me){const d=this.zc;let c=0===d.length;for(let e=0,g=d.length;e<g;++e){var b=d[e];b.Vp()||(a.Ze=e,b=b.Ba(),c=c||b)}a.Rh=!!c;c&&(this.ck(a,0)&&dt(this),this.mw&&(a.Ao=!0))}else zt(this, a)}*pb(a){if(ut(this)||wt(this.g))yield this;a.yf=this;this.bB||(a.Ao=!1);this.Me?yield*At(this,a):yield*Bt(this,a)}CV(a,b){const d=this.oc;for(let c=b,e=d.length;c<e;++c)b=d[c],a.Ye=c,b.Ba();return!0}*gV(a,b){const d=this.oc;for(let c=b,e=d.length;c<e;++c)b=d[c],a.Ye=c,b.Tf()?b.Ba():yield*b.pb();return!0}DV(a,b){const d=this.Da(),c=this.oc;for(let e=b,g=c.length;e<g;++e){b=c[e];a.Ye=e;const k=b.Ba();if(2===b.os&&!0===k)return!1;b.ii()&&k instanceof Promise&&d.xm.push(k)}return!0}*hV(a,b){const d= this.Da(),c=this.oc;for(let e=b,g=c.length;e<g;++e){b=c[e];a.Ye=e;let k;k=b.Tf()?b.Ba():yield*b.pb();if(2===b.os&&!0===k)return!1;b.ii()&&k instanceof Promise&&d.xm.push(k)}return!0}Tf(){return!ut(this)&&!wt(this.g)&&this.Cc.jP}Dz(a,b,d,c){let e,g;const k=0<a.length;let m=null;const n=this.me,q=this.g.Da(),r=1<++q.Ke;Ht(this,q,b,r);k&&(d?Cs(a):Bs(a));null!==c&&(c.iu?(b=c.DC.W(),tr(b,(d?c.iu.W():mr(c.iu.Pk)).pa()),or.D(b.ub),d||Lt(c.DC)):c.Br&&(b=c.Br.W(),tr(b,c.ty),or.D(b.ub)),c.yJ&&(m=Fs(q,a))); c=n.Xa(this);d&&(c.zf=a);Ft(this,c)&&(c.yf=this,(d=this.ff.ii())&&([g,e]=Mt(this.ff)),zt(this,c),d&&Nt(this.ff,g));n.Va();r&&q.oe.Va();null!==m&&Ds(m);k&&Ds(a);--q.Ke;return e}cE(a,b,d,c,...e){let g,k;const m=0<a.length,n=this.g,q=this.me,r=n.Da(),w=1<++r.Ke;w&&r.oe.Xa();0<e.length&&It(this.ff,e);m&&(b?Cs(a):Bs(a));b=q.Xa(this);b.PM=d;b.jG=c;q.AA.push(b);Qt(n,!1);Ft(this,b)&&(b.yf=this,(d=this.ff.ii())&&([k,g]=Mt(this.ff)),zt(this,b),d&&Nt(this.ff,k));Qt(n,!0);q.Va();q.AA.pop();w&&r.oe.Va();m&&Ds(a); --r.Ke;return g||b.jG}};"use strict";const Rt=self.B,St=[];let Tt=!1;async function Ut(a){try{await a.Ta()}catch(b){console.error(`Unhandled exception running script %c${a.pd.qa()}, event ${a.Js}:`,"font-size: 1.2em; font-weight: bold;",b),self.ei&&self.ei.GV(a),Tt||(console.info("%cTip:%c run this to highlight in Construct the last script that had an error: %cgoToLastErrorScript()","font-weight: bold; text-decoration: underline","","font-weight: bold"),Tt=!0)}} Rt.eK=class extends Rt.ta{constructor(a,b,d){super();const c=a.I(),e=a.Da();this.pd=a;this.Ma=e;this.g=a.I();this.pc=b;this.Ta=Vt(c,d[1]);this.Js=d[2];this.pd.GM.set(this.Js,this);this.Cc=c.Nb?{iy:d[3][0],BP:d[3][1]}:null}static Qa(a,b,d){return Rt.A(Rt.eK,a,b,d)}cc(){const a=this.Ta,b=os(this);this.Ta=a.bind(null,this.g.Ak,b)}Ea(){return this.pc}Op(){return this.pc}oz(){return!1}Pd(){return St}de(){return this.pc?this.pc.de():St}Ba(a){a.yf=this;a=Ut(this);this.Ma.xm.push(a)}*pb(a){a.yf=this;if(ut(this)|| wt(this.g))yield this;this.Ba(a)}Tf(){return!ut(this)&&!wt(this.g)}};"use strict";const Ws=self.B;function Rs(a){switch(a.Nk){case 0:return null;case 2:return"";default:return 0}}function It(a,b){a=a.Sg;for(let d=0,c=a.length;d<c;++d)a[d].xe(b[d])}function Jt(a,b){a=a.Sg;for(let d=0,c=a.length;d<c;++d)a[d].xe(b[d].S(0))}function Mt(a){const b=a.XW++;a.Uv=b;let d;const c=new Promise(e=>d=e);a.Kv.set(b,{resolve:d,uJ:0});return[b,c]} function Nt(a,b){const d=a.Kv.get(b);0===d.uJ&&(d.resolve(),a.Kv.delete(b));a.Uv=-1}function Xs(a,b){a.kG=0;a.Aq=b[0];a.Nk=b[1];a.Sg=b[2].map(d=>Ws.zu.Qa(a.pd,a,d));a.ga=b[3];a.HG=b[4];a.Ug=b[5]}function Ys(a,b){a.kG=1;a.eo=b[1];a.J=om(a.g,b[2]);qt(a.J,a.ed.Pe);a.Aq=a.J.qa()+"."+a.eo;a.Nk=b[3];a.Sg=b[4].map(d=>Ws.zu.Qa(a.pd,a,d));a.ga=b[5];a.HG=b[6];a.Ug=b[7];a.J.uM.set(a.eo.toLowerCase(),a)}function Wt(a){return a.Sg.map(b=>b.Wa())}function Xt(a){a.Kv.get(a.Uv).uJ++;return a.Uv} function Yt(a,b){a.Uv=b;a.Kv.get(b).uJ--}function*Zt(a,b,d){var c=new Map,e=[];for(const g of a.J.W().pa()){const k=g.F();if(Ns(k,a.eo)){const m=c.get(k);Array.isArray(m)?m.push(g):c.set(k,[g])}else e.push(g)}0<e.length&&(yield*Kt(a.ed,b,d,a.Ug,{Br:a.J,ty:e}));if(0<c.size)for(const [g,k]of c)c=Ns(g,a.eo).Ge(),e=[...(new Set([...b,...c.Pd()]))],yield*Kt(c,e,d,a.Ug,{Br:g,ty:k})} Ws.Lp=class extends Ws.ta{constructor(a,b,d){super();this.pd=a;this.g=a.I();this.pc=b;this.kG=0;this.Aq="";this.Nk=0;this.Sg=[];this.ga=!0;this.eo="";this.J=null;this.sG=!1;this.AG=[];this.HG=this.Ug=!1;this.XW=0;this.Uv=-1;this.Kv=new Map;this.ed=Ws.bl.Qa(a,b,d);this.ed.ff=this}cc(){for(const a of this.Sg)a.cc();this.ed.cc(!1)}SL(){return this.Sg}Ea(){return this.pc}Op(){return this.pc}F(){return this.J}Pb(){return this.ga}Ge(){return this.ed}ii(){return this.HG}$T(a,b){var d=new Map,c=[];for(const e of this.J.W().pa()){const g= e.F();if(Ns(g,this.eo)){const k=d.get(g);Array.isArray(k)?k.push(e):d.set(g,[e])}else c.push(e)}0<c.length&&this.ed.Dz(a,b,this.Ug,{Br:this.J,ty:c});if(0<d.size)for(const [e,g]of d)d=Ns(e,this.eo).Ge(),c=[...(new Set([...a,...d.Pd()]))],d.Dz(c,b,this.Ug,{Br:e,ty:g})}};"use strict";const $t=self.B,au=[];function ps(a){return{configurable:!1,enumerable:!0,get:a.iX,set:a.kX}} $t.zu=class extends $t.ta{constructor(a,b,d){super();const c=a.Da();this.pd=a;this.Ma=c;this.g=a.I();this.pc=b;this.oe=c.oe;this.Oa=d[1];this.Aa=d[2];this.Cb=d[3];this.Fi=!!d[4];this.Eb=!!d[5];this.IW=b instanceof $t.Lp;this.bb=d[6];this.Jw=this.g.Qj(d[8]);this.kX=e=>this.xe(e);this.iX=()=>this.Wa();this.XM=!this.pc||this.Fi||this.Eb;this.vd=this.Cb;this.mH=-1;2===this.Aa&&(this.vd=this.vd?1:0);this.rf()||this.Fi||this.Eb||(this.mH=ms(c,this));ks(c,this)}static Qa(a,b,d){return $t.A($t.zu,a,b,d)}cc(){if(!(this.rf()|| this.Fi||this.Eb||this.IW)){const a=Ms(this);a&&a.AG.push(this)}}qa(){return this.Oa}Qj(){return this.Jw}Ea(){return this.pc}Op(){return this.Ea()}rf(){return!this.Ea()}Sn(){return 0===this.Aa}ki(){return 1===this.Aa}oz(){return!1}Pd(){return au}Ba(){this.rf()||this.Fi||this.Eb||this.xe(this.Cb)}Tf(){return!0}*pb(a){this.Ba(a)}xe(a){this.Sn()?"number"!==typeof a&&(a=parseFloat(a)):this.ki()?"string"!==typeof a&&(a=a.toString()):2===this.Aa&&(a=a?1:0);this.XM?this.vd=a:this.oe.Pr()[this.mH]=a}Wa(){return this.XM? this.vd:this.oe.Pr()[this.mH]}};"use strict";const bu=self.B,cu=[];function Pt(a){let b=a.Ea();for(;b;){if(b instanceof bu.bl&&b.Ck&&!b.Tu()){a.Mb=!1;return}b=b.Ea()}a.Mb=!0} bu.dK=class extends bu.ta{constructor(a,b,d){super();const c=a.Da();this.pd=a;this.Ma=c;this.g=a.I();this.pc=b;this.ww=null;this.BW=d[1];this.Mb=!0}static Qa(a,b,d){return bu.A(bu.dK,a,b,d)}cc(){this.ww=this.Ma.$B.get(this.BW.toLowerCase())||null;this.pd.qO.push(this);let a=this.Ea();for(;a;)a instanceof bu.bl&&a.Ck&&a.oA.push(this),a=a.Ea();Pt(this);this.g.Nb&&this.pd.Lk.children.push(this.ww.Lk)}Ea(){return this.pc}Pd(){return cu}Ba(){const a=!!this.Ea(),b=this.g.yd;a&&Bs(b);this.ww.Ba();a&&Ds(b)}*pb(){const a= !!this.Ea(),b=this.g.yd;a&&Bs(b);yield*this.ww.pb();a&&Ds(b)}Tf(){return!1}};"use strict";const du=self.B;du.Nr=class extends du.ta{constructor(a){super();this.xb=a;this.g=a.I()}cc(){}};class eu extends du.Nr{constructor(a,b){super(a);this.qe=this.g.Mu();this.Ta=Vt(this.g,b[1]);if(this.Ta===du.C.sb.mc.random||this.Ta===du.C.sb.mc.GX)this.xb.jf=!0}Mp(){return fu(this.qe,this.Ta,this.qe)}} class gu extends du.Nr{constructor(a,b){super(a);this.Rs=null;this.Aq=b[1];this.xb.jf=!0}cc(){const a=this.g.Da();this.Rs=a.Ss.get(this.Aq.toLowerCase())||null;this.Aq=null;const b=this.Rs.Ge();this.LF=[...(new Set([...this.xb.Ge().de(),...b.de()]))];this.LF=ls(a,this.LF)}Mp(){const a=this.Rs;if(a.Pb())return du.bl.prototype.cE.bind(a.Ge(),this.LF,a.Ug,a.Nk,Rs(a));const b=Rs(a);return()=>b}}function hu(a,b){if(a>=b)return a%b;0>a&&(a<=-b&&(a%=b),0>a&&(a+=b));return a} function iu(a,...b){const d=a.J,c=rr(d.W());var e=c.length;if(0===e)return a.tx?"":0;e=hu(a.xb.Nt,e);wr(a.me).aG=d;return a.Ta.apply(c[e].na,b)}class ju extends du.Nr{constructor(a,b){super(a);this.J=om(this.g,b[1]);this.Ta=Vt(this.g,b[2]);this.tx=!!b[3];this.me=this.g.Da().Od();ku(this.xb,this.J)}Mp(){return fu(this.J.qb(),this.Ta,this.J.Sj().na)}}function lu(a){var b=a.J,d=rr(b.W());const c=d.length;if(0===c)return a.tx?"":0;d=d[hu(a.xb.Nt,c)];b=mu(d.F(),b.Ai);return d.Af[a.SO+b]} class nu extends du.Nr{constructor(a,b){super(a);this.J=om(this.g,b[1]);this.SO=b[3];this.tx=!!b[2];ku(this.xb,this.J)}}class ou extends du.Nr{constructor(a,b){super(a);this.J=om(this.g,b[1]);this.Td=this.J.us.get(b[2].toLowerCase())||null;this.kk=Wo(this.J,b[2]);this.Ta=Vt(this.g,b[3]);this.tx=!!b[4];this.me=this.g.Da().Od();ku(this.xb,this.J)}}class pu extends du.Nr{constructor(a,b){super(a);this.fc=null;this.ZF=b[1]}cc(){this.fc=this.g.Da().dw.get(this.ZF)||null}}"use strict";const qu=self.B; function ku(a,b){a.jf||!b||b.qb().Io||(a.jf=!0)}qu.Zf=class extends qu.ta{constructor(a,b,d){super();this.xb=a;this.oa=d;this.Aa=b;this.S=null;this.Eb=this.jf=!1}static Qa(a,b,d){const c=b[0];return qu.A([ru,su,tu,uu,vu,wu,xu,ru,uu,uu,yu,zu,tu,Au,su,Bu,Cu,Du,Eu,Fu,Gu][c],a,c,d,b)}cc(){}Ja(){return this.oa}I(){return this.xb.I()}Ge(){return this.xb.Ge()}};function Zs(a){a=self.NQ[a];if(!a)throw Error("invalid expression number");return a} function Hu(a,b){if(0>b||b>=a.Et.length)throw new RangeError("invalid numbered node");return a.Et[b]}class ru extends qu.Zf{constructor(a,b,d,c){super(a,b,d);this.Nt=0;a=c[1];this.$F=a[0];this.Et=[];this.ew=null;for(let e=1,g=a.length;e<g;++e)b=this.Et,d=b.push,c=a[e],c=du.A([ou,ju,nu,pu,eu,gu][c[0]],this,c),d.call(b,c);this.Et.length?this.S=this.CR:(this.S=Zs(this.$F),this.Eb=!0)}cc(){for(var a of this.Et)a.cc();a=Zs(this.$F);this.ew=this.Et.length?a(this):a}CR(a){this.Nt=a;return this.ew()}} class su extends ru{constructor(a,b,d,c){super(a,b,d,c);this.S=this.KR;14===b&&(a=this.Ge(),a.Pe=a.g.yd,this.xb instanceof qu.Cy&&tt(this.Ge()))}KR(a){this.Nt=a;a=this.ew();return"string"===typeof a?a:""}}class wu extends ru{constructor(a,b,d,c){super(a,b,d,c);this.S=this.Z;this.Eb=!1}Z(a){this.Nt=a;a=this.ew();return rm(this.I()).Z(a)}}class uu extends qu.Zf{constructor(a,b,d,c){super(a,b,d);this.iW=c[1];this.S=this.zR;this.Eb=!0}zR(){return this.iW}} class Cu extends qu.Zf{constructor(a,b,d,c){super(a,b,d);this.UV=c[1];this.S=this.yR;this.Eb=!0}yR(){return this.UV}}class vu extends qu.Zf{constructor(a,b,d,c){super(a,b,d);this.J=om(this.I(),c[1]);this.S=this.F;a=this.Ge();qt(this.J,a.Pe);this.xb instanceof qu.Cy?tt(a):a.Ea()&&tt(a.Ea());this.Eb=!0}F(){return this.J}}class xu extends qu.Zf{constructor(a,b,d,c){super(a,b,d);this.Gi=Cn(this.I().nb,c[1]);this.S=this.Fc;this.Eb=!0}Fc(){return this.Gi}} class Bu extends qu.Zf{constructor(a,b,d,c){super(a,b,d);this.ug=this.I().Ob.lp.get(c[1].toLowerCase())||null;this.S=this.fb;this.Eb=!0}fb(){return this.ug}}class tu extends qu.Zf{constructor(a,b,d,c){super(a,b,d);this.vW=c[1];this.S=this.ER;this.Eb=!0}ER(){return this.vW}} class yu extends qu.Zf{constructor(a,b,d,c){super(a,b,d);this.fN=c[1];a=this.xb.F();this.xb instanceof qu.kD&&this.xb.Fi?(this.S=this.oK,this.Eb=!0):a&&a.Pa?(this.S=this.DR,this.jf=!0):(this.S=this.oK,this.Eb=!0)}oK(){return this.fN}DR(a){a=a||0;const b=this.xb.F();var d=b.W();const c=d.pa();if(c.length)a=c[a%c.length].F();else if(d.ub.length)d=d.ub,a=d[a%d.length].F();else if(0<b.G.length)d=b.pa(),a=d[a%d.length].F();else return 0;return this.fN+a.fw[b.Ai]}} class zu extends qu.Zf{constructor(a,b,d,c){super(a,b,d);this.ZF=c[1];this.fc=null;this.S=this.BR;this.Eb=!0}cc(){this.fc=this.I().Da().dw.get(this.ZF)||null}BR(){return this.fc}}class Du extends qu.Zf{constructor(a,b,d,c){super(a,b,d);this.NM=c[1];this.Rs=null;this.S=this.HR;this.Eb=!0}cc(){this.Rs=this.I().Da().Ss.get(this.NM.toLowerCase())||null;this.NM=null}HR(){return this.Rs}} class Au extends qu.Zf{constructor(a,b,d,c){super(a,b,d);this.fI=[];this.TO=[];this.Eb=!0;for(let e=1,g=c.length;e<g;++e)a=qu.Zf.Qa(this.xb,c[e],0),this.fI.push(a),this.TO.push(0),a.Eb||(this.Eb=!1);this.S=this.NR}cc(){for(const a of this.fI)a.cc()}NR(){const a=this.fI,b=this.TO;for(let d=0,c=a.length;d<c;++d)b[d]=a[d].S(0);return b}}class Eu extends qu.Zf{constructor(a,b,d,c){super(a,b,d);this.qW=c[1];this.S=this.Ln;this.Eb=!0}Ln(){return this.qW}} class Fu extends qu.Zf{constructor(a,b,d,c){super(a,b,d);this.$V=c[1];this.S=this.MR;this.Eb=!0}MR(){return this.$V}}class Gu extends ru{constructor(a,b,d,c){super(a,b,d,c);this.S=this.Ur;this.Eb=!1}Ur(){return this.ew()}}"use strict";const Iu=self.B;function Ju(a,b){for(let d=0,c=a.length;d<c;++d)b[d]=a[d].S(0)}const Ku=[];function Lu(){}function Mu(a){return a.Cc.iy}function Nu(a,b){const d=a.Ha;a=a.Fb;for(let c=0,e=d.length;c<e;++c){const g=d[c];g.jf&&(a[c]=g.S(b))}} Iu.kD=class extends Iu.ta{constructor(a,b,d){super();this.ed=a;this.g=a.I();this.oa=d;this.Ta=Vt(this.g,b[1]);this.VG=0<b[3];this.kN=2===b[3];this.Bw=!!b[4];this.Ek=!!b[5];this.Fi=!!b[6];this.bb=b[7];this.lN=this.ed.Me;this.Td=this.J=null;this.kk=-1;this.qe=null;this.pb=this.Ba=Lu;this.Ha=[];this.Fb=[];this.vm=!1;this.Aj=this.Zb=null;this.Cc=this.g.Nb?{iy:b[8][0],yg:b[8][1]}:null;-1===b[0]?this.qe=this.g.Mu():(this.J=om(this.g,b[0]),b[2]&&(this.Td=this.J.us.get(b[2].toLowerCase())||null,this.kk=Wo(this.J, b[2])),this.ed.Ea()&&tt(this.ed.Ea()));if(10===b.length){a=b[9];for(let c of a)this.Ha.push(Iu.Zf.Qa(this,c,this.Ha.length)),this.Fb.push(0)}0===this.Ha.length&&(this.Fb=this.Ha=Ku);this.ed.Da().KF.set(this.bb,this)}static Qa(a,b,d){return Iu.A(Iu.kD,a,b,d)}cc(){for(const a of this.Ha)a.cc(),a.jf&&(this.vm=!0);this.kN?(this.Ba=this.EV,this.pb=this.kV):this.qe?(this.Av(this.qe,this.qe,this.aF),this.pb=this.ME):this.J.qb().Io?(this.dF(),this.pb=this.LE):this.Fi?(this.Ba=this.FV,this.pb=this.rV):(this.Ba= this.VL,this.pb=this.lV)}dF(){const a=this.J.qb(),b=this.J.Sj().na;this.Av(a,b,this.$E)}Av(a,b,d){const c=this.Ta,e=this.Ek,g=this.Ha;if(0===g.length){const k=fu(a,c,b);this.Ba=e?function(){return Iu.xor(k(),e)}:k}else if(1===g.length){const k=g[0];if(!e&&k.Eb)this.Ba=Ou(a,c,b,k.S(0));else{const m=fu(a,c,b);this.Ba=function(){return Iu.xor(m(k.S(0)),e)}}}else if(2===g.length){const k=g[0],m=g[1];if(!e&&k.Eb&&m.Eb)this.Ba=Pu(a,c,b,k.S(0),m.S(0));else{const n=fu(a,c,b);this.Ba=function(){return Iu.xor(n(k.S(0), m.S(0)),e)}}}else if(3===g.length){const k=g[0],m=g[1],n=g[2];if(!e&&k.Eb&&m.Eb&&n.Eb)this.Ba=Qu(a,c,b,k.S(0),m.S(0),n.S(0));else{const q=fu(a,c,b);this.Ba=function(){return Iu.xor(q(k.S(0),m.S(0),n.S(0)),e)}}}else this.Ba=d}F(){return this.J}oh(){return this.Td}Ge(){return this.ed}I(){return this.g}Ja(){return this.oa}lK(){return this.Ja()}Vp(){return this.VG}Tf(){return!Mu(this)&&!wt(this.g)&&!this.Cc.yg}hi(){this.Zb||(this.Zb=new Map);return this.Zb}Ou(){this.Aj||(this.Aj=new Map);return this.Aj}aF(){const a= this.Fb;Ju(this.Ha,a);return Iu.xor(this.Ta.apply(this.qe,a),this.Ek)}*ME(){if(Mu(this)||wt(this.g))yield this;if(this.Cc.yg){var a=this.Fb;Ju(this.Ha,a);a=this.Ta.apply(this.qe,a);Iu.Rn(a)&&(a=yield*a);return Iu.xor(a,this.Ek)}return this.Ba()}$E(){const a=this.Fb;Ju(this.Ha,a);const b=this.J.Sj().na;return Iu.xor(this.Ta.apply(b,a),this.Ek)}*LE(){if(Mu(this)||wt(this.g))yield this;if(this.Cc.yg){var a=this.Fb;Ju(this.Ha,a);const b=this.J.Sj().na;a=this.Ta.apply(b,a);Iu.Rn(a)&&(a=yield*a);return Iu.xor(a, this.Ek)}return this.Ba()}EV(){return!0}*kV(){if(Mu(this)||wt(this.g))yield this;return!0}FV(){var a=this.Fb;Ju(this.Ha,a);a=this.Ta.apply(this.Td||this.J,a);Lt(this.J);return a}*rV(){if(Mu(this)||wt(this.g))yield this;if(this.Cc.yg){var a=this.Fb;Ju(this.Ha,a);a=this.Ta.apply(this.Td||this.J,a);Iu.Rn(a)&&(a=yield*a);Lt(this.J);return a}return this.Ba()}VL(){var a=this.Ha,b=this.Fb,d=this.J.W();for(let Y=0,na=a.length;Y<na;++Y){var c=a[Y];c.jf||(b[Y]=c.S(0))}if(d.jb){a=this.J;b=a.Pa;var e=a.Ai;c= this.kk;var g=0<=c,k=a.pa(),m=this.vm,n=this.Fb,q=this.Ta,r=this.Ek,w=this.lN&&!this.VG;pr(d);for(let Y=0,na=k.length;Y<na;++Y){var x=k[Y];m&&Nu(this,Y);var z=void 0;g?(z=b?Ru(x.F(),e):0,z=q.apply(x.Ad[c+z].na,n)):z=q.apply(x.na,n);Iu.xor(z,r)?d.G.push(x):w&&d.ub.push(x)}a.Cu(!0);d.jb=!1;Lt(a);d=qr(d)}else{a=this.J;q=a.Pa;r=a.Ai;w=a.wc();x=this.kk;z=0<=x;var E=this.vm;const Y=this.Fb,na=this.Ta,kb=this.Ek;b=this.lN&&!this.VG;c=d.G;const jc=d.ub;var C;if(C=b){a:{C=this.ed;var G=this.Ja();if(0!==G){--G; for(var I=this.F();0<=G;--G){var J=C.zc[G],L;if(!(L=J.F()===I)&&(L=J.qe)){b:{for(ea of J.Ha)if(4===ea.Aa){J=ea.F();break b}J=null}L=J===I}if(L){var ea=!1;break a}}}ea=!0}C=!ea}G=(ea=C)?jc:c;I=0;C=!1;for(let lb=0,kc=G.length;lb<kc;++lb)if(J=G[lb],E&&Nu(this,lb),z?(L=q?Ru(J.F(),r):0,L=na.apply(J.Ad[x+L].na,Y)):L=na.apply(J.na,Y),Iu.xor(L,kb))if(C=!0,ea){if(c.push(J),w)for(g of J.ud)g.F().W().G.push(g)}else{G[I]=J;if(w){L=I;for(k of J.ud)k.F().W().G[L]=k}++I}else if(ea){G[I]=J;if(w){L=I;for(m of J.ud)m.F().W().ub[L]= m}++I}else if(b&&(jc.push(J),w))for(n of J.ud)n.F().W().ub.push(n);Iu.Ue(G,I);if(w){k=a;g=ea;m=I;for(e of k.Kh.Fl)k=e.W(),g?Su.Ue(k.ub,m):Su.Ue(k.G,m)}e=C;if(ea&&!C)a:{k=this.J;g=k.Pa;k=k.Ai;m=this.vm;n=this.kk;q=0<=n;r=this.Fb;w=this.Ta;x=this.Ek;for(let lb=0,kc=c.length;lb<kc;++lb)if(z=c[lb],m&&Nu(this,lb),q?(E=g?Ru(z.F(),k):0,z=w.apply(z.Ad[n+E].na,r)):z=w.apply(z.na,r),Iu.xor(z,x)){C=!0;break a}C=!1}a.Cu(e||b);d=b?C:qr(d)}return d}*lV(){if(Mu(this)||wt(this.g))yield this;return this.VL()}ra(){if(!this.Zb|| !this.Zb.size)return null;const a={};for(const [b,d]of this.Zb.entries()){let c=d;"collmemory"===b&&(c=[...d.entries()].map(e=>[e[0].Ab,e[1].Ab,e[2]]));a[b]=c}return{ex:a}}ya(a){this.Zb&&(this.Zb.clear(),this.Zb=null);if(a){var b=this.g,d=a.ex;if(d){a=this.hi();a.clear();for(const [c,e]of Object.entries(d))d=e,"collmemory"===c&&(d=Iu.A(Iu.Zu,e.map(g=>[Fo(b,g[0]),Fo(b,g[1]),g[2]]).filter(g=>g[0]&&g[1]))),a.set(c,d)}}}};"use strict";const Tu=self.B; function Uu(a,b){for(let d=0,c=a.length;d<c;++d)b[d]=a[d].S(0)}const Vu=[];function Wu(){}function*Xu(){} function Yu(a){var b=a.ed.Da();const d=qs(b,a.GF,a.zs);if(d.Pb()){const c=0!==(a.ea&2);a.no=d.Ge();let e=[...(new Set([...a.ed.de(),...a.no.de(),a.J,d.F()]))];e=ls(b,e);b=!a.J.Pa&&!d.F().Pa;const g=!a.J.Pa&&d.F().Pa,k=a.J.Pa;let m=null;!d.Ug&&Zu(a)&&(m=m||{},m.yJ=!0);if(g||!c)m=m||{},m.iu=a.J,m.DC=d.F();b||g||k&&!d.sG?a.Ba=Tu.bl.prototype.Dz.bind(a.no,e,a.Ha,c,m):k&&(a.Ba=Tu.Lp.prototype.$T.bind(d,e,a.Ha));a.g.Nb?b||g||k&&!d.sG?a.pb=function*(){if(Mu(a)||wt(a.g))yield a;return yield*Kt(a.no,e,a.Ha, c,m)}:k&&(a.pb=function*(){if(Mu(a)||wt(a.g))yield a;return yield*Zt(d,e,a.Ha)}):a.pb=Xu}else a.Ba=Wu,a.pb=Xu}function $u(a){const b=a.ed.Da(),d=b.Ss.get(a.zs.toLowerCase())||null;if(d.Pb()){const c=0!==(a.ea&2);a.no=d.Ge();let e=[...(new Set([...a.ed.de(),...a.no.de()]))];e=ls(b,e);const g=!d.Ug&&Zu(a)?{yJ:!0}:null;a.Ba=Tu.bl.prototype.Dz.bind(a.no,e,a.Ha,c,g);a.pb=a.g.Nb?function*(){if(Mu(a)||wt(a.g))yield a;return yield*Kt(a.no,e,a.Ha,c,g)}:Xu}else a.Ba=Wu,a.pb=Xu} function Zu(a){a=a.ed;do{if(a instanceof Tu.Lp&&a.Ug)return!0;a=a.Op()}while(a);return!1} Tu.Cy=class extends Tu.ta{constructor(a,b,d){super();this.ed=a;this.g=a=a.I();this.oa=d;this.bb=4<=b.length?b[3]:-1;this.os=5<=b.length?b[4]&255:0;this.ea=5<=b.length?b[4]>>8:0;this.Td=this.J=this.Ta=null;this.kk=-1;this.qe=null;this.zs="";this.no=this.GF=null;this.pb=this.Ba=Wu;this.Ha=[];this.Fb=[];this.vm=!1;this.Aj=this.Zb=null;const c=(d=-3===b[0])?b[2]:b[5];this.Cc=a.Nb||d?{iy:c[0],yg:c[1],index:c[2]}:null;-1===b[0]?(this.qe=a.Mu(),this.Ta=Vt(a,b[1])):-2===b[0]?this.zs=b[1]:d?(this.Ta=Vt(a, b[1]),this.Ba=this.dE,this.pb=this.hR,this.os=1):(this.J=om(a,b[0]),this.ea&4?(this.zs=b[1],this.GF=om(a,b[2])):(b[2]&&(this.Td=this.J.us.get(b[2].toLowerCase())||null,this.kk=Wo(this.J,b[2])),this.Ta=Vt(a,b[1])));if(7===b.length){b=b[6];for(var e of b)this.Ha.push(Tu.Zf.Qa(this,e,this.Ha.length)),this.Fb.push(0)}0===this.Ha.length&&(this.Fb=this.Ha=Vu);0!==(this.ea&1)&&(e=this.ed,e.Pe=e.g.yd,tt(this.ed));this.ed.Da().Vz.set(this.bb,this)}static Qa(a,b,d){return Tu.A(Tu.Cy,a,b,d)}cc(){for(var a of this.Ha)a.cc(), a.jf&&(this.vm=!0);if(this.qe)this.Av(this.qe,this.qe,this.aF),this.pb=this.ME;else if(this.zs)this.ea&4?Yu(this):$u(this),this.zs="",this.GF=null;else if(this.Ba===this.dE){a=this.Ta;const b=os(this.ed);this.Ta=a.bind(null,this.g.Ak,b)}else this.Td?this.ii()?(this.Ba=this.UL,this.pb=this.jV):(this.Ba=this.TL,this.pb=this.iV):this.J.qb().Io?(this.dF(),this.pb=this.LE):this.ii()?(this.Ba=this.XL,this.pb=this.nV):3===this.os?(this.Ba=this.YL,this.pb=this.oV):this.Ha.length?this.Ha.every(b=>b.jf)?(this.Ba= this.WL,this.pb=this.mV):this.vm?(this.Ba=this.$L,this.pb=this.qV):this.Ha.every(b=>b.Eb)?(Uu(this.Ha,this.Fb),this.Ba=this.ZE,this.pb=this.QL):(this.Ba=this.ZL,this.pb=this.pV):(this.Ba=this.ZE,this.pb=this.QL)}dF(){const a=this.J.qb(),b=this.J.Sj().na;this.Av(a,b,this.$E)}Av(a,b,d){const c=this.Ta,e=this.Ha;if(0===e.length)this.Ba=fu(a,c,b);else if(1===e.length){const g=e[0];if(g.Eb)this.Ba=Ou(a,c,b,g.S(0));else{const k=fu(a,c,b);this.Ba=function(){return k(g.S(0))}}}else if(2===e.length){const g= e[0],k=e[1];if(g.Eb&&k.Eb)this.Ba=Pu(a,c,b,g.S(0),k.S(0));else{const m=fu(a,c,b);this.Ba=function(){return m(g.S(0),k.S(0))}}}else if(3===e.length){const g=e[0],k=e[1],m=e[2];if(g.Eb&&k.Eb&&m.Eb)this.Ba=Qu(a,c,b,g.S(0),k.S(0),m.S(0));else{const n=fu(a,c,b);this.Ba=function(){return n(g.S(0),k.S(0),m.S(0))}}}else this.Ba=d}ii(){return 1===this.os}F(){return this.J}Ge(){return this.ed}I(){return this.g}Ja(){return this.oa}lK(){return this.Cc.index}Tf(){return!Mu(this)&&!wt(this.g)&&!this.Cc.yg}hi(){this.Zb|| (this.Zb=new Map);return this.Zb}Ou(){this.Aj||(this.Aj=new Map);return this.Aj}aF(){const a=this.Fb;Uu(this.Ha,a);return this.Ta.apply(this.qe,a)}*ME(){if(Mu(this)||wt(this.g))yield this;if(this.Cc.yg){const a=this.Fb;Uu(this.Ha,a);return yield*this.Ta.apply(this.qe,a)}return this.Ba()}$E(){const a=this.Fb;Uu(this.Ha,a);return this.Ta.apply(this.J.Sj().na,a)}*LE(){if(Mu(this)||wt(this.g))yield this;if(this.Cc.yg){const a=this.Fb;Uu(this.Ha,a);return yield*this.Ta.apply(this.J.Sj().na,a)}return this.Ba()}ZE(){const a= this.Fb,b=this.J.W().pa();for(let d=0,c=b.length;d<c;++d)this.Ta.apply(b[d].na,a)}*QL(){if(Mu(this)||wt(this.g))yield this;if(this.Cc.yg){const a=this.Fb,b=this.J.W().pa();for(let d=0,c=b.length;d<c;++d)yield*this.Ta.apply(b[d].na,a)}else this.ZE()}ZL(){const a=this.Fb;Uu(this.Ha,a);const b=this.J.W().pa();for(let d=0,c=b.length;d<c;++d)this.Ta.apply(b[d].na,a)}*pV(){if(Mu(this)||wt(this.g))yield this;if(this.Cc.yg){const a=this.Fb;Uu(this.Ha,a);const b=this.J.W().pa();for(let d=0,c=b.length;d<c;++d)yield*this.Ta.apply(b[d].na, a)}else this.ZL()}WL(){const a=this.Ha,b=this.Fb,d=this.Ta,c=this.J.W().pa();for(let e=0,g=c.length;e<g;++e){const k=c[e];for(let m=0,n=a.length;m<n;++m)b[m]=a[m].S(e);d.apply(k.na,b)}}*mV(){if(Mu(this)||wt(this.g))yield this;if(this.Cc.yg){const a=this.Ha,b=this.Fb,d=this.Ta,c=this.J.W().pa();for(let e=0,g=c.length;e<g;++e){const k=c[e];for(let m=0,n=a.length;m<n;++m)b[m]=a[m].S(e);yield*d.apply(k.na,b)}}else this.WL()}$L(){const a=this.Ha,b=this.Fb,d=this.Ta,c=this.J.W().pa();for(let g=0,k=a.length;g< k;++g){var e=a[g];e.jf||(b[g]=e.S(0))}for(let g=0,k=c.length;g<k;++g){e=c[g];for(let m=0,n=a.length;m<n;++m){const q=a[m];q.jf&&(b[m]=q.S(g))}d.apply(e.na,b)}}*qV(){if(Mu(this)||wt(this.g))yield this;if(this.Cc.yg){const b=this.Ha,d=this.Fb,c=this.Ta,e=this.J.W().pa();for(let g=0,k=b.length;g<k;++g){var a=b[g];a.jf||(d[g]=a.S(0))}for(let g=0,k=e.length;g<k;++g){a=e[g];for(let m=0,n=b.length;m<n;++m){const q=b[m];q.jf&&(d[m]=q.S(g))}yield*c.apply(a.na,d)}}else this.$L()}YL(){const a=this.Ha,b=this.Fb, d=this.Ta;var c=this.J;const e=c.ib;c=c.W().pa();e.eD();for(let g=0,k=c.length;g<k;++g){const m=c[g];for(let n=0,q=a.length;n<q;++n)b[n]=a[n].S(g);d.apply(m.na,b)}e.bD()}*oV(){if(Mu(this)||wt(this.g))yield this;if(this.Cc.yg){const b=this.Ha,d=this.Fb,c=this.Ta;var a=this.J;const e=a.ib;a=a.W().pa();e.eD();for(let g=0,k=a.length;g<k;++g){const m=a[g];for(let n=0,q=b.length;n<q;++n)d[n]=b[n].S(g);yield*c.apply(m.na,d)}e.bD()}else this.YL()}TL(){var a=this.J;const b=a.Pa,d=a.Ai,c=this.Ha,e=this.vm, g=this.Fb,k=this.Ta,m=this.kk;a=a.W().pa();for(let r=0,w=c.length;r<w;++r){var n=c[r];n.jf||(g[r]=n.S(0))}for(let r=0,w=a.length;r<w;++r){n=a[r];if(e)for(let x=0,z=c.length;x<z;++x){var q=c[x];q.jf&&(g[x]=q.S(r))}q=b?Ru(n.F(),d):0;k.apply(n.Ad[m+q].na,g)}}*iV(){if(Mu(this)||wt(this.g))yield this;if(this.Cc.yg){var a=this.J;const c=a.Pa,e=a.Ai,g=this.Ha,k=this.vm,m=this.Fb,n=this.Ta,q=this.kk;a=a.W().pa();for(let r=0,w=g.length;r<w;++r){var b=g[r];b.jf||(m[r]=b.S(0))}for(let r=0,w=a.length;r<w;++r){b= a[r];if(k)for(let x=0,z=g.length;x<z;++x){var d=g[x];d.jf&&(m[x]=d.S(r))}d=c?Ru(b.F(),e):0;yield*n.apply(b.Ad[q+d].na,m)}}else this.TL()}XL(){const a=this.Ha,b=this.Fb,d=this.Ta,c=this.J.W().pa(),e=[];for(let g=0,k=c.length;g<k;++g){const m=c[g];for(let n=0,q=a.length;n<q;++n)b[n]=a[n].S(g);e.push(d.apply(m.na,b))}return Promise.all(e)}*nV(){if(Mu(this)||wt(this.g))yield this;if(this.Cc.yg){const a=this.Ha,b=this.Fb,d=this.Ta,c=this.J.W().pa(),e=[];for(let g=0,k=c.length;g<k;++g){const m=c[g];for(let n= 0,q=a.length;n<q;++n)b[n]=a[n].S(g);e.push(yield*d.apply(m.na,b))}return Promise.all(e)}return this.XL()}UL(){var a=this.J;const b=a.Pa,d=a.Ai,c=this.Ha,e=this.Fb,g=this.Ta,k=this.kk;a=a.W().pa();const m=[];for(let n=0,q=a.length;n<q;++n){const r=a[n];for(let x=0,z=c.length;x<z;++x)e[x]=c[x].S(n);const w=b?Ru(r.F(),d):0;m.push(g.apply(r.Ad[k+w].na,e))}return Promise.all(m)}*jV(){if(Mu(this)||wt(this.g))yield this;if(this.Cc.yg){var a=this.J;const b=a.Pa,d=a.Ai,c=this.Ha,e=this.Fb,g=this.Ta,k=this.kk; a=a.W().pa();const m=[];for(let n=0,q=a.length;n<q;++n){const r=a[n];for(let x=0,z=c.length;x<z;++x)e[x]=c[x].S(n);const w=b?Ru(r.F(),d):0;m.push(yield*g.apply(r.Ad[k+w].na,e))}return Promise.all(m)}return this.UL()}async dE(){try{await this.Ta()}catch(a){console.error(`Unhandled exception running script %c${this.ed.pd.qa()}, event ${this.ed.Js}, action ${this.lK()+1}:`,"font-size: 1.2em; font-weight: bold;",a),self.ei&&self.ei.GV(this),Tt||(console.info("%cTip:%c run this to highlight in Construct the last script that had an error: %cgoToLastErrorScript()", "font-weight: bold; text-decoration: underline","","font-weight: bold"),Tt=!0)}}*hR(){if(Mu(this)||wt(this.g))yield this;return this.dE()}ra(){return this.Zb&&this.Zb.size?{ex:Tu.CE(this.Zb)}:null}ya(a){this.Zb&&(this.Zb.clear(),this.Zb=null);a&&(a=a.ex)&&(this.Zb=Tu.qD(a))}};"use strict";const U=self.B,av=new U.kb;function bv(a,b){return U.compare(this.m().T(),a,b)}function cv(a,b){return U.compare(this.m().U(),a,b)}function dv(){return ev(this.m())} function fv(){var a=this.m();const b=a.Fc();a=Qj(a);return 0>a.ma||0>a.ka||a.Y>b.N()||a.V>b.M()}function gv(a,b,d){const c=this.W(),e=c.pa();if(!e.length)return!1;let g=e[0];var k=g.m();let m=g,n=U.pP(k.T(),k.U(),b,d);for(let q=1,r=e.length;q<r;++q)if(g=e[q],k=g.m(),k=U.pP(k.T(),k.U(),b,d),0===a&&k<n||1===a&&k>n)n=k,m=g;vr(c,m);return!0}function hv(a){const b=this.m();b.T()!==a&&(b.hg(a),Pj(b))}function iv(a){const b=this.m();b.U()!==a&&(b.Lg(a),Pj(b))} function jv(a,b){const d=this.m();if(d.T()!==a||d.U()!==b)d.Zj(a,b),Pj(d)}function kv(a,b){if(a){var d=this.H;a=a.W().pa();if(d=0<a.length?a[jn(d)%a.length]:null){var [c,e]=d.gl(b);b=this.m();if(b.T()!==c||b.U()!==e)b.Zj(c,e),Pj(b)}}}function lv(a){if(0!==a){var b=this.m();um(b,mv(b)*a,nv(b)*a);Pj(b)}}function ov(a,b){if(0!==b){var d=this.m();a=U.Ca(a);um(d,Math.cos(a)*b,Math.sin(a)*b);Pj(d)}}function pv(){return this.m().T()}function qv(){return this.m().U()} function rv(){return aj(this.g,this.H)}function sv(a,b){return U.compare(this.m().N(),a,b)}function tv(a,b){return U.compare(this.m().M(),a,b)}function uv(a){const b=this.m();b.N()!==a&&(b.gg(a),Pj(b))}function vv(a){const b=this.m();b.M()!==a&&(b.Kg(a),Pj(b))}function wv(a,b){const d=this.m();if(d.N()!==a||d.M()!==b)d.ac(a,b),Pj(d)}function xv(){return this.m().N()}function yv(){return this.m().M()}function zv(){return Qj(this.m()).Y}function Av(){return Qj(this.m()).V} function Bv(){return Qj(this.m()).ma}function Cv(){return Qj(this.m()).ka}function Dv(){const a=Qj(this.m());return(a.Y+a.ma)/2}function Ev(){const a=Qj(this.m());return(a.V+a.ka)/2}function Fv(a,b){return U.xr(this.m().ua(),U.Ca(b))<=U.Ca(a)}function Gv(a){return U.kf(this.m().ua(),U.Ca(a))}function Hv(a,b){a=U.Ca(a);b=U.Ca(b);const d=this.m().ua();return U.kf(b,a)?U.kf(d,a)&&!U.kf(d,b):!(!U.kf(d,a)&&U.kf(d,b))} function Iv(a){const b=this.m();a=U.Yd(U.Ca(a));isNaN(a)||b.ua()===a||(b.fe(a),Pj(b))}function Jv(a){if(!isNaN(a)&&0!==a){var b=this.m();b.fe(b.ua()+U.Ca(a));Pj(b)}}function Kv(a){if(!isNaN(a)&&0!==a){var b=this.m();b.fe(b.ua()-U.Ca(a));Pj(b)}}function Lv(a,b){const d=this.m(),c=d.ua();a=U.II(c,U.Ca(b),U.Ca(a));isNaN(a)||c===a||(d.fe(a),Pj(d))}function Mv(a,b,d){const c=this.m(),e=c.ua();b-=c.T();d-=c.U();a=U.II(e,Math.atan2(d,b),U.Ca(a));isNaN(a)||e===a||(c.fe(a),Pj(c))} function Nv(a,b){const d=this.m(),c=d.ua();a-=d.T();b-=d.U();b=Math.atan2(b,a);isNaN(b)||c===b||(d.fe(b),Pj(d))}function Ov(){return U.Zd(this.m().ua())}function Pv(a,b){return U.compare(U.VP(100*this.m().Gc()),a,b)}function Qv(){return this.m().Rd()}function Rv(a){const b=this.m();a=2===a?!b.Rd():0!==a;b.Rd()!==a&&(b.fg(a),this.g.P())}function Sv(a){a=U.$(a/100,0,1);const b=this.m();if(kq(b)){if(b.Na.Hl===a)return}else if(b.Gc()===a)return;b.bg(a);this.g.P()} function Tv(a){fc(av,a);a=this.m();cc(a.Za,av)||(Tp(a,av),this.g.P())}function Uv(){const a=this.m().Za;return U.yz(a.hb,a.lb,a.gb,a.Ya)}function Vv(){return U.VP(100*this.m().Gc())}function Wv(a){return a?this.m().Z()===a:!1}function Xv(a){const b=this.W(),d=b.pa();if(!d.length)return!1;let c=d[0];for(let e=1,g=d.length;e<g;++e){const k=d[e],m=k.m(),n=c.m(),q=m.Z().Ja(),r=n.Z().Ja();if(0===a){if(q>r||q===r&&Rj(m)>Rj(n))c=k}else if(q<r||q===r&&Rj(m)<Rj(n))c=k}vr(b,c);return!0} function Yv(a,b,d){const c=this.m();a=0===a?c.eb():hm(c);return U.compare(a,b,d)}function Zv(){var a=this.m();const b=a.H,d=a.Hk,c=d.G;c.length&&c.ie(-1)===b||(d.iq(b,!1),d.ri(b,!1),a.g.P())}function $v(){var a=this.m();const b=a.H,d=a.Hk;var c=d.G;if(!c.length||c[0]!==b){d.iq(b,!1);c=b.m();if(c.Z()!==d)throw Error("instance added to wrong layer");d.G.unshift(b);0!==c.eb()&&(d.um=!0);zl(d);a.g.P()}} function aw(a){if(a){var b=this.m();const d=b.H,c=b.Hk;if(c.Fc()!==a.Fc())throw Error("layer from different layout");a!==c&&(c.iq(d,!0),bn(b,a),a.ri(d,!0),b.g.P())}} function bw(a,b){var d=0===a;if(b){var c=cw(b,this.ba());if(c){b=this.m();var e=b.H;a=!1;var g=b.Hk;if(c.Ab!==e.Ab){var k=c.m();if(!k)throw Error("expected world instance");k=k.Z();g.Ja()!==k.Ja()&&(g.iq(e,!0),bn(b,k),k.ri(e,!0),a=!0);d=!!d;g=e.m();c=c.m();if(g.Z()!==k||c.Z()!==k)throw Error("can't arrange Z order unless both objects on this layer");g=Rj(g);c=Rj(c);g===c+(d?1:-1)?k=!1:(al.DX(k.G,g),g<c&&c--,d&&c++,c===k.G.length?k.G.push(e):k.G.splice(c,0,e),zl(k),k=!0);(a||k)&&b.g.P()}}}} function dw(a){const b=this.m();b.eb()!==a&&(b.ig(a),this.g.P())}function ew(){return this.m().Z().Ja()}function fw(){return this.m().Z().qa()}function gw(){return Rj(this.m())}function hw(){return this.m().eb()}function iw(){return hm(this.m())}function jw(a){if(a=Lo(this.F().Sa,a))return a=a.Ja(),this.m().Bf.Xr(a)}function kw(a,b){if(b=Lo(this.F().Sa,b)){b=b.Ja();a=1===a;var d=this.m().Bf;d.Xr(b)!==a&&(d.wL(b,a),d.pi(),this.g.P())}} function lw(a,b,d){if(a=Lo(this.F().Sa,a)){b=Math.floor(b);var c=qg(a.wh(),b);c&&("color"===c?(fc(av,d),d=av):"percent"===c&&(d/=100),a=a.Ja(),c=this.m().Bf,c.cv(a,b,d)&&c.Xr(a)&&this.g.P())}}const mw=U.A(U.Rect),ow=[],pw=[];let qw=!1,rw=null,sw=!1;const tw=new Set;function uw(a,b,d,c){b.Ab<d.Ab?a.Set(b,d,c):a.Set(d,b,c)}function vw(a,b,d){b.Ab<d.Ab?a.Jn(b,d):a.Jn(d,b)}function ww(a,b,d){return b.Ab<d.Ab?a.S(b,d):a.S(d,b)} function xw(a,b,d,c){if(!b)return!1;a=a.ba();const e=0!==d||0!==c,g=a.m(),k=a.I();var m=k.ph();const n=m.Ge().Me;var q=m.F();m=m.Ek;const r=b.W();q=q!==b;rw=b;qw=q&&!m;sw=!1;let w=0,x=0,z=!1;r.jb?(mw.xa(Qj(g)),mw.offset(d,c),yw(g.Z(),b,mw,pw),b=pw):n?0===k.Vf().Ze&&!r.ub.length&&r.G.length?b=r.G:(b=r.ub,sw=!0):b=r.G;e&&(w=g.T(),x=g.U(),um(g,d,c),Pj(g));for(const E of b)if(zw(a,E)){z=!0;if(m)break;q&&tw.add(E)}e&&(g.Zj(w,x),Pj(g));U.D(pw);return z} function Aw(a,b){if(qw){if(b){const g=a.I().Vb().Me;a=rw.W();b=a.G;const k=a.ub;if(a.jb){if(ur(a,tw),g){U.D(k);var d=a,c=rw.pa();for(var e of c)tw.has(e)||d.ub.push(e)}}else if(g)if(sw){e=a;for(c of tw)e.G.push(c);or.ai(e.ub,tw)}else{e=a;c=b;for(d of c)tw.has(d)||e.ub.push(d);ur(a,tw)}else ur(a,tw);Lt(rw)}tw.clear();rw=null;qw=!1}} function Bw(a){if(this.g.Ef)return Cw.call(this,a);if(!a)return!1;var b=this.g;const d=b.pk;var c=b.Da();const e=c.Od();var g=c.ph();c=g.F();var k=g.hi(),m=g.Ou();g=wr(e);const n=b.Ri,q=n-1,r=g.Vb(),w=e.Xa(r);let x=k.get("collmemory");x||(x=U.A(U.Zu),k.set("collmemory",x));m.get("collisionCreatedDestroyCallback")||(m.set("collisionCreatedDestroyCallback",!0),b.tb().addEventListener("instancedestroy",G=>{Nc(x,G.instance)}));b=a.W();k=c.W().pa();m=null;for(let G=0;G<k.length;++G){const I=k[G];b.jb? (yw(I.m().Z(),a,Qj(I.m()),ow),m=ow,Dw(d,I,a,m)):m=b.pa();for(let J=0;J<m.length;++J){const L=m[J];if(zw(I,L)||Ew(d,I,L)){var z=ww(x,I,L),E=!1,C=-2;"number"===typeof z&&(E=!0,C=z);z=!E||C<q;uw(x,I,L,n);z&&(z=r.Pd(),Cs(z),C=c.W(),E=a.W(),C.jb=!1,E.jb=!1,c===a?(E=C.G,U.D(E),E.push(I),E.push(L),Lt(c)):(C=C.G,E=E.G,U.D(C),U.D(E),C.push(I),E.push(L),Lt(c),Lt(a)),Dt(r,g,w),Ds(z))}else vw(x,I,L)}U.D(ow)}e.Va();return!1} function*Cw(a){if(!a)return!1;var b=this.g;const d=b.pk;var c=b.Da();const e=c.Od();var g=c.ph();c=g.F();var k=g.hi(),m=g.Ou();g=wr(e);const n=b.Ri,q=n-1,r=g.Vb(),w=e.Xa(r);let x=k.get("collmemory");x||(x=U.A(U.Zu),k.set("collmemory",x));m.get("collisionCreatedDestroyCallback")||(m.set("collisionCreatedDestroyCallback",!0),b.tb().addEventListener("instancedestroy",G=>{Nc(x,G.instance)}));b=a.W();k=c.W().pa();m=null;for(let G=0;G<k.length;++G){const I=k[G];b.jb?(yw(I.m().Z(),a,Qj(I.m()),ow),m=ow,Dw(d, I,a,m)):m=b.pa();for(let J=0;J<m.length;++J){const L=m[J];if(zw(I,L)||Ew(d,I,L)){var z=ww(x,I,L),E=!1,C=-2;"number"===typeof z&&(E=!0,C=z);z=!E||C<q;uw(x,I,L,n);z&&(z=r.Pd(),Cs(z),C=c.W(),E=a.W(),C.jb=!1,E.jb=!1,c===a?(E=C.G,U.D(E),E.push(I),E.push(L),Lt(c)):(C=C.G,E=E.G,U.D(C),U.D(E),C.push(I),E.push(L),Lt(c),Lt(a)),yield*Et(r,g,w),Ds(z))}else vw(x,I,L)}U.D(ow)}e.Va();return!1}function Fw(a){return xw(this,a,0,0)}function Gw(a,b,d){return xw(this,a,b,d)}function Hw(){return this.m().Yf()} function Iw(){return this.m().Xe()}function Jw(a,b){const d=this.W().pa();if(0===d.length)return!1;const c=a.W();var e=c.pa();if(c.jb){var g=[...Kw(this.g,a)];0<g.length&&(e=e.concat(g))}if(0===e.length)return!1;e=new Set(e);g=new Set;for(let m=0,n=d.length;m<n;++m){var k=d[m];if(1===b)for(const q of k.ry())Lw(q,a)&&e.has(q)&&g.add(q);else{if(0===b){if(k=k.Ea(),null===k)continue}else k=k.Nn();Lw(k,a)&&e.has(k)&&g.add(k)}}if(0===g.size)return!1;ur(c,g);Lt(a);return!0} function Mw(a,b){const d=this.W().pa();if(0===d.length)return!1;const c=a.W();var e=c.pa();if(c.jb){var g=[...Kw(this.g,a)];0<g.length&&(e=e.concat(g))}if(0===e.length)return!1;e=new Set(e);g=new Set;for(let k=0,m=d.length;k<m;++k){const n=d[k];2===b&&!n.Xe()&&Lw(n,a)&&e.has(n)&&g.add(n);for(const q of 0===b?n.children():n.Cj())2===b&&q.Xe()||Lw(q,a)&&e.has(q)&&g.add(q)}if(0===g.size)return!1;ur(c,g);Lt(a);return!0} function Nw(a,b){const d=this.W().pa();if(0===d.length)return!1;const c=a.W();var e=c.pa();if(c.jb){var g=[...Kw(this.g,a)];0<g.length&&(e=e.concat(g))}if(0===e.length)return!1;e=new Set(e);g=[];for(let k=0,m=d.length;k<m;++k){const n=d[k].Ty(b);null!==n&&Lw(n,a)&&e.has(n)&&g.push(n)}if(0===g.length)return!1;tr(c,g);Lt(a);return!0}function Ow(a,b,d){switch(a){default:return U.compare(this.H.Uy(),b,d);case 1:return U.compare(this.H.Qy(),b,d)}} function Pw(a,b,d,c,e,g,k,m,n,q){const r=this.H,w=this.g.Vy().F();for(const x of Qw(a,r,w)){if(!x.qb().FO)break;r.Ij(x,{Hr:b,Ir:d,Ep:c,Dp:e,Er:g,Fr:k,Jr:m,Gr:n,ju:q})}}function Rw(a){const b=this.H,d=this.g.Vy().F();for(const c of Qw(a,b,d))b.kl(c)}function Sw(){this.H.Yf()&&this.H.Ea().kl(this.H)}function Tw(){return this.H.Uy()}function Uw(){return this.H.Qy()}function Vw(a,b){a=Math.floor(a);b=Math.floor(b);const d=this.m();2>a||2>b||!isFinite(a)||!isFinite(b)?(Ww(d),Pj(d)):Xw(d,a,b)} function Yw(a,b,d,c,e,g,k,m){const n=this.m();n.zL(a,b,{mode:0===d?"absolute":"relative",x:c,y:e,By:g,gQ:k,iQ:m})&&Pj(n)}function Zw(){const a=this.m();return $w(a)?ax(a).yl:0}function bx(){const a=this.m();return $w(a)?ax(a).Ql:0}function cx(a){const b=this.m();a=2===a?!b.Rd():0!==a;b.Rd()!==a&&b.fg(a)}function dx(a,b){ex(this,"set-css-style",{prop:fx.PQ(a),val:b})}function gx(a,b){ex(this,"set-attribute",{name:a,val:""+b})}function hx(a){ex(this,"remove-attribute",{name:a})} function ix(){Xj(this,{focus:!0})}function jx(){Xj(this,{focus:!1})}function kx(){return this.YF}function lx(a){this.co(0!==a)}function mx(){return this.ga}function nx(a,b,d){return U.compare(Xp(this.ba(),a),b,d)}function ox(a){return!!Xp(this.ba(),a)}function px(){return this.ba().Ur()} function qx(a,b){const d=this.W(),c=d.pa();if(!c.length)return!1;const e=this.Pa;let g=null,k=0;for(let n=0,q=c.length;n<q;++n){const r=c[n];var m=e?mu(r.F(),this.Ai):0;m=Xp(r,m+b);if(null===g||0===a&&m<k||1===a&&m>k)k=m,g=r}vr(d,g);return!0} function rx(a){if(this.g.ph().Ek){{const c=this.W();if(c.jb){c.jb=!1;pr(c);var b=this.pa();for(let e=0,g=b.length;e<g;++e){var d=b[e];d.Ab===a?c.ub.push(d):c.G.push(d)}Lt(this);a=!!c.G.length}else{b=c.G;d=0;for(let e=0,g=b.length;e<g;++e){const k=b[e];b[d]=k;k.Ab===a?c.ub.push(k):++d}U.Ue(b,d);Lt(this);a=!!b.length}}}else a=sx(this,a);return a} function sx(a,b){b=Fo(a.I(),b);if(!b)return!1;const d=a.W();if(!d.jb&&!d.G.includes(b))return!1;if(a.Pa){if(tx(b.F(),a))return vr(d,b),Lt(a),!0}else if(b.F()===a)return vr(d,b),Lt(a),!0;return!1}function ux(){zn(this.g,this.H)}function vx(){return!0}function wx(){return!0}function xx(a,b){this.ba().Xn(a,b)}function yx(a,b){const d=this.ba(),c=Xp(d,a);"number"===typeof c&&"number"!==typeof b?b=parseFloat(b):"string"===typeof c&&"string"!==typeof b&&(b=b.toString());d.Xn(a,c+b)} function zx(a,b){const d=this.ba(),c=Xp(d,a);"number"===typeof c&&("number"!==typeof b&&(b=parseFloat(b)),d.Xn(a,c-b))}function Ax(a,b){this.ba().Xn(a,b?1:0)}function Bx(a){const b=this.ba();b.Xn(a,0===Xp(b,a)?1:0)}function Cx(a){try{var b=JSON.parse(a)}catch(d){console.error("Failed to load from JSON string: ",d);return}a=this.ba();a.bo("state");a.xc(b,"state");b=U.A(U.Event,"afterloadinstance");b.instance=a;this.g.tb().dispatchEvent(b)} function Dx(){return JSON.stringify(this.ba().kd("state"))}function Ex(){return this.ba().F().qa()}function Fx(){const a=this.g.Vf().aG;let b=a.G.length;for(const d of Kw(this.g,a))++b;return b}function Gx(){return this.g.Vf().aG.W().pa().length}function Hx(){return jn(this.H)}function Ix(){return this.H.Ab} U.rQ=function(a,b){const d=a[1],c=a[4],e=a[5],g=a[6],k=a[7],m=a[8],n=a[10],q=a[11],r=a[12],w=a[13],x=a[14],z=a[15],E=a[16],C=b.K,G=b.Ia,I=b.mc;a[3]&&(C.cR=bv,C.dR=cv,C.z2=dv,C.A2=fv,C.f4=gv,G.hg=hv,G.Lg=iv,G.jU=jv,G.BL=kv,G.s3=lv,G.r3=ov,I.Lz=pv,I.JE=qv,I.rP=rv);c&&(C.l0=sv,C.Y_=tv,G.gg=uv,G.Kg=vv,G.ac=wv,I.OL=xv,I.UR=yv,I.i_=zv,I.FQ=Av,I.l_=Bv,I.h_=Cv,I.j_=Dv,I.k_=Ev);e&&(C.xQ=Fv,C.zS=Gv,C.xS=Hv,G.fe=Iv,G.O5=Jv,G.P5=Kv,G.Q5=Lv,G.R5=Mv,G.K7=Nv,I.wQ=Ov);g&&(C.Rd=Qv,C.$Q=Pv,G.fg=Rv,G.bg=Sv,G.v6=Tv, I.Opacity=Vv,I.R_=Uv);k&&(C.x2=Wv,C.n4=Xv,C.o0=Yv,G.GK=Zv,G.t3=$v,G.u3=aw,G.Q9=bw,G.ig=dw,I.X2=ew,I.W2=fw,I.P9=gw,I.O9=hw,I.S8=iw);m&&(C.n2=jw,G.x6=kw,G.y6=lw);w&&(C.Yf=Hw,C.Xe=Iw,C.l4=Jw,C.e4=Mw,C.j4=Nw,C.W_=Ow,G.Ij=Pw,G.kl=Rw,G.P4=Sw,I.O_=Tw,I.HZ=Uw);x&&(G.s7=Vw,G.zL=Yw,I.n3=Zw,I.o3=bx);n&&(C.Rd=Qv,G.fg=cx,G.r6=dx,G.A6=gx,G.O4=hx);q&&(C.r2=kx,G.E6=ix,G.p6=jx);r&&(C.Pb=mx,G.cq=lx);z&&(C.G3=Bw,C.DS=Fw,C.B2=Gw,b.sR=Aw);d||(C.ZQ=nx,C.yS=ox,C.g4=qx,C.JT=rx,G.hU=xx,G.uZ=yx,G.A8=zx,G.dU=Ax,G.N8=Bx,C.hT= vx,C.iT=wx,G.$J=ux,G.ND||(G.ND=Cx),I.dD||(I.dD=Dx),I.v0=Fx,I.o4=Gx,I.O1=Hx,I.RU=Ix,I.B3=Ex);E&&(I.E8=px)};"use strict";const Qs=self.B;function Js(a){return"timer"===a.Aa?a.rc<=bj(a.Ma.I()):a.ht}async function Ks(a,b){Jx(a,b);for(const d of Ct(a.vk,b))await us(a.Ma.I(),d);a.zm&&a.zm.ii()&&Nt(a.zm,a.Jv);As(a.Pe);a.Bx=!0}function Kx(a,b){a.Aa="promise";a.si();b.then(()=>{a.ht=!0}).catch(d=>{console.warn("[C3 runtime] Promise rejected in 'Wait for previous actions to complete': ",d);a.ht=!0})} function Jx(a,b){b.YE(a.vk,a.Ye);for(const [d,c]of a.dr.entries())c.YE(d.W());a.zf&&Ar(b,[...a.zf]);if(b=a.zm)It(b,a.Sg),b.AG.map((d,c)=>d.xe(a.iG[c])),b.ii()&&Yt(b,a.Jv)} Qs.sL=class extends Qs.ta{constructor(a){super();this.Ma=a;this.Aa="";this.rc=-1;this.Cx="";this.ht=!1;this.vk=null;this.Ye=0;this.Pe=[];this.zf=null;this.dr=new Map;this.zm=null;this.Jv=-1;this.iG=this.Sg=null;this.Bx=!1}j(){this.Aa="";this.rc=-1;this.Cx="";this.iG=this.Sg=this.zm=this.vk=null;this.Jv=-1;Qs.D(this.Pe);this.zf&&(this.zf.clear(),this.zf=null);for(const a of this.dr.values())a.j();this.dr.clear()}si(){var a=this.Ma,b=a.I().yd,d=a.Vf();this.vk=d.Vb();this.Ye=d.Ye+1;if(d=Ms(this.vk))this.zm= d,this.Sg=Wt(d),this.iG=d.AG.map(c=>c.Wa()),d.ii()&&(this.Jv=Xt(d));for(const c of b)if(b=c.W(),!b.jb||this.vk.Pe.includes(c))this.Pe.push(c),this.dr.set(c,Qs.A(Qs.FL,b));a=Es(a);this.zf=0<a.size?a:null}Zp(a){for(const b of this.dr.values())b.Zp(a)}ra(){const a={},b={t:this.rc,st:this.Cx,s:this.ht,ev:this.vk.bb,sm:this.Pe.map(d=>d.bb),dsm:this.zf?[...this.zf].map(d=>d.bb):null,sols:a};vt(this.vk,this.Ye)&&(b.act=Ps(this.vk,this.Ye).bb);for(const [d,c]of this.dr)a[d.bb.toString()]=c.ra();return b}}; "use strict";const Lx=self.B;Lx.FL=class extends Lx.ta{constructor(a){super();this.J=null;this.iB=!0;this.G=[];a&&(this.J=a.F(),this.iB=a.jb,Lx.Md(this.G,a.G))}j(){this.J=null;Lx.D(this.G)}YE(a){a.jb=!!this.iB;Lx.Md(a.G,this.G)}Zp(a){Lx.ai(this.G,a)}ra(){return{sa:this.iB,insts:this.G.map(a=>a.Ab)}}ya(a,b){a=a.I();this.iB=!!b.sa;Lx.D(this.G);for(const d of b.insts)(b=Fo(a,d))&&this.G.push(b)}};"use strict";const Mx=self.B;function Nx(a,b){let d=a.get(b);d||(d=new Map,a.set(b,d));return d} function fu(a,b,d){if(!d)throw Error("missing 'this' binding");let c=a.mM.get(b);if(c)return c;c=b.bind(d);a.mM.set(b,c);return c}function Ou(a,b,d,c){if(!d)throw Error("missing 'this' binding");a=Nx(a.VV,b);let e=a.get(c);if(e)return e;e=b.bind(d,c);a.set(c,e);return e}function Pu(a,b,d,c,e){if(!d)throw Error("missing 'this' binding");a=Nx(a.WV,b);a=Nx(a,c);let g=a.get(e);if(g)return g;g=b.bind(d,c,e);a.set(e,g);return g} function Qu(a,b,d,c,e,g){if(!d)throw Error("missing 'this' binding");a=Nx(a.XV,b);a=Nx(a,c);a=Nx(a,e);let k=a.get(g);if(k)return k;k=b.bind(d,c,e,g);a.set(g,k);return k}function Ox(a,b){if(!a.Io)throw Error("must be single-global plugin");a.rO=b} Mx.ml=class extends Mx.ta{constructor(a){super();this.g=a.mf;this.Io=!!a.GP;this.ne=!!a.qY;this.MW=!!a.pY;this.WW=!!a.AY;this.xW=!!a.fY;this.FO=!!a.PY;this.pX=!!a.OY;this.rO=null;this.mM=new Map;this.VV=new Map;this.WV=new Map;this.XV=new Map}j(){this.g=null}I(){return this.g}Jc(){}Tn(){return this.MW}Wu(){return this.WW}CD(){return this.xW}Sj(){if(!this.Io)throw Error("must be single-global plugin");return this.rO.Sj()}};"use strict";const Px=self.B; function Qx(a,b,d){Rx(a.g,a.zo,b,c=>{const e=a.BG.get(c.elementId);d(e,c)})}Px.U5=class extends Px.ml{constructor(a,b){super(a);this.zo=b;this.ZW=0;this.BG=new Map;Qx(this,"elem-focused",d=>{d.YF=!0});Qx(this,"elem-blurred",d=>{d&&(d.YF=!1)})}j(){super.j()}};"use strict";const Sx=self.B; Sx.Wn=class extends Sx.ta{constructor(a){super();this.J=a;this.g=a.I();this.uj=a.qb()}j(){this.uj=this.g=this.J=null}F(){return this.J}I(){return this.g}qb(){return this.uj}xd(){return this.J.xd()}Jc(){}Cu(){}eD(){}bD(){}Vn(){}em(){}vz(){}TD(){}Gg(){return null}Ly(a,b,d){a=Sx.A(Sx.Event,a,b);a.pJ=this;d&&Object.assign(a,d);this.F().nh(a)}};"use strict";const Tx=self.B;function Ux(a,b){for(const [d,c]of b)a.YC(d,c)}function Vx(a,b,d){ad(a.g,a.zo,b,d)}function Wx(a,b,d){return cj(a.g,a.zo,b,d)} function Xx(a,b,d){a.g.Dk?Vx(a,b,d):window.c3_runtimeInterface._OnMessageFromRuntime({type:"event",component:a.zo,handler:b,data:d,responseId:null})} Tx.bs=class extends Tx.ta{constructor(a,b){super();this.H=a;this.zo=b;this.g=a.I();this.J=this.H.F();this.ib=this.J.ib;this.nn=this.qn=null;this.Um=this.Tm=!1;this.pg=null;this.fu=!1}j(){this.fu=!0;this.qm();this.Dv();this.nn=this.qn=null;this.pg&&(this.pg.j(),this.pg=null);this.ib=this.J=this.g=this.H=null}$n(){return this.fu}ba(){return this.H}I(){return this.g}F(){return this.J}qb(){return this.ib.qb()}Tr(){return ij(this.H)}Ka(a){return this.g.Ka(a,this.H,null)}Hb(a){return this.g.Hb(a,this.H, null)}nl(a){return this.g.nl(a)}YC(a,b){Rx(this.g,this.zo,a,b)}He(){}kv(){}uf(){this.Tm||(this.qn||(this.qn=()=>this.He()),this.g.tb().addEventListener("tick",this.qn),this.Tm=!0)}qm(){this.Tm&&(this.g.tb().removeEventListener("tick",this.qn),this.Tm=!1)}Uz(){this.Um||(this.nn||(this.nn=()=>this.kv()),this.g.tb().addEventListener("tick2",this.nn),this.Um=!0)}Dv(){this.Um&&(this.g.tb().removeEventListener("tick2",this.nn),this.Um=!1)}kd(){return null}xc(){}uc(){}dg(){}PD(a,b,d){if(0!==b){var c=this.uc(a); if("number"!==typeof c)throw Error("expected number");this.dg(a,c+b,d)}}Gg(){return null}Ly(a,b,d){if(this.H.Be){var c=this.Tr();a=Tx.A(Tx.Event,a,b);a.instance=c;d&&Object.assign(a,d);c.dispatchEvent(a)}}};"use strict";const Yx=self.B;function Zx(a){if(!a.Lt){a.Lt=()=>a.Zr();a.UB=()=>a.WK();var b=a.g.tb();b.addEventListener("rendererontextlost",a.Lt);b.addEventListener("renderercontextrestored",a.UB)}} Yx.bv=class extends Yx.bs{constructor(a,b){super(a,b);this.cb=a.m();this.UB=this.Lt=null}j(){if(this.Lt){const a=this.g.tb();a.removeEventListener("renderercontextlost",this.Lt);a.removeEventListener("renderercontextrestored",this.UB);this.UB=this.Lt=null}this.cb=null;super.j()}Zr(){}WK(){}m(){return this.cb}yh(){return!1}Fg(){if(!this.yh())throw Error("original size not known");const a=this.ve();if(a)return a.N()}Eg(){if(!this.yh())throw Error("original size not known");const a=this.ve();if(a)return a.M()}ve(){return null}Wy(){var a= this.ve();return a&&(a=a.Qd())?[a.N(),a.M()]:[100,100]}Xy(){const a=this.ve();return a?a.Xf():null}nz(){const a=this.ve();return a?a.Oq:!1}gl(){const a=this.H.m();return[a.T(),a.U(),hm(a)]}$r(){return!0}};"use strict";const fx=self.B,$x=fx.A(fx.Rect);function ex(a,b,d){d||(d={});d.elementId=a.xA;Vx(a,b,d)}function Xj(a,b){b||(b={});b.elementId=a.xA;Xx(a,"focus",b)}function ay(a,b){b=!!b;a.jN!==b&&(a.jN=b,ex(a,"set-visible",{isVisible:b}))} fx.T5=class extends fx.bv{constructor(a,b){super(a,b);a=this.qb();b=a.ZW++;a.BG.set(b,this);this.xA=b;this.jN=!0;this.PV=this.YF=!1;this.QV=-.2;this.nt=fx.A(fx.Rect,0,0,-1,-1);a=this.g.da;this.DN=a.xp;this.CN=a.wp;this.uf()}j(){this.qb().BG.delete(this.xA);ex(this,"destroy");this.xA=-1;super.j()}He(){a:{var a=this.m();const c=a.Z();var b=Qj(a);let [e,g]=nm(c,b.Y,b.V),[k,m]=nm(c,b.ma,b.ka);b=this.g.da;var d=b.Bd;const n=b.md;if(a.Rd()&&c.Rd()){a=this.g.da.Zy();if("Android"!==fx.O.Sd||"scale-inner"!== a&&"scale-outer"!==a&&"crop"!==a){if(0>=k||0>=m||e>=d||g>=n){ay(this,!1);break a}1>e&&(e=1);1>g&&(g=1);k>=d&&(k=d-1);m>=n&&(m=n-1)}$x.set(e,g,k,m);a=b.xp;d=b.wp;$x.Ld(this.nt)&&this.DN===a&&this.CN===d?ay(this,!0):(this.nt.xa($x),this.DN=a,this.CN=d,ay(this,!0),a=null,this.PV&&(a=c.Nj()+this.QV),ex(this,"update-position",{left:Math.round(this.nt.Y)+b.Fu(),top:Math.round(this.nt.V)+b.Gu(),width:Math.round(this.nt.width()),height:Math.round(this.nt.height()),fontSize:a}))}else ay(this,!1)}}};"use strict"; const by=self.B,ek=self.tK;by.eE=class extends by.ta{constructor(a){super();this.g=a.mf;this.sH=by.A(by.cD);this.EB=by.A(by.cD);this.qw=null;this.jX=a.IY||null}j(){this.EB.j();this.sH.j();this.g=null}I(){return this.g}Jc(){}pK(){return Pc(this.sH)}ri(a){this.EB.$c(a)}iq(a){this.EB.Jn(a)}pa(){return Pc(this.EB)}};"use strict";const cy=self.B;cy.gE=class extends cy.ta{constructor(a){super();this.g=a.I();this.Td=a;this.J=a.F();this.jk=a.Cg();this.jk.sH.$c(this.J)}j(){this.jk=this.J=this.Td=this.g=null}Jc(){}oh(){return this.Td}F(){return this.J}I(){return this.g}Cg(){return this.jk}}; "use strict";const dy=self.B; dy.fE=class extends dy.ta{constructor(a){super();this.Nv=a;this.zo=void 0;this.H=a.H;this.g=a.I();this.Td=a.oh();this.ib=this.Td.ib;this.oN=this.Um=this.Tm=!1;this.pg=null}j(){this.qm();this.Dv();this.oN&&(this.g.qq.Ah(this),this.oN=!1);this.pg&&(this.pg.j(),this.pg=null);this.ib=this.Td=this.g=this.H=this.Nv=null}Cg(){return this.Td.Cg()}F(){return this.H.F()}m(){return this.H.m()}I(){return this.g}oh(){return this.Td}Tr(){return this.Nv.Tr()}Ka(a){return this.g.Ka(a,this.H,this.Td)}Hb(a){return this.g.Hb(a, this.H,this.Td)}zz(){}He(){}kv(){}uf(){this.Tm||(this.g.lo.$c(this),this.Tm=!0)}qm(){this.Tm&&(this.g.lo.Ah(this),this.Tm=!1)}Uz(){this.Um||(this.g.mo.$c(this),this.Um=!0)}Dv(){this.Um&&(this.g.mo.Ah(this),this.Um=!1)}YC(a,b){Rx(this.g,this.zo,a,b)}kd(){return null}xc(){}uc(){}dg(){}PD(a,b){if(0!==b){var d=this.uc(a);if("number"!==typeof d)throw Error("expected number");this.dg(a,d+b)}}Gg(){return null}Ly(a,b,d){if(this.Nv.Be){var c=this.Tr();a=dy.A(dy.Event,a,b);a.b$=c;a.instance=c.instance;d&&Object.assign(a, d);c.dispatchEvent(a)}}};"use strict";const ey=self.B;ey.C={};ey.La={};function fy(a,b){const d=Vt(a.g,b[0]);if(!d)throw Error("missing plugin");ey.rQ(b,d);b=ey.A(d,{mf:a.g,GP:b[1],qY:b[2],pY:b[5],fY:b[8],AY:b[9],PY:b[13],OY:b[14]});b.Jc();a.NV.push(b);a.$N.set(d,b)}function gy(a){a.qe=ey.A(ey.C.sb,{mf:a.g,GP:!0});a.qe.Jc()}ey.OT=class extends ey.ta{constructor(a){super();this.g=a;this.NV=[];this.$N=new Map;this.qe=null;this.KV=[];this.AF=new Map;this.tN=this.uO=null}Mu(){return this.qe}};"use strict"; const hy=self.B,iy=new Set;function jy(a){a.CF&&(URL.revokeObjectURL(a.CF),a.CF="")}function ky(a,b){a.Wk=b[0];a.Mt=b[1];a.gx=b[2];a.hx=b[3];a.ja=b[4];a.fa=b[5];a.Oq=b[6];a.ow=!0}function ly(a,b,d){if(a.Tg)throw Error("already got asset");d=Object.assign({},d,{url:a.Wk,size:a.Mn()});a.Tg=b.sz(d)}function my(a,b,d){if(a.Tg)throw Error("already loaded asset");a.Wk=d;const c={};hy.mz(d)&&(c.my="remote");ly(a,b,c);return Rk(a.Tg)} hy.Su=class extends hy.ta{constructor(){super();this.lG=0;this.Wk="";this.fa=this.ja=this.hx=this.gx=this.Mt=0;this.ow=this.Oq=!1;this.Tg=null;this.mn="";this.Ni=hy.A(hy.Rect);this.Yq=hy.A(hy.jd);this.CF="";new self.uK(this);iy.add(this)}j(){this.Zi();this.Tg=null;iy.delete(this);jy(this)}static Zr(){for(const a of iy)a.mn="",a.Ni.set(0,0,0,0),a.Yq.$k(a.Ni)}Mn(){return this.Mt}N(){return this.ja}M(){return this.fa}pz(){return this.Tg&&this.Tg.pz()}async Un(a,b){if(!this.Tg)throw Error("no asset"); if(this.mn)throw Error("already loaded texture");var d=this.lG;this.mn="loading";a=await this.Tg.Un(a,b);if(this.lG!==d)return null;if(!a)return this.mn="",null;this.mn="loaded";this.ow||(this.ja=a.N(),this.fa=a.M(),this.ow=!0);this.Ni.set(this.gx,this.hx,this.gx+(this.Oq?this.fa:this.ja),this.hx+(this.Oq?this.ja:this.fa));this.Ni.Dj(a.N(),a.M());this.Yq.$k(this.Ni);if(this.Oq){d=this.Yq;b=d.Qb;const c=d.Rb;d.Qb=d.Wc;d.Rb=d.Xc;d.Wc=d.Qc;d.Xc=d.Rc;d.Qc=d.Oc;d.Rc=d.Pc;d.Oc=b;d.Pc=c}return a}Zi(){this.mn&& (this.Tg&&this.Tg.Zi(),this.mn="",this.Ni.set(0,0,0,0),this.Yq.$k(this.Ni))}Qd(){return this.Tg?this.Tg.Qd():null}Xf(){return this.Ni}ez(){return this.Yq}};"use strict";const ny=self.B;function oy(a,b,d){return Promise.all(a.Ae.map(c=>c.xd().Un(b,d)))}function py(a,b){b=Math.floor(b);if(0>b||b>=a.Ae.length)throw new RangeError("invalid frame");return a.Ae[b]} ny.zQ=class extends ny.ta{constructor(a){super();this.Oa=a[0];this.lX=a[1];this.Bw=!!a[2];this.cr=a[3];this.lO=a[4];this.LW=!!a[5];this.bb=a[6];this.Ae=a[7].map(b=>ny.A(ny.yQ,b));this.yW=new self.VR(this)}j(){for(const a of this.Ae)a.j();ny.D(this.Ae)}qa(){return this.Oa}il(){return this.lX}gi(){return this.cr}};"use strict";const qy=self.B; qy.yQ=class extends qy.ta{constructor(a){super();this.Oh=qy.A(qy.Su);ky(this.Oh,a);this.$v=a[7];this.WN=qy.A(qy.fq,a[8],a[9]);this.RA=a[10].map(b=>qy.A(qy.pS,this,b));this.aN=new Map;for(const b of this.RA)this.aN.set(b.qa().toLowerCase(),b);this.rq=null;a=a[11];6<=a.length&&(this.rq=qy.A(qy.Jp,a));this.zW=new self.WR(this)}j(){this.rq&&(this.rq.j(),this.rq=null);this.Oh.j();this.Oh=null}xd(){return this.Oh}rh(){return this.WN.X}th(){return this.WN.R}sD(){return this.RA.length}};"use strict"; const ry=self.B;ry.pS=class extends ry.ta{constructor(a,b){super();this.Oa=b[0];this.JH=ry.A(ry.fq,b[1],b[2])}j(){}qa(){return this.Oa}T(){return this.JH.X}U(){return this.JH.R}On(){return this.JH}};"use strict";const Su=self.B,sy=self.ei,ty=self.FD;function*hj(a){yield*a.G;yield*Kw(a.g,a)}function dn(a){return uy(a,Su.La.Z3)}function kn(a){if(a.Bq&&!a.Pa){var b=a.G,d=0;for(let c=b.length;d<c;++d)b[d].wG=d;b=a.g.Fo;for(const c of b)c.F()===a&&(b=d++,c.wG=b);a.Bq=!1}} function Vo(a,b){return a.Bk.findIndex(d=>d.name===b)}function Jo(a,b){b=Math.floor(b);if(0>b||b>=a.Bk.length)throw new RangeError("invalid instance variable index");return a.Bk[b].name}function Ko(a,b){b=Math.floor(b);if(0>b||b>=a.Bk.length)throw new RangeError("invalid instance variable index");return a.Bk[b].type}function Wo(a,b){a=a.zF.get(b.toLowerCase());return"undefined"===typeof a?-1:a} function Lt(a){if(a.MG&&!a.Pa){kn(a);var b=a.W(),d=b.G,c=b.jb,e=a.g.Vf();e=e&&e.Vb()&&e.Vb().Me;for(const m of a.Kh.Fl)if(m!==a){kn(m);var g=m.W();g.jb=!!c;if(!c){var k=g.G;Su.D(k);for(const n of d)k.push(vy(m,jn(n)));if(e){k=b.ub;g=g.ub;Su.D(g);for(const n of k)g.push(vy(m,jn(n)))}}}}}function Ns(a,b){return(a=a.uM.get(b.toLowerCase()))&&a.Pb()?a:null}function mu(a,b){return a.fw[b]}function Ru(a,b){return a.BA[b]} function cw(a,b){if(b&&b.wc()&&b.F()!==a)for(const d of b.ud)if(d.F()===a)return d;a=a.W().pa();return a.length?a[0]:null}function*Qw(a,b,d){a=a.W().pa();const c=a.length,e=d.W(),g=d.W().pa(),k=g.length;var m=jn(b);if(d.Pa||!e.jb)m=g.indexOf(b);b=Math.ceil(c/k);d=c%k;0===d||m<d?m*=b:(m=d*b+(m-d)*(b-1),--b);for(let n=m,q=m+b;n<q;++n)yield a[n]}function tx(a,b){return a.cG.has(b)}function wy(a,b){const d=a.g.dx++,c=Su.A(Su.Instance,{mf:a.g,qJ:a,uid:d});c.Mz(b[16],[]);a.g.Jq.set(d,c);a.G.push(c)} function xy(a,b){for(let d=1,c=b.length;d<c;++d){const e=om(a.g,b[d]);a.Km.push(e);a.CA.add(e);e.yi.push(a);e.cG.add(a)}} function yy(a){var b=0;if(!a.Pa)for(var d of a.yi)for(var c of d.kM){var e=c.qa().toLowerCase();a.us.set(e,c);a.zF.set(e,b);a.eA.push(c);++b}for(var g of a.kM)d=g.qa().toLowerCase(),a.us.set(d,g),a.zF.set(d,b),a.eA.push(g),++b;for(var k of a.eA)a.PO.add(k.Cg().constructor);if(!a.Pa&&a.yi.length){b=a.g.HM;Su.JC(a.fw,b,0);Su.JC(a.BA,b,0);Su.JC(a.dG,b,0);b=[];d=k=g=0;for(var m of a.yi)if(c=m.Ai,a.fw[c]=g,g+=m.Bk.length,a.BA[c]=k,k+=m.TV,a.dG[c]=d,d+=m.rW,(c=m.Sa)&&a.Sa)for(const q of c.Wi()){c=b;e=c.push; var n=q;const r=zy.A(zy.bK,a.Sa,[n.ge,n.Oa],-1);r.Xd=n.Xd;r.Mb=n.Mb;e.call(c,r)}if(a.Sa&&(a=a.Sa,m=b,m.length)){a.ti=m.concat(a.ti);for(const q of m)a.wA.set(q.qa().toLowerCase(),q);for(let q=0,r=a.ti.length;q<r;++q)a.ti[q].bF(q)}}}function uy(a,b){return b&&a.PO.has(b)}function Ay(a){return a.Bk.map(b=>b.XP)}function By(a,b){return a.Bk.findIndex(d=>d.XP===b)}function Gj(a){return a.Bk.map(b=>b.sY)}function Cy(a){return a.Sa&&0<a.Sa.ti.length} function Dy(a,b){if(!a.Ie)throw Error("no animations");return a.Yz.get(b.toLowerCase())||null}function Ey(a){if(a.Ie){if(!a.Ie)throw Error("no animations");a=py(a.Ie[0],0).xd();return[a.N(),a.M()]}return a.Oh?[a.Oh.N(),a.Oh.M()]:[100,100]}function vy(a,b){var d=a.G;if(b<d.length)return d[b];b-=d.length;d=a.g.Fo;for(const c of d)if(c.F()===a){if(0===b)return c;--b}return null}function Fy(a){if(a.$z&&a.ne){for(const b of a.G)Gy(b.m());for(const b of a.g.Fo)b.F()===a&&Gy(b.m());a.$z=!1}} Su.uz=class extends Su.ta{constructor(a,b,d){super();const c=Vt(a,d[1]);this.g=a;this.uj=a.Xq.$N.get(c)||null;this.ib=null;this.xw=c.Instance;this.oa=b;this.bb=d[11];this.Oa=d[0];this.Jw=this.g.Qj(d[14]);this.JW=!!d[9];this.Pa=!!d[2];this.TG=!!d[10];this.Bk=d[3].map(e=>({XP:e[0],type:e[1],name:e[2],sY:a.Qj(e[3])}));this.TV=d[4];this.rW=d[5];this.ne=this.uj.ne;this.Sa=null;this.lA=Su.A(Su.rU,a.Ki,a.Ji);this.$z=!0;this.Hv=!1;this.CA=this.Km=null;this.Ai=-1;this.dG=this.BA=this.fw=this.cG=this.yi=null; this.MG=!1;this.Kh=null;this.kM=d[8].map(e=>Su.RJ.Qa(this,e));this.eA=[];this.us=new Map;this.zF=new Map;this.PO=new Set;this.uM=new Map;this.Pk=Su.A(Su.qU,this);this.Zz=this.Yz=this.Ie=this.Oh=this.Kh=this.uq=null;this.Ut=0;this.Zb=new Map;this.Aj=new Map;this.G=[];this.Bq=!0;this.uj.CD()&&(this.Sa=Su.A(Su.Kp,this,d[12]));d[6]&&(this.Oh=Su.A(Su.Su),ky(this.Oh,d[6]));if(d[7]){this.Ie=d[7].map(e=>Su.A(Su.zQ,e));this.Yz=new Map;this.Zz=new Map;for(const e of this.Ie)this.Yz.set(e.qa().toLowerCase(), e),this.Zz.set(e.bb,e)}this.Pa?(this.Km=[],this.CA=new Set,this.Ai=this.g.HM++):(this.yi=[],this.cG=new Set,this.fw=[],this.BA=[],this.dG=[]);this.ib=Su.A(c.oi,this,d[15]);this.CG=this.uw=null;this.hf=Su.A(Su.Event.tb);if(b=this.ib.Gg()){if(this.uw=new b(this),!(this.uw instanceof ty))throw new TypeError("script interface class must derive from IObjectClass");}else this.uw=new ty(this);this.g.wC&&!this.Pa&&!this.TG&&this.ne||this.Jc();this.uj.Io&&(Ox(this.uj,this),wy(this,d));this.wB=null}static Qa(a, b,d){return Su.A(Su.uz,a,b,d)}j(){this.Oh&&(this.Oh.j(),this.Oh=null);if(this.Ie){for(const a of this.Ie)a.j();Su.D(this.Ie);this.Yz.clear();this.Zz.clear()}this.wB=null;this.Pk.j();this.Pk=null;this.Zb.clear();this.Aj.clear();this.g=this.Kh=null}wc(){return this.MG}Jc(){this.Pa||this.ib.Jc()}Vn(a){if(this.Pa)return Promise.resolve();this.Ut++;return 1===this.Ut?this.ib.Vn(a)||Promise.resolve():Promise.resolve()}em(){if(!this.Pa){this.Ut--;if(0>this.Ut)throw Error("released textures too many times"); 0===this.Ut&&this.ib.em()}}vz(){if(this.Pa)throw Error("not applicable to family");this.ib.vz()}TD(a){return this.Pa?Promise.resolve():this.ib.TD(a)}I(){return this.g}qb(){return this.uj}qa(){return this.Oa}Qj(){return this.Jw}Ja(){return this.oa}rf(){return this.JW}CD(){return this.uj.CD()}W(){return this.Pk.W()}xd(){return this.Oh}Sj(){if(!this.uj.Io)throw Error("not a single-global plugin");return this.G[0]}pa(){return this.G}*hy(){yield*this.G}ri(a){this.G.push(a)}Cu(a){this.ib.Cu(a)}hi(){this.Zb|| (this.Zb=new Map);return this.Zb}Ou(){this.Aj||(this.Aj=new Map);return this.Aj}ra(){const a={instances:this.G.map(b=>b.kd())};this.Zb&&this.Zb.size&&(a.ex=Su.CE(this.Zb));return a}ya(a){this.Zb&&(this.Zb.clear(),this.Zb=null);var b=a.ex;b&&(this.Zb=Su.qD(b));b=this.G;a=a.instances;for(let d=0,c=Math.min(b.length,a.length);d<c;++d)b[d].xc(a[d]);for(let d=a.length,c=b.length;d<c;++d)zn(this.g,b[d]);for(let d=b.length,c=a.length;d<c;++d){b=a[d];let e=null;if(this.ne&&(e=Qm(this.g.dc(),b.w.l),!e))continue; tm(this.g,this.uq||this,e,!1,0,0,!0).xc(b)}this.wB=a;this.Bq=!0}Cv(){for(let a=0,b=this.G;a<b;++a)this.G[a].Cv()}nh(a){var b=this.g;(b=b.Nb&&!mj(b.Da()))&&sy.BE();this.hf.dispatchEvent(a);b&&sy.aD()}};"use strict";const Hy=self.B;function un(a){return a.Fl.some(b=>b.ne)}Hy.fR=class extends Hy.ta{constructor(a,b){super();this.g=a;this.Fl=b;for(const d of this.Fl)a=d,a.MG=!0,a.Kh=this}j(){this.g=null}I(){return this.g}};"use strict";const Hj=self.B,Iy=self.ei,Jy=self.Pn,Ky=[];let Ly=0; const My=new WeakMap,Ny=new WeakMap;function ij(a){var b;if(!(b=a.Be)){var d=a.cb?self.Wr:Jy;const c=a.na.Gg(),e=(b=a.Ne.CG)||c||d;Jy.si(a);a.Be=new e;Jy.si(null);if(c&&!(a.Be instanceof d))throw new TypeError(`script interface class '${c.name}' does not extend the right base class '${d.name}'`);if(b&&(d=c||d,!(a.Be instanceof d)))throw new TypeError(`setInstanceClass(): class '${b.name}' does not extend the right base class '${d.name}'`);b=a.Be}return b} function lj(a){const b=new Set;b.add(a);const d=a.m();if(d&&d.Xe())for(const c of a.Cj())if(b.add(c),c.wc())for(const e of c.ud)b.add(e);if(a.wc())for(const c of a.ud)b.add(c);for(const c of b.values())rn(c)}function Ij(a){const b=a.Jd;return-1===b?a.I().Jd:b}function pn(a){var b=a.m();if(b&&(b=Oy(b)))for(const d of b)if(b=Fo(a.g,d[2])){const c=d[3];a.Ij(b,{Hr:!!(c>>0&1),Ir:!!(c>>1&1),Ep:!!(c>>2&1),Dp:!!(c>>3&1),Er:!!(c>>4&1),ju:!!(c>>5&1),Jr:!!(c>>6&1),Fr:!!(c>>7&1),Gr:!!(c>>8&1)})}} function qn(a,b,d){if(b=b.get(a))for(const c of b.sceneGraphJson.children){b=d.get(c.index);if(!b)continue;const e=c.flags;a.Ij(b,{Hr:!!(e>>0&1),Ir:!!(e>>1&1),Ep:!!(e>>2&1),Dp:!!(e>>3&1),Er:!!(e>>4&1),ju:!!(e>>5&1),Jr:!!(e>>6&1),Fr:!!(e>>7&1),Gr:!!(e>>8&1)})}}function rn(a){a.Ne.CG&&ij(a);if(Py(a,"instancecreate")){const b=a.F(),d=new Hj.Event("instancecreate");d.instance=ij(a);b.nh(d);for(const c of b.yi)c.nh(d);a.g.nh(d)}a.g.Ka(a.qb().constructor.K.hT,a,null)} function jn(a){kn(a.Ne);return a.wG}function Go(a){return 0!==(a.ea&1)}function rp(a,b){a=a.Ad;for(let d=0,c=a.length;d<c;++d)if(a[d].oh().bb===b)return d;return-1}function Xp(a,b){b|=0;a=a.Af;if(0>b||b>=a.length)throw new RangeError("invalid instance variable");return a[b]}function bt(a){for(const b of a.ud)sr(b.F().W(),b)}function Lw(a,b){b.Pa?(a=a.F(),b=b.CA.has(a)):b=a.F()===b;return b}function Qy(a,b){0<b.length&&(a.Af=[],Hj.Md(a.Af,b))} function Ry(a){const b=a.Ne.Bk.length;if(0!==b){a.Af=[];var d=[0,0,""];for(let c=0;c<b;++c)a.Af.push(d[Ko(a.Ne,c)])}}function Sy(a,b,d){b<<=16;a.ea=d?a.ea|b:a.ea&~b}function Ty(a,b){return 0!==(a.ea&b<<16)}function Uy(a,b,d,c){const e=(g,k)=>{k=k||g.F();const m=b.get(k);m?m.add(g):b.set(k,new Set([g]))};e(a,d);if(a.wc())for(const g of a.ud)e(g);if(c)for(const g of a.Cj())e(g)}function Vy(a){if(!a.qb().FO)throw Error("object does not support scene graph");} function Wy(a,b){a=a.m();if(!a)return[];const d=b.qa();return a.ue().map(c=>c.ba()).filter(c=>c.F().qa()===d)}function Xy(a,b){a=a.ud;if(null===a||0===a.length)return!1;for(const d of a)if(d.F()===b)return d;return null}function Py(a,b){const d=a.F();if(d.hf.Im.has(b))return!0;for(const c of d.yi)if(c.hf.Im.has(b))return!0;return a.g.hf.Im.has(b)?!0:!1} Hj.Instance=class extends Hj.ta{constructor(a){super();this.g=a.mf;this.Ne=a.qJ;this.Be=this.na=this.cb=null;this.wG=0;this.Ab=a.uid;this.gO=Ly++;this.ea=0;this.Ad=this.Af=Ky;var b=this.Ne.eA;0<b.length&&(this.Ad=b.map((d,c)=>Hj.A(Hj.Fy,{mf:this.g,JI:d,instance:this,index:c})));this.ud=this.Ne.wc()?[]:null;this.Jd=-1;this.ec=null;b=this.qb();b.Wu()&&(this.ea|=4);if(b.ne)if(this.cb=Hj.A(Hj.eV,this,a.JP),a.kQ)this.cb.xh(a.kQ);else{Yy(this.cb);const [d,c]=Ey(this.Ne);this.cb.ac(d,c);Cy(this.F())&&Zy(this.cb.Bf)}a.zP? Qy(this,a.zP):Ry(this)}j(){this.Be&&(this.Be.yv(),this.Be=null);if(0<this.Ad.length){for(var a of this.Ad)a.j();Hj.D(this.Ad)}this.na.j();this.na=null;if(a=My.get(this))a.clear(),My.delete(this);if(a=Ny.get(this))a.clear(),Ny.delete(this);this.ud&&Hj.D(this.ud);this.ec&&(this.ec.j(),this.ec=null);this.Ne=this.g=null;0<this.Af.length&&Hj.D(this.Af);this.cb&&(this.cb.j(),this.cb=null)}Mz(a,b){if(this.na)throw Error("already got sdk instance");for(let d=0,c=this.Ad.length;d<c;++d)this.Ad[d].Mz(b?b[d]: null);this.na=Hj.A(this.Ne.xw,this,a);if(!(this.na instanceof Hj.bs))throw Error("sdk type must derive from SDKInstanceBase");!this.qb().ne&&this.Ne.CG&&ij(this);for(let d=0,c=this.Ad.length;d<c;++d)this.Ad[d].zz()}m(){return this.cb}I(){return this.g}gv(a){a=+a;if(0>a||!isFinite(a))a=0;this.Jd=a;Cy(this.F())&&$y(this.g,this,!0)}tb(){this.ec||(this.ec=Hj.A(Hj.Event.tb));return this.ec}pf(a){this.na.pf(a)}Jc(a){this.na.Jc(a)}Tj(){return 0!==(this.ea&2)}VE(){this.ea|=1}Wu(){return 0!==(this.ea&4)}ve(){return this.na.ve()}Wy(){return this.na.Wy()}Xy(){return this.na.Xy()}nz(){return this.na.nz()}gl(a){return this.na.gl(a)}F(){return this.Ne}$r(){return this.na.$r()}Yf(){return null!== this.Ea()}Ea(){var a=this.m();return a?(a=a.Ea())?a.ba():null:null}Nn(){var a=this.m();return a?(a=a.Nn())?a.ba():null:null}*ry(){const a=this.m();if(a)for(const b of a.ry())yield b.ba()}BD(a){if(!a)return!1;for(const b of this.children())if(b===a)return!0;return!1}Xe(){const a=this.m();return a?a.Xe():!1}ue(){const a=this.m();return a?a.ue().map(b=>b.ba()):[]}*children(){const a=this.m();if(a)for(const b of a.children())yield b.ba()}*Cj(){const a=this.m();if(a)for(const b of a.Cj())yield b.ba()}Uy(){const a= this.m();return a?a.Uy():0}Qy(){const a=this.m();return a?a.Qy():0}Ty(a){const b=this.m();return b?(a=b.Ty(a))?a.ba():null:null}Ij(a,b){Vy(this);Vy(a);this.m().Ij(a.m(),b||{})}kl(a){const b=this.m();b&&b.kl(a.m())}Hu(){const a=this.m();return a?a.Hu():!1}Ur(){var a=this.g.Pi;a=a?a.Pm?(a=a.Pm.get(this))?a:"":"":"";return a}wc(){return null!==this.ud}qb(){return this.Ne.qb()}xV(a){const b=this.Af[a];return 0===Ko(this.Ne,a)?!!b:b}Xn(a,b){a|=0;const d=this.Af;if(0>a||a>=d.length)throw new RangeError("invalid instance variable"); switch(Ko(this.Ne,a)){case 0:d[a]=b?1:0;break;case 1:d[a]="number"===typeof b?b:parseFloat(b);break;case 2:d[a]="string"===typeof b?b:b.toString();break;default:throw Error("unknown instance variable type");}}hi(){let a=My.get(this);if(a)return a;a=new Map;My.set(this,a);return a}Ou(){let a=Ny.get(this);if(a)return a;a=new Map;Ny.set(this,a);return a}kd(a="full"){const b={};"full"===a?b.uid=this.Ab:b.c3=!0;if("visual-state"!==a){var d=My.get(this);d&&d.size&&(b.ex=Hj.CE(d));-1!==this.Jd&&(b.mts=this.Jd); if(0<this.Ne.Bk.length){d={};var c=Ay(this.Ne);for(let e=0,g=this.Af.length;e<g;++e)d[c[e].toString()]=this.Af[e];b.ivs=d}if(this.Ad.length){d={};for(const e of this.Ad)(c=e.kd())&&(d[e.oh().bb.toString()]=c);b.behs=d}}this.cb&&(b.w=this.cb.ra(a));(a=this.na.kd())&&(b.data=a);return b}bo(a="full"){this.cb&&this.cb.bo(a)}Cv(){this.qb().ne&&this.cb.Cv()}xc(a,b="full"){if("full"===b)this.Ab=a.uid;else if(!a.c3)return;if("visual-state"!==b){var d=My.get(this);d&&(d.clear(),My.delete(this));if(d=a.ex)d= Hj.qD(d),My.set(this,d);this.Jd=a.hasOwnProperty("mts")?a.mts:-1;if(d=a.ivs)for(const [g,k]of Object.entries(d))if(d=By(this.Ne,parseInt(g,10)),!(0>d||d>=this.Af.length)){var c=k;null===c&&(c=NaN);this.Af[d]=c}}if(this.qb().ne){d=a.w;var e=d.l;this.cb.Z().bb!==e&&(c=this.cb.Z(),(e=Qm(c.Fc(),e))?(bn(this.cb,e),c.iq(this,!0),e.ri(this,!0),zl(e),Pj(this.cb)):"full"===b&&zn(this.g,this));this.cb.ya(d,b)}if("visual-state"!==b&&(d=a.behs))for(const [g,k]of Object.entries(d))d=rp(this,parseInt(g,10)),0> d||d>=this.Ad.length||this.Ad[d].xc(k);(a=a.data)&&this.na.xc(a,b)}nh(a){if(this.Be){var b=ij(this);a.instance=b;var d=this.g;(d=d.Nb&&!mj(d.Da()))&&Iy.BE();b.dispatchEvent(a);d&&Iy.aD()}}};"use strict";const az=self.B;function yn(a){let b;b=0|Number(0!==(a.ea&8388608))<<8;b|=Number(kq(a))<<7;b|=Number(0!==(a.ea&32768))<<6;b|=Number(a.Hu())<<5;b|=Number(0!==(a.ea&16384))<<4;b|=Number(fq(a))<<3;b|=Number(cq(a))<<2;b|=Number(bz(a))<<1;return b|=Number(cz(a))<<0} function dq(a){return 0===a.iC?Number.EPSILON:a.iC}function gq(a){return 0===a.fC?Number.EPSILON:a.fC}function dz(a,b){a.Hl=a.xb.Gc();a.hC=a.Hl;a.pc=b;a.KB=b?b.ua():0}function ez(a){a.Xe()&&a.Sk&&1!==a.Es.length&&a.Es.sort((b,d)=>{b=a.Sk.get(b.ba());d=a.Sk.get(d.ba());return az.Ic(b)&&az.Ic(d)?b-d:0})} function fz(a){if(cq(a.xb)){var b=a.pc;a=b.N();let d=dq(b.Na);0===a&&(a=Number.EPSILON);return d===Number.EPSILON&&a===Number.EPSILON?1:d===Number.EPSILON&&a!==Number.EPSILON&&(b=b.ba().na,b.yh())?1+a/b.Fg():a/d}return 1}function gz(a){if(fq(a.xb)){var b=a.pc;a=b.M();let d=gq(b.Na);0===a&&(a=Number.EPSILON);return d===Number.EPSILON&&a===Number.EPSILON?1:d===Number.EPSILON&&a!==Number.EPSILON&&(b=b.ba().na,b.yh())?1+a/b.Eg():a/d}return 1}function hz(a,b){return a.Es.map(d=>jz(d,d,b))} function jz(a,b,d){a=a.ba();const c={};c.uid=a.Ab;let e="";cz(b)&&(e+="x");bz(b)&&(e+="y");cq(b)&&(e+="w");fq(b)&&(e+="h");0!==(b.ea&16384)&&(e+="a");0!==(b.ea&32768)&&(e+="z");b.Hu()&&(e+="d");kq(b)&&(e+="o");0!==(b.ea&8388608)&&(e+="v");c.f=e;c.offsets={x:b.X,y:b.R,z:b.wd,w:b.Re,h:b.Le,a:b.Ya};c.data=kz(a);c.oci=a.F().Ja();"state"===d?(c.inst=a.kd(),c.instIndex=NaN):(c.instIndex=a.F().pa().indexOf(a),c.inst=null);return c} function kz(a){let b=a.m().Z().zG.get(a.Ab);if(!b)return null;b=JSON.parse(JSON.stringify(b));const d=[];for(const c of[...a.ue()]){const e=c.m();d.push([e.Fc().bb,e.Z().Ja(),c.Ab,yn(e),c.F().wc()?1:0,Rj(e),kz(c)])}az.Uj(b[0][14])?b[0][14][1]=d:(b[0][14]=[],b[0][14][0]=511,b[0][14][1]=d,b[0][14][2]=Rj(a.m()));return b}function lz(a,b,d){a.vg=b;a.Sk=d} function mz(a){const b={};b.Hr=a.includes("x");b.Ir=a.includes("y");b.Ep=a.includes("w");b.Dp=a.includes("h");b.Er=a.includes("a");b.Jr=a.includes("z");b.ju=a.includes("d");b.Fr=a.includes("o");b.Gr=a.includes("v");return b}function nz(a,b){if(az.Ic(a.instIndex))return om(b,a.oci).wB[a.instIndex];if(az.ki(a.inst))return JSON.parse(a.inst);if(a.inst)return a.inst}function oz(a,b,d,c,e=!0){a.xb.Ij(b,mz(d.f));e&&(c.has(b)||pz(b,d.offsets),c.add(b));ez(a)} function qz(a,b){return a.filter(d=>d.F().qa()===b.qa()).length}function rz(a,b){if(az.Ic(b.oci)){var d=a.xb;a=d.I();if(b.data)d=tm(a,b.data,d.Z(),!1,0,0,!1,!0);else{const c=om(a,b.oci);d=jj(a,c,d.Z(),0,0,!0)}if(d)return b=nz(b,a),d.xc(b),b=d.m(),tl(b.Z(),d,!0),b}} az.aU=class extends az.ta{constructor(a){super();this.xb=a;this.pc=null;this.Es=[];this.iC=a.N();this.fC=a.M();this.Rt=this.Qt=1;this.KB=0;this.Hl=1;this.hC=a.Gc();this.Sk=this.vg=null}j(){this.Sk=this.vg=this.pc=null;az.D(this.Es)}Ea(){return this.pc}Xe(){return 0<this.Es.length}ue(){return this.Es}ra(a){var b=this.iC,d=this.fC,c=this.Qt,e=this.Rt,g=this.KB,k=this.Hl,m=this.hC;var n=this.pc&&this.pc.ba()&&!Go(this.pc.ba())?jz(this.pc,this.xb,a):null;return{sw:b,sh:d,sx:c,sy:e,psa:g,oo:k,so:m,p:n, c:hz(this,a)}}ya(a){this.iC=a.sw;this.fC=a.sh;this.Qt=a.sx;this.Rt=a.sy;this.KB=a.psa;this.Hl=a.oo;this.hC=a.so}nm(a){const b=this.xb,d=b.I(),c=new Set;if(a.p&&!this.pc){var e=Fo(d,a.p.uid);if(e){var g=e.m();e.BD(this.xb.ba())?this.pc=g:(e.Ij(this.xb.ba(),mz(a.p.f)),c.has(this.xb)||pz(this.xb,a.p.offsets),c.add(this.xb),ez(e.m().Na))}else az.Ic(a.p.oci)&&(e=om(d,a.p.oci),e=jj(d,e,b.Z(),0,0,!0))&&(g=nz(a.p,d),e.xc(g),tl(e.m().Z(),e),e.Ij(b.ba(),mz(a.p.f)),ez(e.m().Na))}e=[];for(var k of a.c)(g=Fo(d, k.uid))&&e.push(g);k=0;for(const q of a.c){if(g=Fo(d,q.uid)){if(this.vg&&this.vg[k]){var m=this.vg[k];if(m.F()!==g.F()){k++;continue}if(Go(m)){k++;continue}g=a.c[k];oz(this,m.m(),g,c,!1);k++;continue}var n=g.F();m=qz(e,n);n=Wy(b.ba(),n).length;if(m===n){if(g=b.ba().Ty(k).m())c.has(g)||pz(g,q.offsets),c.add(g);k++;continue}if(g.Yf()){g=rz(this,q);oz(this,g,q,c);k++;continue}oz(this,g.m(),q,c)}else g=rz(this,q),oz(this,g,q,c);k++}}};"use strict"; const iq=self.B,sz=iq.A(iq.Rect),tz=iq.A(iq.jd),uz=iq.A(iq.Event,"bboxchange",!1),Sp=iq.A(iq.kb,0,0,0,0),Kf=iq.A(iq.Jp),vz=iq.A(iq.kb,1,1,1,1),wz=iq.A(iq.Rect,0,0,-1,-1),xz=iq.A(iq.Rect,0,0,-1,-1),yz=new Set(["absolute","relative"]),zz=[];let Az=!0;const Bz=new WeakMap,Cz=new WeakMap,Dz=new WeakMap; function Pj(a){a.ea|=65554;a.J.$z=!0;a.g.P();yl(a.Hk)&&(Ez(a,a.EF,a.FF,!0),a.ea&=-3,Fz(a));0!==(a.ea&4)&&a.H.tb().dispatchEvent(uz);if(null!==a.Na){a=a.Na.ue();for(let b=0,d=a.length;b<d;++b)Pj(a[b])}}function Qj(a){Gz(a);return a.EF}function Rj(a){Zl(a.Hk);return a.Vi}function Sj(a,b,d){return Qj(a).fh(b,d)&&Hz(a).fh(b,d)?a.Tj()?void 0:Iz(a)?Jz(a).fh(b-a.T(),d-a.U()):!0:!1}function qm(a){const b=a.rx;b!==wz&&(a.Z().Kt.jm(a.H,b,null),a.rx=wz)} function um(a,b,d){b=+b;d=+d;0!==(a.ea&3072)?a.Zj(a.T()+b,a.U()+d):(a.X+=b,a.R+=d)}function fm(a,b,d,c){d&&0!==a.dl()?a=Am(a,lm(a.Z())):0===a.eb()||c?a=Ac(b,Qj(a)):(b=a.Z(),d=hm(a),d>=b.Ve(void 0)/El(b)?a=!1:(Fl(b,d,sz),a=Ac(sz,Qj(a))));return a}function Am(a,b){var d=Qj(a);const c=d.Y,e=d.ma,g=d.V;d=d.ka;const k=hm(a);a=k+a.dl();return Ve(c,g,k,e,d,a,b.FN)&&Ve(c,g,k,e,d,a,b.LO)&&Ve(c,g,k,e,d,a,b.mO)&&Ve(c,g,k,e,d,a,b.lM)&&Ve(c,g,k,e,d,a,b.tH)&&Ve(c,g,k,e,d,a,b.IM)} function hm(a){return a.Z().eb()+a.eb()}function ul(a){a=Cz.get(a);return iq.Ic(a)?a:NaN}function bn(a,b,d){(d=d&&a.Hk!==b)&&qm(a);a.Hk=b;d&&Fz(a);0!==a.eb()&&(a.Hk.um=!0)}function aq(a,b,d=!1){b=+b;d?a.X+=b:cz(a)?a.hg(a.T()+b):a.X+=b}function bq(a,b,d=!1){b=+b;d?a.R+=b:bz(a)?a.Lg(a.U()+b):a.R+=b}function cq(a){return 0!==(a.ea&4096)}function eq(a,b,d){b=+b;d?a.Re+=b:cq(a)?a.gg(a.N()+b):a.Re+=b;jq(a)}function fq(a){return 0!==(a.ea&8192)} function hq(a,b,d){b=+b;d?a.Le+=b:fq(a)?a.Kg(a.M()+b):a.Le+=b;jq(a)}function kq(a){return 0!==(a.ea&4194304)}function Kz(a,b){a.Ik=+b}function Lz(a,b){a.Jk=+b}function ev(a){const b=a.Z();if(Gl(b))return Am(a,lm(b));const d=b.Fc();return fm(a,Il(b),em(d),d.Vg)}function mv(a){Mz(a);return a.OF}function nv(a){Mz(a);return a.YH}function Tp(a,b){cc(a.Za,b)||(Yb(Sp,b),Sp.a=a.Gc(),Nz(a))}function Ww(a){a.tj&&(a.tj.FJ.j(),a.tj.dQ.j(),a.tj=null,Oz(a))} function Xw(a,b,d){b=Math.floor(b);d=Math.floor(d);if(!a.ba().qb().pX)throw Error("object does not support mesh");Ww(a);a.tj={FJ:iq.A(iq.ca.FK,b,d),dQ:iq.A(iq.ca.FK,b,d),jJ:null}}function $w(a){return null!==a.tj}function ax(a){if(!$w(a))throw Error("no mesh");return a.tj.FJ} function Gy(a){if(0!==(a.ea&16)&&a.ji()&&0===(a.ea&256)){var b=Qj(a),d=a.J.lA,c=a.kA;sz.set(d.$j(b.Y),d.ak(b.V),d.$j(b.ma),d.ak(b.ka));c.Ld(sz)||(b=a.H,c===xz?(d.jm(b,null,sz),a.kA=iq.A(iq.Rect,sz)):(d.jm(b,c,sz),c.xa(sz)),a.ea&=-17)}}function Yy(a){a.X=0;a.R=0;a.wd=0;a.Re=0;a.Le=0;a.og=0;a.Ya=0;a.YH=0;a.OF=1;a.Ik=0;a.Jk=0;Pz(a)}function Oy(a){return(a=Bz.get(a))?a.OI:null}function cz(a){return 0!==(a.ea&1024)}function bz(a){return 0!==(a.ea&2048)} function pz(a,b){b&&(a.X=b.x,a.R=b.y,a.wd=b.z,a.Re=b.w,a.Le=b.h,a.Ya=b.a,jq(a),Pj(a))}function Qz(a){a.Na&&(a.Na.j(),a.Na=null)}function Rz(a){a.vg&&(a.vg.length=0);a.vg=null;a.Sk=null;Dz.delete(a);(a=a.Ea())&&!Dz.has(a)&&Rz(a)}function Nz(a){var b=Sp;a.Za.Ld(b)||(a.Za===vz?(a.Za=iq.A(iq.kb,b),a.sq=iq.A(iq.kb,b),ec(a.sq)):dc(b,1,1,1,1)?(a.Za=vz,a.sq=vz):(a.Za.set(b),a.sq.set(b),ec(a.sq)),Pz(a))} function Pz(a){if(Az){var b=a.g.Ra();a.gr&&pf(b,a.gr);var d=0!==(a.ea&524288)?b.cC||"<point>":b.dC||"<default>",c=a.cl(),e=a.sq,g=a.eb();const k=qf(d,c,e,g);let m=b.Lx.get(k);m||(m=Xe.A(Xe.ca.vU,b,d,c,e,g),b.Lx.set(k,m));++m.Gd;a.gr=m}}function Sz(a,b){cq(a)&&0>a.Nn().N()&&(b=iq.Yd(iq.eP(b,a.Nn().ua()+Math.PI)));fq(a)&&0>a.Nn().M()&&(b=iq.eP(b,a.Nn().ua()));return b}function Tz(a){return 0!==(a.ea&16384)&&a.Tn()?iq.Yd(Tz(a.Ea())+a.Ya):a.Ya} function Uz(a){return 0!==(a.ea&16384)?Sz(a,Tz(a.Ea())-a.Na.KB):0}function Vz(a){Pz(a);if(a.Xe()){a=a.ue();for(let b=0,d=a.length;b<d;b++){const c=a[b];0!==(c.ea&32768)&&Vz(c)}}}function jq(a){a.ea|=262144;if(a.Xe()){a=a.ue();for(let b=0,d=a.length;b<d;b++)jq(a[b])}}function Mz(a){const b=a.ea;if(0!==(b&262144)){var d=a.ua();a.YH=Math.sin(d);a.OF=Math.cos(d);a.ea=b&-262145}} function Wz(a){if(a.Xe()){a=a.ue();for(let c=0,e=a.length;c<e;c++){var b=a[c],d=b;b=b.Gc();Yb(Sp,d.Za);Sp.a=b;Nz(d);Wz(d)}}}function Bm(a,b,d){a.ea=d?a.ea|b:a.ea&~b}function Xz(a,b){if(a.BD(b))return!0;for(const d of a.ue())if(Xz(d,b))return!0;return!1}function Yz(a,b){if(!a.Yf())return!1;a=a.Ea();return a===b?!0:Yz(a,b)}function Zz(a,b){b?($z(b,null),$z(a,b)):(a.Na&&dz(a.Na,null),a.Xe()||Qz(a))} function aA(a){if(!a.vg){var b=[...a.children()];b.length&&(a.vg=[],a.Sk=new WeakMap);let d=0;for(const c of b)b=c.ba(),a.vg.push(b),a.Sk.set(b,d),d++}(a=a.Ea())&&aA(a)}function bA(a){aA(a);var b=[...a.children()];for(const d of b)a.kl(d);(b=a.Ea())&&b.kl(a);a.ea&=-12647937}function $z(a,b){a.Na||(a.Na=iq.A(iq.aU,a));b&&dz(a.Na,b)} function Fz(a){const b=a.Z();if(yl(b)&&0===(a.ea&256)){var d=b.Kt,c=Qj(a),e=a.rx;sz.set(d.$j(c.Y),d.ak(c.V),d.$j(c.ma),d.ak(c.ka));e.Ld(sz)||(c=a.H,e===wz?(d.jm(c,null,sz),a.rx=iq.A(iq.Rect,sz)):(d.jm(c,e,sz),e.xa(sz)),b.hB=!1)}}function cA(a){const b=a.kA;b!==xz&&(a.J.lA.jm(a.H,b,null),a.kA=xz)}function dA(a,b){b=!!b;a.ji()!==b&&(Bm(a,8,b),b?Pj(a):cA(a))} function Ez(a,b,d,c){const e=a.T(),g=a.U();var k=a.N(),m=a.M();const n=a.ua();vc(b,e-a.Ik*k,g-a.Jk*m,k,m);if(c&&$w(a)){c=a.tj.FJ;k=Math;m=k.min;var q=c;Gf(q);k=m.call(k,q.PN,0);m=Math;q=m.min;var r=c;Gf(r);m=q.call(m,r.QN,0);q=Math;r=q.max;var w=c;Gf(w);q=r.call(q,w.LN,1);r=Math;w=r.max;var x=c;Gf(x);r=w.call(r,x.MN,1);w=b.width();x=b.height();b.offsetLeft(k*w);b.offsetTop(m*x);b.ma+=+((q-1)*w);b.ka+=+((r-1)*x);Gf(c);a.og=c.NN}0===n?d.$k(b):(b.offset(-e,-g),Cc(d,b,nv(a),mv(a)),d.offset(e,g),d.$I(b)); b.normalize()}function Gz(a){const b=a.ea;0!==(b&2)&&(Ez(a,a.EF,a.FF,!0),a.ea=b&-3)}function Hz(a){Gz(a);return a.FF}function kA(a,b){var d=a.T();a=a.U();d=Math.round(d)-d;a=Math.round(a)-a;if(0===d&&0===a)return b;tz.xa(b);tz.offset(d,a);return tz}function lA(a,b){Bm(a,4,b)}function Oz(a){Bm(a,131072,!0);a=a.cu;null!==a&&(a.width=NaN)}function mA(a,b){a.bC=b;Oz(a);$w(a)&&(a.tj.jJ=null)}function Iz(a){return null!==a.bC||$w(a)} function nA(a,b,d,c,e,g){let k=a.cu;null===k&&(k={OP:iq.A(iq.Jp),width:NaN,height:NaN,angle:NaN},a.cu=k);const m=k.OP;if(k.width===b&&k.height===d&&k.angle===c)return m;var n=a.bC;if($w(a)){const x=a.rh(),z=a.th();var q=ax(a),r=a.tj.jJ;r||(n?(Kf.xa(n),Kf.offset(x,z)):Ic(Kf,Gc),r=Jf(q),a.tj.jJ=r);a=q;n=[];r=r.Wd;for(let G=0,I=r.length;G<I;G+=2){const [J,L]=Lf(a,r[G],r[G+1]);n.push(J,L)}r=n;a=[];n=r[0];q=r[1];let E=n-r.ie(-2),C=q-r.ie(-1);for(let G=0,I=r.length;G<I;G+=2){var w=(G+2)%I;const J=r[w]; w=r[w+1];const L=J-n,ea=w-q,Y=1E-7>Math.abs(ea)&&1E-7>Math.abs(C)&&Math.sign(L)===Math.sign(E);(!(1E-7>Math.abs(L)&&1E-7>Math.abs(E)&&Math.sign(ea)===Math.sign(C)||Y)&&.001<Math.abs(L/E-ea/C)||0==L&&0===ea)&&a.push(n,q);n=J;q=w;E=L;C=ea}6<=a.length&&a.length<r.length&&Df.Md(r,a);Ic(m,r);m.offset(-x,-z);Kc(m,b,d,e,g)}else n?(m.xa(n),Kc(m,b,d,e,g)):Jc(m,Hz(a),-a.T(),-a.U());k.width=b;k.height=d;k.angle=c;return m}function Jz(a){return nA(a,a.N(),a.M(),a.ua(),nv(a),mv(a))} function oA(a){if(!$w(a))throw Error("no mesh");return a.tj.dQ} iq.eV=class extends iq.ta{constructor(a,b){super();this.H=a;this.J=a.F();this.g=a.I();this.Hk=b;this.Vi=-1;this.ea=196635;this.J.qb().Tn()&&(this.ea|=128);this.Jk=this.Ik=this.OF=this.YH=this.Ya=this.og=this.Le=this.Re=this.wd=this.R=this.X=NaN;this.EF=iq.A(iq.Rect);this.FF=iq.A(iq.jd);this.kA=xz;this.rx=wz;this.Qk=this.cu=this.bC=null;this.sq=this.Za=vz;this.Bf=this.gr=null;Cy(this.H.F())&&(this.Bf=iq.A(iq.rS,this.H,this));this.tj=this.gk=this.dj=this.Sk=this.vg=this.Na=null}VE(){this.ea|=256}j(){this.gr&& (pf(this.g.Ra(),this.gr),this.gr=null);this.bC=null;this.cu&&(this.cu.OP.j(),this.cu=null);this.Qk&&(this.Qk.clear(),this.Qk=null);Ww(this);this.Bf&&this.Bf.j();this.Yf()&&this.Ea().kl(this);if(this.Xe()){const a=[...this.ue()];for(const b of a)this.kl(b)}Qz(this);Rz(this);Bz.delete(this);Cz.delete(this);this.dj&&(this.I().tb().removeEventListener("afterload",this.dj),this.dj=null);this.gk&&(this.I().tb().removeEventListener("afterloadinstance",this.gk),this.gk=null);this.Hk=this.g=this.J=this.H= null}xh(a){Az=!1;this.Zj(a[0],a[1]);this.ig(a[2]);this.ac(a[3],a[4]);this.og=0;this.Tn()?this.fe(a[6]):this.Ya=0;rc(Sp,a[7]);Nz(this);this.Ik=+a[8];this.Jk=+a[9];this.$f(a[10]);if(this.Bf){var b=this.Bf,d=a[12],c=0;for(var e of d)b.Dd.push(b.UE(c,e)),++c;b.Fv();b.pi()}a[14]&&Bz.set(this,{OI:a[14][1],NJ:a[14][2]});if(a[15]){d=a[15];Xw(this,d[0],d[1]);b=ax(this);d=d[2];for(let g=0,k=d.length;g<k;++g){c=d[g];for(let m=0,n=c.length;m<n;++m){e=c[m];const q=Hf(b,m,g);q.hg(e[0]);q.Lg(e[1]);q.ig(e[2]);q.ah= e[3];q.dh=e[4]}}}a[16]&&(b=a[16][0],a=a[16][1],d=!!a,c=!d,e=this.g.Pi,d&&e&&kr(e,this.ba(),a),c&&e&&kr(e,this.ba(),b));Az=!0;Pz(this)}I(){return this.g}F(){return this.J}ba(){return this.H}hg(a){a=+a;if(cz(this)){const b=this.Na;a-=this.T();const d=-Uz(this);0===d?this.X+=a/fz(b):(this.X+=Math.cos(d)*a/fz(b),bz(this)&&(this.R+=Math.sin(d)*a/gz(b)))}else this.X=a}T(){if(cz(this)){let a=this.X;const b=this.Na,d=this.Ea(),c=Uz(this);0===c?a*=fz(b):(a=a*fz(b)*Math.cos(c),bz(this)&&(a-=this.R*gz(b)*Math.sin(c))); return d.T()+a}return this.X}Lg(a){a=+a;if(bz(this)){const b=this.Na;a-=this.U();const d=-Uz(this);0===d?this.R+=a/gz(b):(cz(this)&&(this.X-=Math.sin(d)*a/fz(b)),this.R+=Math.cos(d)*a/gz(b))}else this.R=a}U(){if(bz(this)){let a=this.R;const b=this.Na,d=this.Ea(),c=Uz(this);0===c?a*=gz(b):(a=a*gz(b)*Math.cos(c),cz(this)&&(a+=this.X*fz(b)*Math.sin(c)));return d.U()+a}return this.R}Zj(a,b){a=+a;b=+b;if(0!==(this.ea&3072)){const c=cz(this),e=bz(this),g=this.Na,k=a-this.T(),m=b-this.U();var d=-Uz(this); if(0===d)this.X=c?this.X+k/fz(g):a,this.R=e?this.R+m/gz(g):b;else{const n=Math.sin(d);d=Math.cos(d);this.X=c?e?this.X+(d*k-n*m)/fz(g):this.X+d*k/fz(g):a;this.R=e?c?this.R+(n*k+d*m)/gz(g):this.R+d*m/gz(g):b}}else this.X=a,this.R=b}ig(a){a=+a;0!==(this.ea&32768)&&(a-=this.Ea().eb());this.wd!==a&&(this.wd=a,Vz(this),a=this.Z(),0!==this.wd&&(a.um=!0),zl(a))}eb(){return 0!==(this.ea&32768)?this.Ea().eb()+this.wd:this.wd}gg(a){a=+a;if(cq(this)){const b=this.N();this.Re=0===b?Number.EPSILON:a/b*this.Re}else this.Re= a;jq(this)}N(){if(cq(this)){const a=this.Ea(),b=a.N();return dq(a.Na)===Number.EPSILON?(dq(this.Na)+b)*this.Re:b*this.Re}return this.Re}Kg(a){a=+a;if(fq(this)){const b=this.M();this.Le=0===b?Number.EPSILON:a/b*this.Le}else this.Le=a;jq(this)}M(){if(fq(this)){const a=this.Ea(),b=a.M();return gq(a.Na)===Number.EPSILON?(gq(this.Na)+b)*this.Le:b*this.Le}return this.Le}ac(a,b){a=+a;b=+b;if(cq(this)){const d=this.N();this.Re=0===d?Number.EPSILON:a/d*this.Re}else this.Re=a;fq(this)?(a=this.M(),this.Le=0=== a?Number.EPSILON:b/a*this.Le):this.Le=b;jq(this)}dl(){return this.og}wD(){if(this.Yf()){const a=this.Na;return Math.min(fz(a),gz(a))}return 1}Tn(){return 0!==(this.ea&128)}fe(a){a=+a;this.Tn()&&(0!==(this.ea&16384)&&(a-=this.Ea().ua()),a=iq.Yd(a),this.Ya!==a&&(this.Ya=a,jq(this)))}ua(){return 0!==(this.ea&16384)&&this.Tn()?Sz(this,iq.Yd(Tz(this.Ea())+this.Ya)):this.Ya}rh(){return this.Ik}th(){return this.Jk}bg(a){a=iq.$(+a,0,1);if(kq(this)){if(this.Na.Hl===a)return;this.Na.Hl=a;a=this.Gc()}else if(this.Za.a=== a)return;Yb(Sp,this.Za);Sp.a=a;Nz(this);Wz(this)}Gc(){return kq(this)?this.Ea().Gc()*this.Na.Hl:this.Za.a}uD(){return this.sq}Hu(){return 0!==(this.ea&512)}Ij(a,b){if(a!==this&&!a.Yf()&&!Xz(this,a)&&!Yz(this,a)){var d=a.T(),c=a.U(),e=a.N(),g=a.M(),k=a.ua(),m=a.eb(),n=a.Gc();Zz(a,this);Bm(a,1024,b.Hr);Bm(a,2048,b.Ir);Bm(a,4096,b.Ep);Bm(a,8192,b.Dp);Bm(a,16384,b.Er);Bm(a,32768,b.Jr);Bm(a,4194304,b.Fr);Bm(a,8388608,b.Gr);Bm(a,512,b.ju);b.Hr&&(a.X=d-this.T(),b.Ep&&(a.X/=this.N()/dq(this.Na)));b.Ir&&(a.R= c-this.U(),b.Dp&&(a.R/=this.M()/gq(this.Na)));b.Ep&&(d=this.N(),0===d||d===Number.EPSILON?(a.Re=1,a.Na.Qt=1):(a.Re=e/this.N(),a.Na.Qt=a.Re));b.Dp&&(e=this.M(),0===e||e===Number.EPSILON?(a.Le=1,a.Na.Rt=1):(a.Le=g/this.M(),a.Na.Rt=a.Le));b.Er&&(a.Ya=k-this.ua());b.Jr&&(a.wd=m-this.eb());b.Fr&&(a.Na.Hl=n);b.Gr&&a.fg(this.Rd());this.Na.ue().push(a);Pj(this);Wz(this)}}kl(a){if(a.Ea()===this){var b=a.T(),d=a.U(),c=a.N(),e=a.M(),g=a.ua(),k=a.eb(),m=a.Gc();Zz(a,null);a.ea&=-12647937;a.Zj(b,d);a.ac(c,e);a.fe(g); a.ig(k);a.bg(m);b=this.Na.ue();d=b.indexOf(a);-1!==d&&b.splice(d,1);0!==b.length||this.Yf()||Qz(this);a.Xe()||Qz(a);Pj(this)}}Yf(){return null!==this.Ea()}Ea(){const a=this.Na;return null!==a?a.Ea():null}Nn(){let a=this;for(;a.Yf();)a=a.Ea();return a}*ry(){let a=this.Ea();for(;a;)yield a,a=a.Ea()}BD(a){return this.ue().includes(a)}Xe(){const a=this.Na;return null!==a?a.Xe():!1}ue(){const a=this.Na;return null!==a?a.ue():zz}children(){return this.ue()}*Cj(){for(const a of this.children())yield a,yield*a.Cj()}Uy(){return this.ue().length}Qy(){return[...this.Cj()].length}Ty(a){const b= this.ue();a=Math.floor(+a);return 0>a||a>=b.length?null:b[a]}Vr(){return this.Za===vz}$f(a){a|=0;if(0>a||31<a)throw new RangeError("invalid blend mode");this.cl()!==a&&(this.ea=this.ea&-2080374785|a<<26,Pz(this))}cl(){return(this.ea&2080374784)>>26}Z(){return this.Hk}Fc(){return this.Z().Fc()}Rd(){return 0!==(this.ea&1)}fg(a){Bm(this,1,a);if(this.Xe())for(const b of this.ue())0!==(b.ea&8388608)&&b.fg(a)}ji(){return 0!==(this.ea&8)}vE(a,b){Bm(this,32,a);this.Qk&&this.Qk.clear();if(b.trim()){this.Qk|| (this.Qk=new Set);for(const d of b.split(" "))d&&this.Qk.add(d.toLowerCase())}else this.Qk=null}zL(a,b,d){a=Math.floor(a);b=Math.floor(b);var c=d.mode||"absolute";if(!yz.has(c))throw Error("invalid mode");c="relative"===c;let e=d.x,g=d.y;const k=d.By;let m="number"===typeof d.gQ?d.gQ:c?0:-1;d="number"===typeof d.iQ?d.iQ:c?0:-1;if(!$w(this))return!1;const n=ax(this),q=Hf(n,a,b);if(null===q)return!1;let r=!1;"number"===typeof k&&q.eb()!==k&&(q.ig(k),r=!0);c&&(e+=a/(n.yl-1),g+=b/(n.Ql-1));-1!==m||c? (c&&(m+=a/(n.yl-1)),m=iq.$(m,0,1)):m=q.ah;-1!==d||c?(c&&(d+=b/(n.Ql-1)),d=iq.$(d,0,1)):d=q.dh;if(q.T()===e&&q.U()===g&&q.ah===m&&q.dh===d)return r;q.hg(e);q.Lg(g);q.ah=m;q.dh=d;Oz(this);return!0}Tj(){return this.H.Tj()}Ru(){return 0!==(this.ea&64)}ra(a){const b={x:this.T(),y:this.U(),w:this.N(),h:this.M(),l:this.Z().bb,zi:Rj(this)};0!==this.eb()&&(b.ze=this.eb());0!==this.ua()&&(b.a=this.ua());this.Vr()||(b.c=this.Za.toJSON());.5!==this.rh()&&(b.oX=this.rh());.5!==this.th()&&(b.oY=this.th());0!== this.cl()&&(b.bm=this.cl());this.Rd()||(b.v=this.Rd());this.ji()||(b.ce=this.ji());0!==(this.ea&4)&&(b.be=0!==(this.ea&4));this.Bf&&(b.fx=this.Bf.ra());const d=0!==(this.ea&32);d&&(b.sfi=d);this.Qk&&(b.sft=[...this.Qk].join(" "));this.Na&&"visual-state"!==a&&(b.sgi=this.Na.ra(a),Bz.has(this)&&(b.sgcd=Bz.get(this).OI,b.sgzid=Bz.get(this).NJ));$w(this)&&(b.mesh=ax(this).kd());return b}Cv(){Rz(this);bA(this);$z(this,null);this.Na&&lz(this.Na,this.vg,this.Sk)}bo(a){"visual-state"!==a&&bA(this)}ya(a,b){Az= !1;this.hg(a.x);this.Lg(a.y);this.gg(a.w);this.Kg(a.h);this.Vi=a.zi|0;this.ig(a.hasOwnProperty("ze")?a.ze:0);this.fe(a.hasOwnProperty("a")?a.a:0);a.hasOwnProperty("c")?rc(Sp,a.c):a.hasOwnProperty("o")?(Yb(Sp,this.Za),Sp.a=a.o):Vb(Sp,1,1,1,1);Nz(this);Kz(this,a.hasOwnProperty("oX")?a.oX:.5);Lz(this,a.hasOwnProperty("oY")?a.oY:.5);this.$f(a.hasOwnProperty("bm")?a.bm:0);this.fg(a.hasOwnProperty("v")?a.v:!0);dA(this,a.hasOwnProperty("ce")?a.ce:!0);lA(this,a.hasOwnProperty("be")?a.be:!1);this.vE(a.hasOwnProperty("sfi")? a.sfi:!1,a.hasOwnProperty("sft")?a.sft:"");this.Bf&&a.hasOwnProperty("fx")&&this.Bf.ya(a.fx);if(!a.hasOwnProperty("sgi")&&"visual-state"!==b&&this.vg)for(const d of this.vg)Go(d)||zn(this.g,d);if(a.hasOwnProperty("sgi")&&"visual-state"!==b){$z(this,null);const d=this.Na,c=a.sgi;d.ya(c);lz(d,this.vg,this.Sk);Dz.set(this,!0);const e=this.I().tb();this.dj&&e.removeEventListener("afterload",this.dj);this.gk&&e.removeEventListener("afterloadinstance",this.gk);this.gk=this.dj=null;this.dj=()=>{this.dj&& e.removeEventListener("afterload",this.dj);this.gk&&e.removeEventListener("afterloadinstance",this.gk);this.dj=this.gk=null;0===(this.ea&256)&&(d.nm(c),lz(d,null,null),Rz(this),Pj(this))};this.gk=g=>{g.instance===this.ba()&&this.dj(g,{taa:!0})};e.addEventListener("afterload",this.dj);e.addEventListener("afterloadinstance",this.gk);a.sgcd&&iq.Ic(a.sgzid)&&Bz.set(this,{OI:a.sgcd,NJ:a.sgzid})}a.hasOwnProperty("mesh")?(a=a.mesh,Xw(this,a.cols,a.rows),ax(this).xc(a)):Ww(this);Pj(this);Az=!0;Pz(this)}}; "use strict";const pA=self.B; pA.RJ=class extends pA.ta{constructor(a,b){super();const d=a.I(),c=d.Xq,e=Vt(d,b[1]);if(!c.AF.has(e)){const g=Vt(c.g,b[1]);if(!g)throw Error("missing behavior");const k=ey.A(g,{mf:c.g});k.Jc();c.KV.push(k);c.AF.set(g,k);!c.uO&&ey.La.KY&&k instanceof ey.La.KY?c.uO=k:!c.tN&&ey.La.tY&&k instanceof ey.La.tY&&(c.tN=k)}this.g=d;this.J=a;this.jk=c.AF.get(e)||null;this.ib=null;this.xw=e.Instance;this.bb=b[2];this.Oa=b[0];this.Jw=this.g.Qj(b[3]);this.ib=pA.A(e.oi,this);this.Jc()}static Qa(a,b){return pA.A(pA.RJ, a,b)}j(){this.jk=this.g=null;this.ib.j();this.xw=this.ib=null}Jc(){this.ib.Jc()}I(){return this.g}F(){return this.J}Cg(){return this.jk}qa(){return this.Oa}Qj(){return this.Jw}};"use strict";const qA=self.B,rA=self.iz; qA.Fy=class extends qA.ta{constructor(a){super();this.g=a.mf;this.Td=a.JI;this.jk=this.Td.Cg();this.H=a.instance;this.oa=a.index;this.Be=this.na=null;this.jk.ri(this.H)}j(){this.Be&&(this.Be.yv(),this.Be=null);this.jk.iq(this.H);this.na.j();this.H=this.jk=this.Td=this.g=this.na=null}Mz(a){if(this.na)throw Error("already got sdk instance");this.na=qA.A(this.Td.xw,this,a)}I(){return this.g}oh(){return this.Td}Cg(){return this.jk}kg(){return this.oa}zz(){this.na.zz()}kd(){return this.na.kd()}xc(a){return this.na.xc(a)}static AE(a, b){var d=a.H,c=b.H;const e=d.F().Ja(),g=c.F().Ja();if(e!==g)return e-g;d=d.gO;c=c.gO;return d!==c?d-c:a.Nv.kg()-b.Nv.kg()}Tr(){var a;if(!(a=this.Be)){const b=(a=this.na.Gg())||rA;rA.si(this);this.Be=new b;rA.si(null);if(a&&!(this.Be instanceof rA))throw new TypeError(`script interface class '${a.name}' does not extend the right base class '${rA.name}'`);a=this.Be}return a}};"use strict";const sA=self.B;function Lo(a,b){return a.wA.get(b.toLowerCase())||null} function tA(a,b){b=Math.floor(+b);if(0>b||b>=a.ti.length)throw new RangeError("invalid effect type index");return a.ti[b]} sA.Kp=class extends sA.ta{constructor(a,b){super();this.xb=a;this.ti=[];this.Fh=[];this.wA=new Map;this.Dd=[];this.Rg=[];this.qF=new Set;this.Gt=!0;for(const d of b)a=sA.A(sA.bK,this,d,this.ti.length),this.ti.push(a),this.wA.set(a.qa().toLowerCase(),a),3<=d.length&&this.Dd.push(this.UE(a,d[2]));this.I().dM.push(this)}j(){for(const a of this.Rg)a.j();sA.D(this.Rg);sA.D(this.ti);sA.D(this.Fh);this.wA.clear();sA.D(this.Dd);this.xb=null}pl(a){for(const b of this.qF)b.pl(a)}UE(a,b){a.Mb=!!b[0];a=b.slice(1); for(let d=0,c=a.length;d<c;++d)if(b=a[d],Array.isArray(b)){const e=sA.A(sA.kb);rc(e,b);a[d]=e}return a}I(){return this.xb.I()}pi(){sA.D(this.Fh);let a=!0;for(const b of this.ti)b.Mb&&(this.Fh.push(b),b.wh().Gt||(a=!1));this.Gt=a}Wi(){return this.ti}Xr(a){return tA(this,a).Mb}wL(a,b){tA(this,a).Mb=!!b}Ru(){return 0<this.Fh.length}nK(a){return this.Dd[a]}Pz(a){return a<this.Rg.length?this.Rg[a]:this.Dd[a]}mK(a,b){if(0>a||a>=this.Dd.length)return null;a=this.Dd[a];return 0>b||b>=a.length?null:a[b]}cv(a, b,d){if(0>a||a>=this.Dd.length)return!1;const c=this.Dd[a];if(0>b||b>=c.length)return!1;const e=c[b];if(e instanceof sA.kb){if(cc(e,d))return!1;Yb(e,d)}else{if(e===d)return!1;c[b]=d}a<this.Rg.length&&this.Rg[a].sE(b,d);return!0}Fv(){const a=this.Dd,b=this.Rg;for(let d=0,c=Math.min(a.length,b.length);d<c;++d){const e=b[d],g=a[d];for(let k=0,m=g.length;k<m;++k)e.sE(k,g[k])}}static rL(a){return a&&a instanceof sA.kb?{t:"color",v:a.toJSON()}:a}static EK(a){if(null===a)return NaN;if("object"===typeof a){if("color"=== a.t){const b=sA.A(sA.kb);rc(b,a.v);return b}throw Error("invalid effect parameter type");}return a}kd(){return this.ti.map(a=>({name:a.qa(),active:a.Mb,params:this.Dd[a.Ja()].map(sA.Kp.rL)}))}xc(a){for(const b of a)if(a=Lo(this,b.name))a.Mb=!!b.active,this.Dd[a.Ja()]=b.params.map(sA.Kp.EK);this.pi();this.Fv()}};"use strict";const zy=self.B; zy.bK=class extends zy.ta{constructor(a,b,d){super();this.Sa=a;this.ge=b[0];this.Oa=b[1];this.oa=d;this.Xd=null;this.Mb=!0}j(){this.Xd=this.Sa=null}pl(a){a=a.Ax.get(this.ge)||null;if(!a)throw Error("failed to find shader program '"+this.ge+"'");this.Xd=a}qa(){return this.Oa}bF(a){this.oa=a}Ja(){return this.oa}I(){return this.Sa.I()}wh(){return this.Xd}};"use strict";const uA=self.B; function Zy(a){for(const e of a.Sa.Wi()){var b=a.Dd,d=b.push,c=e;const g=[];for(let k=0,m=c.Xd.nr.length;k<m;++k){const n=qg(c.Xd,k);if("float"===n||"percent"===n)g.push(0);else if("color"===n)g.push(zy.A(zy.kb,1,1,1,1));else throw new TypeError("unknown effect parameter type");}d.call(b,g)}a.Fv()} uA.rS=class extends uA.ta{constructor(a,b){super();this.H=a;this.bP=b;this.Sa=a.F().Sa;this.cy=this.vH=!0;this.aP=this.$O=this.YO=!1;this.Qg=uA.A(uA.ca.Uf,a.I().da.aw,{HC:(d,c)=>{c=c.vo;var e=c.m();d.ni(e.uD());e=hm(e);d.Gm=e;d.Pg=null;c.pf(d);d.Gm=0;d.Pg=null},yP:d=>{const c=d.Xy(),[e,g]=d.Wy();return{aQ:c,bQ:e,$P:g}},LC:d=>this.Pz(d)});this.fo=[];this.Fh=[];this.Gt=!0;this.Dd=[];this.Rg=[];this.pl(a.I().Ra());for(let d=0,c=this.Sa.Wi().length;d<c;++d)this.fo.push(!0);this.pi();this.Sa.qF.add(this)}j(){this.Sa.qF.delete(this); for(const a of this.Rg)a&&a.j();uA.D(this.Rg);this.Qg.j();this.Qg=null;uA.D(this.fo);uA.D(this.Fh);uA.D(this.Dd);this.Sa=this.H=null}pl(){}UE(a,b){this.fo[a]=b[0];a=b.slice(1);for(let d=0,c=a.length;d<c;++d)if(b=a[d],Array.isArray(b)){const e=uA.A(uA.kb);rc(e,b);a[d]=e}return a}Oj(){this.vv();return this.Qg}I(){return this.H.I()}pi(){uA.D(this.Fh);const a=this.bP,b=this.Sa.Wi(),d=this.Fh,c=this.fo;let e=!0;for(let g=0,k=b.length;g<k;++g)if(c[g]){const m=b[g];d.push(m);m.wh().Gt||(e=!1)}this.Gt=e; Bm(a,64,!!d.length);this.vH=!0}vv(){const a=this.H;var b=this.bP;const d=b.Vr(),c=0<b.dl();b=0!==b.ua()||0>b.N()||0>b.M();const e=a.nz();if(this.vH||d!==this.cy||c!==this.YO||b!==this.$O||e!==this.aP||this.Qg.cx)Ji(this.Qg,this.Fh.map(g=>g.wh()),{ku:this.Fh.map(g=>g.Ja()),WI:!d||a.Wu(),AP:c,OC:e,FP:b}),this.vH=!1,this.cy=d,this.YO=c,this.$O=b,this.aP=e}nK(a){return this.Dd[a]}Pz(a){return a<this.Rg.length?this.Rg[a]:this.Dd[a]}mK(a,b){if(0>a||a>=this.Dd.length)return null;a=this.Dd[a];return 0>b|| b>=a.length?null:a[b]}cv(a,b,d){if(0>a||a>=this.Dd.length)return!1;const c=this.Dd[a];if(0>b||b>=c.length)return!1;const e=c[b];if(e instanceof uA.kb){if(cc(e,d))return!1;Yb(e,d)}else{if(e===d)return!1;c[b]=d}a<this.Rg.length&&this.Rg[a].sE(b,d);return!0}Fv(){const a=this.Dd,b=this.Rg;for(let d=0,c=b.length;d<c;++d){const e=b[d],g=a[d];for(let k=0,m=g.length;k<m;++k)e.sE(k,g[k])}}Xr(a){return this.fo[a]}wL(a,b){this.fo[a]=!!b}Wi(){return this.Sa.Wi()}ra(){return this.Sa.Wi().map(a=>({name:a.qa(), active:this.fo[a.Ja()],params:this.Dd[a.Ja()].map(sA.Kp.rL)}))}ya(a){for(const b of a)if(a=Lo(this.Sa,b.name))this.fo[a.Ja()]=b.active,this.Dd[a.Ja()]=b.params.map(sA.Kp.EK);this.pi();this.Fv()}};"use strict";const vA=self.B,wA=[],xA=vA.A(vA.Jp),yA=vA.A(vA.Jp),zA=vA.A(vA.jd);vA.A(vA.Rect);vA.A(vA.Rect);let AA=null,BA=null,CA=null; function yw(a,b,d,c){a=a?1!==a.df||1!==a.ef:!1;if(b.Pa)for(const e of b.Km)a||e.Hv?vA.Sl(c,e.pa()):(Fy(e),e.lA.Bz(d,c));else a||b.Hv?vA.Sl(c,b.pa()):(Fy(b),b.lA.Bz(d,c))} function zw(a,b){if(!a||!b||a===b)return!1;a=a.m();b=b.m();if(!a.ji()||!b.ji())return!1;var d=a.Z(),c=b.Z();if(d===c||d.df===c.df&&d.ef===c.ef&&d.Vc===c.Vc&&d.Ok===c.Ok&&d.wf===c.wf&&d.uh()===c.uh()&&d.vh()===c.vh())b=DA(a,b);else if(d=a.Tj(),c=b.Tj(),d&&!c)b=EA(a,b);else if(c&&!d)b=EA(b,a);else if(c||d)b=!1;else{c=a.Z();d=b.Z();xA.xa(Jz(a));yA.xa(Jz(b));var e=xA.Wd;for(let g=0,k=e.length;g<k;g+=2){const m=g+1,n=e[m],[q,r]=nm(c,e[g]+a.T(),n+a.U());e[g]=q;e[m]=r}a=yA.Wd;for(let g=0,k=a.length;g<k;g+= 2){c=g+1;e=a[c];const [m,n]=nm(d,a[g]+b.T(),e+b.U());a[g]=m;a[c]=n}xA.Qm=!0;yA.Qm=!0;b=Lc(xA,yA,0,0)}return b}function Dw(a,b,d,c){for(const [e,g]of a.Jt){if(b===e)a=g;else if(b===g)a=e;else continue;Lw(a,d)&&(c.includes(a)||c.push(a))}}function Ew(a,b,d){if(!a.Jt.length)return!1;for(const [c,e]of a.Jt)if(b===c&&d===e||b===e&&d===c)return!0;return!1} function DA(a,b){if(!Ac(Qj(a),Qj(b))||!Ec(Hz(a),Hz(b))||a.Tj()&&b.Tj())return!1;if(a.Tj())return FA(a,b);if(b.Tj())return FA(b,a);if(!Iz(a)&&!Iz(b))return!0;const d=Jz(a),c=Jz(b);return Lc(d,c,b.T()-a.T(),b.U()-a.U())} function FA(a,b,d,c,e,g,k){g=void 0!==g?g:Qj(b);const m=a.T(),n=a.U();var q=a.ba().na;d=void 0!==d?d:b.T();c=void 0!==c?c:b.U();a=Iz(b);k=void 0!==k?k:Hz(b);q.B1(g,wA);for(let x=0,z=wA.length;x<z;++x){var r=wA[x];q=r.JR();if(!(q.ma+m<g.Y||q.ka+n<g.V||q.Y+m>g.ma||q.V+n>g.ka)&&(zA.$k(q),zA.offset(m,n),Ec(zA,k)))if(a){var w=void 0!==e?e:Jz(b);let E=d,C=c;void 0!==e&&(E=b.T(),C=b.U());if(r=r.qK()){if(Lc(r,w,E-(m+q.Y),C-(n+q.V)))return vA.D(wA),!0}else if(Jc(xA,zA,0,0),Lc(xA,w,E,C))return vA.D(wA),!0}else if(w= r.qK()){if(Jc(xA,k,0,0),Lc(w,xA,-(m+q.Y),-(n+q.V)))return vA.D(wA),!0}else return vA.D(wA),!0}vA.D(wA);return!1} function EA(a,b){var d=a.Z(),c=b.Z();AA||(AA=vA.A(vA.Jp));BA||(BA=vA.A(vA.Rect));CA||(CA=vA.A(vA.jd));var e=b.T(),g=b.U();const [k,m]=nm(c,e,g),[n,q]=Hl(d,k,m);d=n-e;g=q-g;BA.xa(Qj(b));BA.offset(d,g);if(!Ac(Qj(a),BA))return!1;CA.xa(Hz(b));CA.offset(d,g);if(!Ec(Hz(a),CA))return!1;AA.xa(Jz(b));c=AA.Wd;for(let r=0,w=c.length;r<w;r+=2)e=r+1,c[r]+=d,c[e]+=g;AA.Qm=!0;return FA(a,b,n,q,AA,BA,CA)} function GA(a,b,d,c){const e=b.W();var g=a.g.Vb();if(!g)throw Error("cannot call outside event");g=g.Me;const k=new Map,m=w=>{let x=k.get(w);"undefined"===typeof x&&(x=Cl(w),k.set(w,x));return x};if(e.jb){e.jb=!1;vA.D(e.G);for(var n of b.pa()){a=n.m();var q=a.Z(),r=!1;if(m(q)&&ev(a)){const [w,x]=Hl(q,d,c,hm(a));r=Sj(a,w,x)}r?e.G.push(n):g&&e.ub.push(n)}}else{n=!1;g?0===a.g.Vf().Ze&&!e.ub.length&&e.G.length?a=e.G:(a=e.ub,n=!0):a=e.G;q=0;for(let w=0,x=a.length;w<x;++w){r=a[w];const z=r.m(),E=z.Z(); let C=!1;if(m(E)&&ev(z)){const [G,I]=Hl(E,d,c,hm(z));C=Sj(z,G,I)}C?n?e.G.push(r):a[q++]=r:n?a[q++]=r:g&&e.ub.push(r)}a.length=q}Lt(b);k.clear();return qr(e)}vA.UQ=class extends vA.ta{constructor(a){super();this.g=a;this.Jt=[]}j(){this.g=null}};"use strict";const HA=self.B; HA.rU=class extends HA.ta{constructor(a,b){super();this.JF=a;this.IF=b;this.mk=HA.A(HA.Zu)}j(){this.mk.j();this.mk=null}Kn(a,b,d){let c=this.mk.S(a,b);return c?c:d?(c=HA.A(HA.RR,this,a,b),this.mk.Set(a,b,c),c):null}$j(a){a=Math.floor(a/this.JF);return isFinite(a)?a:0}ak(a){a=Math.floor(a/this.IF);return isFinite(a)?a:0}jm(a,b,d){if(b)for(let c=b.Y,e=b.ma;c<=e;++c)for(let g=b.V,k=b.ka;g<=k;++g){if(d&&d.fh(c,g))continue;const m=this.Kn(c,g,!1);m&&(m.Ah(a),m.Qn()&&this.mk.Jn(c,g))}if(d)for(let c=d.Y, e=d.ma;c<=e;++c)for(let g=d.V,k=d.ka;g<=k;++g)b&&b.fh(c,g)||this.Kn(c,g,!0).lz(a)}Bz(a,b){let d=this.$j(a.Y);const c=this.ak(a.V),e=this.$j(a.ma);a=this.ak(a.ka);if(isFinite(e)&&isFinite(a))for(;d<=e;++d)for(let g=c;g<=a;++g){const k=this.Kn(d,g,!1);k&&k.oD(b)}}};"use strict";const IA=self.B;IA.RR=class extends IA.ta{constructor(a,b,d){super();this.X=b;this.R=d;this.G=IA.A(IA.cD)}j(){this.G.j();this.G=null}Qn(){return this.G.Qn()}lz(a){this.G.$c(a)}Ah(a){this.G.Jn(a)}oD(a){IA.Sl(a,Pc(this.G))}};"use strict"; const JA=self.B;JA.L4=class{constructor(){this.rect=new JA.Rect;this.ci=0}bd(){}Set(a,b,d,c){this.rect.set(a,b,d,c);this.rect.normalize();this.ci=0;return this}};"use strict";const KA=self.B,LA=new Set("off crop scale-inner scale-outer letterbox-scale letterbox-integer-scale".split(" ")),MA=new Set(["high","low"]),NA=self.Zk.Bn,OA=NA.create(),PA=KA.A(KA.jd),Af=KA.A(KA.Rect); function ym(a,b){if(!a.Ra().sc)return null;let d=a.fH.get(b);d||(d={name:b.qa(),HJ:KA.A(KA.ca.LL,a.Se),EC:0,IP:0},a.fH.set(b,d));return d.HJ}function QA(a,b,d){a.FI=b;a.DI=d}async function RA(a){await a.Se.QD();await a.pl();await SA(a.g);console.log("[Construct] WebGL context restored")}async function TA(a,b){b={powerPreference:a.mG,depth:a.g.vn,failIfMajorPerformanceCaveat:b,Tca:a.g.vC,m$:a.g.RO,NI:a.g.uI,nJ:a.FI,VI:a.DI};a.$h=KA.A(KA.ca.G9);await a.$h.Qa(a.lk,b)} function UA(a,b){b&&"string"===typeof b.message&&b.message.startsWith("renderer-unavailable")||console.error(`Error creating ${a} renderer: `,b)} async function VA(a,b){b={powerPreference:a.mG,tP:!0,depth:a.g.vn,NI:a.g.uI,failIfMajorPerformanceCaveat:b,nJ:a.FI,VI:a.DI};a.mN&&(b.hJ=1);"Android"===KA.O.Sd&&"Chromium"===KA.O.kh&&75>KA.O.xu&&(console.warn("[Construct] Disabling WebGL 2 because this device appears to be affected by crbug.com/934823. Install software updates to avoid this."),b.hJ=1);"standard"===a.g.Fs?b.alpha=!0:(b.alpha=!1,b.gJ=!0);a.Se=KA.A(KA.ca.cV,a.lk,b);await a.Se.kz()} async function WA(a){await a.pl();await SA(a.g);console.log("[Construct] WebGPU device restored")}async function XA(a){if(a.YB){const b=[];for(const [d,c]of Object.entries(a.YB))c.src=c.hda,b.push(Rh(a.$h,Object.assign({MJ:rg(),name:d},c)));await Promise.all(b)}} async function YA(a){if(a.YB){const b=[];for(const [d,c]of Object.entries(a.YB)){let e;if(c.dY&&2<=a.Se.Ub)c.src=c.dY,e=sg();else{if(!c.cY)throw Error(`shader '${d}' does not support WebGL 1`);c.src=c.cY;e=rg()}b.push(Rh(a.Se,Object.assign({MJ:e,name:d},c)))}await Promise.all(b);a.Se.Vm=null;nf(a.Se)}a.Se.sc&&(a.MA=KA.A(KA.ca.LL,a.Se))}function ZA(a){return a.ct?a.pW:a.Zy()}function $A(a,b){if(!LA.has(b))throw Error("invalid fullscreen mode");a.MM=b;a=a.g.nb;En(a);Fn(a)} function aB(a,b){if(!MA.has(b))throw Error("invalid fullscreen scaling quality");a.zI=b;En(a.g.nb)}function bB(a){switch(a){case 0:return"off";case 1:return"crop";case 2:return"scale-inner";case 3:return"scale-outer";case 4:return"letterbox-scale";case 5:return"letterbox-integer-scale";default:throw Error("invalid fullscreen mode");}}function cB(a,b){const d=a.md,c=a.Bd/2,e=d/2;Th(b,a.sA);a=mf(b,c,e,b.Ve(d),c,e,d);Wh(b,a)} function*dB(a){for(const b of Dn(a.g.nb))for(const d of b.Mc){const c=a.fH.get(d);c&&(yield c)}} function eB(a){if(a.aC){var b=a.lk,d=a.sO,c=KA.$(Math.floor(d.Y),0,b.width),e=KA.$(Math.floor(d.V),0,b.height),g=d.width();g=0===g?b.width-c:KA.$(Math.floor(g),0,b.width-c);d=d.height();d=0===d?b.height-e:KA.$(Math.floor(d),0,b.height-e);(0!==c||0!==e||g!==b.width||d!==b.height)&&0<g&&0<d&&(b=KA.Mj(g,d),b.getContext("2d").drawImage(a.lk,c,e,g,d,0,0,g,d));KA.iD(b,a.aC,a.ZH).then(k=>{a.Ex&&URL.revokeObjectURL(a.Ex);a.Ex=URL.createObjectURL(k);a.Dx=null;a.tO(a.Ex)});a.aC="";a.ZH=1}} async function fB(a){var b=(new URL("splash-images/splash-logo.svg",a.g.UH)).toString();b=await KA.Zl(b);b=await gB(a.g,b);return await pi(a.Ra(),b,{qy:"high"})}async function hB(a,b){b=(new URL(b,a.g.UH)).toString();b=await KA.Zl(b);return await pi(a.Ra(),b,{qy:"high"})} function iB(a,b){const d=a.Ra();2===b?(a.Vh=KA.A(KA.ca.ZD,a.Ra()),Xg(a.Vh,"Arial"),a.Vh.jE(16),bh(a.Vh,"center"),ch(a.Vh,"center"),a.Vh.ac(300,200)):0===b?(b=a.g.xt)&&b.Un(d).catch(c=>console.warn("[C3 runtime] Failed to create texture for loading logo: ",c)):4===b&&(fB(a).then(c=>{"done"===a.Rk?gg(d,c):a.$g.ny=c}).catch(c=>console.warn("Failed to load splash image: ",c)),hB(a,"splash-images/splash-poweredby-512.png").then(c=>{"done"===a.Rk?gg(d,c):a.$g.uy=c}).catch(c=>console.warn("Failed to load splash image: ", c)),hB(a,"splash-images/splash-website-512.png").then(c=>{"done"===a.Rk?gg(d,c):a.$g.Ay=c}).catch(c=>console.warn("Failed to load splash image: ",c)))}function jB(a){ad(a.g,"runtime","hide-cordova-splash")} function kB(a){if(-1!==a.If){var b=a.Ra();b.jv();a.If=-1;var d=a.g.Ib.qG,c=a.g.vt;3!==c&&(cB(a,b),ji(b),Yh(b),nf(b),Zh(b,null));if(0===c)lB(a,d);else if(1===c)mB(a,d,120,0);else if(2===c)nB(a,d);else if(3!==c)if(4===c)oB(a,d);else throw Error("invalid loader style");b.Or();a.If=requestAnimationFrame(()=>kB(a))}}function pB(a){a.Tw=Date.now();a.g.tb().addEventListener("loadingprogress",a.kH);a.If=requestAnimationFrame(()=>kB(a));3!==a.g.vt&&jB(a)} async function qB(a){const b=a.Ra();a.Qo=1;const d=a.g.vt;4===d&&await a.yO;a.$H=null;a.yO=null;-1!==a.If&&(cancelAnimationFrame(a.If),a.If=-1);a.g.tb().removeEventListener("loadingprogress",a.kH);a.kH=null;a.Vh&&(a.Vh.j(),a.Vh=null);var c=a.g;c.xt&&(c.xt.j(),c.xt=null);b.jv();a.$g.ny&&(gg(b,a.$g.ny),a.$g.ny=null);a.$g.uy&&(gg(b,a.$g.uy),a.$g.uy=null);a.$g.Ay&&(gg(b,a.$g.Ay),a.$g.Ay=null);ji(b);b.Or();a.Rk="done";a.Do=b.lj;3===d&&jB(a)} function lB(a,b){const d=a.Ra();var c=a.g.xt;if(c)if(c=c.Qd()){var e=c.N(),g=c.M(),k=a.Bd/2,m=a.md/2,n=e/2;g/=2;var q=k-n,r=m-g;k+=n;m+=g;PA.set(q,r,k,r,k,m,q,m);Zh(d,c);d.jd(PA);mB(a,b,e,g+16)}else mB(a,b,120,0);else mB(a,b,120,0)}function mB(a,b,d,c){const e=a.Ra();of(e,e.Hx);b?Xh(e,1,0,0,1):Xh(e,.118,.565,1,1);b=a.Bd/2;const g=a.md/2,k=d/2;vc(Af,b-k,g-4+c,Math.floor(d*a.Qo),8);e.Rect(Af);vc(Af,b-k,g-4+c,d,8);Af.offset(-.5,-.5);wc(Af,.5,.5);Xh(e,0,0,0,1);zf(e);wc(Af,1,1);Xh(e,1,1,1,1);zf(e)} function nB(a,b){b?(b=a.Vh,Wb(Ng,1,0,0),b.ni(Ng)):(b=a.Vh,Wb(Ng,.6,.6,.6),b.ni(Ng));a.Vh.aj(Math.round(100*a.Qo)+"%");var d=a.Bd/2,c=a.md/2;b=d-150;var e=c-100;d+=150;c+=100;PA.set(b,e,d,e,d,c,b,c);b=a.Ra();Zh(b,a.Vh.Qd());di(b,PA,a.Vh.Xf())} function oB(a,b){const d=a.Ra(),c=a.$g.ny,e=a.$g.uy,g=a.$g.Ay,k=Date.now();0===a.bI&&(a.Tw=k);const m=a.g.Tp()||a.g.HW&&"cordova"!==a.g.wl,n=m?0:200,q=m?0:3E3;let r=1;"fade-in"===a.Rk?r=Math.min((k-a.Tw)/300,1):"fade-out"===a.Rk&&(r=Math.max(1-(k-a.aI)/300,0));of(d,d.Hx);Xh(d,.231*r,.251*r,.271*r,r);Af.set(0,0,a.Bd,a.md);d.Rect(Af);const w=Math.ceil(a.Bd),x=Math.ceil(a.md);let z;256<a.md?(Xh(d,.302*r,.334*r,.365*r,r),z=Math.max(.005*x,2),vc(Af,0,.8*x-z/2,w,z),d.Rect(Af),b?Xh(d,r,0,0,r):Xh(d,.161* r,.953*r,.816*r,r),b=w*a.Qo,vc(Af,.5*w-b/2,.8*x-z/2,b,z),d.Rect(Af),Xh(d,r,r,r,r),nf(d),e&&(b=1.5*KA.$(.22*x,105,.6*w),z=b/8,vc(Af,.5*w-b/2,.2*x-z/2,b,z),Zh(d,e),d.Rect(Af)),c&&(z=b=Math.min(.395*x,.95*w),vc(Af,.5*w-b/2,.485*x-z/2,b,z),Zh(d,c),d.Rect(Af)),g&&(b=1.5*KA.$(.22*x,105,.6*w),z=b/8,vc(Af,.5*w-b/2,.868*x-z/2,b,z),Zh(d,g),d.Rect(Af))):(Xh(d,.302*r,.334*r,.365*r,r),z=Math.max(.005*x,2),vc(Af,0,.85*x-z/2,w,z),d.Rect(Af),b?Xh(d,r,0,0,r):Xh(d,.161*r,.953*r,.816*r,r),b=w*a.Qo,vc(Af,.5*w-b/2,.85* x-z/2,b,z),d.Rect(Af),Xh(d,r,r,r,r),nf(d),c&&(z=b=.55*x,vc(Af,.5*w-b/2,.45*x-z/2,b,z),Zh(d,c),d.Rect(Af)));a.bI++;"fade-in"===a.Rk&&300<=k-a.Tw&&2<=a.bI&&(a.Rk="wait",a.zO=k);"wait"===a.Rk&&k-a.zO>=q&&1<=a.Qo&&(a.Rk="fade-out",a.aI=k);("fade-out"===a.Rk&&k-a.aI>=300+n||m&&1<=a.Qo&&500>k-a.Tw)&&a.$H()} KA.RQ=class extends KA.ta{constructor(a){super();this.g=a;this.lk=null;this.qN=!1;this.$h=this.Se=null;this.mG="high-performance";this.mN=!1;this.qo=this.po=this.Hh=this.Ih=this.md=this.Bd=this.wp=this.xp=0;this.vr="normalized";this.KM=0;this.FI=1;this.DI=1E4;this.Ls=!0;this.od=this.Cd=this.GO=0;this.pW=this.MM="letterbox-scale";this.oW=this.nW=0;this.sA=NA.create();this.mj=this.zI="high";this.ct=!1;this.ss=[];this.Zx=new Set;this.YB=self.C3_Shaders;this.aw=KA.A(KA.ca.kR,{wP:()=>[this.fl(),this.el()], xP:()=>{const b={hh:this.g.Hd};"low"===this.mj&&(b.width=this.fl(),b.height=this.el());return this.Eu(b)},SP:b=>{this.Yp(b)},getTime:()=>bj(this.I()),RP:()=>this.I().P()});this.Nh=this.Do=0;this.Ts=NaN;this.MA=null;this.fH=new Map;this.lw=NaN;this.AC=new Map;this.aC="";this.ZH=1;this.sO=KA.A(KA.Rect);this.Ex="";this.tO=this.Dx=null;this.Tw=0;this.If=-1;this.Qo=0;this.kH=b=>this.Qo=b.progress;this.Vh=null;this.$g={ny:null,uy:null,Ay:null};this.aI=this.zO=this.bI=0;this.Rk="fade-in";this.$H=null;this.yO= new Promise(b=>this.$H=b)}async Mj(a){this.lk=a.canvas;Rx(this.g,"runtime","window-resize",c=>{const e=this.g;if(null===e.Ed){var g=c.devicePixelRatio;e.Dk&&(self.devicePixelRatio=g);null===e.Ed&&(e.vl=g);this.ct=!!c.isFullscreen;this.ac(c.innerWidth,c.innerHeight);e.P();g=new KA.Event("window-resize");g.data=c;ld(e.tb(),g);c=new KA.Event("resize");c.x$=this.Bd;c.w$=this.md;c.H$=this.Ih;c.G$=this.Hh;e.nh(c);e.Nb&&(ys(e)||self.ei.l2())&&e.$p()}});Rx(this.g,"runtime","fullscreenchange",c=>{this.ct= !!c.isFullscreen;this.ac(c.innerWidth,c.innerHeight,!0);this.g.P()});Rx(this.g,"runtime","fullscreenerror",c=>{this.ct=!!c.isFullscreen;this.ac(c.innerWidth,c.innerHeight,!0);this.g.P()});this.lk.addEventListener("webglcontextlost",c=>{console.log("[Construct] WebGL context lost");c.preventDefault();this.ss=[];this.Zx.clear();this.aw.zh();this.Se.zh();this.g.Sz()});this.lk.addEventListener("webglcontextrestored",()=>RA(this));this.ct=!!a.isFullscreen;var b=navigator.gpu&&this.qN;let d=!1;if(b)try{await TA(this, !0)}catch(c){UA("WebGPU",c),this.$h=null}if(!this.Ra())try{await VA(this,!0)}catch(c){UA("WebGL",c),this.Se=null}this.Ra()||(d=!0);if(!this.Ra()&&b)try{await TA(this,!1)}catch(c){UA("WebGPU",c),this.$h=null}if(!this.Ra())try{await VA(this,!1)}catch(c){UA("WebGL",c),this.Se=null}b=this.Ra();if(!b)throw Error("failed to acquire a renderer - check WebGL or WebGPU is supported");b.rG=!!d;this.$h&&(this.$h.xba=()=>{console.log("[Construct] WebGPU device lost");this.ss=[];this.Zx.clear();this.aw.zh();this.g.Sz()}, this.$h.yba=()=>WA(this));"normalized"===this.vr?b.vr=!1:(b.vr=!0,b.kE(this.KM));this.ac(a.windowInnerWidth,a.windowInnerHeight,!0);await this.pl()}async pl(){this.$h?await XA(this):this.Se&&await YA(this);const a=this.Ra();a.oE(this.Ls);a.sc&&(this.Ts=0);for(const b of this.g.dM){for(const d of b.Wi())d.pl(a);b.pl(a);b.pi()}}j(){this.lk=this.Se=this.g=null}ac(a,b,d=!1){a=Math.floor(a);b=Math.floor(b);if(0>=a||0>=b)throw Error("invalid size");if(this.xp!==a||this.wp!==b||d){this.xp=a;this.wp=b;d= ZA(this);if("letterbox-scale"===d){var c=this.g.$l(),e=this.g.Ki,g=this.g.Ji,k=e/g;a/b>k?(this.Bd=Math.round(b*k),this.md=b,this.po=Math.floor((a-this.Bd)/2),this.qo=0):(this.Bd=a,this.md=Math.round(a/k),this.po=0,this.qo=Math.floor((b-this.md)/2));this.Ih=Math.round(this.Bd*c);this.Hh=Math.round(this.md*c);rB(this.g,e,g)}else"letterbox-integer-scale"===d?(c=this.g.$l(),1!==c&&(a+=1,b+=1),e=this.g.Ki,g=this.g.Ji,k=e/g,k=a/b>k?b*k*c/e:a/k*c/g,1<k?k=Math.floor(k):1>k&&(k=1/Math.ceil(1/k)),this.Ih=Math.round(e* k),this.Hh=Math.round(g*k),this.Bd=this.Ih/c,this.md=this.Hh/c,this.po=Math.max(Math.floor((a-this.Bd)/2),0),this.qo=Math.max(Math.floor((b-this.md)/2),0),rB(this.g,e,g)):"off"===d?(c=this.g.$l(),this.Bd=this.g.eh,this.md=this.g.Pf,this.Ih=Math.round(this.Bd*c),this.Hh=Math.round(this.md*c),this.ct?(this.po=Math.floor((a-this.Bd)/2),this.qo=Math.floor((b-this.md)/2)):this.qo=this.po=0,rB(this.g,this.g.eh,this.g.Pf)):(c=this.g.$l(),this.Bd=a,this.md=b,this.Ih=Math.round(this.Bd*c),this.Hh=Math.round(this.md* c),this.qo=this.po=0,a=this.Nj(),rB(this.g,this.Bd/a,this.md/a));"high"===this.zI?(this.Cd=this.Ih,this.od=this.Hh,this.mj="high"):("off"===ZA(this)?(a=this.g.eh,b=this.g.Pf):(a=this.g.Ki,b=this.g.Ji),this.Ih<a||this.Hh<b?(this.Cd=this.Ih,this.od=this.Hh,this.mj="high"):(this.Cd=a,this.od=b,this.mj="low","scale-inner"===d?(d=a/b,a=this.xp/this.wp,a<d?this.Cd=this.od*a:a>d&&(this.od=this.Cd/a)):"scale-outer"===d&&(d=a/b,a=this.xp/this.wp,a>d?this.Cd=this.od*a:a<d&&(this.od=this.Cd/a))));this.lk.width= this.Ih;this.lk.height=this.Hh;ad(this.g,"canvas","update-size",{marginLeft:this.po,marginTop:this.qo,styleWidth:this.Bd,styleHeight:this.md,displayScale:this.Nj()});d=this.Ra();d.ac(this.Ih,this.Hh,!0);for(var m of this.ss)a=d,b=m,ri(a,null),Bf(a),c=b.Qd(),c===a.Gk&&(a.ia.bindTexture(a.ia.TEXTURE_2D,null),a.Gk=null),c===a.Lo&&(a.ia.activeTexture(a.ia.TEXTURE1),a.ia.bindTexture(a.ia.TEXTURE_2D,null),a.ia.activeTexture(a.ia.TEXTURE0),a.Lo=null),b.NE();KA.D(this.ss);kf(d,this.sA,this.fl()/this.el()); m=this.g.nb;En(m);Fn(m)}}I(){return this.g}Zy(){return this.MM}fl(){return this.Cd}el(){return this.od}oE(a){this.Ls=!!a}Pu(){return this.Se}Qp(){return this.$h}Ra(){return this.$h||this.Se}Sr(){return"low"===this.mj?1/this.g.$l():this.Nj()}Nj(){const a=ZA(this);if("off"===a||"crop"===a)return 1;const b=this.g.Ki,d=this.g.Ji,c=b/d,e=this.Ih/this.Hh;return"scale-inner"!==a&&e>c||"scale-inner"===a&&e<c?this.md/d:this.Bd/b}Ju(){return"low"===this.mj?1:this.Nj()}Iu(){return"low"===this.mj?1:this.g.$l()}Fu(){return this.po}Gu(){return this.qo}Eu(a){a.depth= this.g.vn;const b=this.ss,d=b.findIndex(e=>{var g=a;g=Object.assign({},cg,g);return"nearest"!==g.hh!==e.MD()||!!g.alpha!==e.rs||!!g.depth!==e.og||2<=e.za.Ub&&!!g.NC!==e.Cw?!1:"number"===typeof g.width||"number"===typeof g.height?!e.$A&&e.N()===g.width&&e.M()===g.height:e.$A});let c;-1!==d?(c=b[d],b.splice(d,1)):c=qi(this.Ra(),a);this.Zx.add(c);return c}Yp(a){if(!this.Zx.has(a))throw Error("render target not in use");this.Zx.delete(a);this.ss.push(a)}$y(){return this.Ts}EL(a,b,d,c,e,g){this.aC=a;this.ZH= b;vc(this.sO,d,c,e,g);return this.Dx?this.Dx:this.Dx=new Promise(k=>{this.tO=k})}};"use strict";const X=self.B,sB=self.ei,tB={messagePort:null,runtimeBaseUrl:"",headless:!1,hasDom:!0,isInWorker:!1,useAudio:!0,projectData:"",exportType:""};let uB=!0;function ad(a,b,d,c){a.Zw.postMessage({type:"event",component:b,handler:d,data:c,responseId:null},void 0)}function aj(a,b){return b&&-1!==b.Jd?a.wq*b.Jd:a.Zv}function bj(a){return a.KA.S()} function cj(a,b,d,c){const e=a.YW++,g=new Promise((k,m)=>{a.FH.set(e,{resolve:k,reject:m})});a.Zw.postMessage({type:"event",component:b,handler:d,data:c,responseId:e},void 0);return g}function ej(a){a.MH||(a.MH=localforage.RI({name:"c3-localstorage-"+a.NH,description:a.QB}));return a.MH}function jj(a,b,d,c,e,g,k){if(k&&a.Pi){const m=jr(a.Pi,b,k);if(m)return b=tm(a,m,d,!1,c,e,!1,g,void 0,g),kr(a.Pi,b,k),b}return tm(a,b,d,!1,c,e,!1,g,void 0,g)} function nj(a){if(a.OA){for(const b of a.Fo){const d=b.F();d.ri(b);for(const c of d.yi)c.ri(b),c.Bq=!0}X.D(a.Fo);a.ec.ds(!0);for(const [b,d]of a.WA.entries())vB(a,b,d),d.clear();a.WA.clear();a.ec.ds(!1);a.OA=!1;a.P()}}function om(a,b){b=Math.floor(b);if(0>b||b>=a.yd.length)throw new RangeError("invalid index");return a.yd[b]} function tm(a,b,d,c,e,g,k,m,n,q){var r=null;let w=null;b instanceof X.uz?(w=b,w.Pa&&(r=w.Km,w=r[Math.floor(a.Kl()*r.length)]),r=w.uq):(r=b,w=om(a,r[1]));b=w.qb().ne;if(a.Bl&&b&&!w.TG)return null;const x=d;b||(d=null);var z=c&&!k&&r&&!a.Jq.has(r[2])?r[2]:a.dx++;const E=r?r[0]:null,C=X.A(X.Instance,{mf:a,qJ:w,JP:d,kQ:E,zP:r?r[3]:null,uid:z});a.Jq.set(z,C);z=null;b&&(z=C.m(),"undefined"!==typeof e&&"undefined"!==typeof g&&(z.hg(e),z.Lg(g)),w.$z=!0);if(d){q||d.ri(C,!0);if(1!==d.df||1!==d.ef)w.Hv=!0;Zm(d.Fc(), w)}a.xH++;let G=!0;n&&(n=n.F(),n.wc()&&w.wc()&&w.Kh===n.Kh&&(G=!1));if(w.wc()&&!c&&!k&&G){for(var I of w.Kh.Fl)I!==w&&(n=tm(a,I,x,!1,z?z.T():e,z?z.U():g,!0,!1,void 0,q),C.ud.push(n));for(var J of C.ud){J.ud.push(C);for(const L of C.ud)J!==L&&J.ud.push(L)}}b&&!c&&m&&wB(a,C,E,z,d,e,g,q);if(w.wc()&&!c&&!k&&m)for(const L of C.ud)if(c=L.m())I=L.qb(),J=L.F().uq[0],I.ne?wB(a,L,J,c,d,c.T(),c.U(),q):wB(a,L,J,c,d,void 0,void 0,q);!k&&m&&("undefined"===typeof e&&(e=E[0]),"undefined"===typeof g&&(g=E[1]),d=z.Nn(), e=e-z.T()+d.T(),g=g-z.U()+d.U(),d.Zj(e,g));w.Bq=!0;g=r?X.CC(r[5]):null;r=r?r[4].map(L=>X.CC(L)):null;b&&E&&E[13]&&(C.ea|=2);C.Mz(g,r);a.Fo.push(C);a.OA=!0;a.Nb&&sB.e2(C);return C} function zn(a,b){if(!a.Kq.has(b)){var d=b.F(),c=a.WA.get(d);if(c){if(c.has(b))return;c.add(b)}else c=new Set,c.add(b),a.WA.set(d,c);a.Nb&&sB.f2(b);b.VE();a.OA=!0;if(b.wc())for(const e of b.ud)zn(a,e);for(const e of b.children())e.Hu()&&zn(a,e);0<a.nb.et||a.nj||(d=a.Da(),kj(d,!0),b.g.Ka(b.qb().constructor.K.iT,b,null),kj(d,!1));a=0<a.nb.et;b.Be&&(d=new Hj.Event("destroy"),d.kY=a,b.nh(d));if(Py(b,"instancedestroy")){d=b.F();c=new Hj.Event("instancedestroy");c.instance=ij(b);c.kY=a;d.nh(c);for(const e of d.yi)e.nh(c); b.g.nh(c)}}}function rm(a){return a.Fm.length?a.Fm.ie(-1):a.dc()}function xm(a){return a.Nb&&!!a.Ra().sc&&xm(sB)}function fn(a,b){return a.wH.get(b)||null}function gn(a){a.Jq.clear();for(const b of a.yd)if(!b.Pa)for(const d of b.pa())a.Jq.set(d.Ab,d)}function Fo(a,b){if(a.nj)throw Error("cannot call while loading state - wait until afterload event");return a.Jq.get(b)||null}function ss(a){if(!a.Fm.length)throw Error("layout stack empty");a.Fm.pop()} function us(a,b){return a.Ef?us(sB,b):Promise.resolve()}function ys(a){return a.Nb?ys(sB):!1}function it(a){return a.Nb&&it(sB)}function wt(a){return a.Ef?sB.B_():!1}function Qt(a,b){b?a.TF--:a.TF++;a.Ef=a.Nb&&a.ZV&&0===a.TF}function Vt(a,b){b=Math.floor(b);a=a.GB;if(0>b||b>=a.length)throw Error("invalid object reference");return a[b]}function*Kw(a,b){for(const d of a.Fo)b.Pa?tx(d.F(),b)&&(yield d):d.F()===b&&(yield d)} function Rx(a,b,d,c){let e=a.XF.get(b);e||(e=new Map,a.XF.set(b,e));if(e.has(d))throw Error(`[Runtime] Component '${b}' already has handler '${d}'`);e.set(d,c)}function $y(a,b,d){d?a.bt.has(b)||(d=X.A(X.Vu),d.lD(a.KA),a.bt.set(b,d)):a.bt.delete(b)}function rB(a,b,d){if(a.eh!==b||a.Pf!==d)a.eh=b,a.Pf=d,a=a.nb,En(a),Fn(a)}async function SA(a){await Sm(a.dc(),null,a.Ra());a.ec.dispatchEvent(X.A(X.Event,"renderercontextrestored"));xB(a,!1);a.P()} async function gB(a,b){var d=d||2048;var c=c||2048;return a.Dk?(await cj(a,"runtime","raster-svg-image",{blob:b,imageWidth:2048,imageHeight:2048,surfaceWidth:d,surfaceHeight:c,imageBitmapOpts:void 0})).imageBitmap:await self.C3_RasterSvgImageBlob(b,2048,2048,d,c)}async function yB(a,b){return await a.ZC("OpusDecode",{arrayBuffer:b},[b])} function zB(a,b){if(a.pN){var d=b.component,c=b.handler,e=b.data,g=b.dispatchOpts,k=!(!g||!g.dispatchRuntimeEvent);g=!(!g||!g.dispatchUserScriptEvent);var m=b.responseId;if("runtime"===d&&(k&&(b=new X.Event(c),b.data=e,ld(a.ec,b)),g)){b=new X.Event(c,!0);for(const [n,q]of Object.entries(e))b[n]=q;a.nh(b)}if(b=a.XF.get(d))if(b=b.get(c)){k=null;try{k=b(e)}catch(n){console.error(`Exception in '${d}' handler '${c}':`,n);null!==m&&AB(a,m,!1,""+n);return}null!==m&&(k&&k.then?k.then(n=>AB(a,m,!0,n)).catch(n=> {console.error(`Rejection from '${d}' handler '${c}':`,n);AB(a,m,!1,""+n)}):AB(a,m,!0,k))}else k||g||console.warn(`[Runtime] No DOM handler '${c}' for component '${d}'`);else k||g||console.warn(`[Runtime] No DOM event handlers for component '${d}'`)}else a.yI.push(b)}function AB(a,b,d,c){a.Zw.postMessage({type:"result",responseId:b,isOk:d,result:c})} async function BB(a){if(!a.Ib.EO["audio/webm; codecs=opus"]){var b=null;try{b=a.WG&&a.Ib.gt?await Fk(a.Ib,a.VN,"buffer"):await a.Ib.Au(a.VN)}catch(d){console.info("Failed to fetch Opus decoder WASM; assuming project has no Opus audio.",d);return}b?a.Hw.Zs.postMessage({type:"_send_buffer",buffer:b,id:"opus-decoder-wasm"},[b]):a.Hw.Zs.postMessage({type:"_send_blob",blob:null,id:"opus-decoder-wasm"});await CB(a,[a.bX])}} async function DB(a,b){b=b.project;a.QB=b[0];a.fO=b[16];a.NH=b[31];var d=b[39]||"loading-logo.png";a.oj=!!b[9];a.Ki=a.eh=b[10];a.Ji=a.Pf=b[11];a.IB=a.Ki/2;a.JB=a.Ji/2;a.Fs=b[36];a.JA=b[37];"low-latency"===a.Fs&&"Android"===X.O.Sd&&("cordova"===a.wl||"playable-ad"===a.wl||"instant-games"===a.wl)&&77>=X.O.xu&&(console.warn("[C3 runtime] Desynchronized (low-latency) compositing is enabled, but is disabled in the Android WebView <=77 due to crbug.com/1008842. Reverting to synchronized (standard) compositing."), a.Fs="standard");a.vn=!!b[40];a.Hd=b[14];a.vC=b[15];a.RO=b[42];a.uI=b[17];a.wC=!!b[18];a.vt=b[19];a.dx=b[21];a.ZN=b[22];const c=a.Ib;Ak(c,b[45]);Nk(c,b[7],b[25]);c.ON=b[8];c.ZM=b[28];Mk(c,b[29]);if(0===a.vt){let n="";a.Tp()?Bk(c,d)&&(n=Dk(c,d)):n="flat"===c.Bi?c.ZM+d:d;n&&(a.xt=c.sz({url:n}))}a.da&&($A(a.da,bB(b[12])),aB(a.da,b[23]?"high":"low"),a.da.oE(0!==b[24]),a.da.mG=b[34],a.da.GO=b[41],a.da.qN=!!b[13],a.da.vr=b[30],QA(a.da,b[46],b[47]),a.da.KM=b[26],a.da.mN=!!b[48]);(d=b[43])&&await EB(a,d); gy(a.Xq);a.GB=self.TJ();for(var e of b[2])fy(a.Xq,e);a.GB=self.TJ();GB(a);for(var g of b[3])e=X.uz.Qa(a,a.yd.length,g),a.yd.push(e),a.Ft.set(e.qa().toLowerCase(),e),a.wH.set(e.bb,e);for(const n of b[4])xy(a.yd[n[0]],n);for(var k of b[27])g=k.map(n=>a.yd[n]),a.LV.push(X.A(X.fR,a,g));for(const n of a.yd)yy(n);for(const n of b[5])a.nb.Qa(n);if(k=b[1])if(k=Cn(a.nb,k))a.nb.DA=k;for(var m of b[33])a.Ob.Qa(m);for(const n of b[35])a.jI.Qa(n);for(const n of b[44])a.Pi.Qa(n);ir(a.Pi)||(a.Pi.j(),a.Pi=null); HB(a);for(const n of b[6])a.Ma.Qa(n);a.Ma.cc();IB(a);X.D(a.GB);nj(a);m="any";b=b[20];1===b?m="portrait":2===b&&(m="landscape");ad(a,"runtime","set-target-orientation",{targetOrientation:m})}async function JB(a,b){a.da&&(await a.da.Mj(b),iB(a.da,a.vt))}async function KB(a,b){try{await b(a.Ak)}catch(d){console.error("[C3 runtime] Error in runOnStartup function: ",d)}} async function EB(a,b){const d=b.format;"image-sequence"===d?a.Ed=new self.D_(a,b):"image-sequence-gif"===d?a.Ed=new self.C_(a,b):"webm"===d?a.Ed=new self.F_(a,b):"mp4"===d&&(a.Ed=new self.E_(a,b));a.JA="unlimited-frame";$A(a.da,"off");a.vl=1;self.devicePixelRatio=1;await cj(a,"runtime","set-exporting-to-video",{message:a.Ed.D1(0),duration:a.Ed.$v})}function GB(a){for(const b of self.OQ){const d=X.first(Object.keys(b));a.sN.push(d)}} function HB(a){const b={};for(const d of a.yd)b[d.Qj()]={value:d.uw,enumerable:!0,writable:!1};Object.create(Object.prototype,b);a.Ak=new self.dS(a);a.QO={tick:LB(a,"tick")}}function IB(a){const b={};for(const d of a.Da().oF)b[d.Qj()]=ps(d);Object.defineProperties(a.Ak.bY,b)}function MB(a,b){a.Wz.push(b)} async function CB(a,b){b=await Promise.all(b.map(async d=>{const c=X.mz(d)&&(new URL(d)).origin!==location.origin,e="cordova"===a.wl&&a.Ib.gt;return c||e||a.Tp()||"playable-ad"===a.wl?(d=await a.Ib.Zl(d),URL.createObjectURL(d)):X.qz(d)?(new URL(d,a.UH)).toString():d}));a.Hw.Zs.postMessage({type:"_import_scripts",scripts:b})}function NB(a){a.Ka(X.C.sb.K.uT,null,null);ad(a,"runtime","register-sw")}function*OB(a){for(const b of a.yd)b.Pa||(yield*b.hy())} function wB(a,b,d,c,e,g,k,m){var n=(n=Bz.get(c))?n.NJ:NaN;var q=Oy(c);c=b.m();Cz.set(c,n);if(q){"undefined"===typeof g&&(g=d[0]);"undefined"===typeof k&&(k=d[1]);n=new Set;c=d[0];d=d[1];for(const C of q){var r=C[0],w=C[1],x=C[2];q=C[3];var z=!!C[4];const G=C[5];var E=C[6];w=E?E:(a.nb.Qw.get(r)||null).Z(w).zG.get(x);r=om(a,w[1]);x=!!Xy(b,r);E=n.has(r);x&&!E&&z?(z=Xy(b,r),x=g+w[0][0]-c,w=k+w[0][1]-d,z.m().Zj(x,w),w=z.m(),Cz.set(w,G),b.Ij(z,{Hr:!!(q>>0&1),Ir:!!(q>>1&1),Ep:!!(q>>2&1),Dp:!!(q>>3&1),Er:!!(q>> 4&1),ju:!!(q>>5&1),Jr:!!(q>>6&1),Fr:!!(q>>7&1),Gr:!!(q>>8&1)}),n.add(r)):(r=tm(a,w,e,!1,g+w[0][0]-c,k+w[0][1]-d,!1,!0,b,m),z=r.m(),Cz.set(z,G),b.Ij(r,{Hr:!!(q>>0&1),Ir:!!(q>>1&1),Ep:!!(q>>2&1),Dp:!!(q>>3&1),Er:!!(q>>4&1),ju:!!(q>>5&1),Jr:!!(q>>6&1),Fr:!!(q>>7&1),Gr:!!(q>>8&1)}))}}} function vB(a,b,d){for(const e of d){var c=a.xq.instancedestroy;c.instance=e;a.ec.dispatchEvent(c);a.Jq.delete(e.Ab);a.bt.delete(e);if(c=e.m())cA(c),qm(c),c.VE();a.Kq.add(e);a.xH--}X.ai(b.pa(),d);b.Bq=!0;a.XA.add(b);0===b.pa().length&&(b.Hv=!1);for(const e of b.yi)X.ai(e.pa(),d),e.Bq=!0,a.XA.add(e);if(b.qb().ne){a=new Set([...d].map(e=>e.m().Z()));for(const e of a)Xl(e,d)}} function xB(a,b){if(null===a.Ed){var d=a.Up();a.St+=b?1:-1;0>a.St&&(a.St=0);b=a.Up();!d&&b?(console.log("[Construct] Suspending"),-1!==a.If&&(self.cancelAnimationFrame(a.If),a.If=-1),-1!==a.gn&&(X.QQ(a.gn),a.gn=-1),a.ec.dispatchEvent(X.A(X.Event,"suspend")),a.Ka(X.C.sb.K.DT,null,null)):d&&!b&&(console.log("[Construct] Resuming"),d=performance.now(),a.rB=d,a.yq=d,a.IA=0,a.iw=0,a.zB=0,a.Xm=0,a.ec.dispatchEvent(X.A(X.Event,"resume")),a.Ka(X.C.sb.K.zT,null,null),ys(a)||a.He(d))}} function PB(a){const b=a.sX;"vsync"===a.JA?-1===a.If&&(a.If=self.requestAnimationFrame(b.MP)):"unlimited-tick"===a.JA?(-1===a.gn&&(a.gn=X.$D(b.QY)),-1===a.If&&(a.If=self.requestAnimationFrame(b.HY))):-1===a.gn&&(a.gn=X.$D(b.MP))}function*QB(a){Nd(a.lo,!0);for(const b of a.lo){const d=b.He();X.Rn(d)&&(yield*d)}Nd(a.lo,!1)}function*RB(a){Nd(a.qq,!0);for(const b of a.qq)X.Rn(void 0)&&(yield*void 0);Nd(a.qq,!1)} function*SB(a){Nd(a.mo,!0);for(const b of a.mo){const d=b.kv();X.Rn(d)&&(yield*d)}Nd(a.mo,!1)}async function TB(a){const b=a.Ma,d=a.Nb;nj(a);kj(b,!0);a.Fm.push(a.dc());d&&sB.ls();if(a.Ef)await Is(b);else if(b.Wh.length){var c=b.Vf(),e=!1;b.hn++;for(let n=0,q=b.Wh.length;n<q;++n){const r=b.Wh[n];if(Js(r)){var g=r,k=c;Jx(g,k);var m=g.vk;m.ck(k,k.Ye)&&dt(m);g.zm&&g.zm.ii()&&Nt(g.zm,g.Jv);As(g.Pe);g.Bx=!0}r.Bx&&(e=!0)}e&&(Hs(b),c.bd(null));b.hn--}d&&sB.tQ();ss(a);kj(b,!1);nj(a);kj(b,!0)} async function UB(a){const b=a.Nb,d=a.Ef,c=a.ec,e=a.xq,g=a.QO;b&&sB.ls();if(d)await VB(a,QB(a));else{Nd(a.lo,!0);for(const k of a.lo)k.He();Nd(a.lo,!1)}if(d)await VB(a,RB(a));else{Nd(a.qq,!0);for(const k of a.qq);Nd(a.qq,!1)}b&&sB.qQ();b&&sB.ls();d?await VB(a,md(a.ec,e.tick)):c.dispatchEvent(e.tick);b&&sB.uQ();kj(a.Ma,!1);a.nh(g.tick)} async function WB(a){a.wx&&(nj(a),await XB(a,a.wx),YB(a));a.Sw&&(await ZB(a,a.Sw),YB(a),a.Nb&&sB.m8());if(null!==a.ut){nj(a);try{await $B(a,a.ut),a.Pq=a.ut,await a.Hb(X.C.sb.K.UK,null),a.Pq=""}catch(b){console.error("[Construct] Failed to load state from JSON string: ",b),await a.Hb(X.C.sb.K.VK,null)}YB(a)}}async function aC(a){const b=a.nb;let d=0;for(;b.Li&&10>d++;)await bC(a,b.Li)} async function cC(a){const b=a.Ma,d=a.ec,c=a.xq,e=a.Nb,g=a.Ef;e&&sB.ls();if(g)await ts(b,a.nb);else{var k=a.nb;for(const m of b.qs)m.Vs=!1;b.hn++;for(const m of Dn(k))if(k=m.pd)b.g.Fm.push(m),k.Ba(),ss(b.g);b.hn--}e&&sB.tQ();vA.D(a.pk.Jt);dC(a);a.PG=!1;kj(b,!0);e&&sB.ls();if(g)await VB(a,SB(a));else{Nd(a.mo,!0);for(const m of a.mo)m.kv();Nd(a.mo,!1)}e&&sB.qQ();e&&sB.ls();g?await VB(a,md(a.ec,c.tick2)):d.dispatchEvent(c.tick2);e&&sB.uQ();kj(b,!1);g&&await zs(b)} async function VB(a,b){if(b)for(const d of b)await us(a,d)}function dC(a){if(0!==a.Kq.size){var b=a.ec;b.ds(!0);for(var d of a.XA)d.Pk.Zp(a.Kq);a.XA.clear();d=a.Ma;var c=a.Kq;for(const e of d.Wh)e.Zp(c);for(const e of a.Kq)e.j();a.Kq.clear();b.ds(!1)}} async function bC(a,b){const d=a.ec,c=a.nb.dc();await vn(c);if(b!==c&&a.Ra())for(const e of c.Qi)e.rf()||b.Fq.has(e)||(e.em(),c.Qi.delete(e));c===b&&xn(a.Ma);vA.D(a.pk.Jt);dC(a);d.dispatchEvent(a.xq.beforelayoutchange);X.wu.xL(!0);await Sm(b,c,a.Ra());X.wu.xL(!1);await mn(b,!1);d.dispatchEvent(a.xq.layoutchange);a.P();a.PG=!0;nj(a);a.Ed&&Zo(a.Ed.ob.fi())} async function XB(a,b){const d=await eC(a);try{await fC(a).setItem(b,d),console.log("[Construct] Saved state to storage ("+d.length+" chars)"),a.Pq=d,await a.Hb(X.C.sb.K.AT,null),a.Pq=""}catch(c){console.error("[Construct] Failed to save state to storage: ",c),await a.Hb(X.C.sb.K.BT,null)}}function YB(a){a.wx="";a.Sw="";a.ut=null} async function ZB(a,b){try{const d=await fC(a).getItem(b);if(!d)throw Error("empty slot");console.log("[Construct] Loaded state from storage ("+d.length+" chars)");await $B(a,d);a.Pq=d;await a.Hb(X.C.sb.K.UK,null);a.Pq=""}catch(d){console.error("[Construct] Failed to load state from storage: ",d),await a.Hb(X.C.sb.K.VK,null)}} async function $B(a,b){var d=a.nb;b=JSON.parse(b);if(b.c2save)throw Error("C2 saves are incompatible with C3 runtime");if(!b.c3save)throw Error("not valid C3 save data");if(1<b.version)throw Error("C3 save data from future version");a.ec.dispatchEvent(X.A(X.Event,"beforeload"));for(var c of OB(a))uy(c.F(),Su.La.OD)||c.bo();c=b.rt;a.KA.Set(c.time);c.hasOwnProperty("timeRaw")&&a.kw.Set(c.timeRaw);a.tr.Set(c.walltime);a.Jd=c.timescale;a.Ri=c.tickcount;a.hp=Date.now()-c.start_time_offset;var e=c.running_layout; a.nj=!0;var g=!1;if(e!==a.dc().bb)if(g=d.Qw.get(e)||null)await bC(a,g),g=!0;else return;for(const [q,r]of Object.entries(b.types))e=fn(a,parseInt(q,10)),!e||e.Pa||uy(e,Su.La.OD)||e.ya(r);nj(a);gn(a);a.nj=!1;if(g){for(var k of OB(a))pn(k);for(var [m]of Object.entries(b.types))k=fn(a,parseInt(m,10)),!k||k.Pa||uy(k,Su.La.OD)||k.Cv()}a.dx=c.next_uid;for(const [q,r]of Object.entries(b.layouts))(m=d.Qw.get(parseInt(q,10))||null)&&m.ya(r);a.Ma.ya(b.events);for(const q of a.yd)if(!q.Pa&&q.wc())for(const r of q.pa()){m= jn(r);for(const w of q.Kh.Fl)if(w!==q){k=w.pa();if(0>m||m>=k.length)throw Error("missing sibling instance");r.ud.push(k[m])}}a.Ob.ya(b.timelines);En(d);Fn(d);a.ec.dispatchEvent(X.A(X.Event,"afterload"));for(var [n]of Object.entries(b.types))if(d=fn(a,parseInt(n,10)))d.wB=null;n=LB(a,"load");n.saveData=b.user_script_data;await a.Xl(n);a.P()}function fC(a){a.VH||(a.VH=localforage.RI({name:"c3-savegames-"+a.NH,description:a.QB}));return a.VH} async function eC(a){const b={c3save:!0,version:1,rt:{time:bj(a),timeRaw:a.kw.S(),walltime:a.tr.S(),timescale:a.Jd,tickcount:a.Ri,next_uid:a.dx,running_layout:a.dc().bb,start_time_offset:Date.now()-a.hp},types:{},layouts:{},events:a.Ma.ra(),timelines:a.Ob.ra(),user_script_data:null};for(var d of a.yd)d.Pa||uy(d,Su.La.OD)||(b.types[d.bb.toString()]=d.ra());for(const c of a.nb.hk)b.layouts[c.bb.toString()]=c.ra();d=LB(a,"save");d.saveData=null;await a.Xl(d);b.user_script_data=d.saveData;return JSON.stringify(b)} function LB(a,b){b=X.A(X.Event,b,!1);b.mf=a.Ak;return b}function gC(a){a.AM||(a.AM=!0,ad(a,"runtime","enable-device-orientation"))}function hC(a){a.zM||(a.zM=!0,ad(a,"runtime","enable-device-motion"))} X.qL=class extends X.ta{constructor(a){a=Object.assign({},tB,a);super();this.Zw=a.messagePort;this.UH=a.runtimeBaseUrl;this.Dk=!!a.isInWorker;uB=a.ife;this.wl=a.exportType;this.WG=!!a.isiOSCordova;this.HW=!!a.isFBInstantAvailable;this.bX=a.opusWasmScriptUrl;this.VN=a.opusWasmBinaryUrl;this.Ef=this.ZV=this.Nb=!("preview"!==this.wl||!a.isDebug);this.TF=0;this.Wz=[];this.JV=[];this.NH=this.fO=this.QB="";this.Ji=this.Ki=0;this.vl=self.devicePixelRatio;this.vt=this.Pf=this.eh=this.JB=this.IB=0;this.wC= !1;this.Bl=!0;this.uI=this.RO=this.vC=!1;this.xt=null;this.Ib=X.A(X.DQ,this,a);this.nb=X.A(X.QS,this);this.Ma=X.A(X.oR,this);this.Xq=X.A(X.OT,this);this.pk=X.A(X.UQ,this);this.Ob=X.A(X.KU,this);this.jI=X.A(X.MU,this);this.Pi=X.A(X.DU,this);this.yd=[];this.Ft=new Map;this.wH=new Map;this.HM=0;this.LV=[];this.dM=[];this.Fm=[];this.Fo=[];this.WA=new Map;this.OA=!1;this.dx=this.xH=0;this.Jq=new Map;this.Kq=new Set;this.XA=new Set;this.GB=[];this.sN=[];this.da=null;this.vn=!1;this.JA="vsync";this.Fs="standard"; this.Hd="trilinear";this.oj=!1;this.uH=!0;this.UG=this.ZN=!1;this.Ed=null;this.sX={MP:b=>{this.gn=this.If=-1;this.He(b)},QY:b=>{this.gn=-1;this.He(b,!1,"skip-render")},HY:()=>{this.If=-1;this.$p()}};this.gn=this.If=-1;this.pn=this.Ri=0;this.YM=this.dB=this.PA=!1;this.PG=!0;this.St=0;this.hX=new X.UD(1);this.Kl=()=>Math.random();this.Zv=this.wq=this.rB=this.hp=0;this.Jd=1;this.RN=30;this.KA=X.A(X.Vu);this.kw=X.A(X.Vu);this.tr=X.A(X.Vu);this.bt=new Map;this.IA=-1;this.zB=this.Xm=this.iw=this.yq=0;this.nj= !1;this.Sw=this.wx="";this.ut=null;this.Pq="";this.VH=this.MH=null;this.ec=X.A(X.Event.tb);this.XF=new Map;this.FH=new Map;this.YW=0;this.pN=this.zM=this.AM=!1;this.yI=[];this.xq={pretick:X.A(X.Event,"pretick",!1),tick:X.A(X.Event,"tick",!1),tick2:X.A(X.Event,"tick2",!1),instancedestroy:X.A(X.Event,"instancedestroy",!1),beforelayoutchange:X.A(X.Event,"beforelayoutchange",!1),layoutchange:X.A(X.Event,"layoutchange",!1)};this.xq.instancedestroy.instance=null;this.hf=X.A(X.Event.tb);this.QO=null;this.lo= X.A(X.Xp,X.Fy.AE);this.qq=X.A(X.Xp,X.Fy.AE);this.mo=X.A(X.Xp,X.Fy.AE);this.Hw=X.A(X.MS,this,a.jobScheduler);a.canvas&&(this.da=X.A(X.RQ,this));this.Zw.onmessage=b=>this._OnMessageFromDOM(b.data);Rx(this,"runtime","visibilitychange",b=>{xB(this,b.hidden)});Rx(this,"runtime","opus-decode",b=>yB(this,b.arrayBuffer));Rx(this,"runtime","get-remote-preview-status-info",()=>{const b=this.Ra();return{fps:this.iw,cpu:this.zB,gpu:this.$y(),layout:this.dc()?this.dc().qa():"",renderer:b.Yi()?b.Wx:b.kK()}});Rx(this, "runtime","js-invoke-function",b=>this.Qz(b));Rx(this,"runtime","go-to-last-error-script",self.goToLastErrorScript);Rx(this,"runtime","offline-audio-render-completed",b=>{this.Ed.H3(b)});this.ec.addEventListener("window-blur",b=>{this.Tp()&&this.ZN&&!X.O.Sp&&!b.data.parentHasFocus&&(xB(this,!0),this.UG=!0)});this.ec.addEventListener("window-focus",()=>{this.UG&&(xB(this,!1),this.UG=!1)});this.Ob.$C();this.Pi.$C();this.Ak=null;this.gN=new WeakMap;this.nA={keyboard:null,KP:null,IJ:null}}static Qa(a){return X.A(X.qL, a)}j(){X.D(this.yd);this.Ft.clear();this.wH.clear();this.nb.j();this.nb=null;this.Ma.j();this.Ma=null;this.Xq.j();this.Xq=null;this.Ib.j();this.Ib=null;this.pk.j();this.pk=null;this.Ob.j();this.Ob=null;this.jI.j();this.jI=null;this.Pi.j();this.Pi=null;this.da&&(this.da.j(),this.da=null);this.ec.j();this.ec=null}_OnMessageFromDOM(a){var b=a.type;if("event"===b)zB(this,a);else if("result"===b){b=a.responseId;const d=a.isOk;a=a.result;const c=this.FH.get(b);d?c.resolve(a):c.reject(a);this.FH.delete(b)}else throw Error(`unknown message '${b}'`); }async xh(a){this.Nb?await sB.xh(this):self.ei&&self.ei.d2(this);var [b]=await Promise.all([this.Ib.gK("data.json"),BB(this),this.Hw.xh()]);await DB(this,b);await JB(this,a);this.Tp()||console.info("Made with Construct, the game and app creator :: https://www.construct.net");this.Pu()?(b=this.Pu(),console.info(`[C3 runtime] Hosted in ${this.Dk?"worker":"DOM"}, rendering with WebGL ${b.Ub} [${b.Wx}] (${b.gM.desynchronized?"desynchronized":"standard"} compositing)`)):this.Qp()&&console.info(`[C3 runtime] Hosted in ${this.Dk? "worker":"DOM"}, rendering with experimental WebGPU [${this.Qp().kK()}]`);this.Ra().rG&&console.warn("[C3 runtime] The renderer indicates a major performance caveat. Software rendering may be in use. This can result in significantly degraded performance.");this.pN=!0;for(const d of this.yI)zB(this,d);X.D(this.yI);this.da&&pB(this.da);for(const d of a.runOnStartupFunctions)this.Wz.push(KB(this,d));await Promise.all([Jk(this.Ib),...this.Wz]);X.D(this.Wz);if(this.Ib.qG)this.da&&jB(this.da);else return this.da&& await qB(this.da),await kd(this.ec,new X.Event("beforeruntimestart")),await this.jv(),this.Zw.postMessage({type:"runtime-ready"}),this}async jv(){this.PA=!0;this.hp=Date.now();if(this.wC){for(var a of this.yd)a.Pa||a.TG||!a.ne||a.Jc();Jk(this.Ib).then(()=>{this.Bl=!1;NB(this)})}else this.Bl=!1;this.Ib.UM=!0;this.Nb&&sB.S5(uB);for(const b of this.nb.hk)tn(b);null!==this.Ed&&await this.Ed.xh({width:this.da.Ih,height:this.da.Hh});a=Bn(this.nb);await Sm(a,null,this.Ra());await mn(a,!0);this.yq=performance.now(); this.wC||NB(this);(await cj(this,"runtime","before-start-ticking")).isSuspended&&null===this.Ed?this.St++:this.He()}Qj(a){a=Math.floor(a);const b=this.sN;if(0>a||a>=b.length)throw Error("invalid prop reference");return b[a]}Da(){return this.Ma}Od(){return this.Ma.Od()}Vf(){return this.Ma.Vf()}Vb(){return this.Ma.Vb()}ph(){return this.Ma.ph()}Vy(){return this.Ma.Vy()}Mu(){return this.Xq.Mu()}tb(){return this.ec}nh(a){a.mf=this.Ak;const b=this.Nb&&!mj(this.Ma);b&&sB.BE();this.hf.dispatchEvent(a);b&& sB.aD()}Xl(a){a.mf=this.Ak;return kd(this.hf,a)}$l(){return this.vl}fl(){return this.da?this.da.fl():this.eh}el(){return this.da?this.da.el():this.Pf}Sr(){return this.da?this.da.Sr():1}Nj(){return this.da?this.da.Nj():1}Ju(){return this.da?this.da.Ju():1}Iu(){return this.da?this.da.Iu():1}Fu(){return this.da?this.da.Fu():0}Gu(){return this.da?this.da.Gu():0}Zy(){return this.da?this.da.Zy():"off"}Eu(a){return this.da?this.da.Eu(a):null}Yp(a){this.da&&this.da.Yp(a)}$y(){return this.da?this.da.$y(): NaN}MD(){return"nearest"!==this.Hd}dc(){return this.nb.dc()}sz(a){return this.Ib.sz(a)}Sz(){this.ec.dispatchEvent(X.A(X.Event,"renderercontextlost"));xB(this,!0);for(var a of this.yd)!a.Pa&&0<a.Ut&&a.em();(a=this.dc())&&a.Sz();X.Su.Zr();X.vK.Zr()}Up(){return 0<this.St}async He(a,b,d){this.YM=!0;const c="background-wake"===d;d="background-wake"!==d&&"skip-render"!==d;if(this.PA&&(!this.Up()||b||c)){b=performance.now();this.dB=!0;a=a||0;var e=0;null!==this.Ed?this.wq=e=1/this.Ed.GR():0!==this.rB&&(e= Math.max(a-this.rB,0)/1E3,.5<e&&(e=0),this.wq=Math.min(e,1/this.RN));this.rB=a;this.Zv=this.wq*this.Jd;this.KA.$c(this.Zv);this.kw.$c(e*this.Jd);this.tr.$c(this.wq);for(const [r,w]of this.bt)w.$c(this.wq*r.Jd);if(this.da){e=this.da;if(e.Se&&e.Se.sc)a:if(isNaN(e.lw)&&(e.lw=sh(e.MA,e.Do,e.Nh),!isNaN(e.lw))){if(e.g.Nb)for(var g of dB(e))if(g.EC=sh(g.HJ,e.Do,e.Nh),isNaN(g.EC))break a;th(e.MA,e.Nh);e.Ts=Math.min(e.lw,1);if(e.g.Nb){for(var k of dB(e))th(k.HJ,e.Nh),k.IP=Math.min(k.EC,1);self.ei.TU(e.Ts, [...dB(e)])}e.Do=e.Nh;e.Nh=0}if(e.$h&&e.$h.sc)a:if(0!==e.Nh){for(g=e.Do;g<e.Nh;++g)if((k=e.AC.get(g))&&!k.gz())break a;k=e.g.dc();g=KA.li(k.Mc.length+1,0);for(var m=e.Do;m<e.Nh;++m){var n=e.AC.get(m);if(n){n=n.dz();for(let r=0,w=Math.min(g.length,n.length/2);r<w;++r){const x=n[2*r],z=n[2*r+1];g[r]=0===Number(x)||0===Number(z)?NaN:g[r]+Number(z-x)/1E9}}}e.Ts=KA.$(g[0],0,1);if(e.g.Nb){m=[];k=k.Mc;for(let r=0,w=Math.min(k.length,g.length-1);r<w;++r)m.push({name:k[r].qa(),IP:KA.$(g[r+1],0,1)});self.ei.TU(e.Ts, m)}for(g=e.Do;g<e.Nh;++g)e.AC.delete(g);e.Do=e.Nh;e.Nh=0}}if(1E3<=a-this.yq){this.yq+=1E3;1E3<=a-this.yq&&(this.yq=a);this.iw=this.IA;this.IA=0;this.zB=Math.min(this.Xm/1E3,1);this.Xm=0;if(this.da&&(a=this.da,e=a.Ra(),e.sc&&0===a.Nh)){a.Nh=e.lj;a.lw=NaN;for(var q of dB(a))q.EC=NaN}this.Nb&&sB.u9()}this.IA++;q=TB(this);this.Ef&&await q;q=this.xq.pretick;q=(a=jd(this.ec,q.type,!1))?ed(a,q):!0;q instanceof Promise&&await q;q=UB(this);this.Ef&&await q;(this.wx||this.Sw||null!==this.ut)&&await WB(this); this.nb.Li&&await aC(this);q=cC(this);this.Ef&&await q;d&&this.$p();if(null!==this.Ed&&(d=this.Ri/this.Ed.GR(),await this.Ed.sZ(this.da.lk,d),bj(this)>=this.Ed.$v)){this.Ed.Or();return}this.Up()||c||PB(this);this.Ri++;this.pn++;this.dB=!1;this.Xm+=performance.now()-b}}P(){this.uH=!0}Pu(){return this.da?this.da.Pu():null}Qp(){return this.da?this.da.Qp():null}Ra(){return this.da?this.da.Ra():null}$p(){const a=this.da;if(a&&!gh(a.Ra())){var b=this.Ra(),d=!!b.sc,c=d&&b.Yi();d=d&&!1;if(c)for(var e of b.Xz){var g= e,k=b.lj;for(var m of g.ul){if(m.lj>=k)break;if(m.Ho)break;m.jD()}}if(this.uH||null!==this.Ed){m=this.nb.dc();b.jv();(e=this.Nb)&&sB.ls();this.uH=!1;g=null;c&&(g=rh(a.MA),wi(b,g));c=null;d&&(c=b.k8(2*(1+m.Mc.length)),b.fV(0));if(this.vn&&"low"===a.mj){k=a.fl();var n=a.el();b.Pl&&(b.IG=!1,Uh(b,k,n))}else b.Pl&&(b.IG=!0,Uh(b,b.ja,b.fa));k=this.Ra();nf(k);$h(k,k.ia.ONE,k.ia.ONE_MINUS_SRC_ALPHA);Xh(k,1,1,1,1);ri(k,null);Zh(k,null);ki(k,this.vn);m.pf(k);g&&xi(b,g);d&&(b.fV(1),d=this.da,d.AC.set(d.$h.lj, c));b.Or();e&&(sB.pZ(),sB.w9());a&&eB(a)}else b.lj++}}Ka(a,b,d){if(!this.PA)return!1;var c=!this.dB&&!(0<this.Ma.Ke);let e=0;c&&(e=performance.now());const g=this.Nb;g&&Qt(this,!1);a=this.Ma.Ev(this.nb,a,b,d);c&&(c=performance.now()-e,this.Xm+=c,g&&sB.DZ(c));g&&Qt(this,!0);return a}async Hb(a,b,d){if(!this.Ef)return this.Ka(a,b,d);if(!this.PA)return!1;if(ys(this))return ws(this.Ma,a,b,d);if(!this.dc())return vs(this.Ma,a,b,d);const c=performance.now();a=this.Ma.qv(this.nb,a,b,d);for(b=a.next();!b.done;)await us(this, b.value),b=a.next();this.Up()||0<this.Ma.Ke||(await zs(this.Ma),this.YM&&!this.dB&&PB(this));this.Xm+=performance.now()-c;return b.value}nl(a){return this.hX.$c(a)}gv(a){if(isNaN(a)||0>a)a=0;this.Jd=a}AL(a){this.RN=X.$(a,1,120)}Tp(){return"preview"===this.wl}Ve(a){return this.Ra().Ve(a||this.Pf)}ND(a){this.ut=a}ZC(a,b,d,c){return this.Hw.ZC(a,b,d,null,null,c)}Qz(a){return this.Ma.Qz(a.name,a.params)}};self.C3_CreateRuntime=X.qL.Qa;self.C3_InitRuntime=(a,b)=>a.xh(b);"use strict";const iC=self.B; function jC(a,b){var d=b.data,c=d.type;b=d.jobId;switch(c){case "result":d=d.result;c=a.Ko.get(b);if(!c)throw Error("invalid job ID");c.BC||c.resolve(d);a.Ko.delete(b);break;case "progress":d=d.progress;a=a.Ko.get(b);if(!a)throw Error("invalid job ID");!a.BC&&a.progress&&a.progress(d);break;case "error":d=d.error;c=a.Ko.get(b);if(!c)throw Error("invalid job ID");c.BC||c.reject(d);a.Ko.delete(b);break;case "ready":a.Aw&&(a.Aw=!1,a.Iw++,a.Iw<a.KN?kC(a):a.Zs.postMessage({type:"_no_more_workers"}));break; default:throw Error(`unknown message from worker '${c}'`);}}async function kC(a){if(!(a.Iw>=a.KN||a.Aw||a.SM||lC(a)<=a.Iw))try{a.Aw=!0,(await cj(a.g,"runtime","create-job-worker")).outputPort.onmessage=b=>jC(a,b)}catch(b){a.SM=!0,a.Aw=!1,console.error(`[Construct] Failed to create job worker; stopping creating any more (created ${a.Iw} so far)`,b)}}function lC(a){let b=0;a=[...a.Ko.values()].sort((d,c)=>(d.iJ||Infinity)-(c.iJ||Infinity));for(const d of a)b<(d.iJ||Infinity)&&b++;return b} iC.MS=class extends iC.ta{constructor(a,b){super();this.g=a;this.Ko=new Map;this.$W=0;this.Zs=b.inputPort;b.outputPort.onmessage=d=>jC(this,d);this.KN=b.maxNumWorkers;this.Iw=1;this.SM=this.Aw=!1}async xh(){}ZC(a,b,d,c,e,g){d||(d=[]);if("number"===typeof g&&(g=Math.floor(g),0>=g))throw Error("invalid maxWorkerNum");const k=this.$W++;a={type:a,isBroadcast:!1,maxWorkerNum:g,jobId:k,params:b,transferables:d};b=new Promise((m,n)=>{this.Ko.set(k,{resolve:m,progress:c,reject:n,BC:!1,iJ:g})});e&&Ed(e,()=> {const m=this.Ko.get(k);m&&(m.BC=!0,m.resolve=null,m.progress=null,m.reject=null,this.Zs.postMessage({type:"_cancel",jobId:k}))});this.Zs.postMessage(a,d);kC(this);return b}};self.C3_Shaders={};"use strict";const mC=self.B;let nC=null,oC="",pC="",qC=[],rC="",sC="",tC="";const uC=mC.A(mC.BQ);function vC(a,b){a=a[1];b=b[1];if("number"===typeof a&&"number"===typeof b)return a-b;a=""+a;b=""+b;return a<b?-1:a>b?1:0} function wC(a,b){nC&&a===oC&&b===pC||(nC=new RegExp(a,b),oC=a,pC=b);nC.lastIndex=0;return nC}function xC(a,b,d){if(a===rC&&b===sC&&d===tC)return qC;const c=wC(b,d);qC=a.match(c);rC=a;sC=b;tC=d;return qC}async function yC(a,b,d){if(d.length){a.Eq+=d.length;var c=[];for(const e of d)c.push(Zm(b,e));await mC.TT(c,()=>{a.vw++});a.vw++;a.vw===a.Eq&&(a.vw=0,a.Eq=0,a.g.Ka(mC.C.sb.K.rT,null,null))}} function*zC(a,b){var d=a.g.Da();a=d.Od();const c=wr(a),e=c.Vb();var g=e.Pd(),k=zr(c);const m=a.Xa(e);d=d.Yg;const n=d.Xa();if(k)for(k=0;k<b&&!n.fd;++k)Cs(g),n.oa=k,yield*Et(e,c,m),Ds(g);else for(g=0;g<b&&!n.fd;++g)n.oa=g,yield*Et(e,c,m);a.Va();d.Va();return!1} function*AC(a){var b=a.g.Da();a=b.Od();const d=wr(a),c=d.Vb();var e=c.Pd(),g=zr(d);const k=a.Xa(c);b=b.Yg;const m=b.Xa();if(g)for(g=0;!m.fd;++g)Cs(e),m.oa=g,(yield*Et(c,d,k))||m.cd(),Ds(e);else for(e=0;!m.fd;++e)m.oa=e,(yield*Et(c,d,k))||m.cd();a.Va();b.Va();return!1} function*BC(a,b,d,c){var e=a.g.Da();a=e.Od();const g=wr(a),k=g.Vb();var m=k.Pd();const n=zr(g),q=a.Xa(k);e=e.Yg;const r=e.Xa();r.Iz(b);if(c<d)if(n)for(b=d;b>=c&&!r.fd;--b)Cs(m),r.oa=b,yield*Et(k,g,q),Ds(m);else for(m=d;m>=c&&!r.fd;--m)r.oa=m,yield*Et(k,g,q);else if(n)for(b=d;b<=c&&!r.fd;++b)Cs(m),r.oa=b,yield*Et(k,g,q),Ds(m);else for(m=d;m<=c&&!r.fd;++m)r.oa=m,yield*Et(k,g,q);a.Va();e.Va();return!1} function*CC(a,b){var d=a.g.Da();a=d.Od();const c=wr(a),e=c.Vb();var g=e.Pd(),k=zr(c);const m=a.Xa(e);d=d.Yg;const n=d.Xa(),q=b.wc(),r=b.W(),w=uC.Xa();mC.Md(w,r.pa());if(k)for(let x=0,z=w.length;x<z&&!n.fd;++x)Cs(g),k=w[x],sr(b.W(),k),q&&bt(k),n.oa=x,yield*Et(e,c,m),Ds(g);else{r.jb=!1;b=r.G;mC.D(b);b.push(null);for(let x=0,z=w.length;x<z&&!n.fd;++x)g=w[x],b[0]=g,q&&bt(g),n.oa=x,yield*Et(e,c,m)}a.Va();d.Va();mC.D(w);uC.Va();return!1} function*DC(a,b,d){var c=a.g.Da();a=c.Od();const e=c.ph(),g=wr(a),k=g.Vb(),m=k.Pd(),n=zr(g),q=a.Xa(k);c=c.Yg;const r=c.Xa(),w=b.wc(),x=b.W(),z=uC.Xa();mC.D(z);const E=x.pa();for(let C=0,G=E.length;C<G;++C)z.push([E[C],e.Ha[1].S(C)]);z.sort(vC);1===d&&z.reverse();if(n)for(let C=0,G=z.length;C<G&&!r.fd;++C)Cs(m),d=z[C][0],sr(b.W(),d),w&&bt(d),r.oa=C,yield*Et(k,g,q),Ds(m);else{x.jb=!1;b=x.G;mC.D(b);b.push(null);for(let C=0,G=z.length;C<G&&!r.fd;++C)d=z[C][0],b[0]=d,w&&bt(d),r.oa=C,yield*Et(k,g,q)}a.Va(); c.Va();mC.D(z);uC.Va();return!1}function EC(a,b,d){let c=a.OM.get(b);if(c)return c;if(!d)return null;c={yp:null,VC:new Map};a.OM.set(b,c);return c}function*FC(a,b,d,c){yield*Ot(a.Ge(),b,a.Ug);d&&Ds(c)}mC.C.sb=class extends mC.ml{constructor(a){super(a);this.Yg=this.g.Da().Yg;this.me=this.g.Da().Od();this.vw=this.Eq=0;this.OM=new Map;this.XH=[]}j(){super.j()}P(){this.g.P()}Ka(a){this.g.Ka(a,null,null)}};const GC=self.B; GC.C.sb.oi=class extends GC.ta{constructor(a){super();this.J=a;this.g=a.I();this.uj=a.qb()}Jc(){}j(){this.uj=this.g=this.J=null}};const HC=self.B;HC.C.sb.Instance=class extends HC.ta{constructor(a){super();this.H=a;this.J=this.H.F();this.ib=this.J.ib;this.g=this.H.I()}j(){this.g=this.ib=this.J=this.H=null}};const IC=self.B,JC=[]; IC.C.sb.K={c1(){return!0},TK(){return!0},tT(){return!0},DT(){return!0},zT(){return!0},Up(){return this.g.Up()},cK(){const a=this.g.Vf();return a.Ao?!1:!a.Rh},X8(){const a=this.g.ph().hi();let b=a.get("TriggerOnce_lastTick");"undefined"===typeof b&&(b=-1,a.set("TriggerOnce_lastTick",-1));const d=this.g.Ri;a.set("TriggerOnce_lastTick",d);return this.g.PG||b!==d-1},b1(a){const b=this.g.ph().hi(),d=b.get("Every_lastTime")||0,c=bj(this.g);b.has("Every_seconds")||b.set("Every_seconds",a);const e=b.get("Every_seconds"); if(c>=d+e)return b.set("Every_lastTime",d+e),c>=b.get("Every_lastTime")+.04&&b.set("Every_lastTime",c),b.set("Every_seconds",a),!0;c<d-.1&&b.set("Every_lastTime",c);return!1},Tu(a){return(a=this.g.Da().nG.get(a.toLowerCase())||null)&&a.Tu()},Tp(){return this.g.Tp()},Sp(){return IC.O.Sp},uT(){return!0},fT(){return!0},U0(){return!0},AT(){return!0},BT(){return!0},UK(){return!0},VK(){return!0},C3(a){return!!Fo(this.g,a)},y2(a){switch(a){case 0:return"browser"===IC.O.Wl;case 1:return"iOS"===IC.O.Sd;case 2:return"Android"=== IC.O.Sd;case 8:return"cordova"===IC.O.Wl;case 9:return"scirra-arcade"===this.g.wl;case 10:return"nwjs"===IC.O.Wl;case 13:return"windows-uwp"===this.g.wl;default:return!1}},M4(a,b,d){return wC(b,d).test(a)},WQ(a,b,d){return IC.compare(a,b,d)},V_(a,b,d){return a>=b&&a<=d},bR(a,b,d){return IC.compare(a.Wa(),b,d)},XQ(a){return!!a.Wa()},f0(a,b){const d=bj(this.g);return 0===a?(a=this.g.ph().hi(),!a.get("CompareTime_executed")&&d>=b?(a.set("CompareTime_executed",!0),!0):!1):IC.compare(d,a,b)},v2(a){return isNaN(a)}, xQ(a,b,d){return IC.xr(IC.Ca(a),IC.Ca(d))<=IC.Ca(b)},zS(a,b){return IC.kf(IC.Ca(a),IC.Ca(b))},xS(a,b,d){a=IC.Ca(a);b=IC.Ca(b);d=IC.Ca(d);return IC.kf(d,b)?IC.kf(a,b)&&!IC.kf(a,d):!(!IC.kf(a,b)&&IC.kf(a,d))},K2(a,b){return"number"===typeof a?0===b:1===b},a1(a){return!!a},CT(a){return a.toLowerCase()===this.XH.ie(-1)},c4(a,b,d,c){if(!a)return!1;const e=uC.Xa(),g=a.W();IC.Md(e,g.pa());g.jb&&IC.D(g.ub);const k=this.g.ph();let m=0;for(let n=0,q=e.length;n<q;++n){const r=e[n];e[m]=r;b=k.Ha[1].S(n);c=k.Ha[3].S(n); IC.compare(b,d,c)?++m:g.ub.push(r)}IC.Ue(e,m);tr(g,e);b=!!e.length;IC.D(e);uC.Va();Lt(a);return b},d4(a,b){if(!a)return!1;const d=uC.Xa(),c=a.W();IC.Md(d,c.pa());c.jb&&IC.D(c.ub);const e=this.g.ph();let g=0;for(let k=0,m=d.length;k<m;++k){const n=d[k];d[g]=n;(b=e.Ha[1].S(k))?++g:c.ub.push(n)}IC.Ue(d,g);tr(c,d);b=!!d.length;IC.D(d);uC.Va();Lt(a);return b},i4(a,b){if(!a)return!1;const d=a.W(),c=d.pa();b=Math.floor(b);if(b>=c.length)return!1;vr(d,c[b]);Lt(a);return!0},m4(a){if(!a)return!1;const b=a.W(), d=b.pa(),c=Math.floor(this.g.Kl()*d.length);if(c>=d.length)return!1;vr(b,d[c]);Lt(a);return!0},b4(a){if(!a||!a.G.length)return!1;a.W().jb=!0;Lt(a);return!0},k4(a,b,d){if(!a)return!1;const c=a.W();var e=c.pa();const g=this.g.Vb().Me,k=this.g.ph().Ek;c.jb?(IC.Md(JC,e),pr(c),c.jb=!1):g?(IC.Md(JC,c.ub),IC.D(c.ub)):(IC.Md(JC,c.G),IC.D(c.G));for(let m=0,n=JC.length;m<n;++m)e=JC[m],IC.xor(Sj(e.m(),b,d),k)?c.G.push(e):c.ub.push(e);Lt(a);return IC.xor(!!c.G.length,k)},h4(a){if(!a)return!1;var b=a.Pa;let d= null;const c=this.g.Fo;for(let e=c.length-1;0<=e;--e){const g=c[e];if(b){if(tx(g.F(),a)){d=g;break}}else if(g.F()===a){d=g;break}}d||(b=a.pa(),b.length&&(d=b.ie(-1)));if(!d)return!1;vr(a.W(),d);Lt(a);return!0},S4(a){if(this.g.Ef)a=zC(this,a);else{var b=this.g.Da();const e=b.Od(),g=wr(e),k=g.Vb();var d=k.Pd(),c=zr(g);const m=e.Xa(k);b=b.Yg;const n=b.Xa();if(c)for(c=0;c<a&&!n.fd;++c)Cs(d),n.oa=c,Dt(k,g,m),Ds(d);else for(d=0;d<a&&!n.fd;++d)n.oa=d,Dt(k,g,m);e.Va();b.Va();a=!1}return a},H9(){if(this.g.Ef)var a= AC(this);else{var b=this.g.Da();a=b.Od();const e=wr(a),g=e.Vb();var d=g.Pd(),c=zr(e);const k=a.Xa(g);b=b.Yg;const m=b.Xa();if(c)for(c=0;!m.fd;++c)Cs(d),m.oa=c,Dt(g,e,k)||m.cd(),Ds(d);else for(d=0;!m.fd;++d)m.oa=d,Dt(g,e,k)||m.cd();a.Va();b.Va();a=!1}return a},vR(a,b,d){if(this.g.Ef)d=BC(this,a,b,d);else{var c=this.g.Da();const g=c.Od(),k=wr(g),m=k.Vb();var e=m.Pd();const n=zr(k),q=g.Xa(m);c=c.Yg;const r=c.Xa();r.Iz(a);if(d<b)if(n)for(a=b;a>=d&&!r.fd;--a)Cs(e),r.oa=a,Dt(m,k,q),Ds(e);else for(e=b;e>= d&&!r.fd;--e)r.oa=e,Dt(m,k,q);else if(n)for(a=b;a<=d&&!r.fd;++a)Cs(e),r.oa=a,Dt(m,k,q),Ds(e);else for(e=b;e<=d&&!r.fd;++e)r.oa=e,Dt(m,k,q);g.Va();c.Va();d=!1}return d},jK(a){if(this.g.Ef)var b=CC(this,a);else{var d=this.g.Da();b=d.Od();const g=wr(b),k=g.Vb();var c=k.Pd(),e=zr(g);const m=b.Xa(k);d=d.Yg;const n=d.Xa(),q=a.wc(),r=a.W(),w=uC.Xa();mC.Md(w,r.pa());if(e)for(let x=0,z=w.length;x<z&&!n.fd;++x)Cs(c),e=w[x],sr(a.W(),e),q&&bt(e),n.oa=x,Dt(k,g,m),Ds(c);else{r.jb=!1;a=r.G;mC.D(a);a.push(null); for(let x=0,z=w.length;x<z&&!n.fd;++x)c=w[x],a[0]=c,q&&bt(c),n.oa=x,Dt(k,g,m)}b.Va();d.Va();mC.D(w);uC.Va();b=!1}return b},l1(a,b,d){if(this.g.Ef)b=DC(this,a,d);else{var c=this.g.Da();b=c.Od();const e=c.ph(),g=wr(b),k=g.Vb(),m=k.Pd(),n=zr(g),q=b.Xa(k);c=c.Yg;const r=c.Xa(),w=a.wc(),x=a.W(),z=uC.Xa();mC.D(z);const E=x.pa();for(let C=0,G=E.length;C<G;++C)z.push([E[C],e.Ha[1].S(C)]);z.sort(vC);1===d&&z.reverse();if(n)for(let C=0,G=z.length;C<G&&!r.fd;++C)Cs(m),d=z[C][0],sr(a.W(),d),w&&bt(d),r.oa=C,Dt(k, g,q),Ds(m);else{x.jb=!1;a=x.G;mC.D(a);a.push(null);for(let C=0,G=z.length;C<G&&!r.fd;++C)d=z[C][0],a[0]=d,w&&bt(d),r.oa=C,Dt(k,g,q)}b.Va();c.Va();mC.D(z);uC.Va();b=!1}return b},Y2(a){return a?a.Rd():!1},V2(a){return a?Cl(a):!1},U2(a){return a?!a.G.length:!1},T2(a,b,d){return a?IC.compare(100*a.Gc(),b,d):!1},rT(){return!0},t2(){return 0<this.Eq},D8(a,b){const d=this.g.Pi;return d&&b?!!jr(d,a,b):!1}};const KC=self.B;function LC(a,b){const d=a[0]-b[0];return 0!==d?d:a[1]-b[1]} function MC(a,b){return a[1]-b[1]}const NC=[],OC=[],PC=KC.A(KC.Rect),QC=KC.A(KC.kb); KC.C.sb.Ia={mU(a,b){a.xe(b)},EZ(a,b){a.Sn()&&"number"!==typeof b&&(b=parseFloat(b));a.xe(a.Wa()+b)},B8(a,b){a.Sn()&&a.xe(a.Wa()-b)},eU(a,b){a.xe(!!b)},O8(a){a.xe(!a.Wa())},G5(){var a=this.g.Da();for(const b of a.oF)b.vd=b.Cb},XJ(a,b,d,c,e,g){if(a&&b&&(d=jj(this.g,a,b,d,c,e,g))){e&&tl(b,d);b=this.g.Da();kj(b,!0);lj(d);kj(b,!1);b=new Map;Uy(d,b,a,e);for(const [k,m]of b)ur(k.W(),m)}},B0(a,b,d,c,e,g){a&&b&&(a=this.g.Ft.get(a.toLowerCase())||null)&&KC.C.sb.Ia.XJ.call(this,a,b,d,c,e,g)},$u(a,b,d,c,e,g, k,m,n,q){if(a){var r=rm(this.g);if(g&&(r=Cn(this.g.nb,g),!r))return;g=null;if("number"!==typeof k||0<=k)if(g=r.Z(k),!g)return;PC.set(b,d,c,e);b=r.$u(a,PC,g,m,n,q);tr(a.W(),b);Lt(a)}},p8(){const a=this.Yg;0<=a.oa&&a.Pr().cd()},es(a,b){(a=this.g.Da().nG.get(a.toLowerCase())||null)&&(0===b?a.es(!1):1===b?a.es(!0):a.es(!a.Tu()))},J7(a){this.g.gv(a)},w7(a,b){0>b&&(b=0);if(a){a=a.W().pa();for(const d of a)d.gv(b)}},J5(a){if(a){a=a.W().pa();for(const b of a)a=b,a.Jd=-1,Cy(a.F())&&$y(a.g,a,!1)}},GE(a){if(!(0> a)){var b=Gs(this.g.Da());b.Aa="timer";b.si();b.rc=bj(b.Ma.I())+a;return!0}},B9(a){var b=Gs(this.g.Da());b.Aa="signal";b.si();b.Cx=a.toLowerCase();return!0},A9(){const a=this.g.Da();var b=Gs(a);const d=Promise.all(a.xm);a.xm=[];Kx(b,d);return!0},Z7(a){a=a.toLowerCase();this.XH.push(a);this.g.Ka(KC.C.sb.K.CT,null);this.XH.pop();for(const b of this.g.Da().Wh)"signal"===b.Aa&&b.Cx===a&&(b.ht=!0)},async EL(a,b,d,c,e,g){const k=this.g.da;k&&(this.P(),await k.EL(0===a?"image/png":"image/jpeg",b/100,d,c, e,g),await this.g.Hb(KC.C.sb.K.fT,null))},s6(a,b){if(!(0>=a||0>=b)){rB(this.g,a,b);vl(rm(this.g));var d=this.g.da;if(d){if("off"!==ZA(d)){var c=this.g;if(c.Ki!==a||c.Ji!==b)c.Ki=a,c.Ji=b,a=c.nb,En(a),Fn(a)}d.ac(d.xp,d.wp,!0);this.g.P()}}},J6(a){const b=this.g.da;b&&"off"!==ZA(b)&&(aB(b,0!==a?"high":"low"),b.ac(b.xp,b.wp,!0))},aq(a){this.g.wx=a},e3(a){this.g.Sw=a},f3(a){this.g.ND(a)},K6(){},H5(){for(const b of this.g.nb.hk){var a=b;a.Uo={};a.Mq=!0}},B7(a){var b=this.g;a=0!==a;b.oj!==a&&(b.oj=a,Fn(b.nb), b.P())},AL(a){this.g.AL(a)},e8(a,b){if(a){var d=a.W().pa(),c=rm(this.g),e=a.Pa;a=a.Ai;for(let k=0,m=d.length;k<m;++k){var g=d[k];const n=g.m();if(!n)continue;let q;q=e?Xp(g,b+mu(g.F(),a)):Xp(g,b);NC.push([n.Z().Ja(),Rj(n)]);OC.push([g,q])}if(NC.length){NC.sort(LC);OC.sort(MC);b=!1;for(let k=0,m=NC.length;k<m;++k)d=OC[k][0],e=sm(c,NC[k][0]),a=NC[k][1],g=e.G,g[a]!==d&&(g[a]=d,bn(d.m(),e,!0),zl(e),b=!0);b&&this.g.P();KC.D(NC);KC.D(OC)}}},OR(a){if(!this.g.Bl){var b=this.g.nb;b.Li||(b.Li=a)}},PR(a){if(!this.g.Bl){var b= this.g.nb;!b.Li&&(a=Cn(b,a))&&(b.Li=a)}},y3(a){if(!this.g.Bl){var b=this.g.nb;if(!b.Li){var d=b.hk,c=d.indexOf(b.dc());if(!a||0!==c)if(a||c!==d.length-1)b.Li=d[c+(a?-1:1)]}}},ZT(){if(!this.g.Bl){var a=this.g.nb;if(!a.Li){a.Li=a.dc();a=this.g.Da();for(const b of a.pF)b.es(b.OG)}}},d7(a,b){a&&a.fg(b)},W6(a,b){a&&(a.eB=!!b)},X6(a,b){a&&a.bg(b/100)},Z6(a,b){a&&yj(a,b)},a7(a,b){a&&a.Ok!==b&&(a.Ok=b,wl(a),a.g.P())},Q6(a,b){a&&a.fe(KC.Ca(+b))},b7(a,b,d){a&&(zj(a,!0),a.Xj(b),a.Yj(d))},I5(a){a&&zj(a,!1)}, Y6(a,b,d){if(a&&(b/=100,d/=100,a.df!==b||a.ef!==d)&&(a.df=b,a.ef=d,wl(a),a.g.P(),1!==a.df||1!==a.ef))for(const c of a.G)c.F().Hv=!0},e7(a,b){a&&a.ig(+b)},R6(a,b){a&&(fc(QC,b),QC.$(),a=a.ym,cc(a,QC)||(Yb(a,QC),this.P()))},c7(a,b){a&&(b=!!b,a.Cl!==b&&(a.Cl=b,a.g.P()))},S6(a,b){a&&a.$f(b)},T6(a,b,d){a&&(d=Lo(a.Sa,d))&&(b=1===b,d.Mb!==b&&(d.Mb=!!b,a.pi(),this.g.P()))},U6(a,b,d,c){if(a&&(a=a.Sa,b=Lo(a,b))){d=Math.floor(d);var e=qg(b.wh(),d);e&&("color"===e?(fc(QC,c),c=QC):"percent"===e&&(c/=100),a.cv(b.Ja(), d,c)&&b.Mb&&this.g.P())}},V6(a,b){a&&(b=!!b,a.LG!==b&&(a.LG=b,a.g.P()))},j7(a){rm(this.g).fm(+a)},f7(a){rm(this.g).fe(KC.Ca(+a))},g7(a,b){const d=rm(this.g);if(b=Lo(d.Sa,b))a=1===a,b.Mb!==a&&(b.Mb=!!a,d.pi(),this.g.P())},h7(a,b,d){const c=rm(this.g).Sa;if(a=Lo(c,a)){b=Math.floor(b);var e=qg(a.wh(),b);e&&("color"===e?(fc(QC,d),d=QC):"percent"===e&&(d/=100),c.cv(a.Ja(),b,d)&&a.Mb&&this.g.P())}},k7(a,b){var d=rm(this.g);a/=100;b/=100;if(d.xC!==a||d.yC!==b)d.xC=a,d.yC=b,d.Vg||(Mm(d),Nm(d),d.g.P())},i7(a){const b= rm(this.g);0===a?qj(b):rj(b)},c6(a){rm(this.g).Xj(a)},d6(a){rm(this.g).Yj(a)},a6(a,b){const d=rm(this.g);d.Xj(a);d.Yj(b)},b6(a){if(a&&(a=cw(a))&&(a=a.m())){var b=rm(this.g);b.Xj(a.T());b.Yj(a.U())}},async SS(a){const b=this.g.dc();b&&a&&!this.g.Bl&&await yC(this,b,a.Pa?a.Km:[a])},async d3(a){await KC.C.sb.Ia.SS.call(this,this.g.Ft.get(a.toLowerCase())||null)},SU(a){const b=this.g.dc();if(b&&a){a=a.Pa?a.Km:[a];for(const d of a)0===d.G.length&&$m(b,d)}},s9(a){KC.C.sb.Ia.SU.call(this,this.g.Ft.get(a.toLowerCase())|| null)},t9(){const a=this.g.dc();if(a){var b=[...a.Qi];for(const d of b)0===d.G.length&&$m(a,d)}},async a3(a){const b=this.g.dc();a&&b&&!this.g.Bl&&await yC(this,b,[...a.Fq])},async b3(a){const b=this.g.dc();(a=Cn(this.g.nb,a))&&b&&!this.g.Bl&&await yC(this,b,[...a.Fq])},Fz(a){var b=this.me.AA;if(b=0===b.length?null:b.ie(-1))switch(b.PM){case 1:"number"===typeof a&&b.Fz(a);break;case 2:"string"===typeof a&&b.Fz(a);break;case 3:b.Fz(a)}},i3(a,b,d){var c=EC(this,a.toLowerCase(),!0);const e=c.VC,g=b.toLowerCase(); e.has(g)&&console.warn(`[Construct] Function map '${a}' string '${b}' already in map; overwriting entry`);(c=KC.first(e.values())||c.yp)&&0!==c.Nk!==(0!==d.Nk)?console.error(`[Construct] Function map '${a}' string '${b}' function return type not compatible with other functions in the map; entry ignored`):e.set(g,d)},j3(a,b){const d=EC(this,a.toLowerCase(),!0);d.yp&&console.warn(`[Construct] Function map '${a}' already has a default; overwriting entry`);const c=KC.first(d.VC.values())||d.yp;c&&0!== c.Nk!==(0!==b.Nk)?console.error(`[Construct] Function map '${a}' default: function return type not compatible with other functions in the map; entry ignored`):d.yp=b},G_(a,b,d){d=Math.floor(d);var c=EC(this,a.toLowerCase(),!1);if(c){var e=c.VC.get(b.toLowerCase());if(!e)if(c.yp)e=c.yp,d=0;else{console.warn(`[Construct] Call mapped function: no function associated with map '${a}' string '${b}'; call ignored (consider setting a default)`);return}if(e.Pb())if(0!==e.Nk)console.warn(`[Construct] Call mapped function: map '${a}' string '${b}' has a return type so cannot be called`); else{var g=this.g,k=g.Da().Vb();a=k.de();(b=0<a.length)&&(e.Ug?Cs(a):Bs(a));c=[];if(k=Ms(k)){k=k.Sg;for(let n=d,q=k.length;n<q;++n)c.push(k[n].Wa())}d=e.Sg;for(let n=c.length,q=d.length;n<q;++n)c.push(d[n].Cb);if(g.Ef)a=FC(e,c,b,a);else{d=e.Ge();var m=e.Ug;e=d.de();g=0<e.length;k=d.me;const n=d.g.Da(),q=1<++n.Ke;q&&n.oe.Xa();It(d.ff,c);g&&(m?Cs(e):Bs(e));c=k.Xa(d);Ft(d,c)&&(c.yf=d,zt(d,c));k.Va();q&&n.oe.Va();g&&Ds(e);--n.Ke;b&&Ds(a);a=void 0}return a}}else console.warn(`[Construct] Call mapped function: map name '${a}' not found; call ignored`)}}; const RC=self.B; RC.C.sb.mc={Aaa:function(a){"string"===typeof a&&(a=parseInt(a,10),isNaN(a)&&(a=0));return Math.floor(a)},U$:function(a){"string"===typeof a&&(a=parseFloat(a),isNaN(a)&&(a=0));return a},Hn(a){return a.toString()},ly(a){return"string"===typeof a?a.length:0},random(a,b){return"undefined"===typeof b?this.g.Kl()*a:this.g.Kl()*(b-a)+a},GX(...a){return a[Math.floor(this.g.Kl()*a.length)]},r$(a,...b){"number"!==typeof a&&(a=0);a=RC.$(Math.floor(a),0,b.length-1);return b[a]},Iba(){return Math.PI},waa(){return Infinity}, sqrt(a){return Math.sqrt(a)},abs(a){return Math.abs(a)},round(a){return Math.round(a)},jca(a,b){b=Math.max(Math.floor(b),0);b=Math.pow(10,b);return Math.round((a+Number.EPSILON)*b)/b},floor(a){return Math.floor(a)},ceil(a){return Math.ceil(a)},sign(a){return Math.sign(a)},sin(a){return Math.sin(RC.Ca(a))},cos(a){return Math.cos(RC.Ca(a))},tan(a){return Math.tan(RC.Ca(a))},asin(a){return RC.Zd(Math.asin(a))},acos(a){return RC.Zd(Math.acos(a))},atan(a){return RC.Zd(Math.atan(a))},exp(a){return Math.exp(a)}, uY(a){return Math.log(a)},log10(a){return Math.log(a)/Math.LN10},max(...a){let b=a[0];"number"!==typeof b&&(b=0);for(let d=1,c=a.length;d<c;++d){let e=a[d];"number"===typeof e&&b<e&&(b=e)}return b},min(...a){let b=a[0];"number"!==typeof b&&(b=0);for(let d=1,c=a.length;d<c;++d){let e=a[d];"number"===typeof e&&b>e&&(b=e)}return b},$(a,b,d){return RC.$(a,b,d)},ci(a,b,d,c){return RC.An(a,b,d,c)},angle(a,b,d,c){return RC.Zd(RC.hu(a,b,d,c))},je(a,b,d){return RC.je(a,b,d)},WC(a,b,d){return RC.WC(a,b,d)}, RC(a,b,d,c){return RC.RC(a,b,d,c)},oP(a,b,d,c,e){return RC.oP(a,b,d,c,e)},mP(a,b,d){return RC.mP(a,b,d)},V9(a,b){return RC.Zd(RC.xr(RC.Ca(a),RC.Ca(b)))},W9(a,b,d){return RC.Zd(RC.HI(RC.Ca(a),RC.Ca(b),d))},X9(a,b,d){return RC.Zd(RC.II(RC.Ca(a),RC.Ca(b),RC.Ca(d)))},uca(a,b,d){b|=0;return(a|0)&~(1<<b)|(0!==d?1:0)<<b},Dca(a,b){return(a|0)^1<<(b|0)},oaa(a,b){return(a|0)&1<<(b|0)?1:0},sba(){return"\n"},Qca(a){return"string"===typeof a?a.toUpperCase():""},iba(a){return"string"===typeof a?a.toLowerCase(): ""},left(a,b){return"string"===typeof a?a.substr(0,b):""},mid(a,b,d){return"string"!==typeof a?"":0>d?a.substr(b):a.substr(b,d)},right(a,b){return"string"===typeof a?a.substr(Math.max(a.length-b,0)):""},trim(a){return"string"===typeof a?a.trim():""},Eca(a,b,d){if("string"!==typeof a||"string"!==typeof d)return"";a=a.split(d);b=Math.floor(b);return 0>b||b>=a.length?"":a[b]},Fca(a,b){return"string"===typeof a&&"string"===typeof b&&a.length?a.split(b).length:0},find(a,b){return"string"===typeof a&&"string"=== typeof b?a.search(new RegExp(RC.yu(b),"i")):-1},T$(a,b){return"string"===typeof a&&"string"===typeof b?a.search(new RegExp(RC.yu(b),"")):-1},replace(a,b,d){return"string"===typeof a&&"string"===typeof b&&"string"===typeof d?a.replace(new RegExp(RC.yu(b),"gi"),d):"string"===typeof a?a:""},Vba(a,b,d){b=wC(b,d);return a?a.search(b):-1},Uba(a,b,d,c){b=wC(b,d);return a?a.replace(b,c):""},Tba(a,b,d){return(a=xC(a.toString(),b,d))?a.length:0},Sba(a,b,d,c){c=Math.floor(c);a=xC(a.toString(),b,d);return!a|| 0>c||c>=a.length?"":a[c]},nda(a,b){let d=0>a?"-":"";0>a&&(a=-a);d+="0".repeat(Math.max(b-a.toString().length,0));return d+a.toString()},Sca(a){return encodeURIComponent(a)},Rca(a){return decodeURIComponent(a)},rP(){return this.g.Zv},Bca(){return this.g.Jd},gda(){return(Date.now()-this.g.hp)/1E3},Oca(){return Date.now()},time(){return bj(this.g)},zca(){return this.g.Ri},wba(){return this.g.xH},VX(){return this.g.iw},u$(){return this.g.zB},paa(){return this.g.$y()},kda(){return this.g.da.Ih},jda(){return this.g.da.Hh}, Cba(){return this.g.Ki},Bba(){return this.g.Ji},Aba(){return this.g.Ki},zba(){return this.g.Ji},lca(){return rm(this.g).uh()},mca(){return rm(this.g).vh()},aba(){return rm(this.g).qa()},bba(){return rm(this.g).Vc},Zaa(){return RC.Zd(rm(this.g).ua())},cba(){return rm(this.g).N()},$aa(){return rm(this.g).M()},Wca(){return 100*Ll(rm(this.g))},Xca(){return 100*Ml(rm(this.g))},ada(a){return(a=rm(this.g).Z(a))?Jl(a).Y:0},eda(a){return(a=rm(this.g).Z(a))?Jl(a).V:0},dda(a){return(a=rm(this.g).Z(a))?Jl(a).ma: 0},Zca(a){return(a=rm(this.g).Z(a))?Jl(a).ka:0},fda(a){return(a=rm(this.g).Z(a))?Jl(a).width():0},$ca(a){return(a=rm(this.g).Z(a))?Jl(a).height():0},bda(a){return(a=rm(this.g).Z(a))?(a=Jl(a),(a.Y+a.ma)/2):0},cda(a){return(a=rm(this.g).Z(a))?(a=Jl(a),(a.V+a.ka)/2):0},o$(a,b,d){return(a=rm(this.g).Z(a))?Hl(a,b,d)[0]:0},p$(a,b,d){return(a=rm(this.g).Z(a))?Hl(a,b,d)[1]:0},Uaa(a,b,d){return(a=rm(this.g).Z(a))?nm(a,b,d)[0]:0},Vaa(a,b,d){return(a=rm(this.g).Z(a))?nm(a,b,d)[1]:0},Waa(a,b,d,c){const e=rm(this.g); a=e.Z(a);b=e.Z(b);if(!a||!b||a===b)return d;const [g,k]=nm(a,d,c);return Hl(b,g,k)[0]},Xaa(a,b,d,c){const e=rm(this.g);a=e.Z(a);b=e.Z(b);if(!a||!b||a===b)return c;const [g,k]=nm(a,d,c);return Hl(b,g,k)[1]},Qaa(a){return(a=rm(this.g).Z(a))?a.Vc:0},Laa(a){return(a=rm(this.g).Z(a))?RC.Zd(a.wf):0},Naa(a){return(a=rm(this.g).Z(a))?100*a.Gc():0},Raa(a){return(a=rm(this.g).Z(a))?a.Ok:0},Saa(a){return(a=rm(this.g).Z(a))?a.uh():0},Taa(a){return(a=rm(this.g).Z(a))?a.vh():0},Oaa(a){return(a=rm(this.g).Z(a))? 100*a.df:0},Paa(a){return(a=rm(this.g).Z(a))?100*a.ef:0},Yaa(a){return(a=rm(this.g).Z(a))?a.eb():0},Maa(a){return(a=rm(this.g).Z(a))?a.Ja():-1},n$(){const a=this.g.da;return a?a.Ex:""},wY(a){var b=this.Yg;if(!(0<=b.oa))return 0;if(a){a:{const d=b.yb;for(b=b.oa;0<=b;--b){const c=d[b];if(c.qa()===a){a=c;break a}}a=null}return a?a.Ja():0}return b.Pr().Ja()},kca(){return this.g.Pq},l$(a,b,...d){var c=EC(this,a.toLowerCase(),!1);if(!c)return console.warn(`[Construct] Call mapped function: map name '${a}' not found; returning 0`), 0;let e=c.VC.get(b.toLowerCase());if(!e)if(c.yp)e=c.yp;else return console.warn(`[Construct] Call mapped function: no function associated with map '${a}' string '${b}'; returning 0 (consider setting a default)`),0;c=e.Nk;const g=Rs(e);if(0===c)return console.warn(`[Construct] Call mapped function: map '${a}' string '${b}' has no return type so cannot be called from an expression; returning 0`),0;if(!e.Pb())return g;a=this.g.Da().Vb().de();(b=0<a.length)&&(e.Ug?Cs(a):Bs(a));var k=e.Sg;for(let m=d.length, n=k.length;m<n;++m)d.push(k[m].Cb);k=e.Ge();d=k.cE(k.de(),e.Ug,c,g,...d);b&&Ds(a);return d},hba(){return this.g.Ib.oB},uaa(){return 0===this.Eq?1:this.vw/this.Eq},Cp(){return this.g.Qp()?"webgpu":"webgl"},Yba(){return this.g.Qp()?this.g.Qp().kK():this.g.Pu().Wx},vaa(){let a=0;for(const b of Vf.values())a+=b.rD();return Math.round(100*a/1048576)/100},Zba(a,b,d){return RC.HT(a,b,d)},bca(a,b,d){return RC.bL(a/100,b/100,d/100)},$ba(a,b,d,c){return RC.yz(a/100,b/100,d/100,c/100)},cca(a,b,d){return RC.bL(a/ 255,b/255,d/255)},aca(a,b,d,c){return RC.yz(a/255,b/255,d/255,c/255)},Mba(){return this.g.QB},Nba(){return this.g.fO},A$(){return this.g.Vb().pd.qa()},z$(){return this.g.Vb().Js}};"use strict";const SC=self.B;SC.C.vb=class extends SC.ml{constructor(a){super(a)}j(){super.j()}};const TC=self.B,UC=[];function VC(a){for(const b of hj(a.J))WC(b.na)} TC.C.vb.oi=class extends TC.Wn{constructor(a){super(a);this.Ie=a.Ie}j(){TC.D(this.Ie);super.j()}Jc(){for(const d of this.Ie){var a=d,b=this.g;for(const c of a.Ae)ly(c.xd(),b)}}Vn(a){const b={hh:this.g.Hd};return Promise.all(this.Ie.map(d=>oy(d,a,b)))}em(){for(const b of this.Ie){var a=b;for(const d of a.Ae)d.xd().Zi()}}vz(){VC(this)}Cu(a){TC.C.vb.sR(this,a)}eD(){UC.push({pJ:null,nP:!1,hy:[]})}bD(){const a=UC.pop(),b=a.pJ,d=a.nP;if(b){var c=new Map;for(const e of a.hy)Uy(e,c,b,d);for(const [e,g]of c)ur(e.W(), g)}}};const XC=self.B,YC=self.Sf,ZC=XC.A(XC.Rect),$C=XC.A(XC.jd),aD=XC.A(XC.fq);function WC(a){const b=a.ng.xd();a.Hs=b.Qd();a.SF=b.Xf();a.Vv=b.ez();a=a.m();Bm(a,65536,!0)}function bD(a,b){const d=a.ng;var c=Dy(a.J,a.Am);a.Am="";!c||c===a.Tb&&Ty(a.H,2)||(a.Tb=c,Sy(a.H,1,0<=c.il()),a.jj=Math.abs(c.il()),a.Gs=c.lO,a.Lb=XC.$(a.Lb,0,a.Tb.Ae.length-1),1===a.rM&&(a.Lb=0),Sy(a.H,2,!0),a.yk=a.jo.S(),c=py(a.Tb,a.Lb),cD(a,d,c,b))} function dD(a){const b=a.ng;var d=a.Lb;a.Lb=XC.$(Math.floor(a.Cs),0,a.Tb.Ae.length-1);a.Cs=-1;d!==a.Lb&&(d=py(a.Tb,a.Lb),cD(a,b,d),a.yk=a.jo.S())}function eD(a,b){a.Lb=b?0:a.Tb.Ae.length-1;Sy(a.H,2,!1);a.sF=a.Tb.qa();Sy(a.H,4,!0);a.Ly("animationend",!1,{animationName:a.sF});a.Ka(XC.C.vb.K.dT);a.Ka(XC.C.vb.K.cT);Sy(a.H,4,!1);a.rl=0} function cD(a,b,d,c){if(b!==d){var e=a.m(),g=b.xd();b=d.xd();var k=g.N();g=g.M();var m=b.N(),n=b.M();c&&c.CY?c.CY(e,k,g,m,n):(k!==m&&e.gg(e.N()*(m/k)),g!==n&&e.Kg(e.M()*(n/g)));e.Ik=+d.rh();e.Jk=+d.th();mA(e,d.rq);Pj(e);a.ng=d;a.Hs=b.Qd();a.SF=b.Xf();a.Vv=b.ez();d=a.ba().Ad;for(let q=0,r=d.length;q<r;++q);a.Ly("framechange",!1,{animationName:a.Tb.qa(),fP:a.Lb});a.Ka(XC.C.vb.K.oT);a.g.P()}} function fD(a,b){b=Math.floor(b);a=a.m();var d=Jz(a);const c=d.Wd.length/2;b===c&&(b=0);if(0>b||b>=c)return[0,0];d=d.Wd;return[d[2*b]+a.T(),d[2*b+1]+a.U()]} XC.C.vb.Instance=class extends XC.bv{constructor(a,b){super(a);let d=!0,c="",e=0,g=!0;b&&(d=!!b[0],c=b[1],e=b[2],g=b[3]);this.Tb=Dy(this.J,c)||this.J.Ie[0];this.Lb=XC.$(e,0,this.Tb.Ae.length-1);this.ng=py(this.Tb,this.Lb);b=this.ng.xd();this.Hs=b.Qd();this.SF=b.Xf();this.Vv=b.ez();Zx(this);Sy(a,2,!0);Sy(a,1,0<=this.Tb.il());this.jj=Math.abs(this.Tb.il());this.Gs=this.Tb.lO;this.jo=XC.A(XC.Vu);this.rl=this.yk=0;this.sF="";this.Cs=-1;this.Am="";this.rM=0;a=this.m();this.YV=Hz(a);a.fg(d);dA(a,g);a.Ik= +this.ng.rh();a.Jk=+this.ng.th();mA(a,this.ng.rq);Pj(a);1===this.J.Ie.length&&1===this.J.Ie[0].Ae.length||0===this.jj||this.uf()}j(){this.jo=this.Hs=this.ng=this.Tb=null;super.j()}ve(){return this.ng.xd()}yh(){return!0}Zr(){this.Hs=null}WK(){WC(this)}pf(a){var b=this.Hs;null!==b&&(Zh(a,b),b=this.m(),$w(b)?this.rv(b,a):this.sv(b,a))}sv(a,b){let d=this.YV;this.g.oj&&(d=kA(a,d));fi(b,d,this.Vv)}rv(a,b){const d=oA(a);if(0!==(a.ea&65536)){Ez(a,ZC,$C,!1);let c=$C;this.g.oj&&(c=kA(a,c));If(d,ax(a),c,this.Vv); Bm(a,65536,!1)}d.pf(b)}He(){this.Am&&bD(this);0<=this.Cs&&dD(this);const a=this.jj;if(Ty(this.H,2)&&0!==a){this.jo.$c(aj(this.g,this.H));var b=this.jo.S(),d=this.ng,c=d.$v/a;if(!(b<this.yk+c)){var e=this.Tb,g=this.Gs,k=e.Ae.length,m=e.gi(),n=e.Bw,q=e.LW;Ty(this.H,1)?this.Lb++:this.Lb--;this.yk+=c;this.Lb>=k&&(q?(Sy(this.H,1,!1),this.Lb=k-2):n?this.Lb=g:(this.rl++,this.rl>=m?eD(this,!1):this.Lb=g));0>this.Lb&&(q?(this.Lb=1,Sy(this.H,1,!0),n||(this.rl++,this.rl>=m&&eD(this,!0))):n?this.Lb=g:(this.rl++, this.rl>=m?eD(this,!0):this.Lb=g));this.Lb=XC.$(this.Lb,0,k-1);c=py(e,this.Lb);b>this.yk+c.$v/a&&(this.yk=b);cD(this,d,c)}}else this.qm()}Qd(){return this.Hs}Xf(){return this.SF}ez(){return this.Vv}sD(){return this.ng.sD()}gl(a){const b=this.ng,d=this.m();if("string"===typeof a)a=b.aN.get(a.toLowerCase())||null;else if("number"===typeof a)a=Math.floor(a-1),a=0>a||a>=b.RA.length?null:b.RA[a];else throw new TypeError("expected string or number");let c=hm(d);if(!a)return[d.T(),d.U(),c];aD.xa(a.On()); if($w(d)){const [e,g,k]=Lf(ax(d),aD.X,aD.R);aD.set(e,g);c+=k}aD.offset(-b.rh(),-b.th());aD.scale(d.N(),d.M());aD.rotate(d.ua());aD.offset(d.T(),d.U());return[aD.X,aD.R,c]}kd(){const a={a:this.Tb.bb};0!==this.yk&&(a.fs=this.yk);var b=this.jo.S();0!==b&&(a.at=b);0!==this.Lb&&(a.f=this.Lb);0!==this.jj&&(a.cas=this.jj);1!==this.rl&&(a.ar=this.rl);0!==this.Gs&&(a.rt=this.Gs);Ty(this.H,2)||(a.ap=Ty(this.H,2));Ty(this.H,1)||(a.af=Ty(this.H,1));b=this.m();b.ji()&&(a.ce=b.ji());return a}xc(a){var b=this.F(); if(!b.Ie)throw Error("no animations");if(b=b.Zz.get(a.a)||null)this.Tb=b;this.yk=a.hasOwnProperty("fs")?a.fs:0;this.jo.Set(a.hasOwnProperty("at")?a.at:0);b=a.hasOwnProperty("f")?a.f:0;this.Lb=XC.$(b,0,this.Tb.Ae.length-1);this.jj=a.hasOwnProperty("cas")?a.cas:0;this.rl=a.hasOwnProperty("ar")?a.ar:1;b=a.hasOwnProperty("rt")?a.rt:0;this.Gs=XC.$(b,0,this.Tb.Ae.length-1);b=a.hasOwnProperty("ap")?!!a.ap:!0;Sy(this.H,2,b);b=a.hasOwnProperty("af")?!!a.af:!0;Sy(this.H,1,b);this.ng=b=py(this.Tb,this.Lb);WC(this); const d=this.m();d.Ik=+b.rh();d.Jk=+b.th();mA(d,b.rq);dA(d,!!a.ce);Ty(this.H,2)&&this.uf()}uc(a){const b=this.m();switch(a){case 3:return b.ji();case 2:return XC.$(this.Lb,0,this.Tb.Ae.length-1);case 1:return this.Tb.qa()}}dg(a,b,d){var c=this.m();switch(a){case 3:dA(c,!!b);break;case 2:Sy(this.H,2,!1);a=this.Tb.Ae.length-1;c=b=XC.$(b,0,a);b=py(this.Tb,this.Lb);const e=py(this.Tb,c);cD(this,b,e,d);this.Lb=XC.$(c,0,a);break;case 1:this.Am=b,bD(this,d)}}Gg(){return self.gS}};const gD=new WeakMap; self.gS=class extends self.Wr{constructor(){super();gD.set(this,self.Pn.bk().na)}get animation(){return gD.get(this).Tb.yW}get animationName(){var a=gD.get(this);return a.Am?a.Am:a.Tb.qa()}set fP(a){YC.we(a);var b=gD.get(this);isFinite(a)&&(b.Cs=a,Ty(b.H,4)||dD(b))}get fP(){return gD.get(this).Lb}get imageWidth(){return gD.get(this).ve().N()}get imageHeight(){return gD.get(this).ve().M()}};const hD=self.B; hD.C.vb.K={g2(a){return hD.zg(this.Am?this.Am:this.Tb.qa(),a)},YQ(a,b){return hD.compare(this.Lb,a,b)},U_(a,b){return hD.compare(Ty(this.H,1)?this.jj:-this.jj,a,b)},cT(a){return hD.zg(this.sF,a)},dT(){return!0},oT(){return!0},u2(){return 0>this.m().N()},q2(){return 0>this.m().M()},xz(){return!0},RD(){return!0},ji(){return this.m().ji()}};const iD=self.B; iD.C.vb.Ia={f8(a,b,d,c){if(a&&b){var [e,g]=this.gl(d);if(d=jj(this.g,a,b,e,g,c))c&&tl(b,d),a.qb().Tn()&&(b=d.m(),b.fe(this.m().ua()),Pj(b)),b=this.g.Da(),kj(b,!0),lj(d),kj(b,!1),a!==this.F()&&(b=UC.ie(-1),b.pJ=a,b.nP=c,b.hy.push(d))}},wU(){Sy(this.H,2,!1)},j8(a){Sy(this.H,2,!0);this.yk=this.jo.S();1===a&&0!==this.Lb&&(this.Cs=0,Ty(this.H,4)||dD(this));this.uf()},l6(a,b){this.Am=a;this.rM=b;this.uf();Ty(this.H,4)||bD(this)},bU(a){isFinite(a)&&(this.Cs=a,Ty(this.H,4)||dD(this))},cU(a){this.jj=Math.abs(a); Sy(this.H,1,0<=a);0<this.jj&&this.uf()},m6(a){this.Gs=a=XC.$(Math.floor(a),0,this.Tb.Ae.length-1)},t7(a){const b=this.m(),d=b.N();a=Math.abs(d)*(0===a?-1:1);d!==a&&(b.gg(a),Pj(b))},D6(a){const b=this.m(),d=b.M();a=Math.abs(d)*(0===a?-1:1);d!==a&&(b.Kg(a),Pj(b))},fm(a){const b=this.ng.xd(),d=this.m();var c=0>d.N()?-1:1;const e=0>d.M()?-1:1;c*=b.N()*a;a=b.M()*a*e;if(d.N()!==c||d.M()!==a)d.ac(c,a),Pj(d)},async TS(a,b){const d=this.ng.xd(),c=this.m(),e=this.g,g=this.ib;if(d.Wk===a)0===b&&(c.ac(d.N(), d.M()),Pj(c)),this.Ka(iD.C.vb.K.xz);else{var k=iD.A(iD.Su);try{await my(k,e,a);if(!k.pz())throw Error("image failed to load");if(this.$n()){k.j();return}await k.Un(e.Ra(),{hh:e.Hd})}catch(m){console.error("Load image from URL failed: ",m);this.$n()||this.Ka(iD.C.vb.K.RD);return}if(this.$n())k.j();else{if(k===d)throw Error("cannot replace with self");d.lG++;d.Zi();d.Wk=k.Wk;d.Mt=k.Mt;d.gx=k.gx;d.hx=k.hx;d.ja=k.ja;d.fa=k.fa;d.Oq=k.Oq;d.ow=k.ow;d.Tg=k.Tg;d.mn=k.mn;d.Ni=k.Ni;d.Yq=k.Yq;jy(d);VC(g);e.P(); 0===b&&(c.ac(d.N(),d.M()),Pj(c));await this.Hb(iD.C.vb.K.xz)}}},u6(a){dA(this.m(),a)},vE(a,b){this.m().vE(0===a,b)},iE(a){this.m().$f(a);this.g.P()}}; self.B.C.vb.mc={RZ(){return this.Lb},SZ(){return this.Tb.Ae.length},TZ(){return this.Tb.qa()},UZ(){return Ty(this.H,1)?this.jj:-this.jj},S3(){return this.Tb.il()},W1(a){return this.gl(a)[0]},X1(a){return this.gl(a)[1]},Y1(a){return this.gl(a)[2]},V1(){return this.sD()},qS(){return this.ve().N()},oS(){return this.ve().M()},w4(a){return fD(this,a)[0]},x4(a){return fD(this,a)[1]},v4(){return Jz(this.m()).Wd.length/2}};"use strict";const jD=self.B;jD.C.Touch=class extends jD.ml{constructor(a){super(a)}j(){super.j()}}; const kD=self.B,lD=self.Sf;kD.C.Touch.oi=class extends kD.Wn{constructor(a){super(a)}j(){super.j()}Jc(){}Gg(){return self.lS}};let mD=null;self.lS=class extends self.FD{constructor(a){super(a);mD=a;a.I().nA.IJ=this}requestPermission(a){lD.le(a);const b=mD.Sj().na;if("orientation"===a)return nD(b,0);if("motion"===a)return nD(b,1);throw Error("invalid type");}};const oD=self.B;function nD(a,b){Xx(a,"request-permission",{type:b});return new Promise((d,c)=>{a.LB.push({type:b,resolve:d,reject:c})})} function pD(a,b){const d=b.result,c=b.type;a.kI=c;b=a.LB.filter(e=>e.type===c);for(const e of b)e.resolve(d?"granted":"denied");a.LB=a.LB.filter(e=>e.type!==c);d?(a.Ka(oD.C.Touch.K.yT),0===c?gC(a.g):hC(a.g)):a.Ka(oD.C.Touch.K.xT)} function qD(a,b,d){if("mouse"===b.pointerType)if(a.fB)a.fB=!1;else return;const c=performance.now();b=b.pointerId;const e=a.he.get(b);e&&(a.du=e.Ee,a.rC=e.Dg(),a.Ka(oD.C.Touch.K.vT),a.Ka(oD.C.Touch.K.YK),d||(d=rD(e,c),"single-tap"===d?(a.Ka(oD.C.Touch.K.ET),a.hj=e.T(),a.ij=e.U(),a.Ka(oD.C.Touch.K.FT)):"double-tap"===d&&(a.Ka(oD.C.Touch.K.jT),a.hj=e.T(),a.ij=e.U(),a.Ka(oD.C.Touch.K.kT))),e.j(),a.he.delete(b))} function sD(a,b){b=Math.floor(b);for(const d of a.he.values()){if(0===b)return d;--b}return null}function tD(a,b,d){var c;if(c=0<=b&&0<=d)c=a.g,c=b<(c.da?c.da.Bd:0);if(b=c)a=a.g,b=d<(a.da?a.da.md:0);return b} oD.C.Touch.Instance=class extends oD.bs{constructor(a,b){super(a,"touch");this.he=new Map;this.fB=this.OO=!1;this.LA=this.ij=this.hj=this.kI=this.rC=this.du=this.hF=this.gF=this.fF=this.kF=this.jF=this.iF=this.BH=this.AH=this.zH=this.HB=0;this.LB=[];b&&(this.OO=b[0]);this.YC("permission-result",d=>pD(this,d));a=this.I().tb();this.pg=new oD.Jy(oD.Fe.Bg(a,"pointerdown",d=>{a:{var c=d.data;if("mouse"===c.pointerType)if(this.OO)this.fB=!0;else{d=void 0;break a}const m=c.pointerId;if(!this.he.has(m)){d= c.pageX-this.g.Fu();c=c.pageY-this.g.Gu();var e=performance.now(),g=this.he.size;this.du=g;this.rC=m;var k=oD.A(oD.C.Touch.LU);k.xh(e,d,c,m,g);this.he.set(m,k);this.Ka(oD.C.Touch.K.wT);this.Ka(oD.C.Touch.K.GT);this.hj=d;this.ij=c;this.Ka(oD.C.Touch.K.ZK)}d=void 0}return d}),oD.Fe.Bg(a,"pointermove",d=>{d=d.data;if("mouse"!==d.pointerType||this.fB){var c=this.he.get(d.pointerId);if(c){var e=performance.now();2>e-c.wa()||c.jm(e,d.pageX-this.g.Fu(),d.pageY-this.g.Gu(),d.width,d.height,d.pressure)}}}), oD.Fe.Bg(a,"pointerup",d=>qD(this,d.data,!1)),oD.Fe.Bg(a,"pointercancel",d=>qD(this,d.data,!0)),oD.Fe.Bg(a,"deviceorientation",d=>{d=d.data;"number"===typeof d.webkitCompassHeading?this.HB=d.webkitCompassHeading:d.absolute&&(this.HB=d.alpha);this.zH=d.alpha;this.AH=d.beta;this.BH=d.gamma}),oD.Fe.Bg(a,"deviceorientationabsolute",d=>{this.HB=d.data.alpha}),oD.Fe.Bg(a,"devicemotion",d=>{d=d.data;const c=d.acceleration;c&&(this.iF=c.x,this.jF=c.y,this.kF=c.z);if(d=d.accelerationIncludingGravity)this.fF= d.x,this.gF=d.y,this.hF=d.z}),oD.Fe.Bg(a,"tick2",()=>this.XE()))}j(){this.he.clear();super.j()}XE(){const a=performance.now();let b=0;for(const c of this.he.values()){c.wa()<=a-50&&(c.sB=a);var d=c.tG?!1:500<=a-c.hp&&!c.kB&&15>uD.An(c.jC,c.kC,c.X,c.R)?c.tG=!0:!1;d&&(this.du=c.Ee,this.rC=c.Dg(),this.LA=b,this.Ka(oD.C.Touch.K.pT),this.hj=c.T(),this.ij=c.U(),this.Ka(oD.C.Touch.K.qT),this.LA=0);++b}}};const vD=self.B,wD=[]; vD.C.Touch.K={GT(){return!0},YK(){return!0},s2(){return 0<this.he.size},ZK(a){return a&&tD(this,this.hj,this.ij)?GA(this.g.pk,a,this.hj,this.ij):!1},IS(a){if(!a)return!1;const b=new Map,d=a.W();var c=d.pa();for(const e of c){const g=e.m(),k=g.Z();c=k;let m=b.get(c);"undefined"===typeof m&&(m=Cl(c),b.set(c,m));if(m&&ev(g))for(const n of this.he.values()){if(!tD(this,n.T(),n.U()))continue;const [q,r]=Hl(k,n.T(),n.U(),hm(g));if(Sj(g,q,r)){wD.push(e);break}}}b.clear();return wD.length?(tr(d,wD),Lt(a), vD.D(wD),!0):!1},g0(a,b,d){return(a=sD(this,a))?vD.compare(a.il(),b,d):!1},R3(){return!0},q3(){return!0},c0(a,b,d){gC(this.g);return vD.compare(0===a?this.zH:1===a?this.AH:this.BH,b,d)},S_(a,b,d){hC(this.g);return vD.compare(0===a?this.fF:1===a?this.gF:2===a?this.hF:3===a?this.iF:4===a?this.jF:this.kF,b,d)},wT(a){a=Math.floor(a);return a===this.du},vT(a){a=Math.floor(a);return a===this.du},J1(a){a=Math.floor(a);return this.he.size>=a+1},pT(){return!0},ET(){return!0},jT(){return!0},qT(a){return a&& tD(this,this.hj,this.ij)?GA(this.g.pk,a,this.hj,this.ij):!1},FT(a){return a&&tD(this,this.hj,this.ij)?GA(this.g.pk,a,this.hj,this.ij):!1},kT(a){return a&&tD(this,this.hj,this.ij)?GA(this.g.pk,a,this.hj,this.ij):!1},yT(a){return this.kI===a},xT(a){return this.kI===a}};self.B.C.Touch.Ia={V4(a){nD(this,a)}};const xD=self.B; xD.C.Touch.mc={T8(){return this.he.size},Lz(a){const b=sD(this,this.LA);return b?yD(b,rm(this.g),a,!0):0},JE(a){const b=sD(this,this.LA);return b?yD(b,rm(this.g),a,!1):0},K9(a,b){return(a=sD(this,a))?yD(a,rm(this.g),b,!0):0},M9(a,b){return(a=sD(this,a))?yD(a,rm(this.g),b,!1):0},L9(a,b){return(a=this.he.get(a))?yD(a,rm(this.g),b,!0):0},N9(a,b){return(a=this.he.get(a))?yD(a,rm(this.g),b,!1):0},ZY(){const a=sD(this,0);return a?a.T():0},bZ(){const a=sD(this,0);return a?a.U():0},$Y(a){return(a=sD(this, a))?a.T():0},cZ(a){return(a=sD(this,a))?a.U():0},aZ(a){return(a=this.he.get(a))?a.T():0},dZ(a){return(a=this.he.get(a))?a.U():0},g8(a){return(a=sD(this,a))?a.il():0},h8(a){return(a=this.he.get(a))?a.il():0},NZ(a){return(a=sD(this,a))?xD.Zd(a.ua()):0},OZ(a){return(a=this.he.get(a))?xD.Zd(a.ua()):0},p0(){gC(this.g);return this.HB},IZ(){gC(this.g);return this.zH},o_(){gC(this.g);return this.AH},u1(){gC(this.g);return this.BH},fZ(){hC(this.g);return this.fF},hZ(){hC(this.g);return this.gF},jZ(){hC(this.g); return this.hF},eZ(){hC(this.g);return this.iF},gZ(){hC(this.g);return this.jF},iZ(){hC(this.g);return this.kF},V8(){return this.du},U8(){return this.rC},J9(a){return(a=this.he.get(a))?a.N():0},K1(a){return(a=this.he.get(a))?a.M():0},D4(a){return(a=this.he.get(a))?a.eO:0}};"use strict";const uD=self.B;let zD=-1E3,AD=-1E3,BD=-1E4; function rD(a,b){if(a.tG)return"";if(333>=b-a.hp&&!a.kB&&15>uD.An(a.jC,a.kC,a.X,a.R)){if(666>=b-BD&&25>uD.An(zD,AD,a.X,a.R))return AD=zD=-1E3,BD=-1E4,"double-tap";zD=a.X;AD=a.R;BD=b;return"single-tap"}return""}function yD(a,b,d,c){if("undefined"===typeof d){b=sm(b,0);d=a.X;var e=a.R;a=b.Vc;const g=b.Ok,k=b.df,m=b.ef,n=b.wf;b.Vc=1;b.Ok=1;b.df=1;b.ef=1;b.wf=0;wl(b);d=Hl(b,d,e);b.Vc=a;b.Ok=g;b.df=k;b.ef=m;b.wf=n;wl(b);return d[c?0:1]}return(b=b.Z(d))?Hl(b,a.X,a.R)[c?0:1]:0} uD.C.Touch.LU=class extends uD.ta{constructor(){super();this.eO=this.fa=this.ja=this.uB=this.tB=this.R=this.X=this.kC=this.jC=this.sB=this.rc=this.hp=this.Ee=this.bO=0;this.kB=this.tG=!1}j(){}xh(a,b,d,c,e){this.bO=c;this.Ee=e;this.hp=this.sB=this.rc=a;this.jC=b;this.kC=d;this.X=b;this.R=d;this.tB=b;this.uB=d}jm(a,b,d,c,e,g){this.sB=this.rc;this.rc=a;this.tB=this.X;this.uB=this.R;this.X=b;this.R=d;this.ja=c;this.fa=e;this.eO=g;!this.kB&&15<=uD.An(this.jC,this.kC,this.X,this.R)&&(this.kB=!0)}Dg(){return this.bO}wa(){return this.rc}T(){return this.X}U(){return this.R}il(){const a= uD.An(this.X,this.R,this.tB,this.uB),b=(this.rc-this.sB)/1E3;return 0<b?a/b:0}ua(){return uD.hu(this.tB,this.uB,this.X,this.R)}N(){return this.ja}M(){return this.fa}};"use strict";const CD=self.B;CD.C.Text=class extends CD.ml{constructor(a){super(a)}j(){super.j()}};const DD=self.B;DD.C.Text.oi=class extends DD.Wn{constructor(a){super(a)}j(){super.j()}Jc(){}Vn(){}em(){}};const GD=self.B,HD=self.Sf,ID=[0,0,0],JD=["left","center","right"],KD=["top","center","bottom"],LD=new GD.Rect,MD=new GD.jd;new GD.kb; const ND=GD.A(GD.fq);function OD(a){const b=a.Jb;b.aj(a.$a);b.hE(a.ye);Xg(b,a.Jm);b.gs(a.Wm);Yg(b,a.Di);Zg(b,a.Ei);b.ni(a.Za);bh(b,JD[a.qd]);ch(b,KD[a.Yc]);b.yE(a.xg?"word":"character")}function PD(a){const b=a.m();a.Jb.jE(a.Jl);var d=a.Jb,c=b.wD();d.GA!==c&&(d.GA=c,Sg(d));d=b.Z();d=d.Sr()*Nl(d,hm(b));$w(b)&&d!==a.Jb.gu&&Bm(b,65536,!0);a.Jb.ac(b.N(),b.M(),d)}function QD(a){const b=a.Qb-Math.round(a.Qb),d=a.Rb-Math.round(a.Rb);if(0===b&&0===d)return a;MD.xa(a);MD.offset(-b,-d);return MD} function RD(a,b){a.Jm!==b&&(a.Jm=b,Xg(a.Jb,b),a.g.P())}function SD(a,b){b=!!b;a.Di!==b&&(a.Di=b,Yg(a.Jb,b),a.g.P())}function TD(a,b){b=!!b;a.Ei!==b&&(a.Ei=b,Zg(a.Jb,b),a.g.P())} GD.C.Text.Instance=class extends GD.bv{constructor(a,b){super(a);this.$a="";this.ye=!0;this.Jm="Arial";this.Jl=12;this.Wm=0;this.Ei=this.Di=!1;this.Za=GD.A(GD.kb);this.Yc=this.qd=0;this.xg=!0;this.$o=!1;this.Oe=null;this.te=this.Ti=-1;this.Uk=0;this.Jb=GD.A(GD.ca.ZD,this.g.Ra(),{timeout:5});this.Jb.QC=()=>this.g.P();b&&(this.$a=b[0],this.ye=!!b[1],this.Jm=b[2],this.Jl=b[3],this.Wm=b[4],this.Di=!!b[5],this.Ei=!!b[6],this.qd=b[8],this.Yc=b[9],this.xg=0===b[10],a=b[7],Wb(this.Za,a[0],a[1],a[2]),this.m().fg(b[11]), this.$o=!!b[13]);OD(this);this.rm()}j(){this.tf();this.Oe&&(this.Oe.j(),this.Oe=null);this.Jb.j();this.Jb=null;super.j()}rm(){if(this.$o){let a=this.$a;this.ye&&(a=a.replace(ie,""));this.Oe?this.Oe.aj(a):this.Oe=GD.A(GD.tL,this.g,a)}else this.Oe&&(this.Oe.j(),this.Oe=null)}pf(a){var b=this.m();PD(this);const d=this.Jb.Qd();if(d){var c=b.Z();if(0===b.ua()&&0===c.ua()&&0===hm(b)&&!$w(b)&&Pl(c)){b=Hz(b);const [k,m]=jm(c,b.Qb,b.Rb),[n,q]=jm(c,b.Qc,b.Rc);b=k-Math.round(k);var e=m-Math.round(m);LD.set(k, m,n,q);LD.offset(-b,-e);MD.$k(LD);const [r,w]=gi(a,a.Rj());b=this.g.da;e=r;var g=w;e=e||b.Cd;g=g||b.od;const x=e/2+b.nW,z=g/2+b.oW;let E=b.sA;if(e!==b.Cd||g!==b.od)kf(a,OA,e/g),E=OA;Th(a,E);b=mf(a,x,z,a.Ve(g),x,z,g);Wh(a,b);Zh(a,d);di(a,MD,this.Jb.Xf());cm(c,a)}else Zh(a,d),$w(b)?this.rv(b,a):this.sv(b,a)}}sv(a,b){a=Hz(a);this.g.oj&&(a=QD(a));di(b,a,this.Jb.Xf())}rv(a,b){const d=oA(a);if(0!==(a.ea&65536)){Ez(a,LD,MD,!1);let c=MD;this.g.oj&&(c=QD(c));If(d,ax(a),c,this.Jb.Xf());Bm(a,65536,!1)}d.pf(b)}Wy(){const a= this.Jb.Qd();return a?[a.N(),a.M()]:[100,100]}Xy(){return this.Jb.Xf()}nz(){return!1}kd(){const a={t:this.$a,c:this.Za.toJSON(),fn:this.Jm,ps:this.Jl};this.ye&&(a.bbc=this.ye);0!==this.qd&&(a.ha=this.qd);0!==this.Yc&&(a.va=this.Yc);this.xg||(a.wr=this.xg);0!==this.Wm&&(a.lho=this.Wm);this.Di&&(a.b=this.Di);this.Ei&&(a.i=this.Ei);-1!==this.te&&(a.tw={st:this.Ti,en:this.te,l:this.Uk});return a}xc(a){this.tf();this.$a=a.t;rc(this.Za,a.c);this.Jm=a.fn;this.Jl=a.ps;this.ye=a.hasOwnProperty("bbc")?a.bbc: !1;this.qd=a.hasOwnProperty("ha")?a.ha:0;this.Yc=a.hasOwnProperty("va")?a.va:0;this.xg=a.hasOwnProperty("wr")?a.wr:!0;this.Wm=a.hasOwnProperty("lho")?a.lho:0;this.Di=a.hasOwnProperty("b")?a.b:!1;this.Ei=a.hasOwnProperty("i")?a.i:!1;a.hasOwnProperty("tw")&&(a=a.tw,this.Ti=a.st,this.te=a.en,this.Uk=a.l);OD(this);this.rm();-1!==this.te&&this.uf()}uc(a){switch(a){case 0:return this.$a;case 1:return this.ye;case 2:return this.Jm;case 3:return this.Jl;case 4:return this.tv();case 5:return this.Di;case 6:return this.Ei; case 7:return ID[0]=this.Za.hb,ID[1]=this.Za.lb,ID[2]=this.Za.gb,ID;case 8:return this.qd;case 9:return this.Yc;case 10:return this.xg?1:0;case 13:return this.$o}}dg(a,b){switch(a){case 0:this.dk(b);break;case 1:if(this.ye===!!b)break;this.ye=!!b;OD(this);break;case 2:RD(this,b);break;case 3:this.Jl!==b&&(this.Jl=b,this.g.P());break;case 4:this.jq(b);break;case 5:SD(this,b);break;case 6:TD(this,b);break;case 7:a=this.Za;if(a.hb===b[0]&&a.lb===b[1]&&a.gb===b[2])break;Wb(this.Za,b[0],b[1],b[2]);OD(this); break;case 8:this.zv(b);break;case 9:this.kq(b);break;case 10:this.Bv(0===b)}}dk(a){this.$a!==a&&(this.$a=a,this.Jb.aj(a),this.rm(),this.g.P())}eF(a,b){this.dk(a);this.Ti=this.g.tr.S();this.te=this.Ti+b/Ij(this.ba());this.Uk=GD.WJ(a.replace(ie,""));this.Jb.bq(0);this.uf()}tf(){this.te=this.Ti=-1;this.Uk=0;this.Jb.bq(-1);this.qm()}OE(){-1!==this.te&&(this.tf(),this.Ka(GD.C.Text.K.Yu),this.g.P())}jq(a){this.Wm!==a&&(this.Wm=a,OD(this),this.g.P())}tv(){return this.Wm}zv(a){this.qd!==a&&(this.qd=a,OD(this), this.g.P())}kq(a){this.Yc!==a&&(this.Yc=a,OD(this),this.g.P())}Bv(a){a=!!a;this.xg!==a&&(this.xg=a,OD(this),this.g.P())}cF(a){this.$o=!!a;this.rm()}SE(){PD(this);return dh(this.Jb)}RE(){PD(this);return this.Jb.zD()}uv(a,b){const d=this.m();ND.set(a-d.T(),b-d.U());ND.rotate(-d.ua());ND.offset(d.N()*d.rh(),d.M()*d.th());ND.Dj(d.N(),d.M());ND.scale(this.Jb.N(),this.Jb.M());if(a=this.Jb.DD(ND.X,ND.R))if(a=this.Jb.yc(a.tc,"tag"))return a.Zc;return""}TE(a,b,d){return(b=this.uv(b,d))&&GD.zg(a,b)}lm(a,b){b= Math.floor(b);var d=this.Jb.pD(a,b);if(!d)return null;a=this.m();const c=$g(this.Jb);b=d.En;const e=d.Fn-(d.height-d.Rf)*c,g=d.width*c/this.Jb.N()*a.N();d=d.height*c/this.Jb.M()*a.M();ND.set(b,e);ND.Dj(this.Jb.N(),this.Jb.M());ND.scale(a.N(),a.M());ND.offset(-a.N()*a.rh(),-a.M()*a.th());ND.rotate(a.ua());ND.offset(a.T(),a.U());return{x:ND.X,y:ND.R,width:g,height:d}}QE(a){return this.Jb.mD(a)}He(){var a=this.g.tr.S();a>=this.te?(this.tf(),this.Ka(GD.C.Text.K.Yu),this.g.P()):(a=GD.TP(this.Ti,this.te, a,this.Uk),a=Math.floor(a),a!==this.Jb.Mh&&(this.Jb.bq(a),this.g.P()))}Gg(){return self.iS}};const UD=new WeakMap,VD=new Map([["top",0],["center",1],["bottom",2]]); self.iS=class extends self.Wr{constructor(){super();UD.set(this,self.Pn.bk().na)}get text(){return UD.get(this).$a}set text(a){HD.le(a);const b=UD.get(this);b.tf();b.dk(a)}set lineHeight(a){HD.we(a);UD.get(this).jq(a)}get lineHeight(){return UD.get(this).tv()}set verticalAlign(a){HD.le(a);a=VD.get(a);if("undefined"===typeof a)throw Error("invalid mode");UD.get(this).kq(a)}get verticalAlign(){return KD[UD.get(this).Yc]}};const WD=self.B; WD.C.Text.K={aR(a,b){return b?this.$a===a:WD.zg(this.$a,a)},FS(){return-1!==this.te},Yu(){return!0},TR(a,b,d){return this.TE(a,b,d)}};const XD=self.B,YD=XD.A(XD.kb); XD.C.Text.Ia={aj(a){this.tf();"number"===typeof a&&1E9>a&&(a=Math.round(1E10*a)/1E10);this.dk(a.toString())},AQ(a){this.tf();"number"===typeof a&&1E9>a&&(a=Math.round(1E10*a)/1E10);(a=a.toString())&&this.dk(this.$a+a)},QU(a,b){this.tf();"number"===typeof a&&1E9>a&&(a=Math.round(1E10*a)/1E10);this.eF(a.toString(),b)},G6(a,b){let d=!1,c=!1;switch(b){case 1:d=!0;break;case 2:c=!0;break;case 3:c=d=!0}if(a!==this.Jm||d!==this.Di||c!==this.Ei)RD(this,a),SD(this,d),TD(this,c)},jE(a){this.Jl!==a&&(this.Jl= a,this.g.P())},F6(a){fc(YD,a);YD.$();cc(this.Za,YD)||(Yb(this.Za,YD),this.Jb.ni(this.Za),this.g.P())},U7(){console.warn("[Text] 'Set web font' action is deprecated and no longer has any effect")},iE(a){this.m().$f(a);this.g.P()},PU(){this.OE()},gs(a){this.jq(a)},fU(a){this.zv(a)},lU(a){this.kq(a)},nU(a){this.Bv(0===a)},kU(a){this.cF(a)}}; self.B.C.Text.mc={Text(){return this.$a},KT(){return this.ye?this.$a.replace(ie,""):this.$a},e1(){return this.Jm},f1(){return this.Jl},FU(){return this.SE()},EU(){return this.RE()},RS(){return this.Wm},xU(a,b){return this.uv(a,b)},yU(a){return this.QE(a)},BU(a,b){return(a=this.lm(a,b))?a.x:0},CU(a,b){return(a=this.lm(a,b))?a.y:0},AU(a,b){return(a=this.lm(a,b))?a.width:0},zU(a,b){return(a=this.lm(a,b))?a.height:0}};"use strict";const ZD=self.B;ZD.C.Wb=class extends ZD.ml{constructor(a){super(a)}j(){super.j()}}; const $D=self.B;$D.C.Wb.oi=class extends $D.Wn{constructor(a){super(a)}j(){super.j()}Jc(){}};const aE=self.B;async function bE(a,b){a.EM=b?"string"===typeof b?b:"string"===typeof b.message?b.message:"string"===typeof b.name?b.name:"string"===typeof b.data?b.data:"unknown error":"unknown error";await a.Hb(aE.C.Wb.K.mT)}aE.C.Wb.Instance=class extends aE.bs{constructor(a){super(a);this.mb=this.Lh="";this.Kw=[];this.EM="";this.Vq=this.Uq=0;this.Xh=ej(this.g)}j(){super.j()}};const cE=self.B; cE.C.Wb.K={SK(a){return this.Lh===a},NK(){return!0},QK(a){return this.Lh===a},MK(){return!0},sT(a){return this.Lh===a},eT(){return!0},gT(){return!0},bT(){return!0},mT(){return!0},PK(a){return this.Lh===a},RK(a){return this.Lh===a},Z_(a,b){return cE.compare(this.Lh,a,b)},h0(a,b){return cE.compare(this.mb,a,b)},D2(){return 0<this.Vq},C2(){return 0<this.Uq},LK(){return!0},KK(){return!0}};const dE=self.B;function eE(a){return"string"===typeof a||"number"===typeof a} dE.C.Wb.Ia={async iU(a,b){this.Vq++;try{const d=await this.Xh.setItem(a,b);await this.nl(async()=>{this.Lh=a;this.mb=d;await this.Hb(dE.C.Wb.K.NK);await this.Hb(dE.C.Wb.K.SK)})}catch(d){await bE(this,d)}finally{this.Vq--,0===this.Vq&&await this.Hb(dE.C.Wb.K.LK)}},async o6(a,b){if(b&&(b=cw(b,this.H))&&(b=b.na)){b=b.x1();this.Vq++;try{await this.Xh.setItem(a,b),await this.nl(async()=>{this.Lh=a;this.mb="";await this.Hb(dE.C.Wb.K.NK);await this.Hb(dE.C.Wb.K.SK)})}catch(d){await bE(this,d)}finally{this.Vq--, 0===this.Vq&&await this.Hb(dE.C.Wb.K.LK)}}},async F1(a){this.Uq++;try{const b=await this.Xh.getItem(a);await this.nl(async()=>{this.Lh=a;this.mb=eE(b)?b:"";await this.Hb(dE.C.Wb.K.MK);await this.Hb(dE.C.Wb.K.QK)})}catch(b){await bE(this,b)}finally{this.Uq--,0===this.Uq&&await this.Hb(dE.C.Wb.K.KK)}},async A1(a,b){if(b&&(b=cw(b,this.H))){var d=b.na;this.Uq++;try{let c=await this.Xh.getItem(a);c=c instanceof ArrayBuffer?c:new ArrayBuffer(0);await this.nl(async()=>{this.mb="";this.Lh=a;d.n6(c);await this.Hb(dE.C.Wb.K.MK); await this.Hb(dE.C.Wb.K.QK)})}catch(c){await bE(this,c)}finally{this.Uq--,0===this.Uq&&await this.Hb(dE.C.Wb.K.KK)}}},async SQ(a){try{const b=await this.Xh.getItem(a);await this.nl(async()=>{this.Lh=a;"undefined"===typeof b||null===b?(this.mb="",await this.Hb(dE.C.Wb.K.RK)):(this.mb=eE(b)?b:"",await this.Hb(dE.C.Wb.K.PK))})}catch(b){await bE(this,b)}},async Q4(a){try{await this.Xh.removeItem(a),await this.nl(async()=>{this.Lh=a;this.mb="";await this.Hb(dE.C.Wb.K.eT);await this.Hb(dE.C.Wb.K.sT)})}catch(b){await bE(this, b)}},async TQ(){try{await this.Xh.clear(),await this.nl(async()=>{this.mb=this.Lh="";dE.D(this.Kw);await this.Hb(dE.C.Wb.K.gT)})}catch(a){await bE(this,a)}},async w1(){try{const a=await this.Xh.keys();await this.nl(async()=>{this.Kw=a;await this.Hb(dE.C.Wb.K.bT)})}catch(a){await bE(this,a)}}};self.B.C.Wb.mc={KS(){return this.mb},O2(){return this.Lh},Q2(){return this.Kw.length},P2(a){a=Math.floor(a);return 0>a||a>=this.Kw.length?"":this.Kw[a]},Y0(){return this.EM}};"use strict"; const fE=self.B,gE=[];fE.C.Audio=class extends fE.ml{constructor(a){super(a)}KE(a){gE.push(a)}j(){super.j()}};const hE=self.B;hE.C.Audio.oi=class extends hE.Wn{constructor(a){super(a)}j(){super.j()}Jc(){}Gg(){return self.ZR}};self.ZR=class extends self.FD{constructor(a){super(a)}};const iE=self.B,jE=["interactive","balanced","playback"];function Ep(a){return null!==a.g.Ed?"running":a.vF} function kE(a,b){const d=b.tickCount;a.CH=b.outputLatency;const c=a.Qh.filter(e=>e.hasOwnProperty("placeholder")&&(e.placeholder>d||-1===e.placeholder));a.Qh=b.audioInstances;a.mB=b.analysers;0<c.length&&iE.Sl(a.Qh,c)}async function lE(a,b){const d=b.type;a.lI=b.tags;b=b.aiid;if("ended"===d){for(const c of a.Qh)if(c.aiid===b){c.isPlaying=!1;break}await a.Hb(iE.C.Audio.K.lT)}else"fade-ended"===d&&await a.Hb(iE.C.Audio.K.nT)}function mE(a,b){return a.CM?b.split(" ").filter(d=>!!d):b?[b]:[]} function nE(a,b){for(const d of b){b=!1;for(const c of a)if(iE.zg(c,d)){b=!0;break}if(!b)return!1}return!0}function oE(a){a=Math.pow(10,a/20);return isFinite(a)?Math.max(Math.min(a,1),0):0}function pE(a,b){b=mE(a,b);for(const d of a.Qh)if(nE(d.tags,b))return d;return null}function qE(a,b){const d=mE(a,b);return a.Qh.some(c=>nE(c.tags,d)&&c.isPlaying)} function rE(a,b,d,c,e,g){if(qE(a,d))return null;const k=a.nM.get(b);b={tags:mE(a,d),duration:k?k.duration:0,volume:g,isPlaying:!0,playbackTime:0,playbackRate:1,uid:-1,bufferOriginalUrl:b,bufferUrl:"",bufferType:"",isMusic:c,isLooping:e,isMuted:!1,resumePosition:0,pan:null,placeholder:-1};a.Qh.push(b);return b} function sE(a){return a.Qh.filter(b=>-1!==b.uid).map(b=>Fo(a.g,b.uid)).filter(b=>b).map(b=>{const d=b.m(),c=d.Z().ua(),[e,g]=tE(d.T(),d.U(),-c,a.Gf[0],a.Gf[1]);return{uid:b.Ab,x:e,y:g,z:hm(d),angle:d.ua()-c}})}function tE(a,b,d,c,e){if(0===d)return[a,b];const g=Math.sin(d);d=Math.cos(d);a-=c;b-=e;const k=a*g;a=a*d-b*g;return[a+c,b*d+k+e]}function uE(a,b,d){for(const c of a.mB)if(c.index===d&&iE.zg(c.tag,b))return c;return null} function vE(a,b){for(const d of mE(a,b))b=d.toLowerCase(),a.vA.set(b,(a.vA.get(b)||0)+1)} iE.C.Audio.Instance=class extends iE.bs{constructor(a,b){super(a,"audio");this.Ii=0;this.lI=[];this.CM=!0;this.ux=this.IO=0;this.IH=!1;this.BM=this.XN=1;this.Gf=[this.g.eh/2,this.g.Pf/2,600];this.No=[0,0,-1];this.Oo=[0,1,0];this.jO=600;this.JN=1E4;this.nO=1;this.qj=null;this.xB=-1;this.Ct=1;this.Ph=!1;this.oO=0;this.vF="suspended";this.CH=0;this.vA=new Map;this.KH=this.LH=0;this.nM=new Map;this.dn=new Map;a="interactive";b&&(this.IO=b[0],this.ux=b[1],this.IH=b[2],a=jE[b[3]],this.CM=b[4],this.XN=b[5], this.BM=b[6],this.Gf[2]=b[7],this.jO=b[8],this.JN=b[9],this.nO=b[10]);this.Qh=[];this.lt=[];this.mB=[];Ux(this,[["state",d=>kE(this,d)],["audiocontext-state",d=>{this.vF=d.audioContextState}],["fxstate",d=>{this.lt=d.fxstate}],["trigger",d=>lE(this,d)],["buffer-metadata",d=>{this.nM.set(d.originalUrl,{duration:d.duration})}]]);b=this.I().tb();this.pg=new iE.Jy(iE.Fe.Bg(b,"instancedestroy",d=>this.WE(d.instance)),iE.Fe.Bg(b,"afterload",()=>this.nm()),iE.Fe.Bg(b,"suspend",()=>{this.IH||Vx(this,"set-suspended", {isSuspended:!0})}),iE.Fe.Bg(b,"resume",()=>{this.IH||Vx(this,"set-suspended",{isSuspended:!1})}));MB(this.g,Wx(this,"create-audio-context",{preloadList:Qk(this.g.Ib).map(d=>({originalUrl:d.DY,url:d.url,type:d.type,fileSize:d.fileSize})),isiOSCordova:this.g.WG,isSafari:"Safari"===iE.O.ke,timeScaleMode:this.IO,latencyHint:a,panningModel:this.XN,distanceModel:this.BM,refDistance:this.jO,maxDistance:this.JN,rolloffFactor:this.nO,listenerPos:this.Gf}).then(d=>{this.oO=d.sampleRate;this.vF=d.audioContextState; this.CH=d.outputLatency}));this.uf()}j(){this.qj=null;super.j()}KE(a){this.qb().KE(a)}WE(a){this.qj===a&&(this.qj=null)}He(){const a={timeScale:this.g.Jd,gameTime:this.g.kw.S(),instPans:sE(this),tickCount:this.g.pn};if(this.qj){const b=this.qj.m();this.Gf[0]=b.T();this.Gf[1]=b.U();a.listenerPos=this.Gf;a.listenerOrientation=[...this.No,...this.Oo]}Vx(this,"tick",a)}kd(){return{isSilent:this.Ph,masterVolume:this.Ct,listenerZ:this.Gf[2],listenerForwardVec:this.No,listenerUpVec:this.Oo,listenerUid:this.qj? this.qj.Ab:-1,remoteUrls:[...this.dn.entries()],playing:this.Qh.filter(a=>a.hasOwnProperty("placeholder")||3===this.ux?!1:a.isMusic&&1===this.ux?!1:a.isMusic||2!==this.ux?!0:!1),effects:this.lt,analysers:this.mB}}xc(a){this.Ph=a.isSilent;this.Ct=a.masterVolume;this.Gf[2]=a.listenerZ;this.qj=null;this.xB=a.listenerUid;a.hasOwnProperty("listenerForwardVec")?this.No=a.listenerForwardVec:this.No=[0,0,-1];a.hasOwnProperty("listenerUpVec")?this.Oo=a.listenerUpVec:this.Oo=[0,1,0];this.dn.clear();if(a.remoteUrls)for(const [b, d]of a.remoteUrls)this.dn.set(b,d);this.Qh=a.playing;for(const b of this.Qh)b.hasOwnProperty("tag")&&!b.hasOwnProperty("tags")&&(b.tags=[b.tag].filter(d=>!!d));this.lt=a.effects;this.mB=a.analysers}nm(){if(-1!==this.xB&&(this.qj=Fo(this.g,this.xB),this.xB=-1,this.qj)){var a=this.qj.m();this.Gf[0]=a.T();this.Gf[1]=a.U()}for(var b of this.Qh)(a=Pk(this.g.Ib,b.bufferOriginalUrl))?(b.bufferUrl=a.url,b.bufferType=a.type):b.bufferUrl=null;for(const d of Object.values(this.lt))for(const c of d)c.hasOwnProperty("bufferOriginalUrl")&& (b=Pk(this.g.Ib,c.bufferOriginalUrl))&&(c.bufferUrl=b.url,c.bufferType=b.type);Vx(this,"load-state",{saveLoadMode:this.ux,timeScale:this.g.Jd,gameTime:this.g.kw.S(),listenerPos:this.Gf,listenerOrientation:[...this.No,...this.Oo],isSilent:this.Ph,masterVolume:this.Ct,playing:this.Qh.filter(d=>null!==d.bufferUrl),effects:this.lt})}}; self.B.C.Audio.K={lT(a){return nE(this.lI,mE(this,a))},nT(a){return nE(this.lI,mE(this,a))},C4(){return this.KH===this.LH},FZ(){return!0},E2(){return this.Ph},vS(){for(const a of this.Qh)if(a.isPlaying)return!0;return!1},H2(a){return qE(this,a)}};const wE=self.B,xE="lowpass highpass bandpass lowshelf highshelf peaking notch allpass".split(" "); wE.C.Audio.Ia={Play(a,b,d,c,e){a=wE.C.Audio.Ia.RL.call(this,a,b,d,c,e);this.KE(a);return a},cL(a,b,d,c){wE.C.Audio.Ia.RL.call(this,a,0,b,0,d,c)},async RL(a,b,d,c,e,g){if(!this.Ph){var k=a[1],m=Pk(this.g.Ib,a[0]);if(m){var n=this.Ii;this.Ii=0;var q=rE(this,a[0],e,k,0!==b,oE(d));try{await Wx(this,"play",{originalUrl:a[0],url:m.url,type:m.type,isMusic:k,tags:mE(this,e),isLooping:0!==b,vol:oE(d),stereoPan:wE.$(c/100,-1,1),pos:g||0,off:n,trueClock:!!self.C3_GetAudioContextCurrentTime})}finally{q&&(q.placeholder= this.g.pn)}}}},async s4(a,b,d,c,e,g,k,m,n,q,r){if(!this.Ph){var w=a[1],x=Pk(this.g.Ib,a[0]);if(x){var z=this.Ii;this.Ii=0;var E=rE(this,a[0],r,w,0!==b,oE(d));try{await Wx(this,"play",{originalUrl:a[0],url:x.url,type:x.type,isMusic:w,tags:mE(this,r),isLooping:0!==b,vol:oE(d),pos:0,off:z,trueClock:!!self.C3_GetAudioContextCurrentTime,panning:{x:c,y:e,z:g,angle:wE.Ca(k),innerAngle:wE.Ca(m),outerAngle:wE.Ca(n),outerGain:oE(q)}})}finally{E&&(E.placeholder=this.g.pn)}}}},async q4(a,b,d,c,e,g,k,m){if(!this.Ph&& c&&(c=cw(c))&&c.m()){var n=c.m(),q=n.Z().ua(),[r,w]=tE(n.T(),n.U(),-q,this.Gf[0],this.Gf[1]),x=a[1],z=Pk(this.g.Ib,a[0]);if(z){var E=this.Ii;this.Ii=0;var C=rE(this,a[0],m,x,0!==b,oE(d));try{await Wx(this,"play",{originalUrl:a[0],url:z.url,type:z.type,isMusic:x,tags:mE(this,m),isLooping:0!==b,vol:oE(d),pos:0,off:E,trueClock:!!self.C3_GetAudioContextCurrentTime,panning:{x:r,y:w,z:hm(n),angle:n.ua()-q,innerAngle:wE.Ca(e),outerAngle:wE.Ca(g),outerGain:oE(k),uid:c.Ab}})}finally{C&&(C.placeholder=this.g.pn)}}}}, async LT(a,b,d,c,e,g){if(!this.Ph){a=1===a;var k=Pk(this.g.Ib,b)||this.dn.get(b.toLowerCase());if(k){var m=this.Ii;this.Ii=0;var n=rE(this,b,g,a,0!==d,oE(c));try{await Wx(this,"play",{originalUrl:b,url:k.url,type:k.type,isMusic:a,tags:mE(this,g),isLooping:0!==d,vol:oE(c),stereoPan:wE.$(e/100,-1,1),pos:0,off:m,trueClock:!!self.C3_GetAudioContextCurrentTime})}finally{n&&(n.placeholder=this.g.pn)}}}},async t4(a,b,d,c,e,g,k,m,n,q,r,w){if(!this.Ph){a=1===a;var x=Pk(this.g.Ib,b)||this.dn.get(b.toLowerCase()); if(x){var z=this.Ii;this.Ii=0;var E=rE(this,b,w,a,0!==d,oE(c));try{await Wx(this,"play",{originalUrl:b,url:x.url,type:x.type,isMusic:a,tags:mE(this,w),isLooping:0!==d,vol:oE(c),pos:0,off:z,trueClock:!!self.C3_GetAudioContextCurrentTime,panning:{x:e,y:g,z:k,angle:wE.Ca(m),innerAngle:wE.Ca(n),outerAngle:wE.Ca(q),outerGain:oE(r)}})}finally{E&&(E.placeholder=this.g.pn)}}}},async r4(a,b,d,c,e,g,k,m,n){if(!this.Ph&&!this.Ph&&e&&(e=cw(e))&&e.m()){var q=e.m(),r=q.Z().ua(),[w,x]=tE(q.T(),q.U(),-r,this.Gf[0], this.Gf[1]);a=1===a;var z=Pk(this.g.Ib,b)||this.dn.get(b.toLowerCase());if(z){var E=this.Ii;this.Ii=0;var C=rE(this,b,n,a,0!==d,oE(c));try{await Wx(this,"play",{originalUrl:b,url:z.url,type:z.type,isMusic:a,tags:mE(this,n),isLooping:0!==d,vol:oE(c),pos:0,off:E,trueClock:!!self.C3_GetAudioContextCurrentTime,panning:{x:w,y:x,z:hm(q),angle:q.ua()-r,innerAngle:wE.Ca(g),outerAngle:wE.Ca(k),outerGain:oE(m),uid:e.Ab}})}finally{C&&(C.placeholder=this.g.pn)}}}},p7(a,b){Vx(this,"set-looping",{tags:mE(this, a),isLooping:0===b})},v7(a,b){Vx(this,"set-muted",{tags:mE(this,a),isMuted:0===b})},gm(a,b){Vx(this,"set-volume",{tags:mE(this,a),vol:oE(b)})},g1(a,b,d,c){Vx(this,"fade-volume",{tags:mE(this,a),vol:oE(b),duration:d,stopOnEnd:0===c})},E7(a,b){Vx(this,"set-stereo-pan",{tags:mE(this,a),p:wE.$(b/100,-1,1)})},async A4(a){const b=a[1],d=Pk(this.g.Ib,a[0]);d&&(this.LH++,await Wx(this,"preload",{originalUrl:a[0],url:d.url,type:d.type,isMusic:b}),this.KH++)},async B4(a,b){a=1===a;const d=Pk(this.g.Ib,b)|| this.dn.get(b.toLowerCase());d&&(this.LH++,await Wx(this,"preload",{originalUrl:b,url:d.url,type:d.type,isMusic:a}),this.KH++)},Ch(a,b){Vx(this,"set-playback-rate",{tags:mE(this,a),rate:Math.max(b,0)})},cd(a){Vx(this,"stop",{tags:mE(this,a)})},n8(){Vx(this,"stop-all")},y7(a,b){Vx(this,"set-paused",{tags:mE(this,a),paused:0===b})},e6(a,b){Vx(this,"seek",{tags:mE(this,a),pos:b})},D7(a){2===a&&(a=this.Ph?1:0);a=0===a;this.Ph!==a&&(this.Ph=a,Vx(this,"set-silent",{isSilent:a}))},r7(a){a=oE(a);this.Ct!== a&&(this.Ct=a,Vx(this,"set-master-volume",{vol:a}))},qZ(a,b,d,c,e,g,k){b=xE[b];vE(this,a);Vx(this,"add-effect",{type:"filter",tags:mE(this,a),params:[b,d,c,e,g,wE.$(k/100,0,1)]})},nZ(a,b,d,c){vE(this,a);Vx(this,"add-effect",{type:"delay",tags:mE(this,a),params:[b,oE(d),wE.$(c/100,0,1)]})},rZ(a,b,d,c,e,g){vE(this,a);Vx(this,"add-effect",{type:"flanger",tags:mE(this,a),params:[b/1E3,d/1E3,c,e/100,wE.$(g/100,0,1)]})},xZ(a,b,d,c,e,g,k){vE(this,a);Vx(this,"add-effect",{type:"phaser",tags:mE(this,a),params:[b, d,c,e,g,wE.$(k/100,0,1)]})},mZ(a,b,d,c){const e=Pk(this.g.Ib,b[0]);e&&(vE(this,a),Vx(this,"add-effect",{type:"convolution",tags:mE(this,a),bufferOriginalUrl:b[0],bufferUrl:e.url,bufferType:e.type,params:[0===d,wE.$(c/100,0,1)]}))},tZ(a,b){vE(this,a);Vx(this,"add-effect",{type:"gain",tags:mE(this,a),params:[oE(b)]})},BZ(a,b){vE(this,a);Vx(this,"add-effect",{type:"stereopan",tags:mE(this,a),params:[wE.$(b/100,-1,1)]})},wZ(a){vE(this,a);Vx(this,"add-effect",{type:"gain",tags:mE(this,a),params:[0]})}, CZ(a,b,d){vE(this,a);Vx(this,"add-effect",{type:"tremolo",tags:mE(this,a),params:[b,wE.$(d/100,0,1)]})},AZ(a,b,d){vE(this,a);Vx(this,"add-effect",{type:"ringmod",tags:mE(this,a),params:[b,wE.$(d/100,0,1)]})},oZ(a,b,d,c,e,g){vE(this,a);Vx(this,"add-effect",{type:"distortion",tags:mE(this,a),params:[Math.pow(10,b/20),Math.pow(10,d/20),c,Math.pow(10,e/20),wE.$(g/100,0,1)]})},lZ(a,b,d,c,e,g){vE(this,a);Vx(this,"add-effect",{type:"compressor",tags:mE(this,a),params:[b,d,c,e/1E3,g/1E3]})},kZ(a,b,d){vE(this, a);Vx(this,"add-effect",{type:"analyser",tags:mE(this,a),params:[b,d]})},N4(a){a=mE(this,a);for(const b of a)this.vA.set(b.toLowerCase(),0);Vx(this,"remove-effects",{tags:a});this.lt={}},cv(a,b,d,c,e,g){Vx(this,"set-effect-param",{tags:mE(this,a),index:Math.floor(b),param:d,value:c,ramp:e,time:g})},m7(a){a&&(a=cw(a))&&a.m()&&(this.qj=a)},o7(a){this.Gf[2]=a},n7(a,b,d,c,e,g){this.No[0]=a;this.No[1]=b;this.No[2]=-d;this.Oo[0]=c;this.Oo[1]=e;this.Oo[2]=-g},Y5(a){this.Ii=Math.max(a,0)},q9(a){const b=a[1]; (a=Pk(this.g.Ib,a[0]))&&Vx(this,"unload",{url:a.url,type:a.type,isMusic:b})},r9(a,b){a=1===a;(b=Pk(this.g.Ib,b)||this.dn.get(b.toLowerCase()))&&Vx(this,"unload",{url:b.url,type:b.type,isMusic:a})},p9(){Vx(this,"unload-all")},zZ(a,b,d){this.dn.set(d.toLowerCase(),{url:a,type:b})}}; self.B.C.Audio.mc={R0(a){return(a=pE(this,a))?a.duration:0},NT(a){return(a=pE(this,a))?a.playbackTime:0},MT(a){return(a=pE(this,a))?a.playbackRate:0},YU(a){return(a=pE(this,a))?Math.log(Math.max(Math.min(a.volume,1),0))/Math.log(10)*20:0},m3(){return Math.log(Math.max(Math.min(this.Ct,1),0))/Math.log(10)*20},T0(a){return this.vA.get(a.toLowerCase())||0},KZ(a,b){return(a=uE(this,a,Math.floor(b)))?a.binCount:0},JZ(a,b,d){a=uE(this,a,Math.floor(b));if(!a)return 0;d=Math.floor(d);return 0>d||d>=a.binCount? 0:a.freqBins[d]},LZ(a,b){return(a=uE(this,a,Math.floor(b)))?a.peak:0},MZ(a,b){return(a=uE(this,a,Math.floor(b)))?a.rms:0},X5(){return this.oO},I0(){return self.C3_GetAudioContextCurrentTime?self.C3_GetAudioContextCurrentTime():performance.now()/1E3},T3(){return this.CH}};"use strict";const yE=self.B;yE.C.jg=class extends yE.ml{constructor(a){super(a)}j(){super.j()}};const zE=self.B; zE.C.jg.oi=class extends zE.Wn{constructor(a){super(a);this.Kb=zE.A(self.sU)}j(){super.j()}Jc(){ly(this.xd(),this.g)}Vn(a){return this.xd().Un(a,{hh:this.g.Hd})}em(){this.xd().Zi()}};const AE=self.B,BE=self.Sf,CE=AE.A(AE.fq),DE=["left","center","right"],EE=["top","center","bottom"]; function FE(a){const b=a.Id;if(b){b.hE(a.ye);b.aj(a.$a);b.yE(a.xg?"word":"character");var d=DE[a.qd];if(!GE.has(d))throw Error("invalid alignment");b.qd=d;d=EE[a.Yc];if(!HE.has(d))throw Error("invalid alignment");b.Yc=d;d=a.Cm;b.kn!==d&&(b.kn=d,IE(b));b.gs(a.Vd)}}function JE(a,b){a.nk!==b&&(a.nk=b,a.Id.fm(a.nk),a.g.P())}function KE(a,b){if(a.Cm!==b){a.Cm=b;b=a.Id;var d=a.Cm;b.kn!==d&&(b.kn=d,IE(b));a.g.P()}} AE.C.jg.Instance=class extends AE.bv{constructor(a,b){super(a);this.$a="";this.ye=!0;this.Jh=this.xf=16;this.to="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.,;:?!-_~#\"'&()[]|`\\/@\u00b0+=*$\u00a3\u20ac<>";var d="";this.nk=1;this.Yc=this.qd=this.Vd=this.Cm=0;this.xg=!0;this.$o=!1;this.Id=this.Oe=null;this.te=this.Ti=-1;this.Uk=0;b&&(this.$a=b[0],this.ye=b[1],this.xf=b[2],this.Jh=b[3],this.to=b[4],d=b[5],this.nk=b[6],this.Cm=b[7],this.Vd=b[8],this.qd=b[9],this.Yc=b[10],this.xg=0=== b[11],this.m().fg(b[12]),this.$o=!!b[14]);var c=this.ib;b=this.xf;a=this.Jh;var e=this.to;const g=c.xd();c=c.Kb;c.gg(g.N());c.Kg(g.M());c.Ez(b);LE(c,a);ME(c,e);NE(c,d);OE(c);this.Id=AE.A(self.uU,this.ib.Kb);b=this.m();this.Id.ac(b.N(),b.M());FE(this);this.rm();b=this.H;b.ea|=32}j(){this.tf();this.Oe&&(this.Oe.j(),this.Oe=null);this.Id.j();this.Id=null;super.j()}rm(){if(this.$o){let a=this.$a;this.ye&&(a=a.replace(ie,""));this.Oe?this.Oe.aj(a):this.Oe=AE.A(AE.tL,this.g,a)}else this.Oe&&(this.Oe.j(), this.Oe=null)}pf(a){var b=this.J.xd(),d=b.Qd();if(d){Zh(a,d);d=this.m();var c=Hz(d),e=this.Id;e.fm(this.nk);var g=d.wD();e.xx!==g&&(e.xx=g,IE(e));this.g.oj&&(c=kA(d,c));e.ac(d.N(),d.M());g=e.Kb;b=b.Xf();if(!g.Nl.Ld(b)){g.Nl.xa(b);for(const k of g.ro.values())PE(k)}e.ni(d.Za);e.pf(a,c.Qb,c.Rb,d.ua())}}kd(){const a={t:this.$a,ebbc:this.ye,csc:this.nk,csp:this.Cm,lh:this.Vd,ha:this.qd,va:this.Yc,w:this.xg,cw:this.ib.Kb.xf,ch:this.ib.Kb.Jh,cs:this.ib.Kb.to,sd:this.ib.Kb.Pt};-1!==this.te&&(a.tw={st:this.Ti, en:this.te,l:this.Uk});return a}xc(a){this.tf();this.$a=a.t;this.ye=a.ebbc;this.nk=a.csc;this.Cm=a.csp;this.Vd=a.lh;this.qd=a.ha;this.Yc=a.va;this.xg=a.w;if(a.hasOwnProperty("tw")){var b=a.tw;this.Ti=b.st;this.te=b.en;this.Uk=a.l}b=this.ib.Kb;b.Ez(a.cw);LE(b,a.ch);ME(b,a.cs);NE(b,a.sd);FE(this);this.rm();-1!==this.te&&this.uf()}uc(a){switch(a){case 0:return this.$a;case 1:return this.ye;case 2:return this.ib.Kb.xf;case 3:return this.ib.Kb.Jh;case 4:return this.ib.Kb.to;case 5:return this.ib.Kb.Pt; case 6:return this.nk;case 7:return this.Cm;case 8:return this.tv();case 9:return this.qd;case 10:return this.Yc;case 11:return this.xg?1:0}}dg(a,b){switch(a){case 0:this.dk(b);break;case 1:if(this.ye===!!b)break;this.ye=!!b;FE(this);break;case 2:this.ib.Kb.Ez(b);break;case 3:LE(this.ib.Kb,b);break;case 4:ME(this.ib.Kb,b);break;case 5:NE(this.ib.Kb,b);break;case 6:JE(this,b);break;case 7:KE(this,b);break;case 8:this.jq(b);break;case 9:this.zv(b);break;case 10:this.kq(b);break;case 11:this.Bv(0=== b)}}dk(a){this.$a!==a&&(this.$a=a,this.Id.aj(a),this.rm(),this.g.P())}eF(a,b){this.dk(a);this.Ti=this.g.tr.S();this.te=this.Ti+b/Ij(this.ba());this.Uk=AE.WJ(a.replace(ie,""));this.Id.bq(0);this.uf()}tf(){this.te=this.Ti=-1;this.Uk=0;this.Id.bq(-1);this.qm()}OE(){-1!==this.te&&(this.tf(),this.Ka(AE.C.jg.K.Yu),this.g.P())}jq(a){this.Vd!==a&&(this.Vd=a,this.Id.gs(this.Vd),this.g.P())}tv(){return this.Vd}zv(a){this.qd!==a&&(this.qd=a,FE(this),this.g.P())}kq(a){this.Yc!==a&&(this.Yc=a,FE(this),this.g.P())}Bv(a){a= !!a;this.xg!==a&&(this.xg=a,FE(this),this.g.P())}cF(a){this.$o=!!a;this.rm()}SE(){const a=this.m();this.Id.ac(a.N(),a.M());this.Id.fm(this.nk);return dh(this.Id)}RE(){const a=this.m();this.Id.ac(a.N(),a.M());this.Id.fm(this.nk);return this.Id.zD()}uv(a,b){const d=this.m();CE.set(a-d.T(),b-d.U());CE.rotate(-d.ua());CE.offset(d.N()*d.rh(),d.M()*d.th());if(a=this.Id.DD(CE.X,CE.R))if(a=this.Id.yc(a.tc,"tag"))return a.Zc;return""}TE(a,b,d){return(b=this.uv(b,d))&&AE.zg(a,b)}lm(a,b){b=Math.floor(b);a=this.Id.pD(a, b);if(!a)return null;b=this.m();CE.set(a.En,a.Fn);CE.offset(-b.N()*b.rh(),-b.M()*b.th());CE.rotate(b.ua());CE.offset(b.T(),b.U());return{x:CE.X,y:CE.R,width:a.width,height:a.height}}QE(a){return this.Id.mD(a)}He(){var a=this.g.tr.S();a>=this.te?(this.tf(),this.Ka(AE.C.jg.K.Yu),this.g.P()):(a=AE.TP(this.Ti,this.te,a,this.Uk),a=Math.floor(a),a!==this.Id.Mh&&(this.Id.bq(a),this.g.P()))}Gg(){return self.fS}};const QE=new WeakMap,RE=new Map([["top",0],["center",1],["bottom",2]]); self.fS=class extends self.Wr{constructor(){super();QE.set(this,self.Pn.bk().na)}get text(){return QE.get(this).$a}set text(a){BE.le(a);const b=QE.get(this);b.tf();b.dk(a)}set lineHeight(a){BE.we(a);QE.get(this).jq(a)}get lineHeight(){return QE.get(this).tv()}set verticalAlign(a){BE.le(a);a=RE.get(a);if("undefined"===typeof a)throw Error("invalid mode");QE.get(this).kq(a)}get verticalAlign(){return EE[QE.get(this).Yc]}};const SE=self.B; SE.C.jg.K={aR(a,b){return b?this.$a===a:SE.zg(this.$a,a)},FS(){return-1!==this.te},Yu(){return!0},TR(a,b,d){return this.TE(a,b,d)}}; self.B.C.jg.Ia={aj(a){this.tf();"number"===typeof a&&1E9>a&&(a=Math.round(1E10*a)/1E10);this.dk(a.toString())},AQ(a){this.tf();"number"===typeof a&&1E9>a&&(a=Math.round(1E10*a)/1E10);(a=a.toString())&&this.dk(this.$a+a)},QU(a,b){this.tf();"number"===typeof a&&1E9>a&&(a=Math.round(1E10*a)/1E10);this.eF(a.toString(),b)},PU(){this.OE()},fm(a){JE(this,a)},t6(a){KE(this,a)},gs(a){this.jq(a)},Ez(a,b){var d=!1;const c=this.ib.Kb;for(const e of a)if(" "===e)d=c,a=b,0>a&&(a=-1),d.jn!==a&&(d.jn=a,0<=d.jn&& (d.Us=!0)),d=!0;else if(a=TE(c,e))a.tA=b,d=!0;if(d){c.Us=!0;for(const e of c.pq)IE(e)}this.g.P()},iE(a){this.m().$f(a);this.g.P()},fU(a){this.zv(a)},lU(a){this.kq(a)},nU(a){this.Bv(0===a)},kU(a){this.cF(a)}}; self.B.C.jg.mc={N_(a){return(a=TE(this.ib.Kb,a))?UE(a):this.ib.Kb.xf},K_(){return this.Jh},L_(){return this.nk},M_(){return this.Cm},RS(){return this.Vd},Text(){return this.$a},KT(){return this.ye?this.$a.replace(ie,""):this.$a},FU(){return this.SE()},EU(){return this.RE()},xU(a,b){return this.uv(a,b)},yU(a){return this.QE(a)},BU(a,b){return(a=this.lm(a,b))?a.x:0},CU(a,b){return(a=this.lm(a,b))?a.y:0},AU(a,b){return(a=this.lm(a,b))?a.width:0},zU(a,b){return(a=this.lm(a,b))?a.height:0}};"use strict"; const VE=self.B;function UE(a){return 0>a.tA?a.Kb.xf:a.tA}function PE(a){var b=a.Kb.N();let d=a.Kb.M();a.Nl.xa(a.hO);a.Nl.Dj(b,d);b=a.Nl;a=a.Kb.Xf();b.Y=uc.je(a.Y,a.ma,b.Y);b.V=uc.je(a.V,a.ka,b.V);b.ma=uc.je(a.Y,a.ma,b.ma);b.ka=uc.je(a.V,a.ka,b.ka)}self.tU=class{constructor(a,b,d,c){b=a.xf;let e=a.Jh;this.Kb=a;this.hO=new VE.Rect(d,c,d+b,c+e);this.Nl=new VE.Rect;this.tA=-1;PE(this)}j(){this.Nl=this.hO=this.Kb=null}Xf(){return this.Nl}};"use strict"; const WE=self.B,XE=new WE.Rect,YE=new WE.jd,pc=new WE.kb,GE=new Set(["left","center","right"]),HE=new Set(["top","center","bottom"]),ZE=new Set(["word","character"]);function IE(a){a.CI=!0;a.Te.Nd()} function $E(a,b,d,c,e,g,k,m){const n=d.height;let q=0;"center"===a.qd?q=Math.max(Math.floor((a.lg-d.width)/2),0):"right"===a.qd&&(q=Math.max(Math.floor(a.lg-d.width),0));d.En=q;d.Fn=g;for(const lb of d.Ar){a:{d=a;var r=b,w=lb,x=c,z=e,E=q,C=g,G=k,I=m,J=n;w.En=E;w.Fn=C;var L=w.Kd,ea=w.width,Y=w.tc;if(-1!==d.Mh){if(d.xi>=d.Mh)break a;d.xi+L.length>d.Mh&&(L=L.slice(0,d.Mh-d.xi),ea=d.wv(L,Y).width);d.xi+=L.length}var na=d.yc(Y,"background");if(!(WE.GD(L)&&!na||d.ao(Y,"hide"))){w=d.yc(Y,"scale");var kb= (w?parseFloat(w.Zc):d.Vc)*d.xx;w=d.yc(Y,"scalex");w=(w?parseFloat(w.Zc):1)*kb;var jc=d.yc(Y,"scaley");kb*=d.Kb.Jh*(jc?parseFloat(jc.Zc):1);C+=J-d.Vd-kb;J=d.yc(Y,"offsetx");E+=J?parseFloat(J.Zc):0;J=d.yc(Y,"offsety");C+=J?parseFloat(J.Zc):0;na&&(of(r,r.Hx),oc(na.Zc),bc(pc,1),r.ni(pc),XE.set(E,C,E+ea,C+kb),XE.ma>d.lg&&(XE.ma=+d.lg),Cc(YE,XE,G,I),YE.offset(x,z),r.jd(YE),nf(r));(ea=d.yc(Y,"color"))?(oc(ea.Zc),bc(pc,d.Za.Ya)):pc.xa(d.Za);(ea=d.yc(Y,"opacity"))&&bc(pc,pc.Ya*parseFloat(ea.Zc)/100);ec(pc); r.ni(pc);ea=d.Kb.xf*w;Y=Math.abs(d.kn);for(const kc of L)if(L=TE(d.Kb,kc)){na=UE(L)*w;if(E+na>d.lg+Y+1E-5)break;XE.set(E,C,E+ea,C+kb);Cc(YE,XE,G,I);YE.offset(x,z);di(r,YE,L.Xf());E+=na+d.kn}else L=d.Kb,E+=(0>L.jn?L.xf:L.jn)*w+d.kn}}q+=lb.width}} self.uU=class{constructor(a){this.Kb=a;this.Em=this.lg=0;this.$a="";this.Df=!1;this.ik=null;this.Te=WE.A(WE.nv);this.ur="word";this.CI=!1;this.qd="left";this.Yc="top";this.xx=this.Vc=1;this.Vd=this.kn=0;this.Za=WE.A(WE.kb);this.Mh=-1;this.xi=0;this.Yw=(b,d)=>this.wv(b,d);this.Kb.pq.add(this)}j(){this.Kb.pq.delete(this);this.Yw=this.Za=null;this.Te.Nd();this.ik=this.Kb=this.Te=null}wv(a,b){var d=this.yc(b,"scale"),c=(d?parseFloat(d.Zc):this.Vc)*this.xx;d=this.yc(b,"scalex");d=(d?parseFloat(d.Zc):1)* c;b=this.yc(b,"scaley");b=this.Kb.Jh*(b?parseFloat(b.Zc):1)*c+this.Vd;const e=this.Kb;c=e.xf*d;const g=this.kn;if(e.Us){let m=0,n=0;for(var k of a){a=c;const q=TE(e,k);q?a=UE(q)*d:" "===k&&(a=(0>e.jn?e.xf:e.jn)*d);n+=a;++m}return{width:n+m*g,height:b}}k=a.length;return{width:c*k+Math.max(k,0)*g,height:b}}ac(a,b){0>=a||0>=b||this.lg===a&&this.Em===b||(this.lg!==a&&IE(this),this.lg=a,this.Em=b)}bq(a){this.Mh=Math.floor(a)}yc(a,b){for(let d=a.length-1;0<=d;--d){const c=a[d];if(c.tag===b)return c}return null}ao(a, b){return!!this.yc(a,b)}DD(a,b){const d=this.Te.Sh;for(const c of d)if(b>c.Fn&&b<c.Fn+c.height)for(const e of c.Ar)if(a>=e.En&&a<e.En+e.width)return e;return null}*fy(a){var b=this.Te.Sh;for(const d of b)for(const c of d.Ar)(b=this.yc(c.tc,"tag"))&&WE.zg(b.Zc,a)&&(yield c)}pD(a,b){for(const d of this.fy(a)){if(0===b)return d;--b}return null}mD(a){let b=0;for(const d of this.fy(a))++b;return b}ns(){if(this.CI){!this.Df||this.ik&&this.ik.toString()===this.$a||(this.ik=new WE.Gp(this.$a));var a=-this.kn; this.Te.nv(this.Df?oe(this.ik):this.$a,this.Yw,this.lg,this.ur,a);this.CI=!1}}pf(a,b,d,c){this.ns();let e=this.xi=0;const g=this.Vd,k=WE.CC(this.Te.Sh),m=Math.sin(c);c=Math.cos(c);var n=k.reduce((q,r)=>q+r.height,0)-g;"center"===this.Yc?e=Math.max(Math.floor(this.Em/2-n/2),0):"bottom"===this.Yc&&(e=Math.floor(this.Em-n));for(let q=0,r=k.length;q<r;++q){n=k[q];const w=n.height;if(0<q&&e>this.Em-(w-g))break;0<=e&&$E(this,a,n,b,d,e,m,c);e+=w}}hE(a){a=!!a;this.Df!==a&&(this.Df=a,IE(this))}aj(a){this.$a!== a&&(this.$a=a,IE(this))}yE(a){if(!ZE.has(a))throw Error("invalid word wrap mode");this.ur!==a&&(this.ur=a,IE(this))}fm(a){this.Vc!==a&&(this.Vc=a,IE(this))}wD(){return this.xx}gs(a){this.Vd=a;IE(this)}bg(a){a=WE.$(a,0,1);this.Za.a=a}ni(a){this.Za.Ld(a)||this.Za.xa(a)}zD(){this.ns();const a=this.Vd;return this.Te.Sh.length*(this.Kb.Jh*this.Vc+a)-a}};"use strict";const aF=self.B,bF={width:256,height:256,lP:16,kP:16,characterSet:""}; function LE(a,b){b=Math.floor(b);if(0>=b)throw Error("invalid size");a.Jh!==b&&(a.Jh=b,a.Ro=!0)}function ME(a,b){a.to!==b&&(a.to=b,a.Ro=!0)}function NE(a,b){if(a.Pt!==b&&(a.Pt=b,a.Ro=!0,a.Ix=null,a.Pt.length))try{a.Ix=JSON.parse(a.Pt)}catch(d){a.Ix=null}} function OE(a){if(a.Ro){cF(a);var b=aF.GL(a.to),d=Math.floor(a.ja/a.xf),c=d*Math.floor(a.fa/a.Jh);for(let e=0,g=b.length;e<g&&!(e>=c);++e){let k=b[e];a.ro.has(k)||a.ro.set(k,aF.A(self.tU,a,k,e%d*a.xf,Math.floor(e/d)*a.Jh))}a.Us=!1;a.jn=-1;if(Array.isArray(a.Ix))for(let e of a.Ix)if(Array.isArray(e)&&2===e.length&&(b=e[0],d=e[1],"number"===typeof b&&isFinite(b)&&"string"===typeof d&&b!==a.xf))for(let g of d)(d=a.ro.get(g))?(d.tA=b,a.Us=!0):" "===g&&(a.jn=b,a.Us=!0);a.Ro=!1;for(let e of a.pq)IE(e)}} function TE(a,b){OE(a);return a.ro.get(b)||null}function cF(a){for(let b of a.ro.values())b.j();a.ro.clear()} self.sU=class{constructor(a){a=Object.assign({},bF,a);if(0>=a.width||0>=a.height||0>=a.lP||0>=a.kP)throw Error("invalid size");this.ja=a.width;this.fa=a.height;this.xf=a.lP;this.Jh=a.kP;this.to=a.characterSet;this.Pt="";this.Ix=null;this.Us=!1;this.jn=-1;this.Nl=new aF.Rect(0,0,1,1);this.ro=new Map;this.Ro=!0;this.pq=new Set}j(){this.Nl=null;cF(this);this.ro=null;this.pq&&this.pq.clear();this.pq=null}gg(a){a=Math.floor(a);if(0>=a)throw Error("invalid size");this.ja!==a&&(this.ja=a,this.Ro=!0)}N(){return this.ja}Kg(a){a= Math.floor(a);if(0>=a)throw Error("invalid size");this.fa!==a&&(this.fa=a,this.Ro=!0)}M(){return this.fa}Xf(){return this.Nl}Ez(a){a=Math.floor(a);if(0>=a)throw Error("invalid size");this.xf!==a&&(this.xf=a,this.Ro=!0)}};"use strict";const dF=self.B;dF.C.Yn=class extends dF.ml{constructor(a){super(a)}j(){super.j()}};const eF=self.B;function fF(a){switch(a){case 0:return"clamp-to-edge";case 2:return"mirror-repeat"}return"repeat"} eF.C.Yn.oi=class extends eF.Wn{constructor(a,b){super(a);this.yn=this.xn="repeat";b&&(this.xn=fF(b[0]),this.yn=fF(b[1]))}j(){super.j()}Jc(){ly(this.xd(),this.g)}Vn(a){return this.xd().Un(a,{hh:this.g.Hd,uu:this.xn,vu:this.yn})}em(){this.xd().Zi()}};const gF=self.B,hF=gF.A(gF.Rect),iF=gF.A(gF.jd),jF=gF.A(gF.Rect),kF=gF.A(gF.jd);function lF(a){a=a.m();Bm(a,65536,!0)}function mF(a,b){a.Ws!==b&&(a.Ws=b,a.g.P(),lF(a))}function nF(a,b){a.Xs!==b&&(a.Xs=b,a.g.P(),lF(a))} function oF(a,b){a.Cq!==b&&(a.Cq=b,a.g.P(),lF(a))}function pF(a,b){a.Dq!==b&&(a.Dq=b,a.g.P(),lF(a))}function qF(a,b){a.Nm!==b&&(a.Nm=b,a.g.P(),lF(a))}function rF(a,b){b=!!b;a.uk!==b&&(a.uk=b,a.g.P())}function sF(a,b){a.Yt!==b&&(a.Yt=b,a.uk&&a.g.P())}function tF(a,b){a.Zt!==b&&(a.Zt=b,a.uk&&a.g.P())}function uF(a,b){a.Vt!==b&&(a.Vt=b,a.uk&&a.g.P())}function vF(a,b){a.Wt!==b&&(a.Wt=b,a.uk&&a.g.P())}function wF(a,b){a.Xt!==b&&(a.Xt=b,a.uk&&a.g.P())} gF.C.Yn.Instance=class extends gF.bv{constructor(a,b){super(a);this.Xs=this.Ws=0;this.Dq=this.Cq=1;this.Nm=0;this.uk=!1;this.Xt=this.Wt=this.Vt=this.Zt=this.Yt=0;this.Gl=null;b&&(this.m().fg(!!b[0]),this.Ws=b[4],this.Xs=b[5],this.Cq=b[6],this.Dq=b[7],this.Nm=gF.Ca(b[8]),this.uk=!!b[9],this.Yt=b[10],this.Zt=b[11],this.Vt=b[12],this.Wt=b[13],this.Xt=b[14])}j(){this.Gl&&(this.Gl.j(),this.Gl=null);super.j()}pf(a){var b=this.ve(),d=b.Qd();if(null!==d){if(this.uk){var c=this.ve();of(a,a.eC);var e=c.N()* this.Cq;c=c.M()*this.Dq;var g=this.Yt,k=this.Zt,m=this.Vt,n=this.Wt,q=this.Xt;if(a.Vm!==a.eC)throw Error("must set tile randomization mode first");var r=Ph(a);r.Aa=29;r=r.De;r[0]=1/e;r[1]=1/c;r[2]=g;r[3]=k;r[4]=m;r[5]=n;r[6]=q;a.Sb=0}else nf(a);Zh(a,d);d=b.N();b=b.M();e=this.Ws/d;c=this.Xs/b;g=this.m();jF.set(0,0,g.N()/(d*this.Cq),g.M()/(b*this.Dq));jF.offset(-e,-c);$w(g)?this.rv(g,a):this.sv(g,a)}}sv(a,b){let d=Hz(a);this.g.oj&&(d=kA(a,d));0===this.Nm?di(b,d,jF):(Dc(kF,jF,-this.Nm),fi(b,d,kF))}rv(a, b){const d=oA(a);if(0!==(a.ea&65536)){Ez(a,hF,iF,!1);let c=iF;this.g.oj&&(c=kA(a,c));let e=jF;0!==this.Nm&&(Dc(kF,jF,-this.Nm),e=kF);If(d,ax(a),c,e);Bm(a,65536,!1)}d.pf(b)}ve(){return this.Gl||this.J.xd()}yh(){return!0}Qd(){return this.ve().Qd()}uc(a){switch(a){case 4:return this.Ws;case 5:return this.Xs;case 6:return this.Cq;case 7:return this.Dq;case 8:return this.Nm;case 9:return this.uk;case 10:return this.Yt;case 11:return this.Zt;case 12:return this.Vt;case 13:return this.Wt;case 14:return this.Xt}}dg(a, b){switch(a){case 4:mF(this,b);break;case 5:nF(this,b);break;case 6:oF(this,b);break;case 7:pF(this,b);break;case 8:qF(this,b);break;case 9:rF(this,!!b);break;case 10:sF(this,b);break;case 11:tF(this,b);break;case 12:uF(this,b);break;case 13:vF(this,b);break;case 14:wF(this,b)}}Gg(){return self.jS}};const xF=new WeakMap;self.jS=class extends self.Wr{constructor(){super();xF.set(this,self.Pn.bk().na)}get imageWidth(){return xF.get(this).ve().N()}get imageHeight(){return xF.get(this).ve().M()}}; self.B.C.Yn.K={xz(){return!0},RD(){return!0},I2(){return this.uk}};const yF=self.B; yF.C.Yn.Ia={M6(a){mF(this,a)},N6(a){nF(this,a)},O6(a){oF(this,a/100)},P6(a){pF(this,a/100)},L6(a){qF(this,yF.Ca(a))},I7(a){rF(this,a)},H7(a,b){sF(this,a/100);tF(this,b/100)},F7(a){uF(this,a/100)},G7(a,b){vF(this,a/100);wF(this,b/100)},iE(a){this.m().$f(a);this.g.P()},async TS(a){if(!this.Gl||this.Gl.Wk!==a){var b=this.g,d=yF.A(yF.Su);try{await my(d,b,a);if(!d.pz())throw Error("image failed to load");if(this.$n())return d.j(),null;if(!await d.Un(b.Ra(),{hh:b.Hd,uu:"repeat",vu:"repeat"}))return}catch(c){console.error("Load image from URL failed: ", c);this.$n()||this.Ka(yF.C.Yn.K.RD);return}this.$n()?d.j():(this.Gl&&(this.Gl.j(),this.Gl=null),this.Gl=d,b.P(),await this.Hb(yF.C.Yn.K.xz))}}};const zF=self.B;zF.C.Yn.mc={qS(){return this.ve().N()},oS(){return this.ve().M()},T1(){return this.Ws},U1(){return this.Xs},Z1(){return 100*this.Cq},a2(){return 100*this.Dq},Q1(){return zF.Zd(this.Nm)},I8(){return 100*this.Yt},J8(){return 100*this.Zt},F8(){return 100*this.Vt},G8(){return 100*this.Wt},H8(){return 100*this.Xt}};"use strict";const AF=self.B; AF.C.Jj=class extends AF.ml{constructor(a){super(a)}j(){super.j()}};const BF=self.B;BF.C.Jj.oi=class extends BF.Wn{constructor(a){super(a)}j(){super.j()}Jc(){}};const CF=self.B,DF=self.Pn;function EF(a,b,d){if(b<a.length)CF.Ue(a,b);else if(b>a.length)if("function"===typeof d)for(var c=a.length;c<b;++c)a.push(d());else for(c=a.length;c<b;++c)a.push(d)} function FF(a,b,d,c,e,g){for(;0<d;){const m=Math.floor(a.g.Kl()*d);--d;if(0===b){var k=a.nf(d,e,g);a.Set(d,e,g,a.nf(m,e,g));a.Set(m,e,g,k)}else 1===b?(k=a.nf(c,d,g),a.Set(c,d,g,a.nf(c,m,g)),a.Set(c,m,g,k)):2===b&&(k=a.nf(c,e,d),a.Set(c,e,d,a.nf(c,e,m)),a.Set(c,e,m,k))}}function GF(a){return JSON.stringify({c2array:!0,size:[a.Yb,a.Ac,a.Bc],data:a.zd})}function HF(a){return 0<=a.xk&&a.xk<a.HA.length?a.HA[a.xk]:0}function IF(a){return 0<=a.xk&&a.xk<a.fG.length?a.fG[a.xk]:0} function JF(a){return 0<=a.xk&&a.xk<a.gG.length?a.gG[a.xk]:0} CF.C.Jj.Instance=class extends CF.bs{constructor(a,b){super(a);this.Yb=10;this.Bc=this.Ac=1;this.zd=null;this.HA=[];this.fG=[];this.gG=[];this.xk=-1;b&&(this.Yb=b[0],this.Ac=b[1],this.Bc=b[2]);this.zd=CF.li(this.Yb,()=>CF.li(this.Ac,()=>CF.li(this.Bc,0)))}j(){this.zd=null;super.j()}nf(a,b,d){a=Math.floor(a);b=Math.floor(b);d=Math.floor(d);return 0<=a&&a<this.Yb&&0<=b&&b<this.Ac&&0<=d&&d<this.Bc?this.zd[a][b][d]:0}Set(a,b,d,c){a=Math.floor(a);b=Math.floor(b);d=Math.floor(d);0<=a&&a<this.Yb&&0<=b&& b<this.Ac&&0<=d&&d<this.Bc&&(this.zd[a][b][d]=c)}ac(a,b,d){a=Math.floor(a);b=Math.floor(b);d=Math.floor(d);0>a&&(a=0);0>b&&(b=0);0>d&&(d=0);if(this.Yb!==a||this.Ac!==b||this.Bc!==d){this.Yb=a;this.Ac=b;this.Bc=d;var c=this.zd;EF(c,a,()=>CF.li(b,()=>CF.li(d,0)));for(let e=0;e<a;++e){EF(c[e],b,()=>CF.li(d,0));for(let g=0;g<b;++g)EF(c[e][g],d,0)}}}N(){return this.Yb}M(){return this.Ac}dl(){return this.Bc}kd(){return{size:[this.Yb,this.Ac,this.Bc],data:this.zd}}xc(a){const b=a.size;this.Yb=b[0];this.Ac= b[1];this.Bc=b[2];this.zd=a.data}Gg(){return self.XR}};const KF=new WeakMap;self.XR=class extends DF{constructor(){super();KF.set(this,DF.bk().na)}get width(){return KF.get(this).N()}get height(){return KF.get(this).M()}get depth(){return KF.get(this).dl()}};const LF=self.B; LF.C.Jj.K={cR(a,b,d){return LF.compare(this.nf(a,0,0),b,d)},m0(a,b,d,c){return LF.compare(this.nf(a,b,0),d,c)},n0(a,b,d,c,e){return LF.compare(this.nf(a,b,d),c,e)},f_(a){const b=this.g,d=b.Vb(),c=d.Pd(),e=b.Od(),g=wr(e),k=e.Xa(d),m=++this.xk,n=this.HA;var q=this.fG,r=this.gG;const w=this.Yb;var x=this.Ac,z=this.Bc;m===this.HA.length?(n.push(0),q.push(0),r.push(0)):(n[m]=0,q[m]=0,r[m]=0);Qt(b,!1);if(0===a)for(let I=0;I<w;++I)for(let J=0;J<x;++J)for(let L=0;L<z;++L){n[m]=I;q[m]=J;r[m]=L;a=d;var E=c, C=g,G=k;Cs(E);Dt(a,C,G);Ds(E)}else if(1===a)for(C=0;C<w;++C)for(G=0;G<x;++G)n[m]=C,q[m]=G,r=d,z=c,a=g,E=k,Cs(z),Dt(r,a,E),Ds(z);else for(a=0;a<w;++a)n[m]=a,q=d,x=c,r=g,z=k,Cs(x),Dt(q,r,z),Ds(x);Qt(b,!0);this.xk--;e.Va();return!1},X_(a,b){return LF.compare(this.nf(HF(this),IF(this),JF(this)),a,b)},t0(a){const b=this.Yb,d=this.Ac,c=this.Bc,e=this.zd;for(let g=0;g<b;++g)for(let k=0;k<d;++k)for(let m=0;m<c;++m)if(e[g][k][m]===a)return!0;return!1},Qn(){return 0===this.Yb||0===this.Ac||0===this.Bc},e0(a, b,d){let c=0;switch(a){case 0:c=this.Yb;break;case 1:c=this.Ac;break;case 2:c=this.Bc}return LF.compare(c,b,d)}};const MF=self.B;function NF(a,b){if("number"===typeof a&&"number"===typeof b)return a-b;a=a.toString();b=b.toString();return a<b?-1:a>b?1:0} MF.C.Jj.Ia={Nd(a){const b=this.Yb,d=this.Ac,c=this.Bc,e=this.zd;for(let g=0;g<b;++g)for(let k=0;k<d;++k)for(let m=0;m<c;++m)e[g][k][m]=a},ac(a,b,d){this.ac(a,b,d)},hg(a,b){this.Set(a,0,0,b)},Zj(a,b,d){this.Set(a,b,0,d)},W7(a,b,d,c){this.Set(a,b,d,c)},Xa(a,b,d){var c=this.Yb,e=this.Ac;const g=this.Bc,k=this.zd;if(0===d)c=MF.li(e,()=>MF.li(g,b)),0===a?k.push(c):k.unshift(c),this.Yb++;else if(1===d){for(e=0;e<c;++e)d=MF.li(g,b),0===a?k[e].push(d):k[e].unshift(d);this.Ac++}else{for(d=0;d<c;++d)for(let m= 0;m<e;++m)0===a?k[d][m].push(b):k[d][m].unshift(b);this.Bc++}},Va(a,b){const d=this.Yb;var c=this.Ac,e=this.Bc;const g=this.zd;if(0===b)0!==d&&(0===a?g.pop():g.shift(),this.Yb--);else if(1===b){if(0!==c){for(c=0;c<d;++c)0===a?g[c].pop():g[c].shift();this.Ac--}}else if(0!==e){for(b=0;b<d;++b)for(e=0;e<c;++e)0===a?g[b][e].pop():g[b][e].shift();this.Bc--}},M5(a){const b=this.Yb;var d=this.Ac,c=this.Bc;const e=this.zd;if(0!==b&&0!==d&&0!==c)if(0===a)e.reverse();else if(1===a)for(d=0;d<b;++d)e[d].reverse(); else for(a=0;a<b;++a)for(c=0;c<d;++c)e[a][c].reverse()},b8(a){const b=this.Yb;var d=this.Ac,c=this.Bc;const e=this.zd;if(0!==b&&0!==d&&0!==c)if(0===a)e.sort((g,k)=>NF(g[0][0],k[0][0]));else if(1===a)for(d=0;d<b;++d)e[d].sort((g,k)=>NF(g[0],k[0]));else for(a=0;a<b;++a)for(c=0;c<d;++c)e[a][c].sort(NF)},Y7(a){const b=this.Yb,d=this.Ac,c=this.Bc;if(0!==b&&0!==d&&0!==c)if(0===a)for(var e=0;e<d;++e)for(var g=0;g<c;++g)FF(this,a,b,0,e,g);else if(1===a)for(e=0;e<b;++e)for(g=0;g<c;++g)FF(this,a,d,e,0,g);else for(e= 0;e<b;++e)for(g=0;g<d;++g)FF(this,a,c,e,g,0)},Jn(a,b){a=Math.floor(a);if(!(0>a)){var d=this.Yb,c=this.Ac,e=this.Bc,g=this.zd;if(0===b)a>=d||(g.splice(a,1),this.Yb--);else if(1===b){if(!(a>=c)){for(c=0;c<d;++c)g[c].splice(a,1);this.Ac--}}else if(!(a>=e)){for(b=0;b<d;++b)for(e=0;e<c;++e)g[b][e].splice(a,1);this.Bc--}}},lz(a,b,d){b=Math.floor(b);if(!(0>b)){var c=this.Yb,e=this.Ac,g=this.Bc,k=this.zd;if(0===d)b>c||(k.splice(b,0,MF.li(e,()=>MF.li(g,a))),this.Yb++);else if(1===d){if(!(b>e)){for(e=0;e<c;++e)k[e].splice(b, 0,MF.li(g,a));this.Ac++}}else if(!(b>g)){for(d=0;d<c;++d)for(let m=0;m<e;++m)k[d][m].splice(b,0,a);this.Bc++}}},i8(a,b,d){a=a.split(b);this.ac(a.length,1,1);for(let c=0,e=a.length;c<e;++c)b=a[c],0===d?String(Number(b))===b&&(b=Number(b)):2===d&&(b=Number(b)),this.Set(c,0,0,b)},LS(a){let b=null;try{b=JSON.parse(a)}catch(d){console.error("[Construct] Failed to parse JSON: ",d);return}b.c2array&&(a=b.size,this.Yb=a[0],this.Ac=a[1],this.Bc=a[2],this.zd=b.data)},M2(a){const b=URL.createObjectURL(new Blob([GF(this)], {type:"application/json"}));ad(this.g,"runtime","invoke-download",{url:b,filename:a})}}; self.B.C.Jj.mc={nf(a,b,d){return this.nf(a,b||0,d||0)},OL(){return this.Yb},UR(){return this.Ac},M0(){return this.Bc},F0(){return HF(this)},G0(){return IF(this)},H0(){return JF(this)},E0(){return this.nf(HF(this),IF(this),JF(this))},q1(){return this.nf(0,0,0)},m_(){return this.nf(this.Yb-1,0,0)},c2(a){const b=this.zd;for(let d=0,c=this.Yb;d<c;++d)if(b[d][0][0]===a)return d;return-1},S2(a){const b=this.zd;for(let d=this.Yb-1;0<=d;--d)if(b[d][0][0]===a)return d;return-1},N2(a){let b=[];for(let d=0;d< this.Yb;++d)b.push(this.nf(d,0,0));return b.join(a)},dD(){return GF(this)}};"use strict";const OF=self.B;let PF=null,QF=null,RF=[],SF=null; function TF(a,b,d){var c=a.hi();const e=b.hi();d?((c=c.get("Physics_DisabledCollisions"))&&c.delete(b.bb),(b=e.get("Physics_DisabledCollisions"))&&b.delete(a.bb)):(d=c.get("Physics_DisabledCollisions"),d||(d=new Set,c.set("Physics_DisabledCollisions",d)),c=e.get("Physics_DisabledCollisions"),c||(c=new Set,e.set("Physics_DisabledCollisions",c)),d.add(b.bb),c.add(a.bb))} async function UF(a){const b=await Ik(a.g.Ib,"box2d.wasm");await new Promise(d=>{self.Box2DWasmModule({wasmBinaryFile:b}).then(c=>{SF=c;VF(a);d()})})} function VF(a){const b=a.g.pk;PF=OF.La.Kc.On(0,0);QF=OF.La.Kc.On(0,0);a.Qf=new SF.b2World(OF.La.Kc.yD(0,a.BI),!0);var d=new SF.JSContactListener;d.BeginContact=c=>{var e=SF.wrapPointer(c,SF.b2Contact);c=WF(e.GetFixtureA().GetBody());e=WF(e.GetFixtureB().GetBody());c=c.H;e=e.H;const g=c.m(),k=e.m();g&&k&&g.ji()&&k.ji()&&b.Jt.push([c,e])};d.EndContact=()=>{};d.PreSolve=()=>{};d.PostSolve=()=>{};a.Qf.SetContactListener(d);d=new SF.JSContactFilter;d.ShouldCollide=(c,e)=>{if(a.cM)return!0;c=SF.wrapPointer(c, SF.b2Fixture);e=SF.wrapPointer(e,SF.b2Fixture);c=WF(c.GetBody());e=WF(e.GetBody());c=c.H.F();const g=e.H.F();e=c.bb;const k=g.bb;return(c=c.hi().get("Physics_DisabledCollisions"))&&c.has(k)?!1:(c=g.hi().get("Physics_DisabledCollisions"))&&c.has(e)?!1:!0};a.Qf.SetContactFilter(d);a.cP=new SF.b2WorldManifold} function XF(a){const b=new SF.b2PolygonShape,d=SF._malloc(8*a.length);var c=0;for(let e=0;e<a.length;++e)SF.HEAPF32[d+c>>2]=a[e].get_x(),SF.HEAPF32[d+(c+4)>>2]=a[e].get_y(),c+=8;c=SF.wrapPointer(d,SF.b2Vec2);b.Set(c,a.length);SF._free(d);return b} OF.La.Kc=class extends OF.eE{constructor(a){a.IY=self.bS;super(a);this.Qf=null;this.BI=10;this.lc=.02;this.cP=null;this.AN=-1;this.DO=1;this.UO=8;this.cO=3;this.cM=!0;MB(this.g,UF(this))}j(){super.j()}DL(a){this.DO=a}yL(a,b){this.UO=Math.max(a,1);this.cO=Math.max(b,1)}static On(a,b){if(RF.length){const d=RF.pop();d.set_x(a);d.set_y(b);return d}return new SF.b2Vec2(a,b)}static Du(a){RF.push(a)}static yD(a,b){PF.set_x(a);PF.set_y(b);return PF}static LR(a,b){QF.set_x(a);QF.set_y(b);return QF}}; self.bS=class extends self.tK{constructor(a){super(a)}};const YF=self.B;YF.La.Kc.oi=class extends YF.gE{constructor(a){super(a)}j(){super.j()}Jc(){}};const ZF=self.B,$F=self.Sf,aG=self.iz,bG=new WeakMap,cG=new WeakMap,dG=new WeakMap,eG=ZF.La.Kc.yD,fG=ZF.La.Kc.LR,gG=ZF.A(ZF.Rect),hG=ZF.A(ZF.jd);function WF(a){return bG.get(a)||null}function iG(a){return cG.get(a)||null} function jG(a){if(a.ga){var b=a.gj.b2FixtureDef,d=a.gj.b2BodyDef,c=a.m(),e=Iz(c);a.ho=a.sM;e||a.H.Tj()||0!==a.ho||(a.ho=1);if(!a.Fa){d=new d;d.set_type(a.Nq?0:2);e=c.T()*a.lc;var g=c.U()*a.lc;2===a.ho&&(g=kG(a),e=g.Cn()*a.lc,g=g.Dn()*a.lc);d.set_position(fG(e,g));d.set_angle(c.ua());d.set_fixedRotation(a.Wo);d.set_linearDamping(a.Mo);d.set_angularDamping(a.io);d.set_bullet(a.Go);a.Fa=a.Qf.CreateBody(d);lG(a,d);bG.set(a.Fa,a)}mG(a);b=new b;b.set_density(a.wo);b.set_friction(a.Co);b.set_restitution(a.cp); d=Math.max(Math.abs(c.N()),1);e=Math.max(Math.abs(c.M()),1);if(0===a.ho)if(a.H.Tj()){var k=a.lc,m=ZF.La.Kc.On,n=ZF.La.Kc.Du,q=[];a.H.na.v1(q);d=[];for(let I=0,J=q.length;I<J;++I){var r=q[I];e=r.JR();if(g=r.qK()){var w=dG.get(g);if(!w){w=g.Wd;var x=g.Wd.length/2;for(var z=0;z<x;++z)d.push(m(w[2*z],w[2*z+1]));r=r.G1()&3758096384;(-2147483648===r||1073741824===r||536870912===r||r&-2147483648&&r&1073741824&&r&536870912)&&d.reverse();w=ZF.La.Kc.vL.uL(d,e.width()*e.height());dG.set(g,w);for(var E of d)n(E); ZF.D(d)}for(let L=0,ea=w.length;L<ea;++L){g=w[L];for(let Y=0,na=g.length;Y<na;++Y)d.push(m((e.Y+g[Y].get_x())*k,(e.V+g[Y].get_y())*k));g=XF(d);b.set_shape(g);nG(a,b);lG(a,g);for(var C of d)n(C);ZF.D(d)}}else d.push(m(e.Y*k,e.V*k)),d.push(m(e.ma*k,e.V*k)),d.push(m(e.ma*k,e.ka*k)),d.push(m(e.Y*k,e.ka*k)),e=XF(d),b.set_shape(e),nG(a,b),lG(a,e);for(var G of d)n(G);ZF.D(d)}}else{C=a.m();g=0>C.N();r=0>C.M();E=a.lc;w=nA(C,g?-d:d,r?-e:e,0,0,1).Wd;x=w.length/2;G=[];for(z=0;z<x;++z)G.push(ZF.La.Kc.On(w[2*z], w[2*z+1]));g!==r&&G.reverse();g=ZF.La.Kc.vL.uL(G,d*e);for(q of G)ZF.La.Kc.Du(q);if(g.length)for(k of g){for(m of k)m.set_x(m.get_x()*E),m.set_y(m.get_y()*E);C=XF(k);b.set_shape(C);nG(a,b);lG(a,C);for(n of k)ZF.La.Kc.Du(n)}else oG(a,b,C,d,e)}else 1===a.ho?oG(a,b,c,d,e):(E=new a.gj.b2CircleShape,E.set_m_radius(Math.min(d,e)*a.lc*.5),b.set_shape(E),nG(a,b),lG(a,E));a.dH=c.N();a.YG=c.M();Bm(c,131072,!1);lG(a,b)}}function pG(a){for(const b of a.Hi)a.Qf.DestroyJoint(b);ZF.D(a.Hi)} function mG(a){if(a.Fa){for(const b of a.Ps)a.Fa.DestroyFixture(b);ZF.D(a.Ps)}}function nG(a,b){a.Fa&&(b=a.Fa.CreateFixture(b),a.Ps.push(b))}function kG(a){a=a.m();return $w(a)?(Ez(a,gG,hG,!1),hG):Hz(a)}function lG(a,b){a.gj.destroy(b)}function oG(a,b,d,c,e){const g=new a.gj.b2PolygonShape;c*=a.lc;e*=a.lc;let k=d.rh(),m=d.th();0>d.N()&&(k=1-k);0>d.M()&&(m=1-m);d=ZF.La.Kc.On((.5-k)*c,(.5-m)*e);g.SetAsBox(c/2,e/2,d,0);b.set_shape(g);nG(a,b);lG(a,g);ZF.La.Kc.Du(d)} function qG(a){a.Fa&&(pG(a),bG.delete(a.Fa),mG(a),a.Qf.DestroyBody(a.Fa),a.Fa=null)}function rG(a,b,d,c,e,g){if(a.ga){var k=Fo(a.g,d);if(k&&k!==a.H&&(d=iG(k))&&d.ga){d.Dl.add(a.H);sG(a,!1);sG(d,!1);var [m,n]=tG(a,b),[q,r]=k.gl(c);b=m-q;c=n-r;k=a.lc;var w=new a.gj.b2DistanceJointDef;w.Initialize(a.Fa,d.Fa,eG(m*k,n*k),fG(q*k,r*k));w.set_length(Math.hypot(b,c)*k);w.set_dampingRatio(e);w.set_frequencyHz(g);a.Hi.push(a.Qf.CreateJoint(w));lG(a,w)}}} function uG(a,b,d){if(a.ga&&(d=Fo(a.g,d))&&d!==a.H&&(d=iG(d))&&d.ga){d.Dl.add(a.H);sG(a,!1);sG(d,!1);var [c,e]=tG(a,b);b=a.lc;var g=new a.gj.b2RevoluteJointDef;g.Initialize(a.Fa,d.Fa,eG(c*b,e*b));a.Hi.push(a.Qf.CreateJoint(g));lG(a,g)}} function vG(a,b,d,c,e){if(a.ga&&(d=Fo(a.g,d))&&d!==a.H&&(d=iG(d))&&d.ga){d.Dl.add(a.H);sG(a,!1);sG(d,!1);var [g,k]=tG(a,b);b=a.lc;var m=new a.gj.b2RevoluteJointDef;m.Initialize(a.Fa,d.Fa,eG(g*b,k*b));m.set_enableLimit(!0);m.set_lowerAngle(ZF.Ca(c));m.set_upperAngle(ZF.Ca(e));a.Hi.push(a.Qf.CreateJoint(m));lG(a,m)}} function wG(a,b,d,c,e,g,k,m,n,q){if(a.ga&&(d=Fo(a.g,d))&&d!==a.H&&(d=iG(d))&&d.ga){d.Dl.add(a.H);sG(a,!1);sG(d,!1);var [r,w]=tG(a,b);c=ZF.Ca(c);b=Math.cos(c);c=Math.sin(c);var x=a.lc,z=new a.gj.b2PrismaticJointDef;z.Initialize(a.Fa,d.Fa,eG(r*x,w*x),fG(b,c));z.set_enableLimit(!!e);z.set_lowerTranslation(g*x);z.set_upperTranslation(k*x);z.set_enableMotor(!!m);z.set_motorSpeed(ZF.Ca(n));z.set_maxMotorForce(q);a.Hi.push(a.Qf.CreateJoint(z));lG(a,z)}} function tG(a,b){var d=a.m();return-1===b?[d.T(),d.U()]:0===b&&a.Fa?(b=a.Fa.GetPosition(),d=a.Fa.GetLocalCenter(),[(b.get_x()+d.get_x())/a.lc,(b.get_y()+d.get_y())/a.lc]):a.H.gl(b)} function sG(a,b){const d=a.H.m();var c=a.lc;d.N()===a.dH&&d.M()===a.YG&&0===(d.ea&131072)||jG(a);var e=a.Fa,g=d.T(),k=d.U(),m=g-a.Mw;const n=k-a.Nw,q=.001<Math.abs(m)||.001<Math.abs(n),r=d.ua()!==a.ZG;2===a.ho&&(k=kG(a),g=k.Cn(),k=k.Dn());q?(r?e.SetTransform(eG(g*c,k*c),d.ua()):e.SetTransform(eG(g*c,k*c),e.GetAngle()),b&&(e.SetLinearVelocity(eG(m,n)),a.Pw=!0),e.SetAwake(!0)):b&&a.Pw&&(a.Pw=!1,e.SetLinearVelocity(eG(0,0)),e.SetTransform(eG(g*c,k*c),e.GetAngle()));!q&&r&&(e.SetTransform(e.GetPosition(), d.ua()),e.SetAwake(!0));m=e.GetPosition();b=m.get_x()/c;c=m.get_y()/c;e=e.GetAngle();if(b!==d.T()||c!==d.U()||e!==d.ua())if(d.Zj(b,c),d.fe(e),Pj(d),2===a.ho&&(c=kG(a),e=c.Cn()-d.T(),c=c.Dn()-d.U(),0!==e||0!==c))um(d,-e,-c),Pj(d);a.Mw=d.T();a.Nw=d.U();a.ZG=d.ua()} function xG(a,b){const d=b.Ab;let c=0;for(let e=0,g=a.sg.length;e<g;++e)a.sg[c]=a.sg[e],c<a.Hi.length&&(a.Hi[c]=a.Hi[e]),a.sg[e].Bp[1]===d?e<a.Hi.length&&a.Qf.DestroyJoint(a.Hi[e]):++c;ZF.Ue(a.sg,c);c<a.Hi.length&&ZF.Ue(a.Hi,c);a.Dl.delete(b)}function yG(a,b){a.ga&&(b=!!b,a.Wo!==b&&(a.Wo=b,a.Fa.SetFixedRotation(a.Wo),a.Fa.SetAngularVelocity(0),a.Fa.SetAwake(!0)))}function zG(a,b){if(a.ga&&a.wo!==b){a.wo=b;for(const d of a.Ps)d.SetDensity(b);a.Fa.ResetMassData()}} function AG(a,b){if(a.ga&&a.Co!==b){a.Co=b;for(var d of a.Ps)d.SetFriction(b);for(b=a.Fa.GetContactList();a.gj.getPointer(b);b=b.get_next())(d=b.get_contact())&&d.ResetFriction()}}function BG(a,b){if(a.ga&&a.cp!==b){a.cp=b;for(const d of a.Ps)d.SetRestitution(b)}}function CG(a,b){a.ga&&a.Mo!==b&&(a.Mo=b,a.Fa.SetLinearDamping(b))}function DG(a,b){a.ga&&a.io!==b&&(a.io=b,a.Fa.SetAngularDamping(b))}function EG(a,b){a.ga&&(b=!!b,a.Go!==b&&(a.Go=b,a.Fa.SetBullet(a.Go),a.Fa.SetAwake(!0)))} function FG(a,b,d,c,e){if(a.ga){var g=a.lc;a.Fa.ApplyForce(eG(b,d),fG(c*g,e*g),!0)}}function GG(a,b,d,c,e){if(a.ga){var g=a.lc;a.Fa.ApplyLinearImpulse(eG(b,d),fG(c*g,e*g),!0);b=a.m();a.Mw=b.T();a.Nw=b.U();a.Pw=!1}}function HG(a,b){a.ga&&a.Fa.ApplyTorque(b,!0)}function IG(a){return a.ga?a.Fa.GetAngularVelocity():0}function JG(a,b,d){if(a.ga){var c=a.lc;a.Fa.SetLinearVelocity(eG(b*c,d*c));a.Fa.SetAwake(!0);b=a.m();a.Mw=b.T();a.Nw=b.U();a.Pw=!1}} function KG(a){return a.ga?a.Fa.GetLinearVelocity().get_x()/a.lc:0}function LG(a){return a.ga?a.Fa.GetLinearVelocity().get_y()/a.lc:0}function MG(a,b){b=Math.floor(b);if(!a.ga)return[0,0];var d=0;for(let e=a.Fa.GetContactList();a.gj.getPointer(e);e=e.get_next()){var c=e.get_contact();if(!c)continue;const g=c.GetManifold().get_pointCount();if(b>=d&&b<d+g)return b-=d,d=a.Cg().cP,c.GetWorldManifold(d),c=d.get_points(b),[c.get_x()/a.lc,c.get_y()/a.lc];d+=g}return[0,0]} ZF.La.Kc.Instance=class extends ZF.fE{constructor(a,b){super(a);a=this.Cg();const d=this.m();this.gj=SF;this.Qf=a.Qf;this.lc=a.lc;this.Nq=!1;this.ho=this.sM=0;this.Wo=!1;this.wo=1;this.Co=.5;this.cp=.2;this.Mo=0;this.io=.01;this.Go=!1;this.ga=!0;this.Fa=null;this.Ps=[];this.Hi=[];this.sg=[];this.Dl=new Set;this.Mw=d.T();this.Nw=d.U();this.ZG=d.ua();this.YG=this.dH=0;this.Pw=!1;b&&(this.Nq=!!b[0],this.sM=b[1],this.Wo=!!b[2],this.wo=b[3],this.Co=b[4],this.cp=b[5],this.Mo=b[6],this.io=b[7],this.Go=!!b[8], this.ga=!!b[9]);b=this.g.tb();this.pg=new ZF.Jy(ZF.Fe.Bg(b,"instancedestroy",c=>this.WE(c.instance)),ZF.Fe.Bg(b,"beforeload",()=>this.bo()),ZF.Fe.Bg(b,"afterload",()=>this.nm()));cG.set(this.H,this);this.ga&&this.uf()}zz(){jG(this)}j(){pG(this);ZF.D(this.sg);this.Dl.clear();this.Fa&&(mG(this),this.Qf.DestroyBody(this.Fa),this.Fa=null);super.j()}WE(a){xG(this,a)}kd(){const a={e:this.ga,im:this.Nq,pr:this.Wo,d:this.wo,fr:this.Co,re:this.cp,ld:this.Mo,ad:this.io,b:this.Go,mcj:this.sg};if(this.ga){const b= this.Fa.GetLinearVelocity();a.vx=b.get_x();a.vy=b.get_y();a.om=this.Fa.GetAngularVelocity()}return a}bo(){pG(this);ZF.D(this.sg);this.Dl.clear()}xc(a){qG(this);this.ga=a.e;a.hasOwnProperty("im")&&(this.Nq=!!a.im);this.Wo=a.pr;this.wo=a.d;this.Co=a.fr;this.cp=a.re;this.Mo=a.ld;this.io=a.ad;this.Go=a.b;this.sg=a.mcj;const b=this.m();this.Mw=b.T();this.Nw=b.U();this.ZG=b.ua();this.dH=b.N();this.YG=b.M();this.ga&&(jG(this),this.Fa.SetLinearVelocity(eG(a.vx,a.vy)),this.Fa.SetAngularVelocity(a.om),0=== a.vx&&0===a.vy&&0===a.om||this.Fa.SetAwake(!0),this.sg=a.mcj);this.ga?this.uf():this.qm()}nm(){if(this.ga)for(const a of this.sg)switch(a.type){case 0:rG(this,...a.Bp);break;case 1:uG(this,...a.Bp);break;case 2:vG(this,...a.Bp);break;case 3:wG(this,...a.Bp)}}He(){if(this.ga){var a=this.g,b=this.Cg();if(0===b.DO)var d=a.Jd/60;else d=aj(a,this.H),d>1/30&&(d=1/30);var c=a.pn;if(c>b.AN&&0<a.Jd){a=this.g.Nb;let e=0;a&&(e=performance.now());0!==d&&this.Qf.Step(d,b.UO,b.cO);this.Qf.ClearForces();a&&self.ei.yZ(performance.now()- e);b.AN=c}sG(this,!0)}}uc(a){switch(a){case 2:return this.Wo;case 3:return this.ga?this.wo:0;case 4:return this.ga?this.Co:0;case 5:return this.ga?this.cp:0;case 6:return this.ga?this.Mo:0;case 7:return this.ga?this.io:0;case 8:return this.Go;case 9:return this.ga}}dg(a,b){switch(a){case 2:yG(this,b);break;case 3:zG(this,b);break;case 4:AG(this,b);break;case 5:BG(this,b);break;case 6:CG(this,b);break;case 7:DG(this,b);break;case 8:EG(this,b);break;case 9:this.co(b)}}co(a){a=!!a;if(this.ga&&!a){a:{for(const b of this.Dl){a= iG(b);if(!a||!a.ga)break a;xG(a,this.H)}this.Dl.clear()}qG(this);this.ga=!1;this.qm()}else!this.ga&&a&&(this.ga=!0,jG(this),this.uf())}Gg(){return self.cS}};const NG=new WeakMap;self.cS=class extends aG{constructor(){super();NG.set(this,aG.bk().na)}get isEnabled(){return NG.get(this).ga}set isEnabled(a){NG.get(this).co(a)}setVelocity(a,b){$F.we(a);$F.we(b);JG(NG.get(this),a,b)}};const OG=self.B; OG.La.Kc.K={F2(){return this.ga?!this.Fa.IsAwake():!1},i0(a,b,d){if(!this.ga)return!1;if(0===a)a=KG(this);else if(1===a)a=LG(this);else{if(this.ga){a=this.lc;var c=this.Fa.GetLinearVelocity();a=[c.get_x()/a,c.get_y()/a]}else a=[0,0];const [e,g]=a;a=Math.hypot(e,g)}return OG.compare(a,b,d)},T_(a,b){if(!this.ga)return!1;const d=OG.Zd(IG(this));return OG.compare(d,a,b)},a0(a,b){if(!this.ga)return!1;const d=this.ga?this.Fa.GetMass()/this.lc:0;return OG.compare(d,a,b)},Pb(){return this.ga}};const PG=self.B; PG.La.Kc.Ia={VZ(a,b,d){const [c,e]=tG(this,d);FG(this,a,b,c,e)},XZ(a,b,d,c){const [e,g]=tG(this,c);b=ZF.hu(e,g,b,d);FG(this,Math.cos(b)*a,Math.sin(b)*a,e,g)},WZ(a,b,d){b=PG.Ca(b);const [c,e]=tG(this,d);FG(this,Math.cos(b)*a,Math.sin(b)*a,c,e)},YZ(a,b,d){const [c,e]=tG(this,d);GG(this,a,b,c,e)},$Z(a,b,d,c){const [e,g]=tG(this,c);b=ZF.hu(e,g,b,d);GG(this,Math.cos(b)*a,Math.sin(b)*a,e,g)},ZZ(a,b,d){b=PG.Ca(b);const [c,e]=tG(this,d);GG(this,Math.cos(b)*a,Math.sin(b)*a,c,e)},a_(a){HG(this,PG.Ca(a))},b_(a, b){a=PG.Ca(a);b=PG.Ca(b);b=ZF.kf(this.m().ua(),b)?-1:1;HG(this,a*b)},c_(a,b,d){a=PG.Ca(a);const c=this.m();b=ZF.hu(c.T(),c.U(),b,d);b=ZF.kf(c.ua(),b)?-1:1;HG(this,a*b)},k6(a){this.ga&&(this.Fa.SetAngularVelocity(PG.Ca(a)),this.Fa.SetAwake(!0))},y0(a,b,d,c,e){if(b&&(b=cw(b,this.H),this.ga&&b&&b!==this.H)){var g=iG(b);g&&g.ga&&(this.sg.push({type:0,Bp:[a,b.Ab,d,c,e]}),rG(this,a,b.Ab,d,c,e))}},D0(a,b){if(b&&(b=cw(b,this.H),this.ga&&b&&b!==this.H)){var d=iG(b);d&&d.ga&&(this.sg.push({type:1,Bp:[a,b.Ab]}), uG(this,a,b.Ab))}},A0(a,b,d,c){if(b&&(b=cw(b,this.H),d=PG.Ca(d),c=PG.Ca(c),this.ga&&b&&b!==this.H)){var e=iG(b);e&&e.ga&&(d=ZF.Zd(d),c=ZF.Zd(c),this.sg.push({type:2,Bp:[a,b.Ab,d,c]}),vG(this,a,b.Ab,d,c))}},C0(a,b,d,c,e,g,k,m,n){if(b&&(b=cw(b,this.H),d=PG.Ca(d),m=PG.Ca(m),this.ga&&b&&b!==this.H)){var q=iG(b);q&&q.ga&&(d=ZF.Zd(d),m=ZF.Zd(m),this.sg.push({type:3,Bp:[a,b.Ab,d,c,e,g,k,m,n]}),wG(this,a,b.Ab,d,c,e,g,k,m,n))}},R4(){this.ga&&(pG(this),ZF.D(this.sg),this.Dl.clear())},V7(a){var b=this.Cg(); if(a!==b.BI){b.Qf.SetGravity(OF.La.Kc.yD(0,a));b.BI=a;for(const d of b.pa())(a=iG(d))&&(a=a.Fa)&&a.SetAwake(!0)}},DL(a){this.Cg().DL(a)},yL(a,b){this.Cg().yL(a,b)},S7(a,b){JG(this,a,b)},w6(a){zG(this,a)},H6(a){AG(this,a)},z6(a){BG(this,a)},l7(a){CG(this,a)},j6(a){DG(this,a)},gU(a){this.ga&&(a=!!a,this.Nq!==a&&(this.Nq=a,this.Fa.SetType(this.Nq?0:2),this.Fa.SetAwake(!0)))},W0(a,b){var d=this.Cg(),c=this.F();b=0!==b;if(c&&a){if(a.Pa)for(const e of a.Km)TF(c,e,b);else TF(c,a,b);d.cM=!1}},C7(a){yG(this, 0!==a)},q6(a){EG(this,0!==a)},cq(a){this.co(0!==a)}};const QG=self.B; QG.La.Kc.mc={y9(){return KG(this)},z9(){return LG(this)},QZ(){return QG.Zd(IG(this))},l3(){return this.ga?this.Fa.GetMass()/this.lc:0},I_(){return this.ga?(this.Fa.GetPosition().get_x()+this.Fa.GetLocalCenter().get_x())/this.lc:0},J_(){return this.ga?(this.Fa.GetPosition().get_y()+this.Fa.GetLocalCenter().get_y())/this.lc:0},L0(){return this.ga?this.wo:0},o1(){return this.ga?this.Co:0},V0(){return this.ga?this.cp:0},Z2(){return this.ga?this.Mo:0},PZ(){return this.ga?this.io:0},q0(){if(this.ga){var a= 0;for(let d=this.Fa.GetContactList();this.gj.getPointer(d);d=d.get_next()){var b=d.get_contact();b&&(b=b.GetManifold().get_pointCount(),a+=b)}}else a=0;return a},r0(a){return MG(this,a)[0]},s0(a){return MG(this,a)[1]}};"use strict";const RG=self.B,SG={};RG.La.Kc.vL=SG;const TG=RG.La.Kc.On,UG=RG.La.Kc.Du;function VG(a){return TG(a.get_x(),a.get_y())}SG.RX=function(a,b,d,c,e,g){return a*c+d*g+e*b-b*d-c*e-g*a}; SG.gY=function(a,b,d,c,e,g,k,m){var n=d-a,q=c-b,r=k-e;const w=m-g;r=(r*(g-b)-w*(e-a))/(q*r-n*w);n=a+r*n;q=b+r*q;e=SG.MC(n,q,e,g,k,m);return SG.MC(d,c,a,b,n,q)&&e?TG(n,q):null};SG.MC=function(a,b,d,c,e,g){return(d+.1>=a&&a>=e-.1||d-.1<=a&&a<=e+.1)&&(c+.1>=b&&b>=g-.1||c-.1<=b&&b<=g+.1)&&SG.mY(a,b,d,c,e,g)};SG.mY=function(a,b,d,c,e,g){return.1<Math.abs(e-d)?.1>Math.abs((g-c)/(e-d)*(a-d)+c-b):.1>Math.abs(a-d)};SG.NP=function(a,b,d,c){return.1>Math.abs(d-a)&&.1>Math.abs(c-b)}; SG.uL=function(a,b){a=SG.EX(a);var d=[];for(let n=0,q=a.length;n<q;++n){var c=a[n],e=[],g=0;for(let r=0,w=c.length;r<w;++r){var k=c[r],m=c[(r+1)%w];g+=k.get_x()*m.get_y()-k.get_y()*m.get_x();e.push(TG(k.get_x(),k.get_y()))}g=Math.abs(g/2);if(g>=.001*b)d.push(e);else for(let r=0,w=e.length;r<w;r++)UG(e[r])}a=d;b=[];for(const n of a)if(8>=n.length)b.push(n);else{a=b.push;d=a.apply;c=n;e=[];e.push(c.splice(0,8));g=e[0][0];for(k=e[0][7];c.length;){m=c.splice(0,Math.min(c.length,6));let q=m.ie(-1);m.push(VG(g)); m.push(VG(k));e.push(m);k=q}d.call(a,b,e)}return b}; SG.EX=function(a){var b;let d;var c;let e;let g,k,m,n;let q;var r=0;let w=0,x,z=[],E=[];for(E.push(a);E.length;){a=E[0];d=a.length;x=!0;for(b=0;b<d;b++){g=b;k=b<d-1?b+1:b+1-d;var C=b<d-2?b+2:b+2-d;m=a[g];n=a[k];C=a[C];C=SG.RX(m.get_x(),m.get_y(),n.get_x(),n.get_y(),C.get_x(),C.get_y());if(0>C){x=!1;var G=1E9;for(c=0;c<d;c++)if(c!==g&&c!==k){b=c;C=c<d-1?c+1:0;var I=a[b];var J=a[C];if(I=SG.gY(m.get_x(),m.get_y(),n.get_x(),n.get_y(),I.get_x(),I.get_y(),J.get_x(),J.get_y()))J=n.get_x()-I.get_x(),e=n.get_y()- I.get_y(),J=J*J+e*e,J<G?(w=b,r=C,q=I,G=J):UG(I)}if(1E9===G)return[];c=[];G=[];b=w;C=r;I=a[b];J=a[C];r=!1;SG.NP(q.get_x(),q.get_y(),J.get_x(),J.get_y())||(c.push(q),r=!0);SG.NP(q.get_x(),q.get_y(),I.get_x(),I.get_y())||(G.push(q),r=!0);r||UG(q);w=-1;for(r=g;;){if(r!==C)c.push(a[r]);else{if(0>w||w>=d)return[];SG.MC(J.get_x(),J.get_y(),a[w].get_x(),a[w].get_y(),m.get_x(),m.get_y())||c.push(a[r]);break}w=r;0>r-1?r=d-1:r--}c.reverse();w=-1;for(r=k;;){if(r!==b)G.push(a[r]);else{if(0>w||w>=d)return[];r!== b||SG.MC(I.get_x(),I.get_y(),a[w].get_x(),a[w].get_y(),n.get_x(),n.get_y())||G.push(a[r]);break}w=r;r+1>d-1?r=0:r++}E.push(c,G);E.shift();break}}x&&z.push(E.shift())}return z};"use strict";const WG=self.B;WG.La.Eh=class extends WG.eE{constructor(a){super(a)}j(){super.j()}};const XG=self.B;XG.La.Eh.oi=class extends XG.gE{constructor(a){super(a)}j(){super.j()}Jc(){}};const YG=self.B,ZG=YG.La.Eh; function vk(a,b,d=!1){var c=b.Dg();if(a.vf.has(c)&&(c=a.vf.get(c))){const e=c.indexOf(b);-1!==e&&c.splice(e,1)}b.Uc||$G(a,b)||(b.cd(d),d=b.Dg(),a.Ui.has(d)||a.Ui.set(d,[]),a.Ui.get(d).push(b))}function aH(a){if(a.Ui.size){for(const b of a.Ui.values()){for(const d of b)d.Uc||d.j();YG.D(b)}a.Ui.clear()}}function bH(a,b){return b?(b=[...a.vf.values()].flat(),a=[...a.Ui.values()].flat(),b.concat(a).filter(d=>d).filter(d=>!d.Uc)):[...a.vf.values()].flat().filter(d=>d).filter(d=>!d.Uc)} function cH(a,b,d){if(d)return d=a.vf.get(b),a=a.Ui.get(b),d||(d=[]),a||(a=[]),d.concat(a).filter(c=>c).filter(c=>!c.Uc);(a=a.vf.get(b))||(a=[]);return a.filter(c=>c).filter(c=>!c.Uc)}function dH(a,b,d){if((a=d?cH(a,d,!0):bH(a,!0))&&a.length)for(const c of a)if(oo(c,b))return c}function*eH(a,b,d,c=!1){if((a=d?cH(a,d,c):bH(a,c))&&a.length)for(const e of a)oo(e,b)&&(yield e)}function*fH(a,b){yield*eH(a,b,void 0,!0)} function gH(a){const b={};for(const [d,c]of a.vf)b[d]=c.filter(e=>!e.Uc).map(e=>e.ra());return b}function hH(a){return a.yo.filter(b=>!b.Uc).map(b=>b.qa())}function iH(a){const b={};for(const [d,c]of a.Ui)b[d]=c.map(e=>e.ra());return b}function jH(a,b,d,c){if(b)for(const g in b){let k=d.get(g);k?YG.D(k):k=[];var e=b[g];for(const m of e)kH(k,m.name,c)?lH(m.name,m,c):(e=Zq({mf:a.I(),json:m}),Tq(e,n=>mH(a,n)),Kn(c,e),kH(k,e,c));d.set(g,k)}} function kH(a,b,d){if("string"===typeof b){if(b=Jn(d,b))return!!a.push(b)}else return!!a.push(b);return!1}function lH(a,b,d){"string"===typeof a?(a=Jn(d,a))&&a.ya(b):a.ya(b)}function mH(a,b){nH=a.kj=b;let d,c;if(a.I())d=a.H,c=a.g,a.Ka(ZG.K.$K),a.Ka(ZG.K.OK),vk(a,b);else{d=b.ba();if(!d||d&&Go(d))return;c=d.I();a:{var e=b.ba().Ad;for(g of e)if(e=g.oh(),e.xw===a.constructor){var g=e;break a}g=void 0}a.Ka(ZG.K.$K,c,d,g);a.Ka(ZG.K.OK,c,d,g);b.cd()}nH=a.kj=null;b.Is&&zn(c,d)} function oH(a,b,d=!1){if(YG.Ic(b)){var c=pH[b];if(a.vf.has(c)){c=a.vf.get(c);var e=a.kj;for(var g of c)g===e||g.Uc||$G(a,g)||(g.cd(d),g.j());YG.D(c)}}else{g=a.kj;for(c of bH(a))c===g||c.Uc||$G(a,c)||(c.cd(d),c.j());for(e of a.vf.keys())YG.D(a.vf.get(e)),a.vf.delete(e);a.vf.clear()}}function qH(a,b,d){d=pH[d];a.vf.has(d)||a.vf.set(d,[]);a.vf.get(d).push(b)} function rH(a,b){var d=sH(b.Ag,b.Hj,b.lf,b.Ej,b.Vl,a.H);const c=pH[b.Ag];ZG.mi.BK(c)||oH(a,b.Ag);d=Zq({mf:a.I(),id:c,Dr:b.Dr,time:b.time,instance:a.H,su:!!b.su,loop:!!b.loop,qu:!!b.qu,Cr:b.Cr,lu:b.lu,ru:d});Tq(d,e=>mH(a,e));qH(a,d,b.Ag);return d}function $G(a,b){const d=b.Dg();return a.Ui.has(d)?a.Ui.get(d).includes(b):!1} ZG.Instance=class extends YG.fE{constructor(a,b){super(a);this.Ud=!0;b&&(this.Ud=!!b[0]);this.vf=new Map;this.yo=[];this.Ui=new Map;this.XO=this.VF=this.aM=this.kj=null;this.LM="";this.Ud&&this.Uz();this.nq=d=>this.nm(d);this.I().tb().addEventListener("afterload",this.nq)}j(){this.I().tb().removeEventListener("afterload",this.nq);this.nq=null;this.kj&&(vk(this,this.kj,!0),this.kj=null);oH(this,NaN,!0);YG.D(this.yo);this.yo=null;aH(this);this.Ui=null;super.j()}cq(a){this.Ud=!!a;a?this.Uz():this.Dv(); for(const b of bH(this))a?this.yo.includes(b)&&pk(b):((b.IsPlaying()||b.rg)&&this.yo.push(b),b.cd());a&&YG.D(this.yo)}Pb(){return this.Ud}$b(){const a=this.H;return a?!Go(a):!1}kd(){return{s:!1,e:!!this.Ud,at:gH(this),dt:hH(this),wt:iH(this),ft:this.kj?this.kj.qa():""}}xc(a){a&&(this.aM=a.at,this.VF=a.dt,this.XO=a.wt,this.LM=a.ft,this.Ud=!!a.e)}nm(){const a=this.I().Ob;jH(this,this.aM,this.vf,a);if(this.VF){YG.D(this.yo);for(const b of this.VF)kH(this.yo,b,a)}jH(this,this.XO,this.Ui,a);this.kj=Jn(a, this.LM);this.Ud?this.Uz():this.Dv()}kv(){aH(this)}uc(a){switch(a){case 0:return this.Ud}}dg(a,b){switch(a){case 0:this.Ud=!!b}}Ka(a,b,d,c){return this.g?super.Ka(a):b.Ka(a,d,c)}Gg(){return self.mS}};const tH=self.B;let nH=null; tH.La.Eh.K={$K(a){return oo(nH,a)},OK(){return!0},IsPlaying(a){return(a=[...fH(this,a)],a.length)?a.some(tH.eq.IsPlaying):!1},vS(){const a=[...bH(this,!0)];return a&&a.length?a.some(tH.eq.IsPlaying):!1},Uu(a){return(a=[...fH(this,a)],a.length)?a.some(tH.eq.Uu):!1},h2(){const a=[...bH(this,!0)];return a&&a.length?a.some(tH.eq.Uu):!1}};const uH=self.Yl; self.B.La.Eh.Ia={cq(a){this.cq(!!a)},async NU(...a){this.Pb()&&this.$b()&&(a=rH(this,vH(...a)),a.Play()&&await qk(a))},async OU(...a){this.Pb()&&this.$b()&&(a=rH(this,wH(...a)),a.Play()&&await qk(a))},async a9(...a){this.Pb()&&this.$b()&&(a=rH(this,xH(...a)),a.Play()&&await qk(a))},W3(a){if(this.Pb()&&this.$b())for(const b of eH(this,a))b.cd()},V3(){if(this.Pb()&&this.$b())for(const a of bH(this))a.cd()},L5(a){if(this.Pb()&&this.$b())for(const b of eH(this,a))pk(b)},K5(){if(this.Pb()&&this.$b())for(const a of bH(this))pk(a)}, q8(a){if(this.Pb()&&this.$b())for(const b of eH(this,a))vk(this,b)},o8(){if(this.Pb()&&this.$b())for(const a of bH(this))vk(this,a)},x7(a,b,d){if(this.Pb()&&this.$b()){b=yH[b];for(const c of eH(this,a))Wq(c,[b]),Xq(c,d,b)}},P7(a,b,d,c){if(this.Pb()&&this.$b()){b=zH.ki(b)?AH[b]:AH[pH[b]];for(const e of eH(this,a))Wq(e,b),Xq(e,d,b[0]),Xq(e,c,b[1])}},R7(a,b){if(this.Pb()&&this.$b())for(const d of eH(this,a,"value"))Uq(d,b,"value")},Q7(a,b){if(this.Pb()&&this.$b())for(const d of eH(this,a,"value"))Wq(d, ["value"]),Xq(d,b,"value")},M7(a,b){if(this.Pb()&&this.$b()){b=uH.am(b);for(const d of eH(this,a))d.ag(b)}},g6(a){if(this.Pb()&&this.$b()){a=uH.am(a);for(const b of bH(this))b.ag(a)}},O7(a,b){if(this.Pb()&&this.$b())for(const d of eH(this,a))d.Dh(b)},i6(a){if(this.Pb()&&this.$b())for(const b of bH(this))b.Dh(a)},N7(a,b){if(this.Pb()&&this.$b())for(const d of eH(this,a))d.Ch(b)},h6(a){if(this.Pb()&&this.$b())for(const b of bH(this))b.Ch(a)},L7(a,b){if(this.Pb()&&this.$b())for(const d of eH(this,a))d.Is= !!b},f6(a){if(this.Pb()&&this.$b())for(const b of bH(this))b.Is=!!a}};self.B.La.Eh.mc={K8(a){return(a=dH(this,a,void 0))?a.wa():0},F4(a){return(a=dH(this,a,void 0))?a.wa()/a.vc():0},UU(a){return(a=dH(this,a,"value"))?a.$d("value").Bb().Wa():0},C8(){if(this.kj){var a=this.kj;a.Nx&&(a.lC=a.gf.join(" "));a.Nx=!1;a=a.lC}else a="";return a}};"use strict"; const zH=self.B,BH=self.Yl,CH=["position","size","scale"],yH="offsetX offsetY offsetWidth offsetHeight offsetAngle offsetOpacity offsetColor offsetZElevation offsetScaleX offsetScaleY".split(" "),pH=[].concat(CH).concat(yH).concat(["value"]),DH={position:["offsetX","offsetY"],size:["offsetWidth","offsetHeight"],scale:["offsetScaleX","offsetScaleY"]},AH=Object.assign({},pH.reduce((a,b)=>Object.assign({},a,{[b]:[b]}),{}),DH); zH.La.Eh.mi=class{constructor(){}static am(a){return[...BH.rK()][a]}static ES(a){return!!DH[a]}static HD(a){return"offsetColor"===a}static uS(a){return"offsetAngle"===a}static BK(a){return"value"===a}};"use strict";const EH=self.B,FH=EH.La.Eh,GH=new Map; function sH(a,b,d,c,e,g){var k=ZG.eR;if(0===GH.size){const m=FH.fL,n=FH.VU;HH(m.aL,k.yV,n.PE);HH(m.COLOR,k.tV,n.uV);HH(m.OJ,k.sV,n.zV);HH(m.KL,k.AV,n.PE);HH(m.JK,k.vV,n.PE)}k=IH(a);k=GH.get(k);EH.Ic(a)&&(a=pH[a]);return k.KX(a,k.jQ(b),k.jQ(d),c,e,g)}function HH(a,b,d){GH.set(a,{name:a,KX:b,jQ:d})} FH.eR=class{constructor(){}static yV(a,b,d,c,e){return DH[a].map((g,k)=>({tu:"world-instance",Ag:g,type:"float",valueType:"numeric",Hj:b[k],lf:d[k],Ej:FH.mi.am(c),Vl:e}))}static tV(a,b,d,c,e,g){return EH.C.Text&&g.qb()instanceof EH.C.Text?{tu:"plugin",MY:[7],Ag:"color",type:"color",valueType:"color",Hj:b,lf:d,Ej:FH.mi.am(c),Vl:e}:{tu:"world-instance",Ag:a,type:"color",valueType:"color",Hj:b,lf:d,Ej:FH.mi.am(c),Vl:e}}static sV(a,b,d,c,e){return{tu:"world-instance",Ag:a,type:"angle",valueType:"angle", Hj:b,lf:d,Ej:FH.mi.am(c),Vl:e}}static vV(a,b,d,c,e){return{tu:"world-instance",Ag:a,type:"float",valueType:"numeric",Hj:b,lf:d,Ej:FH.mi.am(c),Vl:e}}static AV(a,b,d,c,e){return{tu:"value",Ag:a,type:"float",valueType:"numeric",Hj:b,lf:d,Ej:FH.mi.am(c),Vl:e}}};"use strict"; const JH=self.B,KH=JH.La.Eh,LH=Object.assign({},{Vl:"absolute"},{Dr:"",Ag:"",time:0,Ej:0,su:0,loop:!1,qu:!1,Cr:1}),MH=Object.assign({},LH,{lu:"current-state",Hj:0,lf:0}),NH=Object.assign({},LH,{lu:"current-state",Hj:[0,0],lf:[0,0]}),OH=Object.assign({},LH,{lu:"current-state",Hj:[0,0,0],lf:[0,0,0]}),PH=Object.assign({},MH,{lu:"start-value"}); function vH(a,b,d,c,e,g,k,m,n){b="string"===typeof b?b:yH[b];const q=KH.mi.HD(b)?OH:MH;q.Dr=a;q.time=c;q.Ej=e;q.su=g;q.loop=k;q.qu=m;q.Cr=n;KH.mi.HD(b)?(OH.lf[0]=JH.cz(d),OH.lf[1]=JH.az(d),OH.lf[2]=JH.Ry(d),OH.Ag=pH.indexOf(b)):MH.lf="offsetOpacity"===b?d/100:d;q.Ag=pH.indexOf(b);return q}function wH(a,b,d,c,e,g,k,m,n,q){NH.Dr=a;NH.time=e;NH.Ej=g;NH.su=k;NH.loop=m;NH.qu=n;NH.Cr=q;a="string"===typeof b?b:CH[b];NH.lf[0]=d;NH.lf[1]=c;NH.Ag=pH.indexOf(a);return NH} function xH(a,b,d,c,e,g,k,m,n){PH.Dr=a;PH.time=c;PH.Ej=e;PH.su=g;PH.loop=k;PH.qu=m;PH.Cr=n;PH.Hj=b;PH.lf=d;PH.Ag=pH.indexOf("value");return PH}KH.Z8=class{constructor(){}};"use strict";const QH=self.B,RH=QH.La.Eh,SH=[]; function IH(a){var b=FH.fL;0===SH.length&&(SH.push({zr:RH.mi.ES,result:b.aL}),SH.push({zr:RH.mi.HD,result:b.COLOR}),SH.push({zr:RH.mi.uS,result:b.OJ}),SH.push({zr:RH.mi.BK,result:b.KL}),SH.push({zr:()=>!0,result:b.JK}));QH.Ic(a)&&(a=pH[a]);for(const d of SH)if(d.zr(a))return d.result}RH.fL=class{constructor(){}static get aL(){return"pair"}static get COLOR(){return"color"}static get OJ(){return"angle"}static get KL(){return"value"}static get JK(){return"other"}};"use strict";const TH=self.B; TH.La.Eh.VU=class{constructor(){}static zV(a){return TH.Yd(TH.Ca(parseFloat(a)))}static uV(a){return a.slice(0)}static PE(a){return a}};"use strict";const UH=self.iz,VH=new WeakMap;self.mS=class extends UH{constructor(){super();VH.set(this,UH.bk().na)}get isEnabled(){return VH.get(this).Pb()}set isEnabled(a){VH.get(this).cq(a)}};"use strict";const WH=self.B;WH.La.ks=class extends WH.eE{constructor(a){super(a)}j(){super.j()}};const XH=self.B;XH.La.ks.oi=class extends XH.gE{constructor(a){super(a)}j(){super.j()}Jc(){}}; const YH=self.B,ZH=self.iz,$H=2*Math.PI,aI=Math.PI/2,bI=3*Math.PI/2,cI=[0,1,8,3,4,2,5,6,9,7];function dI(a,b){b%=$H;switch(a.vp){case 0:return Math.sin(b);case 1:return b<=aI?b/aI:b<=bI?1-2*(b-aI)/Math.PI:(b-bI)/aI-1;case 2:return 2*b/$H-1;case 3:return-2*b/$H+1;case 4:return b<Math.PI?-1:1}return 0} function eI(a){const b=a.H.m();switch(a.Th){case 0:b.T()!==a.Wg&&(a.Cb+=b.T()-a.Wg);b.hg(a.Cb+dI(a,a.rd)*a.td);a.Wg=b.T();break;case 1:b.U()!==a.Wg&&(a.Cb+=b.U()-a.Wg);b.Lg(a.Cb+dI(a,a.rd)*a.td);a.Wg=b.U();break;case 2:b.gg(a.Cb+dI(a,a.rd)*a.td);b.Kg(b.N()*a.TB);break;case 3:b.gg(a.Cb+dI(a,a.rd)*a.td);break;case 4:b.Kg(a.Cb+dI(a,a.rd)*a.td);break;case 5:b.ua()!==a.Wg&&(a.Cb=YH.Yd(a.Cb+(b.ua()-a.Wg)));b.fe(a.Cb+dI(a,a.rd)*a.td);a.Wg=b.ua();break;case 6:b.bg(a.Cb+dI(a,a.rd)*a.td/100);break;case 8:b.T()!== a.Wg&&(a.Cb+=b.T()-a.Wg);b.U()!==a.mt&&(a.Hq+=b.U()-a.mt);b.hg(a.Cb+Math.cos(b.ua())*dI(a,a.rd)*a.td);b.Lg(a.Hq+Math.sin(b.ua())*dI(a,a.rd)*a.td);a.Wg=b.T();a.mt=b.U();break;case 9:b.ig(a.Cb+dI(a,a.rd)*a.td)}Pj(b)}function fI(a){let b=a.td;5===a.Th&&(b=YH.Zd(b));return b} YH.La.ks.Instance=class extends YH.fE{constructor(a,b){super(a);this.td=this.Hf=this.vp=this.Th=this.rd=0;this.ga=!0;this.TB=this.mt=this.Wg=this.Hq=this.Cb=this.nH=this.GH=this.HH=this.aA=this.hM=this.bA=0;b&&(this.Th=cI[b[0]],this.vp=b[1],this.HH=this.g.Kl()*b[3],this.bA=b[2],this.Hf=b[2],this.Hf+=this.HH,this.hM=b[4],0!==this.Hf&&(this.GH=this.g.Kl()*b[5],this.rd=b[4]/this.Hf*$H,this.rd+=this.GH/this.Hf*$H),this.nH=this.g.Kl()*b[7],this.aA=b[6],this.td=b[6],this.td+=this.nH,this.ga=!!b[8]);5=== this.Th&&(this.td=YH.Ca(this.td));this.xh();this.ga&&this.uf()}j(){super.j()}kd(){return{i:this.rd,e:this.ga,mv:this.Th,w:this.vp,p:this.Hf,mag:this.td,iv:this.Cb,iv2:this.Hq,r:this.TB,lkv:this.Wg,lkv2:this.mt}}xc(a){this.rd=a.i;this.co(a.e);this.Th=a.mv;this.vp=a.w;this.Hf=a.p;this.td=a.mag;this.Cb=a.iv;this.Hq=a.iv2;this.TB=a.r;this.Wg=a.lkv;this.mt=a.lkv2}xh(){const a=this.H.m();switch(this.Th){case 0:this.Cb=a.T();break;case 1:this.Cb=a.U();break;case 2:this.Cb=a.N();this.TB=a.M()/a.N();break; case 3:this.Cb=a.N();break;case 4:this.Cb=a.M();break;case 5:this.Cb=a.ua();break;case 6:this.Cb=a.Gc();break;case 7:this.Cb=0;break;case 8:this.Cb=a.T();this.Hq=a.U();break;case 9:this.Cb=a.eb()}this.Wg=this.Cb;this.mt=this.Hq}He(){const a=aj(this.g,this.H);this.ga&&0!==a&&(this.rd=0===this.Hf?0:(this.rd+a/this.Hf*$H)%$H,eI(this))}co(a){(this.ga=!!a)?this.uf():this.qm()}uc(a){switch(a){case 0:return this.Th;case 1:return this.vp;case 2:return this.bA;case 6:return this.aA;case 8:return this.ga}}dg(a, b){switch(a){case 0:this.Th=cI[b];this.xh();break;case 1:this.vp=b;break;case 2:this.bA=b;this.Hf=this.bA+this.HH;this.ga||(0!==this.Hf?(this.rd=this.hM/this.Hf*$H,this.rd+=this.GH/this.Hf*$H):this.rd=0);break;case 6:this.aA=b;this.td=this.aA+this.nH;5===this.Th&&(this.td=YH.Ca(this.td));break;case 8:this.ga=!!b}}Gg(){return self.eS}};const gI=new WeakMap;self.eS=class extends ZH{constructor(){super();gI.set(this,ZH.bk().na)}get value(){const a=gI.get(this);return dI(a,a.rd)*a.td}set isEnabled(a){gI.get(this).co(!!a)}get isEnabled(){return gI.get(this).ga}}; const hI=self.B;hI.La.ks.K={Pb(){return this.ga},b0(a){return this.Th===a},d0(a,b){return hI.compare(this.Hf,a,b)},$_(a,b){return hI.compare(fI(this),a,b)},k0(a){return this.vp===a}};self.B.La.ks.Ia={cq(a){this.co(0!==a)},z7(a){this.Hf=a},q7(a){5===this.Th&&(a=YH.Ca(a));this.td=a},u7(a){5===this.Th&&5!==a&&(this.td=YH.Zd(this.td));this.Th=a;this.xh()},T7(a){this.vp=a},A7(a){const b=2*Math.PI;this.rd=YH.$(a*b%b,0,2*Math.PI);eI(this)},v9(){this.xh()}}; self.B.La.ks.mc={J0(){return this.rd/(2*Math.PI)},Y3(){return this.Hf},h3(){return fI(this)},UU(){return dI(this,this.rd)*fI(this)}};const Z=self.B; self.TJ=function(){return[Z.C.vb,Z.La.Kc,Z.La.Eh,Z.C.Touch,Z.La.ks,Z.C.Text,Z.C.Wb,Z.C.Audio,Z.C.jg,Z.C.Yn,Z.C.Jj,Z.C.sb.K.TK,Z.C.sb.Ia.XJ,Z.C.sb.Ia.eU,Z.C.sb.Ia.mU,Z.C.Jj.Ia.ac,Z.C.vb.Ia.dU,Z.C.vb.Ia.wU,Z.C.vb.Ia.bU,Z.C.jg.Ia.aj,Z.La.Eh.Ia.NU,Z.C.sb.K.XQ,Z.C.sb.K.jK,Z.La.Kc.Ia.cq,Z.C.sb.K.WQ,Z.C.vb.mc.FQ,Z.C.vb.Ia.Lg,Z.C.vb.Ia.hU,Z.C.vb.mc.Lz,Z.C.vb.mc.JE,Z.C.sb.mc.wY,Z.C.vb.Ia.fe,Z.C.vb.Ia.BL,Z.C.vb.Ia.bg,Z.C.sb.K.vR,Z.C.Jj.Ia.hg,Z.C.vb.Ia.GK,Z.C.jg.Ia.Lg,Z.C.sb.K.bR,Z.C.Audio.Ia.Play,Z.La.Kc.Ia.gU, Z.C.vb.Ia.$J,Z.C.Audio.Ia.cd,Z.C.Audio.Ia.gm,Z.C.vb.Ia.jU,Z.C.jg.Ia.GK,Z.C.vb.Ia.hg,Z.C.sb.K.cK,Z.C.Jj.mc.nf,Z.C.sb.Ia.GE,Z.C.Wb.Ia.iU,Z.C.Jj.mc.dD,Z.C.Touch.K.ZK,Z.C.sb.Ia.ZT,Z.C.sb.Ia.OR,Z.C.sb.Ia.PR,Z.C.vb.K.YQ,Z.C.vb.K.yS,Z.C.vb.K.ZQ,Z.C.vb.K.JT,Z.C.vb.Ia.gg,Z.C.vb.mc.wQ,Z.C.vb.mc.OL,Z.C.vb.Ia.cU,Z.C.sb.mc.random,Z.C.Audio.Ia.LT,Z.C.vb.K.dR,Z.C.Touch.mc.Lz,Z.C.Touch.mc.JE,Z.C.Touch.K.YK,Z.C.vb.K.DS,Z.C.vb.mc.RU,Z.La.Eh.Ia.OU,Z.C.Wb.Ia.SQ,Z.C.Wb.K.PK,Z.C.Jj.Ia.LS,Z.C.Wb.mc.KS,Z.C.Wb.K.RK,Z.C.jg.Ia.$J, Z.C.jg.K.$Q,Z.C.Wb.Ia.TQ,Z.C.jg.Ia.BL,Z.C.jg.Ia.fg,Z.C.jg.mc.Lz,Z.C.Touch.K.IS]}; self.OQ=[{n_:0},{xaa:0},{yaa:0},{UI:0},{Daa:0},{lda:0},{mda:0},{Gaa:0},{u_:0},{Kc:0},{A_:0},{r_:0},{Eh:0},{i$:0},{Touch:0},{T9:0},{L1:0},{a8:0},{u4:0},{t1:0},{x0:0},{Wb:0},{fba:0},{eba:0},{s1:0},{e$:0},{g$:0},{f$:0},{v3:0},{Audio:0},{v_:0},{q_:0},{X7:0},{s_:0},{w_:0},{n9:0},{i9:0},{h9:0},{l9:0},{b9:0},{g9:0},{M8:0},{I1:0},{N5:0},{w3:0},{j9:0},{j$:0},{h$:0},{M1:0},{S0:0},{Z5:0},{N0:0},{gba:0},{Gca:0},{y_:0},{d1:0},{H1:0},{Nca:0},{k9:0},{f9:0},{e9:0},{m9:0},{c9:0},{d9:0},{P0:0},{x_:0},{z_:0},{Y8:0}, {GZ:0},{L$:0},{end:0},{Caa:0},{Baa:0},{Jca:0},{ida:0},{nba:0},{Hca:0},{Ica:0},{P$:0},{qaa:0},{O$:0},{d:0},{Faa:0},{P8:0},{Q8:0},{rba:0},{y$:0},{Oba:0}];const iI=self.B;function jI(a,b){return"string"===typeof a||"string"===typeof b?("number"===typeof a?(Math.round(1E10*a)/1E10).toString():a)+("number"===typeof b?(Math.round(1E10*b)/1E10).toString():b):a&&b?1:0} self.NQ=[()=>"UI",()=>90,()=>-100,()=>"",()=>360,()=>-330,()=>185,()=>-90,()=>510,()=>590,()=>-260,()=>0,()=>550,()=>1280,()=>10,()=>1,a=>{const b=Hu(a,0).fc;return()=>jI("Level ",b.Wa())},()=>70,()=>.8,()=>617,()=>1220,()=>.6,a=>{const b=Hu(a,0);return()=>iu(b)},a=>{const b=Hu(a,0).fc;return()=>b.Wa()},a=>{const b=Hu(a,0).Mp();return()=>b()+1},a=>{const b=Hu(a,0).fc;return()=>b.Wa()+1},()=>9,a=>{const b=Hu(a,0).Mp();return()=>b()},a=>{const b=Hu(a,0).fc;return()=>b.Wa()-40},a=>{const b=Hu(a,0).fc; return()=>1E3-Math.round(1117-b.Wa())},a=>{const b=Hu(a,0).fc;return()=>jI("",Math.round(1117-b.Wa()))},()=>30,()=>"drum",a=>{const b=Hu(a,0).fc;return()=>Math.floor(b.Wa()/19)},a=>{const b=Hu(a,0).fc;return()=>b.Wa()-30},()=>1E3,()=>"backsound",a=>{const b=Hu(a,0).fc,d=Hu(a,1).fc;return()=>b.Wa()-d.Wa()},()=>210,()=>540,()=>810,()=>.85,()=>.9,()=>"Level Failed",()=>512,()=>"level Completed",a=>{const b=Hu(a,0).fc;return()=>jI("Score ",b.Wa())},a=>{const b=Hu(a,0),d=Hu(a,1).fc;return()=>jI("Best score ", iu(b,d.Wa()))},()=>.95,a=>{const b=Hu(a,0),d=Hu(a,1).fc;return()=>iu(b,d.Wa())},a=>{const b=Hu(a,0).fc;return()=>jI("Best score ",b.Wa())},()=>432,()=>610,()=>"MyTowerData",()=>-438,a=>{const b=Hu(a,0).fc;return()=>jI("Level",b.Wa())},()=>1340,()=>830,()=>.7,()=>.3,()=>-20,()=>3,a=>{const b=Hu(a,0).fc,d=Hu(a,1).fc;return()=>b.Wa()+1-d.Wa()},a=>{const b=Hu(a,0);return()=>lu(b)-20},a=>{const b=Hu(a,0);return()=>lu(b)},a=>{const b=Hu(a,0),d=Hu(a,1);return()=>iu(b)-lu(d)-20},()=>60,a=>{const b=Hu(a, 0).Mp();return()=>Math.round(b(0,2))},a=>{const b=Hu(a,0).fc;return()=>jI("explode",b.Wa()+1)},()=>.15,a=>{const b=Hu(a,0).Mp();return()=>b()-120},a=>{const b=Hu(a,0).fc;return()=>b.Wa()-1},a=>{const b=Hu(a,0),d=Hu(a,1),c=Hu(a,2),e=Hu(a,3);return()=>iI.An(iu(b),iu(d),iu(c),iu(e))},a=>{const b=Hu(a,0);return()=>iu(b)/2},a=>{const b=Hu(a,0),d=Hu(a,1);return()=>iu(b)-iu(d)/2},a=>{const b=Hu(a,0).fc,d=Hu(a,1);return()=>b.Wa()*Math.cos(iI.Ca(iu(d)))},a=>{const b=Hu(a,0).fc,d=Hu(a,1);return()=>b.Wa()*Math.sin(iI.Ca(iu(d)))}, a=>{const b=Hu(a,0),d=Hu(a,1).fc;return()=>iu(b)+d.Wa()},a=>{const b=Hu(a,0),d=Hu(a,1).fc,c=Hu(a,2);return()=>iu(b)+(d.Wa()+20)*Math.cos(iI.Ca(iu(c)))},a=>{const b=Hu(a,0),d=Hu(a,1).fc,c=Hu(a,2);return()=>iu(b)+(d.Wa()+20)*Math.sin(iI.Ca(iu(c)))},a=>{const b=Hu(a,0);return()=>{const d=rr(b.J.W()),c=d.length;return 0===c?b.tx?"":0:d[hu(b.xb.Nt,c)].Af[b.SO]}},()=>350,()=>.5,()=>1050,a=>{const b=Hu(a,0).fc,d=Hu(a,1),c=Hu(a,2).Mp();return()=>{var e=b.Wa(),g=iu(d,c());return"number"===typeof e&&"number"=== typeof g?e+g:e}},a=>{const b=Hu(a,0).fc;return()=>jI("Total Scores\n",b.Wa())},()=>920,()=>-200,()=>777,()=>.2,()=>1400,()=>100,()=>620,()=>664,()=>700,()=>150,a=>{const b=Hu(a,0);return()=>iu(b)+720},()=>-360,()=>1080]; supportcheck.js 0000644 00000004603 15042605653 0007625 0 ustar 00 'use strict';(function(){var isKasperskyScriptInjected=!!document.querySelector('script[src*="kaspersky"]');var tmpCanvas=document.createElement("canvas");var hasWebGL=!!tmpCanvas.getContext("webgl");var missingFeatures=[];if(!hasWebGL)missingFeatures.push("WebGL");if(typeof WebAssembly==="undefined")missingFeatures.push("WebAssembly");if(!("noModule"in HTMLScriptElement.prototype))missingFeatures.push("JavaScript Modules");if(missingFeatures.length===0&&!isKasperskyScriptInjected)window["C3_IsSupported"]= true;else{var msgWrap=document.createElement("div");msgWrap.id="notSupportedWrap";document.body.appendChild(msgWrap);var msgTitle=document.createElement("h2");msgTitle.id="notSupportedTitle";if(isKasperskyScriptInjected)msgTitle.textContent="Kaspersky Internet Security broke this export";else msgTitle.textContent="Software update needed";msgWrap.appendChild(msgTitle);var msgBody=document.createElement("p");msgBody.className="notSupportedMessage";var msgText="This content is not supported because your device's software appears to be out-of-date. "; var ua=navigator.userAgent;if(/android/i.test(ua))msgText+='<br><br>On Android, fix this by making sure the <a href="https://play.google.com/store/apps/details?id=com.google.android.webview">Android System Webview</a> app has updates enabled and is up-to-date.';else if(/iphone|ipad|ipod/i.test(ua)){msgText+="Alternatively if <strong>Lockdown mode</strong> is enabled, try turning it off to view this content.";msgText+="<br><br>Note: using the <strong>iOS simulator</strong> requires <strong>Xcode 12+</strong>. Otherwise try testing on a real device instead."}else if(/msie/i.test(ua)|| /trident/i.test(ua)||/edge\//i.test(ua))msgText+="<br><br>Note: <strong>Internet Explorer</strong> and the <strong>legacy Edge browser</strong> are not supported. Try using <a href='https://www.google.com/chrome'>Chrome</a> or <a href='https://www.mozilla.org/firefox'>Firefox</a> instead.";else if(isKasperskyScriptInjected)msgText="It appears a script was added to this export by Kaspersky software. This prevents the exported project from working. Try disabling Kaspersky and exporting again.";else msgText+= "Try installing any available software updates. Alternatively try on a different device.";msgText+="<br><br><em>Missing features: "+missingFeatures.join(", ")+"<br>User agent: "+navigator.userAgent+"</em>";msgBody.innerHTML=msgText;msgWrap.appendChild(msgBody)}})(); c3main.js 0000644 00000000064 15042605653 0006262 0 ustar 00 import "./c3runtime.js"; import "./objRefTable.js"; modernjscheck.js 0000644 00000000240 15042605653 0007723 0 ustar 00 "use strict";!function(){let p=!0,r=new class{#prop="pass";getProp(){return this.#prop}};(p="pass"!==r.getProp()?!1:p)&&(window["C3_ModernJSSupport_OK"]=!0)}(); main.js 0000644 00000175321 15042605653 0006045 0 ustar 00 function l(b,a,c,d){b.v.Bb(b.hb,a,c,d,void 0)}function m(b,a,c,d){b.v.ca?l(b,a,c,d):b.v.se()._OnMessageFromDOM({type:"event",component:b.hb,handler:a,dispatchOpts:d||null,data:c,responseId:null})}function q(b,a,c){b.v.C(b.hb,a,c)}function aa(b,a){for(const [c,d]of a)q(b,c,d)}function t(b){b.Nb||(b.v.cd(b.Md),b.Nb=!0)}window.zb=class{constructor(b,a){this.v=b;this.hb=a;this.Nb=!1;this.Md=()=>this.Ka()}Vc(){}Ka(){}}; window.bf=class{constructor(){this.Sc=-1}j(){-1!==this.Sc&&(self.clearTimeout(this.Sc),this.Sc=-1)}};"use strict";function ba(b,a){q(b,"get-element",c=>{const d=u(b,c.elementId);return a(d,c)})}function u(b,a){b=b.Lb.get(a);if(!b)throw Error(`no element with id ${a}`);return b.pd} window.af=class extends self.zb{constructor(b,a){super(b,a);this.Lb=new Map;this.zc=!0;aa(this,[["create",()=>{throw Error("required override");}],["destroy",c=>{c=c.elementId;const d=u(this,c);this.zc&&d.parentElement.removeChild(d);this.Lb.delete(c)}],["set-visible",c=>{if(this.zc){var d=this.Lb.get(c.elementId),e=d.pd;d.vd?e.style.display=c.isVisible?"":"none":d.Ie=!!c.isVisible}}],["update-position",c=>{if(this.zc){var d=this.Lb.get(c.elementId),e=d.pd;e.style.left=c.left+"px";e.style.top=c.top+ "px";e.style.width=c.width+"px";e.style.height=c.height+"px";c=c.fontSize;null!==c&&(e.style.fontSize=c+"em");d.vd||(d.vd=!0,d.Ie&&(e.style.display=""))}}],["update-state",c=>{u(this,c.elementId);throw Error("required override");}],["focus",c=>{const d=u(this,c.elementId);c.focus?d.focus():d.blur()}],["set-css-style",c=>{const d=u(this,c.elementId),e=c.prop;c=c.val;e.startsWith("--")?d.style.setProperty(e,c):d.style[e]=c}],["set-attribute",c=>{u(this,c.elementId).setAttribute(c.name,c.val)}],["remove-attribute", c=>{u(this,c.elementId).removeAttribute(c.name)}]]);ba(this,c=>c)}};"use strict";const ca=/(iphone|ipod|ipad|macos|macintosh|mac os x)/i.test(navigator.userAgent),v=/android/i.test(navigator.userAgent),da=/safari/i.test(navigator.userAgent)&&!/(chrome|chromium|edg\/|OPR\/|nwjs)/i.test(navigator.userAgent);let ea=0; function w(b){const a=document.createElement("script");a.async=!1;a.type="module";return b.Re?new Promise(c=>{const d="c3_resolve_"+ea;++ea;self[d]=c;a.textContent=b.Ve+`\n\nself["${d}"]();`;document.head.appendChild(a)}):new Promise((c,d)=>{a.onload=c;a.onerror=d;a.src=b;document.head.appendChild(a)})}let fa=!1,ha=!1;function ia(){if(!fa){try{new Worker("blob://",{get type(){ha=!0}})}catch(b){}fa=!0}return ha}let y=new Audio; const ja={"audio/webm; codecs=opus":!!y.canPlayType("audio/webm; codecs=opus"),"audio/ogg; codecs=opus":!!y.canPlayType("audio/ogg; codecs=opus"),"audio/webm; codecs=vorbis":!!y.canPlayType("audio/webm; codecs=vorbis"),"audio/ogg; codecs=vorbis":!!y.canPlayType("audio/ogg; codecs=vorbis"),"audio/mp4":!!y.canPlayType("audio/mp4"),"audio/mpeg":!!y.canPlayType("audio/mpeg")};y=null;async function ma(b){b=await na(b);return(new TextDecoder("utf-8")).decode(b)} function na(b){return new Promise((a,c)=>{const d=new FileReader;d.onload=e=>a(e.target.result);d.onerror=e=>c(e);d.readAsArrayBuffer(b)})}const z=[];let C=0;window.RealFile=window.File;const E=[],F=new Map,G=new Map;let oa=0;const pa=[];self.runOnStartup=function(b){if("function"!==typeof b)throw Error("runOnStartup called without a function");pa.push(b)};const qa=new Set(["cordova","playable-ad","instant-games"]);let ra=!1; window.Db=class b{constructor(a){this.ca=a.Xe;this.va=null;this.ba="";this.Xa=a.Ue;this.xb={};this.Qa=this.ta=null;this.Kb=[];this.J=this.wa=null;this.Hc=!1;this.sd=0;this.mb=null;this.Wa=-1;this.Me=()=>this.ze();this.Va=[];this.B=a.Nd;this.Ob="file"===location.protocol.substr(0,4);!this.ca||"undefined"!==typeof OffscreenCanvas&&navigator.userActivation&&ia()||(this.ca=!1);this.ca&&da&&(this.ca=!1);if("playable-ad"===this.B||"instant-games"===this.B)this.ca=!1;if("cordova"===this.B&&this.ca)if(v){const c= /Chrome\/(\d+)/i.exec(navigator.userAgent);c&&90<=parseInt(c[1],10)||(this.ca=!1)}else this.ca=!1;this.Rb=this.qa=null;"html5"!==this.B||window.isSecureContext||console.warn("[Construct] Warning: the browser indicates this is not a secure context. Some features may be unavailable. Use secure (HTTPS) hosting to ensure all features are available.");this.C("runtime","cordova-fetch-local-file",c=>this.ve(c));this.C("runtime","create-job-worker",()=>this.we());"cordova"===this.B?document.addEventListener("deviceready", ()=>this.fd(a)):this.fd(a)}j(){this.qc();this.va&&(this.va=this.va.onmessage=null);this.ta&&(this.ta.terminate(),this.ta=null);this.Qa&&(this.Qa.j(),this.Qa=null);this.J&&(this.J.parentElement.removeChild(this.J),this.J=null)}he(){return ca&&"cordova"===this.B}mc(){const a=navigator.userAgent;return ca&&qa.has(this.B)||navigator.standalone||/crios\/|fxios\/|edgios\//i.test(a)}fe(){return v}$c(){return v&&qa.has(this.B)}async fd(a){"macos-wkwebview"===this.B&&this.Ee();if("playable-ad"===this.B){this.qa= self.c3_base64files;this.Rb={};await this.oe();for(let d=0,e=a.Za.length;d<e;++d){var c=a.Za[d];this.Rb.hasOwnProperty(c)?a.Za[d]={Re:!0,Ve:this.Rb[c]}:this.qa.hasOwnProperty(c)&&(a.Za[d]=URL.createObjectURL(this.qa[c]))}a.dc=[]}if("nwjs"===this.B&&self.nw&&self.nw.App.manifest["c3-steam-mode"]){let d=0;this.cd(()=>{d++;document.body.style.opacity=0===d%2?"1":"0.999"})}a.Te?this.ba=a.Te:(c=location.origin,this.ba=("null"===c?"file:///":c)+location.pathname,c=this.ba.lastIndexOf("/"),-1!==c&&(this.ba= this.ba.substr(0,c+1)));a.Ze&&(this.xb=a.Ze);c=new MessageChannel;this.va=c.port1;this.va.onmessage=d=>this._OnMessageFromRuntime(d.data);window.c3_addPortMessageHandler&&window.c3_addPortMessageHandler(d=>this.ye(d));this.mb=new self.ie(this);await sa(this.mb);"object"===typeof window.StatusBar&&window.StatusBar.hide();if("object"===typeof window.AndroidFullScreen)try{await new Promise((d,e)=>{window.AndroidFullScreen.immersiveMode(d,e)})}catch(d){console.error("Failed to enter Android immersive mode: ", d)}this.ca?await this.ue(a,c.port2):await this.te(a,c.port2)}sc(a){a=this.xb.hasOwnProperty(a)?this.xb[a]:a.endsWith("/workermain.js")&&this.xb.hasOwnProperty("workermain.js")?this.xb["workermain.js"]:"playable-ad"===this.B&&this.qa.hasOwnProperty(a)?this.qa[a]:a;a instanceof Blob&&(a=URL.createObjectURL(a));return a}async hc(a,c,d){if(a.startsWith("blob:"))return new Worker(a,d);if("cordova"===this.B&&this.Ob)return a=await this.yb(d.Qe?a:this.Xa+a),new Worker(URL.createObjectURL(new Blob([a],{type:"application/javascript"})), d);a=new URL(a,c);if(location.origin!==a.origin){a=await fetch(a);if(!a.ok)throw Error("failed to fetch worker script");a=await a.blob();return new Worker(URL.createObjectURL(a),d)}return new Worker(a,d)}oa(){return Math.max(window.innerWidth,1)}ha(){return Math.max(window.innerHeight,1)}ed(a){var c=this.ba,d=location.href,e=this.oa(),f=this.ha(),g=window.devicePixelRatio,h=b.cb(),k=a.ff,n=window.cr_previewImageBlobs||this.qa,p=window.cr_previewProjectFileBlobs,A=window.cr_previewProjectFiles,x=window.df|| "";a=a.Nd;var r=(new URLSearchParams(self.location.search)).has("debug"),B=this.mb;return{runtimeBaseUrl:c,previewUrl:d,windowInnerWidth:e,windowInnerHeight:f,devicePixelRatio:g,isFullscreen:h,projectData:k,previewImageBlobs:n,previewProjectFileBlobs:p,previewProjectFileSWUrls:A,swClientId:x,exportType:a,isDebug:r,ife:!!self.ef,jobScheduler:{inputPort:B.Gc,outputPort:B.Nc,maxNumWorkers:B.Je},supportedAudioFormats:ja,opusWasmScriptUrl:window.cr_opusWasmScriptUrl||this.Xa+"opus.wasm.js",opusWasmBinaryUrl:window.cr_opusWasmBinaryUrl|| this.Xa+"opus.wasm.wasm",isFileProtocol:this.Ob,isiOSCordova:this.he(),isiOSWebView:this.mc(),isFBInstantAvailable:"undefined"!==typeof self.FBInstant}}async ue(a,c){const d=this.sc(a.Ye);"preview"===this.B?(this.ta=new Worker("previewworker.js",{type:"module",name:"Runtime"}),await new Promise((h,k)=>{const n=p=>{this.ta.removeEventListener("message",n);p.data&&"ok"===p.data.type?h():k()};this.ta.addEventListener("message",n);this.ta.postMessage({type:"construct-worker-init","import":(new URL(d, this.ba)).toString()})})):this.ta=await this.hc(d,this.ba,{type:"module",name:"Runtime",Qe:!0});this.J=document.createElement("canvas");this.J.style.display="none";const e=this.J.transferControlToOffscreen();document.body.appendChild(this.J);window.c3canvas=this.J;self.C3_InsertHTMLPlaceholders&&self.C3_InsertHTMLPlaceholders();let f=a.dc||[],g=a.Za;f=await Promise.all(f.map(h=>this.La(h)));g=await Promise.all(g.map(h=>this.La(h)));if("cordova"===this.B)for(let h=0,k=a.cc.length;h<k;++h){const n= a.cc[h],p=n[0];if(p===a.Tc||"scriptsInEvents.js"===p||p.endsWith("/scriptsInEvents.js"))n[1]=await this.La(p)}this.ta.postMessage(Object.assign(this.ed(a),{type:"init-runtime",isInWorker:!0,messagePort:c,canvas:e,workerDependencyScripts:f,engineScripts:g,projectScripts:a.cc,mainProjectScript:a.Tc,projectScriptsStatus:self.C3_ProjectScriptsStatus}),[c,e,...ta(this.mb)]);this.Kb=E.map(h=>new h(this));this.dd();ua(this.wa);self.c3_callFunction=(h,k)=>{var n=this.wa;return n.v.bd(n.hb,"js-invoke-function", {name:h,params:k},void 0,void 0)};"preview"===this.B&&(self.goToLastErrorScript=()=>this.Bb("runtime","go-to-last-error-script"))}async te(a,c){this.J=document.createElement("canvas");this.J.style.display="none";document.body.appendChild(this.J);window.c3canvas=this.J;self.C3_InsertHTMLPlaceholders&&self.C3_InsertHTMLPlaceholders();this.Kb=E.map(g=>new g(this));this.dd();var d=a.Za.map(g=>"string"===typeof g?(new URL(g,this.ba)).toString():g);if(Array.isArray(a.dc)){var e=[...a.dc].map(g=>g instanceof Blob?URL.createObjectURL(g):g);d.unshift(...e)}d=await Promise.all(d.map(g=>this.La(g)));await Promise.all(d.map(g=>w(g)));d=self.C3_ProjectScriptsStatus;e=a.Tc;const f=a.cc;for(let [g,h]of f)if(h||(h=g),g===e)try{h=await this.La(h),await w(h),"preview"!==this.B||d[g]||this.hd(g,"main script did not run to completion")}catch(k){this.hd(g,k)}else if("scriptsInEvents.js"===g||g.endsWith("/scriptsInEvents.js"))h=await this.La(h),await w(h);"preview"===this.B&&"object"!==typeof self.$e.cf?(this.Gb(), console.error("[C3 runtime] Failed to load JavaScript code used in events. Check all your JavaScript code has valid syntax."),alert("Failed to load JavaScript code used in events. Check all your JavaScript code has valid syntax.")):(a=Object.assign(this.ed(a),{isInWorker:!1,messagePort:c,canvas:this.J,runOnStartupFunctions:pa}),ua(this.wa),this.gd(),this.Qa=self.C3_CreateRuntime(a),await self.C3_InitRuntime(this.Qa,a))}hd(a,c){this.Gb();console.error(`[Preview] Failed to load project main script (${a}): `, c);alert(`Failed to load project main script (${a}). Check all your JavaScript code has valid syntax. Press F12 and check the console for error details.`)}gd(){this.Gb()}Gb(){const a=window.Oe;a&&(a.parentElement.removeChild(a),window.Oe=null)}async we(){const a=await va(this.mb);return{outputPort:a,transferables:[a]}}se(){if(this.ca)throw Error("not available in worker mode");return this.Qa}Bb(a,c,d,e,f){this.va.postMessage({type:"event",component:a,handler:c,dispatchOpts:e||null,data:d,responseId:null}, f)}bd(a,c,d,e,f){const g=oa++,h=new Promise((k,n)=>{G.set(g,{resolve:k,reject:n})});this.va.postMessage({type:"event",component:a,handler:c,dispatchOpts:e||null,data:d,responseId:g},f);return h}_OnMessageFromRuntime(a){const c=a.type;if("event"===c)return this.xe(a);if("result"===c)this.Ae(a);else if("runtime-ready"===c)this.Be();else if("alert-error"===c)this.Gb(),alert(a.message);else if("creating-runtime"===c)this.gd();else throw Error(`unknown message '${c}'`);}xe(a){const c=a.component,d=a.handler, e=a.data,f=a.responseId;if(a=F.get(c))if(a=a.get(d)){var g=null;try{g=a(e)}catch(h){console.error(`Exception in '${c}' handler '${d}':`,h);null!==f&&this.Fb(f,!1,""+h);return}if(null===f)return g;g&&g.then?g.then(h=>this.Fb(f,!0,h)).catch(h=>{console.error(`Rejection from '${c}' handler '${d}':`,h);this.Fb(f,!1,""+h)}):this.Fb(f,!0,g)}else console.warn(`[DOM] No handler '${d}' for component '${c}'`);else console.warn(`[DOM] No event handlers for component '${c}'`)}Fb(a,c,d){let e;d&&d.transferables&& (e=d.transferables);this.va.postMessage({type:"result",responseId:a,isOk:c,result:d},e)}Ae(a){const c=a.responseId,d=a.isOk;a=a.result;const e=G.get(c);d?e.resolve(a):e.reject(a);G.delete(c)}C(a,c,d){let e=F.get(a);e||(e=new Map,F.set(a,e));if(e.has(c))throw Error(`[DOM] Component '${a}' already has handler '${c}'`);e.set(c,d)}static ec(a){if(E.includes(a))throw Error("DOM handler already added");E.push(a)}dd(){for(const a of this.Kb)if("runtime"===a.hb){this.wa=a;return}throw Error("cannot find runtime DOM handler"); }ye(a){this.Bb("debugger","message",a)}Be(){for(const a of this.Kb)a.Vc()}static cb(){return!!(document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||ra)}static jd(a){ra=!!a}cd(a){this.Va.push(a);this.xc()}De(a){a=this.Va.indexOf(a);if(-1===a)throw Error("invalid callback");this.Va.splice(a,1);this.Va.length||this.qc()}xc(){-1===this.Wa&&this.Va.length&&(this.Wa=requestAnimationFrame(this.Me))}qc(){-1!==this.Wa&&(cancelAnimationFrame(this.Wa),this.Wa=-1)}ze(){this.Wa= -1;for(const a of this.Va)a();this.xc()}Ba(a){this.wa.Ba(a)}Ja(a){this.wa.Ja(a)}wc(){this.wa.wc()}Eb(a){this.wa.Eb(a)}ge(){return!!ja["audio/webm; codecs=opus"]}async Fe(a){a=await this.bd("runtime","opus-decode",{arrayBuffer:a},null,[a]);return new Float32Array(a)}ke(a){this.Hc=!0;this.sd=a}ee(a){return/^(?:[a-z\-]+:)?\/\//.test(a)||"data:"===a.substr(0,5)||"blob:"===a.substr(0,5)}ad(a){return!this.ee(a)}async La(a){return"cordova"===this.B&&(a.startsWith("file:")||this.Ob&&this.ad(a))?(a.startsWith(this.ba)&& (a=a.substr(this.ba.length)),a=await this.yb(a),URL.createObjectURL(new Blob([a],{type:"application/javascript"}))):a}async ve(a){const c=a.filename;switch(a.as){case "text":return await this.de(c);case "buffer":return await this.yb(c);default:throw Error("unsupported type");}}Yc(a){const c=window.cordova.file.applicationDirectory+"www/"+a;return new Promise((d,e)=>{window.resolveLocalFileSystemURL(c,f=>{f.file(d,e)},e)})}async de(a){a=await this.Yc(a);return await ma(a)}rc(){if(z.length&&!(8<=C)){C++; var a=z.shift();this.pe(a.filename,a.We,a.Pe)}}yb(a){return new Promise((c,d)=>{z.push({filename:a,We:e=>{C--;this.rc();c(e)},Pe:e=>{C--;this.rc();d(e)}});this.rc()})}async pe(a,c,d){try{const e=await this.Yc(a),f=await na(e);c(f)}catch(e){d(e)}}Ee(){var a={type:"ready"};if("windows-webview2"===this.B)window.chrome.webview.postMessage(JSON.stringify(a));else if("macos-wkwebview"===this.B)window.webkit.messageHandlers.C3Wrapper.postMessage(JSON.stringify(a));else throw Error("cannot send wrapper message"); }async oe(){const a=[];for(const [c,d]of Object.entries(this.qa))a.push(this.ne(c,d));await Promise.all(a)}async ne(a,c){if("object"===typeof c)this.qa[a]=new Blob([c.str],{type:c.type}),this.Rb[a]=c.str;else{let d=await this.re(c);d||(d=this.qe(c));this.qa[a]=d}}async re(a){try{return await (await fetch(a)).blob()}catch(c){return console.warn("Failed to fetch a data: URI. Falling back to a slower workaround. This is probably because the Content Security Policy unnecessarily blocked it. Allow data: URIs in your CSP to avoid this.", c),null}}qe(a){a=this.Ce(a);return this.me(a.data,a.Se)}Ce(a){var c=a.indexOf(",");if(0>c)throw new URIError("expected comma in data: uri");var d=a.substring(c+1);c=a.substring(5,c).split(";");a=c[0]||"";const e=c[2];d="base64"===c[1]||"base64"===e?atob(d):decodeURIComponent(d);return{Se:a,data:d}}me(a,c){var d=a.length;let e=d>>2,f=new Uint8Array(d),g=new Uint32Array(f.buffer,0,e),h,k;for(k=h=0;h<e;++h)g[h]=a.charCodeAt(k++)|a.charCodeAt(k++)<<8|a.charCodeAt(k++)<<16|a.charCodeAt(k++)<<24;for(d&= 3;d--;)f[k]=a.charCodeAt(k),++k;return new Blob([f],{type:c})}};"use strict";const H=self.Db;function wa(b){return b.sourceCapabilities&&b.sourceCapabilities.firesTouchEvents||b.originalEvent&&b.originalEvent.sourceCapabilities&&b.originalEvent.sourceCapabilities.firesTouchEvents}const xa=new Map([["OSLeft","MetaLeft"],["OSRight","MetaRight"]]),I={dispatchRuntimeEvent:!0,dispatchUserScriptEvent:!0},ya={dispatchUserScriptEvent:!0},J={dispatchRuntimeEvent:!0}; function za(b){return new Promise((a,c)=>{const d=document.createElement("link");d.onload=()=>a(d);d.onerror=e=>c(e);d.rel="stylesheet";d.href=b;document.head.appendChild(d)})}function Aa(b){return new Promise((a,c)=>{const d=new Image;d.onload=()=>a(d);d.onerror=e=>c(e);d.src=b})}async function K(b){b=URL.createObjectURL(b);try{return await Aa(b)}finally{URL.revokeObjectURL(b)}} function Ba(b){return new Promise((a,c)=>{let d=new FileReader;d.onload=e=>a(e.target.result);d.onerror=e=>c(e);d.readAsText(b)})} async function Ca(b,a,c){if(!/firefox/i.test(navigator.userAgent))return await K(b);var d=await Ba(b);d=(new DOMParser).parseFromString(d,"image/svg+xml");const e=d.documentElement;if(e.hasAttribute("width")&&e.hasAttribute("height")){const f=e.getAttribute("width"),g=e.getAttribute("height");if(!f.includes("%")&&!g.includes("%"))return await K(b)}e.setAttribute("width",a+"px");e.setAttribute("height",c+"px");d=(new XMLSerializer).serializeToString(d);b=new Blob([d],{type:"image/svg+xml"});return await K(b)} function Da(b){do{if(b.parentNode&&b.hasAttribute("contenteditable"))return!0;b=b.parentNode}while(b);return!1}const Ea=new Set(["input","textarea","datalist","select"]),Fa=new Set(["canvas","body","html"]);function L(b){b.target.tagName&&Fa.has(b.target.tagName.toLowerCase())&&b.preventDefault()}function Ga(b){(b.metaKey||b.ctrlKey)&&b.preventDefault()} self.C3_GetSvgImageSize=async function(b){b=await K(b);if(0<b.width&&0<b.height)return[b.width,b.height];b.style.position="absolute";b.style.left="0px";b.style.top="0px";b.style.visibility="hidden";document.body.appendChild(b);const a=b.getBoundingClientRect();document.body.removeChild(b);return[a.width,a.height]};self.C3_RasterSvgImageBlob=async function(b,a,c,d,e){b=await Ca(b,a,c);const f=document.createElement("canvas");f.width=d;f.height=e;f.getContext("2d").drawImage(b,0,0,a,c);return f}; let Ha=!1;document.addEventListener("pause",()=>Ha=!0);document.addEventListener("resume",()=>Ha=!1);function ua(b){b.rd=!0;b.Kc=b.v.oa();b.nb=b.v.ha()}async function Ia(b){await Promise.all(b.webfonts.map(async a=>{a=new FontFace(a.name,`url('${a.url}')`);document.fonts.add(a);await a.load()}))} async function Ja(b){var a=b.imageBitmapOpts;b=await self.C3_RasterSvgImageBlob(b.blob,b.imageWidth,b.imageHeight,b.surfaceWidth,b.surfaceHeight);a=a?await createImageBitmap(b,a):await createImageBitmap(b);return{imageBitmap:a,transferables:[a]}}async function Ka(b){return await self.C3_GetSvgImageSize(b.blob)}function La(b){window.c3_postToMessagePort&&(b.from="runtime",window.c3_postToMessagePort(b))} function Ma(b){self.setTimeout(()=>{b.qd=!0},1E3);"cordova"===b.v.B?(document.addEventListener("pause",()=>Na(b,!0)),document.addEventListener("resume",()=>Na(b,!1))):document.addEventListener("visibilitychange",()=>Na(b,document.hidden));return{isSuspended:!(!document.hidden&&!Ha)}} function Oa(b){b.ld||(b.ld=!0,window.addEventListener("deviceorientation",a=>{b.$||l(b,"deviceorientation",{absolute:!!a.absolute,alpha:a.alpha||0,beta:a.beta||0,gamma:a.gamma||0,timeStamp:a.timeStamp,webkitCompassHeading:a.webkitCompassHeading,webkitCompassAccuracy:a.webkitCompassAccuracy},I)}),window.addEventListener("deviceorientationabsolute",a=>{b.$||l(b,"deviceorientationabsolute",{absolute:!!a.absolute,alpha:a.alpha||0,beta:a.beta||0,gamma:a.gamma||0,timeStamp:a.timeStamp},I)}))} function Pa(b){b.kd||(b.kd=!0,window.addEventListener("devicemotion",a=>{if(!b.$){var c=null,d=a.acceleration;d&&(c={x:d.x||0,y:d.y||0,z:d.z||0});d=null;var e=a.accelerationIncludingGravity;e&&(d={x:e.x||0,y:e.y||0,z:e.z||0});e=null;var f=a.rotationRate;f&&(e={alpha:f.alpha||0,beta:f.beta||0,gamma:f.gamma||0});l(b,"devicemotion",{acceleration:c,accelerationIncludingGravity:d,rotationRate:e,interval:a.interval,timeStamp:a.timeStamp},I)}}))}async function Qa(b){await za(b.url)} function Ra(b,a){b.td=a.message;-1===b.Cc&&(b.Cc=setTimeout(()=>{b.Cc=-1;const c=document.getElementById("exportToVideoMessage");c&&(c.textContent=b.td)},250))}function M(b){if(!b.$){var a=H.cb();a&&"any"!==b.Qc&&Sa(b);l(b,"fullscreenchange",{isFullscreen:a,innerWidth:b.oa(),innerHeight:b.ha()})}}function Ta(b,a){console.warn("[Construct] Fullscreen request failed: ",a);l(b,"fullscreenerror",{isFullscreen:H.cb(),innerWidth:b.oa(),innerHeight:b.ha()})} function Na(b,a){a?b.v.qc():b.v.xc();l(b,"visibilitychange",{hidden:a})}function Ua(b,a,c){"Backspace"===c.key&&L(c);if(!b.$){var d=xa.get(c.code)||c.code;m(b,a,{code:d,key:c.key,which:c.which,repeat:c.repeat,altKey:c.altKey,ctrlKey:c.ctrlKey,metaKey:c.metaKey,shiftKey:c.shiftKey,timeStamp:c.timeStamp},I)}} function Va(b,a,c,d){b.$||wa(c)||m(b,a,{button:c.button,buttons:c.buttons,clientX:c.clientX,clientY:c.clientY+b.da,pageX:c.pageX,pageY:c.pageY+b.da,movementX:c.movementX||0,movementY:c.movementY||0,timeStamp:c.timeStamp},d)}function Wa(b){window!==window.top&&window.focus();Xa(b.target)&&document.activeElement&&!Xa(document.activeElement)&&document.activeElement.blur()} function N(b,a,c){if(!b.$){var d=0;"mouse"===c.pointerType&&(d=b.sb);m(b,a,{pointerId:c.pointerId,pointerType:c.pointerType,button:c.button,buttons:c.buttons,lastButtons:d,clientX:c.clientX,clientY:c.clientY+b.da,pageX:c.pageX,pageY:c.pageY+b.da,movementX:c.movementX||0,movementY:c.movementY||0,width:c.width||0,height:c.height||0,pressure:c.pressure||0,tangentialPressure:c.tangentialPressure||0,tiltX:c.tiltX||0,tiltY:c.tiltY||0,twist:c.twist||0,timeStamp:c.timeStamp},I);"mouse"===c.pointerType&&(d= "mousemove","pointerdown"===a?d="mousedown":"pointerup"===a&&(d="mouseup"),Va(b,d,c,ya),b.sb=c.buttons)}} function Ya(b,a,c){if(!b.$&&!wa(c)){var d=b.sb;"pointerdown"===a&&0!==d?a="pointermove":"pointerup"===a&&0!==c.buttons&&(a="pointermove");m(b,a,{pointerId:1,pointerType:"mouse",button:c.button,buttons:c.buttons,lastButtons:d,clientX:c.clientX,clientY:c.clientY+b.da,pageX:c.pageX,pageY:c.pageY+b.da,movementX:c.movementX||0,movementY:c.movementY||0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,timeStamp:c.timeStamp},I);b.sb=c.buttons;Va(b,c.type,c,ya)}} function O(b,a,c){if(!b.$)for(let d=0,e=c.changedTouches.length;d<e;++d){const f=c.changedTouches[d];m(b,a,{pointerId:f.identifier,pointerType:"touch",button:0,buttons:0,lastButtons:0,clientX:f.clientX,clientY:f.clientY+b.da,pageX:f.pageX,pageY:f.pageY+b.da,movementX:c.movementX||0,movementY:c.movementY||0,width:2*(f.radiusX||f.webkitRadiusX||0),height:2*(f.radiusY||f.webkitRadiusY||0),pressure:f.force||f.webkitForce||0,tangentialPressure:0,tiltX:0,tiltY:0,twist:f.rotationAngle||0,timeStamp:c.timeStamp}, I)}}function Za(b,a,c){document.body.style.transform="";b.da=0;if(0<c){var d=document.activeElement;d&&(d=d.getBoundingClientRect(),a=(d.top+d.bottom)/2-(a-c)/2,a>c&&(a=c),0>a&&(a=0),0<a&&(document.body.style.transform=`translateY(${-a}px)`,b.da=a))}}function ab(b,a,c,d){const e=b.oa(),f=b.ha();b.Ya=-1;e!=a||f!=c?l(b,"window-resize",{innerWidth:e,innerHeight:f,devicePixelRatio:window.devicePixelRatio,isFullscreen:H.cb()}):10>d&&bb(b,e,f,d+1)} function bb(b,a,c,d){-1!==b.Ya&&clearTimeout(b.Ya);b.Ya=setTimeout(()=>ab(b,a,c,d),48)} function Sa(b){b=b.Qc;if(screen.orientation&&screen.orientation.lock)screen.orientation.lock(b).catch(a=>console.warn("[Construct] Failed to lock orientation: ",a));else try{let a=!1;screen.lockOrientation?a=screen.lockOrientation(b):screen.webkitLockOrientation?a=screen.webkitLockOrientation(b):screen.mozLockOrientation?a=screen.mozLockOrientation(b):screen.msLockOrientation&&(a=screen.msLockOrientation(b));a||console.warn("[Construct] Failed to lock orientation")}catch(a){console.warn("[Construct] Failed to lock orientation: ", a)}}function Xa(b){return!b||b===document||b===window||b===document.body||"canvas"===b.tagName.toLowerCase()} H.ec(class extends self.zb{constructor(b){super(b,"runtime");this.zd=!0;this.rd=!1;this.Ya=-1;this.Qc="any";this.kd=this.ld=!1;this.$b=document.createElement("div");this.$b.className="c3-screen-reader-text";this.$b.setAttribute("aria-live","polite");document.body.appendChild(this.$b);this.Ea=null;this.$=!1;this.td="";this.Cc=-1;this.qd=!1;this.Kc=b.oa();this.nb=b.ha();this.da=this.wb=0;b.C("canvas","update-size",d=>{var e=this.v;e.Hc||(e=e.J,e.style.width=d.styleWidth+"px",e.style.height=d.styleHeight+ "px",e.style.marginLeft=d.marginLeft+"px",e.style.marginTop=d.marginTop+"px",document.documentElement.style.setProperty("--construct-scale",d.displayScale),this.zd&&(e.style.display="",this.zd=!1))});b.C("runtime","invoke-download",d=>{const e=d.url;d=d.filename;const f=document.createElement("a"),g=document.body;f.textContent=d;f.href=e;f.download=d;g.appendChild(f);f.click();g.removeChild(f)});b.C("runtime","load-webfonts",d=>Ia(d));b.C("runtime","raster-svg-image",d=>Ja(d));b.C("runtime","get-svg-image-size", d=>Ka(d));b.C("runtime","set-target-orientation",d=>{this.Qc=d.targetOrientation});b.C("runtime","register-sw",()=>{window.C3_RegisterSW&&window.C3_RegisterSW()});b.C("runtime","post-to-debugger",d=>La(d));b.C("runtime","go-to-script",d=>La(d));b.C("runtime","before-start-ticking",()=>Ma(this));b.C("runtime","debug-highlight",d=>{if(d.show){this.Ea||(this.Ea=document.createElement("div"),this.Ea.id="inspectOutline",document.body.appendChild(this.Ea));var e=this.Ea;e.style.display="";e.style.left= d.left-1+"px";e.style.top=d.top-1+"px";e.style.width=d.width+2+"px";e.style.height=d.height+2+"px";e.textContent=d.name}else this.Ea&&(this.Ea.style.display="none")});b.C("runtime","enable-device-orientation",()=>Oa(this));b.C("runtime","enable-device-motion",()=>Pa(this));b.C("runtime","add-stylesheet",d=>Qa(d));b.C("runtime","script-create-worker",d=>{const e=d.port2;(new Worker(d.url,d.opts)).postMessage({type:"construct-worker-init",port2:e},[e])});b.C("runtime","alert",d=>{alert(d.message)}); b.C("runtime","screen-reader-text",d=>{var e=d.type;"create"===e?(e=document.createElement("p"),e.id="c3-sr-"+d.id,e.textContent=d.text,this.$b.appendChild(e)):"update"===e?(e=document.getElementById("c3-sr-"+d.id))?e.textContent=d.text:console.warn(`[Construct] Missing screen reader text with id ${d.id}`):"release"===e?(e=document.getElementById("c3-sr-"+d.id))?e.remove():console.warn(`[Construct] Missing screen reader text with id ${d.id}`):console.warn(`[Construct] Unknown screen reader text update '${e}'`)}); b.C("runtime","hide-cordova-splash",()=>{navigator.splashscreen&&navigator.splashscreen.hide&&navigator.splashscreen.hide()});b.C("runtime","set-exporting-to-video",d=>{this.$=!0;const e=document.createElement("h1");e.id="exportToVideoMessage";e.textContent=d.message;document.body.prepend(e);document.body.classList.add("exportingToVideo");this.v.J.style.display="";this.v.ke(d.duration)});b.C("runtime","export-to-video-progress",d=>Ra(this,d));b.C("runtime","exported-to-video",d=>{window.Ne({type:"exported-video", arrayBuffer:d.arrayBuffer,contentType:d.contentType,time:d.time})});b.C("runtime","exported-to-image-sequence",d=>{window.Ne({type:"exported-image-sequence",blobArr:d.blobArr,time:d.time,gif:d.gif})});const a=new Set(["input","textarea","datalist"]);window.addEventListener("contextmenu",d=>{const e=d.target;a.has(e.tagName.toLowerCase())||Da(e)||d.preventDefault()});const c=b.J;window.addEventListener("selectstart",L);window.addEventListener("gesturehold",L);c.addEventListener("selectstart",L);c.addEventListener("gesturehold", L);window.addEventListener("touchstart",L,{passive:!1});"undefined"!==typeof PointerEvent?(window.addEventListener("pointerdown",L,{passive:!1}),c.addEventListener("pointerdown",L)):c.addEventListener("touchstart",L);this.sb=0;window.addEventListener("mousedown",d=>{1===d.button&&d.preventDefault()});window.addEventListener("mousewheel",Ga,{passive:!1});window.addEventListener("wheel",Ga,{passive:!1});window.addEventListener("resize",()=>{a:{if(!this.$&&this.rd){var d=this.oa();var e=this.ha();if(this.v.$c()){if(this.qd){if(this.Kc=== d&&e<this.nb){this.wb=this.nb-e;Za(this,this.nb,this.wb);d=void 0;break a}0<this.wb&&(this.wb=0,Za(this,e,this.wb))}this.Kc=d;this.nb=e}l(this,"window-resize",{innerWidth:d,innerHeight:e,devicePixelRatio:window.devicePixelRatio,isFullscreen:H.cb()});this.v.mc()&&(-1!==this.Ya&&clearTimeout(this.Ya),ab(this,d,e,0))}d=void 0}return d});window.addEventListener("fullscreenchange",()=>M(this));window.addEventListener("webkitfullscreenchange",()=>M(this));window.addEventListener("mozfullscreenchange",()=> M(this));window.addEventListener("fullscreenerror",d=>Ta(this,d));window.addEventListener("webkitfullscreenerror",d=>Ta(this,d));window.addEventListener("mozfullscreenerror",d=>Ta(this,d));if(b.mc())if(window.visualViewport){let d=Infinity;window.visualViewport.addEventListener("resize",()=>{const e=window.visualViewport.height;e>d&&(document.scrollingElement.scrollTop=0);d=e})}else window.addEventListener("focusout",()=>{{const f=document.activeElement;if(f){var d=f.tagName.toLowerCase();var e=new Set("email number password search tel text url".split(" ")); d="textarea"===d?!0:"input"===d?e.has(f.type.toLowerCase()||"text"):Da(f)}else d=!1}d||(document.scrollingElement.scrollTop=0)});self.C3WrapperOnMessage=d=>{"entered-fullscreen"===d?(H.jd(!0),M(this)):"exited-fullscreen"===d?(H.jd(!1),M(this)):console.warn("Unknown wrapper message: ",d)};this.Ra=new Set;this.Tb=new WeakSet;this.ua=!1}Vc(){window.addEventListener("focus",()=>{l(this,"window-focus",null,J)});window.addEventListener("blur",()=>{try{var a=window.parent&&window.parent.document.hasFocus()}catch(c){a= !1}l(this,"window-blur",{parentHasFocus:a},J);this.sb=0});window.addEventListener("focusin",a=>{a=a.target;(Ea.has(a.tagName.toLowerCase())||Da(a))&&l(this,"keyboard-blur",null,J)});window.addEventListener("keydown",a=>Ua(this,"keydown",a));window.addEventListener("keyup",a=>Ua(this,"keyup",a));window.addEventListener("dblclick",a=>Va(this,"dblclick",a,I));window.addEventListener("wheel",a=>{this.$||l(this,"wheel",{clientX:a.clientX,clientY:a.clientY+this.da,pageX:a.pageX,pageY:a.pageY+this.da,deltaX:a.deltaX, deltaY:a.deltaY,deltaZ:a.deltaZ,deltaMode:a.deltaMode,timeStamp:a.timeStamp},I)});"undefined"!==typeof PointerEvent?(window.addEventListener("pointerdown",a=>{Wa(a);N(this,"pointerdown",a)}),this.v.ca&&"undefined"!==typeof window.onpointerrawupdate&&self===self.top?window.addEventListener("pointerrawupdate",a=>{N(this,"pointermove",a)}):window.addEventListener("pointermove",a=>N(this,"pointermove",a)),window.addEventListener("pointerup",a=>N(this,"pointerup",a)),window.addEventListener("pointercancel", a=>N(this,"pointercancel",a))):(window.addEventListener("mousedown",a=>{Wa(a);Ya(this,"pointerdown",a)}),window.addEventListener("mousemove",a=>Ya(this,"pointermove",a)),window.addEventListener("mouseup",a=>Ya(this,"pointerup",a)),window.addEventListener("touchstart",a=>{Wa(a);O(this,"pointerdown",a)}),window.addEventListener("touchmove",a=>O(this,"pointermove",a)),window.addEventListener("touchend",a=>O(this,"pointerup",a)),window.addEventListener("touchcancel",a=>O(this,"pointercancel",a)));const b= ()=>this.wc();window.addEventListener("pointerup",b,!0);window.addEventListener("touchend",b,!0);window.addEventListener("click",b,!0);window.addEventListener("keydown",b,!0);window.addEventListener("gamepadconnected",b,!0);this.v.fe()&&!this.v.$c()&&navigator.virtualKeyboard&&(navigator.virtualKeyboard.overlaysContent=!0,navigator.virtualKeyboard.addEventListener("geometrychange",()=>{Za(this,this.ha(),navigator.virtualKeyboard.boundingRect.height)}))}oa(){return this.v.oa()}ha(){return this.v.ha()}wc(){var b= [...this.Ra];this.Ra.clear();if(!this.ua)for(const a of b)(b=a.play())&&b.catch(()=>{this.Tb.has(a)||this.Ra.add(a)})}Ba(b){if("function"!==typeof b.play)throw Error("missing play function");this.Tb.delete(b);let a;try{a=b.play()}catch(c){this.Ra.add(b);return}a&&a.catch(()=>{this.Tb.has(b)||this.Ra.add(b)})}Ja(b){this.Ra.delete(b);this.Tb.add(b)}Eb(b){this.ua=!!b}});"use strict"; async function sa(b){if(b.Ge)throw Error("already initialised");b.Ge=!0;var a=b.xa.sc(("playable-ad"===b.xa.B?b.xa.Xa:"")+"dispatchworker.js");b.Bc=await b.xa.hc(a,b.gb,{name:"DispatchWorker"});a=new MessageChannel;b.Gc=a.port1;b.Bc.postMessage({type:"_init","in-port":a.port2},[a.port2]);b.Nc=await va(b)}function ta(b){return[b.Gc,b.Nc]} async function va(b){const a=b.Ad.length;var c=b.xa.sc(("playable-ad"===b.xa.B?b.xa.Xa:"")+"jobworker.js");c=await b.xa.hc(c,b.gb,{name:"JobWorker"+a});const d=new MessageChannel,e=new MessageChannel;b.Bc.postMessage({type:"_addJobWorker",port:d.port1},[d.port1]);c.postMessage({type:"init",number:a,"dispatch-port":d.port2,"output-port":e.port2},[d.port2,e.port2]);b.Ad.push(c);return e.port1} self.ie=class{constructor(b){this.xa=b;this.gb=b.ba;this.gb="preview"===b.B?this.gb+"workers/":this.gb+b.Xa;this.Je=Math.min(navigator.hardwareConcurrency||2,16);this.Bc=null;this.Ad=[];this.Nc=this.Gc=null}};"use strict";window.C3_IsSupported&&(window.c3_runtimeInterface=new self.Db({Xe:!0,Ye:"workermain.js",Za:["scripts/c3runtime.js"],cc:[],Tc:"",Ue:"scripts/",dc:["box2d.wasm.js"],Nd:"html5"}));"use strict"; async function cb(b,a){a=a.type;let c=!0;0===a?c=await db():1===a&&(c=await eb());l(b,"permission-result",{type:a,result:c})}async function db(){if(!self.DeviceOrientationEvent||!self.DeviceOrientationEvent.requestPermission)return!0;try{return"granted"===await self.DeviceOrientationEvent.requestPermission()}catch(b){return console.warn("[Touch] Failed to request orientation permission: ",b),!1}} async function eb(){if(!self.DeviceMotionEvent||!self.DeviceMotionEvent.requestPermission)return!0;try{return"granted"===await self.DeviceMotionEvent.requestPermission()}catch(b){return console.warn("[Touch] Failed to request motion permission: ",b),!1}}self.Db.ec(class extends self.zb{constructor(b){super(b,"touch");q(this,"request-permission",a=>cb(this,a))}});"use strict";const fb=180/Math.PI; async function gb(b,a){if(a.isiOSCordova||a.isSafari)b.Wb=!0;b.Rc=a.timeScaleMode;b.Fd=["equalpower","HRTF","soundfield"][a.panningModel];b.od=["linear","inverse","exponential"][a.distanceModel];b.Gd=a.refDistance;b.Ed=a.maxDistance;b.Id=a.rolloffFactor;if(b.v.Hc)b.Wb=!0,b.g=new OfflineAudioContext({numberOfChannels:2,sampleRate:48E3,length:Math.ceil(48E3*b.v.sd)});else{var c={latencyHint:a.latencyHint};b.Ld||(c.sampleRate=48E3);if("undefined"!==typeof AudioContext)b.g=new AudioContext(c);else if("undefined"!== typeof webkitAudioContext)b.g=new webkitAudioContext(c);else throw Error("Web Audio API not supported");hb(b);b.g.onstatechange=()=>{"running"!==b.g.state&&hb(b);l(b,"audiocontext-state",{audioContextState:b.g.state})}}b.Na=b.g.createGain();b.Na.connect(b.g.destination);c=a.listenerPos;b.aa[0]=c[0];b.aa[1]=c[1];b.aa[2]=c[2];b.g.listener.setPosition(c[0],c[1],c[2]);b.g.listener.setOrientation(...b.ea);self.C3_GetAudioContextCurrentTime=()=>b.g.currentTime;try{await Promise.all(a.preloadList.map(d=> P(b,d.originalUrl,d.url,d.type,!1)))}catch(d){console.error("[Construct] Preloading sounds failed: ",d)}return{sampleRate:b.g.sampleRate,audioContextState:b.g.state,outputLatency:b.g.outputLatency||0}} async function ib(b,a){var c=a.originalUrl,d=a.url;const e=a.type,f=a.isMusic,g=a.tags,h=a.isLooping,k=a.vol,n=a.pos,p=a.panning,A=a.stereoPan;let x=a.off;0<x&&!a.trueClock&&(b.g.getOutputTimestamp?(a=b.g.getOutputTimestamp(),x=x-a.performanceTime/1E3+a.contextTime):x=x-performance.now()/1E3+b.g.currentTime);b.Bd=g.slice(0);jb(b,g);try{b.R=await kb(b,c,d,e,g,f);if(p){Q(b.R,!0);var r=b.R,B=p.innerAngle,ka=p.outerAngle,la=p.outerGain;if(r.lb){lb(r,p.x,p.y,p.z,p.angle);var D=self.$a.le;r.ra[0]!==D(B)&& (r.ra[0]=D(B),r.F.coneInnerAngle=D(B));r.ra[1]!==D(ka)&&(r.ra[1]=D(ka),r.F.coneOuterAngle=D(ka));r.ra[2]!==la&&(r.ra[2]=la,r.F.coneOuterGain=la)}p.hasOwnProperty("uid")&&(b.R.pa=p.uid)}else"number"===typeof A&&0!==A?(R(b.R,!0),mb(b.R,A)):(Q(b.R,!1),R(b.R,!1));b.R.Play(h,k,n,x)}catch(yb){console.error("[Construct] Audio: error starting playback: ",yb);return}finally{c=g.join(" ");d=b.ub.get(c);if(!d)throw Error("expected pending tag");d.Uc--;0===d.Uc&&(d.resolve(),b.ub.delete(c))}t(b)} async function nb(b,a){var c=a.tags;const d=a.vol,e=a.duration;a=a.stopOnEnd;await ob(b,c);for(const p of S(b,c)){c=p;var f=d,g=e,h=a;if(!c.Pa){var k=c.G.gain;k.cancelScheduledValues(0);var n=c.s.g.currentTime;g=n+g;k.setValueAtTime(k.value,n);k.linearRampToValueAtTime(f,g);c.Ha=f;c.Oa=g;c.Kd=h}}T(b)}async function pb(b,a){const c=a.tags;a=a.rate;await ob(b,c);for(const d of S(b,c))b=d,b.la!==a&&(b.la=a,b.Ca())} async function qb(b,a){const c=a.tags;a=a.pos;await ob(b,c);for(const d of S(b,c))d.nc(a)}async function rb(b,a){const c=a.originalUrl,d=a.url,e=a.type;a=a.isMusic;try{await kb(b,c,d,e,"",a)}catch(f){console.error("[Construct] Audio: error preloading: ",f)}}async function sb(b,a){if(a=await P(b,"",a.url,a.type,a.isMusic,!0))a.j(),a=b.ja.indexOf(a),-1!==a&&b.ja.splice(a,1)} async function tb(b,a){const c=a.type;var d=a.tags;const e=a.params;let f;if("convolution"===c)try{f=await P(b,a.bufferOriginalUrl,a.bufferUrl,a.bufferType,!1)}catch(k){console.log("[Construct] Audio: error loading convolution: ",k);return}for(const k of d){if("filter"===c)d=new self.Td(b,...e);else if("delay"===c)d=new self.Rd(b,...e);else if("convolution"===c){var g=d=new self.Qd(b,f.ia,...e),h=a.bufferType;g.md=a.bufferOriginalUrl;g.nd=h}else if("flanger"===c)d=new self.Ud(b,...e);else if("phaser"=== c)d=new self.Wd(b,...e);else if("gain"===c)d=new self.Vd(b,...e);else if("stereopan"===c)d=new self.Yd(b,...e);else if("tremolo"===c)d=new self.Zd(b,...e);else if("ringmod"===c)d=new self.Xd(b,...e);else if("distortion"===c)d=new self.Sd(b,...e);else if("compressor"===c)d=new self.Pd(b,...e);else if("analyser"===c)d=new self.Od(b,...e);else throw Error("invalid effect type");g=b;h=k;h=h.toLowerCase();let n=g.ka.get(h);n||(n=[],g.ka.set(h,n));d.yd=n.length;d.Pc=h;n.push(d);ub(g,h)}vb(b)} async function wb(b,a){const c=a.saveLoadMode;if(3!==c){var d=[];for(var e of b.H)e.za()&&1===c||!e.za()&&2===c?d.push(e):e.j();b.H=d}for(const f of b.ka.values())for(const g of f)g.j();b.ka.clear();b.ac=a.timeScale;b.Dc=a.gameTime;d=a.listenerPos;b.aa[0]=d[0];b.aa[1]=d[1];b.aa[2]=d[2];b.g.listener.setPosition(d[0],d[1],d[2]);d=a.listenerOrientation;if(Array.isArray(d)){for(e=0;6>e;++e)b.ea[e]=d[e];b.g.listener.setOrientation(...b.ea)}b.ua=a.isSilent;b.v.Eb(b.ua);b.Sb=a.masterVolume;b.Na.gain.value= b.Sb;d=[];for(const f of Object.values(a.effects))d.push(Promise.all(f.map(g=>tb(b,g))));await Promise.all(d);await Promise.all(a.playing.map(f=>xb(b,f,c)));T(b)} async function Ab(b,a){try{const c=b.g.suspend(a.time);b.xd?b.g.resume():(b.g.startRendering().then(d=>{const e=[];for(let f=0,g=d.numberOfChannels;f<g;++f){const h=d.getChannelData(f);e.push(h.buffer)}b.v.Bb("runtime","offline-audio-render-completed",{duration:d.duration,length:d.length,numberOfChannels:d.numberOfChannels,sampleRate:d.sampleRate,channelData:e},null,e)}).catch(d=>Bb(d)),b.xd=!0);await c}catch(c){Bb(c)}} function hb(b){b.Mb||(b.Fc=!1,window.addEventListener("pointerup",b.ya,!0),window.addEventListener("touchend",b.ya,!0),window.addEventListener("click",b.ya,!0),window.addEventListener("keydown",b.ya,!0),b.Mb=!0)} async function P(b,a,c,d,e,f){for(var g of b.ja)if(g.bb()===c)return await Cb(g),g;if(f)return null;if(e&&(b.Wb||b.wd)){f=0;for(let h=0,k=b.ja.length;h<k;++h)g=b.ja[h],b.ja[f]=g,g.za()?g.j():++f;b.ja.length=f}f="audio/webm; codecs=opus"===d&&!b.Ld;e&&f&&(b.wd=!0);c=!e||b.Wb||f?new self.be(b,a,c,d,e,f):new self.$d(b,a,c,d,e);b.ja.push(c);await Cb(c);b.Dd.has(a)||(l(b,"buffer-metadata",{originalUrl:a,duration:c.ga()}),b.Dd.add(a));return c} function Eb(b,a){return b===a||b.normalize().toLowerCase()===a.normalize().toLowerCase()}function Fb(b,a){return(a=b.ka.get(a.toLowerCase()))?a[0].N():b.na()}function ub(b,a){a=a.toLowerCase();let c=b.na();var d=b.ka.get(a);if(d&&d.length){c=d[0].N();for(let f=0,g=d.length;f<g;++f){var e=d[f];f+1===g?e.U(b.na()):e.U(d[f+1].N())}}for(const f of Gb(b,a))d=c,e=f.fa||f.F||f.G,e.disconnect(),e.connect(d);b.Fa&&b.Lc===a&&(b.Fa.disconnect(),b.Fa.connect(c))} function*Gb(b,a){if(a)for(const c of b.H)Eb(0<c.ma.length?c.ma[0]:"",a)&&(yield c);else b.R&&!b.R.O()&&(yield b.R)}function Hb(b,a,c){return c?b.v.Fe(a).then(d=>{const e=b.g.createBuffer(1,d.length,48E3);e.getChannelData(0).set(d);return e}):new Promise((d,e)=>{b.g.decodeAudioData(a,d,e)})}function Ib(b,a){let c=0;for(let d=0,e=b.H.length;d<e;++d){const f=b.H[d];b.H[c]=f;f.P===a?f.j():++c}b.H.length=c} function*S(b,a){if(0<a.length)for(const d of b.H){a:{b=d.ma;var c=a;for(const e of c){c=!1;for(const f of b)if(Eb(f,e)){c=!0;break}if(!c){b=!1;break a}}b=!0}b&&(yield d)}else b.R&&!b.R.O()&&(yield b.R)}async function kb(b,a,c,d,e,f){for(const g of b.H)if(g.bb()===c&&(g.fc()||f))return g.ma=e,g;a=await P(b,a,c,d,f);e="html5"===a.yc?new self.ae(a.s,a,e):new self.ce(a.s,a,e);b.H.push(e);return e} function jb(b,a){a=a.join(" ");let c=b.ub.get(a);if(!c){let d=null;c={Uc:0,promise:new Promise(e=>d=e),resolve:d};b.ub.set(a,c)}c.Uc++}function ob(b,a){return(b=b.ub.get((0===a.length?b.Bd:a).join(" ")))?b.promise:Promise.resolve()}function T(b){if(0<b.Ma.size)t(b);else for(const a of b.H)if(!a.I&&!a.O()){t(b);break}}function Jb(b,a,c,d){l(b,"trigger",{type:a,tags:c,aiid:d})}function vb(b){b.Ic||(b.Ic=!0,Promise.resolve().then(()=>Kb(b)))} function Kb(b){const a={};for(const [c,d]of b.ka)a[c]=d.map(e=>e.ab());l(b,"fxstate",{fxstate:a});b.Ic=!1} async function xb(b,a,c){if(3!==c){var d=a.bufferOriginalUrl,e=a.bufferUrl,f=a.bufferType,g=a.isMusic,h=a.tags,k=a.isLooping,n=a.volume,p=a.playbackTime;if(!g||1!==c)if(g||2!==c){c=null;try{c=await kb(b,d,e,f,h,g)}catch(A){console.error("[Construct] Audio: error loading audio state: ",A);return}b=c;(d=a.pan)?(Q(b,!0),e=b.F,f=d.pos,b.Ta[0]=f[0],b.Ta[1]=f[1],b.Ta[2]=f[2],f=d.orient,b.Sa[0]=f[0],b.Sa[1]=f[1],b.Sa[2]=f[2],e.setPosition(...b.Ta),e.setOrientation(...b.Sa),b.ra[0]=d.cia,b.ra[1]=d.coa,b.ra[2]= d.cog,e.coneInnerAngle=d.cia,e.coneOuterAngle=d.coa,e.coneOuterGain=d.cog,b.pa=d.uid):Q(b,!1);b=c;d=a.stereoPan;"number"!==typeof d?R(b,!1):(R(b,!0),mb(b,d));c.Play(k,n,p,0);a.isPlaying||c.eb();c.uc(a)}}}function Bb(b){console.error("[Audio] Offline rendering error: ",b)} self.$a=class extends self.zb{constructor(b){super(b,"audio");this.Na=this.g=null;this.Mb=this.Fc=!1;this.ya=()=>{if(!this.Fc){var a=this.g;"suspended"===a.state&&a.resume&&a.resume();var c=a.createBuffer(1,220,22050),d=a.createBufferSource();d.buffer=c;d.connect(a.destination);d.start(0);"running"===a.state&&this.Mb&&(this.Fc=!0,window.removeEventListener("pointerup",this.ya,!0),window.removeEventListener("touchend",this.ya,!0),window.removeEventListener("click",this.ya,!0),window.removeEventListener("keydown", this.ya,!0),this.Mb=!1)}};this.ja=[];this.H=[];this.R=null;this.Bd=[];this.Dd=new Set;this.Cd=-1;this.ub=new Map;this.Sb=1;this.ua=!1;this.Rc=0;this.ac=1;this.Dc=0;this.Fd="HRTF";this.od="inverse";this.Gd=600;this.Ed=1E4;this.Id=1;this.aa=[0,0,0];this.ea=[0,0,-1,0,1,0];this.wd=this.Wb=!1;this.Ld=this.v.ge();this.ka=new Map;this.Ma=new Set;this.xd=this.Ic=!1;this.Lc="";this.Fa=null;self.C3Audio_OnMicrophoneStream=(a,c)=>{this.Fa&&this.Fa.disconnect();this.Lc=c.toLowerCase();this.Fa=this.g.createMediaStreamSource(a); this.Fa.connect(Fb(this,this.Lc))};this.Jb=null;self.C3Audio_GetOutputStream=()=>{this.Jb||(this.Jb=this.g.createMediaStreamDestination(),this.Na.connect(this.Jb));return this.Jb.stream};self.C3Audio_DOMInterface=this;aa(this,[["create-audio-context",a=>gb(this,a)],["play",a=>ib(this,a)],["stop",a=>{a=a.tags;for(const c of S(this,a))c.Aa()}],["stop-all",()=>{for(const a of this.H)a.Aa()}],["set-paused",a=>{const c=a.tags;a=a.paused;for(const d of S(this,c))a?d.eb():d.Cb();T(this)}],["set-volume", a=>{const c=a.tags;a=a.vol;for(const d of S(this,c))U(d,a)}],["fade-volume",a=>nb(this,a)],["set-master-volume",a=>{this.Sb=a.vol;this.Na.gain.value=this.Sb}],["set-muted",a=>{const c=a.tags;a=a.isMuted;for(const d of S(this,c))Lb(d,a)}],["set-silent",a=>{this.ua=a.isSilent;this.v.Eb(this.ua);for(const c of this.H)c.Hb()}],["set-looping",a=>{const c=a.tags;a=a.isLooping;for(const d of S(this,c))d.oc(a)}],["set-playback-rate",a=>pb(this,a)],["set-stereo-pan",a=>{const c=a.tags;a=a.p;for(const d of S(this, c))R(d,!0),mb(d,a)}],["seek",a=>qb(this,a)],["preload",a=>rb(this,a)],["unload",a=>sb(this,a)],["unload-all",()=>{for(const a of this.ja)a.j();this.ja.length=0}],["set-suspended",a=>{a=a.isSuspended;!a&&this.g.resume&&this.g.resume();for(const c of this.H)c.pc(a);a&&this.g.suspend&&this.g.suspend()}],["add-effect",a=>tb(this,a)],["set-effect-param",a=>{var c=a.tags;const d=a.index,e=a.param,f=a.value,g=a.ramp;a=a.time;for(const h of c)c=this.ka.get(h.toLowerCase()),!c||0>d||d>=c.length||c[d].Z(e, f,g,a);vb(this)}],["remove-effects",a=>{a=a.tags;for(const c of a){a=c.toLowerCase();const d=this.ka.get(a);if(!d||!d.length)break;for(const e of d)e.j();this.ka.delete(a);ub(this,a)}}],["tick",a=>{this.ac=a.timeScale;this.Dc=a.gameTime;this.Cd=a.tickCount;if(0!==this.Rc)for(var c of this.H)c.Ca();!(c=a.listenerPos)||this.aa[0]===c[0]&&this.aa[1]===c[1]&&this.aa[2]===c[2]||(this.aa[0]=c[0],this.aa[1]=c[1],this.aa[2]=c[2],this.g.listener.setPosition(c[0],c[1],c[2]));if((c=a.listenerOrientation)&&(this.ea[0]!== c[0]||this.ea[1]!==c[1]||this.ea[2]!==c[2]||this.ea[3]!==c[3]||this.ea[4]!==c[4]||this.ea[5]!==c[5])){for(let d=0;6>d;++d)this.ea[d]=c[d];this.g.listener.setOrientation(...this.ea)}for(const d of a.instPans){a=d.uid;for(const e of this.H)e.pa===a&&lb(e,d.x,d.y,d.z,d.angle)}}],["load-state",a=>wb(this,a)],["offline-render-audio",a=>Ab(this,a)],["offline-render-finish",()=>{this.g.resume()}]])}W(){return this.g}na(){return this.Na}Ab(){return this.ua}Ba(b){this.v.Ba(b)}Ja(b){this.v.Ja(b)}Ka(){for(var b of this.Ma)b.Ka(); b=this.g.currentTime;for(var a of this.H)a.Ka(b);a=this.H.filter(c=>!c.I&&!c.O()).map(c=>c.ab());l(this,"state",{tickCount:this.Cd,outputLatency:this.g.outputLatency||0,audioInstances:a,analysers:[...this.Ma].map(c=>({tag:c.Pc,index:c.yd,peak:c.Ua,rms:c.Hd,binCount:c.l.frequencyBinCount,freqBins:c.ud}))});0===a.length&&0===this.Ma.size&&this.Nb&&(this.v.De(this.Md),this.Nb=!1)}static le(b){return b*fb}static Zc(b){return Math.max(Math.min(Math.pow(10,b/20),1),0)}static je(b){return Math.log(Math.max(Math.min(b, 1),0))/Math.log(10)*20}};self.Db.ec(self.$a);"use strict";function Cb(b){b.Qb||(b.Qb=b.tc());return b.Qb}self.Wc=class{constructor(b,a,c,d,e){this.s=b;this.Le=a;this.Ga=c;this.T=d;this.He=e;this.yc="";this.Qb=null}j(){this.Qb=this.s=null}tc(){}W(){return this.s.W()}jc(){return this.Le}bb(){return this.Ga}ic(){return this.T}za(){return this.He}ga(){}};"use strict"; self.$d=class extends self.Wc{constructor(b,a,c,d,e){super(b,a,c,d,e);this.yc="html5";this.M=new Audio;this.M.crossOrigin="anonymous";this.M.autoplay=!1;this.M.preload="auto";this.ob=this.pb=null;this.M.addEventListener("canplaythrough",()=>!0);this.tb=this.W().createGain();this.rb=null;this.M.addEventListener("canplay",()=>{this.pb&&(this.pb(),this.ob=this.pb=null);!this.rb&&this.M&&(this.rb=this.W().createMediaElementSource(this.M),this.rb.connect(this.tb))});this.onended=null;this.M.addEventListener("ended", ()=>{if(this.onended)this.onended()});this.M.addEventListener("error",f=>{console.error(`[Construct] Audio '${this.Ga}' error: `,f);this.ob&&(this.ob(f),this.ob=this.pb=null)})}j(){Ib(this.s,this);this.tb.disconnect();this.tb=null;this.rb.disconnect();this.rb=null;this.M&&!this.M.paused&&this.M.pause();this.M=this.onended=null;super.j()}tc(){return new Promise((b,a)=>{this.pb=b;this.ob=a;this.M.src=this.Ga})}V(){return this.M}ga(){return this.M.duration}};"use strict"; async function Mb(b){if(b.Da)return b.Da;var a=b.s.v;if("cordova"===a.B&&a.ad(b.Ga)&&a.Ob)b.Da=await a.yb(b.Ga);else{a=await fetch(b.Ga);if(!a.ok)throw Error(`error fetching audio data: ${a.status} ${a.statusText}`);b.Da=await a.arrayBuffer()}}async function Nb(b){if(b.ia)return b.ia;b.ia=await Hb(b.s,b.Da,b.Ke);b.Da=null} self.be=class extends self.Wc{constructor(b,a,c,d,e,f){super(b,a,c,d,e);this.yc="webaudio";this.ia=this.Da=null;this.Ke=!!f}j(){Ib(this.s,this);this.ia=this.Da=null;super.j()}async tc(){try{await Mb(this),await Nb(this)}catch(b){console.error(`[Construct] Failed to load audio '${this.Ga}': `,b)}}ga(){return this.ia?this.ia.duration:0}};"use strict";let Ob=0; function Q(b,a){a=!!a;b.lb!==a&&(b.lb=a,b.lb?(R(b,!1),b.F||(b.F=b.W().createPanner(),b.F.panningModel=b.s.Fd,b.F.distanceModel=b.s.od,b.F.refDistance=b.s.Gd,b.F.maxDistance=b.s.Ed,b.F.rolloffFactor=b.s.Id),b.G.disconnect(),b.G.connect(b.F),b.F.connect(b.na())):(b.F.disconnect(),b.G.disconnect(),b.G.connect(b.na())))} function R(b,a){a=!!a;b.Pb!==a&&(b.Pb=a,b.Pb?(Q(b,!1),b.fa=b.W().createStereoPanner(),b.G.disconnect(),b.G.connect(b.fa),b.fa.connect(b.na())):(b.fa.disconnect(),b.fa=null,b.G.disconnect(),b.G.connect(b.na())))}function mb(b,a){b.Pb&&b.Oc!==a&&(b.fa.pan.value=a,b.Oc=a)}function U(b,a){b.Ha=a;b.G.gain.cancelScheduledValues(0);b.Oa=-1;b.G.gain.value=b.kc()}function Lb(b,a){a=!!a;b.Pa!==a&&(b.Pa=a,b.Hb())} function lb(b,a,c,d,e){if(b.lb){var f=b.Ta,g=b.Sa,h=Math.cos(e);e=Math.sin(e);if(f[0]!==a||f[1]!==c||f[2]!==d)f[0]=a,f[1]=c,f[2]=d,b.F.setPosition(...f);if(g[0]!==h||g[1]!==e||0!==g[2])g[0]=h,g[1]=e,g[2]=0,b.F.setOrientation(...g)}}function V(b){return b.Jc?b.s.Dc:performance.now()/1E3} self.Xc=class{constructor(b,a,c){this.s=b;this.P=a;this.ma=c;this.Ib=Ob++;this.G=this.W().createGain();this.G.connect(this.na());this.F=null;this.lb=!1;this.Ta=[0,0,0];this.Sa=[0,0,0];this.ra=[0,0,0];this.fa=null;this.Pb=!1;this.Oc=0;this.I=!0;this.Y=this.sa=this.K=!1;this.Ha=1;this.Pa=!1;this.la=1;b=this.s.Rc;this.Jc=1===b&&!this.za()||2===b;this.Oa=this.pa=-1;this.Kd=!1}j(){this.P=this.s=null;this.F&&(this.F.disconnect(),this.F=null);this.fa&&(this.fa.disconnect(),this.fa=null);this.G.disconnect(); this.G=null}W(){return this.s.W()}na(){return Fb(this.s,0<this.ma.length?this.ma[0]:"")}jc(){return this.P.jc()}bb(){return this.P.bb()}ic(){return this.P.ic()}za(){return this.P.za()}O(){}fc(){}IsPlaying(){return!this.I&&!this.K&&!this.O()}Ia(){}ga(){return this.P.ga()}Play(){}Aa(){}eb(){}Cb(){}Ka(b){-1!==this.Oa&&b>=this.Oa&&(this.Oa=-1,this.Kd&&this.Aa(),Jb(this.s,"fade-ended",this.ma,this.Ib))}kc(){const b=this.Ha;return isFinite(b)?b:0}Ab(){return this.s.Ab()}Hb(){}oc(){}Ca(){}nc(){}pc(){}lc(){}ab(){var b= this.Ib,a=this.ma,c=this.ga(),d=-1===this.Oa?this.Ha:this.G.gain.value,e=this.IsPlaying();if(this.F){var f=this.F;f={pos:this.Ta,orient:this.Sa,cia:f.coneInnerAngle,coa:f.coneOuterAngle,cog:f.coneOuterGain,uid:this.pa}}else f=null;return{aiid:b,tags:a,duration:c,volume:d,isPlaying:e,playbackTime:this.Ia(),playbackRate:this.la,uid:this.pa,bufferOriginalUrl:this.jc(),bufferUrl:"",bufferType:this.ic(),isMusic:this.za(),isLooping:this.Y,isMuted:this.Pa,resumePosition:this.lc(),pan:f,stereoPan:this.fa? this.Oc:null}}uc(b){var a=b.playbackRate;this.la!==a&&(this.la=a,this.Ca());Lb(this,b.isMuted)}};"use strict"; self.ae=class extends self.Xc{constructor(b,a,c){super(b,a,c);this.P.tb.connect(this.G);this.P.onended=()=>this.vc()}j(){this.Aa();this.P.tb.disconnect();super.j()}V(){return this.P.V()}vc(){this.I=!0;this.pa=-1;Jb(this.s,"ended",this.ma,this.Ib)}O(){return this.V().ended}fc(){return this.I?!0:this.O()}Ia(){let b=this.V().currentTime;this.Y||(b=Math.min(b,this.ga()));return b}Play(b,a,c){const d=this.V();1!==d.playbackRate&&(d.playbackRate=1);d.loop!==b&&(d.loop=b);U(this,a);d.muted&&(d.muted=!1); if(d.currentTime!==c)try{d.currentTime=c}catch(e){console.warn(`[Construct] Exception seeking audio '${this.P.bb()}' to position '${c}': `,e)}this.s.Ba(d);this.K=this.I=!1;this.Y=b;this.la=1}Aa(){const b=this.V();b.paused||b.pause();this.s.Ja(b);this.I=!0;this.K=!1;this.pa=-1}eb(){if(!(this.K||this.I||this.O())){var b=this.V();b.paused||b.pause();this.s.Ja(b);this.K=!0}}Cb(){!this.K||this.I||this.O()||(this.s.Ba(this.V()),this.K=!1)}Hb(){this.V().muted=this.Pa||this.Ab()}oc(b){b=!!b;this.Y!==b&&(this.Y= b,this.V().loop=b)}Ca(){let b=this.la;this.Jc&&(b*=this.s.ac);try{this.V().playbackRate=b}catch(a){console.warn(`[Construct] Unable to set playback rate '${b}':`,a)}}nc(b){if(!this.I&&!this.O())try{this.V().currentTime=b}catch(a){console.warn(`[Construct] Error seeking audio to '${b}': `,a)}}lc(){return this.Ia()}pc(b){b?this.IsPlaying()?(this.V().pause(),this.sa=!0):this.sa=!1:this.sa&&(this.s.Ba(this.V()),this.sa=!1)}};"use strict"; function W(b){b.o&&(b.o.onended=null,b.o.disconnect(),b.o.buffer=null);b.o=null;b.fb=null} self.ce=class extends self.Xc{constructor(b,a,c){super(b,a,c);this.o=null;this.Ub=d=>this.vc(d);this.Ec=!0;this.fb=null;this.S=this.Vb=this.Xb=0;this.Mc=1}j(){this.Aa();W(this);this.Ub=null;super.j()}vc(b){this.K||this.sa||b.target!==this.fb||(this.I=this.Ec=!0,this.pa=-1,W(this),Jb(this.s,"ended",this.ma,this.Ib))}O(){return!this.I&&this.o&&this.o.loop||this.K?!1:this.Ec}fc(){return!this.o||this.I?!0:this.O()}Ia(){let b;b=this.K?this.S:this.Vb+(V(this)-this.Xb)*this.la;this.Y||(b=Math.min(b,this.ga())); return b}Play(b,a,c,d){this.Mc=1;U(this,a);W(this);this.o=this.W().createBufferSource();this.o.buffer=this.P.ia;this.o.connect(this.G);this.fb=this.o;this.o.onended=this.Ub;this.o.loop=b;this.o.start(d,c);this.K=this.I=this.Ec=!1;this.Y=b;this.la=1;this.Xb=V(this);this.Vb=c}Aa(){if(this.o)try{this.o.stop(0)}catch(b){}this.I=!0;this.K=!1;this.pa=-1}eb(){this.K||this.I||this.O()||(this.S=this.Ia(),this.Y&&(this.S%=this.ga()),this.K=!0,this.o.stop(0))}Cb(){!this.K||this.I||this.O()||(W(this),this.o= this.W().createBufferSource(),this.o.buffer=this.P.ia,this.o.connect(this.G),this.fb=this.o,this.o.onended=this.Ub,this.o.loop=this.Y,U(this,this.Ha),this.Ca(),this.o.start(0,this.S),this.Xb=V(this),this.Vb=this.S,this.K=!1)}kc(){return super.kc()*this.Mc}Hb(){this.Mc=this.Pa||this.Ab()?0:1;U(this,this.Ha)}oc(b){b=!!b;this.Y!==b&&(this.Y=b,this.o&&(this.o.loop=b))}Ca(){let b=this.la;this.Jc&&(b*=this.s.ac);this.o&&(this.o.playbackRate.value=b)}nc(b){this.I||this.O()||(this.K?this.S=b:(this.eb(),this.S= b,this.Cb()))}lc(){return this.S}pc(b){b?this.IsPlaying()?(this.sa=!0,this.S=this.Ia(),this.Y&&(this.S%=this.ga()),this.o.stop(0)):this.sa=!1:this.sa&&(W(this),this.o=this.W().createBufferSource(),this.o.buffer=this.P.ia,this.o.connect(this.G),this.fb=this.o,this.o.onended=this.Ub,this.o.loop=this.Y,U(this,this.Ha),this.Ca(),this.o.start(0,this.S),this.Xb=V(this),this.Vb=this.S,this.sa=!1)}uc(b){super.uc(b);this.S=b.resumePosition}};"use strict";function X(b){return b.g.createGain()} function Y(b,a,c,d,e){a.cancelScheduledValues(0);if(0===e)a.value=c;else switch(b=b.g.currentTime,e+=b,d){case 0:a.setValueAtTime(c,e);break;case 1:a.setValueAtTime(a.value,b);a.linearRampToValueAtTime(c,e);break;case 2:a.setValueAtTime(a.value,b),a.exponentialRampToValueAtTime(c,e)}}class Z{constructor(b){this.s=b;this.g=b.W();this.yd=-1;this.T=this.Pc="";this.m=null}j(){this.g=null}N(){}U(){}ab(){return{type:this.T,tag:this.Pc,params:this.m}}} self.Td=class extends Z{constructor(b,a,c,d,e,f,g){super(b);this.T="filter";this.m=[a,c,d,e,f,g];this.u=X(this);this.i=X(this);this.i.gain.value=g;this.h=X(this);this.h.gain.value=1-g;this.D=this.g.createBiquadFilter();this.D.type=a;this.D.frequency.value=c;this.D.detune.value=d;this.D.Q.value=e;this.D.gain.vlaue=f;this.u.connect(this.D);this.u.connect(this.h);this.D.connect(this.i)}j(){this.u.disconnect();this.D.disconnect();this.i.disconnect();this.h.disconnect();super.j()}U(b){this.i.disconnect(); this.i.connect(b);this.h.disconnect();this.h.connect(b)}N(){return this.u}Z(b,a,c,d){switch(b){case 0:a=Math.max(Math.min(a/100,1),0);this.m[5]=a;Y(this,this.i.gain,a,c,d);Y(this,this.h.gain,1-a,c,d);break;case 1:this.m[1]=a;Y(this,this.D.frequency,a,c,d);break;case 2:this.m[2]=a;Y(this,this.D.detune,a,c,d);break;case 3:this.m[3]=a;Y(this,this.D.Q,a,c,d);break;case 4:this.m[4]=a,Y(this,this.D.gain,a,c,d)}}}; self.Rd=class extends Z{constructor(b,a,c,d){super(b);this.T="delay";this.m=[a,c,d];this.u=X(this);this.i=X(this);this.i.gain.value=d;this.h=X(this);this.h.gain.value=1-d;this.qb=X(this);this.X=this.g.createDelay(a);this.X.delayTime.value=a;this.jb=X(this);this.jb.gain.value=c;this.u.connect(this.qb);this.u.connect(this.h);this.qb.connect(this.i);this.qb.connect(this.X);this.X.connect(this.jb);this.jb.connect(this.qb)}j(){this.u.disconnect();this.i.disconnect();this.h.disconnect();this.qb.disconnect(); this.X.disconnect();this.jb.disconnect();super.j()}U(b){this.i.disconnect();this.i.connect(b);this.h.disconnect();this.h.connect(b)}N(){return this.u}Z(b,a,c,d){const e=self.$a.Zc;switch(b){case 0:a=Math.max(Math.min(a/100,1),0);this.m[2]=a;Y(this,this.i.gain,a,c,d);Y(this,this.h.gain,1-a,c,d);break;case 4:this.m[1]=e(a);Y(this,this.jb.gain,e(a),c,d);break;case 5:this.m[0]=a,Y(this,this.X.delayTime,a,c,d)}}}; self.Qd=class extends Z{constructor(b,a,c,d){super(b);this.T="convolution";this.m=[c,d];this.nd=this.md="";this.u=X(this);this.i=X(this);this.i.gain.value=d;this.h=X(this);this.h.gain.value=1-d;this.ib=this.g.createConvolver();this.ib.normalize=c;this.ib.buffer=a;this.u.connect(this.ib);this.u.connect(this.h);this.ib.connect(this.i)}j(){this.u.disconnect();this.ib.disconnect();this.i.disconnect();this.h.disconnect();super.j()}U(b){this.i.disconnect();this.i.connect(b);this.h.disconnect();this.h.connect(b)}N(){return this.u}Z(b, a,c,d){switch(b){case 0:a=Math.max(Math.min(a/100,1),0),this.m[1]=a,Y(this,this.i.gain,a,c,d),Y(this,this.h.gain,1-a,c,d)}}ab(){const b=super.ab();b.bufferOriginalUrl=this.md;b.bufferUrl="";b.bufferType=this.nd;return b}}; self.Ud=class extends Z{constructor(b,a,c,d,e,f){super(b);this.T="flanger";this.m=[a,c,d,e,f];this.u=X(this);this.h=X(this);this.h.gain.value=1-f/2;this.i=X(this);this.i.gain.value=f/2;this.kb=X(this);this.kb.gain.value=e;this.X=this.g.createDelay(a+c);this.X.delayTime.value=a;this.A=this.g.createOscillator();this.A.frequency.value=d;this.L=X(this);this.L.gain.value=c;this.u.connect(this.X);this.u.connect(this.h);this.X.connect(this.i);this.X.connect(this.kb);this.kb.connect(this.X);this.A.connect(this.L); this.L.connect(this.X.delayTime);this.A.start(0)}j(){this.A.stop(0);this.u.disconnect();this.X.disconnect();this.A.disconnect();this.L.disconnect();this.h.disconnect();this.i.disconnect();this.kb.disconnect();super.j()}U(b){this.i.disconnect();this.i.connect(b);this.h.disconnect();this.h.connect(b)}N(){return this.u}Z(b,a,c,d){switch(b){case 0:a=Math.max(Math.min(a/100,1),0);this.m[4]=a;Y(this,this.i.gain,a/2,c,d);Y(this,this.h.gain,1-a/2,c,d);break;case 6:this.m[1]=a/1E3;Y(this,this.L.gain,a/1E3, c,d);break;case 7:this.m[2]=a;Y(this,this.A.frequency,a,c,d);break;case 8:this.m[3]=a/100,Y(this,this.kb.gain,a/100,c,d)}}}; self.Wd=class extends Z{constructor(b,a,c,d,e,f,g){super(b);this.T="phaser";this.m=[a,c,d,e,f,g];this.u=X(this);this.h=X(this);this.h.gain.value=1-g/2;this.i=X(this);this.i.gain.value=g/2;this.D=this.g.createBiquadFilter();this.D.type="allpass";this.D.frequency.value=a;this.D.detune.value=c;this.D.Q.value=d;this.A=this.g.createOscillator();this.A.frequency.value=f;this.L=X(this);this.L.gain.value=e;this.u.connect(this.D);this.u.connect(this.h);this.D.connect(this.i);this.A.connect(this.L);this.L.connect(this.D.frequency); this.A.start(0)}j(){this.A.stop(0);this.u.disconnect();this.D.disconnect();this.A.disconnect();this.L.disconnect();this.h.disconnect();this.i.disconnect();super.j()}U(b){this.i.disconnect();this.i.connect(b);this.h.disconnect();this.h.connect(b)}N(){return this.u}Z(b,a,c,d){switch(b){case 0:a=Math.max(Math.min(a/100,1),0);this.m[5]=a;Y(this,this.i.gain,a/2,c,d);Y(this,this.h.gain,1-a/2,c,d);break;case 1:this.m[0]=a;Y(this,this.D.frequency,a,c,d);break;case 2:this.m[1]=a;Y(this,this.D.detune,a,c,d); break;case 3:this.m[2]=a;Y(this,this.D.Q,a,c,d);break;case 6:this.m[3]=a;Y(this,this.L.gain,a,c,d);break;case 7:this.m[4]=a,Y(this,this.A.frequency,a,c,d)}}};self.Vd=class extends Z{constructor(b,a){super(b);this.T="gain";this.m=[a];this.l=X(this);this.l.gain.value=a}j(){this.l.disconnect();super.j()}U(b){this.l.disconnect();this.l.connect(b)}N(){return this.l}Z(b,a,c,d){const e=self.$a.Zc;switch(b){case 4:this.m[0]=e(a),Y(this,this.l.gain,e(a),c,d)}}}; self.Yd=class extends Z{constructor(b,a){super(b);this.T="stereopan";this.m=[a];this.l=this.g.createStereoPanner();this.l.pan.value=a}j(){this.l.disconnect();super.j()}U(b){this.l.disconnect();this.l.connect(b)}N(){return this.l}Z(b,a,c,d){a=Math.min(Math.max(a/100,-1),1);switch(b){case 9:this.m[0]=a,Y(this,this.l.pan,a,c,d)}}}; self.Zd=class extends Z{constructor(b,a,c){super(b);this.T="tremolo";this.m=[a,c];this.l=X(this);this.l.gain.value=1-c/2;this.A=this.g.createOscillator();this.A.frequency.value=a;this.L=X(this);this.L.gain.value=c/2;this.A.connect(this.L);this.L.connect(this.l.gain);this.A.start(0)}j(){this.A.stop(0);this.A.disconnect();this.L.disconnect();this.l.disconnect();super.j()}U(b){this.l.disconnect();this.l.connect(b)}N(){return this.l}Z(b,a,c,d){switch(b){case 0:a=Math.max(Math.min(a/100,1),0);this.m[1]= a;Y(this,this.l.gain,1-a/2,c,d);Y(this,this.L.gain,a/2,c,d);break;case 7:this.m[0]=a,Y(this,this.A.frequency,a,c,d)}}}; self.Xd=class extends Z{constructor(b,a,c){super(b);this.T="ringmod";this.m=[a,c];this.u=X(this);this.i=X(this);this.i.gain.value=c;this.h=X(this);this.h.gain.value=1-c;this.vb=X(this);this.vb.gain.value=0;this.A=this.g.createOscillator();this.A.frequency.value=a;this.A.connect(this.vb.gain);this.A.start(0);this.u.connect(this.vb);this.u.connect(this.h);this.vb.connect(this.i)}j(){this.A.stop(0);this.A.disconnect();this.vb.disconnect();this.u.disconnect();this.i.disconnect();this.h.disconnect();super.j()}U(b){this.i.disconnect(); this.i.connect(b);this.h.disconnect();this.h.connect(b)}N(){return this.u}Z(b,a,c,d){switch(b){case 0:a=Math.max(Math.min(a/100,1),0);this.m[1]=a;Y(this,this.i.gain,a,c,d);Y(this,this.h.gain,1-a,c,d);break;case 7:this.m[0]=a,Y(this,this.A.frequency,a,c,d)}}}; self.Sd=class extends Z{constructor(b,a,c,d,e,f){super(b);this.T="distortion";this.m=[a,c,d,e,f];this.u=X(this);this.Zb=X(this);this.Yb=X(this);b=d;.01>b&&(b=.01);this.Zb.gain.value=b;this.Yb.gain.value=Math.pow(1/b,.6)*e;this.i=X(this);this.i.gain.value=f;this.h=X(this);this.h.gain.value=1-f;this.bc=this.g.createWaveShaper();this.Ac=new Float32Array(65536);for(e=0;32768>e;++e)f=e/32768,b=1.05*c*a-a,d=0>f?-f:f,d<a?b=d:(d=1-Math.exp(-(1/b)*(d-a)),b=a+b*d),f=b*(0>f?-1:1),this.Ac[32768+e]=f,this.Ac[32768- e-1]=-f;this.bc.curve=this.Ac;this.u.connect(this.Zb);this.u.connect(this.h);this.Zb.connect(this.bc);this.bc.connect(this.Yb);this.Yb.connect(this.i)}j(){this.u.disconnect();this.Zb.disconnect();this.bc.disconnect();this.Yb.disconnect();this.i.disconnect();this.h.disconnect();super.j()}U(b){this.i.disconnect();this.i.connect(b);this.h.disconnect();this.h.connect(b)}N(){return this.u}Z(b,a,c,d){switch(b){case 0:a=Math.max(Math.min(a/100,1),0),this.m[4]=a,Y(this,this.i.gain,a,c,d),Y(this,this.h.gain, 1-a,c,d)}}};self.Pd=class extends Z{constructor(b,a,c,d,e,f){super(b);this.T="compressor";this.m=[a,c,d,e,f];this.l=this.g.createDynamicsCompressor();this.l.threshold.value=a;this.l.knee.value=c;this.l.ratio.value=d;this.l.attack.value=e;this.l.release.value=f}j(){this.l.disconnect();super.j()}U(b){this.l.disconnect();this.l.connect(b)}N(){return this.l}Z(){}}; self.Od=class extends Z{constructor(b,a,c){super(b);this.T="analyser";this.m=[a,c];this.l=this.g.createAnalyser();this.l.fftSize=a;this.l.smoothingTimeConstant=c;this.ud=new Float32Array(this.l.frequencyBinCount);this.Jd=new Uint8Array(a);this.Hd=this.Ua=0;b=this.s;b.Ma.add(this);T(b)}j(){this.s.Ma.delete(this);this.l.disconnect();super.j()}Ka(){this.l.getFloatFrequencyData(this.ud);this.l.getByteTimeDomainData(this.Jd);const b=this.l.fftSize;let a=this.Ua=0;for(var c=0;c<b;++c){let d=(this.Jd[c]- 128)/128;0>d&&(d=-d);this.Ua<d&&(this.Ua=d);a+=d*d}c=self.$a.je;this.Ua=c(this.Ua);this.Hd=c(Math.sqrt(a/b))}U(b){this.l.disconnect();this.l.connect(b)}N(){return this.l}Z(){}}; register-sw.js 0000644 00000000457 15042605653 0007371 0 ustar 00 'use strict';{window.C3_RegisterSW=async function C3_RegisterSW(){if(!navigator.serviceWorker)return;try{const reg=await navigator.serviceWorker.register("sw.js",{scope:"./"});console.info("Registered service worker on "+reg.scope)}catch(err){console.warn("Failed to register service worker: ",err)}}}; offlineclient.js 0000644 00000001133 15042605653 0007727 0 ustar 00 'use strict';{class OfflineClient{constructor(){this._broadcastChannel=typeof BroadcastChannel==="undefined"?null:new BroadcastChannel("offline");this._queuedMessages=[];this._onMessageCallback=null;if(this._broadcastChannel)this._broadcastChannel.onmessage=e=>this._OnBroadcastChannelMessage(e)}_OnBroadcastChannelMessage(e){if(this._onMessageCallback){this._onMessageCallback(e);return}this._queuedMessages.push(e)}SetMessageCallback(f){this._onMessageCallback=f;for(let e of this._queuedMessages)this._onMessageCallback(e); this._queuedMessages.length=0}}window.OfflineClientInfo=new OfflineClient}; opus.wasm.js 0000644 00000205054 15042712774 0007055 0 ustar 00 ((function() { "use strict"; var VINT_SIZES = [0, 8, 7, 7, 6, 6, 6, 6, 5, 5, 5, 5, 5, 5, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]; var VINT_MASKS = [255, 127, 63, 31, 15, 7, 3, 1, 0]; var OPUS_SIG = [65, 95, 79, 80, 85, 83]; var _decoder = null; var _audioBuffer = null; var _inputPointer = null; var _outputBuffer = null; var _outputPointer = null; var _outputOffset = 0; // Ready promise resolves when onRuntimeInitialized called let readyPromiseResolve = null; const readyPromise = new Promise(resolve => readyPromiseResolve = resolve); Module = { // When WASM has finished loading, resolve the ready promise onRuntimeInitialized: readyPromiseResolve }; function ReadVInt(data, position, length, initialMask) { var value = data.getUint8(position) & initialMask; for (var i = 1; i < length; i++) value = (value << 8) + data.getUint8(position + i); return value } function ParseIntTag(data, position, size) { switch (size) { case 1: return data.getInt8(position); case 2: return data.getInt16(position); case 3: return ReadInt24(data, position); case 4: return data.getInt32(position); default: throw new Error("Invalid size"); } } function ReadInt24(data, position) { var first = data.getInt8(position); var sign = first >> 7; var value = first & 0b1111111; value = (value << 8) | data.getUint8(position); value = (value << 8) | data.getUint8(position); return sign === 1 ? -value : value; } function CalculateAudioBufferSize(rate, channels, duration) { return rate / 1e3 * channels * duration } function CreateDecoder(duration) { var frequency = 48e3; var channels = 1; var bufferSize = 2048; // the true size should be "duration - codecDelay" // but we also write the "discardpadding" at the end // of the buffer before discarding it, so we need 1 opus frame of // extra space. max size of a frame is 120ms var length = CalculateAudioBufferSize(frequency, channels, duration + 120); _audioBuffer = new Float32Array(length); if (!_outputBuffer) { _outputPointer = Module._malloc(bufferSize << 2); _outputBuffer = new Float32Array(Module.HEAPU8.buffer, _outputPointer, bufferSize) } if (!_inputPointer) { _inputPointer = Module._malloc(bufferSize) } _decoder = Module._create_decoder(frequency, channels); if (_decoder < 0) throw new Error("Failed to create decoder") } function DestroyDecoder() { Module._destroy_decoder(_decoder); _decoder = null; _outputOffset = 0; } ///////////////////////////////////////////////////////// // Main job handler self.JobHandlers["OpusDecode"] = async function OpusDecode(params) { // Wait for WASM to finish loading if necessary await readyPromise; // Decode the Opus compressed audio to a float sample buffer and return the ArrayBuffer const arrayBuffer = params["arrayBuffer"]; ParseMaster(new DataView(arrayBuffer), 0, arrayBuffer.byteLength); const end = _outputOffset; DestroyDecoder(); const outputBuffer = _audioBuffer.buffer.slice(0, end * 4); _audioBuffer = null; return { result: outputBuffer, transferables: [outputBuffer] }; }; function WriteOutput (ret) { if (ret + _outputOffset > 0) { var tempBuffer; var writePosition = _outputOffset; if (_outputOffset < 0) { var trim = -_outputOffset; tempBuffer = new Float32Array(Module.HEAPU8.buffer, _outputPointer + trim * 4, ret - trim); writePosition = 0; } else { tempBuffer = new Float32Array(Module.HEAPU8.buffer, _outputPointer, ret); } if (writePosition + tempBuffer.length > _audioBuffer.length) throw new Error("Buffer overflow"); _audioBuffer.set(tempBuffer, writePosition); } _outputOffset += ret; } function ParseFrame(data) { var length = data.length; Module.HEAPU8.set(data, _inputPointer); var ret = Module._decode_frame(_decoder, _inputPointer, length, _outputPointer, 4096); if (ret > 0) { WriteOutput(ret); } else { throw new Error("Failed to parse frame") } } function ParseBlock(data, position, size) { var firstByte, tagLength, mask, trackEntry, timeCode, flags, lacing; firstByte = data.getUint8(position); tagLength = VINT_SIZES[firstByte]; mask = VINT_MASKS[tagLength]; trackEntry = ReadVInt(data, position, tagLength, mask); position += tagLength; timeCode = data.getInt16(position); position += 2; flags = data.getUint8(position); position += 1; size -= tagLength + 3; lacing = flags & 6; if (lacing) throw "Lacing not supported"; ParseFrame(new Uint8Array(data.buffer, position, size)) } function ParseDuration(data, position, size) { var duration; if (size == 4) duration = data.getFloat32(position); else if (size == 8) duration = data.getFloat64(position); else throw new Error("Invalid size"); CreateDecoder(duration) } function ParseDiscard(data, position, size) { // NOTE discard in an integer // postive values are trailing, negative are leading // value is in nanoseconds var discardDuration = ParseIntTag(data, position, size); if (discardDuration < 0) throw new Error("Cannot discard leading block data"); var discardFrames = Math.floor(discardDuration * 0.000048); _outputOffset -= discardFrames; } function ParseDelay(data, position, size) { var discardDuration = ReadVInt(data, position, size, 0xFF); _outputOffset = -Math.floor(discardDuration * 0.000048) } function TestOpus(data, position) { for (var i = 0, l = 6; i < l; i++) { if (data.getUint8(position + i) != OPUS_SIG[i]) throw new Error("Contains non opus data") } } function ParseMaster(data, position, length) { var firstByte, tagLength, id, sizeLength, mask, size; var end = position + length; while (position < end) { firstByte = data.getUint8(position); tagLength = VINT_SIZES[firstByte]; if (tagLength > 4 || tagLength == 0) throw "Invalid tag length " + tagLength; id = ReadVInt(data, position, tagLength, 255); position += tagLength; firstByte = data.getUint8(position); sizeLength = VINT_SIZES[firstByte]; mask = VINT_MASKS[sizeLength]; if (sizeLength == 0) throw "Invalid size length"; size = ReadVInt(data, position, sizeLength, mask); position += sizeLength; switch (id) { case 408125543: // Segment case 357149030: // Info case 524531317: // Cluster case 374648427: // Tracks case 174: // TrackEntry case 160: // BlockGroup ParseMaster(data, position, size); break; case 17545: // Duration ParseDuration(data, position, size); break; case 22186: // CodecDelay ParseDelay(data, position, size); break; case 30114: // DiscardPadding ParseDiscard(data, position, size); break; case 134: // CodecID TestOpus(data, position, size); break; case 161: // Block case 163: // SimpleBlock ParseBlock(data, position, size); break; } position += size } } }))(); var Module; if (!Module) Module = (typeof Module !== "undefined" ? Module : null) || {}; var moduleOverrides = {}; for (var key in Module) { if (Module.hasOwnProperty(key)) { moduleOverrides[key] = Module[key] } } var ENVIRONMENT_IS_WEB = false; var ENVIRONMENT_IS_WORKER = false; var ENVIRONMENT_IS_NODE = false; var ENVIRONMENT_IS_SHELL = false; if (Module["ENVIRONMENT"]) { if (Module["ENVIRONMENT"] === "WEB") { ENVIRONMENT_IS_WEB = true } else if (Module["ENVIRONMENT"] === "WORKER") { ENVIRONMENT_IS_WORKER = true } else if (Module["ENVIRONMENT"] === "NODE") { ENVIRONMENT_IS_NODE = true } else if (Module["ENVIRONMENT"] === "SHELL") { ENVIRONMENT_IS_SHELL = true } else { throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.") } } else { ENVIRONMENT_IS_WEB = typeof window === "object"; ENVIRONMENT_IS_WORKER = typeof importScripts === "function"; ENVIRONMENT_IS_NODE = typeof process === "object" && typeof require === "function" && !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_WORKER; ENVIRONMENT_IS_SHELL = !ENVIRONMENT_IS_WEB && !ENVIRONMENT_IS_NODE && !ENVIRONMENT_IS_WORKER } if (ENVIRONMENT_IS_NODE) { if (!Module["print"]) Module["print"] = console.log; if (!Module["printErr"]) Module["printErr"] = console.warn; var nodeFS; var nodePath; Module["read"] = function shell_read(filename, binary) { if (!nodeFS) nodeFS = require("fs"); if (!nodePath) nodePath = require("path"); filename = nodePath["normalize"](filename); var ret = nodeFS["readFileSync"](filename); return binary ? ret : ret.toString() }; Module["readBinary"] = function readBinary(filename) { var ret = Module["read"](filename, true); if (!ret.buffer) { ret = new Uint8Array(ret) } assert(ret.buffer); return ret }; Module["load"] = function load(f) { globalEval(read(f)) }; if (!Module["thisProgram"]) { if (process["argv"].length > 1) { Module["thisProgram"] = process["argv"][1].replace(/\\/g, "/") } else { Module["thisProgram"] = "unknown-program" } } Module["arguments"] = process["argv"].slice(2); if (typeof module !== "undefined") { module["exports"] = Module } process["on"]("uncaughtException", (function(ex) { if (!(ex instanceof ExitStatus)) { throw ex } })); Module["inspect"] = (function() { return "[Emscripten Module object]" }) } else if (ENVIRONMENT_IS_SHELL) { if (!Module["print"]) Module["print"] = print; if (typeof printErr != "undefined") Module["printErr"] = printErr; if (typeof read != "undefined") { Module["read"] = read } else { Module["read"] = function shell_read() { throw "no read() available" } } Module["readBinary"] = function readBinary(f) { if (typeof readbuffer === "function") { return new Uint8Array(readbuffer(f)) } var data = read(f, "binary"); assert(typeof data === "object"); return data }; if (typeof scriptArgs != "undefined") { Module["arguments"] = scriptArgs } else if (typeof arguments != "undefined") { Module["arguments"] = arguments } if (typeof quit === "function") { Module["quit"] = (function(status, toThrow) { quit(status) }) } } else if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) { Module["read"] = function shell_read(url) { var xhr = new XMLHttpRequest; xhr.open("GET", url, false); xhr.send(null); return xhr.responseText }; if (ENVIRONMENT_IS_WORKER) { Module["readBinary"] = function readBinary(url) { var xhr = new XMLHttpRequest; xhr.open("GET", url, false); xhr.responseType = "arraybuffer"; xhr.send(null); return new Uint8Array(xhr.response) } } Module["readAsync"] = function readAsync(url, onload, onerror) { var xhr = new XMLHttpRequest; xhr.open("GET", url, true); xhr.responseType = "arraybuffer"; xhr.onload = function xhr_onload() { if (xhr.status == 200 || xhr.status == 0 && xhr.response) { onload(xhr.response) } else { onerror() } }; xhr.onerror = onerror; xhr.send(null) }; if (typeof arguments != "undefined") { Module["arguments"] = arguments } if (typeof console !== "undefined") { if (!Module["print"]) Module["print"] = function shell_print(x) { console.log(x) }; if (!Module["printErr"]) Module["printErr"] = function shell_printErr(x) { console.warn(x) } } else { var TRY_USE_DUMP = false; if (!Module["print"]) Module["print"] = TRY_USE_DUMP && typeof dump !== "undefined" ? (function(x) { dump(x) }) : (function(x) {}) } if (ENVIRONMENT_IS_WORKER) { Module["load"] = importScripts } if (typeof Module["setWindowTitle"] === "undefined") { Module["setWindowTitle"] = (function(title) { document.title = title }) } } else { throw "Unknown runtime environment. Where are we?" } function globalEval(x) { eval.call(null, x) } if (!Module["load"] && Module["read"]) { Module["load"] = function load(f) { globalEval(Module["read"](f)) } } if (!Module["print"]) { Module["print"] = (function() {}) } if (!Module["printErr"]) { Module["printErr"] = Module["print"] } if (!Module["arguments"]) { Module["arguments"] = [] } if (!Module["thisProgram"]) { Module["thisProgram"] = "./this.program" } if (!Module["quit"]) { Module["quit"] = (function(status, toThrow) { throw toThrow }) } Module.print = Module["print"]; Module.printErr = Module["printErr"]; Module["preRun"] = []; Module["postRun"] = []; for (var key in moduleOverrides) { if (moduleOverrides.hasOwnProperty(key)) { Module[key] = moduleOverrides[key] } } moduleOverrides = undefined; var Runtime = { setTempRet0: (function(value) { tempRet0 = value; return value }), getTempRet0: (function() { return tempRet0 }), stackSave: (function() { return STACKTOP }), stackRestore: (function(stackTop) { STACKTOP = stackTop }), getNativeTypeSize: (function(type) { switch (type) { case "i1": case "i8": return 1; case "i16": return 2; case "i32": return 4; case "i64": return 8; case "float": return 4; case "double": return 8; default: { if (type[type.length - 1] === "*") { return Runtime.QUANTUM_SIZE } else if (type[0] === "i") { var bits = parseInt(type.substr(1)); assert(bits % 8 === 0); return bits / 8 } else { return 0 } } } }), getNativeFieldSize: (function(type) { return Math.max(Runtime.getNativeTypeSize(type), Runtime.QUANTUM_SIZE) }), STACK_ALIGN: 16, prepVararg: (function(ptr, type) { if (type === "double" || type === "i64") { if (ptr & 7) { assert((ptr & 7) === 4); ptr += 4 } } else { assert((ptr & 3) === 0) } return ptr }), getAlignSize: (function(type, size, vararg) { if (!vararg && (type == "i64" || type == "double")) return 8; if (!type) return Math.min(size, 8); return Math.min(size || (type ? Runtime.getNativeFieldSize(type) : 0), Runtime.QUANTUM_SIZE) }), dynCall: (function(sig, ptr, args) { if (args && args.length) { return Module["dynCall_" + sig].apply(null, [ptr].concat(args)) } else { return Module["dynCall_" + sig].call(null, ptr) } }), functionPointers: [], addFunction: (function(func) { for (var i = 0; i < Runtime.functionPointers.length; i++) { if (!Runtime.functionPointers[i]) { Runtime.functionPointers[i] = func; return 2 * (1 + i) } } throw "Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS." }), removeFunction: (function(index) { Runtime.functionPointers[(index - 2) / 2] = null }), warnOnce: (function(text) { if (!Runtime.warnOnce.shown) Runtime.warnOnce.shown = {}; if (!Runtime.warnOnce.shown[text]) { Runtime.warnOnce.shown[text] = 1; Module.printErr(text) } }), funcWrappers: {}, getFuncWrapper: (function(func, sig) { assert(sig); if (!Runtime.funcWrappers[sig]) { Runtime.funcWrappers[sig] = {} } var sigCache = Runtime.funcWrappers[sig]; if (!sigCache[func]) { if (sig.length === 1) { sigCache[func] = function dynCall_wrapper() { return Runtime.dynCall(sig, func) } } else if (sig.length === 2) { sigCache[func] = function dynCall_wrapper(arg) { return Runtime.dynCall(sig, func, [arg]) } } else { sigCache[func] = function dynCall_wrapper() { return Runtime.dynCall(sig, func, Array.prototype.slice.call(arguments)) } } } return sigCache[func] }), getCompilerSetting: (function(name) { throw "You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work" }), stackAlloc: (function(size) { var ret = STACKTOP; STACKTOP = STACKTOP + size | 0; STACKTOP = STACKTOP + 15 & -16; return ret }), staticAlloc: (function(size) { var ret = STATICTOP; STATICTOP = STATICTOP + size | 0; STATICTOP = STATICTOP + 15 & -16; return ret }), dynamicAlloc: (function(size) { var ret = HEAP32[DYNAMICTOP_PTR >> 2]; var end = (ret + size + 15 | 0) & -16; HEAP32[DYNAMICTOP_PTR >> 2] = end; if (end >= TOTAL_MEMORY) { var success = enlargeMemory(); if (!success) { HEAP32[DYNAMICTOP_PTR >> 2] = ret; return 0 } } return ret }), alignMemory: (function(size, quantum) { var ret = size = Math.ceil(size / (quantum ? quantum : 16)) * (quantum ? quantum : 16); return ret }), makeBigInt: (function(low, high, unsigned) { var ret = unsigned ? +(low >>> 0) + +(high >>> 0) * 4294967296 : +(low >>> 0) + +(high | 0) * 4294967296; return ret }), GLOBAL_BASE: 1024, QUANTUM_SIZE: 4, __dummy__: 0 }; Module["Runtime"] = Runtime; var ABORT = 0; var EXITSTATUS = 0; function assert(condition, text) { if (!condition) { abort("Assertion failed: " + text) } } function getCFunc(ident) { var func = Module["_" + ident]; if (!func) { try { func = eval("_" + ident) } catch (e) {} } assert(func, "Cannot call unknown function " + ident + " (perhaps LLVM optimizations or closure removed it?)"); return func } var cwrap, ccall; ((function() { var JSfuncs = { "stackSave": (function() { Runtime.stackSave() }), "stackRestore": (function() { Runtime.stackRestore() }), "arrayToC": (function(arr) { var ret = Runtime.stackAlloc(arr.length); writeArrayToMemory(arr, ret); return ret }), "stringToC": (function(str) { var ret = 0; if (str !== null && str !== undefined && str !== 0) { var len = (str.length << 2) + 1; ret = Runtime.stackAlloc(len); stringToUTF8(str, ret, len) } return ret }) }; var toC = { "string": JSfuncs["stringToC"], "array": JSfuncs["arrayToC"] }; ccall = function ccallFunc(ident, returnType, argTypes, args, opts) { var func = getCFunc(ident); var cArgs = []; var stack = 0; if (args) { for (var i = 0; i < args.length; i++) { var converter = toC[argTypes[i]]; if (converter) { if (stack === 0) stack = Runtime.stackSave(); cArgs[i] = converter(args[i]) } else { cArgs[i] = args[i] } } } var ret = func.apply(null, cArgs); if (returnType === "string") ret = Pointer_stringify(ret); if (stack !== 0) { if (opts && opts.async) { EmterpreterAsync.asyncFinalizers.push((function() { Runtime.stackRestore(stack) })); return } Runtime.stackRestore(stack) } return ret }; var sourceRegex = /^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/; function parseJSFunc(jsfunc) { var parsed = jsfunc.toString().match(sourceRegex).slice(1); return { arguments: parsed[0], body: parsed[1], returnValue: parsed[2] } } var JSsource = null; function ensureJSsource() { if (!JSsource) { JSsource = {}; for (var fun in JSfuncs) { if (JSfuncs.hasOwnProperty(fun)) { JSsource[fun] = parseJSFunc(JSfuncs[fun]) } } } } cwrap = function cwrap(ident, returnType, argTypes) { argTypes = argTypes || []; var cfunc = getCFunc(ident); var numericArgs = argTypes.every((function(type) { return type === "number" })); var numericRet = returnType !== "string"; if (numericRet && numericArgs) { return cfunc } var argNames = argTypes.map((function(x, i) { return "$" + i })); var funcstr = "(function(" + argNames.join(",") + ") {"; var nargs = argTypes.length; if (!numericArgs) { ensureJSsource(); funcstr += "var stack = " + JSsource["stackSave"].body + ";"; for (var i = 0; i < nargs; i++) { var arg = argNames[i], type = argTypes[i]; if (type === "number") continue; var convertCode = JSsource[type + "ToC"]; funcstr += "var " + convertCode.arguments + " = " + arg + ";"; funcstr += convertCode.body + ";"; funcstr += arg + "=(" + convertCode.returnValue + ");" } } var cfuncname = parseJSFunc((function() { return cfunc })).returnValue; funcstr += "var ret = " + cfuncname + "(" + argNames.join(",") + ");"; if (!numericRet) { var strgfy = parseJSFunc((function() { return Pointer_stringify })).returnValue; funcstr += "ret = " + strgfy + "(ret);" } if (!numericArgs) { ensureJSsource(); funcstr += JSsource["stackRestore"].body.replace("()", "(stack)") + ";" } funcstr += "return ret})"; return eval(funcstr) } }))(); Module["ccall"] = ccall; Module["cwrap"] = cwrap; function setValue(ptr, value, type, noSafe) { type = type || "i8"; if (type.charAt(type.length - 1) === "*") type = "i32"; switch (type) { case "i1": HEAP8[ptr >> 0] = value; break; case "i8": HEAP8[ptr >> 0] = value; break; case "i16": HEAP16[ptr >> 1] = value; break; case "i32": HEAP32[ptr >> 2] = value; break; case "i64": tempI64 = [value >>> 0, (tempDouble = value, +Math_abs(tempDouble) >= 1 ? tempDouble > 0 ? (Math_min(+Math_floor(tempDouble / 4294967296), 4294967295) | 0) >>> 0 : ~~+Math_ceil((tempDouble - +(~~tempDouble >>> 0)) / 4294967296) >>> 0 : 0)], HEAP32[ptr >> 2] = tempI64[0], HEAP32[ptr + 4 >> 2] = tempI64[1]; break; case "float": HEAPF32[ptr >> 2] = value; break; case "double": HEAPF64[ptr >> 3] = value; break; default: abort("invalid type for setValue: " + type) } } Module["setValue"] = setValue; function getValue(ptr, type, noSafe) { type = type || "i8"; if (type.charAt(type.length - 1) === "*") type = "i32"; switch (type) { case "i1": return HEAP8[ptr >> 0]; case "i8": return HEAP8[ptr >> 0]; case "i16": return HEAP16[ptr >> 1]; case "i32": return HEAP32[ptr >> 2]; case "i64": return HEAP32[ptr >> 2]; case "float": return HEAPF32[ptr >> 2]; case "double": return HEAPF64[ptr >> 3]; default: abort("invalid type for setValue: " + type) } return null } Module["getValue"] = getValue; var ALLOC_NORMAL = 0; var ALLOC_STACK = 1; var ALLOC_STATIC = 2; var ALLOC_DYNAMIC = 3; var ALLOC_NONE = 4; Module["ALLOC_NORMAL"] = ALLOC_NORMAL; Module["ALLOC_STACK"] = ALLOC_STACK; Module["ALLOC_STATIC"] = ALLOC_STATIC; Module["ALLOC_DYNAMIC"] = ALLOC_DYNAMIC; Module["ALLOC_NONE"] = ALLOC_NONE; function allocate(slab, types, allocator, ptr) { var zeroinit, size; if (typeof slab === "number") { zeroinit = true; size = slab } else { zeroinit = false; size = slab.length } var singleType = typeof types === "string" ? types : null; var ret; if (allocator == ALLOC_NONE) { ret = ptr } else { ret = [typeof _malloc === "function" ? _malloc : Runtime.staticAlloc, Runtime.stackAlloc, Runtime.staticAlloc, Runtime.dynamicAlloc][allocator === undefined ? ALLOC_STATIC : allocator](Math.max(size, singleType ? 1 : types.length)) } if (zeroinit) { var ptr = ret, stop; assert((ret & 3) == 0); stop = ret + (size & ~3); for (; ptr < stop; ptr += 4) { HEAP32[ptr >> 2] = 0 } stop = ret + size; while (ptr < stop) { HEAP8[ptr++ >> 0] = 0 } return ret } if (singleType === "i8") { if (slab.subarray || slab.slice) { HEAPU8.set(slab, ret) } else { HEAPU8.set(new Uint8Array(slab), ret) } return ret } var i = 0, type, typeSize, previousType; while (i < size) { var curr = slab[i]; if (typeof curr === "function") { curr = Runtime.getFunctionIndex(curr) } type = singleType || types[i]; if (type === 0) { i++; continue } if (type == "i64") type = "i32"; setValue(ret + i, curr, type); if (previousType !== type) { typeSize = Runtime.getNativeTypeSize(type); previousType = type } i += typeSize } return ret } Module["allocate"] = allocate; function getMemory(size) { if (!staticSealed) return Runtime.staticAlloc(size); if (!runtimeInitialized) return Runtime.dynamicAlloc(size); return _malloc(size) } Module["getMemory"] = getMemory; function Pointer_stringify(ptr, length) { if (length === 0 || !ptr) return ""; var hasUtf = 0; var t; var i = 0; while (1) { t = HEAPU8[ptr + i >> 0]; hasUtf |= t; if (t == 0 && !length) break; i++; if (length && i == length) break } if (!length) length = i; var ret = ""; if (hasUtf < 128) { var MAX_CHUNK = 1024; var curr; while (length > 0) { curr = String.fromCharCode.apply(String, HEAPU8.subarray(ptr, ptr + Math.min(length, MAX_CHUNK))); ret = ret ? ret + curr : curr; ptr += MAX_CHUNK; length -= MAX_CHUNK } return ret } return Module["UTF8ToString"](ptr) } Module["Pointer_stringify"] = Pointer_stringify; function AsciiToString(ptr) { var str = ""; while (1) { var ch = HEAP8[ptr++ >> 0]; if (!ch) return str; str += String.fromCharCode(ch) } } Module["AsciiToString"] = AsciiToString; function stringToAscii(str, outPtr) { return writeAsciiToMemory(str, outPtr, false) } Module["stringToAscii"] = stringToAscii; var UTF8Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf8") : undefined; function UTF8ArrayToString(u8Array, idx) { var endPtr = idx; while (u8Array[endPtr]) ++endPtr; if (endPtr - idx > 16 && u8Array.subarray && UTF8Decoder) { return UTF8Decoder.decode(u8Array.subarray(idx, endPtr)) } else { var u0, u1, u2, u3, u4, u5; var str = ""; while (1) { u0 = u8Array[idx++]; if (!u0) return str; if (!(u0 & 128)) { str += String.fromCharCode(u0); continue } u1 = u8Array[idx++] & 63; if ((u0 & 224) == 192) { str += String.fromCharCode((u0 & 31) << 6 | u1); continue } u2 = u8Array[idx++] & 63; if ((u0 & 240) == 224) { u0 = (u0 & 15) << 12 | u1 << 6 | u2 } else { u3 = u8Array[idx++] & 63; if ((u0 & 248) == 240) { u0 = (u0 & 7) << 18 | u1 << 12 | u2 << 6 | u3 } else { u4 = u8Array[idx++] & 63; if ((u0 & 252) == 248) { u0 = (u0 & 3) << 24 | u1 << 18 | u2 << 12 | u3 << 6 | u4 } else { u5 = u8Array[idx++] & 63; u0 = (u0 & 1) << 30 | u1 << 24 | u2 << 18 | u3 << 12 | u4 << 6 | u5 } } } if (u0 < 65536) { str += String.fromCharCode(u0) } else { var ch = u0 - 65536; str += String.fromCharCode(55296 | ch >> 10, 56320 | ch & 1023) } } } } Module["UTF8ArrayToString"] = UTF8ArrayToString; function UTF8ToString(ptr) { return UTF8ArrayToString(HEAPU8, ptr) } Module["UTF8ToString"] = UTF8ToString; function stringToUTF8Array(str, outU8Array, outIdx, maxBytesToWrite) { if (!(maxBytesToWrite > 0)) return 0; var startIdx = outIdx; var endIdx = outIdx + maxBytesToWrite - 1; for (var i = 0; i < str.length; ++i) { var u = str.charCodeAt(i); if (u >= 55296 && u <= 57343) u = 65536 + ((u & 1023) << 10) | str.charCodeAt(++i) & 1023; if (u <= 127) { if (outIdx >= endIdx) break; outU8Array[outIdx++] = u } else if (u <= 2047) { if (outIdx + 1 >= endIdx) break; outU8Array[outIdx++] = 192 | u >> 6; outU8Array[outIdx++] = 128 | u & 63 } else if (u <= 65535) { if (outIdx + 2 >= endIdx) break; outU8Array[outIdx++] = 224 | u >> 12; outU8Array[outIdx++] = 128 | u >> 6 & 63; outU8Array[outIdx++] = 128 | u & 63 } else if (u <= 2097151) { if (outIdx + 3 >= endIdx) break; outU8Array[outIdx++] = 240 | u >> 18; outU8Array[outIdx++] = 128 | u >> 12 & 63; outU8Array[outIdx++] = 128 | u >> 6 & 63; outU8Array[outIdx++] = 128 | u & 63 } else if (u <= 67108863) { if (outIdx + 4 >= endIdx) break; outU8Array[outIdx++] = 248 | u >> 24; outU8Array[outIdx++] = 128 | u >> 18 & 63; outU8Array[outIdx++] = 128 | u >> 12 & 63; outU8Array[outIdx++] = 128 | u >> 6 & 63; outU8Array[outIdx++] = 128 | u & 63 } else { if (outIdx + 5 >= endIdx) break; outU8Array[outIdx++] = 252 | u >> 30; outU8Array[outIdx++] = 128 | u >> 24 & 63; outU8Array[outIdx++] = 128 | u >> 18 & 63; outU8Array[outIdx++] = 128 | u >> 12 & 63; outU8Array[outIdx++] = 128 | u >> 6 & 63; outU8Array[outIdx++] = 128 | u & 63 } } outU8Array[outIdx] = 0; return outIdx - startIdx } Module["stringToUTF8Array"] = stringToUTF8Array; function stringToUTF8(str, outPtr, maxBytesToWrite) { return stringToUTF8Array(str, HEAPU8, outPtr, maxBytesToWrite) } Module["stringToUTF8"] = stringToUTF8; function lengthBytesUTF8(str) { var len = 0; for (var i = 0; i < str.length; ++i) { var u = str.charCodeAt(i); if (u >= 55296 && u <= 57343) u = 65536 + ((u & 1023) << 10) | str.charCodeAt(++i) & 1023; if (u <= 127) { ++len } else if (u <= 2047) { len += 2 } else if (u <= 65535) { len += 3 } else if (u <= 2097151) { len += 4 } else if (u <= 67108863) { len += 5 } else { len += 6 } } return len } Module["lengthBytesUTF8"] = lengthBytesUTF8; var UTF16Decoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf-16le") : undefined; function demangle(func) { var __cxa_demangle_func = Module["___cxa_demangle"] || Module["__cxa_demangle"]; if (__cxa_demangle_func) { try { var s = func.substr(1); var len = lengthBytesUTF8(s) + 1; var buf = _malloc(len); stringToUTF8(s, buf, len); var status = _malloc(4); var ret = __cxa_demangle_func(buf, 0, 0, status); if (getValue(status, "i32") === 0 && ret) { return Pointer_stringify(ret) } } catch (e) {} finally { if (buf) _free(buf); if (status) _free(status); if (ret) _free(ret) } return func } Runtime.warnOnce("warning: build with -s DEMANGLE_SUPPORT=1 to link in libcxxabi demangling"); return func } function demangleAll(text) { var regex = /__Z[\w\d_]+/g; return text.replace(regex, (function(x) { var y = demangle(x); return x === y ? x : x + " [" + y + "]" })) } function jsStackTrace() { var err = new Error; if (!err.stack) { try { throw new Error(0) } catch (e) { err = e } if (!err.stack) { return "(no stack trace available)" } } return err.stack.toString() } function stackTrace() { var js = jsStackTrace(); if (Module["extraStackTrace"]) js += "\n" + Module["extraStackTrace"](); return demangleAll(js) } Module["stackTrace"] = stackTrace; var WASM_PAGE_SIZE = 65536; var ASMJS_PAGE_SIZE = 16777216; function alignUp(x, multiple) { if (x % multiple > 0) { x += multiple - x % multiple } return x } var HEAP, buffer, HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64; function updateGlobalBuffer(buf) { Module["buffer"] = buffer = buf } function updateGlobalBufferViews() { Module["HEAP8"] = HEAP8 = new Int8Array(buffer); Module["HEAP16"] = HEAP16 = new Int16Array(buffer); Module["HEAP32"] = HEAP32 = new Int32Array(buffer); Module["HEAPU8"] = HEAPU8 = new Uint8Array(buffer); Module["HEAPU16"] = HEAPU16 = new Uint16Array(buffer); Module["HEAPU32"] = HEAPU32 = new Uint32Array(buffer); Module["HEAPF32"] = HEAPF32 = new Float32Array(buffer); Module["HEAPF64"] = HEAPF64 = new Float64Array(buffer) } var STATIC_BASE, STATICTOP, staticSealed; var STACK_BASE, STACKTOP, STACK_MAX; var DYNAMIC_BASE, DYNAMICTOP_PTR; STATIC_BASE = STATICTOP = STACK_BASE = STACKTOP = STACK_MAX = DYNAMIC_BASE = DYNAMICTOP_PTR = 0; staticSealed = false; function abortOnCannotGrowMemory() { abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value " + TOTAL_MEMORY + ", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ") } function enlargeMemory() { abortOnCannotGrowMemory() } var TOTAL_STACK = Module["TOTAL_STACK"] || 5242880; var TOTAL_MEMORY = Module["TOTAL_MEMORY"] || 67108864; if (TOTAL_MEMORY < TOTAL_STACK) Module.printErr("TOTAL_MEMORY should be larger than TOTAL_STACK, was " + TOTAL_MEMORY + "! (TOTAL_STACK=" + TOTAL_STACK + ")"); if (Module["buffer"]) { buffer = Module["buffer"] } else { if (typeof WebAssembly === "object" && typeof WebAssembly.Memory === "function") { Module["wasmMemory"] = new WebAssembly.Memory({ "initial": TOTAL_MEMORY / WASM_PAGE_SIZE, "maximum": TOTAL_MEMORY / WASM_PAGE_SIZE }); buffer = Module["wasmMemory"].buffer } else { buffer = new ArrayBuffer(TOTAL_MEMORY) } } updateGlobalBufferViews(); function getTotalMemory() { return TOTAL_MEMORY } HEAP32[0] = 1668509029; HEAP16[1] = 25459; if (HEAPU8[2] !== 115 || HEAPU8[3] !== 99) throw "Runtime error: expected the system to be little-endian!"; Module["HEAP"] = HEAP; Module["buffer"] = buffer; Module["HEAP8"] = HEAP8; Module["HEAP16"] = HEAP16; Module["HEAP32"] = HEAP32; Module["HEAPU8"] = HEAPU8; Module["HEAPU16"] = HEAPU16; Module["HEAPU32"] = HEAPU32; Module["HEAPF32"] = HEAPF32; Module["HEAPF64"] = HEAPF64; function callRuntimeCallbacks(callbacks) { while (callbacks.length > 0) { var callback = callbacks.shift(); if (typeof callback == "function") { callback(); continue } var func = callback.func; if (typeof func === "number") { if (callback.arg === undefined) { Module["dynCall_v"](func) } else { Module["dynCall_vi"](func, callback.arg) } } else { func(callback.arg === undefined ? null : callback.arg) } } } var __ATPRERUN__ = []; var __ATINIT__ = []; var __ATMAIN__ = []; var __ATEXIT__ = []; var __ATPOSTRUN__ = []; var runtimeInitialized = false; var runtimeExited = false; function preRun() { if (Module["preRun"]) { if (typeof Module["preRun"] == "function") Module["preRun"] = [Module["preRun"]]; while (Module["preRun"].length) { addOnPreRun(Module["preRun"].shift()) } } callRuntimeCallbacks(__ATPRERUN__) } function ensureInitRuntime() { if (runtimeInitialized) return; runtimeInitialized = true; callRuntimeCallbacks(__ATINIT__) } function preMain() { callRuntimeCallbacks(__ATMAIN__) } function exitRuntime() { callRuntimeCallbacks(__ATEXIT__); runtimeExited = true } function postRun() { if (Module["postRun"]) { if (typeof Module["postRun"] == "function") Module["postRun"] = [Module["postRun"]]; while (Module["postRun"].length) { addOnPostRun(Module["postRun"].shift()) } } callRuntimeCallbacks(__ATPOSTRUN__) } function addOnPreRun(cb) { __ATPRERUN__.unshift(cb) } Module["addOnPreRun"] = addOnPreRun; function addOnInit(cb) { __ATINIT__.unshift(cb) } Module["addOnInit"] = addOnInit; function addOnPreMain(cb) { __ATMAIN__.unshift(cb) } Module["addOnPreMain"] = addOnPreMain; function addOnExit(cb) { __ATEXIT__.unshift(cb) } Module["addOnExit"] = addOnExit; function addOnPostRun(cb) { __ATPOSTRUN__.unshift(cb) } Module["addOnPostRun"] = addOnPostRun; function intArrayFromString(stringy, dontAddNull, length) { var len = length > 0 ? length : lengthBytesUTF8(stringy) + 1; var u8array = new Array(len); var numBytesWritten = stringToUTF8Array(stringy, u8array, 0, u8array.length); if (dontAddNull) u8array.length = numBytesWritten; return u8array } Module["intArrayFromString"] = intArrayFromString; function intArrayToString(array) { var ret = []; for (var i = 0; i < array.length; i++) { var chr = array[i]; if (chr > 255) { chr &= 255 } ret.push(String.fromCharCode(chr)) } return ret.join("") } Module["intArrayToString"] = intArrayToString; function writeStringToMemory(string, buffer, dontAddNull) { Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!"); var lastChar, end; if (dontAddNull) { end = buffer + lengthBytesUTF8(string); lastChar = HEAP8[end] } stringToUTF8(string, buffer, Infinity); if (dontAddNull) HEAP8[end] = lastChar } Module["writeStringToMemory"] = writeStringToMemory; function writeArrayToMemory(array, buffer) { HEAP8.set(array, buffer) } Module["writeArrayToMemory"] = writeArrayToMemory; function writeAsciiToMemory(str, buffer, dontAddNull) { for (var i = 0; i < str.length; ++i) { HEAP8[buffer++ >> 0] = str.charCodeAt(i) } if (!dontAddNull) HEAP8[buffer >> 0] = 0 } Module["writeAsciiToMemory"] = writeAsciiToMemory; if (!Math["imul"] || Math["imul"](4294967295, 5) !== -5) Math["imul"] = function imul(a, b) { var ah = a >>> 16; var al = a & 65535; var bh = b >>> 16; var bl = b & 65535; return al * bl + (ah * bl + al * bh << 16) | 0 }; Math.imul = Math["imul"]; if (!Math["fround"]) { var froundBuffer = new Float32Array(1); Math["fround"] = (function(x) { froundBuffer[0] = x; return froundBuffer[0] }) } Math.fround = Math["fround"]; if (!Math["clz32"]) Math["clz32"] = (function(x) { x = x >>> 0; for (var i = 0; i < 32; i++) { if (x & 1 << 31 - i) return i } return 32 }); Math.clz32 = Math["clz32"]; if (!Math["trunc"]) Math["trunc"] = (function(x) { return x < 0 ? Math.ceil(x) : Math.floor(x) }); Math.trunc = Math["trunc"]; var Math_abs = Math.abs; var Math_cos = Math.cos; var Math_sin = Math.sin; var Math_tan = Math.tan; var Math_acos = Math.acos; var Math_asin = Math.asin; var Math_atan = Math.atan; var Math_atan2 = Math.atan2; var Math_exp = Math.exp; var Math_log = Math.log; var Math_sqrt = Math.sqrt; var Math_ceil = Math.ceil; var Math_floor = Math.floor; var Math_pow = Math.pow; var Math_imul = Math.imul; var Math_fround = Math.fround; var Math_round = Math.round; var Math_min = Math.min; var Math_clz32 = Math.clz32; var Math_trunc = Math.trunc; var runDependencies = 0; var runDependencyWatcher = null; var dependenciesFulfilled = null; function addRunDependency(id) { runDependencies++; if (Module["monitorRunDependencies"]) { Module["monitorRunDependencies"](runDependencies) } } Module["addRunDependency"] = addRunDependency; function removeRunDependency(id) { runDependencies--; if (Module["monitorRunDependencies"]) { Module["monitorRunDependencies"](runDependencies) } if (runDependencies == 0) { if (runDependencyWatcher !== null) { clearInterval(runDependencyWatcher); runDependencyWatcher = null } if (dependenciesFulfilled) { var callback = dependenciesFulfilled; dependenciesFulfilled = null; callback() } } } Module["removeRunDependency"] = removeRunDependency; Module["preloadedImages"] = {}; Module["preloadedAudios"] = {}; var memoryInitializer = null; function integrateWasmJS(Module) { var method = Module["wasmJSMethod"] || "native-wasm"; Module["wasmJSMethod"] = method; var wasmTextFile = Module["wasmTextFile"] || "opus.wasm.wast"; var wasmBinaryFile = Module["wasmBinaryFile"] || "opus.wasm.wasm"; var asmjsCodeFile = Module["asmjsCodeFile"] || "opus.wasm.temp.asm.js"; if (typeof Module["locateFile"] === "function") { wasmTextFile = Module["locateFile"](wasmTextFile); wasmBinaryFile = Module["locateFile"](wasmBinaryFile); asmjsCodeFile = Module["locateFile"](asmjsCodeFile) } var wasmPageSize = 64 * 1024; var asm2wasmImports = { "f64-rem": (function(x, y) { return x % y }), "f64-to-int": (function(x) { return x | 0 }), "i32s-div": (function(x, y) { return (x | 0) / (y | 0) | 0 }), "i32u-div": (function(x, y) { return (x >>> 0) / (y >>> 0) >>> 0 }), "i32s-rem": (function(x, y) { return (x | 0) % (y | 0) | 0 }), "i32u-rem": (function(x, y) { return (x >>> 0) % (y >>> 0) >>> 0 }), "debugger": (function() { debugger }) }; var info = { "global": null, "env": null, "asm2wasm": asm2wasmImports, "parent": Module }; var exports = null; function lookupImport(mod, base) { var lookup = info; if (mod.indexOf(".") < 0) { lookup = (lookup || {})[mod] } else { var parts = mod.split("."); lookup = (lookup || {})[parts[0]]; lookup = (lookup || {})[parts[1]] } if (base) { lookup = (lookup || {})[base] } if (lookup === undefined) { abort("bad lookupImport to (" + mod + ")." + base) } return lookup } function mergeMemory(newBuffer) { var oldBuffer = Module["buffer"]; if (newBuffer.byteLength < oldBuffer.byteLength) { Module["printErr"]("the new buffer in mergeMemory is smaller than the previous one. in native wasm, we should grow memory here") } var oldView = new Int8Array(oldBuffer); var newView = new Int8Array(newBuffer); if (!memoryInitializer) { oldView.set(newView.subarray(Module["STATIC_BASE"], Module["STATIC_BASE"] + Module["STATIC_BUMP"]), Module["STATIC_BASE"]) } newView.set(oldView); updateGlobalBuffer(newBuffer); updateGlobalBufferViews() } var WasmTypes = { none: 0, i32: 1, i64: 2, f32: 3, f64: 4 }; function fixImports(imports) { if (!0) return imports; var ret = {}; for (var i in imports) { var fixed = i; if (fixed[0] == "_") fixed = fixed.substr(1); ret[fixed] = imports[i] } return ret } function getBinary() { try { var binary; if (Module["wasmBinary"]) { binary = Module["wasmBinary"]; binary = new Uint8Array(binary) } else if (Module["readBinary"]) { binary = Module["readBinary"](wasmBinaryFile) } else { throw "on the web, we need the wasm binary to be preloaded and set on Module['wasmBinary']. emcc.py will do that for you when generating HTML (but not JS)" } return binary } catch (err) { abort(err) } } function getBinaryPromise() { return new Promise((resolve, reject) => { const buffer = self.sentBuffers.get("opus-decoder-wasm"); if (buffer) return resolve(new Uint8Array(buffer)); const blob = self.sentBlobs.get("opus-decoder-wasm"); if (!blob) return reject("not yet received opus blob"); const fileReader = new FileReader(); fileReader.onload = () => resolve(new Uint8Array(fileReader["result"])); fileReader.onerror = () => reject(fileReader["error"]); fileReader.readAsArrayBuffer(blob); }); } function doJustAsm(global, env, providedBuffer) { if (typeof Module["asm"] !== "function" || Module["asm"] === methodHandler) { if (!Module["asmPreload"]) { eval(Module["read"](asmjsCodeFile)) } else { Module["asm"] = Module["asmPreload"] } } if (typeof Module["asm"] !== "function") { Module["printErr"]("asm evalling did not set the module properly"); return false } return Module["asm"](global, env, providedBuffer) } function doNativeWasm(global, env, providedBuffer) { if (typeof WebAssembly !== "object") { Module["printErr"]("no native wasm support detected"); return false } if (!(Module["wasmMemory"] instanceof WebAssembly.Memory)) { Module["printErr"]("no native wasm Memory in use"); return false } env["memory"] = Module["wasmMemory"]; info["global"] = { "NaN": NaN, "Infinity": Infinity }; info["global.Math"] = global.Math; info["env"] = env; function receiveInstance(instance) { exports = instance.exports; if (exports.memory) mergeMemory(exports.memory); Module["asm"] = exports; Module["usingWasm"] = true; removeRunDependency("wasm-instantiate") } addRunDependency("wasm-instantiate"); if (Module["instantiateWasm"]) { try { return Module["instantiateWasm"](info, receiveInstance) } catch (e) { Module["printErr"]("Module.instantiateWasm callback failed with error: " + e); return false } } getBinaryPromise().then((function(binary) { return WebAssembly.instantiate(binary, info) })).then((function(output) { receiveInstance(output["instance"]) })).catch((function(reason) { Module["printErr"]("failed to asynchronously prepare wasm: " + reason); abort(reason) })); return {} } function doWasmPolyfill(global, env, providedBuffer, method) { if (typeof WasmJS !== "function") { Module["printErr"]("WasmJS not detected - polyfill not bundled?"); return false } var wasmJS = WasmJS({}); wasmJS["outside"] = Module; wasmJS["info"] = info; wasmJS["lookupImport"] = lookupImport; assert(providedBuffer === Module["buffer"]); info.global = global; info.env = env; assert(providedBuffer === Module["buffer"]); env["memory"] = providedBuffer; assert(env["memory"] instanceof ArrayBuffer); wasmJS["providedTotalMemory"] = Module["buffer"].byteLength; var code; if (method === "interpret-binary") { code = getBinary() } else { code = Module["read"](method == "interpret-asm2wasm" ? asmjsCodeFile : wasmTextFile) } var temp; if (method == "interpret-asm2wasm") { temp = wasmJS["_malloc"](code.length + 1); wasmJS["writeAsciiToMemory"](code, temp); wasmJS["_load_asm2wasm"](temp) } else if (method === "interpret-s-expr") { temp = wasmJS["_malloc"](code.length + 1); wasmJS["writeAsciiToMemory"](code, temp); wasmJS["_load_s_expr2wasm"](temp) } else if (method === "interpret-binary") { temp = wasmJS["_malloc"](code.length); wasmJS["HEAPU8"].set(code, temp); wasmJS["_load_binary2wasm"](temp, code.length) } else { throw "what? " + method } wasmJS["_free"](temp); wasmJS["_instantiate"](temp); if (Module["newBuffer"]) { mergeMemory(Module["newBuffer"]); Module["newBuffer"] = null } exports = wasmJS["asmExports"]; return exports } Module["asmPreload"] = Module["asm"]; var asmjsReallocBuffer = Module["reallocBuffer"]; var wasmReallocBuffer = (function(size) { var PAGE_MULTIPLE = Module["usingWasm"] ? WASM_PAGE_SIZE : ASMJS_PAGE_SIZE; size = alignUp(size, PAGE_MULTIPLE); var old = Module["buffer"]; var oldSize = old.byteLength; if (Module["usingWasm"]) { try { var result = Module["wasmMemory"].grow((size - oldSize) / wasmPageSize); if (result !== (-1 | 0)) { return Module["buffer"] = Module["wasmMemory"].buffer } else { return null } } catch (e) { return null } } else { exports["__growWasmMemory"]((size - oldSize) / wasmPageSize); return Module["buffer"] !== old ? Module["buffer"] : null } }); Module["reallocBuffer"] = (function(size) { if (finalMethod === "asmjs") { return asmjsReallocBuffer(size) } else { return wasmReallocBuffer(size) } }); var finalMethod = ""; Module["asm"] = (function(global, env, providedBuffer) { global = fixImports(global); env = fixImports(env); if (!env["table"]) { var TABLE_SIZE = Module["wasmTableSize"]; if (TABLE_SIZE === undefined) TABLE_SIZE = 1024; var MAX_TABLE_SIZE = Module["wasmMaxTableSize"]; if (typeof WebAssembly === "object" && typeof WebAssembly.Table === "function") { if (MAX_TABLE_SIZE !== undefined) { env["table"] = new WebAssembly.Table({ "initial": TABLE_SIZE, "maximum": MAX_TABLE_SIZE, "element": "anyfunc" }) } else { env["table"] = new WebAssembly.Table({ "initial": TABLE_SIZE, element: "anyfunc" }) } } else { env["table"] = new Array(TABLE_SIZE) } Module["wasmTable"] = env["table"] } if (!env["memoryBase"]) { env["memoryBase"] = Module["STATIC_BASE"] } if (!env["tableBase"]) { env["tableBase"] = 0 } var exports; var methods = method.split(","); for (var i = 0; i < methods.length; i++) { var curr = methods[i]; finalMethod = curr; if (curr === "native-wasm") { if (exports = doNativeWasm(global, env, providedBuffer)) break } else if (curr === "asmjs") { if (exports = doJustAsm(global, env, providedBuffer)) break } else if (curr === "interpret-asm2wasm" || curr === "interpret-s-expr" || curr === "interpret-binary") { if (exports = doWasmPolyfill(global, env, providedBuffer, curr)) break } else { abort("bad method: " + curr) } } if (!exports) throw "no binaryen method succeeded. consider enabling more options, like interpreting, if you want that: https://github.com/kripken/emscripten/wiki/WebAssembly#binaryen-methods"; return exports }); var methodHandler = Module["asm"] } integrateWasmJS(Module); var ASM_CONSTS = []; STATIC_BASE = Runtime.GLOBAL_BASE; STATICTOP = STATIC_BASE + 28816; __ATINIT__.push(); memoryInitializer = Module["wasmJSMethod"].indexOf("asmjs") >= 0 || Module["wasmJSMethod"].indexOf("interpret-asm2wasm") >= 0 ? "opus.wasm.js.mem" : null; var STATIC_BUMP = 28816; Module["STATIC_BASE"] = STATIC_BASE; Module["STATIC_BUMP"] = STATIC_BUMP; var tempDoublePtr = STATICTOP; STATICTOP += 16; function _llvm_stackrestore(p) { var self = _llvm_stacksave; var ret = self.LLVM_SAVEDSTACKS[p]; self.LLVM_SAVEDSTACKS.splice(p, 1); Runtime.stackRestore(ret) } function ___setErrNo(value) { if (Module["___errno_location"]) HEAP32[Module["___errno_location"]() >> 2] = value; return value } Module["_sbrk"] = _sbrk; Module["_memset"] = _memset; function _emscripten_memcpy_big(dest, src, num) { HEAPU8.set(HEAPU8.subarray(src, src + num), dest); return dest } Module["_memcpy"] = _memcpy; Module["_memmove"] = _memmove; function _llvm_stacksave() { var self = _llvm_stacksave; if (!self.LLVM_SAVEDSTACKS) { self.LLVM_SAVEDSTACKS = [] } self.LLVM_SAVEDSTACKS.push(Runtime.stackSave()); return self.LLVM_SAVEDSTACKS.length - 1 } DYNAMICTOP_PTR = allocate(1, "i32", ALLOC_STATIC); STACK_BASE = STACKTOP = Runtime.alignMemory(STATICTOP); STACK_MAX = STACK_BASE + TOTAL_STACK; DYNAMIC_BASE = Runtime.alignMemory(STACK_MAX); HEAP32[DYNAMICTOP_PTR >> 2] = DYNAMIC_BASE; staticSealed = true; Module["wasmTableSize"] = 0; Module["wasmMaxTableSize"] = 0; Module.asmGlobalArg = { "Math": Math, "Int8Array": Int8Array, "Int16Array": Int16Array, "Int32Array": Int32Array, "Uint8Array": Uint8Array, "Uint16Array": Uint16Array, "Uint32Array": Uint32Array, "Float32Array": Float32Array, "Float64Array": Float64Array, "NaN": NaN, "Infinity": Infinity }; Module.asmLibraryArg = { "abort": abort, "assert": assert, "enlargeMemory": enlargeMemory, "getTotalMemory": getTotalMemory, "abortOnCannotGrowMemory": abortOnCannotGrowMemory, "_llvm_stackrestore": _llvm_stackrestore, "_llvm_stacksave": _llvm_stacksave, "_emscripten_memcpy_big": _emscripten_memcpy_big, "___setErrNo": ___setErrNo, "DYNAMICTOP_PTR": DYNAMICTOP_PTR, "tempDoublePtr": tempDoublePtr, "ABORT": ABORT, "STACKTOP": STACKTOP, "STACK_MAX": STACK_MAX }; var asm = Module["asm"](Module.asmGlobalArg, Module.asmLibraryArg, buffer); Module["asm"] = asm; var _malloc = Module["_malloc"] = (function() { return Module["asm"]["_malloc"].apply(null, arguments) }); var _destroy_decoder = Module["_destroy_decoder"] = (function() { return Module["asm"]["_destroy_decoder"].apply(null, arguments) }); var getTempRet0 = Module["getTempRet0"] = (function() { return Module["asm"]["getTempRet0"].apply(null, arguments) }); var _free = Module["_free"] = (function() { return Module["asm"]["_free"].apply(null, arguments) }); var runPostSets = Module["runPostSets"] = (function() { return Module["asm"]["runPostSets"].apply(null, arguments) }); var setTempRet0 = Module["setTempRet0"] = (function() { return Module["asm"]["setTempRet0"].apply(null, arguments) }); var establishStackSpace = Module["establishStackSpace"] = (function() { return Module["asm"]["establishStackSpace"].apply(null, arguments) }); var _memmove = Module["_memmove"] = (function() { return Module["asm"]["_memmove"].apply(null, arguments) }); var _decode_frame = Module["_decode_frame"] = (function() { return Module["asm"]["_decode_frame"].apply(null, arguments) }); var stackSave = Module["stackSave"] = (function() { return Module["asm"]["stackSave"].apply(null, arguments) }); var _memset = Module["_memset"] = (function() { return Module["asm"]["_memset"].apply(null, arguments) }); var _sbrk = Module["_sbrk"] = (function() { return Module["asm"]["_sbrk"].apply(null, arguments) }); var _emscripten_get_global_libc = Module["_emscripten_get_global_libc"] = (function() { return Module["asm"]["_emscripten_get_global_libc"].apply(null, arguments) }); var _memcpy = Module["_memcpy"] = (function() { return Module["asm"]["_memcpy"].apply(null, arguments) }); var _create_decoder = Module["_create_decoder"] = (function() { return Module["asm"]["_create_decoder"].apply(null, arguments) }); var setThrew = Module["setThrew"] = (function() { return Module["asm"]["setThrew"].apply(null, arguments) }); var stackRestore = Module["stackRestore"] = (function() { return Module["asm"]["stackRestore"].apply(null, arguments) }); var ___errno_location = Module["___errno_location"] = (function() { return Module["asm"]["___errno_location"].apply(null, arguments) }); var stackAlloc = Module["stackAlloc"] = (function() { return Module["asm"]["stackAlloc"].apply(null, arguments) }); Runtime.stackAlloc = Module["stackAlloc"]; Runtime.stackSave = Module["stackSave"]; Runtime.stackRestore = Module["stackRestore"]; Runtime.establishStackSpace = Module["establishStackSpace"]; Runtime.setTempRet0 = Module["setTempRet0"]; Runtime.getTempRet0 = Module["getTempRet0"]; Module["asm"] = asm; if (memoryInitializer) { if (typeof Module["locateFile"] === "function") { memoryInitializer = Module["locateFile"](memoryInitializer) } else if (Module["memoryInitializerPrefixURL"]) { memoryInitializer = Module["memoryInitializerPrefixURL"] + memoryInitializer } if (ENVIRONMENT_IS_NODE || ENVIRONMENT_IS_SHELL) { var data = Module["readBinary"](memoryInitializer); HEAPU8.set(data, Runtime.GLOBAL_BASE) } else { addRunDependency("memory initializer"); var applyMemoryInitializer = (function(data) { if (data.byteLength) data = new Uint8Array(data); HEAPU8.set(data, Runtime.GLOBAL_BASE); if (Module["memoryInitializerRequest"]) delete Module["memoryInitializerRequest"].response; removeRunDependency("memory initializer") }); function doBrowserLoad() { Module["readAsync"](memoryInitializer, applyMemoryInitializer, (function() { throw "could not load memory initializer " + memoryInitializer })) } if (Module["memoryInitializerRequest"]) { function useRequest() { var request = Module["memoryInitializerRequest"]; if (request.status !== 200 && request.status !== 0) { console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: " + request.status + ", retrying " + memoryInitializer); doBrowserLoad(); return } applyMemoryInitializer(request.response) } if (Module["memoryInitializerRequest"].response) { setTimeout(useRequest, 0) } else { Module["memoryInitializerRequest"].addEventListener("load", useRequest) } } else { doBrowserLoad() } } } function ExitStatus(status) { this.name = "ExitStatus"; this.message = "Program terminated with exit(" + status + ")"; this.status = status } ExitStatus.prototype = new Error; ExitStatus.prototype.constructor = ExitStatus; var initialStackTop; var preloadStartTime = null; var calledMain = false; dependenciesFulfilled = function runCaller() { if (!Module["calledRun"]) run(); if (!Module["calledRun"]) dependenciesFulfilled = runCaller }; Module["callMain"] = Module.callMain = function callMain(args) { args = args || []; ensureInitRuntime(); var argc = args.length + 1; function pad() { for (var i = 0; i < 4 - 1; i++) { argv.push(0) } } var argv = [allocate(intArrayFromString(Module["thisProgram"]), "i8", ALLOC_NORMAL)]; pad(); for (var i = 0; i < argc - 1; i = i + 1) { argv.push(allocate(intArrayFromString(args[i]), "i8", ALLOC_NORMAL)); pad() } argv.push(0); argv = allocate(argv, "i32", ALLOC_NORMAL); try { var ret = Module["_main"](argc, argv, 0); exit(ret, true) } catch (e) { if (e instanceof ExitStatus) { return } else if (e == "SimulateInfiniteLoop") { Module["noExitRuntime"] = true; return } else { var toLog = e; if (e && typeof e === "object" && e.stack) { toLog = [e, e.stack] } Module.printErr("exception thrown: " + toLog); Module["quit"](1, e) } } finally { calledMain = true } }; function run(args) { args = args || Module["arguments"]; if (preloadStartTime === null) preloadStartTime = Date.now(); if (runDependencies > 0) { return } preRun(); if (runDependencies > 0) return; if (Module["calledRun"]) return; function doRun() { if (Module["calledRun"]) return; Module["calledRun"] = true; if (ABORT) return; ensureInitRuntime(); preMain(); if (Module["onRuntimeInitialized"]) Module["onRuntimeInitialized"](); if (Module["_main"] && shouldRunNow) Module["callMain"](args); postRun() } if (Module["setStatus"]) { Module["setStatus"]("Running..."); setTimeout((function() { setTimeout((function() { Module["setStatus"]("") }), 1); doRun() }), 1) } else { doRun() } } Module["run"] = Module.run = run; function exit(status, implicit) { if (implicit && Module["noExitRuntime"]) { return } if (Module["noExitRuntime"]) {} else { ABORT = true; EXITSTATUS = status; STACKTOP = initialStackTop; exitRuntime(); if (Module["onExit"]) Module["onExit"](status) } if (ENVIRONMENT_IS_NODE) { process["exit"](status) } Module["quit"](status, new ExitStatus(status)) } Module["exit"] = Module.exit = exit; var abortDecorators = []; function abort(what) { if (Module["onAbort"]) { Module["onAbort"](what) } if (what !== undefined) { Module.print(what); Module.printErr(what); what = JSON.stringify(what) } else { what = "" } ABORT = true; EXITSTATUS = 1; var extra = "\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information."; var output = "abort(" + what + ") at " + stackTrace() + extra; if (abortDecorators) { abortDecorators.forEach((function(decorator) { output = decorator(output, what) })) } throw output } Module["abort"] = Module.abort = abort; if (Module["preInit"]) { if (typeof Module["preInit"] == "function") Module["preInit"] = [Module["preInit"]]; while (Module["preInit"].length > 0) { Module["preInit"].pop()() } } var shouldRunNow = true; if (Module["noInitialRun"]) { shouldRunNow = false } Module["noExitRuntime"] = true; run() opus.wasm.wasm 0000644 00000355343 15042712774 0007417 0 ustar 00 asm �#` ` ``` ` ` ` `` `` ` ` ```}`||`|||` ` ` ` ` `}} `} ````}` }`}` }`|`||�env enlargeMemory envgetTotalMemory envabortOnCannotGrowMemory env_llvm_stackrestore env_llvm_stacksave env_emscripten_memcpy_big env___setErrNo envDYNAMICTOP_PTR envSTACKTOP env STACK_MAX envmemory���� "!##A A A �_malloc x_destroy_decoder getTempRet0 _free yrunPostSets �setTempRet0 establishStackSpace _memmove � _decode_frame stackSave _memset �_sbrk �_emscripten_get_global_libc z_memcpy �_create_decoder setThrew stackRestore ___errno_location { stackAlloc ��� #"